EIDETEST INTRODUCTION EIDEtest was written to check for the RZ-1000 EIDE controller flaw commonly found on PCI motherboards with Mercury and Neptune chipsets. It does not check for the flaw directly. Rather it does a high level test, ensuring that what is written to a file is what comes back later. BACKGROUND Please read the enclosed FAQ, RX1000.TXT for more information on the flaw. In covers such topics as: * Reporting the flaw. * Do you likely have the flaw? * Recognising the RZ-1000 chip. * Making your OS immune to the flaw. * What can you do if you find the flaw? HOW TO USE Under DESQview, Windows, Windows For WorkGroups , NT or OS/2 emulation, all under DOS emulation and run the program: EIDEtest.exe C: where C: is your EIDE drive partition that has at least 7 MB of free space on it for the test. Just follow the instructions on the screen. In phase 2 of the test, you will need to run other programs to generate DMA activity while the test is running. DOS, DESQview, Windows, Windows For WorkGroups, and Windows-95 only do one i/o at a time. The only ways to generate the simultaneous DMA that triggers the damage is: * Backup some files to floppy with MWBackup, MSBackup, Norton Backup or other high performance floppy backup program with simultaneous disk i/o turned on. * Backup a file using your mag tape backup software with simultaneous disk i/o turned on. Under OS/2, Warp, NT, Linux, SCO XENIX, UNIX etc. it is much easier to generate the simultaneous DMA since these operating systems do more than one i/o at a time. (This is a two-edged-sword. This also means there are more ways to corrupt your files, so the flaw is likely to cause more damage.) There are many ways to generate the simultaneous DMA that triggers the damage: * Format a floppy. * Browse some files on your SCSI hard disk. * Browse some files on your SCSI CD-ROM. * Scan a document with your SCSI scanner. * Backup some files to floppy with MWBackup, MSBackup, Norton Backup or other high performance floppy backup program with simultaneous disk i/o turned on. * Backup a file using your mag tape backup software with simultaneous disk i/o turned on. Your experiments may run slowly because of EIDEtest's disk overhead. You can continue the test as long as you want, days even. The test will stop as soon at detects even one error or if you hit ESC or the space bar. INTERPRETING TEST RESULTS If the test passes, you probably don't have the flaw. Sometimes the flaw does not manifest immediately. You might have to run the test for many hours in the background for the problem to show up. Running the test under pure DOS does not prove much since it is impossible to generate background interfering DMA activity. If the test fails, it means you your hard disks are not working properly. It does not diagnose why. If you have a PCI motherboard with a Mercury or Neptune chipset, the odds are that the RZ-1000 is the cause of the trouble. However, overheating, other unrelated hardware failures or design flaws, or software bugs can also cause you hard disk to make errors. FREEWARE STATUS EIDEtest, C++ source and executable may be freely copied and used for any purpose except military. Unlike many of the other Canadian Mind Products utilities, it is free, not shareware. You are also free to port the code to other operating systems so long as you leave the copyright banner intact. CONTACTING THE AUTHOR The author, Roedy Green is a computer consultant who prefers to work on Forth, C++, Delphi, DOS, OS/2 and Internet Web projects. If you send me $5 (US or Canadian) to cover duplication, shipping and handling I will send you a diskette containing four programs: PowerQuest IOtest, Gazelle DMAtest, and both EIDEtest and CDtest from Canadian Mind Products. Please report which machines you find the flaw in, and which software and fixpacks you were using at the time. Send email to: Roedy@bix.com or discuss this problem on the Internet newsgroup in: comp.os.os2.bugs. You can also write via snail mail: Roedy Green Canadian Mind Products #601 - 1330 Burrard Street Vancouver, BC CANADA V6Z 2B8 (604) 685-8412 -30-