Commit Graph

51 Commits

Author SHA1 Message Date
Grace Sainsbury
1c617db829 * monitor.h: Add the function regname to monitor_ops
structure. This way NUM_REGS does not have to be a constant.
* monitor.c (monitor_fetch_register): Added support for regname
function. The function is called if the array regnames is NULL.
(monitor_store_register): Same.
* cpu32bug-rom.c (cpu32bug_regname):  Add function. Replaces regnames array.
(init_cpu32bug_cmds): set cpu32bug_cmds.regnames to NULL,
cpu32bug_cmds.regname to point to new function.
* abug-rom.c (abug_regname): Same as above.
(init_abug_cmds): Same.
* dbug-rom.c (dbug_regname): Same as above.
(init_dbug_cmds): Same.
* remote-est.c (est_regname): Same.
(init_est_cmds): Same.
* rom68k-rom.c (rom68k_regname): Same.
(init_rom68k_cmds): Same.
2002-06-26 15:14:32 +00:00
Andrew Cagney
17732724f3 Update makefile.in dependencies. Add header wrappers. 2001-10-21 19:20:30 +00:00
Andrew Cagney
ba3a85231b * remote-utils.h (struct serial): Declare as opaque. Remove
include of "serial.h".
* Makefile.in (remote_utils_h): Update.
* monitor.h (struct serial): Declare as opaque.  Remove include of
"serial.h".
(struct monitor_ops): Replace serial_t with `struct serial *'.
* monitor.c (monitor_desc): Ditto.
2001-07-10 21:06:34 +00:00
Kevin Buettner
b6ba6518e9 Update/correct copyright notices. 2001-03-06 08:22:02 +00:00
J.T. Conklin
4930751aae * TODO: Note abstraction layer violation where "ocd reset" command
must invalidate the dcache, and how this might be fixed.

* monitor.c (#include "dcache.h"): Removed.
(remote_dcache): Removed.
(monitor_open): Removed code that created local dcache.
(flush_monitor_dcache): Removed (unused function).
(monitor_resume): Removed call to dcache_invd().
(monitor_load): Likewise.
(monitor_xfer_memory): Changed to call monitor_write_memory(),
monitor_write_memory_block(), and monitor_read_memory() instead
of dcache_xfer_memory().
* monitor.h (flush_monitor_dcache): Removed (unused function).
* ocd.c (#include "dcache.h"): Removed.
(ocd_dcache): Removed.
(ocd_open): Removed code that created local dcache.
(ocd_resume): Removed call to dcache_invd().
(ocd_xfer_memory): Changed to call ocd_write_bytes() and
ocd_read_bytes() instead of dcache_xfer_memory().
(bdm_reset_command): Invalidate target dcache.
* remote-bug.c (bug_load): Remove call to dcache_invd().
(bug_resume): Likewise.
(bug_settings): Remove dcache, readfunc, and writefunc fields
from initializer.
(bug_xfer_memory): Changed to call bug_read_memory() and
bug_write_memory() instead of dcache_xfer_memory().
* remote-nindy.c (#include "dcache.h"): Removed.
(nindy_dcache): Removed.
(nindy_open): Removed code that created local dcache.
(nindy_resume): Removed call to dcache_invd().
(nindy_load): Likewise.
(nindy_xfer_inferior_memory): Changed to call ninMemPut() and
ninMemGet() instead of dcache_xfer_memory().
* remote-sds.c (#include "dcache.h"): Removed.
(sds_dcache): Removed.
(sds_open): Removed code that created local dcache.
(sds_resume): Removed call to dcache_invd().
(sds_xfer_memory): Changed to call sds_write_bytes() and
sds_read_bytes() instead of dcache_xfer_memory().
* remote-utils.c (gr_open): Removed code that created local dcache.
* remote-utils.h (#include "dcache.h"): Removed.
(struct gr_settings): Removed dcache, readfunc, and writefunc fields.
(gr_get_dcache, gr_set_dcache): Removed macro definitions.
* remote.c (#include "dcache.h"): Removed.
(remote_dcache): Removed.
(remote_open_1): Removed code that created local dcache.
(remote_async_open_1): Likewise.
(remote_resume): Removed call to dcache_invd().
(remote_async_resume): Likewise.
(remote_xfer_memory): Changed to call remote_write_bytes() and
remote_read_bytes() instead of dcache_xfer_memory().
* wince.c (#include "dcache.h"): Removed.
(remote_dcache): Removed.
(child_create_inferior): Removed code that created local dcache.
(child_xfer_memory): Changed to call remote_write_bytes() and
remote_read_bytes() instead of dcache_xfer_memory().
(child_resume): Removed call to dcache_invd().

* target.c (target_dcache): Added.
(target_load): Invalidate target_dcache.
(do_xfer_memory): New function.
(target_xfer_memory): Reimplement in terms of dcache_xfer_memory().
(target_xfer_memory_partial): Likewise.
(initialize_targets): Create target_dcache.
* target.h (#include "dcache.h"): Added.
(target_open): Invalidate target_dcache.
(target_resume): Likewise.
(do_xfer_memory): New declaration.

* dcache.c (dcache_init): Removed reading and writing arguments.
(dcache_struct): Removed read_memory and write_memory fields.
(dcache_write_line): Call do_xfer_memory.
(dcache_read_line): Likewise.
(dcache_xfer_memory): Likewise.
(dcache_invalidate): Renamed from dcache_invd.
(dcache_init): Updated.
(dcache_xfer_memory): Updated.
* dcache.h (memxferfunc): Removed definition.
2000-11-03 22:00:56 +00:00
Kevin Buettner
dee8b1a1c5 Eliminate PARAMS. 2000-06-10 01:32:12 +00:00
Kevin Buettner
507f3c78fb Eliminate PARAMS from function pointer declarations. 2000-06-04 00:41:10 +00:00
Kevin Buettner
a14ed312fd PARAMS removal. 2000-05-28 01:12:42 +00:00
Jason Molenda
c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda
9e086581c7 import gdb-1999-0519 1999-05-19 19:58:41 +00:00
Stan Shebs
c906108c21 Initial creation of sourceware repository 1999-04-16 01:35:26 +00:00
Stan Shebs
071ea11e85 Initial creation of sourceware repository 1999-04-16 01:34:07 +00:00
Andrew Cagney
1c3cd1b020 Clean up function return types. Functions not returning values,
functions unnecessarily returning values.
1998-12-03 05:34:25 +00:00
John Metzler
2a8b1fab7c Wed Apr 29 10:20:40 1998 John Metzler <jmetzler@cygnus.com>
* nec4102rom.c : New file implements rom monitor adapter for
        nec-vr4102 board. This board hosts the vr4111 chip. This file
        required extenstions to the monitor_ops structure, hooks for wiat
        filter, new flags. This version does not support more than one
        breakpoint and resuming after a breakpoint in 16 bit mode is
        completely disfunctional.  * monitor.h : Defined additional hooks
        for dmpregs, confinuer_hooks and wait_filter. These additions
        require that all rom monitor interfaces be recoded to to
        initializa monitor ops using assignments rather than static
        structure initialization.  Added new bits to flags
        MO_EXACT_DUMPADDR, MO_HAS_BLOCKWRITES
        * monitor.c (RDEBUG): Conditional tracing throughout the file.
        (fromhex): Now recognized upper cse hex digits
        (monitor_printf_noecho):
        (monitor_readchar): Tracing interferes with input timing.
        (monitor_open): Register different memory write functions with
        dcache_init if MO_HAS_BLOCKWRITES.
        (flush_monior_dcache): Added as an additional utilty.
        (monitor-resume): Call continue hook if one has been supplied.
        (monitor_wait_filter): New function Factored out of monitor wait
        and used if alternate wait-filter has not been provided.
        (monitor_wait): call alternate wait filter if provided.  Call
        monitor_dump_regs, a new function factored out from inline code.
        (monitor_dump_block): A new function used as a utility when
        monitors must dump several blocks of registers using different
        commands.
        (monitor_dump_regs): Call alternate function if provided. Uses new
        hook in monitor.h.
        (monitor_write_memory): Engage previouly added hook
        MO_FILL_USES_ADDR.
        (monitor_write_even_block): new function supports writing long
        blocks of 4byte words.
        (longlongendswap): new internal function
        (monitor_write_memory_longlongs): new function writes large blocks
        using command to enter a long long.
        (monitor_write-memory_block): new Function figures out which block
        mod to use.
        (monitor_read_memory): Can now handle dump formats in which the bytes
        preceeding the requested data is not printed.
	* monitor.h: Added new fields to the structure
1998-04-29 17:33:57 +00:00
Mark Alexander
1a31a33a93 * monitor.c (monitor_write, monitor_readchar): New functions.
* monitor.h (monitor_write, monitor_readchar): Declare.
	* dve3900-rom.c: Add support for fast loading on ethernet connections.
1998-01-24 00:52:54 +00:00
Mark Alexander
352f9e9dc7 * monitor.h (MO_PRINT_PROGRAM_OUTPUT): Define.
* monitor.c (monitor_wait): Echo program output.
	* dve3900-rom.c (_initialize_r3900_rom): Remove MO_HANDLE_NL flag,
	add MO_PRINT_PROGRAM_OUTPUT flag.
1998-01-05 23:41:46 +00:00
Mark Alexander
7e9576e098 * dve3900-rom.c: New file to support Densan DVE-R3900/20 board.
* monitor.c (monitor_debug): Move to utils.c, rename to puts_debug.
	(monitor_write_memory, monitor_read_memory, monitor_insert_breakpoint,
	monitor_remove_breakpoint): Remove useless address bits if current
	monitor has MO_ADDR_BITS_REMOVE flag.
	* monitor.h (MO_ADDR_BITS_REMOVE): Define.
	* utils.c (puts_debug): Formerly monitor_debug from monitor.c;
	move here and make public.  Add better support for carriage returns.
	* defs.h (puts_debug): Declare.
	* dsrec.c (load_srec): Use puts_debug to print remotedebug information.
	Output header record correctly.
	(make_srec): Output a header record instead of a termination record
	if sect is non-NULL (value is ignored), but abfd is NULL.
	* config/mips/tm-tx39.h (DEFAULT_MIPS_TYPE): Remove definition.
	(REGISTER_NAMES): Define to add R3900-specific registers.
	* config/mips/tm-tx39l.h: Ditto.
	* config/mips/tx39.mt (TDEPFILES): Add dve3900-rom.o and support files.
	* config/mips/tx39l.mt: Ditto.
1997-12-29 21:50:10 +00:00
Stan Shebs
c77bcbc2f7 * monitor.h (MO_SREC_ACK_PLUS, MO_SREC_ACK_ROTATE): New flags.
* monitor.c (monitor_wait_srec_ack): Add DINK32-specific ack code.
	* dsrec.c (load_srec): Always write a header S-record.
	* dink32-rom.c (dink32_regnames): Fix the names of float registers.
	(dink32_cmds): Set to use S-record downloading with acks.
	* remote-est.c (est_cmds): Add MO_SREC_ACK_PLUS flag.
1997-09-16 23:58:01 +00:00
Stan Shebs
339cddf717 * dink32-rom.c: New file, support for DINK32 monitor.
* Makefile.in (dink32-rom.o): Add build rule.
	* config/powerpc/ppc-eabi.mt, config/powerpc/ppc-sim.mt
 	(TDEPFILES): Add dink32-rom.o.
	* monitor.h (MO_32_REGS_PAIRED, MO_SETREG_INTERACTIVE,
 	MO_SETMEM_INTERACTIVE, MO_GETMEM_16_BOUNDARY,
 	MO_CLR_BREAK_1_BASED): New monitor interface flags.
	* monitor.c: Use them.
	(monitor_store_register): Use setreg.term if defined.
	(monitor_insert_breakpoint, monitor_remove_breakpoint): Notice
	if set_break and clr_break fields are empty.
1997-08-12 02:34:14 +00:00
Stu Grossman
0649bb3d69 * Makefile.in (SUBDIRS): Add mswin so that make cleanup cleans up
that directory.
	* defs.h utils.c (error warning):  Make message be const.
	* main.c (fputs_unfiltered):  Only send gdb_stdout and gdb_stderr
	to hook.  Otherwise send it to fputs.
	* monitor.c monitor.h (monitor_get_dev_name):  New function.  Does
	the obvious.
	* remote-e7000.c:  Remove debugify stuff.  Change printf, fprintf
	to _filtered forms to make output appear in GUIs.  Replace all
	uses of SERIAL_READCHAR with readchar, which has better error
	checking.
	* (e7000_parse_device):  Add prototype.
	* (readchar):  Improve doc.  Handle random serial errors.
	* (expect):  Disable notice_quit code.  It's busted.  Remove
	serial error handling (it's now handled in readchar).  Remove
	remote_debug echoing.  That's handled in readchar as well.
	* (e7000_parse_device):  Remove serial_flag arg.  It's not
	necessary.
	* (e7000_open):  Split into two pieces.  Second part is
	e7000_start_remote, and is error protected.  Now, when we connect
	to the target, we setup the initial frame and registers so that
	the user gets an immediate indication of where the target is.
	* (gch):  Remove debug output.  That's handled by readchar.
	* (e7000_read_inferior_memory):  Handle errors better.
	* (_initialize_remote_e7000):  Get rid of `<xxx>' things from
	command names.  They show up when doing completion and confuse
	things horribly.
	* ser-e7kpc.c:  Remove the last seven months of brain damage.  Get
	rid of the DLL's since we can access the device directly from Win32s
	and Win95.  Get rid of debugify crud.
	* serial.c:  Remove debugify cruft.
	* (serial_logchar serial_log_command serial_write serial_readchar
	serial_send_break serial_close):  Merge common functionality into
	serial_logchar.  Clean up rest of routines.
	* sparclet-rom.c:  Disembowel.  Leave only download routine.
	Download routine now switches to remote target automatically.
	* top.c (disconnect):  Only define if SIGHUP is defined.  Cleans
	up MSVC/Win32 problem.
	* utils.c (gdb_flush):  Don't call hook unless it's for gdb_stdout
	or gdb_stderr.
	* config/sh/tm-sh.h:  Define TARGET_SH for WinGDB.
	* config/sparc/tm-sparclet.h:  Remove override for prompt.
1997-04-19 01:52:30 +00:00
Michael Snyder
8665f3dcfa Thu Oct 31 16:37:17 1996 Michael Snyder <msnyder@cleaver.cygnus.com>
* m32r-tdep.c: Improved frame_chain and fn prologue analysis.
        * configure.tgt: Add entry for m32r target.
        * monitor.h:   Add a flag to tell monitor_store_register to use
                        (val, regno) instead of (regno, val).
        * monitor.c:   Make monitor_store_register honor the above flag.
                        Make monitor_exp ignore DC1/DC3 for m32r.
                        Increase buf size in monitor_dump_regs.
1996-11-01 00:41:21 +00:00
Dawn Perchik
012be3cec3 * configure,configure.in: Add target sparclet.
* monitor.h,monitor.c:
    Added monitor flags MO_NO_ECHO_ON_SETMEM (don't expect echo on
    setmem command), MO_RUN_FIRST_TIME (if command to start process
    running on target is different from one to continue execution),
    MO_HEX_PREFIX (if addresses from monitor have a "0x" prefix).
    * monitor.c,parse.c,sparc-tdep.c:
    Don't require strings in the registers array.  This is to allow
    NULLs to be place holders in the tm-*.h file so that only minor
    changes are needed when a new processor is introduced (eg, one
    without floating point).
    * sparc-tdep.c: Conditionally remove dependancies on floating point.
    * sparclet-rom.c,config/sparc/sparclet.mt,config/sparc/tm-sparclet.h:
    New files for target sparclet.
    * symfile.c: Add option for 2nd parameter on load command : a load
    offset added to the vma of each section.
1996-06-28 14:03:13 +00:00
Mark Alexander
c92f31c6e5 * dsrec.c (load_srec): Add WAITACK parameter, for machines
like EST visionICE that send back an ACK after each S-record.
	* monitor.c (monitor_wait_srec_ack): New function.
	(monitor_load): Pass monitor_wait_srec_ack to load_srec
	if the monitor's MO_SREC_ACK flag is set.
	* monitor.h: Define MO_SREC_ACK flag.
	* remote-est.c (est_cmds): Add MO_SREC_ACK flag.
	* sh3-rom.c (sh3_load): Accomodate change in load_srec prototype.
	* srec.h: Add WAITACK parameter to load_srec prototype.
1996-05-21 06:09:23 +00:00
Stan Shebs
178ed33898 * monitor.h: Clean up comment formatting.
(current_monitor): Remove decl.
	(LOADTYPES, LOADPROTOS, INIT_CMD, etc): Remove definitions.
	(push_monitor, SREC_SIZE): Remove.
	* monitor.c: Expand old macro into current_monitor derefs
	everywhere.
	* remote-os9k.c (current_monitor): Remove definition.
1996-04-22 23:46:02 +00:00
Dawn Perchik
2e665cd3ad * mon960-rom.c: New file; support mon960 rom monitor on i960.
* monitor.c (monitor_debug): Change remotedebug to buffer strings.
       * monitor.c (monitor_open): Add test for flag MO_NO_ECHO_ON_OPEN before
       epecting prompt and echo during open.
       * monitor.c (monitor_stop): Add test for flag MO_SEND_BREAK_ON_OPEN to
       determine if break should be sent as stop command.
       * monitor.h: Add flags MO_NO_ECHO_ON_OPEN and MO_SEND_BREAK_ON_OPEN.
       * i960-tdep.c (mon960_frame_chain_valid): New function for getting
       stack frame on mon960.
       * Makefile.in: Add mon960 files.
       * configure.in: Changed i960-*-coff* and i960-*-elf* to target mon960;
       added i960-nindy-coff* and i960-nindy-elf* for target nindy.
       * configure: Regenerated.
       * config/i960/mon960.mt, config/i960/tm-mon960.h: New files;
       support mon960 rom monitor on i960.
1996-03-11 23:49:22 +00:00
Steve Chamberlain
c84e500001 * dsrec.c (load_srec): Remove unused variable.
monitor.c (monitor_expect): Don't expect a ^C to echo.
	* serial.c (serial_open): Add parallel interface.
	* sh3-rom.c (parallel, parallel_in_use): New.
	(sh3_load): If parallel_in_use, download though the
	parallel port.
	(sh3_open): Open parallel port if specified.
	(sh3_close): New function.
	(_inititalize_sh3): Add sh3_close hook and documentation.
	* monitor.c (monitor_close): Export.
	* monitor.h (monitor_close): Add prototype.
1996-01-13 00:21:55 +00:00
Michael Meissner
721ccd808f Make ppcbug work 1995-12-21 17:06:04 +00:00
Stu Grossman
fe5cfadd42 * monitor.h (struct memrw_cmd->resp_delim): Document this as a regexp. 1995-10-24 21:35:23 +00:00
Stu Grossman
1480482acb * Makefile.in sh3-rom.c config/sh/sh.mt config/sh/tm-sh.h: Add
sh3 monitor support.
	* monitor.c:  Cleanup regexp compilation stuff to make it easier
	to use several regexps.
	* monitor.h:  Get rid of struct rom_cmd_data.  It's no longer used.
	* config/m68k/tm-monitor.h:  Don't redefine NUM_REGS here.  It just
	causes GDB to crash.
1995-10-16 18:51:15 +00:00
Fred Fish
6c9638b444 Update FSF address. 1995-08-02 03:41:12 +00:00
J.T. Conklin
e3033bb086 * defs.h (ATTR_FORMAT): New macro, expands to gcc's format
attribute when compiled by gcc.
* defs.h, language.h, monitor.h: Changed many function
  declarations to use ATTR_FORMAT.

* breakpoint.c (delete_command); source.c (directory_command);
  top.c (define_command): Changed call to query() that had too
  many arguments.
* printcmd.c (address_info): Changed call to printf_filtered()
  that had too many arguments.
1995-05-19 22:44:51 +00:00
J.T. Conklin
85c613aaa7 * utils.c (fprintf_filtered, fprintf_unfiltered, fprintfi_filtered,
printf_filtered, printf_unfiltered, printfi_filtered, query, warning,
          error, fatal, fatal_dump_core): Use stdarg.h macros when compiling
          with an ANSI compiler.
        * complain.c (complain): Likewise.
        * language.c (type_error, range_error): Likewise.
        * monitor.c (monitor_printf, monitor_printf_noecho): Likewise.
        * remote-array.c (printf_monitor, debuglogs): Likewise.
        * remote-mips.c (mips_error): Likewise.
        * remote-os9k.c (printf_monitor): Likewise.
        * remote-st.c (printf_stdebug): Likewise.
        * gdbtk.c (gdbtk_query): Likewise.

        * defs.h, complain.h, language.h, monitor.h: Add prototypes to
          match above changes.

        * printcmd.c: Remove uneeded #include <varargs.h>.
        * remote-e7000.c: Likewise.

        * f-typeprint.c (f_type_print_base): Fix typo found by above
          changes.
1995-05-18 23:45:31 +00:00
Stu Grossman
d8afcce964 * hppa-tdep.c (read_unwind_info): Cosmetic cleanup.
* (unwind_command):  Clean it up and make it print things out
	nicer.
	* monitor.c:  Add ^C handling capability (mostly ripped off from
	remote.c).
	* (monitor_printf):  Make it check the command echo.
	* (monitor_printf_noecho):  Similar to above, but doesn't check
	for echo.
	* (monitor_stop):  No longer waits for prompt.  That is the job of
	the caller.  This makes things work much better for monitor_wait,
	which waits for the prompt itself.
	* (monitor_open):  Deal with new monitor_stop semantics.  Also,
	flush input after sending init strings to get rid of junk that may
	be output.  Also, don't always send \r to remote.  Use
	monitor_ops->line_term cuz proper character isn't always \r.
	* (monitor_fetch_register):  Switch to completely different
	algorithm to deal with lame-ass monitors which put spaces in the
	middle of numbers, and prompt with a space!!!!!
	* (monitor_read_memory_single):  New routine to be used with
	monitors that can only return one byte/short/long at a time.  This
	is selected via MO_GETMEM_READ_SINGLE.
	* (monitor_load_srec):  Use monitor_printf_noecho for sending S
	records.  Most targets don't echo them.
	* (monitor.h):  Get rid of cmd_delim.  Add line_delim.
	* op50n-rom.c (op50n_cmds):  Fill it up.  Make it work.
	* w89k-rom.c:  Change all eols from \r to \n.  Change load_resp to
	^Q to prevent error message.
	* config/pa/tm-hppa.h (CALL_DUMMY (for hppro)):   Add special
	instruction sequence at end to make restore_pc_queue happy.
1995-05-11 02:26:00 +00:00
Stu Grossman
f8f3659f3e * cpu32bug-rom.c monitor.h op50-rom.c remote-est.c rom68k-rom.c
w89k-rom.c:  Remove loadtypes, loadprotos and baudrates.
	* op50-rom.c:  Fix copyrights and add load routine to op50n_cmds.
	* rom68k-rom.c (_initialize_rom68k):  Don't set baud rate.
	* w89k-rom.c:  Fix copyrights.
1995-04-17 22:43:56 +00:00
Stu Grossman
5de0c6486d * monitor.c: Move all xmodem stuff into xmodem.[ch]. Remove
unnecessary remoteloadprotocol and remoteloadtype support.
	* (expect expect_prompt):  Change names to monitor_expect and
	monitor_expect_prompt.  Make them global.
	* (printf_monitor):  Change name to monitor_printf.  Make global.
	* (monitor_read_memory):  Flush command echo to avoid parsing
	ambiguity with CPU32Bug monitor.
	* (monitor_load):  Remove remoteloadprotocol and remoteloadtype
	support.  Call target_ops->load_routine, default to
	monitor_load_srec.
	* (monitor_load_srec):  Remove everything but S-record support.
	* monitor.h (monitor_ops):  Add load_routine to provide monitor
	specific download capability.
	* remote-est.c:  Clean up copyrights and comments.
	* w89k-rom.c:  Use new xmodem support.
	* xmodem.c xmodem.h:  New files to support xmodem downloads.
	* rom68k-rom.c remote-est.c:  Fix copyrights, add load_routine
	entry to monitor_ops.
	* cpu32bug-rom.c:  New file to support Moto BCC debuggers.
	* config/m68k/est.mt (TDEPFILES):  Add cpu32bug.o.
	* config/pa/hppapro.mt (TDEPFILES):  Add xmodem.o.
1995-04-17 06:31:39 +00:00
Stan Shebs
d108166fde * monitor.h (init_monitor_ops): Declare.
* rom68k-rom.c: Clarify some comments.
	(rom68k_open): Define as static, to match decl.
1995-04-13 01:23:53 +00:00
Stu Grossman
3da4297eae * monitor.h: Add MO_GETMEM_NEEDS_RANGE flag.
* monitor.c (monitor_read_memory):  Use previously mentioned flag
	to send proper format memory examine commands to the w89k monitor.
	Also, try to handle bizarre format of memory dump...

	* op50-rom.c w89k-rom.c:  Update to new monitor.[ch] conventions.
1995-04-03 21:03:27 +00:00
Stu Grossman
a706069fdb start-sanitize-gdbtk
* Makefile.in (gdbtk.o):  Use X11_CFLAGS to provide alternate
	locations (per-host) for X11 include files.
	* config/pa/hppahpux.mh (XM_CLIBS):  Add -L/usr/lib/X11R5 to force
	the use of R5 libs.  (X11_CFLAGS):  Add this to indicate the locs
	of the R5 include files.
end-sanitize-gdbtk
	* monitor.c monitor.h remote-est.c rom68k-rom.c:  Add start of
	support for interrupting target.
	* monitor.c (monitor_open):  Send stop command before doing
	anything else.
	* (monitor_load_srec):  Fix record size calculation to prevent end
	of segment from getting trashed.
	* rom68k-rom.c:  Update to latest version of struct monitor_ops.
	* config/sparc/tm-sparc.h (FIX_CALL_DUMMY):  Fix byte-order
	problems.  Makes DOS hosted function calling work.
	* sparclite/crt0.s:  Define _start to make COFF happy.
	* testsuite/config/rom68k.exp (gdb_target_rom68k):  Use
	$targetname, $serialport and $baud instead of hardwired variables.
	* testsuite/gdb.base/{sigall.exp signals.exp}:  Skip these if the
	target doesn't support signals.
1995-03-30 01:47:32 +00:00
Stu Grossman
a25a9f49ca * configure.in: Move test for m68*-est-* before m68*-*-coff*.
* findvar.c:  Move default def of CANNOT_STORE_REGISTER closer to
	the beginning of the code.
	* (write_register_gen):  New routine.  Analogous to
	read_register_gen.
	* (write_register_bytes):  Another rewrite!  Make it smarter about
	not updating regs with the same value.
	* monitor.c (printf_monitor readchar):  Use stderr instead of
	stdout to output debug info.  Also cleanup readchar a little.
	* (expect):  Make sure that excessive responses are null
	terminated.
	* (monitor_open):  Check for magic number in monitor_ops struct.
	Allow multiple commands as init strings.  Also, clear all
	breakpoints.
	* (monitor_resume monitor_wait):  Send a command to dump all the
	regs for those targets which don't do so when waking up after a
	continue command.
	* (monitor_wait):  Handle excessive response output better.
	* (monitor_write_memory):  Use block fill, word, and long word
	commands (if they exist) to write memory more efficiently.
	* General cleanups to use flag bits instead of individual flag
	words in monitor_ops struct.
	* (monitor_command):  Return output from command.
	* (monitor_load_srec):  Allocate buffer only once.  Use alloca.
	Wait for load response string instead of using a timeout to start
	sending S-records.  Fix bug where value of srec_frame shrinks.  If
	hashmark is set, print `-' for retransmissions.  General cleanups.
	* (monitor_make_srec):  Get rid of S-record default type kludge.
	* monitor.h:  Use seperate struct for memory and register
	read/write commands.  Memory commands can come in byte, word,
	long, and longlong forms.
	* (monitor_ops):  Change lots of fields.  Generalize some stuff.
	Put all flags into flags word.  Allow init to be a list of commands.
	Add command for clearing all breakpoints, block fill, dumping all
	registers.
	* remote-est.c:  Rewrite to use new monitor conventions.
	* config/m68k/est.mt (TDEPFILES):  Add monitor.o.
	* config/m68k/tm-est.h:  Set NUM_REGS to 18.
	* testsuite/gdb.base/break.exp:  Lots of cleanups.  Use gdb_test
	more thoroughly.
1995-03-25 00:36:01 +00:00
Stu Grossman
2081365ffa * findvar.c (read_register_bytes write_register_bytes): Make
these routines much smarter about updating registers from the
	target, only doing so when absolutely necessary.  This really
	speeds up register modification on some remote targets.

	* monitor.c:  More cleanups.  Get rid of monitor_load_ascii_srec.
	BFD makes this unnecessary.  Lots of debugging speedups.
	* (expect):  NULL terminate return string.
	* (monitor_open	monitor_supply_register parse_register_dump
	monitor_wait monitor_fetch_register):  Switch to using GNU regexp
	library to parse multi-register displays.
	* (monitor_read_memory): Read multiple bytes (up to 16) at once.
	* (monitor_create_inferior):  Call clear_proceed_status to make run
	command notice first breakpoint.
	* (monitor_load):  Clean up.  Reset inferior_pid, set pc to start
	address and reset symbol table stuff to make loads put things into
	a fresh state.
	* (monitor_load_srec):  Lower sleep time to 1 second.

	* monitor.h (struct monitor_ops):  Add register_pattern and
	supply_register to monitor_ops.

	* rom68k-rom.c:  Add new support for handling register dumps.
1995-03-15 23:31:14 +00:00
Stu Grossman
32fa4b5936 * monitor.c array-rom.c monitor.h rom68k-rom.c: Move target_ops
into monitor.c.
	* monitor.c (monitor_create_inferior):  Allow run command to start
	program.
1995-03-08 03:21:51 +00:00
Stu Grossman
f17aed8ba3 * monitor.c (monitor_load): Set PC to start address when done
loading.

	* array-rom.c monitor.h rom68k-rom.c:  Clean up target_ops.
	Remove ref to monitor_create_inferior.
1995-03-08 01:18:08 +00:00
Stu Grossman
1265e2d823 * Makefile.in: Add rules for monitor.o and rom68k-rom.o to make
Sun make (with VPATH) work...

	* monitor.c monitor.h rom68k-rom.c:  Serious cleanup to make IDP
	(rom68k) target work right.
	* array-rom.c op50-rom.c w89k-rom.c:  Partial updates to new
	monitor.c interface.  More work needs to be done here.
	* config/m68k/tm-monitor.h:  Change DECR_PC_AFTER_BREAK to 0 to
	match the IDP monitor.  Also, set NUM_REGS to 18 cuz there's no
	floating-point for this card.
1995-03-07 09:26:39 +00:00
Rob Savoye
0b0669febd Add GDBPROTO macro for checking the type of protocol. 1995-01-18 19:11:30 +00:00
Rob Savoye
cf51c6017e * monitor.[ch], op50-rom.c, rom68k-rom.c, w89k-rom.c: Add support
to monitor config structure for supported baud rates for a target
	and variable stop bits.
	* monitor.c (monitor_fetch_register): Store register values in big
	endian format on any host.
1994-12-30 01:26:37 +00:00
Rob Savoye
b3b8d9bfa7 * op50-rom.c, w89k-rom.c, monitor.c: Modify to use two variables
to set remote load type and protocol.
	* rom68k-rom.c: Add to_stop in target_ops.
1994-11-15 08:13:05 +00:00
Rob Savoye
df3cf84a35 * monitor.h, remote-mon.c: Hack up to so the old ROM monitor
interface code still works with the new ROM monitor
	structures. Fake out a couple of fields.
1994-10-15 01:45:59 +00:00
Rob Savoye
e6fa5bd61d Cleanup debug logging, fix single stepping. WinBond works good! 1994-10-12 23:12:47 +00:00
Rob Savoye
7804e5bc7c Breakpoints work, run works. Fixed "monitor" command. 1994-10-12 03:34:08 +00:00
Rob Savoye
51d6a95404 Memory_reads_inferior() and monitor_fetch_registers() now work good on
both targets. On to the "set" functions...
1994-10-11 04:37:18 +00:00