summaryrefslogtreecommitdiff
path: root/sys/src/games
diff options
context:
space:
mode:
authorqwx <qwx@sciops.net>2023-01-15 20:32:09 +0000
committerqwx <qwx@sciops.net>2023-01-15 20:32:09 +0000
commit4c5e5174f82c67b0b2a15a08369a57ec0b03e916 (patch)
tree3e93419da362ed8d42d8648b468e31d0de7e3067 /sys/src/games
parentc1afd1158c54e93890168c7af3174ec1ac0914b8 (diff)
games/dmid: add control 00h, bank select
akai mpk mini 2 and similar midi pianos: this is a nice way to select opl3 banks 0-127 using a knob, while the pads are mapped to percussions on channel 9
Diffstat (limited to 'sys/src/games')
-rw-r--r--sys/src/games/dmid.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/src/games/dmid.c b/sys/src/games/dmid.c
index 3168fafe5..b0807974b 100644
--- a/sys/src/games/dmid.c
+++ b/sys/src/games/dmid.c
@@ -413,13 +413,13 @@ ev(Trk *x)
case 0xb:
m = get8(x);
switch(n){
- case 0x00: case 0x01: case 0x20: break;
+ case 0x00: if(m < Ninst) c->i = inst + m; break;
case 0x07: c->v = m; resetchan(c); break;
case 0x0a: c->pan = m < 32 ? 1<<4 : m > 96 ? 1<<5 : 3<<4; resetchan(c); break;
default: dprint("\nunknown controller %d", n);
}
break;
- case 0xc: c->i = inst + n; break;
+ case 0xc: if(n < Ninst) c->i = inst + n; break;
case 0xe:
n = get8(x) << 7 | n;
c->bend = n - 0x4000 / 2;