#N canvas 432 115 601 464 10; #N canvas 0 0 383 778 synth1 0; #X obj -15 723 *~ 0.2; #X obj -16 601 bp~ 100 3; #X obj -16 622 hip~ 60; #N canvas 0 0 450 300 envelope 0; #X obj 175 243 line; #X msg 194 219 1 \$1; #X msg 150 218 0 \$1; #X obj 150 146 t b b; #X obj 175 267 outlet; #X obj 187 46 inlet attack; #X obj 289 45 inlet decay; #X obj 77 46 inlet trigger; #X obj 187 87 t f f; #X obj 150 196 f 50; #X obj 194 197 f 50; #X text 235 199 <-- default values 50 ms; #X text 236 88 <-- set floats nicely; #X obj 150 173 del 50; #X text 151 9 envelope subpatch; #X connect 0 0 4 0; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 3 0 13 0; #X connect 3 1 10 0; #X connect 5 0 8 0; #X connect 6 0 9 1; #X connect 7 0 3 0; #X connect 8 0 13 1; #X connect 8 1 10 1; #X connect 9 0 2 0; #X connect 10 0 1 0; #X connect 13 0 9 0; #X restore 13 283 pd envelope; #X obj 13 413 * 3000; #N canvas 0 0 450 300 fatoscillator 0; #X obj 113 206 +~; #X obj 61 165 -~ 0.5; #X obj 147 164 -~ 0.5; #X obj 60 8 inlet pitch; #X obj 146 108 +; #X obj 60 109 -; #X obj 149 7 inlet fatness; #X obj 149 31 * 5; #X obj 112 238 outlet~; #X obj 60 137 phasor~ 55; #X obj 146 136 phasor~ 55; #X obj 149 53 t b b f f; #X connect 0 0 8 0; #X connect 1 0 0 0; #X connect 2 0 0 1; #X connect 3 0 5 0; #X connect 3 0 4 0; #X connect 4 0 10 0; #X connect 5 0 9 0; #X connect 6 0 7 0; #X connect 7 0 11 0; #X connect 9 0 1 0; #X connect 10 0 2 0; #X connect 11 0 5 0; #X connect 11 1 4 0; #X connect 11 2 5 1; #X connect 11 3 4 1; #X restore -16 180 pd fatoscillator; #X obj 23 496 t b f; #X obj 21 389 t b f; #X obj 13 520 + 20; #N canvas 0 0 450 300 envelope 0; #X obj 175 243 line; #X msg 194 219 1 \$1; #X msg 150 218 0 \$1; #X obj 150 146 t b b; #X obj 175 267 outlet; #X obj 187 46 inlet attack; #X obj 289 45 inlet decay; #X obj 77 46 inlet trigger; #X obj 187 87 t f f; #X obj 150 196 f 50; #X obj 194 197 f 50; #X text 235 199 <-- default values 50 ms; #X text 236 88 <-- set floats nicely; #X obj 150 173 del 50; #X text 151 9 envelope subpatch; #X connect 0 0 4 0; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 3 0 13 0; #X connect 3 1 10 0; #X connect 5 0 8 0; #X connect 6 0 9 1; #X connect 7 0 3 0; #X connect 8 0 13 1; #X connect 8 1 10 1; #X connect 9 0 2 0; #X connect 10 0 1 0; #X connect 13 0 9 0; #X restore 1 663 pd envelope; #X obj -15 686 *~; #X obj -16 30 r \$0-oscf; #X obj 91 153 r \$0-oscfat; #X obj 49 217 r \$0-fenva; #X obj 123 177 r \$0-fenvd; #X obj 84 558 r \$0-aenva; #X obj 73 620 r \$0-aenvd; #X obj 22 698 r \$0-amp; #X obj 42 537 r \$0-fres; #X obj 21 337 r \$0-frng; #X obj 24 447 r \$0-frle; #X obj -16 753 outlet~; #X obj 53 4 inlet; #X obj 83 112 t b b; #X obj 53 29 t f b; #X obj -16 155 mtof; #X obj -16 79 * 12; #X obj -16 132 +; #X obj -16 55 - 2; #X obj -7 102 t b f; #X obj 49 238 * 2000; #X obj 123 200 * 2000; #X obj 21 364 * 3000; #X obj 23 473 * 3000; #X obj 42 559 * 6; #X obj 42 579 + 0.5; #X obj 84 600 * 2000; #X obj 73 641 * 2000; #X text 173 201 <---- added multipliers; #X text 164 241 <------------ and offsets; #X text 68 304 <---- offset to stop clicks when; #X text 110 321 filter is zero; #X obj 49 262 + 10; #X obj 123 240 + 10; #X obj 13 308 + 0.2; #X connect 0 0 21 0; #X connect 1 0 2 0; #X connect 2 0 10 0; #X connect 3 0 44 0; #X connect 4 0 8 0; #X connect 5 0 1 0; #X connect 6 0 8 0; #X connect 6 1 8 1; #X connect 7 0 4 0; #X connect 7 1 4 1; #X connect 8 0 1 1; #X connect 9 0 10 1; #X connect 10 0 0 0; #X connect 11 0 28 0; #X connect 12 0 5 1; #X connect 13 0 30 0; #X connect 14 0 31 0; #X connect 15 0 36 0; #X connect 16 0 37 0; #X connect 17 0 0 1; #X connect 18 0 34 0; #X connect 19 0 32 0; #X connect 20 0 33 0; #X connect 22 0 24 0; #X connect 23 0 9 0; #X connect 23 1 3 0; #X connect 24 0 29 0; #X connect 24 1 23 0; #X connect 25 0 5 0; #X connect 26 0 27 0; #X connect 27 0 25 0; #X connect 28 0 26 0; #X connect 29 0 27 0; #X connect 29 1 27 1; #X connect 30 0 42 0; #X connect 31 0 43 0; #X connect 32 0 7 0; #X connect 33 0 6 0; #X connect 34 0 35 0; #X connect 35 0 1 2; #X connect 36 0 9 1; #X connect 37 0 9 2; #X connect 42 0 3 1; #X connect 43 0 3 2; #X connect 44 0 4 0; #X restore 23 214 pd synth1; #X obj 24 253 dac~; #N canvas 614 223 579 466 interface 0; #X obj 100 222 cnv 15 100 120 empty empty OSC 8 12 1 14 -258699 -262144 0; #X obj 201 222 cnv 15 200 120 empty empty AMP 8 12 1 14 -260818 -262144 0; #X obj 101 101 cnv 15 300 120 empty empty FILTER 8 12 1 14 -62784 -262144 0; #X obj 322 256 vsl 12 60 0.003 0.3 1 0 empty empty L 0 -8 1 8 -262144 -1 -262144 4800 1; #X obj 285 133 vsl 12 60 0.01 1 1 0 empty empty LEV 0 -8 1 8 -262144 -1 -262144 1300 1; #X obj 116 133 vsl 12 60 0.01 1 1 1 empty empty A 0 -8 1 8 -262144 -1 -262144 900 1; #X obj 156 133 vsl 12 60 0.01 1 1 1 empty empty D 0 -8 1 8 -262144 -1 -262144 1900 1; #X obj 246 133 vsl 12 60 0.01 1 1 0 empty empty AMT 0 -8 1 8 -262144 -1 -262144 4100 1; #X obj 157 255 vsl 12 60 0.01 1 1 0 empty empty FAT 0 -8 1 8 -262144 -1 -262144 0 1; #X obj 324 133 vsl 12 60 0 1 0 0 empty empty RES 0 -8 1 8 -262144 -33289 -262144 4300 1; #X obj 244 256 vsl 12 60 0.01 1 1 1 empty empty A 0 -8 1 8 -262144 -1 -262144 300 1; #X obj 283 256 vsl 12 60 0.01 1 1 1 empty empty D 0 -8 1 8 -262144 -1 -262144 1300 1; #X obj 53 389 s \$0-oscf; #X obj 130 390 s \$0-oscfat; #X obj 54 360 s \$0-fenva; #X obj 131 359 s \$0-fenvd; #X obj 217 390 s \$0-aenva; #X obj 295 390 s \$0-aenvd; #X obj 374 390 s \$0-amp; #X obj 377 358 s \$0-fres; #X obj 218 360 s \$0-frng; #X obj 298 359 s \$0-frle; #X obj 322 324 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -260818 -262144 -1 0.127128 256; #X obj 283 324 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -260818 -262144 -1 0.0275853 256; #X obj 244 324 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -260818 -262144 -1 0.0126385 256; #X obj 157 321 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -258699 -262144 -1 0 256; #X obj 112 320 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -258699 -262144 -1 0 256; #X obj 324 203 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -62784 -262144 -1 0.728814 256; #X obj 285 203 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -62784 -262144 -1 0.0275853 256; #X obj 246 203 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -62784 -262144 -1 0.245375 256; #X obj 156 203 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -62784 -262144 -1 0.0440624 256; #X obj 116 203 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 10 -62784 -262144 -1 0.0201876 256; #X obj 112 254 vradio 12 1 1 5 empty empty OCT 0 -6 1 8 -262144 -1 -262144 2; #X obj 74 308 - 2; #X text -14 47 We changed all the sliders to log and normalised their ranges to 1 - 0; #X text -89 310 to adjust display -->; #X connect 3 0 18 0; #X connect 3 0 22 0; #X connect 4 0 21 0; #X connect 4 0 28 0; #X connect 5 0 14 0; #X connect 5 0 31 0; #X connect 6 0 15 0; #X connect 6 0 30 0; #X connect 7 0 20 0; #X connect 7 0 29 0; #X connect 8 0 13 0; #X connect 8 0 25 0; #X connect 9 0 19 0; #X connect 9 0 27 0; #X connect 10 0 16 0; #X connect 10 0 24 0; #X connect 11 0 17 0; #X connect 11 0 23 0; #X connect 32 0 12 0; #X connect 32 0 33 0; #X connect 33 0 26 0; #X coords 0 -1 1 1 300 240 1 100 100; #X restore 185 130 pd interface; #X text 141 11 Six simple synthesisers 113; #X text 157 36 Normalising controls; #N canvas 0 0 450 300 random 0; #X obj 55 101 metro 100; #X obj 55 214 outlet; #X obj 81 46 loadbang; #X msg 81 69 1; #X obj 32 46 inlet; #X obj 55 125 random 12; #X obj 55 153 * 3; #X obj 55 188 + 36; #X connect 0 0 5 0; #X connect 2 0 3 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 1 0; #X restore 23 153 pd random midi notes; #X text 57 64 We change every control to respond to between 0 and 1 If a control needs rescaling we insert multipliers and offsets to get it back into range in the DSP section.; #X obj 23 131 tgl 15 0 empty empty on-off 0 -6 1 8 -262144 -1 -1 0 1; #X floatatom 45 176 5 0 0 0 - - -; #X connect 0 0 1 0; #X connect 0 0 1 1; #X connect 5 0 0 0; #X connect 5 0 8 0; #X connect 7 0 5 0;