COMPILATION LISTING OF SEGMENT init_mowse_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Bull, Phx. Az., Sys-M Compiled on: 08/07/87 1507.0 mst Fri Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1986 * 6* * * 7* *********************************************************** */ 8 9 /****^ HISTORY COMMENTS: 10* 1) change(86-08-13,Smith), approve(87-07-15,MCR7580), 11* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 12* Created. 13* 2) change(86-09-19,Flegel), approve(87-07-15,MCR7580), 14* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 15* Allowed up to 32 (number of cat entry) capabilities to be autoloaded. 16* 3) change(86-11-27,Flegel), approve(86-11-27,MCR7580), 17* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 18* Approved. 19* 4) change(86-12-10,Flegel), approve(86-12-10,MCR7580), 20* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 21* Replaced signalling of mowse_fatal_error with a call to fatal_mowse_trap_. 22* END HISTORY COMMENTS */ 23 24 /* format: style4,indattr,ifthen,^indcomtxt,thendo,^indproc,^indblkcom,initcol1,declareind8,dclind4,struclvlind3,comcol55 */ 25 init_mowse_: 26 proc (p_mowse_mcb_ptr, p_init_mowse_info_ptr, p_code); 27 28 /* : PROGRAM FUNCTION 29* 30*Sets up tables required by MOWSE to allow the library functions 31*supported to be performed. Sets flags used by mowse to determine 32*information to display to users based on command line arguements 33*given to atm (attach_mowse). 34**/ 35 36 /* : NOTES 37**/ 38 39 /* INPUT PARAMETERS */ 40 dcl p_init_mowse_info_ptr ptr; /* Pointer to initialization info structure */ 41 dcl p_mowse_mcb_ptr ptr parameter; /* Pointer to mowse mcb */ 42 43 /* OUTPUT PARAMETERS */ 44 dcl p_code fixed bin (35) parameter; 45 46 47 /* MISC VARIABLES */ 48 dcl mowse_info_ptr ptr; /* Pointer to mowse_info_ structure */ 49 dcl i fixed bin; /* Counter */ 50 51 52 /* STRUCTURES */ 53 dcl 01 io_info_store like mowse_io_store_info automatic; 54 dcl 01 io_info_debug like mowse_io_debug_info automatic; 55 dcl 01 io_info_trace like mowse_io_debug_info automatic; 56 57 58 /* SYSTEM CALLS */ 59 dcl iox_$control entry (ptr, char (*), ptr, fixed bin (35)); 60 dcl ioa_$ioa_switch entry () options (variable); 61 dcl get_temp_segment_ entry (char (*), ptr, fixed bin (35)); 62 63 64 /* SYSTEM CALL SUPPORT */ 65 dcl ws_error_$invalid_mcb fixed bin (35) ext static; 66 67 68 /* EXTERNAL CALLS */ 69 dcl execom_ entry (ptr, fixed bin, char (*), fixed bin, 70 fixed bin, fixed bin, fixed bin (35)); 71 72 73 /* EXTERNAL CALL SUPPORT */ 74 75 76 /* BUILTINS */ 77 dcl null builtin; 78 dcl addr builtin; 79 dcl length builtin; 80 81 /* CONDITIONS */ 82 83 84 /* CONSTANTS */ 85 86 87 /* */ 88 /* INITIALIZATION */ 89 init_mowse_info_ptr = p_init_mowse_info_ptr; 90 mowse_info_ptr = null; 91 92 /* MAIN */ 93 94 /* : Check mcb pointer */ 95 96 if p_mowse_mcb_ptr = null then do; 97 p_code = ws_error_$invalid_mcb; 98 return; 99 end; 100 101 /* : Get temp_seg (MOWSE_) in which tables will be allocated. */ 102 103 call get_temp_segment_ (temp_seg_name, mowse_info_ptr, p_code); 104 if p_code ^= 0 then 105 return; 106 107 io_info_store.version = mowse_io_info_version_1; 108 io_info_store.info_ptr = mowse_info_ptr; 109 call iox_$control (p_mowse_mcb_ptr -> mcb.iocb_ptr, 110 "store_mowse_info", addr (io_info_store), p_code); 111 if p_code ^= 0 then 112 return; 113 114 /* : Initialize pointer to initialization info */ 115 116 p_mowse_mcb_ptr -> mcb.mowse_info_ptr = mowse_info_ptr; 117 mowse_info_ptr -> mowse_info.init_mowse_info_ptr = 118 init_mowse_info_ptr; 119 120 /* : Set version of mowse_info structure */ 121 122 mowse_info_ptr -> mowse_info.version = MOWSE_VERSION_; 123 124 /* : Initialize the CAT tables */ 125 126 mowse_info_ptr -> mowse_info.local_cat (*).mcb_ptr = null; 127 mowse_info_ptr -> mowse_info.local_cat (*).sleep_time = 1; 128 mowse_info_ptr -> mowse_info.local_cat (*).flags.reset = "0"b; 129 mowse_info_ptr -> mowse_info.local_cat (*).flags.suspended = "0"b; 130 mowse_info_ptr -> mowse_info.local_cat (*).flags.status = "0"b; 131 mowse_info_ptr -> mowse_info.remote_cat (*).major_capability = 0; 132 133 mowse_info_ptr -> mowse_info.remote_cat (*).capability_name = 134 ((32)" "); 135 mowse_info_ptr -> mowse_info.remote_cat (*).flags.reset = "0"b; 136 mowse_info_ptr -> mowse_info.remote_cat (*).flags.suspended = "0"b; 137 mowse_info_ptr -> mowse_info.remote_cat (*).sleep_time = "0"b; 138 139 /* : Initialize the message_manager_info substructure */ 140 141 mowse_info_ptr 142 -> mowse_info.message_manager_info.head_list_ptr = null; 143 mowse_info_ptr 144 -> mowse_info.message_manager_info.tail_list_ptr = null; 145 mowse_info_ptr 146 -> mowse_info.message_manager_info.pending_messages = 0; 147 148 mowse_info_ptr -> mowse_info.mowse_flags.debug = "0"b; 149 mowse_info_ptr -> mowse_info.mowse_flags.debug_file_iocb = null; 150 mowse_info_ptr -> mowse_info.mowse_flags.trace = "0"b; 151 mowse_info_ptr -> mowse_info.mowse_flags.trace_file_iocb = null; 152 153 /* : Examine arguements given to mowse and perform the required tasks */ 154 155 if init_mowse_info_ptr = null then 156 return; 157 if init_mowse_info.version ^= MOWSE_VERSION_ then 158 return; 159 160 if init_mowse_info.flags.debug_sw then do; 161 io_info_debug.version = mowse_io_info_version_1; 162 io_info_debug.segment_name = init_mowse_info.debug; 163 call iox_$control (p_mowse_mcb_ptr -> mcb.iocb_ptr, "debug_on", 164 addr (io_info_debug), p_code); 165 if p_code ^= 0 then 166 return; 167 end; 168 169 if init_mowse_info.flags.trace_sw then do; 170 io_info_trace.version = mowse_io_info_version_1; 171 io_info_trace.segment_name = init_mowse_info.trace; 172 call iox_$control (p_mowse_mcb_ptr -> mcb.iocb_ptr, 173 "trace_on", addr (io_info_trace), p_code); 174 if p_code ^= 0 then 175 return; 176 call ioa_$ioa_switch (mowse_info_ptr 177 -> mowse_info.mowse_flags.trace_file_iocb, 178 "MOWSE MESSAGE TRACE^/format:" || 179 "^/TRC : from :" || 180 "^/: to :" || 181 "^/: = " 182 || 183 "^/TRC Msg_type: : ^/" 184 ); 185 end; 186 187 /* : Execute all of the startup capabilities specified */ 188 189 i = 1; 190 do while (init_mowse_info.startup (i) ^= "" 191 & init_mowse_info.flags.start_up_sw); 192 193 call execom_ (p_mowse_mcb_ptr, 194 (length (init_mowse_info.startup (i))), 195 (init_mowse_info.startup (i)), 196 (0), (LOCAL_SYSTEM), (INTERNAL), p_code); 197 if p_code ^= 0 then 198 return; 199 i = i + 1; 200 end; 201 202 203 /* INCLUDE FILES */ 1 1 /* BEGIN INCLUDE FILE: mowse_io_control_info.incl.pl1 * * * * * * * * * * * * */ 1 2 1 3 /****^ HISTORY COMMENTS: 1 4* 1) change(86-06-15,Flegel), approve(86-12-16,MCR7580), 1 5* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 1 6* Created for control support for mowse_io_. 1 7* 2) change(86-08-01,Flegel), approve(86-12-16,MCR7580), 1 8* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 1 9* Changed version fields to char (8) and 1 10* installed version constant. 1 11* 3) change(86-10-08,Flegel), approve(86-12-16,MCR7580), 1 12* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 1 13* Added flush_subchannel_info structure. 1 14* 4) change(86-11-27,Flegel), approve(86-11-27,MCR7580), 1 15* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 1 16* Approved. 1 17* 5) change(86-12-05,Flegel), approve(86-12-05,MCR7580), 1 18* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 1 19* Added mowse_io_set_video_mode_info structure. 1 20* 6) change(87-07-31,Flegel), approve(87-07-31,MCR7580), 1 21* audit(87-07-31,RBarstad), install(87-08-07,MR12.1-1075): 1 22* Changes to support async call channels. 1 23* END HISTORY COMMENTS */ 1 24 1 25 /* : Version number */ 1 26 /* format: style4,indattr,ifthen,^indcomtxt,thendo,^indproc,^indblkcom,initcol1,declareind8,dclind4,struclvlind3,comcol55 */ 1 27 dcl mowse_io_info_version_1 1 28 char (8) int static options (constant) 1 29 init ("miover_1"); 1 30 1 31 /* : Mowse store info structure */ 1 32 dcl mowse_io_store_info_ptr 1 33 ptr; 1 34 dcl 01 mowse_io_store_info based (mowse_io_store_info_ptr), 1 35 02 version char (8), 1 36 02 info_ptr ptr; /* Pointer to mowse_info_ structure */ 1 37 1 38 /* : Mowse info structure */ 1 39 dcl mowse_io_info_ptr ptr; 1 40 dcl 01 mowse_io_info based (mowse_io_info_ptr), 1 41 02 version char (8), 1 42 02 mcb_ptr ptr, /* Pointer to mowse_mcb */ 1 43 02 info_ptr ptr; /* Pointer to Mowse information (CATs etc.) */ 1 44 1 45 /* : Control info overlay for debug_on */ 1 46 dcl mowse_io_debug_info_ptr 1 47 ptr; 1 48 dcl 01 mowse_io_debug_info based (mowse_io_debug_info_ptr), 1 49 02 version char (8), 1 50 02 segment_name char (512) var; /* Debug file name */ 1 51 1 52 /* : Control info overlay for get_terminal_emulator_state */ 1 53 dcl mowse_io_terminal_state_ptr 1 54 ptr; 1 55 dcl 01 mowse_io_terminal_state 1 56 based (mowse_io_terminal_state_ptr), 1 57 02 version char (8), 1 58 02 state bit (1) unal, /* WSTERM state */ 1 59 02 mbz bit (35) unal; 1 60 1 61 /* : Control info overlay for send_message and send_local_message */ 1 62 dcl mowse_io_message_ptr ptr; 1 63 dcl 01 mowse_io_message based (mowse_io_message_ptr), 1 64 02 version char (8), 1 65 02 channel fixed bin, /* Channel of message */ 1 66 02 io_message_ptr ptr, /* Pointer to the nonvarying message */ 1 67 02 io_message_len fixed bin (21); /* Length of message */ 1 68 1 69 /* : Control info overlay for put_to_sleep */ 1 70 dcl mowse_io_sleep_info_ptr 1 71 ptr; 1 72 dcl 01 mowse_io_sleep_info based (mowse_io_sleep_info_ptr), 1 73 02 version char (8), 1 74 02 major_index fixed bin, /* CAT index of sleeper */ 1 75 02 sleep_seconds fixed bin; /* Sleep interval */ 1 76 1 77 /* : Control info for flush_subchannel */ 1 78 dcl mowse_io_flush_subchannel_info_ptr 1 79 ptr; 1 80 dcl 01 mowse_io_flush_subchannel_info 1 81 based (mowse_io_flush_subchannel_info_ptr), 1 82 02 version char (8), 1 83 02 subchannel fixed bin; /* The subchannel to be flushed (BG/FG) */ 1 84 1 85 /* : Control info to set the video mode */ 1 86 dcl mowse_io_set_video_mode_info_ptr 1 87 ptr; 1 88 dcl 01 mowse_io_set_video_mode_info 1 89 based (mowse_io_set_video_mode_info_ptr), 1 90 02 version char (8), 1 91 02 mode bit (1) unal, /* On or off */ 1 92 02 mbz bit (35) unal; 1 93 1 94 /* END INCLUDE FILE: mowse_io_control_info.incl.pl1 * * * * * * * * * * * * */ 204 2 1 /* BEGIN INCLUDE FILE: mowse_mcb.incl.pl1 * * * * * * * * * * * * */ 2 2 2 3 /****^ HISTORY COMMENTS: 2 4* 1) change(86-05-17,Smith), approve(87-07-15,MCR7580), 2 5* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 2 6* Created to define the mcb (Mowse Control Block) 2 7* for information on capabilities. 2 8* 2) change(86-11-27,Flegel), approve(86-11-27,MCR7580), 2 9* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 2 10* Approved. 2 11* END HISTORY COMMENTS */ 2 12 /* MOWSE control block */ 2 13 /* format: style4,indattr,ifthen,^indcomtxt,thendo,^indproc,^indblkcom,initcol1,declareind8,dclind4,struclvlind3,comcol55 */ 2 14 dcl 01 mcb based, 2 15 02 version char (8), 2 16 02 capability_name char (32), /* Name of capability */ 2 17 02 major_capability fixed bin (17), /* Capability number */ 2 18 02 inbuff_length fixed bin (17), /* Length of buffer */ 2 19 02 inbuff_position_index 2 20 fixed bin (17), /* Current position in inbuffer */ 2 21 02 inbuff_data_length 2 22 fixed bin (17), /* Amoiunt of data in inbuffer */ 2 23 02 outbuff_length fixed bin (17), /* Length of outbuffer */ 2 24 02 mbz1 bit (36) unal, 2 25 02 entry_var entry options (variable), /* Message processor entry point of capability */ 2 26 02 data_block_ptr ptr, /* Capability data */ 2 27 02 inbuff ptr, /* Message input buffer */ 2 28 02 outbuff_list_start 2 29 ptr, /* Pointer to outbuffer data */ 2 30 02 outbuff_list_end ptr, /* Last node in outbuffer data */ 2 31 02 iocb_ptr ptr, /* IOCB to mowse_io_ */ 2 32 02 mowse_info_ptr ptr; /* MOWSE information */ 2 33 /* Output buffer linked list node */ 2 34 dcl 01 output_buffer based, 2 35 02 destination_system 2 36 char, /* Destination of message */ 2 37 02 destination_major char, 2 38 02 destination_minor char, 2 39 02 buffer_position fixed bin, /* Position in buffer of message */ 2 40 02 buffer_length fixed bin, /* Length of buffer */ 2 41 02 next_buffer ptr, /* Next buffer of message */ 2 42 02 data ptr; /* Pointer to message */ 2 43 2 44 /* END INCLUDE FILE: mowse_mcb.incl.pl1 * * * * * * * * * * * * */ 205 3 1 /* BEGIN INCLUDE FILE: mowse_info.incl.pl1 * * * * * * * * * * * * */ 3 2 3 3 /****^ HISTORY COMMENTS: 3 4* 1) change(86-07-19,Smith), approve(87-07-15,MCR7580), 3 5* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 3 6* Created to define MOWSE information to be 3 7* placed into a temp segment. 3 8* 2) change(86-11-27,Flegel), approve(86-11-27,MCR7580), 3 9* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 3 10* Approved. 3 11* 3) change(87-02-25,Flegel), approve(87-02-25,MCR7580), 3 12* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 3 13* Added bit switches to the init_mowse_info structure as well as the force 3 14* flag. 3 15* 4) change(87-03-24,Flegel), approve(87-03-24,MCR7580), 3 16* audit(87-07-30,RBarstad), install(87-08-07,MR12.1-1075): 3 17* Added open_struc for passing EOP and escape char info from attach_mowse 3 18* to mowse_io_. 3 19* END HISTORY COMMENTS */ 3 20 3 21 /* CAT index limits */ 3 22 3 23 /* format: style4,indattr,ifthen,^indcomtxt,thendo,^indproc,^indblkcom,initcol1,declareind8,dclind4,struclvlind3,comcol55 */ 3 24 dcl MINIMUM_CAT_ENTRY fixed bin int static options (constant) init (33); 3 25 dcl MAXIMUM_CAT_ENTRY fixed bin int static options (constant) init (64); 3 26 3 27 dcl CAPABILITY_NAME_LENGTH fixed bin int static options (constant) init (32); 3 28 3 29 /* Mowse information structure */ 3 30 3 31 dcl 01 mowse_info based aligned, 3 32 02 version char (8), 3 33 02 local_cat dimension (33:64), /* Multics CAT table */ 3 34 03 flags, 3 35 04 reset bit (1) unal, /* Reset in progress */ 3 36 04 suspended bit (1) unal, /* Suspended applciation */ 3 37 04 status bit (1) unal, /* Status pending */ 3 38 04 mbz1 bit (33) unal, 3 39 03 sleep_time fixed bin, /* Time application is sleeping */ 3 40 03 mcb_ptr ptr, /* Capability MCB */ 3 41 02 remote_cat dimension (33:64), /* PC CAT table */ 3 42 03 major_capability 3 43 fixed bin, /* Capability number */ 3 44 03 capability_name char (32), /* Name of capability */ 3 45 03 flags, 3 46 04 reset bit (1) unal, /* Reset in progress */ 3 47 04 suspended bit (1) unal, /* Suspended capability */ 3 48 04 sleep_time bit (1) unal, /* Application sleeping */ 3 49 04 mbz2 bit (33) unal, 3 50 02 message_manager_info, /* Info for processing messages */ 3 51 03 head_list_ptr ptr, /* Head of message list */ 3 52 03 tail_list_ptr ptr, /* Tail of message list */ 3 53 03 pending_messages 3 54 fixed bin, /* Number of pending messages */ 3 55 02 mowse_flags, 3 56 03 trace bit (1) unal, /* Message tracing facility active */ 3 57 03 debug bit (1) unal, /* Debugging packets facility active */ 3 58 03 error_handled bit (1) unal, /* In mowse_error_handler procedure */ 3 59 03 mbz1 bit (33) unal, 3 60 03 trace_file_iocb ptr, /* Trace file iocb */ 3 61 03 debug_file_iocb ptr, /* Debug file iocb */ 3 62 02 init_mowse_info_ptr 3 63 ptr; /* Initialization information */ 3 64 3 65 /* MOWSE initialization information */ 3 66 3 67 dcl init_mowse_info_ptr ptr; 3 68 dcl 01 init_mowse_info based (init_mowse_info_ptr), 3 69 02 version char (8), 3 70 02 flags, /* Bit switches */ 3 71 03 trace_sw bit (1) unal, 3 72 03 debug_sw bit (1) unal, 3 73 03 io_switch_sw bit (1) unal, 3 74 03 force_sw bit (1) unal, 3 75 03 start_up_sw bit (1) unal, 3 76 03 escape_sw bit (1) unal, 3 77 03 network_sw bit (1) unal, 3 78 03 pad bit (29) unal, 3 79 02 escape, 3 80 03 chars (0:255) bit (1) unal, /* Character escapes */ 3 81 03 pad bit (32) unal, 3 82 02 trace char (512) var, /* Trace file name */ 3 83 02 debug char (512) var, /* Debug file name */ 3 84 02 io_switch char (512) var, /* Io switch name of mowse_io_ attachment */ 3 85 02 startup (MAXIMUM_CAT_ENTRY - MINIMUM_CAT_ENTRY + 1) 3 86 char (168) var; /* Capability to be autoloaded */ 3 87 3 88 /* Open description structure (this is padded to character bounds as it 3 89* is a character overlay structure - passed as a character string) */ 3 90 3 91 dcl open_struc_ptr ptr; 3 92 dcl 01 open_struc based (open_struc_ptr), 3 93 02 flags, 3 94 03 network_sw bit (1) unal, 3 95 03 escape_sw bit (1) unal, 3 96 03 pad bit (7) unal, 3 97 02 escape, 3 98 03 switches (0:255) bit (1) unal, 3 99 03 pad bit (32) unal, 3 100 02 mbz bit (16) unal; 3 101 3 102 /* END INCLUDE FILE: mowse_info.incl.pl1 * * * * * * * * * * * * */ 206 4 1 /* BEGIN INCLUDE FILE: mowse.incl.pl1 * * * * * * * * * * * * */ 4 2 4 3 /****^ HISTORY COMMENTS: 4 4* 1) change(86-09-17,Flegel), approve(86-12-16,MCR7580), 4 5* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 4 6* Created. 4 7* 2) change(86-10-03,Flegel), approve(86-12-16,MCR7580), 4 8* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 4 9* Combined mowse_minor_caps.incl.pl1 and 4 10* mowse.incl.pl1 so that programmer only needs include mowse.incl.pl1 4 11* 3) change(86-11-27,Flegel), approve(86-11-27,MCR7580), 4 12* audit(86-12-15,Gilcrease), install(87-01-06,MR12.0-1255): 4 13* Approved. 4 14* 4) change(87-07-31,Flegel), approve(87-07-31,MCR7580), 4 15* audit(87-07-31,RBarstad), install(87-08-07,MR12.1-1075): 4 16* Changes to support async call channels. 4 17* END HISTORY COMMENTS */ 4 18 4 19 /* Name of MOWSE temp seg for data */ 4 20 4 21 /* format: style4,indattr,ifthen,^indcomtxt,thendo,^indproc,^indblkcom,initcol1,declareind8,dclind4,struclvlind3,comcol55 */ 4 22 dcl temp_seg_name char (6) init ("MOWSE_"); 4 23 4 24 /* Version number */ 4 25 4 26 dcl MOWSE_VERSION_ char (8) int static options (constant) init ("version1"); 4 27 4 28 /* System identification */ 4 29 4 30 dcl LOCAL_SYSTEM fixed bin int static options (constant) init (32); 4 31 dcl REMOTE_SYSTEM fixed bin int static options (constant) init (33); 4 32 4 33 /* Status request return codes */ 4 34 4 35 dcl STATUS_SUCCESS fixed bin (8) int static options (constant) 4 36 init (32); 4 37 dcl STATUS_FAILED fixed bin (8) int static options (constant) 4 38 init (33); 4 39 4 40 /* Input/output capability buffer size limits */ 4 41 4 42 dcl MINIMUM_BUFFER_SIZE fixed bin int static options (constant) init (128); 4 43 dcl MAXIMUM_BUFFER_SIZE fixed bin int static options (constant) init (65536); 4 44 dcl MAXIMUM_BG_SIZE fixed bin int static options (constant) init (512); 4 45 4 46 /* Packet size (communication) constants */ 4 47 4 48 dcl PACKET_SIZE fixed bin int static options (constant) init (124); 4 49 dcl MAXIMUM_PACKET_SIZE fixed bin int static options (constant) init (118); 4 50 4 51 /* Query message constants */ 4 52 4 53 dcl SEND_QUERY fixed bin int static options (constant) init (128); 4 54 dcl ACCEPT fixed bin int static options (constant) init (32); 4 55 dcl REJECT fixed bin int static options (constant) init (33); 4 56 4 57 /* Trace information constants */ 4 58 4 59 dcl RECEIVE fixed bin int static options (constant) init (1); 4 60 dcl SEND fixed bin int static options (constant) init (0); 4 61 4 62 /* Limits on dedicated minor capabilities */ 4 63 4 64 dcl MINIMUM_SYSTEM_MINOR fixed bin int static options (constant) init (32); 4 65 dcl MAXIMUM_SYSTEM_MINOR fixed bin int static options (constant) init (63); 4 66 dcl MINIMUM_USER_MINOR fixed bin int static options (constant) init (64); 4 67 dcl MAXIMUM_USER_MINOR fixed bin int static options (constant) init (127); 4 68 4 69 /* Dedicated Minor Capabilities */ 4 70 4 71 dcl LAST fixed bin int static options (constant) init (0); 4 72 dcl EXECUTE_COMMAND_REPLY fixed bin int static options (constant) init (32); 4 73 dcl EXECUTE_CAPABILITY_REPLY 4 74 fixed bin int static options (constant) init (33); 4 75 dcl FAIL_CAPABILITY fixed bin int static options (constant) init (33); 4 76 dcl INTERNAL fixed bin int static options (constant) init (32); 4 77 dcl EXECUTE_COMMAND fixed bin int static options (constant) init (34); 4 78 dcl ADD_TO_REMOTE_CAT fixed bin int static options (constant) init (35); 4 79 dcl DELETE_FROM_REMOTE_CAT fixed bin int static options (constant) init (36); 4 80 dcl SUSPEND_APPLICATION fixed bin int static options (constant) init (37); 4 81 dcl RESUME_APPLICATION fixed bin int static options (constant) init (38); 4 82 dcl TERMINATE_APPLICATION fixed bin int static options (constant) init (39); 4 83 dcl RESET_APPLICATION fixed bin int static options (constant) init (40); 4 84 dcl RESET_REPLY fixed bin int static options (constant) init (41); 4 85 dcl WAKE_UP fixed bin int static options (constant) init (42); 4 86 dcl STATUS fixed bin int static options (constant) init (43); 4 87 dcl OVERFLOWED_BUFFER fixed bin int static options (constant) init (44); 4 88 dcl SYSTEM_ERROR fixed bin int static options (constant) init (45); 4 89 dcl QUERY_REPLY fixed bin int static options (constant) init (46); 4 90 dcl RESPONSE_CONNECT fixed bin int static options (constant) init (47); 4 91 dcl RESPONSE_DISCONNECT fixed bin int static options (constant) init (48); 4 92 dcl REQUEST_CONNECT fixed bin int static options (constant) init (49); 4 93 dcl REQUEST_DISCONNECT fixed bin int static options (constant) init (50); 4 94 dcl CONTINUE fixed bin int static options (constant) init (51); 4 95 dcl MORE fixed bin int static options (constant) init (52); 4 96 dcl SET_SLEEP_FLAG fixed bin int static options (constant) init (53); 4 97 dcl RESET_SLEEP_FLAG fixed bin int static options (constant) init (54); 4 98 dcl SET_SUSPEND fixed bin int static options (constant) init (55); 4 99 dcl RESET_SUSPEND fixed bin int static options (constant) init (56); 4 100 dcl STATUS_REPLY fixed bin int static options (constant) init (57); 4 101 4 102 /* Foreground */ 4 103 4 104 dcl FG_CONTROL_MESSAGE fixed bin int static options (constant) init (33); 4 105 dcl FG_BREAK fixed bin int static options (constant) init (34); 4 106 dcl FG_TERMINAL_DATA fixed bin int static options (constant) init (35); 4 107 dcl FG_MORE_DATA fixed bin int static options (constant) init (36); 4 108 dcl PUT_TO_BACKGROUND_BUFFER 4 109 fixed bin int static options (constant) init (37); 4 110 dcl PUT_TO_QUERY_MESSAGE_BUFFER 4 111 fixed bin int static options (constant) init (38); 4 112 4 113 /* END INCLUDE FILE: mowse.incl.pl1 * * * * * * * * * * * * */ 207 208 209 /* : END */ 210 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 08/07/87 1454.9 init_mowse_.pl1 >special_ldd>install>MR12.1-1075>init_mowse_.pl1 204 1 08/07/87 1445.8 mowse_io_control_info.incl.pl1 >special_ldd>install>MR12.1-1075>mowse_io_control_info.incl.pl1 205 2 08/07/87 1447.6 mowse_mcb.incl.pl1 >special_ldd>install>MR12.1-1075>mowse_mcb.incl.pl1 206 3 08/07/87 1445.8 mowse_info.incl.pl1 >special_ldd>install>MR12.1-1075>mowse_info.incl.pl1 207 4 08/07/87 1445.8 mowse.incl.pl1 >special_ldd>install>MR12.1-1075>mowse.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. INTERNAL constant fixed bin(17,0) initial dcl 4-76 ref 193 LOCAL_SYSTEM constant fixed bin(17,0) initial dcl 4-30 ref 193 MOWSE_VERSION_ 000000 constant char(8) initial unaligned dcl 4-26 ref 122 157 addr builtin function dcl 78 ref 109 109 163 163 172 172 capability_name 203 based char(32) array level 3 dcl 3-31 set ref 133* debug 214 based varying char(512) level 2 in structure "init_mowse_info" dcl 3-68 in procedure "init_mowse_" ref 162 debug 710(01) based bit(1) level 3 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 148* debug_file_iocb 714 based pointer level 3 dcl 3-31 set ref 149* debug_sw 2(01) based bit(1) level 3 packed unaligned dcl 3-68 ref 160 execom_ 000020 constant entry external dcl 69 ref 193 flags 2 based structure level 2 in structure "init_mowse_info" packed unaligned dcl 3-68 in procedure "init_mowse_" flags 2 based structure array level 3 in structure "mowse_info" dcl 3-31 in procedure "init_mowse_" flags 213 based structure array level 3 in structure "mowse_info" dcl 3-31 in procedure "init_mowse_" get_temp_segment_ 000014 constant entry external dcl 61 ref 103 head_list_ptr 702 based pointer level 3 dcl 3-31 set ref 141* i 000102 automatic fixed bin(17,0) dcl 49 set ref 189* 190 193 193 199* 199 info_ptr 2 000104 automatic pointer level 2 dcl 53 set ref 108* init_mowse_info based structure level 1 unaligned dcl 3-68 init_mowse_info_ptr 716 based pointer level 2 in structure "mowse_info" dcl 3-31 in procedure "init_mowse_" set ref 117* init_mowse_info_ptr 000516 automatic pointer dcl 3-67 in procedure "init_mowse_" set ref 89* 117 155 157 160 162 169 171 190 190 193 193 io_info_debug 000110 automatic structure level 1 unaligned dcl 54 set ref 163 163 io_info_store 000104 automatic structure level 1 unaligned dcl 53 set ref 109 109 io_info_trace 000313 automatic structure level 1 unaligned dcl 55 set ref 172 172 ioa_$ioa_switch 000012 constant entry external dcl 60 ref 176 iocb_ptr 34 based pointer level 2 dcl 2-14 set ref 109* 163* 172* iox_$control 000010 constant entry external dcl 59 ref 109 163 172 length builtin function dcl 79 ref 193 local_cat 2 based structure array level 2 dcl 3-31 major_capability 202 based fixed bin(17,0) array level 3 dcl 3-31 set ref 131* mcb based structure level 1 unaligned dcl 2-14 mcb_ptr 4 based pointer array level 3 dcl 3-31 set ref 126* message_manager_info 702 based structure level 2 dcl 3-31 mowse_flags 710 based structure level 2 dcl 3-31 mowse_info based structure level 1 dcl 3-31 mowse_info_ptr 000100 automatic pointer dcl 48 in procedure "init_mowse_" set ref 90* 103* 108 116 117 122 126 127 128 129 130 131 133 135 136 137 141 143 145 148 149 150 151 176 mowse_info_ptr 36 based pointer level 2 in structure "mcb" dcl 2-14 in procedure "init_mowse_" set ref 116* mowse_io_debug_info based structure level 1 unaligned dcl 1-48 mowse_io_info_version_1 000002 constant char(8) initial unaligned dcl 1-27 ref 107 161 170 mowse_io_store_info based structure level 1 unaligned dcl 1-34 null builtin function dcl 77 ref 90 96 126 141 143 149 151 155 p_code parameter fixed bin(35,0) dcl 44 set ref 25 97* 103* 104 109* 111 163* 165 172* 174 193* 197 p_init_mowse_info_ptr parameter pointer dcl 40 ref 25 89 p_mowse_mcb_ptr parameter pointer dcl 41 set ref 25 96 109 116 163 172 193* pending_messages 706 based fixed bin(17,0) level 3 dcl 3-31 set ref 145* remote_cat 202 based structure array level 2 dcl 3-31 reset 213 based bit(1) array level 4 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 135* reset 2 based bit(1) array level 4 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 128* segment_name 2 000110 automatic varying char(512) level 2 in structure "io_info_debug" dcl 54 in procedure "init_mowse_" set ref 162* segment_name 2 000313 automatic varying char(512) level 2 in structure "io_info_trace" dcl 55 in procedure "init_mowse_" set ref 171* sleep_time 3 based fixed bin(17,0) array level 3 in structure "mowse_info" dcl 3-31 in procedure "init_mowse_" set ref 127* sleep_time 213(02) based bit(1) array level 4 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 137* start_up_sw 2(04) based bit(1) level 3 packed unaligned dcl 3-68 ref 190 startup 616 based varying char(168) array level 2 dcl 3-68 ref 190 193 193 status 2(02) based bit(1) array level 4 packed unaligned dcl 3-31 set ref 130* suspended 213(01) based bit(1) array level 4 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 136* suspended 2(01) based bit(1) array level 4 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 129* tail_list_ptr 704 based pointer level 3 dcl 3-31 set ref 143* temp_seg_name 000520 automatic char(6) initial unaligned dcl 4-22 set ref 103* 4-22* trace 710 based bit(1) level 3 in structure "mowse_info" packed unaligned dcl 3-31 in procedure "init_mowse_" set ref 150* trace 13 based varying char(512) level 2 in structure "init_mowse_info" dcl 3-68 in procedure "init_mowse_" ref 171 trace_file_iocb 712 based pointer level 3 dcl 3-31 set ref 151* 176* trace_sw 2 based bit(1) level 3 packed unaligned dcl 3-68 ref 169 version 000104 automatic char(8) level 2 in structure "io_info_store" packed unaligned dcl 53 in procedure "init_mowse_" set ref 107* version 000313 automatic char(8) level 2 in structure "io_info_trace" packed unaligned dcl 55 in procedure "init_mowse_" set ref 170* version based char(8) level 2 in structure "mowse_info" dcl 3-31 in procedure "init_mowse_" set ref 122* version based char(8) level 2 in structure "init_mowse_info" packed unaligned dcl 3-68 in procedure "init_mowse_" ref 157 version 000110 automatic char(8) level 2 in structure "io_info_debug" packed unaligned dcl 54 in procedure "init_mowse_" set ref 161* ws_error_$invalid_mcb 000016 external static fixed bin(35,0) dcl 65 ref 97 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ACCEPT internal static fixed bin(17,0) initial dcl 4-54 ADD_TO_REMOTE_CAT internal static fixed bin(17,0) initial dcl 4-78 CAPABILITY_NAME_LENGTH internal static fixed bin(17,0) initial dcl 3-27 CONTINUE internal static fixed bin(17,0) initial dcl 4-94 DELETE_FROM_REMOTE_CAT internal static fixed bin(17,0) initial dcl 4-79 EXECUTE_CAPABILITY_REPLY internal static fixed bin(17,0) initial dcl 4-73 EXECUTE_COMMAND internal static fixed bin(17,0) initial dcl 4-77 EXECUTE_COMMAND_REPLY internal static fixed bin(17,0) initial dcl 4-72 FAIL_CAPABILITY internal static fixed bin(17,0) initial dcl 4-75 FG_BREAK internal static fixed bin(17,0) initial dcl 4-105 FG_CONTROL_MESSAGE internal static fixed bin(17,0) initial dcl 4-104 FG_MORE_DATA internal static fixed bin(17,0) initial dcl 4-107 FG_TERMINAL_DATA internal static fixed bin(17,0) initial dcl 4-106 LAST internal static fixed bin(17,0) initial dcl 4-71 MAXIMUM_BG_SIZE internal static fixed bin(17,0) initial dcl 4-44 MAXIMUM_BUFFER_SIZE internal static fixed bin(17,0) initial dcl 4-43 MAXIMUM_CAT_ENTRY internal static fixed bin(17,0) initial dcl 3-25 MAXIMUM_PACKET_SIZE internal static fixed bin(17,0) initial dcl 4-49 MAXIMUM_SYSTEM_MINOR internal static fixed bin(17,0) initial dcl 4-65 MAXIMUM_USER_MINOR internal static fixed bin(17,0) initial dcl 4-67 MINIMUM_BUFFER_SIZE internal static fixed bin(17,0) initial dcl 4-42 MINIMUM_CAT_ENTRY internal static fixed bin(17,0) initial dcl 3-24 MINIMUM_SYSTEM_MINOR internal static fixed bin(17,0) initial dcl 4-64 MINIMUM_USER_MINOR internal static fixed bin(17,0) initial dcl 4-66 MORE internal static fixed bin(17,0) initial dcl 4-95 OVERFLOWED_BUFFER internal static fixed bin(17,0) initial dcl 4-87 PACKET_SIZE internal static fixed bin(17,0) initial dcl 4-48 PUT_TO_BACKGROUND_BUFFER internal static fixed bin(17,0) initial dcl 4-108 PUT_TO_QUERY_MESSAGE_BUFFER internal static fixed bin(17,0) initial dcl 4-110 QUERY_REPLY internal static fixed bin(17,0) initial dcl 4-89 RECEIVE internal static fixed bin(17,0) initial dcl 4-59 REJECT internal static fixed bin(17,0) initial dcl 4-55 REMOTE_SYSTEM internal static fixed bin(17,0) initial dcl 4-31 REQUEST_CONNECT internal static fixed bin(17,0) initial dcl 4-92 REQUEST_DISCONNECT internal static fixed bin(17,0) initial dcl 4-93 RESET_APPLICATION internal static fixed bin(17,0) initial dcl 4-83 RESET_REPLY internal static fixed bin(17,0) initial dcl 4-84 RESET_SLEEP_FLAG internal static fixed bin(17,0) initial dcl 4-97 RESET_SUSPEND internal static fixed bin(17,0) initial dcl 4-99 RESPONSE_CONNECT internal static fixed bin(17,0) initial dcl 4-90 RESPONSE_DISCONNECT internal static fixed bin(17,0) initial dcl 4-91 RESUME_APPLICATION internal static fixed bin(17,0) initial dcl 4-81 SEND internal static fixed bin(17,0) initial dcl 4-60 SEND_QUERY internal static fixed bin(17,0) initial dcl 4-53 SET_SLEEP_FLAG internal static fixed bin(17,0) initial dcl 4-96 SET_SUSPEND internal static fixed bin(17,0) initial dcl 4-98 STATUS internal static fixed bin(17,0) initial dcl 4-86 STATUS_FAILED internal static fixed bin(8,0) initial dcl 4-37 STATUS_REPLY internal static fixed bin(17,0) initial dcl 4-100 STATUS_SUCCESS internal static fixed bin(8,0) initial dcl 4-35 SUSPEND_APPLICATION internal static fixed bin(17,0) initial dcl 4-80 SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 4-88 TERMINATE_APPLICATION internal static fixed bin(17,0) initial dcl 4-82 WAKE_UP internal static fixed bin(17,0) initial dcl 4-85 mowse_io_debug_info_ptr automatic pointer dcl 1-46 mowse_io_flush_subchannel_info based structure level 1 unaligned dcl 1-80 mowse_io_flush_subchannel_info_ptr automatic pointer dcl 1-78 mowse_io_info based structure level 1 unaligned dcl 1-40 mowse_io_info_ptr automatic pointer dcl 1-39 mowse_io_message based structure level 1 unaligned dcl 1-63 mowse_io_message_ptr automatic pointer dcl 1-62 mowse_io_set_video_mode_info based structure level 1 packed unaligned dcl 1-88 mowse_io_set_video_mode_info_ptr automatic pointer dcl 1-86 mowse_io_sleep_info based structure level 1 unaligned dcl 1-72 mowse_io_sleep_info_ptr automatic pointer dcl 1-70 mowse_io_store_info_ptr automatic pointer dcl 1-32 mowse_io_terminal_state based structure level 1 packed unaligned dcl 1-55 mowse_io_terminal_state_ptr automatic pointer dcl 1-53 open_struc based structure level 1 packed unaligned dcl 3-92 open_struc_ptr automatic pointer dcl 3-91 output_buffer based structure level 1 unaligned dcl 2-34 NAME DECLARED BY EXPLICIT CONTEXT. init_mowse_ 000125 constant entry external dcl 25 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1032 1054 740 1042 Length 1336 740 22 246 71 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME init_mowse_ 438 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME init_mowse_ 000100 mowse_info_ptr init_mowse_ 000102 i init_mowse_ 000104 io_info_store init_mowse_ 000110 io_info_debug init_mowse_ 000313 io_info_trace init_mowse_ 000516 init_mowse_info_ptr init_mowse_ 000520 temp_seg_name init_mowse_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_char_temp call_ext_out_desc return_mac shorten_stack ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. execom_ get_temp_segment_ ioa_$ioa_switch iox_$control THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. ws_error_$invalid_mcb LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 25 000121 4 22 000132 89 000134 90 000140 96 000142 97 000145 98 000147 103 000150 104 000170 107 000173 108 000175 109 000177 111 000233 116 000236 117 000242 122 000244 126 000247 127 000263 128 000300 129 000313 130 000330 131 000344 133 000356 135 000373 136 000407 137 000424 141 000440 143 000442 145 000443 148 000444 149 000446 150 000450 151 000452 155 000454 157 000457 160 000464 161 000467 162 000471 163 000476 165 000531 169 000534 170 000540 171 000543 172 000550 174 000603 176 000606 189 000627 190 000631 193 000650 197 000726 199 000732 200 000733 210 000734 ----------------------------------------------------------- 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