unpunch.pd 132 KB
Newer Older
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
#N canvas 0 99 405 189 y->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.y->pitch.get;
#X obj 40 85 r \$0.convert.y->pitch;
#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;
#X restore 104 402 pd y->pitch;
#X obj 29 378 unpack f f, f 13;
#X obj 29 432 pack f f, f 13;
#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;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 281 203 pd pointer->id;
#X obj 29 47 spigot 1;
#X obj 107 61 == 0;
#X obj 281 229 list prepend 0;
3032
#X text 254 28 Shift+click deletes a note (like double-click);
3033
#X obj 107 38 r \$0.mod.key;
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
#X obj 430 102 r \$0.mod.key;
#X obj 465 196 r \$0.delete.on.click;
#X msg 281 436 note delete \$1;
#X obj 486 150 r \$0.toggle.selection;
#X obj 430 125 t a a;
#X obj 430 195 ==;
#X obj 457 148 ==;
#X obj 457 171 * 2;
#X obj 281 302 route 0 1 2, f 24;
#X obj 430 218 +;
#X msg 476 397 note toggle \$1;
#X obj 476 420 s \$0.global.receive;
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 2 0 1 1;
#X connect 3 0 1 1;
#X connect 4 0 18 0;
#X connect 5 0 29 0;
#X connect 6 0 7 0;
#X connect 6 1 9 1;
#X connect 7 0 8 0;
#X connect 8 0 3 0;
#X connect 8 1 9 0;
3057
3058
#X connect 9 0 36 0;
#X connect 10 0 37 0;
3059
3060
3061
3062
3063
3064
3065
3066
3067
#X connect 11 0 12 0;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 13 0;
#X connect 15 0 19 0;
#X connect 16 0 15 1;
#X connect 17 0 0 0;
#X connect 17 1 2 0;
#X connect 17 2 18 1;
3068
#X connect 18 0 34 0;
3069
3070
#X connect 19 0 17 0;
#X connect 20 0 6 0;
3071
#X connect 22 0 44 0;
3072
3073
3074
3075
3076
3077
#X connect 24 0 26 0;
#X connect 26 0 27 0;
#X connect 27 0 28 0;
#X connect 29 0 22 0;
#X connect 30 0 5 0;
#X connect 30 1 22 1;
3078
3079
3080
3081
3082
3083
3084
3085
#X connect 32 0 35 0;
#X connect 33 0 35 1;
#X connect 34 0 32 0;
#X connect 34 1 33 0;
#X connect 35 0 24 0;
#X connect 36 0 39 0;
#X connect 37 0 11 0;
#X connect 38 0 37 1;
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
#X connect 39 0 50 0;
#X connect 41 0 38 0;
#X connect 42 0 46 0;
#X connect 43 0 47 1;
#X connect 44 0 31 0;
#X connect 45 0 48 1;
#X connect 46 0 47 0;
#X connect 46 1 48 0;
#X connect 47 0 51 0;
#X connect 48 0 49 0;
#X connect 49 0 51 1;
#X connect 50 0 30 0;
#X connect 50 1 44 0;
#X connect 50 2 52 0;
#X connect 51 0 39 1;
#X connect 52 0 53 0;
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
#X restore 16 42 pd note.create/delete;
#N canvas 0 99 406 517 note.change.velocity 0;
#X obj 14 19 r \$0.note.send;
#X obj 14 42 route change;
#X obj 14 226 change -1;
#X obj 120 144 t a a;
#X msg 147 195 set \$1;
#X obj 14 356 list prepend;
#X obj 14 407 list trim;
#X obj 14 435 s \$0.global.send;
#X obj 120 118 change -1;
#X obj 14 65 get \$0.note vel id;
#X obj 147 170 tabread \$0.velocity;
#X obj 14 384 list prepend note change velocity;
#X connect 0 0 1 0;
#X connect 1 0 9 0;
#X connect 2 0 5 0;
3119
#X connect 3 0 5 1;
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
#X connect 3 1 10 0;
#X connect 4 0 2 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 8 0 3 0;
#X connect 9 0 2 0;
#X connect 9 1 8 0;
#X connect 10 0 4 0;
#X connect 11 0 6 0;
#X restore 16 92 pd note.change.velocity;
#N canvas 0 99 406 517 note.change.gid 0;
#X obj 14 19 r \$0.note.send;
#X obj 14 42 route change;
#X obj 14 226 change -1;
#X obj 119 144 t a a;
#X msg 146 195 set \$1;
#X obj 14 356 list prepend;
#X obj 14 407 list trim;
#X obj 14 435 s \$0.global.send;
#X obj 119 118 change -1;
#X obj 146 170 tabread \$0.gid;
#X obj 14 384 list prepend note change gid;
#X obj 14 65 get \$0.note gid id;
#X connect 0 0 1 0;
#X connect 1 0 11 0;
#X connect 2 0 5 0;
3146
#X connect 3 0 5 1;
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
#X connect 3 1 9 0;
#X connect 4 0 2 0;
#X connect 5 0 10 0;
#X connect 6 0 7 0;
#X connect 8 0 3 0;
#X connect 9 0 4 0;
#X connect 10 0 6 0;
#X connect 11 0 2 0;
#X connect 11 1 8 0;
#X restore 16 116 pd note.change.gid;
#N canvas 0 99 570 525 note.edit.modes 0;
#X obj 14 19 r \$0.note.send;
#X obj 14 435 s \$0.global.send;
#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;
#X connect 2 0 3 0;
#X connect 3 1 9 0;
#X connect 4 0 2 0;
#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;
#X connect 0 0 1 0;
#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;
3209
#X restore 65 179 pd dur;
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
#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;
3233
#X restore 116 179 pd vel;
3234
3235
3236
3237
3238
#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;
3239
#X obj 14 114 t a a a a, f 26;
3240
3241
#X connect 0 0 2 0;
#X connect 2 0 3 0;
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
#X connect 3 0 12 0;
#X connect 4 0 7 0;
#X connect 5 0 7 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 1 10 1;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 1 0;
#X connect 12 0 4 0;
#X connect 12 1 5 0;
#X connect 12 2 6 0;
#X connect 12 3 9 1;
3256
#X restore 16 141 pd note.edit.modes;
Roman Haefeli's avatar
Roman Haefeli committed
3257
#N canvas 436 166 414 708 note.select 0;
Roman Haefeli's avatar
Roman Haefeli committed
3258
3259
3260
#X obj 19 64 r \$0.horizgrid.send;
#X obj 19 127 route click;
#X obj 19 150 get \$0.horizgrid y;
Roman Haefeli's avatar
Roman Haefeli committed
3261
3262
3263
3264
3265
#X obj 64 235 route click;
#X obj 64 212 r \$0.vertgrid.send;
#X obj 19 283 pack f f;
#X obj 64 258 get \$0.vertgrid x;
#X msg 19 306 \$2 \$1;
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
#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;
#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;
Roman Haefeli's avatar
Roman Haefeli committed
3278
#X restore 19 352 pd x->step;
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
#N canvas 0 99 405 189 y->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.y->pitch.get;
#X obj 40 85 r \$0.convert.y->pitch;
#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;
Roman Haefeli's avatar
Roman Haefeli committed
3291
3292
3293
#X restore 94 352 pd y->pitch;
#X obj 19 328 unpack f f, f 13;
#X obj 19 382 pack f f, f 13;
Roman Haefeli's avatar
Roman Haefeli committed
3294
3295
#X obj 19 97 spigot 1;
#X obj 97 88 r \$0.mod.key;
Roman Haefeli's avatar
Roman Haefeli committed
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
#X obj 161 383 r \$0.mod.key;
#X obj 161 406 == 2;
#X obj 161 429 change -1;
#X obj 19 405 spigot;
#X obj 161 455 sel 0;
#X obj 19 428 t b a;
#X obj 19 464 f;
#X obj 19 487 t a a;
#X obj 66 480 + 1;
#X msg 161 478 0;
#X obj 19 516 list append;
#X obj 19 545 route 1 0;
#X obj 69 577 unpack;
#X obj 19 616 pack f f f f;
#X obj 19 662 s \$0.global.receive;
#X msg 19 639 note select \$3 \$4 \$1 \$2;
#X text 142 664 <- we use the selection only locally;
#X text 182 639 [step \, pitch] \, [step \, pitch];
Roman Haefeli's avatar
Roman Haefeli committed
3314
#X text 23 9 A selection range is defined by drawing a virtual rectangle
3315
3316
3317
by clicking on two coordinates on the grid with Mod-key pressed.;
#X obj 141 111 r \$0.select.range;
#X obj 97 111 == 1;
Roman Haefeli's avatar
Roman Haefeli committed
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
#X obj 205 406 r \$0.select.range;
#N canvas 0 99 397 249 filter.click.on.notes 0;
#X obj 37 37 inlet;
#X obj 37 210 outlet;
#X obj 203 29 r \$0.note.send;
#X obj 203 52 route click;
#X obj 203 75 b;
#X obj 37 60 t b a b, f 16;
#X obj 37 105 del 0;
#X obj 37 128 f;
#X obj 37 151 sel 1;
#X msg 203 98 0;
#X msg 130 92 1;
#X obj 37 174 f, f 8;
#X connect 0 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 5 1 11 1;
#X connect 5 2 10 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 8 0 11 0;
#X connect 9 0 7 1;
#X connect 10 0 7 1;
#X connect 11 0 1 0;
#X restore 19 173 pd filter.click.on.notes;
3346
3347
#X connect 0 0 12 0;
#X connect 1 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
3348
#X connect 2 0 36 0;
3349
3350
3351
3352
3353
3354
3355
3356
3357
#X connect 3 0 6 0;
#X connect 4 0 3 0;
#X connect 5 0 7 0;
#X connect 6 0 5 1;
#X connect 7 0 10 0;
#X connect 8 0 11 0;
#X connect 9 0 11 1;
#X connect 10 0 8 0;
#X connect 10 1 9 0;
3358
#X connect 11 0 17 0;
3359
#X connect 12 0 1 0;
3360
3361
#X connect 13 0 34 0;
#X connect 14 0 15 0;
3362
#X connect 15 0 16 0;
3363
3364
#X connect 16 0 17 1;
#X connect 16 0 18 0;
3365
#X connect 17 0 19 0;
3366
3367
3368
#X connect 18 0 23 0;
#X connect 19 0 20 0;
#X connect 19 1 24 1;
3369
#X connect 20 0 21 0;
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
#X connect 21 0 24 0;
#X connect 21 1 22 0;
#X connect 22 0 20 1;
#X connect 23 0 20 1;
#X connect 24 0 25 0;
#X connect 25 0 27 0;
#X connect 25 1 26 0;
#X connect 26 0 27 2;
#X connect 26 1 27 3;
#X connect 27 0 29 0;
#X connect 29 0 28 0;
#X connect 33 0 34 1;
#X connect 34 0 12 1;
#X connect 35 0 15 1;
Roman Haefeli's avatar
Roman Haefeli committed
3384
#X connect 36 0 5 0;
3385
3386
#X restore 16 166 pd note.select;
#X text 15 17 GENERATE EVENTS;
3387
#N canvas 336 294 403 183 note.unselect 0;
3388
3389
3390
#X obj 25 133 s \$0.global.receive;
#X text 148 135 <- we use the selection only locally;
#X msg 25 110 note unselect;
3391
3392
3393
3394
#X obj 25 76 r \$0.unselect.selection;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X restore 16 191 pd note.unselect;
3395
#N canvas 269 532 348 183 delete.selection 0;
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
#X obj 11 27 r \$0.delete.selection;
#N canvas 371 289 393 275 get.selection 0;
#X obj 20 7 inlet;
#X msg 20 64 1000;
#X obj 20 87 until;
#X obj 20 30 t b b;
#X msg 75 62 0;
#X obj 20 110 f;
#X obj 100 119 + 1;
#X obj 20 156 tabread \$0.marked;
#X obj 20 229 outlet;
#X obj 20 179 pack f f;
#X obj 20 133 t a a a;
#X obj 20 202 route 1;
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 1 0;
#X connect 3 1 4 0;
#X connect 4 0 5 1;
#X connect 5 0 10 0;
#X connect 6 0 5 1;
#X connect 7 0 9 0;
#X connect 9 0 11 0;
#X connect 10 0 7 0;
#X connect 10 1 9 1;
#X connect 10 2 6 0;
#X connect 11 0 8 0;
#X restore 11 53 pd get.selection;
3425
3426
3427
3428
3429
#X msg 11 108 note delete \$1;
#X obj 11 131 s \$0.global.send;
#X msg 183 66 \$1 0;
#X obj 183 89 s \$0.marked;
#X obj 11 76 t a a;
3430
#X connect 0 0 1 0;
3431
#X connect 1 0 6 0;
3432
#X connect 2 0 3 0;
3433
3434
3435
#X connect 4 0 5 0;
#X connect 6 0 2 0;
#X connect 6 1 4 0;
3436
3437
#X restore 243 40 pd delete.selection;
#X text 244 17 KEY COMMANDS;
3438
#N canvas 234 180 599 558 move.selection 0;
3439
#N canvas 371 322 355 409 get.selection 0;
3440
3441
3442
3443
3444
3445
3446
#X obj 20 7 inlet;
#X msg 20 64 1000;
#X obj 20 87 until;
#X obj 20 30 t b b;
#X msg 75 62 0;
#X obj 20 110 f;
#X obj 100 119 + 1;
3447
#X obj 20 356 outlet;
3448
3449
3450
#X obj 20 179 pack f f;
#X obj 20 133 t a a a;
#X obj 20 202 route 1;
3451
3452
3453
3454
3455
3456
3457
#X obj 20 156 tabread \$0.active;
#X obj 20 284 pack f f;
#X obj 20 307 route 1;
#X obj 20 238 t a a;
#X obj 20 261 tabread \$0.marked;
#X text 147 155 only active;
#X text 144 261 only selected;
3458
3459
3460
3461
3462
3463
#X connect 0 0 3 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 3 0 1 0;
#X connect 3 1 4 0;
#X connect 4 0 5 1;
3464
#X connect 5 0 9 0;
3465
#X connect 6 0 5 1;
3466
#X connect 8 0 10 0;
3467
#X connect 9 0 11 0;
3468
3469
3470
#X connect 9 1 8 1;
#X connect 9 2 6 0;
#X connect 10 0 14 0;
3471
#X connect 11 0 8 0;
3472
3473
3474
3475
3476
#X connect 12 0 13 0;
#X connect 13 0 7 0;
#X connect 14 0 15 0;
#X connect 14 1 12 1;
#X connect 15 0 12 0;
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
#X restore 48 314 pd get.selection;
#X obj 17 19 r \$0.move.up.selection;
#X obj 51 41 r \$0.move.down.selection;
#X obj 88 66 r \$0.move.left.selection;
#X obj 125 88 r \$0.move.right.selection;
#X obj 359 67 r \$0.griddivision;
#X obj 385 90 r \$0.gridsubdivision;
#X obj 385 113 t b a;
#X obj 359 138 *;
#X msg 17 42 0 1;
#X msg 51 64 0 -1;
#X msg 88 89 -1 0;
#X msg 125 111 1 0;
#X obj 344 166 f;
#X obj 308 19 r \$0.mod.key;
#X obj 340 42 r \$0.move.notes.bar;
#X obj 308 141 sel 0 1;
#X msg 308 164 1;
#X obj 48 141 unpack f f;
#X obj 48 175 *;
#X obj 308 193 t a;
#X obj 445 163 r \$0.move.notes.octave;
#X obj 411 139 r \$0.mod.key;
3500
3501
3502
3503
#X obj 411 210 sel 0 1;
#X msg 411 233 1;
#X msg 442 233 12;
#X obj 411 260 t a;
3504
3505
3506
#X obj 105 203 *;
#X obj 48 233 pack f f;
#X obj 48 256 t b a;
3507
3508
3509
3510
3511
3512
#X obj 89 410 tabread \$0.step;
#X obj 130 366 tabread \$0.pitch;
#X obj 89 433 +;
#X obj 130 389 +;
#X obj 106 285 unpack;
#X obj 48 466 pack f f f, f 14;
3513
3514
#X msg 48 489 note change pos \$1 \$2 \$3;
#X obj 48 512 s \$0.global.send;
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
#X obj 411 162 &;
#X obj 308 42 &;
#X obj 308 68 > 0;
#X obj 411 187 > 0;
#X obj 353 339 r \$0.copy.and.move;
#X obj 325 316 r \$0.mod.key;
#X obj 325 339 &;
#X obj 325 365 > 0;
#X obj 48 337 t a a a a, f 21;
#X obj 292 394 spigot;
#N canvas 0 99 418 242 get.note.params 0;
#X obj 24 141 tabread \$0.step;
#X obj 39 121 tabread \$0.pitch;
#X obj 55 101 tabread \$0.velocity;
#X obj 71 81 tabread \$0.duration;
#X obj 87 61 tabread \$0.gid;
#X obj 24 167 pack f f f f f;
#X obj 24 33 t a a a a a;
#X obj 24 10 inlet;
#X obj 24 190 outlet;
#X connect 0 0 5 0;
#X connect 1 0 5 1;
#X connect 2 0 5 2;
#X connect 3 0 5 3;
#X connect 4 0 5 4;
#X connect 5 0 8 0;
#X connect 6 0 0 0;
#X connect 6 1 1 0;
#X connect 6 2 2 0;
#X connect 6 3 3 0;
#X connect 6 4 4 0;
#X connect 7 0 6 0;
#X restore 292 421 pd get.note.params;
#X obj 292 444 list prepend note create;
#X obj 292 467 list trim;
#X obj 292 490 s \$0.global.send;
#X connect 0 0 46 0;
3552
3553
3554
3555
3556
3557
3558
3559
3560
#X connect 1 0 9 0;
#X connect 2 0 10 0;
#X connect 3 0 11 0;
#X connect 4 0 12 0;
#X connect 5 0 8 0;
#X connect 6 0 7 0;
#X connect 7 0 8 0;
#X connect 7 1 8 1;
#X connect 8 0 13 1;
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
#X connect 9 0 18 0;
#X connect 10 0 18 0;
#X connect 11 0 18 0;
#X connect 12 0 18 0;
#X connect 13 0 20 0;
#X connect 14 0 39 0;
#X connect 15 0 39 1;
#X connect 16 0 17 0;
#X connect 16 1 13 0;
#X connect 17 0 20 0;
#X connect 18 0 19 0;
#X connect 18 1 27 0;
#X connect 19 0 28 0;
#X connect 20 0 19 1;
#X connect 21 0 38 1;
#X connect 22 0 38 0;
3577
#X connect 23 0 24 0;
3578
3579
#X connect 23 1 25 0;
#X connect 24 0 26 0;
3580
#X connect 25 0 26 0;
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
#X connect 26 0 27 1;
#X connect 27 0 28 1;
#X connect 28 0 29 0;
#X connect 29 0 0 0;
#X connect 29 1 34 0;
#X connect 30 0 32 0;
#X connect 31 0 33 0;
#X connect 32 0 35 1;
#X connect 33 0 35 2;
#X connect 34 0 32 1;
#X connect 34 1 33 1;
#X connect 35 0 36 0;
#X connect 36 0 37 0;
#X connect 38 0 41 0;
3595
#X connect 39 0 40 0;
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
#X connect 40 0 16 0;
#X connect 41 0 23 0;
#X connect 42 0 44 1;
#X connect 43 0 44 0;
#X connect 44 0 45 0;
#X connect 45 0 47 1;
#X connect 46 0 35 0;
#X connect 46 1 30 0;
#X connect 46 2 31 0;
#X connect 46 3 47 0;
#X connect 47 0 48 0;
#X connect 48 0 49 0;
#X connect 49 0 50 0;
#X connect 50 0 51 0;
3610
#X restore 244 65 pd move.selection;
3611
#X restore 19 155 pd generate.events;
3612
#N canvas 0 99 378 327 process.events 0;
3613
#N canvas 59 156 654 539 note.create 0;
3614
3615
3616
3617
#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;
3618
3619
3620
3621
3622
3623
3624
#X obj 33 152 s \$0.active;
#X obj 110 152 s \$0.step;
#X obj 173 152 s \$0.pitch;
#X obj 331 152 s \$0.duration;
#X obj 242 152 s \$0.velocity;
#X obj 422 152 s \$0.gid;
#X msg 33 127 \$1 1;
3625
#X obj 6 100 t a a;
3626
3627
3628
3629
3630
#X msg 110 127 \$1 \$2;
#X msg 173 127 \$1 \$3;
#X msg 242 127 \$1 \$4;
#X msg 331 127 \$1 \$5;
#X msg 422 127 \$1 \$6;
3631
3632
#X obj 6 419 list prepend scalar \$0.note;
#X obj 6 442 list trim;
3633
#N canvas 51 152 524 298 w 0;
3634
#X obj 7 21 inlet;
3635
#X obj 7 140 outlet;
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
#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;
#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;
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
#X restore 7 112 pd duration->w;
#N canvas 83 99 410 208 id->visible.length 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 76 88 r \$0.convert.id->visible.length;
#X obj 76 66 s \$0.convert.id->visible.length.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 7 75 pd id->visible.length;
#X msg 7 44 \$1;
#X text 42 49 for the length limitation we need the id;
#X connect 0 0 4 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 4 0 3 0;
3668
3669
#X restore 86 251 pd w;
#N canvas 6 99 432 235 h 0;
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
#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;
#X connect 4 0 1 0;
#X connect 5 0 4 0;
3681
#X restore 126 251 pd h;
3682
#N canvas 16 99 410 257 id 0;
3683
3684
3685
3686
3687
#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;
3688
#X restore 166 251 pd id;
3689
3690
3691
3692
3693
3694
#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;
3695
#X restore 207 251 pd gid;
3696
3697
3698
3699
3700
#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;
3701
#X connect 2 0 1 0;
3702
#X restore 257 251 pd vel;
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
#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 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
3729
#X connect 0 0 1 0;
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
#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;
#X connect 19 0 20 0;
#X connect 21 0 0 0;
#X restore 7 221 pd clr.*;
#X obj 109 120 / 113;
#X obj 7 44 t a a;
#X msg 7 82 \$6;
#X msg 109 94 \$4;
#N canvas 73 91 410 208 gid->gclr 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.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;
#X connect 2 0 3 0;
#X connect 5 0 2 1;
#X restore 7 117 pd gid->gclr;
#X connect 0 0 4 0;
#X connect 2 0 1 0;
#X connect 3 0 2 1;
#X connect 4 0 5 0;
#X connect 4 1 6 0;
3777
#X connect 5 0 7 0;
3778
3779
#X connect 6 0 3 0;
#X connect 7 0 2 0;
3780
#X restore 346 251 pd c;
3781
3782
3783
3784
3785
3786
3787
3788
#N canvas 16 91 414 215 vis 0;
#X obj 7 21 inlet;
#X obj 7 126 outlet;
#X msg 7 74 1;
#X obj 7 44 b;
#X connect 0 0 3 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
3789
#X restore 378 251 pd vis;
3790
#N canvas 10 276 283 216 x 0;
3791
#X obj 7 21 inlet;
3792
#X obj 7 172 outlet;
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
#N canvas 0 99 405 189 step->x 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.step->x.get;
#X obj 40 85 r \$0.convert.step->x;
#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;
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
#X restore 7 132 pd step->x;
#N canvas 338 529 349 170 id->isvisible|step 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 76 67 s \$0.convert.id->step|isvisble.get;
#X obj 76 87 r \$0.convert.id->step|isvisble;
#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;
#X restore 7 76 pd id->isvisible|step;
#X msg 7 47 \$1;
#X obj 7 99 unpack f f;
#X obj 80 172 outlet;
#X connect 0 0 4 0;
#X connect 2 0 1 0;
#X connect 3 0 5 0;
3825
#X connect 4 0 3 0;
3826
3827
#X connect 5 0 2 0;
#X connect 5 1 6 0;
3828
#X restore 6 251 pd x;
3829
#N canvas 28 275 432 235 y 0;
3830
3831
#X obj 7 21 inlet;
#X obj 7 169 outlet;
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
#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;
#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;
3844
#X restore 7 132 pd pitch->y;
3845
#X msg 7 57 \$3;
3846
#X obj 138 172 outlet;
3847
#X obj 7 80 t a a;
3848
#N canvas 338 496 350 193 pitch->isvisible 0;
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
#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 76 63 s \$0.convert.pitch->isvisible.get;
#X obj 76 85 r \$0.convert.pitch->isvisible;
#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;
#X restore 138 101 pd pitch->isvisible;
3861
3862
#X connect 0 0 3 0;
#X connect 2 0 1 0;
3863
3864
3865
3866
#X connect 3 0 5 0;
#X connect 5 0 2 0;
#X connect 5 1 6 0;
#X connect 6 0 4 0;
3867
#X restore 46 251 pd y;
3868
#X obj 6 473 s \$1;
3869
#X obj 32 178 r \$0.redraw.notes;
3870
3871
3872
3873
3874
3875
#N canvas 15 91 396 215 dur 0;
#X obj 20 21 inlet;
#X obj 20 162 outlet;
#X msg 20 76 \$5;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
3876
#X restore 302 251 pd dur;
Roman Haefeli's avatar
Roman Haefeli committed
3877
3878
#X obj 89 76 r \$0.create.id;
#X obj 6 77 list prepend;
3879
3880
#X obj 6 212 t a a a a a a a a a a a, f 70;
#X obj 6 355 pack f f f f f f f f f f f, f 69;
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
#N canvas 16 99 414 215 mrk 0;
#X obj 7 21 inlet;
#X obj 7 160 outlet;
#X msg 7 44 \$1;
#X obj 7 67 tabread \$0.marked;
#X obj 7 90 sel 0 1;
#X msg 7 113 444;
#X msg 35 112 808;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 4 1 6 0;
#X connect 5 0 1 0;
#X connect 6 0 1 0;
3896
#X restore 423 251 pd mrk;
3897
#X text 20 389 x y w h id gid vel dur c vis mrk;
3898
3899
3900
3901
#X obj 482 152 s \$0.marked;
#X msg 482 127 \$1 0;
#X obj 6 306 spigot 1;
#X obj 79 293 t b a;
3902
#X text 118 304 do not draw out-of-boundary notes;
3903
#X obj 70 319 &&;
3904
3905
#X connect 0 0 1 0;
#X connect 1 0 2 0;
3906
#X connect 2 0 32 0;
Roman Haefeli's avatar
Roman Haefeli committed
3907
#X connect 10 0 4 0;
3908
#X connect 11 0 33 0;
Roman Haefeli's avatar
Roman Haefeli committed
3909
3910
3911
3912
3913
3914
#X connect 11 1 10 0;
#X connect 11 1 12 0;
#X connect 11 1 13 0;
#X connect 11 1 14 0;
#X connect 11 1 15 0;
#X connect 11 1 16 0;
3915
#X connect 11 1 38 0;
Roman Haefeli's avatar
Roman Haefeli committed
3916
3917
3918
3919
3920
3921
3922
#X connect 12 0 5 0;
#X connect 13 0 6 0;
#X connect 14 0 8 0;
#X connect 15 0 7 0;
#X connect 16 0 9 0;
#X connect 17 0 18 0;
#X connect 18 0 28 0;
3923
3924
3925
3926
3927
3928
3929
#X connect 19 0 34 2;
#X connect 20 0 34 3;
#X connect 21 0 34 4;
#X connect 22 0 34 5;
#X connect 23 0 34 6;
#X connect 24 0 34 8;
#X connect 25 0 34 9;
3930
#X connect 26 0 39 0;
3931
#X connect 26 1 42 0;
3932
#X connect 27 0 34 1;
3933
#X connect 27 1 40 0;
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
#X connect 29 0 33 0;
#X connect 30 0 34 7;
#X connect 31 0 32 1;
#X connect 32 0 11 0;
#X connect 33 0 26 0;
#X connect 33 1 27 0;
#X connect 33 2 19 0;
#X connect 33 3 20 0;
#X connect 33 4 21 0;
#X connect 33 5 22 0;
#X connect 33 6 23 0;
#X connect 33 7 30 0;
#X connect 33 8 24 0;
#X connect 33 9 25 0;
#X connect 33 10 35 0;
#X connect 34 0 17 0;
#X connect 35 0 34 10;
#X connect 38 0 37 0;
3952
#X connect 39 0 34 0;
3953
3954
3955
#X connect 40 0 42 0;
#X connect 40 1 42 1;
#X connect 42 0 39 1;
3956
#X restore 19 18 pd note.create;
3957
#N canvas 166 652 345 548 note.delete 0;
3958
3959
3960
#X obj 6 8 r \$0.global.receive;
#X obj 6 31 route note;
#X obj 6 54 route delete;
3961
3962
3963
3964
3965
#X obj 51 492 s \$0.active;
#X msg 51 465 \$1 0;
#X msg 161 423 5;
#X msg 123 422 5;
#X obj 78 327 f;
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
#N canvas 73 91 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;
#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;
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
#X restore 78 354 pd id->pointer;
#X obj 6 152 route -1;
#X obj 6 175 b;
#X msg 6 229 note delete: no such note (\$1 \$2);
#X obj 6 256 s error;
#X obj 6 198 list append;
#X obj 51 303 t a a;
#X obj 78 377 route -1;
#X obj 123 448 set \$0.note x y id vis, f 26;
#X obj 123 399 t b b b b p, f 26;
#X msg 199 422 -1;
Roman Haefeli's avatar
Roman Haefeli committed
3989
3990
3991
3992
#X msg 237 424 0;
#X obj 6 77 t b a;
#X obj 6 107 f;
#X obj 37 108 r \$0.delete.id;
3993
#X obj 100 281 r \$0.note.hide;
3994
3995
#X connect 0 0 1 0;
#X connect 1 0 2 0;
Roman Haefeli's avatar
Roman Haefeli committed
3996
#X connect 2 0 20 0;
3997
#X connect 4 0 3 0;
Roman Haefeli's avatar
Roman Haefeli committed
3998
3999
4000
#X connect 5 0 16 1;
#X connect 6 0 16 0;
#X connect 7 0 8 0;
For faster browsing, not all history is shown. View entire blame