#N canvas 200 50 536 607 10;
#X floatatom 201 163 0 0 0 0 - - -;
#X obj 53 387 -~;
#X obj 201 237 /~;
#X obj 208 214 clip~ 1 999999;
#X obj 76 195 phasor~;
#X obj 88 257 *~;
#X obj 88 281 clip~ -0.5 0.5;
#X floatatom 201 115 0 0 0 0 - - -;
#X obj 201 139 mtof;
#X text 288 92 band limit (MIDI units);
#X obj 198 63 loadbang;
#X obj 88 305 *~ 1000;
#X obj 88 329 +~ 501;
#X obj 76 219 -~ 0.5;
#X obj 88 353 tabread4~ \$0-transition;
#X obj 201 186 * 0.4;
#X text 75 15 BAND-LIMITED SAWTOOTH GENERATOR USING A TRANSITION TABLE
;
#X text 76 521 updated for Pd version 0.39;
#X obj 28 40 inlet~;
#X obj 53 443 outlet~;
#N canvas 143 50 754 678 transition-table 0;
#X obj 428 534 cos~;
#X obj 262 534 cos~;
#X obj 214 529 cos~;
#X msg 158 598 bang;
#X text 242 138 back the phase up one sample;
#X msg 295 444 -0.0005;
#X obj 262 508 *~ 3;
#X obj 427 510 *~ 5;
#X obj 262 559 *~ 0.33333;
#X obj 427 560 *~ -0.2;
#X obj 214 557 *~ -1;
#X msg 159 425 bang;
#X obj 213 468 phasor~ 22.05;
#X obj 214 590 *~ 0.57692;
#X obj 204 259 cos~;
#X obj 156 254 cos~;
#X msg 100 323 bang;
#X msg 237 169 -0.0005;
#X obj 204 233 *~ 3;
#X obj 204 284 *~ 0.33333;
#X obj 156 282 *~ -1;
#X msg 100 150 bang;
#X obj 155 193 phasor~ 22.05;
#X obj 156 315 *~ 0.75;
#X obj 214 617 tabwrite~ \$0-transition;
#X obj 156 342 tabwrite~ \$0-transition;
#X text 292 216 twice the table length;
#X text 280 193 period is 2000 samples \,;
#X text 80 369 This one is used - first and third harmonics only.;
#X text 28 644 This alternate one puts in harmonics 1 \, 3 \, and 5
;
#N canvas 0 50 450 300 (subpatch) 0;
#X array \$0-transition 1002 float 0;
#X coords 0 1 1002 -1 200 140 1;
#X restore 539 32 graph;
#X text 537 179 ----- 1002 samples ----;
#X text 24 27 This network puts a half cycle of a band-limited square
wave into the table "array1.";
#X text 22 64 Logically the half-cycle is in samples 1 through 1000
\; samples 0 and 1001 are provided so that the 4-point interpolation
will work everywhere.;
#X obj 100 128 loadbang;
#X connect 0 0 9 0;
#X connect 1 0 8 0;
#X connect 2 0 10 0;
#X connect 3 0 24 0;
#X connect 5 0 12 1;
#X connect 6 0 1 0;
#X connect 7 0 0 0;
#X connect 8 0 13 0;
#X connect 9 0 13 0;
#X connect 10 0 13 0;
#X connect 11 0 5 0;
#X connect 11 0 3 0;
#X connect 12 0 2 0;
#X connect 12 0 6 0;
#X connect 12 0 7 0;
#X connect 13 0 24 0;
#X connect 14 0 19 0;
#X connect 15 0 20 0;
#X connect 16 0 25 0;
#X connect 17 0 22 1;
#X connect 18 0 14 0;
#X connect 19 0 23 0;
#X connect 20 0 23 0;
#X connect 21 0 17 0;
#X connect 21 0 16 0;
#X connect 22 0 15 0;
#X connect 22 0 18 0;
#X connect 23 0 25 0;
#X connect 34 0 21 0;
#X restore 182 465 pd transition-table;
#X msg 200 92 120;
#X text 176 38 from the Pd audio example, f 56;
#X connect 0 0 15 0;
#X connect 1 0 19 0;
#X connect 2 0 5 1;
#X connect 3 0 2 1;
#X connect 4 0 13 0;
#X connect 5 0 6 0;
#X connect 6 0 11 0;
#X connect 7 0 8 0;
#X connect 8 0 0 0;
#X connect 10 0 21 0;
#X connect 11 0 12 0;
#X connect 12 0 14 0;
#X connect 13 0 5 0;
#X connect 13 0 1 1;
#X connect 14 0 1 0;
#X connect 15 0 2 0;
#X connect 18 0 4 0;
#X connect 18 0 3 0;
#X connect 21 0 7 0;
