unpunch.pd 91.1 KB
Newer Older
2001
#X obj 14 189 s error;
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
#X msg 14 166 sequencer: note (id=\$2) not found for deletion;
#X obj 14 57 text search \$0.sequence 2 3;
#X text 186 55 remove by velocity and id;
#X connect 1 0 4 0;
#X connect 2 0 3 0;
#X connect 2 1 0 0;
#X connect 3 0 6 0;
#X connect 4 0 7 0;
#X connect 4 1 3 1;
#X connect 6 0 5 0;
#X connect 7 0 2 0;
2013
2014
2015
2016
#X restore 15 155 pd event.remove;
#X obj 17 207 r \$0.init;
#X msg 17 230 -1;
#X obj 17 253 text delete \$0.sequence;
2017
#N canvas 0 99 572 389 note.change.velocity 0;
2018
2019
#X obj 24 39 route note;
#X obj 24 62 route change;
2020
#X msg 24 135 \$1 \$2;
2021
#X obj 24 85 route velocity;
2022
#X obj 24 186 text search \$0.sequence 0 1;
2023
#X obj 24 108 t a a;
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
#X msg 84 152 \$3;
#X obj 69 316 text set \$0.sequence;
#X msg 147 284 2;
#X obj 24 209 route -1;
#X obj 212 247 b;
#X obj 24 158 t a a;
#X obj 212 272 list append;
#X msg 212 296 sequence: note change velocity: note not found (\$1
\$2);
#X obj 212 319 s error;
#X obj 69 282 f;
#X obj 69 252 t b a b, f 13;
Roman Haefeli's avatar
Roman Haefeli committed
2036
#X obj 24 16 r \$0.seq.receive;
2037
#X connect 0 0 1 0;
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
#X connect 1 0 3 0;
#X connect 2 0 11 0;
#X connect 3 0 5 0;
#X connect 4 0 9 0;
#X connect 5 0 2 0;
#X connect 5 1 6 0;
#X connect 6 0 15 1;
#X connect 8 0 7 2;
#X connect 9 0 10 0;
#X connect 9 1 16 0;
#X connect 10 0 12 0;
#X connect 11 0 4 0;
#X connect 11 1 12 1;
#X connect 12 0 13 0;
2052
#X connect 13 0 14 0;
2053
2054
2055
2056
2057
#X connect 15 0 7 0;
#X connect 16 0 15 0;
#X connect 16 1 7 1;
#X connect 16 2 8 0;
#X connect 17 0 0 0;
2058
#X restore 13 88 pd note.change.velocity;
Roman Haefeli's avatar
Roman Haefeli committed
2059
#N canvas 0 99 415 480 play.notes.by.index 0;
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
#X obj 18 77 text search \$0.sequence 0;
#X obj 96 100 text search \$0.sequence > 0;
#X obj 18 52 t a a;
#X obj 18 98 sel -1;
#X obj 51 174 pack f f;
#X obj 51 200 t a a;
#X obj 51 248 -;
#X obj 51 271 until;
#X obj 51 297 f;
#X obj 51 320 t a a;
#X obj 112 302 + 1;
#X obj 90 344 loadbang;
#X msg 90 370 1;
#X msg 129 368 2;
#X obj 51 397 text get \$0.sequence;
#X obj 96 123 sel -1;
#X msg 51 225 \$2 \$1;
#X msg 120 240 \$1;
#X obj 96 147 text size \$0.sequence;
#X obj 18 17 inlet;
#X obj 51 420 outlet;
#X connect 0 0 3 0;
#X connect 1 0 15 0;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 1 4 0;
2086
#X connect 4 0 5 0;
2087
2088
2089
#X connect 5 0 16 0;
#X connect 5 1 17 0;
#X connect 6 0 7 0;
2090
#X connect 7 0 8 0;
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
#X connect 8 0 9 0;
#X connect 9 0 14 0;
#X connect 9 1 10 0;
#X connect 10 0 8 1;
#X connect 11 0 12 0;
#X connect 11 0 13 0;
#X connect 12 0 14 1;
#X connect 13 0 14 2;
#X connect 14 0 20 0;
#X connect 15 0 18 0;
#X connect 15 1 4 1;
#X connect 16 0 6 0;
#X connect 17 0 8 1;
#X connect 18 0 4 1;
#X connect 19 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
2106
#X restore 248 189 pd play.notes.by.index;
2107
2108
#X obj 248 36 inlet;
#X obj 248 309 outlet;
2109
#N canvas 0 157 416 332 cursor 0;
2110
#X obj 23 15 inlet;
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
#X obj 23 117 moses 0;
#X obj 62 149 moses 0;
#X obj 62 172 t b a;
#X msg 62 216 1;
#X msg 23 216 0;
#X obj 23 254 change -1;
#X obj 23 277 s \$0.cursor.show;
#X obj 129 277 s \$0.cursor.pos;
#X obj 174 15 r \$0.stepsperpage;
#X obj 107 15 r \$0.page;
#X obj 174 38 t b a a;
#X obj 107 70 *;
#X obj 23 92 -;
#X obj 23 67 f;
#X obj 35 43 r \$0.redraw;
#X connect 0 0 14 0;
2127
2128
2129
2130
2131
2132
2133
2134
2135
#X connect 1 0 5 0;
#X connect 1 1 2 0;
#X connect 2 0 3 0;
#X connect 2 1 5 0;
#X connect 3 0 4 0;
#X connect 3 1 8 0;
#X connect 4 0 6 0;
#X connect 5 0 6 0;
#X connect 6 0 7 0;
2136
2137
2138
2139
2140
2141
2142
2143
2144
#X connect 9 0 11 0;
#X connect 10 0 12 0;
#X connect 11 0 12 0;
#X connect 11 1 12 1;
#X connect 11 2 2 1;
#X connect 12 0 13 1;
#X connect 13 0 1 0;
#X connect 14 0 13 0;
#X connect 15 0 14 0;
Roman Haefeli's avatar
Roman Haefeli committed
2145
#X restore 342 107 pd cursor;
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
#N canvas 258 224 446 426 bag 0;
#X obj 35 33 inlet;
#X obj 310 34 inlet;
#X obj 35 387 outlet;
#X obj 35 56 t a a;
#X obj 94 160 sel 0;
#X msg 94 183 -1;
#X obj 120 33 table \$0.note.state 127;
#X obj 141 177 tabread \$0.note.state;
#X msg 141 117 \$1;
#X obj 94 85 t a a;
#X obj 141 140 t a a;
#X obj 94 207 +;
#X obj 94 232 max 0;
#X obj 94 259 tabwrite \$0.note.state;
#X obj 94 133 > 0;
#X msg 94 108 \$2;
2163
#N canvas 0 99 384 368 flush.notes 0;
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
#X obj 21 66 array max \$0.note.state;
#X obj 48 113 pack f f;
#X obj 21 89 sel 0;
#X obj 21 42 until;
#X obj 48 136 t a a;
#X msg 75 160 \$2 0;
#X obj 75 183 s \$0.note.state;
#X obj 48 213 unpack;
#X obj 48 236 until;
#X obj 48 259 f;
#X msg 48 282 \$1 0;
#X obj 21 10 inlet;
#X obj 48 313 outlet;
#X connect 0 0 2 0;
#X connect 0 1 1 1;
#X connect 1 0 4 0;
#X connect 2 0 3 1;
#X connect 2 1 1 0;
#X connect 3 0 0 0;
#X connect 4 0 7 0;
#X connect 4 1 5 0;
2185
#X connect 5 0 6 0;
2186
2187
2188
2189
#X connect 7 0 8 0;
#X connect 7 1 9 1;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
2190
#X connect 10 0 12 0;
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
#X connect 11 0 3 0;
#X restore 310 250 pd flush.notes;
#N canvas 112 142 450 300 detect.leap 0;
#X obj 36 19 inlet;
#X obj 36 60 t a a;
#X obj 37 88 -;
#X obj 37 111 sel 1;
#X obj 64 136 b;
#X obj 64 172 outlet;
#X connect 0 0 1 0;
#X connect 1 0 2 1;
#X connect 1 1 2 0;
#X connect 2 0 3 0;
#X connect 3 1 4 0;
#X connect 4 0 5 0;
#X restore 310 111 pd detect.leap;
#X connect 0 0 3 0;
#X connect 1 0 17 0;
#X connect 3 0 2 0;
#X connect 3 1 9 0;
#X connect 4 0 5 0;
#X connect 4 1 11 0;
#X connect 5 0 11 0;
#X connect 7 0 11 1;
#X connect 8 0 10 0;
#X connect 9 0 15 0;
#X connect 9 1 8 0;
#X connect 10 0 7 0;
#X connect 10 1 13 1;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 14 0 4 0;
#X connect 15 0 14 0;
#X connect 16 0 2 0;
#X connect 17 0 16 0;
Roman Haefeli's avatar
Roman Haefeli committed
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
#X restore 248 240 pd bag;
#X obj 248 59 t a a a a;
#N canvas 483 129 381 618 mute.deleted.note 0;
#X obj 274 33 inlet;
#X obj 127 542 outlet;
#X obj 24 39 route note;
#X obj 24 62 route delete;
#X obj 24 85 b;
#X obj 24 108 f;
#X obj 24 143 route -1;
#X obj 88 228 tabread \$0.step;
#X obj 130 207 tabread \$0.duration;
#X obj 88 251 t a a;
#X obj 115 276 +;
#X obj 61 287 moses;
#X obj 88 318 moses;
#X obj 61 241 f;
#X obj 69 177 t b a a a;
#X obj 159 304 tabread \$0.pitch;
#X obj 88 345 b;
#X obj 88 417 tabread \$0.note.state;
#X obj 88 368 f;
#X obj 88 391 t a a;
#X obj 88 442 moses 1;
#X obj 127 468 b;
#X obj 127 491 f;
#X msg 127 516 \$1 0;
2253
2254
2255
#X obj 56 110 r \$0.delete.id;
#X obj 24 16 r \$0.seq.receive;
#X connect 0 0 13 1;
Roman Haefeli's avatar
Roman Haefeli committed
2256
#X connect 2 0 3 0;
2257
2258
2259
2260
2261
2262
2263
2264
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 1 14 0;
#X connect 7 0 9 0;
#X connect 8 0 10 1;
#X connect 9 0 11 1;
#X connect 9 1 10 0;
Roman Haefeli's avatar
Roman Haefeli committed
2265
2266
#X connect 10 0 12 1;
#X connect 11 1 12 0;
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
#X connect 12 0 16 0;
#X connect 13 0 11 0;
#X connect 14 0 13 0;
#X connect 14 1 7 0;
#X connect 14 2 8 0;
#X connect 14 3 15 0;
#X connect 15 0 18 1;
#X connect 16 0 18 0;
#X connect 17 0 20 0;
#X connect 18 0 19 0;
#X connect 19 0 17 0;
#X connect 19 1 22 1;
#X connect 20 1 21 0;
#X connect 21 0 22 0;
#X connect 22 0 23 0;
#X connect 23 0 1 0;
#X connect 24 0 5 1;
#X connect 25 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
2285
#X restore 312 144 pd mute.deleted.note;
2286
2287
#X connect 5 0 6 0;
#X connect 6 0 7 0;
Roman Haefeli's avatar
Roman Haefeli committed
2288
2289
2290
2291
2292
2293
2294
2295
#X connect 9 0 13 0;
#X connect 10 0 14 0;
#X connect 13 0 11 0;
#X connect 14 0 9 0;
#X connect 14 1 13 1;
#X connect 14 2 15 0;
#X connect 14 3 12 0;
#X connect 15 0 13 0;
2296
#X restore 199 430 pd sequencer;
Roman Haefeli's avatar
Roman Haefeli committed
2297
#X obj 20 521 outlet;
2298
#X obj 20 364 inlet;
2299
2300
#X obj 199 461 outlet;
#X obj 199 367 inlet;
2301
#X text 659 519 2018 \, Roman Haefeli;
2302
2303
#X obj 461 254 s \$1;
#N canvas 0 99 570 525 note.edit.modes 0;
2304
2305
#X obj 14 19 r \$0.note.send;
#X obj 14 435 s \$0.global.send;
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
#X obj 14 42 route click;
#X obj 14 65 get \$0.note id;
#N canvas 36 115 405 333 gid 0;
#X obj 40 173 tabread \$0.gid;
#X obj 29 120 r \$0.default.gid;
#X obj 14 143 f;
#X obj 14 203 sel;
#X obj 14 96 spigot 0;
#X obj 14 52 t b a;
#X obj 14 22 inlet;
#X obj 14 262 outlet;
#X obj 59 71 route gid;
#X msg 14 231 gid \$1;
#X obj 59 48 r \$0.edit.modes;
#X connect 0 0 3 1;
#X connect 1 0 2 1;
2322
2323
#X connect 2 0 3 0;
#X connect 3 1 9 0;
2324
#X connect 4 0 2 0;
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
#X connect 5 0 4 0;
#X connect 5 1 0 0;
#X connect 6 0 5 0;
#X connect 8 0 4 1;
#X connect 9 0 7 0;
#X connect 10 0 8 0;
#X restore 14 179 pd gid;
#N canvas 36 115 406 316 dur 0;
#X obj 14 143 f;
#X obj 14 203 sel;
#X obj 59 48 r \$0.edit.modes;
#X obj 14 96 spigot 0;
#X obj 14 52 t b a;
#X obj 14 22 inlet;
#X obj 59 71 route duration;
#X obj 29 120 r \$0.default.dur;
#X obj 40 173 tabread \$0.duration;
#X obj 14 262 outlet;
#X msg 14 231 duration \$1;
2344
#X connect 0 0 1 0;
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
#X connect 1 1 10 0;
#X connect 2 0 6 0;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 4 1 8 0;
#X connect 5 0 4 0;
#X connect 6 0 3 1;
#X connect 7 0 0 1;
#X connect 8 0 1 1;
#X connect 10 0 9 0;
#X restore 64 179 pd dur;
#N canvas 36 115 407 294 vel 0;
#X obj 14 143 f;
#X obj 14 203 sel;
#X obj 59 48 r \$0.edit.modes;
#X obj 14 96 spigot 0;
#X obj 14 52 t b a;
#X obj 14 22 inlet;
#X obj 59 71 route velocity;
#X obj 40 172 tabread \$0.velocity;
#X obj 14 262 outlet;
#X msg 14 231 velocity \$1;
#X obj 29 120 r \$0.default.vel;
#X connect 0 0 1 0;
#X connect 1 1 9 0;
#X connect 2 0 6 0;
#X connect 3 0 0 0;
#X connect 4 0 3 0;
#X connect 4 1 7 0;
#X connect 5 0 4 0;
#X connect 6 0 3 1;
#X connect 7 0 1 1;
#X connect 9 0 8 0;
#X connect 10 0 0 1;
#X restore 114 179 pd vel;
#X obj 164 183 tabread \$0.step;
#X obj 215 160 tabread \$0.pitch;
#X obj 14 114 t a a a a a, f 34;
#X obj 164 206 pack f f;
#X obj 14 228 list split 1;
#X obj 14 280 list prepend note change;
#X obj 14 303 list append;
#X obj 14 326 list append;
#X obj 14 349 list trim;
#X connect 0 0 2 0;
2390
#X connect 2 0 3 0;
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
#X connect 3 0 9 0;
#X connect 4 0 11 0;
#X connect 5 0 11 0;
#X connect 6 0 11 0;
#X connect 7 0 10 0;
#X connect 8 0 10 1;
#X connect 9 0 4 0;
#X connect 9 1 5 0;
#X connect 9 2 6 0;
#X connect 9 3 7 0;
#X connect 9 4 8 0;
#X connect 10 0 13 1;
#X connect 11 0 12 0;
#X connect 11 1 14 1;
#X connect 12 0 13 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 1 0;
#X restore 19 184 pd note.edit.modes;
#X obj 564 17 r \$0.redraw;
2411
#X floatatom 292 319 5 0 0 0 - - -;
2412
2413
#X obj 319 370 s \$0.page;
#X obj 292 343 t b a;
2414
#X obj 564 40 t b b;
2415
#X obj 292 392 s \$0.redraw;
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
#N canvas 294 116 748 530 redraw.notes 0;
#X obj 11 15 inlet;
#X obj 38 254 r \$0.page;
#X obj 80 282 r \$0.stepsperpage;
#X obj 38 307 *;
#X obj 38 330 t a a;
#X obj 65 356 +;
#X obj 11 386 moses;
#X obj 38 414 moses;
#X msg 11 41 1000;
#X obj 11 87 until;
#X obj 11 110 f;
#X obj 116 129 + 1;
#X obj 11 64 t a b;
#X msg 62 87 0;
#X obj 30 158 tabread \$0.active;
#X obj 11 133 t a a a;
#X obj 11 180 spigot;
#X obj 11 203 t a a;
#X obj 11 228 tabread \$0.step;
#X obj 38 437 b;
#X obj 38 460 f;
#X obj 216 287 t a;
#X obj 464 184 tabread \$0.step;
#X obj 479 164 tabread \$0.pitch;
#X obj 494 144 tabread \$0.velocity;
#X obj 509 124 tabread \$0.duration;
#X obj 524 104 tabread \$0.gid;
#X text 58 181 <- only active notes;
#X text 77 410 only notes that fit into current page;
#X obj 355 478 t a;
#X obj 449 76 t a a a a a a;
#X obj 449 210 pack f f f f f f;
#X text 574 236 id step pitch vel dur gid;
#X obj 449 247 s \$0.redraw.notes;
#X connect 0 0 8 0;
#X connect 1 0 3 0;
#X connect 2 0 3 1;
#X connect 2 0 5 1;
#X connect 3 0 4 0;
#X connect 4 0 6 1;
#X connect 4 1 5 0;
#X connect 5 0 7 1;
#X connect 6 1 7 0;
#X connect 7 0 19 0;
#X connect 8 0 12 0;
2462
#X connect 9 0 10 0;
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
#X connect 10 0 15 0;
#X connect 11 0 10 1;
#X connect 12 0 9 0;
#X connect 12 1 13 0;
#X connect 13 0 10 1;
#X connect 14 0 16 1;
#X connect 15 0 16 0;
#X connect 15 1 14 0;
#X connect 15 2 11 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 17 1 21 0;
#X connect 18 0 6 0;
2476
#X connect 19 0 20 0;
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
#X connect 20 0 29 0;
#X connect 21 0 20 1;
#X connect 22 0 31 1;
#X connect 23 0 31 2;
#X connect 24 0 31 3;
#X connect 25 0 31 4;
#X connect 26 0 31 5;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 30 1 22 0;
#X connect 30 2 23 0;
#X connect 30 3 24 0;
#X connect 30 4 25 0;
#X connect 30 5 26 0;
#X connect 31 0 33 0;
#X restore 564 65 pd redraw.notes;
#X obj 565 306 array define \$0.active 1000;
#X obj 565 328 array define \$0.step 1000;
#X obj 565 351 array define \$0.pitch 1000;
#X obj 565 374 array define \$0.duration 1000;
#X obj 565 397 array define \$0.velocity 1000;
#X obj 565 420 array define \$0.gid 1000;
#X obj 461 13 r \$0.init;
#N canvas 427 111 615 341 converters 0;
#N canvas 83 99 403 258 x->step 0;
2502
2503
2504
2505
#X obj 17 52 -;
#X obj 45 52 r \$0.canvasleftmargin;
#X obj 17 78 /;
#X obj 45 76 r \$0.stepviswidth;
2506
#X obj 17 29 r \$0.convert.x->step.get;
2507
2508
2509
2510
2511
#X obj 17 191 s \$0.convert.x->step;
#X obj 64 127 r \$0.page;
#X obj 92 152 r \$0.stepsperpage;
#X obj 64 152 *;
#X obj 17 146 +;
2512
2513
#X connect 0 0 2 0;
#X connect 1 0 0 1;
2514
#X connect 2 0 9 0;
2515
2516
#X connect 3 0 2 1;
#X connect 4 0 0 0;
2517
2518
2519
2520
#X connect 6 0 8 0;
#X connect 7 0 8 1;
#X connect 8 0 9 1;
#X connect 9 0 5 0;
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
#X restore 15 18 pd x->step;
#N canvas 83 99 403 210 y->pitch 0;
#X obj 15 46 -;
#X obj 15 70 /;
#X obj 43 46 r \$0.canvastopmargin;
#X obj 43 70 r \$0.stepvisheight;
#X msg 15 95 83 \$1;
#X obj 15 118 -;
#X obj 15 17 r \$0.convert.y->pitch.get;
#X obj 15 147 s \$0.convert.y->pitch;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 2 0 0 1;
#X connect 3 0 1 1;
#X connect 4 0 5 0;
#X connect 5 0 7 0;
#X connect 6 0 0 0;
#X restore 15 48 pd y->pitch;
#N canvas 0 99 405 189 x->step 0;
#X obj 40 63 s \$0.convert.x->step.get;
#X obj 40 85 r \$0.convert.x->step;
2542
2543
2544
2545
2546
2547
2548
2549
2550
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X connect 1 0 4 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 1 0 0;
#X connect 4 0 5 0;
2551
2552
#X restore 135 18 pd x->step;
#N canvas 0 99 405 189 y->pitch 0;
2553
2554
2555
2556
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
2557
2558
#X obj 40 63 s \$0.convert.y->pitch.get;
#X obj 40 85 r \$0.convert.y->pitch;
2559
#X connect 0 0 1 0;
2560
2561
#X connect 1 0 2 0;
#X connect 1 1 4 0;
2562
#X connect 2 0 3 0;
2563
#X connect 5 0 2 1;
2564
2565
#X restore 135 48 pd y->pitch;
#N canvas 83 99 403 258 step->x 0;
2566
2567
2568
2569
#X obj 51 117 r \$0.stepviswidth;
#X obj 17 118 *;
#X obj 17 151 +;
#X obj 50 151 r \$0.canvasleftmargin;
2570
#X obj 17 29 r \$0.convert.step->x.get;
2571
2572
2573
2574
2575
#X obj 17 186 s \$0.convert.step->x;
#X obj 64 57 r \$0.page;
#X obj 92 82 r \$0.stepsperpage;
#X obj 64 82 *;
#X obj 17 76 -;
2576
2577
2578
2579
#X connect 0 0 1 1;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 2 1;
2580
2581
2582
2583
2584
#X connect 4 0 9 0;
#X connect 6 0 8 0;
#X connect 7 0 8 1;
#X connect 8 0 9 1;
#X connect 9 0 1 0;
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
#X restore 285 18 pd step->x;
#N canvas 83 99 403 210 pitch->y 0;
#X obj 15 94 *;
#X obj 15 127 +;
#X obj 49 93 r \$0.stepvisheight;
#X obj 48 127 r \$0.canvastopmargin;
#X obj 15 66 -;
#X obj 15 17 r \$0.convert.pitch->y.get;
#X obj 15 157 s \$0.convert.pitch->y;
#X msg 15 41 83 \$1;
#X connect 0 0 1 0;
#X connect 1 0 6 0;
#X connect 2 0 0 1;
#X connect 3 0 1 1;
#X connect 4 0 0 0;
#X connect 5 0 7 0;
#X connect 7 0 4 0;
#X restore 285 48 pd pitch->y;
#N canvas 0 99 405 189 step->x 0;
2604
2605
2606
2607
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
2608
2609
#X obj 40 63 s \$0.convert.step->x.get;
#X obj 40 85 r \$0.convert.step->x;
2610
2611
2612
2613
2614
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
2615
2616
2617
2618
2619
2620
2621
2622
#X restore 415 18 pd step->x;
#N canvas 0 99 405 189 pitch->y 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 63 s \$0.convert.pitch->y.get;
#X obj 40 85 r \$0.convert.pitch->y;
2623
2624
#X connect 0 0 1 0;
#X connect 1 0 2 0;
2625
2626
2627
2628
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 415 48 pd pitch->y;
Roman Haefeli's avatar
Roman Haefeli committed
2629
#N canvas 73 99 483 612 step|pitch->id 0;
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
#X obj 135 313 tabread \$0.step;
#X msg 135 94 1000;
#X obj 135 140 until;
#X obj 135 163 f;
#X obj 135 117 t a b;
#X msg 186 140 0;
#X obj 135 339 sel 0;
#X obj 135 364 f;
#X obj 135 409 tabread \$0.pitch;
#X obj 135 387 t a a;
#X obj 135 432 sel 0;
#X obj 135 480 f;
#X obj 135 455 t b b;
#X obj 275 349 b;
#X obj 135 71 t b a a;
#X msg 227 173 \$1;
#X msg 269 177 \$2;
#X obj 135 186 t a a a;
#X obj 192 175 + 1;
#X obj 135 289 t a a;
#X obj 135 262 f;
#X obj 135 213 tabread \$0.active;
#X obj 135 239 sel 1;
#X text 249 241 consider only 'active' notes;
#X obj 38 20 r \$0.convert.step|pitch->id.get;
#X obj 38 43 t b a b, f 33;
#X obj 38 566 s \$0.convert.step|pitch->id;
#X obj 38 527 f;
#X msg 233 494 -1;
#X text 262 492 -1: no such note;
#X connect 0 0 6 0;
#X connect 1 0 4 0;
#X connect 2 0 3 0;
#X connect 3 0 17 0;
#X connect 4 0 2 0;
#X connect 4 1 5 0;
#X connect 5 0 3 1;
#X connect 6 0 7 0;
2668
#X connect 7 0 9 0;
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
#X connect 8 0 10 0;
#X connect 9 0 8 0;
#X connect 9 1 11 1;
#X connect 10 0 12 0;
#X connect 11 0 27 1;
#X connect 12 0 11 0;
#X connect 12 1 13 0;
#X connect 13 0 2 1;
#X connect 14 0 1 0;
#X connect 14 1 15 0;
#X connect 14 2 16 0;
#X connect 15 0 6 1;
#X connect 16 0 10 1;
#X connect 17 0 21 0;
#X connect 17 1 20 1;
#X connect 17 2 18 0;
#X connect 18 0 3 1;
#X connect 19 0 0 0;
#X connect 19 1 7 1;
#X connect 20 0 19 0;
#X connect 21 0 22 0;
#X connect 22 0 20 0;
#X connect 24 0 25 0;
#X connect 25 0 27 0;
#X connect 25 1 14 0;
#X connect 25 2 28 0;
#X connect 27 0 26 0;
#X connect 28 0 27 1;
#X restore 15 108 pd step|pitch->id;
Roman Haefeli's avatar
Roman Haefeli committed
2698
#N canvas 80 99 410 208 step|pitch->id 0;
2699
2700
2701
2702
2703
2704
2705
2706
#X obj 40 63 s \$0.convert.step|pitch->id.get;
#X obj 40 86 r \$0.convert.step|pitch->id;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X connect 1 0 4 1;
#X connect 2 0 3 0;
2707
#X connect 3 0 4 0;
2708
#X connect 3 1 0 0;
2709
#X connect 4 0 5 0;
2710
#X restore 135 108 pd step|pitch->id;
Roman Haefeli's avatar
Roman Haefeli committed
2711
#N canvas 73 99 403 345 id->step|pitch 0;
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
#X obj 17 29 r \$0.convert.id->step|pitch.get;
#X obj 17 302 s \$0.convert.id->step|pitch;
#X obj 34 79 tabread \$0.active;
#X obj 34 102 sel 1;
#X obj 34 126 f;
#X obj 17 52 t b a a b;
#X obj 34 149 t a a;
#X obj 34 194 tabread \$0.step;
#X obj 61 173 tabread \$0.pitch;
#X obj 34 234 pack f f;
#X obj 17 275 list append;
#X msg 137 238 -1 0;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
2726
#X connect 3 0 4 0;
2727
2728
2729
2730
2731
#X connect 4 0 6 0;
#X connect 5 0 10 0;
#X connect 5 1 2 0;
#X connect 5 2 4 1;
#X connect 5 3 11 0;
2732
#X connect 6 0 7 0;
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
#X connect 6 1 8 0;
#X connect 7 0 9 0;
#X connect 8 0 9 1;
#X connect 9 0 10 1;
#X connect 10 0 1 0;
#X connect 11 0 10 1;
#X restore 285 108 pd id->step|pitch;
#N canvas 83 99 398 214 id->step|pitch 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 63 s \$0.convert.id->step|pitch.get;
#X obj 40 86 r \$0.convert.id->step|pitch;
2747
#X connect 0 0 1 0;
2748
2749
#X connect 1 0 2 0;
#X connect 1 1 4 0;
2750
#X connect 2 0 3 0;
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
#X connect 5 0 2 1;
#X restore 415 108 pd id->step|pitch;
#N canvas 73 91 434 455 id->pointer 0;
#X msg 125 330 -1;
#X obj 38 169 pointer \$0.note;
#X obj 38 107 until;
#X msg 38 130 next;
#X obj 38 192 t p p;
#X obj 88 111 symbol \$1;
#X msg 88 136 traverse \$1;
#X obj 38 248 get \$0.note id;
#X obj 38 273 select;
#X obj 184 187 t a;
#X obj 38 329 pointer;
#X obj 38 78 t b b a;
#X obj 38 20 r \$0.convert.id->pointer.get;
#X obj 38 376 s \$0.convert.id->pointer;
#X obj 125 202 t b b;
#X text 156 331 -1: no such scalar;
#X obj 38 296 t b b, f 23;
#X connect 0 0 13 0;
#X connect 1 0 4 0;
#X connect 1 2 14 0;
2774
#X connect 2 0 3 0;
2775
2776
2777
#X connect 3 0 1 0;
#X connect 4 0 7 0;
#X connect 4 1 10 1;
2778
#X connect 5 0 6 0;
2779
#X connect 6 0 1 0;
2780
#X connect 7 0 8 0;
2781
#X connect 8 0 16 0;
2782
#X connect 9 0 8 1;
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
#X connect 10 0 13 0;
#X connect 11 0 2 0;
#X connect 11 1 5 0;
#X connect 11 2 9 0;
#X connect 12 0 11 0;
#X connect 14 0 0 0;
#X connect 14 1 2 1;
#X connect 16 0 10 0;
#X connect 16 1 2 1;
#X restore 15 138 pd id->pointer;
#N canvas 83 99 410 208 id->pointer 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 63 s \$0.convert.id->pointer.get;
#X obj 40 86 r \$0.convert.id->pointer;
2800
#X connect 0 0 1 0;
2801
2802
#X connect 1 0 2 0;
#X connect 1 1 4 0;
2803
#X connect 2 0 3 0;
2804
2805
2806
2807
2808
2809
#X connect 5 0 2 1;
#X restore 135 138 pd id->pointer;
#N canvas 83 99 403 345 pointer->id 0;
#X obj 17 29 r \$0.convert.pointer->id.get;
#X obj 17 302 s \$0.convert.pointer->id;
#X obj 17 90 get \$0.note id;
2810
#X connect 0 0 2 0;
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
#X connect 2 0 1 0;
#X restore 285 138 pd pointer->id;
#N canvas 83 99 398 214 pointer->id 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 63 s \$0.convert.pointer->id.get;
#X obj 40 86 r \$0.convert.pointer->id;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 4 0;
2823
#X connect 2 0 3 0;
2824
2825
2826
2827
2828
2829
2830
2831
#X connect 5 0 2 1;
#X restore 415 138 pd pointer->id;
#N canvas 83 99 403 210 w->duration 0;
#X obj 15 78 /;
#X obj 44 78 r \$0.stepviswidth;
#X obj 15 17 r \$0.convert.w->duration.get;
#X obj 15 147 s \$0.convert.w->duration;
#X connect 0 0 3 0;
2832
#X connect 1 0 0 1;
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
#X connect 2 0 0 0;
#X restore 15 78 pd w->duration;
#N canvas 0 99 405 189 w->duration 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 85 r \$0.convert.w->duration;
#X obj 40 63 s \$0.convert.w->duration.get;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 5 0;
#X connect 2 0 3 0;
#X connect 4 0 2 1;
#X restore 135 78 pd w->duration;
#N canvas 83 99 403 210 duration->w 0;
#X obj 47 78 r \$0.stepviswidth;
#X obj 15 77 *;
#X obj 15 17 r \$0.convert.duration->w.get;
#X obj 15 157 s \$0.convert.duration->w;
#X connect 0 0 1 1;
#X connect 1 0 3 0;
#X connect 2 0 1 0;
#X restore 285 78 pd duration->w;
#N canvas 0 99 405 189 duration->w 0;
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
#X obj 40 63 s \$0.convert.duration->w.get;
#X obj 40 85 r \$0.convert.duration->w;
2864
#X connect 0 0 1 0;
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
#X connect 1 0 2 0;
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 415 78 pd duration->w;
#N canvas 83 99 403 254 gid->gclr 0;
#X obj 38 20 r \$0.convert.gid->gclr.get;
#X obj 77 189 s \$0.convert.gid->gclr;
#X obj 77 118 list store;
#X msg 77 72 get \$1 1;
#X obj 134 92 r \$0.gidcolorlist;
#X msg 134 142 -1;
#X obj 38 49 moses 0;
#X connect 0 0 6 0;
#X connect 2 0 1 0;
#X connect 2 1 5 0;
#X connect 3 0 2 0;
#X connect 4 0 2 1;
#X connect 5 0 1 0;
#X connect 6 0 5 0;
#X connect 6 1 3 0;
#X restore 15 168 pd gid->gclr;
#N canvas 83 99 410 208 gid->gclr 0;
2888
2889
2890
2891
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
2892
2893
2894
2895
2896
#X obj 40 63 s \$0.convert.gid->gclr.get;
#X obj 40 86 r \$0.convert.gid->gclr;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 4 0;
2897
#X connect 2 0 3 0;
2898
2899
2900
2901
#X connect 5 0 2 1;
#X restore 135 168 pd gid->gclr;
#X restore 19 35 pd converters;
#X text 20 15 converters;
2902
#N canvas 109 324 589 500 note.create 0;
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
#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;
#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 obj 6 419 list prepend scalar \$0.note;
#X obj 6 442 list trim;
#N canvas 16 91 407 242 w 0;
#X obj 7 21 inlet;
#X obj 7 175 outlet;
#X msg 7 44 \$5;
#N canvas 0 99 405 189 duration->w 0;
2927
2928
2929
2930
#X obj 13 14 inlet;
#X obj 13 37 t b a;
#X obj 13 114 list append;
#X obj 13 137 outlet;
2931
2932
#X obj 40 63 s \$0.convert.duration->w.get;
#X obj 40 85 r \$0.convert.duration->w;
2933
2934
2935
2936
2937
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 1 1 4 0;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
#X restore 7 87 pd duration->w;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X restore 86 291 pd w;
#N canvas 6 83 432 235 h 0;
#X obj 7 21 inlet;
#X obj 7 159 outlet;
#X obj 42 79 r \$0.stepvisheight;
#X obj 42 102 - 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;
2953
#X connect 4 0 1 0;
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
#X connect 5 0 4 0;
#X restore 126 291 pd h;
#N canvas 16 91 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 125 91 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 15 91 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 16 91 427 356 c 0;
#X obj 7 21 inlet;
#X obj 7 262 outlet;
#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 +;