|
|
1.1 ! root 1: .pa 1 ! 2: .he '3/15/72''BOOT PROCEDURES (VII)' ! 3: .ti 0 ! 4: NAME bos, maki, rom, vcboot, msys, et al ! 5: .sp ! 6: .ti 0 ! 7: SYNOPSIS -- ! 8: .sp ! 9: .ti 0 ! 10: DESCRIPTION On ! 11: the RF disk, the highest 16K words are ! 12: reserved for stand-alone programs. ! 13: These 16K words are allocated as follows: ! 14: .sp ! 15: bos (1K) ! 16: .br ! 17: Warm UNIX (7K) ! 18: .br ! 19: Cold UNIX (8K) ! 20: .sp ! 21: The UNIX read only memory (ROM) ! 22: is home cut with 2 programs of 16 words each. ! 23: The first (address 173000) ! 24: reads bos___ from the RF disk into core ! 25: location 154000 ! 26: and transfers to 154000. ! 27: The other ROM program ! 28: (address 173040) ! 29: reads a DECtape sitting in the end-zone ! 30: on drive 0 ! 31: into core location 0 and transfers to 0. ! 32: This latter operation is compatible with ! 33: part of DEC's standard ROM. ! 34: The disassembled code for the UNIX ROM follows: ! 35: .sp ! 36: .nf ! 37: .in 8 ! 38: 173000: mov $177472,r0 12700;177472 ! 39: mov $3,-(r0) 12740;3 ! 40: mov $140000,-(r0) 12740;140000 ! 41: mov $154000,-(r0) 12740;154000 ! 42: mov $-2000,-(r0) 12740;176000 ! 43: mov $5,-(r0) 12740;5 ! 44: tstb (r0) 105710 ! 45: bge .-2 2376 ! 46: jmp *$154000 137;154000 ! 47: .sp ! 48: 173040: mov $177350,r0 12700;177350 ! 49: clr -(r0) 5040 ! 50: mov r0,-(r0) 10040 ! 51: mov $3,-(r0) 12740;3 ! 52: tstb (r0) 105710 ! 53: bge .-2 2376 ! 54: tst *$177350 5737;177350 ! 55: bne . 1377 ! 56: movb $5,(r0) 112710;5 ! 57: tstb (r0) 105710 ! 58: bge .-2 2376 ! 59: clr pc 5007 ! 60: .fi ! 61: .in 16 ! 62: .sp ! 63: The program bos___ (Bootstrap Operating System) ! 64: examines the console switchs and executes ! 65: one of several internal programs depending on the setting. ! 66: The following settings are currently recognized: ! 67: .sp ! 68: .in +8 ! 69: .ti -8 ! 70: ??? Will read Warm UNIX from ! 71: the RF into core location 0 and transfer to 600. ! 72: .sp ! 73: .ti -8 ! 74: 1 Will read Cold UNIX from the ! 75: RF into core location 0 and transfer to 600. ! 76: .sp ! 77: .ti -8 ! 78: 10 Will dump all of memory ! 79: from core location 0 onto DECtape drive 7 ! 80: and then halt. ! 81: .sp ! 82: .ti -8 ! 83: 20 Will read 256 words from RK0 into ! 84: core 0 and transfer to zero. ! 85: This is the procedure to boot ! 86: DOS from an RK. ! 87: .sp ! 88: .ti -8 ! 89: 40 This is the same as 10 above, but ! 90: instead of halting, UNIX warm is loaded. ! 91: .sp ! 92: .ti -8 ! 93: 0 Will load a standard UNIX binary paper tape ! 94: into core location 0 and transfer to 0. ! 95: .sp ! 96: .ti -8 ! 97: 77500 Will load the standard DEC absolute and binary ! 98: loaders and transfer to 77500. ! 99: .sp ! 100: .in 16 ! 101: Thus we come to the UNIX warm boot procedure: ! 102: put 173000 into the switches, push ! 103: .ul ! 104: load address ! 105: and then push ! 106: .ul ! 107: start. ! 108: The alternate switch setting of 173030 ! 109: that will load warm UNIX is used ! 110: as a signal to bring up ! 111: a single user system for special ! 112: purposes. ! 113: See ! 114: init(VII). ! 115: For systems without a rom, ! 116: UNIX (both warm and cold) ! 117: have a copy of the disk boot ! 118: program at location 602. ! 119: This is probably a better warm boot ! 120: procedure because ! 121: the program at 602 also ! 122: attempts to complete outstanding I/O. ! 123: .sp ! 124: Cold boots can be accomplished with the ! 125: Cold UNIX program, but they're not. ! 126: Thus the Cold UNIX slot on the RF may have ! 127: any program desired. ! 128: This slot is, however, used during a cold boot. ! 129: Mount the UNIX INIT DECtape on drive ! 130: 0 positioned in the end-zone. ! 131: Put 173040 into the switches. ! 132: Push ! 133: .ul ! 134: load address. ! 135: Put 1 into the switches. ! 136: Push ! 137: .ul ! 138: start. ! 139: This reads a program called ! 140: .ul ! 141: vcboot ! 142: from the tape into ! 143: core location 0 and transfers to it. ! 144: vcboot______ then reads 16K words from ! 145: the DECtape (blocks 1-32) ! 146: and copies the data to the highest 16K words of ! 147: the RF. ! 148: Thus this initializes the read-only part of the RF. ! 149: vcboot______ then reads in bos___ and executes it. ! 150: bos___ then reads in Cold UNIX and executes that. ! 151: Cold UNIX halts for a last chance before ! 152: it completely initializes the RF file system. ! 153: Push ! 154: .ul ! 155: continue, ! 156: and Cold UNIX will initialize the RF. ! 157: It then sets into execution a user program ! 158: that reads the DECtape for initialization files ! 159: starting from block 33. ! 160: .a ! 161: When this is done, the program executes ! 162: /etc/init ! 163: which should have been on the tape. ! 164: .sp ! 165: The INIT tape is made by the program maki____ ! 166: running under UNIX. ! 167: maki____ writes vcboot______ on block 0 of ! 168: .ul ! 169: /dev/tap7. ! 170: It then copies the RF 16K words (using ! 171: .ul ! 172: /dev/rf0) ! 173: onto blocks 1 thru 32. ! 174: It has internally a list of files to ! 175: be copied from block 33 on. ! 176: This list follows: ! 177: .sp ! 178: .nf ! 179: .in +8 ! 180: /etc/init ! 181: /bin/chmod ! 182: /bin/date ! 183: /bin/login ! 184: /bin/ls ! 185: /bin/mkdir ! 186: /etc/mount ! 187: /bin/sh ! 188: /bin/tap ! 189: .in -8 ! 190: .fi ! 191: .sp ! 192: Thus this is the set of programs available after a cold boot. ! 193: init____ and sh__ are mandatory. ! 194: For multi-user UNIX, ! 195: getty_____ and login_____ are also necessary. ! 196: mkdir_____ is necessary due to a bug in tap___. ! 197: tap___ and mount_____ are useful to ! 198: bring in new files. ! 199: As soon as possible, date____ should be done. ! 200: That leaves ls__ and chmod_____ as frosting. ! 201: .sp ! 202: The last link in this incestuous ! 203: daisy chain is the program msys____. ! 204: .sp ! 205: msys____ char file ! 206: .sp ! 207: will copy the file file____ onto the ! 208: RF read only slot specified by the characacter char____. ! 209: Char is taken from the following set: ! 210: .sp ! 211: b_ bos ! 212: u_ Warm UNIX ! 213: 1_ Cold UNIX ! 214: .sp ! 215: Due to their rarity of use, ! 216: maki____ and msys____ are maintained off line and ! 217: must be reassembled before used. ! 218: .sp ! 219: .ti 0 ! 220: FILES /dev/rf0, ! 221: /dev/tap? ! 222: .sp ! 223: .ti 0 ! 224: SEE ALSO init(VII), ! 225: tap(I), ! 226: sh(I), ! 227: mkdir(I) ! 228: .sp ! 229: .ti 0 ! 230: DIAGNOSTICS -- ! 231: .sp ! 232: .ti 0 ! 233: BUGS This ! 234: section is very configuration dependent. ! 235: Thus, it does not ! 236: describe the boot procedure for ! 237: any one machine. ! 238: .sp ! 239: .ti 0 ! 240: OWNER ken
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.