COMPILATION LISTING OF SEGMENT display_cdt Compiled by: Multics PL/I Compiler, Release 28e, of February 14, 1985 Compiled at: Honeywell Multics Op. - System M Compiled on: 04/09/85 1141.6 mst Tue 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 /* format: style2 */ 12 13 display_cdt: 14 procedure; 15 16 /* DUMP_CDT - dump Channel Definition Table. 17* 18* THVV 19* Modified by Mike Grady 5/10/76 for -cmf arg, also 20* for version 2 CDT. 21* Modified for error code from dump_cdt_ and dump_cmf_ BIM 1/82 22* */ 23 24 dcl (path, dn) char (168), 25 en char (32), 26 ec fixed bin, 27 cdtp ptr, 28 sch_tty char (32) init (""), 29 al fixed bin (21), 30 ap ptr, 31 arg char (al) based (ap) unaligned; 32 33 34 dcl arg_count fixed bin; 35 dcl arg_list_ptr pointer; 36 dcl argx fixed bin; 37 38 dcl (addr, null, substr) builtin; 39 40 dcl dump_cmf_ entry (ptr, ptr); 41 42 dcl dump_cdt_ entry (ptr, fixed bin (35)); 43 44 dcl cu_$arg_count entry (fixed bin, fixed bin (35)); 45 dcl cu_$arg_list_ptr entry (ptr); 46 dcl cu_$arg_ptr_rel entry (fixed bin, ptr, fixed bin (21), fixed bin (35), ptr); 47 dcl check_star_name_$entry entry (char (*), fixed bin (35)); 48 49 dcl expand_pathname_ entry (char (*), char (*), char (*), fixed bin (35)), 50 com_err_ entry options (variable); 51 52 dcl cleanup condition; 53 54 dcl ( 55 error_table_$noarg, 56 error_table_$badopt, 57 error_table_$too_many_args, 58 error_table_$inconsistent 59 ) fixed bin (35) ext; 60 61 62 dcl initiate_file_ entry (char (*), char (*), bit (*), ptr, fixed bin (24), fixed bin (35)); 63 dcl terminate_file_ entry (ptr, fixed bin (24), bit (*), fixed bin (35)); 64 dcl pathname_ entry (char (*), char (*)) returns (char (168)); 65 dcl unique_chars_ entry (bit (*)) returns (char (15)); 66 dcl sc_stat_$sysdir char (168) aligned external; 67 dcl 1 dca aligned like dump_cdt_args; 68 dcl cmf_sw bit (1) aligned; 69 dcl code fixed bin (35); 70 71 dcl ME char (32) init ("display_cdt") internal static options (constant); 72 73 74 call cu_$arg_count (arg_count, code); 75 if code ^= 0 76 then do; 77 call com_err_ (code, ME); 78 goto RETURN; 79 end; 80 81 if arg_count = 0 82 then do; 83 call com_err_ (0, ME, 84 "Usage: display_cdt {channel} {-cmf PATH|-all|-header|-pathname PATH|-brief|-long"); 85 return; 86 end; 87 88 call cu_$arg_list_ptr (arg_list_ptr); /* For rel calls */ 89 90 cdtp, dca.switch = null; 91 on cleanup call clean_up; 92 93 unspec (dca) = ""b; 94 dca.channel_name = ""; 95 cmf_sw = "0"b; 96 path = ""; 97 98 argx = 0; 99 do while (argx < arg_count); 100 101 call get_next_arg (""); 102 103 if al > 0 104 then if substr (arg, 1, 1) = "-" 105 then do; 106 if arg = "-all" | arg = "-a" 107 then dca.all = "1"b; 108 else if arg = "-subtree" 109 then dca.subtree = "1"b; 110 else if arg = "-brief" | arg = "-bf" 111 then dca.brief = "1"b; 112 else if arg = "-long" | arg = "-lg" 113 then dca.brief = "0"b; 114 else if arg = "-no_header" | arg = "-nhe" 115 then dca.hdr = "0"b; 116 else if arg = "-header" | arg = "-he" 117 then dca.hdr = "1"b; 118 else if arg = "-channel" | arg = "-chn" 119 then do; 120 call get_next_arg ("A channel with -channel"); 121 CHANNEL_ARG: 122 if dca.channel_name ^= "" 123 then do; 124 call com_err_ (error_table_$too_many_args, ME, 125 "Multiple -channel args are not permitted."); 126 go to RETURN; 127 end; 128 call check_star_name_$entry (arg, code); 129 dca.channel_name = arg; 130 if code = 0 131 then dca.all = "0"b; 132 else if code = 1 133 then do; 134 dca.starname = "1"b; 135 dca.all = "0"b; 136 end; 137 else if code = 2 138 then dca.all = "1"b; 139 else do; 140 call com_err_ (code, ME, "Bad channel name: ^a", arg); 141 go to RETURN; 142 end; 143 end; 144 else if arg = "-cmf" 145 then do; 146 cmf_sw = "1"b; 147 call get_next_arg ("Pathname following -cmf"); 148 call iox_$attach_name (unique_chars_ (""b) || ".dump_cdt_output_", dca.switch, 149 "vfile_ " || arg, null, code); 150 if code ^= 0 151 then do; 152 call com_err_ (code, "display_cdt", "Unable to attach output file"); 153 go to RETURN; 154 end; 155 call iox_$open (dca.switch, Stream_output, "0"b, code); 156 if code ^= 0 157 then do; 158 call com_err_ (code, "display_cdt", "Unable to open output file"); 159 go to RETURN; 160 end; 161 end; 162 else if arg = "-pathname" | arg = "-pn" 163 then do; 164 call get_next_arg ("A pathname following -pathname"); 165 path = arg; 166 end; 167 else do; 168 call com_err_ (error_table_$badopt, "display_cdt", """^a""", arg); 169 go to RETURN; 170 end; 171 end; 172 else go to CHANNEL_ARG; /* positional = -channel */ 173 end; 174 175 if path = "" 176 then path = pathname_ ((sc_stat_$sysdir), "cdt"); 177 178 call expand_pathname_ (path, dn, en, code); 179 if code ^= 0 180 then do; 181 call com_err_ (code, "display_cdt", "^a", path); 182 go to RETURN; 183 end; 184 185 call initiate_file_ (dn, en, R_ACCESS, cdtp, (0), code); 186 187 if code ^= 0 188 then do; 189 call com_err_ (code, "display_cdt", "^a", en); 190 go to RETURN; 191 end; 192 193 if cmf_sw 194 then call dump_cmf_ (cdtp, dca.switch); /* dump cdt in form of cmf */ 195 else do; 196 dca.switch = iox_$user_output; 197 dca.cdt_ptr = cdtp; 198 call dump_cdt_ (addr (dca), code); 199 if code ^= 0 200 then call com_err_ (code, ME, "^a", dca.channel_name); 201 end; 202 203 RETURN: 204 call clean_up; 205 return; 206 207 clean_up: 208 procedure; 209 if dca.switch ^= null & dca.switch ^= iox_$user_output 210 then do; 211 call iox_$close (dca.switch, code); 212 call iox_$detach_iocb (dca.switch, code); 213 call iox_$destroy_iocb (dca.switch, code); 214 end; 215 if cdtp ^= null 216 then call terminate_file_ (cdtp, (0), TERM_FILE_TERM, (0)); 217 cdtp = null; 218 end clean_up; 219 220 get_next_arg: 221 procedure (what_did_we_want); 222 declare what_did_we_want char (*); 223 argx = argx + 1; 224 if argx > arg_count 225 then do; 226 call com_err_ (error_table_$noarg, ME, "^a", what_did_we_want); 227 go to RETURN; 228 end; 229 call cu_$arg_ptr_rel (argx, ap, al, (0), arg_list_ptr); 230 end get_next_arg; 231 1 1 /* Begin include file dump_cdt_args_.incl.pl1 BIM 1/82 */ 1 2 /* format: style3,idind25 */ 1 3 1 4 declare dca_ptr pointer; 1 5 declare 1 dump_cdt_args aligned based (dca_ptr), 1 6 2 switch pointer, 1 7 2 cdt_ptr pointer, 1 8 2 flags aligned, 1 9 3 hdr bit (1) unaligned, 1 10 3 subtree bit (1) unaligned, 1 11 3 brief bit (1) unaligned, 1 12 3 all bit (1) unaligned, /* same as ** */ 1 13 3 starname bit (1) unaligned, 1 14 3 pad bit (31) unaligned, 1 15 2 channel_name character (32) unaligned;/* or starname */ 1 16 1 17 /* End include file */ 232 2 1 /* BEGIN INCLUDE FILE ... terminate_file.incl.pl1 */ 2 2 /* format: style2,^inddcls,idind32 */ 2 3 2 4 declare 1 terminate_file_switches based, 2 5 2 truncate bit (1) unaligned, 2 6 2 set_bc bit (1) unaligned, 2 7 2 terminate bit (1) unaligned, 2 8 2 force_write bit (1) unaligned, 2 9 2 delete bit (1) unaligned; 2 10 2 11 declare TERM_FILE_TRUNC bit (1) internal static options (constant) initial ("1"b); 2 12 declare TERM_FILE_BC bit (2) internal static options (constant) initial ("01"b); 2 13 declare TERM_FILE_TRUNC_BC bit (2) internal static options (constant) initial ("11"b); 2 14 declare TERM_FILE_TERM bit (3) internal static options (constant) initial ("001"b); 2 15 declare TERM_FILE_TRUNC_BC_TERM bit (3) internal static options (constant) initial ("111"b); 2 16 declare TERM_FILE_FORCE_WRITE bit (4) internal static options (constant) initial ("0001"b); 2 17 declare TERM_FILE_DELETE bit (5) internal static options (constant) initial ("00001"b); 2 18 2 19 /* END INCLUDE FILE ... terminate_file.incl.pl1 */ 233 3 1 /* BEGIN INCLUDE FILE ... access_mode_values.incl.pl1 3 2* 3 3* Values for the "access mode" argument so often used in hardcore 3 4* James R. Davis 26 Jan 81 MCR 4844 3 5* Added constants for SM access 4/28/82 Jay Pattin 3 6* Added text strings 03/19/85 Chris Jones 3 7**/ 3 8 3 9 3 10 /* format: style4,delnl,insnl,indattr,ifthen,dclind10 */ 3 11 dcl ( 3 12 N_ACCESS init ("000"b), 3 13 R_ACCESS init ("100"b), 3 14 E_ACCESS init ("010"b), 3 15 W_ACCESS init ("001"b), 3 16 RE_ACCESS init ("110"b), 3 17 REW_ACCESS init ("111"b), 3 18 RW_ACCESS init ("101"b), 3 19 S_ACCESS init ("100"b), 3 20 M_ACCESS init ("010"b), 3 21 A_ACCESS init ("001"b), 3 22 SA_ACCESS init ("101"b), 3 23 SM_ACCESS init ("110"b), 3 24 SMA_ACCESS init ("111"b) 3 25 ) bit (3) internal static options (constant); 3 26 3 27 /* The following arrays are meant to be accessed by doing either 1) bin (bit_value) or 3 28* 2) divide (bin_value, 2) to come up with an index into the array. */ 3 29 3 30 dcl SEG_ACCESS_MODE_NAMES (0:7) init ("null", "W", "E", "EW", "R", "RW", "RE", "REW") char (4) internal 3 31 static options (constant); 3 32 3 33 dcl DIR_ACCESS_MODE_NAMES (0:7) init ("null", "A", "M", "MA", "S", "SA", "SM", "SMA") char (4) internal 3 34 static options (constant); 3 35 3 36 dcl ( 3 37 N_ACCESS_BIN init (00000b), 3 38 R_ACCESS_BIN init (01000b), 3 39 E_ACCESS_BIN init (00100b), 3 40 W_ACCESS_BIN init (00010b), 3 41 RW_ACCESS_BIN init (01010b), 3 42 RE_ACCESS_BIN init (01100b), 3 43 REW_ACCESS_BIN init (01110b), 3 44 S_ACCESS_BIN init (01000b), 3 45 M_ACCESS_BIN init (00010b), 3 46 A_ACCESS_BIN init (00001b), 3 47 SA_ACCESS_BIN init (01001b), 3 48 SM_ACCESS_BIN init (01010b), 3 49 SMA_ACCESS_BIN init (01011b) 3 50 ) fixed bin (5) internal static options (constant); 3 51 3 52 /* END INCLUDE FILE ... access_mode_values.incl.pl1 */ 234 4 1 /* --------------- BEGIN include file iox_dcls.incl.pl1 --------------- */ 4 2 4 3 /* Written 05/04/78 by C. D. Tavares */ 4 4 /* Fixed declaration of iox_$find_iocb_n 05/07/80 by R. Holmstedt */ 4 5 /* Modified 5/83 by S. Krupp to add declarations for: iox_$open_file, 4 6* iox_$close_file, iox_$detach and iox_$attach_loud entries. */ 4 7 4 8 dcl iox_$attach_name entry (char (*), pointer, char (*), pointer, fixed bin (35)), 4 9 iox_$attach_ptr entry (pointer, char (*), pointer, fixed bin (35)), 4 10 iox_$close entry (pointer, fixed bin (35)), 4 11 iox_$control entry (pointer, char (*), pointer, fixed bin (35)), 4 12 iox_$delete_record entry (pointer, fixed bin (35)), 4 13 iox_$destroy_iocb entry (pointer, fixed bin (35)), 4 14 iox_$detach_iocb entry (pointer, fixed bin (35)), 4 15 iox_$err_not_attached entry options (variable), 4 16 iox_$err_not_closed entry options (variable), 4 17 iox_$err_no_operation entry options (variable), 4 18 iox_$err_not_open entry options (variable), 4 19 iox_$find_iocb entry (char (*), pointer, fixed bin (35)), 4 20 iox_$find_iocb_n entry (fixed bin, ptr, fixed bin(35)), 4 21 iox_$get_chars entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 4 22 iox_$get_line entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 4 23 iox_$look_iocb entry (char (*), pointer, fixed bin (35)), 4 24 iox_$modes entry (pointer, char (*), char (*), fixed bin (35)), 4 25 iox_$move_attach entry (pointer, pointer, fixed bin (35)), 4 26 iox_$open entry (pointer, fixed bin, bit (1) aligned, fixed bin (35)), 4 27 iox_$position entry (pointer, fixed bin, fixed bin (21), fixed bin (35)), 4 28 iox_$propagate entry (pointer), 4 29 iox_$put_chars entry (pointer, pointer, fixed bin (21), fixed bin (35)), 4 30 iox_$read_key entry (pointer, char (256) varying, fixed bin (21), fixed bin (35)), 4 31 iox_$read_length entry (pointer, fixed bin (21), fixed bin (35)), 4 32 iox_$read_record entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 4 33 iox_$rewrite_record entry (pointer, pointer, fixed bin (21), fixed bin (35)), 4 34 iox_$seek_key entry (pointer, char (256) varying, fixed bin (21), fixed bin (35)), 4 35 iox_$write_record entry (pointer, pointer, fixed bin (21), fixed bin (35)), 4 36 iox_$open_file entry(ptr, fixed bin, char(*), bit(1) aligned, fixed bin(35)), 4 37 iox_$close_file entry(ptr, char(*), fixed bin(35)), 4 38 iox_$detach entry(ptr, char(*), fixed bin(35)), 4 39 iox_$attach_loud entry(ptr, char(*), ptr, fixed bin(35)); 4 40 4 41 dcl (iox_$user_output, 4 42 iox_$user_input, 4 43 iox_$user_io, 4 44 iox_$error_output) external static pointer; 4 45 4 46 /* ---------------- END include file iox_dcls.incl.pl1 ---------------- */ 235 5 1 /* Begin include file ..... iox_modes.incl.pl1 */ 5 2 5 3 /* Written by C. D. Tavares, 03/17/75 */ 5 4 /* Updated 10/31/77 by CDT to include short iox mode strings */ 5 5 5 6 dcl iox_modes (13) char (24) int static options (constant) aligned initial 5 7 ("stream_input", "stream_output", "stream_input_output", 5 8 "sequential_input", "sequential_output", "sequential_input_output", "sequential_update", 5 9 "keyed_sequential_input", "keyed_sequential_output", "keyed_sequential_update", 5 10 "direct_input", "direct_output", "direct_update"); 5 11 5 12 dcl short_iox_modes (13) char (4) int static options (constant) aligned initial 5 13 ("si", "so", "sio", "sqi", "sqo", "sqio", "squ", "ksqi", "ksqo", "ksqu", "di", "do", "du"); 5 14 5 15 dcl (Stream_input initial (1), 5 16 Stream_output initial (2), 5 17 Stream_input_output initial (3), 5 18 Sequential_input initial (4), 5 19 Sequential_output initial (5), 5 20 Sequential_input_output initial (6), 5 21 Sequential_update initial (7), 5 22 Keyed_sequential_input initial (8), 5 23 Keyed_sequential_output initial (9), 5 24 Keyed_sequential_update initial (10), 5 25 Direct_input initial (11), 5 26 Direct_output initial (12), 5 27 Direct_update initial (13)) fixed bin int static options (constant); 5 28 5 29 /* End include file ..... iox_modes.incl.pl1 */ 236 237 end display_cdt; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 04/08/85 1134.4 display_cdt.pl1 >spec>on>41-15>display_cdt.pl1 232 1 04/21/82 1211.8 dump_cdt_args_.incl.pl1 >ldd>include>dump_cdt_args_.incl.pl1 233 2 04/06/83 1239.4 terminate_file.incl.pl1 >ldd>include>terminate_file.incl.pl1 234 3 04/09/85 1109.7 access_mode_values.incl.pl1 >spec>on>41-15>access_mode_values.incl.pl1 235 4 05/23/83 0916.6 iox_dcls.incl.pl1 >ldd>include>iox_dcls.incl.pl1 236 5 02/02/78 1229.7 iox_modes.incl.pl1 >ldd>include>iox_modes.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. ME 000001 constant char(32) initial unaligned dcl 71 set ref 77* 83* 124* 140* 199* 226* R_ACCESS 000045 constant bit(3) initial unaligned dcl 3-11 set ref 185* Stream_output 000034 constant fixed bin(17,0) initial dcl 5-15 set ref 155* TERM_FILE_TERM 000000 constant bit(3) initial unaligned dcl 2-14 set ref 215* addr builtin function dcl 38 ref 198 198 al 000246 automatic fixed bin(21,0) dcl 24 set ref 103 103 106 106 108 110 110 112 112 114 114 116 116 118 118 128 128 129 140 140 144 148 162 162 165 168 168 229* all 4(03) 000266 automatic bit(1) level 3 packed unaligned dcl 67 set ref 106* 130* 135* 137* ap 000250 automatic pointer dcl 24 set ref 103 106 106 108 110 110 112 112 114 114 116 116 118 118 128 129 140 144 148 162 162 165 168 229* arg based char unaligned dcl 24 set ref 103 106 106 108 110 110 112 112 114 114 116 116 118 118 128* 129 140* 144 148 162 162 165 168* arg_count 000252 automatic fixed bin(17,0) dcl 34 set ref 74* 81 99 224 arg_list_ptr 000254 automatic pointer dcl 35 set ref 88* 229* argx 000256 automatic fixed bin(17,0) dcl 36 set ref 98* 99 223* 223 224 229* brief 4(02) 000266 automatic bit(1) level 3 packed unaligned dcl 67 set ref 110* 112* cdt_ptr 2 000266 automatic pointer level 2 dcl 67 set ref 197* cdtp 000234 automatic pointer dcl 24 set ref 90* 185* 193* 197 215 215* 217* channel_name 5 000266 automatic char(32) level 2 packed unaligned dcl 67 set ref 94* 121 129* 199* check_star_name_$entry 000022 constant entry external dcl 47 ref 128 cleanup 000260 stack reference condition dcl 52 ref 91 cmf_sw 000303 automatic bit(1) dcl 68 set ref 95* 146* 193 code 000304 automatic fixed bin(35,0) dcl 69 set ref 74* 75 77* 128* 130 132 137 140* 148* 150 152* 155* 156 158* 178* 179 181* 185* 187 189* 198* 199 199* 211* 212* 213* com_err_ 000026 constant entry external dcl 49 ref 77 83 124 140 152 158 168 181 189 199 226 cu_$arg_count 000014 constant entry external dcl 44 ref 74 cu_$arg_list_ptr 000016 constant entry external dcl 45 ref 88 cu_$arg_ptr_rel 000020 constant entry external dcl 46 ref 229 dca 000266 automatic structure level 1 dcl 67 set ref 93* 198 198 dn 000152 automatic char(168) unaligned dcl 24 set ref 178* 185* dump_cdt_ 000012 constant entry external dcl 42 ref 198 dump_cdt_args based structure level 1 dcl 1-5 dump_cmf_ 000010 constant entry external dcl 40 ref 193 en 000224 automatic char(32) unaligned dcl 24 set ref 178* 185* 189* error_table_$badopt 000032 external static fixed bin(35,0) dcl 54 set ref 168* error_table_$noarg 000030 external static fixed bin(35,0) dcl 54 set ref 226* error_table_$too_many_args 000034 external static fixed bin(35,0) dcl 54 set ref 124* expand_pathname_ 000024 constant entry external dcl 49 ref 178 flags 4 000266 automatic structure level 2 dcl 67 hdr 4 000266 automatic bit(1) level 3 packed unaligned dcl 67 set ref 114* 116* initiate_file_ 000036 constant entry external dcl 62 ref 185 iox_$attach_name 000050 constant entry external dcl 4-8 ref 148 iox_$close 000052 constant entry external dcl 4-8 ref 211 iox_$destroy_iocb 000054 constant entry external dcl 4-8 ref 213 iox_$detach_iocb 000056 constant entry external dcl 4-8 ref 212 iox_$open 000060 constant entry external dcl 4-8 ref 155 iox_$user_output 000062 external static pointer dcl 4-41 ref 196 209 null builtin function dcl 38 ref 90 148 148 209 215 217 path 000100 automatic char(168) unaligned dcl 24 set ref 96* 165* 175 175* 178* 181* pathname_ 000042 constant entry external dcl 64 ref 175 sc_stat_$sysdir 000046 external static char(168) dcl 66 ref 175 sch_tty 000236 automatic char(32) initial unaligned dcl 24 set ref 24* starname 4(04) 000266 automatic bit(1) level 3 packed unaligned dcl 67 set ref 134* substr builtin function dcl 38 ref 103 subtree 4(01) 000266 automatic bit(1) level 3 packed unaligned dcl 67 set ref 108* switch 000266 automatic pointer level 2 dcl 67 set ref 90* 148* 155* 193* 196* 209 209 211* 212* 213* terminate_file_ 000040 constant entry external dcl 63 ref 215 unique_chars_ 000044 constant entry external dcl 65 ref 148 what_did_we_want parameter char unaligned dcl 222 set ref 220 226* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. A_ACCESS internal static bit(3) initial unaligned dcl 3-11 A_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 DIR_ACCESS_MODE_NAMES internal static char(4) initial array unaligned dcl 3-33 Direct_input internal static fixed bin(17,0) initial dcl 5-15 Direct_output internal static fixed bin(17,0) initial dcl 5-15 Direct_update internal static fixed bin(17,0) initial dcl 5-15 E_ACCESS internal static bit(3) initial unaligned dcl 3-11 E_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 Keyed_sequential_input internal static fixed bin(17,0) initial dcl 5-15 Keyed_sequential_output internal static fixed bin(17,0) initial dcl 5-15 Keyed_sequential_update internal static fixed bin(17,0) initial dcl 5-15 M_ACCESS internal static bit(3) initial unaligned dcl 3-11 M_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 N_ACCESS internal static bit(3) initial unaligned dcl 3-11 N_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 REW_ACCESS internal static bit(3) initial unaligned dcl 3-11 REW_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 RE_ACCESS internal static bit(3) initial unaligned dcl 3-11 RE_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 RW_ACCESS internal static bit(3) initial unaligned dcl 3-11 RW_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 R_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 SA_ACCESS internal static bit(3) initial unaligned dcl 3-11 SA_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 SEG_ACCESS_MODE_NAMES internal static char(4) initial array unaligned dcl 3-30 SMA_ACCESS internal static bit(3) initial unaligned dcl 3-11 SMA_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 SM_ACCESS internal static bit(3) initial unaligned dcl 3-11 SM_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 S_ACCESS internal static bit(3) initial unaligned dcl 3-11 S_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 Sequential_input internal static fixed bin(17,0) initial dcl 5-15 Sequential_input_output internal static fixed bin(17,0) initial dcl 5-15 Sequential_output internal static fixed bin(17,0) initial dcl 5-15 Sequential_update internal static fixed bin(17,0) initial dcl 5-15 Stream_input internal static fixed bin(17,0) initial dcl 5-15 Stream_input_output internal static fixed bin(17,0) initial dcl 5-15 TERM_FILE_BC internal static bit(2) initial unaligned dcl 2-12 TERM_FILE_DELETE internal static bit(5) initial unaligned dcl 2-17 TERM_FILE_FORCE_WRITE internal static bit(4) initial unaligned dcl 2-16 TERM_FILE_TRUNC internal static bit(1) initial unaligned dcl 2-11 TERM_FILE_TRUNC_BC internal static bit(2) initial unaligned dcl 2-13 TERM_FILE_TRUNC_BC_TERM internal static bit(3) initial unaligned dcl 2-15 W_ACCESS internal static bit(3) initial unaligned dcl 3-11 W_ACCESS_BIN internal static fixed bin(5,0) initial dcl 3-36 dca_ptr automatic pointer dcl 1-4 ec automatic fixed bin(17,0) dcl 24 error_table_$inconsistent external static fixed bin(35,0) dcl 54 iox_$attach_loud 000000 constant entry external dcl 4-8 iox_$attach_ptr 000000 constant entry external dcl 4-8 iox_$close_file 000000 constant entry external dcl 4-8 iox_$control 000000 constant entry external dcl 4-8 iox_$delete_record 000000 constant entry external dcl 4-8 iox_$detach 000000 constant entry external dcl 4-8 iox_$err_no_operation 000000 constant entry external dcl 4-8 iox_$err_not_attached 000000 constant entry external dcl 4-8 iox_$err_not_closed 000000 constant entry external dcl 4-8 iox_$err_not_open 000000 constant entry external dcl 4-8 iox_$error_output external static pointer dcl 4-41 iox_$find_iocb 000000 constant entry external dcl 4-8 iox_$find_iocb_n 000000 constant entry external dcl 4-8 iox_$get_chars 000000 constant entry external dcl 4-8 iox_$get_line 000000 constant entry external dcl 4-8 iox_$look_iocb 000000 constant entry external dcl 4-8 iox_$modes 000000 constant entry external dcl 4-8 iox_$move_attach 000000 constant entry external dcl 4-8 iox_$open_file 000000 constant entry external dcl 4-8 iox_$position 000000 constant entry external dcl 4-8 iox_$propagate 000000 constant entry external dcl 4-8 iox_$put_chars 000000 constant entry external dcl 4-8 iox_$read_key 000000 constant entry external dcl 4-8 iox_$read_length 000000 constant entry external dcl 4-8 iox_$read_record 000000 constant entry external dcl 4-8 iox_$rewrite_record 000000 constant entry external dcl 4-8 iox_$seek_key 000000 constant entry external dcl 4-8 iox_$user_input external static pointer dcl 4-41 iox_$user_io external static pointer dcl 4-41 iox_$write_record 000000 constant entry external dcl 4-8 iox_modes internal static char(24) initial array dcl 5-6 short_iox_modes internal static char(4) initial array dcl 5-12 terminate_file_switches based structure level 1 packed unaligned dcl 2-4 NAMES DECLARED BY EXPLICIT CONTEXT. CHANNEL_ARG 000513 constant label dcl 121 ref 103 RETURN 001455 constant label dcl 203 ref 78 126 141 153 159 169 182 190 227 clean_up 001463 constant entry internal dcl 207 ref 91 203 display_cdt 000223 constant entry external dcl 13 get_next_arg 001575 constant entry internal dcl 220 ref 101 120 147 164 NAME DECLARED BY CONTEXT OR IMPLICATION. unspec builtin function ref 93 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2204 2270 1716 2214 Length 2604 1716 64 300 265 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME display_cdt 346 external procedure is an external procedure. on unit on line 91 64 on unit clean_up 90 internal procedure is called by several nonquick procedures. get_next_arg internal procedure shares stack frame of external procedure display_cdt. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME display_cdt 000100 path display_cdt 000152 dn display_cdt 000224 en display_cdt 000234 cdtp display_cdt 000236 sch_tty display_cdt 000246 al display_cdt 000250 ap display_cdt 000252 arg_count display_cdt 000254 arg_list_ptr display_cdt 000256 argx display_cdt 000266 dca display_cdt 000303 cmf_sw display_cdt 000304 code display_cdt THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_cs call_ext_out_desc call_ext_out call_int_this call_int_other return enable shorten_stack ext_entry int_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. check_star_name_$entry com_err_ cu_$arg_count cu_$arg_list_ptr cu_$arg_ptr_rel dump_cdt_ dump_cmf_ expand_pathname_ initiate_file_ iox_$attach_name iox_$close iox_$destroy_iocb iox_$detach_iocb iox_$open pathname_ terminate_file_ unique_chars_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$badopt error_table_$noarg error_table_$too_many_args iox_$user_output sc_stat_$sysdir LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 13 000222 24 000230 74 000233 75 000243 77 000245 78 000262 81 000263 83 000265 85 000312 88 000313 90 000322 91 000325 93 000347 94 000352 95 000355 96 000356 98 000361 99 000362 101 000365 103 000370 106 000377 108 000412 110 000421 112 000434 114 000447 116 000462 118 000475 120 000505 121 000513 124 000517 126 000543 128 000544 129 000564 130 000571 132 000576 134 000600 135 000602 136 000604 137 000605 140 000612 141 000650 143 000651 144 000652 146 000656 147 000660 148 000666 150 000761 152 000764 153 001015 155 001016 156 001035 158 001037 159 001070 161 001071 162 001072 164 001102 165 001110 166 001115 168 001116 169 001154 173 001155 175 001156 178 001211 179 001235 181 001237 182 001273 185 001274 187 001332 189 001334 190 001370 193 001371 196 001405 197 001411 198 001413 199 001425 203 001455 205 001461 207 001462 209 001470 211 001501 212 001511 213 001523 215 001535 217 001571 218 001574 220 001575 223 001606 224 001607 226 001612 227 001643 229 001644 230 001664 ----------------------------------------------------------- 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