#N struct 1314cursor float x; #N canvas 0 16 999 675 10; #X text 6 627 template definition:; #X obj 72 205 bng 12 250 50 0 \$0new empty add_block 16 9 0 8 -260818 -1 -1; #N canvas 134 279 506 489 1314data 0; #X scalar 1314cursor 0 \;; #X coords 0 -1 770 180 770 180 1; #X restore 19 22 pd \$0data; #X obj 19 205 bng 12 250 50 0 \$0clear empty clear 16 9 0 8 -260818 -1 -1; #X text 8 40 1; #X text 8 50 2; #X text 8 60 3; #X text 8 70 4; #X text 8 30 0; #X text 8 80 5; #X text 8 90 6; #X text 8 100 7; #X text 8 110 8; #X text 8 120 9; #X text 8 130 A; #X text 8 140 B; #X text 8 150 C; #X text 8 160 D; #X text 8 170 E; #X text 8 180 F; #N canvas 67 68 640 606 1314lines 0; #X obj 7 7 struct \$0lines float x; #X obj 423 397 pointer; #X obj 316 174 t b b; #X obj 346 196 \$0; #X obj 346 218 makefilename pd-%ddata; #X msg 423 374 traverse \$1 \, bang; #X msg 529 218 \; \$1 clear \;; #X obj 529 174 \$0; #X obj 529 196 makefilename pd-%ddata; #X text 527 151 clear the data; #X obj 294 78 loadbang; #X obj 316 333 until; #X obj 316 354 f; #X obj 347 354 + 1; #X obj 316 266 t b b; #X obj 346 288 0; #X obj 316 423 append \$0lines x; #X obj 358 78 r \$0clear; #X obj 7 27 drawpolygon 333 1 8 11 8 170; #X obj 153 263 pointer; #X obj 39 168 t b b; #X obj 69 190 \$0; #X obj 69 212 makefilename pd-%ddata; #X msg 153 240 traverse \$1 \, bang; #X obj 39 286 append \$0cursor x; #X msg 39 241 0; #X text 36 134 create the cursor; #X obj 294 117 t b b b; #X text 320 155 create the lines; #X obj 316 288 \$2; #X obj 316 310 / \$3; #X obj 316 376 * 3; #X obj 316 397 * \$3; #X obj 39 309 s \$0cursorp; #X connect 1 0 16 1; #X connect 2 0 14 0; #X connect 2 1 3 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 5 0 1 0; #X connect 7 0 8 0; #X connect 8 0 6 0; #X connect 10 0 27 0; #X connect 11 0 12 0; #X connect 12 0 13 0; #X connect 12 0 31 0; #X connect 13 0 12 1; #X connect 14 0 29 0; #X connect 14 1 15 0; #X connect 15 0 12 1; #X connect 17 0 27 0; #X connect 19 0 24 1; #X connect 20 0 25 0; #X connect 20 1 21 0; #X connect 21 0 22 0; #X connect 22 0 23 0; #X connect 23 0 19 0; #X connect 24 0 33 0; #X connect 25 0 24 0; #X connect 27 0 20 0; #X connect 27 1 2 0; #X connect 27 2 7 0; #X connect 29 0 30 0; #X connect 30 0 11 0; #X connect 31 0 32 0; #X connect 32 0 16 0; #X restore 79 647 pd \$0lines; #N canvas 382 73 583 576 1314rect 0; #X obj 126 529 pointer; #X obj 12 433 t b b; #X text 438 55 main bar; #X text 438 93 end: red; #X text 439 129 begin: black; #X obj 12 410 r \$0new; #X obj 42 455 \$0; #X obj 42 477 makefilename pd-%ddata; #X msg 126 506 traverse \$1 \, bang; #X obj 285 412 r \$0clear; #X msg 285 479 \; \$1 clear \;; #X obj 285 435 \$0; #X obj 285 457 makefilename pd-%ddata; #X text 284 393 clear the data; #X text 10 393 create a new block; #X obj 7 9 struct \$0rect float x float y float w float x0 float y0 float t; #X obj 12 559 append \$0rect x y w t; #X msg 12 535 10 10 20 1; #X obj 7 42 filledpolygon 777 0 1 x0(0:300)(0:900)(1) y0(0:15)(0:150)(1) w(0:300)(0:900)(1) y0(0:15)(0:150)(1) w(0:300)(0:900)(1) y0(0:15)(10:160)(1) x0(0:300)(0:900)(1) y0(0:15)(10:160)(1); #X obj 7 101 drawpolygon 900 5 w(0:300)(0:900)(1) y0(0:15)(0:150)(1) w(0:300)(0:900)(1) y0(0:15)(11:161)(1); #X obj 7 134 drawpolygon 0 5 x0(0:300)(0:900)(1) y0(0:15)(0:150)(1) x0(0:300)(0:900)(1) y0(0:15)(11:161)(1); #X obj 7 167 drawnumber t(0:20)(0:20) x0(0:300)(10:910)(1) y0(0:15)(0:150)(1) ; #X connect 0 0 16 4; #X connect 1 0 17 0; #X connect 1 1 6 0; #X connect 5 0 1 0; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 8 0 0 0; #X connect 9 0 11 0; #X connect 11 0 12 0; #X connect 12 0 10 0; #X connect 17 0 16 0; #X restore 8 647 pd \$0rect; #N canvas 67 68 640 606 1314cursor 0; #X obj 7 27 drawpolygon 900 1 8 11 8 170; #X obj 7 7 struct \$0cursor float x; #X restore 157 647 pd \$0cursor; #X obj 4 256 inlet; #X obj 373 647 namecanvas \$0arranger; #N canvas 43 35 764 635 setup 0; #X obj 109 326 pack f s; #X obj 160 280 \$0; #X obj 109 256 t f b; #X msg 109 349 \; \$2 obj 20 23 cnv 15 \$1 178 empty empty empty 20 12 0 14 -260818 -66577 0 \;; #X obj 160 303 makefilename %darranger; #X obj 131 187 pack f s; #X obj 182 140 \$0; #X obj 131 117 t f b; #X obj 182 163 makefilename pd-%ddata; #X msg 131 212 \; \$2 donecanvasdialog 1 -1 1 0 -1 \$1 180 \$1 180 25 40; #X obj 131 93 + 2; #X obj 87 71 t f f f; #X obj 87 427 pack f s; #X msg 87 450 \; \$2 donecanvasdialog 1 -1 1 0 -1 \$1 220 \$1 220 0 0; #X obj 87 25 s-default \$2 256; #X obj 87 47 * 3; #X obj 87 402 + 28; #X connect 0 0 3 0; #X connect 1 0 4 0; #X connect 2 0 0 0; #X connect 2 1 1 0; #X connect 4 0 0 1; #X connect 4 0 12 1; #X connect 5 0 9 0; #X connect 6 0 8 0; #X connect 7 0 5 0; #X connect 7 1 6 0; #X connect 8 0 5 1; #X connect 10 0 7 0; #X connect 11 0 16 0; #X connect 11 1 2 0; #X connect 11 2 10 0; #X connect 12 0 13 0; #X connect 14 0 15 0; #X connect 15 0 11 0; #X connect 16 0 12 0; #X restore 7 601 pd setup; #X text 2 223 args: [name] [length] [bars per section] [ticker name] [ticks per bar]; #X obj 47 256 r \$4; #X obj 4 379 int; #X obj 4 401 change; #X obj 4 356 /; #X obj 141 508 r \$0cursorp; #X obj 97 531 pointer; #X obj 4 554 set \$0cursor x; #X obj 4 514 * 3; #X obj 20 335 s-default \$5 \$3; #N canvas 485 99 507 438 save 0; #X obj 176 16 r SSSAD_SAVE; #X obj 214 199 until; #X obj 172 338 list prepend; #X obj 265 338 t l; #X obj 149 367 list; #X obj 176 41 t b b b b; #X msg 214 112 traverse \$1 \, next; #X obj 214 68 \$0; #X obj 214 91 makefilename pd-%ddata; #X obj 7 415 outlet; #X obj 214 135 pointer \$0rect; #X obj 274 260 get \$0rect w x0 y0 t; #X obj 274 290 pack f f f f; #X msg 294 186 next; #X obj 7 394 sssad/sssad \$1/blocks; #X obj 214 160 t b p; #X connect 0 0 5 0; #X connect 1 0 13 0; #X connect 2 0 3 0; #X connect 2 0 4 1; #X connect 3 0 2 1; #X connect 4 0 14 1; #X connect 5 0 4 0; #X connect 5 2 7 0; #X connect 5 3 2 1; #X connect 6 0 10 0; #X connect 7 0 8 0; #X connect 8 0 6 0; #X connect 10 0 15 0; #X connect 10 2 1 1; #X connect 11 0 12 0; #X connect 11 1 12 1; #X connect 11 2 12 2; #X connect 11 3 12 3; #X connect 12 0 2 0; #X connect 13 0 10 0; #X connect 14 0 9 0; #X connect 15 0 1 0; #X connect 15 1 11 0; #X restore 278 623 pd save; #N canvas 64 35 650 643 load 0; #X obj 21 6 inlet; #X obj 21 65 until; #X obj 21 103 list append; #X obj 120 148 bang; #X obj 205 202 \$0; #X obj 205 225 makefilename pd-%ddata; #X obj 21 32 t b l b b; #X obj 21 148 list split 4; #X obj 152 78 \$0; #X msg 205 246 traverse \$1 \, bang; #X obj 205 269 pointer; #X obj 21 381 append \$0rect w x0 y0 t x y; #X msg 127 292 10; #X obj 21 186 t l b; #X obj 21 292 unpack f f f f; #X msg 152 99 \; \$1clear bang \;; #X connect 0 0 6 0; #X connect 1 0 2 0; #X connect 2 0 7 0; #X connect 3 0 1 1; #X connect 4 0 5 0; #X connect 5 0 9 0; #X connect 6 0 1 0; #X connect 6 1 2 1; #X connect 6 2 4 0; #X connect 6 3 8 0; #X connect 7 0 13 0; #X connect 7 1 2 1; #X connect 7 2 3 0; #X connect 8 0 15 0; #X connect 9 0 10 0; #X connect 10 0 11 6; #X connect 12 0 11 5; #X connect 12 0 11 4; #X connect 13 0 14 0; #X connect 13 1 12 0; #X connect 14 0 11 0; #X connect 14 1 11 1; #X connect 14 2 11 2; #X connect 14 3 11 3; #X restore 278 647 pd load; #X obj 4 448 t f b f; #N canvas 274 37 621 620 lookup 0; #X obj 12 7 inlet; #X obj 69 539 outlet; #X obj 74 274 until; #X msg 74 187 traverse \$1 \, next; #X obj 74 143 \$0; #X obj 74 166 makefilename pd-%ddata; #X obj 74 210 pointer \$0rect; #X obj 115 302 get \$0rect w x0 y0 t; #X msg 162 262 next; #X obj 74 235 t b p; #X obj 349 189 f; #X obj 294 374 &&; #X obj 294 398 select 1; #X obj 294 347 >=; #X obj 364 346 <=; #X obj 198 572 tabwrite \$0vals; #X text 409 6 Temporary storage for values; #X obj 412 28 table \$0vals 16; #X obj 104 105 \$0; #X msg 104 130 \; \$1vals const 0 \;; #X obj 55 51 t b b b f; #X obj 69 397 until; #X obj 99 475 tabread \$0vals; #X msg 69 375 16; #X msg 99 375 0; #X obj 69 419 f; #X obj 97 419 + 1; #X obj 55 337 t b b b; #X obj 230 445 pack f f; #X obj 207 475 list; #X obj 207 500 unpack f f; #X obj 224 548 f; #X obj 207 522 t b f; #X obj 69 448 t f f; #X obj 69 507 pack f f; #X connect 0 0 20 0; #X connect 2 0 8 0; #X connect 3 0 6 0; #X connect 4 0 5 0; #X connect 5 0 3 0; #X connect 6 0 9 0; #X connect 6 2 2 1; #X connect 7 0 13 0; #X connect 7 1 14 0; #X connect 7 2 28 0; #X connect 7 3 28 1; #X connect 8 0 6 0; #X connect 9 0 2 0; #X connect 9 1 7 0; #X connect 10 0 13 1; #X connect 10 0 14 1; #X connect 11 0 12 0; #X connect 12 0 29 0; #X connect 13 0 11 0; #X connect 14 0 11 1; #X connect 18 0 19 0; #X connect 20 0 27 0; #X connect 20 1 4 0; #X connect 20 2 18 0; #X connect 20 3 10 0; #X connect 21 0 25 0; #X connect 22 0 34 1; #X connect 23 0 21 0; #X connect 24 0 25 1; #X connect 25 0 26 0; #X connect 25 0 33 0; #X connect 26 0 25 1; #X connect 27 1 23 0; #X connect 27 2 24 0; #X connect 28 0 29 1; #X connect 29 0 30 0; #X connect 30 0 32 0; #X connect 30 1 31 1; #X connect 31 0 15 0; #X connect 32 0 31 0; #X connect 32 1 15 1; #X connect 33 0 34 0; #X connect 33 1 22 0; #X connect 34 0 1 0; #X restore 228 484 pd lookup; #X obj 228 508 outlet; #X obj 4 424 mod \$2; #X text 694 653 inspired by FB's quantized sequencer demo!; #X obj 279 508 s \$1/values; #X connect 23 0 30 0; #X connect 27 0 30 0; #X connect 28 0 29 0; #X connect 29 0 41 0; #X connect 30 0 28 0; #X connect 31 0 32 1; #X connect 32 0 33 1; #X connect 34 0 33 0; #X connect 35 0 30 1; #X connect 36 0 37 0; #X connect 38 0 34 0; #X connect 38 1 32 0; #X connect 38 2 39 0; #X connect 39 0 40 0; #X connect 39 0 43 0; #X connect 41 0 38 0; #X coords 0 -1 796 220 796 220 1 0 0;