COMPILATION LISTING OF SEGMENT iodd_msg_ Compiled by: Multics PL/I Compiler, Release 31a, of October 12, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 10/28/88 1336.7 mst Fri Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1988 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 iodd_msg_: proc (a_sev, a_target, a_code, proc_name); 13 14 /* Procedure to print messages to the operator(s) of the IO Daemon driver. 15* This is an alternative to com_err_ in that it has the same calling sequence 16* starting with the code argument. It does not signal any conditions. 17* It will write to the log, the error output switch, or to the user output switch. 18* 19* a_sev = 0 write a log message 20* a_sev = 1 write a normal operator message 21* a_sev = 2 write an error message 22* 23* It will write to the master, the slave or both. 24* 25* a_target = 0 write to both the master and the slave 26* a_target = 1 write to the master only 27* a_target = 2 write to the slave (if not active, write to master) 28* 29* */ 30 31 /* Originally coded Nov 1977 by J. C. Whitmore */ 32 /* Modified by J. C. Whitmore, 11/79, to decode the error code parameter descriptor */ 33 34 35 36 /****^ HISTORY COMMENTS: 37* 1) change(88-08-19,Brunelle), approve(88-08-19,MCR7911), 38* audit(88-10-19,Wallman), install(88-10-28,MR12.2-1199): 39* Upgraded to version 5 iod tables. 40* END HISTORY COMMENTS */ 41 42 43 dcl a_sev fixed bin; /* severity: 0 = log, 1 = normal, 2 = error */ 44 dcl a_target fixed bin; /* 0 = master and slave, 1 = master, 2 = slave */ 45 dcl a_code fixed bin (35); /* error a_code for the message */ 46 dcl proc_name char (*); /* calling proc */ 47 48 dcl log fixed bin int static options (constant) init (0); 49 dcl normal fixed bin int static options (constant) init (1); 50 dcl error fixed bin int static options (constant) init (2); 51 dcl master fixed bin int static options (constant) init (1); 52 dcl slave fixed bin int static options (constant) init (2); 53 dcl both fixed bin int static options (constant) init (0); 54 dcl NL char (1) int static options (constant) init (" 55 "); 56 57 dcl aptr ptr; /* arg list ptr */ 58 dcl arg_count fixed bin; 59 dcl (ec, code) fixed bin (35); 60 dcl full_msg char (512) aligned;/* message buffer */ 61 dcl proc_msg char (256) aligned;/* msg from ioa_$general_rs based on args */ 62 dcl short char (8) aligned; /* short error_table_ msg */ 63 dcl long char (100) aligned;/* long error_table_ msg */ 64 dcl target fixed bin; 65 dcl sev fixed bin; 66 dcl (lth, n, l) fixed bin; 67 dcl type fixed bin; 68 dcl packed bit (1) aligned; 69 dcl ndims fixed bin; 70 dcl prec fixed bin; 71 dcl scale fixed bin; 72 dcl arg_ptr ptr; 73 74 75 dcl based_code fixed bin (35) based; 76 77 dcl iodd_stat_p ptr ext static; 78 79 dcl convert_status_code_ entry (fixed bin (35), char (*) aligned, char (*) aligned); 80 dcl decode_descriptor_ ext entry (ptr, fixed bin, fixed bin, bit (1) aligned, fixed bin, fixed bin, fixed bin); 81 dcl cu_$arg_ptr ext entry (fixed bin, ptr, fixed bin, fixed bin (35)); 82 dcl cu_$arg_list_ptr entry (ptr); 83 dcl cu_$arg_count entry (fixed bin); 84 dcl ioa_$general_rs entry options (variable); 85 dcl iox_$put_chars entry (ptr, ptr, fixed bin, fixed bin (35)); 86 87 dcl (addr, substr, rtrim, length, bin) builtin; 88 89 90 call cu_$arg_count (arg_count); /* how many args passed? */ 91 if arg_count < 4 then return; /* must be something or forget it */ 92 93 stat_p = iodd_stat_p; /* copy the iodd_static ptr for easy ref */ 94 95 target = a_target; /* copy the args */ 96 sev = a_sev; 97 if ^(target = master | target = slave) then target = both; /* validate the args */ 98 if ^(sev = log | sev = error) then sev = normal; 99 100 l = 1; /* ready to build full message at char 1 */ 101 102 if proc_name ^= "" then do; 103 n = length (rtrim (proc_name)); /* how long is it? */ 104 full_msg = substr (proc_name, 1, n) || ": "; /* insert name */ 105 l = l + n + 2; /* bump the index */ 106 end; 107 108 call cu_$arg_list_ptr (aptr); 109 call cu_$arg_ptr (3, arg_ptr, (0), ec); 110 call decode_descriptor_ (aptr, 1, type, packed, ndims, prec, scale); 111 112 if (type = real_fix_bin_1_dtype) & (packed = "0"b) 113 then code = arg_ptr -> based_code; 114 else do; 115 intype = 2 * type + bin (packed, 1); 116 117 if (type >= bit_dtype) & (type <= varying_char_dtype) 118 then inclength = prec; 119 else do; 120 info.inscale = scale; 121 info.inprec = prec; 122 end; 123 outtype = 2 * real_fix_bin_1_dtype; 124 outfo.outscale = 0; 125 outfo.outprec = 35; 126 call assign_ (addr (code), outtype, outscale_prec, arg_ptr, intype, inscale_prec); 127 end; 128 129 if code ^= 0 then do; /* will there be an error_table message? */ 130 short, long = ""; /* clear the strings */ 131 call convert_status_code_ (code, short, long); 132 n = length (rtrim (long)); /* how long is it */ 133 substr (full_msg, l) = substr (long, 1, n) || NL; /* fill it in and start a new line */ 134 l = l + n + 1; /* bump the index */ 135 end; 136 137 if arg_count > 4 then do; /* is there an additional message from the proc? */ 138 call ioa_$general_rs (aptr, 5, 6, proc_msg, lth, "0"b, "0"b); /* format the msg */ 139 if lth > 0 then do; /* is anything there */ 140 substr (full_msg, l) = substr (proc_msg, 1, lth) || NL; /* add in a new line */ 141 l = l + lth + 1; 142 end; 143 end; 144 145 lth = l - 1; /* this is the number of chars that were good */ 146 if lth < 1 then return; /* just checking */ 147 148 /* now see who we will tell about it */ 149 150 if sev = log then do; /* just a message for the log */ 151 152 if target = slave | target = both then 153 if iodd_static.slave.active & iodd_static.slave.log_msg then do; /* maybe to the slave */ 154 call write_msg (iodd_static.slave_out, ec); 155 if ec ^= 0 then target = master; /* OOPS - tell the master */ 156 end; 157 else target = master; /* if not possible, tell someone */ 158 159 if target = master | target = both then 160 call write_msg (iodd_static.log_iocbp, ec); /* send it to the iodd log */ 161 162 end; 163 164 else if sev = error then do; /* it is an error message, sound the beeper */ 165 166 if target = slave | target = both then /* protect the slave */ 167 if iodd_static.slave.active & iodd_static.slave.print_errors then do; 168 call write_msg (iodd_static.slave_out, ec); 169 if ec ^= 0 then target = master; 170 end; 171 else target = master; 172 173 if target = master | target = both then call write_msg (iodd_static.error_io, ec); 174 /* avoid error_output due to broadcast */ 175 176 end; 177 178 else do; /* the normal operator message case */ 179 180 if target = slave | target = both then 181 if iodd_static.slave.active then do; 182 call write_msg (iodd_static.slave_out, ec); 183 if ec ^= 0 then target = master; 184 end; 185 else target = master; /* be sure someone gets the message */ 186 187 if target = master | target = both then call write_msg (iodd_static.master_out, ec); 188 189 end; 190 191 return; 192 193 194 write_msg: proc (iocbp, ec); 195 196 dcl ec fixed bin (35); 197 dcl iocbp ptr; 198 199 200 call iox_$put_chars (iocbp, addr (full_msg), lth, ec); 201 202 return; /* if it didn't work...well we tried */ 203 204 end write_msg; 205 /* BEGIN INCLUDE FILE ... desc_dcls.incl.pl1 */ 1 2 1 3 /* This include segment contains declarations for use with assign_ */ 1 4 1 5 dcl intype fixed bin (17), 1 6 outtype fixed bin (17); 1 7 1 8 dcl inscale_prec fixed bin (35), 1 9 outscale_prec fixed bin (35); 1 10 1 11 dcl 1 info based (addr (inscale_prec)) aligned, 1 12 2 inscale fixed bin (17) unal, 1 13 2 inprec fixed bin (17) unal; 1 14 1 15 dcl 1 outfo based (addr (outscale_prec)) aligned, 1 16 2 outscale fixed bin (17) unal, 1 17 2 outprec fixed bin (17) unal; 1 18 1 19 dcl inclength fixed bin(31) aligned based(addr(inscale_prec)); 1 20 dcl outclength fixed bin(31) aligned based(addr(outscale_prec)); 1 21 1 22 dcl char_to_numeric_ entry (ptr, fixed bin (17), fixed bin (35), ptr, fixed bin (17)), 1 23 assign_ entry (ptr, fixed bin (17), fixed bin (35), ptr, fixed bin (17), fixed bin (35)), 1 24 assign_round_ entry (ptr, fixed bin (17), fixed bin (35), ptr, fixed bin (17), fixed bin (35)), 1 25 assign_truncate_ entry (ptr, fixed bin (17), fixed bin (35), ptr, fixed bin (17), fixed bin (35)); 1 26 1 27 /* END INCLUDE FILE ... desc_dcls.incl.pl1 */ 205 206 /* BEGIN INCLUDE FILE ... iod_tables_hdr.incl.pl1 */ 2 2 2 3 2 4 2 5 /****^ HISTORY COMMENTS: 2 6* 1) change(88-01-27,Brunelle), approve(), audit(), install(): 2 7* Ancient History 2 8* Created by J. Stern, 1/20/75 2 9* Modified by J. C. Whitmore April 1978 for enhancements 2 10* Modified by J. C. Whitmore, 10/78, for version 3 iod_tables format. 2 11* Modified by E. N. Kittlitz, 6/81, for version 4 iod_tables with expanded 2 12* q_group_tab 2 13* 2) change(88-02-18,Brunelle), approve(88-08-31,MCR7911), 2 14* audit(88-09-29,Wallman), install(88-10-28,MR12.2-1199): 2 15* Change version number to reflect changes in q_group_tab and 2 16* iod_device_tab for laser printer support. Added font tables. 2 17* END HISTORY COMMENTS */ 2 18 2 19 2 20 /* format: style4 */ 2 21 2 22 dcl ithp ptr; /* ptr to io daemon dables and it's header */ 2 23 dcl 1 iod_tables_hdr aligned based (ithp), /* header of data segment compiled by iod_table_compiler */ 2 24 2 version char (8), /* version of this structure */ 2 25 2 date_time_compiled fixed bin (71), 2 26 2 grace_time fixed bin (71), /* grace time before deleting finished segment */ 2 27 2 max_queues fixed bin (17), /* default number of priority queues per queue group */ 2 28 2 line_tab_offset fixed bin (18), /* offset of line id table */ 2 29 2 device_tab_offset fixed bin (18), /* offset of device table */ 2 30 2 minor_device_tab_offset fixed bin (18), /* offset of minor device table */ 2 31 2 dev_class_tab_offset fixed bin (18), /* offset of device class table */ 2 32 2 q_group_tab_offset fixed bin (18), /* offset of queue group table */ 2 33 2 forms_info_tab_offset fixed bin (18), /* offset of forms info tables */ 2 34 2 text_strings_offset fixed bin (18), 2 35 2 start_of_tables fixed bin; /* beginning of above tables, MUST start on even word boundry */ 2 36 2 37 /* Defines common text block to store virtually all text in the I/O daemon tables */ 2 38 dcl text_strings_ptr ptr; 2 39 dcl 1 text_strings aligned based (text_strings_ptr), 2 40 2 length fixed bin, 2 41 2 chars char (1 refer (text_strings.length)) unaligned; 2 42 2 43 /* this defines text offsets used to locate i/o daemon tables strings in 2 44* the text_strings structure */ 2 45 dcl 1 text_offset based, 2 46 2 first_char fixed bin (18) unsigned unaligned, 2 47 2 total_chars fixed bin (18) unsigned unaligned; 2 48 2 49 dcl IODT_VERSION_5 char (8) int static options (constant) init ("IODT0005"); /* current version number */ 2 50 2 51 2 52 /* END INCLUDE FILE ... iod_tables_hdr.incl.pl1 */ 206 207 /* BEGIN INCLUDE FILE...iodd_static.incl.pl1 */ 3 2 3 3 3 4 /****^ HISTORY COMMENTS: 3 5* 1) change(85-02-14,Homan), approve(87-04-06,MCR7656), 3 6* audit(87-06-13,Beattie), install(87-08-06,MR12.1-1068): 3 7* Add support for logout_on_hangup option. 3 8* 2) change(88-02-18,Brunelle), approve(88-08-31,MCR7911), 3 9* audit(88-09-29,Wallman), install(88-10-28,MR12.2-1199): 3 10* Add head/tail_sheet entry variables and paper_type variable. 3 11* END HISTORY COMMENTS */ 3 12 3 13 /* format: style4 */ 3 14 3 15 dcl stat_p int static ptr; 3 16 3 17 dcl 1 iodd_static based (stat_p) aligned, 3 18 3 19 /* The first part is set only once for a device driver */ 3 20 3 21 2 ithp ptr, /* pointer to iod tables header */ 3 22 2 ltp ptr, /* pointer to line table */ 3 23 2 idtp ptr, /* pointer to device tab */ 3 24 2 mdtp ptr, /* pointer to minor device table */ 3 25 2 qgtp ptr, /* pointer to q_group table */ 3 26 2 dev_class_ptr ptr, /* pointer to device class table */ 3 27 2 text_strings_ptr ptr, /* pointer to iod tables text strings */ 3 28 2 driver_list_ptr ptr, /* pointer to list of driver status seg pointers */ 3 29 2 chan_list_ptr ptr, /* pointer to list of event channels for blocking */ 3 30 2 sys_dir_ptr ptr, /* ptr to 168 char string defining sys_dir */ 3 31 2 coord_proc_id bit (36), /* process id of coordinator for wakeups */ 3 32 2 driver_proc_id bit (36), /* process id of driver for locking */ 3 33 2 re_init_label label, /* where to go after "re_init" or "slave_logout" */ 3 34 2 no_coord_label label, /* where to go for a no_coord condition */ 3 35 2 log_stream char (32), /* stream name used for log output */ 3 36 2 master_input char (32), /* master console input stream for commands */ 3 37 2 master_output char (32), /* master console output stream for messages */ 3 38 2 master_out ptr, /* master output iocbp */ 3 39 2 master_in ptr, /* master input iocbp */ 3 40 2 log_iocbp ptr, /* log output iocbp */ 3 41 2 error_io ptr, /* error i/o iocbp */ 3 42 2 dev_io_stream char (32), /* stream used to attach the major device */ 3 43 2 dev_in_stream char (32), /* input stream if different from dev_io_stream */ 3 44 2 dev_out_stream char (32), /* output stream if different from dev_io_stream */ 3 45 2 device_dim char (32), /* dim which drives the major device */ 3 46 2 attach_name char (32), /* channel or dial id for attaching major device */ 3 47 2 attach_type fixed bin, /* what previous is: 1 = iom, 2 = tty, 3 = dial, 4 = variable line */ 3 48 2 dev_dial_id char (8), /* non null if device is to be dialed to driver */ 3 49 2 line_tab_idx fixed bin, /* for attach type 4, this is the entry index, else 0 */ 3 50 2 dial_ev_chan fixed bin (71), /* IPC chan for dial control */ 3 51 2 major_device char (32), /* name of the major device */ 3 52 2 major_args unaligned like text_offset, /* descriptive string for the major device */ 3 53 2 coord_cmd_chan fixed bin (71), /* IPC chan to send commands to coord through coord_comm.ms */ 3 54 2 cmd_ack_chan fixed bin (71), /* IPC chan for coord to return command status code */ 3 55 2 timer_chan fixed bin (71), /* IPC chan for unblocking if nothing happens */ 3 56 2 io_daemon_version char (8), /* current version number of the io daemon driver */ 3 57 2 extra_static (8) fixed bin (35), /* unused space - non_dynamic */ 3 58 2 dummy_ptr ptr, /* a dummy pointer for the driver module */ 3 59 3 60 /* driver module entrypoints are defined by the following entry variables */ 3 61 3 62 2 driver_init entry variable options (variable), 3 63 2 driver_request entry variable options (variable), 3 64 2 driver_command entry variable options (variable), 3 65 2 driver_default_handler entry variable options (variable), 3 66 3 67 /* entrypoints for head/tail_sheet_ entries */ 3 68 2 print_head_sheet entry (ptr, ptr, ptr, fixed bin (35)) variable, 3 69 2 print_head_separator entry (ptr, ptr, char (*), fixed bin (35)) variable, 3 70 2 print_tail_sheet entry (ptr, ptr, ptr, fixed bin (35)) variable, 3 71 3 72 2 paper_type fixed bin, /* type of paper being used */ 3 73 /* 1 = single sheet */ 3 74 /* 2 = continuous forms */ 3 75 3 76 /* The remainder of the data may be dynamic during the device driver's existence */ 3 77 3 78 2 extra_dynamic (14) fixed bin (35), /* unused space - dynamic */ 3 79 2 auto_logout_interval fixed bin, /* minutes to wait for inactivity logout */ 3 80 2 requests_til_cmd fixed bin, /* number of requests to go before returning to cmd level */ 3 81 2 assigned_devices fixed bin, /* number of minor devices assigned to major device */ 3 82 2 current_devices fixed bin, /* number of devices currently active in process */ 3 83 2 output_device char (32), /* name of minor device currently in use */ 3 84 2 wakeup_time fixed bin (71), /* time interval between timer wakeups */ 3 85 2 auto_start_delay fixed bin (71), /* time to wait before performing an auto-start after quit */ 3 86 2 driver_ptr ptr, /* pointer to driver status seg currently in use */ 3 87 2 segptr ptr, /* ptr to current user segment being processed */ 3 88 2 flags, /* control flags */ 3 89 3 initialized bit (1) unal, /* all driver data bases are initialized */ 3 90 3 test_entry bit (1) unal, /* driver test entry was called */ 3 91 3 request_in_progress bit (1) unal, /* driver executing a request */ 3 92 3 recursion_flag bit (1) unal, /* recursive unclaimed signal */ 3 93 3 no_coord_flag bit (1) unal, /* process is ready to accept a no_coord signal */ 3 94 3 logout_pending bit (1) unal, /* logout after all pending requests are done */ 3 95 3 master_hold bit (1) unal, /* master_hold at command level */ 3 96 3 slave_hold bit (1) unal, /* slave hold at command level */ 3 97 3 step bit (1) unal, /* run in step mode */ 3 98 3 quit_during_request bit (1) unal, /* a quit occured, don't wait for wakeup */ 3 99 3 runout_requests bit (1) unal, /* hold after all pending requests are done */ 3 100 3 re_init_in_progress bit (1) unal, /* driver processing a re_init signal */ 3 101 3 quit_signaled bit (1) unal, /* set to "1"b by quit handler for anyone who is curious */ 3 102 3 auto_logout_pending bit (1) unal, /* inactivity limit exceeded, logout after next wakeup */ 3 103 3 logout_on_hangup bit (1) unal, /* logout instead of reinit if set */ 3 104 3 pad bit (21) unal, /* unused space */ 3 105 2 slave, /* slave control device data (ctl term or remote reader) */ 3 106 3 slave_input char (32), /* slave input stream name */ 3 107 3 slave_output char (32), /* slave output stream name */ 3 108 3 slave_pad fixed bin, /* allocation breakage */ 3 109 3 slave_in ptr, /* slave input iocbp */ 3 110 3 slave_out ptr, /* slave output iocbp */ 3 111 3 slave_ev_chan fixed bin (71), /* event channel the slave device blocks on */ 3 112 3 active bit (1) unal, /* on if there is a slave */ 3 113 3 accept_input bit (1) unal, /* on if commands may come from the slave */ 3 114 3 allow_quits bit (1) unal, /* on if we allow slave to send quits */ 3 115 3 print_errors bit (1) unal, /* on if errors will be sent to the slave */ 3 116 3 log_msg bit (1) unal, /* on if log messages are to be sent to the slave */ 3 117 3 priv1 bit (1) unal, /* driver_module defined slave privileges */ 3 118 3 priv2 bit (1) unal, 3 119 3 priv3 bit (1) unal, 3 120 3 echo_cmd bit (1) unal, /* on if each slave cmd should be written back */ 3 121 3 slave_bit_pad bit (27) unal, /* unused space */ 3 122 2 ctl_term, /* control terminal data */ 3 123 3 ctl_attach_name char (32), /* dial id, tty chan, or mrd_ device */ 3 124 3 ctl_attach_type fixed bin, /* attach name meaning: 1=line, 2=dial, 3=mrd_source */ 3 125 3 ctl_pad fixed bin, /* allocation breakage */ 3 126 3 ctl_dial_chan fixed bin (71), /* ipc event channel for dial comm */ 3 127 3 ctl_input char (32), /* ctl input stream name */ 3 128 3 ctl_output char (32), /* ctl output stream name */ 3 129 3 ctl_io char (32), /* ctl i/o stream name */ 3 130 3 ctl_dev_dim char (32), /* ctl_io attached with this dim */ 3 131 3 ctl_ev_chan fixed bin (71), /* IPC event chan ctl term blocks on */ 3 132 3 ctl_device char (32), /* ctl terminal device name */ 3 133 3 form_type char (16), /* format type if printing forms */ 3 134 3 attached bit (1) unal, /* ctl term attached to process */ 3 135 3 forms bit (1) unal, /* on if printing forms */ 3 136 3 pad bit (34) unal, 3 137 2 admin_ec_name char (32), /* name of the ec to use with the "x" command */ 3 138 2 expansion_space (100) fixed bin; /* reserved space...use at your own risk */ 3 139 3 140 /* END INCLUDE FILE ... iodd_static.incl.pl1 */ 207 208 /* BEGIN INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 4 2 4 3 4 4 /****^ HISTORY COMMENTS: 4 5* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 4 6* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 4 7* Added pascal_string_type_dtype descriptor type. Its number is 87. 4 8* Objects of this type are PASCAL string types. 4 9* 2) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 4 10* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 4 11* Added the new C types. 4 12* END HISTORY COMMENTS */ 4 13 4 14 /* This include file defines mnemonic names for the Multics 4 15* standard descriptor types, using both pl1 and cobol terminology. 4 16* PG 780613 4 17* JRD 790530 4 18* JRD 791016 4 19* MBW 810731 4 20* TGO 830614 Add hex types. 4 21* Modified June 83 JMAthane to add PASCAL data types 4 22* TGO 840120 Add float dec extended and generic, float binary generic 4 23**/ 4 24 4 25 dcl (real_fix_bin_1_dtype init (1), 4 26 real_fix_bin_2_dtype init (2), 4 27 real_flt_bin_1_dtype init (3), 4 28 real_flt_bin_2_dtype init (4), 4 29 cplx_fix_bin_1_dtype init (5), 4 30 cplx_fix_bin_2_dtype init (6), 4 31 cplx_flt_bin_1_dtype init (7), 4 32 cplx_flt_bin_2_dtype init (8), 4 33 real_fix_dec_9bit_ls_dtype init (9), 4 34 real_flt_dec_9bit_dtype init (10), 4 35 cplx_fix_dec_9bit_ls_dtype init (11), 4 36 cplx_flt_dec_9bit_dtype init (12), 4 37 pointer_dtype init (13), 4 38 offset_dtype init (14), 4 39 label_dtype init (15), 4 40 entry_dtype init (16), 4 41 structure_dtype init (17), 4 42 area_dtype init (18), 4 43 bit_dtype init (19), 4 44 varying_bit_dtype init (20), 4 45 char_dtype init (21), 4 46 varying_char_dtype init (22), 4 47 file_dtype init (23), 4 48 real_fix_dec_9bit_ls_overp_dtype init (29), 4 49 real_fix_dec_9bit_ts_overp_dtype init (30), 4 50 real_fix_bin_1_uns_dtype init (33), 4 51 real_fix_bin_2_uns_dtype init (34), 4 52 real_fix_dec_9bit_uns_dtype init (35), 4 53 real_fix_dec_9bit_ts_dtype init (36), 4 54 real_fix_dec_4bit_uns_dtype init (38), /* digit-aligned */ 4 55 real_fix_dec_4bit_ts_dtype init (39), /* byte-aligned */ 4 56 real_fix_dec_4bit_bytealigned_uns_dtype init (40), /* COBOL */ 4 57 real_fix_dec_4bit_ls_dtype init (41), /* digit-aligned */ 4 58 real_flt_dec_4bit_dtype init (42), /* digit-aligned */ 4 59 real_fix_dec_4bit_bytealigned_ls_dtype init (43), 4 60 real_flt_dec_4bit_bytealigned_dtype init (44), 4 61 cplx_fix_dec_4bit_bytealigned_ls_dtype init (45), 4 62 cplx_flt_dec_4bit_bytealigned_dtype init (46), 4 63 real_flt_hex_1_dtype init (47), 4 64 real_flt_hex_2_dtype init (48), 4 65 cplx_flt_hex_1_dtype init (49), 4 66 cplx_flt_hex_2_dtype init (50), 4 67 c_typeref_dtype init (54), 4 68 c_enum_dtype init (55), 4 69 c_enum_const_dtype init (56), 4 70 c_union_dtype init (57), 4 71 algol68_straight_dtype init (59), 4 72 algol68_format_dtype init (60), 4 73 algol68_array_descriptor_dtype init (61), 4 74 algol68_union_dtype init (62), 4 75 4 76 cobol_comp_6_dtype init (1), 4 77 cobol_comp_7_dtype init (1), 4 78 cobol_display_ls_dtype init (9), 4 79 cobol_structure_dtype init (17), 4 80 cobol_char_string_dtype init (21), 4 81 cobol_display_ls_overp_dtype init (29), 4 82 cobol_display_ts_overp_dtype init (30), 4 83 cobol_display_uns_dtype init (35), 4 84 cobol_display_ts_dtype init (36), 4 85 cobol_comp_8_uns_dtype init (38), /* digit aligned */ 4 86 cobol_comp_5_ts_dtype init (39), /* byte aligned */ 4 87 cobol_comp_5_uns_dtype init (40), 4 88 cobol_comp_8_ls_dtype init (41), /* digit aligned */ 4 89 real_flt_dec_extended_dtype init (81), /* 9-bit exponent */ 4 90 cplx_flt_dec_extended_dtype init (82), /* 9-bit exponent */ 4 91 real_flt_dec_generic_dtype init (83), /* generic float decimal */ 4 92 cplx_flt_dec_generic_dtype init (84), 4 93 real_flt_bin_generic_dtype init (85), /* generic float binary */ 4 94 cplx_flt_bin_generic_dtype init (86)) fixed bin internal static options (constant); 4 95 4 96 dcl (ft_integer_dtype init (1), 4 97 ft_real_dtype init (3), 4 98 ft_double_dtype init (4), 4 99 ft_complex_dtype init (7), 4 100 ft_complex_double_dtype init (8), 4 101 ft_external_dtype init (16), 4 102 ft_logical_dtype init (19), 4 103 ft_char_dtype init (21), 4 104 ft_hex_real_dtype init (47), 4 105 ft_hex_double_dtype init (48), 4 106 ft_hex_complex_dtype init (49), 4 107 ft_hex_complex_double_dtype init (50) 4 108 ) fixed bin internal static options (constant); 4 109 4 110 dcl (algol68_short_int_dtype init (1), 4 111 algol68_int_dtype init (1), 4 112 algol68_long_int_dtype init (2), 4 113 algol68_real_dtype init (3), 4 114 algol68_long_real_dtype init (4), 4 115 algol68_compl_dtype init (7), 4 116 algol68_long_compl_dtype init (8), 4 117 algol68_bits_dtype init (19), 4 118 algol68_bool_dtype init (19), 4 119 algol68_char_dtype init (21), 4 120 algol68_byte_dtype init (21), 4 121 algol68_struct_struct_char_dtype init (22), 4 122 algol68_struct_struct_bool_dtype init (20) 4 123 ) fixed bin internal static options (constant); 4 124 4 125 dcl (label_constant_runtime_dtype init (24), 4 126 int_entry_runtime_dtype init (25), 4 127 ext_entry_runtime_dtype init (26), 4 128 ext_procedure_runtime_dtype init (27), 4 129 picture_runtime_dtype init (63) 4 130 ) fixed bin internal static options (constant); 4 131 4 132 dcl (pascal_integer_dtype init (1), 4 133 pascal_real_dtype init (4), 4 134 pascal_label_dtype init (24), 4 135 pascal_internal_procedure_dtype init (25), 4 136 pascal_exportable_procedure_dtype init (26), 4 137 pascal_imported_procedure_dtype init (27), 4 138 pascal_typed_pointer_type_dtype init (64), 4 139 pascal_char_dtype init (65), 4 140 pascal_boolean_dtype init (66), 4 141 pascal_record_file_type_dtype init (67), 4 142 pascal_record_type_dtype init (68), 4 143 pascal_set_dtype init (69), 4 144 pascal_enumerated_type_dtype init (70), 4 145 pascal_enumerated_type_element_dtype init (71), 4 146 pascal_enumerated_type_instance_dtype init (72), 4 147 pascal_user_defined_type_dtype init (73), 4 148 pascal_user_defined_type_instance_dtype init (74), 4 149 pascal_text_file_dtype init (75), 4 150 pascal_procedure_type_dtype init (76), 4 151 pascal_variable_formal_parameter_dtype init (77), 4 152 pascal_value_formal_parameter_dtype init (78), 4 153 pascal_entry_formal_parameter_dtype init (79), 4 154 pascal_parameter_procedure_dtype init (80), 4 155 pascal_string_type_dtype init (87)) fixed bin int static options (constant); 4 156 4 157 4 158 /* END INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 208 209 210 end iodd_msg_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 10/28/88 1233.2 iodd_msg_.pl1 >special_ldd>install>MR12.2-1199>iodd_msg_.pl1 205 1 11/30/78 1227.5 desc_dcls.incl.pl1 >ldd>include>desc_dcls.incl.pl1 206 2 10/28/88 1227.4 iod_tables_hdr.incl.pl1 >special_ldd>install>MR12.2-1199>iod_tables_hdr.incl.pl1 207 3 10/28/88 1227.2 iodd_static.incl.pl1 >special_ldd>install>MR12.2-1199>iodd_static.incl.pl1 208 4 10/26/88 1255.5 std_descriptor_types.incl.pl1 >ldd>include>std_descriptor_types.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. NL 000731 constant char(1) initial packed unaligned dcl 54 ref 133 140 a_code parameter fixed bin(35,0) dcl 45 ref 12 a_sev parameter fixed bin(17,0) dcl 43 ref 12 96 a_target parameter fixed bin(17,0) dcl 44 ref 12 95 active 342 based bit(1) level 3 packed packed unaligned dcl 3-17 ref 152 166 180 addr builtin function dcl 87 ref 117 120 121 124 125 126 126 200 200 aptr 000100 automatic pointer dcl 57 set ref 108* 110* 138* arg_count 000102 automatic fixed bin(17,0) dcl 58 set ref 90* 91 137 arg_ptr 000454 automatic pointer dcl 72 set ref 109* 112 126* assign_ 000032 constant entry external dcl 1-22 ref 126 based_code based fixed bin(35,0) dcl 75 ref 112 bin builtin function dcl 87 ref 115 bit_dtype constant fixed bin(17,0) initial dcl 4-25 ref 117 both constant fixed bin(17,0) initial dcl 53 ref 97 152 159 166 173 180 187 code 000104 automatic fixed bin(35,0) dcl 59 set ref 112* 126 126 129 131* convert_status_code_ 000014 constant entry external dcl 79 ref 131 cu_$arg_count 000024 constant entry external dcl 83 ref 90 cu_$arg_list_ptr 000022 constant entry external dcl 82 ref 108 cu_$arg_ptr 000020 constant entry external dcl 81 ref 109 decode_descriptor_ 000016 constant entry external dcl 80 ref 110 ec 000103 automatic fixed bin(35,0) dcl 59 in procedure "iodd_msg_" set ref 109* 154* 155 159* 168* 169 173* 182* 183 187* ec parameter fixed bin(35,0) dcl 196 in procedure "write_msg" set ref 194 200* error constant fixed bin(17,0) initial dcl 50 ref 98 164 error_io 74 based pointer level 2 dcl 3-17 set ref 173* full_msg 000105 automatic char(512) dcl 60 set ref 104* 133* 140* 200 200 inclength based fixed bin(31,0) dcl 1-19 set ref 117* info based structure level 1 dcl 1-11 inprec 0(18) based fixed bin(17,0) level 2 packed packed unaligned dcl 1-11 set ref 121* inscale based fixed bin(17,0) level 2 packed packed unaligned dcl 1-11 set ref 120* inscale_prec 000460 automatic fixed bin(35,0) dcl 1-8 set ref 117 120 121 126* intype 000456 automatic fixed bin(17,0) dcl 1-5 set ref 115* 126* ioa_$general_rs 000026 constant entry external dcl 84 ref 138 iocbp parameter pointer dcl 197 set ref 194 200* iodd_stat_p 000012 external static pointer dcl 77 ref 93 iodd_static based structure level 1 dcl 3-17 iox_$put_chars 000030 constant entry external dcl 85 ref 200 l 000445 automatic fixed bin(17,0) dcl 66 set ref 100* 105* 105 133 134* 134 140 141* 141 145 length builtin function dcl 87 ref 103 132 log constant fixed bin(17,0) initial dcl 48 ref 98 150 log_iocbp 72 based pointer level 2 dcl 3-17 set ref 159* log_msg 342(04) based bit(1) level 3 packed packed unaligned dcl 3-17 ref 152 long 000410 automatic char(100) dcl 63 set ref 130* 131* 132 133 lth 000443 automatic fixed bin(17,0) dcl 66 set ref 138* 139 140 141 145* 146 200* master constant fixed bin(17,0) initial dcl 51 ref 97 155 157 159 169 171 173 183 185 187 master_out 66 based pointer level 2 dcl 3-17 set ref 187* n 000444 automatic fixed bin(17,0) dcl 66 set ref 103* 104 105 132* 133 134 ndims 000450 automatic fixed bin(17,0) dcl 69 set ref 110* normal constant fixed bin(17,0) initial dcl 49 ref 98 outfo based structure level 1 dcl 1-15 outprec 0(18) based fixed bin(17,0) level 2 packed packed unaligned dcl 1-15 set ref 125* outscale based fixed bin(17,0) level 2 packed packed unaligned dcl 1-15 set ref 124* outscale_prec 000461 automatic fixed bin(35,0) dcl 1-8 set ref 124 125 126* outtype 000457 automatic fixed bin(17,0) dcl 1-5 set ref 123* 126* packed 000447 automatic bit(1) dcl 68 set ref 110* 112 115 prec 000451 automatic fixed bin(17,0) dcl 70 set ref 110* 117 121 print_errors 342(03) based bit(1) level 3 packed packed unaligned dcl 3-17 ref 166 proc_msg 000305 automatic char(256) dcl 61 set ref 138* 140 proc_name parameter char packed unaligned dcl 46 ref 12 102 103 104 real_fix_bin_1_dtype constant fixed bin(17,0) initial dcl 4-25 ref 112 123 rtrim builtin function dcl 87 ref 103 132 scale 000452 automatic fixed bin(17,0) dcl 71 set ref 110* 120 sev 000442 automatic fixed bin(17,0) dcl 65 set ref 96* 98 98 98* 150 164 short 000406 automatic char(8) dcl 62 set ref 130* 131* slave constant fixed bin(17,0) initial dcl 52 in procedure "iodd_msg_" ref 97 152 166 180 slave 312 based structure level 2 in structure "iodd_static" dcl 3-17 in procedure "iodd_msg_" slave_out 336 based pointer level 3 dcl 3-17 set ref 154* 168* 182* stat_p 000010 internal static pointer dcl 3-15 set ref 93* 152 152 154 159 166 166 168 173 180 182 187 substr builtin function dcl 87 set ref 104 133* 133 140* 140 target 000441 automatic fixed bin(17,0) dcl 64 set ref 95* 97 97 97* 152 152 155* 157* 159 159 166 166 169* 171* 173 173 180 180 183* 185* 187 187 text_offset based structure level 1 packed packed unaligned dcl 2-45 type 000446 automatic fixed bin(17,0) dcl 67 set ref 110* 112 115 117 117 varying_char_dtype constant fixed bin(17,0) initial dcl 4-25 ref 117 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. IODT_VERSION_5 internal static char(8) initial packed unaligned dcl 2-49 algol68_array_descriptor_dtype internal static fixed bin(17,0) initial dcl 4-25 algol68_bits_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_bool_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_byte_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_char_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_compl_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_format_dtype internal static fixed bin(17,0) initial dcl 4-25 algol68_int_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_long_compl_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_long_int_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_long_real_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_real_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_short_int_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_straight_dtype internal static fixed bin(17,0) initial dcl 4-25 algol68_struct_struct_bool_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_struct_struct_char_dtype internal static fixed bin(17,0) initial dcl 4-110 algol68_union_dtype internal static fixed bin(17,0) initial dcl 4-25 area_dtype internal static fixed bin(17,0) initial dcl 4-25 assign_round_ 000000 constant entry external dcl 1-22 assign_truncate_ 000000 constant entry external dcl 1-22 c_enum_const_dtype internal static fixed bin(17,0) initial dcl 4-25 c_enum_dtype internal static fixed bin(17,0) initial dcl 4-25 c_typeref_dtype internal static fixed bin(17,0) initial dcl 4-25 c_union_dtype internal static fixed bin(17,0) initial dcl 4-25 char_dtype internal static fixed bin(17,0) initial dcl 4-25 char_to_numeric_ 000000 constant entry external dcl 1-22 cobol_char_string_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_5_ts_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_5_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_6_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_7_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_8_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_comp_8_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_display_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_display_ls_overp_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_display_ts_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_display_ts_overp_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_display_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 cobol_structure_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 4-25 cplx_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 4-25 entry_dtype internal static fixed bin(17,0) initial dcl 4-25 ext_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 4-125 ext_procedure_runtime_dtype internal static fixed bin(17,0) initial dcl 4-125 file_dtype internal static fixed bin(17,0) initial dcl 4-25 ft_char_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_complex_double_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_complex_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_double_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_external_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_hex_complex_double_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_hex_complex_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_hex_double_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_hex_real_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_integer_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_logical_dtype internal static fixed bin(17,0) initial dcl 4-96 ft_real_dtype internal static fixed bin(17,0) initial dcl 4-96 int_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 4-125 iod_tables_hdr based structure level 1 dcl 2-23 ithp automatic pointer dcl 2-22 label_constant_runtime_dtype internal static fixed bin(17,0) initial dcl 4-125 label_dtype internal static fixed bin(17,0) initial dcl 4-25 offset_dtype internal static fixed bin(17,0) initial dcl 4-25 outclength based fixed bin(31,0) dcl 1-20 pascal_boolean_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_char_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_entry_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_enumerated_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_enumerated_type_element_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_enumerated_type_instance_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_exportable_procedure_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_imported_procedure_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_integer_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_internal_procedure_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_label_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_parameter_procedure_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_procedure_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_real_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_record_file_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_record_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_set_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_string_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_text_file_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_typed_pointer_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_user_defined_type_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_user_defined_type_instance_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_value_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 4-132 pascal_variable_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 4-132 picture_runtime_dtype internal static fixed bin(17,0) initial dcl 4-125 pointer_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_bin_1_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_bin_2_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_4bit_bytealigned_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_4bit_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_4bit_ts_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_4bit_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_9bit_ls_overp_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_9bit_ts_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_9bit_ts_overp_dtype internal static fixed bin(17,0) initial dcl 4-25 real_fix_dec_9bit_uns_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_dec_4bit_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 4-25 real_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 4-25 structure_dtype internal static fixed bin(17,0) initial dcl 4-25 text_strings based structure level 1 dcl 2-39 text_strings_ptr automatic pointer dcl 2-38 varying_bit_dtype internal static fixed bin(17,0) initial dcl 4-25 NAMES DECLARED BY EXPLICIT CONTEXT. iodd_msg_ 000021 constant entry external dcl 12 write_msg 000706 constant entry internal dcl 194 ref 154 159 168 173 182 187 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1060 1114 733 1070 Length 1400 733 34 250 125 2 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME iodd_msg_ 392 external procedure is an external procedure. write_msg internal procedure shares stack frame of external procedure iodd_msg_. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 stat_p iodd_msg_ STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME iodd_msg_ 000100 aptr iodd_msg_ 000102 arg_count iodd_msg_ 000103 ec iodd_msg_ 000104 code iodd_msg_ 000105 full_msg iodd_msg_ 000305 proc_msg iodd_msg_ 000406 short iodd_msg_ 000410 long iodd_msg_ 000441 target iodd_msg_ 000442 sev iodd_msg_ 000443 lth iodd_msg_ 000444 n iodd_msg_ 000445 l iodd_msg_ 000446 type iodd_msg_ 000447 packed iodd_msg_ 000450 ndims iodd_msg_ 000451 prec iodd_msg_ 000452 scale iodd_msg_ 000454 arg_ptr iodd_msg_ 000456 intype iodd_msg_ 000457 outtype iodd_msg_ 000460 inscale_prec iodd_msg_ 000461 outscale_prec iodd_msg_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_char_temp call_ext_out_desc call_ext_out return_mac shorten_stack ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. assign_ convert_status_code_ cu_$arg_count cu_$arg_list_ptr cu_$arg_ptr decode_descriptor_ ioa_$general_rs iox_$put_chars THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. iodd_stat_p LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 12 000014 90 000034 91 000042 93 000046 95 000052 96 000055 97 000057 98 000066 100 000074 102 000076 103 000104 104 000116 105 000132 108 000137 109 000145 110 000165 112 000212 115 000223 117 000232 120 000242 121 000245 123 000247 124 000251 125 000253 126 000255 129 000300 130 000302 131 000307 132 000330 133 000342 134 000366 137 000373 138 000376 139 000444 140 000446 141 000472 145 000477 146 000502 150 000505 152 000507 154 000522 155 000532 156 000536 157 000537 159 000541 162 000560 164 000561 166 000563 168 000576 169 000606 170 000612 171 000613 173 000615 176 000634 180 000635 182 000647 183 000657 184 000663 185 000664 187 000666 191 000705 194 000706 200 000710 202 000730 ----------------------------------------------------------- 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