2004-03-15 Andrew Cagney <cagney@redhat.com>
[deliverable/binutils-gdb.git] / gdb / monitor.h
index cef907bc41debefe5c90e286e56cefb0c15f814d..2f8ca22a454e3b86e3f74727bb73ec30610ea47f 100644 (file)
@@ -1,5 +1,6 @@
 /* Definitions for remote debugging interface for ROM monitors.
 /* Definitions for remote debugging interface for ROM monitors.
-   Copyright 1990, 1991, 1992, 1996 Free Software Foundation, Inc.
+   Copyright 1990, 1991, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+   Free Software Foundation, Inc.
    Contributed by Cygnus Support. Written by Rob Savoye for Cygnus.
 
    This file is part of GDB.
    Contributed by Cygnus Support. Written by Rob Savoye for Cygnus.
 
    This file is part of GDB.
    Boston, MA 02111-1307, USA.
  */
 
    Boston, MA 02111-1307, USA.
  */
 
-#include "serial.h"
+#ifndef MONITOR_H
+#define MONITOR_H
+
+struct target_waitstatus;
+struct serial;
 
 /* This structure describes the strings necessary to give small command
    sequences to the monitor, and parse the response.
 
 /* This structure describes the strings necessary to give small command
    sequences to the monitor, and parse the response.
@@ -95,16 +100,15 @@ struct monitor_ops
        GDB with the value of a register.  */
     char *dump_registers;      /* Command to dump all regs at once */
     char *register_pattern;    /* Pattern that picks out register from reg dump */
        GDB with the value of a register.  */
     char *dump_registers;      /* Command to dump all regs at once */
     char *register_pattern;    /* Pattern that picks out register from reg dump */
-    void (*supply_register) PARAMS ((char *name, int namelen,
-                                    char *val, int vallen));
-    void (*load_routine) PARAMS ((serial_t desc, char *file,
-                                 int hashmark));       /* Download routine */
-    int (*dumpregs) PARAMS ((void));   /* routine to dump all registers */
-    int (*continue_hook) PARAMS ((void));      /* Emit the continue command */
-    int (*wait_filter) PARAMS ((char *buf,     /* Maybe contains registers */
-                               int bufmax,
-                               int *response_length,
-                               struct target_waitstatus * status));
+    void (*supply_register) (char *name, int namelen, char *val, int vallen);
+    void (*load_routine) (struct serial *desc, char *file,
+                         int hashmark);        /* Download routine */
+    int (*dumpregs) (void);    /* routine to dump all registers */
+    int (*continue_hook) (void);       /* Emit the continue command */
+    int (*wait_filter) (char *buf,     /* Maybe contains registers */
+                       int bufmax,
+                       int *response_length,
+                       struct target_waitstatus * status);
     char *load;                        /* load command */
     char *loadresp;            /* Response to load command */
     char *prompt;              /* monitor command prompt */
     char *load;                        /* load command */
     char *loadresp;            /* Response to load command */
     char *prompt;              /* monitor command prompt */
@@ -113,6 +117,9 @@ struct monitor_ops
     struct target_ops *target; /* target operations */
     int stopbits;              /* number of stop bits */
     char **regnames;           /* array of register names in ascii */
     struct target_ops *target; /* target operations */
     int stopbits;              /* number of stop bits */
     char **regnames;           /* array of register names in ascii */
+                                /* deprecated: use regname instead */
+    const char *(*regname) (int index); 
+                                /* function for dynamic regname array */
     int num_breakpoints;       /* If set_break != NULL, number of supported
                                   breakpoints */
     int magic;                 /* Check value */
     int num_breakpoints;       /* If set_break != NULL, number of supported
                                   breakpoints */
     int magic;                 /* Check value */
@@ -233,20 +240,21 @@ struct monitor_ops
 
 #define SREC_SIZE 160
 
 
 #define SREC_SIZE 160
 
-extern void monitor_open PARAMS ((char *args, struct monitor_ops * ops,
-                                 int from_tty));
-extern void monitor_close PARAMS ((int quitting));
-extern char *monitor_supply_register PARAMS ((int regno, char *valstr));
-extern int monitor_expect PARAMS ((char *prompt, char *buf, int buflen));
-extern int monitor_expect_prompt PARAMS ((char *buf, int buflen));
-extern void monitor_printf
-PARAMS ((char *,...))
-ATTR_FORMAT (printf, 1, 2);
-     extern void monitor_printf_noecho PARAMS ((char *,...))
-  ATTR_FORMAT (printf, 1, 2);
-     extern void monitor_write PARAMS ((char *buf, int buflen));
-     extern int monitor_readchar PARAMS ((void));
-     extern char *monitor_get_dev_name PARAMS ((void));
-     extern void init_monitor_ops PARAMS ((struct target_ops *));
-     extern int monitor_dump_reg_block PARAMS ((char *dump_cmd));
-     extern void flush_monitor_dcache PARAMS ((void));
+extern void monitor_open (char *args, struct monitor_ops *ops, int from_tty);
+extern void monitor_close (int quitting);
+extern char *monitor_supply_register (int regno, char *valstr);
+extern int monitor_expect (char *prompt, char *buf, int buflen);
+extern int monitor_expect_prompt (char *buf, int buflen);
+/* Note: The variable argument functions monitor_printf and
+   monitor_printf_noecho vararg do not take take standard format style
+   arguments.  Instead they take custom formats interpretered directly
+   by monitor_vsprintf.  */
+extern void monitor_printf (char *, ...);
+extern void monitor_printf_noecho (char *, ...);
+extern void monitor_write (char *buf, int buflen);
+extern int monitor_readchar (void);
+extern char *monitor_get_dev_name (void);
+extern void init_monitor_ops (struct target_ops *);
+extern int monitor_dump_reg_block (char *dump_cmd);
+
+#endif
This page took 0.024993 seconds and 4 git commands to generate.