We came across some interesting information about floppy disk problems today.
To start with it is worth noting that we have had intermittent reports of floppy disk problem ever since the release of BurnInTest version 1.0, some years ago. Some of the problems we could explain but despite re-writing the disk test module the problems never fully disappeared.
It seems that we finally have a possible explanation for some of the problems.
There has been a long running court case against Toshiba, NEC and others for the alleged production of faulty floppy drive controller (FDC) chips. It seems they all copied off each others (allegedly) faulty design and propagated the bug into millions of computers.
What follows is some extracts from information supplied for the court case.
“A properly designed and manufactured FDC that meets manufacturer specifications, however, will detect the boundary error conditions and assert an error status, which triggers the control program to rewrite the affected data correctly. Because of the defective microcode, Defendants' defective FDC's instead verify the erroneous data as correct without an error status, resulting in the storage of corrupt data or the destruction of data without notice to the control program or operating system and without the operator's knowledge.”
“Local area network interface cards and sound cards are two examples of common DMA devices. If a defective FDC is made to wait for data a few microseconds too long, because of competition for DMA, the defective FDC can cause corruption of data written to the attached device. If the wait for data is longer, a defective FDC can write the delayed data as the first byte of the next physically adjacent data sector of a floppy diskette and destroy or "zero out" the remainder of data in that sector--all without reporting any error or notifying the control program or computer operator that data has been corrupted or destroyed.”
“Indeed, the possibility of this boundary error problem occurring increased when computers became capable of "multi-tasking"--that is, capable of performing several computer tasks at the same time.”
“So Plaintiffs allege that if a computer is doing a bunch of stuff at the same time the faulty FDC might stick the data in the wrong place; and it might stick it on top of other data which, consequently, gets messed up by the misplaced, over-written data.”
So that’s the bad news. The good news is that BurnInTest is highly multithreaded and is a good tool to provoke this problem. Any errors will get picked up and reported in the verify stage of the disk test. However as the problem is provoked by a timing issue is may take several hours of testing to see the fault.