3mArprta Charge for request 320002: $0.00 (317 lines, 23 pages)$Tu/rprta ****************************************$Tu>rprta Hangup received for device "rprta" on channel "a.h204".$TvWrprta ****************************************$Tvk2=rprta iodd_signal_handler_: Driver starting reinitialization$TD0rprta Attaching terminal.$TO-rprta Driver initializing for station: rprta$TXrprta $Ta+rprta Initializing printer device: printer$TLrprta $T,rprta Mount VFU tape for 51 lines per page.$T$rprta Set printer for 6 lines/inch.$T0rprta $TGrprta rprta driver on channel a.h204 ready at 03/20/95 0431.5 mst Mon$TIrprta $Trprta Enter command:$Tj6rprta Enter command: coordinator, driver, or logout:$Tj'rprta $Tj/V$rprta IO Daemon Driver Version: 5.7$ Tj7rprta $ Tj@S,rprta Enter command or device/request_type:$ Tjb5l6a Enter command: coordinator, driver, or logout:$ TjVrprta Attaching terminal.$ Tj&V-rprta Driver initializing for station: rprta$Tj0trprta $Tj9O+rprta Initializing printer device: printer$TjDrprta $Tj|,rprta Mount VFU tape for 51 lines per page.$TjW$rprta Set printer for 6 lines/inch.$TjF1rprta $TjOGrprta rprta driver on channel a.h204 ready at 03/20/95 0728.6 mst Mon$TjXrprta $TkZl6a $Tk"#l6a IO Daemon Driver Version: 5.7$Tkl6a $Tkh+l6a Enter command or device/request_type:$Tk dl6a Opening the bisync lines$Tkl6a $Tkq2l6a l6a driver ready at 03/20/95 0728.7 mst Mon$Tkl6a $Tkp1rprta rprta driver: No requests, driver is idle.$Tl*.l6a l6a driver: No requests, driver is idle.$ T)*5l6d Enter command: coordinator, driver, or logout:$!TOel6d $"TO <#l6d IO Daemon Driver Version: 5.7$#TO)xl6d $$TP\+l6d Enter command or device/request_type:$%T]Jl6d Opening the bisync line$&Ta6l6d $'Ta?2l6d l6d driver ready at 03/20/95 0942.2 mst Mon$(TaH8l6d $)Ta]l6d Enter command:$*T7Rl6d l6d driver: Too few args. Specify -user [-entry, -path or -id] $+TBl6d Enter command:$,TǦRl6d Request 90001.3: >udd>PROD_A>1180m>842955>cmc5>dndf.l6d for Devers.NMLPROD.a$-T#l6d * QUIT * request in progress$.T%1l6d Enter command(quit):$/T ql6d iodd_signal_handler_:$0TEl6d Error: daemon_defer condition by iodd_command_processor_$|6371$1T!B/l6d (>system_library_tools>bound_iodd_|13127)$2T)Kl6d (actually by support procedure pl1_signal_$pl1_signal_from_ops_|776$3T10l6d (>system_library_1>bound_library_1_|6572))$4T:l6d $5TC=l6d $6TM:l6d daemon_defer during processing of request dndf.l6d.$7Ts'l6d Processing of request terminated.$8Tl6d Enter command:$9Tn`{Rl6d l6d driver: Too few args. Specify -user [-entry, -path or -id] 1.sts" at "Engineering")$pT&@rprta Charge for request 70009: $0.00 (314 lines, 22 pages)$qT1rprta rprta driver: No requests, driver is idle.$rT \Lrprta Request 70010 engform q4: >PROD_POOL>firm_pool>781741_1>781741_1.lst$sT \ aFrprta from Portisch.NMLPROD.m (for "781741_1.lst" at "Engineering")$tT \5rprta Time estimate for request 70010: 13.2 mins.$uT?UCrprta Charge for request 70010: $0.00 (10268 lines, 332 pages)$vT1rprta rprta driver: No requests, driver is idle.$wT#Mrprta Request 70011 engform q4: >p_pool>firm_pool>781741_4>781741_4_pt2.lst$xT_Jrprta from Portisch.NMLPROD.m (for "781741_4_pt2.lst" at "Engineering")$yT5rprta Time estimate for request 70011: 11.1 mins.$zTFBrprta Charge for request 70011: $0.00 (7925 lines, 243 pages)${TִMrprta Request 70012 engform q4: >p_pool>firm_pool>781741_4>781741_4_pt1.lst$|T߄Jrprta from Portisch.NMLPROD.m (for "781741_4_pt1.lst" at "Engineering")$}T5rprta Time estimate for request 70012: 36.2 mins.$~T0Crprta Charge for request 70012: $0.00 (25594 lines, 768 pages)$T0oMWrprta Request 70013 engform q3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>oddevn.unml$T0y1rprta from Dailey.NMLPROD.a (at "ENGINEERING")$T0z >rprta Charge for request 70013: $0.00 (80 lines, 2 pages)$T0;Trprta Request 70014 engform q3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>smap.map$T0L1rprta from Dailey.NMLPROD.a (at "ENGINEERING")$T1@rprta Charge for request 70014: $0.00 (428 lines, 14 pages)$T1hrprta Request 70015 engform q3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>dnskyk>dnskyx>dnskyx.archive$T11rprta from Dailey.NMLPROD.a (at "ENGINEERING")$T1+@rprta Charge for request 70015: $0.00 (285 lines, 18 pages)$T1/EVarprta Request 70016 engform q3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>dnskyk>dnskyk.archive$T1/M1rprta from Dailey.NMLPROD.a (at "ENGINEERING")$T1{?rprta Charge for request 70016: $0.00 (199 lines, 7 pages)$T2;1rprta rprta driver: No requests, driver is idle.$TKۄ5l6d Enter command: coordinator, driver, or logout:$TLl6d $TL#l6d IO Daemon Driver Version: 5.7$TL"l6d $TL+l6d Enter command or device/request_type:$TLsl6d Opening the bisync line$TL#=l6d $TL#F2l6d l6d driver ready at 03/21/95 1057.4 mst Tue$TL#Nl6d $TL#*Ol6d Enter command:$TLRl6d l6d driver: Too few args. Specify -user [-entry, -path or -id] $TLl6d Enter command:$TLal6d Request 110001.3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>dnsmap.l6d for Dailey.NMLPROD.a$TMdDIrprta Request 70017 engform q3: >udd>8080PROD>firmware>image>781741.sts$TMdMDrprta from Portisch.NMLPROD.a (for "781741.sts" at "Engineering")$TMRl6d l6d driver: Too few args. Specify -user [-entry, -path or -id] $TMȃhl6d Request 110002.3: >udd>PROD_C>1180m>832155>smap>b0p290>smap>dnskyk>dnskyk.l6d for Dailey.NMLPROD.a$TMa@rprta Charge for request 70017: $0.00 (317 lines, 23 pages)$TMK<1rprta rprta driver: No requests, driver is idle.$TNj Rl6d l6d driver: Too few args. Specify -user [-entry, -path or -id] $TNjVo 139 end; /* search */ 140 call failure (-3); /* >99999 ! */ 141 142 end find_token_chain; 143 end find_first_symbol; 144 145 search_symbol: proc (P_first_symbol, P_bp, P_sp); 146 147 /* given ptr to first symbol of desired name (or to lowest level, if 148* structure), and a block to begin searching in, search all blocks, from 149* inward out, for a symbol that matches, or fail (in which case we do not return) 150**/ 151 152 /* If the runtime symbol table was produced by the Version II PL/I compiler, 153* the given symbol need not be fully qualified. The searching algorithm used 154* here is the same as that used by the PL/I compiler. We search for an applicable 155* declaration for which the given symbol is a fully qualified reference. We 156* remember any applicable declaration for which the symbol is a partially 157* qualified reference. If two or more applicable declarations can be found 158* and the given symbol is not a fully qualified reference to any of them, we 159* have an ambiguous reference. If only one applicable declaration can be found, 160* the given symbol is a valid partially qualified reference to that declaration. 161* The search for an applicable declaration begins in the current block and continues 162* outward until the first applicable declaration is found. After the first 163* applicable declaration is found, all additional searching is confined to the 164* block in which the first applicable declaration was found. 165**/ 166 167 dcl P_first_symbol ptr parameter; /* Input, Read-only, to symbol start at */ 168 dcl P_bp ptr parameter; /* Input/Output, By-name, to starting block */ 169 dcl P_sp ptr parameter; /* output, to symbol found */ 170 171 dcl hp ptr; /* to symbol table header */ 172 dcl sp ptr; 173 dcl pq_ct fixed bin; /* number of partially qualified ref's found */ 174 dcl pq_sp ptr; /* to symbol node of partially qual'd ref */ 175 dcl matches bit (1) aligned; 176 dcl fully bit (1) aligned; 177 dcl stu_$block_dcld_in entry (ptr) returns (ptr); 178 179 pq_ct = 0; 180 hp = addrel (P_bp, P_bp -> runtime_block.header); 181 182 do P_bp = P_bp repeat (addrel (P_bp, P_bp -> runtime_block.father)) while (P_bp ^= hp); 183 sp = P_first_symbol; 184 do while (sp ^= null); /* for each symbol of same name */ 185 if stu_$block_dcld_in (sp) = P_bp then do; /* if dcl'd in current block */ 186 call match_name (matches, fully); /* test it for match */ 187 if matches 188 then if fully 189 then do; 190 P_sp = sp; 191 return; 192 end; 193 else do; /* partial -count it up */ 194 pq_ct = pq_ct + 1; 195 pq_sp = sp; 196 end; 197 end; 198 199 sp = runtime_symbol_info_$next (sp); 200 end; /* symbol loop */ 201 202 /* not found in this block as a fully - but perhaps as a partial */ 203 204 if pq_ct > 1 then call failure (-5); /* ambiguous */ 205 if pq_ct = 1 then do; /* exactly one - ok */ 206 P_sp = pq_sp; 207 return; 208 end; 209 210 /* no partial, continue search in father block */ 211 212 end; 213 214 /* fell out of block loop - not found */ 215 216 call failure (-4); 217 218 match_name: proc (P_match, P_fully); 219 220 /* called when current symbol has the right name - see if the components match properly */ 221 dcl P_match bit (1) aligned parameter; /* output "1"b if matches */ 222 dcl P_fully bit (1) aligned parameter; /* output "1"b if match is fully qual'ed */ 223 /* references the gloabl vars: ctnum a, name, sp */ 224 225 dcl lev fixed bin; 226 dcl cti fixed bin; /* index into name of a component */ 227 dcl ctl fixed bin; /* length of a token */ 228 229 dcl np ptr; /* to symbol node */ 230 dcl ni fixed bin; /* index in names array */ 231 232 lev = runtime_symbol_info_$level (sp); 233 P_fully = "0"b; 234 P_match = "0"b; 235 236 if (lev = 0) | (lev = 1) /* can only be one ct in name */ 237 then do; /* can optomize test */ 238 if ctnum = 1 /* both names and component count match */ 239 then do; 240 P_fully = "1"b; 241 P_match = "1"b; 242 end; 243 else ; /* too many ct's - can't match */ 244 return; /* done in either case */ 245 end; /* of one-component opt */ 246 247 else if lev < ctnum /* more cts in name then levels to match */ 248 then return; /* cant hope to match */ 249 250 np = sp; 251 do ni = ctnum to 1 by -1; /* from last to first component */ 252 cti = a (ni - 1) + 1; 253 ctl = a (ni) - a (ni - 1) - 1; 254 255 do while (addrel (np, np -> runtime_symbol.name) -> acc.string ^= substr (name, cti, ctl)); 256 if runtime_symbol_info_$level (np) > 1 257 then np = runtime_symbol_info_$father (np); 258 else return; 259 end; 260 end; 261 P_fully = (ctnum = lev); 262 P_match = "1"b; 263 return; 264 265 end match_name; 266 end search_symbol; 267 268 /* never should fall through */ 269 exit: return (null); 270 271 failure: proc (why); 272 dcl why fixed bin; 273 steps = why; 274 goto exit; 275 end; 276 277 1 1 /* BEGIN INCLUDE FILE ... runtime_symbol.incl.pl1 ... Modified 07/79 */ 1 2 1 3 dcl 1 runtime_symbol aligned based, 1 4 2 flag unal bit(1), /* always "1"b for Version II */ 1 5 2 use_digit unal bit(1), /* if "1"b and units are half words units are really digits */ 1 6 2 array_units unal bit(2), 1 7 2 units unal bit(2), /* addressing units */ 1 8 2 type unal bit(6), /* data type */ 1 9 2 level unal bit(6), /* structure level */ 1 10 2 ndims unal bit(6), /* number of dimensions */ 1 11 2 bits unal, 1 12 3 aligned bit(1), 1 13 3 packed bit(1), 1 14 3 simple bit(1), 1 15 2 skip unal bit(1), 1 16 2 scale unal bit(8), /* arithmetic scale factor */ 1 17 2 name unal bit(18), /* rel ptr to acc name */ 1 18 2 brother unal bit(18), /* rel ptr to brother entry */ 1 19 2 father unal bit(18), /* rel ptr to father entry */ 1 20 2 son unal bit(18), /* rel ptr to son entry */ 1 21 2 address unal, 1 22 3 location bit(18), /* location in storage class */ 1 23 3 class bit(4), /* storage class */ 1 24 3 next bit(14), /* rel ptr to next of same class */ 1 25 2 size fixed bin(35), /* encoded string|arith size */ 1 26 2 offset fixed bin(35), /* encoded offset from address */ 1 27 2 virtual_org fixed bin(35), 1 28 2 bounds(1), 1 29 3 lower fixed bin(35), /* encoded lower bound */ 1 30 3 upper fixed bin(35), /* encoded upper bound */ 1 31 3 multiplier fixed bin(35); /* encoded multiplier */ 1 32 1 33 dcl 1 runtime_bound based, 1 34 2 lower fixed bin(35), 1 35 2 upper fixed bin(35), 1 36 2 multiplier fixed bin(35); 1 37 1 38 dcl 1 runtime_block aligned based, 1 39 2 flag unal bit(1), /* always "1"b for Version II */ 1 40 2 quick unal bit(1), /* "1"b if quick block */ 1 41 2 fortran unal bit(1), /* "1"b if fortran program */ 1 42 2 standard unal bit(1), /* "1"b if program has std obj segment */ 1 43 2 owner_flag unal bit(1), /* "1"b if block has valid owner field */ 1 44 2 skip unal bit(1), 1 45 2 type unal bit(6), /* = 0 for a block node */ 1 46 2 number unal bit(6), /* begin block number */ 1 47 2 start unal bit(18), /* rel ptr to start of symbols */ 1 48 2 name unal bit(18), /* rel ptr to name of proc */ 1 49 2 brother unal bit(18), /* rel ptr to brother block */ 1 50 2 father unal bit(18), /* rel ptr to father block */ 1 51 2 son unal bit(18), /* rel ptr to son block */ 1 52 2 map unal, 1 53 3 first bit(18), /* rel ptr to first word of map */ 1 54 3 last bit(18), /* rel ptr to last word of map */ 1 55 2 entry_info unal bit(18), /* info about entry of quick block */ 1 56 2 header unal bit(18), /* rel ptr to symbol header */ 1 57 2 chain(4) unal bit(18), /* chain(i) is rel ptr to first symbol 1 58* on start list with length >= 2**i */ 1 59 2 token(0:5) unal bit(18), /* token(i) is rel ptr to first token 1 60* on list with length >= 2 ** i */ 1 61 2 owner unal bit(18); /* rel ptr to owner block */ 1 62 1 63 dcl 1 runtime_token aligned based, 1 64 2 next unal bit(18), /* rel ptr to next token */ 1 65 2 dcl unal bit(18), /* rel ptr to first dcl of this token */ 1 66 2 name, /* ACC */ 1 67 3 size unal unsigned fixed bin (9), /* number of chars in token */ 1 68 3 string unal char(n refer(runtime_token.size)); 1 69 1 70 dcl 1 encoded_value aligned based, 1 71 2 flag bit (2) unal, 1 72 2 code bit (4) unal, 1 73 2 n1 bit (6) unal, 1 74 2 n2 bit (6) unal, 1 75 2 n3 bit (18) unal; 1 76 1 77 /* END INCLUDE FILE ... runtime_symbol.incl.pl1 */ 278 279 2 1 dcl 1 symbol_node aligned based, 2 2 2 type unal bit(12), /* data type */ 2 3 2 level unal bit(6), /* structure level */ 2 4 2 ndims unal bit(6), /* number of dimensions */ 2 5 2 bits unal, 2 6 3 aligned bit(1), 2 7 3 packed bit(1), 2 8 3 simple bit(1), 2 9 3 decimal bit(1), 2 10 2 scale unal bit(8), /* arithmetic scale factor */ 2 11 2 name unal bit(18), /* rel ptr to acc name */ 2 12 2 brother unal bit(18), /* rel ptr to brother entry */ 2 13 2 father unal bit(18), /* rel ptr to father entry */ 2 14 2 son unal bit(18), /* rel ptr to son entry */ 2 15 2 address unal, 2 16 3 offset bit(18), /* offset in storage class */ 2 17 3 class bit(4), /* storage class */ 2 18 3 next bit(14), /* rel ptr to next of same class */ 2 19 2 size fixed bin(35), /* encoded string|arith size */ 2 20 2 word_offset fixed bin(35), /* encoded offset from address */ 2 21 2 bit_offset fixed bin(35), 2 22 2 virtual_org fixed bin(35), 2 23 2 bounds(1), 2 24 3 lower fixed bin(35), /* encoded lower bound */ 2 25 3 upper fixed bin(35), /* encoded upper bound */ 2 26 3 multiplier fixed bin(35); /* encoded multiplier */ 2 27 2 28 dcl 1 sym_bound based, 2 29 2 lower fixed bin(35), 2 30 2 upper fixed bin(35), 2 31 2 multiplier fixed bin(35); 2 32 2 33 dcl 1 symbol_block aligned based, 2 34 2 type unal bit(12), /* = 0 for a block node */ 2 35 2 number unal bit(6), /* begin block number */ 2 36 2 start unal bit(18), /* rel ptr to start of symbols */ 2 37 2 name unal bit(18), /* rel ptr to name of proc */ 2 38 2 brother unal bit(18), /* rel ptr to brother block */ 2 39 2 father unal bit(18), /* rel ptr to father block */ 2 40 2 son unal bit(18), /* rel ptr to son block */ 2 41 2 map unal, 2 42 3 first bit(18), /* rel ptr to first word of map */ 2 43 3 last bit(18), /* rel ptr to last word of map */ 2 44 2 bits unal bit(18), 2 45 2 header unal bit(18), /* rel ptr to symbol header */ 2 46 2 chain(4) unal bit(18), /* chain(i) is rel ptr to first symbol 2 47* on start list with length >= 2**i */ 2 48 2 class_list(0:15) unal bit(18); /* rel ptrs to first symbol of given 2 49* storage class */ 280 281 3 1 /* BEGIN INCLUDE FILE ... pascal_symbol_node.incl.pl1 */ 3 2 3 3 /****^ HISTORY COMMENTS: 3 4* 1) change(86-09-15,JMAthane), approve(86-09-15,MCR7525), 3 5* audit(86-09-15,Martinson), install(86-11-12,MR12.0-1208): 3 6* Added size_is_encoded field in header. 3 7* END HISTORY COMMENTS */ 3 8 3 9 /* Written January 1983 by Melanie Weaver */ 3 10 /* Added size_is_encoded field in header May 85. JMAthane */ 3 11 3 12 dcl 1 pascal_symbol_node_header aligned based, 3 13 2 flags unaligned, /* indicate which pieces the node contains */ 3 14 3 version_flag bit (1) unaligned, /* always "0"b for post-version II PL/I format */ 3 15 3 aligned bit (1) unaligned, 3 16 3 packed bit (1) unaligned, 3 17 3 in_with_block bit (1) unaligned, 3 18 3 name_next bit (1) unaligned, 3 19 3 base_type_info bit (1) unaligned, 3 20 3 address bit (1) unaligned, 3 21 3 father_brother bit (1) unaligned, 3 22 3 son_level bit (1) unaligned, 3 23 3 father_type_successor bit (1) unaligned, 3 24 3 size bit (1) unaligned, 3 25 3 offset bit (1) unaligned, 3 26 3 subrange_limits bit (1) unaligned, 3 27 3 array_info bit (1) unaligned, 3 28 3 variant_info bit (1) unaligned, 3 29 3 size_is_encoded bit (1) unaligned, 3 30 3 pad bit (2) unaligned, 3 31 2 version fixed bin (17) unaligned, /* version of this node format */ 3 32 2 type fixed bin (17) unaligned, /* (extended) data type */ 3 33 2 type_offset fixed bin (18) unsigned unaligned; /* rel ptr to type node */ 3 34 3 35 dcl 1 pascal_name_next aligned based, 3 36 2 name fixed bin (18) unsigned unaligned, /* rel ptr to acc name */ 3 37 2 next_token fixed bin (18) unsigned unaligned; /* rel ptr to next of same class */ 3 38 3 39 dcl 1 pascal_base_type_info aligned based, 3 40 2 base_type fixed bin (17) unaligned, /* type of type */ 3 41 2 base_type_offset fixed bin (18) unsigned unaligned; 3 42 3 43 dcl 1 pascal_address aligned based, 3 44 2 location fixed bin (18) unsigned unaligned, /* location in storage class */ 3 45 2 class fixed bin (6) unsigned unaligned, /* storage class */ 3 46 2 use_digit bit (1) unaligned, 3 47 2 units bit (2) unaligned, /* addressing units */ 3 48 2 offset_is_encoded bit (1) unaligned, /* "1"b if pascal_offset is encoded */ 3 49 2 pad bit (8) unaligned; 3 50 3 51 dcl 1 pascal_father_brother aligned based, 3 52 2 father fixed bin (18) unsigned unaligned, /* rel ptr to father node */ 3 53 2 brother fixed bin (18) unsigned unaligned; /* rel ptr to brother node */ 3 54 3 55 dcl 1 pascal_son_level aligned based, 3 56 2 son fixed bin (18) unsigned unaligned, /* rel ptr to son node */ 3 57 2 level fixed bin (6) unsigned unaligned, /* record level; also enum. type elt. */ 3 58 2 pad bit (12) unaligned; 3 59 3 60 dcl 1 pascal_father_type_successor aligned based, 3 61 2 father_type fixed bin (17) unaligned, 3 62 2 successor fixed bin (18) unsigned unaligned; 3 63 3 64 dcl pascal_size fixed bin (35) based; /* precision, string size, etc. */ 3 65 3 66 dcl pascal_offset fixed bin (35) based; /* offset from address */ 3 67 3 68 dcl 1 pascal_subrange_limits aligned based, 3 69 2 flags aligned, 3 70 3 lower_bound_is_encoded bit (1) unaligned, 3 71 3 upper_bound_is_encoded bit (1) unaligned, 3 72 3 pad bit (34) unaligned, 3 73 2 subrange_lower_bound 3 74 fixed bin (35), 3 75 2 subrange_upper_bound 3 76 fixed bin (35); 3 77 3 78 dcl 1 pascal_array_info aligned based, /* info about array subscripts */ 3 79 2 access_info aligned, 3 80 3 ndims fixed bin (6) unsigned unaligned, /* number of dimensions */ 3 81 3 use_digit fixed bin (1) unsigned unaligned, /* if "1"b and units are half words, 3 82* units are really digits */ 3 83 3 array_units fixed bin (2) unsigned unaligned, 3 84 3 virtual_origin_is_encoded 3 85 bit (1) unaligned, 3 86 3 pad bit (26) unaligned, 3 87 2 virtual_origin fixed bin (35), 3 88 2 bounds (nd refer (pascal_array_info.access_info.ndims)) 3 89 aligned, 3 90 3 lower fixed bin (35), 3 91 3 upper fixed bin (35), 3 92 3 multiplier fixed bin (35), 3 93 3 subscript_type fixed bin (17) unaligned, 3 94 3 subscript_type_offset 3 95 fixed bin (18) unsigned unaligned, 3 96 3 flags aligned, 3 97 4 lower_is_encoded 3 98 bit (1) unaligned, 3 99 4 upper_is_encoded 3 100 bit (1) unaligned, 3 101 4 multiplier_is_encoded 3 102 bit (1) unaligned, 3 103 4 pad bit (33) unaligned; 3 104 3 105 dcl 1 pascal_variant_info aligned based, /* info to locate a record's variants */ 3 106 2 number_of_variants 3 107 fixed bin (17) unaligned, 3 108 2 pad bit (18) unaligned, 3 109 2 first_value_in_set fixed bin (35) unaligned, /* value corresponding to the first bit in set stings */ 3 110 2 case (nvariants refer 3 111 (pascal_variant_info.number_of_variants)), 3 112 3 set_offset fixed bin (18) unsigned unaligned, /* bit string specifies cases; 3 113* set's base type is this node's type */ 3 114 3 brother fixed bin (18) unsigned unaligned; /* rel ptr to brother for this variant */ 3 115 3 116 dcl 1 pascal_encoded_value aligned based, /* extended encoded value format */ 3 117 2 code bit (6) unaligned, /* tells how to interpret the other fields */ 3 118 2 (n1, n2) bit (6) unaligned, 3 119 2 n3 fixed bin (18) unsigned unaligned; 3 120 3 121 dcl nvariants fixed bin (17); 3 122 dcl nd fixed bin (6) unsigned; 3 123 3 124 3 125 3 126 /* END INCLUDE FILE ... pascal_symbol_node.incl.pl1 */ 282 283 4 1 /* BEGIN INCLUDE FILE runtime_symbol_info_.incl.pl1 */ 4 2 4 3 4 4 /****^ HISTORY COMMENTS: 4 5* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 4 6* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 4 7* Added runtime_symbol_info_$subrange entry which was missing. Added 4 8* has_dimensions and has subrange_limits fields in type_info record. 4 9* Structure version numbers have not been changed since this change does not 4 10* affect existing programs. 4 11* END HISTORY COMMENTS */ 4 12 4 13 /* Declarations for using the various entry points in runtime_symbol_info_ */ 4 14 /* NOTE: These entries do not support PL/1 version 1. */ 4 15 4 16 /* Made structures aligned, removed variable extent from runtime_array_info.bounds 08/25/83 S. Herbst */ 4 17 /* Added version strings to structures 10/05/83 S. Herbst */ 4 18 /* Added has_dimensions and has_subrange_limits bits in type_info 4 19*Added subrange entry. JMAthane 08/31/84 */ 4 20 4 21 4 22 dcl runtime_symbol_info_$type entry (ptr, ptr, fixed bin (35)); 4 23 4 24 dcl 1 runtime_type_info aligned based, 4 25 2 version char (8), /* = "RUNTYP_1" */ 4 26 2 flags, 4 27 3 aligned bit (1) unal, 4 28 3 packed bit (1) unal, 4 29 3 size_is_encoded bit (1) unal, 4 30 3 has_dimensions bit (1) unal, 4 31 3 has_subrange_limits bit (1) unal, 4 32 3 pad bit (23) unal, 4 33 2 scale fixed bin (7) unal, 4 34 2 (type, base_type) fixed bin (18) unsigned unal, 4 35 2 (type_addr, base_type_addr) ptr, 4 36 2 size fixed bin (35); 4 37 4 38 dcl runtime_symbol_info_$father entry (ptr) returns (ptr); 4 39 4 40 dcl runtime_symbol_info_$brother entry (ptr) returns (ptr); 4 41 4 42 dcl runtime_symbol_info_$father_type entry (ptr) returns (ptr); 4 43 4 44 dcl runtime_symbol_info_$son entry (ptr) returns (ptr); 4 45 4 46 dcl runtime_symbol_info_$successor entry (ptr) returns (ptr); 4 47 4 48 dcl runtime_symbol_info_$name entry (ptr) returns (ptr); 4 49 4 50 dcl runtime_symbol_info_$level entry (ptr) returns (fixed bin); 4 51 4 52 dcl runtime_symbol_info_$next entry (ptr) returns (ptr); 4 53 4 54 dcl runtime_symbol_info_$address entry (ptr, ptr, fixed bin (35)); 4 55 4 56 dcl 1 runtime_address_info aligned based, 4 57 2 version char (8), /* = "RUNADR_1" */ 4 58 2 location fixed bin (18) unsigned unal, 4 59 2 class fixed bin (6) unsigned unal, 4 60 2 use_digit fixed bin (1) unsigned unal, 4 61 2 units fixed bin (2) unsigned unal, 4 62 2 offset_is_encoded bit (1) unal, 4 63 2 pad bit (8) unal, 4 64 2 offset fixed bin (35); 4 65 4 66 dcl runtime_symbol_info_$array_dims entry (ptr) returns (fixed bin); 4 67 4 68 dcl runtime_symbol_info_$array entry (ptr, ptr, fixed bin (35)); 4 69 4 70 dcl 1 runtime_array_info aligned based, 4 71 2 version char (8), /* = "RUNARY_1" */ 4 72 2 access_info aligned, 4 73 3 ndims fixed bin (6) unsigned unaligned, /* number of dimensions */ 4 74 3 use_digit fixed bin (1) unsigned unaligned, /* if "1"b and units are half words, 4 75* units are really digits */ 4 76 3 array_units fixed bin (2) unsigned unaligned, 4 77 3 virtual_origin_is_encoded 4 78 bit (1) unaligned, 4 79 3 pad bit (26) unaligned, 4 80 2 virtual_origin fixed bin (35), 4 81 2 bounds (16) 4 82 aligned, 4 83 3 flags aligned, 4 84 4 lower_is_encoded 4 85 bit (1) unaligned, 4 86 4 upper_is_encoded 4 87 bit (1) unaligned, 4 88 4 multiplier_is_encoded 4 89 bit (1) unaligned, 4 90 4 pad bit (33) unaligned, 4 91 3 lower fixed bin (35), 4 92 3 upper fixed bin (35), 4 93 3 multiplier fixed bin (35), 4 94 3 subscript_type fixed bin (35), 4 95 3 subscript_type_addr ptr; 4 96 4 97 dcl n_dims fixed bin; 4 98 4 99 dcl runtime_symbol_info_$n_variants entry (ptr) returns (fixed bin (35)); 4 100 4 101 dcl runtime_symbol_info_$variant entry (ptr, ptr, fixed bin (35)); 4 102 4 103 dcl 1 runtime_variant_info aligned based, 4 104 2 version char (8), /* = "RUNVAR_1" */ 4 105 2 number_of_variants fixed bin, 4 106 2 first_value_in_set fixed bin (35), /* value corresponding to the first bit in set stings */ 4 107 2 case (n_variants), 4 108 3 set_addr ptr, /* bit string specifies cases; 4 109* set's base type is this node's type */ 4 110 3 brother_addr ptr; /* ptr to brother for this variant */ 4 111 4 112 dcl n_variants fixed bin (35); 4 113 4 114 dcl runtime_symbol_info_$subrange entry (ptr, ptr, fixed bin (35)); 4 115 4 116 dcl 1 runtime_subrange_info based, 4 117 2 version char (8), /* = "RUNSUB_1" */ 4 118 2 flags aligned, 4 119 3 has_subrange_limits bit (1) unal, 4 120 3 lower_bound_is_encoded bit (1) unal, 4 121 3 upper_bound_is_encoded bit (1) unal, 4 122 3 pad bit (33) unal, 4 123 2 subrange_lower_bound fixed bin (35), 4 124 2 subrange_upper_bound fixed bin (35); 4 125 4 126 4 127 dcl RUNTIME_TYPE_INFO_VERSION_1 char (8) int static options (constant) init ("RUNTYP_1"); 4 128 dcl RUNTIME_ADDRESS_INFO_VERSION_1 char (8) int static options (constant) init ("RUNADR_1"); 4 129 dcl RUNTIME_ARRAY_INFO_VERSION_1 char (8) int static options (constant) init ("RUNARY_1"); 4 130 dcl RUNTIME_VARIANT_INFO_VERSION_1 char (8) int static options (constant) init ("RUNVAR_1"); 4 131 dcl RUNTIME_SUBRANGE_INFO_VERSION_1 char (8) int static options (constant) init ("RUNSUB_1"); 4 132 4 133 4 134 /* END INCLUDE FILE runtime_symbol_info_.incl.pl1 */ 284 285 5 1 /* BEGIN INCLUDE FILE --- acc.incl.pl1 5 2* 5 3*James R. Davis 21 Nov 78 5 4**/ 5 5 5 6 dcl 1 acc based aligned, 5 7 2 num_chars fixed bin (9) unsigned unaligned, 5 8 2 string char (0 refer (acc.num_chars)) unaligned; 5 9 5 10 /* END INCLUDE FILE --- acc.incl.pl1 */ 286 287 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/12/86 1607.4 find_runtime_symbol.pl1 >spec>install>1212>find_runtime_symbol.pl1 278 1 11/26/79 1320.6 runtime_symbol.incl.pl1 >ldd>include>runtime_symbol.incl.pl1 280 2 05/06/74 1752.6 symbol_node.incl.pl1 >ldd>include>symbol_node.incl.pl1 282 3 11/12/86 1336.3 pascal_symbol_node.incl.pl1 >spec>install>1212>pascal_symbol_node.incl.pl1 284 4 11/12/86 1333.4 runtime_symbol_info_.incl.pl1 >spec>install>1212>runtime_symbol_info_.incl.pl1 286 5 01/15/79 2202.9 acc.incl.pl1 >ldd>include>acc.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. P_bp parameter pointer dcl 168 in procedure "search_symbol" set ref 145 180 180 182* 182 182* 185* 212 212 P_bp parameter pointer dcl 104 in procedure "find_first_symbol" ref 97 135 137 P_first_symbol parameter pointer dcl 167 ref 145 183 P_fully parameter bit(1) dcl 222 set ref 218 233* 240* 261* P_match parameter bit(1) dcl 221 set ref 218 234* 241* 262* P_name parameter char unaligned dcl 105 ref 97 110 115 P_sp parameter pointer dcl 169 set ref 145 190* 206* a 000105 automatic fixed bin(17,0) array dcl 56 set ref 73* 74 79* 87 88 88 252 253 253 acc based structure level 1 dcl 5-6 addrel builtin function dcl 58 in procedure "find_runtime_symbol" ref 180 212 255 addrel builtin function dcl 108 in procedure "find_first_symbol" ref 115 122 137 block_pt parameter pointer dcl 35 set ref 33 60* 94* bp 000100 automatic pointer dcl 52 set ref 63* 64 90* 91* 93* 94 cti 000243 automatic fixed bin(17,0) dcl 226 set ref 252* 255 ctindex 000210 automatic fixed bin(17,0) dcl 82 set ref 87* 90 90 ctl 000244 automatic fixed bin(17,0) dcl 227 set ref 253* 255 ctlen 000211 automatic fixed bin(17,0) dcl 83 set ref 88* 90 90 ctnum 000103 automatic fixed bin(17,0) dcl 54 set ref 70* 73 74 76* 76 79 87 88 88 238 247 251 261 dcl 0(18) based bit(18) level 2 packed unaligned dcl 1-63 ref 115 115 father 2 based bit(18) level 2 packed unaligned dcl 1-38 ref 212 fsp 000212 automatic pointer dcl 85 set ref 90* 91* fully 000233 automatic bit(1) dcl 176 set ref 186* 187 hbound builtin function dcl 58 ref 74 133 header 4(18) based bit(18) level 2 packed unaligned dcl 1-38 ref 180 hp 000222 automatic pointer dcl 171 set ref 180* 182 i 000102 automatic fixed bin(17,0) dcl 53 in procedure "find_runtime_symbol" set ref 71* 72 77* 78 i 000112 automatic fixed bin(17,0) dcl 128 in procedure "find_token_chain" set ref 133* 134 134 135* index builtin function dcl 58 ref 77 length builtin function dcl 108 in procedure "find_first_symbol" ref 110 length builtin function dcl 58 in procedure "find_runtime_symbol" ref 79 lev 000242 automatic fixed bin(17,0) dcl 225 set ref 232* 236 236 247 261 lgth2 000000 constant fixed bin(17,0) initial array dcl 130 ref 133 134 134 matches 000232 automatic bit(1) dcl 175 set ref 186* 187 name 1 based bit(18) level 2 in structure "runtime_symbol" packed unaligned dcl 1-3 in procedure "find_runtime_symbol" ref 255 name parameter char dcl 35 in procedure "find_runtime_symbol" ref 33 77 79 90 90 255 name 1 based structure level 2 in structure "runtime_token" dcl 1-63 in procedure "find_runtime_symbol" name_len 000102 automatic fixed bin(17,0) dcl 107 set ref 110* 115 119 134 134 next based bit(18) level 2 packed unaligned dcl 1-63 ref 119 122 ni 000250 automatic fixed bin(17,0) dcl 230 set ref 251* 252 253 253* np 000246 automatic pointer dcl 229 set ref 250* 255 255 256* 256* 256* null builtin function dcl 58 in procedure "find_runtime_symbol" ref 60 64 184 269 null builtin function dcl 108 in procedure "find_first_symbol" ref 114 119 num_chars based fixed bin(9,0) level 2 packed unsigned unaligned dcl 5-6 ref 255 offset 000113 automatic bit(18) unaligned dcl 129 set ref 135* 136 137 pos 000104 automatic fixed bin(17,0) dcl 55 set ref 72* 73 77* 78* pq_ct 000226 automatic fixed bin(17,0) dcl 173 set ref 179* 194* 194 204 205 pq_sp 000230 automatic pointer dcl 174 set ref 195* 206 pt parameter pointer dcl 35 set ref 33 63 93* runtime_block based structure level 1 dcl 1-38 runtime_symbol based structure level 1 dcl 1-3 runtime_symbol_info_$father 000012 constant entry external dcl 4-38 ref 256 runtime_symbol_info_$level 000014 constant entry external dcl 4-50 ref 232 256 runtime_symbol_info_$next 000016 constant entry external dcl 4-52 ref 199 runtime_token based structure level 1 dcl 1-63 size 1 based fixed bin(9,0) level 3 packed unsigned unaligned dcl 1-63 ref 115 115 119 sp 000224 automatic pointer dcl 172 in procedure "search_symbol" set ref 183* 184 185* 190 195 199* 199* 232* 250 sp 000206 automatic pointer dcl 81 in procedure "find_runtime_symbol" set ref 91* 95 steps parameter fixed bin(17,0) dcl 35 set ref 33 61* 93* 273* string 0(09) based char level 2 in structure "acc" packed unaligned dcl 5-6 in procedure "find_runtime_symbol" ref 255 string 1(09) based char level 3 in structure "runtime_token" packed unaligned dcl 1-63 in procedure "find_runtime_symbol" ref 115 stu_$block_dcld_in 000020 constant entry external dcl 177 ref 185 stu_$get_display_steps 000010 constant entry external dcl 84 ref 93 substr builtin function dcl 58 ref 77 90 90 255 token 7 based bit(18) array level 2 packed unaligned dcl 1-38 ref 135 tp 000100 automatic pointer dcl 106 set ref 111* 114 115 115 115 115 115 119 119 119* 122* 122 122 why parameter fixed bin(17,0) dcl 272 ref 271 273 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. RUNTIME_ADDRESS_INFO_VERSION_1 internal static char(8) initial unaligned dcl 4-128 RUNTIME_ARRAY_INFO_VERSION_1 internal static char(8) initial unaligned dcl 4-129 RUNTIME_SUBRANGE_INFO_VERSION_1 internal static char(8) initial unaligned dcl 4-131 RUNTIME_TYPE_INFO_VERSION_1 internal static char(8) initial unaligned dcl 4-127 RUNTIME_VARIANT_INFO_VERSION_1 internal static char(8) initial unaligned dcl 4-130 encoded_value based structure level 1 dcl 1-70 n_dims automatic fixed bin(17,0) dcl 4-97 n_variants automatic fixed bin(35,0) dcl 4-112 nd automatic fixed bin(6,0) unsigned dcl 3-122 nvariants automatic fixed bin(17,0) dcl 3-121 pascal_address based structure level 1 dcl 3-43 pascal_array_info based structure level 1 dcl 3-78 pascal_base_type_info based structure level 1 dcl 3-39 pascal_encoded_value based structure level 1 dcl 3-116 pascal_father_brother based structure level 1 dcl 3-51 pascal_father_type_successor based structure level 1 dcl 3-60 pascal_name_next based structure level 1 dcl 3-35 pascal_offset based fixed bin(35,0) dcl 3-66 pascal_size based fixed bin(35,0) dcl 3-64 pascal_son_level based structure level 1 dcl 3-55 pascal_subrange_limits based structure level 1 dcl 3-68 pascal_symbol_node_header based structure level 1 dcl 3-12 pascal_variant_info based structure level 1 dcl 3-105 runtime_address_info based structure level 1 dcl 4-56 runtime_array_info based structure level 1 dcl 4-70 runtime_bound based structure level 1 unaligned dcl 1-33 runtime_subrange_info based structure level 1 unaligned dcl 4-116 runtime_symbol_info_$address 000000 constant entry external dcl 4-54 runtime_symbol_info_$array 000000 constant entry external dcl 4-68 runtime_symbol_info_$array_dims 000000 constant entry external dcl 4-66 runtime_symbol_info_$brother 000000 constant entry external dcl 4-40 runtime_symbol_info_$father_type 000000 constant entry external dcl 4-42 runtime_symbol_info_$n_variants 000000 constant entry external dcl 4-99 runtime_symbol_info_$name 000000 constant entry external dcl 4-48 runtime_symbol_info_$son 000000 constant entry external dcl 4-44 runtime_symbol_info_$subrange 000000 constant entry external dcl 4-114 runtime_symbol_info_$successor 000000 constant entry external dcl 4-46 runtime_symbol_info_$type 000000 constant entry external dcl 4-22 runtime_symbol_info_$variant 000000 constant entry external dcl 4-101 runtime_type_info based structure level 1 dcl 4-24 runtime_variant_info based structure level 1 dcl 4-103 sym_bound based structure level 1 unaligned dcl 2-28 symbol_block based structure level 1 dcl 2-33 symbol_node based structure level 1 dcl 2-1 NAMES DECLARED BY EXPLICIT CONTEXT. exit 000225 constant label dcl 269 ref 274 failure 000726 constant entry internal dcl 271 ref 64 74 124 136 140 204 216 find_first_symbol 000232 constant entry internal dcl 97 ref 90 find_runtime_symbol 000033 constant entry external dcl 33 find_token_chain 000335 constant entry internal dcl 126 ref 111 match_name 000567 constant entry internal dcl 218 ref 186 search_symbol 000427 constant entry internal dcl 145 ref 91 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1100 1122 766 1110 Length 1410 766 22 252 111 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME find_runtime_symbol 212 external procedure is an external procedure. find_first_symbol 94 internal procedure is called during a stack extension. find_token_chain internal procedure shares stack frame of internal procedure find_first_symbol. search_symbol internal procedure shares stack frame of external procedure find_runtime_symbol. match_name internal procedure shares stack frame of external procedure find_runtime_symbol. failure 64 internal procedure is called by several nonquick procedures. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME find_first_symbol 000100 tp find_first_symbol 000102 name_len find_first_symbol 000112 i find_token_chain 000113 offset find_token_chain find_runtime_symbol 000100 bp find_runtime_symbol 000102 i find_runtime_symbol 000103 ctnum find_runtime_symbol 000104 pos find_runtime_symbol 000105 a find_runtime_symbol 000206 sp find_runtime_symbol 000210 ctindex find_runtime_symbol 000211 ctlen find_runtime_symbol 000212 fsp find_runtime_symbol 000222 hp search_symbol 000224 sp search_symbol 000226 pq_ct search_symbol 000230 pq_sp search_symbol 000232 matches search_symbol 000233 fully search_symbol 000242 lev match_name 000243 cti match_name 000244 ctl match_name 000246 np match_name 000250 ni match_name THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as alloc_char_temp call_ext_out call_int_this_desc call_int_this call_int_other return_mac tra_ext_1 signal_op shorten_stack ext_entry_desc int_entry int_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. runtime_symbol_info_$father runtime_symbol_info_$level runtime_symbol_info_$next stu_$block_dcld_in stu_$get_display_steps NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 33 000026 60 000046 61 000051 63 000052 64 000055 70 000070 71 000071 72 000073 73 000076 74 000101 76 000114 77 000115 78 000133 79 000135 87 000141 88 000144 90 000150 91 000200 93 000203 94 000217 95 000222 269 000225 97 000231 110 000245 111 000246 114 000250 115 000254 119 000302 122 000315 123 000317 124 000320 143 000331 126 000335 133 000337 134 000345 135 000354 136 000365 137 000400 139 000410 140 000412 142 000423 145 000427 179 000431 180 000432 182 000441 183 000447 184 000452 185 000456 186 000474 187 000476 190 000504 191 000507 194 000510 195 000511 199 000513 200 000523 204 000524 205 000537 206 000542 207 000545 212 000546 216 000556 266 000566 218 000567 232 000571 233 000602 234 000604 236 000605 238 000611 240 000614 241 000616 244 000617 247 000620 250 000623 251 000625 252 000633 253 000636 255 000643 256 000663 258 000710 259 000711 260 000712 261 000715 262 000722 263 000724 271 000725 273 000733 274 000740 ----------------------------------------------------------- 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