ASSEMBLY LISTING OF SEGMENT >spec>install>1110>dec_ops_.alm ASSEMBLED ON: 11/11/89 0946.2 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 " dec_ops_ a package of runtime routines to support decimal arithmetic 14 " 15 " Written by Richard A. Barnes 17 October 1973. 16 " Modified by RAB 11 September 1975 to fix 1398 17 " Modified by RAB 23 September 1975 to fix 1422 18 " 000000 19 name dec_ops_ 20 " 21 include stack_frame 1-1 " 1-2 " BEGIN INCLUDE FILE ... stack_frame.incl.alm 6/72 RBS 1-3 " 1-4 " Modified: 16 Dec 1977, D. Levin - to add fio_ps_ptr 1-5 " Modified: 3 Feb 1978, P. Krupp - to add run_unit_manager_bit & main_proc_bit 1-6 " Modified: 21 March 1978, D. Levin - change fio_ps_ptr to support_ptr 1-7 " 000020 1-8 equ stack_frame.prev_sp,16 000020 1-9 equ stack_frame.condition_word,16 000022 1-10 equ stack_frame.next_sp,18 000022 1-11 equ stack_frame.signaller_word,18 000024 1-12 equ stack_frame.return_ptr,20 000026 1-13 equ stack_frame.entry_ptr,22 000030 1-14 equ stack_frame.operator_ptr,24 000030 1-15 equ stack_frame.lp_ptr,24 000032 1-16 equ stack_frame.arg_ptr,26 000034 1-17 equ stack_frame.static_ptr,28 000035 1-18 equ stack_frame.support_ptr,29 " only used by fortran I/O 000036 1-19 equ stack_frame.on_unit_rel_ptrs,30 000037 1-20 equ stack_frame.operator_ret_ptr,31 000037 1-21 equ stack_frame.translator_id,31 000040 1-22 equ stack_frame.regs,32 000060 1-23 equ stack_frame.min_length,48 000020 1-24 equ stack_frame.flag_word,16 020000 1-25 bool stack_frame.main_proc_bit,020000 (DL) 010000 1-26 bool stack_frame.run_unit_manager,010000 (DL) 004000 1-27 bool stack_frame.signal_bit,004000 (DL) 002000 1-28 bool stack_frame.crawl_out_bit,002000 (DL) 001000 1-29 bool stack_frame.signaller_bit,001000 (DL) 000400 1-30 bool stack_frame.link_trap_bit,000400 (DL) 000200 1-31 bool stack_frame.support_bit,000200 (DL) 000100 1-32 bool stack_frame.condition_bit,000100 (DL) 1-33 1-34 " 1-35 " END INCLUDE FILE ... stack_frame.incl.alm 1-36 " 22 " 23 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 2-8 " HISTORY COMMENTS: 2-9 " 1) change(86-06-24,DGHowe), approve(86-06-24,MCR7396), 2-10 " audit(86-08-05,Schroth), install(86-11-03,MR12.0-1206): 2-11 " added the heap_header_ptr definition 2-12 " 2) change(86-08-12,Kissel), approve(86-08-12,MCR7473), 2-13 " audit(86-10-10,Fawcett), install(86-11-03,MR12.0-1206): 2-14 " Modified to support control point management. These changes were 2-15 " actually made in February 1985 by G. Palter. 2-16 " 3) change(86-10-22,Fawcett), approve(86-10-22,MCR7473), 2-17 " audit(86-10-22,Farley), install(86-11-03,MR12.0-1206): 2-18 " Remove the old_lot pointer and replace it with cpm_data_ptr. Use the 18 2-19 " bit pad after cur_lot_size for the cpm_enabled. This was done to save 2-20 " some space int the stack header and change the cpd_ptr unal to 2-21 " cpm_data_ptr (ITS pair). 2-22 " END HISTORY COMMENTS 2-23 000004 2-24 equ stack_header.cpm_data_ptr,4 ptr to control point for this stack 000006 2-25 equ stack_header.combined_stat_ptr,6 ptr to separate static area 2-26 000010 2-27 equ stack_header.clr_ptr,8 ptr to area containing linkage sections 000012 2-28 equ stack_header.max_lot_size,10 number of words allowed in lot (DU) 000012 2-29 equ stack_header.main_proc_invoked,10 nonzero if main proc was invoked in run unit (DL) 000012 2-30 equ stack_header.run_unit_depth,10 number of active run units stacked (DL) 000013 2-31 equ stack_header.cur_lot_size,11 DU number of words (entries) in lot 000013 2-32 equ stack_header.cpm_enabled,11 DL non-zero if control point management is enabled 000014 2-33 equ stack_header.system_free_ptr,12 ptr to system storage area 000016 2-34 equ stack_header.user_free_ptr,14 ptr to user storage area 2-35 000020 2-36 equ stack_header.parent_ptr,16 ptr to parent stack or null 000022 2-37 equ stack_header.stack_begin_ptr,18 ptr to first stack frame 000024 2-38 equ stack_header.stack_end_ptr,20 ptr to next useable stack frame 000026 2-39 equ stack_header.lot_ptr,22 ptr to the lot for the current ring 2-40 000030 2-41 equ stack_header.signal_ptr,24 ptr to signal proc for current ring 000032 2-42 equ stack_header.bar_mode_sp,26 value of sp before entering bar mode 000034 2-43 equ stack_header.pl1_operators_ptr,28 ptr: pl1_operators_$operator_table 000036 2-44 equ stack_header.call_op_ptr,30 ptr to standard call operator 2-45 000040 2-46 equ stack_header.push_op_ptr,32 ptr to standard push operator 000042 2-47 equ stack_header.return_op_ptr,34 ptr to standard return operator 000044 2-48 equ stack_header.ret_no_pop_op_ptr,36 ptr: stand. return/ no pop operator 000046 2-49 equ stack_header.entry_op_ptr,38 ptr to standard entry operator 2-50 000050 2-51 equ stack_header.trans_op_tv_ptr,40 ptr to table of translator operator ptrs 000052 2-52 equ stack_header.isot_ptr,42 pointer to ISOT 000054 2-53 equ stack_header.sct_ptr,44 pointer to System Condition Table 000056 2-54 equ stack_header.unwinder_ptr,46 pointer to unwinder for current ring 2-55 000060 2-56 equ stack_header.sys_link_info_ptr,48 ptr to *system link name table 000062 2-57 equ stack_header.rnt_ptr,50 ptr to reference name table 000064 2-58 equ stack_header.ect_ptr,52 ptr to event channel table 000066 2-59 equ stack_header.assign_linkage_ptr,54 ptr to area for hcs_$assign_linkage calls 000070 2-60 equ stack_header.heap_header_ptr,56 ptr to heap header. 000072 2-61 equ stack_header.trace_frames,58 stack of trace_catch_ frames 000073 2-62 equ stach_header.trace_top_ptr,59 trace pointer 000074 2-63 equ stack_header.in_trace,60 trace antirecurse bit 000100 2-64 equ stack_header_end,64 length of stack header 2-65 2-66 2-67 2-68 000000 2-69 equ trace_frames.count,0 number of trace frames on stack 000001 2-70 equ trace_frames.top_ptr,1 packed pointer to top one 2-71 2-72 " The following constant is an offset within the pl1 operators table. 2-73 " It references a transfer vector table. 2-74 000551 2-75 bool tv_offset,551 2-76 2-77 2-78 " The following constants are offsets within this transfer vector table. 2-79 001170 2-80 equ call_offset,tv_offset+271 001171 2-81 equ push_offset,tv_offset+272 001172 2-82 equ return_offset,tv_offset+273 001173 2-83 equ return_no_pop_offset,tv_offset+274 001174 2-84 equ entry_offset,tv_offset+275 2-85 2-86 2-87 " END INCLUDE FILE stack_header.incl.alm 24 " 000040 25 equ mod_extension_size,32 000046 26 equ tbp,38 000056 27 equ indicators,46 000067 28 equ qmask,55 29 " 000000 30 segdef truncate 000000 31 truncate: 000000 0a 000027 7020 00 32 tsx2 trunc 000001 aa 6 00046 7101 70 33 tra sp|tbp,*0 34 " 000002 35 segdef ceil 000002 36 ceil: 000002 0a 000027 7020 00 37 tsx2 trunc 000003 aa 6 00046 6041 70 38 tmi sp|tbp,*0 ceil(neg x) = trunc(x) 000004 aa 000000 1010 03 39 cmpx1 0,du 000005 aa 6 00046 6001 70 40 tze sp|tbp,*0 exit if no truncation 000006 0a 000012 7160 05 41 xec ad2d,al ceil(pos x) = trunc(x) + 1 000007 0a 000026 010002 42 desc9ls one,2,0 000010 aa 2 00000 0001 00 43 arg bp|0 000011 aa 6 00046 7101 70 44 tra sp|tbp,*0 45 " 000012 aa 000320 2024 00 46 ad2d: ad2d (0),(pr,id),round 000013 aa 000120 2024 00 47 ad2d (0),(pr,id) 48 " 000014 49 segdef floor 000014 50 floor: 000014 0a 000027 7020 00 51 tsx2 trunc 000015 aa 6 00046 6051 70 52 tpl sp|tbp,*0 floor(pos x) = trunc(x) 000016 aa 000000 1010 03 53 cmpx1 0,du 000017 aa 6 00046 6001 70 54 tze sp|tbp,*0 exit if no truncation 000020 0a 000024 7160 05 55 xec sb2d,al floor(neg x) = trunc(x) - 1 000021 0a 000026 010002 56 desc9ls one,2,0 000022 aa 2 00000 0001 00 57 arg bp|0 000023 aa 6 00046 7101 70 58 tra sp|tbp,*0 59 " 000024 aa 000320 2034 00 60 sb2d: sb2d (0),(pr,id),round 000025 aa 000120 2034 00 61 sb2d (0),(pr,id) 62 " 000026 aa 053 061 000 000 63 one: aci "+1" 64 " 000027 65 trunc: 000027 0a 000173 7010 00 66 tsx1 setup 67 " 000030 aa 000120 3034 00 68 cmpn (0),(pr,id) set indicators for source 000031 0a 000102 010002 69 desc9ls zero,2,0 000032 aa 2 00001 0001 00 70 arg bp|1 000033 aa 6 00056 7541 00 71 sti sp|indicators save indicators 000034 aa 004000 6340 07 72 ldi =o4000,dl and suppress overflows 73 " 000035 aa 000000 1150 07 74 cmpa 0,dl 000036 aa 000002 6010 04 75 tnz 2,ic 000037 aa 000001 1760 07 76 sbq 1,dl adjust precision if float 77 " 000040 aa 000000 6210 00 78 eax1 0 assume no truncation 000041 aa 0 00140 3005 20 79 mvn (pr,id),(pr,rl) 000042 aa 2 00001 0001 00 80 arg bp|1 000043 aa 100000 010006 81 desc9ls ab|0,ql,0 000044 0a 000057 6170 00 82 tov trunc1 000045 aa 0 00140 3035 20 83 cmpn (pr,id),(pr,rl) check for truncation of nonzero digits 000046 aa 2 00001 0001 00 84 arg bp|1 000047 aa 100000 010006 85 desc9ls ab|0,ql,0 000050 aa 000002 6000 04 86 tze 2,ic 000051 aa 000001 6210 00 87 eax1 1 remember truncation 000052 0a 000063 7160 05 88 xec mv_temp,al 000053 aa 100000 010006 89 desc9ls ab|0,ql,0 000054 aa 2 00000 0001 00 90 arg bp|0 000055 aa 6 00056 6341 00 91 restore: ldi sp|indicators restore indicators with source info 000056 aa 000000 7100 12 92 tra 0,2 93 " 000057 94 trunc1: 000057 0a 000065 7160 05 95 xec move,al 000060 aa 2 00001 0001 00 96 arg bp|1 000061 aa 2 00000 0001 00 97 arg bp|0 000062 0a 000055 7100 00 98 tra restore 99 " 000063 aa 0 00320 3005 40 100 mv_temp: mvn (pr,rl),(pr,id),round 000064 aa 0 00120 3005 40 101 mvn (pr,rl),(pr,id) 000065 aa 0 00320 3005 20 102 move: mvn (pr,id),(pr,id),round 000066 aa 0 00120 3005 20 103 mvn (pr,id),(pr,id) 104 " 000067 105 segdef sign 000067 106 sign: 000067 aa 000120 3034 00 107 cmpn (0),(pr,id) 000070 0a 000102 010002 108 desc9ls zero,2,0 000071 aa 2 00000 0001 00 109 arg bp|0 000072 0a 000100 6040 00 110 tmi s_neg 000073 0a 000076 6000 00 111 tze s_zero 000074 aa 000001 2360 07 112 ldq 1,dl 000075 aa 6 00046 7101 70 113 tra sp|tbp,*0 000076 aa 000000 2360 07 114 s_zero: ldq 0,dl 000077 aa 6 00046 7101 70 115 tra sp|tbp,*0 000100 aa 000001 3360 07 116 s_neg: lcq 1,dl 000101 aa 6 00046 7101 70 117 tra sp|tbp,*0 118 " 000102 aa 053 060 000 000 119 zero: aci "+0" 120 " 000103 121 segdef mod 000103 122 mod: 000103 0a 000173 7010 00 123 tsx1 setup 124 " 125 " must check for case mod(x,0) = x 126 " 000104 aa 000120 3034 00 127 cmpn (0),(pr,id) 000105 0a 000102 010002 128 desc9ls zero,2,0 000106 aa 2 00002 0001 00 129 arg bp|2 000107 0a 000114 6010 00 130 tnz m_start 000110 0a 000065 7160 05 131 xec move,al 000111 aa 2 00001 0001 00 132 arg bp|1 000112 aa 2 00000 0001 00 133 arg bp|0 000113 aa 6 00046 7101 70 134 tra sp|tbp,*0 135 " 136 " get work space 137 " 000114 138 m_start: 000114 aa 6 00000 6211 00 139 eax1 sp|0 get offset of stack frame 000115 aa 6 00067 7411 00 140 stx1 sp|qmask 000116 aa 6 00067 3211 00 141 lcx1 sp|qmask get - offset 000117 aa 6 00022 3501 20 142 eppap sp|stack_frame.next_sp,* get ptr to extension 000120 aa 000040 6220 00 143 eax2 mod_extension_size 000121 aa 6 00023 0421 00 144 asx2 sp|stack_frame.next_sp+1 000122 aa 6 00025 0421 11 145 asx2 sp|stack_header.stack_end_ptr+1,1 146 " 147 " compute float temp = op2/op3 148 " 000123 aa 1 00120 2275 20 149 dv3d (pr,id),(pr,id),(pr) 000124 aa 2 00002 0001 00 150 arg bp|2 000125 aa 2 00001 0001 00 151 arg bp|1 000126 aa 000020 000077 152 desc9fl ap|16,63 000127 aa 0 00300 3005 00 153 mvn (pr),(pr),round 000130 aa 000020 000077 154 desc9fl ap|16,63 000131 aa 000000 000075 155 desc9fl ap|0,61 156 " 157 " compute float temp = floor(op2/op3) 158 " 000132 aa 6 00056 7541 00 159 sti sp|indicators save indicators (and sign of op2/op3) 000133 aa 004000 6340 07 160 ldi =o4000,dl prevent overflow fault 161 " 000134 aa 0 00100 3005 00 162 mvn (pr),(pr) 000135 aa 000000 000075 163 desc9fl ap|0,61 000136 aa 000020 010074 164 desc9ls ap|16,60,0 000137 0a 000154 6170 00 165 tov mod1 000140 aa 6 00056 6341 00 166 ldi sp|indicators get sign of op2/op3 000141 0a 000151 6050 00 167 tpl mod2 000142 aa 0 00100 3035 00 168 cmpn (pr),(pr) 000143 aa 000000 000075 169 desc9fl ap|0,61 000144 aa 000020 010074 170 desc9ls ap|16,60,0 000145 0a 000151 6000 00 171 tze mod2 172 " 000146 aa 000100 2034 00 173 sb2d (0),(pr) 000147 0a 000026 010002 174 desc9ls one,2,0 000150 aa 000020 010074 175 desc9ls ap|16,60,0 176 " 000151 aa 0 00300 3005 00 177 mod2: mvn (pr),(pr),round 000152 aa 000020 010074 178 desc9ls ap|16,60,0 000153 aa 000000 000075 179 desc9fl ap|0,61 180 " 181 " compute float temp = op3 * floor(op2/op3) 182 " 000154 aa 0 00300 2065 20 183 mod1: mp2d (pr,id),(pr),round 000155 aa 2 00002 0001 00 184 arg bp|2 000156 aa 000000 000075 185 desc9fl ap|0,61 186 " 187 " subtract from op2 to get answer 188 " 000157 0a 000171 7160 05 189 xec sb3d,al 000160 aa 000000 000075 190 desc9fl ap|0,61 000161 aa 2 00001 0001 00 191 arg bp|1 000162 aa 2 00000 0001 00 192 arg bp|0 193 " 194 " free work space and return 195 " 000163 aa 777740 6220 00 196 eax2 -mod_extension_size 000164 aa 6 00023 0421 00 197 asx2 sp|stack_frame.next_sp+1 000165 aa 6 00025 0421 11 198 asx2 sp|stack_header.stack_end_ptr+1,1 000166 4a 4 00010 3501 20 199 eppap |[operator_table] 000167 aa 6 00056 6341 00 200 ldi sp|indicators 000170 aa 6 00046 7101 70 201 tra sp|tbp,*0 202 " 000171 aa 1 20320 2235 00 203 sb3d: sb3d (pr),(pr,id),(pr,id),round 000172 aa 1 20120 2235 00 204 sb3d (pr),(pr,id),(pr,id) 205 " 000173 206 setup: 000173 aa 2 00000 2351 00 207 lda bp|0 get type of target 000174 aa 000014 7310 00 208 ars 12 "" 000175 aa 000001 3750 07 209 ana 1,dl " 000176 aa 2 00001 2361 00 210 ldq bp|1 get length of source 000177 aa 000077 3760 07 211 anq 63,dl " 000200 aa 000000 7100 11 212 tra 0,1 213 end NO LITERALS NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000202 5a 000003 000000 000203 5a 000051 600000 000204 aa 000000 000000 000205 55 000011 000002 000206 5a 000002 400003 000207 55 000006 000011 000210 aa 010 144 145 143 000211 aa 137 157 160 163 000212 aa 137 000 000 000 000213 55 000015 000003 000214 0a 000103 400000 000215 55 000014 000003 000216 aa 003 155 157 144 mod 000217 55 000022 000011 000220 0a 000067 400000 000221 55 000020 000003 000222 aa 004 163 151 147 sign 000223 aa 156 000 000 000 000224 55 000027 000015 000225 0a 000014 400000 000226 55 000025 000003 000227 aa 005 146 154 157 floor 000230 aa 157 162 000 000 000231 55 000034 000022 000232 0a 000002 400000 000233 55 000032 000003 000234 aa 004 143 145 151 ceil 000235 aa 154 000 000 000 000236 55 000042 000027 000237 0a 000000 400000 000240 55 000037 000003 000241 aa 010 164 162 165 truncate 000242 aa 156 143 141 164 000243 aa 145 000 000 000 000244 55 000002 000034 000245 6a 000000 400002 000246 55 000045 000003 000247 aa 014 163 171 155 symbol_table 000250 aa 142 157 154 137 000251 aa 164 141 142 154 000252 aa 145 000 000 000 DEFINITIONS HASH TABLE 000253 aa 000000 000015 000254 5a 000034 000000 000255 aa 000000 000000 000256 aa 000000 000000 000257 aa 000000 000000 000260 5a 000022 000000 000261 aa 000000 000000 000262 5a 000042 000000 000263 aa 000000 000000 000264 aa 000000 000000 000265 aa 000000 000000 000266 5a 000027 000000 000267 5a 000011 000000 000270 5a 000015 000000 EXTERNAL NAMES 000271 aa 016 157 160 145 operator_table 000272 aa 162 141 164 157 000273 aa 162 137 164 141 000274 aa 142 154 145 000 000275 aa 016 160 154 061 pl1_operators_ 000276 aa 137 157 160 145 000277 aa 162 141 164 157 000300 aa 162 163 137 000 NO TRAP POINTER WORDS TYPE PAIR BLOCKS 000301 aa 000004 000000 000302 55 000073 000067 000303 aa 000001 000000 000304 aa 000000 000000 INTERNAL EXPRESSION WORDS 000305 5a 000077 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 000202 000000 000002 aa 000000 000000 000003 aa 000000 000000 000004 aa 000000 000000 000005 aa 000000 000000 000006 22 000010 000012 000007 a2 000000 000000 000010 9a 777770 0000 46 pl1_operators_|operator_table 000011 5a 000103 0000 00 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 254022 662745 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 000200 000020 aa 000000 000134 000021 aa 000155 000151 000022 aa 000170 000134 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 000003 000066 aa 000102 000037 000067 aa 175453 020007 000070 aa 000000 117547 000071 aa 176721 600000 000072 aa 000112 000041 000073 aa 052721 247134 000074 aa 000000 105272 000075 aa 317215 400000 000076 aa 000123 000042 000077 aa 147777 464111 000100 aa 000000 115000 000101 aa 507463 000000 000102 aa 076163 160145 >spec>install>1110>dec_ops_.alm 000103 aa 143076 151156 000104 aa 163164 141154 000105 aa 154076 061061 000106 aa 061060 076144 000107 aa 145143 137157 000110 aa 160163 137056 000111 aa 141154 155040 000112 aa 076154 144144 >ldd>include>stack_frame.incl.alm 000113 aa 076151 156143 000114 aa 154165 144145 000115 aa 076163 164141 000116 aa 143153 137146 000117 aa 162141 155145 000120 aa 056151 156143 000121 aa 154056 141154 000122 aa 155040 040040 000123 aa 076154 144144 >ldd>include>stack_header.incl.alm 000124 aa 076151 156143 000125 aa 154165 144145 000126 aa 076163 164141 000127 aa 143153 137150 000130 aa 145141 144145 000131 aa 162056 151156 000132 aa 143154 056141 000133 aa 154155 040040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number 12 ad2d dec_ops_: 41, 46. 1170 call_offset stack_header: 80. 2 ceil dec_ops_: 35, 36. 1174 entry_offset stack_header: 84. 14 floor dec_ops_: 49, 50. 56 indicators dec_ops_: 27, 71, 91, 159, 166, 200. 103 mod dec_ops_: 121, 122. 154 mod1 dec_ops_: 165, 183. 151 mod2 dec_ops_: 167, 171, 177. 40 mod_extension_size dec_ops_: 25, 143, 196. 65 move dec_ops_: 95, 102, 131. 63 mv_temp dec_ops_: 88, 100. 114 m_start dec_ops_: 130, 138. 26 one dec_ops_: 42, 56, 63, 174. operator_table dec_ops_: 199. pl1_operators_ dec_ops_: 199. 1171 push_offset stack_header: 81. 67 qmask dec_ops_: 28, 140, 141. 55 restore dec_ops_: 91, 98. 1173 return_no_pop_offset stack_header: 83. 1172 return_offset stack_header: 82. 24 sb2d dec_ops_: 55, 60. 171 sb3d dec_ops_: 189, 203. 173 setup dec_ops_: 66, 123, 206. 67 sign dec_ops_: 105, 106. 73 stach_header.trace_top_ptr stack_header: 62. 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 dec_ops_: 142, 144, 197, 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 stack_frame: 8. 40 stack_frame.regs stack_frame: 22. 24 stack_frame.return_ptr 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: 59. 32 stack_header.bar_mode_sp stack_header: 42. 36 stack_header.call_op_ptr stack_header: 44. 10 stack_header.clr_ptr stack_header: 27. 6 stack_header.combined_stat_ptr stack_header: 25. 4 stack_header.cpm_data_ptr stack_header: 24. 13 stack_header.cpm_enabled stack_header: 32. 13 stack_header.cur_lot_size stack_header: 31. 64 stack_header.ect_ptr stack_header: 58. 46 stack_header.entry_op_ptr stack_header: 49. 70 stack_header.heap_header_ptr stack_header: 60. 74 stack_header.in_trace stack_header: 63. 52 stack_header.isot_ptr stack_header: 52. 26 stack_header.lot_ptr stack_header: 39. 12 stack_header.main_proc_invoked stack_header: 29. 12 stack_header.max_lot_size stack_header: 28. 20 stack_header.parent_ptr stack_header: 36. 34 stack_header.pl1_operators_ptr stack_header: 43. 40 stack_header.push_op_ptr stack_header: 46. 42 stack_header.return_op_ptr stack_header: 47. 44 stack_header.ret_no_pop_op_ptr stack_header: 48. 62 stack_header.rnt_ptr stack_header: 57. 12 stack_header.run_unit_depth stack_header: 30. 54 stack_header.sct_ptr stack_header: 53. 30 stack_header.signal_ptr stack_header: 41. 22 stack_header.stack_begin_ptr stack_header: 37. 24 stack_header.stack_end_ptr dec_ops_: 145, 198, stack_header: 38. 14 stack_header.system_free_ptr stack_header: 33. 60 stack_header.sys_link_info_ptr stack_header: 56. 72 stack_header.trace_frames stack_header: 61. 50 stack_header.trans_op_tv_ptr stack_header: 51. 56 stack_header.unwinder_ptr stack_header: 54. 16 stack_header.user_free_ptr stack_header: 34. 100 stack_header_end stack_header: 64. 100 s_neg dec_ops_: 110, 116. 76 s_zero dec_ops_: 111, 114. 46 tbp dec_ops_: 26, 33, 38, 40, 44, 52, 54, 58, 113, 115, 117, 134, 201. 0 trace_frames.count stack_header: 69. 1 trace_frames.top_ptr stack_header: 70. 27 trunc dec_ops_: 32, 37, 51, 65. 57 trunc1 dec_ops_: 82, 94. 0 truncate dec_ops_: 30, 31. 551 tv_offset stack_header: 75, 80, 81, 82, 83, 84. 102 zero dec_ops_: 69, 108, 119, 128. 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