From 5ab4185257e25c0a26701dc7bc2ad5cfa0e52d0c Mon Sep 17 00:00:00 2001 From: Zvika Haramaty Date: Mon, 17 Feb 2020 02:03:23 +0200 Subject: [PATCH] SCI: using only channels 1-8 on GM devices There are many situations that GM sounds worse than MT, even for games that were written for GM. I think this is related to this. And, there is a note in midi.cpp: // NOTE: SSCI uses channels 1 through 8 for General MIDI as well, in the drivers I checked Also, issue #6686 reports that using the "higher" channels causes problem on a real SC-55. This change solves at least: #6686, #9735 and #10297 --- engines/sci/sound/drivers/midi.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/engines/sci/sound/drivers/midi.cpp b/engines/sci/sound/drivers/midi.cpp index 7c90adbb407..1aa0b0f8b27 100644 --- a/engines/sci/sound/drivers/midi.cpp +++ b/engines/sci/sound/drivers/midi.cpp @@ -465,15 +465,11 @@ void MidiPlayer_Midi::send(uint32 b) { // We return 1 for mt32, because if we remap channels to 0 for mt32, those won't get played at all // NOTE: SSCI uses channels 1 through 8 for General MIDI as well, in the drivers I checked int MidiPlayer_Midi::getFirstChannel() const { - if (_mt32Type != kMt32TypeNone) - return 1; - return 0; + return 1; } int MidiPlayer_Midi::getLastChannel() const { - if (_mt32Type != kMt32TypeNone) - return 8; - return 15; + return 8; } void MidiPlayer_Midi::setVolume(byte volume) {