diff options
author | Eugene Sandulenko | 2016-08-19 09:20:32 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2016-08-19 09:55:22 +0200 |
commit | 2074fad2cf48e901d3cacccad200d13e88487f82 (patch) | |
tree | 36a4d36c281810261e60931e65686867a8acc857 | |
parent | cd8415cfd6e51ef8ab2d4e51ddb4a120253e3b96 (diff) | |
download | scummvm-rg350-2074fad2cf48e901d3cacccad200d13e88487f82.tar.gz scummvm-rg350-2074fad2cf48e901d3cacccad200d13e88487f82.tar.bz2 scummvm-rg350-2074fad2cf48e901d3cacccad200d13e88487f82.zip |
DIRECTOR: Lingo: Improved stack content trace
-rw-r--r-- | engines/director/lingo/lingo-codegen.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/engines/director/lingo/lingo-codegen.cpp b/engines/director/lingo/lingo-codegen.cpp index 44ae8e9492..3b7278488f 100644 --- a/engines/director/lingo/lingo-codegen.cpp +++ b/engines/director/lingo/lingo-codegen.cpp @@ -57,10 +57,14 @@ void Lingo::execute(int pc) { debugC(1, kDebugLingoExec, "[%3d]: %s", _pc, instr.c_str()); + Common::String stack("Stack: "); + for (uint i = 0; i < _stack.size(); i++) { - debugCN(5, kDebugLingoExec, "%d ", _stack[i].u.i); + Datum d = _stack[i]; + d.toString(); + stack += Common::String::format("<%s> ", d.u.s->c_str()); } - debugCN(5, kDebugLingoExec, "%s", ""); + debugC(5, kDebugLingoExec, "%s", stack.c_str()); _pc++; (*((*_currentScript)[_pc - 1]))(); @@ -78,7 +82,6 @@ Common::String Lingo::decodeInstruction(int pc) { inst i; while (*pars) { - warning("--- %d of %d -- %s", pc, _currentScript->size(), res.c_str()); switch (*pars++) { case 'i': { |