COMPILATION LISTING OF SEGMENT bind Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 01/17/85 1234.5 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 bind: 12 oldbind: 13 bd: 14 procedure (); 15 16 /* * BIND -- the command procedure of the Multics binder 17* * 18* * 19* * Redesigned and coded by Michael J. Spier, September 17, 1970 20* * Modified 75.06.24 by M. Weaver to remove no_old_alm option 21* * Modified 5/76 by M. Weaver to add -brief option, identify bad control args and improve names in messages 22* * Completely reimplemented, to make comprehensible, 01/14/81 W. Olin Sibert; Added several features: 23* * warning for no bindfile, -force_order, -force_update, warning for update by earlier version. 24* * Modified 11/22/83 by M. Weaver to initialize inp.bindfile_name 25* * Modified 11/06/84 by M. Sharpe to implement -segment, -archive and -bindfile; 26* * bind now uses a new version of binder_input.incl.pl1 which removes the limitation 27* * on the number of archives/segments and object components. 28* * Modified 01/07/84 by M. Sharpe to correct problem with control argument processing; 29* */ 30 31 /* Automatic */ 32 33 dcl access_mode bit (3); 34 dcl archive_dname char (168); 35 dcl archive_ename char (32); 36 dcl archive_idx fixed bin; 37 dcl (argno, nargs) fixed bin; 38 dcl argp pointer; 39 dcl argl fixed bin (21); 40 dcl bindfile_flag bit (1) aligned init ("0"b); 41 dcl bindfile_to_use char (32); 42 dcl code fixed bin (35); 43 dcl component_name char (32) init (""); 44 dcl comp_ptr pointer; 45 dcl 1 comp_info aligned like archive_component_info; 46 dcl ctl_arg char (10) varying; 47 dcl (inpp, p) pointer; /* pointers which must be declared to use binder_input.incl.pl1 */ 48 dcl error_sw bit (1) aligned; 49 dcl ignore_not_found bit (1) aligned; 50 dcl obj_idx fixed bin; 51 dcl real_dname char (168); 52 dcl real_ename char (32); 53 dcl standalone_segment bit (1) aligned init ("0"b); 54 dcl update_idx fixed bin; 55 56 /* Based */ 57 58 dcl arg char (argl) based (argp); 59 60 61 /* Builtin */ 62 63 dcl (addr, char, index, length, 64 null, reverse, rtrim, 65 search, substr) builtin; 66 67 /* Condition */ 68 69 dcl cleanup condition; 70 71 /* Entries */ 72 73 dcl absolute_pathname_ entry (char(*), char(*), fixed bin(35)); 74 dcl absolute_pathname_$add_suffix entry (char (*), char (*), char (*), fixed bin (35)); 75 dcl archive_$next_component_info entry (pointer, fixed bin (24), pointer, pointer, fixed bin (35)); 76 dcl bind_ entry (pointer); 77 dcl com_err_ entry options (variable); 78 dcl cu_$arg_count entry (fixed bin, fixed bin (35)); 79 dcl cu_$arg_ptr entry (fixed bin, pointer, fixed bin (21), fixed bin (35)); 80 dcl date_time_ entry (fixed bin (71), char (*)); 81 dcl expand_pathname_$component entry (char(*), char(*), char(*), char(*), fixed bin(35)); 82 dcl expand_pathname_$add_suffix entry (char (*), char (*), char (*), char (*), fixed bin (35)); 83 dcl get_temp_segment_ entry (char(*), ptr, fixed bin(35)); 84 dcl hcs_$terminate_noname entry (pointer, fixed bin (35)); 85 dcl initiate_file_ entry (char(*), char(*), bit(*), ptr, fixed bin(24), fixed bin(35)); 86 dcl release_temp_segment_ entry (char(*), ptr, fixed bin(35)); 87 dcl translator_info_$get_source_info entry (pointer, char (*), char (*), fixed bin (71), bit (36) aligned, 88 fixed bin (35)); 89 90 /* External Static */ 91 92 dcl error_table_$archive_pathname fixed bin (35) external static; 93 dcl error_table_$badopt fixed bin (35) external static; 94 dcl error_table_$noarg fixed bin (35) external static; 95 dcl error_table_$noentry fixed bin (35) external static; 96 dcl error_table_$pathlong fixed bin (35) external static; 97 98 /* Internal Static */ 99 100 dcl ARCHIVE_SUFFIX char (7) internal static options (constant) init ("archive"); 101 dcl WHOAMI char (32) internal static options (constant) init ("bind"); 102 103 dcl binder_invoked bit (1) aligned internal static init ("0"b); /* Prevent recursion */ 104 105 106 107 108 if binder_invoked then do; 109 call com_err_ (0, WHOAMI, "^a^/^a", 110 "The binder may not be invoked while a previous invocation is", 111 "suspended. Use the ""release"" or ""start"" command first."); 112 return; /* Avoid resetting the flag, of course */ 113 end; 114 115 116 inpp = null; 117 on cleanup call CLEAN_UP (); 118 119 120 binder_invoked = "1"b; /* Set recursion-prevention flag */ 121 122 call get_temp_segment_ (WHOAMI, inpp, code); 123 if code ^= 0 then do; 124 call com_err_ (code, WHOAMI, "Could not obtain temporary segment. Report to maintainer."); 125 return; 126 end; 127 128 inp.ntotal = 0; 129 130 inp.version = BINDER_INPUT_VERSION_2; 131 inp.caller_name = WHOAMI; 132 133 inp.bindfilep = null (); 134 inp.bindfile_name = ""; 135 136 update_idx = 0; 137 archive_idx = 0; 138 error_sw = "0"b; /* Only set when multiple errors might occur */ 139 ignore_not_found = "0"b; 140 141 142 call cu_$arg_count (nargs, code); 143 if code ^= 0 then do; 144 call com_err_ (code, WHOAMI); 145 146 MAIN_RETURN: if error_sw then /* Make mention of the fact that nothing will happen */ 147 call com_err_ (0, WHOAMI, "Fatal errors have occurred; binding will not be attempted."); 148 149 call CLEAN_UP (); /* This is the ONLY exit from this program */ 150 return; /* except for the one which prevents recursion */ 151 end; 152 153 154 155 156 /* Now, loop through the arguments, picking up the options and the archive pathnames. 157* This loop initiates all the supposed archives, and fills in inp.archive_file for 158* each one, but does not inspect their contents. 159* */ 160 161 /* The first part of the loop handles the simple control argument options */ 162 163 argno = 1; 164 do while (argno <= nargs); 165 call cu_$arg_ptr (argno, argp, argl, (0)); 166 167 if (arg = "-debug") | (arg = "-db") then 168 inp.debug = "1"b; 169 170 else if (arg = "-map") then do; 171 inp.list_seg = "1"b; 172 inp.map_opt = "1"b; 173 end; 174 175 else if (arg = "-list") | (arg = "-ls") then do; 176 inp.list_opt = "1"b; 177 inp.list_seg = "1"b; 178 inp.map_opt = "1"b; 179 end; 180 181 else if (arg = "-brief") | (arg = "-bf") then 182 inp.brief_opt = "1"b; 183 184 else if (arg = "-force_order") | (arg = "-fco") then 185 inp.force_order_opt = "1"b; 186 187 188 189 190 /* The next portion of the loop handles some of the more complicated control arguments */ 191 192 else if (arg = "-update") | (arg = "-ud") then do; 193 if inp.narc = 0 then do; 194 NO_PRIMARY_ARCHIVE: call com_err_ (0, WHOAMI, "^a specified before any primary archive names.", arg); 195 goto MAIN_RETURN; 196 end; 197 198 if update_idx > 0 then do; 199 MULTIPLE_UPDATES: call com_err_ (0, WHOAMI, "Multiple -update or -force_update control arguments not allowed."); 200 goto MAIN_RETURN; 201 end; 202 203 update_idx = inp.narc + 1; /* Start updating with the next archive */ 204 end; 205 206 else if (arg = "-force_update") | (arg = "-fud") then do; 207 if inp.narc = 0 then 208 goto NO_PRIMARY_ARCHIVE; 209 if update_idx > 0 then 210 goto MULTIPLE_UPDATES; 211 212 ignore_not_found = "1"b; /* Set the flag to ignore update archives not found */ 213 update_idx = inp.narc + 1; /* Start updating with the next archive */ 214 end; 215 216 217 218 /* This portion handles control args that require another argument immediatedly following them */ 219 else if (arg = "-segment") | (arg = "-sm") then do; 220 if argno = nargs then goto MISSING_ARG; 221 222 ctl_arg = arg; 223 call cu_$arg_ptr (argno+1, argp, argl, (0)); /* Just checking! */ 224 if char (arg, 1) = "-" then do; 225 call com_err_ (error_table_$badopt, WHOAMI, 226 "^a ^a^/ ^a must be followed by a pathname.^/", ctl_arg, arg, ctl_arg); 227 goto MAIN_RETURN; 228 end; 229 230 standalone_segment = "1"b; 231 end; 232 233 else if (arg = "-archive") | (arg = "-ac") then do; 234 235 if argno = nargs then do; 236 MISSING_ARG: call com_err_ (error_table_$noarg, WHOAMI, "^a must be followed by a pathname", arg); 237 goto MAIN_RETURN; 238 end; 239 240 ctl_arg = arg; 241 call cu_$arg_ptr (argno+1, argp, argl, (0)); /* Just checking! */ 242 if char (arg, 1) = "-" then do; 243 call com_err_ (error_table_$badopt, WHOAMI, 244 "^a ^a^/ ^a must be followed by a pathname.^/", ctl_arg, arg, ctl_arg); 245 goto MAIN_RETURN; 246 end; 247 248 standalone_segment = "0"b; 249 end; 250 251 else if (arg = "-bindfile") | (arg = "-bdf") then do; 252 if bindfile_flag then do; 253 call com_err_ (0, WHOAMI, "Multiple -bindfile control args not allowed."); 254 goto MAIN_RETURN; 255 end; 256 257 if argno = nargs then do; 258 call com_err_ (error_table_$noarg, WHOAMI, 259 "^a must be followed by an entry name.", arg); 260 goto MAIN_RETURN; 261 end; 262 263 bindfile_flag = "1"b; /* don't use this arg again */ 264 265 ctl_arg = arg; 266 argno = argno + 1; 267 call cu_$arg_ptr (argno, argp, argl, (0)); 268 if (search (arg, "<>") > 0) | (index (arg, "-") = 1) 269 then do; 270 call com_err_ (0, WHOAMI, 271 "^a must be followed by an entry name ^[not^;not a pathname.^] ^a.", 272 ctl_arg, (index (arg,"-") = 1), arg); 273 error_sw = "1"b; 274 end; 275 276 if (argl > 4 & index (arg, ".bind") = argl - 4) then do; /* has .bind suffix */ 277 if argl > 32 then do; /* too long */ 278 call com_err_ (0, WHOAMI, "Bindfile name is too long. ^a", arg); 279 error_sw = "1"b; 280 end; 281 else bindfile_to_use = arg; 282 end; 283 284 else do; /* no .bind suffix */ 285 if argl > 27 then do; /* too long */ 286 call com_err_ (0, WHOAMI, "Bindfile name is too long. ^a", arg); 287 error_sw = "1"b; 288 end; 289 else bindfile_to_use = arg || ".bind"; 290 end; 291 end; /* -bindfile */ 292 293 else if char (arg, 1) = "-" then do; 294 call com_err_ (error_table_$badopt, WHOAMI, "^a", arg); 295 goto MAIN_RETURN; 296 end; 297 298 299 /* The final portion deals with initiating archives and getting information about them */ 300 301 else do; /* If not a control argument, must be an archive name */ 302 inp.ntotal, /* update the array bound */ 303 archive_idx = archive_idx + 1; /* and the index */ 304 inp.archive(archive_idx).ptr = null; /* initialize the ptr so that CLEAN_UP won't break */ 305 306 307 if standalone_segment then call absolute_pathname_ 308 (arg, inp.archive (archive_idx).path, code); 309 else call absolute_pathname_$add_suffix 310 (arg, ARCHIVE_SUFFIX, inp.archive (archive_idx).path, code); 311 if code ^= 0 then do; 312 BAD_ARCHIVE_PATH: call com_err_ (code, WHOAMI, "^a", arg); 313 goto MAIN_RETURN; 314 end; 315 316 if standalone_segment then call expand_pathname_$component 317 (inp.archive (archive_idx).path, archive_dname, archive_ename, component_name, code); 318 else call expand_pathname_$add_suffix (inp.archive (archive_idx).path, 319 ARCHIVE_SUFFIX, archive_dname, archive_ename, code); 320 if code ^= 0 then 321 goto BAD_ARCHIVE_PATH; 322 if component_name ^= "" then do; 323 call com_err_ (error_table_$archive_pathname, "bind_", inp.archive (archive_idx).path); 324 component_name = ""; 325 archive_idx = archive_idx - 1; 326 goto SKIP_ARCHIVE; 327 end; 328 329 inp.archive(archive_idx).entryname = archive_ename; 330 331 call initiate_file_ (archive_dname, archive_ename, access_mode, 332 inp.archive (archive_idx).ptr, inp.archive (archive_idx).bc, code); 333 334 if inp.archive (archive_idx).ptr = null () then do; 335 if ignore_not_found then /* We can skip it */ 336 if code = error_table_$noentry then do; 337 archive_idx = archive_idx - 1; /* Keep this one out of the array */ 338 goto SKIP_ARCHIVE; 339 end; 340 341 BAD_SEGMENT: call com_err_ (code, WHOAMI, "^a", inp.archive (archive_idx).path); 342 goto MAIN_RETURN; 343 end; 344 345 if ^inp.brief_opt /* Warn about empties */ 346 & inp.archive (archive_idx).bc = 0 then 347 call com_err_ (0, WHOAMI, "Warning: ^a is empty.", inp.archive (archive_idx).path); 348 349 call translator_info_$get_source_info (inp.archive (archive_idx).ptr, real_dname, real_ename, 350 inp.archive (archive_idx).dtm, inp.archive (archive_idx).uid, code); 351 if code ^= 0 then 352 goto BAD_SEGMENT; 353 354 if (length (rtrim (real_dname)) + length (rtrim (real_ename)) + 1) > 168 then do; 355 call com_err_ (error_table_$pathlong, WHOAMI, "^a>^a", real_dname, real_ename); 356 goto MAIN_RETURN; 357 end; 358 359 inp.archive (archive_idx).real_path = rtrim (real_dname) || ">" || rtrim (real_ename); 360 361 inp.archive (archive_idx).standalone_seg = standalone_segment; 362 363 if archive_idx = 1 then /* Apply default value for output segment */ 364 inp.bound_seg_name = substr (archive_ename, 1, 365 (length (rtrim (archive_ename)) - (length (ARCHIVE_SUFFIX) + 1))); 366 367 if update_idx > 0 then /* Update the counts in the input */ 368 inp.nupd = inp.nupd + 1; 369 else inp.narc = inp.narc + 1; 370 SKIP_ARCHIVE: 371 end; /* Of processing one archive */ 372 if char (arg, 1) = "-" & arg ^= "-segment" & arg ^= "-sm" then standalone_segment = "0"b; 373 /* -segment is only in effect until the next control argument. */ 374 argno = argno + 1; 375 376 end; /* Of loop through arguments */ 377 378 if inp.narc = 0 then do; 379 call com_err_ (error_table_$noarg, WHOAMI, 380 "^/Usage:^-^a archive_path{s} {-update update_archive_path{s}} {-control_args}", WHOAMI); 381 goto MAIN_RETURN; 382 end; 383 384 if (update_idx > 0) & (inp.nupd = 0) & (^ignore_not_found) then do; 385 call com_err_ (0, WHOAMI, "-update was specified, but not followed by any update archive names."); 386 goto MAIN_RETURN; 387 end; 388 389 390 comp_info.version = ARCHIVE_COMPONENT_INFO_VERSION_1; /* In preparation for calling archive */ 391 392 do archive_idx = 1 to inp.ntotal; /* Go through all the input archives */ 393 comp_ptr = null (); /* Set up to loop through components */ 394 395 GET_NEXT_OBJECT: 396 if inp.archive (archive_idx).standalone_seg then do; 397 comp_info.comp_ptr = inp.archive (archive_idx).ptr; 398 comp_info.comp_bc = inp.archive (archive_idx).bc; 399 comp_info.name = inp.archive (archive_idx).entryname; 400 comp_info.time_updated, 401 comp_info.time_modified = inp.archive (archive_idx).dtm; 402 end; 403 404 else do; 405 call archive_$next_component_info 406 (inp.archive (archive_idx).ptr, inp.archive (archive_idx).bc, comp_ptr, addr (comp_info), code); 407 408 if code ^= 0 then do; 409 call com_err_ (code, WHOAMI, "Searching ^a.", inp.archive (archive_idx).path); 410 goto MAIN_RETURN; 411 end; 412 413 if comp_ptr = null () then /* Nothing more in this archive */ 414 goto GET_NEXT_ARCHIVE; 415 end; 416 417 if substr (reverse (rtrim (comp_info.name)), 1, 5) = reverse (".bind") then do; /* A bindfile */ 418 if bindfile_flag then do; /* -bindfile was specified */ 419 if comp_info.name ^= bindfile_to_use then goto IGNORE_BINDFILE; 420 end; 421 422 else if inp.bindfilep ^= null () then do; 423 if archive_idx <= inp.narc then do; /* We are not processing an update archive */ 424 if ^inp.brief_opt then /* Complain about it if not brief */ 425 call com_err_ (0, WHOAMI, "Warning: Multiple bindfile ^a in ^a ignored.", 426 comp_info.name, inp.archive (archive_idx).path); 427 428 goto IGNORE_BINDFILE; /* and ignore it in any case */ 429 end; /* of case for duplicate bindfile in non-update archive */ 430 431 if ^inp.brief_opt then /* Mention it if not brief */ 432 call com_err_ (0, WHOAMI, "Warning: ^a of ^a^/^2xreplaced by: ^a of ^a", 433 inp.bindfile_name, inp.archive (inp.bindfile_idx).path, 434 comp_info.name, inp.archive (archive_idx).path); 435 end; /* of checking for duplicate bindfile */ 436 437 inp.bindfilep = comp_info.comp_ptr; /* In any case, make this the bindfile */ 438 inp.bindfile_bc = comp_info.comp_bc; 439 inp.bindfile_idx = archive_idx; /* Index of archive from which this came */ 440 inp.bindfile_name = comp_info.name; 441 inp.bindfile_time_up = comp_info.time_updated; 442 inp.bindfile_time_mod = comp_info.time_modified; 443 444 IGNORE_BINDFILE: /* Now that we have it, go on to the next component */ 445 if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 446 else goto GET_NEXT_OBJECT; 447 end; /* Of processing a bindfile entry */ 448 449 450 /* If we get here, we are known to be processing a "object" component. Put it in 451* the list, perhaps replacing one which was there earlier, and complaining about 452* a variety of things. */ 453 454 do obj_idx = 1 to inp.nobj; /* Look for this one elsewhere in the input stream */ 455 if inp.obj (obj_idx).filename = comp_info.name then do; 456 if archive_idx <= inp.narc then do; 457 call com_err_ (0, WHOAMI, "Duplicate object ^a in ^a", 458 comp_info.name, inp.archive (archive_idx).path); 459 460 error_sw = "1"b; /* Report all of these, but don't try binding */ 461 462 if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 463 else goto GET_NEXT_OBJECT; 464 465 end; 466 467 inp.obj (obj_idx).base = comp_info.comp_ptr; /* Replace the previous entry for this component */ 468 inp.obj (obj_idx).bitcount = comp_info.comp_bc; /* The name, of course, is already correct */ 469 470 if inp.obj (obj_idx).time_mod > comp_info.time_modified then 471 if ^inp.brief_opt then /* Mention it, in case the user has made a mistake */ 472 call com_err_ (0, WHOAMI, 473 "Note: ^a in ^a (modified ^a)^/^3xreplaced by earlier (^a) copy in ^a", 474 comp_info.name, inp.archive (inp.obj (obj_idx).archive_idx).path, 475 DATE_TIME (inp.obj (obj_idx).time_mod), DATE_TIME (comp_info.time_modified), 476 inp.archive (archive_idx).path); 477 478 inp.obj (obj_idx).time_mod = comp_info.time_modified; 479 inp.obj (obj_idx).time_up = comp_info.time_updated; 480 inp.obj (obj_idx).archive_idx = archive_idx; 481 482 inp.obj(obj_idx).to_be_ignored = (inp.obj(obj_idx).bitcount = 0); 483 /* set ignore bit if seg is zero length; */ 484 /* reset it if it was previously set & bitcount > 0 */ 485 if inp.obj(obj_idx).bitcount = 0 then inp.zeroseg_seen = "1"b; 486 /* Tell parse_bindfile_ to check for zsegs */ 487 /* Having found the replacement, look no further */ 488 if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 489 else goto GET_NEXT_OBJECT; 490 491 end; /* Of replacing a component */ 492 end; /* of loop through objects */ 493 494 495 496 /* If we fall through to here, the object we are processing was not already in our 497* list of objects, so we must add it to the list. */ 498 499 500 obj_idx = inp.nobj + 1; 501 502 inp.obj (obj_idx).filename = comp_info.name; /* These items need only be set the first time */ 503 inp.obj (obj_idx).option = ""b; /* No options yet, of course */ 504 505 inp.obj (obj_idx).base = comp_info.comp_ptr; 506 inp.obj (obj_idx).bitcount = comp_info.comp_bc; 507 inp.obj (obj_idx).time_mod = comp_info.time_modified; 508 inp.obj (obj_idx).time_up = comp_info.time_updated; 509 inp.obj (obj_idx).archive_idx = archive_idx; 510 511 inp.obj(obj_idx).to_be_ignored = (inp.obj(obj_idx).bitcount = 0); 512 /* set ignore bit if seg is zero length; */ 513 /* reset it if it was previously set & bitcount > 0 */ 514 if inp.obj(obj_idx).bitcount = 0 then inp.zeroseg_seen = "1"b; 515 /* Tell parse_bindfile_ to check for zsegs */ 516 inp.nobj = obj_idx; 517 518 if ^inp.archive (archive_idx).standalone_seg 519 then goto GET_NEXT_OBJECT; /* Having added it, go find another */ 520 521 GET_NEXT_ARCHIVE: /* This "loop" is only reached after running out of */ 522 /* components in an archive or processing a standalone */ 523 end; /* segment -- see the top of the loop for details. */ 524 525 /* Having done all the processing of the input archives, we now just call 526* the subroutine which does the real work, and hope for the best. 527* */ 528 529 if error_sw then /* Reject the binding attempt, because something happened */ 530 goto MAIN_RETURN; 531 532 if inp.bindfilep = null () then do; /* Make this be more useful */ 533 if bindfile_flag then do; /* Bindfile specified but not found -- ERROR */ 534 call com_err_ ((0), WHOAMI, 535 "Specified bindfile ^a was not found in the input archive^[s^].", 536 bindfile_to_use, ((inp.narc + inp.nupd) ^= 1)); 537 goto MAIN_RETURN; 538 end; 539 540 else /* No bindfiles specified or found -- Warning */ 541 if ^inp.brief_opt then /* But only if we're allowed to be noisy */ 542 call com_err_ (0, WHOAMI, "Warning: No bindfile was found in the input archive^[s^].", 543 ((inp.narc + inp.nupd) ^= 1)); 544 end; 545 546 call bind_ (inpp); 547 548 goto MAIN_RETURN; /* All done. Finish up, and return */ 549 550 551 552 CLEAN_UP: proc (); 553 554 /* cleanup and exit procedure -- terminates all the input archives */ 555 556 dcl idx fixed bin; 557 dcl tempp pointer; 558 559 if inpp ^= null then do; 560 do idx = 1 to inp.ntotal; 561 if inp.archive (idx).ptr ^= null () then do; 562 tempp = inp.archive (idx).ptr; 563 inp.archive (idx).ptr = null (); 564 call hcs_$terminate_noname (tempp, (0)); 565 end; 566 end; 567 568 call release_temp_segment_ (WHOAMI, inpp, (0)); 569 binder_invoked = "0"b; /* Always turn off the flag */ 570 end; 571 572 return; 573 end CLEAN_UP; 574 575 576 577 DATE_TIME: proc (P_time) returns (char (14)); 578 579 dcl P_time fixed bin (71) parameter; 580 581 dcl ret_str char (14); 582 dcl date_str char (24); 583 584 585 call date_time_ (P_time, date_str); 586 587 substr (ret_str, 1, 8) = substr (date_str, 1, 8); 588 substr (ret_str, 9, 1) = " "; 589 substr (ret_str, 10, 2) = substr (date_str, 11, 2); 590 substr (ret_str, 12, 1) = ":"; 591 substr (ret_str, 13, 2) = substr (date_str, 13, 2); 592 593 return (ret_str); 594 end DATE_TIME; 595 596 /* BEGIN INCLUDE FILE ... binder_input.incl.pl1 ... 01/14/81 W. Olin Sibert */ 1 2 /* Input structure for binder_. Modified to contain more useful information 01/14/81 */ 1 3 1 4 /* This file is used only by bind.pl1, bind_.pl1 and parse_bindfile_.pl1 */ 1 5 1 6 /* Modified 9/24/84 by M Sharpe to hold a few new flags (originally done 1 7* by Henry Bodzin, Ford Motor Co.), and to allow "unlimited" number of 1 8* input archives/segments and object components. */ 1 9 1 10 dcl 1 inp aligned based (inpp), /* Really based on bx_$inpp */ 1 11 2 version char (4) aligned, 1 12 2 caller_name char (32) unaligned, /* Name of command on whose behalf binder is being invoked */ 1 13 1 14 2 bound_seg_name char (32) unaligned, /* name of new bound segment */ 1 15 1 16 2 narc fixed bin, /* number of input archive files */ 1 17 2 nupd fixed bin, /* number of update archive files */ 1 18 2 ntotal fixed bin, /* total number of input and update files */ 1 19 2 nobj fixed bin, /* number of objects to be bound */ 1 20 1 21 2 bindfilep pointer, /* pointer to bindfile */ 1 22 2 bindfile_bc fixed bin (24), /* bitcount of bindfile */ 1 23 2 bindfile_name char (32) unaligned, /* name of bindfile */ 1 24 2 bindfile_time_up fixed bin (71), /* date updated in archive */ 1 25 2 bindfile_time_mod fixed bin (71), /* date last modified */ 1 26 2 bindfile_idx fixed bin, /* index of archive bindfile was in */ 1 27 1 28 2 options aligned, 1 29 3 debug bit (1) unaligned, /* 1-> debug option ON */ 1 30 3 list_seg bit (1) unaligned, /* 1 -> make list seg */ 1 31 3 map_opt bit (1) unaligned, /* 1 -> map option */ 1 32 3 list_opt bit (1) unaligned, /* 1 -> list option */ 1 33 3 brief_opt bit (1) unaligned, /* 1 -> brief option */ 1 34 3 force_order_opt bit (1) unaligned, /* 1 -> force_order option from command line */ 1 35 3 zeroseg_seen bit (1) unaligned, /* 1 -> a zero-length object is in the obj array */ 1 36 3 flags_pad bit(29) unaligned, 1 37 /* ---- any additions to the include file must be made before 1 38* the "archive" substructure, as inp.ntotal is incremented 1 39* and the structure is extended as we pick up the names of 1 40* archives/segs from the command line arguments. Similarly, 1 41* after inp.ntotal is determined, the "obj" substructure is 1 42* filled and inp.nobj is incremented as we open up each 1 43* archive and take the necessary information from the 1 44* components. To allocate the structure, the user must first 1 45* set NTOTAL and NOBJ, allocate the structure and then set 1 46* inp.notal and inp.nobj; otherwise, this structure must be 1 47* declared in a temporary segment. */ 1 48 1 49 2 archive (NTOTAL refer (inp.ntotal)) aligned, /* info about input archives/segs, for source map, etc. */ 1 50 3 path char (168) unaligned, /* for identifying archive */ 1 51 3 real_path char (168) unaligned, /* determined by translator_info_ */ 1 52 3 ptr pointer, /* pointer to archive */ 1 53 3 bc fixed bin (24), /* and its bitcount */ 1 54 3 standalone_seg bit (1) unaligned, /* 1 -> standalone_seg;0 -> archive */ 1 55 3 entryname char (32), /* entryname of segment */ 1 56 3 uid bit (36) aligned, /* unique id of archive */ 1 57 3 dtm fixed bin (71), /* date-time modified of archive */ 1 58 1 59 1 60 2 obj (NOBJ refer (inp.nobj)) aligned like obj; 1 61 1 62 1 63 dcl 1 obj aligned based (p), /* declaration of single input entry */ 1 64 2 filename char (32) unaligned, 1 65 2 base pointer, /* pointer to base of object segment */ 1 66 2 bitcount fixed bin (24), /* bitcount of object segment */ 1 67 2 option bit (18) unaligned, /* pointer into option structure */ 1 68 2 new_order fixed bin(9) unsigned unaligned, /* new position from XXX_Order statement */ 1 69 2 to_be_ignored bit(1) unaligned, /* mentioned in Ignore statement or is zero-length */ 1 70 2 objectname_stmt bit(1) unaligned, /* mentioned in objectname: statement */ 1 71 2 flag bit (1) unaligned, /* This word of unaligned bits ought to be a substructure, */ 1 72 2 pad bit (6) unaligned, /* but if it is, pl1 scope-of-names stupidly rejects refs */ 1 73 /* to obj.flag as "ambiguous", because of inp.obj.flag */ 1 74 2 archive_idx fixed bin, /* index of archive from which this component comes */ 1 75 2 time_mod fixed bin (71), /* DTCM of component (from archive) */ 1 76 2 time_up fixed bin (71); /* Time updated in archive */ 1 77 1 78 1 79 dcl BINDER_INPUT_VERSION_2 char (4) aligned internal static options (constant) init ("BI.2"); 1 80 dcl (NOBJ, NTOTAL) fixed bin init (0); 1 81 1 82 1 83 /* END INCLUDE FILE ... binder_input.incl.pl1 */ 596 597 /* BEGIN INCLUDE FILE ... archive_component_info.incl.pl1 ... WOS 01/13/81 */ 2 2 /* Structure describing an archive component, used by archive_ */ 2 3 2 4 dcl archive_component_info_ptr pointer; 2 5 2 6 dcl 1 archive_component_info aligned based (archive_component_info_ptr), 2 7 2 version fixed bin, 2 8 2 comp_bc fixed bin (24), 2 9 2 comp_ptr pointer, 2 10 2 name char (32) unaligned, 2 11 2 time_modified fixed bin (71), 2 12 2 time_updated fixed bin (71), 2 13 2 comp_lth fixed bin (19), 2 14 2 access bit (36) unaligned; 2 15 2 16 dcl ARCHIVE_COMPONENT_INFO_VERSION_1 fixed bin internal static options (constant) init (1); 2 17 2 18 /* BEGIN INCLUDE FILE ... archive_component_info.incl.pl1 ... WOS 01/13/81 */ 597 598 599 end bind; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 01/17/85 1231.5 bind.pl1 >spec>online>6929.pbf>bind.pl1 596 1 12/18/84 0934.2 binder_input.incl.pl1 >ldd>include>binder_input.incl.pl1 597 2 04/16/81 0942.6 archive_component_info.incl.pl1 >ldd>include>archive_component_info.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. ARCHIVE_COMPONENT_INFO_VERSION_1 constant fixed bin(17,0) initial dcl 2-16 ref 390 ARCHIVE_SUFFIX 000012 constant char(7) initial unaligned dcl 100 set ref 309* 318* 363 BINDER_INPUT_VERSION_2 000000 constant char(4) initial dcl 1-79 ref 130 NOBJ 000344 automatic fixed bin(17,0) initial dcl 1-80 set ref 1-80* NTOTAL 000345 automatic fixed bin(17,0) initial dcl 1-80 set ref 1-80* P_time parameter fixed bin(71,0) dcl 579 set ref 577 585* WHOAMI 000001 constant char(32) initial unaligned dcl 101 set ref 109* 122* 124* 131 144* 146* 194* 199* 225* 236* 243* 253* 258* 270* 278* 286* 294* 312* 341* 345* 355* 379* 379* 385* 409* 424* 431* 457* 470* 534* 540* 568* absolute_pathname_ 000012 constant entry external dcl 73 ref 307 absolute_pathname_$add_suffix 000014 constant entry external dcl 74 ref 309 access_mode 000100 automatic bit(3) unaligned dcl 33 set ref 331* addr builtin function dcl 63 ref 405 405 archive 50 based structure array level 2 dcl 1-10 archive_$next_component_info 000016 constant entry external dcl 75 ref 405 archive_component_info based structure level 1 dcl 2-6 archive_dname 000101 automatic char(168) unaligned dcl 34 set ref 316* 318* 331* archive_ename 000153 automatic char(32) unaligned dcl 35 set ref 316* 318* 329 331* 363 363 archive_idx based fixed bin(17,0) array level 3 in structure "inp" dcl 1-10 in procedure "bd" set ref 470 480* 509* archive_idx 000163 automatic fixed bin(17,0) dcl 36 in procedure "bd" set ref 137* 302 302* 304 307 309 316 318 323 325* 325 329 331 331 334 337* 337 341 345 345 349 349 349 359 361 363 392* 395 397 398 399 400 405 405 409 423 424 431 439 444 456 457 462 470 480 488 509 518* arg based char unaligned dcl 58 set ref 167 167 170 175 175 181 181 184 184 192 192 194* 206 206 219 219 222 224 225* 233 233 236* 240 242 243* 251 251 258* 265 268 268 270 270* 276 278* 281 286* 289 293 294* 307* 309* 312* 372 372 372 argl 000170 automatic fixed bin(21,0) dcl 39 set ref 165* 167 167 170 175 175 181 181 184 184 192 192 194 194 206 206 219 219 222 223* 224 225 225 233 233 236 236 240 241* 242 243 243 251 251 258 258 265 267* 268 268 270 270 270 276 276 276 277 278 278 281 285 286 286 289 293 294 294 307 307 309 309 312 312 372 372 372 argno 000164 automatic fixed bin(17,0) dcl 37 set ref 163* 164 165* 220 223 235 241 257 266* 266 267* 374* 374 argp 000166 automatic pointer dcl 38 set ref 165* 167 167 170 175 175 181 181 184 184 192 192 194 206 206 219 219 222 223* 224 225 233 233 236 240 241* 242 243 251 251 258 265 267* 268 268 270 270 276 278 281 286 289 293 294 307 309 312 372 372 372 base based pointer array level 3 dcl 1-10 set ref 467* 505* bc 176 based fixed bin(24,0) array level 3 dcl 1-10 set ref 331* 345 398 405* bind_ 000020 constant entry external dcl 76 ref 546 binder_invoked 000010 internal static bit(1) initial dcl 103 set ref 108 120* 569* bindfile_bc 30 based fixed bin(24,0) level 2 dcl 1-10 set ref 438* bindfile_flag 000171 automatic bit(1) initial dcl 40 set ref 40* 252 263* 418 533 bindfile_idx 46 based fixed bin(17,0) level 2 dcl 1-10 set ref 431 439* bindfile_name 31 based char(32) level 2 packed unaligned dcl 1-10 set ref 134* 431* 440* bindfile_time_mod 44 based fixed bin(71,0) level 2 dcl 1-10 set ref 442* bindfile_time_up 42 based fixed bin(71,0) level 2 dcl 1-10 set ref 441* bindfile_to_use 000172 automatic char(32) unaligned dcl 41 set ref 281* 289* 419 534* bindfilep 26 based pointer level 2 dcl 1-10 set ref 133* 422 437* 532 bitcount based fixed bin(24,0) array level 3 dcl 1-10 set ref 468* 482 485 506* 511 514 bound_seg_name 11 based char(32) level 2 packed unaligned dcl 1-10 set ref 363* brief_opt 47(04) based bit(1) level 3 packed unaligned dcl 1-10 set ref 181* 345 424 431 470 540 caller_name 1 based char(32) level 2 packed unaligned dcl 1-10 set ref 131* char builtin function dcl 63 ref 224 242 293 372 cleanup 000336 stack reference condition dcl 69 ref 117 code 000202 automatic fixed bin(35,0) dcl 42 set ref 122* 123 124* 142* 143 144* 307* 309* 311 312* 316* 318* 320 331* 335 341* 349* 351 405* 408 409* com_err_ 000022 constant entry external dcl 77 ref 109 124 144 146 194 199 225 236 243 253 258 270 278 286 294 312 323 341 345 355 379 385 409 424 431 457 470 534 540 comp_bc 1 000216 automatic fixed bin(24,0) level 2 dcl 45 set ref 398* 438 468 506 comp_info 000216 automatic structure level 1 dcl 45 set ref 405 405 comp_ptr 000214 automatic pointer dcl 44 in procedure "bd" set ref 393* 405* 413 comp_ptr 2 000216 automatic pointer level 2 in structure "comp_info" dcl 45 in procedure "bd" set ref 397* 437 467 505 component_name 000203 automatic char(32) initial unaligned dcl 43 set ref 43* 316* 322 324* ctl_arg 000240 automatic varying char(10) dcl 46 set ref 222* 225* 225* 240* 243* 243* 265* 270* cu_$arg_count 000024 constant entry external dcl 78 ref 142 cu_$arg_ptr 000026 constant entry external dcl 79 ref 165 223 241 267 date_str 000362 automatic char(24) unaligned dcl 582 set ref 585* 587 589 591 date_time_ 000030 constant entry external dcl 80 ref 585 debug 47 based bit(1) level 3 packed unaligned dcl 1-10 set ref 167* dtm 212 based fixed bin(71,0) array level 3 dcl 1-10 set ref 349* 400 entryname 200 based char(32) array level 3 dcl 1-10 set ref 329* 399 error_sw 000246 automatic bit(1) dcl 48 set ref 138* 146 273* 279* 287* 460* 529 error_table_$archive_pathname 000050 external static fixed bin(35,0) dcl 92 set ref 323* error_table_$badopt 000052 external static fixed bin(35,0) dcl 93 set ref 225* 243* 294* error_table_$noarg 000054 external static fixed bin(35,0) dcl 94 set ref 236* 258* 379* error_table_$noentry 000056 external static fixed bin(35,0) dcl 95 ref 335 error_table_$pathlong 000060 external static fixed bin(35,0) dcl 96 set ref 355* expand_pathname_$add_suffix 000034 constant entry external dcl 82 ref 318 expand_pathname_$component 000032 constant entry external dcl 81 ref 316 filename based char(32) array level 3 packed unaligned dcl 1-10 set ref 455 502* force_order_opt 47(05) based bit(1) level 3 packed unaligned dcl 1-10 set ref 184* get_temp_segment_ 000036 constant entry external dcl 83 ref 122 hcs_$terminate_noname 000040 constant entry external dcl 84 ref 564 idx 000100 automatic fixed bin(17,0) dcl 556 set ref 560* 561 562 563* ignore_not_found 000247 automatic bit(1) dcl 49 set ref 139* 212* 335 384 index builtin function dcl 63 ref 268 270 276 initiate_file_ 000042 constant entry external dcl 85 ref 331 inp based structure level 1 dcl 1-10 inpp 000244 automatic pointer dcl 47 set ref 116* 122* 128 130 131 133 134 167 171 172 176 177 178 181 184 193 203 207 213 302 304 307 309 316 318 323 329 331 331 334 341 345 345 345 349 349 349 359 361 363 367 367 369 369 378 384 392 395 397 398 399 400 405 405 409 422 423 424 424 431 431 431 431 431 437 438 439 440 441 442 444 454 455 456 457 462 467 468 470 470 470 470 470 470 470 478 479 480 482 482 485 485 488 500 502 503 505 506 507 508 509 511 511 514 514 516 518 532 534 534 540 540 540 546* 559 560 561 562 563 568* length builtin function dcl 63 ref 354 354 363 363 list_opt 47(03) based bit(1) level 3 packed unaligned dcl 1-10 set ref 176* list_seg 47(01) based bit(1) level 3 packed unaligned dcl 1-10 set ref 171* 177* map_opt 47(02) based bit(1) level 3 packed unaligned dcl 1-10 set ref 172* 178* name 4 000216 automatic char(32) level 2 packed unaligned dcl 45 set ref 399* 417 419 424* 431* 440 455 457* 470* 502 narc 21 based fixed bin(17,0) level 2 dcl 1-10 set ref 193 203 207 213 369* 369 378 423 456 534 540 nargs 000165 automatic fixed bin(17,0) dcl 37 set ref 142* 164 220 235 257 nobj 24 based fixed bin(17,0) level 2 dcl 1-10 set ref 454 500 516* ntotal 23 based fixed bin(17,0) level 2 dcl 1-10 set ref 128* 302* 392 455 467 468 470 470 470 470 478 479 480 482 482 485 502 503 505 506 507 508 509 511 511 514 560 null builtin function dcl 63 ref 116 133 304 334 393 413 422 532 559 561 563 nupd 22 based fixed bin(17,0) level 2 dcl 1-10 set ref 367* 367 384 534 540 obj based structure level 1 dcl 1-63 in procedure "bd" obj based structure array level 2 in structure "inp" dcl 1-10 in procedure "bd" obj_idx 000250 automatic fixed bin(17,0) dcl 50 set ref 454* 455 467 468 470 470 470 470 478 479 480 482 482 485* 500* 502 503 505 506 507 508 509 511 511 514 516 option based bit(18) array level 3 packed unaligned dcl 1-10 set ref 503* options 47 based structure level 2 dcl 1-10 path 50 based char(168) array level 3 packed unaligned dcl 1-10 set ref 307* 309* 316* 318* 323* 341* 345* 409* 424* 431* 431* 457* 470* 470* ptr 174 based pointer array level 3 dcl 1-10 set ref 304* 331* 334 349* 397 405* 561 562 563* real_dname 000251 automatic char(168) unaligned dcl 51 set ref 349* 354 355* 359 real_ename 000323 automatic char(32) unaligned dcl 52 set ref 349* 354 355* 359 real_path 122 based char(168) array level 3 packed unaligned dcl 1-10 set ref 359* release_temp_segment_ 000044 constant entry external dcl 86 ref 568 ret_str 000356 automatic char(14) unaligned dcl 581 set ref 587* 588* 589* 590* 591* 593 reverse builtin function dcl 63 ref 417 417 rtrim builtin function dcl 63 ref 354 354 359 359 363 417 search builtin function dcl 63 ref 268 standalone_seg 177 based bit(1) array level 3 packed unaligned dcl 1-10 set ref 361* 395 444 462 488 518 standalone_segment 000333 automatic bit(1) initial dcl 53 set ref 53* 230* 248* 307 316 361 372* substr builtin function dcl 63 set ref 363 417 587* 587 588* 589* 589 590* 591* 591 tempp 000102 automatic pointer dcl 557 set ref 562* 564* time_mod based fixed bin(71,0) array level 3 dcl 1-10 set ref 470 470* 470* 478* 507* time_modified 14 000216 automatic fixed bin(71,0) level 2 dcl 45 set ref 400* 442 470 470* 470* 478 507 time_up based fixed bin(71,0) array level 3 dcl 1-10 set ref 479* 508* time_updated 16 000216 automatic fixed bin(71,0) level 2 dcl 45 set ref 400* 441 479 508 to_be_ignored based bit(1) array level 3 packed unaligned dcl 1-10 set ref 482* 511* translator_info_$get_source_info 000046 constant entry external dcl 87 ref 349 uid 210 based bit(36) array level 3 dcl 1-10 set ref 349* update_idx 000334 automatic fixed bin(17,0) dcl 54 set ref 136* 198 203* 209 213* 367 384 version 000216 automatic fixed bin(17,0) level 2 in structure "comp_info" dcl 45 in procedure "bd" set ref 390* version based char(4) level 2 in structure "inp" dcl 1-10 in procedure "bd" set ref 130* zeroseg_seen 47(06) based bit(1) level 3 packed unaligned dcl 1-10 set ref 485* 514* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. archive_component_info_ptr automatic pointer dcl 2-4 p automatic pointer dcl 47 NAMES DECLARED BY EXPLICIT CONTEXT. BAD_ARCHIVE_PATH 002407 constant label dcl 312 ref 320 BAD_SEGMENT 002677 constant label dcl 341 ref 351 CLEAN_UP 004474 constant entry internal dcl 552 ref 117 149 DATE_TIME 004576 constant entry internal dcl 577 ref 470 470 470 470 GET_NEXT_ARCHIVE 004345 constant label dcl 521 ref 413 444 462 488 GET_NEXT_OBJECT 003353 constant label dcl 395 ref 446 463 489 518 IGNORE_BINDFILE 003671 constant label dcl 444 ref 419 428 MAIN_RETURN 001041 constant label dcl 146 ref 195 200 227 237 245 254 260 295 313 342 356 381 386 410 529 537 548 MISSING_ARG 001506 constant label dcl 236 ref 220 MULTIPLE_UPDATES 001273 constant label dcl 199 ref 209 NO_PRIMARY_ARCHIVE 001234 constant label dcl 194 ref 207 SKIP_ARCHIVE 003224 constant label dcl 370 ref 326 338 bd 000600 constant entry external dcl 11 bind 000620 constant entry external dcl 11 oldbind 000610 constant entry external dcl 11 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 5340 5422 5045 5350 Length 5706 5045 62 250 273 2 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME bd 408 external procedure is an external procedure. on unit on line 117 64 on unit CLEAN_UP 90 internal procedure is called by several nonquick procedures. DATE_TIME internal procedure shares stack frame of external procedure bd. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 binder_invoked bd STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME CLEAN_UP 000100 idx CLEAN_UP 000102 tempp CLEAN_UP bd 000100 access_mode bd 000101 archive_dname bd 000153 archive_ename bd 000163 archive_idx bd 000164 argno bd 000165 nargs bd 000166 argp bd 000170 argl bd 000171 bindfile_flag bd 000172 bindfile_to_use bd 000202 code bd 000203 component_name bd 000214 comp_ptr bd 000216 comp_info bd 000240 ctl_arg bd 000244 inpp bd 000246 error_sw bd 000247 ignore_not_found bd 000250 obj_idx bd 000251 real_dname bd 000323 real_ename bd 000333 standalone_segment bd 000334 update_idx bd 000344 NOBJ bd 000345 NTOTAL bd 000356 ret_str DATE_TIME 000362 date_str DATE_TIME THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as r_ne_as alloc_cs cat_realloc_cs call_ext_out_desc call_ext_out call_int_this call_int_other return enable shorten_stack ext_entry int_entry reverse_cs set_cs_eis index_cs_eis THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. absolute_pathname_ absolute_pathname_$add_suffix archive_$next_component_info bind_ com_err_ cu_$arg_count cu_$arg_ptr date_time_ expand_pathname_$add_suffix expand_pathname_$component get_temp_segment_ hcs_$terminate_noname initiate_file_ release_temp_segment_ translator_info_$get_source_info THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$archive_pathname error_table_$badopt error_table_$noarg error_table_$noentry error_table_$pathlong CONSTANTS 004636 aa 000004000000 004637 aa 000000000000 004640 aa 600000000041 004641 aa 000232000000 004642 aa 600000000041 004643 aa 000374000000 004644 aa 000 000 000 000 004645 aa 000 000 000 000 004646 aa 000 000 000 000 004647 aa 000 000 000 000 004650 aa 000 000 000 000 004651 aa 000 000 000 000 004652 aa 000 000 000 000 004653 aa 000 000 000 000 004654 aa 000 000 000 000 004655 aa 000 000 000 000 004656 aa 000 000 000 000 004657 aa 000 000 000 000 004660 aa 000 000 000 000 004661 aa 000 000 000 000 004662 aa 000 000 000 000 004663 aa 777 000 777 000 ÿÿ 004664 aa 000 000 000 000 004665 aa 000 000 000 000 004666 aa 000 000 000 000 004667 aa 000 000 000 000 004670 aa 000 000 000 000 004671 aa 000 000 000 000 004672 aa 000 000 000 000 004673 aa 000 000 000 000 004674 aa 000 000 000 000 004675 aa 000 000 000 000 004676 aa 000 000 000 000 004677 aa 000 000 000 000 004700 aa 000 000 000 000 004701 aa 000 000 000 000 004702 aa 000 000 000 000 004703 aa 000 000 000 000 004704 aa 000 000 000 000 004705 aa 000 000 000 000 004706 aa 000 000 000 000 004707 aa 000 000 000 000 004710 aa 000 000 000 000 004711 aa 000 000 000 000 004712 aa 000 000 000 000 004713 aa 000 000 000 000 004714 aa 000 000 000 000 004715 aa 000 000 000 000 004716 aa 000 000 000 000 004717 aa 000 000 000 000 004720 aa 000 000 000 000 004721 aa 000 000 000 000 004722 aa 000 000 000 000 004723 aa 000 000 000 000 004724 aa 000 000 000 000 004725 aa 000 000 000 000 004726 aa 000 000 000 000 004727 aa 000 000 000 000 004730 aa 000 000 000 000 004731 aa 000 000 000 000 004732 aa 000 000 000 000 004733 aa 000 000 000 000 004734 aa 000 000 000 000 004735 aa 000 000 000 000 004736 aa 000 000 000 000 004737 aa 000 000 000 000 004740 aa 000 000 000 000 004741 aa 000 000 000 000 004742 aa 000 000 000 000 004743 aa 000 000 000 000 004744 aa 000 000 000 000 004745 aa 000 000 000 000 004746 aa 000 000 000 000 004747 aa 000 000 000 000 004750 aa 000 000 000 000 004751 aa 000 000 000 000 004752 aa 000 000 000 000 004753 aa 000 000 000 000 004754 aa 000 000 000 000 004755 aa 000 000 000 000 004756 aa 000 000 000 000 004757 aa 000 000 000 000 004760 aa 000 000 000 000 004761 aa 000 000 000 000 004762 aa 000 000 000 000 004763 aa 000 000 000 000 004764 aa 000 000 000 000 004765 aa 000 000 000 000 004766 aa 000 000 000 000 004767 aa 000 000 000 000 004770 aa 000 000 000 000 004771 aa 000 000 000 000 004772 aa 000 000 000 000 004773 aa 000 000 000 000 004774 aa 000 000 000 000 004775 aa 000 000 000 000 004776 aa 000 000 000 000 004777 aa 000 000 000 000 005000 aa 000 000 000 000 005001 aa 000 000 000 000 005002 aa 000 000 000 000 005003 aa 000 000 000 000 005004 aa 000 000 000 000 005005 aa 000 000 000 000 005006 aa 000 000 000 000 005007 aa 000 000 000 000 005010 aa 000 000 000 000 005011 aa 000 000 000 000 005012 aa 000 000 000 000 005013 aa 000 000 000 000 005014 aa 000 000 000 000 005015 aa 000 000 000 000 005016 aa 000 000 000 000 005017 aa 000 000 000 000 005020 aa 000 000 000 000 005021 aa 000 000 000 000 005022 aa 000 000 000 000 005023 aa 000 000 000 000 005024 aa 000 000 000 000 005025 aa 000 000 000 000 005026 aa 000 000 000 000 005027 aa 000 000 000 000 005030 aa 000 000 000 000 005031 aa 000 000 000 000 005032 aa 000 000 000 000 005033 aa 000 000 000 000 005034 aa 000 000 000 000 005035 aa 000 000 000 000 005036 aa 000 000 000 000 005037 aa 000 000 000 000 005040 aa 000 000 000 000 005041 aa 000 000 000 000 005042 aa 000 000 000 000 005043 aa 000 000 000 000 000000 aa 102 111 056 062 BI.2 000001 aa 142 151 156 144 bind 000002 aa 040 040 040 040 000003 aa 040 040 040 040 000004 aa 040 040 040 040 000005 aa 040 040 040 040 000006 aa 040 040 040 040 000007 aa 040 040 040 040 000010 aa 040 040 040 040 000012 aa 141 162 143 150 arch 000013 aa 151 166 145 000 ive 000014 aa 526000000030 000015 aa 524000000076 000016 aa 524000000016 000017 aa 524000000031 000020 aa 524000000053 000021 aa 524000000015 000022 aa 524000000104 000023 aa 524000000115 005044 aa 076 000 000 000 > 000024 aa 514000000044 000025 aa 410000000107 000026 aa 524000000025 000027 aa 404000000030 000030 aa 516000000003 000031 aa 524000000005 000032 aa 526000000007 000033 aa 526000000250 000034 aa 524000000002 000035 aa 524000000035 000036 aa 514000000001 000037 aa 524000000101 000040 aa 524000000045 000041 aa 055 142 144 146 -bdf 000042 aa 524000000041 000043 aa 055 141 143 000 -ac 000044 aa 530000000012 000045 aa 524000000054 000046 aa 055 163 155 000 -sm 000047 aa 055 146 165 144 -fud 000050 aa 524000000100 000051 aa 526000000000 000052 aa 524000000056 000053 aa 055 165 144 000 -ud 000054 aa 055 146 143 157 -fco 000055 aa 055 142 146 000 -bf 000056 aa 055 154 163 000 -ls 000057 aa 055 155 141 160 -map 000060 aa 055 144 142 000 -db 000061 aa 524000000072 000062 aa 524000000071 000063 aa 404000000043 000064 aa 464000000000 000065 aa 524000000066 000066 aa 524000000074 000067 aa 524000000006 000070 aa 526000000040 000071 aa 404000000005 000072 aa 526000000016 000074 aa 144 156 151 142 dnib 000075 aa 056 000 000 000 . 000076 aa 136 141 076 136 ^a>^ 000077 aa 141 000 000 000 a 000100 aa 142 151 156 144 bind 000101 aa 137 000 000 000 _ 000102 aa 056 142 151 156 .bin 000103 aa 144 000 000 000 d 000104 aa 055 141 162 143 -arc 000105 aa 150 151 166 145 hive 000106 aa 055 163 145 147 -seg 000107 aa 155 145 156 164 ment 000110 aa 055 165 160 144 -upd 000111 aa 141 164 145 000 ate 000112 aa 055 142 162 151 -bri 000113 aa 145 146 000 000 ef 000114 aa 055 154 151 163 -lis 000115 aa 164 000 000 000 t 000116 aa 055 144 145 142 -deb 000117 aa 165 147 000 000 ug 000120 aa 077777000043 000121 aa 000001000000 000122 aa 136 141 136 057 ^a^/ 000123 aa 136 141 000 000 ^a 000124 aa 143 154 145 141 clea 000125 aa 156 165 160 000 nup 000126 aa 055 142 151 156 -bin 000127 aa 144 146 151 154 dfil 000130 aa 145 000 000 000 e 000131 aa 055 146 157 162 -for 000132 aa 143 145 137 157 ce_o 000133 aa 162 144 145 162 rder 000134 aa 123 145 141 162 Sear 000135 aa 143 150 151 156 chin 000136 aa 147 040 136 141 g ^a 000137 aa 056 000 000 000 . 000140 aa 055 146 157 162 -for 000141 aa 143 145 137 165 ce_u 000142 aa 160 144 141 164 pdat 000143 aa 145 000 000 000 e 000144 aa 127 141 162 156 Warn 000145 aa 151 156 147 072 ing: 000146 aa 040 136 141 040 ^a 000147 aa 151 163 040 145 is e 000150 aa 155 160 164 171 mpty 000151 aa 056 000 000 000 . 000152 aa 104 165 160 154 Dupl 000153 aa 151 143 141 164 icat 000154 aa 145 040 157 142 e ob 000155 aa 152 145 143 164 ject 000156 aa 040 136 141 040 ^a 000157 aa 151 156 040 136 in ^ 000160 aa 141 000 000 000 a 000161 aa 102 151 156 144 Bind 000162 aa 146 151 154 145 file 000163 aa 040 156 141 155 nam 000164 aa 145 040 151 163 e is 000165 aa 040 164 157 157 too 000166 aa 040 154 157 156 lon 000167 aa 147 056 040 136 g. ^ 000170 aa 141 000 000 000 a 000171 aa 136 141 040 155 ^a m 000172 aa 165 163 164 040 ust 000173 aa 142 145 040 146 be f 000174 aa 157 154 154 157 ollo 000175 aa 167 145 144 040 wed 000176 aa 142 171 040 141 by a 000177 aa 040 160 141 164 pat 000200 aa 150 156 141 155 hnam 000201 aa 145 000 000 000 e 000202 aa 136 141 040 155 ^a m 000203 aa 165 163 164 040 ust 000204 aa 142 145 040 146 be f 000205 aa 157 154 154 157 ollo 000206 aa 167 145 144 040 wed 000207 aa 142 171 040 141 by a 000210 aa 156 040 145 156 n en 000211 aa 164 162 171 040 try 000212 aa 156 141 155 145 name 000213 aa 056 000 000 000 . 000214 aa 127 141 162 156 Warn 000215 aa 151 156 147 072 ing: 000216 aa 040 136 141 040 ^a 000217 aa 157 146 040 136 of ^ 000220 aa 141 136 057 136 a^/^ 000221 aa 062 170 162 145 2xre 000222 aa 160 154 141 143 plac 000223 aa 145 144 040 142 ed b 000224 aa 171 072 040 136 y: ^ 000225 aa 141 040 157 146 a of 000226 aa 040 136 141 000 ^a 000227 aa 127 141 162 156 Warn 000230 aa 151 156 147 072 ing: 000231 aa 040 115 165 154 Mul 000232 aa 164 151 160 154 tipl 000233 aa 145 040 142 151 e bi 000234 aa 156 144 146 151 ndfi 000235 aa 154 145 040 136 le ^ 000236 aa 141 040 151 156 a in 000237 aa 040 136 141 040 ^a 000240 aa 151 147 156 157 igno 000241 aa 162 145 144 056 red. 000242 aa 115 165 154 164 Mult 000243 aa 151 160 154 145 iple 000244 aa 040 055 142 151 -bi 000245 aa 156 144 146 151 ndfi 000246 aa 154 145 040 143 le c 000247 aa 157 156 164 162 ontr 000250 aa 157 154 040 141 ol a 000251 aa 162 147 163 040 rgs 000252 aa 156 157 164 040 not 000253 aa 141 154 154 157 allo 000254 aa 167 145 144 056 wed. 000255 aa 136 141 040 136 ^a ^ 000256 aa 141 136 057 040 a^/ 000257 aa 136 141 040 155 ^a m 000260 aa 165 163 164 040 ust 000261 aa 142 145 040 146 be f 000262 aa 157 154 154 157 ollo 000263 aa 167 145 144 040 wed 000264 aa 142 171 040 141 by a 000265 aa 040 160 141 164 pat 000266 aa 150 156 141 155 hnam 000267 aa 145 056 136 057 e.^/ 000270 aa 136 141 040 163 ^a s 000271 aa 160 145 143 151 peci 000272 aa 146 151 145 144 fied 000273 aa 040 142 145 146 bef 000274 aa 157 162 145 040 ore 000275 aa 141 156 171 040 any 000276 aa 160 162 151 155 prim 000277 aa 141 162 171 040 ary 000300 aa 141 162 143 150 arch 000301 aa 151 166 145 040 ive 000302 aa 156 141 155 145 name 000303 aa 163 056 000 000 s. 000304 aa 163 165 163 160 susp 000305 aa 145 156 144 145 ende 000306 aa 144 056 040 125 d. U 000307 aa 163 145 040 164 se t 000310 aa 150 145 040 042 he " 000311 aa 162 145 154 145 rele 000312 aa 141 163 145 042 ase" 000313 aa 040 157 162 040 or 000314 aa 042 163 164 141 "sta 000315 aa 162 164 042 040 rt" 000316 aa 143 157 155 155 comm 000317 aa 141 156 144 040 and 000320 aa 146 151 162 163 firs 000321 aa 164 056 000 000 t. 000322 aa 127 141 162 156 Warn 000323 aa 151 156 147 072 ing: 000324 aa 040 116 157 040 No 000325 aa 142 151 156 144 bind 000326 aa 146 151 154 145 file 000327 aa 040 167 141 163 was 000330 aa 040 146 157 165 fou 000331 aa 156 144 040 151 nd i 000332 aa 156 040 164 150 n th 000333 aa 145 040 151 156 e in 000334 aa 160 165 164 040 put 000335 aa 141 162 143 150 arch 000336 aa 151 166 145 136 ive^ 000337 aa 133 163 136 135 [s^] 000340 aa 056 000 000 000 . 000341 aa 106 141 164 141 Fata 000342 aa 154 040 145 162 l er 000343 aa 162 157 162 163 rors 000344 aa 040 150 141 166 hav 000345 aa 145 040 157 143 e oc 000346 aa 143 165 162 162 curr 000347 aa 145 144 073 040 ed; 000350 aa 142 151 156 144 bind 000351 aa 151 156 147 040 ing 000352 aa 167 151 154 154 will 000353 aa 040 156 157 164 not 000354 aa 040 142 145 040 be 000355 aa 141 164 164 145 atte 000356 aa 155 160 164 145 mpte 000357 aa 144 056 000 000 d. 000360 aa 103 157 165 154 Coul 000361 aa 144 040 156 157 d no 000362 aa 164 040 157 142 t ob 000363 aa 164 141 151 156 tain 000364 aa 040 164 145 155 tem 000365 aa 160 157 162 141 pora 000366 aa 162 171 040 163 ry s 000367 aa 145 147 155 145 egme 000370 aa 156 164 056 040 nt. 000371 aa 122 145 160 157 Repo 000372 aa 162 164 040 164 rt t 000373 aa 157 040 155 141 o ma 000374 aa 151 156 164 141 inta 000375 aa 151 156 145 162 iner 000376 aa 056 000 000 000 . 000377 aa 124 150 145 040 The 000400 aa 142 151 156 144 bind 000401 aa 145 162 040 155 er m 000402 aa 141 171 040 156 ay n 000403 aa 157 164 040 142 ot b 000404 aa 145 040 151 156 e in 000405 aa 166 157 153 145 voke 000406 aa 144 040 167 150 d wh 000407 aa 151 154 145 040 ile 000410 aa 141 040 160 162 a pr 000411 aa 145 166 151 157 evio 000412 aa 165 163 040 151 us i 000413 aa 156 166 157 143 nvoc 000414 aa 141 164 151 157 atio 000415 aa 156 040 151 163 n is 000416 aa 123 160 145 143 Spec 000417 aa 151 146 151 145 ifie 000420 aa 144 040 142 151 d bi 000421 aa 156 144 146 151 ndfi 000422 aa 154 145 040 136 le ^ 000423 aa 141 040 167 141 a wa 000424 aa 163 040 156 157 s no 000425 aa 164 040 146 157 t fo 000426 aa 165 156 144 040 und 000427 aa 151 156 040 164 in t 000430 aa 150 145 040 151 he i 000431 aa 156 160 165 164 nput 000432 aa 040 141 162 143 arc 000433 aa 150 151 166 145 hive 000434 aa 136 133 163 136 ^[s^ 000435 aa 135 056 000 000 ]. 000436 aa 115 165 154 164 Mult 000437 aa 151 160 154 145 iple 000440 aa 040 055 165 160 -up 000441 aa 144 141 164 145 date 000442 aa 040 157 162 040 or 000443 aa 055 146 157 162 -for 000444 aa 143 145 137 165 ce_u 000445 aa 160 144 141 164 pdat 000446 aa 145 040 143 157 e co 000447 aa 156 164 162 157 ntro 000450 aa 154 040 141 162 l ar 000451 aa 147 165 155 145 gume 000452 aa 156 164 163 040 nts 000453 aa 156 157 164 040 not 000454 aa 141 154 154 157 allo 000455 aa 167 145 144 056 wed. 000456 aa 116 157 164 145 Note 000457 aa 072 040 136 141 : ^a 000460 aa 040 151 156 040 in 000461 aa 136 141 040 050 ^a ( 000462 aa 155 157 144 151 modi 000463 aa 146 151 145 144 fied 000464 aa 040 136 141 051 ^a) 000465 aa 136 057 136 063 ^/^3 000466 aa 170 162 145 160 xrep 000467 aa 154 141 143 145 lace 000470 aa 144 040 142 171 d by 000471 aa 040 145 141 162 ear 000472 aa 154 151 145 162 lier 000473 aa 040 050 136 141 (^a 000474 aa 051 040 143 157 ) co 000475 aa 160 171 040 151 py i 000476 aa 156 040 136 141 n ^a 000477 aa 055 165 160 144 -upd 000500 aa 141 164 145 040 ate 000501 aa 167 141 163 040 was 000502 aa 163 160 145 143 spec 000503 aa 151 146 151 145 ifie 000504 aa 144 054 040 142 d, b 000505 aa 165 164 040 156 ut n 000506 aa 157 164 040 146 ot f 000507 aa 157 154 154 157 ollo 000510 aa 167 145 144 040 wed 000511 aa 142 171 040 141 by a 000512 aa 156 171 040 165 ny u 000513 aa 160 144 141 164 pdat 000514 aa 145 040 141 162 e ar 000515 aa 143 150 151 166 chiv 000516 aa 145 040 156 141 e na 000517 aa 155 145 163 056 mes. 000520 aa 136 141 040 155 ^a m 000521 aa 165 163 164 040 ust 000522 aa 142 145 040 146 be f 000523 aa 157 154 154 157 ollo 000524 aa 167 145 144 040 wed 000525 aa 142 171 040 141 by a 000526 aa 156 040 145 156 n en 000527 aa 164 162 171 040 try 000530 aa 156 141 155 145 name 000531 aa 040 136 133 156 ^[n 000532 aa 157 164 136 073 ot^; 000533 aa 156 157 164 040 not 000534 aa 141 040 160 141 a pa 000535 aa 164 150 156 141 thna 000536 aa 155 145 056 136 me.^ 000537 aa 135 040 136 141 ] ^a 000540 aa 056 000 000 000 . 000541 aa 136 057 125 163 ^/Us 000542 aa 141 147 145 072 age: 000543 aa 136 055 136 141 ^-^a 000544 aa 040 141 162 143 arc 000545 aa 150 151 166 145 hive 000546 aa 137 160 141 164 _pat 000547 aa 150 173 163 175 h{s} 000550 aa 040 173 055 165 {-u 000551 aa 160 144 141 164 pdat 000552 aa 145 040 165 160 e up 000553 aa 144 141 164 145 date 000554 aa 137 141 162 143 _arc 000555 aa 150 151 166 145 hive 000556 aa 137 160 141 164 _pat 000557 aa 150 173 163 175 h{s} 000560 aa 175 040 173 055 } {- 000561 aa 143 157 156 164 cont 000562 aa 162 157 154 137 rol_ 000563 aa 141 162 147 163 args 000564 aa 175 000 000 000 } BEGIN PROCEDURE bd PROLOGUE SEQUENCE 000565 aa 6 00370 4401 00 sxl0 pr6|248 STATEMENT 1 ON LINE 40 000566 aa 6 00171 4501 00 stz pr6|121 bindfile_flag STATEMENT 1 ON LINE 43 000567 aa 040 100 100 400 mlr (),(pr),fill(040) 000570 aa 000000 00 0000 desc9a 0,0 000571 aa 6 00203 00 0040 desc9a pr6|131,32 component_name STATEMENT 1 ON LINE 53 000572 aa 6 00333 4501 00 stz pr6|219 standalone_segment STATEMENT 1 ON LINE 80 OF FILE 1 000573 aa 6 00344 4501 00 stz pr6|228 NOBJ 000574 aa 6 00345 4501 00 stz pr6|229 NTOTAL 000575 aa 6 00370 7201 00 lxl0 pr6|248 000576 aa 000000 7100 10 tra 0,0 MAIN SEQUENCE ENTRY TO bd STATEMENT 1 ON LINE 11 bind: oldbind: bd: procedure (); 000577 da 000243200000 000600 aa 000640 6270 00 eax7 416 000601 aa 7 00034 3521 20 epp2 pr7|28,* 000602 aa 2 01045 2721 00 tsp2 pr2|549 ext_entry 000603 aa 000000000000 000604 aa 000000000000 000605 aa 777760 7000 04 tsx0 -16,ic 000565 000606 aa 000020 7100 04 tra 16,ic 000626 ENTRY TO oldbind STATEMENT 1 ON LINE 11 bind: oldbind: bd: procedure (); 000607 da 000250200000 000610 aa 000640 6270 00 eax7 416 000611 aa 7 00034 3521 20 epp2 pr7|28,* 000612 aa 2 01045 2721 00 tsp2 pr2|549 ext_entry 000613 aa 000000000000 000614 aa 000000000000 000615 aa 777750 7000 04 tsx0 -24,ic 000565 000616 aa 000010 7100 04 tra 8,ic 000626 ENTRY TO bind STATEMENT 1 ON LINE 11 bind: oldbind: bd: procedure (); 000617 da 000253200000 000620 aa 000640 6270 00 eax7 416 000621 aa 7 00034 3521 20 epp2 pr7|28,* 000622 aa 2 01045 2721 00 tsp2 pr2|549 ext_entry 000623 aa 000000000000 000624 aa 000000000000 000625 aa 777740 7000 04 tsx0 -32,ic 000565 STATEMENT 1 ON LINE 108 if binder_invoked then do; 000626 aa 6 00044 3701 20 epp4 pr6|36,* 000627 ia 4 00010 2351 00 lda pr4|8 binder_invoked 000630 aa 000043 6000 04 tze 35,ic 000673 STATEMENT 1 ON LINE 109 call com_err_ (0, WHOAMI, "^a^/^a", "The binder may not be invoked while a previous invocation is", "suspended. Use the ""release"" or ""start"" command first."); 000631 aa 6 00371 4501 00 stz pr6|249 000632 aa 777270 2370 04 ldaq -328,ic 000122 = 136141136057 136141000000 000633 aa 6 00372 7571 00 staq pr6|250 000634 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000635 aa 777543 00 0074 desc9a -157,60 000377 = 124150145040 000636 aa 6 00374 00 0074 desc9a pr6|252,60 000637 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000640 aa 777445 00 0070 desc9a -219,56 000304 = 163165163160 000641 aa 6 00414 00 0070 desc9a pr6|268,56 000642 aa 6 00371 3521 00 epp2 pr6|249 000643 aa 6 00434 2521 00 spri2 pr6|284 000644 aa 777135 3520 04 epp2 -419,ic 000001 = 142151156144 000645 aa 6 00436 2521 00 spri2 pr6|286 000646 aa 6 00372 3521 00 epp2 pr6|250 000647 aa 6 00440 2521 00 spri2 pr6|288 000650 aa 6 00374 3521 00 epp2 pr6|252 000651 aa 6 00442 2521 00 spri2 pr6|290 000652 aa 6 00414 3521 00 epp2 pr6|268 000653 aa 6 00444 2521 00 spri2 pr6|292 000654 aa 777215 3520 04 epp2 -371,ic 000071 = 404000000005 000655 aa 6 00446 2521 00 spri2 pr6|294 000656 aa 777212 3520 04 epp2 -374,ic 000070 = 526000000040 000657 aa 6 00450 2521 00 spri2 pr6|296 000660 aa 777207 3520 04 epp2 -377,ic 000067 = 524000000006 000661 aa 6 00452 2521 00 spri2 pr6|298 000662 aa 777204 3520 04 epp2 -380,ic 000066 = 524000000074 000663 aa 6 00454 2521 00 spri2 pr6|300 000664 aa 777201 3520 04 epp2 -383,ic 000065 = 524000000066 000665 aa 6 00456 2521 00 spri2 pr6|302 000666 aa 6 00432 6211 00 eax1 pr6|282 000667 aa 024000 4310 07 fld 10240,dl 000670 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 000671 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 112 return; 000672 aa 0 00631 7101 00 tra pr0|409 return STATEMENT 1 ON LINE 113 end; STATEMENT 1 ON LINE 116 inpp = null; 000673 aa 777225 2370 04 ldaq -363,ic 000120 = 077777000043 000001000000 000674 aa 6 00244 7571 00 staq pr6|164 inpp STATEMENT 1 ON LINE 117 on cleanup call CLEAN_UP (); 000675 aa 000007 7260 07 lxl6 7,dl 000676 aa 777226 3520 04 epp2 -362,ic 000124 = 143154145141 000677 aa 0 00717 7001 00 tsx0 pr0|463 enable 000700 aa 000004 7100 04 tra 4,ic 000704 000701 aa 000336000000 000702 aa 000015 7100 04 tra 13,ic 000717 BEGIN CONDITION cleanup.1 ENTRY TO cleanup.1 STATEMENT 1 ON LINE 117 on cleanup call CLEAN_UP (); 000703 da 000261200000 000704 aa 000100 6270 00 eax7 64 000705 aa 7 00034 3521 20 epp2 pr7|28,* 000706 aa 2 01047 2721 00 tsp2 pr2|551 int_entry 000707 aa 000000000000 000710 aa 000000000000 000711 aa 000001 7270 07 lxl7 1,dl 000712 aa 6 00056 6211 00 eax1 pr6|46 000713 aa 000000 4310 07 fld 0,dl 000714 aa 003560 3520 04 epp2 1904,ic 004474 = 000140627000 000715 aa 0 00627 7001 00 tsx0 pr0|407 call_int_other 000716 aa 0 00631 7101 00 tra pr0|409 return END CONDITION cleanup.1 STATEMENT 1 ON LINE 120 binder_invoked = "1"b; 000717 aa 400000 2350 03 lda 131072,du 000720 aa 6 00044 3701 20 epp4 pr6|36,* 000721 ia 4 00010 7551 00 sta pr4|8 binder_invoked STATEMENT 1 ON LINE 122 call get_temp_segment_ (WHOAMI, inpp, code); 000722 aa 777057 3520 04 epp2 -465,ic 000001 = 142151156144 000723 aa 6 00416 2521 00 spri2 pr6|270 000724 aa 6 00244 3521 00 epp2 pr6|164 inpp 000725 aa 6 00420 2521 00 spri2 pr6|272 000726 aa 6 00202 3521 00 epp2 pr6|130 code 000727 aa 6 00422 2521 00 spri2 pr6|274 000730 aa 777140 3520 04 epp2 -416,ic 000070 = 526000000040 000731 aa 6 00424 2521 00 spri2 pr6|276 000732 aa 777132 3520 04 epp2 -422,ic 000064 = 464000000000 000733 aa 6 00426 2521 00 spri2 pr6|278 000734 aa 777127 3520 04 epp2 -425,ic 000063 = 404000000043 000735 aa 6 00430 2521 00 spri2 pr6|280 000736 aa 6 00414 6211 00 eax1 pr6|268 000737 aa 014000 4310 07 fld 6144,dl 000740 la 4 00036 3521 20 epp2 pr4|30,* get_temp_segment_ 000741 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 123 if code ^= 0 then do; 000742 aa 6 00202 2361 00 ldq pr6|130 code 000743 aa 000026 6000 04 tze 22,ic 000771 STATEMENT 1 ON LINE 124 call com_err_ (code, WHOAMI, "Could not obtain temporary segment. Report to maintainer."); 000744 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000745 aa 777414 00 0074 desc9a -244,60 000360 = 103157165154 000746 aa 6 00374 00 0074 desc9a pr6|252,60 000747 aa 6 00202 3521 00 epp2 pr6|130 code 000750 aa 6 00416 2521 00 spri2 pr6|270 000751 aa 777030 3520 04 epp2 -488,ic 000001 = 142151156144 000752 aa 6 00420 2521 00 spri2 pr6|272 000753 aa 6 00374 3521 00 epp2 pr6|252 000754 aa 6 00422 2521 00 spri2 pr6|274 000755 aa 777106 3520 04 epp2 -442,ic 000063 = 404000000043 000756 aa 6 00424 2521 00 spri2 pr6|276 000757 aa 777111 3520 04 epp2 -439,ic 000070 = 526000000040 000760 aa 6 00426 2521 00 spri2 pr6|278 000761 aa 777101 3520 04 epp2 -447,ic 000062 = 524000000071 000762 aa 6 00430 2521 00 spri2 pr6|280 000763 aa 6 00414 6211 00 eax1 pr6|268 000764 aa 014000 4310 07 fld 6144,dl 000765 aa 6 00044 3701 20 epp4 pr6|36,* 000766 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 000767 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 125 return; 000770 aa 0 00631 7101 00 tra pr0|409 return STATEMENT 1 ON LINE 126 end; STATEMENT 1 ON LINE 128 inp.ntotal = 0; 000771 aa 6 00244 3735 20 epp7 pr6|164,* inpp 000772 aa 7 00023 4501 00 stz pr7|19 inp.ntotal STATEMENT 1 ON LINE 130 inp.version = BINDER_INPUT_VERSION_2; 000773 aa 777005 2350 04 lda -507,ic 000000 = 102111056062 000774 aa 7 00000 7551 00 sta pr7|0 inp.version STATEMENT 1 ON LINE 131 inp.caller_name = WHOAMI; 000775 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000776 aa 777004 00 0040 desc9a -508,32 000001 = 142151156144 000777 aa 7 00001 00 0040 desc9a pr7|1,32 inp.caller_name STATEMENT 1 ON LINE 133 inp.bindfilep = null (); 001000 aa 777120 2370 04 ldaq -432,ic 000120 = 077777000043 000001000000 001001 aa 7 00026 7571 00 staq pr7|22 inp.bindfilep STATEMENT 1 ON LINE 134 inp.bindfile_name = ""; 001002 aa 040 100 100 400 mlr (),(pr),fill(040) 001003 aa 000000 00 0000 desc9a 0,0 001004 aa 7 00031 00 0040 desc9a pr7|25,32 inp.bindfile_name STATEMENT 1 ON LINE 136 update_idx = 0; 001005 aa 6 00334 4501 00 stz pr6|220 update_idx STATEMENT 1 ON LINE 137 archive_idx = 0; 001006 aa 6 00163 4501 00 stz pr6|115 archive_idx STATEMENT 1 ON LINE 138 error_sw = "0"b; 001007 aa 6 00246 4501 00 stz pr6|166 error_sw STATEMENT 1 ON LINE 139 ignore_not_found = "0"b; 001010 aa 6 00247 4501 00 stz pr6|167 ignore_not_found STATEMENT 1 ON LINE 142 call cu_$arg_count (nargs, code); 001011 aa 6 00165 3521 00 epp2 pr6|117 nargs 001012 aa 6 00416 2521 00 spri2 pr6|270 001013 aa 6 00202 3521 00 epp2 pr6|130 code 001014 aa 6 00420 2521 00 spri2 pr6|272 001015 aa 6 00414 6211 00 eax1 pr6|268 001016 aa 010000 4310 07 fld 4096,dl 001017 aa 6 00044 3701 20 epp4 pr6|36,* 001020 la 4 00024 3521 20 epp2 pr4|20,* cu_$arg_count 001021 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 143 if code ^= 0 then do; 001022 aa 6 00202 2361 00 ldq pr6|130 code 001023 aa 000052 6000 04 tze 42,ic 001075 STATEMENT 1 ON LINE 144 call com_err_ (code, WHOAMI); 001024 aa 6 00202 3521 00 epp2 pr6|130 code 001025 aa 6 00416 2521 00 spri2 pr6|270 001026 aa 776753 3520 04 epp2 -533,ic 000001 = 142151156144 001027 aa 6 00420 2521 00 spri2 pr6|272 001030 aa 777033 3520 04 epp2 -485,ic 000063 = 404000000043 001031 aa 6 00422 2521 00 spri2 pr6|274 001032 aa 777036 3520 04 epp2 -482,ic 000070 = 526000000040 001033 aa 6 00424 2521 00 spri2 pr6|276 001034 aa 6 00414 6211 00 eax1 pr6|268 001035 aa 010000 4310 07 fld 4096,dl 001036 aa 6 00044 3701 20 epp4 pr6|36,* 001037 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001040 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 146 MAIN_RETURN: if error_sw then /* Make mention of the fact that nothing will happen */ call com_err_ (0, WHOAMI, "Fatal errors have occurred; binding will not be attempted."); 001041 aa 6 00246 2351 00 lda pr6|166 error_sw 001042 aa 000026 6000 04 tze 22,ic 001070 001043 aa 6 00371 4501 00 stz pr6|249 001044 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001045 aa 777275 00 0074 desc9a -323,60 000341 = 106141164141 001046 aa 6 00374 00 0074 desc9a pr6|252,60 001047 aa 6 00371 3521 00 epp2 pr6|249 001050 aa 6 00416 2521 00 spri2 pr6|270 001051 aa 776730 3520 04 epp2 -552,ic 000001 = 142151156144 001052 aa 6 00420 2521 00 spri2 pr6|272 001053 aa 6 00374 3521 00 epp2 pr6|252 001054 aa 6 00422 2521 00 spri2 pr6|274 001055 aa 777014 3520 04 epp2 -500,ic 000071 = 404000000005 001056 aa 6 00424 2521 00 spri2 pr6|276 001057 aa 777011 3520 04 epp2 -503,ic 000070 = 526000000040 001060 aa 6 00426 2521 00 spri2 pr6|278 001061 aa 777000 3520 04 epp2 -512,ic 000061 = 524000000072 001062 aa 6 00430 2521 00 spri2 pr6|280 001063 aa 6 00414 6211 00 eax1 pr6|268 001064 aa 014000 4310 07 fld 6144,dl 001065 aa 6 00044 3701 20 epp4 pr6|36,* 001066 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001067 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 149 call CLEAN_UP (); 001070 aa 6 00056 6211 00 eax1 pr6|46 001071 aa 000000 4310 07 fld 0,dl 001072 aa 003402 3520 04 epp2 1794,ic 004474 = 000140627000 001073 aa 0 00625 7001 00 tsx0 pr0|405 call_int_this STATEMENT 1 ON LINE 150 return; 001074 aa 0 00631 7101 00 tra pr0|409 return STATEMENT 1 ON LINE 151 end; STATEMENT 1 ON LINE 163 argno = 1; 001075 aa 000001 2360 07 ldq 1,dl 001076 aa 6 00164 7561 00 stq pr6|116 argno STATEMENT 1 ON LINE 164 do while (argno <= nargs); 001077 aa 000000 0110 03 nop 0,du 001100 aa 6 00164 2361 00 ldq pr6|116 argno 001101 aa 6 00165 1161 00 cmpq pr6|117 nargs 001102 aa 002147 6054 04 tpnz 1127,ic 003251 STATEMENT 1 ON LINE 165 call cu_$arg_ptr (argno, argp, argl, (0)); 001103 aa 6 00371 4501 00 stz pr6|249 001104 aa 6 00164 3521 00 epp2 pr6|116 argno 001105 aa 6 00416 2521 00 spri2 pr6|270 001106 aa 6 00166 3521 00 epp2 pr6|118 argp 001107 aa 6 00420 2521 00 spri2 pr6|272 001110 aa 6 00170 3521 00 epp2 pr6|120 argl 001111 aa 6 00422 2521 00 spri2 pr6|274 001112 aa 6 00371 3521 00 epp2 pr6|249 001113 aa 6 00424 2521 00 spri2 pr6|276 001114 aa 6 00414 6211 00 eax1 pr6|268 001115 aa 020000 4310 07 fld 8192,dl 001116 aa 6 00044 3701 20 epp4 pr6|36,* 001117 la 4 00026 3521 20 epp2 pr4|22,* cu_$arg_ptr 001120 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 167 if (arg = "-debug") | (arg = "-db") then inp.debug = "1"b; 001121 aa 6 00166 3735 20 epp7 pr6|118,* argp 001122 aa 6 00170 2351 00 lda pr6|120 argl 001123 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001124 aa 7 00000 00 0005 desc9a pr7|0,al arg 001125 aa 776773 00 0006 desc9a -517,6 000116 = 055144145142 001126 aa 000005 6000 04 tze 5,ic 001133 001127 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001130 aa 7 00000 00 0005 desc9a pr7|0,al arg 001131 aa 776731 00 0003 desc9a -551,3 000060 = 055144142000 001132 aa 000005 6010 04 tnz 5,ic 001137 001133 aa 400000 2350 03 lda 131072,du 001134 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001135 aa 5 00047 2551 00 orsa pr5|39 inp.debug 001136 aa 002066 7100 04 tra 1078,ic 003224 STATEMENT 1 ON LINE 170 else if (arg = "-map") then do; 001137 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001140 aa 7 00000 00 0005 desc9a pr7|0,al arg 001141 aa 776720 00 0004 desc9a -560,4 000057 = 055155141160 001142 aa 000007 6010 04 tnz 7,ic 001151 STATEMENT 1 ON LINE 171 inp.list_seg = "1"b; 001143 aa 200000 2350 03 lda 65536,du 001144 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001145 aa 5 00047 2551 00 orsa pr5|39 inp.list_seg STATEMENT 1 ON LINE 172 inp.map_opt = "1"b; 001146 aa 100000 2350 03 lda 32768,du 001147 aa 5 00047 2551 00 orsa pr5|39 inp.map_opt STATEMENT 1 ON LINE 173 end; 001150 aa 002054 7100 04 tra 1068,ic 003224 STATEMENT 1 ON LINE 175 else if (arg = "-list") | (arg = "-ls") then do; 001151 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001152 aa 7 00000 00 0005 desc9a pr7|0,al arg 001153 aa 776743 00 0005 desc9a -541,5 000114 = 055154151163 001154 aa 000005 6000 04 tze 5,ic 001161 001155 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001156 aa 7 00000 00 0005 desc9a pr7|0,al arg 001157 aa 776701 00 0003 desc9a -575,3 000056 = 055154163000 001160 aa 000011 6010 04 tnz 9,ic 001171 STATEMENT 1 ON LINE 176 inp.list_opt = "1"b; 001161 aa 040000 2350 03 lda 16384,du 001162 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001163 aa 5 00047 2551 00 orsa pr5|39 inp.list_opt STATEMENT 1 ON LINE 177 inp.list_seg = "1"b; 001164 aa 200000 2350 03 lda 65536,du 001165 aa 5 00047 2551 00 orsa pr5|39 inp.list_seg STATEMENT 1 ON LINE 178 inp.map_opt = "1"b; 001166 aa 100000 2350 03 lda 32768,du 001167 aa 5 00047 2551 00 orsa pr5|39 inp.map_opt STATEMENT 1 ON LINE 179 end; 001170 aa 002034 7100 04 tra 1052,ic 003224 STATEMENT 1 ON LINE 181 else if (arg = "-brief") | (arg = "-bf") then inp.brief_opt = "1"b; 001171 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001172 aa 7 00000 00 0005 desc9a pr7|0,al arg 001173 aa 776721 00 0006 desc9a -559,6 000112 = 055142162151 001174 aa 000005 6000 04 tze 5,ic 001201 001175 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001176 aa 7 00000 00 0005 desc9a pr7|0,al arg 001177 aa 776660 00 0003 desc9a -592,3 000055 = 055142146000 001200 aa 000005 6010 04 tnz 5,ic 001205 001201 aa 020000 2350 03 lda 8192,du 001202 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001203 aa 5 00047 2551 00 orsa pr5|39 inp.brief_opt 001204 aa 002020 7100 04 tra 1040,ic 003224 STATEMENT 1 ON LINE 184 else if (arg = "-force_order") | (arg = "-fco") then inp.force_order_opt = "1"b; 001205 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001206 aa 7 00000 00 0005 desc9a pr7|0,al arg 001207 aa 776724 00 0014 desc9a -556,12 000131 = 055146157162 001210 aa 000005 6000 04 tze 5,ic 001215 001211 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001212 aa 7 00000 00 0005 desc9a pr7|0,al arg 001213 aa 776643 00 0004 desc9a -605,4 000054 = 055146143157 001214 aa 000005 6010 04 tnz 5,ic 001221 001215 aa 010000 2350 03 lda 4096,du 001216 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001217 aa 5 00047 2551 00 orsa pr5|39 inp.force_order_opt 001220 aa 002004 7100 04 tra 1028,ic 003224 STATEMENT 1 ON LINE 192 else if (arg = "-update") | (arg = "-ud") then do; 001221 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001222 aa 7 00000 00 0005 desc9a pr7|0,al arg 001223 aa 776667 00 0007 desc9a -585,7 000110 = 055165160144 001224 aa 000005 6000 04 tze 5,ic 001231 001225 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001226 aa 7 00000 00 0005 desc9a pr7|0,al arg 001227 aa 776626 00 0003 desc9a -618,3 000053 = 055165144000 001230 aa 000075 6010 04 tnz 61,ic 001325 STATEMENT 1 ON LINE 193 if inp.narc = 0 then do; 001231 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001232 aa 5 00021 2361 00 ldq pr5|17 inp.narc 001233 aa 000036 6010 04 tnz 30,ic 001271 STATEMENT 1 ON LINE 194 NO_PRIMARY_ARCHIVE: call com_err_ (0, WHOAMI, "^a specified before any primary archive names.", arg); 001234 aa 6 00170 2361 00 ldq pr6|120 argl 001235 aa 526000 2760 03 orq 175104,du 001236 aa 6 00371 7561 00 stq pr6|249 001237 aa 6 00413 4501 00 stz pr6|267 001240 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001241 aa 777030 00 0060 desc9a -488,48 000270 = 136141040163 001242 aa 6 00414 00 0060 desc9a pr6|268,48 001243 aa 6 00413 3521 00 epp2 pr6|267 001244 aa 6 00434 2521 00 spri2 pr6|284 001245 aa 776534 3520 04 epp2 -676,ic 000001 = 142151156144 001246 aa 6 00436 2521 00 spri2 pr6|286 001247 aa 6 00414 3521 00 epp2 pr6|268 001250 aa 6 00440 2521 00 spri2 pr6|288 001251 aa 6 00166 3521 20 epp2 pr6|118,* arg 001252 aa 6 00442 2521 00 spri2 pr6|290 001253 aa 776616 3520 04 epp2 -626,ic 000071 = 404000000005 001254 aa 6 00444 2521 00 spri2 pr6|292 001255 aa 776613 3520 04 epp2 -629,ic 000070 = 526000000040 001256 aa 6 00446 2521 00 spri2 pr6|294 001257 aa 776573 3520 04 epp2 -645,ic 000052 = 524000000056 001260 aa 6 00450 2521 00 spri2 pr6|296 001261 aa 6 00371 3521 00 epp2 pr6|249 001262 aa 6 00452 2521 00 spri2 pr6|298 001263 aa 6 00432 6211 00 eax1 pr6|282 001264 aa 020000 4310 07 fld 8192,dl 001265 aa 6 00044 3701 20 epp4 pr6|36,* 001266 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001267 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 195 goto MAIN_RETURN; 001270 aa 777551 7100 04 tra -151,ic 001041 STATEMENT 1 ON LINE 196 end; STATEMENT 1 ON LINE 198 if update_idx > 0 then do; 001271 aa 6 00334 2361 00 ldq pr6|220 update_idx 001272 aa 000027 6044 04 tmoz 23,ic 001321 STATEMENT 1 ON LINE 199 MULTIPLE_UPDATES: call com_err_ (0, WHOAMI, "Multiple -update or -force_update control arguments not allowed."); 001273 aa 6 00371 4501 00 stz pr6|249 001274 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001275 aa 777142 00 0100 desc9a -414,64 000436 = 115165154164 001276 aa 6 00432 00 0100 desc9a pr6|282,64 001277 aa 6 00371 3521 00 epp2 pr6|249 001300 aa 6 00416 2521 00 spri2 pr6|270 001301 aa 776500 3520 04 epp2 -704,ic 000001 = 142151156144 001302 aa 6 00420 2521 00 spri2 pr6|272 001303 aa 6 00432 3521 00 epp2 pr6|282 001304 aa 6 00422 2521 00 spri2 pr6|274 001305 aa 776564 3520 04 epp2 -652,ic 000071 = 404000000005 001306 aa 6 00424 2521 00 spri2 pr6|276 001307 aa 776561 3520 04 epp2 -655,ic 000070 = 526000000040 001310 aa 6 00426 2521 00 spri2 pr6|278 001311 aa 776537 3520 04 epp2 -673,ic 000050 = 524000000100 001312 aa 6 00430 2521 00 spri2 pr6|280 001313 aa 6 00414 6211 00 eax1 pr6|268 001314 aa 014000 4310 07 fld 6144,dl 001315 aa 6 00044 3701 20 epp4 pr6|36,* 001316 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001317 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 200 goto MAIN_RETURN; 001320 aa 777521 7100 04 tra -175,ic 001041 STATEMENT 1 ON LINE 201 end; STATEMENT 1 ON LINE 203 update_idx = inp.narc + 1; 001321 aa 5 00021 2361 00 ldq pr5|17 inp.narc 001322 aa 000001 0760 07 adq 1,dl 001323 aa 6 00334 7561 00 stq pr6|220 update_idx STATEMENT 1 ON LINE 204 end; 001324 aa 001700 7100 04 tra 960,ic 003224 STATEMENT 1 ON LINE 206 else if (arg = "-force_update") | (arg = "-fud") then do; 001325 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001326 aa 7 00000 00 0005 desc9a pr7|0,al arg 001327 aa 776613 00 0015 desc9a -629,13 000140 = 055146157162 001330 aa 000005 6000 04 tze 5,ic 001335 001331 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001332 aa 7 00000 00 0005 desc9a pr7|0,al arg 001333 aa 776516 00 0004 desc9a -690,4 000047 = 055146165144 001334 aa 000014 6010 04 tnz 12,ic 001350 STATEMENT 1 ON LINE 207 if inp.narc = 0 then goto NO_PRIMARY_ARCHIVE; 001335 aa 6 00244 3715 20 epp5 pr6|164,* inpp 001336 aa 5 00021 2361 00 ldq pr5|17 inp.narc 001337 aa 777675 6000 04 tze -67,ic 001234 STATEMENT 1 ON LINE 209 if update_idx > 0 then goto MULTIPLE_UPDATES; 001340 aa 6 00334 2361 00 ldq pr6|220 update_idx 001341 aa 777732 6054 04 tpnz -38,ic 001273 STATEMENT 1 ON LINE 212 ignore_not_found = "1"b; 001342 aa 400000 2350 03 lda 131072,du 001343 aa 6 00247 7551 00 sta pr6|167 ignore_not_found STATEMENT 1 ON LINE 213 update_idx = inp.narc + 1; 001344 aa 5 00021 2361 00 ldq pr5|17 inp.narc 001345 aa 000001 0760 07 adq 1,dl 001346 aa 6 00334 7561 00 stq pr6|220 update_idx STATEMENT 1 ON LINE 214 end; 001347 aa 001655 7100 04 tra 941,ic 003224 STATEMENT 1 ON LINE 219 else if (arg = "-segment") | (arg = "-sm") then do; 001350 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001351 aa 7 00000 00 0005 desc9a pr7|0,al arg 001352 aa 776536 00 0010 desc9a -674,8 000106 = 055163145147 001353 aa 000005 6000 04 tze 5,ic 001360 001354 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001355 aa 7 00000 00 0005 desc9a pr7|0,al arg 001356 aa 776472 00 0003 desc9a -710,3 000046 = 055163155000 001357 aa 000114 6010 04 tnz 76,ic 001473 STATEMENT 1 ON LINE 220 if argno = nargs then goto MISSING_ARG; 001360 aa 6 00164 2361 00 ldq pr6|116 argno 001361 aa 6 00165 1161 00 cmpq pr6|117 nargs 001362 aa 000124 6000 04 tze 84,ic 001506 STATEMENT 1 ON LINE 222 ctl_arg = arg; 001363 aa 6 00170 2361 00 ldq pr6|120 argl 001364 aa 000012 1160 07 cmpq 10,dl 001365 aa 000002 6040 04 tmi 2,ic 001367 001366 aa 000012 2360 07 ldq 10,dl 001367 aa 6 00240 7561 00 stq pr6|160 ctl_arg 001370 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 001371 aa 7 00000 00 0006 desc9a pr7|0,ql arg 001372 aa 6 00241 00 0006 desc9a pr6|161,ql ctl_arg STATEMENT 1 ON LINE 223 call cu_$arg_ptr (argno+1, argp, argl, (0)); 001373 aa 6 00164 2361 00 ldq pr6|116 argno 001374 aa 000001 0760 07 adq 1,dl 001375 aa 6 00371 7561 00 stq pr6|249 001376 aa 6 00413 4501 00 stz pr6|267 001377 aa 6 00371 3521 00 epp2 pr6|249 001400 aa 6 00416 2521 00 spri2 pr6|270 001401 aa 6 00166 3521 00 epp2 pr6|118 argp 001402 aa 6 00420 2521 00 spri2 pr6|272 001403 aa 6 00170 3521 00 epp2 pr6|120 argl 001404 aa 6 00422 2521 00 spri2 pr6|274 001405 aa 6 00413 3521 00 epp2 pr6|267 001406 aa 6 00424 2521 00 spri2 pr6|276 001407 aa 6 00414 6211 00 eax1 pr6|268 001410 aa 020000 4310 07 fld 8192,dl 001411 aa 6 00044 3701 20 epp4 pr6|36,* 001412 la 4 00026 3521 20 epp2 pr4|22,* cu_$arg_ptr 001413 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 224 if char (arg, 1) = "-" then do; 001414 aa 6 00413 4501 00 stz pr6|267 001415 aa 6 00166 3735 20 epp7 pr6|118,* argp 001416 aa 6 00170 2351 00 lda pr6|120 argl 001417 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 001420 aa 7 00000 00 0005 desc9a pr7|0,al arg 001421 aa 6 00413 00 0001 desc9a pr6|267,1 001422 aa 6 00413 2351 00 lda pr6|267 001423 aa 055000 1150 03 cmpa 23040,du 001424 aa 000044 6010 04 tnz 36,ic 001470 STATEMENT 1 ON LINE 225 call com_err_ (error_table_$badopt, WHOAMI, "^a ^a^/ ^a must be followed by a pathname.^/", ctl_arg, arg, ctl_arg); 001425 aa 6 00170 2361 00 ldq pr6|120 argl 001426 aa 526000 2760 03 orq 175104,du 001427 aa 6 00413 7561 00 stq pr6|267 001430 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001431 aa 776625 00 0054 desc9a -619,44 000255 = 136141040136 001432 aa 6 00414 00 0054 desc9a pr6|268,44 001433 aa 6 00044 3701 20 epp4 pr6|36,* 001434 la 4 00052 3521 20 epp2 pr4|42,* error_table_$badopt 001435 aa 6 00462 2521 00 spri2 pr6|306 001436 aa 776343 3520 04 epp2 -797,ic 000001 = 142151156144 001437 aa 6 00464 2521 00 spri2 pr6|308 001440 aa 6 00414 3521 00 epp2 pr6|268 001441 aa 6 00466 2521 00 spri2 pr6|310 001442 aa 6 00241 3521 00 epp2 pr6|161 ctl_arg 001443 aa 6 00470 2521 00 spri2 pr6|312 001444 aa 7 00000 3521 00 epp2 pr7|0 arg 001445 aa 6 00472 2521 00 spri2 pr6|314 001446 aa 6 00241 3521 00 epp2 pr6|161 ctl_arg 001447 aa 6 00474 2521 00 spri2 pr6|316 001450 aa 776413 3520 04 epp2 -757,ic 000063 = 404000000043 001451 aa 6 00476 2521 00 spri2 pr6|318 001452 aa 776416 3520 04 epp2 -754,ic 000070 = 526000000040 001453 aa 6 00500 2521 00 spri2 pr6|320 001454 aa 776371 3520 04 epp2 -775,ic 000045 = 524000000054 001455 aa 6 00502 2521 00 spri2 pr6|322 001456 aa 776366 3520 04 epp2 -778,ic 000044 = 530000000012 001457 aa 6 00504 2521 00 spri2 pr6|324 001460 aa 6 00510 2521 00 spri2 pr6|328 001461 aa 6 00413 3521 00 epp2 pr6|267 001462 aa 6 00506 2521 00 spri2 pr6|326 001463 aa 6 00460 6211 00 eax1 pr6|304 001464 aa 030000 4310 07 fld 12288,dl 001465 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001466 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 227 goto MAIN_RETURN; 001467 aa 777352 7100 04 tra -278,ic 001041 STATEMENT 1 ON LINE 228 end; STATEMENT 1 ON LINE 230 standalone_segment = "1"b; 001470 aa 400000 2350 03 lda 131072,du 001471 aa 6 00333 7551 00 sta pr6|219 standalone_segment STATEMENT 1 ON LINE 231 end; 001472 aa 001532 7100 04 tra 858,ic 003224 STATEMENT 1 ON LINE 233 else if (arg = "-archive") | (arg = "-ac") then do; 001473 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001474 aa 7 00000 00 0005 desc9a pr7|0,al arg 001475 aa 776411 00 0010 desc9a -759,8 000104 = 055141162143 001476 aa 000005 6000 04 tze 5,ic 001503 001477 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001500 aa 7 00000 00 0005 desc9a pr7|0,al arg 001501 aa 776344 00 0003 desc9a -796,3 000043 = 055141143000 001502 aa 000147 6010 04 tnz 103,ic 001651 STATEMENT 1 ON LINE 235 if argno = nargs then do; 001503 aa 6 00164 2361 00 ldq pr6|116 argno 001504 aa 6 00165 1161 00 cmpq pr6|117 nargs 001505 aa 000035 6010 04 tnz 29,ic 001542 STATEMENT 1 ON LINE 236 MISSING_ARG: call com_err_ (error_table_$noarg, WHOAMI, "^a must be followed by a pathname", arg); 001506 aa 6 00170 2361 00 ldq pr6|120 argl 001507 aa 526000 2760 03 orq 175104,du 001510 aa 6 00413 7561 00 stq pr6|267 001511 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001512 aa 776460 00 0044 desc9a -720,36 000171 = 136141040155 001513 aa 6 00414 00 0044 desc9a pr6|268,36 001514 aa 6 00044 3701 20 epp4 pr6|36,* 001515 la 4 00054 3521 20 epp2 pr4|44,* error_table_$noarg 001516 aa 6 00434 2521 00 spri2 pr6|284 001517 aa 776262 3520 04 epp2 -846,ic 000001 = 142151156144 001520 aa 6 00436 2521 00 spri2 pr6|286 001521 aa 6 00414 3521 00 epp2 pr6|268 001522 aa 6 00440 2521 00 spri2 pr6|288 001523 aa 7 00000 3521 00 epp2 pr7|0 arg 001524 aa 6 00442 2521 00 spri2 pr6|290 001525 aa 776336 3520 04 epp2 -802,ic 000063 = 404000000043 001526 aa 6 00444 2521 00 spri2 pr6|292 001527 aa 776341 3520 04 epp2 -799,ic 000070 = 526000000040 001530 aa 6 00446 2521 00 spri2 pr6|294 001531 aa 776311 3520 04 epp2 -823,ic 000042 = 524000000041 001532 aa 6 00450 2521 00 spri2 pr6|296 001533 aa 6 00413 3521 00 epp2 pr6|267 001534 aa 6 00452 2521 00 spri2 pr6|298 001535 aa 6 00432 6211 00 eax1 pr6|282 001536 aa 020000 4310 07 fld 8192,dl 001537 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001540 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 237 goto MAIN_RETURN; 001541 aa 777300 7100 04 tra -320,ic 001041 STATEMENT 1 ON LINE 238 end; STATEMENT 1 ON LINE 240 ctl_arg = arg; 001542 aa 6 00170 2361 00 ldq pr6|120 argl 001543 aa 000012 1160 07 cmpq 10,dl 001544 aa 000002 6040 04 tmi 2,ic 001546 001545 aa 000012 2360 07 ldq 10,dl 001546 aa 6 00240 7561 00 stq pr6|160 ctl_arg 001547 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 001550 aa 7 00000 00 0006 desc9a pr7|0,ql arg 001551 aa 6 00241 00 0006 desc9a pr6|161,ql ctl_arg STATEMENT 1 ON LINE 241 call cu_$arg_ptr (argno+1, argp, argl, (0)); 001552 aa 6 00164 2361 00 ldq pr6|116 argno 001553 aa 000001 0760 07 adq 1,dl 001554 aa 6 00413 7561 00 stq pr6|267 001555 aa 6 00371 4501 00 stz pr6|249 001556 aa 6 00413 3521 00 epp2 pr6|267 001557 aa 6 00416 2521 00 spri2 pr6|270 001560 aa 6 00166 3521 00 epp2 pr6|118 argp 001561 aa 6 00420 2521 00 spri2 pr6|272 001562 aa 6 00170 3521 00 epp2 pr6|120 argl 001563 aa 6 00422 2521 00 spri2 pr6|274 001564 aa 6 00371 3521 00 epp2 pr6|249 001565 aa 6 00424 2521 00 spri2 pr6|276 001566 aa 6 00414 6211 00 eax1 pr6|268 001567 aa 020000 4310 07 fld 8192,dl 001570 aa 6 00044 3701 20 epp4 pr6|36,* 001571 la 4 00026 3521 20 epp2 pr4|22,* cu_$arg_ptr 001572 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 242 if char (arg, 1) = "-" then do; 001573 aa 6 00371 4501 00 stz pr6|249 001574 aa 6 00166 3735 20 epp7 pr6|118,* argp 001575 aa 6 00170 2351 00 lda pr6|120 argl 001576 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 001577 aa 7 00000 00 0005 desc9a pr7|0,al arg 001600 aa 6 00371 00 0001 desc9a pr6|249,1 001601 aa 6 00371 2351 00 lda pr6|249 001602 aa 055000 1150 03 cmpa 23040,du 001603 aa 000044 6010 04 tnz 36,ic 001647 STATEMENT 1 ON LINE 243 call com_err_ (error_table_$badopt, WHOAMI, "^a ^a^/ ^a must be followed by a pathname.^/", ctl_arg, arg, ctl_arg); 001604 aa 6 00170 2361 00 ldq pr6|120 argl 001605 aa 526000 2760 03 orq 175104,du 001606 aa 6 00371 7561 00 stq pr6|249 001607 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001610 aa 776446 00 0054 desc9a -730,44 000255 = 136141040136 001611 aa 6 00414 00 0054 desc9a pr6|268,44 001612 aa 6 00044 3701 20 epp4 pr6|36,* 001613 la 4 00052 3521 20 epp2 pr4|42,* error_table_$badopt 001614 aa 6 00462 2521 00 spri2 pr6|306 001615 aa 776164 3520 04 epp2 -908,ic 000001 = 142151156144 001616 aa 6 00464 2521 00 spri2 pr6|308 001617 aa 6 00414 3521 00 epp2 pr6|268 001620 aa 6 00466 2521 00 spri2 pr6|310 001621 aa 6 00241 3521 00 epp2 pr6|161 ctl_arg 001622 aa 6 00470 2521 00 spri2 pr6|312 001623 aa 7 00000 3521 00 epp2 pr7|0 arg 001624 aa 6 00472 2521 00 spri2 pr6|314 001625 aa 6 00241 3521 00 epp2 pr6|161 ctl_arg 001626 aa 6 00474 2521 00 spri2 pr6|316 001627 aa 776234 3520 04 epp2 -868,ic 000063 = 404000000043 001630 aa 6 00476 2521 00 spri2 pr6|318 001631 aa 776237 3520 04 epp2 -865,ic 000070 = 526000000040 001632 aa 6 00500 2521 00 spri2 pr6|320 001633 aa 776212 3520 04 epp2 -886,ic 000045 = 524000000054 001634 aa 6 00502 2521 00 spri2 pr6|322 001635 aa 776207 3520 04 epp2 -889,ic 000044 = 530000000012 001636 aa 6 00504 2521 00 spri2 pr6|324 001637 aa 6 00510 2521 00 spri2 pr6|328 001640 aa 6 00371 3521 00 epp2 pr6|249 001641 aa 6 00506 2521 00 spri2 pr6|326 001642 aa 6 00460 6211 00 eax1 pr6|304 001643 aa 030000 4310 07 fld 12288,dl 001644 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001645 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 245 goto MAIN_RETURN; 001646 aa 777173 7100 04 tra -389,ic 001041 STATEMENT 1 ON LINE 246 end; STATEMENT 1 ON LINE 248 standalone_segment = "0"b; 001647 aa 6 00333 4501 00 stz pr6|219 standalone_segment STATEMENT 1 ON LINE 249 end; 001650 aa 001354 7100 04 tra 748,ic 003224 STATEMENT 1 ON LINE 251 else if (arg = "-bindfile") | (arg = "-bdf") then do; 001651 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001652 aa 7 00000 00 0005 desc9a pr7|0,al arg 001653 aa 776255 00 0011 desc9a -851,9 000126 = 055142151156 001654 aa 000005 6000 04 tze 5,ic 001661 001655 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 001656 aa 7 00000 00 0005 desc9a pr7|0,al arg 001657 aa 776164 00 0004 desc9a -908,4 000041 = 055142144146 001660 aa 000366 6010 04 tnz 246,ic 002246 STATEMENT 1 ON LINE 252 if bindfile_flag then do; 001661 aa 6 00171 2351 00 lda pr6|121 bindfile_flag 001662 aa 000027 6000 04 tze 23,ic 001711 STATEMENT 1 ON LINE 253 call com_err_ (0, WHOAMI, "Multiple -bindfile control args not allowed."); 001663 aa 6 00371 4501 00 stz pr6|249 001664 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001665 aa 776356 00 0054 desc9a -786,44 000242 = 115165154164 001666 aa 6 00414 00 0054 desc9a pr6|268,44 001667 aa 6 00371 3521 00 epp2 pr6|249 001670 aa 6 00376 2521 00 spri2 pr6|254 001671 aa 776110 3520 04 epp2 -952,ic 000001 = 142151156144 001672 aa 6 00400 2521 00 spri2 pr6|256 001673 aa 6 00414 3521 00 epp2 pr6|268 001674 aa 6 00402 2521 00 spri2 pr6|258 001675 aa 776174 3520 04 epp2 -900,ic 000071 = 404000000005 001676 aa 6 00404 2521 00 spri2 pr6|260 001677 aa 776171 3520 04 epp2 -903,ic 000070 = 526000000040 001700 aa 6 00406 2521 00 spri2 pr6|262 001701 aa 776144 3520 04 epp2 -924,ic 000045 = 524000000054 001702 aa 6 00410 2521 00 spri2 pr6|264 001703 aa 6 00374 6211 00 eax1 pr6|252 001704 aa 014000 4310 07 fld 6144,dl 001705 aa 6 00044 3701 20 epp4 pr6|36,* 001706 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001707 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 254 goto MAIN_RETURN; 001710 aa 777131 7100 04 tra -423,ic 001041 STATEMENT 1 ON LINE 255 end; STATEMENT 1 ON LINE 257 if argno = nargs then do; 001711 aa 6 00164 2361 00 ldq pr6|116 argno 001712 aa 6 00165 1161 00 cmpq pr6|117 nargs 001713 aa 000035 6010 04 tnz 29,ic 001750 STATEMENT 1 ON LINE 258 call com_err_ (error_table_$noarg, WHOAMI, "^a must be followed by an entry name.", arg); 001714 aa 6 00170 2361 00 ldq pr6|120 argl 001715 aa 526000 2760 03 orq 175104,du 001716 aa 6 00371 7561 00 stq pr6|249 001717 aa 000 100 100 404 mlr (ic),(pr),fill(000) 001720 aa 776263 00 0050 desc9a -845,40 000202 = 136141040155 001721 aa 6 00414 00 0050 desc9a pr6|268,40 001722 aa 6 00044 3701 20 epp4 pr6|36,* 001723 la 4 00054 3521 20 epp2 pr4|44,* error_table_$noarg 001724 aa 6 00434 2521 00 spri2 pr6|284 001725 aa 776054 3520 04 epp2 -980,ic 000001 = 142151156144 001726 aa 6 00436 2521 00 spri2 pr6|286 001727 aa 6 00414 3521 00 epp2 pr6|268 001730 aa 6 00440 2521 00 spri2 pr6|288 001731 aa 7 00000 3521 00 epp2 pr7|0 arg 001732 aa 6 00442 2521 00 spri2 pr6|290 001733 aa 776130 3520 04 epp2 -936,ic 000063 = 404000000043 001734 aa 6 00444 2521 00 spri2 pr6|292 001735 aa 776133 3520 04 epp2 -933,ic 000070 = 526000000040 001736 aa 6 00446 2521 00 spri2 pr6|294 001737 aa 776101 3520 04 epp2 -959,ic 000040 = 524000000045 001740 aa 6 00450 2521 00 spri2 pr6|296 001741 aa 6 00371 3521 00 epp2 pr6|249 001742 aa 6 00452 2521 00 spri2 pr6|298 001743 aa 6 00432 6211 00 eax1 pr6|282 001744 aa 020000 4310 07 fld 8192,dl 001745 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 001746 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 260 goto MAIN_RETURN; 001747 aa 777072 7100 04 tra -454,ic 001041 STATEMENT 1 ON LINE 261 end; STATEMENT 1 ON LINE 263 bindfile_flag = "1"b; 001750 aa 400000 2350 03 lda 131072,du 001751 aa 6 00171 7551 00 sta pr6|121 bindfile_flag STATEMENT 1 ON LINE 265 ctl_arg = arg; 001752 aa 6 00170 2361 00 ldq pr6|120 argl 001753 aa 000012 1160 07 cmpq 10,dl 001754 aa 000002 6040 04 tmi 2,ic 001756 001755 aa 000012 2360 07 ldq 10,dl 001756 aa 6 00240 7561 00 stq pr6|160 ctl_arg 001757 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 001760 aa 7 00000 00 0006 desc9a pr7|0,ql arg 001761 aa 6 00241 00 0006 desc9a pr6|161,ql ctl_arg STATEMENT 1 ON LINE 266 argno = argno + 1; 001762 aa 6 00164 0541 00 aos pr6|116 argno STATEMENT 1 ON LINE 267 call cu_$arg_ptr (argno, argp, argl, (0)); 001763 aa 6 00371 4501 00 stz pr6|249 001764 aa 6 00164 3521 00 epp2 pr6|116 argno 001765 aa 6 00416 2521 00 spri2 pr6|270 001766 aa 6 00166 3521 00 epp2 pr6|118 argp 001767 aa 6 00420 2521 00 spri2 pr6|272 001770 aa 6 00170 3521 00 epp2 pr6|120 argl 001771 aa 6 00422 2521 00 spri2 pr6|274 001772 aa 6 00371 3521 00 epp2 pr6|249 001773 aa 6 00424 2521 00 spri2 pr6|276 001774 aa 6 00414 6211 00 eax1 pr6|268 001775 aa 020000 4310 07 fld 8192,dl 001776 aa 6 00044 3701 20 epp4 pr6|36,* 001777 la 4 00026 3521 20 epp2 pr4|22,* cu_$arg_ptr 002000 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 268 if (search (arg, "<>") > 0) | (index (arg, "-") = 1) then do; 002001 aa 6 00166 3735 20 epp7 pr6|118,* argp 002002 aa 6 00170 2351 00 lda pr6|120 argl 002003 aa 000 003 124 540 scm (pr,rl),(du),mask(000) 002004 aa 7 00000 00 0005 desc9a pr7|0,al arg 002005 aa 055000 00 0001 desc9a 23040,1 002006 aa 6 00056 0001 00 arg pr6|46 002007 aa 6 00056 2361 00 ldq pr6|46 002010 aa 000002 6070 04 ttf 2,ic 002012 002011 aa 000001 3360 07 lcq 1,dl 002012 aa 000001 0760 07 adq 1,dl 002013 aa 6 00371 7561 00 stq pr6|249 002014 aa 000 000 164 540 tct (pr,rl) 002015 aa 7 00000 00 0005 desc9a pr7|0,al arg 002016 aa 002630 0000 04 arg 1432,ic 004644 = 000000000000 002017 aa 6 00056 0001 00 arg pr6|46 002020 aa 6 00056 2361 00 ldq pr6|46 002021 aa 0 00242 3761 00 anq pr0|162 = 000777777777 002022 aa 000002 6070 04 ttf 2,ic 002024 002023 aa 000001 3360 07 lcq 1,dl 002024 aa 000001 0760 07 adq 1,dl 002025 aa 000004 6054 04 tpnz 4,ic 002031 002026 aa 6 00371 2361 00 ldq pr6|249 002027 aa 000001 1160 07 cmpq 1,dl 002030 aa 000053 6010 04 tnz 43,ic 002103 STATEMENT 1 ON LINE 270 call com_err_ (0, WHOAMI, "^a must be followed by an entry name ^[not^;not a pathname.^] ^a.", ctl_arg, (index (arg,"-") = 1), arg); 002031 aa 6 00170 2361 00 ldq pr6|120 argl 002032 aa 526000 2760 03 orq 175104,du 002033 aa 6 00413 7561 00 stq pr6|267 002034 aa 6 00512 4501 00 stz pr6|330 002035 aa 000 100 100 404 mlr (ic),(pr),fill(000) 002036 aa 776463 00 0104 desc9a -717,68 000520 = 136141040155 002037 aa 6 00432 00 0104 desc9a pr6|282,68 002040 aa 6 00371 2361 00 ldq pr6|249 002041 aa 000001 1160 07 cmpq 1,dl 002042 aa 0 00512 7001 00 tsx0 pr0|330 r_e_as 002043 aa 6 00371 7551 00 sta pr6|249 002044 aa 6 00512 3521 00 epp2 pr6|330 002045 aa 6 00462 2521 00 spri2 pr6|306 002046 aa 775733 3520 04 epp2 -1061,ic 000001 = 142151156144 002047 aa 6 00464 2521 00 spri2 pr6|308 002050 aa 6 00432 3521 00 epp2 pr6|282 002051 aa 6 00466 2521 00 spri2 pr6|310 002052 aa 6 00241 3521 00 epp2 pr6|161 ctl_arg 002053 aa 6 00470 2521 00 spri2 pr6|312 002054 aa 6 00371 3521 00 epp2 pr6|249 002055 aa 6 00472 2521 00 spri2 pr6|314 002056 aa 7 00000 3521 00 epp2 pr7|0 arg 002057 aa 6 00474 2521 00 spri2 pr6|316 002060 aa 776011 3520 04 epp2 -1015,ic 000071 = 404000000005 002061 aa 6 00476 2521 00 spri2 pr6|318 002062 aa 776006 3520 04 epp2 -1018,ic 000070 = 526000000040 002063 aa 6 00500 2521 00 spri2 pr6|320 002064 aa 775753 3520 04 epp2 -1045,ic 000037 = 524000000101 002065 aa 6 00502 2521 00 spri2 pr6|322 002066 aa 775756 3520 04 epp2 -1042,ic 000044 = 530000000012 002067 aa 6 00504 2521 00 spri2 pr6|324 002070 aa 775746 3520 04 epp2 -1050,ic 000036 = 514000000001 002071 aa 6 00506 2521 00 spri2 pr6|326 002072 aa 6 00413 3521 00 epp2 pr6|267 002073 aa 6 00510 2521 00 spri2 pr6|328 002074 aa 6 00460 6211 00 eax1 pr6|304 002075 aa 030000 4310 07 fld 12288,dl 002076 aa 6 00044 3701 20 epp4 pr6|36,* 002077 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002100 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 273 error_sw = "1"b; 002101 aa 400000 2350 03 lda 131072,du 002102 aa 6 00246 7551 00 sta pr6|166 error_sw STATEMENT 1 ON LINE 274 end; STATEMENT 1 ON LINE 276 if (argl > 4 & index (arg, ".bind") = argl - 4) then do; 002103 aa 6 00170 2361 00 ldq pr6|120 argl 002104 aa 000004 1160 07 cmpq 4,dl 002105 aa 000061 6044 04 tmoz 49,ic 002166 002106 aa 000004 1760 07 sbq 4,dl 002107 aa 6 00413 7561 00 stq pr6|267 002110 aa 6 00170 2361 00 ldq pr6|120 argl 002111 aa 6 00166 3521 20 epp2 pr6|118,* arg 002112 aa 0 01227 7001 00 tsx0 pr0|663 set_cs_eis 002113 aa 000005 2360 07 ldq 5,dl 002114 aa 775766 3520 04 epp2 -1034,ic 000102 = 056142151156 002115 aa 0 01231 7001 00 tsx0 pr0|665 index_cs_eis 002116 aa 6 00413 1161 00 cmpq pr6|267 002117 aa 000047 6010 04 tnz 39,ic 002166 STATEMENT 1 ON LINE 277 if argl > 32 then do; 002120 aa 6 00170 2361 00 ldq pr6|120 argl 002121 aa 000040 1160 07 cmpq 32,dl 002122 aa 000037 6044 04 tmoz 31,ic 002161 STATEMENT 1 ON LINE 278 call com_err_ (0, WHOAMI, "Bindfile name is too long. ^a", arg); 002123 aa 526000 2760 03 orq 175104,du 002124 aa 6 00413 7561 00 stq pr6|267 002125 aa 6 00371 4501 00 stz pr6|249 002126 aa 000 100 100 404 mlr (ic),(pr),fill(000) 002127 aa 776033 00 0040 desc9a -997,32 000161 = 102151156144 002130 aa 6 00414 00 0040 desc9a pr6|268,32 002131 aa 6 00371 3521 00 epp2 pr6|249 002132 aa 6 00434 2521 00 spri2 pr6|284 002133 aa 775646 3520 04 epp2 -1114,ic 000001 = 142151156144 002134 aa 6 00436 2521 00 spri2 pr6|286 002135 aa 6 00414 3521 00 epp2 pr6|268 002136 aa 6 00440 2521 00 spri2 pr6|288 002137 aa 6 00166 3521 20 epp2 pr6|118,* arg 002140 aa 6 00442 2521 00 spri2 pr6|290 002141 aa 775730 3520 04 epp2 -1064,ic 000071 = 404000000005 002142 aa 6 00444 2521 00 spri2 pr6|292 002143 aa 775725 3520 04 epp2 -1067,ic 000070 = 526000000040 002144 aa 6 00446 2521 00 spri2 pr6|294 002145 aa 775670 3520 04 epp2 -1096,ic 000035 = 524000000035 002146 aa 6 00450 2521 00 spri2 pr6|296 002147 aa 6 00413 3521 00 epp2 pr6|267 002150 aa 6 00452 2521 00 spri2 pr6|298 002151 aa 6 00432 6211 00 eax1 pr6|282 002152 aa 020000 4310 07 fld 8192,dl 002153 aa 6 00044 3701 20 epp4 pr6|36,* 002154 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002155 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 279 error_sw = "1"b; 002156 aa 400000 2350 03 lda 131072,du 002157 aa 6 00246 7551 00 sta pr6|166 error_sw STATEMENT 1 ON LINE 280 end; 002160 aa 001044 7100 04 tra 548,ic 003224 STATEMENT 1 ON LINE 281 else bindfile_to_use = arg; 002161 aa 6 00166 3735 20 epp7 pr6|118,* argp 002162 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 002163 aa 7 00000 00 0006 desc9a pr7|0,ql arg 002164 aa 6 00172 00 0040 desc9a pr6|122,32 bindfile_to_use STATEMENT 1 ON LINE 282 end; 002165 aa 001037 7100 04 tra 543,ic 003224 STATEMENT 1 ON LINE 284 else do; STATEMENT 1 ON LINE 285 if argl > 27 then do; 002166 aa 6 00170 2361 00 ldq pr6|120 argl 002167 aa 000033 1160 07 cmpq 27,dl 002170 aa 000037 6044 04 tmoz 31,ic 002227 STATEMENT 1 ON LINE 286 call com_err_ (0, WHOAMI, "Bindfile name is too long. ^a", arg); 002171 aa 526000 2760 03 orq 175104,du 002172 aa 6 00413 7561 00 stq pr6|267 002173 aa 6 00371 4501 00 stz pr6|249 002174 aa 000 100 100 404 mlr (ic),(pr),fill(000) 002175 aa 775765 00 0040 desc9a -1035,32 000161 = 102151156144 002176 aa 6 00414 00 0040 desc9a pr6|268,32 002177 aa 6 00371 3521 00 epp2 pr6|249 002200 aa 6 00434 2521 00 spri2 pr6|284 002201 aa 775600 3520 04 epp2 -1152,ic 000001 = 142151156144 002202 aa 6 00436 2521 00 spri2 pr6|286 002203 aa 6 00414 3521 00 epp2 pr6|268 002204 aa 6 00440 2521 00 spri2 pr6|288 002205 aa 6 00166 3521 20 epp2 pr6|118,* arg 002206 aa 6 00442 2521 00 spri2 pr6|290 002207 aa 775662 3520 04 epp2 -1102,ic 000071 = 404000000005 002210 aa 6 00444 2521 00 spri2 pr6|292 002211 aa 775657 3520 04 epp2 -1105,ic 000070 = 526000000040 002212 aa 6 00446 2521 00 spri2 pr6|294 002213 aa 775622 3520 04 epp2 -1134,ic 000035 = 524000000035 002214 aa 6 00450 2521 00 spri2 pr6|296 002215 aa 6 00413 3521 00 epp2 pr6|267 002216 aa 6 00452 2521 00 spri2 pr6|298 002217 aa 6 00432 6211 00 eax1 pr6|282 002220 aa 020000 4310 07 fld 8192,dl 002221 aa 6 00044 3701 20 epp4 pr6|36,* 002222 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002223 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 287 error_sw = "1"b; 002224 aa 400000 2350 03 lda 131072,du 002225 aa 6 00246 7551 00 sta pr6|166 error_sw STATEMENT 1 ON LINE 288 end; 002226 aa 000776 7100 04 tra 510,ic 003224 STATEMENT 1 ON LINE 289 else bindfile_to_use = arg || ".bind"; 002227 aa 000005 0760 07 adq 5,dl 002230 aa 0 00551 7001 00 tsx0 pr0|361 alloc_cs 002231 aa 6 00166 3735 20 epp7 pr6|118,* argp 002232 aa 6 00170 2351 00 lda pr6|120 argl 002233 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 002234 aa 7 00000 00 0005 desc9a pr7|0,al arg 002235 aa 2 00000 00 0005 desc9a pr2|0,al 002236 aa 040 105 100 404 mlr (ic),(pr,al),fill(040) 002237 aa 775644 00 0005 desc9a -1116,5 000102 = 056142151156 002240 aa 2 00000 00 0005 desc9a pr2|0,5 002241 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 002242 aa 2 00000 00 0006 desc9a pr2|0,ql 002243 aa 6 00172 00 0040 desc9a pr6|122,32 bindfile_to_use STATEMENT 1 ON LINE 290 end; 002244 aa 0 01014 7001 00 tsx0 pr0|524 shorten_stack STATEMENT 1 ON LINE 291 end; 002245 aa 000757 7100 04 tra 495,ic 003224 STATEMENT 1 ON LINE 293 else if char (arg, 1) = "-" then do; 002246 aa 6 00413 4501 00 stz pr6|267 002247 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 002250 aa 7 00000 00 0005 desc9a pr7|0,al arg 002251 aa 6 00413 00 0001 desc9a pr6|267,1 002252 aa 6 00413 2351 00 lda pr6|267 002253 aa 055000 1150 03 cmpa 23040,du 002254 aa 000034 6010 04 tnz 28,ic 002310 STATEMENT 1 ON LINE 294 call com_err_ (error_table_$badopt, WHOAMI, "^a", arg); 002255 aa 6 00170 2361 00 ldq pr6|120 argl 002256 aa 526000 2760 03 orq 175104,du 002257 aa 6 00413 7561 00 stq pr6|267 002260 aa 136141 2350 03 lda 48225,du 002261 aa 6 00371 7551 00 sta pr6|249 002262 aa 6 00044 3701 20 epp4 pr6|36,* 002263 la 4 00052 3521 20 epp2 pr4|42,* error_table_$badopt 002264 aa 6 00434 2521 00 spri2 pr6|284 002265 aa 775514 3520 04 epp2 -1204,ic 000001 = 142151156144 002266 aa 6 00436 2521 00 spri2 pr6|286 002267 aa 6 00371 3521 00 epp2 pr6|249 002270 aa 6 00440 2521 00 spri2 pr6|288 002271 aa 7 00000 3521 00 epp2 pr7|0 arg 002272 aa 6 00442 2521 00 spri2 pr6|290 002273 aa 775570 3520 04 epp2 -1160,ic 000063 = 404000000043 002274 aa 6 00444 2521 00 spri2 pr6|292 002275 aa 775573 3520 04 epp2 -1157,ic 000070 = 526000000040 002276 aa 6 00446 2521 00 spri2 pr6|294 002277 aa 775535 3520 04 epp2 -1187,ic 000034 = 524000000002 002300 aa 6 00450 2521 00 spri2 pr6|296 002301 aa 6 00413 3521 00 epp2 pr6|267 002302 aa 6 00452 2521 00 spri2 pr6|298 002303 aa 6 00432 6211 00 eax1 pr6|282 002304 aa 020000 4310 07 fld 8192,dl 002305 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002306 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 295 goto MAIN_RETURN; 002307 aa 776532 7100 04 tra -678,ic 001041 STATEMENT 1 ON LINE 296 end; STATEMENT 1 ON LINE 301 else do; STATEMENT 1 ON LINE 302 inp.ntotal, /* update the array bound */ archive_idx = archive_idx + 1; 002310 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002311 aa 000001 0760 07 adq 1,dl 002312 aa 6 00244 3715 20 epp5 pr6|164,* inpp 002313 aa 5 00023 7561 00 stq pr5|19 inp.ntotal 002314 aa 6 00163 7561 00 stq pr6|115 archive_idx STATEMENT 1 ON LINE 304 inp.archive(archive_idx).ptr = null; 002315 aa 000144 4020 07 mpy 100,dl 002316 aa 000000 6270 06 eax7 0,ql 002317 aa 775601 2370 04 ldaq -1151,ic 000120 = 077777000043 000001000000 002320 aa 5 00030 7571 17 staq pr5|24,7 inp.ptr STATEMENT 1 ON LINE 307 if standalone_segment then call absolute_pathname_ (arg, inp.archive (archive_idx).path, code); 002321 aa 6 00333 2351 00 lda pr6|219 standalone_segment 002322 aa 6 00413 7471 00 stx7 pr6|267 002323 aa 000030 6000 04 tze 24,ic 002353 002324 aa 6 00170 2361 00 ldq pr6|120 argl 002325 aa 526000 2760 03 orq 175104,du 002326 aa 6 00371 7561 00 stq pr6|249 002327 aa 775504 2360 04 ldq -1212,ic 000033 = 526000000250 002330 aa 6 00512 7561 00 stq pr6|330 002331 aa 7 00000 3521 00 epp2 pr7|0 arg 002332 aa 6 00416 2521 00 spri2 pr6|270 002333 aa 5 77704 3521 17 epp2 pr5|-60,7 inp.path 002334 aa 6 00420 2521 00 spri2 pr6|272 002335 aa 6 00202 3521 00 epp2 pr6|130 code 002336 aa 6 00422 2521 00 spri2 pr6|274 002337 aa 6 00371 3521 00 epp2 pr6|249 002340 aa 6 00424 2521 00 spri2 pr6|276 002341 aa 6 00512 3521 00 epp2 pr6|330 002342 aa 6 00426 2521 00 spri2 pr6|278 002343 aa 775520 3520 04 epp2 -1200,ic 000063 = 404000000043 002344 aa 6 00430 2521 00 spri2 pr6|280 002345 aa 6 00414 6211 00 eax1 pr6|268 002346 aa 014000 4310 07 fld 6144,dl 002347 aa 6 00044 3701 20 epp4 pr6|36,* 002350 la 4 00012 3521 20 epp2 pr4|10,* absolute_pathname_ 002351 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc 002352 aa 000033 7100 04 tra 27,ic 002405 STATEMENT 1 ON LINE 309 else call absolute_pathname_$add_suffix (arg, ARCHIVE_SUFFIX, inp.archive (archive_idx).path, code); 002353 aa 6 00170 2361 00 ldq pr6|120 argl 002354 aa 526000 2760 03 orq 175104,du 002355 aa 6 00371 7561 00 stq pr6|249 002356 aa 775455 2360 04 ldq -1235,ic 000033 = 526000000250 002357 aa 6 00512 7561 00 stq pr6|330 002360 aa 7 00000 3521 00 epp2 pr7|0 arg 002361 aa 6 00434 2521 00 spri2 pr6|284 002362 aa 775430 3520 04 epp2 -1256,ic 000012 = 141162143150 002363 aa 6 00436 2521 00 spri2 pr6|286 002364 aa 5 77704 3521 17 epp2 pr5|-60,7 inp.path 002365 aa 6 00440 2521 00 spri2 pr6|288 002366 aa 6 00202 3521 00 epp2 pr6|130 code 002367 aa 6 00442 2521 00 spri2 pr6|290 002370 aa 6 00371 3521 00 epp2 pr6|249 002371 aa 6 00444 2521 00 spri2 pr6|292 002372 aa 775440 3520 04 epp2 -1248,ic 000032 = 526000000007 002373 aa 6 00446 2521 00 spri2 pr6|294 002374 aa 6 00512 3521 00 epp2 pr6|330 002375 aa 6 00450 2521 00 spri2 pr6|296 002376 aa 775465 3520 04 epp2 -1227,ic 000063 = 404000000043 002377 aa 6 00452 2521 00 spri2 pr6|298 002400 aa 6 00432 6211 00 eax1 pr6|282 002401 aa 020000 4310 07 fld 8192,dl 002402 aa 6 00044 3701 20 epp4 pr6|36,* 002403 la 4 00014 3521 20 epp2 pr4|12,* absolute_pathname_$add_suffix 002404 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 311 if code ^= 0 then do; 002405 aa 6 00202 2361 00 ldq pr6|130 code 002406 aa 000034 6000 04 tze 28,ic 002442 STATEMENT 1 ON LINE 312 BAD_ARCHIVE_PATH: call com_err_ (code, WHOAMI, "^a", arg); 002407 aa 6 00170 2361 00 ldq pr6|120 argl 002410 aa 526000 2760 03 orq 175104,du 002411 aa 6 00371 7561 00 stq pr6|249 002412 aa 136141 2350 03 lda 48225,du 002413 aa 6 00512 7551 00 sta pr6|330 002414 aa 6 00202 3521 00 epp2 pr6|130 code 002415 aa 6 00434 2521 00 spri2 pr6|284 002416 aa 775363 3520 04 epp2 -1293,ic 000001 = 142151156144 002417 aa 6 00436 2521 00 spri2 pr6|286 002420 aa 6 00512 3521 00 epp2 pr6|330 002421 aa 6 00440 2521 00 spri2 pr6|288 002422 aa 6 00166 3521 20 epp2 pr6|118,* arg 002423 aa 6 00442 2521 00 spri2 pr6|290 002424 aa 775437 3520 04 epp2 -1249,ic 000063 = 404000000043 002425 aa 6 00444 2521 00 spri2 pr6|292 002426 aa 775442 3520 04 epp2 -1246,ic 000070 = 526000000040 002427 aa 6 00446 2521 00 spri2 pr6|294 002430 aa 775404 3520 04 epp2 -1276,ic 000034 = 524000000002 002431 aa 6 00450 2521 00 spri2 pr6|296 002432 aa 6 00371 3521 00 epp2 pr6|249 002433 aa 6 00452 2521 00 spri2 pr6|298 002434 aa 6 00432 6211 00 eax1 pr6|282 002435 aa 020000 4310 07 fld 8192,dl 002436 aa 6 00044 3701 20 epp4 pr6|36,* 002437 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002440 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 313 goto MAIN_RETURN; 002441 aa 776400 7100 04 tra -768,ic 001041 STATEMENT 1 ON LINE 314 end; STATEMENT 1 ON LINE 316 if standalone_segment then call expand_pathname_$component (inp.archive (archive_idx).path, archive_dname, archive_ename, component_name, code); 002442 aa 6 00333 2351 00 lda pr6|219 standalone_segment 002443 aa 000037 6000 04 tze 31,ic 002502 002444 aa 775367 2360 04 ldq -1289,ic 000033 = 526000000250 002445 aa 6 00371 7561 00 stq pr6|249 002446 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002447 aa 000144 4020 07 mpy 100,dl 002450 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002451 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 002452 aa 6 00434 2521 00 spri2 pr6|284 002453 aa 6 00101 3521 00 epp2 pr6|65 archive_dname 002454 aa 6 00436 2521 00 spri2 pr6|286 002455 aa 6 00153 3521 00 epp2 pr6|107 archive_ename 002456 aa 6 00440 2521 00 spri2 pr6|288 002457 aa 6 00203 3521 00 epp2 pr6|131 component_name 002460 aa 6 00442 2521 00 spri2 pr6|290 002461 aa 6 00202 3521 00 epp2 pr6|130 code 002462 aa 6 00444 2521 00 spri2 pr6|292 002463 aa 6 00371 3521 00 epp2 pr6|249 002464 aa 6 00446 2521 00 spri2 pr6|294 002465 aa 775346 3520 04 epp2 -1306,ic 000033 = 526000000250 002466 aa 6 00450 2521 00 spri2 pr6|296 002467 aa 775401 3520 04 epp2 -1279,ic 000070 = 526000000040 002470 aa 6 00452 2521 00 spri2 pr6|298 002471 aa 6 00454 2521 00 spri2 pr6|300 002472 aa 775371 3520 04 epp2 -1287,ic 000063 = 404000000043 002473 aa 6 00456 2521 00 spri2 pr6|302 002474 aa 6 00432 6211 00 eax1 pr6|282 002475 aa 024000 4310 07 fld 10240,dl 002476 aa 6 00044 3701 20 epp4 pr6|36,* 002477 la 4 00032 3521 20 epp2 pr4|26,* expand_pathname_$component 002500 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc 002501 aa 000037 7100 04 tra 31,ic 002540 STATEMENT 1 ON LINE 318 else call expand_pathname_$add_suffix (inp.archive (archive_idx).path, ARCHIVE_SUFFIX, archive_dname, archive_ename, code); 002502 aa 775331 2360 04 ldq -1319,ic 000033 = 526000000250 002503 aa 6 00371 7561 00 stq pr6|249 002504 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002505 aa 000144 4020 07 mpy 100,dl 002506 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002507 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 002510 aa 6 00434 2521 00 spri2 pr6|284 002511 aa 775301 3520 04 epp2 -1343,ic 000012 = 141162143150 002512 aa 6 00436 2521 00 spri2 pr6|286 002513 aa 6 00101 3521 00 epp2 pr6|65 archive_dname 002514 aa 6 00440 2521 00 spri2 pr6|288 002515 aa 6 00153 3521 00 epp2 pr6|107 archive_ename 002516 aa 6 00442 2521 00 spri2 pr6|290 002517 aa 6 00202 3521 00 epp2 pr6|130 code 002520 aa 6 00444 2521 00 spri2 pr6|292 002521 aa 6 00371 3521 00 epp2 pr6|249 002522 aa 6 00446 2521 00 spri2 pr6|294 002523 aa 775307 3520 04 epp2 -1337,ic 000032 = 526000000007 002524 aa 6 00450 2521 00 spri2 pr6|296 002525 aa 775306 3520 04 epp2 -1338,ic 000033 = 526000000250 002526 aa 6 00452 2521 00 spri2 pr6|298 002527 aa 775341 3520 04 epp2 -1311,ic 000070 = 526000000040 002530 aa 6 00454 2521 00 spri2 pr6|300 002531 aa 775332 3520 04 epp2 -1318,ic 000063 = 404000000043 002532 aa 6 00456 2521 00 spri2 pr6|302 002533 aa 6 00432 6211 00 eax1 pr6|282 002534 aa 024000 4310 07 fld 10240,dl 002535 aa 6 00044 3701 20 epp4 pr6|36,* 002536 la 4 00034 3521 20 epp2 pr4|28,* expand_pathname_$add_suffix 002537 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 320 if code ^= 0 then goto BAD_ARCHIVE_PATH; 002540 aa 6 00202 2361 00 ldq pr6|130 code 002541 aa 777646 6010 04 tnz -90,ic 002407 STATEMENT 1 ON LINE 322 if component_name ^= "" then do; 002542 aa 040 004 106 500 cmpc (pr),(ic),fill(040) 002543 aa 6 00203 00 0040 desc9a pr6|131,32 component_name 002544 aa 002302 00 0000 desc9a 1218,0 005044 = 076000000000 002545 aa 000037 6000 04 tze 31,ic 002604 STATEMENT 1 ON LINE 323 call com_err_ (error_table_$archive_pathname, "bind_", inp.archive (archive_idx).path); 002546 aa 775265 2360 04 ldq -1355,ic 000033 = 526000000250 002547 aa 6 00371 7561 00 stq pr6|249 002550 aa 775330 2370 04 ldaq -1320,ic 000100 = 142151156144 137000000000 002551 aa 6 00372 7571 00 staq pr6|250 002552 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002553 aa 000144 4020 07 mpy 100,dl 002554 aa 6 00044 3701 20 epp4 pr6|36,* 002555 la 4 00050 3521 20 epp2 pr4|40,* error_table_$archive_pathname 002556 aa 6 00416 2521 00 spri2 pr6|270 002557 aa 6 00372 3521 00 epp2 pr6|250 002560 aa 6 00420 2521 00 spri2 pr6|272 002561 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002562 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 002563 aa 6 00422 2521 00 spri2 pr6|274 002564 aa 775277 3520 04 epp2 -1345,ic 000063 = 404000000043 002565 aa 6 00424 2521 00 spri2 pr6|276 002566 aa 775243 3520 04 epp2 -1373,ic 000031 = 524000000005 002567 aa 6 00426 2521 00 spri2 pr6|278 002570 aa 6 00371 3521 00 epp2 pr6|249 002571 aa 6 00430 2521 00 spri2 pr6|280 002572 aa 6 00414 6211 00 eax1 pr6|268 002573 aa 014000 4310 07 fld 6144,dl 002574 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002575 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 324 component_name = ""; 002576 aa 040 100 100 400 mlr (),(pr),fill(040) 002577 aa 000000 00 0000 desc9a 0,0 002600 aa 6 00203 00 0040 desc9a pr6|131,32 component_name STATEMENT 1 ON LINE 325 archive_idx = archive_idx - 1; 002601 aa 000001 3360 07 lcq 1,dl 002602 aa 6 00163 0561 00 asq pr6|115 archive_idx STATEMENT 1 ON LINE 326 goto SKIP_ARCHIVE; 002603 aa 000421 7100 04 tra 273,ic 003224 STATEMENT 1 ON LINE 327 end; STATEMENT 1 ON LINE 329 inp.archive(archive_idx).entryname = archive_ename; 002604 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002605 aa 000144 4020 07 mpy 100,dl 002606 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002607 aa 7 00034 3735 06 epp7 pr7|28,ql inp.entryname 002610 aa 000 100 100 500 mlr (pr),(pr),fill(000) 002611 aa 6 00153 00 0040 desc9a pr6|107,32 archive_ename 002612 aa 7 00000 00 0040 desc9a pr7|0,32 inp.entryname STATEMENT 1 ON LINE 331 call initiate_file_ (archive_dname, archive_ename, access_mode, inp.archive (archive_idx).ptr, inp.archive (archive_idx).bc, code); 002613 aa 000000 6270 06 eax7 0,ql 002614 aa 464000 2360 03 ldq 157696,du 002615 aa 6 00371 7561 00 stq pr6|249 002616 aa 775211 2360 04 ldq -1399,ic 000027 = 404000000030 002617 aa 6 00413 7561 00 stq pr6|267 002620 aa 6 00101 3521 00 epp2 pr6|65 archive_dname 002621 aa 6 00462 2521 00 spri2 pr6|306 002622 aa 6 00153 3521 00 epp2 pr6|107 archive_ename 002623 aa 6 00464 2521 00 spri2 pr6|308 002624 aa 6 00100 3521 00 epp2 pr6|64 access_mode 002625 aa 6 00466 2521 00 spri2 pr6|310 002626 aa 6 00244 3715 20 epp5 pr6|164,* inpp 002627 aa 5 00030 3521 17 epp2 pr5|24,7 inp.ptr 002630 aa 6 00470 2521 00 spri2 pr6|312 002631 aa 5 00032 3521 17 epp2 pr5|26,7 inp.bc 002632 aa 6 00472 2521 00 spri2 pr6|314 002633 aa 6 00202 3521 00 epp2 pr6|130 code 002634 aa 6 00474 2521 00 spri2 pr6|316 002635 aa 775176 3520 04 epp2 -1410,ic 000033 = 526000000250 002636 aa 6 00476 2521 00 spri2 pr6|318 002637 aa 775231 3520 04 epp2 -1383,ic 000070 = 526000000040 002640 aa 6 00500 2521 00 spri2 pr6|320 002641 aa 775167 3520 04 epp2 -1417,ic 000030 = 516000000003 002642 aa 6 00502 2521 00 spri2 pr6|322 002643 aa 6 00371 3521 00 epp2 pr6|249 002644 aa 6 00504 2521 00 spri2 pr6|324 002645 aa 6 00413 3521 00 epp2 pr6|267 002646 aa 6 00506 2521 00 spri2 pr6|326 002647 aa 775214 3520 04 epp2 -1396,ic 000063 = 404000000043 002650 aa 6 00510 2521 00 spri2 pr6|328 002651 aa 6 00460 6211 00 eax1 pr6|304 002652 aa 030000 4310 07 fld 12288,dl 002653 aa 6 00044 3701 20 epp4 pr6|36,* 002654 la 4 00042 3521 20 epp2 pr4|34,* initiate_file_ 002655 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 334 if inp.archive (archive_idx).ptr = null () then do; 002656 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002657 aa 000144 4020 07 mpy 100,dl 002660 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002661 aa 6 00371 7561 00 stq pr6|249 002662 aa 7 00030 2371 06 ldaq pr7|24,ql inp.ptr 002663 aa 775235 6770 04 eraq -1379,ic 000120 = 077777000043 000001000000 002664 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 002665 aa 000047 6010 04 tnz 39,ic 002734 STATEMENT 1 ON LINE 335 if ignore_not_found then /* We can skip it */ if code = error_table_$noentry then do; 002666 aa 6 00247 2351 00 lda pr6|167 ignore_not_found 002667 aa 000010 6000 04 tze 8,ic 002677 002670 aa 6 00202 2361 00 ldq pr6|130 code 002671 aa 6 00044 3701 20 epp4 pr6|36,* 002672 la 4 00056 1161 20 cmpq pr4|46,* error_table_$noentry 002673 aa 000004 6010 04 tnz 4,ic 002677 STATEMENT 1 ON LINE 337 archive_idx = archive_idx - 1; 002674 aa 000001 3360 07 lcq 1,dl 002675 aa 6 00163 0561 00 asq pr6|115 archive_idx STATEMENT 1 ON LINE 338 goto SKIP_ARCHIVE; 002676 aa 000326 7100 04 tra 214,ic 003224 STATEMENT 1 ON LINE 339 end; STATEMENT 1 ON LINE 341 BAD_SEGMENT: call com_err_ (code, WHOAMI, "^a", inp.archive (archive_idx).path); 002677 aa 775134 2360 04 ldq -1444,ic 000033 = 526000000250 002700 aa 6 00413 7561 00 stq pr6|267 002701 aa 136141 2350 03 lda 48225,du 002702 aa 6 00512 7551 00 sta pr6|330 002703 aa 6 00163 2361 00 ldq pr6|115 archive_idx 002704 aa 000144 4020 07 mpy 100,dl 002705 aa 6 00202 3521 00 epp2 pr6|130 code 002706 aa 6 00434 2521 00 spri2 pr6|284 002707 aa 775072 3520 04 epp2 -1478,ic 000001 = 142151156144 002710 aa 6 00436 2521 00 spri2 pr6|286 002711 aa 6 00512 3521 00 epp2 pr6|330 002712 aa 6 00440 2521 00 spri2 pr6|288 002713 aa 6 00244 3735 20 epp7 pr6|164,* inpp 002714 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 002715 aa 6 00442 2521 00 spri2 pr6|290 002716 aa 775145 3520 04 epp2 -1435,ic 000063 = 404000000043 002717 aa 6 00444 2521 00 spri2 pr6|292 002720 aa 775150 3520 04 epp2 -1432,ic 000070 = 526000000040 002721 aa 6 00446 2521 00 spri2 pr6|294 002722 aa 775112 3520 04 epp2 -1462,ic 000034 = 524000000002 002723 aa 6 00450 2521 00 spri2 pr6|296 002724 aa 6 00413 3521 00 epp2 pr6|267 002725 aa 6 00452 2521 00 spri2 pr6|298 002726 aa 6 00432 6211 00 eax1 pr6|282 002727 aa 020000 4310 07 fld 8192,dl 002730 aa 6 00044 3701 20 epp4 pr6|36,* 002731 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002732 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 342 goto MAIN_RETURN; 002733 aa 776106 7100 04 tra -954,ic 001041 STATEMENT 1 ON LINE 343 end; STATEMENT 1 ON LINE 345 if ^inp.brief_opt /* Warn about empties */ & inp.archive (archive_idx).bc = 0 then call com_err_ (0, WHOAMI, "Warning: ^a is empty.", inp.archive (archive_idx).path); 002734 aa 7 00047 2351 00 lda pr7|39 inp.brief_opt 002735 aa 020000 3150 03 cana 8192,du 002736 aa 000042 6010 04 tnz 34,ic 003000 002737 aa 6 00371 7271 00 lxl7 pr6|249 002740 aa 7 00032 2361 17 ldq pr7|26,7 inp.bc 002741 aa 000037 6010 04 tnz 31,ic 003000 002742 aa 775071 2360 04 ldq -1479,ic 000033 = 526000000250 002743 aa 6 00413 7561 00 stq pr6|267 002744 aa 6 00512 4501 00 stz pr6|330 002745 aa 775177 2370 04 ldaq -1409,ic 000144 = 127141162156 151156147072 002746 aa 6 00414 7571 00 staq pr6|268 002747 aa 775177 2370 04 ldaq -1409,ic 000146 = 040136141040 151163040145 002750 aa 6 00416 7571 00 staq pr6|270 002751 aa 775177 2370 04 ldaq -1409,ic 000150 = 155160164171 056000000000 002752 aa 6 00420 7571 00 staq pr6|272 002753 aa 6 00512 3521 00 epp2 pr6|330 002754 aa 6 00434 2521 00 spri2 pr6|284 002755 aa 775024 3520 04 epp2 -1516,ic 000001 = 142151156144 002756 aa 6 00436 2521 00 spri2 pr6|286 002757 aa 6 00414 3521 00 epp2 pr6|268 002760 aa 6 00440 2521 00 spri2 pr6|288 002761 aa 7 77704 3521 17 epp2 pr7|-60,7 inp.path 002762 aa 6 00442 2521 00 spri2 pr6|290 002763 aa 775106 3520 04 epp2 -1466,ic 000071 = 404000000005 002764 aa 6 00444 2521 00 spri2 pr6|292 002765 aa 775103 3520 04 epp2 -1469,ic 000070 = 526000000040 002766 aa 6 00446 2521 00 spri2 pr6|294 002767 aa 775037 3520 04 epp2 -1505,ic 000026 = 524000000025 002770 aa 6 00450 2521 00 spri2 pr6|296 002771 aa 6 00413 3521 00 epp2 pr6|267 002772 aa 6 00452 2521 00 spri2 pr6|298 002773 aa 6 00432 6211 00 eax1 pr6|282 002774 aa 020000 4310 07 fld 8192,dl 002775 aa 6 00044 3701 20 epp4 pr6|36,* 002776 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 002777 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 349 call translator_info_$get_source_info (inp.archive (archive_idx).ptr, real_dname, real_ename, inp.archive (archive_idx).dtm, inp.archive (archive_idx).uid, code); 003000 aa 464000 2360 03 ldq 157696,du 003001 aa 6 00413 7561 00 stq pr6|267 003002 aa 775023 2360 04 ldq -1517,ic 000025 = 410000000107 003003 aa 6 00512 7561 00 stq pr6|330 003004 aa 775020 2360 04 ldq -1520,ic 000024 = 514000000044 003005 aa 6 00371 7561 00 stq pr6|249 003006 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003007 aa 000144 4020 07 mpy 100,dl 003010 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003011 aa 7 00030 3521 06 epp2 pr7|24,ql inp.ptr 003012 aa 6 00462 2521 00 spri2 pr6|306 003013 aa 6 00251 3521 00 epp2 pr6|169 real_dname 003014 aa 6 00464 2521 00 spri2 pr6|308 003015 aa 6 00323 3521 00 epp2 pr6|211 real_ename 003016 aa 6 00466 2521 00 spri2 pr6|310 003017 aa 7 00046 3521 06 epp2 pr7|38,ql inp.dtm 003020 aa 6 00470 2521 00 spri2 pr6|312 003021 aa 7 00044 3521 06 epp2 pr7|36,ql inp.uid 003022 aa 6 00472 2521 00 spri2 pr6|314 003023 aa 6 00202 3521 00 epp2 pr6|130 code 003024 aa 6 00474 2521 00 spri2 pr6|316 003025 aa 6 00413 3521 00 epp2 pr6|267 003026 aa 6 00476 2521 00 spri2 pr6|318 003027 aa 775004 3520 04 epp2 -1532,ic 000033 = 526000000250 003030 aa 6 00500 2521 00 spri2 pr6|320 003031 aa 775037 3520 04 epp2 -1505,ic 000070 = 526000000040 003032 aa 6 00502 2521 00 spri2 pr6|322 003033 aa 6 00512 3521 00 epp2 pr6|330 003034 aa 6 00504 2521 00 spri2 pr6|324 003035 aa 6 00371 3521 00 epp2 pr6|249 003036 aa 6 00506 2521 00 spri2 pr6|326 003037 aa 775024 3520 04 epp2 -1516,ic 000063 = 404000000043 003040 aa 6 00510 2521 00 spri2 pr6|328 003041 aa 6 00460 6211 00 eax1 pr6|304 003042 aa 030000 4310 07 fld 12288,dl 003043 aa 6 00044 3701 20 epp4 pr6|36,* 003044 la 4 00046 3521 20 epp2 pr4|38,* translator_info_$get_source_info 003045 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 351 if code ^= 0 then goto BAD_SEGMENT; 003046 aa 6 00202 2361 00 ldq pr6|130 code 003047 aa 777630 6010 04 tnz -104,ic 002677 STATEMENT 1 ON LINE 354 if (length (rtrim (real_dname)) + length (rtrim (real_ename)) + 1) > 168 then do; 003050 aa 000 000 165 500 tctr (pr) 003051 aa 6 00323 00 0040 desc9a pr6|211,32 real_ename 003052 aa 0 76605 0001 00 arg pr0|-635 = 777777777777 003053 aa 6 00056 0001 00 arg pr6|46 003054 aa 6 00056 2361 00 ldq pr6|46 003055 aa 0 00242 3761 00 anq pr0|162 = 000777777777 003056 aa 6 00413 7561 00 stq pr6|267 003057 aa 000040 2360 07 ldq 32,dl 003060 aa 6 00413 1761 00 sbq pr6|267 003061 aa 6 00413 7561 00 stq pr6|267 003062 aa 000 000 165 500 tctr (pr) 003063 aa 6 00251 00 0250 desc9a pr6|169,168 real_dname 003064 aa 0 76605 0001 00 arg pr0|-635 = 777777777777 003065 aa 6 00056 0001 00 arg pr6|46 003066 aa 6 00056 2361 00 ldq pr6|46 003067 aa 0 00242 3761 00 anq pr0|162 = 000777777777 003070 aa 6 00512 7561 00 stq pr6|330 003071 aa 000250 2360 07 ldq 168,dl 003072 aa 6 00512 1761 00 sbq pr6|330 003073 aa 6 00512 7561 00 stq pr6|330 003074 aa 6 00413 0761 00 adq pr6|267 003075 aa 000001 0760 07 adq 1,dl 003076 aa 000250 1160 07 cmpq 168,dl 003077 aa 000034 6044 04 tmoz 28,ic 003133 STATEMENT 1 ON LINE 355 call com_err_ (error_table_$pathlong, WHOAMI, "^a>^a", real_dname, real_ename); 003100 aa 774776 2370 04 ldaq -1538,ic 000076 = 136141076136 141000000000 003101 aa 6 00372 7571 00 staq pr6|250 003102 aa 6 00044 3701 20 epp4 pr6|36,* 003103 la 4 00060 3521 20 epp2 pr4|48,* error_table_$pathlong 003104 aa 6 00434 2521 00 spri2 pr6|284 003105 aa 774674 3520 04 epp2 -1604,ic 000001 = 142151156144 003106 aa 6 00436 2521 00 spri2 pr6|286 003107 aa 6 00372 3521 00 epp2 pr6|250 003110 aa 6 00440 2521 00 spri2 pr6|288 003111 aa 6 00251 3521 00 epp2 pr6|169 real_dname 003112 aa 6 00442 2521 00 spri2 pr6|290 003113 aa 6 00323 3521 00 epp2 pr6|211 real_ename 003114 aa 6 00444 2521 00 spri2 pr6|292 003115 aa 774746 3520 04 epp2 -1562,ic 000063 = 404000000043 003116 aa 6 00446 2521 00 spri2 pr6|294 003117 aa 774751 3520 04 epp2 -1559,ic 000070 = 526000000040 003120 aa 6 00450 2521 00 spri2 pr6|296 003121 aa 6 00456 2521 00 spri2 pr6|302 003122 aa 774707 3520 04 epp2 -1593,ic 000031 = 524000000005 003123 aa 6 00452 2521 00 spri2 pr6|298 003124 aa 774707 3520 04 epp2 -1593,ic 000033 = 526000000250 003125 aa 6 00454 2521 00 spri2 pr6|300 003126 aa 6 00432 6211 00 eax1 pr6|282 003127 aa 024000 4310 07 fld 10240,dl 003130 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003131 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 356 goto MAIN_RETURN; 003132 aa 775707 7100 04 tra -1081,ic 001041 STATEMENT 1 ON LINE 357 end; STATEMENT 1 ON LINE 359 inp.archive (archive_idx).real_path = rtrim (real_dname) || ">" || rtrim (real_ename); 003133 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003134 aa 000144 4020 07 mpy 100,dl 003135 aa 000000 6270 06 eax7 0,ql 003136 aa 6 00512 2361 00 ldq pr6|330 003137 aa 000001 0760 07 adq 1,dl 003140 aa 0 00551 7001 00 tsx0 pr0|361 alloc_cs 003141 aa 6 00512 2351 00 lda pr6|330 003142 aa 040 140 100 540 mlr (pr,rl),(pr,rl),fill(040) 003143 aa 6 00251 00 0005 desc9a pr6|169,al real_dname 003144 aa 2 00000 00 0005 desc9a pr2|0,al 003145 aa 040 105 100 404 mlr (ic),(pr,al),fill(040) 003146 aa 001677 00 0001 desc9a 959,1 005044 = 076000000000 003147 aa 2 00000 00 0001 desc9a pr2|0,1 003150 aa 6 00512 7561 00 stq pr6|330 003151 aa 6 00413 0761 00 adq pr6|267 003152 aa 6 00513 7561 00 stq pr6|331 003153 aa 0 00606 7001 00 tsx0 pr0|390 cat_realloc_cs 003154 aa 6 00512 2351 00 lda pr6|330 003155 aa 6 00413 2361 00 ldq pr6|267 003156 aa 040 145 100 540 mlr (pr,rl),(pr,rl,al),fill(040) 003157 aa 6 00323 00 0006 desc9a pr6|211,ql real_ename 003160 aa 2 00000 00 0006 desc9a pr2|0,ql 003161 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003162 aa 7 77756 3735 17 epp7 pr7|-18,7 inp.real_path 003163 aa 6 00513 2351 00 lda pr6|331 003164 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 003165 aa 2 00000 00 0005 desc9a pr2|0,al 003166 aa 7 00000 00 0250 desc9a pr7|0,168 inp.real_path STATEMENT 1 ON LINE 361 inp.archive (archive_idx).standalone_seg = standalone_segment; 003167 aa 0 01014 7001 00 tsx0 pr0|524 shorten_stack 003170 aa 6 00333 2351 00 lda pr6|219 standalone_segment 003171 aa 6 00244 3715 20 epp5 pr6|164,* inpp 003172 aa 5 00033 6751 17 era pr5|27,7 inp.standalone_seg 003173 aa 0 00002 3751 00 ana pr0|2 = 400000000000 003174 aa 5 00033 6551 17 ersa pr5|27,7 inp.standalone_seg STATEMENT 1 ON LINE 363 if archive_idx = 1 then /* Apply default value for output segment */ inp.bound_seg_name = substr (archive_ename, 1, (length (rtrim (archive_ename)) - (length (ARCHIVE_SUFFIX) + 1))); 003175 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003176 aa 000001 1160 07 cmpq 1,dl 003177 aa 000020 6010 04 tnz 16,ic 003217 003200 aa 000010 2360 07 ldq 8,dl 003201 aa 6 00513 7561 00 stq pr6|331 003202 aa 000 000 165 500 tctr (pr) 003203 aa 6 00153 00 0040 desc9a pr6|107,32 archive_ename 003204 aa 0 76605 0001 00 arg pr0|-635 = 777777777777 003205 aa 6 00056 0001 00 arg pr6|46 003206 aa 6 00056 2361 00 ldq pr6|46 003207 aa 0 00242 3761 00 anq pr0|162 = 000777777777 003210 aa 6 00371 7561 00 stq pr6|249 003211 aa 000040 2360 07 ldq 32,dl 003212 aa 6 00371 1761 00 sbq pr6|249 003213 aa 6 00513 1761 00 sbq pr6|331 003214 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 003215 aa 6 00153 00 0006 desc9a pr6|107,ql archive_ename 003216 aa 5 00011 00 0040 desc9a pr5|9,32 inp.bound_seg_name STATEMENT 1 ON LINE 367 if update_idx > 0 then /* Update the counts in the input */ inp.nupd = inp.nupd + 1; 003217 aa 6 00334 2361 00 ldq pr6|220 update_idx 003220 aa 000003 6044 04 tmoz 3,ic 003223 003221 aa 5 00022 0541 00 aos pr5|18 inp.nupd 003222 aa 000002 7100 04 tra 2,ic 003224 STATEMENT 1 ON LINE 369 else inp.narc = inp.narc + 1; 003223 aa 5 00021 0541 00 aos pr5|17 inp.narc STATEMENT 1 ON LINE 370 SKIP_ARCHIVE: end; STATEMENT 1 ON LINE 372 if char (arg, 1) = "-" & arg ^= "-segment" & arg ^= "-sm" then standalone_segment = "0"b; 003224 aa 6 00513 4501 00 stz pr6|331 003225 aa 6 00166 3735 20 epp7 pr6|118,* argp 003226 aa 6 00170 2351 00 lda pr6|120 argl 003227 aa 040 100 100 540 mlr (pr,rl),(pr),fill(040) 003230 aa 7 00000 00 0005 desc9a pr7|0,al arg 003231 aa 6 00513 00 0001 desc9a pr6|331,1 003232 aa 6 00513 2351 00 lda pr6|331 003233 aa 055000 1150 03 cmpa 23040,du 003234 aa 000013 6010 04 tnz 11,ic 003247 003235 aa 6 00170 2361 00 ldq pr6|120 argl 003236 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 003237 aa 7 00000 00 0006 desc9a pr7|0,ql arg 003240 aa 774650 00 0010 desc9a -1624,8 000106 = 055163145147 003241 aa 000006 6000 04 tze 6,ic 003247 003242 aa 040 004 106 540 cmpc (pr,rl),(ic),fill(040) 003243 aa 7 00000 00 0006 desc9a pr7|0,ql arg 003244 aa 774604 00 0003 desc9a -1660,3 000046 = 055163155000 003245 aa 000002 6000 04 tze 2,ic 003247 003246 aa 6 00333 4501 00 stz pr6|219 standalone_segment STATEMENT 1 ON LINE 374 argno = argno + 1; 003247 aa 6 00164 0541 00 aos pr6|116 argno STATEMENT 1 ON LINE 376 end; 003250 aa 775630 7100 04 tra -1128,ic 001100 STATEMENT 1 ON LINE 378 if inp.narc = 0 then do; 003251 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003252 aa 7 00021 2361 00 ldq pr7|17 inp.narc 003253 aa 000031 6010 04 tnz 25,ic 003304 STATEMENT 1 ON LINE 379 call com_err_ (error_table_$noarg, WHOAMI, "^/Usage:^-^a archive_path{s} {-update update_archive_path{s}} {-control_args}", WHOAMI); 003254 aa 000 100 100 404 mlr (ic),(pr),fill(000) 003255 aa 775265 00 0120 desc9a -1355,80 000541 = 136057125163 003256 aa 6 00432 00 0120 desc9a pr6|282,80 003257 aa 6 00044 3701 20 epp4 pr6|36,* 003260 la 4 00054 3521 20 epp2 pr4|44,* error_table_$noarg 003261 aa 6 00462 2521 00 spri2 pr6|306 003262 aa 774517 3520 04 epp2 -1713,ic 000001 = 142151156144 003263 aa 6 00464 2521 00 spri2 pr6|308 003264 aa 6 00432 3521 00 epp2 pr6|282 003265 aa 6 00466 2521 00 spri2 pr6|310 003266 aa 774513 3520 04 epp2 -1717,ic 000001 = 142151156144 003267 aa 6 00470 2521 00 spri2 pr6|312 003270 aa 774573 3520 04 epp2 -1669,ic 000063 = 404000000043 003271 aa 6 00472 2521 00 spri2 pr6|314 003272 aa 774576 3520 04 epp2 -1666,ic 000070 = 526000000040 003273 aa 6 00474 2521 00 spri2 pr6|316 003274 aa 6 00500 2521 00 spri2 pr6|320 003275 aa 774526 3520 04 epp2 -1706,ic 000023 = 524000000115 003276 aa 6 00476 2521 00 spri2 pr6|318 003277 aa 6 00460 6211 00 eax1 pr6|304 003300 aa 020000 4310 07 fld 8192,dl 003301 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003302 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 381 goto MAIN_RETURN; 003303 aa 775536 7100 04 tra -1186,ic 001041 STATEMENT 1 ON LINE 382 end; STATEMENT 1 ON LINE 384 if (update_idx > 0) & (inp.nupd = 0) & (^ignore_not_found) then do; 003304 aa 6 00334 2361 00 ldq pr6|220 update_idx 003305 aa 000033 6044 04 tmoz 27,ic 003340 003306 aa 7 00022 2361 00 ldq pr7|18 inp.nupd 003307 aa 000031 6010 04 tnz 25,ic 003340 003310 aa 6 00247 2351 00 lda pr6|167 ignore_not_found 003311 aa 000027 6010 04 tnz 23,ic 003340 STATEMENT 1 ON LINE 385 call com_err_ (0, WHOAMI, "-update was specified, but not followed by any update archive names."); 003312 aa 6 00513 4501 00 stz pr6|331 003313 aa 000 100 100 404 mlr (ic),(pr),fill(000) 003314 aa 775164 00 0104 desc9a -1420,68 000477 = 055165160144 003315 aa 6 00432 00 0104 desc9a pr6|282,68 003316 aa 6 00513 3521 00 epp2 pr6|331 003317 aa 6 00416 2521 00 spri2 pr6|270 003320 aa 774461 3520 04 epp2 -1743,ic 000001 = 142151156144 003321 aa 6 00420 2521 00 spri2 pr6|272 003322 aa 6 00432 3521 00 epp2 pr6|282 003323 aa 6 00422 2521 00 spri2 pr6|274 003324 aa 774545 3520 04 epp2 -1691,ic 000071 = 404000000005 003325 aa 6 00424 2521 00 spri2 pr6|276 003326 aa 774542 3520 04 epp2 -1694,ic 000070 = 526000000040 003327 aa 6 00426 2521 00 spri2 pr6|278 003330 aa 774472 3520 04 epp2 -1734,ic 000022 = 524000000104 003331 aa 6 00430 2521 00 spri2 pr6|280 003332 aa 6 00414 6211 00 eax1 pr6|268 003333 aa 014000 4310 07 fld 6144,dl 003334 aa 6 00044 3701 20 epp4 pr6|36,* 003335 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003336 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 386 goto MAIN_RETURN; 003337 aa 775502 7100 04 tra -1214,ic 001041 STATEMENT 1 ON LINE 387 end; STATEMENT 1 ON LINE 390 comp_info.version = ARCHIVE_COMPONENT_INFO_VERSION_1; 003340 aa 000001 2360 07 ldq 1,dl 003341 aa 6 00216 7561 00 stq pr6|142 comp_info.version STATEMENT 1 ON LINE 392 do archive_idx = 1 to inp.ntotal; 003342 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 003343 aa 6 00346 7561 00 stq pr6|230 003344 aa 000001 2360 07 ldq 1,dl 003345 aa 6 00163 7561 00 stq pr6|115 archive_idx 003346 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003347 aa 6 00346 1161 00 cmpq pr6|230 003350 aa 000777 6054 04 tpnz 511,ic 004347 STATEMENT 1 ON LINE 393 comp_ptr = null (); 003351 aa 774547 2370 04 ldaq -1689,ic 000120 = 077777000043 000001000000 003352 aa 6 00214 7571 00 staq pr6|140 comp_ptr STATEMENT 1 ON LINE 395 GET_NEXT_OBJECT: if inp.archive (archive_idx).standalone_seg then do; 003353 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003354 aa 000144 4020 07 mpy 100,dl 003355 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003356 aa 7 00033 2351 06 lda pr7|27,ql inp.standalone_seg 003357 aa 400000 3150 03 cana 131072,du 003360 aa 6 00513 7561 00 stq pr6|331 003361 aa 000016 6000 04 tze 14,ic 003377 STATEMENT 1 ON LINE 397 comp_info.comp_ptr = inp.archive (archive_idx).ptr; 003362 aa 7 00030 3715 26 epp5 pr7|24,ql* inp.ptr 003363 aa 6 00220 6515 00 spri5 pr6|144 comp_info.comp_ptr STATEMENT 1 ON LINE 398 comp_info.comp_bc = inp.archive (archive_idx).bc; 003364 aa 7 00032 2361 06 ldq pr7|26,ql inp.bc 003365 aa 6 00217 7561 00 stq pr6|143 comp_info.comp_bc STATEMENT 1 ON LINE 399 comp_info.name = inp.archive (archive_idx).entryname; 003366 aa 6 00513 7271 00 lxl7 pr6|331 003367 aa 7 00034 3535 17 epp3 pr7|28,7 inp.entryname 003370 aa 000 100 100 500 mlr (pr),(pr),fill(000) 003371 aa 3 00000 00 0040 desc9a pr3|0,32 inp.entryname 003372 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name STATEMENT 1 ON LINE 400 comp_info.time_updated, comp_info.time_modified = inp.archive (archive_idx).dtm; 003373 aa 7 00046 2371 17 ldaq pr7|38,7 inp.dtm 003374 aa 6 00234 7571 00 staq pr6|156 comp_info.time_updated 003375 aa 6 00232 7571 00 staq pr6|154 comp_info.time_modified STATEMENT 1 ON LINE 402 end; 003376 aa 000067 7100 04 tra 55,ic 003465 STATEMENT 1 ON LINE 404 else do; STATEMENT 1 ON LINE 405 call archive_$next_component_info (inp.archive (archive_idx).ptr, inp.archive (archive_idx).bc, comp_ptr, addr (comp_info), code); 003377 aa 6 00216 3715 00 epp5 pr6|142 comp_info 003400 aa 6 00372 6515 00 spri5 pr6|250 003401 aa 7 00030 3521 06 epp2 pr7|24,ql inp.ptr 003402 aa 6 00416 2521 00 spri2 pr6|270 003403 aa 7 00032 3521 06 epp2 pr7|26,ql inp.bc 003404 aa 6 00420 2521 00 spri2 pr6|272 003405 aa 6 00214 3521 00 epp2 pr6|140 comp_ptr 003406 aa 6 00422 2521 00 spri2 pr6|274 003407 aa 6 00372 3521 00 epp2 pr6|250 003410 aa 6 00424 2521 00 spri2 pr6|276 003411 aa 6 00202 3521 00 epp2 pr6|130 code 003412 aa 6 00426 2521 00 spri2 pr6|278 003413 aa 6 00414 6211 00 eax1 pr6|268 003414 aa 024000 4310 07 fld 10240,dl 003415 aa 6 00044 3701 20 epp4 pr6|36,* 003416 la 4 00016 3521 20 epp2 pr4|14,* archive_$next_component_info 003417 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 408 if code ^= 0 then do; 003420 aa 6 00202 2361 00 ldq pr6|130 code 003421 aa 000040 6000 04 tze 32,ic 003461 STATEMENT 1 ON LINE 409 call com_err_ (code, WHOAMI, "Searching ^a.", inp.archive (archive_idx).path); 003422 aa 774411 2360 04 ldq -1783,ic 000033 = 526000000250 003423 aa 6 00513 7561 00 stq pr6|331 003424 aa 774510 2370 04 ldaq -1720,ic 000134 = 123145141162 143150151156 003425 aa 6 00414 7571 00 staq pr6|268 003426 aa 774510 2370 04 ldaq -1720,ic 000136 = 147040136141 056000000000 003427 aa 6 00416 7571 00 staq pr6|270 003430 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003431 aa 000144 4020 07 mpy 100,dl 003432 aa 6 00202 3521 00 epp2 pr6|130 code 003433 aa 6 00434 2521 00 spri2 pr6|284 003434 aa 774345 3520 04 epp2 -1819,ic 000001 = 142151156144 003435 aa 6 00436 2521 00 spri2 pr6|286 003436 aa 6 00414 3521 00 epp2 pr6|268 003437 aa 6 00440 2521 00 spri2 pr6|288 003440 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003441 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 003442 aa 6 00442 2521 00 spri2 pr6|290 003443 aa 774420 3520 04 epp2 -1776,ic 000063 = 404000000043 003444 aa 6 00444 2521 00 spri2 pr6|292 003445 aa 774423 3520 04 epp2 -1773,ic 000070 = 526000000040 003446 aa 6 00446 2521 00 spri2 pr6|294 003447 aa 774352 3520 04 epp2 -1814,ic 000021 = 524000000015 003450 aa 6 00450 2521 00 spri2 pr6|296 003451 aa 6 00513 3521 00 epp2 pr6|331 003452 aa 6 00452 2521 00 spri2 pr6|298 003453 aa 6 00432 6211 00 eax1 pr6|282 003454 aa 020000 4310 07 fld 8192,dl 003455 aa 6 00044 3701 20 epp4 pr6|36,* 003456 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003457 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 410 goto MAIN_RETURN; 003460 aa 775361 7100 04 tra -1295,ic 001041 STATEMENT 1 ON LINE 411 end; STATEMENT 1 ON LINE 413 if comp_ptr = null () then /* Nothing more in this archive */ goto GET_NEXT_ARCHIVE; 003461 aa 6 00214 2371 00 ldaq pr6|140 comp_ptr 003462 aa 774436 6770 04 eraq -1762,ic 000120 = 077777000043 000001000000 003463 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 003464 aa 000661 6000 04 tze 433,ic 004345 STATEMENT 1 ON LINE 415 end; STATEMENT 1 ON LINE 417 if substr (reverse (rtrim (comp_info.name)), 1, 5) = reverse (".bind") then do; 003465 aa 000 000 165 500 tctr (pr) 003466 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name 003467 aa 0 76605 0001 00 arg pr0|-635 = 777777777777 003470 aa 6 00056 0001 00 arg pr6|46 003471 aa 6 00056 2361 00 ldq pr6|46 003472 aa 0 00242 3761 00 anq pr0|162 = 000777777777 003473 aa 6 00513 7561 00 stq pr6|331 003474 aa 000040 2360 07 ldq 32,dl 003475 aa 6 00513 1761 00 sbq pr6|331 003476 aa 6 00222 3521 00 epp2 pr6|146 comp_info.name 003477 aa 0 01227 7001 00 tsx0 pr0|663 set_cs_eis 003500 aa 6 00513 7561 00 stq pr6|331 003501 aa 0 01144 7001 00 tsx0 pr0|612 reverse_cs 003502 aa 6 00372 2521 00 spri2 pr6|250 003503 aa 6 00372 3735 20 epp7 pr6|250,* 003504 aa 7 00000 2351 00 lda pr7|0 003505 aa 7 00001 2361 00 ldq pr7|1 003506 aa 0 00132 3771 00 anaq pr0|90 = 777777777777 777000000000 003507 aa 774365 1170 04 cmpaq -1803,ic 000074 = 144156151142 056000000000 003510 aa 000170 6010 04 tnz 120,ic 003700 STATEMENT 1 ON LINE 418 if bindfile_flag then do; 003511 aa 0 01014 7001 00 tsx0 pr0|524 shorten_stack 003512 aa 6 00171 2351 00 lda pr6|121 bindfile_flag 003513 aa 000006 6000 04 tze 6,ic 003521 STATEMENT 1 ON LINE 419 if comp_info.name ^= bindfile_to_use then goto IGNORE_BINDFILE; 003514 aa 040 100 106 500 cmpc (pr),(pr),fill(040) 003515 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name 003516 aa 6 00172 00 0040 desc9a pr6|122,32 bindfile_to_use 003517 aa 000152 6010 04 tnz 106,ic 003671 STATEMENT 1 ON LINE 420 end; 003520 aa 000133 7100 04 tra 91,ic 003653 STATEMENT 1 ON LINE 422 else if inp.bindfilep ^= null () then do; 003521 aa 6 00244 3715 20 epp5 pr6|164,* inpp 003522 aa 5 00026 2371 00 ldaq pr5|22 inp.bindfilep 003523 aa 774375 6770 04 eraq -1795,ic 000120 = 077777000043 000001000000 003524 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 003525 aa 000126 6000 04 tze 86,ic 003653 STATEMENT 1 ON LINE 423 if archive_idx <= inp.narc then do; 003526 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003527 aa 5 00021 1161 00 cmpq pr5|17 inp.narc 003530 aa 000045 6054 04 tpnz 37,ic 003575 STATEMENT 1 ON LINE 424 if ^inp.brief_opt then /* Complain about it if not brief */ call com_err_ (0, WHOAMI, "Warning: Multiple bindfile ^a in ^a ignored.", comp_info.name, inp.archive (archive_idx).path); 003531 aa 5 00047 2351 00 lda pr5|39 inp.brief_opt 003532 aa 020000 3150 03 cana 8192,du 003533 aa 000136 6010 04 tnz 94,ic 003671 003534 aa 774277 2360 04 ldq -1857,ic 000033 = 526000000250 003535 aa 6 00513 7561 00 stq pr6|331 003536 aa 6 00371 4501 00 stz pr6|249 003537 aa 000 100 100 404 mlr (ic),(pr),fill(000) 003540 aa 774470 00 0054 desc9a -1736,44 000227 = 127141162156 003541 aa 6 00414 00 0054 desc9a pr6|268,44 003542 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003543 aa 000144 4020 07 mpy 100,dl 003544 aa 6 00371 3521 00 epp2 pr6|249 003545 aa 6 00434 2521 00 spri2 pr6|284 003546 aa 774233 3520 04 epp2 -1893,ic 000001 = 142151156144 003547 aa 6 00436 2521 00 spri2 pr6|286 003550 aa 6 00414 3521 00 epp2 pr6|268 003551 aa 6 00440 2521 00 spri2 pr6|288 003552 aa 6 00222 3521 00 epp2 pr6|146 comp_info.name 003553 aa 6 00442 2521 00 spri2 pr6|290 003554 aa 5 77704 3521 06 epp2 pr5|-60,ql inp.path 003555 aa 6 00444 2521 00 spri2 pr6|292 003556 aa 774313 3520 04 epp2 -1845,ic 000071 = 404000000005 003557 aa 6 00446 2521 00 spri2 pr6|294 003560 aa 774310 3520 04 epp2 -1848,ic 000070 = 526000000040 003561 aa 6 00450 2521 00 spri2 pr6|296 003562 aa 6 00454 2521 00 spri2 pr6|300 003563 aa 774262 3520 04 epp2 -1870,ic 000045 = 524000000054 003564 aa 6 00452 2521 00 spri2 pr6|298 003565 aa 6 00513 3521 00 epp2 pr6|331 003566 aa 6 00456 2521 00 spri2 pr6|302 003567 aa 6 00432 6211 00 eax1 pr6|282 003570 aa 024000 4310 07 fld 10240,dl 003571 aa 6 00044 3701 20 epp4 pr6|36,* 003572 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003573 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 428 goto IGNORE_BINDFILE; 003574 aa 000075 7100 04 tra 61,ic 003671 STATEMENT 1 ON LINE 429 end; STATEMENT 1 ON LINE 431 if ^inp.brief_opt then /* Mention it if not brief */ call com_err_ (0, WHOAMI, "Warning: ^a of ^a^/^2xreplaced by: ^a of ^a", inp.bindfile_name, inp.archive (inp.bindfile_idx).path, comp_info.name, inp.archive (archive_idx).path); 003575 aa 5 00047 2351 00 lda pr5|39 inp.brief_opt 003576 aa 020000 3150 03 cana 8192,du 003577 aa 000054 6010 04 tnz 44,ic 003653 003600 aa 774233 2360 04 ldq -1893,ic 000033 = 526000000250 003601 aa 6 00513 7561 00 stq pr6|331 003602 aa 6 00371 7561 00 stq pr6|249 003603 aa 6 00512 4501 00 stz pr6|330 003604 aa 000 100 100 404 mlr (ic),(pr),fill(000) 003605 aa 774410 00 0054 desc9a -1784,44 000214 = 127141162156 003606 aa 6 00414 00 0054 desc9a pr6|268,44 003607 aa 5 00046 2361 00 ldq pr5|38 inp.bindfile_idx 003610 aa 000144 4020 07 mpy 100,dl 003611 aa 000000 6270 06 eax7 0,ql 003612 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003613 aa 000144 4020 07 mpy 100,dl 003614 aa 6 00512 3521 00 epp2 pr6|330 003615 aa 6 00516 2521 00 spri2 pr6|334 003616 aa 774163 3520 04 epp2 -1933,ic 000001 = 142151156144 003617 aa 6 00520 2521 00 spri2 pr6|336 003620 aa 6 00414 3521 00 epp2 pr6|268 003621 aa 6 00522 2521 00 spri2 pr6|338 003622 aa 5 00031 3521 00 epp2 pr5|25 inp.bindfile_name 003623 aa 6 00524 2521 00 spri2 pr6|340 003624 aa 5 77704 3521 17 epp2 pr5|-60,7 inp.path 003625 aa 6 00526 2521 00 spri2 pr6|342 003626 aa 6 00222 3521 00 epp2 pr6|146 comp_info.name 003627 aa 6 00530 2521 00 spri2 pr6|344 003630 aa 5 77704 3521 06 epp2 pr5|-60,ql inp.path 003631 aa 6 00532 2521 00 spri2 pr6|346 003632 aa 774237 3520 04 epp2 -1889,ic 000071 = 404000000005 003633 aa 6 00534 2521 00 spri2 pr6|348 003634 aa 774234 3520 04 epp2 -1892,ic 000070 = 526000000040 003635 aa 6 00536 2521 00 spri2 pr6|350 003636 aa 6 00542 2521 00 spri2 pr6|354 003637 aa 6 00546 2521 00 spri2 pr6|358 003640 aa 774160 3520 04 epp2 -1936,ic 000020 = 524000000053 003641 aa 6 00540 2521 00 spri2 pr6|352 003642 aa 6 00513 3521 00 epp2 pr6|331 003643 aa 6 00544 2521 00 spri2 pr6|356 003644 aa 6 00371 3521 00 epp2 pr6|249 003645 aa 6 00550 2521 00 spri2 pr6|360 003646 aa 6 00514 6211 00 eax1 pr6|332 003647 aa 034000 4310 07 fld 14336,dl 003650 aa 6 00044 3701 20 epp4 pr6|36,* 003651 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003652 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 435 end; STATEMENT 1 ON LINE 437 inp.bindfilep = comp_info.comp_ptr; 003653 aa 6 00220 3735 20 epp7 pr6|144,* comp_info.comp_ptr 003654 aa 6 00244 3715 20 epp5 pr6|164,* inpp 003655 aa 5 00026 6535 00 spri7 pr5|22 inp.bindfilep STATEMENT 1 ON LINE 438 inp.bindfile_bc = comp_info.comp_bc; 003656 aa 6 00217 2361 00 ldq pr6|143 comp_info.comp_bc 003657 aa 5 00030 7561 00 stq pr5|24 inp.bindfile_bc STATEMENT 1 ON LINE 439 inp.bindfile_idx = archive_idx; 003660 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003661 aa 5 00046 7561 00 stq pr5|38 inp.bindfile_idx STATEMENT 1 ON LINE 440 inp.bindfile_name = comp_info.name; 003662 aa 000 100 100 500 mlr (pr),(pr),fill(000) 003663 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name 003664 aa 5 00031 00 0040 desc9a pr5|25,32 inp.bindfile_name STATEMENT 1 ON LINE 441 inp.bindfile_time_up = comp_info.time_updated; 003665 aa 6 00234 2371 00 ldaq pr6|156 comp_info.time_updated 003666 aa 5 00042 7571 00 staq pr5|34 inp.bindfile_time_up STATEMENT 1 ON LINE 442 inp.bindfile_time_mod = comp_info.time_modified; 003667 aa 6 00232 2371 00 ldaq pr6|154 comp_info.time_modified 003670 aa 5 00044 7571 00 staq pr5|36 inp.bindfile_time_mod STATEMENT 1 ON LINE 444 IGNORE_BINDFILE: /* Now that we have it, go on to the next component */ if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 003671 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003672 aa 000144 4020 07 mpy 100,dl 003673 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003674 aa 7 00033 2351 06 lda pr7|27,ql inp.standalone_seg 003675 aa 400000 3150 03 cana 131072,du 003676 aa 000447 6010 04 tnz 295,ic 004345 STATEMENT 1 ON LINE 446 else goto GET_NEXT_OBJECT; 003677 aa 777454 7100 04 tra -212,ic 003353 STATEMENT 1 ON LINE 447 end; STATEMENT 1 ON LINE 454 do obj_idx = 1 to inp.nobj; 003700 aa 6 00244 3715 20 epp5 pr6|164,* inpp 003701 aa 5 00024 2361 00 ldq pr5|20 inp.nobj 003702 aa 6 00347 7561 00 stq pr6|231 003703 aa 000001 2360 07 ldq 1,dl 003704 aa 6 00250 7561 00 stq pr6|168 obj_idx 003705 aa 000000 0110 03 nop 0,du 003706 aa 6 00250 2361 00 ldq pr6|168 obj_idx 003707 aa 6 00347 1161 00 cmpq pr6|231 003710 aa 000312 6054 04 tpnz 202,ic 004222 STATEMENT 1 ON LINE 455 if inp.obj (obj_idx).filename = comp_info.name then do; 003711 aa 000022 4020 07 mpy 18,dl 003712 aa 6 00513 7561 00 stq pr6|331 003713 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003714 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 003715 aa 000144 4020 07 mpy 100,dl 003716 aa 000050 0760 07 adq 40,dl 003717 aa 6 00371 7561 00 stq pr6|249 003720 aa 6 00513 0761 00 adq pr6|331 003721 aa 7 77756 3715 06 epp5 pr7|-18,ql inp.filename 003722 aa 040 100 106 500 cmpc (pr),(pr),fill(040) 003723 aa 5 00000 00 0040 desc9a pr5|0,32 inp.filename 003724 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name 003725 aa 000273 6010 04 tnz 187,ic 004220 STATEMENT 1 ON LINE 456 if archive_idx <= inp.narc then do; 003726 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003727 aa 7 00021 1161 00 cmpq pr7|17 inp.narc 003730 aa 000052 6054 04 tpnz 42,ic 004002 STATEMENT 1 ON LINE 457 call com_err_ (0, WHOAMI, "Duplicate object ^a in ^a", comp_info.name, inp.archive (archive_idx).path); 003731 aa 774102 2360 04 ldq -1982,ic 000033 = 526000000250 003732 aa 6 00512 7561 00 stq pr6|330 003733 aa 6 00413 4501 00 stz pr6|267 003734 aa 000 100 100 404 mlr (ic),(pr),fill(000) 003735 aa 774216 00 0034 desc9a -1906,28 000152 = 104165160154 003736 aa 6 00414 00 0034 desc9a pr6|268,28 003737 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003740 aa 000144 4020 07 mpy 100,dl 003741 aa 6 00413 3521 00 epp2 pr6|267 003742 aa 6 00434 2521 00 spri2 pr6|284 003743 aa 774036 3520 04 epp2 -2018,ic 000001 = 142151156144 003744 aa 6 00436 2521 00 spri2 pr6|286 003745 aa 6 00414 3521 00 epp2 pr6|268 003746 aa 6 00440 2521 00 spri2 pr6|288 003747 aa 6 00222 3521 00 epp2 pr6|146 comp_info.name 003750 aa 6 00442 2521 00 spri2 pr6|290 003751 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 003752 aa 6 00444 2521 00 spri2 pr6|292 003753 aa 774116 3520 04 epp2 -1970,ic 000071 = 404000000005 003754 aa 6 00446 2521 00 spri2 pr6|294 003755 aa 774113 3520 04 epp2 -1973,ic 000070 = 526000000040 003756 aa 6 00450 2521 00 spri2 pr6|296 003757 aa 6 00454 2521 00 spri2 pr6|300 003760 aa 774037 3520 04 epp2 -2017,ic 000017 = 524000000031 003761 aa 6 00452 2521 00 spri2 pr6|298 003762 aa 6 00512 3521 00 epp2 pr6|330 003763 aa 6 00456 2521 00 spri2 pr6|302 003764 aa 6 00432 6211 00 eax1 pr6|282 003765 aa 024000 4310 07 fld 10240,dl 003766 aa 6 00044 3701 20 epp4 pr6|36,* 003767 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 003770 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 460 error_sw = "1"b; 003771 aa 400000 2350 03 lda 131072,du 003772 aa 6 00246 7551 00 sta pr6|166 error_sw STATEMENT 1 ON LINE 462 if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 003773 aa 6 00163 2361 00 ldq pr6|115 archive_idx 003774 aa 000144 4020 07 mpy 100,dl 003775 aa 6 00244 3735 20 epp7 pr6|164,* inpp 003776 aa 7 00033 2351 06 lda pr7|27,ql inp.standalone_seg 003777 aa 400000 3150 03 cana 131072,du 004000 aa 000345 6010 04 tnz 229,ic 004345 STATEMENT 1 ON LINE 463 else goto GET_NEXT_OBJECT; 004001 aa 777352 7100 04 tra -278,ic 003353 STATEMENT 1 ON LINE 465 end; STATEMENT 1 ON LINE 467 inp.obj (obj_idx).base = comp_info.comp_ptr; 004002 aa 6 00371 2361 00 ldq pr6|249 004003 aa 000010 0760 07 adq 8,dl 004004 aa 6 00513 0761 00 adq pr6|331 004005 aa 6 00220 3535 20 epp3 pr6|144,* comp_info.comp_ptr 004006 aa 7 77756 2535 06 spri3 pr7|-18,ql inp.base STATEMENT 1 ON LINE 468 inp.obj (obj_idx).bitcount = comp_info.comp_bc; 004007 aa 6 00371 2361 00 ldq pr6|249 004010 aa 000012 0760 07 adq 10,dl 004011 aa 6 00513 0761 00 adq pr6|331 004012 aa 000000 6270 06 eax7 0,ql 004013 aa 6 00217 2361 00 ldq pr6|143 comp_info.comp_bc 004014 aa 7 77756 7561 17 stq pr7|-18,7 inp.bitcount STATEMENT 1 ON LINE 470 if inp.obj (obj_idx).time_mod > comp_info.time_modified then if ^inp.brief_opt then /* Mention it, in case the user has made a mistake */ call com_err_ (0, WHOAMI, "Note: ^a in ^a (modified ^a)^/^3xreplaced by earlier (^a) copy in ^a", comp_info.name, inp.archive (inp.obj (obj_idx).archive_idx).path, DATE_TIME (inp.obj (obj_idx).time_mod), DATE_TIME (comp_info.time_modified), inp.archive (archive_idx).path); 004015 aa 6 00371 2361 00 ldq pr6|249 004016 aa 000016 0760 07 adq 14,dl 004017 aa 6 00513 0761 00 adq pr6|331 004020 aa 6 00512 7561 00 stq pr6|330 004021 aa 7 77756 2371 06 ldaq pr7|-18,ql inp.time_mod 004022 aa 6 00232 1171 00 cmpaq pr6|154 comp_info.time_modified 004023 aa 000103 6044 04 tmoz 67,ic 004126 004024 aa 7 00047 2351 00 lda pr7|39 inp.brief_opt 004025 aa 020000 3150 03 cana 8192,du 004026 aa 000100 6010 04 tnz 64,ic 004126 004027 aa 774004 2360 04 ldq -2044,ic 000033 = 526000000250 004030 aa 6 00413 7561 00 stq pr6|267 004031 aa 6 00552 7561 00 stq pr6|362 004032 aa 6 00553 4501 00 stz pr6|363 004033 aa 000 100 100 404 mlr (ic),(pr),fill(000) 004034 aa 774423 00 0104 desc9a -1773,68 000456 = 116157164145 004035 aa 6 00432 00 0104 desc9a pr6|282,68 004036 aa 6 00371 2361 00 ldq pr6|249 004037 aa 000014 0760 07 adq 12,dl 004040 aa 6 00513 0761 00 adq pr6|331 004041 aa 7 77756 2361 06 ldq pr7|-18,ql inp.archive_idx 004042 aa 000144 4020 07 mpy 100,dl 004043 aa 6 00512 7261 00 lxl6 pr6|330 004044 aa 7 77756 3521 16 epp2 pr7|-18,6 inp.time_mod 004045 aa 6 00376 2521 00 spri2 pr6|254 004046 aa 6 00414 3521 00 epp2 pr6|268 004047 aa 6 00400 2521 00 spri2 pr6|256 004050 aa 6 00512 7561 00 stq pr6|330 004051 aa 6 00374 3521 00 epp2 pr6|252 004052 aa 010000 4310 07 fld 4096,dl 004053 aa 2 00000 7571 00 staq pr2|0 004054 aa 000522 6700 04 tsp4 338,ic 004576 004055 aa 000561 3520 04 epp2 369,ic 004636 = 000004000000 004056 aa 000520 6700 04 tsp4 336,ic 004576 004057 aa 6 00163 2361 00 ldq pr6|115 archive_idx 004060 aa 000144 4020 07 mpy 100,dl 004061 aa 6 00553 3521 00 epp2 pr6|363 004062 aa 6 00556 2521 00 spri2 pr6|366 004063 aa 773716 3520 04 epp2 -2098,ic 000001 = 142151156144 004064 aa 6 00560 2521 00 spri2 pr6|368 004065 aa 6 00432 3521 00 epp2 pr6|282 004066 aa 6 00562 2521 00 spri2 pr6|370 004067 aa 6 00222 3521 00 epp2 pr6|146 comp_info.name 004070 aa 6 00564 2521 00 spri2 pr6|372 004071 aa 6 00512 7271 00 lxl7 pr6|330 004072 aa 6 00244 3735 20 epp7 pr6|164,* inpp 004073 aa 7 77704 3521 17 epp2 pr7|-60,7 inp.path 004074 aa 6 00566 2521 00 spri2 pr6|374 004075 aa 6 00414 3521 00 epp2 pr6|268 004076 aa 6 00570 2521 00 spri2 pr6|376 004077 aa 6 00374 3521 00 epp2 pr6|252 004100 aa 6 00572 2521 00 spri2 pr6|378 004101 aa 7 77704 3521 06 epp2 pr7|-60,ql inp.path 004102 aa 6 00574 2521 00 spri2 pr6|380 004103 aa 773766 3520 04 epp2 -2058,ic 000071 = 404000000005 004104 aa 6 00576 2521 00 spri2 pr6|382 004105 aa 773763 3520 04 epp2 -2061,ic 000070 = 526000000040 004106 aa 6 00600 2521 00 spri2 pr6|384 004107 aa 6 00604 2521 00 spri2 pr6|388 004110 aa 773712 3520 04 epp2 -2102,ic 000022 = 524000000104 004111 aa 6 00602 2521 00 spri2 pr6|386 004112 aa 6 00413 3521 00 epp2 pr6|267 004113 aa 6 00606 2521 00 spri2 pr6|390 004114 aa 773702 3520 04 epp2 -2110,ic 000016 = 524000000016 004115 aa 6 00610 2521 00 spri2 pr6|392 004116 aa 6 00612 2521 00 spri2 pr6|394 004117 aa 6 00552 3521 00 epp2 pr6|362 004120 aa 6 00614 2521 00 spri2 pr6|396 004121 aa 6 00554 6211 00 eax1 pr6|364 004122 aa 040000 4310 07 fld 16384,dl 004123 aa 6 00044 3701 20 epp4 pr6|36,* 004124 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 004125 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 478 inp.obj (obj_idx).time_mod = comp_info.time_modified; 004126 aa 6 00250 2361 00 ldq pr6|168 obj_idx 004127 aa 000022 4020 07 mpy 18,dl 004130 aa 6 00413 7561 00 stq pr6|267 004131 aa 6 00244 3735 20 epp7 pr6|164,* inpp 004132 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004133 aa 000144 4020 07 mpy 100,dl 004134 aa 000050 0760 07 adq 40,dl 004135 aa 6 00552 7561 00 stq pr6|362 004136 aa 000016 0760 07 adq 14,dl 004137 aa 6 00413 0761 00 adq pr6|267 004140 aa 000000 6270 06 eax7 0,ql 004141 aa 6 00232 2371 00 ldaq pr6|154 comp_info.time_modified 004142 aa 7 77756 7571 17 staq pr7|-18,7 inp.time_mod STATEMENT 1 ON LINE 479 inp.obj (obj_idx).time_up = comp_info.time_updated; 004143 aa 6 00552 2361 00 ldq pr6|362 004144 aa 000020 0760 07 adq 16,dl 004145 aa 6 00413 0761 00 adq pr6|267 004146 aa 000000 6260 06 eax6 0,ql 004147 aa 6 00234 2371 00 ldaq pr6|156 comp_info.time_updated 004150 aa 7 77756 7571 16 staq pr7|-18,6 inp.time_up STATEMENT 1 ON LINE 480 inp.obj (obj_idx).archive_idx = archive_idx; 004151 aa 6 00552 2361 00 ldq pr6|362 004152 aa 000014 0760 07 adq 12,dl 004153 aa 6 00413 0761 00 adq pr6|267 004154 aa 000000 6250 06 eax5 0,ql 004155 aa 6 00163 2361 00 ldq pr6|115 archive_idx 004156 aa 7 77756 7561 15 stq pr7|-18,5 inp.archive_idx STATEMENT 1 ON LINE 482 inp.obj(obj_idx).to_be_ignored = (inp.obj(obj_idx).bitcount = 0); 004157 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004160 aa 000144 4020 07 mpy 100,dl 004161 aa 000062 0760 07 adq 50,dl 004162 aa 6 00413 0761 00 adq pr6|267 004163 aa 000000 6240 06 eax4 0,ql 004164 aa 6 00250 2361 00 ldq pr6|168 obj_idx 004165 aa 000022 4020 07 mpy 18,dl 004166 aa 000044 4020 07 mpy 36,dl 004167 aa 6 00552 7561 00 stq pr6|362 004170 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004171 aa 000144 4020 07 mpy 100,dl 004172 aa 000050 0760 07 adq 40,dl 004173 aa 000044 4020 07 mpy 36,dl 004174 aa 000647 0760 07 adq 423,dl 004175 aa 6 00552 0761 00 adq pr6|362 004176 aa 6 00413 7561 00 stq pr6|267 004177 aa 7 77756 2361 14 ldq pr7|-18,4 inp.bitcount 004200 aa 0 00512 7001 00 tsx0 pr0|330 r_e_as 004201 aa 6 00056 7551 00 sta pr6|46 004202 aa 6 00413 2361 00 ldq pr6|267 004203 aa 003 106 060 500 csl (pr),(pr,ql),fill(0),bool(move) 004204 aa 6 00056 00 0001 descb pr6|46,1 004205 aa 7 77756 00 0001 descb pr7|-18,1 inp.to_be_ignored STATEMENT 1 ON LINE 485 if inp.obj(obj_idx).bitcount = 0 then inp.zeroseg_seen = "1"b; 004206 aa 7 77756 2361 14 ldq pr7|-18,4 inp.bitcount 004207 aa 000003 6010 04 tnz 3,ic 004212 004210 aa 004000 2350 03 lda 2048,du 004211 aa 7 00047 2551 00 orsa pr7|39 inp.zeroseg_seen STATEMENT 1 ON LINE 488 if inp.archive (archive_idx).standalone_seg then goto GET_NEXT_ARCHIVE; 004212 aa 6 00163 2361 00 ldq pr6|115 archive_idx 004213 aa 000144 4020 07 mpy 100,dl 004214 aa 7 00033 2351 06 lda pr7|27,ql inp.standalone_seg 004215 aa 400000 3150 03 cana 131072,du 004216 aa 000127 6010 04 tnz 87,ic 004345 STATEMENT 1 ON LINE 489 else goto GET_NEXT_OBJECT; 004217 aa 777134 7100 04 tra -420,ic 003353 STATEMENT 1 ON LINE 491 end; STATEMENT 1 ON LINE 492 end; 004220 aa 6 00250 0541 00 aos pr6|168 obj_idx 004221 aa 777465 7100 04 tra -203,ic 003706 STATEMENT 1 ON LINE 500 obj_idx = inp.nobj + 1; 004222 aa 6 00244 3735 20 epp7 pr6|164,* inpp 004223 aa 7 00024 2361 00 ldq pr7|20 inp.nobj 004224 aa 000001 0760 07 adq 1,dl 004225 aa 6 00250 7561 00 stq pr6|168 obj_idx STATEMENT 1 ON LINE 502 inp.obj (obj_idx).filename = comp_info.name; 004226 aa 000022 4020 07 mpy 18,dl 004227 aa 6 00413 7561 00 stq pr6|267 004230 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004231 aa 000144 4020 07 mpy 100,dl 004232 aa 000050 0760 07 adq 40,dl 004233 aa 6 00552 7561 00 stq pr6|362 004234 aa 6 00413 0761 00 adq pr6|267 004235 aa 7 77756 3715 06 epp5 pr7|-18,ql inp.filename 004236 aa 000 100 100 500 mlr (pr),(pr),fill(000) 004237 aa 6 00222 00 0040 desc9a pr6|146,32 comp_info.name 004240 aa 5 00000 00 0040 desc9a pr5|0,32 inp.filename STATEMENT 1 ON LINE 503 inp.obj (obj_idx).option = ""b; 004241 aa 6 00552 2361 00 ldq pr6|362 004242 aa 000013 0760 07 adq 11,dl 004243 aa 6 00413 0761 00 adq pr6|267 004244 aa 777777 2350 07 lda 262143,dl 004245 aa 7 77756 3551 06 ansa pr7|-18,ql inp.option STATEMENT 1 ON LINE 505 inp.obj (obj_idx).base = comp_info.comp_ptr; 004246 aa 6 00552 2361 00 ldq pr6|362 004247 aa 000010 0760 07 adq 8,dl 004250 aa 6 00413 0761 00 adq pr6|267 004251 aa 6 00220 3535 20 epp3 pr6|144,* comp_info.comp_ptr 004252 aa 7 77756 2535 06 spri3 pr7|-18,ql inp.base STATEMENT 1 ON LINE 506 inp.obj (obj_idx).bitcount = comp_info.comp_bc; 004253 aa 6 00552 2361 00 ldq pr6|362 004254 aa 000012 0760 07 adq 10,dl 004255 aa 6 00413 0761 00 adq pr6|267 004256 aa 000000 6270 06 eax7 0,ql 004257 aa 6 00217 2361 00 ldq pr6|143 comp_info.comp_bc 004260 aa 7 77756 7561 17 stq pr7|-18,7 inp.bitcount STATEMENT 1 ON LINE 507 inp.obj (obj_idx).time_mod = comp_info.time_modified; 004261 aa 6 00552 2361 00 ldq pr6|362 004262 aa 000016 0760 07 adq 14,dl 004263 aa 6 00413 0761 00 adq pr6|267 004264 aa 000000 6260 06 eax6 0,ql 004265 aa 6 00232 2371 00 ldaq pr6|154 comp_info.time_modified 004266 aa 7 77756 7571 16 staq pr7|-18,6 inp.time_mod STATEMENT 1 ON LINE 508 inp.obj (obj_idx).time_up = comp_info.time_updated; 004267 aa 6 00552 2361 00 ldq pr6|362 004270 aa 000020 0760 07 adq 16,dl 004271 aa 6 00413 0761 00 adq pr6|267 004272 aa 000000 6250 06 eax5 0,ql 004273 aa 6 00234 2371 00 ldaq pr6|156 comp_info.time_updated 004274 aa 7 77756 7571 15 staq pr7|-18,5 inp.time_up STATEMENT 1 ON LINE 509 inp.obj (obj_idx).archive_idx = archive_idx; 004275 aa 6 00552 2361 00 ldq pr6|362 004276 aa 000014 0760 07 adq 12,dl 004277 aa 6 00413 0761 00 adq pr6|267 004300 aa 000000 6240 06 eax4 0,ql 004301 aa 6 00163 2361 00 ldq pr6|115 archive_idx 004302 aa 7 77756 7561 14 stq pr7|-18,4 inp.archive_idx STATEMENT 1 ON LINE 511 inp.obj(obj_idx).to_be_ignored = (inp.obj(obj_idx).bitcount = 0); 004303 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004304 aa 000144 4020 07 mpy 100,dl 004305 aa 000062 0760 07 adq 50,dl 004306 aa 6 00413 0761 00 adq pr6|267 004307 aa 000000 6230 06 eax3 0,ql 004310 aa 6 00250 2361 00 ldq pr6|168 obj_idx 004311 aa 000022 4020 07 mpy 18,dl 004312 aa 000044 4020 07 mpy 36,dl 004313 aa 6 00552 7561 00 stq pr6|362 004314 aa 7 00023 2361 00 ldq pr7|19 inp.ntotal 004315 aa 000144 4020 07 mpy 100,dl 004316 aa 000050 0760 07 adq 40,dl 004317 aa 000044 4020 07 mpy 36,dl 004320 aa 000647 0760 07 adq 423,dl 004321 aa 6 00552 0761 00 adq pr6|362 004322 aa 6 00413 7561 00 stq pr6|267 004323 aa 7 77756 2361 13 ldq pr7|-18,3 inp.bitcount 004324 aa 0 00512 7001 00 tsx0 pr0|330 r_e_as 004325 aa 6 00056 7551 00 sta pr6|46 004326 aa 6 00413 2361 00 ldq pr6|267 004327 aa 003 106 060 500 csl (pr),(pr,ql),fill(0),bool(move) 004330 aa 6 00056 00 0001 descb pr6|46,1 004331 aa 7 77756 00 0001 descb pr7|-18,1 inp.to_be_ignored STATEMENT 1 ON LINE 514 if inp.obj(obj_idx).bitcount = 0 then inp.zeroseg_seen = "1"b; 004332 aa 7 77756 2361 13 ldq pr7|-18,3 inp.bitcount 004333 aa 000003 6010 04 tnz 3,ic 004336 004334 aa 004000 2350 03 lda 2048,du 004335 aa 7 00047 2551 00 orsa pr7|39 inp.zeroseg_seen STATEMENT 1 ON LINE 516 inp.nobj = obj_idx; 004336 aa 6 00250 2361 00 ldq pr6|168 obj_idx 004337 aa 7 00024 7561 00 stq pr7|20 inp.nobj STATEMENT 1 ON LINE 518 if ^inp.archive (archive_idx).standalone_seg then goto GET_NEXT_OBJECT; 004340 aa 6 00163 2361 00 ldq pr6|115 archive_idx 004341 aa 000144 4020 07 mpy 100,dl 004342 aa 7 00033 2351 06 lda pr7|27,ql inp.standalone_seg 004343 aa 400000 3150 03 cana 131072,du 004344 aa 777007 6000 04 tze -505,ic 003353 STATEMENT 1 ON LINE 521 GET_NEXT_ARCHIVE: /* This "loop" is only reached after running out of */ /* components in an archive or processing a standalone */ end; 004345 aa 6 00163 0541 00 aos pr6|115 archive_idx 004346 aa 777000 7100 04 tra -512,ic 003346 STATEMENT 1 ON LINE 529 if error_sw then /* Reject the binding attempt, because something happened */ goto MAIN_RETURN; 004347 aa 6 00246 2351 00 lda pr6|166 error_sw 004350 aa 774471 6010 04 tnz -1735,ic 001041 STATEMENT 1 ON LINE 532 if inp.bindfilep = null () then do; 004351 aa 6 00244 3735 20 epp7 pr6|164,* inpp 004352 aa 7 00026 2371 00 ldaq pr7|22 inp.bindfilep 004353 aa 773545 6770 04 eraq -2203,ic 000120 = 077777000043 000001000000 004354 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 004355 aa 000106 6010 04 tnz 70,ic 004463 STATEMENT 1 ON LINE 533 if bindfile_flag then do; 004356 aa 6 00171 2351 00 lda pr6|121 bindfile_flag 004357 aa 000043 6000 04 tze 35,ic 004422 STATEMENT 1 ON LINE 534 call com_err_ ((0), WHOAMI, "Specified bindfile ^a was not found in the input archive^[s^].", bindfile_to_use, ((inp.narc + inp.nupd) ^= 1)); 004360 aa 6 00413 4501 00 stz pr6|267 004361 aa 000 100 100 404 mlr (ic),(pr),fill(000) 004362 aa 774035 00 0100 desc9a -2019,64 000416 = 123160145143 004363 aa 6 00432 00 0100 desc9a pr6|282,64 004364 aa 7 00021 2361 00 ldq pr7|17 inp.narc 004365 aa 7 00022 0761 00 adq pr7|18 inp.nupd 004366 aa 000001 1160 07 cmpq 1,dl 004367 aa 0 00515 7001 00 tsx0 pr0|333 r_ne_as 004370 aa 6 00552 7551 00 sta pr6|362 004371 aa 6 00413 3521 00 epp2 pr6|267 004372 aa 6 00462 2521 00 spri2 pr6|306 004373 aa 773406 3520 04 epp2 -2298,ic 000001 = 142151156144 004374 aa 6 00464 2521 00 spri2 pr6|308 004375 aa 6 00432 3521 00 epp2 pr6|282 004376 aa 6 00466 2521 00 spri2 pr6|310 004377 aa 6 00172 3521 00 epp2 pr6|122 bindfile_to_use 004400 aa 6 00470 2521 00 spri2 pr6|312 004401 aa 6 00552 3521 00 epp2 pr6|362 004402 aa 6 00472 2521 00 spri2 pr6|314 004403 aa 773466 3520 04 epp2 -2250,ic 000071 = 404000000005 004404 aa 6 00474 2521 00 spri2 pr6|316 004405 aa 773463 3520 04 epp2 -2253,ic 000070 = 526000000040 004406 aa 6 00476 2521 00 spri2 pr6|318 004407 aa 6 00502 2521 00 spri2 pr6|322 004410 aa 773405 3520 04 epp2 -2299,ic 000015 = 524000000076 004411 aa 6 00500 2521 00 spri2 pr6|320 004412 aa 773424 3520 04 epp2 -2284,ic 000036 = 514000000001 004413 aa 6 00504 2521 00 spri2 pr6|324 004414 aa 6 00460 6211 00 eax1 pr6|304 004415 aa 024000 4310 07 fld 10240,dl 004416 aa 6 00044 3701 20 epp4 pr6|36,* 004417 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 004420 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 537 goto MAIN_RETURN; 004421 aa 774420 7100 04 tra -1776,ic 001041 STATEMENT 1 ON LINE 538 end; STATEMENT 1 ON LINE 540 else /* No bindfiles specified or found -- Warning */ if ^inp.brief_opt then /* But only if we're allowed to be noisy */ call com_err_ (0, WHOAMI, "Warning: No bindfile was found in the input archive^[s^].", ((inp.narc + inp.nupd) ^= 1)); 004422 aa 7 00047 2351 00 lda pr7|39 inp.brief_opt 004423 aa 020000 3150 03 cana 8192,du 004424 aa 000037 6010 04 tnz 31,ic 004463 004425 aa 6 00552 4501 00 stz pr6|362 004426 aa 000 100 100 404 mlr (ic),(pr),fill(000) 004427 aa 773674 00 0074 desc9a -2116,60 000322 = 127141162156 004430 aa 6 00374 00 0074 desc9a pr6|252,60 004431 aa 7 00021 2361 00 ldq pr7|17 inp.narc 004432 aa 7 00022 0761 00 adq pr7|18 inp.nupd 004433 aa 000001 1160 07 cmpq 1,dl 004434 aa 0 00515 7001 00 tsx0 pr0|333 r_ne_as 004435 aa 6 00413 7551 00 sta pr6|267 004436 aa 6 00552 3521 00 epp2 pr6|362 004437 aa 6 00434 2521 00 spri2 pr6|284 004440 aa 773341 3520 04 epp2 -2335,ic 000001 = 142151156144 004441 aa 6 00436 2521 00 spri2 pr6|286 004442 aa 6 00374 3521 00 epp2 pr6|252 004443 aa 6 00440 2521 00 spri2 pr6|288 004444 aa 6 00413 3521 00 epp2 pr6|267 004445 aa 6 00442 2521 00 spri2 pr6|290 004446 aa 773423 3520 04 epp2 -2285,ic 000071 = 404000000005 004447 aa 6 00444 2521 00 spri2 pr6|292 004450 aa 773420 3520 04 epp2 -2288,ic 000070 = 526000000040 004451 aa 6 00446 2521 00 spri2 pr6|294 004452 aa 773410 3520 04 epp2 -2296,ic 000062 = 524000000071 004453 aa 6 00450 2521 00 spri2 pr6|296 004454 aa 773362 3520 04 epp2 -2318,ic 000036 = 514000000001 004455 aa 6 00452 2521 00 spri2 pr6|298 004456 aa 6 00432 6211 00 eax1 pr6|282 004457 aa 020000 4310 07 fld 8192,dl 004460 aa 6 00044 3701 20 epp4 pr6|36,* 004461 la 4 00022 3521 20 epp2 pr4|18,* com_err_ 004462 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 544 end; STATEMENT 1 ON LINE 546 call bind_ (inpp); 004463 aa 6 00244 3521 00 epp2 pr6|164 inpp 004464 aa 6 00416 2521 00 spri2 pr6|270 004465 aa 6 00414 6211 00 eax1 pr6|268 004466 aa 004000 4310 07 fld 2048,dl 004467 aa 6 00044 3701 20 epp4 pr6|36,* 004470 la 4 00020 3521 20 epp2 pr4|16,* bind_ 004471 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 548 goto MAIN_RETURN; 004472 aa 774347 7100 04 tra -1817,ic 001041 STATEMENT 1 ON LINE 599 end bind; BEGIN PROCEDURE CLEAN_UP ENTRY TO CLEAN_UP STATEMENT 1 ON LINE 552 CLEAN_UP: proc (); 004473 da 000267200000 004474 aa 000140 6270 00 eax7 96 004475 aa 7 00034 3521 20 epp2 pr7|28,* 004476 aa 2 01047 2721 00 tsp2 pr2|551 int_entry 004477 aa 000000000000 004500 aa 000000000000 STATEMENT 1 ON LINE 559 if inpp ^= null then do; 004501 aa 6 00040 3735 20 epp7 pr6|32,* 004502 aa 7 00244 2371 00 ldaq pr7|164 inpp 004503 aa 773415 6770 04 eraq -2291,ic 000120 = 077777000043 000001000000 004504 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 004505 aa 000070 6000 04 tze 56,ic 004575 STATEMENT 1 ON LINE 560 do idx = 1 to inp.ntotal; 004506 aa 7 00244 3715 20 epp5 pr7|164,* inpp 004507 aa 5 00023 2361 00 ldq pr5|19 inp.ntotal 004510 aa 6 00104 7561 00 stq pr6|68 004511 aa 000001 2360 07 ldq 1,dl 004512 aa 6 00100 7561 00 stq pr6|64 idx 004513 aa 000000 0110 03 nop 0,du 004514 aa 6 00100 2361 00 ldq pr6|64 idx 004515 aa 6 00104 1161 00 cmpq pr6|68 004516 aa 000032 6054 04 tpnz 26,ic 004550 STATEMENT 1 ON LINE 561 if inp.archive (idx).ptr ^= null () then do; 004517 aa 000144 4020 07 mpy 100,dl 004520 aa 6 00040 3735 20 epp7 pr6|32,* 004521 aa 7 00244 3715 20 epp5 pr7|164,* inpp 004522 aa 6 00105 7561 00 stq pr6|69 004523 aa 5 00030 2371 06 ldaq pr5|24,ql inp.ptr 004524 aa 773374 6770 04 eraq -2308,ic 000120 = 077777000043 000001000000 004525 aa 0 00460 3771 00 anaq pr0|304 = 077777000077 777777077077 004526 aa 000020 6000 04 tze 16,ic 004546 STATEMENT 1 ON LINE 562 tempp = inp.archive (idx).ptr; 004527 aa 6 00105 7271 00 lxl7 pr6|69 004530 aa 5 00030 3535 37 epp3 pr5|24,7* inp.ptr 004531 aa 6 00102 2535 00 spri3 pr6|66 tempp STATEMENT 1 ON LINE 563 inp.archive (idx).ptr = null (); 004532 aa 773366 2370 04 ldaq -2314,ic 000120 = 077777000043 000001000000 004533 aa 5 00030 7571 17 staq pr5|24,7 inp.ptr STATEMENT 1 ON LINE 564 call hcs_$terminate_noname (tempp, (0)); 004534 aa 6 00105 4501 00 stz pr6|69 004535 aa 6 00102 3521 00 epp2 pr6|66 tempp 004536 aa 6 00110 2521 00 spri2 pr6|72 004537 aa 6 00105 3521 00 epp2 pr6|69 004540 aa 6 00112 2521 00 spri2 pr6|74 004541 aa 6 00106 6211 00 eax1 pr6|70 004542 aa 010000 4310 07 fld 4096,dl 004543 aa 6 00044 3701 20 epp4 pr6|36,* 004544 la 4 00040 3521 20 epp2 pr4|32,* hcs_$terminate_noname 004545 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 565 end; STATEMENT 1 ON LINE 566 end; 004546 aa 6 00100 0541 00 aos pr6|64 idx 004547 aa 777745 7100 04 tra -27,ic 004514 STATEMENT 1 ON LINE 568 call release_temp_segment_ (WHOAMI, inpp, (0)); 004550 aa 6 00105 4501 00 stz pr6|69 004551 aa 773230 3520 04 epp2 -2408,ic 000001 = 142151156144 004552 aa 6 00116 2521 00 spri2 pr6|78 004553 aa 6 00040 3735 20 epp7 pr6|32,* 004554 aa 7 00244 3521 00 epp2 pr7|164 inpp 004555 aa 6 00120 2521 00 spri2 pr6|80 004556 aa 6 00105 3521 00 epp2 pr6|69 004557 aa 6 00122 2521 00 spri2 pr6|82 004560 aa 773310 3520 04 epp2 -2360,ic 000070 = 526000000040 004561 aa 6 00124 2521 00 spri2 pr6|84 004562 aa 773302 3520 04 epp2 -2366,ic 000064 = 464000000000 004563 aa 6 00126 2521 00 spri2 pr6|86 004564 aa 773277 3520 04 epp2 -2369,ic 000063 = 404000000043 004565 aa 6 00130 2521 00 spri2 pr6|88 004566 aa 6 00114 6211 00 eax1 pr6|76 004567 aa 014000 4310 07 fld 6144,dl 004570 aa 6 00044 3701 20 epp4 pr6|36,* 004571 la 4 00044 3521 20 epp2 pr4|36,* release_temp_segment_ 004572 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 569 binder_invoked = "0"b; 004573 aa 6 00044 3701 20 epp4 pr6|36,* 004574 ia 4 00010 4501 00 stz pr4|8 binder_invoked STATEMENT 1 ON LINE 570 end; STATEMENT 1 ON LINE 572 return; 004575 aa 0 00631 7101 00 tra pr0|409 return STATEMENT 1 ON LINE 573 end CLEAN_UP; END PROCEDURE CLEAN_UP BEGIN PROCEDURE DATE_TIME ENTRY TO DATE_TIME STATEMENT 1 ON LINE 577 DATE_TIME: proc (P_time) returns (char (14)); 004576 aa 6 00350 6501 00 spri4 pr6|232 004577 aa 6 00352 2521 00 spri2 pr6|234 STATEMENT 1 ON LINE 585 call date_time_ (P_time, date_str); 004600 aa 2 00002 3521 20 epp2 pr2|2,* P_time 004601 aa 6 00620 2521 00 spri2 pr6|400 004602 aa 6 00362 3521 00 epp2 pr6|242 date_str 004603 aa 6 00622 2521 00 spri2 pr6|402 004604 aa 773221 3520 04 epp2 -2415,ic 000025 = 410000000107 004605 aa 6 00624 2521 00 spri2 pr6|404 004606 aa 773206 3520 04 epp2 -2426,ic 000014 = 526000000030 004607 aa 6 00626 2521 00 spri2 pr6|406 004610 aa 6 00616 6211 00 eax1 pr6|398 004611 aa 010000 4310 07 fld 4096,dl 004612 aa 6 00044 3701 20 epp4 pr6|36,* 004613 la 4 00030 3521 20 epp2 pr4|24,* date_time_ 004614 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 587 substr (ret_str, 1, 8) = substr (date_str, 1, 8); 004615 aa 6 00362 2371 00 ldaq pr6|242 date_str 004616 aa 6 00356 7571 00 staq pr6|238 ret_str STATEMENT 1 ON LINE 588 substr (ret_str, 9, 1) = " "; 004617 aa 040000 2350 03 lda 16384,du 004620 aa 6 00360 5511 40 stba pr6|240,40 ret_str STATEMENT 1 ON LINE 589 substr (ret_str, 10, 2) = substr (date_str, 11, 2); 004621 aa 6 00364 2351 00 lda pr6|244 date_str 004622 aa 000011 7350 00 als 9 004623 aa 6 00360 5511 30 stba pr6|240,30 ret_str STATEMENT 1 ON LINE 590 substr (ret_str, 12, 1) = ":"; 004624 aa 000072 2350 07 lda 58,dl 004625 aa 6 00360 5511 04 stba pr6|240,04 ret_str STATEMENT 1 ON LINE 591 substr (ret_str, 13, 2) = substr (date_str, 13, 2); 004626 aa 6 00365 2351 00 lda pr6|245 date_str 004627 aa 6 00361 5511 60 stba pr6|241,60 ret_str STATEMENT 1 ON LINE 593 return (ret_str); 004630 aa 6 00352 3735 20 epp7 pr6|234,* 004631 aa 7 00004 3715 20 epp5 pr7|4,* 004632 aa 040 100 100 500 mlr (pr),(pr),fill(040) 004633 aa 6 00356 00 0016 desc9a pr6|238,14 ret_str 004634 aa 5 00000 00 0016 desc9a pr5|0,14 004635 aa 6 00350 6101 00 rtcd pr6|232 STATEMENT 1 ON LINE 594 end DATE_TIME; END PROCEDURE DATE_TIME END PROCEDURE bd ----------------------------------------------------------- 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