Slots.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:38k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. /*
  2.      File:       Slots.h
  3.  
  4.      Contains:   Slot Manager Interfaces.
  5.  
  6.      Version:    Technology: System 7.5
  7.                  Release:    QuickTime 6.0.2
  8.  
  9.      Copyright:  (c) 1986-2001 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:      For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __SLOTS__
  18. #define __SLOTS__
  19. #ifndef __MACTYPES__
  20. #include "MacTypes.h"
  21. #endif
  22. #ifndef __EVENTS__
  23. #include "Events.h"
  24. #endif
  25. #ifndef __FILES__
  26. #include "Files.h"
  27. #endif
  28. #if PRAGMA_ONCE
  29. #pragma once
  30. #endif
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif
  34. #if PRAGMA_IMPORT
  35. #pragma import on
  36. #endif
  37. #if PRAGMA_STRUCT_ALIGN
  38.     #pragma options align=mac68k
  39. #elif PRAGMA_STRUCT_PACKPUSH
  40.     #pragma pack(push, 2)
  41. #elif PRAGMA_STRUCT_PACK
  42.     #pragma pack(2)
  43. #endif
  44. enum {
  45.     fCardIsChanged              = 1,                            /*Card is Changed field in StatusFlags field of sInfoArray*/
  46.     fCkForSame                  = 0,                            /*For SearchSRT. Flag to check for SAME sResource in the table. */
  47.     fCkForNext                  = 1,                            /*For SearchSRT. Flag to check for NEXT sResource in the table. */
  48.     fWarmStart                  = 2                             /*If this bit is set then warm start else cold start.*/
  49. };
  50. enum {
  51.     stateNil                    = 0,                            /*State*/
  52.     stateSDMInit                = 1,                            /*:Slot declaration manager Init*/
  53.     statePRAMInit               = 2,                            /*:sPRAM record init*/
  54.     statePInit                  = 3,                            /*:Primary init*/
  55.     stateSInit                  = 4                             /*:Secondary init*/
  56. };
  57. enum {
  58.                                                                 /* flags for spParamData */
  59.     fall                        = 0,                            /* bit 0: set=search enabled/disabled sRsrc's */
  60.     foneslot                    = 1,                            /*    1: set=search sRsrc's in given slot only */
  61.     fnext                       = 2                             /*    2: set=search for next sRsrc */
  62. };
  63. enum {
  64.                                                                 /* Misc masks */
  65.     catMask                     = 0x08,                         /* sets spCategory field of spTBMask (bit 3) */
  66.     cTypeMask                   = 0x04,                         /* sets spCType    field of spTBMask (bit 2) */
  67.     drvrSWMask                  = 0x02,                         /* sets spDrvrSW   field of spTBMask (bit 1) */
  68.     drvrHWMask                  = 0x01                          /* sets spDrvrHW    field of spTBMask (bit 0) */
  69. };
  70. typedef CALLBACK_API( short , SlotIntServiceProcPtr )(long sqParameter);
  71. /*
  72.     WARNING: SlotIntServiceProcPtr uses register based parameters under classic 68k
  73.              and cannot be written in a high-level language without 
  74.              the help of mixed mode or assembly glue.
  75. */
  76. typedef REGISTER_UPP_TYPE(SlotIntServiceProcPtr)                SlotIntServiceUPP;
  77. #if OPAQUE_UPP_TYPES
  78. #if CALL_NOT_IN_CARBON
  79.     EXTERN_API(SlotIntServiceUPP)
  80.     NewSlotIntServiceUPP           (SlotIntServiceProcPtr   userRoutine);
  81.     EXTERN_API(void)
  82.     DisposeSlotIntServiceUPP       (SlotIntServiceUPP       userUPP);
  83.     EXTERN_API(short)
  84.     InvokeSlotIntServiceUPP        (long                    sqParameter,
  85.                                     SlotIntServiceUPP       userUPP);
  86. #endif  /* CALL_NOT_IN_CARBON */
  87. #else
  88.     enum { uppSlotIntServiceProcInfo = 0x0000B822 };                /* register 2_bytes:D0 Func(4_bytes:A1) */
  89.     #define NewSlotIntServiceUPP(userRoutine)                       (SlotIntServiceUPP)NewRoutineDescriptor((ProcPtr)(userRoutine), uppSlotIntServiceProcInfo, GetCurrentArchitecture())
  90.     #define DisposeSlotIntServiceUPP(userUPP)                       DisposeRoutineDescriptor(userUPP)
  91.     #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  92.     #pragma parameter __D0 InvokeSlotIntServiceUPP(__A1, __A0)
  93.     short InvokeSlotIntServiceUPP(long sqParameter, SlotIntServiceUPP userUPP) = 0x4E90;
  94.     #else
  95.         #define InvokeSlotIntServiceUPP(sqParameter, userUPP)           (short)CALL_ONE_PARAMETER_UPP((userUPP), uppSlotIntServiceProcInfo, (sqParameter))
  96.     #endif
  97. #endif
  98. /* support for pre-Carbon UPP routines: NewXXXProc and CallXXXProc */
  99. #define NewSlotIntServiceProc(userRoutine)                      NewSlotIntServiceUPP(userRoutine)
  100. #define CallSlotIntServiceProc(userRoutine, sqParameter)        InvokeSlotIntServiceUPP(sqParameter, userRoutine)
  101. struct SlotIntQElement {
  102.     Ptr                             sqLink;                     /*ptr to next element*/
  103.     short                           sqType;                     /*queue type ID for validity*/
  104.     short                           sqPrio;                     /*priority*/
  105.     SlotIntServiceUPP               sqAddr;                     /*interrupt service routine*/
  106.     long                            sqParm;                     /*optional A1 parameter*/
  107. };
  108. typedef struct SlotIntQElement          SlotIntQElement;
  109. typedef SlotIntQElement *               SQElemPtr;
  110. struct SpBlock {
  111.     long                            spResult;                   /*FUNCTION Result*/
  112.     Ptr                             spsPointer;                 /*structure pointer*/
  113.     long                            spSize;                     /*size of structure*/
  114.     long                            spOffsetData;               /*offset/data field used by sOffsetData*/
  115.     Ptr                             spIOFileName;               /*ptr to IOFile name for sDisDrvrName*/
  116.     Ptr                             spsExecPBlk;                /*pointer to sExec parameter block.*/
  117.     long                            spParamData;                /*misc parameter data (formerly spStackPtr).*/
  118.     long                            spMisc;                     /*misc field for SDM.*/
  119.     long                            spReserved;                 /*reserved for future expansion*/
  120.     short                           spIOReserved;               /*Reserved field of Slot Resource Table*/
  121.     short                           spRefNum;                   /*RefNum*/
  122.     short                           spCategory;                 /*sType: Category*/
  123.     short                           spCType;                    /*Type*/
  124.     short                           spDrvrSW;                   /*DrvrSW*/
  125.     short                           spDrvrHW;                   /*DrvrHW*/
  126.     SInt8                           spTBMask;                   /*type bit mask bits 0..3 mask words 0..3*/
  127.     SInt8                           spSlot;                     /*slot number*/
  128.     SInt8                           spID;                       /*structure ID*/
  129.     SInt8                           spExtDev;                   /*ID of the external device*/
  130.     SInt8                           spHwDev;                    /*Id of the hardware device.*/
  131.     SInt8                           spByteLanes;                /*bytelanes from card ROM format block*/
  132.     SInt8                           spFlags;                    /*standard flags*/
  133.     SInt8                           spKey;                      /*Internal use only*/
  134. };
  135. typedef struct SpBlock                  SpBlock;
  136. typedef SpBlock *                       SpBlockPtr;
  137. struct SInfoRecord {
  138.     Ptr                             siDirPtr;                   /*Pointer to directory*/
  139.     short                           siInitStatusA;              /*initialization E*/
  140.     short                           siInitStatusV;              /*status returned by vendor init code*/
  141.     SInt8                           siState;                    /*initialization state*/
  142.     SInt8                           siCPUByteLanes;             /*0=[d0..d7] 1=[d8..d15]*/
  143.     SInt8                           siTopOfROM;                 /*Top of ROM= $FssFFFFx: x is TopOfROM*/
  144.     SInt8                           siStatusFlags;              /*bit 0 - card is changed*/
  145.     short                           siTOConst;                  /*Time Out C for BusErr*/
  146.     SInt8                           siReserved[2];              /*reserved*/
  147.     Ptr                             siROMAddr;                  /* addr of top of ROM */
  148.     SInt8                           siSlot;                     /* slot number */
  149.     SInt8                           siPadding[3];               /* reserved */
  150. };
  151. typedef struct SInfoRecord              SInfoRecord;
  152. typedef SInfoRecord *                   SInfoRecPtr;
  153. struct SDMRecord {
  154.     ProcPtr                         sdBEVSave;                  /*Save old BusErr vector*/
  155.     ProcPtr                         sdBusErrProc;               /*Go here to determine if it is a BusErr*/
  156.     ProcPtr                         sdErrorEntry;               /*Go here if BusErrProc finds real BusErr*/
  157.     long                            sdReserved;                 /*Reserved*/
  158. };
  159. typedef struct SDMRecord                SDMRecord;
  160. struct FHeaderRec {
  161.     long                            fhDirOffset;                /*offset to directory*/
  162.     long                            fhLength;                   /*length of ROM*/
  163.     long                            fhCRC;                      /*CRC*/
  164.     SInt8                           fhROMRev;                   /*revision of ROM*/
  165.     SInt8                           fhFormat;                   /*format - 2*/
  166.     long                            fhTstPat;                   /*test pattern*/
  167.     SInt8                           fhReserved;                 /*reserved*/
  168.     SInt8                           fhByteLanes;                /*ByteLanes*/
  169. };
  170. typedef struct FHeaderRec               FHeaderRec;
  171. typedef FHeaderRec *                    FHeaderRecPtr;
  172. /*
  173.    
  174.     Extended Format header block  -  extended declaration ROM format header for super sRsrc directories.    <H2><SM0>
  175.    
  176. */
  177. struct XFHeaderRec {
  178.     long                            fhXSuperInit;               /*Offset to SuperInit SExecBlock  <fhFormat,offset>*/
  179.     long                            fhXSDirOffset;              /*Offset to SuperDirectory         <$FE,offset>*/
  180.     long                            fhXEOL;                     /*Psuedo end-of-list          <$FF,nil>*/
  181.     long                            fhXSTstPat;                 /*TestPattern*/
  182.     long                            fhXDirOffset;               /*Offset to (minimal) directory*/
  183.     long                            fhXLength;                  /*Length of ROM*/
  184.     long                            fhXCRC;                     /*CRC*/
  185.     SInt8                           fhXROMRev;                  /*Revision of ROM*/
  186.     SInt8                           fhXFormat;                  /*Format-2*/
  187.     long                            fhXTstPat;                  /*TestPattern*/
  188.     SInt8                           fhXReserved;                /*Reserved*/
  189.     SInt8                           fhXByteLanes;               /*ByteLanes*/
  190. };
  191. typedef struct XFHeaderRec              XFHeaderRec;
  192. typedef XFHeaderRec *                   XFHeaderRecPtr;
  193. struct SEBlock {
  194.     UInt8                           seSlot;                     /*Slot number.*/
  195.     UInt8                           sesRsrcId;                  /*sResource Id.*/
  196.     short                           seStatus;                   /*Status of code executed by sExec.*/
  197.     UInt8                           seFlags;                    /*Flags*/
  198.     UInt8                           seFiller0;                  /*Filler, must be SignedByte to align on odd boundry*/
  199.     UInt8                           seFiller1;                  /*Filler*/
  200.     UInt8                           seFiller2;                  /*Filler*/
  201.     long                            seResult;                   /*Result of sLoad.*/
  202.     long                            seIOFileName;               /*Pointer to IOFile name.*/
  203.     UInt8                           seDevice;                   /*Which device to read from.*/
  204.     UInt8                           sePartition;                /*The partition.*/
  205.     UInt8                           seOSType;                   /*Type of OS.*/
  206.     UInt8                           seReserved;                 /*Reserved field.*/
  207.     UInt8                           seRefNum;                   /*RefNum of the driver.*/
  208.     UInt8                           seNumDevices;               /* Number of devices to load.*/
  209.     UInt8                           seBootState;                /*State of StartBoot code.*/
  210.     SInt8                           filler;
  211. };
  212. typedef struct SEBlock                  SEBlock;
  213. /*  Principle  */
  214. #if CALL_NOT_IN_CARBON
  215.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  216.                                                                                             #pragma parameter __D0 SReadByte(__A0)
  217.                                                                                             #endif
  218. EXTERN_API( OSErr )
  219. SReadByte                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7000, 0xA06E);
  220.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  221.                                                                                             #pragma parameter __D0 SReadWord(__A0)
  222.                                                                                             #endif
  223. EXTERN_API( OSErr )
  224. SReadWord                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7001, 0xA06E);
  225.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  226.                                                                                             #pragma parameter __D0 SReadLong(__A0)
  227.                                                                                             #endif
  228. EXTERN_API( OSErr )
  229. SReadLong                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7002, 0xA06E);
  230.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  231.                                                                                             #pragma parameter __D0 SGetCString(__A0)
  232.                                                                                             #endif
  233. EXTERN_API( OSErr )
  234. SGetCString                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7003, 0xA06E);
  235.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  236.                                                                                             #pragma parameter __D0 SGetBlock(__A0)
  237.                                                                                             #endif
  238. EXTERN_API( OSErr )
  239. SGetBlock                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7005, 0xA06E);
  240.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  241.                                                                                             #pragma parameter __D0 SFindStruct(__A0)
  242.                                                                                             #endif
  243. EXTERN_API( OSErr )
  244. SFindStruct                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7006, 0xA06E);
  245.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  246.                                                                                             #pragma parameter __D0 SReadStruct(__A0)
  247.                                                                                             #endif
  248. EXTERN_API( OSErr )
  249. SReadStruct                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7007, 0xA06E);
  250. /*  Special  */
  251.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  252.                                                                                             #pragma parameter __D0 SReadInfo(__A0)
  253.                                                                                             #endif
  254. EXTERN_API( OSErr )
  255. SReadInfo                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7010, 0xA06E);
  256.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  257.                                                                                             #pragma parameter __D0 SReadPRAMRec(__A0)
  258.                                                                                             #endif
  259. EXTERN_API( OSErr )
  260. SReadPRAMRec                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7011, 0xA06E);
  261.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  262.                                                                                             #pragma parameter __D0 SPutPRAMRec(__A0)
  263.                                                                                             #endif
  264. EXTERN_API( OSErr )
  265. SPutPRAMRec                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7012, 0xA06E);
  266.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  267.                                                                                             #pragma parameter __D0 SReadFHeader(__A0)
  268.                                                                                             #endif
  269. EXTERN_API( OSErr )
  270. SReadFHeader                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7013, 0xA06E);
  271.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  272.                                                                                             #pragma parameter __D0 SNextSRsrc(__A0)
  273.                                                                                             #endif
  274. EXTERN_API( OSErr )
  275. SNextSRsrc                      (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7014, 0xA06E);
  276.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  277.                                                                                             #pragma parameter __D0 SNextTypeSRsrc(__A0)
  278.                                                                                             #endif
  279. EXTERN_API( OSErr )
  280. SNextTypeSRsrc                  (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7015, 0xA06E);
  281.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  282.                                                                                             #pragma parameter __D0 SRsrcInfo(__A0)
  283.                                                                                             #endif
  284. EXTERN_API( OSErr )
  285. SRsrcInfo                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7016, 0xA06E);
  286.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  287.                                                                                             #pragma parameter __D0 SDisposePtr(__A0)
  288.                                                                                             #endif
  289. EXTERN_API( OSErr )
  290. SDisposePtr                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7017, 0xA06E);
  291.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  292.                                                                                             #pragma parameter __D0 SCkCardStat(__A0)
  293.                                                                                             #endif
  294. EXTERN_API( OSErr )
  295. SCkCardStat                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7018, 0xA06E);
  296.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  297.                                                                                             #pragma parameter __D0 SReadDrvrName(__A0)
  298.                                                                                             #endif
  299. EXTERN_API( OSErr )
  300. SReadDrvrName                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7019, 0xA06E);
  301.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  302.                                                                                             #pragma parameter __D0 SFindSRTRec(__A0)
  303.                                                                                             #endif
  304. EXTERN_API( OSErr )
  305. SFindSRTRec                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x701A, 0xA06E);
  306.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  307.                                                                                             #pragma parameter __D0 SFindDevBase(__A0)
  308.                                                                                             #endif
  309. EXTERN_API( OSErr )
  310. SFindDevBase                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x701B, 0xA06E);
  311.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  312.                                                                                             #pragma parameter __D0 SFindBigDevBase(__A0)
  313.                                                                                             #endif
  314. EXTERN_API( OSErr )
  315. SFindBigDevBase                 (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x701C, 0xA06E);
  316. /*  Advanced  */
  317.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  318.                                                                                             #pragma parameter __D0 InitSDeclMgr(__A0)
  319.                                                                                             #endif
  320. EXTERN_API( OSErr )
  321. InitSDeclMgr                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7020, 0xA06E);
  322.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  323.                                                                                             #pragma parameter __D0 SPrimaryInit(__A0)
  324.                                                                                             #endif
  325. EXTERN_API( OSErr )
  326. SPrimaryInit                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7021, 0xA06E);
  327.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  328.                                                                                             #pragma parameter __D0 SCardChanged(__A0)
  329.                                                                                             #endif
  330. EXTERN_API( OSErr )
  331. SCardChanged                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7022, 0xA06E);
  332.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  333.                                                                                             #pragma parameter __D0 SExec(__A0)
  334.                                                                                             #endif
  335. EXTERN_API( OSErr )
  336. SExec                           (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7023, 0xA06E);
  337.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  338.                                                                                             #pragma parameter __D0 SOffsetData(__A0)
  339.                                                                                             #endif
  340. EXTERN_API( OSErr )
  341. SOffsetData                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7024, 0xA06E);
  342.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  343.                                                                                             #pragma parameter __D0 SInitPRAMRecs(__A0)
  344.                                                                                             #endif
  345. EXTERN_API( OSErr )
  346. SInitPRAMRecs                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7025, 0xA06E);
  347.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  348.                                                                                             #pragma parameter __D0 SReadPBSize(__A0)
  349.                                                                                             #endif
  350. EXTERN_API( OSErr )
  351. SReadPBSize                     (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7026, 0xA06E);
  352.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  353.                                                                                             #pragma parameter __D0 SCalcStep(__A0)
  354.                                                                                             #endif
  355. EXTERN_API( OSErr )
  356. SCalcStep                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7028, 0xA06E);
  357.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  358.                                                                                             #pragma parameter __D0 SInitSRsrcTable(__A0)
  359.                                                                                             #endif
  360. EXTERN_API( OSErr )
  361. SInitSRsrcTable                 (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7029, 0xA06E);
  362.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  363.                                                                                             #pragma parameter __D0 SSearchSRT(__A0)
  364.                                                                                             #endif
  365. EXTERN_API( OSErr )
  366. SSearchSRT                      (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702A, 0xA06E);
  367.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  368.                                                                                             #pragma parameter __D0 SUpdateSRT(__A0)
  369.                                                                                             #endif
  370. EXTERN_API( OSErr )
  371. SUpdateSRT                      (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702B, 0xA06E);
  372.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  373.                                                                                             #pragma parameter __D0 SCalcSPointer(__A0)
  374.                                                                                             #endif
  375. EXTERN_API( OSErr )
  376. SCalcSPointer                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702C, 0xA06E);
  377.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  378.                                                                                             #pragma parameter __D0 SGetDriver(__A0)
  379.                                                                                             #endif
  380. EXTERN_API( OSErr )
  381. SGetDriver                      (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702D, 0xA06E);
  382.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  383.                                                                                             #pragma parameter __D0 SPtrToSlot(__A0)
  384.                                                                                             #endif
  385. EXTERN_API( OSErr )
  386. SPtrToSlot                      (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702E, 0xA06E);
  387.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  388.                                                                                             #pragma parameter __D0 SFindSInfoRecPtr(__A0)
  389.                                                                                             #endif
  390. EXTERN_API( OSErr )
  391. SFindSInfoRecPtr                (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x702F, 0xA06E);
  392.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  393.                                                                                             #pragma parameter __D0 SFindSRsrcPtr(__A0)
  394.                                                                                             #endif
  395. EXTERN_API( OSErr )
  396. SFindSRsrcPtr                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7030, 0xA06E);
  397.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  398.                                                                                             #pragma parameter __D0 SDeleteSRTRec(__A0)
  399.                                                                                             #endif
  400. EXTERN_API( OSErr )
  401. SDeleteSRTRec                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7031, 0xA06E);
  402. #endif  /* CALL_NOT_IN_CARBON */
  403. #if CALL_NOT_IN_CARBON
  404. EXTERN_API( OSErr )
  405. OpenSlot                        (ParmBlkPtr             paramBlock,
  406.                                  Boolean                async);
  407.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  408.                                                                                             #pragma parameter __D0 OpenSlotSync(__A0)
  409.                                                                                             #endif
  410. EXTERN_API( OSErr )
  411. OpenSlotSync                    (ParmBlkPtr             paramBlock)                         ONEWORDINLINE(0xA200);
  412.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  413.                                                                                             #pragma parameter __D0 OpenSlotAsync(__A0)
  414.                                                                                             #endif
  415. EXTERN_API( OSErr )
  416. OpenSlotAsync                   (ParmBlkPtr             paramBlock)                         ONEWORDINLINE(0xA600);
  417. /*  Device Manager Slot Support  */
  418.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  419.                                                                                             #pragma parameter __D0 SIntInstall(__A0, __D0)
  420.                                                                                             #endif
  421. EXTERN_API( OSErr )
  422. SIntInstall                     (SQElemPtr              sIntQElemPtr,
  423.                                  short                  theSlot)                            ONEWORDINLINE(0xA075);
  424.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  425.                                                                                             #pragma parameter __D0 SIntRemove(__A0, __D0)
  426.                                                                                             #endif
  427. EXTERN_API( OSErr )
  428. SIntRemove                      (SQElemPtr              sIntQElemPtr,
  429.                                  short                  theSlot)                            ONEWORDINLINE(0xA076);
  430.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  431.                                                                                             #pragma parameter __D0 SVersion(__A0)
  432.                                                                                             #endif
  433. EXTERN_API( OSErr )
  434. SVersion                        (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7008, 0xA06E);
  435.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  436.                                                                                             #pragma parameter __D0 SetSRsrcState(__A0)
  437.                                                                                             #endif
  438. EXTERN_API( OSErr )
  439. SetSRsrcState                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x7009, 0xA06E);
  440.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  441.                                                                                             #pragma parameter __D0 InsertSRTRec(__A0)
  442.                                                                                             #endif
  443. EXTERN_API( OSErr )
  444. InsertSRTRec                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x700A, 0xA06E);
  445.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  446.                                                                                             #pragma parameter __D0 SGetSRsrc(__A0)
  447.                                                                                             #endif
  448. EXTERN_API( OSErr )
  449. SGetSRsrc                       (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x700B, 0xA06E);
  450.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  451.                                                                                             #pragma parameter __D0 SGetTypeSRsrc(__A0)
  452.                                                                                             #endif
  453. EXTERN_API( OSErr )
  454. SGetTypeSRsrc                   (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x700C, 0xA06E);
  455.                                                                                             #if TARGET_OS_MAC && TARGET_CPU_68K && !TARGET_RT_MAC_CFM
  456.                                                                                             #pragma parameter __D0 SGetSRsrcPtr(__A0)
  457.                                                                                             #endif
  458. EXTERN_API( OSErr )
  459. SGetSRsrcPtr                    (SpBlockPtr             spBlkPtr)                           TWOWORDINLINE(0x701D, 0xA06E);
  460. #endif  /* CALL_NOT_IN_CARBON */
  461. #if PRAGMA_STRUCT_ALIGN
  462.     #pragma options align=reset
  463. #elif PRAGMA_STRUCT_PACKPUSH
  464.     #pragma pack(pop)
  465. #elif PRAGMA_STRUCT_PACK
  466.     #pragma pack()
  467. #endif
  468. #ifdef PRAGMA_IMPORT_OFF
  469. #pragma import off
  470. #elif PRAGMA_IMPORT
  471. #pragma import reset
  472. #endif
  473. #ifdef __cplusplus
  474. }
  475. #endif
  476. #endif /* __SLOTS__ */