Important: The information in this document is obsolete and should not be used for new development.
SIM Initialization Record
You use the SIM initialization record to provide information about your SIM when you register it with the XPT using theSCSIRegisterBusfunction. The SIM initialization record is defined by the SIMInitInfo data type.
struct SIMInitInfo { UInt8 *SIMstaticPtr; SInt32 staticSize; SIMInitProc SIMInit; SIMActionProc SIMAction; SCSIProc SIM_ISR; InterruptPollProc SIMInterruptPoll; SIMActionProc NewOldCall; UInt16 ioPBSize; Boolean oldCallCapable; UInt8 simInfoUnused1; SInt32 simInternalUse; SCSIProc XPT_ISR; SCSIProc EnteringSIM; SCSIProc ExitingSIM; MakeCallbackProc MakeCallback; UInt16 busID; UInt16 simInfoUnused3; SInt32 simInfoUnused4; }; typedef struct SIMInitInfo SIMInitInfo;
Field Description
SIMstaticPtr- A pointer to the storage allocated by the XPT for the SIM's static variables.
 staticSize- The amount of memory requested by the SIM for storing its static variables.
 SIMInit- A pointer to the SIM's initialization function. See the description of the
 SIMInitfunction on page 4-60 for more information.SIMAction- A pointer to the SIM function that handles
 SCSIActionrequests. See the description of theSIMActionfunction on page 4-61 for more information.SIM_ISR- Reserved.
 SIMInterruptPoll- A pointer to the SIM's interrupt polling function. The Device Manager periodically calls this routine while waiting for a synchronous request to complete if the processor's interrupt priority level is not 0. This allows the Virtual Memory Manager to initiate SCSI transactions when interrupts are disabled. See the description of the
 SIMInterruptPollfunction on page 4-61 for more information.NewOldCall- If the
 oldCallCapablefield is set totrue, this field contains a pointer to the SIM function that handles original SCSI Manager requests. See the description of theNewOldCallfunction beginning on page 4-63 for more information.ioPBSize- The minimum size that a SCSI I/O parameter block must be for use with this SIM.
 oldCallCapable- A Boolean value that indicates whether the SIM emulates original SCSI Manager functions.
 simInfoUnused1- Reserved.
 simInternalUse- A long word available for use by the SIM. This field is not affected or used by the SCSI Manager.
 XPT_ISR- Reserved.
 EnteringSIM- A pointer to the XPT
 EnteringSIMfunction. This function provides support for virtual memory. Your SIM must call this function prior to executing any other SIM code. See the description of theEnteringSIMfunction on page 4-58 for more information.ExitingSIM- A pointer to the XPT
 ExitingSIMfunction. Your SIM must call this function before passing control to any code that could cause a page fault, including completion routines. See the description of theExitingSIMfunction on page 4-59 for more information.MakeCallback- A pointer to the XPT
 MakeCallbackfunction. Your SIM must call this function after completing a transaction. The XPT then calls the completion routine specified in thescsiCompletionfield of the parameter block header. See the description of theMakeCallbackfunction on page 4-59 for more information.busID- The bus number assigned by the XPT to this SIM/HBA.