THIS FILE IS DAMAGED COMPILATION LISTING OF SEGMENT !BBBJPDFkhxXlhj Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 09/10/84 1517.3 mst Mon Options: table map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 /* Internal data for use by the COBOL and FORTRAN wrappers to the menu system. */ 7 /* Created 29 March 1982 by Chris Jones */ 8 /* format: style4,delnl,insnl,indattr,ifthen,declareind10,dclind10 */ 9 fc_menu_data_: 10 procedure options (variable); 11 12 dcl 1 fc_menu_data aligned, /* per process data */ 13 2 initialized bit (1), /* on=>the pointer and length are valid */ 14 2 menu_array_size fixed bin, /* number of slots in menu_array */ 15 2 menu_array_ptr ptr, /* pointer the the array of menus */ 16 2 window_array_size fixed bin, /* number of slots in window_array */ 17 2 window_array_ptr ptr, /* pointer to the array of windows */ 18 2 already_video bit (1) aligned, /* set if the video system was already on */ 19 2 auto_window bit (1) aligned, /* set if we're managing the menu window automatically */ 20 2 have_user_io_info bit (1) aligned, /* set if user_io_window_info is valid */ 21 2 original_cleanup_handler 22 ptr, /* points to cleanup handler we've subsumed */ 23 2 auto_window_iocbp ptr, /* pointer to the automatic menu window */ 24 2 user_io_window_info 25 like window_position_info, /* where the user_i/o window started */ 26 2 auto_window_info like window_position_info; /* where the automatic menu window is */ 27 28 dcl 1 cds_data like cds_args; /* args to create_data_segment_ */ 29 30 dcl code fixed bin (35); /* status code */ 31 32 dcl FC_MENU_DATA_ char (16) static options (constant) init ("fc_menu_data_"); 33 /* the name of the data segment we're creating */ 34 35 dcl com_err_ entry () options (variable); 36 dcl create_data_segment_ entry (ptr, fixed bin (35)); 37 38 dcl (addr, currentsize, null, string, unspec) 39 builtin; 40 41 /* Initialize the data to known values. */ 42 43 fc_menu_data.initialized = "0"b; 44 fc_menu_data.menu_array_size = 0; 45 fc_menu_data.menu_array_ptr = null (); 46 fc_menu_data.window_array_size = 0; 47 fc_menu_data.window_array_ptr = null (); 48 fc_menu_data.already_video = "0"b; 49 fc_menu_data.auto_window = "0"b; 50 fc_menu_data.have_user_io_info = "0"b; 51 fc_menu_data.auto_window_iocbp = null (); 52 fc_menu_data.original_cleanup_handler = null (); 53 unspec (fc_menu_data.user_io_window_info) = "0"b; 54 unspec (fc_menu_data.auto_window_info) = "0"b; 55 fc_menu_data.user_io_window_info.version = window_position_info_version_1; 56 fc_menu_data.auto_window_info.version = window_position_info_version_1; 57 58 /* Initialize the create_data_segment_ args. */ 59 60 cds_data.sections (1).p = null (); 61 cds_data.sections (1).len = 0; 62 cds_data.sections (1).struct_name = ""; 63 cds_data.sections (2).p = addr (fc_menu_data); 64 cds_data.sections (2).len = currentsize (fc_menu_data); 65 cds_data.sections (2).struct_name = "fc_menu_data"; 66 67 cds_data.seg_name = FC_MENU_DATA_; 68 69 cds_data.num_exclude_names = 0; 70 cds_data.exclude_array_ptr = null (); 71 72 string (cds_data.switches) = "0"b; 73 cds_data.switches.have_static = "1"b; 74 cds_data.switches.separate_static = "1"b; 75 76 call create_data_segment_ (addr (cds_data), code); 77 if code ^= 0 then 78 call com_err_ (code, FC_MENU_DATA_); 79 80 return; 81 1 1 /* BEGIN INCLUDE FILE cds_args.incl.pl1 */ 1 2 1 3 dcl 1 cds_args based aligned, 1 4 2 sections (2), 1 5 3 p ptr, /* pointer to data for text/static section */ 1 6 3 len fixed bin (18), /* size of text/static section */ 1 7 3 struct_name char (32), /* name of declared structure for this section */ 1 8 2 seg_name char (32), /* name to create segment by */ 1 9 2 num_exclude_names fixed bin, /* number of names in exclude array */ 1 10 2 exclude_array_ptr ptr, /* pointer to array of exclude names */ 1 11 2 switches, /* control switches */ 1 12 3 defs_in_link bit (1) unal, /* says put defs in linkage */ 1 13 3 separate_static bit (1) unal, /* says separate static section is wanted */ 1 14 3 have_text bit (1) unal, /* ON if text section given */ 1 15 3 have_static bit (1) unal, /* ON if static section given */ 1 16 3 pad bit (32) unal; 1 17 1 18 dcl exclude_names (1) char (32) based; /* pointed to be cds_args.exclude_array_ptr */ 1 19 1 20 /* END INCLUDE FILE cds_args.incl.pl1 */ 82 83 2 1 /* BEGIN INCLUDE FILE ... window_control_info.incl.pl1 JRD */ 2 2 /* format: style3 */ 2 3 2 4 /* Modified 26 January 1982 by William York to add the set_more_handler 2 5* and reset_more_handler control orders. */ 2 6 /* Modified October 1982 by WMY to add set and get_token_characters, 2 7* set and get_more_prompt. */ 2 8 /* Modified February 1983 by WMY to add the line_editor_key_binding_info 2 9* structure. */ 2 10 /* Modified 30 September 1983 by Jon A. Rochlis to add the origin.column for 2 11* partial screen width windows. */ 2 12 /* Modified 9 October 1983 by JR to add version 1 window_edit_line_info. 2 13* This should be removed when window_info.incl.pl1 is created. */ 2 14 /* Modified 29 February 1984 by Barmar to add version 1 2 15* get_editor_key_bindings_info. */ 2 16 /* Modified 1 March 1984 by Barmar to add version 1 2 17* set_editor_key_bindings_info. */ 2 18 /* Modified 2 March 1984 by Barmar to upgrade to version 3 2 19* line_editor_key_bindings_info, which includes the name, description, and 2 20* info path */ 2 21 2 22 /* structure for the set_window_info and get_window_info 2 23* control orders. */ 2 24 2 25 dcl 1 window_position_info 2 26 based (window_position_info_ptr), 2 27 2 version fixed bin, 2 28 2 origin, 2 29 3 column fixed bin, 2 30 3 line fixed bin, 2 31 2 extent, 2 32 3 width fixed bin, 2 33 3 height fixed bin; 2 34 2 35 dcl (window_position_info_version, window_position_info_version_1) 2 36 fixed bin internal static init (1) options (constant); 2 37 dcl window_position_info_ptr 2 38 pointer; 2 39 2 40 /* structure for the set_window_status and get_window_status 2 41* control orders */ 2 42 2 43 declare window_status_info_ptr 2 44 pointer; 2 45 declare 1 window_status_info 2 46 aligned based (window_status_info_ptr), 2 47 2 version fixed bin, 2 48 2 status_string bit (36) aligned; /* string (window_status) */ 2 49 /* see window_status.incl.pl1 for the contents of this string */ 2 50 2 51 2 52 declare (window_status_version, window_status_version_1) 2 53 fixed bin internal static init (1) options (constant); 2 54 2 55 /* info structure for the set_more_responses and get_more_responses control 2 56* orders */ 2 57 2 58 2 59 dcl 1 more_responses_info 2 60 aligned based (more_responses_info_ptr), 2 61 2 version fixed bin, 2 62 2 n_yeses fixed bin, /* how many valid characters in the strings below */ 2 63 2 n_noes fixed bin, 2 64 2 yeses char (32) unaligned, 2 65 2 noes char (32) unaligned; 2 66 2 67 dcl (more_responses_info_version_1, more_responses_version) 2 68 fixed bin internal static init (1) options (constant); 2 69 dcl more_responses_info_ptr 2 70 pointer; 2 71 2 72 /* structure for the set_break_table and get_break_table 2 73* control orders */ 2 74 2 75 declare break_table_ptr pointer; 2 76 declare 1 break_table_info aligned based (break_table_ptr), 2 77 2 version fixed bin, 2 78 2 breaks (0:127) bit (1) unaligned; 2 79 2 80 declare (break_table_info_version, break_table_info_version_1) 2 81 fixed bin init (1) internal static options (constant); 2 82 2 83 declare 1 more_handler_info aligned based (more_handler_info_ptr), 2 84 2 version fixed bin, 2 85 2 flags unaligned, 2 86 3 old_handler_valid 2 87 bit(1), 2 88 3 pad bit(35), 2 89 2 more_handler entry (pointer, bit(1) aligned), 2 90 2 old_more_handler entry (pointer, bit(1) aligned); 2 91 2 92 declare more_handler_info_ptr pointer; 2 93 2 94 declare (more_handler_info_version, more_handler_info_version_3) 2 95 fixed bin internal static options (constant) init (3); 2 96 2 97 declare 1 token_characters_info aligned based (token_characters_info_ptr), 2 98 2 version char(8), 2 99 2 token_character_count 2 100 fixed bin, 2 101 2 token_characters 2 102 char (128) unaligned; 2 103 2 104 declare token_characters_info_ptr pointer; 2 105 2 106 declare token_characters_info_version_1 char(8) internal static options (constant) init ("wtci0001"); 2 107 2 108 declare 1 more_prompt_info aligned based (more_prompt_info_ptr), 2 109 2 version char(8), 2 110 2 more_prompt char(80); 2 111 2 112 declare more_prompt_info_ptr pointer; 2 113 2 114 declare more_prompt_info_version_1 char(8) static options (constant) init ("wsmp0001"); 2 115 2 116 /* Line editor stuff ... */ 2 117 2 118 dcl line_editor_key_binding_info_ptr 2 119 pointer; 2 120 2 121 dcl line_editor_binding_count 2 122 fixed bin; 2 123 dcl line_editor_longest_sequence 2 124 fixed bin; 2 125 /* For each binding, action defines what to do for that sequence. Constants 2 126* are defined in window_editor_values.incl.pl1. Only if action is set to 2 127* EXTERNAL_ROUTINE does the editor_routine entry variable get examined. */ 2 128 2 129 dcl 1 line_editor_key_binding_info 2 130 aligned based (line_editor_key_binding_info_ptr), 2 131 2 version char(8), 2 132 2 binding_count fixed bin, 2 133 2 longest_sequence fixed bin, 2 134 2 bindings (line_editor_binding_count refer 2 135 (line_editor_key_binding_info.binding_count)), 2 136 3 sequence char(line_editor_longest_sequence refer 2 137 (line_editor_key_binding_info.longest_sequence)) varying, 2 138 3 action fixed bin, 2 139 3 numarg_action fixed binary, 2 140 3 editor_routine entry (pointer, fixed bin(35)), 2 141 3 name char (64) varying unaligned, 2 142 3 description char (256) varying unaligned, 2 143 3 info_path unaligned, 2 144 4 info_dir char (168), 2 145 4 info_entry char (32); 2 146 2 147 2 148 dcl line_editor_key_binding_info_version_3 2 149 char(8) static options (constant) init ("lekbi003"); 2 150 2 151 dcl 1 get_editor_key_bindings_info aligned based (get_editor_key_bindings_info_ptr), 2 152 M.imft.acs v.D\G2$ &ajSystem-M.imft.acs v..*v.6&*v.>.v*v.F6*v.N>*v.VF*v.^N0*v.fVh*v.n^*v.vf"*v.~n>*v.v*v.~L*@v.&vGoaFimft vGoE  a~2rjLz@vL*@vv*@v*@v*@v*@v0*@vh*@v*@v"*@v >*@v*@v L*@v&wDGo$BaBeexec_com wDGoE2 Pa~2rj$ecs wDX*@wD`P*@wDhX0*@wDp`h*@wDxh*@wDp"*@wDx>*@wD*@wDL*@wD&wDˇGo"aerrata wDˇI-g2 a~2rj*@wDˇ*@wDˇ*@wDˇ0*@wDˇh*@wDˇ*@wDˇ"*@wDˇ>*@wDˇ*@wDˇL*@wDˇ|&xGo2aHindbo.mlsys xLJBŸz 4ta~2rj<*@xD4*@xL<0*@xTDh*@x\L*@xdT"*@xl\>*@xtd*@xlL*@x&z .GoDa|[generic_macros z .GX a~2rj|PSDs z .|_PFSs z .|manuals z .*@z .*@z .*@z .0*@z .h*@z .*@z ."*@z . >*@z .*@z . L*@z .  `&()Q^$$aw.activities ()Q\G O$zaxj L*@`R*`JL*@`b*() ZL*@() r*`jL*@`*@()zL*@()|&qTGoZasimple_macros qTGoE B a~2rj*@qT*@qT*@qT*@qT0*@qTh*@qT*@qT"*@qT>*@qT*@qT level 2 dcl 12 set ref 43* len 2 000132 automatic fixed bin(18,0) array level 3 dcl 28 set ref 61* 64* menu_array_ptr 2 000100 automatic pointer level 2 dcl 12 set ref 45* menu_array_size 1 000100 automatic fixed bin(17,0) level 2 dcl 12 set ref 44* more_handler_info_version 000000 constant fixed bin(17,0) initial dcl 2-94 null builtin function dcl 38 ref 45 47 51 52 60 70 num_exclude_names 40 000132 automatic fixed bin(17,0) level 2 dcl 28 set ref 69* original_cleanup_handler 14 000100 automatic pointer level 2 dcl 12 set ref 52* p 000132 automatic pointer array level 3 dcl 28 set ref 60* 63* sections 000132 automatic structure array level 2 unaligned dcl 28 seg_name 30 000132 automatic char(32) level 2 packed unaligned dcl 28 set ref 67* separate_static 44(01) 000132 automatic bit(1) level 3 packed unaligned dcl 28 set ref 74* string builtin function dcl 38 set ref 72* struct_name 3 000132 automatic char(32) array level 3 packed unaligned dcl 28 set ref 62* 65* switches 44 000132 automatic structure level 2 packed unaligned dcl 28 set ref 72* unspec builtin function dcl 38 set ref 53* 54* user_io_window_info 20 000100 automatic structure level 2 dcl 12 set ref 53* version 20 000100 automatic fixed bin(17,0) level 3 in structure "fc_menu_data" dcl 12 in procedure "fc_menu_data_" set ref 55* version 25 000100 automatic fixed bin(17,0) level 3 in structure "fc_menu_data" dcl 12 in procedure "fc_menu_data_" set ref 56* window_array_ptr 6 000100 automatic pointer level 2 dcl 12 set ref 47* window_array_size 4 000100 automatic fixed bin(17,0) level 2 dcl 12 set ref 46* window_position_info based structure level 1 unaligned dcl 2-25 window_position_info_ptr 000200 automatic pointer dcl 2-37 ref 2-25 2-25 2-25 2-25 2-25 2-25 2-25 2-25 window_position_info_version_1 000131 constant fixed bin(17,0) initial dcl 2-35 ref 55 56 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. break_table_info based structure level 1 dcl 2-76 break_table_info_version constant fixed bin(17,0) initial dcl 2-80 break_table_info_version_1 constant fixed bin(17,0) initial dcl 2-80 break_table_ptr 000206 automatic pointer dcl 2-75 exclude_names based char(32) array unaligned dcl 1-18 get_editor_key_bindings_info based structure level 1 dcl 2-151 get_editor_key_bindings_info_ptr 000222 automatic pointer dcl 2-159 get_editor_key_bindings_info_version_1 constant char(8) initial unaligned dcl 2-160 line_editor_binding_count 000220 automatic fixed bin(17,0) dcl 2-121 line_editor_key_binding_info based structure level 1 dcl 2-129 line_editor_key_binding_info_ptr 000216 automatic pointer dcl 2-118 line_editor_key_binding_info_version_3 constant char(8) initial unaligned dcl 2-148 line_editor_longest_sequence 000221 automatic fixed bin(17,0) dcl 2-123 more_handler_info based structure level 1 dcl 2-83 more_handler_info_ptr 000210 automatic pointer dcl 2-92 more_handler_info_version_3 constant fixed bin(17,0) initial dcl 2-94 more_prompt_info based structure level 1 dcl 2-108 more_prompt_info_ptr 000214 automatic pointer dcl 2-112 more_prompt_info_version_1 constant char(8) initial unaligned dcl 2-114 more_responses_info based structure level 1 dcl 2-59 more_responses_info_ptr 000204 automatic pointer dcl 2-69 more_responses_info_version_1 constant fixed bin(17,0) initial dcl 2-67 more_responses_version constant fixed bin(17,0) initial dcl 2-67 set_editor_key_bindings_info based structure level 1 dcl 2-162 set_editor_key_bindings_info_ptr 000224 automatic pointer dcl 2-171 set_editor_key_bindings_info_version_1 constant char(8) initial unaligned dcl 2-172 token_characters_info based structure level 1 dcl 2-97 token_characters_info_ptr 000212 automatic pointer dcl 2-104 token_characters_info_version_1 constant char(8) initial unaligned dcl 2-106 window_edit_line_info based structure level 1 unaligned dcl 2-177 window_edit_line_info_ptr 000226 automatic pointer dcl 2-186 window_edit_line_info_version_1 constant char(8) initial unaligned dcl 2-183 window_position_info_version constant fixed bin(17,0) initial dcl 2-35 window_status_info based structure level 1 dcl 2-45 window_status_info_ptr 000202 automatic pointer dcl 2-43 window_status_version constant fixed bin(17,0) initial dcl 2-52 window_status_version_1 constant fixed bin(17,0) initial dcl 2-52 NAME DECLARED BY EXPLICIT CONTEXT. fc_menu_data_ 000016 constant entry external dcl 9 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 206 224 132 216 Length 1752 132 16 1511 53 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME fc_menu_data_ 170 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME fc_menu_data_ 000100 fc_menu_data fc_menu_data_ 000132 cds_data fc_menu_data_ 000177 code fc_menu_data_ 000200 window_position_info_ptr fc_menu_data_ 000202 window_status_info_ptr fc_menu_data_ 000204 more_responses_info_ptr fc_menu_data_ 000206 break_table_ptr fc_menu_data_ 000210 more_handler_info_ptr fc_menu_data_ 000212 token_characters_info_ptr fc_menu_data_ 000214 more_prompt_info_ptr fc_menu_data_ 000216 line_editor_key_binding_info_ptr fc_menu_data_ 000220 line_editor_binding_count fc_menu_data_ 000221 line_editor_longest_sequence fc_menu_data_ 000222 get_editor_key_bindings_info_ptr fc_menu_data_ 000224 set_editor_key_bindings_info_ptr fc_menu_data_ 000226 window_edit_line_info_ptr fc_menu_data_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ create_data_segment_ NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 9 000015 43 000023 44 000024 45 000025 46 000027 47 000030 48 000031 49 000032 50 000033 51 000034 52 000035 53 000036 54 000041 55 000044 56 000046 60 000047 61 000051 62 000052 63 000055 64 000057 65 000061 67 000064 69 000067 70 000070 72 000072 73 000073 74 000075 76 000077 77 000111 80 000130 Object Segment >spec>on>09/04/84-6762>fc_menu_data_ Created on 09/10/84 1517.4 mst Mon by GJohnson.SysMaint.a using create_data_segment_, Version II of Monday, August 15, 1983 with separate static Object Text Defs Link Symb Static Start 0 0 0 206 216 154 Length 414 0 154 10 162 32 14 Definitions: segname: fc_menu_data_ stat|10 already_video stat|11 auto_window stat|25 auto_window_info stat|16 auto_window_iocbp stat|12 have_user_io_info stat|0 initialized stat|2 menu_array_ptr stat|1 menu_array_size stat|14 original_cleanup_handler symb|0 symbol_table stat|20 user_io_window_info stat|6 window_array_ptr stat|4 window_array_size No Links. ----------------------------------------------------------- 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