#N canvas 503 94 561 494 10;
#X obj 2 330 cnv 3 550 3 empty empty inlets 8 12 0 13 -228856 -1 0
;
#X obj 2 397 cnv 3 550 3 empty empty outlets 8 12 0 13 -228856 -1 0
;
#X obj 2 432 cnv 3 550 3 empty empty arguments 8 12 0 13 -228856 -1
0;
#X obj 101 339 cnv 17 3 52 empty empty 0 5 9 0 16 -228856 -162280 0
;
#X obj 101 406 cnv 17 3 17 empty empty 0 5 9 0 16 -228856 -162280 0
;
#X obj 138 208 midiin;
#X obj 200 293 midiout;
#X text 127 441 (none);
#X obj 200 257 cyclone/midiflush;
#X obj 2 464 cnv 15 552 21 empty empty empty 20 12 0 14 -233017 -33289
0;
#X text 137 339 bang;
#X text 131 356 float;
#X text 130 408 float;
#X obj 2 5 cnv 15 553 42 empty empty empty 20 12 0 14 -233017 -66577
0;
#N canvas 0 22 450 278 (subpatch) 0;
#X coords 0 1 100 -1 554 42 1 0 0;
#X restore 2 4 graph;
#X obj 305 5 cnv 15 250 40 empty empty empty 12 13 0 18 -128992 -233080
0;
#N canvas 382 141 749 319 (subpatch) 0;
#X coords 0 -1 1 1 252 42 2 100 100;
#X restore 304 4 pd;
#X obj 149 293 print;
#X obj 210 226 bng 18 250 50 0 empty empty empty 17 7 0 10 -228856
-1 -1;
#X msg 200 175 144 \, 67 \, 100 \, 144 \, 57 \, 100;
#X text 216 196 and leave them hanging;
#X text 230 227 <= flush hanging notes;
#X text 163 155 send a couple of note on messages:;
#X text 131 374 clear;
#X text 170 356 - raw MIDI data stream;
#X text 170 339 - sends note off for hanging notes;
#X text 170 408 - raw MIDI data stream;
#X text 72 91 Like a "panic button" \, [midiflush] keeps track of raw
Note-on messages that weren't switched off and "flushes" them by sending
corresponding note-offs when it receives a bang.;
#X text 170 374 - clears the hanging notes that [midiflush] keeps track
off;
#N canvas 525 199 576 463 example 0;
#X obj 182 198 cnv 15 140 40 empty empty empty 20 12 0 14 -245500 -66577
0;
#N canvas 638 210 443 345 polysynth 0;
#X obj 85 63 inlet;
#X obj 85 105 poly 6 1;
#X obj 85 166 route 1 2 3 4 5 6, f 38;
#X obj 173 298 outlet~;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 24 209 pd voice;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 87 209 pd voice;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 154 209 pd voice;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 217 209 pd voice;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 284 209 pd voice;
#N canvas 292 354 342 369 voice 0;
#X obj 197 123 / 127;
#X obj 182 228 *~;
#X obj 182 260 *~ 0.2;
#X obj 92 149 phasor~;
#X obj 92 117 mtof;
#X obj 92 42 inlet;
#X obj 182 297 outlet~;
#X obj 197 183 line~;
#X msg 197 148 \$1 250;
#X obj 49 184 cyclone/triangle~ 0.7;
#X obj 92 83 unpack float float;
#X connect 0 0 8 0;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 3 0;
#X connect 5 0 10 0;
#X connect 7 0 1 1;
#X connect 8 0 7 0;
#X connect 9 0 1 0;
#X connect 10 0 4 0;
#X connect 10 1 0 0;
#X restore 347 209 pd voice;
#X obj 85 134 cyclone/join 3;
#X obj 25 16 cyclone/comment 0 15 helvetica empty 0 0 0 0 0 255 255
255 0 0 comment;
#X connect 0 0 1 0;
#X connect 1 0 10 0;
#X connect 1 1 10 1;
#X connect 1 2 10 2;
#X connect 2 0 4 0;
#X connect 2 1 5 0;
#X connect 2 2 6 0;
#X connect 2 3 7 0;
#X connect 2 4 8 0;
#X connect 2 5 9 0;
#X connect 4 0 3 0;
#X connect 5 0 3 0;
#X connect 6 0 3 0;
#X connect 7 0 3 0;
#X connect 8 0 3 0;
#X connect 9 0 3 0;
#X connect 10 0 2 0;
#X restore 194 326 pd polysynth;
#X obj 194 155 cyclone/midiformat;
#X obj 194 210 cyclone/midiflush;
#X obj 194 262 cyclone/midiparse;
#X obj 294 300 cyclone/borax;
#X obj 130 119 bng 30 250 50 0 empty empty empty 17 7 0 10 -216373
-108187 -1;
#X msg 194 121 \$1 100;
#X floatatom 194 99 5 0 0 0 - - -;
#X obj 194 49 bng 17 250 50 0 empty empty empty 17 7 0 10 -228856 -1
-1;
#X text 317 154 generates raw MIDI note messages;
#X text 220 48 generates random note-on messages;
#X obj 312 333 nbx 3 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-228856 -1 -1 0 256;
#X text 30 125 Flush them off;
#X obj 194 74 expr random(50 \, 80);
#X obj 353 327 cyclone/comment 100 12 helvetica empty 0 0 0 0 0 255
255 255 0 0 comment;
#X obj 169 370 ./out~;
#X connect 1 0 16 0;
#X connect 1 0 16 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 0 1 0;
#X connect 5 2 12 0;
#X connect 6 0 3 0;
#X connect 7 0 2 0;
#X connect 8 0 7 0;
#X connect 9 0 14 0;
#X connect 14 0 8 0;
#X restore 473 294 pd example;
#X obj 17 58 cyclone/comment 0 14 DejaVu\ Sans\ Mono empty 0 0 0 0
0 255 255 255 0 0 Flush hanging note-ons on raw MIDI;
#X obj 16 5 cyclone/comment 0 33 DejaVu\ Sans\ Mono empty 0 0 0 0 0
255 255 255 0 0 midiflush;
#X obj 322 29 cyclone/comment 0 13 DejaVu\ Sans\ Mono empty 0 224 228
220 0 255 255 255 0 0 Objects cloned from Max/MSP;
#X obj 363 5 cyclone/comment 0 24 DejaVu\ Sans\ Mono empty 0 224 228
220 0 255 255 255 0 0 cyclone;
#X connect 5 0 8 0;
#X connect 8 0 6 0;
#X connect 8 0 17 0;
#X connect 18 0 8 0;
#X connect 19 0 8 0;
