home *** CD-ROM | disk | FTP | other *** search
- desc:MIDI transpose
-
- slider1:0<-64,64,1>transpose amount (semitones)
- slider2:1<-16,16,1>premultiply amount
- slider3:0<0,127,1>note range min
- slider4:127<0,127,1>note range max
-
- @init
-
- @slider
-
- @block
- while (
- midirecv(ts,msg1,msg23) ?
- (
- m=msg1&240;
- vel = (msg23/256)|0;
- note=msg23&127;
- (m == 9*16 || m == 8*16) && note >= slider3 && note <= slider4 ?
- (
- note = (note*slider2)+slider1;
- note|=0;
- note >= 0 && note < 128 ? (
- midisend(ts,msg1,note+vel*256); // send note on
- );
- ) :
- (
- midisend(ts,msg1,msg23); // passthru
- );
- bla=1;
- );
- );
-
-