Fix for bank select MSB.

pull/32/head
Holger Wirtz 5 years ago
parent 743dc51f42
commit fb9bd37352
  1. 15
      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);
@ -963,7 +964,7 @@ void handleSystemExclusive(byte * sysex, uint len)
LCDML.OTHER_updateFunc();
LCDML.loop_menu();
/*
// manipulate UI names and numbers
strncpy(voice_name[instance_id], (char *)&sysex[151], sizeof(voice_name[instance_id]) - 1);

Loading…
Cancel
Save