On Sun, Dec 09, 2012 at 08:05:11PM +0100, Julien Claassen wrote: > Hello Alexandre! > The NL3 does not allow remapping of controller numbers. Couldn't > you have a function to disable this special rule for a device? I'm > sure my Waldorf Microwave XT also uses all the controllers, that it > can possibly get away with. I could check all the controllers of the > NordLead at least to see, which it uses. Hey, could you try the diff below? It's supposed to pass controllers 33-35,37-63 as simple controllers rather than low nibbles of 14-bit CCs. 0,6,32,36,98,99,100,01 are special and widely used by modern devices; so they may require adding new functions and parameters in midish. Is there no way at all to remap them? Index: conv.c =================================================================== RCS file: /var/anoncvs/midish/midish/conv.c,v retrieving revision 1.9 diff -u -p -r1.9 conv.c --- conv.c 30 Jun 2011 12:30:31 -0000 1.9 +++ conv.c 10 Dec 2012 09:11:48 -0000 @@ -199,23 +199,20 @@ conv_packev(struct statelist *l, unsigne conv_setctl(l, ev); break; } - rev->ctl_num = ev->ctl_num; - rev->ctl_val = ev->ctl_val << 7; } else if (ev->ctl_num < 64) { num = ev->ctl_num - 32; - if (!EVCTL_ISFINE(xctlset, num)) { - break; + if (EVCTL_ISFINE(xctlset, num)) { + val = conv_getctl(l, ev, num); + if (val == EV_UNDEF) + break; + rev->ctl_num = num; + rev->ctl_val = ev->ctl_val + (val << 7); + goto done; } - val = conv_getctl(l, ev, num); - if (val == EV_UNDEF) { - break; - } - rev->ctl_num = num; - rev->ctl_val = ev->ctl_val + (val << 7); - } else { - rev->ctl_num = ev->ctl_num; - rev->ctl_val = ev->ctl_val << 7; } + rev->ctl_num = ev->ctl_num; + rev->ctl_val = ev->ctl_val << 7; + done: rev->cmd = EV_XCTL; rev->dev = ev->dev; rev->ch = ev->ch;Received on Tue, 11 Dec 2012 00:58:30 +0100
This archive was generated by hypermail 2.1.8 : Wed Nov 08 2017 - 16:32:24 CET