THIS FILE IS DAMAGED  cP xbull01 j|QEy AV0057 TT cwAV9tape_mult_ =,1QEy AV0183 T |yT\AVtape_mult_ _#QJm<AV0234 Tv T1"PAVtape_mult_ QOzAV0213 T!TwAVtape_mult_ QAV0002 TA:T AVtape_mult_ qQ/AV0153 TMTMb?AVtape_mult_ Q;2AV0161 Tѹ{T PAVtape_mult_ wQ=AV0154 TR>]TR&AVtape_mult_ rQTAV0176 T=TR/AVtape_mult_ }QAV0229 Tbp=Tb AVtape_mult_ wQAV0104 TT뫝fAVhtape_mult_ qQAV0036 TmDTmY4AV$tape_mult_ ~QAV0098 To@?TqAVbtape_mult_ QAV0170 TunTu*^`AVtape_mult_ vQrAV0236 T 2T AVtape_mult_ tQAV0089 T~ܴT)_AVYtape_mult_ rQ$DAV0126 T ;T , AV~tape_mult_ zQ<AV0069 TL*?Tb$pAVEtape_mult_ QJMAV0105 TTAVitape_mult_ QG8AV0094 T+BTAV^tape_mult_ rQ[AV0184 T{TvAVtape_mult_ Qf*AV0238 TTAVtape_mult_ Q{AV0202 T!lYT!`AVtape_mult_ QAV0226 TToAVtape_mult_ vQ{AV0155 Tr#TAVtape_mult_ qQAAV0092 Tĵ_TĶAV\tape_mult_ QAV0136 T7[ T7xAVtape_mult_ qQ;AV0004 Tǽ-Tǽ?AVtape_mult_ uQ"AV0232 TnPmAV>tape_mult_ rR AV0112 TnkTɃAVptape_mult_ rRAV0172 Tnh2Tn}ѼAVtape_mult_ R AV0083 TH %Tɹ@iAVStape_mult_ (GR AV0037 Tm/T%\AV%tape_mult_ m1R AV0201 T=m]T{OAVtape_mult_ (*RAV0187 Th}>T{AVtape_mult_ sRAV0240 TDT:AVtape_mult_ sR'AV0151 T Q%T dAVtape_mult_ rR-AV0060 T ?IT P4+AV-8TZOM=AV tape_mult_ RPπAV0012 TtTuAV tape_mult_ RQ; AV0133 TxTAVtape_mult_ wRQAV0133 T`-TflAVtape_mult_ sRQQAV0133 T`OYTf]AVtape_mult_ sRQrAV0133 Tc(Tj'}AVtape_mult_ sRQyAV0146 TR-NTiDAVtape_mult_ RR8AV0146 T5x3T5AAVtape_mult_ RSAV0146 TkTs$AVtape_mult_ sRSVAV0146 T#=TAVtape_mult_ sRTrAV0146 T'T'#HAVtape_mult_ sRT=AV0146 TwqTw!nAVtape_mult_ sRUAV0044 TvT\AV,tape xRvUAV0022 T!7T!AVtape_mult_ xRv AV0022 Tp؈Tp7dAVtape_mult_ xRwAV0022 TXHTAVtape_mult_ xRxFAV0022 T3T;AVtape_mult_ xRxAV0095 T!T!AAV_tape_mult_ wRxAV0084 T%~T%AVTtape_mult_ xRxTAV0035 T(vT(AV#tape_mult_ wRx AV0035 TC+*TCAV#tape_mult_ wRxuAV0035 T^u>T^BAV#tape_mult_ wRx6AV0035 TySTy!3 AV#tape_mult_ xRyKAV0035 TTAVtape_mult_ wRy"AV0140 TT AVtape_mult_ wRyAV0140 T?TךAVtape_mult_ wRy_AV0100 T3UvTDAVdtape_mult_ wRz\AV0115 TegTlAVstape_mult_ xRzhAV0115 Th(jTh0 AVstape_mult_ wR{ AV0235 T,T}AVtape_mult_ wR|"AV0235 TT^AVtape_mult_ wR|dAV0235 TYTYkAVtape_mult_ wR}AV0235 T4T"UAVtape_mult_ wR}AV0067 TbTAVCtape_mult_ wR}_AV0101 TTAVetape_mult_ wR} AV0101 T!TćAVetape_mult_ wR}xAV0101 T^TrAVetape_mult_ wR}~AV0066 TyTcAVBtape_mult_ wFMCTL_1 Huen Multics z22Hussein Multics Tׄ,CtoPalmer Multics iZT5CoStadie Multics _WT`pe =^Swanson Multics CbQT[gC 22B0Thompson N.Multics y7'SCN`Roe Multics g ZSJqC|oSkeet N.Multics CQT~Mallmes Multics s2TM&~Fex Maryniuk Multics iߗZUTC\ J McGirr N.Multics &pSM 4@F.  Kramer Multics CkQTi#bnt  Elliott Multics  (S8@Z 0 Fournier Multics ˦@itTR|VC, Henry Multics 'Sm4CvdHuen N.Multics 8T\zV,H6Flegel Multics CQTs#8CHZClayton Multics ngTJa0vDonaldson Multics :@@Sd{^CoElhard N.Multics leQT}^QC~AWTaylor Multics Q|o T Cb0Jnf;G3ZR}Multics Storage System Volume bull04 bull04 Bull Kj!SBf{mF bT KT "T o9T~yTT' /* Name of command on whose behalf binder is being invoked */ 3 13 3 14 2 bound_seg_name char (32) unaligned, /* name of new bound segment */ 3 15 3 16 2 narc fixed bin, /* number of input archive files */ 3 17 2 nupd fixed bin, /* number of update archive files */ 3 18 2 ntotal fixed bin, /* total number of input and update files */ 3 19 2 nobj fixed bin, /* number of objects to be bound */ 3 20 3 21 2 bindfilep pointer, /* pointer to bindfile */ 3 22 2 bindfile_bc fixed bin (24), /* bitcount of bindfile */ 3 23 2 bindfile_name char (32) unaligned, /* name of bindfile */ 3 24 2 bindfile_time_up fixed bin (71), /* date updated in archive */ 3 25 2 bindfile_time_mod fixed bin (71), /* date last modified */ 3 26 2 bindfile_idx fixed bin, /* index of archive bindfile was in */ 3 27 3 28 2 options aligned, 3 29 3 debug bit (1) unaligned, /* 1-> debug option ON */ 3 30 3 list_seg bit (1) unaligned, /* 1 -> make list seg */ 3 31 3 map_opt bit (1) unaligned, /* 1 -> map option */ 3 32 3 list_opt bit (1) unaligned, /* 1 -> list option */ 3 33 3 brief_opt bit (1) unaligned, /* 1 -> brief option */ 3 34 3 force_order_opt bit (1) unaligned, /* 1 -> force_order option from command line */ 3 35 3 zeroseg_seen bit (1) unaligned, /* 1 -> a zero-length object is in the obj array */ 3 36 3 flags_pad bit(29) unaligned, 3 37 /* ---- any additions to the include file must be made before 3 38* the "archive" substructure, as inp.ntotal is incremented 3 39* and the structure is extended as we pick up the names of 3 40* archives/segs from the command line arguments. Similarly, 3 41* after inp.ntotal is determined, the "obj" substructure is 3 42* filled and inp.nobj is incremented as we open up each 3 43* archive and take the necessary information from the 3 44* components. To allocate the structure, the user must first 3 45* set NTOTAL and NOBJ, allocate the structure and then set 3 46* inp.notal and inp.nobj; otherwise, this structure must be 3 47* declared in a temporary segment. */ 3 48 3 49 2 archive (NTOTAL refer (inp.ntotal)) aligned, /* info about input archives/segs, for source map, etc. */ 3 50 3 path char (168) unaligned, /* for identifying archive */ 3 51 3 real_path char (168) unaligned, /* determined by translator_info_ */ 3 52 3 ptr pointer, /* pointer to archive */ 3 53 3 bc fixed bin (24), /* and its bitcount */ 3 54 3 standalone_seg bit (1) unaligned, /* 1 -> standalone_seg;0 -> archive */ 3 55 3 entryname char (32), /* entryname of segment */ 3 56 3 uid bit (36) aligned, /* unique id of archive */ 3 57 3 dtm fixed bin (71), /* date-time modified of archive */ 3 58 3 59 3 60 2 obj (NOBJ refer (inp.nobj)) aligned like obj; 3 61 3 62 3 63 dcl 1 obj aligned based (p), /* declaration of single input entry */ 3 64 2 filename char (32) unaligned, 3 65 2 base pointer, /* pointer to base of object segment */ 3 66 2 bitcount fixed bin (24), /* bitcount of object segment */ 3 67 2 option bit (18) unaligned, /* pointer into option structure */ 3 68 2 new_order fixed bin(9) unsigned unaligned, /* new position from XXX_Order statement */ 3 69 2 to_be_ignored bit(1) unaligned, /* mentioned in Ignore statement or is zero-length */ 3 70 2 objectname_stmt bit(1) unaligned, /* mentioned in objectname: statement */ 3 71 2 flag bit (1) unaligned, /* This word of unaligned bits ought to be a substructure, */ 3 72 2 pad bit (6) unaligned, /* but if it is, pl1 scope-of-names stupidly rejects refs */ 3 73 /* to obj.flag as "ambiguous", because of inp.obj.flag */ 3 74 2 archive_idx fixed bin, /* index of archive from which this component comes */ 3 75 2 time_mod fixed bin (71), /* DTCM of component (from archive) */ 3 76 2 time_up fixed bin (71); /* Time updated in archive */ 3 77 3 78 3 79 dcl BINDER_INPUT_VERSION_2 char (4) aligned internal static options (constant) init ("BI.2"); 3 80 dcl (NOBJ, NTOTAL) fixed bin init (0); 3 81 3 82 3 83 /* END INCLUDE FILE ... binder_input.incl.pl1 */ 187 188 4 1 /* BEGIN INCLUDE SEGMENT ... symbol_block.incl.pl1 4 2*coded February 8, 1972 by Michael J. Spier */ 4 3 4 4 /* last modified may 3, 1972 by M. Weaver */ 4 5 4 6 declare 1 sb aligned based(sblkp), /* structure describing a standard symbol block */ 4 7 2 decl_vers fixed bin, /* version number of current structure format */ 4 8 2 identifier char(8) aligned, /* symbolic code to define purpose of this symb block */ 4 9 2 gen_version_number fixed bin, /* positive integer designating version of object generator */ 4 10 2 gen_creation_time fixed bin(71), /* clock reading of date/time generator was created */ 4 11 2 obj_creation_time fixed bin(71), /* clock reading of date/time object was generated */ 4 12 2 generator char(8) aligned, /* name of processor which generated segment */ 4 13 2 gen_name_offset bit(18) unaligned, /* offset of generator name in words rel to base of symbol block */ 4 14 2 gen_name_length bit(18) unaligned, /* length of printable generator version name in characters */ 4 15 2 uid_offset bit(18) unaligned, /* offset of creator id in words rel to base of symbol block */ 4 16 2 uid_length bit(18) unaligned, /* length of standard Multics id of object creator in characters */ 4 17 2 comment_offset bit(18) unaligned, /* offset of comment in words relative to base of symbol block */ 4 18 2 comment_length bit(18) unaligned, /* length of printable generator comment in characters */ 4 19 2 tbound bit(18) unaligned, /* specifies mod of text section base boundary */ 4 20 2 stat_bound bit(18) unaligned, /* specifies mod of internal static base boundary */ 4 21 2 source_map bit(18) unaligned, /* offset relative to base of symbol block of source map structure */ 4 22 2 area_ptr bit(18) unaligned, /* offset of block info in words relative to base of symbol block */ 4 23 2 symb_base bit(18) unaligned, /* back pointer (rel to base of symb block) to base of symb section */ 4 24 2 block_size bit(18) unaligned, /* size in words of entire symbol block */ 4 25 2 next_block bit(18) unaligned, /* if ^= "0"b, is thread (rel to base of symb section) to next symb block */ 4 26 2 rel_text bit(18) unaligned, /* offset rel to base of symbol block of text sect relocation info */ 4 27 2 rel_def bit(18) unaligned, /* offset rel to base of symb block of def section relocation info */ 4 28 2 rel_link bit(18) unaligned, /* offset rel to base of symb block of link sect relocation info */ 4 29 2 rel_symb bit(18) unaligned, /* offset rel to base of symb block of symb sect relocation info */ 4 30 2 default_truncate bit(18) unaligned, /* offset RTBOSB for binder to automatically trunc. symb sect. */ 4 31 2 optional_truncate bit(18) unaligned; /* offset RTBOSB for binder to optionally truncate symb section */ 4 32 4 33 /* END INCLUDE SEGMENT ... symbol_block.incl.pl1 */ 189 190 5 1 /* BEGIN INCLUDE SEGMENT ... bind_map.incl.pl1 Michael J. Spier, 4/29/71 */ 5 2 /* last modified April, 1972 by M. Weaver */ 5 3 5 4 declare 1 bindmap aligned based(bmp), 5 5 5 6 2 dcl_version fixed bin, /* version number of this structure = 1 */ 5 7 2 n_components fixed bin, /* number of entries in this array */ 5 8 2 component(0 refer(bindmap.n_components)) aligned, 5 9 TǽۚTǽَAVtape_mult_ Q"AV0232 T>AT>-!AVtape_mult_ Q1:#AV0147 TЗTХ4AVtape_mult_ Q6CsAV0190 TShTSOAVtape_mult_ Q;RCAV0196 T:bT?-AVtape_mult_ Q@U&AV0054 TWTWWAV6tape_mult_  QESAV0173 TFTBkAVtape_mult_ QTfAV0021 Th4ThAVtape_mult_  QYAV0065 TTSeAVAtape_mult_ SQ^%AV0239 TnjTnЀAVtape_mult_ YQcAV0030 TS)TWcAVtape_mult_ QhѐAV0169 Tv6[Tv_AVtape_mult_ Q}AV0025 T߃5T߃W=AVtape_mult_ Q&AV0135 TɎ=TAVtape_mult_ Q=AV0050 TTAV2tape_mult_ Q>MAV0110 T TAVntape_mult_ Qa9AV0011 T暓TxAV tape_mult_ QAV0152 TBbTBfkAVtape_mult_ "Qy0AV0182 TR?T_AVtape_mult_ 8Q]AV0081 T$TT$AVQtape_mult_ Q%AV0191 TRaTYAVtape_mult_ QAV0039 T1OT1AV'tape_mult_ QAV0132 T_TEAVtape_mult_ QAV0019 T:T: AVtape_mult_ QAV0038 T T AAV&tape_mult_ bQAV0197 TFTFAVtape_mult_ Q#AV0181 TTTAVtape_mult_ Q@AV0108 TRTR6CAVltape_mult_ HQ@AV0043 Tҙh'TҬ/iAV+tape_mult_ QL#AV0073 TU`=TUAVItape_mult_ Q[AV0079 TLEm_mult_ RT=AV0146 Tw'fTw)zAVtape_mult_ RUAV0044 TTFAV,tape_mult_ RUAV0185 T5׆T?AVtape_mult_ RU3rAV0085 T)T AVUtape_mult_ RUAV0085 TG4TH6SAVUtape_mult_ RU AV0085 T1TzAVUtape_mult_ RUuEAV0085 T +T oAVUtape_mult_ RUAV0085 T] T?AVUtape_mult_ R`AV0139 TljJTlrAVtape_mult_ RkKAV0230 T;TC$AVtape_mult_ RkQAV0024 T HTܮAVtape_mult_ RlPAV0024 T%}T%؊5AVtape_mult_ Rl AV0024 Tu Tu5AVtape_mult_ RmAV0024 T}eT~rAVtape_mult_ RnSAV0024 T¦TAVtape_mult_ Rn\AV0227 T_TAVtape_mult_ RnrAV0045 T T aAV-tape_mult_ RnމAV0045 T8zT8{AV0022 TѶTѻgAVtape_mult_ RvUAV0022 T!@T! '>AVtape_mult_ Rv AV0022 Tp0Tp棘AVtape_mult_ RwAV0022 T~TRAVtape_mult_ RxFAV0022 T@`wTAAVtape_mult_ RxAV0095 T!IT!AV_tape_mult_ RxAV0084 T%T%1AVTtape_mult_ RxTAV0035 T(BT(AV#tape_mult_ Rx AV0035 TCTCAV#tape_mult_ RxuAV0035 T^9yT^p'AV#tape_mult_ Rx6AV0035 Ty'rTy(AV#tape_mult_ RyKAV0035 T]TAV#tape_mult_ RypAV0140 TzT{AVtape_mult_ Ry"AV0140 T"TO^AVtape_mult_ RyAV0100 TTAVdtape_mult_ Ry_AV0100 TJDTK;AVdtape_mult_ Rz\AV0115 TueTwAVstape_mult_ RzhAV0115 Th;5Th=rUAVstape_mult_ R{ AV0235 TTJAVtape_mult_ R|"AV0235 T"TAVtape_mult_ R|dAV0235 TYTY wAVtape_mult_ R}AV0235 T+ȸT,]AVtape_mult_ R}AV0067 TTHAVCtape_mult_ R}_AV0101 T6TAVetape_mult_ R} AV0101 TđTĒZAVetape_mult_ R}xAV0101 T~T߁wAVetape_mult_ R}~AV0066 T*TIAVBtape_mult_ 100 real_path 122 based char(168) array level 3 packed unaligned dcl 3-10 ref 100 100 rel builtin function dcl 54 ref 116 116 relp based bit(18) level 2 packed unaligned dcl 167 set ref 174* rtrim builtin function dcl 54 ref 100 100 134 134 sb based structure level 1 dcl 4-6 sblkp 000112 automatic pointer dcl 48 set ref 79* 86 86 94 95 110 113 141 141 141 175 size 1 based fixed bin(17,0) level 2 dcl 64 set ref 98* smp 000116 automatic pointer dcl 48 set ref 94* 97 98 100 100 101 102 source_map 16 based bit(18) level 2 in structure "sb" packed unaligned dcl 4-6 in procedure "make_bindmap_" set ref 95* source_map based structure level 1 dcl 64 in procedure "make_bindmap_" sp based structure level 1 dcl 167 stat_lng 6(18) based bit(18) array level 3 packed unaligned dcl 5-4 set ref 127* stat_start 6 based bit(18) array level 3 packed unaligned dcl 5-4 set ref 126* string parameter char unaligned dcl 163 ref 148 172 177 stringpointer parameter pointer dcl 163 ref 148 173 174 substr builtin function dcl 54 set ref 86 86 122 122 177* symb_lng 7(18) based bit(18) array level 3 packed unaligned dcl 5-4 set ref 130* symb_start 7 based bit(18) array level 3 packed unaligned dcl 5-4 set ref 128* text_lng 5(18) based bit(18) array level 3 packed unaligned dcl 5-4 set ref 125* text_start 5 based bit(18) array level 3 packed unaligned dcl 5-4 set ref 124* uid 3 based bit(36) array level 3 in structure "source_map" dcl 64 in procedure "make_bindmap_" set ref 101* uid 210 based bit(36) array level 3 in structure "inp" dcl 3-10 in procedure "make_bindmap_" ref 101 uid_offset 13 based bit(18) level 2 packed unaligned dcl 4-6 set ref 86 86 141 val 000102 automatic fixed bin(17,0) dcl 45 set ref 116* 117 w_string1 000120 automatic char(32) dcl 50 set ref 82* 83 86 86 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. BINDER_INPUT_VERSION_2 internal static char(4) initial dcl 3-79 bx_$addname external static fixed bin(17,0) dcl 1-58 bx_$addname_limit external static fixed bin(17,0) dcl 1-24 bx_$adnp external static pointer dcl 1-36 bx_$area_begin external static fixed bin(18,0) dcl 1-25 bx_$bdefp external static pointer dcl 1-38 bx_$bindmap_def exte ń*@pņSMP ń$*@pņ,*@pņ$4 *@pņ,<|*@pņ4X*@pņbH*@ņjZornes ńx*@pņD*@ ņBGee ńZ*@pņ*@pņL*@pņ *@pņjH*@ņt&ņHura'user_registration.mbx ņPZG3`Irań*@0ņH*@ņ2user.mbx ņn*@ņ|*@ņz*@ņI+n|Haphx21403 Fs'$|HaG,ń@ r@=L S>6&H &z & Mwzzar,Attendees RyҨ2Ia *@ SysDaemon *@ Elliott Multics r& Mw_aTransactions RL2Ÿza *@ *@ & Mw_a.Proceedings.1 RL2Ÿz..a *@ *@ PItani Multics khSg:.@4"Elliott Multics { wS86\&n ----------------------------------------------------------- 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