send_xmodem_packet shows up to do the obvious. Lots of fixes to
xmodem downloads including resetting of block number at start of
new transfers, fix for buffer overrun problem, addition of CRC
generation code.
* (monitor_open): loadtype_str and loadproto_str now default to
first entry in monitor_ops->loadtypes.
* (monitor_wait): Lengthen register dump buf, because of verbose
Winbond monitor.
* (monitor_fetch_register): Report unimplemented registers as 0.
* (monitor_read_memory): Only do 16 byte aligned transfers
because of formatting weirdness with the Winbond monitor. Also,
ignore non-hex, non-whitespace formatting between bytes (same
monitor).
* (monitor_load): Clean up logic.
* (monitor_load_srec): Re-do xmodem support. Move lots of it
into send_xmodem_packet.
* (getacknak): Get rid of polls and timeouts. Handle CRC
requests from receiver.
* (monitor_make_srec): Efficiency improvements. Don't call
sprintf to output two digit hex numbers.
* (crcinit, docrc): New, CRC-16 support routines.
* (send_xmodem_packet): New routine to generate either CRC-16 or
checksummed xmodem packets.
* remote-est.c (est_loadtypes), rom68k-rom.c (rom68k_loadtypes):
Reduce tables down to only the load types supported by each
monitor.
* w89k-rom.c (w89k_supply_register): Parses output of Winbond
register dumps.
* (w89k_loadtypes, w89k_loadprotos): Reduce to just srec/xmodem.
* (w89k_cmds): Add clear all breakpoints, memory fill, and dump
registers commands.
* 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.
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.
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.
* monitor.c (monitor_load): check the load type and load the file
accordingly. Default to gr_load_image().
* monitor.c (monitor_load_ascii_srec): Load an ascii file in
srecord format by downloading to the monitor.
* w89k-rom.c, op50n-rom.c: set supported load types.