WRITING A DRIVER
5-10
5
xx08: SIMILAR TO xx08 ABOVE, ONLY THE DATA RECEIVED
HAS SOME PARITY ERROR
OCCURRED.
2. FINAL RETURNS:
SAMPLE RETURN CODE FOR ONE OF MANY CALLERS OF THE SCSI
FIRMWARE:
Note
It may not be clear to the casual reader that address
register A3 is not modified in this return code. If
an RTE is to be executed, address register A3 points
to the register save area. The subroutine
RESTORE_REG uses register A3 to restore the
registers D0 through D7 and A0 through A6. If a reentry
to the RTE entry is executed, the address register A3
must remain intact.
(SCSI_RET: is the label that is pointed to by the vector provided in the
user packet.)
SCSI_RET:
STATUS WORD BIT 13: IF CLEAR, SOMEHOW RESTORE
REGISTER
(RTE) SET AND PERFORM AN RTE. IF SET,
THE FIRST RETURN FROM THE SCSI
FIRM-
WARE (COMMAND THREAD) AND THE
USER
SHOULD RETURN TO WHOMEVER
CALLED
THE DRIVER (RTS, ETC.).