
2 |
CUSTOM SCSI PACKETS
$19 | xxxxxxxx | Status from SCSI |
|
| firmware (byte 3) |
|
| (Note 1) |
$1A | 00000000 | Reserved |
$1B | 0000xxxx | Retry count must be 0 |
NOTES: | 1. | Refer to Chapter 3. |
| 2. | Command Table = 384 bytes |
|
| RAM work area. |
This third "class" of custom packets is used to service received commands and messages for an enabled MVME147 TARGET logical unit. When an initiator selects the MVME147 as a TARGET, the firmware switches to TARGET role, determines which logical unit is desired by the initiator, and returns to the TARGET service routine (through the vector supplied in the TARGET enable packet) for user service of the initiator request. If the initiator that selected the MVME147 as a TARGET does not send an illegal message, the TARGET role firmware sequences the SCSI bus to the command phase, read in a CDB, store the CDB in the command table provided through the TARGET enable packet, and return through the vector provided for the selected logical unit for command service. If the command was received, a final status of $xx17 or an intermediate status of $xx06 is stored in the status word of the particular LUN packet. The final status code of $xx17 is returned if an IDENTIFY WITH RESELECTION message was received. The intermediate status code of $xx06 is returned if ATN* was not asserted during selection or if an IDENTIFY WITHOUT RESELECTION message was received. You then use a TARGET sequence packet to service the command.
IMPLEMENTATION NOTE: The SCSI firmware DOES provide information to you as to which SCSI initiator is requesting service from the TARGET in command table byte offset $15.
Packet description:
WORD $00: CONTROLLER LUN
DEVICE LUN
WORD $02: STATUS bytes 0 and 1