diff options
author | Filippos Karapetis | 2018-08-20 04:27:05 +0300 |
---|---|---|
committer | Filippos Karapetis | 2018-08-21 03:36:04 +0300 |
commit | 2877c2209794633cf45894adbf786806fb0fe629 (patch) | |
tree | 6dc045025f9ea1190923ba1ecaa29c61bfccfb9f /engines/sci/engine/kscripts.cpp | |
parent | 06079340ac362b980e8ae9fc42626b44b3a07a06 (diff) | |
download | scummvm-rg350-2877c2209794633cf45894adbf786806fb0fe629.tar.gz scummvm-rg350-2877c2209794633cf45894adbf786806fb0fe629.tar.bz2 scummvm-rg350-2877c2209794633cf45894adbf786806fb0fe629.zip |
SCI: Add workaround for buggy script in Hoyle 3 Amiga
Diffstat (limited to 'engines/sci/engine/kscripts.cpp')
-rw-r--r-- | engines/sci/engine/kscripts.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/sci/engine/kscripts.cpp b/engines/sci/engine/kscripts.cpp index 8fd05a7dc9..26dbe9ba00 100644 --- a/engines/sci/engine/kscripts.cpp +++ b/engines/sci/engine/kscripts.cpp @@ -282,9 +282,13 @@ reg_t kScriptID(EngineState *s, int argc, reg_t *argv) { return NULL_REG; } + // WORKAROUND: Avoid referencing invalid export 0 in script 601 (Snakes & Ladders) in Hoyle 3 Amiga + if (g_sci->getGameId() == GID_HOYLE3 && g_sci->getPlatform() == Common::kPlatformAmiga && script == 601 && argc == 1) + return NULL_REG; + const uint32 address = scr->validateExportFunc(index, true) + scr->getHeapOffset(); - // Bugfix for the intro speed in PQ2 version 1.002.011. + // WORKAROUND: Bugfix for the intro speed in PQ2 version 1.002.011. // This is taken from the patch by NewRisingSun(NRS) / Belzorash. Global 3 // is used for timing during the intro, and in the problematic version it's // initialized to 0, whereas it's 6 in other versions. Thus, we assign it |