[EDIT] N.B. see PS at end.
This error has come up a number of times, but seems mainly to be attributed to a hardware fault. I don't believe this is the case in what I am seeing, so let me describe the situation in some detail.
I have three H3x0 units. They all work with a Toshiba 80GB disk with the IDE connector (MK8007GAH). They all work with a Toshiba 120GB disk with a ZIF connector (MK1214GAH) using various adapters (e.g. the cheap eBay one or the new one that makes the disk size the same as the IDE connector disks).
However, with a Samsung HS12YHA (120GB, single platter), I have the following behaviour, again the same on any of the iriver units:
The original firmware boots and works, except that an attempt to format says "Cannot Format". However, it can be used to connect using USB, play music, or to install the RockBox bootloader and RockBox itself.
The RockBox bootloader fails to boot, and says "ATA error: -32" etc. Connecting USB and pressing a key successfully starts a USB disk connection, and I can partition, format and write files to the disk, including using RButil. It is noticeable that the write speed is several times slower than with the 120GB Toshiba.
Using a low-level disk program (DFSee) I have tried clearing the whole of the first track to zeros, repartitioning (FAT32, 32k clusters), installing different versions of MBR code (in case the crc of that is being checked). DFSee also confirms that the disk has a 512k sector size, unless the boot USB code is doing something to fool it, I suppose; I think it's right, though, as I once loaded about 110GB on it without problems (other than taking a day and a half).
All I can guess is that there is some timing issue (hence the slow access speed) and that the boot code is more intolerant of it - but it's a guess. Is there any information on what actually triggers the -32 error?
Paul
[EDIT] I found I have a copy of the bootloader from SVN sometime in Sept 2008 - at some point someone posted a link to this compiled and combined with the 131kr iriver firmware, but I can't find the link now (maybe it was the Wiki article about using CF cards). Anyway, I have flashed this onto one of my units, and now it boots off the Samsung disk just fine! (but now it doesn't work in bootloader USB mode...) I haven't done any speed tests yet, though (later: both Toshiba and Samsung units seem to be stuck at 11.6 MB/s - perhaps I am using a USB 1.1 port by mistake).
[FURTHER EDIT] Now I see (according to Samsung's
web site) that this Samsung disk has a sector size of 4k. I wouldn't have expected this to work in Rockbox. Does this mean that a special build to recognise this would perform better?