diff options
Diffstat (limited to 'engines/composer/detection.cpp')
-rw-r--r-- | engines/composer/detection.cpp | 71 |
1 files changed, 62 insertions, 9 deletions
diff --git a/engines/composer/detection.cpp b/engines/composer/detection.cpp index 8c97b6c4db..2ca00f9f53 100644 --- a/engines/composer/detection.cpp +++ b/engines/composer/detection.cpp @@ -74,7 +74,7 @@ static const ComposerGameDescription gameDescriptions[] = { AD_ENTRY1("book.ini", "dbc98c566f4ac61b544443524585dccb"), Common::EN_ANY, Common::kPlatformWindows, - ADGF_USEEXTRAASTITLE, + ADGF_USEEXTRAASTITLE | ADGF_DEMO, Common::GUIO_NONE }, GType_ComposerV1 @@ -84,7 +84,7 @@ static const ComposerGameDescription gameDescriptions[] = { { "liam", 0, - AD_ENTRY1("install.inf", "320d2f1d4f8dd96947676ae25d6688c6"), + AD_ENTRY1s("book.ini", "fc9d9b9e72e7301d011b808606eaa15b", 834), Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, @@ -101,7 +101,7 @@ static const ComposerGameDescription gameDescriptions[] = { AD_ENTRY1("book.ini", "3dede2522bb0886c95667b082987a87f"), Common::EN_ANY, Common::kPlatformWindows, - ADGF_USEEXTRAASTITLE, + ADGF_USEEXTRAASTITLE | ADGF_DEMO, Common::GUIO_NONE }, GType_ComposerV2 @@ -111,7 +111,11 @@ static const ComposerGameDescription gameDescriptions[] = { { "darby", 0, - AD_ENTRY1("install.inf", "e83cc20ee18a2e138da1aadfc640dff2"), + { + {"book.ini", 0, "7e3404c559d058521fff2aebe5c427a8", 2545}, + {"page99.rsc", 0, "49cc6b16caa1c5ec7d94a3c47eed9a02", 1286480}, + AD_LISTEND + }, Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, @@ -120,6 +124,19 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV2 }, + { + { + "darby", + 0, + AD_ENTRY1("Darby the Dragon.ini", "d81f9214936fa70d42fc578908d4bb3d"), + Common::EN_ANY, + Common::kPlatformMacintosh, + ADGF_NO_FLAGS, + Common::GUIO_NONE + }, + GType_ComposerV2 + }, + { // Provided by Strangerke, "CD-Rom 100% Malin" Pack { "darby", @@ -137,7 +154,11 @@ static const ComposerGameDescription gameDescriptions[] = { { "gregory", 0, - AD_ENTRY1("install.inf", "b7e9d6f7949d412dad0a183375069844"), + { + {"book.ini", 0, "14a562dcf361773445255af9f3e94790", 2234}, + {"page99.rsc", 0, "01f9381162467e052dfd4c704169ef3e", 388644}, + AD_LISTEND + }, Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, @@ -146,6 +167,19 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV2 }, + { + { + "gregory", + 0, + AD_ENTRY1("Gregory.ini", "fa82f14731f28c7379c5a106df07a0d6"), + Common::EN_ANY, + Common::kPlatformMacintosh, + ADGF_NO_FLAGS, + Common::GUIO_NONE + }, + GType_ComposerV2 + }, + { // Provided by Strangerke, "CD-Rom 100% Malin" Pack { "gregory", @@ -159,11 +193,15 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV2 }, - { + { // Provided by sev { "princess", 0, - AD_ENTRY1s("install.inf", "f1cf45db3c4c54a0d2d89d359af8f334", 244), + { + {"book.ini", 0, "fb32572577b9a41ba299825ef1e3181e", 966}, + {"page99.rsc", 0, "fd5ebd3b5e36c4651c50241619525355", 45418}, + AD_LISTEND + }, Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, @@ -172,11 +210,15 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV2 }, - { + { // Provided by sev { "sleepingcub", 0, - AD_ENTRY1s("install.inf", "1092e753b8692463f41b8c0b1931398e", 251), + { + {"book.ini", 0, "0d329e592387009c6387a733a3ea2235", 964}, + {"page99.rsc", 0, "219fbd9bd2ff87c7023814405d753145", 46916}, + AD_LISTEND + }, Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, @@ -192,10 +234,21 @@ static const ComposerGameDescription gameDescriptions[] = { using namespace Composer; +// we match from data too, to stop detection from a non-top-level directory +const static char *directoryGlobs[] = { + "data", + "programs", + "princess", + "sleepcub", + 0 +}; + class ComposerMetaEngine : public AdvancedMetaEngine { public: ComposerMetaEngine() : AdvancedMetaEngine(Composer::gameDescriptions, sizeof(Composer::ComposerGameDescription), composerGames) { _singleid = "composer"; + _maxScanDepth = 2; + _directoryGlobs = directoryGlobs; } virtual const char *getName() const { |