ASSEMBLY LISTING OF SEGMENT >spec>h>3.17>dump.alm ASSEMBLED ON: 11/29/83 1520.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 " The BOS dump program. 7 " Modified 5/11/75 by Noel I. Morris.  8 " Last modified 2/11/81 by Sherman D.Sprague for DPS8 support.  000000 9 name dump  10  11  12 " ******************************************************  13 " * *  14 " * *  15 " * Copyright (c) 1972 by Massachusetts Institute of *  16 " * Technology and Honeywell Information Systems, Inc. *  17 " * *  18 " * *  19 " ******************************************************  20  21  000100 22 equ dmpbufl,64 Length of dump buffer  23  24 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  25  26 " 000000 0a 000141 7420 00 27 stx2 x2  000001 aa 012300 7020 00 28 tsx2 initint Initialize the fault and interrupts 000002 0a 000037 0000 00 29 arg execint  30  000003 aa 012271 7020 00 31 tsx2 init_io " Initialize the IOM routines.  000004 aa 012210 7020 00 32 tsx2 cvinit init disk addr conversion prog  33  000005 aa 012245 7020 00 34 tsx2 ttyinit  000006 0a 000037 0000 00 35 arg ttyrequest 36  000007 0a 004034 2350 00 37 lda =h apnd "apnd" in A  000010 aa 007000 6360 00 38 eaq apnd_org origin of appending package in QU  000011 aa 012206 7020 00 39 tsx2 ldcom load in the appending package  000012 0a 000141 7100 00 40 tra x2 .. 41  000013 aa 6 01570 2371 00 42 ldaq com|dbr  000014 aa 007000 7570 00 43 staq cmdbr "use possible new dbr 000015 aa 000100 6350 00 44 eaa dmpbufl "length of apnd buffer in AU 000016 aa 007026 7020 00 45 tsx2 getinit "and get new sdws  46  000017 0a 004035 2350 00 47 lda =h sstn  000020 aa 006000 6360 00 48 eaq sstn_org origin of SST name table filler  000021 aa 012206 7020 00 49 tsx2 ldcom load package  000022 0a 000024 7100 00 50 tra *+2  000023 aa 006000 7020 00 51 tsx2 sstn_org execute package 52  000024 0a 003437 7020 00 53 tsx2 initsstnt initialize SST name table package  54  000025 0a 004036 2350 00 55 lda =h ptpkg  000026 aa 006000 6360 00 56 eaq pt_org origin of print package in QU  000027 aa 012206 7020 00 57 tsx2 ldcom load the print package 000030 0a 000141 7100 00 58 tra x2 59  000031 aa 000000 1004 00 60 mlr (),() copy the page heading  000032 0a 002370 020030 61 desc6a nheading,nheading_lth*6 000033 aa 006016 020030 62 desc6a pthdr,nheading_lth*6  63  000034 aa 012267 7020 00 64 tsx2 rdclock "convert clock and put time in header.  000035 aa 006022 7550 00 65 sta pthdr+4  000036 aa 006023 7560 00 66 stq pthdr+5  67  68  000037 69 execint:  000037 70 ttyrequest: 000037 aa 006015 4500 00 71 stz ptsegno  000040 0a 000044 7100 00 72 tra cycle  73  000041 aa 012241 7020 00 74 qm: tsx2 erpt "print ?  000042 aa 002 136 147 000 75 acc '^g'  000043 0a 004037 0000 00 76 arg =h!!????  77  000044 aa 012202 7020 00 78 cycle: tsx2 nextline  79  000045 aa 000000 1004 00 80 mlr (),() Move card to header line.  000046 aa 012001 020110 81 desc6a line,72 000047 aa 006024 020110 82 desc6a pthdr+6,72  83  000050 aa 000000 2210 03 84 ldx1 0,du  000051 aa 012040 2350 00 85 lda arg  000052 aa 044300 5202 02 86 rpt ncoms/2,2,tze  000053 0a 000070 1150 11 87 cmpa comtab,1  000054 0a 000060 6000 00 88 tze command_found  000055 aa 006010 7020 00 89 tsx2 initprint "command not found  000056 aa 006004 7020 00 90 tsx2 headform "print it  000057 0a 000041 7100 00 91 tra qm 92  000060 93 command_found:  000060 aa 777777 2350 11 94 lda -1,1 "tra to routine indicated  000061 aa 000001 3150 07 95 cana =1,dl "if bit on, don't print header  000062 0a 000065 6010 00 96 tnz *+3  000063 aa 006010 7020 00 97 tsx2 initprint "print header 000064 aa 006004 7020 00 98 tsx2 headform  000065 aa 777777 2350 11 99 lda -1,1  000066 aa 000000 7020 01 100 tsx2 0,au "may be subroutine 000067 0a 000044 7100 00 101 tra cycle  102  103 " 104  000070 105 comtab: null  000070 aa 202 024 644 447 106 bci " dump"  000071 0a 000310 000000 107 zero dump "default dump  000072 aa 202 020 212 262 108 bci " abs"  000073 0a 000166 000000 109 zero octaldump "abs oct dump 000074 aa 202 020 622 527 110 bci " seg"  000075 0a 000222 000001 111 zero oneseg,1 "single segment  000076 aa 202 020 242 251 112 bci " dbr"  000077 0a 000270 000000 113 zero newdbr "set dbr and dump  000100 aa 202 023 464 563 114 bci " cont"  000101 0a 000247 000001 115 zero contin,1 "dump from segno  000102 aa 206 263 212 342 116 bci " stack"  000103 0a 001714 000001 117 zero stackdump,1 "dump stack frames  000104 aa 202 063 214 725 118 bci " tape"  000105 aa 006001 000001 119 zero tapeon,1 "dump to tape  000106 aa 202 020 475 163 120 bci " prt"  000107 aa 006000 000001 121 zero printon,1 "dump to printer  000110 aa 202 020 512 527 122 bci " reg"  000111 0a 000146 000000 123 zero dumpreg "dump regs and desc seg 000112 aa 202 020 254 626 124 bci " eof"  000113 aa 006002 000000 125 zero wteof "write eof  000114 aa 202 020 242 565 126 bci " dev"  000115 0a 000317 000000 127 zero devdump  000116 aa 202 050 643 163 128 bci " quit"  000117 0a 000140 000001 129 zero quit,1 "return to bos  000120 aa 777777 777777 130 oct 777777777777 "null command  000121 0a 000044 000000 131 zero cycle "comment  000122 aa 202 026 314 343 132 bci " fill"  000123 0a 000143 000000 133 zero call_fill 000124 aa 202 020 202 746 134 bci " go"  000125 0a 000134 000001 135 zero go,1  000126 aa 204 721 632 330 136 patchw: bci " patch"  000127 0a 000136 000001 137 zero patch,1  000130 aa 202 047 514 623 138 bci " proc"  000131 0a 002374 000000 139 zero proc  000132 aa 234 645 263 127 140 bci "config"  000133 0a 000151 000000 141 zero configp  142  000044 143 equ ncoms,*-comtab 144  145  146 "  000134 0a 004040 2350 00 147 go: lda =hcontin  000135 0a 000141 7100 00 148 tra bosret 149  000136 0a 000126 2350 00 150 patch: lda patchw "pathc  000137 0a 000141 7100 00 151 tra bosret 152  000140 aa 000001 3350 07 153 quit: lca =1,dl "none 154  000141 155 bosret: 000141 0a 000141 6220 00 156 x2: eax2 * "if so, return 000142 aa 7 00001 7101 12 157 tra mem|1,2  158  159 "  160 "fill certain variables 161  000143 162 call_fill:  000143 0a 003234 7020 00 163 tsx2 fill  000144 0a 000041 7100 00 164 tra qm 165  000145 0a 000044 7100 00 166 tra cycle  167  168  169 "  170 "dumpreg to dump regs and desc seg  000146 0a 000446 7020 00 171 dumpreg: tsx2 printreg  000147 0a 001274 7020 00 172 tsx2 descrseg "dump desc seg 000150 0a 000044 7100 00 173 tra cycle  174  175 "  176 " To print out the configuration deck.  177  000151 0a 000164 7420 00 178 configp: stx2 conf_x2  000152 aa 000000 6200 00 179 eax0 0 " Set up loop on all config cards. 180  000153 aa 006003 7020 00 181 tsx2 space " Clear line buffer.  000154 aa 006005 7020 00 182 tsx2 print " Print one line.  183  000155 184 config_loop:  000155 aa 6 03000 2351 10 185 lda com|conf,0 " Get next parameter.  000156 0a 000164 6040 00 186 tmi conf_x2 " Test for completion.  187  000157 0a 003321 7020 00 188 tsx2 config_print " Convert card for printing. 189  000160 aa 006005 7020 00 190 tsx2 print " Print the card.  191  000161 aa 000020 6200 10 192 eax0 confl,0 " Step to next card. 000162 aa 004000 1000 03 193 cmpx0 econf-conf,du " Are we finished? 000163 0a 000155 6040 00 194 tmi config_loop " If not, loop.  195  000164 0a 000164 6220 00 196 conf_x2: eax2 * " Restore X2.  000165 aa 000000 7100 12 197 tra 0,2 " And return. 198  199 "  200 "entry when switches indicate to take an octal dump 201  000166 202 octaldump: null 000166 aa 012041 2350 00 203 lda arg+1 "get starting loc  000167 0a 004041 1150 00 204 cmpa =-1  000170 0a 000172 6010 00 205 tnz *+2  000171 aa 000000 2350 07 206 lda =0,dl  000172 aa 000006 7710 00 207 arl 6 "get block addr  000173 aa 000000 6200 05 208 eax0 0,al  209  000174 aa 012042 2350 00 210 lda arg+2 "get count 000175 0a 000200 6000 00 211 tze *+3  000176 0a 004041 1150 00 212 cmpa =-1  000177 0a 000201 6010 00 213 tnz *+2  000200 aa 000100 2350 07 214 lda =o100,dl  000201 aa 000077 0750 07 215 ada =o77,dl "go to next 64  000202 aa 000006 7710 00 216 arl 6  000203 aa 000000 6210 05 217 eax1 0,al  000204 aa 006003 7020 00 218 tsx2 space 219  000205 aa 000000 6350 10 220 octalloop: eaa 0,0 "block addr to a  000206 aa 012252 7020 00 221 tsx2 octwd "edit location  000207 aa 012002 7550 00 222 sta line+1 223  000210 aa 007010 4500 00 224 stz fetchin  000211 aa 007010 7400 00 225 stx0 fetchin "get block location 000212 aa 007037 7020 00 226 tsx2 fetch 000213 0a 000216 0000 00 227 arg octalend  228  000214 aa 006006 7020 00 229 tsx2 ptblock "print 64 words 000215 aa 007004 000100 230 zero fetchout,64  231  000216 aa 000001 6200 10 232 octalend: eax0 1,0 "go to next block  000217 aa 777777 6210 11 233 eax1 -1,1  000220 0a 000205 6010 00 234 tnz octalloop  000221 0a 000044 7100 00 235 tra cycle "dump is finished  236  237 "  238 "dump 1 seg only  000222 239 oneseg: null  000222 aa 000001 6270 00 240 eax7 1 arg number for collect segname 000223 0a 003775 7020 00 241 tsx2 collect_segname  000224 0a 004041 1150 00 242 cmpa =-1  000225 0a 000041 6000 00 243 tze qm "if not given, ignore 000226 aa 000022 7350 00 244 als 18 000227 0a 001560 7550 00 245 sta segno  000230 0a 001473 7020 00 246 tsx2 segprint "edit the segment  000231 0a 000233 7100 00 247 tra onesegno "if error  000232 0a 000044 7100 00 248 tra cycle "done  000233 249 onesegno: null "requested segemnt not present  000233 aa 006003 7020 00 250 tsx2 space 000234 0a 002364 2370 00 251 ldaq nsegno "print message  000235 aa 012005 7550 00 252 sta line+4 000236 aa 012006 7560 00 253 stq line+4+1  000237 0a 001560 2350 00 254 lda segno  000240 aa 012252 7020 00 255 tsx2 octwd 000241 aa 012007 7550 00 256 sta line+6 "store edited segment number  000242 0a 002336 2370 00 257 ldaq notincore 000243 aa 012011 7550 00 258 sta line+8 000244 aa 012012 7560 00 259 stq line+8+1  000245 aa 006005 7020 00 260 tsx2 print "print message  000246 0a 000044 7100 00 261 tra cycle "we are done  262  263 "  264 " Start dump from a given segment number.  265  000247 266 contin: null  000247 aa 012041 2350 00 267 lda arg+1 " Get starting segno  000250 0a 004041 1150 00 268 cmpa =-1  000251 0a 000253 6010 00 269 tnz *+2  000252 aa 000000 2350 07 270 lda =0,dl  000253 aa 200000 1150 03 271 cmpa =o200000,du "if a alpha  000254 0a 000263 6050 00 272 tpl contal 000255 aa 777767 6270 00 273 eax7 -9 "move args down if segno given  000256 aa 012053 2360 17 274 ldq arg+9+2,7  000257 aa 012052 7560 17 275 stq arg+9+1,7  000260 aa 000001 6270 17 276 eax7 1,7  000261 0a 000256 6040 00 277 tmi *-3  000262 0a 000264 7100 00 278 tra *+2  000263 aa 000000 2350 07 279 contal: lda =0,dl "use zero  000264 aa 000022 7350 00 280 als 18 000265 0a 001560 7550 00 281 sta segno  000266 0a 001357 7020 00 282 tsx2 allsegsn "start print  000267 0a 000044 7100 00 283 tra cycle  284  285 "  286 " Get new dbr and initiate print.  287 " Where necessary turn ON bits to make the DBR look like a valid SDW.  288  000270 289 newdbr: null  000270 aa 012041 2350 00 290 lda arg+1 "get dbr val  000271 0a 004041 1150 00 291 cmpa =-1  000272 0a 000305 6000 00 292 tze dbrpt "if not given, ignore  293  000273 0a 004042 3750 00 294 ana =o000077777777 Zero all but DBR.ADDR 000274 aa 000014 7350 00 295 als 12 Shift into DBR.ADDR position. 000275 aa 000004 2750 07 296 ora sdw.df,dl Turn on F bit.  000276 aa 007000 7550 00 297 sta cmdbr Store DBR word 1. 298  000277 aa 012042 2350 00 299 lda arg+2 "get bound and bits  000300 0a 004041 1150 00 300 cmpa =-1  000301 0a 000305 6000 00 301 tze dbrpt "if not given use old  302  000302 0a 004043 3750 00 303 ana =o377770207777 Mask off all but BOUND, U and STACK.  000303 aa 000005 2750 03 304 ora =o000005,du Turn on R and W bits. 000304 aa 007001 7550 00 305 sta cmdbr+1  306  000305 0a 001107 7020 00 307 dbrpt: tsx2 print_dbr  000306 aa 007026 7020 00 308 tsx2 getinit  000307 0a 000044 7100 00 309 tra cycle  310  311 "  312 "entry to dump everything  000310 313 dump: null  000310 0a 000446 7020 00 314 tsx2 printreg "print registers  000311 0a 001274 7020 00 315 tsx2 descrseg "dump desc segment 000312 aa 006004 7020 00 316 tsx2 headform  000313 0a 000151 7020 00 317 tsx2 configp "print config deck. 000314 0a 001356 7020 00 318 tsx2 allsegs "dump all segments  000315 0a 001762 7020 00 319 tsx2 sptrace "and print stack  000316 0a 000044 7100 00 320 tra cycle  321  322 "  323 " Called with ASCII type in A.  324  325 " DEV VOL  326 " DEV PHY 327 " DEV PART  328  000317 aa 000001 6200 00 329 devdump: eax0 1 Here to dump disks or bulk store  000320 aa 012222 7020 00 330 tsx2 argbos scan args 000321 0a 000442 0000 00 331 arg dmpdid will return did  000322 0a 000443 0000 00 332 arg dmpps sector number to be printed 000323 0a 000041 7100 00 333 tra qm if error  334  000324 aa 000000 6270 05 335 eax7 0,al length of sector in X7  000325 aa 007777 3670 03 336 anx7 =o7777,du Mask the sector length.  000326 0a 000441 4500 00 337 stz devmult clear Multics switch  000327 aa 000002 1070 03 338 cmpx7 2,du Multics address?  000330 0a 000332 6040 00 339 tmi *+2 if not, don't set switch  000331 0a 000441 7500 00 340 stc2 devmult set Multics address switch  000332 0a 000426 7470 00 341 stx7 dmpol set offset limit  342  000333 aa 000000 2360 07 343 ldq 0,dl quit after first unless more args  000334 344 dev_garg:  000334 aa 012040 2350 10 345 lda arg,0 Look for number or for "for".  000335 0a 004041 1150 00 346 cmpa =-1  000336 0a 000347 6000 00 347 tze nofor  000337 0a 004044 1150 00 348 cmpa =h for  000340 0a 000343 6010 00 349 tnz *+3  000341 aa 000001 6200 10 350 eax0 1,0 for found get number of sectors  000342 0a 000334 7100 00 351 tra dev_garg  352  000343 aa 000001 1150 03 353 cmpa =1,du if not too big 000344 0a 000347 6050 00 354 tpl nofor  000345 0a 000443 0750 00 355 ada dmpps add to produce sector limit 000346 aa 000044 7730 00 356 lrl 36 000347 0a 000445 7560 00 357 nofor: stq dmpsl  000350 aa 007006 4500 00 358 stz read_args "we will clobber dmpbuf 359  000351 aa 000000 6200 00 360 sectl1: eax0 0 zero offset 000352 0a 000441 2340 00 361 szn devmult Multics address?  000353 0a 000365 6000 00 362 tze sectl if not, skip conversion and pd_check  363  000354 0a 000443 2350 00 364 lda dmpps get Multics address 000355 aa 012216 7020 00 365 tsx2 mulbos convert to BOS address  000356 0a 000442 0000 00 366 arg dmpdid 000357 0a 000041 7100 00 367 tra qm 368  000360 aa 007044 7020 00 369 tsx2 pd_check Search for pdmap entry.  000361 0a 000442 0000 00 370 arg dmpdid 000362 0a 000440 0000 00 371 arg pdmep  000363 0a 000364 7100 00 372 tra *+1  373  000364 0a 000444 7510 74 374 stca dmprs,74 set BOS sector number  375  000365 0a 000444 2350 00 376 sectl: lda dmprs get bos sector for read  000366 aa 012211 7020 00 377 tsx2 rdev  000367 0a 000442 0110 00 378 nop dmpdid 000370 aa 2 00000 0111 00 379 nop bf|0  000371 0a 000373 7100 00 380 tra rdbad  000372 0a 000410 7100 00 381 tra rdok  382  000373 aa 2 00000 7551 00 383 rdbad: sta bf|0 "save error code  000374 aa 006003 7020 00 384 tsx2 space 000375 0a 004045 2350 00 385 lda =hsector Print sector number  000376 aa 012003 7550 00 386 sta line+2 000377 0a 000443 2350 00 387 lda dmpps  000400 aa 012252 7020 00 388 tsx2 octwd 000401 aa 012005 7560 00 389 stq line+4 000402 aa 012004 7510 03 390 stca line+3,03 000403 aa 2 00000 2351 00 391 lda bf|0 Get error code  000404 aa 012252 7020 00 392 tsx2 octwd "otherwise print error word  000405 aa 012007 7550 00 393 sta line+6 000406 aa 012010 7560 00 394 stq line+6+1  000407 aa 006005 7020 00 395 tsx2 print and print line 396  000410 0a 000443 2350 00 397 rdok: lda dmpps get sector 000411 aa 012252 7020 00 398 tsx2 octwd 000412 aa 000030 7370 00 399 lls 24 000413 aa 012001 7550 00 400 sta line store sector 000414 aa 012002 7560 00 401 stq line+1 402  000415 aa 000000 6350 10 403 eaa 0,0 get offset  000416 aa 012252 7020 00 404 tsx2 octwd 000417 0a 004046 2750 00 405 ora =h00 00  000420 aa 012002 7510 17 406 stca line+1,17 store offset  407  000421 aa 006006 7020 00 408 tsx2 ptblock Print 64 words  000422 0a 000436 000100 409 zero dmpfet,64 410  000423 aa 010000 2350 07 411 lda =o10000,dl Go to new sector  000424 0a 000444 0550 00 412 asa dmprs bump bos sector 000425 aa 000001 6200 10 413 eax0 1,0 bump offset  000426 0a 000426 1000 03 414 dmpol: cmpx0 *,du  000427 0a 000365 6040 00 415 tmi sectl  416  000430 0a 000443 0540 00 417 aos dmpps bump sector 000431 0a 000443 2350 00 418 lda dmpps  000432 0a 000445 1150 00 419 cmpa dmpsl compare against sector limit  000433 0a 000351 6040 00 420 tmi sectl1 000434 0a 000044 7100 00 421 tra cycle done  422  000435 aa 000000 0110 03 423 even  000436 aa 000002 000043 424 dmpfet: its bf,0 "its pointer to dump buffer.  000437 aa 000000 000000 425  000440 aa 000000 000000 426 pdmep: oct 0  000441 aa 000000 000000 427 devmult: oct 0  000442 aa 000000 000000 428 dmpdid: oct 0  000443 aa 000000 000000 429 dmpps: oct 0  000444 aa 000000 000001 430 dmprs: vfd 24/0,12/1  000445 aa 000000 000000 431 dmpsl: oct 0  432  433 "  434 "print the registers  435  000446 436 printreg: null  000446 0a 001067 7420 00 437 stx2 regsretn  438  439  440  441 " Print DBR.  000447 0a 001107 7020 00 442 tsx2 print_dbr 443  444  445 " Print PPR  446  000450 0a 001072 7020 00 447 tsx2 print_hdr Print PPR header line.  000451 0a 002176 020026 448 desc6a nppr_hdr,22 449  000452 aa 6 01540 2351 00 450 lda com|scu Get PPR.PRR and PPR.PSR  000453 aa 012252 7020 00 451 tsx2 octwd Convert to GEBCD. 000454 aa 012005 7510 40 452 stca line+4,40 Store PPR.PRR.  000455 aa 000022 7730 00 453 lrl 18 Position for PSR. 000456 aa 012005 7510 03 454 stca line+4,03 Store PPR.PSR.  000457 aa 012006 7520 70 455 stcq line+5,70 456  000460 aa 6 01544 2351 00 457 lda com|scu+scu.ilc_word Get PPR.IC.  000461 aa 012252 7020 00 458 tsx2 octwd 000462 aa 012007 7550 00 459 sta line+6 Store the PPR.IC. 000463 aa 006005 7020 00 460 tsx2 print Now print the PPR. 000464 aa 006003 7020 00 461 tsx2 space Skip two lines.  000465 aa 006005 7020 00 462 tsx2 print 000466 aa 006005 7020 00 463 tsx2 print 464  465  466 " Print time of machine conditions. 467  000467 0a 004047 2350 00 468 lda =htime "  000470 aa 012004 7550 00 469 sta line+3 000471 aa 6 01532 2371 00 470 ldaq com|mctime Get time BOS entered.  000472 aa 012270 7020 00 471 tsx2 cvclock Convert. 000473 aa 012005 7550 00 472 sta line+4 000474 aa 012006 7560 00 473 stq line+5 000475 aa 006005 7020 00 474 tsx2 print 000476 aa 006003 7020 00 475 tsx2 space 000477 aa 006005 7020 00 476 tsx2 print 477  478  479 " Now print the Ring Alarm Register.  480  000500 0a 004050 2350 00 481 lda =hralr " Set up RALR name.  000501 aa 012004 7550 00 482 sta line+3 000502 aa 6 01527 2351 00 483 lda com|regs+7 Get RALR.  000503 aa 012252 7020 00 484 tsx2 octwd 000504 aa 000036 7360 00 485 qls 30 Position RALR field.  000505 aa 012005 7520 40 486 stcq line+4,40 Store RALR.  000506 aa 006005 7020 00 487 tsx2 print And now print the RALR line.  488  489  490 " Now print the registers from the table.  491  000507 aa 000000 6200 00 492 eax0 0 "do simple regs driven from table 000510 aa 006003 7020 00 493 pregl: tsx2 space "blank line 000511 0a 001240 2350 10 494 lda regtab,0 "get control word  000512 aa 000017 7710 00 495 arl 15 Right justify bits (0-2). 000513 aa 000000 6210 01 496 eax1 0,au "blank, left, right, both code 497  000514 0a 001240 2350 10 498 lda regtab,0 Get control word again. 000515 aa 077777 3750 03 499 ana =o077777,du Zero code field.  500  501 " The following code is used to print words from the dump program itself -  502 " segment pgm. This feature is currently not being used. If it is ever 503 " needed just reinstate the following 5 instructions and the label seg_com. 504  505 " " " " " " " " "  506 "  507 " cana =o040000,du If bit (3) is ON then get the word  508 " to be printed from segment (pgm).  509 " tze seg_com If OFF get word from bos_common.  510 " ana =o037777,du Turn OFF the segment (pgm) bit.  511 " lda pgm|0,au Get word from dump itself (pgm).  512 " tra convert_word  513 "  514 "seg_com:  515 "  516 " " " " " " " " "  517  000516 aa 6 00000 2351 01 518 lda com|0,au Get word from bos_common (com).  000517 519 convert_word:  000517 aa 012252 7020 00 520 tsx2 octwd 000520 0a 000522 7160 11 521 xec *+2,1 Execute according to code in X1.  000521 0a 000533 7100 00 522 tra regnam Come here if inst XECd not a "tra".  523  000522 0a 000536 7100 00 524 tra regblk Code = 0 => blank line  000523 aa 012005 7550 00 525 sta line+4 Code = 1 => left half  000524 aa 012005 7560 00 526 stq line+4 Code = 2 => right half  000525 0a 000526 7100 00 527 tra *+1 Code = 3 => both, grab control 000526 aa 012005 7550 00 528 sta line+4 Store left half. 000527 0a 004051 2350 00 529 lda =h " Insert one blank between left and 000530 aa 000036 7770 00 530 llr 36-6 right halves. Three blanks now 000531 aa 012006 7550 00 531 sta line+5 on end of right half. 000532 aa 012007 7560 00 532 stq line+6 533  000533 0a 001240 2350 10 534 regnam: lda regtab,0 "get name from table 000534 aa 000000 2350 05 535 lda 0,al  000535 aa 012004 7550 00 536 sta line+3 537  000536 aa 006005 7020 00 538 regblk: tsx2 print "print line  000537 aa 000001 6200 10 539 eax0 1,0  000540 aa 000034 1000 03 540 cmpx0 nregs,du 000541 0a 000510 6010 00 541 tnz pregl  542  543  544 " Dump the 8 pointer registers.  545  000542 0a 001072 7020 00 546 tsx2 print_hdr Print PR header line.  000543 0a 002165 020035 547 desc6a npr_hdr,29  548  000544 aa 000000 6210 00 549 eax1 0 Initialize loop index.  550  000545 551 pr_loop:  000545 0a 002311 2350 11 552 lda npr0,1 Get name of PR.  000546 aa 012003 7550 00 553 sta line+2 000547 0a 002312 2350 11 554 lda npr0+1,1  000550 aa 012004 7550 00 555 sta line+3 556  000551 aa 6 01500 2351 11 557 lda com|prs,1 Get first word of PR. 000552 aa 012252 7020 00 558 tsx2 octwd 000553 aa 012005 7520 40 559 stcq line+4,40 Store RNR field.  000554 aa 000022 7730 00 560 lrl 18 Position SNR field. 000555 aa 012005 7510 03 561 stca line+4,03 Store SNR field.  000556 aa 012006 7520 70 562 stcq line+5,70 563  000557 aa 6 01501 2351 11 564 lda com|prs+1,1 Get second word of PR.  000560 aa 012252 7020 00 565 tsx2 octwd 000561 aa 012007 7550 00 566 sta line+6 Store ADDR (word) field. 000562 aa 000006 7720 00 567 qrl 6 Position ADDR (char-bit) field.  000563 aa 012010 7520 14 568 stcq line+7,14 Now store it. 569  000564 aa 006005 7020 00 570 tsx2 print Now print one pointer register.  000565 aa 006003 7020 00 571 tsx2 space 572  000566 aa 000002 6210 11 573 eax1 2,1 Up index to next PR. (takes 2 words)  000567 aa 000020 1010 03 574 cmpx1 8*2,du Have we printed all of the PRs?  000570 0a 000545 6010 00 575 tnz pr_loop Tra if no.  576  577  578 " Print Associative Memory.  579 " Start by printing the AMSDW Registers and Pointers.  580  000571 aa 006004 7020 00 581 tsx2 headform Start on a new page.  582  000572 0a 001072 7020 00 583 tsx2 print_hdr Print SDW Ass.Mem header line. 000573 0a 002221 020075 584 desc6a namsdw_hdr,61  585  000574 aa 000000 6210 00 586 eax1 0 Index to SDW Registers. 000575 aa 000000 6200 00 587 eax0 0 Index to SDW Pointers.  588  000576 589 amsdw_loop: 000576 aa 6 00200 2371 11 590 ldaq com|amsdwregs,1 Get an Ass.Mem SDW reg.  000577 aa 400000 2760 03 591 orq =o400000,du Tell prt_sdw_seg this is from A.M.  000600 0a 001133 7020 00 592 tsx2 prt_sdw_reg Move it into "line" but don't print. 593  000601 aa 6 00400 2351 10 594 lda com|amsdwptr,0 Get an Ass.Mem SDW pointer.  000602 aa 000400 3150 07 595 cana =o000400,dl First test the F bit.  000603 0a 000606 6000 00 596 tze *+3 Tra if off.  000604 0a 004052 2360 00 597 ldq =h f " It is on so store "F".  000605 0a 000607 7100 00 598 tra *+2  000606 0a 004053 2360 00 599 ldq =h e " It is off so store "E".  000607 aa 012014 7560 00 600 stq line+11  601  000610 aa 012252 7020 00 602 tsx2 octwd 000611 aa 000006 7710 00 603 arl 6  000612 aa 012013 7510 37 604 stca line+10,37 Store POINTER field.  605  000613 aa 000006 7360 00 606 qls 6 Position and store USAGE field.  000614 aa 012015 7520 06 607 stcq line+12,06  608  000615 aa 006005 7020 00 609 tsx2 print Now print one Ass. Mem. SDW.  000616 aa 006003 7020 00 610 tsx2 space 611  000617 aa 000001 6200 10 612 eax0 1,0 Up pointer index by 1.  000620 aa 000002 6210 11 613 eax1 2,1 But register index by 2.  000621 aa 6 01301 2351 00 614 lda com|aphist+1 check machine type dump made on  000622 aa 000001 3750 07 615 ana =o1,dl 000623 0a 000630 6010 00 616 tnz amsdw_l68 move on if L68 000624 aa 000100 1000 03 617 cmpx0 =64,du compare used if dps8  000625 0a 000576 6010 00 618 tnz amsdw_loop tra if no  000626 aa 006004 7020 00 619 tsx2 headform  000627 0a 000632 7100 00 620 tra *+3 transfer on if dps8  000630 621 amsdw_l68: 000630 aa 000020 1000 03 622 cmpx0 =16,du Printed all 16 SDWs?  000631 0a 000576 6010 00 623 tnz amsdw_loop Tra if no. 624  625  626 " Now print the AMPTW Registers and Pointers.  627  000632 0a 001072 7020 00 628 tsx2 print_hdr Print Ass.Mem. PTW header line.  000633 0a 002212 020052 629 desc6a namptw_hdr,42  630  000634 aa 000000 6210 00 631 eax1 0 Reset index for this next loop.  632  000635 633 amptw_loop: 000635 aa 6 00000 2351 11 634 lda com|amptwregs,1 Get a PTW Register word.  000636 aa 012252 7020 00 635 tsx2 octwd  000637 aa 012004 7550 00 636 sta line+3 Store ADDR field.  637  000640 aa 6 00000 2351 11 638 lda com|amptwregs,1 Get the PTW reg again.  000641 aa 777777 3750 07 639 ana -1,dl Zero ADDR field. 000642 aa 000006 7710 00 640 arl 6 Shift M bit into low order A bit.  000643 0a 002362 2350 05 641 lda nno,al Now use it as an index.  000644 aa 012005 7550 00 642 sta line+4 M = 0 => "no", M = 1 => "yes".  643  000645 aa 6 00100 2351 11 644 lda com|amptwptr,1 Get a PTW pointer word.  000646 aa 000400 3150 07 645 cana =o000400,dl 1st test F bit while we know where it is 000647 0a 000652 6000 00 646 tze *+3 Tra if off.  000650 0a 004054 2360 00 647 ldq =h f " It is on.  000651 0a 000653 7100 00 648 tra *+2  000652 0a 004055 2360 00 649 ldq =h e " It is off so store an "E". 000653 aa 012011 7560 00 650 stq line+8 Store "F" or "E".  651  000654 aa 012252 7020 00 652 tsx2 octwd Now convert pointer register to GEBCD.  000655 aa 000030 7770 00 653 llr 24 Shift to position POINTER field.  000656 aa 012006 7520 17 654 stcq line+5,17 Store POINTER field.  000657 aa 012007 7510 40 655 stca line+6,40 656  000660 aa 000006 7770 00 657 llr 6 Shift to position PAGE_NO field.  000661 aa 012010 7510 74 658 stca line+7,74 659  000662 aa 000022 7770 00 660 llr 18 Shift to position USAGE field.  000663 aa 012012 7510 14 661 stca line+9,14 662  000664 aa 006005 7020 00 663 tsx2 print Now print one Ass. Mem. PTW.  000665 aa 006003 7020 00 664 tsx2 space 665  000666 aa 000001 6210 11 666 eax1 1,1 Increment index to point to next words. 000667 aa 6 01301 2351 00 667 lda com|aphist+1 check machine type dump made on  000670 aa 000001 3750 07 668 ana =o1,dl 000671 0a 000676 6010 00 669 tnz amptw_l68 move on if L68 000672 aa 000100 1010 03 670 cmpx1 =64,du compare used if dps8  000673 0a 000635 6010 00 671 tnz amptw_loop tra if no  000674 aa 006004 7020 00 672 tsx2 headform  000675 0a 000700 7100 00 673 tra *+3 transfer on if dps8  000676 674 amptw_l68: 000676 aa 000020 1010 03 675 cmpx1 =16,du Have all 16 PTW regs & ptrs been printed?  000677 0a 000635 6010 00 676 tnz amptw_loop Tra if no. 677  678  679 " Now print the coreblocks, memory controller masks, and the history registers. 680 " First the coreblocks. 681  000700 aa 006004 7020 00 682 tsx2 headform Start on a new page.  683  000701 0a 001072 7020 00 684 tsx2 print_hdr Print coreblocks header line. 000702 0a 002202 020030 685 desc6a ncb_hdr,24  686  000703 aa 000000 2210 03 687 ldx1 0,du Set loop index.  000704 688 cb_loop:  000704 aa 6 01610 2351 11 689 lda com|coreblocks,1 Get a coreblocks word.  000705 0a 004041 1150 00 690 cmpa =-1 If word = -1 then port has no mem.  000706 0a 000714 6010 00 691 tnz port_has_mem ..  692  000707 0a 004056 2350 00 693 lda =hno mem No memory on this port. 000710 0a 004051 2360 00 694 ldq =h "  000711 aa 012006 7550 00 695 sta line+5 000712 aa 012007 7560 00 696 stq line+6 000713 0a 000723 7100 00 697 tra print_port 698  000714 699 port_has_mem:  000714 aa 012252 7020 00 700 tsx2 octwd Port has mem so convert word. 701  000715 aa 012007 7560 00 702 stq line+6 Save number of blocks.  000716 aa 012261 7020 00 703 tsx2 bzel Suppress zeros .  000717 aa 012006 7550 00 704 sta line+5 000720 aa 012007 2350 00 705 lda line+6 Get num of 1st block again.  000721 aa 012261 7020 00 706 tsx2 bzel Suppress its leading zeros too.  000722 aa 012007 7550 00 707 sta line+6 708  000723 709 print_port: 000723 aa 006005 7020 00 710 tsx2 print Now print one coreblocks word.  000724 aa 006003 7020 00 711 tsx2 space 712  000725 aa 000001 6210 11 713 eax1 1,1  000726 aa 000010 1010 03 714 cmpx1 =8,du Have we printed all 8 ports?  000727 0a 000704 6010 00 715 tnz cb_loop Tra if no.  716  717  718 " Now print the memory controller masks.  719  000730 0a 001072 7020 00 720 tsx2 print_hdr Print mem controller header line. 000731 0a 002206 020027 721 desc6a nmcm_hdr,23 000732 aa 006014 5540 00 722 stc1 ptbfirst  000733 aa 006006 7020 00 723 tsx2 ptblock Print it as one block.  000734 0a 001224 000020 724 zero mcmp1,16 Print 16 words.  725  726  727 " Now print the history registers. They will be printed as one block.  728  729 " print the ou history regs 000735 0a 001072 7020 00 730 tsx2 print_hdr Print ou regs header line.  000736 0a 002234 020051 731 desc6a nouhistreg_hdr,41  000737 aa 006003 7020 00 732 tsx2 space 733  000740 aa 006014 5540 00 734 stc1 ptbfirst  000741 aa 006006 7020 00 735 tsx2 ptblock  000742 0a 001226 000200 736 zero ouhrits,128 Print 128 words as one block.  000743 aa 006003 7020 00 737 tsx2 space 738  739 " print the cu history regs 000744 0a 001072 7020 00 740 tsx2 print_hdr Print cu regs header line.  000745 0a 002243 020051 741 desc6a ncuhistreg_hdr,41  000746 aa 006003 7020 00 742 tsx2 space 743  000747 aa 006014 5540 00 744 stc1 ptbfirst  000750 aa 006006 7020 00 745 tsx2 ptblock  000751 0a 001230 000200 746 zero cuhrits,128 Print 128 words as one block.  747  748 " print the du history regs 749  000752 aa 6 01301 2351 00 750 lda com|aphist+1  000753 aa 000001 3750 07 751 ana =o1,dl 000754 0a 000772 6000 00 752 tze dptapu 753  000755 0a 001072 7020 00 754 tsx2 print_hdr Print eis regs header line.  000756 0a 002252 020051 755 desc6a neishistreg_hdr,41  000757 aa 006003 7020 00 756 tsx2 space 757  000760 aa 006014 5540 00 758 stc1 ptbfirst  000761 aa 006006 7020 00 759 tsx2 ptblock  000762 0a 001232 000200 760 zero duhrits,128 Print 128 words as one block.  761  762 " print the apu history regs  000763 0a 001072 7020 00 763 tsx2 print_hdr Print apu regs header line.  000764 0a 002261 020051 764 desc6a napuhistreg_hdr,41  000765 aa 006003 7020 00 765 tsx2 space 766  000766 aa 006014 5540 00 767 stc1 ptbfirst  000767 aa 006006 7020 00 768 tsx2 ptblock  000770 0a 001234 000200 769 zero apuhrits,128 Print 128 words as one block.  000771 0a 001067 7100 00 770 tra regsretn  771  772 " print the DPS8 apu and apu extended history registers 000772 aa 006004 7020 00 773 dptapu: tsx2 headform  774  000773 0a 001072 7020 00 775 tsx2 print_hdr Print apu regs header line.  000774 0a 002261 020051 776 desc6a napuhistreg_hdr,41  000775 aa 006003 7020 00 777 tsx2 space 778  000776 aa 000000 2240 03 779 ldx4 0,du  000777 aa 000000 6350 14 780 dptlp: eaa 0,4  001000 aa 000023 7710 00 781 arl 1+18  001001 aa 012252 7020 00 782 tsx2 octwd 001002 aa 012002 7520 03 783 stcq line+1,03 001003 aa 6 01300 2351 14 784 lda com|aphist,4  001004 aa 012252 7020 00 785 tsx2 octwd 001005 0a 001070 7570 00 786 staq dtemp_buff  787  001006 aa 000030 6230 00 788 eax3 24  001007 aa 000013 1004 00 789 mlr (),(x3) lets put out the seg number  001010 0a 001070 020005 790 desc6a dtemp_buff,5  001011 aa 012001 020005 791 desc6a line,5  792  001012 aa 000007 6230 13 793 eax3 7,3 lets allow 2 spaces between fields  001013 aa 000013 1004 00 794 mlr (),(x3)  001014 0a 001070 520004 795 desc6a dtemp_buff(5),4 the next 4 char of the apu hist  001015 aa 012001 020004 796 desc6a line,4  797  001016 aa 000006 6230 13 798 eax3 6,3 stick in some more spaces  001017 aa 000013 1004 00 799 mlr (),(x3)  001020 0a 001071 320003 800 desc6a dtemp_buff+1(3),3 last 3 char of 1 st apu hist 001021 aa 012001 020003 801 desc6a line,3  802  001022 aa 6 01301 2351 14 803 lda com|aphist+1,4 001023 aa 012252 7020 00 804 tsx2 octwd 001024 0a 001070 7570 00 805 staq dtemp_buff get the next word  806  001025 aa 000011 6230 13 807 eax3 9,3 put in 6 spaces 001026 aa 000013 1004 00 808 mlr (),(x3)  001027 0a 001070 020010 809 desc6a dtemp_buff,8  001030 aa 012001 020010 810 desc6a line,8  811  001031 aa 000012 6230 13 812 eax3 10,3  001032 aa 000013 1004 00 813 mlr (),(x3)  001033 0a 001071 220004 814 desc6a dtemp_buff+1(2),4 last 4 char of 2nd word  001034 aa 012001 020004 815 desc6a line,4  816  001035 aa 6 01100 2351 14 817 lda com|eishist,4  001036 aa 012252 7020 00 818 tsx2 octwd 001037 0a 001070 7570 00 819 staq dtemp_buff  820  001040 aa 000020 6230 13 821 eax3 16,3  001041 aa 000013 1004 00 822 mlr (),(x3)  001042 0a 001070 020006 823 desc6a dtemp_buff,6 get offset from apu ext reg  001043 aa 012001 020006 824 desc6a line,6  825  001044 aa 000010 6230 13 826 eax3 8,3  001045 aa 000013 1004 00 827 mlr (),(x3)  001046 0a 001071 020003 828 desc6a dtemp_buff+1,3 pick up the op-code 001047 aa 012001 020003 829 desc6a line,3  830  001050 aa 000005 6230 13 831 eax3 5,3  001051 aa 000013 1004 00 832 mlr (),(x3)  001052 0a 001071 320003 833 desc6a dtemp_buff+1(3),3  001053 aa 012001 020003 834 desc6a line,3  835  001054 aa 6 01101 2351 14 836 lda com|eishist+1,4  001055 aa 012252 7020 00 837 tsx2 octwd 001056 0a 001070 7570 00 838 staq dtemp_buff  839  001057 aa 000011 6230 13 840 eax3 9,3  001060 aa 000013 1004 00 841 mlr (),(x3)  001061 0a 001070 020014 842 desc6a dtemp_buff,12 dump out the last word of the  001062 aa 012001 020014 843 desc6a line,12 apu ext reg. 844  001063 aa 006005 7020 00 845 tsx2 print  001064 aa 000002 6240 14 846 eax4 2,4  001065 aa 000200 1040 03 847 cmpx4 64*2,du  001066 0a 000777 6010 00 848 tnz dptlp  849  001067 0a 001067 7100 00 850 regsretn: tra * Now return from printreg.  851 even  001070 852 dtemp_buff: 001070 853 bss ,2  854 "  855 " These are the subroutines used to print the 6180 registers. 856  857  858 " This subroutine prints a header line. Word after tsx2 must contain the descriptor of 859 " the header to be printed. The header will be padded to 66 characters. The header  860 " will be stored in "line" starting at word (3). There will be two blank lines before  861 " the header line and one blank line printed after the header line. When print_hdr 862 " returns "line" will be blank.  863  001072 864 print_hdr:  001072 0a 001105 7420 00 865 stx2 ph_ret Save return address. 866  001073 aa 006003 7020 00 867 tsx2 space Print 2 blank lines before header line.  001074 aa 006005 7020 00 868 tsx2 print 001075 aa 006005 7020 00 869 tsx2 print 870  001076 0a 001105 2270 00 871 ldx7 ph_ret Get address of header to be printed. 872  001077 aa 020000 1004 20 873 mlr (id),(),fill(20) Copy the header  001100 aa 000000 0000 17 874 arg 0,7  001101 aa 012004 020102 875 desc6a line+3,66  876  001102 aa 006005 7020 00 877 tsx2 print Now print the header line.  001103 aa 006003 7020 00 878 tsx2 space Then a blank line.  001104 aa 006005 7020 00 879 tsx2 print 880  001105 0a 001105 6220 00 881 ph_ret: eax2 * Restore X2.  001106 aa 000001 7100 12 882 tra 1,2 Return - skip over arg used in call.  883  884  885  886 "  887 " This subroutine will print a DBR. The DBR to be printed is assumed to  888 " be in "cmdbr".  889  001107 890 print_dbr:  001107 0a 001132 7420 00 891 stx2 pdbr_ret Save return address.  001110 0a 001072 7020 00 892 tsx2 print_hdr Print DBR header line.  001111 0a 002172 020030 893 desc6a ndbr_hdr,24 894  001112 aa 007000 2350 00 895 lda cmdbr Get first word of DBR.  001113 aa 012252 7020 00 896 tsx2 octwd 897  001114 aa 000014 7730 00 898 lrl 12 Position to store ADDR field.  001115 aa 012004 7510 17 899 stca line+3,17 001116 aa 012005 7520 74 900 stcq line+4,74 901  001117 aa 007001 2350 00 902 lda cmdbr+1 Get second word of DBR. 001120 aa 012252 7020 00 903 tsx2 octwd 904  001121 aa 000006 7770 00 905 llr 6 Position BOUND and U fields.  001122 aa 012005 7520 01 906 stcq line+4,01 Store BOUND field.  001123 aa 012006 7510 74 907 stca line+5,74 908  001124 aa 000001 7710 00 909 arl 1 Make U field a "1" if it is on.  001125 aa 000001 3750 07 910 ana =o1,dl ..  001126 aa 012006 7510 01 911 stca line+5,01 912  001127 aa 000006 7720 00 913 qrl 6 Reposition STACK field.  001130 aa 012007 7520 17 914 stcq line+6,17 915  001131 aa 006005 7020 00 916 tsx2 print Now print the DBR.  917  001132 0a 001132 7100 00 918 pdbr_ret: tra * Return.  919 "  920 " This subroutine will edit an SDW "register" and put it in "line" for printing. 921 " This subroutine will not actually print the line. It is called to set up both  922 " regular SDW and Ass. Mem. SDW registers. The subroutine assumes that the caller  923 " has placed the SDW to be processed in AQ. 924  001133 925 prt_sdw_reg:  001133 0a 001222 7420 00 926 stx2 psdw_ret  001134 0a 001236 7570 00 927 staq save_sdw Save SDW for future use.  001135 aa 006003 7020 00 928 tsx2 space Clear line before doing any work. 001136 0a 001236 2350 00 929 lda save_sdw restor first word of sdw to A  001137 aa 012252 7020 00 930 tsx2 octwd Convert the first word of the SDW.  931  001140 aa 012004 7550 00 932 sta line+3 Store the ADDR field.  001141 aa 012005 7520 60 933 stcq line+4,60 934  001142 aa 000030 7370 00 935 lls 24 Position and store R1 field.  001143 aa 012005 7510 02 936 stca line+4,02 001144 aa 000006 7720 00 937 qrl 6 Separate R2 and R3 fields by 1 char.  001145 aa 000006 7730 00 938 lrl 6 Move them both into position.  001146 aa 012006 7520 50 939 stcq line+5,50 Store R2 and R3 fields.  940  941  942 " Note: the F bit requires a little special processing. The F bit and the 943 " F code are not part of an Ass. Mem. SDW register and are thus not  944 " printed. When prt_sdw_reg is called to setup an Ass. Mem. SDW register  945 " bit 0 of SDW word 2 should be ON. Note: the F bit in an Ass. Mem. SDW  946 " register will never be ON.  947  001147 0a 001237 2350 00 948 lda save_sdw+1 Get SDW word 2 in A.  001150 0a 001236 2360 00 949 ldq save_sdw Get SDW word 1 in Q.  001151 aa 000007 3760 07 950 anq =o000007,dl Zero all but F bit and F code.  001152 aa 000004 3160 07 951 canq sdw.df,dl Is F bit on?  001153 0a 001156 6000 00 952 tze F_bit_off Tra if no. 001154 0a 004051 2360 00 953 ldq =h " F bit ON - print blank.  001155 0a 001162 7100 00 954 tra set_F F on => not from Ass. Mem. 001156 955 F_bit_off:  001156 aa 400000 3150 03 956 cana =o400000,du Is special A.M. bit set? 001157 0a 001162 6000 00 957 tze set_F NO - print F_CODE field.  001160 0a 004051 2360 00 958 ldq =h " Yes, A.M. SDW - print blanks.  001161 aa 400000 6750 03 959 era =o400000,du Turn off Ass. Mem. bit.  960  001162 aa 012006 7520 01 961 set_F: stcq line+5,01 Store F_CODE, or " ".  962  963 " Now set up to store characters representing the REWPUG bits.  964  001163 0a 004057 2360 00 965 ldq =hpugrew Get access characters "PUGREW"  966 " They are backward because of the way  967 " they are stored in "line".  001164 aa 000004 3150 03 968 cana sdw.read,du Test for R bit, store "R" if on. 001165 0a 001167 6000 00 969 tze *+2  001166 aa 012010 7520 04 970 stcq line+7,04 001167 aa 000002 3150 03 971 cana sdw.execute,du Test for E bit, store "E" if on.  001170 0a 001172 6000 00 972 tze *+2  001171 aa 012010 7520 02 973 stcq line+7,02 001172 aa 000001 3150 03 974 cana sdw.write,du Test for W bit, store "W" if on.  001173 0a 001175 6000 00 975 tze *+2  001174 aa 012010 7520 01 976 stcq line+7,01 001175 aa 400000 3150 07 977 cana sdw.privileged,dl Test for P bit, store "P" if on.  001176 0a 001200 6000 00 978 tze *+2  001177 aa 012011 7520 40 979 stcq line+8,40 001200 aa 200000 3150 07 980 cana sdw.unpaged,dl Test for U bit, store "U" if on.  001201 0a 001203 6000 00 981 tze *+2  001202 aa 012011 7520 20 982 stcq line+8,20 001203 aa 100000 3150 07 983 cana sdw.entry_bound_sw,dl Test for G bit, store "G" if on.  001204 0a 001206 6000 00 984 tze *+2  001205 aa 012011 7520 10 985 stcq line+8,10 986  001206 0a 004051 2360 00 987 ldq =h "  001207 aa 040000 3150 07 988 cana sdw.cache,dl is cache bit ON?  001210 0a 001212 6000 00 989 tze *+2  001211 0a 004060 2360 00 990 ldq =h c "  001212 aa 012011 7520 04 991 stcq line+8,04 992  001213 0a 004061 3750 00 993 ana =o377770037777 remove undesirable bits  001214 aa 012252 7020 00 994 tsx2 octwd Now convert SDW word 2.  001215 aa 000030 7750 00 995 alr 24 Position and store BOUND field.  001216 aa 012007 7510 17 996 stca line+6,17 001217 aa 012010 7510 40 997 stca line+7,40 998  001220 aa 000006 7370 00 999 lls 6 Position and store CL field. 001221 aa 012012 7520 76 1000 stcq line+9,76 1001  001222 0a 001222 7100 00 1002 psdw_ret: tra * Return.  1003  1004 "  1005 " These are data items used in dumping the 6180 registers.  1006  001223 aa 000000 0110 03 1007 even  001224 aa 000006 000043 1008 mcmp1: its com,mcm Pointer to mcm info.  001225 aa 001550 000000 1009  001226 aa 000006 000043 1010 ouhrits: its com,ouhist Pointer to ou history regs 001227 aa 000500 000000 1011  001230 aa 000006 000043 1012 cuhrits: its com,cuhist Pointer to cu history regs 001231 aa 000700 000000 1013  001232 aa 000006 000043 1014 duhrits: its com,eishist Pointer to du history regs  001233 aa 001100 000000 1015  001234 aa 000006 000043 1016 apuhrits: its com,aphist Pointer to apu history regs  001235 aa 001300 000000 1017  001236 aa 000000 000000 1018 save_sdw: oct 0,0 Used by prt_sdw_reg.  001237 aa 000000 000000 1019  1020  1021 " This table is used to print some of the 645F registers. Some subtle features  1022 " of the table are: The value of bits 0 - 2 tell what to do with the register -  1023 " 000 - 0 => print a blank line  1024 " 001 - 1 => print only the left half of the word  1025 " 010 - 2 => print only the right half of the word  1026 " 011 - 3 => print both halves of the word  1027 "  1028 " Bit 3 of each word in the table determines whether the word is to come from  1029 " the segment bos_common ( com ) or from this program - the segment ( pgm ). 1030 "  1031 " 0 => com  1032 " 1 => pgm  1033 "  1034 " Note, currently no regesters are printed from this segment (pgm). However, the  1035 " code to do this has been left in the "pregl" loop in case it is ever needed.  1036  001240 1037 regtab: 001240 aa 000000 000000 1038 zero  001241 a0 201544 002344 1039 vfd 3/2,1/0,14/scu+4,18/nind "ind  001242 aa 000000 000000 1040 zero  001243 a0 301524 002340 1041 vfd 3/3,1/0,14/regs+4,18/na "a 001244 a0 301525 002341 1042 vfd 3/3,1/0,14/regs+5,18/nq "q 001245 a0 101526 002342 1043 vfd 3/1,1/0,14/regs+6,18/nexp "exp 001246 a0 301527 002343 1044 vfd 3/3,1/0,14/regs+7,18/ntimer "timer 001247 aa 000000 000000 1045 zero  001250 a0 101573 002360 1046 vfd 3/1,1/0,14/bar,18/nbar "bar  001251 aa 000000 000000 1047 zero  001252 a0 101520 002345 1048 vfd 3/1,1/0,14/regs,18/nx0 "x0 001253 a0 201520 002346 1049 vfd 3/2,1/0,14/regs,18/nx1 001254 a0 101521 002347 1050 vfd 3/1,1/0,14/regs+1,18/nx2  001255 a0 201521 002350 1051 vfd 3/2,1/0,14/regs+1,18/nx3  001256 a0 101522 002351 1052 vfd 3/1,1/0,14/regs+2,18/nx4  001257 a0 201522 002352 1053 vfd 3/2,1/0,14/regs+2,18/nx5  001260 a0 101523 002353 1054 vfd 3/1,1/0,14/regs+3,18/nx6  001261 a0 201523 002354 1055 vfd 3/2,1/0,14/regs+3,18/nx7 "x7  001262 aa 000000 000000 1056 zero  001263 a0 301574 002355 1057 vfd 3/3,1/0,14/modereg,18/nmode "mode  001264 a0 301575 002355 1058 vfd 3/3,1/0,14/modereg+1,18/nmode "cache mode  001265 a0 301576 002356 1059 vfd 3/3,1/0,14/faultreg,18/nfault  001266 aa 000000 000000 1060 zero  001267 a0 301572 002357 1061 vfd 3/3,1/0,14/intrpts,18/nintrps "interrupts  001270 aa 000000 000000 1062 zero  001271 a0 301532 002361 1063 vfd 3/3,1/0,14/mctime,18/nclock "clock 001272 a0 301533 002361 1064 vfd 3/3,1/0,14/mctime+1,18/nclock  001273 aa 000000 000000 1065 zero  000034 1066 equ nregs,*-regtab 1067 "  1068 "print the descriptor segment  001274 1069 descrseg: null  001274 0a 001332 7420 00 1070 stx2 descrsegretn "save return  001275 0a 003437 7020 00 1071 tsx2 initsstnt make sure we have correct KST 001276 aa 006004 7020 00 1072 tsx2 headform  1073  001277 0a 001072 7020 00 1074 tsx2 print_hdr 001300 0a 002270 020050 1075 desc6a ndseg_hdr1,40  1076  001301 0a 001072 7020 00 1077 tsx2 print_hdr 001302 0a 002277 020074 1078 desc6a ndseg_hdr2,60  1079  001303 0a 001560 4500 00 1080 stz segno "set segment number to zero  1081  001304 1082 desnext: null get another sdw  001304 0a 001560 2350 00 1083 lda segno  001305 aa 007027 7020 00 1084 tsx2 getsdw SDW returned in A,Q.  001306 0a 001314 7100 00 1085 tra segnotpres "return for not found  001307 0a 001332 7100 00 1086 tra endprdesc "return for end of desc seg  1087  001310 1088 desfound: null "sdw is in cursdw 1089  001310 0a 001333 7020 00 1090 tsx2 ptsdw "print sdw  1091  001311 aa 000001 2350 03 1092 lda =1,du  001312 0a 001560 0550 00 1093 asa segno  001313 0a 001304 7100 00 1094 tra desnext "get next sdw  1095  001314 1096 segnotpres: null "missing segment  001314 0a 004062 3150 00 1097 cana =o777777770000 test the address field  001315 0a 001310 6010 00 1098 tnz desfound print SDW if any bits on  001316 aa 006003 7020 00 1099 tsx2 space 001317 aa 006005 7020 00 1100 tsx2 print "skip one line  1101  001320 1102 snotpres2:  001320 aa 000001 2350 03 1103 lda =1,du  001321 0a 001560 0550 00 1104 asa segno  001322 0a 001560 2350 00 1105 lda segno  001323 aa 007027 7020 00 1106 tsx2 getsdw  001324 0a 001327 7100 00 1107 tra snotpres3 "another missing segment  001325 0a 001332 7100 00 1108 tra endprdesc "end of desc segm  001326 0a 001310 7100 00 1109 tra desfound Have sdw, edit it.  1110  001327 1111 snotpres3:  001327 0a 004062 3150 00 1112 cana =o777777770000 test the address field  001330 0a 001310 6010 00 1113 tnz desfound print if any bits on  001331 0a 001320 7100 00 1114 tra snotpres2  1115  001332 1116 endprdesc: "end of printing of desc seg 001332 0a 001332 7100 00 1117 descrsegretn: tra * Return  1118 "  1119 " Note: ptsdw is called with the SDW in A,Q.  1120  001333 0a 001354 7420 00 1121 ptsdw: stx2 psx2 "save x2 1122  001334 0a 001133 7020 00 1123 tsx2 prt_sdw_reg Move SDW data into "line".  1124  001335 0a 001560 2350 00 1125 lda segno  001336 aa 012252 7020 00 1126 tsx2 octwd 001337 aa 000022 7750 00 1127 alr 18 Position segment number.  001340 aa 012013 7510 01 1128 stca line+10,01 Only print 4 digits.  001341 aa 012014 7510 70 1129 stca line+11,70  1130  001342 0a 001236 2350 00 1131 lda save_sdw  001343 0a 003557 7020 00 1132 tsx2 getsstntname "get name of seg from SST name table  001344 aa 012015 020070 1133 desc6a line+12,56  001345 0a 001347 7100 00 1134 tra *+2  001346 0a 001353 7100 00 1135 tra psegnm 001347 0a 001560 2350 00 1136 lda segno  001350 aa 007043 7020 00 1137 tsx2 getsltname "get name of seg from SLT 001351 aa 012015 020070 1138 desc6a line+12,56  001352 0a 001353 7100 00 1139 tra *+1  001353 1140 psegnm: 001353 aa 006005 7020 00 1141 tsx2 print "print the line  1142  001354 0a 001354 6220 00 1143 psx2: eax2 *  001355 aa 000000 7100 12 1144 tra 0,2  1145 "  1146 "allsegs prints all the segments (subject to mode)  001356 1147 allsegs: null  001356 0a 001560 4500 00 1148 stz segno "set segment number to zero  001357 1149 allsegsn: null "entry with initial segno set 001357 0a 001453 7420 00 1150 stx2 allsegsretn "save return 1151  1152  1153 " These option argument words come in pairs. The first (even) option  1154 " contains the SDW bits that must be ON. The 2nd option arg contains  1155 " the SDW bits that must be OFF. 1156  001360 aa 000001 6210 00 1157 eax1 1 "get options  001361 aa 000000 6220 00 1158 eax2 0 001362 0a 004063 2360 00 1159 ldq =o777777777700 001363 1160 opt_arg_loop:  001363 aa 012040 2350 11 1161 lda arg,1 Get one option word.  001364 0a 004041 1150 00 1162 cmpa =-1  001365 0a 001416 6000 00 1163 tze optend "last arg 1164  1165  001366 aa 000000 6200 00 1166 eax0 0 "check each char in arg  001367 1167 opt_char_loop:  001367 aa 000005 6270 00 1168 eax7 noptch Get length of table. 001370 1169 search_tab: 001370 0a 001453 2110 17 1170 cmk optl-1,7 Loop thru table until char found.  001371 0a 001374 6010 00 1171 tnz *+3 "tra if no match 001372 0a 001453 2600 17 1172 orx0 optl-1,7 OR bit => by this character.  001373 0a 001376 7100 00 1173 tra *+3  001374 aa 777777 6270 17 1174 eax7 -1,7  001375 0a 001370 6010 00 1175 tnz search_tab Test next entry in table.  1176  1177 " Unrecognized character options are ignored.  1178  001376 aa 000006 7710 00 1179 arl 6 "get new char  001377 0a 001402 6000 00 1180 tze *+3  001400 aa 000020 2110 07 1181 cmk =o20,dl Test for blank => no more chars. 001401 0a 001367 6010 00 1182 tnz opt_char_loop Not blank => test next char.  1183  1184  001402 aa 000000 6350 10 1185 eaa 0,0 "end of arg, put bits into a 1186 " MAKE SURE BITS LINE UP WITH SDW. 001403 aa 000003 7710 00 1187 arl 3 Put access bits in position.  001404 aa 000001 3020 03 1188 canx2 =1,du Is this an even or odd option wd?  001405 0a 001407 6000 00 1189 tze even_arg Tra if even.  1190  1191 " If this is the 2nd word of the pair (odd) then OR the two words  1192 " together to get a mask which will determine all of the SDW bits  1193 " to be tested. 001406 0a 001460 2750 12 1194 ora options-1,2 OR if odd.  001407 1195 even_arg:  001407 0a 001461 7550 12 1196 sta options,2  001410 aa 000001 6220 12 1197 eax2 1,2  1198 " At most 5 pairs will be processed. All arguments beyond that will be 1199 " stored in the slot for the fifth pair and will overlay one another.  001411 aa 000012 1020 03 1200 cmpx2 =10,du Test for fifth pair.  001412 0a 001414 6040 00 1201 tmi *+2  001413 aa 000011 6220 00 1202 eax2 10-1 Too many - use 5th slot.  001414 aa 000001 6210 11 1203 eax1 1,1 "go to next arg 001415 0a 001363 7100 00 1204 tra opt_arg_loop  1205  1206  1207  001416 aa 000000 1020 03 1208 optend: cmpx2 =0,du "if no options  001417 0a 001423 6010 00 1209 tnz there_are_options  001420 aa 000001 2350 03 1210 lda =o000001,du W is the default.  001421 0a 001461 7550 12 1211 sta options,2  001422 aa 000001 6220 12 1212 eax2 1,2  1213  1214 " If X2 is odd then the last option pair had no 2nd (OFF) word. We will  1215 " use the ON word in its place.  1216  001423 1217 there_are_options:  001423 aa 000001 3020 03 1218 canx2 =1,du Test if odd. 001424 0a 001430 6000 00 1219 tze last_option_paired 001425 0a 001460 2350 12 1220 lda options-1,2 Use ON wrd as test bits.  001426 0a 001461 7550 12 1221 sta options,2  001427 aa 000001 6220 12 1222 eax2 1,2 Make it look like it was paired 001430 1223 last_option_paired: 001430 0a 001436 7420 00 1224 stx2 nopt "save number of options  1225  1226  1227  1228 " Now that we have all of the options setup we can start processing the segments  1229 " in this descriptor segment.  1230  001431 1231 segment_loop:  001431 0a 001560 2350 00 1232 lda segno Get segment number.  001432 aa 007027 7020 00 1233 tsx2 getsdw "get a segment descriptor word  001433 0a 001450 7100 00 1234 tra segmissing "return if not present 001434 0a 001453 7100 00 1235 tra endofseg "at end of descriptor segment,  1236  001435 aa 000044 7370 00 1237 lls 36 SDW returned in A,Q. Put SDW word  1238 " 2 in A so we can test R,E,W,P bits.  001436 0a 001436 6220 00 1239 nopt: eax2 * "load number of options  001437 1240 test_sdw_bits:  001437 0a 001460 2360 12 1241 ldq options+1-2,2 Even wd has bits to test.  001440 0a 004041 6760 00 1242 erq =o777777777777 Make mask for cmk.  1243 " Now compare the SDW bits with the bits that were supposed to be ON. WE 1244 " also are testing the bits that are supposed to be OFF.  001441 0a 001457 2110 12 1245 cmk options-2,2  001442 0a 001446 6000 00 1246 tze good_match 001443 aa 777776 6220 12 1247 eax2 -2,2 Try next option pair.  001444 0a 001437 6010 00 1248 tnz test_sdw_bits If there are any.  001445 0a 001450 7100 00 1249 tra segmissing No pairs match so skip seg.  1250  001446 1251 good_match: 001446 0a 001473 7020 00 1252 tsx2 segprint "print the segment  001447 0a 001450 7100 00 1253 tra *+1 Ignore any errors.  1254  001450 1255 segmissing: null "get the next segment  001450 aa 000001 2350 03 1256 lda =1,du  001451 0a 001560 0550 00 1257 asa segno "increment the segment numbef  001452 0a 001431 7100 00 1258 tra segment_loop "get another segment descr word  1259  001453 1260 endofseg: null All SDWs for this DBR printed.  001453 0a 001453 7100 00 1261 allsegsretn: tra * Return.  1262  1263  1264  1265 " This is a table of DUMP and CONT option characters. The right 6 bits are  1266 " the GEBCD value of the one character option. Bits 12-17 represent SDW  1267 " bits 15-20.  1268  001454 aa 000074 000021 1269 optl: oct 000074000021 A => ALL  001455 aa 000040 000061 1270 oct 000040000061 R => READ  001456 aa 000020 000025 1271 oct 000020000025 E => EXECUTE 001457 aa 000010 000066 1272 oct 000010000066 W => WRITE  001460 aa 000004 000047 1273 oct 000004000047 P => PRIVILEGED  000005 1274 equ noptch,*-optl  1275  001461 1276 bss options,10 1277 "  1278 "segprint prints one segment  1279 "  1280 " The calling sequence is: 1281 " set segno 1282 " tsx2 segprint 1283 " tra error Error return location. 1284 "  1285  001473 1286 segprint: null  001473 0a 001534 7420 00 1287 stx2 segx2 "save return  001474 0a 001535 7400 00 1288 stx0 segx0 "and x0  1289  001475 0a 001560 2350 00 1290 lda segno  001476 aa 006015 7550 00 1291 sta ptsegno set seg # to print  001477 0a 001564 7020 00 1292 tsx2 ptprint print segment header and page table 001500 0a 001540 7100 00 1293 tra segerr 1294  001501 0a 001563 2340 00 1295 szn cursdw+1 Get word 2 of DBR. 001502 0a 001534 6040 00 1296 tmi segend Ignore if high-order bit ON.  1297  001503 aa 000000 6200 00 1298 eax0 0 1299  001504 1300 segnewpg: " Here to get new page to dump.  001504 0a 004051 2350 00 1301 lda =h " Blank out absolute address.  001505 aa 012001 7550 00 1302 sta line ..  1303  001506 aa 000000 6360 10 1304 eaq 0,0 Get offset.  001507 aa 007032 7020 00 1305 tsx2 apnd Get first word of this block.  001510 0a 001562 0000 00 1306 arg cursdw 001511 0a 001542 7100 01 1307 tra seger-1,au if error, dispatch on it  1308  001512 0a 004041 1150 00 1309 cmpa =-1 (-1) => page not in core.  001513 0a 001522 6000 00 1310 tze no_abs_addr If not in core blank addr.  001514 0a 001563 2360 00 1311 ldq cursdw+1 Second word of SDW in Q 001515 aa 200000 3160 07 1312 canq sdw.unpaged,dl Unpaged segment?  001516 0a 001520 6000 00 1313 tze *+2 If not, print high-order address 001517 aa 000006 7350 00 1314 als 6 Make addr on a zero bound again.  001520 aa 012252 7020 00 1315 tsx2 octwd fill in abs addr  001521 aa 012001 7550 00 1316 sta line  001522 1317 no_abs_addr:  001522 aa 000000 6350 10 1318 eaa 0,0 add offset to line  001523 aa 012252 7020 00 1319 tsx2 octwd 001524 0a 004051 2360 00 1320 ldq =h "  001525 aa 000074 7770 00 1321 llr 72-12  001526 aa 012002 7550 00 1322 sta line+1 001527 aa 012003 7560 00 1323 stq line+2 1324  001530 aa 006006 7020 00 1325 tsx2 ptblock "print 8 words  001531 aa 007004 000010 1326 zero fetchout,8  1327  001532 aa 000010 6200 10 1328 eax0 8,0 Up offset to next 8 word block. 001533 0a 001504 6010 00 1329 tnz segnewpg  1330  001534 1331 segend: "end of segment 001534 0a 001534 6220 00 1332 segx2: eax2 * "restore xrs  001535 0a 001535 6200 00 1333 segx0: eax0 *  001536 aa 006015 4500 00 1334 stz ptsegno  001537 aa 000001 7100 12 1335 tra 1,2  1336  001540 aa 777777 2220 03 1337 segerr: ldx2 =-1,du "move back x2 for error return  001541 0a 001534 0420 00 1338 asx2 segx2 001542 0a 001534 7100 00 1339 tra segend 1340  001543 0a 001540 7100 00 1341 seger: tra segerr "trouble with segment  001544 0a 001546 7100 00 1342 tra segbmpp "trouble with page  001545 0a 001534 7100 00 1343 tra segend "off end  1344  001546 aa 002000 6200 10 1345 segbmpp: eax0 1024,0 go to next page  001547 aa 776000 3600 03 1346 anx0 =o776000,du  001550 0a 001534 6000 00 1347 tze segend 1348  001551 aa 006003 7020 00 1349 tsx2 space say page missing  001552 0a 002366 2350 00 1350 lda nsegpm set missing page message  001553 aa 012004 7550 00 1351 sta line+3 ..  001554 0a 002367 2350 00 1352 lda nsegpm+1 ..  001555 aa 012005 7550 00 1353 sta line+4 ..  001556 aa 006005 7020 00 1354 tsx2 print 001557 0a 001504 7100 00 1355 tra segnewpg  1356  001560 1357 segno: bss ,1  1358  001561 aa 000000 0110 03 1359 even  001562 1360 cursdw: bss ,2  1361  1362 "  1363 " Print segment heading and page table. 1364  001564 1365 ptprint:  001564 0a 001672 7420 00 1366 stx2 ptpx2 save XRs  001565 0a 001673 7410 00 1367 stx1 ptpx1 1368  001566 aa 006004 7020 00 1369 tsx2 headform start new page 001567 0a 001072 7020 00 1370 tsx2 print_hdr Print SDW header. 001570 0a 002277 020074 1371 desc6a ndseg_hdr2,60 ..  1372  001571 0a 001560 2350 00 1373 lda segno Get SDW for segment.  001572 aa 007027 7020 00 1374 tsx2 getsdw ..  001573 0a 001666 7100 00 1375 tra ptperr 001574 0a 001666 7100 00 1376 tra ptperr 001575 0a 001562 7570 00 1377 staq cursdw Save SDW.  1378  001576 aa 777777 3750 03 1379 ana -1,du Mask address.  001577 aa 777777 1150 03 1380 cmpa -1,du If it is -1, skip this segment.  001600 0a 001666 6000 00 1381 tze ptperr ..  1382  001601 0a 001562 2350 00 1383 lda cursdw print the SDW.  001602 0a 001333 7020 00 1384 tsx2 ptsdw ..  001603 aa 006003 7020 00 1385 tsx2 space ..  001604 aa 006005 7020 00 1386 tsx2 print ..  1387  001605 0a 001562 2370 00 1388 ldaq cursdw  001606 aa 200000 3160 07 1389 canq sdw.unpaged,dl If not paged, return  001607 0a 001670 6010 00 1390 tnz ptpend 001610 aa 000004 3150 07 1391 cana sdw.df,dl or if segment fault  001611 0a 001670 6000 00 1392 tze ptpend return  001612 0a 004062 3150 00 1393 cana =o777777770000 Check if segfault happened  001613 0a 001670 6000 00 1394 tze ptpend Tra if SDW.ADDR = 0.  1395  001614 aa 377770 3760 03 1396 anq sdw.bound,du Clear all but BOUND field.  001615 aa 000011 7720 00 1397 qrl 3+6 Bound/64 in QU.  001616 aa 000015 6360 02 1398 eaq 1+ast_size,qu QU contains number of words in ASTE + PT.  001617 0a 001675 7560 00 1399 stq ptstop Save for checking end.  1400  001620 aa 006005 7020 00 1401 tsx2 print 1402  001621 0a 001562 2350 00 1403 lda cursdw Get addr of 1st PTW.  001622 aa 000014 7710 00 1404 arl sdw.add_shift Right justify in A. 001623 aa 000014 1350 07 1405 sbla ast_size,dl Get absolute address of ASTE.  001624 aa 000014 7350 00 1406 als 12 Position for address of SDW.  001625 0a 001700 7510 74 1407 stca ptpsdw,74 Set SDW to ASTE and page table.  1408  001626 0a 004064 2350 00 1409 lda =haste " Print ASTE header  001627 aa 012002 7550 00 1410 sta line+1 001630 0a 001676 5540 00 1411 stc1 ptpastsw Set AST entry switch  1412  001631 aa 000000 6210 00 1413 eax1 0 X1 is offset into AST + PT.  001632 0a 001656 7100 00 1414 tra ptp8 print block of AST entry  1415  001633 aa 000010 6210 11 1416 ptloop: eax1 8,1 Count 8 words  001634 0a 001675 1010 00 1417 cmpx1 ptstop Are we finished?  001635 0a 001670 6050 00 1418 tpl ptpend Exit when finished  1419  001636 aa 000014 1010 03 1420 cmpx1 ast_size,du Still printing ASTE?  001637 0a 001652 6040 00 1421 tmi ptpnohd If so, continue. 1422  001640 0a 001676 2340 00 1423 szn ptpastsw Did we just print AST entry 001641 0a 001652 6000 00 1424 tze ptpnohd if not, skip printing header 001642 0a 001676 4500 00 1425 stz ptpastsw clear AST entry switch  001643 aa 006003 7020 00 1426 tsx2 space Now print page table line heading 001644 0a 002332 2370 00 1427 ldaq npagetab  001645 aa 012005 7550 00 1428 sta line+4 001646 aa 012006 7560 00 1429 stq line+5 001647 aa 006005 7020 00 1430 tsx2 print 001650 aa 006003 7020 00 1431 tsx2 space 1432  001651 aa 000014 6210 00 1433 eax1 ast_size Set X1 to beginning of page table. 1434  001652 aa 777764 6350 11 1435 ptpnohd: eaa -ast_size,1 Get page table offset 001653 aa 012252 7020 00 1436 tsx2 octwd Convert to octal  001654 aa 012261 7020 00 1437 tsx2 bzel  001655 aa 012002 7550 00 1438 sta line+1 1439  001656 aa 000000 6360 11 1440 ptp8: eaq 0,1 Offset in QU.  001657 aa 007034 7020 00 1441 tsx2 get Grab 8 words.  001660 0a 001700 0000 00 1442 arg ptpsdw 001661 0a 001704 000010 1443 zero ptbuff,8  001662 0a 001670 7100 00 1444 tra ptpend 1445  001663 aa 006006 7020 00 1446 tsx2 ptblock print the block of 8 words  001664 0a 001702 000010 1447 zero ptpiw,8 ..  001665 0a 001633 7100 00 1448 tra ptloop and continue  1449  001666 aa 777777 2220 03 1450 ptperr: ldx2 -1,du Force error return.  001667 0a 001672 0420 00 1451 asx2 ptpx2 ..  1452  001670 1453 ptpend: 001670 aa 006003 7020 00 1454 tsx2 space 001671 aa 006005 7020 00 1455 tsx2 print "slew 1456  001672 0a 001672 6220 00 1457 ptpx2: eax2 * Restore XRs.  001673 0a 001673 6210 00 1458 ptpx1: eax1 *  001674 aa 000001 7100 12 1459 tra 1,2  1460  001675 aa 000000 0000 00 1461 ptstop: arg 0  001676 1462 ptpastsw: bss ,1  1463  001677 aa 000000 0110 03 1464 even  001700 aa 000000 000004 1465 ptpsdw: vfd 24/0,9/0,3/sdw.df,1/0,14/((256+ast_size+8)/16)-1,o6/72  001701 aa 000207 200000 001702 aa 000003 000043 1466 ptpiw: its pgm,ptbuff  001703 0a 001704 000000 001704 1467 ptbuff: bss ,8  1468  1469 "  1470 "entry form switch reading to dump stack  1471  001714 1472 stackdump: null 001714 aa 012041 2350 00 1473 lda arg+1 see if ring req.  001715 0a 004065 1150 00 1474 cmpa =h ring  001716 0a 001732 6010 00 1475 tnz sknoring  001717 aa 012042 2350 00 1476 lda arg+2 is there 2nd arg?  001720 0a 004041 1150 00 1477 cmpa =-1  001721 0a 000041 6000 00 1478 tze qm 1479  001722 aa 007001 2350 00 1480 lda cmdbr+1 get dbr stack base  001723 aa 037777 3750 07 1481 ana sdw.entry_bound,dl 001724 aa 000003 7350 00 1482 als 3  001725 0a 001753 6000 00 1483 tze nostackbase  001726 aa 012042 0350 00 1484 adla arg+2 get stack this ring  001727 aa 012043 2360 00 1485 ldq arg+3 move offset down  001730 aa 012042 7560 00 1486 stq arg+2  001731 0a 001734 7100 00 1487 tra skgotsegno 1488  001732 1489 sknoring: "come here to sknore  001732 aa 000001 6270 00 1490 eax7 1 get arg # 001733 0a 003775 7020 00 1491 tsx2 collect_segname  001734 1492 skgotsegno: 001734 0a 004041 1150 00 1493 cmpa =-1  001735 0a 001740 6010 00 1494 tnz *+3 "if not given  001736 0a 001762 7020 00 1495 tsx2 sptrace Use sp 001737 0a 000044 7100 00 1496 tra cycle  1497  001740 aa 000022 7350 00 1498 als 18 001741 aa 012042 2360 00 1499 ldq arg+2 "get stack offset  001742 aa 000022 7360 00 1500 qls 18 001743 aa 777777 1160 03 1501 cmpq =-1,du "if no offset given, 001744 0a 001751 6010 00 1502 tnz sktrace  001745 aa 000000 6220 01 1503 eax2 0,au  001746 aa 6 01514 1021 00 1504 cmpx2 com|prs+6*2 "is this stack in mach. cond.?  001747 0a 001751 6010 00 1505 tnz sktrace "if so,  001750 aa 6 01515 2361 00 1506 ldq com|prs+6*2+1 "use that offset  001751 1507 sktrace:  001751 0a 001765 7020 00 1508 tsx2 stacktrace "trace the stack  001752 0a 000044 7100 00 1509 tra cycle  1510  001753 1511 nostackbase:  001753 aa 012241 7020 00 1512 tsx2 erpt  001754 aa 021 156 157 040 1513 acc "no dbr stack base"  001755 aa 144 142 162 040 001756 aa 163 164 141 143 001757 aa 153 040 142 141 001760 aa 163 145 000 000 001761 0a 000044 7100 00 1514 tra cycle  1515  1516 " 1517  001762 1518 sptrace: null "here to trace from sp 001762 aa 6 01514 2371 00 1519 ldaq com|prs+6*2 Get PR6 (sp).  001763 aa 000017 3160 03 1520 canq =o000017,du Check for mod 16 001764 aa 000000 6010 12 1521 tnz 0,2  1522  001765 0a 002046 7420 00 1523 stacktrace: stx2 skx2 "here to trace stack  001766 aa 777777 3750 03 1524 ana =-1,du 001767 0a 001560 7550 00 1525 sta segno  001770 aa 777777 3760 03 1526 anq =-1,du 001771 0a 002047 7560 00 1527 stq skoff  001772 0a 001564 7020 00 1528 tsx2 ptprint print header and page table 001773 0a 002046 7100 00 1529 tra skx2  1530  001774 aa 000043 2350 07 1531 lda =o43,dl Make ITS modifier in segment number. 001775 0a 001560 7510 07 1532 stca segno,07 .. 1533  001776 0a 002047 2360 00 1534 ldq skoff  001777 aa 777777 1160 03 1535 cmpq =-1,du if offset not given, find one  002000 0a 002005 6010 00 1536 tnz skng  002001 aa 000022 6360 00 1537 eaq stack_header.stack_begin_ptr No offset, assume stack_begin_ptr.  002002 0a 002051 7020 00 1538 tsx2 stackfetch Fetch and check ITS pair. 002003 0a 002046 0110 00 1539 nop skx2 ..  002004 0a 002047 7560 00 1540 stq skoff Set stack offset.  1541  002005 aa 000000 6200 00 1542 skng: eax0 0 zero stack counter  1543  1544 " Follow stack back to the beginning.  1545  002006 0a 002047 2360 00 1546 skbkl: ldq skoff Get current offset.  002007 aa 000020 6360 02 1547 eaq stack_frame.prev_sp,qu Get pointer to previous frame.  002010 0a 002051 7020 00 1548 tsx2 stackfetch ..  002011 0a 002022 6050 00 1549 tpl skbkdn Must be < current offset. 002012 0a 002050 7560 00 1550 stq skoffn Save offset of previous frame.  1551  002013 aa 000022 6360 02 1552 eaq stack_frame.next_sp,qu Get foward pointer of back frame  002014 0a 002051 7020 00 1553 tsx2 stackfetch ..  002015 0a 002022 6010 00 1554 tnz skbkdn Must be same as current offset.  1555  002016 0a 002050 2350 00 1556 lda skoffn Passed tests, go back one 002017 0a 002047 7550 00 1557 sta skoff  002020 aa 777777 6200 10 1558 eax0 -1,0  002021 0a 002006 7100 00 1559 tra skbkl  1560  1561 " At beginning of stack. Go forward, printing each frame.  1562  002022 0a 002047 2340 00 1563 skbkdn: szn skoff First frame found, is it a zero 002023 0a 002031 6000 00 1564 tze skflp  002024 aa 777777 6200 10 1565 eax0 -1,0 if not, print 0 th here as a frame 002025 0a 002047 2350 00 1566 lda skoff  002026 0a 002050 7550 00 1567 sta skoffn 002027 0a 002047 4500 00 1568 stz skoff  002030 0a 002036 7100 00 1569 tra skpt  1570  002031 0a 002047 2360 00 1571 skflp: ldq skoff Get bound of stack frame 002032 aa 000022 6360 02 1572 eaq stack_frame.next_sp,qu 002033 0a 002051 7020 00 1573 tsx2 stackfetch  002034 0a 002043 6044 00 1574 tmoz sklst Must be > current offset. 002035 0a 002050 7560 00 1575 stq skoffn if ok, set as next  1576  002036 0a 002071 7020 00 1577 skpt: tsx2 frameprint print stack frame  1578  002037 0a 002050 2350 00 1579 lda skoffn move ahead  002040 0a 002047 7550 00 1580 sta skoff  002041 aa 000001 6200 10 1581 eax0 1,0  002042 0a 002031 7100 00 1582 tra skflp  1583  002043 aa 377777 2350 03 1584 sklst: lda =o377777,du "print remainder of stack  002044 0a 002050 7550 00 1585 sta skoffn 002045 0a 002071 7020 00 1586 tsx2 frameprint  1587  002046 0a 002046 7100 00 1588 skx2: tra * 1589  002047 aa 000000 000000 1590 skoff: oct 0 "offset of current stack frame  002050 aa 000000 000000 1591 skoffn: oct 0 "offset of next stack frame 1592  1593  1594 "  1595  002051 1596 stackfetch: 002051 0a 002063 7420 00 1597 stx2 skfx2 Save X2.  1598  002052 aa 007032 7020 00 1599 tsx2 apnd Perform appending simulation.  002053 0a 001562 0000 00 1600 arg cursdw 002054 0a 002067 7100 00 1601 tra skferr 1602  002055 aa 007004 2370 20 1603 ldaq fetchout,* Get ITS pair.  002056 0a 004066 3750 00 1604 ana =o777777000077 Mask segno and modifier.  002057 0a 001560 1150 00 1605 cmpa segno Must be correct segno and ITS modifier.  002060 0a 002067 6010 00 1606 tnz skferr .. 1607  002061 aa 000017 3160 03 1608 canq =o17,du Offset must be 0 mod 16. 002062 0a 002067 6010 00 1609 tnz skferr .. 1610  002063 0a 002063 6220 00 1611 skfx2: eax2 * Restore X2.  1612  002064 aa 777777 3760 03 1613 anq =-1,du Mask to leave only offset. 002065 0a 002047 1160 00 1614 cmpq skoff Compare against offset.  002066 aa 000000 7100 12 1615 tra 0,2 Return with indicators set.  1616  002067 0a 002063 2220 00 1617 skferr: ldx2 skfx2 Restore X2. 002070 aa 000000 7100 32 1618 tra 0,2* Force error return.  1619  1620 " 1621 "frameprint subroutine  1622 "print segno from skoff to skoffn, x0 =frameno  1623  002071 1624 frameprint:  002071 0a 002160 7420 00 1625 stx2 frameretn 002072 aa 006003 7020 00 1626 tsx2 space 002073 aa 006005 7020 00 1627 tsx2 print 002074 0a 002334 2370 00 1628 ldaq nframe "frame heading  002075 aa 012006 7550 00 1629 sta line+5 002076 aa 012007 7560 00 1630 stq line+5+1  002077 0a 004067 2360 00 1631 ldq =hplus "  002100 aa 000000 6350 10 1632 eaa 0,0  002101 0a 002104 6050 00 1633 tpl *+3 "stack position is positive  002102 0a 004070 2360 00 1634 ldq =hminus "  002103 aa 000000 5310 00 1635 neg  002104 aa 012010 7560 00 1636 stq line+7 002105 aa 012252 7020 00 1637 tsx2 octwd 002106 aa 012011 7550 00 1638 sta line+8 1639  002107 0a 002047 2360 00 1640 ldq skoff  002110 aa 000024 6360 02 1641 eaq stack_frame.return_ptr,qu Use return pointer  002111 aa 007032 7020 00 1642 tsx2 apnd get control double word  002112 0a 001562 0000 00 1643 arg cursdw 002113 0a 002131 7100 00 1644 tra nofrnm 1645  002114 aa 007004 2370 20 1646 ldaq fetchout,*  002115 0a 002164 7550 00 1647 sta framecr  1648  002116 aa 007027 7020 00 1649 tsx2 getsdw get SDW for segment  002117 0a 002125 7100 00 1650 tra frameslt  002120 0a 002125 7100 00 1651 tra frameslt  002121 0a 003557 7020 00 1652 tsx2 getsstntname "get segment name  002122 aa 012012 420110 1653 desc6a line+9(4),72  002123 0a 002125 7100 00 1654 tra *+2  002124 0a 002131 7100 00 1655 tra nofrnm 002125 0a 002164 2350 00 1656 frameslt: lda framecr  002126 aa 007043 7020 00 1657 tsx2 getsltname  002127 aa 012012 420110 1658 desc6a line+9(4),72  002130 0a 002131 7100 00 1659 tra *+1  1660  002131 aa 006005 7020 00 1661 nofrnm: tsx2 print frame heading  002132 aa 006003 7020 00 1662 tsx2 space 002133 aa 006005 7020 00 1663 tsx2 print "slew 002134 0a 002047 2210 00 1664 ldx1 skoff 002135 1665 frameline: "new line to be printed  002135 aa 000000 6350 11 1666 eaa 0,1 "fill offset in line 002136 aa 012252 7020 00 1667 tsx2 octwd 002137 aa 012001 7550 00 1668 sta line  002140 aa 000000 6350 11 1669 eaa 0,1  002141 0a 002047 1350 00 1670 sbla skoff "relative locn within frame  002142 aa 012252 7020 00 1671 tsx2 octwd 002143 0a 004051 2360 00 1672 ldq =h "  002144 aa 000074 7770 00 1673 llr 72-12  002145 aa 012002 7550 00 1674 sta line+1 002146 aa 012003 7560 00 1675 stq line+2 1676  002147 aa 000000 6360 11 1677 eaq 0,1 Get pointer to this line.  002150 aa 007032 7020 00 1678 tsx2 apnd  002151 0a 001562 0000 00 1679 arg cursdw 002152 0a 002161 7100 00 1680 tra framer 1681  002153 aa 006006 7020 00 1682 tsx2 ptblock "print line 002154 aa 007004 000010 1683 zero fetchout,8  1684  002155 aa 000010 6210 11 1685 framenl: eax1 8,1 "go to next line  002156 0a 002050 1010 00 1686 cmpx1 skoffn  002157 0a 002135 6040 00 1687 tmi frameline  1688  002160 aa 000000 7100 00 1689 frameretn: tra 0 return  1690  002161 aa 000002 1150 03 1691 framer: cmpa =2,du "if page error, try again  002162 0a 002155 6000 00 1692 tze framenl  002163 0a 002160 7100 00 1693 tra frameretn "else give up  1694  002164 1695 framecr: bss ,1 1696  1697 "  1698 " These are GE BCD constants.  1699  002165 aa 475 120 202 020 1700 npr_hdr: bci 'pr r seg word bits'  002166 aa 512 020 202 062 002167 aa 252 720 202 020 002170 aa 206 646 512 420 002171 aa 202 231 636 200 1701  002172 aa 242 251 202 021 1702 ndbr_hdr: bci 'dbr addr bound u stack'  002173 aa 242 451 202 022 002174 aa 466 445 242 064 002175 aa 206 263 212 342 1703  002176 aa 474 751 202 047 1704 nppr_hdr: bci 'ppr prr psr ic'  002177 aa 515 120 202 047 002200 aa 625 120 202 020 002201 aa 202 031 230 000 1705  002202 aa 234 651 252 243 1706 ncb_hdr: bci 'coreblocks: first num' 002203 aa 462 342 621 520 002204 aa 202 026 315 162 002205 aa 632 020 456 444 1707  002206 aa 442 544 465 170 1708 nmcm_hdr: bci 'memory controller masks' 002207 aa 202 346 456 351 002210 aa 464 343 255 120 002211 aa 442 162 426 200 1709  002212 1710 namptw_hdr: 002212 aa 202 124 245 120 1711 bci ' addr m pointer page f/e usage'  002213 aa 202 020 442 020 002214 aa 204 746 314 563 002215 aa 255 120 202 020 002216 aa 472 127 252 020 002217 aa 202 026 612 520 002220 aa 206 462 212 725 1712  002221 1713 namsdw_hdr: 002221 aa 202 021 242 451 1714 bci ' addr r1r2r3 bound access cl pointer f/e usage'  002222 aa 202 020 510 151 002223 aa 025 103 202 020 002224 aa 202 022 466 445 002225 aa 242 020 212 323 002226 aa 256 262 202 020 002227 aa 202 023 432 020 002230 aa 474 631 456 325 002231 aa 512 020 266 125 002232 aa 202 064 622 127 002233 aa 250 000 000 000 1715  002234 1716 nouhistreg_hdr: 002234 aa 202 020 202 020 1717 bci ' ou history registers '  002235 aa 202 020 202 020 002236 aa 202 020 202 020 002237 aa 466 420 202 030 002240 aa 316 263 465 170 002241 aa 205 125 273 162 002242 aa 632 551 622 000 002243 1718 ncuhistreg_hdr: 002243 aa 202 020 202 020 1719 bci ' cu history registers '  002244 aa 202 020 202 020 002245 aa 202 020 202 020 002246 aa 236 420 202 030 002247 aa 316 263 465 170 002250 aa 205 125 273 162 002251 aa 632 551 622 000 002252 1720 neishistreg_hdr:  002252 aa 202 020 202 020 1721 bci ' du history registers '  002253 aa 202 020 202 020 002254 aa 202 020 202 020 002255 aa 246 420 202 030 002256 aa 316 263 465 170 002257 aa 205 125 273 162 002260 aa 632 551 622 000 002261 1722 napuhistreg_hdr:  002261 aa 202 020 202 020 1723 bci ' apu history registers '  002262 aa 202 020 202 020 002263 aa 202 020 202 021 002264 aa 476 420 202 030 002265 aa 316 263 465 170 002266 aa 205 125 273 162 002267 aa 632 551 622 000 1724  002270 1725 ndseg_hdr1: 002270 aa 202 020 202 020 1726 bci ' descriptor segment' 002271 aa 202 020 202 020 002272 aa 202 020 202 020 002273 aa 202 020 242 562 002274 aa 235 131 476 346 002275 aa 512 020 622 527 002276 aa 442 545 630 000 1727  002277 1728 ndseg_hdr2: 002277 aa 202 021 242 451 1729 bci ' addr r1r2r3 f bound access cl segment name' 002300 aa 202 020 510 151 002301 aa 025 103 202 026 002302 aa 202 022 466 445 002303 aa 242 020 212 323 002304 aa 256 262 202 020 002305 aa 202 023 432 020 002306 aa 202 062 252 744 002307 aa 254 563 202 020 002310 aa 202 045 214 425 1730  1731  002311 aa 202 020 214 720 1732 npr0: bci ' ap (0) '  002312 aa 350 055 202 020 002313 aa 202 020 212 220 1733 npr1: bci ' ab (1) '  002314 aa 350 155 202 020 002315 aa 202 020 224 720 1734 npr2: bci ' bp (2) '  002316 aa 350 255 202 020 002317 aa 202 020 222 220 1735 npr3: bci ' bb (3) '  002320 aa 350 355 202 020 002321 aa 202 020 434 720 1736 npr4: bci ' lp (4) '  002322 aa 350 455 202 020 002323 aa 202 020 432 220 1737 npr5: bci ' lb (5) '  002324 aa 350 555 202 020 002325 aa 202 020 624 720 1738 npr6: bci ' sp (6) '  002326 aa 350 655 202 020 002327 aa 202 020 622 220 1739 npr7: bci ' sb (7) '  002330 aa 350 755 202 020 1740  1741  002331 aa 000000 0110 03 1742 even  002332 aa 204 721 272 520 1743 npagetab: bci ' page table '  002333 aa 632 122 432 520 1744 even  002334 aa 626 321 234 220 1745 nframe: bci 'stack frame '  002335 aa 265 121 442 520 1746 even  002336 aa 454 663 203 145 1747 notincore: bci 'not in core '  002337 aa 202 346 512 520 002340 aa 212 020 202 020 1748 na: bci 'a '  002341 aa 502 020 202 020 1749 nq: bci 'q '  002342 aa 256 747 202 020 1750 nexp: bci 'exp '  002343 aa 633 144 255 120 1751 ntimer: bci 'timer '  002344 aa 314 524 202 020 1752 nind: bci 'ind '  002345 aa 670 020 202 020 1753 nx0: bci 'x0 '  002346 aa 670 120 202 020 1754 nx1: bci 'x1 '  002347 aa 670 220 202 020 1755 nx2: bci 'x2 '  002350 aa 670 320 202 020 1756 nx3: bci 'x3 '  002351 aa 670 420 202 020 1757 nx4: bci 'x4 '  002352 aa 670 520 202 020 1758 nx5: bci 'x5 '  002353 aa 670 620 202 020 1759 nx6: bci 'x6 '  002354 aa 670 720 202 020 1760 nx7: bci 'x7 '  002355 aa 444 624 252 020 1761 nmode: bci 'mode ' 002356 aa 262 164 436 320 1762 nfault: bci 'fault '  002357 aa 314 563 255 120 1763 nintrps: bci 'inter '  002360 aa 222 151 202 020 1764 nbar: bci 'bar '  002361 aa 234 346 234 220 1765 nclock: bci 'clock '  1766  1767 even  002362 aa 202 020 454 620 1768 nno: bci ' no '  002363 aa 202 070 256 220 1769 nyes: bci ' yes '  1770 even  002364 aa 622 527 442 545 1771 nsegno: bci 'segment '  002365 aa 632 020 202 020 002366 aa 472 127 252 044 1772 nsegpm: bci 'page missing'  002367 aa 316 262 314 527 002370 aa 012 020 446 443 1773 nheading: bci '1 Multics segment dump '  002371 aa 633 123 622 062 002372 aa 252 744 254 563 002373 aa 202 464 444 720 000004 1774 equ nheading_lth,*-nheading  1775  1776 " 1777  1778 include stack_header  2-1 " BEGIN INCLUDE FILE ... stack_header.incl.alm 3/72 Bill Silver  2-2 "  2-3 " modified 7/76 by M. Weaver for *system links and more system use of areas 2-4 " modified 3/77 by M. Weaver to add rnt_ptr  2-5 " modified 7/77 by S. Webber to add run_unit_depth and assign_linkage_ptr  2-6 " modified 6/83 by J. Ives to add trace_frames and in_trace.  2-7  000004 2-8 equ stack_header.old_lot_ptr,4 obsolete ptr to lot  000006 2-9 equ stack_header.combined_stat_ptr,6 ptr to separate static area  2-10  000010 2-11 equ stack_header.clr_ptr,8 ptr to area containing linkage sections  000012 2-12 equ stack_header.max_lot_size,10 number of words allowed in lot (DU)  000012 2-13 equ stack_header.main_proc_invoked,10 nonzero if main proc was invoked in run unit (DL)  000012 2-14 equ stack_header.run_unit_depth,10 number of active run units stacked (DL) 000013 2-15 equ stack_header.cur_lot_size,11 number of words (entries) in lot 2-16  000014 2-17 equ stack_header.system_free_ptr,12 ptr to system storage area 000016 2-18 equ stack_header.user_free_ptr,14 ptr to user storage area  2-19  000020 2-20 equ stack_header.parent_ptr,16 ptr to parent stack or null  000022 2-21 equ stack_header.stack_begin_ptr,18 ptr to first stack frame  000024 2-22 equ stack_header.stack_end_ptr,20 ptr to next useable stack frame 000026 2-23 equ stack_header.lot_ptr,22 ptr to the lot for the current ring  2-24  000030 2-25 equ stack_header.signal_ptr,24 ptr to signal proc for current ring  000032 2-26 equ stack_header.bar_mode_sp,26 value of sp before entering bar mode  000034 2-27 equ stack_header.pl1_operators_ptr,28 ptr: pl1_operators_$operator_table  000036 2-28 equ stack_header.call_op_ptr,30 ptr to standard call operator 2-29  000040 2-30 equ stack_header.push_op_ptr,32 ptr to standard push operator 000042 2-31 equ stack_header.return_op_ptr,34 ptr to standard return operator 000044 2-32 equ stack_header.ret_no_pop_op_ptr,36 ptr: stand. return/ no pop operator  000046 2-33 equ stack_header.entry_op_ptr,38 ptr to standard entry operator  2-34  000050 2-35 equ stack_header.trans_op_tv_ptr,40 ptr to table of translator operator ptrs  000052 2-36 equ stack_header.isot_ptr,42 pointer to ISOT  000054 2-37 equ stack_header.sct_ptr,44 pointer to System Condition Table 000056 2-38 equ stack_header.unwinder_ptr,46 pointer to unwinder for current ring 2-39  000060 2-40 equ stack_header.sys_link_info_ptr,48 ptr to *system link name table  000062 2-41 equ stack_header.rnt_ptr,50 ptr to reference name table  000064 2-42 equ stack_header.ect_ptr,52 ptr to event channel table  000066 2-43 equ stack_header.assign_linkage_ptr,54 ptr to area for hcs_$assign_linkage calls  000070 2-44 equ stack_header.task_data_ptr,56  2-45  000072 2-46 equ stack_header.trace_frames,58 stack of trace_catch_ frames 000074 2-47 equ stack_header.in_trace,60 trace antirecurse bit  2-48  000100 2-49 equ stack_header_end,64 length of stack header  2-50  2-51  2-52  2-53  000000 2-54 equ trace_frames.count,0 number of trace frames on stack  000001 2-55 equ trace_frames.top_ptr,1 packed pointer to top one  2-56  2-57 " The following constant is an offset within the pl1 operators table.  2-58 " It references a transfer vector table.  2-59  000551 2-60 bool tv_offset,551 2-61  2-62  2-63 " The following constants are offsets within this transfer vector table.  2-64  001170 2-65 equ call_offset,tv_offset+271  001171 2-66 equ push_offset,tv_offset+272  001172 2-67 equ return_offset,tv_offset+273  001173 2-68 equ return_no_pop_offset,tv_offset+274 001174 2-69 equ entry_offset,tv_offset+275 2-70  2-71  2-72 " END INCLUDE FILE stack_header.incl.alm  1779 include stack_frame  3-1 "  3-2 " BEGIN INCLUDE FILE ... stack_frame.incl.alm 6/72 RBS  3-3 "  3-4 " Modified: 16 Dec 1977, D. Levin - to add fio_ps_ptr  3-5 " Modified: 3 Feb 1978, P. Krupp - to add run_unit_manager_bit & main_proc_bit 3-6 " Modified: 21 March 1978, D. Levin - change fio_ps_ptr to support_ptr  3-7 "  000020 3-8 equ stack_frame.prev_sp,16 000020 3-9 equ stack_frame.condition_word,16  000022 3-10 equ stack_frame.next_sp,18 000022 3-11 equ stack_frame.signaller_word,18  000024 3-12 equ stack_frame.return_ptr,20  000026 3-13 equ stack_frame.entry_ptr,22  000030 3-14 equ stack_frame.operator_ptr,24  000030 3-15 equ stack_frame.lp_ptr,24  000032 3-16 equ stack_frame.arg_ptr,26 000034 3-17 equ stack_frame.static_ptr,28  000035 3-18 equ stack_frame.support_ptr,29 " only used by fortran I/O  000036 3-19 equ stack_frame.on_unit_rel_ptrs,30  000037 3-20 equ stack_frame.operator_ret_ptr,31  000037 3-21 equ stack_frame.translator_id,31  000040 3-22 equ stack_frame.regs,32  000060 3-23 equ stack_frame.min_length,48  000020 3-24 equ stack_frame.flag_word,16  020000 3-25 bool stack_frame.main_proc_bit,020000 (DL) 010000 3-26 bool stack_frame.run_unit_manager,010000 (DL)  004000 3-27 bool stack_frame.signal_bit,004000 (DL)  002000 3-28 bool stack_frame.crawl_out_bit,002000 (DL) 001000 3-29 bool stack_frame.signaller_bit,001000 (DL) 000400 3-30 bool stack_frame.link_trap_bit,000400 (DL) 000200 3-31 bool stack_frame.support_bit,000200 (DL)  000100 3-32 bool stack_frame.condition_bit,000100 (DL) 3-33  3-34 "  3-35 " END INCLUDE FILE ... stack_frame.incl.alm  3-36 "  1780 include bos_sdw  4-1 "  4-2 " BEGIN INCLUDE FILE sdw.incl.alm 02/12/74  4-3 "  000014 4-4 equ sdw.add_shift,12  007000 4-5 bool sdw.r1,007000 Ringbrack 1 (DL)  000700 4-6 bool sdw.r2,000700 Ringbrack 2 (DL)  000070 4-7 bool sdw.r3,000070 Ringbrack 3 (DL)  4-8  000004 4-9 bool sdw.df,000004 Directed fault bit (0 -> fault)  000003 4-10 bool sdw.fault_code,000003 Number of directed fault  4-11  377770 4-12 bool sdw.bound,377770 Bound field (DU)  000004 4-13 bool sdw.read,000004 Read permission bit (DU) 000002 4-14 bool sdw.execute,000002 Execute permission bit (DU)  000001 4-15 bool sdw.write,000001 Write permission bit (DU)  4-16  400000 4-17 bool sdw.privileged,400000 Privileged bit (DL) 200000 4-18 bool sdw.unpaged,200000 Unpaged bit (DL)  100000 4-19 bool sdw.entry_bound_sw,100000 Entry bound switch (DL) 040000 4-20 bool sdw.cache,040000 Cache enabled bit (DL)  037777 4-21 bool sdw.entry_bound,037777 Entry bound (DL)  4-22  4-23 "  4-24 " END INCLUDE FILE sdw.incl.alm  4-25 "  1781 include mc 5-1 "  5-2 " BEGIN INCLUDE FILE mc.incl.alm 6/72 SHW 5-3 " Modified 8/80 by J. A. Bush for dps8/70M CPU  5-4 "  5-5  5-6 " General layout of data items. 5-7  000000 5-8 equ mc.prs,0 pointer registers  000020 5-9 equ mc.regs,16 registers  000030 5-10 equ mc.scu,24 SCU data  000050 5-11 equ mc.eis_info,40 pointers and lengths for EIS  5-12  5-13 " Temporary storage for software  5-14  000040 5-15 equ mc.mask,32 system controller mask at time of fault 000042 5-16 equ mc.ips_temp,34 temporary storage for IPS info  000043 5-17 equ mc.errcode,35 error code  000044 5-18 equ mc.fim_temp,36 temporary to hold fault index and unique index  000045 5-19 equ mc.fault_reg,37 fault register 000046 5-20 equ mc.fault_time,38 time of fault 000046 5-21 equ mc.cpu_type_word,38 CPU type from rsw (2). overlays part of time word 300000 5-22 bool mc.cpu_type_mask,300000 DU  000046 5-23 equ mc.ext_fault_reg,38 ext fault reg for dps8. overlays part of time word 077774 5-24 bool mc.ext_fault_reg_mask,77774 DU  000003 5-25 equ mc.cpu_type_shift,3 positions to shift right or left  5-26  5-27  5-28  5-29 " SCU DATA 5-30  5-31 " WORD (0) PROCEDURE POINTER REGISTER 5-32  000030 5-33 equ mc.scu.ppr.prr_word,24 Procedure Ring Register 000000 5-34 equ scu.ppr.prr_word,0 700000 5-35 bool scu.ppr.prr_mask,700000 DU  000041 5-36 equ scu.ppr.prr_shift,33  5-37  000030 5-38 equ mc.scu.ppr.psr_word,24 Procedure Segment Register  000000 5-39 equ scu.ppr.psr_word,0 077777 5-40 bool scu.ppr.psr_mask,077777 DU  000022 5-41 equ scu.ppr.psr_shift,18  5-42  000030 5-43 equ mc.scu.ppr.p_word,24 Procedure Privileged Bit  000000 5-44 equ scu.ppr.p_word,0  400000 5-45 bool scu.ppr.p,400000 DL  5-46  5-47 " APPENDING UNIT STATUS  000030 5-48 equ mc.scu.apu_stat_word,24 APPENDING UNIT STATUS  000000 5-49 equ scu.apu_stat_word,0  5-50  200000 5-51 bool scu.apu.xsf,200000 DL - Ext Seg Flag - IT mod.  100000 5-52 bool scu.apu.sdwm,100000 DL - Match in SDW Ass. Mem.  040000 5-53 bool scu.apu.sd_on,040000 DL - SDW Ass. Mem. ON  020000 5-54 bool scu.apu.ptwm,020000 DL - Match in PTW Ass. Mem.  010000 5-55 bool scu.apu.pt_on,010000 DL - PTW Ass. Mem. ON  004000 5-56 bool scu.apu.pi_ap,004000 DL - Instr fetch or Append cycle 002000 5-57 bool scu.apu.dsptw,002000 DL - Fetch of DSPTW  001000 5-58 bool scu.apu.sdwnp,001000 DL - Fetch of SDW non-paged  000400 5-59 bool scu.apu.sdwp,000400 DL - Fetch of SDW paged  000200 5-60 bool scu.apu.ptw,000200 DL - Fetch of PTW 000100 5-61 bool scu.apu.ptw2,000100 DL - Fetch of pre-paged PTW 000040 5-62 bool scu.apu.fap,000040 DL - Fetch of final address paged 000020 5-63 bool scu.apu.fanp,000020 DL - Fetch final address non-paged  000010 5-64 bool scu.apu.fabs,000010 DL - Fetch of final address absolute 5-65  000030 5-66 equ mc.scu.fault_cntr_word,24 Num of retrys of EIS instructions.  000000 5-67 equ scu.fault_cntr_word,0 5-68  000007 5-69 bool scu.fault_cntr_mask,000007  5-70  5-71  5-72 " WORD (1) FAULT DATA 5-73  000031 5-74 equ mc.scu.fault_data_word,25 FAULT DATA  000001 5-75 equ scu.fault_data_word,1  5-76  400000 5-77 bool scu.fd.iro,400000 DU - Illegal Ring Order  200000 5-78 bool scu.fd.oeb,200000 DU - Not In Execute Bracket  100000 5-79 bool scu.fd.e_off,100000 DU - No Execute 040000 5-80 bool scu.fd.orb,040000 DU - Not In Read Bracket  020000 5-81 bool scu.fd.r_off,020000 DU - No Read  010000 5-82 bool scu.fd.owb,010000 DU - Not In Write Bracket  004000 5-83 bool scu.fd.w_off,004000 DU - No Write  002000 5-84 bool scu.fd.no_ga,002000 DU - Not A Gate  001000 5-85 bool scu.fd.ocb,001000 DU - Not in Call Bracket  000400 5-86 bool scu.fd.ocall,000400 DU - Outward Call  000200 5-87 bool scu.fd.boc,000200 DU - Bad Outward Call  000100 5-88 bool scu.fd.inret,000100 DU - Inward Return  000040 5-89 bool scu.fd.crt,000040 DU - Cross Ring Transfer  000020 5-90 bool scu.fd.ralr,000020 DU - Ring Alarm 000010 5-91 bool scu.fd.am_er,000010 DU - Assoc. Mem. Fault  000004 5-92 bool scu.fd.oosb,000004 DU - Out Of Bounds  000002 5-93 bool scu.fd.paru,000002 DU - Parity Upper 000001 5-94 bool scu.fd.parl,000001 DU - Parity Lower 5-95  400000 5-96 bool scu.fd.onc_1,400000 DL - Op Not Complete 200000 5-97 bool scu.fd.onc_2,200000 DL - Op Not Complete 5-98  5-99 " GROUP II FAULT DATA  400000 5-100 bool scu.fd.isn,400000 DU - Illegal Segment Number  200000 5-101 bool scu.fd.ioc,200000 DU - Illegal Op Code  100000 5-102 bool scu.fd.ia_im,100000 DU - Illegal Addr - Modifier 040000 5-103 bool scu.fd.isp,040000 DU - Illegal Slave Procedure  020000 5-104 bool scu.fd.ipr,020000 DU - Illegal Procedure 010000 5-105 bool scu.fd.nea,010000 DU - Non Existent Address  004000 5-106 bool scu.fd.oobb,004000 DU - Out Of Bounds  5-107  000031 5-108 equ mc.scu.port_stat_word,25 PORT STATUS  000001 5-109 equ scu.port_stat_word,1  5-110  170000 5-111 bool scu.ial_mask,170000 DL - Illegal Action Lines  000014 5-112 equ scu.ial_shift,12  5-113  007000 5-114 bool scu.iac_mask,007000 DL - Illegal Action Channel  000011 5-115 equ scu.iac_shift,9  5-116  000700 5-117 bool scu.con_chan_mask,000700 DL - Connect Channel 000006 5-118 equ scu.con_chan_shift,6  5-119  000076 5-120 bool scu.fi_num_mask,000076 DL - Fault / Interrupt Number 000001 5-121 equ scu.fi_num_shift,1 5-122  000001 5-123 bool scu.fi_flag_mask,000001 DL - Fault / Interrupt Flag  5-124  5-125  5-126 " WORD (2) TEMPORARY POINTER REGISTER 5-127  000032 5-128 equ mc.scu.tpr.trr_word,26 Temporary Ring Register 000002 5-129 equ scu.tpr.trr_word,2 700000 5-130 bool scu.tpr.trr_mask,700000 DU  000041 5-131 equ scu.tpr.trr_shift,33  5-132  000032 5-133 equ mc.scu.tpr.tsr_word,26 Temporary Segment Register  000002 5-134 equ scu.tpr.tsr_word,2 077777 5-135 bool scu.tpr.tsr_mask,077777 DU  000022 5-136 equ scu.tpr.tsr_shift,18  5-137  000032 5-138 equ mc.scu.cpu_no_word,26 CPU Number  000002 5-139 equ scu.cpu_no_word,2  5-140  000700 5-141 bool scu.cpu_no_mask,000700 DL 000006 5-142 equ scu.cpu_shift,6  5-143  000032 5-144 equ mc.scu.delta_word,26 Tally Modification DELTA  000002 5-145 equ scu.delta_word,2  5-146  000077 5-147 bool scu.delta_mask,000077 DL  5-148  5-149  5-150 " WORD (3) TSR STATUS 5-151  000033 5-152 equ mc.scu.tsr_stat_word,27 TSR STATUS for 1,2, and 3  000003 5-153 equ scu.tsr_stat_word,3 Word Instructions 5-154  777700 5-155 bool scu.tsr_stat_mask,777700 DL - All of Status  000006 5-156 equ scu.tsr_stat_shift,6  5-157  740000 5-158 bool scu.tsna_mask,740000 DL - Word 1 Status  700000 5-159 bool scu.tsna.prn_mask,700000 DL - Word 1 PR num  000017 5-160 equ scu.tsna.prn_shift,15  040000 5-161 bool scu.tsna.prv,040000 DL - Word 1 PR valid bit 5-162  036000 5-163 bool scu.tsnb_mask,036000 DL - Word 2 Status  034000 5-164 bool scu.tsnb.prn_mask,034000 DL - Word 2 PR num  000013 5-165 equ scu.tsnb.prn_shift,11  002000 5-166 bool scu.tsnb.prv,002000 DL - Word 2 PR valid bit 5-167  000013 5-168 bool scu.tsnc_mask,0013 DL - Word 3 Status  001600 5-169 bool scu.tsnc.prn_mask,001600 DL - Word 3 PR num  000007 5-170 equ scu.tsnc.prn_shift,7  000100 5-171 bool scu.tsnc.prv,000100 DL - Word 3 PR valid bit 5-172  5-173  000033 5-174 equ mc.scu.tpr.tbr_word,27 TPR.TBR Field  000003 5-175 equ scu.tpr.tbr_word,3 5-176  000077 5-177 bool scu.tpr.tbr_mask,000077 DL  5-178  5-179  5-180 " WORD (4) INSTRUCTION COUNTER  5-181  000034 5-182 equ mc.scu.ilc_word,28 INSTRUCTION COUNTER  000004 5-183 equ scu.ilc_word,4 000022 5-184 equ scu.ilc_shift,18  5-185  000034 5-186 equ mc.scu.indicators_word,28 INDICATOR REGISTERS 000004 5-187 equ scu.indicators_word,4  5-188  400000 5-189 bool scu.ir.zero,400000 DL - Zero Indicator  200000 5-190 bool scu.ir.neg,200000 DL - Negative Indicator  100000 5-191 bool scu.ir.carry,100000 DL - Carry Indicator 040000 5-192 bool scu.ir.ovfl,040000 DL - Overflow Indicator  020000 5-193 bool scu.ir.eovf,020000 DL - Exponent Overflow Ind  010000 5-194 bool scu.ir.eufl,010000 DL - Exponent Underflow Ind  004000 5-195 bool scu.ir.oflm,004000 DL - Overflow Mask Indicator  002000 5-196 bool scu.ir.tro,002000 DL - Tally Runout Indicator  001000 5-197 bool scu.ir.par,001000 DL - Parity Indicator 000400 5-198 bool scu.ir.parm,000400 DL - Parity Mask Indicator  000200 5-199 bool scu.ir.bm,000200 DL - Bar Mode Indicator  000100 5-200 bool scu.ir.tru,000100 DL - Truncation Indicator  000040 5-201 bool scu.ir.mif,000040 DL - Multiword Indicator  000020 5-202 bool scu.ir.abs,000020 DL - Absolute Indicator  5-203  5-204  5-205 " WORD (5) COMPUTED ADDRESS  5-206  000035 5-207 equ mc.scu.ca_word,29 COMPUTED ADDRESS  000005 5-208 equ scu.ca_word,5  000022 5-209 equ scu.ca_shift,18  5-210  000035 5-211 equ mc.scu.cu_stat_word,29 CONTROL UNIT STATUS 000005 5-212 equ scu.cu_stat_word,5 5-213  400000 5-214 bool scu.cu.rf,400000 DL - Repeat First  5-215 " On First Cycle of Repeat Inst.  200000 5-216 bool scu.cu.rpt,200000 DL - Repeat Instruction  100000 5-217 bool scu.cu.rd,100000 DL - Repeat Double Instr.  040000 5-218 bool scu.cu.rl,040000 DL - Repeat Link Instr.  5-219  020000 5-220 bool scu.cu.pot,020000 DL - IT Modification  010000 5-221 bool scu.cu.pon,010000 DL - Return Type Instruction  5-222  004000 5-223 bool scu.cu.xde,004000 DL - XDE from Even Location  002000 5-224 bool scu.cu.xdo,002000 DL - XDE from Odd Location  5-225  001000 5-226 bool scu.cu.poa,001000 DL - Operand Preparation  000400 5-227 bool scu.cu.rfi,000400 DL - Tells CPU to refetch instruction  5-228 " This Bit Not Used (000200)  000100 5-229 bool scu.cu.if,000100 DL - Fault occurred during instruction fetch  5-230  000035 5-231 equ mc.scu.cpu_tag_word,29 Computed Tag Field  000005 5-232 equ scu.cpu_tag_word,5 5-233  000007 5-234 bool scu.cpu_tag_mask,000007 DL  5-235  5-236  5-237 " WORDS (6,7) INSTRUCTIONS 5-238  000036 5-239 equ scu.even_inst_word,30 Even Instruction 5-240  000037 5-241 equ scu.odd_inst_word,31 Odd Instruction  5-242  5-243  5-244 " END INCLUDE FILE incl.alm 1782  1783 " 1784 include bos_page_info  6-1 " BEGIN INCLUDE FILE page_info.incl.alm -- 6/72  6-2 "  037777 6-3 bool address_compare_mask,037777  000012 6-4 equ page_power,10 2**10 = size of page  000001 6-5 bool df1,000001 directed fault 1 on page fault  100000 6-6 bool int,100000  000020 6-7 bool pri,000020  000004 6-8 bool no_post,000004  000003 6-9 equ sst,3  000003 6-10 equ pdm,sst  000003 6-11 equ ast,sst  000002 6-12 equ ptw,2  000003 6-13 equ cme,sst  000000 6-14 equ fault_entry,0  000001 6-15 equ read_entry,1  000002 6-16 equ write_entry,2  000003 6-17 equ pre_page_entry,3  000004 6-18 equ post_purge_entry,4 000005 6-19 equ pd_flush_entry,5  000006 6-20 equ evict_entry,6  000007 6-21 equ abs_wire_entry,7  000010 6-22 equ cleanup_entry,8  000010 6-23 bool working_set,000010  000002 6-24 bool post_purge_bit,000002 000001 6-25 bool moved_bit,000001  000004 6-26 bool used_bit_off,000004  010101 6-27 bool char_desc,010101  000014 6-28 equ ast_size,12  000004 6-29 equ pdsize,4  000012 6-30 equ pd_free_required,10  000036 6-31 equ pd_write_limit,30  000036 6-32 equ pd_max_rws,30  000017 6-33 equ pre_seek_limit,15  6-34  6-35 "  6-36 " Shifts for converting cmep offsets,  6-37 " ptw/sdw addresses, and absaddrs.  6-38  000014 6-39 equ coreadd_to_desc.ls,12 coreadd var to sdw/ptw  000006 6-40 equ coreadd_to_desc_lower.rl,6 for putting together ptws  000014 6-41 equ desc_to_coreadd.rl,12 ptw/sdw to coreadd  6-42  000012 6-43 equ cmep_to_coreadd.rl,10 .cmep to coreadd 000012 6-44 equ coreadd_to_cmep.ls,10 coreadd to .cmep 6-45  000002 6-46 equ cmep_to_desc.ls,2 .cmep to ptw/sdw  000002 6-47 equ desc_to_cmep.rl,2 ptw/sdw to .cmep  6-48  6-49 "  6-50 " Various AST masks which are not  6-51 " expressible in standard notation  6-52 "  777000 6-53 bool aste.csl_mask_inner,777000  777000 6-54 bool aste.records_mask_inner,777000  6-55  6-56 "  6-57 " END INCLUDE FILE page_info.incl.alm  1785 include apte  7-1 "  7-2 " BEGIN INCLUDE FILE apte.incl.alm  7-3 "  7-4 "  000000 7-5 equ apte.thread,0  000000 7-6 equ apte.fp,0 "UPPER 000000 7-7 equ apte.bp,0 "LOWER 7-8  000001 7-9 equ apte.flags,1  000001 7-10 equ apte.sentinel,1  400000 7-11 bool apte.mbz,400000 "DU  200000 7-12 bool apte.wakeup_waiting,200000 "DU  100000 7-13 bool apte.stop_pending,100000 "DU  040000 7-14 bool apte.pre_empted,040000 "DU  020000 7-15 bool apte.hproc,020000 "DU  010000 7-16 bool apte.loaded,010000 "DU  004000 7-17 bool apte.eligible,004000 "DU  002000 7-18 bool apte.idle,002000 "DU 001000 7-19 bool apte.interaction,001000 "DU  000400 7-20 bool apte.pre_empt_pending,000400 "DU  000200 7-21 bool apte.default_procs_required,000200 "DU  000100 7-22 bool apte.realtime_burst,000100 "DU  000040 7-23 bool apte.always_loaded,000040 "DU 000020 7-24 bool apte.dbr_loaded,000020 "DU  000010 7-25 bool apte.being_loaded,000010 "DU  000004 7-26 bool apte.shared_stack_0,000004 "DU  000002 7-27 bool apte.page_wait_flag,000002 "DU  000001 7-28 bool apte.firstsw,000001 "DU  000001 7-29 equ apte.state,1 "LOWER  7-30  000002 7-31 equ apte.page_faults,2 7-32  000003 7-33 equ apte.processid,3  7-34  000004 7-35 equ apte.te,4  7-36  000005 7-37 equ apte.ts,5  7-38  000006 7-39 equ apte.ti,6  7-40  000007 7-41 equ apte.timax,7  7-42  000010 7-43 equ apte.ipc_pointers,8  000010 7-44 equ apte.event_thread,8 "UPPER  7-45  000011 7-46 equ apte.ips_message,9 7-47  000012 7-48 equ apte.asteps,10 000012 7-49 equ apte.pds,10 "UPPER  000012 7-50 equ apte.dseg,10 "LOWER  7-51  000013 7-52 equ apte.prds,11 "UPPER  000013 7-53 equ apte.savex7,11 "LOWER 7-54  000014 7-55 equ apte.term_processid,12 7-56  000015 7-57 equ apte.lock_id,13  000016 7-58 equ apte.time_used_clock,14  7-59  000020 7-60 equ apte.wait_event,16 7-61  000021 7-62 equ apte.wct_index,17 "UPPER  000021 7-63 equ apte.flags2,17 "LOWER 400000 7-64 bool apte.prior_sched,400000 "DL  000023 7-65 equ apte.chans_offset,19  374000 7-66 bool apte.special_chans,374000 "DL 000021 7-67 equ apte.batch_word,17 000010 7-68 bool apte.batch,000010 "DL  000007 7-69 bool apte.pr_tag_mask,000007  7-70  000022 7-71 equ apte.state_change_time,18  7-72  000024 7-73 equ apte.alarm_event,20  7-74  000026 7-75 equ apte.alarm_time_thread,22 "UPPER  000026 7-76 equ apte.alarm_time,22 7-77  000030 7-78 equ apte.term_channel,24  7-79  000032 7-80 equ apte.ws_size,26  7-81  000033 7-82 equ apte.temax,27  7-83  000034 7-84 equ apte.deadline,28  7-85  000036 7-86 equ apte.lock,30  7-87  000037 7-88 equ apte.cpu_monitor,31 units = 1/1024 sec  7-89  000040 7-90 equ apte.paging_measure,32 7-91  000042 7-92 equ apte.access_authorization,34 "DOUBLE WORD 400000 7-93 bool apte.no_ipc_check,400000 "DL  7-94  000044 7-95 equ apte.dbr,36  7-96  000046 7-97 equ apte.virtual_cpu_time,38  7-98  000050 7-99 equ apte.ittes_sent,40 000051 7-100 equ apte.ittes_got,41  7-101  000052 7-102 equ apte.current_response_state,42 " DU  000053 7-103 equ apte.number_processing,43  000054 7-104 equ apte.last_response_state_time,44  000056 7-105 equ apte.total_processing_time,46  000060 7-106 equ apte.begin_interaction_vcpu,48 7-107  000062 7-108 equ apte.saved_temax,50  000063 7-109 equ apte.procs_required,51 776000 7-110 bool apte.procs_required_mask,776000 " DU  7-111  000100 7-112 equ size_of_apt_entry,64  7-113  7-114 " MISC OLD DCLS.  7-115  000013 7-116 equ apte.le_shift,11  000175 7-117 bool apte.timer_factor,175 7-118  7-119  7-120 "  7-121 " END INCLUDE FILE apte.incl.alm  7-122 "  1786 include state_equs 8-1 " BEGIN INCLUDE FILE state_equs.incl.alm  8-2  000000 8-3 equ empty,0  000001 8-4 equ running,1  000002 8-5 equ ready,2  000003 8-6 equ waiting,3  000004 8-7 equ blocked,4  000005 8-8 equ stopped,5  000006 8-9 equ ptlocking,6  8-10  8-11 " END INCLUDE FILE state_equs.incl.alm  1787 include proc  9-1 "  9-2 " Begin include file ...... proc.incl.alm  9-3 " Modified 6/30/77 by Noel I. Morris  9-4 " Dump option feature by bsg 12/11/78  9-5 " Modified 4/30/80 by J. A. Bush to add ELIG, PP, and DIRS keywords 9-6 " Modified by Sherman D. Sprague 02/11/81 for DPS8 support. 9-7 " Modified April 1981 by J. Bongiovanni for picking up apte size from tc_data  9-8  000000 9-9 equ dir_modify,0 directory header modify word  9-10 " ****** THE FOLLOWING EQU'S MAY HAVE TO BE CHANGED IF TC_DATA IS REASSEMBLED. ******  000400 9-11 bool default_aptorg,400 origin of array of APT entries in tc_data  000253 9-12 bool aptoff,253 word containing offset of origin of APT entries  000313 9-13 bool aptsize,313 loc'n containing # of APT entries 000327 9-14 bool aptentsize,327 location containing size of an APTE  9-15  002374 0a 003040 7420 00 9-16 proc: stx2 pcx2 here to dumpprocesses  002375 0a 003041 7410 00 9-17 stx1 pcx2+1  002376 0a 003042 7400 00 9-18 stx0 pcx2+2  002377 0a 003043 7430 00 9-19 stx3 pcx2+3  002400 aa 007000 2370 00 9-20 ldaq cmdbr save current dbr  002401 0a 003072 7570 00 9-21 staq pcdbr 002402 0a 000446 7020 00 9-22 tsx2 printreg print regs once 002403 aa 005500 6270 00 9-23 eax7 nsegbitab say no segments dumped 002404 aa 000040 0604 00 9-24 csl (),(rl),bool(00)  002405 0a 002405 000000 9-25 descb *,0  002406 0a 003114 000017 9-26 descb segbitab,x7  002407 0a 003047 5540 00 9-27 stc1 pcfirst first proc, dump unpaged segs  002410 0a 003113 4500 00 9-28 stz pcddbr We havent dumped the cmdbr yet 002411 aa 007042 7020 00 9-29 tsx2 sltsearch search the SLT to find tc_data 002412 0a 003053 0000 00 9-30 arg tcd_name  002413 0a 003032 7100 00 9-31 tra pcer  002414 aa 000043 7730 00 9-32 lrl 36-1 move to QU and multiply by 2 002415 aa 007032 7020 00 9-33 tsx2 apnd fetch the SDW for tc_data  002416 aa 007002 0000 00 9-34 arg hcdbr  002417 0a 003032 0000 00 9-35 arg pcer  002420 aa 007004 2370 20 9-36 ldaq fetchout,*  002421 0a 003066 7570 00 9-37 staq aptsdw  002422 aa 007031 7020 00 9-38 tsx2 grab get information from tc_data  002423 0a 003056 000000 9-39 zero pclist using list  002424 0a 003032 7100 00 9-40 tra pcer  9-41  002425 aa 000400 6350 00 9-42 eaa default_aptorg default origin in AU  002426 0a 003057 3540 00 9-43 stac aptorg if cell was zero, use default 002427 aa 000100 2350 07 9-44 lda size_of_apt_entry,dl default size of APTE  002430 0a 003063 3540 00 9-45 stac pcaptsize if cell was zero, use default  9-46  002431 aa 007042 7020 00 9-47 tsx2 sltsearch search for dseg  002432 0a 003102 0000 00 9-48 arg dseg_name  002433 0a 003032 7100 00 9-49 tra pcer  002434 0a 003075 7550 00 9-50 sta dseg_no  9-51  002435 aa 007042 7020 00 9-52 tsx2 sltsearch search for pds 002436 0a 003104 0000 00 9-53 arg pds_name  002437 0a 003032 7100 00 9-54 tra pcer  002440 0a 003076 7550 00 9-55 sta pds_no 9-56  002441 aa 007042 7020 00 9-57 tsx2 sltsearch search for prds  002442 0a 003106 0000 00 9-58 arg prds_name  002443 0a 003032 7100 00 9-59 tra pcer  002444 0a 003077 7550 00 9-60 sta prds_no  9-61  002445 aa 007042 7020 00 9-62 tsx2 sltsearch search for kst_seg 002446 0a 003110 0000 00 9-63 arg kst_name  002447 0a 003032 7100 00 9-64 tra pcer  002450 0a 003100 7550 00 9-65 sta kst_no 9-66 "  9-67 " Select the segment dumping options.  9-68  002451 0a 002577 4500 00 9-69 stz pcallopt Init the option collectors.  002452 0a 002575 4500 00 9-70 stz pcelgopt  002453 0a 002576 4500 00 9-71 stz pcinzopt  002454 0a 002574 4500 00 9-72 stz pcrunopt  002455 aa 012041 2350 00 9-73 lda arg+1 Check for default and old compatibility 002456 aa 000000 6220 00 9-74 eax2 0 002457 aa 006300 5202 04 9-75 rpt pcnmacroopts,4,tze checking for fdump with no args, fdump short  002460 0a 002534 1150 12 9-76 cmpa pcmacroopttbl,2 or fdump long 002461 0a 002471 6064 00 9-77 ttn pcnmacop xfer if not macro-op 002462 aa 777775 2350 12 9-78 lda -3,2 Load running process options 002463 0a 002574 7550 00 9-79 sta pcrunopt and save 002464 aa 777776 2350 12 9-80 lda -2,2 Load eligible process options  002465 0a 002575 7550 00 9-81 sta pcelgopt and save 002466 aa 777777 2350 12 9-82 lda -1,2 Load all process options 002467 0a 002577 7550 00 9-83 sta pcallopt and save 002470 0a 002501 7100 00 9-84 tra pcmrgop  9-85  002471 aa 000001 6230 00 9-86 pcnmacop: eax3 1 Parse RUN, ELIG and ALL ctlargs.  002472 aa 012040 2350 13 9-87 lda arg,3 Start at arg+1 and check major word.  002473 aa 000000 6220 00 9-88 pcselmaj: eax2 0 Scan for major keywords  002474 aa 012300 5202 02 9-89 rpt pcnmajoropts,2,tze 002475 0a 002550 1150 12 9-90 cmpa pcmajoropttbl,2  002476 0a 002517 6064 00 9-91 ttn pcseler must be error if no compare  002477 aa 777777 2210 12 9-92 ldx1 -1,2 Get or-ing word address 002500 0a 002506 6010 00 9-93 tnz pcselmin Wasn't fence.  002501 0a 002577 2350 00 9-94 pcmrgop: lda pcallopt Merge all and eligible options down  002502 0a 002575 2550 00 9-95 orsa pcelgopt i.e. all processes includes eligible  002503 0a 002575 2350 00 9-96 lda pcelgopt and running processes  002504 0a 002574 2550 00 9-97 orsa pcrunopt  002505 0a 002601 7100 00 9-98 tra pc_begin_dumping  9-99  002506 aa 000001 6230 13 9-100 pcselmin: eax3 1,3 get next arg  002507 aa 012040 2350 13 9-101 lda arg,3  002510 aa 000000 6220 00 9-102 eax2 0 002511 aa 012300 5202 02 9-103 rpt pcnminorkeys,2,tze 002512 0a 002562 1150 12 9-104 cmpa pcminorkeys,2 002513 0a 002473 6064 00 9-105 ttn pcselmaj not minor keyword, go look for major 002514 aa 777777 2360 12 9-106 ldq -1,2  002515 aa 000000 2560 11 9-107 orsq 0,1 Or into control opt word.  002516 0a 002506 7100 00 9-108 tra pcselmin  9-109  002517 aa 012241 7020 00 9-110 pcseler: tsx2 erpt  002520 aa 053 123 171 156 9-111 acc "Syntax error in segment selecting keywords."  002521 aa 164 141 170 040 002522 aa 145 162 162 157 002523 aa 162 040 151 156 002524 aa 040 163 145 147 002525 aa 155 145 156 164 002526 aa 040 163 145 154 002527 aa 145 143 164 151 002530 aa 156 147 040 153 002531 aa 145 171 167 157 002532 aa 162 144 163 056 002533 0a 003032 7100 00 9-112 tra pcer  9-113 "  9-114 "  9-115 " Dumping option tables 9-116 "  9-117  9-118 even  000001 9-119 bool dopt.hc,000001  000002 9-120 bool dopt.pp,000002  000004 9-121 bool dopt.dirs,000004  000010 9-122 bool dopt.stk,000010  000020 9-123 bool dopt.write,000020 9-124  002534 9-125 pcmacroopttbl:  002534 aa 206 230 465 163 9-126 bci " short"  002535 aa 000007 000000 9-127 zero dopt.hc+dopt.pp+dopt.dirs,0 RUN HC PP DIRS  002536 aa 000001 000000 9-128 zero dopt.hc,0 ELIG HC  002537 aa 000000 000000 9-129 zero 0,0 No All options  002540 aa 202 043 464 527 9-130 bci " long"  002541 aa 000000 000000 9-131 zero 0,0 Running process options 002542 aa 000000 000000 9-132 zero 0,0 Eligible process options  002543 aa 000020 000000 9-133 zero dopt.write,0 ALL WRIT  002544 aa 777777 777777 9-134 oct 777777777777 fdump with no args (fence)  002545 aa 000007 000000 9-135 zero dopt.hc+dopt.pp+dopt.dirs,0 RUN HC PP DIRS  002546 aa 000000 000000 9-136 zero 0,0 No eligible options 002547 aa 000000 000000 9-137 zero 0,0 no all options  000003 9-138 equ pcnmacroopts,(*-pcmacroopttbl)/4  9-139  002550 9-140 pcmajoropttbl:  002550 aa 202 020 516 445 9-141 bci " run"  002551 0a 002574 000000 9-142 zero pcrunopt  002552 aa 202 025 433 127 9-143 bci " elig"  002553 0a 002575 000000 9-144 zero pcelgopt  002554 aa 202 031 457 151 9-145 bci " inzr"  002555 0a 002576 000000 9-146 zero pcinzopt  002556 aa 202 020 214 343 9-147 bci " all"  002557 0a 002577 000000 9-148 zero pcallopt  002560 aa 777777 777777 9-149 oct 777777777777 argument fence  002561 aa 000000 000000 9-150 zero 0 000005 9-151 equ pcnmajoropts,(*-pcmajoropttbl)/2  9-152  002562 9-153 pcminorkeys:  002562 aa 202 020 203 023 9-154 bci " hc"  002563 aa 000001 000000 9-155 zero dopt.hc,0 002564 aa 202 020 204 747 9-156 bci " pp"  002565 aa 000002 000000 9-157 zero dopt.pp,0 002566 aa 202 024 315 162 9-158 bci " dirs"  002567 aa 000004 000000 9-159 zero dopt.dirs,0  002570 aa 626 321 234 262 9-160 bci "stacks"  002571 aa 000010 000000 9-161 zero dopt.stk,0  002572 aa 202 066 513 163 9-162 bci " writ"  002573 aa 000020 000000 9-163 zero dopt.write,0  000005 9-164 equ pcnminorkeys,(*-pcminorkeys)/2 9-165  002574 aa 000000 000000 9-166 pcrunopt: oct 0 Opts for running procs 002575 aa 000000 000000 9-167 pcelgopt: oct 0 opts for eligible procs  002576 aa 000000 000000 9-168 pcinzopt: oct 0 Opts for initializer process  002577 aa 000000 000000 9-169 pcallopt: oct 0 Opts for all procs 9-170  002600 aa 000000 000000 9-171 pcopt: oct 0 Selected options, for current process 9-172 " 002601 9-173 pc_begin_dumping:  002601 aa 000001 2350 07 9-174 lda 1,dl start at proc 1  002602 0a 003061 1150 00 9-175 pclp: cmpa pcnapt any more APT entries?  002603 0a 003032 6054 00 9-176 tpnz pcer exit loop if not  002604 0a 003050 7550 00 9-177 sta pcno store process number 002605 aa 777777 6360 05 9-178 eaq -1,al  002606 0a 003063 4020 00 9-179 mpy pcaptsize compute index to this APT entry 002607 0a 003057 0360 00 9-180 adlq aptorg add offset of origin  002610 0a 003051 7560 00 9-181 stq pcapte save this pointer  002611 aa 000044 6360 02 9-182 eaq apte.dbr,qu  002612 aa 007032 7020 00 9-183 tsx2 apnd Then get DBR from APT. 002613 0a 003066 0000 00 9-184 arg aptsdw 002614 0a 003032 7100 00 9-185 tra pcer  002615 aa 007004 2370 20 9-186 ldaq fetchout,*  002616 aa 007000 7570 00 9-187 staq cmdbr 002617 aa 000026 7360 00 9-188 qls 36-14 get the stack base  002620 aa 000001 7720 00 9-189 qrl 1  002621 0a 003101 7560 00 9-190 stq pcstklim  002622 0a 003072 6750 00 9-191 era pcdbr If old dbr, print it.  002623 0a 004062 3750 00 9-192 ana =o777777770000 002624 0a 002627 6010 00 9-193 tnz pcproc 002625 0a 003113 5540 00 9-194 stc1 pcddbr Mark dumped so we won't do it at end  002626 0a 002654 7100 00 9-195 tra pcsetrun this is a running process, go pick up option word  9-196  002627 0a 003051 6360 20 9-197 pcproc: eaq pcapte,* QU -> APT entry  002630 aa 000001 6360 02 9-198 eaq apte.state,qu Get state of process and switches.  002631 aa 007032 7020 00 9-199 tsx2 apnd  002632 0a 003066 0000 00 9-200 arg aptsdw 002633 0a 003032 7100 00 9-201 tra pcer  002634 aa 007004 2350 20 9-202 lda fetchout,* get flags and state 002635 aa 777777 2360 03 9-203 ldq -1,du set mask to look at lower half of word only 002636 aa 000000 2110 07 9-204 cmk empty,dl ignore if zero state 002637 0a 003027 6000 00 9-205 tze pcle  002640 0a 002574 2340 00 9-206 szn pcrunopt Do we want to dump running procs?  002641 0a 002646 6000 00 9-207 tze pcckelg xfer if no  002642 aa 000020 3150 03 9-208 cana apte.dbr_loaded,du dbr loaded?  002643 0a 002654 6010 00 9-209 tnz pcsetrun This is running proc 002644 aa 000005 2110 07 9-210 cmk stopped,dl Stopped proc?  002645 0a 002654 6000 00 9-211 tze pcsetrun yes, treat like running proc 002646 aa 004000 3150 03 9-212 pcckelg: cana apte.eligible,du is this an eligible process? 002647 0a 002652 6000 00 9-213 tze pcsetall no, go get all option word  002650 0a 002575 2350 00 9-214 lda pcelgopt get eligible options 002651 0a 002655 7100 00 9-215 tra pcsavopt  9-216  002652 0a 002577 2350 00 9-217 pcsetall: lda pcallopt no, must be all option word  002653 0a 002655 7100 00 9-218 tra pcsavopt  9-219  002654 0a 002574 2350 00 9-220 pcsetrun: lda pcrunopt  002655 0a 003050 2360 00 9-221 pcsavopt: ldq pcno check to see if initializer proc  002656 aa 000001 1160 07 9-222 cmpq 1,dl if first proc, its the initializer  002657 0a 002661 6010 00 9-223 tnz pcnoinzr no, some other proc  002660 0a 002576 2750 00 9-224 ora pcinzopt yes, or in inzr option word  002661 aa 000000 0750 07 9-225 pcnoinzr: ada 0,dl add zero to set (or reset) zero ind.  002662 0a 003027 6000 00 9-226 tze pcle no dumpage for this option set  002663 0a 002600 7550 00 9-227 sta pcopt save option word  9-228 " 002664 aa 012241 7020 00 9-229 pcnoc: tsx2 erpt print out what we are doing  002665 aa 025 160 162 157 9-230 acc 'proc ^o, dbr = ^w, ^w'  002666 aa 143 040 136 157 002667 aa 054 040 144 142 002670 aa 162 040 075 040 002671 aa 136 167 054 040 002672 aa 136 167 000 000 002673 0a 003050 0000 00 9-231 arg pcno  002674 aa 007000 0000 00 9-232 arg cmdbr  002675 aa 007001 0000 00 9-233 arg cmdbr+1  9-234  002676 aa 007026 7020 00 9-235 tsx2 getinit  9-236  002677 0a 001274 7020 00 9-237 tsx2 descrseg  9-238  002700 aa 000000 6210 00 9-239 eax1 0 x1 is segno  002701 0a 001560 7410 00 9-240 psegl: stx1 segno  9-241  002702 0a 001560 2350 00 9-242 lda segno segment # in AU 002703 aa 007027 7020 00 9-243 tsx2 getsdw get SDW  002704 0a 003024 7100 00 9-244 tra pcosdone error  002705 0a 003026 7100 00 9-245 tra pcled end of descseg  002706 0a 003070 7570 00 9-246 staq pcsdw save SDW of segment  9-247  002707 0a 002600 2230 00 9-248 ldx3 pcopt load current process dumping options  002710 aa 000001 3030 03 9-249 canx3 dopt.hc,du HC option in effect?  002711 0a 002717 6000 00 9-250 tze pcnohcop no don't bother  002712 aa 000000 6220 00 9-251 eax2 0 see if this seg gets dumped  002713 0a 001560 2360 00 9-252 ldq segno ..  002714 aa 012300 5202 01 9-253 rpt pcshnon,1,tze ..  002715 0a 003075 1160 12 9-254 cmpq pcshno,2 if in list  002716 0a 003022 6070 00 9-255 ttf pcosegp then dump it  002717 0a 003071 2360 00 9-256 pcnohcop: ldq pcsdw+1 get second word of SDW  002720 aa 000001 3160 03 9-257 canq sdw.write,du Check for write permit  002721 0a 003024 6000 00 9-258 tze pcosdone if not, don't dump  002722 0a 003101 2340 00 9-259 szn pcstklim no stack base? (idle process)  002723 0a 002726 6000 00 9-260 tze pckfproc yes, check if first proc dump`ed 002724 0a 003101 1010 00 9-261 cmpx1 pcstklim is current seg hc? 002725 0a 002731 6050 00 9-262 tpl pckstkop no not hc seg go check stack option  002726 0a 003047 2340 00 9-263 pckfproc: szn pcfirst is this first process dumped?  002727 0a 003022 6010 00 9-264 tnz pcosegp yes, go dump hc segs  002730 0a 003024 7100 00 9-265 tra pcosdone no, don't dump this seg  9-266  002731 aa 000010 3030 03 9-267 pckstkop: canx3 dopt.stk,du is STK option in force? 002732 0a 002737 6000 00 9-268 tze pcdmpunique no, go check other options 002733 aa 000000 6350 11 9-269 eaa 0,1 yes, copy segno into a reg  002734 0a 003101 1750 00 9-270 sba pcstklim is this a stack seg?  002735 aa 000010 1150 03 9-271 cmpa 8,du if range is 0 to 7 yes it is  002736 0a 003022 6040 00 9-272 tmi pcosegp xfer if yes, dump seg 9-273  002737 9-274 pcdmpunique: "dump if not already dumped. 002737 aa 200000 3160 07 9-275 canq sdw.unpaged,dl If not paged  002740 0a 003022 6010 00 9-276 tnz pcosegp dump unpaged segs 002741 0a 003070 2350 00 9-277 lda pcsdw reload sements sdw address  002742 aa 007016 1350 00 9-278 sbla sstsdw get ast index 002743 aa 000006 7350 00 9-279 als 6 in AU  002744 aa 777777 3750 03 9-280 ana -1,du ..  002745 0a 003052 7550 00 9-281 sta rel_pt_add save page table address 002746 aa 000020 3030 03 9-282 canx3 dopt.write,du if write option on byspass PP & DIRS check 002747 0a 003004 6010 00 9-283 tnz pcnockdirs 002750 aa 000002 3030 03 9-284 canx3 dopt.pp,du is PP option set? 002751 0a 002763 6000 00 9-285 tze pcckdirs no, go check DIRS options  002752 aa 000000 6360 01 9-286 eaq 0,au copy rel page table address to qu  002753 aa 000014 1360 03 9-287 sblq aste_size,du get aste address 002754 aa 000012 6360 02 9-288 eaq aste.per_process_word,qu get pp flag from aste 002755 aa 007032 7020 00 9-289 tsx2 apnd  002756 aa 007016 0000 00 9-290 arg sstsdw 002757 0a 003032 7100 00 9-291 tra pcer  002760 aa 007004 2370 20 9-292 ldaq fetchout,* get the per-process flag  002761 aa 000010 3150 03 9-293 cana aste.per_process,du is this a per-process seg?  002762 0a 003004 6010 00 9-294 tnz pcnockdirs yes, go make further checks 002763 aa 000004 3030 03 9-295 pcckdirs: canx3 dopt.dirs,du is DIRS option set?  002764 0a 003024 6000 00 9-296 tze pcosdone xfer if no. This seg will not be dumped. 002765 0a 003052 2360 00 9-297 ldq rel_pt_add reload segs page table base 002766 aa 000014 1360 03 9-298 sblq aste_size,du get aste address 002767 aa 000005 6360 02 9-299 eaq aste.dirsw_word,qu get dirsw flag from aste  002770 aa 007032 7020 00 9-300 tsx2 apnd  002771 aa 007016 0000 00 9-301 arg sstsdw 002772 0a 003032 7100 00 9-302 tra pcer  002773 aa 007004 2350 20 9-303 lda fetchout,* get dirsw word  002774 aa 040000 3150 07 9-304 cana aste.dirsw,dl is this a directory seg?  002775 0a 003024 6000 00 9-305 tze pcosdone xfer if no. don't dump this seg  002776 aa 000000 6360 00 9-306 eaq dir_modify get dir modified word  002777 aa 007032 7020 00 9-307 tsx2 apnd  003000 0a 003070 0000 00 9-308 arg pcsdw  003001 0a 003032 7100 00 9-309 tra pcer  003002 aa 007004 2340 20 9-310 szn fetchout,* has the dir been modified?  003003 0a 003024 6000 00 9-311 tze pcosdone xfer if no. don't dump this seg  003004 9-312 pcnockdirs: 003004 0a 003052 2350 00 9-313 lda rel_pt_add reload segs page table base 003005 aa 007022 1350 20 9-314 sbla castap,*  003006 aa 000003 3150 03 9-315 cana =o3,du all page tables start at 0 mod 4  003007 0a 003022 6010 00 9-316 tnz pcosegp  9-317  003010 aa 000026 7710 00 9-318 arl 18+4 divide by 16 to get bit table index  003011 aa 005500 1150 07 9-319 cmpa nsegbitab,dl this code assumes that min size of ASTE + PT = 16  003012 0a 003022 6050 00 9-320 tpl pcosegp  003013 aa 005005 0644 00 9-321 sztl (),(al),bool(05) test bit 003014 0a 003014 000000 9-322 descb *,0  003015 0a 003114 000001 9-323 descb segbitab,1  003016 0a 003024 6010 00 9-324 tnz pcosdone if on, skip the segment  003017 aa 017005 0604 00 9-325 csl (),(al),bool(17) turn the bit on  003020 0a 003020 000000 9-326 descb *,0  003021 0a 003114 000001 9-327 descb segbitab,1  9-328  003022 0a 001473 7020 00 9-329 pcosegp: tsx2 segprint print seg  003023 0a 003024 7100 00 9-330 tra *+1 ignore errors 9-331  003024 9-332 pcosdone:  003024 aa 000001 6210 11 9-333 eax1 1,1 go to next seg  003025 0a 002701 7100 00 9-334 tra psegl  9-335  003026 0a 003047 4500 00 9-336 pcled: stz pcfirst  003027 0a 003050 2350 00 9-337 pcle: lda pcno get process number  003030 aa 000001 0750 07 9-338 ada 1,dl increment  003031 0a 002602 7100 00 9-339 tra pclp and loop 9-340  003032 0a 003113 2340 00 9-341 pcer: szn pcddbr if process in machine conditions  003033 0a 003040 6010 00 9-342 tnz pcx2 hasn't been dumped, then do it  003034 0a 003113 5540 00 9-343 stc1 pcddbr only once.  003035 0a 003050 4500 00 9-344 stz pcno  003036 0a 003061 4500 00 9-345 stz pcnapt 003037 0a 002664 7100 00 9-346 tra pcnoc  9-347  003040 0a 003040 6220 00 9-348 pcx2: eax2 * restore and return  003041 0a 003041 6210 00 9-349 eax1 * 003042 0a 003042 6200 00 9-350 eax0 * 003043 0a 003043 6230 00 9-351 eax3 * 003044 0a 003072 2370 00 9-352 ldaq pcdbr restor dbr 003045 aa 007000 7570 00 9-353 staq cmdbr 003046 aa 000000 7100 12 9-354 tra 0,2  9-355  9-356 " 9-357  003047 0a 003047 0000 00 9-358 pcfirst: arg * if on, dumping first proc  003050 aa 000000 000000 9-359 pcno: oct 0 003051 aa 000000 000000 9-360 pcapte: oct 0 rel. pointer to APT entry  003052 9-361 rel_pt_add: 003052 aa 000000 000000 9-362 oct 0 rel address of segments page table in sst seg  9-363  003053 aa 000000 000007 9-364 tcd_name: dec 7 003054 aa 164 143 137 144 9-365 aci "tc_data " 003055 aa 141 164 141 040 9-366  003056 aa 000253 0000 00 9-367 pclist: arg aptoff  003057 9-368 aptorg: bss ,1 offset of origin of APTE array  003060 aa 000313 0000 00 9-369 arg aptsize  003061 9-370 pcnapt: bss ,1 number of entries in array  003062 aa 000327 0000 00 9-371 arg aptentsize 003063 9-372 pcaptsize:  003063 9-373 bss ,1 size of an APTE  003064 aa 777777 777777 9-374 dec -1 9-375  003065 aa 000000 0110 03 9-376 even  003066 aa 000000 000000 9-377 aptsdw: oct 0,0 003067 aa 000000 000000 003070 aa 000000 000000 9-378 pcsdw: oct 0,0  003071 aa 000000 000000 003072 aa 000000 000000 9-379 pcdbr: oct 0,0  003073 aa 000000 000000 003074 aa 000000 000000 9-380 pcrptadd: oct 0 temp storage for segments rel page table address  9-381  003075 9-382 pcshno: 003075 9-383 dseg_no: bss ,1 003076 9-384 pds_no: bss ,1  003077 9-385 prds_no: bss ,1 003100 9-386 kst_no: bss ,1  003101 aa 000000 000000 9-387 pcstklim: zero 0,0 upper is stack segno.  000005 9-388 equ pcshnon,*-pcshno  9-389  003102 aa 000000 000004 9-390 dseg_name:dec 4 003103 aa 144 163 145 147 9-391 aci 'dseg' 9-392  003104 aa 000000 000003 9-393 pds_name: dec 3 003105 aa 160 144 163 040 9-394 aci 'pds ' 9-395  003106 aa 000000 000004 9-396 prds_name:dec 4 003107 aa 160 162 144 163 9-397 aci 'prds' 9-398  003110 aa 000000 000007 9-399 kst_name: dec 7 003111 aa 153 163 164 137 9-400 aci 'kst_seg ' 003112 aa 163 145 147 040 003113 aa 000000 000000 9-401 pcddbr: oct 0 non-zero if cmdbr has been dumped  9-402  005500 9-403 equ nsegbitab,2880 max length of ast/16  003114 9-404 segbitab: bss ,(nsegbitab+35)/36  9-405  9-406 " End of include file ...... proc.incl.alm  9-407  1788 include fill  10-1 "  10-2 " Begin include file ...... fill.incl.alm  10-3 " FILL cell1 cont1 cell2 cont2 ...  10-4  003234 0a 003245 7400 00 10-5 fill: stx0 fillx0 save XR's  003235 0a 003246 7420 00 10-6 stx2 fillx2 ..  10-7  003236 aa 000001 6200 00 10-8 eax0 1 here to set dumper cells  003237 0a 003241 7100 00 10-9 tra *+2  10-10  003240 aa 000002 6200 10 10-11 filllp: eax0 2,0 go to next arg  003241 aa 012040 2350 10 10-12 lda arg,0  003242 0a 004041 1150 00 10-13 cmpa =-1 check for end  003243 0a 003253 6010 00 10-14 tnz fillll 003244 aa 007026 7020 00 10-15 tsx2 getinit if done, fill sdws for new segnos  10-16  003245 0a 003245 6200 00 10-17 fillx0: eax0 * restore XR's  003246 0a 003246 6220 00 10-18 fillx2: eax2 * ..  003247 aa 000001 7100 12 10-19 tra 1,2 return  10-20  003250 0a 003245 2200 00 10-21 fillerr: ldx0 fillx0  003251 0a 003246 2220 00 10-22 ldx2 fillx2  003252 aa 000000 7100 12 10-23 tra 0,2 take error return 10-24  003253 10-25 fillll: 003253 aa 000012 6270 00 10-26 eax7 nfilll-2 search table  003254 0a 003305 1150 17 10-27 cmpa filllst,7 003255 0a 003261 6000 00 10-28 tze fillfno  003256 aa 777776 6270 17 10-29 eax7 -2,7  003257 0a 003254 6050 00 10-30 tpl *-3  003260 0a 003250 7100 00 10-31 tra fillerr if not found, error  10-32  003261 aa 012041 2350 10 10-33 fillfno: lda arg+1,0 get value 003262 0a 004041 1150 00 10-34 cmpa =-1  003263 0a 003250 6000 00 10-35 tze fillerr  003264 0a 003306 2360 17 10-36 ldq filllst+1,7  003265 aa 000000 7100 06 10-37 tra 0,ql  10-38  003266 aa 000000 6260 05 10-39 fillrh: eax6 0,al  003267 aa 000000 4460 02 10-40 sxl6 0,qu  003270 0a 003240 7100 00 10-41 tra filllp 10-42  003271 aa 000000 7550 02 10-43 fillwd: sta 0,qu  003272 0a 003240 7100 00 10-44 tra filllp 10-45  003273 aa 000000 6260 05 10-46 filllh: eax6 0,al store in upper  003274 aa 000000 7460 02 10-47 stx6 0,qu  003275 0a 003240 7100 00 10-48 tra filllp 10-49  003276 10-50 fillonoff:  003276 aa 777777 3750 07 10-51 ana =-1,dl 003277 aa 204645 1150 07 10-52 cmpa =o204645,dl if on 003300 0a 003303 6000 00 10-53 tze *+3  003301 aa 000000 4500 02 10-54 stz 0,qu  003302 0a 003240 7100 00 10-55 tra filllp 003303 aa 000000 5540 02 10-56 stc1 0,qu set non zero  003304 0a 003240 7100 00 10-57 tra filllp 10-58  003305 10-59 filllst:  003305 aa 302 324 225 143 10-60 bci "hcdbrl"  003306 a0 007002 003271 10-61 zero hcdbr,fillwd  003307 aa 302 324 225 164 10-62 bci "hcdbru"  003310 a0 007003 003271 10-63 zero hcdbr+1,fillwd  003311 aa 624 363 622 527 10-64 bci "sltseg"  003312 a0 007011 003273 10-65 zero sltseg,filllh 003313 aa 202 020 224 662 10-66 bci " bos" dump BOS in core  003314 a0 007012 003276 10-67 zero bosdmp,fillonoff  003315 aa 202 047 212 725 10-68 bci " page"  003316 a0 007013 003276 10-69 zero pagesw,fillonoff  003317 aa 202 020 474 443 10-70 bci " pml"  003320 a0 007014 003276 10-71 zero pmlsw,fillonoff  000014 10-72 equ nfilll,*-filllst  10-73  10-74 " End of include file ...... fill.incl.alm  10-75  1789  1790 " 1791 include sst  11-1  11-2  11-3 "BEGIN INCLUDE FILE sst.incl.alm  11-4  11-5  11-6 "Created 11/11/82 1426.0 est Thu by convert_include_file, 11-7 " Version of 07/15/82 2104.3 est Thu.  11-8  11-9 "Made from >udd>Multics>Bongiovanni>htd>dm_dir>sst.incl.pl1,  11-10 " modified 11/11/82 1425.9 est Thu  11-11  11-12 "  11-13 " Structure sst 11-14 "  001000 11-15 equ sst_size,512  11-16  11-17  000000 11-18 equ sst.space,0  000010 11-19 equ sst.pre_page_time,8 " DOUBLE  000012 11-20 equ sst.post_purge_time,10 " DOUBLE  000014 11-21 equ sst.post_in_core,12  000015 11-22 equ sst.thrashing,13  000016 11-23 equ sst.npfs_misses,14 000017 11-24 equ sst.salv,15  000020 11-25 equ sst.ptl,16 000021 11-26 equ sst.astl,17  000022 11-27 equ sst.astl_event,18  11-28  000023 11-29 equ sst.astl_notify_requested_word,19  400000 11-30 bool sst.astl_notify_requested,400000 " DU 11-31  000024 11-32 equ sst.nused,20  000025 11-33 equ sst.ptwbase,21 000026 11-34 equ sst.tfreep,22  000030 11-35 equ sst.astap,24  000032 11-36 equ sst.bulk_pvtx,26  000033 11-37 equ sst.ptl_wait_ct,27 000034 11-38 equ sst.astsize,28 000035 11-39 equ sst.cmesize,29 000036 11-40 equ sst.root_astep,30  000040 11-41 equ sst.pts,32 000044 11-42 equ sst.level,36 " LEVEL 2  11-43  000044 11-44 equ sst.ausedp,36 " UPPER 000044 11-45 equ sst.no_aste,36 " LOWER  11-46  000050 11-47 equ sst.atempp,40 " UPPER 000050 11-48 equ sst.atempp1,40 " LOWER  11-49  000051 11-50 equ sst.dm_enabled_word,41 400000 11-51 bool sst.dm_enabled,400000 " DU  11-52  000052 11-53 equ sst.ainitp,42 " UPPER 000052 11-54 equ sst.ainitp1,42 " LOWER  11-55  000053 11-56 equ sst.strsize,43 000054 11-57 equ sst.cmp,44 11-58  000056 11-59 equ sst.usedp,46 " UPPER  11-60  000057 11-61 equ sst.wtct,47  11-62  000060 11-63 equ sst.startp,48 " UPPER 11-64  000061 11-65 equ sst.removep,49 " UPPER  11-66  000062 11-67 equ sst.double_write,50  000063 11-68 equ sst.temp_w_event,51  000064 11-69 equ sst.root_pvtx,52  11-70  000065 11-71 equ sst.ptw_first_word,53  400000 11-72 bool sst.ptw_first,400000 " DU 11-73  000066 11-74 equ sst.nolock_word,54 400000 11-75 bool sst.nolock,400000 " DU  11-76  000067 11-77 equ sst.x_fsdctp,55 " UPPER  11-78  000070 11-79 equ sst.fc_skips_pinned,56 000071 11-80 equ sst.cl_skips_pinned,57 000072 11-81 equ sst.ast_ht_ptr,58  000074 11-82 equ sst.ast_ht_n_buckets,60  000075 11-83 equ sst.ast_ht_uid_mask,61 000076 11-84 equ sst.meter_ast_locking,62  000077 11-85 equ sst.checksum_filemap,63  000100 11-86 equ sst.page_read_errors,64  000101 11-87 equ sst.page_write_errors,65  000102 11-88 equ sst.rws_read_errors,66 000103 11-89 equ sst.rws_write_errors,67  000104 11-90 equ sst.cycle_pv_allocation,68 000105 11-91 equ sst.n_trailers,69  000106 11-92 equ sst.synch_activations,70  000107 11-93 equ sst.synch_skips,71 000110 11-94 equ sst.lock_waits,72  000111 11-95 equ sst.total_locks_set,73 000112 11-96 equ sst.pdir_page_faults,74  000113 11-97 equ sst.level_1_page_faults,75 000114 11-98 equ sst.dir_page_faults,76 000115 11-99 equ sst.ring_0_page_faults,77  000116 11-100 equ sst.rqover,78  000117 11-101 equ sst.pc_io_waits,79 000120 11-102 equ sst.steps,80  000121 11-103 equ sst.needc,81  000122 11-104 equ sst.ceiling,82 000123 11-105 equ sst.ctwait,83  000124 11-106 equ sst.wired,84  000125 11-107 equ sst.laps,85  000126 11-108 equ sst.skipw,86  000127 11-109 equ sst.skipu,87  000130 11-110 equ sst.skipm,88  000131 11-111 equ sst.skipos,89  000132 11-112 equ sst.skipspd,90 000133 11-113 equ sst.aused,91  000134 11-114 equ sst.damaged_ct,92  000135 11-115 equ sst.deact_count,93 000136 11-116 equ sst.demand_deact_attempts,94  000137 11-117 equ sst.demand_deactivations,95  000140 11-118 equ sst.reads,96  000150 11-119 equ sst.writes,104 000160 11-120 equ sst.short_pf_count,112 000161 11-121 equ sst.loop_locks,113 000162 11-122 equ sst.loop_lock_time,114 " DOUBLE  000164 11-123 equ sst.cpu_sf_time,116 " DOUBLE  000166 11-124 equ sst.total_sf_pf,118  000167 11-125 equ sst.total_sf,119  000170 11-126 equ sst.pre_page_size,120  000171 11-127 equ sst.post_list_size,121 000172 11-128 equ sst.post_purgings,122  000173 11-129 equ sst.post_purge_calls,123  000174 11-130 equ sst.pre_page_calls,124 000175 11-131 equ sst.pre_page_list_size,125 000176 11-132 equ sst.pre_page_misses,126  000177 11-133 equ sst.pre_pagings,127  000200 11-134 equ sst.wire_proc_data,128 " DOUBLE  000220 11-135 equ sst.abs_wired_count,144  000221 11-136 equ sst.system_type,145  000222 11-137 equ sst.wired_copies,146  000223 11-138 equ sst.recopies,147  000224 11-139 equ sst.first_core_block,148  000225 11-140 equ sst.last_core_block,149  000226 11-141 equ sst.fw_retries,150 000227 11-142 equ sst.pvhtp,151  000230 11-143 equ sst.askipsize,152  000234 11-144 equ sst.aneedsize,156  000240 11-145 equ sst.stepsa,160 000241 11-146 equ sst.askipsehs,161  000242 11-147 equ sst.asearches,162  000243 11-148 equ sst.askipslevel,163  000244 11-149 equ sst.askipsinit,164 000245 11-150 equ sst.acost,165  000246 11-151 equ sst.askipslock,166 000247 11-152 equ sst.askipdius,167  000250 11-153 equ sst.alaps,168  000251 11-154 equ sst.updates,169  000252 11-155 equ sst.setfaults_all,170  000253 11-156 equ sst.setfaults_acc,171  000254 11-157 equ sst.total_bf,172  000255 11-158 equ sst.total_bf_pf,173  000256 11-159 equ sst.cpu_bf_time,174 " DOUBLE  000260 11-160 equ sst.asteps,176 000264 11-161 equ sst.ast_locked_at_time,180 " DOUBLE  000266 11-162 equ sst.ast_locked_total_time,182 " DOUBLE 000270 11-163 equ sst.ast_lock_wait_time,184 " DOUBLE  000272 11-164 equ sst.ast_locking_count,186  000273 11-165 equ sst.cleanup_count,187  000274 11-166 equ sst.cleanups_with_any_rws,188  000275 11-167 equ sst.cleanup_rws_count,189  000276 11-168 equ sst.cleanup_real_time,190 " DOUBLE 000300 11-169 equ sst.tree_count,192 000400 11-170 equ sst.pp_meters,256  11-171  000500 11-172 equ sst.wusedp,320 " UPPER  11-173  000501 11-174 equ sst.write_hunts,321  000502 11-175 equ sst.claim_skip_cme,322 000503 11-176 equ sst.claim_skip_free,323  000504 11-177 equ sst.claim_notmod,324  000505 11-178 equ sst.claim_passed_used,325  000506 11-179 equ sst.claim_skip_ptw,326 000507 11-180 equ sst.claim_writes,327  000510 11-181 equ sst.claim_steps,328  000511 11-182 equ sst.rws_reads_os,329  000512 11-183 equ sst.pd_updates,330 000513 11-184 equ sst.pre_seeks_failed,331  000514 11-185 equ sst.pd_desperation_steps,332  000515 11-186 equ sst.pd_desperations,333  000516 11-187 equ sst.skips_nypd,334 11-188  000517 11-189 equ sst.pd_writeahead_word,335 400000 11-190 bool sst.pd_writeahead,400000 " DU 11-191  000520 11-192 equ sst.pd_desperations_not_mod,336  000521 11-193 equ sst.resurrections,337  000522 11-194 equ sst.volmap_seg_page_faults,338 000523 11-195 equ sst.oopv,339  000524 11-196 equ sst.pdflush_replaces,340  000525 11-197 equ sst.pcrsst_statptr,341 000526 11-198 equ sst.pd_resurrections,342  000527 11-199 equ sst.dblw_resurrections,343 000530 11-200 equ sst.sgm_time,344 " DOUBLE 000532 11-201 equ sst.sgm_pf,346 000533 11-202 equ sst.bad_sgms,347  000534 11-203 equ sst.sgm_sgft,348  000535 11-204 equ sst.good_sgms,349  000536 11-205 equ sst.claim_runs,350 000537 11-206 equ sst.activations,351  000540 11-207 equ sst.dir_activations,352  000541 11-208 equ sst.hedge_updatevs,353 000542 11-209 equ sst.hedge_writes,354  000543 11-210 equ sst.evict_recover_data,355 " LEVEL 2  11-211  000543 11-212 equ sst.evict_ptp,355 " UPPER 000543 11-213 equ sst.evict_phmbit,355 " LOWER  11-214  000544 11-215 equ sst.force_swrites,356  000545 11-216 equ sst.force_pwrites,357  000546 11-217 equ sst.fw_none,358  000547 11-218 equ sst.force_updatevs,359 000550 11-219 equ sst.pf_pd_loop_time,360 " DOUBLE  000552 11-220 equ sst.pf_unlock_ptl_time,362 " DOUBLE  000554 11-221 equ sst.pf_pd_loop_meterings,364  000555 11-222 equ sst.pf_unlock_ptl_meterings,365  000556 11-223 equ sst.makeknown_activations,366  000557 11-224 equ sst.backup_activations,367 000560 11-225 equ sst.metering_flags,368 " LEVEL 2  11-226  400000 11-227 bool sst.activate_activated,400000 " DU  11-228  000561 11-229 equ sst.seg_fault_calls,369  000562 11-230 equ sst.stk_truncate_should_didnt,370  000563 11-231 equ sst.stk_truncate_should_did,371  000564 11-232 equ sst.stk_truncate_shouldnt_didnt,372  000565 11-233 equ sst.stk_truncate_shouldnt_did,373  000566 11-234 equ sst.stk_pages_truncated,374  000567 11-235 equ sst.stk_pages_truncated_in_core,375  000600 11-236 equ sst.pdmap,384  000602 11-237 equ sst.pdhtp,386  000604 11-238 equ sst.pd_id,388  000605 11-239 equ sst.pdsize,389 000606 11-240 equ sst.pdme_no,390  11-241  000607 11-242 equ sst.pdusedp,391 " UPPER  11-243  000610 11-244 equ sst.pd_first,392  000611 11-245 equ sst.pd_map_addr,393  000612 11-246 equ sst.nrecs_pdmap,394  000613 11-247 equ sst.pd_free,395  000614 11-248 equ sst.pd_using,396  000615 11-249 equ sst.pd_wtct,397  000616 11-250 equ sst.pd_writes,398  000617 11-251 equ sst.pd_ceiling,399 000620 11-252 equ sst.pd_steps,400  000621 11-253 equ sst.pd_skips_incore,401  000622 11-254 equ sst.pd_skips_rws,402  000623 11-255 equ sst.pd_needed,403  000624 11-256 equ sst.mod_during_write,404  000625 11-257 equ sst.pd_write_aborts,405  000626 11-258 equ sst.pd_rws_active,406  000627 11-259 equ sst.pd_no_free,407 000630 11-260 equ sst.pd_read_truncates,408  000631 11-261 equ sst.pd_write_truncates,409 000632 11-262 equ sst.pd_htsize,410  11-263  000633 11-264 equ sst.pd_hash_mask,411 " UPPER  11-265  000634 11-266 equ sst.pdmap_astep,412  000636 11-267 equ sst.zero_pages,414 000637 11-268 equ sst.pd_zero_pages,415  000640 11-269 equ sst.trace_sw,416 " LEVEL 2  11-270  000010 11-271 bool sst.pc_trace_pf,000010 " DL  000004 11-272 bool sst.tty_trace,000004 " DL 000002 11-273 bool sst.pc_trace,000002 " DL 000001 11-274 bool sst.sc_trace,000001 " DL 11-275  000641 11-276 equ sst.new_pages,417  000642 11-277 equ sst.rws_time_temp,418 " DOUBLE 000644 11-278 equ sst.rws_time_start,420 " DOUBLE  000646 11-279 equ sst.rws_time_done,422 " DOUBLE 000650 11-280 equ sst.pd_time_counts,424 000654 11-281 equ sst.pd_time_values,428 " DOUBLE  000664 11-282 equ sst.pd_no_free_gtpd,436  000665 11-283 equ sst.pd_page_faults,437 000666 11-284 equ sst.pd_no_free_first,438  000667 11-285 equ sst.update_index,439  000670 11-286 equ sst.last_update,440 " DOUBLE  000672 11-287 equ sst.count_pdmes,442  000673 11-288 equ sst.bucket_overflow,443  000674 11-289 equ sst.buckets,444  11-290  000774 11-291 equ sst.ast_track_word,508 400000 11-292 bool sst.ast_track,400000 " DU 11-293  000775 11-294 equ sst.dirlock_writebehind,509  000776 11-295 equ sst.write_limit,510  11-296  11-297 "END INCLUDE FILE sst.incl.alm 1792 include aste  12-1  12-2  12-3 "BEGIN INCLUDE FILE aste.incl.alm  12-4  12-5  12-6 "Created 10/26/82 2145.6 edt Tue by convert_include_file, 12-7 " Version of 07/15/82 2204.3 edt Thu.  12-8  12-9 "Made from >udd>Multics>Bongiovanni>htd>cksum>aste.incl.pl1,  12-10 " modified 10/26/82 2145.5 edt Tue  12-11  12-12 "  12-13 " Structure aste  12-14 "  000014 12-15 equ aste_size,12  12-16  000000 12-17 equ aste.fp,0 " UPPER  000000 12-18 equ aste.bp,0 " LOWER  12-19  000001 12-20 equ aste.infl,1 " UPPER  000001 12-21 equ aste.infp,1 " LOWER  12-22  000002 12-23 equ aste.strp,2 " UPPER  000002 12-24 equ aste.par_astep,2 " LOWER  12-25  000003 12-26 equ aste.uid,3 12-27  000004 12-28 equ aste.msl_word,4  000033 12-29 equ aste.msl_shift,27  000777 12-30 bool aste.msl_mask,000777  000004 12-31 equ aste.pvtx_word,4  000022 12-32 equ aste.pvtx_shift,18 000777 12-33 bool aste.pvtx_mask,000777 000004 12-34 equ aste.vtocx,4 " LOWER  12-35  000005 12-36 equ aste.usedf_word,5  400000 12-37 bool aste.usedf,400000 " DU  000005 12-38 equ aste.init_word,5  200000 12-39 bool aste.init,200000 " DU  000005 12-40 equ aste.gtus_word,5  100000 12-41 bool aste.gtus,100000 " DU  000005 12-42 equ aste.gtms_word,5  040000 12-43 bool aste.gtms,040000 " DU  000005 12-44 equ aste.hc_word,5 020000 12-45 bool aste.hc,020000 " DU  000005 12-46 equ aste.hc_sdw_word,5 010000 12-47 bool aste.hc_sdw,010000 " DU  000005 12-48 equ aste.any_access_on_word,5  004000 12-49 bool aste.any_access_on,004000 " DU  000005 12-50 equ aste.write_access_on_word,5  002000 12-51 bool aste.write_access_on,002000 " DU  000005 12-52 equ aste.inhibit_cache_word,5  001000 12-53 bool aste.inhibit_cache,001000 " DU  000005 12-54 equ aste.explicit_deact_ok_word,5  000400 12-55 bool aste.explicit_deact_ok,000400 " DU  000005 12-56 equ aste.deact_error_word,5  000200 12-57 bool aste.deact_error,000200 " DU  000005 12-58 equ aste.hc_part_word,5  000100 12-59 bool aste.hc_part,000100 " DU 000005 12-60 equ aste.fm_damaged_word,5 000040 12-61 bool aste.fm_damaged,000040 " DU  000005 12-62 equ aste.dius_word,5  000002 12-63 bool aste.dius,000002 " DU  000005 12-64 equ aste.nid_word,5  000001 12-65 bool aste.nid,000001 " DU 000005 12-66 equ aste.dmpr_pad_word,5  400000 12-67 bool aste.dmpr_pad,400000 " DL 000005 12-68 equ aste.ehs_word,5  200000 12-69 bool aste.ehs,200000 " DL 000005 12-70 equ aste.nqsw_word,5  100000 12-71 bool aste.nqsw,100000 " DL  000005 12-72 equ aste.dirsw_word,5  040000 12-73 bool aste.dirsw,040000 " DL  000005 12-74 equ aste.master_dir_word,5 020000 12-75 bool aste.master_dir,020000 " DL  000005 12-76 equ aste.volmap_seg_word,5 010000 12-77 bool aste.volmap_seg,010000 " DL  000005 12-78 equ aste.tqsw_word,5  004000 12-79 bool aste.tqsw,004000 " DL  12-80  000006 12-81 equ aste.dtu,6 000007 12-82 equ aste.dtm,7 12-83  000010 12-84 equ aste.quota,8 " UPPER  12-85  000011 12-86 equ aste.used,9 " UPPER  12-87  000012 12-88 equ aste.csl_word,10  000033 12-89 equ aste.csl_shift,27  000777 12-90 bool aste.csl_mask,000777  000012 12-91 equ aste.fmchanged_word,10 000400 12-92 bool aste.fmchanged,000400 " DU  000012 12-93 equ aste.fms_word,10  000200 12-94 bool aste.fms,000200 " DU 000012 12-95 equ aste.npfs_word,10  000100 12-96 bool aste.npfs,000100 " DU  000012 12-97 equ aste.gtpd_word,10  000040 12-98 bool aste.gtpd,000040 " DU  000012 12-99 equ aste.dnzp_word,10  000020 12-100 bool aste.dnzp,000020 " DU  000012 12-101 equ aste.per_process_word,10  000010 12-102 bool aste.per_process,000010 " DU  000012 12-103 equ aste.ddnp_word,10  000004 12-104 bool aste.ddnp,000004 " DU  000012 12-105 equ aste.records_word,10  000011 12-106 equ aste.records_shift,9  000777 12-107 bool aste.records_mask,000777  000012 12-108 equ aste.np_word,10  000000 12-109 equ aste.np_shift,0  000777 12-110 bool aste.np_mask,000777  12-111  000013 12-112 equ aste.ht_fp,11 " UPPER 000013 12-113 equ aste.fmchanged1_word,11  400000 12-114 bool aste.fmchanged1,400000 " DL  000013 12-115 equ aste.damaged_word,11  200000 12-116 bool aste.damaged,200000 " DL 000013 12-117 equ aste.pack_ovfl_word,11 100000 12-118 bool aste.pack_ovfl,100000 " DL  000013 12-119 equ aste.synchronized_word,11  040000 12-120 bool aste.synchronized,040000 " DL 000013 12-121 equ aste.ptsi_word,11  000006 12-122 equ aste.ptsi_shift,6  000003 12-123 bool aste.ptsi_mask,000003 000013 12-124 equ aste.marker_word,11  000000 12-125 equ aste.marker_shift,0  000077 12-126 bool aste.marker_mask,000077  12-127  12-128 "  12-129 " Structure aste_part  12-130 "  000014 12-131 equ aste_part_size,12  12-132  12-133  000000 12-134 equ aste_part.one,0  000001 12-135 equ aste_part.two,1 " DOUBLE  12-136  000013 12-137 equ aste_part.three_word,11  000000 12-138 equ aste_part.three_shift,0  000377 12-139 bool aste_part.three_mask,000377  12-140  12-141 "  12-142 " Structure seg_aste  12-143 "  000014 12-144 equ seg_aste_size,12  12-145  12-146  000010 12-147 equ seg_aste.usage,8  12-148  12-149 "END INCLUDE FILE aste.incl.alm  1793 include sstnt  13-1  13-2  13-3 " BEGIN INCLUDE FILE sstnt.incl.alm  13-4  000000 13-5 equ sstnt.valid_word,0 400000 13-6 bool sstnt.valid,400000 "DU  13-7  000001 13-8 equ sstnt.multics_or_bos,1 13-9  000002 13-10 equ sstnt.fill_time,2  13-11  000010 13-12 equ sstnt.ast_sizes,8  13-13  000014 13-14 equ sstnt.ast_name_offsets,12  13-15  000020 13-16 equ sstnt.ast_offsets,16  13-17  000030 13-18 equ sstnt.names,24 13-19  000011 13-20 equ sstnt_name_length,9  13-21  13-22 "END INCLUDE FILE sstnt.incl.alm  1794 " 1795 include eis_micro_ops  000020 14-1 bool insm,020  000040 14-2 bool enf,040  000060 14-3 bool ses,060  000100 14-4 bool mvzb,100  000120 14-5 bool mvza,120  000140 14-6 bool mfls,140  000160 14-7 bool mflc,160  000200 14-8 bool insb,200  000220 14-9 bool insa,220  000240 14-10 bool insn,240  000260 14-11 bool insp,260  000300 14-12 bool ign,300  000320 14-13 bool mvc,320  000340 14-14 bool mses,340  000360 14-15 bool mors,360  000400 14-16 bool lte,400  000420 14-17 bool cht,420  14-18 "  000010 14-19 bool if0,10  000004 14-20 bool if1,4 000002 14-21 bool if2,2 000001 14-22 bool if3,1 1796  1797 include configp  15-1 " 15-2 " Begin include file ...... configp.incl.alm  15-3 " Created 9/15/75 by Noel I. Morris 15-4  15-5 " eax0 offset " X0 -> config card  15-6 " lda com|conf,0 " Card name in A.  15-7 " tsx2 config_print " Convert config card for printing. 15-8  003321 15-9 config_print:  003321 0a 003421 7420 00 15-10 stx2 pcd_x2 " Save XR's.  003322 aa 020000 1004 00 15-11 mlr (),(),fill(20) " Blank output line.  003323 0a 003323 020000 15-12 desc6a *,0 003324 aa 012001 020124 15-13 desc6a line,84 15-14  003325 aa 000000 6270 10 15-15 eax7 0,0 " Get address of config card.  003326 aa 000000 6260 00 15-16 eax6 0 " Current position in output buffer.  003327 aa 6 03017 2361 17 15-17 ldq com|conf+confl-1,7 " Two bits per field indicating original type.  003330 0a 003423 7560 00 15-18 stq pcd_types  003331 aa 000000 6250 06 15-19 eax5 0,ql " Parameter count in X5.  003332 aa 000077 3650 03 15-20 anx5 =o77,du " Mask count.  003333 0a 003374 7100 00 15-21 tra pcd_ascii " Convert card name.  15-22  003334 15-23 pcd_next:  003334 aa 6 03000 2351 17 15-24 lda com|conf,7 " Next raw item.  003335 0a 003423 2360 00 15-25 ldq pcd_types  003336 aa 000002 7760 00 15-26 qlr 2  003337 0a 003423 7560 00 15-27 stq pcd_types  003340 aa 000003 3760 07 15-28 anq 3,dl " Type code for this item.  15-29  003341 0a 003342 7100 06 15-30 tra *+1,ql " Dispatch on it.  003342 0a 003346 7100 00 15-31 tra pcd_oct " Octal number.  003343 0a 003370 7100 00 15-32 tra pcd_tag " Tag (A - H).  003344 0a 003374 7100 00 15-33 tra pcd_ascii " ASCII field (four characters).  003345 0a 003356 7100 00 15-34 tra pcd_dec " Decimal number.  15-35  003346 aa 012252 7020 00 15-36 pcd_oct: tsx2 octwd " Convert to BCD.  003347 0a 003426 7570 00 15-37 staq pcd_temp1 " Store converted octal number.  15-38  003350 aa 000000 0204 00 15-39 mve (),(),() " Move and edit to suppress leading zeroes.  003351 0a 003426 020014 15-40 desc6a pcd_temp1,12  003352 0a 003433 000004 15-41 desc9a coedit,4  003353 0a 003430 020014 15-42 desc6a pcd_temp2,12  15-43  003354 aa 000014 2350 07 15-44 lda 12,dl " 12 characters to insert in output.  003355 0a 003401 7100 00 15-45 tra pcd_join  15-46  003356 0a 003424 7550 00 15-47 pcd_dec: sta pcd_temp0 " Store binary number.  15-48  003357 aa 000000 3014 00 15-49 btd (),() " Convert to decimal.  003360 0a 003424 000004 15-50 desc9a pcd_temp0,4 003361 0a 003426 050014 15-51 desc4ls pcd_temp1,12  15-52  003362 aa 000000 0244 00 15-53 mvne (),(),() " Suppress leading zeroes and insert decimal point. 003363 0a 003426 050014 15-54 desc4ls pcd_temp1,12  003364 0a 003434 000014 15-55 desc9a cdedit,12  003365 0a 003430 020015 15-56 desc6a pcd_temp2,13  15-57  003366 aa 000015 2350 07 15-58 lda 13,dl " 13 characters to insert in output.  003367 0a 003401 7100 00 15-59 tra pcd_join  15-60  003370 aa 000010 1150 07 15-61 pcd_tag: cmpa 8,dl " Must be less than 8.  003371 0a 003346 6030 00 15-62 trc pcd_oct " Otherwise, convert as octal.  15-63  003372 0a 004051 0750 00 15-64 ada =h " " Make into letter. 003373 0a 003376 7100 00 15-65 tra pcd_bcd " And treat as BCD string.  15-66  003374 15-67 pcd_ascii:  003374 aa 012255 7020 00 15-68 tsx2 asge " Convert to BCD.  003375 aa 012260 7020 00 15-69 tsx2 rjust " Right-justify 4 characters.  15-70  003376 0a 003430 7550 00 15-71 pcd_bcd: sta pcd_temp2 " Store BCD. 15-72  003377 aa 000006 2350 07 15-73 lda 6,dl " 6 characters to insert in output.  003400 0a 003401 7100 00 15-74 tra pcd_join  15-75  003401 15-76 pcd_join:  003401 aa 000003 1254 40 15-77 scmr (rl),(du) " Search backward for first blank. 003402 0a 003430 020005 15-78 desc6a pcd_temp2,al  003403 aa 200 000 000 000 15-79 bci " "  003404 0a 003424 0000 00 15-80 arg pcd_temp0  15-81  003405 0a 003424 2360 00 15-82 ldq pcd_temp0 " Get tally.  003406 0a 003424 1750 00 15-83 sba pcd_temp0 " Compute non-blank count.  15-84  003407 aa 000056 1004 45 15-85 mlr (rl,al),(rl,x6) " Copy characters into output line.  003410 0a 003430 020006 15-86 desc6a pcd_temp2,ql  003411 aa 012001 020006 15-87 desc6a line,ql 15-88  003412 aa 000022 7360 00 15-89 qls 18 " Character count in QU.  003413 0a 003424 7560 00 15-90 stq pcd_temp0 " Store it. 003414 0a 003424 0660 00 15-91 adx6 pcd_temp0 " Add to offset.  003415 aa 000001 6260 16 15-92 eax6 1,6 " Plus one for white space.  15-93  003416 aa 000001 6270 17 15-94 eax7 1,7 " Step to next parameter.  003417 aa 777777 6250 15 15-95 eax5 -1,5 " Count one parameter.  003420 0a 003334 6050 00 15-96 tpl pcd_next " Go on to next parameter.  15-97  003421 0a 003421 6220 00 15-98 pcd_x2: eax2 *  003422 aa 000000 7100 12 15-99 tra 0,2  15-100  003423 15-101 pcd_types:  003423 15-102 bss ,1 " Type codes.  003424 15-103 pcd_temp0:  003424 15-104 bss ,1 003425 aa 000000 0110 03 15-105 even  003426 15-106 pcd_temp1:  003426 15-107 bss ,2 003430 15-108 pcd_temp2:  003430 15-109 bss ,3 15-110  003433 aa 401020 113321 15-111 coedit: vfd 9/lte+1,o9/20,9/mvzb+11,9/mvc+1 15-112  003434 aa 401020 403020 15-113 cdedit: vfd 9/lte+1,o9/20,9/lte+3,o9/20,9/lte+4,o9/52,9/mfls+10,9/enf  003435 aa 404052 152040 003436 aa 321401 033021 15-114 vfd 9/mvc+1,9/lte+1,o9/33,9/insm+1 15-115  15-116 " End of include file ...... configp.incl.alm  15-117  1798 include bos_sstnt_man  16-1 " 16-2 " Begin include file ...... bos_sstnt_man.incl.alm  16-3  16-4 "  16-5 " SST Name Table management for BOS.  16-6 "  16-7 " 04/17/75 by Bernard Greenberg, with help from Richard G. Bratt.  16-8 "  16-9  16-10 "  16-11 " tsx2 initsstnt to set up package 16-12 "  16-13  003437 16-14 initsstnt:  003437 0a 003477 7420 00 16-15 stx2 ssni.x2 save exit  16-16  003440 0a 003521 4500 00 16-17 stz ssn.valid assume table not valid  16-18  003441 aa 007016 2370 00 16-19 ldaq sstsdw get SDW for SST segment  003442 0a 004062 3750 00 16-20 ana =o777777770000 set up base and bounds  003443 0a 003516 7550 00 16-21 sta ssn.sstbase  003444 aa 000025 7720 00 16-22 qrl 36-15 isolate bounds  003445 aa 000001 0360 07 16-23 adlq 1,dl  003446 aa 000020 7360 00 16-24 qls 4+12 16 to 1  003447 0a 003517 7560 00 16-25 stq ssn.sstbase+1 relocate top of SST  16-26  003450 aa 007042 7020 00 16-27 tsx2 sltsearch look up name table 003451 0a 003523 0000 00 16-28 arg ssn.sstntname  003452 0a 003500 7100 00 16-29 tra ssni.fail  003453 aa 007027 7020 00 16-30 tsx2 getsdw  003454 0a 003500 7100 00 16-31 tra ssni.fail  003455 0a 003500 7100 00 16-32 tra ssni.fail  003456 0a 003514 7570 00 16-33 staq ssn.sstnt_sdw 16-34  003457 aa 000036 6360 00 16-35 eaq sst.root_astep get root astep  003460 aa 007032 7020 00 16-36 tsx2 apnd  003461 aa 007016 0000 00 16-37 arg sstsdw 003462 0a 003500 7100 00 16-38 tra ssni.fail  003463 aa 007004 2370 20 16-39 ldaq fetchout,*  003464 0a 003520 7560 00 16-40 stq ssn.root_astep save root astep 16-41  16-42  003465 aa 000000 6360 00 16-43 eaq 0 get sstnt header  003466 aa 007034 7020 00 16-44 tsx2 get  003467 0a 003514 0000 00 16-45 arg ssn.sstnt_sdw  003470 0a 003527 000030 16-46 zero ssn.sstnt,sstnt.names buffer for this 003471 0a 003500 7100 00 16-47 tra ssni.fail  16-48  003472 0a 003527 2350 00 16-49 lda ssn.sstnt+sstnt.valid_word 003473 0a 003505 6000 00 16-50 tze sstnt_not_valid  003474 0a 003521 7550 00 16-51 sta ssn.valid  16-52  003475 aa 012256 6350 51 16-53 eaa asgetab,i get addr of ASCII to GEBCD table  003476 0a 003646 7550 00 16-54 sta gpn.tab 3rd desc of MVT cnnot be ID  16-55  003477 aa 000000 7100 00 16-56 ssni.x2: tra *-*  16-57  16-58 "  16-59 " Error exits.  16-60 "  16-61  003500 16-62 ssni.fail:  003500 aa 012241 7020 00 16-63 tsx2 erpt  003501 aa 010 156 157 040 16-64 acc "no sstnt" 003502 aa 163 163 164 156 003503 aa 164 000 000 000 003504 0a 003477 7100 00 16-65 tra ssni.x2  16-66  003505 16-67 sstnt_not_valid:  003505 aa 012241 7020 00 16-68 tsx2 erpt  003506 aa 020 163 163 164 16-69 acc "sstnt not filled" 003507 aa 156 164 040 156 003510 aa 157 164 040 146 003511 aa 151 154 154 145 003512 aa 144 000 000 000 003513 0a 003477 7100 00 16-70 tra ssni.x2  16-71  16-72 "  16-73 " Global constants for sstnt management 16-74 "  16-75 even  003514 16-76 ssn.sstnt_sdw:  003514 16-77 bss ,2 sdw for sst name table 003516 16-78 ssn.sstbase:  003516 aa 000000 000000 16-79 dec 0 base of SST 003517 aa 000000 000000 16-80 dec 0 top of SST  003520 16-81 ssn.root_astep: 003520 aa 000000 0000 00 16-82 arg 0 astep of root, upper  003521 16-83 ssn.valid:  003521 aa 000000 000000 16-84 dec 0 n/z if table valid  003522 aa 160 000 000 000 16-85 ssn.gthan:bci ">00000" a greater than  003523 16-86 ssn.sstntname:  003523 aa 000000 000012 16-87 dec 10 003524 aa 163 163 164 137 16-88 aci "sst_names_ " 003525 aa 156 141 155 145 003526 aa 163 137 040 040 003527 16-89 ssn.sstnt:  003527 16-90 bss ,sstnt.names buffer for name table header  16-91  16-92 "  16-93  16-94 "  16-95 " ldaq sdw  16-96 " tsx2 getsstntname to get pathname put where  16-97 " desc6a where(offset),length describes.  16-98 " tra not_reasonable_for_pathname  16-99 "  16-100  003557 16-101 getsstntname:  003557 0a 003704 7420 00 16-102 stx2 gpn.x2 save return  003560 0a 003521 2340 00 16-103 szn ssn.valid valid sstnt?  003561 0a 003704 6000 00 16-104 tze gpn.fail  003562 aa 200000 3160 07 16-105 canq sdw.unpaged,dl is it paged?  003563 0a 003704 6010 00 16-106 tnz gpn.not_pn no path here  003564 0a 004062 3750 00 16-107 ana =o777777770000 isolate address 003565 0a 003516 1350 00 16-108 sbla ssn.sstbase  003566 0a 003704 6040 00 16-109 tmi gpn.not_pn 003567 0a 003517 1150 00 16-110 cmpa ssn.sstbase+1 003570 0a 003704 6050 00 16-111 tpl gpn.not_pn 003571 aa 000006 7350 00 16-112 als 6  003572 aa 777764 6360 01 16-113 eaq -ast_size,au get astep in qu  003573 0a 003706 7560 00 16-114 stq gpn.astep  16-115  003574 aa 007034 7020 00 16-116 tsx2 get get the aste 003575 aa 007016 0000 00 16-117 arg sstsdw 003576 0a 003707 000014 16-118 zero gpn.aste,ast_size 003577 0a 003704 7100 00 16-119 tra gpn.not_pn 16-120  003600 0a 003704 2220 00 16-121 ldx2 gpn.x2 restore X2  003601 aa 000000 2360 12 16-122 ldq 0,2 get descriptor  003602 0a 003702 7560 00 16-123 stq gpn.desc set it  003603 aa 007777 3760 07 16-124 anq =o7777,dl extract length from descriptor  003604 0a 003724 7560 00 16-125 stq gpn.offset and set initial offset into buffer  003605 0a 003723 4500 00 16-126 stz gpn.curlen no chars yet.  16-127  003606 0a 003711 7270 00 16-128 lxl7 gpn.aste+aste.par_astep is there a parent?  003607 0a 003614 6010 00 16-129 tnz gpn.yes_pn 16-130  003610 0a 003706 2360 00 16-131 ldq gpn.astep is this the root?  003611 0a 003520 1160 00 16-132 cmpq ssn.root_astep  003612 0a 003651 6000 00 16-133 tze gpn.isroot 003613 0a 003704 7100 00 16-134 tra gpn.not_pn if not, error  16-135  003614 16-136 gpn.yes_pn: 16-137  16-138 " 16-139  16-140 "  16-141 " This segment is a legitimate descendent of the root.  16-142 " Cons together pathname.  16-143  003614 16-144 gpn.loop:  003614 0a 003706 2360 00 16-145 ldq gpn.astep get astep  003615 aa 000022 7720 00 16-146 qrl 18 003616 aa 000003 6270 00 16-147 eax7 3 figure out ptsi by pool  003617 0a 003547 1160 17 16-148 gpn.1: cmpq ssn.sstnt+sstnt.ast_offsets,7  003620 0a 003624 6050 00 16-149 tpl gpn.got_ptsi  003621 aa 777777 6270 17 16-150 eax7 -1,7  003622 0a 003704 6040 00 16-151 tmi gpn.fail messed up if minus  003623 0a 003617 7100 00 16-152 tra gpn.1 smaller pool  16-153  003624 16-154 gpn.got_ptsi:  003624 0a 003547 1360 17 16-155 sblq ssn.sstnt+sstnt.ast_offsets,7 003625 aa 000000 2350 07 16-156 lda 0,dl set up for divide  003626 0a 003537 5060 17 16-157 div ssn.sstnt+sstnt.ast_sizes,7 figure out # in pool  003627 0a 003543 0360 17 16-158 adlq ssn.sstnt+sstnt.ast_name_offsets,7 figure out name #  003630 aa 000011 4020 07 16-159 mpy sstnt_name_length,dl  003631 aa 000030 6360 06 16-160 eaq sstnt.names,ql address name in table  16-161  003632 aa 007034 7020 00 16-162 tsx2 get fetch the name  003633 0a 003514 0000 00 16-163 arg ssn.sstnt_sdw  003634 0a 003764 000011 16-164 zero gpn.namebuf,sstnt_name_length 003635 0a 003704 7100 00 16-165 tra gpn.fail  16-166  16-167 "  16-168 " See if new entry name will fit.  16-169 "  003636 0a 003764 3360 00 16-170 lcq gpn.namebuf is there anything there?  003637 0a 003704 6000 00 16-171 tze gpn.fail no, fail on whole name  003640 0a 003724 0360 00 16-172 adlq gpn.offset subtract from current length  003641 0a 003651 6044 00 16-173 tmoz gpn.isroot too big, ignore entry name 16-174  003642 0a 003764 2350 00 16-175 lda gpn.namebuf get length 003643 aa 000046 1604 40 16-176 mvt (rl),(ql,rl) translate to GEBCD while at it  003644 0a 003765 000005 16-177 desc9a gpn.namebuf+1,al source is buffer  003645 0a 003730 020005 16-178 desc6a gpn.linebuf,al destination is line image  003646 aa 000000 0000 00 16-179 gpn.tab: arg *-*  003647 0a 003723 0550 00 16-180 asa gpn.curlen move char count 003650 0a 003724 7560 00 16-181 stq gpn.offset save new offset 16-182  003651 16-183 gpn.isroot: 003651 0a 003724 2360 00 16-184 ldq gpn.offset offset in QL  003652 aa 000001 1760 07 16-185 sbq 1,dl step back 1 for ">"  003653 0a 003675 6040 00 16-186 tmi gpn.done exit if no room for ">"  003654 aa 000006 1004 00 16-187 mlr (),(ql)  003655 0a 003522 020001 16-188 desc6a ssn.gthan,1 003656 0a 003730 020001 16-189 desc6a gpn.linebuf,1  003657 0a 003723 0540 00 16-190 aos gpn.curlen 003660 0a 003724 7560 00 16-191 stq gpn.offset save offset 16-192  16-193 " 16-194 "  16-195 " If there is a parent, cons on his name  16-196 "  16-197  003661 0a 003706 2360 00 16-198 ldq gpn.astep get astep of this seg  003662 aa 000002 6360 02 16-199 eaq aste.par_astep,qu point to parent word  003663 aa 007032 7020 00 16-200 tsx2 apnd get the rep 003664 aa 007016 0000 00 16-201 arg sstsdw 003665 0a 003704 7100 00 16-202 tra gpn.fail  16-203  003666 aa 007004 2350 20 16-204 lda fetchout,* 003667 aa 000022 7350 00 16-205 als 18 move to upper  003670 0a 003675 6000 00 16-206 tze gpn.done exit if was root 003671 0a 003520 1150 00 16-207 cmpa ssn.root_astep father the root?  003672 0a 003675 6000 00 16-208 tze gpn.done  003673 0a 003706 7550 00 16-209 sta gpn.astep  003674 0a 003614 7100 00 16-210 tra gpn.loop do the father  16-211  16-212  003675 16-213 gpn.done:  003675 0a 003704 2220 00 16-214 ldx2 gpn.x2  003676 0a 003724 2360 00 16-215 ldq gpn.offset get offset of pathname  003677 0a 003723 2350 00 16-216 lda gpn.curlen get current lngth  003700 aa 020000 1004 46 16-217 mlr (ql,rl),(),fill(020) whoosh  003701 0a 003730 020005 16-218 desc6a gpn.linebuf,al  003702 aa 000000 0000 00 16-219 gpn.desc: arg 0 16-220  003703 aa 000002 7100 12 16-221 tra 2,2  16-222  16-223 "  16-224 " Failure routines  16-225 "  16-226  003704 16-227 gpn.x2: 003704 16-228 gpn.fail:  003704 16-229 gpn.not_pn: 003704 aa 000000 6220 00 16-230 eax2 *-*  003705 aa 000001 7100 12 16-231 tra 1,2  16-232  16-233 "  16-234 " Work areas  16-235 "  003706 aa 000000 0000 00 16-236 gpn.astep:arg 0 astep of segment  003707 16-237 gpn.aste: bss ,ast_size ast image  003723 16-238 gpn.curlen: 003723 aa 000000 0000 00 16-239 arg 0 chars in linebuf  003724 16-240 gpn.offset: 003724 aa 000000 0000 00 16-241 arg 0 offset in linebuf  003725 aa 000000 0110 03 16-242 even  003726 16-243 gpn.linebufp:  003726 aa 077777 000043 16-244 its -1,1 pointer to last stored char  003727 aa 000001 000000 003730 16-245 bss gpn.linebuf,168/6  003764 16-246 gpn.namebuf:  003764 16-247 bss ,sstnt_name_length 16-248  16-249 " End of include file ...... bos_sstnt_man.incl.alm 16-250  1799 include segname  17-1 "  17-2 " Begin include file ...... segname.incl.alm  17-3 " Created 8/75 by B. S. Greenberg  17-4  17-5 " eax7 argno  17-6 " tsx2 collect_segname to get long_name seg  17-7 " sta segno 17-8  17-9  003775 17-10 collect_segname:  003775 0a 004021 7420 00 17-11 stx2 colseg.exit save X2  17-12  003776 aa 012040 2350 17 17-13 lda arg,7 get arg 003777 aa 777700 3150 03 17-14 cana =o777700,du is it number? 004000 aa 000000 6000 12 17-15 tze 0,2 return the number 17-16  004001 0a 004041 1150 00 17-17 cmpa =-1 no answer?  004002 aa 000000 6000 12 17-18 tze 0,2 thats an equally good answer  17-19  004003 aa 012254 2350 00 17-20 lda geastab set up descriptor 004004 0a 004010 7550 00 17-21 sta colseg.descr ..  17-22  004005 aa 020000 1604 20 17-23 mvt (id),(),fill(020) copy the name into buffer  004006 aa 012100 0000 17 17-24 arg earg,7 descr for string  004007 0a 004024 000040 17-25 desc9a colseg.buf+1,32 char buffer 004010 0a 004010 0000 00 17-26 colseg.descr: arg * translate into ASCII  17-27  004011 aa 012100 2350 17 17-28 lda earg,7 get length 004012 0a 004023 7510 03 17-29 stca colseg.buf,03 ..  17-30  004013 aa 007042 7020 00 17-31 tsx2 sltsearch look up name  004014 0a 004023 0000 00 17-32 arg colseg.buf 004015 0a 004020 7100 00 17-33 tra colseg.nf not found  17-34  004016 aa 000022 7710 00 17-35 arl 18 lower it  004017 0a 004021 7100 00 17-36 tra colseg.exit  17-37  004020 aa 000001 3350 07 17-38 colseg.nf:lca 1,dl error return  004021 17-39 colseg.exit:  004021 aa 000000 6220 00 17-40 eax2 *-*  004022 aa 000000 7100 12 17-41 tra 0,2  17-42  004023 17-43 colseg.buf: 004023 aa 000000 000000 17-44 oct 0  004024 17-45 bss ,8 17-46  17-47 " End of include file ...... segname.incl.alm  17-48  1800 include apnd_equ  18-1 " 18-2 " Begin include file ...... apnd_equ.incl.alm  18-3 " Created 11/19/72 by N. I. Morris  18-4 " modified 5/19/75 by Noel I. Morris  18-5 " Modified 8/79 by R.J.C. Kissel to use expanded BOS.  18-6 " Modidied 7/82 by Sherman D. Sprague to add cmpsdw.  18-7  007000 18-8 bool apnd_org,7000 18-9  007000 18-10 equ cmdbr,apnd_org+0 DBR of process being examined  007002 18-11 equ hcdbr,apnd_org+2 hardcore DBR value  007004 18-12 equ fetchout,apnd_org+4 used to reference block fetched by fetch  007006 18-13 equ read_args,apnd_org+6 last block fetched by fetch  007010 18-14 equ fetchin,apnd_org+8 absadr of word to be fetched  007011 18-15 equ sltseg,apnd_org+9 SLT segment number  007012 18-16 equ bosdmp,apnd_org+10 non-zero if BOS itself is to be fetched  007013 18-17 equ pagesw,apnd_org+11 non-zero if paging to be simulated 007014 18-18 equ pmlsw,apnd_org+12 non-zero if PML to be simulated 007016 18-19 equ sstsdw,apnd_org+14 SDW of SST segment 007020 18-20 equ cmpsdw,apnd_org+16 SDW of CMP segment 007022 18-21 equ castap,apnd_org+18 offset of first ASTE in SST segment  18-22  007026 18-23 equ getinit,apnd_org+22 initialize appending package  007027 18-24 equ getsdw,apnd_org+23 fetch an SDW  007030 18-25 equ getwd,apnd_org+24 fetch a word  007031 18-26 equ grab,apnd_org+25 fetch from a list  007032 18-27 equ apnd,apnd_org+26 appending simulation 007033 18-28 equ unapnd,apnd_org+27 to modify a segment  007034 18-29 equ get,apnd_org+28 get a block of data  007035 18-30 equ put,apnd_org+29 write a block of data 007036 18-31 equ comp,apnd_org+30 compare a block of data  007037 18-32 equ fetch,apnd_org+31 to fetch core  007040 18-33 equ unfetch,apnd_org+32 to rewrite fetched buffer 007041 18-34 equ fetch_use_buffer,apnd_org+33 to set SDW to appending buffer  007042 18-35 equ sltsearch,apnd_org+34 get segment # given name 007043 18-36 equ getsltname,apnd_org+35 get name of segment 007044 18-37 equ pd_check,apnd_org+36 check for page on paging device  007045 18-38 equ pd_modify,apnd_org+37 turn on modified bit in pdmap  007046 18-39 equ pd_getptr,apnd_org+38 get pointer to pdmap entry  007047 18-40 equ pvt_to_devt,apnd_org+39 convert pvtx to device type wd 18-41  18-42 " End of include file ...... apnd_equ.incl.alm  18-43  1801 include pt_equ 19-1 " 19-2 " Begin include file ...... pt_equ.incl.alm 19-3 " Created 8/28/73 by N. I. Morris  19-4 " Modified 8/79 by R.J.C. Kissel to use expanded BOS.  19-5 " Last modified by Sherman D. Sprague 02/11/81 for DPS8 support.  006000 19-6 bool pt_org,6000  19-7  006000 19-8 equ printon,pt_org+0 turn on printer  006001 19-9 equ tapeon,pt_org+1 turn on tape  006002 19-10 equ wteof,pt_org+2 close out tape or print  006003 19-11 equ space,pt_org+3 fill line with blanks  006004 19-12 equ headform,pt_org+4 print header  006005 19-13 equ print,pt_org+5 print line 006006 19-14 equ ptblock,pt_org+6 print block of data  006010 19-15 equ initprint,pt_org+8 init print package 006011 19-16 equ print_edited,pt_org+9 print edited 006014 19-17 equ ptbfirst,pt_org+12 non-zero on first call to ptblock  006015 19-18 equ ptsegno,pt_org+13 non-zero to print segment # 006016 19-19 equ pthdr,pt_org+14 page heading  19-20  19-21 " End of include file ...... pt_equ.incl.alm  19-22  1802 include sstn_equ  20-1  20-2 " Begin include file ...... sstn_equ.incl.alm  20-3 " Created 5/11/75 by Noel I. Morris 20-4 " Modified 8/79 by R.J.C. Kissel to use expanded BOS.  20-5  006000 20-6 bool sstn_org,6000 20-7  20-8  20-9 " End of include file ...... sstn_equ.incl.alm  20-10  1803 include bos_tv 21-1 " 21-2 " Begin include file ...... bos_tv.incl.alm 21-3 " Created in November 1971 by N. I. Morris. 21-4 " Modified 9/9/76 by Noel I. Morris 21-5 " Modified by Sherman D. Sprague 02/11/81 for DPS8 support. 21-6 " Modified November 1981 by C. Hornig to remove iom_connect_rel.  21-7 " Modified January 1982 by J. Bongiovanni to add getport_info  21-8 " Modified May 1982 by Sherman D. Sprague to add getmpc.  21-9  21-10 " BOS Utility Package Transfer Vector.  21-11  012000 21-12 equ pagectl,utilorg  012001 21-13 equ line,pagectl+1 012040 21-14 equ arg,line+31  012060 21-15 equ darg,arg+arglen+1  012100 21-16 equ earg,darg+arglen+1 012120 21-17 equ fltscu,earg+arglen+1  21-18  012200 21-19 equ tv_org,utilorg+128 21-20  012200 21-21 equ scan,tv_org+0  012201 21-22 equ arg_count,tv_org+1 012202 21-23 equ nextline,tv_org+2  012203 21-24 equ nlraw,tv_org+3 012204 21-25 equ search,tv_org+4  012205 21-26 equ makefil,tv_org+5  012206 21-27 equ ldcom,tv_org+6 012207 21-28 equ getsec,tv_org+7  012210 21-29 equ cvinit,tv_org+8  012211 21-30 equ rdev,tv_org+9  012212 21-31 equ wdev,tv_org+10 012213 21-32 equ phybos,tv_org+11  012214 21-33 equ bosphy,tv_org+12  012215 21-34 equ phyadd,tv_org+13  012216 21-35 equ mulbos,tv_org+14  012217 21-36 equ bosmul,tv_org+15  012220 21-37 equ lookup_devmodel,tv_org+16  012221 21-38 equ makesdw,tv_org+17  012222 21-39 equ argbos,tv_org+18  012223 21-40 equ argmul,tv_org+19  012224 21-41 equ amdvt,tv_org+20  012225 21-42 equ amfirst,tv_org+21  012226 21-43 equ amlast,tv_org+22  012227 21-44 equ cvnamla,tv_org+23  012230 21-45 equ sect_per_cyl_list,tv_org+24  012231 21-46 equ sect_per_dev_list,tv_org+25  012232 21-47 equ rec_per_dev_list,tv_org+26 012233 21-48 equ amaxio,tv_org+27  012234 21-49 equ rdsec,tv_org+28  012235 21-50 equ wtsec,tv_org+29  012236 21-51 equ disk_brief,tv_org+30  012237 21-52 equ itaper,tv_org+31  012240 21-53 equ itapew,tv_org+32  012241 21-54 equ erpt,tv_org+33 012242 21-55 equ ercv,tv_org+34 012243 21-56 equ erbuf,tv_org+35  012244 21-57 equ type,tv_org+36 012245 21-58 equ ttyinit,tv_org+37  012246 21-59 equ readcd,tv_org+38  012247 21-60 equ readtty,tv_org+39  012250 21-61 equ getprt,tv_org+40  012251 21-62 equ punch,tv_org+41  012252 21-63 equ octwd,tv_org+42  012253 21-64 equ geas,tv_org+43 012254 21-65 equ geastab,tv_org+44  012255 21-66 equ asge,tv_org+45 012256 21-67 equ asgetab,tv_org+46  012257 21-68 equ ljust,tv_org+47  012260 21-69 equ rjust,tv_org+48  012261 21-70 equ bzel,tv_org+49 012262 21-71 equ stripa,tv_org+50  012263 21-72 equ stripg,tv_org+51  012264 21-73 equ getconf,tv_org+52  012265 21-74 equ getmore,tv_org+53  012266 21-75 equ getperiph,tv_org+54  012267 21-76 equ rdclock,tv_org+55  012270 21-77 equ cvclock,tv_org+56  012271 21-78 equ init_io,tv_org+57  012272 21-79 equ connect_iom,tv_org+58  012273 21-80 equ getmpc,tv_org+59  012274 21-81 equ check_status,tv_org+60 012275 21-82 equ get_special_interrupt,tv_org+61  012276 21-83 equ get_status_interrupt,tv_org+62 012277 21-84 equ xio_wait,tv_org+63 012300 21-85 equ initint,tv_org+64  012301 21-86 equ wantflt,tv_org+65  012302 21-87 equ intno,tv_org+66  012303 21-88 equ intrpts1,tv_org+67 012304 21-89 equ hexwd,tv_org+68  012305 21-90 equ find_disk,tv_org+69  012306 21-91 equ find_root,tv_org+70  012307 21-92 equ find_part,tv_org+71  012310 21-93 equ check_status_no_stat,tv_org+72 012311 21-94 equ check_special_status,tv_org+73 012312 21-95 equ check_cpu_type,tv_org+74  012313 21-96 equ getportinfo,tv_org+75  21-97  21-98 " End of include file ...... bos_tv.incl.alm  21-99  1804 include bos_common 22-1 "  22-2 " Begin include file ...... bos_common.incl.alm 22-3 " Modified on 8/31/76 by N. I. Morris  22-4 " Modified on 9/01/80 by Sherman D. Sprague for DPS8 operation  22-5 " Modified on 5/26/82 by Sherman D. Sprague to lengthen config size 22-6 " Modified on 3/01/83 by Sherman D. Sprague to lengthen dirlen  22-7 " MACHINE CONDITIONS AREA  22-8 " Its length is "storlen". 22-9  000000 22-10 equ amptwregs,0 Ass. Mem PTW registers  000100 22-11 equ amptwptr,64 Ass. Mem PTW pointers 000200 22-12 equ amsdwregs,128 Ass. Mem SDW registers  000400 22-13 equ amsdwptr,256 Ass. Mem SDW pointers  000500 22-14 equ ouhist,320 operations hist regs  000700 22-15 equ cuhist,448 control unit hist regs  001100 22-16 equ eishist,576 eis hist regs  001300 22-17 equ aphist,704 appending unit hist regs  001500 22-18 equ prs,832 pointer regs  001520 22-19 equ regs,848 sreg 001530 22-20 equ low_order_port,856 port to read clock from 001532 22-21 equ mctime,858 bootload memory clock  001540 22-22 equ scu,864  001550 22-23 equ mcm,872 memory masks 8 ports 001570 22-24 equ dbr,888  001572 22-25 equ intrpts,890 waiting interrupts 001573 22-26 equ bar,891 bar  001574 22-27 equ modereg,892 processor & cache mode registers  001576 22-28 equ faultreg,894 processor fault register  001600 22-29 equ ptrlen,896 pointer-lengths EIS 0 mod 8 001610 22-30 equ coreblocks,904 array of port information  22-31 " Bits 0-17 => num 1st 64-word block  22-32 " Bits 18-35 => num of 64-word blocks  22-33 " (-1) => no mem on this port  001620 22-34 equ lowport_cfg,912 Saved CFG from bootload SCU  22-35  002000 22-36 equ storlen,1024  22-37  22-38  22-39  22-40 " BOS COMMAND DIRECTORY 22-41 " Its length is "dirlen".  22-42  002000 22-43 equ dir,1024 ( 0-23) => sector # of first sector on BOS disk  22-44 " (24-35) => # of sectors in BOS common  002001 22-45 equ used,dir+1 ( 0-23) => # of next available sector on BOS disk  002002 22-46 equ useable,dir+2 ( 0-23) => first unavailable sector on BOS disk  002003 22-47 equ corearea,dir+3 ( 0-23) => starting sector of Multics core image  22-48 " (24-35) => # of sectors in Multics core image  002004 22-49 equ setuparea,dir+4 Sector and length of setup 002005 22-50 equ utilarea,dir+5 where utility package is kept  002010 22-51 equ iom_mxbase,dir+8 IOM IMW area address  002011 22-52 equ iom_mbbase,dir+9 IOM mailbox base  002012 22-53 equ bos_dvt,dir+10 BOS disk loc: (o3/iom,o6/chn,o9/drive,o18/devtype)  002013 22-54 equ unitgroup,dir+11 disk unitgroup (device no. or area no.)  002014 22-55 equ diskchanno,dir+12 channel to be used for disk  002015 22-56 equ tapechanno,dir+13 channel # for tapes  002016 22-57 equ rdrchanno,dir+14 channel number for card reader  002017 22-58 equ ttychanno,dir+15 channel # for operator's tty  002020 22-59 equ quietsw,dir+16 if on, don't print card and macro commands  002021 22-60 equ inputsw,dir+17 read from tty, cards, macros  002022 22-61 equ macroloc,dir+18 disk addr, buffer index of macro file  002023 22-62 equ fdump_state,dir+19 completion flag for last FDUMP  002024 22-63 equ d355_state,dir+20 = 1 if DataNet 355 loaded successfully  002025 22-64 equ skipsw,dir+21 if on, skip runcom lines 002026 22-65 equ ttypmtsw,dir+22 if on, prompt  002027 22-66 equ curtcmd,dir+23 current bos command 002030 22-67 equ readysw,dir+24 if on, print ready message  002032 22-68 equ cmdlst,dir+26 list of commands 22-69  000600 22-70 equ dirlen,384 22-71  22-72  22-73  22-74 " MACRO BUFFER AREA 22-75  002600 22-76 equ macrobuf,dir+dirlen io buffer for macro files 002700 22-77 equ macroline,macrobuf+64 runcom command line 002716 22-78 equ macroargs,macroline+14 argument descriptors for runcom  22-79  22-80  22-81  22-82 " CONFIGURATION CARD AREA  22-83 " Its length is 2048 words.  22-84  003000 22-85 equ conf,macrobuf+128 start of configuration info  007000 22-86 equ econf,conf+2048 end of configuration info  000020 22-87 equ confl,16 length of each line  22-88  22-89  007000 22-90 equ seg6length,econf length of bos_common area segment 22-91  22-92 " End of include file ...... bos_common.incl.alm  22-93  1805  1806  1807 end  LITERALS 004034 aa 202021 474524 004035 aa 202062 626345 004036 aa 204763 474227 004037 aa 777717 171717 004040 aa 234645 633145 004041 aa 777777 777777 004042 aa 000077 777777 004043 aa 377770 207777 004044 aa 202020 264651 004045 aa 622523 634651 004046 aa 000020 200000 004047 aa 633144 252020 004050 aa 512143 512020 004051 aa 202020 202020 004052 aa 202020 202620 004053 aa 202020 202520 004054 aa 202020 262020 004055 aa 202020 252020 004056 aa 454620 442544 004057 aa 476427 512566 004060 aa 202020 232020 004061 aa 377770 037777 004062 aa 777777 770000 004063 aa 777777 777700 004064 aa 216263 252020 004065 aa 202051 314527 004066 aa 777777 000077 004067 aa 474364 622020 004070 aa 443145 646220 NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 004071 5a 000003 000000 004072 5a 000017 600000 004073 aa 000000 000000 004074 55 000010 000002 004075 5a 000002 400003 004076 55 000006 000010 004077 aa 004 144 165 155 004100 aa 160 000 000 000 004101 55 000002 000003 004102 6a 000000 400002 004103 55 000013 000003 004104 aa 014 163 171 155 symbol_table  004105 aa 142 157 154 137 004106 aa 164 141 142 154 004107 aa 145 000 000 000 DEFINITIONS HASH TABLE  004110 aa 000000 000015 004111 aa 000000 000000 004112 aa 000000 000000 004113 aa 000000 000000 004114 aa 000000 000000 004115 aa 000000 000000 004116 aa 000000 000000 004117 5a 000010 000000 004120 aa 000000 000000 004121 aa 000000 000000 004122 aa 000000 000000 004123 aa 000000 000000 004124 aa 000000 000000 004125 aa 000000 000000 NO EXTERNAL NAMES  NO TRAP POINTER WORDS  TYPE PAIR BLOCKS  004126 aa 000001 000000 004127 aa 000000 000000 INTERNAL EXPRESSION WORDS LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 004071 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 224137 207674 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 001067 000020 aa 000000 000517 000021 aa 000000 001037 000022 aa 001042 000517 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 000027 000066 aa 000222 000025 000067 aa 122721 273010 000070 aa 000000 112272 000071 aa 215460 600000 000072 aa 000230 000040 000073 aa 113400 415301 000074 aa 000000 111341 000075 aa 220414 400000 000076 aa 000240 000042 000077 aa 120345 447426 000100 aa 000000 112034 000101 aa 634146 000000 000102 aa 000251 000041 000103 aa 052721 247134 000104 aa 000000 105272 000105 aa 317215 400000 000106 aa 000262 000041 000107 aa 105543 476637 000110 aa 000000 110555 000111 aa 260135 200000 000112 aa 000273 000030 000113 aa 077377 110471 000114 aa 000000 107737 000115 aa 746246 400000 000116 aa 000301 000047 000117 aa 110235 072676 000120 aa 000000 111024 000121 aa 524455 000000 000122 aa 000313 000032 000123 aa 113750 372730 000124 aa 000000 111375 000125 aa 120334 000000 000126 aa 000322 000040 000127 aa 046742 631025 000130 aa 000000 104674 000131 aa 403663 000000 000132 aa 000332 000036 000133 aa 101406 675745 000134 aa 000000 110143 000135 aa 775312 200000 000136 aa 000342 000036 000137 aa 043243 125755 000140 aa 000000 101621 000141 aa 275044 200000 000142 aa 000352 000031 000143 aa 113434 242331 000144 aa 000000 111347 000145 aa 432123 600000 000146 aa 000361 000032 000147 aa 113434 042223 000150 aa 000000 111346 000151 aa 227161 400000 000152 aa 000370 000033 000153 aa 043243 130547 000154 aa 000000 102611 000155 aa 327745 600000 000156 aa 000377 000043 000157 aa 043243 127523 000160 aa 000000 101621 000161 aa 351624 000000 000162 aa 000410 000041 000163 aa 043243 125747 000164 aa 000000 103256 000165 aa 424006 200000 000166 aa 000421 000047 000167 aa 102312 644262 000170 aa 000000 110232 000171 aa 252245 600000 000172 aa 000433 000041 000173 aa 043243 126016 000174 aa 000000 103256 000175 aa 423767 600000 000176 aa 000444 000042 000177 aa 112204 105031 000200 aa 000000 111221 000201 aa 055103 400000 000202 aa 000455 000040 000203 aa 077322 074066 000204 aa 000000 107733 000205 aa 111404 200000 000206 aa 000465 000042 000207 aa 066146 212610 000210 aa 000000 106615 000211 aa 362652 200000 000212 aa 000476 000040 000213 aa 110235 072677 000214 aa 000000 111024 000215 aa 524460 600000 000216 aa 000506 000044 000217 aa 121622 277475 000220 aa 000000 112162 000221 aa 321563 400000 000222 aa 076163 160145 >spec>h>3.17>dump.alm  000223 aa 143076 150076 000224 aa 063056 061067 000225 aa 076144 165155 000226 aa 160056 141154 000227 aa 155040 040040 000230 aa 076154 144144 >ldd>bos>include>bosequ.incl.alm  000231 aa 076142 157163 000232 aa 076151 156143 000233 aa 154165 144145 000234 aa 076142 157163 000235 aa 145161 165056 000236 aa 151156 143154 000237 aa 056141 154155 000240 aa 076154 144144 >ldd>include>stack_header.incl.alm  000241 aa 076151 156143 000242 aa 154165 144145 000243 aa 076163 164141 000244 aa 143153 137150 000245 aa 145141 144145 000246 aa 162056 151156 000247 aa 143154 056141 000250 aa 154155 040040 000251 aa 076154 144144 >ldd>include>stack_frame.incl.alm  000252 aa 076151 156143 000253 aa 154165 144145 000254 aa 076163 164141 000255 aa 143153 137146 000256 aa 162141 155145 000257 aa 056151 156143 000260 aa 154056 141154 000261 aa 155040 040040 000262 aa 076154 144144 >ldd>bos>include>bos_sdw.incl.alm  000263 aa 076142 157163 000264 aa 076151 156143 000265 aa 154165 144145 000266 aa 076142 157163 000267 aa 137163 144167 000270 aa 056151 156143 000271 aa 154056 141154 000272 aa 155040 040040 000273 aa 076154 144144 >ldd>include>mc.incl.alm  000274 aa 076151 156143 000275 aa 154165 144145 000276 aa 076155 143056 000277 aa 151156 143154 000300 aa 056141 154155 000301 aa 076154 144144 >ldd>bos>include>bos_page_info.incl.alm 000302 aa 076142 157163 000303 aa 076151 156143 000304 aa 154165 144145 000305 aa 076142 157163 000306 aa 137160 141147 000307 aa 145137 151156 000310 aa 146157 056151 000311 aa 156143 154056 000312 aa 141154 155040 000313 aa 076154 144144 >ldd>include>apte.incl.alm  000314 aa 076151 156143 000315 aa 154165 144145 000316 aa 076141 160164 000317 aa 145056 151156 000320 aa 143154 056141 000321 aa 154155 040040 000322 aa 076154 144144 >ldd>include>state_equs.incl.alm  000323 aa 076151 156143 000324 aa 154165 144145 000325 aa 076163 164141 000326 aa 164145 137145 000327 aa 161165 163056 000330 aa 151156 143154 000331 aa 056141 154155 000332 aa 076154 144144 >ldd>bos>include>proc.incl.alm  000333 aa 076142 157163 000334 aa 076151 156143 000335 aa 154165 144145 000336 aa 076160 162157 000337 aa 143056 151156 000340 aa 143154 056141 000341 aa 154155 040040 000342 aa 076154 144144 >ldd>bos>include>fill.incl.alm  000343 aa 076142 157163 000344 aa 076151 156143 000345 aa 154165 144145 000346 aa 076146 151154 000347 aa 154056 151156 000350 aa 143154 056141 000351 aa 154155 040040 000352 aa 076154 144144 >ldd>include>sst.incl.alm  000353 aa 076151 156143 000354 aa 154165 144145 000355 aa 076163 163164 000356 aa 056151 156143 000357 aa 154056 141154 000360 aa 155040 040040 000361 aa 076154 144144 >ldd>include>aste.incl.alm  000362 aa 076151 156143 000363 aa 154165 144145 000364 aa 076141 163164 000365 aa 145056 151156 000366 aa 143154 056141 000367 aa 154155 040040 000370 aa 076154 144144 >ldd>include>sstnt.incl.alm 000371 aa 076151 156143 000372 aa 154165 144145 000373 aa 076163 163164 000374 aa 156164 056151 000375 aa 156143 154056 000376 aa 141154 155040 000377 aa 076154 144144 >ldd>include>eis_micro_ops.incl.alm 000400 aa 076151 156143 000401 aa 154165 144145 000402 aa 076145 151163 000403 aa 137155 151143 000404 aa 162157 137157 000405 aa 160163 056151 000406 aa 156143 154056 000407 aa 141154 155040 000410 aa 076154 144144 >ldd>bos>include>configp.incl.alm  000411 aa 076142 157163 000412 aa 076151 156143 000413 aa 154165 144145 000414 aa 076143 157156 000415 aa 146151 147160 000416 aa 056151 156143 000417 aa 154056 141154 000420 aa 155040 040040 000421 aa 076154 144144 >ldd>bos>include>bos_sstnt_man.incl.alm 000422 aa 076142 157163 000423 aa 076151 156143 000424 aa 154165 144145 000425 aa 076142 157163 000426 aa 137163 163164 000427 aa 156164 137155 000430 aa 141156 056151 000431 aa 156143 154056 000432 aa 141154 155040 000433 aa 076154 144144 >ldd>bos>include>segname.incl.alm  000434 aa 076142 157163 000435 aa 076151 156143 000436 aa 154165 144145 000437 aa 076163 145147 000440 aa 156141 155145 000441 aa 056151 156143 000442 aa 154056 141154 000443 aa 155040 040040 000444 aa 076154 144144 >ldd>bos>include>apnd_equ.incl.alm  000445 aa 076142 157163 000446 aa 076151 156143 000447 aa 154165 144145 000450 aa 076141 160156 000451 aa 144137 145161 000452 aa 165056 151156 000453 aa 143154 056141 000454 aa 154155 040040 000455 aa 076154 144144 >ldd>bos>include>pt_equ.incl.alm  000456 aa 076142 157163 000457 aa 076151 156143 000460 aa 154165 144145 000461 aa 076160 164137 000462 aa 145161 165056 000463 aa 151156 143154 000464 aa 056141 154155 000465 aa 076154 144144 >ldd>bos>include>sstn_equ.incl.alm  000466 aa 076142 157163 000467 aa 076151 156143 000470 aa 154165 144145 000471 aa 076163 163164 000472 aa 156137 145161 000473 aa 165056 151156 000474 aa 143154 056141 000475 aa 154155 040040 000476 aa 076154 144144 >ldd>bos>include>bos_tv.incl.alm  000477 aa 076142 157163 000500 aa 076151 156143 000501 aa 154165 144145 000502 aa 076142 157163 000503 aa 137164 166056 000504 aa 151156 143154 000505 aa 056141 154155 000506 aa 076154 144144 >ldd>bos>include>bos_common.incl.alm  000507 aa 076142 157163 000510 aa 076151 156143 000511 aa 154165 144145 000512 aa 076142 157163 000513 aa 137143 157155 000514 aa 155157 156056 000515 aa 151156 143154 000516 aa 056141 154155 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number  7 abs_wire_entry bos_page_info: 21.  37777 address_compare_mask bos_page_info: 3.  1356 allsegs dump: 318, 1147.  1357 allsegsn dump: 282, 1149.  1453 allsegsretn dump: 1150, 1261.  12233 amaxio bos_tv: 48. 12224 amdvt bos_tv: 41. 12225 amfirst bos_tv: 42. 12226 amlast bos_tv: 43. 100 amptwptr dump: 644, bos_common: 11. 0 amptwregs dump: 634, 638,  bos_common: 10. 676 amptw_l68 dump: 669, 674.  635 amptw_loop dump: 633, 671, 676. 400 amsdwptr dump: 594, bos_common: 13. 200 amsdwregs dump: 590, bos_common: 12. 630 amsdw_l68 dump: 616, 621.  576 amsdw_loop dump: 589, 618, 623. 1300 aphist dump: 614, 667, 750, 784, 803, 1016,  bos_common: 17. 7032 apnd dump: 1305, 1599, 1642, 1678,  proc: 33, 183, 199, 289, 300, 307,  bos_sstnt_man: 36, 200, apnd_equ: 27. 7000 apnd_org dump: 38, apnd_equ: 8, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,  21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,  34, 35, 36, 37, 38, 39, 40. 42 apte.access_authorization apte: 92.  24 apte.alarm_event apte: 73. 26 apte.alarm_time apte: 76. 26 apte.alarm_time_thread apte: 75. 40 apte.always_loaded apte: 23. 12 apte.asteps apte: 48. 10 apte.batch apte: 68. 21 apte.batch_word apte: 67. 60 apte.begin_interaction_vcpu apte: 106.  10 apte.being_loaded apte: 25. 0 apte.bp apte: 7. 23 apte.chans_offset apte: 65. 37 apte.cpu_monitor apte: 88. 52 apte.current_response_state apte: 102.  44 apte.dbr apte: 95, proc: 182. 20 apte.dbr_loaded apte: 24, proc: 208. 34 apte.deadline apte: 84. 200 apte.default_procs_required apte: 21.  12 apte.dseg apte: 50. 4000 apte.eligible apte: 17, proc: 212. 10 apte.event_thread apte: 44. 1 apte.firstsw apte: 28. 1 apte.flags apte: 9. 21 apte.flags2 apte: 63. 0 apte.fp apte: 6. 20000 apte.hproc apte: 15. 2000 apte.idle apte: 18. 1000 apte.interaction apte: 19. 10 apte.ipc_pointers apte: 43. 11 apte.ips_message apte: 46. 51 apte.ittes_got apte: 100. 50 apte.ittes_sent apte: 99. 54 apte.last_response_state_time apte: 104.  13 apte.le_shift apte: 116. 10000 apte.loaded apte: 16. 36 apte.lock apte: 86. 15 apte.lock_id apte: 57. 400000 apte.mbz apte: 11. 400000 apte.no_ipc_check apte: 93. 53 apte.number_processing apte: 103. 2 apte.page_faults apte: 31. 2 apte.page_wait_flag apte: 27. 40 apte.paging_measure apte: 90. 12 apte.pds apte: 49. 13 apte.prds apte: 52. 40000 apte.pre_empted apte: 14. 400 apte.pre_empt_pending apte: 20. 400000 apte.prior_sched apte: 64. 3 apte.processid apte: 33. 63 apte.procs_required apte: 109. 776000 apte.procs_required_mask apte: 110.  7 apte.pr_tag_mask apte: 69. 100 apte.realtime_burst apte: 22. 62 apte.saved_temax apte: 108. 13 apte.savex7 apte: 53. 1 apte.sentinel apte: 10. 4 apte.shared_stack_0 apte: 26. 374000 apte.special_chans apte: 66. 1 apte.state apte: 29, proc: 198. 22 apte.state_change_time apte: 71. 100000 apte.stop_pending apte: 13. 4 apte.te apte: 35. 33 apte.temax apte: 82. 30 apte.term_channel apte: 78. 14 apte.term_processid apte: 55. 0 apte.thread apte: 5. 6 apte.ti apte: 39. 7 apte.timax apte: 41. 175 apte.timer_factor apte: 117. 16 apte.time_used_clock apte: 58. 56 apte.total_processing_time apte: 105.  5 apte.ts apte: 37. 46 apte.virtual_cpu_time apte: 97. 20 apte.wait_event apte: 60. 200000 apte.wakeup_waiting apte: 12. 21 apte.wct_index apte: 62. 32 apte.ws_size apte: 80. 327 aptentsize proc: 14, 371.  253 aptoff proc: 12, 367.  3057 aptorg proc: 43, 180, 368. 3066 aptsdw proc: 37, 184, 200, 377.  313 aptsize proc: 13, 369.  1234 apuhrits dump: 769, 1016.  12040 arg dump: 85, 203, 210, 267, 274, 275, 290, 299, 345, 1161, 1473, 1476,  1484, 1485, 1486, 1499,  proc: 73, 87, 101, fill: 12, 33,  segname: 13, bos_tv: 14, 15.  12222 argbos dump: 330, bos_tv: 39. 17 arglen bosequ: 17, bos_tv: 15, 16, 17. 12223 argmul bos_tv: 40. 12201 arg_count bos_tv: 22. 12255 asge configp: 68, bos_tv: 66. 12256 asgetab bos_sstnt_man: 53,  bos_tv: 67. 3 ast bos_page_info: 11.  4000 aste.any_access_on aste: 49. 5 aste.any_access_on_word aste: 48. 0 aste.bp aste: 18. 777 aste.csl_mask aste: 90. 777000 aste.csl_mask_inner bos_page_info: 53.  33 aste.csl_shift aste: 89. 12 aste.csl_word aste: 88. 200000 aste.damaged aste: 116. 13 aste.damaged_word aste: 115. 4 aste.ddnp aste: 104. 12 aste.ddnp_word aste: 103. 200 aste.deact_error aste: 57. 5 aste.deact_error_word aste: 56. 40000 aste.dirsw proc: 304, aste: 73. 5 aste.dirsw_word proc: 299, aste: 72. 2 aste.dius aste: 63. 5 aste.dius_word aste: 62. 400000 aste.dmpr_pad aste: 67. 5 aste.dmpr_pad_word aste: 66. 20 aste.dnzp aste: 100. 12 aste.dnzp_word aste: 99. 7 aste.dtm aste: 82. 6 aste.dtu aste: 81. 200000 aste.ehs aste: 69. 5 aste.ehs_word aste: 68. 400 aste.explicit_deact_ok aste: 55. 5 aste.explicit_deact_ok_word aste: 54.  400 aste.fmchanged aste: 92. 400000 aste.fmchanged1 aste: 114. 13 aste.fmchanged1_word aste: 113. 12 aste.fmchanged_word aste: 91. 200 aste.fms aste: 94. 12 aste.fms_word aste: 93. 40 aste.fm_damaged aste: 61. 5 aste.fm_damaged_word aste: 60. 0 aste.fp aste: 17. 40000 aste.gtms aste: 43. 5 aste.gtms_word aste: 42. 40 aste.gtpd aste: 98. 12 aste.gtpd_word aste: 97. 100000 aste.gtus aste: 41. 5 aste.gtus_word aste: 40. 20000 aste.hc aste: 45. 100 aste.hc_part aste: 59. 5 aste.hc_part_word aste: 58. 10000 aste.hc_sdw aste: 47. 5 aste.hc_sdw_word aste: 46. 5 aste.hc_word aste: 44. 13 aste.ht_fp aste: 112. 1 aste.infl aste: 20. 1 aste.infp aste: 21. 1000 aste.inhibit_cache aste: 53. 5 aste.inhibit_cache_word aste: 52. 200000 aste.init aste: 39. 5 aste.init_word aste: 38. 77 aste.marker_mask aste: 126. 0 aste.marker_shift aste: 125. 13 aste.marker_word aste: 124. 20000 aste.master_dir aste: 75. 5 aste.master_dir_word aste: 74. 777 aste.msl_mask aste: 30. 33 aste.msl_shift aste: 29. 4 aste.msl_word aste: 28. 1 aste.nid aste: 65. 5 aste.nid_word aste: 64. 100 aste.npfs aste: 96. 12 aste.npfs_word aste: 95. 777 aste.np_mask aste: 110. 0 aste.np_shift aste: 109. 12 aste.np_word aste: 108. 100000 aste.nqsw aste: 71. 5 aste.nqsw_word aste: 70. 100000 aste.pack_ovfl aste: 118. 13 aste.pack_ovfl_word aste: 117. 2 aste.par_astep aste: 24, bos_sstnt_man: 128, 199. 10 aste.per_process proc: 293, aste: 102. 12 aste.per_process_word proc: 288, aste: 101. 3 aste.ptsi_mask aste: 123. 6 aste.ptsi_shift aste: 122. 13 aste.ptsi_word aste: 121. 777 aste.pvtx_mask aste: 33. 22 aste.pvtx_shift aste: 32. 4 aste.pvtx_word aste: 31. 10 aste.quota aste: 84. 777 aste.records_mask aste: 107. 777000 aste.records_mask_inner bos_page_info: 54.  11 aste.records_shift aste: 106. 12 aste.records_word aste: 105. 2 aste.strp aste: 23. 40000 aste.synchronized aste: 120. 13 aste.synchronized_word aste: 119. 4000 aste.tqsw aste: 79. 5 aste.tqsw_word aste: 78. 3 aste.uid aste: 26. 11 aste.used aste: 86. 400000 aste.usedf aste: 37. 5 aste.usedf_word aste: 36. 10000 aste.volmap_seg aste: 77. 5 aste.volmap_seg_word aste: 76. 4 aste.vtocx aste: 34. 2000 aste.write_access_on aste: 51. 5 aste.write_access_on_word aste: 50.  0 aste_part.one aste: 134. 377 aste_part.three_mask aste: 139. 0 aste_part.three_shift aste: 138. 13 aste_part.three_word aste: 137. 1 aste_part.two aste: 135. 14 aste_part_size aste: 131. 14 aste_size proc: 287, 298,  aste: 15. 14 ast_size dump: 1398, 1405, 1420, 1433, 1435, 1465,  bos_page_info: 28,  bos_sstnt_man: 113, 118, 237.  1573 bar dump: 1046, bos_common: 26. 2 bf dump: 379, 383, 391, 424,  bosequ: 9. 4 blocked state_equs: 7. 7012 bosdmp fill: 67, apnd_equ: 16. 12217 bosmul bos_tv: 36. 12214 bosphy bos_tv: 33. 141 bosret dump: 148, 151, 155. 2012 bos_dvt bos_common: 53. 12261 bzel dump: 703, 706, 1437, bos_tv: 70. 143 call_fill dump: 133, 162.  1170 call_offset stack_header: 65.  7022 castap proc: 314, apnd_equ: 21. 704 cb_loop dump: 688, 715.  3434 cdedit configp: 55, 113.  10101 char_desc bos_page_info: 27.  12312 check_cpu_type bos_tv: 95. 12311 check_special_status bos_tv: 94. 12274 check_status bos_tv: 81. 12310 check_status_no_stat bos_tv: 93. 420 cht eis_micro_ops: 17.  10 cleanup_entry bos_page_info: 22.  7000 cmdbr dump: 43, 297, 305, 895, 902, 1480,  proc: 20, 187, 232, 233, 353, apnd_equ: 10. 2032 cmdlst bos_common: 68. 3 cme bos_page_info: 13.  12 cmep_to_coreadd.rl bos_page_info: 43.  2 cmep_to_desc.ls bos_page_info: 46.  7020 cmpsdw apnd_equ: 20. 3433 coedit configp: 41, 111.  3775 collect_segname dump: 241, 1491,  segname: 10. 4023 colseg.buf segname: 25, 29, 32, 43.  4010 colseg.descr segname: 21, 26.  4021 colseg.exit segname: 11, 36, 39. 4020 colseg.nf segname: 33, 38.  6 com dump: 42, 185, 450, 457, 470, 483, 518, 557, 564, 590, 594, 614,  634, 638, 644, 667, 689, 750, 784, 803, 817, 836, 1008, 1010,  1012, 1014, 1016, 1504, 1506, 1519,  bosequ: 14, configp: 17, 24.  60 command_found dump: 88, 93.  7036 comp apnd_equ: 31. 70 comtab dump: 87, 105, 143. 3000 conf dump: 185, 193,  configp: 17, 24,  bos_common: 85, 86.  151 configp dump: 141, 178, 317. 155 config_loop dump: 184, 194.  3321 config_print dump: 188, configp: 9. 20 confl dump: 192, configp: 17, bos_common: 87. 164 conf_x2 dump: 178, 186, 196. 12272 connect_iom bos_tv: 79. 263 contal dump: 272, 279.  247 contin dump: 115, 266.  517 convert_word dump: 519. 12 coreadd_to_cmep.ls bos_page_info: 44.  14 coreadd_to_desc.ls bos_page_info: 39.  6 coreadd_to_desc_lower.rl bos_page_info: 40. 2003 corearea bos_common: 47. 1610 coreblocks dump: 689, bos_common: 30. 700 cuhist dump: 1012, bos_common: 15. 1230 cuhrits dump: 746, 1012.  1562 cursdw dump: 1295, 1306, 1311, 1360, 1377, 1383, 1388, 1403, 1600, 1643, 1679. 2027 curtcmd bos_common: 66. 12270 cvclock dump: 471, bos_tv: 77. 12210 cvinit dump: 32, bos_tv: 29. 12227 cvnamla bos_tv: 44. 44 cycle dump: 72, 78, 101, 131, 166, 173, 235, 248, 261, 283, 309, 320,  421, 1496, 1509, 1514.  2024 d355_state bos_common: 63. 12060 darg bos_tv: 15, 16.  1570 dbr dump: 42, bos_common: 24. 305 dbrpt dump: 292, 301, 307. 400 default_aptorg proc: 11, 42.  1274 descrseg dump: 172, 315, 1069, proc: 237. 1332 descrsegretn dump: 1070, 1117.  2 desc_to_cmep.rl bos_page_info: 47.  14 desc_to_coreadd.rl bos_page_info: 41.  1310 desfound dump: 1088, 1098, 1109, 1113.  1304 desnext dump: 1082, 1094.  317 devdump dump: 127, 329.  441 devmult dump: 337, 340, 361, 427.  334 dev_garg dump: 344, 351.  1 df1 bos_page_info: 5.  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.  0 dir_modify proc: 9, 306.  2014 diskchanno bos_common: 55. 12236 disk_brief bos_tv: 51. 100 dmpbufl dump: 22, 44.  442 dmpdid dump: 331, 366, 370, 378, 428. 436 dmpfet dump: 409, 424.  426 dmpol dump: 341, 414.  443 dmpps dump: 332, 355, 364, 387, 397, 417, 418, 429.  444 dmprs dump: 374, 376, 412, 430.  445 dmpsl dump: 357, 419, 431. 4 dopt.dirs proc: 121, 127, 135, 159, 295. 1 dopt.hc proc: 119, 127, 128, 135, 155, 249.  2 dopt.pp proc: 120, 127, 135, 157, 284. 10 dopt.stk proc: 122, 161, 267. 20 dopt.write proc: 123, 133, 163, 282.  772 dptapu dump: 752, 773.  777 dptlp dump: 780, 848.  0 ds bosequ: 7. 3102 dseg_name proc: 48, 390.  3075 dseg_no proc: 50, 383.  1070 dtemp_buff dump: 786, 790, 795, 800, 805, 809, 814, 819, 823, 828, 833, 838,  842, 852.  1232 duhrits dump: 760, 1014.  310 dump dump: 107, 313.  146 dumpreg dump: 123, 171.  12100 earg segname: 24, 28,  bos_tv: 16, 17.  7000 econf dump: 193, bos_common: 86, 90.  1100 eishist dump: 817, 836, 1014, bos_common: 16. 0 empty state_equs: 3, proc: 204. 1453 endofseg dump: 1235, 1260.  1332 endprdesc dump: 1086, 1108, 1116. 40 enf eis_micro_ops: 2,  configp: 113. 1174 entry_offset stack_header: 69.  12243 erbuf bos_tv: 56. 12242 ercv bos_tv: 55. 12241 erpt dump: 74, 1512,  proc: 110, 229,  bos_sstnt_man: 63, 68, bos_tv: 54. 1407 even_arg dump: 1189, 1195.  6 evict_entry bos_page_info: 20.  37 execint dump: 29, 69.  1576 faultreg dump: 1059, bos_common: 28. 0 fault_entry bos_page_info: 14.  2023 fdump_state bos_common: 62. 7037 fetch dump: 226, apnd_equ: 32. 7010 fetchin dump: 224, 225,  apnd_equ: 14. 7004 fetchout dump: 230, 1326, 1603, 1646, 1683, proc: 36, 186, 202, 292, 303, 310,  bos_sstnt_man: 39, 204, apnd_equ: 12. 7041 fetch_use_buffer apnd_equ: 34. 5 fgb bosequ: 13. 3234 fill dump: 163, fill: 5. 3250 fillerr fill: 21, 31, 35. 3261 fillfno fill: 28, 33.  3273 filllh fill: 46, 65.  3253 fillll fill: 14, 25.  3240 filllp fill: 11, 41, 44, 48, 55, 57.  3305 filllst fill: 27, 36, 59, 72.  3276 fillonoff fill: 50, 67, 69, 71.  3266 fillrh fill: 39. 3271 fillwd fill: 43, 61, 63. 3245 fillx0 fill: 5, 17, 21. 3246 fillx2 fill: 6, 18, 22. 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. 2164 framecr dump: 1647, 1656, 1695. 2135 frameline dump: 1665, 1687.  2155 framenl dump: 1685, 1692.  2071 frameprint dump: 1577, 1586, 1624. 2161 framer dump: 1680, 1691.  2160 frameretn dump: 1625, 1689, 1693. 2125 frameslt dump: 1650, 1651, 1656. 1156 F_bit_off dump: 952, 955.  12253 geas bos_tv: 64. 12254 geastab segname: 20, bos_tv: 65. 7034 get dump: 1441, bos_sstnt_man: 44, 116, 162,  apnd_equ: 29. 12264 getconf bos_tv: 73. 7026 getinit dump: 45, 308,  proc: 235, fill: 15, apnd_equ: 23. 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. 7027 getsdw dump: 1084, 1106, 1233, 1374, 1649, proc: 243, bos_sstnt_man: 30,  apnd_equ: 24. 12207 getsec bos_tv: 28. 7043 getsltname dump: 1137, 1657,  apnd_equ: 36. 3557 getsstntname dump: 1132, 1652,  bos_sstnt_man: 101.  7030 getwd apnd_equ: 25. 12275 get_special_interrupt bos_tv: 82. 12276 get_status_interrupt bos_tv: 83. 134 go dump: 135, 147.  1446 good_match dump: 1246, 1251.  3617 gpn.1 bos_sstnt_man: 148, 152. 3707 gpn.aste bos_sstnt_man: 118, 128, 237.  3706 gpn.astep bos_sstnt_man: 114, 131, 145, 198, 209, 236. 3723 gpn.curlen bos_sstnt_man: 126, 180, 190, 216, 238.  3702 gpn.desc bos_sstnt_man: 123, 219. 3675 gpn.done bos_sstnt_man: 186, 206, 208, 213. 3704 gpn.fail bos_sstnt_man: 104, 151, 165, 171, 202, 228. 3624 gpn.got_ptsi bos_sstnt_man: 149, 154. 3651 gpn.isroot bos_sstnt_man: 133, 173, 183.  3730 gpn.linebuf bos_sstnt_man: 178, 189, 218, 245. 3726 gpn.linebufp bos_sstnt_man: 243.  3614 gpn.loop bos_sstnt_man: 144, 210. 3764 gpn.namebuf bos_sstnt_man: 164, 170, 175, 177, 246.  3704 gpn.not_pn bos_sstnt_man: 106, 109, 111, 119, 134, 229. 3724 gpn.offset bos_sstnt_man: 125, 172, 181, 184, 191, 215, 240.  3646 gpn.tab bos_sstnt_man: 54, 179. 3704 gpn.x2 bos_sstnt_man: 102, 121, 214, 227. 3614 gpn.yes_pn bos_sstnt_man: 129, 136. 7031 grab proc: 38, apnd_equ: 26. 7002 hcdbr proc: 34, fill: 61, 63,  apnd_equ: 11. 6004 headform dump: 90, 98, 316, 581, 619, 672, 682, 773, 1072, 1369,  pt_equ: 12. 12304 hexwd bos_tv: 89. 10 if0 eis_micro_ops: 19.  4 if1 eis_micro_ops: 20.  2 if2 eis_micro_ops: 21.  1 if3 eis_micro_ops: 22.  300 ign eis_micro_ops: 12.  12300 initint dump: 28, bos_tv: 85. 6010 initprint dump: 89, 97,  pt_equ: 15. 3437 initsstnt dump: 53, 1071,  bos_sstnt_man: 14.  12271 init_io dump: 31, bos_tv: 78. 2021 inputsw bos_common: 60. 220 insa eis_micro_ops: 9.  200 insb eis_micro_ops: 8.  20 insm eis_micro_ops: 1,  configp: 114. 240 insn eis_micro_ops: 10.  260 insp eis_micro_ops: 11.  100000 int bos_page_info: 6.  12302 intno bos_tv: 87. 1572 intrpts dump: 1061, bos_common: 25. 12303 intrpts1 bos_tv: 88. 2011 iom_mbbase bos_common: 52. 2010 iom_mxbase bos_common: 51. 12237 itaper bos_tv: 52. 12240 itapew bos_tv: 53. 3110 kst_name proc: 63, 399.  3100 kst_no proc: 65, 386.  1430 last_option_paired dump: 1219, 1223.  12206 ldcom dump: 39, 49, 57, bos_tv: 27. 12001 line dump: 81, 222, 252, 253, 256, 258, 259, 386, 389, 390, 393, 394,  400, 401, 406, 452, 454, 455, 459, 469, 472, 473, 482, 486,  525, 526, 528, 531, 532, 536, 553, 555, 559, 561, 562, 566,  568, 600, 604, 607, 636, 642, 650, 654, 655, 658, 661, 695,  696, 702, 704, 705, 707, 783, 791, 796, 801, 810, 815, 824,  829, 834, 843, 875, 899, 900, 906, 907, 911, 914, 932, 933,  936, 939, 961, 970, 973, 976, 979, 982, 985, 991, 996, 997,  1000, 1128, 1129, 1133, 1138, 1302, 1316, 1322, 1323, 1351, 1353, 1410,  1428, 1429, 1438, 1629, 1630, 1636, 1638, 1653, 1658, 1668, 1674, 1675,  configp: 13, 87,  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. 400 lte eis_micro_ops: 16,  configp: 111, 113, 114. 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 bos_tv: 38. 300000 mc.cpu_type_mask mc: 22. 3 mc.cpu_type_shift mc: 25. 46 mc.cpu_type_word mc: 21. 50 mc.eis_info mc: 11. 43 mc.errcode mc: 17. 46 mc.ext_fault_reg mc: 23. 77774 mc.ext_fault_reg_mask mc: 24. 45 mc.fault_reg mc: 19. 46 mc.fault_time mc: 20. 44 mc.fim_temp mc: 18. 42 mc.ips_temp mc: 16. 40 mc.mask mc: 15. 0 mc.prs mc: 8. 20 mc.regs mc: 9. 30 mc.scu mc: 10. 30 mc.scu.apu_stat_word mc: 48. 35 mc.scu.ca_word mc: 207. 32 mc.scu.cpu_no_word mc: 138. 35 mc.scu.cpu_tag_word mc: 231. 35 mc.scu.cu_stat_word mc: 211. 32 mc.scu.delta_word mc: 144. 30 mc.scu.fault_cntr_word mc: 66. 31 mc.scu.fault_data_word mc: 74. 34 mc.scu.ilc_word mc: 182. 34 mc.scu.indicators_word mc: 186. 31 mc.scu.port_stat_word mc: 108. 30 mc.scu.ppr.prr_word mc: 33. 30 mc.scu.ppr.psr_word mc: 38. 30 mc.scu.ppr.p_word mc: 43. 33 mc.scu.tpr.tbr_word mc: 174. 32 mc.scu.tpr.trr_word mc: 128. 32 mc.scu.tpr.tsr_word mc: 133. 33 mc.scu.tsr_stat_word mc: 152. 1550 mcm dump: 1008, bos_common: 23. 1224 mcmp1 dump: 724, 1008.  1532 mctime dump: 470, 1063, 1064, bos_common: 21. 7 mem dump: 157, bosequ: 15. 160 mflc eis_micro_ops: 7.  140 mfls eis_micro_ops: 6,  configp: 113. 1574 modereg dump: 1057, 1058,  bos_common: 27. 360 mors eis_micro_ops: 15.  1 moved_bit bos_page_info: 25.  340 mses eis_micro_ops: 14.  12216 mulbos dump: 365, bos_tv: 35. 320 mvc eis_micro_ops: 13,  configp: 111, 114.  120 mvza eis_micro_ops: 5.  100 mvzb eis_micro_ops: 4,  configp: 111. 2340 na dump: 1041, 1748.  2212 namptw_hdr dump: 629, 1710.  2221 namsdw_hdr dump: 584, 1713.  2261 napuhistreg_hdr dump: 764, 776, 1722. 2360 nbar dump: 1046, 1764.  2202 ncb_hdr dump: 685, 1706.  2361 nclock dump: 1063, 1064, 1765. 44 ncoms dump: 86, 143.  2243 ncuhistreg_hdr dump: 741, 1718.  2172 ndbr_hdr dump: 893, 1702.  2270 ndseg_hdr1 dump: 1075, 1725.  2277 ndseg_hdr2 dump: 1078, 1371, 1728. 2252 neishistreg_hdr dump: 755, 1720.  270 newdbr dump: 113, 289.  2342 nexp dump: 1043, 1750.  12202 nextline dump: 78, bos_tv: 23. 2356 nfault dump: 1059, 1762.  14 nfilll fill: 26, 72.  2334 nframe dump: 1628, 1745.  2370 nheading dump: 61, 1773, 1774. 4 nheading_lth dump: 61, 62, 1774. 2344 nind dump: 1039, 1752.  2357 nintrps dump: 1061, 1763.  12203 nlraw bos_tv: 24. 2206 nmcm_hdr dump: 721, 1708.  2355 nmode dump: 1057, 1058, 1761. 2362 nno dump: 641, 1768.  347 nofor dump: 347, 354, 357. 2131 nofrnm dump: 1644, 1655, 1661. 1436 nopt dump: 1224, 1239.  5 noptch dump: 1168, 1274.  1753 nostackbase dump: 1483, 1511.  2336 notincore dump: 257, 1747.  2234 nouhistreg_hdr dump: 731, 1716.  1522 no_abs_addr dump: 1310, 1317.  4 no_post bos_page_info: 8.  2332 npagetab dump: 1427, 1743.  2176 nppr_hdr dump: 448, 1704.  2311 npr0 dump: 552, 554, 1732. 2313 npr1 dump: 1733. 2315 npr2 dump: 1734. 2317 npr3 dump: 1735. 2321 npr4 dump: 1736. 2323 npr5 dump: 1737. 2325 npr6 dump: 1738. 2327 npr7 dump: 1739. 2165 npr_hdr dump: 547, 1700.  2341 nq dump: 1042, 1749.  34 nregs dump: 540, 1066.  5500 nsegbitab proc: 23, 319, 403, 404.  2364 nsegno dump: 251, 1771.  2366 nsegpm dump: 1350, 1352, 1772. 2343 ntimer dump: 1044, 1751.  2345 nx0 dump: 1048, 1753.  2346 nx1 dump: 1049, 1754.  2347 nx2 dump: 1050, 1755.  2350 nx3 dump: 1051, 1756.  2351 nx4 dump: 1052, 1757.  2352 nx5 dump: 1053, 1758.  2353 nx6 dump: 1054, 1759.  2354 nx7 dump: 1055, 1760.  2363 nyes dump: 1769. 166 octaldump dump: 109, 202.  216 octalend dump: 227, 232.  205 octalloop dump: 220, 234.  12252 octwd dump: 221, 255, 388, 392, 398, 404, 451, 458, 484, 520, 558, 565,  602, 635, 652, 700, 782, 785, 804, 818, 837, 896, 903, 930,  994, 1126, 1315, 1319, 1436, 1637, 1667, 1671,  configp: 36, bos_tv: 63. 222 oneseg dump: 111, 239.  233 onesegno dump: 247, 249.  1416 optend dump: 1163, 1208.  1461 options dump: 1194, 1196, 1211, 1220, 1221, 1241, 1245, 1276.  1454 optl dump: 1170, 1172, 1269, 1274.  1363 opt_arg_loop dump: 1160, 1204.  1367 opt_char_loop dump: 1167, 1182.  500 ouhist dump: 1010, bos_common: 14. 1226 ouhrits dump: 736, 1010.  12000 pagectl bos_tv: 12, 13.  7013 pagesw fill: 69, apnd_equ: 17. 12 page_power bos_page_info: 4.  136 patch dump: 137, 150.  126 patchw dump: 136, 150.  2577 pcallopt proc: 69, 83, 94, 148, 169, 217.  3051 pcapte proc: 181, 197, 360. 3063 pcaptsize proc: 45, 179, 372. 2763 pcckdirs proc: 285, 295.  2646 pcckelg proc: 207, 212.  3072 pcdbr proc: 21, 191, 352, 379.  3113 pcddbr proc: 28, 194, 341, 343, 401. 2737 pcdmpunique proc: 268, 274.  3374 pcd_ascii configp: 21, 33, 67. 3376 pcd_bcd configp: 65, 71.  3356 pcd_dec configp: 34, 47.  3401 pcd_join configp: 45, 59, 74, 76.  3334 pcd_next configp: 23, 96.  3346 pcd_oct configp: 31, 36, 62. 3370 pcd_tag configp: 32, 61.  3424 pcd_temp0 configp: 47, 50, 80, 82, 83, 90, 91, 103.  3426 pcd_temp1 configp: 37, 40, 51, 54, 106. 3430 pcd_temp2 configp: 42, 56, 71, 78, 86, 108.  3423 pcd_types configp: 18, 25, 27, 101.  3421 pcd_x2 configp: 10, 98.  2575 pcelgopt proc: 70, 81, 95, 96, 144, 167, 214. 3032 pcer proc: 31, 35, 40, 49, 54, 59, 64, 112, 176, 185, 201, 291,  302, 309, 341. 3047 pcfirst proc: 27, 263, 336, 358.  2576 pcinzopt proc: 71, 146, 168, 224.  2726 pckfproc proc: 260, 263.  2731 pckstkop proc: 262, 267.  3027 pcle proc: 205, 226, 337. 3026 pcled proc: 245, 336.  3056 pclist proc: 39, 367.  2602 pclp proc: 175, 339.  2534 pcmacroopttbl proc: 76, 125, 138. 2550 pcmajoropttbl proc: 90, 140, 151. 2562 pcminorkeys proc: 104, 153, 164. 2501 pcmrgop proc: 84, 94.  3061 pcnapt proc: 175, 345, 370. 2471 pcnmacop proc: 77, 86.  3 pcnmacroopts proc: 75, 138.  5 pcnmajoropts proc: 89, 151.  5 pcnminorkeys proc: 103, 164.  3050 pcno proc: 177, 221, 231, 337, 344, 359.  2664 pcnoc proc: 229, 346.  3004 pcnockdirs proc: 283, 294, 312. 2717 pcnohcop proc: 250, 256.  2661 pcnoinzr proc: 223, 225.  2600 pcopt proc: 171, 227, 248. 3024 pcosdone proc: 244, 258, 265, 296, 305, 311, 324, 332.  3022 pcosegp proc: 255, 264, 272, 276, 316, 320, 329. 2627 pcproc proc: 193, 197.  3074 pcrptadd proc: 380. 2574 pcrunopt proc: 72, 79, 97, 142, 166, 206, 220. 2655 pcsavopt proc: 215, 218, 221. 3070 pcsdw proc: 246, 256, 277, 308, 378. 2517 pcseler proc: 91, 110.  2473 pcselmaj proc: 88, 105.  2506 pcselmin proc: 93, 100, 108. 2652 pcsetall proc: 213, 217.  2654 pcsetrun proc: 195, 209, 211, 220.  3075 pcshno proc: 254, 382, 388. 5 pcshnon proc: 253, 388.  3101 pcstklim proc: 190, 259, 261, 270, 387. 3040 pcx2 proc: 16, 17, 18, 19, 342, 348.  2601 pc_begin_dumping proc: 98, 173.  1132 pdbr_ret dump: 891, 918.  3 pdm bos_page_info: 10.  440 pdmep dump: 371, 426.  4 pdsize bos_page_info: 29.  3104 pds_name proc: 53, 393.  3076 pds_no proc: 55, 384.  7044 pd_check dump: 369, apnd_equ: 37. 5 pd_flush_entry bos_page_info: 19.  12 pd_free_required bos_page_info: 30.  7046 pd_getptr apnd_equ: 39. 36 pd_max_rws bos_page_info: 32.  7045 pd_modify apnd_equ: 38. 36 pd_write_limit bos_page_info: 31.  3 pgm dump: 1466, bosequ: 10. 12215 phyadd bos_tv: 34. 12213 phybos bos_tv: 32. 1105 ph_ret dump: 865, 871, 881. 7014 pmlsw fill: 71, apnd_equ: 18. 714 port_has_mem dump: 691, 699.  2 post_purge_bit bos_page_info: 24.  4 post_purge_entry bos_page_info: 18.  3106 prds_name proc: 58, 396.  3077 prds_no proc: 60, 385.  510 pregl dump: 493, 541.  3 pre_page_entry bos_page_info: 17.  17 pre_seek_limit bos_page_info: 33.  20 pri bos_page_info: 7.  6005 print dump: 182, 190, 260, 395, 460, 462, 463, 474, 476, 487, 538, 570,  609, 663, 710, 845, 868, 869, 877, 879, 916, 1100, 1141, 1354,  1386, 1401, 1430, 1455, 1627, 1661, 1663, pt_equ: 13. 6000 printon dump: 121, pt_equ: 8. 446 printreg dump: 171, 314, 436, proc: 22. 1107 print_dbr dump: 307, 442, 890. 6011 print_edited pt_equ: 16. 1072 print_hdr dump: 447, 546, 583, 628, 684, 720, 730, 740, 754, 763, 775, 864,  892, 1074, 1077, 1370.  723 print_port dump: 697, 709.  2374 proc dump: 139, proc: 16. 1500 prs dump: 557, 564, 1504, 1506, 1519, bos_common: 18. 1133 prt_sdw_reg dump: 592, 925, 1123. 545 pr_loop dump: 551, 575.  1222 psdw_ret dump: 926, 1002.  2701 psegl proc: 240, 334.  1353 psegnm dump: 1135, 1140.  1354 psx2 dump: 1121, 1143.  6014 ptbfirst dump: 722, 734, 744, 758, 767, pt_equ: 17. 6006 ptblock dump: 229, 408, 723, 735, 745, 759, 768, 1325, 1446, 1682,  pt_equ: 14. 1704 ptbuff dump: 1443, 1466, 1467. 6016 pthdr dump: 62, 65, 66, 82,  pt_equ: 19. 6 ptlocking state_equs: 9. 1633 ptloop dump: 1416, 1448.  1656 ptp8 dump: 1414, 1440.  1676 ptpastsw dump: 1411, 1423, 1425, 1462.  1670 ptpend dump: 1390, 1392, 1394, 1418, 1444, 1453.  1666 ptperr dump: 1375, 1376, 1381, 1450.  1702 ptpiw dump: 1447, 1466.  1652 ptpnohd dump: 1421, 1424, 1435. 1564 ptprint dump: 1292, 1365, 1528. 1700 ptpsdw dump: 1407, 1442, 1465. 1673 ptpx1 dump: 1367, 1458.  1672 ptpx2 dump: 1366, 1451, 1457. 1600 ptrlen bos_common: 29. 1333 ptsdw dump: 1090, 1121, 1384. 6015 ptsegno dump: 71, 1291, 1334, pt_equ: 18. 1675 ptstop dump: 1399, 1417, 1461. 2 ptw bos_page_info: 12.  6000 pt_org dump: 56, pt_equ: 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19. 12251 punch bos_tv: 62. 1171 push_offset stack_header: 66.  7035 put apnd_equ: 30. 7047 pvt_to_devt apnd_equ: 40. 41 qm dump: 74, 91, 164, 243, 333, 367, 1478. 2020 quietsw bos_common: 59. 140 quit dump: 129, 153.  373 rdbad dump: 380, 383.  12267 rdclock dump: 64, bos_tv: 76. 12211 rdev dump: 377, bos_tv: 30. 410 rdok dump: 381, 397.  2016 rdrchanno bos_common: 57. 12234 rdsec bos_tv: 49. 12246 readcd bos_tv: 59. 12247 readtty bos_tv: 60. 2 ready state_equs: 5. 2030 readysw bos_common: 67. 7006 read_args dump: 358, apnd_equ: 13. 1 read_entry bos_page_info: 15.  12232 rec_per_dev_list bos_tv: 47. 536 regblk dump: 524, 538.  533 regnam dump: 522, 534.  1520 regs dump: 483, 1041, 1042, 1043, 1044, 1048, 1049, 1050, 1051, 1052, 1053, 1054,  1055, bos_common: 19. 1067 regsretn dump: 437, 770, 850. 1240 regtab dump: 494, 498, 534, 1037, 1066. 3052 rel_pt_add proc: 281, 297, 313, 361.  1173 return_no_pop_offset stack_header: 68.  1172 return_offset stack_header: 67.  12260 rjust configp: 69, bos_tv: 69. 4000 runcom_bit bosequ: 19. 1 running state_equs: 4. 1236 save_sdw dump: 927, 929, 948, 949, 1018, 1131.  12200 scan bos_tv: 21. 1540 scu dump: 450, 457, 1039, bos_common: 22. 2000 scu.apu.dsptw mc: 57. 10 scu.apu.fabs mc: 64. 20 scu.apu.fanp mc: 63. 40 scu.apu.fap mc: 62. 4000 scu.apu.pi_ap mc: 56. 200 scu.apu.ptw mc: 60. 100 scu.apu.ptw2 mc: 61. 20000 scu.apu.ptwm mc: 54. 10000 scu.apu.pt_on mc: 55. 100000 scu.apu.sdwm mc: 52. 1000 scu.apu.sdwnp mc: 58. 400 scu.apu.sdwp mc: 59. 40000 scu.apu.sd_on mc: 53. 200000 scu.apu.xsf mc: 51. 0 scu.apu_stat_word mc: 49. 22 scu.ca_shift mc: 209. 5 scu.ca_word mc: 208. 700 scu.con_chan_mask mc: 117. 6 scu.con_chan_shift mc: 118. 700 scu.cpu_no_mask mc: 141. 2 scu.cpu_no_word mc: 139. 6 scu.cpu_shift mc: 142. 7 scu.cpu_tag_mask mc: 234. 5 scu.cpu_tag_word mc: 232. 100 scu.cu.if mc: 229. 1000 scu.cu.poa mc: 226. 10000 scu.cu.pon mc: 221. 20000 scu.cu.pot mc: 220. 100000 scu.cu.rd mc: 217. 400000 scu.cu.rf mc: 214. 400 scu.cu.rfi mc: 227. 40000 scu.cu.rl mc: 218. 200000 scu.cu.rpt mc: 216. 4000 scu.cu.xde mc: 223. 2000 scu.cu.xdo mc: 224. 5 scu.cu_stat_word mc: 212. 77 scu.delta_mask mc: 147. 2 scu.delta_word mc: 145. 36 scu.even_inst_word mc: 239. 7 scu.fault_cntr_mask mc: 69. 0 scu.fault_cntr_word mc: 67. 1 scu.fault_data_word mc: 75. 10 scu.fd.am_er mc: 91. 200 scu.fd.boc mc: 87. 40 scu.fd.crt mc: 89. 100000 scu.fd.e_off mc: 79. 100000 scu.fd.ia_im mc: 102. 100 scu.fd.inret mc: 88. 200000 scu.fd.ioc mc: 101. 20000 scu.fd.ipr mc: 104. 400000 scu.fd.iro mc: 77. 400000 scu.fd.isn mc: 100. 40000 scu.fd.isp mc: 103. 10000 scu.fd.nea mc: 105. 2000 scu.fd.no_ga mc: 84. 400 scu.fd.ocall mc: 86. 1000 scu.fd.ocb mc: 85. 200000 scu.fd.oeb mc: 78. 400000 scu.fd.onc_1 mc: 96. 200000 scu.fd.onc_2 mc: 97. 4000 scu.fd.oobb mc: 106. 4 scu.fd.oosb mc: 92. 40000 scu.fd.orb mc: 80. 10000 scu.fd.owb mc: 82. 1 scu.fd.parl mc: 94. 2 scu.fd.paru mc: 93. 20 scu.fd.ralr mc: 90. 20000 scu.fd.r_off mc: 81. 4000 scu.fd.w_off mc: 83. 1 scu.fi_flag_mask mc: 123. 76 scu.fi_num_mask mc: 120. 1 scu.fi_num_shift mc: 121. 7000 scu.iac_mask mc: 114. 11 scu.iac_shift mc: 115. 170000 scu.ial_mask mc: 111. 14 scu.ial_shift mc: 112. 22 scu.ilc_shift mc: 184. 4 scu.ilc_word dump: 457, mc: 183. 4 scu.indicators_word mc: 187. 20 scu.ir.abs mc: 202. 200 scu.ir.bm mc: 199. 100000 scu.ir.carry mc: 191. 20000 scu.ir.eovf mc: 193. 10000 scu.ir.eufl mc: 194. 40 scu.ir.mif mc: 201. 200000 scu.ir.neg mc: 190. 4000 scu.ir.oflm mc: 195. 40000 scu.ir.ovfl mc: 192. 1000 scu.ir.par mc: 197. 400 scu.ir.parm mc: 198. 2000 scu.ir.tro mc: 196. 100 scu.ir.tru mc: 200. 400000 scu.ir.zero mc: 189. 37 scu.odd_inst_word mc: 241. 1 scu.port_stat_word mc: 109. 400000 scu.ppr.p mc: 45. 700000 scu.ppr.prr_mask mc: 35. 41 scu.ppr.prr_shift mc: 36. 0 scu.ppr.prr_word mc: 34. 77777 scu.ppr.psr_mask mc: 40. 22 scu.ppr.psr_shift mc: 41. 0 scu.ppr.psr_word mc: 39. 0 scu.ppr.p_word mc: 44. 77 scu.tpr.tbr_mask mc: 177. 3 scu.tpr.tbr_word mc: 175. 700000 scu.tpr.trr_mask mc: 130. 41 scu.tpr.trr_shift mc: 131. 2 scu.tpr.trr_word mc: 129. 77777 scu.tpr.tsr_mask mc: 135. 22 scu.tpr.tsr_shift mc: 136. 2 scu.tpr.tsr_word mc: 134. 700000 scu.tsna.prn_mask mc: 159. 17 scu.tsna.prn_shift mc: 160. 40000 scu.tsna.prv mc: 161. 740000 scu.tsna_mask mc: 158. 34000 scu.tsnb.prn_mask mc: 164. 13 scu.tsnb.prn_shift mc: 165. 2000 scu.tsnb.prv mc: 166. 36000 scu.tsnb_mask mc: 163. 1600 scu.tsnc.prn_mask mc: 169. 7 scu.tsnc.prn_shift mc: 170. 100 scu.tsnc.prv mc: 171. 13 scu.tsnc_mask mc: 168. 777700 scu.tsr_stat_mask mc: 155. 6 scu.tsr_stat_shift mc: 156. 3 scu.tsr_stat_word mc: 153. 14 sdw.add_shift dump: 1404, bos_sdw: 4. 377770 sdw.bound dump: 1396, bos_sdw: 12. 40000 sdw.cache dump: 988, bos_sdw: 20. 4 sdw.df dump: 296, 951, 1391, 1465,  bos_sdw: 9. 37777 sdw.entry_bound dump: 1481, bos_sdw: 21. 100000 sdw.entry_bound_sw dump: 983, bos_sdw: 19. 2 sdw.execute dump: 971, bos_sdw: 14. 3 sdw.fault_code bos_sdw: 10. 400000 sdw.privileged dump: 977, bos_sdw: 17. 7000 sdw.r1 bos_sdw: 5. 700 sdw.r2 bos_sdw: 6. 70 sdw.r3 bos_sdw: 7. 4 sdw.read dump: 968, bos_sdw: 13. 200000 sdw.unpaged dump: 980, 1312, 1389, bos_sdw: 18, proc: 275, bos_sstnt_man: 105.  1 sdw.write dump: 974, bos_sdw: 15, proc: 257. 12204 search bos_tv: 25. 1370 search_tab dump: 1169, 1175.  365 sectl dump: 362, 376, 415. 351 sectl1 dump: 360, 420.  12230 sect_per_cyl_list bos_tv: 45. 12231 sect_per_dev_list bos_tv: 46. 7000 seg6length bos_common: 90. 3114 segbitab proc: 26, 323, 327, 404.  1546 segbmpp dump: 1342, 1345.  1534 segend dump: 1296, 1331, 1339, 1343, 1347. 1543 seger dump: 1307, 1341.  1540 segerr dump: 1293, 1337, 1341. 1431 segment_loop dump: 1231, 1258.  1450 segmissing dump: 1234, 1249, 1255. 1504 segnewpg dump: 1300, 1329, 1355. 1560 segno dump: 245, 254, 281, 1080, 1083, 1093, 1104, 1105, 1125, 1136, 1148, 1232,  1257, 1290, 1357, 1373, 1525, 1532, 1605, proc: 240, 242, 252. 1314 segnotpres dump: 1085, 1096.  1473 segprint dump: 246, 1252, 1286, proc: 329. 1535 segx0 dump: 1288, 1333.  1534 segx2 dump: 1287, 1332, 1338. 10 seg_aste.usage aste: 147. 14 seg_aste_size aste: 144. 60 ses eis_micro_ops: 3.  2004 setuparea bos_common: 49. 1162 set_F dump: 954, 957, 961. 100 size_of_apt_entry apte: 112, proc: 44. 2022 skbkdn dump: 1549, 1554, 1563. 2006 skbkl dump: 1546, 1559.  2067 skferr dump: 1601, 1606, 1609, 1617.  2031 skflp dump: 1564, 1571, 1582. 2063 skfx2 dump: 1597, 1611, 1617. 1734 skgotsegno dump: 1487, 1492.  2025 skipsw bos_common: 64. 2043 sklst dump: 1574, 1584.  2005 skng dump: 1536, 1542.  1732 sknoring dump: 1475, 1489.  2047 skoff dump: 1527, 1534, 1540, 1546, 1557, 1563, 1566, 1568, 1571, 1580, 1590, 1614,  1640, 1664, 1670. 2050 skoffn dump: 1550, 1556, 1567, 1575, 1579, 1585, 1591, 1686.  2036 skpt dump: 1569, 1577.  1751 sktrace dump: 1502, 1505, 1507. 2046 skx2 dump: 1523, 1529, 1539, 1588.  7042 sltsearch proc: 29, 47, 52, 57, 62, bos_sstnt_man: 27,  segname: 31, apnd_equ: 35. 7011 sltseg fill: 65, apnd_equ: 15. 1320 snotpres2 dump: 1102, 1114.  1327 snotpres3 dump: 1107, 1111.  6003 space dump: 181, 218, 250, 384, 461, 475, 493, 571, 610, 664, 711, 732,  737, 742, 756, 765, 777, 867, 878, 928, 1099, 1349, 1385, 1426,  1431, 1454, 1626, 1662,  pt_equ: 11. 1762 sptrace dump: 319, 1495, 1518. 3522 ssn.gthan bos_sstnt_man: 85, 188. 3520 ssn.root_astep bos_sstnt_man: 40, 81, 132, 207. 3516 ssn.sstbase bos_sstnt_man: 21, 25, 78, 108, 110.  3527 ssn.sstnt bos_sstnt_man: 46, 49, 89, 148, 155, 157, 158.  3523 ssn.sstntname bos_sstnt_man: 28, 86. 3514 ssn.sstnt_sdw bos_sstnt_man: 33, 45, 76, 163. 3521 ssn.valid bos_sstnt_man: 17, 51, 83, 103. 3500 ssni.fail bos_sstnt_man: 29, 31, 32, 38, 47, 62. 3477 ssni.x2 bos_sstnt_man: 15, 56, 65, 70. 3 sst bos_page_info: 9, 10, 11, 13. 220 sst.abs_wired_count sst: 135. 245 sst.acost sst: 150. 400000 sst.activate_activated sst: 227. 537 sst.activations sst: 206. 52 sst.ainitp sst: 53. 52 sst.ainitp1 sst: 54. 250 sst.alaps sst: 153. 234 sst.aneedsize sst: 144. 242 sst.asearches sst: 147. 247 sst.askipdius sst: 152. 241 sst.askipsehs sst: 146. 244 sst.askipsinit sst: 149. 230 sst.askipsize sst: 143. 243 sst.askipslevel sst: 148. 246 sst.askipslock sst: 151. 30 sst.astap sst: 35. 260 sst.asteps sst: 160. 21 sst.astl sst: 26. 22 sst.astl_event sst: 27. 400000 sst.astl_notify_requested sst: 30.  23 sst.astl_notify_requested_word sst: 29. 34 sst.astsize sst: 38. 74 sst.ast_ht_n_buckets sst: 82. 72 sst.ast_ht_ptr sst: 81. 75 sst.ast_ht_uid_mask sst: 83. 264 sst.ast_locked_at_time sst: 161. 266 sst.ast_locked_total_time sst: 162.  272 sst.ast_locking_count sst: 164. 270 sst.ast_lock_wait_time sst: 163. 400000 sst.ast_track sst: 292. 774 sst.ast_track_word sst: 291. 50 sst.atempp sst: 47. 50 sst.atempp1 sst: 48. 133 sst.aused sst: 113. 44 sst.ausedp sst: 44. 557 sst.backup_activations sst: 224. 533 sst.bad_sgms sst: 202. 674 sst.buckets sst: 289. 673 sst.bucket_overflow sst: 288. 32 sst.bulk_pvtx sst: 36. 122 sst.ceiling sst: 104. 77 sst.checksum_filemap sst: 85. 504 sst.claim_notmod sst: 177. 505 sst.claim_passed_used sst: 178. 536 sst.claim_runs sst: 205. 502 sst.claim_skip_cme sst: 175. 503 sst.claim_skip_free sst: 176. 506 sst.claim_skip_ptw sst: 179. 510 sst.claim_steps sst: 181. 507 sst.claim_writes sst: 180. 274 sst.cleanups_with_any_rws sst: 166.  273 sst.cleanup_count sst: 165. 276 sst.cleanup_real_time sst: 168. 275 sst.cleanup_rws_count sst: 167. 71 sst.cl_skips_pinned sst: 80. 35 sst.cmesize sst: 39. 54 sst.cmp sst: 57. 672 sst.count_pdmes sst: 287. 256 sst.cpu_bf_time sst: 159. 164 sst.cpu_sf_time sst: 123. 123 sst.ctwait sst: 105. 104 sst.cycle_pv_allocation sst: 90. 134 sst.damaged_ct sst: 114. 527 sst.dblw_resurrections sst: 199. 135 sst.deact_count sst: 115. 137 sst.demand_deactivations sst: 117.  136 sst.demand_deact_attempts sst: 116.  775 sst.dirlock_writebehind sst: 294. 540 sst.dir_activations sst: 207. 114 sst.dir_page_faults sst: 98. 400000 sst.dm_enabled sst: 51. 51 sst.dm_enabled_word sst: 50. 62 sst.double_write sst: 67. 543 sst.evict_phmbit sst: 213. 543 sst.evict_ptp sst: 212. 543 sst.evict_recover_data sst: 210. 70 sst.fc_skips_pinned sst: 79. 224 sst.first_core_block sst: 139. 545 sst.force_pwrites sst: 216. 544 sst.force_swrites sst: 215. 547 sst.force_updatevs sst: 218. 546 sst.fw_none sst: 217. 226 sst.fw_retries sst: 141. 535 sst.good_sgms sst: 204. 541 sst.hedge_updatevs sst: 208. 542 sst.hedge_writes sst: 209. 125 sst.laps sst: 107. 225 sst.last_core_block sst: 140. 670 sst.last_update sst: 286. 44 sst.level sst: 42. 113 sst.level_1_page_faults sst: 97. 110 sst.lock_waits sst: 94. 161 sst.loop_locks sst: 121. 162 sst.loop_lock_time sst: 122. 556 sst.makeknown_activations sst: 223.  560 sst.metering_flags sst: 225. 76 sst.meter_ast_locking sst: 84. 624 sst.mod_during_write sst: 256. 121 sst.needc sst: 103. 641 sst.new_pages sst: 276. 400000 sst.nolock sst: 75. 66 sst.nolock_word sst: 74. 44 sst.no_aste sst: 45. 16 sst.npfs_misses sst: 23. 612 sst.nrecs_pdmap sst: 246. 24 sst.nused sst: 32. 105 sst.n_trailers sst: 91. 523 sst.oopv sst: 195. 100 sst.page_read_errors sst: 86. 101 sst.page_write_errors sst: 87. 525 sst.pcrsst_statptr sst: 197. 117 sst.pc_io_waits sst: 101. 2 sst.pc_trace sst: 273. 10 sst.pc_trace_pf sst: 271. 524 sst.pdflush_replaces sst: 196. 602 sst.pdhtp sst: 237. 112 sst.pdir_page_faults sst: 96. 600 sst.pdmap sst: 236. 634 sst.pdmap_astep sst: 266. 606 sst.pdme_no sst: 240. 605 sst.pdsize sst: 239. 607 sst.pdusedp sst: 242. 617 sst.pd_ceiling sst: 251. 515 sst.pd_desperations sst: 186. 520 sst.pd_desperations_not_mod sst: 192.  514 sst.pd_desperation_steps sst: 185.  610 sst.pd_first sst: 244. 613 sst.pd_free sst: 247. 633 sst.pd_hash_mask sst: 264. 632 sst.pd_htsize sst: 262. 604 sst.pd_id sst: 238. 611 sst.pd_map_addr sst: 245. 623 sst.pd_needed sst: 255. 627 sst.pd_no_free sst: 259. 666 sst.pd_no_free_first sst: 284. 664 sst.pd_no_free_gtpd sst: 282. 665 sst.pd_page_faults sst: 283. 630 sst.pd_read_truncates sst: 260. 526 sst.pd_resurrections sst: 198. 626 sst.pd_rws_active sst: 258. 621 sst.pd_skips_incore sst: 253. 622 sst.pd_skips_rws sst: 254. 620 sst.pd_steps sst: 252. 650 sst.pd_time_counts sst: 280. 654 sst.pd_time_values sst: 281. 512 sst.pd_updates sst: 183. 614 sst.pd_using sst: 248. 400000 sst.pd_writeahead sst: 190. 517 sst.pd_writeahead_word sst: 189. 616 sst.pd_writes sst: 250. 625 sst.pd_write_aborts sst: 257. 631 sst.pd_write_truncates sst: 261. 615 sst.pd_wtct sst: 249. 637 sst.pd_zero_pages sst: 268. 554 sst.pf_pd_loop_meterings sst: 221.  550 sst.pf_pd_loop_time sst: 219. 555 sst.pf_unlock_ptl_meterings sst: 222.  552 sst.pf_unlock_ptl_time sst: 220. 14 sst.post_in_core sst: 21. 171 sst.post_list_size sst: 127. 173 sst.post_purge_calls sst: 129. 12 sst.post_purge_time sst: 20. 172 sst.post_purgings sst: 128. 400 sst.pp_meters sst: 170. 174 sst.pre_page_calls sst: 130. 175 sst.pre_page_list_size sst: 131. 176 sst.pre_page_misses sst: 132. 170 sst.pre_page_size sst: 126. 10 sst.pre_page_time sst: 19. 177 sst.pre_pagings sst: 133. 513 sst.pre_seeks_failed sst: 184. 20 sst.ptl sst: 25. 33 sst.ptl_wait_ct sst: 37. 40 sst.pts sst: 41. 25 sst.ptwbase sst: 33. 400000 sst.ptw_first sst: 72. 65 sst.ptw_first_word sst: 71. 227 sst.pvhtp sst: 142. 140 sst.reads sst: 118. 223 sst.recopies sst: 138. 61 sst.removep sst: 65. 521 sst.resurrections sst: 193. 115 sst.ring_0_page_faults sst: 99. 36 sst.root_astep sst: 40, bos_sstnt_man: 35.  64 sst.root_pvtx sst: 69. 116 sst.rqover sst: 100. 511 sst.rws_reads_os sst: 182. 102 sst.rws_read_errors sst: 88. 646 sst.rws_time_done sst: 279. 644 sst.rws_time_start sst: 278. 642 sst.rws_time_temp sst: 277. 103 sst.rws_write_errors sst: 89. 17 sst.salv sst: 24. 1 sst.sc_trace sst: 274. 561 sst.seg_fault_calls sst: 229. 253 sst.setfaults_acc sst: 156. 252 sst.setfaults_all sst: 155. 532 sst.sgm_pf sst: 201. 534 sst.sgm_sgft sst: 203. 530 sst.sgm_time sst: 200. 160 sst.short_pf_count sst: 120. 130 sst.skipm sst: 110. 131 sst.skipos sst: 111. 132 sst.skipspd sst: 112. 516 sst.skips_nypd sst: 187. 127 sst.skipu sst: 109. 126 sst.skipw sst: 108. 0 sst.space sst: 18. 60 sst.startp sst: 63. 120 sst.steps sst: 102. 240 sst.stepsa sst: 145. 566 sst.stk_pages_truncated sst: 234. 567 sst.stk_pages_truncated_in_core sst: 235. 565 sst.stk_truncate_shouldnt_did sst: 233.  564 sst.stk_truncate_shouldnt_didnt sst: 232. 563 sst.stk_truncate_should_did sst: 231.  562 sst.stk_truncate_should_didnt sst: 230.  53 sst.strsize sst: 56. 106 sst.synch_activations sst: 92. 107 sst.synch_skips sst: 93. 221 sst.system_type sst: 136. 63 sst.temp_w_event sst: 68. 26 sst.tfreep sst: 34. 15 sst.thrashing sst: 22. 254 sst.total_bf sst: 157. 255 sst.total_bf_pf sst: 158. 111 sst.total_locks_set sst: 95. 167 sst.total_sf sst: 125. 166 sst.total_sf_pf sst: 124. 640 sst.trace_sw sst: 269. 300 sst.tree_count sst: 169. 4 sst.tty_trace sst: 272. 251 sst.updates sst: 154. 667 sst.update_index sst: 285. 56 sst.usedp sst: 59. 522 sst.volmap_seg_page_faults sst: 194.  124 sst.wired sst: 106. 222 sst.wired_copies sst: 137. 200 sst.wire_proc_data sst: 134. 150 sst.writes sst: 119. 501 sst.write_hunts sst: 174. 776 sst.write_limit sst: 295. 57 sst.wtct sst: 61. 500 sst.wusedp sst: 172. 67 sst.x_fsdctp sst: 77. 636 sst.zero_pages sst: 267. 14 sstnt.ast_name_offsets sstnt: 14, bos_sstnt_man: 158.  20 sstnt.ast_offsets sstnt: 16, bos_sstnt_man: 148, 155. 10 sstnt.ast_sizes sstnt: 12, bos_sstnt_man: 157.  2 sstnt.fill_time sstnt: 10. 1 sstnt.multics_or_bos sstnt: 8. 30 sstnt.names sstnt: 18, bos_sstnt_man: 46, 90, 160.  400000 sstnt.valid sstnt: 6. 0 sstnt.valid_word sstnt: 5, bos_sstnt_man: 49.  11 sstnt_name_length sstnt: 20, bos_sstnt_man: 159, 164, 247.  3505 sstnt_not_valid bos_sstnt_man: 50, 67. 6000 sstn_org dump: 48, 51,  sstn_equ: 6. 7016 sstsdw proc: 278, 290, 301, bos_sstnt_man: 19, 37, 117, 201, apnd_equ: 19. 1000 sst_size sst: 15. 1714 stackdump dump: 117, 1472.  2051 stackfetch dump: 1538, 1548, 1553, 1573, 1596. 1765 stacktrace dump: 1508, 1523.  32 stack_frame.arg_ptr stack_frame: 16. 100 stack_frame.condition_bit stack_frame: 32.  20 stack_frame.condition_word stack_frame: 9.  2000 stack_frame.crawl_out_bit stack_frame: 28.  26 stack_frame.entry_ptr stack_frame: 13. 20 stack_frame.flag_word stack_frame: 24. 400 stack_frame.link_trap_bit stack_frame: 30.  30 stack_frame.lp_ptr stack_frame: 15. 20000 stack_frame.main_proc_bit stack_frame: 25.  60 stack_frame.min_length stack_frame: 23. 22 stack_frame.next_sp dump: 1552, 1572,  stack_frame: 10. 36 stack_frame.on_unit_rel_ptrs stack_frame: 19.  30 stack_frame.operator_ptr stack_frame: 14.  37 stack_frame.operator_ret_ptr stack_frame: 20.  20 stack_frame.prev_sp dump: 1547, stack_frame: 8. 40 stack_frame.regs stack_frame: 22. 24 stack_frame.return_ptr dump: 1641, stack_frame: 12. 10000 stack_frame.run_unit_manager stack_frame: 26.  1000 stack_frame.signaller_bit stack_frame: 29.  22 stack_frame.signaller_word stack_frame: 11.  4000 stack_frame.signal_bit stack_frame: 27. 34 stack_frame.static_ptr stack_frame: 17. 200 stack_frame.support_bit stack_frame: 31. 35 stack_frame.support_ptr stack_frame: 18. 37 stack_frame.translator_id stack_frame: 21.  66 stack_header.assign_linkage_ptr stack_header: 43.  32 stack_header.bar_mode_sp stack_header: 26. 36 stack_header.call_op_ptr stack_header: 28. 10 stack_header.clr_ptr stack_header: 11.  6 stack_header.combined_stat_ptr stack_header: 9.  13 stack_header.cur_lot_size stack_header: 15. 64 stack_header.ect_ptr stack_header: 42.  46 stack_header.entry_op_ptr stack_header: 33. 74 stack_header.in_trace stack_header: 47.  52 stack_header.isot_ptr stack_header: 36.  26 stack_header.lot_ptr stack_header: 23.  12 stack_header.main_proc_invoked stack_header: 13.  12 stack_header.max_lot_size stack_header: 12. 4 stack_header.old_lot_ptr stack_header: 8. 20 stack_header.parent_ptr stack_header: 20.  34 stack_header.pl1_operators_ptr stack_header: 27.  40 stack_header.push_op_ptr stack_header: 30. 42 stack_header.return_op_ptr stack_header: 31. 44 stack_header.ret_no_pop_op_ptr stack_header: 32.  62 stack_header.rnt_ptr stack_header: 41.  12 stack_header.run_unit_depth stack_header: 14. 54 stack_header.sct_ptr stack_header: 37.  30 stack_header.signal_ptr stack_header: 25.  22 stack_header.stack_begin_ptr dump: 1537,  stack_header: 21. 24 stack_header.stack_end_ptr stack_header: 22. 14 stack_header.system_free_ptr stack_header: 17. 60 stack_header.sys_link_info_ptr stack_header: 40.  70 stack_header.task_data_ptr stack_header: 44. 72 stack_header.trace_frames stack_header: 46. 50 stack_header.trans_op_tv_ptr stack_header: 35. 56 stack_header.unwinder_ptr stack_header: 38. 16 stack_header.user_free_ptr stack_header: 18. 100 stack_header_end stack_header: 49.  5 stopped state_equs: 8, proc: 210. 2000 storlen bos_common: 36. 12262 stripa bos_tv: 71. 12263 stripg bos_tv: 72. 2015 tapechanno bos_common: 56. 6001 tapeon dump: 119, pt_equ: 9. 3053 tcd_name proc: 30, 364.  1437 test_sdw_bits dump: 1240, 1248.  1423 there_are_options dump: 1209, 1217.  1 tmp bosequ: 8. 0 trace_frames.count stack_header: 54.  1 trace_frames.top_ptr stack_header: 55.  2017 ttychanno bos_common: 58. 12245 ttyinit dump: 34, bos_tv: 58. 2026 ttypmtsw bos_common: 65. 37 ttyrequest dump: 35, 70.  551 tv_offset stack_header: 60, 65, 66, 67, 68, 69. 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. 7033 unapnd apnd_equ: 28. 7040 unfetch apnd_equ: 33. 2013 unitgroup bos_common: 54. 2002 useable bos_common: 46. 2001 used bos_common: 45. 4 used_bit_off bos_page_info: 26.  2005 utilarea bos_common: 50. 12000 utilorg bosequ: 22, bos_tv: 12, 19.  3 waiting state_equs: 6. 12301 wantflt bos_tv: 86. 12212 wdev bos_tv: 31. 10 working_set bos_page_info: 23.  2 write_entry bos_page_info: 16.  6002 wteof dump: 125, pt_equ: 10. 12235 wtsec bos_tv: 50. 141 x2 dump: 27, 40, 58, 156.  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