First Dual-Channel IDE?

The OS/2 Museum recently came into possession of what may be the first adapter with support for two IDE channels… sort of:

Two-cable IDE adapter, 1989

The adapter was made by Plus Development Corporation, a subsidiary of the disk maker Quantum. This particular specimen was manufactured in 1989, though its BIOS has a 1988 copyright.

The adapter is quite obscure for something made by a well known company. I could not find any information about it whatsoever. The only public reference to its existence is its FCC ID, EU95T8IMPULSE80-2 (note that Plus Impulse was a brand name under which some Quantum drives were sold). The FCC application is from March 17, 1989, and it mentions a “hard disk controller card for internal & external hard disk drives”.

FCC sticker on the card

The OS/2 Museum’s adapter is clearly for internal disks only, though the PCB looks like it was designed to have an external connector, too.

What’s on It

There’s not a lot on the adapter. Two IDE connectors, a DIP switch block, a bunch of latches, a 64Kbit (8KB) EPROM, and surprisingly also a 16Kbit (2KB) SRAM.

Not a typical ISA IDE adapter

The adapter’s BIOS is mapped into an 8KB block on the host system, but the last 2KB is in fact the SRAM which the BIOS uses for storing various run-time information.

The DIP switches allow the adapter to be configured to one of three I/O address ranges (1F0-1F7, 170-177, or 320-327), four BIOS addresses (C800h, CA00h, CC00h, or CE00h), and one of two IRQs (11 or 12).

Fortunately the DIP switch settings are silkscreened on the PCB, so the utter lack of documentation is not as painful as it otherwise would be.

A real life saver

How It Works

To be clear: This adapter is not what one would normally understand to be a dual-channel IDE adapter. Instead of using two address ranges, such as 1F0-1F7 and 170-177 (the standard primary and secondary IDE I/O address bases), it only uses one. How, you may ask, does the adapter use two IDE channels with a single address range?

As it turns out, the 1F0-1F7 I/O port range silkscreened on the PCB is a lie. In reality there is another register at 1F8h, which appears to do several things, but one of them is switching between primary and secondary IDE channels.

When the low bit (i.e. bit 0) in register 1F8h is clear, the registers at 1F0-1F7 map to the first IDE channel. When the low bit in register 1F8h is set, the registers at 1F0-1F7 map to the second IDE channel. When bit 1 in register 1F8h is set, the registers at 1F0-1F7 map neither the first nor the second IDE channel.

For typical BIOS operation, this is not a limitation, since only one disk can be used at a time anyway.

Note that the adapter’s POST routine appears to search for drives in 8 “enclosures”, each with 8 “cables”. It is possible that an external enclosure might host a number of drives with a shared cable. Enclosure 0 is the “internal enclosure”. This terminology is visible in the adapter’s error messages:

The adapter did not like the attached drive

Since the adapter can use the standard IDE I/O port range, it is possible to boot a regular operating system. I happened to have an old IBM disk with Caldera Linux lying around and it was able to boot off the Plus Development adapter, as long as it was set to use the 1F0-1F7 range. When set to the 320-327 range, Linux started to boot but then failed to find the root file system (since it couldn’t see the hard disk).

Oddly, all my attempts to boot hard disks with DOS initially failed, even though the controller clearly did see the drives.

Booting is… yeah

Trying to boot DOS would only get me this:

This is a lie

Now, that is rather interesting because the error message comes from the DOS boot sector. To get there, the system was clearly able to load the MBR, run it, load the boot sector for the active partition, start it, and only then fail.

After a lot of head scratching, I remembered that booting is hard. As it turns out, the Plus Development IDE adapter BIOS has the same subtle bug that Adaptec’s SCSI HBA has. The indirect cause is that for whatever compatibility reason, resetting the hard disk subsystem (via INT 13h/function 0) also needs to reset the floppy.

The BIOS on the PC/AT does the following when resetting the hard disk (INT 13h, function 0, DL = 80h or above:

  • Check if INT 13h is directed to hard disk or floppy
  • If directed to hard disk, check if it is function 0
  • If so, reset the floppy (via INT 40h)
  • Execute hard disk reset and return its result

The Plus Development BIOS is slightly different:

  • Check if INT 13h is directed to hard disk or floppy
  • If directed to hard disk, check if it is function 0
  • If so, reset the floppy (via INT 40h)
  • If floppy reset failed, return
  • Execute hard disk reset and return its result

The difference is obvious… if there’s no floppy drive, resetting the hard disk will fail with the Plus Development BIOS but not with the PC/AT BIOS.

That was exactly my problem. After connecting a floppy drive to my test system, DOS started booting normally.

PnP Before Anyone Knew It

There is one quite remarkable thing about the Plus Development adapter. It is entirely self-configuring. There is in fact no way at all to change the disk configuration, and the adapter does not use any information from the system BIOS (the system BIOS must not be used for disks attached to the Plus Development adapter, otherwise the machine will see the same disk twice).

The Plus Development adapter BIOS scans the IDE channels for attached disks and runs the IDENTIFY DRIVE command to obtain disk geometry. This is by far the oldest use of IDENTIFY DRIVE for that purpose that I’m aware of. Plus Development did it in 1989 while system BIOSes did not automatically configure disks before about 1993, or in some cases even later.

For obvious reasons, the adapter will not work with larger IDE drives because it has no chance of using LBA and does not attempt to do any geometry translation. But of course it was made at a time when 80 megabytes was a good size drive.

The adapter may also have trouble with smaller disks if they were moved from another system where they were used with geometry that differs from what IDENTIFY DRIVE reports. That was somewhat common.

But What’s It For?

It still escapes me what this adapter was really intended for. Users who needed more than two hard disks probably weren’t going to use the BIOS to access them. Most likely they’d run NetWare, SCO UNIX, OS/2, or something similar. But given the way the adapter works, the OS would need to use a driver which understands the custom control register that switches between IDE channels.

I’m not entirely certain but it is likely that at least two of these Plus Development adapters should be able to coexist in a system, possibly with external enclosures hosting dozens of drives.

Alternatively, the adapter can run two IDE drives each on its own channel, without having to pray that they can coexist as master and slave on a single channel. But I doubt that was worth building a special adapter for.

If anyone knows anything about the Plus Development dual IDE adapter, please share the information.

This entry was posted in IDE, PC hardware, PC history, Quantum. Bookmark the permalink.

29 Responses to First Dual-Channel IDE?

  1. Richard Wells says:

    The September 11, 1989 Infoworld on page 58 has a half page paraphrase of the marketing material for the Plus Impulse drive system which supposedly could support 16 hard drives on a single controller. The card looks very similar though it might be a slightly later revision since the article points to it having 64 K of RAM as a cache.

  2. MiaM says:

    How big/small market share did Quantum have in the server market and other markets where large amounts of data were stored on a single computer? I know that Quantum made IDE and SCSI drives, and alsp the Plus hardcards. But I can’t recall any drive that somehow seemed like a server drive, i.e. no drive physically larger than a 3.5″ full height drive (i.e. the same height as a 5.25″ half height drive), while others made 5.25″ full height drives. (Not sure where the manufacturing tools for the later Bigfoot drives came from, I would assume from some company that Quantum might had bought up (or been bought up by).

    Perhaps the reason for this was to sell Quantum drives to customers who would otherwise had bought “server” drives from other drive manufacturers?

    The auto config that can’t be overridden might also had been a way to get customers to buy Quantum drives. Not sure if more than one drive model did suffer from incorrect drive data, but at least the 60MB 5.25″ Conner drive found in Compaq Deskpro/386 did report a sector too much which at least made Linux confused and would likely also not work with this controller.

    A rather qualified guess is that there must had been drivers available for some of the operating systems available at the time, like OS/2, Netware and perhaps Xenix.

  3. pdw says:

    Might this be the “Cluster Disk Interface” that was being advertised in 1988/1989?

  4. Chris M. says:

    That external IDE connector would have been nice if it caught on. Instead we got all those funky parallel-to-IDE drive adapters instead.

  5. Richard Wells says:

    Quantum had a number of larger drives that were 5.25″ half height like the Q250 and Q280 which were 50 MB and 80 MB SCSI models. There was even a monster full height Q160 SCSI drive with 160 MB and an astonishing 12 data surfaces on a spindle. That means 6 or 7 platters; I don’t know if there was a servo surface on it. Looking at the Quantum history according to Disk Trends, they started with 8″ drives and then suffered major delays producing advanced large drives. Some may have seen Quantum drives under other banners since the actual manufacture was done by Matsushita.

    The Plus Impulse system was given a 4 page ad spread in a number of Infoworld issues. Those show a system with 3 drive bays having an Impulse drive and another 6 external enclosures. It is listed as working with Netware, 3Com, and IBM PC LAN. I doubt the white paper is available from Seagate. I hope someone saved the drivers.

    There was probably some tricky form of secret sauce (the CDI) to multiplex the drives since it appears to work with the standard 40MB and 80MB drives. It seems to be an early example of IDE RAID to make up for Quantum dropping out of the very lucrative large capacity market.

    Reviews are scarce but Plus/Quantum phased the concept out quickly. It may not have scaled and certainly cost more than the HP/Microsoft almost SCSI parallel port to IDE drive shared interface.

  6. Michal Necasek says:

    Yes, that’s it (I’m 99% certain). Thanks for the pointer!

    The 64K cache was on each drive, Quantum’s standard DisCache. That may have been unclear from the IW write-up.

  7. Michal Necasek says:

    I would say so, looking at the marketing materials here. The adapter specs (page 35 in PDF) match the adapter described in this blog post. Although they say that “only Impulse drives are supported” which is not really true — the adapter is an IDE adapter and will work with any IDE hard disk on the hardware level. The custom CDI software may be a different matter.

  8. Michal Necasek says:

    There never was a 5.25″ Conner drive as far as I’m aware. Was it actually a 5.25″ CDC drive? There weren’t really that many 5.25″ IDE drives. A couple of CDC/Imprimis/Seagate models and years later the Quantum Bigfoot.

  9. Richard Wells says:

    Imprimis was purchased by Seagate in 1989 before IDE started taking over the market. The Wren line of 5.25″ drives started off at CDC, got spun off into Imprimis, and were continued by Seagate. Wren drives from Imprimis are listed as having ESDI, ST-412, SCSI, and PC AT (IDE) interfaces. Swift was the branding given to 3.5″ drives with the same range of interfaces. Imprimis also had 14″ and 8″ drives for the markets CDC used to control.

    Conner stayed out of the 5.25″ drive manufacture business. When Conner started, there were a lot of failing 5.25″ drive manufacturers that precluded new entrants.

  10. MiaM says:

    Hmm, I could had sworn that it was a Conner drive that I tried getting Linux to run on.

    I’m 100% sure that it was a 5.25″ IDE drive, 60MB in size, with a beige front and most likely original to that Compaq Deskpro 386. What other brand could it had been? Which companies did Compaq work with? WD?

    Re Bigfoot drives, Quantum might just had bought some manufacturing stuff from any company without buying the company. Bigfoot seems to have been manufactured in the second half of the 90’s – not sure which company would had had those tools laying around. Or perhaps they actually made new tools to produce the drives?

  11. Michal Necasek says:

    Compaq worked with many companies. The old Compaqs had drives from CDC, Miniscribe, Conner, and who knows who else. But 5.25″ IDE drives are a rare kind of thing, if it really was an IDE drive and not ST-506 or ESDI (especially the latter might look like IDE to software).

    The CDC 94208-75 was a 60MB 5.25″ HH IDE drive, definitely used in Compaq machines. There was also a slightly newer CDC/Imprimis 94204-74 (or -65), also known as Seagate ST274A, a 65 MB 5.25″ IDE drive.

    The only other company (besides Quantum) mass producing 5.25″ drives in the mid-1990s was Seagate. Their Elite drives lasted a long time, but those were SCSI only. Also later the only 5,400 RPM 5.25″ drives I know of. I’m not sure where Quantum (really MKE?) got the tooling from. Quantum used to make 5.25″ drives in the 1980s but I think there was a gap of several years between their Q280 etc. and the Bigfoot.

  12. zeurkous says:

    Didn’t Conner — or Compaq — just bolt on a controller…?

  13. Richard Wells says:

    There were also the mainframe drive providers like Hitachi, Fujitsu, and Sequel (Unisys plus some other licensed obsolete models) that continued producing 5.25″ models. The proximate cause of the Bigfoot was the announcement of Gigastorage which would use Priam’s tooling to make very cheap 5.25″ drives. Priam drives were great in the late 80s but 5 years with no R&D did not lead to a favorable result.

    I think the Bigfoot was internal research by Quantum but they may have made a mistake. The 5.25″ drive did meet a few requirements based on the cases with spare 5.25″ bays being manufactured at the time, something pointed out in the Quantum introductory white paper, but kept Quantum from developing 2.5″ and 1.8″ drives. Quantum had obtained DEC’s equipment but the Bigfoot was a new design pairing the existing Quantum heads with the larger platter.

    The greatest thing with the Bigfoot was Compaq’s discovery of the drive bay set between the case supports on the very top. That left the standard drive bays empty. Compaq’s supplied IDE cables were too short to readily have devices share a channel.

  14. The GRiD 1520 series of portable computers might be an earlier use of IDENTIFY DRIVE — they use a modified Phoenix BIOS with a hard-coded list of 5-6 Conner drive model numbers mapped to BIOS drive types. In fact, it’s not possible to manually configure the hard drive types as the BIOS auto-detects them on every boot.

    The Phoenix copyright message on the most recent 1520 BIOS is dated “1985,1986” but the release date marker stored at F000:FFF5h is ’03/11/89′.

    The code that sends the IDENTIFY DRIVE command is available at https://github.com/philip-searle/gridcase-bios/blob/main/src/int13_grid.asm#L140
    The code that compares the result to the list of supported HD model numbers isn’t pushed up yet, but it’s at F000:F5B7h in the spare space of the XT-compatibility section.

  15. MiaM says:

    CDC 94208-75 might be the drive type. Strange that I remember it as a Conner though.

    100% sure it was an IDE drive as it was possible to use it with other IDE controllers and likewise use other IDE disks with the controller that came with the Deskpro.

  16. Michal Necasek says:

    Very interesting. So that would have been 1989-ish, maybe even earlier? If I understand it correctly, the GRiD BIOS just had a predefined table and only worked with hard disks that had one of the supported geometries? I suppose that was halfway PnP with automatic configuration but a very limited set of supported devices.

    The Plus Impulse BIOS has no such restrictions and just takes what the drive reports. It will of course fall apart with big drives (i.e. drive geometry can’t be reported as BIOS geometry) but that was not an issue at the time.

  17. Michal Necasek says:

    Compaq literally bolted an “IDE” controller (WD1003-IWH) onto Miniscribe MFM drives built into some Compaq Portable models. There may have been something similar going on with the earliest IDE CDC Wren models, but that’s not something I’ve been able to take a good look at. Conner drives had everything properly integrated, and some of the chips were developed by Conner together with Compaq.

  18. Yes, it’s not full auto-configuration — just smart enough to work with the supported options GRiD sold at the time. The Plus Impulse method is much more extensible.

    The 1520 actually has two levels of auto-configuration since the earliest 1520 models shipped with a JVC MFM disk controller which of course did not support IDE commands. Each drive type (only three were supported initially) plugged into a custom backplane which exposed some hardcoded bits in a model-specific IO port. A table in the BIOS maps this to a hard drive type and count of floppy drives.

    The first IDE drive supported (40MB, full-height) was allocated backplane type 4. GRiD must have realised this wasn’t a sustainable way to work so backplane types 7 and 9 were coded to use the IDENTIFY DRIVE command and lookup the model number in a table (type 9 has a floppy drive; type 7 does not). As far as I know only Connor drives were ever supported by the 15xx series.

    https://github.com/philip-searle/gridcase-bios/blob/main/src/grid.inc#L20

  19. Fernando says:

    Apparently you have a CDI (Cluster Disk Interface) for up to 32 drives!. I don’t imagine what kind of noise make 32 drives working at the same time and what power supply you need.
    This could answer some questions about what they were thinking:
    https://archive.org/details/PlusDevelopmentImpulseStorage

  20. Michal Necasek says:

    Ah, cool. I found a bunch of printed materials but not the video.

    Using lots of drives seems to have required external enclosures, or at least what I read indicated that an internal only storage would be up to 8 drives max. And I’m not sure if that required two adapter cards.

    In any case, they seem to have used regular IDE drives with some kind of IDE channel switching, handling many drives attached to a single adapter. Sadly I have not found any trace of the software, so I have no idea how similar or different it was from modern RAID storage.

  21. Chris M. says:

    IDE can support more then two drives per channel, at least unofficially. I know the Amiga 4000 can do it with it’s onboard interface as adapters are available. The 3rd and 4th drives are enabled by a driver in that case. I wouldn’t be surprised if that is the case with this card’s drivers too.

  22. MiaM says:

    Chris M: Four drives on an Amiga 4000, 1200 or 600 works thanks to that Commodore decoded both enable signals even though only one is actually needed.

    On a PC one of the enable signals will for most of the address range also enable the floppy controller. That doesn’t exist in an Amiga. Thus you can make a special cable where what would be the hard disk on a PC enables the first two drives and what would be the floppy on a PC enables the other two drives.

    I would assume that the external drive connector on this Plus adapter uses several enable pins or perhaps extra address pins and one enable signal.

    Except for bus signal integrity there would be no limit to the number of drives. If the external enclosure has some active chips in it, it could buffer all signals for each pair of drives and thus cause no extra strain on the bus drivers in the drives and also avoid problems with reflections due to incorrect wiring topology. (Being able to put master and slave and the controller in whichever combination on the three connectors on a regular IDE cable (pre cable select era) isn’t really a good thing, but I think we got away with it at the relatively slow speeds at the time.

    Gosh, it feels so nice to be able to info dump something about the Amiga without being the one who dragged it in to the thread 🙂 🙂

  23. Michal Necasek says:

    ATA most certainly can’t support more than two devices per channel. But “IDE” can mean anything 🙂

    The Plus Impulse board, as far as I can tell, simply has a switch that selects one of many attached IDE channels. The external connector most likely carries some of the channel select bits and an enclosure decodes those.

  24. OBattler says:

    Would you be able to upload the BIOS of this controller somewhere?

  25. Richard Wells says:

    As a concept, the Plus Impulse was dead before launching. The 1GB Imprimis drive cost $4,500 while the 80 MB Quantum had a price of $785. It doesn’t take much to work out that the Impulse was going to cost twice as much as the same amount of SCSI storage using higher capacity drives. Waiting until extra storage is needed was possible but the relentless push of lower prices per MB would mean buying a complete replacement set of drives would yield a better value than trying to augment out of warranty drives with a few new drives.

    The design of the Impulse system seems fairly straight forward. I admit to being curious as to how it handled adding drives or especially replacing drives, the issues that confounded early RAID efforts.

  26. MiaM says:

    Richard:
    Maybe Quantum/Plus had larger drives planned, which would make this card and it’s external enclosures able to have larger total capacity than you could get with seven of the largest SCSI drives?

    And/or maybe Quantum/Plus had some special plans, like an external enclosure special model of their drives where a bunch of drive mechs would share the same PCB or whatnot?

    Also it could had been a show-off thing, to show the world what was technically possible.

  27. Michal Necasek says:

    Quantum had 120 MB, 170 MB, and 210 MB IDE drives out in 1989. A 425 MB model followed in 1991. All those were HH 3.5″ drives.

    I agree that building 1 GB of storage out of 80 MB drives wasn’t attractive.

  28. Michal Necasek says:

    Sure, get it here.

    There are two dumps, one (.BIN) is the EPROM chip and the other (.ROM) is dumped from a running system. The latter has the SRAM contents initialized.

    Sadly the whole thing is not that useful without the CDI drivers for the supported operating systems. But the ability to detect and auto-configure IDE drives is quite noteworthy. Also their algorithm for very quickly detecting which of dozens of possible drives are present is interesting, even though it might not have worked with every drive.

  29. Richard Wells says:

    The Quantum 120 AT MB drive info page over at Stason shows that Quantum had redesigned the drive selection method with a long section on how to switch to the same mode as the 40/80 AT drives. It may not have been possible to incorporate these other drives in the CDI system. Hard to say since there never was an announcement of the withdrawal of CDI from the market.

    Even Quantum’s larger capacity drives cost 50% more per MB than Imprimis SCSI and Imprimis wasn’t exactly a budget brand.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.