[Scummvm-git-logs] scummvm master -> 16706dc63f676b4ac92338493ae5503def3a5604
sev-
sev at scummvm.org
Sat Nov 28 18:06:05 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
16706dc63f SCUMM: Allow detecting games from disabled subengines
Commit: 16706dc63f676b4ac92338493ae5503def3a5604
https://github.com/scummvm/scummvm/commit/16706dc63f676b4ac92338493ae5503def3a5604
Author: Cameron Cawley (ccawley2011 at gmail.com)
Date: 2020-11-28T19:06:01+01:00
Commit Message:
SCUMM: Allow detecting games from disabled subengines
Changed paths:
engines/scumm/detection.cpp
engines/scumm/detection_steam.h
engines/scumm/detection_tables.h
engines/scumm/metaengine.cpp
diff --git a/engines/scumm/detection.cpp b/engines/scumm/detection.cpp
index 552df4f4c9..f4dc526395 100644
--- a/engines/scumm/detection.cpp
+++ b/engines/scumm/detection.cpp
@@ -130,23 +130,7 @@ DetectedGames ScummMetaEngineDetection::detectGames(const Common::FSList &fslist
}
const char *ScummMetaEngineDetection::getName() const {
- return "SCUMM ["
-
-#if defined(ENABLE_SCUMM_7_8) && defined(ENABLE_HE)
- "all games"
-#else
-
- "v0-v6 games"
-
-#if defined(ENABLE_SCUMM_7_8)
- ", v7 & v8 games"
-#endif
-#if defined(ENABLE_HE)
- ", HE71+ games"
-#endif
-
-#endif
- "]";
+ return "SCUMM";
}
const char *ScummMetaEngineDetection::getOriginalCopyright() const {
diff --git a/engines/scumm/detection_steam.h b/engines/scumm/detection_steam.h
index 20a8696bcd..83a802a581 100644
--- a/engines/scumm/detection_steam.h
+++ b/engines/scumm/detection_steam.h
@@ -34,10 +34,8 @@ static const SteamIndexFile steamIndexFiles[] = {
{ GID_INDY4, Common::kPlatformMacintosh, "atlantis.%03d", "ATLANTIS.000", "The Fate of Atlantis", 260224, 12035 },
{ GID_LOOM, Common::kPlatformWindows, "%03d.LFL", "000.LFL", "Loom.exe", 187248, 8307 },
{ GID_LOOM, Common::kPlatformMacintosh, "%03d.LFL", "000.LFL", "Loom", 170464, 8307 },
-#ifdef ENABLE_SCUMM_7_8
{ GID_DIG, Common::kPlatformWindows, "dig.la%d", "DIG.LA0", "The Dig.exe", 340632, 16304 },
{ GID_DIG, Common::kPlatformMacintosh, "dig.la%d", "DIG.LA0", "The Dig", 339744, 16304 },
-#endif
{ 0, Common::kPlatformUnknown, nullptr, nullptr, nullptr, 0, 0 }
};
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h
index e4720c6bfb..7c8d94d515 100644
--- a/engines/scumm/detection_tables.h
+++ b/engines/scumm/detection_tables.h
@@ -70,12 +70,9 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "indyloom", "Indiana Jones and the Last Crusade & Loom" },
{ "indyzak", "Indiana Jones and the Last Crusade & Zak McKracken" },
{ "zakloom", "Zak McKracken & Loom" },
-
-#ifdef ENABLE_SCUMM_7_8
{ "ft", "Full Throttle" },
{ "dig", "The Dig" },
{ "comi", "The Curse of Monkey Island" },
-#endif
{ "activity", "Putt-Putt & Fatty Bear's Activity Pack" },
{ "brstorm", "Bear Stormin'" },
@@ -84,9 +81,6 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "funpack", "Putt-Putt's Fun Pack" },
{ "puttmoon", "Putt-Putt Goes to the Moon" },
{ "puttputt", "Putt-Putt Joins the Parade" },
-
-#ifdef ENABLE_HE
-#ifdef USE_RGB_COLOR
{ "arttime", "Blue's Art Time Activities" },
{ "baseball2001", "Backyard Baseball 2001" },
{ "Baseball2003", "Backyard Baseball 2003" },
@@ -99,7 +93,6 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "Soccer2004", "Backyard Soccer 2004" },
{ "SoccerMLS", "Backyard Soccer MLS Edition" },
{ "spyozon", "SPY Fox 3: Operation Ozone" },
-#endif
{ "airport", "Let's Explore the Airport with Buzzy" },
{ "balloon", "Putt-Putt and Pep's Balloon-O-Rama" },
{ "baseball", "Backyard Baseball" },
@@ -137,7 +130,6 @@ static const PlainGameDescriptor gameDescriptions[] = {
{ "thinker1", "Big Thinkers First Grade" },
{ "thinkerk", "Big Thinkers Kindergarten" },
{ "water", "Freddi Fish and Luther's Water Worries" },
-#endif
{ 0, 0 }
};
@@ -185,9 +177,7 @@ static const GameSettings gameVariantsTable[] = {
{"loom", "EGA", "ega", GID_LOOM, 3, 0, MDT_PCSPK | MDT_PCJR | MDT_CMS | MDT_ADLIB | MDT_MIDI | MDT_PREFER_MT32, 0, UNK, GUIO1(GUIO_NOSPEECH)},
{"loom", "No AdLib", "ega", GID_LOOM, 3, 0, MDT_PCSPK | MDT_PCJR | MDT_CMS, 0, UNK, GUIO2(GUIO_NOSPEECH, GUIO_NOMIDI)},
-#ifdef USE_RGB_COLOR
{"loom", "PC-Engine", 0, GID_LOOM, 3, 0, MDT_NONE, GF_AUDIOTRACKS | GF_OLD256 | GF_16BIT_COLOR, Common::kPlatformPCEngine, GUIO2(GUIO_NOSPEECH, GUIO_NOMIDI)},
-#endif
{"loom", "FM-TOWNS", 0, GID_LOOM, 3, 0, MDT_TOWNS, GF_AUDIOTRACKS | GF_OLD256, Common::kPlatformFMTowns, GUIO4(GUIO_NOSPEECH, GUIO_NOMIDI, GUIO_MIDITOWNS, GUIO_NOASPECT)},
{"loom", "VGA", "vga", GID_LOOM, 4, 0, MDT_NONE, GF_AUDIOTRACKS, Common::kPlatformDOS, GUIO2(GUIO_NOSPEECH, GUIO_NOMIDI)},
{"loom", "Steam", "steam", GID_LOOM, 4, 0, MDT_NONE, GF_AUDIOTRACKS, UNK, GUIO2(GUIO_NOSPEECH, GUIO_NOMIDI)},
@@ -220,7 +210,6 @@ static const GameSettings gameVariantsTable[] = {
{"samnmax", "", 0, GID_SAMNMAX, 6, 0, MDT_ADLIB | MDT_MIDI | MDT_PREFER_GM, GF_USE_KEY, UNK, GUIO0()},
{"samnmax", "Floppy", 0, GID_SAMNMAX, 6, 0, MDT_ADLIB | MDT_MIDI | MDT_PREFER_GM, GF_USE_KEY, UNK, GUIO1(GUIO_NOSPEECH)},
-#ifdef ENABLE_SCUMM_7_8
{"ft", "", 0, GID_FT, 7, 0, MDT_NONE, 0, UNK, GUIO1(GUIO_NOMIDI)},
{"ft", "Demo", 0, GID_FT, 7, 0, MDT_NONE, GF_DEMO, UNK, GUIO1(GUIO_NOMIDI)},
@@ -230,7 +219,6 @@ static const GameSettings gameVariantsTable[] = {
{"comi", "", 0, GID_CMI, 8, 0, MDT_NONE, 0, Common::kPlatformWindows, GUIO2(GUIO_NOMIDI, GUIO_NOASPECT)},
{"comi", "Demo", 0, GID_CMI, 8, 0, MDT_NONE, GF_DEMO, Common::kPlatformWindows, GUIO2(GUIO_NOMIDI, GUIO_NOASPECT)},
- #endif
// Humongous Entertainment Scumm Version 6
{"activity", "", 0, GID_HEGAME, 6, 62, MDT_ADLIB | MDT_MIDI, GF_USE_KEY, UNK, GUIO1(GUIO_NOLAUNCHLOAD)},
@@ -255,7 +243,6 @@ static const GameSettings gameVariantsTable[] = {
// they'll override more specific entries that follow later on.
{"", "HE 70", 0, GID_HEGAME, 6, 70, MDT_NONE, GF_USE_KEY, UNK, GUIO2(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI)},
-#ifdef ENABLE_HE
// HE CUP demos
{"", "HE CUP", 0, GID_HECUP, 6, 200, MDT_NONE, 0, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOSPEECH)},
@@ -341,7 +328,6 @@ static const GameSettings gameVariantsTable[] = {
// Added the use of smacker videos
{"BluesTreasureHunt", 0, 0, GID_TREASUREHUNT, 6, 99, MDT_NONE, GF_HE_LOCALIZED | GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
-#ifdef USE_RGB_COLOR
// Added 16bit color
{"arttime", 0, 0, GID_HEGAME, 6, 99, MDT_NONE, GF_USE_KEY | GF_HE_LOCALIZED | GF_16BIT_COLOR, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
{"baseball2001", 0, 0, GID_BASEBALL2001, 6, 99, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
@@ -368,7 +354,6 @@ static const GameSettings gameVariantsTable[] = {
{"Baseball2003", 0, 0, GID_BASEBALL2003, 6, 101, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
{"basketball", 0, 0, GID_BASKETBALL, 6, 101, MDT_NONE, GF_USE_KEY| GF_16BIT_COLOR, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
{"football2002", 0, 0, GID_FOOTBALL2002, 6, 101, MDT_NONE, GF_USE_KEY | GF_16BIT_COLOR, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
-#endif
// The following are meant to be generic HE game variants and as such do
// not specify a game ID. Make sure that these are last in the table, else
@@ -386,7 +371,7 @@ static const GameSettings gameVariantsTable[] = {
{"", "HE 99", 0, GID_HEGAME, 6, 99, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
{"", "HE 100", 0, GID_HEGAME, 6, 100, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
{"", "HE 101", 0, GID_HEGAME, 6, 100, MDT_NONE, GF_USE_KEY, UNK, GUIO3(GUIO_NOLAUNCHLOAD, GUIO_NOMIDI, GUIO_NOASPECT)},
-#endif
+
{NULL, NULL, 0, 0, 0, MDT_NONE, 0, 0, UNK, 0}
};
@@ -470,7 +455,6 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "samnmax", "snmidemo.%03d", kGenDiskNum, UNK_LANG, UNK, 0 },
{ "samnmax", "sdemo.sm%d", kGenDiskNum, Common::DE_DEU, UNK, 0 },
-#ifdef ENABLE_SCUMM_7_8
{ "dig", "dig.la%d", kGenDiskNum, UNK_LANG, UNK, 0 },
{ "dig", "thedig.la%d", kGenDiskNum, UNK_LANG, UNK, "Demo" }, // Used by an alternate version of the demo
{ "dig", "The Dig Data", kGenUnchanged, UNK_LANG, Common::kPlatformMacintosh, 0 },
@@ -487,7 +471,6 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "ft", "Vollgas Demo Data", kGenUnchanged, Common::DE_DEU, Common::kPlatformMacintosh, "Demo" },
{ "comi", "comi.la%d", kGenDiskNum, UNK_LANG, UNK, 0 },
-#endif
{ "activity", "activity", kGenHEPC, UNK_LANG, UNK, 0 },
{ "activity", "Putt & Fatty's Actpack", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 },
@@ -515,8 +498,6 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "puttputt", "Putt-Putt Parade", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 },
{ "puttputt", "Putt-Putt", kGenHEMacNoParens, UNK_LANG, Common::kPlatformMacintosh, 0 },
-#ifdef ENABLE_HE
-#ifdef USE_RGB_COLOR
{ "arttime", "arttime", kGenHEPC, UNK_LANG, UNK, 0 },
{ "arttime", "Blues-ArtTime", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 },
{ "arttime", "artdemo", kGenHEPC, UNK_LANG, UNK, 0 },
@@ -576,7 +557,6 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "spyozon", "SPYFoxSOS", kGenHEMac, Common::FR_FRA, Common::kPlatformMacintosh, 0 },
{ "spyozon", "SpyOzon", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 },
{ "spyozon", "ozonepre.cup", kGenUnchanged, UNK_LANG, UNK, "HE CUP" },
-#endif
{ "airport", "airport", kGenHEPC, UNK_LANG, UNK, 0 },
{ "airport", "airdemo", kGenHEPC, UNK_LANG, UNK, 0 },
@@ -912,7 +892,7 @@ static const GameFilenamePattern gameFilenamesTable[] = {
{ "water", "water", kGenHEPC, UNK_LANG, Common::kPlatformWindows, 0 },
{ "water", "Water", kGenHEMac, Common::NL_NLD, Common::kPlatformMacintosh, 0 },
{ "water", "Water Worries", kGenHEMac, UNK_LANG, Common::kPlatformMacintosh, 0 },
-#endif
+
{ NULL, NULL, kGenUnchanged, UNK_LANG, UNK, 0 }
};
diff --git a/engines/scumm/metaengine.cpp b/engines/scumm/metaengine.cpp
index e6af0f9cd4..58bcf9201c 100644
--- a/engines/scumm/metaengine.cpp
+++ b/engines/scumm/metaengine.cpp
@@ -412,6 +412,21 @@ Common::Error ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) co
case 71:
*engine = new ScummEngine_v71he(syst, res);
break;
+#else
+ case 200:
+ case 101:
+ case 100:
+ case 99:
+ case 98:
+ case 95:
+ case 90:
+ case 85:
+ case 80:
+ case 74:
+ case 73:
+ case 72:
+ case 71:
+ return Common::Error(Common::kUnsupportedGameidError, _s("HE v71+ support is not compiled in"));
#endif
case 70:
*engine = new ScummEngine_v70he(syst, res);
@@ -432,9 +447,13 @@ Common::Error ScummMetaEngine::createInstance(OSystem *syst, Engine **engine) co
case 8:
*engine = new ScummEngine_v8(syst, res);
break;
+#else
+ case 7:
+ case 8:
+ return Common::Error(Common::kUnsupportedGameidError, _s("SCUMM v7-8 support is not compiled in"));
#endif
default:
- error("Engine_SCUMM_create(): Unknown version of game engine");
+ return Common::kUnsupportedGameidError;
}
return Common::kNoError;
More information about the Scummvm-git-logs
mailing list