Using Non-IBM ESDI Drives
Using a Maxtor XT-4380E as an example

These days a lot of Non-IBM ESDI drives are available, coming i.e. from mid-range systems like the AS/400 or RS/6000-computers. They are in most cases IBM, Maxtor, CDC or Seagate and have a capacity of around 250 - 400MB.
These drives *should* work with the IBM PS/2 ESDI-controller - but very often they don't. Or at least not without some modification.

This depends in most cases on two problems:

  • different settings for sector size or drive-adress
  • different format of bad-track table than on PS/2-drives

While the jumper-settings are highly individual for any OEM-drive, there are only few general recommendations or tips to give.

  • Set the drive to sector size of 512 bytes (AS/400 uses 520 byte)
  • Set the drive to Adress 2 (DS1, when adressing starts with DS0)
  • Set the drive geometry to less or equal 64 heads
  • Set the number of sectors to 34 or 36

A typical ESDI-harddisk used in RS/6000 and PS/2s as well is the Maxtor XT-4380E.

Assumed you got one of these and want to make them useable for a PS/2, you will have to set the jumpers on the drive in the following scheme:

|                                             | 
|              MAXTOR XT-4380E                ++
|             (Underside View)                 |
|                                              |
|                                              |
|                                              |
|                   o o                        |
|                   ###                        |
|                   ###                        |
|                   o o                        |
|                   o o                        |
|                   ###                        |
|                   ###                        |
|   o               o o                        |
|   o                                          |
|         ### o o                              |
|         ### ###                              |
|         ### o o                              |
|         ### o o                              |
|         o o o o                              |
|             o o                              |
|             ###        o o                   |
|             o o        o o                   |
|                        o o                   |
|                        o o                   |
|                        o o  o                |
|                        ###  #              o |
+-------+                o o  #              # |
| Power |                                    # |
+-------+    +-+              +----+         +-+
        |    | ||||||||||||||||    |||||||||||  
        +----+ ||||||||||||||||    |||||||||||  

MODEL XT-4380E Specifications

Interface:  ESDI               RLL 1,7 Encoding

Capacity, Unformatted          Capacity, Formatted ESDI Compatible

Per Drive (Mbytes)  : 384.46   Per Drive (Mbytes)  : 338.40
Per Surface (Mbytes):  25.64   Per Surface (Mbytes):  22.56
Per Track (Bytes)   : 20,940   Per Track (Bytes)   : 18,432
                               Per Sector (Bytes)  :  512

Parameters                     Performance Specifications

Cylinders    :  1224           Transfer rate, Mbits/sec    : 10.0
Data Heads   :  15             Access Time (Average)       :  16msec  
Sector\Track :  35/36          Access Time (Track-To-Track): 2.5msec
Pre-Comp        NONE           Access Time (Maximum)       :  29msec  
MTBF:  150,000 Hours (POH)     Dimensions(Inches): 3.25" x 5.75" x 8.20"

Power Requirements:  +12VDC +\- 5%. 1.5A Typical, 4.5A Maximum
                     + 5VDC +\- 5%. 1.7A Typical, 1.9A Maximum

NOTE: The 2 most common ways to Low Level Format this drive are: Method 1 is the debug utility. Please follow the Controller Low Level Format instructions your Distributor has provided you. Method 2 is Ontrack Corporation's Generic Disk Manager. Again,Please follow the instructions that Ontrack provides with this software package.

4xxxE ESDI Jumper Description

------        -----------
JP1(IN)       Used for factory testing
JP6(IN)       IN = Motor remote spinup option disabled
              OUT = Motor remote spinup option enabled
DS1-DS7       Drive select (Default= 1)
JP14(OUT)     IN= Write protected
JP16-JP29     Programmable sector size
JP30(IN)      Enables hard sector mode
JP31(OUT)     Enables soft sector mode
JP32-35,JP38  Factory settings for head select
JP41          Factory test NOT a user configurable option
JP42(IN)      Used for factory testing
JP45          Used for conversion to short INDEX
              1,2= Standard INDEX (70mS), 2,3= Short INDEX (3mS)

NOTE: JP4, JP5, JP15, JP36, JP37, JP39, JP40, JP41 are not jumperable options the only customer configurable options are JP6, JP14, JP16-JP29, JP-30, JP31, JP45 and DS1-DS7 (Drive Select)

4xxxE ESDI Programmable sector size

This table will help you to find the programmable sector size that you need. Be sure to check with the controller manufacturer to find the optimum sector settings.

NOTE: Jumper "JP-30" must be installed to run in programmable sector mode.

---------                 -----------------     
                           34    35    36

JP-16                      ON    --    ON
JP-17                      ON    ON    --
JP-18                      ON    ON    ON
JP-19                      --    --    --
JP-20                      --    ON    --
JP-21                      ON    --    --
JP-22                      ON    ON    ON
JP-23                      --    --    --
JP-24                      --    --    --
JP-25                      ON    ON    ON
JP-26                      --    --    --
JP-27                      --    --    -- 
JP-28                      --    --    --
JP-29                      --    --    --

In addition you will have to make some changes in the LLFORMAT.COM on your PS/2 reference-disk. I would recommend, that you get the latest version of the reference disk for your Model.
This drive is usable on the Mod. 60 or 80 equipped with the IBM ESDI- Adapter /A.

So the reference disks were either

Download and extract them to a disk and change to a DOS-prompt. Then follow the instructions below.
It is not recommended to do these modifications in a DOS-Window under OS/2, Win 3.x or Windows 95.


;all text behind the semicolon is just comment.
;the values may vary depending
;on the version of reference you choosed.

AX=0000 BX=0000 CX=8195 DX=0000 SP=FFFE BP=0000 SI=0000 DI=0000
DS=2B78 ES=2B78 SS=2B78 CS=2B78 IP=0100 NV UP EI PL NZ NA PO NC
2B78:0100 E9C50D JMP 0EC8

-s100 8295 b4 1a b0 00 8a            ;search format-routine
                                     ;with value from CX+0100

2B78:8284                            ;2 founds / values may differ

-u8272                               ;disassemble with first value
2B78:8272 B41A MOV AH,1A             ;functioncode : format
2B78:8274 B000 MOV AL,00             ;no additional defect-list
2B78:8276 8A106473 MOV DL,[7304]     ;drivenumber
2B78:827A B114 MOV CL,14             ;first change here 
;                     ^^ this byte
2B78:827C 0A0E7377 OR CL,[7773]      ;
2B78:8280 CD13 INT 13                ;BIOS call
2B78:8282 7210 JB 8294               ;return on error
2B78:8284 B41A MOV AH,1A             ;and almost the same once more
2B78:8286 B000 MOV AL,00             ;...
2B78:8288 8A106473 MOV DL,[7304]     ;
2B78:828C B11C MOV CL,1C             ;second change here
;                     ^^ this byte
2B78:828E 0A0E7377 OR CL,[7773]      ;and so on ... unimportant.

-e827B                               ;edit first byte
2B78:827B 14.15                      ;just type 15 + enter

-e828D                               ;edit second byte
2B78:828D 1C.1D                      ;just type 1d + enter

-w                                   ;write down the changes to file

-q                                   ;quit debug - ready


NOTE: The Length of LLFORMAT and corresponding addresses may vary!

Many Thanks to Robert D. Keys for the idea to bring up this page, the practical 'doing' with reworking his XT-4380E and the continuous reporting about the problems and -finally- the success!

9595 Main Page