Important: The information in this document is obsolete and should not be used for new development.
SCSILoadDriver
The Start Manager uses theSCSILoadDriverfunction to provide an opportunity for a SIM to load a driver other than one found on the media.
OSErr SCSIAction(SCSILoadDriverPB *scsiPB);
- scsiPB
- A pointer to a SCSI load driver parameter block, which is described on page 4-34.
--> scsiPBLength UInt16 The size of the parameter block. --> scsiFunctionCode UInt8 The SCSILoadDriverfunction selector code (0x82).<-- scsiResult OSErr The returned result 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. <-- scsiLoadedRefNum UInt16 The driver reference number returned by the SIM. --> scsiDiskLoadFailed Boolean Set to trueif a driver could not be loaded from the media.DESCRIPTION
TheSCSILoadDriverfunction is called by the Start Manager to load device drivers for SCSI devices. You can use this function to load a driver for a device that was not available at system startup.The Start Manager can call this function both before and after attempting to load a driver from the media. On the first attempt, the
scsiDiskLoadFailedfield is set tofalse, indicating to the SIM that it can choose to load a driver from the media or install another (typically newer) driver of its own choosing.If the first attempt to load a driver fails, the Start Manager calls the
SCSILoadDriverfunction a second time, with thescsiDiskLoadFailedfield set totrueto indicate that a driver could not be loaded from the media. The SIM then loads its own driver, if possible, or returns an error result.SPECIAL CONSIDERATIONS
TheSCSILoadDriverfunction may move memory; you should not call it at interrupt time.RESULT CODES
noErr 0 No error scsiFunctionNotAvailable -7871 The requested function is not supported by this SIM