;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; Title: BS1MB2.A86 ; ; The Bootstrap Loader First Stage configuration file consists of ; invocations of selected configuration macros for option selection, ; macros for the devices, and the "end" macro. ; ; ; CPU(cpu type) Specifies the type of CPU. The bootstrap recognizes ; 80186 and 80188 as CPUs requiring special programming. ; The type of CPU determines timing values to be used. ; ; The CPU selection macro determines what type of CPU is used. ; If the type is 80186 or 80188 and the iSDM monitor is not included on ; the CPU board, the iAPX_186_init macro can be invoked to specify the ; programmimg of the chip select registers. ; ; system_120_init ; The system_120_init macro specifies a configuration for the ; System 120. It causes initialization code specific to the ; System 120 to be included in the Bootstrap Loader First Stage. ; ; iAPX_186_init(RMX, UMCS, LMCS, MPCS, MMCS, PACS) ; Specifies the values for the chip selects and mode ; for 80186 and 80188 CPUs. This may only be invoked ; after a CPU(80186) or CPU(80188) macro. RMX should ; be set to 'yes' to place the 186 in iRMX mode. For ; information on the other argments, see iAPX 186 ; documentation. ; ; auto_configure_memory(btype,saddr) ; Specifies the bus type and optionally the starting address of ; memory. This macro is used only on Multibus II systems. The ; macro automatically configures all memory boards to LBX, PSB ; or both addresses. Only on PSB memory is a starting address ; other than the default of 0 allowed. The address should be ; the number of the starting 64K paragraph of PSB memory. This ; macro should only be specified when no monitor will be used and the ; Bootstrap Loader is the first code to be executed on reset. ; ; bist(address) ; Invokes the Built-In Self Tests (BIST) located at the given address. ; The address must be of the form base:offset. This macro should be ; specified only with systems containing a BIST. ; ; copy(src_lo,src_hi,dest_lo,dest_hi,count_lo,count_hi) ; This macro is used for 386/100 based systems and copies the first ; stage of the bootstrap loader to the low megabyte of ram. This macro ; should be specified when no monitor is used and the bootstrap loader ; is executed first on system reset. ; ; clear_sdm_extensions ; Calls the iSDM 86 or iSDM 286 Command Extension Interface to clear ; any monitor command extensions that may be set This macro cannot ; be invoked if a standalone Bootstrap Loader is being configured. ; ; These option selection macros serve to determine how the bootstrap ; will determine the boot file name and boot device. ; ; console Causes the bootstrap to input the file name ; from a console device. ; ; auto Causes the bootstrap to use automatic device ; selection (hunts for first ready device). ; ; manual Causes the bootstrap to use manual device ; selection based on the file name input from ; the console. This macro automatically invokes ; console and auto. ; ; loadfile Causes the bootstrap to print the pathname of the file ; that it is attempting to load. This message is printed ; after a ready device has been found and the second stage ; has been loaded. ; ; defaultfile Used to indicate the name of the file to be ; loaded when console is not specified, or the default ; device and/or file to be used if console is specified ; but no file is given. If this macro is not used, the ; default file name is '/system/rmx86' and is supplied ; by the second stage. ; ; retries(x) Causes the bootstrap to try to find a ready device (when ; in manual or automatic) x times. If it fails after x times, ; an error will be generated. If this macro is not invoked, ; the bootstrap will try forever. The valid range for x ; is 1 to 0fffeh. ; ; cico Indicates that the bootstrap will be linked to ; user or intel supplied ci/co routines rather than ; the monitor ci/co routines. ; ; ; MBII Message Passing Bootstrap support configuration ; ; bmps( Base I/O port address of the message passing device (MPC) ; Separation between ports on the MPC ; MPC duty cycle on the local bus ; Base I/O port address of the DMA controller ; DMA channel used for data input ; DMA channel used for data output ; I/O port where DMA data transfers occur ; Data width of the local bus) ; ; serial_channel (ser_type, ser_base_port, ser_port_delta, ; cntr_type, cntr_base_port, cntr_port_delta, ; baud_counter, count, flags) ; ; Configuration of intel supplied standalone ci/co routines. ; If the cico macro has been invoked, and iRMX ci/co ; routines are desired, invoke one of the default ; invocations to configure the proper serial channel. ; Consult the iRMX 86 Bootstrap Loader reference manual for ; information on how to use the serialchannel macro for ; custom hardware configurations. ; ; ; The device macros give characteristics of the devices and ; the search sequence for automatic device selection. ; ; device(Name, Unit, Device$init, Device$read, Device$unit$info) ; ; Name is the device name. No quotes are needed. ; Unit is the unit number. ; Device$init is the device$init procedure of the ; bootstrap device driver for the device. ; Device$read is the device$read procedure of the ; bootstrap device driver for the device. ; Device$unit$info is a label corresponding to an invocation ; of the SASI$UNIT$INFO macro in BSCSI.A86. This is only ; needed if the SCSI driver is selected in the configuration. ; No other driver requires this value and it can be left blank. ; ; If neither auto nor manual device selection is used, only ; one device macro can be given. ; ; The file must end with an end macro. ; ; Macros called have a percent sign, others have a semicolon. ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; name bs1 $include(:f1:bcico.inc) $include(:f1:bmb2.inc) $include(:f1:bmps.inc) ;bist(0FFFFH:0FFFFH) ;copy(08000H,00FFH,08000H,000FH,08000H,0H) ; (LBX), (PSB,addr) or (LBX+PSB) ;auto_configure_memory(LBX) $include(:f1:bs1.inc) %cpu(80386) ; MPC and ADMA configuration for iSBC 286/100 with iEXM 100 MPC module ;bmps(00H, 4, 08BH, 200H, 3, 2, 0A0H, 16) ; MPC and ADMA configuration for iSBC 286/100A ;bmps(00H, 4, 08BH, 200H, 2, 3, 0E0H, 16) ; MPC and ADMA configuration for iSBC 386/100 %bmps(00H, 4, 089H, 200H, 2, 3, 000H, 16) %console %manual %auto %loadfile %defaultfile('/system/rmx86') %retries(5) ;clear_sdm_extensions ;cico ; iSBX 351 (on iSBX #0) ;serial_channel(8251a,0A0h,2,8253,0B0h,2,2,8) ; iSBX 354 Channel A (on iSBX #0) for iSBC 386/100 ;serial_channel(82530,084H,2,82530,084H,2,0,0eh,a) ; iSBX 354 Channel B (on iSBX #0) for iSBC 386/100 ;serial_channel(82530,080H,2,82530,080H,2,0,0eh,b) ; iSBC 286/100A Channel A ;serial_channel(82530,0dch,2,82530,0dch,2,0,0eh,a) ; iSBC 286/100A Channel B ;serial_channel(82530,0d8h,2,82530,0d8h,2,0,0eh,b) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Multibus II devices ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %device(s0, 0, deviceinitscsi, devicereadscsi) %device(sx1410a0, 0, deviceinitscsi, devicereadscsi, sasi_x1410a) %device(sx1410b0, 0, deviceinitscsi, devicereadscsi, sasi_x1410b) %device(smf0, 2, deviceinitscsi, devicereadscsi, sasi_x1420mf) %device(pmf0, 0, deviceinit218A, deviceread218A) %device(w0, 0, device_init_224a, device_read_224a) %device(w1, 1, device_init_224a, device_read_224a) %device(wf0, 4, device_init_224a, device_read_224a) %device(wf1, 5, device_init_224a, device_read_224a) %end