COMPILATION LISTING OF SEGMENT db_fnp_buffer_status_ Compiled by: Multics PL/I Compiler, Release 27d, of October 11, 1982 Compiled at: Honeywell LISD Phoenix, System M Compiled on: 11/15/82 1614.7 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 db_fnp_buffer_status_: proc (arg_corep, arg_fnp, arg_cmd_infop, arg_expr_infop); 7 8 /* Coded 7/25/78 by J. Stern */ 9 10 11 /* Arguments */ 12 13 dcl arg_corep ptr; 14 dcl arg_fnp fixed bin; 15 dcl arg_cmd_infop ptr; 16 dcl arg_expr_infop ptr; 17 18 19 /* Automatic */ 20 21 dcl corep ptr; 22 dcl fnp fixed bin; 23 dcl (total_icpl, total_dcpl, total_ocnt) fixed bin; 24 dcl (max_icpl, max_dcpl, max_ocnt) fixed bin; 25 dcl (max_icpl_line, max_dcpl_line, max_ocnt_line) fixed bin; 26 dcl (icpl, dcpl, ocnt, total) fixed bin; 27 dcl code fixed bin (35); 28 dcl (ttb_addr, tte_addr, tib_addr) fixed bin; 29 dcl line fixed bin; 30 dcl (n_free, n_small) fixed bin; 31 dcl ttbx fixed bin; 32 dcl brief_sw bit (1) aligned; 33 dcl ttb_temp (0:599) fixed bin (17) unal; 34 dcl temp (0:99) fixed bin (17) unal; 35 36 /* Internal static */ 37 38 dcl have_symbols bit (1) aligned int static init ("0"b); 39 dcl (crnbf, crnbs, crttb, crtte) fixed bin int static; 40 dcl (t_icpl, t_dcpl, t_ocnt, t_sfcm, t_line) fixed bin int static; 41 dcl (sf_ib0, sf_ib1) fixed bin int static; 42 dcl (tib_words_needed, sfcm_words_needed) fixed bin int static; 43 44 45 /* Constants */ 46 47 dcl whoami char (15) int static options (constant) init ("db_fnp_analyze_"); 48 49 50 /* Builtins */ 51 52 dcl (addr, null, divide, max, rtrim, substr) builtin; 53 54 55 /* Entries */ 56 57 dcl com_err_ entry options (variable); 58 dcl ioa_ entry options (variable); 59 dcl ioa_$rsnnl entry options (variable); 60 dcl db_fnp_sym_util_$get_value entry (char (*)) returns (fixed bin); 61 dcl db_fnp_memory_$fetch entry (ptr, fixed bin, fixed bin, fixed bin, ptr, fixed bin (35)); 62 dcl db_fnp_reader_$get_operand entry (ptr); 63 dcl db_fnp_util_$cv_line_no entry (ptr, fixed bin, fixed bin, char (*), fixed bin (35)); 64 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 */ 65 66 67 call setup; 68 69 brief_sw = "0"b; 70 call get_operand; 71 if ^cmd_info.endline 72 then do; 73 if operand = "-bf" | operand = "-brief" 74 then brief_sw = "1"b; 75 else do; 76 call com_err_ (0, "", "Invalid operand: ^a", operand); 77 go to error_exit; 78 end; 79 end; 80 81 total_icpl, total_dcpl, total_ocnt = 0; 82 max_icpl, max_icpl_line, max_dcpl, max_dcpl_line, max_ocnt, max_ocnt_line = 0; 83 84 call fetch_words (crttb, 1, addr (temp)); 85 ttb_addr = temp (0); 86 if ttb_addr = 0 87 then do; 88 call com_err_ (0, whoami, "No tib table address."); 89 go to error_exit; 90 end; 91 92 call fetch_words (crtte, 1, addr (temp)); 93 tte_addr = temp (0); 94 if tte_addr < ttb_addr 95 then do; 96 call com_err_ (0, whoami, "Invalid tib table end address. ^o", tte_addr); 97 go to error_exit; 98 end; 99 100 call fetch_words (crnbf, 1, addr (temp)); 101 n_free = temp (0); 102 call fetch_words (crnbs, 1, addr (temp)); 103 n_small = temp (0); 104 105 call ioa_ ("^d free", n_free); 106 call ioa_ ("^d small space", n_small); 107 108 call fetch_words (ttb_addr, tte_addr-ttb_addr, addr (ttb_temp)); 109 110 call ioa_ ("^/LINE^-INPUT^-DIA^-OUTPUT^-TOTAL^/"); 111 112 do ttbx = 0 to tte_addr-ttb_addr-1 by 2; 113 tib_addr = ttb_temp (ttbx); 114 call fetch_words (tib_addr, tib_words_needed, addr (temp)); 115 line = temp (t_line); 116 117 icpl = max (0, temp (t_icpl)); 118 dcpl = max (0, temp (t_dcpl)); 119 ocnt = max (0, temp (t_ocnt)); 120 121 if line > 512 122 then do; 123 call fetch_words ((temp (t_sfcm)), sfcm_words_needed, addr (temp)); 124 if temp (sf_ib0) ^= 0 then icpl = icpl + 1; 125 if temp (sf_ib1) ^= 0 then icpl = icpl + 1; 126 end; 127 128 total_icpl = total_icpl + icpl; 129 total_dcpl = total_dcpl + dcpl; 130 total_ocnt = total_ocnt + ocnt; 131 132 if brief_sw 133 then do; 134 if icpl > max_icpl 135 then do; 136 max_icpl = icpl; 137 max_icpl_line = line; 138 end; 139 if dcpl > max_dcpl 140 then do; 141 max_dcpl = dcpl; 142 max_dcpl_line = line; 143 end; 144 if ocnt > max_ocnt 145 then do; 146 max_ocnt = ocnt; 147 max_ocnt_line = line; 148 end; 149 end; 150 151 else do; 152 total = icpl + dcpl + ocnt; 153 if total ^= 0 154 then call ioa_ ("^a^-^3d^-^3d^-^3d^-^3d", chan_name (line), icpl, dcpl, ocnt, total); 155 end; 156 157 end; 158 159 total = total_icpl + total_dcpl + total_ocnt; 160 call ioa_ ("^/TOTAL^-^3d^-^3d^-^3d^-^3d", total_icpl, total_dcpl, total_ocnt, total); 161 162 if brief_sw & max_icpl+max_dcpl+max_ocnt > 0 163 then do; 164 call ioa_ ("^/Lines holding most buffers:"); 165 if max_icpl > 0 166 then call ioa_ ("^d input for line ^a", max_icpl, chan_name (max_icpl_line)); 167 if max_dcpl > 0 168 then call ioa_ ("^d dia for line ^a", max_dcpl, chan_name (max_dcpl_line)); 169 if max_ocnt > 0 170 then call ioa_ ("^d output for line ^a", max_ocnt, chan_name (max_ocnt_line)); 171 end; 172 173 return; 174 175 error_exit: 176 cmd_info.flush = "1"b; 177 178 setup: proc; 179 180 corep = arg_corep; 181 fnp = arg_fnp; 182 cmd_infop = arg_cmd_infop; 183 184 if ^have_symbols 185 then do; 186 crttb = db_fnp_sym_util_$get_value (".crttb"); 187 crtte = db_fnp_sym_util_$get_value (".crtte"); 188 crnbf = db_fnp_sym_util_$get_value (".crnbf"); 189 crnbs = db_fnp_sym_util_$get_value (".crnbs"); 190 191 t_icpl = db_fnp_sym_util_$get_value ("t.icpl"); 192 t_dcpl = db_fnp_sym_util_$get_value ("t.dcpl"); 193 t_ocnt = db_fnp_sym_util_$get_value ("t.ocnt"); 194 t_sfcm = db_fnp_sym_util_$get_value ("t.sfcm"); 195 t_line = db_fnp_sym_util_$get_value ("t.line"); 196 197 sf_ib0 = db_fnp_sym_util_$get_value ("sf.ib0"); 198 sf_ib1 = db_fnp_sym_util_$get_value ("sf.ib1"); 199 200 tib_words_needed = max (t_icpl, t_dcpl, t_ocnt, t_sfcm, t_line) + 1; 201 sfcm_words_needed = max (sf_ib0, sf_ib1) + 1; 202 203 have_symbols = "1"b; 204 end; 205 206 end; /* setup */ 207 208 fetch_words: proc (loc, len, p); 209 210 dcl loc fixed bin; 211 dcl len fixed bin; 212 dcl p ptr; 213 214 call db_fnp_memory_$fetch (corep, fnp, loc, len, p, code); 215 if code ^= 0 216 then do; 217 call com_err_ (code, whoami, "Unable to read location ^o.", loc); 218 go to error_exit; 219 end; 220 221 end; /* fetch_words */ 222 223 224 225 get_operand: proc; 226 227 call db_fnp_reader_$get_operand (cmd_infop); 228 if cmd_info.error 229 then go to error_exit; 230 231 end; /* get_operand */ 232 233 chan_name: proc (line) returns (char (32) var); 234 235 dcl line fixed bin; 236 dcl line_name char (32); 237 238 call db_fnp_util_$cv_line_no (corep, fnp, line, line_name, code); 239 if code ^= 0 then call ioa_$rsnnl ("^o", line_name, (0), line); 240 return (rtrim (line_name)); 241 242 end chan_name; 243 244 end; /* db_fnp_buffer_status_ */ 245 SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/15/82 1501.4 db_fnp_buffer_status_.pl1 >dumps>old>recomp>db_fnp_buffer_status_.pl1 65 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. addr builtin function dcl 52 ref 84 84 92 92 100 100 102 102 108 108 114 114 123 123 arg_cmd_infop parameter pointer dcl 15 ref 6 182 arg_corep parameter pointer dcl 13 ref 6 180 arg_expr_infop parameter pointer dcl 16 ref 6 arg_fnp parameter fixed bin(17,0) dcl 14 ref 6 181 brief_sw 000130 automatic bit(1) dcl 32 set ref 69* 73* 132 162 cmd_info based structure level 1 dcl 1-118 cmd_infop 000670 automatic pointer dcl 1-116 set ref 71 73 73 73 73 76 76 76 175 182* 227* 228 code 000120 automatic fixed bin(35,0) dcl 27 set ref 214* 215 217* 238* 239 com_err_ 000026 constant entry external dcl 57 ref 76 88 96 217 corep 000100 automatic pointer dcl 21 set ref 180* 214* 238* crnbf 000011 internal static fixed bin(17,0) dcl 39 set ref 100* 188* crnbs 000012 internal static fixed bin(17,0) dcl 39 set ref 102* 189* crttb 000013 internal static fixed bin(17,0) dcl 39 set ref 84* 186* crtte 000014 internal static fixed bin(17,0) dcl 39 set ref 92* 187* db_fnp_memory_$fetch 000036 constant entry external dcl 61 ref 214 db_fnp_reader_$get_operand 000040 constant entry external dcl 62 ref 227 db_fnp_sym_util_$get_value 000034 constant entry external dcl 60 ref 186 187 188 189 191 192 193 194 195 197 198 db_fnp_util_$cv_line_no 000042 constant entry external dcl 63 ref 238 dcpl 000115 automatic fixed bin(17,0) dcl 26 set ref 118* 129 139 141 152 153* endline 210 based bit(1) level 2 dcl 1-118 ref 71 error 207 based bit(1) level 2 dcl 1-118 ref 228 flush 212 based bit(1) level 2 dcl 1-118 set ref 175* fnp 000102 automatic fixed bin(17,0) dcl 22 set ref 181* 214* 238* have_symbols 000010 internal static bit(1) initial dcl 38 set ref 184 203* icpl 000114 automatic fixed bin(17,0) dcl 26 set ref 117* 124* 124 125* 125 128 134 136 152 153* ioa_ 000030 constant entry external dcl 58 ref 105 106 110 153 160 164 165 167 169 ioa_$rsnnl 000032 constant entry external dcl 59 ref 239 len parameter fixed bin(17,0) dcl 211 set ref 208 214* line parameter fixed bin(17,0) dcl 235 in procedure "chan_name" set ref 233 238* 239* line 000124 automatic fixed bin(17,0) dcl 29 in procedure "db_fnp_buffer_status_" set ref 115* 121 137 142 147 153* line_name 000724 automatic char(32) unaligned dcl 236 set ref 238* 239* 240 loc parameter fixed bin(17,0) dcl 210 set ref 208 214* 217* max builtin function dcl 52 ref 117 118 119 200 201 max_dcpl 000107 automatic fixed bin(17,0) dcl 24 set ref 82* 139 141* 162 167 167* max_dcpl_line 000112 automatic fixed bin(17,0) dcl 25 set ref 82* 142* 167* max_icpl 000106 automatic fixed bin(17,0) dcl 24 set ref 82* 134 136* 162 165 165* max_icpl_line 000111 automatic fixed bin(17,0) dcl 25 set ref 82* 137* 165* max_ocnt 000110 automatic fixed bin(17,0) dcl 24 set ref 82* 144 146* 162 169 169* max_ocnt_line 000113 automatic fixed bin(17,0) dcl 25 set ref 82* 147* 169* n_free 000125 automatic fixed bin(17,0) dcl 30 set ref 101* 105* n_small 000126 automatic fixed bin(17,0) dcl 30 set ref 103* 106* ocnt 000116 automatic fixed bin(17,0) dcl 26 set ref 119* 130 144 146 152 153* op based structure level 1 packed unaligned dcl 1-99 operand based char unaligned dcl 1-132 set ref 73 73 76* operandl 206 based fixed bin(17,0) level 2 dcl 1-118 ref 73 73 76 76 operandp 204 based pointer level 2 dcl 1-118 ref 73 73 76 p parameter pointer dcl 212 set ref 208 214* rtrim builtin function dcl 52 ref 240 sf_ib0 000022 internal static fixed bin(17,0) dcl 41 set ref 124 197* 201 sf_ib1 000023 internal static fixed bin(17,0) dcl 41 set ref 125 198* 201 sfcm_words_needed 000025 internal static fixed bin(17,0) dcl 42 set ref 123* 201* sym based structure level 1 packed unaligned dcl 1-22 t_dcpl 000016 internal static fixed bin(17,0) dcl 40 set ref 118 192* 200 t_icpl 000015 internal static fixed bin(17,0) dcl 40 set ref 117 191* 200 t_line 000021 internal static fixed bin(17,0) dcl 40 set ref 115 195* 200 t_ocnt 000017 internal static fixed bin(17,0) dcl 40 set ref 119 193* 200 t_sfcm 000020 internal static fixed bin(17,0) dcl 40 set ref 123 194* 200 temp 000605 automatic fixed bin(17,0) array unaligned dcl 34 set ref 84 84 85 92 92 93 100 100 101 102 102 103 114 114 115 117 118 119 123 123 123 124 125 tib_addr 000123 automatic fixed bin(17,0) dcl 28 set ref 113* 114* tib_words_needed 000024 internal static fixed bin(17,0) dcl 42 set ref 114* 200* total 000117 automatic fixed bin(17,0) dcl 26 set ref 152* 153 153* 159* 160* total_dcpl 000104 automatic fixed bin(17,0) dcl 23 set ref 81* 129* 129 159 160* total_icpl 000103 automatic fixed bin(17,0) dcl 23 set ref 81* 128* 128 159 160* total_ocnt 000105 automatic fixed bin(17,0) dcl 23 set ref 81* 130* 130 159 160* ttb_addr 000121 automatic fixed bin(17,0) dcl 28 set ref 85* 86 94 108* 108 112 ttb_temp 000131 automatic fixed bin(17,0) array unaligned dcl 33 set ref 108 108 113 ttbx 000127 automatic fixed bin(17,0) dcl 31 set ref 112* 113* tte_addr 000122 automatic fixed bin(17,0) dcl 28 set ref 93* 94 96* 108 112 whoami 000000 constant char(15) initial unaligned dcl 47 set ref 88* 96* 217* 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 divide builtin function dcl 52 env based structure level 1 dcl 1-139 envp automatic pointer dcl 1-137 expr_info based structure level 1 dcl 1-70 expr_infop automatic pointer dcl 1-68 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 null builtin function dcl 52 opblock_table based structure level 1 dcl 1-162 opblock_tablep automatic pointer dcl 1-160 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 substr builtin function dcl 52 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. chan_name 001655 constant entry internal dcl 233 ref 153 165 167 169 db_fnp_buffer_status_ 000206 constant entry external dcl 6 error_exit 001242 constant label dcl 175 ref 77 89 97 218 228 fetch_words 001560 constant entry internal dcl 208 ref 84 92 100 102 108 114 123 get_operand 001641 constant entry internal dcl 225 ref 70 setup 001246 constant entry internal dcl 178 ref 67 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2146 2212 2026 2156 Length 2444 2026 44 215 117 16 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME db_fnp_buffer_status_ 618 external procedure is an external procedure. setup internal procedure shares stack frame of external procedure db_fnp_buffer_status_. fetch_words internal procedure shares stack frame of external procedure db_fnp_buffer_status_. get_operand internal procedure shares stack frame of external procedure db_fnp_buffer_status_. chan_name internal procedure shares stack frame of external procedure db_fnp_buffer_status_. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 have_symbols db_fnp_buffer_status_ 000011 crnbf db_fnp_buffer_status_ 000012 crnbs db_fnp_buffer_status_ 000013 crttb db_fnp_buffer_status_ 000014 crtte db_fnp_buffer_status_ 000015 t_icpl db_fnp_buffer_status_ 000016 t_dcpl db_fnp_buffer_status_ 000017 t_ocnt db_fnp_buffer_status_ 000020 t_sfcm db_fnp_buffer_status_ 000021 t_line db_fnp_buffer_status_ 000022 sf_ib0 db_fnp_buffer_status_ 000023 sf_ib1 db_fnp_buffer_status_ 000024 tib_words_needed db_fnp_buffer_status_ 000025 sfcm_words_needed db_fnp_buffer_status_ STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME db_fnp_buffer_status_ 000100 corep db_fnp_buffer_status_ 000102 fnp db_fnp_buffer_status_ 000103 total_icpl db_fnp_buffer_status_ 000104 total_dcpl db_fnp_buffer_status_ 000105 total_ocnt db_fnp_buffer_status_ 000106 max_icpl db_fnp_buffer_status_ 000107 max_dcpl db_fnp_buffer_status_ 000110 max_ocnt db_fnp_buffer_status_ 000111 max_icpl_line db_fnp_buffer_status_ 000112 max_dcpl_line db_fnp_buffer_status_ 000113 max_ocnt_line db_fnp_buffer_status_ 000114 icpl db_fnp_buffer_status_ 000115 dcpl db_fnp_buffer_status_ 000116 ocnt db_fnp_buffer_status_ 000117 total db_fnp_buffer_status_ 000120 code db_fnp_buffer_status_ 000121 ttb_addr db_fnp_buffer_status_ 000122 tte_addr db_fnp_buffer_status_ 000123 tib_addr db_fnp_buffer_status_ 000124 line db_fnp_buffer_status_ 000125 n_free db_fnp_buffer_status_ 000126 n_small db_fnp_buffer_status_ 000127 ttbx db_fnp_buffer_status_ 000130 brief_sw db_fnp_buffer_status_ 000131 ttb_temp db_fnp_buffer_status_ 000605 temp db_fnp_buffer_status_ 000670 cmd_infop db_fnp_buffer_status_ 000724 line_name chan_name THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ db_fnp_memory_$fetch db_fnp_reader_$get_operand db_fnp_sym_util_$get_value db_fnp_util_$cv_line_no ioa_ ioa_$rsnnl NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 6 000201 67 000213 69 000214 70 000215 71 000216 73 000221 76 000236 77 000275 81 000276 82 000301 84 000307 85 000326 86 000331 88 000332 89 000357 92 000360 93 000377 94 000402 96 000404 97 000435 100 000436 101 000455 102 000460 103 000477 105 000502 106 000521 108 000542 110 000551 112 000565 113 000575 114 000604 115 000621 117 000632 118 000645 119 000660 121 000673 123 000676 124 000722 125 000734 128 000745 129 000747 130 000751 132 000753 134 000755 136 000760 137 000761 139 000763 141 000766 142 000767 144 000771 146 000774 147 000775 149 000777 152 001000 153 001004 157 001044 159 001047 160 001053 162 001104 164 001112 165 001126 167 001156 169 001211 173 001241 175 001242 244 001245 178 001246 180 001247 181 001253 182 001255 184 001260 186 001263 187 001301 188 001320 189 001337 191 001356 192 001375 193 001414 194 001433 195 001452 197 001471 198 001510 200 001527 201 001547 203 001555 206 001557 208 001560 214 001562 215 001604 217 001606 218 001637 221 001640 225 001641 227 001642 228 001651 231 001654 233 001655 238 001657 239 001710 240 001743 ----------------------------------------------------------- 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