[Scummvm-git-logs] scummvm master -> 17173f6dacd7591b237b6f03b9d5c8f21d3d6335
sluicebox
22204938+sluicebox at users.noreply.github.com
Thu Oct 31 17:56:28 CET 2019
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
17173f6dac SCI32: Fix KQ7 extra ambrosia
Commit: 17173f6dacd7591b237b6f03b9d5c8f21d3d6335
https://github.com/scummvm/scummvm/commit/17173f6dacd7591b237b6f03b9d5c8f21d3d6335
Author: sluicebox (22204938+sluicebox at users.noreply.github.com)
Date: 2019-10-31T09:54:35-07:00
Commit Message:
SCI32: Fix KQ7 extra ambrosia
Fixes bug #9790
Changed paths:
engines/sci/engine/script_patches.cpp
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 255d8dd..0f3f126 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -4634,10 +4634,32 @@ static const uint16 kq7PragmaFailSpinPatch[] = {
PATCH_END
};
+// Room 6100 creates an extra ambrosia, usually floating in upper left of the
+// screen, due to an off by one error. The script's local arrays contain four
+// ambrosia coordinates but the loop that accesses them iterates five times.
+//
+// Applies to: All versions
+// Responsible method: rm6100:init
+// Fixes bug #9790
+static const uint16 kq7ExtraAmbrosiaSignature[] = {
+ SIG_MAGICDWORD,
+ 0x8d, 0x00, // lst 00
+ 0x35, 0x04, // ldi 04
+ 0x24, // le?
+ SIG_END
+};
+
+static const uint16 kq7ExtraAmbrosiaPatch[] = {
+ PATCH_ADDTOOFFSET(+4),
+ 0x22, // lt?
+ PATCH_END
+};
+
// script, description, signature patch
static const SciScriptPatcherEntry kq7Signatures[] = {
{ true, 0, "disable video benchmarking", 1, kq7BenchmarkSignature, kq7BenchmarkPatch },
{ true, 0, "remove hardcoded spin loop", 1, kq7PragmaFailSpinSignature, kq7PragmaFailSpinPatch },
+ { true, 6100, "fix extra ambrosia", 1, kq7ExtraAmbrosiaSignature, kq7ExtraAmbrosiaPatch },
{ true, 31, "enable subtitles (1/3)", 1, kq7SubtitleFixSignature1, kq7SubtitleFixPatch1 },
{ true, 64928, "enable subtitles (2/3)", 1, kq7SubtitleFixSignature2, kq7SubtitleFixPatch2 },
{ true, 64928, "enable subtitles (3/3)", 1, kq7SubtitleFixSignature3, kq7SubtitleFixPatch3 },
More information about the Scummvm-git-logs
mailing list