aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2010-07-28 11:37:22 +0000
committerFilippos Karapetis2010-07-28 11:37:22 +0000
commite0f6bb2e7aa27f9d1ac214bb7f68e0b6bb8a5f78 (patch)
treebb6eb3c813cf53bf33c895d52b215a314b75078a
parent16f042270d885b96c5e93d99755c2c8997fb7e36 (diff)
downloadscummvm-rg350-e0f6bb2e7aa27f9d1ac214bb7f68e0b6bb8a5f78.tar.gz
scummvm-rg350-e0f6bb2e7aa27f9d1ac214bb7f68e0b6bb8a5f78.tar.bz2
scummvm-rg350-e0f6bb2e7aa27f9d1ac214bb7f68e0b6bb8a5f78.zip
SCI: Adding the room number to some more errors
svn-id: r51413
-rw-r--r--engines/sci/engine/vm.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/sci/engine/vm.cpp b/engines/sci/engine/vm.cpp
index 1e5d61fceb..6625387b56 100644
--- a/engines/sci/engine/vm.cpp
+++ b/engines/sci/engine/vm.cpp
@@ -203,7 +203,10 @@ static reg_t arithmetic_lookForWorkaround(const byte opcode, const SciWorkaround
SciTrackOriginReply originReply;
SciWorkaroundSolution solution = trackOriginAndFindWorkaround(0, workaroundList, &originReply);
if (solution.type == WORKAROUND_NONE)
- error("%s on non-integer (%04x:%04x, %04x:%04x) from method %s::%s (script %d, localCall %x)", opcodeNames[opcode], PRINT_REG(value1), PRINT_REG(value2), originReply.objectName.c_str(), originReply.methodName.c_str(), originReply.scriptNr, originReply.localCallOffset);
+ error("%s on non-integer (%04x:%04x, %04x:%04x) from method %s::%s (script %d, room %d, localCall %x)",
+ opcodeNames[opcode], PRINT_REG(value1), PRINT_REG(value2), originReply.objectName.c_str(),
+ originReply.methodName.c_str(), originReply.scriptNr, g_sci->getEngineState()->currentRoomNumber(),
+ originReply.localCallOffset);
assert(solution.type == WORKAROUND_FAKE);
return make_reg(0, solution.value);
}
@@ -218,7 +221,9 @@ static reg_t validate_read_var(reg_t *r, reg_t *stack_base, int type, int max, i
SciTrackOriginReply originReply;
SciWorkaroundSolution solution = trackOriginAndFindWorkaround(index, uninitializedReadWorkarounds, &originReply);
if (solution.type == WORKAROUND_NONE)
- error("Uninitialized read for temp %d from method %s::%s (script %d, localCall %x)", index, originReply.objectName.c_str(), originReply.methodName.c_str(), originReply.scriptNr, originReply.localCallOffset);
+ error("Uninitialized read for temp %d from method %s::%s (script %d, room %d, localCall %x)",
+ index, originReply.objectName.c_str(), originReply.methodName.c_str(), originReply.scriptNr,
+ g_sci->getEngineState()->currentRoomNumber(), originReply.localCallOffset);
assert(solution.type == WORKAROUND_FAKE);
r[index] = make_reg(0, solution.value);
break;