[Scummvm-cvs-logs] SF.net SVN: scummvm:[50820] scummvm/trunk/engines/sci/engine/kernel.cpp
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Mon Jul 12 14:31:13 CEST 2010
Revision: 50820
http://scummvm.svn.sourceforge.net/scummvm/?rev=50820&view=rev
Author: m_kiewitz
Date: 2010-07-12 12:31:13 +0000 (Mon, 12 Jul 2010)
Log Message:
-----------
SCI: adding workaround for signature mismatch when giving merrily the key to the bungee tower
Modified Paths:
--------------
scummvm/trunk/engines/sci/engine/kernel.cpp
Modified: scummvm/trunk/engines/sci/engine/kernel.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/kernel.cpp 2010-07-12 11:20:42 UTC (rev 50819)
+++ scummvm/trunk/engines/sci/engine/kernel.cpp 2010-07-12 12:31:13 UTC (rev 50820)
@@ -263,6 +263,7 @@
// gameID, scriptNr,lvl, object-name, method-name, call, index, replace
static const SciWorkaroundEntry kGraphRestoreBox_workarounds[] = {
+ { GID_LSL6, 85, 0, "rScroller", "hide", -1, 0, { 0, 0 } }, // happens when restoring (sometimes), same as the one below
{ GID_LSL6, 85, 0, "lScroller", "hide", -1, 0, { 0, 0 } }, // happens when restoring (sometimes), same as the one below
{ GID_LSL6, 86, 0, "LL6Inv", "show", -1, 0, { 0, 0 } }, // happens when restoring, is called with hunk segment, but hunk is not allocated at that time
// ^^ TODO: check, if this is really a script error or an issue with our restore code
@@ -271,6 +272,12 @@
};
// gameID, scriptNr,lvl, object-name, method-name, call, index, replace
+static const SciWorkaroundEntry kGraphFillBoxForeground_workarounds[] = {
+ { GID_LSL6, 0, 0, "LSL6", "hideControls", -1, 0, { 0, 0 } }, // happens when giving the bungee key to merrily - gets called with additional 5th parameter
+ SCI_WORKAROUNDENTRY_TERMINATOR
+};
+
+// gameID, scriptNr,lvl, object-name, method-name, call, index, replace
static const SciWorkaroundEntry kGraphFillBoxAny_workarounds[] = {
{ GID_SQ4, 818, 0, "iconTextSwitch", "show", -1, 0, { 0, 0 } }, // game menu "text/speech" display - parameter 5 is missing, but the right color number is on the stack
SCI_WORKAROUNDENTRY_TERMINATOR
@@ -392,7 +399,7 @@
{ SIG_SCIALL, 8, MAP_CALL(GraphRestoreBox), "[r0!]", kGraphRestoreBox_workarounds },
// ^ this may get called with invalid references, we check them within restoreBits() and sierra sci behaves the same
{ SIG_SCIALL, 9, MAP_CALL(GraphFillBoxBackground), "iiii", NULL },
- { SIG_SCIALL, 10, MAP_CALL(GraphFillBoxForeground), "iiii", NULL },
+ { SIG_SCIALL, 10, MAP_CALL(GraphFillBoxForeground), "iiii", kGraphFillBoxForeground_workarounds },
{ SIG_SCIALL, 11, MAP_CALL(GraphFillBoxAny), "iiiiii(i)(i)", kGraphFillBoxAny_workarounds },
{ SIG_SCI11, 12, MAP_CALL(GraphUpdateBox), "iiii(i)(r0)", NULL }, // kq6 hires
{ SIG_SCIALL, 12, MAP_CALL(GraphUpdateBox), "iiii(i)", NULL },
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list