aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/sci/sound/midiparser_sci.cpp5
-rw-r--r--engines/sci/sound/softseq/adlib.cpp2
2 files changed, 5 insertions, 2 deletions
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp
index d733384b65..62faadab67 100644
--- a/engines/sci/sound/midiparser_sci.cpp
+++ b/engines/sci/sound/midiparser_sci.cpp
@@ -82,6 +82,11 @@ bool MidiParser_SCI::loadMusic(SoundResource::Track *track, MusicEntry *psnd, in
_loopTick = 0;
_channelsUsed = 0;
+ // Send a velocity off signal to all channels
+ for (int i = 0; i < 16; ++i) {
+ _driver->send(0xB0 | i, 0x4E, 0); // Reset velocity
+ }
+
return true;
}
diff --git a/engines/sci/sound/softseq/adlib.cpp b/engines/sci/sound/softseq/adlib.cpp
index 62912fc0e1..4674cb5e33 100644
--- a/engines/sci/sound/softseq/adlib.cpp
+++ b/engines/sci/sound/softseq/adlib.cpp
@@ -293,8 +293,6 @@ void MidiDriver_AdLib::send(uint32 b) {
#endif
break;
case 0x4e:
- // FIXME: this flag should be set to 0 when a new song is started
- debug(3, "ADLIB: Setting velocity control flag for channel %i to %i", channel, op2);
_channels[channel].enableVelocity = op2;
break;
case SCI_MIDI_CHANNEL_NOTES_OFF: