diff options
author | Martin Kiewitz | 2013-12-22 21:15:40 +0100 |
---|---|---|
committer | Martin Kiewitz | 2013-12-22 21:15:40 +0100 |
commit | 3514f413028864fe8294158c33a1acad53d33e85 (patch) | |
tree | 8ffefa1333e90ca53fb5380f8e36b89874fd3a2f | |
parent | d5331ab923c74ecfd6aa5a0b0f2e7ffdde6ea7d5 (diff) | |
download | scummvm-rg350-3514f413028864fe8294158c33a1acad53d33e85.tar.gz scummvm-rg350-3514f413028864fe8294158c33a1acad53d33e85.tar.bz2 scummvm-rg350-3514f413028864fe8294158c33a1acad53d33e85.zip |
SCI: LB2CD patch: remove audio mode reset code
on init/reset the game resets the audio mode to "speech", which would make it impossible to watch the intro using "dual mode"
-rw-r--r-- | engines/sci/engine/script_patches.cpp | 40 |
1 files changed, 30 insertions, 10 deletions
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp index d9a03fbf0e..1d1e24d562 100644 --- a/engines/sci/engine/script_patches.cpp +++ b/engines/sci/engine/script_patches.cpp @@ -1576,6 +1576,24 @@ static const uint16 laurabow2CDPatchFixProblematicIconBar[] = { PATCH_END }; +// Laura Bow 2 CD resets the audio mode to speech on init/restart +// We already sync the settings from ScummVM (see SciEngine::syncIngameAudioOptions()) +// and this script code would make it impossible to see the intro using "dual" mode w/o using debugger command +// That's why we remove the corresponding code +// Patched method: LB2::init, rm100::init +static const uint16 laurabow2CDSignatureAudioTextSupportModeReset[] = { + SIG_MAGICDWORD, + 0x35, 0x02, // ldi 02 + 0xa1, 0x5a, // sag global[5a] + SIG_END +}; + +static const uint16 laurabow2CDPatchAudioTextSupportModeReset[] = { + 0x34, PATCH_UINT16(0x0001), // ldi 0001 (waste bytes) + 0x18, // not (waste bytes) + PATCH_END +}; + // Directly use global 5a for view-cel id // That way it's possible to use a new "dual" mode view in the game menu // View 995, loop 13, cel 0 -> "text" @@ -1643,18 +1661,20 @@ static const uint16 laurabow2CDPatchAudioTextMenuSupport2[] = { PATCH_END }; -// script, description, signature patch +// script, description, signature patch static const SciScriptPatcherEntry laurabow2Signatures[] = { - { true, 560, "CD: painting closing immediately", 1, laurabow2CDSignaturePaintingClosing, laurabow2CDPatchPaintingClosing }, - { true, 0, "CD: fix problematic icon bar", 1, laurabow2CDSignatureFixProblematicIconBar, laurabow2CDPatchFixProblematicIconBar }, + { true, 560, "CD: painting closing immediately", 1, laurabow2CDSignaturePaintingClosing, laurabow2CDPatchPaintingClosing }, + { true, 0, "CD: fix problematic icon bar", 1, laurabow2CDSignatureFixProblematicIconBar, laurabow2CDPatchFixProblematicIconBar }, // King's Quest 6 and Laura Bow 2 share basic patches for audio + text support - { false, 924, "CD: audio + text support 1", 1, kq6laurabow2CDSignatureAudioTextSupport1, kq6laurabow2CDPatchAudioTextSupport1 }, - { false, 924, "CD: audio + text support 2", 1, kq6laurabow2CDSignatureAudioTextSupport2, kq6laurabow2CDPatchAudioTextSupport2 }, - { false, 924, "CD: audio + text support 3", 1, kq6laurabow2CDSignatureAudioTextSupport3, kq6laurabow2CDPatchAudioTextSupport3 }, - { false, 928, "CD: audio + text support 4", 1, kq6laurabow2CDSignatureAudioTextSupport4, kq6laurabow2CDPatchAudioTextSupport4 }, - { false, 928, "CD: audio + text support 5", 2, kq6laurabow2CDSignatureAudioTextSupport5, kq6laurabow2CDPatchAudioTextSupport5 }, - { false, 24, "CD: audio + text support LB2 menu 1", 1, laurabow2CDSignatureAudioTextMenuSupport1, laurabow2CDPatchAudioTextMenuSupport1 }, - { false, 24, "CD: audio + text support LB2 menu 2", 1, laurabow2CDSignatureAudioTextMenuSupport2, laurabow2CDPatchAudioTextMenuSupport2 }, + { false, 924, "CD: audio + text support 1", 1, kq6laurabow2CDSignatureAudioTextSupport1, kq6laurabow2CDPatchAudioTextSupport1 }, + { false, 924, "CD: audio + text support 2", 1, kq6laurabow2CDSignatureAudioTextSupport2, kq6laurabow2CDPatchAudioTextSupport2 }, + { false, 924, "CD: audio + text support 3", 1, kq6laurabow2CDSignatureAudioTextSupport3, kq6laurabow2CDPatchAudioTextSupport3 }, + { false, 928, "CD: audio + text support 4", 1, kq6laurabow2CDSignatureAudioTextSupport4, kq6laurabow2CDPatchAudioTextSupport4 }, + { false, 928, "CD: audio + text support 5", 2, kq6laurabow2CDSignatureAudioTextSupport5, kq6laurabow2CDPatchAudioTextSupport5 }, + { false, 0, "CD: audio + text support disable mode reset", 1, laurabow2CDSignatureAudioTextSupportModeReset, laurabow2CDPatchAudioTextSupportModeReset }, + { false, 100, "CD: audio + text support disable mode reset", 1, laurabow2CDSignatureAudioTextSupportModeReset, laurabow2CDPatchAudioTextSupportModeReset }, + { false, 24, "CD: audio + text support LB2 menu 1", 1, laurabow2CDSignatureAudioTextMenuSupport1, laurabow2CDPatchAudioTextMenuSupport1 }, + { false, 24, "CD: audio + text support LB2 menu 2", 1, laurabow2CDSignatureAudioTextMenuSupport2, laurabow2CDPatchAudioTextMenuSupport2 }, SCI_SIGNATUREENTRY_TERMINATOR }; |