|
|
|
@ -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); |
|
|
|
|