19 #ifndef __CARDSERVICES__
20 #define __CARDSERVICES__
26 #ifndef __PCCARDTUPLES__
47 #if PRAGMA_STRUCT_ALIGN
48 #pragma options align = mac68k
49 #elif PRAGMA_STRUCT_PACKPUSH
51 #elif PRAGMA_STRUCT_PACK
65 _PCCardDispatch = 0xAAF0
74 kCSBadAdapterErr = -9050,
75 kCSBadAttributeErr = -9051,
76 kCSBadBaseErr = -9052,
79 kCSBadOffsetErr = -9055,
80 kCSBadPageErr = -9056,
81 kCSBadSizeErr = -9057,
84 kCSBadTypeErr = -9059,
87 kCSBadWindowErr = -9062,
88 kCSBadArgLengthErr = -9063,
89 kCSBadArgsErr = -9064,
90 kCSBadHandleErr = -9065,
92 kCSBadSpeedErr = -9067,
93 kCSReadFailureErr = -9068,
94 kCSWriteFailureErr = -9069,
95 kCSGeneralFailureErr = -9070,
97 kCSUnsupportedFunctionErr =
99 kCSUnsupportedModeErr = -9073,
101 kCSWriteProtectedErr = -9075,
102 kCSConfigurationLockedErr =
105 kCSNoMoreItemsErr = -9078,
106 kCSOutOfResourceErr = -9079
113 kCSNullMessage = 0x00,
114 kCSCardInsertionMessage = 0x01,
115 kCSCardRemovalMessage = 0x02,
118 kCSCardUnlockMessage = 0x04,
119 kCSCardReadyMessage = 0x05,
120 kCSCardResetMessage = 0x06,
121 kCSInsertionRequestMessage =
123 kCSInsertionCompleteMessage =
125 kCSEjectionRequestMessage =
127 kCSEjectionFailedMessage =
129 kCSPMResumeMessage = 0x0B,
130 kCSPMSuspendMessage = 0x0C,
131 kCSResetPhysicalMessage =
133 kCSResetRequestMessage =
135 kCSResetCompleteMessage =
137 kCSBatteryDeadMessage =
139 kCSBatteryLowMessage = 0x11,
140 kCSWriteProtectMessage = 0x12,
141 kCSWriteEnabledMessage = 0x13,
142 kCSClientInfoMessage = 0x14,
143 kCSSSUpdatedMessage =
145 kCSFunctionInterruptMessage = 0x16,
146 kCSAccessErrorMessage = 0x17,
147 kCSCardUnconfiguredMessage =
150 kCSStatusChangedMessage = 0x19
161 BAD_ADAPTER = kCSBadAdapterErr,
162 BAD_ATTRIBUTE = kCSBadAttributeErr,
163 BAD_BASE = kCSBadBaseErr,
164 BAD_EDC = kCSBadEDCErr,
165 BAD_IRQ = kCSBadIRQErr,
166 BAD_OFFSET = kCSBadOffsetErr,
167 BAD_PAGE = kCSBadPageErr,
168 BAD_SIZE = kCSBadSizeErr,
169 BAD_SOCKET = kCSBadSocketErr,
170 BAD_TYPE = kCSBadTypeErr,
171 BAD_VCC = kCSBadVccErr,
172 BAD_VPP = kCSBadVppErr,
173 BAD_WINDOW = kCSBadWindowErr,
174 BAD_ARG_LENGTH = kCSBadArgLengthErr,
175 BAD_ARGS = kCSBadArgsErr,
176 BAD_HANDLE = kCSBadHandleErr,
177 BAD_CIS = kCSBadCISErr,
178 BAD_SPEED = kCSBadSpeedErr,
179 READ_FAILURE = kCSReadFailureErr,
180 WRITE_FAILURE = kCSWriteFailureErr,
181 GENERAL_FAILURE = kCSGeneralFailureErr,
182 NO_CARD = kCSNoCardErr,
183 UNSUPPORTED_FUNCTION = kCSUnsupportedFunctionErr,
184 UNSUPPORTED_MODE = kCSUnsupportedModeErr,
186 WRITE_PROTECTED = kCSWriteProtectedErr,
187 CONFIGURATION_LOCKED = kCSConfigurationLockedErr,
188 IN_USE = kCSInUseErr,
189 NO_MORE_ITEMS = kCSNoMoreItemsErr,
190 OUT_OF_RESOURCE = kCSOutOfResourceErr
197 NULL_MESSAGE = kCSNullMessage,
198 CARD_INSERTION = kCSCardInsertionMessage,
199 CARD_REMOVAL = kCSCardRemovalMessage,
200 CARD_LOCK = kCSCardLockMessage,
201 CARD_UNLOCK = kCSCardUnlockMessage,
202 CARD_READY = kCSCardReadyMessage,
203 CARD_RESET = kCSCardResetMessage,
204 INSERTION_REQUEST = kCSInsertionRequestMessage,
205 INSERTION_COMPLETE = kCSInsertionCompleteMessage,
206 EJECTION_REQUEST = kCSEjectionRequestMessage,
207 EJECTION_FAILED = kCSEjectionFailedMessage,
208 PM_RESUME = kCSPMResumeMessage,
209 PM_SUSPEND = kCSPMSuspendMessage,
210 RESET_PHYSICAL = kCSResetPhysicalMessage,
211 RESET_REQUEST = kCSResetRequestMessage,
212 RESET_COMPLETE = kCSResetCompleteMessage,
213 BATTERY_DEAD = kCSBatteryDeadMessage,
214 BATTERY_LOW = kCSBatteryLowMessage,
215 WRITE_PROTECT = kCSWriteProtectMessage,
216 WRITE_ENABLED = kCSWriteEnabledMessage,
217 CLIENT_INFO = kCSClientInfoMessage,
218 SS_UPDATED = kCSSSUpdatedMessage,
219 FUNCTION_INTERRUPT = kCSFunctionInterruptMessage,
220 ACCESS_ERROR = kCSAccessErrorMessage,
221 CARD_UNCONFIGURED = kCSCardUnconfiguredMessage,
222 STATUS_CHANGED = kCSStatusChangedMessage
240 kCSReadConfigRegister = 0x00,
241 kCSWriteConfigRegister = 0x01
323 kCSMemoryClient = 0x0001,
324 kCSIOClient = 0x0004,
325 kCSClientTypeMask = 0x0007,
326 kCSShareableCardInsertEvents = 0x0008,
327 kCSExclusiveCardInsertEvents = 0x0010,
328 kCSInfoSubfunctionMask = 0xFF00,
329 kCSClientInfoSubfunction = 0x0000,
330 kCSCardNameSubfunction = 0x8000,
331 kCSCardTypeSubfunction = 0x8100,
332 kCSHelpStringSubfunction = 0x8200,
333 kCSCardIconSubfunction = 0x8300,
334 kCSActionProcSubfunction = 0x8400
370 kCSExclusivelyUsed = 0x0001,
371 kCSEnableIREQs = 0x0002,
372 kCSVccChangeValid = 0x0004,
373 kCSVpp1ChangeValid = 0x0008,
374 kCSVpp2ChangeValid = 0x0010,
375 kCSValidClient = 0x0020,
378 kCSLockSocket = 0x0080,
379 kCSTurnOnInUse = 0x0100
386 kCSMemoryInterface = 0x01,
387 kCSMemory_And_IO_Interface = 0x02
394 kCSOptionRegisterPresent = 0x01,
395 kCSStatusRegisterPresent = 0x02,
396 kCSPinReplacementRegisterPresent = 0x04,
397 kCSCopyRegisterPresent = 0x08
404 kCSOptionValueValid = 0x01,
405 kCSStatusValueValid = 0x02,
406 kCSPinReplacementValueValid = 0x04,
407 kCSCopyValueValid = 0x08
427 kCSEventMaskThisSocketOnly = 0x0001
434 kCSWriteProtectEvent = 0x0001,
435 kCSCardLockChangeEvent = 0x0002,
436 kCSEjectRequestEvent = 0x0004,
437 kCSInsertRequestEvent = 0x0008,
438 kCSBatteryDeadEvent = 0x0010,
439 kCSBatteryLowEvent = 0x0020,
440 kCSReadyChangeEvent = 0x0040,
441 kCSCardDetectChangeEvent = 0x0080,
442 kCSPMChangeEvent = 0x0100,
443 kCSResetEvent = 0x0200,
444 kCSSSUpdateEvent = 0x0400,
445 kCSFunctionInterrupt = 0x0800,
446 kCSAllEvents = 0xFFFF
464 kCSClientsForAllSockets = 0x0000,
465 kCSClientsThisSocketOnly = 0x0001
504 kCSReturnLinkTuples = 0x0001
534 kCSWriteProtected = 0x0001,
535 kCSCardLocked = 0x0002,
536 kCSEjectRequest = 0x0004,
537 kCSInsertRequest = 0x0008,
538 kCSBatteryDead = 0x0010,
539 kCSBatteryLow = 0x0020,
541 kCSCardDetected = 0x0080
548 kCSWriteProtectChanged = 0x0001,
549 kCSCardLockChanged = 0x0002,
550 kCSEjectRequestPending = 0x0004,
551 kCSInsertRequestPending = 0x0008,
552 kCSBatteryDeadChanged = 0x0010,
553 kCSBatteryLowChanged = 0x0020,
554 kCSReadyChanged = 0x0040,
555 kCSCardDetectChanged = 0x0080
580 kCSMemoryWindow = 0x0001,
581 kCSIOWindow = 0x0002,
582 kCSAttributeWindow = 0x0004,
583 kCSWindowTypeMask = 0x0007,
584 kCSEnableWindow = 0x0008,
585 kCSAccessSpeedValid = 0x0010,
586 kCSLittleEndian = 0x0020,
587 kCS16BitDataPath = 0x0040,
588 kCSWindowPaged = 0x0080,
589 kCSWindowShared = 0x0100,
590 kCSWindowFirstShared = 0x0200,
591 kCSWindowProgrammable = 0x0400
598 kCSDeviceSpeedCodeMask = 0x07,
599 kCSSpeedExponentMask = 0x07,
600 kCSSpeedMantissaMask = 0x78,
602 kCSAccessSpeed250nsec = 0x01,
603 kCSAccessSpeed200nsec = 0x02,
604 kCSAccessSpeed150nsec = 0x03,
605 kCSAccessSpeed100nsec = 0x04,
606 kCSExtAccSpeedMant1pt0 = 0x01,
607 kCSExtAccSpeedMant1pt2 = 0x02,
608 kCSExtAccSpeedMant1pt3 = 0x03,
609 kCSExtAccSpeedMant1pt5 = 0x04,
610 kCSExtAccSpeedMant2pt0 = 0x05,
611 kCSExtAccSpeedMant2pt5 = 0x06,
612 kCSExtAccSpeedMant3pt0 = 0x07,
613 kCSExtAccSpeedMant3pt5 = 0x08,
614 kCSExtAccSpeedMant4pt0 = 0x09,
615 kCSExtAccSpeedMant4pt5 = 0x0A,
616 kCSExtAccSpeedMant5pt0 = 0x0B,
617 kCSExtAccSpeedMant5pt5 = 0x0C,
618 kCSExtAccSpeedMant6pt0 = 0x0D,
619 kCSExtAccSpeedMant7pt0 = 0x0E,
620 kCSExtAccSpeedMant8pt0 = 0x0F,
621 kCSExtAccSpeedExp1ns = 0x00,
622 kCSExtAccSpeedExp10ns = 0x01,
623 kCSExtAccSpeedExp100ns = 0x02,
624 kCSExtAccSpeedExp1us = 0x03,
625 kCSExtAccSpeedExp10us = 0x04,
626 kCSExtAccSpeedExp100us = 0x05,
627 kCSExtAccSpeedExp1ms = 0x06,
628 kCSExtAccSpeedExp10ms = 0x07
648 typedef CALLBACK_API(UInt16,
651 #if CALL_NOT_IN_CARBON
662 #if !OPAQUE_UPP_TYPES
665 uppPCCardCSClientProcInfo = 0x000000E0
668 inline PCCardCSClientUPP
672 uppPCCardCSClientProcInfo,
673 GetCurrentArchitecture());
676 #define NewPCCardCSClientUPP(userRoutine) \
677 (PCCardCSClientUPP) \
678 NewRoutineDescriptor((ProcPtr)(userRoutine), uppPCCardCSClientProcInfo, \
679 GetCurrentArchitecture())
693 #if !OPAQUE_UPP_TYPES
700 #define DisposePCCardCSClientUPP(userUPP) DisposeRoutineDescriptor(userUPP)
714 #if !OPAQUE_UPP_TYPES
717 PCCardCSClientUPP userUPP)
719 return (UInt16)CALL_ONE_PARAMETER_UPP(userUPP, uppPCCardCSClientProcInfo,
723 #define InvokePCCardCSClientUPP(ccPBPtr, userUPP) \
725 CALL_ONE_PARAMETER_UPP((userUPP), uppPCCardCSClientProcInfo, (ccPBPtr))
731 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
733 #define NewPCCardCSClientProc(userRoutine) NewPCCardCSClientUPP(userRoutine)
734 #define CallPCCardCSClientProc(userRoutine, ccPBPtr) \
735 InvokePCCardCSClientUPP(ccPBPtr, userRoutine)
818 vsAppleReserved = 0x0000,
819 vsEjectCard = 0x0001,
820 vsGetCardInfo = 0x0002,
821 vsEnableSocketEvents = 0x0003,
822 vsGetCardLocationIcon = 0x0004,
823 vsGetCardLocationText = 0x0005,
824 vsGetAdapterInfo = 0x0006
837 UInt16 numVoltEntries;
844 kCSLevelModeInterrupts = 0x00000001,
845 kCSPulseModeInterrupts = 0x00000002,
846 kCSProgrammableWindowAddr = 0x00000004,
847 kCSProgrammableWindowSize = 0x00000008,
848 kCSSocketSleepPower = 0x00000010,
849 kCSSoftwareEject = 0x00000020,
850 kCSLockableSocket = 0x00000040,
851 kCSInUseIndicator = 0x00000080
865 UInt16 vendorNameLen;
874 kCSUnknownCardType = 0,
875 kCSMultiFunctionCardType = 1,
876 kCSMemoryCardType = 2,
877 kCSSerialPortCardType = 3,
878 kCSSerialOnlyType = 0,
879 kCSDataModemType = 1,
881 kCSFaxAndDataModemMask = (kCSDataModemType | kCSFaxModemType),
882 kCSVoiceEncodingType = 4,
883 kCSParallelPortCardType = 4,
884 kCSFixedDiskCardType = 5,
885 kCSUnknownFixedDiskType = 0,
887 kCSRotatingDevice = (0 << 7),
888 kCSSiliconDevice = (1 << 7),
889 kCSVideoAdaptorCardType = 6,
890 kCSNetworkAdaptorCardType = 7,
895 #ifndef __PCCARDENABLERPLUGIN__
901 #if CALL_NOT_IN_CARBON
1208 #if PRAGMA_STRUCT_ALIGN
1209 #pragma options align = reset
1210 #elif PRAGMA_STRUCT_PACKPUSH
1212 #elif PRAGMA_STRUCT_PACK
1216 #ifdef PRAGMA_IMPORT_OFF
1219 #pragma import reset
OSErr CSGetClientInfo(GetClientInfoPB *pb)
OSErr CSReleaseSocketMask(ReqRelSocketMaskPB *pb)
OSErr CSRequestIO(ReqRelIOPB *pb)
OSErr CSGetConfigurationInfo(GetModRequestConfigInfoPB *pb)
OSErr CSGetClientEventMask(GetSetClientEventMaskPB *pb)
OSErr CSDeregisterClient(RegisterClientPB *pb)
OSErr CSGetStatus(GetStatusPB *pb)
OSErr CSGetTupleData(GetTuplePB *pb)
OSErr CSGetCardServicesInfo(GetCardServicesInfoPB *pb)
OSErr CSAccessConfigurationRegister(AccessConfigurationRegisterPB *pb)
OSErr CSGetNextClient(GetClientPB *pb)
void DisposePCCardCSClientUPP(PCCardCSClientUPP userUPP)
UInt16 InvokePCCardCSClientUPP(ClientCallbackPBPtr ccPBPtr, PCCardCSClientUPP userUPP)
OSErr CSReleaseIO(ReqRelIOPB *pb)
OSErr CSSetClientEventMask(GetSetClientEventMaskPB *pb)
OSErr CSReleaseWindow(ReqModRelWindowPB *pb)
OSErr CSRegisterClient(RegisterClientPB *pb)
PCCardCSClientUPP NewPCCardCSClientUPP(PCCardCSClientProcPtr userRoutine)
OSErr CSGetFirstClient(GetClientPB *pb)
OSErr CSGetFirstTuple(GetTuplePB *pb)
OSErr CSReleaseConfiguration(ReleaseConfigurationPB *pb)
OSErr CSResetCard(ResetCardPB *pb)
OSErr CSRequestWindow(ReqModRelWindowPB *pb)
OSErr CSValidateCIS(ValidateCISPB *pb)
OSErr CSRequestConfiguration(GetModRequestConfigInfoPB *pb)
OSErr CSModifyWindow(ReqModRelWindowPB *pb)
OSErr CSGetNextTuple(GetTuplePB *pb)
OSErr CSRequestSocketMask(ReqRelSocketMaskPB *pb)
OSErr CSModifyConfiguration(GetModRequestConfigInfoPB *pb)
OSErr CSVendorSpecific(VendorSpecificPB *pb)
Basic Macintosh data types.
Mixed Mode Manager Interfaces.
void DisposeRoutineDescriptor(UniversalProcPtr theUPP)
#define STACK_UPP_TYPE(name)
Definition: MixedMode.h:734
UniversalProcPtr NewRoutineDescriptor(ProcPtr theProc, ProcInfoType theProcInfo, ISAType theISA)
List of PCMCIA tuple types and definitions of tuple contents.
Definition: CardServices.h:228
Definition: CardServices.h:294
Definition: CardServices.h:283
Definition: CardServices.h:637
Definition: CardServices.h:263
Definition: CardServices.h:303
Definition: CardServices.h:833
Definition: CardServices.h:860
Definition: CardServices.h:247
Definition: CardServices.h:310
Definition: CardServices.h:455
Definition: CardServices.h:344
Definition: CardServices.h:416
Definition: CardServices.h:525
Definition: CardServices.h:475
Definition: CardServices.h:739
Definition: CardServices.h:760
Definition: CardServices.h:565
Definition: CardServices.h:788
Definition: CardServices.h:513
Definition: CardServices.h:768
Definition: CardServices.h:777
Definition: CardServices.h:806
Definition: PCCardTuples.h:378