aboutsummaryrefslogtreecommitdiff
path: root/gdb/rom68k-rom.c
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1995-03-30 01:47:32 +0000
committerStu Grossman <grossman@cygnus>1995-03-30 01:47:32 +0000
commita706069fdb9f5f49d08bfb83e831020e8ec5b9dd (patch)
treef46f0242bddba3775c0b5d906df3825b345c42ff /gdb/rom68k-rom.c
parent6d7bcd2f26b7b2764af72234faf1830809ca49b5 (diff)
downloadgdb-a706069fdb9f5f49d08bfb83e831020e8ec5b9dd.zip
gdb-a706069fdb9f5f49d08bfb83e831020e8ec5b9dd.tar.gz
gdb-a706069fdb9f5f49d08bfb83e831020e8ec5b9dd.tar.bz2
start-sanitize-gdbtk
* Makefile.in (gdbtk.o): Use X11_CFLAGS to provide alternate locations (per-host) for X11 include files. * config/pa/hppahpux.mh (XM_CLIBS): Add -L/usr/lib/X11R5 to force the use of R5 libs. (X11_CFLAGS): Add this to indicate the locs of the R5 include files. end-sanitize-gdbtk * monitor.c monitor.h remote-est.c rom68k-rom.c: Add start of support for interrupting target. * monitor.c (monitor_open): Send stop command before doing anything else. * (monitor_load_srec): Fix record size calculation to prevent end of segment from getting trashed. * rom68k-rom.c: Update to latest version of struct monitor_ops. * config/sparc/tm-sparc.h (FIX_CALL_DUMMY): Fix byte-order problems. Makes DOS hosted function calling work. * sparclite/crt0.s: Define _start to make COFF happy. * testsuite/config/rom68k.exp (gdb_target_rom68k): Use $targetname, $serialport and $baud instead of hardwired variables. * testsuite/gdb.base/{sigall.exp signals.exp}: Skip these if the target doesn't support signals.
Diffstat (limited to 'gdb/rom68k-rom.c')
-rw-r--r--gdb/rom68k-rom.c30
1 files changed, 21 insertions, 9 deletions
diff --git a/gdb/rom68k-rom.c b/gdb/rom68k-rom.c
index ad5dd00..0fccb82 100644
--- a/gdb/rom68k-rom.c
+++ b/gdb/rom68k-rom.c
@@ -99,24 +99,33 @@ static struct target_ops rom68k_ops;
static char *rom68k_loadtypes[] = {"none", "srec", "default", NULL};
static char *rom68k_loadprotos[] = {"none", NULL};
+static char *rom68k_inits[] = {".\r\r", NULL}; /* Exits pm/pr & download cmds */
+
static struct monitor_ops rom68k_cmds =
{
- 1, /* 1 for ASCII, 0 for binary */
- ".\r\r", /* monitor init string */
- "go \r", /* execute or usually GO command */
- "go \r", /* continue command */
- "st \r", /* single step */
+ 0, /* flags */
+ rom68k_inits, /* monitor init string */
+ "go\r", /* continue command */
+ "st\r", /* single step */
+ NULL, /* No way to interrupt program */
"db %x\r", /* set a breakpoint */
"cb %x\r", /* clear a breakpoint */
- 0, /* 0 for number, 1 for address */
+ "cb *\r", /* clear all breakpoints */
+ "fm %x %x %x\r", /* fill (start len val) */
{
- "pm %x %x\r", /* setmem.cmd (addr, value) */
+ "pm %x %x\r", /* setmem.cmdb (addr, value) */
+ "pm.w %x %x\r", /* setmem.cmdw (addr, value) */
+ "pm.l %x %x\r", /* setmem.cmdl (addr, value) */
+ NULL, /* setmem.cmdll (addr, value) */
NULL, /* setreg.resp_delim */
NULL, /* setreg.term */
NULL, /* setreg.term_cmd */
},
{
- "dm %x %x\r", /* getmem.cmd (addr, len) */
+ "dm %x %x\r", /* getmem.cmdb (addr, len) */
+ "dm.w %x %x\r", /* getmem.cmdw (addr, len) */
+ "dm.l %x %x\r", /* getmem.cmdl (addr, len) */
+ NULL, /* getmem.cmdll (addr, len) */
" ", /* getmem.resp_delim */
NULL, /* getmem.term */
NULL, /* getmem.term_cmd */
@@ -133,10 +142,12 @@ static struct monitor_ops rom68k_cmds =
"= ", /* getreg.term */
".\r" /* getreg.term_cmd */
},
+ "dr\r", /* dump_registers */
/* register_pattern */
"\\(\\w+\\)=\\([0-9a-fA-F]+\\( +[0-9a-fA-F]+\\b\\)*\\)",
rom68k_supply_register, /* supply_register */
"dc\r", /* download command */
+ "Waiting for S-records from host... ", /* Load response */
"ROM68K :->", /* monitor command prompt */
"=", /* end-of-command delimitor */
".\r", /* optional command terminator */
@@ -145,7 +156,8 @@ static struct monitor_ops rom68k_cmds =
rom68k_loadprotos, /* loadprotos */
"9600", /* supported baud rates */
SERIAL_1_STOPBITS, /* number of stop bits */
- rom68k_regnames /* registers names */
+ rom68k_regnames, /* registers names */
+ MONITOR_OPS_MAGIC /* magic */
};
void