diff options
Diffstat (limited to 'engines/composer/composer.cpp')
-rw-r--r-- | engines/composer/composer.cpp | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/engines/composer/composer.cpp b/engines/composer/composer.cpp index ec0e6dab43..0b5eee3bf0 100644 --- a/engines/composer/composer.cpp +++ b/engines/composer/composer.cpp @@ -92,7 +92,8 @@ Common::Error ComposerEngine::run() { // mac version? if (!_bookIni.loadFromFile("Darby the Dragon.ini")) if (!_bookIni.loadFromFile("Gregory.ini")) - error("failed to find book.ini"); + if (!_bookIni.loadFromFile("demo.mac") && !_bookIni.loadFromFile("book.mac")) + error("failed to find book.ini"); } } } @@ -114,7 +115,15 @@ Common::Error ComposerEngine::run() { loadLibrary(0); - uint fps = atoi(getStringFromConfig("Common", "FPS").c_str()); + uint fps; + if (_bookIni.hasKey("FPS", "Common")) + fps = atoi(getStringFromConfig("Common", "FPS").c_str()); + else { + // On Macintosh version there is no FPS key + if (getPlatform() != Common::kPlatformMacintosh) + warning("there is no FPS key in book.ini. Defaulting to 8..."); + fps = 8; + } uint frameTime = 125; // Default to 125ms (1000/8) if (fps != 0) frameTime = 1000 / fps; @@ -393,10 +402,18 @@ void ComposerEngine::loadLibrary(uint id) { Common::String filename; Common::String oldGroup = _bookGroup; if (getGameType() == GType_ComposerV1) { - if (!id || _bookGroup.empty()) - filename = getStringFromConfig("Common", "StartPage"); - else - filename = getStringFromConfig(_bookGroup, Common::String::format("%d", id)); + if (getPlatform() == Common::kPlatformMacintosh) { + if (!id || _bookGroup.empty()) + filename = getStringFromConfig("splash.rsc", "100"); + else + filename = getStringFromConfig(_bookGroup + ".rsc", Common::String::format("%d", id)); + } + else { + if (!id || _bookGroup.empty()) + filename = getStringFromConfig("Common", "StartPage"); + else + filename = getStringFromConfig(_bookGroup, Common::String::format("%d", id)); + } filename = mangleFilename(filename); // bookGroup is the basename of the path. |