X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Fmonitor.h;h=2f8ca22a454e3b86e3f74727bb73ec30610ea47f;hb=030f20e19e7c5d2d8d26030c83cc2387a9e04c1d;hp=cef907bc41debefe5c90e286e56cefb0c15f814d;hpb=30727aa6d12fb866494020c0b62ab265a2bdcdfe;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/monitor.h b/gdb/monitor.h index cef907bc41..2f8ca22a45 100644 --- a/gdb/monitor.h +++ b/gdb/monitor.h @@ -1,5 +1,6 @@ /* 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. @@ -20,7 +21,11 @@ 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. @@ -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 */ - 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 */ @@ -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 */ + /* 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 */ @@ -233,20 +240,21 @@ struct monitor_ops #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