aboutsummaryrefslogtreecommitdiff
path: root/gdb/srec.h
diff options
context:
space:
mode:
authorStu Grossman <grossman@cygnus>1995-11-14 23:24:10 +0000
committerStu Grossman <grossman@cygnus>1995-11-14 23:24:10 +0000
commit5c8ba01776c033aafffbfa0dc972cb29a22a5113 (patch)
treea81b0a3291ff437ccc14c4e6889b60e31c4b2e10 /gdb/srec.h
parent1c1a4269dd2fc1e95de5cc070390425c8f8a3ed6 (diff)
downloadgdb-5c8ba01776c033aafffbfa0dc972cb29a22a5113.zip
gdb-5c8ba01776c033aafffbfa0dc972cb29a22a5113.tar.gz
gdb-5c8ba01776c033aafffbfa0dc972cb29a22a5113.tar.bz2
* monitor.c (monitor_load_srec monitor_make_srec): Move all
S-record download code into srec.c. * srec.c srec.h: New files. Contain S-record loading routines formerly in monitor.c. * serial.c serial.h: New routine just like fprintf, but uses serial_t instead of FILE *. * sh-tdep.c (frame_find_saved_regs init_extra_frame_info): Don't add four to saved pc (makes things match manual). Also, fix bug where we didn't get pc from stack frame correctly. * config/sh/tm-sh.h (SAVED_PC_AFTER_CALL): Don't add four to saved pc. Real hardware does this for you. * sh3-rom.c (sh3_load): New routine. Sets up for download then calls generic S-record loader. * config/h8300/h8300.mt, config/h8500/h8500.mt, config/m68k/monitor.mt, config/pa/hppapro.mt, config/sh/sh.mt: Add srec.o to TDEPFILES.
Diffstat (limited to 'gdb/srec.h')
-rw-r--r--gdb/srec.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/gdb/srec.h b/gdb/srec.h
new file mode 100644
index 0000000..1446bda
--- /dev/null
+++ b/gdb/srec.h
@@ -0,0 +1,35 @@
+/* S-record download support for GDB, the GNU debugger.
+ Copyright 1995 Free Software Foundation, Inc.
+
+This file is part of GDB.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+
+void load_srec PARAMS ((serial_t desc, const char *file, int maxrecsize,
+ int flags, int hashmark));
+
+/* S-record capability flags */
+
+/* Which record types are supported */
+#define SREC_2_BYTE_ADDR 0x00000001
+#define SREC_3_BYTE_ADDR 0x00000002
+#define SREC_4_BYTE_ADDR 0x00000004
+#define SREC_TERM_SHIFT 3
+
+#define SREC_ALL (SREC_2_BYTE_ADDR | SREC_3_BYTE_ADDR | SREC_4_BYTE_ADDR \
+ | ((SREC_2_BYTE_ADDR | SREC_3_BYTE_ADDR | SREC_4_BYTE_ADDR) \
+ << SREC_TERM_SHIFT))
+
+#define SREC_BINARY 0x00000040 /* Supports binary form of S-records */