COMPILATION LISTING OF SEGMENT gfms_task_block_record_ Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 12/10/84 1210.7 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 gfms_task_block_record_: proc (ms); 7 8 /* Display task block record information. 9* "ms" is set to "1"b if tape is a master save, 10* or "0"b if a user save (any other type of save is 11* reported and processing discontinued). 12* 13* Author: Dave Ward 10/01/80 14* Change: Dave Ward 10/03/80 compensated for words5_6 not 0 as advertised. 15**/ 16 dcl ms bit(1)parm; 17 call iox_$read_record ( 18 cbp /* (input) pointer to control block. */ 19 , addr (tbr_space) /* (input) record buffer. */ 20 , size (tbr_space)*4 /* (input) buffer length in bytes. */ 21 , nbr /* (output) number of bytes read. */ 22 , code /* (output) I/O system status. */ 23 ); 24 if code ^= 0 then 25 if code ^= error_table_$long_record then do; 26 call com_err_ ( 27 code 28 , "gfms_task_block_record_" 29 , "Attempting to read task block record." 30 ||"^/Tape status ^4.3b" 31 ||"^/buffer length ^i (bytes)." 32 ||"^/bytes read ^i." 33 ||"^/attach description ""^a""" 34 , gfms_tape_status_ (cbp) 35 , size (tbr_space)*4 36 , nbr 37 , attach_description 38 ); 39 fail: ; 40 signal cond (gfms_fail); 41 end; 42 43 /* Assure length in words is conistent. */ 44 if mod (nbr, 4) ^= 0 then 45 call com_err_ ( 46 0 47 , "gfms_task_block_record_" 48 , "Bytes read (^i) not word modulo, will truncate to word and continue." 49 , nbr 50 ); 51 nwr = divide (nbr, 4, 17); /* Number of words read. */ 52 nw = nwr-1; /* upper bound of tbr structure. */ 53 54 call ioa ("^|TASK BLOCK RECORD INFORMATION (block 2):"); 55 if word0.b00_17 = 2 /* Must be block 2 of record. */ 56 & word1.b18_35 = "0"b 57 & word2.savhdr = "622165302451"b3 then do; /* bcd SAVHDR */ 58 call ioa ("block_size^4(.^) ^i", block_size); 59 call ioa ("record_size^3(.^) ^i", record_size); 60 call ioa ("date^10(.^) ^a", gfms_date_ (date)); 61 call ioa ("clock_pulses^2(.^) ^i", clock_pulses); 62 rw = nwr - 7; /* Words remaining for copy of task block. */ 63 64 sqll = rw - 12 - 1; /* Words remaining for qualifier list. */ 65 66 /* Verify "some" FACT fields. */ 67 if task_header = 1 68 & word0.b18_35 = "0"b 69 & type_code = 10 70 & serial_num = (10)"1"b3 71 & subtask_header = 2 72 & word3.b18_35 = "0"b 73 & report_code = 33 74 & file_code = "4754"b3 /* bcd "P*" */ 75 & last_word.b00_17 = (6)"7"b3 76 & last_word.b18_35 = "0"b then do; /* FACT constants as expected. */ 77 call ioa (" FACT overlay info:"); 78 if subtask_code = 1 then do; 79 ms = "1"b; /* Master save. */ 80 call ioa (" MASTER SAVE"); 81 end; 82 else 83 if subtask_code = 2 then do; 84 ms = "0"b; /* User save. */ 85 call ioa (" USER SAVE"); 86 end; 87 else do; 88 call ioa (" Subtask code ^i.^/ TYPE NOT PROCESSED BY THIS COMMAND, TERMINATING." 89 , subtask_code 90 ); 91 goto fail; 92 end; 93 call ioa (" subtask options ^6.3b", string (subtask_options)); 94 call ioa (" user ^a", gfms_ascii_ ((user_name))); 95 call ioa (" qualifier list:"); 96 i = 1; 97 do while (i <= sqll); 98 if subtask_qualifier_list (i).b00_17 = 3 then do; /* => subtask qualifier. */ 99 j = subtask_qualifier_list (i).b18_35; /* Qualifier code. */ 100 if (j<1) | (j>10) then do; 101 call ioa (" QUALIFIER CODE (^i) OUT OF RANGE 1 to 10.", j); 102 goto dump_fact; 103 end; 104 call ioa_nnl ("^2x[^4i]^1x", i); 105 i = i+1; 106 goto stq (j); 107 108 stq (01): ; 109 call ioa ("(01) User Save."); 110 do while (i <= sqll); 111 if subtask_word (i) = (12)"7"b3 then do; 112 i = i+1; 113 goto cont; 114 end; 115 call ioa ( 116 "^14x^6.3b ^6.3b" 117 , substr (subtask_word (i), 01, 18) 118 , substr (subtask_word (i), 19, 18) 119 ); 120 i = i+1; 121 end; 122 123 off_end: ; 124 call ioa ("EXCEEDED END OF SUBTASK LIST (^i entries)", sqll); 125 goto dump_fact; 126 127 stq (02): ; 128 call ioa ("(02) Master Save DON'T DO or DO ONLY names"); 129 display_names: ; 130 do while (i <= sqll); 131 if subtask_word (i) = (12)"7"b3 then do; 132 i = i+1; 133 goto cont; 134 end; 135 call ioa ("^14x^a", gfms_ascii_ (Name)); 136 i = i+2; 137 end; 138 goto off_end; 139 140 stq (03): ; 141 call ioa ("(03) Device Names"); 142 do while (i <= sqll); 143 if subtask_word (i) = (12)"7"b3 then do; 144 i = i+1; 145 goto cont; 146 end; 147 call ioa ("^14x^a", gfms_ascii_ (substr (subtask_word (i), 1, 18))); 148 i = i+1; 149 end; 150 goto off_end; 151 152 stq (04): ; 153 call ioa ("(^2i) -NO DISPLAY-"); 154 display_word: ; 155 do while (i <= sqll); 156 if subtask_word (i) = (12)"7"b3 then do; 157 i = i+1; 158 goto cont; 159 end; 160 call ioa ("^14x^12.3b", subtask_word (i)); 161 i = i+1; 162 end; 163 goto cont; 164 165 stq (05): ; 166 call ioa ("(05) New Names"); 167 goto display_names; 168 169 stq (06): ; 170 call ioa ("(06) Pack Identification"); 171 goto display_word; 172 173 stq (07): ; 174 call ioa ("(07) ALL"); 175 call ioa ( 176 "(07) Date ^6a Time ^6a" 177 , gfms_date_ (Date (i)) 178 , gfms_ascii_ (Time (i)) 179 ); 180 i = i+1; 181 goto cont; 182 183 stq (08): ; 184 call ioa ("(08) ILLEGAL Qualifier Code."); 185 goto dump_fact; 186 187 stq (09): ; 188 call ioa ("(09) SMC Sections ^32b", subtask_word (i)); 189 i = i+1; 190 goto cont; 191 192 stq (10): ; 193 call ioa ( 194 "(10) Journal Search ^6a ^6a" 195 , gfms_date_ (Date (i)) 196 , gfms_ascii_ (Time (i)) 197 ); 198 i = i+2; 199 goto cont; 200 201 cont: ; 202 203 end; 204 end; 205 end; 206 else do; /* FACT constants not as expected. */ 207 call ioa ("FACT constants not as expected (octal dump):"); 208 dump_fact: ; 209 do i = 0 to hbound (fact_word, 1) by 4; 210 call ioa_nnl ("^3i. ", i); 211 do j = i to (i+3); 212 call ioa_nnl (" ^12.3b", fact_word (j)); 213 end; 214 call ioa_nnl ("^/"); 215 end; 216 goto fail; 217 end; 218 end; 219 else do; /* Constant(s) improper. */ 220 call ioa ("constants not as expected (octal dump):"); 221 do i = 0 to hbound (word, 1) by 4; 222 call ioa_nnl ("^3i. ", i); 223 do j = i to (i+3); 224 call ioa_nnl (" ^12.3b", word (j)); 225 end; 226 call ioa_nnl ("^/"); 227 end; 228 goto fail; 229 end; 230 return; 231 232 /* Variables for gfms_task_block_record_: */ 233 /* IDENTIFIER ATTRIBUTES */ 234 dcl code fixed bin(35); 235 dcl com_err_ entry() options(variable); 236 dcl error_table_$long_record fixed bin(35) ext static; 237 dcl fact_word (0:size(FACT_Overlay_Interface)-1)bit(36)aligned based(addr(FACT_Overlay_Interface)); 238 dcl gfms_ascii_ entry(bit(*))returns(char(*)); 239 dcl gfms_date_ entry (bit(36) aligned) returns(char(8)); 240 dcl gfms_fail condition ext; 241 dcl gfms_tape_status_ entry (ptr) returns(bit(12)); 242 dcl i fixed bin; 243 dcl ioa_ entry() options(variable); 244 dcl ioa_$nnl entry() options(variable); 245 dcl iox_$read_record entry (ptr, ptr, fixed bin(21), fixed bin(21), fixed bin(35)); 246 dcl j fixed bin; 247 dcl l fixed bin; 248 dcl Name bit(72)based(addr(subtask_qualifier_list(i))); 249 dcl nbr fixed bin(21); 250 dcl nw fixed bin; 251 dcl nwr fixed bin; 252 dcl rw fixed bin; 253 dcl size builtin; 254 dcl sqll fixed bin; 255 dcl subtask_word (sqll)bit(36)based(addr(subtask_qualifier_list)); 256 dcl tbr_space (1117)bit(36)aligned; 257 dcl word (0:nw)bit(36)aligned based(addr(tbr)); 258 259 /* See DD14, Rev 1 (June 1976) SYSTEM TABLES 260* Page 16-25 TASK BLOCK RECORD (<=1117 words) 261**/ 262 dcl 1 tbr aligned based(addr(tbr_space)) 263 , 3 word0 264 , 4 b00_17 fixed bin(18)unsigned unal 265 , 4 block_size fixed bin(18)unsigned unal 266 , 3 word1 267 , 4 record_size fixed bin(18)unsigned unal 268 , 4 b18_35 bit(18)unal 269 , 3 word2 270 , 4 savhdr bit(36) /* bcd constant "SAVHDR" */ 271 , 3 word3 272 , 4 date bit(36) /* bcd MMDDYY */ 273 , 3 word4 274 , 4 clock_pulses fixed bin(36)unsigned unal 275 , 3 words5_6 bit(72) /* should be zero. */ 276 , 3 words7_nw (7:nw)bit(36) /* Copy of task block. */ 277 ; 278 279 /* See DD14, Rev 1 (June 1976) SYSTEM TABLES 280* Page 16-30 FACT Overlay Interface 281**/ 282 dcl 1 FACT_Overlay_Interface aligned based(addr(tbr.words7_nw)) 283 , 3 word0 284 , 4 task_header fixed bin(18)unsigned unal 285 , 4 b18_35 bit(18)unal 286 , 3 word1 287 , 4 restore bit(01)unal 288 , 4 b01_17 bit(17)unal /* Reserved for GCOS. */ 289 , 4 task_ordinal fixed bin(18)unsigned unal 290 , 3 word2 291 , 4 type_code fixed bin(06)unsigned unal /* 10 decimal. */ 292 , 4 serial_num bit(30)unal /* octal 1's. */ 293 , 3 word3 294 , 4 subtask_header fixed bin(18)unsigned unal /* 2. */ 295 , 4 b18_35 bit(18)unal 296 , 3 word4 297 , 4 subtask_code fixed bin(18)unsigned unal 298 , 4 subtask_options (18:35)bit(1)unal 299 , 3 word5 bit(36) /* Reserved. */ 300 , 3 words6_7 301 , 4 user_name bit(72) 302 , 3 words8_9 bit(72) /* Reserved. */ 303 , 3 word10 304 , 4 address_of_return_pair bit(18)unal 305 , 4 b18_35 bit(18)unal /* Reserved. */ 306 , 3 word11 307 , 4 report_code fixed bin(18)unsigned unal /* decimal 33. */ 308 , 4 b18_23 bit(06)unal /* Reserved. */ 309 , 4 file_code bit(12)unal /* P*. */ 310 , 3 word12 311 , 4 subtask_qualifier_list (sqll) 312 , 5 b00_17 fixed bin(18)unsigned unal 313 , 5 b18_35 fixed bin(18)unsigned unal 314 , 3 last_word 315 , 4 b00_17 bit(18)unal 316 , 4 b18_35 bit(18)unal 317 ; 318 319 dcl 1 stq_ovl (sqll)aligned based(addr(subtask_qualifier_list)) 320 , 2 Date bit(36) 321 , 2 Time bit(36)unal 322 ; 323 1 1 /* BEGIN INCLUDE FILE gfms_ext.incl.pl1 (Wardd Multics) 10/07/80 2142.2 mst Tue */ 1 2 /* Modified by: S. C. Akers 02/08/82 Add gfms_ext$working_dir, 1 3* mapping_rule, 1 4* umc_name 1 5* Modified Ron Barstad 83-06-03 attach_desc from 40 to 80 char 1 6**/ 1 7 1 8 dcl 1 gfms_ext$print_routines aligned ext 1 9 , 3 ioa entry variable options(variable) 1 10 , 3 ioa_nnl entry variable options(variable) 1 11 ; 1 12 1 13 dcl 1 gfms_ext$temp_segs aligned ext 1 14 , 3 dtp ptr 1 15 , 3 nlp ptr 1 16 , 3 inp ptr 1 17 ; 1 18 1 19 dcl 1 gfms_ext$tape_file aligned ext 1 20 , 3 cbp ptr 1 21 , 3 attach_description char(80)unal 1 22 , 3 density 1 23 , 4 ftd fixed bin /* First tape density to attempt. */ 1 24 , 4 ltd fixed bin /* Last tape density to attempt. */ 1 25 , 3 tape_reel_information 1 26 , 4 reel_serial_num char(6) 1 27 , 4 file_serial_num char(6) 1 28 , 4 reel_sequence_num char(6) 1 29 ; 1 30 1 31 dcl 1 gfms_ext$options aligned ext 1 32 , 3 close bit(1)unal /* perform iox close. */ 1 33 , 3 detach bit(1)unal /* perform iox detach. */ 1 34 , 3 dump bit(1)unal /* dump tape records/information. */ 1 35 , 3 gf bit(1)unal /* provide gtss file attributes. */ 1 36 , 3 prfn bit(1)unal /* print file names. */ 1 37 , 3 scan_ss bit(1)unal /* scan substructure, display, quit. */ 1 38 , 3 tll bit(1)unal /* print totals of llinks. */ 1 39 , 3 unload bit(1)unal /* unload files. */ 1 40 , 3 NOT_IN_USE bit(28)unal 1 41 ; 1 42 1 43 dcl gfms_ext$working_dir char (168) var ext static; /* Where to restore the files. 1 44* It may be the user's working 1 45* directory, or the UMC or SMC directory. */ 1 46 1 47 dcl gfms_ext$mapping_rule char(3) external static; 1 48 1 49 dcl gfms_ext$umc_name char(12) external static; 1 50 1 51 /* END INCLUDE FILE gfms_ext.incl.pl1 */ 324 325 end gfms_task_block_record_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 12/10/84 1042.0 gfms_task_block_record_.pl1 >spec>on>7105>gfms_task_block_record_.pl1 324 1 10/24/83 1642.4 gfms_ext.incl.pl1 >ldd>include>gfms_ext.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. Date based bit(36) array level 2 dcl 319 set ref 175* 175* 193* 193* FACT_Overlay_Interface based structure level 1 dcl 282 set ref 209 209 212 Name based bit(72) unaligned dcl 248 set ref 135* Time 1 based bit(36) array level 2 packed unaligned dcl 319 set ref 175* 193* attach_description 2 000026 external static char(80) level 2 packed unaligned dcl 1-19 set ref 26* b00_17 based bit(18) level 3 in structure "FACT_Overlay_Interface" packed unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 67 b00_17 based fixed bin(18,0) level 3 in structure "tbr" packed unsigned unaligned dcl 262 in procedure "gfms_task_block_record_" set ref 55 b00_17 14 based fixed bin(18,0) array level 4 in structure "FACT_Overlay_Interface" packed unsigned unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 98 b18_35 3(18) based bit(18) level 3 in structure "FACT_Overlay_Interface" packed unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 67 b18_35 14(18) based fixed bin(18,0) array level 4 in structure "FACT_Overlay_Interface" packed unsigned unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 99 b18_35 1(18) based bit(18) level 3 in structure "tbr" packed unaligned dcl 262 in procedure "gfms_task_block_record_" set ref 55 b18_35 based bit(18) level 3 in structure "FACT_Overlay_Interface" packed unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 67 b18_35 0(18) based bit(18) level 3 in structure "FACT_Overlay_Interface" packed unaligned dcl 282 in procedure "gfms_task_block_record_" set ref 67 block_size 0(18) based fixed bin(18,0) level 3 packed unsigned unaligned dcl 262 set ref 58* cbp 000026 external static pointer level 2 dcl 1-19 set ref 17* 26* 26* clock_pulses 4 based fixed bin(36,0) level 3 packed unsigned unaligned dcl 262 set ref 61* code 000100 automatic fixed bin(35,0) dcl 234 set ref 17* 24 24 26* com_err_ 000010 constant entry external dcl 235 ref 26 44 date 3 based bit(36) level 3 dcl 262 set ref 60* 60* error_table_$long_record 000012 external static fixed bin(35,0) dcl 236 ref 24 fact_word based bit(36) array dcl 237 set ref 209 212* file_code 13(24) based bit(12) level 3 packed unaligned dcl 282 set ref 67 gfms_ascii_ 000014 constant entry external dcl 238 ref 94 135 147 175 193 gfms_date_ 000016 constant entry external dcl 239 ref 60 60 175 175 193 193 gfms_ext$print_routines 000024 external static structure level 1 dcl 1-8 gfms_ext$tape_file 000026 external static structure level 1 dcl 1-19 gfms_fail 000102 stack reference condition dcl 240 ref 40 gfms_tape_status_ 000020 constant entry external dcl 241 ref 26 26 i 000110 automatic fixed bin(17,0) dcl 242 set ref 96* 97 98 99 104* 105* 105 110 111 112* 112 115 115 115 115 120* 120 130 131 132* 132 135 136* 136 142 143 144* 144 147 147 148* 148 155 156 157* 157 160 161* 161 175 175 175 180* 180 188 189* 189 193 193 193 198* 198 209* 210* 211 211* 221* 222* 223 223* ioa 000024 external static entry variable level 2 dcl 1-8 ref 54 58 59 60 61 77 80 85 88 93 94 95 101 109 115 124 128 135 141 147 153 160 166 170 174 175 184 188 193 207 220 ioa_nnl 4 000024 external static entry variable level 2 dcl 1-8 ref 104 210 212 214 222 224 226 iox_$read_record 000022 constant entry external dcl 245 ref 17 j 000111 automatic fixed bin(17,0) dcl 246 set ref 99* 100 100 101* 106 211* 212* 223* 224* last_word based structure level 2 dcl 282 ms parameter bit(1) unaligned dcl 16 set ref 6 79* 84* nbr 000112 automatic fixed bin(21,0) dcl 249 set ref 17* 26* 44 44* 51 nw 000113 automatic fixed bin(17,0) dcl 250 set ref 52* 221 nwr 000114 automatic fixed bin(17,0) dcl 251 set ref 51* 52 62 record_size 1 based fixed bin(18,0) level 3 packed unsigned unaligned dcl 262 set ref 59* report_code 13 based fixed bin(18,0) level 3 packed unsigned unaligned dcl 282 set ref 67 rw 000115 automatic fixed bin(17,0) dcl 252 set ref 62* 64 savhdr 2 based bit(36) level 3 dcl 262 set ref 55 serial_num 2(06) based bit(30) level 3 packed unaligned dcl 282 set ref 67 size builtin function dcl 253 ref 17 26 209 sqll 000116 automatic fixed bin(17,0) dcl 254 set ref 64* 67 67 97 110 124* 130 142 155 209 stq_ovl based structure array level 1 dcl 319 subtask_code 4 based fixed bin(18,0) level 3 packed unsigned unaligned dcl 282 set ref 78 82 88* subtask_header 3 based fixed bin(18,0) level 3 packed unsigned unaligned dcl 282 set ref 67 subtask_options 4(18) based bit(1) array level 3 packed unaligned dcl 282 set ref 93 93 subtask_qualifier_list 14 based structure array level 3 dcl 282 set ref 111 115 115 115 115 131 135 143 147 147 156 160 175 175 175 188 193 193 193 subtask_word based bit(36) array unaligned dcl 255 set ref 111 115 115 115 115 131 143 147 147 156 160* 188* task_header based fixed bin(18,0) level 3 packed unsigned unaligned dcl 282 set ref 67 tbr based structure level 1 dcl 262 set ref 221 224 tbr_space 000117 automatic bit(36) array dcl 256 set ref 17 17 17 26 55 55 55 58 59 60 60 61 67 67 67 67 67 67 67 67 67 67 78 82 88 93 93 94 98 99 111 115 115 115 115 131 135 143 147 147 156 160 175 175 175 188 193 193 193 209 209 212 221 224 type_code 2 based fixed bin(6,0) level 3 packed unsigned unaligned dcl 282 set ref 67 user_name 6 based bit(72) level 3 dcl 282 set ref 94 word based bit(36) array dcl 257 set ref 221 224* word0 based structure level 2 in structure "tbr" dcl 262 in procedure "gfms_task_block_record_" word0 based structure level 2 in structure "FACT_Overlay_Interface" dcl 282 in procedure "gfms_task_block_record_" word1 1 based structure level 2 dcl 262 word11 13 based structure level 2 dcl 282 word12 14 based structure level 2 dcl 282 word2 2 based structure level 2 in structure "tbr" dcl 262 in procedure "gfms_task_block_record_" word2 2 based structure level 2 in structure "FACT_Overlay_Interface" dcl 282 in procedure "gfms_task_block_record_" word3 3 based structure level 2 in structure "FACT_Overlay_Interface" dcl 282 in procedure "gfms_task_block_record_" word3 3 based structure level 2 in structure "tbr" dcl 262 in procedure "gfms_task_block_record_" word4 4 based structure level 2 in structure "tbr" dcl 262 in procedure "gfms_task_block_record_" word4 4 based structure level 2 in structure "FACT_Overlay_Interface" dcl 282 in procedure "gfms_task_block_record_" words6_7 6 based structure level 2 dcl 282 words7_nw 7 based bit(36) array level 2 dcl 262 set ref 67 67 67 67 67 67 67 67 67 67 78 82 88 93 93 94 98 99 111 115 115 115 115 131 135 143 147 147 156 160 175 175 175 188 193 193 193 209 209 212 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. gfms_ext$mapping_rule external static char(3) unaligned dcl 1-47 gfms_ext$options external static structure level 1 dcl 1-31 gfms_ext$temp_segs external static structure level 1 dcl 1-13 gfms_ext$umc_name external static char(12) unaligned dcl 1-49 gfms_ext$working_dir external static varying char(168) dcl 1-43 ioa_ 000000 constant entry external dcl 243 ioa_$nnl 000000 constant entry external dcl 244 l automatic fixed bin(17,0) dcl 247 NAMES DECLARED BY EXPLICIT CONTEXT. cont 002331 constant label dcl 201 ref 113 133 145 158 163 181 190 199 display_names 001567 constant label dcl 129 ref 167 display_word 001764 constant label dcl 154 ref 171 dump_fact 002350 constant label dcl 208 ref 102 125 185 fail 000612 constant label dcl 39 ref 91 216 228 gfms_task_block_record_ 000471 constant entry external dcl 6 off_end 001530 constant label dcl 123 ref 138 150 stq 000000 constant label array(10) dcl 108 ref 106 NAMES DECLARED BY CONTEXT OR IMPLICATION. addr builtin function ref 17 17 55 55 55 58 59 60 60 61 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 67 78 78 82 82 88 88 93 93 93 93 94 94 98 98 99 99 111 111 111 115 115 115 115 115 115 115 115 115 115 115 115 131 131 131 135 135 135 143 143 143 147 147 147 147 147 147 156 156 156 160 160 160 175 175 175 175 175 175 175 175 175 188 188 188 193 193 193 193 193 193 193 193 193 209 209 209 209 209 212 212 212 221 221 224 224 divide builtin function ref 51 hbound builtin function ref 209 221 mod builtin function ref 44 string builtin function ref 93 93 substr builtin function ref 115 115 115 115 147 147 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2724 2754 2601 2734 Length 3204 2601 30 213 123 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME gfms_task_block_record_ 1288 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME gfms_task_block_record_ 000100 code gfms_task_block_record_ 000110 i gfms_task_block_record_ 000111 j gfms_task_block_record_ 000112 nbr gfms_task_block_record_ 000113 nw gfms_task_block_record_ 000114 nwr gfms_task_block_record_ 000115 rw gfms_task_block_record_ 000116 sqll gfms_task_block_record_ 000117 tbr_space gfms_task_block_record_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_var_desc call_ext_out_desc call_ext_out return mod_fx1 signal shorten_stack ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ gfms_ascii_ gfms_date_ gfms_tape_status_ iox_$read_record THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$long_record gfms_ext$print_routines gfms_ext$tape_file LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 6 000466 17 000476 24 000520 26 000525 39 000612 40 000613 44 000616 51 000661 52 000664 54 000666 55 000702 58 000716 59 000740 60 000763 61 001017 62 001042 64 001045 67 001047 77 001121 78 001135 79 001144 80 001151 81 001167 82 001170 84 001172 85 001177 86 001214 88 001215 91 001235 93 001236 94 001264 95 001322 96 001342 97 001344 98 001347 99 001353 100 001357 101 001363 102 001403 104 001404 105 001427 106 001430 108 001432 109 001433 110 001452 111 001455 112 001464 113 001465 115 001466 120 001526 121 001527 123 001530 124 001531 125 001551 127 001552 128 001553 129 001567 130 001570 131 001573 132 001602 133 001603 135 001604 136 001640 137 001643 138 001644 140 001645 141 001646 142 001665 143 001671 144 001700 145 001701 147 001702 148 001743 149 001745 150 001746 152 001747 153 001750 154 001764 155 001765 156 001771 157 002000 158 002001 160 002002 161 002026 162 002027 163 002030 165 002031 166 002032 167 002051 169 002052 170 002053 171 002072 173 002073 174 002074 175 002107 180 002172 181 002174 183 002175 184 002176 185 002212 187 002213 188 002214 189 002242 190 002243 192 002244 193 002245 198 002325 199 002330 201 002331 204 002332 205 002333 207 002334 208 002350 209 002351 210 002361 211 002401 212 002411 213 002434 214 002436 215 002452 216 002455 218 002456 220 002457 221 002473 222 002501 223 002521 224 002531 225 002554 226 002556 227 002572 228 002575 230 002576 ----------------------------------------------------------- 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