max v2; #N vpatcher 12 44 1005 768; #P origin -214 192; #P window setfont "Sans Serif" 9.; #P window linecount 1; #P newex 678 188 49 196617 delay 20; #P newex 276 86 52 196617 metro 10; #P newex 340 18 53 196617 t b b b l; #P newex 571 584 132 196617 jit.matrix test 3 char 12 7; #P user jit.pwindow 570 440 242 142 0 1 0 0 1 0; #P newex 571 415 53 196617 jit.concat; #P message 678 210 33 196617 clear; #P user jit.pwindow 649 256 22 142 0 1 0 0 1 0; #P message 972 1049 132 196617 setcell \$1 \$2 val \$3 \$4 \$5; #P newex 650 234 111 196617 jit.matrix 3 char 0 12; #P user jit.pwindow 394 256 242 142 0 1 0 0 1 0; #P newex 378 232 44 196617 jit.split; #P newex 340 -218 88 196617 makenote 60 200; #P number 500 -68 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 460 -69 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 420 -70 35 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 206 65 62 196617 setall 0 0 0; #P newex 206 33 48 196617 loadbang; #P toggle 276 65 15 0; #P number 500 -109 31 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 460 -110 30 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 420 -109 31 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P message 58 206 33 196617 clear; #P message 340 -8 132 196617 setcell \$1 \$2 val \$3 \$4 \$5; #P newex 340 -36 171 196617 pack 1 1 1 1 1; #P number 380 -109 24 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P number 340 -109 22 9 0 0 0 3 0 0 0 221 221 221 222 222 222 0 0 0; #P newex 340 -138 172 196617 unpack 1 1 1 1 1; #N coll ; #T flags 1 0; #T 0 0 0 255 0 0; #T 1 0 1 192 50 255; #T 2 0 2 255 255 0; #T 3 0 3 65 0 102; #T 4 0 4 255 255 255; #T 5 0 5 136 38 0; #T 6 0 6 0 190 255; #T 7 0 7 255 72 0; #T 8 0 8 250 84 255; #T 9 0 9 0 170 54; #T 10 0 10 120 120 120; #T 11 0 11 0 19 222; #T 12 0 12 255 0 0; #P newobj 340 -166 53 196617 coll; #P user jit.pwindow 57 283 242 142 0 1 0 0 1 0; #P newex 58 246 138 196617 jit.matrix test 3 char 12 12; #P newex 340 -191 34 196617 % 12; #P window linecount 2; #P comment 179 7 100 196617 Initiate Update and All Black on Load; #P window linecount 1; #P newex 341 -238 92 196617 midiparse; #P newex 341 -258 37 196617 midiin; #P user panel 173 -1 112 57; #X brgb 0 200 0; #X frgb 0 0 0; #X border 1; #X rounded 0; #X shadow 0; #X done; #P window linecount 3; #P comment 770 221 100 196617 Current Note column \, which gets added to matrix; #P window linecount 2; #P comment 431 226 100 196617 Ditch the oldest notes; #P window linecount 3; #P comment 654 401 58 196617 Add new notes on right; #P window linecount 2; #P comment 536 943 100 196617 Feedback into Matrix Test; #P window linecount 8; #P comment 28 -248 244 196617 Scrolling Live view of what midi notes you are playing....As you play another note \, it is added to right column \, and the farthest left column is discarded....ie \, everything in the matrix is copied over one column \, and new data is placed in last column...the shift should be triggered by a new note detection.....obviously this is a bastardized version that does not quite work; #P window linecount 3; #P comment 401 -183 100 196617 Designate colors for certain pitches \, and location in matrix; #P window linecount 10; #P comment 31 -124 100 196617 As you can see \, it scrolls even when no note is pressed \, way too fast...I tried adding a speedlimit to matrix updates \, but no such luck. any elegeant way to shift matrix data down?; #P fasten 41 0 12 0 281 236 63 236; #P fasten 26 0 12 0 211 236 63 236; #P fasten 20 0 12 0 63 218 63 218; #P fasten 12 0 13 0 63 273 63 273; #P connect 25 0 26 0; #P fasten 25 0 24 0 211 59 281 59; #P connect 24 0 41 0; #P connect 9 0 30 0; #P connect 30 0 11 0; #P connect 11 0 14 0; #P connect 14 0 15 0; #P connect 15 0 16 0; #P connect 16 0 18 0; #P connect 18 0 19 0; #P connect 19 0 40 0; #P connect 8 0 9 0; #P fasten 13 0 31 0 63 437 353 437 353 222 383 222 383 231; #P connect 15 1 17 0; #P connect 17 0 18 1; #P connect 31 1 32 0; #P connect 15 2 21 0; #P connect 21 0 27 0; #P connect 29 0 18 2; #P connect 15 3 22 0; #P connect 22 0 28 0; #P connect 27 0 18 3; #P connect 15 4 23 0; #P connect 23 0 29 0; #P connect 28 0 18 4; #P connect 32 0 37 0; #P connect 37 0 38 0; #P connect 38 0 39 0; #P connect 35 0 37 1; #P fasten 40 3 33 0 387 116 655 116; #P fasten 41 0 33 0 281 200 655 200; #P connect 36 0 33 0; #P connect 33 0 35 0; #P connect 40 2 42 0; #P connect 42 0 36 0; #P pop;