aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/detection.cpp
diff options
context:
space:
mode:
authorTarek Soliman2011-10-23 22:17:47 -0500
committerTarek Soliman2011-10-24 16:28:36 -0500
commit636789441a7f8666f1c44d941574c3d3e1e49e76 (patch)
tree8a464aabbcd44b61eb0d9ac2bc44549c2352602d /engines/scumm/detection.cpp
parente2e01dcd35331171a91689e0eebaab1c61206a07 (diff)
downloadscummvm-rg350-636789441a7f8666f1c44d941574c3d3e1e49e76.tar.gz
scummvm-rg350-636789441a7f8666f1c44d941574c3d3e1e49e76.tar.bz2
scummvm-rg350-636789441a7f8666f1c44d941574c3d3e1e49e76.zip
SCUMM: Fix detection of talkie Monkey Island
Thanks md5 for the idea to fix the null pointer Thanks clone2727 for feedback on this and other implementations
Diffstat (limited to 'engines/scumm/detection.cpp')
-rw-r--r--engines/scumm/detection.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index 21292fbdcc..a1ad630815 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -649,8 +649,15 @@ static void detectGames(const Common::FSList &fslist, Common::List<DetectorResul
dr.language = detectLanguage(fslist, g->id);
// Detect if there are speech files in this unknown game
- if (detectSpeech(fslist, g))
- warning("FIXME: fix NOSPEECH fallback"); //dr.game.guioptions &= ~GUIO_NOSPEECH;
+ if (detectSpeech(fslist, g)) {
+ if (strchr(dr.game.guioptions, GUIO_NOSPEECH[0]) != NULL) {
+ if (g->id == GID_MONKEY || g->id == GID_MONKEY2)
+ // TODO: This may need to be updated if something important gets added in the top detection table for these game ids
+ dr.game.guioptions = GUIO1(GUIO_NONE);
+ else
+ warning("FIXME: fix NOSPEECH fallback");
+ }
+ }
// Add the game/variant to the candidates list if it is consistent
// with the file(s) we are seeing.