2003-04-15 David Carlton <carlton@math.stanford.edu>
[deliverable/binutils-gdb.git] / gdb / v850ice.c
index dba9514db6d6f06d78130c408e0afc3751a13bcc..770e942a8d1235c22102e2de088160a9f27e72b0 100644 (file)
@@ -1,5 +1,6 @@
 /* ICE interface for the NEC V850 for GDB, the GNU debugger.
-   Copyright 1996, 2000 Free Software Foundation, Inc.
+   Copyright 1996, 1997, 1998, 1999, 2000, 2001
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -30,6 +31,7 @@
 #include "gdbcore.h"
 #include "value.h"
 #include "command.h"
+#include "regcache.h"
 
 #include <tcl.h>
 #include <windows.h>
@@ -46,93 +48,88 @@ struct MessageIO
   };
 
 /* Prototypes for functions located in other files */
-extern void break_command PARAMS ((char *, int));
+extern void break_command (char *, int);
 
-extern void stepi_command PARAMS ((char *, int));
-
-extern void nexti_command PARAMS ((char *, int));
-
-extern void continue_command PARAMS ((char *, int));
-
-extern int (*ui_loop_hook) PARAMS ((int));
+extern int (*ui_loop_hook) (int);
 
 /* Prototypes for local functions */
-static int init_hidden_window PARAMS ((void));
+static int init_hidden_window (void);
 
-static LRESULT CALLBACK v850ice_wndproc PARAMS ((HWND, UINT, WPARAM, LPARAM));
+static LRESULT CALLBACK v850ice_wndproc (HWND, UINT, WPARAM, LPARAM);
 
-static void v850ice_files_info PARAMS ((struct target_ops * ignore));
+static void v850ice_files_info (struct target_ops *ignore);
 
-static int v850ice_xfer_memory PARAMS ((CORE_ADDR memaddr, char *myaddr,
-                                       int len, int should_write,
-                                       struct target_ops * target));
+static int v850ice_xfer_memory (CORE_ADDR memaddr, char *myaddr,
+                               int len, int should_write,
+                               struct target_ops *target);
 
-static void v850ice_prepare_to_store PARAMS ((void));
+static void v850ice_prepare_to_store (void);
 
-static void v850ice_fetch_registers PARAMS ((int regno));
+static void v850ice_fetch_registers (int regno);
 
-static void v850ice_resume PARAMS ((int pid, int step,
-                                   enum target_signal siggnal));
+static void v850ice_resume (ptid_t ptid, int step,
+                            enum target_signal siggnal);
 
-static void v850ice_open PARAMS ((char *name, int from_tty));
+static void v850ice_open (char *name, int from_tty);
 
-static void v850ice_close PARAMS ((int quitting));
+static void v850ice_close (int quitting);
 
-static void v850ice_stop PARAMS ((void));
+static void v850ice_stop (void);
 
-static void v850ice_store_registers PARAMS ((int regno));
+static void v850ice_store_registers (int regno);
 
-static void v850ice_mourn PARAMS ((void));
+static void v850ice_mourn (void);
 
-static int v850ice_wait PARAMS ((int pid, struct target_waitstatus * status));
+static ptid_t v850ice_wait (ptid_t ptid,
+                                  struct target_waitstatus *status);
 
-static void v850ice_kill PARAMS ((void));
+static void v850ice_kill (void);
 
-static void v850ice_detach PARAMS ((char *args, int from_tty));
+static void v850ice_detach (char *args, int from_tty);
 
-static int v850ice_insert_breakpoint PARAMS ((CORE_ADDR, char *));
+static int v850ice_insert_breakpoint (CORE_ADDR, char *);
 
-static int v850ice_remove_breakpoint PARAMS ((CORE_ADDR, char *));
+static int v850ice_remove_breakpoint (CORE_ADDR, char *);
 
-static void v850ice_command PARAMS ((char *, int));
+static void v850ice_command (char *, int);
 
-static int ice_disassemble PARAMS ((unsigned long, int, char *));
+static int ice_disassemble (unsigned long, int, char *);
 
-static int ice_lookup_addr PARAMS ((unsigned long *, char *, char *));
+static int ice_lookup_addr (unsigned long *, char *, char *);
 
-static int ice_lookup_symbol PARAMS ((unsigned long, char *));
+static int ice_lookup_symbol (unsigned long, char *);
 
-static void ice_SimulateDisassemble PARAMS ((char *, int));
+static void ice_SimulateDisassemble (char *, int);
 
-static void ice_SimulateAddrLookup PARAMS ((char *, int));
+static void ice_SimulateAddrLookup (char *, int);
 
-static void ice_Simulate_SymLookup PARAMS ((char *, int));
+static void ice_Simulate_SymLookup (char *, int);
 
 static void ice_fputs (const char *, struct ui_file *);
 
-static int ice_file PARAMS ((char *));
+static int ice_file (char *);
 
-static int ice_cont PARAMS ((char *));
+static int ice_cont (char *);
 
-static int ice_stepi PARAMS ((char *));
+static int ice_stepi (char *);
 
-static int ice_nexti PARAMS ((char *));
+static int ice_nexti (char *);
 
-static void togdb_force_update PARAMS ((void));
+static void togdb_force_update (void);
 
-static void view_source PARAMS ((CORE_ADDR));
+static void view_source (CORE_ADDR);
 
-static void do_gdb (char *, char *, void (*func) PARAMS ((char *, int)), int);
+static void do_gdb (char *, char *, void (*func) (char *, int), int);
 
 
 /* Globals */
 static HWND hidden_hwnd;       /* HWND for messages */
 
-long (__stdcall * ExeAppReq) PARAMS ((char *, long, char *, struct MessageIO *));
+long (__stdcall * ExeAppReq) (char *, long, char *, struct MessageIO *);
 
-long (__stdcall * RegisterClient) PARAMS ((HWND));
+long (__stdcall * RegisterClient) (HWND);
 
-long (__stdcall * UnregisterClient) PARAMS ((void));
+long (__stdcall * UnregisterClient) (void);
 
 extern Tcl_Interp *gdbtk_interp;
 
@@ -193,7 +190,7 @@ static struct target_ops v850ice_ops;       /* Forward decl */
 
 /* This function creates a hidden window */
 static int
-init_hidden_window ()
+init_hidden_window (void)
 {
   WNDCLASS class;
 
@@ -243,11 +240,7 @@ init_hidden_window ()
    WM_STATE_CHANGE - tells us that a state change has occured in the ICE
  */
 static LRESULT CALLBACK
-v850ice_wndproc (hwnd, message, wParam, lParam)
-     HWND hwnd;
-     UINT message;
-     WPARAM wParam;
-     LPARAM lParam;
+v850ice_wndproc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
 {
   LRESULT result = FALSE;
 
@@ -296,13 +289,13 @@ v850ice_wndproc (hwnd, message, wParam, lParam)
          result = TRUE;
          break;
        case STATE_CHANGE_STEPI:
-         if (!catch_errors ((catch_errors_ftype *) ice_stepi, (PTR) (int) lParam, "",
+         if (!catch_errors ((catch_errors_ftype *) ice_stepi, (int) lParam, "",
                             RETURN_MASK_ALL))
            printf_unfiltered ("stepi errored\n");
          result = TRUE;
          break;
        case STATE_CHANGE_NEXTI:
-         if (!catch_errors ((catch_errors_ftype *) ice_nexti, (PTR) (int) lParam, "",
+         if (!catch_errors ((catch_errors_ftype *) ice_nexti, (int) lParam, "",
                             RETURN_MASK_ALL))
            printf_unfiltered ("nexti errored\n");
          result = TRUE;
@@ -319,9 +312,7 @@ v850ice_wndproc (hwnd, message, wParam, lParam)
 /* Code for opening a connection to the ICE.  */
 
 static void
-v850ice_open (name, from_tty)
-     char *name;
-     int from_tty;
+v850ice_open (char *name, int from_tty)
 {
   HINSTANCE handle;
 
@@ -347,11 +338,11 @@ v850ice_open (name, from_tty)
       if (handle == NULL)
        error ("Cannot load necmsg.dll");
 
-      ExeAppReq = (long (*)PARAMS ((char *, long, char *, struct MessageIO *)))
+      ExeAppReq = (long (*) (char *, long, char *, struct MessageIO *))
        GetProcAddress (handle, "ExeAppReq");
-      RegisterClient = (long (*)PARAMS ((HWND)))
+      RegisterClient = (long (*) (HWND))
        GetProcAddress (handle, "RegisterClient");
-      UnregisterClient = (long (*)PARAMS ((void)))
+      UnregisterClient = (long (*) (void))
        GetProcAddress (handle, "UnregisterClient");
 
       if (ExeAppReq == NULL || RegisterClient == NULL || UnregisterClient == NULL)
@@ -372,7 +363,7 @@ v850ice_open (name, from_tty)
      target is active.  These functions should be split out into seperate
      variables, especially since GDB will someday have a notion of debugging
      several processes.  */
-  inferior_pid = 42000;
+  inferior_ptid = pid_to_ptid (42000);
 
   start_remote ();
   return;
@@ -382,29 +373,26 @@ v850ice_open (name, from_tty)
 
 /* ARGSUSED */
 static void
-v850ice_close (quitting)
-     int quitting;
+v850ice_close (int quitting)
 {
   if (ice_open)
     {
       UnregisterClient ();
       ice_open = 0;
-      inferior_pid = 0;
+      inferior_ptid = null_ptid;
     }
 }
 
 /* Stop the process on the ice. */
 static void
-v850ice_stop ()
+v850ice_stop (void)
 {
   /* This is silly, but it works... */
   v850ice_command ("stop", 0);
 }
 
 static void
-v850ice_detach (args, from_tty)
-     char *args;
-     int from_tty;
+v850ice_detach (char *args, int from_tty)
 {
   if (args)
     error ("Argument given to \"detach\" when remotely debugging.");
@@ -417,9 +405,7 @@ v850ice_detach (args, from_tty)
 /* Tell the remote machine to resume.  */
 
 static void
-v850ice_resume (pid, step, siggnal)
-     int pid, step;
-     enum target_signal siggnal;
+v850ice_resume (ptid_t ptid, int step, enum target_signal siggnal)
 {
   long retval;
   char buf[256];
@@ -442,10 +428,8 @@ v850ice_resume (pid, step, siggnal)
    Returns "pid" (though it's not clear what, if anything, that
    means in the case of this target).  */
 
-static int
-v850ice_wait (pid, status)
-     int pid;
-     struct target_waitstatus *status;
+static ptid_t
+v850ice_wait (ptid_t ptid, struct target_waitstatus *status)
 {
   long v850_status;
   char buf[256];
@@ -497,13 +481,11 @@ v850ice_wait (pid, status)
     }
   while (!done);
 
-  return inferior_pid;
+  return inferior_ptid;
 }
 
 static int
-convert_register (regno, buf)
-     int regno;
-     char *buf;
+convert_register (int regno, char *buf)
 {
   if (regno <= 31)
     sprintf (buf, "r%d", regno);
@@ -522,8 +504,7 @@ convert_register (regno, buf)
    convert it to target byte-order if necessary.  */
 
 static void
-v850ice_fetch_registers (regno)
-     int regno;
+v850ice_fetch_registers (int regno)
 {
   long retval;
   char cmd[100];
@@ -562,8 +543,7 @@ v850ice_fetch_registers (regno)
    of REGISTERS.  */
 
 static void
-v850ice_store_registers (regno)
-     int regno;
+v850ice_store_registers (int regno)
 {
   long retval;
   char cmd[100];
@@ -580,7 +560,7 @@ v850ice_store_registers (regno)
       return;
     }
 
-  regval = extract_unsigned_integer (&registers[REGISTER_BYTE (regno)],
+  regval = extract_unsigned_integer (&deprecated_registers[REGISTER_BYTE (regno)],
                                     REGISTER_RAW_SIZE (regno));
   strcpy (cmd, "reg ");
   if (!convert_register (regno, &cmd[4]))
@@ -596,24 +576,21 @@ v850ice_store_registers (regno)
    register at a time.  */
 
 static void
-v850ice_prepare_to_store ()
+v850ice_prepare_to_store (void)
 {
 }
 
 /* Read or write LEN bytes from inferior memory at MEMADDR, transferring
    to or from debugger address MYADDR.  Write to inferior if SHOULD_WRITE is
-   nonzero.  Returns length of data written or read; 0 for error.
+   nonzero.  TARGET is unused.  Returns length of data written or read;
+   0 for error.
 
    We can only read/write MAX_BLOCK_SIZE bytes at a time, though, or the DLL
-   dies */
+   dies */
 /* ARGSUSED */
 static int
-v850ice_xfer_memory (memaddr, myaddr, len, should_write, target)
-     CORE_ADDR memaddr;
-     char *myaddr;
-     int len;
-     int should_write;
-     struct target_ops *target;        /* ignored */
+v850ice_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len,
+                    int should_write, struct target_ops *target)
 {
   long retval;
   char cmd[100];
@@ -723,16 +700,13 @@ v850ice_xfer_memory (memaddr, myaddr, len, should_write, target)
 }
 
 static void
-v850ice_files_info (ignore)
-     struct target_ops *ignore;
+v850ice_files_info (struct target_ops *ignore)
 {
   puts_filtered ("Debugging a target via the NEC V850 ICE.\n");
 }
 
 static int
-v850ice_insert_breakpoint (addr, contents_cache)
-     CORE_ADDR addr;
-     char *contents_cache;
+v850ice_insert_breakpoint (CORE_ADDR addr, char *contents_cache)
 {
   long retval;
   char cmd[100];
@@ -751,9 +725,7 @@ v850ice_insert_breakpoint (addr, contents_cache)
 }
 
 static int
-v850ice_remove_breakpoint (addr, contents_cache)
-     CORE_ADDR addr;
-     char *contents_cache;
+v850ice_remove_breakpoint (CORE_ADDR addr, char *contents_cache)
 {
   long retval;
   char cmd[100];
@@ -773,21 +745,19 @@ v850ice_remove_breakpoint (addr, contents_cache)
 }
 
 static void
-v850ice_kill ()
+v850ice_kill (void)
 {
   target_mourn_inferior ();
-  inferior_pid = 0;
+  inferior_ptid = null_ptid;
 }
 
 static void
-v850ice_mourn ()
+v850ice_mourn (void)
 {
 }
 
 static void
-v850ice_load (filename, from_tty)
-     char *filename;
-     int from_tty;
+v850ice_load (char *filename, int from_tty)
 {
   struct MessageIO iob;
   char buf[256];
@@ -799,8 +769,7 @@ v850ice_load (filename, from_tty)
 }
 
 static int
-ice_file (arg)
-     char *arg;
+ice_file (char *arg)
 {
   char *s;
 
@@ -823,11 +792,11 @@ ice_file (arg)
   /* Must supress from_tty, otherwise we could start asking if the
      user really wants to load a new symbol table, etc... */
   printf_unfiltered ("Reading symbols from %s...", arg);
-  exec_file_command (arg, 0);
-  symbol_file_command (arg, 0);
+  exec_open (arg, 0);
+  symbol_file_add_main (arg, 0);
   printf_unfiltered ("done\n");
 
-  /* exec_file_command will kill our target, so reinstall the ICE as
+  /* exec_open will kill our target, so reinstall the ICE as
      the target. */
   v850ice_open (NULL, 0);
 
@@ -836,8 +805,7 @@ ice_file (arg)
 }
 
 static int
-ice_cont (c)
-     char *c;
+ice_cont (char *c)
 {
   printf_filtered ("continue (ice)\n");
   ReplyMessage ((LRESULT) 1);
@@ -853,11 +821,7 @@ ice_cont (c)
 }
 
 static void
-do_gdb (cmd, str, func, count)
-     char *cmd;
-     char *str;
-     void (*func) PARAMS ((char *, int));
-     int count;
+do_gdb (char *cmd, char *str, void (*func) (char *, int), int count)
 {
   ReplyMessage ((LRESULT) 1);
 
@@ -876,8 +840,7 @@ do_gdb (cmd, str, func, count)
 
 
 static int
-ice_stepi (c)
-     char *c;
+ice_stepi (char *c)
 {
   int count = (int) c;
 
@@ -886,8 +849,7 @@ ice_stepi (c)
 }
 
 static int
-ice_nexti (c)
-     char *c;
+ice_nexti (char *c)
 {
   int count = (int) c;
 
@@ -896,9 +858,7 @@ ice_nexti (c)
 }
 
 static void
-v850ice_command (arg, from_tty)
-     char *arg;
-     int from_tty;
+v850ice_command (char *arg, int from_tty)
 {
   struct MessageIO iob;
   char buf[256];
@@ -916,8 +876,7 @@ togdb_force_update (void)
 }
 
 static void
-view_source (addr)
-     CORE_ADDR addr;
+view_source (CORE_ADDR addr)
 {
   char c[256];
 
@@ -938,14 +897,9 @@ init_850ice_ops (void)
   v850ice_ops.to_doc = "Debug a system controlled by a NEC 850 ICE.";
   v850ice_ops.to_open = v850ice_open;
   v850ice_ops.to_close = v850ice_close;
-  v850ice_ops.to_attach = NULL;
-  v850ice_ops.to_post_attach = NULL;
-  v850ice_ops.to_require_attach = NULL;
   v850ice_ops.to_detach = v850ice_detach;
-  v850ice_ops.to_require_detach = NULL;
   v850ice_ops.to_resume = v850ice_resume;
   v850ice_ops.to_wait = v850ice_wait;
-  v850ice_ops.to_post_wait = NULL;
   v850ice_ops.to_fetch_registers = v850ice_fetch_registers;
   v850ice_ops.to_store_registers = v850ice_store_registers;
   v850ice_ops.to_prepare_to_store = v850ice_prepare_to_store;
@@ -953,36 +907,21 @@ init_850ice_ops (void)
   v850ice_ops.to_files_info = v850ice_files_info;
   v850ice_ops.to_insert_breakpoint = v850ice_insert_breakpoint;
   v850ice_ops.to_remove_breakpoint = v850ice_remove_breakpoint;
-  v850ice_ops.to_terminal_init = NULL;
-  v850ice_ops.to_terminal_inferior = NULL;
-  v850ice_ops.to_terminal_ours_for_output = NULL;
-  v850ice_ops.to_terminal_ours = NULL;
-  v850ice_ops.to_terminal_info = NULL;
   v850ice_ops.to_kill = v850ice_kill;
   v850ice_ops.to_load = v850ice_load;
-  v850ice_ops.to_lookup_symbol = NULL;
-  v850ice_ops.to_create_inferior = NULL;
   v850ice_ops.to_mourn_inferior = v850ice_mourn;
-  v850ice_ops.to_can_run = 0;
-  v850ice_ops.to_notice_signals = 0;
-  v850ice_ops.to_thread_alive = NULL;
   v850ice_ops.to_stop = v850ice_stop;
-  v850ice_ops.to_pid_to_exec_file = NULL;
-  v850ice_ops.to_core_file_to_sym_file = NULL;
   v850ice_ops.to_stratum = process_stratum;
-  v850ice_ops.DONT_USE = NULL;
   v850ice_ops.to_has_all_memory = 1;
   v850ice_ops.to_has_memory = 1;
   v850ice_ops.to_has_stack = 1;
   v850ice_ops.to_has_registers = 1;
   v850ice_ops.to_has_execution = 1;
-  v850ice_ops.to_sections = NULL;
-  v850ice_ops.to_sections_end = NULL;
   v850ice_ops.to_magic = OPS_MAGIC;
 }
 
 void
-_initialize_v850ice ()
+_initialize_v850ice (void)
 {
   init_850ice_ops ();
   add_target (&v850ice_ops);
This page took 0.060404 seconds and 4 git commands to generate.