aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/adlmidi_midiplay.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/adlmidi_midiplay.cpp b/src/adlmidi_midiplay.cpp
index e7489b1..6bc2366 100644
--- a/src/adlmidi_midiplay.cpp
+++ b/src/adlmidi_midiplay.cpp
@@ -2358,14 +2358,13 @@ void MIDIplay::SetRPN(unsigned MidCh, unsigned value, bool MSB)
switch(addr + nrpn * 0x10000 + MSB * 0x20000)
{
case 0x0000 + 0*0x10000 + 1*0x20000: // Pitch-bender sensitivity
- {
- if (MSB)
- Ch[MidCh].bendsense_msb = value;
- else
- Ch[MidCh].bendsense_lsb = value;
+ Ch[MidCh].bendsense_msb = value;
+ Ch[MidCh].updateBendSensitivity();
+ break;
+ case 0x0000 + 0*0x10000 + 0*0x20000: // Pitch-bender sensitivity LSB
+ Ch[MidCh].bendsense_lsb = value;
Ch[MidCh].updateBendSensitivity();
break;
- }
case 0x0108 + 1*0x10000 + 1*0x20000: // Vibrato speed
if(value == 64) Ch[MidCh].vibspeed = 1.0;
else if(value < 100) Ch[MidCh].vibspeed = 1.0 / (1.6e-2 * (value ? value : 1));