[Scummvm-git-logs] scummvm branch-2-9 -> dcefad88690c91e681355827dad62ec0386bf334
AndywinXp
noreply at scummvm.org
Wed Nov 20 21:12:49 UTC 2024
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
aba5523482 SCUMM: DOTT: Partial fix for hotspots being unclickable after load
dcefad8869 SCUMM: DOTT: Disable copy protection
Commit: aba55234820ef2b0b613142eac20234c1ffa7368
https://github.com/scummvm/scummvm/commit/aba55234820ef2b0b613142eac20234c1ffa7368
Author: AndywinXp (andywinxp at gmail.com)
Date: 2024-11-20T22:12:41+01:00
Commit Message:
SCUMM: DOTT: Partial fix for hotspots being unclickable after load
Related to ticket #15404.
Changed paths:
engines/scumm/saveload.cpp
diff --git a/engines/scumm/saveload.cpp b/engines/scumm/saveload.cpp
index 3ceb1023a89..11cc8afd51d 100644
--- a/engines/scumm/saveload.cpp
+++ b/engines/scumm/saveload.cpp
@@ -1335,7 +1335,6 @@ bool ScummEngine::changeSavegameName(int slot, char *newName) {
void ScummEngine::saveLoadWithSerializer(Common::Serializer &s) {
int i;
- int var120Backup;
int var98Backup;
uint8 md5Backup[16];
@@ -1921,7 +1920,14 @@ void ScummEngine::saveLoadWithSerializer(Common::Serializer &s) {
//
// Save/load script variables
//
- var120Backup = _scummVars[120];
+
+ // From disasm...
+ int32 dottVarsBackup[5];
+ if (_game.id == GID_TENTACLE) {
+ for (int j = 0; j < 5; j++)
+ dottVarsBackup[j] = _scummVars[120 + j];
+ }
+
var98Backup = _scummVars[98];
s.syncArray(_roomVars, _numRoomVariables, Common::Serializer::Sint32LE, VER(38));
@@ -1952,8 +1958,14 @@ void ScummEngine::saveLoadWithSerializer(Common::Serializer &s) {
}
}
- if (_game.id == GID_TENTACLE) // Maybe misplaced, but that's the main idea
- _scummVars[120] = var120Backup;
+ // This is again from disasm...
+ if (_game.id == GID_TENTACLE) {
+ for (int j = 0; j < 5; j++)
+ _scummVars[120 + j] = dottVarsBackup[j];
+
+ _scummVars[70] = 1;
+ }
+
if (_game.id == GID_INDY4)
_scummVars[98] = var98Backup;
Commit: dcefad88690c91e681355827dad62ec0386bf334
https://github.com/scummvm/scummvm/commit/dcefad88690c91e681355827dad62ec0386bf334
Author: AndywinXp (andywinxp at gmail.com)
Date: 2024-11-20T22:12:41+01:00
Commit Message:
SCUMM: DOTT: Disable copy protection
This inherently fixes ticket #15404.
"SCUMM: DOTT: nothing clickable after loading save game"
The game will still break if _copyProtection is true,
but at least we can declare the blocker issue as gone.
Changed paths:
engines/scumm/scumm.cpp
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 19df7a7aa19..b672013b3a8 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -1439,6 +1439,11 @@ Common::Error ScummEngine::init() {
resetScumm();
resetScummVars();
+ if (!_copyProtection && _game.id == GID_TENTACLE) {
+ VAR(124) = 1;
+ _bitVars[352 >> 3] |= (1 << (352 & 7));
+ }
+
if (_game.version >= 5 && _game.version <= 7 && _game.id != GID_DIG) {
_sound->setupSound();
// In case of talkie edition without sfx file, enable subtitles
More information about the Scummvm-git-logs
mailing list