Hiya,
Just received a drive today that was sent to the firm I work for as 'OS fault - doesn't recognise my drive'. Drive has been sat working in a PC for a couple of months, works fine.
Transferred to the RISC OS box, and ran HForm (the disc formatter). HForm failed, quoting a negative disc size.
I was asked to investigate why HForm would have done this. Bear in mind that HForm was written in 1987, with relatively infrequent updates. I was suspecting something new that was being used by the drive, or an obsolete value not being set any more.
Turns out that the IDENTIFY DEVICE block is corrupting the top 16 bits of every 32-bit word; the entire block is striped with &EA. The PC never spotted it because it never re-checked the ID block beyond when the drive was brand new and it was auto-identified. The RISC OS driver didn't even talk to it originally as it wasn't formatted, and HForm acted erratically because it believed exactly what it found.
NO piece of software since this drive's failure, on the PC or RISC OS had checked the checksum word. Of course HForm should have done, RISC OS's driver should have done, and of course the PC BIOS and/or OS should have done. I guess it isn't because it's a rare failing.
Valuable lesson though!!! I'm off to enforce checksum checking!!!
Best wishes,
Drew -- Signature huh??? Hmm...I dunno...
