COMPILATION LISTING OF SEGMENT db_fnp_dumps_ Compiled by: Multics PL/I Compiler, Release 27d, of October 11, 1982 Compiled at: Honeywell LISD Phoenix, System M Compiled on: 11/15/82 1616.0 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* * Copyright (c) 1972 by Massachusetts Institute of * 6* * Technology and Honeywell Information Systems, Inc. * 7* * * 8* *********************************************************** */ 9 10 11 /* DB_FNP_DUMPS_ - Contains entries used by debug_fnp for finding various things in FNP dumps */ 12 13 /* Written February 1977 by Larry Johnson */ 14 15 /* format: style4,delnl,insnl,^ifthendo */ 16 db_fnp_dumps_: 17 proc; 18 19 /* Arguments */ 20 21 dcl arg_corep ptr; /* Address of the dump */ 22 dcl arg_fnp fixed bin; 23 dcl arg_cmd_infop ptr; 24 dcl arg_expr_infop ptr; 25 26 /* Automatic */ 27 28 dcl corep ptr; 29 dcl fnp fixed bin; 30 dcl code fixed bin (35); 31 dcl edited_addr char (24) var; 32 dcl mem_word (1) bit (18) unal; 33 dcl modnum fixed bin; 34 dcl modname char (12); 35 dcl i fixed bin; 36 dcl rp ptr; 37 dcl edit_ind char (128) var; 38 39 dcl 1 fault_data unal, /* Format of fault data in dump */ 40 2 ic bit (18), 41 2 ir, 42 3 indicators bit (8), 43 3 pad bit (10), 44 2 a bit (18), 45 2 q bit (18), 46 2 x1 bit (18), 47 2 x2 bit (18), 48 2 x3 bit (18), 49 2 er bit (18), 50 2 et bit (18), 51 2 type fixed bin (17), 52 2 name bit (18); 53 54 dcl 1 die_word unal, 55 2 modnum bit (4), 56 2 opcode bit (5), 57 2 reason bit (9); 58 59 dcl msg_offset (1) bit (18) aligned based; /* Table of offsets in od355_msgs$ */ 60 61 /* Constants */ 62 63 dcl fault_names (0:10) char (16) int static options (constant) 64 init ("power off", "power on", "memory parity", "illegal opcode", "overflow", "store", "divide", "illegal int", 65 "extra int", "iom", "console abort"); 66 67 dcl indicator_names (8) char (20) var int static options (constant) 68 init ("zero", "negative", "carry", "overflow", "interrupt inhibit", "parity inhibit", "overflow inhibit", "parity"); 69 70 dcl die_op bit (5) int static options (constant) init ("01001"b); 71 /* Opcode used to cause crashes */ 72 73 /* Static */ 74 75 dcl constants_setup bit (1) int static init ("0"b); 76 dcl crreg fixed bin int static; /* Address of saved machine conditions */ 77 78 /* External stuff */ 79 80 dcl ioa_ entry options (variable); 81 dcl db_fnp_util_$edit_module_addr entry (ptr, fixed bin, fixed bin, char (*) var, fixed bin (35)); 82 dcl db_fnp_sym_util_$get_value entry (char (*)) returns (fixed bin); 83 dcl db_fnp_memory_$fetch entry (ptr, fixed bin, fixed bin, fixed bin, ptr, fixed bin (35)); 84 dcl com_err_ entry options (variable); 85 86 dcl od355_msgs$ ext; 87 dcl 1 od355_msgs$die_list (8) ext aligned, 88 2 name char (12), 89 2 offset fixed bin; 90 91 dcl (addr, bin, length, ptr, string, substr) builtin; 92 93 /* Entry to print reason for crash */ 94 95 96 why: 97 entry (arg_corep, arg_fnp, arg_cmd_infop, arg_expr_infop); 98 99 call setup; 100 101 call read_fault_data; 102 103 if fault_data.ic = "0"b 104 then do; 105 call ioa_ ("No fault occurred."); 106 return; 107 end; 108 109 call edit (fault_data.ic); 110 if fault_data.type >= lbound (fault_names, 1) & fault_data.type <= hbound (fault_names, 1) 111 then call ioa_ ("^a fault at ^o ^a", fault_names (fault_data.type), bin (fault_data.ic), edited_addr); 112 else call ioa_ ("Unknown fault (type ^o) at ^o ^a", fault_data.type, bin (fault_data.ic), edited_addr); 113 114 if fault_data.type ^= 3 115 then return; /* Not illegal opcode */ 116 call fetch (bin (fault_data.ic) - 1, 1, addr (mem_word)); 117 /* Read opcode causing the fault */ 118 string (die_word) = mem_word (1); 119 if die_word.opcode ^= die_op 120 then return; /* Not deliberate */ 121 122 modnum = bin (die_word.modnum); 123 modname = od355_msgs$die_list.name (modnum); /* Name of module causing fault */ 124 125 rp = ptr (addr (od355_msgs$), od355_msgs$die_list.offset (modnum)); 126 /* Address of list of offsets to reasons */ 127 rp = ptr (addr (od355_msgs$), rp -> msg_offset (bin (die_word.reason))); 128 call ioa_ ("^a: ^A", modname, rp); 129 return; 130 131 /* Entry to print registers */ 132 133 regs: 134 entry (arg_corep, arg_fnp, arg_cmd_infop, arg_expr_infop); 135 136 call setup; 137 138 call read_fault_data; 139 140 call edit (fault_data.ic); 141 call ioa_ ("ic ^.3b ^a", fault_data.ic, edited_addr); 142 call ioa_ ("aq ^.3b ^.3b", fault_data.a, fault_data.q); 143 edit_ind = ""; 144 if fault_data.ir.indicators ^= "0"b 145 then do; 146 do i = 1 to 8; 147 if substr (fault_data.ir.indicators, i, 1) 148 then do; /* Found one one */ 149 if length (edit_ind) = 0 150 then edit_ind = "("; 151 else edit_ind = edit_ind || ","; 152 edit_ind = edit_ind || indicator_names (i); 153 end; 154 end; 155 edit_ind = edit_ind || ")"; 156 end; 157 call ioa_ ("ir ^.3b ^a", string (fault_data.ir), edit_ind); 158 call edit (fault_data.x1); 159 call ioa_ ("x1 ^.3b ^a", fault_data.x1, edited_addr); 160 call edit (fault_data.x2); 161 call ioa_ ("x2 ^.3b ^a", fault_data.x2, edited_addr); 162 call edit (fault_data.x3); 163 call ioa_ ("x3 ^.3b ^a", fault_data.x3, edited_addr); 164 call ioa_ ("er ^.3b", fault_data.er); 165 call ioa_ ("et ^.3b", fault_data.et); 166 return; 167 168 169 /* Procedure to edit an address */ 170 171 edit: 172 proc (b); 173 174 dcl b bit (18); 175 dcl i fixed bin; 176 dcl s char (32) var; 177 178 i = bin (substr (b, 4)); 179 call db_fnp_util_$edit_module_addr (corep, fnp, i, s, code); 180 if code ^= 0 181 then s = ""; 182 if s = "" 183 then edited_addr = ""; 184 else edited_addr = "(" || s || ")"; 185 return; 186 187 end edit; 188 189 /* Setup arguments */ 190 191 setup: 192 proc; 193 194 corep = arg_corep; 195 fnp = arg_fnp; 196 cmd_infop = arg_cmd_infop; 197 expr_infop = arg_expr_infop; 198 199 envp = cmd_info.envp; 200 if ^env.dump_sw /* this is pointless without a dump */ 201 then do; 202 call com_err_ (0, "debug_fnp", "not looking at a dump."); 203 go to error_return; 204 end; 205 206 if constants_setup 207 then return; 208 209 crreg = db_fnp_sym_util_$get_value (".crreg"); 210 constants_setup = "1"b; 211 212 return; 213 214 end setup; 215 216 /* Procedure to fetch the fault data */ 217 218 read_fault_data: 219 proc; 220 221 dcl i fixed bin; 222 dcl mem_word (1) bit (18); 223 224 call fetch (crreg, 1, addr (mem_word)); /* Get pointer to register save area */ 225 i = divide (length (unspec (fault_data)), 18, 17, 0); 226 /* Number of words to read */ 227 call fetch (bin (mem_word (1)), i, addr (fault_data)); 228 return; 229 230 end read_fault_data; 231 232 /* Read some FNP memory */ 233 234 fetch: 235 proc (a, n, p); 236 237 dcl (a, n) fixed bin; 238 dcl p ptr; 239 240 call db_fnp_memory_$fetch (corep, fnp, a, n, p, code); 241 if code = 0 242 then return; 243 call com_err_ (code, "", "Unable to read location ^o.", a); 244 go to error_return; 245 246 end fetch; 247 248 error_return: 249 cmd_info.flush = "1"b; 250 return; 251 1 1 /* Begin include file ..... debug_fnp_data.incl.pl1 */ 1 2 1 3 /* Describes various structures used by the debug_fnp command */ 1 4 1 5 /* Written February 1977 by Larry Johnson */ 1 6 1 7 /* Structures describing a symbol table used by the debug_fnp command, 1 8* to find values for common FNP symbols. */ 1 9 1 10 dcl db_fnp_symbols_$db_fnp_symbols_ ext; 1 11 1 12 dcl symbol_tablep ptr; 1 13 1 14 dcl 1 symbol_table aligned based (symbol_tablep), 1 15 2 cnt fixed bin, /* Number of entries */ 1 16 2 maxcnt fixed bin, /* Max count */ 1 17 2 entry (symbol_table.cnt) unal, 1 18 3 one_symbol like sym unal; 1 19 1 20 dcl symp ptr; /* Pointer to one symbol */ 1 21 1 22 dcl 1 sym unal based (symp), 1 23 2 name char (6), 1 24 2 value fixed bin (17), 1 25 2 len fixed bin (17), /* Number of words */ 1 26 2 reloc fixed bin (17), 1 27 2 type fixed bin (17), 1 28 2 flag_mem char (6), /* If non blank, name of word in which this is a flag */ 1 29 2 explain bit (18), /* Offset to explanation for symbol */ 1 30 2 pad bit (18); 1 31 1 32 dcl exptextp ptr; 1 33 1 34 dcl 1 exptext aligned based (exptextp), /* Symbol explanation entry */ 1 35 2 len fixed bin (8) unal, 1 36 2 data char (exptext.len) unal; 1 37 1 38 /* Values for sym.reloc, which is relocation required to find the symbol */ 1 39 1 40 dcl (reloc_abs init (0), /* Value is absolute */ 1 41 reloc_tib init (1), /* Value is relative to current tib addr */ 1 42 reloc_hwcm init (2), /* Value is relative to current hwcm */ 1 43 reloc_sfcm init (3), /* Value is relative to software comm region */ 1 44 reloc_meters init (4)) /* Value is relative to tib meters */ 1 45 int static options (constant); 1 46 1 47 /* Values for sym.type, which is the mode to be used in displaying symbol */ 1 48 1 49 dcl (type_oct init (0), /* Octal, default for most symbols */ 1 50 type_char init (1), /* Ascii characters */ 1 51 type_addr init (2), /* Address to be converted to mod|offset */ 1 52 type_clock init (3), /* Multics clock value */ 1 53 type_inst init (4), /* Machine instruction */ 1 54 type_op init (5), /* Interpreter opblock format */ 1 55 type_dec init (6), /* Decimal */ 1 56 type_bit init (7), /* In bits */ 1 57 type_ebcdic init (8)) /* 8-bit ebcdic characters */ 1 58 int static options (constant); 1 59 1 60 dcl long_type_names (0:8) char (12) int static options (constant) init ( 1 61 "octal", "character", "address", "clock", "instruction", "opblock", "decimal", "bit", "ebcdic"); 1 62 dcl short_type_names (0:8) char (4) int static options (constant) init ( 1 63 "oct", "ch", "addr", "ck", "inst", "op", "dec", "bit", "ebc"); 1 64 1 65 1 66 /* Structure of suplmental data used in evaluating expressions */ 1 67 1 68 dcl expr_infop ptr; 1 69 1 70 dcl 1 expr_info aligned based (expr_infop), 1 71 2 flags, 1 72 3 star_known bit (1) unal, /* Value of "*" is known */ 1 73 3 tib_known bit (1) unal, /* TIB addresses may be used */ 1 74 3 hwcm_known bit (1) unal, /* HWCM address may be used */ 1 75 3 sfcm_known bit (1) unal, /* SFCM address may be used */ 1 76 3 pad bit (32) unal, 1 77 2 star_addr fixed bin, /* Value of "*" */ 1 78 2 tib_addr fixed bin, /* Address of TIB */ 1 79 2 hwcm_addr fixed bin, /* Address of HWCM */ 1 80 2 sfcm_addr fixed bin, /* Address of SFCM */ 1 81 2 type fixed bin, /* Expression type (mode for printing) */ 1 82 2 len fixed bin, /* Implied length of expression */ 1 83 2 user_tablep ptr; /* Pointer to a user symbol table */ 1 84 1 85 1 86 /* Structure of opcode table of machine instructions */ 1 87 1 88 dcl db_fnp_opcodes_$ ext; 1 89 1 90 dcl optablep ptr; 1 91 1 92 dcl 1 optable aligned based (optablep), 1 93 2 cnt fixed bin, 1 94 2 entry (optable.cnt) unal, 1 95 3 one_op like op; 1 96 1 97 dcl opp ptr; 1 98 1 99 dcl 1 op unal based (opp), 1 100 2 name char (6), /* The mneumonic */ 1 101 2 code bit (12), /* The opcode */ 1 102 2 mask bit (12), /* Mask that says where the opcode is */ 1 103 2 type fixed bin (11), /* Type of display required */ 1 104 2 pad bit (18); 1 105 1 106 /* Values for op.type are: 1 107* 0 - storage reference 1 108* 1 - non-storage reference (immediate), 1 109* 2 - non-storage reference (iacxn only), 1 110* 3 - non-storage reference (shifts), 1 111* 4 - non-storage reference (no operands) */ 1 112 1 113 1 114 /* Stuctures used while parsing commands into operands */ 1 115 1 116 dcl cmd_infop ptr; 1 117 1 118 dcl 1 cmd_info aligned based (cmd_infop), 1 119 2 inbuf char (256), /* For reading lines */ 1 120 2 opbuf char (256), /* Used for operand in undoubling quotes */ 1 121 2 commandp ptr, /* Address of unparsed part of command */ 1 122 2 commandl fixed bin, /* Length of unparsed part */ 1 123 2 operandp ptr, /* Address of current operand */ 1 124 2 operandl fixed bin, /* And its length */ 1 125 2 error bit (1), /* Set if error parsing operand */ 1 126 2 endline bit (1), /* Set if no more operands on line */ 1 127 2 opstring bit (1), /* Set if operand was unquoted string */ 1 128 2 flush bit (1), /* If set, rest of input line will be ignored */ 1 129 2 envp ptr; /* Pointer to the debug_fnp environment structure */ 1 130 1 131 dcl command char (cmd_info.commandl) based (cmd_info.commandp); 1 132 dcl operand char (cmd_info.operandl) based (cmd_info.operandp); 1 133 1 134 /* The following structure describes the current debug_fnp environment. */ 1 135 /* It specifies whether we are working on a dump, fnp, core image, etc. */ 1 136 1 137 dcl envp ptr; 1 138 1 139 dcl 1 env aligned based (envp), 1 140 2 corep ptr, /* Ptr to current dump or core-image. Null means live FNP */ 1 141 2 fnp fixed bin, /* Current fnp number */ 1 142 2 dump_dir char (168) unal, /* Directory where dumps are found */ 1 143 2 dir char (168) unal, /* Directory for current dump or core image */ 1 144 2 ename char (32) unal, /* Ename for current dump or core image */ 1 145 2 tty_name char (32), /* Name of current channel */ 1 146 2 segp ptr, /* Pointer to base of current segment */ 1 147 2 flags unal, 1 148 3 fnps_configured bit (8), /* Says which FNP's appear in config deck */ 1 149 3 fnp_sw bit (1), /* 1 if currently working on fnp */ 1 150 3 image_sw bit (1), /* 1 if currently working on a core-image */ 1 151 3 dump_sw bit (1), /* 1 if current working on a dump */ 1 152 3 fdump_sw bit (1), /* 1 if current dump is a fdump */ 1 153 3 pad bit (24), 1 154 2 dump_time fixed bin (71); /* Clock time dump occured */ 1 155 1 156 /* Structure of data defining table of interpreter opblock names */ 1 157 1 158 dcl db_fnp_opblocks_$ ext; 1 159 1 160 dcl opblock_tablep ptr; 1 161 1 162 dcl 1 opblock_table aligned based (opblock_tablep), 1 163 2 cnt fixed bin, 1 164 2 name (0:opblock_table.cnt) char (6) unal; 1 165 1 166 /* End include file ..... debug_fnp_data.incl.pl1 */ 252 253 end db_fnp_dumps_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/15/82 1501.8 db_fnp_dumps_.pl1 >dumps>old>recomp>db_fnp_dumps_.pl1 252 1 06/19/81 2115.0 debug_fnp_data.incl.pl1 >ldd>include>debug_fnp_data.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. a parameter fixed bin(17,0) dcl 237 in procedure "fetch" set ref 234 240* 243* a 1 000165 automatic bit(18) level 2 in structure "fault_data" packed unaligned dcl 39 in procedure "db_fnp_dumps_" set ref 142* addr builtin function dcl 91 ref 116 116 125 127 224 224 227 227 arg_cmd_infop parameter pointer dcl 23 ref 96 133 196 arg_corep parameter pointer dcl 21 ref 96 133 194 arg_expr_infop parameter pointer dcl 24 ref 96 133 197 arg_fnp parameter fixed bin(17,0) dcl 22 ref 96 133 195 b parameter bit(18) unaligned dcl 174 ref 171 178 bin builtin function dcl 91 ref 110 110 112 112 116 122 127 178 227 227 cmd_info based structure level 1 dcl 1-118 cmd_infop 000176 automatic pointer dcl 1-116 set ref 196* 199 248 code 000103 automatic fixed bin(35,0) dcl 30 set ref 179* 180 240* 241 243* com_err_ 000022 constant entry external dcl 84 ref 202 243 constants_setup 000010 internal static bit(1) initial unaligned dcl 75 set ref 206 210* corep 000100 automatic pointer dcl 28 set ref 179* 194* 240* crreg 000011 internal static fixed bin(17,0) dcl 76 set ref 209* 224* db_fnp_memory_$fetch 000020 constant entry external dcl 83 ref 240 db_fnp_sym_util_$get_value 000016 constant entry external dcl 82 ref 209 db_fnp_util_$edit_module_addr 000014 constant entry external dcl 81 ref 179 die_op constant bit(5) initial unaligned dcl 70 ref 119 die_word 000173 automatic structure level 1 packed unaligned dcl 54 set ref 118* dump_sw 152(10) based bit(1) level 3 packed unaligned dcl 1-139 ref 200 edit_ind 000124 automatic varying char(128) dcl 37 set ref 143* 149 149* 151* 151 152* 152 155* 155 157* edited_addr 000104 automatic varying char(24) dcl 31 set ref 110* 112* 141* 159* 161* 163* 182* 184* env based structure level 1 dcl 1-139 envp 214 based pointer level 2 in structure "cmd_info" dcl 1-118 in procedure "db_fnp_dumps_" ref 199 envp 000200 automatic pointer dcl 1-137 in procedure "db_fnp_dumps_" set ref 199* 200 er 3(18) 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 164* et 4 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 165* expr_infop 000174 automatic pointer dcl 1-68 set ref 197* fault_data 000165 automatic structure level 1 packed unaligned dcl 39 set ref 225 227 227 fault_names 000060 constant char(16) initial array unaligned dcl 63 set ref 110 110 110* flags 152 based structure level 2 packed unaligned dcl 1-139 flush 212 based bit(1) level 2 dcl 1-118 set ref 248* fnp 000102 automatic fixed bin(17,0) dcl 29 set ref 179* 195* 240* i 000236 automatic fixed bin(17,0) dcl 221 in procedure "read_fault_data" set ref 225* 227* i 000210 automatic fixed bin(17,0) dcl 175 in procedure "edit" set ref 178* 179* i 000120 automatic fixed bin(17,0) dcl 35 in procedure "db_fnp_dumps_" set ref 146* 147 152* ic 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 103 109* 110 110 112 112 116 140* 141* indicator_names 000000 constant varying char(20) initial array dcl 67 ref 152 indicators 0(18) 000165 automatic bit(8) level 3 packed unaligned dcl 39 set ref 144 147 ioa_ 000012 constant entry external dcl 80 ref 105 110 112 128 141 142 157 159 161 163 164 165 ir 0(18) 000165 automatic structure level 2 packed unaligned dcl 39 set ref 157 157 length builtin function dcl 91 ref 149 225 mem_word 000113 automatic bit(18) array unaligned dcl 32 in procedure "db_fnp_dumps_" set ref 116 116 118 mem_word 000237 automatic bit(18) array unaligned dcl 222 in procedure "read_fault_data" set ref 224 224 227 227 modname 000115 automatic char(12) unaligned dcl 34 set ref 123* 128* modnum 000114 automatic fixed bin(17,0) dcl 33 in procedure "db_fnp_dumps_" set ref 122* 123 125 modnum 000173 automatic bit(4) level 2 in structure "die_word" packed unaligned dcl 54 in procedure "db_fnp_dumps_" set ref 122 msg_offset based bit(18) array dcl 59 ref 127 n parameter fixed bin(17,0) dcl 237 set ref 234 240* name 000026 external static char(12) array level 2 dcl 87 ref 123 od355_msgs$ 000024 external static fixed bin(17,0) dcl 86 set ref 125 127 od355_msgs$die_list 000026 external static structure array level 1 dcl 87 offset 3 000026 external static fixed bin(17,0) array level 2 dcl 87 ref 125 op based structure level 1 packed unaligned dcl 1-99 opcode 0(04) 000173 automatic bit(5) level 2 packed unaligned dcl 54 set ref 119 p parameter pointer dcl 238 set ref 234 240* ptr builtin function dcl 91 ref 125 127 q 1(18) 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 142* reason 0(09) 000173 automatic bit(9) level 2 packed unaligned dcl 54 set ref 127 rp 000122 automatic pointer dcl 36 set ref 125* 127* 127 128* s 000211 automatic varying char(32) dcl 176 set ref 179* 180* 182 184 string builtin function dcl 91 set ref 118* 157 157 substr builtin function dcl 91 ref 147 178 sym based structure level 1 packed unaligned dcl 1-22 type 4(18) 000165 automatic fixed bin(17,0) level 2 packed unaligned dcl 39 set ref 110 110 110 112* 114 x1 2 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 158* 159* x2 2(18) 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 160* 161* x3 3 000165 automatic bit(18) level 2 packed unaligned dcl 39 set ref 162* 163* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. command based char unaligned dcl 1-131 db_fnp_opblocks_$ external static fixed bin(17,0) dcl 1-158 db_fnp_opcodes_$ external static fixed bin(17,0) dcl 1-88 db_fnp_symbols_$db_fnp_symbols_ external static fixed bin(17,0) dcl 1-10 expr_info based structure level 1 dcl 1-70 exptext based structure level 1 dcl 1-34 exptextp automatic pointer dcl 1-32 long_type_names internal static char(12) initial array unaligned dcl 1-60 opblock_table based structure level 1 dcl 1-162 opblock_tablep automatic pointer dcl 1-160 operand based char unaligned dcl 1-132 opp automatic pointer dcl 1-97 optable based structure level 1 dcl 1-92 optablep automatic pointer dcl 1-90 reloc_abs internal static fixed bin(17,0) initial dcl 1-40 reloc_hwcm internal static fixed bin(17,0) initial dcl 1-40 reloc_meters internal static fixed bin(17,0) initial dcl 1-40 reloc_sfcm internal static fixed bin(17,0) initial dcl 1-40 reloc_tib internal static fixed bin(17,0) initial dcl 1-40 short_type_names internal static char(4) initial array unaligned dcl 1-62 symbol_table based structure level 1 dcl 1-14 symbol_tablep automatic pointer dcl 1-12 symp automatic pointer dcl 1-20 type_addr internal static fixed bin(17,0) initial dcl 1-49 type_bit internal static fixed bin(17,0) initial dcl 1-49 type_char internal static fixed bin(17,0) initial dcl 1-49 type_clock internal static fixed bin(17,0) initial dcl 1-49 type_dec internal static fixed bin(17,0) initial dcl 1-49 type_ebcdic internal static fixed bin(17,0) initial dcl 1-49 type_inst internal static fixed bin(17,0) initial dcl 1-49 type_oct internal static fixed bin(17,0) initial dcl 1-49 type_op internal static fixed bin(17,0) initial dcl 1-49 NAMES DECLARED BY EXPLICIT CONTEXT. db_fnp_dumps_ 000262 constant entry external dcl 16 edit 001117 constant entry internal dcl 171 ref 109 140 158 160 162 error_return 001113 constant label dcl 248 ref 203 244 fetch 001366 constant entry internal dcl 234 ref 116 224 227 read_fault_data 001333 constant entry internal dcl 218 ref 101 138 regs 000542 constant entry external dcl 133 setup 001226 constant entry internal dcl 191 ref 99 136 why 000275 constant entry external dcl 96 NAMES DECLARED BY CONTEXT OR IMPLICATION. divide builtin function ref 225 hbound builtin function ref 110 lbound builtin function ref 110 unspec builtin function ref 225 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1640 1670 1513 1650 Length 2076 1513 30 171 125 2 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME db_fnp_dumps_ 320 external procedure is an external procedure. edit internal procedure shares stack frame of external procedure db_fnp_dumps_. setup internal procedure shares stack frame of external procedure db_fnp_dumps_. read_fault_data internal procedure shares stack frame of external procedure db_fnp_dumps_. fetch internal procedure shares stack frame of external procedure db_fnp_dumps_. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 constants_setup db_fnp_dumps_ 000011 crreg db_fnp_dumps_ STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME db_fnp_dumps_ 000100 corep db_fnp_dumps_ 000102 fnp db_fnp_dumps_ 000103 code db_fnp_dumps_ 000104 edited_addr db_fnp_dumps_ 000113 mem_word db_fnp_dumps_ 000114 modnum db_fnp_dumps_ 000115 modname db_fnp_dumps_ 000120 i db_fnp_dumps_ 000122 rp db_fnp_dumps_ 000124 edit_ind db_fnp_dumps_ 000165 fault_data db_fnp_dumps_ 000173 die_word db_fnp_dumps_ 000174 expr_infop db_fnp_dumps_ 000176 cmd_infop db_fnp_dumps_ 000200 envp db_fnp_dumps_ 000210 i edit 000211 s edit 000236 i read_fault_data 000237 mem_word read_fault_data THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_cs cat_realloc_cs call_ext_out_desc call_ext_out return shorten_stack ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ db_fnp_memory_$fetch db_fnp_sym_util_$get_value db_fnp_util_$edit_module_addr ioa_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. od355_msgs$ od355_msgs$die_list LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 16 000261 96 000267 99 000302 101 000303 103 000304 105 000307 106 000323 109 000324 110 000326 112 000377 114 000434 116 000441 118 000455 119 000457 122 000464 123 000467 125 000501 127 000507 128 000515 129 000537 133 000540 136 000547 138 000550 140 000551 141 000553 142 000601 143 000627 144 000630 146 000633 147 000640 149 000644 151 000653 152 000662 154 000700 155 000702 157 000711 158 000741 159 000743 160 000771 161 000773 162 001022 163 001024 164 001052 165 001073 166 001112 248 001113 250 001116 171 001117 178 001121 179 001130 180 001160 182 001163 184 001172 185 001224 191 001226 194 001227 195 001233 196 001235 197 001240 199 001243 200 001245 202 001250 203 001304 206 001305 209 001311 210 001327 212 001332 218 001333 224 001334 225 001353 227 001356 228 001365 234 001366 240 001370 241 001412 243 001415 244 001446 ----------------------------------------------------------- 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