diff options
-rw-r--r-- | engines/mohawk/cursors.cpp | 12 | ||||
-rw-r--r-- | engines/mohawk/detection.cpp | 3 | ||||
-rw-r--r-- | engines/mohawk/detection_tables.h | 21 | ||||
-rw-r--r-- | engines/mohawk/livingbooks.cpp | 7 | ||||
-rw-r--r-- | engines/mohawk/livingbooks.h | 3 | ||||
-rw-r--r-- | engines/mohawk/mohawk.h | 1 |
6 files changed, 35 insertions, 12 deletions
diff --git a/engines/mohawk/cursors.cpp b/engines/mohawk/cursors.cpp index c7288ab0c3..675f2d86bb 100644 --- a/engines/mohawk/cursors.cpp +++ b/engines/mohawk/cursors.cpp @@ -310,12 +310,14 @@ void NECursorManager::setCursor(uint16 id) { } MacCursorManager::MacCursorManager(const Common::String &appName) { - _resFork = new Common::MacResManager(); + if (!appName.empty()) { + _resFork = new Common::MacResManager(); - if (!_resFork->open(appName)) { - // Not all have cursors anyway, so this is not a problem - delete _resFork; - _resFork = 0; + if (!_resFork->open(appName)) { + // Not all have cursors anyway, so this is not a problem + delete _resFork; + _resFork = 0; + } } } diff --git a/engines/mohawk/detection.cpp b/engines/mohawk/detection.cpp index 270f66fdfe..d5baa0f73e 100644 --- a/engines/mohawk/detection.cpp +++ b/engines/mohawk/detection.cpp @@ -105,7 +105,7 @@ static const PlainGameDescriptor mohawkGames[] = { {"zoombini", "Logical Journey of the Zoombinis Deluxe"}, {"csworld", "Where in the World is Carmen Sandiego?"}, {"csamtrak", "Where in America is Carmen Sandiego? (The Great Amtrak Train Adventure)"}, - {"maggiess", "Maggie's Farmyard Adventure"}, + {"maggiesfa", "Maggie's Farmyard Adventure"}, {"jamesmath", "James Discovers/Explores Math"}, {"treehouse", "The Treehouse"}, {"greeneggs", "Green Eggs and Ham"}, @@ -234,7 +234,6 @@ bool MohawkMetaEngine::createInstance(OSystem *syst, Engine **engine, const ADGa case Mohawk::GType_ZOOMBINI: case Mohawk::GType_CSWORLD: case Mohawk::GType_CSAMTRAK: - case Mohawk::GType_MAGGIESS: case Mohawk::GType_JAMESMATH: case Mohawk::GType_TREEHOUSE: case Mohawk::GType_1STDEGREE: diff --git a/engines/mohawk/detection_tables.h b/engines/mohawk/detection_tables.h index 2b042a70ca..401383e164 100644 --- a/engines/mohawk/detection_tables.h +++ b/engines/mohawk/detection_tables.h @@ -449,15 +449,30 @@ static const MohawkGameDescription gameDescriptions[] = { { { - "maggiess", + "maggiesfa", "", - AD_ENTRY1("MAGGIESS.MHK", "08f75fc8c0390e68fdada5ddb35d0355"), + AD_ENTRY1("Outline", "b7dc6e65fa9e80784a5bb8b557aa37c4"), Common::EN_ANY, Common::kPlatformWindows, ADGF_NO_FLAGS, Common::GUIO_NONE }, - GType_MAGGIESS, + GType_LIVINGBOOKSV3, + 0, + 0 + }, + + { + { + "maggiesfa", + "", + AD_ENTRY1("BookOutline", "1ce006d7daaa26cf61040203856b88f1"), + Common::EN_ANY, + Common::kPlatformMacintosh, + ADGF_NO_FLAGS, + Common::GUIO_NONE + }, + GType_LIVINGBOOKSV3, 0, 0 }, diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp index fa3db1d316..506586794d 100644 --- a/engines/mohawk/livingbooks.cpp +++ b/engines/mohawk/livingbooks.cpp @@ -1076,6 +1076,13 @@ NodeState LBAnimationNode::update(bool seeking) { } break; + case kLBAnimOpUnknownF: + // TODO: Found in maggiesfa + // Seems to always be a uint32 as the data + assert(entry.size == 4); + warning("f: UnknownF(%d)", READ_BE_UINT32(entry.data)); + break; + default: error("Unknown opcode id %02x (size %d)", entry.opcode, entry.size); break; diff --git a/engines/mohawk/livingbooks.h b/engines/mohawk/livingbooks.h index 0ad99e00df..c297a26eac 100644 --- a/engines/mohawk/livingbooks.h +++ b/engines/mohawk/livingbooks.h @@ -80,7 +80,8 @@ enum { kLBAnimOpWaitForSound = 0xb, kLBAnimOpReleaseSound = 0xc, kLBAnimOpResetSound = 0xd, - kLBAnimOpUnknownE = 0xe + kLBAnimOpUnknownE = 0xe, + kLBAnimOpUnknownF = 0xf }; enum { diff --git a/engines/mohawk/mohawk.h b/engines/mohawk/mohawk.h index a1027ce066..83e2566a09 100644 --- a/engines/mohawk/mohawk.h +++ b/engines/mohawk/mohawk.h @@ -55,7 +55,6 @@ enum MohawkGameType { GType_ZOOMBINI, GType_CSWORLD, GType_CSAMTRAK, - GType_MAGGIESS, GType_JAMESMATH, GType_TREEHOUSE, GType_1STDEGREE, |