COMPILATION LISTING OF SEGMENT bce_get_to_command_level Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 11/11/89 1014.2 mst Sat Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1984 * 6* * * 7* *********************************************************** */ 8 bce_get_to_command_level: proc (request_table_ptr); 9 10 /* Calls sets up appropriate ss_info structure for bootload Multics and calls 11*bce_listen_. Also contains miscelaneous return to real_initializer code. 12*Written sometime in 1983 by Keith Loepere. */ 13 14 /* Modified September of 1984 by Allen Ball to check and see if the storage 15*system is enabled before querying the operator. */ 16 17 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */ 18 19 dcl Boot_label label static; /* used for aborting command level (the method to continue initialization and therefore boot) */ 20 dcl Info_ptr ptr parameter; 21 dcl NL char (1) static options (constant) init (" 22 "); 23 dcl addr builtin; 24 dcl arg char (arg_len) based (arg_ptr); 25 dcl arg_count fixed bin; 26 dcl arg_len fixed bin (21); 27 dcl arg_ptr ptr; 28 dcl bce_data$console_put_chars entry (ptr, ptr, fixed bin, fixed bin (35)) ext variable; 29 dcl bce_data$console_alert_put_chars entry (ptr, ptr, fixed bin, fixed bin (35)) ext variable; 30 dcl bce_data$subsys_info_ptr ptr external; 31 dcl bce_entry bit (1) aligned; /* bce as opposed to boot command */ 32 dcl bce_listen_ entry (ptr, char (*)); 33 dcl bce_query entry options (variable); 34 dcl bce_query$yes_no entry options (variable); 35 dcl clock_set bit (1) aligned; /* false => must call init_clocks */ 36 dcl code fixed bin (35); 37 dcl com_err_ entry () options (variable); 38 dcl cu_$arg_count_rel entry (fixed bin, ptr, fixed bin (35)); 39 dcl cu_$arg_ptr_rel entry (fixed bin, ptr, fixed bin (21), fixed bin (35), ptr); 40 dcl dimension builtin; 41 dcl error_table_$bad_arg fixed bin (35) ext static; 42 dcl force bit (1) aligned; /* user used -force */ 43 dcl i fixed bin; /* loop var */ 44 dcl init_clocks entry (bit (1) aligned); 45 dcl ioa_ entry () options (variable); 46 dcl ioa_$nnl entry () options (variable); 47 dcl length builtin; 48 dcl 1 my_ss_info aligned like ss_info; 49 dcl request_abort_ condition; 50 dcl request_table_ptr ptr parameter; 51 dcl saved_max_seg_size fixed bin (18); /* saved value of sys_info$max_seg_size (we change it to bce buffer size) */ 52 dcl string builtin; 53 dcl sys_boot_info$at_bce_cl bit (1) aligned ext static; 54 dcl 1 sys_boot_info$bce_intk_card aligned ext static like intk_card; 55 dcl sys_boot_info$config_has_been_modified bit (1) aligned ext static; 56 dcl sys_info$bce_max_seg_size fixed bin (18) ext static; 57 dcl sys_info$max_seg_size fixed bin (18) ext static; 58 dcl 1 toehold$ aligned external like toe_hold; 59 dcl unspec builtin; 60 dcl yes_no bit (1); 61 62 saved_max_seg_size = sys_info$max_seg_size; 63 sys_info$max_seg_size = sys_info$bce_max_seg_size;/* lie about size of pagable segs */ 64 my_ss_info.request_table_ptr = request_table_ptr; 65 Boot_label = BOOT; 66 my_ss_info.name = "bce"; 67 string (my_ss_info.flags) = "0"b; 68 bce_data$subsys_info_ptr = addr (my_ss_info); 69 fgbxp = addr (flagbox$); 70 if fgbx.mess then do; 71 if fgbx.alert then call bce_data$console_alert_put_chars (addr (bce_data$console_alert_put_chars), addr (fgbx.message), length (fgbx.message), code); 72 else call bce_data$console_put_chars (addr (bce_data$console_put_chars), addr (fgbx.message), length (fgbx.message), code); 73 call bce_data$console_put_chars (addr (bce_data$console_put_chars), addr (NL), length (NL), code); 74 fgbx.mess = "0"b; 75 end; 76 sys_boot_info$at_bce_cl = "1"b; 77 if fgbx.breakpoint then do; 78 call ioa_ ("Entering probe."); 79 call bce_listen_ (addr (my_ss_info), "probe"); 80 end; 81 else if fgbx.manual_crash then call bce_listen_ (addr (my_ss_info), ""); 82 else call bce_listen_ (addr (my_ss_info), fgbx.return_to_bce_command); 83 go to BOOT; 84 85 reinitialize: entry (Info_ptr); 86 87 clock_set = "1"b; 88 force = "0"b; 89 90 ss_info_ptr = Info_ptr; 91 call cu_$arg_count_rel (arg_count, ss_info.arg_list_ptr, code); 92 if code ^= 0 then do; 93 call com_err_ (code, "reinitialize"); 94 signal request_abort_; 95 end; 96 97 do i = 1 to arg_count; 98 call cu_$arg_ptr_rel (i, arg_ptr, arg_len, code, ss_info.arg_list_ptr); 99 if arg = "-force" | arg = "-fc" then force = "1"b; 100 else if arg = "-time" | arg = "-tm" then clock_set = "0"b; 101 else do; 102 call com_err_ (error_table_$bad_arg, "reinitialize", "^a", arg); 103 return; 104 end; 105 end; 106 107 fgbxp = addr (flagbox$); 108 if ^force then 109 if sys_info$collection_1_phase = CRASH_INITIALIZATION then 110 if fgbx.rtb.ssenb then do; 111 call bce_query$yes_no (yes_no, "Memory contains a valid Multics image. Do you wish to destroy it? "); 112 if ^yes_no then signal request_abort_; 113 end; 114 115 if ^clock_set then call init_clocks (clock_set); 116 if ^clock_set then return; 117 118 sys_info$collection_1_phase = EARLY_INITIALIZATION; /* makes next phase boot phase */ 119 toehold$.memory_state = At_bce__early; 120 go to Boot_label; 121 122 boot: entry (Info_ptr); /* The command that leaves command level */ 123 124 bce_entry = "0"b; 125 go to boot_join; 126 127 bce: entry (Info_ptr); /* continue booting bce */ 128 129 bce_entry = "1"b; 130 131 boot_join: 132 ss_info_ptr = Info_ptr; 133 134 clock_set = (sys_info$collection_1_phase ^= EARLY_INITIALIZATION); 135 force = "0"b; 136 137 intk_cardp = addr (sys_boot_info$bce_intk_card); 138 unspec (intk_card) = "0"b; 139 intk_card.word = INTK_CARD_WORD; 140 intk_card.n_fields = 2; 141 intk_card.field_type (1) = CONFIG_STRING_TYPE; 142 intk_card.warm_or_cold = "warm"; /* for now */ 143 intk_card.field_type (2) = CONFIG_DECIMAL_TYPE; 144 intk_card.boot_drive = 0; 145 do i = 1 to dimension (intk_card.parms, 1); 146 unspec (intk_card.parms (i)) = EMPTY_FIELD; 147 end; 148 149 if ^bce_entry then do; 150 call cu_$arg_count_rel (arg_count, ss_info.arg_list_ptr, code); 151 if code ^= 0 then do; 152 call com_err_ (code, "boot"); 153 signal request_abort_; 154 end; 155 156 do i = 1 to arg_count; 157 call cu_$arg_ptr_rel (i, arg_ptr, arg_len, code, ss_info.arg_list_ptr); 158 if arg = "-force" | arg = "-fc" then force = "1"b; 159 else if arg = "-cold" then intk_card.warm_or_cold = "cold"; 160 else if arg = "-time" | arg = "-tm" then clock_set = "0"b; 161 else do; 162 intk_card.n_fields = intk_card.n_fields + 1; 163 if intk_card.n_fields > 14 then do; 164 call com_err_ (0, "boot", "Too many options."); 165 return; 166 end; 167 intk_card.parms (intk_card.n_fields - 2) = arg; 168 intk_card.field_type (intk_card.n_fields) = CONFIG_STRING_TYPE; 169 end; 170 end; 171 172 if ^force then do; 173 if intk_card.warm_or_cold = "cold" then do; 174 call bce_query$yes_no (yes_no, "Do you really wish to boot cold and there by destroy the system hierarchy? "); 175 if ^yes_no then signal request_abort_; 176 end; 177 if sys_boot_info$config_has_been_modified then do; 178 call bce_query$yes_no (yes_no, "The config deck has been modified. 179 Do you wish to boot service without reinitializing bce? "); 180 if ^yes_no then signal request_abort_; 181 end; 182 end; 183 end; 184 185 if ^clock_set then call init_clocks (clock_set); 186 if ^clock_set then return; 187 188 goto Boot_label; /* actually performs the boot */ 189 190 BOOT: 191 sys_info$max_seg_size = saved_max_seg_size; 192 sys_boot_info$at_bce_cl = "0"b; 193 fgbxp = addr (flagbox$); 194 unspec (fgbx.rtb) = "0"b; 195 return; 196 /* Begin include file bce_subsystem_info_.incl.pl1 BIM 11/82 */ 1 2 1 3 /* format: style3 */ 1 4 1 5 /* Deleted unused items, Keith Loepere, 5/84 */ 1 6 1 7 1 8 /****^ HISTORY COMMENTS: 1 9* 1) change(86-04-22,Farley), approve(86-07-18,MCR7439), 1 10* audit(86-10-08,Fawcett), install(86-10-20,MR12.0-1189): 1 11* Added request_handling_opr_aborts flag for save/restore. 1 12* END HISTORY COMMENTS */ 1 13 1 14 declare ss_info_ptr pointer; 1 15 declare 1 ss_info aligned based (ss_info_ptr), 1 16 2 request_table_ptr 1 17 pointer, 1 18 2 abort_label label, 1 19 2 name char (32) unaligned, 1 20 2 arg_list_ptr pointer, 1 21 2 info_ptr pointer, 1 22 2 flags aligned, 1 23 3 forbid_semicolons bit (1) unaligned, 1 24 3 request_handling_opr_aborts bit (1) unaligned; 1 25 1 26 /* End include file bce_subsystem_info_ */ 196 197 /* BEGIN include file collection_1_phases.incl.pl1 */ 2 2 2 3 /* Symbolic names for the various collection1 phases. 2 4*Keith Loepere, October 1983. */ 2 5 2 6 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */ 2 7 2 8 dcl sys_info$collection_1_phase fixed bin external static; 2 9 2 10 dcl EARLY_INITIALIZATION fixed bin init (1) static options (constant); /* phase to find the config deck */ 2 11 dcl BOOT_INITIALIZATION fixed bin init (2) static options (constant); /* phase to setup up crash handler, bce */ 2 12 dcl SERVICE_INITIALIZATION fixed bin init (3) static options (constant); /* phase to set up for service */ 2 13 2 14 /* These first 3 (EARLY, BOOT and SERVICE) must be 1, 2, 3 in that order so 2 15*programs can simply tell apart the booting phases from all others (crash or 2 16*recovery type phases). */ 2 17 2 18 dcl CRASH_INITIALIZATION fixed bin init (4) static options (constant); /* phase to set up bce after crash/shut down */ 2 19 dcl RE_EARLY_INITIALIZATION fixed bin init (5) static options (constant); /* retry boot initialization given safe config to a new early level */ 2 20 dcl BCE_CRASH_INITIALIZATION fixed bin init (6) static options (constant); /* retry boot initialization to give a new boot level given a crash of bce */ 2 21 dcl SHUT_INITIALIZATION fixed bin init (7) static options (constant); /* same as boot but don't load new disk mpcs */ 2 22 2 23 dcl COLLECTION_1_PHASE_NAMES (7) char (16) unal static options (constant) init 2 24 ("early", "boot", "service", "crash", "re_early", "bce_crash", "shut"); 2 25 2 26 /* END include file collection_1_phases.incl.pl1 */ 197 198 /* BEGIN INCLUDE FILE ... config_deck.incl.pl1 ... 11/13/80, W. Olin Sibert */ 3 2 3 3 dcl (configp, cardp) pointer; 3 4 dcl config_n_cards fixed bin; /* Number of cards used in config */ 3 5 dcl config_max_cards fixed bin; /* Max number of cards in config */ 3 6 3 7 dcl config_deck$ fixed bin external static; 3 8 3 9 dcl 1 config_deck aligned based (configp), 3 10 2 cards (config_n_cards) aligned like config_card, 3 11 2 pad_cards (config_max_cards - config_n_cards) aligned like config_card; 3 12 3 13 dcl 1 config_card aligned based (cardp), 3 14 2 word char (4) aligned, 3 15 2 data_field (14) bit (36) aligned, 3 16 2 type_word aligned like config_card_type_word; 3 17 3 18 dcl 1 config_card_type_word aligned based, 3 19 2 field_type (14) bit (2) unaligned, 3 20 2 pad1 bit (4) unaligned, 3 21 2 n_fields fixed bin (4) unsigned unaligned; 3 22 3 23 dcl (CONFIG_DECIMAL_TYPE init ("11"b), 3 24 CONFIG_OCTAL_TYPE init ("00"b), 3 25 CONFIG_SINGLE_CHAR_TYPE init ("01"b), 3 26 CONFIG_STRING_TYPE init ("10"b)) bit (2) aligned static options (constant); 3 27 3 28 dcl ZERO_CARD_WORD char (4) aligned internal static options (constant) init (""); 3 29 dcl FREE_CARD_WORD char (4) aligned internal static options (constant) init ("ÿÿÿÿ"); 3 30 3 31 dcl VALID_CARD_WORD_CHARACTERS char (38) internal static options (constant) init 3 32 ("abcdefghijklmnopqrstuvwxyz0123456789_."); /* lowercase letters, digits, period and underscore */ 3 33 3 34 dcl EMPTY_FIELD bit (36) aligned internal static options (constant) init ("777777777777"b3); 3 35 3 36 /* END INCLUDE FILE config_deck.incl.pl1 */ 198 199 /* BEGIN INCLUDE FILE ... config_intk_card.incl.pl1 ... 11/27/80 W. Olin Sibert */ 4 2 4 3 dcl intk_cardp pointer; /* pointer to INTK card */ 4 4 4 5 dcl 1 intk_card aligned based (intk_cardp), /* INTK card declaration */ 4 6 2 word char (4), /* "intk" */ 4 7 2 warm_or_cold char (4), /* Type of bootload: "warm" or "cold" */ 4 8 2 boot_drive fixed bin, /* Tape drive on which MST is mounted */ 4 9 2 parms (12) char (4), /* up to 12 arbitrary bootload parameters */ 4 10 4 11 2 type_word aligned, 4 12 3 field_type (14) bit (2) unaligned, /* type of each field; see config_deck.incl.pl1 */ 4 13 3 pad1 bit (4) unaligned, 4 14 3 n_fields fixed bin (4) unsigned unaligned; /* number of fields used on card */ 4 15 4 16 dcl 1 intk_card_array aligned based (intk_cardp), /* Overlay for counting parameters */ 4 17 2 pad (3) bit (36) aligned, 4 18 2 parms (max (0, intk_card.n_fields - 2)) bit (36) aligned; 4 19 4 20 dcl INTK_CARD_WORD char (4) aligned internal static options (constant) init ("intk"); 4 21 4 22 /* END INCLUDE FILE ... config_intk_card.incl.pl1 */ 199 200 /* BEGIN INCLUDE FILE ... flagbox.incl.pl1 */ 5 2 5 3 5 4 /****^ HISTORY COMMENTS: 5 5* 1) change(87-02-26,Farley), approve(87-04-15,MCR7661), 5 6* audit(87-04-21,Fawcett), install(87-04-28,MR12.1-1028): 5 7* Added io_reconfig flag to inhibit BCE from attempting an emergency 5 8* shutdown when the data in memory could be corrupted. 5 9* END HISTORY COMMENTS */ 5 10 5 11 5 12 /* last modified 5/3/77 by Noel I. Morris */ 5 13 /* Modified 8/79 by R.J.C. Kissel to add FNP blast message. */ 5 14 /* Modified 7/82 BIM for recognizable sentinel field */ 5 15 /* Modified for bootload Multics flagbox starting in 8/83 by Keith Loepere. */ 5 16 5 17 /* The contents of this segment are data shared by Multics and bce. 5 18* This entity occupies the locations within the toehold starting at 40o 5 19* (not counting the toehold_used spacer at the beginning). */ 5 20 5 21 dcl flagbox$ ext; 5 22 dcl fgbxp ptr; 5 23 5 24 dcl 1 fgbx based (fgbxp) aligned, 5 25 2 toehold_used (32) bit (36) aligned, /* flagbox seg now mapped onto all of first page of toehold - 5 26* This is what was unused before. */ 5 27 2 flags (36) bit (1) unal, /* communications switches */ 5 28 2 slt_segno bit (18), /* segment # of the SLT */ 5 29 2 pad1 fixed bin, 5 30 2 rtb, /* return to bce info */ 5 31 (3 ssenb bit (1), /* "1"b if storage system enabled */ 5 32 3 call_bce bit (1), /* "1"b if bce called by operator */ 5 33 3 shut bit (1), /* "1"b if bce called after shutdown */ 5 34 3 mess bit (1), /* "1"b if message has been provided */ 5 35 3 alert bit (1), /* "1"b if audible alarm to be sounded */ 5 36 3 breakpoint bit (1), /* "1"b is breakpoint caused call to bce */ 5 37 3 manual_crash bit (1), /* either manual entry or execute fault */ 5 38 3 io_reconfig bit (1), /* "1"b if I/O reconfiguration */ 5 39 /* could cause memory corruption */ 5 40 3 pad bit (21), 5 41 3 bce_entry fixed bin (6) uns) unal, /* type of entry into bce 5 42* 00o => Multics entry 5 43* 20o => manual entry 5 44* 40o => esd entry */ 5 45 2 sentinel char (32) aligned, /* set by bce (for now) */ 5 46 2 sst_sdw bit (72), /* set by init_sst */ 5 47 2 hc_dbr bit (72), /* set by start_cpu, idle DBR */ 5 48 2 message char (64), /* message for return to bce */ 5 49 2 return_to_bce_command char (128) unal; /* command to run upon crash/shutdown */ 5 50 5 51 declare FLAGBOX_SENTINEL char (32) init ("Flagbox & Toehold Valid") int static options (constant); 5 52 5 53 /* END INCLUDE FILE ... flagbox.incl.pl1 */ 200 201 /* BEGIN include file toehold.incl.pl1 */ 6 2 6 3 /* Various reserved entrypoints into the bce toehold. 6 4*Also, only those things one really needs to know about the toehold. 6 5*Keith Loepere, October 1983. */ 6 6 6 7 /* Exclude prn, prv and pad when converting to alm version. */ 6 8 6 9 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */ 6 10 6 11 dcl 1 toe_hold aligned based, /* name so alm likes */ 6 12 2 entry_sequences (0:15) bit (72) aligned, /* described below */ 6 13 2 flagbox (64) bit (36) aligned, 6 14 2 pad1 (48) bit (36) aligned, 6 15 2 paths (4) like io_path, 6 16 2 n_paths_used fixed bin, 6 17 2 memory_state fixed bin, /* of memory/disk swapping, etc. */ 6 18 2 bce_dbr bit (72) aligned, /* of bce */ 6 19 2 pad2 (1355) bit (36) aligned, 6 20 2 multics_state aligned like mc_state; 6 21 6 22 dcl 1 io_path aligned based, 6 23 2 pcw fixed bin (71) aligned, 6 24 6 25 2 port_number fixed bin (3) uns unal, /* these fields form the word that */ 6 26 2 iom_number fixed bin (15) uns unal, /* must be changed upon */ 6 27 2 channel_number fixed bin unal, /* reconfiguration of channels */ 6 28 6 29 2 pad bit (36) aligned; 6 30 6 31 dcl TOE_HOLD_CRASH_ENTRY fixed bin init (0) static options (constant); /* operator causes crash by xed'ind here */ 6 32 dcl TOE_HOLD_ESD_ENTRY fixed bin init (1) static options (constant); 6 33 dcl TOE_HOLD_DUMP_ENTRY fixed bin init (2) static options (constant); /* place that causes an early dump */ 6 34 dcl TOE_HOLD_MULTICS_ENTRY fixed bin init (3) static options (constant); /* Multics crashes by drl'ing here */ 6 35 dcl TOE_HOLD_RESTART_ENTRY fixed bin init (4) static options (constant); /* bce restarts Multics by drl'ing here */ 6 36 dcl TOE_HOLD_BOOT_ENTRY fixed bin init (5) static options (constant); /* bootload_tape_label starts init by tra'ing here */ 6 37 dcl TOE_HOLD_BOS_ENTRY fixed bin init (12) static options (constant); 6 38 dcl TOE_HOLD_BOS_NO_SAVE_ENTRY fixed bin init (13) static options (constant); 6 39 dcl TOE_HOLD_BOS_MULTICS_ENTRY fixed bin init (14) static options (constant); 6 40 6 41 declare mc_state_ptr ptr; /* to toehold$.multics_state */ 6 42 declare 1 mc_state aligned based (mc_state_ptr), 6 43 2 mc_ aligned like mc, 6 44 2 masks (16) bit (36) aligned, 6 45 2 interrupt bit (72) aligned, 6 46 2 mode_reg bit (36) aligned, /* mode_reg and cache_mode_reg form a double word pair */ 6 47 2 cache_mode_reg bit (36) aligned, 6 48 2 dbr bit (72) aligned, 6 49 2 cfg bit (72) aligned, 6 50 2 bar bit (36) aligned, 6 51 2 old_memory_state fixed bin, 6 52 2 pad16 (6) bit (36) aligned, 6 53 2 ou_history_registers (0: 15) bit (72) aligned, 6 54 2 cu_history_registers (0: 15) bit (72) aligned, 6 55 2 du_history_registers (0: 15) bit (72) aligned, 6 56 2 apu_history_registers (0: 15) bit (72) aligned, 6 57 2 ptwam_ptrs (0: 63) bit (36) aligned, /* word alignment (mod 16, 32) of these am's matters */ 6 58 2 ptwam_regs (0: 63) bit (36) aligned, 6 59 2 sdwam_ptrs (0: 63) bit (36) aligned, 6 60 2 sdwam_regs (0: 63) bit (72) aligned; 6 61 6 62 /* values for memory_state */ 6 63 6 64 dcl Initial_undefined fixed bin init (0) static options (constant); /* initial coming to bce */ 6 65 dcl At_bce__early fixed bin init (1) static options (constant); 6 66 dcl At_bce__boot fixed bin init (2) static options (constant); /* at bce during cool boot phase */ 6 67 dcl Multics fixed bin init (3) static options (constant); /* Multics coming up */ 6 68 dcl Undefined_saving_state fixed bin init (4) static options (constant); /* saving state during coming down */ 6 69 dcl Undefined_reading_bce fixed bin init (5) static options (constant); /* reading in bce */ 6 70 dcl At_bce__crash fixed bin init (6) static options (constant); /* disk holds Multics, at bce */ 6 71 dcl At_bce__shutdown fixed bin init (7) static options (constant); /* disk holds (nothing), coming to bce */ 6 72 dcl Undefined_continue fixed bin init (8) static options (constant); /* swapping memory back */ 6 73 dcl Undefined_saving_mem fixed bin init (9) static options (constant); 6 74 6 75 /* */ 7 2 /* BEGIN INCLUDE FILE mc.incl.pl1 Created Dec 72 for 6180 - WSS. */ 7 3 /* Modified 06/07/76 by Greenberg for mc.resignal */ 7 4 /* Modified 07/07/76 by Morris for fault register data */ 7 5 /* Modified 08/28/80 by J. A. Bush for the DPS8/70M CVPU */ 7 6 /* Modified '82 to make values constant */ 7 7 7 8 /* words 0-15 pointer registers */ 7 9 7 10 dcl mcp ptr; 7 11 7 12 dcl 1 mc based (mcp) aligned, 7 13 2 prs (0:7) ptr, /* POINTER REGISTERS */ 7 14 (2 regs, /* registers */ 7 15 3 x (0:7) bit (18), /* index registers */ 7 16 3 a bit (36), /* accumulator */ 7 17 3 q bit (36), /* q-register */ 7 18 3 e bit (8), /* exponent */ 7 19 3 pad1 bit (28), 7 20 3 t bit (27), /* timer register */ 7 21 3 pad2 bit (6), 7 22 3 ralr bit (3), /* ring alarm register */ 7 23 7 24 2 scu (0:7) bit (36), 7 25 7 26 2 mask bit (72), /* mem controller mask at time of fault */ 7 27 2 ips_temp bit (36), /* Temporary storage for IPS info */ 7 28 2 errcode fixed bin (35), /* fault handler's error code */ 7 29 2 fim_temp, 7 30 3 unique_index bit (18) unal, /* unique index for restarting faults */ 7 31 3 resignal bit (1) unal, /* recompute signal name with fcode below */ 7 32 3 fcode bit (17) unal, /* fault code used as index to FIM table and SCT */ 7 33 2 fault_reg bit (36), /* fault register */ 7 34 2 pad2 bit (1), 7 35 2 cpu_type fixed bin (2) unsigned, /* L68 = 0, DPS8/70M = 1 */ 7 36 2 ext_fault_reg bit (15), /* extended fault reg for DPS8/70M CPU */ 7 37 2 fault_time bit (54), /* time of fault */ 7 38 7 39 2 eis_info (0:7) bit (36)) unaligned; 7 40 7 41 7 42 dcl (apx fixed bin init (0), 7 43 abx fixed bin init (1), 7 44 bpx fixed bin init (2), 7 45 bbx fixed bin init (3), 7 46 lpx fixed bin init (4), 7 47 lbx fixed bin init (5), 7 48 spx fixed bin init (6), 7 49 sbx fixed bin init (7)) internal static options (constant); 7 50 7 51 7 52 7 53 7 54 dcl scup ptr; 7 55 7 56 dcl 1 scu based (scup) aligned, /* SCU DATA */ 7 57 7 58 7 59 /* WORD (0) */ 7 60 7 61 (2 ppr, /* PROCEDURE POINTER REGISTER */ 7 62 3 prr bit (3), /* procedure ring register */ 7 63 3 psr bit (15), /* procedure segment register */ 7 64 3 p bit (1), /* procedure privileged bit */ 7 65 7 66 2 apu, /* APPENDING UNIT STATUS */ 7 67 3 xsf bit (1), /* ext seg flag - IT modification */ 7 68 3 sdwm bit (1), /* match in SDW Ass. Mem. */ 7 69 3 sd_on bit (1), /* SDW Ass. Mem. ON */ 7 70 3 ptwm bit (1), /* match in PTW Ass. Mem. */ 7 71 3 pt_on bit (1), /* PTW Ass. Mem. ON */ 7 72 3 pi_ap bit (1), /* Instr Fetch or Append cycle */ 7 73 3 dsptw bit (1), /* Fetch of DSPTW */ 7 74 3 sdwnp bit (1), /* Fetch of SDW non paged */ 7 75 3 sdwp bit (1), /* Fetch of SDW paged */ 7 76 3 ptw bit (1), /* Fetch of PTW */ 7 77 3 ptw2 bit (1), /* Fetch of pre-paged PTW */ 7 78 3 fap bit (1), /* Fetch of final address paged */ 7 79 3 fanp bit (1), /* Fetch of final address non-paged */ 7 80 3 fabs bit (1), /* Fetch of final address absolute */ 7 81 7 82 2 fault_cntr bit (3), /* number of retrys of EIS instructions */ 7 83 7 84 7 85 /* WORD (1) */ 7 86 7 87 2 fd, /* FAULT DATA */ 7 88 3 iro bit (1), /* illegal ring order */ 7 89 3 oeb bit (1), /* out of execute bracket */ 7 90 3 e_off bit (1), /* no execute */ 7 91 3 orb bit (1), /* out of read bracket */ 7 92 3 r_off bit (1), /* no read */ 7 93 3 owb bit (1), /* out of write bracket */ 7 94 3 w_off bit (1), /* no write */ 7 95 3 no_ga bit (1), /* not a gate */ 7 96 3 ocb bit (1), /* out of call bracket */ 7 97 3 ocall bit (1), /* outward call */ 7 98 3 boc bit (1), /* bad outward call */ 7 99 3 inret bit (1), /* inward return */ 7 100 3 crt bit (1), /* cross ring transfer */ 7 101 3 ralr bit (1), /* ring alarm register */ 7 102 3 am_er bit (1), /* associative memory fault */ 7 103 3 oosb bit (1), /* out of segment bounds */ 7 104 3 paru bit (1), /* processor parity upper */ 7 105 3 parl bit (1), /* processor parity lower */ 7 106 3 onc_1 bit (1), /* op not complete type 1 */ 7 107 3 onc_2 bit (1), /* op not complete type 2 */ 7 108 7 109 2 port_stat, /* PORT STATUS */ 7 110 3 ial bit (4), /* illegal action lines */ 7 111 3 iac bit (3), /* illegal action channel */ 7 112 3 con_chan bit (3), /* connect channel */ 7 113 7 114 2 fi_num bit (5), /* (fault/interrupt) number */ 7 115 2 fi_flag bit (1), /* 1 => fault, 0 => interrupt */ 7 116 7 117 7 118 /* WORD (2) */ 7 119 7 120 2 tpr, /* TEMPORARY POINTER REGISTER */ 7 121 3 trr bit (3), /* temporary ring register */ 7 122 3 tsr bit (15), /* temporary segment register */ 7 123 7 124 2 pad2 bit (9), 7 125 7 126 2 cpu_no bit (3), /* CPU number */ 7 127 7 128 2 delta bit (6), /* tally modification DELTA */ 7 129 7 130 7 131 /* WORD (3) */ 7 132 7 133 2 word3 bit (18), 7 134 7 135 2 tsr_stat, /* TSR STATUS for 1,2,&3 word instructions */ 7 136 3 tsna, /* Word 1 status */ 7 137 4 prn bit (3), /* Word 1 PR number */ 7 138 4 prv bit (1), /* Word 1 PR valid bit */ 7 139 3 tsnb, /* Word 2 status */ 7 140 4 prn bit (3), /* Word 2 PR number */ 7 141 4 prv bit (1), /* Word 2 PR valid bit */ 7 142 3 tsnc, /* Word 3 status */ 7 143 4 prn bit (3), /* Word 3 PR number */ 7 144 4 prv bit (1), /* Word 3 PR valid bit */ 7 145 7 146 2 tpr_tbr bit (6), /* TPR.TBR field */ 7 147 7 148 7 149 /* WORD (4) */ 7 150 7 151 2 ilc bit (18), /* INSTRUCTION COUNTER */ 7 152 7 153 2 ir, /* INDICATOR REGISTERS */ 7 154 3 zero bit (1), /* zero indicator */ 7 155 3 neg bit (1), /* negative indicator */ 7 156 3 carry bit (1), /* carryry indicator */ 7 157 3 ovfl bit (1), /* overflow indicator */ 7 158 3 eovf bit (1), /* eponent overflow */ 7 159 3 eufl bit (1), /* exponent underflow */ 7 160 3 oflm bit (1), /* overflow mask */ 7 161 3 tro bit (1), /* tally runout */ 7 162 3 par bit (1), /* parity error */ 7 163 3 parm bit (1), /* parity mask */ 7 164 3 bm bit (1), /* ^bar mode */ 7 165 3 tru bit (1), /* truncation mode */ 7 166 3 mif bit (1), /* multi-word instruction mode */ 7 167 3 abs bit (1), /* absolute mode */ 7 168 3 hex bit (1), /* hexadecimal exponent mode */ 7 169 3 pad bit (3), 7 170 7 171 7 172 /* WORD (5) */ 7 173 7 174 2 ca bit (18), /* COMPUTED ADDRESS */ 7 175 7 176 2 cu, /* CONTROL UNIT STATUS */ 7 177 3 rf bit (1), /* on first cycle of repeat instr */ 7 178 3 rpt bit (1), /* repeat instruction */ 7 179 3 rd bit (1), /* repeat double instruction */ 7 180 3 rl bit (1), /* repeat link instruciton */ 7 181 3 pot bit (1), /* IT modification */ 7 182 3 pon bit (1), /* return type instruction */ 7 183 3 xde bit (1), /* XDE from Even location */ 7 184 3 xdo bit (1), /* XDE from Odd location */ 7 185 3 poa bit (1), /* operation preparation */ 7 186 3 rfi bit (1), /* tells CPU to refetch instruction */ 7 187 3 its bit (1), /* ITS modification */ 7 188 3 if bit (1), /* fault occured during instruction fetch */ 7 189 7 190 2 cpu_tag bit (6)) unaligned, /* computed tag field */ 7 191 7 192 7 193 /* WORDS (6,7) */ 7 194 7 195 2 even_inst bit (36), /* even instruction of faulting pair */ 7 196 7 197 2 odd_inst bit (36); /* odd instruction of faulting pair */ 7 198 7 199 7 200 7 201 7 202 7 203 7 204 /* ALTERNATE SCU DECLARATION */ 7 205 7 206 7 207 dcl 1 scux based (scup) aligned, 7 208 7 209 (2 pad0 bit (36), 7 210 7 211 2 fd, /* GROUP II FAULT DATA */ 7 212 3 isn bit (1), /* illegal segment number */ 7 213 3 ioc bit (1), /* illegal op code */ 7 214 3 ia_am bit (1), /* illegal address - modifier */ 7 215 3 isp bit (1), /* illegal slave procedure */ 7 216 3 ipr bit (1), /* illegal procedure */ 7 217 3 nea bit (1), /* non existent address */ 7 218 3 oobb bit (1), /* out of bounds */ 7 219 3 pad bit (29), 7 220 7 221 2 pad2 bit (36), 7 222 7 223 2 pad3a bit (18), 7 224 7 225 2 tsr_stat (0:2), /* TSR STATUS as an ARRAY */ 7 226 3 prn bit (3), /* PR number */ 7 227 3 prv bit (1), /* PR valid bit */ 7 228 7 229 2 pad3b bit (6)) unaligned, 7 230 7 231 2 pad45 (0:1) bit (36), 7 232 7 233 2 instr (0:1) bit (36); /* Instruction ARRAY */ 7 234 7 235 7 236 7 237 /* END INCLUDE FILE mc.incl.pl1 */ 6 75 6 76 6 77 /* END include file toehold.incl.pl1 */ 201 202 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0839.1 bce_get_to_command_level.pl1 >special_ldd>install>MR12.3-1114>bce_get_to_command_level.pl1 196 1 10/21/86 1251.6 bce_subsystem_info_.incl.pl1 >ldd>include>bce_subsystem_info_.incl.pl1 197 2 07/11/84 0937.3 collection_1_phases.incl.pl1 >ldd>include>collection_1_phases.incl.pl1 198 3 05/08/81 1853.6 config_deck.incl.pl1 >ldd>include>config_deck.incl.pl1 199 4 05/08/81 1853.6 config_intk_card.incl.pl1 >ldd>include>config_intk_card.incl.pl1 200 5 04/30/87 1513.7 flagbox.incl.pl1 >ldd>include>flagbox.incl.pl1 201 6 07/11/84 0937.3 toe_hold.incl.pl1 >ldd>include>toe_hold.incl.pl1 6-75 7 12/15/83 1100.4 mc.incl.pl1 >ldd>include>mc.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. At_bce__early constant fixed bin(17,0) initial dcl 6-65 ref 119 Boot_label 000010 internal static label variable dcl 19 set ref 65* 120 188 CONFIG_DECIMAL_TYPE constant bit(2) initial dcl 3-23 ref 143 CONFIG_STRING_TYPE 001324 constant bit(2) initial dcl 3-23 ref 141 168 CRASH_INITIALIZATION constant fixed bin(17,0) initial dcl 2-18 ref 108 EARLY_INITIALIZATION constant fixed bin(17,0) initial dcl 2-10 ref 118 134 EMPTY_FIELD 001323 constant bit(36) initial dcl 3-34 ref 146 INTK_CARD_WORD 000000 constant char(4) initial dcl 4-20 ref 139 Info_ptr parameter pointer dcl 20 ref 85 90 122 127 131 NL 000001 constant char(1) initial packed unaligned dcl 21 set ref 73 73 73 73 addr builtin function dcl 23 ref 68 69 71 71 71 71 72 72 72 72 73 73 73 73 79 79 81 81 82 82 107 137 193 alert 43(04) based bit(1) level 3 packed packed unaligned dcl 5-24 set ref 71 arg based char packed unaligned dcl 24 set ref 99 99 100 100 102* 158 158 159 160 160 167 arg_count 000100 automatic fixed bin(17,0) dcl 25 set ref 91* 97 150* 156 arg_len 000101 automatic fixed bin(21,0) dcl 26 set ref 98* 99 99 100 100 102 102 157* 158 158 159 160 160 167 arg_list_ptr 16 based pointer level 2 dcl 1-15 set ref 91* 98* 150* 157* arg_ptr 000102 automatic pointer dcl 27 set ref 98* 99 99 100 100 102 157* 158 158 159 160 160 167 bce_data$console_alert_put_chars 000016 external static entry variable dcl 29 set ref 71 71 71 bce_data$console_put_chars 000014 external static entry variable dcl 28 set ref 72 72 72 73 73 73 bce_data$subsys_info_ptr 000020 external static pointer dcl 30 set ref 68* bce_entry 000104 automatic bit(1) dcl 31 set ref 124* 129* 149 bce_listen_ 000022 constant entry external dcl 32 ref 79 81 82 bce_query$yes_no 000024 constant entry external dcl 34 ref 111 174 178 boot_drive 2 based fixed bin(17,0) level 2 dcl 4-5 set ref 144* breakpoint 43(05) based bit(1) level 3 packed packed unaligned dcl 5-24 set ref 77 clock_set 000105 automatic bit(1) dcl 35 set ref 87* 100* 115 115* 116 134* 160* 185 185* 186 code 000106 automatic fixed bin(35,0) dcl 36 set ref 71* 72* 73* 91* 92 93* 98* 150* 151 152* 157* com_err_ 000026 constant entry external dcl 37 ref 93 102 152 164 config_card based structure level 1 dcl 3-13 config_card_type_word based structure level 1 dcl 3-18 cu_$arg_count_rel 000030 constant entry external dcl 38 ref 91 150 cu_$arg_ptr_rel 000032 constant entry external dcl 39 ref 98 157 dimension builtin function dcl 40 ref 145 error_table_$bad_arg 000034 external static fixed bin(35,0) dcl 41 set ref 102* fgbx based structure level 1 dcl 5-24 fgbxp 000152 automatic pointer dcl 5-22 set ref 69* 70 71 71 71 71 71 72 72 72 72 74 77 81 82 107* 108 193* 194 field_type 17 based bit(2) array level 3 packed packed unaligned dcl 4-5 set ref 141* 143* 168* flagbox$ 000060 external static fixed bin(17,0) dcl 5-21 set ref 69 107 193 flags 22 000112 automatic structure level 2 dcl 48 set ref 67* force 000107 automatic bit(1) dcl 42 set ref 88* 99* 108 135* 158* 172 i 000110 automatic fixed bin(17,0) dcl 43 set ref 97* 98* 145* 146* 156* 157* init_clocks 000036 constant entry external dcl 44 ref 115 185 intk_card based structure level 1 dcl 4-5 set ref 138* intk_cardp 000150 automatic pointer dcl 4-3 set ref 137* 138 139 140 141 142 143 144 145 146 159 162 162 163 167 167 168 168 173 io_path based structure level 1 dcl 6-22 ioa_ 000040 constant entry external dcl 45 ref 78 length builtin function dcl 47 ref 71 71 72 72 73 73 manual_crash 43(06) based bit(1) level 3 packed packed unaligned dcl 5-24 set ref 81 mc based structure level 1 dcl 7-12 mc_state based structure level 1 dcl 6-42 memory_state 241 000054 external static fixed bin(17,0) level 2 dcl 58 set ref 119* mess 43(03) based bit(1) level 3 packed packed unaligned dcl 5-24 set ref 70 74* message 60 based char(64) level 2 dcl 5-24 set ref 71 71 71 71 72 72 72 72 my_ss_info 000112 automatic structure level 1 dcl 48 set ref 68 79 79 81 81 82 82 n_fields 17(32) based fixed bin(4,0) level 3 packed packed unsigned unaligned dcl 4-5 set ref 140* 162* 162 163 167 168 name 6 000112 automatic char(32) level 2 packed packed unaligned dcl 48 set ref 66* parms 3 based char(4) array level 2 dcl 4-5 set ref 145 146* 167* request_abort_ 000136 stack reference condition dcl 49 ref 94 112 153 175 180 request_table_ptr 000112 automatic pointer level 2 in structure "my_ss_info" dcl 48 in procedure "bce_get_to_command_level" set ref 64* request_table_ptr parameter pointer dcl 50 in procedure "bce_get_to_command_level" ref 8 64 return_to_bce_command 100 based char(128) level 2 packed packed unaligned dcl 5-24 set ref 82* rtb 43 based structure level 2 dcl 5-24 set ref 194* saved_max_seg_size 000144 automatic fixed bin(18,0) dcl 51 set ref 62* 190 ss_info based structure level 1 dcl 1-15 ss_info_ptr 000146 automatic pointer dcl 1-14 set ref 90* 91 98 131* 150 157 ssenb 43 based bit(1) level 3 packed packed unaligned dcl 5-24 set ref 108 string builtin function dcl 52 set ref 67* sys_boot_info$at_bce_cl 000042 external static bit(1) dcl 53 set ref 76* 192* sys_boot_info$bce_intk_card 000044 external static structure level 1 dcl 54 set ref 137 sys_boot_info$config_has_been_modified 000046 external static bit(1) dcl 55 ref 177 sys_info$bce_max_seg_size 000050 external static fixed bin(18,0) dcl 56 ref 63 sys_info$collection_1_phase 000056 external static fixed bin(17,0) dcl 2-8 set ref 108 118* 134 sys_info$max_seg_size 000052 external static fixed bin(18,0) dcl 57 set ref 62 63* 190* toe_hold based structure level 1 dcl 6-11 toehold$ 000054 external static structure level 1 dcl 58 type_word 17 based structure level 2 dcl 4-5 unspec builtin function dcl 59 set ref 138* 146* 194* warm_or_cold 1 based char(4) level 2 dcl 4-5 set ref 142* 159* 173 word based char(4) level 2 dcl 4-5 set ref 139* yes_no 000145 automatic bit(1) packed unaligned dcl 60 set ref 111* 112 174* 175 178* 180 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. At_bce__boot internal static fixed bin(17,0) initial dcl 6-66 At_bce__crash internal static fixed bin(17,0) initial dcl 6-70 At_bce__shutdown internal static fixed bin(17,0) initial dcl 6-71 BCE_CRASH_INITIALIZATION internal static fixed bin(17,0) initial dcl 2-20 BOOT_INITIALIZATION internal static fixed bin(17,0) initial dcl 2-11 COLLECTION_1_PHASE_NAMES internal static char(16) initial array packed unaligned dcl 2-23 CONFIG_OCTAL_TYPE internal static bit(2) initial dcl 3-23 CONFIG_SINGLE_CHAR_TYPE internal static bit(2) initial dcl 3-23 FLAGBOX_SENTINEL internal static char(32) initial packed unaligned dcl 5-51 FREE_CARD_WORD internal static char(4) initial dcl 3-29 Initial_undefined internal static fixed bin(17,0) initial dcl 6-64 Multics internal static fixed bin(17,0) initial dcl 6-67 RE_EARLY_INITIALIZATION internal static fixed bin(17,0) initial dcl 2-19 SERVICE_INITIALIZATION internal static fixed bin(17,0) initial dcl 2-12 SHUT_INITIALIZATION internal static fixed bin(17,0) initial dcl 2-21 TOE_HOLD_BOOT_ENTRY internal static fixed bin(17,0) initial dcl 6-36 TOE_HOLD_BOS_ENTRY internal static fixed bin(17,0) initial dcl 6-37 TOE_HOLD_BOS_MULTICS_ENTRY internal static fixed bin(17,0) initial dcl 6-39 TOE_HOLD_BOS_NO_SAVE_ENTRY internal static fixed bin(17,0) initial dcl 6-38 TOE_HOLD_CRASH_ENTRY internal static fixed bin(17,0) initial dcl 6-31 TOE_HOLD_DUMP_ENTRY internal static fixed bin(17,0) initial dcl 6-33 TOE_HOLD_ESD_ENTRY internal static fixed bin(17,0) initial dcl 6-32 TOE_HOLD_MULTICS_ENTRY internal static fixed bin(17,0) initial dcl 6-34 TOE_HOLD_RESTART_ENTRY internal static fixed bin(17,0) initial dcl 6-35 Undefined_continue internal static fixed bin(17,0) initial dcl 6-72 Undefined_reading_bce internal static fixed bin(17,0) initial dcl 6-69 Undefined_saving_mem internal static fixed bin(17,0) initial dcl 6-73 Undefined_saving_state internal static fixed bin(17,0) initial dcl 6-68 VALID_CARD_WORD_CHARACTERS internal static char(38) initial packed unaligned dcl 3-31 ZERO_CARD_WORD internal static char(4) initial dcl 3-28 abx internal static fixed bin(17,0) initial dcl 7-42 apx internal static fixed bin(17,0) initial dcl 7-42 bbx internal static fixed bin(17,0) initial dcl 7-42 bce_query 000000 constant entry external dcl 33 bpx internal static fixed bin(17,0) initial dcl 7-42 cardp automatic pointer dcl 3-3 config_deck based structure level 1 dcl 3-9 config_deck$ external static fixed bin(17,0) dcl 3-7 config_max_cards automatic fixed bin(17,0) dcl 3-5 config_n_cards automatic fixed bin(17,0) dcl 3-4 configp automatic pointer dcl 3-3 intk_card_array based structure level 1 dcl 4-16 ioa_$nnl 000000 constant entry external dcl 46 lbx internal static fixed bin(17,0) initial dcl 7-42 lpx internal static fixed bin(17,0) initial dcl 7-42 mc_state_ptr automatic pointer dcl 6-41 mcp automatic pointer dcl 7-10 sbx internal static fixed bin(17,0) initial dcl 7-42 scu based structure level 1 dcl 7-56 scup automatic pointer dcl 7-54 scux based structure level 1 dcl 7-207 spx internal static fixed bin(17,0) initial dcl 7-42 NAMES DECLARED BY EXPLICIT CONTEXT. BOOT 001312 constant label dcl 190 set ref 65 83 bce 000715 constant entry external dcl 127 bce_get_to_command_level 000156 constant entry external dcl 8 boot 000704 constant entry external dcl 122 boot_join 000724 constant label dcl 131 ref 125 reinitialize 000421 constant entry external dcl 85 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1616 1700 1325 1626 Length 2260 1325 62 344 270 4 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME bce_get_to_command_level 197 external procedure is an external procedure. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 Boot_label bce_get_to_command_level STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME bce_get_to_command_level 000100 arg_count bce_get_to_command_level 000101 arg_len bce_get_to_command_level 000102 arg_ptr bce_get_to_command_level 000104 bce_entry bce_get_to_command_level 000105 clock_set bce_get_to_command_level 000106 code bce_get_to_command_level 000107 force bce_get_to_command_level 000110 i bce_get_to_command_level 000112 my_ss_info bce_get_to_command_level 000144 saved_max_seg_size bce_get_to_command_level 000145 yes_no bce_get_to_command_level 000146 ss_info_ptr bce_get_to_command_level 000150 intk_cardp bce_get_to_command_level 000152 fgbxp bce_get_to_command_level THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_ne_as call_ent_var call_ext_out_desc call_ext_out return_mac tra_ext_2 signal_op ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. bce_listen_ bce_query$yes_no com_err_ cu_$arg_count_rel cu_$arg_ptr_rel init_clocks ioa_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. bce_data$console_alert_put_chars bce_data$console_put_chars bce_data$subsys_info_ptr error_table_$bad_arg flagbox$ sys_boot_info$at_bce_cl sys_boot_info$bce_intk_card sys_boot_info$config_has_been_modified sys_info$bce_max_seg_size sys_info$collection_1_phase sys_info$max_seg_size toehold$ LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 8 000153 62 000163 63 000165 64 000167 65 000173 66 000176 67 000201 68 000202 69 000204 70 000206 71 000211 72 000237 73 000261 74 000304 76 000307 77 000312 78 000316 79 000334 80 000355 81 000356 82 000400 83 000416 85 000417 87 000426 88 000430 90 000431 91 000435 92 000450 93 000452 94 000473 97 000476 98 000505 99 000525 100 000542 102 000554 103 000612 105 000613 107 000615 108 000620 111 000630 112 000647 115 000655 116 000667 118 000672 119 000675 120 000700 122 000702 124 000711 125 000712 127 000713 129 000722 131 000724 134 000730 135 000735 137 000736 138 000740 139 000743 140 000745 141 000751 142 000755 143 000757 144 000761 145 000762 146 000767 147 000772 149 000774 150 000776 151 001012 152 001014 153 001033 156 001036 157 001045 158 001065 159 001102 160 001112 162 001124 163 001133 164 001140 165 001167 167 001170 168 001176 170 001204 172 001206 173 001210 174 001214 175 001234 177 001242 178 001245 180 001264 185 001272 186 001304 188 001307 190 001312 192 001315 193 001316 194 001320 195 001321 ----------------------------------------------------------- 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