#N canvas 196 162 659 243 10; #N canvas 469 92 524 467 wiimote_stuff 0; #X msg 35 257 disconnect; #X obj 296 244 tgl 25 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 138 331 wiimote; #X msg 296 274 setRumble \$1; #X obj 232 121 tgl 25 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 138 121 tgl 25 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 232 151 reportAcceleration \$1; #X msg 138 151 reportIR \$1; #N canvas 36 77 952 482 \$0-accelerometer-stuff 0; #X obj 212 6 inlet; #X obj 360 215 unpack 0 0 0; #X obj 596 428 expr sqrt(pow($f1 \, 2) + pow($f2 \, 2) + pow($f3 \, 2)); #X obj 351 274 atan; #X obj 351 253 expr $f1 / $f2; #X obj 383 298 expr if ($f1 > 0 \, 3.14159 \, -3.14159); #X obj 351 325 pack 0 0 0; #X obj 351 347 expr if ($f3 <= 0 \, $f1 + $f2 \, $f1); #X obj 351 369 * -1; #X obj 652 28 unpack 0 0 0; #X obj 36 437 s \$0-wii-pitch-set; #X obj 351 439 s \$0-wii-roll-set; #X text 579 330 The pitch and roll are only accurate if there are no extra accelerations due to hand movement. We can check if the total acceleration is close to gravity and only use pitch and roll in that case. The total acceleration is given by:; #X obj 25 215 unpack 0 0 0; #X obj 36 274 atan; #X obj 36 253 expr $f1 / $f2; #X obj 68 298 expr if ($f1 > 0 \, 3.14159 \, -3.14159); #X obj 36 325 pack 0 0 0; #X obj 36 347 expr if ($f3 <= 0 \, $f1 + $f2 \, $f1); #X obj 36 369 * -1; #X obj 729 394 unpack 0 0 0; #X obj 696 116 -; #X obj 695 141 abs; #X obj 683 87 t f f; #X obj 695 162 nbx 5 14 0 999 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 695 180 s wiimote_accel; #X obj 653 57 expr abs($f1)+abs($f2)+abs($f3); #X obj 178 203 nbx 5 14 0 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 178 242 s squelch; #X floatatom 148 93 5 0 0 0 - - -; #X obj 148 71 r nunchuk-btn-set; #X obj 148 114 change; #X obj 223 160 r nc-accY-set; #X obj 178 182 gate 1 1; #X msg 148 160 1; #X msg 178 160 0; #X obj 148 136 sel 3 0; #X obj 625 90 nbx 5 14 0 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 568 90 nbx 5 14 -1 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 568 131 + 1; #X obj 568 153 gate 2 1; #X obj 482 223 expr 1-$f1; #X msg 568 224 0; #X obj 625 109 change; #X obj 482 244 s lsnd; #X obj 568 244 s rsnd; #X obj 525 244 s csnd; #X obj 611 223 expr 1-$f1; #X msg 697 224 0; #X obj 654 244 s csnd; #X obj 568 109 >= 0; #X obj 611 244 s rsnd; #X obj 697 244 s lsnd; #X obj 794 248 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 869 248 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #N canvas 30 157 360 300 hit_filter 0; #X obj -72 90 maximum; #X obj -91 185 t b; #X obj -54 230 gate 2 1; #X msg -33 69 -10; #X obj -23 184 + 1; #X obj -153 69 split -1.5 1.5; #X msg -6 45 1; #X obj -5 69 gate 1 1; #X msg 23 45 0; #X obj -61 205 delay 50; #X obj -43 115 > -10; #X obj -119 203 f; #X obj -104 161 gate 1 1; #X obj -153 45 inlet; #X obj 53 45 inlet; #X obj -54 255 outlet; #X obj -9 255 outlet; #X obj -23 163 > 0; #X connect 0 0 8 0; #X connect 0 0 10 0; #X connect 0 0 12 1; #X connect 1 0 9 0; #X connect 2 0 15 0; #X connect 2 1 16 0; #X connect 3 0 0 1; #X connect 3 0 10 1; #X connect 4 0 2 0; #X connect 5 1 0 0; #X connect 6 0 7 0; #X connect 7 0 17 0; #X connect 8 0 7 0; #X connect 9 0 3 0; #X connect 9 0 6 0; #X connect 9 0 11 0; #X connect 10 0 12 0; #X connect 11 0 2 1; #X connect 12 0 11 1; #X connect 12 0 1 0; #X connect 12 0 10 1; #X connect 13 0 5 0; #X connect 14 0 7 1; #X connect 17 0 4 0; #X restore 794 227 pd hit_filter; #X obj 500 88 s wiiacc_x; #X connect 0 0 9 0; #X connect 0 0 13 0; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 1 0 5 0; #X connect 1 2 4 1; #X connect 1 2 6 2; #X connect 3 0 6 0; #X connect 4 0 3 0; #X connect 5 0 6 1; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 8 0 11 0; #X connect 9 0 26 0; #X connect 9 0 38 0; #X connect 9 0 56 0; #X connect 9 1 26 1; #X connect 9 2 26 2; #X connect 9 2 37 0; #X connect 13 1 15 0; #X connect 13 1 16 0; #X connect 13 2 15 1; #X connect 13 2 17 2; #X connect 14 0 17 0; #X connect 15 0 14 0; #X connect 16 0 17 1; #X connect 17 0 18 0; #X connect 18 0 19 0; #X connect 19 0 10 0; #X connect 20 0 2 0; #X connect 20 1 2 1; #X connect 20 2 2 2; #X connect 21 0 22 0; #X connect 22 0 24 0; #X connect 23 0 21 1; #X connect 23 1 21 0; #X connect 24 0 25 0; #X connect 26 0 23 0; #X connect 27 0 28 0; #X connect 29 0 31 0; #X connect 30 0 29 0; #X connect 31 0 36 0; #X connect 32 0 33 1; #X connect 33 0 27 0; #X connect 34 0 33 0; #X connect 35 0 33 0; #X connect 36 0 34 0; #X connect 36 1 35 0; #X connect 37 0 43 0; #X connect 38 0 50 0; #X connect 39 0 40 0; #X connect 40 0 41 0; #X connect 40 0 42 0; #X connect 40 0 46 0; #X connect 40 1 49 0; #X connect 40 1 47 0; #X connect 40 1 48 0; #X connect 41 0 44 0; #X connect 42 0 45 0; #X connect 43 0 40 1; #X connect 47 0 51 0; #X connect 48 0 52 0; #X connect 50 0 39 0; #X connect 55 0 53 0; #X connect 55 1 54 0; #X restore 145 410 pd \$0-accelerometer-stuff; #X obj 391 121 tgl 25 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X text 131 73 By default \, the wiimote does not report acceleration data \, IR data \, or any data from an attached extension (eg \, nunchuck). You must specifically enable each reporting mode:; #X msg 391 151 reportNunchuck \$1; #N canvas 78 173 920 244 \$0-nunchuck-stuff 0; #X obj 559 61 inlet; #X obj 559 96 unpack 0 0; #X obj 49 71 inlet; #X text 42 32 inlet #1: BUTTONS; #X text 294 35 inlet #2: ACCELERATION; #X obj 304 72 inlet; #X obj 304 105 unpack 0 0 0; #X text 567 32 inlet #3: STICK; #X obj 49 117 s nunchuk-btn-set; #X floatatom 559 141 5 0 0 0 - - -; #X floatatom 616 142 5 0 0 0 - - -; #X obj 558 168 split 140 240; #X obj 644 168 split 140 240; #X text 567 123 l r; #X text 627 123 u d; #X obj 558 221 s nunlr; #X msg 611 195 140; #X msg 697 196 140; #X obj 644 222 s nunud; #X obj 442 197 s nunlrc; #X obj 500 197 s nunudc; #X obj 343 144 s nc-accY-set; #X obj 304 163 s nc-accX-set; #X obj 383 125 s nc-accZ-set; #X connect 0 0 1 0; #X connect 1 0 9 0; #X connect 1 1 10 0; #X connect 2 0 8 0; #X connect 5 0 6 0; #X connect 6 0 22 0; #X connect 6 1 21 0; #X connect 6 2 23 0; #X connect 9 0 11 0; #X connect 9 0 19 0; #X connect 10 0 12 0; #X connect 10 0 20 0; #X connect 11 0 15 0; #X connect 11 1 16 0; #X connect 12 0 18 0; #X connect 12 1 17 0; #X connect 16 0 15 0; #X connect 17 0 18 0; #X restore 164 365 pd \$0-nunchuck-stuff; #N canvas 50 245 330 216 \$0-button-stuff 0; #X obj 41 33 inlet; #X obj 41 86 unpack 0 0; #X obj 41 140 s wii-btn01-set; #X obj 106 120 s wii-btn02-set; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 1 3 0; #X restore 138 432 pd \$0-button-stuff; #X obj 31 138 tgl 25 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X text 53 186 Enable metro to get accelerometer uppdates; #X text 53 197 (xyz wiimote \, xyz nunchuk \, ir); #X obj 24 7 inlet; #X obj 295 18 inlet; #X obj 350 18 inlet; #X obj 24 35 l2ork_wiimote_connect; #X obj 153 388 speedlim 50; #X obj 332 217 r rumble; #N canvas 89 49 842 510 filtering 0; #X floatatom 199 151 7 0 0 1 _PITCH #0-wii-pitch-set -; #X floatatom 284 152 7 0 0 1 _ROLL #0-wii-roll-set -; #X msg 176 114 reload; #X floatatom 256 237 7 0 0 0 - - -; #X floatatom 303 237 7 0 0 0 - - -; #X obj -97 117 t f f; #X obj -89 147 -; #X msg 344 125 uthresh \$1; #X msg 273 125 dthresh \$1; #X floatatom 274 106 5 0 0 0 - - -; #X floatatom 342 104 5 0 0 0 - - -; #X floatatom 359 237 5 0 0 0 - - -; #X floatatom 394 237 5 0 0 0 - - -; #X floatatom 429 237 5 0 0 0 - - -; #X obj 193 5 inlet; #X obj 173 61 unpack 0 0 0; #X obj -109 92 expr sqrt(pow($f1 \, 2) + pow($f2 \, 2) + pow($f3 \, 2)); #X obj 184 489 send filtered_hits; #X text -156 257 1 \, 2 left right; #X text -156 272 3 \, 4 up(r) down(r); #X floatatom 279 22 5 0 0 0 - - -; #X obj 279 1 r wii-btn02-set; #X obj 26 272 s trigger_slice; #X obj 38 250 gate; #X obj 48 200 t f f; #X floatatom 98 234 5 0 0 0 - - -; #X obj 31 230 > 0.4; #X obj 124 264 gate 1 0; #X msg 339 69 0; #X obj 106 214 gate 1 0; #X msg 309 69 1; #X obj 279 40 sel 4 8 12; #X msg 279 69 1; #X msg 369 69 0; #X obj 468 118 gate 2 1; #X obj 487 71 r toggle_ctrls; #X obj 487 92 + 1; #X obj 524 118 gate 2 1; #X msg 93 464 \$1 1; #X msg 128 464 \$1 2; #X msg 163 464 \$1 3; #X msg 198 464 \$1 4; #X msg 233 464 \$1 5; #X msg 268 464 \$1 6; #X msg 303 464 \$1 7; #X msg 337 464 \$1 8; #X obj 477 210 s toggle_hit_mutes; #X obj 464 188 s toggle_slices; #X text -156 287 5 \, 6 down(l) up(l); #X obj 98 175 print; #X obj 93 154 speedlim 100; #X obj 45 132 expr int($f1*100)/100; #X msg 232 108 debug; #X obj 183 180 pyext 6 6 wiimote2 acc_filter; #X obj 368 152 prepend toggle; #X obj 380 391 wii_filter 2 3 2 2 < -1 down(l) up(l); #X obj -10 377 gate 1 0; #X text -156 302 7 \, 8 sidewise(forward) forward(up); #X obj 58 366 wii_filter 2 3 3 3 < -0.05 back(up) forward(up); #X obj 360 431 wii_filter -3 -1 2 2 < -1 down(l) up(l); #X obj 358 295 wii_filter 1 3 -3 -1 < 0.35 up(r) down(r); #X obj 125 295 wii_filter 0 1 0 1 < -0.35 left right; #X obj -10 354 < 0; #X obj 242 264 r lr2; #X obj 206 264 r lr1; #X obj 278 264 r lr3; #X obj 314 264 r lr4; #X obj 350 264 r lr6; #X obj 422 264 r udr1; #X obj 464 264 r udr2; #X obj 506 264 r udr3; #X obj 548 264 r udr4; #X obj 590 264 r udr6; #X obj 354 336 wii_filter -3 -1 -3 -1 < 0.35 up(r) down(r); #X obj 493 315 * -1; #X obj 462 315 * -1; #X obj 417 361 r udl1; #X obj 459 361 r udl2; #X obj 501 361 r udl3; #X obj 543 361 r udl4; #X obj 585 361 r udl6; #X obj 478 411 * -1; #X obj 447 411 * -1; #X obj 126 337 r fb1; #X obj 168 337 r fb2; #X obj 210 337 r fb3; #X obj 252 337 r fb4; #X obj 294 337 r fb6; #X obj 400 208 s x; #X obj 425 208 s z; #X obj 288 208 s pitch; #X obj 337 208 s roll; #X obj 477 26 r lr5; #X obj 513 26 r udr5; #X obj 555 26 r udl5; #X obj 597 26 r fb5; #X connect 0 0 53 2; #X connect 1 0 53 3; #X connect 2 0 53 0; #X connect 3 0 27 1; #X connect 3 0 90 0; #X connect 4 0 55 1; #X connect 4 0 58 1; #X connect 4 0 59 1; #X connect 4 0 60 1; #X connect 4 0 61 1; #X connect 4 0 73 1; #X connect 4 0 91 0; #X connect 5 0 6 1; #X connect 5 1 6 0; #X connect 6 0 53 1; #X connect 7 0 53 1; #X connect 8 0 53 1; #X connect 9 0 8 0; #X connect 10 0 7 0; #X connect 11 0 60 3; #X connect 11 0 61 3; #X connect 11 0 73 3; #X connect 11 0 88 0; #X connect 12 0 58 3; #X connect 13 0 62 0; #X connect 13 0 89 0; #X connect 13 0 55 3; #X connect 13 0 59 3; #X connect 14 0 15 0; #X connect 15 0 16 0; #X connect 15 0 53 4; #X connect 15 1 16 1; #X connect 15 1 53 5; #X connect 15 2 16 2; #X connect 15 2 53 6; #X connect 16 0 5 0; #X connect 20 0 31 0; #X connect 21 0 20 0; #X connect 23 0 22 0; #X connect 24 0 23 1; #X connect 24 1 26 0; #X connect 26 0 23 0; #X connect 27 0 56 1; #X connect 27 0 58 0; #X connect 27 0 60 0; #X connect 27 0 61 0; #X connect 27 0 73 0; #X connect 28 0 34 1; #X connect 29 0 24 0; #X connect 29 0 25 0; #X connect 29 0 26 0; #X connect 30 0 37 1; #X connect 31 0 32 0; #X connect 31 0 33 0; #X connect 31 1 30 0; #X connect 31 1 28 0; #X connect 31 2 30 0; #X connect 31 2 32 0; #X connect 31 3 28 0; #X connect 31 3 33 0; #X connect 32 0 34 1; #X connect 33 0 37 1; #X connect 34 0 29 0; #X connect 34 0 47 0; #X connect 34 1 27 0; #X connect 34 1 46 0; #X connect 34 1 54 0; #X connect 35 0 36 0; #X connect 36 0 34 0; #X connect 36 0 37 0; #X connect 37 0 27 0; #X connect 37 0 46 0; #X connect 37 0 54 0; #X connect 37 1 29 0; #X connect 37 1 47 0; #X connect 38 0 17 0; #X connect 39 0 17 0; #X connect 40 0 17 0; #X connect 41 0 17 0; #X connect 42 0 17 0; #X connect 43 0 17 0; #X connect 44 0 17 0; #X connect 45 0 17 0; #X connect 50 0 49 0; #X connect 51 0 50 0; #X connect 52 0 53 1; #X connect 53 0 29 1; #X connect 53 0 55 2; #X connect 53 0 58 2; #X connect 53 0 59 2; #X connect 53 0 60 2; #X connect 53 0 61 2; #X connect 53 0 73 2; #X connect 53 1 3 0; #X connect 53 2 4 0; #X connect 53 3 11 0; #X connect 53 4 12 0; #X connect 53 5 13 0; #X connect 54 0 53 1; #X connect 55 0 42 0; #X connect 55 1 43 0; #X connect 56 0 55 0; #X connect 56 0 59 0; #X connect 58 0 44 0; #X connect 58 1 45 0; #X connect 59 0 42 0; #X connect 59 1 43 0; #X connect 60 0 40 0; #X connect 60 1 41 0; #X connect 61 0 38 0; #X connect 61 1 39 0; #X connect 62 0 56 0; #X connect 63 0 61 5; #X connect 64 0 61 4; #X connect 65 0 61 6; #X connect 66 0 61 7; #X connect 67 0 61 9; #X connect 68 0 60 4; #X connect 68 0 75 0; #X connect 69 0 60 5; #X connect 69 0 74 0; #X connect 70 0 60 6; #X connect 70 0 73 6; #X connect 71 0 60 7; #X connect 71 0 73 7; #X connect 72 0 60 9; #X connect 72 0 73 9; #X connect 73 0 40 0; #X connect 73 1 41 0; #X connect 74 0 73 4; #X connect 75 0 73 5; #X connect 76 0 55 4; #X connect 76 0 82 0; #X connect 77 0 55 5; #X connect 77 0 81 0; #X connect 78 0 55 6; #X connect 78 0 59 6; #X connect 79 0 55 7; #X connect 79 0 59 7; #X connect 80 0 55 9; #X connect 80 0 59 9; #X connect 81 0 59 4; #X connect 82 0 59 5; #X connect 83 0 58 4; #X connect 84 0 58 5; #X connect 85 0 58 6; #X connect 86 0 58 7; #X connect 87 0 58 9; #X connect 92 0 61 8; #X connect 93 0 60 8; #X connect 93 0 73 8; #X connect 94 0 55 8; #X connect 94 0 59 8; #X connect 95 0 58 8; #X restore 56 402 pd filtering; #X msg 56 73 discover; #X obj 32 168 metro 10; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 13 0; #X connect 2 1 8 0; #X connect 2 1 23 0; #X connect 2 3 12 0; #X connect 2 4 12 1; #X connect 2 5 12 2; #X connect 3 0 2 0; #X connect 4 0 6 0; #X connect 5 0 7 0; #X connect 6 0 2 0; #X connect 7 0 2 0; #X connect 9 0 11 0; #X connect 11 0 2 0; #X connect 14 0 25 0; #X connect 17 0 20 0; #X connect 18 0 9 0; #X connect 18 0 4 0; #X connect 19 0 14 0; #X connect 20 0 2 0; #X connect 21 0 8 0; #X connect 22 0 1 0; #X connect 24 0 2 0; #X connect 25 0 2 0; #X restore 157 -105 pd wiimote_stuff; #X obj -104 -70 l2ork_monitor; #X obj 203 -124 tgl 15 0 empty empty 2 17 7 0 10 -4034 -1 -1 0 1; #X obj 250 -124 tgl 15 0 empty empty 3 17 7 0 10 -4034 -1 -1 0 1; #X obj 157 -124 bng 15 250 50 0 empty empty 1 17 7 0 10 -4034 -1 -1 ; #X obj -104 -111 speedlim 100; #X obj -232 -40 l2ork_output~; #N canvas 70 71 839 488 sound 0; #X obj 152 460 outlet~; #X floatatom 611 31 5 0 0 0 - - -; #X obj 597 142 loadbang; #X obj 151 346 rj/e_pitchshift; #X msg 654 317 pitch \$1; #X obj 654 204 + 0; #X msg 597 164 0; #X obj 611 9 r nunchuk-btn-set; #X obj 611 52 change; #X obj 699 270 int; #X obj 654 226 r ptch_rnd; #X obj 654 247 gate 2 1; #X obj 654 295 +; #X obj 238 138 *~; #X obj 264 117 line~; #X obj 387 272 line~; #X obj 317 227 expr 1-$f1; #X obj 317 272 line~; #X obj 175 432 *~; #X obj 437 157 loadbang; #X msg 437 177 0; #X obj 325 53 loadbang; #X obj 264 53 r mod-lvl; #X obj 264 95 pack 0 10; #X obj 387 250 pack 0 10; #X obj 317 250 pack 0 10; #X obj 394 67 r nc-accX-set; #X obj 394 89 nbx 5 14 -1 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 394 157 change; #N canvas 10 69 450 300 ___monitor 0; #X obj 126 52 inlet~; #X obj 125 92 snapshot~; #X obj 196 124 metro 100; #X obj 213 71 loadbang; #X msg 211 97 1; #X floatatom 125 120 5 0 0 0 - - -; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 2 0 1 0; #X connect 3 0 4 0; #X connect 4 0 2 0; #X coords 0 -1 1 1 39 21 1 121 118; #X restore 385 407 pd ___monitor; #X msg 304 179 squelch \$1; #X obj 175 410 rj/e_vocoder myvocoder; #X obj 304 136 r squelch; #X obj 304 157 expr $f1*25+5; #X obj 654 185 nbx 8 14 -12 12 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 699 121 r nc-accY-set; #X msg 611 98 1; #X msg 645 98 0; #X obj 611 74 sel 2 3 0; #X obj 654 163 expr int((-$f1/1.5708)*12); #X msg 325 73 1; #X obj 150 298 *~; #X obj 166 276 line~; #X obj 177 210 loadbang; #X obj 166 254 pack 0 10; #X msg 177 230 1; #X obj 654 142 gate 1 0; #X obj 37 56 r r-tune; #X obj 166 186 r sndl-lvl; #X floatatom 37 111 5 0 0 0 - - -; #X obj 114 181 vline~; #X msg 114 160 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 20 197 *~; #X obj 81 222 *~; #X obj 480 264 r nunlrc; #X obj 535 264 r nunudc; #X floatatom 499 302 5 0 0 0 - - -; #X floatatom 535 302 5 0 0 0 - - -; #X obj 473 343 split 0 100; #X obj 473 365 split 160 255; #X msg 443 343 1; #X msg 443 365 3; #X obj 559 343 split 0 100; #X obj 559 365 split 160 255; #X msg 646 343 4; #X msg 646 365 2; #N canvas 102 71 917 488 hits 0; #X obj 166 92 vline~; #X msg 166 71 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 72 108 *~; #X obj 160 187 vline~; #X msg 160 166 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 66 203 *~; #X obj 163 280 vline~; #X msg 163 259 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 69 296 *~; #X obj 157 377 vline~; #X msg 157 356 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 63 393 *~; #X obj 619 99 vline~; #X msg 623 78 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 529 115 *~; #X obj 627 186 vline~; #X msg 627 165 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 533 202 *~; #X obj 624 281 vline~; #X msg 624 260 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 530 297 *~; #X obj 606 382 vline~; #X msg 606 361 1 \, 1 \$1 \$1 \, 0 0 \$1; #X obj 512 398 *~; #X obj 333 435 outlet~; #X obj 394 -29 r filtered_hits; #X obj 389 95 r custom_hit_sounds; #X msg 667 118 -1; #X msg 653 23 -1; #X msg 186 21 -1; #X msg 201 114 -1; #X msg 205 210 -1; #X msg 208 303 -1; #X msg 679 315 -1; #X msg 674 211 -1; #X obj 333 -9 s monitor; #X obj 384 120 route 1 2 3 4 5 6 7 8; #X obj 394 -9 unpack 0 0; #X obj 373 14 gate 8 0 ___________; #X obj 97 108 *~; #X obj 67 71 line~; #X obj 91 203 *~; #X obj 61 166 line~; #X obj 94 296 *~; #X obj 64 259 line~; #X obj 88 393 *~; #X obj 58 356 line~; #X obj 554 115 *~; #X obj 524 78 line~; #X obj 558 202 *~; #X obj 528 165 line~; #X obj 555 297 *~; #X obj 525 260 line~; #X obj 537 398 *~; #X obj 507 361 line~; #X obj 562 79 pack 0 10; #X obj 565 165 pack 0 10; #X obj 562 260 pack 0 10; #X obj 544 361 pack 0 10; #X obj 95 356 pack 0 10; #X obj 101 259 pack 0 10; #X obj 98 166 pack 0 10; #X obj 104 71 pack 0 10; #X obj 42 140 l2ork_audio_looper r ~/L2Ork/Exercises/Sounds/right.wav ; #X obj 44 238 l2ork_audio_looper ur ~/L2Ork/Exercises/Sounds/up-r.wav ; #X obj 39 335 l2ork_audio_looper dr ~/L2Ork/Exercises/Sounds/down-r.wav ; #X obj 499 338 l2ork_audio_looper fu ~/L2Ork/Exercises/Sounds/forward-u.wav ; #X obj 500 239 l2ork_audio_looper bu ~/L2Ork/Exercises/Sounds/back-u.wav ; #X obj 499 52 l2ork_audio_looper ul ~/L2Ork/Exercises/Sounds/down-l.wav ; #X obj 498 142 l2ork_audio_looper dl ~/L2Ork/Exercises/Sounds/up-l.wav ; #X obj 40 50 l2ork_audio_looper l ~/L2Ork/Exercises/Sounds/left.wav ; #X obj 56 -69 r mute_hits; #X obj 53 -47 select 1 2 3 4 5 6 7 8; #X msg -10 -11 0 100; #X msg 30 -11 0 100; #X msg 71 -11 0 100; #X msg 111 -12 0 100; #X msg 154 -12 0 100; #X msg 194 -12 0 100; #X msg 235 -12 0 100; #X msg 275 -13 0 100; #X connect 0 0 39 0; #X connect 1 0 0 0; #X connect 2 0 24 0; #X connect 3 0 41 0; #X connect 4 0 3 0; #X connect 5 0 24 0; #X connect 6 0 43 0; #X connect 7 0 6 0; #X connect 8 0 24 0; #X connect 9 0 45 0; #X connect 10 0 9 0; #X connect 11 0 24 0; #X connect 12 0 47 0; #X connect 13 0 12 0; #X connect 14 0 24 0; #X connect 15 0 49 0; #X connect 16 0 15 0; #X connect 17 0 24 0; #X connect 18 0 51 0; #X connect 19 0 18 0; #X connect 20 0 24 0; #X connect 21 0 53 0; #X connect 22 0 21 0; #X connect 23 0 24 0; #X connect 25 0 37 0; #X connect 26 0 36 0; #X connect 27 0 69 1; #X connect 28 0 68 1; #X connect 29 0 70 1; #X connect 30 0 63 1; #X connect 31 0 64 1; #X connect 32 0 65 1; #X connect 33 0 66 1; #X connect 34 0 67 1; #X connect 36 0 70 0; #X connect 36 1 63 0; #X connect 36 2 64 0; #X connect 36 3 65 0; #X connect 36 4 68 0; #X connect 36 5 69 0; #X connect 36 6 67 0; #X connect 36 7 66 0; #X connect 37 0 35 0; #X connect 37 0 38 1; #X connect 37 1 38 0; #X connect 38 0 29 0; #X connect 38 0 62 0; #X connect 38 1 30 0; #X connect 38 1 61 0; #X connect 38 2 31 0; #X connect 38 2 60 0; #X connect 38 3 32 0; #X connect 38 3 59 0; #X connect 38 4 28 0; #X connect 38 4 55 0; #X connect 38 5 27 0; #X connect 38 5 56 0; #X connect 38 6 34 0; #X connect 38 6 57 0; #X connect 38 7 33 0; #X connect 38 7 58 0; #X connect 39 0 2 1; #X connect 40 0 39 1; #X connect 41 0 5 1; #X connect 42 0 41 1; #X connect 43 0 8 1; #X connect 44 0 43 1; #X connect 45 0 11 1; #X connect 46 0 45 1; #X connect 47 0 14 1; #X connect 48 0 47 1; #X connect 49 0 17 1; #X connect 50 0 49 1; #X connect 51 0 20 1; #X connect 52 0 51 1; #X connect 53 0 23 1; #X connect 54 0 53 1; #X connect 55 0 48 0; #X connect 56 0 50 0; #X connect 57 0 52 0; #X connect 58 0 54 0; #X connect 59 0 46 0; #X connect 60 0 44 0; #X connect 61 0 42 0; #X connect 62 0 40 0; #X connect 63 0 5 0; #X connect 63 2 4 0; #X connect 64 0 8 0; #X connect 64 2 7 0; #X connect 65 0 11 0; #X connect 65 2 10 0; #X connect 66 0 23 0; #X connect 66 2 22 0; #X connect 67 0 20 0; #X connect 67 2 19 0; #X connect 68 0 14 0; #X connect 68 2 13 0; #X connect 69 0 17 0; #X connect 69 2 16 0; #X connect 70 0 2 0; #X connect 70 2 1 0; #X connect 71 0 72 0; #X connect 72 0 73 0; #X connect 72 1 74 0; #X connect 72 2 75 0; #X connect 72 3 76 0; #X connect 72 4 77 0; #X connect 72 5 78 0; #X connect 72 6 79 0; #X connect 72 7 80 0; #X connect 73 0 0 0; #X connect 74 0 3 0; #X connect 75 0 6 0; #X connect 76 0 9 0; #X connect 77 0 12 0; #X connect 78 0 15 0; #X connect 79 0 18 0; #X connect 80 0 21 0; #X restore 24 260 pd hits; #X obj 394 114 expr pow((($f1+1)/2) \, 0.1); #X obj 151 410 *~; #X obj 58 160 s length; #X obj 96 202 r monitor; #X obj 116 88 r snip_s; #X obj 170 88 r snip_e; #N canvas 397 97 416 462 modulators 0; #X floatatom 104 118 5 0 0 0 - - -; #X obj 104 95 r wii-btn02-set; #X obj 224 270 s ptch_rnd; #X msg 255 248 2; #X msg 224 248 1; #X obj 184 168 sel 8 0 4 12; #X obj 104 168 sel 4 0 8 12; #X obj 184 144 gate 2 1; #X obj 203 97 r toggle_ctrls; #X obj 203 118 + 1; #X connect 0 0 7 1; #X connect 1 0 0 0; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 4 0; #X connect 5 1 4 0; #X connect 5 2 3 0; #X connect 5 3 3 0; #X connect 6 0 4 0; #X connect 6 1 4 0; #X connect 6 2 3 0; #X connect 6 3 3 0; #X connect 7 0 5 0; #X connect 7 1 6 0; #X connect 8 0 9 0; #X connect 9 0 7 0; #X restore 721 226 pd modulators; #X obj 20 36 r l_sndl; #X obj 238 12 r l_mod; #X obj 238 32 l2ork_audio_looper mod; #X obj 20 133 l2ork_audio_looper slice; #X connect 1 0 8 0; #X connect 2 0 6 0; #X connect 3 0 31 0; #X connect 3 0 68 0; #X connect 4 0 3 1; #X connect 5 0 11 1; #X connect 6 0 34 0; #X connect 7 0 1 0; #X connect 8 0 38 0; #X connect 9 0 12 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 11 1 9 0; #X connect 12 0 4 0; #X connect 13 0 31 1; #X connect 14 0 13 1; #X connect 15 0 18 1; #X connect 16 0 25 0; #X connect 17 0 68 1; #X connect 18 0 0 0; #X connect 19 0 20 0; #X connect 20 0 16 0; #X connect 20 0 24 0; #X connect 21 0 40 0; #X connect 22 0 23 0; #X connect 23 0 14 0; #X connect 24 0 15 0; #X connect 25 0 17 0; #X connect 26 0 27 0; #X connect 27 0 67 0; #X connect 28 0 16 0; #X connect 28 0 24 0; #X connect 30 0 31 2; #X connect 31 0 18 0; #X connect 32 0 33 0; #X connect 33 0 30 0; #X connect 34 0 5 0; #X connect 35 0 46 1; #X connect 36 0 46 0; #X connect 37 0 46 0; #X connect 38 0 36 0; #X connect 38 1 37 0; #X connect 38 2 37 0; #X connect 39 0 34 0; #X connect 40 0 23 0; #X connect 41 0 3 0; #X connect 42 0 41 1; #X connect 43 0 45 0; #X connect 44 0 42 0; #X connect 45 0 44 0; #X connect 46 0 39 0; #X connect 47 0 49 0; #X connect 48 0 44 0; #X connect 49 0 77 0; #X connect 50 0 53 0; #X connect 51 0 50 0; #X connect 52 0 41 0; #X connect 53 0 52 1; #X connect 54 0 56 0; #X connect 55 0 57 0; #X connect 56 0 58 0; #X connect 57 0 62 0; #X connect 58 0 60 0; #X connect 58 1 59 0; #X connect 59 0 61 0; #X connect 62 0 64 0; #X connect 62 1 63 0; #X connect 63 0 65 0; #X connect 66 0 41 0; #X connect 67 0 28 0; #X connect 68 0 0 0; #X connect 70 0 53 1; #X connect 71 0 77 1; #X connect 72 0 77 2; #X connect 74 0 77 0; #X connect 75 0 76 0; #X connect 76 0 13 0; #X connect 77 0 52 0; #X connect 77 1 69 0; #X connect 77 2 51 0; #X restore -231 -140 pd sound; #N canvas 318 183 642 376 delays 0; #X text 437 209 <-- delay time; #X text 313 258 add the original and the delayed signal; #X obj 109 279 +~; #X text 357 235 feedback gain; #X text 313 258 add the original and the delayed signal; #X obj 282 262 +~; #X text 357 235 feedback gain; #X obj 148 303 delwrite~ l-del 2000; #X obj 318 284 delwrite~ r-del 2000; #X obj 299 235 *~ 0.6; #X obj 123 257 *~ 0.7; #X obj 272 143 pack 0 100; #X obj 114 171 pack 0 100; #X obj 114 192 line~; #X obj 260 191 *~; #X obj 272 167 line~; #X obj 80 225 *~; #X obj 113 48 inlet~; #X obj 202 352 outlet~; #X obj 272 51 expr $f1/1.5708; #X obj 272 73 nbx 8 14 0 1 0 0 empty empty empty 0 -8 0 10 -262144 -1 -1 0 256; #X obj 272 8 r nc-accY-set; #X obj 383 149 expr 250-($f1*200); #X obj 123 120 expr 400-($f1*360); #X obj 123 234 vd~ l-del 400; #X msg 123 142 \$1 1000; #X obj 300 213 vd~ r-del 250; #X obj 296 191 line~; #X msg 383 170 \$1 1000; #X obj 123 213 line~; #X obj 332 191 expr 0.6-$f1*0.3; #X obj 160 213 expr 0.7-$f1*0.3; #X floatatom 373 30 5 0 0 0 - - -; #X obj 373 8 r nunchuk-btn-set; #X obj 373 51 change; #X obj 272 30 gate 1 1; #X obj 373 118 expr abs(1-$i1); #X obj 373 73 select 1 3 0; #X msg 373 96 1; #X msg 402 96 0; #X connect 2 0 7 0; #X connect 2 0 18 0; #X connect 5 0 8 0; #X connect 5 0 18 0; #X connect 9 0 5 1; #X connect 10 0 2 1; #X connect 11 0 15 0; #X connect 12 0 13 0; #X connect 13 0 16 1; #X connect 14 0 5 0; #X connect 15 0 14 1; #X connect 16 0 2 0; #X connect 17 0 14 0; #X connect 17 0 16 0; #X connect 19 0 20 0; #X connect 20 0 11 0; #X connect 20 0 12 0; #X connect 20 0 22 0; #X connect 20 0 23 0; #X connect 20 0 30 0; #X connect 20 0 31 0; #X connect 21 0 35 1; #X connect 22 0 28 0; #X connect 23 0 25 0; #X connect 24 0 10 0; #X connect 25 0 29 0; #X connect 26 0 9 0; #X connect 27 0 26 0; #X connect 28 0 27 0; #X connect 29 0 24 0; #X connect 30 0 9 1; #X connect 31 0 10 1; #X connect 32 0 34 0; #X connect 33 0 32 0; #X connect 34 0 37 0; #X connect 35 0 19 0; #X connect 36 0 35 0; #X connect 37 0 38 0; #X connect 37 2 39 0; #X connect 38 0 36 0; #X connect 39 0 36 0; #X restore -213 -117 pd delays; #X obj -104 -132 r monitor; #X obj -231 -94 *~ 5; #X obj 322 78 l2ork_decrement; #X obj -17 -111 r mon_val; #X obj -104 -91 expr $f1*25+$f2; #X obj 306 -144 cnv 15 110 70 empty empty empty 20 12 0 14 -4034 -66577 0; #X obj -232 63 cnv 15 120 20 empty empty empty 20 12 0 14 -4034 -66577 0; #X text -232 64 4 (toggle db to 30); #X text 326 -118 and sounds; #X text 332 -131 settings; #N canvas 80 150 802 391 settings 0; #N canvas 73 111 733 423 slices 0; #X obj 5 10 cnv 15 430 100 empty empty empty 20 12 0 14 -4034 -66577 0; #X floatatom 21 39 7 0 0 0 - - -; #X floatatom 67 39 7 0 0 0 - - -; #X obj 21 126 sssad 1_start; #X obj 21 145 sssad 1_end; #X floatatom 126 39 7 0 0 0 - - -; #X floatatom 172 39 7 0 0 0 - - -; #X floatatom 229 40 7 0 0 0 - - -; #X floatatom 275 40 7 0 0 0 - - -; #X floatatom 335 40 7 0 0 0 - - -; #X floatatom 381 40 7 0 0 0 - - -; #X obj 107 126 sssad 2_start; #X obj 107 145 sssad 2_end; #X obj 193 126 sssad 3_start; #X obj 193 145 sssad 3_end; #X obj 279 126 sssad 4_start; #X obj 279 145 sssad 4_end; #X floatatom 21 64 7 0 0 0 - - -; #X floatatom 67 64 7 0 0 0 - - -; #X floatatom 126 64 7 0 0 0 - - -; #X floatatom 172 64 7 0 0 0 - - -; #X floatatom 229 64 7 0 0 0 - - -; #X floatatom 275 64 7 0 0 0 - - -; #X floatatom 334 64 7 0 0 0 - - -; #X floatatom 380 64 7 0 0 0 - - -; #X text 10 38 1; #X text 114 38 2; #X text 218 39 3; #X text 324 39 4; #X text 9 63 5; #X text 114 63 6; #X text 218 63 7; #X text 324 63 8; #X obj 114 239 s snip_s; #X obj 182 -63 inlet; #X obj 168 -41 gate 8 1 ______; #X obj 122 -12 t b; #X obj 148 -12 t b; #X obj 174 -12 t b; #X obj 200 -12 t b; #X obj 226 -12 t b; #X obj 252 -12 t b; #X obj 278 -12 t b; #X obj 304 -12 t b; #X obj 365 126 sssad 5_start; #X obj 365 145 sssad 5_end; #X obj 451 126 sssad 6_start; #X obj 451 145 sssad 6_end; #X obj 537 126 sssad 7_start; #X obj 537 145 sssad 7_end; #X obj 623 126 sssad 8_start; #X obj 623 145 sssad 8_end; #X floatatom 362 15 10 0 0 0 - length -; #X text 199 13 total file duration in ms:; #X obj 21 15 bng 15 250 50 0 empty empty hear_entire_file 17 7 0 10 -262144 -1 -1; #X msg 52 173 -1; #X obj 262 -83 r trigger_slice; #X obj 299 -63 s monitor; #X obj 225 -63 inlet; #X floatatom 32 -233 5 0 0 0 - - -; #X obj 32 -254 r wii-btn01-set; #X obj 32 -187 select 1 5 4 6 2 10 8 9; #X msg 13 -165 1; #X msg 40 -165 2; #X msg 68 -165 3; #X msg 97 -165 4; #X msg 123 -165 5; #X msg 152 -165 6; #X msg 183 -165 7; #X msg 209 -165 8; #X obj 140 216 pack 0 0; #X obj 158 174 t b; #X obj 349 -239 r nunlrc; #X obj 388 -215 r nunudc; #X obj 313 -167 f; #X obj 362 -166 f; #X obj 260 -142 pyext 2 1 wiimote2 joy_filter; #X msg 242 -172 reload; #X obj 152 -112 switch 2 1; #X obj 42 -109 r toggle_slices; #X obj 107 -85 gate 1 0; #X obj 21 -134 r toggle_joy; #X obj 100 -134 + 1; #X obj 262 -63 t b f; #X obj 32 -210 change; #X obj 258 -120 select 0; #X obj 405 -87 r toggle_hit_mutes; #X obj 403 -62 gate 1 0; #X obj 404 -40 send mute_hits; #X obj 273 -204 r other_pyexts; #X connect 1 0 3 1; #X connect 1 0 33 0; #X connect 1 0 70 0; #X connect 2 0 4 1; #X connect 2 0 70 1; #X connect 2 0 71 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 11 1; #X connect 5 0 33 0; #X connect 5 0 70 0; #X connect 6 0 12 1; #X connect 6 0 70 1; #X connect 6 0 71 0; #X connect 7 0 13 1; #X connect 7 0 33 0; #X connect 7 0 70 0; #X connect 8 0 14 1; #X connect 8 0 70 1; #X connect 8 0 71 0; #X connect 9 0 15 1; #X connect 9 0 33 0; #X connect 9 0 70 0; #X connect 10 0 16 1; #X connect 10 0 70 1; #X connect 10 0 71 0; #X connect 11 0 5 0; #X connect 12 0 6 0; #X connect 13 0 7 0; #X connect 14 0 8 0; #X connect 15 0 9 0; #X connect 16 0 10 0; #X connect 17 0 33 0; #X connect 17 0 44 1; #X connect 17 0 70 0; #X connect 18 0 45 1; #X connect 18 0 70 1; #X connect 18 0 71 0; #X connect 19 0 33 0; #X connect 19 0 46 1; #X connect 19 0 70 0; #X connect 20 0 47 1; #X connect 20 0 70 1; #X connect 20 0 71 0; #X connect 21 0 33 0; #X connect 21 0 48 1; #X connect 21 0 70 0; #X connect 22 0 49 1; #X connect 22 0 70 1; #X connect 22 0 71 0; #X connect 23 0 33 0; #X connect 23 0 50 1; #X connect 23 0 70 0; #X connect 24 0 51 1; #X connect 24 0 70 1; #X connect 24 0 71 0; #X connect 34 0 35 0; #X connect 35 0 36 0; #X connect 35 1 37 0; #X connect 35 2 38 0; #X connect 35 3 39 0; #X connect 35 4 40 0; #X connect 35 5 41 0; #X connect 35 6 42 0; #X connect 35 7 43 0; #X connect 36 0 1 0; #X connect 36 0 2 0; #X connect 37 0 5 0; #X connect 37 0 6 0; #X connect 38 0 7 0; #X connect 38 0 8 0; #X connect 39 0 9 0; #X connect 39 0 10 0; #X connect 40 0 17 0; #X connect 40 0 18 0; #X connect 41 0 19 0; #X connect 41 0 20 0; #X connect 42 0 21 0; #X connect 42 0 22 0; #X connect 43 0 23 0; #X connect 43 0 24 0; #X connect 44 0 17 0; #X connect 45 0 18 0; #X connect 46 0 19 0; #X connect 47 0 20 0; #X connect 48 0 21 0; #X connect 49 0 22 0; #X connect 50 0 23 0; #X connect 51 0 24 0; #X connect 54 0 55 0; #X connect 55 0 33 0; #X connect 56 0 83 0; #X connect 58 0 35 1; #X connect 59 0 84 0; #X connect 60 0 59 0; #X connect 61 0 62 0; #X connect 61 1 63 0; #X connect 61 2 64 0; #X connect 61 3 65 0; #X connect 61 4 66 0; #X connect 61 5 67 0; #X connect 61 6 68 0; #X connect 61 7 69 0; #X connect 62 0 78 1; #X connect 63 0 78 1; #X connect 64 0 78 1; #X connect 65 0 78 1; #X connect 66 0 78 1; #X connect 67 0 78 1; #X connect 68 0 78 1; #X connect 69 0 78 1; #X connect 70 0 33 0; #X connect 71 0 70 0; #X connect 72 0 74 0; #X connect 73 0 75 0; #X connect 74 0 76 1; #X connect 75 0 76 2; #X connect 76 0 85 0; #X connect 77 0 76 0; #X connect 78 0 80 1; #X connect 79 0 80 0; #X connect 80 0 35 0; #X connect 81 0 82 0; #X connect 82 0 78 0; #X connect 83 0 35 1; #X connect 83 1 57 0; #X connect 84 0 61 0; #X connect 85 1 78 2; #X connect 85 1 87 1; #X connect 86 0 87 0; #X connect 87 0 88 0; #X coords 0 -1 1 1 430 100 1 5 10; #X restore -214 -150 pd slices; #X obj -211 -30 l2ork_loadfile sndl; #X obj -211 34 l2ork_loadfile 1; #X obj -211 58 l2ork_loadfile 2; #X obj -211 82 l2ork_loadfile 3; #X obj -211 106 l2ork_loadfile 4; #X obj 231 -140; #N canvas 355 242 471 317 fine-tune 0; #X obj 30 -130 cnv 15 363 100 empty empty empty 20 12 0 14 -4034 -66577 0; #X obj 86 -127 nbx 5 18 -0.999 1 0 0 empty empty empty 0 -8 0 14 -260097 -1 -1 0 256; #X obj 174 -127 nbx 3 18 0 100 0 0 mod-lvl empty empty 0 -8 0 14 -257985 -1 -1 3 256; #X obj 106 38 sssad mod-level; #X obj 34 -95 nbx 3 18 0 100 0 0 sndc-lvl empty empty 0 -8 0 14 -257985 -1 -1 0 256; #X obj 221 91 sssad sndc-level; #X obj 34 -126 nbx 3 18 0 100 0 0 sndl-lvl empty empty 0 -8 0 14 -257985 -1 -1 1 256; #X text 32 -111 sndl lvl; #X text 32 -80 sndc lvl; #X obj 34 -64 nbx 3 18 0 100 0 0 sndr-lvl empty empty 0 -8 0 14 -257985 -1 -1 0 256; #X text 32 -49 sndr lvl; #X text 177 -112 mod lvl; #X obj 221 71 sssad sndl-level; #X obj 221 111 sssad sndr-level; #X text 84 -112 sndl tuning; #X obj 86 -95 nbx 5 18 -0.999 1 0 0 empty empty empty 0 -8 0 14 -260097 -1 -1 0 256; #X text 84 -80 sndc tuning; #X obj 86 -64 nbx 5 18 -0.999 1 0 0 empty empty empty 0 -8 0 14 -260097 -1 -1 0 256; #X text 84 -49 sndr tuning; #X obj 59 86 sssad l-tune; #X obj 58 106 sssad c-tune; #X obj 58 126 sssad r-tune; #X obj 33 17 s l-tune; #X obj 33 38 s c-tune; #X obj 33 59 s r-tune; #X obj 33 -4 + 1; #X obj 59 -4 + 1; #X obj 85 -4 + 1; #X obj 170 -95 tgl 15 0 toggle_ctrls empty swap_AB 18 8 0 8 -159808 -1 -1 0 1; #X obj 238 -45 sssad swap_AB; #X obj 170 -77 tgl 15 0 toggle_joy empty swap_joy 18 8 0 8 -159808 -1 -1 0 1; #X obj 238 -25 sssad swap_joy; #N canvas 575 47 430 512 state-saving 0; #X obj 13 315 cnv 15 400 300 empty empty Restore 300 12 0 14 -233017 -123526 0; #X obj 13 12 cnv 15 400 300 empty empty Save 300 12 0 14 -233017 -123526 0; #X obj 239 237 textfile; #X msg 128 138 clear; #X msg 313 220 print; #X obj 239 161 list prepend add; #X obj 239 187 list trim; #X obj 86 520 textfile; #X obj 86 550 s SSSAD; #X obj 86 462 until; #X msg 86 441 100; #X msg 30 503 print; #X text 81 572 also received inside sssad; #X obj 106 238 s SSSAD_ADMIN; #X obj 239 93 r SSSAD_ADMIN; #X obj 239 137 route persist; #X obj 239 115 list trim; #X msg 106 172 save; #X msg 120 211 set; #X obj 154 547 s SSSAD_ADMIN; #X msg 154 522 set; #X obj 84 59 savepanel; #X obj 84 102 t a b b; #X msg 84 285 write \$1; #X obj 84 31 bng 24 250 50 0 empty empty save 0 -6 0 8 -262144 -1 -1 ; #X obj 86 418 t b a; #X msg 133 463 read \$1 \, rewind; #X obj 86 337 bng 24 250 50 0 empty empty load 0 -6 0 8 -262144 -1 -1; #X obj 86 365 openpanel; #X text 118 441 Avoid loops. A bang normally also works.; #X obj 84 81 symbol; #X msg 27 63 bang; #X text 25 43 again; #X obj 86 395 symbol; #X msg 29 378 bang; #X text 27 358 again; #X text 40 597 Hint: get creative with the [OSCroute] external!; #X obj 41 10 inlet; #X obj 114 310 inlet; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 7 0 8 0; #X connect 7 1 9 1; #X connect 7 1 20 0; #X connect 9 0 7 0; #X connect 10 0 9 0; #X connect 11 0 7 0; #X connect 14 0 16 0; #X connect 15 0 5 0; #X connect 16 0 15 0; #X connect 17 0 13 0; #X connect 18 0 13 0; #X connect 20 0 19 0; #X connect 21 0 30 0; #X connect 22 0 23 0; #X connect 22 1 17 0; #X connect 22 2 3 0; #X connect 23 0 2 0; #X connect 24 0 21 0; #X connect 25 0 10 0; #X connect 25 1 26 0; #X connect 26 0 7 0; #X connect 27 0 28 0; #X connect 28 0 33 0; #X connect 30 0 22 0; #X connect 31 0 30 0; #X connect 33 0 25 0; #X connect 34 0 33 0; #X connect 37 0 24 0; #X connect 38 0 27 0; #X restore 259 25 pd state-saving; #X text 269 9 save load; #X obj 262 -86 bng 15 250 50 0 empty empty save 17 7 0 10 -262144 -1 -1; #X obj 316 -86 bng 15 250 50 0 empty empty load 17 7 0 10 -262144 -1 -1; #X connect 1 0 19 1; #X connect 1 0 25 0; #X connect 2 0 3 1; #X connect 3 0 2 0; #X connect 4 0 5 1; #X connect 5 0 4 0; #X connect 6 0 12 1; #X connect 9 0 13 1; #X connect 12 0 6 0; #X connect 13 0 9 0; #X connect 15 0 20 1; #X connect 15 0 26 0; #X connect 17 0 21 1; #X connect 17 0 27 0; #X connect 19 0 1 0; #X connect 20 0 15 0; #X connect 21 0 17 0; #X connect 25 0 22 0; #X connect 26 0 23 0; #X connect 27 0 24 0; #X connect 28 0 29 1; #X connect 29 0 28 0; #X connect 30 0 31 1; #X connect 31 0 30 0; #X connect 34 0 32 0; #X connect 35 0 32 1; #X coords 0 -1 1 1 363 100 1 30 -130; #X restore 220 -150 pd fine-tune; #X obj -211 130 l2ork_loadfile 5; #X obj -211 154 l2ork_loadfile 6; #X obj -211 178 l2ork_loadfile 7; #X obj -211 202 l2ork_loadfile 8; #X obj -211 -6 l2ork_loadfile mod; #X text -139 -47 load sliced sound and vocoder mod sound; #X text -72 18 load 8 hit sounds; #X text -113 -168 set loop points for the sliced sound; #X text 275 -169 general settings; #N canvas 5 47 180 138 loading_files 0; #X obj 26 -16 r loadfiles; #X obj 26 25 s l_sndl; #X obj 26 45 s l_mod; #X obj 26 65 s custom_hit_sounds; #X obj 26 5 route sndl mod; #X connect 0 0 4 0; #X connect 4 0 1 0; #X connect 4 1 2 0; #X connect 4 2 3 0; #X restore 193 208 pd loading_files; #N canvas 2 131 970 360 wiimote_hit_calibration 0; #X obj 0 0 cnv 15 390 60 empty empty wiimote_output 20 12 0 8 -180204 -66577 0; #X obj 5 40 nbx 5 14 -1e+37 1e+37 0 0 empty pitch pitch 0 -8 0 8 -262144 -1 -1 0 256; #X obj 53 40 nbx 5 14 -1e+37 1e+37 0 0 empty roll roll 0 -8 0 8 -262144 -1 -1 0 256; #X obj 101 40 nbx 5 14 -1e+37 1e+37 0 0 empty x x 0 -8 0 8 -262144 -1 -1 0 256; #X obj 149 40 nbx 5 14 -1e+37 1e+37 0 0 empty z z 0 -8 0 8 -262144 -1 -1 0 256; #X obj 0 64 cnv 15 390 192 empty empty adjust_settings 20 12 0 8 -4034 -66577 0; #X text 6 90 left-right; #X obj 73 94 nbx 5 14 -1e+37 1e+37 0 0 lr1 empty pitch_lo 0 -8 0 8 -262144 -1 -1 0 256; #X obj 181 94 nbx 5 14 -1e+37 1e+37 0 0 lr3 empty roll_lo 0 -8 0 8 -262144 -1 -1 -1 256; #X obj 306 94 nbx 5 14 -1e+37 1e+37 0 0 lr6 empty separator_(x) 0 -8 0 8 -262144 -1 -1 -0.1 256; #X obj 126 94 nbx 5 14 -1e+37 1e+37 0 0 lr2 empty pitch_hi 0 -8 0 8 -262144 -1 -1 1 256; #X obj 229 94 nbx 5 14 -1e+37 1e+37 0 0 lr4 empty roll_hi 0 -8 0 8 -262144 -1 -1 1 256; #X obj 72 131 nbx 5 14 -1e+37 1e+37 0 0 udr1 empty pitch_lo 0 -8 0 8 -262144 -1 -1 1 256; #X obj 180 131 nbx 5 14 -1e+37 1e+37 0 0 udr3 empty roll_lo 0 -8 0 8 -262144 -1 -1 -2 256; #X obj 305 131 nbx 5 14 -1e+37 1e+37 0 0 udr6 empty separator_(x) 0 -8 0 8 -262144 -1 -1 0.7 256; #X obj 125 131 nbx 5 14 -1e+37 1e+37 0 0 udr2 empty pitch_hi 0 -8 0 8 -262144 -1 -1 3 256; #X obj 228 131 nbx 5 14 -1e+37 1e+37 0 0 udr4 empty roll_hi 0 -8 0 8 -262144 -1 -1 -2 256; #X text 9 130 up(right); #X text 3 142 down(right); #X obj 72 181 nbx 5 14 -1e+37 1e+37 0 0 udl1 empty pitch_lo 0 -8 0 8 -262144 -1 -1 2 256; #X obj 180 181 nbx 5 14 -1e+37 1e+37 0 0 udl3 empty roll_lo 0 -8 0 8 -262144 -1 -1 2 256; #X obj 305 181 nbx 5 14 -1e+37 1e+37 0 0 udl6 empty separator_(x) 0 -8 0 8 -262144 -1 -1 -0.3 256; #X obj 125 181 nbx 5 14 -1e+37 1e+37 0 0 udl2 empty pitch_hi 0 -8 0 8 -262144 -1 -1 3 256; #X obj 228 181 nbx 5 14 -1e+37 1e+37 0 0 udl4 empty roll_hi 0 -8 0 8 -262144 -1 -1 3 256; #X text 10 179 up(left); #X text 6 191 down(left); #X obj 72 236 nbx 5 14 -1e+37 1e+37 0 0 fb1 empty pitch_lo 0 -8 0 8 -262144 -1 -1 2 256; #X obj 180 236 nbx 5 14 -1e+37 1e+37 0 0 fb3 empty roll_lo 0 -8 0 8 -262144 -1 -1 -3 256; #X obj 305 236 nbx 5 14 -1e+37 1e+37 0 0 fb6 empty separator_(z!) 0 -8 0 8 -262144 -1 -1 -0.5 256; #X obj 125 236 nbx 5 14 -1e+37 1e+37 0 0 fb2 empty pitch_hi 0 -8 0 8 -262144 -1 -1 3 256; #X obj 228 236 nbx 5 14 -1e+37 1e+37 0 0 fb4 empty roll_hi 0 -8 0 8 -262144 -1 -1 -3 256; #X text 234 9 1 \, 2 left right; #X text 234 20 3 \, 4 up(r) down(r); #X text 234 42 7 \, 8 back(up) forward(up); #X text 234 31 5 \, 6 down(l) up(l); #X text 234 -2 hit sound legend:; #X obj 398 114 sssad hit_lr_1; #X obj 398 147 sssad hit_udr_1; #X obj 398 184 sssad hit_udl_1; #X obj 489 134 sssad hit_lr_2; #X obj 580 134 sssad hit_lr_3; #X obj 671 134 sssad hit_lr_4; #X obj 858 135 sssad hit_lr_6; #X obj 878 168 sssad hit_udr_6; #X obj 686 167 sssad hit_udr_4; #X obj 590 167 sssad hit_udr_3; #X obj 494 167 sssad hit_udr_2; #X obj 878 205 sssad hit_udl_6; #X obj 686 204 sssad hit_udl_4; #X obj 590 204 sssad hit_udl_3; #X obj 494 204 sssad hit_udl_2; #X obj 398 221 sssad hit_fb_1; #X obj 494 241 sssad hit_fb_2; #X obj 590 241 sssad hit_fb_3; #X obj 686 241 sssad hit_fb_4; #X obj 866 242 sssad hit_fb_6; #X text 11 222 fwd(up); #X text 9 233 bkwd(up); #X obj 72 197 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 8 -191407 -1 -1 -3 256; #X obj 125 198 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 8 -191407 -1 -1 -2 256; #X obj 72 314 * -1; #X obj 102 314 * -1; #X obj 762 134 sssad hit_lr_5; #X obj 782 167 sssad hit_udr_5; #X obj 782 204 sssad hit_udl_5; #X obj 776 241 sssad hit_fb_5; #X symbolatom 280 93 3 0 0 0 - - -; #X symbolatom 279 131 3 0 0 0 - - -; #X symbolatom 279 180 3 0 0 0 - - -; #X symbolatom 279 234 3 0 0 0 - - -; #X obj 361 282 s lr5; #X obj 397 282 s udr5; #X obj 439 282 s udl5; #X obj 481 282 s fb5; #X obj 72 148 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 8 -191407 -1 -1 -3 256; #X obj 124 148 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 8 -191407 -1 -1 -1 256; #X obj 172 320 * -1; #X obj 202 320 * -1; #X connect 7 0 36 1; #X connect 8 0 40 1; #X connect 9 0 42 1; #X connect 10 0 39 1; #X connect 11 0 41 1; #X connect 12 0 37 1; #X connect 12 0 77 0; #X connect 13 0 45 1; #X connect 14 0 43 1; #X connect 15 0 46 1; #X connect 15 0 76 0; #X connect 16 0 44 1; #X connect 19 0 38 1; #X connect 19 0 61 0; #X connect 20 0 49 1; #X connect 21 0 47 1; #X connect 22 0 50 1; #X connect 22 0 60 0; #X connect 23 0 48 1; #X connect 26 0 51 1; #X connect 27 0 53 1; #X connect 28 0 55 1; #X connect 29 0 52 1; #X connect 30 0 54 1; #X connect 36 0 7 0; #X connect 37 0 12 0; #X connect 38 0 19 0; #X connect 39 0 10 0; #X connect 40 0 8 0; #X connect 41 0 11 0; #X connect 42 0 9 0; #X connect 43 0 14 0; #X connect 44 0 16 0; #X connect 45 0 13 0; #X connect 46 0 15 0; #X connect 47 0 21 0; #X connect 48 0 23 0; #X connect 49 0 20 0; #X connect 50 0 22 0; #X connect 51 0 26 0; #X connect 52 0 29 0; #X connect 53 0 27 0; #X connect 54 0 30 0; #X connect 55 0 28 0; #X connect 60 0 58 0; #X connect 61 0 59 0; #X connect 62 0 66 0; #X connect 63 0 67 0; #X connect 64 0 68 0; #X connect 65 0 69 0; #X connect 66 0 62 1; #X connect 66 0 70 0; #X connect 67 0 71 0; #X connect 67 0 63 1; #X connect 68 0 64 1; #X connect 68 0 72 0; #X connect 69 0 73 0; #X connect 69 0 65 1; #X connect 76 0 74 0; #X connect 77 0 75 0; #X coords 0 -1 1 1 390 256 1 0 0; #X restore 193 -46 pd wiimote_hit_calibration; #X restore 326 -99 pd settings; #X text 313 -144 5 set up custom; #X connect 2 0 0 1; #X connect 3 0 0 2; #X connect 4 0 0 0; #X connect 5 0 13 0; #X connect 7 0 8 0; #X connect 7 0 10 0; #X connect 8 0 10 0; #X connect 9 0 5 0; #X connect 10 0 6 0; #X connect 12 0 13 1; #X connect 13 0 1 0;