File Name
README.md
Harry Herman
Corpane Industries Inc.
250 Production Court
Louisville, Ky 40220
(502)491-4433
06-Dec-85

This account contains modifications to the DOB program originally released on
the Fall '83 RSX DECUS tape on account [351,30]. The original version was
written by Tom Getzinger of Hughes Aircraft. This version has been extended
to recognize RT11 object libraries (at least on RSTS), allow global symbols
to be specified, dynamically increase its size as needed, use I&D space (if
your processor supports it), new error messages, print numbers larger than
170000(8) as negative numbers, print comment lines decoding some of the
Internal Symbol Directory (ISD) entries documented in the TKB manual,
correctly print "TRAP global" and "EMT global" (instead of printing ".BYTEs"),
handle library symbol tables that now specify offsets to start of a library
.PSECT, and a couple of minor bug fixes.

To build DOB, use the command file DOB.CMD. No DOB.TSK has been provided, so
edit DOBTKB.CMD to include the "/ID" task qualifier if the I&D version of DOB
is wanted (M+ and RSTS V9.0 or later), or remove "/ID" if the I&D version of
DOB is not wanted (M or RSTS prior to 9.0 or machines not supporting I&D
space).

Once the task has been built, you can install it as a CCL (RSTS) or a known
task (RSX) so that it can take a command line of the form:

DOB output[/switches[,tmpfile]]=input[/switches].

Or the program can be run with a "RUN [account]DOB" and DOB will prompt for
input of a similar format.

The following switches are recognized on output files:

/ID Show version number of DOB.
/RA Print comments showing the RAD50 equivalent of whatever is
disassembled.
/AS Print comments showing the ASCII equivalent of whatever is
disassembled.

A temp file specification is not needed unless you want to put the temporary
file on another disk.

The following switches recognized on input files:

/ID Show version nyumber of DOB.
/LB:modnam Input file is an object library, and modnam is the
name of the module to look for inside the library.
/RT[:modnam] Input file is an RT11 object library, and modnam is
the name of the module to look for inside the
library. NOTE: this may not work on RSX because RT11
uses different internal record formats that are
recognized by the RSTS version of GET$, but may not
be recognized by the RSX version of GET$. The module
name may be specified either here or on the /LB switch.
The /LB switch is optional with the /RT switch.
/EP Modifies /LB and /RT to have DOB search the entry point
table for modnam if it is not in the module name table.
In other words, it looks for a global symbol named
modnam. This can be used to look for the module that
defines a symbol ($DSW, for example) if you do not
know the name of the module the symbol is defined in.
/[-]EI Extended Instruction Set (EIS) instructions are valid
(the default is /EI).
/[-]FI Floating Instruction Set (FIS) instructions are valid
(the default is /FI).
/[-]FP Floating Point Processor (FPP) instructions are valid
(the default is /FP).
Examples are:
TI:=LB:SYSLIB/LB:ALERR (Find module ALERR in SYSLIB.OLB)
TI:=LB:SYSLIB/LB:xxxxx/RT (Find module xxxxx in RT11 SYSLIB.OBJ)
TI:=LB:SYSLIB/RT:xxxxx (Same as above)
TI:=LB:SYSLIB/LB:$DSW/EP (Find the module that defines $DSW)