tapedrv.ini Driver File Contents (26r0590.exe)

;07/02/04 RQ added www addressing
;06/28/04 RQ modified ATL to 3502
;06/22/04 BJ modified VS160 to quantum_dltvs_8k
;06/22/04 RQ modified 3607-26X to v15
;06/16/04 RQ modified listing of device names to IBM part numbers
;05/06/04 RQ modified LTO2 to 3AY4
;05/06/04 RQ modified part numbers
;05/03/04 RQ modified DLTVS to v94
;05/01/04 BJ modified 3581 to adic_faststor
;04/30/04 RQ modified 4560 to 425
;04/26/04 RQ modified 3607 to v15
;04/20/04 RQ modified TR7 to 310A
;04/01/04 RQ added 3581 algorythm
;03/11/04 RQ modified Vs160 to v34
;03/11/04 RQ modified back on LTO2 to 333K
;02/25/04 RQ modified IBM LTO2 to 3AY4
;02/18/04 RQ modified tapedrv.ini names to associated IBM part numbers 
;02/11/04 RQ modified 3581 to i114
;02/11/04 RQ modified 3583 to 3.10.04
;02/11/04 RQ modified 3582 to 227b
;02/11/04 RQ modified 4560-SLX to v22
;01/19/04 RQ modified M2 to 8ck3v07w
;01/14/04 RQ modified DDS4 to v910b000
;11/17/03 RQ modified VXA/2 to v2100efunc
;11/17/03 RQ modified DAT72 to VA060001
;11/05/03 RQ modified VXA/2 algorythm
;11/05/03 RQ modified TR7 to 309c
;10/23/03 RQ modified VS160 to IBM string
;10/16/03 RQ modified Quantum strings
;10/06/03 RQ added 3582
;10/02/03 RQ modified 3607 robot to v35
;10/02/03 RQ modified 3607 SDLT to v72
;09/25/03 RQ modified 3583 robot script
;09/19/03 RQ modified 4560 HP drive sled
;08/20/03 RQ modified 4560 SDLT sled to v70
;08/05/03 RQ added VS160
;08/04/03 RQ modified 3583 to 2.86
;07/29/03 BJ modified Seagate_SP40, DDS4_LC_Autoloader, DDS5 inquiry strings
;07/25/03 RQ modified VS80 to v56
;07/25/03 RQ modified 3850 to 35V0
;07/23/03 RQ modified DDS/5 to A037
;07/10/03 RQ added HP Ultrium in 4560
;06/12/03 RQ added DDS/5 
;06/10/03 RQ modified 3607 Autoloaders and sleds
;06/04/03 RQ modified DDS/4 Autoloader LUN1 from not recognized to ignored.
;05/19/03 RQ modified LTO Gen2 333K
;05/13/03 RQ modified DLT8000 to v85
;03/31/03 RQ added IBM 3581
;03/31/03 RQ added IBM 3583
;03/25/03 RQ added SDLT320
;03/25/03 RQ added IBM LTO Gen2
;03/20/03 RQ modified dds/3 to 7580
;02/19/03 RQ added VXA2
;01/15/03 RQ added DDS4 LC Autoloader
;11/13/02 RQ modified 4560 loader to v408
;10/31/02 RQ added 4560-SLX
;10/14/02 RQ added 3607-16X
;09/04/02 RQ modified HHLTO to N25G
;08/19/02 RQ modified SDLT to v42
;07/10/02 RQ modified M2 to v07g
;07/10/02 RQ modified DDS/4LC to 9070
;06/07/02 RQ modified SDLT to use 8k
;05/14/02 RQ modified for DLT7000 to v106
;05/10/02 RQ modified for 3502L to v38
;05/10/02 RQ modified for 3502A to v38
;05/10/02 RQ modified for DLTVS to v50(5032)
;05/10/02 RQ modified for LTO to 22UD
;05/10/02 RQ modified for TR7 to 309a
;05/10/02 RQ modified for DDS/4 LC to 9030
;05/10/02 RQ modified for 3600L to v40
;04/08/02 RQ modified for TR7
;03/05/02 RQ modified for SDLT version control
;02/25/02 RQ modified for DDS/4 LC
;01/30/02 RQ modified DLT8000 to v50
;01/30/02 RQ modified SuperDLT syntax error
;01/25/02 BJ modify DLT4000 to use UpdateAlgorithm="quantum_dlt_8k"
;01/25/02 BJ add UpdateFlags = "c" to [IBM_Ultrium-TD1_SCSI]
;01/07/02 RQ re-added 3600 support
;11/19/01 RQ modified for 3580 support
;11/12/01 RQ removed 3600 support
;10/22/01 RQ modified DDS/4 to 8200
;10/11/01 RQ modified 3600-109 to 232I
;10/11/01 RQ modified Mammoth 2 to v03s
;10/10/01 RQ modified NS20 to 7a64
;10/08/01 RQ modified DLT8000 to v60
;08/22/01 BJ 3502-R14, 3600-220 Library fixes
;07/24/01 RQ modified DLT8000 firmware to v60
;07/13/01 RQ modified LTO firmware to 16E0
;07/10/01 RQ modified to allow HP c7145
;07/08/01 RQ modified to allow HP c7200
;07/01/01 RQ modified Benchmark DLT1 to work.
;06/29/01 RQ modified DLT7000 and sleds to use D7_V105.img
;06/18/01 RQ modified Mammoth 2 to v03s.
;06/18/01 RQ modified DLTVS to V31.
;06/18/01 RQ modified DDS/4 and DDS/4 Autoloader to 8180.
;04/25/01 RQ modified Mammoth 1 and DDS/2 tape unit SCSI inquiries.
;02/13/01 BJ modifications as discussed with RQ.
;  - Make filenames explicit. 
;  - Use identical firmware file for [Seagate_Hornet-8_SCSI] 
;    and [IBM_Hornet-8_SCSI].
;  - Remove extraneous comments.
;
; Comment lines begin with a semicolon (;).  Example:
;
;    ; this is a comment line
;
; Section lines mark the beginning of a group of parameters and are 
; enclosed in brackets ([]).  For example, the following marks the 
; start of the tapedrv global initialization section:
;
;    [tapedrv]
;
; Parameter lines are of the form <parameter>=<value>.  By way of 
; example, the following parameter shows where a firmware file
; may be found:
;
;    AutoFileName = v8???000.bin
;
; Section and parameter names are case insensitive.
;
;
; Parameter Values
; ----------------
; Parameter values in the .ini are generally treated as lists of 
; comma separated strings. For example
;
;    string1,"string2" , string3 
;
; For most parameters, only the first string in a list is 
; significant.  Thus, for most parameters, strings beyond the first 
; are ignored.
;
; Each string in a list, may be an unquoted, quoted, or a 
; combination.  For unquoted strings, leading and trailing white 
; space is stripped.  White space and commas within matching 
; quotes are preserved.  Unquoted and quoted strings, between 
; commas, are concatenated.  For example, the input string text 
; string
;    "a", b, " c,d" e "fg", "z",,
; is the same as the six comma separated string list 
;    "a", "b", " c,defg", "z", "", ""
;
; In order for a string to contain a literal comma (one that is not 
; a string list separator), the comma must either appear between 
; matching double quotes ("xx,yy") , or be escaped using a grave 
; accent (xx`,yy).  A literal double quote is represented using a 
; grave accent (`").  A double grave accent (``) represents a literal 
; grave accent.  For example the input 
;    a b`, c
; is taken as the single string
;    "ab,c"
;
; ASCII Patterns
; --------------
; String values for InquiryStd and AutoFileName are patterns.  
; Patterns are matched with actual strings returned by the SCSI 
; Inquiry command or by system file directory services.
;
; A pattern is an ASCII string which may contain the control 
; characters: * ? [ {
;
; A pattern containing control characters may be capable of 
; matching more than one actual string. 
;
; The character "*" matches any string of characters, including 
; the null string.  The character "?" matches any single 
; character.  Character sequences within square brackets ([ and ]) 
; matches any of the characters enclosed.  Within square brackets, 
; a pair of characters separated by a "-" additionally matches 
; any of the characters lexically between the two.  As special 
; cases, within a string a "[]" as well as a closing "]" without 
; a matching opening "[" is matched literally.  Square brackets 
; have higher precedence than braces ({ and }).
;
; The notation a*?[bd-x]z says match a string beginning with 'a', 
; followed by zero or more undefined characters, and ending with 
; three characters, the first being any single character, 
; the second being either b, or d through x, and the final being z.
;
; The notation "a{b,c{,d}f}" is shorthand for "ab", "acf", or "acdf".
; As special cases, within a string a "{}" as well as a closing 
; "}" without a matching opening "{" is matched literally.  Also 
; a "{", at the end of a pattern, is matched literally. 
;
; When directory separators are used in filename patterns, the 
; forward slash, "/", is preferred for compatibility with both 
; Windows and Linux.  Wild cards are disallowed for logical drive 
; names (e.g., X:), and directory separators.
;
; The character "`" (grave accent) is the pattern escape character 
; and causes the character following to be taken literally rather 
; than as a pattern control.  To specify a single grave accent (`) 
; literal, a double grave accent (``) must be given.  For example 
; "`?" says match "?" literally.
;

;[tapedrv] Section
; The [tapedrv] section contains global initializations for tapedrv.
;
; magic=<magic_number>
;    magic is used for file format verification.
;
; ide_search_length=<number of ide channels to search>
;    This parameter controls the number of IDE adapters to search 
;    starting with ide0_*.
;    ide_search_length is only meaningful in 16-bit DOS mode.
;
;    When ide_search_length=2, then ide0_* (the Primary IDE adapter) 
;    is searched first, ide1_* (the Secondary IDE adapter) is 
;    searched second, and both ide2_* and ide3_* are ignored.
;
; ide[0-3]_port=<base_ide_io_port>
; ide[0-3]_irq=<ide_interrupt_request_number>
;    These parameters configure the IDE host adapter's I/O port 
;    address and IRQ.  They are only meaningful in 16-bit DOS mode.
;
; devices<NN>=<Device_Section>
;    device<NN> parameters, where <NN> is 00 through 99, lists 
;    the names of each [<Device_Section>] that follows.  Any device 
;    section name not present within this list is ignored.
;    During program initialization, all devices<NN> are read in 
;    in order from devices00 through devices99.  The special 
;    <Device_Section> name, EndOfDevices, may be used to terminate 
;    the device section names list and improve initialization 
;    performance.
;
[tapedrv]
magic = 0x5400
ide_search_length = 2
ide0_port = 0x1f0
ide0_irq  = 14
ide1_port = 0x170
ide1_irq  = 15
ide2_port = 0x1e8
ide2_irq  = 11
ide3_port = 0x168
ide3_irq  = 10

devices00 = 36L8804
devices01 = 33L4978
devices02 = 24P2398
devices03 = 01K1325
devices04 = 00N8017
devices05 = 24P2396
devices06 = 3600-109
devices07 = 3600-R20 & 3600-220
devices08 = 09N4048
devices09 = 06H9720
devices10 = 06H9720-2
devices11 = 20L0549
devices12 = 06H9716
devices13 = 06H9716-2
devices14 = 06H9716-3
devices15 = 09N4042
devices16 = 59H3536
devices17 = Seagate_Scorpion-4-8_256K
devices18 = Seagate_Scorpion-4-8_512K
devices19 = IBM_Scorpion-4-8_512K
devices20 = 09N4041
devices21 = 00N7991
devices22 = 00N7992
devices23 = Seagate_Scorpion-240_lun1
devices24 = 09N4040
devices25 = 04K0149
devices26 = 3502_SLED-36L8805
devices27 = 00N7990
devices28 = SDLT1 sled
devices29 = 3580_Ultruim-1
devices30 = 3502-108
devices31 = 3502-314
devices32 = 00N7991-LC
devices33 = 00N7992-LC
devices34 = DDS4_LC_Autoloader_lun1
devices35 = 48P7042
devices36 = IBM_3447
devices37 = 3447-105
devices38 = 3447-106
devices39 = 3607-16X
devices40 = 4560-SLX
devices41 = 3607_16X-drive
devices42 = 3607-26X-drive
devices43 = 59P6746
devices44 = 71P9146
devices45 = 59P6660
devices46 = 3581
devices47 = 3583
devices48 = DDS Gen5(DAT72)
devices49 = 3607-26X-robot
devices50 = 59P6658
devices51 = 59P6745
devices52 = 4560_SDLT320
devices53 = 3582
devices54 = EndOfDevices

;[autoupdate] Section
; [autoupdate] has parameters used by the autoupdate command:
;
; UpdateDelay = <seconds>
;    <seconds> gives the delay before the initial device update 
;    if any.
;
; FinalDelay = <seconds>
;    <seconds> gives the delay before the exiting after the final 
;    status display.
;
[autoupdate]
UpdateDelay = 25
FinalDelay  = 10
;[<Device_Section>] Sections
; Each supported tape device has its own [<Device_Section>].  In 
; order to be used, a given [<Device_Section>] must be mentioned 
; as a devices<NN> = <Device_Section> entry in the [tapedrv] 
; section.  A [<Device_Section>] has the following parameters:
;
; Description = "<device description text>"
;    Description is optional.  It has information that is printed by 
;    the scan command when a tape device is recognized.  
;
;    Example:
;       Description = "IBM Hornet-8 SCSI TR-4"
;
; InquiryStd = "<peripheral_type>:<inquiry_string>"
;    InquiryStd gives a string used to detect the make and model of 
;    the device associated with the device section.  It consists of 
;    two strings separated by a ":".
;
;    <peripheral_type> has a string indicating which peripheral 
;       device type to match.  The peripheral device type is a 5-bit 
;       binary field at Inquiry data byte 0, bits 4..0.  Recognized 
;       ASCII values and binary mappings for <peripheral type> are:
;
;          ASCII   Binary
;          ------- ------
;          Tape    1
;          Changer 8
;
;    <inquiry_string> is an ASCII Pattern string that is compared 
;       against the ASCII field of standard Inquiry data returned by 
;       the device.  Where the ASCII field is 28 character contiguous 
;       field beginning at byte 8 and includes the Vendor 
;       Identification, Product Identification, and Product Revision 
;       Level fields. <inquiry_string>s are case sensitive.  See 
;       "ASCII Patterns".
;
;    Examples:
;       InquiryStd =    "Tape:CONNER  CTT8000-S       3???"
;       InquiryStd = "Changer:HP      C7145           ????"
;       InquiryStd = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 04106-XXX[73]???"
;
; InquiryStdAscii = "<byte offset>:<ascii pattern>"
; InquiryStdHex   = "<byte offset>:<hex pattern>"
;    InquiryStdAscii and InquiryStdHex may optionally be used to 
;    extend the matching of standard Inquiry data into the vendor 
;    specific data area (beyond byte 36).  These parameters are 
;    used only after Inquiry data matches the InquiryStd parameter 
;    in the same [<Device_Section>].  
;
;    InquiryStdHex is useful for identifying a Firmware Personality 
;    byte often kept in byte 41 of Inquiry data.
;
;    When the InquiryStdHex parameter is specified, all available 
;    standard Inquiry data (up to 255 bytes) is retrieved from the 
;    device.  Then, the actual number data bytes read is converted 
;    into an ASCII hexadecimal string.  This hex string is then 
;    used as the target of InquiryStdHex pattern matching.
;
;    InquiryStdAscii and InquiryStdHex values consists of an integer 
;    and a string separated by a ":".
;
;    <byte offset> is an integer value, in the range 0 through 254, 
;       giving the byte offset in the Inquiry data at which to begin 
;       <ascii pattern> or <hex pattern> matching.  For example, 
;       41 if we are interested in data starting at byte offset 41 
;       of Inquiry data.  This number may be expressed as decimal, 
;       hexadecimal (with an '0x' prefix), or octal (with a '0' 
;       prefix).  An empty <byte offset> is erroneous.
;
;    <ascii pattern> is an ASCII Pattern string that is compared 
;       against the ASCII Inquiry data  returned by the device.  The 
;       final character in <ascii pattern> should be a '*' when the 
;       remainder of Inquiry is not of interest.  Pattern matching 
;       is case sensitive.  See "ASCII Patterns".
;
;    <hex pattern> is an ASCII Pattern string using characters from
;       the set *?[-]{}0123456789ABCDEFabcdef.  A <hex pattern> is 
;       compared against Inquiry data after the data is converted 
;       from binary to a hexadecimal ASCII string called the target 
;       string.  Pattern matching begins at <byte offset> in the 
;       target string.  Often the final character in <hex pattern> is 
;       an '*' when the remainder of the data is not of interest.  
;       Pattern matching is case insensitive.  See "ASCII Patterns".
;
;    For example, if a device returns the following 56 bytes of 
;    Inquiry data --
;       0: 01 80 02 02 33 00 00 38 51 55 41 4e 54 55 4d 20  ....3..8QUANTUM 
;      16: 44 4c 54 37 30 30 30 20 20 20 20 20 20 20 20 20  DLT7000         
;      32: 32 35 36 30 71 60 00 07 32 0f 01 00 00 3f 00 00  2560q`..2....?..
;      48: 00 00 00 02 41 30 30 33                          ....A003
;    -- the data is converted to the following 112 character 
;    ASCII hexadecimal string (in actuality, all on one line):
;       "01800202330000385155414e54554d20
;        444c5437303030202020202020202020
;        3235363071600007320f0100003f0000
;        0000000241303033"
;    and, thus, the parameter
;       InquiryStdHex = "41:0f*"
;    would match the Inquiry byte offset decimal 41, a value of 0f 
;    hexadecimal.
;
;    Using the parameter
;       InquiryStdHex = "41:[0-4]???{00,3c,99}*"
;    specifies that byte 41 must be in the range 00 through 4f,  
;    and byte 43 must be either 00, 3c, or 99.
;
;    InquiryStdHex Examples:
;       InquiryStdHex = "41:04*"   For Quantum OEM personality
;       InquiryStdHex = "41:0f*"   For Quantum OML personality
;       InquiryStdHex = "41:12*"   For Quantum OMX personality
;
; VpdAscii = "<page number>:<byte offset>:<ascii pattern>"
; VpdHex   = "<page number>:<byte offset>:<hex pattern>"
;    VpdAscii and VpdHex specify Vital Product Data (VPD) to match.  
;    VpdAscii is useful for matching ASCII data, and VpdHex is useful 
;    for matching binary data.  These parameters are optional.  When 
;    one or both are present, they further qualify a device whose 
;    standard Inquiry data matches the InquiryStd parameter in the 
;    same [<Device_Section>].  
;
;    When these parameters are given, they cause the entire VPD 
;    page (up to 255 bytes) to be retrieved for the given VPD page 
;    number.
;
;    VpdAscii and VpdHex parameter values consists of three fields
;    separated by colons (":").
;
;    <page number> is an integer value, in the range 0 through 255, 
;       giving the Inquiry Vital Product page number whose data is 
;       to be matched against the pattern data.  This number may be 
;       expressed as decimal, hexadecimal (with an '0x' prefix), 
;       or octal (with a '0' prefix).  For example 193, 0xc1, and 
;       0301 specify the same page.  An empty <page number> field 
;       is erroneous.
;
;    <byte offset> is an integer value, in the range 0 through 254, 
;       giving the byte offset in the VPD data at which to begin 
;       <ascii pattern> or <hex pattern> matching.  For example, 
;       41 if we are interested in data starting at byte offset 41 
;       of VPD data.  This number may be expressed as decimal, 
;       hexadecimal (with an '0x' prefix), or octal (with a '0' 
;       prefix).  An empty <byte offset> is erroneous.
;
;    <ascii pattern> is an ASCII Pattern string that is compared 
;       against the ASCII VPD returned by the device.  The final 
;       character in <ascii pattern> should be a '*' when the 
;       remainder of VPD is not of interest.  Pattern matching 
;       is case sensitive.  See "ASCII Patterns".
;
;    <hex pattern> is an ASCII Pattern string using characters from
;       the set *?[-]{}0123456789ABCDEFabcdef.  A <hex pattern> is 
;       compared against VPD after the data is converted from binary 
;       to a hexadecimal ASCII string called the target string.  
;       Pattern matching begins at <byte offset> in the target 
;       string.  Often the final character in <hex pattern> is an '*' 
;       when the remainder of the data is not of interest.  Pattern 
;       matching is case insensitive.  See "ASCII Patterns".
;
;    VpdAscii Example:
;       VpdAscii = "3:12:PIE[0-2]*"
;       says for VPD page 3, byte offset 12, match any ASCII 
;       string that begins with PIE0, PIE1, or PIE2.
;
;    VpdHex Example:
;       VpdHex = "0xc0:10:2f*"
;       says for VPD page 0xc0, byte offset 10, match the 
;       binary byte value 2f.
;
; InquiryCFR_OEM  = "<1 to 3 digit oem number pattern>"
;    This optional parameter is needed for certain Seagate DAT drives.  
;    It further qualifies a device whose standard Inquiry data matches 
;    the InquiryStd parameter in the same [<Device_Section>].  When 
;    InqyiryCFR_OEM is specfied, then the Seagate Controller Firmware 
;    Revision (CFR) VPD Inquiry page (0xc0) is retrieved from the 
;    drive.  The 1 to 3 digit OEM field (skipping the '-' prefix),  
;    contained within the CFR page is compared with an ASCII Pattern 
;    given by the parameter value.  See ASCII Patterns.
;
;    Examples:
;       InquiryCFR_OEM = "0"
;       InquiryCFR_OEM = "547"
;       InquiryCFR_OEM = "{000,400}"
;
; AutoFileName = "<firmware file>"
;    AutoFileName gives the name of the firmware file with which to 
;    update an out-of-date device.  If a -p <firmware_path> is 
;    specified on the command line, then <firmware_path> is prefixed 
;    to <firmware file>.  <firmware file> is an ASCII Pattern.  The 
;    pattern must represent a unique filename.  If AutoFileName is 
;    empty or missing from a device section, and a device is found to 
;    be "out of date" (when compared with AutoFileVersion), then 
;    tapedrv reports the device state as "Needs alternate update 
;    method".  That is, the device needs to be updated by a method 
;    other than using tapedrv autoupdate.  See "ASCII Patterns".
;
;    Examples:
;       AutoFileName = "1234.img"
;       AutoFileName = "seagate/ti4s?3??.fls"
;
; AutoFileVersion = "<4-character version>"
;    AutoFileVersion gives the version (or Product Revision Level) 
;    that would be returned by the device, in the 4-bytes, beginning 
;    at byte 32 of SCSI Inquiry data, after the firmware file, given 
;    by AutoFileName, is transferred and saved in the device's 
;    EEPROM.  When any of the 4 characters has the special character 
;    "?", it is substituted with the corresponding version character 
;    currently present in the device.  
;
;    If AutoFileVersion is missing or has an empty string, than the 
;    drive is displayed as Ignored device.  Any non-empty 
;    <4-character version> having less than 4-characters 
;    is right padded with ? to 4 characters.
;
;    To assure correct 'new version' display, "?" must be used when 
;    both these conditions occur: 1) the character will not change as 
;    a result of the update, and 2) the character is not "fixed" 
;    based on the make and model.  For example for a Quantum DLT4000, 
;    the first and second characters indicate the "servo code level".  
;    The servo code level is neither altered by firmware update, nor 
;    fixed for the make and model.  The third and fourth characters 
;    indicate the "firmware code level" and *are* altered by firmware 
;    update.  Thus, for the DLT4000, if AutoFileName represents 
;    version 45 firmware, then set AutoFileVersion to the string, 
;    "??45".
;
;    Examples:
;       AutoFileVersion = "??10"
;       AutoFileVersion = "1.AB"
;
; CompareControl = "<control>"
;    CompareControl controls the comparison of the device version 
;    (or 4-character Product Revision Level) with that of the file 
;    version given by the AutoFileVersion parameter.  <control> is a 
;    1 to 4 digit string, with each digit being a unique selection 
;    from the list 0 1 2 or 3.  Characters other than 0 1 2 or 3 are 
;    ignored.  <control> specifies both the byte offsets of, and 
;    significance of version character comparison.  That is, the value 
;    of each <control> digit is a byte offset in the 4-digit version, 
;    while the order of the <control> digits gives the significance 
;    of the compared version digits, with the left most <control> 
;    digit being the most significant.  Version comparisons are case 
;    insensitive.
;
;    For example if <control> is "3210", all 4 characters of the 
;    version are compared in reverse order from right to left.  If 
;    <control> is "23", than only the final 2 characters of the 
;    version are compared from left to right.  The string "??23" is 
;    identical to "23" because "??" is ignored.  If CompareControl is 
;    missing or has an empty <control> string, or contains no valid 
;    characters then the default value, then "0123" is used.  
;
; UpdateAlgorithm = "<algorithm>"
;    UpdateAlgorithm selects the <algorithm> used to update the tape 
;    device firmware and must be one of the following:
;
;       "<algorithm>"        Tape Device
;       -------------------  -----------------------------------
;       "standard"           Standard tape or changer
;       "exabyte_mammoth"    Exabyte Mammoth
;       "seagate_travan"     Seagate Travan TR-4, TR-5
;       "seagate_tr7"        Seagate Travan TR-7
;       "seagate_dds2_256k"  Seagate DDS-1, DDS-2 w/ 256K EEPROM
;       "seagate_dds2_512k"  Seagate DDS-1, DDS-2 w/ 512K EEPROM
;       "seagate_dds3"       Seagate DDS-3
;       "seagate_dds4"       Seagate DDS-4, DAT-72
;       "quantum_dlt"        Quantum/Benchmark DLT (w/ 4KB fw transfers)
;       "quantum_dlt_8k"     Quantum/Benchmark DLT (w/ 8KB fw transfers)
;       "quantum_dltvs_8k"   Quantum/Benchmark DLT-VS (w/ 8KB fw transfers)
;       "ibm_ultrium"        IBM Ultrium
;       "hp_ultrium"         HP Ultrium
;       "hp_library"         HP Library/Autoloader
;       "adic_faststor"      ADIC Autoloader
;
; UpdateFlags = "<flagcharacters>"
;    <flagcharacters> is a string of case significant flags that 
;    control firmware update behavior for an associated device.
;
;    <flagcharacter>  Meaning
;    ---------------  -----------------------------------
;              c      Skip post firmware update inquiry verification
;                     if supported Changer is detected.
;              Z      Write firmware to LUN 0 of same SCSI Device ID.
;
;    Example:
;       UpdateFlags = "cZ"
;
; UpdateSeconds = <seconds>
;    <seconds> gives a maximum number of seconds required to update 
;    firmware.  If <seconds> is too small, a firmware update error 
;    may be erroneously reported.  The default value is 120.  Note 
;    that, on the display, the operator sees a message similar to 
;    Update will take up to <n> minutes where <n> is derived by 
;    rounding up <seconds> the nearest minute.  The minimum 
;    displayed value for <n> on the display is 2.
;
;    Example:
;       UpdateSeconds = 45
;
[36L8804]
Description     = "ATL Products L200 Library (with Quantum DLT7000 drives)"
InquiryStd      = "Changer:QUANTUM Powerstor L200  ????"
AutoFileName    = "108_v38.img"
AutoFileVersion = "??26"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 300

[33L4978]
Description     = "ATL Products L500 Library (with Quantum DLT7000 drives)"
InquiryStd      = "Changer:QUANTUM Powerstor L500  ????"
AutoFileName    = "314_v38.img"
AutoFileVersion = "??26"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 300

[24P2398]
Description     = "Benchmark DLT1"
InquiryStd      = "Tape:BNCHMARKDLT1            ????"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dltvs80.exe"
AutoFileName    = "vs80_v94.img"
AutoFileVersion = "5E40"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[01K1325]
Description     = "Exabyte Mammoth-1"
InquiryStd      = "Tape:EXABYTE EXB-8900????????????"
AutoFileName    = "8cm1v41k.i"
AutoFileVersion = "V41K"
UpdateAlgorithm = "exabyte_mammoth"
UpdateSeconds   = 121

[00N8017]
Description     = "Exabyte Mammoth-2 (M2)"
InquiryStd      = "Tape:EXABYTE Mammoth2        ????"
AutoFileName    = "8ck3v07w.i"
AutoFileVersion = "v07w"
UpdateAlgorithm = "exabyte_mammoth"
UpdateSeconds   = 121

[24P2396]
Description     = "HP Ultrium-1 SCSI"
InquiryStd      = "Tape:HP      Ultrium 1-SCSI  N??G"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/HHLTO.exe"
AutoFileName    = "n2cg.frm"
AutoFileVersion = "N2CG"
UpdateAlgorithm = "hp_ultrium"
UpdateSeconds   = 200

[3600-109]
Description     = "3600-109"
InquiryStd      = "Changer:HP      C7145           ????"
AutoFileName	= "3600a_32.frm"
AutoFileVersion	= "232I"
UpdateAlgorithm = "hp_library"
UpdateSeconds   = 200

[3600-R20 & 3600-220]
Description     = "3600-R20 and 3600-220"
InquiryStd      = "Changer:HP      C7200           ????"
AutoFileName	= "3600l_40.frm"
AutoFileVersion	= "?40I"
UpdateAlgorithm = "hp_library"
UpdateSeconds   = 420

[09N4048]
Description     = "IBM Ultrium-1"
InquiryStd      = "Tape:IBM     ULTRIUM-TD1     ????"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/LTOGen1.exe"
AutoFileName    = "36U3L1s.ro"
AutoFileVersion = "36U3"
UpdateAlgorithm = "ibm_ultrium"
UpdateFlags     = "c"
UpdateSeconds   = 121

[06H9720]
Description     = "Seagate Bali-2A ATAPI TR-4: CTT8000x-A"
InquiryStd      = "Tape:CONNER  CTT8000-A       5???"
AutoFileName    = "TR4a0551.fls"
AutoFileVersion = "5.51"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[06H9720-2]
Description     = "Seagate Hornet-8 ATAPI TR-4: STTx8000A"
InquiryStd      = "Tape:Seagate STT8000A        5???"
AutoFileName    = "tr4a0551.fls"
AutoFileVersion = "5.51"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[20L0549]
Description     = "Seagate Hornet-20 ATAPI TR-5: STTx20000A"
InquiryStd      = "Tape:Seagate STT20000A       8???"
AutoFileName    = "tr5v8a51.fls"
AutoFileVersion = "8A51"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[06H9716]
Description     = "Seagate Falcon-2 SCSI TR-4: CTT8000x-S"
InquiryStd      = "Tape:CONNER  CTT8000-S       1???"
AutoFileName    = "fibm2122.fls"
AutoFileVersion = "1.22"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[06H9716-2]
; Replace Seagate firmware with same IBM firmware 
; as used in [IBM_Hornet-8_SCSI] below.
Description     = "Seagate Hornet-8 SCSI TR-4: STTx8000N"
InquiryStd      = "Tape:Seagate STT8000N        3???"
AutoFileName    = "ti4s0352.fls"
AutoFileVersion = "3.52"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[06H9716-3]
; IBM special firmware makes Hornet-8 appear similar to a Falcon-2
Description     = "IBM Hornet-8 SCSI TR-4"
InquiryStd      = "Tape:CONNER  CTT8000-S       3???"
AutoFileName    = "ti4s0352.fls"
AutoFileVersion = "3.52"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[09N4042]
Description     = "Seagate Hornet-NS20 SCSI TR-5: STTx20000N-C"
InquiryStd      = "Tape:Seagate STT20000N       7???"
AutoFileName    = "NS207a64.fls"
AutoFileVersion = "7A64"
CompareControl  = "0?23"
UpdateAlgorithm = "seagate_travan"
UpdateSeconds   = 45

[59H3536]
Description     = "Seagate Peregrine DDS-DC/DDS2: CDT4004/CTD8000"
InquiryStd      = "Tape:ARCHIVE Python 28388-XXX5???"
AutoFileName    = "v577-47.hex"
AutoFileVersion = "5.AQ"
UpdateAlgorithm = "seagate_dds2_256k"
UpdateSeconds   = 60

[Seagate_Scorpion-4-8_256K]
; Cobra2 256K EEPROM - first version digit 6=release, 2=test
; InquiryCFR_OEM differentiates 256K and 512K platforms
Description     = "Seagate Scorpion-4/8 DDS-2/3 256K: STDx4000N/STDx8000N"
InquiryStd      = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 02779-XXX[62]???"
InquiryCFR_OEM  = "0"
AutoFileName    = "v6610-0.bin"
AutoFileVersion = "6610"
CompareControl  = "?123"
UpdateAlgorithm = "seagate_dds2_256k"
UpdateSeconds   = 60

[Seagate_Scorpion-4-8_512K]
; Cobra2 512K EEPROM - first version digit 6=release, 2=test
; InquiryCFR_OEM differentiates 256K and 512K platforms
Description     = "Seagate Scorpion-4/8 DDS-2/3 512K: STDx4000N/STDx8000N"
InquiryStd      = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 04687-XXX[62]???"
InquiryCFR_OEM  = "500"
AutoFileName    = "v6610500.bin"
AutoFileVersion = "6610"
CompareControl  = "?123"
UpdateAlgorithm = "seagate_dds2_512k"
UpdateSeconds   = 60

[IBM_Scorpion-4-8_512K]
; Cobra2 512K EEPROM - first version digit 6=release, 2=test
; InquiryCFR_OEM differentiates 256K and 512K EEPROMS
Description     = "IBM DDS-2 512K"
InquiryStd      = "Tape:ARCHIVE IBM4326NP/RP  !D[62]???"
InquiryCFR_OEM  = "547"
AutoFileName    = "v661A547.bin"
AutoFileVersion = "661A"
CompareControl  = "?123"
UpdateAlgorithm = "seagate_dds2_512k"
UpdateSeconds   = 60

[09N4041]
; Switch 7 On=SEAGATE..., Off=ARCHIVE...
; Cobra3 - first version digit 7=release, 3=test
Description     = "Seagate Scorpion-24 DDS-3: STDx24000N"
InquiryStd      = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 04106-XXX[73]???"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dds3.exe"
AutoFileName    = "v758B-0.bin"
AutoFileVersion = "758B"
CompareControl  = "?123"
UpdateAlgorithm = "seagate_dds3"
UpdateSeconds   = 60

[00N7991]
; Switch 7 On=SEAGATE..., Off=ARCHIVE...
; Scorpion-40 and Scorpion-240 use same file
Description     = "Seagate Scorpion-40 DDS-4: STDx401LW"
InquiryStd      = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 06240-XXX8???"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dds4_all.exe"
AutoFileName    = "V8240000.bin"
AutoFileVersion = "8240"
UpdateAlgorithm = "seagate_dds4"
UpdateSeconds   = 60

[00N7992]
; Switch 10 On=SEAGATE..., Off=ARCHIVE...
; Scorpion-40 and Scorpion-240 use same file
Description     = "Seagate Scorpion-240 DDS-4 Loader: STDLx2401LW"
InquiryStd      = "Tape:{SEAGATE DAT   ,ARCHIVE Python} 06241-XXX8???"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dds4_all.exe"
AutoFileName    = "V8240000.bin"
AutoFileVersion = "8240"
UpdateAlgorithm = "seagate_dds4"
; Loader firmware image is sent through an internal serial interface 
; that requires a large (e.g., 6 minute) UpdateSeconds
UpdateSeconds   = 360

[Seagate_Scorpion-240_lun1]
; LUN1 of above. Taken as an "Ignored device" by omitting AutoFileVersion
Description     = "Seagate Scorpion-240 DDS-4 Loader: STDLx2401LW"
InquiryStd      = "Changer:{SEAGATE DAT   ,ARCHIVE Python} 06241-XXX8???"


[09N4040]
Description     = "Quantum DLT4000"
InquiryStd      = "Tape:Quantum DLT4000         ????"
AutoFileName    = "d4_v150.img"
AutoFileVersion = "D996"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[04K0149]
Description     = "Quantum DLT7000"
InquiryStd      = "Tape:QUANTUM DLT7000         ????"
InquiryStdHex   = "41:04*"
AutoFileName    = "D7_v106.img"
AutoFileVersion = "276A"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt"
UpdateSeconds   = 200

[3502_SLED-36L8805]
Description     = "Quantum DLT7000 (3502 SLED)"
InquiryStd      = "Tape:QUANTUM DLT7000         ????"
InquiryStdHex   = "41:0f*"
AutoFileName    = "D7L_v105.img"
AutoFileVersion = "2769"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt"
UpdateSeconds   = 200

[00N7990]
Description     = "Quantum DLT8000"
InquiryStd      = "Tape:QUANTUM DLT8000         ????"
AutoFileName    = "D8_v85.img"
AutoFileVersion = "0255"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt"
UpdateSeconds   = 200

[SDLT1 sled]
Description     = "Quantum SuperDLT SCSI 110/220"
InquiryStd      = "Tape:QUANTUM SuperDLT1       ????"
InquiryStdHex   = "41:040101????????????00*"
AutoFileName    = "sdlt1v70.img"
AutoFileVersion = "4646"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[3580_Ultruim-1]
Description     = "IBM 3580 Ultrium-1"
InquiryStd      = "Tape:IBM     ULT3580-TD1     ????"
AutoFileName    = "36U3L1S.ro"
AutoFileVersion = "36U3"
UpdateAlgorithm = "ibm_ultrium"
UpdateSeconds   = 121

[3502-108]
Description     = "ATL Products L200 Library (with Quantum DLT7000 drives)"
InquiryStd      = "Changer:ATL     L200 ???????????????"
AutoFileName    = "108_v38.img"
AutoFileVersion = "??26"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 300

[3502-314]
Description     = "ATL Products L500 Library (with Quantum DLT7000 drives)"
InquiryStd      = "Changer:ATL     L500 ???????????????"
AutoFileName    = "314_v38.img"
AutoFileVersion = "??26"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 300

[00N7991-LC]
Description     = "Seagate_SP40 Low Cost"
; Switch 10 On=SEAGATE..., Off=ARCHIVE...
InquiryStd      = "Tape:{SEAGATE DAT    9SP40-000,ARCHIVE Python 06240-XXX}9???"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dds4_all.exe"
; Seagate_SP40 and DDS4_LC_Autoloader use same firmware file
AutoFileName    = "v910b000.BIN"
AutoFileVersion = "910b"
UpdateAlgorithm = "seagate_dds4"
UpdateSeconds   = 60"

[00N7992-LC]
Description     = "Seagate SP-240 DDS-4 Loader: STDL42401LW"
; Switch 10 On=SEAGATE..., Off=ARCHIVE...
InquiryStd      = "Tape:{SEAGATE DAT    9SP40-400,ARCHIVE Python 06241-XXX}9???"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dds4_all.exe"
; Seagate_SP40 and DDS4_LC_Autoloader use same firmware file
AutoFileName    = "V910b000.bin"
AutoFileVersion = "910b"
UpdateAlgorithm = "seagate_dds4"
; Loader firmware image is sent through an internal serial interface 
; that requires a large (e.g., 6 minute) UpdateSeconds
UpdateSeconds   = 360

[DDS4_LC_Autoloader_lun1]
; LUN1 of above. Taken as an "Ignored device" by omitting AutoFileVersion
Description     = "Seagate SP-240 DDS-4 Loader: STDL42401LW"
InquiryStd      = "Changer:{SEAGATE DAT    9SP40-400,ARCHIVE Python 06241-XXX}9???"

[48P7042]
Description     = "Seagate TR7 "
InquiryStd      = "Tape:Seagate STT3401A        ????"
AutoFileName    = "V310AC.DFI"
AutoFileVersion = "310A"
CompareControl  = "0123"
UpdateAlgorithm = "seagate_tr7"
UpdateSeconds   = 60

[IBM_3447]
Description     = "IBM 3447 - library personality"
InquiryStd      = "Changer:IBM     3447 ???????????????"
AutoFileName    = "Q2_171.bin"
AutoFileVersion = "??71"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 180

[3447-105]
Description     = "Quantum DLT7000 (3447 Drive personality)"
InquiryStd      = "Tape:QUANTUM DLT7000         ????"
InquiryStdHex   = "41:35*"
AutoFileName    = "3447v107.img"
AutoFileVersion = "026B"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt"
UpdateSeconds   = 60

[3447-106]
Description     = "Quantum DLT7000 (3447 Drive Personality)"
InquiryStd      = "Tape:QUANTUM DLT7000         ????"
InquiryStdHex   = "41:35*"
AutoFileName    = "3447v107.img"
AutoFileVersion = "026B"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt"
UpdateSeconds   = 60

[3607-16X]
Description     = "IBM SDLT Autoloader(robot update)"
InquiryStd      = "Changer:IBM     360716X         ????"
AutoFileName    = "3607_v35.img"
Autofileversion = "0023"
ReplaceVersion  = "00L0"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 330

[4560-SLX]
Description     = "IBM LTO Autoloader(4560-SLX)"
InquiryStd      = "Changer:IBM     4560SLX         ????"
AutoFileName    = "4560_425.bin"
AutoFileVersion = "0425"
CompareControl  = "0123"
UpdateAlgorithm = "standard"
UpdateSeconds   = 180

[3607_16X-drive]
Description     = "Quantum SDLT220 (Autoloader Personality)"
InquiryStd      = "Tape:QUANTUM SuperDLT1       ????"
InquiryStdHex   = "41:040101????????????01*"
AutoFileName    = "3607_v72.img"
AutoFileVersion = "4848"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[3607-26X-drive]
Description     = "HP Ultrium sled in 3607"
InquiryStd      = "Tape:HP      Ultrium 1-SCSI  E??F"
AutoFileName    = "E31F.frm"
AutoFileVersion = "E31F"
CompareControl  = "0123"
UpdateAlgorithm = "hp_ultrium"
UpdateSeconds   = 200

[59P6746]
Description     = "Exabyte VXA/2"
InquiryStd      = "Tape:IBM     VXA-2           ????"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/vxa2.exe"
AutoFileName    = "V2100E.trb"
AutoFileVersion = "100E"
UpdateAlgorithm = "exabyte_vxa"
UpdateSeconds   = 121

[71P9146]
Description     = "IBM Ultrium-2"
InquiryStd      = "Tape:IBM     ULTRIUM-TD2     ????"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/LTO2.exe"
AutoFileName    = "3AY4_SE.fmr"
AutoFileVersion = "3AY4"
UpdateAlgorithm = "standard"
UpdateSeconds   = 121

[59P6660]
Description     = "Library sled SuperDLT 160/320"
InquiryStd      = "Tape:QUANTUM SDLT320         ????"
InquiryStdHex   = "41:040101????????????00*"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/sdlt.exe"
AutoFileName    = "SDLT1v70.img"
AutoFileVersion = "4646"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[3581]
Description     = "IBM 3581"
InquiryStd      = "Changer:IBM     ULT3581-TA      ????"
AutoFileName	= "i114.fmr"
AutoFileVersion	= "I114"
UpdateAlgorithm = "adic_faststor"
UpdatePrepare   = "NoOp"
UpdateSeconds   = 300

[3583]
Description     = "IBM 3583"
InquiryStd      = "Changer:IBM     ULT3583-TL      ????"
AutoFileName	= "v3_10_04.lif"
AutoFileVersion	= "3?10"
UpdateAlgorithm = "ibm_library"
UpdateSeconds   = 300

[DDS Gen5(DAT72)]
Description     = "IBM DDS Gen5 DAT72"
; Switch 10 On=IBM..., Off=ARCHIVE...
InquiryStd      = "Tape:{IBM     DDS Gen5        ,ARCHIVE Python 06240-XXX}A???"
AutoFileName    = "VA060001.bin"
AutoFileVersion = "A060"
UpdateAlgorithm = "seagate_dds4"
UpdateSeconds   = 60

[3607-26X-robot]
Description     = "IBM LTO Autoloader(3607-26X)"
InquiryStd      = "Changer:IBM     360726X         ????"
AutoFileName    = "3607v15.img"
AutoFileVersion = "000F"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 120

[59P6658]
Description     = "HP Ultrium sled in 4560"
InquiryStd      = "Tape:HP      Ultrium 1-SCSI  E??[UV]"
AutoFileName    = "E37U.frm"
AutoFileVersion = "E37U"
CompareControl  = "0123"
UpdateAlgorithm = "hp_ultrium"
UpdatePrepare   = "NoOp"
UpdateSeconds   = 180

[59P6745]
Description     = "Quantum VS160"
InquiryStd      = "Tape:IBM     VS160           ????"
FileLocation    = "ftp://ftp.software.ibm.com/pc/pccbbs/pc_servers/dltVS160.exe"
AutoFileName    = "VS160V34.img"
AutoFileVersion = "0022"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dltvs_8k"
UpdateSeconds   = 200

[4560_SDLT320]
Description     = "Quantum SDLT320 (Library Personality)"
InquiryStd      = "Tape:QUANTUM SDLT320         ????"
InquiryStdHex   = "41:190101*"
AutoFileName    = "4560Sv70.img"
AutoFileVersion = "4646"
CompareControl  = "0123"
UpdateAlgorithm = "quantum_dlt_8k"
UpdateSeconds   = 200

[3582]
Description     = "IBM 3582"
InquiryStd      = "Changer:IBM     ULT3582-TL      ????"
AutoFileName    = "227b_002.lif"
AutoFileVersion = "227B"
CompareControl  = "0123"
UpdateAlgorithm = "ibm_library"
UpdateSeconds   = 120

Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web2, load: 2.26