[Scummvm-cvs-logs] scummvm master -> d6dafa822ae82a1a9d7aa7eb19327b2a414cd6af

m-kiewitz m_kiewitz at users.sourceforge.net
Fri Dec 20 16:06:11 CET 2013


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:
d6dafa822a SCI: final script patcher cleanup


Commit: d6dafa822ae82a1a9d7aa7eb19327b2a414cd6af
    https://github.com/scummvm/scummvm/commit/d6dafa822ae82a1a9d7aa7eb19327b2a414cd6af
Author: Martin Kiewitz (m_kiewitz at users.sourceforge.net)
Date: 2013-12-20T07:05:36-08:00

Commit Message:
SCI: final script patcher cleanup

Changed paths:
    engines/sci/engine/script_patches.cpp
    engines/sci/engine/script_patches.h



diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 4766c04..d040ec4 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -546,7 +546,7 @@ static const uint16 gk1SignatureDay6PoliceBeignet[] = {
 static const uint16 gk1PatchDay6PoliceBeignet[] = {
 	PATCH_ADDTOOFFSET(+16),
 	0x34, PATCH_UINT16(0x0017),         // ldi 23
-	0x65, PATCH_GETORIGINALBYTEADJUST +20, +2, // aTop seconds (1c for PC, 1e for Mac)
+	0x65, PATCH_GETORIGINALBYTEADJUST(+20, +2), // aTop seconds (1c for PC, 1e for Mac)
 	PATCH_END
 };
 
@@ -568,7 +568,7 @@ static const uint16 gk1SignatureDay6PoliceSleep[] = {
 static const uint16 gk1PatchDay6PoliceSleep[] = {
 	PATCH_ADDTOOFFSET(+5),
 	0x34, SIG_UINT16(0x002a),           // ldi 42
-	0x65, PATCH_GETORIGINALBYTEADJUST +9, +2, // aTop seconds (1c for PC, 1e for Mac)
+	0x65, PATCH_GETORIGINALBYTEADJUST(+9, +2), // aTop seconds (1c for PC, 1e for Mac)
 	PATCH_END
 };
 
@@ -589,7 +589,7 @@ static const uint16 gk1SignatureDay5PhoneFreeze[] = {
 static const uint16 gk1PatchDay5PhoneFreeze[] = {
 	PATCH_ADDTOOFFSET(+3),
 	0x35, 0x06,                         // ldi 01
-	0x65, PATCH_GETORIGINALBYTEADJUST +6, +6, // aTop ticks
+	0x65, PATCH_GETORIGINALBYTEADJUST(+6, +6), // aTop ticks
 	PATCH_END
 };
 
@@ -861,8 +861,8 @@ static const uint16 kq6PatchInventoryStackFix[] = {
 	0x12,                               // and
 	0x65, 0x30,                         // aTop state
 	0x38,                               // pushi "show"
-	PATCH_GETORIGINALBYTE +22,
-	PATCH_GETORIGINALBYTE +23,
+	PATCH_GETORIGINALBYTE(+22),
+	PATCH_GETORIGINALBYTE(+23),
 	0x78,                               // push1
 	0x87, 0x00,                         // lap param[0]
 	0x31, 0x04,                         // bnt [call show using global 0]
@@ -871,7 +871,7 @@ static const uint16 kq6PatchInventoryStackFix[] = {
 	0x89, 0x00,                         // lsg global[0], save 1 byte total, see above
 	0x54, 0x06,                         // self 06 (call x::show)
 	0x31,                               // bnt [menu exit code]
-	PATCH_GETORIGINALBYTEADJUST +39, +6,// dynamic offset must be 0x0E for PC and 0x0D for mac
+	PATCH_GETORIGINALBYTEADJUST(+39, +6),// dynamic offset must be 0x0E for PC and 0x0D for mac
 	0x34, PATCH_UINT16(0x2000),         // ldi 2000
 	0x12,                               // and
 	0x2f, 0x05,                         // bt [to return]
@@ -918,7 +918,7 @@ static const uint16 kq6SignatureDrinkMeFix[] = {
 
 static const uint16 kq6PatchDrinkMeFix[] = {
 	PATCH_ADDTOOFFSET(+5),              // skip to bnt offset
-	PATCH_GETORIGINALBYTEADJUST +5, +13, // adjust jump to [check for 11h code]
+	PATCH_GETORIGINALBYTEADJUST(+5, +13), // adjust jump to [check for 11h code]
 	PATCH_ADDTOOFFSET(+162),
 	0x39, PATCH_SELECTOR8(doit),        // pushi (doit)
 	0x76,                               // push0
@@ -1113,7 +1113,7 @@ static const uint16 kq6CDSignatureAudioTextSupport4[] = {
 
 static const uint16 kq6CDPatchAudioTextSupport4[] = {
 	PATCH_ADDTOOFFSET(+12),
-	0x33, PATCH_GETORIGINALBYTEADJUST +13, (uint16)-6, // adjust jump to also include setSize call
+	0x33, PATCH_GETORIGINALBYTEADJUST(+13, -6), // adjust jump to also include setSize call
 	PATCH_END
 };
 
@@ -2267,7 +2267,7 @@ void ScriptPatcher::applyPatch(const SciScriptPatcherEntry *patchEntry, byte *sc
 			offset += patchValue;
 			break;
 		}
-		case PATCH_GETORIGINALBYTE: {
+		case PATCH_CODE_GETORIGINALBYTE: {
 			// get original byte from script
 			if (patchValue >= orgDataSize)
 				error("Script-Patcher: can not get requested original byte from script");
@@ -2275,7 +2275,7 @@ void ScriptPatcher::applyPatch(const SciScriptPatcherEntry *patchEntry, byte *sc
 			offset++;
 			break;
 		}
-		case PATCH_GETORIGINALBYTEADJUST: {
+		case PATCH_CODE_GETORIGINALBYTEADJUST: {
 			// get original byte from script and adjust it
 			if (patchValue >= orgDataSize)
 				error("Script-Patcher: can not get requested original byte from script");
diff --git a/engines/sci/engine/script_patches.h b/engines/sci/engine/script_patches.h
index 563d00a..9e572f3 100644
--- a/engines/sci/engine/script_patches.h
+++ b/engines/sci/engine/script_patches.h
@@ -44,21 +44,23 @@ namespace Sci {
 #define SIG_UINT16(_value_)          SIG_CODE_UINT16 | (_value_ & 0xFF), (_value_ >> 8)
 #define SIG_CODE_BYTE                0x0000
 
-#define PATCH_END                      SIG_END
-#define PATCH_COMMANDMASK              SIG_COMMANDMASK
-#define PATCH_VALUEMASK                SIG_VALUEMASK
-#define PATCH_BYTEMASK                 SIG_BYTEMASK
-#define PATCH_CODE_ADDTOOFFSET         SIG_CODE_ADDTOOFFSET
-#define PATCH_ADDTOOFFSET(_offset_)    SIG_CODE_ADDTOOFFSET | _offset_
-#define PATCH_GETORIGINALBYTE          0xD000
-#define PATCH_GETORIGINALBYTEADJUST    0xC000
-#define PATCH_CODE_SELECTOR16          SIG_CODE_SELECTOR16
-#define PATCH_SELECTOR16(_selectorID_) SIG_CODE_SELECTOR16 | SELECTOR_##_selectorID_
-#define PATCH_CODE_SELECTOR8           SIG_CODE_SELECTOR8
-#define PATCH_SELECTOR8(_selectorID_)  SIG_CODE_SELECTOR8 | SELECTOR_##_selectorID_
-#define PATCH_CODE_UINT16              SIG_CODE_UINT16
-#define PATCH_UINT16(_value_)          SIG_CODE_UINT16 | (_value_ & 0xFF), (_value_ >> 8)
-#define PATCH_CODE_BYTE                SIG_CODE_BYTE
+#define PATCH_END                                            SIG_END
+#define PATCH_COMMANDMASK                                    SIG_COMMANDMASK
+#define PATCH_VALUEMASK                                      SIG_VALUEMASK
+#define PATCH_BYTEMASK                                       SIG_BYTEMASK
+#define PATCH_CODE_ADDTOOFFSET                               SIG_CODE_ADDTOOFFSET
+#define PATCH_ADDTOOFFSET(_offset_)                          SIG_CODE_ADDTOOFFSET | _offset_
+#define PATCH_CODE_GETORIGINALBYTE                           0xD000
+#define PATCH_GETORIGINALBYTE(_offset_)                      PATCH_CODE_GETORIGINALBYTE | _offset_
+#define PATCH_CODE_GETORIGINALBYTEADJUST                     0xC000
+#define PATCH_GETORIGINALBYTEADJUST(_offset_, _adjustValue_) PATCH_CODE_GETORIGINALBYTEADJUST | _offset_, (uint16)(_adjustValue_)
+#define PATCH_CODE_SELECTOR16                                SIG_CODE_SELECTOR16
+#define PATCH_SELECTOR16(_selectorID_)                       SIG_CODE_SELECTOR16 | SELECTOR_##_selectorID_
+#define PATCH_CODE_SELECTOR8                                 SIG_CODE_SELECTOR8
+#define PATCH_SELECTOR8(_selectorID_)                        SIG_CODE_SELECTOR8 | SELECTOR_##_selectorID_
+#define PATCH_CODE_UINT16                                    SIG_CODE_UINT16
+#define PATCH_UINT16(_value_)                                SIG_CODE_UINT16 | (_value_ & 0xFF), (_value_ >> 8)
+#define PATCH_CODE_BYTE                                      SIG_CODE_BYTE
 
 // defines maximum scratch area for getting original bytes from unpatched script data
 #define PATCH_VALUELIMIT      4096






More information about the Scummvm-git-logs mailing list