COMPILATION LISTING OF SEGMENT misc Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 09/18/84 1221.5 mst Tue Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* * Copyright (c) 1972 by Massachusetts Institute of * 6* * Technology and Honeywell Information Systems, Inc. * 7* * * 8* *********************************************************** */ 9 10 11 misc: charge: proc; 12 13 dcl descn char (168) aligned, 14 en char (32), 15 (char8, char8a) char (8) aligned init (""), 16 (date1, date2) fixed bin(71), 17 instr char(28), 18 pamt pic "(7)$v.99cr", 19 (i, j, n) fixed bin, 20 time fixed bin (71), 21 ap ptr, 22 al fixed bin, 23 bchr char (al) unaligned based (ap), 24 acredit bit(1) aligned init("1"b), 25 amt float bin, 26 proj char (12) aligned, 27 pp ptr, 28 (p1,p2 ) ptr, 29 miscfilep ptr, 30 ec fixed bin(35); 31 32 dcl (null, addr, rel, bin, fixed, dec, round, substr, verify, search) builtin; 33 34 dcl movew(nmove) fixed bin based, 35 (nmove, lomh, lome) fixed bin; 36 37 dcl clock_ entry () returns (fixed bin (71)), 38 get_wdir_ entry () returns (char (168)), 39 cu_$arg_ptr entry (fixed bin, ptr, fixed bin, fixed bin), 40 ioa_ entry options (variable), 41 date_time_ entry (fixed bin (71), char (*) aligned), 42 convert_date_to_binary_$relative entry(char(*),fixed bin(71), fixed bin(71), fixed bin(35)), 43 com_err_ entry options (variable), 44 hcs_$initiate entry (char (*), char (*), char (*), fixed bin (1), 45 fixed bin (2), ptr, fixed bin(35)), 46 hcs_$make_seg entry(char(*),char(*),char(*),fixed bin(5),ptr,fixed bin(35)), 47 hcs_$terminate_noname entry (ptr, fixed bin(35)), 48 hcs_$delentry_seg entry(ptr, fixed bin(35)), 49 ask_$ask_clr entry options (variable), 50 ask_$ask_flo entry options (variable), 51 ask_$ask_int entry options (variable), 52 ask_ entry options (variable), 53 ask_$ask_line entry options (variable); 54 55 1 1 /* declaration of the misc charges file */ 1 2 1 3 dcl 1 misc_file based (miscfilep) aligned, 1 4 2 misc_ents fixed bin, 1 5 2 padmisc (7) fixed bin, 1 6 2 misctab (100), 1 7 3 mdate fixed bin (71), 1 8 3 mproj char (12), 1 9 3 mamt float bin, 1 10 3 mpad fixed bin (71), 1 11 3 mdesc char (64); 1 12 1 13 /* end miscfile */ 56 57 2 1 /* BEGIN INCLUDE FILE .. projfile.incl.pl1 */ 2 2 /* Modified by T. Casey April 1976 to change disk_infs (obsolete) to dir_disk_use */ 2 3 /* Modified 1984-07-09 BIM for dir_disk_quota, version */ 2 4 /* Modified 1984-09-14 BIM for reasonable array size */ 2 5 2 6 dcl 1 projfile based (pp) aligned, /* Project history file */ 2 7 2 nproj fixed bin (35), /* number of entries */ 2 8 2 version fixed bin, 2 9 2 projfilexx0 (6) bit (36) aligned, 2 10 2 projfiletab (3000), /* in seg limit */ 2 11 3 id char (12) unal, /* project ID */ 2 12 3 title char (52) unal, /* project title */ 2 13 3 inv char (32) unal, /* name of principal investigator */ 2 14 3 inv_addr char (32) unal, /* address */ 2 15 3 sup char (32) unal, /* name of supervisor */ 2 16 3 sup_addr char (32) unal, /* address */ 2 17 3 sup_phone char (16) unal, /* telephone */ 2 18 3 on fixed bin (71), /* date on */ 2 19 3 off fixed bin (71), /* date off */ 2 20 3 disk_psec fixed bin (71), /* project disk page-seconds */ 2 21 3 disk_quota fixed bin (35), /* project disk quota */ 2 22 3 dir_disk_quota fixed bin (35), /* project dir disk quota */ 2 23 3 disk_use fixed bin (35), /* total segment pages used */ 2 24 3 dir_disk_use fixed bin (35), /* total directory pages used */ 2 25 3 misc_charges float bin, /* manuals, etc */ 2 26 3 n_misc fixed bin, /* number of entries */ 2 27 3 processed fixed bin, /* temp for usage-report */ 2 28 3 pad bit (36) aligned; /* out to even number of words */ 2 29 2 30 dcl loph int static fixed bin (17) options (constant) init (8), /* lth of projfile header */ 2 31 lope int static fixed bin (17) options (constant) init (66); /* lth of projflile entry */ 2 32 2 33 dcl PROJFILE_VERSION fixed bin init (3) int static options (constant); 2 34 2 35 /* END INCLUDE FILE ... projfile.incl.pl1 */ 58 59 60 /* ====================================================== */ 61 62 acredit="0"b; 63 64 credit: entry; 65 66 en = "projfile"; 67 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, pp, ec); 68 if pp = null then do; 69 er: call com_err_ (ec, "misc", en); 70 return; 71 end; 72 en = "miscfile"; 73 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, miscfilep, ec); 74 if miscfilep = null then go to er; 75 76 time = clock_ (); 77 78 main1: call ask_$ask_clr; 79 main: call ask_ ("^/Project^-", proj); 80 if proj = "x" then go to exit; 81 82 do i = 1 to nproj; 83 if proj = id (i) then go to found; 84 end; 85 call ioa_ ("misc: project ""^a"" not in projfile.", proj); 86 go to main1; 87 88 found: /* if off (i) ^= 0 then do; 89* call ioa_ ("misc: project ""^a"" has been deleted.", proj); 90* go to main1; 91* end; */ 92 call ask_$ask_flo ("amount^-", amt); 93 94 call ask_$ask_line ("desc^-", descn); 95 if descn = "x" then go to main; 96 97 n_misc (i) = n_misc (i) + 1; 98 if acredit then amt=-amt; 99 misc_charges (i) = misc_charges (i) + amt; 100 101 misc_ents = misc_ents + 1; 102 j = misc_ents; 103 104 mproj (j) = proj; 105 mdate (j) = time; 106 mamt (j) = amt; 107 mdesc (j) = descn; 108 109 go to main; 110 111 exit: call hcs_$terminate_noname (miscfilep, ec); 112 call hcs_$terminate_noname (pp, ec); 113 114 return; 115 116 /* - - - - - - - - - - - - - - - - - - - - - - - - - */ 117 118 print_misc: entry; 119 120 bug: en = "x"; 121 en = "miscfile"; 122 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, miscfilep, ec); 123 if miscfilep = null then go to er; 124 125 mainp: call ask_$ask_clr; 126 mainp1: call ask_("^/Project^-", proj); 127 mainp2: call ask_$ask_line("dates^-",instr); 128 if instr="all" 129 then do; 130 date1=mdate(1); 131 date2=mdate(misc_ents); 132 end; 133 else do; 134 i=verify(instr,"/0123456789"); 135 j=search(substr(instr,i+1),"0123456789")+i; 136 time=mdate(1)-86400000000; /* make sure we get beginning of period */ 137 call convert_date_to_binary_$relative(substr(instr,1,i-1)||" 0000.",date1,time,ec); 138 if ec^=0 139 then do; 140 call ioa_("Illegal date ^a",substr(instr,1,i-1)); 141 go to mainp2; 142 end; 143 if j>i 144 then call convert_date_to_binary_$relative(substr(instr,j)||" 2400.",date2,mdate(1),ec); 145 else date2=date1+86400000000; 146 if ec^=0 147 then do; 148 call ioa_("Illegal date ^a",substr(instr,j)); 149 go to mainp2; 150 end; 151 end; 152 153 amt = 0.0e0; 154 n=0; 155 do i = 1 to misc_ents while(mdate(i)<=date2); 156 call date_time_ (mdate (i), char8); 157 if (proj="all"&mproj(i)^="")|proj=mproj(i) 158 then if mdate(i)>=date1 159 then do; 160 if char8 = char8a then char8 = ""; 161 else char8a = char8; 162 pamt=round(fixed(dec(mamt(i)),14,8),2); /* form picture representation */ 163 call ioa_ ("^8a ^5d ^12a ^12a ^a", char8, i, mproj (i), pamt, mdesc (i)); 164 amt = amt + mamt (i); 165 n=n+1; 166 end; 167 end; 168 if n=0 169 then call ioa_("No entries matching project and date"); 170 else if proj="all"&instr="all" 171 then do; 172 pamt=round(fixed(dec(amt),14,8),2); /* picture representation */ 173 call ioa_("^/Total:^24x ^12a^/^d entries in ""miscfile""",pamt,n); 174 end; 175 176 call hcs_$terminate_noname (miscfilep, ec); 177 return; 178 179 /* ------------------------------------------ */ 180 181 print_all_miscs: entry; 182 183 en = "miscfile"; 184 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, miscfilep, ec); 185 if miscfilep = null then go to er; 186 187 amt = 0.0e0; 188 n=0; 189 do i = 1 to misc_ents; 190 if mproj(i)^="" 191 then do; 192 call date_time_ (mdate (i), char8); 193 if char8 = char8a then char8 = ""; 194 else char8a = char8; 195 pamt=round(fixed(dec(mamt(i)),14,8),2); /* form picture representation */ 196 call ioa_ ("^8a ^5d ^12a ^12a ^a", char8, i, mproj (i), pamt, mdesc (i)); 197 amt = amt + mamt (i); 198 n=n+1; 199 end; 200 end; 201 pamt=round(fixed(dec(amt),14,8),2); /* picture representation */ 202 call ioa_("^/Total:^24x ^12a^/^d entries in ""miscfile""",pamt,n); 203 call hcs_$terminate_noname (miscfilep, ec); 204 return; 205 206 /* - - - - - - - - - - - - - */ 207 208 reset_misc: entry; 209 210 en = "projfile"; 211 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, pp, ec); 212 if pp = null then go to er; 213 do i = 1 to nproj; 214 misc_charges (i) = 0.0e0; 215 n_misc (i) = 0; 216 end; 217 218 call hcs_$terminate_noname (pp, ec); 219 return; 220 221 /* ------------------------------------------------------ */ 222 223 dmisc: entry; 224 225 en = "projfile"; 226 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, pp, ec); 227 if pp=null then go to er; 228 en = "miscfile"; 229 call hcs_$initiate ((get_wdir_ ()), en, "", 0, 1, miscfilep, ec); 230 if miscfilep=null then go to er; 231 232 233 maind: call ask_$ask_clr; 234 maind1: call ask_("^/Project^-",proj); 235 if proj="x" then go to exit; 236 do i=1 to nproj; 237 if proj=id(i) then go to foundd; 238 end; 239 call ioa_("misc: project ""^a"" not in projfile.",proj); 240 go to maind; 241 242 foundd: call ask_$ask_int("Number^-",j); 243 if j>misc_ents|j<1 244 then do; 245 call ioa_("Entry number ^d not in miscfile",j); 246 go to maind; 247 end; 248 if mproj(j)=""&mamt(j)=0.0e0 249 then do; 250 call ioa_("Entry number ^d has already been deleted",j); 251 go to maind; 252 end; 253 if mproj(j)^=proj 254 then do; 255 call ioa_("Entry number ^d not charged to project ^a",j,proj); 256 go to maind; 257 end; 258 n_misc(i)=n_misc(i)-1; 259 misc_charges(i)=misc_charges(i)-mamt(j); 260 if n_misc(i)=0 then misc_charges(i)=0.0e0; 261 mamt(j)=0; 262 mproj(j)=""; 263 go to maind; 264 265 end misc; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 09/18/84 0757.5 misc.pl1 >special_ldd>online>09/18/84>misc.pl1 56 1 05/06/74 1742.4 miscfile.incl.pl1 >ldd>include>miscfile.incl.pl1 58 2 09/18/84 1000.6 projfile.incl.pl1 >special_ldd>online>09/18/84>projfile.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. acredit 000212 automatic bit(1) initial dcl 13 set ref 13* 62* 98 amt 000213 automatic float bin(27) dcl 13 set ref 88* 98* 98 99 106 153* 164* 164 172 187* 197* 197 201 ask_ 000036 constant entry external dcl 37 ref 79 126 234 ask_$ask_clr 000030 constant entry external dcl 37 ref 78 125 233 ask_$ask_flo 000032 constant entry external dcl 37 ref 88 ask_$ask_int 000034 constant entry external dcl 37 ref 242 ask_$ask_line 000040 constant entry external dcl 37 ref 94 127 char8 000162 automatic char(8) initial dcl 13 set ref 13* 156* 160 160* 161 163* 192* 193 193* 194 196* char8a 000164 automatic char(8) initial dcl 13 set ref 13* 160 161* 193 194* clock_ 000010 constant entry external dcl 37 ref 76 com_err_ 000022 constant entry external dcl 37 ref 69 convert_date_to_binary_$relative 000020 constant entry external dcl 37 ref 137 143 date1 000166 automatic fixed bin(71,0) dcl 13 set ref 130* 137* 145 157 date2 000170 automatic fixed bin(71,0) dcl 13 set ref 131* 143* 145* 155 date_time_ 000016 constant entry external dcl 37 ref 156 192 dec builtin function dcl 32 ref 162 172 195 201 descn 000100 automatic char(168) dcl 13 set ref 94* 95 107 ec 000224 automatic fixed bin(35,0) dcl 13 set ref 67* 69* 73* 111* 112* 122* 137* 138 143* 146 176* 184* 203* 211* 218* 226* 229* en 000152 automatic char(32) unaligned dcl 13 set ref 66* 67* 69* 72* 73* 120* 121* 122* 183* 184* 210* 211* 225* 226* 228* 229* fixed builtin function dcl 32 ref 162 172 195 201 get_wdir_ 000012 constant entry external dcl 37 ref 67 73 122 184 211 226 229 hcs_$initiate 000024 constant entry external dcl 37 ref 67 73 122 184 211 226 229 hcs_$terminate_noname 000026 constant entry external dcl 37 ref 111 112 176 203 218 i 000204 automatic fixed bin(17,0) dcl 13 set ref 82* 83* 97 97 99 99 134* 135 135 137 140 140 143 155* 155* 156 157 157 157 162 163* 163 163 164* 189* 190 192 195 196* 196 196 197* 213* 214 215* 236* 237* 258 258 259 259 260 260 id 10 based char(12) array level 3 packed unaligned dcl 2-6 ref 83 237 instr 000172 automatic char(28) unaligned dcl 13 set ref 127* 128 134 135 137 140 140 143 148 148 170 ioa_ 000014 constant entry external dcl 37 ref 85 140 148 163 168 173 196 202 239 245 250 255 j 000205 automatic fixed bin(17,0) dcl 13 set ref 102* 104 105 106 107 135* 143 143 148 148 242* 243 243 245* 248 248 250* 253 255* 259 261 262 mamt 15 based float bin(27) array level 3 dcl 1-3 set ref 106* 162 164 195 197 248 259 261* mdate 10 based fixed bin(71,0) array level 3 dcl 1-3 set ref 105* 130 131 136 143* 155 156* 157 192* mdesc 20 based char(64) array level 3 dcl 1-3 set ref 107* 163* 196* misc_charges 106 based float bin(27) array level 3 dcl 2-6 set ref 99* 99 214* 259* 259 260* misc_ents based fixed bin(17,0) level 2 dcl 1-3 set ref 101* 101 102 131 155 189 243 misc_file based structure level 1 dcl 1-3 miscfilep 000222 automatic pointer dcl 13 set ref 73* 74 101 101 102 104 105 106 107 111* 122* 123 130 131 131 136 143 155 155 156 157 157 157 162 163 163 164 176* 184* 185 189 190 192 195 196 196 197 203* 229* 230 243 248 248 253 259 261 262 misctab 10 based structure array level 2 dcl 1-3 mproj 12 based char(12) array level 3 dcl 1-3 set ref 104* 157 157 163* 190 196* 248 253 262* n 000206 automatic fixed bin(17,0) dcl 13 set ref 154* 165* 165 168 173* 188* 198* 198 202* n_misc 107 based fixed bin(17,0) array level 3 dcl 2-6 set ref 97* 97 215* 258* 258 260 nproj based fixed bin(35,0) level 2 dcl 2-6 ref 82 213 236 null builtin function dcl 32 ref 68 74 123 185 212 227 230 pamt 000201 automatic picture(12) unaligned dcl 13 set ref 162* 163* 172* 173* 195* 196* 201* 202* pp 000220 automatic pointer dcl 13 set ref 67* 68 82 83 97 97 99 99 112* 211* 212 213 214 215 218* 226* 227 236 237 258 258 259 259 260 260 proj 000214 automatic char(12) dcl 13 set ref 79* 80 83 85* 104 126* 157 157 170 234* 235 237 239* 253 255* projfile based structure level 1 dcl 2-6 projfiletab 10 based structure array level 2 dcl 2-6 round builtin function dcl 32 ref 162 172 195 201 search builtin function dcl 32 ref 135 substr builtin function dcl 32 ref 135 137 140 140 143 148 148 time 000210 automatic fixed bin(71,0) dcl 13 set ref 76* 105 136* 137* verify builtin function dcl 32 ref 134 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. PROJFILE_VERSION internal static fixed bin(17,0) initial dcl 2-33 addr builtin function dcl 32 al automatic fixed bin(17,0) dcl 13 ap automatic pointer dcl 13 bchr based char unaligned dcl 13 bin builtin function dcl 32 cu_$arg_ptr 000000 constant entry external dcl 37 hcs_$delentry_seg 000000 constant entry external dcl 37 hcs_$make_seg 000000 constant entry external dcl 37 lome automatic fixed bin(17,0) dcl 34 lomh automatic fixed bin(17,0) dcl 34 lope internal static fixed bin(17,0) initial dcl 2-30 loph internal static fixed bin(17,0) initial dcl 2-30 movew based fixed bin(17,0) array dcl 34 nmove automatic fixed bin(17,0) dcl 34 p1 automatic pointer dcl 13 p2 automatic pointer dcl 13 rel builtin function dcl 32 NAMES DECLARED BY EXPLICIT CONTEXT. bug 000667 constant label dcl 120 charge 000212 constant entry external dcl 11 credit 000233 constant entry external dcl 64 dmisc 002304 constant entry external dcl 223 er 000323 constant label dcl 69 ref 74 123 185 212 227 230 exit 000635 constant label dcl 111 ref 80 235 found 000534 constant label dcl 88 ref 83 foundd 002552 constant label dcl 242 ref 237 main 000445 constant label dcl 79 ref 95 109 main1 000440 constant label dcl 78 ref 86 maind 002456 constant label dcl 233 ref 240 246 251 256 263 maind1 002463 constant label dcl 234 mainp 000754 constant label dcl 125 mainp1 000761 constant label dcl 126 mainp2 001002 constant label dcl 127 ref 141 149 misc 000222 constant entry external dcl 11 print_all_miscs 001630 constant entry external dcl 181 print_misc 000661 constant entry external dcl 118 reset_misc 002161 constant entry external dcl 208 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 3544 3606 3334 3554 Length 4056 3334 42 234 207 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME charge 264 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME charge 000100 descn charge 000152 en charge 000162 char8 charge 000164 char8a charge 000166 date1 charge 000170 date2 charge 000172 instr charge 000201 pamt charge 000204 i charge 000205 j charge 000206 n charge 000210 time charge 000212 acredit charge 000213 amt charge 000214 proj charge 000220 pp charge 000222 miscfilep charge 000224 ec charge THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_cs call_ext_out_desc call_ext_out return shorten_stack ext_entry real_to_real_rd THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. ask_ ask_$ask_clr ask_$ask_flo ask_$ask_int ask_$ask_line clock_ com_err_ convert_date_to_binary_$relative date_time_ get_wdir_ hcs_$initiate hcs_$terminate_noname ioa_ NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 13 000202 11 000211 62 000230 64 000231 66 000241 67 000244 68 000317 69 000323 70 000346 72 000347 73 000352 74 000425 76 000431 78 000440 79 000445 80 000466 82 000472 83 000501 84 000511 85 000513 86 000533 88 000534 94 000553 95 000572 97 000576 98 000601 99 000606 101 000611 102 000612 104 000614 105 000624 106 000626 107 000630 109 000634 111 000635 112 000646 114 000657 118 000660 120 000667 121 000672 122 000675 123 000750 125 000754 126 000761 127 001002 128 001021 130 001025 131 001030 132 001034 134 001035 135 001047 136 001065 137 001071 138 001134 140 001137 141 001173 143 001175 145 001247 146 001253 148 001255 149 001315 153 001317 154 001321 155 001322 156 001337 157 001355 160 001403 161 001411 162 001412 163 001440 164 001502 165 001511 167 001512 168 001514 170 001533 172 001543 173 001571 176 001615 177 001626 181 001627 183 001636 184 001641 185 001714 187 001720 188 001722 189 001723 190 001733 192 001742 193 001761 194 001767 195 001770 196 002020 197 002062 198 002071 200 002072 201 002074 202 002122 203 002146 204 002157 208 002160 210 002167 211 002172 212 002245 213 002251 214 002261 215 002266 216 002267 218 002271 219 002302 223 002303 225 002312 226 002315 227 002370 228 002374 229 002377 230 002452 233 002456 234 002463 235 002504 236 002510 237 002517 238 002527 239 002531 240 002551 242 002552 243 002571 245 002576 246 002616 248 002617 250 002632 251 002652 253 002653 255 002657 256 002703 258 002704 259 002710 260 002715 261 002721 262 002723 263 002727 ----------------------------------------------------------- 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