Fix for bank select MSB.

pull/32/head
Holger Wirtz 5 years ago
parent 743dc51f42
commit fb9bd37352
  1. 13
      MicroDexed.ino

@ -585,11 +585,12 @@ void handleControlChange(byte inChannel, byte inCtrl, byte inValue)
#endif
switch (inCtrl) {
case 0:
if (inValue < MAX_BANKS - 1)
{
configuration.performance.bank[instance_id] = inValue;
}
case 0: // BankSelect MSB
#ifdef DEBUG
Serial.println(F("BANK-SELECT MSB CC"));
#endif
configuration.performance.bank[instance_id] = constrain((inValue << 7)&configuration.performance.bank[instance_id], 0, MAX_BANKS - 1);
load_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id);
break;
case 1:
#ifdef DEBUG
@ -637,7 +638,7 @@ void handleControlChange(byte inChannel, byte inCtrl, byte inValue)
break;
case 32: // BankSelect LSB
#ifdef DEBUG
Serial.println(F("BANK-SELECT CC"));
Serial.println(F("BANK-SELECT LSB CC"));
#endif
configuration.performance.bank[instance_id] = constrain(inValue, 0, MAX_BANKS - 1);
load_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id);

Loading…
Cancel
Save