#N canvas 159 159 1074 528 12;
#X floatatom 838 294 0 0 0 0 - - -;
#X floatatom 812 427 0 0 0 0 - - -;
#X floatatom 743 426 0 0 0 0 - - -;
#X obj 541 339 noteout;
#X obj 743 453 pgmout;
#X obj 812 453 bendout;
#X floatatom 958 291 0 0 0 0 - - -;
#X text 183 13 MIDI I/O objects;
#X obj 135 408 pgmin;
#X floatatom 167 435 0 0 0 0 - - -;
#X floatatom 135 435 0 0 0 0 - - -;
#X floatatom 71 436 0 0 0 0 - - -;
#X floatatom 32 436 0 0 0 0 - - -;
#X floatatom 262 435 0 0 0 0 - - -;
#X floatatom 216 435 0 0 0 0 - - -;
#X floatatom 352 456 0 0 0 0 - - -;
#X floatatom 315 477 0 0 0 0 - - -;
#X floatatom 389 433 0 0 0 0 - - -;
#X text 129 368 program change, f 7;
#X text 33 368 pitch bend, f 5;
#X floatatom 680 276 0 0 0 0 - - -;
#X floatatom 699 305 0 0 0 0 - - -;
#X floatatom 719 333 0 0 0 0 - - -;
#X obj 680 360 ctlout;
#X obj 958 318 ctlout 7 4;
#X floatatom 659 427 0 0 0 0 - - -;
#X floatatom 538 426 0 0 0 0 - - -;
#X obj 659 453 touchout;
#X obj 538 452 polytouchout;
#X floatatom 578 424 0 0 0 0 - - -;
#X obj 569 70 midiin;
#X floatatom 569 101 0 0 0 0 - - -;
#X floatatom 608 101 0 0 0 0 - - -;
#X floatatom 897 108 0 0 0 0 - - -;
#X floatatom 943 109 0 0 0 0 - - -;
#X obj 897 77 sysexin;
#X obj 956 479 midiout;
#X floatatom 732 103 0 0 0 0 - - -;
#X floatatom 827 103 0 0 0 0 - - -;
#X obj 732 74 midirealtimein;
#X text 739 132 all real-time messages, f 13;
#X text 31 495 updated for Pd release 0.48-1;
#X obj 32 408 bendin;
#X obj 216 408 touchin;
#X obj 315 406 polytouchin;
#X floatatom 51 209 0 0 0 0 - - -;
#X obj 32 158 notein;
#X floatatom 32 232 0 0 0 0 - - -;
#X floatatom 71 184 0 0 0 0 - - -;
#X text 66 232 note;
#X text 81 210 velocity;
#X text 101 186 channel;
#X floatatom 300 217 0 0 0 0 - - -;
#X floatatom 284 246 0 0 0 0 - - -;
#X floatatom 316 184 0 0 0 0 - - -;
#X obj 284 159 ctlin;
#X text 315 249 value;
#X text 331 210 controller number, f 10;
#X text 349 185 channel;
#X text 422 434 channel;
#X text 384 456 note number;
#X text 209 368 channel aftertouch, f 10;
#X text 316 363 polyphonic aftertouch, f 10;
#X text 346 479 aftertouch value;
#X floatatom 268 319 0 0 0 0 - - -;
#X text 299 322 value;
#X obj 268 289 ctlin 7 4;
#X text 93 157 (omni);
#X floatatom 237 211 0 0 0 0 - - -;
#X floatatom 184 212 0 0 0 0 - - -;
#X obj 184 183 notein 1;
#X text 174 158 (channel 1);
#X text 333 158 (all controllers \, omni);
#X floatatom 71 313 0 0 0 0 - - -;
#X text 19 314 value;
#X obj 71 287 ctlin 4;
#X floatatom 117 313 0 0 0 0 - - -;
#X text 540 203 Outputs are set to channel 1 by default \, but they
also take a channel argument \, and ctlout takes control and channel
arguments. Inlets are not supressed by arguments and change the parameters.
, f 65;
#X text 889 132 system exclusive messages only, f 18;
#X floatatom 518 311 5 0 0 0 - - -, f 5;
#X floatatom 564 311 5 0 0 0 - - -, f 5;
#X floatatom 613 311 5 0 0 0 - - -, f 5;
#X text 517 286 note;
#X text 566 285 vel;
#X text 623 287 ch;
#X text 525 400 touch;
#X text 580 400 note;
#X text 137 285 (controller 4);
#X text 148 315 channel, f 10;
#X text 355 290 (controller 7 \, channel 4), f 14;
#X text 713 277 value;
#X text 730 306 controller;
#X text 752 334 channel;
#X obj 838 321 ctlout 7;
#X text 830 347 (controller 7 \, channel 1), f 14;
#X text 954 346 (controller 7 \, channel 4), f 14;
#X text 888 414 Raw MIDI (doesn't take arguments \, 2nd inlet sets
port number):, f 22;
#X text 42 44 Inputs are omni by default \, an optional argument sets
the channel and removes the rightmost outlet (which ouputs the channel
number). For [ctlin] \, a first optional argument sets controller number
and supresses its corresponding outlet \, and a second argument sets
the channel and also supresses its corresponding outlet.;
#X text 542 18 These three below are always omni \, don't take arguments
and output the port number instead of the channel:;
#X text 535 129 raw MIDI except sysex and real-time messages (byte
by byte), f 22;
#X connect 0 0 93 0;
#X connect 1 0 5 0;
#X connect 2 0 4 0;
#X connect 6 0 24 0;
#X connect 8 0 10 0;
#X connect 8 1 9 0;
#X connect 20 0 23 0;
#X connect 21 0 23 1;
#X connect 22 0 23 2;
#X connect 25 0 27 0;
#X connect 26 0 28 0;
#X connect 29 0 28 1;
#X connect 30 0 31 0;
#X connect 30 1 32 0;
#X connect 35 0 33 0;
#X connect 35 1 34 0;
#X connect 39 0 37 0;
#X connect 39 1 38 0;
#X connect 42 0 12 0;
#X connect 42 1 11 0;
#X connect 43 0 14 0;
#X connect 43 1 13 0;
#X connect 44 0 16 0;
#X connect 44 1 15 0;
#X connect 44 2 17 0;
#X connect 46 0 47 0;
#X connect 46 1 45 0;
#X connect 46 2 48 0;
#X connect 55 0 53 0;
#X connect 55 1 52 0;
#X connect 55 2 54 0;
#X connect 66 0 64 0;
#X connect 70 0 69 0;
#X connect 70 1 68 0;
#X connect 75 0 73 0;
#X connect 75 1 76 0;
#X connect 79 0 3 0;
#X connect 80 0 3 1;
#X connect 81 0 3 2;
