|
|
1.1 root 1: Bootstrap code for VAXes lives here.
2:
3: The goal on any type of VAX: somehow load the secondary boot program `boot' into
4: memory, and get it to load /unix.
5:
6: On the VAX-11/780 and 785, the console BOOT command executes a command file
7: according to its arguments: B SDF invokes SDFBOO.CMD from the floppy; B
8: without args calls DEFBOO.CMD. For Unix, the command file typically does
9: anything that must be done early (turning on interleaved memory, for
10: instance), loads a copy of `boot' from the floppy, puts boot flags in R11
11: and perhaps a device type in R10, and starts boot.
12:
13: ./floppy contains junk that should be put (verbatim) on the console floppy.
14: Other, site-specific junk (like the microcode appropriate to your system)
15: should go on the floppy too.
16:
17: On the VAX-11/750, the B command causes a tiny ROM program to be called,
18: with parameters set from arguments: B XY3 picks a ROM named `XY' and passes
19: the unit number 3 in a register. Standard ROMs read block 0 from some device
20: into low memory, and start it at address 0xC. Some standard registers are
21: set up with things like the device unit number and the address of a driver
22: subroutine in the ROM, so it's possible to have a device-independent boot
23: block. It's a nice setup, and nobody uses it much. Unix boot blocks read
24: /boot from the root filesystem and start it.
25:
26: ./bb contains source to several boot blocks. 1kboot and 4kboot are device-
27: independent boot blocks (using the driver provided by the ROM) for 1k and 4k
28: filesystems; /boot doesn't know about the device-independent conventions (yet),
29: so ?kboot tell /boot that the system device is a UDA50 disk. upboot is a
30: boot block for some kinds of SMD disk on a UNIBUS Emulex controller; hpboot
31: is for MASSBUS controllers. upboot is Emulex-dependent in the way it guesses
32: the size of the disk; look for references to the hr register to fix that.
33: There are some other boots too; do what you like with them.
34:
35: ./stand contains the source for `boot,' and a few other standalone utilities.
36: Only boot is thought to work. Boot assumes that ra disks have 4k filesystems,
37: that up/hp disks have 1k filesystems, and probably doesn't work with anything
38: else.
39:
40: To set things up on an 11/780, add the contents of ./star to the console floppy.
41: If you have interleaved memory, de-comment the DEPOSIT lines in all the
42: command files first.
43: To set things up on an 11/750, install the appropriate boot block as block 0
44: of the root filesystem (which should be the first partition on unit 0), and
45: make sure you have a working boot ROM as well. Copy boot to /boot.
46:
47: Caveat booter.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.