/* Remote debugging interface for PPCbug (PowerPC) Rom monitor
for GDB, the GNU debugger.
- Copyright 1995 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1998, 1999, 2000, 2001, 2007
+ Free Software Foundation, Inc.
Written by Stu Grossman of Cygnus Support
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
#include "defs.h"
#include "gdbcore.h"
#include "target.h"
#include "monitor.h"
#include "serial.h"
-
-static void ppcbug_open PARAMS ((char *args, int from_tty));
+#include "regcache.h"
static void
-ppcbug_supply_register (regname, regnamelen, val, vallen)
- char *regname;
- int regnamelen;
- char *val;
- int vallen;
+ppcbug_supply_register (struct regcache *regcache, char *regname,
+ int regnamelen, char *val, int vallen)
{
- int regno = 0, base = 0;
+ int regno = 0;
if (regnamelen < 2 || regnamelen > 4)
return;
return;
}
- monitor_supply_register (regno, val);
+ monitor_supply_register (regcache, regno, val);
}
/*
* registers either. So, typing "info reg sp" becomes an "A7".
*/
-static char *ppcbug_regnames[NUM_REGS] =
+static char *ppcbug_regnames[] =
{
"r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
"r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",
OPS->getreg.term = NULL; /* getreg.term */
OPS->getreg.term_cmd = NULL; /* getreg.term_cmd */
OPS->register_pattern = "\\(\\w+\\) +=\\([0-9a-fA-F]+\\b\\)"; /* register_pattern */
- OPS->supply_register = ppcbug_supply_register; /* supply_register */
+ OPS->supply_register = ppcbug_supply_register;
OPS->dump_registers = "rd\r"; /* dump all registers */
OPS->load_routine = NULL; /* load_routine (defaults to SRECs) */
OPS->load = LOAD_CMD; /* download command */
static struct monitor_ops ppcbug_cmds1;
static void
-ppcbug_open0 (args, from_tty)
- char *args;
- int from_tty;
+ppcbug_open0 (char *args, int from_tty)
{
monitor_open (args, &ppcbug_cmds0, from_tty);
}
static void
-ppcbug_open1 (args, from_tty)
- char *args;
- int from_tty;
+ppcbug_open1 (char *args, int from_tty)
{
monitor_open (args, &ppcbug_cmds1, from_tty);
}
+extern initialize_file_ftype _initialize_ppcbug_rom; /* -Wmissing-prototypes */
+
void
-_initialize_ppcbug_rom ()
+_initialize_ppcbug_rom (void)
{
init_ppc_cmds ("lo 0\r", &ppcbug_cmds0, &ppcbug_ops0);
init_ppc_cmds ("lo 1\r", &ppcbug_cmds1, &ppcbug_ops1);