COMPILATION LISTING OF SEGMENT initiate Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Multics Op. - System M Compiled on: 11/20/86 1154.3 mst Thu Options: optimize list 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 12 13 /****^ HISTORY COMMENTS: 14* 1) change(86-05-02,Elhard), approve(86-05-02,MCR7391), 15* audit(86-07-18,DGHowe), install(86-11-20,MR12.0-1222): 16* Modified to allow initiation of MSFs by initiating component 0 of the MSF. 17* END HISTORY COMMENTS */ 18 19 20 initiate: in: proc; 21 22 /* The initiate command: 23* 24* initiate path {reference_names} {-control_args} 25* 26*Rewritten 01/11/80 by S. Herbst */ 27 28 1 1 declare /* Structure returned by hcs_$status_long */ 1 2 1 3 1 branch_status aligned, /* automatic: hcs_$status uses a pointer */ 1 4 1 5 2 type bit(2) unaligned, /* type of entry: link, segment, dir */ 1 6 2 number_names bit(16) unaligned, /* unused by directory_status_ */ 1 7 2 names_rel_pointer bit(18) unaligned, /* unused by directory_status_ */ 1 8 2 date_time_modified bit(36) unaligned, /* date time modified */ 1 9 2 date_time_used bit(36) unaligned, /* date time entry used */ 1 10 2 mode bit(5) unaligned, /* effective access of caller */ 1 11 2 raw_mode bit(5) unaligned, 1 12 2 pad1 bit(8) unaligned, 1 13 2 records bit(18) unaligned, /* number of records in use */ 1 14 2 date_time_dumped bit(36) unaligned, /* date time last dumped */ 1 15 2 date_time_entry_modified bit(36) unaligned, /* date time entry modified */ 1 16 2 lvid bit(36) unaligned, /* logical volume id */ 1 17 2 current_length bit(12) unaligned, /* number of blocks currently allocated */ 1 18 2 bit_count bit(24) unaligned, /* bit count of entry */ 1 19 2 pad3 bit(8) unaligned, 1 20 2 copy_switch bit(1) unaligned, /* the copy switch */ 1 21 2 tpd bit(1) unaligned, /* transparent to paging device */ 1 22 2 mdir bit(1) unaligned, /* master directory switch */ 1 23 2 damaged_switch bit (1) unaligned, /* true if contents damaged */ 1 24 2 synchronized_switch bit (1) unaligned, /* true if a DM synchronized file */ 1 25 2 pad4 bit(5) unaligned, 1 26 2 ring_brackets (0:2) bit(6) unaligned, /* branch ring brackets */ 1 27 2 unique_id bit(36) unaligned, /* entry unique id */ 1 28 1 29 1 30 /* The types of each class of branch */ 1 31 segment_type bit(2) aligned internal static initial ("01"b), 1 32 directory_type bit(2) aligned internal static initial ("10"b), 1 33 msf_type bit(2) aligned internal static initial ("10"b), /* will eventually be different */ 1 34 link_type bit(2) aligned internal static initial ("00"b); 1 35 1 36 29 30 31 dcl names (99 /* arbitrary */) char (32) aligned based (names_ptr); 32 33 dcl arg char (arg_len) based (arg_ptr); 34 dcl (dn, act_dn) char (168); 35 dcl (en, act_en, refname) char (32); 36 37 dcl type fixed bin (2); 38 dcl bc fixed bin (24); 39 40 dcl area area based (area_ptr); 41 42 dcl (all_sw, chase_sw, force_sw, forced, got_path, got_refname) bit (1); 43 dcl (long_sw, second_refname, some_args) bit (1); 44 45 dcl (area_ptr, arg_ptr, names_ptr, seg_ptr) ptr; 46 47 dcl (arg_count, arg_len, i, j, names_count, segno) fixed bin; 48 dcl code fixed bin (35); 49 50 dcl error_table_$badopt fixed bin (35) ext; 51 dcl error_table_$dirseg fixed bin (35) ext; 52 dcl error_table_$namedup fixed bin (35) ext; 53 dcl error_table_$segknown fixed bin (35) ext; 54 55 dcl active_fnc_err_ entry options (variable); 56 dcl (com_err_, com_err_$suppress_name) entry options (variable); 57 dcl cu_$af_return_arg entry (fixed bin, ptr, fixed bin, fixed bin (35)); 58 dcl cu_$arg_ptr entry (fixed bin, ptr, fixed bin, fixed bin (35)); 59 dcl expand_pathname_ entry (char (*), char (*), char (*), fixed bin (35)); 60 dcl get_system_free_area_ entry returns (ptr); 61 dcl hcs_$initiate entry (char (*), char (*), char (*), fixed bin (1), fixed bin (2), ptr, fixed bin (35)); 62 dcl hcs_$status_ entry (char (*), char (*), fixed bin (1), ptr, ptr, fixed bin (35)); 63 dcl hcs_$status_minf entry (char(*), char(*), fixed bin(1), fixed bin(2), fixed bin(24), fixed bin(35)); 64 dcl ioa_ entry options (variable); 65 dcl term_$single_refname entry (char (*), fixed bin (35)); 66 67 dcl (addr, addrel, baseno, bin, fixed, null, rtrim, substr) builtin; 68 69 dcl cleanup condition; 70 /* */ 71 call cu_$af_return_arg (arg_count, null, 0, code); 72 if code = 0 then do; 73 call active_fnc_err_ (0, "initiate", "Cannot be called as an active function."); 74 return; 75 end; 76 77 all_sw, force_sw, long_sw, some_args = "0"b; 78 chase_sw = "1"b; 79 do i = 1 to arg_count; 80 81 call cu_$arg_ptr (i, arg_ptr, arg_len, code); 82 83 if substr (arg, 1, 1) ^= "-" then some_args = "1"b; 84 85 else if arg = "-all" | arg = "-a" then all_sw = "1"b; 86 else if arg = "-brief" | arg = "-bf" then long_sw = "0"b; 87 else if arg = "-long" | arg = "-lg" | arg = "-s" then long_sw = "1"b; 88 else if arg = "-chase" then chase_sw = "1"b; 89 else if arg = "-no_chase" then chase_sw = "0"b; 90 else if arg = "-force" | arg = "-fc" then force_sw = "1"b; 91 else if arg = "-no_force" | arg = "-nfc" then force_sw = "0"b; 92 else do; 93 call com_err_ (error_table_$badopt, "initiate", "^a", arg); 94 return; 95 end; 96 end; 97 98 if ^some_args then do; 99 call com_err_$suppress_name (0, "initiate", 100 "Usage: initiate path {reference_names} {-control_args}"); 101 return; 102 end; 103 104 names_ptr = null; 105 got_path, got_refname, second_refname = "0"b; 106 do i = 1 to arg_count; 107 108 call cu_$arg_ptr (i, arg_ptr, arg_len, code); 109 110 if substr (arg, 1, 1) = "-" then go to NEXT_ARG; 111 112 if ^got_path then do; 113 call expand_pathname_ (arg, dn, en, code); 114 if code ^= 0 then do; 115 call com_err_ (code, "initiate", "^a", arg); 116 return; 117 end; 118 got_path = "1"b; 119 120 if all_sw then do; 121 got_refname = "1"b; 122 area_ptr = get_system_free_area_ (); 123 124 on condition (cleanup) call clean_up; 125 126 call hcs_$status_ (dn, en, fixed (chase_sw, 1), addr (branch_status), area_ptr, code); 127 if code ^= 0 then do; 128 call com_err_ (code, "initiate", 129 "Unable to get names of ^a^[>^]^a", dn, dn ^= ">", en); 130 return; 131 end; 132 names_ptr = addrel (area_ptr, branch_status.names_rel_pointer); 133 names_count = bin (branch_status.number_names); 134 do j = 1 to names_count; 135 refname = names (j); /* initiate by each name on seg */ 136 137 call init; 138 end; 139 end; 140 end; 141 else do; /* reference name specified */ 142 if got_refname then second_refname = "1"b; /* err msg for first refname only */ 143 got_refname = "1"b; 144 refname = arg; 145 146 if ^all_sw then call init; 147 148 else do; 149 do j = names_count by -1 to 1 while (names (j) ^= refname); end; 150 /* only do those names not already init'd by -all */ 151 if j = 0 then call init; 152 end; 153 end; 154 NEXT_ARG: end; 155 156 if ^got_refname then do; 157 refname = en; /* no refnames specified: initiate by entryname */ 158 159 call init; 160 end; 161 162 RETURN: if all_sw then call clean_up; 163 return; 164 /* */ 165 init: proc; 166 167 /* This internal procedure initiates a segment by one reference name */ 168 169 forced = "0"b; 170 171 act_dn = dn; 172 act_en = en; 173 INITIATE: call hcs_$initiate (act_dn, act_en, refname, 0, 0, seg_ptr, code); 174 if code ^= 0 & code ^= error_table_$segknown then /* OK if seg already known by same name */ 175 if code = error_table_$namedup then /* a different seg known by this name */ 176 if force_sw & ^forced then do; 177 forced = "1"b; 178 call term_$single_refname (refname, code); /* terminate old reference to refname */ 179 if code ^= 0 then call com_err_ (code, "initiate", 180 "Unable to terminate reference name ^a", refname); 181 else go to INITIATE; 182 end; 183 else call com_err_ (code, "initiate", "^a", refname); 184 else if code = error_table_$dirseg then do; 185 call hcs_$status_minf (dn, en, 1, type, bc, code); 186 if code = 0 & type = 2 & bc > 0 then do; 187 act_dn = rtrim (dn) || ">" || en; 188 act_en = "0"; 189 goto INITIATE; 190 end; 191 else do; 192 call com_err_ (error_table_$dirseg, "initiate", "^a^[>^]^a", dn, dn ^= ">", en); 193 go to RETURN; 194 end; 195 end; 196 else do; 197 if ^second_refname then call com_err_ (code, "initiate", "^a^[>^]^a", dn, dn ^= ">", en); 198 if seg_ptr = null then go to RETURN; /* can't initiate the segment at all */ 199 end; 200 201 else if long_sw then do; /* success */ 202 segno = bin (baseno (seg_ptr), 17); 203 call ioa_ ("^a>^a initiated with segment number ^o", dn, en, segno); 204 long_sw = "0"b; /* print only for first refname */ 205 end; 206 207 end init; 208 209 210 211 212 clean_up: proc; 213 214 if names_ptr ^= null then free names in (area); 215 names_ptr = null; 216 217 end clean_up; 218 219 220 end initiate; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/20/86 1148.6 initiate.pl1 >special_ldd>install>MR12.0-1222>initiate.pl1 29 1 11/22/82 0955.6 branch_status.incl.pl1 >ldd>include>branch_status.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. act_dn 000164 automatic char(168) unaligned dcl 34 set ref 171* 173* 187* act_en 000246 automatic char(32) unaligned dcl 35 set ref 172* 173* 188* active_fnc_err_ 000020 constant entry external dcl 55 ref 73 addr builtin function dcl 67 ref 126 126 addrel builtin function dcl 67 ref 132 all_sw 000270 automatic bit(1) unaligned dcl 42 set ref 77* 85* 120 146 162 area based area(1024) dcl 40 ref 214 area_ptr 000302 automatic pointer dcl 45 set ref 122* 126* 132 214 arg based char unaligned dcl 33 set ref 83 85 85 86 86 87 87 87 88 89 90 90 91 91 93* 110 113* 115* 144 arg_count 000312 automatic fixed bin(17,0) dcl 47 set ref 71* 79 106 arg_len 000313 automatic fixed bin(17,0) dcl 47 set ref 81* 83 85 85 86 86 87 87 87 88 89 90 90 91 91 93 93 108* 110 113 113 115 115 144 arg_ptr 000304 automatic pointer dcl 45 set ref 81* 83 85 85 86 86 87 87 87 88 89 90 90 91 91 93 108* 110 113 115 144 baseno builtin function dcl 67 ref 202 bc 000267 automatic fixed bin(24,0) dcl 38 set ref 185* 186 bin builtin function dcl 67 ref 133 202 branch_status 000100 automatic structure level 1 dcl 1-1 set ref 126 126 chase_sw 000271 automatic bit(1) unaligned dcl 42 set ref 78* 88* 89* 126 126 cleanup 000322 stack reference condition dcl 69 ref 124 code 000320 automatic fixed bin(35,0) dcl 48 set ref 71* 72 81* 108* 113* 114 115* 126* 127 128* 173* 174 174 174 178* 179 179* 183* 184 185* 186 197* com_err_ 000022 constant entry external dcl 56 ref 93 115 128 179 183 192 197 com_err_$suppress_name 000024 constant entry external dcl 56 ref 99 cu_$af_return_arg 000026 constant entry external dcl 57 ref 71 cu_$arg_ptr 000030 constant entry external dcl 58 ref 81 108 dn 000112 automatic char(168) unaligned dcl 34 set ref 113* 126* 128* 128 171 185* 187 192* 192 197* 197 203* en 000236 automatic char(32) unaligned dcl 35 set ref 113* 126* 128* 157 172 185* 187 192* 197* 203* error_table_$badopt 000010 external static fixed bin(35,0) dcl 50 set ref 93* error_table_$dirseg 000012 external static fixed bin(35,0) dcl 51 set ref 184 192* error_table_$namedup 000014 external static fixed bin(35,0) dcl 52 ref 174 error_table_$segknown 000016 external static fixed bin(35,0) dcl 53 ref 174 expand_pathname_ 000032 constant entry external dcl 59 ref 113 fixed builtin function dcl 67 ref 126 126 force_sw 000272 automatic bit(1) unaligned dcl 42 set ref 77* 90* 91* 174 forced 000273 automatic bit(1) unaligned dcl 42 set ref 169* 174 177* get_system_free_area_ 000034 constant entry external dcl 60 ref 122 got_path 000274 automatic bit(1) unaligned dcl 42 set ref 105* 112 118* got_refname 000275 automatic bit(1) unaligned dcl 42 set ref 105* 121* 142 143* 156 hcs_$initiate 000036 constant entry external dcl 61 ref 173 hcs_$status_ 000040 constant entry external dcl 62 ref 126 hcs_$status_minf 000042 constant entry external dcl 63 ref 185 i 000314 automatic fixed bin(17,0) dcl 47 set ref 79* 81* 106* 108* ioa_ 000044 constant entry external dcl 64 ref 203 j 000315 automatic fixed bin(17,0) dcl 47 set ref 134* 135* 149* 149* 151 long_sw 000276 automatic bit(1) unaligned dcl 43 set ref 77* 86* 87* 201 204* names based char(32) array dcl 31 ref 135 149 214 names_count 000316 automatic fixed bin(17,0) dcl 47 set ref 133* 134 149 names_ptr 000306 automatic pointer dcl 45 set ref 104* 132* 135 149 214 214 215* names_rel_pointer 0(18) 000100 automatic bit(18) level 2 packed unaligned dcl 1-1 set ref 132 null builtin function dcl 67 ref 71 71 104 198 214 215 number_names 0(02) 000100 automatic bit(16) level 2 packed unaligned dcl 1-1 set ref 133 refname 000256 automatic char(32) unaligned dcl 35 set ref 135* 144* 149 157* 173* 178* 179* 183* rtrim builtin function dcl 67 ref 187 second_refname 000277 automatic bit(1) unaligned dcl 43 set ref 105* 142* 197 seg_ptr 000310 automatic pointer dcl 45 set ref 173* 198 202 segno 000317 automatic fixed bin(17,0) dcl 47 set ref 202* 203* some_args 000300 automatic bit(1) unaligned dcl 43 set ref 77* 83* 98 substr builtin function dcl 67 ref 83 110 term_$single_refname 000046 constant entry external dcl 65 ref 178 type 000266 automatic fixed bin(2,0) dcl 37 set ref 185* 186 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. directory_type internal static bit(2) initial dcl 1-1 link_type internal static bit(2) initial dcl 1-1 msf_type internal static bit(2) initial dcl 1-1 segment_type internal static bit(2) initial dcl 1-1 NAMES DECLARED BY EXPLICIT CONTEXT. INITIATE 001117 constant label dcl 173 ref 179 189 NEXT_ARG 001070 constant label dcl 154 ref 110 RETURN 001100 constant label dcl 162 ref 193 198 clean_up 001603 constant entry internal dcl 212 ref 124 162 in 000144 constant entry external dcl 20 init 001107 constant entry internal dcl 165 ref 137 146 151 159 initiate 000153 constant entry external dcl 20 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2046 2116 1630 2056 Length 2334 1630 50 202 215 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME in 350 external procedure is an external procedure. on unit on line 124 64 on unit init internal procedure shares stack frame of external procedure in. clean_up 64 internal procedure is called by several nonquick procedures. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME in 000100 branch_status in 000112 dn in 000164 act_dn in 000236 en in 000246 act_en in 000256 refname in 000266 type in 000267 bc in 000270 all_sw in 000271 chase_sw in 000272 force_sw in 000273 forced in 000274 got_path in 000275 got_refname in 000276 long_sw in 000277 second_refname in 000300 some_args in 000302 area_ptr in 000304 arg_ptr in 000306 names_ptr in 000310 seg_ptr in 000312 arg_count in 000313 arg_len in 000314 i in 000315 j in 000316 names_count in 000317 segno in 000320 code in THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_ne_as alloc_char_temp cat_realloc_chars call_ext_out_desc call_ext_out call_int_this call_int_other return_mac enable_op shorten_stack ext_entry int_entry op_freen_ THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. active_fnc_err_ com_err_ com_err_$suppress_name cu_$af_return_arg cu_$arg_ptr expand_pathname_ get_system_free_area_ hcs_$initiate hcs_$status_ hcs_$status_minf ioa_ term_$single_refname THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$badopt error_table_$dirseg error_table_$namedup error_table_$segknown CONSTANTS 000000 aa 404000000021 000001 aa 524000000046 000002 aa 524000000011 001623 aa 060 000 000 000 0 000003 aa 404000000030 000004 aa 524000000045 000005 aa 404000000002 000006 aa 514000000001 001624 aa 076 000 000 000 > 000007 aa 524000000040 000010 aa 404000000001 000011 aa 526000000040 000012 aa 526000000250 000013 aa 524000000067 000014 aa 526000000000 000015 aa 5240ŠўPџџџжPost Multics €žŒ€ €%.S˜‡ј=ЄІ@ў4цBў"џџџжElliott Multics €›šmциSєI`ЖюРЮў Ѕџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџ№§юЅџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџр§жНџџџџџџџџџпџПџїџџџџПџџџџџџџџџџџџ§џџџџџџџџ§џџџџџџџџџџџџ§ОІџџџїџџџџџџџџџџџўџџџџџџџџџџџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџџџџџџџџџџџџџр §ІБџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџр §†ПџџџџџџџџџћпїџўџџџџїџџџџџџџџџџџџџoџџџџџџџџџџџџџџџџџџџџР§nСў.џџџџр§VЙ?џџћџџџџџџџџџџџџџџџџџџџўї§џџџџџ§џџџџџџџџџџџџџлџџџџџџџџџпџџџџџџџџџџџ№§>.§.Ѕџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџр§Ѕџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџџџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџр§ўџџџжSkeet Multics €œЬЈІ€7žS'С~пvєС€§тџџџжMaryniuk Multics €€цcO€МšSeж]жœх§Цхџg`§Њ Qџџџїџџџџџџџџўџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџј§”џџџжSawler Multics €—@’Џ €•Rг˜scЖъndX§xnРџџџПџќ§b`џџџїџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџПџџџџўџџџПџў§Leџџџџџџџџџџџџџџџџџџџџџџџ§щћџџџџџџћџџџџџџџџџџџџџЗџџџрџџ€€џџџџр§6 rџџџїџџџџџџџџџџџџџџџџџџџ§щћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџ€р?џџ§ rџџ№ ќџџџџџџј џџџџџџћџџџ№€џџџ€`§ џџџжFraser Multics €œГБ№-#S%3tЂќю?џџџџџџџџџрќжVџџџџџџџџџџџџџџџ€1џџў‚3БчрЪ?џ№њ€?уƒŸ> №Яџ№ќРџџџжMikulecky Multics €œЬЉ€3DS2iSAОБdќЄБџћџџџџџрќŒЅџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџрќtРџџџџ§яћџџџџџџћџџџџџџџџџўџџџџџџџџџПџ№џџџЧXe ќ\ Рџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџрќD Ѕџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџЗџџџџџџџџџПџџџџџџџџџџџрќ,Л?џџџўџў?џџџј!џџџОџџяџџџџџџџџџџџџџџџџћџџџџџџџџџћџџџџџџџџџџџўќн‘чџџџїџџџџџџџџџџџџџџџџџџџ§яћџџџџџџћџџџџџџџџџџџџџїџџџџџџџџџПџџџџџџџџџџџрode 000172 aa 6 00356 2521 00 spri2 pr6|238 000173 aa 6 00346 6211 00 eax1 pr6|230 000174 aa 020000 4310 07 fld 8192,dl 000175 la 4 00026 3521 20 epp2 pr4|22,* cu_$af_return_arg 000176 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 72 if code = 0 then do; 000177 aa 6 00320 2361 00 ldq pr6|208 code 000200 aa 000031 6010 04 tnz 25,ic 000231 STATEMENT 1 ON LINE 73 call active_fnc_err_ (0, "initiate", "Cannot be called as an active function."); 000201 aa 6 00344 4501 00 stz pr6|228 000202 aa 777636 2370 04 ldaq -98,ic 000040 = 151156151164 151141164145 000203 aa 6 00342 7571 00 staq pr6|226 000204 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000205 aa 777707 00 0050 desc9a -57,40 000113 = 103141156156 000206 aa 6 00346 00 0050 desc9a pr6|230,40 000207 aa 6 00344 3521 00 epp2 pr6|228 000210 aa 6 00362 2521 00 spri2 pr6|242 000211 aa 6 00342 3521 00 epp2 pr6|226 000212 aa 6 00364 2521 00 spri2 pr6|244 000213 aa 6 00346 3521 00 epp2 pr6|230 000214 aa 6 00366 2521 00 spri2 pr6|246 000215 aa 777611 3520 04 epp2 -119,ic 000026 = 404000000005 000216 aa 6 00370 2521 00 spri2 pr6|248 000217 aa 777606 3520 04 epp2 -122,ic 000025 = 524000000010 000220 aa 6 00372 2521 00 spri2 pr6|250 000221 aa 777603 3520 04 epp2 -125,ic 000024 = 524000000047 000222 aa 6 00374 2521 00 spri2 pr6|252 000223 aa 6 00360 6211 00 eax1 pr6|240 000224 aa 014000 4310 07 fld 6144,dl 000225 aa 6 00044 3701 20 epp4 pr6|36,* 000226 la 4 00020 3521 20 epp2 pr4|16,* active_fnc_err_ 000227 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 74 return; 000230 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 75 end; STATEMENT 1 ON LINE 77 all_sw, force_sw, long_sw, some_args = "0"b; 000231 aa 6 00270 4501 00 stz pr6|184 all_sw 000232 aa 6 00272 4501 00 stz pr6|186 force_sw 000233 aa 6 00276 4501 00 stz pr6|190 long_sw 000234 aa 6 00300 4501 00 stz pr6|192 some_args STATEMENT 1 ON LINE 78 chase_sw = "1"b; 000235 aa 400000 2350 03 lda 131072,du 000236 aa 6 00271 7551 00 sta pr6|185 chase_sw STATEMENT 1 ON LINE 79 do i = 1 to arg_count; 000237 aa 6 00312 2361 00 ldq pr6|202 arg_count 000240 aa 6 00330 7561 00 stq pr6|216 000241 aa 000001 2360 07 ldq 1,dl 000242 aa 6 00314 7561 00 stq pr6|204 i 000243 aa 000000 0110 03 nop 0,du 000244 aa 6 00314 2361 00 ldq pr6|204 i 000245 aa 6 00330 1161 00 cmpq pr6|216 000246 aa 000174 6054 04 tpnz 124,ic 000442 STATEMENT 1 ON LINE 81 call cu_$arg_ptr (i, arg_ptr, arg_len, code); 000247 aa 6 00314 3521 00 epp2 pr6|204 i 000250 aa 6 00350 2521 00 spri2 pr6|232 000251 aa 6 00304 3521 00 epp2 pr6|196 arg_ptr 000252 aa 6 00352 2521 00 spri2 pr6|234 000253 aa 6 00313 3521 00 epp2 pr6|203 arg_len 000254 aa 6 00354 2521 00 spri2 pr6|236 000255 aa 6 00320 3521 00 epp2 pr6|208 code 000256 aa 6 00356 2521 00 spri2 pr6|238 000257 aa 6 00346 6211 00 eax1 pr6|230 000260 aa 020000 4310 07 fld 8192,dl 000261 aa 6 00044 3701 20 epp4 pr6|36,* 000262 la 4 00030 3521 20 epp2 pr4|24,* cu_$arg_ptr 000263 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 83 if substr (arg, 1, 1) ^= "-" then some_args = "1"b; 000264 aa 6 00304 3735 20 epp7 pr6|196,* arg_ptr 000265 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 000266 aa 7 00000 00 0001 desc9a pr7|0,1 arg 000267 aa 001342 00 0001 desc9a 738,1 001627 = 055000000000 000270 aa 000004 6000 04 tze 4,ic 000274 000271 aa 400000 2350 03 lda 131072,du 000272 aa 6 00300 7551 00 sta pr6|192 some_args 000273 aa 000145 7100 04 tra 101,ic 000440 STATEMENT 1 ON LINE 85 else if arg = "-all" | arg = "-a" then all_sw = "1"b; 000274 aa 6 00313 7271 00 lxl7 pr6|203 arg_len 000275 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000276 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000277 aa 777526 00 0004 desc9a -170,4 000023 = 055141154154 000300 aa 000005 6000 04 tze 5,ic 000305 000301 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000302 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000303 aa 001325 00 0002 desc9a 725,2 001626 = 055141000000 000304 aa 000004 6010 04 tnz 4,ic 000310 000305 aa 400000 2350 03 lda 131072,du 000306 aa 6 00270 7551 00 sta pr6|184 all_sw 000307 aa 000131 7100 04 tra 89,ic 000440 STATEMENT 1 ON LINE 86 else if arg = "-brief" | arg = "-bf" then long_sw = "0"b; 000310 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000311 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000312 aa 777526 00 0006 desc9a -170,6 000036 = 055142162151 000313 aa 000005 6000 04 tze 5,ic 000320 000314 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000315 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000316 aa 777506 00 0003 desc9a -186,3 000022 = 055142146000 000317 aa 000003 6010 04 tnz 3,ic 000322 000320 aa 6 00276 4501 00 stz pr6|190 long_sw 000321 aa 000117 7100 04 tra 79,ic 000440 STATEMENT 1 ON LINE 87 else if arg = "-long" | arg = "-lg" | arg = "-s" then long_sw = "1"b; 000322 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000323 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000324 aa 777512 00 0005 desc9a -182,5 000034 = 055154157156 000325 aa 000011 6000 04 tze 9,ic 000336 000326 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000327 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000330 aa 777473 00 0003 desc9a -197,3 000021 = 055154147000 000331 aa 000005 6000 04 tze 5,ic 000336 000332 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000333 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000334 aa 001273 00 0002 desc9a 699,2 001625 = 055163000000 000335 aa 000004 6010 04 tnz 4,ic 000341 000336 aa 400000 2350 03 lda 131072,du 000337 aa 6 00276 7551 00 sta pr6|190 long_sw 000340 aa 000100 7100 04 tra 64,ic 000440 STATEMENT 1 ON LINE 88 else if arg = "-chase" then chase_sw = "1"b; 000341 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000342 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000343 aa 777471 00 0006 desc9a -199,6 000032 = 055143150141 000344 aa 000004 6010 04 tnz 4,ic 000350 000345 aa 400000 2350 03 lda 131072,du 000346 aa 6 00271 7551 00 sta pr6|185 chase_sw 000347 aa 000071 7100 04 tra 57,ic 000440 STATEMENT 1 ON LINE 89 else if arg = "-no_chase" then chase_sw = "0"b; 000350 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000351 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000352 aa 777504 00 0011 desc9a -188,9 000054 = 055156157137 000353 aa 000003 6010 04 tnz 3,ic 000356 000354 aa 6 00271 4501 00 stz pr6|185 chase_sw 000355 aa 000063 7100 04 tra 51,ic 000440 STATEMENT 1 ON LINE 90 else if arg = "-force" | arg = "-fc" then force_sw = "1"b; 000356 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000357 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000360 aa 777452 00 0006 desc9a -214,6 000030 = 055146157162 000361 aa 000005 6000 04 tze 5,ic 000366 000362 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000363 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000364 aa 777436 00 0003 desc9a -226,3 000020 = 055146143000 000365 aa 000004 6010 04 tnz 4,ic 000371 000366 aa 400000 2350 03 lda 131072,du 000367 aa 6 00272 7551 00 sta pr6|186 force_sw 000370 aa 000050 7100 04 tra 40,ic 000440 STATEMENT 1 ON LINE 91 else if arg = "-no_force" | arg = "-nfc" then force_sw = "0"b; 000371 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000372 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000373 aa 777460 00 0011 desc9a -208,9 000051 = 055156157137 000374 aa 000005 6000 04 tze 5,ic 000401 000375 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 000376 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 000377 aa 777422 00 0004 desc9a -238,4 000017 = 055156146143 000400 aa 000003 6010 04 tnz 3,ic 000403 000401 aa 6 00272 4501 00 stz pr6|186 force_sw 000402 aa 000036 7100 04 tra 30,ic 000440 STATEMENT 1 ON LINE 92 else do; STATEMENT 1 ON LINE 93 call com_err_ (error_table_$badopt, "initiate", "^a", arg); 000403 aa 6 00313 2361 00 ldq pr6|203 arg_len 000404 aa 526000 2760 03 orq 175104,du 000405 aa 6 00344 7561 00 stq pr6|228 000406 aa 777432 2370 04 ldaq -230,ic 000040 = 151156151164 151141164145 000407 aa 6 00342 7571 00 staq pr6|226 000410 aa 136141 2350 03 lda 48225,du 000411 aa 6 00345 7551 00 sta pr6|229 000412 aa 6 00044 3701 20 epp4 pr6|36,* 000413 la 4 00010 3521 20 epp2 pr4|8,* error_table_$badopt 000414 aa 6 00400 2521 00 spri2 pr6|256 000415 aa 6 00342 3521 00 epp2 pr6|226 000416 aa 6 00402 2521 00 spri2 pr6|258 000417 aa 6 00345 3521 00 epp2 pr6|229 000420 aa 6 00404 2521 00 spri2 pr6|260 000421 aa 7 00000 3521 00 epp2 pr7|0 arg 000422 aa 6 00406 2521 00 spri2 pr6|262 000423 aa 777373 3520 04 epp2 -261,ic 000016 = 404000000043 000424 aa 6 00410 2521 00 spri2 pr6|264 000425 aa 777400 3520 04 epp2 -256,ic 000025 = 524000000010 000426 aa 6 00412 2521 00 spri2 pr6|266 000427 aa 777366 3520 04 epp2 -266,ic 000015 = 524000000002 000430 aa 6 00414 2521 00 spri2 pr6|268 000431 aa 6 00344 3521 00 epp2 pr6|228 000432 aa 6 00416 2521 00 spri2 pr6|270 000433 aa 6 00376 6211 00 eax1 pr6|254 000434 aa 020000 4310 07 fld 8192,dl 000435 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 000436 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 94 return; 000437 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 95 end; STATEMENT 1 ON LINE 96 end; 000440 aa 6 00314 0541 00 aos pr6|204 i 000441 aa 777603 7100 04 tra -125,ic 000244 STATEMENT 1 ON LINE 98 if ^some_args then do; 000442 aa 6 00300 2351 00 lda pr6|192 some_args 000443 aa 000031 6010 04 tnz 25,ic 000474 STATEMENT 1 ON LINE 99 call com_err_$suppress_name (0, "initiate", "Usage: initiate path {reference_names} {-control_args}"); 000444 aa 6 00344 4501 00 stz pr6|228 000445 aa 777373 2370 04 ldaq -261,ic 000040 = 151156151164 151141164145 000446 aa 6 00342 7571 00 staq pr6|226 000447 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000450 aa 777456 00 0070 desc9a -210,56 000125 = 125163141147 000451 aa 6 00360 00 0070 desc9a pr6|240,56 000452 aa 6 00344 3521 00 epp2 pr6|228 000453 aa 6 00400 2521 00 spri2 pr6|256 000454 aa 6 00342 3521 00 epp2 pr6|226 000455 aa 6 00402 2521 00 spri2 pr6|258 000456 aa 6 00360 3521 00 epp2 pr6|240 000457 aa 6 00404 2521 00 spri2 pr6|260 000460 aa 777346 3520 04 epp2 -282,ic 000026 = 404000000005 000461 aa 6 00406 2521 00 spri2 pr6|262 000462 aa 777343 3520 04 epp2 -285,ic 000025 = 524000000010 000463 aa 6 00410 2521 00 spri2 pr6|264 000464 aa 777327 3520 04 epp2 -297,ic 000013 = 524000000067 000465 aa 6 00412 2521 00 spri2 pr6|266 000466 aa 6 00376 6211 00 eax1 pr6|254 000467 aa 014000 4310 07 fld 6144,dl 000470 aa 6 00044 3701 20 epp4 pr6|36,* 000471 la 4 00024 3521 20 epp2 pr4|20,* com_err_$suppress_name 000472 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 101 return; 000473 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 102 end; STATEMENT 1 ON LINE 104 names_ptr = null; 000474 aa 777346 2370 04 ldaq -282,ic 000042 = 077777000043 000001000000 000475 aa 6 00306 7571 00 staq pr6|198 names_ptr STATEMENT 1 ON LINE 105 got_path, got_refname, second_refname = "0"b; 000476 aa 6 00274 4501 00 stz pr6|188 got_path 000477 aa 6 00275 4501 00 stz pr6|189 got_refname 000500 aa 6 00277 4501 00 stz pr6|191 second_refname STATEMENT 1 ON LINE 106 do i = 1 to arg_count; 000501 aa 6 00312 2361 00 ldq pr6|202 arg_count 000502 aa 6 00331 7561 00 stq pr6|217 000503 aa 000001 2360 07 ldq 1,dl 000504 aa 6 00314 7561 00 stq pr6|204 i 000505 aa 000000 0110 03 nop 0,du 000506 aa 6 00314 2361 00 ldq pr6|204 i 000507 aa 6 00331 1161 00 cmpq pr6|217 000510 aa 000362 6054 04 tpnz 242,ic 001072 STATEMENT 1 ON LINE 108 call cu_$arg_ptr (i, arg_ptr, arg_len, code); 000511 aa 6 00314 3521 00 epp2 pr6|204 i 000512 aa 6 00350 2521 00 spri2 pr6|232 000513 aa 6 00304 3521 00 epp2 pr6|196 arg_ptr 000514 aa 6 00352 2521 00 spri2 pr6|234 000515 aa 6 00313 3521 00 epp2 pr6|203 arg_len 000516 aa 6 00354 2521 00 spri2 pr6|236 000517 aa 6 00320 3521 00 epp2 pr6|208 code 000520 aa 6 00356 2521 00 spri2 pr6|238 000521 aa 6 00346 6211 00 eax1 pr6|230 000522 aa 020000 4310 07 fld 8192,dl 000523 aa 6 00044 3701 20 epp4 pr6|36,* 000524 la 4 00030 3521 20 epp2 pr4|24,* cu_$arg_ptr 000525 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 110 if substr (arg, 1, 1) = "-" then go to NEXT_ARG; 000526 aa 6 00304 3735 20 epp7 pr6|196,* arg_ptr 000527 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 000530 aa 7 00000 00 0001 desc9a pr7|0,1 arg 000531 aa 001100 00 0001 desc9a 576,1 001627 = 055000000000 000532 aa 000336 6000 04 tze 222,ic 001070 STATEMENT 1 ON LINE 112 if ^got_path then do; 000533 aa 6 00274 2351 00 lda pr6|188 got_path 000534 aa 000273 6010 04 tnz 187,ic 001027 STATEMENT 1 ON LINE 113 call expand_pathname_ (arg, dn, en, code); 000535 aa 6 00313 2361 00 ldq pr6|203 arg_len 000536 aa 526000 2760 03 orq 175104,du 000537 aa 6 00344 7561 00 stq pr6|228 000540 aa 7 00000 3521 00 epp2 pr7|0 arg 000541 aa 6 00400 2521 00 spri2 pr6|256 000542 aa 6 00112 3521 00 epp2 pr6|74 dn 000543 aa 6 00402 2521 00 spri2 pr6|258 000544 aa 6 00236 3521 00 epp2 pr6|158 en 000545 aa 6 00404 2521 00 spri2 pr6|260 000546 aa 6 00320 3521 00 epp2 pr6|208 code 000547 aa 6 00406 2521 00 spri2 pr6|262 000550 aa 6 00344 3521 00 epp2 pr6|228 000551 aa 6 00410 2521 00 spri2 pr6|264 000552 aa 777240 3520 04 epp2 -352,ic 000012 = 526000000250 000553 aa 6 00412 2521 00 spri2 pr6|266 000554 aa 777235 3520 04 epp2 -355,ic 000011 = 526000000040 000555 aa 6 00414 2521 00 spri2 pr6|268 000556 aa 777240 3520 04 epp2 -352,ic 000016 = 404000000043 000557 aa 6 00416 2521 00 spri2 pr6|270 000560 aa 6 00376 6211 00 eax1 pr6|254 000561 aa 020000 4310 07 fld 8192,dl 000562 aa 6 00044 3701 20 epp4 pr6|36,* 000563 la 4 00032 3521 20 epp2 pr4|26,* expand_pathname_ 000564 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 114 if code ^= 0 then do; 000565 aa 6 00320 2361 00 ldq pr6|208 code 000566 aa 000036 6000 04 tze 30,ic 000624 STATEMENT 1 ON LINE 115 call com_err_ (code, "initiate", "^a", arg); 000567 aa 6 00313 2361 00 ldq pr6|203 arg_len 000570 aa 526000 2760 03 orq 175104,du 000571 aa 6 00344 7561 00 stq pr6|228 000572 aa 777246 2370 04 ldaq -346,ic 000040 = 151156151164 151141164145 000573 aa 6 00342 7571 00 staq pr6|226 000574 aa 136141 2350 03 lda 48225,du 000575 aa 6 00345 7551 00 sta pr6|229 000576 aa 6 00320 3521 00 epp2 pr6|208 code 000577 aa 6 00400 2521 00 spri2 pr6|256 000600 aa 6 00342 3521 00 epp2 pr6|226 000601 aa 6 00402 2521 00 spri2 pr6|258 000602 aa 6 00345 3521 00 epp2 pr6|229 000603 aa 6 00404 2521 00 spri2 pr6|260 000604 aa 6 00304 3521 20 epp2 pr6|196,* arg 000605 aa 6 00406 2521 00 spri2 pr6|262 000606 aa 777210 3520 04 epp2 -376,ic 000016 = 404000000043 000607 aa 6 00410 2521 00 spri2 pr6|264 000610 aa 777215 3520 04 epp2 -371,ic 000025 = 524000000010 000611 aa 6 00412 2521 00 spri2 pr6|266 000612 aa 777203 3520 04 epp2 -381,ic 000015 = 524000000002 000613 aa 6 00414 2521 00 spri2 pr6|268 000614 aa 6 00344 3521 00 epp2 pr6|228 000615 aa 6 00416 2521 00 spri2 pr6|270 000616 aa 6 00376 6211 00 eax1 pr6|254 000617 aa 020000 4310 07 fld 8192,dl 000620 aa 6 00044 3701 20 epp4 pr6|36,* 000621 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 000622 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 116 return; 000623 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 117 end; STATEMENT 1 ON LINE 118 got_path = "1"b; 000624 aa 400000 2350 03 lda 131072,du 000625 aa 6 00274 7551 00 sta pr6|188 got_path STATEMENT 1 ON LINE 120 if all_sw then do; 000626 aa 6 00270 2351 00 lda pr6|184 all_sw 000627 aa 000241 6000 04 tze 161,ic 001070 STATEMENT 1 ON LINE 121 got_refname = "1"b; 000630 aa 400000 2350 03 lda 131072,du 000631 aa 6 00275 7551 00 sta pr6|189 got_refname STATEMENT 1 ON LINE 122 area_ptr = get_system_free_area_ (); 000632 aa 6 00302 3521 00 epp2 pr6|194 area_ptr 000633 aa 6 00350 2521 00 spri2 pr6|232 000634 aa 6 00346 6211 00 eax1 pr6|230 000635 aa 004000 4310 07 fld 2048,dl 000636 aa 6 00044 3701 20 epp4 pr6|36,* 000637 la 4 00034 3521 20 epp2 pr4|28,* get_system_free_area_ 000640 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 124 on condition (cleanup) call clean_up; 000641 aa 000007 7260 07 lxl6 7,dl 000642 aa 777202 3520 04 epp2 -382,ic 000044 = 143154145141 000643 aa 0 00717 7001 00 tsx0 pr0|463 enable_op 000644 aa 000004 7100 04 tra 4,ic 000650 000645 aa 000322000000 000646 aa 000015 7100 04 tra 13,ic 000663 BEGIN CONDITION cleanup.1 ENTRY TO cleanup.1 STATEMENT 1 ON LINE 124 on condition (cleanup) call clean_up; 000647 da 000203200000 000650 aa 000100 6270 00 eax7 64 000651 aa 7 00034 3521 20 epp2 pr7|28,* 000652 aa 2 01047 2721 00 tsp2 pr2|551 int_entry 000653 aa 000000000000 000654 aa 000000000000 000655 aa 000001 7270 07 lxl7 1,dl 000656 aa 6 00056 6211 00 eax1 pr6|46 000657 aa 000000 4310 07 fld 0,dl 000660 aa 000723 3520 04 epp2 467,ic 001603 = 000100627000 000661 aa 0 00627 7001 00 tsx0 pr0|407 call_int_other 000662 aa 0 00631 7101 00 tra pr0|409 return_mac END CONDITION cleanup.1 STATEMENT 1 ON LINE 126 call hcs_$status_ (dn, en, fixed (chase_sw, 1), addr (branch_status), area_ptr, code); 000663 aa 6 00271 2351 00 lda pr6|185 chase_sw 000664 aa 000107 7730 00 lrl 71 000665 aa 6 00344 7561 00 stq pr6|228 000666 aa 6 00100 3735 00 epp7 pr6|64 branch_status 000667 aa 6 00342 6535 00 spri7 pr6|226 000670 aa 6 00112 3521 00 epp2 pr6|74 dn 000671 aa 6 00422 2521 00 spri2 pr6|274 000672 aa 6 00236 3521 00 epp2 pr6|158 en 000673 aa 6 00424 2521 00 spri2 pr6|276 000674 aa 6 00344 3521 00 epp2 pr6|228 000675 aa 6 00426 2521 00 spri2 pr6|278 000676 aa 6 00342 3521 00 epp2 pr6|226 000677 aa 6 00430 2521 00 spri2 pr6|280 000700 aa 6 00302 3521 00 epp2 pr6|194 area_ptr 000701 aa 6 00432 2521 00 spri2 pr6|282 000702 aa 6 00320 3521 00 epp2 pr6|208 code 000703 aa 6 00434 2521 00 spri2 pr6|284 000704 aa 777106 3520 04 epp2 -442,ic 000012 = 526000000250 000705 aa 6 00436 2521 00 spri2 pr6|286 000706 aa 777103 3520 04 epp2 -445,ic 000011 = 526000000040 000707 aa 6 00440 2521 00 spri2 pr6|288 000710 aa 777100 3520 04 epp2 -448,ic 000010 = 404000000001 000711 aa 6 00442 2521 00 spri2 pr6|290 000712 aa 777115 3520 04 epp2 -435,ic 000027 = 464000000000 000713 aa 6 00444 2521 00 spri2 pr6|292 000714 aa 6 00446 2521 00 spri2 pr6|294 000715 aa 777101 3520 04 epp2 -447,ic 000016 = 404000000043 000716 aa 6 00450 2521 00 spri2 pr6|296 000717 aa 6 00420 6211 00 eax1 pr6|272 000720 aa 030000 4310 07 fld 12288,dl 000721 aa 6 00044 3701 20 epp4 pr6|36,* 000722 la 4 00040 3521 20 epp2 pr4|32,* hcs_$status_ 000723 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 127 if code ^= 0 then do; 000724 aa 6 00320 2361 00 ldq pr6|208 code 000725 aa 000051 6000 04 tze 41,ic 000776 STATEMENT 1 ON LINE 128 call com_err_ (code, "initiate", "Unable to get names of ^a^[>^]^a", dn, dn ^= ">", en); 000726 aa 777112 2370 04 ldaq -438,ic 000040 = 151156151164 151141164145 000727 aa 6 00342 7571 00 staq pr6|226 000730 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000731 aa 777127 00 0040 desc9a -425,32 000057 = 125156141142 000732 aa 6 00346 00 0040 desc9a pr6|230,32 000733 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 000734 aa 6 00112 00 0250 desc9a pr6|74,168 dn 000735 aa 000671 00 0001 desc9a 441,1 001624 = 076000000000 000736 aa 0 00515 7001 00 tsx0 pr0|333 r_ne_as 000737 aa 6 00344 7551 00 sta pr6|228 000740 aa 6 00320 3521 00 epp2 pr6|208 code 000741 aa 6 00422 2521 00 spri2 pr6|274 000742 aa 6 00342 3521 00 epp2 pr6|226 000743 aa 6 00424 2521 00 spri2 pr6|276 000744 aa 6 00346 3521 00 epp2 pr6|230 000745 aa 6 00426 2521 00 spri2 pr6|278 000746 aa 6 00112 3521 00 epp2 pr6|74 dn 000747 aa 6 00430 2521 00 spri2 pr6|280 000750 aa 6 00344 3521 00 epp2 pr6|228 000751 aa 6 00432 2521 00 spri2 pr6|282 000752 aa 6 00236 3521 00 epp2 pr6|158 en 000753 aa 6 00434 2521 00 spri2 pr6|284 000754 aa 777042 3520 04 epp2 -478,ic 000016 = 404000000043 000755 aa 6 00436 2521 00 spri2 pr6|286 000756 aa 777047 3520 04 epp2 -473,ic 000025 = 524000000010 000757 aa 6 00440 2521 00 spri2 pr6|288 000760 aa 777027 3520 04 epp2 -489,ic 000007 = 524000000040 000761 aa 6 00442 2521 00 spri2 pr6|290 000762 aa 777030 3520 04 epp2 -488,ic 000012 = 526000000250 000763 aa 6 00444 2521 00 spri2 pr6|292 000764 aa 777022 3520 04 epp2 -494,ic 000006 = 514000000001 000765 aa 6 00446 2521 00 spri2 pr6|294 000766 aa 777023 3520 04 epp2 -493,ic 000011 = 526000000040 000767 aa 6 00450 2521 00 spri2 pr6|296 000770 aa 6 00420 6211 00 eax1 pr6|272 000771 aa 030000 4310 07 fld 12288,dl 000772 aa 6 00044 3701 20 epp4 pr6|36,* 000773 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 000774 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 130 return; 000775 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 131 end; STATEMENT 1 ON LINE 132 names_ptr = addrel (area_ptr, branch_status.names_rel_pointer); 000776 aa 6 00100 2351 00 lda pr6|64 branch_status.names_rel_pointer 000777 aa 000022 7350 00 als 18 001000 aa 6 00302 3521 61 epp2 pr6|194,*au area_ptr 001001 aa 000000 0520 03 adwp2 0,du 001002 aa 6 00306 2521 00 spri2 pr6|198 names_ptr STATEMENT 1 ON LINE 133 names_count = bin (branch_status.number_names); 001003 aa 6 00100 2351 00 lda pr6|64 branch_status.number_names 001004 aa 000002 7350 00 als 2 001005 aa 000070 7730 00 lrl 56 001006 aa 6 00316 7561 00 stq pr6|206 names_count STATEMENT 1 ON LINE 134 do j = 1 to names_count; 001007 aa 6 00332 7561 00 stq pr6|218 001010 aa 000001 2360 07 ldq 1,dl 001011 aa 6 00315 7561 00 stq pr6|205 j 001012 aa 6 00315 2361 00 ldq pr6|205 j 001013 aa 6 00332 1161 00 cmpq pr6|218 001014 aa 000054 6054 04 tpnz 44,ic 001070 STATEMENT 1 ON LINE 135 refname = names (j); 001015 aa 000003 7360 00 qls 3 001016 aa 6 00306 3735 20 epp7 pr6|198,* names_ptr 001017 aa 7 77770 3735 06 epp7 pr7|-8,ql names 001020 aa 000 100 100 500 mlr (pr),(pr),fill(000) 001021 aa 7 00000 00 0040 desc9a pr7|0,32 names 001022 aa 6 00256 00 0040 desc9a pr6|174,32 refname STATEMENT 1 ON LINE 137 call init; 001023 aa 000064 6700 04 tsp4 52,ic 001107 STATEMENT 1 ON LINE 138 end; 001024 aa 6 00315 0541 00 aos pr6|205 j 001025 aa 777765 7100 04 tra -11,ic 001012 STATEMENT 1 ON LINE 139 end; STATEMENT 1 ON LINE 140 end; 001026 aa 000042 7100 04 tra 34,ic 001070 STATEMENT 1 ON LINE 141 else do; STATEMENT 1 ON LINE 142 if got_refname then second_refname = "1"b; 001027 aa 6 00275 2351 00 lda pr6|189 got_refname 001030 aa 000003 6000 04 tze 3,ic 001033 001031 aa 400000 2350 03 lda 131072,du 001032 aa 6 00277 7551 00 sta pr6|191 second_refname STATEMENT 1 ON LINE 143 got_refname = "1"b; 001033 aa 400000 2350 03 lda 131072,du 001034 aa 6 00275 7551 00 sta pr6|189 got_refname STATEMENT 1 ON LINE 144 refname = arg; 001035 aa 6 00313 7271 00 lxl7 pr6|203 arg_len 001036 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 001037 aa 7 00000 00 0017 desc9a pr7|0,x7 arg 001040 aa 6 00256 00 0040 desc9a pr6|174,32 refname STATEMENT 1 ON LINE 146 if ^all_sw then call init; 001041 aa 6 00270 2351 00 lda pr6|184 all_sw 001042 aa 000003 6010 04 tnz 3,ic 001045 001043 aa 000044 6700 04 tsp4 36,ic 001107 001044 aa 000024 7100 04 tra 20,ic 001070 STATEMENT 1 ON LINE 148 else do; STATEMENT 1 ON LINE 149 do j = names_count by -1 to 1 while (names (j) ^= refname); 001045 aa 6 00316 2361 00 ldq pr6|206 names_count 001046 aa 6 00315 7561 00 stq pr6|205 j 001047 aa 000000 0110 03 nop 0,du 001050 aa 6 00315 2361 00 ldq pr6|205 j 001051 aa 000001 1160 07 cmpq 1,dl 001052 aa 000013 6040 04 tmi 11,ic 001065 001053 aa 000003 7360 00 qls 3 001054 aa 6 00306 3735 20 epp7 pr6|198,* names_ptr 001055 aa 7 77770 3735 06 epp7 pr7|-8,ql names 001056 aa 040 100 106 500 cmpc (pr),(pr),fill(040) 001057 aa 7 00000 00 0040 desc9a pr7|0,32 names 001060 aa 6 00256 00 0040 desc9a pr6|174,32 refname 001061 aa 000004 6000 04 tze 4,ic 001065 STATEMENT 2 ON LINE 149 end; 001062 aa 000001 3360 07 lcq 1,dl 001063 aa 6 00315 0561 00 asq pr6|205 j 001064 aa 777764 7100 04 tra -12,ic 001050 STATEMENT 1 ON LINE 151 if j = 0 then call init; 001065 aa 6 00315 2361 00 ldq pr6|205 j 001066 aa 000002 6010 04 tnz 2,ic 001070 001067 aa 000020 6700 04 tsp4 16,ic 001107 STATEMENT 1 ON LINE 152 end; STATEMENT 1 ON LINE 153 end; STATEMENT 1 ON LINE 154 NEXT_ARG: end; 001070 aa 6 00314 0541 00 aos pr6|204 i 001071 aa 777415 7100 04 tra -243,ic 000506 STATEMENT 1 ON LINE 156 if ^got_refname then do; 001072 aa 6 00275 2351 00 lda pr6|189 got_refname 001073 aa 000005 6010 04 tnz 5,ic 001100 STATEMENT 1 ON LINE 157 refname = en; 001074 aa 000 100 100 500 mlr (pr),(pr),fill(000) 001075 aa 6 00236 00 0040 desc9a pr6|158,32 en 001076 aa 6 00256 00 0040 desc9a pr6|174,32 refname STATEMENT 1 ON LINE 159 call init; 001077 aa 000010 6700 04 tsp4 8,ic 001107 STATEMENT 1 ON LINE 160 end; STATEMENT 1 ON LINE 162 RETURN: if all_sw then call clean_up; 001100 aa 6 00270 2351 00 lda pr6|184 all_sw 001101 aa 000005 6000 04 tze 5,ic 001106 001102 aa 6 00056 6211 00 eax1 pr6|46 001103 aa 000000 4310 07 fld 0,dl 001104 aa 000477 3520 04 epp2 319,ic 001603 = 000100627000 001105 aa 0 00625 7001 00 tsx0 pr0|405 call_int_this STATEMENT 1 ON LINE 163 return; 001106 aa 0 00631 7101 00 tra pr0|409 return_mac STATEMENT 1 ON LINE 220 end initiate; BEGIN PROCEDURE init ENTRY TO init STATEMENT 1 ON LINE 165 init: proc; 001107 aa 6 00334 6501 00 spri4 pr6|220 STATEMENT 1 ON LINE 169 forced = "0"b; 001110 aa 6 00273 4501 00 stz pr6|187 forced STATEMENT 1 ON LINE 171 act_dn = dn; 001111 aa 000 100 100 500 mlr (pr),(pr),fill(000) 001112 aa 6 00112 00 0250 desc9a pr6|74,168 dn 001113 aa 6 00164 00 0250 desc9a pr6|116,168 act_dn STATEMENT 1 ON LINE 172 act_en = en; 001114 aa 000 100 100 500 mlr (pr),(pr),fill(000) 001115 aa 6 00236 00 0040 desc9a pr6|158,32 en 001116 aa 6 00246 00 0040 desc9a pr6|166,32 act_en STATEMENT 1 ON LINE 173 INITIATE: call hcs_$initiate (act_dn, act_en, refname, 0, 0, seg_ptr, code); 001117 aa 6 00452 4501 00 stz pr6|298 001120 aa 6 00453 4501 00 stz pr6|299 001121 aa 6 00164 3521 00 epp2 pr6|116 act_dn 001122 aa 6 00456 2521 00 spri2 pr6|302 001123 aa 6 00246 3521 00 epp2 pr6|166 act_en 001124 aa 6 00460 2521 00 spri2 pr6|304 001125 aa 6 00256 3521 00 epp2 pr6|174 refname 001126 aa 6 00462 2521 00 spri2 pr6|306 001127 aa 6 00452 3521 00 epp2 pr6|298 001130 aa 6 00464 2521 00 spri2 pr6|308 001131 aa 6 00453 3521 00 epp2 pr6|299 001132 aa 6 00466 2521 00 spri2 pr6|310 001133 aa 6 00310 3521 00 epp2 pr6|200 seg_ptr 001134 aa 6 00470 2521 00 spri2 pr6|312 001135 aa 6 00320 3521 00 epp2 pr6|208 code 001136 aa 6 00472 2521 00 spri2 pr6|314 001137 aa 776653 3520 04 epp2 -597,ic 000012 = 526000000250 001140 aa 6 00474 2521 00 spri2 pr6|316 001141 aa 776650 3520 04 epp2 -600,ic 000011 = 526000000040 001142 aa 6 00476 2521 00 spri2 pr6|318 001143 aa 6 00500 2521 00 spri2 pr6|320 001144 aa 776644 3520 04 epp2 -604,ic 000010 = 404000000001 001145 aa 6 00502 2521 00 spri2 pr6|322 001146 aa 776637 3520 04 epp2 -609,ic 000005 = 404000000002 001147 aa 6 00504 2521 00 spri2 pr6|324 001150 aa 776657 3520 04 epp2 -593,ic 000027 = 464000000000 001151 aa 6 00506 2521 00 spri2 pr6|326 001152 aa 776644 3520 04 epp2 -604,ic 000016 = 404000000043 001153 aa 6 00510 2521 00 spri2 pr6|328 001154 aa 6 00454 6211 00 eax1 pr6|300 001155 aa 034000 4310 07 fld 14336,dl 001156 aa 6 00044 3701 20 epp4 pr6|36,* 001157 la 4 00036 3521 20 epp2 pr4|30,* hcs_$initiate 001160 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 174 if code ^= 0 & code ^= error_table_$segknown then /* OK if seg already known by same name */ if code = error_table_$namedup then /* a different seg known by this name */ if force_sw & ^forced then do; 001161 aa 6 00320 2361 00 ldq pr6|208 code 001162 aa 000360 6000 04 tze 240,ic 001542 001163 aa 6 00044 3701 20 epp4 pr6|36,* 001164 la 4 00016 1161 20 cmpq pr4|14,* error_table_$segknown 001165 aa 000355 6000 04 tze 237,ic 001542 001166 la 4 00014 1161 20 cmpq pr4|12,* error_table_$namedup 001167 aa 000111 6010 04 tnz 73,ic 001300 001170 aa 6 00272 2351 00 lda pr6|186 force_sw 001171 aa 000056 6000 04 tze 46,ic 001247 001172 aa 6 00273 2351 00 lda pr6|187 forced 001173 aa 000054 6010 04 tnz 44,ic 001247 STATEMENT 1 ON LINE 177 forced = "1"b; 001174 aa 400000 2350 03 lda 131072,du 001175 aa 6 00273 7551 00 sta pr6|187 forced STATEMENT 1 ON LINE 178 call term_$single_refname (refname, code); 001176 aa 6 00256 3521 00 epp2 pr6|174 refname 001177 aa 6 00456 2521 00 spri2 pr6|302 001200 aa 6 00320 3521 00 epp2 pr6|208 code 001201 aa 6 00460 2521 00 spri2 pr6|304 001202 aa 776607 3520 04 epp2 -633,ic 000011 = 526000000040 001203 aa 6 00462 2521 00 spri2 pr6|306 001204 aa 776612 3520 04 epp2 -630,ic 000016 = 404000000043 001205 aa 6 00464 2521 00 spri2 pr6|308 001206 aa 6 00454 6211 00 eax1 pr6|300 001207 aa 010000 4310 07 fld 4096,dl 001210 la 4 00046 3521 20 epp2 pr4|38,* term_$single_refname 001211 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 179 if code ^= 0 then call com_err_ (code, "initiate", "Unable to terminate reference name ^a", refname); 001212 aa 6 00320 2361 00 ldq pr6|208 code 001213 aa 777704 6000 04 tze -60,ic 001117 001214 aa 776624 2370 04 ldaq -620,ic 000040 = 151156151164 151141164145 001215 aa 6 00512 7571 00 staq pr6|330 001216 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001217 aa 776663 00 0050 desc9a -589,40 000101 = 125156141142 001220 aa 6 00454 00 0050 desc9a pr6|300,40 001221 aa 6 00320 3521 00 epp2 pr6|208 code 001222 aa 6 00516 2521 00 spri2 pr6|334 001223 aa 6 00512 3521 00 epp2 pr6|330 001224 aa 6 00520 2521 00 spri2 pr6|336 001225 aa 6 00454 3521 00 epp2 pr6|300 001226 aa 6 00522 2521 00 spri2 pr6|338 001227 aa 6 00256 3521 00 epp2 pr6|174 refname 001230 aa 6 00524 2521 00 spri2 pr6|340 001231 aa 776565 3520 04 epp2 -651,ic 000016 = 404000000043 001232 aa 6 00526 2521 00 spri2 pr6|342 001233 aa 776572 3520 04 epp2 -646,ic 000025 = 524000000010 001234 aa 6 00530 2521 00 spri2 pr6|344 001235 aa 776547 3520 04 epp2 -665,ic 000004 = 524000000045 001236 aa 6 00532 2521 00 spri2 pr6|346 001237 aa 776552 3520 04 epp2 -662,ic 000011 = 526000000040 001240 aa 6 00534 2521 00 spri2 pr6|348 001241 aa 6 00514 6211 00 eax1 pr6|332 001242 aa 020000 4310 07 fld 8192,dl 001243 aa 6 00044 3701 20 epp4 pr6|36,* 001244 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001245 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 182 end; 001246 aa 000333 7100 04 tra 219,ic 001601 STATEMENT 1 ON LINE 183 else call com_err_ (code, "initiate", "^a", refname); 001247 aa 776571 2370 04 ldaq -647,ic 000040 = 151156151164 151141164145 001250 aa 6 00512 7571 00 staq pr6|330 001251 aa 136141 2350 03 lda 48225,du 001252 aa 6 00453 7551 00 sta pr6|299 001253 aa 6 00320 3521 00 epp2 pr6|208 code 001254 aa 6 00516 2521 00 spri2 pr6|334 001255 aa 6 00512 3521 00 epp2 pr6|330 001256 aa 6 00520 2521 00 spri2 pr6|336 001257 aa 6 00453 3521 00 epp2 pr6|299 001260 aa 6 00522 2521 00 spri2 pr6|338 001261 aa 6 00256 3521 00 epp2 pr6|174 refname 001262 aa 6 00524 2521 00 spri2 pr6|340 001263 aa 776533 3520 04 epp2 -677,ic 000016 = 404000000043 001264 aa 6 00526 2521 00 spri2 pr6|342 001265 aa 776540 3520 04 epp2 -672,ic 000025 = 524000000010 001266 aa 6 00530 2521 00 spri2 pr6|344 001267 aa 776526 3520 04 epp2 -682,ic 000015 = 524000000002 001270 aa 6 00532 2521 00 spri2 pr6|346 001271 aa 776520 3520 04 epp2 -688,ic 000011 = 526000000040 001272 aa 6 00534 2521 00 spri2 pr6|348 001273 aa 6 00514 6211 00 eax1 pr6|332 001274 aa 020000 4310 07 fld 8192,dl 001275 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001276 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc 001277 aa 000302 7100 04 tra 194,ic 001601 STATEMENT 1 ON LINE 184 else if code = error_table_$dirseg then do; 001300 la 4 00012 1161 20 cmpq pr4|10,* error_table_$dirseg 001301 aa 000163 6010 04 tnz 115,ic 001464 STATEMENT 1 ON LINE 185 call hcs_$status_minf (dn, en, 1, type, bc, code); 001302 aa 000001 2360 07 ldq 1,dl 001303 aa 6 00453 7561 00 stq pr6|299 001304 aa 6 00112 3521 00 epp2 pr6|74 dn 001305 aa 6 00456 2521 00 spri2 pr6|302 001306 aa 6 00236 3521 00 epp2 pr6|158 en 001307 aa 6 00460 2521 00 spri2 pr6|304 001310 aa 6 00453 3521 00 epp2 pr6|299 001311 aa 6 00462 2521 00 spri2 pr6|306 001312 aa 6 00266 3521 00 epp2 pr6|182 type 001313 aa 6 00464 2521 00 spri2 pr6|308 001314 aa 6 00267 3521 00 epp2 pr6|183 bc 001315 aa 6 00466 2521 00 spri2 pr6|310 001316 aa 6 00320 3521 00 epp2 pr6|208 code 001317 aa 6 00470 2521 00 spri2 pr6|312 001320 aa 776472 3520 04 epp2 -710,ic 000012 = 526000000250 001321 aa 6 00472 2521 00 spri2 pr6|314 001322 aa 776467 3520 04 epp2 -713,ic 000011 = 526000000040 001323 aa 6 00474 2521 00 spri2 pr6|316 001324 aa 776464 3520 04 epp2 -716,ic 000010 = 404000000001 001325 aa 6 00476 2521 00 spri2 pr6|318 001326 aa 776457 3520 04 epp2 -721,ic 000005 = 404000000002 001327 aa 6 00500 2521 00 spri2 pr6|320 001330 aa 776453 3520 04 epp2 -725,ic 000003 = 404000000030 001331 aa 6 00502 2521 00 spri2 pr6|322 001332 aa 776464 3520 04 epp2 -716,ic 000016 = 404000000043 001333 aa 6 00504 2521 00 spri2 pr6|324 001334 aa 6 00454 6211 00 eax1 pr6|300 001335 aa 030000 4310 07 fld 12288,dl 001336 la 4 00042 3521 20 epp2 pr4|34,* hcs_$status_minf 001337 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 186 if code = 0 & type = 2 & bc > 0 then do; 001340 aa 6 00320 2361 00 ldq pr6|208 code 001341 aa 000052 6010 04 tnz 42,ic 001413 001342 aa 6 00266 2361 00 ldq pr6|182 type 001343 aa 000002 1160 07 cmpq 2,dl 001344 aa 000047 6010 04 tnz 39,ic 001413 001345 aa 6 00267 2361 00 ldq pr6|183 bc 001346 aa 000045 6044 04 tmoz 37,ic 001413 STATEMENT 1 ON LINE 187 act_dn = rtrim (dn) || ">" || en; 001347 aa 000 000 165 500 tctr (pr) 001350 aa 6 00112 00 0250 desc9a pr6|74,168 dn 001351 aa 0 76605 0001 00 arg pr0|-635 = 777777777777 001352 aa 6 00056 0001 00 arg pr6|46 001353 aa 6 00056 2361 00 ldq pr6|46 001354 aa 0 00242 3761 00 anq pr0|162 = 000777777777 001355 aa 6 00453 7561 00 stq pr6|299 001356 aa 000250 2360 07 ldq 168,dl 001357 aa 6 00453 1761 00 sbq pr6|299 001360 aa 6 00453 7561 00 stq pr6|299 001361 aa 000001 0760 07 adq 1,dl 001362 aa 0 00551 7001 00 tsx0 pr0|361 alloc_char_temp 001363 aa 6 00453 2351 00 lda pr6|299 001364 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 001365 aa 6 00112 00 0005 desc9a pr6|74,al dn 001366 aa 2 00000 00 0005 desc9a pr2|0,al 001367 aa 040 105 100 404 mlr (ic),(pr,al),fill(040) 001370 aa 000235 00 0001 desc9a 157,1 001624 = 076000000000 001371 aa 2 00000 00 0001 desc9a pr2|0,1 001372 aa 6 00453 7561 00 stq pr6|299 001373 aa 000040 0760 07 adq 32,dl 001374 aa 6 00452 7561 00 stq pr6|298 001375 aa 0 00606 7001 00 tsx0 pr0|390 cat_realloc_chars 001376 aa 6 00453 2351 00 lda pr6|299 001377 aa 040 105 100 500 mlr (pr),(pr,al),fill(040) 001400 aa 6 00236 00 0040 desc9a pr6|158,32 en 001401 aa 2 00000 00 0040 desc9a pr2|0,32 001402 aa 6 00452 2361 00 ldq pr6|298 001403 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 001404 aa 2 00000 00 0006 desc9a pr2|0,ql 001405 aa 6 00164 00 0250 desc9a pr6|116,168 act_dn STATEMENT 1 ON LINE 188 act_en = "0"; 001406 aa 0 01014 7001 00 tsx0 pr0|524 shorten_stack 001407 aa 040 100 100 404 mlr (ic),(pr),fill(040) 001410 aa 000214 00 0001 desc9a 140,1 001623 = 060000000000 001411 aa 6 00246 00 0040 desc9a pr6|166,32 act_en STATEMENT 1 ON LINE 189 goto INITIATE; 001412 aa 777505 7100 04 tra -187,ic 001117 STATEMENT 1 ON LINE 190 end; STATEMENT 1 ON LINE 191 else do; STATEMENT 1 ON LINE 192 call com_err_ (error_table_$dirseg, "initiate", "^a^[>^]^a", dn, dn ^= ">", en); 001413 aa 776425 2370 04 ldaq -747,ic 000040 = 151156151164 151141164145 001414 aa 6 00512 7571 00 staq pr6|330 001415 aa 776431 2370 04 ldaq -743,ic 000046 = 136141136133 076136135136 001416 aa 6 00514 7571 00 staq pr6|332 001417 aa 141000 2350 03 lda 49664,du 001420 aa 6 00516 7551 00 sta pr6|334 001421 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 001422 aa 6 00112 00 0250 desc9a pr6|74,168 dn 001423 aa 000203 00 0001 desc9a 131,1 001624 = 076000000000 001424 aa 0 00515 7001 00 tsx0 pr0|333 r_ne_as 001425 aa 6 00452 7551 00 sta pr6|298 001426 aa 6 00044 3701 20 epp4 pr6|36,* 001427 la 4 00012 3521 20 epp2 pr4|10,* error_table_$dirseg 001430 aa 6 00456 2521 00 spri2 pr6|302 001431 aa 6 00512 3521 00 epp2 pr6|330 001432 aa 6 00460 2521 00 spri2 pr6|304 001433 aa 6 00514 3521 00 epp2 pr6|332 001434 aa 6 00462 2521 00 spri2 pr6|306 001435 aa 6 00112 3521 00 epp2 pr6|74 dn 001436 aa 6 00464 2521 00 spri2 pr6|308 001437 aa 6 00452 3521 00 epp2 pr6|298 001440 aa 6 00466 2521 00 spri2 pr6|310 001441 aa 6 00236 3521 00 epp2 pr6|158 en 001442 aa 6 00470 2521 00 spri2 pr6|312 001443 aa 776353 3520 04 epp2 -789,ic 000016 = 404000000043 001444 aa 6 00472 2521 00 spri2 pr6|314 001445 aa 776360 3520 04 epp2 -784,ic 000025 = 524000000010 001446 aa 6 00474 2521 00 spri2 pr6|316 001447 aa 776333 3520 04 epp2 -805,ic 000002 = 524000000011 001450 aa 6 00476 2521 00 spri2 pr6|318 001451 aa 776341 3520 04 epp2 -799,ic 000012 = 526000000250 001452 aa 6 00500 2521 00 spri2 pr6|320 001453 aa 776333 3520 04 epp2 -805,ic 000006 = 514000000001 001454 aa 6 00502 2521 00 spri2 pr6|322 001455 aa 776334 3520 04 epp2 -804,ic 000011 = 526000000040 001456 aa 6 00504 2521 00 spri2 pr6|324 001457 aa 6 00454 6211 00 eax1 pr6|300 001460 aa 030000 4310 07 fld 12288,dl 001461 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001462 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 193 go to RETURN; 001463 aa 777415 7100 04 tra -243,ic 001100 STATEMENT 1 ON LINE 194 end; STATEMENT 1 ON LINE 195 end; STATEMENT 1 ON LINE 196 else do; STATEMENT 1 ON LINE 197 if ^second_refname then call com_err_ (code, "initiate", "^a^[>^]^a", dn, dn ^= ">", en); 001464 aa 6 00277 2351 00 lda pr6|191 second_refname 001465 aa 000050 6010 04 tnz 40,ic 001535 001466 aa 776352 2370 04 ldaq -790,ic 000040 = 151156151164 151141164145 001467 aa 6 00512 7571 00 staq pr6|330 001470 aa 776356 2370 04 ldaq -786,ic 000046 = 136141136133 076136135136 001471 aa 6 00514 7571 00 staq pr6|332 001472 aa 141000 2350 03 lda 49664,du 001473 aa 6 00516 7551 00 sta pr6|334 001474 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 001475 aa 6 00112 00 0250 desc9a pr6|74,168 dn 001476 aa 000130 00 0001 desc9a 88,1 001624 = 076000000000 001477 aa 0 00515 7001 00 tsx0 pr0|333 r_ne_as 001500 aa 6 00452 7551 00 sta pr6|298 001501 aa 6 00320 3521 00 epp2 pr6|208 code 001502 aa 6 00456 2521 00 spri2 pr6|302 001503 aa 6 00512 3521 00 epp2 pr6|330 001504 aa 6 00460 2521 00 spri2 pr6|304 001505 aa 6 00514 3521 00 epp2 pr6|332 001506 aa 6 00462 2521 00 spri2 pr6|306 001507 aa 6 00112 3521 00 epp2 pr6|74 dn 001510 aa 6 00464 2521 00 spri2 pr6|308 001511 aa 6 00452 3521 00 epp2 pr6|298 001512 aa 6 00466 2521 00 spri2 pr6|310 001513 aa 6 00236 3521 00 epp2 pr6|158 en 001514 aa 6 00470 2521 00 spri2 pr6|312 001515 aa 776301 3520 04 epp2 -831,ic 000016 = 404000000043 001516 aa 6 00472 2521 00 spri2 pr6|314 001517 aa 776306 3520 04 epp2 -826,ic 000025 = 524000000010 001520 aa 6 00474 2521 00 spri2 pr6|316 001521 aa 776261 3520 04 epp2 -847,ic 000002 = 524000000011 001522 aa 6 00476 2521 00 spri2 pr6|318 001523 aa 776267 3520 04 epp2 -841,ic 000012 = 526000000250 001524 aa 6 00500 2521 00 spri2 pr6|320 001525 aa 776261 3520 04 epp2 -847,ic 000006 = 514000000001 001526 aa 6 00502 2521 00 spri2 pr6|322 001527 aa 776262 3520 04 epp2 -846,ic 000011 = 526000000040 001530 aa 6 00504 2521 00 spri2 pr6|324 001531 aa 6 00454 6211 00 eax1 pr6|300 001532 aa 030000 4310 07 fld 12288,dl 001533 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001534 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 198 if seg_ptr = null then go to RETURN; 001535 aa 6 00310 2371 00 ldaq pr6|200 seg_ptr 001536 aa 776304 6770 04 eraq -828,ic 000042 = 077777000043 000001000000 001537 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 001540 aa 777340 6000 04 tze -288,ic 001100 STATEMENT 1 ON LINE 199 end; 001541 aa 000040 7100 04 tra 32,ic 001601 STATEMENT 1 ON LINE 201 else if long_sw then do; 001542 aa 6 00276 2351 00 lda pr6|190 long_sw 001543 aa 000036 6000 04 tze 30,ic 001601 STATEMENT 1 ON LINE 202 segno = bin (baseno (seg_ptr), 17); 001544 aa 6 00310 2131 20 epaq pr6|200,* seg_ptr 001545 aa 077777 3750 03 ana 32767,du 001546 aa 000066 7730 00 lrl 54 001547 aa 6 00317 7561 00 stq pr6|207 segno STATEMENT 1 ON LINE 203 call ioa_ ("^a>^a initiated with segment number ^o", dn, en, segno); 001550 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001551 aa 776317 00 0050 desc9a -817,40 000067 = 136141076136 001552 aa 6 00514 00 0050 desc9a pr6|332,40 001553 aa 6 00514 3521 00 epp2 pr6|332 001554 aa 6 00456 2521 00 spri2 pr6|302 001555 aa 6 00112 3521 00 epp2 pr6|74 dn 001556 aa 6 00460 2521 00 spri2 pr6|304 001557 aa 6 00236 3521 00 epp2 pr6|158 en 001560 aa 6 00462 2521 00 spri2 pr6|306 001561 aa 6 00317 3521 00 epp2 pr6|207 segno 001562 aa 6 00464 2521 00 spri2 pr6|308 001563 aa 776216 3520 04 epp2 -882,ic 000001 = 524000000046 001564 aa 6 00466 2521 00 spri2 pr6|310 001565 aa 776225 3520 04 epp2 -875,ic 000012 = 526000000250 001566 aa 6 00470 2521 00 spri2 pr6|312 001567 aa 776222 3520 04 epp2 -878,ic 000011 = 526000000040 001570 aa 6 00472 2521 00 spri2 pr6|314 001571 aa 776207 3520 04 epp2 -889,ic 000000 = 404000000021 001572 aa 6 00474 2521 00 spri2 pr6|316 001573 aa 6 00454 6211 00 eax1 pr6|300 001574 aa 020000 4310 07 fld 8192,dl 001575 aa 6 00044 3701 20 epp4 pr6|36,* 001576 la 4 00044 3521 20 epp2 pr4|36,* ioa_ 001577 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 204 long_sw = "0"b; 001600 aa 6 00276 4501 00 stz pr6|190 long_sw STATEMENT 1 ON LINE 205 end; STATEMENT 1 ON LINE 207 end init; 001601 aa 6 00334 6101 00 rtcd pr6|220 END PROCEDURE init BEGIN PROCEDURE clean_up ENTRY TO clean_up STATEMENT 1 ON LINE 212 clean_up: proc; 001602 da 000211200000 001603 aa 000100 6270 00 eax7 64 001604 aa 7 00034 3521 20 epp2 pr7|28,* 001605 aa 2 01047 2721 00 tsp2 pr2|551 int_entry 001606 aa 000000000000 001607 aa 000000000000 STATEMENT 1 ON LINE 214 if names_ptr ^= null then free names in (area); 001610 aa 6 00040 3735 20 epp7 pr6|32,* 001611 aa 7 00306 2371 00 ldaq pr7|198 names_ptr 001612 aa 776230 6770 04 eraq -872,ic 000042 = 077777000043 000001000000 001613 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 001614 aa 000003 6000 04 tze 3,ic 001617 001615 aa 7 00306 3715 00 epp5 pr7|198 names_ptr 001616 aa 0 01404 7001 00 tsx0 pr0|772 op_freen_ STATEMENT 1 ON LINE 215 names_ptr = null; 001617 aa 776223 2370 04 ldaq -877,ic 000042 = 077777000043 000001000000 001620 aa 6 00040 3735 20 epp7 pr6|32,* 001621 aa 7 00306 7571 00 staq pr7|198 names_ptr STATEMENT 1 ON LINE 217 end clean_up; 001622 aa 0 00631 7101 00 tra pr0|409 return_mac END PROCEDURE clean_up END PROCEDURE in ----------------------------------------------------------- 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