Jump to content

IBM Fixed Disk Adapter

From RetroTechCollection
Revision as of 03:21, 23 September 2026 by Josh (talk | contribs) (Rebuilt from IBM's own Options and Adapters references (both now hosted here) plus minuszerodegrees: removed the claim that IBM offered a 130 W PSU for the 5150 to run this card (IBM's answer was the 5161 Expansion Unit); added the three variants with their real IBM ROM part numbers, IBM's four-drive-type table and switch settings, the hex 320-323 / C8000-C9FFF addressing, the 32-bit ECC, and IBM's own BIOS listing as the source of the 1701 message; <ref>-cited)
(diff) โ† Older revision | Latest revision (diff) | Newer revision โ†’ (diff)
IBM Fixed Disk Adapter
Manufacturer IBM (built under contract by Xebec; BIOS code written by IBM)
Type 8-bit expansion-slot MFM hard disk controller
Release date March 1983 (with the PC XT)
Interface 8-bit IBM PC I/O channel; ST-506/ST-412 to the drive
Compatible IBM PC XT (5160); IBM PC (5150) with a 10/27/82 BIOS, subject to the power budget
Connectivity 34-pin control ribbon (daisy-chained); 20-pin data ribbon (one per drive)

The IBM Fixed Disk Adapter is the MFM hard disk controller IBM shipped in the IBM PC XT (5160). The cards were manufactured for IBM by Xebec, but the code in the BIOS expansion ROM is IBM's own, and IBM's part numbers are on the board and the ROM.[1] Calling it a "Xebec 1210" is wrong: that is a different, Xebec-branded product.

It attaches one or two 5.25-inch MFM drives — typically a Seagate ST-412 or, later, an ST-225 — through a daisy-chained control cable and a separate data cable per drive. A system supports a maximum of one adapter and two drives.[2]

Variants

[edit | edit source]

Three variants are documented, by chip dates and ROM part numbers:[1]

IBM Fixed Disk Adapter variants
Variant Approx. date IBM BIOS ROM Drive support
1 c. 1983 8 KB, IBM P/N 5000059 Fixed at 306 cylinders / 4 heads / write precompensation from cylinder 0. Shipped with a Seagate ST-412.
2 c. 1984 8 KB, IBM P/N 6359121, contents identical to variant 1 Same single geometry. The ROM can address four drive types, but the board has an unpopulated switch position (S1) so no other type can be selected.
3 c. 1986 8 KB, IBM P/N 62X0822, different contents Switch block fitted; four selectable drive types. IBM's own name for this card is the "20MB Fixed Disk Drive Adapter".

The drive types the variant 3 card supports, from IBM's own table:[3]

Drive types selectable on the 20 MB adapter
Type Cylinders Heads Write precompensation from Landing zone Typical drive
1 306 4 0 306
2 615 4 300 615 Seagate ST-225 (20 MB half-height)
13 306 8 128 336 IBM WD25 (20 MB full-height)
16 612 4 0 663

Switches 1 and 2 set the type for drive 0; switches 3 and 4 set drive 1.[3]

Hardware

[edit | edit source]

IBM's own description:[2]

  • Buffered on the I/O bus; uses the system board's DMA for data transfer and an interrupt for completion and status.
  • 32-bit error checking and correction, giving automatic detection and correction of an 11-bit burst.
  • Two processor-visible registers, a status register and a data register; the controller-select pulse is generated by writing to port hex 322.
  • I/O addresses hex 320 to hex 323.
  • BIOS expansion ROM decoded between hex C8000 and hex C9FFF.
  • IBM warns that the last cylinder is reserved for diagnostics and that the diagnostic write test destroys any data on it.

Where the 1701 error comes from

[edit | edit source]

1701 is not a motherboard POST error. It is produced by the adapter's own expansion ROM: IBM's BIOS listing for the card establishes transfer vectors, performs power-on diagnostics, and comments that "should an error occur a '1701' message is displayed".[2] A machine with no fixed disk adapter fitted cannot produce a 1701 at all.

In practice a 1701 means the card's own diagnostic could not talk to the drive as expected. Work through, in order: cable orientation at both ends and on both cables; drive power; whether the drive spins up and becomes ready; the drive's own electronics; and only then the controller.

Common Faults

[edit | edit source]
  • Corrupted expansion ROM. The ROM is a Mostek MK36000-class mask ROM or equivalent, and there are documented replacement routes. On a 5150 with the 10/27/82 BIOS, a corrupted C8000 ROM is reported as one long beep and two short rather than an on-screen "C800 ROM" message.
  • Drive spins but never seeks. Stepper stuck or stepper driver failed, on the drive rather than the card.
  • Random read errors that follow the drive to another controller. Head alignment or media.
  • Random read errors that stay with the controller. The MFM data separator on the card.

Modern alternatives

[edit | edit source]

Where the original controller or drive is beyond repair, XT-IDE class cards with their own expansion BIOS, and MFM emulators that present themselves to the original controller, both avoid the stock ROM's single-geometry limitation. Neither is a repair of the card; both are ways of keeping the machine usable.

References

[edit | edit source]
  1. โ†‘ 1.0 1.1 IBM Fixed Disk Adapter, minuszerodegrees.net. Source for the controllers being manufactured for IBM by Xebec with IBM-authored BIOS code, the three variations with their approximate dates, the IBM ROM part numbers 5000059, 6359121 and 62X0822, the 306-cylinder four-head limitation of the first two variations, the unpopulated S1 switch position on variation 2, the Seagate ST-412 supplied with variation 1, and IBM's own name for the third variation, the "20MB Fixed Disk Drive Adapter".
  2. โ†‘ 2.0 2.1 2.2 IBM, IBM Fixed Disk Adapter, part 6361503, Options and Adapters section, Personal Computer Hardware Reference Library — hosted on this wiki as File:IBM Options and Adapters - IBM Fixed Disk Adapter.pdf. Source for the attachment of one or two drives on a daisy-chained data/control cable, the one-adapter-two-drive maximum, DMA and interrupt use, the 32-bit ECC giving automatic 11-bit burst correction, the warning that the last cylinder is reserved for diagnostics, the I/O address range hex 320 to hex 323 with the controller-select pulse at hex 322, the adapter ROM decoded between hex C8000 and hex C9FFF, and the complete BIOS listing whose power-on diagnostic displays the 1701 message. Also documented here as IBM Options and Adapters - IBM Fixed Disk Adapter.
  3. โ†‘ 3.0 3.1 IBM, IBM Personal Computer 20MB Fixed Disk Drive Adapter, part 6139790, 17 March 1986, Options and Adapters section — hosted on this wiki as File:IBM Options and Adapters - IBM PC 20MB Fixed Disk Drive Adapter.pdf. Source for the four supported drive types with their cylinder, head, write-precompensation and landing-zone figures, and for the switch settings that select a type for drive 0 and drive 1. Also documented here as IBM Options and Adapters - IBM PC 20MB Fixed Disk Drive Adapter.
[edit | edit source]