#N canvas 457 58 609 673 12;
#X obj 148 423 line~;
#X obj 327 474 line~;
#X obj 309 579 *~;
#X obj 327 352 dbtorms;
#X obj 347 291 t l b, f 8;
#X obj 327 448 pack;
#X obj 148 319 unpack;
#X obj 148 503 osc~;
#X obj 148 345 mtof;
#X obj 327 378 sqrt;
#X obj 327 404 sqrt;
#X obj 148 371 sqrt;
#X obj 148 397 sqrt;
#X obj 148 451 *~;
#X obj 148 477 *~;
#X obj 327 500 *~;
#X obj 327 528 *~;
#X obj 309 616 outlet~;
#X floatatom 258 378 5 0 0 0 - - - 0;
#X msg 258 352 set \$1;
#X floatatom 81 369 5 0 0 0 - - - 0;
#X msg 81 343 set \$1;
#X text 334 238 amplitude;
#X text 142 266 pitch;
#X text 85 63 The amplitude and pitch are controlled by quartic envelopes as in the previous example. Here we introduce two new features. First \, there are number boxes to show the most recent targets for amplitude and frequency \, which you can also use to change the values. Also \, if amplitude gets a message without an explicit time value \, we supply a default of "30"., f 63;
#X text 20 332 see or;
#X text 20 350 change;
#X text 208 361 and;
#X text 417 271 first bang the "30" \, then pass the list on, f 22;
#X obj 347 317 unpack f f;
#X text 111 25 This abstraction is used in patch D13.additive.qlist.pd.;
#X obj 431 317 f 30;
#X text 470 308 This is more CPU efficient than a message., f 17;
#X obj 347 265 r amp\$1;
#X obj 258 404 s amp\$1;
#X obj 81 395 s pit\$1;
#X obj 148 293 r pit\$1;
#X text 85 173 Other small differences from the previous patch: pitch and amplitude are now in MIDI and dB., f 55;
#X text 377 439 The [pack] always gets a 30 \, but if you send a pair of numbers to amplitude \, the second one overrides the 30, f 28;
#X text 208 378 amp ->;
#X text 20 369 pitch ->;
#X connect 0 0 13 0;
#X connect 0 0 13 1;
#X connect 1 0 15 0;
#X connect 1 0 15 1;
#X connect 2 0 17 0;
#X connect 3 0 9 0;
#X connect 4 0 29 0;
#X connect 4 1 31 0;
#X connect 5 0 1 0;
#X connect 6 0 8 0;
#X connect 6 0 21 0;
#X connect 6 1 0 1;
#X connect 7 0 2 0;
#X connect 8 0 11 0;
#X connect 9 0 10 0;
#X connect 10 0 5 0;
#X connect 11 0 12 0;
#X connect 12 0 0 0;
#X connect 13 0 14 0;
#X connect 13 0 14 1;
#X connect 14 0 7 0;
#X connect 15 0 16 0;
#X connect 15 0 16 1;
#X connect 16 0 2 1;
#X connect 18 0 34 0;
#X connect 19 0 18 0;
#X connect 20 0 35 0;
#X connect 21 0 20 0;
#X connect 29 0 3 0;
#X connect 29 0 19 0;
#X connect 29 1 5 1;
#X connect 31 0 5 1;
#X connect 33 0 4 0;
#X connect 36 0 6 0;
