
The following files on this disk are part of "4P Boot ROM
Disassembled", by Adam Rubin:

    ROMFILES/TXT        This file -- description of files
                        and instructions

    BOOTROM/TXT         Article describing 4P boot ROM
                        (longer than version in Quarterly)

    ROM4P/CMT           Comments for disassembled ROM

    ROM116/SCN          Screening files for ROM versions 1(16)
    ROM115/SCN          and 1(15)

    GETROM/CMD          Copies contents of boot ROM into user
                        memory (from _Misosys Quarterly_ I.ii)

    GETROM/ASM          Commented assembly-language source
                        for GETROM/CMD

    COMBINE/BAS         BASIC program to combine disassembly
                        and comments


    You'll also need the following programs, or suitable
substitute:

    DMSBLR or PRO-DUCE          Disassembler
    CMDFILE or PRO-CESS         Utility to offset load address
                                of ROM dump

    TRSDOS/LS-DOS 6.1.2 or later with BASIC, and a Model 4P



    The actual program contained in the 4P's boot ROM is copy-
righted by Tandy Corporation, of course, and we're not able
to include it on this disk.  However, we've tried to make the
procedure as painless as possible.

1)  If you haven't already done so, print this file using
LIST ROMFILES (P), and read it thoroughly.  This would also be
a good time to print out the article describing the boot ROM.
It's already formatted for an 80-column printer at 66 lines
per page, so just LIST BOOTROM (P)

2)  Find out which version of the boot ROM is in your 4P
by holding down the <V> key and pressing the reset switch.
    If it's anything other than version 1(16), follow the
instructions in the note below.

3)  If you're not already doing so, start up your 4P under
TRSDOS/LS-DOS 6.x, and type GETROM at the "DOS Ready" prompt
to copy the contents of the ROM into user memory.

4)  Immediately after running GETROM (don't do anything else
after running it), type DUMP ROM (START=X'8000',END=X'8FFF')
to put the contents of the ROM into a file called ROM/LMF.
(You may specify a drive number for this file if you like.)

5)  Next, use PRO-CESS (or CMDFILE in Model III mode) to read
in this file, and write the file ROM4P/LMF to disk with a
starting address of 0000H (since that's the address the ROM
starts at when it's in use), and a transfer address of 0000H.


6)  Invoke PRO-DUCE (or DSMBLR, in Model III mode) with the
screening file we've supplied by typing
        PRODUCE (SOURCE="ROM4P/LMF", OUTPUT="ROM4P/ASM", SCREEN="ROM116/SCN")
and this will create the ROM4P/ASM file with the disassembled
boot ROM.

7)  The last step is to combine the disassembly with the
comments on this disk, and the BASIC program COMBINE/BAS will
do that for you.  Invoke Model 4 BASIC (get back into Model 4
mode if necessary!), type RUN "COMBINE/BAS", and answer the
prompts.
        The /ASM file is ROM4P/ASM, the comment file is
ROM4P/CMT, and the output file is ROM4P/TXT (make sure you
have at least 70K of free space on the disk for the output
file).  In a few minutes, you'll have the ROM4P/TXT file
with both the disassembly and the comments.
        You can now print this file, load it into a word
processor or text editor to add headings or page numbers,
or whatever you like.  (Please note that the ROM4P/TXT file
contains real tabs!)



    NOTE:  The vast majority of Model 4Ps I've seen have boot
ROM version 1(16), dated 18-Oct-83.  The early 4Ps, however,
have version 1(15), dated 11-Oct-83, and the difference
between the two is described in BOOTROM/TXT.
    The comments as supplied on this disk are for version
1(16), since that's what the majority of users will be working
with.  If you're trying to match up the comments with a
disassembly of version 1(15), follow the procedure above, with
two minor changes:
    First, use the screening file ROM115/SCN when running
PRO-DUCE (or DSMBLR).  Second, at the start of the program
COMBINE/BAS, change V115=0 to V115=-1.  (It's an ASCII file,
so you can change it either before invoking BASIC (use any
text editor and save in ASCII format), or before running the
program.)  When this variable is changed, COMBINE/BAS will
automatically delete the necessary lines for version 1(15).

.
...................................
.                                 .
.    Downloaded in 1990 from:     .
.                                 .
.      ********************       .
.      *     8/N/1 #1     *       .
.      *   904/377-1200   *       .
.      * Gainesville, FL  *       .
.      * Guy Omer - SYSOP *       .
.      ********************       .
.                                 .
. Software support for the TRS-80 .
...................................
