TAPE BOOT(8) — UNIX 3.0
NAME
tapeboot − magnetic tape bootstrap program
DESCRIPTION
Tapeboot handles the problem of booting a PDP-11/45 or PDP-11/70 from a TU10 or TU16 tape transport. In both cases, the tape density is 800 bpi. The complete program fits in one 512 byte block, but is duplicated so that one copy resides in block 0 and another in block 1. Thus, both the standard DEC ROM bootstrap loaders and the special ROM loaders will work. For example, to create a boot tape, execute:
cat /stand/tapeboot program-to-boot >/dev/mt0
To boot from magnetic tape, read the first record of the tape into memory starting at address 0 and then jump to address 0, using a special ROM or some manual procedure (toggle in the program). The bootstrap program relocates itself to high core as specified when assembled (typically 24K words, maximum of 28K). It then determines whether to use the TU10 code or the TU16 code. The TU10 is used if the TM11 command register (772 522) exists and the function (bits <3:1>) is non-zero, otherwise the TU16 is used. It then types on the console UNIX tape boot loader, rewinds the tape, reads two blocks to skip past itself on the tape, clears memory, and reads the rest of the tape, to the tape mark, into memory starting at address 0. If address 0 contains 000 407, a UNIX a.out program is assumed and the first 8 words are stripped off by relocating the loaded program toward address 0. Finally, a jump to address 0 is done by executing jsr pc,∗$0.
If there is an error while reading the tape, the bootstrap program will type tape error and attempt to read the record again.
FILES
/stand/tapeboot TU10/TU16 magtape bootstrap
/usr/src/stand source directory
SEE ALSO
May 16, 1980 — PDP-11 only