aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
authorMatthew Hoops2011-02-03 02:26:57 +0000
committerMatthew Hoops2011-02-03 02:26:57 +0000
commit4c0af01d6a2a860c09dbd047563ac4f727425492 (patch)
treecb08a7b97e41471479ed87cc9f881b49fb16b2cb /engines/sci
parent9e761d6f291e956a6fb1dcedcd1d7424b17d88e4 (diff)
downloadscummvm-rg350-4c0af01d6a2a860c09dbd047563ac4f727425492.tar.gz
scummvm-rg350-4c0af01d6a2a860c09dbd047563ac4f727425492.tar.bz2
scummvm-rg350-4c0af01d6a2a860c09dbd047563ac4f727425492.zip
SCI: Disable the special QFG1 Mac icon bar
The original interpreter completely ignores it in favor of the regular one. svn-id: r55748
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/engine/kmisc.cpp6
-rw-r--r--engines/sci/graphics/screen.cpp2
-rw-r--r--engines/sci/sci.cpp2
3 files changed, 7 insertions, 3 deletions
diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp
index 0afb6a0a45..b6e1aad679 100644
--- a/engines/sci/engine/kmisc.cpp
+++ b/engines/sci/engine/kmisc.cpp
@@ -340,6 +340,12 @@ reg_t kMemory(EngineState *s, int argc, reg_t *argv) {
// kIconBar is really a subop of kPlatform for SCI1.1 Mac
reg_t kIconBar(EngineState *s, int argc, reg_t *argv) {
+ // QFG1 Mac calls this function to load the Mac icon bar (of which
+ // the resources do exist), but the game completely ignores it and
+ // uses the standard icon bar for the game. We do the same.
+ if (!g_sci->hasMacIconBar())
+ return NULL_REG;
+
// TODO...
if (argv[0].toUint16() == 4 && argv[1].toUint16() == 0) {
diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp
index 696e7efea0..73e60e2cf3 100644
--- a/engines/sci/graphics/screen.cpp
+++ b/engines/sci/graphics/screen.cpp
@@ -133,8 +133,6 @@ GfxScreen::GfxScreen(ResourceManager *resMan) : _resMan(resMan) {
// to accommodate for the icon bar. Of course, both KQ6 and QFG1 VGA differ in size.
if (g_sci->getGameId() == GID_KQ6)
initGraphics(_displayWidth, _displayHeight + 26, _displayWidth > 320);
- else if (g_sci->getGameId() == GID_QFG1VGA)
- initGraphics(_displayWidth, _displayHeight + 20, _displayWidth > 320);
else
error("Unknown SCI1.1 Mac game");
} else
diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp
index 2552e7bf43..dc900e0800 100644
--- a/engines/sci/sci.cpp
+++ b/engines/sci/sci.cpp
@@ -751,7 +751,7 @@ bool SciEngine::isCD() const {
}
bool SciEngine::hasMacIconBar() const {
- return _resMan->isSci11Mac() && getSciVersion() == SCI_VERSION_1_1 && getGameId() != GID_HOYLE4;
+ return _resMan->isSci11Mac() && getSciVersion() == SCI_VERSION_1_1 && getGameId() == GID_KQ6;
}
Common::String SciEngine::getSavegameName(int nr) const {