COMPILATION LISTING OF SEGMENT gtss_filact_funct21_ Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 12/10/84 1329.7 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_funct21_: proc (mcp_val, high_val, gseg_val, arg_ptr_val, buffer_ptr_val, code); 15 16 /** Derail FILACT function 21 (Get Specific). 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 othr => multics error code. 23* 24* Authors: Robert J. Grimes Created 25* - Albert N. Kepner 1978 26* - Robert M. May 27* - David B. Ward 28* Change: Dave Ward 02/24/79 $db debug switch. 29* Change: Bob Alvarado 08/22/79 commented out lines 106-108 as temp fix. 30***/ 31 dcl mcp_val ptr parm; 32 dcl high_val bit(18)parm; 33 dcl gseg_val ptr parm; 34 dcl arg_ptr_val ptr parm; 35 dcl buffer_ptr_val ptr parm; 36 dcl code fixed bin(35)parm; 37 mcp = mcp_val; 38 high_b = high_val; 39 high_i = fixed (high_b, 18); 40 gseg = gseg_val; 41 arg_ptr = arg_ptr_val; 42 buffer_ptr = buffer_ptr_val; 43 44 code = 0; /* Successful. */ 45 46 /** Obtain get specific catalog or file arglist. */ 47 if /* (Get_Specific_args.L_arglist < low_b) | */ 48 ((fixed (Get_Specific_args.L_arglist, 18) +3) > high_i) then do; 49 return_err4: ; 50 code = 4; 51 return; 52 end; 53 arglist_ptr = addrel (gseg, Get_Specific_args.L_arglist); 54 55 /** Obtain return status. **/ 56 call validate_status (Get_Specific_arglist.L_status_return, status_ptr); 57 58 if /* (Get_Specific_arglist.L_sector_arghigh_b) then goto return_err4; 60 sector_ptr = addrel (gseg, Get_Specific_arglist.L_sector_arg); 61 62 if db_filact_funct21 then do; 63 i = fixed (sector_number, 18); 64 call ioa_ ("filact21: sector_number=^6o (^i) L_eor=^6o.", i, i, fixed (L_end_of_record, 18)); 65 end; 66 67 if (sector_number<"000005"b3) | 68 (sector_number>"777777"b3) then do; 69 call com_err_ (0, "gtss_filact_funct21_", 70 "Sector number (^i) out of range.", i); 71 could_not_get_specific_file: ; 72 status_word.status = "404300"b3; /* Invalid catalog block address. */ 73 return; 74 end; 75 76 def_cat_ptr = gtss_ext_$deferred_catalogs_ptr; 77 def_cat_type_1_ptr = addrel (def_cat_ptr, sector_number); 78 if db_filact_funct21 then 79 call ioa_ ("filact21: cat=^b type=^i sn=^6o (^i)." 80 , def_cat_type_1.cat 81 , def_cat_type_1.rec_type 82 , fixed (def_cat_type_1.sn, 18) 83 , fixed (def_cat_type_1.sn, 18) 84 ); 85 86 if def_cat_type_1.rec_type = 1 then do; /* Provide catalog continuation record type 1. */ 87 Type_1_ptr = addr (callers_buffer.W43_FSBFER); 88 Type_1_ptr -> FSnTYP_0.bits00_05 = "01"b3; /* => catalog continuation. */ 89 def_cat_fill_len = fixed (def_cat_type_1.sn, 18)-201; /* 201=> words for cat/file descr.var). */ 90 91 i = 0; /* Index to type 1 record names. */ 92 do while (deferred_catalog.nl>0); 93 i = i+1; 94 if i>hbound (FS1_VAR_06_76, 1) then do; /* Type 1 record exhausted. */ 95 FS1_CBK_04.bits00_17, 96 FS1_NLL_01.bits00_17 = sector_number; 97 def_cat_type_1.sn = rel (addr (deferred_catalog.type2_3)); 98 goto finished; 99 end; 100 FS1_VAR_06_76 (i).FS1_SNM_00_01 = (12)"20"b3; 101 call gtss_ascii_bcd_ ( 102 addr (deferred_catalog.ns) 103 , min (deferred_catalog.nl, 12) 104 , addr (FS1_VAR_06_76 (i).FS1_SNM_00_01) 105 ); 106 FS1_VAR_06_76 (i).FS1_SPT_02.bit01 = deferred_catalog.cat; 107 FS1_VAR_06_76 (i).FS1_SPT_02.bits18_35 = rel (addr (deferred_catalog.type2_3)); 108 def_cat_fill_len = def_cat_fill_len+1+divide (deferred_catalog.nl+3, 4, 17); 109 end; 110 goto finished; 111 end; 112 if def_cat_type_1.rec_type = 2 then do; /* Provide description record. */ 113 if def_cat_type_1.cat then do; /* Provide type 0 catalog record. */ 114 /* call ioa_ ("filact21: rec_type 2 for cat at ^6o.", fixed (sector_number, 18)); 115* goto could_not_get_specific_file; */ 116 /* This is a temp fix. this area needs reviewing */ 117 /**MORE**/ 118 end; 119 120 /** Provide type 2 file description record. **/ 121 if db_filact_funct21 then 122 call ioa_ ("filact21: rec_type 2 for file at ^6o.", fixed (sector_number, 18)); 123 124 dcl 1 filact18_call aligned 125 , 3 sas (102)bit(36) 126 , 3 args aligned like Get_Current_args 127 , 3 arglist aligned like Get_Current_arglist 128 , 3 stat bit(72) 129 , 3 cat_file (200)bit(36) 130 ; 131 132 unspec (filact18_call) = "0"b; 133 134 args.L_arglist = rel (addr (filact18_call.arglist)); 135 args.Get_Current_function_no = 18; 136 arglist.L_status_return = rel (addr (stat)); 137 arglist.L_cat_filedescr = rel (addr (filact18_call.cat_file)); 138 139 /** Prepare a catalog/file description by catenating 140* the file name to the cat/filedescr in the deferred 141* catalog store. 142***/ 143 dcl 1 move_string aligned based(addr(filact18_call.cat_file)), 144 2 cat_file_string bit(cfdl), 145 2 file_string char(8), 146 2 file_perm bit(72), 147 2 minus_one fixed bin(35); 148 dcl cfdl fixed bin(35); 149 150 cfdl = cat_file_len*4*36; 151 cat_file_string = addr (deferred_catalog.cat_file) -> cat_file_string; 152 dcl 1 file_name aligned based(def_cat_type_1_ptr), 153 3 fill bit(18)unal, 154 3 name_len fixed bin(17)unal, 155 3 name char(file_name.name_len)unal; 156 file_string = file_name.name; 157 file_perm = (12)"20"b3; 158 minus_one = -1; 159 160 call gtss_filact_funct18_ ( 161 mcp 162 , (6)"7"b3 163 , addr (filact18_call) 164 , addr (args) 165 , buffer_ptr 166 , code 167 ); 168 if code ^= 0 then goto could_not_get_specific_file; 169 goto finished; 170 end; 171 call com_err_ (0, "gtss_filact_funct21_", 172 "Deferred FMS catalog records of type ^i not provided for.", def_cat_type_1.rec_type); 173 goto could_not_get_specific_file; 174 175 finished: ; 176 177 code = 0; 178 Get_Specific_arglist.L_record = rel (Type_1_ptr); 179 sector.sector_number = bit (fixed (fixed (Get_Specific_arglist.L_record, 18)+size (Type_1_Catalog)-2, 18)); 180 status_word.status = "400000"b3; 181 return; 182 183 1 1 /* BEGIN INCLUDE FILE gtss_filact_intp1.incl.pl1 */ 1 2 /* 1 3* Created: (Wardd Multics) 10/05/78 1600.9 mst Thu 1 4**/ 1 5 validate_status: proc (status_address, sp); 1 6 1 7 dcl status_address bit (18)parm; 1 8 dcl sp ptr parm; 1 9 dcl status_pointer ptr init(null()); 1 10 1 11 1 12 /** Assure 2 word status not above memory. **/ 1 13 if (status_address >= high_b) then goto return_err4; 1 14 1 15 /** Assure status words and arglist do not overlap. **/ 1 16 if (fixed(status_address,18)+1) >= fixed(filact_args.L_arglist,18) & 1 17 fixed (status_address, 18) <= (fixed (filact_args.L_arglist, 18)+ 1) then goto return_err4; 1 18 1 19 /** Obtain pointer to status words. **/ 1 20 sp, status_pointer = addrel (gseg, status_address); 1 21 unspec (status_pointer -> status_word) = "0"b; 1 22 return; 1 23 1 24 dcl 1 filact_args aligned based(arg_ptr), /* 1st word only. */ 1 25 2 zero bit(18)unal, 1 26 2 L_arglist bit(18)unal; 1 27 end /* validate_status */; 1 28 /* END INCLUDE FILE gtss_filact_intp1.incl.pl1 */ 184 185 186 /** Declarations for gtss_drl_filact_: 187* IDENTIFIER ATTRIBUTES **/ 188 dcl names (total_names)char(32)aligned based(n_ptr); 189 dcl hcs_$star_ entry(char(*),char(*),fixed bin(2),ptr,fixed bin,ptr,ptr,fixed bin(35)); 190 dcl total_names fixed bin; 191 dcl name_info area(261120)aligned based(gtss_ext_$hcs_work_area_ptr); 192 dcl entry_count fixed bin; 193 dcl entry_ptr ptr init(null()); 194 dcl n_ptr ptr init(null()); 195 dcl directory char(168)var; 196 dcl brp ptr init(null()); 197 dcl sector_ptr ptr init(null()); 198 dcl access_mode bit (6); 199 dcl addr builtin; 200 dcl addrel builtin; 201 dcl aft_code fixed bin (35); 202 dcl aft_name char (8); 203 dcl altname char (8) aligned based (altname_ptr); 204 dcl altname_ptr ptr init(null()); 205 dcl append_mode bit (36) static int options(constant)init ("100000000000"b3); 206 dcl arglist_ptr ptr init(null()); 207 dcl arg_ptr ptr init(null()); 208 dcl attribute_segment_ptr ptr init(null()); 209 dcl bit builtin; 210 dcl bit18 bit(18)based; 211 dcl bit72 bit(72)aligned based; 212 dcl bit_count fixed bin (24); 213 dcl cat_filedescr_name_offset bit(18); 214 dcl cdate fixed bin (71); 215 dcl clim float bin; 216 dcl cont_ptr ptr init(null()); 217 dcl crf fixed bin(24); 218 dcl csp float bin; 219 dcl delete_$path entry (char (*), char (*), bit (6), char (*), fixed bin (35)); 220 dcl descriptor_address bit (18); 221 dcl descriptor_ptr ptr init(null()); 222 dcl dir_name char (168); 223 dcl divide builtin; 224 dcl entry_name char (12) init (" "); 225 dcl error_table_$incorrect_access fixed bin (35) ext; 226 dcl error_table_$moderr fixed bin (35) ext; 227 dcl error_table_$namedup fixed bin (35) ext; 228 dcl error_table_$noentry fixed bin (35) ext; 229 dcl error_table_$nomatch fixed bin (35) ext; 230 dcl error_table_$not_seg_type fixed bin(35)ext; 231 dcl error_table_$no_dir fixed bin (35) ext; 232 dcl error_table_$segknown fixed bin (35) ext; 233 dcl error_table_$seg_not_found fixed bin (35) ext; 234 dcl execute_mode bit (36) static int options(constant)init ("200000000000"b3); 235 dcl file_no fixed bin (24); 236 dcl fixed builtin; 237 dcl fixed_bin17 fixed bin(17)unal based; 238 dcl FMS_block_ptr ptr init(null()); 239 dcl four_NULS char (4)static int options (constant)init ((4)"") /* 4 octal 000's */; 240 dcl gseg ptr init(null()); 241 dcl gtss_fail condition; 242 dcl have_file bit(1); 243 dcl hbound builtin; 244 dcl hcs_$add_acl_entries entry (char (*), char (*), ptr, fixed bin(24), fixed bin (35)); 245 dcl hcs_$add_dir_acl_entries entry (char (*), char (*), ptr, fixed bin, fixed bin (35)); 246 dcl hcs_$add_inacl_entries entry (char (*), char (*), ptr, fixed bin, fixed bin (3), fixed bin (35)); 247 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)); 248 dcl hcs_$delentry_file entry(char(*),char(*),fixed bin(35)); 249 dcl hcs_$initiate entry (char (*), char (*), char (*), fixed bin (1), fixed bin (2), ptr, fixed bin (35)); 250 dcl hcs_$make_seg entry (char (*), char (*), char (*), fixed bin (5), ptr, fixed bin (35)); 251 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)); 252 dcl hcs_$status_long entry (char (*), char (*), fixed bin (1), ptr,ptr, fixed bin (35)); 253 dcl high_b bit(18)aligned; 254 dcl high_i fixed bin(18)aligned; 255 dcl i fixed bin(24); 256 dcl increment fixed bin(24); 257 dcl index builtin; 258 dcl ioa_ entry options (variable); 259 dcl k fixed bin(24); 260 dcl l fixed bin(24); 261 dcl last_sector_no fixed bin; 262 dcl lbound builtin; 263 dcl low_b bit(18)aligned static int options(constant)init("000147"b3) /* 103 dec. */; 264 dcl low_i fixed bin(18)aligned static int options(constant)init(103); 265 dcl max_options fixed bin static int options(constant)init (100); 266 dcl max_resources fixed bin static int options(constant)init (99999); 267 dcl mlim float bin; 268 dcl mod builtin; 269 dcl modify_mode bit (36) static int options(constant)init ("200000000000"b3); 270 dcl msp float bin; 271 dcl multics_access_mode fixed bin(5); 272 dcl nic fixed bin(24); 273 dcl p ptr init(null()); 274 dcl path_name char (168) varying; 275 dcl person_id char (22); 276 dcl quota fixed bin (18); 277 dcl read_mode bit (36) static int options(constant)init ("400000000000"b3); 278 dcl rel builtin; 279 dcl rings (3) fixed bin (3) static int options(constant)init (4, 4, 4); 280 dcl seg_acl_count fixed bin; 281 dcl shlim (0:7) float bin; 282 dcl shsp (0:7) float bin; 283 dcl size builtin; 284 dcl smc_entry_ptr ptr init(null()); 285 dcl sons_lvid bit (36); 286 dcl status fixed bin (24); 287 dcl status_mode bit (36) static int options(constant)init ("400000000000"b3); 288 dcl status_ptr ptr init(null()); 289 dcl string builtin; 290 dcl substr builtin; 291 dcl switches bit (6) static int options(constant)init ("37"b3); 292 dcl tacc_sw fixed bin (1); 293 dcl trp fixed bin (71); 294 dcl tup bit (36) aligned; 295 dcl two_words bit (72) based; 296 dcl type fixed bin (2); 297 dcl used fixed bin (18); 298 dcl user_attribute_word bit (35); 299 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); 300 dcl write_mode bit (36) static int options(constant)init ("100000000000"b3); 301 302 dcl 1 sector aligned based(sector_ptr), 303 3 sector_number bit(18)unal, 304 3 L_end_of_record bit(18)unal; 305 306 dcl 1 entries (entry_count)aligned based(entry_ptr), 307 2 type bit(2)unal, 308 2 nnames fixed bin(15)unal, 309 2 nindex fixed bin(17)unal; 310 311 dcl 1 bm based(addr(branch.mode)), 312 2 zero bit(1)unal, 313 2 read bit(1)unal, 314 2 execute bit(1)unal, 315 2 write bit(1)unal, 316 2 append bit(1)unal; 317 318 dcl 1 gfv aligned based(addr(gtss_file_values.data_fields)), 319 2 curll_val, 320 3 curll00_20 bit(21)unal, 321 3 curll21_35 bit(15)unal, 322 2 maxll_val, 323 3 maxll00_17 bit(18)unal, 324 3 maxll18_35 bit(18)unal, 325 2 nail_val, 326 3 noal00_17 bit(18)unal, 327 2 noal18_35 bit(18)unal; 328 329 dcl 1 Get_Specific_args aligned based(arg_ptr) 330 , 3 word1 331 , 4 zero bit(18)unal 332 , 4 L_arglist bit(18)unal 333 , 3 word2 334 , 4 Get_Specific_function_no fixed bin(17)unal 335 , 4 L_buffer bit(18)unal 336 ; 337 338 dcl 1 Get_Specific_arglist aligned based(arglist_ptr) 339 , 3 word1 340 , 4 L_status_return bit(18)unal 341 , 4 L_record bit(18)unal 342 , 3 word2 343 , 4 L_sector_arg bit(18)unal 344 , 4 device_name bit(18)unal 345 ; 346 347 dcl 1 status_word aligned based (status_ptr), 348 2 status bit (18) unaligned, 349 2 pd bit (18) unaligned, 350 2 null_bit bit (1) unaligned, 351 2 user_attributes bit (35) unaligned; 352 2 1 /* BEGIN INCLUDE FILE gtss_ust_ext_.incl.pl1 */ 2 2 /* UST: User Status Table 2 3* definitions based on 2 4* System Tables, Order number DD14-01E, January 1981 2 5* Section 15, Time Sharing System 2 6* 2 7* Authors: Robert J. Grimes Created 2 8* - Albert N. Kepner 1978 2 9* - Robert M. May 2 10* - David B. Ward 2 11* Change: Dave Ward 02/23/79 Level 4 numbering. 2 12* Change: Ron Barstad 83-07-12 Repaired damaged formating and word offset comments 2 13* Brought up to 4JS3 functionality 2 14**/ 2 15 /* octal word offsets of entries */ 2 16 dcl 1 gtss_ust_ext_$ust aligned ext, 2 17 3 gtss_ust, 2 18 /* 0-1 */ 4 lid bit (72), 2 19 /* 2 */ 4 lstp bit (36), 2 20 /* 3 */ 4 ltin bit (36), 2 21 /* 4 */ 4 lstio, 2 22 5 no_of_chars_by_8 fixed bin (18) uns unal, 2 23 5 no_of_disk_io fixed bin (18) uns unal, 2 24 /* 5 */ 4 lsnub bit (36), 2 25 /* 6-7 */ 4 lchg bit (72), 2 26 /* 10 */ 4 lbuf, 2 27 5 address bit (18)unaligned, 2 28 5 tally bit (1)unaligned, 2 29 5 terminal_type bit (5)unaligned, 2 30 5 station_id bit (12)unaligned, 2 31 /* 11-12 */ 4 liost (0:1) bit (36), 2 32 /* 13 */ 4 lcc bit (36), 2 33 /* 14 */ 4 lback, 2 34 5 fill1 bit (18) unaligned, 2 35 5 gwake fixed bin (17) unaligned, 2 36 /* 15 */ 4 lflag, 2 37 5 mp_list bit (18) unaligned, 2 38 5 flags unaligned, 2 39 6 b18 bit (1) unaligned, 2 40 6 b19 bit (1) unaligned, 2 41 6 b20 bit (1) unaligned, 2 42 6 b21 bit (1) unaligned, 2 43 6 b22 bit (1) unaligned, 2 44 6 b23 bit (1) unaligned, 2 45 6 b24 bit (1) unaligned, 2 46 6 b25 bit (1) unaligned, 2 47 6 b26 bit (1) unaligned, 2 48 6 b27 bit (1) unaligned, 2 49 6 b28 bit (1) unaligned, 2 50 6 b29 bit (1) unaligned, 2 51 6 b30 bit (1) unaligned, 2 52 6 b31 bit (1) unaligned, 2 53 6 b32 bit (1) unaligned, 2 54 6 b33 bit (1) unaligned, 2 55 6 b34 bit (1) unaligned, 2 56 6 b35 bit (1) unaligned, 2 57 /* 16 */ 4 lkdss bit (36), 2 58 /* 17 */ 4 lfile, 2 59 5 program_stack fixed bin (17) unal, 2 60 5 file_list_ptr bit (18) unal, 2 61 /* 20 */ 4 lttys bit (36), 2 62 /* 21 */ 4 lswth, 2 63 5 b0 bit (1) unaligned, 2 64 5 b1 bit (1) unaligned, 2 65 5 b2 bit (1) unaligned, 2 66 5 b3 bit (1) unaligned, 2 67 5 b4 bit (1) unaligned, 2 68 5 b5 bit (1) unaligned, 2 69 5 b6 bit (1) unaligned, 2 70 5 b7 bit (1) unaligned, 2 71 5 b8 bit (1) unaligned, 2 72 5 b9 bit (1) unaligned, 2 73 5 b10 bit (1) unaligned, 2 74 5 b11 bit (1) unaligned, 2 75 5 b12 bit (1) unaligned, 2 76 5 b13 bit (1) unaligned, 2 77 5 b14 bit (1) unaligned, 2 78 5 b15 bit (1) unaligned, 2 79 5 b16 bit (1) unaligned, 2 80 5 b17 bit (1) unaligned, 2 81 5 b18 bit (1) unaligned, 2 82 5 b19 bit (1) unaligned, 2 83 5 b20 bit (1) unaligned, 2 84 5 b21 bit (1) unaligned, 2 85 5 b22 bit (1) unaligned, 2 86 5 b23 bit (1) unaligned, 2 87 5 b24 bit (1) unaligned, 2 88 5 b25 bit (1) unaligned, 2 89 5 b26 bit (1) unaligned, 2 90 5 b27 bit (1) unaligned, 2 91 5 b28 bit (1) unaligned, 2 92 5 b29 bit (1) unaligned, 2 93 5 b30 bit (1) unaligned, 2 94 5 b31 bit (1) unaligned, 2 95 5 b32 bit (1) unaligned, 2 96 5 b33 bit (1) unaligned, 2 97 5 b34 bit (1) unaligned, 2 98 5 b35 bit (1) unaligned, 2 99 /* 22 */ 4 lsize, 2 100 5 bar fixed bin (17) unaligned, 2 101 5 limit bit (18) unaligned, 2 102 /* 23... */ 4 lswap, 2 103 5 fill bit (18) unal, 2 104 5 size bit (18) unal, 2 105 /* ...24 */ 4 transfer_cell bit (36) unal, 2 106 /* 25 */ 4 lerrm bit (36), 2 107 /* 26-37 */ 4 lcfil (0:9) bit (36), 2 108 /* 40 */ 4 lsybc, 2 109 5 b0_17 fixed bin (17) unaligned, 2 110 5 b18_35 fixed bin (17) unaligned, 2 111 /* 41-42 */ 4 lstem (0:1) bit (36), 2 112 /* 43 */ 4 lcals, 2 113 5 b0_17 fixed bin (17) unaligned, 2 114 5 b18_35 bit (18) unaligned, 2 115 /* 44-51 */ 4 subsystems (3), 2 116 5 content_lswap, 2 117 6 fill bit (18) unal, 2 118 6 size bit (18) unal, 2 119 5 tally_address fixed bin (17) unaligned, 2 120 5 ss_flags bit (18) unaligned, 2 121 /* 52 */ 4 ltalc, 2 122 5 tod fixed bin (17) unaligned, 2 123 5 startup fixed bin (17) unaligned, 2 124 /* 53 */ 4 lspts fixed bin (35), 2 125 /* 54 */ 4 lflg2, 2 126 5 b0 bit (1) unaligned, 2 127 5 b1 bit (1) unaligned, 2 128 5 b2 bit (1) unaligned, 2 129 5 b3 bit (1) unaligned, 2 130 5 b4 bit (1) unaligned, 2 131 5 b5 bit (1) unaligned, 2 132 5 b6 bit (1) unaligned, 2 133 5 b7 bit (1) unaligned, 2 134 5 b8 bit (1) unaligned, 2 135 5 b9 bit (1) unaligned, 2 136 5 b10 bit (1) unaligned, 2 137 5 b11 bit (1) unaligned, 2 138 5 b12 bit (1) unaligned, 2 139 5 b13 bit (1) unaligned, 2 140 5 b14 bit (1) unaligned, 2 141 5 b15 bit (1) unaligned, 2 142 5 b16 bit (1) unaligned, 2 143 5 b17 bit (1) unaligned, 2 144 5 b18 bit (1) unaligned, 2 145 5 b19 bit (1) unaligned, 2 146 5 b20 bit (1) unaligned, 2 147 5 b21 bit (1) unaligned, 2 148 5 b22 bit (1) unaligned, 2 149 5 b23 bit (1) unaligned, 2 150 5 b24 bit (1) unaligned, 2 151 5 b25 bit (1) unaligned, 2 152 5 b26 bit (1) unaligned, 2 153 5 b27 bit (1) unaligned, 2 154 5 b28 bit (1) unaligned, 2 155 5 b29 bit (1) unaligned, 2 156 5 b30 bit (1) unaligned, 2 157 5 b31 bit (1) unaligned, 2 158 5 b32 bit (1) unaligned, 2 159 5 b33 bit (1) unaligned, 2 160 5 b34 bit (1) unaligned, 2 161 5 b35 bit (1) unaligned, 2 162 /* 55-60 */ 4 lsftm (0:3) bit (36), 2 163 /* 61 */ 4 lsprt fixed bin (35), 2 164 /* 62 */ 4 ltrm bit (36), 2 165 /* 63 */ 4 linno fixed bin (35), 2 166 /* 64 */ 4 lincr fixed bin (35), 2 167 /* 65 */ 4 ltdes bit (36), 2 168 /* 66 */ 4 lbptr bit (36), 2 169 /* 67 */ 4 lpptr, 2 170 5 last_file_pat_ptr bin (18) uns unal, 2 171 5 lpptr_reserved bin (18) uns unal, 2 172 /* 70 */ 4 lsclp bit (36), 2 173 /* 71 */ 4 limit fixed bin (35), 2 174 /* 72 */ 4 lacpt, 2 175 5 jout_pat_offset bit (18) unal, 2 176 5 permissions unal, 2 177 6 lodx bit (1) unal, 2 178 6 cardin bit (1) unal, 2 179 6 talk bit (1) unal, 2 180 6 lods bit (1) unal, 2 181 5 cardin_urgency bit (14) unal, 2 182 /* 73 */ 4 ldrl, 2 183 5 ilc bit (18) unaligned, 2 184 5 code fixed bin (17) unaligned, 2 185 /* 74 */ 4 ljsnb bit (36), 2 186 /* 75 */ 4 ltm0 bit (36), 2 187 /* 76 */ 4 ltm1 bit (36), 2 188 /* 77 */ 4 ltm2 bit (36), 2 189 /* 100 */ 4 ltm3 bit (36), 2 190 /* 101 */ 4 ltm4 bit (36), 2 191 /* 102 */ 4 ltm5 bit (36), 2 192 /* 103 */ 4 ltmwt bit (36), 2 193 /* 104 */ 4 ltmrs bit (36), 2 194 /* 105 */ 4 ltc0 bit (36), 2 195 /* 106 */ 4 ltc1 bit (36), 2 196 /* 107 */ 4 ltc2 bit (36), 2 197 /* 110 */ 4 lct3 bit (36), 2 198 /* 111 */ 4 ltc4 bit (36), 2 199 /* 112 */ 4 ltc5 bit (36), 2 200 /* 113 */ 4 ltcw bit (36), 2 201 /* 114 */ 4 lkst bit (36), 2 202 /* 115 */ 4 lkst2 bit (36), 2 203 /* 116 */ 4 lkcc bit (36), 2 204 /* 117 */ 4 lkms bit (36), 2 205 /* 120-121 */ 4 lksdc (0:1) bit (36), 2 206 /* 122 */ 4 lkntp bit (36), 2 207 /* 123 */ 4 lkrdc bit (36), 2 208 /* 124 */ 4 lpqf bit (36), 2 209 /* 125 */ 4 lpqb bit (36), 2 210 /* 126 */ 4 lustl bit (36), 2 211 /* 127 */ 4 ltemp bit (36), 2 212 /* 130 */ 4 lrtll, 2 213 5 word_length fixed bin unaligned, 2 214 5 char_length fixed bin unaligned, 2 215 /* 131 */ 4 ltim bit (36), 2 216 /* 132 */ 4 lcfio, 2 217 5 sect_out fixed bin(18)unsigned unal, 2 218 5 sect_in fixed bin(18)unsigned unal, 2 219 /* 133 */ 4 lcfst, 2 220 5 initial_sect_out fixed bin(18)unsigned unal, 2 221 5 start_term fixed bin(18)unsigned unal, 2 222 /* 134 */ 4 lcmpt bit (36), 2 223 /* 135 */ 4 lcjid bit (36), 2 224 /* 136-137 */ 4 lrcal (0:1) bit (36), 2 225 /* 140 */ 4 lrdta bit (36), 2 226 /* 141 */ 4 lrrsk bit (36), 2 227 /* 142 */ 4 lrskd bit (36), 2 228 /* 143 */ 4 lrcc bit (36), 2 229 /* 144-145 */ 4 lrsts (0:1) bit (36), 2 230 /* 146 */ 4 lrtm bit (36), 2 231 /* 147 */ 4 lswt2, 2 232 5 b0 bit (1) unaligned, 2 233 5 b1 bit (1) unaligned, 2 234 5 b2 bit (1) unaligned, 2 235 5 b3 bit (1) unaligned, 2 236 5 b4 bit (1) unaligned, 2 237 5 b5 bit (1) unaligned, 2 238 5 b6 bit (1) unaligned, 2 239 5 b7 bit (1) unaligned, 2 240 5 b8 bit (1) unaligned, 2 241 5 b9 bit (1) unaligned, 2 242 5 b10 bit (1) unaligned, 2 243 5 b11 bit (1) unaligned, 2 244 5 b12 bit (1) unaligned, 2 245 5 b13 bit (1) unaligned, 2 246 5 b14 bit (1) unaligned, 2 247 5 b15 bit (1) unaligned, 2 248 5 b16 bit (1) unaligned, 2 249 5 b17 bit (1) unaligned, 2 250 5 b18 bit (1) unaligned, 2 251 5 b19 bit (1) unaligned, 2 252 5 b20 bit (1) unaligned, 2 253 5 b21 bit (1) unaligned, 2 254 5 b22 bit (1) unaligned, 2 255 5 b23 bit (1) unaligned, 2 256 5 b24 bit (1) unaligned, 2 257 5 b25 bit (1) unaligned, 2 258 5 b26 bit (1) unaligned, 2 259 5 b27 bit (1) unaligned, 2 260 5 b28 bit (1) unaligned, 2 261 5 b29 bit (1) unaligned, 2 262 5 b30 bit (1) unaligned, 2 263 5 b31 bit (1) unaligned, 2 264 5 b32 bit (1) unaligned, 2 265 5 b33 bit (1) unaligned, 2 266 5 b34 bit (1) unaligned, 2 267 5 b35 bit (1) unaligned, 2 268 /* 150 */ 4 llsnb bit (36), 2 269 /* 151 */ 4 lesq bit (36), 2 270 /* 152-153 */ 4 lumc (0:1) bit (36), 2 271 /* 154-155 */ 4 lfnam (0:1) bit (36), 2 272 /* 156 */ 4 lopts bit (36), 2 273 /* 157 */ 4 licec, 2 274 5 b0_17 bit (18) unaligned, 2 275 5 b18_35 fixed bin (17) unaligned, 2 276 /* 160 */ 4 lflg3, 2 277 5 b0 bit (1) unaligned, 2 278 5 b1 bit (1) unaligned, 2 279 5 b2 bit (1) unaligned, 2 280 5 b3 bit (1) unaligned, 2 281 5 b4 bit (1) unaligned, 2 282 5 b5 bit (1) unaligned, 2 283 5 b6 bit (1) unaligned, 2 284 5 b7 bit (1) unaligned, 2 285 5 b8 bit (1) unaligned, 2 286 5 b9 bit (1) unaligned, 2 287 5 b10 bit (1) unaligned, 2 288 5 b11 bit (1) unaligned, 2 289 5 b12 bit (1) unaligned, 2 290 5 b13 bit (1) unaligned, 2 291 5 b14 bit (1) unaligned, 2 292 5 b15 bit (1) unaligned, 2 293 5 b16 bit (1) unaligned, 2 294 5 b17 bit (1) unaligned, 2 295 5 b18 bit (1) unaligned, 2 296 5 b19 bit (1) unaligned, 2 297 5 b20 bit (1) unaligned, 2 298 5 b21 bit (1) unaligned, 2 299 5 b22 bit (1) unaligned, 2 300 5 b23 bit (1) unaligned, 2 301 5 b24 bit (1) unaligned, 2 302 5 b25 bit (1) unaligned, 2 303 5 b26 bit (1) unaligned, 2 304 5 b27 bit (1) unaligned, 2 305 5 b28 bit (1) unaligned, 2 306 5 b29 bit (1) unaligned, 2 307 5 b30 bit (1) unaligned, 2 308 5 b31 bit (1) unaligned, 2 309 5 b32 bit (1) unaligned, 2 310 5 b33 bit (1) unaligned, 2 311 5 b34 bit (1) unaligned, 2 312 5 b35 bit (1) unaligned, 2 313 /* 161-163 */ 4 lpage (0:2) bit (36), 2 314 /* 164 */ 4 lsit1 bit (36), 2 315 /* 165 */ 4 lsit2 bit (36), 2 316 /* 166 */ 4 lsit3 bit (36), 2 317 /* 167 */ 4 lsit4 bit (36), 2 318 /* The following entries are maintained by gtss and are not found in TSS UST */ 2 319 /* 170 */ 4 lxxx, /* program stack index, offset from gtss_ust */ 2 320 5 b0_17 fixed bin (17) unaligned, 2 321 5 b18_35 bit (18) unaligned, /* not used */ 2 322 /* 171-175 */ 4 lprgs (5), 2 323 5 b0_17 fixed bin (17) unaligned, 2 324 5 b18_35 fixed bin (17) unaligned, 2 325 /* 176 */ 4 fill bit (36), 2 326 /* 177 */ 4 remote_io_buffer aligned, 2 327 5 buffer_control_word, 2 328 6 current_line_pointer bit (18)unal, 2 329 6 buffer_threshold_address bit (18)unal, 2 330 5 number_words_transmitted fixed bin (17)unal, 2 331 5 FILL1 fixed bin (17)unal, 2 332 5 count_of_characters_transmitted fixed bin (17)unal, 2 333 5 FILL2 fixed bin (17)unal, 2 334 5 characters_transmitted (244) char (1) unal, 2 335 /* 277 */ 4 word_after_ust bit (36) aligned; 2 336 2 337 /* END INCLUDE FILE gtss_ust_ext_.incl.pl1 */ 353 354 3 1 /* BEGIN INCLUDE FILE gtss_ext_.incl.pl1 */ 3 2 /* 3 3* Created: (Wardd Multics) 05/20/78 1307.6 mst Sat 3 4* Modified: Ward 1981 add suspended_process dcl 3 5* Modified: Ron Barstad 83-07-21 Fixed level number on mcfc to 3 3 6* Modified: Ron Barstad 83-07-25 Fixed derail range in statistics to 4js3 number 3 7**/ 3 8 dcl gtss_ext_$aem fixed bin static ext /* >0 Print "additional" error information. */; 3 9 dcl gtss_ext_$bad_drl_rtrn static ext label /* Default for drl_rtrn. */; 3 10 dcl gtss_ext_$db (72)bit(1)unal static ext; 3 11 dcl gtss_ext_$deferred_catalogs_ptr ptr ext; 3 12 dcl gtss_ext_$dispose_of_drl static ext label /* quit handlers for some derails use this label to abort */; 3 13 dcl gtss_ext_$drl_rtrn (4)static ext label /* where to return at subsystem end */; 3 14 dcl gtss_ext_$drm_path char(168)static ext /* gtss_expand_pathname_stores drm_path */; 3 15 dcl gtss_ext_$drun_jid char (5) static ext /* valid only for DRUN executing under absentee */; 3 16 dcl gtss_ext_$event_channel fixed bin (71) static ext /* used for DABT signals */; 3 17 dcl gtss_ext_$finished static ext label /* Return to gtss for normal conclusion. */; 3 18 dcl gtss_ext_$gdb_name char(8)ext /* Name H* module to debug. */; 3 19 dcl gtss_ext_$get_line entry(ptr,ptr,fixed bin(21),fixed bin(21),fixed bin(35))variable ext /* Build mode input procedure. */; 3 20 dcl gtss_ext_$gtss_slave_area_seg (4) ext static ptr /* pointer to gtss slave area segment */; 3 21 dcl gtss_ext_$hcs_work_area_ptr ptr ext static /* Temp seg for acl lists. */; 3 22 dcl gtss_ext_$homedir char (64) static ext /* user's home dir */; 3 23 dcl gtss_ext_$last_k_was_out bit (1)aligned ext static /* "1"b => last tty output was output. */; 3 24 dcl gtss_ext_$pdir char (168) varying ext static /* pathname of process directory */; 3 25 dcl gtss_ext_$popup_from_pi static ext label /* transfer to this label after pi simulates popup primitive */; 3 26 dcl gtss_ext_$process_type fixed bin (17) static ext; 3 27 dcl gtss_ext_$put_chars entry(ptr,ptr,fixed bin(24),fixed bin(35)) variable ext /* Terminal output procedure. */; 3 28 dcl gtss_ext_$restart_from_pi static ext label /* transfer to this label after pi restores machine conditions */; 3 29 dcl gtss_ext_$restart_seg_ptr ptr static ext /* points to DRUN restart file when exec under absentee */; 3 30 dcl gtss_ext_$sig_ptr ext static ptr /* saved ptr to signal_ */; 3 31 dcl gtss_ext_$stack_level_ fixed bin ext static; 3 32 dcl gtss_ext_$suspended_process bit(1) ext static; 3 33 dcl gtss_ext_$SYstarstar_file_no fixed bin (24) static ext; 3 34 dcl gtss_ext_$user_id char (26)var ext; 3 35 dcl gtss_ext_$work_area_ptr ptr ext; 3 36 3 37 dcl 1 gtss_ext_$CFP_bits aligned static external 3 38 , 3 no_input_yet bit (1) unaligned /* used in gtss_CFP_input_, gtss_read_starCFP_ */ 3 39 , 3 rtn_bits bit (4) unaligned /* used in gtss_CFP_input_, gtss_CFP_output_ */ 3 40 , 3 cpos_called bit (1) unaligned /* used in gtss_CFP_input_, gtss_drl_t_cfio_, gtss_abandon_CFP_ */ 3 41 , 3 cout_called bit (1) unaligned /* used in gtss_read_starCFP_, gtss_abandon_CFP_ */ 3 42 , 3 build_mode bit (1) unaligned /* used in gtss_build_, gtss_dsd_process_ */ 3 43 ; 3 44 3 45 dcl 1 gtss_ext_$com_reg aligned static ext, 3 46 3 tsdmx, 3 47 4 dst fixed bin (18) unsigned unaligned, 3 48 4 dit fixed bin (18) unsigned unaligned, 3 49 3 tsdpt fixed bin (36) unsigned unaligned, 3 50 3 tsddt fixed bin (36) unsigned unaligned, 3 51 3 tsdid bit (72) unaligned, 3 52 3 tsdsd bit (36) unaligned, 3 53 3 tsdst fixed bin (36) unsigned unaligned, 3 54 3 tsdjb fixed bin (35) unaligned, 3 55 3 tsdgt, 3 56 4 ust_loc fixed bin (18) unsigned unaligned, 3 57 4 gating_ctl fixed bin (18) unsigned unaligned, 3 58 3 tcdfr bit (36) unaligned; 3 59 3 60 dcl 1 gtss_ext_$flags aligned static ext 3 61 , 3 dispose_of_drl_on_pi bit (01) unal /* 1 => drl that should be aborted after quit-pi sequence */ 3 62 , 3 drl_in_progress bit (01) unal /* 1 => drl handler executing; 0 => gcos code executing */ 3 63 , 3 popup_from_pi bit (01) unal /* 1 => derail processor will simulate Gcos break instead of returning */ 3 64 , 3 unfinished_drl bit (01) unal /* 1 => subsystem is handling breaks and quit was raised during a drl */ 3 65 , 3 ss_time_limit_set bit (01) unal /* 1 => exec time limit set for subsystem */ 3 66 , 3 timer_ranout bit (01) unal /* 1 => user is executing timer runout code */ 3 67 , 3 gtss_com_err_sw bit (01) unal /* 1 => stop com_err_ string from going to terminal */ 3 68 , 3 available bit (65) unal 3 69 ; 3 70 3 71 3 72 dcl 1 gtss_ext_$statistics aligned static ext, /* Derail usage statistics */ 3 73 3 total_time (-10:71)fixed bin (71), 3 74 3 count (-10:71)fixed bin (17); 3 75 3 76 /* Declaration of Available File Table 3 77* */ 3 78 dcl 1 gtss_ext_$aft aligned ext, /* aft structure */ 3 79 3 80 3 start_list (0:102) fixed bin (24), /* >0 => 1st aft_entry row to start of next entry chain. */ 3 81 3 82 3 aft_entry (20), 3 83 4 altname char (8), /* altname name for attaching this file */ 3 84 4 next_entry fixed bin (24), /* Next aft_entry in hash chain. */ 3 85 4 previous_add fixed bin (24), /* Previously added entry. */ 3 86 4 next_add fixed bin (24), /* Entry added after this one. */ 3 87 4 used bit (1) unal, /* "1"b => aft_entry contains AFT value. */ 3 88 4 forced bit(1) unal, /* "1"b => gtss_verify_access_ forced access on this file. */ 3 89 3 90 3 free_space fixed bin (24), /* Index of start of free space list for aft entries. */ 3 91 3 first_added fixed bin (24), /* >0 => start of chain in add order. */ 3 92 3 last_added fixed bin (24) /* >0 => end of chain in added order. */; 3 93 3 94 dcl gtss_ext_$ppt ptr ext /* switch name for tapein drl */; 3 95 /** Data structure to provide access to installed 3 96* subsystems fast library load. 3 97* **/ 3 98 dcl 1 gtss_ext_$fast_lib aligned ext 3 99 , 3 fast_lib_fcb ptr /* Pointer to msf fcb. */ 3 100 , 3 fast_lib_ncp fixed bin (24) /* Number of components. */ 3 101 , 3 comp_ptr (0:9)ptr /* Pointer to component. */ 3 102 , 3 comp_wds (0:9)fixed bin (24) /* Component length (words). */ 3 103 ; 3 104 3 105 /* Pointers to segments to regulate multipler 3 106* callers to files. Same segments are used to regulate 3 107* all simulator callers. 3 108**/ 3 109 dcl 1 gtss_ext_$mcfc aligned ext, 3 110 3 multics_lock_id bit(36), 3 111 3 wait_time fixed bin, 3 112 3 files_ptr ptr, 3 113 3 names_ptr ptr, 3 114 3 callers_ptr (0:3)ptr 3 115 ; 3 116 3 117 /* END INCLUDE FILE gtss_ext_.incl.pl1 */ 355 356 4 1 /* */ 4 2 /* BEGIN INCLUDE FILE mc.incl.pl1 Created Dec 72 for 6180 - WSS. */ 4 3 /* Modified 06/07/76 by Greenberg for mc.resignal */ 4 4 /* Modified 07/07/76 by Morris for fault register data */ 4 5 /* Modified 08/28/80 by J. A. Bush for the DPS8/70M CVPU */ 4 6 /* Modified '82 to make values constant */ 4 7 4 8 /* words 0-15 pointer registers */ 4 9 4 10 dcl mcp ptr; 4 11 4 12 dcl 1 mc based (mcp) aligned, 4 13 2 prs (0:7) ptr, /* POINTER REGISTERS */ 4 14 (2 regs, /* registers */ 4 15 3 x (0:7) bit (18), /* index registers */ 4 16 3 a bit (36), /* accumulator */ 4 17 3 q bit (36), /* q-register */ 4 18 3 e bit (8), /* exponent */ 4 19 3 pad1 bit (28), 4 20 3 t bit (27), /* timer register */ 4 21 3 pad2 bit (6), 4 22 3 ralr bit (3), /* ring alarm register */ 4 23 4 24 2 scu (0:7) bit (36), 4 25 4 26 2 mask bit (72), /* mem controller mask at time of fault */ 4 27 2 ips_temp bit (36), /* Temporary storage for IPS info */ 4 28 2 errcode fixed bin (35), /* fault handler's error code */ 4 29 2 fim_temp, 4 30 3 unique_index bit (18) unal, /* unique index for restarting faults */ 4 31 3 resignal bit (1) unal, /* recompute signal name with fcode below */ 4 32 3 fcode bit (17) unal, /* fault code used as index to FIM table and SCT */ 4 33 2 fault_reg bit (36), /* fault register */ 4 34 2 pad2 bit (1), 4 35 2 cpu_type fixed bin (2) unsigned, /* L68 = 0, DPS8/70M = 1 */ 4 36 2 ext_fault_reg bit (15), /* extended fault reg for DPS8/70M CPU */ 4 37 2 fault_time bit (54), /* time of fault */ 4 38 4 39 2 eis_info (0:7) bit (36)) unaligned; 4 40 4 41 4 42 dcl (apx fixed bin init (0), 4 43 abx fixed bin init (1), 4 44 bpx fixed bin init (2), 4 45 bbx fixed bin init (3), 4 46 lpx fixed bin init (4), 4 47 lbx fixed bin init (5), 4 48 spx fixed bin init (6), 4 49 sbx fixed bin init (7)) internal static options (constant); 4 50 4 51 4 52 4 53 4 54 dcl scup ptr; 4 55 4 56 dcl 1 scu based (scup) aligned, /* SCU DATA */ 4 57 4 58 4 59 /* WORD (0) */ 4 60 4 61 (2 ppr, /* PROCEDURE POINTER REGISTER */ 4 62 3 prr bit (3), /* procedure ring register */ 4 63 3 psr bit (15), /* procedure segment register */ 4 64 3 p bit (1), /* procedure privileged bit */ 4 65 4 66 2 apu, /* APPENDING UNIT STATUS */ 4 67 3 xsf bit (1), /* ext seg flag - IT modification */ 4 68 3 sdwm bit (1), /* match in SDW Ass. Mem. */ 4 69 3 sd_on bit (1), /* SDW Ass. Mem. ON */ 4 70 3 ptwm bit (1), /* match in PTW Ass. Mem. */ 4 71 3 pt_on bit (1), /* PTW Ass. Mem. ON */ 4 72 3 pi_ap bit (1), /* Instr Fetch or Append cycle */ 4 73 3 dsptw bit (1), /* Fetch of DSPTW */ 4 74 3 sdwnp bit (1), /* Fetch of SDW non paged */ 4 75 3 sdwp bit (1), /* Fetch of SDW paged */ 4 76 3 ptw bit (1), /* Fetch of PTW */ 4 77 3 ptw2 bit (1), /* Fetch of pre-paged PTW */ 4 78 3 fap bit (1), /* Fetch of final address paged */ 4 79 3 fanp bit (1), /* Fetch of final address non-paged */ 4 80 3 fabs bit (1), /* Fetch of final address absolute */ 4 81 4 82 2 fault_cntr bit (3), /* number of retrys of EIS instructions */ 4 83 4 84 4 85 /* WORD (1) */ 4 86 4 87 2 fd, /* FAULT DATA */ 4 88 3 iro bit (1), /* illegal ring order */ 4 89 3 oeb bit (1), /* out of execute bracket */ 4 90 3 e_off bit (1), /* no execute */ 4 91 3 orb bit (1), /* out of read bracket */ 4 92 3 r_off bit (1), /* no read */ 4 93 3 owb bit (1), /* out of write bracket */ 4 94 3 w_off bit (1), /* no write */ 4 95 3 no_ga bit (1), /* not a gate */ 4 96 3 ocb bit (1), /* out of call bracket */ 4 97 3 ocall bit (1), /* outward call */ 4 98 3 boc bit (1), /* bad outward call */ 4 99 3 inret bit (1), /* inward return */ 4 100 3 crt bit (1), /* cross ring transfer */ 4 101 3 ralr bit (1), /* ring alarm register */ 4 102 3 am_er bit (1), /* associative memory fault */ 4 103 3 oosb bit (1), /* out of segment bounds */ 4 104 3 paru bit (1), /* processor parity upper */ 4 105 3 parl bit (1), /* processor parity lower */ 4 106 3 onc_1 bit (1), /* op not complete type 1 */ 4 107 3 onc_2 bit (1), /* op not complete type 2 */ 4 108 4 109 2 port_stat, /* PORT STATUS */ 4 110 3 ial bit (4), /* illegal action lines */ 4 111 3 iac bit (3), /* illegal action channel */ 4 112 3 con_chan bit (3), /* connect channel */ 4 113 4 114 2 fi_num bit (5), /* (fault/interrupt) number */ 4 115 2 fi_flag bit (1), /* 1 => fault, 0 => interrupt */ 4 116 4 117 4 118 /* WORD (2) */ 4 119 4 120 2 tpr, /* TEMPORARY POINTER REGISTER */ 4 121 3 trr bit (3), /* temporary ring register */ 4 122 3 tsr bit (15), /* temporary segment register */ 4 123 4 124 2 pad2 bit (9), 4 125 4 126 2 cpu_no bit (3), /* CPU number */ 4 127 4 128 2 delta bit (6), /* tally modification DELTA */ 4 129 4 130 4 131 /* WORD (3) */ 4 132 4 133 2 word3 bit (18), 4 134 4 135 2 tsr_stat, /* TSR STATUS for 1,2,&3 word instructions */ 4 136 3 tsna, /* Word 1 status */ 4 137 4 prn bit (3), /* Word 1 PR number */ 4 138 4 prv bit (1), /* Word 1 PR valid bit */ 4 139 3 tsnb, /* Word 2 status */ 4 140 4 prn bit (3), /* Word 2 PR number */ 4 141 4 prv bit (1), /* Word 2 PR valid bit */ 4 142 3 tsnc, /* Word 3 status */ 4 143 4 prn bit (3), /* Word 3 PR number */ 4 144 4 prv bit (1), /* Word 3 PR valid bit */ 4 145 4 146 2 tpr_tbr bit (6), /* TPR.TBR field */ 4 147 4 148 4 149 /* WORD (4) */ 4 150 4 151 2 ilc bit (18), /* INSTRUCTION COUNTER */ 4 152 4 153 2 ir, /* INDICATOR REGISTERS */ 4 154 3 zero bit (1), /* zero indicator */ 4 155 3 neg bit (1), /* negative indicator */ 4 156 3 carry bit (1), /* carryry indicator */ 4 157 3 ovfl bit (1), /* overflow indicator */ 4 158 3 eovf bit (1), /* eponent overflow */ 4 159 3 eufl bit (1), /* exponent underflow */ 4 160 3 oflm bit (1), /* overflow mask */ 4 161 3 tro bit (1), /* tally runout */ 4 162 3 par bit (1), /* parity error */ 4 163 3 parm bit (1), /* parity mask */ 4 164 3 bm bit (1), /* ^bar mode */ 4 165 3 tru bit (1), /* truncation mode */ 4 166 3 mif bit (1), /* multi-word instruction mode */ 4 167 3 abs bit (1), /* absolute mode */ 4 168 3 hex bit (1), /* hexadecimal exponent mode */ 4 169 3 pad bit (3), 4 170 4 171 4 172 /* WORD (5) */ 4 173 4 174 2 ca bit (18), /* COMPUTED ADDRESS */ 4 175 4 176 2 cu, /* CONTROL UNIT STATUS */ 4 177 3 rf bit (1), /* on first cycle of repeat instr */ 4 178 3 rpt bit (1), /* repeat instruction */ 4 179 3 rd bit (1), /* repeat double instruction */ 4 180 3 rl bit (1), /* repeat link instruciton */ 4 181 3 pot bit (1), /* IT modification */ 4 182 3 pon bit (1), /* return type instruction */ 4 183 3 xde bit (1), /* XDE from Even location */ 4 184 3 xdo bit (1), /* XDE from Odd location */ 4 185 3 poa bit (1), /* operation preparation */ 4 186 3 rfi bit (1), /* tells CPU to refetch instruction */ 4 187 3 its bit (1), /* ITS modification */ 4 188 3 if bit (1), /* fault occured during instruction fetch */ 4 189 4 190 2 cpu_tag bit (6)) unaligned, /* computed tag field */ 4 191 4 192 4 193 /* WORDS (6,7) */ 4 194 4 195 2 even_inst bit (36), /* even instruction of faulting pair */ 4 196 4 197 2 odd_inst bit (36); /* odd instruction of faulting pair */ 4 198 4 199 4 200 4 201 4 202 4 203 4 204 /* ALTERNATE SCU DECLARATION */ 4 205 4 206 4 207 dcl 1 scux based (scup) aligned, 4 208 4 209 (2 pad0 bit (36), 4 210 4 211 2 fd, /* GROUP II FAULT DATA */ 4 212 3 isn bit (1), /* illegal segment number */ 4 213 3 ioc bit (1), /* illegal op code */ 4 214 3 ia_am bit (1), /* illegal address - modifier */ 4 215 3 isp bit (1), /* illegal slave procedure */ 4 216 3 ipr bit (1), /* illegal procedure */ 4 217 3 nea bit (1), /* non existent address */ 4 218 3 oobb bit (1), /* out of bounds */ 4 219 3 pad bit (29), 4 220 4 221 2 pad2 bit (36), 4 222 4 223 2 pad3a bit (18), 4 224 4 225 2 tsr_stat (0:2), /* TSR STATUS as an ARRAY */ 4 226 3 prn bit (3), /* PR number */ 4 227 3 prv bit (1), /* PR valid bit */ 4 228 4 229 2 pad3b bit (6)) unaligned, 4 230 4 231 2 pad45 (0:1) bit (36), 4 232 4 233 2 instr (0:1) bit (36); /* Instruction ARRAY */ 4 234 4 235 4 236 4 237 /* END INCLUDE FILE mc.incl.pl1 */ 357 358 5 1 /* BEGIN INCLUDE FILE gtss_entry_dcls.incl.pl1 */ 5 2 /* 5 3* Created: (Wardd Multics) 06/30/78 1624.8 mst Fri 5 4* Modified: Ron Barstad 84-02-24 Fixed wrong and obsolete entries 5 5**/ 5 6 5 7 /** gtss external entry variables. **/ 5 8 dcl com_err_ entry() options(variable); 5 9 dcl gtss_CFP_abort_ entry options(variable); 5 10 dcl gtss_CFP_break_ entry options(variable); 5 11 dcl gtss_CFP_input_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 5 12 dcl gtss_CFP_output_ entry (ptr, ptr, fixed bin(21), fixed bin(35)); 5 13 dcl gtss_abandon_CFP_ entry options(variable); 5 14 dcl gtss_abort_dump_ entry (fixed bin(18)); 5 15 dcl gtss_abort_subsystem_ entry options (variable); 5 16 dcl gtss_abort_subsystem_$not_imp entry (ptr, fixed bin(24)); 5 17 dcl gtss_abs_login_banner_ entry() returns(char(*)); 5 18 dcl gtss_abs_logout_banner_ entry() returns(char(*)); 5 19 dcl gtss_abs_$abs_equiv entry options(variable); 5 20 dcl gtss_abs_$cpu_runout entry (ptr, char(4)); 5 21 dcl gtss_abs_$create_absin entry() returns(char(*)); 5 22 dcl gtss_abs_$dabt_check entry (ptr, char(4)); 5 23 dcl gtss_abs_$get_id entry (char(5)) returns(char(19)); 5 24 dcl gtss_abs_$get_drm entry() returns(char(*)); 5 25 dcl gtss_adjust_size_ entry (ptr); 5 26 dcl gtss_aft_$add entry (char(8), fixed bin(24), fixed bin(35)); 5 27 dcl gtss_aft_$delete entry (char(8), fixed bin(24), fixed bin(35)); 5 28 dcl gtss_aft_$find entry (char(8), fixed bin(24), fixed bin(35)); 5 29 dcl gtss_aft_$initialize entry (fixed bin(35)); 5 30 dcl gtss_ascii_bcd_ entry (ptr, fixed bin, ptr); 5 31 dcl gtss_attributes_mgr_$get entry (ptr, fixed bin(35)); 5 32 dcl gtss_attributes_mgr_$set entry (ptr, fixed bin(35)); 5 33 dcl gtss_bcd_ascii_ entry (ptr, fixed bin(24), ptr); 5 34 dcl gtss_bcd_ascii_$lc entry (ptr, fixed bin(24), ptr); 5 35 dcl gtss_break_vector_ entry (); 5 36 dcl gtss_break_vector_$drl_in_progress entry() returns(bit(1)); 5 37 dcl gtss_break_vector_$status entry() returns(bit(1)); 5 38 dcl gtss_build_ entry options(variable); 5 39 dcl gtss_com_err_ entry options(variable); 5 40 dcl gtss_derail_processor_ entry (ptr, char(*), ptr, ptr, bit(1) aligned) /* called at fault time instead of signal_ */; 5 41 dcl gtss_derail_processor_$set entry options(variable); 5 42 dcl gtss_dq_$catp entry (char (5), ptr, fixed bin (18) unsigned); 5 43 dcl gtss_dq_$create entry (bit(1)); 5 44 dcl gtss_dq_$dibp entry (char(5), ptr); 5 45 dcl gtss_dq_$entries_info entry (ptr, fixed bin (18) unsigned, fixed bin (18) unsigned); 5 46 dcl gtss_dq_$hdrp entry (ptr); 5 47 dcl gtss_dq_$mod_js entry (char(5), fixed bin (6) unsigned, bit (1)); 5 48 dcl gtss_dq_$open_exc entry (bit(1)); 5 49 dcl gtss_dq_$open_gen entry (bit(1)); 5 50 dcl gtss_drl_abort_ entry (ptr, fixed bin); 5 51 dcl gtss_drl_addmem_ entry (ptr, fixed bin); 5 52 dcl gtss_drl_callss_ entry (ptr, fixed bin); 5 53 dcl gtss_drl_corfil_ entry (ptr, fixed bin); 5 54 dcl gtss_drl_defil_ entry (ptr, fixed bin); 5 55 dcl gtss_drl_defil_$subr entry (ptr, ptr, ptr); 5 56 dcl gtss_drl_dio_ entry (ptr, fixed bin); 5 57 dcl gtss_drl_drlimt_ entry (ptr, fixed bin); 5 58 dcl gtss_drl_drlsav_ entry (ptr, fixed bin); 5 59 dcl gtss_drl_filact_ entry (ptr, fixed bin); 5 60 dcl gtss_drl_filsp_ entry (ptr, fixed bin); 5 61 dcl gtss_drl_grow_ entry (ptr, fixed bin); 5 62 dcl gtss_drl_gwake_ entry (ptr, fixed bin); 5 63 dcl gtss_drl_jsts_ entry (ptr, fixed bin); 5 64 dcl gtss_drl_kin_ entry (ptr, fixed bin); 5 65 dcl gtss_drl_kotnow_ entry (ptr, fixed bin); 5 66 dcl gtss_drl_kotnow_$gtss_drl_kout_ entry (ptr, fixed bin); 5 67 dcl gtss_drl_koutn_ entry (ptr, fixed bin); 5 68 dcl gtss_drl_morlnk_ entry (ptr, fixed bin); 5 69 dcl gtss_drl_msub_ entry (ptr, fixed bin); 5 70 dcl gtss_drl_objtim_ entry (ptr, fixed bin); 5 71 dcl gtss_drl_part_ entry (ptr, fixed bin); 5 72 dcl gtss_drl_pasaft_ entry (ptr, fixed bin); 5 73 dcl gtss_drl_pasdes_ entry (ptr, fixed bin); 5 74 dcl gtss_drl_pasust_ entry (ptr, fixed bin); 5 75 dcl gtss_drl_pdio_ entry (ptr, fixed bin); 5 76 dcl gtss_drl_prgdes_ entry (ptr, fixed bin); 5 77 dcl gtss_drl_pseudo_ entry (ptr, fixed bin); 5 78 dcl gtss_drl_relmem_ entry (ptr, fixed bin); 5 79 dcl gtss_drl_restor_ entry (ptr, fixed bin); 5 80 dcl gtss_drl_retfil_ entry (ptr, fixed bin); 5 81 dcl gtss_drl_return_ entry (ptr, fixed bin); 5 82 dcl gtss_drl_rew_ entry (ptr, fixed bin); 5 83 dcl gtss_drl_rstswh_ entry (ptr, fixed bin); 5 84 dcl gtss_drl_setlno_ entry (ptr, fixed bin); 5 85 dcl gtss_drl_setswh_ entry (ptr, fixed bin); 5 86 dcl gtss_drl_snumb_ entry (ptr, fixed bin); 5 87 dcl gtss_drl_spawn_ entry (ptr, fixed bin); 5 88 dcl gtss_drl_spawn_$gtss_drl_pasflr_ entry (ptr, fixed bin); 5 89 dcl gtss_drl_stoppt_ entry (ptr, fixed bin); 5 90 dcl gtss_drl_switch_ entry (ptr, fixed bin); 5 91 dcl gtss_drl_sysret_ entry (ptr, fixed bin); 5 92 dcl gtss_drl_t_cfio_ entry (ptr, fixed bin); 5 93 dcl gtss_drl_t_cmov_ entry (ptr, fixed bin); 5 94 dcl gtss_drl_t_err_ entry (ptr, fixed bin); 5 95 dcl gtss_drl_t_goto_ entry (ptr, fixed bin); 5 96 dcl gtss_drl_t_linl_ entry (ptr, fixed bin); 5 97 dcl gtss_drl_t_rscc_ entry (ptr, fixed bin); 5 98 dcl gtss_drl_tapein_ entry (ptr, fixed bin); 5 99 dcl gtss_drl_task_ entry (ptr, fixed bin); 5 100 dcl gtss_drl_termtp_ entry (ptr, fixed bin); 5 101 dcl gtss_drl_time_ entry (ptr, fixed bin); 5 102 dcl gtss_drun_ entry (bit(1)); 5 103 dcl gtss_dsd_lookup_ entry (char(8) var) returns(fixed bin(24)); 5 104 dcl gtss_dsd_process_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 5 105 dcl gtss_edit_dsd_ entry (ptr, fixed bin(21)) returns(fixed bin(24)); 5 106 dcl gtss_mcfc_empty entry (char(*) var); 5 107 dcl gtss_expand_pathname_ entry (ptr, char(*), char(*), fixed bin(35)); 5 108 dcl gtss_expand_pathname_$verify_umc entry (ptr, char(*), char(*), bit(18), fixed bin(35)); 5 109 dcl gtss_fault_processor_ entry options(variable); 5 110 dcl gtss_find_cond_frame_ entry (char(32) var) returns(ptr); 5 111 dcl gtss_fault_processor_$timer_runout entry (ptr, char(*)); 5 112 dcl gtss_filact_error_status_ entry (fixed bin(35))returns(bit(12)); 5 113 dcl gtss_filact_funct02_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 114 dcl gtss_filact_funct03_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 115 dcl gtss_filact_funct04_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 116 dcl gtss_filact_funct05_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 117 dcl gtss_filact_funct08_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 118 dcl gtss_filact_funct10_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 119 dcl gtss_filact_funct11_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 120 dcl gtss_filact_funct14_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 121 dcl gtss_filact_funct18_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 122 dcl gtss_filact_funct19_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 123 dcl gtss_filact_funct21_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 124 dcl gtss_filact_funct22_ entry (ptr, bit(18), ptr, ptr, ptr, fixed bin(35)); 5 125 dcl gtss_mcfc_init_ entry (char(*) var); 5 126 dcl gtss_interp_prim_ entry options(variable); 5 127 dcl gtss_interp_prim_$callss entry (char(4), ptr); 5 128 dcl gtss_interp_prim_$sysret entry options(variable); 5 129 dcl gtss_interp_prim_$t_goto entry (char(4)); 5 130 dcl gtss_ios_change_size_ entry (fixed bin(24), fixed bin(24), bit(1), fixed bin(24), fixed bin(35)); 5 131 dcl gtss_ios_close_ entry (fixed bin(24), ptr, fixed bin(35)); 5 132 dcl gtss_ios_exchange_names_ entry (fixed bin(24), fixed bin(24), fixed bin(24), fixed bin(35)); 5 133 dcl gtss_ios_initialize_ entry options(variable); 5 134 dcl gtss_ios_io_ entry (fixed bin(24), ptr, ptr, fixed bin(24), fixed bin(24), fixed bin(35)); 5 135 dcl gtss_ios_open_ entry (fixed bin(24), char(168), char(32), bit(6), bit(1), ptr, ptr, fixed bin(35)); 5 136 dcl gtss_ios_position_ entry (fixed bin(24), fixed bin(24), fixed bin(24), bit(6), ptr); 5 137 dcl gtss_mcfc_$delete entry (fixed bin(24), char(*), char(*), bit(36) aligned, ptr, fixed bin(35)); 5 138 dcl gtss_mcfc_$open entry (char(*), char(*), bit(6), bit(36) aligned, ptr, fixed bin(35)); 5 139 dcl gtss_mcfc_$close entry (char(*), char(*), bit(36) aligned, ptr, fixed bin(35)); 5 140 dcl gtss_read_starCFP_ entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 5 141 dcl gtss_read_starCFP_$last_os entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 5 142 dcl gtss_run_subsystem_ entry (fixed bin(24)); 5 143 dcl gtss_run_subsystem_$finish entry options(variable); 5 144 dcl gtss_run_subsystem_$restor entry (fixed bin(24), ptr); 5 145 dcl gtss_run_subsystem_$restor_perm entry (fixed bin(24), ptr, fixed bin(18)); 5 146 dcl gtss_set_slave_ entry (fixed bin (24), ptr); 5 147 dcl gtss_set_slave_$load_bar entry (fixed bin (17)); 5 148 dcl gtss_update_safe_store_ entry (ptr); 5 149 dcl gtss_verify_access_ entry (char(*), char(*), fixed bin(24), bit(6), bit(12) aligned); 5 150 dcl gtss_verify_access_$check_forced_access entry (char(*), char(*), fixed bin(24)); 5 151 dcl gtss_write_starCFP_ entry (ptr, ptr, fixed bin(21), fixed bin(35)); 5 152 /* END INCLUDE FILE gtss_entry_dcls.incl.pl1 */ 359 360 6 1 /* BEGIN INCLUDE FILE gtss_ascii_file_names.incl.pl1 */ 6 2 /* 6 3* Created: (Wardd Multics) 09/01/78 1447.3 mst Fri 6 4**/ 6 5 6 6 /** First parameter to gtss_expand_pathname_ 6 7* **/ 6 8 dcl 1 ascii_cat_file, 6 9 2 nn fixed bin, /* Number of names. */ 6 10 2 name (7)char(12); /* List of cat/filedescr name . */ 6 11 6 12 /* END INCLUDE FILE gtss_ascii_file_names.incl.pl1 */ 361 362 7 1 /* BEGIN INCLUDE FILE gtss_file_values.incl.pl1 */ 7 2 /* 7 3* Created: (Wardd Multics) 09/01/78 1447.1 mst Fri 7 4**/ 7 5 7 6 /** The gtss_file_values structure provides parameters to the 7 7* gtss_attributes_mgr_ subroutine. 7 8* 7 9* The caller must provide space for this structure, fill in 7 10* the version with 1, the dname and ename with the file directory 7 11* and entry name, and for calls to gtss_attributes_mgr_$set, 7 12* fill in values to be reset and set the corresponding set_switch 7 13* to "1"b. 7 14* 7 15* If the (Multics) file located is a directory 7 16* a GCOS catalog is implied. 7 17* 7 18* If both ename and new_ename are set but no set_switch 7 19* is "1"b (and the set entry is called) this implies 7 20* that the existing attribute values are being renamed 7 21* to the new entry. 7 22* 7 23* Then: call gtss_attributes_mgr_$set(addr(gtss_file_values),code); 7 24* 7 25* Use of ename/new_ename combinations 7 26* for set entry. 7 27* 7 28* -|-----------|-----------|-|-----------------| 7 29* | ename |new_ename || meaning | 7 30* =|===========|===========|=|=================| 7 31* | blanks | blanks || illegal | 7 32* -|-----------|-----------|-|-----------------| 7 33* | blanks |not blanks|| initial | 7 34* | | || setting | 7 35* -|-----------|-----------|-|-----------------| 7 36* |not blanks| blanks || check enames's | 7 37* | | ||attribute values| 7 38* | | || and reset. | 7 39* -|-----------|-----------|-|-----------------| 7 40* |not blanks|not blanks|| delete ename's | 7 41* | | || values and put | 7 42* | | || on values for | 7 43* | | || new_ename's | 7 44* -|-----------|-----------|-|-----------------| 7 45***/ 7 46 dcl attr_name (0:7)char(4)static int options(constant)init( 7 47 /* 0 */ "mode" 7 48 , /* 1 */ "maxl" 7 49 , /* 2 */ "curl" 7 50 , /* 3 */ "busy" 7 51 , /* 4 */ "attr" 7 52 , /* 5 */ "null" 7 53 , /* 6 */ "noal" 7 54 , /* 7 */ "crdt" 7 55 ); 7 56 dcl 1 gtss_file_values aligned automatic 7 57 , 3 version fixed bin(17) /* Current version is 1. (OUT) */ 7 58 , 3 dname char(168)unal /* Directory name. (IN) */ 7 59 , 3 ename char(032)unal /* Entry name. (IN) */ 7 60 , 3 new_ename char(032)unal /* New entry name. (IN) */ 7 61 , 3 change_name bit(1) /* "1"b => Change segment name. (IN) */ 7 62 , 3 catalog bit(1) /* "1"b => File is a catalog (Multics directory). (OUT) */ 7 63 , 3 info_ptr ptr /* hcs_$status_long (4. entry_ptr) info structure address. (OUT) */ 7 64 , 3 set_switch /* "1"b => Set corresponding value. (IN) */ 7 65 , 4 mode_random bit(01)unal /* 0. Set the random/sequential(linked) field. */ 7 66 , 4 maxll bit(01)unal /* 1. Set max size value. */ 7 67 , 4 curll bit(01)unal /* 2. Set current size value. */ 7 68 , 4 busy bit(01)unal /* 3. Set file as busy. */ 7 69 , 4 attr bit(01)unal /* 4. Set user attributes value. */ 7 70 , 4 null_file bit(01)unal /* 5. Set null file value. */ 7 71 , 4 number_allocations bit(01)unal /* 6. Set or increment number of uses. */ 7 72 , 4 creation_date bit(01)unal /* 7. Set file creation date. */ 7 73 , 4 not_in_use bit(28)unal 7 74 /* The above set_ variables should be declared in an order 7 75* corresponding to the value in the attr_name array. */ 7 76 , 3 data_flags /* (OUT|IN) */ 7 77 , 4 mode_random bit(01)unal /* "1"b => random. */ 7 78 , 4 busy bit(01)unal /* "1"b => file is busy. */ 7 79 , 4 null_file bit(01)unal /* "1"b => file is null. */ 7 80 , 4 not_in_use2 bit(33)unal 7 81 , 3 data_fields /* (OUT|IN) */ 7 82 , 4 curll fixed bin(35) /* Current length in llinks (>=0). */ 7 83 , 4 maxll fixed bin(35) /* Maximum length in llinks (>=0). */ 7 84 , 4 number_allocations fixed bin(35) /* 0 => set | >0 => increment modulo 262144. */ 7 85 , 3 attributes /* (OUT|IN) */ 7 86 , 4 not_in_use3 bit(01)unal 7 87 , 4 attr bit(35)unal /* User specified file attribute value. */ 7 88 , 3 creation_date char(06) /* MMDDYY of creation. */ 7 89 ; 7 90 7 91 7 92 /* END INCLUDE FILE gtss_file_values.incl.pl1 */ 363 364 8 1 /* BEGIN INCLUDE FILE gtss_FMS_catalog.incl.pl1 */ 8 2 /* 8 3* Created: (Wardd Multics) 09/14/78 1813.7 mst Thu 8 4* Change: Paul Benjamin 10/12/79 Further break down FS0_PBK_05 8 5**/ 8 6 8 7 /** The structure FMS_catalog1 is from 8 8* FMS PROGRAM LOGIC MANUAL 8 9* DC26, Rev. 0, January 1974 8 10* Page 4-9 8 11***/ 8 12 dcl FMS_cat_ptr ptr init(null()); 8 13 dcl 1 FMS_catalog aligned based(FMS_cat_ptr) 8 14 , 3 FSnTYP_0 8 15 , 4 bits00_05 bit(06)unal 8 16 , 4 bits06_10 bit(05)unal 8 17 , 4 bits11_17 bit(07)unal 8 18 , 4 bits18_35 bit(18)unal 8 19 , 3 FSnNLL_1 8 20 , 4 bits00_17 bit(18)unal 8 21 , 4 bits18_35 bit(18)unal 8 22 , 3 FSnPLL_2 8 23 , 4 bits00_17 bit(18)unal 8 24 , 4 bits18_35 bit(18)unal 8 25 , 3 FSnPTP_3 8 26 , 4 bits00_17 bit(18)unal 8 27 , 4 bits18_35 bit(18)unal 8 28 , 3 FSnCBK_4 8 29 , 4 bits00_17 bit(18)unal 8 30 , 4 bits18_35 bit(18)unal 8 31 ; 8 32 8 33 /** Page 4-10. **/ 8 34 dcl 1 Type_0_Catalog aligned based(FMS_cat_ptr) 8 35 , 3 FS0_TYP_00 bit(36) 8 36 , 3 FS0_NLL_01 8 37 , 4 bits00_17 bit(18)unal 8 38 , 4 bits18_35 bit(18)unal 8 39 , 3 FS0_PLL_02 bit(36) 8 40 , 3 FS0_PTP_03 8 41 , 4 bits00_17 fixed bin(17)unal 8 42 , 4 bits18_35 bit(18)unal 8 43 , 3 FS0_CBK_04 8 44 , 4 bits00_17 fixed bin(17)unal 8 45 , 4 bits18_35 bit(18)unal 8 46 , 3 FS0_PBK_05 8 47 , 4 bits00_17 bit(18)unal 8 48 , 4 bits18_35 bit(18)unal 8 49 , 3 FS0_CNM_06_07 bit(72) 8 50 , 3 FS0_ORG_10_11 bit(72) 8 51 , 3 FS0_PWD_12_13 bit(72) 8 52 , 3 FS0_CDT_14 bit(36) 8 53 , 3 FS0_MOD_15 bit(36) 8 54 , 3 FS0_IND_16 bit(36) 8 55 , 3 FS0_PER_17 8 56 , 4 bits00_11 bit(12)unal 8 57 , 4 bits12_14 bit(03)unal 8 58 , 4 bit15 bit(01)unal 8 59 , 4 bit16 bit(01)unal 8 60 , 4 bit17 bit(01)unal 8 61 , 4 bits18_35 bit(18)unal 8 62 , 3 FS0_OP1_20 bit(36) 8 63 , 3 FS0_OP2_21 bit(36) 8 64 , 3 FS0_VAR_22_76 (15) 8 65 , 4 FS0_SNM_00_01 bit(72) 8 66 , 4 FS0_SPT_02 8 67 , 5 bit00 bit(01)unal 8 68 , 5 bit01 bit(01)unal 8 69 , 5 bits02_17 bit(16)unal 8 70 , 5 bits18_35 bit(18)unal 8 71 , 3 checksum_77 bit(36) 8 72 ; 8 73 8 74 /* Condensed form of type 0 record. */ 8 75 dcl 1 t0c aligned based(FMS_cat_ptr) 8 76 , 2 fill (0:17)bit(36) 8 77 , 2 name (15) 8 78 , 3 bcd bit(72) 8 79 , 3 more bit(36) 8 80 ; 8 81 8 82 /** Page 4-10. **/ 8 83 dcl Type_1_ptr ptr init(null()); 8 84 dcl 1 Type_1_Catalog aligned based(Type_1_ptr) 8 85 , 3 FS1_TYP_00 bit(36) 8 86 , 3 FS1_NLL_01 8 87 , 4 bits00_17 bit(18)unal 8 88 , 4 bits18_35 bit(18)unal 8 89 , 3 FS1_PLL_02 bit(36) 8 90 , 3 FS1_PTP_03 8 91 , 4 bits00_17 fixed bin(17)unal 8 92 , 4 bits18_35 bit(18)unal 8 93 , 3 FS1_CBK_04 8 94 , 4 bits00_17 bit(18)unal 8 95 , 4 bits18_35 bit(18)unal 8 96 , 3 FS1_OPN_05 bit(36) 8 97 , 3 FS1_VAR_06_76 (19) 8 98 , 4 FS1_SNM_00_01 bit(72) 8 99 , 4 FS1_SPT_02 8 100 , 5 bit00 bit(01)unal 8 101 , 5 bit01 bit(01)unal 8 102 , 5 bits02_17 bit(16)unal 8 103 , 5 bits18_35 bit(18)unal 8 104 , 3 checksum_77 bit(36) 8 105 ; 8 106 8 107 /* Condensed form of type 1 record. */ 8 108 dcl 1 t1c aligned based(FMS_cat_ptr) 8 109 , 2 fill (0:5)bit(36) 8 110 , 2 name (19) like t0c.name 8 111 ; 8 112 8 113 /** Page 4-11. **/ 8 114 dcl 1 Type_2_Catalog aligned based(FMS_cat_ptr) 8 115 , 3 FS2_TYP_00 bit(36) 8 116 , 3 FS2_NLL_01 bit(36) 8 117 , 3 FS2_PLL_02 bit(36) 8 118 , 3 FS2_PTP_03 bit(36) 8 119 , 3 FS2_CBK_04 bit(36) 8 120 , 3 FS2_PBK_05 8 121 , 4 bits00_17 bit(18)unal 8 122 , 4 bits18_35 bit(18)unal 8 123 , 3 FS2_FNM_06_07 bit(72) 8 124 , 3 FS2_ORG_10_11 bit(72) 8 125 , 3 FS2_PWD_12_13 bit(72) 8 126 , 3 FS2_CDT_14 bit(36) 8 127 , 3 FS2_MOD_15 bit(36) 8 128 , 3 FS2_IND_16 bit(36) 8 129 , 3 FS2_PER_17 8 130 , 4 bits00_11 bit(12)unal 8 131 , 4 bits12_15 bit(04)unal 8 132 , 4 bit16 bit(01)unal 8 133 , 4 bit17 bit(01)unal 8 134 , 4 bits18_35 bit(18)unal 8 135 , 3 FS2_MTR_20_21 bit(72) 8 136 , 3 FS2_FU1_22 8 137 , 4 bit00 bit(01)unal 8 138 , 4 bit01 bit(01)unal 8 139 , 4 bit02 bit(01)unal 8 140 , 4 bit03 bit(01)unal 8 141 , 4 bit04 bit(01)unal 8 142 , 4 bit05 bit(01)unal 8 143 , 4 bit06 bit(01)unal 8 144 , 4 bit07 bit(01)unal 8 145 , 4 bit08 bit(01)unal 8 146 , 4 bit09 bit(01)unal 8 147 , 4 bits10_11 bit(02)unal 8 148 , 4 bits12_17 bit(06)unal 8 149 , 4 bits18_35 bit(18)unal 8 150 , 3 FS2_FUS_23 8 151 , 4 bits00_17 bit(18)unal 8 152 , 4 bit18 bit(01)unal 8 153 , 4 bit19 bit(01)unal 8 154 , 4 bit20 bit(01)unal 8 155 , 4 bit21 bit(01)unal 8 156 , 4 bit22 bit(01)unal 8 157 , 4 bit23 bit(01)unal 8 158 , 4 bit24 bit(01)unal 8 159 , 4 bit25 bit(01)unal 8 160 , 4 bit26 bit(01)unal 8 161 , 4 bit27 bit(01)unal 8 162 , 4 bit28 bit(01)unal 8 163 , 4 bit29 bit(01)unal 8 164 , 4 bits30_35 bit(06)unal 8 165 , 3 FS2_USI_24 8 166 , 4 bit00 bit(01)unal 8 167 , 4 bits01_35 bit(35)unal 8 168 , 3 FS2_FU2_25 8 169 , 4 bit00 bit(01)unal 8 170 , 4 bit01 bit(01)unal 8 171 , 4 bit02 bit(01)unal 8 172 , 4 bit03 bit(01)unal 8 173 , 4 bit04 bit(01)unal 8 174 , 4 bit05 bit(01)unal 8 175 , 4 bit06 bit(01)unal 8 176 , 4 bit07 bit(01)unal 8 177 , 4 bit08 bit(01)unal 8 178 , 4 bit09 bit(01)unal 8 179 , 4 bit10 bit(01)unal 8 180 , 4 bit11 bit(01)unal 8 181 , 4 bit12 bit(01)unal 8 182 , 4 bit13 bit(01)unal 8 183 , 4 bit14 bit(01)unal 8 184 , 4 bit15 bit(01)unal 8 185 , 4 bit16 bit(01)unal 8 186 , 4 bit17 bit(01)unal 8 187 , 4 bits18_35 bit(18)unal 8 188 , 3 FS2_LCD_26 bit(36) 8 189 , 3 FS2_LAD_27 bit(36) 8 190 , 3 FS2_LST_30 8 191 , 4 bits00_05 bit(06)unal 8 192 , 4 bits06_35 bit(30)unal 8 193 , 3 FS2_ATB_31 bit(36) 8 194 , 3 FS2_PDF_32 bit(36) 8 195 , 3 FS2_STC_33 bit(36) 8 196 , 3 FS2_BSY_34 bit(36) 8 197 , 3 FS2_TBC_35 bit(36) 8 198 , 3 FS2_OP2_7_36_43 (2:7)bit(36) 8 199 , 3 FS2_VAR_44_75 8 200 , 4 Device_descriptor 8 201 , 5 bits00_03 bit(04)unal /* 0101 */ 8 202 , 5 bits04_05 bit(02)unal 8 203 , 5 bits06_35 bit(30)unal 8 204 , 4 Space_descriptor 8 205 , 5 bit00 bit(01)unal 8 206 , 5 bit01 bit(01)unal /* =0 => space desc. */ 8 207 , 5 bit02 bit(01)unal 8 208 , 5 bits03_17 bit(15)unal 8 209 , 5 bits18_35 bit(18)unal 8 210 , 4 zero (24)bit(36) 8 211 , 3 zero_76 bit(36) 8 212 , 3 checksum_77 bit(36) 8 213 ; 8 214 8 215 /** Page 4-13. **/ 8 216 dcl Type_4_ptr ptr init(null()); 8 217 dcl 1 Type_4_Catalog aligned based(Type_4_ptr) 8 218 , 3 FS4_TYP_00 bit(36) 8 219 , 3 FS4_NLL_01 bit(36) 8 220 , 3 FS4_PLL_02 bit(36) 8 221 , 3 FS4_PTP_03 bit(36) 8 222 , 3 FS4_CBK_04 bit(36) 8 223 , 3 FS4_OP1_2_05_06 bit(72) 8 224 , 3 FS4_VAR_07_75 bit(1980) /* 1980 = 55 * 36bits @ */ 8 225 , 3 zero bit(36) 8 226 , 3 checksum_77 bit(36) 8 227 ; 8 228 8 229 /** Page 2-69 **/ 8 230 dcl buffer_ptr ptr init(null()); 8 231 dcl 1 callers_buffer aligned based(buffer_ptr) 8 232 , 3 first25 (25)bit(36) /* Work area for ???. */ 8 233 /** Next 35 words. FMS work area. **/ 8 234 , 3 W00_FSCODE bit(036) 8 235 , 3 W01_02_FSCALL bit(072) 8 236 , 3 W03 bit(036) 8 237 , 3 W04_06 bit(108) 8 238 , 3 W07 bit(036) 8 239 , 3 W10 bit(036) 8 240 , 3 W11_12 bit(072) 8 241 , 3 W13_FSSSLV bit(036) 8 242 , 3 W14_15 bit(072) 8 243 , 3 W16_FSFBSY bit(036) 8 244 , 3 W17_FSRETP bit(036) 8 245 , 3 W20 8 246 , 4 FSMME unal 8 247 , 5 bits00_17 bit(18)unal 8 248 , 4 FSARG unal 8 249 , 5 bits18_35 bit(18)unal 8 250 , 3 W21_FSCPOS 8 251 , 4 bits00_17 bit(18)unal 8 252 , 4 bits18_35 bit(18)unal 8 253 , 3 W22_FSCCFP 8 254 , 4 bits00_17 bit(18)unal 8 255 , 4 bits18_35 bit(18)unal 8 256 , 3 W23_FSPCFP 8 257 , 4 bits00_17 bit(18)unal 8 258 , 4 bits18_35 bit(18)unal 8 259 , 3 W24 8 260 , 4 FSREGU unal 8 261 , 5 bits00_17 bit(18)unal 8 262 , 4 FSREGL unal 8 263 , 5 bits18_35 bit(18)unal 8 264 , 3 W25_FSCDEV 8 265 , 4 bits00_15 bit(16)unal 8 266 , 4 bit16 bit(01)unal 8 267 , 4 bit17 bit(01)unal 8 268 , 4 bits18_35 bit(18)unal 8 269 , 3 W26_FSDDEV 8 270 , 4 bits00_15 bit(16)unal 8 271 , 4 bit16 bit(01)unal 8 272 , 4 bit17 bit(01)unal 8 273 , 4 bits18_35 bit(18)unal 8 274 , 3 W27_FSENDT bit(036) 8 275 , 3 W30_FSCPAT bit(036) 8 276 , 3 W31_FSPERM bit(036) 8 277 , 3 W32_FSDDCW bit(036) 8 278 , 3 W33_FSDCWP bit(036) 8 279 , 3 W34_FSDUPD bit(036) 8 280 , 3 W35_FSAVBL bit(036) 8 281 , 3 W36_FSTEMP bit(036) 8 282 , 3 W37_FSCKSM bit(036) 8 283 , 3 W40_FSIOS1 bit(036) 8 284 , 3 W41_FSSRW1 bit(036) 8 285 , 3 W42_FSSRW2 bit(036) 8 286 , 3 W43_FSBFER bit(036) /* Starting location of buffer for catalog record(s). */ 8 287 , 3 remainder_of_buffer (319)bit(36) 8 288 ; 8 289 8 290 /* END INCLUDE FILE gtss_FMS_catalog.incl.pl1 */ 365 366 367 /** >ldd>include>status_info.incl.pl1 **/ 9 1 9 2 declare /* Information returned by hcs_$status_ and hcs_$status_long */ 9 3 9 4 9 5 1 branch aligned based (info_ptr), /* information about this particular branch */ 9 6 2 type bit (2) unal, /* "00"b = link, "01"b = segment, "10"b = directory */ 9 7 2 nnames bit (16) unal, /* number of names this entry has */ 9 8 2 names_relp bit (18) unal, /* pointer, relative to base of segment, to names */ 9 9 2 dtm bit (36) unal, /* date-time the segment was last modified */ 9 10 2 dtu bit (36) unal, /* date-time the segment was last used */ 9 11 2 mode bit (5) unal, /* the user's access modes to the entry */ 9 12 2 padding bit (13) unal, /* yawn */ 9 13 2 records_used bit (18) unal, /* number of blocks actually occupied by entry */ 9 14 9 15 /* limit of information returned by status_ */ 9 16 9 17 2 dtd bit (36) unal, /* date-time the segment was last dumped */ 9 18 2 dtbm bit (36) unal, /* date-time the branch for the entry was modified */ 9 19 2 account bit (36) unal, /* account to which storage is charged */ 9 20 2 current_length bit (12) unal, /* maximum length in blocks */ 9 21 2 bit_count bit (24) unal, /* length of entry in bits */ 9 22 2 device_id bit (4) unal, /* device on which segment currently resides */ 9 23 2 mdid bit (4) unal, /* device to which it is currently being moved */ 9 24 2 copy_switch bit (1) unal, /* segment copy switch */ 9 25 2 tpd bit (1) unal, /* transparent paging device switch */ 9 26 2 more_padding bit (8) unal, /* yawn, yawn */ 9 27 2 ring_brackets (0:2) bit (6) unal, /* ring brackets for entry */ 9 28 2 uid bit (36) unal, /* unique identifier */ 9 29 9 30 9 31 1 link aligned based (info_ptr), /* information about link entries */ 9 32 2 type bit (2) unal, /* as above */ 9 33 2 nnames bit (16) unal, /* number of names for this link */ 9 34 2 names_relp bit (18) unal, /* as above */ 9 35 2 dtbm bit (36) unal, /* date-time, entry for link was last modified */ 9 36 2 dtd bit (36) unal, /* date-time dumped */ 9 37 2 pathname_length bit (18) unal, /* length of link pathname */ 9 38 2 pathname_relp bit (18) unal, /* pointer, relative to based of segment, to name */ 9 39 9 40 entry_names (1) character (32) aligned based (pointer (area_pointer, branch.names_relp)), 9 41 /* array of names returned */ 9 42 pathname character (fixed (link.pathname_length)) aligned based (pointer (area_pointer, link.pathname_relp)), 9 43 /* pathname a link points to */ 9 44 9 45 area_pointer pointer, /* to area in which to allocate names */ 9 46 info_ptr pointer; /* to structure returned */ 9 47 9 48 368 369 10 1 10 2 declare /* Structures used in acl manipulation. - J.M. Broughton 07/27/73 */ 10 3 10 4 10 5 1 segment_acl (acl_count) based (acl_ptr) aligned, 10 6 2 access_name character (32), /* process to which this entry applies */ 10 7 2 modes bit (36), /* read, execute, and write */ 10 8 2 zero_pad bit (36), /* for extended acl */ 10 9 2 status_code fixed bin(35), /* standard error code for this entry only */ 10 10 10 11 10 12 1 dir_acl (acl_count) based (acl_ptr) aligned, 10 13 2 access_name character (32), /* process to which entry applys */ 10 14 2 dir_modes bit (36), /* status, modify, and append */ 10 15 2 status_code fixed bin(35), /* as above */ 10 16 10 17 10 18 acl_count fixed bin, /* number of entries in these structures */ 10 19 acl_ptr pointer; /* pointer to these structures */ 10 20 10 21 370 371 11 1 /* BEGIN INCLUDE FILE gtss_filact_options.incl.pl1 */ 11 2 /* 11 3* Created: (Wardd Multics) 09/08/78 1017.4 mst Fri 11 4**/ 11 5 dcl now fixed bin; 11 6 dcl options_ptr ptr init(null()); 11 7 dcl 1 optionsx aligned based(options_ptr) 11 8 , 3 word1 11 9 , 4 option_bit unal 11 10 , 5 j bit(01)unal /* Space must be contiguous. */ 11 11 , 5 b bit(01)unal /* Random (CF only). */ 11 12 , 5 c bit(01)unal /* File TSS created (CF only) */ 11 13 , 5 d bit(01)unal /* I-D-S file. */ 11 14 , 5 k bit(01)unal /* 320-word blocks (CF only). */ 11 15 , 5 f bit(01)unal /* File already on tape or nonstructured disk pack (non-TSS). */ 11 16 , 5 bit_06 bit(01)unal /* (not used). */ 11 17 , 5 h bit(01)unal /* Attributes present. */ 11 18 , 5 i bit(01)unal /* User-specified attributes (CF & MF only). */ 11 19 , 5 bits09_12 bit(04)unal /* (not used). */ 11 20 , 5 y bit(01)unal /* FMS protection options specified. */ 11 21 , 5 bits14_17 bit(04)unal /* (not used). */ 11 22 , 4 device_name bit(12)unal 11 23 , 4 device_type bit(06)unal 11 24 , 3 word2 11 25 , 4 initial_file_size bit(18)unal /* (CF only). */ 11 26 , 4 max_file_size bit(18)unal /* 0 => max size unlimited. */ 11 27 , 3 words3_now (now) 11 28 , 4 optional_specific_permissions 11 29 , 5 USERID bit(72)unal 11 30 , 5 permission_bit like permissionsx 11 31 , 3 word_now_plus_1 11 32 , 4 end_of_list fixed bin(35) 11 33 , 3 word_now_plus_2 11 34 , 4 fill bit(01)unal 11 35 , 4 user_specified_attributes bit(35)unal /* (CF & MF only). */ 11 36 ; 11 37 12 1 /* BEGIN INCLUDE FILE gtss_filact_permissions.incl.pl1 */ 12 2 /* 12 3* Created: (Wardd Multics) 09/08/78 1018.0 mst Fri 12 4**/ 12 5 dcl permissions_ptr ptr init(null()); 12 6 dcl 1 permissionsx aligned based(permissions_ptr) 12 7 , 3 r bit(01)unal /* Read permission. */ 12 8 , 3 w bit(01)unal /* Write permission. */ 12 9 , 3 a bit(01)unal /* Append permission. */ 12 10 , 3 e bit(01)unal /* Execute permission. */ 12 11 , 3 p bit(01)unal /* Purge permission. */ 12 12 , 3 m bit(01)unal /* Modify permission. */ 12 13 , 3 l bit(01)unal /* Lock permission. */ 12 14 , 3 bit_07 bit(01)unal /* (not used). */ 12 15 , 3 c bit(01)unal /* Create permission. */ 12 16 , 3 x bit(01)unal /* Recovery permission. */ 12 17 , 3 bits10_35 bit(26)unal /* (not used). */ 12 18 ; 12 19 12 20 /* END INCLUDE FILE gtss_filact_permissions.incl.pl1 */ 11 38 11 39 11 40 /* END INCLUDE FILE gtss_filact_options.incl.pl1 */ 372 373 13 1 /* BEGIN INCLUDE FILE gtss_filact_status.incl.pl1 */ 13 2 /* 13 3* Created: (Wardd Multics) 10/10/78 0945.5 mst Tue 13 4**/ 13 5 13 6 /* 13 7* 4000 NO ERRORS 13 8* 4001 USER-ID NOT IN MASTER CATALOG 13 9* 4002 I/O ERROR ON DEVICE XXX SA = NNN......NNN 13 10* 4003 PERMISSIONS DENIED 13 11* 4004 FILE BUSY: TRY LATER 13 12* 4005 INCORRECT CAT/FILE DESCRIPTION AT AAA......AAA 13 13* 4006 NO SPACE FOR CATALOG ON DEVICE XXX 13 14* 4007 UNDEFINED DEVICE YYY ZZZZZZ 13 15* 4010 NO SPACE FOR FILE ON DEVICE YYY 13 16* 4011 NON-UNIQUE NAME 13 17* 4012 SIZE REQUEST LS THAN ALLOCATED 13 18* 4013 SPACE REQUEST GR THAN ALLOWED 13 19* 4014 INCORRECT OR MISSING PASSWORD-AT-AAA...AAA 13 20* 4015 FILE IS ABORT LOCK 13 21* 4016 FILE WRITE IN BATCH ONLY 13 22* 4017 SEEK ERROR ON DEVICE XXX SA = NNN......NNN 13 23* 4020 FAILURE IN NAME SCAN (IMP.) 13 24* 4021 DUP CANNOT BE ON RMVBL DEVICE 13 25* 4022 BAD SPACE INVENTORY ON DEVICE 13 26* 4023 INVALID PARAMETER 13 27* 4024 BAD SPACE TABLE FOR DEVICE ON XXX 13 28* 4025 REQUESTED ENTRY NOT ON-LINE 13 29* 4026 NON-STRUCTURED FILE ENTRY 13 30* 4027 FILE IN DEFECTIVE STATUS 13 31* 4030 ILLEGAL PACK TYPE 13 32* 4031 ACCESS GRANTED TO I-D-S FILE 13 33* 4032 COLLECTION FILE ERROR 13 34* 4033 CAT/FILE SECURITY LOCKED 13 35* 4034 ILLEGAL CHARACTER IN CAT/FILE NAME 13 36* 4035 ILLEGAL CAT/FILE LIST REQUEST 13 37* 4036 AFT IS FULL 13 38* 4037 FILE ALREADY IN AFT 13 39* 4040 MAXIMUM PAT SIZE EXCEEDED 13 40* 4041 NO PROTECTION TABLE SPACE AVAILABLE 13 41* 4042 INVALID FILE CODE OR PAT PTR 13 42* 4043 INVALID CATALOG BLOCK ADDRESS 13 43* 4044 ILLEGAL OPTIONS COMBINATION 13 44* 4045 INVALID SPACE IDENTIFIER 13 45* 4046 (NONE, SPECIAL TSS INTERFACE) 13 46* 4047 UNACCOUNTABLE ERROR 13 47* 4050 ***RESERVED for FMS*** 13 48* 4051 CHECKSUM ERROR - DEVICE XXX SA = NNN......NNN 13 49* 4052 DEVICE XXX RELEASED 13 50* 4053 READ ACCESS DENIED - NULL FILE 13 51* 4054 FILE IS WRITE LOCKED 13 52* 4055 ***RESERVED*** 13 53* 4056 SECURITY PARAMETER - REQUIRED 13 54* 4057 SECURITY PARAMETER - INVALID 13 55* 4061 $FSYS HAS BEEN ENABLED 13 56* 4062 ILLEGAL SUBFUNCTION CODE 13 57* 4063 FILE NOT BEING MONITORED 13 58* 4064 DEADLOCK ON PAGE REQUEST 13 59* 4065 PAGE CURRENTLY BUSY 13 60* 4066 FILE NOT DUPLICATED 13 61* 4067 TDS MON ALLOC ERROR 13 62* 4070 ILLEGAL CHECKPOINT REQUEST 13 63* 4071 ILLEGAL DCW SPECIFIED 13 64* 4072 IMPROPER PROTECTION OPTION 13 65* 4073 INVALID ARG LIST PARAMETER NO. 000 13 66* 4074 SYSTEM JOURNAL NOT CONFIGURED 13 67* 4075 FILE RESTORE LOCKED 13 68* 4076 FILE IS TDS LOCKED 13 69* 4077 ERR TDS SUBSET PAGES RELEASED 13 70* 4100 UNACCOUNTABLE ERROR 13 71**/ 13 72 13 73 /* END INCLUDE FILE gtss_filact_status.incl.pl1 */ 374 375 14 1 /* BEGIN INCLUDE FILE gtss_deferred_catalog.incl.pl1 */ 14 2 /* 14 3* Created: (Wardd Multics) 11/08/78 1747.0 mst Wed 14 4**/ 14 5 14 6 /** Deferred FMS catalog record control structure (instructions). **/ 14 7 dcl def_cat_ptr ptr init(null()); 14 8 dcl def_cat_fill_len fixed bin; 14 9 14 10 dcl 1 deferred_catalog aligned based(def_cat_ptr), 14 11 2 cat_file_len fixed bin(35), 14 12 2 cat_file (200)bit(36), /* GCOS catalog/file description. */ 14 13 2 fill (def_cat_fill_len)bit(36), 14 14 2 type2_3, 14 15 3 cat bit(1)unal, /* 1 => name is catalog, else file. */ 14 16 3 zero bit(8)unal, 14 17 3 rec_type fixed bin(8)unal, /* FMS catalog record type (=>what to create). */ 14 18 3 nl fixed bin(17)unal, 14 19 3 ns char(deferred_catalog.type2_3.nl)unal, 14 20 2 next_nl fixed bin(35); 14 21 14 22 dcl def_cat_type_1_ptr ptr init(null()); 14 23 dcl 1 def_cat_type_1 aligned based(def_cat_type_1_ptr), 14 24 3 cat bit(1)unal, /* 1 => name is catalog, else file. */ 14 25 3 zero bit(8)unal, 14 26 3 rec_type fixed bin(8)unal, /* FMS catalog record type (=>what to create). */ 14 27 3 sn bit(18)unal /* Sector number to start of ramaining names. */; 14 28 14 29 /* END INCLUDE FILE gtss_deferred_catalog.incl.pl1 */ 376 377 15 1 /* BEGIN INCLUDE FILE gtss_filact18_args.incl.pl1 */ 15 2 /* 15 3* Created: (Wardd Multics) 11/08/78 1747.5 mst Wed 15 4**/ 15 5 15 6 dcl 1 Get_Current_args aligned based(arg_ptr) 15 7 , 3 word1 15 8 , 4 zero bit(18)unal 15 9 , 4 L_arglist bit(18)unal 15 10 , 3 word2 15 11 , 4 Get_Current_function_no fixed bin(17)unal 15 12 , 4 L_buffer bit(18)unal 15 13 ; 15 14 15 15 dcl 1 Get_Current_arglist aligned based(arglist_ptr) 15 16 , 3 word1 15 17 , 4 L_status_return bit(18)unal 15 18 , 4 L_record bit(18)unal 15 19 , 3 word2 15 20 , 4 L_cat_filedescr bit(18)unal 15 21 , 4 device_name bit(18)unal 15 22 ; 15 23 15 24 /* END INCLUDE FILE gtss_filact18_args.incl.pl1 */ 378 379 16 1 /* BEGIN INCLUDE FILE gtss_db_names.incl.pl1 */ 16 2 /* 16 3* Created: (Wardd Multics) 03/29/79 1909.1 mst Thu 16 4**/ 16 5 16 6 /* To provide a new debugging switch: 16 7* 16 8* 1) Locate the comment "Insert next entry above this comment". 16 9* 16 10* 2) Place a new declaration for a db_ variable just 16 11* above this comment, in the same manner as the 16 12* current declaration just above the comment, using 16 13* the next integer gtss_ext_$db index. 16 14* 16 15* 3) Execute the gtss|db_names ted macro (this updates 16 16* the sorted name table). 16 17* 16 18* 4) Example use: 16 19* 16 20* if db_drl_grow then do; 16 21* . 16 22* . 16 23* . 16 24* debug i/o statements using com_err_ or ioa_ 16 25* . 16 26* . 16 27* . 16 28* end; 16 29* 16 30**/ 16 31 16 32 dcl ( 16 33 db_ bit(1) defined(gtss_ext_$db(01)) 16 34 ,db_CFP_input bit(1) defined(gtss_ext_$db(02)) 16 35 ,db_drl_addmem bit(1) defined(gtss_ext_$db(03)) 16 36 ,db_drl_defil bit(1) defined(gtss_ext_$db(04)) 16 37 ,db_drl_filact bit(1) defined(gtss_ext_$db(05)) 16 38 ,db_drl_filsp bit(1) defined(gtss_ext_$db(06)) 16 39 ,db_drl_grow bit(1) defined(gtss_ext_$db(07)) 16 40 ,db_drl_rew bit(1) defined(gtss_ext_$db(08)) 16 41 ,db_filact_funct02 bit(1) defined(gtss_ext_$db(09)) 16 42 ,db_filact_funct03 bit(1) defined(gtss_ext_$db(10)) 16 43 ,db_filact_funct04 bit(1) defined(gtss_ext_$db(11)) 16 44 ,db_filact_funct05 bit(1) defined(gtss_ext_$db(12)) 16 45 ,db_filact_funct10 bit(1) defined(gtss_ext_$db(13)) 16 46 ,db_filact_funct11 bit(1) defined(gtss_ext_$db(14)) 16 47 ,db_filact_funct14 bit(1) defined(gtss_ext_$db(15)) 16 48 ,db_filact_funct18 bit(1) defined(gtss_ext_$db(16)) 16 49 ,db_filact_funct19 bit(1) defined(gtss_ext_$db(17)) 16 50 ,db_filact_funct21 bit(1) defined(gtss_ext_$db(18)) 16 51 ,db_filact_funct22 bit(1) defined(gtss_ext_$db(19)) 16 52 ,db_interp_prim bit(1) defined(gtss_ext_$db(20)) 16 53 ,db_ios bit(1) defined(gtss_ext_$db(21)) 16 54 ,db_run_subsystem bit(1) defined(gtss_ext_$db(22)) 16 55 ,db_drl_t_cfio bit(1) defined(gtss_ext_$db(23)) 16 56 ,db_drl_switch bit(1) defined(gtss_ext_$db(24)) 16 57 ,db_drl_dio bit(1) defined(gtss_ext_$db(25)) 16 58 ,db_drl_retfil bit(1) defined(gtss_ext_$db(26)) 16 59 ,db_drl_msub bit(1) defined(gtss_ext_$db(27)) 16 60 ,db_drl_callss bit(1) defined(gtss_ext_$db(28)) 16 61 ,db_drl_rstswh bit(1) defined(gtss_ext_$db(29)) 16 62 ,db_drl_setswh bit(1) defined(gtss_ext_$db(30)) 16 63 ,db_mcfc bit(1) defined(gtss_ext_$db(31)) 16 64 ,db_dq bit(1) defined(gtss_ext_$db(32)) 16 65 ,db_abs bit(1) defined(gtss_ext_$db(33)) 16 66 ,db_attributes_mgr bit(1) defined(gtss_ext_$db(34)) 16 67 ,db_expand_pathname bit(1) defined(gtss_ext_$db(35)) 16 68 ,db_drl_part bit(1) defined(gtss_ext_$db(36)) 16 69 ,db_drl_morlnk bit(1) defined(gtss_ext_$db(37)) 16 70 ,db_drl_kin bit(1) defined(gtss_ext_$db(38)) 16 71 /* Insert next entry above this comment. */ 16 72 ); 16 73 16 74 /* Table of sorted names. */ 16 75 dcl 1 debug_bit_names (38) static int options(constant) 16 76 , 2 name char(18)var init( 16 77 "" ,"CFP_input" ,"abs" ,"attributes_mgr" ,"dq" ,"drl_addmem" 16 78 ,"drl_callss" ,"drl_defil" ,"drl_dio" ,"drl_filact" ,"drl_filsp" 16 79 ,"drl_grow" ,"drl_kin" ,"drl_morlnk" ,"drl_msub" ,"drl_part" 16 80 ,"drl_retfil" ,"drl_rew" ,"drl_rstswh" ,"drl_setswh" ,"drl_switch" 16 81 ,"drl_t_cfio" ,"expand_pathname" ,"filact_funct02" ,"filact_funct03" 16 82 ,"filact_funct04" ,"filact_funct05" ,"filact_funct10" ,"filact_funct11" 16 83 ,"filact_funct14" ,"filact_funct18" ,"filact_funct19" ,"filact_funct21" 16 84 ,"filact_funct22" ,"interp_prim" ,"ios" ,"mcfc" ,"run_subsystem" 16 85 ) 16 86 , 2 value fixed bin init( 16 87 01 ,02 ,33 ,34 ,32 ,03 ,28 ,04 ,25 ,05 ,06 ,07 ,38 ,37 ,27 ,36 ,26 ,08 16 88 ,29 ,30 ,24 ,23 ,35 ,09 ,10 ,11 ,12 ,13 ,14 ,15 ,16 ,17 ,18 ,19 ,20 ,21 16 89 ,31 ,22 16 90 ); 16 91 /* End of table. */ 16 92 /* END INCLUDE FILE gtss_db_names.incl.pl1 */ 380 381 end /* gtss_filact_funct21_ */; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 12/10/84 1044.0 gtss_filact_funct21_.pl1 >spec>on>7105>gtss_filact_funct21_.pl1 184 1 09/09/83 1713.8 gtss_filact_intp1.incl.pl1 >ldd>include>gtss_filact_intp1.incl.pl1 353 2 09/09/83 1714.3 gtss_ust_ext_.incl.pl1 >ldd>include>gtss_ust_ext_.incl.pl1 355 3 09/09/83 1713.8 gtss_ext_.incl.pl1 >ldd>include>gtss_ext_.incl.pl1 357 4 12/15/83 1100.4 mc.incl.pl1 >ldd>include>mc.incl.pl1 359 5 12/10/84 1029.7 gtss_entry_dcls.incl.pl1 >spec>on>7105>gtss_entry_dcls.incl.pl1 361 6 09/09/83 1713.5 gtss_ascii_file_names.incl.pl1 >ldd>include>gtss_ascii_file_names.incl.pl1 363 7 09/09/83 1714.0 gtss_file_values.incl.pl1 >ldd>include>gtss_file_values.incl.pl1 365 8 09/09/83 1713.5 gtss_FMS_catalog.incl.pl1 >ldd>include>gtss_FMS_catalog.incl.pl1 368 9 04/29/76 1139.2 status_info.incl.pl1 >ldd>include>status_info.incl.pl1 370 10 02/13/75 1618.9 acls.incl.pl1 >ldd>include>acls.incl.pl1 372 11 09/09/83 1713.9 gtss_filact_options.incl.pl1 >ldd>include>gtss_filact_options.incl.pl1 11-38 12 09/09/83 1713.9 gtss_filact_permissions.incl.pl1 >ldd>include>gtss_filact_permissions.incl.pl1 374 13 09/09/83 1713.3 gtss_filact_status.incl.pl1 >ldd>include>gtss_filact_status.incl.pl1 376 14 09/09/83 1713.7 gtss_deferred_catalog.incl.pl1 >ldd>include>gtss_deferred_catalog.incl.pl1 378 15 09/09/83 1713.8 gtss_filact18_args.incl.pl1 >ldd>include>gtss_filact18_args.incl.pl1 380 16 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 000616 automatic pointer initial dcl 238 set ref 238* FMS_cat_ptr 000636 automatic pointer initial dcl 8-12 set ref 8-12* FMS_catalog based structure level 1 dcl 8-13 FS1_CBK_04 4 based structure level 2 dcl 8-84 FS1_NLL_01 1 based structure level 2 dcl 8-84 FS1_SNM_00_01 6 based bit(72) array level 3 dcl 8-84 set ref 100* 101 101 FS1_SPT_02 10 based structure array level 3 dcl 8-84 FS1_VAR_06_76 6 based structure array level 2 dcl 8-84 set ref 94 FSnTYP_0 based structure level 2 dcl 8-13 Get_Current_arglist based structure level 1 dcl 15-15 Get_Current_args based structure level 1 dcl 15-6 Get_Current_function_no 147 000100 automatic fixed bin(17,0) level 4 packed unaligned dcl 124 set ref 135* Get_Specific_arglist based structure level 1 dcl 338 Get_Specific_args based structure level 1 dcl 329 L_arglist 146(18) 000100 automatic bit(18) level 4 in structure "filact18_call" packed unaligned dcl 124 in procedure "gtss_filact_funct21_" set ref 134* L_arglist 0(18) based bit(18) level 2 in structure "filact_args" packed unaligned dcl 1-24 in procedure "validate_status" ref 1-16 1-16 L_arglist 0(18) based bit(18) level 3 in structure "Get_Specific_args" packed unaligned dcl 329 in procedure "gtss_filact_funct21_" ref 47 53 L_cat_filedescr 151 000100 automatic bit(18) level 4 packed unaligned dcl 124 set ref 137* L_end_of_record 0(18) based bit(18) level 2 packed unaligned dcl 302 ref 64 64 L_record 0(18) based bit(18) level 3 packed unaligned dcl 338 set ref 178* 179 L_sector_arg 1 based bit(18) level 3 packed unaligned dcl 338 ref 58 60 L_status_return based bit(18) level 3 in structure "Get_Specific_arglist" packed unaligned dcl 338 in procedure "gtss_filact_funct21_" set ref 56* L_status_return 150 000100 automatic bit(18) level 4 in structure "filact18_call" packed unaligned dcl 124 in procedure "gtss_filact_funct21_" set ref 136* Type_1_Catalog based structure level 1 dcl 8-84 set ref 179 Type_1_ptr 000640 automatic pointer initial dcl 8-83 set ref 87* 88 94 95 95 100 101 101 106 107 178 179 8-83* Type_4_ptr 000642 automatic pointer initial dcl 8-216 set ref 8-216* W43_FSBFER 74 based bit(36) level 2 dcl 8-231 set ref 87 addr builtin function dcl 199 ref 87 97 101 101 101 101 107 134 136 137 151 151 156 157 158 160 160 160 160 addrel builtin function dcl 200 ref 53 60 77 1-20 altname_ptr 000576 automatic pointer initial dcl 204 set ref 204* arg_ptr 000602 automatic pointer initial dcl 207 set ref 41* 47 53 207* 1-16 1-16 arg_ptr_val parameter pointer dcl 34 ref 14 41 arglist 150 000100 automatic structure level 2 dcl 124 set ref 134 arglist_ptr 000600 automatic pointer initial dcl 206 set ref 53* 56 58 60 178 179 206* args 146 000100 automatic structure level 2 dcl 124 set ref 160 160 attribute_segment_ptr 000604 automatic pointer initial dcl 208 set ref 208* bit builtin function dcl 209 ref 179 bit01 10(01) based bit(1) array level 4 packed unaligned dcl 8-84 set ref 106* bits00_05 based bit(6) level 3 packed unaligned dcl 8-13 set ref 88* bits00_17 1 based bit(18) level 3 in structure "Type_1_Catalog" packed unaligned dcl 8-84 in procedure "gtss_filact_funct21_" set ref 95* bits00_17 4 based bit(18) level 3 in structure "Type_1_Catalog" packed unaligned dcl 8-84 in procedure "gtss_filact_funct21_" set ref 95* bits18_35 10(18) based bit(18) array level 4 packed unaligned dcl 8-84 set ref 107* brp 000572 automatic pointer initial dcl 196 set ref 196* buffer_ptr 000644 automatic pointer initial dcl 8-230 set ref 42* 87 160* 8-230* buffer_ptr_val parameter pointer dcl 35 ref 14 42 callers_buffer based structure level 1 dcl 8-231 cat based bit(1) level 2 in structure "def_cat_type_1" packed unaligned dcl 14-23 in procedure "gtss_filact_funct21_" set ref 78* 113 cat based bit(1) level 3 in structure "deferred_catalog" packed unaligned dcl 14-10 in procedure "gtss_filact_funct21_" set ref 106 cat_file 154 000100 automatic bit(36) array level 2 in structure "filact18_call" dcl 124 in procedure "gtss_filact_funct21_" set ref 137 151 156 157 158 cat_file 1 based bit(36) array level 2 in structure "deferred_catalog" dcl 14-10 in procedure "gtss_filact_funct21_" set ref 151 cat_file_len based fixed bin(35,0) level 2 dcl 14-10 ref 150 cat_file_string based bit level 2 dcl 143 set ref 151* 151 cfdl 000564 automatic fixed bin(35,0) dcl 148 set ref 150* 151 151 156 157 158 code parameter fixed bin(35,0) dcl 36 set ref 14 44* 50* 160* 168 177* com_err_ 000016 constant entry external dcl 5-8 ref 69 171 cont_ptr 000606 automatic pointer initial dcl 216 set ref 216* db_filact_funct21 defined bit(1) unaligned dcl 16-32 ref 62 78 121 def_cat_fill_len 000654 automatic fixed bin(17,0) dcl 14-8 set ref 89* 92 97 101 101 101 101 101 101 106 107 108* 108 108 def_cat_ptr 000652 automatic pointer initial dcl 14-7 set ref 76* 77 92 97 101 101 101 101 101 101 106 107 108 150 151 14-7* def_cat_type_1 based structure level 1 dcl 14-23 def_cat_type_1_ptr 000656 automatic pointer initial dcl 14-22 set ref 77* 78 78 78 78 78 78 86 89 97 112 113 156 156 171 14-22* deferred_catalog based structure level 1 dcl 14-10 descriptor_ptr 000610 automatic pointer initial dcl 221 set ref 221* divide builtin function dcl 223 ref 108 entry_name 000612 automatic char(12) initial unaligned dcl 224 set ref 224* entry_ptr 000566 automatic pointer initial dcl 193 set ref 193* filact18_call 000100 automatic structure level 1 dcl 124 set ref 132* 160 160 filact_args based structure level 1 dcl 1-24 file_name based structure level 1 dcl 152 file_perm based bit(72) level 2 dcl 143 set ref 157* file_string based char(8) level 2 dcl 143 set ref 156* fixed builtin function dcl 236 ref 39 47 63 64 64 78 78 78 78 89 121 121 179 179 1-16 1-16 1-16 1-16 gseg 000620 automatic pointer initial dcl 240 set ref 40* 53 60 240* 1-20 gseg_val parameter pointer dcl 33 ref 14 40 gtss_ascii_bcd_ 000020 constant entry external dcl 5-30 ref 101 gtss_ext_$db 000012 external static bit(1) array unaligned dcl 3-10 ref 62 62 78 78 121 121 gtss_ext_$deferred_catalogs_ptr 000014 external static pointer dcl 3-11 ref 76 gtss_filact_funct18_ 000022 constant entry external dcl 5-121 ref 160 hbound builtin function dcl 243 ref 94 high_b 000622 automatic bit(18) dcl 253 set ref 38* 39 58 1-13 high_i 000623 automatic fixed bin(18,0) dcl 254 set ref 39* 47 high_val parameter bit(18) unaligned dcl 32 ref 14 38 i 000624 automatic fixed bin(24,0) dcl 255 set ref 63* 64* 64* 69* 91* 93* 93 94 100 101 101 106 107 ioa_ 000010 constant entry external dcl 258 ref 64 78 121 mcp 000634 automatic pointer dcl 4-10 set ref 37* 160* mcp_val parameter pointer dcl 31 ref 14 37 minus_one based fixed bin(35,0) level 2 dcl 143 set ref 158* move_string based structure level 1 dcl 143 n_ptr 000570 automatic pointer initial dcl 194 set ref 194* name 22 based structure array level 2 in structure "t0c" dcl 8-75 in procedure "gtss_filact_funct21_" name 1 based char level 2 in structure "file_name" packed unaligned dcl 152 in procedure "gtss_filact_funct21_" ref 156 name_len 0(18) based fixed bin(17,0) level 2 packed unaligned dcl 152 ref 156 nl based fixed bin(17,0) level 3 packed unaligned dcl 14-10 set ref 92 101 101 101 101 108 ns based char level 3 packed unaligned dcl 14-10 set ref 101 101 options_ptr 000646 automatic pointer initial dcl 11-6 set ref 11-6* p 000626 automatic pointer initial dcl 273 set ref 273* permissions_ptr 000650 automatic pointer initial dcl 12-5 set ref 12-5* permissionsx based structure level 1 dcl 12-6 rec_type 0(09) based fixed bin(8,0) level 2 packed unaligned dcl 14-23 set ref 78* 86 112 171* rel builtin function dcl 278 ref 97 107 134 136 137 178 sector based structure level 1 dcl 302 sector_number based bit(18) level 2 packed unaligned dcl 302 set ref 63 67 67 77 95 121 121 179* sector_ptr 000574 automatic pointer initial dcl 197 set ref 60* 63 64 64 67 67 77 95 121 121 179 197* size builtin function dcl 283 ref 179 smc_entry_ptr 000630 automatic pointer initial dcl 284 set ref 284* sn 0(18) based bit(18) level 2 packed unaligned dcl 14-23 set ref 78 78 78 78 89 97* sp parameter pointer dcl 1-8 set ref 1-5 1-20* stat 152 000100 automatic bit(72) level 2 dcl 124 set ref 136 status based bit(18) level 2 packed unaligned dcl 347 set ref 72* 180* status_address parameter bit(18) unaligned dcl 1-7 ref 1-5 1-13 1-16 1-16 1-20 status_pointer 000666 automatic pointer initial dcl 1-9 set ref 1-9* 1-20* 1-21 status_ptr 000632 automatic pointer initial dcl 288 set ref 56* 72 180 288* status_word based structure level 1 dcl 347 set ref 1-21* t0c based structure level 1 dcl 8-75 type2_3 based structure level 2 dcl 14-10 set ref 97 107 word1 146 000100 automatic structure level 3 in structure "filact18_call" dcl 124 in procedure "gtss_filact_funct21_" word1 based structure level 2 in structure "Get_Specific_args" dcl 329 in procedure "gtss_filact_funct21_" word1 based structure level 2 in structure "Get_Specific_arglist" dcl 338 in procedure "gtss_filact_funct21_" word1 150 000100 automatic structure level 3 in structure "filact18_call" dcl 124 in procedure "gtss_filact_funct21_" word2 151 000100 automatic structure level 3 in structure "filact18_call" dcl 124 in procedure "gtss_filact_funct21_" word2 1 based structure level 2 in structure "Get_Specific_arglist" dcl 338 in procedure "gtss_filact_funct21_" word2 147 000100 automatic structure level 3 in structure "filact18_call" dcl 124 in procedure "gtss_filact_funct21_" NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. Type_0_Catalog based structure level 1 dcl 8-34 Type_2_Catalog based structure level 1 dcl 8-114 Type_4_Catalog based structure level 1 dcl 8-217 abx internal static fixed bin(17,0) initial dcl 4-42 access_mode automatic bit(6) unaligned dcl 198 acl_count automatic fixed bin(17,0) dcl 10-2 acl_ptr automatic pointer dcl 10-2 aft_code automatic fixed bin(35,0) dcl 201 aft_name automatic char(8) unaligned dcl 202 altname based char(8) dcl 203 append_mode internal static bit(36) initial unaligned dcl 205 apx internal static fixed bin(17,0) initial dcl 4-42 area_pointer automatic pointer dcl 9-2 ascii_cat_file automatic structure level 1 unaligned dcl 6-8 attr_name internal static char(4) initial array unaligned dcl 7-46 bbx internal static fixed bin(17,0) initial dcl 4-42 bit18 based bit(18) unaligned dcl 210 bit72 based bit(72) dcl 211 bit_count automatic fixed bin(24,0) dcl 212 bm based structure level 1 packed unaligned dcl 311 bpx internal static fixed bin(17,0) initial dcl 4-42 branch based structure level 1 dcl 9-2 cat_filedescr_name_offset automatic bit(18) unaligned dcl 213 cdate automatic fixed bin(71,0) dcl 214 clim automatic float bin(27) dcl 215 crf automatic fixed bin(24,0) dcl 217 csp automatic float bin(27) dcl 218 db_ defined bit(1) unaligned dcl 16-32 db_CFP_input defined bit(1) unaligned dcl 16-32 db_abs defined bit(1) unaligned dcl 16-32 db_attributes_mgr defined bit(1) unaligned dcl 16-32 db_dq defined bit(1) unaligned dcl 16-32 db_drl_addmem defined bit(1) unaligned dcl 16-32 db_drl_callss defined bit(1) unaligned dcl 16-32 db_drl_defil defined bit(1) unaligned dcl 16-32 db_drl_dio defined bit(1) unaligned dcl 16-32 db_drl_filact defined bit(1) unaligned dcl 16-32 db_drl_filsp defined bit(1) unaligned dcl 16-32 db_drl_grow defined bit(1) unaligned dcl 16-32 db_drl_kin defined bit(1) unaligned dcl 16-32 db_drl_morlnk defined bit(1) unaligned dcl 16-32 db_drl_msub defined bit(1) unaligned dcl 16-32 db_drl_part defined bit(1) unaligned dcl 16-32 db_drl_retfil defined bit(1) unaligned dcl 16-32 db_drl_rew defined bit(1) unaligned dcl 16-32 db_drl_rstswh defined bit(1) unaligned dcl 16-32 db_drl_setswh defined bit(1) unaligned dcl 16-32 db_drl_switch defined bit(1) unaligned dcl 16-32 db_drl_t_cfio defined bit(1) unaligned dcl 16-32 db_expand_pathname defined bit(1) unaligned dcl 16-32 db_filact_funct02 defined bit(1) unaligned dcl 16-32 db_filact_funct03 defined bit(1) unaligned dcl 16-32 db_filact_funct04 defined bit(1) unaligned dcl 16-32 db_filact_funct05 defined bit(1) unaligned dcl 16-32 db_filact_funct10 defined bit(1) unaligned dcl 16-32 db_filact_funct11 defined bit(1) unaligned dcl 16-32 db_filact_funct14 defined bit(1) unaligned dcl 16-32 db_filact_funct18 defined bit(1) unaligned dcl 16-32 db_filact_funct19 defined bit(1) unaligned dcl 16-32 db_filact_funct22 defined bit(1) unaligned dcl 16-32 db_interp_prim defined bit(1) unaligned dcl 16-32 db_ios defined bit(1) unaligned dcl 16-32 db_mcfc defined bit(1) unaligned dcl 16-32 db_run_subsystem defined bit(1) unaligned dcl 16-32 debug_bit_names internal static structure array level 1 unaligned dcl 16-75 delete_$path 000000 constant entry external dcl 219 descriptor_address automatic bit(18) unaligned dcl 220 dir_acl based structure array level 1 dcl 10-2 dir_name automatic char(168) unaligned dcl 222 directory automatic varying char(168) dcl 195 entries based structure array level 1 dcl 306 entry_count automatic fixed bin(17,0) dcl 192 entry_names based char(32) array dcl 9-2 error_table_$incorrect_access external static fixed bin(35,0) dcl 225 error_table_$moderr external static fixed bin(35,0) dcl 226 error_table_$namedup external static fixed bin(35,0) dcl 227 error_table_$no_dir external static fixed bin(35,0) dcl 231 error_table_$noentry external static fixed bin(35,0) dcl 228 error_table_$nomatch external static fixed bin(35,0) dcl 229 error_table_$not_seg_type external static fixed bin(35,0) dcl 230 error_table_$seg_not_found external static fixed bin(35,0) dcl 233 error_table_$segknown external static fixed bin(35,0) dcl 232 execute_mode internal static bit(36) initial unaligned dcl 234 file_no automatic fixed bin(24,0) dcl 235 fixed_bin17 based fixed bin(17,0) unaligned dcl 237 four_NULS internal static char(4) initial unaligned dcl 239 gfv based structure level 1 dcl 318 gtss_CFP_abort_ 000000 constant entry external dcl 5-9 gtss_CFP_break_ 000000 constant entry external dcl 5-10 gtss_CFP_input_ 000000 constant entry external dcl 5-11 gtss_CFP_output_ 000000 constant entry external dcl 5-12 gtss_abandon_CFP_ 000000 constant entry external dcl 5-13 gtss_abort_dump_ 000000 constant entry external dcl 5-14 gtss_abort_subsystem_ 000000 constant entry external dcl 5-15 gtss_abort_subsystem_$not_imp 000000 constant entry external dcl 5-16 gtss_abs_$abs_equiv 000000 constant entry external dcl 5-19 gtss_abs_$cpu_runout 000000 constant entry external dcl 5-20 gtss_abs_$create_absin 000000 constant entry external dcl 5-21 gtss_abs_$dabt_check 000000 constant entry external dcl 5-22 gtss_abs_$get_drm 000000 constant entry external dcl 5-24 gtss_abs_$get_id 000000 constant entry external dcl 5-23 gtss_abs_login_banner_ 000000 constant entry external dcl 5-17 gtss_abs_logout_banner_ 000000 constant entry external dcl 5-18 gtss_adjust_size_ 000000 constant entry external dcl 5-25 gtss_aft_$add 000000 constant entry external dcl 5-26 gtss_aft_$delete 000000 constant entry external dcl 5-27 gtss_aft_$find 000000 constant entry external dcl 5-28 gtss_aft_$initialize 000000 constant entry external dcl 5-29 gtss_attributes_mgr_$get 000000 constant entry external dcl 5-31 gtss_attributes_mgr_$set 000000 constant entry external dcl 5-32 gtss_bcd_ascii_ 000000 constant entry external dcl 5-33 gtss_bcd_ascii_$lc 000000 constant entry external dcl 5-34 gtss_break_vector_ 000000 constant entry external dcl 5-35 gtss_break_vector_$drl_in_progress 000000 constant entry external dcl 5-36 gtss_break_vector_$status 000000 constant entry external dcl 5-37 gtss_build_ 000000 constant entry external dcl 5-38 gtss_com_err_ 000000 constant entry external dcl 5-39 gtss_derail_processor_ 000000 constant entry external dcl 5-40 gtss_derail_processor_$set 000000 constant entry external dcl 5-41 gtss_dq_$catp 000000 constant entry external dcl 5-42 gtss_dq_$create 000000 constant entry external dcl 5-43 gtss_dq_$dibp 000000 constant entry external dcl 5-44 gtss_dq_$entries_info 000000 constant entry external dcl 5-45 gtss_dq_$hdrp 000000 constant entry external dcl 5-46 gtss_dq_$mod_js 000000 constant entry external dcl 5-47 gtss_dq_$open_exc 000000 constant entry external dcl 5-48 gtss_dq_$open_gen 000000 constant entry external dcl 5-49 gtss_drl_abort_ 000000 constant entry external dcl 5-50 gtss_drl_addmem_ 000000 constant entry external dcl 5-51 gtss_drl_callss_ 000000 constant entry external dcl 5-52 gtss_drl_corfil_ 000000 constant entry external dcl 5-53 gtss_drl_defil_ 000000 constant entry external dcl 5-54 gtss_drl_defil_$subr 000000 constant entry external dcl 5-55 gtss_drl_dio_ 000000 constant entry external dcl 5-56 gtss_drl_drlimt_ 000000 constant entry external dcl 5-57 gtss_drl_drlsav_ 000000 constant entry external dcl 5-58 gtss_drl_filact_ 000000 constant entry external dcl 5-59 gtss_drl_filsp_ 000000 constant entry external dcl 5-60 gtss_drl_grow_ 000000 constant entry external dcl 5-61 gtss_drl_gwake_ 000000 constant entry external dcl 5-62 gtss_drl_jsts_ 000000 constant entry external dcl 5-63 gtss_drl_kin_ 000000 constant entry external dcl 5-64 gtss_drl_kotnow_ 000000 constant entry external dcl 5-65 gtss_drl_kotnow_$gtss_drl_kout_ 000000 constant entry external dcl 5-66 gtss_drl_koutn_ 000000 constant entry external dcl 5-67 gtss_drl_morlnk_ 000000 constant entry external dcl 5-68 gtss_drl_msub_ 000000 constant entry external dcl 5-69 gtss_drl_objtim_ 000000 constant entry external dcl 5-70 gtss_drl_part_ 000000 constant entry external dcl 5-71 gtss_drl_pasaft_ 000000 constant entry external dcl 5-72 gtss_drl_pasdes_ 000000 constant entry external dcl 5-73 gtss_drl_pasust_ 000000 constant entry external dcl 5-74 gtss_drl_pdio_ 000000 constant entry external dcl 5-75 gtss_drl_prgdes_ 000000 constant entry external dcl 5-76 gtss_drl_pseudo_ 000000 constant entry external dcl 5-77 gtss_drl_relmem_ 000000 constant entry external dcl 5-78 gtss_drl_restor_ 000000 constant entry external dcl 5-79 gtss_drl_retfil_ 000000 constant entry external dcl 5-80 gtss_drl_return_ 000000 constant entry external dcl 5-81 gtss_drl_rew_ 000000 constant entry external dcl 5-82 gtss_drl_rstswh_ 000000 constant entry external dcl 5-83 gtss_drl_setlno_ 000000 constant entry external dcl 5-84 gtss_drl_setswh_ 000000 constant entry external dcl 5-85 gtss_drl_snumb_ 000000 constant entry external dcl 5-86 gtss_drl_spawn_ 000000 constant entry external dcl 5-87 gtss_drl_spawn_$gtss_drl_pasflr_ 000000 constant entry external dcl 5-88 gtss_drl_stoppt_ 000000 constant entry external dcl 5-89 gtss_drl_switch_ 000000 constant entry external dcl 5-90 gtss_drl_sysret_ 000000 constant entry external dcl 5-91 gtss_drl_t_cfio_ 000000 constant entry external dcl 5-92 gtss_drl_t_cmov_ 000000 constant entry external dcl 5-93 gtss_drl_t_err_ 000000 constant entry external dcl 5-94 gtss_drl_t_goto_ 000000 constant entry external dcl 5-95 gtss_drl_t_linl_ 000000 constant entry external dcl 5-96 gtss_drl_t_rscc_ 000000 constant entry external dcl 5-97 gtss_drl_tapein_ 000000 constant entry external dcl 5-98 gtss_drl_task_ 000000 constant entry external dcl 5-99 gtss_drl_termtp_ 000000 constant entry external dcl 5-100 gtss_drl_time_ 000000 constant entry external dcl 5-101 gtss_drun_ 000000 constant entry external dcl 5-102 gtss_dsd_lookup_ 000000 constant entry external dcl 5-103 gtss_dsd_process_ 000000 constant entry external dcl 5-104 gtss_edit_dsd_ 000000 constant entry external dcl 5-105 gtss_expand_pathname_ 000000 constant entry external dcl 5-107 gtss_expand_pathname_$verify_umc 000000 constant entry external dcl 5-108 gtss_ext_$CFP_bits external static structure level 1 dcl 3-37 gtss_ext_$SYstarstar_file_no external static fixed bin(24,0) dcl 3-33 gtss_ext_$aem external static fixed bin(17,0) dcl 3-8 gtss_ext_$aft external static structure level 1 dcl 3-78 gtss_ext_$bad_drl_rtrn external static label variable dcl 3-9 gtss_ext_$com_reg external static structure level 1 dcl 3-45 gtss_ext_$dispose_of_drl external static label variable dcl 3-12 gtss_ext_$drl_rtrn external static label variable array dcl 3-13 gtss_ext_$drm_path external static char(168) unaligned dcl 3-14 gtss_ext_$drun_jid external static char(5) unaligned dcl 3-15 gtss_ext_$event_channel external static fixed bin(71,0) dcl 3-16 gtss_ext_$fast_lib external static structure level 1 dcl 3-98 gtss_ext_$finished external static label variable dcl 3-17 gtss_ext_$flags external static structure level 1 dcl 3-60 gtss_ext_$gdb_name external static char(8) unaligned dcl 3-18 gtss_ext_$get_line external static entry variable dcl 3-19 gtss_ext_$gtss_slave_area_seg external static pointer array dcl 3-20 gtss_ext_$hcs_work_area_ptr external static pointer dcl 3-21 gtss_ext_$homedir external static char(64) unaligned dcl 3-22 gtss_ext_$last_k_was_out external static bit(1) dcl 3-23 gtss_ext_$mcfc external static structure level 1 dcl 3-109 gtss_ext_$pdir external static varying char(168) dcl 3-24 gtss_ext_$popup_from_pi external static label variable dcl 3-25 gtss_ext_$ppt external static pointer dcl 3-94 gtss_ext_$process_type external static fixed bin(17,0) dcl 3-26 gtss_ext_$put_chars external static entry variable dcl 3-27 gtss_ext_$restart_from_pi external static label variable dcl 3-28 gtss_ext_$restart_seg_ptr external static pointer dcl 3-29 gtss_ext_$sig_ptr external static pointer dcl 3-30 gtss_ext_$stack_level_ external static fixed bin(17,0) dcl 3-31 gtss_ext_$statistics external static structure level 1 dcl 3-72 gtss_ext_$suspended_process external static bit(1) unaligned dcl 3-32 gtss_ext_$user_id external static varying char(26) dcl 3-34 gtss_ext_$work_area_ptr external static pointer dcl 3-35 gtss_fail 000000 stack reference condition dcl 241 gtss_fault_processor_ 000000 constant entry external dcl 5-109 gtss_fault_processor_$timer_runout 000000 constant entry external dcl 5-111 gtss_filact_error_status_ 000000 constant entry external dcl 5-112 gtss_filact_funct02_ 000000 constant entry external dcl 5-113 gtss_filact_funct03_ 000000 constant entry external dcl 5-114 gtss_filact_funct04_ 000000 constant entry external dcl 5-115 gtss_filact_funct05_ 000000 constant entry external dcl 5-116 gtss_filact_funct08_ 000000 constant entry external dcl 5-117 gtss_filact_funct10_ 000000 constant entry external dcl 5-118 gtss_filact_funct11_ 000000 constant entry external dcl 5-119 gtss_filact_funct14_ 000000 constant entry external dcl 5-120 gtss_filact_funct19_ 000000 constant entry external dcl 5-122 gtss_filact_funct21_ 000000 constant entry external dcl 5-123 gtss_filact_funct22_ 000000 constant entry external dcl 5-124 gtss_file_values automatic structure level 1 dcl 7-56 gtss_find_cond_frame_ 000000 constant entry external dcl 5-110 gtss_interp_prim_ 000000 constant entry external dcl 5-126 gtss_interp_prim_$callss 000000 constant entry external dcl 5-127 gtss_interp_prim_$sysret 000000 constant entry external dcl 5-128 gtss_interp_prim_$t_goto 000000 constant entry external dcl 5-129 gtss_ios_change_size_ 000000 constant entry external dcl 5-130 gtss_ios_close_ 000000 constant entry external dcl 5-131 gtss_ios_exchange_names_ 000000 constant entry external dcl 5-132 gtss_ios_initialize_ 000000 constant entry external dcl 5-133 gtss_ios_io_ 000000 constant entry external dcl 5-134 gtss_ios_open_ 000000 constant entry external dcl 5-135 gtss_ios_position_ 000000 constant entry external dcl 5-136 gtss_mcfc_$close 000000 constant entry external dcl 5-139 gtss_mcfc_$delete 000000 constant entry external dcl 5-137 gtss_mcfc_$open 000000 constant entry external dcl 5-138 gtss_mcfc_empty 000000 constant entry external dcl 5-106 gtss_mcfc_init_ 000000 constant entry external dcl 5-125 gtss_read_starCFP_ 000000 constant entry external dcl 5-140 gtss_read_starCFP_$last_os 000000 constant entry external dcl 5-141 gtss_run_subsystem_ 000000 constant entry external dcl 5-142 gtss_run_subsystem_$finish 000000 constant entry external dcl 5-143 gtss_run_subsystem_$restor 000000 constant entry external dcl 5-144 gtss_run_subsystem_$restor_perm 000000 constant entry external dcl 5-145 gtss_set_slave_ 000000 constant entry external dcl 5-146 gtss_set_slave_$load_bar 000000 constant entry external dcl 5-147 gtss_update_safe_store_ 000000 constant entry external dcl 5-148 gtss_ust_ext_$ust external static structure level 1 dcl 2-16 gtss_verify_access_ 000000 constant entry external dcl 5-149 gtss_verify_access_$check_forced_access 000000 constant entry external dcl 5-150 gtss_write_starCFP_ 000000 constant entry external dcl 5-151 have_file automatic bit(1) unaligned dcl 242 hcs_$add_acl_entries 000000 constant entry external dcl 244 hcs_$add_dir_acl_entries 000000 constant entry external dcl 245 hcs_$add_inacl_entries 000000 constant entry external dcl 246 hcs_$append_branchx 000000 constant entry external dcl 247 hcs_$delentry_file 000000 constant entry external dcl 248 hcs_$initiate 000000 constant entry external dcl 249 hcs_$make_seg 000000 constant entry external dcl 250 hcs_$quota_read 000000 constant entry external dcl 251 hcs_$star_ 000000 constant entry external dcl 189 hcs_$status_long 000000 constant entry external dcl 252 increment automatic fixed bin(24,0) dcl 256 index builtin function dcl 257 info_ptr automatic pointer dcl 9-2 k automatic fixed bin(24,0) dcl 259 l automatic fixed bin(24,0) dcl 260 last_sector_no automatic fixed bin(17,0) dcl 261 lbound builtin function dcl 262 lbx internal static fixed bin(17,0) initial dcl 4-42 link based structure level 1 dcl 9-2 low_b internal static bit(18) initial dcl 263 low_i internal static fixed bin(18,0) initial dcl 264 lpx internal static fixed bin(17,0) initial dcl 4-42 max_options internal static fixed bin(17,0) initial dcl 265 max_resources internal static fixed bin(17,0) initial dcl 266 mc based structure level 1 dcl 4-12 mlim automatic float bin(27) dcl 267 mod builtin function dcl 268 modify_mode internal static bit(36) initial unaligned dcl 269 msp automatic float bin(27) dcl 270 multics_access_mode automatic fixed bin(5,0) dcl 271 name_info based area(261120) dcl 191 names based char(32) array dcl 188 nic automatic fixed bin(24,0) dcl 272 now automatic fixed bin(17,0) dcl 11-5 optionsx based structure level 1 dcl 11-7 path_name automatic varying char(168) dcl 274 pathname based char dcl 9-2 person_id automatic char(22) unaligned dcl 275 quota automatic fixed bin(18,0) dcl 276 read_mode internal static bit(36) initial unaligned dcl 277 rings internal static fixed bin(3,0) initial array dcl 279 sbx internal static fixed bin(17,0) initial dcl 4-42 scu based structure level 1 dcl 4-56 scup automatic pointer dcl 4-54 scux based structure level 1 dcl 4-207 seg_acl_count automatic fixed bin(17,0) dcl 280 segment_acl based structure array level 1 dcl 10-2 shlim automatic float bin(27) array dcl 281 shsp automatic float bin(27) array dcl 282 sons_lvid automatic bit(36) unaligned dcl 285 spx internal static fixed bin(17,0) initial dcl 4-42 status automatic fixed bin(24,0) dcl 286 status_mode internal static bit(36) initial unaligned dcl 287 string builtin function dcl 289 substr builtin function dcl 290 switches internal static bit(6) initial unaligned dcl 291 t1c based structure level 1 dcl 8-108 tacc_sw automatic fixed bin(1,0) dcl 292 total_names automatic fixed bin(17,0) dcl 190 trp automatic fixed bin(71,0) dcl 293 tup automatic bit(36) dcl 294 two_words based bit(72) unaligned dcl 295 type automatic fixed bin(2,0) dcl 296 used automatic fixed bin(18,0) dcl 297 user_attribute_word automatic bit(35) unaligned dcl 298 user_info_$limits 000000 constant entry external dcl 299 write_mode internal static bit(36) initial unaligned dcl 300 NAMES DECLARED BY EXPLICIT CONTEXT. could_not_get_specific_file 000363 constant label dcl 71 ref 168 173 finished 001007 constant label dcl 175 ref 98 110 169 gtss_filact_funct21_ 000132 constant entry external dcl 14 return_err4 000227 constant label dcl 49 ref 58 1-13 1-16 validate_status 001033 constant entry internal dcl 1-5 ref 56 NAMES DECLARED BY CONTEXT OR IMPLICATION. min builtin function ref 101 101 null builtin function ref 193 194 196 197 204 206 207 208 216 221 238 240 273 284 288 8-12 8-83 8-216 8-230 11-6 12-5 14-7 14-22 1-9 unspec builtin function set ref 132 1-21* STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1200 1224 1076 1210 Length 1734 1076 24 474 102 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME gtss_filact_funct21_ 518 external procedure is an external procedure. validate_status internal procedure shares stack frame of external procedure gtss_filact_funct21_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME gtss_filact_funct21_ 000100 filact18_call gtss_filact_funct21_ 000564 cfdl gtss_filact_funct21_ 000566 entry_ptr gtss_filact_funct21_ 000570 n_ptr gtss_filact_funct21_ 000572 brp gtss_filact_funct21_ 000574 sector_ptr gtss_filact_funct21_ 000576 altname_ptr gtss_filact_funct21_ 000600 arglist_ptr gtss_filact_funct21_ 000602 arg_ptr gtss_filact_funct21_ 000604 attribute_segment_ptr gtss_filact_funct21_ 000606 cont_ptr gtss_filact_funct21_ 000610 descriptor_ptr gtss_filact_funct21_ 000612 entry_name gtss_filact_funct21_ 000616 FMS_block_ptr gtss_filact_funct21_ 000620 gseg gtss_filact_funct21_ 000622 high_b gtss_filact_funct21_ 000623 high_i gtss_filact_funct21_ 000624 i gtss_filact_funct21_ 000626 p gtss_filact_funct21_ 000630 smc_entry_ptr gtss_filact_funct21_ 000632 status_ptr gtss_filact_funct21_ 000634 mcp gtss_filact_funct21_ 000636 FMS_cat_ptr gtss_filact_funct21_ 000640 Type_1_ptr gtss_filact_funct21_ 000642 Type_4_ptr gtss_filact_funct21_ 000644 buffer_ptr gtss_filact_funct21_ 000646 options_ptr gtss_filact_funct21_ 000650 permissions_ptr gtss_filact_funct21_ 000652 def_cat_ptr gtss_filact_funct21_ 000654 def_cat_fill_len gtss_filact_funct21_ 000656 def_cat_type_1_ptr gtss_filact_funct21_ 000666 status_pointer validate_status THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return mpfx2 ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ gtss_ascii_bcd_ gtss_filact_funct18_ ioa_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. gtss_ext_$db gtss_ext_$deferred_catalogs_ptr LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 14 000124 193 000137 194 000141 196 000142 197 000143 204 000144 206 000145 207 000146 208 000147 216 000150 221 000151 224 000152 238 000155 240 000156 273 000157 284 000160 288 000161 8 12 000162 8 83 000163 8 216 000164 8 230 000165 11 6 000166 12 5 000167 14 7 000170 14 22 000171 37 000172 38 000176 39 000203 40 000206 41 000211 42 000214 44 000217 47 000220 49 000227 50 000230 51 000233 53 000234 56 000240 58 000247 60 000255 62 000260 63 000264 64 000267 67 000317 69 000327 71 000363 72 000364 73 000367 76 000370 77 000374 78 000377 86 000446 87 000454 88 000457 89 000461 91 000465 92 000466 93 000475 94 000476 95 000502 97 000507 98 000516 100 000517 101 000525 106 000554 107 000565 108 000572 109 000605 110 000606 112 000607 113 000611 121 000614 132 000642 134 000645 135 000651 136 000653 137 000656 150 000661 151 000670 156 000674 157 000704 158 000710 160 000712 168 000744 169 000747 171 000750 173 001006 175 001007 177 001010 178 001012 179 001016 180 001027 181 001032 1 5 001033 1 9 001035 1 13 001037 1 16 001044 1 20 001064 1 21 001072 1 22 001075 ----------------------------------------------------------- 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