diff options
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/sound/midiparser_sci.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp index 4766118f52..cb43f6c3a1 100644 --- a/engines/sci/sound/midiparser_sci.cpp +++ b/engines/sci/sound/midiparser_sci.cpp @@ -672,9 +672,11 @@ void MidiParser_SCI::setVolume(byte volume) { case SCI_VERSION_1_EARLY: case SCI_VERSION_1_LATE: - // sending volume change to all used channels + // sending volume change to all currently mapped channels + // FIXME?: maybe we should better store new volume if music isn't playing currently and adjust volume + // when playing for (int i = 0; i < 15; i++) - if (_channelUsed[i]) + if (_channelRemap[i] != -1) sendToDriver(0xB0 + i, 7, _volume); break; |