diff options
author | athrxx | 2011-09-17 21:13:14 +0200 |
---|---|---|
committer | athrxx | 2011-09-17 21:15:46 +0200 |
commit | 149fdbfb60b90d6659cc4ad426335e376b707311 (patch) | |
tree | 7375c855e1184d08f499b3a2b3c5cb666b0adff9 | |
parent | 0d1d974e14f80dda31e306716b4f9e779c6c35fc (diff) | |
download | scummvm-rg350-149fdbfb60b90d6659cc4ad426335e376b707311.tar.gz scummvm-rg350-149fdbfb60b90d6659cc4ad426335e376b707311.tar.bz2 scummvm-rg350-149fdbfb60b90d6659cc4ad426335e376b707311.zip |
SCUMM FM-TOWNS: fix another regression
(pcm sound effects broken in 69adb13c2f3cadd4dac2bba8164aa0b8a9400abc)
-rw-r--r-- | engines/scumm/sound.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp index d8235206f8..ba8c6e2277 100644 --- a/engines/scumm/sound.cpp +++ b/engines/scumm/sound.cpp @@ -1150,19 +1150,20 @@ int ScummEngine::readSoundResource(ResId idx) { if ((_sound->_musicType == MDT_PCSPK || _sound->_musicType == MDT_PCJR) && pri != 11) pri = -1; - // We only allow ADL resources when AdLib or FM-Towns is used as - // primary audio output. This fixes some odd sounds when Indy and - // Sophia leave Atlantis with the submarine in Indy4. (Easy to - // check with bootparam 4061 in the CD version). It seems the game - // only contains a ROL resource for sound id 60. Formerly we tried - // to play that via the AdLib or FM-Towns audio driver resulting - // in strange noises. Now we behave like the original did. + // We only allow ADL, SBL and TOWS resources when AdLib + // or FM-Towns is used as primary audio output. This fixes some + // odd sounds when Indy and Sophia leave Atlantis with the + // submarine in Indy4. (Easy to check with bootparam 4061 in + // the CD version). It seems the game only contains a ROL resource + // for sound id 60. Formerly we tried to play that via the AdLib + // or FM-Towns audio driver resulting in strange noises. Now we + // behave like the original did. // We make an exception for Macintosh, which uses priority 2 for // its sound resources, and Amiga games, which feature only ROL // resources, since we are a doing Midi -> AdLib conversion for // these. - if ((_sound->_musicType == MDT_ADLIB || _sound->_musicType == MDT_TOWNS) && pri != 10 - && pri != 2 && _game.platform != Common::kPlatformAmiga) + if ((_sound->_musicType == MDT_ADLIB || _sound->_musicType == MDT_TOWNS) && pri != 16 + && pri != 15 && pri != 10 && pri != 2 && _game.platform != Common::kPlatformAmiga) pri = -1; debugC(DEBUG_RESOURCE, " tag: %s, total_size=%d, pri=%d", tag2str(tag), size, pri); |