THIS FILE IS DAMAGED t4Ld|yq i$a<YTQlIA91)!, D\t4Ld|yq i$a<YTQlIA91)!, D\t4Ld|yq i$a<YTQlIA91)!, D\t4Ld|yqi(a@YXQpIA91)!4 Ld| $<Tlyqi,aDY\QtIA91)!4 Ld| $<Tlyqi,aDY\QtIA91)!4 Ld| $<TlT7P#T7P`T5CT5?T5;KT3_dtT3_`T3_\TT0wT0}bT0yT.nT.nT.n$T,T,T,T*}ݥT*}ِT*}XT(T(T(T%T%T%T#IT#CT#T!T!~T!/T$T$T$lT{T_TT4 T4T4:T%T! TTCBTC>TC:gT^T[TVvTR{'TRxTRsT٘cTٔPTُT aoT aoT a$T T ѲT eTpTpTpT,T TT*GT'4T"TGTCuT?2TcT`T[~T*T|TwTs!TT TT%OT%@T%TտTѣTgT4'T4T4TTT nTTC-TC)TC%BTITFTA}TReTRaTR]TڂT~TzTaZTaATaT;T3TTpTpԨTp%T3T!TTހTހ Tހ OT-T)qT%;TُITُFyTُBcTfTbT^T՞T՞ T՞zT%/T%&T%TЭOTЭ=TЭT4T4T4ВT̼T̼T̼TD3TD.TD TͫTͧTͣTT?TT:TTTmThT0TdTcTc|TTTTs:Ts6Ts2TW{TSpTOTr TnTjT T mT TTTDTTTTTT;T(T'T'TbTJTT7;T77T737TWITS3TOTFsTFpqTFlXT͑eT͍[TGAVabb06 tructure unaligned, 6 12 3 file_number bit(8), 6 13 3 line_number bit(14), 6 14 3 statement_number bit(5), 6 15 2 next ptr unaligned, 6 16 2 back ptr unaligned, 6 17 2 root ptr unaligned, 6 18 2 labels ptr unaligned, 6 19 2 reference_list ptr unaligned, 6 20 2 state_list ptr unaligned, 6 21 2 reference_count fixed(17) unaligned, 6 22 2 ref_count_copy fixed(17) unaligned, 6 23 2 object structure unaligned, 6 24 3 start fixed(17), 6 25 3 finish fixed(17), 6 26 2 source structure unaligned, 6 27 3 segment fixed(11), 6 28 3 start fixed(23), 6 29 3 length fixed(11), 6 30 2 prefix bit(12) unaligned, 6 31 2 optimized bit(1) unaligned, 6 32 2 free_temps bit(1) unaligned, 6 33 2 LHS_in_RHS bit(1) unaligned, 6 34 2 statement_type bit(9) unaligned, 6 35 2 bits structure unaligned, 6 36 3 processed bit(1) unaligned, 6 37 3 put_in_profile bit(1) unaligned, 6 38 3 generated bit(1) unaligned, 6 39 3 snap bit(1) unaligned, 6 40 3 system bit(1) unaligned, 6 41 3 irreducible bit(1) unaligned, 6 42 3 checked bit(1) unaligned, 6 43 3 save_temps bit(1) unaligned, 6 44 3 suppress_warnings bit(1) unaligned, 6 45 3 force_nonquick bit(1) unaligned, 6 46 3 expanded_by_name bit(1) unaligned, 6 47 3 begins_loop bit(1) unaligned, 6 48 3 pad bit(24) unaligned; 6 49 6 50 /* END INCLUDE FILE ... statement.incl.pl1 */ 44 7 1 /* BEGIN INCLUDE FILE ... block.incl.pl1 */ 7 2 /* Modified 22 Ocober 1980 by M. N. Davidoff to increase max block.number to 511 */ 7 3 /* format: style3,idind30 */ 7 4 7 5 declare 1 block aligned based, 7 6 2 node_type bit (9) unaligned, 7 7 2 source_id structure unaligned, 7 8 3 file_number bit (8), 7 9 3 line_number bit (14), 7 10 3 statement_number bit (5), 7 11 2 father ptr unaligned, 7 12 2 brother ptr unaligned, 7 13 2 son ptr unaligned, 7 14 2 declaration ptr unaligned, 7 15 2 end_declaration ptr unaligned, 7 16 2 default ptr unaligned, 7 17 2 end_default ptr unaligned, 7 18 2 context ptr unaligned, 7 19 2 prologue ptr unaligned, 7 20 2 end_prologue ptr unaligned, 7 21 2 main ptr unaligned, 7 22 2 end_main ptr unaligned, 7 23 2 return_values ptr unaligned, 7 24 2 return_count ptr unaligned, 7 25 2 plio_ps ptr unaligned, 7 26 2 plio_fa ptr unaligned, 7 27 2 plio_ffsb ptr unaligned, 7 28 2 plio_ssl ptr unaligned, 7 29 2 plio_fab2 ptr unaligned, 7 30 2 block_type bit (9) unaligned, 7 31 2 prefix bit (12) unaligned, 7 32 2 like_attribute bit (1) unaligned, 7 33 2 no_stack bit (1) unaligned, 7 34 2 get_data bit (1) unaligned, 7 35 2 flush_at_call bit (1) unaligned, 7 36 2 processed bit (1) unaligned, 7 37 2 text_displayed bit (1) unaligned, 7 38 2 number fixed bin (9) unsigned unaligned, 7 39 2 free_temps dimension (3) ptr, /* these fields are used by the code generator */ 7 40 2 temp_list ptr, 7 41 2 entry_list ptr, 7 42 2 o_and_s ptr, 7 43 2 why_nonquick aligned, 7 44 3 auto_adjustable_storage bit (1) unaligned, 7 45 3 returns_star_extents bit (1) unaligned, 7 46 3 stack_extended_by_args bit (1) unaligned, 7 47 3 invoked_by_format bit (1) unaligned, 7 48 3 format_statement bit (1) unaligned, 7 49 3 io_statements bit (1) unaligned, 7 50 3 assigned_to_entry_var bit (1) unaligned, 7 51 3 condition_statements bit (1) unaligned, 7 52 3 no_owner bit (1) unaligned, 7 53 3 recursive_call bit (1) unaligned, 7 54 3 options_non_quick bit (1) unaligned, 7 55 3 options_variable bit (1) unaligned, 7 56 3 never_referenced bit (1) unaligned, 7 57 3 pad_nonquick bit (5) unaligned, 7 58 2 prologue_flag bit (1) unaligned, 7 59 2 options_main bit (1) unaligned, 7 60 2 pad bit (16) unaligned, 7 61 2 number_of_entries fixed bin (17), 7 62 2 level fixed bin (17), 7 63 2 last_auto_loc fixed bin (17), 7 64 2 symbol_block fixed bin (17), 7 65 2 entry_info fixed bin (18), 7 66 2 enter structure unaligned, 7 67 3 start fixed bin (17), 7 68 3 end fixed bin (17), 7 69 2 leave structure unaligned, 7 70 3 start fixed bin (17), 7 71 3 end fixed bin (17), 7 72 2 owner ptr; 7 73 7 74 declare max_block_number fixed bin internal static options (constant) initial (511); 7 75 7 76 /* END INCLUDE FILE ... block.incl.pl1 */ 45 8 1 /* BEGIN INCLUDE FILE ... nodes.incl.pl1 */ 8 2 8 3 /* Modified: 26 Dec 1979 by PCK to implement by name assignment */ 8 4 8 5 dcl ( block_node initial("000000001"b), 8 6 statement_node initial("000000010"b), 8 7 operator_node initial("000000011"b), 8 8 reference_node initial("000000100"b), 8 9 token_node initial("000000101"b), 8 10 symbol_node initial("000000110"b), 8 11 context_node initial("000000111"b), 8 12 array_node initial("000001000"b), 8 13 bound_node initial("000001001"b), 8 14 format_value_node initial("000001010"b), 8 15 list_node initial("000001011"b), 8 16 default_node initial("000001100"b), 8 17 machine_state_node initial("000001101"b), 8 18 source_node initial("000001110"b), 8 19 label_node initial("000001111"b), 8 20 cross_reference_node initial("000010000"b), 8 21 sf_par_node initial("000010001"b), 8 22 temporary_node initial("000010010"b), 8 23 label_array_element_node initial("000010011"b), 8 24 by_name_agg_node initial("000010100"b)) 8 25 bit(9) internal static aligned options(constant); 8 26 8 27 dcl 1 node based aligned, 8 28 2 type unal bit(9), 8 29 2 source_id unal structure, 8 30 3 file_number bit(8), 8 31 3 line_number bit(14), 8 32 3 statement_number bit(5); 8 33 8 34 /* END INCLUDE FILE ... nodes.incl.pl1 */ 46 9 1 /* statement types */ 9 2 9 3 dcl ( unknown_statement initial("000000000"b), 9 4 allocate_statement initial("000000001"b), 9 5 assignment_statement initial("000000010"b), 9 6 begin_statement initial("000000011"b), 9 7 call_statement initial("000000100"b), 9 8 close_statement initial("000000101"b), 9 9 declare_statement initial("000000110"b), 9 10 lock_statement initial("000000111"b), 9 11 delete_statement initial("000001000"b), 9 12 display_statement initial("000001001"b), 9 13 do_statement initial("000001010"b), 9 14 else_clause initial("000001011"b), 9 15 end_statement initial("000001100"b), 9 16 entry_statement initial("000001101"b), 9 17 exit_statement initial("000001110"b), 9 18 format_statement initial("000001111"b), 9 19 free_statement initial("000010000"b), 9 20 get_statement initial("000010001"b), 9 21 goto_statement initial("000010010"b), 9 22 if_statement initial("000010011"b), 9 23 locate_statement initial("000010100"b), 9 24 null_statement initial("000010101"b), 9 25 on_statement initial("000010110"b), 9 26 open_statement initial("000010111"b), 9 27 procedure_statement initial("000011000"b), 9 28 put_statement initial("000011001"b), 9 29 read_statement initial("000011010"b), 9 30 return_statement initial("000011011"b), 9 31 revert_statement initial("000011100"b), 9 32 rewrite_statement initial("000011101"b), 9 TBBAVrpv root_01 T9$AV abb01 abb02 TፕzAVlrpv root_01 root_02 root_03 root_04 tr01 bull01 bull02 bull03 bull04 bull05 pub_01 pub_02 pub_03 pub_04 pub_05 pub_06 pub_07 pub_08 abb01 abb02 abb03 abb04 abb05  based bit(1) level 2 packed unaligned dcl 6-9 set ref 77* p 000104 automatic pointer dcl 19 set ref 66* 68 68 72* 75 76 77 77 77 77 79 79 79 79 98 99 100 101 104 105 106 107 110 111 113 113 113 113 117 120 121 122 123 125 128 129 130 131 143 148 148 160 166 170 172 180 181 182 184 185 189 190 191 192 192 195 pl1_stat_$cur_block 000020 external static pointer dcl 26 ref 139 190 191 pl1_stat_$cur_statement 000022 external static pointer dcl 26 ref 88 pl1_stat_$free_ptr 000024 external static pointer array dcl 26 set ref 66 68* pl1_stat_$node_uses 000010 external static fixed bin(17,0) array dcl 25 set ref 71* 71 pl1_stat_$source_seg 000012 external static fixed bin(11,0) dcl 26 ref 104 pl1_stat_$st_length 000014 external static fixed bin(11,0) dcl 26 ref 106 pl1_stat_$st_start 000016 external static fixed bin(23,0) dcl 26 ref 105 pl1_stat_$statement_id 000032 external static structure level 1 packed unaligned dcl 2-6 ref 107 pl1_stat_$token_list_ptr 000030 external static pointer dcl 2-1 ref 2-3 pl1_stat_$xeq_tree_area_ptr 000026 external static pointer dcl 1-7 ref 72 prefix 12(12) based bit(12) level 2 packed unaligned dcl 6-9 set ref 111* prologue 11 based pointer level 2 packed unaligned dcl 7-5 set ref 125* 139 190 191* put_in_profile 13(01) based bit(1) level 3 packed unaligned dcl 6-9 set ref 148* 153* q 000106 automatic pointer dcl 19 set ref 88* 90 90 90* 95 95* 98 99 100 101 156 180* 181 182 184* 185 185 qq 000110 automatic pointer dcl 19 set ref 159* 159* 160 160 162 164* 168 ref 000112 automatic pointer dcl 19 set ref 164* 165 166 ref_count_copy 7(18) based fixed bin(17,0) level 2 packed unaligned dcl 6-9 set ref 79* reference based structure level 1 dcl 4-3 reference_count 7 based fixed bin(17,0) level 2 packed unaligned dcl 6-9 set ref 79* 170* 170 171* reference_list 5 based pointer level 2 packed unaligned dcl 6-9 set ref 113* root 3 based pointer level 2 packed unaligned dcl 6-9 set ref 113* segment 11 based fixed bin(11,0) level 3 packed unaligned dcl 6-9 set ref 98* 98 104* source 11 based structure level 2 packed unaligned dcl 6-9 source_id 0(09) based structure level 2 packed unaligned dcl 6-9 set ref 101* 101 107* 143 143 start 11(12) based fixed bin(23,0) level 3 in structure "statement" packed unaligned dcl 6-9 in procedure "createTwAVroot_01 TAV root_01 root_02 root_03 root_04 tr01 bull01 bull02 bull03 bull04 bull05 pub_01 pub_02 pub_03 pub_04 pub_05 pub_06 pub_07 pub_08 abb01 abb02 abb03 abb04 abb05 abb06 abb07 abb08 rpv  internal static bit(9) initial dcl 9-3 wait_statement internal static bit(9) initial dcl 9-3 write_statement internal static bit(9) initial dcl 9-3 NAMES DECLARED BY EXPLICIT CONTEXT. action 000000 constant label array(3) dcl 117 ref 115 common 000067 constant label dcl 64 ref 57 con 000337 constant label dcl 153 ref 140 create_statement 000024 constant entry external dcl 16 create_statement$prologue 000057 constant entry external dcl 59 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 652 706 500 662 Length 1250 500 34 325 152 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME create_statement 84 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME create_statement 000100 i create_statement 000101 nodetype create_statement 000102 lab create_statement 000104 p create_statement 000106 q create_statement 000110 qq create_statement 000112 ref create_statement 000114 t create_statement 000116 token_list_pointer create_statement THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. return ext_entry alloc_based NO EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. pl1_stat_$cur_block pl1_stat_$cur_statement pl1_stat_$free_ptr pl1_stat_$node_uses pl1_stat_$source_seg pl1_stat_$st_length pl1_stat_$st_start pl1_stat_$statement_id pl1_stat_$token_list_ptr pl1_stat_$xeq_tree_area_ptr LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 2 3 000011 16 000017 49 000032 52 000042 55 000052 57 000054 59 000055 62 000065 64 000067 66 000072 68 000077 71 000111 72 000113 75 000122 76 000125 77 000132 79 000141 82 000151 88 000154 90 000160 95 000174 98 000203 99 000207 100 000211 101 000213 102 000215 104 000216 105 000222 106 000224 107 000227 110 000232 111 000235 113 000240 115 000245 117 000247 120 000256 121 000260 122 000262 123 000263 125 000265 128 000274 129 000276 130 000300 131 000301 133 000303 139 000307 140 000313 143 000314 148 000324 150 000330 151 000333 153 000337 156 000344 159 000355 160 000364 162 000377 164 000401 165 000404 166 000406 168 000412 170 000416 171 000422 172 000424 173 000426 178 000430 180 000435 181 000442 182 000444 184 000445 185 000447 187 000454 189 000455 190 000460 191 000465 192 000466 195 000470 ----------------------------------------------------------- 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