Read Buffer

2.20Read Buffer (3Ch)

Operation Code is (3Ch).

Mode specifies meaning of the Buffer Offset field.

Buffer ID is not supported. This byte is always 00h.

Buffer Offset

The byte offset in the buffer at which the read shall begin. This must be between 0 and 15.

Allocation Length must include 4 byte header.

This command is used with the WRITE BUFFER command to test the reliability of the drive command buffer memory and of the SCSI bus. This command does not cause a disc access. The drive terminates the DATA IN phase when it has transferred the header and data specified in Allocation Length, or the header and the remainder of the buffer.

Mode field

Definition

00b

The header, data, and buffer offset are 0s.

01b

The buffer offset indicates the offset from the start of the

 

buffer at which the data are to be read.

10b

Reserved

11b

Reserved

The 4-byte header and the following data are transferred to the initiator in the DATA IN phase. If Allocation Length is 0, neither the header nor data are transferred.

The header is defined as follows:

- Effective Length

The number of bytes of valid data in the buffer.

The effective length does not depend on the actual number of data written by a WRITE BUFFER command. The sum of the buffer offset plus the effective data length is always 16. The number of data to be transferred following the header is the smaller one, either the allocated length minus 4 bytes, or the effective length.

When the drive cannot accept the specified buffer offset, a Check Condition is returned with the sense key "ILLEGAL REQUEST." If Buffer Offset is not 0 when Mode is set to 00h, Check Condition is returned.

- 85 -