mirror of
https://gitlab.com/qemu-project/openbios.git
synced 2024-02-13 08:34:06 +08:00
This patch implements the following Forth words:
debug <xt> - Mark word for debugging
debug-off - Unmark all words for debugging
resume - Return from subordinate Forth interpreter
The source debugger also implements the following commands when it has
been activated:
Up - Unmark current word for debugging, mark parent and continue
Down - Mark next word for debugging
Trace - Continue execution until end of word displaying
debug information
Rstack - Display contents of the Rstack
Forth - Launch subordinate Forth interpreter
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
git-svn-id: svn://coreboot.org/openbios/trunk/openbios-devel@611 f158a5a8-5612-0410-a976-696ce0be7e32
47 lines
974 B
C
47 lines
974 B
C
/* tag: defines the stacks, program counter and ways to access those
|
|
*
|
|
* Copyright (C) 2003 Patrick Mauritz, Stefan Reinauer
|
|
*
|
|
* See the file "COPYING" for further information about
|
|
* the copyright and warranty status of this work.
|
|
*/
|
|
|
|
|
|
#include "openbios/config.h"
|
|
#include "openbios/stack.h"
|
|
#include "cross.h"
|
|
|
|
#define dstacksize 512
|
|
int dstackcnt = 0;
|
|
cell dstack[dstacksize];
|
|
|
|
#define rstacksize 512
|
|
int rstackcnt = 0;
|
|
cell rstack[rstacksize];
|
|
|
|
/* Rstack value saved before entering forth interpreter in debugger */
|
|
int dbgrstackcnt = 0;
|
|
|
|
#if defined(CONFIG_DEBUG_DSTACK) || defined(FCOMPILER)
|
|
void printdstack(void)
|
|
{
|
|
int i;
|
|
printk("dstack:");
|
|
for (i = 0; i <= dstackcnt; i++) {
|
|
printk(" 0x%" FMT_CELL_x , dstack[i]);
|
|
}
|
|
printk("\n");
|
|
}
|
|
#endif
|
|
#if defined(CONFIG_DEBUG_RSTACK) || defined(FCOMPILER)
|
|
void printrstack(void)
|
|
{
|
|
int i;
|
|
printk("rstack:");
|
|
for (i = 0; i <= rstackcnt; i++) {
|
|
printk(" 0x%" FMT_CELL_x , rstack[i]);
|
|
}
|
|
printk("\n");
|
|
}
|
|
#endif
|