ASSEMBLY LISTING OF SEGMENT >spec>h>3.17>fmt.alm ASSEMBLED ON: 11/29/83 1538.3 mst Tue OPTIONS USED: list ASSEMBLED BY: ALM Version 6.6 November 1982 ASSEMBLER CREATED: 09/21/83 1227.3 mst Wed  1 " ***********************************************************  2 " * *  3 " * Copyright, (C) Honeywell Information Systems Inc., 1982 *  4 " * *  5 " * Copyright (c) 1972 by Massachusetts Institute of *  6 " * Technology and Honeywell Information Systems, Inc. *  7 " * *  8 " ***********************************************************  9  10 " FMT - Disk Formatting Program 11 " for DSU181, DSU190, DSU191  12  13 " 8/20/74 - David A. Kayden 14 " Modified Novemeber 1981 by C. Hornig to not use IOM rel mode. 15  16  17 include bosequ 1-1 " Begin include file ...... bosequ.incl.alm 1-2 " Modified 8/25/76 by N. I. Morris  1-3 " Modified 8/79 by R.J.C. Kissel to expand BOS. 1-4 " Modified November 1981 by C. Hornig to add pgmorg.  1-5 " Modified October 1982 by J. Bongiovanni to take it out  1-6  000000 1-7 bool ds,0 descriptor segment  000001 1-8 bool tmp,1 temp seg  000002 1-9 bool bf,2 buffer segment for save/restor  000003 1-10 bool pgm,3 program in control 000004 1-11 bool xs1,4 spare segment  000005 1-12 bool xs2,5 spare segment  000005 1-13 bool fgb,5 flagbox segment  000006 1-14 bool com,6 common 000007 1-15 bool mem,7 all memory 1-16  000017 1-17 equ arglen,15 max number of args from scan  1-18  004000 1-19 bool runcom_bit,4000 runcom bit in dir entry  002000 1-20 bool firmware_bit,2000 firmware bit in dir entry  1-21  012000 1-22 bool utilorg,12000 origin of utility package  1-23  1-24 " End of include file ...... bosequ.incl.alm  18  19 use toec  20 include bos_toequ  2-1 "  2-2 " Begin include file ...... bos_toequ.incl.alm  2-3 " Converted for follow-on on 5/5/72 at 17:30 by D R Vinograd  2-4 " Modified on 5/3/77 by N. I. Morris  2-5 " Modified 8/79 by R.J.C. Kissel to expand parts of BOS.  2-6 " Modified by Sherman D. Sprague 02/11/81 for DPS8 support  2-7 " Last modified by Keith Loepere to fix addresses to toehold and setup so  2-8 " that dcw list in setup will correctly save/restore Multics image  2-9 " The following is a map of BOS memory. 2-10 "  2-11 " Address Length  2-12 "  2-13 " 0 100 interrupt vector  2-14 " 100 100 fault vector  2-15 " 200 400 its pointers for fault and interrupt vectors  2-16 " 600 300 padding?  2-17 " 1100 100 bulk store mbx  2-18 " 1200 200 IOM imw area  2-19 " 1400 400 IOM A mbx 2-20 " 2000 400 IOM B mbx 2-21 " 2400 400 IOM C mbx 2-22 " 3000 400 IOM D mbx 2-23 " 3400 300 FNP A mbx 2-24 " 3700 300 FNP B mbx 2-25 " 4200 300 FNP C mbx 2-26 " 4500 300 FNP D mbx 2-27 " 5000 300 FNP E mbx 2-28 " 5300 300 FNP F mbx 2-29 " 5600 300 FNP G mbx 2-30 " 6100 300 FNP H mbx 2-31 " 6400 1340 padding  2-32 " 7740 40 ds (descriptor segment)  2-33 " 10000 1000 toehold  2-34 " 11000 7000 setup  2-35 " 20000 2000 bf (buffer)  2-36 " 22000 4000 com (common) 2-37 " 31000 12000 pgm (program area)  2-38 " 40000 20000 util (utilities) 2-39 " 60000 717777 rest of BOS memory, unused  2-40  2-41 " EQU's for BOS core image. 2-42  060000 2-43 bool coresaved,60000 amount of Multics core saved by BOS  2-44  777777 2-45 bool lnmem,777777 length of memory  000000 2-46 bool origmem,0 absolute origin of start of memory  2-47  010000 2-48 bool lnsetup,10000 length of BOS control program  010000 2-49 bool origsetup,10000 absolute origin of BOS control program  2-50  010020 2-51 equ origflagbox,origsetup+16 absolute origin of flagbox area  000100 2-52 equ lnflagbox,64 length of flagbox area  2-53  000040 2-54 bool lnds,40 length of BOS descriptor segment  007740 2-55 equ origds,origsetup-lnds absolute origin of BOS descriptor segment  2-56  002000 2-57 equ lnbf,1024 length of buffer segment  020000 2-58 equ origbf,origsetup+lnsetup absolute origin of 1024-word buffer  2-59  007000 2-60 bool lncom,7000 length of BOS common area 022000 2-61 equ origcom,origbf+lnbf absolute origin of BOS common area  2-62  031000 2-63 equ origpgm,origcom+lncom absolute origin of BOS command programs  031000 2-64 equ pgmorg,origpgm for compatibility  027000 2-65 equ lnpgm,coresaved-origpgm length of BOS command programs 2-66  001400 2-67 bool imbx,1400 absolute loc'n of actual IOM mailbox  2-68  000037 2-69 bool rewpu,37 REWP access, unpaged bit for SDW  2-70  2-71  010000 2-72 bool maxw,10000  2-73  2-74  000020 2-75 bool absi,000020  004000 2-76 bool ovflm,004000  2-77  2-78  2-79 " BOS pointer registers.  2-80  2-81 mod 16 001160 2-82 bos_pr: 001160 aa 000000 000043 2-83 its 0,0 pr0 -> seg 0 etc  001161 aa 000000 000000 001162 aa 000001 000043 2-84 its 1,0  001163 aa 000000 000000 001164 aa 000002 000043 2-85 its 2,0  001165 aa 000000 000000 001166 aa 000003 000043 2-86 its 3,0  001167 aa 000000 000000 001170 aa 000004 000043 2-87 its 4,0  001171 aa 000000 000000 001172 aa 000005 000043 2-88 its 5,0  001173 aa 000000 000000 001174 aa 000006 000043 2-89 its 6,0  001175 aa 000000 000000 001176 aa 000007 000043 2-90 its 7,0  001177 aa 000000 000000 2-91  2-92  2-93 " BOS descriptor segment template.  2-94  001200 2-95 bos_dbr:  001200 2-96 dseg:  001200 aa 000077 400004 2-97 seg0: vfd 24/origds,9/0,o3/4  001201 aa 000017 600000 2-98 vfd 1/0,14/(lnds/16-1),5/rewpu,15/0  2-99  001202 aa 000310 000004 2-100 seg1: vfd 24/origpgm,9/0,o3/4  001203 aa 013377 600000 2-101 vfd 1/0,14/(lnpgm/16-1),5/rewpu,15/0  2-102  001204 aa 000200 000004 2-103 seg2: vfd 24/origbf,9/0,o3/4  001205 aa 000777 600000 2-104 vfd 1/0,14/(lnbf/16-1),5/rewpu,15/0  2-105  001206 aa 000100 000004 2-106 seg3: vfd 24/origsetup,9/0,o3/4 001207 aa 003777 600000 2-107 vfd 1/0,14/(lnsetup/16-1),5/rewpu,15/0 2-108  001210 aa 000000 000000 2-109 seg4: zero  001211 aa 000000 000000 2-110 zero  2-111  001212 aa 000100 200004 2-112 seg5: vfd 24/origflagbox,9/0,o3/4  001213 aa 000037 600000 2-113 vfd 1/0,14/(lnflagbox/16-1),5/rewpu,15/0  2-114  001214 aa 000220 000004 2-115 seg6: vfd 24/origcom,9/0,o3/4  001215 aa 003377 600000 2-116 vfd 1/0,14/(lncom/16-1),5/rewpu,15/0  2-117  001216 aa 000000 000004 2-118 seg7: vfd 24/origmem,9/0,o3/4  001217 aa 377767 600000 2-119 vfd 1/0,14/(lnmem/16-1),5/rewpu,15/0  2-120  2-121  2-122 " EQU's for locations in the IOM mailbox used by BOS toehold.  2-123  000014 2-124 equ scwr,3*4 loc of refill for IOM scw  000002 2-125 equ statq,2 loc of status word  000000 2-126 equ pcw,0 loc of pcw  000001 2-127 equ cow,1 loc of cow  000011 2-128 equ lpwr,2*4+1 array of lpw refills  2-129  2-130  2-131 " EQU's for locations in setup used by BOS toehold. 2-132 " NOTE: toelen M_U_S_T_ be 0 mod 64 long because it must fit into  2-133 " an integral number of disk sectors.  2-134  001000 2-135 bool toelen,1000  031000 2-136 equ toesaved,origcom+lncom core saved by toehold  000200 2-137 equ swaplen,128 Size of the Bos toehold area which is  2-138 " swapped with the Multics toehold area.  000575 2-139 equ mbxloc,toelen-swaplen-3  000576 2-140 equ devid,toelen-swaplen-2 000577 2-141 equ ttychan,toelen-swaplen-1  001000 2-142 equ cowsav,toelen  001001 2-143 equ mbbasesav,toelen+1 001002 2-144 equ mxbasesav,toelen+2 001003 2-145 equ dirbase,toelen+3  2-146  2-147 " End of include file ...... bos_toequ.incl.alm 2-148  21 use mainc  22 join /text/mainc,toec  23  000034 24 bool disk_seek,34  000017 25 bool disk_format,17  000042 26 bool disk_restore,42  000027 27 bool disk_read_track_header,27 28 "  29  000000 0a 000334 7420 00 30 stx2 x2 save X2  31  000001 aa 012271 7020 00 32 tsx2 init_io initialize IOM package  000002 aa 012245 7020 00 33 tsx2 ttyinit initialize operator's console package  000003 0a 000334 0000 00 34 arg ttyrequest 35  000004 0a 000334 2220 00 36 ldx2 x2 restore X2  000005 aa 7 00000 7271 12 37 lxl7 mem|0,2 copy the command line  000006 aa 000000 6260 00 38 eax6 0 39 odd; rpd 14,1  000007 aa 035600 5602 01 000010 aa 7 00000 2351 17 40 lda mem|0,7  000011 aa 012001 7550 16 41 sta line,6 42  000012 aa 012200 7020 00 43 tsx2 scan scan args  000013 aa 000001 6200 00 44 eax0 1 initialize argument index  000014 aa 000001 6200 00 45 eax0 1 Set X0 for arglist scan.  000015 aa 012223 7020 00 46 tsx2 argmul Go scan command line. 000016 0a 000334 7100 00 47 tra x2 48  000017 aa 012224 2350 20 49 lda amdvt,* Check for non-removable disks 000020 aa 000017 3750 07 50 ana =o17,dl mask off all but dev type 000021 0a 001040 2340 05 51 szn fs_dev.media_removable-1,al  000022 0a 000040 6010 00 52 tnz fmtcont  000023 aa 012241 7020 00 53 tsx2 erpt  000024 aa 051 106 115 124 54 acc 'FMT is not usable on non-removable media.'  000025 aa 040 151 163 040 000026 aa 156 157 164 040 000027 aa 165 163 141 142 000030 aa 154 145 040 157 000031 aa 156 040 156 157 000032 aa 156 055 162 145 000033 aa 155 157 166 141 000034 aa 142 154 145 040 000035 aa 155 145 144 151 000036 aa 141 056 000 000 000037 0a 000334 7100 00 55 tra x2 exit  56  000040 57 fmtcont:  000040 aa 012225 2350 20 58 lda amfirst,* Get starting point. 000041 0a 000504 7020 00 59 tsx2 getrack Convert to sector number.  000042 0a 000524 7550 00 60 sta sector And save.  61  000043 aa 012226 2350 20 62 lda amlast,* Get stopping point.  000044 0a 000504 7020 00 63 tsx2 getrack Convert to sector number.  000045 0a 000525 7550 00 64 sta last_sector And save.  65  000046 0a 000050 7100 00 66 tra arglp1 Examine rest of args now.  67  68 " 69  000047 aa 000001 6200 10 70 argloop: eax0 1,0 increment argument counter  000050 aa 012040 2350 10 71 arglp1: lda arg,0 grab next argument  000051 0a 001220 1150 00 72 cmpa =-1 is it a fence?  000052 0a 000102 6000 00 73 tze ask yes - get started 000053 0a 001221 1150 00 74 cmpa =hdefect check for "defect"  000054 0a 000057 6010 00 75 tnz argclear  000055 0a 000101 0540 00 76 aos defectsw set switch  000056 0a 000047 7100 00 77 tra argloop  78  000057 0a 001222 1150 00 79 argclear: cmpa =h clear check for "clear"  000060 0a 000063 6010 00 80 tnz argcheck  000061 0a 000100 0540 00 81 aos clearsw set switch  000062 0a 000047 7100 00 82 tra argloop  83  000063 0a 001223 1150 00 84 argcheck: cmpa =h check check for "check"  000064 0a 000071 6010 00 85 tnz argerror  000065 0a 000077 0540 00 86 aos checksw set switch  000066 aa 000004 2350 07 87 lda 4,dl set "z" flag 000067 0a 000532 7550 00 88 sta z  000070 0a 000047 7100 00 89 tra argloop  90  000071 aa 012241 7020 00 91 argerror: tsx2 erpt unknown argument  000072 aa 012 136 147 040 92 acc '^g unknown'  000073 aa 165 156 153 156 000074 aa 157 167 156 000 000075 aa 012040 0000 10 93 arg arg,0  000076 0a 000334 7100 00 94 tra x2 exit  95  000077 aa 000000 000000 96 checksw: dec 0  000100 aa 000000 000000 97 clearsw: dec 0  000101 aa 000000 000000 98 defectsw: dec 0 99  100 "  101  000102 aa 012236 7500 20 102 ask: stc2 disk_brief,* muzzle the error message 000103 0a 000533 7020 00 103 tsx2 query_disk is this a storage system volume  000104 aa 012224 0000 20 104 arg amdvt,*  000105 0a 000113 7100 00 105 tra ask1  000106 0a 000113 7100 00 106 tra ask1 if not, ask simple question  000107 aa 012236 4500 20 107 stz disk_brief,* unmuzzle error messages now  108  000110 0a 000641 7020 00 109 tsx2 ask_disk ask if volume should be overwritten 000111 0a 000334 7100 00 110 tra x2 if not, quit  000112 0a 000136 7100 00 111 tra yes  112  000113 aa 012236 4500 20 113 ask1: stz disk_brief,* allow error messages again  000114 aa 012241 7020 00 114 tsx2 erpt make sure operator wants to do this 000115 aa 050 144 157 040 115 acc 'do you wish to proceed with formatting^g' 000116 aa 171 157 165 040 000117 aa 167 151 163 150 000120 aa 040 164 157 040 000121 aa 160 162 157 143 000122 aa 145 145 144 040 000123 aa 167 151 164 150 000124 aa 040 146 157 162 000125 aa 155 141 164 164 000126 aa 151 156 147 136 000127 aa 147 000 000 000 000130 0a 001224 0000 00 116 arg =h!!????  117  000131 aa 012247 7020 00 118 tsx2 readtty get answer  000132 0a 000102 7100 00 119 tra ask  000133 aa 012001 2360 00 120 ldq line  000134 0a 001225 1160 00 121 cmpq =hyes " do we continue ?  000135 0a 000334 6010 00 122 tnz x2 no 123  000136 aa 012224 2350 20 124 yes: lda amdvt,* Get device type word. 000137 0a 000415 5510 40 125 stba pcwa+1,40 Set channel # in PCW.  000140 aa 000011 7710 00 126 arl 9 Move to AU. 000141 0a 000523 5510 20 127 stba channo,20 Save channel and IOM #.  000142 aa 000017 7350 00 128 als 9+6 store into IDCW's 000143 0a 000414 7510 20 129 stca pcwa,20 ..  000144 0a 000416 7510 20 130 stca reseek,20 .. 000145 0a 000417 7510 20 131 stca dcw,20 ..  000146 0a 000421 7510 20 132 stca dcw+2,20 ..  000147 0a 000423 7510 20 133 stca restore,20 .. 134  000150 aa 012272 7020 00 135 tsx2 connect_iom issue a restore cmmand to the disk unit  000151 00 000414 000423 136 zero pcwa,restore  000152 aa 012274 7020 00 137 tsx2 check_status wait for completion  000153 0a 000523 0000 00 138 arg channo 000154 0a 000152 7100 00 139 tra *-2 not done  000155 0a 000156 7100 00 140 tra *+1 ignore errors here  141 "  142  000156 0a 000531 4500 00 143 cycle: stz ti clear track indicators  000157 0a 000524 2350 00 144 lda sector load sector number 000160 0a 000424 7550 00 145 sta seekaddr set seek address 000161 aa 000014 7350 00 146 als 12 convert to a BOS address  000162 aa 012214 7020 00 147 tsx2 bosphy convert to a physical address 000163 aa 012224 0000 20 148 arg amdvt,*  000164 0a 000342 7100 00 149 tra addr_error error return  000165 aa 012215 6210 20 150 eax1 phyadd,* point to physical address data  000166 0a 000101 2340 00 151 szn defectsw are we marking tracks defective  000167 0a 000246 6010 00 152 tnz fmtbad yes - go do it 000170 0a 000077 2340 00 153 szn checksw if formatting all as good tracks  000171 0a 000174 6010 00 154 tnz rth then skip reading the track headers  000172 0a 000100 2340 00 155 szn clearsw ..  000173 0a 000252 6010 00 156 tnz fmtgood ..  157  000174 0a 000374 7020 00 158 rth: tsx2 connect issue read track header  000175 aa 270000 000000 159 vfd 6/disk_read_track_header  000176 0a 000352 7100 00 160 tra unfmted data alert return 000177 0a 000425 2350 00 161 lda buf check track indicators for a defective track  000200 aa 000002 3150 07 162 cana 2,dl  000201 0a 000222 6010 00 163 tnz clearchk track is already marked defective  000202 0a 000077 2340 00 164 szn checksw are we actually formatting  000203 0a 000252 6000 00 165 tze fmtgood yes  000204 aa 000000 2350 11 166 lda 0,1 get cylinder #  000205 aa 000020 7350 00 167 als 16 position it  000206 aa 000001 2750 11 168 ora 1,1 add the track #  000207 aa 000004 7350 00 169 als 4  000210 0a 000425 1150 00 170 cmpa buf check the home address & alternate track TI  000211 0a 000220 6010 00 171 tnz refmt bad - reformat it  000212 0a 000426 2350 00 172 lda buf+1 now check record 0  000213 0a 000427 2360 00 173 ldq buf+2  000214 aa 776000 3760 03 174 anq =o776000,du  000215 aa 000014 7370 00 175 lls 8+4 position it to look like the HA  000216 0a 000425 1150 00 176 cmpa buf compare with HA  000217 0a 000311 6000 00 177 tze next format data okay - proceed to next tzeck 178  000220 0a 000526 0540 00 179 refmt: aos refmtcnt count these occurances 000221 0a 000252 7100 00 180 tra fmtgood  181  000222 0a 000100 2340 00 182 clearchk: szn clearsw are we forcing all tracks to good ?  000223 0a 000235 6000 00 183 tze badtrk no 000224 aa 012241 7020 00 184 tsx2 erpt  000225 aa 027 146 155 164 185 acc 'fmt: clearing sector ^o'  000226 aa 072 040 143 154 000227 aa 145 141 162 151 000230 aa 156 147 040 163 000231 aa 145 143 164 157 000232 aa 162 040 136 157 000233 0a 000524 0000 00 186 arg sector 000234 0a 000252 7100 00 187 tra fmtgood  188  000235 aa 012241 7020 00 189 badtrk: tsx2 erpt report defective track  000236 aa 033 146 155 164 190 acc 'fmt: sector ^o is defective'  000237 aa 072 040 163 145 000240 aa 143 164 157 162 000241 aa 040 136 157 040 000242 aa 151 163 040 144 000243 aa 145 146 145 143 000244 aa 164 151 166 145 000245 0a 000524 0000 00 191 arg sector 000246 aa 000003 2350 07 192 fmtbad: lda 3,dl set track indicators for 000247 0a 000531 7550 00 193 sta ti defective track - no alternate assigned  000250 aa 000026 7350 00 194 als 22 also set TI in seek data  000251 0a 000424 2550 00 195 orsa seekaddr ..  196  000252 aa 000000 2350 11 197 fmtgood: lda 0,1 get cylinder #  000253 aa 000024 7350 00 198 als 20 000254 0a 000425 7550 00 199 sta buf put cylinder # in HA  000255 aa 000001 2350 11 200 lda 1,1 get track #  000256 aa 000004 7350 00 201 als 4  000257 0a 000531 2750 00 202 ora ti add track indicators  000260 0a 000532 2750 00 203 ora z add z flag  000261 0a 000425 2550 00 204 orsa buf put track # and flags into HA  000262 aa 000000 1004 00 205 mlr (),(),fill(0) clear record 0  000263 0a 000263 000000 206 desc9a *,0 000264 0a 000426 000020 207 desc9a buf+1,4*4  000265 0a 000531 2340 00 208 szn ti for a bad track - leave R0 zeroed  000266 0a 000277 6010 00 209 tnz chksum 210  000267 aa 000000 2350 11 211 lda 0,1 get cylinder #  000270 aa 000010 7350 00 212 als 8 position it 000271 0a 000426 7550 00 213 sta buf+1 put cylinder # into R0  000272 aa 000001 2350 11 214 lda 1,1 get track #  000273 aa 000000 2360 07 215 ldq 0,dl  000274 aa 000010 7730 00 216 lrl 8 position it 000275 0a 000426 2550 00 217 orsa buf+1 put track # into R0  000276 0a 000427 7560 00 218 stq buf+2 ..  219  000277 0a 000527 2350 00 220 chksum: lda ckchrr compute check character 000300 0a 000530 7550 00 221 sta ckchrt .. 000301 aa 000000 2360 03 222 ldq 0,du ..  000302 0a 000530 6760 52 223 erq ckchrt,sc ..  000303 0a 000302 6070 00 224 ttf *-1 ..  000304 aa 000014 7360 00 225 qls 12 position check character  000305 0a 000427 7520 04 226 stcq buf+2,04 store into R0  227  000306 0a 000374 7020 00 228 tsx2 connect issue format command 000307 aa 170000 000000 229 vfd 6/disk_format  000310 0a 000337 7100 00 230 tra fmt_alert data alert return  231  000311 aa 000001 0540 11 232 next: aos 1,1 increment track #  000312 aa 012213 7020 00 233 tsx2 phybos convert to a BOS address  000313 aa 012224 0000 20 234 arg amdvt,*  000314 0a 000342 7100 00 235 tra addr_error 000315 aa 000014 7710 00 236 arl 12 convert BOS address to sector #  000316 0a 000524 7550 00 237 sta sector 000317 0a 000525 1150 00 238 cmpa last_sector are we finished?  000320 0a 000156 6044 00 239 tmoz cycle if not, continue  240  000321 0a 000526 2340 00 241 szn refmtcnt any tracks reformatted ? 000322 0a 000334 6000 00 242 tze x2 no 000323 aa 012241 7020 00 243 tsx2 erpt yes 000324 aa 032 136 144 040 244 acc '^d good tracks reformatted'  000325 aa 147 157 157 144 000326 aa 040 164 162 141 000327 aa 143 153 163 040 000330 aa 162 145 146 157 000331 aa 162 155 141 164 000332 aa 164 145 144 000 000333 0a 000526 0000 00 245 arg refmtcnt  246  000334 247 ttyrequest: 000334 0a 000334 6220 00 248 x2: eax2 * restore X2  000335 aa 000001 3350 07 249 lca =1,dl don't chain to any other command  000336 aa 7 00001 7101 12 250 tra mem|1,2 back to BOS  251  000337 252 fmt_alert:  000337 0a 000531 2340 00 253 szn ti were we formatting a bad track ?  000340 0a 000311 6010 00 254 tnz next yes - skip it  000341 0a 000235 7100 00 255 tra badtrk no - go format the track bad  256  000342 257 addr_error: 000342 aa 012241 7020 00 258 tsx2 erpt  000343 aa 027 151 155 160 259 acc 'improper device address'  000344 aa 162 157 160 145 000345 aa 162 040 144 145 000346 aa 166 151 143 145 000347 aa 040 141 144 144 000350 aa 162 145 163 163 000351 0a 000334 7100 00 260 tra x2 261  000352 aa 012241 7020 00 262 unfmted: tsx2 erpt  000353 aa 035 146 155 164 263 acc 'fmt: sector ^o is unformatted'  000354 aa 072 040 163 145 000355 aa 143 164 157 162 000356 aa 040 136 157 040 000357 aa 151 163 040 165 000360 aa 156 146 157 162 000361 aa 155 141 164 164 000362 aa 145 144 000 000 000363 0a 000524 0000 00 264 arg sector 000364 aa 012241 7020 00 265 tsx2 erpt  000365 aa 025 165 163 145 266 acc 'use ""clear"" keyword'  000366 aa 040 042 042 143 000367 aa 154 145 141 162 000370 aa 042 042 040 153 000371 aa 145 171 167 157 000372 aa 162 144 000 000 000373 0a 000334 7100 00 267 tra x2 268 "  269  000374 0a 000411 7420 00 270 connect: stx2 cnx2  000375 aa 000005 3350 07 271 lca 5,dl set retry counter  000376 0a 000477 7550 00 272 sta retry ..  000377 aa 000000 2350 12 273 lda 0,2 get command code  000400 0a 000421 7510 40 274 stca dcw+2,40 set device command in IDCW  000401 aa 000036 7710 00 275 arl 30 save it for error messages 000402 0a 000500 7550 00 276 sta command  000403 aa 012272 7020 00 277 tsx2 connect_iom start i/o 000404 00 000414 000417 278 zero pcwa,dcw  279  000405 aa 012274 7020 00 280 check: tsx2 check_status wait for completion  000406 0a 000523 0000 00 281 arg channo 000407 0a 000405 7100 00 282 tra *-2 not done  000410 0a 000432 7100 00 283 tra io_error process errors  284  000411 0a 000411 6220 00 285 cnx2: eax2 * return  000412 aa 000002 7100 12 286 tra 2,2  287  288  000413 aa 000000 0110 03 289 even  000414 aa 500000 720201 290 pcwa: vfd 6/40,6/0,6/0,3/7,3/2,6/2,6/1 PCWA  000415 aa 000000 000000 291 vfd 9/0 PCWB  292  000416 aa 420000 720201 293 reseek: vfd o6/disk_restore,6/0,6/0,3/7,3/2,6/2,6/1 Restore IDCW and continue  294  000417 aa 340000 720000 295 dcw: vfd 6/disk_seek,6/0,6/0,3/7,3/2,6/0,6/0 Seek IDCW  000420 0a 031424 000001 296 vfd 18/seekaddr+pgmorg,6/0,12/1 IOTD for seek address 000421 aa 000000 740000 297 vfd 6/0,6/0,6/0,3/7,3/4,6/0,6/0 Format or RTH IDCW  000422 0a 031425 000005 298 vfd 18/buf+pgmorg,6/0,12/5 IOTD for format data  299  000423 aa 420000 700201 300 restore: vfd o6/disk_restore,6/0,6/0,3/7,3/0,6/2,6/1 Restore IDCW and disconnect  301  000424 302 seekaddr: bss ,1  000425 303 buf: bss ,5 304 "  305  000432 0a 000477 0540 00 306 io_error: aos retry count errors  000433 0a 000474 6044 00 307 tmoz restart retries not exhausted  308  000434 0a 000502 7570 00 309 staq stat save status for possible message  000435 aa 370000 3750 03 310 ana =o370000,du  000436 aa 030000 1150 03 311 cmpa =o030000,du data alert  000437 0a 000445 6010 00 312 tnz err_ask no - report error 000440 0a 000502 2350 00 313 lda stat now check substatus  000441 aa 000700 3150 03 314 cana =o700,du transfer timing, transmission timing, or inv. seek  000442 0a 000445 6010 00 315 tnz err_ask yes  000443 0a 000411 2220 00 316 ldx2 cnx2 take data alert return  000444 aa 000001 7100 12 317 tra 1,2  318  000445 aa 012241 7020 00 319 err_ask: tsx2 erpt print error message 000446 aa 054 146 155 164 320 acc 'fmt error: cmd=^o, s=^o, stat=^w ^w, retry^g' 000447 aa 040 145 162 162 000450 aa 157 162 072 040 000451 aa 143 155 144 075 000452 aa 136 157 054 040 000453 aa 163 075 136 157 000454 aa 054 040 163 164 000455 aa 141 164 075 136 000456 aa 167 040 136 167 000457 aa 054 040 162 145 000460 aa 164 162 171 136 000461 aa 147 000 000 000 000462 0a 000500 0000 00 321 arg command  000463 0a 000424 0000 00 322 arg seekaddr  000464 0a 000502 0000 00 323 arg stat  000465 0a 000503 0000 00 324 arg stat+1 000466 0a 001224 0000 00 325 arg =h!!????  326  000467 aa 012247 7020 00 327 tsx2 readtty get answer  000470 0a 000474 7100 00 328 tra restart retry unless he says "no" 000471 aa 012001 2360 00 329 ldq line  000472 0a 001226 1160 00 330 cmpq =hno " 000473 0a 000334 6000 00 331 tze x2 332  000474 aa 012272 7020 00 333 restart: tsx2 connect_iom restart the i/o, preceeded by a restore  000475 00 000414 000416 334 zero pcwa,reseek  000476 0a 000405 7100 00 335 tra check rejoin normal processing  336  000477 337 retry: bss ,1  000500 338 command: bss ,1 000501 aa 000000 0110 03 339 even  000502 340 stat: bss ,2  341 "  342  000504 aa 000000 6210 12 343 getrack: eax1 0,2 save X2  344  000505 aa 012216 7020 00 345 tsx2 mulbos get device address  000506 aa 012224 0000 20 346 arg amdvt,* did  000507 0a 000342 7100 00 347 tra addr_error 348  000510 aa 012214 7020 00 349 tsx2 bosphy convert to physical address  000511 aa 012224 0000 20 350 arg amdvt,* did  000512 0a 000342 7100 00 351 tra addr_error 352  000513 aa 012215 6260 20 353 eax6 phyadd,* point to physical address data  000514 aa 000002 4500 16 354 stz 2,6 zero record # 355  000515 aa 012213 7020 00 356 tsx2 phybos back to BOS address  000516 aa 012224 0000 20 357 arg amdvt,* did  000517 0a 000342 7100 00 358 tra addr_error 359  000520 aa 000000 6220 11 360 eax2 0,1 restore X2  000521 aa 000014 7710 00 361 arl 12 convert BOS address to sector #  000522 aa 000000 7100 12 362 tra 0,2 return  363 "  364  000523 365 channo: bss ,1  000524 366 sector: bss ,1  000525 367 last_sector:  000525 368 bss ,1 000526 aa 000000 000000 369 refmtcnt: dec 0 000527 0a 000425 003600 370 ckchrr: vfd 18/buf,12/30,6/0  000530 371 temp:  000530 372 ckchrt: bss ,1  000531 373 ti: bss ,1  000532 aa 000000 000000 374 z: dec 0  375  376 include qdisk  3-1 " 3-2 " Begin include file ..... qdisk.incl.alm  3-3 " Created 6/1/76 by Noel I. Morris  3-4 " Modified 10/31/77 by Greenberg for bulk check, time print.  3-5  3-6 " To test if disk is a Multics storage system volume:  3-7 "  3-8 " tsx2 query_disk  3-9 " arg devt  3-10 " tra error 3-11 " tra not_vol  3-12  3-13  000533 3-14 query_disk: 000533 0a 000633 7420 00 3-15 stx2 qdkx2 save X2  3-16  000534 aa 000000 2360 32 3-17 ldq 0,2* get devt 000535 0a 000666 7560 00 3-18 stq qdkdevt and save  000536 aa 000000 6350 06 3-19 eaa 0,ql test for bulk  000537 aa 000017 3750 03 3-20 ana =o17,du  000540 aa 000001 1150 03 3-21 cmpa =1,du 000541 0a 000635 6000 00 3-22 tze qdknv don't hassle it, it's bulk  3-23  000542 aa 000000 6270 06 3-24 eax7 0,ql config deck index in X7 000543 aa 777760 3670 03 3-25 anx7 =o777760,du mask it  000544 aa 6 00001 2351 17 3-26 lda com|DISK_cd.sub,7 get subsystem name  000545 0a 000667 7550 00 3-27 sta qdksubsys and save  3-28  000546 aa 000022 7720 00 3-29 qrl 18 save drive number  000547 aa 000777 3760 07 3-30 anq =o777,dl ..  000550 0a 000670 7560 00 3-31 stq qdkno ..  3-32  3-33  000551 aa 000000 2350 07 3-34 lda 0,dl label is record zero 000552 aa 012216 7020 00 3-35 tsx2 mulbos convert to BOS address  000553 0a 000666 0000 00 3-36 arg qdkdevt ..  000554 0a 000637 7100 00 3-37 tra qdkerr 3-38  000555 0a 001227 3750 00 3-39 ana =o777777770000 mask sector number  000556 0a 000671 7550 00 3-40 sta qdkadr save for next I/O  000557 0a 001230 0350 00 3-41 adla =v24/label.Multics/64,12/1 get sector with label 3-42  000560 aa 012211 7020 00 3-43 tsx2 rdev read the label  000561 0a 000666 0000 00 3-44 arg qdkdevt  000562 0a 000706 0110 00 3-45 nop qdkbuf 000563 0a 000637 7100 00 3-46 tra qdkerr 3-47  000564 aa 000000 1064 00 3-48 cmpc (),() see if Multics volume  000565 0a 000706 000040 3-49 desc9a qdkbuf+label.Multics-label.Multics/64*64,32 000566 0a 000675 000040 3-50 desc9a Multics_label,32  000567 0a 000635 6010 00 3-51 tnz qdknv if not, take not_vol return 3-52  000570 aa 012241 7020 00 3-53 tsx2 erpt print message  000571 aa 052 136 141 040 3-54 acc "^a ^d is Multics storage system volume ^A."  000572 aa 136 144 040 151 000573 aa 163 040 115 165 000574 aa 154 164 151 143 000575 aa 163 040 163 164 000576 aa 157 162 141 147 000577 aa 145 040 163 171 000600 aa 163 164 145 155 000601 aa 040 166 157 154 000602 aa 165 155 145 040 000603 aa 136 101 056 000 000604 0a 000667 0000 00 3-55 arg qdksubsys  000605 0a 000670 0000 00 3-56 arg qdkno  000606 0a 000674 0000 00 3-57 arg qdkdesc  3-58  000607 0a 000671 2350 00 3-59 lda qdkadr get last-use time  000610 0a 001231 0350 00 3-60 adla =v24/label.time_map_updated/64,12/1  3-61  000611 aa 012211 7020 00 3-62 tsx2 rdev  000612 0a 000666 0000 00 3-63 arg qdkdevt  000613 0a 000706 0110 00 3-64 nop qdkbuf 000614 0a 000637 7100 00 3-65 tra qdkerr 3-66  000615 0a 000710 2370 00 3-67 ldaq qdkbuf+label.time_map_updated-label.time_map_updated/64*64  000616 aa 012270 7020 00 3-68 tsx2 cvclock  000617 0a 000672 7570 00 3-69 staq qdktime convert the time 3-70  000620 aa 012241 7020 00 3-71 tsx2 erpt  000621 aa 034 114 141 142 3-72 acc "Label last written at ^g ^g." 000622 aa 145 154 040 154 000623 aa 141 163 164 040 000624 aa 167 162 151 164 000625 aa 164 145 156 040 000626 aa 141 164 040 136 000627 aa 147 040 136 147 000630 aa 056 000 000 000 000631 0a 000672 0000 00 3-73 arg qdktime+0  000632 0a 000673 0000 00 3-74 arg qdktime+1  3-75  3-76  000633 0a 000633 6220 00 3-77 qdkx2: eax2 * restore X2  000634 aa 000003 7100 12 3-78 tra 3,2 take is volume return 3-79  3-80  000635 0a 000633 2220 00 3-81 qdknv: ldx2 qdkx2 restore X2  000636 aa 000002 7100 12 3-82 tra 2,2 disk is not storage system volume 3-83  3-84  000637 0a 000633 2220 00 3-85 qdkerr: ldx2 qdkx2 restore X2  000640 aa 000001 7100 12 3-86 tra 1,2 take error return 3-87  3-88  3-89 " 3-90  3-91 " To ask if disk may be overwritten:  3-92 "  3-93 " tsx2 ask_disk 3-94 " tra no  3-95 "  3-96  000641 0a 000661 7420 00 3-97 ask_disk: stx2 adkx2 save X2  3-98  000642 aa 012241 7020 00 3-99 tsx2 erpt pop the question  000643 aa 037 104 157 040 3-100 acc "Do you wish to write on ^a ^d^g"  000644 aa 171 157 165 040 000645 aa 167 151 163 150 000646 aa 040 164 157 040 000647 aa 167 162 151 164 000650 aa 145 040 157 156 000651 aa 040 136 141 040 000652 aa 136 144 136 147 000653 0a 000667 0000 00 3-101 arg qdksubsys  000654 0a 000670 0000 00 3-102 arg qdkno  000655 0a 001224 0000 00 3-103 arg =h!!????  3-104  000656 aa 012247 7020 00 3-105 tsx2 readtty read the answer  000657 0a 000656 7100 00 3-106 tra *-1 ..  3-107  000660 aa 012200 7020 00 3-108 tsx2 scan scan input  3-109  000661 0a 000661 6220 00 3-110 adkx2: eax2 * restore X2  000662 aa 012040 2350 00 3-111 lda arg get answer  000663 0a 001232 1150 00 3-112 cmpa =h yes yes?  000664 aa 000001 6000 12 3-113 tze 1,2  000665 aa 000000 7100 12 3-114 tra 0,2  3-115  3-116  3-117 " 3-118  000666 3-119 qdkdevt: bss ,1 000667 3-120 qdksubsys:bss ,1  000670 3-121 qdkno: bss ,1  000671 3-122 qdkadr: bss ,1  3-123 even  000672 3-124 qdktime: bss ,2 3-125  000674 0a 000727 000040 3-126 qdkdesc: desc9a qdkbuf+label.pv_name-label.pv_name/64*64,32 3-127  000675 3-128 Multics_label:  000675 aa 115 165 154 164 3-129 aci "Multics Storage System Volume",32 000676 aa 151 143 163 040 000677 aa 123 164 157 162 000700 aa 141 147 145 040 000701 aa 123 171 163 164 000702 aa 145 155 040 126 000703 aa 157 154 165 155 000704 aa 145 040 040 040 3-130  000705 aa 000000 0110 03 3-131 even  000706 3-132 qdkbuf: bss ,64 3-133  3-134  3-135 " End of include file ...... qdisk.incl.alm 3-136  377  378 include config_cards  4-1 " 4-2 " Begin include file ...... config_cards.incl.alm  4-3 " 3/75 THVV nss 4-4 " Last modified 3/12/76 by Noel I. Morris  4-5  000001 4-6 equ ROOT_cd.sub,1  000002 4-7 equ ROOT_cd.drive,2  4-8  000001 4-9 equ PART_cd.name,1 000002 4-10 equ PART_cd.sub,2  000003 4-11 equ PART_cd.drive,3  4-12  000001 4-13 equ PRPH_cd.sub,1  000002 4-14 equ PRPH_cd.iom,2  000003 4-15 equ PRPH_cd.chn,3  000004 4-16 equ PRPH_cd.model,4  4-17  000001 4-18 equ DISK_cd.sub,1  000002 4-19 equ DISK_cd.iom,2  000003 4-20 equ DISK_cd.chn,3  000004 4-21 equ DISK_cd.nchan,4  000005 4-22 equ DISK_cd.model,5  000006 4-23 equ DISK_cd.ndrives,6  4-24  000001 4-25 equ CHNL_cd.sub,1  000002 4-26 equ CHNL_cd.iom,2  000003 4-27 equ CHNL_cd.chn,3  000004 4-28 equ CHNL_cd.nchan,4  4-29  000001 4-30 equ BULK_cd.frec,1 000002 4-31 equ BULK_cd.nrec,2 4-32  4-33 " End of include file ...... config_cards.incl.alm  4-34  379  380 " 381  382 include fs_vol_label  5-1  5-2  5-3 "BEGIN INCLUDE FILE fs_vol_label.incl.alm  5-4  5-5  5-6 "Created 03/27/82 1422.1 est Sat by convert_include_file, 5-7 " Version of 12/01/81 1540.3 est Tue.  5-8  5-9 "Made from >udd>m>bongo>htd>nsd>include>fs_vol_label.incl.pl1, 5-10 " modified 03/27/82 1421.0 est Sat  5-11  5-12 "  5-13 " Structure label  5-14 "  002000 5-15 equ label_size,1024  5-16  5-17  000000 5-18 equ label.gcos,0  000500 5-19 equ label.Multics,320  000510 5-20 equ label.version,328  000511 5-21 equ label.mfg_serial,329  000521 5-22 equ label.pv_name,337  000531 5-23 equ label.lv_name,345  000541 5-24 equ label.pvid,353 000542 5-25 equ label.lvid,354 000543 5-26 equ label.root_pvid,355  000544 5-27 equ label.time_registered,356 " DOUBLE 000546 5-28 equ label.n_pv_in_lv,358  000547 5-29 equ label.vol_size,359 000550 5-30 equ label.vtoc_size,360  5-31  000551 5-32 equ label.not_used_word,361  400000 5-33 bool label.not_used,400000 " DU  000551 5-34 equ label.private_word,361 200000 5-35 bool label.private,200000 " DU 000551 5-36 equ label.flagpad_word,361 000000 5-37 equ label.flagpad_shift,0  5-38  000552 5-39 equ label.max_access_class,362 " DOUBLE  000554 5-40 equ label.min_access_class,364 " DOUBLE  000556 5-41 equ label.password,366 " DOUBLE  000600 5-42 equ label.time_mounted,384 " DOUBLE  000602 5-43 equ label.time_map_updated,386 " DOUBLE  000604 5-44 equ label.volmap_version,388  000606 5-45 equ label.time_salvaged,390 " DOUBLE  000610 5-46 equ label.time_of_boot,392 " DOUBLE  000612 5-47 equ label.time_unmounted,394 " DOUBLE  000614 5-48 equ label.last_pvtx,396  000617 5-49 equ label.err_hist_size,399  000620 5-50 equ label.time_last_dmp,400 " DOUBLE  000626 5-51 equ label.time_last_reloaded,406 " DOUBLE  000700 5-52 equ label.root,448 " LEVEL 2  5-53  400000 5-54 bool label.here,400000 " DU  5-55  000701 5-56 equ label.root_vtocx,449  000702 5-57 equ label.shutdown_state,450  000704 5-58 equ label.disk_table_vtocx,452 000705 5-59 equ label.disk_table_uid,453  000706 5-60 equ label.esd_state,454  000707 5-61 equ label.volmap_record,455  000710 5-62 equ label.size_of_volmap,456  000711 5-63 equ label.vtoc_map_record,457  000712 5-64 equ label.size_of_vtoc_map,458 000713 5-65 equ label.volmap_unit_size,459 000714 5-66 equ label.vtoc_origin_record,460  000715 5-67 equ label.dumper_bit_map_record,461  000716 5-68 equ label.vol_trouble_count,462  001003 5-69 equ label.nparts,515  001004 5-70 equ label.parts,516 " LEVEL 2 5-71  001004 5-72 equ label.part,516 001005 5-73 equ label.frec,517 001006 5-74 equ label.nrec,518 5-75  5-76 "END INCLUDE FILE fs_vol_label.incl.alm  383  384 include fs_dev_types  6-1 " 6-2 " Begin include file ...... fs_dev_types.incl.alm  6-3 " Updated for NSS 4/75 by TVV  6-4 " Last modified 3/12/76 by Noel I. Morris  6-5 " Last modified 01/06/79 by Michael R. Jordan for MSS0500 support  6-6 " Last modified 4/79 by R.J.C. Kissel for MSU0501 support.  6-7  000001 6-8 equ bulkdevt,1 000002 6-9 equ msu0500devt,2  000003 6-10 equ msu0451devt,3  000003 6-11 equ msu0450devt,3  000004 6-12 equ msu0400devt,4  000004 6-13 equ dsu191devt,4  000005 6-14 equ dsu190devt,5  000006 6-15 equ dsu181devt,6  000007 6-16 equ msu0501devt,7  6-17  001006 6-18 fs_dev.models:  001006 aa 142 165 154 153 6-19 aci "bulk" Bulk  001007 aa 000000 000764 6-20 dec 500 MSU0500  001010 aa 000000 000703 6-21 dec 451 MSU0451  001011 aa 000000 000702 6-22 dec 450 MSU0450  001012 aa 000000 000620 6-23 dec 400 MSU0400  001013 aa 000000 000622 6-24 dec 402 MSU0402  001014 aa 000000 000277 6-25 dec 191 DSU191  001015 aa 000000 000276 6-26 dec 190 DSU190  001016 aa 000000 000265 6-27 dec 181 DSU181  001017 aa 000000 000765 6-28 dec 501 MSU0501  000012 6-29 equ fs_dev.n_models,*-fs_dev.models  6-30  001020 6-31 fs_dev.modelx:  001020 aa 000000 000001 6-32 bulk_dvt: dec 1 Bulk  001021 aa 000000 000002 6-33 dec 2 MSU0500 001022 aa 000000 000003 6-34 dec 3 MSU0451 001023 aa 000000 000003 6-35 dec 3 MSU0450 001024 aa 000000 000004 6-36 dec 4 MSU0400 001025 aa 000000 000004 6-37 dec 4 MSU0402 001026 aa 000000 000004 6-38 dec 4 DSU191  001027 aa 000000 000005 6-39 dec 5 DSU190  001030 aa 000000 000006 6-40 dec 6 DSU181  001031 aa 000000 000007 6-41 dec 7 MSU0501 6-42  000007 6-43 equ fs_dev.max_dev_type,7  6-44  001032 6-45 fs_dev.dev_type_names:  001032 aa 142 165 154 153 6-46 aci "bulk" 001033 aa 144 065 060 060 6-47 aci "d500" 001034 aa 144 064 065 061 6-48 aci "d451" 001035 aa 144 064 060 060 6-49 aci "d400" 001036 aa 144 061 071 060 6-50 aci "d190" 001037 aa 144 061 070 061 6-51 aci "d181" 001040 aa 144 065 060 061 6-52 aci "d501" 6-53  001041 6-54 fs_dev.media_removable: 001041 aa 000000 000000 6-55 oct 0 Bulk  001042 aa 000000 000000 6-56 oct 0 MSU0500 001043 aa 400000 000000 6-57 oct 400000000000 MSU0451  001044 aa 400000 000000 6-58 oct 400000000000 MSU0400  001045 aa 400000 000000 6-59 oct 400000000000 DSU190  001046 aa 400000 000000 6-60 oct 400000000000 DSU181  001047 aa 000000 000000 6-61 oct 0 MSU0501 6-62  6-63 " Following data items are hardware constants  6-64  001050 6-65 fs_dev.sect_per_dev:  001050 aa 000017 204400 6-66 vfd 36/4000000 Bulk  001051 aa 000002 270220 6-67 vfd 36/814*40*19 MSU0500  001052 aa 000002 270220 6-68 vfd 36/814*40*19 MSU0450  001053 aa 000001 140460 6-69 vfd 36/410*40*19 MSU0400  001054 aa 000000 727522 6-70 vfd 36/410*31*19 DSU190  001055 aa 000000 216020 6-71 vfd 36/202*18*20 DSU181  001056 aa 000004 064000 6-72 vfd 36/840*64*20 MSU0501  6-73  001057 6-74 fs_dev.track_per_cyl:  001057 aa 000000 000001 6-75 vfd 36/1 Bulk 001060 aa 000000 000023 6-76 vfd 36/19 MSU0500 001061 aa 000000 000023 6-77 vfd 36/19 MSU0450 001062 aa 000000 000023 6-78 vfd 36/19 MSU0400 001063 aa 000000 000023 6-79 vfd 36/19 DSU190  001064 aa 000000 000024 6-80 vfd 36/20 DSU181  001065 aa 000000 000024 6-81 vfd 36/20 MSU0501 6-82  001066 6-83 fs_dev.cyl_per_dev: 001066 aa 000000 000000 6-84 vfd 36/0 Bulk 001067 aa 000000 001456 6-85 vfd 36/814 MSU0500  001070 aa 000000 001456 6-86 vfd 36/814 MSU0450  001071 aa 000000 000632 6-87 vfd 36/410 MSU0400  001072 aa 000000 000632 6-88 vfd 36/410 DSU190 001073 aa 000000 000312 6-89 vfd 36/202 DSU181 001074 aa 000000 001510 6-90 vfd 36/840 MSU0501  6-91  001075 6-92 fs_dev.sect_per_cyl:  001075 aa 000017 204400 6-93 vfd 36/4000000 Bulk  001076 aa 000000 001370 6-94 vfd 36/40*19 MSU0500  001077 aa 000000 001370 6-95 vfd 36/40*19 MSU0450  001100 aa 000000 001370 6-96 vfd 36/40*19 MSU0400  001101 aa 000000 001115 6-97 vfd 36/31*19 DSU190  001102 aa 000000 000550 6-98 vfd 36/18*20 DSU181  001103 aa 000000 002400 6-99 vfd 36/64*20 MSU0501  6-100  001104 6-101 fs_dev.sect_per_track:  001104 aa 000000 000001 6-102 vfd 36/1 Bulk 001105 aa 000000 000050 6-103 vfd 36/40 MSU0500 001106 aa 000000 000050 6-104 vfd 36/40 MSU0450 001107 aa 000000 000050 6-105 vfd 36/40 MSU0400 001110 aa 000000 000037 6-106 vfd 36/31 DSU190  001111 aa 000000 000022 6-107 vfd 36/18 DSU181  001112 aa 000000 000100 6-108 vfd 36/64 MSU0501 6-109  6-110 " The following figures depend on the Multics conventional definition of "record"  6-111 " A record consists of sectors with consecutive addresses ON THE SAME CYLINDER. 6-112 " This means that there can be a "gap" at the end of each cylinder (i.e., sectors in no record).  6-113  001113 6-114 fs_dev.mult_sect_per_cyl:  001113 aa 000000 100000 6-115 vfd 36/2048*16 Bulk  001114 aa 000000 001360 6-116 vfd 36/40*19/16*16 MSU0500 001115 aa 000000 001360 6-117 vfd 36/40*19/16*16 MSU0450 001116 aa 000000 001360 6-118 vfd 36/40*19/16*16 MSU0400 001117 aa 000000 001100 6-119 vfd 36/31*19/16*16 DSU190  001120 aa 000000 000540 6-120 vfd 36/18*20/16*16 DSU181  001121 aa 000000 002400 6-121 vfd 36/64*20/16*16 MSU0501 6-122  001122 6-123 fs_dev.rem_per_cyl: " Size of gap  001122 aa 000000 000000 6-124 vfd 36/0 Bulk  001123 aa 000000 000010 6-125 vfd 36/(40*19)-(40*19/16*16) MSU0500  001124 aa 000000 000010 6-126 vfd 36/(40*19)-(40*19/16*16) MSU0450  001125 aa 000000 000010 6-127 vfd 36/(40*19)-(40*19/16*16) MSU0400  001126 aa 000000 000015 6-128 vfd 36/(31*19)-(31*19/16*16) DSU190  001127 aa 000000 000010 6-129 vfd 36/(18*20)-(18*20/16*16) DSU181  001130 aa 000000 000000 6-130 vfd 36/(64*20)-(64*20/16*16) MSU0501  6-131  001131 6-132 fs_dev.rec_per_dev: 001131 aa 000000 004000 6-133 vfd 36/2048 Bulk 2048.  001132 aa 000000 112562 6-134 vfd 36/(19*40/16)*814 MSU0500 38258.  001133 aa 000000 112562 6-135 vfd 36/(19*40/16)*814 MSU0450 38258.  001134 aa 000000 045506 6-136 vfd 36/(19*40/16)*410 MSU0400 19270.  001135 aa 000000 034650 6-137 vfd 36/(19*31/16)*410 DSU190 14760.  001136 aa 000000 010534 6-138 vfd 36/(18*20/16)*202 DSU181 4444.  001137 aa 000000 203200 6-139 vfd 36/(20*64/16)*840 MSU0501 67200.  6-140  001140 6-141 fs_dev.amaxio:  001140 aa 000000 004000 6-142 vfd 36/2048 For bulk store.  001141 aa 000000 000057 6-143 vfd 36/40*19/16 MSU0500  001142 aa 000000 000057 6-144 vfd 36/40*19/16 MSU0450  001143 aa 000000 000057 6-145 vfd 36/40*19/16 MSU0400  001144 aa 000000 000044 6-146 vfd 36/31*19/16 DSU190 001145 aa 000000 000026 6-147 vfd 36/18*20/16 DSU181 001146 aa 000000 000120 6-148 vfd 36/64*20/16 MSU0501  6-149  6-150 " End of include file ...... fs_dev_types.incl.alm  6-151  385  386 include bos_tv 7-1 " 7-2 " Begin include file ...... bos_tv.incl.alm 7-3 " Created in November 1971 by N. I. Morris. 7-4 " Modified 9/9/76 by Noel I. Morris 7-5 " Modified by Sherman D. Sprague 02/11/81 for DPS8 support. 7-6 " Modified November 1981 by C. Hornig to remove iom_connect_rel.  7-7 " Modified January 1982 by J. Bongiovanni to add getport_info  7-8 " Modified May 1982 by Sherman D. Sprague to add getmpc.  7-9  7-10 " BOS Utility Package Transfer Vector.  7-11  012000 7-12 equ pagectl,utilorg  012001 7-13 equ line,pagectl+1 012040 7-14 equ arg,line+31  012060 7-15 equ darg,arg+arglen+1  012100 7-16 equ earg,darg+arglen+1 012120 7-17 equ fltscu,earg+arglen+1  7-18  012200 7-19 equ tv_org,utilorg+128 7-20  012200 7-21 equ scan,tv_org+0  012201 7-22 equ arg_count,tv_org+1 012202 7-23 equ nextline,tv_org+2  012203 7-24 equ nlraw,tv_org+3 012204 7-25 equ search,tv_org+4  012205 7-26 equ makefil,tv_org+5  012206 7-27 equ ldcom,tv_org+6 012207 7-28 equ getsec,tv_org+7  012210 7-29 equ cvinit,tv_org+8  012211 7-30 equ rdev,tv_org+9  012212 7-31 equ wdev,tv_org+10 012213 7-32 equ phybos,tv_org+11  012214 7-33 equ bosphy,tv_org+12  012215 7-34 equ phyadd,tv_org+13  012216 7-35 equ mulbos,tv_org+14  012217 7-36 equ bosmul,tv_org+15  012220 7-37 equ lookup_devmodel,tv_org+16  012221 7-38 equ makesdw,tv_org+17  012222 7-39 equ argbos,tv_org+18  012223 7-40 equ argmul,tv_org+19  012224 7-41 equ amdvt,tv_org+20  012225 7-42 equ amfirst,tv_org+21  012226 7-43 equ amlast,tv_org+22  012227 7-44 equ cvnamla,tv_org+23  012230 7-45 equ sect_per_cyl_list,tv_org+24  012231 7-46 equ sect_per_dev_list,tv_org+25  012232 7-47 equ rec_per_dev_list,tv_org+26 012233 7-48 equ amaxio,tv_org+27  012234 7-49 equ rdsec,tv_org+28  012235 7-50 equ wtsec,tv_org+29  012236 7-51 equ disk_brief,tv_org+30  012237 7-52 equ itaper,tv_org+31  012240 7-53 equ itapew,tv_org+32  012241 7-54 equ erpt,tv_org+33 012242 7-55 equ ercv,tv_org+34 012243 7-56 equ erbuf,tv_org+35  012244 7-57 equ type,tv_org+36 012245 7-58 equ ttyinit,tv_org+37  012246 7-59 equ readcd,tv_org+38  012247 7-60 equ readtty,tv_org+39  012250 7-61 equ getprt,tv_org+40  012251 7-62 equ punch,tv_org+41  012252 7-63 equ octwd,tv_org+42  012253 7-64 equ geas,tv_org+43 012254 7-65 equ geastab,tv_org+44  012255 7-66 equ asge,tv_org+45 012256 7-67 equ asgetab,tv_org+46  012257 7-68 equ ljust,tv_org+47  012260 7-69 equ rjust,tv_org+48  012261 7-70 equ bzel,tv_org+49 012262 7-71 equ stripa,tv_org+50  012263 7-72 equ stripg,tv_org+51  012264 7-73 equ getconf,tv_org+52  012265 7-74 equ getmore,tv_org+53  012266 7-75 equ getperiph,tv_org+54  012267 7-76 equ rdclock,tv_org+55  012270 7-77 equ cvclock,tv_org+56  012271 7-78 equ init_io,tv_org+57  012272 7-79 equ connect_iom,tv_org+58  012273 7-80 equ getmpc,tv_org+59  012274 7-81 equ check_status,tv_org+60 012275 7-82 equ get_special_interrupt,tv_org+61  012276 7-83 equ get_status_interrupt,tv_org+62 012277 7-84 equ xio_wait,tv_org+63 012300 7-85 equ initint,tv_org+64  012301 7-86 equ wantflt,tv_org+65  012302 7-87 equ intno,tv_org+66  012303 7-88 equ intrpts1,tv_org+67 012304 7-89 equ hexwd,tv_org+68  012305 7-90 equ find_disk,tv_org+69  012306 7-91 equ find_root,tv_org+70  012307 7-92 equ find_part,tv_org+71  012310 7-93 equ check_status_no_stat,tv_org+72 012311 7-94 equ check_special_status,tv_org+73 012312 7-95 equ check_cpu_type,tv_org+74  012313 7-96 equ getportinfo,tv_org+75  7-97  7-98 " End of include file ...... bos_tv.incl.alm  7-99  387  388 include bos_common 8-1 "  8-2 " Begin include file ...... bos_common.incl.alm 8-3 " Modified on 8/31/76 by N. I. Morris  8-4 " Modified on 9/01/80 by Sherman D. Sprague for DPS8 operation  8-5 " Modified on 5/26/82 by Sherman D. Sprague to lengthen config size 8-6 " Modified on 3/01/83 by Sherman D. Sprague to lengthen dirlen  8-7 " MACHINE CONDITIONS AREA  8-8 " Its length is "storlen". 8-9  000000 8-10 equ amptwregs,0 Ass. Mem PTW registers  000100 8-11 equ amptwptr,64 Ass. Mem PTW pointers 000200 8-12 equ amsdwregs,128 Ass. Mem SDW registers  000400 8-13 equ amsdwptr,256 Ass. Mem SDW pointers  000500 8-14 equ ouhist,320 operations hist regs  000700 8-15 equ cuhist,448 control unit hist regs  001100 8-16 equ eishist,576 eis hist regs  001300 8-17 equ aphist,704 appending unit hist regs  001500 8-18 equ prs,832 pointer regs  001520 8-19 equ regs,848 sreg 001530 8-20 equ low_order_port,856 port to read clock from 001532 8-21 equ mctime,858 bootload memory clock  001540 8-22 equ scu,864  001550 8-23 equ mcm,872 memory masks 8 ports 001570 8-24 equ dbr,888  001572 8-25 equ intrpts,890 waiting interrupts 001573 8-26 equ bar,891 bar  001574 8-27 equ modereg,892 processor & cache mode registers  001576 8-28 equ faultreg,894 processor fault register  001600 8-29 equ ptrlen,896 pointer-lengths EIS 0 mod 8 001610 8-30 equ coreblocks,904 array of port information  8-31 " Bits 0-17 => num 1st 64-word block  8-32 " Bits 18-35 => num of 64-word blocks  8-33 " (-1) => no mem on this port  001620 8-34 equ lowport_cfg,912 Saved CFG from bootload SCU  8-35  002000 8-36 equ storlen,1024  8-37  8-38  8-39  8-40 " BOS COMMAND DIRECTORY 8-41 " Its length is "dirlen".  8-42  002000 8-43 equ dir,1024 ( 0-23) => sector # of first sector on BOS disk  8-44 " (24-35) => # of sectors in BOS common  002001 8-45 equ used,dir+1 ( 0-23) => # of next available sector on BOS disk  002002 8-46 equ useable,dir+2 ( 0-23) => first unavailable sector on BOS disk  002003 8-47 equ corearea,dir+3 ( 0-23) => starting sector of Multics core image  8-48 " (24-35) => # of sectors in Multics core image  002004 8-49 equ setuparea,dir+4 Sector and length of setup 002005 8-50 equ utilarea,dir+5 where utility package is kept  002010 8-51 equ iom_mxbase,dir+8 IOM IMW area address  002011 8-52 equ iom_mbbase,dir+9 IOM mailbox base  002012 8-53 equ bos_dvt,dir+10 BOS disk loc: (o3/iom,o6/chn,o9/drive,o18/devtype)  002013 8-54 equ unitgroup,dir+11 disk unitgroup (device no. or area no.)  002014 8-55 equ diskchanno,dir+12 channel to be used for disk  002015 8-56 equ tapechanno,dir+13 channel # for tapes  002016 8-57 equ rdrchanno,dir+14 channel number for card reader  002017 8-58 equ ttychanno,dir+15 channel # for operator's tty  002020 8-59 equ quietsw,dir+16 if on, don't print card and macro commands  002021 8-60 equ inputsw,dir+17 read from tty, cards, macros  002022 8-61 equ macroloc,dir+18 disk addr, buffer index of macro file  002023 8-62 equ fdump_state,dir+19 completion flag for last FDUMP  002024 8-63 equ d355_state,dir+20 = 1 if DataNet 355 loaded successfully  002025 8-64 equ skipsw,dir+21 if on, skip runcom lines 002026 8-65 equ ttypmtsw,dir+22 if on, prompt  002027 8-66 equ curtcmd,dir+23 current bos command 002030 8-67 equ readysw,dir+24 if on, print ready message  002032 8-68 equ cmdlst,dir+26 list of commands 8-69  000600 8-70 equ dirlen,384 8-71  8-72  8-73  8-74 " MACRO BUFFER AREA 8-75  002600 8-76 equ macrobuf,dir+dirlen io buffer for macro files 002700 8-77 equ macroline,macrobuf+64 runcom command line 002716 8-78 equ macroargs,macroline+14 argument descriptors for runcom  8-79  8-80  8-81  8-82 " CONFIGURATION CARD AREA  8-83 " Its length is 2048 words.  8-84  003000 8-85 equ conf,macrobuf+128 start of configuration info  007000 8-86 equ econf,conf+2048 end of configuration info  000020 8-87 equ confl,16 length of each line  8-88  8-89  007000 8-90 equ seg6length,econf length of bos_common area segment 8-91  8-92 " End of include file ...... bos_common.incl.alm  8-93  389 end  LITERALS 001220 aa 777777 777777 001221 aa 242526 252363 001222 aa 202343 252151 001223 aa 202330 252342 001224 aa 777717 171717 001225 aa 702562 202020 001226 aa 454620 202020 001227 aa 777777 770000 001230 aa 000000 050001 001231 aa 000000 060001 001232 aa 202020 702562 NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 001233 5a 000003 000000 001234 5a 000016 600000 001235 aa 000000 000000 001236 55 000007 000002 001237 5a 000002 400003 001240 55 000006 000007 001241 aa 003 146 155 164 001242 55 000002 000003 001243 6a 000000 400002 001244 55 000012 000003 001245 aa 014 163 171 155 symbol_table  001246 aa 142 157 154 137 001247 aa 164 141 142 154 001250 aa 145 000 000 000 DEFINITIONS HASH TABLE  001251 aa 000000 000015 001252 aa 000000 000000 001253 aa 000000 000000 001254 aa 000000 000000 001255 aa 000000 000000 001256 aa 000000 000000 001257 aa 000000 000000 001260 5a 000007 000000 001261 aa 000000 000000 001262 aa 000000 000000 001263 aa 000000 000000 001264 aa 000000 000000 001265 aa 000000 000000 001266 aa 000000 000000 NO EXTERNAL NAMES  NO TRAP POINTER WORDS  TYPE PAIR BLOCKS  001267 aa 000001 000000 001270 aa 000000 000000 INTERNAL EXPRESSION WORDS 001271 aa 000000 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 001233 000000 000002 aa 000000 000000 000003 aa 000000 000000 000004 aa 000000 000000 000005 aa 000000 000000 000006 22 000010 000010 000007 a2 000000 000000 SYMBOL INFORMATION SYMBOL TABLE HEADER  000000 aa 000000 000001 000001 aa 163171 155142 000002 aa 164162 145145 000003 aa 000000 000004 000004 aa 000000 112143 000005 aa 305203 523135 000006 aa 000000 112272 000007 aa 234024 005126 000010 aa 141154 155040 000011 aa 040040 040040 000012 aa 000024 000040 000013 aa 000034 000040 000014 aa 000044 000100 000015 aa 000020 000002 000016 aa 000064 000000 000017 aa 000000 000357 000020 aa 000000 000244 000021 aa 000000 000340 000022 aa 000343 000244 000023 aa 000064 000000 000024 aa 101114 115040 000025 aa 126145 162163 000026 aa 151157 156040 000027 aa 040066 056066 000030 aa 040040 116157 000031 aa 166145 155142 000032 aa 145162 040061 000033 aa 071070 062040 000034 aa 110157 154155 000035 aa 163164 145144 000036 aa 164056 123171 000037 aa 163115 141151 000040 aa 156164 056141 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 154151 163164 000045 aa 040040 040040 000046 aa 040040 040040 000047 aa 040040 040040 000050 aa 040040 040040 000051 aa 040040 040040 000052 aa 040040 040040 000053 aa 040040 040040 000054 aa 040040 040040 000055 aa 040040 040040 000056 aa 040040 040040 000057 aa 040040 040040 000060 aa 040040 040040 000061 aa 040040 040040 000062 aa 040040 040040 000063 aa 040040 040040 000064 aa 000000 000001 000065 aa 000000 000011 000066 aa 000132 000024 000067 aa 122721 273204 000070 aa 000000 112272 000071 aa 216360 600000 000072 aa 000137 000040 000073 aa 113400 415301 000074 aa 000000 111341 000075 aa 220414 400000 000076 aa 000147 000037 000077 aa 122721 272761 000100 aa 000000 112272 000101 aa 214176 200000 000102 aa 000157 000037 000103 aa 047371 352103 000104 aa 000000 104737 000105 aa 511571 200000 000106 aa 000167 000046 000107 aa 043243 125746 000110 aa 000000 103534 000111 aa 053307 400000 000112 aa 000201 000042 000113 aa 110044 377556 000114 aa 000000 111005 000115 aa 417043 600000 000116 aa 000212 000042 000117 aa 077023 320156 000120 aa 000000 107705 000121 aa 376652 600000 000122 aa 000223 000040 000123 aa 110235 072677 000124 aa 000000 111024 000125 aa 524460 600000 000126 aa 000233 000044 000127 aa 121622 277475 000130 aa 000000 112162 000131 aa 321563 400000 000132 aa 076163 160145 >spec>h>3.17>fmt.alm  000133 aa 143076 150076 000134 aa 063056 061067 000135 aa 076146 155164 000136 aa 056141 154155 000137 aa 076154 144144 >ldd>bos>include>bosequ.incl.alm  000140 aa 076142 157163 000141 aa 076151 156143 000142 aa 154165 144145 000143 aa 076142 157163 000144 aa 145161 165056 000145 aa 151156 143154 000146 aa 056141 154155 000147 aa 076163 160145 >spec>h>3.17>bos_toequ.incl.alm 000150 aa 143076 150076 000151 aa 063056 061067 000152 aa 076142 157163 000153 aa 137164 157145 000154 aa 161165 056151 000155 aa 156143 154056 000156 aa 141154 155040 000157 aa 076154 144144 >ldd>bos>include>qdisk.incl.alm 000160 aa 076142 157163 000161 aa 076151 156143 000162 aa 154165 144145 000163 aa 076161 144151 000164 aa 163153 056151 000165 aa 156143 154056 000166 aa 141154 155040 000167 aa 076154 144144 >ldd>bos>include>config_cards.incl.alm  000170 aa 076142 157163 000171 aa 076151 156143 000172 aa 154165 144145 000173 aa 076143 157156 000174 aa 146151 147137 000175 aa 143141 162144 000176 aa 163056 151156 000177 aa 143154 056141 000200 aa 154155 040040 000201 aa 076154 144144 >ldd>include>fs_vol_label.incl.alm  000202 aa 076151 156143 000203 aa 154165 144145 000204 aa 076146 163137 000205 aa 166157 154137 000206 aa 154141 142145 000207 aa 154056 151156 000210 aa 143154 056141 000211 aa 154155 040040 000212 aa 076154 144144 >ldd>include>fs_dev_types.incl.alm  000213 aa 076151 156143 000214 aa 154165 144145 000215 aa 076146 163137 000216 aa 144145 166137 000217 aa 164171 160145 000220 aa 163056 151156 000221 aa 143154 056141 000222 aa 154155 040040 000223 aa 076154 144144 >ldd>bos>include>bos_tv.incl.alm  000224 aa 076142 157163 000225 aa 076151 156143 000226 aa 154165 144145 000227 aa 076142 157163 000230 aa 137164 166056 000231 aa 151156 143154 000232 aa 056141 154155 000233 aa 076154 144144 >ldd>bos>include>bos_common.incl.alm  000234 aa 076142 157163 000235 aa 076151 156143 000236 aa 154165 144145 000237 aa 076142 157163 000240 aa 137143 157155 000241 aa 155157 156056 000242 aa 151156 143154 000243 aa 056141 154155 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number  20 absi bos_toequ: 75. 342 addr_error fmt: 149, 235, 257, 347, 351, 358.  661 adkx2 qdisk: 97, 110.  12233 amaxio bos_tv: 48. 12224 amdvt fmt: 49, 104, 124, 148, 234, 346, 350, 357,  bos_tv: 41. 12225 amfirst fmt: 58, bos_tv: 42. 12226 amlast fmt: 62, bos_tv: 43. 100 amptwptr bos_common: 11. 0 amptwregs bos_common: 10. 400 amsdwptr bos_common: 13. 200 amsdwregs bos_common: 12. 1300 aphist bos_common: 17. 12040 arg fmt: 71, 93,  qdisk: 111, bos_tv: 14, 15.  12222 argbos bos_tv: 39. 63 argcheck fmt: 80, 84.  57 argclear fmt: 75, 79.  71 argerror fmt: 85, 91.  17 arglen bosequ: 17, bos_tv: 15, 16, 17. 47 argloop fmt: 70, 77, 82, 89.  50 arglp1 fmt: 66, 71.  12223 argmul fmt: 46, bos_tv: 40. 12201 arg_count bos_tv: 22. 12255 asge bos_tv: 66. 12256 asgetab bos_tv: 67. 102 ask fmt: 73, 102, 119. 113 ask1 fmt: 105, 106, 113. 641 ask_disk fmt: 109, qdisk: 97. 235 badtrk fmt: 183, 189, 255. 1573 bar bos_common: 26. 2 bf bosequ: 9. 12217 bosmul bos_tv: 36. 12214 bosphy fmt: 147, 349,  bos_tv: 33. 1200 bos_dbr bos_toequ: 95. 2012 bos_dvt bos_common: 53. 1160 bos_pr bos_toequ: 82. 425 buf fmt: 161, 170, 172, 173, 176, 199, 204, 207, 213, 217, 218, 226,  298, 303, 370. 1 bulkdevt fs_dev_types: 8.  1 BULK_cd.frec config_cards: 30.  2 BULK_cd.nrec config_cards: 31.  1020 bulk_dvt fs_dev_types: 32.  12261 bzel bos_tv: 70. 523 channo fmt: 127, 138, 281, 365.  405 check fmt: 280, 335.  77 checksw fmt: 86, 96, 153, 164.  12312 check_cpu_type bos_tv: 95. 12311 check_special_status bos_tv: 94. 12274 check_status fmt: 137, 280,  bos_tv: 81. 12310 check_status_no_stat bos_tv: 93. 277 chksum fmt: 209, 220.  3 CHNL_cd.chn config_cards: 27.  2 CHNL_cd.iom config_cards: 26.  4 CHNL_cd.nchan config_cards: 28.  1 CHNL_cd.sub config_cards: 25.  527 ckchrr fmt: 220, 370.  530 ckchrt fmt: 221, 223, 372. 222 clearchk fmt: 163, 182.  100 clearsw fmt: 81, 97, 155, 182.  2032 cmdlst bos_common: 68. 411 cnx2 fmt: 270, 285, 316. 6 com bosequ: 14, qdisk: 26. 500 command fmt: 276, 321, 338. 3000 conf bos_common: 85, 86.  20 confl bos_common: 87. 374 connect fmt: 158, 228, 270. 12272 connect_iom fmt: 135, 277, 333, bos_tv: 79. 2003 corearea bos_common: 47. 1610 coreblocks bos_common: 30. 60000 coresaved bos_toequ: 43, 65.  1 cow bos_toequ: 127. 1000 cowsav bos_toequ: 142. 700 cuhist bos_common: 15. 2027 curtcmd bos_common: 66. 12270 cvclock qdisk: 68, bos_tv: 77. 12210 cvinit bos_tv: 29. 12227 cvnamla bos_tv: 44. 156 cycle fmt: 143, 239.  2024 d355_state bos_common: 63. 12060 darg bos_tv: 15, 16.  1570 dbr bos_common: 24. 417 dcw fmt: 131, 132, 274, 278, 295. 101 defectsw fmt: 76, 98, 151. 576 devid bos_toequ: 140. 2000 dir bos_common: 43, 45, 46, 47, 49, 50, 51, 52, 53, 54, 55, 56,  57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 76. 1003 dirbase bos_toequ: 145. 600 dirlen bos_common: 70, 76.  2014 diskchanno bos_common: 55. 12236 disk_brief fmt: 102, 107, 113, bos_tv: 51. 3 DISK_cd.chn config_cards: 20.  2 DISK_cd.iom config_cards: 19.  5 DISK_cd.model config_cards: 22.  4 DISK_cd.nchan config_cards: 21.  6 DISK_cd.ndrives config_cards: 23.  1 DISK_cd.sub qdisk: 26, config_cards: 18.  17 disk_format fmt: 25, 229.  27 disk_read_track_header fmt: 27, 159.  42 disk_restore fmt: 26, 293, 300. 34 disk_seek fmt: 24, 295.  0 ds bosequ: 7. 1200 dseg bos_toequ: 96. 6 dsu181devt fs_dev_types: 15.  5 dsu190devt fs_dev_types: 14.  4 dsu191devt fs_dev_types: 13.  12100 earg bos_tv: 16, 17.  7000 econf bos_common: 86, 90.  1100 eishist bos_common: 16. 12243 erbuf bos_tv: 56. 12242 ercv bos_tv: 55. 12241 erpt fmt: 53, 91, 114, 184, 189, 243, 258, 262, 265, 319,  qdisk: 53, 71, 99, bos_tv: 54. 445 err_ask fmt: 312, 315, 319. 1576 faultreg bos_common: 28. 2023 fdump_state bos_common: 62. 5 fgb bosequ: 13. 12305 find_disk bos_tv: 90. 12307 find_part bos_tv: 92. 12306 find_root bos_tv: 91. 2000 firmware_bit bosequ: 20. 12120 fltscu bos_tv: 17. 246 fmtbad fmt: 152, 192.  40 fmtcont fmt: 52, 57.  252 fmtgood fmt: 156, 165, 180, 187, 197. 337 fmt_alert fmt: 230, 252.  1140 fs_dev.amaxio fs_dev_types: 141.  1066 fs_dev.cyl_per_dev fs_dev_types: 83.  1032 fs_dev.dev_type_names fs_dev_types: 45.  7 fs_dev.max_dev_type fs_dev_types: 43.  1041 fs_dev.media_removable fmt: 51, fs_dev_types: 54.  1006 fs_dev.models fs_dev_types: 18, 29. 1020 fs_dev.modelx fs_dev_types: 31.  1113 fs_dev.mult_sect_per_cyl fs_dev_types: 114. 12 fs_dev.n_models fs_dev_types: 29.  1131 fs_dev.rec_per_dev fs_dev_types: 132.  1122 fs_dev.rem_per_cyl fs_dev_types: 123.  1075 fs_dev.sect_per_cyl fs_dev_types: 92.  1050 fs_dev.sect_per_dev fs_dev_types: 65.  1104 fs_dev.sect_per_track fs_dev_types: 101.  1057 fs_dev.track_per_cyl fs_dev_types: 74.  12253 geas bos_tv: 64. 12254 geastab bos_tv: 65. 12264 getconf bos_tv: 73. 12265 getmore bos_tv: 74. 12273 getmpc bos_tv: 80. 12266 getperiph bos_tv: 75. 12313 getportinfo bos_tv: 96. 12250 getprt bos_tv: 61. 504 getrack fmt: 59, 63, 343. 12207 getsec bos_tv: 28. 12275 get_special_interrupt bos_tv: 82. 12276 get_status_interrupt bos_tv: 83. 12304 hexwd bos_tv: 89. 1400 imbx bos_toequ: 67. 12300 initint bos_tv: 85. 12271 init_io fmt: 32, bos_tv: 78. 2021 inputsw bos_common: 60. 12302 intno bos_tv: 87. 1572 intrpts bos_common: 25. 12303 intrpts1 bos_tv: 88. 2011 iom_mbbase bos_common: 52. 2010 iom_mxbase bos_common: 51. 432 io_error fmt: 283, 306.  12237 itaper bos_tv: 52. 12240 itapew bos_tv: 53. 705 label.disk_table_uid fs_vol_label: 59.  704 label.disk_table_vtocx fs_vol_label: 58.  715 label.dumper_bit_map_record fs_vol_label: 67. 617 label.err_hist_size fs_vol_label: 49.  706 label.esd_state fs_vol_label: 60.  0 label.flagpad_shift fs_vol_label: 37.  551 label.flagpad_word fs_vol_label: 36.  1005 label.frec fs_vol_label: 73.  0 label.gcos fs_vol_label: 18.  400000 label.here fs_vol_label: 54.  614 label.last_pvtx fs_vol_label: 48.  542 label.lvid fs_vol_label: 25.  531 label.lv_name fs_vol_label: 23.  552 label.max_access_class fs_vol_label: 39.  511 label.mfg_serial fs_vol_label: 21.  554 label.min_access_class fs_vol_label: 40.  500 label.Multics qdisk: 41, 49,  fs_vol_label: 19.  400000 label.not_used fs_vol_label: 33.  551 label.not_used_word fs_vol_label: 32.  1003 label.nparts fs_vol_label: 69.  1006 label.nrec fs_vol_label: 74.  546 label.n_pv_in_lv fs_vol_label: 28.  1004 label.part fs_vol_label: 72.  1004 label.parts fs_vol_label: 70.  556 label.password fs_vol_label: 41.  200000 label.private fs_vol_label: 35.  551 label.private_word fs_vol_label: 34.  541 label.pvid fs_vol_label: 24.  521 label.pv_name qdisk: 126, fs_vol_label: 22.  700 label.root fs_vol_label: 52.  543 label.root_pvid fs_vol_label: 26.  701 label.root_vtocx fs_vol_label: 56.  702 label.shutdown_state fs_vol_label: 57.  710 label.size_of_volmap fs_vol_label: 62.  712 label.size_of_vtoc_map fs_vol_label: 64.  620 label.time_last_dmp fs_vol_label: 50.  626 label.time_last_reloaded fs_vol_label: 51. 602 label.time_map_updated qdisk: 60, 67,  fs_vol_label: 43.  600 label.time_mounted fs_vol_label: 42.  610 label.time_of_boot fs_vol_label: 46.  544 label.time_registered fs_vol_label: 27.  606 label.time_salvaged fs_vol_label: 45.  612 label.time_unmounted fs_vol_label: 47.  510 label.version fs_vol_label: 20.  707 label.volmap_record fs_vol_label: 61.  713 label.volmap_unit_size fs_vol_label: 65.  604 label.volmap_version fs_vol_label: 44.  547 label.vol_size fs_vol_label: 29.  716 label.vol_trouble_count fs_vol_label: 68.  711 label.vtoc_map_record fs_vol_label: 63.  714 label.vtoc_origin_record fs_vol_label: 66. 550 label.vtoc_size fs_vol_label: 30.  2000 label_size fs_vol_label: 15.  525 last_sector fmt: 64, 238, 367. 12206 ldcom bos_tv: 27. 12001 line fmt: 41, 120, 329, bos_tv: 13, 14.  12257 ljust bos_tv: 68. 2000 lnbf bos_toequ: 57, 61, 104. 7000 lncom bos_toequ: 60, 63, 116, 136.  40 lnds bos_toequ: 54, 55, 98. 100 lnflagbox bos_toequ: 52, 113.  777777 lnmem bos_toequ: 45, 119.  27000 lnpgm bos_toequ: 65, 101.  10000 lnsetup bos_toequ: 48, 58, 107. 12220 lookup_devmodel bos_tv: 37. 1620 lowport_cfg bos_common: 34. 1530 low_order_port bos_common: 20. 11 lpwr bos_toequ: 128. 2716 macroargs bos_common: 78. 2600 macrobuf bos_common: 76, 77, 85. 2700 macroline bos_common: 77, 78.  2022 macroloc bos_common: 61. 0 mainc fmt: 21, 22.  12205 makefil bos_tv: 26. 12221 makesdw bos_tv: 38. 10000 maxw bos_toequ: 72. 1001 mbbasesav bos_toequ: 143. 575 mbxloc bos_toequ: 139. 1550 mcm bos_common: 23. 1532 mctime bos_common: 21. 7 mem fmt: 37, 40, 250, bosequ: 15. 1574 modereg bos_common: 27. 4 msu0400devt fs_dev_types: 12.  3 msu0450devt fs_dev_types: 11.  3 msu0451devt fs_dev_types: 10.  2 msu0500devt fs_dev_types: 9.  7 msu0501devt fs_dev_types: 16.  12216 mulbos fmt: 345, qdisk: 35, bos_tv: 35. 675 Multics_label qdisk: 50, 128.  1002 mxbasesav bos_toequ: 144. 311 next fmt: 177, 232, 254. 12202 nextline bos_tv: 23. 12203 nlraw bos_tv: 24. 12252 octwd bos_tv: 63. 20000 origbf bos_toequ: 58, 61, 103. 22000 origcom bos_toequ: 61, 63, 115, 136.  7740 origds bos_toequ: 55, 97.  10020 origflagbox bos_toequ: 51, 112.  0 origmem bos_toequ: 46, 118.  31000 origpgm bos_toequ: 63, 64, 65, 100.  10000 origsetup bos_toequ: 49, 51, 55, 58, 106. 500 ouhist bos_common: 14. 4000 ovflm bos_toequ: 76. 12000 pagectl bos_tv: 12, 13.  3 PART_cd.drive config_cards: 11.  1 PART_cd.name config_cards: 9.  2 PART_cd.sub config_cards: 10.  0 pcw bos_toequ: 126. 414 pcwa fmt: 125, 129, 136, 278, 290, 334.  3 pgm bosequ: 10. 31000 pgmorg fmt: 296, 298,  bos_toequ: 64. 12215 phyadd fmt: 150, 353,  bos_tv: 34. 12213 phybos fmt: 233, 356,  bos_tv: 32. 3 PRPH_cd.chn config_cards: 15.  2 PRPH_cd.iom config_cards: 14.  4 PRPH_cd.model config_cards: 16.  1 PRPH_cd.sub config_cards: 13.  1500 prs bos_common: 18. 1600 ptrlen bos_common: 29. 12251 punch bos_tv: 62. 671 qdkadr qdisk: 40, 59, 122. 706 qdkbuf qdisk: 45, 49, 64, 67, 126, 132.  674 qdkdesc qdisk: 57, 126.  666 qdkdevt qdisk: 18, 36, 44, 63, 119. 637 qdkerr qdisk: 37, 46, 65, 85.  670 qdkno qdisk: 31, 56, 102, 121.  635 qdknv qdisk: 22, 51, 81. 667 qdksubsys qdisk: 27, 55, 101, 120.  672 qdktime qdisk: 69, 73, 74, 124.  633 qdkx2 qdisk: 15, 77, 81, 85.  533 query_disk fmt: 103, qdisk: 14. 2020 quietsw bos_common: 59. 12267 rdclock bos_tv: 76. 12211 rdev qdisk: 43, 62,  bos_tv: 30. 2016 rdrchanno bos_common: 57. 12234 rdsec bos_tv: 49. 12246 readcd bos_tv: 59. 12247 readtty fmt: 118, 327,  qdisk: 105, bos_tv: 60. 2030 readysw bos_common: 67. 12232 rec_per_dev_list bos_tv: 47. 220 refmt fmt: 171, 179.  526 refmtcnt fmt: 179, 241, 245, 369.  1520 regs bos_common: 19. 416 reseek fmt: 130, 293, 334. 474 restart fmt: 307, 328, 333. 423 restore fmt: 133, 136, 300. 477 retry fmt: 272, 306, 337. 37 rewpu bos_toequ: 69, 98, 101, 104, 107, 113, 116, 119.  12260 rjust bos_tv: 69. 2 ROOT_cd.drive config_cards: 7.  1 ROOT_cd.sub config_cards: 6.  174 rth fmt: 154, 158.  4000 runcom_bit bosequ: 19. 12200 scan fmt: 43, qdisk: 108, bos_tv: 21. 1540 scu bos_common: 22. 14 scwr bos_toequ: 124. 12204 search bos_tv: 25. 524 sector fmt: 60, 144, 186, 191, 237, 264, 366. 12230 sect_per_cyl_list bos_tv: 45. 12231 sect_per_dev_list bos_tv: 46. 424 seekaddr fmt: 145, 195, 296, 302, 322. 1200 seg0 bos_toequ: 97. 1202 seg1 bos_toequ: 100. 1204 seg2 bos_toequ: 103. 1206 seg3 bos_toequ: 106. 1210 seg4 bos_toequ: 109. 1212 seg5 bos_toequ: 112. 1214 seg6 bos_toequ: 115. 7000 seg6length bos_common: 90. 1216 seg7 bos_toequ: 118. 2004 setuparea bos_common: 49. 2025 skipsw bos_common: 64. 502 stat fmt: 309, 313, 323, 324, 340. 2 statq bos_toequ: 125. 2000 storlen bos_common: 36. 12262 stripa bos_tv: 71. 12263 stripg bos_tv: 72. 200 swaplen bos_toequ: 137, 139, 140, 141.  2015 tapechanno bos_common: 56. 530 temp fmt: 371. 531 ti fmt: 143, 193, 202, 208, 253, 373.  1 tmp bosequ: 8. 1160 toec fmt: 19, 22.  1000 toelen bos_toequ: 135, 139, 140, 141, 142, 143, 144, 145.  31000 toesaved bos_toequ: 136. 577 ttychan bos_toequ: 141. 2017 ttychanno bos_common: 58. 12245 ttyinit fmt: 33, bos_tv: 58. 2026 ttypmtsw bos_common: 65. 334 ttyrequest fmt: 34, 247.  12200 tv_org bos_tv: 19, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,  32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,  44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,  56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,  68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,  80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,  92, 93, 94, 95, 96. 12244 type bos_tv: 57. 352 unfmted fmt: 160, 262.  2013 unitgroup bos_common: 54. 2002 useable bos_common: 46. 2001 used bos_common: 45. 2005 utilarea bos_common: 50. 12000 utilorg bosequ: 22, bos_tv: 12, 19.  12301 wantflt bos_tv: 86. 12212 wdev bos_tv: 31. 12235 wtsec bos_tv: 50. 334 x2 fmt: 30, 36, 47, 55, 94, 110, 122, 242, 248, 260, 267, 331.  12277 xio_wait bos_tv: 84. 4 xs1 bosequ: 11. 5 xs2 bosequ: 12. 136 yes fmt: 111, 124.  532 z fmt: 88, 203, 374. NO FATAL ERRORS  ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved