diff --git a/pd/doc/5.reference/array-object-help.txt b/pd/doc/5.reference/array-object-help.txt new file mode 100644 index 0000000000000000000000000000000000000000..f7fe2464d1b1c0f97bab61b41acbd76952ee7248 --- /dev/null +++ b/pd/doc/5.reference/array-object-help.txt @@ -0,0 +1,100 @@ +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0.00666678 +0.060001 +0.173336 +0.540009 +-0.0266671 +-0.20667 +-0.406674 +-0.713345 +-0.833347 +-0.933349 +-1.04668 +-0.980017 +-0.800014 +-0.686678 +-0.526676 +-0.443341 +-0.360006 +-0.20667 +-0.140002 +-0.0733346 +-0.00666678 +0.060001 +0.173336 +0.313339 +0.400007 +0.433341 +0.39334 +0.293338 +0.18667 +0.0800014 +0.0400007 +0.060001 +0.0733346 +0.0933349 +0.113335 +0.126669 +0.100002 +0.0666678 +0.0400007 +0.0200003 +0.0200003 +-0.0400007 +-0.0266671 +-0.00666678 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 +0 diff --git a/pd/doc/5.reference/help-intro.pd b/pd/doc/5.reference/help-intro.pd index 1315f27c576bb25cb4ca18fa0ee485da4872a338..094111c7a4fe87454978c7c9469e6d9ce2732358 100644 --- a/pd/doc/5.reference/help-intro.pd +++ b/pd/doc/5.reference/help-intro.pd @@ -1,367 +1,411 @@ -#N canvas 14 5 569 440 12; +#N struct ; +#N canvas 355 59 579 812 12; #X declare; #X obj 24 150 bang; #X text 124 150 - output a bang message; -#X obj 24 180 float; -#X text 124 180 - store and recall a number; -#X obj 24 210 symbol; -#X text 124 210 - store and recall a symbol; -#X obj 24 240 int; -#X text 124 240 - store and recall an integer; -#X obj 24 270 send; -#X text 124 270 - send a message to a named object; -#X obj 24 300 receive; -#X text 124 300 - catch "sent" messages; -#X obj 24 330 select; -#X text 124 330 - test for matching numbers or symbols; -#X obj 24 360 route; -#X text 124 360 - route messages according to first element; -#X obj 24 390 pack; -#X text 124 390 - make compound messages; -#X obj 24 420 unpack; -#X text 124 420 - get elements of compound messages; -#X obj 24 450 trigger; -#X text 124 450 - sequence and convert messagess; -#X obj 24 480 spigot; -#X text 124 480 - interruptible message connection; -#X obj 24 510 moses; -#X text 124 510 - part a numeric stream; -#X obj 24 540 until; -#X text 124 540 - looping mechanism; -#X obj 24 570 print; -#X text 124 570 - print out messages; -#X obj 24 600 makefilename; -#X text 145 601 - format a symbol with a variable field; -#X obj 24 630 change; -#X text 124 630 - remove repeated numbers from a stream; -#X obj 24 660 swap; -#X text 124 660 - swap two numbers; -#X obj 24 690 value; -#X text 124 690 - shared numeric value; -#X obj 19 751 delay; -#X text 119 751 - send a message after a time delay; -#X obj 19 781 metro; -#X text 119 781 - send a message periodically; -#X obj 19 811 line; -#X text 119 811 - send a series of linearly stepped numbers; -#X obj 19 841 timer; -#X text 119 841 - measure time intervals; -#X obj 19 871 cputime; -#X text 119 871 - measure CPU time; -#X obj 19 901 realtime; -#X text 119 901 - measure real time; -#X obj 19 931 pipe; -#X text 119 931 - dynamically growable delay line for numbers; -#X text 209 990 - arithmetic; -#X text 210 1013 - relational tests; -#X text 189 1037 - bit twiddling; -#X obj 20 1066 mtof; -#X obj 20 1088 ftom; -#X obj 61 1066 powtodb; -#X obj 129 1065 rmstodb; -#X obj 61 1087 dbtopow; -#X obj 129 1087 dbtorms; -#X text 211 1079 - convert acoustical units; -#X obj 19 1111 mod; -#X obj 50 1111 div; -#X obj 81 1111 sin; -#X obj 112 1111 cos; -#X obj 143 1111 tan; -#X obj 19 1132 atan; -#X obj 59 1132 atan2; -#X obj 108 1132 sqrt; -#X obj 148 1132 log; -#X obj 179 1132 exp; -#X obj 210 1132 abs; -#X text 250 1123 - higher math; -#X obj 19 1155 random; -#X text 119 1155 - lower math; -#X obj 19 1178 max; -#X obj 51 1178 min; -#X text 119 1178 - greater or lesser of 2 numbers; -#X obj 19 1201 clip; -#X text 119 1201 - force a number into a range; -#X obj 16 1261 notein; -#X obj 75 1261 ctlin; -#X obj 126 1261 pgmin; -#X obj 176 1261 bendin; -#X obj 235 1261 touchin; -#X obj 16 1284 polytouchin; -#X obj 120 1284 midiin; -#X obj 179 1284 sysexin; -#X text 318 1273 - MIDI input; -#X obj 19 1317 noteout; -#X obj 87 1317 ctlout; -#X obj 147 1317 pgmout; -#X obj 206 1317 bendout; -#X obj 19 1338 touchout; -#X obj 97 1338 polytouchout; -#X obj 210 1338 midiout; -#X text 318 1327 - MIDI output; -#X obj 20 1370 makenote; -#X obj 19 1402 stripnote; -#X text 112 1403 - strip "note off" messages; -#X obj 17 1441 tabread; -#X text 117 1441 - read a number from a table; -#X obj 17 1463 tabread4; -#X text 117 1463 - read a number from a table; -#X obj 17 1485 tabwrite; -#X text 117 1485 - write a number to a table; -#X obj 17 1508 soundfiler; -#X text 117 1508 - read and write tables to soundfiles; -#X obj 19 1558 loadbang; -#X text 119 1558 - bang on load; -#X obj 19 1584 serial; -#X text 119 1584 - serial device control for NT only; -#X obj 19 1612 netsend; -#X text 119 1612 - send messages over the internet; -#X obj 19 1633 netreceive; -#X text 119 1633 - receive them; -#X obj 19 1663 qlist; -#X text 119 1663 - message sequencer; -#X obj 19 1693 textfile; -#X text 119 1693 - file to message converter; -#X obj 19 1723 openpanel; -#X text 119 1723 - "Open" dialog; -#X obj 19 1746 savepanel; -#X text 119 1746 - "Save as" dialog; -#X obj 19 1783 bag; -#X text 119 1783 - set of numbers; -#X obj 19 1813 poly; -#X text 119 1813 - polyphonic voice allocation; -#X obj 19 1843 key; -#X obj 53 1843 keyup; -#X text 119 1843 - numeric key values from keyboard; -#X obj 19 1866 keyname; -#X text 119 1866 - symbolic key name; -#X text 144 1960 - arithmetic on audio signals; -#X text 116 1992 - maximum or minimum of 2 inputs; -#X obj 16 2022 clip~; -#X text 116 2022 - constrict signal to lie between two bounds; -#X obj 16 2052 q8_rsqrt~; -#X text 116 2052 - cheap reciprocal square root (beware -- 8 bits!) +#X obj 24 174 float; +#X text 124 174 - store and recall a number; +#X obj 24 198 symbol; +#X text 124 198 - store and recall a symbol; +#X obj 24 222 int; +#X text 124 222 - store and recall an integer; +#X obj 24 246 send; +#X text 124 246 - send a message to a named object; +#X obj 24 270 receive; +#X text 124 270 - catch "sent" messages; +#X obj 24 294 select; +#X text 124 294 - test for matching numbers or symbols; +#X obj 24 318 route; +#X text 124 318 - route messages according to first element; +#X obj 24 342 pack; +#X text 124 342 - make compound messages; +#X obj 24 366 unpack; +#X text 124 366 - get elements of compound messages; +#X obj 24 390 trigger; +#X text 124 390 - sequence and convert messagess; +#X obj 24 414 spigot; +#X text 124 414 - interruptible message connection; +#X obj 24 438 moses; +#X text 124 438 - part a numeric stream; +#X obj 24 462 until; +#X text 124 462 - looping mechanism; +#X obj 24 486 print; +#X text 124 486 - print out messages; +#X obj 24 510 makefilename; +#X text 145 511 - format a symbol with a variable field; +#X obj 24 534 change; +#X text 124 534 - remove repeated numbers from a stream; +#X obj 24 559 swap; +#X text 124 559 - swap two numbers; +#X obj 24 583 value; +#X text 124 583 - shared numeric value; +#X obj 22 660 delay; +#X text 122 660 - send a message after a time delay; +#X obj 22 684 metro; +#X text 122 684 - send a message periodically; +#X obj 22 708 line; +#X text 122 708 - send a series of linearly stepped numbers; +#X obj 22 732 timer; +#X text 122 732 - measure time intervals; +#X obj 22 756 cputime; +#X text 122 756 - measure CPU time; +#X obj 22 780 realtime; +#X text 122 780 - measure real time; +#X obj 22 804 pipe; +#X text 122 804 - dynamically growable delay line for numbers; +#X text 212 860 - arithmetic; +#X text 213 883 - relational tests; +#X text 255 908 - bit twiddling; +#X obj 23 936 mtof; +#X obj 23 958 ftom; +#X obj 64 936 powtodb; +#X obj 132 935 rmstodb; +#X obj 64 957 dbtopow; +#X obj 132 957 dbtorms; +#X text 214 949 - convert acoustical units; +#X obj 22 981 mod; +#X obj 53 981 div; +#X obj 84 981 sin; +#X obj 115 981 cos; +#X obj 146 981 tan; +#X obj 22 1003 atan; +#X obj 62 1003 atan2; +#X obj 111 1003 sqrt; +#X obj 151 1003 log; +#X obj 182 1003 exp; +#X obj 213 1003 abs; +#X text 253 993 - higher math; +#X obj 22 1025 random; +#X text 122 1025 - lower math; +#X obj 22 1048 max; +#X obj 54 1048 min; +#X text 122 1048 - greater or lesser of 2 numbers; +#X obj 22 1071 clip; +#X text 122 1071 - force a number into a range; +#X obj 23 1142 notein; +#X obj 82 1142 ctlin; +#X obj 133 1142 pgmin; +#X obj 183 1142 bendin; +#X obj 242 1142 touchin; +#X obj 310 1142 polytouchin; +#X obj 24 1166 midiin; +#X obj 85 1166 sysexin; +#X text 412 1158 - MIDI input; +#X obj 22 1198 noteout; +#X obj 90 1198 ctlout; +#X obj 150 1198 pgmout; +#X obj 209 1198 bendout; +#X obj 22 1220 touchout; +#X obj 100 1220 polytouchout; +#X obj 213 1220 midiout; +#X text 321 1208 - MIDI output; +#X obj 22 1251 makenote; +#X obj 22 1275 stripnote; +#X text 114 1277 - strip "note off" messages; +#X obj 25 1369 tabread; +#X text 125 1369 - read a number from a table; +#X obj 25 1392 tabread4; +#X text 125 1392 - read a number from a table; +#X obj 25 1415 tabwrite; +#X text 125 1415 - write a number to a table; +#X obj 25 1439 soundfiler; +#X text 125 1439 - read and write tables to soundfiles; +#X obj 25 1552 loadbang; +#X text 125 1552 - bang on load; +#X obj 25 1585 netsend; +#X text 125 1585 - send messages over the internet; +#X obj 25 1608 netreceive; +#X text 125 1608 - receive them; +#X obj 25 1639 qlist; +#X text 125 1639 - message sequencer; +#X text 125 1663 - file to message converter; +#X obj 25 1721 openpanel; +#X text 125 1721 - "Open" dialog; +#X obj 25 1744 savepanel; +#X text 125 1744 - "Save as" dialog; +#X obj 25 1781 bag; +#X text 125 1781 - set of numbers; +#X obj 25 1811 poly; +#X text 125 1811 - polyphonic voice allocation; +#X obj 25 1841 key; +#X obj 59 1841 keyup; +#X text 125 1841 - numeric key values from keyboard; +#X obj 25 1864 keyname; +#X text 125 1864 - symbolic key name; +#X text 154 1973 - arithmetic on audio signals; +#X text 126 2003 - maximum or minimum of 2 inputs; +#X obj 26 2031 clip~; +#X text 126 2031 - constrict signal to lie between two bounds; +#X obj 26 2134 wrap~; +#X obj 26 2162 fft~; +#X text 126 2162 - complex forward discrete Fourier transform; +#X obj 26 2184 ifft~; +#X text 126 2184 - complex inverse discrete Fourier transform; +#X obj 26 2214 rfft~; +#X text 126 2214 - real forward discrete Fourier transform; +#X obj 26 2236 rifft~; +#X text 126 2236 - real inverse discrete Fourier transform; +#X obj 26 2290 framp~; +#X text 126 2290 - output a ramp for each block; +#X obj 26 2320 mtof~; +#X obj 77 2320 ftom~; +#X obj 127 2320 rmstodb~; +#X obj 205 2320 dbtorms~; +#X text 284 2320 - acoustic conversions; +#X obj 26 2378 dac~; +#X text 126 2378 - audio output; +#X obj 26 2402 adc~; +#X text 126 2402 - audio input; +#X obj 26 2426 sig~; +#X text 126 2426 - convert numbers to audio signals; +#X obj 26 2450 line~; +#X text 126 2450 - generate audio ramps; +#X obj 26 2474 vline~; +#X text 126 2474 - deluxe line~; +#X obj 26 2522 snapshot~; +#X text 126 2522 - sample a signal (convert it back to a number); +#X obj 26 2546 vsnapshot~; +#X text 126 2546 - deluxe snapshot~; +#X obj 26 2570 bang~; +#X text 126 2570 - send a bang message after each DSP block; +#X obj 26 2594 samplerate~; +#X text 126 2594 - get the sample rate; +#X obj 26 2618 send~; +#X text 126 2618 - nonlocal signal connection with fanout; +#X obj 26 2642 receive~; +#X text 126 2642 - get signal from send~; +#X obj 26 2666 throw~; +#X text 126 2666 - add to a summing bus; +#X obj 26 2690 catch~; +#X text 126 2690 - define and read a summing bus; +#X obj 26 2714 block~; +#X text 126 2714 - specify block size and overlap; +#X obj 26 2738 switch~; +#X text 126 2738 - switch DSP computation on and off; +#X obj 26 2762 readsf~; +#X text 126 2762 - soundfile playback from disk; +#X obj 26 2786 writesf~; +#X text 126 2786 - record sound to disk; +#X obj 23 2848 phasor~; +#X text 123 2848 - sawtooth oscillator; +#X obj 23 2872 cos~; +#X text 123 2872 - cosine; +#X obj 23 2896 osc~; +#X text 123 2896 - cosine oscillator; +#X obj 23 2920 tabwrite~; +#X text 123 2920 - write to a table; +#X obj 23 2944 tabplay~; +#X text 123 2944 - play back from a table (non-transposing); +#X obj 23 2968 tabread~; +#X text 123 2968 - non-interpolating table read; +#X obj 23 2992 tabread4~; +#X text 123 2992 - four-point interpolating table read; +#X obj 23 3016 tabosc4~; +#X text 123 3016 - wavetable oscillator; +#X obj 23 3040 tabsend~; +#X text 123 3040 - write one block continuously to a table; +#X obj 23 3064 tabreceive~; +#X text 123 3064 - read one block continuously from a table; +#X text 18 3099 -------------------- AUDIO FILTERS ------------------------ ; -#X obj 16 2074 q8_sqrt~; -#X text 116 2074 - cheap square root (beware -- 8 bits!); -#X obj 16 2104 wrap~; -#X obj 16 2134 fft~; -#X text 116 2134 - complex forward discrete Fourier transform; -#X obj 16 2156 ifft~; -#X text 116 2156 - complex inverse discrete Fourier transform; -#X obj 16 2186 rfft~; -#X text 116 2186 - real forward discrete Fourier transform; -#X obj 16 2208 rifft~; -#X text 116 2208 - real inverse discrete Fourier transform; -#X obj 16 2262 framp~; -#X text 116 2262 - output a ramp for each block; -#X obj 16 2292 mtof~; -#X obj 67 2292 ftom~; -#X obj 117 2292 rmstodb~; -#X obj 195 2292 dbtorms~; -#X obj 273 2292 rmstopow~; -#X obj 359 2292 powtorms~; -#X text 448 2293 - acoustic conversions; -#X obj 20 2355 dac~; -#X text 120 2355 - audio output; -#X obj 20 2385 adc~; -#X text 120 2385 - audio input; -#X obj 20 2415 sig~; -#X text 120 2415 - convert numbers to audio signals; -#X obj 20 2445 line~; -#X text 120 2445 - generate audio ramps; -#X obj 20 2475 vline~; -#X text 120 2475 - deluxe line~; -#X obj 20 2535 snapshot~; -#X text 120 2535 - sample a signal (convert it back to a number); -#X obj 20 2565 vsnapshot~; -#X text 120 2565 - deluxe snapshot~; -#X obj 20 2595 bang~; -#X text 120 2595 - send a bang message after each DSP block; -#X obj 20 2625 samplerate~; -#X text 120 2625 - get the sample rate; -#X obj 20 2655 send~; -#X text 120 2655 - nonlocal signal connection with fanout; -#X obj 20 2685 receive~; -#X text 120 2685 - get signal from send~; -#X obj 20 2715 throw~; -#X text 120 2715 - add to a summing bus; -#X obj 20 2745 catch~; -#X text 120 2745 - define and read a summing bus; -#X obj 20 2775 block~; -#X text 120 2775 - specify block size and overlap; -#X obj 20 2805 switch~; -#X text 120 2805 - switch DSP computation on and off; -#X obj 20 2835 readsf~; -#X text 120 2835 - soundfile playback from disk; -#X obj 20 2865 writesf~; -#X text 120 2865 - record sound to disk; -#X obj 17 2927 phasor~; -#X text 117 2927 - sawtooth oscillator; -#X obj 17 2957 cos~; -#X text 117 2957 - cosine; -#X obj 17 2987 osc~; -#X text 117 2987 - cosine oscillator; -#X obj 17 3017 tabwrite~; -#X text 117 3017 - write to a table; -#X obj 17 3047 tabplay~; -#X text 117 3047 - play back from a table (non-transposing); -#X obj 17 3077 tabread~; -#X text 117 3077 - non-interpolating table read; -#X obj 17 3107 tabread4~; -#X text 117 3107 - four-point interpolating table read; -#X obj 17 3137 tabosc4~; -#X text 117 3137 - wavetable oscillator; -#X obj 17 3167 tabsend~; -#X text 117 3167 - write one block continuously to a table; -#X obj 17 3197 tabreceive~; -#X text 117 3197 - read one block continuously from a table; -#X text 18 3228 -------------------- AUDIO FILTERS ------------------------ +#X obj 24 3129 vcf~; +#X text 124 3129 - voltage controlled filter; +#X obj 24 3153 noise~; +#X text 124 3153 - white noise generator; +#X obj 24 3177 env~; +#X text 124 3177 - envelope follower; +#X obj 24 3201 hip~; +#X text 124 3201 - high pass filter; +#X obj 24 3225 lop~; +#X text 124 3225 - low pass filter; +#X obj 24 3249 bp~; +#X text 124 3249 - band pass filter; +#X obj 24 3273 biquad~; +#X text 124 3273 - raw filter; +#X obj 24 3297 samphold~; +#X text 124 3297 - sample and hold unit; +#X obj 24 3321 print~; +#X text 124 3321 - print out one or more "blocks"; +#X obj 24 3345 rpole~; +#X text 124 3345 - raw real-valued one-pole filter; +#X obj 24 3369 rzero~; +#X text 124 3369 - raw real-valued one-zero filter; +#X obj 24 3393 rzero_rev~; +#X text 127 3393 - time-reversed; +#X obj 24 3417 cpole~; +#X obj 83 3417 czero~; +#X text 220 3417 - corresponding complex-valued filters; +#X text 18 3455 -------------------- AUDIO DELAY ------------------------ ; -#X obj 18 3258 vcf~; -#X text 118 3258 - voltage controlled filter; -#X obj 18 3288 noise~; -#X text 118 3288 - white noise generator; -#X obj 18 3318 env~; -#X text 118 3318 - envelope follower; -#X obj 18 3348 hip~; -#X text 118 3348 - high pass filter; -#X obj 18 3378 lop~; -#X text 118 3378 - low pass filter; -#X obj 18 3408 bp~; -#X text 118 3408 - band pass filter; -#X obj 18 3438 biquad~; -#X text 118 3438 - raw filter; -#X obj 18 3468 samphold~; -#X text 118 3468 - sample and hold unit; -#X obj 18 3498 print~; -#X text 118 3498 - print out one or more "blocks"; -#X obj 18 3528 rpole~; -#X text 118 3528 - raw real-valued one-pole filter; -#X obj 18 3558 rzero~; -#X text 118 3558 - raw real-valued one-zero filter; -#X obj 18 3588 rzero_rev~; -#X text 121 3588 - time-reversed; -#X obj 18 3618 cpole~; -#X obj 77 3618 czero~; -#X text 214 3618 - corresponding complex-valued filters; -#X text 18 3648 -------------------- AUDIO DELAY ------------------------ +#X obj 24 3479 delwrite~; +#X text 124 3479 - write to a delay line; +#X obj 24 3503 delread~; +#X text 124 3503 - read from a delay line; +#N canvas 0 50 450 300 (subpatch) 0; +#X restore 25 3577 pd; +#X text 125 3577 - define a subwindow; +#X obj 25 1463 table; +#X obj 25 3601 inlet; +#X text 125 3601 - add an inlet to a pd; +#X obj 25 3625 outlet; +#X text 125 3625 - add an outlet to a pd; +#X obj 25 3649 inlet~; +#X obj 85 3649 outlet~; +#X obj 24 3728 struct; +#X text 124 3728 - define a data structure; +#X obj 24 3752 drawcurve; +#X obj 112 3752 filledcurve; +#X text 225 3752 - draw a curve; +#X obj 24 3776 drawpolygon; +#X obj 129 3776 filledpolygon; +#X text 259 3776 - draw a polygon; +#X obj 24 3800 plot; +#X text 124 3800 - plot an array field; +#X obj 24 3824 drawnumber; +#X text 124 3824 - print a numeric value; +#X obj 25 3888 pointer; +#X text 125 3888 - point to an object belonging to a template; +#X obj 25 3912 get; +#X text 125 3912 - get numeric fields; +#X obj 25 3936 set; +#X text 125 3936 - change numeric fields; +#X obj 25 3960 element; +#X text 125 3960 - get an array element; +#X obj 25 3984 getsize; +#X text 125 3984 - get the size of an array; +#X obj 25 4008 setsize; +#X text 125 4008 - change the size of an array; +#X obj 25 4032 append; +#X text 125 4032 - add an element to a list; +#X obj 30 4404 scalar; +#X text 131 4432 (use tabwrite~ now); +#X obj 31 4457 namecanvas; +#X obj 142 3417 czero_rev~; +#X obj 26 2498 threshold~; +#X text 126 2498 - detect signal thresholds; +#X text 21 1943 ---------------------- AUDIO MATH ----------------------- ; -#X obj 18 3678 delwrite~; -#X text 118 3678 - write to a delay line; -#X obj 18 3708 delread~; -#X text 118 3708 - read from a delay line; -#X obj 18 3738 vd~; -#X text 118 3738 - read from a delay line at a variable delay time +#X text 18 1520 --------------------- MISC ----------------------; +#X text 20 831 ------------------------- MATH -----------------; +#X text 20 630 ------------------------- TIME -------------------------- ; -#N canvas 0 0 450 300 (subpatch) 0; -#X restore 18 3798 pd; -#X text 118 3798 - define a subwindow; -#X obj 18 3828 table; -#X text 118 3828 - array of numbers in a subwindow; -#X obj 18 3858 inlet; -#X text 118 3858 - add an inlet to a pd; -#X obj 18 3888 outlet; -#X text 118 3888 - add an outlet to a pd; -#X obj 18 3918 inlet~; -#X obj 78 3918 outlet~; -#X obj 18 3978 struct; -#X text 118 3978 - define a data structure; -#X obj 18 4008 drawcurve; -#X obj 106 4008 filledcurve; -#X text 219 4008 - draw a curve; -#X obj 18 4038 drawpolygon; -#X obj 123 4038 filledpolygon; -#X text 253 4038 - draw a polygon; -#X obj 18 4068 plot; -#X text 118 4068 - plot an array field; -#X obj 18 4098 drawnumber; -#X text 118 4098 - print a numeric value; -#X obj 18 4158 pointer; -#X text 118 4158 - point to an object belonging to a template; -#X obj 18 4188 get; -#X text 118 4188 - get numeric fields; -#X obj 18 4218 set; -#X text 118 4218 - change numeric fields; -#X obj 18 4248 element; -#X text 118 4248 - get an array element; -#X obj 18 4278 getsize; -#X text 118 4278 - get the size of an array; -#X obj 18 4308 setsize; -#X text 118 4308 - change the size of an array; -#X obj 18 4338 append; -#X text 118 4338 - add an element to a list; -#X obj 18 4368 sublist; -#X obj 14 4449 scalar; -#X text 104 4448 - draw a scalar on parent; -#X obj 15 4479 scope~; -#X text 115 4479 (use tabwrite~ now); -#X obj 15 4509 namecanvas; -#X obj 15 4539 template; -#X text 115 4539 (use struct now); -#X obj 136 3618 czero_rev~; -#X text 20 2324 ------------- AUDIO GLUE ---------------------------- +#X text 17 3553 ------------------------ SUBWINDOWS ------------------------ ; -#X obj 20 2505 threshold~; -#X text 120 2505 - detect signal thresholds; -#X text 16 1930 ---------------------- AUDIO MATH ----------------------- +#X text 18 3698 ---------------------- DATA TEMPLATES ---------------------- ; -#X text 17 1419 --------------------- TABLES ------------------------- +#X text 18 3858 ---------------------- ACCESSING DATA ---------------------- ; -#X text 18 1539 --------------------- MISC ----------------------; -#X text 20 961 ------------------------- MATH -----------------; -#X text 19 721 ------------------------- TIME -------------------------- +#X text 17 2818 ------------ AUDIO OSCILLATORS AND TABLES ------------- ; -#X text 17 1242 ------------------------ MIDI ------------------------- +#X obj 67 2003 min~; +#X obj 26 2003 max~; +#X obj 22 884 ==; +#X obj 54 884 !=; +#X obj 86 884 >; +#X obj 118 884 <; +#X obj 149 884 >=; +#X obj 180 884 <=; +#X text 27 4377 ------------------------ OBSOLETE -------------------------- ; -#X text 24 120 --------------- GLUE ----------------; -#X text 18 3768 ------------------------ SUBWINDOWS ------------------------ +#X obj 54 861 -; +#X obj 87 861 *; +#X obj 119 861 /; +#X obj 152 861 pow; +#X obj 22 861 +; +#X obj 22 907 &; +#X obj 54 907 &&; +#X obj 86 907 |; +#X obj 118 907 ||; +#X obj 149 907 %; +#X obj 26 1973 +~; +#X obj 58 1973 -~; +#X obj 89 1973 *~; +#X obj 121 1973 /~; +#X obj 25 1893 declare; +#X text 125 1893 - set search path and/or load libraries; +#X text 163 3650 - signal versions; +#X obj 22 1094 wrap; +#X text 121 1094 - wrap a number to range [0 \, 1); +#X text 126 2132 - wraparound (fractional part); +#X obj 25 2264 pow~; +#X obj 69 2264 log~; +#X obj 113 2264 exp~; +#X text 207 2266 - math; +#X obj 159 2265 abs~; +#X text 24 120 --------------- GENERAL ----------------; +#X obj 24 607 list; +#X text 124 607 - manipulate lists; +#X text 112 1249 - schedule delayed "note off" message for a note-on ; -#X text 18 3948 ---------------------- DATA TEMPLATES ---------------------- +#X obj 25 1487 array; +#X text 127 1462 - create a named table; +#X text 26 2347 ------------- GENERAL AUDIO MANIPULATION -------------- ; -#X text 18 4128 ---------------------- ACCESSING DATA ---------------------- +#X text 125 1687 - general text handling; +#X text 128 1489 - general array creation and manipulation; +#X text 17 1343 ----------------- ARRAYS/TABLES ------------------- ; -#X text 17 2897 ------------ AUDIO OSCILLATORS AND TABLES ------------- +#X text 130 4403 - create a single scalar; +#X text 130 4458 (potentially dangerous but no substitute exists yet) ; -#X obj 57 1992 min~; -#X obj 16 1992 max~; -#X obj 19 1014 ==; -#X obj 51 1014 !=; -#X obj 83 1014 >; -#X obj 115 1014 <; -#X obj 146 1014 >=; -#X obj 177 1014 <=; -#X text 18 4410 ------------------------ OBSOLETE -------------------------- -; -#X obj 51 991 -; -#X obj 84 991 *; -#X obj 116 991 /; -#X obj 149 991 pow; -#X obj 19 991 +; -#X obj 19 1037 &; -#X obj 47 1037 &&; -#X obj 74 1038 |; -#X obj 102 1038 ||; -#X obj 129 1038 %; -#X obj 16 1960 +~; -#X obj 48 1960 -~; -#X obj 79 1960 *~; -#X obj 111 1960 /~; -#X obj 19 1895 declare; -#X text 119 1895 - set search path and/or load libraries; -#X text 156 3919 - signal versions; #X text 23 22 The following is a list of built-in objects in Pd. (Not included in this list are messages \, atoms \, graphs \, etc. which aren't typed into object boxes but come straight off the "add" menu.) -Right-click (or double-click on a Macintosh) on any object to get its -"help window".; -#X text 118 4368 - get a pointer into a list within a scalar; -#X obj 19 1224 wrap; -#X text 118 1224 - wrap a number to range [0 \, 1); -#X text 116 2104 - wraparound (fractional part); -#X obj 15 2236 pow~; -#X obj 59 2236 log~; -#X obj 103 2236 exp~; -#X text 197 2238 - math; -#X obj 149 2237 abs~; -#X text 109 1368 - schedule delayed "note off" message corresponding -to a note-on; +Right-click (or control-click on a Macintosh) on any object to get +its "help window".; +#X msg 31 4430 scope~; +#X msg 31 4482 template; +#X text 130 4483 (use struct now); +#X obj 25 1663 textfile; +#X obj 25 1687 text; +#X obj 180 907 <<; +#X obj 211 907 >>; +#X obj 26 2056 sqrt~; +#X text 17 1115 ------------------- MIDI and OSC------------------------ +; +#X obj 22 1302 oscparse; +#X obj 21 1326 oscformat; +#X text 113 1303 - OSC messages to Pd lists; +#X text 113 1326 - Pd lists to OSC messages; +#X text 19 4088 -------- "EXTRA" (patches and externs in pd/extra) +---------; +#X obj 27 4117 sigmund~; +#X text 127 4117 - pitch tracker; +#X obj 27 4142 bonk~; +#X text 127 4142 - attack detector; +#X obj 27 4167 choice; +#X text 127 4167 - best match of list to templates; +#X obj 27 4191 hilbert~; +#X obj 105 4191 complex-mod~; +#X text 219 4192 - phase quadrature / frequency shifting; +#X text 196 4218 - C-style expressions (control and signal); +#X obj 77 4217 expr~; +#X obj 27 4216 expr; +#X obj 130 4217 fexpr~; +#X obj 27 4243 loop~; +#X text 123 4246 - phasor~ with S/H on its frequency input; +#X obj 27 4268 lrshift~; +#X text 123 4271 - left and right shift (useful with FFT objects); +#X obj 28 4294 pd~; +#X text 125 4292 - run another copy of Pd (for multiprocessing); +#X obj 28 4321 rev1~; +#X obj 80 4321 rev2~; +#X obj 129 4321 rev3~; +#X text 189 4321 - reverberators; +#X obj 61 4294 stdout; +#X obj 28 4348 bob~; +#X text 124 4350 - Moog resonant filter model; +#X text 118 3676 - make copies of a subpatch; +#X obj 26 3676 clone; +#X obj 157 1167 midirealtimein; +#X obj 301 1169 midiclkin; +#X text 124 3530 - read with a time-varying delay time; +#X obj 24 3530 vd~; +#X obj 26 2081 rsqrt~; +#X text 115 2055 - approximate (16-bit) square root; +#X text 125 2083 - reciprocal square root; +#X obj 25 2105 q8_sqrt~; +#X obj 110 2106 q8_rsqrt~; +#X text 218 2106 - fast \, cheap 8 bits versions; +#X obj 25 4056 sublist; +#X text 125 4056 - get a pointer into a list within a scalar; diff --git a/pd/doc/5.reference/metro.pd b/pd/doc/5.reference/metro.pd index f848e5820e52b2a8d49a8097cdbd2b0d9b3869a5..6732d1cae597d0402f569263c8fd5f8a95ee27fd 100644 --- a/pd/doc/5.reference/metro.pd +++ b/pd/doc/5.reference/metro.pd @@ -1,29 +1,46 @@ -#N canvas 39 7 634 372 12; -#X text 19 36 The metro object sends a series of bangs at a constant rate. The right inlet takes the value in milliseconds between each bang. The left inlet takes a 1 or 0 \, turning the metronome on or off.; -#X obj 67 285 + 1; -#X obj 32 284 int; -#X floatatom 32 317 4 0 0; -#X obj 32 243 metro 500; -#X obj 5 6 metro; -#X floatatom 81 220 4 0 0; -#X text 104 282 These objects work together as a counter. For each bang sent by metro \, the output adds 1; -#X obj 32 103 loadbang; +#N canvas 19 47 645 526 12; +#X obj 32 291 metro 500; +#X obj 70 9 metro; +#X floatatom 101 268 4 0 0 0 - - -, f 4; #X msg 32 125 1; #X text 92 135 nonzero number or "bang" to start; #X msg 49 172 0; #X msg 38 148 bang; #X msg 49 194 stop; #X text 99 181 zero or "stop" to stop.; -#X text 351 332 Updated for Pd version 0.33; -#X text 130 220 right inlet sets the rate in msec per tick.; -#X text 127 243 creation argument initializes rate in msec; -#X connect 1 0 2 1; -#X connect 2 0 3 0; -#X connect 2 0 1 0; -#X connect 4 0 2 0; -#X connect 6 0 4 1; -#X connect 8 0 9 0; -#X connect 9 0 4 0; -#X connect 11 0 4 0; -#X connect 12 0 4 0; -#X connect 13 0 4 0; +#X text 150 268 right inlet sets the rate in msec per tick.; +#X text 377 471 Updated for Pd version 0.45; +#X text 121 8 - metronome; +#X text 23 35 The metro object sends a series of bangs at regular time +intervals. The right inlet takes the value in milliseconds between +each bang. The left inlet takes a 1 or 0 \, turning the metronome on +or off.; +#X obj 32 317 bng 25 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X text 116 292 <-- optional creation arguments:; +#X text 165 311 - delay time (float); +#X text 166 329 - tempo (float) and time unit (symbol) as in "tempo" +message, f 31; +#X msg 51 220 tempo 2 msec; +#X text 165 219 set tempo in units of miliseconds (msec for short) +\, seconds (sec) \, minutes (min) or samples (samp)., f 51; +#X text 79 472 see also:; +#X obj 173 470 timer; +#X text 41 373 for example \, a metronome at intervals of one beat +at 120 beats per minute:, f 37; +#X obj 360 395 metro 1 120 permin; +#X obj 360 373 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 360 420 bng 25 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 220 435 delay; +#X text 50 428 for details on tempo setting \, see:, f 20; +#X connect 0 0 13 0; +#X connect 2 0 0 1; +#X connect 3 0 0 0; +#X connect 5 0 0 0; +#X connect 6 0 0 0; +#X connect 7 0 0 0; +#X connect 17 0 0 0; +#X connect 22 0 24 0; +#X connect 23 0 22 0; diff --git a/pd/doc/5.reference/oscformat-help.pd b/pd/doc/5.reference/oscformat-help.pd new file mode 100644 index 0000000000000000000000000000000000000000..3693bb59af553f75b903ced8a4923cd59eed873b --- /dev/null +++ b/pd/doc/5.reference/oscformat-help.pd @@ -0,0 +1,79 @@ +#N canvas 48 64 758 768 12; +#X text 36 11 oscformat - convert lists to Open Sound Control (OSC) +packets, f 61; +#X msg 72 560 format b; +#X msg 72 147 1 2 3; +#X obj 72 268 oscformat cat horse pig; +#X msg 94 203 set dog ferret; +#X msg 92 230 set mouse banana; +#X obj 180 302 oscparse; +#X obj 72 301 print packet; +#X msg 80 174 4 5 weasel 6 7 rat; +#X obj 148 661 oscparse; +#X obj 148 686 print parse-output; +#X obj 42 662 print packet; +#X msg 57 507 -1 1 2 mule 4 5; +#X msg 69 605 format ifisf; +#X obj 42 635 oscformat -f b wombat; +#X msg 45 479 5 6 7 squirrel; +#X msg 70 582 format fiiib; +#X text 270 266 creation arguments are OSC address; +#X text 138 137 OSC messages with numbers and symbols. Except as shown +below the message will contain 'float' and 'string' data.; +#X msg 342 379 disconnect; +#X obj 334 406 netsend -u -b; +#X msg 343 355 connect localhost 5000; +#X obj 335 305 list prepend send; +#X obj 335 330 list trim; +#X obj 180 327 print reassembled; +#X text 25 736 see also:; +#X text 381 733 updated for Pd version 0.46; +#X obj 267 736 list; +#X obj 113 736 oscparse; +#X obj 197 736 netsend; +#X text 29 45 oscformat makes OSC packets suitable for sending over +the network via netsend (in UDP binary mode). The OSC address (the +strings between the slashes) are given by the creation arguments or +by "set" messages. Incoming lists are output as OSC messages \, byte +by byte., f 61; +#X text 437 379 don't send; +#X text 226 205 set message to change OSC address; +#X text 232 632 the '-f' creation argument initializes the format; +#X msg 73 535 format; +#X text 142 535 no format; +#X text 150 558 a 'blob'; +#X text 180 593 mixtures; +#X text 530 354 send as UDP; +#X text 258 452 The format \, if any (initialized or set by a 'format' +message) instructs oscformat to interpret incoming data as integer +\, float \, string \, or 'blob'. Blobs are given as an atom count followed +by that number of elements. (If an elements is a symbol \, its first +byte is sent). If the count is negative \, the entire remaining message +is included in the blob (but the OSC parser will report the actual +number of elements). If the elements aren't exhausted at the end of +the format string \, the default (float and symbol) conversions are +made for the rest.; +#X text 306 666 Note: there's no way using oscparse to distinguish +between floats and integers \, nor to see blobs unambiguously., f +40; +#X connect 1 0 14 0; +#X connect 2 0 3 0; +#X connect 3 0 7 0; +#X connect 3 0 22 0; +#X connect 3 0 6 0; +#X connect 4 0 3 0; +#X connect 5 0 3 0; +#X connect 6 0 24 0; +#X connect 8 0 3 0; +#X connect 9 0 10 0; +#X connect 12 0 14 0; +#X connect 13 0 14 0; +#X connect 14 0 11 0; +#X connect 14 0 9 0; +#X connect 15 0 14 0; +#X connect 16 0 14 0; +#X connect 19 0 20 0; +#X connect 21 0 20 0; +#X connect 22 0 23 0; +#X connect 23 0 20 0; +#X connect 34 0 14 0; diff --git a/pd/doc/5.reference/oscparse-help.pd b/pd/doc/5.reference/oscparse-help.pd new file mode 100644 index 0000000000000000000000000000000000000000..d0c7843635cd28c92aa518e54ca795b4da5d890a --- /dev/null +++ b/pd/doc/5.reference/oscparse-help.pd @@ -0,0 +1,53 @@ +#N canvas 3 69 706 702 12; +#X obj 171 576 oscparse; +#X text 52 663 see also:; +#X obj 140 663 oscformat; +#X obj 224 663 netreceive; +#X text 435 666 updated for Pd version 0.46; +#X obj 171 599 print parse-output; +#X obj 314 663 list; +#X obj 419 521 netreceive -u -b; +#X msg 419 466 listen 5000; +#X msg 431 494 listen 0; +#X text 520 493 stop listening; +#X msg 57 471 1 2 3 foo 5; +#X text 51 446 numbers and symbols; +#X obj 57 496 oscformat dog cat; +#X obj 222 496 oscformat -f b weasel; +#X msg 222 471 -1 1 2 3 4 5; +#X obj 57 576 print packet; +#X text 234 445 a blob; +#X text 416 442 packets from network; +#X text 521 466 slisten on port 5000; +#X text 558 521 UDP packets \, binary output, f 13; +#X text 45 41 oscparse take incoming lists of numbers \, interpreting +them as the bytes in an OSC message. The output is a list containing +\, first \, the symbols making up the address of the OSC packet \, +and following that \, numbers and symbols as present in the OSC message. +OSC messages may contain 'float' \, 'int' \, 'string' \, or 'blob' +elements. Blobs are arrays of bytes (numbers between 0 and 255) and +are copied to the output preceded by the blob's byte count.; +#X text 80 11 oscparse - parse Open Sound Control (OSC) packets into +Pd messages, f 67; +#X text 44 187 OSC is a complicated networking protocol (FUDI \, as +used in netsend/netreceive is simpler and better but less widely used). +oscparse and oscformat make no attempt to deal with timetags or aggregates +of packets \, nor with streaming OSC. Also \, no attempt is made here +to clearly distinguish between the OSC address (symbols) and the following +data \, nor between blobs and lists of numbers - it is assumed that +you know what types the message should contain. You can alternatively +use the OSC objects from mrpeach which have more features than these. +; +#X text 42 356 OSC messages may be combined in "bundles". If oscparse +receives a bundle it simply parses all the messages in the bundle in +the order they appear \, and ignores the bundle's time tag.; +#X connect 0 0 5 0; +#X connect 7 0 0 0; +#X connect 8 0 7 0; +#X connect 9 0 7 0; +#X connect 11 0 13 0; +#X connect 13 0 0 0; +#X connect 13 0 16 0; +#X connect 14 0 0 0; +#X connect 14 0 16 0; +#X connect 15 0 14 0; diff --git a/pd/nw/index.js b/pd/nw/index.js index d9f6f6331345eeb602fe2a5dfa40dc6f25780b02..9d69b385ec05affde6bd427127b3f994faa7e094 100644 --- a/pd/nw/index.js +++ b/pd/nw/index.js @@ -664,6 +664,11 @@ function nw_create_pd_window_menus(gui, w) { minit(m.help.browser, { click: pdgui.open_search }); + minit(m.help.intro, { + click: function() { + pdgui.pd_doc_open("doc/5.reference", "help-intro.pd"); + } + }); minit(m.help.l2ork_list, { click: function() { pdgui.external_doc_open("http://disis.music.vt.edu/listinfo/l2ork-dev"); diff --git a/pd/nw/locales/de/translation.json b/pd/nw/locales/de/translation.json index 6432255b3e44ab252ff7aa1373d3055f0e610a83..a7108e59f5695d09bee73d539d786f7d561c7f93 100644 --- a/pd/nw/locales/de/translation.json +++ b/pd/nw/locales/de/translation.json @@ -241,6 +241,8 @@ "manual_tt": "Öffne das Pd-HTML-Handbuch", "browser": "Hilfe-Browser", "browser_tt": "Öffne einen Hilfe-Browser, um nach Dokumentation und Objekten zu suchen", + "intro": "Schnellreferenz", + "intro_tt": "Öffne einen Hilfe-Patch mit einer Liste der wichtigsten Pd-Objekte", "l2ork_list": "Pd-L2Ork-Mailing-Liste", "l2ork_list_tt": "Öffne einen Link zur Pd-L2Ork-Mailing-Liste im Browser", "pd_list": "Pure Data-Mailing-Liste", diff --git a/pd/nw/locales/en/translation.json b/pd/nw/locales/en/translation.json index 4f27fa6aacdd5334d40b83ca9eafcfa35c1e2198..85024b356f00d0a53c01b5d4f375a8087b16facf 100644 --- a/pd/nw/locales/en/translation.json +++ b/pd/nw/locales/en/translation.json @@ -241,6 +241,8 @@ "manual_tt": "Open the HTML manual for Pd", "browser": "Help Browser", "browser_tt": "Open a help browser to search for documentation and objects", + "intro": "Quick Reference", + "intro_tt": "Open a help patch listing Pd's most essential objects", "l2ork_list": "Pd-L2ork Mailing List", "l2ork_list_tt": "Open a link in a browser for Pd-L2ork Mailing List", "pd_list": "Pure Data Mailing Lists", diff --git a/pd/nw/pd_canvas.js b/pd/nw/pd_canvas.js index 0cf4f270df43d8f4481c270422fdc2e90ec51633..936c99cd3edd7b3a2f7f676b47fe90327cfe3655 100644 --- a/pd/nw/pd_canvas.js +++ b/pd/nw/pd_canvas.js @@ -1431,6 +1431,11 @@ function nw_create_patch_window_menus(gui, w, name) { minit(m.help.browser, { click: pdgui.open_search }); + minit(m.help.intro, { + click: function() { + pdgui.pd_doc_open("doc/5.reference", "help-intro.pd"); + } + }); minit(m.help.l2ork_list, { click: function() { pdgui.external_doc_open("http://disis.music.vt.edu/listinfo/l2ork-dev"); diff --git a/pd/nw/pd_menus.js b/pd/nw/pd_menus.js index 60fb5cf4e02b090eb27630d1ece8ba509dfb95a5..e864e5fcbb36f90ca76c0ec61e0afe7a4228a7e3 100644 --- a/pd/nw/pd_menus.js +++ b/pd/nw/pd_menus.js @@ -546,7 +546,7 @@ function create_menu(gui, type) { })); help_menu.append(m.help.manual = new gui.MenuItem({ label: l("menu.manual"), - tooltip: l("menu.manual") + tooltip: l("menu.manual_tt") })); help_menu.append(m.help.browser = new gui.MenuItem({ label: l("menu.browser"), @@ -554,6 +554,10 @@ function create_menu(gui, type) { modifiers: cmd_or_ctrl, tooltip: l("menu.browser_tt") })); + help_menu.append(m.help.intro = new gui.MenuItem({ + label: l("menu.intro"), + tooltip: l("menu.intro_tt") + })); help_menu.append(new gui.MenuItem({ type: "separator" })); help_menu.append(m.help.l2ork_list = new gui.MenuItem({ label: l("menu.l2ork_list"),