diff options
-rw-r--r-- | engines/made/detection.cpp | 18 | ||||
-rw-r--r-- | engines/made/made.cpp | 9 | ||||
-rw-r--r-- | engines/made/made.h | 1 |
3 files changed, 25 insertions, 3 deletions
diff --git a/engines/made/detection.cpp b/engines/made/detection.cpp index 5f96ff5e8b..f3a1a7218a 100644 --- a/engines/made/detection.cpp +++ b/engines/made/detection.cpp @@ -71,7 +71,7 @@ namespace Made { static const MadeGameDescription gameDescriptions[] = { { - // Made English version + // Return to Zork - English CD version { "made", "CD", @@ -86,6 +86,22 @@ static const MadeGameDescription gameDescriptions[] = { 0, }, + { + // Return to Zork - Demo + { + "made", + "Demo", + AD_ENTRY1("demo.dat", "2a6a1354bd5346fad4aee08e5b56caaa"), + Common::EN_ANY, + Common::kPlatformPC, + Common::ADGF_DEMO + }, + 0, + 0, + GF_DEMO, + 0, + }, + { AD_TABLE_END_MARKER, 0, 0, 0, 0 } }; diff --git a/engines/made/made.cpp b/engines/made/made.cpp index f590f84d3d..feb80f407d 100644 --- a/engines/made/made.cpp +++ b/engines/made/made.cpp @@ -138,8 +138,13 @@ int MadeEngine::go() { for (int i = 0; i < ARRAYSIZE(_timers); i++) _timers[i] = -1; - _dat->open("rtzcd.dat"); - _res->open("rtzcd.prj"); + if (getFeatures() & GF_DEMO) { + _dat->open("demo.dat"); + _res->open("demo.prj"); + } else { + _dat->open("rtzcd.dat"); + _res->open("rtzcd.prj"); + } PictureResource *flex1 = _res->getPicture(78); Graphics::Surface *surf = flex1->getPicture(); diff --git a/engines/made/made.h b/engines/made/made.h index 6753b391cd..fcfb50005e 100644 --- a/engines/made/made.h +++ b/engines/made/made.h @@ -48,6 +48,7 @@ namespace Made { enum MadeGameFeatures { + GF_DEMO = 1 << 0 }; struct MadeGameDescription; |