Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mcconfig(F) — Xenix 2.3.4g

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

tape(C)

tape(HW)



     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



     Name
          mcconfig - Irwin tape driver parameters.

     Description
          /etc/default/mcconfig contains information on Irwin tape
          driver parameters.  mcconfig entries are in the following
          format:

               variable=parameterlist

          variable is a case insensitive character string that names a
          configuration parameter.  parameterlist is a string of one
          or more parameter values, in formats that vary depending on
          the variable used.

          The following variables are defined:

          IROPT    driver options
          IRDBG    debugging aids
          SYSFDC   system floppy controller parameters
          ALTFDC   alternate controller parameters
          4100     Irwin 4100 PC bus controller parameters
          4100B    second 4100 PC bus controller parameters
          IRDRV    drive searching sequence (old method 2.00)
          IRSRCH   drive searching sequence (new method 2.02)
          4251     4251 address

          When configuring parameters, space and tab characters can
          not be used.  For example,

          irdrv=3     is correct, while
          irdrv = 3   is incorrect and will be ignored.

          Parameters are passed to the tape driver by the daemon
          program /etc/mcdaemon. Configuration parameters are given on
          separate lines.  The pound sign character (#) may be used
          open a comment.  Comments are terminated by a newline.  For
          example the mcconfig file might contain:

               # this is a comment in the mcconfig file
               iropt=F
               4251=31f


          Changes made to the mcconfig file do not take effect until
          the system is rebooted.

        IROPT: Configuration Option String
          The tape driver configuration variable IROPT may be used
          override certain default or automatically determined
          configuration parameters.  Multiple values can be specified,
          for example:



     Page 1                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



               iropt=Bdf


          The values for IROPT are as follows:

          B/b: 64K DMA Boundary Present/Absent

          B      This computer's hardware architecture has a 64K DMA
                 memory boundary.  Tape data transfer buffers may not
                 cross a 64K physical boundary.  This is the case for
                 most PC and AT compatible machines.

          b      This computer's hardware architecture does not have a
                 64K DMA physical memory boundary.  Tape data transfer
                 buffers may be allocated any where in memory.  This
                 is true for PS/2s with the Micro Channel
                 Architecture.

          When neither (B) nor (b) is set, configuration is based upon
          the result of Micro Channel presence determination (see the
          M/m option).  In a Micro Channel machine, (b) is assumed,
          otherwise (B) is used.

          D/d: Use Demand/Single Byte DMA with Controllers Having a
          FIFO

          D    When running in PC or AT class machine and using a
               controller which has a first-in-first-out (FIFO)
               buffer, use demand mode DMA transfers.  Both the Intel
               82072 and 82077 floppy controller chips (the later is
               used in the 4100PC) have a 16 byte FIFO.

          d    When running in a PC or AT class machine use the
               standard single byte DMA transfer mode regardless of
               the floppy controller type.

          When neither (D) nor (d) is set, automatic configuration
          determines whether a floppy controller chip with a FIFO is
          present on a per controller basis.  When a controller having
          a FIFO is found (e.g., Intel 82072/82077 parts return a
          positive response to the CONFIGURE command), DMA transfers
          with respect to that controller are setup using the demand
          mode.  Using demand mode decreases the portion of the bus
          bandwidth consumed by tape read/write transfers and improves
          system performance during tape access.

          F/f: Floating/Pulled-Up Drive Search

          F    When searching for drives on the system controller, use
               a special ``floating track 0'' drive search.  The
               ``floating'' drive search assumes the track 0 floppy
               interface line floats (can be high or low) when no



     Page 2                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



               drive is attached. This algorithm works in all machines
               but can't locate a drive which is executing a load-
               point operation.  The floating search is required on
               certain Adaptec controllers.

          f    When searching for drives on the system controller, use
               the standard ``pulled-up track 0'' drive search.  The
               standard algorithm assumes the floppy interface's track
               0 line is pulled up (is high) when no tape drive is
               attached.  When the standard search is employed on a
               controller which ``floats'' the track 0 line, a drive
               may be erroneously detected at a line where none is
               present. To deal with this condition either the IRDRV
               configuration variable may be set to specify the drive
               line (preferred) or the ``floating track 0'' drive
               search (F) may be specified.

          When neither (F) nor (f) is set, automatic configuration of
          this option is performed by examining the model information
          returned from the BIOS ``Get Machine Configuration'' service
          (int 15, AH = C0).  The following model uses the
          ``floating'' drive search (F):

                      Model   Type   Sub-type  PS/2 Model
                      ___________________________________
                      F8      0D     24 MHz Model 70
          All other models use the ``pulled-up track 0'' search (f).

          H/h: Do/Don't Test for 4100 PC Bus Controller Signature

          H    Test for Irwin 4100 PC Bus controller (default).

          h    No 4100 PC controller present.

          In the PC or AT (not Micro Channel) hardware environment
          (see the M/m option), when testing for the presence of a
          4100 PC controller, the driver reads a byte from a signature
          port on the controller and compares this against the value
          45 hexadecimal.  The I/O port address of the signature port
          is found by adding six to the board's base port address (see
          the controller configuration section).  For a 4100 PC Bus
          controller with switches set to ``as shipped from the
          factory'' positions, the signature port address is 0370
          (hexadecimal) + 6.  If the byte compares the 4100 PC is
          present.  Otherwise it isn't.  This option is intended to be
          used when peeking at the factory set (0376 hexadecimal)
          signature port causes the disruption of some other adapter
          which is present at this address.  Note that the driver can
          be instructed to find the controller at a different address
          by setting the 4100 parameter.

          I/i: Do/Don't Wait-for-Index



     Page 3                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          I    Wait-for-index before data transfer of each tape block.

          i    No need to wait-for-index before data transfer.

          When neither (I) nor (i) is set, wait-for-index is enabled
          by default only when an Olivetti Micro Channel machine is
          present, otherwise wait-for-index is disabled.

          If the following symptoms are experienced, after installing
          the MC driver in certain Micro Channel machines, the wait-
          for-index algorithm may need to be enabled:

           ⊕   On the first backup this message is seen:

          mc tape write error: Defect list has unrecoverable error

      ⊕   If tape format gives the error:

               Formatting failed: Block 0 medium error :
               phase: CERTIFICATION,  track:  0,  cylinder:  0


      ⊕   Extremely poor performance is experienced while listing the
          content of or restoring a previously written tape.

          A condition exists in some Micro Channel computers which
          causes errors reading the first sector of each tape block.
          Included are the IBM models 50, 60, and 80, and the Olivetti
          P-500.

          These machines employ 72065 (except for the Olivetti which
          has a 765) floppy controllers and data separators with
          certain characteristics.  The 72065 differs from other
          controllers in that it does not inhibit VCO SYNC when an
          INDEX signal is received.  Characteristically the data
          separator circuit will: 1) have a phase lock loop (PLL)
          which totally loses synchronization when confronted with a
          50/50 duty cycle read data signal and 2) be slow to re-
          synchronize while in the ``data following mode.''  Most
          Irwin drives generate a read data signal with the 50/50 duty
          cycle when transiting servo headers.

          When these factors are combined, the following sequence of
          events occurs during a tape read operation:  A servo header
          crosses the head.  The drive sends a 50/50 duty cycle 250
          KHz signal on the read data line.  The PLL loses sync (that
          is, the loop control voltage goes to a rail).  The end of
          the servo header crosses the head and the drive gives an
          INDEX pulse.  No corresponding VCO SYNC inhibit is generated
          by the 72065 (this would normally put the PLL back on
          track).  Sector 1 crosses the head but the PLL is still too
          far off to read the sector.  The 72065 generates a record-



     Page 4                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          not-found error.

          Some Irwin drives are fitted with a data compensator board.
          This board has a circuit which alters the 50/50 duty cycle
          to a value which allows most of these controllers to
          maintain PLL synchronization.  One exception is certain
          Model 80s.

          For Micro Channel systems which don't have the compensator
          (and certain Model 80s which do), this problem can be
          circumvented by software.  The technique relies on a feature
          of the 72065 (and other controllers in the 765 class):  A
          VCO SYNC inhibit is generated just after the last byte of a
          READ command is sent to the controller.  Inhibiting the VCO
          SYNC pin (which is normally telling the PLL to lock on
          incoming read data) causes the VCO's input to be switched to
          a reference.  This results in quickly returning the PLL to a
          state in which it will be nearly synchronized with the
          ``real'' read data.  VCO SYNC inhibition results from
          programming the floppy controller using a ``wait-for-index''
          algorithm.

          The wait-for-index algorithm sends all but the last byte of
          the data transfer command to the 72065.  It then waits for a
          logical high to low transition of the floppy INDEX signal.
          The wait is accomplished by polling a special I/O port (at
          address 03F0h) provided by the Micro Channel floppy
          controller.  The wait is used to delay the writing of the
          last byte of the 72065 transfer command until after the
          INDEX transition.  As a result, the 72065 generates an
          inhibit pulse on VCO SYNC after INDEX, but with sufficient
          lead time to allow the PLL to achieve synchronization.
          Thus, sector one's ID can be correctly read.

          As no index interrupt is available, wait-for-index polls to
          accomplish its task.  The sought INDEX event is time
          critical. A high priority daemon is awakened to poll for the
          index transition.  Using the wait-for-index algorithm has
          the following drawback:  All other system task time
          processing is stopped until index polling is complete.  This
          means the user will see sluggish system performance at
          certain times.  Typically a 3 or 4 second dead period at
          tape track switch time.  This may prove unacceptable in
          certain installations.

          M/m: Micro-Channel-Architecture/PC-Bus

          M    This computer has a Micro Channel Architecture bus.

          m    This machine doesn't have a Micro Channel Architecture.

          When neither (M) nor (m) is set, automatic configuration



     Page 5                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          determines if Micro Channel Architecture hardware is
          present. The M/m option is used for automatic configuration
          of the B/b, I/i, and P/p options.

          If the string ``EISA'' is found at physical memory location
          0xfffd9, (BIOS ROM location F000:FFD9) this is not a Micro
          Channel Architecture.  Otherwise if all 8 bits of the I/O
          port at address 0x0080 (DMA page register 0 in an AT
          compatibles) can be modified this is an AT 286/386
          compatible.  Otherwise this is a Micro Channel Architecture.

          O/o: System Controller Does/Doesn't Support 1-Meg Transfers

          O    The system controller supports one Megabit data
               transfers.

          o    One Megabit transfers are not supported by the system
               controller.

          When neither (O) nor (o) is set, automatic configuration
          determines whether the system controller supports 1-Megabit
          transfer rates.  This is important when a 2120 is attached
          to the system controller.  If the controller does not
          support 1- Megabit transfers, 500-Kilobit transfers are used
          for 80 and 120 Megabyte tapes.  The driver detects the
          presence of the following 1-Megabit controllers:  Intel
          82072 and 82077.  80 and 120 Megabyte drives do not work if
          the driver thinks the hardware is capable of 1-Megabit
          transfers and it is not.  In the reverse situation, transfer
          performance is degraded.

          P/p: 4251 Is/Isn't Present

          P    A 4251 board is present in the system and has its
               jumpers configured to address the 4251 digital output
               register (DOR) at 0372h.  When present the tape driver
               echoes commands sent to the system floppy controller's
               DOR (at I/O port address 03F2h) to the 4251 DOR.  This
               address can be configured using the 4251 parameter.

          p    No 4251 board present.

          When neither (P) nor (p) is set, and when running in a PC-
          bus (non-Micro Channel) machine (see the M/m option),
          automatic configuration determines the presence of a 4251
          board by reading I/O port 0372h and comparing the input byte
          to the signature of the 4251.  The 4251 signature byte is
          42h.  This address can be configured using the 4251
          parameter.

          Q/q: Compaq Portable III Piggy Back Tape Unit Is/Isn't
          Present



     Page 6                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          Q    A Compaq Portable III piggy back tape unit is present.

          q    No Compaq Portable III piggy back tape unit is present.

          When neither (Q) nor (q) is set, the algorithm used to test
          for presence of an alternate (Compaq Portable III piggy
          back) controller does the following:  First the model byte
          is checked to see if the machine is other than an 8086 class
          machine (that is, the model byte must be less than FE).  If
          this test passes, the BIOS address F000:FFEA is checked for
          the string 'COMPAQ'.  When a match is found, the I/O port at
          0374 (that is, the alternate floppy controller chip status
          port) is read and the three low order bits are tested.  If
          all three bits are zero, the alternate controller is
          present.

          When an alternate floppy controller is present, the
          following port addresses are used by default:

                       765    765
          Base  DOR    Stat   Data   Clock
          _______________________________________________________________
          03F0  03F2   03F4   03F5   03F7    Primary FLOPPY controller
          0370  0372   0374   0375   0377    Alternate TAPE controller

          See the Controller Parameter Configuration section for
          information on reconfiguration of the default base address.

          X/x: One Megabit Transfers Are/Aren't Allowed

          X    Allow 1 Megabit transfers when conditions permit.

          x    Never allow 1 Megabit transfers.

          By default, 1 Megabit transfers (X) are allowed.  If 1
          Megabit transfers overload the system bus, the (x) option
          should be configured.

        IRDBG: Debugging Options
          Several debugging flags are available:

          s    Drive search debug

          When (s) is set, the result of the tape drive search
          (presence test) is shown.  The following shows an example:

          4100MC:3=CTLRNOTFND :2=CTLRNOTFND :1=CTLRNOTFND :0=CTLRNOTFND
          4100MCB:3=CTLRNOTFND :2=CTLRNOTFND :1=CTLRNOTFND :0=CTLRNOTFND
          4100:3=DRVNOTFND :2=tapedrive :1=DRVNOTFND :0=DRVNOTFND
          4100B:3=CTLRNOTFND :2=CTLRNOTFND :1=CTLRNOTFND :0=CTLRNOTFND
          ALTFDC:3=CTLRNOTFND :2=CTLRNOTFND :1=CTLRNOTFND :0=CTLRNOTFND
          SYDFDC:3=DRVNOTFND :2=tapedrive :1=nottested



     Page 7                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          The order of drive presence testing is shown left to right
          and top to bottom.  On a given line, the left most field has
          a symbol which represents a controller.  Numeric fields
          preceded by a colon (:) give the unit select in the range 0
          through 3.  Fields preceded by an equal sign (=) have a
          symbol which represents result of tape drive presence
          testing for the controller and unit.  These fields normally
          have a upper case symbol which represents a driver error
          code.  Two special strings are used: ``tapedrive'' if a
          drive was found, or ``nottested'' if drive presence was not
          tested.

          i    Initialization value debug

          When (i) is set, certain initialization values are
          displayed.  The following is an example:

               hz=60 12_us_scaler=12 scaler_loops=27510 model=0x1FC
               is64kdma=1 demanddma_ok=1
               isuchannel=0 port_4251=3F0
               timers=[ 0 1 2 1 2 7 19 37 181 235 ]


          r    Interrupt debug

          When (r) is set, a character is displayed for each interrupt
          processed by the driver's finite state machine.  In
          addition, reset cycles are shown.  The following lists the
          characters and their meanings:

          Character  Meaning
          _____________________________________________________________________
          N                    Floppy controller (NEC) interrupt
          T                    Timer Interrupt
          R                    Reset sent to floppy controller (start of reset)
          r                    Reset complete

          x    Data transfer debug

          When (x) is set the status of a transfer request is
          displayed at interrupt time.  The display is similar to that
          shown below:

               Cylinder
               |
               |     DMA
               |     Overruns
               |     |                     Alternating
          Track|     |    Positional       Asterisk
          |    |     |    Retries          |
          |    |     |    |                |
          |    |     |    |    Interrupt   |



     Page 8                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          |    |     |    |    Status      |        Sector Map
          +--+ +---+ +--+ +--+ +---------+ | +--------------------+
          |  | |   | |  | |  | |         | | |                    |
          T= 2 C= 42 O=12 R= 0 CRC         *[-c-- --Cs ---- M-O- --]

          Track (T=decimal number) has the transfer request's track
          number.

          Cylinder (C=decimal number) has the transfer request's
          cylinder number (tape block for the given track).

          DMA Overruns (O=decimal number) has a count of DMA overruns
          (excluding, if indicated by in the Interrupt Status, the
          current DMAOVERRUN).

          Positional Retry (R=decimal number) has the current
          positional retry number for the request.  Note that a
          ``free'' retry is allowed under the following conditions: 1)
          A track switch was performed.  2) The tape is moving
          logically forward, this transfer request's target head,
          cylinder, and sector addresses match current values, but
          there is some positional uncertainty because this transfer
          request was not not started on the completion thread of the
          previous request (That is, the period of time the tape has
          been moving between requests is not known).  3) A DMA
          overrun has occurred during the previous pass for a given
          read/write/verify request.

          Interrupt Status has the current reason for the interrupt
          displayed symbolically.

          Alternating Asterisk (*).  This one character field is
          alternately set with an asterisk (*) and a space (' ')
          character so that screen updates may be distinguished.

          Sector Map displays a visual indication of the status of
          each sector when an error occurs.  For example:

               ([-c-- --Cs ---- M-O- --])

          Each printing character in the sector map represents the
          status of a sector.  Before the start of a transfer, each
          entry is set to (s).  On successful transfer of a sector,
          the corresponding entry is set to a hyphen (-).  The
          following is a list of characters which appear in the sector
          map and their meanings:

          Character  Interrupt Error







     Page 9                                           (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



                                       Num     Symbol          Description
          _________________________________________________________________________
          -                            0       IE_NOERR        No error
          C                            12      IE_CRC          Data CRC error
          c                            13      IE_IDCRC        ID CRC error
          s                            14      IE_RECNOTFND    Record not found
          M                            16      IE_DATAMARK     No data address mark
          O                            17      IE_DMAOVERRUN   DMA overrun
          ?                            other   unexpected      Unexpected value

        IRDRV, IRSRCH: Drive Search Control
          IRDRV  drive searching sequence (old method)
          IRSRCH  drive searching sequence (new method)

          The tape driver uses a default drive searching sequence to
          test for the presence of tape drives.  The default sequence
          may be replaced with a user configured sequence using either
          the IRDRV or IRSRCH variables.  This is useful in situations
          where tape drives are erroneously detected by the default
          sequence, or where multiple tape drives are supported and a
          different mapping of logical to physical drives is desired.
          For example:

               IRSRCH=SYSFDC:3,4100:2


          This searches for a tape drive at unit select 3 on the
          system floppy controller, and unit select 2 on an Irwin 4100
          PC bus controller.

          The equivalent IRDRV specification is:

               IRDRV=04,43


          or alternately:

               IRDRV=4,43


          IRDRV specifications use a 2-digit number to specify a
          controller and unit select.  The high-order digit gives the
          controller, and the low-order the unit select.  If the
          high-order digit is missing, 0 (for the system floppy
          controller) is assumed.  Note that the unit select used by
          IRDRV is in the range 1-4 while the unit select used by
          IRSRCH is in the range 0-3.

          The following is a list of controllers supported by IRSRCH
          and IRDRV:

          IRSRCH    IRDRV



     Page 10                                          (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          Name      High
                            Digit
          ___________________________________________
          SYSFDC    0       System floppy
          ALTFDC    1       Alternate floppy
          4100MC    2       Irwin 4100 Micro Channel
          4100MCB   3       Second 4100 Micro Channel
          4100      4       Irwin 4100 PC Bus
          4100B     5       Second 4100 PC Bus

          The syntax of an IRSRCH drive search sequence specification
          is:

          IRSRCH=searchlist

          searchlist =        searchspec
                              searchspec,searchlist

          searchspec =        controller:unitlist

          controller =        SYSFDC (System floppy controller)
                              ALTFDC (Alternate controller)
                              4100MC (Irwin 4100 Micro Channel tape controller)
                              4100MCB (Second 4100 Micro Channel controller)
                              4100 (Irwin 4100 PC Bus tape controller)
                              4100B (Second 4100 PC Bus controller)

          unitlist =          unit
                              unit:unitlist

          unit =              0
                              1
                              2
                              3

          The syntax of an IRDRV drive search sequence specification
          is:

          IRDRV=searchlist

          searchlist =        searchspec
                              searchspec,searchlist

          searchspec =        controllerdigitunitdigit

          controllerdigit =   0 (System floppy controller, may be omitted)
                              1 (Alternate controller)
                              2 (Irwin 4100 Micro Channel tape controller)







     Page 11                                          (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



                              3 (Second 4100 Micro Channel controller)
                              4 (Irwin 4100 PC Bus tape controller)
                              5 (Second 4100 PC Bus controller)

          unitdigit =         1
                              2
                              3
                              4

        SYSFDC, ALTFDC, 4100, 4100B: Controller Parameter
          Configuration
          Certain variables may be set to specify tape controller
          specific parameters.  For example:

               4100=P:370,I:6,D:2,T:2,T:0


          says an Irwin 4100 PC bus controller is installed and
          configured with a base I/O Port address (P) 0370
          hexadecimal, using IRQ (I) 6, DMA channel (D) 2, and has two
          tape units (T), one wired for physical unit select number 2,
          and the other 0.

          The general form for controller parameter specifications is:

          controller=paramlist

          paramlist =    parameter
                         parameter,paramlist

          parameter =    name:value

          controller =   SYSFDC (System floppy controller)
                         ALTFDC (Alternate controller)
                         4100 (Irwin 4100 PC Bus controller)
                         4100B (Second 4100 PC Bus controller)

          name =         P (Base I/O Port address)
                         I (Interrupt Request line (IRQ))
                         D (DMA channel)
                         T (Tape unit number [0-3])

          value =        [0123456789abcefABCDEF]+ (Hexadecimal number)

        4100 PC Configuration Switch Settings
          The following tables contain the 4100 PC bus switch
          settings.  (4100 Micro Channel settings are modified with
          the PS/2 reference (setup) diskette.

          Base   |





     Page 12                                          (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          Address|  SW1   SW2   SW3   SW4
          _______|_______________________
             300 |  ON    ON    ON    ON
             310 |  off   ON    ON    ON
             320 |  ON    off   ON    ON
             330 |  off   off   ON    ON
             340 |  ON    ON    off   ON
             350 |  off   ON    off   ON
             360 |  ON    off   off   ON
           * 370 |  off   off   off   ON
             380 |  ON    ON    ON    off
             390 |  off   ON    ON    off
             3a0 |  ON    off   ON    off
             3b0 |  off   off   ON    off
             3c0 |  ON    ON    off   off
             3d0 |  off   ON    off   off
             3e0 |  ON    off   off   off
             3f0 |  off   off   off   off

          DMA    |
          Channel|  SW5   SW6   SW7   SW8
          _______|_______________________
          1      |  ON    off   ON    off
          2*     |  off   ON    off   ON

          IRQ|  SW9   SW10
          ___|____________
          3  |  ON    off
          6* |  off   ON

          *  factory setting

        4251: Floppy Extender Address Configuration
          The Irwin 4251 adapter board augments the system floppy
          controller. It extends the total number of drives which may
          be attached from 2 to 4, and allows for the attachment of an
          external drive.  The 4251 uses a single drive select I/O
          port. By design, the 4251 I/O port partially mimics the
          functionality of the system floppy controller's drive select
          port.  The system controller's drive select port is called
          the Digital Output Register (DOR).  When written with
          certain values, both the system controller's DOR and the
          4251 drive select port activate a drive select line at the
          floppy interface.  In the standard ``as shipped from the
          factory'' configuration, the 4251 port is addressed at 03F2
          hexadecimal.  The same address is used by system floppy
          controller's DOR.  Thus, in the standard configuration, the
          4251 monitors (that is, listens to and uses) bytes written
          to the system's DOR to select a drive.  The 4251 uses unit
          selects 2 and 3.  Unit selects are used by the software and
          should not be confused with the DRIVE SELECT jumpers on the
          tape drive which are almost always set to DRIVE SELECT 2.



     Page 13                                          (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          In certain hardware environments, the standard 4251
          configuration either doesn't detect the presence of or fails
          to write tapes in a tape drive.

          When a 4251 is configured for the standard address and is
          connected to:

           ⊕   a DTC controller, data is never written to tape.  The
               reason: DTC controllers disable the floppy interface
               WRITE GATE signal when unit selects 2 or 3 (the third
               and fourth) selects are activated.  This means the tape
               drive's write circuitry is never enabled.

           ⊕   an Adaptec suffix 'B' controller (e.g., ACB-2xxxB or
               1542B SCSI controllers), driver software never detects
               the presence of a tape drive.  The reason: Adaptec
               suffix 'B' controllers drive the TRACK 0 line active
               for unit selects 2 or 3.  The TRACK 0 line is the line
               used by the drive to return the results of status
               requests and motion commands issued by the driver
               software.

          The conditions listed in the above three paragraphs can be
          overcome.  Typically reconfiguring the 4251 to use the
          recommended alternate address by installing the A7 jumper
          allows the tape drive to function correctly.  When this is
          done, the 4251 I/O address moves from 3F2 to 372
          hexadecimal.

          When configuring the address of the Irwin 4251, the board
          address jumpers are changed from the ``as shipped'' A0, A2,
          A3 position. Normally the change involves reinstalling a
          jumper stored on one pin of the A7 pin pair to connect the
          ``A7'' pin pair.  This selects the address 372.  However,
          when a secondary floppy controller (such as the Irwin 4100)
          or other adapter is present the 372 address may be in
          conflict.  In general, a secondary floppy controller uses
          addresses in the range 370 through 377, which includes the
          alternate ``372'' address of the 4251.  To resolve this
          conflict, the 4251 can be re-addressed.  In addition, the
          tape driver software must be informed of the new address.

          The following information is given to aid in understanding
          of the relationship of the 4251 and tape driver software,
          the meaning of the 4251 jumpers A0 through A9, and an
          example of a non-standard configuration.

          At initialization, the tape driver software tests for the
          presence of a 4251 at an alternate address.  By default, the
          alternate address is 372 hexadecimal.  (To select the 372
          address on the 4251 install jumpers across the A0, A2, A3,
          and A7 pin pairs.)  The test reads a byte from the alternate



     Page 14                                          (printed 2/7/91)





     MCCONFIG(F)              XENIX System V               MCCONFIG(F)



          address and compares the byte with the signature.  When the
          4251 select port is read, a signature byte (42 hexadecimal)
          is returned.  If the signature compares, the driver sends
          select bytes to both the system's DOR and the 4251 port.
          The default alternate address may overridden by using the
          variable named ``4251.''  For example,

               4251=31f


          tells the driver to test and use, if present, the port at
          31F hexadecimal.

          The 4251 port uses a single 10-bit I/O port address.  The
          address is set using the jumper pin pairs labeled A0 through
          A9.  Each jumper pin pair corresponds directly with an I/O
          port address bit. When a jumper pin pair is connected, the
          corresponding address bit is set to a logical 0.  When the
          pin pair is disconnected, the address bit is set to a
          logical 1.

          For example, to address the 4251 at 31F (an address which is
          unlikely to conflict with standard adapters), connect jumper
          pin pairs A5, A6, and A7.

     Files
          /etc/default/mcconfig
          /etc/mcdaemon

     See Also
          tape(C), tape(HW)
























     Page 15                                          (printed 2/7/91)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026