control. */
void
-monitor_close (int quitting)
+monitor_close (void)
{
if (monitor_desc)
serial_close (monitor_desc);
}
static int
-monitor_write_memory (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_write_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ());
unsigned int val, hostval;
static int
-monitor_write_memory_bytes (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_write_memory_bytes (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
unsigned char val;
int written = 0;
Which possably entails endian conversions. */
static int
-monitor_write_memory_longlongs (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_write_memory_longlongs (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
static char hexstage[20]; /* At least 16 digits required, plus null. */
char *endstring;
long long value;
int written = 0;
- llptr = (unsigned long long *) myaddr;
+ llptr = (long long *) myaddr;
if (len == 0)
return 0;
monitor_printf (current_monitor->setmem.cmdll, memaddr);
monitor variations. */
static int
-monitor_write_memory_block (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_write_memory_block (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
int written;
which can only read a single byte/word/etc. at a time. */
static int
-monitor_read_memory_single (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_read_memory_single (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
enum bfd_endian byte_order = gdbarch_byte_order (target_gdbarch ());
unsigned int val;
than 16 bytes at a time. */
static int
-monitor_read_memory (CORE_ADDR memaddr, char *myaddr, int len)
+monitor_read_memory (CORE_ADDR memaddr, gdb_byte *myaddr, int len)
{
unsigned int val;
char buf[512];
static void
monitor_load (char *args, int from_tty)
{
- monitor_debug ("MON load\n");
+ CORE_ADDR load_offset = 0;
+ char **argv;
+ struct cleanup *old_cleanups;
+ char *filename;
- if (current_monitor->load_routine)
- current_monitor->load_routine (monitor_desc, args, hashmark);
- else
- { /* The default is ascii S-records. */
- CORE_ADDR load_offset = 0;
- char **argv;
- struct cleanup *old_cleanups;
- char *filename;
+ monitor_debug ("MON load\n");
- if (args == NULL)
- error_no_arg (_("file to load"));
+ if (args == NULL)
+ error_no_arg (_("file to load"));
- argv = gdb_buildargv (args);
- old_cleanups = make_cleanup_freeargv (argv);
+ argv = gdb_buildargv (args);
+ old_cleanups = make_cleanup_freeargv (argv);
- filename = tilde_expand (argv[0]);
- make_cleanup (xfree, filename);
+ filename = tilde_expand (argv[0]);
+ make_cleanup (xfree, filename);
- /* Enable user to specify address for downloading as 2nd arg to load. */
- if (argv[1] != NULL)
- {
- const char *endptr;
+ /* Enable user to specify address for downloading as 2nd arg to load. */
+ if (argv[1] != NULL)
+ {
+ const char *endptr;
- load_offset = strtoulst (argv[1], &endptr, 0);
+ load_offset = strtoulst (argv[1], &endptr, 0);
- /* If the last word was not a valid number then
- treat it as a file name with spaces in. */
- if (argv[1] == endptr)
- error (_("Invalid download offset:%s."), argv[1]);
+ /* If the last word was not a valid number then
+ treat it as a file name with spaces in. */
+ if (argv[1] == endptr)
+ error (_("Invalid download offset:%s."), argv[1]);
- if (argv[2] != NULL)
- error (_("Too many parameters."));
- }
+ if (argv[2] != NULL)
+ error (_("Too many parameters."));
+ }
- monitor_printf (current_monitor->load);
- if (current_monitor->loadresp)
- monitor_expect (current_monitor->loadresp, NULL, 0);
+ monitor_printf (current_monitor->load);
+ if (current_monitor->loadresp)
+ monitor_expect (current_monitor->loadresp, NULL, 0);
- load_srec (monitor_desc, filename, load_offset,
- 32, SREC_ALL, hashmark,
- current_monitor->flags & MO_SREC_ACK ?
- monitor_wait_srec_ack : NULL);
+ load_srec (monitor_desc, filename, load_offset,
+ 32, SREC_ALL, hashmark,
+ current_monitor->flags & MO_SREC_ACK ?
+ monitor_wait_srec_ack : NULL);
- monitor_expect_prompt (NULL, 0);
+ monitor_expect_prompt (NULL, 0);
- do_cleanups (old_cleanups);
- }
+ do_cleanups (old_cleanups);
/* Finally, make the PC point at the start address. */
if (exec_bfd)