diff options
author | Martin Kiewitz | 2010-06-19 19:06:58 +0000 |
---|---|---|
committer | Martin Kiewitz | 2010-06-19 19:06:58 +0000 |
commit | ed50ecd62d21e728480710e64aea79c5d132ac77 (patch) | |
tree | 31c65989e2e034f4491eae1472716fe905b9300a /engines/sci/sound/music.cpp | |
parent | 996bd693e0ad45d5d5d599b6d5e320c1f52afe8a (diff) | |
download | scummvm-rg350-ed50ecd62d21e728480710e64aea79c5d132ac77.tar.gz scummvm-rg350-ed50ecd62d21e728480710e64aea79c5d132ac77.tar.bz2 scummvm-rg350-ed50ecd62d21e728480710e64aea79c5d132ac77.zip |
SCI: make channel remapping stop using channel 0 for mt32 - fixes playback accordingly (like lsl1 at the start)
svn-id: r50056
Diffstat (limited to 'engines/sci/sound/music.cpp')
-rw-r--r-- | engines/sci/sound/music.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/sci/sound/music.cpp b/engines/sci/sound/music.cpp index 96257b1f9d..6e12ac7409 100644 --- a/engines/sci/sound/music.cpp +++ b/engines/sci/sound/music.cpp @@ -103,6 +103,9 @@ void SciMusic::init() { } _bMultiMidi = ConfMan.getBool("multi_midi"); + + // Find out what the first possible channel is (used, when doing channel remapping) + _driverFirstChannel = _pMidiDrv->getFirstChannel(); } void SciMusic::clearPlayList() { @@ -241,7 +244,7 @@ int16 SciMusic::tryToOwnChannel(MusicEntry *caller, int16 bestChannel) { return bestChannel; } // otherwise look for unused channel - for (int channelNr = 0; channelNr < 15; channelNr++) { + for (int channelNr = _driverFirstChannel; channelNr < 15; channelNr++) { if (!_usedChannel[channelNr]) { _usedChannel[channelNr] = caller; return channelNr; |