From 3faf17f7b713905f582def227df90dac15f3468d Mon Sep 17 00:00:00 2001 From: "N.N." Date: Tue, 10 Jul 2007 07:47:46 +0000 Subject: This commit was generated by cvs2svn to compensate for changes in r7969, which included commits to RCS files with non-trunk default branches. svn path=/trunk/abstractions/s-abstractions/; revision=7970 --- s-midiloop.pd | 163 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 163 insertions(+) create mode 100644 s-midiloop.pd (limited to 's-midiloop.pd') diff --git a/s-midiloop.pd b/s-midiloop.pd new file mode 100644 index 0000000..2b253aa --- /dev/null +++ b/s-midiloop.pd @@ -0,0 +1,163 @@ +#N canvas 7 17 986 667 10; +#X obj 490 632 outlet; +#X text 540 635 Midi pairs come out here.; +#X obj 490 544 t l l; +#X obj 520 567 unpack f f; +#X obj 62 21 tgl 14 0 \$0/passthrough \$1/passthrough passthrough 17 +7 0 8 -260818 -1 -1 0 1; +#X obj 520 610 s \$0/num1; +#X obj 585 589 s \$0/num2; +#X floatatom 4 42 3 0 0 0 - #0/num1 -; +#X floatatom 32 42 3 0 0 0 - #0/num2 -; +#X text 156 0 args: name timername length [midichannel]; +#X obj 6 77 notein \$4; +#X obj 574 4 r \$2; +#X text 78 77 Midi notes come in here; +#X text 609 3 Listen for timer ticks; +#X obj 604 48 mod \$3; +#X text 657 49 Loop at the right length; +#X obj 6 106 pack f f; +#X obj 6 246 t l l; +#X text 695 100 Get the time since the last timer tick; +#X obj 574 126 timer; +#X obj 36 464 list prepend; +#X obj 115 437 pack f f; +#X obj 604 70 s \$0/tick; +#X obj 166 415 r \$0/subtime; +#X obj 574 150 s \$0/subtime; +#X obj 604 100 r \$0/gettime; +#X obj 94 316 s \$0/gettime; +#X obj 115 414 f; +#X obj 131 392 r \$0/tick; +#X obj 574 25 t b f; +#X obj 36 510 list prepend; +#X obj 132 511 t l; +#X obj 36 269 spigot; +#X obj 73 247 r \$0/record; +#X obj 129 464 r \$0/record; +#X text 108 368 Data stored is: tick - tick offset - note - volume +; +#X text 214 464 Reset the data if we hit record; +#X obj 129 485 sel 1; +#X obj 36 533 s \$0/data; +#X obj 36 293 t l b b b; +#X obj 94 342 s \$0/resettime; +#X obj 463 69 r \$0/resettime; +#X obj 513 247 r \$0/data; +#X obj 490 269 list; +#X text 527 270 Data lives here; +#X obj 490 339 list append; +#X obj 490 291 t b l; +#X obj 490 363 list split 4; +#X obj 490 390 unpack f f f f; +#X obj 490 421 ==; +#X obj 490 222 t b f; +#X obj 490 468 delay; +#X obj 552 468 pack f f; +#X obj 490 500 list; +#X text 489 183 Replay our list; +#X obj 490 443 sel 1 0; +#X obj 490 202 r \$0/tick; +#X obj 162 511 s \$0/reset; +#X obj 708 214 r \$0/reset; +#X obj 708 235 t b b; +#X obj 761 235 r \$0/data; +#X obj 738 258 list; +#X obj 738 280 t b l; +#X obj 738 302 until; +#X obj 738 327 list append; +#X obj 738 349 list split 4; +#X obj 738 372 unpack f f f f; +#X text 771 259 Zero every note we know about; +#X obj 800 393 pack f 0; +#X obj 43 129 r \$0/record; +#X obj 51 152 r \$0/passthrough; +#X obj 43 203 ||; +#X obj 6 224 spigot; +#X obj 4 21 tgl 14 0 \$0/record \$1/record record 17 7 0 8 -260818 +-1 -1 0 1; +#X obj 6 570 s \$0/passnotes; +#X obj 380 500 r \$0/passnotes; +#X obj 51 173 t b f; +#X obj 828 349 bang; +#X text 220 131 sssad persistence; +#X obj 221 147 sssad/auto \$0/data \$1/data; +#X obj 719 165 s-connect \$1/data \$0/data; +#X text 717 147 User can send in data; +#X connect 2 0 0 0; +#X connect 2 1 3 0; +#X connect 3 0 5 0; +#X connect 3 1 6 0; +#X connect 10 0 16 0; +#X connect 10 1 16 1; +#X connect 11 0 29 0; +#X connect 14 0 22 0; +#X connect 16 0 72 0; +#X connect 17 0 74 0; +#X connect 17 1 32 0; +#X connect 19 0 24 0; +#X connect 20 0 30 0; +#X connect 21 0 20 1; +#X connect 23 0 21 1; +#X connect 25 0 19 1; +#X connect 27 0 21 0; +#X connect 28 0 27 1; +#X connect 29 0 19 0; +#X connect 29 1 14 0; +#X connect 30 0 31 0; +#X connect 30 0 38 0; +#X connect 31 0 30 1; +#X connect 32 0 39 0; +#X connect 33 0 32 1; +#X connect 34 0 37 0; +#X connect 37 0 30 1; +#X connect 37 0 57 0; +#X connect 39 0 20 0; +#X connect 39 1 27 0; +#X connect 39 2 40 0; +#X connect 39 3 26 0; +#X connect 41 0 19 0; +#X connect 42 0 43 1; +#X connect 43 0 46 0; +#X connect 45 0 47 0; +#X connect 46 0 45 0; +#X connect 46 1 45 1; +#X connect 47 0 48 0; +#X connect 47 1 45 1; +#X connect 48 0 49 0; +#X connect 48 1 51 1; +#X connect 48 2 52 0; +#X connect 48 3 52 1; +#X connect 49 0 55 0; +#X connect 50 0 43 0; +#X connect 50 1 49 1; +#X connect 51 0 53 0; +#X connect 52 0 53 1; +#X connect 53 0 2 0; +#X connect 55 0 51 0; +#X connect 55 1 45 0; +#X connect 56 0 50 0; +#X connect 58 0 59 0; +#X connect 59 0 43 1; +#X connect 59 0 61 1; +#X connect 59 1 61 0; +#X connect 60 0 61 1; +#X connect 61 0 62 0; +#X connect 62 0 63 0; +#X connect 62 1 64 1; +#X connect 63 0 64 0; +#X connect 64 0 65 0; +#X connect 65 0 66 0; +#X connect 65 1 64 1; +#X connect 65 2 77 0; +#X connect 66 2 68 0; +#X connect 68 0 2 0; +#X connect 69 0 71 0; +#X connect 70 0 76 0; +#X connect 71 0 72 1; +#X connect 72 0 17 0; +#X connect 75 0 2 0; +#X connect 76 0 71 0; +#X connect 76 1 71 1; +#X connect 77 0 63 1; +#X coords 0 -1 1 1 150 60 1 0 0; -- cgit v1.2.1