#N canvas 85 32 811 508 12; #X obj 252 320 dac~ 1; #X obj 252 292 *~; #X floatatom 156 115 0 0 0; #X obj 276 264 line~; #X msg 276 208 0.1 100; #X msg 295 233 0 100; #X text 347 203 on; #X text 344 232 off; #X text 333 261 envelope; #X text 333 274 generator; #X text 260 183 amplitude controls:; #X text 250 344 audio output; #X text 424 426 see also:; #X obj 580 428 cos~; #X obj 629 428 tabread4~; #X obj 68 14 osc~; #X text 142 16 - cosine wave oscillator; #X obj 126 294 metro 500; #X obj 126 269 r metro; #X text 88 344 graph the output; #X obj 510 427 phasor~; #X msg 571 79 \; metro 0; #X msg 570 20 \; pd dsp 1 \; metro 1; #X floatatom 637 245 0 0 0; #X obj 637 275 sig~; #X text 522 266 convert to; #X text 512 282 audio signal; #X text 518 305 oscillator; #X text 479 243 frequency control; #X obj 637 306 osc~; #X text 3 120 change frequency; #X text 244 145 <-- creation argument sets initial frequency; #X text 231 123 v-- inlet resets phase; #X graph graph1 0 -1 100 1 94 388 294 488; #X array array99 100 float; #X pop; #X text 16 39 The osc~ object outputs a cosine wave. If no argument is supplied \, the input is taken to be an audio signal. With a floating-point argument \, osc~ takes floating-point messages to change frequency.; #X text 510 336 invoked without argument to; #X text 512 360 specify audio signal input; #X text 2 105 incoming numbers; #X obj 89 322 tabwrite~ array99; #X obj 156 144 osc~ 1000; #X text 546 480 updated for Pd version 0.33; #X text 655 39 <-Click to start; #X text 648 88 <-Click to stop; #X connect 1 0 0 0; #X connect 2 0 39 0; #X connect 3 0 1 1; #X connect 4 0 3 0; #X connect 5 0 3 0; #X connect 17 0 38 0; #X connect 18 0 17 0; #X connect 18 0 17 0; #X connect 23 0 24 0; #X connect 24 0 29 0; #X connect 39 0 1 0; #X connect 39 0 38 0;