tags: jsfx # Version 1 The purpose here is when transcribing synth patches to help understand them, I want two close notes on the keyboard, e.g. C and D, to map to the C on one or other. This ``` desc: jda simple midi split 1 slider1:63<0,127,1>split point slider2:0<-4,4,1>left octave slider3:0<-12,12,1>left semi slider4:0<-4,4,1>right octave slider5:0<-12,12,1>right semi @init setsplit = 0; @slider splitpoint = slider1; ltrans = slider2*12 + slider3; rtrans = slider4*12 + slider5; @block while(midirecv(offset,msg1,msg2,msg3)) ( status = msg1 & 0xF0; ( status == 0xB0 && msg2 == 14 ) ? ( // change split point setsplit = 1; ) : ( status == 0x90 || status == 0x80 ) ? ( ( setsplit == 1 && status == 0x90 ) ? ( slider1 = msg2; sliderchange(slider1); setsplit = 0; ) : ( msg2 < slider1 ) ? ( msg1 = status; m = msg1; msg2 += ltrans; ( msg2 < 0 ) ? ( msg2 = 0); ( msg2 > 127 ) ? ( msg2 = 127); midisend(offset,msg1,msg2,msg3); ) : ( msg1 = status | 1; n = msg1; msg2 += rtrans; ( msg2 < 0 ) ? ( msg2 = 0); ( msg2 > 127 ) ? ( msg2 = 127); midisend(offset,msg1,msg2,msg3); ); ) : ( midisend(offset,msg1,msg2,msg3); ); ); ```