COMPILATION LISTING OF SEGMENT gcos_cc_activity_cards_ Compiled by: Multics PL/I Compiler, Release 28b, of April 11, 1983 Compiled at: Honeywell LCPD Phoenix, System M Compiled on: 09/09/83 1114.8 mst Fri Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 gcos_cc_activity_cards_: proc (card, indx, gcos_record); 7 8 /* 9* This procedure is called whenever an activity definition card (e.g. 10* $ execute, $ fortran) is encountered. A structure is selected from 11* an array of structures in gcos_control_tables_. The information in 12* this structure is used to direct the setting of activity dependent 13* variables such as psw bits, execute flag, time, line, and storage 14* limits etc. Files needed for the activity are opened, as specified 15* in the structure. Once the common processing is completed, specific 16* routines are executed for each card type. Finally, the operands of 17* the card are processed and a return is made to the caller. 18* 19* The format of an activity defining card is as follows. 20* 21* 22* CONTROL CARD: activity definition 23* 24* 25* FORMAT: $ activ arg1,arg2,arg3,...argn 26* 27* 28* FIELDS: 29* 30* arg1-argn: any of the parameters allowed for this type of activity card. 31* Parameters are deck, ndeck, comdk, ncomdk, etc. See the GCOS III manual for 32* description of parameters for each activity card type 33* 34* Author: DICK SNYDER AUGUST 24,1970 35* Change: T.CASEY DECEMBER 1972, SEPTEMBER 1973, DECEMBER 1973, FEBRUARY 1974, AUGUST 1974 36* Change: D. KAYDEN MAY 1974 37* Change: R.H. MORRISON MAY 1975 38* Change: M. R. Jordan, August 1977 39* Change: Dave Ward 06/17/81 Reorganized. 40* Change: Ron Barstad 82-11-16 Fixed format of actid for console msgs 41* Change: Ron Barstad 83-08-02 Added activity_card_number initialization 42* Added support for 4js3 new cards 43**/ 44 dcl card char(80) parm /* card image */; 45 dcl gcos_record char(*) parm /* bcd card image, ovarlayed by char(*) variable */; 46 dcl indx fixed bin(24)parm /* offset in cardtable where card type was found */; 47 48 unspec (zeros) = "0"b; /* init zeros */ 49 gcos_ext_stat_$save_data.activ = "1"b; /* indicate that activity is being defined */ 50 j, save_data.activity_no = save_data.activity_no + 1; /* Increment activity number. */ 51 52 pic = j; 53 substr (save_data.actid, 7, 2) = pic; 54 55 if ^gcos_ext_stat_$save_data.nosave then /* if save then/restart */ 56 restart_control.na_hold = "0"b; /* default activity restart option is "REST" */ 57 58 if save_data.activity_no >= save_data.last_execute_act_no then 59 substr (save_data.psw, 6, 1) = "0"b; 60 61 gcos_ext_stat_$save_data.this_act_abort, 62 gcos_ext_stat_$save_data.dstar, gcos_ext_stat_$save_data.write_etc = "0"b; /* clear gcos_ext_stat_$save_data used for this card */ 63 64 gcos_ext_stat_$activity_card_num = gcos_ext_stat_$card_num; 65 66 /* Activity cards will now be processed using the activity descriptions */ 67 /* found in segment gcos_control_tables_. See gcos_control_tables_.alm for description. */ 68 actptr = addr (gcos_control_tables_$activity_table); /* addr of base of table */ 69 actptr = addrel (actptr, (indx-gcos_control_tables_$exc_offset)*3); /* compute address of activity */ 70 /* description associated with this activity */ 71 72 gcos_ext_stat_$nongcos = ""; 73 gcos_ext_stat_$default_nondollar = substr (nondolr, 1, 2); /* get the default nondollar filecode */ 74 gcos_ext_stat_$nondollar = ""; /* blank out nondollar file code */ 75 /* it gets set to the default the first time nondollar cards 76* are found outside a $ DATA deck */ 77 78 79 /* Compute address of variable information block */ 80 actptr = pointer (addr (gcos_control_tables_$), vib_offset); 81 gcos_ext_stat_$activity_name = vib.activity; /* save activity name */ 82 substr (save_data.psw, 1, 5) = substr (vib.psw, 1, 5); /* set psw bits 0-4 */ 83 substr (save_data.psw, 7, 12) = substr (vib.psw, 7, 12); /* set psw bits 6-17 */ 84 85 /* Set time, storage, and sysout line limits */ 86 87 /* ADD CODE TO SET time AND sysout LIMITS TO min(JOB LIMIT,vib.whatever) */ 88 gcos_ext_stat_$time_limit = vib.time; 89 gcos_ext_stat_$storage_limit = vib.storage; 90 gcos_ext_stat_$sysout_limit = vib.sysout; 91 gcos_ext_stat_$sysout_lines = 0; 92 93 op_ofs = vib.op_ofs; /* Record options info. */ 94 op_len = vib.op_len; 95 gcos_ext_stat_$ldrss = 0; /* set loader shared storage to 0 */ 96 97 /* Loop to open files required by this activity */ 98 actptr = addrel (actptr, 5); /* bump ptr to variable info */ 99 100 do while (vib_file.filecode ^= zeros); /* do until find 00 */ 101 102 if substr (control, 5, 1) then /* sysout file */ 103 call gcos_open_file_$sysout (vib_file.filecode, "0"b); 104 else do; 105 if substr (control, 1, 1) then /* flag says to use a lud */ 106 lud = vib_file.filecode || "$"; /* create a lud from the filecode */ 107 else lud = ""; 108 109 call gcos_open_file_ (vib_file.filecode, lud, fibptr, present); 110 111 /* Set indicators in fib based on settings of control bits in vib */ 112 113 fib.read = "1"b; 114 if substr (control, 2, 1) then fib.disp = "10"b; 115 fib.write = substr (control, 3, 1); 116 fib.type = substr (control, 4, 1); 117 if ^present then fib.size = fixed (substr (control, 13, 6)) * 3840; 118 119 end; 120 actptr = addrel (actptr, 1); /* Locate next file code */ 121 end; 122 123 call gcos_open_file_$sysout ("p*", "0"b); /* open p* */ 124 125 call gcos_open_file_ ("t*", "ty1", fibptr, present); /* open t* with unique lud */ 126 127 fib.console = "1"b; 128 fib.disp = "10"b; 129 130 go to wrapup (indx-gcos_control_tables_$exc_offset); 131 132 /* 133* Finish up the processing of a $ EXECUTE card. 134**/ 135 wrapup (0): /* EXECUTE */ 136 137 call gcos_open_file_ ("", "b*$", fibptr, present); /* open b* */ 138 if present then do; /* but only if already there */ 139 call gcos_open_file_ ("b*", "b*$", fibptr, present); /* call again with filecode */ 140 fib.disp = "01"b; /* set disp = "R" */ 141 end; 142 else fib.used = "0"b; /* otherwise forget it */ 143 144 do i = 1 to hbound (save_data.fibs, 1); 145 if fct.filecode (i) = "" then go to rs_hit; /* locate available entry */ 146 end; 147 rs_hit: fct.filecode (i) = "r*"; /* change its file code */ 148 fct.sysout (i) = "0"b; 149 fibptr = gcos_ext_stat_$rs; 150 fct.fibptr (i) = fibptr; 151 fib.gein = "1"b; 152 call gcos_write_$ptr (gcos_ext_stat_$rs, execute, "10000000"b); /* write $ execute */ 153 gcos_ext_stat_$nongcos = "r*"; /* indicate where nongcos dollar cards go */ 154 155 call gcos_open_file_ ("", "", fibptr, present); /* set up a new r* file for next geload */ 156 gcos_ext_stat_$rs = fibptr; /* save pointer to fib */ 157 158 fib.stream = "rstar"; 159 fib.disp = "10"b; 160 161 go to evaluate; /* go evaluate options */ 162 163 164 /* 165* Finish up the language control cards. 166**/ 167 wrapup (9): /* FORTRAN */ 168 wrapup (10): /* PL1 */ 169 wrapup (11): /* COBOL */ 170 wrapup (12): /* GMAP */ 171 wrapup (13): /* 355MAP */ 172 wrapup (14): /* ALGOL */ 173 wrapup (15): /* FORTA */ 174 wrapup (16): /* FORTY */ 175 wrapup (17): /* JOVIAL */ 176 wrapup (18): /* ASM66 */ 177 wrapup (19): /* CBL74 */ 178 wrapup (20): /* CBL68 */ 179 wrapup (21): /* MALT */ 180 wrapup (22): /* ILANG */ 181 wrapup (23): /* IDS */ 182 wrapup (24): /* IDS2 */ 183 wrapup (25): /* 4TRAN */ 184 wrapup (26): /* G3EDIT */ 185 wrapup (27): /* FORT77 */ 186 wrapup (28): /* FORTX */ 187 wrapup (29): /* CIDS2 */ 188 wrapup (30): /* RPG2 */ 189 call gcos_write_$ptr (gcos_ext_stat_$rs, source, "10000000"b); /* write $ source */ 190 go to evaluate; /* go evaluate options */ 191 192 193 /* 194* 195* Finish up the processing of the $ PROGRAM card. 196**/ 197 wrapup (2): /* PROGRAM */ 198 199 call gcos_get_cc_field_ (card, field, rtrn); /* get name of prog to be loaded */ 200 if rtrn ^= 0 then call gcos_error_ (gcos_et_$cc_missing_field, 201 "Program name missing.^/^a^2x^a", gcos_ext_stat_$card_num, card); 202 /* abort if no field */ 203 gcos_ext_stat_$activity_name = field; /* put prog name in as activity to be run */ 204 go to evaluate; /* go evaluate options */ 205 206 207 /* 208* Finish the processing of the $ FILEDIT card. 209**/ 210 wrapup (4): /* FILEDIT */ 211 212 /* write the filedit card on F* and make provision for a following etc 213* card to be written there, too */ 214 215 call gcos_write_$record ("f*", gcos_record, (8)"0"b); 216 217 gcos_ext_stat_$save_data.write_etc = "1"b; /* remember to write any etc card on F* */ 218 gcos_ext_stat_$etc_filecode = "f*"; 219 gcos_ext_stat_$save_data.dstar = "1"b; /* lie, to prevent stranger option from 220* causing card to be written on d* also */ 221 goto evaluate; /* all done */ 222 223 224 /* 225* Finish up then CONVER card (BMC). 226**/ 227 wrapup (3): /* CONVER */ 228 229 gcos_ext_stat_$nongcos = "mc"; 230 231 go to evaluate; 232 233 234 /* 235* Finish up the $ UTILITY card. 236**/ 237 wrapup (6): /* UTILITY */ 238 gcos_ext_stat_$nongcos = "u*"; 239 go to evaluate; 240 241 242 /* 243* Finish the processing of $ 355SIM or $ SYSEDIT cards. 244**/ 245 wrapup (1): /* 355SIM */ 246 wrapup (5): /* SYSEDIT */ 247 wrapup (7): /* UTL2 */ 248 wrapup (8): /* CONVRT */ 249 250 251 252 /* Come here to evaluate options on card */ 253 254 255 /* Calculate address of and number of entries in option table from */ 256 /* saved info. */ 257 258 evaluate: ; 259 j = divide (op_len, 3, 17); /* Determine number of entries. */ 260 actptr = pointer (addr (gcos_control_tables_$), op_ofs); /* Location of options table. */ 261 262 eval_loop: ; 263 call gcos_get_cc_field_ (card, field, rtrn); /* get field from card */ 264 if rtrn = END_OF_CARD then do; /* quit if end of card */ 265 gcos_ext_stat_$save_data.dstar, gcos_ext_stat_$save_data.write_etc = "0"b; /* turn off switches when finished with card */ 266 return; 267 end; 268 269 if rtrn = NULL_FIELD then go to eval_loop; /* continue if null field */ 270 271 do i = 1 to j; 272 if field = optab (i).option_type then do; 273 if optab (i).idx = 1 then 274 save_data.psw = save_data.psw | optab (i).bits; /* Set bits ON. */ 275 else 276 save_data.psw = save_data.psw & ^(optab (i).bits || (18)"0"b); /* Set bits OFF. */ 277 goto eval_loop; 278 end; 279 /* if field matches type, go process */ 280 end; 281 282 /* Save/restart options */ 283 284 if ^gcos_ext_stat_$save_data.nosave then do; 285 if field = "nrest" then restart_control.na_hold = "1"b; /* no activity restart */ 286 else 287 if field = "njrest" then restart_control.nj_restart = "1"b; /* no job restart */ 288 else 289 if field = "jrest" then restart_control.nj_restart = "0"b; /* restart job */ 290 else 291 if field = "rest" then restart_control.na_hold = "0"b; /* restart activity */ 292 else goto unknown_option; 293 goto eval_loop; 294 end; 295 296 unknown_option: ; /* unknown option causes card to be written on d* file */ 297 if ^gcos_ext_stat_$save_data.dstar then do; /* if we did not already write it, do so */ 298 gcos_ext_stat_$save_data.dstar = "1"b; /* remember that we are going to write it */ 299 gcos_ext_stat_$etc_filecode = "d*"; /* and also tell get_cc_field to write any etc cards on d* */ 300 gcos_ext_stat_$save_data.write_etc = "1"b; 301 302 /* truncate trailing words of blanks, as gcos does for the d* file */ 303 i = 13; /* 13th word of record (12th word of data) is cols 67-72 */ 304 trunc_loop: ; 305 if gcos_record_word (i) = six_bcd_blanks then do; /* if word is blank */ 306 i = i - 1; /* truncate the word */ 307 goto trunc_loop; /* and go look at the previous word */ 308 end; 309 310 i = (i-1)*4; /* compute length of char(*) overlay for what is left of the card 311* (the -1 gets rid of the rcw - it has wrong length now) */ 312 313 /* gcos_write_ will create d* and set its disp to release for us */ 314 call gcos_write_$bcd ("d*", substr (gcos_record, 5, i), "10000000"b); 315 end; 316 goto eval_loop; 317 318 /* Variables for gcos_cc_activity_cards_: */ 319 /* IDENTIFIER ATTRIBUTES */ 320 dcl actptr ptr; 321 dcl addr builtin; 322 dcl addrel builtin; 323 dcl divide builtin; 324 dcl END_OF_CARD fixed bin(24)static internal options (constant) init (2); 325 dcl execute char(80) int static options(constant) init ("$"||(6)" "||"execute"); 326 dcl field char(6) /* return paramater from gcos_get_cc_field_ */; 327 dcl fixed builtin; 328 dcl gcos_error_ entry options (variable); 329 dcl gcos_et_$cc_missing_field fixed bin(35) ext; 330 dcl gcos_get_cc_field_ ext entry (char(80), char(*), fixed bin); 331 dcl gcos_open_file_ ext entry (char(*), char(*), ptr, bit(1)); 332 dcl gcos_open_file_$sysout ext entry (char(*), bit(1)); 333 dcl gcos_record_word (13) bit(36) based (addr (gcos_record)) /* overlay for bcd card image */; 334 dcl gcos_write_$bcd ext entry (char(*), char(*), bit(8)); 335 dcl gcos_write_$ptr ext entry (ptr, char(*), bit(8)); 336 dcl gcos_write_$record ext entry (char(*), char(*), bit(8)); 337 dcl i fixed bin(24); 338 dcl j fixed bin(24); 339 dcl lud char(3) /* holds a logical unit designator */; 340 dcl NULL_FIELD fixed bin(24)static internal options (constant) init (1); 341 dcl op_len fixed bin(18)unsigned; 342 dcl op_ofs fixed bin(18)unsigned; 343 dcl pic pic "99"; 344 dcl pointer builtin; 345 dcl present bit(1) /* file present flag */; 346 dcl rtrn fixed bin(17); 347 dcl six_bcd_blanks bit(36) int static init ((6)"20"b3 ) ; 348 dcl size builtin; 349 dcl source char(80) int static options(constant) init ("$"||(6)" "||"source"); 350 dcl substr builtin; 351 dcl unspec builtin; 352 dcl zeros char(2) /* holds 16 0 bits */; 353 1 1 /* BEGIN INCLUDE FILE gcos_restart_control_.incl.pl1 RHM - MAY 1975 */ 1 2 1 3 dcl 1 restart_control aligned based (gcos_ext_stat_$saveseg_ptr), /* control word for save/restart */ 1 4 2 nj_restart bit(1) unaligned, 1 5 2 na_restart bit(1) unaligned, 1 6 2 chkpnt bit(1) unaligned, 1 7 2 cant_do bit(1) unaligned, 1 8 2 saved bit(1) unaligned, 1 9 2 na_hold bit(1) unaligned, 1 10 2 pad bit (30) unaligned, 1 11 2 restart_data (size(save_data_entry)) bit(36) aligned; 1 12 1 13 /* END INCLUDE FILE gcos_restart_control_.incl.pl1 */ 354 355 2 1 /* BEGIN INCLUDE FILE gcos_control_tables_.incl.pl1 (Wardd Multics) 09/11/80 1439.7 mst Thu */ 2 2 2 3 dcl gcos_control_tables_$ ext static; 2 4 dcl gcos_control_tables_$activity_table ext static /* table of info on each activity */; 2 5 dcl gcos_control_tables_$cardtable (151) char (8) ext static /* card type table */; 2 6 dcl gcos_control_tables_$comp_offset fixed bin ext static /* offset in cardtable where compilation activities begin */; 2 7 dcl gcos_control_tables_$exc_offset fixed bin (17) ext static /* offset in card lookup table where activity def'ns begin */; 2 8 dcl gcos_control_tables_$filecard_count fixed bin ext static /* length of filecard section of cardtable */; 2 9 dcl gcos_control_tables_$nonact fixed bin ext static /* offset in card lookup table where activity cards end */; 2 10 dcl gcos_control_tables_$tablelen fixed bin (17) ext static /* length of card lookup table */; 2 11 dcl gcos_control_tables_$tabstops ext static /* table of tabstops for canonicalizing ascii input lines */; 2 12 dcl gcos_control_tables_$totallen fixed bin ext static /* length of cardtable, including unimplemented cards */; 2 13 2 14 /* END INCLUDE FILE gcos_control_tables_.incl.pl1 */ 356 357 3 1 /* BEGIN INCLUDE FILE gcos_ext_stat_.incl.pl1 */ 3 2 /* 3 3* Changes to gcos_ext_stat_ must be made here AND gcos_ext_stat_.cds 3 4**/ 3 5 /* July 77 (MRJ) Mike Jordan. */ 3 6 /* Change: Mel Wilson Oct 1979 for gtss compatibility (Bell Canada). */ 3 7 /* Change: A. N. Kepner, March, 1978 to allow courtesy call i/o within cc routines. */ 3 8 /* Change: Dave Ward 06/01/81 Reorganized to eliminate alm object (using cds). Use of like structures. */ 3 9 /* Change: Scott C. Akers 01/26/82 Add tape_buffer_size for GEINOS processing. */ 3 10 /* Change: Ron Barstad 83-08-02 Added activity_card_num for execution report */ 3 11 /* Increased size of statistics for 4js3 MMEs */ 3 12 3 13 dcl gcos_ext_stat_$abort_reason char(128) varying /* abort reason from gcos pgm */ ext; 3 14 dcl gcos_ext_stat_$abort_return label /* abort return point */ ext; 3 15 dcl gcos_ext_stat_$activity_card_num pic "9999" ext; /* card number defining current activity */ 3 16 dcl gcos_ext_stat_$activity_name char(8) /* name of activity to be run */ ext; 3 17 dcl gcos_ext_stat_$activity_start_time fixed bin(71) /* TOD start of activity */ ext; 3 18 dcl gcos_ext_stat_$card_num pic "9999" /* ordinal number of card in input stream */ ext; 3 19 dcl gcos_ext_stat_$dbs (36)bit(1) /* Debugging switch. */ ext; 3 20 dcl gcos_ext_stat_$default_nondollar char(2) /* filecode where nondollar cards go by default */ ext; 3 21 dcl gcos_ext_stat_$dir_rings (3) fixed bin(3) /* ring brackets for created catalogs */ ext; 3 22 dcl gcos_ext_stat_$dpno char(100) varying /* arguments for call to dpunch */ ext; 3 23 dcl gcos_ext_stat_$dpo char(100) varying /* arguments for call to dprint */ ext; 3 24 dcl gcos_ext_stat_$endfc char(2) /* endfc value for endcopy processing */ ext; 3 25 dcl gcos_ext_stat_$er ptr /* fib pointer for *er */ ext; 3 26 dcl gcos_ext_stat_$etc_filecode char(2) /* filecode where $ ETC cards should be written */ ext; 3 27 dcl gcos_ext_stat_$gcos_slave_area_seg ptr /* pointer to gcos slave area segment */ ext; 3 28 dcl gcos_ext_stat_$gf fixed bin(24)/* sw used by getfield rtn */ ext; 3 29 dcl gcos_ext_stat_$incode fixed bin(24) /* switches to control incode processing */ ext; 3 30 dcl gcos_ext_stat_$increment_hold fixed bin(24) /* Holds increment for courtesy call returns. */ ext; 3 31 dcl gcos_ext_stat_$initial_cpu_time fixed bin(71) /* vcu time at activity start */ ext; 3 32 dcl gcos_ext_stat_$input_segment_path char(168) varying /* pathname of input segment */ ext; 3 33 dcl gcos_ext_stat_$jcl_warnings fixed bin(24) /* number warnings issued processing control cards */ ext; 3 34 dcl gcos_ext_stat_$job_cpu_time fixed bin(71) /* cpu usage at job start */ ext; 3 35 dcl gcos_ext_stat_$job_id char(18) varying /* unique job id for file naming */ ext; 3 36 dcl gcos_ext_stat_$job_real_time fixed bin(71) /* job start time in microseconds */ ext; 3 37 dcl gcos_ext_stat_$last_mme fixed bin(24)/* number of last mme executed */ ext; 3 38 dcl gcos_ext_stat_$ldrss fixed bin(24) /* loader shared stg. */ ext; 3 39 dcl gcos_ext_stat_$max_activities fixed bin(24)/* max activities in a job */ ext; 3 40 dcl gcos_ext_stat_$max_mem fixed bin(19) /* maximum memory available to an activity */ ext; 3 41 dcl gcos_ext_stat_$mme_rtrn label /* where to return at activity end */ ext; 3 42 dcl gcos_ext_stat_$nondollar char(2) /* non-dollar card file code */ ext; 3 43 dcl gcos_ext_stat_$nongcos char(2) /* filecode where nongcos dollar cards go */ ext; 3 44 dcl gcos_ext_stat_$normal_return label /* nonlocal goto for normal termination */ ext; 3 45 dcl gcos_ext_stat_$patchfile_ptr ptr /* pointer to patchfile */ ext; 3 46 dcl gcos_ext_stat_$pathname_prefix char(168)var ext; 3 47 dcl gcos_ext_stat_$pch ptr /* pointer to fib for syspunch collector file */ ext; 3 48 dcl gcos_ext_stat_$pdir char(168) varying /* pathname of process directory */ ext; 3 49 dcl gcos_ext_stat_$prt ptr /* pointer to fib for sysprint collector file */ ext; 3 50 dcl gcos_ext_stat_$rs ptr /* pointer to fib for geload r* collector file */ ext; 3 51 dcl gcos_ext_stat_$saveseg_ptr ptr /* pointer to save segment used by save/restart */ ext; 3 52 dcl gcos_ext_stat_$save_dir char(168) varying /* pathname of temp save directory */ ext; 3 53 dcl gcos_ext_stat_$seg_rings (3) fixed bin(3) /* ring brackets for created files */ ext; 3 54 dcl gcos_ext_stat_$sig_ptr ptr /* saved pointer to signal_ */ ext; 3 55 dcl gcos_ext_stat_$skip_umc bit(1) ext; 3 56 dcl gcos_ext_stat_$snumb bit (30) aligned /* snumb of the current job */ ext; 3 57 dcl gcos_ext_stat_$sought_label char(8) /* Label from GOTO, IF, or WHEN card */ ext; 3 58 dcl gcos_ext_stat_$statistics (3*44) fixed bin(24) /* mme usage statistics- 3 per mme */ ext; 3 59 dcl gcos_ext_stat_$stop_code fixed bin(24) /* debugging, print results and stop. */ ext; 3 60 dcl gcos_ext_stat_$storage_limit fixed bin(19) /* activity storage limit */ ext; 3 61 dcl gcos_ext_stat_$sysout_limit fixed bin(35) /* sysout line limit */ ext; 3 62 dcl gcos_ext_stat_$sysout_lines fixed bin(35) /* sysout lines used */ ext; 3 63 dcl gcos_ext_stat_$system_free_pointer ptr /* pointer to area for allocating in ext; set by gcos */ ext; 3 64 dcl gcos_ext_stat_$tape_buffer_size fixed bin(35) external static; /* tape buffer size for GEINOS. */ 3 65 dcl gcos_ext_stat_$temp_dir char(168) varying /* pathname of directory to hold temp files */ ext; 3 66 dcl gcos_ext_stat_$temp_seg_ptr ptr ext; 3 67 dcl gcos_ext_stat_$termination_code bit (18) /* termination code from gcos_mme_bort_ */ ext; 3 68 dcl gcos_ext_stat_$time_limit fixed bin(71) /* activity time limit */ ext; 3 69 dcl gcos_ext_stat_$userid char(12) /* the USERID */ ext; 3 70 dcl gcos_ext_stat_$validation_level fixed bin(3) /* current ring of execution */ ext; 3 71 3 72 /* Courtesy Call Queue 3 73* A queue for courtesy call addresses which must be saved during 3 74* execution of courtesy call routines. A courtesy call address is 3 75* saved each time a MME GEROUT or MME GEINOS, which specifies a 3 76* courtesy call, is executed within a courtesy call routine. Each 3 77* time a MME GEENDC is executed a courtesy call address will be 3 78* removed from this FIFO queue and the corresponding courtesy call 3 79* routine executed until the queue is empty. The FIFO "queue" is 3 80* implemented in a circular fashion. "next_avail" points to the 3 81* next empty location in the queue. "next_out" points to the 3 82* entry in the queue which has been in the queue longest. When 3 83* entering or removing entries from the queue the appropriate index 3 84* is incremented modulo the length of the queue. By convention the 3 85* queue is empty when "next_avail" equals "next_out". A 3 86* second convention is that the queue is considered to overflow 3 87* during an attempt to add an entry to the queue which would force 3 88* "next_avail" to "catch up" with "next_out". This means that 3 89* the last empty position in the queue will never be used. 3 90**/ 3 91 3 92 dcl 1 gcos_ext_stat_$courtesy_call_control aligned ext 3 93 , 3 courtesy_call 3 94 , 4 hold like save_machine_conditions /* Mach. conds. restored on courtesy call returns. */ 3 95 , 4 next_avail fixed bin(24) /* next available empty location in cc_queue. */ 3 96 , 4 next_out fixed bin(24) /* next entry to remove from cc_queue. */ 3 97 , 4 queue (6) fixed bin(24) 3 98 ; 3 99 4 1 /* BEGIN INCLUDE FILE gcos_save_mc.incl.pl1 (Wardd Multics) 09/12/81 0905.9 mst Sat */ 4 2 4 3 /* Structure to isolate the definition of the size of the 4 4*space needed to store he machine conditions structure (mc). 4 5**/ 4 6 dcl 1 save_machine_conditions based 4 7 , 3 save_space bit(1728) 4 8 ; 4 9 4 10 /* END INCLUDE FILE gcos_save_mc.incl.pl1 */ 3 100 3 101 3 102 dcl 1 gcos_ext_stat_$fct aligned ext, 3 103 3 fct (40) like fct_entry; 5 1 /* BEGIN INCLUDE FILE gcos_fct_entry.incl.pl1 (Wardd Multics) 05/30/81 1758.6 mst Sat */ 5 2 5 3 dcl 1 fct_entry aligned based, 5 4 2 filecode char(2) aligned, /* file code (or blank) */ 5 5 /* flags */ 5 6 2 sysout bit(1) unaligned, /* 1=file is sysout or dac */ 5 7 2 dac bit(1) unaligned, /* 1=file is dac,0=file is sysout */ 5 8 2 pad bit(34) unaligned, /* unused */ 5 9 2 fibptr ptr aligned /* ptr to fib for this file */ 5 10 ; 5 11 5 12 /* END INCLUDE FILE gcos_fct_entry.incl.pl1 */ 3 104 3 105 3 106 dcl 1 gcos_ext_stat_$save_data aligned ext, 3 107 3 save_data like save_data_entry; 6 1 /* BEGIN INCLUDE FILE gcos_save_data_entry.incl.pl1 (Wardd Multics) 07/01/81 1339.9 mst Wed */ 6 2 /* Change: Dave Ward 07/01/81 include gcos_flags_. */ 6 3 /* Change: Dave Ward 09/10/81 fib changed to fibs & likened to fib. */ 6 4 6 5 dcl 1 save_data_entry aligned based 6 6 ,3 flgs like flags /* system wide flgs */ 6 7 ,3 actid char(8) /* activity no. and accnt i.d. */ 6 8 ,3 short_actid bit(36) aligned /* short form of activity id */ 6 9 ,3 ident char(60) /* holds ident info from snumb card */ 6 10 ,3 psw bit(36) aligned /* program switch word */ 6 11 ,3 last_execute_act_no fixed bin(24)/* activity number of last $ EXECUTE card in job */ 6 12 ,3 activity_no fixed bin(24)/* activity number */ 6 13 ,3 job_time_limit fixed bin(71) /* job time limit */ 6 14 ,3 job_sysout_limit fixed bin(24)/* job sysout line limit */ 6 15 ,3 sysout_queue (10) char(32) /* sysout queue */ 6 16 ,3 sysout_queue_media (10) fixed bin(24)/* medium (print,punch) of each file on queue */ 6 17 ,3 sqindex fixed bin(24)/* curr offset in sysout queue */ 6 18 ,3 pathname_prefix char(168)varying /* prefix for gcos cfdescs */ 6 19 ,3 skip_umc aligned bit(1) /* flag to tell if we should skip umc names */ 6 20 ,3 job_deck pointer /* pointer to seg holding canonicalized job deck */ 6 21 ,3 jd_size fixed bin(24)/* size in words of job deck */ 6 22 ,3 jd_position fixed bin(24) /* position of current block of job deck */ 6 23 ,3 jd_rem_block_len fixed bin(24)/* words remaining in current block of job deck */ 6 24 ,3 syot_dir char(168)varying /* pathname of directory to hold sysout files */ 6 25 ,3 fibs (40) like fib 6 26 ,3 param (32) char(57)varying /* parameters */ 6 27 ; 6 28 7 1 /* BEGIN INCLUDE FILE gcos_flags.incl.pl1 (Wardd Multics) 07/01/81 1344.7 mst Wed */ 7 2 /* Change: Mel Wilson 03/01/79 to add gtssflag & identflag */ 7 3 /* Change: Dave Ward 07/01/81 revised, mad apart of gcos_ext_stat_. */ 7 4 7 5 7 6 /* Declaration of Simulator Wide Flags */ 7 7 7 8 dcl 1 flags aligned based, 7 9 2 ( 7 10 pad1, /* no longer used */ 7 11 copy, /* 1=copy option on|0=off */ 7 12 snumb, /* 1=snumb card read|0=not */ 7 13 ident, /* 1=ident card read|0=not */ 7 14 activ, /* 1=activity being defined|0=not */ 7 15 cc, /* 1=courtesy call active|0=not */ 7 16 pad2, /* no longer used */ 7 17 cksum, /* 1=don't check checksums|0=do */ 7 18 pad3, /* no longer used */ 7 19 wrapup, /* 1=processing wrapup after abort */ 7 20 7 21 /* FOLLOWING ADDED AFTER MARCH 73 */ 7 22 7 23 nosave, /* 1=disable save/restart function,0=not */ 7 24 pad4, /* no longer used */ 7 25 gcos, /* 1=job deck segment in gcos file format */ 7 26 raw, /* 1=sysout punch files to be converted to raw bit strings */ 7 27 list, /* 1=sysout print files to be converted to ascii */ 7 28 brief, /* 1=print nothing but fatal error messages on terminal */ 7 29 debug, /* 1=give option to call debug before aborting */ 7 30 no_canonicalize, /* 1=do NOT canonicalize job deck */ 7 31 7 32 /* 18 bits into first word */ 7 33 7 34 pad5, /* no longer used */ 7 35 dpunch, /* 1=dpunch sysout punch files;0=don't */ 7 36 dprint, /* 1=dprint sysout print files,0=don't */ 7 37 userid, /* 1=userid card read,0=not */ 7 38 userlib, /* 1= -userlib ctl arg given, see gcos_gein_ */ 7 39 dstar, /* 1=current activity card written on d* */ 7 40 write_etc, /* 1 tells get_cc_field to write $ ETC cards on etc_filecode */ 7 41 prev_act_abort, /* turned on by abort and off by $ BREAK */ 7 42 this_act_abort, /* turned on by abort to select abort disp codes */ 7 43 abort_subact, /* 1=processing abort subactivity */ 7 44 dump, /* 1=dump option given on activity card */ 7 45 nondollar, /* 1=reading nondollar card deck in gein */ 7 46 endjob, /* 1=cc_endjob already called once in this job */ 7 47 abort_card, /* 1=the terminator for this activity was a $ ABORT card */ 7 48 truncate, /* 1=truncate option given:truncate long ascii input lines */ 7 49 continue, /* 1=continue option given:continue after nonfatal errors */ 7 50 rout, /* 1=gcos_mme_rout_ was called in this activity */ 7 51 seeking, /* 1=gein is looking for a label and/or terminator */ 7 52 7 53 /* end of first word */ 7 54 7 55 seeking_terminator, /* 1=gein is looking for a terminator */ 7 56 lower_case, /* 1=lower case print conversion wanted */ 7 57 no_bar, /* 1=do not run slave program in BAR mode */ 7 58 long, /* 1=print some lines from execution reort on terminal */ 7 59 endfc, /* 1=process endfc option on endcopy card */ 7 60 gtssflag, /* 1=update gtss_user_state_ during execution */ 7 61 identflag, /* 1= use $ident banner info for print & punch */ 7 62 spawnflag, /* 1= entry due to tss spawn */ 7 63 taskflag /* 1= entry due to tss drl task */ 7 64 ) bit(1) unal, 7 65 2 pad6 bit(27)unal 7 66 ; 7 67 7 68 /* END INCLUDE FILE gcos_flags.incl.pl1 */ 6 29 6 30 6 31 /* END INCLUDE FILE gcos_save_data_entry.incl.pl1 */ 3 108 3 109 8 1 /* BEGIN INCLUDE FILE gcos_file_info_block_.incl.pl1 DAK - APRIL 74 */ 8 2 8 3 /* Declaration of File Information Block (fib) 8 4* 8 5* Change: Mel Wilson 11/01/79 for gtss compatibility 8 6* Change: Dave Ward 05/20/81 *_file constants. 8 7* Change: Dave Ward 05/29/81 separated fct structures. 8 8* Change: Dave Ward 09/02/81 provision for tape density 6250, dens_hist 2 bits (not 3). 8 9**/ 8 10 dcl 1 fib aligned based (fibptr) /* fib structure */ 8 11 8 12 , 2 buffer ptr aligned /* pointer to current buffer (gcos_write_) */ 8 13 , 2 buffer_indx fixed bin /* Index to buffer in use. */ 8 14 , 2 stream char(8)unal /* stream name for attaching this file */ 8 15 , 2 pathnm char(168)unal /* pathname (for disk, print or punch files) */ 8 16 , 2 unique_file_id bit(36) /* multics unique segment id for file */ 8 17 , 2 indicators /* five words of flags */ 8 18 8 19 , 3 indicators_word_1 8 20 , 4 used bit(1) unal /* 1=fib used, 0=fib used */ 8 21 , 4 attached bit(1) unal /* 1=stream is attached */ 8 22 , 4 type bit(1) unal /* 1=random, 0=linked */ 8 23 , 4 perm bit(1) unal /* 1=permanent file, 0=not */ 8 24 , 4 print bit(1) unal /* 1=file type is printer */ 8 25 , 4 punch bit(1) unal /* 1=file type is punch */ 8 26 , 4 reader bit(1) unal /* 1=file type is card reader */ 8 27 , 4 tape bit(1) unal /* 1=file type is tape */ 8 28 , 4 console bit(1) unal /* 1=file type is console typewriter */ 8 29 , 4 read bit(1) unal /* 1=read access permitted */ 8 30 , 4 write bit(1) unal /* 1=write access permitted */ 8 31 , 4 null bit(1) unal /* 1=file is null */ 8 32 , 4 purge bit(1) unal /* 1=purge file at time on release */ 8 33 , 4 gein bit(1) unal /* 1 = this file contains data cards from the job deck */ 8 34 , 4 disp bit(2) unal /* disposition code: 8 35* 00 = dismount 8 36* 01 = release 8 37* 10 = save 8 38* 11 = continue */ 8 39 , 4 adisp bit(2) unal /* abort disp - same codes as disp */ 8 40 , 4 order bit(1) unal /* 1 = write, 0 = read or other */ 8 41 , 4 mode bit(2) unal /* tape i/o mode 8 42* 00 = binary 8 43* 01 = decimal 8 44* 10 = nine */ 8 45 , 4 tracks bit(2) unal /* tape request code: 8 46* 00 = installation default 8 47* 01 = 7 track 8 48* 10 = 9 track */ 8 49 , 4 density bit(4) unal /* tape density from $ TAPE card 8 50* 0000 = site standard high 8 51* 0001 = 200 bpi 8 52* 0010 = 556 bpi 8 53* 0100 = 800 bpi 8 54* 1001 = 1600 bpi 8 55* 1100 = 6250 bpi 8 56* 1111 = handler capable of any appropriate denisty */ 8 57 , 4 dens_hist bit(2) unal /* density history for MME GEFADD */ 8 58 , 4 forced_acl_flag bit(1) unal /* 1 => acl forced for gtss file (2.4) */ 8 59 , 4 fill bit(6) unal /* reserved for future use */ 8 60 , 3 indicators_word_2 8 61 , 4 plud bit(18) unal /* primary log unit designator */ 8 62 /* bcd channel and channel number */ 8 63 8 64 , 4 slud bit(18) unal /* secondary log. unit designator */ 8 65 /* bcd channel and channel number */ 8 66 , 3 indicators_word_3 8 67 , 4 serial_no bit(30) unal /* tape serial number */ 8 68 , 4 pad bit( 6) unal /* unused */ 8 69 , 3 indicators_word_4 8 70 , 4 tape_name bit(72) unal /* tape name */ 8 71 8 72 , 2 current fixed bin(21) /* current file position */ 8 73 , 2 last fixed bin(21) /* eof for sequential disk files */ 8 74 , 2 size fixed bin(24) /* offset of end of file in words */ 8 75 , 2 init_size fixed bin(24) /* file size at start of activity */ 8 76 , 2 init_posit fixed bin(24) /* file position at start of activity */ 8 77 , 2 iocount fixed bin(35) /* total no. of i/o operations */ 8 78 , 2 rec_len fixed bin(24) /* length of current record (gcos_write_) */ 8 79 , 2 command_count fixed bin(17) unal /* size of command table for device (gcos_mme_inos_) */ 8 80 , 2 command_index fixed bin(17) unal /* pointer to command table entry (gcos_mme_inos_) */ 8 81 , 2 error_retry fixed bin(17) unal /* error retry counter */ 8 82 , 2 seq_no fixed bin(17) unal /* tape reel sequence no */ 8 83 ; 8 84 dcl fibptr ptr /* pointer to current fib in gcos_ext_stat_ */; 8 85 8 86 /* File usage classification constants: */ 8 87 dcl linked_file bit(1)static int options(constant)init("0"b); 8 88 dcl random_file bit(1)static int options(constant)init("1"b); 8 89 dcl read_file bit(1)static int options(constant)init("0"b); 8 90 dcl write_file bit(1)static int options(constant)init("1"b); 8 91 8 92 /* END INCLUDE FILE gcos_file_info_block_.incl.pl1 */ 3 110 3 111 3 112 dcl 1 gcos_ext_stat_$mc like mc /* machine condition from abort or fault */ ext; 9 1 /* */ 9 2 /* BEGIN INCLUDE FILE mc.incl.pl1 Created Dec 72 for 6180 - WSS. */ 9 3 /* Modified 06/07/76 by Greenberg for mc.resignal */ 9 4 /* Modified 07/07/76 by Morris for fault register data */ 9 5 /* Modified 08/28/80 by J. A. Bush for the DPS8/70M CVPU */ 9 6 /* Modified '82 to make values constant */ 9 7 9 8 /* words 0-15 pointer registers */ 9 9 9 10 dcl mcp ptr; 9 11 9 12 dcl 1 mc based (mcp) aligned, 9 13 2 prs (0:7) ptr, /* POINTER REGISTERS */ 9 14 (2 regs, /* registers */ 9 15 3 x (0:7) bit (18), /* index registers */ 9 16 3 a bit (36), /* accumulator */ 9 17 3 q bit (36), /* q-register */ 9 18 3 e bit (8), /* exponent */ 9 19 3 pad1 bit (28), 9 20 3 t bit (27), /* timer register */ 9 21 3 pad2 bit (6), 9 22 3 ralr bit (3), /* ring alarm register */ 9 23 9 24 2 scu (0:7) bit (36), 9 25 9 26 2 mask bit (72), /* mem controller mask at time of fault */ 9 27 2 ips_temp bit (36), /* Temporary storage for IPS info */ 9 28 2 errcode fixed bin (35), /* fault handler's error code */ 9 29 2 fim_temp, 9 30 3 unique_index bit (18) unal, /* unique index for restarting faults */ 9 31 3 resignal bit (1) unal, /* recompute signal name with fcode below */ 9 32 3 fcode bit (17) unal, /* fault code used as index to FIM table and SCT */ 9 33 2 fault_reg bit (36), /* fault register */ 9 34 2 pad2 bit (1), 9 35 2 cpu_type fixed bin (2) unsigned, /* L68 = 0, DPS8/70M = 1 */ 9 36 2 ext_fault_reg bit (15), /* extended fault reg for DPS8/70M CPU */ 9 37 2 fault_time bit (54), /* time of fault */ 9 38 9 39 2 eis_info (0:7) bit (36)) unaligned; 9 40 9 41 9 42 dcl (apx fixed bin init (0), 9 43 abx fixed bin init (1), 9 44 bpx fixed bin init (2), 9 45 bbx fixed bin init (3), 9 46 lpx fixed bin init (4), 9 47 lbx fixed bin init (5), 9 48 spx fixed bin init (6), 9 49 sbx fixed bin init (7)) internal static options (constant); 9 50 9 51 9 52 9 53 9 54 dcl scup ptr; 9 55 9 56 dcl 1 scu based (scup) aligned, /* SCU DATA */ 9 57 9 58 9 59 /* WORD (0) */ 9 60 9 61 (2 ppr, /* PROCEDURE POINTER REGISTER */ 9 62 3 prr bit (3), /* procedure ring register */ 9 63 3 psr bit (15), /* procedure segment register */ 9 64 3 p bit (1), /* procedure privileged bit */ 9 65 9 66 2 apu, /* APPENDING UNIT STATUS */ 9 67 3 xsf bit (1), /* ext seg flag - IT modification */ 9 68 3 sdwm bit (1), /* match in SDW Ass. Mem. */ 9 69 3 sd_on bit (1), /* SDW Ass. Mem. ON */ 9 70 3 ptwm bit (1), /* match in PTW Ass. Mem. */ 9 71 3 pt_on bit (1), /* PTW Ass. Mem. ON */ 9 72 3 pi_ap bit (1), /* Instr Fetch or Append cycle */ 9 73 3 dsptw bit (1), /* Fetch of DSPTW */ 9 74 3 sdwnp bit (1), /* Fetch of SDW non paged */ 9 75 3 sdwp bit (1), /* Fetch of SDW paged */ 9 76 3 ptw bit (1), /* Fetch of PTW */ 9 77 3 ptw2 bit (1), /* Fetch of pre-paged PTW */ 9 78 3 fap bit (1), /* Fetch of final address paged */ 9 79 3 fanp bit (1), /* Fetch of final address non-paged */ 9 80 3 fabs bit (1), /* Fetch of final address absolute */ 9 81 9 82 2 fault_cntr bit (3), /* number of retrys of EIS instructions */ 9 83 9 84 9 85 /* WORD (1) */ 9 86 9 87 2 fd, /* FAULT DATA */ 9 88 3 iro bit (1), /* illegal ring order */ 9 89 3 oeb bit (1), /* out of execute bracket */ 9 90 3 e_off bit (1), /* no execute */ 9 91 3 orb bit (1), /* out of read bracket */ 9 92 3 r_off bit (1), /* no read */ 9 93 3 owb bit (1), /* out of write bracket */ 9 94 3 w_off bit (1), /* no write */ 9 95 3 no_ga bit (1), /* not a gate */ 9 96 3 ocb bit (1), /* out of call bracket */ 9 97 3 ocall bit (1), /* outward call */ 9 98 3 boc bit (1), /* bad outward call */ 9 99 3 inret bit (1), /* inward return */ 9 100 3 crt bit (1), /* cross ring transfer */ 9 101 3 ralr bit (1), /* ring alarm register */ 9 102 3 am_er bit (1), /* associative memory fault */ 9 103 3 oosb bit (1), /* out of segment bounds */ 9 104 3 paru bit (1), /* processor parity upper */ 9 105 3 parl bit (1), /* processor parity lower */ 9 106 3 onc_1 bit (1), /* op not complete type 1 */ 9 107 3 onc_2 bit (1), /* op not complete type 2 */ 9 108 9 109 2 port_stat, /* PORT STATUS */ 9 110 3 ial bit (4), /* illegal action lines */ 9 111 3 iac bit (3), /* illegal action channel */ 9 112 3 con_chan bit (3), /* connect channel */ 9 113 9 114 2 fi_num bit (5), /* (fault/interrupt) number */ 9 115 2 fi_flag bit (1), /* 1 => fault, 0 => interrupt */ 9 116 9 117 9 118 /* WORD (2) */ 9 119 9 120 2 tpr, /* TEMPORARY POINTER REGISTER */ 9 121 3 trr bit (3), /* temporary ring register */ 9 122 3 tsr bit (15), /* temporary segment register */ 9 123 9 124 2 pad2 bit (9), 9 125 9 126 2 cpu_no bit (3), /* CPU number */ 9 127 9 128 2 delta bit (6), /* tally modification DELTA */ 9 129 9 130 9 131 /* WORD (3) */ 9 132 9 133 2 word3 bit (18), 9 134 9 135 2 tsr_stat, /* TSR STATUS for 1,2,&3 word instructions */ 9 136 3 tsna, /* Word 1 status */ 9 137 4 prn bit (3), /* Word 1 PR number */ 9 138 4 prv bit (1), /* Word 1 PR valid bit */ 9 139 3 tsnb, /* Word 2 status */ 9 140 4 prn bit (3), /* Word 2 PR number */ 9 141 4 prv bit (1), /* Word 2 PR valid bit */ 9 142 3 tsnc, /* Word 3 status */ 9 143 4 prn bit (3), /* Word 3 PR number */ 9 144 4 prv bit (1), /* Word 3 PR valid bit */ 9 145 9 146 2 tpr_tbr bit (6), /* TPR.TBR field */ 9 147 9 148 9 149 /* WORD (4) */ 9 150 9 151 2 ilc bit (18), /* INSTRUCTION COUNTER */ 9 152 9 153 2 ir, /* INDICATOR REGISTERS */ 9 154 3 zero bit (1), /* zero indicator */ 9 155 3 neg bit (1), /* negative indicator */ 9 156 3 carry bit (1), /* carryry indicator */ 9 157 3 ovfl bit (1), /* overflow indicator */ 9 158 3 eovf bit (1), /* eponent overflow */ 9 159 3 eufl bit (1), /* exponent underflow */ 9 160 3 oflm bit (1), /* overflow mask */ 9 161 3 tro bit (1), /* tally runout */ 9 162 3 par bit (1), /* parity error */ 9 163 3 parm bit (1), /* parity mask */ 9 164 3 bm bit (1), /* ^bar mode */ 9 165 3 tru bit (1), /* truncation mode */ 9 166 3 mif bit (1), /* multi-word instruction mode */ 9 167 3 abs bit (1), /* absolute mode */ 9 168 3 pad bit (4), 9 169 9 170 9 171 /* WORD (5) */ 9 172 9 173 2 ca bit (18), /* COMPUTED ADDRESS */ 9 174 9 175 2 cu, /* CONTROL UNIT STATUS */ 9 176 3 rf bit (1), /* on first cycle of repeat instr */ 9 177 3 rpt bit (1), /* repeat instruction */ 9 178 3 rd bit (1), /* repeat double instruction */ 9 179 3 rl bit (1), /* repeat link instruciton */ 9 180 3 pot bit (1), /* IT modification */ 9 181 3 pon bit (1), /* return type instruction */ 9 182 3 xde bit (1), /* XDE from Even location */ 9 183 3 xdo bit (1), /* XDE from Odd location */ 9 184 3 poa bit (1), /* operation preparation */ 9 185 3 rfi bit (1), /* tells CPU to refetch instruction */ 9 186 3 its bit (1), /* ITS modification */ 9 187 3 if bit (1), /* fault occured during instruction fetch */ 9 188 9 189 2 cpu_tag bit (6)) unaligned, /* computed tag field */ 9 190 9 191 9 192 /* WORDS (6,7) */ 9 193 9 194 2 even_inst bit (36), /* even instruction of faulting pair */ 9 195 9 196 2 odd_inst bit (36); /* odd instruction of faulting pair */ 9 197 9 198 9 199 9 200 9 201 9 202 9 203 /* ALTERNATE SCU DECLARATION */ 9 204 9 205 9 206 dcl 1 scux based (scup) aligned, 9 207 9 208 (2 pad0 bit (36), 9 209 9 210 2 fd, /* GROUP II FAULT DATA */ 9 211 3 isn bit (1), /* illegal segment number */ 9 212 3 ioc bit (1), /* illegal op code */ 9 213 3 ia_am bit (1), /* illegal address - modifier */ 9 214 3 isp bit (1), /* illegal slave procedure */ 9 215 3 ipr bit (1), /* illegal procedure */ 9 216 3 nea bit (1), /* non existent address */ 9 217 3 oobb bit (1), /* out of bounds */ 9 218 3 pad bit (29), 9 219 9 220 2 pad2 bit (36), 9 221 9 222 2 pad3a bit (18), 9 223 9 224 2 tsr_stat (0:2), /* TSR STATUS as an ARRAY */ 9 225 3 prn bit (3), /* PR number */ 9 226 3 prv bit (1), /* PR valid bit */ 9 227 9 228 2 pad3b bit (6)) unaligned, 9 229 9 230 2 pad45 (0:1) bit (36), 9 231 9 232 2 instr (0:1) bit (36); /* Instruction ARRAY */ 9 233 9 234 9 235 9 236 /* END INCLUDE FILE mc.incl.pl1 */ 3 113 3 114 3 115 dcl 1 gcos_ext_stat_$gcos_gtss ext 3 116 , 3 gcos_gtss_ext 3 117 , 4 u_state_ptr ptr 3 118 , 4 snumb_index fixed bin(24) 3 119 , 4 home_path char(168) 3 120 ; 3 121 3 122 /* END INCLUDE FILE gcos_ext_stat_.incl.pl1 */ 358 359 10 1 /* BEGIN INCLUDE FILE gcos_contrl_tables_data.incl.pl1 (Wardd Multics) 07/26/81 1351.1 mst Sun */ 10 2 10 3 dcl 1 atentry aligned based (actptr) /* structure describing activity table entry */ 10 4 , 2 act_switches bit(18) unal /* misc switches used in processing the card */ 10 5 , 2 vib_offset fixed bin(18)unsigned unal /* offset from base of gcos_control_tables_ of associated */ 10 6 /* variable information block */ 10 7 , 2 nondolr char(4) /* file where following non$ cards */ 10 8 /* are to be written */ 10 9 , 2 canon_sw fixed bin(35) /* setting for canonicalizer switch */ 10 10 ; 10 11 10 12 dcl 1 optab (j) aligned based (actptr) /* struc. descr. option table entry */ 10 13 , 2 option_type char(8) /* option name for lookup */ 10 14 , 2 idx fixed bin(18)unsigned unal /* index for use in op_lbl xfer vector */ 10 15 , 2 bits bit(18) unal /* setting for psw */ 10 16 ; 10 17 10 18 /* option types. Indexed by number in */ 10 19 /* option table entry. */ 10 20 10 21 dcl 1 vib aligned based (actptr) /* structure describing fixed portion of */ 10 22 /* variable information block */ 10 23 , 2 activity char(8) /* activity name */ 10 24 , 2 psw bit(18) unal /* initial psw settings */ 10 25 , 2 time fixed bin(18)unsigned unal /* time limit */ 10 26 , 2 storage fixed bin(18)unsigned unal /* storage limit */ 10 27 , 2 sysout fixed bin(18)unsigned unal /* sysout line limit */ 10 28 , 2 op_ofs fixed bin(18)unsigned unal /* option table offset in gcos_control_tables_ */ 10 29 , 2 op_len fixed bin(18)unsigned unal /* length of option table */ 10 30 ; 10 31 10 32 dcl 1 vib_file aligned based (actptr) /* structure for each entry in variable */ 10 33 /* portion of variable information block */ 10 34 , 2 control bit(18) unal /* fib settings */ 10 35 , 2 filecode char(2) unal /* file code of file req'd by activity */ 10 36 ; 10 37 10 38 /* END INCLUDE FILE gcos_contrl_tables_data.incl.pl1 */ 360 361 end gcos_cc_activity_cards_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 09/09/83 1006.8 gcos_cc_activity_cards_.pl1 >spec>on>09/07/83-gcos>gcos_cc_activity_cards_.pl1 354 1 03/27/82 0424.8 gcos_restart_control_.incl.pl1 >ldd>include>gcos_restart_control_.incl.pl1 356 2 09/08/83 1229.3 gcos_control_tables_.incl.pl1 >spec>on>09/07/83-gcos>gcos_control_tables_.incl.pl1 358 3 09/08/83 1229.3 gcos_ext_stat_.incl.pl1 >spec>on>09/07/83-gcos>gcos_ext_stat_.incl.pl1 3-100 4 03/27/82 0424.8 gcos_save_mc.incl.pl1 >ldd>include>gcos_save_mc.incl.pl1 3-104 5 03/27/82 0424.8 gcos_fct_entry.incl.pl1 >ldd>include>gcos_fct_entry.incl.pl1 3-108 6 03/27/82 0424.8 gcos_save_data_entry.incl.pl1 >ldd>include>gcos_save_data_entry.incl.pl1 6-29 7 09/08/83 1230.3 gcos_flags.incl.pl1 >spec>on>09/07/83-gcos>gcos_flags.incl.pl1 3-110 8 03/27/82 0424.8 gcos_file_info_block_.incl.pl1 >ldd>include>gcos_file_info_block_.incl.pl1 3-113 9 08/17/83 1135.7 mc.incl.pl1 >ldd>include>mc.incl.pl1 360 10 03/27/82 0424.8 gcos_contrl_tables_data.incl.pl1 >ldd>include>gcos_contrl_tables_data.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. END_OF_CARD constant fixed bin(24,0) initial dcl 324 ref 264 NULL_FIELD constant fixed bin(24,0) initial dcl 340 ref 269 actid 2 000074 external static char(8) level 3 dcl 3-106 set ref 53* activ 0(04) 000074 external static bit(1) level 4 packed unaligned dcl 3-106 set ref 49* activity based char(8) level 2 dcl 10-21 ref 81 activity_no 26 000074 external static fixed bin(24,0) level 3 dcl 3-106 set ref 50 50* 58 actptr 000100 automatic pointer dcl 320 set ref 68* 69* 69 73 80* 80 81 82 83 88 89 90 93 94 98* 98 100 102 102 105 105 109 114 115 116 117 120* 120 260* 272 273 273 275 addr builtin function dcl 321 ref 68 80 260 305 addrel builtin function dcl 322 ref 69 98 120 atentry based structure level 1 dcl 10-3 bits 2(18) based bit(18) array level 2 packed unaligned dcl 10-12 ref 273 275 card parameter char(80) unaligned dcl 44 set ref 6 197* 200* 263* console 60(08) based bit(1) level 4 packed unaligned dcl 8-10 set ref 127* control based bit(18) level 2 packed unaligned dcl 10-32 ref 102 105 114 115 116 117 disp 60(14) based bit(2) level 4 packed unaligned dcl 8-10 set ref 114* 128* 140* 159* divide builtin function dcl 323 ref 259 dstar 0(23) 000074 external static bit(1) level 4 packed unaligned dcl 3-106 set ref 61* 219* 265* 297 298* execute 000064 constant char(80) initial unaligned dcl 325 set ref 152* fct 000072 external static structure array level 2 dcl 3-102 fct_entry based structure level 1 dcl 5-3 fib based structure level 1 dcl 8-10 fibptr 2 000072 external static pointer array level 3 in structure "gcos_ext_stat_$fct" dcl 3-102 in procedure "gcos_cc_activity_cards_" set ref 150* fibptr 000116 automatic pointer dcl 8-84 in procedure "gcos_cc_activity_cards_" set ref 109* 113 114 115 116 117 125* 127 128 135* 139* 140 142 149* 150 151 155* 156 158 159 fibs 322 000074 external static structure array level 3 dcl 3-106 ref 144 field 000102 automatic char(6) unaligned dcl 326 set ref 197* 203 263* 272 285 286 288 290 filecode 0(18) based char(2) level 2 in structure "vib_file" packed unaligned dcl 10-32 in procedure "gcos_cc_activity_cards_" set ref 100 102* 105 109* filecode 000072 external static char(2) array level 3 in structure "gcos_ext_stat_$fct" dcl 3-102 in procedure "gcos_cc_activity_cards_" set ref 145 147* fixed builtin function dcl 327 ref 117 flags based structure level 1 dcl 7-8 flgs 000074 external static structure level 3 dcl 3-106 gcos_control_tables_$ 000030 external static fixed bin(17,0) dcl 2-3 set ref 80 260 gcos_control_tables_$activity_table 000032 external static fixed bin(17,0) dcl 2-4 set ref 68 gcos_control_tables_$exc_offset 000034 external static fixed bin(17,0) dcl 2-7 ref 69 130 gcos_error_ 000010 constant entry external dcl 328 ref 200 gcos_et_$cc_missing_field 000012 external static fixed bin(35,0) dcl 329 set ref 200* gcos_ext_stat_$activity_card_num 000036 external static picture(4) unaligned dcl 3-15 set ref 64* gcos_ext_stat_$activity_name 000040 external static char(8) unaligned dcl 3-16 set ref 81* 203* gcos_ext_stat_$card_num 000042 external static picture(4) unaligned dcl 3-18 set ref 64 200* gcos_ext_stat_$default_nondollar 000044 external static char(2) unaligned dcl 3-20 set ref 73* gcos_ext_stat_$etc_filecode 000046 external static char(2) unaligned dcl 3-26 set ref 218* 299* gcos_ext_stat_$fct 000072 external static structure level 1 dcl 3-102 gcos_ext_stat_$ldrss 000050 external static fixed bin(24,0) dcl 3-38 set ref 95* gcos_ext_stat_$nondollar 000052 external static char(2) unaligned dcl 3-42 set ref 74* gcos_ext_stat_$nongcos 000054 external static char(2) unaligned dcl 3-43 set ref 72* 153* 227* 237* gcos_ext_stat_$rs 000056 external static pointer dcl 3-50 set ref 149 152* 156* 167* gcos_ext_stat_$save_data 000074 external static structure level 1 dcl 3-106 gcos_ext_stat_$saveseg_ptr 000060 external static pointer dcl 3-51 ref 55 285 286 288 290 gcos_ext_stat_$storage_limit 000062 external static fixed bin(19,0) dcl 3-60 set ref 89* gcos_ext_stat_$sysout_limit 000064 external static fixed bin(35,0) dcl 3-61 set ref 90* gcos_ext_stat_$sysout_lines 000066 external static fixed bin(35,0) dcl 3-62 set ref 91* gcos_ext_stat_$time_limit 000070 external static fixed bin(71,0) dcl 3-68 set ref 88* gcos_get_cc_field_ 000014 constant entry external dcl 330 ref 197 263 gcos_open_file_ 000016 constant entry external dcl 331 ref 109 125 135 139 155 gcos_open_file_$sysout 000020 constant entry external dcl 332 ref 102 123 gcos_record parameter char unaligned dcl 45 set ref 6 210* 305 314 314 gcos_record_word based bit(36) array unaligned dcl 333 ref 305 gcos_write_$bcd 000022 constant entry external dcl 334 ref 314 gcos_write_$ptr 000024 constant entry external dcl 335 ref 152 167 gcos_write_$record 000026 constant entry external dcl 336 ref 210 gein 60(13) based bit(1) level 4 packed unaligned dcl 8-10 set ref 151* i 000104 automatic fixed bin(24,0) dcl 337 set ref 144* 145* 147 148 150 271* 272 273 273 275* 303* 305 306* 306 310* 310 314 314 idx 2 based fixed bin(18,0) array level 2 packed unsigned unaligned dcl 10-12 ref 273 indicators 60 based structure level 2 dcl 8-10 indicators_word_1 60 based structure level 3 dcl 8-10 indx parameter fixed bin(24,0) dcl 46 ref 6 69 130 j 000105 automatic fixed bin(24,0) dcl 338 set ref 50* 52 259* 271 last_execute_act_no 25 000074 external static fixed bin(24,0) level 3 dcl 3-106 ref 58 lud 000106 automatic char(3) unaligned dcl 339 set ref 105* 107* 109* mc based structure level 1 dcl 9-12 na_hold 0(05) based bit(1) level 2 packed unaligned dcl 1-3 set ref 55* 285* 290* nj_restart based bit(1) level 2 packed unaligned dcl 1-3 set ref 286* 288* nondolr 1 based char(4) level 2 dcl 10-3 ref 73 nosave 0(10) 000074 external static bit(1) level 4 packed unaligned dcl 3-106 ref 55 284 op_len 4(18) based fixed bin(18,0) level 2 in structure "vib" packed unsigned unaligned dcl 10-21 in procedure "gcos_cc_activity_cards_" ref 94 op_len 000107 automatic fixed bin(18,0) unsigned dcl 341 in procedure "gcos_cc_activity_cards_" set ref 94* 259 op_ofs 4 based fixed bin(18,0) level 2 in structure "vib" packed unsigned unaligned dcl 10-21 in procedure "gcos_cc_activity_cards_" ref 93 op_ofs 000110 automatic fixed bin(18,0) unsigned dcl 342 in procedure "gcos_cc_activity_cards_" set ref 93* 260 optab based structure array level 1 dcl 10-12 option_type based char(8) array level 2 dcl 10-12 ref 272 pic 000111 automatic picture(2) unaligned dcl 343 set ref 52* 53 pointer builtin function dcl 344 ref 80 260 present 000112 automatic bit(1) unaligned dcl 345 set ref 109* 117 125* 135* 138 139* 155* psw 2 based bit(18) level 2 in structure "vib" packed unaligned dcl 10-21 in procedure "gcos_cc_activity_cards_" ref 82 83 psw 24 000074 external static bit(36) level 3 in structure "gcos_ext_stat_$save_data" dcl 3-106 in procedure "gcos_cc_activity_cards_" set ref 58* 82* 83* 273* 273 275* 275 read 60(09) based bit(1) level 4 packed unaligned dcl 8-10 set ref 113* restart_control based structure level 1 dcl 1-3 rtrn 000113 automatic fixed bin(17,0) dcl 346 set ref 197* 200 263* 264 269 save_data 000074 external static structure level 2 dcl 3-106 save_data_entry based structure level 1 dcl 6-5 save_machine_conditions based structure level 1 packed unaligned dcl 4-6 six_bcd_blanks 000063 constant bit(36) initial unaligned dcl 347 ref 305 size 67 based fixed bin(24,0) level 2 dcl 8-10 set ref 117* source 000037 constant char(80) initial unaligned dcl 349 set ref 167* storage 3 based fixed bin(18,0) level 2 packed unsigned unaligned dcl 10-21 ref 89 stream 3 based char(8) level 2 packed unaligned dcl 8-10 set ref 158* substr builtin function dcl 350 set ref 53* 58* 73 82* 82 83* 83 102 105 114 115 116 117 314 314 sysout 1 000072 external static bit(1) array level 3 in structure "gcos_ext_stat_$fct" packed unaligned dcl 3-102 in procedure "gcos_cc_activity_cards_" set ref 148* sysout 3(18) based fixed bin(18,0) level 2 in structure "vib" packed unsigned unaligned dcl 10-21 in procedure "gcos_cc_activity_cards_" ref 90 this_act_abort 0(26) 000074 external static bit(1) level 4 packed unaligned dcl 3-106 set ref 61* time 2(18) based fixed bin(18,0) level 2 packed unsigned unaligned dcl 10-21 ref 88 type 60(02) based bit(1) level 4 packed unaligned dcl 8-10 set ref 116* unspec builtin function dcl 351 set ref 48* used 60 based bit(1) level 4 packed unaligned dcl 8-10 set ref 142* vib based structure level 1 dcl 10-21 vib_file based structure level 1 dcl 10-32 vib_offset 0(18) based fixed bin(18,0) level 2 packed unsigned unaligned dcl 10-3 ref 80 write 60(10) based bit(1) level 4 packed unaligned dcl 8-10 set ref 115* write_etc 0(24) 000074 external static bit(1) level 4 packed unaligned dcl 3-106 set ref 61* 217* 265* 300* zeros 000114 automatic char(2) unaligned dcl 352 set ref 48* 100 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. abx internal static fixed bin(17,0) initial dcl 9-42 apx internal static fixed bin(17,0) initial dcl 9-42 bbx internal static fixed bin(17,0) initial dcl 9-42 bpx internal static fixed bin(17,0) initial dcl 9-42 gcos_control_tables_$cardtable external static char(8) array unaligned dcl 2-5 gcos_control_tables_$comp_offset external static fixed bin(17,0) dcl 2-6 gcos_control_tables_$filecard_count external static fixed bin(17,0) dcl 2-8 gcos_control_tables_$nonact external static fixed bin(17,0) dcl 2-9 gcos_control_tables_$tablelen external static fixed bin(17,0) dcl 2-10 gcos_control_tables_$tabstops external static fixed bin(17,0) dcl 2-11 gcos_control_tables_$totallen external static fixed bin(17,0) dcl 2-12 gcos_ext_stat_$abort_reason external static varying char(128) dcl 3-13 gcos_ext_stat_$abort_return external static label variable dcl 3-14 gcos_ext_stat_$activity_start_time external static fixed bin(71,0) dcl 3-17 gcos_ext_stat_$courtesy_call_control external static structure level 1 dcl 3-92 gcos_ext_stat_$dbs external static bit(1) array unaligned dcl 3-19 gcos_ext_stat_$dir_rings external static fixed bin(3,0) array dcl 3-21 gcos_ext_stat_$dpno external static varying char(100) dcl 3-22 gcos_ext_stat_$dpo external static varying char(100) dcl 3-23 gcos_ext_stat_$endfc external static char(2) unaligned dcl 3-24 gcos_ext_stat_$er external static pointer dcl 3-25 gcos_ext_stat_$gcos_gtss external static structure level 1 unaligned dcl 3-115 gcos_ext_stat_$gcos_slave_area_seg external static pointer dcl 3-27 gcos_ext_stat_$gf external static fixed bin(24,0) dcl 3-28 gcos_ext_stat_$incode external static fixed bin(24,0) dcl 3-29 gcos_ext_stat_$increment_hold external static fixed bin(24,0) dcl 3-30 gcos_ext_stat_$initial_cpu_time external static fixed bin(71,0) dcl 3-31 gcos_ext_stat_$input_segment_path external static varying char(168) dcl 3-32 gcos_ext_stat_$jcl_warnings external static fixed bin(24,0) dcl 3-33 gcos_ext_stat_$job_cpu_time external static fixed bin(71,0) dcl 3-34 gcos_ext_stat_$job_id external static varying char(18) dcl 3-35 gcos_ext_stat_$job_real_time external static fixed bin(71,0) dcl 3-36 gcos_ext_stat_$last_mme external static fixed bin(24,0) dcl 3-37 gcos_ext_stat_$max_activities external static fixed bin(24,0) dcl 3-39 gcos_ext_stat_$max_mem external static fixed bin(19,0) dcl 3-40 gcos_ext_stat_$mc external static structure level 1 unaligned dcl 3-112 gcos_ext_stat_$mme_rtrn external static label variable dcl 3-41 gcos_ext_stat_$normal_return external static label variable dcl 3-44 gcos_ext_stat_$patchfile_ptr external static pointer dcl 3-45 gcos_ext_stat_$pathname_prefix external static varying char(168) dcl 3-46 gcos_ext_stat_$pch external static pointer dcl 3-47 gcos_ext_stat_$pdir external static varying char(168) dcl 3-48 gcos_ext_stat_$prt external static pointer dcl 3-49 gcos_ext_stat_$save_dir external static varying char(168) dcl 3-52 gcos_ext_stat_$seg_rings external static fixed bin(3,0) array dcl 3-53 gcos_ext_stat_$sig_ptr external static pointer dcl 3-54 gcos_ext_stat_$skip_umc external static bit(1) unaligned dcl 3-55 gcos_ext_stat_$snumb external static bit(30) dcl 3-56 gcos_ext_stat_$sought_label external static char(8) unaligned dcl 3-57 gcos_ext_stat_$statistics external static fixed bin(24,0) array dcl 3-58 gcos_ext_stat_$stop_code external static fixed bin(24,0) dcl 3-59 gcos_ext_stat_$system_free_pointer external static pointer dcl 3-63 gcos_ext_stat_$tape_buffer_size external static fixed bin(35,0) dcl 3-64 gcos_ext_stat_$temp_dir external static varying char(168) dcl 3-65 gcos_ext_stat_$temp_seg_ptr external static pointer dcl 3-66 gcos_ext_stat_$termination_code external static bit(18) unaligned dcl 3-67 gcos_ext_stat_$userid external static char(12) unaligned dcl 3-69 gcos_ext_stat_$validation_level external static fixed bin(3,0) dcl 3-70 lbx internal static fixed bin(17,0) initial dcl 9-42 linked_file internal static bit(1) initial unaligned dcl 8-87 lpx internal static fixed bin(17,0) initial dcl 9-42 mcp automatic pointer dcl 9-10 random_file internal static bit(1) initial unaligned dcl 8-88 read_file internal static bit(1) initial unaligned dcl 8-89 sbx internal static fixed bin(17,0) initial dcl 9-42 scu based structure level 1 dcl 9-56 scup automatic pointer dcl 9-54 scux based structure level 1 dcl 9-206 size builtin function dcl 348 spx internal static fixed bin(17,0) initial dcl 9-42 write_file internal static bit(1) initial unaligned dcl 8-90 NAMES DECLARED BY EXPLICIT CONTEXT. eval_loop 001161 constant label dcl 262 ref 269 277 293 316 evaluate 001147 constant label dcl 245 ref 161 190 204 221 231 239 gcos_cc_activity_cards_ 000162 constant entry external dcl 6 rs_hit 000674 constant label dcl 147 ref 145 trunc_loop 001363 constant label dcl 304 ref 307 unknown_option 001347 constant label dcl 296 ref 290 wrapup 000000 constant label array(0:30) dcl 135 ref 130 NAME DECLARED BY CONTEXT OR IMPLICATION. hbound builtin function ref 144 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1762 2060 1451 1772 Length 2540 1451 76 443 311 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME gcos_cc_activity_cards_ 121 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME gcos_cc_activity_cards_ 000100 actptr gcos_cc_activity_cards_ 000102 field gcos_cc_activity_cards_ 000104 i gcos_cc_activity_cards_ 000105 j gcos_cc_activity_cards_ 000106 lud gcos_cc_activity_cards_ 000107 op_len gcos_cc_activity_cards_ 000110 op_ofs gcos_cc_activity_cards_ 000111 pic gcos_cc_activity_cards_ 000112 present gcos_cc_activity_cards_ 000113 rtrn gcos_cc_activity_cards_ 000114 zeros gcos_cc_activity_cards_ 000116 fibptr gcos_cc_activity_cards_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_cs call_ext_out_desc return mpfx2 shorten_stack ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. gcos_error_ gcos_get_cc_field_ gcos_open_file_ gcos_open_file_$sysout gcos_write_$bcd gcos_write_$ptr gcos_write_$record THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. gcos_control_tables_$ gcos_control_tables_$activity_table gcos_control_tables_$exc_offset gcos_et_$cc_missing_field gcos_ext_stat_$activity_card_num gcos_ext_stat_$activity_name gcos_ext_stat_$card_num gcos_ext_stat_$default_nondollar gcos_ext_stat_$etc_filecode gcos_ext_stat_$fct gcos_ext_stat_$ldrss gcos_ext_stat_$nondollar gcos_ext_stat_$nongcos gcos_ext_stat_$rs gcos_ext_stat_$save_data gcos_ext_stat_$saveseg_ptr gcos_ext_stat_$storage_limit gcos_ext_stat_$sysout_limit gcos_ext_stat_$sysout_lines gcos_ext_stat_$time_limit LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 6 000156 48 000175 49 000177 50 000201 52 000206 53 000216 55 000221 58 000227 61 000233 64 000241 68 000243 69 000245 72 000253 73 000255 74 000260 80 000262 81 000270 82 000275 83 000302 88 000304 89 000311 90 000314 91 000317 93 000320 94 000323 95 000326 98 000327 100 000331 102 000342 105 000367 107 000376 109 000400 113 000427 114 000432 115 000441 116 000446 117 000453 120 000466 121 000471 123 000472 125 000513 127 000544 128 000547 130 000553 135 000560 138 000606 139 000611 140 000642 141 000647 142 000650 144 000653 145 000661 146 000672 147 000674 148 000702 149 000704 150 000707 151 000711 152 000713 153 000735 155 000740 156 000763 158 000766 159 000771 161 000775 167 000776 190 001020 197 001021 200 001041 203 001074 204 001103 210 001104 217 001131 218 001134 219 001136 221 001140 227 001141 231 001143 237 001144 239 001146 245 001147 259 001150 260 001153 262 001161 263 001163 264 001205 265 001210 266 001215 269 001216 271 001220 272 001227 273 001242 275 001254 277 001265 280 001266 284 001270 285 001274 286 001310 288 001320 290 001332 293 001346 296 001347 297 001350 298 001353 299 001355 300 001357 303 001361 304 001363 305 001364 306 001375 307 001377 310 001400 314 001404 315 001440 316 001441 ----------------------------------------------------------- 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