🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Leonard H. Tower Jr. Thu, 17 May 1990 21:23
Gdb-based cross-debugger for the 88000
#2626
Author: Leonard H. Tower Jr.
Date: Thu, 17 May 1990 21:23
89 lines
4145 bytes
This version of gdb can debug programs running in three environments:

1. UTek V UNIX process (just like normal gdb)

2. simulator of a bare 88k + some I/O devices (announced earlier this week)

3. remote target, i.e. a machine other than the one gdb is running on.

Kernel engineers at Tek use 3) to debug the UNIX kernel.  I call gdb
"cross-gdb" when it is used in this mode.

Cross-gdb uses a serial connection between the host (running cross-gdb)
and the target that runs at 38.4 kilobaud.  Data going over this line
is compressed and checksummed.  On the target, a small program (the
"debug monitor") examines memory, changes memory, starts the
program-being-debugged, and fields exceptions on behalf of cross-gdb.
The debug monitor is on one end of the serial line, cross-gdb is on the
other.

Cross-gdb has a number of new commands to make low-level debugging
easier.  They are described in the man page that you can get along
with the source (see below).

If you want to use cross-gdb, you need to:

1. Have some way that gdb can reset and interrupt the target.  This
   means you need some hardware + need to modify gdb to know about
   it.

2. Make the 8k monitor talk to a spare serial port on your target.

3. Find a place to put the 8k debug monitor.

Note that the 8k debug monitor is not linked with any gnu code and is
copyrighted by Tektronix.  But Tek makes it available w/o charge as
long as you leave their copyright messages intact.

It will require at least a little work to port this to a non-Tek
machine.  You will probably want to slash a lot of the cruft out of
gdb/Makefile.  If you delete the directory gdb/sim, you will get a gdb
w/o the simulator.  This will make your work easier if you don't need
the simulator.

I do not represent Tektronix in any way.  No warranties, etc.  I will
try to help people who make a serious effort on their own.  But don't
bang your head against a wall when I could clear something up in a few
minutes.

You can get this gdb + simulator + cross-debugging features from

128.95.1.4      june.cs.washington.edu cs.washington.edu june

The two files are:

-rw-r--r--  1 robertb   2422839 May 17 13:45 /usr/ftp/pub/gdb88.rcs.tar.Z
-rw-r--r--  1 robertb   1046629 May 17 13:43 /usr/ftp/pub/gdb88.tar.Z

The larger file contains all the RCS files, the smaller file has just
the current version of each file.

	Rob

Here's what the ftp session looks like:

Script started on Thu May 17 14:08:22 1990
% ftp 128.95.1.4
Connected to 128.95.1.4.
220 june.cs.washington.edu FTP server (Ultrix Version 4.9 Wed May 3 20:41:16 PDT 1989) ready.
Name (128.95.1.4:): anonymous
Password (128.95.1.4:anonymous): 
331 Guest login ok, send ident as password.
230 Guest login ok, access restrictions apply.
ftp> cd pub
250 CWD command successful.
ftp> bin
200 Type set to I.
ftp> get gdb88.tar.Z
200 PORT command successful.
150 Opening data connection for gdb88.tar.Z (128.95.1.4,1691) (1046629 bytes).
226 Transfer complete.
local: gdb88.tar.Z remote: gdb88.tar.Z
1046629 bytes received in 11 seconds (97 Kbytes/s)
ftp> quit
221 Goodbye.
% uncompress gdb88.tar.Z
% tar xf gdb88.tar
script done on Thu May 17 14:10:00 1990

	- Rob
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads