ASSEMBLY LISTING OF SEGMENT >spec>install>1111>get_ptrs_.alm ASSEMBLED ON: 11/11/89 0927.0 mst Sat OPTIONS USED: -target l68 list symbols ASSEMBLED BY: ALM Version 8.14 March 1989 ASSEMBLER CREATED: 06/09/89 1002.3 mst Fri 1 " *********************************************************** 2 " * * 3 " * Copyright, (C) Honeywell Bull Inc., 1987 * 4 " * * 5 " * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6 " * * 7 " * Copyright (c) 1972 by Massachusetts Institute of * 8 " * Technology and Honeywell Information Systems, Inc. * 9 " * * 10 " *********************************************************** 11 12 " 13 " GET_PTRS_ -- Program to remap page and segment control pointers 14 " 15 " Modification history: 16 " Modified for followon by Dick Snyder Aug 5, 1972 17 " Modified to fix get_ptrs_$given_astep bugs by Dick Snyder Sept 6, 1972 18 " New Storage System. given_cmep and given_ptp deleted. March 21, 1975 by BSG. 19 " Modified to remove SDW alignment assumption, 5/14/75 by Mabee 20 " Modified for ADP conversion, 03/17/81, W. Olin Sibert 21 " Modified for $given_sdw, unpaged segment check, 03/21/81, WOS 22 " Modified for $ptw_to_cmep, 04/17/81, WOS 23 " Modified for paged unpaged segments, October 1983, Keith Loepere. 24 " 25 000000 26 name get_ptrs_ 27 000000 28 entry given_astep " ASTEP to SDW conversion 000023 29 entry given_sdw " SDW to ASTEP conversion 000041 30 entry given_segno " SEGNO to ASTEP conversion 000050 31 entry ptw_to_cmep " PTWP to CMEP conversion 32 33 " 34 " GET_PTRS_$GIVEN_ASTEP 35 " 36 " Returns an SDW containing the proper address for a segment, given 37 " its ASTE pointer. Call is: 38 " 39 " sdw = get_ptrs_$given_astep (astep); 40 000000 41 given_astep: 000000 4a 4 00010 3515 20 42 epp1 sst$+0 get pointer to SST 000001 aa 0 00002 3521 20 43 epp2 ap|2,* get ptr to astep 000002 aa 2 00000 6351 20 44 eaa pr2|0,* get word offset of aste in au 45 000003 aa 1 00013 2361 01 46 ldq pr1|aste.ptsi_word,au get page table size for bound field 000004 aa 000006 7320 00 47 qrs aste.ptsi_shift 000005 aa 000003 3760 07 48 anq aste.ptsi_mask,dl leave only page table size index 000006 4a 4 00012 2361 20 49 ldq sst$pts,ql pick up page table size from SST header 000007 aa 000006 7360 00 50 qls page_power-4 Convert to 16 word block count 000010 aa 000001 1360 07 51 sblq 1,dl Subtract 1 for bound field format 000011 aa 000025 7360 00 52 qls sdw.bound_shift and put it in the right region of the SDW 53 000012 aa 000014 0350 03 54 adla aste_size,du add in size of an AST entry 000013 aa 000022 7710 00 55 arl 18 and put in AL to get page table offset 56 000014 4a 4 00014 0351 20 57 adla sst$ptwbase add in absolute offset of page table array 000015 aa 000014 7350 00 58 als coreadd_to_sdw.ls position page table address 59 000016 0a 000062 2770 00 60 oraq read_write_valid set correct bits in sdw 000017 aa 0 00004 3521 20 61 epp2 ap|4,* return the SDW to the caller 000020 aa 2 00000 7551 00 62 sta pr2|0 in a possibly unaligned word pair 000021 aa 2 00001 7561 00 63 stq pr2|1 64 000022 aa 7 00044 7101 20 65 return: short_return 66 67 " 68 " 69 " GET_PTRS_$GIVEN_SDW 70 " 71 " Given a pointer to an SDW, returns the AST entry pointer for the 72 " (necessarily paged) segment. Call is: 73 " 74 " astep = get_ptrs_$given_sdw (sdw_ptr); 75 " 76 " GET_PTRS_$GIVEN_SEGNO 77 " 78 " Like get_ptrs_$given_sdw, but returns an AST entry pointer when 79 " given a segment number. Call is: 80 " 81 " astep = get_ptrs_$given_segno (segno); 82 " 83 000023 84 given_sdw: 000023 aa 0 00002 3521 20 85 epp2 ap|2,* Get the pointer argument 000024 aa 2 00000 3521 20 86 epp2 pr2|0,* 87 000025 88 join_given_sdw: 000025 aa 2 00000 2361 00 89 ldq pr2|0 Get the first (address) word of the SDW 000026 4a 4 00010 3515 20 90 epp1 sst$+0 get pointer to SST 000027 aa 000014 7720 00 91 qrl sdw_to_coreadd.rl right justify address 000030 0a 000100 3760 00 92 anq =v36/coreadd_mask and leave only the address portion 000031 0a 000045 6000 00 93 tze return_null 94 000032 4a 4 00016 1161 20 95 cmpq unpaged_page_tables$0+upt.sst_last_loc test for pagedness -- 000033 0a 000045 6050 00 96 tpl return_null this call invalid for unpaged segments 000034 4a 4 00020 1761 20 97 sbq unpaged_page_tables$0+upt.sst_absloc make relative to SST segment 000035 0a 000045 6040 00 98 tmi return_null 99 000036 aa 1 77764 3535 06 100 epp3 pr1|-aste_size,ql generate final pointer 101 000037 102 return_sdwadd: 000037 aa 0 00004 2535 20 103 spri3 ap|4,* return to user 000040 aa 7 00044 7101 20 104 short_return 105 106 107 000041 108 given_segno: 000041 aa 0 00002 2351 20 109 lda ap|2,* pick up the segment number 000042 aa 000001 7350 00 110 als 1 multiply segno by sdw size 000043 4a 4 00022 3521 20 111 epp2 dseg$+0,al get a pointer to the SDW, 000044 0a 000025 7100 00 112 tra join_given_sdw and join common code 113 114 115 000045 116 return_null: 000045 0a 000102 3534 20 117 epp3 =its(-1,1),* get a null pointer 000046 aa 0 00004 2535 20 118 spri3 ap|4,* and return it 000047 aa 7 00044 7101 20 119 short_return 120 121 " 122 123 " GET_PTRS_$PTW_TO_CMEP 124 " 125 " Returns a pointer to the CME describing the page frame for the given 126 " PTW, or returns null if the PTW is not a valid (in-core) PTW 127 " 128 " cmep = get_ptrs_$ptw_to_cmep (ptwp); 129 000050 130 ptw_to_cmep: 000050 aa 0 00002 3515 20 131 epp1 ap|2,* address ptw pointer 000051 aa 1 00000 2351 20 132 lda pr1|0,* get the PTW 000052 aa 000004 3150 07 133 cana ptw.valid,dl is the page in core? 000053 0a 000045 6000 00 134 tze return_null nope. 135 000054 aa 777760 3750 03 136 ana ptw_add_mask,du mask off all but the address 000055 aa 000024 7710 00 137 arl ptw_to_cmep_lower.rl and convert to a CMEP 000056 4a 4 00024 3535 20 138 epp3 sst$cmp,*al the CME pointer itself 139 000057 aa 0 00004 2535 20 140 spri3 ap|4,* return it 000060 aa 7 00044 7101 20 141 short_return 142 143 144 " 145 000061 aa 000000 0110 03 146 even 000062 147 read_write_valid: " Bits for a valid (incore) SDW with read/write access 148 149 iftarget l68 " Bits are in different halfwords 000062 aa 000000 000004 vfd 18/0,18/sdw.valid 000063 aa 000005 100000 vfd 18/sdw.read+sdw.write,18/sdw.not_a_gate " ifend 153 154 iftarget adp " vfd 18/0,18/sdw.valid " vfd 18/0,18/sdw.read+sdw.write+sdw.not_a_gate " ifend 158 159 160 161 include page_info 1-1 " BEGIN INCLUDE FILE page_info.incl.alm -- 6/72 1-2 " 1-3 " Modified 02/22/81, W. Olin Sibert, for ADP conversion 1-4 " Modified 06/23/82, E. N. Kittlitz, to move core map. 1-5 " 000012 1-6 equ page_power,10 " 2**10 = size of page 000001 1-7 bool df1,000001 " directed fault 1 on page fault 1-8 777777 740000 1-9 bool address_mask,777777740000 " Mask for PTW add, add_type compares 1-10 " Use as =v36/address_mask 1-11 400000 1-12 bool ptw.nulled,400000 " flag for testing addresses 1-13 100000 1-14 bool int,100000 " Disk dim flags 000020 1-15 bool pri,000020 000004 1-16 bool no_post,000004 1-17 000003 1-18 equ sst,3 " Standard pointer and index 000003 1-19 equ pdm,sst " register usage 000003 1-20 equ ast,sst 000002 1-21 equ ptw,2 1-22 1-23 " Various AST masks which are not 1-24 " expressible in standard notation 1-25 " 777000 1-26 bool aste.csl_mask_inner,777000 777000 1-27 bool aste.records_mask_inner,777000 1-28 000000 1-29 equ fault_entry,0 " Flags indicating how we 000001 1-30 equ read_entry,1 " were entered 000002 1-31 equ write_entry,2 000003 1-32 equ pre_page_entry,3 000004 1-33 equ post_purge_entry,4 000005 1-34 equ pd_flush_entry,5 000006 1-35 equ evict_entry,6 000007 1-36 equ abs_wire_entry,7 000010 1-37 equ cleanup_entry,8 1-38 1-39 " Constants for manipulating core addresses and PTWs. The core address 1-40 " is a fixed bin (35) aligned, and must be moved to/from the appropriate 1-41 " field in the SDW or PTW. 1-42 " 1-43 iftarget l68 777760 bool ptw_add_mask,777760 " Page number 777760 bool sdw_add_mask,777760 " Page number 000077 777777 bool coreadd_mask,000077777777 " Mask for coreadd in AL 000014 equ coreadd_to_ptw.ls,12 000014 equ coreadd_to_sdw.ls,12 000014 equ ptw_to_coreadd.rl,12 000014 equ sdw_to_coreadd.rl,12 000002 equ cmep_to_ptw.ls,2 000002 equ cmep_to_sdw.ls,2 000002 equ ptw_to_cmep.rl,2 000024 equ ptw_to_cmep_lower.rl,20 000002 equ sdw_to_cmep.rl,2 " ifend 1-58 1-59 iftarget adp " bool ptw_add_mask,177777 " Page number " bool sdw_add_mask,777774 " Page number " bool coreadd_mask,000377777777 " Mask for coreadd in AL " " equ coreadd_to_ptw.ls,8 " equ coreadd_to_sdw.ls,10 " equ ptw_to_coreadd.rl,8 " equ sdw_to_coreadd.rl,10 " equ cmep_to_ptw.rl,2 " Must shift backwards " equ cmep_to_sdw.ls,0 " equ ptw_to_cmep.ls,2 " Must shift backwards " equ ptw_to_cmep_lower.rl,16 " equ sdw_to_cmep.rl,0 " ifend 1-74 000012 1-75 equ cmep_to_coreadd.rl,10 .cmep to coreadd 000012 1-76 equ coreadd_to_cmep.ls,10 coreadd to .cmep 1-77 1-78 " 1-79 " 1-80 " Assorted general purpose macros used in PC. These will be changed 1-81 " when address types are changed for 20 bit addresses. Additionally, 1-82 " for more accurate metering on the ADP, the metering macros should 1-83 " modified to update the metering cells uninterruptably. 1-84 " 1-85 1-86 macro missing 1 1-87 ife &2,() 2 1-88 warn (&1: Argument missing.) 3 1-89 ifend 4 1-90 &end 1-91 " 1-92 " staddra and staddrq store the address portion (upper 22 bits) of the A or Q 1-93 " into the specified location. 1-94 " 1-95 macro staddra 1 1-96 missing staddra,&1 2 1-97 era &F1 3 1-98 ana =v36/address_mask 4 1-99 ersa &F1 5 1-100 &end 1-101 1-102 macro staddrq 1 1-103 missing staddrq,&1 2 1-104 erq &F1 3 1-105 anq =v36/address_mask 4 1-106 ersq &F1 5 1-107 &end 1-108 1-109 " Macros for metering 6/23/80 1-110 1-111 macro read_clock 1 1-112 iftarget l68 2 1-113 rccl sys_info$clock_,* 3 1-114 ifend 4 1-115 iftarget adp 5 1-116 rccl 0 6 1-117 ifend 7 1-118 &end 1-119 1-120 macro increment 1 1-121 missing increment,&1 2 1-122 aos &1 3 1-123 &end 1-124 1-125 macro store_clock 1 1-126 missing store_clock,&1 2 1-127 read_clock 3 1-128 staq &1 4 1-129 &end 1-130 1-131 macro meter_time 1 1-132 missing meter_time,&3 2 1-133 increment &3 3 1-134 read_clock 4 1-135 sbaq &1 5 1-136 adaq &2 6 1-137 staq &2 7 1-138 &end 1-139 1-140 " END INCLUDE FILE page_info.incl.alm 162 163 include sdw 2-1 " BEGIN INCLUDE FILE ... sdw.incl.alm ... 03/01/81, for ADP conversion 2-2 2-3 iftarget l68 " Include whichever seems appropriate include sdw.l68 3-1 3-2 3-3 "BEGIN INCLUDE FILE sdw.l68.incl.alm 3-4 3-5 3-6 "Created 04/05/81 1616.1 est Sun by convert_include_file, 3-7 " Version of 04/05/81 1606.8 est Sun. 3-8 3-9 "Made from >udd>Multics>hardcore_pool>new_pc>include>sdw.l68.incl.pl1, 3-10 " modified 03/20/81 2215.5 est Fri 3-11 3-12 " 3-13 " Structure sdw 3-14 " 000002 3-15 equ sdw_size,2 3-16 000000 3-17 equ sdw.add_word,0 000014 3-18 equ sdw.add_shift,12 000000 3-19 equ sdw.rings_word,0 000003 3-20 equ sdw.rings_shift,3 000777 3-21 bool sdw.rings_mask,000777 000000 3-22 equ sdw.r1_word,0 000011 3-23 equ sdw.r1_shift,9 000007 3-24 bool sdw.r1_mask,000007 000000 3-25 equ sdw.r2_word,0 000006 3-26 equ sdw.r2_shift,6 000007 3-27 bool sdw.r2_mask,000007 000000 3-28 equ sdw.r3_word,0 000003 3-29 equ sdw.r3_shift,3 000007 3-30 bool sdw.r3_mask,000007 000000 3-31 equ sdw.valid_word,0 000004 3-32 bool sdw.valid,000004 " DL 000000 3-33 equ sdw.df_no_word,0 000000 3-34 equ sdw.df_no_shift,0 000003 3-35 bool sdw.df_no_mask,000003 3-36 000001 3-37 equ sdw.bound_word,1 000025 3-38 equ sdw.bound_shift,21 037777 3-39 bool sdw.bound_mask,037777 000001 3-40 equ sdw.access_word,1 000021 3-41 equ sdw.access_shift,17 000017 3-42 bool sdw.access_mask,000017 000001 3-43 equ sdw.read_word,1 000004 3-44 bool sdw.read,000004 " DU 000001 3-45 equ sdw.execute_word,1 000002 3-46 bool sdw.execute,000002 " DU 000001 3-47 equ sdw.write_word,1 000001 3-48 bool sdw.write,000001 " DU 000001 3-49 equ sdw.privileged_word,1 400000 3-50 bool sdw.privileged,400000 " DL 000001 3-51 equ sdw.unpaged_word,1 200000 3-52 bool sdw.unpaged,200000 " DL 000001 3-53 equ sdw.not_a_gate_word,1 100000 3-54 bool sdw.not_a_gate,100000 " DL 000001 3-55 equ sdw.cache_word,1 040000 3-56 bool sdw.cache,040000 " DL 000001 3-57 equ sdw.entry_bound_word,1 000000 3-58 equ sdw.entry_bound_shift,0 037777 3-59 bool sdw.entry_bound_mask,037777 3-60 3-61 "END INCLUDE FILE sdw.l68.incl.alm " ifend 2-6 2-7 iftarget adp " include sdw.adp " ifend 2-10 2-11 " END INCLUDE FILE ... sdw.incl.alm 164 include ptw 4-1 " BEGIN INCLUDE FILE ... ptw.incl.alm ... 03/01/81, for ADP conversion 4-2 4-3 iftarget l68 " Include whichever seems appropriate include ptw.l68 5-1 5-2 5-3 "BEGIN INCLUDE FILE ptw.l68.incl.alm 5-4 5-5 5-6 "Created 04/05/81 1616.0 est Sun by convert_include_file, 5-7 " Version of 04/05/81 1606.8 est Sun. 5-8 5-9 "Made from >udd>Multics>hardcore_pool>new_pc>include>ptw.l68.incl.pl1, 5-10 " modified 03/20/81 1815.9 est Fri 5-11 5-12 " 5-13 " Structure core_ptw 5-14 " 000026 5-15 equ core_ptw.frame_shift,22 037777 5-16 bool core_ptw.frame_mask,037777 000000 5-17 equ core_ptw.flags,0 " LOWER 000016 5-18 equ core_ptw.add_type_shift,14 000017 5-19 bool core_ptw.add_type_mask,000017 020000 5-20 bool core_ptw.first,020000 " DL 010000 5-21 bool core_ptw.er,010000 " DL 002000 5-22 bool core_ptw.unusable1,002000 " DL 001000 5-23 bool core_ptw.phu,001000 " DL 000400 5-24 bool core_ptw.phm1,000400 " DL 000200 5-25 bool core_ptw.nypd,000200 " DL 000100 5-26 bool core_ptw.phm,000100 " DL 000040 5-27 bool core_ptw.phu1,000040 " DL 000020 5-28 bool core_ptw.wired,000020 " DL 000010 5-29 bool core_ptw.os,000010 " DL 000004 5-30 bool core_ptw.valid,000004 " DL 000000 5-31 equ core_ptw.df_no_shift,0 000003 5-32 bool core_ptw.df_no_mask,000003 5-33 5-34 " 5-35 " Structure ptw 5-36 " 000000 5-37 equ ptw.add,0 " UPPER 000000 5-38 equ ptw.flags,0 " LOWER 000016 5-39 equ ptw.add_type_shift,14 000017 5-40 bool ptw.add_type_mask,000017 020000 5-41 bool ptw.first,020000 " DL 010000 5-42 bool ptw.er,010000 " DL 002000 5-43 bool ptw.unusable1,002000 " DL 001000 5-44 bool ptw.phu,001000 " DL 000400 5-45 bool ptw.phm1,000400 " DL 000200 5-46 bool ptw.nypd,000200 " DL 000100 5-47 bool ptw.phm,000100 " DL 000040 5-48 bool ptw.phu1,000040 " DL 000020 5-49 bool ptw.wired,000020 " DL 000010 5-50 bool ptw.os,000010 " DL 000004 5-51 bool ptw.valid,000004 " DL 000000 5-52 equ ptw.df_no_shift,0 000003 5-53 bool ptw.df_no_mask,000003 5-54 5-55 "END INCLUDE FILE ptw.l68.incl.alm " ifend 4-6 4-7 iftarget adp " include ptw.adp " ifend 4-10 4-11 " END INCLUDE FILE ... ptw.incl.alm 165 include aste 6-1 6-2 6-3 "BEGIN INCLUDE FILE aste.incl.alm 6-4 6-5 6-6 "Created 01/14/85 1523.3 est Mon by convert_include_file, 6-7 " Version of 01/09/85 0954.4 est Wed. 6-8 6-9 "Made from >Pool>m>loe>incl>aste.incl.pl1, 6-10 " modified 01/08/85 1115.0 est Tue 6-11 6-12 " 6-13 " Structure aste 6-14 " 000014 6-15 equ aste_size,12 6-16 000000 6-17 equ aste.fp,0 " UPPER 000000 6-18 equ aste.bp,0 " LOWER 6-19 000001 6-20 equ aste.infl,1 " UPPER 000001 6-21 equ aste.infp,1 " LOWER 6-22 000002 6-23 equ aste.strp,2 " UPPER 000002 6-24 equ aste.par_astep,2 " LOWER 6-25 000003 6-26 equ aste.uid,3 6-27 000004 6-28 equ aste.msl_word,4 000033 6-29 equ aste.msl_shift,27 000777 6-30 bool aste.msl_mask,000777 000004 6-31 equ aste.pvtx_word,4 000022 6-32 equ aste.pvtx_shift,18 000777 6-33 bool aste.pvtx_mask,000777 000004 6-34 equ aste.vtocx,4 " LOWER 6-35 000005 6-36 equ aste.usedf_word,5 400000 6-37 bool aste.usedf,400000 " DU 000005 6-38 equ aste.init_word,5 200000 6-39 bool aste.init,200000 " DU 000005 6-40 equ aste.gtus_word,5 100000 6-41 bool aste.gtus,100000 " DU 000005 6-42 equ aste.gtms_word,5 040000 6-43 bool aste.gtms,040000 " DU 000005 6-44 equ aste.hc_word,5 020000 6-45 bool aste.hc,020000 " DU 000005 6-46 equ aste.hc_sdw_word,5 010000 6-47 bool aste.hc_sdw,010000 " DU 000005 6-48 equ aste.any_access_on_word,5 004000 6-49 bool aste.any_access_on,004000 " DU 000005 6-50 equ aste.write_access_on_word,5 002000 6-51 bool aste.write_access_on,002000 " DU 000005 6-52 equ aste.inhibit_cache_word,5 001000 6-53 bool aste.inhibit_cache,001000 " DU 000005 6-54 equ aste.explicit_deact_ok_word,5 000400 6-55 bool aste.explicit_deact_ok,000400 " DU 000005 6-56 equ aste.deact_error_word,5 000200 6-57 bool aste.deact_error,000200 " DU 000005 6-58 equ aste.hc_part_word,5 000100 6-59 bool aste.hc_part,000100 " DU 000005 6-60 equ aste.fm_damaged_word,5 000040 6-61 bool aste.fm_damaged,000040 " DU 000005 6-62 equ aste.multi_class_word,5 000020 6-63 bool aste.multi_class,000020 " DU 000005 6-64 equ aste.dius_word,5 000002 6-65 bool aste.dius,000002 " DU 000005 6-66 equ aste.nid_word,5 000001 6-67 bool aste.nid,000001 " DU 000005 6-68 equ aste.dmpr_pad_word,5 400000 6-69 bool aste.dmpr_pad,400000 " DL 000005 6-70 equ aste.ehs_word,5 200000 6-71 bool aste.ehs,200000 " DL 000005 6-72 equ aste.nqsw_word,5 100000 6-73 bool aste.nqsw,100000 " DL 000005 6-74 equ aste.dirsw_word,5 040000 6-75 bool aste.dirsw,040000 " DL 000005 6-76 equ aste.master_dir_word,5 020000 6-77 bool aste.master_dir,020000 " DL 000005 6-78 equ aste.volmap_seg_word,5 010000 6-79 bool aste.volmap_seg,010000 " DL 000005 6-80 equ aste.tqsw_word,5 004000 6-81 bool aste.tqsw,004000 " DL 6-82 000006 6-83 equ aste.dtu,6 000007 6-84 equ aste.dtm,7 6-85 000010 6-86 equ aste.quota,8 " UPPER 6-87 000011 6-88 equ aste.used,9 " UPPER 6-89 000012 6-90 equ aste.csl_word,10 000033 6-91 equ aste.csl_shift,27 000777 6-92 bool aste.csl_mask,000777 000012 6-93 equ aste.fmchanged_word,10 000400 6-94 bool aste.fmchanged,000400 " DU 000012 6-95 equ aste.fms_word,10 000200 6-96 bool aste.fms,000200 " DU 000012 6-97 equ aste.npfs_word,10 000100 6-98 bool aste.npfs,000100 " DU 000012 6-99 equ aste.gtpd_word,10 000040 6-100 bool aste.gtpd,000040 " DU 000012 6-101 equ aste.dnzp_word,10 000020 6-102 bool aste.dnzp,000020 " DU 000012 6-103 equ aste.per_process_word,10 000010 6-104 bool aste.per_process,000010 " DU 000012 6-105 equ aste.ddnp_word,10 000004 6-106 bool aste.ddnp,000004 " DU 000012 6-107 equ aste.records_word,10 000011 6-108 equ aste.records_shift,9 000777 6-109 bool aste.records_mask,000777 000012 6-110 equ aste.np_word,10 000000 6-111 equ aste.np_shift,0 000777 6-112 bool aste.np_mask,000777 6-113 000013 6-114 equ aste.ht_fp,11 " UPPER 000013 6-115 equ aste.fmchanged1_word,11 400000 6-116 bool aste.fmchanged1,400000 " DL 000013 6-117 equ aste.damaged_word,11 200000 6-118 bool aste.damaged,200000 " DL 000013 6-119 equ aste.pack_ovfl_word,11 100000 6-120 bool aste.pack_ovfl,100000 " DL 000013 6-121 equ aste.synchronized_word,11 040000 6-122 bool aste.synchronized,040000 " DL 000013 6-123 equ aste.ptsi_word,11 000006 6-124 equ aste.ptsi_shift,6 000003 6-125 bool aste.ptsi_mask,000003 000013 6-126 equ aste.marker_word,11 000000 6-127 equ aste.marker_shift,0 000077 6-128 bool aste.marker_mask,000077 6-129 6-130 " 6-131 " Structure aste_part 6-132 " 000014 6-133 equ aste_part_size,12 6-134 6-135 000000 6-136 equ aste_part.one,0 000001 6-137 equ aste_part.two,1 " DOUBLE 6-138 000013 6-139 equ aste_part.three_word,11 000000 6-140 equ aste_part.three_shift,0 000377 6-141 bool aste_part.three_mask,000377 6-142 6-143 " 6-144 " Structure seg_aste 6-145 " 000014 6-146 equ seg_aste_size,12 6-147 6-148 000010 6-149 equ seg_aste.usage,8 6-150 6-151 "END INCLUDE FILE aste.incl.alm 166 include cmp 7-1 " 7-2 " BEGIN INCLUDE FILE cmp.incl.alm October 1982 7-3 " 000004 7-4 equ cme_size,4 Size of a CME 7-5 000000 7-6 equ cme.fp,0 forward pointer to next core map entry (DU) 000000 7-7 equ cme.bp,0 backward pointer to previous core map entry (DL) 7-8 000001 7-9 equ cme.devadd,1 device address of page in the core block 000001 7-10 equ cme.flags,1 word containing various flags 740000 7-11 bool cme.did_mask,740000 mask for extracting device ID from core map entry 010000 7-12 bool cme.synch_held,010000 page of synch seg held in mem (DL) 004000 7-13 bool cme.io,004000 read/write bit (DL) 001000 7-14 bool cme.er,001000 error on previous I/O 000400 7-15 bool cme.removing,000400 page is being removed 000200 7-16 bool cme.abs_w,000200 page may not be moved 000100 7-17 bool cme.abs_usable,000100 page may be assigned with fixed abs addr 000040 7-18 bool cme.notify_requested,000040 ptw event must be notified on completion 000010 7-19 bool cme.phm_hedge,000010 periodic write scheduler 000007 7-20 bool cme.contr,000007 port number of controller in which core block is located 7-21 000002 7-22 equ cme.ptwp,2 page table word pointer (DU) 000002 7-23 equ cme.astep,2 AST entry ptr (DL) 7-24 000003 7-25 equ cme.pin_counter,3 number times to skip eviction (DU) 000003 7-26 equ cme.synch_page_entryp,3 rel ptr to synch page entry 7-27 7-28 " END INCLUDE FILE cmp.incl.alm 167 include unpaged_page_tables 8-1 8-2 8-3 "BEGIN INCLUDE FILE unpaged_page_tables.incl.alm 8-4 8-5 8-6 "Created 03/01/84 1645.1 est Thu by convert_include_file, 8-7 " Version of 11/07/82 1445.1 est Sun. 8-8 8-9 "Made from >bootload>update>incl>unpaged_page_tables.incl.pl1, 8-10 " modified 03/01/84 1645.1 est Thu 8-11 8-12 " 8-13 " Structure upt 8-14 " 8-15 000000 8-16 equ upt.sst_absloc,0 000001 8-17 equ upt.sst_last_loc,1 000002 8-18 equ upt.upt_absloc,2 000003 8-19 equ upt.upt_last_loc,3 000004 8-20 equ upt.iupt_absloc,4 000005 8-21 equ upt.iupt_last_loc,5 000006 8-22 equ upt.current_length,6 000007 8-23 equ upt.max_length,7 000010 8-24 equ upt.first_entry,8 " LEVEL 2 8-25 8-26 8-27 " 8-28 " Structure upt_entry 8-29 " 000000 8-30 equ upt_entry.size,0 000001 8-31 equ upt_entry.segno,1 000002 8-32 equ upt_entry.ptws,2 8-33 8-34 "END INCLUDE FILE unpaged_page_tables.incl.alm 168 end ENTRY SEQUENCES 000064 5a 000033 0000 00 000065 aa 7 00046 2721 20 000066 0a 000000 7100 00 000067 5a 000025 0000 00 000070 aa 7 00046 2721 20 000071 0a 000023 7100 00 000072 5a 000017 0000 00 000073 aa 7 00046 2721 20 000074 0a 000041 7100 00 000075 5a 000011 0000 00 000076 aa 7 00046 2721 20 000077 0a 000050 7100 00 LITERALS 000100 aa 000077 777777 000102 aa 077777 000043 000103 aa 000001 000000 NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000104 5a 000003 000000 000105 5a 000050 600000 000106 aa 000000 000000 000107 55 000011 000002 000110 5a 000002 400003 000111 55 000006 000011 000112 aa 011 147 145 164 000113 aa 137 160 164 162 000114 aa 163 137 000 000 000115 55 000017 000003 000116 0a 000076 500000 000117 55 000014 000003 000120 aa 013 160 164 167 ptw_to_cmep 000121 aa 137 164 157 137 000122 aa 143 155 145 160 000123 55 000025 000011 000124 0a 000073 500000 000125 55 000022 000003 000126 aa 013 147 151 166 given_segno 000127 aa 145 156 137 163 000130 aa 145 147 156 157 000131 55 000033 000017 000132 0a 000070 500000 000133 55 000030 000003 000134 aa 011 147 151 166 given_sdw 000135 aa 145 156 137 163 000136 aa 144 167 000 000 000137 55 000041 000025 000140 0a 000065 500000 000141 55 000036 000003 000142 aa 013 147 151 166 given_astep 000143 aa 145 156 137 141 000144 aa 163 164 145 160 000145 55 000002 000033 000146 6a 000000 400002 000147 55 000044 000003 000150 aa 014 163 171 155 symbol_table 000151 aa 142 157 154 137 000152 aa 164 141 142 154 000153 aa 145 000 000 000 DEFINITIONS HASH TABLE 000154 aa 000000 000015 000155 aa 000000 000000 000156 5a 000025 000000 000157 aa 000000 000000 000160 aa 000000 000000 000161 5a 000017 000000 000162 5a 000033 000000 000163 5a 000041 000000 000164 aa 000000 000000 000165 aa 000000 000000 000166 aa 000000 000000 000167 aa 000000 000000 000170 aa 000000 000000 000171 5a 000011 000000 EXTERNAL NAMES 000172 aa 003 143 155 160 cmp 000173 aa 004 144 163 145 dseg 000174 aa 147 000 000 000 000175 aa 023 165 156 160 unpaged_page_tables 000176 aa 141 147 145 144 000177 aa 137 160 141 147 000200 aa 145 137 164 141 000201 aa 142 154 145 163 000202 aa 007 160 164 167 ptwbase 000203 aa 142 141 163 145 000204 aa 003 160 164 163 pts 000205 aa 003 163 163 164 sst NO TRAP POINTER WORDS TYPE PAIR BLOCKS 000206 aa 000004 000000 000207 55 000101 000066 000210 aa 000003 000000 000211 5a 000067 000000 000212 aa 000003 000000 000213 5a 000071 000000 000214 aa 000004 000000 000215 55 000101 000076 000216 aa 000004 000000 000217 55 000101 000100 000220 aa 000003 000000 000221 5a 000101 000000 000222 aa 000001 000000 000223 aa 000000 000000 INTERNAL EXPRESSION WORDS 000224 5a 000102 000000 000225 5a 000104 000000 000226 5a 000106 000000 000227 5a 000106 000001 000230 5a 000110 000000 000231 5a 000112 000000 000232 5a 000114 000000 000233 aa 000000 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 000104 000000 000002 aa 000000 000000 000003 aa 000000 000000 000004 aa 000000 000000 000005 aa 000000 000000 000006 22 000010 000026 000007 a2 000000 000000 000010 9a 777770 0000 46 sst| 000011 5a 000126 0000 00 000012 9a 777766 0000 46 sst|pts 000013 5a 000125 0000 06 000014 9a 777764 0000 46 sst|ptwbase 000015 5a 000124 0000 00 000016 9a 777762 0000 46 unpaged_page_tables| 000017 5a 000123 0000 00 000020 9a 777760 0000 46 unpaged_page_tables| 000021 5a 000122 0000 00 000022 9a 777756 0000 46 dseg| 000023 5a 000121 0000 05 000024 9a 777754 0000 46 sst|cmp 000025 5a 000120 0000 65 SYMBOL INFORMATION SYMBOL TABLE HEADER 000000 aa 000000 000001 000001 aa 163171 155142 000002 aa 164162 145145 000003 aa 000000 000010 000004 aa 000000 117244 000005 aa 361023 525721 000006 aa 000000 117547 000007 aa 243324 472170 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 000310 000020 aa 000000 000241 000021 aa 000260 000252 000022 aa 000275 000241 000023 aa 000064 000000 000024 aa 101114 115040 000025 aa 126145 162163 000026 aa 151157 156040 000027 aa 070056 061064 000030 aa 040115 141162 000031 aa 143150 040061 000032 aa 071070 071040 000033 aa 040040 040040 000034 aa 110151 162156 000035 aa 145151 163145 000036 aa 156056 123171 000037 aa 163115 141151 000040 aa 156164 056141 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 055164 141162 000045 aa 147145 164040 000046 aa 154066 070040 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 040154 151163 000057 aa 164040 163171 000060 aa 155142 157154 000061 aa 163040 040040 000062 aa 040040 040040 000063 aa 040040 040040 000064 aa 000000 000001 000065 aa 000000 000011 000066 aa 000132 000040 000067 aa 175453 017613 000070 aa 000000 117547 000071 aa 176315 200000 000072 aa 000142 000037 000073 aa 112456 132235 000074 aa 000000 111250 000075 aa 530556 400000 000076 aa 000152 000031 000077 aa 102456 350277 000100 aa 000000 110246 000101 aa 520732 400000 000102 aa 000161 000035 000103 aa 106701 740565 000104 aa 000000 110670 000105 aa 206245 200000 000106 aa 000171 000031 000107 aa 102456 350276 000110 aa 000000 110246 000111 aa 520730 400000 000112 aa 000200 000035 000113 aa 106701 740574 000114 aa 000000 110670 000115 aa 206425 200000 000116 aa 000210 000032 000117 aa 133234 136212 000120 aa 000000 113324 000121 aa 322064 200000 000122 aa 000217 000031 000123 aa 113434 242275 000124 aa 000000 111347 000125 aa 432071 000000 000126 aa 000226 000051 000127 aa 127236 043612 000130 aa 000000 112724 000131 aa 701752 000000 000132 aa 076163 160145 >spec>install>1111>get_ptrs_.alm 000133 aa 143076 151156 000134 aa 163164 141154 000135 aa 154076 061061 000136 aa 061061 076147 000137 aa 145164 137160 000140 aa 164162 163137 000141 aa 056141 154155 000142 aa 076154 144144 >ldd>include>page_info.incl.alm 000143 aa 076151 156143 000144 aa 154165 144145 000145 aa 076160 141147 000146 aa 145137 151156 000147 aa 146157 056151 000150 aa 156143 154056 000151 aa 141154 155040 000152 aa 076154 144144 >ldd>include>sdw.incl.alm 000153 aa 076151 156143 000154 aa 154165 144145 000155 aa 076163 144167 000156 aa 056151 156143 000157 aa 154056 141154 000160 aa 155040 040040 000161 aa 076154 144144 >ldd>include>sdw.l68.incl.alm 000162 aa 076151 156143 000163 aa 154165 144145 000164 aa 076163 144167 000165 aa 056154 066070 000166 aa 056151 156143 000167 aa 154056 141154 000170 aa 155040 040040 000171 aa 076154 144144 >ldd>include>ptw.incl.alm 000172 aa 076151 156143 000173 aa 154165 144145 000174 aa 076160 164167 000175 aa 056151 156143 000176 aa 154056 141154 000177 aa 155040 040040 000200 aa 076154 144144 >ldd>include>ptw.l68.incl.alm 000201 aa 076151 156143 000202 aa 154165 144145 000203 aa 076160 164167 000204 aa 056154 066070 000205 aa 056151 156143 000206 aa 154056 141154 000207 aa 155040 040040 000210 aa 076154 144144 >ldd>include>aste.incl.alm 000211 aa 076151 156143 000212 aa 154165 144145 000213 aa 076141 163164 000214 aa 145056 151156 000215 aa 143154 056141 000216 aa 154155 040040 000217 aa 076154 144144 >ldd>include>cmp.incl.alm 000220 aa 076151 156143 000221 aa 154165 144145 000222 aa 076143 155160 000223 aa 056151 156143 000224 aa 154056 141154 000225 aa 155040 040040 000226 aa 076154 144144 >ldd>include>unpaged_page_tables.incl.alm 000227 aa 076151 156143 000230 aa 154165 144145 000231 aa 076165 156160 000232 aa 141147 145144 000233 aa 137160 141147 000234 aa 145137 164141 000235 aa 142154 145163 000236 aa 056151 156143 000237 aa 154056 141154 000240 aa 155040 040040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number 7 abs_wire_entry page_info: 36. 740000 address_mask page_info: 9. 3 ast page_info: 20. 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: 92. 777000 aste.csl_mask_inner page_info: 26. 33 aste.csl_shift aste: 91. 12 aste.csl_word aste: 90. 200000 aste.damaged aste: 118. 13 aste.damaged_word aste: 117. 4 aste.ddnp aste: 106. 12 aste.ddnp_word aste: 105. 200 aste.deact_error aste: 57. 5 aste.deact_error_word aste: 56. 40000 aste.dirsw aste: 75. 5 aste.dirsw_word aste: 74. 2 aste.dius aste: 65. 5 aste.dius_word aste: 64. 400000 aste.dmpr_pad aste: 69. 5 aste.dmpr_pad_word aste: 68. 20 aste.dnzp aste: 102. 12 aste.dnzp_word aste: 101. 7 aste.dtm aste: 84. 6 aste.dtu aste: 83. 200000 aste.ehs aste: 71. 5 aste.ehs_word aste: 70. 400 aste.explicit_deact_ok aste: 55. 5 aste.explicit_deact_ok_word aste: 54. 400 aste.fmchanged aste: 94. 400000 aste.fmchanged1 aste: 116. 13 aste.fmchanged1_word aste: 115. 12 aste.fmchanged_word aste: 93. 200 aste.fms aste: 96. 12 aste.fms_word aste: 95. 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: 100. 12 aste.gtpd_word aste: 99. 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: 114. 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: 128. 0 aste.marker_shift aste: 127. 13 aste.marker_word aste: 126. 20000 aste.master_dir aste: 77. 5 aste.master_dir_word aste: 76. 777 aste.msl_mask aste: 30. 33 aste.msl_shift aste: 29. 4 aste.msl_word aste: 28. 20 aste.multi_class aste: 63. 5 aste.multi_class_word aste: 62. 1 aste.nid aste: 67. 5 aste.nid_word aste: 66. 100 aste.npfs aste: 98. 12 aste.npfs_word aste: 97. 777 aste.np_mask aste: 112. 0 aste.np_shift aste: 111. 12 aste.np_word aste: 110. 100000 aste.nqsw aste: 73. 5 aste.nqsw_word aste: 72. 100000 aste.pack_ovfl aste: 120. 13 aste.pack_ovfl_word aste: 119. 2 aste.par_astep aste: 24. 10 aste.per_process aste: 104. 12 aste.per_process_word aste: 103. 3 aste.ptsi_mask get_ptrs_: 48, aste: 125. 6 aste.ptsi_shift get_ptrs_: 47, aste: 124. 13 aste.ptsi_word get_ptrs_: 46, aste: 123. 777 aste.pvtx_mask aste: 33. 22 aste.pvtx_shift aste: 32. 4 aste.pvtx_word aste: 31. 10 aste.quota aste: 86. 777 aste.records_mask aste: 109. 777000 aste.records_mask_inner page_info: 27. 11 aste.records_shift aste: 108. 12 aste.records_word aste: 107. 2 aste.strp aste: 23. 40000 aste.synchronized aste: 122. 13 aste.synchronized_word aste: 121. 4000 aste.tqsw aste: 81. 5 aste.tqsw_word aste: 80. 3 aste.uid aste: 26. 11 aste.used aste: 88. 400000 aste.usedf aste: 37. 5 aste.usedf_word aste: 36. 10000 aste.volmap_seg aste: 79. 5 aste.volmap_seg_word aste: 78. 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: 136. 377 aste_part.three_mask aste: 141. 0 aste_part.three_shift aste: 140. 13 aste_part.three_word aste: 139. 1 aste_part.two aste: 137. 14 aste_part_size aste: 133. 14 aste_size get_ptrs_: 54, 100, aste: 15. 10 cleanup_entry page_info: 37. 100 cme.abs_usable cmp: 17. 200 cme.abs_w cmp: 16. 2 cme.astep cmp: 23. 0 cme.bp cmp: 7. 7 cme.contr cmp: 20. 1 cme.devadd cmp: 9. 740000 cme.did_mask cmp: 11. 1000 cme.er cmp: 14. 1 cme.flags cmp: 10. 0 cme.fp cmp: 6. 4000 cme.io cmp: 13. 40 cme.notify_requested cmp: 18. 10 cme.phm_hedge cmp: 19. 3 cme.pin_counter cmp: 25. 2 cme.ptwp cmp: 22. 400 cme.removing cmp: 15. 10000 cme.synch_held cmp: 12. 3 cme.synch_page_entryp cmp: 26. 12 cmep_to_coreadd.rl page_info: 75. 2 cmep_to_ptw.ls page_info: 57. 2 cmep_to_sdw.ls page_info: 57. 4 cme_size cmp: 4. cmp get_ptrs_: 138. 777777 coreadd_mask get_ptrs_: 92, page_info: 57. 12 coreadd_to_cmep.ls page_info: 76. 14 coreadd_to_ptw.ls page_info: 57. 14 coreadd_to_sdw.ls get_ptrs_: 58, page_info: 57. 17 core_ptw.add_type_mask ptw.l68: 19. 16 core_ptw.add_type_shift ptw.l68: 18. 3 core_ptw.df_no_mask ptw.l68: 32. 0 core_ptw.df_no_shift ptw.l68: 31. 10000 core_ptw.er ptw.l68: 21. 20000 core_ptw.first ptw.l68: 20. 0 core_ptw.flags ptw.l68: 17. 37777 core_ptw.frame_mask ptw.l68: 16. 26 core_ptw.frame_shift ptw.l68: 15. 200 core_ptw.nypd ptw.l68: 25. 10 core_ptw.os ptw.l68: 29. 100 core_ptw.phm ptw.l68: 26. 400 core_ptw.phm1 ptw.l68: 24. 1000 core_ptw.phu ptw.l68: 23. 40 core_ptw.phu1 ptw.l68: 27. 2000 core_ptw.unusable1 ptw.l68: 22. 4 core_ptw.valid ptw.l68: 30. 20 core_ptw.wired ptw.l68: 28. 1 df1 page_info: 7. dseg get_ptrs_: 111. 6 evict_entry page_info: 35. 0 fault_entry page_info: 29. 0 given_astep get_ptrs_: 28, 41. 23 given_sdw get_ptrs_: 29, 84. 41 given_segno get_ptrs_: 30, 108. 100000 int page_info: 14. 25 join_given_sdw get_ptrs_: 88, 112. 4 no_post page_info: 16. 12 page_power get_ptrs_: 50, page_info: 6. 3 pdm page_info: 19. 5 pd_flush_entry page_info: 34. 4 post_purge_entry page_info: 33. 3 pre_page_entry page_info: 32. 20 pri page_info: 15. pts get_ptrs_: 49. 2 ptw page_info: 21. 0 ptw.add ptw.l68: 37. 17 ptw.add_type_mask ptw.l68: 40. 16 ptw.add_type_shift ptw.l68: 39. 3 ptw.df_no_mask ptw.l68: 53. 0 ptw.df_no_shift ptw.l68: 52. 10000 ptw.er ptw.l68: 42. 20000 ptw.first ptw.l68: 41. 0 ptw.flags ptw.l68: 38. 400000 ptw.nulled page_info: 12. 200 ptw.nypd ptw.l68: 46. 10 ptw.os ptw.l68: 50. 100 ptw.phm ptw.l68: 47. 400 ptw.phm1 ptw.l68: 45. 1000 ptw.phu ptw.l68: 44. 40 ptw.phu1 ptw.l68: 48. 2000 ptw.unusable1 ptw.l68: 43. 4 ptw.valid get_ptrs_: 133, ptw.l68: 51. 20 ptw.wired ptw.l68: 49. ptwbase get_ptrs_: 57. 777760 ptw_add_mask get_ptrs_: 136, page_info: 57. 50 ptw_to_cmep get_ptrs_: 31, 130. 2 ptw_to_cmep.rl page_info: 57. 24 ptw_to_cmep_lower.rl get_ptrs_: 137, page_info: 57. 14 ptw_to_coreadd.rl page_info: 57. 1 read_entry page_info: 30. 62 read_write_valid get_ptrs_: 60, 147. 22 return get_ptrs_: 65. 45 return_null get_ptrs_: 93, 96, 98, 116, 134. 37 return_sdwadd get_ptrs_: 102. 17 sdw.access_mask sdw.l68: 42. 21 sdw.access_shift sdw.l68: 41. 1 sdw.access_word sdw.l68: 40. 14 sdw.add_shift sdw.l68: 18. 0 sdw.add_word sdw.l68: 17. 37777 sdw.bound_mask sdw.l68: 39. 25 sdw.bound_shift get_ptrs_: 52, sdw.l68: 38. 1 sdw.bound_word sdw.l68: 37. 40000 sdw.cache sdw.l68: 56. 1 sdw.cache_word sdw.l68: 55. 3 sdw.df_no_mask sdw.l68: 35. 0 sdw.df_no_shift sdw.l68: 34. 0 sdw.df_no_word sdw.l68: 33. 37777 sdw.entry_bound_mask sdw.l68: 59. 0 sdw.entry_bound_shift sdw.l68: 58. 1 sdw.entry_bound_word sdw.l68: 57. 2 sdw.execute sdw.l68: 46. 1 sdw.execute_word sdw.l68: 45. 100000 sdw.not_a_gate get_ptrs_: 152, sdw.l68: 54. 1 sdw.not_a_gate_word sdw.l68: 53. 400000 sdw.privileged sdw.l68: 50. 1 sdw.privileged_word sdw.l68: 49. 7 sdw.r1_mask sdw.l68: 24. 11 sdw.r1_shift sdw.l68: 23. 0 sdw.r1_word sdw.l68: 22. 7 sdw.r2_mask sdw.l68: 27. 6 sdw.r2_shift sdw.l68: 26. 0 sdw.r2_word sdw.l68: 25. 7 sdw.r3_mask sdw.l68: 30. 3 sdw.r3_shift sdw.l68: 29. 0 sdw.r3_word sdw.l68: 28. 4 sdw.read get_ptrs_: 152, sdw.l68: 44. 1 sdw.read_word sdw.l68: 43. 777 sdw.rings_mask sdw.l68: 21. 3 sdw.rings_shift sdw.l68: 20. 0 sdw.rings_word sdw.l68: 19. 200000 sdw.unpaged sdw.l68: 52. 1 sdw.unpaged_word sdw.l68: 51. 4 sdw.valid get_ptrs_: 152, sdw.l68: 32. 0 sdw.valid_word sdw.l68: 31. 1 sdw.write get_ptrs_: 152, sdw.l68: 48. 1 sdw.write_word sdw.l68: 47. 777760 sdw_add_mask page_info: 57. 2 sdw_size sdw.l68: 15. 2 sdw_to_cmep.rl page_info: 57. 14 sdw_to_coreadd.rl get_ptrs_: 91, page_info: 57. 10 seg_aste.usage aste: 149. 14 seg_aste_size aste: 146. 3 sst get_ptrs_: 42, 49, 57, 90, 138, page_info: 18, 19, 20. unpaged_page_tables get_ptrs_: 95, 97. 6 upt.current_length unpaged_page_tables: 22. 10 upt.first_entry unpaged_page_tables: 24. 4 upt.iupt_absloc unpaged_page_tables: 20. 5 upt.iupt_last_loc unpaged_page_tables: 21. 7 upt.max_length unpaged_page_tables: 23. 0 upt.sst_absloc get_ptrs_: 97, unpaged_page_tables: 16. 1 upt.sst_last_loc get_ptrs_: 95, unpaged_page_tables: 17. 2 upt.upt_absloc unpaged_page_tables: 18. 3 upt.upt_last_loc unpaged_page_tables: 19. 2 upt_entry.ptws unpaged_page_tables: 32. 1 upt_entry.segno unpaged_page_tables: 31. 0 upt_entry.size unpaged_page_tables: 30. 2 write_entry page_info: 31. 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