COMPILATION LISTING OF SEGMENT gtss_filact_funct08_ Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 12/10/84 1315.4 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * * 4* * Copyright, (C) Honeywell Information Systems Inc., 1981 * 5* * * 6* * * 7* *********************************************************** */ 8 9 /* ************************************************************* 10* * * 11* * Copyright (c) 1979 by Honeywell Information Systems, Inc. * 12* * * 13* ************************************************************* */ 14 gtss_filact_funct08_: proc (mcp_val, high_val, gseg_val, arg_ptr_val, buffer_ptr_val, code); 15 16 /** Derail FILACT function 08 (PURGE CATALOG). 17* 18* All parameters are input parameters except code. 19* 20* code retuurned 0 => Successful. 21* code returned 4 => GCOS err4 (see gtss_pnterr structure). 22* code returned other => multics error code. 23* 24* Author: Robert J. Alvarado Created 1979 25* Change: Dave Ward 08/31/79 ret status from ascii_file_name. 26* Change: Bob Alvarado 09/27/79 added call to aft_$delete. 27***/ 28 dcl mcp_val ptr parm; 29 dcl high_val bit(18)parm; 30 dcl gseg_val ptr parm; 31 dcl arg_ptr_val ptr parm; 32 dcl buffer_ptr_val ptr parm; 33 dcl code fixed bin(35)parm; 34 mcp = mcp_val; 35 high_b = high_val; 36 high_i = fixed (high_b, 18); 37 gseg = gseg_val; 38 arg_ptr = arg_ptr_val; 39 buffer_ptr = buffer_ptr_val; 40 41 code = 0; /* Successful. */ 42 43 /** Obtain purge|release catalog arglist. */ 44 if /* (Purge_Release_args.L_arglist < low_b) | */ 45 ((fixed (Purge_Release_args.L_arglist, 18) +3) > high_i) then do; 46 return_err4: ; 47 code = 4; 48 return; 49 end; 50 arglist_ptr = addrel (gseg, Purge_Release_args.L_arglist); 51 52 /** Obtain return status. **/ 53 call validate_status (Purge_Release_arglist.L_status_return, status_ptr); 54 55 if get_ascii_file_name ( 56 "0"b 57 , Purge_Release_arglist.L_cat_filedescr 58 , addr (ascii_cat_file) 59 , grc 60 ) then do; 61 could_not_purge_release_catalog: ; 62 call bcd_message ( 63 status2.L_bcd_message 64 , status2.message_words 65 , buffer_ptr 66 , "Could not purge/release file."||rtrim (gtss_file_values.dname)||">"||rtrim (gtss_file_values.ename) 67 ); 68 status_word.pd = get_faulty_cat_file_entry (); 69 status_word.status = grc; /* Could not access file specified. */ 70 ret: ; 71 return; 72 end; 73 74 call gtss_expand_pathname_ ( 75 addr (ascii_cat_file) 76 , gtss_file_values.dname 77 , gtss_file_values.ename 78 , code 79 ); 80 if code ^= 0 then goto could_not_purge_release_catalog; 81 if gse_ext_$drm_rule = 2 then do; 82 ascii_cat_file.nn = 1; 83 ascii_cat_file.name = "dummy"; 84 call gtss_expand_pathname_ ( 85 addr (ascii_cat_file) 86 , dummy_path.dname 87 , dummy_path.ename 88 , code 89 ); 90 if dummy_path.ename = gtss_file_values.ename & dummy_path.dname = gtss_file_values.dname then do; 91 call gtss_abort_subsystem_ ( 92 mcp 93 , "gtss_filact_funct08_" 94 , "400000"b3 95 , "MULTICS: Attempt to delete working directory. REQUEST DENIED" 96 ); 97 end; 98 end; 99 directory = rtrim (gtss_file_values.dname)|| 100 ">"|| 101 rtrim (gtss_file_values.ename); 102 sub_catalog = rtrim (gtss_file_values.ename)||">"; 103 do i = lbound (aft_entry, 1) to hbound (aft_entry, 1); 104 if aft_entry (i).used then do; 105 if rtrim (gtss_disk (i).dir_name) = directory | 106 index (rtrim (gtss_disk (i).dir_name), sub_catalog) 107 ^= 0 then do; 108 call gtss_aft_$delete ( 109 (aft_entry (i).altname) 110 , (i) 111 , rs 112 ); 113 if rs ^= 0 then goto could_not_purge_release_catalog; 114 end; 115 end; 116 end; 117 118 call delete_$path ( 119 gtss_file_values.dname 120 , gtss_file_values.ename 121 , "0"b 122 ||"1"b 123 ||"1"b 124 ||"0"b 125 ||"0"b 126 ||"0"b 127 , "gtss_filact_funct08_" 128 , code 129 ); 130 if code ^= 0 then goto could_not_purge_release_catalog; 131 132 status_word.status = "400000"b3; 133 goto ret; 134 135 /** (PC,PF,RF) Purge/Release Catalog/File Declarations. **/ 136 137 dcl 1 Purge_Release_args aligned based(arg_ptr) 138 , 3 word1 139 , 4 zero bit(18)unal 140 , 4 L_arglist bit(18)unal 141 , 3 word2 142 , 4 Purge_Release_function_no fixed bin(17)unal 143 , 4 L_buffer bit(18)unal 144 ; 145 146 dcl 1 Purge_Release_arglist aligned based(arglist_ptr) 147 , 3 word1 148 , 4 L_status_return bit(18)unal 149 , 4 zero bit(18)unal 150 , 3 word2 151 , 4 L_cat_filedescr bit(18)unal 152 , 4 zero bit(18)unal 153 ; 154 /** local variables **/ 155 dcl sub_catalog char(33)var; 156 dcl directory char(168)var; 157 dcl rs fixed bin(35); 158 159 /* (MC) Modify Catalog */ 160 161 1 1 /* BEGIN INCLUDE FILE gtss_dfd_ext_.incl.pl1 */ 1 2 /* 1 3* Created: (Wardd Multics) 06/09/78 1650.6 mst Fri 1 4**/ 1 5 1 6 dcl 1 gtss_dfd_ext_$disk_file_data (41) aligned ext, /* disk_file_data structure */ 1 7 1 8 3 gtss_disk, 1 9 4 dir_name char (168) unal, /* containing directory for file */ 1 10 4 entry_name char (32) unal, /* entry name for file */ 1 11 4 fcb_ptr ptr aligned, /* ptr to file control block */ 1 12 4 msf_array_ptr ptr, /* Pointer to an array of pointers for a msf. Each 1 13* component which has been accessed has a corresponding 1 14* initialized pointer. Currently 500 components 1 15* are supported. */ 1 16 4 single_segment_ptr ptr, /* Pointer to segment for single segment file */ 1 17 4 indicators aligned, /* one word of flags */ 1 18 1 19 5 msf bit (1) unaligned, /* 1=msf segment | 0= single segment */ 1 20 5 protected_file bit (1) unaligned, /* 1=file uses protections | 0= unprotected */ 1 21 5 fill bit (34) unal, 1 22 1 23 4 permissions aligned, 1 24 5 read bit (1) unaligned, /* 1=read permission */ 1 25 5 execute bit (1) unaligned, /* 1=execute permission */ 1 26 5 write bit (1) unaligned, /* 1=write permission */ 1 27 5 fill2 bit (33) unaligned, /* unused at this time */ 1 28 1 29 4 access_mode bit (6) aligned, /* contains the mode by which the file was accessed */ 1 30 4 component fixed bin, /* current component value (first component = 0) */ 1 31 4 offset fixed bin (24), /* current word offset in the component */ 1 32 4 file_position fixed bin (30), /* current file position in words */ 1 33 4 file_size fixed bin (30), /* size of file in words */ 1 34 4 no_components fixed bin (24), /* number of components for a msf */ 1 35 4 attributes_ptr ptr, /* Pointer to the attributes structure 1 36* for this file. (See gtss_file_attributes.incl.pl1) */ 1 37 1 38 4 pat_body, 1 39 1 40 5 word_0, 1 41 6 defective bit (1) unal, /* 1 = file has defective space */ 1 42 6 io_errors bit (1) unal, /* 1 = I/O errors encountered on file */ 1 43 6 reserved bit (2) unal, /* Reserved for GCOS */ 1 44 6 sct bit (12) unal, /* address of SCT for device on which 1 45* file begins or if cataloged, 1 46* for device with file catalog entry */ 1 47 6 reserved2 bit (2) unal, /* Reserved for GCOS */ 1 48 1 49 5 word_1, 1 50 6 io_time fixed bin (35), /* I/O time for this file */ 1 51 1 52 5 word_2, 1 53 6 protected bit (1) unal, /* 1 = file has protected allocation */ 1 54 6 hash_code bit (5) unal, /* hash code of user name under which 1 55* file is cataloged */ 1 56 6 not_cat bit (1) unal, /* 1 = file is not cataloged */ 1 57 6 last_desc bit (1) unal, /* 1 = last descriptor for file is not in memory */ 1 58 6 random bit (1) unal, /* 1 = access to file is random */ 1 59 6 perm bit (1) unal, /* 1 = file space is permanently assigned */ 1 60 6 first_desc bit (1) unal, /* 1 = first descriptor for file is not in memory */ 1 61 6 creator bit (1) unal, /* 1 = user is not creator of file */ 1 62 6 disposition bit (2) unal, /* Abort disposition code 1 63* 00 = Release 1 64* 01 = Dismount 1 65* 10 = Save 1 66* 11 = Continue */ 1 67 6 ids1 bit (1) unal, /* 1 = file is an I-D-S/I file */ 1 68 6 write_performed bit (1) unal, /* 1 = write was performed on file */ 1 69 6 unpermitted_access bit (1) unal, /* 1 = unpermitted access to file attempted or seek 1 70* attempted to part of file marked defective (only 1 71* for procted allocation) */ 1 72 6 purge bit (1) unal, /* 1 = file space to be purgedbefore deallocating file. */ 1 73 6 sector_number bit (18) unal, /* If cataloged file, sector number of file catalog 1 74* (on device with SCT referenced in word 0). If 1 75* cataloged file that is proctected (bit 0 ON in this 1 76* word), memory location of table in File Management 1 77* Supervisor Executive. If user temporary file, 1 78* largest size file has ever attained, in llinks. 1 79* If system value equals 777777 octal, it is system 1 80* file created by System Input. */ 1 81 1 82 5 word_3, 1 83 6 llink_size bit (14) unal, /* 0-13 ^= 0, Current total file size in llinks 1 84* 0-13 = 0, File size is greater than 16,383 llinks, 1 85* and if the file is cataloged, call to .MFS19,5 with 1 86* offset to PAT pointer in index 5 will cause bits 1 87* 14-35 of Q-register to be set to file size. (Unless 1 88* there is a Seek error on file catalog in which case 1 89* zero is returned. ) 1 90* */ 1 91 6 llink_position bit (22) unal, /* Relative llink position within the space descriptors 1 92* in memory. */ 1 93 1 94 5 word_4, 1 95 6 not_last_desc bit (1) unal, /* 1 = not last descriptor in memory */ 1 96 6 space_desc bit (1) unal, /* 0 = this is space descriptor */ 1 97 6 space_defective bit (1) unal, /* 1 = Space is defective */ 1 98 6 extent bit (15) unal, /* Number of llinks in this extent (area defined by this 1 99* descriptor) */ 1 100 6 origin bit (18) unal; /* device llinks number of origin of this extent */ 1 101 /* END INCLUDE FILE gtss_dfd_ext_.incl.pl1 */ 162 163 2 1 /* BEGIN INCLUDE FILE gtss_filact_intp3.incl.pl1 */ 2 2 /* 2 3* Created: (Wardd Multics) 10/05/78 1601.4 mst Thu 2 4**/ 2 5 get_faulty_cat_file_entry: proc returns (bit (18)); 2 6 2 7 /** Locate offset to catalog file description entry 2 8* that caused search failure locating Multics entry. 2 9***/ 2 10 return (cat_filedescr_name_offset); 2 11 end /* get_faulty_cat_file_entry */; 2 12 /* END INCLUDE FILE gtss_filact_intp3.incl.pl1 */ 164 165 166 3 1 /* BEGIN INCLUDE FILE gtss_filact_intp2.incl.pl1 */ 3 2 /* 3 3* Created: (Wardd Multics) 10/05/78 1601.2 mst Thu 3 4**/ 3 5 3 6 /* Change: Dave Ward 08/18/81 correct stringrange error. 3 7**/ 3 8 get_ascii_file_name: proc (fnia, cfdl, acfp, grc)returns (bit (1)); 3 9 3 10 /** Obtain the catalog/file description 3 11* in ascii. 3 12* Reset gcos retrun code (grc) only if error. 3 13***/ 3 14 dcl fnia bit(1)parm /* "1"b => file name in ascii. */; 3 15 dcl cfdl bit(18)parm /* Location of catalog file description. */; 3 16 dcl acfp ptr parm /* Pointer to ascii_cat_file structure. */; 3 17 dcl grc bit(18)parm /* GCOS return status code. */; 3 18 3 19 ap = acfp; /* Local value. */ 3 20 cat_filedescr_name_offset = "0"b; /* => offset to "current" name in catalog file description. */ 3 21 3 22 if /* (cfdl < low_b) | */ 3 23 (fixed (cfdl, 18)+5 > high_i) then do; 3 24 goto return_err4; 3 25 end; /* Require USERID and atleast file name. */ 3 26 descriptor_ptr = addrel (gseg, cfdl); 3 27 3 28 if cfd2.USERID = -1 then do; /* cfd2.USERID is that of current terminal user. */ 3 29 descriptor_ptr -> bit72 = gtss_ust.lid; 3 30 cfd2.USERID_password = (12)"20"b3; 3 31 end; 3 32 3 33 cat_filedescr_name_offset = cfdl; 3 34 3 35 do nic = 0 to 5; /* Search for end of list. */ 3 36 if nic = 0 then 3 37 if cdf4.end_of_list = -1 then do; /* Only a USERID. */ 3 38 acf.nn = 1; 3 39 goto gal; 3 40 end; 3 41 3 42 if (fixed (cfdl, 18)+ (nic*2)+6) > high_i then do; 3 43 goto return_err4; 3 44 end; /* cat/filedescr entry out of memory. */ 3 45 3 46 if cfd2.end_of_list = -1 then do; /* cat/filedescr isolated. */ 3 47 cat_filedescr_name_offset = 3 48 bit (fixed (fixed (cfdl, 18) + (nic*4) + 4, 18)); /* Offset to name entry (global). */ 3 49 acf.nn = nic+2; 3 50 3 51 gal: ; 3 52 do i = 1 to acf.nn; 3 53 3 54 /** Store catalog file description for expand path. **/ 3 55 3 56 if (i > 1) & (i = acf.nn) & fnia then do; 3 57 callers_buf.restore_switch = "000000000001"b3; /* => file name in ascii. */ 3 58 acf.name (i) = translate (cfd3 (i).name, 3 59 "abcdefghijklmnopqrstuvwxyz", 3 60 "ABCDEFGHIJKLMNOPQRSTUVWXYZ"); 3 61 end; 3 62 else 3 63 call gtss_bcd_ascii_$lc ( 3 64 addr (cfd3 (i).name) 3 65 , 12 3 66 , addr (acf.name (i)) 3 67 ); 3 68 end; 3 69 3 70 if substr (string (gtss_ext_$db), 09, 11) then do; 3 71 call ioa_ ("cat/filedescr:"); 3 72 do i = 1 to acf.nn; 3 73 call ioa_ ("^3i. ""^a""", i, acf.name (i)); 3 74 end; 3 75 end; 3 76 3 77 if substr (acf.name (1), 1, 6) = "!!!!!!" then 3 78 acf.name (1) = gse_ext_$umc_name; 3 79 callers_buf.file_id_in_ascii = 3 80 substr (acf.name (acf.nn), 1, length (callers_buf.file_id_in_ascii)); 3 81 3 82 /* Determine if there are illegal characters 3 83* in the name. 3 84**/ 3 85 do i = 1 to acf.nn; 3 86 if acf.name (i) = "*src" then return ("0"b); 3 87 if verify ( 3 88 rtrim (acf.name (i)) 3 89 , "0123456789abcdefghijklmnopqrstuvwxyz.-_" 3 90 )>0 then do; 3 91 grc = "403400"b3; /* Yes, illegal characters. */ 3 92 return ("1"b); 3 93 end; 3 94 end; 3 95 3 96 return ("0"b); /* Success. */ 3 97 end; 3 98 end; 3 99 3 100 /** cat/filedescr has no end of list marker. **/ 3 101 cat_filedescr_name_offset = "0"b; 3 102 grc = "403500"b3; /* Illegal cat/file desc. */ 3 103 return ("1"b); /* Failure. */ 3 104 3 105 dcl ap ptr /* Local acfp */; 3 106 dcl 1 acf aligned based(ap) like ascii_cat_file; 3 107 3 108 dcl 1 callers_buf aligned based(buffer_ptr), 3 109 3 restore_switch bit(36), 3 110 3 file_id_in_ascii char(8); 3 111 3 112 dcl 1 cfd2 aligned based(descriptor_ptr) /* 2nd description of catalog/file list. */ 3 113 , 3 user_master_catalog 3 114 , 4 USERID fixed bin(71) 3 115 , 4 USERID_password bit(72) 3 116 , 3 intermediate_catalogs (nic) 3 117 , 4 CATALOG bit(72) 3 118 , 4 CATALOG_password bit(72) 3 119 , 3 file_to_be_accessed 3 120 , 4 FILENAME bit(72) 3 121 , 4 FILENAME_password bit(72) 3 122 , 3 end_of_list fixed bin(35) 3 123 ; 3 124 3 125 dcl 1 cfd3 (7) aligned based(descriptor_ptr) /* 3rd description of catalog/file list. */ 3 126 , 3 name char(8) 3 127 , 3 password bit(72) 3 128 ; 3 129 3 130 dcl 1 cdf4 aligned based(descriptor_ptr) /* 4th description of catalog/file list. */ 3 131 , 3 user_master_catalog 3 132 , 4 USERID fixed bin(71) 3 133 , 4 USERID_password bit(72) 3 134 , 3 end_of_list fixed bin(35) 3 135 ; 3 136 end /* get_ascii_file_name */; 3 137 3 138 /* END INCLUDE FILE gtss_filact_intp2.incl.pl1 */ 167 168 4 1 /* BEGIN INCLUDE FILE gtss_filact_intp7.incl.pl1 */ 4 2 bcd_message: proc (ml, mw, bp, m); 4 3 4 4 /** Convert message (m) to bcd. 4 5* Store in user's buffer (location bmp). 4 6* Set ml to this location and mw to number of words 4 7* in message. 4 8* 4 9* Zero ml and mw if not possible. 4 10***/ 4 11 dcl ml bit(18)unal parm; 4 12 dcl mw fixed bin(17)unal parm; 4 13 dcl bp ptr parm; 4 14 dcl m char(*)parm; 4 15 ml = "0"b; 4 16 mw = 0; 4 17 4 18 l = length (m); 4 19 n = divide (l+5, 6, 17, 0); /* Number of words. */ 4 20 if n>355 then do; 4 21 n = 355; 4 22 l = n*6; 4 23 end; 4 24 4 25 bmp = addrel (bp, 25); /* => 355 FMS buffer portion of 380 word buffer. */ 4 26 call gtss_ascii_bcd_ (addr (m), l, bmp); 4 27 f = mod (l, 6); /* Characters to fill to word. */ 4 28 4 29 if f>0 then msg.last_word.blank = "20"b3; 4 30 ml = rel (bmp); /* Word offset to message (in caller's buffer). */ 4 31 mw = n; 4 32 return; 4 33 dcl n fixed bin; 4 34 dcl f fixed bin; 4 35 dcl l fixed bin; 4 36 4 37 dcl bmp ptr; 4 38 dcl 1 msg aligned based(bmp), 4 39 2 fill (n-1), 4 40 2 last_word, 4 41 3 skip (f)bit(6)unal, 4 42 3 blank (6-f)bit(6)unal; 4 43 end /* bcd_message */; 4 44 /* END INCLUDE FILE gtss_filact_intp7.incl.pl1 */ 169 170 5 1 /* BEGIN INCLUDE FILE gtss_filact_intp1.incl.pl1 */ 5 2 /* 5 3* Created: (Wardd Multics) 10/05/78 1600.9 mst Thu 5 4**/ 5 5 validate_status: proc (status_address, sp); 5 6 5 7 dcl status_address bit (18)parm; 5 8 dcl sp ptr parm; 5 9 dcl status_pointer ptr init(null()); 5 10 5 11 5 12 /** Assure 2 word status not above memory. **/ 5 13 if (status_address >= high_b) then goto return_err4; 5 14 5 15 /** Assure status words and arglist do not overlap. **/ 5 16 if (fixed(status_address,18)+1) >= fixed(filact_args.L_arglist,18) & 5 17 fixed (status_address, 18) <= (fixed (filact_args.L_arglist, 18)+ 1) then goto return_err4; 5 18 5 19 /** Obtain pointer to status words. **/ 5 20 sp, status_pointer = addrel (gseg, status_address); 5 21 unspec (status_pointer -> status_word) = "0"b; 5 22 return; 5 23 5 24 dcl 1 filact_args aligned based(arg_ptr), /* 1st word only. */ 5 25 2 zero bit(18)unal, 5 26 2 L_arglist bit(18)unal; 5 27 end /* validate_status */; 5 28 /* END INCLUDE FILE gtss_filact_intp1.incl.pl1 */ 171 172 173 /** Declarations for gtss_drl_filact_: 174* IDENTIFIER ATTRIBUTES **/ 175 dcl file_name_in_ascii bit(1); 176 dcl bit72 bit(72)aligned based; 177 dcl nic fixed bin(24); 178 dcl p ptr init(null()); 179 dcl access_mode bit (6); 180 dcl addr builtin; 181 dcl addrel builtin; 182 dcl aft_code fixed bin (35); 183 dcl aft_name char (8); 184 dcl altname char (8) aligned based (altname_ptr); 185 dcl altname_ptr ptr init(null()); 186 dcl append_mode bit (36) static int options(constant)init ("100000000000"b3); 187 dcl arglist_ptr ptr init(null()); 188 dcl arg_ptr ptr init(null()); 189 dcl attribute_segment_ptr ptr init(null()); 190 dcl bit builtin; 191 dcl bit_count fixed bin (24); 192 dcl cat_filedescr_name_offset bit(18); 193 dcl cdate fixed bin (71); 194 dcl clim float bin; 195 dcl crf fixed bin(24); 196 dcl csp float bin; 197 dcl delete_$path entry (char (*), char (*), bit (6), char (*), fixed bin (35)); 198 dcl descriptor_address bit (18); 199 dcl descriptor_ptr ptr init(null()); 200 dcl dir_name char (168); 201 dcl divide builtin; 202 dcl entry_name char (12) init (" "); 203 dcl error_table_$incorrect_access fixed bin (35) ext; 204 dcl error_table_$moderr fixed bin (35) ext; 205 dcl error_table_$namedup fixed bin (35) ext; 206 dcl error_table_$noentry fixed bin (35) ext; 207 dcl error_table_$no_dir fixed bin (35) ext; 208 dcl error_table_$not_seg_type fixed bin(35)ext; 209 dcl error_table_$segknown fixed bin (35) ext; 210 dcl error_table_$seg_not_found fixed bin (35) ext; 211 dcl error_table_$nomatch fixed bin (35) ext; 212 dcl execute_mode bit (36) static int options(constant)init ("200000000000"b3); 213 dcl file_no fixed bin (24); 214 dcl fixed builtin; 215 dcl FMS_block_ptr ptr init(null()); 216 dcl four_NULS char (4)static int options (constant)init ((4)"") /* 4 octal 000's */; 217 dcl grc bit(18)init("400400"b3); 218 dcl gseg ptr init(null()); 219 dcl gtss_fail condition; 220 dcl have_file bit(1); 221 dcl hbound builtin; 222 dcl hcs_$add_acl_entries entry (char (*), char (*), ptr, fixed bin(24), fixed bin (35)); 223 dcl hcs_$add_dir_acl_entries entry (char (*), char (*), ptr, fixed bin, fixed bin (35)); 224 dcl hcs_$add_inacl_entries entry (char (*), char (*), ptr, fixed bin, fixed bin (3), fixed bin (35)); 225 dcl hcs_$append_branchx entry (char (*), char (*), fixed bin (5), (3) fixed bin (3), char (*), fixed bin (1), fixed bin (1), fixed bin (24), fixed bin (35)); 226 dcl hcs_$delentry_file entry(char(*),char(*),fixed bin(35)); 227 dcl hcs_$initiate entry (char (*), char (*), char (*), fixed bin (1), fixed bin (2), ptr, fixed bin (35)); 228 dcl hcs_$make_seg entry (char (*), char (*), char (*), fixed bin (5), ptr, fixed bin (35)); 229 dcl hcs_$quota_read entry (char (*), fixed bin (18), fixed bin (71), bit (36) aligned, bit (36), fixed bin (1), fixed bin (18), fixed bin (35)); 230 dcl hcs_$status_long entry (char (*), char (*), fixed bin (1), ptr,ptr, fixed bin (35)); 231 dcl high_b bit(18)aligned; 232 dcl high_i fixed bin(18)aligned; 233 dcl i fixed bin(24); 234 dcl increment fixed bin(24); 235 dcl ioa_ entry options (variable); 236 dcl k fixed bin(24); 237 dcl l fixed bin(24); 238 dcl lbound builtin; 239 dcl low_b bit(18)aligned static int options(constant)init("000147"b3) /* 103 dec. */; 240 dcl low_i fixed bin(18)aligned static int options(constant)init(103); 241 dcl max_options fixed bin static int options(constant)init (100); 242 dcl max_resources fixed bin static int options(constant)init (99999); 243 dcl minus_one bit (36) static int options(constant)init ((36)"1"b); 244 dcl mlim float bin; 245 dcl mod builtin; 246 dcl modify_mode bit (36) static int options(constant)init ("200000000000"b3); 247 dcl msp float bin; 248 dcl multics_access_mode fixed bin(5); 249 dcl path_name char (168) varying; 250 dcl person_id char (22); 251 dcl quota fixed bin (18); 252 dcl read_mode bit (36) static int options(constant)init ("400000000000"b3); 253 dcl rel builtin; 254 dcl rings (3) fixed bin (3) static int options(constant)init (4, 4, 4); 255 dcl seg_acl_count fixed bin; 256 dcl shlim (0:7) float bin; 257 dcl shsp (0:7) float bin; 258 dcl size builtin; 259 dcl smc_entry_ptr ptr init(null()); 260 dcl sons_lvid bit (36); 261 dcl status fixed bin (24); 262 dcl status_mode bit (36) static int options(constant)init ("400000000000"b3); 263 dcl status_ptr ptr init(null()); 264 dcl substr builtin; 265 dcl switches bit (6) static int options(constant)init ("37"b3); 266 dcl tacc_sw fixed bin (1); 267 dcl trp fixed bin (71); 268 dcl tup bit (36) aligned; 269 dcl two_words bit (72) based; 270 dcl type fixed bin (2); 271 dcl used fixed bin (18); 272 dcl user_attribute_word bit (35); 273 dcl user_info_$limits entry (float bin, float bin, fixed bin (71), fixed bin(24), (0:7) float bin, float bin, float bin, (0:7) float bin); 274 dcl words380 bit(13680)aligned based; 275 dcl write_mode bit (36) static int options(constant)init ("100000000000"b3); 276 277 dcl 1 status2 aligned based(status_ptr) 278 , 3 word1 279 , 4 status_code bit(12)unal 280 , 4 zero1 bit(06)unal 281 , 4 zero2 bit(18)unal 282 , 3 word2 283 , 4 L_bcd_message bit(18)unal 284 , 4 message_words fixed bin(17)unal 285 ; 286 287 dcl 1 bcdname aligned based(p), 288 2 first8 bit(48)unal, 289 2 last4 bit(24)unal; 290 291 /** Structures: **/ 292 dcl 1 filact_args aligned based (arg_ptr), 293 2 altname_address bit (18) unaligned, 294 2 arglist_address bit (18) unaligned, 295 2 function_no fixed bin (17) unaligned, 296 2 buffer_address bit (18) unaligned; 297 298 299 dcl 1 arglist aligned based (arglist_ptr), 300 2 status_address bit (18) unaligned, 301 2 record_address bit (18) unaligned, 302 2 descriptor_address bit (18) unaligned, 303 2 permissions_address bit (18) unaligned, 304 2 options_address bit (18) unaligned, 305 2 fill1 bit (18) unaligned; 306 307 308 dcl 1 lib_arglist aligned based (arglist_ptr), 309 2 status_address bit (18) unaligned, 310 2 fill bit (17) unaligned, 311 2 mode bit (1) unaligned, 312 2 fill1 bit (24) unaligned, 313 2 file_code bit (12) unaligned; 314 315 316 317 dcl 1 status_word aligned based (status_ptr), 318 2 status bit (18) unaligned, 319 2 pd bit (18) unaligned, 320 2 null_bit bit (1) unaligned, 321 2 user_attributes bit (35) unaligned; 322 323 324 325 dcl 1 descriptor (0:8) aligned based (descriptor_ptr), 326 2 name bit (72) aligned, 327 2 password bit (72) aligned; 328 329 dcl 1 dummy_path, 330 2 dname char(168)unal, 331 2 ename char(032)unal; 332 333 dcl 1 FMS_block aligned based (FMS_block_ptr), 334 2 address bit (18) unaligned; 335 336 337 dcl 1 FMS_data_block aligned based (buffer_ptr), 338 2 restore_switch bit (36) aligned, 339 2 file_id char (8) aligned, 340 2 fill (3:24) bit (36) aligned, 341 2 record_type fixed bin (5) unaligned, 342 2 fill2 bit (30) unaligned; 343 344 dcl 1 permissions aligned based (permissions_ptr), 345 2 read bit (1) unaligned, 346 2 write bit (1) unaligned, 347 2 append bit (1) unaligned, 348 2 execute bit (1) unaligned, 349 2 purge bit (1) unaligned, 350 2 modify bit (1) unaligned, 351 2 lock bit (1) unaligned, 352 2 fill bit (1) unaligned, 353 2 create bit (1) unaligned, 354 2 recovery bit (1) unaligned, 355 2 fill1 bit (8) unaligned, 356 2 test bit (1) unaligned, 357 2 query bit (1) unaligned, 358 2 fill2 bit (16) unaligned; 359 360 361 362 dcl 1 options aligned based (options_ptr), 363 2 contigous bit (1) unaligned, 364 2 random bit (1) unaligned, 365 2 TSS_create bit (1) unaligned, 366 2 I_D_S bit (1) unaligned, 367 2 llink_allocated bit (1) unaligned, 368 2 nostructured_device bit (1) unaligned, 369 2 fill1 bit (1) unaligned, 370 2 attribute_present bit (1) unaligned, 371 2 user_attribute bit (1) unaligned, 372 2 fill2 bit (4) unaligned, 373 2 FMS_protection bit (1) unaligned, 374 2 fill3 bit (4) unaligned, 375 2 device_name bit (18) unaligned, 376 2 initial_size bit (18) unaligned, 377 2 max_size bit (18) unaligned, 378 2 specific_permissions (0:max_options) aligned, 379 3 userid bit (72) aligned, 380 3 read bit (1) unaligned, 381 3 write bit (1) unaligned, 382 3 append bit (1) unaligned, 383 3 execute bit (1) unaligned, 384 3 purge bit (1) unaligned, 385 3 modify bit (1) unaligned, 386 3 lock bit (1) unaligned, 387 3 fill bit (1) unaligned, 388 3 create bit (1) unaligned, 389 3 recovery bit (1) unaligned; 390 391 392 dcl 1 smc_arglist aligned based (arglist_ptr), 393 2 status_address bit (18) unaligned, 394 2 entry_address bit (18) unaligned; 395 396 397 398 399 dcl 1 smc_entry aligned based (smc_entry_ptr), 400 2 userid bit (72) unaligned, 401 2 fill1 bit (36) aligned, 402 2 fill2 bit (36) aligned, 403 2 space_time fixed bin (35) aligned, 404 2 llinks_used fixed bin (17) unaligned, 405 2 llinks_allowed fixed bin (17) unaligned, 406 2 fill3 bit (36) aligned, 407 2 resources fixed bin (17) unaligned, 408 2 lodx bit (1) unaligned, 409 2 cardin bit (1) unaligned, 410 2 talk bit (1) unaligned, 411 2 lods bit (1) unaligned, 412 2 fill4 bit (2) unaligned, 413 2 urgency bit (12) unaligned, 414 2 password bit (72) unaligned, 415 2 reserved bit (36) aligned, 416 2 fill5 bit (10) unaligned, 417 2 resources_used fixed bin (25) unaligned; 418 6 1 /* BEGIN INCLUDE FILE gtss_ust_ext_.incl.pl1 */ 6 2 /* UST: User Status Table 6 3* definitions based on 6 4* System Tables, Order number DD14-01E, January 1981 6 5* Section 15, Time Sharing System 6 6* 6 7* Authors: Robert J. Grimes Created 6 8* - Albert N. Kepner 1978 6 9* - Robert M. May 6 10* - David B. Ward 6 11* Change: Dave Ward 02/23/79 Level 4 numbering. 6 12* Change: Ron Barstad 83-07-12 Repaired damaged formating and word offset comments 6 13* Brought up to 4JS3 functionality 6 14**/ 6 15 /* octal word offsets of entries */ 6 16 dcl 1 gtss_ust_ext_$ust aligned ext, 6 17 3 gtss_ust, 6 18 /* 0-1 */ 4 lid bit (72), 6 19 /* 2 */ 4 lstp bit (36), 6 20 /* 3 */ 4 ltin bit (36), 6 21 /* 4 */ 4 lstio, 6 22 5 no_of_chars_by_8 fixed bin (18) uns unal, 6 23 5 no_of_disk_io fixed bin (18) uns unal, 6 24 /* 5 */ 4 lsnub bit (36), 6 25 /* 6-7 */ 4 lchg bit (72), 6 26 /* 10 */ 4 lbuf, 6 27 5 address bit (18)unaligned, 6 28 5 tally bit (1)unaligned, 6 29 5 terminal_type bit (5)unaligned, 6 30 5 station_id bit (12)unaligned, 6 31 /* 11-12 */ 4 liost (0:1) bit (36), 6 32 /* 13 */ 4 lcc bit (36), 6 33 /* 14 */ 4 lback, 6 34 5 fill1 bit (18) unaligned, 6 35 5 gwake fixed bin (17) unaligned, 6 36 /* 15 */ 4 lflag, 6 37 5 mp_list bit (18) unaligned, 6 38 5 flags unaligned, 6 39 6 b18 bit (1) unaligned, 6 40 6 b19 bit (1) unaligned, 6 41 6 b20 bit (1) unaligned, 6 42 6 b21 bit (1) unaligned, 6 43 6 b22 bit (1) unaligned, 6 44 6 b23 bit (1) unaligned, 6 45 6 b24 bit (1) unaligned, 6 46 6 b25 bit (1) unaligned, 6 47 6 b26 bit (1) unaligned, 6 48 6 b27 bit (1) unaligned, 6 49 6 b28 bit (1) unaligned, 6 50 6 b29 bit (1) unaligned, 6 51 6 b30 bit (1) unaligned, 6 52 6 b31 bit (1) unaligned, 6 53 6 b32 bit (1) unaligned, 6 54 6 b33 bit (1) unaligned, 6 55 6 b34 bit (1) unaligned, 6 56 6 b35 bit (1) unaligned, 6 57 /* 16 */ 4 lkdss bit (36), 6 58 /* 17 */ 4 lfile, 6 59 5 program_stack fixed bin (17) unal, 6 60 5 file_list_ptr bit (18) unal, 6 61 /* 20 */ 4 lttys bit (36), 6 62 /* 21 */ 4 lswth, 6 63 5 b0 bit (1) unaligned, 6 64 5 b1 bit (1) unaligned, 6 65 5 b2 bit (1) unaligned, 6 66 5 b3 bit (1) unaligned, 6 67 5 b4 bit (1) unaligned, 6 68 5 b5 bit (1) unaligned, 6 69 5 b6 bit (1) unaligned, 6 70 5 b7 bit (1) unaligned, 6 71 5 b8 bit (1) unaligned, 6 72 5 b9 bit (1) unaligned, 6 73 5 b10 bit (1) unaligned, 6 74 5 b11 bit (1) unaligned, 6 75 5 b12 bit (1) unaligned, 6 76 5 b13 bit (1) unaligned, 6 77 5 b14 bit (1) unaligned, 6 78 5 b15 bit (1) unaligned, 6 79 5 b16 bit (1) unaligned, 6 80 5 b17 bit (1) unaligned, 6 81 5 b18 bit (1) unaligned, 6 82 5 b19 bit (1) unaligned, 6 83 5 b20 bit (1) unaligned, 6 84 5 b21 bit (1) unaligned, 6 85 5 b22 bit (1) unaligned, 6 86 5 b23 bit (1) unaligned, 6 87 5 b24 bit (1) unaligned, 6 88 5 b25 bit (1) unaligned, 6 89 5 b26 bit (1) unaligned, 6 90 5 b27 bit (1) unaligned, 6 91 5 b28 bit (1) unaligned, 6 92 5 b29 bit (1) unaligned, 6 93 5 b30 bit (1) unaligned, 6 94 5 b31 bit (1) unaligned, 6 95 5 b32 bit (1) unaligned, 6 96 5 b33 bit (1) unaligned, 6 97 5 b34 bit (1) unaligned, 6 98 5 b35 bit (1) unaligned, 6 99 /* 22 */ 4 lsize, 6 100 5 bar fixed bin (17) unaligned, 6 101 5 limit bit (18) unaligned, 6 102 /* 23... */ 4 lswap, 6 103 5 fill bit (18) unal, 6 104 5 size bit (18) unal, 6 105 /* ...24 */ 4 transfer_cell bit (36) unal, 6 106 /* 25 */ 4 lerrm bit (36), 6 107 /* 26-37 */ 4 lcfil (0:9) bit (36), 6 108 /* 40 */ 4 lsybc, 6 109 5 b0_17 fixed bin (17) unaligned, 6 110 5 b18_35 fixed bin (17) unaligned, 6 111 /* 41-42 */ 4 lstem (0:1) bit (36), 6 112 /* 43 */ 4 lcals, 6 113 5 b0_17 fixed bin (17) unaligned, 6 114 5 b18_35 bit (18) unaligned, 6 115 /* 44-51 */ 4 subsystems (3), 6 116 5 content_lswap, 6 117 6 fill bit (18) unal, 6 118 6 size bit (18) unal, 6 119 5 tally_address fixed bin (17) unaligned, 6 120 5 ss_flags bit (18) unaligned, 6 121 /* 52 */ 4 ltalc, 6 122 5 tod fixed bin (17) unaligned, 6 123 5 startup fixed bin (17) unaligned, 6 124 /* 53 */ 4 lspts fixed bin (35), 6 125 /* 54 */ 4 lflg2, 6 126 5 b0 bit (1) unaligned, 6 127 5 b1 bit (1) unaligned, 6 128 5 b2 bit (1) unaligned, 6 129 5 b3 bit (1) unaligned, 6 130 5 b4 bit (1) unaligned, 6 131 5 b5 bit (1) unaligned, 6 132 5 b6 bit (1) unaligned, 6 133 5 b7 bit (1) unaligned, 6 134 5 b8 bit (1) unaligned, 6 135 5 b9 bit (1) unaligned, 6 136 5 b10 bit (1) unaligned, 6 137 5 b11 bit (1) unaligned, 6 138 5 b12 bit (1) unaligned, 6 139 5 b13 bit (1) unaligned, 6 140 5 b14 bit (1) unaligned, 6 141 5 b15 bit (1) unaligned, 6 142 5 b16 bit (1) unaligned, 6 143 5 b17 bit (1) unaligned, 6 144 5 b18 bit (1) unaligned, 6 145 5 b19 bit (1) unaligned, 6 146 5 b20 bit (1) unaligned, 6 147 5 b21 bit (1) unaligned, 6 148 5 b22 bit (1) unaligned, 6 149 5 b23 bit (1) unaligned, 6 150 5 b24 bit (1) unaligned, 6 151 5 b25 bit (1) unaligned, 6 152 5 b26 bit (1) unaligned, 6 153 5 b27 bit (1) unaligned, 6 154 5 b28 bit (1) unaligned, 6 155 5 b29 bit (1) unaligned, 6 156 5 b30 bit (1) unaligned, 6 157 5 b31 bit (1) unaligned, 6 158 5 b32 bit (1) unaligned, 6 159 5 b33 bit (1) unaligned, 6 160 5 b34 bit (1) unaligned, 6 161 5 b35 bit (1) unaligned, 6 162 /* 55-60 */ 4 lsftm (0:3) bit (36), 6 163 /* 61 */ 4 lsprt fixed bin (35), 6 164 /* 62 */ 4 ltrm bit (36), 6 165 /* 63 */ 4 linno fixed bin (35), 6 166 /* 64 */ 4 lincr fixed bin (35), 6 167 /* 65 */ 4 ltdes bit (36), 6 168 /* 66 */ 4 lbptr bit (36), 6 169 /* 67 */ 4 lpptr, 6 170 5 last_file_pat_ptr bin (18) uns unal, 6 171 5 lpptr_reserved bin (18) uns unal, 6 172 /* 70 */ 4 lsclp bit (36), 6 173 /* 71 */ 4 limit fixed bin (35), 6 174 /* 72 */ 4 lacpt, 6 175 5 jout_pat_offset bit (18) unal, 6 176 5 permissions unal, 6 177 6 lodx bit (1) unal, 6 178 6 cardin bit (1) unal, 6 179 6 talk bit (1) unal, 6 180 6 lods bit (1) unal, 6 181 5 cardin_urgency bit (14) unal, 6 182 /* 73 */ 4 ldrl, 6 183 5 ilc bit (18) unaligned, 6 184 5 code fixed bin (17) unaligned, 6 185 /* 74 */ 4 ljsnb bit (36), 6 186 /* 75 */ 4 ltm0 bit (36), 6 187 /* 76 */ 4 ltm1 bit (36), 6 188 /* 77 */ 4 ltm2 bit (36), 6 189 /* 100 */ 4 ltm3 bit (36), 6 190 /* 101 */ 4 ltm4 bit (36), 6 191 /* 102 */ 4 ltm5 bit (36), 6 192 /* 103 */ 4 ltmwt bit (36), 6 193 /* 104 */ 4 ltmrs bit (36), 6 194 /* 105 */ 4 ltc0 bit (36), 6 195 /* 106 */ 4 ltc1 bit (36), 6 196 /* 107 */ 4 ltc2 bit (36), 6 197 /* 110 */ 4 lct3 bit (36), 6 198 /* 111 */ 4 ltc4 bit (36), 6 199 /* 112 */ 4 ltc5 bit (36), 6 200 /* 113 */ 4 ltcw bit (36), 6 201 /* 114 */ 4 lkst bit (36), 6 202 /* 115 */ 4 lkst2 bit (36), 6 203 /* 116 */ 4 lkcc bit (36), 6 204 /* 117 */ 4 lkms bit (36), 6 205 /* 120-121 */ 4 lksdc (0:1) bit (36), 6 206 /* 122 */ 4 lkntp bit (36), 6 207 /* 123 */ 4 lkrdc bit (36), 6 208 /* 124 */ 4 lpqf bit (36), 6 209 /* 125 */ 4 lpqb bit (36), 6 210 /* 126 */ 4 lustl bit (36), 6 211 /* 127 */ 4 ltemp bit (36), 6 212 /* 130 */ 4 lrtll, 6 213 5 word_length fixed bin unaligned, 6 214 5 char_length fixed bin unaligned, 6 215 /* 131 */ 4 ltim bit (36), 6 216 /* 132 */ 4 lcfio, 6 217 5 sect_out fixed bin(18)unsigned unal, 6 218 5 sect_in fixed bin(18)unsigned unal, 6 219 /* 133 */ 4 lcfst, 6 220 5 initial_sect_out fixed bin(18)unsigned unal, 6 221 5 start_term fixed bin(18)unsigned unal, 6 222 /* 134 */ 4 lcmpt bit (36), 6 223 /* 135 */ 4 lcjid bit (36), 6 224 /* 136-137 */ 4 lrcal (0:1) bit (36), 6 225 /* 140 */ 4 lrdta bit (36), 6 226 /* 141 */ 4 lrrsk bit (36), 6 227 /* 142 */ 4 lrskd bit (36), 6 228 /* 143 */ 4 lrcc bit (36), 6 229 /* 144-145 */ 4 lrsts (0:1) bit (36), 6 230 /* 146 */ 4 lrtm bit (36), 6 231 /* 147 */ 4 lswt2, 6 232 5 b0 bit (1) unaligned, 6 233 5 b1 bit (1) unaligned, 6 234 5 b2 bit (1) unaligned, 6 235 5 b3 bit (1) unaligned, 6 236 5 b4 bit (1) unaligned, 6 237 5 b5 bit (1) unaligned, 6 238 5 b6 bit (1) unaligned, 6 239 5 b7 bit (1) unaligned, 6 240 5 b8 bit (1) unaligned, 6 241 5 b9 bit (1) unaligned, 6 242 5 b10 bit (1) unaligned, 6 243 5 b11 bit (1) unaligned, 6 244 5 b12 bit (1) unaligned, 6 245 5 b13 bit (1) unaligned, 6 246 5 b14 bit (1) unaligned, 6 247 5 b15 bit (1) unaligned, 6 248 5 b16 bit (1) unaligned, 6 249 5 b17 bit (1) unaligned, 6 250 5 b18 bit (1) unaligned, 6 251 5 b19 bit (1) unaligned, 6 252 5 b20 bit (1) unaligned, 6 253 5 b21 bit (1) unaligned, 6 254 5 b22 bit (1) unaligned, 6 255 5 b23 bit (1) unaligned, 6 256 5 b24 bit (1) unaligned, 6 257 5 b25 bit (1) unaligned, 6 258 5 b26 bit (1) unaligned, 6 259 5 b27 bit (1) unaligned, 6 260 5 b28 bit (1) unaligned, 6 261 5 b29 bit (1) unaligned, 6 262 5 b30 bit (1) unaligned, 6 263 5 b31 bit (1) unaligned, 6 264 5 b32 bit (1) unaligned, 6 265 5 b33 bit (1) unaligned, 6 266 5 b34 bit (1) unaligned, 6 267 5 b35 bit (1) unaligned, 6 268 /* 150 */ 4 llsnb bit (36), 6 269 /* 151 */ 4 lesq bit (36), 6 270 /* 152-153 */ 4 lumc (0:1) bit (36), 6 271 /* 154-155 */ 4 lfnam (0:1) bit (36), 6 272 /* 156 */ 4 lopts bit (36), 6 273 /* 157 */ 4 licec, 6 274 5 b0_17 bit (18) unaligned, 6 275 5 b18_35 fixed bin (17) unaligned, 6 276 /* 160 */ 4 lflg3, 6 277 5 b0 bit (1) unaligned, 6 278 5 b1 bit (1) unaligned, 6 279 5 b2 bit (1) unaligned, 6 280 5 b3 bit (1) unaligned, 6 281 5 b4 bit (1) unaligned, 6 282 5 b5 bit (1) unaligned, 6 283 5 b6 bit (1) unaligned, 6 284 5 b7 bit (1) unaligned, 6 285 5 b8 bit (1) unaligned, 6 286 5 b9 bit (1) unaligned, 6 287 5 b10 bit (1) unaligned, 6 288 5 b11 bit (1) unaligned, 6 289 5 b12 bit (1) unaligned, 6 290 5 b13 bit (1) unaligned, 6 291 5 b14 bit (1) unaligned, 6 292 5 b15 bit (1) unaligned, 6 293 5 b16 bit (1) unaligned, 6 294 5 b17 bit (1) unaligned, 6 295 5 b18 bit (1) unaligned, 6 296 5 b19 bit (1) unaligned, 6 297 5 b20 bit (1) unaligned, 6 298 5 b21 bit (1) unaligned, 6 299 5 b22 bit (1) unaligned, 6 300 5 b23 bit (1) unaligned, 6 301 5 b24 bit (1) unaligned, 6 302 5 b25 bit (1) unaligned, 6 303 5 b26 bit (1) unaligned, 6 304 5 b27 bit (1) unaligned, 6 305 5 b28 bit (1) unaligned, 6 306 5 b29 bit (1) unaligned, 6 307 5 b30 bit (1) unaligned, 6 308 5 b31 bit (1) unaligned, 6 309 5 b32 bit (1) unaligned, 6 310 5 b33 bit (1) unaligned, 6 311 5 b34 bit (1) unaligned, 6 312 5 b35 bit (1) unaligned, 6 313 /* 161-163 */ 4 lpage (0:2) bit (36), 6 314 /* 164 */ 4 lsit1 bit (36), 6 315 /* 165 */ 4 lsit2 bit (36), 6 316 /* 166 */ 4 lsit3 bit (36), 6 317 /* 167 */ 4 lsit4 bit (36), 6 318 /* The following entries are maintained by gtss and are not found in TSS UST */ 6 319 /* 170 */ 4 lxxx, /* program stack index, offset from gtss_ust */ 6 320 5 b0_17 fixed bin (17) unaligned, 6 321 5 b18_35 bit (18) unaligned, /* not used */ 6 322 /* 171-175 */ 4 lprgs (5), 6 323 5 b0_17 fixed bin (17) unaligned, 6 324 5 b18_35 fixed bin (17) unaligned, 6 325 /* 176 */ 4 fill bit (36), 6 326 /* 177 */ 4 remote_io_buffer aligned, 6 327 5 buffer_control_word, 6 328 6 current_line_pointer bit (18)unal, 6 329 6 buffer_threshold_address bit (18)unal, 6 330 5 number_words_transmitted fixed bin (17)unal, 6 331 5 FILL1 fixed bin (17)unal, 6 332 5 count_of_characters_transmitted fixed bin (17)unal, 6 333 5 FILL2 fixed bin (17)unal, 6 334 5 characters_transmitted (244) char (1) unal, 6 335 /* 277 */ 4 word_after_ust bit (36) aligned; 6 336 6 337 /* END INCLUDE FILE gtss_ust_ext_.incl.pl1 */ 419 420 7 1 /* BEGIN INCLUDE FILE gtss_ext_.incl.pl1 */ 7 2 /* 7 3* Created: (Wardd Multics) 05/20/78 1307.6 mst Sat 7 4* Modified: Ward 1981 add suspended_process dcl 7 5* Modified: Ron Barstad 83-07-21 Fixed level number on mcfc to 3 7 6* Modified: Ron Barstad 83-07-25 Fixed derail range in statistics to 4js3 number 7 7**/ 7 8 dcl gtss_ext_$aem fixed bin static ext /* >0 Print "additional" error information. */; 7 9 dcl gtss_ext_$bad_drl_rtrn static ext label /* Default for drl_rtrn. */; 7 10 dcl gtss_ext_$db (72)bit(1)unal static ext; 7 11 dcl gtss_ext_$deferred_catalogs_ptr ptr ext; 7 12 dcl gtss_ext_$dispose_of_drl static ext label /* quit handlers for some derails use this label to abort */; 7 13 dcl gtss_ext_$drl_rtrn (4)static ext label /* where to return at subsystem end */; 7 14 dcl gtss_ext_$drm_path char(168)static ext /* gtss_expand_pathname_stores drm_path */; 7 15 dcl gtss_ext_$drun_jid char (5) static ext /* valid only for DRUN executing under absentee */; 7 16 dcl gtss_ext_$event_channel fixed bin (71) static ext /* used for DABT signals */; 7 17 dcl gtss_ext_$finished static ext label /* Return to gtss for normal conclusion. */; 7 18 dcl gtss_ext_$gdb_name char(8)ext /* Name H* module to debug. */; 7 19 dcl gtss_ext_$get_line entry(ptr,ptr,fixed bin(21),fixed bin(21),fixed bin(35))variable ext /* Build mode input procedure. */; 7 20 dcl gtss_ext_$gtss_slave_area_seg (4) ext static ptr /* pointer to gtss slave area segment */; 7 21 dcl gtss_ext_$hcs_work_area_ptr ptr ext static /* Temp seg for acl lists. */; 7 22 dcl gtss_ext_$homedir char (64) static ext /* user's home dir */; 7 23 dcl gtss_ext_$last_k_was_out bit (1)aligned ext static /* "1"b => last tty output was output. */; 7 24 dcl gtss_ext_$pdir char (168) varying ext static /* pathname of process directory */; 7 25 dcl gtss_ext_$popup_from_pi static ext label /* transfer to this label after pi simulates popup primitive */; 7 26 dcl gtss_ext_$process_type fixed bin (17) static ext; 7 27 dcl gtss_ext_$put_chars entry(ptr,ptr,fixed bin(24),fixed bin(35)) variable ext /* Terminal output procedure. */; 7 28 dcl gtss_ext_$restart_from_pi static ext label /* transfer to this label after pi restores machine conditions */; 7 29 dcl gtss_ext_$restart_seg_ptr ptr static ext /* points to DRUN restart file when exec under absentee */; 7 30 dcl gtss_ext_$sig_ptr ext static ptr /* saved ptr to signal_ */; 7 31 dcl gtss_ext_$stack_level_ fixed bin ext static; 7 32 dcl gtss_ext_$suspended_process bit(1) ext static; 7 33 dcl gtss_ext_$SYstarstar_file_no fixed bin (24) static ext; 7 34 dcl gtss_ext_$user_id char (26)var ext; 7 35 dcl gtss_ext_$work_area_ptr ptr ext; 7 36 7 37 dcl 1 gtss_ext_$CFP_bits aligned static external 7 38 , 3 no_input_yet bit (1) unaligned /* used in gtss_CFP_input_, gtss_read_starCFP_ */ 7 39 , 3 rtn_bits bit (4) unaligned /* used in gtss_CFP_input_, gtss_CFP_output_ */ 7 40 , 3 cpos_called bit (1) unaligned /* used in gtss_CFP_input_, gtss_drl_t_cfio_, gtss_abandon_CFP_ */ 7 41 , 3 cout_called bit (1) unaligned /* used in gtss_read_starCFP_, gtss_abandon_CFP_ */ 7 42 , 3 build_mode bit (1) unaligned /* used in gtss_build_, gtss_dsd_process_ */ 7 43 ; 7 44 7 45 dcl 1 gtss_ext_$com_reg aligned static ext, 7 46 3 tsdmx, 7 47 4 dst fixed bin (18) unsigned unaligned, 7 48 4 dit fixed bin (18) unsigned unaligned, 7 49 3 tsdpt fixed bin (36) unsigned unaligned, 7 50 3 tsddt fixed bin (36) unsigned unaligned, 7 51 3 tsdid bit (72) unaligned, 7 52 3 tsdsd bit (36) unaligned, 7 53 3 tsdst fixed bin (36) unsigned unaligned, 7 54 3 tsdjb fixed bin (35) unaligned, 7 55 3 tsdgt, 7 56 4 ust_loc fixed bin (18) unsigned unaligned, 7 57 4 gating_ctl fixed bin (18) unsigned unaligned, 7 58 3 tcdfr bit (36) unaligned; 7 59 7 60 dcl 1 gtss_ext_$flags aligned static ext 7 61 , 3 dispose_of_drl_on_pi bit (01) unal /* 1 => drl that should be aborted after quit-pi sequence */ 7 62 , 3 drl_in_progress bit (01) unal /* 1 => drl handler executing; 0 => gcos code executing */ 7 63 , 3 popup_from_pi bit (01) unal /* 1 => derail processor will simulate Gcos break instead of returning */ 7 64 , 3 unfinished_drl bit (01) unal /* 1 => subsystem is handling breaks and quit was raised during a drl */ 7 65 , 3 ss_time_limit_set bit (01) unal /* 1 => exec time limit set for subsystem */ 7 66 , 3 timer_ranout bit (01) unal /* 1 => user is executing timer runout code */ 7 67 , 3 gtss_com_err_sw bit (01) unal /* 1 => stop com_err_ string from going to terminal */ 7 68 , 3 available bit (65) unal 7 69 ; 7 70 7 71 7 72 dcl 1 gtss_ext_$statistics aligned static ext, /* Derail usage statistics */ 7 73 3 total_time (-10:71)fixed bin (71), 7 74 3 count (-10:71)fixed bin (17); 7 75 7 76 /* Declaration of Available File Table 7 77* */ 7 78 dcl 1 gtss_ext_$aft aligned ext, /* aft structure */ 7 79 7 80 3 start_list (0:102) fixed bin (24), /* >0 => 1st aft_entry row to start of next entry chain. */ 7 81 7 82 3 aft_entry (20), 7 83 4 altname char (8), /* altname name for attaching this file */ 7 84 4 next_entry fixed bin (24), /* Next aft_entry in hash chain. */ 7 85 4 previous_add fixed bin (24), /* Previously added entry. */ 7 86 4 next_add fixed bin (24), /* Entry added after this one. */ 7 87 4 used bit (1) unal, /* "1"b => aft_entry contains AFT value. */ 7 88 4 forced bit(1) unal, /* "1"b => gtss_verify_access_ forced access on this file. */ 7 89 7 90 3 free_space fixed bin (24), /* Index of start of free space list for aft entries. */ 7 91 3 first_added fixed bin (24), /* >0 => start of chain in add order. */ 7 92 3 last_added fixed bin (24) /* >0 => end of chain in added order. */; 7 93 7 94 dcl gtss_ext_$ppt ptr ext /* switch name for tapein drl */; 7 95 /** Data structure to provide access to installed 7 96* subsystems fast library load. 7 97* **/ 7 98 dcl 1 gtss_ext_$fast_lib aligned ext 7 99 , 3 fast_lib_fcb ptr /* Pointer to msf fcb. */ 7 100 , 3 fast_lib_ncp fixed bin (24) /* Number of components. */ 7 101 , 3 comp_ptr (0:9)ptr /* Pointer to component. */ 7 102 , 3 comp_wds (0:9)fixed bin (24) /* Component length (words). */ 7 103 ; 7 104 7 105 /* Pointers to segments to regulate multipler 7 106* callers to files. Same segments are used to regulate 7 107* all simulator callers. 7 108**/ 7 109 dcl 1 gtss_ext_$mcfc aligned ext, 7 110 3 multics_lock_id bit(36), 7 111 3 wait_time fixed bin, 7 112 3 files_ptr ptr, 7 113 3 names_ptr ptr, 7 114 3 callers_ptr (0:3)ptr 7 115 ; 7 116 7 117 /* END INCLUDE FILE gtss_ext_.incl.pl1 */ 421 422 8 1 /* BEGIN INCLUDE FILE gtss_filact_status.incl.pl1 */ 8 2 /* 8 3* Created: (Wardd Multics) 10/10/78 0945.5 mst Tue 8 4**/ 8 5 8 6 /* 8 7* 4000 NO ERRORS 8 8* 4001 USER-ID NOT IN MASTER CATALOG 8 9* 4002 I/O ERROR ON DEVICE XXX SA = NNN......NNN 8 10* 4003 PERMISSIONS DENIED 8 11* 4004 FILE BUSY: TRY LATER 8 12* 4005 INCORRECT CAT/FILE DESCRIPTION AT AAA......AAA 8 13* 4006 NO SPACE FOR CATALOG ON DEVICE XXX 8 14* 4007 UNDEFINED DEVICE YYY ZZZZZZ 8 15* 4010 NO SPACE FOR FILE ON DEVICE YYY 8 16* 4011 NON-UNIQUE NAME 8 17* 4012 SIZE REQUEST LS THAN ALLOCATED 8 18* 4013 SPACE REQUEST GR THAN ALLOWED 8 19* 4014 INCORRECT OR MISSING PASSWORD-AT-AAA...AAA 8 20* 4015 FILE IS ABORT LOCK 8 21* 4016 FILE WRITE IN BATCH ONLY 8 22* 4017 SEEK ERROR ON DEVICE XXX SA = NNN......NNN 8 23* 4020 FAILURE IN NAME SCAN (IMP.) 8 24* 4021 DUP CANNOT BE ON RMVBL DEVICE 8 25* 4022 BAD SPACE INVENTORY ON DEVICE 8 26* 4023 INVALID PARAMETER 8 27* 4024 BAD SPACE TABLE FOR DEVICE ON XXX 8 28* 4025 REQUESTED ENTRY NOT ON-LINE 8 29* 4026 NON-STRUCTURED FILE ENTRY 8 30* 4027 FILE IN DEFECTIVE STATUS 8 31* 4030 ILLEGAL PACK TYPE 8 32* 4031 ACCESS GRANTED TO I-D-S FILE 8 33* 4032 COLLECTION FILE ERROR 8 34* 4033 CAT/FILE SECURITY LOCKED 8 35* 4034 ILLEGAL CHARACTER IN CAT/FILE NAME 8 36* 4035 ILLEGAL CAT/FILE LIST REQUEST 8 37* 4036 AFT IS FULL 8 38* 4037 FILE ALREADY IN AFT 8 39* 4040 MAXIMUM PAT SIZE EXCEEDED 8 40* 4041 NO PROTECTION TABLE SPACE AVAILABLE 8 41* 4042 INVALID FILE CODE OR PAT PTR 8 42* 4043 INVALID CATALOG BLOCK ADDRESS 8 43* 4044 ILLEGAL OPTIONS COMBINATION 8 44* 4045 INVALID SPACE IDENTIFIER 8 45* 4046 (NONE, SPECIAL TSS INTERFACE) 8 46* 4047 UNACCOUNTABLE ERROR 8 47* 4050 ***RESERVED for FMS*** 8 48* 4051 CHECKSUM ERROR - DEVICE XXX SA = NNN......NNN 8 49* 4052 DEVICE XXX RELEASED 8 50* 4053 READ ACCESS DENIED - NULL FILE 8 51* 4054 FILE IS WRITE LOCKED 8 52* 4055 ***RESERVED*** 8 53* 4056 SECURITY PARAMETER - REQUIRED 8 54* 4057 SECURITY PARAMETER - INVALID 8 55* 4061 $FSYS HAS BEEN ENABLED 8 56* 4062 ILLEGAL SUBFUNCTION CODE 8 57* 4063 FILE NOT BEING MONITORED 8 58* 4064 DEADLOCK ON PAGE REQUEST 8 59* 4065 PAGE CURRENTLY BUSY 8 60* 4066 FILE NOT DUPLICATED 8 61* 4067 TDS MON ALLOC ERROR 8 62* 4070 ILLEGAL CHECKPOINT REQUEST 8 63* 4071 ILLEGAL DCW SPECIFIED 8 64* 4072 IMPROPER PROTECTION OPTION 8 65* 4073 INVALID ARG LIST PARAMETER NO. 000 8 66* 4074 SYSTEM JOURNAL NOT CONFIGURED 8 67* 4075 FILE RESTORE LOCKED 8 68* 4076 FILE IS TDS LOCKED 8 69* 4077 ERR TDS SUBSET PAGES RELEASED 8 70* 4100 UNACCOUNTABLE ERROR 8 71**/ 8 72 8 73 /* END INCLUDE FILE gtss_filact_status.incl.pl1 */ 423 424 9 1 /* BEGIN INCLUDE FILE gtss_pnterr.incl.pl1 */ 9 2 /* 9 3* Created: (Grimes SMP) 04/15/78 0933.2 mst Sat 9 4* Change: Dave Ward 06/08/78 made attributes constant. 9 5* Change: Dave Ward 08/17/81 made lengths same as constans. 9 6* Change: Ron Barstad 83-03-29 fixed err 53, add missing err 56 9 7* Change: Ron Barstad 84-02-27 changed back to all same length because of based array in gtss_abort_subsystem_ 9 8**/ 9 9 dcl 1 gtss_pnterr static int options (constant), 9 10 2 err1 char(50) init("001-INCORRECT PRIMITIVE"), 9 11 2 err2 char(50) init("002-(^6o)INVALID FILE I/O COMMAND"), 9 12 2 err3 char(50) init("003-(^6o)INVALID DCW"), 9 13 2 err4 char(50) init("004-(^6o)INVALID DRL ARGUMENT"), 9 14 2 err5 char(50) init("005-(^6o)INVALID DRL CODE"), 9 15 2 err6 char(50) init("006-LEVEL OF CONTROL TOO DEEP"), 9 16 2 err7 char(50) init("007-BAP PROG. DESC."), 9 17 2 err8 char(50) init("008-LOOP IN PRIMITIVES"), 9 18 2 err9 char(50) init("009-SYSTEM UNKNOWN"), 9 19 2 err10 char(50) init("010-PROGRAM TOO LARGE TO SWAP"), 9 20 2 err11 char(50) init("011-(^6o)INCORRECT CORE FILE USAGE"), 9 21 2 err12 char(50) init("012-(^6o)PRIVILEGED I/O ATTEMPTED"), 9 22 2 err13 char(50) init("013-(^6o)DRL USERID NOT PERMITTED"), 9 23 2 err14 char(50) init("(^6o)ILLEGAL DRL RELMEM REQUEST"), 9 24 2 err15 char(50) init("015-(^6o)CANNOT RESET USER ID"), 9 25 2 err16 char(50) init("016-(^6o)OVERFLOW FAULT"), 9 26 2 err17 char(50) init("017-(^6o)ILLEGAL OP CODE"), 9 27 2 err18 char(50) init("018-(^6o)MEMORY FAULT"), 9 28 2 err19 char(50) init("019-(^6o)FAULT TAG FAULT"), 9 29 2 err20 char(50) init("020-(^6o)DIVIDE CHECK FAULT"), 9 30 2 err21 char(50) init("021-(^6o)BAD STATUS - SWAP OUT"), 9 31 2 err22 char(50) init("022-(^6o)BAD STATUS - SWAP IN"), 9 32 2 err23 char(50) init("023-(^6o)BAD STATUS - LOAD"), 9 33 2 err24 char(50) init("(^6o)TALK PERMISSION NOT GRANTED"), 9 34 2 err25 char(50) init("(^6o)WRITE ATTEMPTED ON READ-ONLY FILE - ^8a"), 9 35 2 err26 char(50) init("(^6o)READ ATTEMPTED ON EXECUTE-ONLY FILE - ^8a"), 9 36 2 err27 char(50) init("024-(^6o)MME FAULT"), 9 37 2 err28 char(50) init("028-(^6o)REWIND ATTEMPTED FOR RANDOM FILE - ^8a"), 9 38 2 err29 char(50) init("029-ILLEGAL SYSTEM SELECTION"), 9 39 2 err30 char(50) init("134-(^6o)INVALID DRL FILACT FUNCTION #^i"), 9 40 2 err31 char(50) init("135-(^6o)PRIVILEGED DRL FILACT REQUEST"), 9 41 2 err32 char(50) init("138-(^6o)NO TAP* FILE FOR DRL TAPEIN"), 9 42 2 err33 char(50) init("139-ERROR IN WRITING TAP* FILE"), 9 43 2 err34 char(50) init("(^6o)DRL ABORT - CANNOT WRITE ABRT FILE"), 9 44 2 err35 char(50) init("(^6o)DRL ABORT - ABRT FILE WRITTEN"), 9 45 2 err36 char(50) init("NOT ENOUGH CORE TO RUN JOB"), 9 46 2 err37 char(50) init("SORRY-OUT OF SWAP SPACE. TRY AGAIN."), 9 47 2 err38 char(50) init("(^6o)FILE ADDRESS ERROR"), 9 48 2 err39 char(50) init("(^6o)DRL ABORT - ABRT FILE I/O ERROR"), 9 49 2 err40 char(50) init("(^6o)DRL ABORT - ABRT FILE TOO SMALL"), 9 50 2 err41 char(50) init("(^6o)BAD STATUS FOR DRL SAVE/RESTOR - ^8a"), 9 51 2 err42 char(50) init("(^6o)H* FILE NOT IN AFT - ^8a"), 9 52 2 err43 char(50) init("064-EXECUTE TIME LIMIT EXCEEDED"), 9 53 2 err44 char(50) init("025-(^6o)LOCKUP FAULT"), 9 54 2 err45 char(50) init("065-OBJECT PROGRAM SIZE LIMIT EXCEEDED"), 9 55 2 err46 char(50) init("(^6o)INCORRECT ENTRY TO DRL TASK"), 9 56 2 err47 char(50) init("(^6o)H* PROGRAM NAME UNDEFINED - ^8a"), 9 57 2 err48 char(50) init("(^6o)H* FILE CATALOG FULL - ^8a"), 9 58 2 err49 char(50) init("(^6o)TALLY OR CHARACTER COUNT INCORRECT"), 9 59 2 err50 char(50) init("(^6o)BAD DRL SAVE DATA LOC"), 9 60 2 err51 char(50) init("(^6o)H* FILE NOT INITITALIZED - ^8a"), 9 61 2 err52 char(50) init("(^6o)H* FILE MUST BE RANDOM - ^8a"), 9 62 2 err53 char(50) init("026-(^6o)OP-NOT-COMPLETE FAULT"), 9 63 2 err54 char(50) init("(^6o)H* FILE PROGRAM NAME REQUIRED - ^8a"), 9 64 2 err55 char(50) init("027-(^6o)COMMAND FAULT"), 9 65 2 err56 char(50) init("(^6o)LINKED FILE I/O CANNOT SPAN >63 LLINKS - ^8a"), 9 66 2 err57 char(50) init("UNASSIGNED"), 9 67 2 err58 char(50) init("(^6o)INVALID TIME FOR DRL GWAKE"), 9 68 2 err59 char(50) init("UNASSIGNED"), 9 69 2 err60 char(50) init("(^6o)INVALID SNUMB FOR DRL JOUT"), 9 70 2 err61 char(50) init("(^6o)PRIVILEGED DRL"), 9 71 2 err62 char(50) init("(^6o)INVALID DRL JOUT FUNCTION"), 9 72 2 err63 char(50) init("MEMORY PARITY ERROR"), 9 73 2 err64 char(50) init("SY** I/O ERROR"), 9 74 /* The following error messages are artifacts of gtss and are not found in TSS */ 9 75 2 err100 char(50) init("DRL ADDMEM ERROR at (^6o)"), 9 76 2 err101 char(50) init("DRL RELMEM ERROR TRUNCATE SEGMENT at (^6o)"), 9 77 2 err102 char(50) init("DRL RELMEM ERROR SET MAX SEGMENT LENGTH"), 9 78 2 err103 char(50) init("UNIMPLEMENTED DRL FILACT FUNCTION (^i)"), 9 79 2 err999 char(50) init("dummy"); 9 80 9 81 /* END INCLUDE FILE gtss_pnterr.incl.pl1 */ 425 426 10 1 /* */ 10 2 /* BEGIN INCLUDE FILE mc.incl.pl1 Created Dec 72 for 6180 - WSS. */ 10 3 /* Modified 06/07/76 by Greenberg for mc.resignal */ 10 4 /* Modified 07/07/76 by Morris for fault register data */ 10 5 /* Modified 08/28/80 by J. A. Bush for the DPS8/70M CVPU */ 10 6 /* Modified '82 to make values constant */ 10 7 10 8 /* words 0-15 pointer registers */ 10 9 10 10 dcl mcp ptr; 10 11 10 12 dcl 1 mc based (mcp) aligned, 10 13 2 prs (0:7) ptr, /* POINTER REGISTERS */ 10 14 (2 regs, /* registers */ 10 15 3 x (0:7) bit (18), /* index registers */ 10 16 3 a bit (36), /* accumulator */ 10 17 3 q bit (36), /* q-register */ 10 18 3 e bit (8), /* exponent */ 10 19 3 pad1 bit (28), 10 20 3 t bit (27), /* timer register */ 10 21 3 pad2 bit (6), 10 22 3 ralr bit (3), /* ring alarm register */ 10 23 10 24 2 scu (0:7) bit (36), 10 25 10 26 2 mask bit (72), /* mem controller mask at time of fault */ 10 27 2 ips_temp bit (36), /* Temporary storage for IPS info */ 10 28 2 errcode fixed bin (35), /* fault handler's error code */ 10 29 2 fim_temp, 10 30 3 unique_index bit (18) unal, /* unique index for restarting faults */ 10 31 3 resignal bit (1) unal, /* recompute signal name with fcode below */ 10 32 3 fcode bit (17) unal, /* fault code used as index to FIM table and SCT */ 10 33 2 fault_reg bit (36), /* fault register */ 10 34 2 pad2 bit (1), 10 35 2 cpu_type fixed bin (2) unsigned, /* L68 = 0, DPS8/70M = 1 */ 10 36 2 ext_fault_reg bit (15), /* extended fault reg for DPS8/70M CPU */ 10 37 2 fault_time bit (54), /* time of fault */ 10 38 10 39 2 eis_info (0:7) bit (36)) unaligned; 10 40 10 41 10 42 dcl (apx fixed bin init (0), 10 43 abx fixed bin init (1), 10 44 bpx fixed bin init (2), 10 45 bbx fixed bin init (3), 10 46 lpx fixed bin init (4), 10 47 lbx fixed bin init (5), 10 48 spx fixed bin init (6), 10 49 sbx fixed bin init (7)) internal static options (constant); 10 50 10 51 10 52 10 53 10 54 dcl scup ptr; 10 55 10 56 dcl 1 scu based (scup) aligned, /* SCU DATA */ 10 57 10 58 10 59 /* WORD (0) */ 10 60 10 61 (2 ppr, /* PROCEDURE POINTER REGISTER */ 10 62 3 prr bit (3), /* procedure ring register */ 10 63 3 psr bit (15), /* procedure segment register */ 10 64 3 p bit (1), /* procedure privileged bit */ 10 65 10 66 2 apu, /* APPENDING UNIT STATUS */ 10 67 3 xsf bit (1), /* ext seg flag - IT modification */ 10 68 3 sdwm bit (1), /* match in SDW Ass. Mem. */ 10 69 3 sd_on bit (1), /* SDW Ass. Mem. ON */ 10 70 3 ptwm bit (1), /* match in PTW Ass. Mem. */ 10 71 3 pt_on bit (1), /* PTW Ass. Mem. ON */ 10 72 3 pi_ap bit (1), /* Instr Fetch or Append cycle */ 10 73 3 dsptw bit (1), /* Fetch of DSPTW */ 10 74 3 sdwnp bit (1), /* Fetch of SDW non paged */ 10 75 3 sdwp bit (1), /* Fetch of SDW paged */ 10 76 3 ptw bit (1), /* Fetch of PTW */ 10 77 3 ptw2 bit (1), /* Fetch of pre-paged PTW */ 10 78 3 fap bit (1), /* Fetch of final address paged */ 10 79 3 fanp bit (1), /* Fetch of final address non-paged */ 10 80 3 fabs bit (1), /* Fetch of final address absolute */ 10 81 10 82 2 fault_cntr bit (3), /* number of retrys of EIS instructions */ 10 83 10 84 10 85 /* WORD (1) */ 10 86 10 87 2 fd, /* FAULT DATA */ 10 88 3 iro bit (1), /* illegal ring order */ 10 89 3 oeb bit (1), /* out of execute bracket */ 10 90 3 e_off bit (1), /* no execute */ 10 91 3 orb bit (1), /* out of read bracket */ 10 92 3 r_off bit (1), /* no read */ 10 93 3 owb bit (1), /* out of write bracket */ 10 94 3 w_off bit (1), /* no write */ 10 95 3 no_ga bit (1), /* not a gate */ 10 96 3 ocb bit (1), /* out of call bracket */ 10 97 3 ocall bit (1), /* outward call */ 10 98 3 boc bit (1), /* bad outward call */ 10 99 3 inret bit (1), /* inward return */ 10 100 3 crt bit (1), /* cross ring transfer */ 10 101 3 ralr bit (1), /* ring alarm register */ 10 102 3 am_er bit (1), /* associative memory fault */ 10 103 3 oosb bit (1), /* out of segment bounds */ 10 104 3 paru bit (1), /* processor parity upper */ 10 105 3 parl bit (1), /* processor parity lower */ 10 106 3 onc_1 bit (1), /* op not complete type 1 */ 10 107 3 onc_2 bit (1), /* op not complete type 2 */ 10 108 10 109 2 port_stat, /* PORT STATUS */ 10 110 3 ial bit (4), /* illegal action lines */ 10 111 3 iac bit (3), /* illegal action channel */ 10 112 3 con_chan bit (3), /* connect channel */ 10 113 10 114 2 fi_num bit (5), /* (fault/interrupt) number */ 10 115 2 fi_flag bit (1), /* 1 => fault, 0 => interrupt */ 10 116 10 117 10 118 /* WORD (2) */ 10 119 10 120 2 tpr, /* TEMPORARY POINTER REGISTER */ 10 121 3 trr bit (3), /* temporary ring register */ 10 122 3 tsr bit (15), /* temporary segment register */ 10 123 10 124 2 pad2 bit (9), 10 125 10 126 2 cpu_no bit (3), /* CPU number */ 10 127 10 128 2 delta bit (6), /* tally modification DELTA */ 10 129 10 130 10 131 /* WORD (3) */ 10 132 10 133 2 word3 bit (18), 10 134 10 135 2 tsr_stat, /* TSR STATUS for 1,2,&3 word instructions */ 10 136 3 tsna, /* Word 1 status */ 10 137 4 prn bit (3), /* Word 1 PR number */ 10 138 4 prv bit (1), /* Word 1 PR valid bit */ 10 139 3 tsnb, /* Word 2 status */ 10 140 4 prn bit (3), /* Word 2 PR number */ 10 141 4 prv bit (1), /* Word 2 PR valid bit */ 10 142 3 tsnc, /* Word 3 status */ 10 143 4 prn bit (3), /* Word 3 PR number */ 10 144 4 prv bit (1), /* Word 3 PR valid bit */ 10 145 10 146 2 tpr_tbr bit (6), /* TPR.TBR field */ 10 147 10 148 10 149 /* WORD (4) */ 10 150 10 151 2 ilc bit (18), /* INSTRUCTION COUNTER */ 10 152 10 153 2 ir, /* INDICATOR REGISTERS */ 10 154 3 zero bit (1), /* zero indicator */ 10 155 3 neg bit (1), /* negative indicator */ 10 156 3 carry bit (1), /* carryry indicator */ 10 157 3 ovfl bit (1), /* overflow indicator */ 10 158 3 eovf bit (1), /* eponent overflow */ 10 159 3 eufl bit (1), /* exponent underflow */ 10 160 3 oflm bit (1), /* overflow mask */ 10 161 3 tro bit (1), /* tally runout */ 10 162 3 par bit (1), /* parity error */ 10 163 3 parm bit (1), /* parity mask */ 10 164 3 bm bit (1), /* ^bar mode */ 10 165 3 tru bit (1), /* truncation mode */ 10 166 3 mif bit (1), /* multi-word instruction mode */ 10 167 3 abs bit (1), /* absolute mode */ 10 168 3 hex bit (1), /* hexadecimal exponent mode */ 10 169 3 pad bit (3), 10 170 10 171 10 172 /* WORD (5) */ 10 173 10 174 2 ca bit (18), /* COMPUTED ADDRESS */ 10 175 10 176 2 cu, /* CONTROL UNIT STATUS */ 10 177 3 rf bit (1), /* on first cycle of repeat instr */ 10 178 3 rpt bit (1), /* repeat instruction */ 10 179 3 rd bit (1), /* repeat double instruction */ 10 180 3 rl bit (1), /* repeat link instruciton */ 10 181 3 pot bit (1), /* IT modification */ 10 182 3 pon bit (1), /* return type instruction */ 10 183 3 xde bit (1), /* XDE from Even location */ 10 184 3 xdo bit (1), /* XDE from Odd location */ 10 185 3 poa bit (1), /* operation preparation */ 10 186 3 rfi bit (1), /* tells CPU to refetch instruction */ 10 187 3 its bit (1), /* ITS modification */ 10 188 3 if bit (1), /* fault occured during instruction fetch */ 10 189 10 190 2 cpu_tag bit (6)) unaligned, /* computed tag field */ 10 191 10 192 10 193 /* WORDS (6,7) */ 10 194 10 195 2 even_inst bit (36), /* even instruction of faulting pair */ 10 196 10 197 2 odd_inst bit (36); /* odd instruction of faulting pair */ 10 198 10 199 10 200 10 201 10 202 10 203 10 204 /* ALTERNATE SCU DECLARATION */ 10 205 10 206 10 207 dcl 1 scux based (scup) aligned, 10 208 10 209 (2 pad0 bit (36), 10 210 10 211 2 fd, /* GROUP II FAULT DATA */ 10 212 3 isn bit (1), /* illegal segment number */ 10 213 3 ioc bit (1), /* illegal op code */ 10 214 3 ia_am bit (1), /* illegal address - modifier */ 10 215 3 isp bit (1), /* illegal slave procedure */ 10 216 3 ipr bit (1), /* illegal procedure */ 10 217 3 nea bit (1), /* non existent address */ 10 218 3 oobb bit (1), /* out of bounds */ 10 219 3 pad bit (29), 10 220 10 221 2 pad2 bit (36), 10 222 10 223 2 pad3a bit (18), 10 224 10 225 2 tsr_stat (0:2), /* TSR STATUS as an ARRAY */ 10 226 3 prn bit (3), /* PR number */ 10 227 3 prv bit (1), /* PR valid bit */ 10 228 10 229 2 pad3b bit (6)) unaligned, 10 230 10 231 2 pad45 (0:1) bit (36), 10 232 10 233 2 instr (0:1) bit (36); /* Instruction ARRAY */ 10 234 10 235 10 236 10 237 /* END INCLUDE FILE mc.incl.pl1 */ 427 428 11 1 /* BEGIN INCLUDE FILE gtss_entry_dcls.incl.pl1 */ 11 2 /* 11 3* Created: (Wardd Multics) 06/30/78 1624.8 mst Fri 11 4* Modified: Ron Barstad 84-02-24 Fixed wrong and obsolete entries 11 5**/ 11 6 11 7 /** gtss external entry variables. **/ 11 8 dcl com_err_ entry() options(variable); 11 9 dcl gtss_CFP_abort_ entry options(variable); 11 10 dcl gtss_CFP_break_ entry options(variable); 11 11 dcl gtss_CFP_input_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 11 12 dcl gtss_CFP_output_ entry (ptr, ptr, fixed bin(21), fixed bin(35)); 11 13 dcl gtss_abandon_CFP_ entry options(variable); 11 14 dcl gtss_abort_dump_ entry (fixed bin(18)); 11 15 dcl gtss_abort_subsystem_ entry options (variable); 11 16 dcl gtss_abort_subsystem_$not_imp entry (ptr, fixed bin(24)); 11 17 dcl gtss_abs_login_banner_ entry() returns(char(*)); 11 18 dcl gtss_abs_logout_banner_ entry() returns(char(*)); 11 19 dcl gtss_abs_$abs_equiv entry options(variable); 11 20 dcl gtss_abs_$cpu_runout entry (ptr, char(4)); 11 21 dcl gtss_abs_$create_absin entry() returns(char(*)); 11 22 dcl gtss_abs_$dabt_check entry (ptr, char(4)); 11 23 dcl gtss_abs_$get_id entry (char(5)) returns(char(19)); 11 24 dcl gtss_abs_$get_drm entry() returns(char(*)); 11 25 dcl gtss_adjust_size_ entry (ptr); 11 26 dcl gtss_aft_$add entry (char(8), fixed bin(24), fixed bin(35)); 11 27 dcl gtss_aft_$delete entry (char(8), fixed bin(24), fixed bin(35)); 11 28 dcl gtss_aft_$find entry (char(8), fixed bin(24), fixed bin(35)); 11 29 dcl gtss_aft_$initialize entry (fixed bin(35)); 11 30 dcl gtss_ascii_bcd_ entry (ptr, fixed bin, ptr); 11 31 dcl gtss_attributes_mgr_$get entry (ptr, fixed bin(35)); 11 32 dcl gtss_attributes_mgr_$set entry (ptr, fixed bin(35)); 11 33 dcl gtss_bcd_ascii_ entry (ptr, fixed bin(24), ptr); 11 34 dcl gtss_bcd_ascii_$lc entry (ptr, fixed bin(24), ptr); 11 35 dcl gtss_break_vector_ entry (); 11 36 dcl gtss_break_vector_$drl_in_progress entry() returns(bit(1)); 11 37 dcl gtss_break_vector_$status entry() returns(bit(1)); 11 38 dcl gtss_build_ entry options(variable); 11 39 dcl gtss_com_err_ entry options(variable); 11 40 dcl gtss_derail_processor_ entry (ptr, char(*), ptr, ptr, bit(1) aligned) /* called at fault time instead of signal_ */; 11 41 dcl gtss_derail_processor_$set entry options(variable); 11 42 dcl gtss_dq_$catp entry (char (5), ptr, fixed bin (18) unsigned); 11 43 dcl gtss_dq_$create entry (bit(1)); 11 44 dcl gtss_dq_$dibp entry (char(5), ptr); 11 45 dcl gtss_dq_$entries_info entry (ptr, fixed bin (18) unsigned, fixed bin (18) unsigned); 11 46 dcl gtss_dq_$hdrp entry (ptr); 11 47 dcl gtss_dq_$mod_js entry (char(5), fixed bin (6) unsigned, bit (1)); 11 48 dcl gtss_dq_$open_exc entry (bit(1)); 11 49 dcl gtss_dq_$open_gen entry (bit(1)); 11 50 dcl gtss_drl_abort_ entry (ptr, fixed bin); 11 51 dcl gtss_drl_addmem_ entry (ptr, fixed bin); 11 52 dcl gtss_drl_callss_ entry (ptr, fixed bin); 11 53 dcl gtss_drl_corfil_ entry (ptr, fixed bin); 11 54 dcl gtss_drl_defil_ entry (ptr, fixed bin); 11 55 dcl gtss_drl_defil_$subr entry (ptr, ptr, ptr); 11 56 dcl gtss_drl_dio_ entry (ptr, fixed bin); 11 57 dcl gtss_drl_drlimt_ entry (ptr, fixed bin); 11 58 dcl gtss_drl_drlsav_ entry (ptr, fixed bin); 11 59 dcl gtss_drl_filact_ entry (ptr, fixed bin); 11 60 dcl gtss_drl_filsp_ entry (ptr, fixed bin); 11 61 dcl gtss_drl_grow_ entry (ptr, fixed bin); 11 62 dcl gtss_drl_gwake_ entry (ptr, fixed bin); 11 63 dcl gtss_drl_jsts_ entry (ptr, fixed bin); 11 64 dcl gtss_drl_kin_ entry (ptr, fixed bin); 11 65 dcl gtss_drl_kotnow_ entry (ptr, fixed bin); 11 66 dcl gtss_drl_kotnow_$gtss_drl_kout_ entry (ptr, fixed bin); 11 67 dcl gtss_drl_koutn_ entry (ptr, fixed bin); 11 68 dcl gtss_drl_morlnk_ entry (ptr, fixed bin); 11 69 dcl gtss_drl_msub_ entry (ptr, fixed bin); 11 70 dcl gtss_drl_objtim_ entry (ptr, fixed bin); 11 71 dcl gtss_drl_part_ entry (ptr, fixed bin); 11 72 dcl gtss_drl_pasaft_ entry (ptr, fixed bin); 11 73 dcl gtss_drl_pasdes_ entry (ptr, fixed bin); 11 74 dcl gtss_drl_pasust_ entry (ptr, fixed bin); 11 75 dcl gtss_drl_pdio_ entry (ptr, fixed bin); 11 76 dcl gtss_drl_prgdes_ entry (ptr, fixed bin); 11 77 dcl gtss_drl_pseudo_ entry (ptr, fixed bin); 11 78 dcl gtss_drl_relmem_ entry (ptr, fixed bin); 11 79 dcl gtss_drl_restor_ entry (ptr, fixed bin); 11 80 dcl gtss_drl_retfil_ entry (ptr, fixed bin); 11 81 dcl gtss_drl_return_ entry (ptr, fixed bin); 11 82 dcl gtss_drl_rew_ entry (ptr, fixed bin); 11 83 dcl gtss_drl_rstswh_ entry (ptr, fixed bin); 11 84 dcl gtss_drl_setlno_ entry (ptr, fixed bin); 11 85 dcl gtss_drl_setswh_ entry (ptr, fixed bin); 11 86 dcl gtss_drl_snumb_ entry (ptr, fixed bin); 11 87 dcl gtss_drl_spawn_ entry (ptr, fixed bin); 11 88 dcl gtss_drl_spawn_$gtss_drl_pasflr_ entry (ptr, fixed bin); 11 89 dcl gtss_drl_stoppt_ entry (ptr, fixed bin); 11 90 dcl gtss_drl_switch_ entry (ptr, fixed bin); 11 91 dcl gtss_drl_sysret_ entry (ptr, fixed bin); 11 92 dcl gtss_drl_t_cfio_ entry (ptr, fixed bin); 11 93 dcl gtss_drl_t_cmov_ entry (ptr, fixed bin); 11 94 dcl gtss_drl_t_err_ entry (ptr, fixed bin); 11 95 dcl gtss_drl_t_goto_ entry (ptr, fixed bin); 11 96 dcl gtss_drl_t_linl_ entry (ptr, fixed bin); 11 97 dcl gtss_drl_t_rscc_ entry (ptr, fixed bin); 11 98 dcl gtss_drl_tapein_ entry (ptr, fixed bin); 11 99 dcl gtss_drl_task_ entry (ptr, fixed bin); 11 100 dcl gtss_drl_termtp_ entry (ptr, fixed bin); 11 101 dcl gtss_drl_time_ entry (ptr, fixed bin); 11 102 dcl gtss_drun_ entry (bit(1)); 11 103 dcl gtss_dsd_lookup_ entry (char(8) var) returns(fixed bin(24)); 11 104 dcl gtss_dsd_process_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 11 105 dcl gtss_edit_dsd_ entry (ptr, fixed bin(21)) returns(fixed bin(24)); 11 106 dcl gtss_mcfc_empty entry (char(*) var); 11 107 dcl gtss_expand_pathname_ entry (ptr, char(*), char(*), fixed bin(35)); 11 108 dcl gtss_expand_pathname_$verify_umc entry (ptr, char(*), char(*), bit(18), fixed bin(35)); 11 109 dcl gtss_fault_processor_ entry options(variable); 11 110 dcl gtss_find_cond_frame_ entry (char(32) var) returns(ptr); 11 111 dcl gtss_fault_processor_$timer_runout entry (ptr, char(*)); 11 112 dcl gtss_filact_error_status_ entry (fixed bin(35))returns(bit(12)); 11 113 dcl gtss_filact_funct02_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 114 dcl gtss_filact_funct03_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 115 dcl gtss_filact_funct04_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 116 dcl gtss_filact_funct05_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 117 dcl gtss_filact_funct08_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 118 dcl gtss_filact_funct10_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 119 dcl gtss_filact_funct11_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 120 dcl gtss_filact_funct14_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 121 dcl gtss_filact_funct18_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 122 dcl gtss_filact_funct19_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 123 dcl gtss_filact_funct21_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 124 dcl gtss_filact_funct22_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 11 125 dcl gtss_mcfc_init_ entry (char(*) var); 11 126 dcl gtss_interp_prim_ entry options(variable); 11 127 dcl gtss_interp_prim_$callss entry (char(4), ptr); 11 128 dcl gtss_interp_prim_$sysret entry options(variable); 11 129 dcl gtss_interp_prim_$t_goto entry (char(4)); 11 130 dcl gtss_ios_change_size_ entry (fixed bin(24), fixed bin(24), bit(1), fixed bin(24), fixed bin(35)); 11 131 dcl gtss_ios_close_ entry (fixed bin(24), ptr, fixed bin(35)); 11 132 dcl gtss_ios_exchange_names_ entry (fixed bin(24), fixed bin(24), fixed bin(24), fixed bin(35)); 11 133 dcl gtss_ios_initialize_ entry options(variable); 11 134 dcl gtss_ios_io_ entry (fixed bin(24), ptr, ptr, fixed bin(24), fixed bin(24), fixed bin(35)); 11 135 dcl gtss_ios_open_ entry (fixed bin(24), char(168), char(32), bit(6), bit(1), ptr, ptr, fixed bin(35)); 11 136 dcl gtss_ios_position_ entry (fixed bin(24), fixed bin(24), fixed bin(24), bit(6), ptr); 11 137 dcl gtss_mcfc_$delete entry (fixed bin(24), char(*), char(*), bit(36) aligned, ptr, fixed bin(35)); 11 138 dcl gtss_mcfc_$open entry (char(*), char(*), bit(6), bit(36) aligned, ptr, fixed bin(35)); 11 139 dcl gtss_mcfc_$close entry (char(*), char(*), bit(36) aligned, ptr, fixed bin(35)); 11 140 dcl gtss_read_starCFP_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 11 141 dcl gtss_read_starCFP_$last_os entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 11 142 dcl gtss_run_subsystem_ entry (fixed bin(24)); 11 143 dcl gtss_run_subsystem_$finish entry options(variable); 11 144 dcl gtss_run_subsystem_$restor entry (fixed bin(24), ptr); 11 145 dcl gtss_run_subsystem_$restor_perm entry (fixed bin(24), ptr, fixed bin(18)); 11 146 dcl gtss_set_slave_ entry (fixed bin (24), ptr); 11 147 dcl gtss_set_slave_$load_bar entry (fixed bin (17)); 11 148 dcl gtss_update_safe_store_ entry (ptr); 11 149 dcl gtss_verify_access_ entry (char(*), char(*), fixed bin(24), bit(6), bit(12) aligned); 11 150 dcl gtss_verify_access_$check_forced_access entry (char(*), char(*), fixed bin(24)); 11 151 dcl gtss_write_starCFP_ entry (ptr, ptr, fixed bin(21), fixed bin(35)); 11 152 /* END INCLUDE FILE gtss_entry_dcls.incl.pl1 */ 429 430 12 1 /* BEGIN INCLUDE FILE gtss_ascii_file_names.incl.pl1 */ 12 2 /* 12 3* Created: (Wardd Multics) 09/01/78 1447.3 mst Fri 12 4**/ 12 5 12 6 /** First parameter to gtss_expand_pathname_ 12 7* **/ 12 8 dcl 1 ascii_cat_file, 12 9 2 nn fixed bin, /* Number of names. */ 12 10 2 name (7)char(12); /* List of cat/filedescr name . */ 12 11 12 12 /* END INCLUDE FILE gtss_ascii_file_names.incl.pl1 */ 431 432 13 1 /* BEGIN INCLUDE FILE gtss_file_values.incl.pl1 */ 13 2 /* 13 3* Created: (Wardd Multics) 09/01/78 1447.1 mst Fri 13 4**/ 13 5 13 6 /** The gtss_file_values structure provides parameters to the 13 7* gtss_attributes_mgr_ subroutine. 13 8* 13 9* The caller must provide space for this structure, fill in 13 10* the version with 1, the dname and ename with the file directory 13 11* and entry name, and for calls to gtss_attributes_mgr_$set, 13 12* fill in values to be reset and set the corresponding set_switch 13 13* to "1"b. 13 14* 13 15* If the (Multics) file located is a directory 13 16* a GCOS catalog is implied. 13 17* 13 18* If both ename and new_ename are set but no set_switch 13 19* is "1"b (and the set entry is called) this implies 13 20* that the existing attribute values are being renamed 13 21* to the new entry. 13 22* 13 23* Then: call gtss_attributes_mgr_$set(addr(gtss_file_values),code); 13 24* 13 25* Use of ename/new_ename combinations 13 26* for set entry. 13 27* 13 28* -|-----------|-----------|-|-----------------| 13 29* | ename |new_ename || meaning | 13 30* =|===========|===========|=|=================| 13 31* | blanks | blanks || illegal | 13 32* -|-----------|-----------|-|-----------------| 13 33* | blanks |not blanks|| initial | 13 34* | | || setting | 13 35* -|-----------|-----------|-|-----------------| 13 36* |not blanks| blanks || check enames's | 13 37* | | ||attribute values| 13 38* | | || and reset. | 13 39* -|-----------|-----------|-|-----------------| 13 40* |not blanks|not blanks|| delete ename's | 13 41* | | || values and put | 13 42* | | || on values for | 13 43* | | || new_ename's | 13 44* -|-----------|-----------|-|-----------------| 13 45***/ 13 46 dcl attr_name (0:7)char(4)static int options(constant)init( 13 47 /* 0 */ "mode" 13 48 , /* 1 */ "maxl" 13 49 , /* 2 */ "curl" 13 50 , /* 3 */ "busy" 13 51 , /* 4 */ "attr" 13 52 , /* 5 */ "null" 13 53 , /* 6 */ "noal" 13 54 , /* 7 */ "crdt" 13 55 ); 13 56 dcl 1 gtss_file_values aligned automatic 13 57 , 3 version fixed bin(17) /* Current version is 1. (OUT) */ 13 58 , 3 dname char(168)unal /* Directory name. (IN) */ 13 59 , 3 ename char(032)unal /* Entry name. (IN) */ 13 60 , 3 new_ename char(032)unal /* New entry name. (IN) */ 13 61 , 3 change_name bit(1) /* "1"b => Change segment name. (IN) */ 13 62 , 3 catalog bit(1) /* "1"b => File is a catalog (Multics directory). (OUT) */ 13 63 , 3 info_ptr ptr /* hcs_$status_long (4. entry_ptr) info structure address. (OUT) */ 13 64 , 3 set_switch /* "1"b => Set corresponding value. (IN) */ 13 65 , 4 mode_random bit(01)unal /* 0. Set the random/sequential(linked) field. */ 13 66 , 4 maxll bit(01)unal /* 1. Set max size value. */ 13 67 , 4 curll bit(01)unal /* 2. Set current size value. */ 13 68 , 4 busy bit(01)unal /* 3. Set file as busy. */ 13 69 , 4 attr bit(01)unal /* 4. Set user attributes value. */ 13 70 , 4 null_file bit(01)unal /* 5. Set null file value. */ 13 71 , 4 number_allocations bit(01)unal /* 6. Set or increment number of uses. */ 13 72 , 4 creation_date bit(01)unal /* 7. Set file creation date. */ 13 73 , 4 not_in_use bit(28)unal 13 74 /* The above set_ variables should be declared in an order 13 75* corresponding to the value in the attr_name array. */ 13 76 , 3 data_flags /* (OUT|IN) */ 13 77 , 4 mode_random bit(01)unal /* "1"b => random. */ 13 78 , 4 busy bit(01)unal /* "1"b => file is busy. */ 13 79 , 4 null_file bit(01)unal /* "1"b => file is null. */ 13 80 , 4 not_in_use2 bit(33)unal 13 81 , 3 data_fields /* (OUT|IN) */ 13 82 , 4 curll fixed bin(35) /* Current length in llinks (>=0). */ 13 83 , 4 maxll fixed bin(35) /* Maximum length in llinks (>=0). */ 13 84 , 4 number_allocations fixed bin(35) /* 0 => set | >0 => increment modulo 262144. */ 13 85 , 3 attributes /* (OUT|IN) */ 13 86 , 4 not_in_use3 bit(01)unal 13 87 , 4 attr bit(35)unal /* User specified file attribute value. */ 13 88 , 3 creation_date char(06) /* MMDDYY of creation. */ 13 89 ; 13 90 13 91 13 92 /* END INCLUDE FILE gtss_file_values.incl.pl1 */ 433 434 14 1 /* BEGIN INCLUDE FILE gtss_FMS_catalog.incl.pl1 */ 14 2 /* 14 3* Created: (Wardd Multics) 09/14/78 1813.7 mst Thu 14 4* Change: Paul Benjamin 10/12/79 Further break down FS0_PBK_05 14 5**/ 14 6 14 7 /** The structure FMS_catalog1 is from 14 8* FMS PROGRAM LOGIC MANUAL 14 9* DC26, Rev. 0, January 1974 14 10* Page 4-9 14 11***/ 14 12 dcl FMS_cat_ptr ptr init(null()); 14 13 dcl 1 FMS_catalog aligned based(FMS_cat_ptr) 14 14 , 3 FSnTYP_0 14 15 , 4 bits00_05 bit(06)unal 14 16 , 4 bits06_10 bit(05)unal 14 17 , 4 bits11_17 bit(07)unal 14 18 , 4 bits18_35 bit(18)unal 14 19 , 3 FSnNLL_1 14 20 , 4 bits00_17 bit(18)unal 14 21 , 4 bits18_35 bit(18)unal 14 22 , 3 FSnPLL_2 14 23 , 4 bits00_17 bit(18)unal 14 24 , 4 bits18_35 bit(18)unal 14 25 , 3 FSnPTP_3 14 26 , 4 bits00_17 bit(18)unal 14 27 , 4 bits18_35 bit(18)unal 14 28 , 3 FSnCBK_4 14 29 , 4 bits00_17 bit(18)unal 14 30 , 4 bits18_35 bit(18)unal 14 31 ; 14 32 14 33 /** Page 4-10. **/ 14 34 dcl 1 Type_0_Catalog aligned based(FMS_cat_ptr) 14 35 , 3 FS0_TYP_00 bit(36) 14 36 , 3 FS0_NLL_01 14 37 , 4 bits00_17 bit(18)unal 14 38 , 4 bits18_35 bit(18)unal 14 39 , 3 FS0_PLL_02 bit(36) 14 40 , 3 FS0_PTP_03 14 41 , 4 bits00_17 fixed bin(17)unal 14 42 , 4 bits18_35 bit(18)unal 14 43 , 3 FS0_CBK_04 14 44 , 4 bits00_17 fixed bin(17)unal 14 45 , 4 bits18_35 bit(18)unal 14 46 , 3 FS0_PBK_05 14 47 , 4 bits00_17 bit(18)unal 14 48 , 4 bits18_35 bit(18)unal 14 49 , 3 FS0_CNM_06_07 bit(72) 14 50 , 3 FS0_ORG_10_11 bit(72) 14 51 , 3 FS0_PWD_12_13 bit(72) 14 52 , 3 FS0_CDT_14 bit(36) 14 53 , 3 FS0_MOD_15 bit(36) 14 54 , 3 FS0_IND_16 bit(36) 14 55 , 3 FS0_PER_17 14 56 , 4 bits00_11 bit(12)unal 14 57 , 4 bits12_14 bit(03)unal 14 58 , 4 bit15 bit(01)unal 14 59 , 4 bit16 bit(01)unal 14 60 , 4 bit17 bit(01)unal 14 61 , 4 bits18_35 bit(18)unal 14 62 , 3 FS0_OP1_20 bit(36) 14 63 , 3 FS0_OP2_21 bit(36) 14 64 , 3 FS0_VAR_22_76 (15) 14 65 , 4 FS0_SNM_00_01 bit(72) 14 66 , 4 FS0_SPT_02 14 67 , 5 bit00 bit(01)unal 14 68 , 5 bit01 bit(01)unal 14 69 , 5 bits02_17 bit(16)unal 14 70 , 5 bits18_35 bit(18)unal 14 71 , 3 checksum_77 bit(36) 14 72 ; 14 73 14 74 /* Condensed form of type 0 record. */ 14 75 dcl 1 t0c aligned based(FMS_cat_ptr) 14 76 , 2 fill (0:17)bit(36) 14 77 , 2 name (15) 14 78 , 3 bcd bit(72) 14 79 , 3 more bit(36) 14 80 ; 14 81 14 82 /** Page 4-10. **/ 14 83 dcl Type_1_ptr ptr init(null()); 14 84 dcl 1 Type_1_Catalog aligned based(Type_1_ptr) 14 85 , 3 FS1_TYP_00 bit(36) 14 86 , 3 FS1_NLL_01 14 87 , 4 bits00_17 bit(18)unal 14 88 , 4 bits18_35 bit(18)unal 14 89 , 3 FS1_PLL_02 bit(36) 14 90 , 3 FS1_PTP_03 14 91 , 4 bits00_17 fixed bin(17)unal 14 92 , 4 bits18_35 bit(18)unal 14 93 , 3 FS1_CBK_04 14 94 , 4 bits00_17 bit(18)unal 14 95 , 4 bits18_35 bit(18)unal 14 96 , 3 FS1_OPN_05 bit(36) 14 97 , 3 FS1_VAR_06_76 (19) 14 98 , 4 FS1_SNM_00_01 bit(72) 14 99 , 4 FS1_SPT_02 14 100 , 5 bit00 bit(01)unal 14 101 , 5 bit01 bit(01)unal 14 102 , 5 bits02_17 bit(16)unal 14 103 , 5 bits18_35 bit(18)unal 14 104 , 3 checksum_77 bit(36) 14 105 ; 14 106 14 107 /* Condensed form of type 1 record. */ 14 108 dcl 1 t1c aligned based(FMS_cat_ptr) 14 109 , 2 fill (0:5)bit(36) 14 110 , 2 name (19) like t0c.name 14 111 ; 14 112 14 113 /** Page 4-11. **/ 14 114 dcl 1 Type_2_Catalog aligned based(FMS_cat_ptr) 14 115 , 3 FS2_TYP_00 bit(36) 14 116 , 3 FS2_NLL_01 bit(36) 14 117 , 3 FS2_PLL_02 bit(36) 14 118 , 3 FS2_PTP_03 bit(36) 14 119 , 3 FS2_CBK_04 bit(36) 14 120 , 3 FS2_PBK_05 14 121 , 4 bits00_17 bit(18)unal 14 122 , 4 bits18_35 bit(18)unal 14 123 , 3 FS2_FNM_06_07 bit(72) 14 124 , 3 FS2_ORG_10_11 bit(72) 14 125 , 3 FS2_PWD_12_13 bit(72) 14 126 , 3 FS2_CDT_14 bit(36) 14 127 , 3 FS2_MOD_15 bit(36) 14 128 , 3 FS2_IND_16 bit(36) 14 129 , 3 FS2_PER_17 14 130 , 4 bits00_11 bit(12)unal 14 131 , 4 bits12_15 bit(04)unal 14 132 , 4 bit16 bit(01)unal 14 133 , 4 bit17 bit(01)unal 14 134 , 4 bits18_35 bit(18)unal 14 135 , 3 FS2_MTR_20_21 bit(72) 14 136 , 3 FS2_FU1_22 14 137 , 4 bit00 bit(01)unal 14 138 , 4 bit01 bit(01)unal 14 139 , 4 bit02 bit(01)unal 14 140 , 4 bit03 bit(01)unal 14 141 , 4 bit04 bit(01)unal 14 142 , 4 bit05 bit(01)unal 14 143 , 4 bit06 bit(01)unal 14 144 , 4 bit07 bit(01)unal 14 145 , 4 bit08 bit(01)unal 14 146 , 4 bit09 bit(01)unal 14 147 , 4 bits10_11 bit(02)unal 14 148 , 4 bits12_17 bit(06)unal 14 149 , 4 bits18_35 bit(18)unal 14 150 , 3 FS2_FUS_23 14 151 , 4 bits00_17 bit(18)unal 14 152 , 4 bit18 bit(01)unal 14 153 , 4 bit19 bit(01)unal 14 154 , 4 bit20 bit(01)unal 14 155 , 4 bit21 bit(01)unal 14 156 , 4 bit22 bit(01)unal 14 157 , 4 bit23 bit(01)unal 14 158 , 4 bit24 bit(01)unal 14 159 , 4 bit25 bit(01)unal 14 160 , 4 bit26 bit(01)unal 14 161 , 4 bit27 bit(01)unal 14 162 , 4 bit28 bit(01)unal 14 163 , 4 bit29 bit(01)unal 14 164 , 4 bits30_35 bit(06)unal 14 165 , 3 FS2_USI_24 14 166 , 4 bit00 bit(01)unal 14 167 , 4 bits01_35 bit(35)unal 14 168 , 3 FS2_FU2_25 14 169 , 4 bit00 bit(01)unal 14 170 , 4 bit01 bit(01)unal 14 171 , 4 bit02 bit(01)unal 14 172 , 4 bit03 bit(01)unal 14 173 , 4 bit04 bit(01)unal 14 174 , 4 bit05 bit(01)unal 14 175 , 4 bit06 bit(01)unal 14 176 , 4 bit07 bit(01)unal 14 177 , 4 bit08 bit(01)unal 14 178 , 4 bit09 bit(01)unal 14 179 , 4 bit10 bit(01)unal 14 180 , 4 bit11 bit(01)unal 14 181 , 4 bit12 bit(01)unal 14 182 , 4 bit13 bit(01)unal 14 183 , 4 bit14 bit(01)unal 14 184 , 4 bit15 bit(01)unal 14 185 , 4 bit16 bit(01)unal 14 186 , 4 bit17 bit(01)unal 14 187 , 4 bits18_35 bit(18)unal 14 188 , 3 FS2_LCD_26 bit(36) 14 189 , 3 FS2_LAD_27 bit(36) 14 190 , 3 FS2_LST_30 14 191 , 4 bits00_05 bit(06)unal 14 192 , 4 bits06_35 bit(30)unal 14 193 , 3 FS2_ATB_31 bit(36) 14 194 , 3 FS2_PDF_32 bit(36) 14 195 , 3 FS2_STC_33 bit(36) 14 196 , 3 FS2_BSY_34 bit(36) 14 197 , 3 FS2_TBC_35 bit(36) 14 198 , 3 FS2_OP2_7_36_43 (2:7)bit(36) 14 199 , 3 FS2_VAR_44_75 14 200 , 4 Device_descriptor 14 201 , 5 bits00_03 bit(04)unal /* 0101 */ 14 202 , 5 bits04_05 bit(02)unal 14 203 , 5 bits06_35 bit(30)unal 14 204 , 4 Space_descriptor 14 205 , 5 bit00 bit(01)unal 14 206 , 5 bit01 bit(01)unal /* =0 => space desc. */ 14 207 , 5 bit02 bit(01)unal 14 208 , 5 bits03_17 bit(15)unal 14 209 , 5 bits18_35 bit(18)unal 14 210 , 4 zero (24)bit(36) 14 211 , 3 zero_76 bit(36) 14 212 , 3 checksum_77 bit(36) 14 213 ; 14 214 14 215 /** Page 4-13. **/ 14 216 dcl Type_4_ptr ptr init(null()); 14 217 dcl 1 Type_4_Catalog aligned based(Type_4_ptr) 14 218 , 3 FS4_TYP_00 bit(36) 14 219 , 3 FS4_NLL_01 bit(36) 14 220 , 3 FS4_PLL_02 bit(36) 14 221 , 3 FS4_PTP_03 bit(36) 14 222 , 3 FS4_CBK_04 bit(36) 14 223 , 3 FS4_OP1_2_05_06 bit(72) 14 224 , 3 FS4_VAR_07_75 bit(1980) /* 1980 = 55 * 36bits @ */ 14 225 , 3 zero bit(36) 14 226 , 3 checksum_77 bit(36) 14 227 ; 14 228 14 229 /** Page 2-69 **/ 14 230 dcl buffer_ptr ptr init(null()); 14 231 dcl 1 callers_buffer aligned based(buffer_ptr) 14 232 , 3 first25 (25)bit(36) /* Work area for ???. */ 14 233 /** Next 35 words. FMS work area. **/ 14 234 , 3 W00_FSCODE bit(036) 14 235 , 3 W01_02_FSCALL bit(072) 14 236 , 3 W03 bit(036) 14 237 , 3 W04_06 bit(108) 14 238 , 3 W07 bit(036) 14 239 , 3 W10 bit(036) 14 240 , 3 W11_12 bit(072) 14 241 , 3 W13_FSSSLV bit(036) 14 242 , 3 W14_15 bit(072) 14 243 , 3 W16_FSFBSY bit(036) 14 244 , 3 W17_FSRETP bit(036) 14 245 , 3 W20 14 246 , 4 FSMME unal 14 247 , 5 bits00_17 bit(18)unal 14 248 , 4 FSARG unal 14 249 , 5 bits18_35 bit(18)unal 14 250 , 3 W21_FSCPOS 14 251 , 4 bits00_17 bit(18)unal 14 252 , 4 bits18_35 bit(18)unal 14 253 , 3 W22_FSCCFP 14 254 , 4 bits00_17 bit(18)unal 14 255 , 4 bits18_35 bit(18)unal 14 256 , 3 W23_FSPCFP 14 257 , 4 bits00_17 bit(18)unal 14 258 , 4 bits18_35 bit(18)unal 14 259 , 3 W24 14 260 , 4 FSREGU unal 14 261 , 5 bits00_17 bit(18)unal 14 262 , 4 FSREGL unal 14 263 , 5 bits18_35 bit(18)unal 14 264 , 3 W25_FSCDEV 14 265 , 4 bits00_15 bit(16)unal 14 266 , 4 bit16 bit(01)unal 14 267 , 4 bit17 bit(01)unal 14 268 , 4 bits18_35 bit(18)unal 14 269 , 3 W26_FSDDEV 14 270 , 4 bits00_15 bit(16)unal 14 271 , 4 bit16 bit(01)unal 14 272 , 4 bit17 bit(01)unal 14 273 , 4 bits18_35 bit(18)unal 14 274 , 3 W27_FSENDT bit(036) 14 275 , 3 W30_FSCPAT bit(036) 14 276 , 3 W31_FSPERM bit(036) 14 277 , 3 W32_FSDDCW bit(036) 14 278 , 3 W33_FSDCWP bit(036) 14 279 , 3 W34_FSDUPD bit(036) 14 280 , 3 W35_FSAVBL bit(036) 14 281 , 3 W36_FSTEMP bit(036) 14 282 , 3 W37_FSCKSM bit(036) 14 283 , 3 W40_FSIOS1 bit(036) 14 284 , 3 W41_FSSRW1 bit(036) 14 285 , 3 W42_FSSRW2 bit(036) 14 286 , 3 W43_FSBFER bit(036) /* Starting location of buffer for catalog record(s). */ 14 287 , 3 remainder_of_buffer (319)bit(36) 14 288 ; 14 289 14 290 /* END INCLUDE FILE gtss_FMS_catalog.incl.pl1 */ 435 436 15 1 15 2 declare /* Information returned by hcs_$status_ and hcs_$status_long */ 15 3 15 4 15 5 1 branch aligned based (info_ptr), /* information about this particular branch */ 15 6 2 type bit (2) unal, /* "00"b = link, "01"b = segment, "10"b = directory */ 15 7 2 nnames bit (16) unal, /* number of names this entry has */ 15 8 2 names_relp bit (18) unal, /* pointer, relative to base of segment, to names */ 15 9 2 dtm bit (36) unal, /* date-time the segment was last modified */ 15 10 2 dtu bit (36) unal, /* date-time the segment was last used */ 15 11 2 mode bit (5) unal, /* the user's access modes to the entry */ 15 12 2 padding bit (13) unal, /* yawn */ 15 13 2 records_used bit (18) unal, /* number of blocks actually occupied by entry */ 15 14 15 15 /* limit of information returned by status_ */ 15 16 15 17 2 dtd bit (36) unal, /* date-time the segment was last dumped */ 15 18 2 dtbm bit (36) unal, /* date-time the branch for the entry was modified */ 15 19 2 account bit (36) unal, /* account to which storage is charged */ 15 20 2 current_length bit (12) unal, /* maximum length in blocks */ 15 21 2 bit_count bit (24) unal, /* length of entry in bits */ 15 22 2 device_id bit (4) unal, /* device on which segment currently resides */ 15 23 2 mdid bit (4) unal, /* device to which it is currently being moved */ 15 24 2 copy_switch bit (1) unal, /* segment copy switch */ 15 25 2 tpd bit (1) unal, /* transparent paging device switch */ 15 26 2 more_padding bit (8) unal, /* yawn, yawn */ 15 27 2 ring_brackets (0:2) bit (6) unal, /* ring brackets for entry */ 15 28 2 uid bit (36) unal, /* unique identifier */ 15 29 15 30 15 31 1 link aligned based (info_ptr), /* information about link entries */ 15 32 2 type bit (2) unal, /* as above */ 15 33 2 nnames bit (16) unal, /* number of names for this link */ 15 34 2 names_relp bit (18) unal, /* as above */ 15 35 2 dtbm bit (36) unal, /* date-time, entry for link was last modified */ 15 36 2 dtd bit (36) unal, /* date-time dumped */ 15 37 2 pathname_length bit (18) unal, /* length of link pathname */ 15 38 2 pathname_relp bit (18) unal, /* pointer, relative to based of segment, to name */ 15 39 15 40 entry_names (1) character (32) aligned based (pointer (area_pointer, branch.names_relp)), 15 41 /* array of names returned */ 15 42 pathname character (fixed (link.pathname_length)) aligned based (pointer (area_pointer, link.pathname_relp)), 15 43 /* pathname a link points to */ 15 44 15 45 area_pointer pointer, /* to area in which to allocate names */ 15 46 info_ptr pointer; /* to structure returned */ 15 47 15 48 437 438 16 1 16 2 declare /* Structures used in acl manipulation. - J.M. Broughton 07/27/73 */ 16 3 16 4 16 5 1 segment_acl (acl_count) based (acl_ptr) aligned, 16 6 2 access_name character (32), /* process to which this entry applies */ 16 7 2 modes bit (36), /* read, execute, and write */ 16 8 2 zero_pad bit (36), /* for extended acl */ 16 9 2 status_code fixed bin(35), /* standard error code for this entry only */ 16 10 16 11 16 12 1 dir_acl (acl_count) based (acl_ptr) aligned, 16 13 2 access_name character (32), /* process to which entry applys */ 16 14 2 dir_modes bit (36), /* status, modify, and append */ 16 15 2 status_code fixed bin(35), /* as above */ 16 16 16 17 16 18 acl_count fixed bin, /* number of entries in these structures */ 16 19 acl_ptr pointer; /* pointer to these structures */ 16 20 16 21 439 440 17 1 /* BEGIN INCLUDE FILE gtss_filact_options.incl.pl1 */ 17 2 /* 17 3* Created: (Wardd Multics) 09/08/78 1017.4 mst Fri 17 4**/ 17 5 dcl now fixed bin; 17 6 dcl options_ptr ptr init(null()); 17 7 dcl 1 optionsx aligned based(options_ptr) 17 8 , 3 word1 17 9 , 4 option_bit unal 17 10 , 5 j bit(01)unal /* Space must be contiguous. */ 17 11 , 5 b bit(01)unal /* Random (CF only). */ 17 12 , 5 c bit(01)unal /* File TSS created (CF only) */ 17 13 , 5 d bit(01)unal /* I-D-S file. */ 17 14 , 5 k bit(01)unal /* 320-word blocks (CF only). */ 17 15 , 5 f bit(01)unal /* File already on tape or nonstructured disk pack (non-TSS). */ 17 16 , 5 bit_06 bit(01)unal /* (not used). */ 17 17 , 5 h bit(01)unal /* Attributes present. */ 17 18 , 5 i bit(01)unal /* User-specified attributes (CF & MF only). */ 17 19 , 5 bits09_12 bit(04)unal /* (not used). */ 17 20 , 5 y bit(01)unal /* FMS protection options specified. */ 17 21 , 5 bits14_17 bit(04)unal /* (not used). */ 17 22 , 4 device_name bit(12)unal 17 23 , 4 device_type bit(06)unal 17 24 , 3 word2 17 25 , 4 initial_file_size bit(18)unal /* (CF only). */ 17 26 , 4 max_file_size bit(18)unal /* 0 => max size unlimited. */ 17 27 , 3 words3_now (now) 17 28 , 4 optional_specific_permissions 17 29 , 5 USERID bit(72)unal 17 30 , 5 permission_bit like permissionsx 17 31 , 3 word_now_plus_1 17 32 , 4 end_of_list fixed bin(35) 17 33 , 3 word_now_plus_2 17 34 , 4 fill bit(01)unal 17 35 , 4 user_specified_attributes bit(35)unal /* (CF & MF only). */ 17 36 ; 17 37 18 1 /* BEGIN INCLUDE FILE gtss_filact_permissions.incl.pl1 */ 18 2 /* 18 3* Created: (Wardd Multics) 09/08/78 1018.0 mst Fri 18 4**/ 18 5 dcl permissions_ptr ptr init(null()); 18 6 dcl 1 permissionsx aligned based(permissions_ptr) 18 7 , 3 r bit(01)unal /* Read permission. */ 18 8 , 3 w bit(01)unal /* Write permission. */ 18 9 , 3 a bit(01)unal /* Append permission. */ 18 10 , 3 e bit(01)unal /* Execute permission. */ 18 11 , 3 p bit(01)unal /* Purge permission. */ 18 12 , 3 m bit(01)unal /* Modify permission. */ 18 13 , 3 l bit(01)unal /* Lock permission. */ 18 14 , 3 bit_07 bit(01)unal /* (not used). */ 18 15 , 3 c bit(01)unal /* Create permission. */ 18 16 , 3 x bit(01)unal /* Recovery permission. */ 18 17 , 3 bits10_35 bit(26)unal /* (not used). */ 18 18 ; 18 19 18 20 /* END INCLUDE FILE gtss_filact_permissions.incl.pl1 */ 17 38 17 39 17 40 /* END INCLUDE FILE gtss_filact_options.incl.pl1 */ 441 442 19 1 /* BEGIN INCLUDE FILE gse_ext_.incl.pl1 */ 19 2 /* 19 3* Created: Kepner 78-12-01 19 4**/ 19 5 19 6 dcl gse_ext_$drm_rule fixed bin(24) ext; 19 7 19 8 /* $drm_rule: 19 9* 0 => rule not set 19 10* 1 => umc_dir_mode 19 11* 2 => working_dir_mode 19 12* 3 => smc_dir_mode 19 13**/ 19 14 19 15 dcl gse_ext_$gcos_debug_pathname char(168) /* pathname for the gcos debugger control file */ ext; 19 16 dcl gse_ext_$smc_pathname char(168) /* root directory used with smc_dir mapping rule */ ext; 19 17 dcl gse_ext_$umc_name char(12) /* User Master Catalog name specified by user with gse command */ ext; 19 18 dcl 1 gse_ext_$modes aligned ext, 19 19 3 ast bit(01) unal, /* 1 => use asterisk as prompt character */ 19 20 3 drl bit(01) unal, /* 1 => cause trace info on each derail to be printed */ 19 21 3 gdb bit(01) unal, /* 1 => use gcos debugger (gdb) */ 19 22 3 mcmd bit(01) unal, /* 1 => allow use of e request at GTSS command level */ 19 23 3 mquit bit(01) unal, /* 1 => quit causes entry to new Multics command level */ 19 24 3 ss bit(01) unal, /* 1 => cause trace info on each subsystem to be printed */ 19 25 3 fill bit(30) unal; 19 26 19 27 /* END INCLUDE FILE gse_ext_.incl.pl1 */ 443 444 20 1 /* BEGIN INCLUDE FILE gtss_db_names.incl.pl1 */ 20 2 /* 20 3* Created: (Wardd Multics) 03/29/79 1909.1 mst Thu 20 4**/ 20 5 20 6 /* To provide a new debugging switch: 20 7* 20 8* 1) Locate the comment "Insert next entry above this comment". 20 9* 20 10* 2) Place a new declaration for a db_ variable just 20 11* above this comment, in the same manner as the 20 12* current declaration just above the comment, using 20 13* the next integer gtss_ext_$db index. 20 14* 20 15* 3) Execute the gtss|db_names ted macro (this updates 20 16* the sorted name table). 20 17* 20 18* 4) Example use: 20 19* 20 20* if db_drl_grow then do; 20 21* . 20 22* . 20 23* . 20 24* debug i/o statements using com_err_ or ioa_ 20 25* . 20 26* . 20 27* . 20 28* end; 20 29* 20 30**/ 20 31 20 32 dcl ( 20 33 db_ bit(1) defined(gtss_ext_$db(01)) 20 34 ,db_CFP_input bit(1) defined(gtss_ext_$db(02)) 20 35 ,db_drl_addmem bit(1) defined(gtss_ext_$db(03)) 20 36 ,db_drl_defil bit(1) defined(gtss_ext_$db(04)) 20 37 ,db_drl_filact bit(1) defined(gtss_ext_$db(05)) 20 38 ,db_drl_filsp bit(1) defined(gtss_ext_$db(06)) 20 39 ,db_drl_grow bit(1) defined(gtss_ext_$db(07)) 20 40 ,db_drl_rew bit(1) defined(gtss_ext_$db(08)) 20 41 ,db_filact_funct02 bit(1) defined(gtss_ext_$db(09)) 20 42 ,db_filact_funct03 bit(1) defined(gtss_ext_$db(10)) 20 43 ,db_filact_funct04 bit(1) defined(gtss_ext_$db(11)) 20 44 ,db_filact_funct05 bit(1) defined(gtss_ext_$db(12)) 20 45 ,db_filact_funct10 bit(1) defined(gtss_ext_$db(13)) 20 46 ,db_filact_funct11 bit(1) defined(gtss_ext_$db(14)) 20 47 ,db_filact_funct14 bit(1) defined(gtss_ext_$db(15)) 20 48 ,db_filact_funct18 bit(1) defined(gtss_ext_$db(16)) 20 49 ,db_filact_funct19 bit(1) defined(gtss_ext_$db(17)) 20 50 ,db_filact_funct21 bit(1) defined(gtss_ext_$db(18)) 20 51 ,db_filact_funct22 bit(1) defined(gtss_ext_$db(19)) 20 52 ,db_interp_prim bit(1) defined(gtss_ext_$db(20)) 20 53 ,db_ios bit(1) defined(gtss_ext_$db(21)) 20 54 ,db_run_subsystem bit(1) defined(gtss_ext_$db(22)) 20 55 ,db_drl_t_cfio bit(1) defined(gtss_ext_$db(23)) 20 56 ,db_drl_switch bit(1) defined(gtss_ext_$db(24)) 20 57 ,db_drl_dio bit(1) defined(gtss_ext_$db(25)) 20 58 ,db_drl_retfil bit(1) defined(gtss_ext_$db(26)) 20 59 ,db_drl_msub bit(1) defined(gtss_ext_$db(27)) 20 60 ,db_drl_callss bit(1) defined(gtss_ext_$db(28)) 20 61 ,db_drl_rstswh bit(1) defined(gtss_ext_$db(29)) 20 62 ,db_drl_setswh bit(1) defined(gtss_ext_$db(30)) 20 63 ,db_mcfc bit(1) defined(gtss_ext_$db(31)) 20 64 ,db_dq bit(1) defined(gtss_ext_$db(32)) 20 65 ,db_abs bit(1) defined(gtss_ext_$db(33)) 20 66 ,db_attributes_mgr bit(1) defined(gtss_ext_$db(34)) 20 67 ,db_expand_pathname bit(1) defined(gtss_ext_$db(35)) 20 68 ,db_drl_part bit(1) defined(gtss_ext_$db(36)) 20 69 ,db_drl_morlnk bit(1) defined(gtss_ext_$db(37)) 20 70 ,db_drl_kin bit(1) defined(gtss_ext_$db(38)) 20 71 /* Insert next entry above this comment. */ 20 72 ); 20 73 20 74 /* Table of sorted names. */ 20 75 dcl 1 debug_bit_names (38) static int options(constant) 20 76 , 2 name char(18)var init( 20 77 "" ,"CFP_input" ,"abs" ,"attributes_mgr" ,"dq" ,"drl_addmem" 20 78 ,"drl_callss" ,"drl_defil" ,"drl_dio" ,"drl_filact" ,"drl_filsp" 20 79 ,"drl_grow" ,"drl_kin" ,"drl_morlnk" ,"drl_msub" ,"drl_part" 20 80 ,"drl_retfil" ,"drl_rew" ,"drl_rstswh" ,"drl_setswh" ,"drl_switch" 20 81 ,"drl_t_cfio" ,"expand_pathname" ,"filact_funct02" ,"filact_funct03" 20 82 ,"filact_funct04" ,"filact_funct05" ,"filact_funct10" ,"filact_funct11" 20 83 ,"filact_funct14" ,"filact_funct18" ,"filact_funct19" ,"filact_funct21" 20 84 ,"filact_funct22" ,"interp_prim" ,"ios" ,"mcfc" ,"run_subsystem" 20 85 ) 20 86 , 2 value fixed bin init( 20 87 01 ,02 ,33 ,34 ,32 ,03 ,28 ,04 ,25 ,05 ,06 ,07 ,38 ,37 ,27 ,36 ,26 ,08 20 88 ,29 ,30 ,24 ,23 ,35 ,09 ,10 ,11 ,12 ,13 ,14 ,15 ,16 ,17 ,18 ,19 ,20 ,21 20 89 ,31 ,22 20 90 ); 20 91 /* End of table. */ 20 92 /* END INCLUDE FILE gtss_db_names.incl.pl1 */ 445 446 end /* gtss_filact_funct08_ */; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 12/10/84 1044.0 gtss_filact_funct08_.pl1 >spec>on>7105>gtss_filact_funct08_.pl1 162 1 09/09/83 1713.2 gtss_dfd_ext_.incl.pl1 >ldd>include>gtss_dfd_ext_.incl.pl1 164 2 09/09/83 1713.9 gtss_filact_intp3.incl.pl1 >ldd>include>gtss_filact_intp3.incl.pl1 167 3 09/09/83 1713.8 gtss_filact_intp2.incl.pl1 >ldd>include>gtss_filact_intp2.incl.pl1 169 4 09/09/83 1713.9 gtss_filact_intp7.incl.pl1 >ldd>include>gtss_filact_intp7.incl.pl1 171 5 09/09/83 1713.8 gtss_filact_intp1.incl.pl1 >ldd>include>gtss_filact_intp1.incl.pl1 419 6 09/09/83 1714.3 gtss_ust_ext_.incl.pl1 >ldd>include>gtss_ust_ext_.incl.pl1 421 7 09/09/83 1713.8 gtss_ext_.incl.pl1 >ldd>include>gtss_ext_.incl.pl1 423 8 09/09/83 1713.3 gtss_filact_status.incl.pl1 >ldd>include>gtss_filact_status.incl.pl1 425 9 12/10/84 1029.8 gtss_pnterr.incl.pl1 >spec>on>7105>gtss_pnterr.incl.pl1 427 10 12/15/83 1100.4 mc.incl.pl1 >ldd>include>mc.incl.pl1 429 11 12/10/84 1029.7 gtss_entry_dcls.incl.pl1 >spec>on>7105>gtss_entry_dcls.incl.pl1 431 12 09/09/83 1713.5 gtss_ascii_file_names.incl.pl1 >ldd>include>gtss_ascii_file_names.incl.pl1 433 13 09/09/83 1714.0 gtss_file_values.incl.pl1 >ldd>include>gtss_file_values.incl.pl1 435 14 09/09/83 1713.5 gtss_FMS_catalog.incl.pl1 >ldd>include>gtss_FMS_catalog.incl.pl1 437 15 04/29/76 1139.2 status_info.incl.pl1 >ldd>include>status_info.incl.pl1 439 16 02/13/75 1618.9 acls.incl.pl1 >ldd>include>acls.incl.pl1 441 17 09/09/83 1713.9 gtss_filact_options.incl.pl1 >ldd>include>gtss_filact_options.incl.pl1 17-38 18 09/09/83 1713.9 gtss_filact_permissions.incl.pl1 >ldd>include>gtss_filact_permissions.incl.pl1 443 19 09/09/83 1713.4 gse_ext_.incl.pl1 >ldd>include>gse_ext_.incl.pl1 445 20 09/09/83 1713.6 gtss_db_names.incl.pl1 >ldd>include>gtss_db_names.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. FMS_block_ptr 000212 automatic pointer initial dcl 215 set ref 215* FMS_cat_ptr 000452 automatic pointer initial dcl 14-12 set ref 14-12* L_arglist 0(18) based bit(18) level 2 in structure "filact_args" packed unaligned dcl 5-24 in procedure "validate_status" ref 5-16 5-16 L_arglist 0(18) based bit(18) level 3 in structure "Purge_Release_args" packed unaligned dcl 137 in procedure "gtss_filact_funct08_" ref 44 50 L_bcd_message 1 based bit(18) level 3 packed unaligned dcl 277 set ref 62* L_cat_filedescr 1 based bit(18) level 3 packed unaligned dcl 146 set ref 55* L_status_return based bit(18) level 3 packed unaligned dcl 146 set ref 53* Purge_Release_arglist based structure level 1 dcl 146 Purge_Release_args based structure level 1 dcl 137 Type_1_ptr 000454 automatic pointer initial dcl 14-83 set ref 14-83* Type_4_ptr 000456 automatic pointer initial dcl 14-216 set ref 14-216* USERID based fixed bin(71,0) level 3 dcl 3-112 ref 3-28 USERID_password 2 based bit(72) level 3 dcl 3-112 set ref 3-30* acf based structure level 1 dcl 3-106 acfp parameter pointer dcl 3-16 ref 3-8 3-19 addr builtin function dcl 180 ref 55 55 74 74 84 84 3-62 3-62 3-62 3-62 4-26 4-26 addrel builtin function dcl 181 ref 50 3-26 4-25 5-20 aft_entry 147 000022 external static structure array level 2 dcl 7-78 ref 103 103 altname 147 000022 external static char(8) array level 3 dcl 7-78 ref 108 altname_ptr 000172 automatic pointer initial dcl 185 set ref 185* ap 000504 automatic pointer dcl 3-105 set ref 3-19* 3-38 3-49 3-52 3-56 3-58 3-62 3-62 3-72 3-73 3-77 3-77 3-79 3-79 3-85 3-86 3-87 arg_ptr 000176 automatic pointer initial dcl 188 set ref 38* 44 50 188* 5-16 5-16 arg_ptr_val parameter pointer dcl 31 ref 14 38 arglist_ptr 000174 automatic pointer initial dcl 187 set ref 50* 53 55 187* ascii_cat_file 000314 automatic structure level 1 unaligned dcl 12-8 set ref 55 55 74 74 84 84 attribute_segment_ptr 000200 automatic pointer initial dcl 189 set ref 189* bit builtin function dcl 190 ref 3-47 bit72 based bit(72) dcl 176 set ref 3-29* blank based bit(6) array level 3 packed unaligned dcl 4-38 set ref 4-29* bmp 000104 automatic pointer dcl 4-37 set ref 4-25* 4-26* 4-29 4-30 bp parameter pointer dcl 4-13 ref 4-2 4-25 buffer_ptr 000460 automatic pointer initial dcl 14-230 set ref 39* 62* 14-230* 3-57 3-79 3-79 buffer_ptr_val parameter pointer dcl 32 ref 14 39 callers_buf based structure level 1 dcl 3-108 cat_filedescr_name_offset 000202 automatic bit(18) unaligned dcl 192 set ref 2-10 3-20* 3-33* 3-47* 3-101* cdf4 based structure level 1 dcl 3-130 cfd2 based structure level 1 dcl 3-112 cfd3 based structure array level 1 dcl 3-125 cfdl parameter bit(18) unaligned dcl 3-15 ref 3-8 3-22 3-26 3-33 3-42 3-47 code parameter fixed bin(35,0) dcl 33 set ref 14 41* 47* 74* 80 84* 118* 130 delete_$path 000012 constant entry external dcl 197 ref 118 descriptor_ptr 000204 automatic pointer initial dcl 199 set ref 199* 3-26* 3-28 3-29 3-30 3-36 3-46 3-58 3-62 3-62 dir_name 000010 external static char(168) array level 3 packed unaligned dcl 1-6 ref 105 105 directory 000112 automatic varying char(168) dcl 156 set ref 99* 105 divide builtin function dcl 201 ref 4-19 dname 1 000342 automatic char(168) level 2 in structure "gtss_file_values" packed unaligned dcl 13-56 in procedure "gtss_filact_funct08_" set ref 62 74* 90 99 118* dname 000230 automatic char(168) level 2 in structure "dummy_path" packed unaligned dcl 329 in procedure "gtss_filact_funct08_" set ref 84* 90 dummy_path 000230 automatic structure level 1 packed unaligned dcl 329 ename 52 000230 automatic char(32) level 2 in structure "dummy_path" packed unaligned dcl 329 in procedure "gtss_filact_funct08_" set ref 84* 90 ename 53 000342 automatic char(32) level 2 in structure "gtss_file_values" packed unaligned dcl 13-56 in procedure "gtss_filact_funct08_" set ref 62 74* 90 99 102 118* end_of_list based fixed bin(35,0) level 2 in structure "cfd2" dcl 3-112 in procedure "get_ascii_file_name" ref 3-46 end_of_list 4 based fixed bin(35,0) level 2 in structure "cdf4" dcl 3-130 in procedure "get_ascii_file_name" ref 3-36 entry_name 000206 automatic char(12) initial unaligned dcl 202 set ref 202* f 000101 automatic fixed bin(17,0) dcl 4-34 set ref 4-27* 4-29 4-29 4-29 4-29 filact_args based structure level 1 dcl 5-24 file_id_in_ascii 1 based char(8) level 2 dcl 3-108 set ref 3-79* 3-79 fixed builtin function dcl 214 ref 36 44 3-22 3-42 3-47 3-47 5-16 5-16 5-16 5-16 fnia parameter bit(1) unaligned dcl 3-14 ref 3-8 3-56 grc parameter bit(18) unaligned dcl 3-17 in procedure "get_ascii_file_name" set ref 3-8 3-91* 3-102* grc 000214 automatic bit(18) initial unaligned dcl 217 in procedure "gtss_filact_funct08_" set ref 55* 69 217* gse_ext_$drm_rule 000036 external static fixed bin(24,0) dcl 19-6 ref 81 gse_ext_$umc_name 000040 external static char(12) unaligned dcl 19-17 ref 3-77 gseg 000216 automatic pointer initial dcl 218 set ref 37* 50 218* 3-26 5-20 gseg_val parameter pointer dcl 30 ref 14 37 gtss_abort_subsystem_ 000024 constant entry external dcl 11-15 ref 91 gtss_aft_$delete 000026 constant entry external dcl 11-27 ref 108 gtss_ascii_bcd_ 000030 constant entry external dcl 11-30 ref 4-26 gtss_bcd_ascii_$lc 000032 constant entry external dcl 11-34 ref 3-62 gtss_dfd_ext_$disk_file_data 000010 external static structure array level 1 dcl 1-6 gtss_disk 000010 external static structure array level 2 dcl 1-6 gtss_expand_pathname_ 000034 constant entry external dcl 11-107 ref 74 84 gtss_ext_$aft 000022 external static structure level 1 dcl 7-78 gtss_ext_$db 000020 external static bit(1) array unaligned dcl 7-10 ref 3-70 gtss_file_values 000342 automatic structure level 1 dcl 13-56 gtss_ust 000016 external static structure level 2 dcl 6-16 gtss_ust_ext_$ust 000016 external static structure level 1 dcl 6-16 hbound builtin function dcl 221 ref 103 high_b 000220 automatic bit(18) dcl 231 set ref 35* 36 5-13 high_i 000221 automatic fixed bin(18,0) dcl 232 set ref 36* 44 3-22 3-42 high_val parameter bit(18) unaligned dcl 29 ref 14 35 i 000222 automatic fixed bin(24,0) dcl 233 set ref 103* 104 105 105 108 108* 3-52* 3-56 3-56 3-58 3-58 3-62 3-62 3-62 3-62* 3-72* 3-73* 3-73* 3-85* 3-86 3-87* ioa_ 000014 constant entry external dcl 235 ref 3-71 3-73 l 000102 automatic fixed bin(17,0) dcl 4-35 set ref 4-18* 4-19 4-22* 4-26* 4-27 last_word based structure level 2 dcl 4-38 lbound builtin function dcl 238 ref 103 lid 000016 external static bit(72) level 3 dcl 6-16 ref 3-29 m parameter char unaligned dcl 4-14 set ref 4-2 4-18 4-26 4-26 mcp 000312 automatic pointer dcl 10-10 set ref 34* 91* mcp_val parameter pointer dcl 28 ref 14 34 message_words 1(18) based fixed bin(17,0) level 3 packed unaligned dcl 277 set ref 62* ml parameter bit(18) unaligned dcl 4-11 set ref 4-2 4-15* 4-30* mod builtin function dcl 245 ref 4-27 msg based structure level 1 dcl 4-38 mw parameter fixed bin(17,0) unaligned dcl 4-12 set ref 4-2 4-16* 4-31* n 000100 automatic fixed bin(17,0) dcl 4-33 set ref 4-19* 4-20 4-21* 4-22 4-29 4-29 4-31 name 22 based structure array level 2 in structure "t0c" dcl 14-75 in procedure "gtss_filact_funct08_" name 1 000314 automatic char(12) array level 2 in structure "ascii_cat_file" packed unaligned dcl 12-8 in procedure "gtss_filact_funct08_" set ref 83* name 1 based char(12) array level 2 in structure "acf" dcl 3-106 in procedure "get_ascii_file_name" set ref 3-58* 3-62 3-62 3-73* 3-77 3-77* 3-79 3-86 3-87 name based char(8) array level 2 in structure "cfd3" dcl 3-125 in procedure "get_ascii_file_name" set ref 3-58 3-62 3-62 nic 000166 automatic fixed bin(24,0) dcl 177 set ref 3-35* 3-36 3-42 3-46 3-47 3-49* nn based fixed bin(17,0) level 2 in structure "acf" dcl 3-106 in procedure "get_ascii_file_name" set ref 3-38* 3-49* 3-52 3-56 3-72 3-79 3-85 nn 000314 automatic fixed bin(17,0) level 2 in structure "ascii_cat_file" dcl 12-8 in procedure "gtss_filact_funct08_" set ref 82* options_ptr 000462 automatic pointer initial dcl 17-6 set ref 17-6* p 000170 automatic pointer initial dcl 178 set ref 178* pd 0(18) based bit(18) level 2 packed unaligned dcl 317 set ref 68* permissions_ptr 000464 automatic pointer initial dcl 18-5 set ref 18-5* permissionsx based structure level 1 dcl 18-6 rel builtin function dcl 253 ref 4-30 restore_switch based bit(36) level 2 dcl 3-108 set ref 3-57* rs 000165 automatic fixed bin(35,0) dcl 157 set ref 108* 113 smc_entry_ptr 000224 automatic pointer initial dcl 259 set ref 259* sp parameter pointer dcl 5-8 set ref 5-5 5-20* status based bit(18) level 2 packed unaligned dcl 317 set ref 69* 132* status2 based structure level 1 dcl 277 status_address parameter bit(18) unaligned dcl 5-7 ref 5-5 5-13 5-16 5-16 5-20 status_pointer 000520 automatic pointer initial dcl 5-9 set ref 5-9* 5-20* 5-21 status_ptr 000226 automatic pointer initial dcl 263 set ref 53* 62 62 68 69 132 263* status_word based structure level 1 dcl 317 set ref 5-21* sub_catalog 000100 automatic varying char(33) dcl 155 set ref 102* 105 substr builtin function dcl 264 ref 3-70 3-77 3-79 t0c based structure level 1 dcl 14-75 used 154 000022 external static bit(1) array level 3 packed unaligned dcl 7-78 ref 104 user_master_catalog based structure level 2 dcl 3-112 word1 based structure level 2 in structure "Purge_Release_args" dcl 137 in procedure "gtss_filact_funct08_" word1 based structure level 2 in structure "Purge_Release_arglist" dcl 146 in procedure "gtss_filact_funct08_" word2 1 based structure level 2 in structure "status2" dcl 277 in procedure "gtss_filact_funct08_" word2 1 based structure level 2 in structure "Purge_Release_arglist" dcl 146 in procedure "gtss_filact_funct08_" NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. FMS_block based structure level 1 dcl 333 FMS_catalog based structure level 1 dcl 14-13 FMS_data_block based structure level 1 dcl 337 Type_0_Catalog based structure level 1 dcl 14-34 Type_1_Catalog based structure level 1 dcl 14-84 Type_2_Catalog based structure level 1 dcl 14-114 Type_4_Catalog based structure level 1 dcl 14-217 abx internal static fixed bin(17,0) initial dcl 10-42 access_mode automatic bit(6) unaligned dcl 179 acl_count automatic fixed bin(17,0) dcl 16-2 acl_ptr automatic pointer dcl 16-2 aft_code automatic fixed bin(35,0) dcl 182 aft_name automatic char(8) unaligned dcl 183 altname based char(8) dcl 184 append_mode internal static bit(36) initial unaligned dcl 186 apx internal static fixed bin(17,0) initial dcl 10-42 area_pointer automatic pointer dcl 15-2 arglist based structure level 1 dcl 299 attr_name internal static char(4) initial array unaligned dcl 13-46 bbx internal static fixed bin(17,0) initial dcl 10-42 bcdname based structure level 1 dcl 287 bit_count automatic fixed bin(24,0) dcl 191 bpx internal static fixed bin(17,0) initial dcl 10-42 branch based structure level 1 dcl 15-2 callers_buffer based structure level 1 dcl 14-231 cdate automatic fixed bin(71,0) dcl 193 clim automatic float bin(27) dcl 194 com_err_ 000000 constant entry external dcl 11-8 crf automatic fixed bin(24,0) dcl 195 csp automatic float bin(27) dcl 196 db_ defined bit(1) unaligned dcl 20-32 db_CFP_input defined bit(1) unaligned dcl 20-32 db_abs defined bit(1) unaligned dcl 20-32 db_attributes_mgr defined bit(1) unaligned dcl 20-32 db_dq defined bit(1) unaligned dcl 20-32 db_drl_addmem defined bit(1) unaligned dcl 20-32 db_drl_callss defined bit(1) unaligned dcl 20-32 db_drl_defil defined bit(1) unaligned dcl 20-32 db_drl_dio defined bit(1) unaligned dcl 20-32 db_drl_filact defined bit(1) unaligned dcl 20-32 db_drl_filsp defined bit(1) unaligned dcl 20-32 db_drl_grow defined bit(1) unaligned dcl 20-32 db_drl_kin defined bit(1) unaligned dcl 20-32 db_drl_morlnk defined bit(1) unaligned dcl 20-32 db_drl_msub defined bit(1) unaligned dcl 20-32 db_drl_part defined bit(1) unaligned dcl 20-32 db_drl_retfil defined bit(1) unaligned dcl 20-32 db_drl_rew defined bit(1) unaligned dcl 20-32 db_drl_rstswh defined bit(1) unaligned dcl 20-32 db_drl_setswh defined bit(1) unaligned dcl 20-32 db_drl_switch defined bit(1) unaligned dcl 20-32 db_drl_t_cfio defined bit(1) unaligned dcl 20-32 db_expand_pathname defined bit(1) unaligned dcl 20-32 db_filact_funct02 defined bit(1) unaligned dcl 20-32 db_filact_funct03 defined bit(1) unaligned dcl 20-32 db_filact_funct04 defined bit(1) unaligned dcl 20-32 db_filact_funct05 defined bit(1) unaligned dcl 20-32 db_filact_funct10 defined bit(1) unaligned dcl 20-32 db_filact_funct11 defined bit(1) unaligned dcl 20-32 db_filact_funct14 defined bit(1) unaligned dcl 20-32 db_filact_funct18 defined bit(1) unaligned dcl 20-32 db_filact_funct19 defined bit(1) unaligned dcl 20-32 db_filact_funct21 defined bit(1) unaligned dcl 20-32 db_filact_funct22 defined bit(1) unaligned dcl 20-32 db_interp_prim defined bit(1) unaligned dcl 20-32 db_ios defined bit(1) unaligned dcl 20-32 db_mcfc defined bit(1) unaligned dcl 20-32 db_run_subsystem defined bit(1) unaligned dcl 20-32 debug_bit_names internal static structure array level 1 unaligned dcl 20-75 descriptor based structure array level 1 dcl 325 descriptor_address automatic bit(18) unaligned dcl 198 dir_acl based structure array level 1 dcl 16-2 dir_name automatic char(168) unaligned dcl 200 entry_names based char(32) array dcl 15-2 error_table_$incorrect_access external static fixed bin(35,0) dcl 203 error_table_$moderr external static fixed bin(35,0) dcl 204 error_table_$namedup external static fixed bin(35,0) dcl 205 error_table_$no_dir external static fixed bin(35,0) dcl 207 error_table_$noentry external static fixed bin(35,0) dcl 206 error_table_$nomatch external static fixed bin(35,0) dcl 211 error_table_$not_seg_type external static fixed bin(35,0) dcl 208 error_table_$seg_not_found external static fixed bin(35,0) dcl 210 error_table_$segknown external static fixed bin(35,0) dcl 209 execute_mode internal static bit(36) initial unaligned dcl 212 filact_args based structure level 1 dcl 292 file_name_in_ascii automatic bit(1) unaligned dcl 175 file_no automatic fixed bin(24,0) dcl 213 four_NULS internal static char(4) initial unaligned dcl 216 gse_ext_$gcos_debug_pathname external static char(168) unaligned dcl 19-15 gse_ext_$modes external static structure level 1 dcl 19-18 gse_ext_$smc_pathname external static char(168) unaligned dcl 19-16 gtss_CFP_abort_ 000000 constant entry external dcl 11-9 gtss_CFP_break_ 000000 constant entry external dcl 11-10 gtss_CFP_input_ 000000 constant entry external dcl 11-11 gtss_CFP_output_ 000000 constant entry external dcl 11-12 gtss_abandon_CFP_ 000000 constant entry external dcl 11-13 gtss_abort_dump_ 000000 constant entry external dcl 11-14 gtss_abort_subsystem_$not_imp 000000 constant entry external dcl 11-16 gtss_abs_$abs_equiv 000000 constant entry external dcl 11-19 gtss_abs_$cpu_runout 000000 constant entry external dcl 11-20 gtss_abs_$create_absin 000000 constant entry external dcl 11-21 gtss_abs_$dabt_check 000000 constant entry external dcl 11-22 gtss_abs_$get_drm 000000 constant entry external dcl 11-24 gtss_abs_$get_id 000000 constant entry external dcl 11-23 gtss_abs_login_banner_ 000000 constant entry external dcl 11-17 gtss_abs_logout_banner_ 000000 constant entry external dcl 11-18 gtss_adjust_size_ 000000 constant entry external dcl 11-25 gtss_aft_$add 000000 constant entry external dcl 11-26 gtss_aft_$find 000000 constant entry external dcl 11-28 gtss_aft_$initialize 000000 constant entry external dcl 11-29 gtss_attributes_mgr_$get 000000 constant entry external dcl 11-31 gtss_attributes_mgr_$set 000000 constant entry external dcl 11-32 gtss_bcd_ascii_ 000000 constant entry external dcl 11-33 gtss_break_vector_ 000000 constant entry external dcl 11-35 gtss_break_vector_$drl_in_progress 000000 constant entry external dcl 11-36 gtss_break_vector_$status 000000 constant entry external dcl 11-37 gtss_build_ 000000 constant entry external dcl 11-38 gtss_com_err_ 000000 constant entry external dcl 11-39 gtss_derail_processor_ 000000 constant entry external dcl 11-40 gtss_derail_processor_$set 000000 constant entry external dcl 11-41 gtss_dq_$catp 000000 constant entry external dcl 11-42 gtss_dq_$create 000000 constant entry external dcl 11-43 gtss_dq_$dibp 000000 constant entry external dcl 11-44 gtss_dq_$entries_info 000000 constant entry external dcl 11-45 gtss_dq_$hdrp 000000 constant entry external dcl 11-46 gtss_dq_$mod_js 000000 constant entry external dcl 11-47 gtss_dq_$open_exc 000000 constant entry external dcl 11-48 gtss_dq_$open_gen 000000 constant entry external dcl 11-49 gtss_drl_abort_ 000000 constant entry external dcl 11-50 gtss_drl_addmem_ 000000 constant entry external dcl 11-51 gtss_drl_callss_ 000000 constant entry external dcl 11-52 gtss_drl_corfil_ 000000 constant entry external dcl 11-53 gtss_drl_defil_ 000000 constant entry external dcl 11-54 gtss_drl_defil_$subr 000000 constant entry external dcl 11-55 gtss_drl_dio_ 000000 constant entry external dcl 11-56 gtss_drl_drlimt_ 000000 constant entry external dcl 11-57 gtss_drl_drlsav_ 000000 constant entry external dcl 11-58 gtss_drl_filact_ 000000 constant entry external dcl 11-59 gtss_drl_filsp_ 000000 constant entry external dcl 11-60 gtss_drl_grow_ 000000 constant entry external dcl 11-61 gtss_drl_gwake_ 000000 constant entry external dcl 11-62 gtss_drl_jsts_ 000000 constant entry external dcl 11-63 gtss_drl_kin_ 000000 constant entry external dcl 11-64 gtss_drl_kotnow_ 000000 constant entry external dcl 11-65 gtss_drl_kotnow_$gtss_drl_kout_ 000000 constant entry external dcl 11-66 gtss_drl_koutn_ 000000 constant entry external dcl 11-67 gtss_drl_morlnk_ 000000 constant entry external dcl 11-68 gtss_drl_msub_ 000000 constant entry external dcl 11-69 gtss_drl_objtim_ 000000 constant entry external dcl 11-70 gtss_drl_part_ 000000 constant entry external dcl 11-71 gtss_drl_pasaft_ 000000 constant entry external dcl 11-72 gtss_drl_pasdes_ 000000 constant entry external dcl 11-73 gtss_drl_pasust_ 000000 constant entry external dcl 11-74 gtss_drl_pdio_ 000000 constant entry external dcl 11-75 gtss_drl_prgdes_ 000000 constant entry external dcl 11-76 gtss_drl_pseudo_ 000000 constant entry external dcl 11-77 gtss_drl_relmem_ 000000 constant entry external dcl 11-78 gtss_drl_restor_ 000000 constant entry external dcl 11-79 gtss_drl_retfil_ 000000 constant entry external dcl 11-80 gtss_drl_return_ 000000 constant entry external dcl 11-81 gtss_drl_rew_ 000000 constant entry external dcl 11-82 gtss_drl_rstswh_ 000000 constant entry external dcl 11-83 gtss_drl_setlno_ 000000 constant entry external dcl 11-84 gtss_drl_setswh_ 000000 constant entry external dcl 11-85 gtss_drl_snumb_ 000000 constant entry external dcl 11-86 gtss_drl_spawn_ 000000 constant entry external dcl 11-87 gtss_drl_spawn_$gtss_drl_pasflr_ 000000 constant entry external dcl 11-88 gtss_drl_stoppt_ 000000 constant entry external dcl 11-89 gtss_drl_switch_ 000000 constant entry external dcl 11-90 gtss_drl_sysret_ 000000 constant entry external dcl 11-91 gtss_drl_t_cfio_ 000000 constant entry external dcl 11-92 gtss_drl_t_cmov_ 000000 constant entry external dcl 11-93 gtss_drl_t_err_ 000000 constant entry external dcl 11-94 gtss_drl_t_goto_ 000000 constant entry external dcl 11-95 gtss_drl_t_linl_ 000000 constant entry external dcl 11-96 gtss_drl_t_rscc_ 000000 constant entry external dcl 11-97 gtss_drl_tapein_ 000000 constant entry external dcl 11-98 gtss_drl_task_ 000000 constant entry external dcl 11-99 gtss_drl_termtp_ 000000 constant entry external dcl 11-100 gtss_drl_time_ 000000 constant entry external dcl 11-101 gtss_drun_ 000000 constant entry external dcl 11-102 gtss_dsd_lookup_ 000000 constant entry external dcl 11-103 gtss_dsd_process_ 000000 constant entry external dcl 11-104 gtss_edit_dsd_ 000000 constant entry external dcl 11-105 gtss_expand_pathname_$verify_umc 000000 constant entry external dcl 11-108 gtss_ext_$CFP_bits external static structure level 1 dcl 7-37 gtss_ext_$SYstarstar_file_no external static fixed bin(24,0) dcl 7-33 gtss_ext_$aem external static fixed bin(17,0) dcl 7-8 gtss_ext_$bad_drl_rtrn external static label variable dcl 7-9 gtss_ext_$com_reg external static structure level 1 dcl 7-45 gtss_ext_$deferred_catalogs_ptr external static pointer dcl 7-11 gtss_ext_$dispose_of_drl external static label variable dcl 7-12 gtss_ext_$drl_rtrn external static label variable array dcl 7-13 gtss_ext_$drm_path external static char(168) unaligned dcl 7-14 gtss_ext_$drun_jid external static char(5) unaligned dcl 7-15 gtss_ext_$event_channel external static fixed bin(71,0) dcl 7-16 gtss_ext_$fast_lib external static structure level 1 dcl 7-98 gtss_ext_$finished external static label variable dcl 7-17 gtss_ext_$flags external static structure level 1 dcl 7-60 gtss_ext_$gdb_name external static char(8) unaligned dcl 7-18 gtss_ext_$get_line external static entry variable dcl 7-19 gtss_ext_$gtss_slave_area_seg external static pointer array dcl 7-20 gtss_ext_$hcs_work_area_ptr external static pointer dcl 7-21 gtss_ext_$homedir external static char(64) unaligned dcl 7-22 gtss_ext_$last_k_was_out external static bit(1) dcl 7-23 gtss_ext_$mcfc external static structure level 1 dcl 7-109 gtss_ext_$pdir external static varying char(168) dcl 7-24 gtss_ext_$popup_from_pi external static label variable dcl 7-25 gtss_ext_$ppt external static pointer dcl 7-94 gtss_ext_$process_type external static fixed bin(17,0) dcl 7-26 gtss_ext_$put_chars external static entry variable dcl 7-27 gtss_ext_$restart_from_pi external static label variable dcl 7-28 gtss_ext_$restart_seg_ptr external static pointer dcl 7-29 gtss_ext_$sig_ptr external static pointer dcl 7-30 gtss_ext_$stack_level_ external static fixed bin(17,0) dcl 7-31 gtss_ext_$statistics external static structure level 1 dcl 7-72 gtss_ext_$suspended_process external static bit(1) unaligned dcl 7-32 gtss_ext_$user_id external static varying char(26) dcl 7-34 gtss_ext_$work_area_ptr external static pointer dcl 7-35 gtss_fail 000000 stack reference condition dcl 219 gtss_fault_processor_ 000000 constant entry external dcl 11-109 gtss_fault_processor_$timer_runout 000000 constant entry external dcl 11-111 gtss_filact_error_status_ 000000 constant entry external dcl 11-112 gtss_filact_funct02_ 000000 constant entry external dcl 11-113 gtss_filact_funct03_ 000000 constant entry external dcl 11-114 gtss_filact_funct04_ 000000 constant entry external dcl 11-115 gtss_filact_funct05_ 000000 constant entry external dcl 11-116 gtss_filact_funct08_ 000000 constant entry external dcl 11-117 gtss_filact_funct10_ 000000 constant entry external dcl 11-118 gtss_filact_funct11_ 000000 constant entry external dcl 11-119 gtss_filact_funct14_ 000000 constant entry external dcl 11-120 gtss_filact_funct18_ 000000 constant entry external dcl 11-121 gtss_filact_funct19_ 000000 constant entry external dcl 11-122 gtss_filact_funct21_ 000000 constant entry external dcl 11-123 gtss_filact_funct22_ 000000 constant entry external dcl 11-124 gtss_find_cond_frame_ 000000 constant entry external dcl 11-110 gtss_interp_prim_ 000000 constant entry external dcl 11-126 gtss_interp_prim_$callss 000000 constant entry external dcl 11-127 gtss_interp_prim_$sysret 000000 constant entry external dcl 11-128 gtss_interp_prim_$t_goto 000000 constant entry external dcl 11-129 gtss_ios_change_size_ 000000 constant entry external dcl 11-130 gtss_ios_close_ 000000 constant entry external dcl 11-131 gtss_ios_exchange_names_ 000000 constant entry external dcl 11-132 gtss_ios_initialize_ 000000 constant entry external dcl 11-133 gtss_ios_io_ 000000 constant entry external dcl 11-134 gtss_ios_open_ 000000 constant entry external dcl 11-135 gtss_ios_position_ 000000 constant entry external dcl 11-136 gtss_mcfc_$close 000000 constant entry external dcl 11-139 gtss_mcfc_$delete 000000 constant entry external dcl 11-137 gtss_mcfc_$open 000000 constant entry external dcl 11-138 gtss_mcfc_empty 000000 constant entry external dcl 11-106 gtss_mcfc_init_ 000000 constant entry external dcl 11-125 gtss_pnterr internal static structure level 1 packed unaligned dcl 9-9 gtss_read_starCFP_ 000000 constant entry external dcl 11-140 gtss_read_starCFP_$last_os 000000 constant entry external dcl 11-141 gtss_run_subsystem_ 000000 constant entry external dcl 11-142 gtss_run_subsystem_$finish 000000 constant entry external dcl 11-143 gtss_run_subsystem_$restor 000000 constant entry external dcl 11-144 gtss_run_subsystem_$restor_perm 000000 constant entry external dcl 11-145 gtss_set_slave_ 000000 constant entry external dcl 11-146 gtss_set_slave_$load_bar 000000 constant entry external dcl 11-147 gtss_update_safe_store_ 000000 constant entry external dcl 11-148 gtss_verify_access_ 000000 constant entry external dcl 11-149 gtss_verify_access_$check_forced_access 000000 constant entry external dcl 11-150 gtss_write_starCFP_ 000000 constant entry external dcl 11-151 have_file automatic bit(1) unaligned dcl 220 hcs_$add_acl_entries 000000 constant entry external dcl 222 hcs_$add_dir_acl_entries 000000 constant entry external dcl 223 hcs_$add_inacl_entries 000000 constant entry external dcl 224 hcs_$append_branchx 000000 constant entry external dcl 225 hcs_$delentry_file 000000 constant entry external dcl 226 hcs_$initiate 000000 constant entry external dcl 227 hcs_$make_seg 000000 constant entry external dcl 228 hcs_$quota_read 000000 constant entry external dcl 229 hcs_$status_long 000000 constant entry external dcl 230 increment automatic fixed bin(24,0) dcl 234 info_ptr automatic pointer dcl 15-2 k automatic fixed bin(24,0) dcl 236 l automatic fixed bin(24,0) dcl 237 lbx internal static fixed bin(17,0) initial dcl 10-42 lib_arglist based structure level 1 dcl 308 link based structure level 1 dcl 15-2 low_b internal static bit(18) initial dcl 239 low_i internal static fixed bin(18,0) initial dcl 240 lpx internal static fixed bin(17,0) initial dcl 10-42 max_options internal static fixed bin(17,0) initial dcl 241 max_resources internal static fixed bin(17,0) initial dcl 242 mc based structure level 1 dcl 10-12 minus_one internal static bit(36) initial unaligned dcl 243 mlim automatic float bin(27) dcl 244 modify_mode internal static bit(36) initial unaligned dcl 246 msp automatic float bin(27) dcl 247 multics_access_mode automatic fixed bin(5,0) dcl 248 now automatic fixed bin(17,0) dcl 17-5 options based structure level 1 dcl 362 optionsx based structure level 1 dcl 17-7 path_name automatic varying char(168) dcl 249 pathname based char dcl 15-2 permissions based structure level 1 dcl 344 person_id automatic char(22) unaligned dcl 250 quota automatic fixed bin(18,0) dcl 251 read_mode internal static bit(36) initial unaligned dcl 252 rings internal static fixed bin(3,0) initial array dcl 254 sbx internal static fixed bin(17,0) initial dcl 10-42 scu based structure level 1 dcl 10-56 scup automatic pointer dcl 10-54 scux based structure level 1 dcl 10-207 seg_acl_count automatic fixed bin(17,0) dcl 255 segment_acl based structure array level 1 dcl 16-2 shlim automatic float bin(27) array dcl 256 shsp automatic float bin(27) array dcl 257 size builtin function dcl 258 smc_arglist based structure level 1 dcl 392 smc_entry based structure level 1 dcl 399 sons_lvid automatic bit(36) unaligned dcl 260 spx internal static fixed bin(17,0) initial dcl 10-42 status automatic fixed bin(24,0) dcl 261 status_mode internal static bit(36) initial unaligned dcl 262 switches internal static bit(6) initial unaligned dcl 265 t1c based structure level 1 dcl 14-108 tacc_sw automatic fixed bin(1,0) dcl 266 trp automatic fixed bin(71,0) dcl 267 tup automatic bit(36) dcl 268 two_words based bit(72) unaligned dcl 269 type automatic fixed bin(2,0) dcl 270 used automatic fixed bin(18,0) dcl 271 user_attribute_word automatic bit(35) unaligned dcl 272 user_info_$limits 000000 constant entry external dcl 273 words380 based bit(13680) dcl 274 write_mode internal static bit(36) initial unaligned dcl 275 NAMES DECLARED BY EXPLICIT CONTEXT. bcd_message 001537 constant entry internal dcl 4-2 ref 62 could_not_purge_release_catalog 000302 constant label dcl 61 ref 80 113 130 gal 001216 constant label dcl 3-51 ref 3-39 get_ascii_file_name 001072 constant entry internal dcl 3-8 ref 55 get_faulty_cat_file_entry 001063 constant entry internal dcl 2-5 ref 68 gtss_filact_funct08_ 000143 constant entry external dcl 14 ret 000427 constant label dcl 70 ref 133 return_err4 000234 constant label dcl 46 ref 3-24 3-43 5-13 5-16 validate_status 001672 constant entry internal dcl 5-5 ref 53 NAMES DECLARED BY CONTEXT OR IMPLICATION. index builtin function ref 105 length builtin function ref 3-79 4-18 null builtin function ref 178 185 187 188 189 199 215 218 259 263 14-12 14-83 14-216 14-230 17-6 18-5 5-9 rtrim builtin function ref 62 62 99 99 102 105 105 3-87 string builtin function ref 3-70 translate builtin function ref 3-58 unspec builtin function ref 5-21 verify builtin function ref 3-87 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2544 2606 2345 2554 Length 3416 2345 42 573 177 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME gtss_filact_funct08_ 468 external procedure is an external procedure. get_faulty_cat_file_entry internal procedure shares stack frame of external procedure gtss_filact_funct08_. get_ascii_file_name internal procedure shares stack frame of external procedure gtss_filact_funct08_. bcd_message 85 internal procedure is called during a stack extension. validate_status internal procedure shares stack frame of external procedure gtss_filact_funct08_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME bcd_message 000100 n bcd_message 000101 f bcd_message 000102 l bcd_message 000104 bmp bcd_message gtss_filact_funct08_ 000100 sub_catalog gtss_filact_funct08_ 000112 directory gtss_filact_funct08_ 000165 rs gtss_filact_funct08_ 000166 nic gtss_filact_funct08_ 000170 p gtss_filact_funct08_ 000172 altname_ptr gtss_filact_funct08_ 000174 arglist_ptr gtss_filact_funct08_ 000176 arg_ptr gtss_filact_funct08_ 000200 attribute_segment_ptr gtss_filact_funct08_ 000202 cat_filedescr_name_offset gtss_filact_funct08_ 000204 descriptor_ptr gtss_filact_funct08_ 000206 entry_name gtss_filact_funct08_ 000212 FMS_block_ptr gtss_filact_funct08_ 000214 grc gtss_filact_funct08_ 000216 gseg gtss_filact_funct08_ 000220 high_b gtss_filact_funct08_ 000221 high_i gtss_filact_funct08_ 000222 i gtss_filact_funct08_ 000224 smc_entry_ptr gtss_filact_funct08_ 000226 status_ptr gtss_filact_funct08_ 000230 dummy_path gtss_filact_funct08_ 000312 mcp gtss_filact_funct08_ 000314 ascii_cat_file gtss_filact_funct08_ 000342 gtss_file_values gtss_filact_funct08_ 000452 FMS_cat_ptr gtss_filact_funct08_ 000454 Type_1_ptr gtss_filact_funct08_ 000456 Type_4_ptr gtss_filact_funct08_ 000460 buffer_ptr gtss_filact_funct08_ 000462 options_ptr gtss_filact_funct08_ 000464 permissions_ptr gtss_filact_funct08_ 000504 ap get_ascii_file_name 000520 status_pointer validate_status THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_cs cat_realloc_cs call_ext_out_desc call_ext_out call_int_this_desc return mod_fx1 shorten_stack ext_entry int_entry_desc set_cs_eis index_cs_eis THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. delete_$path gtss_abort_subsystem_ gtss_aft_$delete gtss_ascii_bcd_ gtss_bcd_ascii_$lc gtss_expand_pathname_ ioa_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. gse_ext_$drm_rule gse_ext_$umc_name gtss_dfd_ext_$disk_file_data gtss_ext_$aft gtss_ext_$db gtss_ust_ext_$ust LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 14 000135 178 000150 185 000152 187 000153 188 000154 189 000155 199 000156 202 000157 215 000162 217 000163 218 000165 259 000167 263 000170 14 12 000171 14 83 000172 14 216 000173 14 230 000174 17 6 000175 18 5 000176 34 000177 35 000203 36 000210 37 000213 38 000216 39 000221 41 000224 44 000225 46 000234 47 000235 48 000240 50 000241 53 000245 55 000254 61 000302 62 000303 68 000413 69 000424 70 000427 71 000430 74 000431 80 000461 81 000464 82 000470 83 000472 84 000506 90 000536 91 000546 99 000606 102 000664 103 000706 104 000715 105 000724 108 000766 113 001006 116 001010 118 001012 130 001054 132 001057 133 001062 2 5 001063 2 10 001065 3 8 001072 3 19 001074 3 20 001077 3 22 001100 3 24 001111 3 26 001112 3 28 001116 3 29 001123 3 30 001131 3 33 001134 3 35 001136 3 36 001143 3 38 001151 3 39 001153 3 42 001154 3 43 001173 3 46 001174 3 47 001202 3 49 001213 3 51 001216 3 52 001217 3 56 001227 3 57 001241 3 58 001243 3 61 001262 3 62 001263 3 68 001311 3 70 001313 3 71 001317 3 72 001333 3 73 001343 3 74 001373 3 77 001375 3 79 001413 3 85 001422 3 86 001431 3 87 001447 3 91 001477 3 92 001504 3 94 001511 3 96 001513 3 98 001521 3 101 001523 3 102 001524 3 103 001531 4 2 001536 4 15 001552 4 16 001557 4 18 001563 4 19 001564 4 20 001567 4 21 001571 4 22 001573 4 25 001575 4 26 001601 4 27 001615 4 29 001621 4 30 001653 4 31 001662 4 32 001671 5 5 001672 5 9 001674 5 13 001676 5 16 001703 5 20 001723 5 21 001731 5 22 001734 ----------------------------------------------------------- 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