[Scummvm-cvs-logs] CVS: scummvm/scumm script.cpp,1.156,1.157
Max Horn
fingolfin at users.sourceforge.net
Mon Apr 5 15:16:11 CEST 2004
Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26306
Modified Files:
script.cpp
Log Message:
Paranoid fix for potential 64bit issue; some possibly useful debug output added
Index: script.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/script.cpp,v
retrieving revision 1.156
retrieving revision 1.157
diff -u -d -r1.156 -r1.157
--- script.cpp 4 Apr 2004 23:29:09 -0000 1.156
+++ script.cpp 5 Apr 2004 22:02:58 -0000 1.157
@@ -429,7 +429,7 @@
byte ScummEngine::fetchScriptByte() {
if (*_lastCodePtr + sizeof(MemBlkHeader) != _scriptOrgPointer) {
- uint32 oldoffs = _scriptPointer - _scriptOrgPointer;
+ long oldoffs = _scriptPointer - _scriptOrgPointer;
getScriptBaseAddress();
_scriptPointer = _scriptOrgPointer + oldoffs;
}
@@ -439,7 +439,7 @@
uint ScummEngine::fetchScriptWord() {
int a;
if (*_lastCodePtr + sizeof(MemBlkHeader) != _scriptOrgPointer) {
- uint32 oldoffs = _scriptPointer - _scriptOrgPointer;
+ long oldoffs = _scriptPointer - _scriptOrgPointer;
getScriptBaseAddress();
_scriptPointer = _scriptOrgPointer + oldoffs;
}
@@ -540,6 +540,8 @@
}
void ScummEngine::writeVar(uint var, int value) {
+ debugC(DEBUG_VARS, "writeVar(%d, %d)", var, value);
+
if (!(var & 0xF000)) {
checkRange(_numVariables - 1, 0, var, "Variable %d out of range(w)");
@@ -630,6 +632,7 @@
void ScummEngine::push(int a) {
assert(_scummStackPos >= 0 && _scummStackPos < ARRAYSIZE(_vmStack));
+ //debug(9, "push %d", a);
_vmStack[_scummStackPos++] = a;
}
@@ -637,8 +640,9 @@
if (_scummStackPos < 1 || _scummStackPos > ARRAYSIZE(_vmStack)) {
error("No items on stack to pop() for %s (0x%X) at [%d-%d]", getOpcodeDesc(_opcode), _opcode, _roomResource, vm.slot[_currentScript].number);
}
-
- return _vmStack[--_scummStackPos];
+ --_scummStackPos;
+ //debug(9, "pop %d", _vmStack[_scummStackPos]);
+ return _vmStack[_scummStackPos];
}
void ScummEngine::stopObjectCode() {
More information about the Scummvm-git-logs
mailing list