INTERFACE COMMANDS
Set Multiple Mode
Enables the controller to perform Read and Write Multiple operations, and establishes the block count for these commands. Before issuing this command, the Sector Count register should be loaded with the number of sectors per block. The drives support block sizes of 2, 4, 8 and 16 sectors.
When this command is received, the controller sets BSY and examines the Sector Count register contents. If they contain a valid and supported block count value, that value is loaded for all subsequent Read and Write Multiple commands, and execution of those commands is enabled. An invalid and unsupported block count in the register results in an Aborted Command error and disallows Read Multiple and Write Multiple commands.
Write Commands
Write Sector(s)
Writes from 1 to 256 sectors, beginning at a sector specified in the Command Block. (A sector count of 0 requests 256 sectors.)
When the Command register is written, the drive sets the DRQ bit and waits for the host to fill the sector buffer with the data to be written. An interrupt is not generated to start the first buffer fill operation.
Once the buffer is full, the drive resets DRQ, sets BSY, and begins command execution. If the drive is not already on the desired track, an implied seek is performed.
The data loaded in the buffer is written to the data field of the sector, followed by the ECC bytes. Upon command completion, the Command Block registers contain the cylinder, head and sector number of the last sector written. The next time the buffer is ready to be filled during
After the host fills the buffer, DRQ is reset and BSY is set. If an error occurs, Write Sector operations terminate at the sector containing the error.
The Command Block registers then contain the numbers of the cylinder, head and sector where the error occurred. The host may read the Command Block to determine the nature of that error, and on which sector it happened. A Write Long may be executed by setting the Long bit in the command code. The Write Long command writes the data and the ECC bytes directly from the sector buffer; the drive itself does not generate the ECC bytes. Restrict Write Long commands to PIO Mode 0.
Write Verify Sector(s)
Identical to the Write Sector(s) command, except that the requested sectors are verified immediately after being written. The verify operation reads (without transferring), and checks for data errors. Any errors encountered during this operation are reported.
Write Sector Buffer
Allows the host to overwrite the contents of the drive’s sector buffer with a selected data pattern. When this command is received, the drive:
1.Sets BSY,
2.Sets up the sector buffer for a write operation,
3.Sets DRQ,
4.Resets BSY and
5.Generates an interrupt.
The host may then write up to 256 words of data to the buffer. A disk write task begins to store the host data to disk. Host write commands continue to be accepted and data transferred to the buffer until either the write command stack is full or the data buffer is full. The drive may reorder write commands to optimize drive throughput.
7 – 4