[openfirmware] [commit] r3128 - forth/lib
repository service
svn at openfirmware.info
Fri Aug 3 23:10:04 CEST 2012
Author: wmb
Date: Fri Aug 3 23:10:03 2012
New Revision: 3128
URL: http://tracker.coreboot.org/trac/openfirmware/changeset/3128
Log:
Debugger - improvements to visual mode - less likely to lose track of the screen position, new L keystroke to force redisplay.
Modified:
forth/lib/debug.fth
Modified: forth/lib/debug.fth
==============================================================================
--- forth/lib/debug.fth Fri Aug 3 10:48:38 2012 (r3127)
+++ forth/lib/debug.fth Fri Aug 3 23:10:03 2012 (r3128)
@@ -118,6 +118,7 @@
." \ Display Forth return stack as numbers (like the data stack)" cr
." Q Quit: abandon execution of the debugged word" cr
." V Visual: toggle between 2-D and scrolling" cr
+ ." L Visual: redisplay" cr
;
d# 24 constant cmd-column
: to-cmd-column ( -- ) cmd-column to-column ;
@@ -141,7 +142,7 @@
\ : save-result-loc ( -- ) #out @ #line @ to result-loc ;
\ : to-result-loc ( -- ) result-loc at-xy ;
: save-result-loc ( -- ) #out @ to result-col #line @ to result-line ;
-: to-result-loc ( -- ) result-col result-line at-xy ;
+: to-result-loc ( -- ) result-col result-line 2dup at-xy #line ! #out ! ;
\ set-package is a hook for Open Firmware. When Open Firmware is loaded,
\ set-package should be set to a word that sets the active package to the
@@ -187,6 +188,7 @@
page
d# 78 rmargin !
.debug-short-help
+ d# 70 rmargin !
." Callers: " rp0 @ the-rp na1+ rslist kill-line cr
d# 40 rmargin !
the-ip debug-see
@@ -235,6 +237,7 @@
: debug-interact ( -- )
save#
begin
+ setup-debug-display
step? @ if to-debug-window then
show-debug-stack
step? @ key? or if
@@ -269,6 +272,7 @@
ascii * of the-ip find-cfa dup <ip ! 'unnest ip> ! false endof
ascii \ of show-rstack @ 0= show-rstack ! false endof \ toggle return stack display
ascii X of hex-stack @ 0= hex-stack ! false endof \ toggle heX stack display
+ ascii L of true to redisplay? false endof \ Redisplay
ascii V of \ toggle Visual (2D) mode
scrolling-debug? 0= to scrolling-debug?
scrolling-debug? 0= if true to redisplay? then false
@@ -284,7 +288,6 @@
: (trace ( -- )
ip@ to the-ip
rp@ to the-rp
- setup-debug-display
debug-interact
\ scrolling-debug? 0= if to-result-loc then
the-ip token@ dup ['] unnest = swap ['] exit = or if
More information about the openfirmware
mailing list