From da1f0065d07250b86b9a761b012987e4825f491f Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 28 Nov 2005 16:53:25 +0000 Subject: This commit was generated by cvs2svn to compensate for changes in r4068, which included commits to RCS files with non-trunk default branches. svn path=/trunk/externals/smlib/; revision=4069 --- help/SMLib-help.pd | 103 +++++++++++++++++++++++++++++++++++++++++++++++++ help/bp-help.pd | 35 +++++++++++++++++ help/deltas-help.pd | 34 ++++++++++++++++ help/hip-help.pd | 32 +++++++++++++++ help/hist-help.pd | 44 +++++++++++++++++++++ help/itov-help.pd | 44 +++++++++++++++++++++ help/lavg-help.pd | 22 +++++++++++ help/lhist-help.pd | 40 +++++++++++++++++++ help/lhisti-help.pd | 41 ++++++++++++++++++++ help/linspace-help.pd | 20 ++++++++++ help/lmax-help.pd | 22 +++++++++++ help/lmin-help.pd | 22 +++++++++++ help/lrange-help.pd | 22 +++++++++++ help/prevl-help.pd | 34 ++++++++++++++++ help/threshold-help.pd | 50 ++++++++++++++++++++++++ help/vabs-help.pd | 6 +++ help/vclip-help.pd | 17 ++++++++ help/vcog-help.pd | 21 ++++++++++ help/vdbtorms-help.pd | 9 +++++ help/vdelta-help.pd | 29 ++++++++++++++ help/vfmod-help.pd | 17 ++++++++ help/vftom-help.pd | 9 +++++ help/vlavg-help.pd | 29 ++++++++++++++ help/vlmax-help.pd | 29 ++++++++++++++ help/vlmin-help.pd | 29 ++++++++++++++ help/vmax-help.pd | 21 ++++++++++ help/vmin-help.pd | 21 ++++++++++ help/vmtof-help.pd | 9 +++++ help/vpow-help.pd | 15 +++++++ help/vrms-help.pd | 15 +++++++ help/vrmstodb-help.pd | 9 +++++ help/vstd-help.pd | 15 +++++++ help/vsum-help.pd | 13 +++++++ help/vv+-help.pd | 25 ++++++++++++ help/vv--help.pd | 23 +++++++++++ help/vvconv-help.pd | 35 +++++++++++++++++ 36 files changed, 961 insertions(+) create mode 100644 help/SMLib-help.pd create mode 100644 help/bp-help.pd create mode 100644 help/deltas-help.pd create mode 100644 help/hip-help.pd create mode 100644 help/hist-help.pd create mode 100644 help/itov-help.pd create mode 100644 help/lavg-help.pd create mode 100644 help/lhist-help.pd create mode 100644 help/lhisti-help.pd create mode 100644 help/linspace-help.pd create mode 100644 help/lmax-help.pd create mode 100644 help/lmin-help.pd create mode 100644 help/lrange-help.pd create mode 100644 help/prevl-help.pd create mode 100644 help/threshold-help.pd create mode 100644 help/vabs-help.pd create mode 100644 help/vclip-help.pd create mode 100644 help/vcog-help.pd create mode 100644 help/vdbtorms-help.pd create mode 100644 help/vdelta-help.pd create mode 100644 help/vfmod-help.pd create mode 100644 help/vftom-help.pd create mode 100644 help/vlavg-help.pd create mode 100644 help/vlmax-help.pd create mode 100644 help/vlmin-help.pd create mode 100644 help/vmax-help.pd create mode 100644 help/vmin-help.pd create mode 100644 help/vmtof-help.pd create mode 100644 help/vpow-help.pd create mode 100644 help/vrms-help.pd create mode 100644 help/vrmstodb-help.pd create mode 100644 help/vstd-help.pd create mode 100644 help/vsum-help.pd create mode 100644 help/vv+-help.pd create mode 100644 help/vv--help.pd create mode 100644 help/vvconv-help.pd (limited to 'help') diff --git a/help/SMLib-help.pd b/help/SMLib-help.pd new file mode 100644 index 0000000..028dbc4 --- /dev/null +++ b/help/SMLib-help.pd @@ -0,0 +1,103 @@ +#N canvas 97 25 525 422 12; +#X obj 31 188 lmax; +#X obj 31 211 lmin; +#X obj 31 234 lrange; +#X obj 31 165 lavg; +#X obj 9 317 threshold; +#X text 89 188 leaky maximum; +#X text 89 213 leaky minimum; +#X text 90 237 leaky range; +#X text 89 164 leaky average; +#X text 92 316 hysteresis; +#X obj 31 257 lstd; +#X text 90 260 leaky standard deviation; +#X obj 26 421 hist; +#X text 88 421 histogram; +#X obj 26 444 lhist; +#X text 88 445 leaky histogram; +#X obj 9 293 decimator; +#X text 94 291 decimator; +#X obj 32 352 hip; +#X obj 32 375 bp; +#X obj 25 751 vv+; +#X text 83 751 vector addition; +#X text 83 774 vector substraction; +#X obj 25 797 vvconv; +#X text 83 797 vector convolution; +#X obj 24 590 vsum; +#X text 85 592 sum of elements; +#X obj 24 613 vcog; +#X text 85 613 center of gravity; +#X obj 24 636 vmax; +#X text 86 637 maximum and its location; +#X text 86 659 minimum and its location; +#X obj 24 659 vmin; +#X obj 27 1129 vlavg; +#X text 87 1131 leaky averages; +#X text 3 4 SMLib means Signal processing for Mapping; +#X text 435 1264 j#|@2002; +#X text 249 121 johannes.taelman@rug.ac.be; +#X text 283 102 enjoy!; +#X obj 27 1152 vlmax; +#X text 87 1154 leaky maxima; +#X obj 27 1175 vlmin; +#X text 87 1177 leaky minima; +#X obj 27 1198 vlrange; +#X text 87 1200 leaky ranges; +#X obj 27 1221 vdelta; +#X text 88 1223 differences between succesive vectors; +#X obj 25 820 vclip; +#X text 84 821 clip elements; +#X text 96 352 high pass filter; +#X text 97 375 band pass filter; +#X text 3 29 Its a collection of objects for the analysis of float +streams (for taking temporal context into account) \, vectors (lists +of floats) and vector streams (temporal context...). It is complementary +to the zexy and gem/markex library \, so have a look at those too. +; +#X obj 25 774 vv-; +#X obj 24 683 vrms; +#X text 84 686 root mean square; +#X obj 24 706 vstd; +#X text 83 708 standard deviation; +#X text 22 1044 there is also a [Clip] in cyclone (identical to vclip) +; +#X text 0 398 analyzing stream of floats (context) (vector output) +; +#X text 1 142 processing stream of floats (context) (float output) +; +#X text -3 567 immediate vector analysis (float output); +#X text -6 730 immediate vector processing (vector output); +#X text 22 1010 cfr. [.] in zexy; +#X text 22 1027 cfr. [v+] \, [v-] \, [v*] \, [v/] \, [vabs] in GEM/MarkEx +; +#X text -2 1108 vector stream processing (context) (vector output) +; +#X obj 25 843 vfmod; +#X text 83 845 floating point modulo; +#X obj 23 918 vmtof; +#X text 81 918 midi to frequency; +#X text 21 897 unit conversions; +#X obj 23 941 vftom; +#X text 81 941 frequency to midi; +#X obj 23 964 vdbtorms; +#X text 99 964 db to rms; +#X obj 23 987 vrmstodb; +#X text 99 987 rms to db; +#X obj 25 866 vpow; +#X obj 25 546 deltas; +#X text 83 867 power; +#X obj 26 466 lhisti; +#X text 88 467 leaky histogram without clipping input; +#X text 88 546 difference between current input and past inputs; +#X obj 455 1243 SMLib; +#X obj 472 1224 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 +-1 -1; +#X obj 26 520 prevl; +#X text 89 520 previous input values in a list; +#X text -3 1064 vector synthesis; +#X obj 23 1085 linspace; +#X text 98 1085 generates a vector with linear spaced floats; +#X obj 44 492 itov; +#X text 90 491 index to value (for histogram bins); +#X connect 83 0 82 0; diff --git a/help/bp-help.pd b/help/bp-help.pd new file mode 100644 index 0000000..cb88dcb --- /dev/null +++ b/help/bp-help.pd @@ -0,0 +1,35 @@ +#N canvas 114 43 428 284 12; +#X floatatom 12 141 5 0 0; +#X obj 12 118 float; +#X obj 12 95 metro 100; +#X obj 12 54 loadbang; +#X obj 12 78 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 124 77 hsl 128 15 -127 127 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 12700 1; +#X text 349 255 j#|@2002; +#X obj 367 233 SMLib; +#X text 13 7 bp: bandpass filter on float stream; +#X floatatom 138 133 0 0 0; +#X msg 106 110 clear; +#X text 156 109 <-- reinitialize internal state; +#X text 170 134 <-- center frequency; +#X floatatom 187 155 0 0 0; +#X text 219 156 <-- Q; +#X obj 21 211 hsl 128 15 -256 256 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 7974 1; +#X floatatom 17 237 5 0 0; +#X text 11 25 the non-audio version of bp~; +#X text 262 76 <-- swing!; +#X obj 19 182 bp 0.07 5; +#X connect 1 0 0 0; +#X connect 1 0 19 0; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 5 0 1 1; +#X connect 9 0 19 1; +#X connect 10 0 19 0; +#X connect 13 0 19 2; +#X connect 15 0 16 0; +#X connect 19 0 15 0; diff --git a/help/deltas-help.pd b/help/deltas-help.pd new file mode 100644 index 0000000..9988a85 --- /dev/null +++ b/help/deltas-help.pd @@ -0,0 +1,34 @@ +#N canvas 553 310 489 262 12; +#X text 390 239 j#|@2002; +#X obj 412 217 SMLib; +#X floatatom 14 74 5 0 0; +#X obj 12 165 print deltas; +#X floatatom 68 108 5 0 0; +#X floatatom 120 107 5 0 0; +#X obj 24 104 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 12 138 deltas 1 10 10; +#X obj 14 54 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 9 4 deltas: generates vector with differences between last +input and past inputs; +#X text 9 186 x(i)-x(i-a); +#X text 9 200 x(i)-x(i-(a+1)); +#X text 9 214 x(i)-x(i-(a+2)); +#X text 9 240 x(i)-x(i-(b)); +#X text 7 225 ...; +#X text 153 137 [deltas a b c]; +#X text 120 86 b; +#X text 66 87 a; +#X text 152 183 requires b<=c; +#X text 152 167 c = buffer size; +#X text 35 50 x(i); +#X msg 79 57 clear; +#X connect 2 0 6 0; +#X connect 2 0 7 0; +#X connect 4 0 7 1; +#X connect 5 0 7 2; +#X connect 6 0 7 0; +#X connect 7 0 3 0; +#X connect 8 0 2 0; +#X connect 21 0 7 0; diff --git a/help/hip-help.pd b/help/hip-help.pd new file mode 100644 index 0000000..c8f8e14 --- /dev/null +++ b/help/hip-help.pd @@ -0,0 +1,32 @@ +#N canvas 114 43 430 286 12; +#X floatatom 12 141 5 0 0; +#X obj 12 118 float; +#X obj 12 95 metro 100; +#X obj 12 54 loadbang; +#X obj 12 78 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 124 77 hsl 128 15 -127 127 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 12700 1; +#X text 349 255 j#|@2002; +#X obj 367 233 SMLib; +#X floatatom 138 133 0 0 0; +#X msg 106 110 clear; +#X text 156 109 <-- reinitialize internal state; +#X obj 21 211 hsl 128 15 -256 256 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 6350 1; +#X floatatom 17 237 5 0 0; +#X text 262 76 <-- swing!; +#X text 13 7 hip: highpass filter on float stream; +#X text 11 25 the non-audio version of hip~; +#X obj 19 182 hip 0.05; +#X text 170 134 <-- cutoff frequency; +#X connect 1 0 0 0; +#X connect 1 0 16 0; +#X connect 2 0 1 0; +#X connect 3 0 4 0; +#X connect 4 0 2 0; +#X connect 5 0 1 1; +#X connect 8 0 16 1; +#X connect 9 0 16 0; +#X connect 11 0 12 0; +#X connect 16 0 11 0; diff --git a/help/hist-help.pd b/help/hist-help.pd new file mode 100644 index 0000000..f17850c --- /dev/null +++ b/help/hist-help.pd @@ -0,0 +1,44 @@ +#N canvas 678 207 414 422 12; +#X text 331 381 j#|@2002; +#X text 351 362 SMLib; +#X text 14 7 hist: histograms; +#X obj 2 354 print; +#X obj 11 181 random 10; +#X obj 11 162 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 129 177 absolute; +#X msg 129 205 relative; +#X msg 276 177 clear; +#X text 128 156 generate output; +#X text 275 159 reinit; +#X text 31 160 feed data; +#X obj 2 317 hist 0 10 10; +#X obj 62 347 vsum; +#X floatatom 62 370 5 0 0; +#X msg 11 208 1 3 5 7 9; +#X text 14 50 - value of first class; +#X text 14 77 - number of classes; +#X text 14 64 - value of last class; +#X text 13 35 arguments:; +#X text 14 112 - array of samples in classes; +#X text 12 97 output:; +#X text 12 133 out-of-range inputs are clipped (cfr lhisti); +#X msg 11 233 1.4 3.4 5.4 7.4 9.4; +#X msg 87 292 -10; +#X msg 11 259 0.6 2.6 4.6 6.6 8.6; +#X obj 42 396 itov; +#X text 4 399 cfr.; +#X obj 79 396 lhist; +#X obj 124 396 lhisti; +#X connect 4 0 12 0; +#X connect 5 0 4 0; +#X connect 6 0 12 0; +#X connect 7 0 12 0; +#X connect 8 0 12 0; +#X connect 12 0 3 0; +#X connect 12 0 13 0; +#X connect 13 0 14 0; +#X connect 15 0 12 0; +#X connect 23 0 12 0; +#X connect 24 0 12 0; +#X connect 25 0 12 0; diff --git a/help/itov-help.pd b/help/itov-help.pd new file mode 100644 index 0000000..1ce4e7f --- /dev/null +++ b/help/itov-help.pd @@ -0,0 +1,44 @@ +#N canvas 436 204 416 478 12; +#X text 327 442 j#|@2002; +#X text 347 423 SMLib; +#X msg 275 239 clear; +#X text 277 219 reinit; +#X text 11 81 - value of first class; +#X text 11 108 - number of classes; +#X text 11 95 - value of last class; +#X text 10 66 arguments:; +#X text 10 128 output:; +#X floatatom 93 445 5 0 0; +#X floatatom 45 446 5 0 0; +#X floatatom 144 445 5 0 0; +#X text 14 7 itov: intex to value; +#X text 11 36 input:; +#X text 12 52 - class index; +#X msg 134 248 absolute; +#X floatatom 94 353 5 0 0; +#X msg 16 228 4.6; +#X msg 52 228 5.4; +#X obj 37 293 hist 0 10 10; +#X obj 45 419 itov 0 10 10; +#X obj 45 324 vcog; +#X msg 86 228 5.6; +#X text 7 191 out-of-range input is clipped; +#X floatatom 69 394 5 0 0; +#X text 11 157 - center value of class i; +#X text 11 143 - lower value of class i; +#X text 11 171 - upper value of class i; +#X connect 2 0 19 0; +#X connect 15 0 19 0; +#X connect 17 0 19 0; +#X connect 17 0 15 0; +#X connect 18 0 19 0; +#X connect 18 0 15 0; +#X connect 19 0 21 0; +#X connect 20 0 10 0; +#X connect 20 1 9 0; +#X connect 20 2 11 0; +#X connect 21 0 16 0; +#X connect 21 0 20 0; +#X connect 22 0 19 0; +#X connect 22 0 15 0; +#X connect 24 0 20 0; diff --git a/help/lavg-help.pd b/help/lavg-help.pd new file mode 100644 index 0000000..9ba5e0f --- /dev/null +++ b/help/lavg-help.pd @@ -0,0 +1,22 @@ +#N canvas 553 310 441 199 12; +#X text 351 171 j#|@2002; +#X obj 373 149 SMLib; +#X floatatom 53 75 5 0 0; +#X obj 9 58 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1 +; +#X text 53 55 x(i); +#X text 6 7 lavg: leaky average; +#X obj 9 141 lavg 10; +#X floatatom 9 171 5 0 0; +#X obj 9 101 float; +#X text 5 24 argument: half-decay time (in number of activations); +#X msg 118 101 clear; +#X text 116 79 clear accumulator; +#X msg 244 106 decay 5; +#X text 243 90 set half-decay time; +#X connect 2 0 8 1; +#X connect 3 0 8 0; +#X connect 6 0 7 0; +#X connect 8 0 6 0; +#X connect 10 0 6 0; +#X connect 12 0 6 0; diff --git a/help/lhist-help.pd b/help/lhist-help.pd new file mode 100644 index 0000000..d0648ca --- /dev/null +++ b/help/lhist-help.pd @@ -0,0 +1,40 @@ +#N canvas 133 245 443 412 12; +#X text 360 376 j#|@2002; +#X text 380 357 SMLib; +#X obj 51 362 print; +#X obj 11 193 random 10; +#X obj 11 174 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 236 193 absolute; +#X msg 236 221 relative; +#X msg 372 192 clear; +#X text 235 172 generate output; +#X text 371 173 reinit; +#X text 31 172 feed data; +#X obj 111 355 vsum; +#X floatatom 111 378 5 0 0 0 - - -; +#X msg 11 220 1 3 5 7 9; +#X text 14 50 - value of first class; +#X text 14 77 - number of classes; +#X text 14 64 - value of last class; +#X text 13 35 arguments:; +#X text 14 124 - array of samples in classes; +#X text 12 109 output:; +#X text 12 145 out-of-range inputs are clipped (cfr lhisti); +#X text 14 7 lhist: "leaky" histograms; +#X text 13 91 - half-decay time; +#X obj 51 325 lhist 0 10 10 5; +#X msg 118 194 leak; +#X text 118 172 perform leak; +#X msg 10 246 -5; +#X connect 3 0 23 0; +#X connect 4 0 3 0; +#X connect 5 0 23 0; +#X connect 6 0 23 0; +#X connect 7 0 23 0; +#X connect 11 0 12 0; +#X connect 13 0 23 0; +#X connect 23 0 2 0; +#X connect 23 0 11 0; +#X connect 24 0 23 0; +#X connect 26 0 23 0; diff --git a/help/lhisti-help.pd b/help/lhisti-help.pd new file mode 100644 index 0000000..601845f --- /dev/null +++ b/help/lhisti-help.pd @@ -0,0 +1,41 @@ +#N canvas 645 245 441 405 12; +#X text 360 376 j#|@2002; +#X text 380 357 SMLib; +#X obj 51 362 print; +#X obj 11 193 random 10; +#X obj 11 174 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X msg 236 193 absolute; +#X msg 236 221 relative; +#X msg 372 192 clear; +#X text 235 172 generate output; +#X text 371 173 reinit; +#X text 31 172 feed data; +#X obj 111 355 vsum; +#X floatatom 111 378 5 0 0 0 - - -; +#X msg 11 220 1 3 5 7 9; +#X text 14 50 - value of first class; +#X text 14 77 - number of classes; +#X text 14 64 - value of last class; +#X text 13 35 arguments:; +#X text 14 124 - array of samples in classes; +#X text 12 109 output:; +#X text 12 145 out-of-range inputs are clipped (cfr lhisti); +#X text 13 91 - half-decay time; +#X obj 51 325 lhist 0 10 10 5; +#X msg 118 194 leak; +#X text 118 172 perform leak; +#X text 13 4 lhisti: "leaky" histograms without clipping the input +; +#X msg 11 245 -5; +#X connect 3 0 22 0; +#X connect 4 0 3 0; +#X connect 5 0 22 0; +#X connect 6 0 22 0; +#X connect 7 0 22 0; +#X connect 11 0 12 0; +#X connect 13 0 22 0; +#X connect 22 0 2 0; +#X connect 22 0 11 0; +#X connect 23 0 22 0; +#X connect 26 0 22 0; diff --git a/help/linspace-help.pd b/help/linspace-help.pd new file mode 100644 index 0000000..cbd7732 --- /dev/null +++ b/help/linspace-help.pd @@ -0,0 +1,20 @@ +#N canvas 488 507 396 195 12; +#X text 303 159 j#|@2002; +#X obj 325 139 SMLib; +#X obj 29 147 print linspace; +#X floatatom 136 101 5 0 0; +#X floatatom 82 80 5 0 0; +#X floatatom 29 58 5 0 0; +#X obj 11 38 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 29 36 generate; +#X text 132 80 set b; +#X text 187 101 set n; +#X text 79 56 set a and generate; +#X obj 29 124 linspace 0 1 4; +#X text 9 6 generates a vector with linear spaced floats; +#X connect 3 0 11 2; +#X connect 4 0 11 1; +#X connect 5 0 11 0; +#X connect 6 0 11 0; +#X connect 11 0 2 0; diff --git a/help/lmax-help.pd b/help/lmax-help.pd new file mode 100644 index 0000000..e704957 --- /dev/null +++ b/help/lmax-help.pd @@ -0,0 +1,22 @@ +#N canvas 553 310 441 199 12; +#X text 353 169 j#|@2002; +#X obj 375 147 SMLib; +#X floatatom 55 73 5 0 0; +#X obj 11 56 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 55 53 x(i); +#X floatatom 11 169 5 0 0; +#X obj 11 99 float; +#X text 7 22 argument: half-decay time (in number of activations); +#X msg 119 95 clear; +#X text 118 77 clear accumulator; +#X text 8 5 lmax: leaky maximum; +#X obj 11 139 lmax 10; +#X msg 244 106 decay 5; +#X text 243 90 set half-decay time; +#X connect 2 0 6 1; +#X connect 3 0 6 0; +#X connect 6 0 11 0; +#X connect 8 0 11 0; +#X connect 11 0 5 0; +#X connect 12 0 11 0; diff --git a/help/lmin-help.pd b/help/lmin-help.pd new file mode 100644 index 0000000..c17e984 --- /dev/null +++ b/help/lmin-help.pd @@ -0,0 +1,22 @@ +#N canvas 553 310 444 200 12; +#X text 351 168 j#|@2002; +#X obj 373 146 SMLib; +#X floatatom 53 72 5 0 0; +#X obj 9 55 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1 +; +#X text 53 52 x(i); +#X floatatom 9 168 5 0 0; +#X obj 9 98 float; +#X text 5 21 argument: half-decay time (in number of activations); +#X text 6 4 lmin: leaky minimum; +#X obj 9 138 lmin 10; +#X msg 112 92 clear; +#X text 111 73 clear accumulator; +#X msg 244 106 decay 5; +#X text 243 90 set half-decay time; +#X connect 2 0 6 1; +#X connect 3 0 6 0; +#X connect 6 0 9 0; +#X connect 9 0 5 0; +#X connect 10 0 9 0; +#X connect 12 0 9 0; diff --git a/help/lrange-help.pd b/help/lrange-help.pd new file mode 100644 index 0000000..3d2102a --- /dev/null +++ b/help/lrange-help.pd @@ -0,0 +1,22 @@ +#N canvas 553 310 441 199 12; +#X text 352 168 j#|@2002; +#X obj 374 146 SMLib; +#X floatatom 54 72 5 0 0; +#X obj 10 55 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 54 52 x(i); +#X floatatom 10 168 5 0 0; +#X obj 10 98 float; +#X text 6 21 argument: half-decay time (in number of activations); +#X msg 119 98 clear; +#X text 117 76 clear accumulator; +#X text 7 4 lrange: leaky maximum minus leaky minimum; +#X obj 10 138 lrange 10; +#X msg 244 106 decay 5; +#X text 243 90 set half-decay time; +#X connect 2 0 6 1; +#X connect 3 0 6 0; +#X connect 6 0 11 0; +#X connect 8 0 11 0; +#X connect 11 0 5 0; +#X connect 12 0 11 0; diff --git a/help/prevl-help.pd b/help/prevl-help.pd new file mode 100644 index 0000000..cf7f8d5 --- /dev/null +++ b/help/prevl-help.pd @@ -0,0 +1,34 @@ +#N canvas 410 463 489 262 12; +#X text 364 181 j#|@2002; +#X obj 386 159 SMLib; +#X floatatom -12 16 5 0 0; +#X floatatom 42 50 5 0 0; +#X floatatom 94 49 5 0 0; +#X obj -2 46 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj -12 -4 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text -19 167 ...; +#X text 127 79 [deltas a b c]; +#X text 94 28 b; +#X text 40 29 a; +#X text 126 125 requires b<=c; +#X text 126 109 c = buffer size; +#X text 9 -8 x(i); +#X obj -14 107 print prevl; +#X text -17 -54 prevl: generates vector with past input values (float) +; +#X text -17 128 x(i-a); +#X text -17 142 x(i-(a+1)); +#X text -17 156 x(i-(a+2)); +#X text -17 182 x(i-(b)); +#X obj -14 80 prevl 0 10 10; +#X msg 71 2 clear; +#X connect 2 0 20 0; +#X connect 2 0 5 0; +#X connect 3 0 20 1; +#X connect 4 0 20 2; +#X connect 5 0 20 0; +#X connect 6 0 2 0; +#X connect 20 0 14 0; +#X connect 21 0 20 0; diff --git a/help/threshold-help.pd b/help/threshold-help.pd new file mode 100644 index 0000000..e9b5a5d --- /dev/null +++ b/help/threshold-help.pd @@ -0,0 +1,50 @@ +#N canvas 114 43 708 422 12; +#X text 221 309 Arguments:; +#X text 310 310 1 trigger threshold; +#X floatatom 20 235 5 0 0; +#X obj 42 363 print trigger; +#X obj 183 363 print rest; +#X text 310 341 3 rest threshold; +#X msg 172 268 1; +#X msg 208 268 0; +#X text 249 209 "set" to change the parameters; +#X text 245 263 zero or nonszero in inlet to set the state to "high" +or "low". There is no debounce period after this.; +#X text 208 12 - TRIGGER FROM FLOAT STREAM; +#X obj 124 11 threshold; +#X text 26 48 threshold monitors its input float stream and outputs +bangs when the signal exceeds a specified "trigger" value \, and also +when the input value recedes below a "rest" value. You can specify +debounce in number of floats received \, for the threshold~ to wait +after the two event types before triggering again.; +#X text 310 326 2 trigger debounce number; +#X text 309 358 4 rest debounce number; +#X obj 20 212 float; +#X obj 20 189 metro 100; +#X obj 20 148 loadbang; +#X obj 20 170 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 +; +#X obj 132 171 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144 +-1 -1 1200 1; +#X msg 129 208 set 50 0 10 0; +#X msg 130 231 set 50 15 10 15; +#X text 12 393 see also threshold~; +#X obj 164 363 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 20 363 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 20 332 threshold 70 10 30 10; +#X text 620 398 j#|@2002; +#X obj 638 376 SMLib; +#X connect 2 0 25 0; +#X connect 15 0 2 0; +#X connect 16 0 15 0; +#X connect 17 0 18 0; +#X connect 18 0 16 0; +#X connect 19 0 15 1; +#X connect 20 0 25 0; +#X connect 21 0 25 0; +#X connect 25 0 3 0; +#X connect 25 0 24 0; +#X connect 25 1 4 0; +#X connect 25 1 23 0; diff --git a/help/vabs-help.pd b/help/vabs-help.pd new file mode 100644 index 0000000..8fea847 --- /dev/null +++ b/help/vabs-help.pd @@ -0,0 +1,6 @@ +#N canvas 490 308 452 302 12; +#X obj 106 129 vabs; +#X msg 105 95 1 2 3 -4 -5 -6; +#X obj 105 165 print; +#X connect 0 0 2 0; +#X connect 1 0 0 0; diff --git a/help/vclip-help.pd b/help/vclip-help.pd new file mode 100644 index 0000000..9b12fdd --- /dev/null +++ b/help/vclip-help.pd @@ -0,0 +1,17 @@ +#N canvas 588 327 324 246 12; +#X obj 11 141 vclip -1 1; +#X obj 11 196 print; +#X msg 11 30 -4 -3 -2 -1 0 1 2 3 4; +#X floatatom 73 64 5 0 0; +#X floatatom 118 103 5 0 0; +#X text 10 6 vclip clips each element in a vector; +#X text 23 166 arguments: lower bound \, upper bound; +#X text 20 52 input; +#X text 79 81 lower bound; +#X text 121 120 upper bound; +#X text 252 220 j#|@2002; +#X obj 274 200 SMLib; +#X connect 0 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 0 1; +#X connect 4 0 0 2; diff --git a/help/vcog-help.pd b/help/vcog-help.pd new file mode 100644 index 0000000..3f62651 --- /dev/null +++ b/help/vcog-help.pd @@ -0,0 +1,21 @@ +#N canvas 480 472 471 125 12; +#X msg 18 40 1 2 3 4; +#X floatatom 50 96 5 0 0; +#X msg 84 40 3 4 5; +#X text 387 99 j#|@2002; +#X obj 409 77 SMLib; +#X obj 52 69 vcog; +#X text 16 14 vcog computes the center of gravity of a list of floats +; +#X msg 134 40 0 1 0 1; +#X msg 199 40 0 0 1 1; +#X msg 263 40 8; +#X msg 144 74 1 -1; +#X text 142 94 zero sum causes no output; +#X connect 0 0 5 0; +#X connect 2 0 5 0; +#X connect 5 0 1 0; +#X connect 7 0 5 0; +#X connect 8 0 5 0; +#X connect 9 0 5 0; +#X connect 10 0 5 0; diff --git a/help/vdbtorms-help.pd b/help/vdbtorms-help.pd new file mode 100644 index 0000000..bb72563 --- /dev/null +++ b/help/vdbtorms-help.pd @@ -0,0 +1,9 @@ +#N canvas 606 355 283 118 12; +#X text 194 88 j#|@2002; +#X obj 216 68 SMLib; +#X msg 15 33 100 97 94; +#X text 10 6 db to rms on a vector; +#X obj 15 56 vdbtorms; +#X obj 15 80 print vdbtorms; +#X connect 2 0 4 0; +#X connect 4 0 5 0; diff --git a/help/vdelta-help.pd b/help/vdelta-help.pd new file mode 100644 index 0000000..3e0c082 --- /dev/null +++ b/help/vdelta-help.pd @@ -0,0 +1,29 @@ +#N canvas 619 449 433 228 12; +#X msg 5 30 1 1 1 1 1 1 1 1 1 1; +#X msg 5 52 1 0 1 0 1 0 1 0 1 0; +#X msg 5 74 0 1 0 1 0 1 0 1 0 1; +#X msg 5 96 0 0 0 0 0 0 0 0 0 0; +#X msg 5 118 -1 -1 0 0 -1 -1 0 0 -1 -1; +#X msg 5 140 0 0 0 0 0 1 1 1 1 1; +#X text 352 205 j#|@2002; +#X obj 373 184 SMLib; +#X text 7 3 vdelta: difference between consecutive vectors; +#X obj 5 193 print vdelta; +#X msg 221 31 0; +#X text 111 162 sending a vector of a different; +#X text 111 178 length resets its state; +#X obj 5 170 vdelta; +#X msg 221 57 0 0 0; +#X msg 221 79 1 2 3; +#X msg 221 101 3 2 1; +#X connect 0 0 13 0; +#X connect 1 0 13 0; +#X connect 2 0 13 0; +#X connect 3 0 13 0; +#X connect 4 0 13 0; +#X connect 5 0 13 0; +#X connect 10 0 13 0; +#X connect 13 0 9 0; +#X connect 14 0 13 0; +#X connect 15 0 13 0; +#X connect 16 0 13 0; diff --git a/help/vfmod-help.pd b/help/vfmod-help.pd new file mode 100644 index 0000000..e4ccbb2 --- /dev/null +++ b/help/vfmod-help.pd @@ -0,0 +1,17 @@ +#N canvas 163 334 442 175 12; +#X text 364 147 j#|@2002; +#X obj 386 127 SMLib; +#X text 10 6 vfmod computes the modulo of each element in a vector +; +#X obj 15 127 print; +#X floatatom 66 81 5 0 0; +#X text 79 103 base; +#X text 78 119 base zero becomes one; +#X msg 15 33 0 0.5 1 1.5 2 2.5 3 3.5; +#X msg 26 58 0 -0.5 -1 -1.5 -2 -2.5 -3 -3.5; +#X obj 15 101 vfmod 2; +#X text 78 134 default argument is 1; +#X connect 4 0 9 1; +#X connect 7 0 9 0; +#X connect 8 0 9 0; +#X connect 9 0 3 0; diff --git a/help/vftom-help.pd b/help/vftom-help.pd new file mode 100644 index 0000000..6b3a17f --- /dev/null +++ b/help/vftom-help.pd @@ -0,0 +1,9 @@ +#N canvas 606 355 281 116 12; +#X text 194 88 j#|@2002; +#X obj 216 68 SMLib; +#X text 10 6 frequency to midi on a vector; +#X msg 15 33 440 446.164 880; +#X obj 15 56 vftom; +#X obj 15 80 print vftom; +#X connect 3 0 4 0; +#X connect 4 0 5 0; diff --git a/help/vlavg-help.pd b/help/vlavg-help.pd new file mode 100644 index 0000000..4fc0bef --- /dev/null +++ b/help/vlavg-help.pd @@ -0,0 +1,29 @@ +#N canvas 448 299 464 314 12; +#X obj 8 249 prepend 0; +#N canvas 0 0 450 300 graph1 0; +#X array array_vlavg 10 float 0; +#X coords 0 1 9 -1 200 140 1; +#X restore 239 102 graph; +#X msg 8 58 1 1 1 1 1 1 1 1 1 1; +#X msg 8 80 1 0 1 0 1 0 1 0 1 0; +#X msg 8 102 0 1 0 1 0 1 0 1 0 1; +#X msg 8 124 0 0 0 0 0 0 0 0 0 0; +#X obj 8 224 vlavg 6; +#X msg 8 146 -1 -1 0 0 -1 -1 0 0 -1 -1; +#X msg 8 168 0 0 0 0 0 1 1 1 1 1; +#X text 376 285 j#|@2002; +#X text 7 3 vlavg: vector leaky average; +#X text 8 22 the argument is the half-decay expressed in number of +activations; +#X obj 8 275 s array_vlavg; +#X obj 397 264 SMLib; +#X msg 27 201 decay 20; +#X connect 0 0 12 0; +#X connect 2 0 6 0; +#X connect 3 0 6 0; +#X connect 4 0 6 0; +#X connect 5 0 6 0; +#X connect 6 0 0 0; +#X connect 7 0 6 0; +#X connect 8 0 6 0; +#X connect 14 0 6 0; diff --git a/help/vlmax-help.pd b/help/vlmax-help.pd new file mode 100644 index 0000000..bb1063c --- /dev/null +++ b/help/vlmax-help.pd @@ -0,0 +1,29 @@ +#N canvas 448 299 466 316 12; +#X obj 8 249 prepend 0; +#N canvas 0 0 450 300 graph1 0; +#X array array_vlmax 10 float 0; +#X coords 0 1 9 -1 200 140 1; +#X restore 239 102 graph; +#X msg 8 58 1 1 1 1 1 1 1 1 1 1; +#X msg 8 80 1 0 1 0 1 0 1 0 1 0; +#X msg 8 102 0 1 0 1 0 1 0 1 0 1; +#X msg 8 124 0 0 0 0 0 0 0 0 0 0; +#X msg 8 146 -1 -1 0 0 -1 -1 0 0 -1 -1; +#X msg 8 168 0 0 0 0 0 1 1 1 1 1; +#X text 376 285 j#|@2002; +#X text 8 22 the argument is the half-decay expressed in number of +activations; +#X obj 397 264 SMLib; +#X obj 8 224 vlmax 6; +#X obj 8 275 s array_vlmax; +#X msg 27 201 decay 20; +#X text 9 4 vlmax: vector leaky maximum; +#X connect 0 0 12 0; +#X connect 2 0 11 0; +#X connect 3 0 11 0; +#X connect 4 0 11 0; +#X connect 5 0 11 0; +#X connect 6 0 11 0; +#X connect 7 0 11 0; +#X connect 11 0 0 0; +#X connect 13 0 11 0; diff --git a/help/vlmin-help.pd b/help/vlmin-help.pd new file mode 100644 index 0000000..2aa6ae1 --- /dev/null +++ b/help/vlmin-help.pd @@ -0,0 +1,29 @@ +#N canvas 448 299 466 316 12; +#X obj 8 249 prepend 0; +#N canvas 0 0 450 300 graph1 0; +#X array array_vlmin 10 float 0; +#X coords 0 1 9 -1 200 140 1; +#X restore 239 102 graph; +#X msg 8 58 1 1 1 1 1 1 1 1 1 1; +#X msg 8 80 1 0 1 0 1 0 1 0 1 0; +#X msg 8 102 0 1 0 1 0 1 0 1 0 1; +#X msg 8 124 0 0 0 0 0 0 0 0 0 0; +#X msg 8 146 -1 -1 0 0 -1 -1 0 0 -1 -1; +#X msg 8 168 0 0 0 0 0 1 1 1 1 1; +#X text 376 285 j#|@2002; +#X text 8 22 the argument is the half-decay expressed in number of +activations; +#X obj 397 264 SMLib; +#X obj 8 275 s array_vlmax; +#X msg 27 201 decay 20; +#X text 7 3 vlmin: vector leaky minimum; +#X obj 8 224 vlmin 6; +#X connect 0 0 11 0; +#X connect 2 0 14 0; +#X connect 3 0 14 0; +#X connect 4 0 14 0; +#X connect 5 0 14 0; +#X connect 6 0 14 0; +#X connect 7 0 14 0; +#X connect 12 0 14 0; +#X connect 14 0 0 0; diff --git a/help/vmax-help.pd b/help/vmax-help.pd new file mode 100644 index 0000000..b9d7947 --- /dev/null +++ b/help/vmax-help.pd @@ -0,0 +1,21 @@ +#N canvas 480 472 473 127 12; +#X floatatom 35 104 5 0 0; +#X text 387 99 j#|@2002; +#X obj 409 77 SMLib; +#X msg 133 47 0; +#X msg 168 47 0 1 0 1; +#X msg 243 48 0 0 1 1; +#X text 14 3 vcog computes maximum of a list of floats; +#X obj 49 76 vmax; +#X floatatom 86 104 5 0 0; +#X msg 15 47 1 2 3 1; +#X msg 81 47 3 4 1; +#X text 13 21 and the location of the first occurance of the maximum +; +#X connect 3 0 7 0; +#X connect 4 0 7 0; +#X connect 5 0 7 0; +#X connect 7 0 0 0; +#X connect 7 1 8 0; +#X connect 9 0 7 0; +#X connect 10 0 7 0; diff --git a/help/vmin-help.pd b/help/vmin-help.pd new file mode 100644 index 0000000..9a99c5e --- /dev/null +++ b/help/vmin-help.pd @@ -0,0 +1,21 @@ +#N canvas 480 472 473 127 12; +#X floatatom 35 104 5 0 0; +#X text 387 99 j#|@2002; +#X obj 409 77 SMLib; +#X msg 133 47 0; +#X msg 168 47 0 1 0 1; +#X msg 236 47 0 0 1 1; +#X floatatom 86 104 5 0 0; +#X msg 15 47 1 2 3 1; +#X msg 81 47 3 4 1; +#X text 14 3 vcog computes minimum of a list of floats; +#X text 13 21 and the location of the first occurance of the minimum +; +#X obj 49 76 vmin; +#X connect 3 0 11 0; +#X connect 4 0 11 0; +#X connect 5 0 11 0; +#X connect 7 0 11 0; +#X connect 8 0 11 0; +#X connect 11 0 0 0; +#X connect 11 1 6 0; diff --git a/help/vmtof-help.pd b/help/vmtof-help.pd new file mode 100644 index 0000000..dc3ba47 --- /dev/null +++ b/help/vmtof-help.pd @@ -0,0 +1,9 @@ +#N canvas 606 355 279 114 12; +#X text 192 79 j#|@2002; +#X obj 214 59 SMLib; +#X obj 15 57 vmtof; +#X text 10 6 midi to frequency on a vector; +#X msg 15 33 69 70 81; +#X obj 15 80 print vmtof; +#X connect 2 0 5 0; +#X connect 4 0 2 0; diff --git a/help/vpow-help.pd b/help/vpow-help.pd new file mode 100644 index 0000000..d8df50b --- /dev/null +++ b/help/vpow-help.pd @@ -0,0 +1,15 @@ +#N canvas 163 334 444 177 12; +#X text 364 147 j#|@2002; +#X obj 386 127 SMLib; +#X obj 15 127 print; +#X floatatom 66 81 5 0 0 0 - - -; +#X text 78 134 default argument is 1; +#X text 10 6 vpow computes y(i)=x(i)^a; +#X text 79 103 a; +#X text 79 117 a zero becomes one; +#X obj 15 101 vpow 2; +#X msg 15 33 0.01 0.5 1 1.5 2 2.5 3 3.5 0; +#X text 27 56 if (x(i)<=0) then y(i)=-1000; +#X connect 3 0 8 1; +#X connect 8 0 2 0; +#X connect 9 0 8 0; diff --git a/help/vrms-help.pd b/help/vrms-help.pd new file mode 100644 index 0000000..43b063f --- /dev/null +++ b/help/vrms-help.pd @@ -0,0 +1,15 @@ +#N canvas 381 509 392 123 12; +#X msg 17 39 1 2 3 4; +#X floatatom 50 96 5 0 0; +#X msg 84 40 3 4 5; +#X text 315 100 j#|@2002; +#X obj 337 78 SMLib; +#X obj 52 69 vrms; +#X text 16 14 vrms computes the root-mean-square of a vector; +#X msg 134 40 1 1 1 1; +#X msg 200 40 1 -1 1 -1; +#X connect 0 0 5 0; +#X connect 2 0 5 0; +#X connect 5 0 1 0; +#X connect 7 0 5 0; +#X connect 8 0 5 0; diff --git a/help/vrmstodb-help.pd b/help/vrmstodb-help.pd new file mode 100644 index 0000000..f971964 --- /dev/null +++ b/help/vrmstodb-help.pd @@ -0,0 +1,9 @@ +#N canvas 606 355 283 118 12; +#X text 194 88 j#|@2002; +#X obj 216 68 SMLib; +#X text 10 6 frequency to midi on a vector; +#X obj 15 56 vrmstodb; +#X msg 15 33 100 97 94; +#X obj 15 80 print vrmstodb; +#X connect 3 0 5 0; +#X connect 4 0 3 0; diff --git a/help/vstd-help.pd b/help/vstd-help.pd new file mode 100644 index 0000000..025dfa7 --- /dev/null +++ b/help/vstd-help.pd @@ -0,0 +1,15 @@ +#N canvas 381 509 394 125 12; +#X msg 17 39 1 2 3 4; +#X floatatom 51 95 5 0 0; +#X msg 84 40 3 4 5; +#X text 315 100 j#|@2002; +#X obj 337 78 SMLib; +#X msg 134 40 1 1 1 1; +#X obj 51 70 vstd; +#X msg 200 40 1 -1 1 -1 1; +#X text 16 14 vstd computes the standard deviation of a vector; +#X connect 0 0 6 0; +#X connect 2 0 6 0; +#X connect 5 0 6 0; +#X connect 6 0 1 0; +#X connect 7 0 6 0; diff --git a/help/vsum-help.pd b/help/vsum-help.pd new file mode 100644 index 0000000..2aee90d --- /dev/null +++ b/help/vsum-help.pd @@ -0,0 +1,13 @@ +#N canvas 468 275 355 125 12; +#X text 16 14 vsum computes the sum of a list of floats; +#X msg 17 39 1 2 3 4; +#X obj 52 69 vsum; +#X floatatom 50 96 5 0 0; +#X msg 84 40 3 4 5; +#X text 275 102 j#|@2002; +#X obj 297 80 SMLib; +#X msg 136 40 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 4 0 2 0; +#X connect 7 0 2 0; diff --git a/help/vv+-help.pd b/help/vv+-help.pd new file mode 100644 index 0000000..2974208 --- /dev/null +++ b/help/vv+-help.pd @@ -0,0 +1,25 @@ +#N canvas 561 440 313 218 12; +#X obj 40 115 vv+; +#X msg 16 81 1 2 3; +#X msg 73 85 4 5 6; +#X msg 159 86 1 2 3; +#X msg 219 86 4; +#X obj 180 116 vv+ 0; +#X msg 16 57 1; +#X msg 159 62 1; +#X text 18 10 vv+ adds two lists of floats; +#X text 17 25 or a float to a list of floats; +#X msg 73 60 3 2 1; +#X obj 252 159 SMLib; +#X text 230 184 j#|@2002; +#X obj 40 139 print vv+; +#X obj 180 140 print vv+; +#X connect 0 0 13 0; +#X connect 1 0 0 0; +#X connect 2 0 0 1; +#X connect 3 0 5 0; +#X connect 4 0 5 1; +#X connect 5 0 14 0; +#X connect 6 0 0 0; +#X connect 7 0 5 0; +#X connect 10 0 0 1; diff --git a/help/vv--help.pd b/help/vv--help.pd new file mode 100644 index 0000000..184e744 --- /dev/null +++ b/help/vv--help.pd @@ -0,0 +1,23 @@ +#N canvas 561 440 326 219 12; +#X msg 25 90 1 2 3; +#X msg 82 94 4 5 6; +#X msg 168 95 1 2 3; +#X msg 228 95 4; +#X msg 25 66 1; +#X msg 168 71 1; +#X text 248 191 j#|@2002; +#X text 18 10 vv- substracts two lists of floats; +#X text 18 26 or a float from a list of floats; +#X obj 49 124 vv-; +#X obj 189 125 vv- 0; +#X obj 268 170 SMLib; +#X obj 49 148 print vv-; +#X obj 189 149 print vv-; +#X connect 0 0 9 0; +#X connect 1 0 9 1; +#X connect 2 0 10 0; +#X connect 3 0 10 1; +#X connect 4 0 9 0; +#X connect 5 0 10 0; +#X connect 9 0 12 0; +#X connect 10 0 13 0; diff --git a/help/vvconv-help.pd b/help/vvconv-help.pd new file mode 100644 index 0000000..f7cc8a8 --- /dev/null +++ b/help/vvconv-help.pd @@ -0,0 +1,35 @@ +#N canvas 482 447 441 276 12; +#X msg 132 78 1 2 1; +#X msg 132 53 1 0 1; +#X text 26 18 vvconv: convolution of 2 vectors; +#X text 357 244 j#|@2002; +#X msg 30 43 1; +#X obj 48 130 vvconv; +#X msg 331 80 1 2 1; +#X msg 229 68 1 0 0; +#X msg 331 55 1 0 1; +#X msg 229 45 1; +#X obj 247 132 vvconv -1 2 -1; +#X msg 230 92 1 0 1 0 0 1; +#X msg 31 90 1 0 1 0 0 1; +#X text 177 178 arguments: convolution kernel; +#X obj 377 225 SMLib; +#X obj 48 154 print vvconv; +#X obj 247 156 print vvconv; +#X text 2 202 length of output is the sum of input lengths minus one +; +#X msg 30 66 2 0 1; +#X msg 132 103 1 0 2; +#X connect 0 0 5 1; +#X connect 1 0 5 1; +#X connect 4 0 5 0; +#X connect 5 0 15 0; +#X connect 6 0 10 1; +#X connect 7 0 10 0; +#X connect 8 0 10 1; +#X connect 9 0 10 0; +#X connect 10 0 16 0; +#X connect 11 0 10 0; +#X connect 12 0 5 0; +#X connect 18 0 5 0; +#X connect 19 0 5 1; -- cgit v1.2.1