Important: The information in this document is obsolete and should not be used for new development.
NewOldCall
The XPT calls this function when a client calls any of the original SCSI Manager functions other thanSCSISelect(which is handled bySCSIOldCall). TheNewOldCallfunction must conform to the following type definition:
typedef void (*SIMActionProc) (void * scsiPB, Ptr SIMGlobals);
- scsiPB
 - A pointer to a SCSI I/O parameter block, which is described on page 4-23.
 SIMGlobals- A pointer to the SIM's static data storage.
 
--> scsiPBLength UInt16 The size of the parameter block. <-- scsiResult OSErr The SCSICompleteresult code.--> scsiDevice DeviceIdent The device identification record. --> scsiCompletion CallbackProc A pointer to a completion routine. 
If this field is set tonil, the function is executed synchronously.--> scsiDriverStorage UInt8 * Optional pointer to the device driver's private storage. <-- scsiCurrentPhase UInt16 The current SCSI bus phase. --> scsiSelector SInt16 The _SCSIDispatchtrap selector.<-- scsiOldCallResult OSErr The function result code. <-- scsiSCSImessage UInt8 The SCSICompletemessage byte.DESCRIPTION
After an original SCSI Manager transaction begins, theNewOldCallfunction receives all subsequent original SCSI Manager function requests until the transaction is completed. The XPT converts all original SCSI Manager function requests (exceptSCSIGetandSCSIStat) into SCSI Manager 4.3 parameter block requests and sends them to the appropriate SIM.A SIM uses the
scsiSelectorfield of the parameter block to determine which function to perform and should return the current bus phase and message byte in the appropriate fields after each request.The XPT converts a
SCSIResetrequest into aSCSIResetBusrequest and sends it to all SIMs that support original SCSI Manager emulation. The XPT handlesSCSIStatrequests itself, using the information returned in thescsiCurrentPhasefield.RESULT CODES
Result codes from all emulated functions exceptSCSICompleteare returned in thescsiOldCallResultfield. TheSCSICompleteresult is returned inscsiResult. This indicates to the XPT that the transaction is complete and that the SIM is ready to start a new original SCSI Manager transaction. See the chapter "SCSI Manager" in this book for a list of original SCSI Manager result codes.