diff options
author | Matthew Hoops | 2012-09-20 11:58:04 -0400 |
---|---|---|
committer | Matthew Hoops | 2012-09-20 11:58:04 -0400 |
commit | 2a9d98003e07890dc74694b62bd694d1fc8a19f3 (patch) | |
tree | 3a7f8f84f143d5059e903feb7101d5f07779030d /engines/scumm | |
parent | fc6ab89b504e15ea14208301acd727893d113381 (diff) | |
download | scummvm-rg350-2a9d98003e07890dc74694b62bd694d1fc8a19f3.tar.gz scummvm-rg350-2a9d98003e07890dc74694b62bd694d1fc8a19f3.tar.bz2 scummvm-rg350-2a9d98003e07890dc74694b62bd694d1fc8a19f3.zip |
SCUMM: Restrict the Mac m68k v5 driver to MI2/Indy4
Shouldn't be used with MI1
Diffstat (limited to 'engines/scumm')
-rw-r--r-- | engines/scumm/detection.cpp | 4 | ||||
-rw-r--r-- | engines/scumm/imuse/imuse_part.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/scumm.cpp | 2 | ||||
-rw-r--r-- | engines/scumm/scumm.h | 4 | ||||
-rw-r--r-- | engines/scumm/sound.cpp | 2 |
5 files changed, 7 insertions, 7 deletions
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp index 156d1fbee4..e5c3023380 100644 --- a/engines/scumm/detection.cpp +++ b/engines/scumm/detection.cpp @@ -242,8 +242,8 @@ static Common::String generateFilenameForDetection(const char *pattern, Filename return result; } -bool ScummEngine::isMacM68kV5() const { - return _game.platform == Common::kPlatformMacintosh && _game.version == 5 && !(_game.features & GF_MAC_CONTAINER); +bool ScummEngine::isMacM68kIMuse() const { + return _game.platform == Common::kPlatformMacintosh && (_game.id == GID_MONKEY2 || _game.id == GID_INDY4) && !(_game.features & GF_MAC_CONTAINER); } struct DetectorDesc { diff --git a/engines/scumm/imuse/imuse_part.cpp b/engines/scumm/imuse/imuse_part.cpp index bb319df784..9c720b76bf 100644 --- a/engines/scumm/imuse/imuse_part.cpp +++ b/engines/scumm/imuse/imuse_part.cpp @@ -372,7 +372,7 @@ void Part::set_instrument(uint b) { // We emulate this by introducing a special instrument, which sets // the instrument via sysEx_customInstrument. This seems to be // exclusively used for special sound effects like the "spit" sound. - if (g_scumm->isMacM68kV5()) { + if (g_scumm->isMacM68kIMuse()) { _instrument.macSfx(b); } else { _instrument.program((byte)b, _player->isMT32()); diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp index 2150bbc4f1..c9c9e991e4 100644 --- a/engines/scumm/scumm.cpp +++ b/engines/scumm/scumm.cpp @@ -1839,7 +1839,7 @@ void ScummEngine::setupMusic(int midi) { bool multi_midi = ConfMan.getBool("multi_midi") && _sound->_musicType != MDT_NONE && _sound->_musicType != MDT_PCSPK && (midi & MDT_ADLIB); bool useOnlyNative = false; - if (isMacM68kV5()) { + if (isMacM68kIMuse()) { // We setup this driver as native MIDI driver to avoid playback // of the Mac music via a selected MIDI device. nativeMidiDriver = new MacM68kDriver(_mixer); diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h index 555b7087a1..700389414c 100644 --- a/engines/scumm/scumm.h +++ b/engines/scumm/scumm.h @@ -719,8 +719,8 @@ public: bool openFile(BaseScummFile &file, const Common::String &filename, bool resourceFile = false); - /** Is this game a Mac m68k v5 game? */ - bool isMacM68kV5() const; + /** Is this game a Mac m68k v5 game with iMuse? */ + bool isMacM68kIMuse() const; protected: int _resourceHeaderSize; diff --git a/engines/scumm/sound.cpp b/engines/scumm/sound.cpp index 32152420a5..60a7fbe968 100644 --- a/engines/scumm/sound.cpp +++ b/engines/scumm/sound.cpp @@ -250,7 +250,7 @@ void Sound::playSound(int soundID) { // Support for sampled sound effects in Monkey Island 1 and 2 else if (_vm->_game.platform != Common::kPlatformFMTowns // The Macintosh version of MI2 just ignores SBL effects. - && !_vm->isMacM68kV5() + && !_vm->isMacM68kIMuse() && READ_BE_UINT32(ptr) == MKTAG('S','B','L',' ')) { debugC(DEBUG_SOUND, "Using SBL sound effect"); |