diff options
author | JP Cimalando <jpcima@users.noreply.github.com> | 2018-05-10 15:03:47 +0200 |
---|---|---|
committer | JP Cimalando <jpcima@users.noreply.github.com> | 2018-05-10 15:20:02 +0200 |
commit | 6545b648cded507215be777864194f4cc961f877 (patch) | |
tree | 827b47cc0c72e08943fff5aa7c7c10262a9ebf32 /src/adlmidi_midiplay.cpp | |
parent | f729563b683c3ac7adcf07d2f4dffcdfa49fd605 (diff) | |
download | libADLMIDI-6545b648cded507215be777864194f4cc961f877.tar.gz libADLMIDI-6545b648cded507215be777864194f4cc961f877.tar.bz2 libADLMIDI-6545b648cded507215be777864194f4cc961f877.zip |
meaningful handling of pitch bend sensitivity
Diffstat (limited to 'src/adlmidi_midiplay.cpp')
-rw-r--r-- | src/adlmidi_midiplay.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/adlmidi_midiplay.cpp b/src/adlmidi_midiplay.cpp index 39d7bff..e7489b1 100644 --- a/src/adlmidi_midiplay.cpp +++ b/src/adlmidi_midiplay.cpp @@ -2358,8 +2358,14 @@ void MIDIplay::SetRPN(unsigned MidCh, unsigned value, bool MSB) switch(addr + nrpn * 0x10000 + MSB * 0x20000) { case 0x0000 + 0*0x10000 + 1*0x20000: // Pitch-bender sensitivity - Ch[MidCh].bendsense = value / 8192.0; + { + if (MSB) + Ch[MidCh].bendsense_msb = value; + else + 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)); |