ASSEMBLY LISTING OF SEGMENT >spec>h>3.17>test.alm ASSEMBLED ON: 11/29/83 1535.7 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 " ***********************************************************  6 " prog to test multics storage devices  7 " args are: 8 " device address range as in save and restor  9 " PATERN 1 to 4 octal words 10 " CHECK to read and check pattern  11 " WRITE to write pattern or marks  12 " MARK to read or write each record with its addr  13 " REWRIT to rewrite error records  14 " default will read but not check data  15  16  000000 17 name test  18  19  20 " ******************************************************  21 " * *  22 " * *  23 " * Copyright (c) 1972 by Massachusetts Institute of *  24 " * Technology and Honeywell Information Systems, Inc. *  25 " * *  26 " * *  27 " ******************************************************  28  040000 29 bool bsize,40000 buffer size  30  31  32 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  33  34 " 000000 0a 000371 7420 00 35 stx2 x2  000001 aa 012271 7020 00 36 tsx2 init_io  000002 aa 012245 7020 00 37 tsx2 ttyinit get tty requests 000003 0a 000371 0000 00 38 arg ttyrequest 39  000004 aa 040000 6350 00 40 eaa bsize make buffer 000005 aa 012221 7020 00 41 tsx2 makesdw following this program  000006 0a 000371 7100 00 42 tra x2 core clobbering considerations  000007 aa 0 00003 7571 00 43 staq ds|tmp*2+1 .. 000010 aa 000000 5320 00 44 cams  45  000011 0a 000371 2220 00 46 ldx2 x2 get command line and scan it ourselves  000012 aa 7 00000 7271 12 47 lxl7 mem|0,2  000013 aa 000000 6260 00 48 eax6 0 000014 aa 000000 0110 03 49 odd; rpd 14,1  000015 aa 035600 5602 01 000016 aa 7 00000 2351 17 50 lda mem|0,7  000017 aa 012001 7550 16 51 sta line,6 52  000020 aa 012200 7020 00 53 tsx2 scan now scan to get dec numbers too 54  000021 aa 000001 6200 00 55 eax0 1 start arg scan 000022 aa 012223 7020 00 56 tsx2 argmul look at partition card  000023 0a 000371 7100 00 57 tra x2 error  000024 aa 000000 6210 10 58 eax1 0,0 place arg index in X1  59  000025 aa 012040 2350 11 60 arglp: lda arg,1  000026 aa 000000 6270 00 61 eax7 0 000027 aa 016300 5202 02 62 rpt nargtab/2,2,tze  000030 0a 000035 1150 17 63 cmpa argtab,7 search for parameter  000031 0a 000114 6064 00 64 ttn arger  000032 aa 777777 7160 17 65 xec -1,7 execute table entry  000033 aa 000001 6210 11 66 nxtarg: eax1 1,1 step to next arg  000034 0a 000025 7100 00 67 tra arglp  68  000035 69 argtab: 000035 aa 202 330 252 342 70 bci ' check'  000036 0a 000446 5540 00 71 stc1 checksw  000037 aa 202 044 215 142 72 bci ' mark'  000040 0a 000451 5540 00 73 stc1 marksw  000041 aa 206 651 316 325 74 bci ' write'  000042 0a 000447 5540 00 75 stc1 writsw  000043 aa 512 566 513 163 76 bci 'rewrit'  000044 0a 000450 5540 00 77 stc1 rewritsw  000045 aa 202 251 312 526 78 bci ' brief'  000046 aa 012236 5540 20 79 stc1 disk_brief,*  000047 aa 472 163 255 145 80 bci 'patern'  000050 0a 000053 7100 00 81 tra argpatern  000051 aa 777777 777777 82 oct 777777777777  000052 0a 000122 7100 00 83 tra argend 84  000016 85 equ nargtab,*-argtab  86  87  000053 aa 000001 6210 11 88 argpatern:eax1 1,1 here to fetch pattern  000054 aa 012040 2350 11 89 lda arg,1  000055 aa 770000 3150 03 90 cana =o770000,du check for alpha  000056 0a 000061 6000 00 91 tze *+3  000057 aa 012060 1150 11 92 cmpa darg,1  000060 0a 000025 6000 00 93 tze arglp if no more numbers  000061 0a 000454 7550 00 94 sta patern 000062 0a 000455 7550 00 95 sta patern+1  000063 0a 000456 7550 00 96 sta patern+2  000064 0a 000457 7550 00 97 sta patern+3  98  000065 aa 000001 6210 11 99 eax1 1,1 if two, use for every other  000066 aa 012040 2350 11 100 lda arg,1  000067 aa 770000 3150 03 101 cana =o770000,du check for alpha  000070 0a 000073 6000 00 102 tze *+3  000071 aa 012060 1150 11 103 cmpa darg,1  000072 0a 000025 6000 00 104 tze arglp if no more numbers  000073 0a 000455 7550 00 105 sta patern+1  000074 0a 000457 7550 00 106 sta patern+3  107  000075 aa 000001 6210 11 108 eax1 1,1 if three, use first twice  000076 aa 012040 2350 11 109 lda arg,1  000077 aa 770000 3150 03 110 cana =o770000,du check for alpha  000100 0a 000103 6000 00 111 tze *+3  000101 aa 012060 1150 11 112 cmpa darg,1  000102 0a 000025 6000 00 113 tze arglp if no more numbers  000103 0a 000456 7550 00 114 sta patern+2  115  000104 aa 000001 6210 11 116 eax1 1,1 if four, use each once  000105 aa 012040 2350 11 117 lda arg,1  000106 aa 770000 3150 03 118 cana =o770000,du check for alpha  000107 0a 000112 6000 00 119 tze *+3  000110 aa 012060 1150 11 120 cmpa darg,1  000111 0a 000025 6000 00 121 tze arglp if no more numbers  000112 0a 000457 7550 00 122 sta patern+3  123  000113 0a 000033 7100 00 124 tra nxtarg 125  000114 aa 012241 7020 00 126 arger: tsx2 erpt else, print error 000115 aa 012 136 147 040 127 acc '^g unknown' arg unknown  000116 aa 165 156 153 156 000117 aa 157 167 156 000 000120 aa 012040 0000 11 128 arg arg,1  000121 0a 000371 7100 00 129 tra x2 130  131 " 132  000122 0a 000447 2340 00 133 argend: szn writsw if writing, prepare buffer  000123 0a 000140 6000 00 134 tze noprime  135  000124 0a 000460 7020 00 136 tsx2 query_disk see if disk is storage system volume  000125 aa 012224 0000 20 137 arg amdvt,*  000126 0a 000371 7100 00 138 tra x2 000127 0a 000132 7100 00 139 tra prime if not, proceed 140  000130 0a 000566 7020 00 141 tsx2 ask_disk ask if it can be overwritten  000131 0a 000371 7100 00 142 tra x2 if not, quit now  143  000132 aa 177760 2350 07 144 prime: lda (bsize-4)*4,dl copy pattern into buffer  000133 aa 000105 1004 00 145 cpatern: mlr (),(pr,al) 000134 0a 000454 000020 146 desc9a patern,4*4  000135 aa 100000 000020 147 desc9a tmp|0,4*4  000136 aa 000020 1350 07 148 sbla 4*4,dl  000137 0a 000133 6050 00 149 tpl cpatern  150  000140 aa 012224 7200 20 151 noprime: lxl0 amdvt,* Device type in X0.  000141 aa 000017 3600 03 152 anx0 =o17,du ..  153  000142 0a 000447 2340 00 154 l1: szn writsw if reading, clear buffer first  000143 0a 000151 6010 00 155 tnz noclear  156  000144 aa 200000 2350 07 157 lda bsize*4,dl 000145 aa 000140 1004 00 158 mlr (),(pr,rl),fill(0) 000146 0a 000146 000000 159 desc9a *,0 000147 aa 100000 000005 160 desc9a tmp|0,al  000150 0a 000166 7100 00 161 tra doio  162  000151 aa 012212 6270 00 163 noclear: eax7 wdev set proper procedure  000152 0a 000445 7470 00 164 stx7 iocall  165  000153 0a 000451 2340 00 166 szn marksw if not checking, should we change pattern  000154 0a 000166 6000 00 167 tze doio  168  000155 aa 012224 2350 20 169 lda amdvt,* Get device type word  000156 aa 777777 3750 03 170 ana =-1,du Leave only subsystem data. 000157 aa 012225 2750 20 171 ora amfirst,* yes, fill first word of each page  000160 aa 000000 6270 00 172 eax7 0 with did,addr  000161 aa 1 00000 7551 17 173 sta tmp|0,7  000162 aa 000001 0750 07 174 ada =1,dl  000163 aa 002000 6270 17 175 eax7 1024,7  000164 aa 040000 1070 03 176 cmpx7 bsize,du 000165 0a 000161 6040 00 177 tmi *-4  178  179 " 180  000166 aa 012225 2360 20 181 doio: ldq amfirst,* compute how much we can read  000167 aa 012233 5060 70 182 div amaxio,*0 can't read past one unit  000170 aa 000000 5310 00 183 neg  000171 aa 012233 0750 70 184 ada amaxio,*0 number left in unit 000172 aa 000020 1150 07 185 cmpa (bsize/1024),dl can't read more than buffer  000173 0a 000175 6040 00 186 tmi *+2  000174 aa 000020 2350 07 187 lda (bsize/1024),dl  188  000175 aa 000000 6360 05 189 eaq 0,al can't read more than amlast  000176 aa 000022 7720 00 190 qrl 18 000177 aa 012225 0760 20 191 adq amfirst,* 000200 aa 012226 1160 20 192 cmpq amlast,*  000201 0a 000205 6044 00 193 tmoz not_last  000202 aa 012226 2350 20 194 lda amlast,* if attempted, read only to amlast  000203 aa 012225 1750 20 195 sba amfirst,* 000204 aa 000001 0750 07 196 ada 1,dl  000205 197 not_last:  000205 aa 000004 7350 00 198 als 4 scale to bos sizes  000206 0a 000452 7550 00 199 sta iolen  000207 0a 000356 6000 00 200 tze iodone 201  000210 aa 012225 2350 20 202 lda amfirst,* convert mul addr to bos addr  000211 aa 012216 7020 00 203 tsx2 mulbos  000212 aa 012224 0000 20 204 arg amdvt,*  000213 0a 000371 7100 00 205 tra x2 000214 0a 000452 7510 74 206 stca iolen,74 store bos addr  207  000215 0a 000452 2350 00 208 lda iolen  000216 0a 000434 7020 00 209 tsx2 ioproc  000217 0a 000221 7100 00 210 tra s64  000220 0a 000313 7100 00 211 tra iod  212  000221 aa 012236 2340 20 213 s64: szn disk_brief,*  000222 0a 000232 6010 00 214 tnz s64a  000223 aa 012241 7020 00 215 tsx2 erpt  000224 aa 024 163 164 141 216 acc 'start of 64 word i/o' 000225 aa 162 164 040 157 000226 aa 146 040 066 064 000227 aa 040 167 157 162 000230 aa 144 040 151 057 000231 aa 157 000 000 000 000232 0a 000452 7210 00 217 s64a: lxl1 iolen if error, read each 64 words  000233 aa 007777 3610 03 218 anx1 =o7777,du .. 219  000234 0a 000452 2350 00 220 sloop: lda iolen  000235 0a 000734 3750 00 221 ana =o777777770000 000236 aa 000001 2750 07 222 ora =1,dl  000237 0a 000434 7020 00 223 tsx2 ioproc  000240 0a 000242 7100 00 224 tra *+2  000241 0a 000275 7100 00 225 tra sle  226  000242 0a 000452 2350 00 227 lda iolen if error, print multics address 000243 aa 012217 7020 00 228 tsx2 bosmul  000244 aa 012224 0000 20 229 arg amdvt,*  000245 0a 000245 7100 00 230 tra *  000246 0a 000426 7550 00 231 sta sect  232  000247 aa 012241 7020 00 233 tsx2 erpt  000250 aa 016 145 162 162 234 acc 'error at ^a ^o'  000251 aa 157 162 040 141 000252 aa 164 040 136 141 000253 aa 040 136 157 000 000254 aa 012227 0000 70 235 arg cvnamla,*0 000255 0a 000426 0000 00 236 arg sect  237  000256 0a 000447 2340 00 238 szn writsw if reading 000257 0a 000275 6010 00 239 tnz sle  000260 0a 000450 2340 00 240 szn rewritsw and rewriting  000261 0a 000275 6000 00 241 tze sle  242  000262 aa 012241 7020 00 243 tsx2 erpt then rewrite sector 000263 aa 011 162 145 167 244 acc 'rewriting'  000264 aa 162 151 164 151 000265 aa 156 147 000 000 245  000266 0a 000452 2350 00 246 lda iolen  000267 0a 000734 3750 00 247 ana =o777777770000 000270 aa 000001 2750 07 248 ora =1,dl  000271 aa 012212 7020 00 249 tsx2 wdev  000272 aa 012224 0000 20 250 arg amdvt,*  000273 aa 1 00000 0001 00 251 arg tmp|0  000274 0a 000275 7100 00 252 tra *+1 ignore errors 253  000275 aa 010000 2350 07 254 sle: lda =o10000,dl bump addr  000276 0a 000452 0550 00 255 asa iolen  000277 aa 1 00100 3515 00 256 epp1 tmp|64 bump pr to data  000300 aa 777777 6210 11 257 eax1 -1,1  000301 0a 000234 6010 00 258 tnz sloop  259  000302 aa 012236 2340 20 260 szn disk_brief,*  000303 0a 000312 6010 00 261 tnz e64a  000304 aa 012241 7020 00 262 tsx2 erpt  000305 aa 022 145 156 144 263 acc 'end of 64 word i/o'  000306 aa 040 157 146 040 000307 aa 066 064 040 167 000310 aa 157 162 144 040 000311 aa 151 057 157 000 000312 aa 1 00000 3511 00 264 e64a: epbp1 tmp|0 reset pr to base of segment  265  266 " 267  000313 0a 000446 2340 00 268 iod: szn checksw if checking, check data  000314 0a 000356 6000 00 269 tze iodone 270  000315 0a 000452 2350 00 271 lda iolen if buffer needs checking, get length  000316 aa 007777 3750 07 272 ana =o7777,dl  000317 aa 000006 7350 00 273 als 6 in words  000320 aa 000000 6210 05 274 eax1 0,al  275  000321 0a 000451 2340 00 276 szn marksw what kind of check should be made  000322 0a 000342 6000 00 277 tze ckpat tra to check pattern  278  000323 0a 000337 7410 00 279 stx1 ckmklim set limint  000324 aa 000000 6210 00 280 eax1 0 000325 aa 012224 2350 20 281 lda amdvt,* Get device type info. 000326 aa 777777 3750 03 282 ana =-1,du Leave subsystem data.  000327 aa 012225 2750 20 283 ora amfirst,* 000330 0a 000454 2360 00 284 ldq patern 000331 aa 1 00000 1151 11 285 ckmklp: cmpa tmp|0,1  000332 0a 000334 6000 00 286 tze *+2  000333 0a 000374 7020 00 287 tsx2 cker  000334 aa 1 00000 7561 11 288 stq tmp|0,1 make look like regular pattern  000335 aa 000001 0750 07 289 ada =1,dl bump addr  000336 aa 002000 6210 11 290 eax1 1024,1  000337 0a 000337 1010 03 291 ckmklim: cmpx1 *,du 000340 0a 000331 6040 00 292 tmi ckmklp 000341 0a 000337 2210 00 293 ldx1 ckmklim restor x1  294  000342 aa 777776 6210 11 295 ckpat: eax1 -2,1  000343 0a 000356 6040 00 296 tmi iodone 000344 0a 000456 2370 00 297 ldaq patern+2 check pattern in buffer 000345 aa 1 00000 1171 11 298 cmpaq tmp|0,1  000346 0a 000350 6000 00 299 tze *+2  000347 0a 000374 7020 00 300 tsx2 cker  000350 aa 777776 6210 11 301 eax1 -2,1  000351 0a 000454 2370 00 302 ldaq patern  000352 aa 1 00000 1171 11 303 cmpaq tmp|0,1  000353 0a 000355 6000 00 304 tze *+2  000354 0a 000374 7020 00 305 tsx2 cker  000355 0a 000342 7100 00 306 tra ckpat  307  000356 aa 012274 7020 00 308 iodone: tsx2 check_status poll for special int on tty  000357 0a 000735 0000 00 309 arg =0 000360 0a 000362 7100 00 310 tra *+2  000361 0a 000362 7100 00 311 tra *+1  312  000362 0a 000452 2350 00 313 lda iolen io done and checked, bum addrs  000363 aa 007777 3750 07 314 ana =o7777,dl  000364 aa 000004 7710 00 315 arl 4  000365 aa 012225 0550 20 316 asa amfirst,* 000366 aa 012225 2350 20 317 lda amfirst,* check for being done  000367 aa 012226 1150 20 318 cmpa amlast,*  000370 0a 000142 6044 00 319 tmoz l1  320  321 " 322  000371 323 ttyrequest: 000371 0a 000371 6220 00 324 x2: eax2 *  000372 aa 000001 3350 07 325 lca =1,dl return no command to bos  000373 aa 7 00001 7101 12 326 tra mem|1,2  327  000374 0a 000425 7420 00 328 cker: stx2 ckerx2 subr to print errors found while checking read  000375 0a 000430 7570 00 329 staq sb should be 000376 aa 1 00000 2371 11 330 ldaq tmp|0,1  000377 0a 000432 7570 00 331 staq is  000400 aa 000000 6270 11 332 eax7 0,1 get offset  000401 aa 001777 3670 03 333 anx7 =o1777,du 000402 0a 000427 4470 00 334 sxl7 off  000403 aa 000000 6350 11 335 eaa 0,1 and sector number 000404 aa 000034 7710 00 336 arl 18+10  000405 aa 012225 0750 20 337 ada amfirst,* 000406 0a 000426 7550 00 338 sta sect  339  000407 aa 012241 7020 00 340 tsx2 erpt  000410 aa 027 136 157 040 341 acc '^o ^o sb ^w ^w is ^w ^w'  000411 aa 136 157 040 163 000412 aa 142 040 136 167 000413 aa 040 136 167 040 000414 aa 151 163 040 136 000415 aa 167 040 136 167 000416 0a 000426 0000 00 342 arg sect  000417 0a 000427 0000 00 343 arg off  000420 0a 000430 0000 00 344 arg sb 000421 0a 000431 0000 00 345 arg sb+1  000422 0a 000432 0000 00 346 arg is 000423 0a 000433 0000 00 347 arg is+1  000424 0a 000430 2370 00 348 ldaq sb restore aq  000425 0a 000425 7100 00 349 ckerx2: tra *  350  000426 aa 000000 000000 351 sect: oct 0 000427 aa 000000 000000 352 off: oct 0  353 even  000430 aa 000000 000000 354 sb: oct 0,0 000431 aa 000000 000000 000432 aa 000000 000000 355 is: oct 0,0 000433 aa 000000 000000 356  000434 0a 000441 7420 00 357 ioproc: stx2 iopx2  358  000435 0a 000445 7020 20 359 tsx2 iocall,* perform disk I/O  000436 aa 012224 0000 20 360 arg amdvt,*  000437 aa 1 00000 0001 00 361 arg tmp|0  000440 0a 000443 7100 00 362 tra ioperr 363  000441 0a 000441 6220 00 364 iopx2: eax2 *  000442 aa 000001 7100 12 365 tra 1,2  366  000443 0a 000441 2220 00 367 ioperr: ldx2 iopx2 take error return  000444 aa 000000 7100 12 368 tra 0,2  369  000445 aa 012211 0000 00 370 iocall: arg rdev  371  000446 aa 000000 000000 372 checksw: oct 0  000447 aa 000000 000000 373 writsw: oct 0  000450 aa 000000 000000 374 rewritsw: oct 0 000451 aa 000000 000000 375 marksw: oct 0  000452 aa 000000 000000 376 iolen: oct 0  377  000453 aa 000000 0110 03 378 even  000454 379 bss patern,4  380  381  382  383 include qdisk  2-1 " 2-2 " Begin include file ..... qdisk.incl.alm  2-3 " Created 6/1/76 by Noel I. Morris  2-4 " Modified 10/31/77 by Greenberg for bulk check, time print.  2-5  2-6 " To test if disk is a Multics storage system volume:  2-7 "  2-8 " tsx2 query_disk  2-9 " arg devt  2-10 " tra error 2-11 " tra not_vol  2-12  2-13  000460 2-14 query_disk: 000460 0a 000560 7420 00 2-15 stx2 qdkx2 save X2  2-16  000461 aa 000000 2360 32 2-17 ldq 0,2* get devt 000462 0a 000613 7560 00 2-18 stq qdkdevt and save  000463 aa 000000 6350 06 2-19 eaa 0,ql test for bulk  000464 aa 000017 3750 03 2-20 ana =o17,du  000465 aa 000001 1150 03 2-21 cmpa =1,du 000466 0a 000562 6000 00 2-22 tze qdknv don't hassle it, it's bulk  2-23  000467 aa 000000 6270 06 2-24 eax7 0,ql config deck index in X7 000470 aa 777760 3670 03 2-25 anx7 =o777760,du mask it  000471 aa 6 00001 2351 17 2-26 lda com|DISK_cd.sub,7 get subsystem name  000472 0a 000614 7550 00 2-27 sta qdksubsys and save  2-28  000473 aa 000022 7720 00 2-29 qrl 18 save drive number  000474 aa 000777 3760 07 2-30 anq =o777,dl ..  000475 0a 000615 7560 00 2-31 stq qdkno ..  2-32  2-33  000476 aa 000000 2350 07 2-34 lda 0,dl label is record zero 000477 aa 012216 7020 00 2-35 tsx2 mulbos convert to BOS address  000500 0a 000613 0000 00 2-36 arg qdkdevt ..  000501 0a 000564 7100 00 2-37 tra qdkerr 2-38  000502 0a 000734 3750 00 2-39 ana =o777777770000 mask sector number  000503 0a 000616 7550 00 2-40 sta qdkadr save for next I/O  000504 0a 000736 0350 00 2-41 adla =v24/label.Multics/64,12/1 get sector with label 2-42  000505 aa 012211 7020 00 2-43 tsx2 rdev read the label  000506 0a 000613 0000 00 2-44 arg qdkdevt  000507 0a 000634 0110 00 2-45 nop qdkbuf 000510 0a 000564 7100 00 2-46 tra qdkerr 2-47  000511 aa 000000 1064 00 2-48 cmpc (),() see if Multics volume  000512 0a 000634 000040 2-49 desc9a qdkbuf+label.Multics-label.Multics/64*64,32 000513 0a 000623 000040 2-50 desc9a Multics_label,32  000514 0a 000562 6010 00 2-51 tnz qdknv if not, take not_vol return 2-52  000515 aa 012241 7020 00 2-53 tsx2 erpt print message  000516 aa 052 136 141 040 2-54 acc "^a ^d is Multics storage system volume ^A."  000517 aa 136 144 040 151 000520 aa 163 040 115 165 000521 aa 154 164 151 143 000522 aa 163 040 163 164 000523 aa 157 162 141 147 000524 aa 145 040 163 171 000525 aa 163 164 145 155 000526 aa 040 166 157 154 000527 aa 165 155 145 040 000530 aa 136 101 056 000 000531 0a 000614 0000 00 2-55 arg qdksubsys  000532 0a 000615 0000 00 2-56 arg qdkno  000533 0a 000622 0000 00 2-57 arg qdkdesc  2-58  000534 0a 000616 2350 00 2-59 lda qdkadr get last-use time  000535 0a 000737 0350 00 2-60 adla =v24/label.time_map_updated/64,12/1  2-61  000536 aa 012211 7020 00 2-62 tsx2 rdev  000537 0a 000613 0000 00 2-63 arg qdkdevt  000540 0a 000634 0110 00 2-64 nop qdkbuf 000541 0a 000564 7100 00 2-65 tra qdkerr 2-66  000542 0a 000636 2370 00 2-67 ldaq qdkbuf+label.time_map_updated-label.time_map_updated/64*64  000543 aa 012270 7020 00 2-68 tsx2 cvclock  000544 0a 000620 7570 00 2-69 staq qdktime convert the time 2-70  000545 aa 012241 7020 00 2-71 tsx2 erpt  000546 aa 034 114 141 142 2-72 acc "Label last written at ^g ^g." 000547 aa 145 154 040 154 000550 aa 141 163 164 040 000551 aa 167 162 151 164 000552 aa 164 145 156 040 000553 aa 141 164 040 136 000554 aa 147 040 136 147 000555 aa 056 000 000 000 000556 0a 000620 0000 00 2-73 arg qdktime+0  000557 0a 000621 0000 00 2-74 arg qdktime+1  2-75  2-76  000560 0a 000560 6220 00 2-77 qdkx2: eax2 * restore X2  000561 aa 000003 7100 12 2-78 tra 3,2 take is volume return 2-79  2-80  000562 0a 000560 2220 00 2-81 qdknv: ldx2 qdkx2 restore X2  000563 aa 000002 7100 12 2-82 tra 2,2 disk is not storage system volume 2-83  2-84  000564 0a 000560 2220 00 2-85 qdkerr: ldx2 qdkx2 restore X2  000565 aa 000001 7100 12 2-86 tra 1,2 take error return 2-87  2-88  2-89 " 2-90  2-91 " To ask if disk may be overwritten:  2-92 "  2-93 " tsx2 ask_disk 2-94 " tra no  2-95 "  2-96  000566 0a 000606 7420 00 2-97 ask_disk: stx2 adkx2 save X2  2-98  000567 aa 012241 7020 00 2-99 tsx2 erpt pop the question  000570 aa 037 104 157 040 2-100 acc "Do you wish to write on ^a ^d^g"  000571 aa 171 157 165 040 000572 aa 167 151 163 150 000573 aa 040 164 157 040 000574 aa 167 162 151 164 000575 aa 145 040 157 156 000576 aa 040 136 141 040 000577 aa 136 144 136 147 000600 0a 000614 0000 00 2-101 arg qdksubsys  000601 0a 000615 0000 00 2-102 arg qdkno  000602 0a 000740 0000 00 2-103 arg =h!!????  2-104  000603 aa 012247 7020 00 2-105 tsx2 readtty read the answer  000604 0a 000603 7100 00 2-106 tra *-1 ..  2-107  000605 aa 012200 7020 00 2-108 tsx2 scan scan input  2-109  000606 0a 000606 6220 00 2-110 adkx2: eax2 * restore X2  000607 aa 012040 2350 00 2-111 lda arg get answer  000610 0a 000741 1150 00 2-112 cmpa =h yes yes?  000611 aa 000001 6000 12 2-113 tze 1,2  000612 aa 000000 7100 12 2-114 tra 0,2  2-115  2-116  2-117 " 2-118  000613 2-119 qdkdevt: bss ,1 000614 2-120 qdksubsys:bss ,1  000615 2-121 qdkno: bss ,1  000616 2-122 qdkadr: bss ,1  000617 aa 000000 0110 03 2-123 even  000620 2-124 qdktime: bss ,2 2-125  000622 0a 000655 000040 2-126 qdkdesc: desc9a qdkbuf+label.pv_name-label.pv_name/64*64,32 2-127  000623 2-128 Multics_label:  000623 aa 115 165 154 164 2-129 aci "Multics Storage System Volume",32 000624 aa 151 143 163 040 000625 aa 123 164 157 162 000626 aa 141 147 145 040 000627 aa 123 171 163 164 000630 aa 145 155 040 126 000631 aa 157 154 165 155 000632 aa 145 040 040 040 2-130  000633 aa 000000 0110 03 2-131 even  000634 2-132 qdkbuf: bss ,64 2-133  2-134  2-135 " End of include file ...... qdisk.incl.alm 2-136  384  385 include config_cards  3-1 " 3-2 " Begin include file ...... config_cards.incl.alm  3-3 " 3/75 THVV nss 3-4 " Last modified 3/12/76 by Noel I. Morris  3-5  000001 3-6 equ ROOT_cd.sub,1  000002 3-7 equ ROOT_cd.drive,2  3-8  000001 3-9 equ PART_cd.name,1 000002 3-10 equ PART_cd.sub,2  000003 3-11 equ PART_cd.drive,3  3-12  000001 3-13 equ PRPH_cd.sub,1  000002 3-14 equ PRPH_cd.iom,2  000003 3-15 equ PRPH_cd.chn,3  000004 3-16 equ PRPH_cd.model,4  3-17  000001 3-18 equ DISK_cd.sub,1  000002 3-19 equ DISK_cd.iom,2  000003 3-20 equ DISK_cd.chn,3  000004 3-21 equ DISK_cd.nchan,4  000005 3-22 equ DISK_cd.model,5  000006 3-23 equ DISK_cd.ndrives,6  3-24  000001 3-25 equ CHNL_cd.sub,1  000002 3-26 equ CHNL_cd.iom,2  000003 3-27 equ CHNL_cd.chn,3  000004 3-28 equ CHNL_cd.nchan,4  3-29  000001 3-30 equ BULK_cd.frec,1 000002 3-31 equ BULK_cd.nrec,2 3-32  3-33 " End of include file ...... config_cards.incl.alm  3-34  386  387 " 388  389 include fs_vol_label  4-1  4-2  4-3 "BEGIN INCLUDE FILE fs_vol_label.incl.alm  4-4  4-5  4-6 "Created 03/27/82 1422.1 est Sat by convert_include_file, 4-7 " Version of 12/01/81 1540.3 est Tue.  4-8  4-9 "Made from >udd>m>bongo>htd>nsd>include>fs_vol_label.incl.pl1, 4-10 " modified 03/27/82 1421.0 est Sat  4-11  4-12 "  4-13 " Structure label  4-14 "  002000 4-15 equ label_size,1024  4-16  4-17  000000 4-18 equ label.gcos,0  000500 4-19 equ label.Multics,320  000510 4-20 equ label.version,328  000511 4-21 equ label.mfg_serial,329  000521 4-22 equ label.pv_name,337  000531 4-23 equ label.lv_name,345  000541 4-24 equ label.pvid,353 000542 4-25 equ label.lvid,354 000543 4-26 equ label.root_pvid,355  000544 4-27 equ label.time_registered,356 " DOUBLE 000546 4-28 equ label.n_pv_in_lv,358  000547 4-29 equ label.vol_size,359 000550 4-30 equ label.vtoc_size,360  4-31  000551 4-32 equ label.not_used_word,361  400000 4-33 bool label.not_used,400000 " DU  000551 4-34 equ label.private_word,361 200000 4-35 bool label.private,200000 " DU 000551 4-36 equ label.flagpad_word,361 000000 4-37 equ label.flagpad_shift,0  4-38  000552 4-39 equ label.max_access_class,362 " DOUBLE  000554 4-40 equ label.min_access_class,364 " DOUBLE  000556 4-41 equ label.password,366 " DOUBLE  000600 4-42 equ label.time_mounted,384 " DOUBLE  000602 4-43 equ label.time_map_updated,386 " DOUBLE  000604 4-44 equ label.volmap_version,388  000606 4-45 equ label.time_salvaged,390 " DOUBLE  000610 4-46 equ label.time_of_boot,392 " DOUBLE  000612 4-47 equ label.time_unmounted,394 " DOUBLE  000614 4-48 equ label.last_pvtx,396  000617 4-49 equ label.err_hist_size,399  000620 4-50 equ label.time_last_dmp,400 " DOUBLE  000626 4-51 equ label.time_last_reloaded,406 " DOUBLE  000700 4-52 equ label.root,448 " LEVEL 2  4-53  400000 4-54 bool label.here,400000 " DU  4-55  000701 4-56 equ label.root_vtocx,449  000702 4-57 equ label.shutdown_state,450  000704 4-58 equ label.disk_table_vtocx,452 000705 4-59 equ label.disk_table_uid,453  000706 4-60 equ label.esd_state,454  000707 4-61 equ label.volmap_record,455  000710 4-62 equ label.size_of_volmap,456  000711 4-63 equ label.vtoc_map_record,457  000712 4-64 equ label.size_of_vtoc_map,458 000713 4-65 equ label.volmap_unit_size,459 000714 4-66 equ label.vtoc_origin_record,460  000715 4-67 equ label.dumper_bit_map_record,461  000716 4-68 equ label.vol_trouble_count,462  001003 4-69 equ label.nparts,515  001004 4-70 equ label.parts,516 " LEVEL 2 4-71  001004 4-72 equ label.part,516 001005 4-73 equ label.frec,517 001006 4-74 equ label.nrec,518 4-75  4-76 "END INCLUDE FILE fs_vol_label.incl.alm  390  391 " 392  393 include bos_sdw  5-1 "  5-2 " BEGIN INCLUDE FILE sdw.incl.alm 02/12/74  5-3 "  000014 5-4 equ sdw.add_shift,12  007000 5-5 bool sdw.r1,007000 Ringbrack 1 (DL)  000700 5-6 bool sdw.r2,000700 Ringbrack 2 (DL)  000070 5-7 bool sdw.r3,000070 Ringbrack 3 (DL)  5-8  000004 5-9 bool sdw.df,000004 Directed fault bit (0 -> fault)  000003 5-10 bool sdw.fault_code,000003 Number of directed fault  5-11  377770 5-12 bool sdw.bound,377770 Bound field (DU)  000004 5-13 bool sdw.read,000004 Read permission bit (DU) 000002 5-14 bool sdw.execute,000002 Execute permission bit (DU)  000001 5-15 bool sdw.write,000001 Write permission bit (DU)  5-16  400000 5-17 bool sdw.privileged,400000 Privileged bit (DL) 200000 5-18 bool sdw.unpaged,200000 Unpaged bit (DL)  100000 5-19 bool sdw.entry_bound_sw,100000 Entry bound switch (DL) 040000 5-20 bool sdw.cache,040000 Cache enabled bit (DL)  037777 5-21 bool sdw.entry_bound,037777 Entry bound (DL)  5-22  5-23 "  5-24 " END INCLUDE FILE sdw.incl.alm  5-25 "  394 include bos_tv 6-1 " 6-2 " Begin include file ...... bos_tv.incl.alm 6-3 " Created in November 1971 by N. I. Morris. 6-4 " Modified 9/9/76 by Noel I. Morris 6-5 " Modified by Sherman D. Sprague 02/11/81 for DPS8 support. 6-6 " Modified November 1981 by C. Hornig to remove iom_connect_rel.  6-7 " Modified January 1982 by J. Bongiovanni to add getport_info  6-8 " Modified May 1982 by Sherman D. Sprague to add getmpc.  6-9  6-10 " BOS Utility Package Transfer Vector.  6-11  012000 6-12 equ pagectl,utilorg  012001 6-13 equ line,pagectl+1 012040 6-14 equ arg,line+31  012060 6-15 equ darg,arg+arglen+1  012100 6-16 equ earg,darg+arglen+1 012120 6-17 equ fltscu,earg+arglen+1  6-18  012200 6-19 equ tv_org,utilorg+128 6-20  012200 6-21 equ scan,tv_org+0  012201 6-22 equ arg_count,tv_org+1 012202 6-23 equ nextline,tv_org+2  012203 6-24 equ nlraw,tv_org+3 012204 6-25 equ search,tv_org+4  012205 6-26 equ makefil,tv_org+5  012206 6-27 equ ldcom,tv_org+6 012207 6-28 equ getsec,tv_org+7  012210 6-29 equ cvinit,tv_org+8  012211 6-30 equ rdev,tv_org+9  012212 6-31 equ wdev,tv_org+10 012213 6-32 equ phybos,tv_org+11  012214 6-33 equ bosphy,tv_org+12  012215 6-34 equ phyadd,tv_org+13  012216 6-35 equ mulbos,tv_org+14  012217 6-36 equ bosmul,tv_org+15  012220 6-37 equ lookup_devmodel,tv_org+16  012221 6-38 equ makesdw,tv_org+17  012222 6-39 equ argbos,tv_org+18  012223 6-40 equ argmul,tv_org+19  012224 6-41 equ amdvt,tv_org+20  012225 6-42 equ amfirst,tv_org+21  012226 6-43 equ amlast,tv_org+22  012227 6-44 equ cvnamla,tv_org+23  012230 6-45 equ sect_per_cyl_list,tv_org+24  012231 6-46 equ sect_per_dev_list,tv_org+25  012232 6-47 equ rec_per_dev_list,tv_org+26 012233 6-48 equ amaxio,tv_org+27  012234 6-49 equ rdsec,tv_org+28  012235 6-50 equ wtsec,tv_org+29  012236 6-51 equ disk_brief,tv_org+30  012237 6-52 equ itaper,tv_org+31  012240 6-53 equ itapew,tv_org+32  012241 6-54 equ erpt,tv_org+33 012242 6-55 equ ercv,tv_org+34 012243 6-56 equ erbuf,tv_org+35  012244 6-57 equ type,tv_org+36 012245 6-58 equ ttyinit,tv_org+37  012246 6-59 equ readcd,tv_org+38  012247 6-60 equ readtty,tv_org+39  012250 6-61 equ getprt,tv_org+40  012251 6-62 equ punch,tv_org+41  012252 6-63 equ octwd,tv_org+42  012253 6-64 equ geas,tv_org+43 012254 6-65 equ geastab,tv_org+44  012255 6-66 equ asge,tv_org+45 012256 6-67 equ asgetab,tv_org+46  012257 6-68 equ ljust,tv_org+47  012260 6-69 equ rjust,tv_org+48  012261 6-70 equ bzel,tv_org+49 012262 6-71 equ stripa,tv_org+50  012263 6-72 equ stripg,tv_org+51  012264 6-73 equ getconf,tv_org+52  012265 6-74 equ getmore,tv_org+53  012266 6-75 equ getperiph,tv_org+54  012267 6-76 equ rdclock,tv_org+55  012270 6-77 equ cvclock,tv_org+56  012271 6-78 equ init_io,tv_org+57  012272 6-79 equ connect_iom,tv_org+58  012273 6-80 equ getmpc,tv_org+59  012274 6-81 equ check_status,tv_org+60 012275 6-82 equ get_special_interrupt,tv_org+61  012276 6-83 equ get_status_interrupt,tv_org+62 012277 6-84 equ xio_wait,tv_org+63 012300 6-85 equ initint,tv_org+64  012301 6-86 equ wantflt,tv_org+65  012302 6-87 equ intno,tv_org+66  012303 6-88 equ intrpts1,tv_org+67 012304 6-89 equ hexwd,tv_org+68  012305 6-90 equ find_disk,tv_org+69  012306 6-91 equ find_root,tv_org+70  012307 6-92 equ find_part,tv_org+71  012310 6-93 equ check_status_no_stat,tv_org+72 012311 6-94 equ check_special_status,tv_org+73 012312 6-95 equ check_cpu_type,tv_org+74  012313 6-96 equ getportinfo,tv_org+75  6-97  6-98 " End of include file ...... bos_tv.incl.alm  6-99  395 include bos_common 7-1 "  7-2 " Begin include file ...... bos_common.incl.alm 7-3 " Modified on 8/31/76 by N. I. Morris  7-4 " Modified on 9/01/80 by Sherman D. Sprague for DPS8 operation  7-5 " Modified on 5/26/82 by Sherman D. Sprague to lengthen config size 7-6 " Modified on 3/01/83 by Sherman D. Sprague to lengthen dirlen  7-7 " MACHINE CONDITIONS AREA  7-8 " Its length is "storlen". 7-9  000000 7-10 equ amptwregs,0 Ass. Mem PTW registers  000100 7-11 equ amptwptr,64 Ass. Mem PTW pointers 000200 7-12 equ amsdwregs,128 Ass. Mem SDW registers  000400 7-13 equ amsdwptr,256 Ass. Mem SDW pointers  000500 7-14 equ ouhist,320 operations hist regs  000700 7-15 equ cuhist,448 control unit hist regs  001100 7-16 equ eishist,576 eis hist regs  001300 7-17 equ aphist,704 appending unit hist regs  001500 7-18 equ prs,832 pointer regs  001520 7-19 equ regs,848 sreg 001530 7-20 equ low_order_port,856 port to read clock from 001532 7-21 equ mctime,858 bootload memory clock  001540 7-22 equ scu,864  001550 7-23 equ mcm,872 memory masks 8 ports 001570 7-24 equ dbr,888  001572 7-25 equ intrpts,890 waiting interrupts 001573 7-26 equ bar,891 bar  001574 7-27 equ modereg,892 processor & cache mode registers  001576 7-28 equ faultreg,894 processor fault register  001600 7-29 equ ptrlen,896 pointer-lengths EIS 0 mod 8 001610 7-30 equ coreblocks,904 array of port information  7-31 " Bits 0-17 => num 1st 64-word block  7-32 " Bits 18-35 => num of 64-word blocks  7-33 " (-1) => no mem on this port  001620 7-34 equ lowport_cfg,912 Saved CFG from bootload SCU  7-35  002000 7-36 equ storlen,1024  7-37  7-38  7-39  7-40 " BOS COMMAND DIRECTORY 7-41 " Its length is "dirlen".  7-42  002000 7-43 equ dir,1024 ( 0-23) => sector # of first sector on BOS disk  7-44 " (24-35) => # of sectors in BOS common  002001 7-45 equ used,dir+1 ( 0-23) => # of next available sector on BOS disk  002002 7-46 equ useable,dir+2 ( 0-23) => first unavailable sector on BOS disk  002003 7-47 equ corearea,dir+3 ( 0-23) => starting sector of Multics core image  7-48 " (24-35) => # of sectors in Multics core image  002004 7-49 equ setuparea,dir+4 Sector and length of setup 002005 7-50 equ utilarea,dir+5 where utility package is kept  002010 7-51 equ iom_mxbase,dir+8 IOM IMW area address  002011 7-52 equ iom_mbbase,dir+9 IOM mailbox base  002012 7-53 equ bos_dvt,dir+10 BOS disk loc: (o3/iom,o6/chn,o9/drive,o18/devtype)  002013 7-54 equ unitgroup,dir+11 disk unitgroup (device no. or area no.)  002014 7-55 equ diskchanno,dir+12 channel to be used for disk  002015 7-56 equ tapechanno,dir+13 channel # for tapes  002016 7-57 equ rdrchanno,dir+14 channel number for card reader  002017 7-58 equ ttychanno,dir+15 channel # for operator's tty  002020 7-59 equ quietsw,dir+16 if on, don't print card and macro commands  002021 7-60 equ inputsw,dir+17 read from tty, cards, macros  002022 7-61 equ macroloc,dir+18 disk addr, buffer index of macro file  002023 7-62 equ fdump_state,dir+19 completion flag for last FDUMP  002024 7-63 equ d355_state,dir+20 = 1 if DataNet 355 loaded successfully  002025 7-64 equ skipsw,dir+21 if on, skip runcom lines 002026 7-65 equ ttypmtsw,dir+22 if on, prompt  002027 7-66 equ curtcmd,dir+23 current bos command 002030 7-67 equ readysw,dir+24 if on, print ready message  002032 7-68 equ cmdlst,dir+26 list of commands 7-69  000600 7-70 equ dirlen,384 7-71  7-72  7-73  7-74 " MACRO BUFFER AREA 7-75  002600 7-76 equ macrobuf,dir+dirlen io buffer for macro files 002700 7-77 equ macroline,macrobuf+64 runcom command line 002716 7-78 equ macroargs,macroline+14 argument descriptors for runcom  7-79  7-80  7-81  7-82 " CONFIGURATION CARD AREA  7-83 " Its length is 2048 words.  7-84  003000 7-85 equ conf,macrobuf+128 start of configuration info  007000 7-86 equ econf,conf+2048 end of configuration info  000020 7-87 equ confl,16 length of each line  7-88  7-89  007000 7-90 equ seg6length,econf length of bos_common area segment 7-91  7-92 " End of include file ...... bos_common.incl.alm  7-93  396  397 end  LITERALS 000734 aa 777777 770000 000735 aa 000000 000000 000736 aa 000000 050001 000737 aa 000000 060001 000740 aa 777717 171717 000741 aa 202020 702562 NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000742 5a 000003 000000 000743 5a 000017 600000 000744 aa 000000 000000 000745 55 000010 000002 000746 5a 000002 400003 000747 55 000006 000010 000750 aa 004 164 145 163 000751 aa 164 000 000 000 000752 55 000002 000003 000753 6a 000000 400002 000754 55 000013 000003 000755 aa 014 163 171 155 symbol_table  000756 aa 142 157 154 137 000757 aa 164 141 142 154 000760 aa 145 000 000 000 DEFINITIONS HASH TABLE  000761 aa 000000 000015 000762 aa 000000 000000 000763 aa 000000 000000 000764 aa 000000 000000 000765 aa 000000 000000 000766 aa 000000 000000 000767 aa 000000 000000 000770 5a 000010 000000 000771 aa 000000 000000 000772 aa 000000 000000 000773 aa 000000 000000 000774 aa 000000 000000 000775 aa 000000 000000 000776 aa 000000 000000 NO EXTERNAL NAMES  NO TRAP POINTER WORDS  TYPE PAIR BLOCKS  000777 aa 000001 000000 001000 aa 000000 000000 INTERNAL EXPRESSION WORDS 001001 aa 000000 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 000742 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 232704 446233 000010 aa 141154 155040 000011 aa 040040 040040 000012 aa 000024 000040 000013 aa 000034 000040 000014 aa 000044 000100 000015 aa 000002 000002 000016 aa 000064 000000 000017 aa 000000 000326 000020 aa 000000 000231 000021 aa 000000 000310 000022 aa 000313 000231 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 000010 000066 aa 000126 000025 000067 aa 122721 273133 000070 aa 000000 112272 000071 aa 216250 200000 000072 aa 000134 000040 000073 aa 113400 415301 000074 aa 000000 111341 000075 aa 220414 400000 000076 aa 000144 000037 000077 aa 047371 352103 000100 aa 000000 104737 000101 aa 511571 200000 000102 aa 000154 000046 000103 aa 043243 125746 000104 aa 000000 103534 000105 aa 053307 400000 000106 aa 000166 000042 000107 aa 110044 377556 000110 aa 000000 111005 000111 aa 417043 600000 000112 aa 000177 000041 000113 aa 105543 476637 000114 aa 000000 110555 000115 aa 260135 200000 000116 aa 000210 000040 000117 aa 110235 072677 000120 aa 000000 111024 000121 aa 524460 600000 000122 aa 000220 000044 000123 aa 121622 277475 000124 aa 000000 112162 000125 aa 321563 400000 000126 aa 076163 160145 >spec>h>3.17>test.alm  000127 aa 143076 150076 000130 aa 063056 061067 000131 aa 076164 145163 000132 aa 164056 141154 000133 aa 155040 040040 000134 aa 076154 144144 >ldd>bos>include>bosequ.incl.alm  000135 aa 076142 157163 000136 aa 076151 156143 000137 aa 154165 144145 000140 aa 076142 157163 000141 aa 145161 165056 000142 aa 151156 143154 000143 aa 056141 154155 000144 aa 076154 144144 >ldd>bos>include>qdisk.incl.alm 000145 aa 076142 157163 000146 aa 076151 156143 000147 aa 154165 144145 000150 aa 076161 144151 000151 aa 163153 056151 000152 aa 156143 154056 000153 aa 141154 155040 000154 aa 076154 144144 >ldd>bos>include>config_cards.incl.alm  000155 aa 076142 157163 000156 aa 076151 156143 000157 aa 154165 144145 000160 aa 076143 157156 000161 aa 146151 147137 000162 aa 143141 162144 000163 aa 163056 151156 000164 aa 143154 056141 000165 aa 154155 040040 000166 aa 076154 144144 >ldd>include>fs_vol_label.incl.alm  000167 aa 076151 156143 000170 aa 154165 144145 000171 aa 076146 163137 000172 aa 166157 154137 000173 aa 154141 142145 000174 aa 154056 151156 000175 aa 143154 056141 000176 aa 154155 040040 000177 aa 076154 144144 >ldd>bos>include>bos_sdw.incl.alm  000200 aa 076142 157163 000201 aa 076151 156143 000202 aa 154165 144145 000203 aa 076142 157163 000204 aa 137163 144167 000205 aa 056151 156143 000206 aa 154056 141154 000207 aa 155040 040040 000210 aa 076154 144144 >ldd>bos>include>bos_tv.incl.alm  000211 aa 076142 157163 000212 aa 076151 156143 000213 aa 154165 144145 000214 aa 076142 157163 000215 aa 137164 166056 000216 aa 151156 143154 000217 aa 056141 154155 000220 aa 076154 144144 >ldd>bos>include>bos_common.incl.alm  000221 aa 076142 157163 000222 aa 076151 156143 000223 aa 154165 144145 000224 aa 076142 157163 000225 aa 137143 157155 000226 aa 155157 156056 000227 aa 151156 143154 000230 aa 056141 154155 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number  606 adkx2 qdisk: 97, 110.  12233 amaxio test: 182, 184,  bos_tv: 48. 12224 amdvt test: 137, 151, 169, 204, 229, 250, 281, 360,  bos_tv: 41. 12225 amfirst test: 171, 181, 191, 195, 202, 283, 316, 317, 337, bos_tv: 42. 12226 amlast test: 192, 194, 318, 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 test: 60, 89, 100, 109, 117, 128,  qdisk: 111, bos_tv: 14, 15.  12222 argbos bos_tv: 39. 122 argend test: 83, 133.  114 arger test: 64, 126.  17 arglen bosequ: 17, bos_tv: 15, 16, 17. 25 arglp test: 60, 67, 93, 104, 113, 121.  12223 argmul test: 56, bos_tv: 40. 53 argpatern test: 81, 88.  35 argtab test: 63, 69, 85. 12201 arg_count bos_tv: 22. 12255 asge bos_tv: 66. 12256 asgetab bos_tv: 67. 566 ask_disk test: 141, qdisk: 97. 1573 bar bos_common: 26. 2 bf bosequ: 9. 12217 bosmul test: 228, bos_tv: 36. 12214 bosphy bos_tv: 33. 2012 bos_dvt bos_common: 53. 40000 bsize test: 29, 40, 144, 157, 176, 185, 187. 1 BULK_cd.frec config_cards: 30.  2 BULK_cd.nrec config_cards: 31.  12261 bzel bos_tv: 70. 446 checksw test: 71, 268, 372. 12312 check_cpu_type bos_tv: 95. 12311 check_special_status bos_tv: 94. 12274 check_status test: 308, bos_tv: 81. 12310 check_status_no_stat bos_tv: 93. 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.  374 cker test: 287, 300, 305, 328.  425 ckerx2 test: 328, 349.  337 ckmklim test: 279, 291, 293. 331 ckmklp test: 285, 292.  342 ckpat test: 277, 295, 306. 2032 cmdlst bos_common: 68. 6 com bosequ: 14, qdisk: 26. 3000 conf bos_common: 85, 86.  20 confl bos_common: 87. 12272 connect_iom bos_tv: 79. 2003 corearea bos_common: 47. 1610 coreblocks bos_common: 30. 133 cpatern test: 145, 149.  700 cuhist bos_common: 15. 2027 curtcmd bos_common: 66. 12270 cvclock qdisk: 68, bos_tv: 77. 12210 cvinit bos_tv: 29. 12227 cvnamla test: 235, bos_tv: 44. 2024 d355_state bos_common: 63. 12060 darg test: 92, 103, 112, 120,  bos_tv: 15, 16.  1570 dbr bos_common: 24. 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. 600 dirlen bos_common: 70, 76.  2014 diskchanno bos_common: 55. 12236 disk_brief test: 79, 213, 260, 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.  166 doio test: 161, 167, 181. 0 ds test: 43, bosequ: 7. 312 e64a test: 261, 264.  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 test: 126, 215, 233, 243, 262, 340,  qdisk: 53, 71, 99, bos_tv: 54. 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. 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. 12207 getsec bos_tv: 28. 12275 get_special_interrupt bos_tv: 82. 12276 get_status_interrupt bos_tv: 83. 12304 hexwd bos_tv: 89. 12300 initint bos_tv: 85. 12271 init_io test: 36, bos_tv: 78. 2021 inputsw bos_common: 60. 12302 intno bos_tv: 87. 1572 intrpts bos_common: 25. 12303 intrpts1 bos_tv: 88. 445 iocall test: 164, 359, 370. 313 iod test: 211, 268.  356 iodone test: 200, 269, 296, 308.  452 iolen test: 199, 206, 208, 217, 220, 227, 246, 255, 271, 313, 376. 2011 iom_mbbase bos_common: 52. 2010 iom_mxbase bos_common: 51. 443 ioperr test: 362, 367.  434 ioproc test: 209, 223, 357. 441 iopx2 test: 357, 364, 367. 432 is test: 331, 346, 347, 355.  12237 itaper bos_tv: 52. 12240 itapew bos_tv: 53. 142 l1 test: 154, 319.  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.  12206 ldcom bos_tv: 27. 12001 line test: 51, bos_tv: 13, 14.  12257 ljust bos_tv: 68. 12220 lookup_devmodel bos_tv: 37. 1620 lowport_cfg bos_common: 34. 1530 low_order_port bos_common: 20. 2716 macroargs bos_common: 78. 2600 macrobuf bos_common: 76, 77, 85. 2700 macroline bos_common: 77, 78.  2022 macroloc bos_common: 61. 12205 makefil bos_tv: 26. 12221 makesdw test: 41, bos_tv: 38. 451 marksw test: 73, 166, 276, 375.  1550 mcm bos_common: 23. 1532 mctime bos_common: 21. 7 mem test: 47, 50, 326, bosequ: 15. 1574 modereg bos_common: 27. 12216 mulbos test: 203, qdisk: 35, bos_tv: 35. 623 Multics_label qdisk: 50, 128.  16 nargtab test: 62, 85.  12202 nextline bos_tv: 23. 12203 nlraw bos_tv: 24. 151 noclear test: 155, 163.  140 noprime test: 134, 151.  205 not_last test: 193, 197.  33 nxtarg test: 66, 124.  12252 octwd bos_tv: 63. 427 off test: 334, 343, 352. 500 ouhist bos_common: 14. 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.  454 patern test: 94, 95, 96, 97, 105, 106, 114, 122, 146, 284, 297, 302, 379. 3 pgm bosequ: 10. 12215 phyadd bos_tv: 34. 12213 phybos bos_tv: 32. 132 prime test: 139, 144.  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. 616 qdkadr qdisk: 40, 59, 122. 634 qdkbuf qdisk: 45, 49, 64, 67, 126, 132.  622 qdkdesc qdisk: 57, 126.  613 qdkdevt qdisk: 18, 36, 44, 63, 119. 564 qdkerr qdisk: 37, 46, 65, 85.  615 qdkno qdisk: 31, 56, 102, 121.  562 qdknv qdisk: 22, 51, 81. 614 qdksubsys qdisk: 27, 55, 101, 120.  620 qdktime qdisk: 69, 73, 74, 124.  560 qdkx2 qdisk: 15, 77, 81, 85.  460 query_disk test: 136, qdisk: 14. 2020 quietsw bos_common: 59. 12267 rdclock bos_tv: 76. 12211 rdev test: 370, qdisk: 43, 62,  bos_tv: 30. 2016 rdrchanno bos_common: 57. 12234 rdsec bos_tv: 49. 12246 readcd bos_tv: 59. 12247 readtty qdisk: 105, bos_tv: 60. 2030 readysw bos_common: 67. 12232 rec_per_dev_list bos_tv: 47. 1520 regs bos_common: 19. 450 rewritsw test: 77, 240, 374. 12260 rjust bos_tv: 69. 2 ROOT_cd.drive config_cards: 7.  1 ROOT_cd.sub config_cards: 6.  4000 runcom_bit bosequ: 19. 221 s64 test: 210, 213.  232 s64a test: 214, 217.  430 sb test: 329, 344, 345, 348, 354. 12200 scan test: 53, qdisk: 108, bos_tv: 21. 1540 scu bos_common: 22. 14 sdw.add_shift bos_sdw: 4. 377770 sdw.bound bos_sdw: 12. 40000 sdw.cache bos_sdw: 20. 4 sdw.df bos_sdw: 9. 37777 sdw.entry_bound bos_sdw: 21. 100000 sdw.entry_bound_sw bos_sdw: 19. 2 sdw.execute bos_sdw: 14. 3 sdw.fault_code bos_sdw: 10. 400000 sdw.privileged bos_sdw: 17. 7000 sdw.r1 bos_sdw: 5. 700 sdw.r2 bos_sdw: 6. 70 sdw.r3 bos_sdw: 7. 4 sdw.read bos_sdw: 13. 200000 sdw.unpaged bos_sdw: 18. 1 sdw.write bos_sdw: 15. 12204 search bos_tv: 25. 426 sect test: 231, 236, 338, 342, 351. 12230 sect_per_cyl_list bos_tv: 45. 12231 sect_per_dev_list bos_tv: 46. 7000 seg6length bos_common: 90. 2004 setuparea bos_common: 49. 2025 skipsw bos_common: 64. 275 sle test: 225, 239, 241, 254.  234 sloop test: 220, 258.  2000 storlen bos_common: 36. 12262 stripa bos_tv: 71. 12263 stripg bos_tv: 72. 2015 tapechanno bos_common: 56. 1 tmp test: 43, 147, 160, 173, 251, 256, 264, 285, 288, 298, 303, 330,  361, bosequ: 8. 2017 ttychanno bos_common: 58. 12245 ttyinit test: 37, bos_tv: 58. 2026 ttypmtsw bos_common: 65. 371 ttyrequest test: 38, 323.  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. 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 test: 163, 249,  bos_tv: 31. 447 writsw test: 75, 133, 154, 238, 373. 12235 wtsec bos_tv: 50. 371 x2 test: 35, 42, 46, 57, 129, 138, 142, 205, 324. 12277 xio_wait bos_tv: 84. 4 xs1 bosequ: 11. 5 xs2 bosequ: 12. 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