#N canvas -8 -8 1366 685 12; #X declare -lib else; #X floatatom 664 89 5 0 0 0 - - -; #X obj 594 65 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 702 301 tempo \$1; #X obj 702 378 pattern; #X obj 929 374 combine; #X obj 720 330 list split 1; #X obj 930 258 sel 0; #X obj 778 478 count 2; #X obj 778 502 sel 1; #X obj 702 533 spigot 1; #X msg 773 531 1; #X msg 815 533 0; #X obj 1102 466 frac2dec; #X obj 1101 514 *; #X obj 1133 515 expr (60/$f1) * 1000; #X obj 775 357 lb; #X msg 776 384 1/32; #X obj 969 512 list append; #X obj 1008 483 t l; #X obj 929 429 list split 1; #X obj 1102 441 list split 1; #X obj 928 397 t l l; #X obj 1102 489 * 8; #X obj 664 115 * 8; #X obj 929 342 sequencer; #X obj 664 140 s \$0-bpm; #X obj 702 277 r \$0-bpm; #X obj 1174 481 r \$0-bpm; #X obj 784 605 outlet; #X obj 1022 577 outlet; #X obj 594 87 s \$0-on; #X obj 928 233 r \$0-on; #X obj 640 330 r \$0-on; #X obj 593 39 inlet; #X obj 664 39 inlet; #X obj 726 40 inlet; #X obj 726 64 s \$0-seq; #X text 589 12 ON/OFF; #X text 661 13 BPM; #X text 26 149 ***; #X text 790 10 ***; #X obj 969 458 list split \$1; #X obj 969 537 list split \$1; #X msg 929 313 goto 0; #X msg 983 314 clear; #X obj 929 283 t b b; #X obj 293 548 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 292 567 sel 0; #X msg 291 591 séquence en texte ou msg; #X text 44 37 [seq.list] needs a creation argument \, which states the lists length. E.g. \, [seq.list 2] will need a minimum of two values \, or multiple 2 values pairs.; #X text 730 12 Sequence; #X text 53 159 Must be in the format: time fraction(-a-b-c-...); #X text 56 199 E.g. for [seq-list 2]:; #X text 54 265 Integers must be written in fraction too \, so type n/1; #X text 55 244 For a silence \, type a time fraction without anything else; #X text 622 489 Filtered 2ble "click"; #X text 756 402 Short value to; #X text 760 419 restart fast; #X text 736 116 BPM value must be multiplied by 8 to synchronise everything (duration and filtered [pattern]); #X text 1003 604 Duration (ms); #X text 660 645 (creation argument); #X text 1002 620 Usefull for [makenote]. Substract this value by; #X text 1003 651 noteoff; #X text 1002 636 1 in your main patch to be sure to obtain a; #X msg 56 218 1/4-60-127 1/4-61-127-65-127 ...; #X text 662 628 One or many lists of length n; #X text 75 498 For an unknown reason \, the only way to synchronise [pattern] and [sequence] in this context after an OFF "message" is to resend the sequence from your main patch \, as it is ereased here. Include something like :; #X text 55 289 You can also use a bar sign | as in [sequencer]; #X obj 1153 258 text define \$0-seq; #X obj 1033 317 text get \$0-seq; #X msg 1033 293 0; #X obj 1154 292 r \$0-seq; #X obj 1154 341 text set \$0-seq 0; #X obj 1154 317 list prepend list; #X obj 1033 341 list trim; #X obj 1100 46 declare -lib else; #X connect 0 0 23 0; #X connect 1 0 30 0; #X connect 2 0 3 0; #X connect 3 0 7 0; #X connect 3 0 9 0; #X connect 4 0 5 0; #X connect 4 0 21 0; #X connect 5 0 3 0; #X connect 6 0 45 0; #X connect 6 1 70 0; #X connect 7 0 8 0; #X connect 8 0 10 0; #X connect 8 1 11 0; #X connect 9 0 24 0; #X connect 10 0 9 1; #X connect 11 0 9 1; #X connect 12 0 22 0; #X connect 13 0 17 1; #X connect 14 0 13 1; #X connect 15 0 16 0; #X connect 16 0 3 1; #X connect 17 0 42 0; #X connect 18 0 41 0; #X connect 19 1 41 0; #X connect 20 0 12 0; #X connect 21 0 19 0; #X connect 21 1 20 0; #X connect 22 0 13 0; #X connect 23 0 25 0; #X connect 24 0 4 0; #X connect 26 0 2 0; #X connect 27 0 14 0; #X connect 31 0 6 0; #X connect 32 0 3 0; #X connect 33 0 1 0; #X connect 34 0 0 0; #X connect 35 0 36 0; #X connect 41 0 17 0; #X connect 41 1 18 0; #X connect 42 0 28 0; #X connect 42 1 29 0; #X connect 43 0 24 0; #X connect 44 0 24 0; #X connect 45 0 43 0; #X connect 45 0 16 0; #X connect 45 1 44 0; #X connect 46 0 47 0; #X connect 47 0 48 0; #X connect 69 0 74 0; #X connect 70 0 69 0; #X connect 71 0 73 0; #X connect 73 0 72 0; #X connect 74 0 24 1;