Mac OS 9
Slots.h File Reference

Slot Manager Interfaces. More...

#include <MacTypes.h>
#include <Events.h>
#include <Files.h>

Go to the source code of this file.

Data Structures

struct  SlotIntQElement
 
struct  SpBlock
 
struct  SInfoRecord
 
struct  SDMRecord
 
struct  FHeaderRec
 
struct  XFHeaderRec
 
struct  SEBlock
 

Macros

#define NewSlotIntServiceUPP(userRoutine)
 
#define DisposeSlotIntServiceUPP(userUPP)   DisposeRoutineDescriptor(userUPP)
 
#define InvokeSlotIntServiceUPP(sqParameter, userUPP)
 
#define NewSlotIntServiceProc(userRoutine)   NewSlotIntServiceUPP(userRoutine)
 
#define CallSlotIntServiceProc(userRoutine, sqParameter)    InvokeSlotIntServiceUPP(sqParameter, userRoutine)
 

Typedefs

typedef struct SlotIntQElement SlotIntQElement
 
typedef SlotIntQElementSQElemPtr
 
typedef struct SpBlock SpBlock
 
typedef SpBlockSpBlockPtr
 
typedef struct SInfoRecord SInfoRecord
 
typedef SInfoRecordSInfoRecPtr
 
typedef struct SDMRecord SDMRecord
 
typedef struct FHeaderRec FHeaderRec
 
typedef FHeaderRecFHeaderRecPtr
 
typedef struct XFHeaderRec XFHeaderRec
 
typedef XFHeaderRecXFHeaderRecPtr
 
typedef struct SEBlock SEBlock
 

Enumerations

enum  { fCardIsChanged , fCkForSame , fCkForNext , fWarmStart = 2 }
 
enum  {
  stateNil = 0 , stateSDMInit = 1 , statePRAMInit = 2 , statePInit = 3 ,
  stateSInit = 4
}
 
enum  { fall = 0 , foneslot = 1 , fnext = 2 }
 
enum  { catMask = 0x08 , cTypeMask = 0x04 , drvrSWMask = 0x02 , drvrHWMask = 0x01 }
 
enum  { uppSlotIntServiceProcInfo = 0x0000B822 }
 

Functions

typedef CALLBACK_API_REGISTER68K (short, SlotIntServiceProcPtr,(long sqParameter))
 
typedef REGISTER_UPP_TYPE (SlotIntServiceProcPtr) SlotIntServiceUPP
 
SlotIntServiceUPP NewSlotIntServiceUPP (SlotIntServiceProcPtr userRoutine)
 
void DisposeSlotIntServiceUPP (SlotIntServiceUPP userUPP)
 
short InvokeSlotIntServiceUPP (long sqParameter, SlotIntServiceUPP userUPP)
 
OSErr SReadByte (SpBlockPtr spBlkPtr)
 Return an ID byte. More...
 
OSErr SReadWord (SpBlockPtr spBlkPtr)
 Return a 16-bit ID value. More...
 
OSErr SReadLong (SpBlockPtr spBlkPtr)
 Return a 32-bit ID value. More...
 
OSErr SGetCString (SpBlockPtr spBlkPtr)
 
OSErr SGetBlock (SpBlockPtr spBlkPtr)
 
OSErr SFindStruct (SpBlockPtr spBlkPtr)
 
OSErr SReadStruct (SpBlockPtr spBlkPtr)
 Copy a data structure into a new block. More...
 
OSErr SReadInfo (SpBlockPtr spBlkPtr)
 Read a data structure into a new block. More...
 
OSErr SReadPRAMRec (SpBlockPtr spBlkPtr)
 Copy the sPRAM data structure into a new record. More...
 
OSErr SPutPRAMRec (SpBlockPtr spBlkPtr)
 Copy data from spsPointer's block into SPRAMRecord. More...
 
OSErr SReadFHeader (SpBlockPtr spBlkPtr)
 Copy the slot's format block into an FHeaderRec. More...
 
OSErr SNextSRsrc (SpBlockPtr spBlkPtr)
 Determine the set of all a slot card's or NuBus's sResources. More...
 
OSErr SNextTypeSRsrc (SpBlockPtr spBlkPtr)
 Return information about sResources of a specified type. More...
 
OSErr SRsrcInfo (SpBlockPtr spBlkPtr)
 Return the driver reference number. More...
 
OSErr SDisposePtr (SpBlockPtr spBlkPtr)
 
OSErr SCkCardStat (SpBlockPtr spBlkPtr)
 Check the SInfoRecord's InitStatusA field. More...
 
OSErr SReadDrvrName (SpBlockPtr spBlkPtr)
 Read the name of the sResource for this slot and list ID. More...
 
OSErr SFindSRTRec (SpBlockPtr spBlkPtr)
 
OSErr SFindDevBase (SpBlockPtr spBlkPtr)
 Return a pointer to the base of a device. More...
 
OSErr SFindBigDevBase (SpBlockPtr spBlkPtr)
 
OSErr InitSDeclMgr (SpBlockPtr spBlkPtr)
 
OSErr SPrimaryInit (SpBlockPtr spBlkPtr)
 
OSErr SCardChanged (SpBlockPtr spBlkPtr)
 Indicate if a card has been changed. More...
 
OSErr SExec (SpBlockPtr spBlkPtr)
 
OSErr SOffsetData (SpBlockPtr spBlkPtr)
 Return the contents of the offset/data field. More...
 
OSErr SInitPRAMRecs (SpBlockPtr spBlkPtr)
 
OSErr SReadPBSize (SpBlockPtr spBlkPtr)
 Read the size of the indicated sBlock. More...
 
OSErr SCalcStep (SpBlockPtr spBlkPtr)
 Find the field sizes in the indicated block. More...
 
OSErr SInitSRsrcTable (SpBlockPtr spBlkPtr)
 
OSErr SSearchSRT (SpBlockPtr spBlkPtr)
 Find the record corresponding to this sResource. More...
 
OSErr SUpdateSRT (SpBlockPtr spBlkPtr)
 Update the Slot Resource Table. More...
 
OSErr SCalcSPointer (SpBlockPtr spBlkPtr)
 Return pointer to a byte in declaration ROM. More...
 
OSErr SGetDriver (SpBlockPtr spBlkPtr)
 
OSErr SPtrToSlot (SpBlockPtr spBlkPtr)
 Return the slot number of a card. More...
 
OSErr SFindSInfoRecPtr (SpBlockPtr spBlkPtr)
 SFindSInfoRecPtr Return pointer to the sInfoRecord. More...
 
OSErr SFindSRsrcPtr (SpBlockPtr spBlkPtr)
 Return pointer to sRsrc list. More...
 
OSErr SDeleteSRTRec (SpBlockPtr spBlkPtr)
 
OSErr OpenSlot (ParmBlkPtr paramBlock, Boolean async)
 Open slot device. More...
 
OSErr OpenSlotSync (ParmBlkPtr paramBlock)
 
OSErr OpenSlotAsync (ParmBlkPtr paramBlock)
 
OSErr SIntInstall (SQElemPtr sIntQElemPtr, short theSlot)
 Add a new element to the interrupt queue. More...
 
OSErr SIntRemove (SQElemPtr sIntQElemPtr, short theSlot)
 Remove an element from the interrupt queue. More...
 
OSErr SVersion (SpBlockPtr spBlkPtr)
 Return the version number of the Slot Manager. More...
 
OSErr SetSRsrcState (SpBlockPtr spBlkPtr)
 
OSErr InsertSRTRec (SpBlockPtr spBlkPtr)
 
OSErr SGetSRsrc (SpBlockPtr spBlkPtr)
 
OSErr SGetTypeSRsrc (SpBlockPtr spBlkPtr)
 Return information about a matching sResource. More...
 
OSErr SGetSRsrcPtr (SpBlockPtr spBlkPtr)
 

Detailed Description

Slot Manager Interfaces.

Introduced In: System 7.5
Avaliable From: Universal Interfaces 3.4.1
Copyright: © 1986-2001 by Apple Computer, Inc., all rights reserved

For bug reports, consult the following page on the World Wide Web:

http://developer.apple.com/bugreporter/

Macro Definition Documentation

◆ InvokeSlotIntServiceUPP

#define InvokeSlotIntServiceUPP (   sqParameter,
  userUPP 
)
Value:
(short)CALL_ONE_PARAMETER_UPP((userUPP), uppSlotIntServiceProcInfo, \
(sqParameter))

◆ NewSlotIntServiceProc

#define NewSlotIntServiceProc (   userRoutine)    NewSlotIntServiceUPP(userRoutine)

CALL_NOT_IN_CARBON support for pre-Carbon UPP routines: New...Proc and Call...Proc

◆ NewSlotIntServiceUPP

#define NewSlotIntServiceUPP (   userRoutine)
Value:
(SlotIntServiceUPP) \
NewRoutineDescriptor((ProcPtr)(userRoutine), uppSlotIntServiceProcInfo, \
GetCurrentArchitecture())
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)

register 2_bytes:D0 Func(4_bytes:A1)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
fCkForSame 

Card is Changed field in StatusFlags field of sInfoArray

fCkForNext 

For SearchSRT. Flag to check for SAME sResource in the table.

fWarmStart 

For SearchSRT. Flag to check for NEXT sResource in the table.

◆ anonymous enum

anonymous enum
Enumerator
stateSDMInit 

State

statePRAMInit 

:Slot declaration manager Init

statePInit 

:sPRAM record init

stateSInit 

:Primary init

◆ anonymous enum

anonymous enum
Enumerator
fall 

flags for spParamData

foneslot 

bit 0: set=search enabled/disabled sRsrc's

fnext 

1: set=search sRsrc's in given slot only

◆ anonymous enum

anonymous enum
Enumerator
catMask 

Misc masks

cTypeMask 

sets spCategory field of spTBMask (bit 3)

drvrSWMask 

sets spCType field of spTBMask (bit 2)

drvrHWMask 

sets spDrvrSW field of spTBMask (bit 1)

Function Documentation

◆ DisposeSlotIntServiceUPP()

void DisposeSlotIntServiceUPP ( SlotIntServiceUPP  userUPP)

DisposeSlotIntServiceUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: not available
Mac OS X: not available

◆ InitSDeclMgr()

OSErr InitSDeclMgr ( SpBlockPtr  spBlkPtr)

Advanced
InitSDeclMgr()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ InsertSRTRec()

OSErr InsertSRTRec ( SpBlockPtr  spBlkPtr)

InsertSRTRec()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ InvokeSlotIntServiceUPP()

short InvokeSlotIntServiceUPP ( long  sqParameter,
SlotIntServiceUPP  userUPP 
)

InvokeSlotIntServiceUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: not available
Mac OS X: not available

◆ NewSlotIntServiceUPP()

SlotIntServiceUPP NewSlotIntServiceUPP ( SlotIntServiceProcPtr  userRoutine)

NewSlotIntServiceUPP()

Non-Carbon CFM: available as macro/inline
Carbon Lib: not available
Mac OS X: not available

◆ OpenSlot()

OSErr OpenSlot ( ParmBlkPtr  paramBlock,
Boolean  async 
)

Open slot device.

CALL_NOT_IN_CARBON

OpenSlot is the same as PBOpen except that you use it when opening bus
slot devices. It sets the IMMED bit to signal an extended parameter block.
pbis the address of a parameter block. The following fields are
relevant:
Out-In Name Type SizeOffsetDescription
->ioCompletion ProcPtr 412Completion routine address (if async =TRUE)
<-ioResult OSErr 216Error Code (0=no error, 1=not done yet)
->ioNamePtr StringPtr 418Address of device driver name
<-ioRefNum short 224Receives driver reference number
->ioPermssn SignedByte 127Rd/Wrt permission (1=read, 2=write, et.al.)
Additionally, if the slot resource serves a single device, there is an extension that
includes:
->ioMix ProcPtr 428Reserved for the driver open routine
->ioFlags short 232Cleared to indicate single slot device
->ioSlot SignedByte 134Slot number for device being opened
->ioID SignedByte 135Slot resource ID
If the slot resource serves more than one device, there is an extension that includes:
->ioMix ProcPtr 428Reserved for the driver open routine
->ioFlags short 232Cleared to indicate single slot device
->ioSEBlkptr ProcPtr 434Address of external parameter block
asyncis a Boolean value. Use FALSE for normal (synchronous) operation
or TRUE to enqueue the request and resume control immediately. See
Async I/O .
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
badUnitErr (-21) refNum doesn't match unit table
unitEmptyErr (-22) refNum specifies NIL handle in unit table
openErr (-23) Requested Read/Write permission and the driver's Open t
permissions don't match
dInstErr (-26) Couldn't find driver in resource file
Note
OpenSlot opens a bus-based slot device driver when used by the Device
Manager . Other than that, it is the equivalent of PBOpen
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ OpenSlotAsync()

OSErr OpenSlotAsync ( ParmBlkPtr  paramBlock)

OpenSlotAsync()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ OpenSlotSync()

OSErr OpenSlotSync ( ParmBlkPtr  paramBlock)

OpenSlotSync()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SCalcSPointer()

OSErr SCalcSPointer ( SpBlockPtr  spBlkPtr)

Return pointer to a byte in declaration ROM.

SCalcSPointer returns a pointer to a given byte in a card's declaration
ROM, given the pointer to a current byte and an offset ( spOffsetData ) in bytes.
Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
→ spsOffsetData long 412Offset/data field
→  spByteLanes char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SCalcStep()

OSErr SCalcStep ( SpBlockPtr  spBlkPtr)

Find the field sizes in the indicated block.

SCalcStep calculates the field sizes in the block pointed to by spBlkPtr.
Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spsPointer Ptr 44Structure pointer
→ spByteLanes  char 153ByteLanes from format block in card ROM
→spFlags char 154Internal use only
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
SCalcStep is used for stepping through the card firmware one field at a
time. If the fConsecBytes flag is set it calculates the step value for
consecutive bytes; otherwise it calculates it for consecutive IDs.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SCardChanged()

OSErr SCardChanged ( SpBlockPtr  spBlkPtr)

Indicate if a card has been changed.

SCardChanged returns a value of true in spResult if the card in slot spSlot
has been changed (that is, if its sPRAMRecord has been initialized);
otherwise it returns false. Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spSlot char 149Slot number
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SCkCardStat()

OSErr SCkCardStat ( SpBlockPtr  spBlkPtr)

Check the SInfoRecord's InitStatusA field.

SCkCardStat checks the InitStatusA field of the SInfoRecord  of the slot
designated by spSlot, which also reflects the value of the InitStatusV field.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spSlot char 149Slot number
Other parameters affected are:
spResult long 40FUNCTION result
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
If this field contains a nonzero value, SCkCardStat returns a zero value.
See SInfoRecord for a description of the sInfo record. The SCkCardStat
routine can return nonfatal error reports, which can be one of the
following:
smBadRefId (-330) Reference ID was not found in the given sResource
list.
smBadsList (-331) The IDs in the sResource list are not in ascending
order.
smReservedErr (-332) A reserved field was not zero.
smCodeRevErr (-333) Wrong revision of the code to be executed by sExec.
smCPUErr (-334) The CPU field of the code was wrong.
smsPointerNil (-335) LPointer is nil From sOffsetData. If this error occurs;
check sInfo rec for more information.
smNilsBlockErr (-336) The physical block size (of an sBlock) was zero.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SDeleteSRTRec()

OSErr SDeleteSRTRec ( SpBlockPtr  spBlkPtr)

SDeleteSRTRec()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SDisposePtr()

OSErr SDisposePtr ( SpBlockPtr  spBlkPtr)

SDisposePtr()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ SetSRsrcState()

OSErr SetSRsrcState ( SpBlockPtr  spBlkPtr)

SetSRsrcState()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SExec()

OSErr SExec ( SpBlockPtr  spBlkPtr)

SExec()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SFindBigDevBase()

OSErr SFindBigDevBase ( SpBlockPtr  spBlkPtr)

SFindBigDevBase()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SFindDevBase()

OSErr SFindDevBase ( SpBlockPtr  spBlkPtr)

Return a pointer to the base of a device.

SFindDevBase returns a pointer in spResult to the base of a device whose
slot number is in spSlot and whose sResource ID is in spID.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spID char 150sResource list ID
→spSlot char 149Slot number
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The base address of a device may be in either slot or superslot space but
not in both. Slot or superslot slot spaces are discussed in the book Designing
Cards and Drivers for Macintosh II and Macintosh SE .
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SFindSInfoRecPtr()

OSErr SFindSInfoRecPtr ( SpBlockPtr  spBlkPtr)

SFindSInfoRecPtr Return pointer to the sInfoRecord.

SFindSInfoRecPtr returns a pointer to the sInfoRecord identified by
spSlot. Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
← spResult long 40FUNCTION result
→spSlot char 149Slot number
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SFindSRsrcPtr()

OSErr SFindSRsrcPtr ( SpBlockPtr  spBlkPtr)

Return pointer to sRsrc list.

SFindSRsrcPtr returns a pointer to the sRsrc list for the sRsrc identified
by spSlot, spID, and spExtDev . Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spsPointer Ptr 44Structure pointer
→spID char 150sResource list ID
→spSlot char 149Slot number
Other parameters affected include:
spResult long 40FUNCTION result
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SFindSRTRec()

OSErr SFindSRTRec ( SpBlockPtr  spBlkPtr)

SFindSRTRec()

Non-Carbon CFM: not available
Carbon Lib: not available
Mac OS X: not available

◆ SFindStruct()

OSErr SFindStruct ( SpBlockPtr  spBlkPtr)

SFindStruct()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetBlock()

OSErr SGetBlock ( SpBlockPtr  spBlkPtr)

SGetBlock()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetCString()

OSErr SGetCString ( SpBlockPtr  spBlkPtr)

SGetCString()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetDriver()

OSErr SGetDriver ( SpBlockPtr  spBlkPtr)

SGetDriver()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetSRsrc()

OSErr SGetSRsrc ( SpBlockPtr  spBlkPtr)

SGetSRsrc()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetSRsrcPtr()

OSErr SGetSRsrcPtr ( SpBlockPtr  spBlkPtr)

SGetSRsrcPtr()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SGetTypeSRsrc()

OSErr SGetTypeSRsrc ( SpBlockPtr  spBlkPtr)

Return information about a matching sResource.

SGetTypeSRsrc returns information either about the next sResource data
structure of the matching type it finds in the same slot or about the next
sResource data structure of the matching type it finds in any higher-numbered
slot.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spsPointer Ptr 44Structure pointer
↔spParamData long 424input: fall, foneslot flags
output: sResource enabled or disabled
←spRefNum short 238Slot Resource Table RefNum
↔spCategory short 240sResource_Type: Category field
↔spCType short 242sResource_Type: cType field
↔spDrvrSW short 244sResource_Type: DrvrSW field
↔spDrvrHW short 246sResource_Type: DrvrHW field
→spTBMask char 148type bit mask
↔spSlot char 149Slot number
↔spID char 150ID of the sResource
↔spExtDev char 151ID of external device
←spHWDev char 152ID of hardware device
Returns
an operating system Error Code . It will be one of:
noErr (0) No error
Note
When you specify an sResource data structure and specify which
resource-type fields to match, the SGetTypeSRsrc function returns
information either about the next sResource data structure of the matching
type it finds in the same slot or about the next sResource data structure of
the matching type it finds in any higher-numbered slot. It performs the
same function as the SNextTypeSRsrc function except that for the
SGetTypeSRsrc function, you set the fall and foneslot flags to specify
which type of search the function is to perform.
You specify an sResource data structure with the spSlot, spID, and
spExtDev fields. You must also use the spTBMask field to specify which
fields of the sRsrcType entry in the sResource data structure should not be
included in the search, as follows:
•Set bit 0 to ignore the DrvrHW field.
•Set bit 1 to ignore the DrvrSW field.
•Set bit 2 to ignore the cType field.
•Set bit 3 to ignore the Category field.
In addition, you must clear the fall flag of the spParamData field (bit 0) to
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SInitPRAMRecs()

OSErr SInitPRAMRecs ( SpBlockPtr  spBlkPtr)

SInitPRAMRecs()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SInitSRsrcTable()

OSErr SInitSRsrcTable ( SpBlockPtr  spBlkPtr)

SInitSRsrcTable()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SIntInstall()

OSErr SIntInstall ( SQElemPtr  sIntQElemPtr,
short  theSlot 
)

Add a new element to the interrupt queue.

Device Manager Slot Support

SIntInstall adds a new element to the interrupt queue for a particular card
slot on the bus
sIntQElemPtr points to the element being added to the interrupt queue for a given
slot.
theSlotis the location on the bus where the new element is being installed
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
slotNumErr (-360)   invalid slot # error
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SIntRemove()

OSErr SIntRemove ( SQElemPtr  sIntQElemPtr,
short  theSlot 
)

Remove an element from the interrupt queue.

SIntRemove removes an element from the interrupt queue for a particular
card slot on the bus.
sIntQElemPtr points to the element being removed from the interrupt queue for a
given slot.
theSlotis the location on the bus where the element is being removed
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
slotNumErr (-360)   invalid slot # error
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SNextSRsrc()

OSErr SNextSRsrc ( SpBlockPtr  spBlkPtr)

Determine the set of all a slot card's or NuBus's sResources.

SNextSRsrc can be used to determine the set of all sResources in a given slot
card or NuBus configuration.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spsPointer Ptr 44Structure pointer
←spIOReserved short 236Reserved field of Slot Resource Table
←spRefNum short 238Slot Resource Table reference number
←spCategory short 240sResource type: Category
←spCType short 242sResource type: Type
←spDrvrSW short 244sResource type: Driver software identifier
←spDrvrHW short 246sResource type: Driver hardware identifier
↔spSlot char 149Slot number
↔spID char 150sResource list ID
↔spExtDev char 151External device identifier
←spHwDev char 152Hardware device identifier
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardsRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
Starting from a given slot number, spSlot, sResource list identification
number, spID, and external device identifier, spExtDev , the trap macro
SNextSRsrc returns the slot number, sResource list identification
number, sResource type (category, cType, software, and hardware), driver
reference number ( spRefNum ), and Slot Resource Table ioReserved field
(spIOReserved ) for the next sResource. If there are no more sResources,
SNextSRsrc returns a nonfatal error status, which can be one of the
following:
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SNextTypeSRsrc()

OSErr SNextTypeSRsrc ( SpBlockPtr  spBlkPtr)

Return information about sResources of a specified type.

SNextTypeSRsrc behaves the same as SNextSRsrc except that it returns
information only about sResources of the specified type.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spsPointer Ptr 44Structure pointer
←spIOReserved short 236Reserved field of Slot Resource Table
←spRefNum short 238Slot Resource Table reference number
↔spCategory short 240sResource type: Category
↔spCType short 242sResource type: Type
↔spDrvrSW short 244sResource type: Driver software identifier
↔spDrvrHW short 246sResource type: Driver hardware identifier
→spTBMask char 148Type bit mask (bits 0..3 mask words 0..3)
↔spSlot char 149Slot number
↔spID char 150sResource list ID
↔spExtDev char 151External device identifier
↔spHwDev char 152Hardware device identifier
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
Given an sResource type (category, cType, software, and hardware) and
spTBMask , and starting from a given slot number, spSlot, and sResource
list identification number, spID, the trap macro SNextTypeSRsrc
returns the slot number, spSlot, sResource list identification number,
spID, and Slot Resource Table ioReserved field ( spIOReserved ) for the
next sResource of that type, as masked. If there are no more sResources of
that type, SNextTypeSRsrc returns a nonfatal error report, which can
be one of the following:
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SOffsetData()

OSErr SOffsetData ( SpBlockPtr  spBlkPtr)

Return the contents of the offset/data field.

SOffsetData returns (in spOffsetData ) the contents of the offset/data field
from the sResource list identified by spID and pointed to by spsPointer . Used
only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
← spsOffsetData long 412Offset/data field
→spID char 150Structure ID
← spByteLanes  char 153ByteLanes from format block in card ROM
Other affected parameters are:
spResult long 40FUNCTION result
spFlags char 154Internal use only
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The parameter spsPointer returns a pointer to the field's identification
number in the sResource list.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SPrimaryInit()

OSErr SPrimaryInit ( SpBlockPtr  spBlkPtr)

SPrimaryInit()

Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SPtrToSlot()

OSErr SPtrToSlot ( SpBlockPtr  spBlkPtr)

Return the slot number of a card.

SPtrToSlot returns in spSlot the slot number of the card whose declaration
ROM is pointed to by spsPointer .
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
←spSlot char 149Slot number
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The value of spsPointer must have the form Fsxx xxxx, where s is a slot
number.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SPutPRAMRec()

OSErr SPutPRAMRec ( SpBlockPtr  spBlkPtr)

Copy data from spsPointer's block into SPRAMRecord.

SPutPRAMRec copies the logical data from the block referenced by
spsPointer into the SPRAMRecord for the slot identified by spSlot.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
→spSlot char 149Slot number
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
SPutPRAMRec updates the Macintosh PRAM for that slot. The sPRAM
record is defined under SPRAMRecord . In that record, the field boardID is
an Apple-defined field and is protected during execution of SPutPRAMRec.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadByte()

OSErr SReadByte ( SpBlockPtr  spBlkPtr)

Return an ID byte.

Principle

SReadByte returns an 8-bit value identified by spID.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spsPointer Ptr 44Structure pointer
→spID char 150sResource list ID
Other parameters affected are:
spsOffsetData long 412Offset/data field
spByteLanes  char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadByte finds a data structure in slot card firmware.
It returns in spResult an 8-bit value identified by spID from the sResource
list pointed to by spsPointer . This routines' low-order byte can return
non-fatal error reports, which will be one of the following:
smBadRefId (-330) Reference ID was not found in the given sResource
list.
smBadsList (-331) The IDs in the sResource list are not in ascending
order.
smReservedErr (-332) A reserved field was not zero.
smCodeRevErr (-333) Wrong revision of the code to be executed by sExec.
smCPUErr (-334) The CPU field of the code was wrong.
smsPointerNil (-335) LPointer is nil From sOffsetData. If this error occurs;
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadDrvrName()

OSErr SReadDrvrName ( SpBlockPtr  spBlkPtr)

Read the name of the sResource for this slot and list ID.

SReadDrvrName reads the name of the sResource corresponding to the slot
number and list identification number.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spResult long 40FUNCTION result
→spSlot char 149Slot number
→spID char 150sResource list ID
Other parameters affected are:
spsPointer Ptr 44Structure pointer
spSize long 48Size of structure
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadDrvrName reads the name of the sResource
corresponding to the slot number, spSlot, and sResource list identification
number, spID, prefixes a period to the value of the cString and converts its
type to Str255. It then reads the result into a Pascal string variable
declared by the calling program and pointed to by spResult . The final driver
name is compatible with the Open routine.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadFHeader()

OSErr SReadFHeader ( SpBlockPtr  spBlkPtr)

Copy the slot's format block into an FHeaderRec.

SReadFHeader copies the format block for the slot designated by spSlot to an
FHeaderRec allocated by the calling program and pointed to by spResult .
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spResult long 40FUNCTION result
→spSlot char 149Slot number
Other parameters affected are:
spsPointer Ptr 44Structure pointer
spSize long 48Size of structure
spsOffsetData long 412Offset/data field
spByteLanes char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadInfo()

OSErr SReadInfo ( SpBlockPtr  spBlkPtr)

Read a data structure into a new block.

Special

SReadInfo read the spSlot's sInfoRecord into a new record.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spResult long 40FUNCTION result
→spSlot char 149Slot number
Other parameters affected are:
spSize  long4 8QSize of structure
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadInfo reads the sInfoRecord identified by spSlot
into a new record allocated by the calling program and pointed to by
spResult .
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadLong()

OSErr SReadLong ( SpBlockPtr  spBlkPtr)

Return a 32-bit ID value.

SReadLong returns a 32-bit value identified by spID.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spsPointer Ptr 44Structure pointer
→spID char 150sResource list ID
Other parameters affected are:
spSize long 48Size of structure
spsOffsetData long 412Offset/data field
spByteLanes char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadLong finds a data structure in slot card firmware.
It returns in spResult a 32-bit value identified by spID from the sResource
list pointed to by spsPointer . This routine can return nonfatal error
reports, which will be one of the following:
smBadRefId (-330) Reference ID was not found in the given sResource
list.
smBadsList (-331) The IDs in the sResource list are not in ascending
order.
smReservedErr (-332) A reserved field was not zero.
smCodeRevErr (-333) Wrong revision of the code to be executed by sExec.
smCPUErr (-334) The CPU field of the code was wrong.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadPBSize()

OSErr SReadPBSize ( SpBlockPtr  spBlkPtr)

Read the size of the indicated sBlock.

SReadPBSize reads the physical block size of the sBlock pointed to by
spsPointer and identified by spID. Used only by the Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
←spSize  long 48Size of structure
→spID char 150Structure ID
← spByteLanes  char 153ByteLanes from format block in card ROM
→spFlags char 154Internal use only
Other affected parameters are:
spResult long 40FUNCTION result
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
SReadPBSize also checks to see that the upper byte is 0 if the fckReserved
flag is set. The parameter spsPointer points to the resulting logical block
when SReadPBSize is done.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadPRAMRec()

OSErr SReadPRAMRec ( SpBlockPtr  spBlkPtr)

Copy the sPRAM data structure into a new record.

SReadPRAMRec copies the sPRAM record data for the slot identified by
spSlot to a new record allocated by the calling program and pointed to by
spResult .
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spResult long 40FUNCTION result
→spSlot char 149Slot number
Other parameters affected are:
spSize  long4 8QSize of structure
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
One sPRAM record for each slot resides in the Macintosh II parameter
RAM. The sPRAM record is initialized during the startup by
SInitPRAMRecs .
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadStruct()

OSErr SReadStruct ( SpBlockPtr  spBlkPtr)

Copy a data structure into a new block.

SReadStruct copies a data structure into a new block.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spResult long 40FUNCTION result
→spsPointer Ptr 44Structure pointer
→spSize long 48Size of structure
Other parameters affected are:
spByteLanes  char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadStruct copies a structure of size spSize from the
sResource list pointed to by spsPointer into a new block allocated by the
calling program and pointed to by spResult .
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SReadWord()

OSErr SReadWord ( SpBlockPtr  spBlkPtr)

Return a 16-bit ID value.

SReadWord returns a 16-bit value identified by spID.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40FUNCTION result
→spsPointer Ptr 44Structure pointer
→spID char 150sResource list ID
Other parameters affected are:
spsOffsetData long 412Offset/data field
spByteLanes  char 153ByteLanes from format block in card ROM
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
The trap macro SReadWord finds a data structure in slot card firmware.
It returns in spResult a 16-bit value identified by spID from the sResource
list pointed to by spsPointer . This routine can return non-fatal error
reports, which will be one of the following:
smBadRefId (-330) Reference ID was not found in the given sResource
list.
smBadsList (-331) The IDs in the sResource list are not in ascending
order.
smReservedErr (-332) A reserved field was not zero.
smCodeRevErr (-333) Wrong revision of the code to be executed by sExec.
smCPUErr (-334) The CPU field of the code was wrong.
smsPointerNil (-335) LPointer is nil From sOffsetData. If this error occurs;
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SRsrcInfo()

OSErr SRsrcInfo ( SpBlockPtr  spBlkPtr)

Return the driver reference number.

SRsrcInfo is most often used to return the driver reference number.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spsPointer Ptr 44Structure pointer
←spIOReserved short 236Reserved field of Slot Resource Table
←spRefNum short 238Slot Resource Table reference number
←spCategory short 240sResource type: Category
←spCType short 242sResource type: Type
←spDrvrSW short 244sResource type: Driver software identifier
←spDrvrHW short 246sResource type: Driver hardware identifier
→spSlot char 149Slot number
→spID char 150sResource list ID
→spExtDev char 141External device identifier
←spHwDev char 152Hardware device identifier
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's.
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL.
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardsRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
SRsrcInfo returns an sResource list pointer ( spsPointer ), plus the
sResource type (category, cType, software, and hardware), driver
reference number ( spRefNum ), and Slot Resource Table ioReserved field
(spIOReserved ) for the sResource specified by the slot number spSlot,
sResource list identification number spID, and external device identifier
spExtDev .
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SSearchSRT()

OSErr SSearchSRT ( SpBlockPtr  spBlkPtr)

Find the record corresponding to this sResource.

SSearchSRT searches the Slot Resource Table for the record corresponding
to the sResource in slot spSlot with list spID and external device identifier
spExtDev , and returns a pointer to it in spsPointer . Used only by the
Operating System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spsPointer Ptr 44Structure pointer
→spID char 150sResource list ID
→spExtDev char 151ID of the external device
→spSlot char 149Slot number
→spFlags char 154Internal use only
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
If fckForNext bit of spFlags has a value of 0, SSearchSRT searches for
that record; if it has a value of 1, it searches for the next record.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SUpdateSRT()

OSErr SUpdateSRT ( SpBlockPtr  spBlkPtr)

Update the Slot Resource Table.

SUpdateSRT updates the Slot Resource Table records spRefNum and
spIOReserved with information about the sResource in slot spSlot with list
spID and external device identifier spExtDev . Used only by the Operating
System.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
→spIOReserved short 236Reserved field of Slot Resource Table
→spRefNum short 238Slot Resource Table reference number
→spID char 150sResource list ID
→spExtDev char 151ID of the external device
→spSlot char 149Slot number
Other parameters affected include:
spResult long 40FUNCTION result
spsPointer Ptr 44Structure pointer
spSize long 48Size of structure
spFlags char 154Internal use only
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
smEmptySlot (-300) No card in slot.
smCRCFail (-301) CRC check failed.
smFormatErr (-302) FHeader format is not Apple's
smRevisionErr (-303) The revision of the card's declaration ROM is wrong.
smNoDir (-304) Directory offset is NIL
smNosInfoArray (-306) The SDM could not allocate memory for the sInfo
array.
smResrvErr (-307) A reserved field of the declaration ROM was used.
smUnExBusErr (-308) An unexpected bus error occurred.
smBLFieldBad (-309) A valid ByteLanes field was not found.
smDisposePErr (-312) An error occurred during execution of DisposPointer.
smNoBoardSRsrc (-313) There is no board sResource.
smGetPRErr (-314) Error during execution of sGetPRAMRec.
smNoBoardId (-315) There is no board ID.
smInitStatVErr (-316) The InitStatus_V field was negative after Primary or
Secondary Init.
smInitTblVErr (-317) Error while trying to initialize the sResource Table.
smNoJmpTbl (-318) Slot Manager jump table could not be created
smBadBoardId (-319) Board ID was wrong; reinit the PRAM record
Note
This routine is called by IOCore whenever the driver for a slot device is
opened or closed.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available

◆ SVersion()

OSErr SVersion ( SpBlockPtr  spBlkPtr)

Return the version number of the Slot Manager.

SVersion returns the version number of the Slot Manager in the
splResuklt field.
spBlkPtr is the address of a 56-byte Slot Parameter Block structure.
The relevant fields are as follows:
Out-In Name Type SizeOffsetDescription
←spResult long 40Slot Manager version number
←spsPointer Ptr 44Structure pointer
Returns
an operating system Error Code . It will be one of:
noErr(0) No error
Note
The SVersion function returns the version number of the
Slot Manager in the spResult field. The system 7.0 or later
Slot Manager returns version number 1 for a RAM-based
Slot Manager and version number 2 for a ROM-based
Slot Manager . Older versions of the Slot Manager do not recognize the
SVersion function and return the nonfatal error:
smSelOOBErr (-338) Selector out of bounds; function not implemented
The SVersion function returns a pointer to additional information, if any,
in the spsPointer field.
Copyright: THINK Reference © 1991-1992 Symantec Corporation
Non-Carbon CFM: in InterfaceLib 7.1 and later
Carbon Lib: not available
Mac OS X: not available