diff options
author | Willem Jan Palenstijn | 2016-04-02 00:04:00 +0200 |
---|---|---|
committer | Willem Jan Palenstijn | 2016-07-02 21:25:53 +0200 |
commit | 08f1727b0813c9e20a2462402f58c4578c5902c8 (patch) | |
tree | e01580fe23784ebde32260f4a4fa4bb6f8ab16ed /engines/sci/console.cpp | |
parent | 9f2fff4f6614cd2ab11cf0d236ac553319e94702 (diff) | |
download | scummvm-rg350-08f1727b0813c9e20a2462402f58c4578c5902c8.tar.gz scummvm-rg350-08f1727b0813c9e20a2462402f58c4578c5902c8.tar.bz2 scummvm-rg350-08f1727b0813c9e20a2462402f58c4578c5902c8.zip |
SCI: Improve kernel subfunction logging
ExecStack now stores the kernel call number as well as the subfunction.
This allows kStub and backtraces to log the actual subfunction called.
The kernel call number in ExecStack used to be stored in the
debugSelector field. It now has its own field, to avoid confusion.
Diffstat (limited to 'engines/sci/console.cpp')
-rw-r--r-- | engines/sci/console.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp index 27ac4fac49..2c74fe4b0c 100644 --- a/engines/sci/console.cpp +++ b/engines/sci/console.cpp @@ -3094,7 +3094,10 @@ bool Console::cmdBacktrace(int argc, const char **argv) { break; case EXEC_STACK_TYPE_KERNEL: // Kernel function - debugPrintf(" %x:[%x] k%s(", i, call.debugOrigin, _engine->getKernel()->getKernelName(call.debugSelector).c_str()); + if (call.debugKernelSubFunction == -1) + debugPrintf(" %x:[%x] k%s(", i, call.debugOrigin, _engine->getKernel()->getKernelName(call.debugKernelFunction).c_str()); + else + debugPrintf(" %x:[%x] k%s(", i, call.debugOrigin, _engine->getKernel()->getKernelName(call.debugKernelFunction, call.debugKernelSubFunction).c_str()); break; case EXEC_STACK_TYPE_VARSELECTOR: |