4 Before buying...

Contents of this section

4.1 What should I look for in an ATA-2 (Fast-ATA, EIDE) interface?

There are a number of 'EIDE' features which can be desirable in a new interface. Some features, however, may already be present on your system or be unimportant to you.

Note that some popular 'EIDE' interfaces are slightly to very buggy. This ranges from minor problems with ATA-2 compliance to obscure things like the use of a single buffer for both primary and secondary channel or a badly designed prefetch buffer, both of which may cause data corruption under very specific circumstances. It can't hurt to track a few newsgroups for hands-on experiences. A group to watch, beside the hardware groups, is comp.os.os2.bugs .

4.2 Is my BIOS Enhanced? How can I recognize this?

Good question.

Unfortunately, I know no easy answer. The mere ability to specify more than 1,024 cylinders in the BIOS setup is not conclusive. In your BIOS setup, drive related settings like "LBA", "ECHS" or even something silly like "Large" are telltale signs of a BIOS with translation support, which should be good for disk capacities of up to 8GB. A copyright before 1994, on the other hand, reduces your chances to something close to zero :-(

Note that only BIOSes fully implementing the IBM/Microsoft/Phoenix standards will allow access to disks larger than 8GB. Fortunately, these are becoming more and more common these days. We are not aware of utilities that will detect the presence of such a BIOS.

Western Digital has a utility available by ftp that examines the Enhanced Disk Parameter Table (EDPT), if present. If it finds one on your system, your BIOS has all the bells and whistles to go up to 8GB ftp://ftp.wdc.com/drivers/hdutil/chkbios.exe . Beware that BIOSes conforming to the WD Enhanced BIOS specification won't build an EDPT unless LBA is enabled. Beware also that with a WD EBIOS it is highly unsafe to enable LBA on a disk that already contains data. This is due to a flaw in the specification.

4.3 Is my 50MHz VL bus system compatible with ATA-2 interfaces?

It should be, but there are problematic cases.

It has been observed that some controllers will base their I/O cycle times on the bus clock of the computer. This means that with a 50MHz bus, the cycle time will be faster than with a 33MHz bus. This could lead to undesirable results if these cycle times are faster than the drive can handle. Make sure your controller supports multiple bus speeds in the software setup, and if necessary program it correctly.

4.4 Are old IDE drives compatible with ATA-2 (EIDE) interfaces?

This should work fine.

Older drives do not support the high-speed advanced transfer modes defined by ATA-2. To retain compatibility with these older drives, ATA-2 interfaces have programmable timing. The driver or BIOS queries the drive regarding its maximum transfer rate and will configure the interface to match. A few interfaces are jumper configurable in which case the responsibility is yours.

Blind PIO mode 3, using a fast mode without querying the drive, on an old drive will corrupt data, hang the drive and generally make a mess of things.

If you intend to put an older drive on the same cable as an ATA-2 drive, you may want to verify that your interface is capable of using independent timing for master and slave device. Otherwise, your old drive might end up slowing down your newer one because the controller is forced to use the lowest common speed.

4.5 Can I use EIDE and Fast-ATA drives with my old IDE interface?

Fast-ATA and EIDE devices can be used without fear on regular ISA or VLB IDE controllers. The thing about advanced modes is that the drive is ready for the data in the fastest mode; the slower the controller, the easier it is on the drive. Of course you should expect the transfer rates to come out lower than on a full ATA-2 interface.

It is not necessary to use an EIDE interface for harddisks of over 504MB. An Enhanced BIOS is all you need for DOS and Windows; for many other operating systems such as OS/2 or Linux you won't need even that.

4.6 Will an ATAPI (EIDE) CD-ROM work with an IDE interface?

Yes. These devices were designed to be compatible with ATA (IDE) from the very start, and should work fine.

4.7 Do I need a BIOS update to connect an ATAPI CD-ROM?

No. These CD-ROMs ship with a driver that provides complete support. The BIOS doesn't need to support them and usually doesn't even know they're there. Some modern BIOSes are ATAPI aware and have a special setting; barring those, you can generally leave the corresponding harddisk entry at 'Not Installed'.

4.8 Can large drives be used with my old BIOS?

Yes, in principle, but there's still the small matter of the 504MB barrier. If the new drive exceeds this capacity, you must have an Enhanced BIOS in order to use more than 504MB with DOS, Windows or Win95 (see Q 4.10 for other operating systems). It is important to note that this is a software only issue: you do not need a special interface to support large drives.

BE WARNED that some older BIOSes will incorrectly handle drives with more than 1024 cylinders. Instead of truncating the number of cylinders to 1024, they use the cylinder count modulo 1024, which means that a 2300 cylinder drive will appear to have just 252 cylinders. The solution is to specify 1024 cylinders in the BIOS setup.

This becomes a real problem when a BIOS with this error also won't allow you to enter the drive parameters manually. Among IBM systems, the 1991-vintage PS/2 models 35sx and 40sx, the ValuePoint I, and at least some of the ValuePoint Si models have this flaw. With these machines, you should either try go get a BIOS upgrade from ftp://ftp.pcco.ibm.com if you have a flash BIOS, or verify that the drive you intend to use has a way to fake having no more than 1024 cylinders (Western Digital has a utility for their 540MB drive, and many Maxtor drives have a jumper). The Promise EIDEMax is also reported to work, and will allow you to use drives of up to 8GB in full. Note that some operating systems, such as Linux and OS/2, allow you to override the BIOS' drive geometry information, which may also help addressing this problem. Another option is using OnTrack Disk Manager version 7.

4.9 I need an Enhanced BIOS to access >504MB. How do I get one?

The options are: a new mainboard BIOS, add-on BIOS, or software.

Either way, you will have to repartition and reformat the (large) harddisk.

4.10 Can I use a large harddisk with OSs other than DOS/Windows?

Using a large harddisk is usually no big problem, even if you don't have an Enhanced BIOS. However, some OSs don't understand translation, which makes the combination with DOS, Windows and Win95 problematic.

With operating systems such as NetWare, Unix, Win/NT and OS/2, the only thing you need to use large ATA disks is a BIOS that allows more than 1024 cylinders in the drive type setup. There is one caveat though: the BIOS is still used to boot the operating system, so you will have to ensure that everything necessary to get the OS running in the first place resides below cylinder 1024. Remember that if you have an Enhanced BIOS, drives up to 8GB will appear to have no more than 1024 cylinders, so in those cases these boot restrictions are removed.

Once running, these operating systems use their own software to control the disks (Win95 also does this, but has a special position; see below). That way, they are not subject to the BIOS' restrictions such as the capacity limit. Unfortunately, this also means that if you have a translating EBIOS or software driver, the OS has to be aware of the translation scheme used, or conflicts will arise between the operating system and DOS/Win/Win95. If you can set up partitions so that all DOS and boot partitions reside below the first 1024 cylinders (504MB), you can avoid translation altogether and all the hassles with it.

Older operating systems don't understand translation at all. Newer ones (OS/2 3.x, Linux 1.2 or better, Win95, SCO 5.0.x) will handle standard translation schemes out of the box, but not always those employed by some software drivers (EZDrive, Disk Manager v6.x or older). In the case of DM 6, fixes or updates are available for some operating systems (see above).

Novell has a NetWare driver IDE.DSK version 3.0 dated September 2, 1994. This version of the driver uses the Identify Device ATA command to get the drive parameters and ignores the BIOS parameters. This means that Novell now works with big IDE drives.

A final remark: OS/2 enforces DOS compatibility for FAT partitions. That means that without an Enhanced BIOS, only HPFS partitions can extend beyond cylinder 1024.

4.11 I heard that Win95 provides support for large IDE disks.

True, but it doesn't necessarily mean you can actually benefit from that support in all cases.

Despite a large number of significant changes, in its way of handling harddisks Win95 largely resembles Windows for Workgroups. Just like OS/2, Linux and other operating systems, Win95 uses 32-bit protected mode drivers for the harddisks (unless it's using compatibility mode), and is happy to handle harddrives of respectable size: well over 100GB. However, unlike OS/2 and Linux, and like Windows for Workgroups, Win95 boots from the same old DOS we all love to hate. Even once Win95 has booted, DOS hasn't gone. Win95 always keeps it behind the scenes and uses it to run devices in compatibility mode. In 'safe mode', important for troubleshooting, Win95 completely relies on DOS.

What all of this implies is that even though Win95's protected-mode disk driver may support gargantuan drives, it will never change the setup it inherits from DOS in order to retain compatibility with the latter. If you can only get at the first 504MB of your drive in DOS, it will be the same in Win95. You will still need one of the usual > 504MB solutions mentioned elsewhere in this FAQ. For details, see also Microsoft KnowledgeBase article Q126855, "Windows 95 Support for Large IDE Hard Disks".

There's still hope, however, for drives that don't have any BIOS support at all (e.g. on the secondary channel, or drives that are set to "Not installed" in the BIOS), and perhaps other drives/partitions as well. The FDISK that comes with Win95 isn't up to it, though. Watch this space for more details.

4.12 Can I use more than 2 or 4 hard drives?

For DOS and Windows you probably want BIOS support for all your harddisks. Older BIOSes support drives on the primary channel only, just two; newer ones add support for the secondary channel for a total of four. Few BIOSes support more than that; MR BIOS is an exception.

If the BIOS supports just two drives and you want more, there's a software solution available: 3drives (see the net.resource guide ). Some interface cards also ship with the necessary support. Creative Labs has drivers for CD-ROMs on the tertiary and quaternary port.

Other operating systems such as Win95 and OS/2 support both primary and secondary interface without aid from the BIOS. Linux will support a nearly arbitrary number of interfaces; you'll have to pass kernel parameters to specify the ones beyond the first two.

4.13 Does <insert operating system> support ATAPI (IDE) CD-ROMs?

The current versions of most operating systems support ATAPI CD-ROMs. That includes OS/2 3.0, Linux 1.2 and above, and Win95.

Unfortunately, hardware manufacturers have started designing these CD-ROM units while the ATAPI standard was still evolving, so there are now a couple of versions implemented in the real world. Moreover, the complexity and novelty of ATAPI means that there are some variations even among implementations of the same revision. Writing an OS ATAPI driver that works with all CD-ROMs, therefore, is a daunting task and not all have succeeded equally well. So although these OSs all support ATAPI, they do not work with all ATAPI equipment.

See Microsoft KnowledgeBase Q131499, "CD-ROM Drives Requiring Real-Mode Drivers", for more details on Win95 support. For OS/2, take a look at http://www.austin.ibm.com/pspinfo/os2hw.html ; for updated drivers use the latest install disk upgrade or ftp://ftp.pc.ibm.com/pub/os2_drivers/atapi.zip .

4.14 I need a PCI ATA-2 interface that uses only one slot.

There is a problem with PCI and multi-I/O or dual-ported IDE interfaces. Such interfaces need two or more predetermined interrupts which cannot be shared with other PCI devices, which is probably impossible with your PCI slots. The usual workaround consists of either integration of I/O functions on the mainboard, or the use of a tiny 'paddle' board that plugs into an ISA slot.

This is not so much a weakness in the design of PCI, but a conflict between PCI's plug'n'play philosophy and the requirement that these interfaces be fully compatible with oldfashioned I/O cards.

Some vendors use PCI interfaces that rely on a proprietary extension of the PCI bus. This is obviously not portable; you often can't even move the card to a different slot in the same machine. Moreover, such extensions may cause compatibility problems since they use PCI signals reserved for other purposes.

4.15 Will adding an 'EIDE' interface help my drives' performance?

A new interface may or may not help; it is possible to make a rough prediction if a better interface would really speed things up.

Hardware vendors and marketing people would love to see everyone rush out and buy the latest generation of 'EIDE' adapters. To achieve this noble goal they tend to juggle with too-good-to-be-true performance figures. The relation between this advertising hype and the real world is shaky at best.

The main point to remember is: a slow drive is a slow drive no matter how good the interface is. If the speed at which the drive physically transfers the data to/from the media is the limiting factor in performance, and it often is, the only way to make things go significantly faster is to purchase a better drive. Note that the transfer modes supported by modern drives (those 11MB/s or larger figures) have little to do with their real-world performance.

In addition, an 'ordinary' VLB interface may already offer respectable bandwidth---the fastest ATA transfer mode is theoretically 8.3 MB/s, which is more than any ATA-2 drive on the market today can sustain. An ISA interface, on the other hand, makes a much better candidate for replacement since it rarely has a bandwidth over 2.5MB/s, which is rather cramped by today's standards.

How to determine if the drive is the bottleneck? You can get a rough idea using Coretest version 3 . This version of Coretest gives two performance figures of interest here: the (B)uffered transfer rate which is an indication of the bandwidth between drive and interface, and the (S)ustained rate which is related to the speed of the drive media. If your drive has a small buffer cache, you may have to use the /B16 option to get the correct buffered transfer rate.

Usually you'll find that the first figure exceeds the second by a considerable margin (say, a factor two or more). This means that the physical properties of the drive itself are the bottleneck, and improving the interface speed any further won't help much. The only thing that may improve performance somewhat is using block mode (using either a BIOS option or a driver). Only if the drive throughput starts to approach the interface bandwidth will you have a fair chance that a new interface will have a large impact on performance, provided the drive supports faster modes than the one currently used.

This is not an endorsement of Coretest as a disk benchmark; there are more reliable ones around, such as QBench .

Be sure to read question 7.2 to get a more complete picture.

Next Chapter, Previous Chapter

Table of contents of this chapter, General table of contents

Top of the document, Beginning of this Chapter