#include "defs.h"
#include "gdbcore.h"
#include "target.h"
+#include "exceptions.h"
#include <signal.h>
#include <ctype.h>
#include "gdb_string.h"
static int monitor_debug_p = 0;
/* NOTE: This file alternates between monitor_debug_p and remote_debug
- when determining if debug information is printed. Perhaphs this
+ when determining if debug information is printed. Perhaps this
could be simplified. */
static void
return 0;
}
}
-#if 0
- // OBSOLETE else if ((c == '\021' || c == '\023') &&
- // OBSOLETE (STREQ (targ_ops->to_shortname, "m32r")
- // OBSOLETE || STREQ (targ_ops->to_shortname, "mon2000")))
- // OBSOLETE { /* m32r monitor emits random DC1/DC3 chars */
- // OBSOLETE continue;
- // OBSOLETE }
-#endif
else
{
/* We got a character that doesn't match the string. We need to
/* supply register stores in target byte order, so swap here */
- store_unsigned_integer (regbuf, DEPRECATED_REGISTER_RAW_SIZE (regno), val);
+ store_unsigned_integer (regbuf, register_size (current_gdbarch, regno), val);
- supply_register (regno, regbuf);
+ regcache_raw_supply (current_regcache, regno, regbuf);
return p;
}
Give up (and stop debugging it)? "))
{
target_mourn_inferior ();
- throw_exception (RETURN_QUIT);
+ deprecated_throw_reason (RETURN_QUIT);
}
target_terminal_inferior ();
if (!name || (*name == '\0'))
{
monitor_debug ("No register known for %d\n", regno);
- supply_register (regno, zerobuf);
+ regcache_raw_supply (current_regcache, regno, zerobuf);
return;
}
spaces, but stop reading if something else is seen. Some monitors
like to drop leading zeros. */
- for (i = 0; i < DEPRECATED_REGISTER_RAW_SIZE (regno) * 2; i++)
+ for (i = 0; i < register_size (current_gdbarch, regno) * 2; i++)
{
int c;
c = readchar (timeout);
val = read_register (regno);
monitor_debug ("MON storeg %d %s\n", regno,
- phex (val, DEPRECATED_REGISTER_RAW_SIZE (regno)));
+ phex (val, register_size (current_gdbarch, regno)));
/* send the register deposit command */
}
-static int
-monitor_write_even_block (CORE_ADDR memaddr, char *myaddr, int len)
-{
- unsigned int val;
- int written = 0;;
- /* Enter the sub mode */
- monitor_printf (current_monitor->setmem.cmdl, memaddr);
- monitor_expect_prompt (NULL, 0);
-
- while (len)
- {
- val = extract_unsigned_integer (myaddr, 4); /* REALLY */
- monitor_printf ("%x\r", val);
- myaddr += 4;
- memaddr += 4;
- written += 4;
- monitor_debug (" @ %s\n", paddr (memaddr));
- /* If we wanted to, here we could validate the address */
- monitor_expect_prompt (NULL, 0);
- }
- /* Now exit the sub mode */
- monitor_printf (current_monitor->getreg.term_cmd);
- monitor_expect_prompt (NULL, 0);
- return written;
-}
-
-
static int
monitor_write_memory_bytes (CORE_ADDR memaddr, char *myaddr, int len)
{
{
return monitor_write_memory_longlongs (memaddr, myaddr, len);
}
-#endif
-#if 0
- if (len > 4)
- {
- int sublen;
- written = monitor_write_even_block (memaddr, myaddr, len);
- /* Adjust calling parameters by written amount */
- memaddr += written;
- myaddr += written;
- len -= written;
- }
#endif
written = monitor_write_memory_bytes (memaddr, myaddr, len);
return written;
the program at that point. */
static void
-monitor_create_inferior (char *exec_file, char *args, char **env)
+monitor_create_inferior (char *exec_file, char *args, char **env,
+ int from_tty)
{
if (args && (*args != '\000'))
error ("Args are not supported by the monitor.");
monitor_ops.to_fetch_registers = monitor_fetch_registers;
monitor_ops.to_store_registers = monitor_store_registers;
monitor_ops.to_prepare_to_store = monitor_prepare_to_store;
- monitor_ops.to_xfer_memory = monitor_xfer_memory;
+ monitor_ops.deprecated_xfer_memory = monitor_xfer_memory;
monitor_ops.to_files_info = monitor_files_info;
monitor_ops.to_insert_breakpoint = monitor_insert_breakpoint;
monitor_ops.to_remove_breakpoint = monitor_remove_breakpoint;
_initialize_remote_monitors (void)
{
init_base_monitor_ops ();
- add_show_from_set (add_set_cmd ("hash", no_class, var_boolean,
- (char *) &hashmark,
- "Set display of activity while downloading a file.\n\
+ deprecated_add_show_from_set
+ (add_set_cmd ("hash", no_class, var_boolean,
+ (char *) &hashmark,
+ "Set display of activity while downloading a file.\n\
When enabled, a hashmark \'#\' is displayed.",
- &setlist),
- &showlist);
+ &setlist),
+ &showlist);
- add_show_from_set
+ deprecated_add_show_from_set
(add_set_cmd ("monitor", no_class, var_zinteger,
(char *) &monitor_debug_p,
"Set debugging of remote monitor communication.\n\