diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/agos/detection_tables.h | 150 | ||||
-rw-r--r-- | engines/agos/intern.h | 3 | ||||
-rw-r--r-- | engines/agos/sound.cpp | 2 |
3 files changed, 153 insertions, 2 deletions
diff --git a/engines/agos/detection_tables.h b/engines/agos/detection_tables.h index 90e5a84829..cf7dab9d85 100644 --- a/engines/agos/detection_tables.h +++ b/engines/agos/detection_tables.h @@ -2401,6 +2401,156 @@ static const AGOSGameDescription gameDescriptions[] = { GF_TALKIE }, + // Simon the Sorcerer 2 - Russian Fan with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "e26d162e573587f4601b88701292212c", 58851 }, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", 18089 }, + { "simon2.gme", GAME_GMEFILE, "f1727b15b3e389f0248363d890751ee7", 19695662 }, + { "stripped.txt", GAME_STRFILE, "e229f84d46fa83f99b4a7115679f3fb6", 171 }, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", 513 }, + { NULL, 0, NULL, 0} + }, + Common::RU_RUS, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE + }, + + // Simon the Sorcerer 2 - Polish with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "657fd873f5d0637097ee02315b447e6f", -1}, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", -1}, + { "simon2.gme", GAME_GMEFILE, "212fa5638a76869537d092d4e76524c0", 20037221}, + { "stripped.txt", GAME_STRFILE, "e229f84d46fa83f99b4a7115679f3fb6", -1}, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", -1}, + { NULL, 0, NULL, 0} + }, + Common::PL_POL, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE | GF_WAVSFX + }, + + // Simon the Sorcerer 2 - Hebrew with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "952a2b1be23c3c609ba8d988a9a1627d", 53366}, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", 18089}, + { "simon2.gme", GAME_GMEFILE, "40ac2d4763d97a9268023dc6db17e2ce", 20017302}, + { "stripped.txt", GAME_STRFILE, "de9dbc24158660e153483fa0cf6c3172", 171}, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", 513}, + { NULL, 0, NULL, 0} + }, + Common::HE_ISR, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE | GF_WAVSFX + }, + + // Simon the Sorcerer 2 - Italian with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "3e11d400bea0638f360a724687005cd1", -1}, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", -1}, + { "simon2.gme", GAME_GMEFILE, "510d012bcc5775a8513923163ffe4458", 20066490}, + { "stripped.txt", GAME_STRFILE, "bea6843fb9f3b2144fcb146d62db0b9a", -1}, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", -1}, + { NULL, 0, NULL, 0} + }, + Common::IT_ITA, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE | GF_WAVSFX + }, + + // Simon the Sorcerer 2 - Czech with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "eb8217f9ec4628d12ca606033146c48c", -1}, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", -1}, + { "simon2.gme", GAME_GMEFILE, "50188f9fde0d063c824476972936a52f", 20054555}, + { "stripped.txt", GAME_STRFILE, "e229f84d46fa83f99b4a7115679f3fb6", -1}, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", -1}, + { NULL, 0, NULL, 0} + }, + Common::CZ_CZE, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE | GF_WAVSFX + }, + + // Simon the Sorcerer 2 - Spanish with MT-32 fix (25th Anniversary Edition) + { + { + "simon2", + "25th Anniversary Edition", + + { + { "gsptr30", GAME_BASEFILE, "268dc322aa73bcf27bb016b8e8ceb889", -1}, + { "icon.dat", GAME_ICONFILE, "72096a62d36e6034ea9fecc13b2dbdab", -1}, + { "simon2.gme", GAME_GMEFILE, "2b997db3c677fb3d2174c73ba2cc53e1", 20049608}, + { "stripped.txt", GAME_STRFILE, "d13753796bd81bf313a2449f34d8b112", -1}, + { "tbllist", GAME_TBLFILE, "2082f8d02075e590300478853a91ffd9", -1}, + { NULL, 0, NULL, 0} + }, + Common::ES_ESP, + Common::kPlatformDOS, + ADGF_CD, + GUIO0() + }, + + GType_SIMON2, + GID_SIMON2, + GF_TALKIE | GF_WAVSFX + }, + #ifdef ENABLE_AGOS2 // The Feeble Files - English DOS Demo { diff --git a/engines/agos/intern.h b/engines/agos/intern.h index 3f5c8c519b..afc0cad08e 100644 --- a/engines/agos/intern.h +++ b/engines/agos/intern.h @@ -256,7 +256,8 @@ enum GameFeatures { GF_PLANAR = 1 << 7, GF_DEMO = 1 << 8, GF_PACKED = 1 << 9, - GF_BROKEN_FF_RATING = 1 << 10 + GF_BROKEN_FF_RATING = 1 << 10, + GF_WAVSFX = 1 << 11 }; enum GameFileTypes { diff --git a/engines/agos/sound.cpp b/engines/agos/sound.cpp index 13b5bf761c..ae2412feb4 100644 --- a/engines/agos/sound.cpp +++ b/engines/agos/sound.cpp @@ -519,7 +519,7 @@ void Sound::loadSfxTable(const char *gameFilename, uint32 base) { delete _effects; const bool dataIsUnsigned = true; - if (_vm->getPlatform() == Common::kPlatformWindows) + if (_vm->getPlatform() == Common::kPlatformWindows || (_vm->getFeatures() & GF_WAVSFX)) _effects = new WavSound(_mixer, gameFilename, base); else _effects = new VocSound(_mixer, gameFilename, dataIsUnsigned, base, false); |