pianorollseq.pd 46.1 KB
Newer Older
Roman Haefeli's avatar
Roman Haefeli committed
1
2
3
4
5
6
7
8
#N struct 1003.vertgrid float x float y float w float h;
#N struct 1003.horizgrid float x float y float w float h float c;
#N struct 1003.vertline float x float y float h float c float n float
nvis;
#N struct 1003.gid.button float x float y float clr float hl float
gid;
#N struct 1003.vel float x float y float value;
#N struct 1003.dur float x float y float value;
9
10
#N struct 1003.note float x float y float w float h float id float
gid float vel float c float vis;
11
#N canvas 0 99 1123 568 10;
12
13
14
15
16
#X msg 644 365 clear;
#X obj 437 15 loadbang;
#X obj 437 38 \$0;
#X obj 581 298 r \$0.init;
#X obj 416 14 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
17
-1;
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#N canvas 133 127 401 394 create_horizgrid 0;
#X obj 16 86 t a b;
#X obj 16 109 until;
#X obj 16 132 f;
#X msg 54 110 0;
#X obj 67 150 + 1;
#X obj 16 62 f;
#X obj 49 62 r \$0.pitchrange;
#X text 229 320 x y w h c;
#X obj 16 271 pack f f f f f;
#N canvas 0 99 387 189 x 0;
#X obj 18 12 inlet;
#X obj 18 97 +;
#X obj 33 70 r \$0.canvasleftmargin;
#X msg 18 46 0;
#X obj 18 120 outlet;
#X connect 0 0 3 0;
#X connect 1 0 4 0;
#X connect 2 0 1 1;
Roman Haefeli's avatar
Roman Haefeli committed
37
#X connect 3 0 1 0;
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#X restore 16 233 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 123 * 14;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 63 96 r \$0.stepvisheight;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 2 0 1 1;
#X connect 3 0 0 1;
#X connect 4 0 0 0;
#X restore 55 234 pd y;
#N canvas 0 99 418 249 w 0;
#X obj 16 17 inlet;
#X obj 16 194 outlet;
#X obj 16 103 f;
#X obj 31 77 r \$0.stepcount;
#X obj 31 127 r \$0.stepviswidth;
#X obj 16 155 *;
#X obj 16 45 b;
#X connect 0 0 6 0;
#X connect 2 0 5 0;
#X connect 3 0 2 1;
#X connect 4 0 5 1;
#X connect 5 0 1 0;
#X connect 6 0 2 0;
#X restore 92 234 pd w;
#N canvas 0 99 395 171 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
70
71
#X obj 23 110 f;
#X obj 23 133 outlet;
72
#X obj 38 65 r \$0.stepvisheight;
73
#X obj 38 88 - 1;
74
75
76
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
77
78
#X connect 4 0 5 0;
#X connect 5 0 2 1;
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#X restore 135 235 pd h;
#X obj 16 156 t a a;
#X obj 16 185 t a a a a a;
#N canvas 570 378 422 271 c 0;
#X obj 20 56 mod 12;
#X obj 20 80 sel 0 2 4 5 7 9 11;
#X obj 125 102 b;
#X obj 20 130 f 887;
#X obj 125 177 f 777;
#X obj 20 32 + 5;
#X obj 64 129 r \$0.stepkeycolor1;
#X obj 132 152 r \$0.stepkeycolor2;
#X obj 20 211 t a;
#X obj 20 7 inlet;
#X obj 20 238 outlet;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 1 1 3 0;
#X connect 1 2 3 0;
#X connect 1 3 3 0;
#X connect 1 4 3 0;
#X connect 1 5 3 0;
#X connect 1 6 3 0;
#X connect 1 7 2 0;
#X connect 2 0 4 0;
#X connect 3 0 8 0;
#X connect 4 0 8 0;
#X connect 5 0 0 0;
#X connect 6 0 3 1;
#X connect 7 0 4 1;
#X connect 8 0 10 0;
#X connect 9 0 5 0;
#X restore 171 234 pd c;
#X obj 16 294 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 343 outlet;
#X msg 16 320 scalar \$1.horizgrid \$2 \$3 \$4 \$5 \$6;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 13 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 0 0;
#X connect 6 0 5 1;
#X connect 8 0 16 0;
#X connect 9 0 8 0;
#X connect 10 0 8 1;
#X connect 11 0 8 2;
#X connect 12 0 8 3;
#X connect 13 0 14 0;
#X connect 13 1 4 0;
#X connect 14 0 9 0;
#X connect 14 1 10 0;
#X connect 14 2 11 0;
#X connect 14 3 12 0;
#X connect 14 4 15 0;
#X connect 15 0 8 4;
#X connect 16 0 20 0;
#X connect 17 0 18 0;
#X connect 18 0 5 0;
#X connect 20 0 19 0;
142
#X restore 612 418 pd create_horizgrid;
143
#N canvas 64 134 618 459 horizgrid-template 0;
144
145
146
#X obj 19 18 filledpolygon c c 1 0 0 0 h w h w 0;
#X obj 20 44 struct \$0.horizgrid float x float y float w float h float
c;
Roman Haefeli's avatar
Roman Haefeli committed
147
#X obj 20 73 s \$0.horizgrid.send;
148
149
150
151
152
153
154
155
156
157
158
159
160
161
#X obj 22 126 route change;
#X obj 22 149 t p p, f 20;
#X obj 79 357 - 1;
#X obj 22 195 t b b, f 10;
#X obj 22 103 r \$0.horizgrid.send;
#X obj 22 388 set \$0.horizgrid w h;
#X obj 79 335 f;
#X obj 22 322 - 1;
#X obj 22 299 *;
#X obj 22 252 f;
#X obj 37 224 r \$0.stepcount;
#X obj 22 170 get \$0.horizgrid w;
#X obj 37 276 r \$0.stepviswidth;
#X obj 94 310 r \$0.stepvisheight;
Roman Haefeli's avatar
Roman Haefeli committed
162
#X connect 1 0 2 0;
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
#X connect 3 0 4 0;
#X connect 4 0 14 0;
#X connect 4 1 8 2;
#X connect 5 0 8 1;
#X connect 6 0 12 0;
#X connect 6 1 9 0;
#X connect 7 0 3 0;
#X connect 9 0 5 0;
#X connect 10 0 8 0;
#X connect 11 0 10 0;
#X connect 12 0 11 0;
#X connect 13 0 12 1;
#X connect 14 0 6 0;
#X connect 15 0 11 1;
#X connect 16 0 9 1;
#X restore 754 418 pd horizgrid-template;
#N canvas 60 99 831 488 vertgrid-template 0;
180
181
#X obj 19 18 filledpolygon 0 0 1 0 0 0 h w h w 0;
#X obj 19 42 struct \$0.vertgrid float x float y float w float h;
Roman Haefeli's avatar
Roman Haefeli committed
182
#X obj 19 66 s \$0.vertgrid.send;
183
184
185
186
187
188
189
190
191
192
193
194
195
196
#X obj 92 310 r \$0.stepvisheight;
#X obj 77 286 f;
#X obj 77 335 *;
#X obj 92 261 r \$0.pitchrange;
#X obj 22 103 r \$0.vertgrid.send;
#X obj 22 126 route change;
#X obj 22 170 get \$0.vertgrid w;
#X obj 22 149 t p p, f 19;
#X obj 77 358 - 1;
#X obj 22 388 set \$0.vertgrid w h;
#X obj 37 223 r \$0.stepviswidth;
#X obj 22 269 f;
#X obj 37 246 - 1;
#X obj 22 195 t b b, f 10;
Roman Haefeli's avatar
Roman Haefeli committed
197
#X connect 1 0 2 0;
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 11 0;
#X connect 6 0 4 1;
#X connect 7 0 8 0;
#X connect 8 0 10 0;
#X connect 9 0 16 0;
#X connect 10 0 9 0;
#X connect 10 1 12 2;
#X connect 11 0 12 1;
#X connect 13 0 15 0;
#X connect 14 0 12 0;
#X connect 15 0 14 1;
#X connect 16 0 14 0;
#X connect 16 1 4 0;
#X restore 754 390 pd vertgrid-template;
Roman Haefeli's avatar
Roman Haefeli committed
214
#N canvas 133 127 401 394 create_vertgrid 0;
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
#X obj 16 86 t a b;
#X obj 16 109 until;
#X obj 16 132 f;
#X msg 54 110 0;
#X obj 67 150 + 1;
#X obj 16 62 f;
#N canvas 0 99 401 215 x 0;
#X obj 18 12 inlet;
#X obj 18 147 +;
#X obj 33 120 r \$0.canvasleftmargin;
#X obj 18 170 outlet;
#X obj 18 75 *;
#X obj 33 42 r \$0.stepviswidth;
#X connect 0 0 4 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 4 0 1 0;
#X connect 5 0 4 1;
#X restore 16 233 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X msg 42 90 0;
#X connect 0 0 3 0;
#X connect 1 0 0 1;
#X connect 2 0 4 0;
#X connect 4 0 0 0;
#X restore 55 234 pd y;
#N canvas 0 99 418 249 w 0;
#X obj 16 17 inlet;
#X obj 16 194 outlet;
248
#X obj 31 90 r \$0.stepviswidth;
249
250
#X obj 16 45 b;
#X obj 16 155 f;
251
#X obj 31 113 - 1;
252
#X connect 0 0 3 0;
253
#X connect 2 0 5 0;
254
255
#X connect 3 0 4 0;
#X connect 4 0 1 0;
256
#X connect 5 0 4 1;
257
258
259
260
#X restore 92 234 pd w;
#N canvas 0 99 398 252 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
261
#X obj 23 193 outlet;
262
263
264
265
#X obj 38 115 r \$0.stepvisheight;
#X obj 23 91 f;
#X obj 23 140 *;
#X obj 38 66 r \$0.pitchrange;
266
#X obj 23 163 - 1;
267
268
269
270
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
271
#X connect 5 0 7 0;
272
#X connect 6 0 4 1;
273
#X connect 7 0 2 0;
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
#X restore 135 235 pd h;
#X obj 16 156 t a a;
#X obj 16 294 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 343 outlet;
#X obj 46 60 r \$0.stepcount;
#X text 229 320 x y w h;
#X obj 16 271 pack f f f f;
#X obj 16 185 t a a a a;
#X msg 16 320 scalar \$1.vertgrid \$2 \$3 \$4 \$5;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 10 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 0 0;
#X connect 6 0 17 0;
#X connect 7 0 17 1;
#X connect 8 0 17 2;
#X connect 9 0 17 3;
#X connect 10 0 18 0;
#X connect 10 1 4 0;
#X connect 11 0 19 0;
Roman Haefeli's avatar
Roman Haefeli committed
299
#X connect 12 0 13 0;
300
301
302
303
304
305
306
307
#X connect 13 0 5 0;
#X connect 15 0 5 1;
#X connect 17 0 11 0;
#X connect 18 0 6 0;
#X connect 18 1 7 0;
#X connect 18 2 8 0;
#X connect 18 3 9 0;
#X connect 19 0 14 0;
308
#X restore 628 390 pd create_vertgrid;
Roman Haefeli's avatar
Roman Haefeli committed
309
310
311
312
313
314
315
#N canvas 107 99 450 300 vertline-template 0;
#X obj 18 20 drawpolygon c 1 0 0 0 h;
#X obj 19 79 s \$0.vertline.send;
#X obj 165 20 drawnumber -v nvis n -3 -15 c;
#X obj 19 42 struct \$0.vertline float x float y float h float c float
n float nvis;
#X connect 3 0 1 0;
316
#X restore 754 446 pd vertline-template;
317
#N canvas 43 99 400 432 create_vertline 0;
Roman Haefeli's avatar
Roman Haefeli committed
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
#X obj 16 116 t a b;
#X obj 16 139 until;
#X obj 16 162 f;
#X msg 54 140 0;
#X obj 67 180 + 1;
#X obj 16 62 f;
#N canvas 0 99 401 215 x 0;
#X obj 18 12 inlet;
#X obj 18 147 +;
#X obj 33 120 r \$0.canvasleftmargin;
#X obj 18 170 outlet;
#X obj 18 75 *;
#X obj 33 42 r \$0.stepviswidth;
#X connect 0 0 4 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 4 0 1 0;
#X connect 5 0 4 1;
#X restore 16 263 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X msg 42 90 0;
#X connect 0 0 3 0;
#X connect 1 0 0 1;
#X connect 2 0 4 0;
#X connect 4 0 0 0;
#X restore 55 264 pd y;
#X obj 16 186 t a a;
#X obj 16 324 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 373 outlet;
#X obj 46 60 r \$0.stepcount;
#N canvas 0 99 398 252 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
#X obj 23 163 outlet;
#X obj 38 115 r \$0.stepvisheight;
#X obj 23 91 f;
#X obj 23 140 *;
#X obj 38 66 r \$0.pitchrange;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 4 1;
#X restore 96 266 pd h;
#N canvas 0 99 500 410 c 0;
#X obj 16 17 inlet;
#X obj 16 326 outlet;
#X obj 87 53 r \$0.griddivision;
#X obj 103 80 r \$0.gridsubdivision;
#X obj 87 131 *;
#X obj 16 161 mod;
#X obj 16 198 sel 0;
#X obj 58 205 r \$0.gridsubdivision;
#X obj 43 232 mod;
#X obj 43 261 sel 0;
#X msg 70 288 888;
#X msg 16 289 0;
#X obj 103 103 t b a;
#X msg 43 288 666;
#X connect 0 0 5 0;
#X connect 2 0 4 0;
#X connect 3 0 12 0;
#X connect 4 0 5 1;
#X connect 5 0 6 0;
#X connect 6 0 11 0;
#X connect 6 1 8 0;
#X connect 7 0 8 1;
#X connect 8 0 9 0;
#X connect 9 0 13 0;
#X connect 9 1 10 0;
#X connect 10 0 1 0;
#X connect 11 0 1 0;
#X connect 12 0 4 0;
#X connect 12 1 4 1;
#X connect 13 0 1 0;
#X restore 133 267 pd c;
#X obj 16 89 + 1;
#X text 46 89 one more for end line;
#X obj 16 215 t a a a a a;
#N canvas 0 99 429 340 n 0;
#X obj 20 26 inlet;
#X obj 20 265 outlet;
#X obj 113 30 r \$0.griddivision;
#X obj 129 57 r \$0.gridsubdivision;
#X obj 113 108 *;
#X obj 129 80 t b a;
#X obj 20 161 div;
#X obj 20 109 t a a;
413
414
415
#X obj 109 197 mod;
#X obj 109 225 == 0;
#X obj 109 268 outlet;
Roman Haefeli's avatar
Roman Haefeli committed
416
#X obj 20 184 + 1;
417
418
419
#X obj 170 115 r \$0.stepcount;
#X obj 78 174 sel;
#X msg 78 200 0;
Roman Haefeli's avatar
Roman Haefeli committed
420
421
422
423
424
425
426
427
428
#X connect 0 0 7 0;
#X connect 2 0 4 0;
#X connect 3 0 5 0;
#X connect 4 0 6 1;
#X connect 4 0 8 1;
#X connect 5 0 4 0;
#X connect 5 1 4 1;
#X connect 6 0 11 0;
#X connect 7 0 6 0;
429
#X connect 7 1 13 0;
Roman Haefeli's avatar
Roman Haefeli committed
430
431
432
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 11 0 1 0;
433
434
435
436
#X connect 12 0 13 1;
#X connect 13 0 14 0;
#X connect 13 1 8 0;
#X connect 14 0 10 0;
Roman Haefeli's avatar
Roman Haefeli committed
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
#X restore 170 267 pd n nvis;
#X obj 16 301 pack f f f f f f;
#X text 249 349 x y h c n nvis;
#X msg 16 350 scalar \$1.vertline \$2 \$3 \$4 \$5 \$6 \$7;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 8 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 16 0;
#X connect 6 0 20 0;
#X connect 7 0 20 1;
#X connect 8 0 18 0;
#X connect 8 1 4 0;
#X connect 9 0 22 0;
#X connect 10 0 11 0;
#X connect 11 0 5 0;
#X connect 13 0 5 1;
#X connect 14 0 20 2;
#X connect 15 0 20 3;
#X connect 16 0 0 0;
#X connect 18 0 6 0;
#X connect 18 1 7 0;
#X connect 18 2 14 0;
#X connect 18 3 15 0;
#X connect 18 4 19 0;
#X connect 19 0 20 4;
#X connect 19 1 20 5;
#X connect 20 0 9 0;
#X connect 22 0 12 0;
468
#X restore 596 446 pd create_vertline;
469
#N canvas 79 99 767 573 note-template 0;
470
471
#X obj 121 264 max 0;
#X obj 121 287 min 127;
472
#X obj 51 166 route click change;
473
#X obj 121 312 t a a;
474
#X obj 32 141 t a a a;
475
#X obj 32 429 s \$0.note.send;
476
477
478
479
480
481
482
483
484
485
486
487
#X obj 32 104 struct \$0.note float x float y float w float h float
id float gid float vel float c float vis;
#X obj 51 189 t p p, f 48;
#X obj 51 235 t a b, f 36;
#X obj 264 353 f;
#X obj 279 295 r \$0.stepvisheight;
#X obj 279 318 - 1;
#X obj 226 265 r \$0.stepviswidth;
#X obj 193 289 div;
#X obj 193 312 *;
#X obj 32 54 filledpolygon -v vis c 444 1 0 0 0 h w h w 0;
#X obj 193 335 max;
488
489
490
491
492
493
494
495
496
497
498
499
500
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
501
#X restore 64 335 pd get.gid.clr;
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
#N canvas 320 203 446 363 clr.* 0;
#X obj 28 62 t a a a;
#X obj 28 112 div 100;
#X obj 78 113 mod 100;
#X obj 78 136 div 10;
#X obj 128 112 mod 10;
#X obj 28 165 *;
#X obj 28 188 int;
#X obj 78 165 *;
#X obj 78 188 int;
#X obj 128 165 *;
#X obj 128 188 int;
#X obj 230 103 inlet;
#X obj 28 212 min 9;
#X obj 78 212 min 9;
#X obj 128 212 min 9;
#X obj 28 235 * 100;
#X obj 78 235 * 10;
#X obj 128 235 * 1;
#X obj 28 262 +;
#X obj 28 285 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 11 0 9 1;
#X connect 11 0 7 1;
#X connect 11 0 5 1;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 18 1;
#X connect 17 0 19 1;
#X connect 18 0 19 0;
548
#X connect 19 0 20 0;
549
#X connect 21 0 0 0;
550
#X restore 64 369 pd clr.*;
551
552
#X obj 121 361 / 113;
#X obj 51 212 get \$0.note gid vel w, f 24;
553
554
555
556
557
558
559
560
561
#X obj 469 34 r \$0.default.show;
#X obj 469 163 == 1;
#X obj 496 93 == 2;
#X obj 469 57 t a a;
#X text 596 36 show note properties:;
#X text 609 53 0 = none;
#X text 609 68 1 = velocity;
#X text 609 83 2 = gid;
#X obj 478 260 hradio 20 1 0 3 empty empty empty 0 -8 0 10 -262144
562
-1 -1 2;
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
#X obj 478 291 s \$0.default.show;
#N canvas 149 210 387 235 range 0;
#X obj 33 104 min;
#X obj 86 64 r \$0.gidcolorlist;
#X obj 86 87 list length;
#X obj 86 110 - 1;
#X obj 33 22 inlet;
#X obj 33 45 max 0;
#X obj 33 127 outlet;
#X connect 0 0 6 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 0 1;
#X connect 4 0 5 0;
#X connect 5 0 0 0;
#X restore 51 279 pd range;
#X obj 51 406 set \$0.note gid c vel w h, f 48;
#X obj 51 302 t a a;
#X obj 496 120 drawnumber gid 3 1 999;
#X obj 469 190 drawnumber vel 3 1 999;
583
584
#X connect 0 0 1 0;
#X connect 1 0 3 0;
585
586
587
588
589
#X connect 2 0 7 0;
#X connect 2 1 7 0;
#X connect 3 0 19 0;
#X connect 3 1 32 2;
#X connect 4 0 5 0;
590
#X connect 4 1 2 0;
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
#X connect 6 0 4 0;
#X connect 7 0 20 0;
#X connect 7 1 32 5;
#X connect 8 0 31 0;
#X connect 8 1 9 0;
#X connect 9 0 32 4;
#X connect 10 0 11 0;
#X connect 11 0 9 1;
#X connect 12 0 13 1;
#X connect 12 0 14 1;
#X connect 12 0 16 1;
#X connect 13 0 14 0;
#X connect 14 0 16 0;
#X connect 16 0 32 3;
#X connect 17 0 18 0;
#X connect 18 0 32 1;
#X connect 19 0 18 1;
#X connect 20 0 8 0;
#X connect 20 1 0 0;
#X connect 20 2 13 0;
#X connect 21 0 24 0;
#X connect 22 0 35 0;
#X connect 23 0 34 0;
#X connect 24 0 22 0;
#X connect 24 1 23 0;
#X connect 29 0 30 0;
#X connect 31 0 33 0;
#X connect 33 0 32 0;
#X connect 33 1 17 0;
620
#X restore 759 341 pd note-template;
621
622
623
624
625
626
627
628
#X obj 835 38 array define \$0.step 1000;
#X obj 835 61 array define \$0.pitch 1000;
#X obj 835 107 array define \$0.velocity 1000;
#X obj 835 84 array define \$0.duration 1000;
#X obj 836 130 array define \$0.gid 1000;
#X obj 751 24 r \$0.init;
#X msg 751 47 const 0;
#X obj 835 16 array define \$0.active 1000;
Roman Haefeli's avatar
Roman Haefeli committed
629
#X obj 581 338 t b b b b b;
630
631
#X obj 897 308 route click;
#X obj 897 356 s \$0.default.gid;
Roman Haefeli's avatar
Roman Haefeli committed
632
#N canvas 617 363 640 399 create_guis 0;
633
634
635
636
637
638
#X obj 12 76 route click;
#X obj 12 99 t b p p b;
#X obj 63 145 pointer;
#X obj 63 168 t b p;
#X msg 63 197 1;
#X msg 12 191 3;
Roman Haefeli's avatar
Roman Haefeli committed
639
640
#X obj 238 36 inlet;
#X obj 255 210 outlet;
Roman Haefeli's avatar
Roman Haefeli committed
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
#X obj 16 346 list store;
#X msg 16 320 get \$1 1;
#X obj 16 371 s \$0.gid2lr.set;
#X obj 16 292 r \$0.gid2lr.get;
#X obj 80 318 r \$0.gidcolorlist;
#N canvas 0 99 439 518 create.gid.buttons 0;
#X obj 60 316 r \$0.canvasleftmargin;
#X obj 28 120 f;
#X obj 28 143 t a a;
#X obj 28 417 list prepend \$0;
#X msg 70 95 0;
#X obj 81 126 + 1;
#X obj 28 317 * 30;
#X obj 28 340 +;
#X obj 62 199 == 0;
#X obj 62 224 sel 0 1;
#X msg 62 254 1;
#X msg 91 253 3;
659
660
661
662
663
664
665
666
667
668
669
670
671
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
Roman Haefeli's avatar
Roman Haefeli committed
672
673
674
675
676
677
678
679
680
681
682
683
684
685
#X restore 45 291 pd get.gid.clr;
#X obj 109 41 r \$0.gidcolorlist;
#X obj 109 64 list length;
#X obj 28 65 t a b;
#X obj 28 39 f;
#X obj 28 91 until;
#X text 49 391 x clr hl gid;
#X obj 28 170 t a a a a;
#X obj 28 370 pack f f f f, f 23;
#X obj 28 468 outlet;
#X obj 28 12 inlet;
#X msg 28 445 scalar \$1.gid.button \$2 20 \$3 \$4 \$5;
#X obj 60 339 + 200;
#X connect 0 0 24 0;
686
#X connect 1 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
687
688
689
690
691
692
693
694
#X connect 2 0 19 0;
#X connect 2 1 5 0;
#X connect 3 0 23 0;
#X connect 4 0 1 1;
#X connect 5 0 1 1;
#X connect 6 0 7 0;
#X connect 7 0 20 0;
#X connect 8 0 9 0;
695
#X connect 9 0 10 0;
Roman Haefeli's avatar
Roman Haefeli committed
696
697
698
699
700
701
702
703
704
705
#X connect 9 1 11 0;
#X connect 10 0 20 2;
#X connect 11 0 20 2;
#X connect 12 0 20 1;
#X connect 13 0 14 0;
#X connect 14 0 16 1;
#X connect 15 0 17 0;
#X connect 15 1 4 0;
#X connect 16 0 15 0;
#X connect 17 0 1 0;
706
#X connect 19 0 6 0;
Roman Haefeli's avatar
Roman Haefeli committed
707
708
709
710
711
712
713
#X connect 19 1 12 0;
#X connect 19 2 8 0;
#X connect 19 3 20 3;
#X connect 20 0 3 0;
#X connect 22 0 16 0;
#X connect 23 0 21 0;
#X connect 24 0 7 1;
Roman Haefeli's avatar
Roman Haefeli committed
714
#X restore 289 106 pd create.gid.buttons;
Roman Haefeli's avatar
Roman Haefeli committed
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
#N canvas 0 99 450 300 create.vel.number 0;
#X obj 24 21 inlet;
#X obj 24 201 outlet;
#X obj 68 23 r \$0.canvasleftmargin;
#X obj 24 90 f;
#X obj 68 46 + 0;
#X obj 69 96 r \$0.default.vel;
#X obj 24 125 pack f f;
#X obj 24 149 list prepend \$0;
#X msg 24 172 scalar \$1.vel \$2 20 \$3;
#X connect 0 0 3 0;
#X connect 2 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 3 1;
#X connect 5 0 6 1;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 1 0;
Roman Haefeli's avatar
Roman Haefeli committed
733
#X restore 272 135 pd create.vel.number;
Roman Haefeli's avatar
Roman Haefeli committed
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
#N canvas 0 99 450 300 create.dur.number 0;
#X obj 24 21 inlet;
#X obj 24 216 outlet;
#X obj 68 23 r \$0.canvasleftmargin;
#X obj 24 90 f;
#X obj 24 125 pack f f;
#X obj 24 149 list prepend \$0;
#X msg 24 172 scalar \$1.dur \$2 20 \$3;
#X obj 69 96 r \$0.default.dur;
#X obj 68 46 + 100;
#X connect 0 0 3 0;
#X connect 2 0 8 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 1 0;
#X connect 7 0 4 1;
#X connect 8 0 3 1;
Roman Haefeli's avatar
Roman Haefeli committed
752
#X restore 255 163 pd create.dur.number;
Roman Haefeli's avatar
Roman Haefeli committed
753
754
#X obj 12 52 r \$0.gid.button.send;
#X obj 12 249 set \$0.gid.button hl;
Roman Haefeli's avatar
Roman Haefeli committed
755
756
757
758
759
760
761
762
763
764
#N canvas 106 186 401 297 init.pointer 0;
#X obj 17 79 until;
#X msg 17 102 next;
#X obj 17 138 pointer \$0.gid.button;
#X obj 80 188 get \$0.gid.button gid;
#X obj 17 51 t b b;
#X obj 17 14 inlet;
#X obj 80 219 sel 0;
#X obj 126 219 r \$0.default.gid;
#X obj 17 254 outlet;
765
766
767
#X obj 68 54 \$0;
#X msg 68 80 traverse pd-\$1.display;
#X connect 0 0 1 0;
Roman Haefeli's avatar
Roman Haefeli committed
768
769
#X connect 1 0 2 0;
#X connect 2 0 3 0;
770
771
772
773
774
775
776
777
778
779
#X connect 2 0 8 0;
#X connect 2 2 0 1;
#X connect 3 0 6 0;
#X connect 4 0 0 0;
#X connect 4 1 9 0;
#X connect 5 0 4 0;
#X connect 6 0 0 1;
#X connect 7 0 6 1;
#X connect 9 0 10 0;
#X connect 10 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
780
781
#X restore 102 119 pd init.pointer;
#X obj 238 64 t b b b b;
Roman Haefeli's avatar
Roman Haefeli committed
782
783
#X connect 0 0 1 0;
#X connect 1 0 5 0;
Roman Haefeli's avatar
Roman Haefeli committed
784
#X connect 1 1 17 1;
Roman Haefeli's avatar
Roman Haefeli committed
785
786
787
788
#X connect 1 2 2 1;
#X connect 1 3 2 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
Roman Haefeli's avatar
Roman Haefeli committed
789
790
791
792
#X connect 3 1 17 1;
#X connect 4 0 17 0;
#X connect 5 0 17 0;
#X connect 6 0 19 0;
Roman Haefeli's avatar
Roman Haefeli committed
793
794
795
796
797
#X connect 8 0 10 0;
#X connect 9 0 8 0;
#X connect 11 0 9 0;
#X connect 12 0 8 1;
#X connect 13 0 7 0;
Roman Haefeli's avatar
Roman Haefeli committed
798
#X connect 14 0 7 0;
Roman Haefeli's avatar
Roman Haefeli committed
799
#X connect 15 0 7 0;
Roman Haefeli's avatar
Roman Haefeli committed
800
801
802
803
804
805
#X connect 16 0 0 0;
#X connect 18 0 2 1;
#X connect 19 0 18 0;
#X connect 19 1 15 0;
#X connect 19 2 14 0;
#X connect 19 3 13 0;
Roman Haefeli's avatar
Roman Haefeli committed
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
#X restore 581 475 pd create_guis;
#N canvas 0 99 416 185 gui-templates 0;
#N canvas 0 99 408 150 gid.button-template 0;
#X obj 17 26 filledpolygon clr 0 hl 0 0 0 15 15 15 15 0;
#X obj 16 99 s \$0.gid.button.send;
#X obj 16 60 struct \$0.gid.button float x float y float clr float
hl float gid;
#X connect 2 0 1 0;
#X restore 7 19 pd gid.button-template;
#N canvas 195 247 418 274 vel-template 0;
#X obj 14 11 drawnumber value 0 0 0 velocity=;
#X obj 14 230 s \$0.vel.send;
#X obj 99 138 max 0;
#X obj 99 161 min 127;
#X obj 14 35 struct \$0.vel float x float y float value;
#X obj 14 58 t a a;
#X obj 99 114 get \$0.vel value;
#X obj 99 69 route change;
#X obj 99 92 t p p;
#X obj 99 186 set \$0.vel value;
#X connect 2 0 3 0;
#X connect 3 0 9 0;
#X connect 4 0 5 0;
#X connect 5 0 1 0;
#X connect 5 1 7 0;
#X connect 6 0 2 0;
#X connect 7 0 8 0;
#X connect 8 0 6 0;
#X connect 8 1 9 1;
#X restore 8 48 pd vel-template;
#N canvas 0 99 404 252 dur-template 0;
#X obj 14 35 struct \$0.dur float x float y float value;
#X obj 14 11 drawnumber value 0 0 0 duration=;
#X obj 99 138 max 0;
#X obj 99 161 min 127;
#X obj 14 58 t a a;
#X obj 99 69 route change;
#X obj 99 92 t p p;
#X obj 99 114 get \$0.dur value;
#X obj 99 186 set \$0.dur value;
#X obj 14 230 s \$0.dur.send;
#X obj 155 159 r \$0.stepcount;
#X connect 0 0 4 0;
#X connect 2 0 3 0;
#X connect 3 0 8 0;
#X connect 4 0 9 0;
#X connect 4 1 5 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
#X connect 6 1 8 1;
#X connect 7 0 2 0;
#X connect 10 0 3 1;
#X restore 8 76 pd dur-template;
859
#X restore 754 475 pd gui-templates;
860
861
862
863
864
865
866
867
868
869
#X obj 897 395 r \$0.vel.send;
#X obj 897 441 get \$0.vel value;
#X obj 897 466 s \$0.default.vel;
#X obj 897 418 route change;
#X obj 1007 418 route change;
#X obj 1007 395 r \$0.dur.send;
#X obj 1007 441 get \$0.dur value;
#X obj 1007 466 s \$0.default.dur;
#X obj 897 285 r \$0.gid.button.send;
#X obj 897 331 get \$0.gid.button gid;
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
#N canvas 0 99 627 397 sequencer.part 0;
#X obj 443 64 text define sandbox;
#X obj 56 174 text insert sandbox;
#X msg 104 130 100000;
#X obj 104 94 loadbang;
#X obj 341 272 text search sandbox > 0;
#X obj 345 143 text delete sandbox;
#X msg 348 106 -1;
#X msg 56 44 0 60 90 0 \, 0 64 90 1 \, 2 67 90 2 \, 4 60 0 3 \, 4 67
0 4 \, 8 64 0 5;
#X msg 286 197 3 48 127;
#X obj 286 225 t a a;
#X msg 341 247 \$1;
#X msg 353 197 10 48 0;
#X obj 286 346 text insert sandbox;
#X obj 341 295 sel -1;
#X msg 341 320 1e+09;
#X connect 2 0 1 1;
#X connect 3 0 2 0;
#X connect 4 0 13 0;
#X connect 6 0 5 0;
#X connect 7 0 1 0;
#X connect 8 0 9 0;
#X connect 9 0 12 0;
#X connect 9 1 10 0;
#X connect 10 0 4 0;
#X connect 11 0 9 0;
#X connect 13 0 14 0;
#X connect 13 1 12 1;
#X connect 14 0 12 1;
900
901
#X restore 256 39 pd sequencer.part;
#X obj 28 16 pianorollseq-display \$0.display;
902
#X obj 581 524 s \$0.display;
Roman Haefeli's avatar
Roman Haefeli committed
903
904
905
906
907
#X obj 704 164 r \$0.display;
#X obj 704 247 s pd-\$0.display;
#X obj 730 195 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1
1;
#X msg 730 215 vis \$1;
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
#N canvas 189 388 927 595 note.create 0;
#X obj 6 8 r \$0.global.receive;
#X obj 6 31 route note;
#X obj 6 54 route create;
#X text 95 56 step pitch vel dur gid;
#X obj 119 183 s \$0.active;
#X obj 196 183 s \$0.step;
#X obj 259 183 s \$0.pitch;
#X obj 417 183 s \$0.duration;
#X obj 328 183 s \$0.velocity;
#X obj 508 183 s \$0.gid;
#N canvas 0 99 391 254 prepend.id 0;
#X obj 32 58 t a b;
#X obj 113 86 array min \$0.active;
#X obj 113 109 sel 0;
#X obj 113 132 f;
#X msg 147 139 note buffer full!;
#X obj 147 163 print ERROR;
#X obj 32 22 inlet;
#X obj 32 190 outlet;
#X obj 32 156 list prepend 0;
#X connect 0 0 8 0;
#X connect 0 1 1 0;
931
#X connect 1 0 2 0;
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
#X connect 1 1 3 1;
#X connect 2 0 3 0;
#X connect 2 1 4 0;
#X connect 3 0 8 1;
#X connect 4 0 5 0;
#X connect 6 0 0 0;
#X connect 8 0 7 0;
#X restore 6 77 pd prepend.id;
#X msg 119 148 \$1 1;
#X obj 6 100 t a a;
#X msg 196 148 \$1 \$2;
#X msg 259 148 \$1 \$3;
#X msg 328 148 \$1 \$4;
#X msg 417 148 \$1 \$5;
#X msg 508 148 \$1 \$6;
#X text 20 389 x y w h id gid vel c vis;
#X obj 6 419 list prepend scalar \$0.note;
#X obj 6 442 list trim;
#X obj 6 473 s \$0.display;
#N canvas 26 99 407 242 w 0;
#X obj 7 21 inlet;
#X obj 7 145 outlet;
#X obj 7 100 *;
#X obj 22 71 r \$0.stepviswidth;
#X msg 7 44 \$5;
#X connect 0 0 4 0;
#X connect 2 0 1 0;
959
#X connect 3 0 2 1;
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#X connect 4 0 2 0;
#X restore 86 291 pd w;
#N canvas 26 99 432 235 h 0;
#X obj 7 21 inlet;
#X obj 7 159 outlet;
#X obj 82 28 r \$0.stepvisheight;
#X obj 82 51 - 1;
#X obj 7 88 f;
#X obj 7 44 b;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 1;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
#X restore 126 291 pd h;
#N canvas 26 99 410 257 id 0;
#X obj 7 21 inlet;
#X obj 7 211 outlet;
#X msg 7 93 \$1;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 166 291 pd id;
#N canvas 135 99 416 204 gid 0;
#X obj 7 21 inlet;
#X obj 7 137 outlet;
#X msg 7 72 \$6;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 207 291 pd gid;
#N canvas 25 99 396 215 vel 0;
#X obj 20 21 inlet;
#X obj 20 162 outlet;
#X msg 20 76 \$4;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 257 291 pd vel;
#N canvas 26 99 427 356 c 0;
#X obj 7 21 inlet;
#X obj 7 262 outlet;
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;