The thing is, all the prep tools I tried were reading the drive as 33.9GB at the beginning. SCSIConfig, HDToolbox, HDinst even Q-Device... all reported 33.9, which is correct according to the formula used to work out "real" capacity versus "manufacturer's" capacity (36.4).
Now all the tools are consistently reporting the drive as 31.9GB. Q-Device even says that the "manufacturer's" capacity is 34.3... so where have those couple gigabytes gone?
The RDB is still set as it was when it read the drive at the right capacity, but if I edit it and re-read it, all the values drop down to make it 31.9. The RDB isn't corrupt or anything, as the computer still boots up from the first and second partitions.
I have MorphOS installed so I will try SFSDoctor to see if I can get any data back.
cybppc.device is phase5 version 44.67 (11/03/1999) (Ralph Schmidt). I'm certain this is the latest official version - the behaviour doesn't change at all with the newer unofficial G-Rex version. (which I was using when the first hard drive screwed up)
The hard drive shows itself at the lower capacity when connected to my PC.
I was reading up on defects on SCSI drives - apparently it's only the GROWN defects and not the PRIMARY ones to be concerned about, as the primary ones are marked by the manufacturer when the drive was made. In that case, both drives have no grown defects which makes things even more odd. The 512 defects on the other drive were primary.
This drive has 451 primary defects, and the number stayed the same before and after the sudden unexplainable shrinkage.
I just don't get it. :-?
EDIT:
Just ran SFSDoctor. THANKYOU!! It is listing all my directories. It doesn't matter so much if I cannot recover the files inside them, but at least if I can get all the named drawers back, that saves me a LOT of pain.
Thanks for the pointer to that tool, it's very nice! :-D