5.3 Host Commands
At command issuance (I/O registers setting contents)
1F7H(CM) | 0 | 1 | 0 | 0 | 0 | 0 | 0 | R |
1F6H(DH) | × | L | × | DV | Start head No. /LBA [MSB] | |||
|
|
|
|
|
|
|
|
|
1F5H(CH) | Start cylinder No. [MSB] / LBA |
|
|
| ||||
1F4H(CL) | Start cylinder No. [LSB] / LBA |
|
|
| ||||
1F3H(SN) | Start sector No. / LBA [LSB] |
|
|
| ||||
1F2H(SC) | Transfer sector count |
|
|
|
| |||
1F1H(FR) | xx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R= 0 →with Retry R = 1 →without Retry
At command completion (I/O registers contents to be read)
1F7H(ST) | Status information |
|
| |||
|
|
|
|
|
|
|
1F6H(DH) | × |
| L | × | DV | End head No. /LBA [MSB] |
|
|
|
|
|
| |
1F5H(CH) | End cylinder No. [MSB] / LBA | |||||
1F4H(CL) | End cylinder No. [LSB] / LBA | |||||
1F3H(SN) | End sector No. / LBA [LSB] | |||||
1F2H(SC) | 00 (*1) |
|
|
|
| |
1F1H(ER) | Error information |
|
| |||
|
|
|
|
|
|
|
*1 If the command is terminated due to an error, the remaining number of sectors of which data was not transferred is set in this register.
(5) WRITE SECTOR(S) (X’30’ or X’31’)
This command writes data of sectors from the address specified in the Device/Head, Cylinder High, Cylinder Low, and Sector Number registers to the address specified in the Sector Count register. Number of sectors can be specified to 256 sectors in maximum. Data transfer begins at the sector specified in the Sector Number register. For the DRQ, INTRQ, and BSY protocols related to data transfer, see Subsection 5.4.2.
If the head is not on the track specified by the host, the device performs a implied seek. After the head reaches to the the specified track, the device writes the target sector.
If an error occurs when writing to the target sector, retries are attempted before reporting the error, irrespective of the R bit setting.