From be5de4982973e07e5fa06a0ff7e239ef33841a1b Mon Sep 17 00:00:00 2001 From: Jeff Parsons Date: Tue, 8 Sep 2015 11:13:41 -0700 Subject: [PATCH] Added stack trace help --- modules/pcjs/lib/debugger.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/modules/pcjs/lib/debugger.js b/modules/pcjs/lib/debugger.js index c9861a39a..4e3635ff9 100644 --- a/modules/pcjs/lib/debugger.js +++ b/modules/pcjs/lib/debugger.js @@ -6848,11 +6848,19 @@ if (DEBUGGER) { */ Debugger.prototype.doStackTrace = function(sCmd, sAddr) { + if (sAddr == '?') { + this.println("stack trace commands:"); + this.println("\tk\tshow frame addresses"); + this.println("\tks\tshow symbol information"); + return; + } + var nFrames = 10, cFrames = 0; var selCode = this.cpu.segCS.sel; var dbgAddrCall = this.newAddr(); var dbgAddrStack = this.newAddr(this.cpu.getSP(), this.cpu.getSS()); this.println("stack trace for " + this.hexAddr(dbgAddrStack)); + while (cFrames < nFrames) { var sCall = null, cTests = 256; while ((dbgAddrStack.off >>> 0) < (this.cpu.regLSPLimit >>> 0)) { @@ -7204,6 +7212,7 @@ if (DEBUGGER) { this.doInput(asArgs[1]); break; case 'k': + this.shiftArgs(asArgs); this.doStackTrace(asArgs[0], asArgs[1]); break; case 'l':