aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorTravis Howell2006-05-28 03:47:20 +0000
committerTravis Howell2006-05-28 03:47:20 +0000
commit21f50b3267160bb73c9757a9c07b3c13e745f667 (patch)
treed01cbe633940296394d76d697bbe8c000a8d12ba /engines/scumm
parent76d722d941c788f7660809abbad422c1bf14ec6e (diff)
downloadscummvm-rg350-21f50b3267160bb73c9757a9c07b3c13e745f667.tar.gz
scummvm-rg350-21f50b3267160bb73c9757a9c07b3c13e745f667.tar.bz2
scummvm-rg350-21f50b3267160bb73c9757a9c07b3c13e745f667.zip
Use different method to detect V1 demo of Maniac Mansion, since md5 matches the full version
svn-id: r22695
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/plugin.cpp3
-rw-r--r--engines/scumm/scumm-md5.h6
-rw-r--r--engines/scumm/scumm.cpp5
3 files changed, 9 insertions, 5 deletions
diff --git a/engines/scumm/plugin.cpp b/engines/scumm/plugin.cpp
index d4c1b038e1..118796db19 100644
--- a/engines/scumm/plugin.cpp
+++ b/engines/scumm/plugin.cpp
@@ -208,10 +208,9 @@ static const ObsoleteGameID obsoleteGameIDsTable[] = {
static const GameSettings gameVariantsTable[] = {
{"maniac", "C64", GID_MANIAC, 0, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, Common::kPlatformC64},
{"maniac", "V1", GID_MANIAC, 1, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, Common::kPlatformPC},
- {"maniac", "V1 Demo", GID_MANIAC, 1, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE | GF_DEMO, Common::kPlatformPC},
{"maniac", "NES", GID_MANIAC, 1, 0, MDT_NONE, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, Common::kPlatformNES},
{"maniac", "V2", GID_MANIAC, 2, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, UNK},
- {"maniac", "V2 Demo", GID_MANIAC, 2, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE | GF_DEMO, Common::kPlatformPC},
+ {"maniac", "Demo", GID_MANIAC, 2, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE | GF_DEMO, Common::kPlatformPC},
{"zak", "V1", GID_ZAK, 1, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, UNK},
{"zak", "V2", GID_ZAK, 2, 0, MDT_PCSPK, GF_SMALL_HEADER | GF_NO_SCALING | GF_16COLOR | GF_USE_KEY | GF_OLD_BUNDLE, UNK},
diff --git a/engines/scumm/scumm-md5.h b/engines/scumm/scumm-md5.h
index 26376da59a..9b7c383710 100644
--- a/engines/scumm/scumm-md5.h
+++ b/engines/scumm/scumm-md5.h
@@ -1,5 +1,5 @@
/*
- This file was generated by the md5table tool on Sat May 27 00:00:31 2006
+ This file was generated by the md5table tool on Sun May 28 03:45:21 2006
DO NOT EDIT MANUALLY!
*/
@@ -140,7 +140,7 @@ static const MD5Table md5table[] = {
{ "3de99ef0523f8ca7958faa3afccd035a", "spyfox", "HE 100", "", Common::EN_ANY, Common::kPlatformUnknown },
{ "3df6ead57930488bc61e6e41901d0e97", "fbear", "HE 61", "", Common::EN_ANY, Common::kPlatformMacintosh },
{ "3e48298920fab9b7aec5a971e1bd1fab", "pajama3", "", "Demo", Common::EN_GRB, Common::kPlatformWindows },
- { "40564ec47da48a67787d1f9bd043902a", "maniac", "V2 Demo", "Demo", Common::EN_ANY, Common::kPlatformPC },
+ { "40564ec47da48a67787d1f9bd043902a", "maniac", "Demo", "Demo", Common::EN_ANY, Common::kPlatformPC },
{ "4167a92a1d46baa4f4127d918d561f88", "tentacle", "", "CD", Common::EN_ANY, Common::kPlatformUnknown },
{ "425205754fa749f4f0b0dd9d09fa45fd", "football", "", "Demo", Common::EN_ANY, Common::kPlatformUnknown },
{ "430bc518017b6fac046f58bab6baad5d", "monkey2", "", "", Common::JA_JPN, Common::kPlatformFMTowns },
@@ -261,7 +261,7 @@ static const MD5Table md5table[] = {
{ "7e151c17adf624f1966c8fc5827c95e9", "puttputt", "HE 61", "", Common::EN_ANY, Common::kPlatform3DO },
{ "7ea2da67ebabea4ac20cee9f4f9d2934", "airport", "", "Demo", Common::EN_ANY, Common::kPlatformMacintosh },
{ "7edd665bbede7ea8b7233f8e650be6f8", "samnmax", "", "CD", Common::FR_FRA, Common::kPlatformUnknown },
- { "7f45ddd6dbfbf8f80c0c0efea4c295bc", "maniac", "V1 Demo", "Demo", Common::EN_ANY, Common::kPlatformPC },
+ { "7f45ddd6dbfbf8f80c0c0efea4c295bc", "maniac", "V1", "V1", Common::EN_ANY, Common::kPlatformPC },
{ "7f945525abcd48015adf1632637a44a1", "pajama", "", "Demo", Common::FR_FRA, Common::kPlatformUnknown },
{ "7fc6cdb46b4c9d384c52327f4bca6416", "football", "", "", Common::EN_ANY, Common::kPlatformUnknown },
{ "810a9da887aefa597b0cf3c77d262897", "BluesABCTime", "", "Demo", Common::EN_ANY, Common::kPlatformUnknown },
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 7704a0a2c1..af963c0860 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -1288,6 +1288,11 @@ void ScummEngine_c64::resetScumm() {
void ScummEngine_v2::resetScumm() {
ScummEngine::resetScumm();
+ // To detect V1 demo of Maniac Mansion
+ if (_game.id == GID_MANIAC && !strcmp(_filenamePattern.pattern, "%02d.MAN")) {
+ _game.features |= GF_DEMO;
+ }
+
if (_game.platform == Common::kPlatformNES) {
initNESMouseOver();
_switchRoomEffect2 = _switchRoomEffect = 6;