; Olivetti EISA SCSI Controller (ESC-2P/FDU)
; Configuration File revision 1.00

BOARD
  ID = "OLI1024"
  NAME = "Olivetti EISA SCSI Controller (ESC-2P/FDU)"
  MFR = "OLIVETTI"
  CATEGORY = "MSD"
  SLOT = EISA
  AMPERAGE = 3000
  READID = YES
  BUSMASTER = 01
  IOCHECK = INVALID
  DISABLE = UNSUPPORTED

IOPORT(1) = 0zC90h			; Configuration Register 00h
  INITVAL = 0001xx1xb

IOPORT(2) = 0zC91h			; Configuration Register 01h
  INITVAL = 0xxxxxxxb

IOPORT(3) = 0zC92h			; Configuration Register 02h
  INITVAL = 000000xxb

IOPORT(4) = 0zC93h			; Configuration Register 03
  INITVAL = 0000000xb

IOPORT(5) = 0zC94h			; Configuration Register 04
  INITVAL = x0xxx000b

IOPORT(6) = 0zC95h			; Configuration Register 05
  INITVAL = xxxxxxxxb

IOPORT(7) = 0zC96h			; Configuration Register 06
  INITVAL = 00000000b

IOPORT(8) = 0zC97h			; Configuration Register 07
  INITVAL = 00000000b

IOPORT(9) = 0zC8Dh			; Doorbell Register (must be last)
  INITVAL = 000x0000b



INCLUDE = "OLISCSI.OVL"

BEGINOVL

  FUNCTION = "SCSI DEVICE INFORMATION"
    CHOICE = "VIEW"
  HELP = "This function lists the Target ID numbers present on this
	  controller for each of the SCSI peripheral device types.
	  Each peripheral device connected to this controller must
	  have a distinct Target ID number.  To avoid conflict, set
	  additional devices to Target ID numbers not already in use."


GROUP = "SCSI ADAPTER"

  FUNCTION= "Adapter SCSI ID Selection"
  HELP = " Select the SCSI ID to be used by the adapter.  It should not
	   conflict with any of the devices attached to the adapter.  For
	   most situations, ID 7 is recommended."
      CHOICE = "Adapter SCSI ID - 07"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 111
      CHOICE = "Adapter SCSI ID - 06"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 110
      CHOICE = "Adapter SCSI ID - 05"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 101
      CHOICE = "Adapter SCSI ID - 04"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 100
      CHOICE = "Adapter SCSI ID - 03"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 011
      CHOICE = "Adapter SCSI ID - 02"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 010
      CHOICE = "Adapter SCSI ID - 01"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 001
      CHOICE = "Adapter SCSI ID - 00"
	free
	  INIT = IOPORT(5) LOC(5 4 3) 000

  FUNCTION = "Adapter Standby Mode"
  HELP = " If the Adapter is configured for Standby mode, then it will not
	   access the SCSI bus."
    CHOICE = "Disabled"
      free
	INIT = IOPORT(5) LOC(7) 0
    CHOICE = "Enabled"
      free
	INIT = IOPORT(5) LOC(7) 1
ENDGROUP

GROUP = "Hard Disk Controller"
  TYPE = "MSD"
  FUNCTION = "AT Compatible Controller.......... ROM BIOS Access Mode.............."
  HELP = " If the AT compatible mode is enabled, the first two logical drives
	   must be configured on this ESC controller.
	   The 'AT Compatible' mode will cause the BIOS to function using the
	   AT compatible mode of the SCSI controller, supporting the first
	   two logical hard disks only.
	   The 'High Performace SCSI' mode will cause the BIOS to function
	   using the SCSI mode of the controller."
    CHOICE = "Enabled                            AT Compatible Access Mode"
      link
	IRQ  = 14
	PORT = 1F0h-1F7h
	INIT = IOPORT(2) LOC(0) 1
	INIT = IOPORT(4) LOC(0) 1
    CHOICE = "Enabled                            Hi Performance SCSI Access Mode"
      link
	IRQ  = 14
	PORT = 1F0h-1F7h
	INIT = IOPORT(2) LOC(0) 1
	INIT = IOPORT(4) LOC(0) 0
    CHOICE = "Disabled                           Hi Performance SCSI Access Mode"
      free
	INIT = IOPORT(2) LOC(0) 0
	INIT = IOPORT(4) LOC(0) 0


  FUNCTION= "SCSI ID Selection"
    SUBFUNCTION= "Drive 0"
      CHOICE = "Target ID - 00"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 000
      CHOICE = "Target ID - 01"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 001
      CHOICE = "Target ID - 02"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 010
      CHOICE = "Target ID - 03"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 011
      CHOICE = "Target ID - 04"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 100
      CHOICE = "Target ID - 05"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 101
      CHOICE = "Target ID - 06"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 110
      CHOICE = "Not Present"
	free
	  INIT = IOPORT(2) LOC(3 2 1) 111

    SUBFUNCTION= "Drive 1"
      CHOICE = "Not Present"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 111
      CHOICE = "Target ID - 00"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 000
      CHOICE = "Target ID - 01"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 001
      CHOICE = "Target ID - 02"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 010
      CHOICE = "Target ID - 03"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 011
      CHOICE = "Target ID - 04"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 100
      CHOICE = "Target ID - 05"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 101
      CHOICE = "Target ID - 06"
	free
	  INIT = IOPORT(2) LOC(6 5 4) 110

ENDGROUP

ENDOVL

  FUNCTION = "Synchronous Data Transfer Enabled"
  HELP = " Synchronous data transfer permits faster data transfer on most
	   devices.  In some special cases, however, it can be slower
	   or it can cause errors.  In general, you should allow
	   synchronous transfers unless told otherwise."
    SUBFUNCTION= "Target ID 0"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(0) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(0) 1
    SUBFUNCTION= "Target ID 1"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(1) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(1) 1
    SUBFUNCTION= "Target ID 2"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(2) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(2) 1
    SUBFUNCTION= "Target ID 3"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(3) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(3) 1
    SUBFUNCTION= "Target ID 4"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(4) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(4) 1
    SUBFUNCTION= "Target ID 5"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(5) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(5) 1
    SUBFUNCTION= "Target ID 6"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(6) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(6) 1
    SUBFUNCTION= "Target ID 7"
      CHOICE = "Synchronous Transfer Enabled"
	free
	  INIT = IOPORT(6) LOC(7) 0
      CHOICE = "Synchronous Transfer Disabled"
	free
	  INIT = IOPORT(6) LOC(7) 1

FUNCTION = "HDU Cache Piggy-back Board"
  HELP = " If you have installed the HDU Cache piggy-back board into the
	   ESC-2 controller, then you must enable it in order for it to
	   begin operating.  You can enable it for Caching only or
	   for Caching and Lazy-Writing.  Lazy-Writing means the controller
	   will tell application programs that it has written data to
	   the disk after it has copied the data from the system, but
	   before it has written it to the disk.  This substantially
	   speeds up aplications that write large amounts of data."
  CHOICE = "Disabled or Not Installed"
    free
      INIT = IOPORT(1) LOC(3 2) 00b
  CHOICE = "Enable Caching Only"
    free
      INIT = IOPORT(1) LOC(3 2) 01b
  CHOICE = "Enable Caching and Lazy-Writes"
    free
      INIT = IOPORT(1) LOC(3 2) 11b

  FUNCTION = "Floppy Disk Controller"
    CHOICE = "Enabled"
      link
	IRQ  = 6
	DMA  = 2
	SHARE = YES
	PORT = 3f2h 3f4h 3f5h 3f7h
	INIT = IOPORT(1) LOC(0) 1
    CHOICE = "Disabled"
      free
	INIT = IOPORT(1) LOC(0) 0

FUNCTION = "Direct SCSI"
  CHOICE = "Enabled"
    link
      IRQ = 5 | 11 | 10 | 15		; SCSI Mode Interrupt
      SHARE = YES
      TRIGGER = LEVEL
      INIT = IOPORT(3) LOC (1 0) 10 | 00 | 01 | 11
    free
      INIT = IOPORT(9) LOC(4) 1 	; Ring Doorbell (must be last)
