Registers: what do they mean
Here we would like to explain the meaning of status and error registers.

Status Register
This register contains hard drive status information. It is updated after every single command sent to the drive.
ERR: means last command did not execute. In this case Error register contains more details on the specific error.
INDX: obsolete
CORR: obsolete
DREQ (Data Request): is asserted when hard drive wants to exchange data with the host controller (in either direction)
DRSC (Device Seek Complete): is obsolete; always asserted on modern hard drives
FAULT (Write Fault): is obsolete
DRDY (Device Ready): is obsolete; always asserted on modern hard drives
BUSY: indicates that the hard drive is busy executing the command OR initializing (after power on or reset)
Error Register
Error register provides more details if the last command did not execute. This register is only valid when ERR bit of the Status Register is asserted.
AMNF: means Address Mark Not Found (usually occurs on failed read attempt)
T0NF (Track 0 Not Found): obsolete
ABRT: command aborted (unsupported command or other failure)
IDNF: sector ID not found (usually occurs on failed read attempt)
UNC: uncorrectable read error; the hard drive was unable to read data
ICRC (Interface CRC error): there was CRC error while transferring data between host and the hard drive (usually indicates bad interface cable)
Back to Atola Insight User's Manual