COMPILATION LISTING OF SEGMENT call_bos Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 07/02/84 1520.6 mst Mon Options: optimize list 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 /* CALL_BOS - Program to call BOS. 7* recoded 9/30/76 by Noel I. Morris */ 8 9 10 /* ****************************************************** 11* * * 12* * * 13* * Copyright (c) 1972 by Massachusetts Institute of * 14* * Technology and Honeywell Information Systems, Inc. * 15* * * 16* * * 17* ****************************************************** */ 18 19 20 call_bos: proc; 21 22 dcl privileged_mode_ut$bos_and_return entry, 23 syserr entry options (variable); 24 25 dcl addr builtin; 26 1 1 /* BEGIN INCLUDE FILE ... fgbx.incl.pl1 */ 1 2 /* last modified 5/3/77 by Noel I. Morris */ 1 3 /* Modified 8/79 by R.J.C. Kissel to add FNP blast message. */ 1 4 /* Modified 7/82 BIM for recognizable sentinel field */ 1 5 1 6 /* The contents of this segment are data shared by Multics and BOS. 1 7* This segment occupies the 2nd, 3rd, 4th, and 5th 16-word blocks of the BOS toehold. */ 1 8 1 9 dcl flagbox$ ext; 1 10 dcl fgbxp ptr; 1 11 1 12 dcl 1 fgbx based (fgbxp) aligned, 1 13 2 flags (36) bit (1) unal, /* communications switches */ 1 14 2 slt_segno bit (18), /* segment # of the SLT */ 1 15 2 pad1 fixed bin, 1 16 2 rtb, /* return to BOS info */ 1 17 (3 ssenb bit (1), /* "1"b if storage system enabled */ 1 18 3 call_bos bit (1), /* "1"b if BOS called by operator */ 1 19 3 shut bit (1), /* "1"b if BOS called after shutdown */ 1 20 3 mess bit (1), /* "1"b if message has been provided */ 1 21 3 alert bit (1), /* "1"b if audible alarm to be sounded */ 1 22 3 pad bit (25), 1 23 3 bos_entry fixed bin (5)) unal, /* type of entry into BOS 1 24* 0 => XED 10002 (BOS entry) 1 25* 1 => XED 10004 (Multics entry) 1 26* 2 => XED 10000 (manual entry) */ 1 27 2 sentinel char (32) aligned, /* set by BOS (for now) */ 1 28 2 sst_sdw bit (72), /* set by init_sst */ 1 29 2 hc_dbr bit (72), /* set by start_cpu, idle DBR */ 1 30 2 message char (64), /* message for return to BOS */ 1 31 2 fnp_blast char (128); /* message for FNP use when Multics is down. */ 1 32 1 33 declare FLAGBOX_SENTINEL char (32) init ("Flagbox & Toehold Valid") int static options (constant); 1 34 1 35 /* END INCLUDE FILE ... fgbx.incl.pl1 */ 27 28 29 30 31 fgbxp = addr (flagbox$); /* Get pointer to flagbox segment. */ 32 fgbx.call_bos = "1"b; /* Turn on the BOS call flag. */ 33 34 call syserr (0, "call_bos: BOS called from Multics."); 35 36 call privileged_mode_ut$bos_and_return; /* Transfer control to bos. It will return after 37* CONTIN is typed at the operator's console. */ 38 39 fgbx.call_bos = "0"b; /* Turn off flag now. */ 40 41 return; /* Return to caller */ 42 43 44 /* BEGIN MESSAGE DOCUMENTATION 45* 46* Message: 47* call_bos: BOS called from Multics. 48* 49* S: $info 50* 51* T: $run 52* 53* M: An outer ring program has called hphcs_$call_bos. 54* This is usually done after printing an explanatory message. 55* The system will resume operation if GO is typed. 56* 57* A: $recover 58* 59* 60* END MESSAGE DOCUMENTATION */ 61 62 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 07/02/84 1135.0 call_bos.pl1 >dumps>old_dumps>hardcore>call_bos.pl1 27 1 09/27/82 1708.1 fgbx.incl.pl1 >ldd>include>fgbx.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. addr builtin function dcl 25 ref 31 call_bos 3(01) based bit(1) level 3 packed unaligned dcl 1-12 set ref 32* 39* fgbx based structure level 1 dcl 1-12 fgbxp 000100 automatic pointer dcl 1-10 set ref 31* 32 39 flagbox$ 000014 external static fixed bin(17,0) dcl 1-9 set ref 31 privileged_mode_ut$bos_and_return 000010 constant entry external dcl 22 ref 36 rtb 3 based structure level 2 dcl 1-12 syserr 000012 constant entry external dcl 22 ref 34 NAME DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. FLAGBOX_SENTINEL internal static char(32) initial unaligned dcl 1-33 NAME DECLARED BY EXPLICIT CONTEXT. call_bos 000014 constant entry external dcl 20 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 132 150 57 142 Length 330 57 16 144 52 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME call_bos 88 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME call_bos 000100 fgbxp call_bos THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. privileged_mode_ut$bos_and_return syserr THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. flagbox$ CONSTANTS 000056 aa 577777777777 000000 aa 524000000042 000001 aa 404000000005 000002 aa 143 141 154 154 call 000003 aa 137 142 157 163 _bos 000004 aa 072 040 102 117 : BO 000005 aa 123 040 143 141 S ca 000006 aa 154 154 145 144 lled 000007 aa 040 146 162 157 fro 000010 aa 155 040 115 165 m Mu 000011 aa 154 164 151 143 ltic 000012 aa 163 056 000 000 s. BEGIN PROCEDURE call_bos ENTRY TO call_bos STATEMENT 1 ON LINE 20 call_bos: proc; 000013 da 000046200000 000014 aa 000140 6270 00 eax7 96 000015 aa 7 00034 3521 20 epp2 pr7|28,* 000016 aa 2 01045 2721 00 tsp2 pr2|549 ext_entry 000017 aa 000000000000 000020 aa 000000000000 STATEMENT 1 ON LINE 31 fgbxp = addr (flagbox$); 000021 la 4 00014 3735 20 epp7 pr4|12,* flagbox$ 000022 aa 6 00100 6535 00 spri7 pr6|64 fgbxp STATEMENT 1 ON LINE 32 fgbx.call_bos = "1"b; 000023 aa 200000 2350 03 lda 65536,du 000024 aa 7 00003 2551 00 orsa pr7|3 fgbx.call_bos STATEMENT 1 ON LINE 34 call syserr (0, "call_bos: BOS called from Multics."); 000025 aa 6 00102 4501 00 stz pr6|66 000026 aa 000 100 100 404 mlr (ic),(pr),fill(000) 000027 aa 777754 00 0044 desc9a -20,36 000002 = 143141154154 000030 aa 6 00104 00 0044 desc9a pr6|68,36 000031 aa 6 00102 3521 00 epp2 pr6|66 000032 aa 6 00120 2521 00 spri2 pr6|80 000033 aa 6 00104 3521 00 epp2 pr6|68 000034 aa 6 00122 2521 00 spri2 pr6|82 000035 aa 777744 3520 04 epp2 -28,ic 000001 = 404000000005 000036 aa 6 00124 2521 00 spri2 pr6|84 000037 aa 777741 3520 04 epp2 -31,ic 000000 = 524000000042 000040 aa 6 00126 2521 00 spri2 pr6|86 000041 aa 6 00116 6211 00 eax1 pr6|78 000042 aa 010000 4310 07 fld 4096,dl 000043 la 4 00012 3521 20 epp2 pr4|10,* syserr 000044 aa 0 00622 7001 00 tsx0 pr0|402 call_ext_out_desc STATEMENT 1 ON LINE 36 call privileged_mode_ut$bos_and_return; 000045 aa 6 00056 6211 00 eax1 pr6|46 000046 aa 000000 4310 07 fld 0,dl 000047 aa 6 00044 3701 20 epp4 pr6|36,* 000050 la 4 00010 3521 20 epp2 pr4|8,* privileged_mode_ut$bos_and_return 000051 aa 0 00623 7001 00 tsx0 pr0|403 call_ext_out STATEMENT 1 ON LINE 39 fgbx.call_bos = "0"b; 000052 aa 000004 2350 04 lda 4,ic 000056 = 577777777777 000053 aa 6 00100 3735 20 epp7 pr6|64,* fgbxp 000054 aa 7 00003 3551 00 ansa pr7|3 fgbx.call_bos STATEMENT 1 ON LINE 41 return; 000055 aa 0 00631 7101 00 tra pr0|409 return STATEMENT 1 ON LINE 62 end; END PROCEDURE call_bos ----------------------------------------------------------- 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