diff options
Diffstat (limited to 'engines/composer')
-rw-r--r-- | engines/composer/composer.cpp | 14 | ||||
-rw-r--r-- | engines/composer/detection.cpp | 80 |
2 files changed, 88 insertions, 6 deletions
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp index 6aafec276c..ec0e6dab43 100644 --- a/engines/composer/composer.cpp +++ b/engines/composer/composer.cpp @@ -86,12 +86,14 @@ Common::Error ComposerEngine::run() { } if (!_bookIni.loadFromFile("book.ini")) { - _directoriesToStrip = 0; - if (!_bookIni.loadFromFile("programs/book.ini")) { - // mac version? - if (!_bookIni.loadFromFile("Darby the Dragon.ini")) - if (!_bookIni.loadFromFile("Gregory.ini")) - error("failed to find book.ini"); + if (!_bookIni.loadFromFile("demo.ini") && !_bookIni.loadFromFile("ls_demo.ini") && !_bookIni.loadFromFile("by_demo.ini")) { + _directoriesToStrip = 0; + if (!_bookIni.loadFromFile("programs/book.ini")) { + // mac version? + if (!_bookIni.loadFromFile("Darby the Dragon.ini")) + if (!_bookIni.loadFromFile("Gregory.ini")) + error("failed to find book.ini"); + } } } diff --git a/engines/composer/detection.cpp b/engines/composer/detection.cpp index 93a3a40146..0422091deb 100644 --- a/engines/composer/detection.cpp +++ b/engines/composer/detection.cpp @@ -63,6 +63,7 @@ static const PlainGameDescriptor composerGames[] = { {"littlesamurai", "Magic Tales: The Little Samurai"}, {"princess", "Magic Tales: The Princess and the Crab"}, {"sleepingcub", "Magic Tales: Sleeping Cub's Test of Courage"}, + {"magictales", "Magic Tales"}, {0, 0} }; @@ -125,6 +126,57 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV1 }, + // Magic Tales: Imo and the King Hebrew + { + { + "imoking", + "", + { + {"book.ini", 0, "2b3eb997e8f55a03e81f67563c40adf4", 3337}, + AD_LISTEND + }, + Common::HE_ISR, + Common::kPlatformWindows, + ADGF_NO_FLAGS, + GUIO2(GUIO_NOASPECT, GUIO_NOMIDI) + }, + GType_ComposerV1 + }, + + // Baba Yaga Demo from Imo and the King Hebrew CD + { + { + "babayaga", + "Magic Tales: Baba Yaga and the Magic Geese Demo", + { + {"by_demo.ini", 0, "4a87806683add232916298d6b62b9420", 224}, + AD_LISTEND + }, + Common::EN_ANY, + Common::kPlatformWindows, + ADGF_USEEXTRAASTITLE | ADGF_DEMO, + GUIO2(GUIO_NOASPECT, GUIO_NOMIDI) + }, + GType_ComposerV1 + }, + + // Little Samurai Demo from Imo and the King Hebrew CD + { + { + "littlesamurai", + "Magic Tales: The Little Samurai Demo", + { + {"ls_demo.ini", 0, "462cad83006721d2491dde7ef7a2d243", 223}, + AD_LISTEND + }, + Common::EN_ANY, + Common::kPlatformWindows, + ADGF_USEEXTRAASTITLE | ADGF_DEMO, + GUIO2(GUIO_NOASPECT, GUIO_NOMIDI) + }, + GType_ComposerV1 + }, + // Magic Tales: Imo and the King Mac - from bug #3466402 { { @@ -167,6 +219,20 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV1 }, + // Magic Tales: The Little Samurai Hebrew + { + { + "littlesamurai", + "", + AD_ENTRY1s("book.ini", "c5f2c84df04780e7e67c70ec85b780a8", 3789), + Common::HE_ISR, + Common::kPlatformWindows, + ADGF_NO_FLAGS, + GUIO2(GUIO_NOASPECT, GUIO_NOMIDI) + }, + GType_ComposerV1 + }, + // Magic Tales: The Little Samurai Mac - from bug #3466402 { { @@ -195,6 +261,20 @@ static const ComposerGameDescription gameDescriptions[] = { GType_ComposerV1 }, + // from Little Samurai Hebrew CD + { + { + "magictales", + "Magic Tales Demo: Baby Yaga, Samurai, Imo", + AD_ENTRY1("demo.ini", "ea784af960375834d655eb7281cd4500"), + Common::HE_ISR, + Common::kPlatformWindows, + ADGF_USEEXTRAASTITLE | ADGF_DEMO, + GUIO2(GUIO_NOASPECT, GUIO_NOMIDI) + }, + GType_ComposerV1 + }, + { { "liam", |