Mac OS 9
ATA.h
Go to the documentation of this file.
1 
19 #ifndef __ATA__
20 #define __ATA__
21 
22 #ifndef __NAMEREGISTRY__
23 #include <NameRegistry.h>
24 #endif
25 
26 #ifndef __CODEFRAGMENTS__
27 #include <CodeFragments.h>
28 #endif
29 
30 #ifndef __MACTYPES__
31 #include <MacTypes.h>
32 #endif
33 
34 #ifndef __MIXEDMODE__
35 #include <MixedMode.h>
36 #endif
37 
38 #if PRAGMA_ONCE
39 #pragma once
40 #endif
41 
42 #ifdef __cplusplus
43 extern "C"
44 {
45 #endif
46 
47 #if PRAGMA_IMPORT
48 #pragma import on
49 #endif
50 
51 #if PRAGMA_STRUCT_ALIGN
52 #pragma options align = mac68k
53 #elif PRAGMA_STRUCT_PACKPUSH
54 #pragma pack(push, 2)
55 #elif PRAGMA_STRUCT_PACK
56 #pragma pack(2)
57 #endif
58 
60  enum
61  {
62  kATATrap =
63  0xAAF1,
64  kATAPBVers1 = 0x01,
65  kATAPBVers2 = 0x02,
66  kATAPBVers3 = 0x03,
68  };
69 
71  enum
72  {
73  kFSMTrap = 0xAC,
74  mDQEChanged = 1
75  };
76 
78  enum
79  {
80  bATABadBlock = 7,
88  mATABadBlock = 1 << bATABadBlock,
98  };
99 
101  enum
102  {
103  bATAPIuseDMA = 0,
104  mATAPIuseDMA = 1 << bATAPIuseDMA
105  };
106 
108  enum
109  {
110  mATAHeadNumber = 0x0F,
111  mATASectorSize = 0xA0,
113  mATALBASelect = 0x40
114  };
115 
117  enum
118  {
119  bATABusy = 7,
125  bATAIndex = 1,
126  bATAError = 0,
127  mATABusy = 1 << bATABusy,
134  mATAError = 1 << bATAError
135  };
136 
138  enum
139  {
140  bATADCROne = 3,
143  mATADCROne = 1 << bATADCROne,
146  1 << bATADCRnIntEnable
147  };
148 
150  enum
151  {
152  kATAcmdWORetry = 0x01,
153  kATAcmdNOP = 0x0000,
154  kATAcmdRecal = 0x0010,
155  kATAcmdRead = 0x0020,
156  kATAcmdReadLong = 0x0022,
157  kATAcmdWrite = 0x0030,
158  kATAcmdWriteLong = 0x0032,
160  kATAcmdReadVerify = 0x0040,
162  kATAcmdSeek = 0x0070,
163  kATAcmdDiagnostic = 0x0090,
164  kATAcmdInitDrive = 0x0091,
168  kATAcmdReadDMA = 0x00C8,
169  kATAcmdWriteDMA = 0x00CA,
171  kATAcmdDoorLock = 0x00DE,
172  kATAcmdDoorUnlock = 0x00DF,
174  kATAcmdIdleImmed = 0x00E1,
175  kATAcmdStandby = 0x00E2,
176  kATAcmdIdle = 0x00E3,
177  kATAcmdReadBuffer = 0x00E4,
179  kATAcmdSleep = 0x00E6,
181  kATAcmdWriteSame = 0x00E9,
183  kATAcmdMediaEject = 0x00ED,
184  kATAcmdSetFeatures = 0x00EF
185  };
186 
188  enum
189  {
190  kATAEnableWriteCache = 0x02,
192  kATASetPIOMode = 0x08,
193  kATAEnableECC = 0x88,
195  kATAEnableReadAhead = 0xAA
196  };
197 
203  enum
204  {
205  kATABusIDMask = 0x000000FF,
206  kATADeviceIDMask = 0x0000FF00,
207  kATADeviceIDClippingMask = 0x0000FFFF,
208  kMinBusID = 0x00000000,
209  kMaxBusID = 0x000000FE
210  };
211 
212  enum
213  {
214  kATAStartIterateDeviceID = 0xFFFF,
215  kATAEndIterateDeviceID = 0xFF
216  };
217 
220  struct ataTaskFile
221  {
222  UInt8 ataTFFeatures;
223  UInt8 ataTFCount;
224  UInt8 ataTFSector;
226  UInt16 ataTFCylinder;
227  UInt8 ataTFSDH;
228  UInt8 ataTFCommand;
229  };
230  typedef struct ataTaskFile ataTaskFile;
232  enum
233  {
234  kATAMgrNOP = 0x00,
235  kATAMgrExecIO = 0x01,
238  kATAMgrAbort = 0x10,
258  0x98,
259  kATAMgrNextAvailable = 0x99
260  };
261 
265  enum
266  {
267  kATANotifyAllDriver = 0,
269  kATAROMDriver = 2
270  };
271 
273  enum
274  {
275  bATAFlagUseConfigSpeed = 15,
288  mATAFlagUseConfigSpeed = 1 << bATAFlagUseConfigSpeed,
289  mATAFlagByteSwap =
290  1
291  << bATAFlagByteSwap,
296  mATAFlagQLock =
301  mATAFlagProtocolATAPI =
302  1 << bATAFlagProtocolATAPI,
306  };
307 
309  enum
310  {
311  bATAFlagScatterGather1 = bATAFlagReserved1,
315  mATAFlagScatterGather1 = 1 << bATAFlagScatterGather1,
316  mATAFlagScatterGather0 = mATAFlagUseScatterGather,
317  mATAFlagScatterGathers = mATAFlagScatterGather1 + mATAFlagScatterGather0,
318  mATAFlagProtocol1 = mATAFlagProtocolATAPI,
319  mATAFlagProtocol0 = 1 << bATAFlagProtocol0,
320  mATAFlagProtocols = mATAFlagProtocol1 + mATAFlagProtocol0
321  };
322 
324  enum
325  {
326  kATAFnNOP = 0x00,
327  kATAFnExecIO = 0x01,
329  kATAFnQRelease = 0x03,
330  kATAFnCmd = 0x04,
331  kATAFnAbort = 0x05,
332  kATAFnBusReset = 0x06,
335  kATAPIFnExecIO = 0x09,
336  kATAPIFnCmd = 0x0A,
339  kATAFnKillIO = 0x0D
340  };
341 
344  enum
345  {
346  kATADeviceLightOff = 0x00,
347  kATADeviceLightOn = 0x01
348  };
349 
351  enum
352  {
353  kATADeviceUnlock = 0x00,
354  kATADeviceLock = 0x01
355  };
356 
359  enum
360  {
361  mATANoDMAOnBus = 0x80
362  };
363 
364  typedef CALLBACK_API(void, ATACallbackProcPtr)(void *ataPB);
365  typedef STACK_UPP_TYPE(ATACallbackProcPtr) ATACallbackUPP;
366 #if CALL_NOT_IN_CARBON
375  ATACallbackUPP
376  NewATACallbackUPP(ATACallbackProcPtr userRoutine);
377 #if !OPAQUE_UPP_TYPES
378  enum
379  {
380  uppATACallbackProcInfo = 0x000000C0
381  };
382 #ifdef __cplusplus
383  inline ATACallbackUPP NewATACallbackUPP(ATACallbackProcPtr userRoutine)
384  {
385  return (ATACallbackUPP)NewRoutineDescriptor(
386  (ProcPtr)(userRoutine), uppATACallbackProcInfo, GetCurrentArchitecture());
387  }
388 #else
389 #define NewATACallbackUPP(userRoutine) \
390  (ATACallbackUPP) \
391  NewRoutineDescriptor((ProcPtr)(userRoutine), uppATACallbackProcInfo, \
392  GetCurrentArchitecture())
393 #endif
394 #endif
395 
404  void
405  DisposeATACallbackUPP(ATACallbackUPP userUPP);
406 #if !OPAQUE_UPP_TYPES
407 #ifdef __cplusplus
408  inline void DisposeATACallbackUPP(ATACallbackUPP userUPP)
409  {
410  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
411  }
412 #else
413 #define DisposeATACallbackUPP(userUPP) DisposeRoutineDescriptor(userUPP)
414 #endif
415 #endif
416 
425  void
426  InvokeATACallbackUPP(void *ataPB, ATACallbackUPP userUPP);
427 #if !OPAQUE_UPP_TYPES
428 #ifdef __cplusplus
429  inline void InvokeATACallbackUPP(void *ataPB, ATACallbackUPP userUPP)
430  {
431  CALL_ONE_PARAMETER_UPP(userUPP, uppATACallbackProcInfo, ataPB);
432  }
433 #else
434 #define InvokeATACallbackUPP(ataPB, userUPP) \
435  CALL_ONE_PARAMETER_UPP((userUPP), uppATACallbackProcInfo, (ataPB))
436 #endif
437 #endif
438 
439 #endif
441 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
443 #define NewATACallbackProc(userRoutine) NewATACallbackUPP(userRoutine)
444 #define CallATACallbackProc(userRoutine, ataPB) \
445  InvokeATACallbackUPP(ataPB, userRoutine)
446 #endif
457  struct ataDeviceID
458  {
459  UInt16 Reserved;
460  UInt8 devNum;
461  UInt8 busNum;
462  };
463  typedef struct ataDeviceID ataDeviceID;
469 #define kATADevIDProperty "device_id"
470  enum
471  {
472  kATADevIDPropertyNameLength =
473  10,
476  };
477 
479  {
480  UInt8 *ioBuf;
482  UInt32 Count;
483  };
484  typedef struct ATADataObject ATADataObject;
485  struct ATAResult
486  {
487  OSStatus ataResult;
492  };
493  typedef struct ATAResult ATAResult;
499  {
500  SInt16 atapiPacketSize;
501  SInt16 atapiCommandByte[8];
502  };
503  typedef struct ATAPICmdPacket ATAPICmdPacket;
504  struct ATADevInfo
505  {
506  UInt8 devType;
507  SInt8 devID;
508  };
509  typedef struct ATADevInfo ATADevInfo;
512  enum
513  {
514  kATAInvalidDeviceID = -1,
515  kATADevice0DeviceID =
516  0,
518  };
519 
521  struct ATAInitInfo
522  {
523  UInt32 busID;
527  UInt32 refCon;
529  };
530  typedef struct ATAInitInfo ATAInitInfo;
533  {
534  UInt16 ataRegMask;
535  OSStatus ataResult;
536  UInt16 ataDataReg;
538  UInt8 ataTFCount;
539  UInt8 ataTFSector;
542  UInt8 ataTFSDH;
543  UInt8 ataTFCommand;
545  };
546  typedef struct ATADiagResult ATADiagResult;
548  struct ATABusInfo
549  {
550  UInt8 ataPIOModes;
554  UInt32 ataIOPBsize0;
555  UInt32 ataIOPBsize1;
556  SInt8 ataContrlType[16];
558  UInt32 reserved3;
559  };
560  typedef struct ATABusInfo ATABusInfo;
562  enum
563  {
564  kATAConfigReserved = 5
565  };
566 
569  {
570  SInt32 ataConfigSetting;
579  UInt8 reserved;
580  UInt16 atapcValid;
583  UInt16 ataHeads;
597  UInt8 atapcVcc;
598  UInt8 atapcVpp1;
599  UInt8 atapcVpp2;
600  UInt8 atapcStatus;
601  UInt8 atapcPin;
602  UInt8 atapcCopy;
609  UInt8 reserved2;
611  UInt16 Reserved1[5];
612  };
613  typedef struct ATADevConfig ATADevConfig;
615  struct ATAReqBlock
616  {
618  UInt32 connectionID;
619  UInt32 MsgID;
627  Duration Timeout;
628  UInt32 BusID;
629  SInt8 DevID;
631  UInt32 AbortID;
632  UInt32 ataPBLogicalBlockSize;
633  UInt32 ataPBFlags;
634  UInt32 reserved;
637  OSStatus ataPBResult;
638  UInt8 ataPBErrorRegister;
639  UInt8 ataPBStatusRegister;
640  UInt32 ataPBactualXferCount;
641  UInt32 ataPBState;
642  UInt32 ataPBSemaphores;
643  UInt8 XferType;
644  UInt8 ataModeType;
645  UInt8 ataPBIOSpeed;
646  UInt8 reserved2;
647  UInt16 reserved3;
648  };
649  typedef struct ATAReqBlock ATAReqBlock;
651  enum
652  {
653  kATAModeAbsolute = 2,
654  kATAModeBitmap = 3
655  };
656 
657  enum
658  {
659  kATAPluginVersion = 0x00000001,
660  kATAPluginCurrentVersion = kATAPluginVersion
661  };
662 
663  enum
664  {
665  kServiceCategoryATA = FOUR_CHAR_CODE('ata-')
666  };
667 
668  struct ataPBHeader
669  {
672  UInt16 ataPBQType;
673  UInt8 ataPBVers;
676  ATACallbackUPP ataPBCallbackPtr;
677  OSErr ataPBResult;
679  UInt8 ataPBIOSpeed;
680  UInt16 ataPBFlags;
681  SInt16 ataPBReserved3;
682  UInt32 ataPBDeviceID;
683  UInt32 ataPBTimeOut;
686  UInt16 ataPBState;
688  SInt32 ataPBReserved4;
690  };
691  typedef struct ataPBHeader ataPBHeader;
693  struct IOBlock
694  {
695  UInt8 *ataPBBuffer;
696  UInt32 ataPBByteCount;
697  };
698  typedef struct IOBlock IOBlock;
700  struct ataIOPB
701  {
704  UInt16 ataPBQType;
705  UInt8 ataPBVers;
708  ATACallbackUPP ataPBCallbackPtr;
709  OSErr ataPBResult;
711  UInt8 ataPBIOSpeed;
712  UInt16 ataPBFlags;
713  SInt16 ataPBReserved3;
714  UInt32 ataPBDeviceID;
715  UInt32 ataPBTimeOut;
718  UInt16 ataPBState;
720  SInt32 ataPBReserved4;
725  SInt16 ataPBReserved5;
728  UInt8 *ataPBBuffer;
729  UInt32 ataPBByteCount;
731  UInt32 ataPBReserved6;
735  SInt16 ataPBReserved7[6];
736  };
737  typedef struct ataIOPB ataIOPB;
741  {
744  UInt16 ataPBQType;
745  UInt8 ataPBVers;
748  ATACallbackUPP ataPBCallbackPtr;
749  OSErr ataPBResult;
751  UInt8 ataPBIOSpeed;
752  UInt16 ataPBFlags;
753  SInt16 ataPBReserved3;
754  UInt32 ataPBDeviceID;
755  UInt32 ataPBTimeOut;
758  UInt16 ataPBState;
760  SInt32 ataPBReserved4;
762  UInt16 ataEngineCount;
763  UInt16 ataReserved1;
764  UInt32 ataDataTypes;
765  UInt16 ataIOpbSize;
766  UInt16 ataMaxIOpbSize;
770  UInt16 ataReserved2;
771  UInt32 ataHBAPrivPtr;
772  UInt32 ataHBAPrivSize;
773  UInt32 ataAsyncFlags;
774  UInt8 ataPIOModes;
778  UInt32 ataReserved4[4];
779  SInt8 ataReserved5[16];
780  SInt8 ataHBAVendor[16];
781  SInt8 ataContrlFamily[16];
782  SInt8 ataContrlType[16];
783  SInt8 ataXPTversion[4];
784  SInt8 ataReserved6[4];
788  UInt16 ataReserved7;
789  UInt32 ataReserved8;
790  };
791  typedef struct ataBusInquiry ataBusInquiry;
794  {
797  UInt16 ataPBQType;
798  UInt8 ataPBVers;
801  ATACallbackUPP ataPBCallbackPtr;
802  OSErr ataPBResult;
804  UInt8 ataPBIOSpeed;
805  UInt16 ataPBFlags;
806  SInt16 ataPBReserved3;
807  UInt32 ataPBDeviceID;
808  UInt32 ataPBTimeOut;
811  UInt16 ataPBState;
813  SInt32 ataPBReserved4;
816  UInt8 ataMgrPBVers;
817  UInt8 Reserved1;
818  UInt16 ataBusCnt;
819  UInt16 ataDevCnt;
820  UInt8 ataPioModes;
821  UInt8 Reserved2;
822  UInt16
826  SInt16 Reserved[16];
827  };
828  typedef struct ataMgrInquiry ataMgrInquiry;
831  struct ataAbort
832  {
835  UInt16 ataPBQType;
836  UInt8 ataPBVers;
839  ATACallbackUPP ataPBCallbackPtr;
840  OSErr ataPBResult;
842  UInt8 ataPBIOSpeed;
843  UInt16 ataPBFlags;
844  SInt16 ataPBReserved3;
845  UInt32 ataPBDeviceID;
846  UInt32 ataPBTimeOut;
849  UInt16 ataPBState;
851  SInt32 ataPBReserved4;
854  SInt16 Reserved[22];
855  };
856  typedef struct ataAbort ataAbort;
858  struct ATAEventRec
859  {
860  UInt16 ataEventCode;
861  UInt16 ataPhysicalID;
862  SInt32 ataDrvrContext;
863  UInt32 ataMarker;
865  UInt32 ataDeviceType;
866  UInt16 ataRefNum;
867  };
868  typedef struct ATAEventRec ATAEventRec;
869  typedef ATAEventRec *ATAEventRecPtr;
870  typedef CALLBACK_API(SInt16, ATAClientProcPtr)(ATAEventRecPtr ataERPtr);
871  typedef STACK_UPP_TYPE(ATAClientProcPtr) ATAClientUPP;
872 #if CALL_NOT_IN_CARBON
881  ATAClientUPP
882  NewATAClientUPP(ATAClientProcPtr userRoutine);
883 #if !OPAQUE_UPP_TYPES
884  enum
885  {
886  uppATAClientProcInfo = 0x000000E0
887  };
888 #ifdef __cplusplus
889  inline ATAClientUPP NewATAClientUPP(ATAClientProcPtr userRoutine)
890  {
891  return (ATAClientUPP)NewRoutineDescriptor(
892  (ProcPtr)(userRoutine), uppATAClientProcInfo, GetCurrentArchitecture());
893  }
894 #else
895 #define NewATAClientUPP(userRoutine) \
896  (ATAClientUPP) NewRoutineDescriptor( \
897  (ProcPtr)(userRoutine), uppATAClientProcInfo, GetCurrentArchitecture())
898 #endif
899 #endif
900 
909  void
910  DisposeATAClientUPP(ATAClientUPP userUPP);
911 #if !OPAQUE_UPP_TYPES
912 #ifdef __cplusplus
913  inline void DisposeATAClientUPP(ATAClientUPP userUPP)
914  {
915  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
916  }
917 #else
918 #define DisposeATAClientUPP(userUPP) DisposeRoutineDescriptor(userUPP)
919 #endif
920 #endif
921 
930  SInt16
931  InvokeATAClientUPP(ATAEventRecPtr ataERPtr, ATAClientUPP userUPP);
932 #if !OPAQUE_UPP_TYPES
933 #ifdef __cplusplus
934  inline SInt16 InvokeATAClientUPP(ATAEventRecPtr ataERPtr,
935  ATAClientUPP userUPP)
936  {
937  return (SInt16)CALL_ONE_PARAMETER_UPP(userUPP, uppATAClientProcInfo,
938  ataERPtr);
939  }
940 #else
941 #define InvokeATAClientUPP(ataERPtr, userUPP) \
942  (SInt16) CALL_ONE_PARAMETER_UPP((userUPP), uppATAClientProcInfo, (ataERPtr))
943 #endif
944 #endif
945 
946 #endif
948 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
950 #define NewATAClientProc(userRoutine) NewATAClientUPP(userRoutine)
951 #define CallATAClientProc(userRoutine, ataERPtr) \
952  InvokeATAClientUPP(ataERPtr, userRoutine)
953 #endif
958  {
961  UInt16 ataPBQType;
962  UInt8 ataPBVers;
965  ATACallbackUPP ataPBCallbackPtr;
966  OSErr ataPBResult;
968  UInt8 ataPBIOSpeed;
969  UInt16 ataPBFlags;
970  SInt16 ataPBReserved3;
971  UInt32 ataPBDeviceID;
972  UInt32 ataPBTimeOut;
975  UInt16 ataPBState;
977  SInt32 ataPBReserved4;
979  SInt16 ataDrvrRefNum;
980  UInt16 ataDrvrFlags;
983  ATAClientUPP
985  SInt32 ataDrvrContext;
986  SInt32 ataEventMask;
987  SInt16 Reserved[14];
988  };
989  typedef struct ataDrvrRegister ataDrvrRegister;
992  {
995  UInt16 ataPBQType;
996  UInt8 ataPBVers;
999  ATACallbackUPP ataPBCallbackPtr;
1000  OSErr ataPBResult;
1003  UInt16 ataPBFlags;
1005  UInt32 ataPBDeviceID;
1006  UInt32 ataPBTimeOut;
1009  UInt16 ataPBState;
1014  SInt16 Reserved[22];
1015  };
1016  typedef struct ataModifyEventMask ataModifyEventMask;
1018  enum
1019  {
1020  bATAAltSDevCValid =
1021  14,
1031  1 << bATAAltSDevCValid,
1040  };
1041 
1044  {
1045  UInt8 ataByteRegValue;
1047  };
1048  typedef union ataRegValueUnion ataRegValueUnion;
1051  {
1054  UInt16 ataPBQType;
1055  UInt8 ataPBVers;
1058  ATACallbackUPP ataPBCallbackPtr;
1059  OSErr ataPBResult;
1062  UInt16 ataPBFlags;
1064  UInt32 ataPBDeviceID;
1065  UInt32 ataPBTimeOut;
1068  UInt16 ataPBState;
1072  UInt16 ataRegSelect;
1084  UInt16 ataRegMask;
1099  UInt8 Reserved3;
1100  SInt16 Reserved[16];
1101  };
1102  typedef struct ataRegAccess ataRegAccess;
1105  {
1108  UInt16 ataPBQType;
1109  UInt8 ataPBVers;
1112  ATACallbackUPP ataPBCallbackPtr;
1113  OSErr ataPBResult;
1116  UInt16 ataPBFlags;
1118  UInt32 ataPBDeviceID;
1119  UInt32 ataPBTimeOut;
1122  UInt16 ataPBState;
1126  UInt16 Reserved1[4];
1127  UInt8 *ataPBBuffer;
1128  UInt16 Reserved2[12];
1129  SInt16 Reserved3[6];
1130  };
1131  typedef struct ataIdentify ataIdentify;
1134  enum
1135  {
1136  ATAPIpacketDRQ_bit = 6,
1137  ATAPIpacketDRQ = 1 << ATAPIpacketDRQ_bit
1138  };
1139 
1141  enum
1142  {
1143  bATApcAccessMode = 0,
1144  bATApcVcc = 1,
1145  bATApcVpp1 = 2,
1146  bATApcVpp2 = 3,
1147  bATApcStatus = 4,
1148  bATApcPin = 5,
1149  bATApcCopy = 6,
1150  bATApcConfigIndex = 7,
1151  bATApcLockUnlock = 15,
1152  mATApcAccessMode = 1 << bATApcAccessMode,
1153  mATApcVcc = 1 << bATApcVcc,
1154  mATApcVpp1 = 1 << bATApcVpp1,
1155  mATApcVpp2 = 1 << bATApcVpp2,
1156  mATApcStatus = 1 << bATApcStatus,
1157  mATApcPin = 1 << bATApcPin,
1158  mATApcCopy = 1 << bATApcCopy,
1159  mATApcConfigIndex = 1 << bATApcConfigIndex,
1160  mATApcLockUnlock = 1 << bATApcLockUnlock
1161  };
1162 
1164  enum
1165  {
1166  kATADeviceUnknown = 0x00,
1167  kATADeviceATA = 0x01,
1169  kATADeviceReserved = 0x03
1170  };
1171 
1172  enum
1173  {
1174  kATASocketInternal = 0x01,
1175  kATASocketMB = 0x02,
1176  kATASocketPCMCIA = 0x03
1177  };
1178 
1184  {
1187  UInt16 ataPBQType;
1188  UInt8 ataPBVers;
1191  ATACallbackUPP ataPBCallbackPtr;
1192  OSErr ataPBResult;
1195  UInt16 ataPBFlags;
1197  UInt32 ataPBDeviceID;
1198  UInt32 ataPBTimeOut;
1201  UInt16 ataPBState;
1214  UInt8 Reserved3;
1215  UInt16 atapcValid;
1229  UInt16 ataHeads;
1245  UInt8 atapcVcc;
1246  UInt8 atapcVpp1;
1247  UInt8 atapcVpp2;
1248  UInt8 atapcStatus;
1249  UInt8 atapcPin;
1250  UInt8 atapcCopy;
1257  UInt8 reserved2;
1259  UInt16 Reserved1[5];
1260  };
1263  enum
1264  {
1265  kATALargeIconHFS = 0x0001,
1266  kATALargeIconProDOS = 0x0081
1267  };
1268 
1271  {
1274  UInt16 ataPBQType;
1275  UInt8 ataPBVers;
1278  ATACallbackUPP ataPBCallbackPtr;
1279  OSErr ataPBResult;
1282  UInt16 ataPBFlags;
1284  UInt32 ataPBDeviceID;
1285  UInt32 ataPBTimeOut;
1288  UInt16 ataPBState;
1292  SInt16 ataIconType;
1298  UInt16 Reserved1[18];
1299  };
1300  typedef struct ataLocationData ataLocationData;
1302  enum
1303  {
1304  kATAddTypeMacOS = 0x0001
1305  };
1306 
1309  {
1312  UInt16 ataPBQType;
1313  UInt8 ataPBVers;
1317  OSErr ataPBResult;
1320  UInt16 ataPBFlags;
1322  UInt32 ataPBDeviceID;
1323  UInt32 ataPBTimeOut;
1326  UInt16 ataPBState;
1331  CFragConnectionID connID;
1332  UInt32 busID;
1333  UInt8 flags;
1334  UInt8 socketType;
1335  Ptr iconData;
1337  };
1338  typedef struct ataAddATABus ataAddATABus;
1341  {
1344  UInt16 ataPBQType;
1345  UInt8 ataPBVers;
1349  OSErr ataPBResult;
1352  UInt16 ataPBFlags;
1354  UInt32 ataPBDeviceID;
1355  UInt32 ataPBTimeOut;
1358  UInt16 ataPBState;
1362  UInt32 busID;
1364  };
1365  typedef struct ataRemoveATABus ataRemoveATABus;
1368  struct ataGeneric
1369  {
1372  UInt16 ataPBQType;
1373  UInt8 ataPBVers;
1376  ATACallbackUPP ataPBCallbackPtr;
1377  OSErr ataPBResult;
1380  UInt16 ataPBFlags;
1382  UInt32 ataPBDeviceID;
1383  UInt32 ataPBTimeOut;
1386  UInt16 ataPBState;
1390  UInt16 Reserved[24];
1391  };
1392  typedef struct ataGeneric ataGeneric;
1393  union ataPB
1394  {
1395  ataIOPB ataIOParamBlock;
1414  };
1415  typedef union ataPB ataPB;
1417  enum
1418  {
1419  kATANullEvent = 0x00,
1426  kATAUpdateEvent =
1427  0x07,
1429  0x08,
1434  bATANullEvent = 1 << kATANullEvent,
1443  };
1444 
1445  enum
1446  {
1447  kATAEventMarker =
1448  FOUR_CHAR_CODE('LOAD'),
1449  kATAEventVersion1 = 0x00000001
1450  };
1451 
1452  typedef CALLBACK_API(OSErr, ATADispatchProcPtr)(ataPB *pb);
1453  typedef STACK_UPP_TYPE(ATADispatchProcPtr) ATADispatchUPP;
1454 #if CALL_NOT_IN_CARBON
1463  ATADispatchUPP
1464  NewATADispatchUPP(ATADispatchProcPtr userRoutine);
1465 #if !OPAQUE_UPP_TYPES
1466  enum
1467  {
1468  uppATADispatchProcInfo = 0x000000E0
1469  };
1470 #ifdef __cplusplus
1471  inline ATADispatchUPP NewATADispatchUPP(ATADispatchProcPtr userRoutine)
1472  {
1473  return (ATADispatchUPP)NewRoutineDescriptor(
1474  (ProcPtr)(userRoutine), uppATADispatchProcInfo, GetCurrentArchitecture());
1475  }
1476 #else
1477 #define NewATADispatchUPP(userRoutine) \
1478  (ATADispatchUPP) \
1479  NewRoutineDescriptor((ProcPtr)(userRoutine), uppATADispatchProcInfo, \
1480  GetCurrentArchitecture())
1481 #endif
1482 #endif
1483 
1492  void
1493  DisposeATADispatchUPP(ATADispatchUPP userUPP);
1494 #if !OPAQUE_UPP_TYPES
1495 #ifdef __cplusplus
1496  inline void DisposeATADispatchUPP(ATADispatchUPP userUPP)
1497  {
1498  DisposeRoutineDescriptor((UniversalProcPtr)userUPP);
1499  }
1500 #else
1501 #define DisposeATADispatchUPP(userUPP) DisposeRoutineDescriptor(userUPP)
1502 #endif
1503 #endif
1504 
1513  OSErr
1514  InvokeATADispatchUPP(ataPB *pb, ATADispatchUPP userUPP);
1515 #if !OPAQUE_UPP_TYPES
1516 #ifdef __cplusplus
1517  inline OSErr InvokeATADispatchUPP(ataPB *pb, ATADispatchUPP userUPP)
1518  {
1519  return (OSErr)CALL_ONE_PARAMETER_UPP(userUPP, uppATADispatchProcInfo, pb);
1520  }
1521 #else
1522 #define InvokeATADispatchUPP(pb, userUPP) \
1523  (OSErr) CALL_ONE_PARAMETER_UPP((userUPP), uppATADispatchProcInfo, (pb))
1524 #endif
1525 #endif
1526 
1527 #endif
1529 #if CALL_NOT_IN_CARBON || OLDROUTINENAMES
1531 #define NewATADispatchProc(userRoutine) NewATADispatchUPP(userRoutine)
1532 #define CallATADispatchProc(userRoutine, pb) \
1533  InvokeATADispatchUPP(pb, userRoutine)
1534 #endif
1536 #if CALL_NOT_IN_CARBON
1545  SInt16
1547 
1549 #endif
1551  typedef CALLBACK_API_C(OSStatus, ATAPluginInit)(ATAInitInfo *pb);
1552  typedef CALLBACK_API_C(OSStatus, ATAPluginClose)(UInt32 refCon,
1554  typedef CALLBACK_API_C(void, ATAPluginAction)(UInt32 refCon, ATAReqBlock *pb);
1555  typedef CALLBACK_API_C(void, ATAPluginHandleBusEvent)(UInt32 refCon,
1556  UInt32 aimData);
1557  typedef CALLBACK_API_C(Boolean, ATAPluginPoll)(UInt32 refCon,
1558  UInt32 interruptLevel,
1559  UInt32 *aimData);
1560  typedef CALLBACK_API_C(void, ATAPluginEjectDevice)(UInt32 refCon);
1561  typedef CALLBACK_API_C(void, ATAPluginDeviceLight)(UInt32 refCon,
1562  UInt32 whichDevice,
1563  UInt32 lightState);
1564  typedef CALLBACK_API_C(void, ATAPluginDeviceLock)(UInt32 refCon,
1565  UInt32 whichDevice,
1566  UInt32 lockState);
1567  typedef CALLBACK_API_C(void, ATAPluginSuspend)(UInt32 refCon);
1568  typedef CALLBACK_API_C(void, ATAPluginResume)(UInt32 refCon);
1571  {
1572  NumVersion headerVersion;
1573  NumVersion dispatchVersion;
1574  UInt32 reservedA;
1575  UInt32 reservedB;
1576  };
1577  typedef struct ATAPluginHeader ATAPluginHeader;
1579  {
1581  ATAPluginInit init;
1582  ATAPluginClose close;
1583  ATAPluginAction action;
1584  ATAPluginHandleBusEvent busEvent;
1585  ATAPluginPoll poll;
1586  ATAPluginEjectDevice eject;
1587  ATAPluginDeviceLight light;
1588  ATAPluginDeviceLock lock;
1589  ATAPluginSuspend suspend;
1590  ATAPluginResume resume;
1591  };
1593 
1595 #if CALL_NOT_IN_CARBON
1604  void
1605  ATAFamIODone(ATAReqBlock *theReq, OSStatus result);
1606 
1615  void
1616  ATAFamBusEventForAIM(UInt32 busID, UInt32 busEvent);
1617 
1626  SInt16
1627  NativeATAMgr(ataPB *request);
1628 
1631 #endif
1633  enum
1634  {
1635  ATABaseErrCode = -9406,
1637  AT_NRdyErr = ATABaseErrCode + 0x01,
1638  AT_IDNFErr = ATABaseErrCode + 0x02,
1639  AT_DMarkErr = ATABaseErrCode + 0x03,
1640  AT_BadBlkErr = ATABaseErrCode + 0x04,
1641  AT_CorDataErr = ATABaseErrCode + 0x05,
1642  AT_UncDataErr = ATABaseErrCode + 0x06,
1643  AT_SeekErr = ATABaseErrCode + 0x07,
1644  AT_WrFltErr = ATABaseErrCode + 0x08,
1645  AT_RecalErr = ATABaseErrCode + 0x09,
1646  AT_AbortErr = ATABaseErrCode + 0x0A,
1647  AT_MCErr = ATABaseErrCode + 0x0C,
1648  ATAPICheckErr =
1649  ATABaseErrCode + 0x0D,
1651  ATABaseErrCode + 0x0E,
1653  DRVRCantAllocate = ATABaseErrCode +
1654  0x1E,
1655  NoATAMgr =
1656  ATABaseErrCode + 0x1F,
1657  ATAInitFail = ATABaseErrCode + 0x20,
1658  ATABufFail = ATABaseErrCode + 0x21,
1660  ATABaseErrCode + 0x22,
1661  ATAEjectDrvErr =
1662  ATABaseErrCode + 0x23,
1665  ATABaseErrCode + 0x2E,
1666  ATAPBInvalid = ATABaseErrCode +
1667  0x2F,
1669  ATABaseErrCode + 0x30,
1670  ATABusy = ATABaseErrCode + 0x31,
1671  ATATransTimeOut =
1672  ATABaseErrCode + 0x32,
1673  ATAReqInProg =
1674  ATABaseErrCode +
1675  0x33,
1676  ATAUnknownState =
1677  ATABaseErrCode +
1678  0x34,
1679  ATAQLocked =
1680  ATABaseErrCode +
1681  0x35,
1682  ATAReqAborted =
1683  ATABaseErrCode +
1684  0x36,
1687  ATABaseErrCode +
1688  0x37,
1690  ATABaseErrCode +
1691  0x38,
1692  ATAPIPhaseErr = ATABaseErrCode + 0x39,
1694  ATAPITxCntErr =
1695  ATABaseErrCode + 0x3A,
1696  ATANoClientErr =
1697  ATABaseErrCode + 0x3B,
1698  ATAInternalErr =
1699  ATABaseErrCode + 0x3C,
1700  ATABusErr = ATABaseErrCode + 0x3D,
1701  AT_NoAddrErr = ATABaseErrCode + 0x3E,
1702  DriverLocked =
1703  ATABaseErrCode +
1704  0x3F,
1705  CantHandleEvent =
1706  ATABaseErrCode +
1707  0x40,
1708  ATAMgrMemoryErr =
1709  ATABaseErrCode + 0x41,
1710  ATASDFailErr = ATABaseErrCode + 0x42,
1711  ATAXferParamErr =
1712  ATABaseErrCode + 0x43,
1713  ATAXferModeErr =
1714  ATABaseErrCode + 0x44,
1716  ATABaseErrCode +
1717  0x45,
1718  ATADmaXferErr =
1719  ATABaseErrCode + 0x46,
1722  ATABaseErrCode + 0x4E,
1723  ATAMemoryErr = ATABaseErrCode + 0x4F,
1724  ATANoDDMErr = ATABaseErrCode + 0x50,
1725  ATANoDriverErr =
1726  ATABaseErrCode + 0x51
1727  };
1728 
1731  enum
1732  {
1733  v1ATABaseErrCode = 0x0700,
1734  v1AT_NRdyErr = 0x01 - v1ATABaseErrCode,
1735  v1AT_IDNFErr = 0x04 - v1ATABaseErrCode,
1736  v1AT_DMarkErr = 0x05 - v1ATABaseErrCode,
1737  v1AT_BadBlkErr = 0x06 - v1ATABaseErrCode,
1738  v1AT_CorDataErr = 0x07 - v1ATABaseErrCode,
1739  v1AT_UncDataErr = 0x08 - v1ATABaseErrCode,
1740  v1AT_SeekErr = 0x09 - v1ATABaseErrCode,
1741  v1AT_WrFltErr = 0x0A - v1ATABaseErrCode,
1742  v1AT_RecalErr = 0x0B - v1ATABaseErrCode,
1743  v1AT_AbortErr = 0x0C - v1ATABaseErrCode,
1744  v1AT_NoAddrErr = 0x0D - v1ATABaseErrCode,
1745  v1AT_MCErr = 0x0E - v1ATABaseErrCode,
1747  v1DRVRCantAllocate = -(v1ATABaseErrCode + 1),
1748  v1NoATAMgr = -(v1ATABaseErrCode + 2),
1749  v1ATAInitFail = -(v1ATABaseErrCode + 3),
1750  v1ATABufFail = -(v1ATABaseErrCode + 4),
1751  v1ATADevUnsupported = -(v1ATABaseErrCode + 5),
1753  v1ATAMgrNotInitialized = -(v1ATABaseErrCode + 10),
1754  v1ATAPBInvalid = -(v1ATABaseErrCode + 11),
1755  v1ATAFuncNotSupported = -(v1ATABaseErrCode + 12),
1756  v1ATABusy = -(v1ATABaseErrCode + 13),
1757  v1ATATransTimeOut = -(v1ATABaseErrCode + 14),
1758  v1ATAReqInProg = -(v1ATABaseErrCode + 15),
1759  v1ATAUnknownState = -(v1ATABaseErrCode + 16),
1760  v1ATAQLocked = -(v1ATABaseErrCode + 17),
1761  v1ATAReqAborted = -(v1ATABaseErrCode + 18),
1762  v1ATAUnableToAbort = -(v1ATABaseErrCode + 19),
1763  v1ATAAbortedDueToRst = -(v1ATABaseErrCode + 20)
1764  };
1765 
1766 #if PRAGMA_STRUCT_ALIGN
1767 #pragma options align = reset
1768 #elif PRAGMA_STRUCT_PACKPUSH
1769 #pragma pack(pop)
1770 #elif PRAGMA_STRUCT_PACK
1771 #pragma pack()
1772 #endif
1773 
1774 #ifdef PRAGMA_IMPORT_OFF
1775 #pragma import off
1776 #elif PRAGMA_IMPORT
1777 #pragma import reset
1778 #endif
1779 
1780 #ifdef __cplusplus
1781 }
1782 #endif
1783 
1784 #endif
SInt16 NativeATAMgr(ataPB *request)
void DisposeATAClientUPP(ATAClientUPP userUPP)
@ bATAFlagReserved2
Definition: ATA.h:285
@ bATAFlagImmediate
Definition: ATA.h:279
@ mATAFlagIORead
Definition: ATA.h:292
@ mATAFlagQLock
Definition: ATA.h:296
@ bATAFlagProtocolATAPI
Definition: ATA.h:284
@ mATAFlagLEDEnable
Definition: ATA.h:305
@ mATAFlagTFRead
Definition: ATA.h:303
@ bATAFlagTFRead
Definition: ATA.h:286
@ bATAFlagUseScatterGather
Definition: ATA.h:282
@ mATAFlagImmediate
Definition: ATA.h:294
@ mATAFlagUseScatterGather
Definition: ATA.h:298
@ mATAFlagUseConfigSpeed
Definition: ATA.h:288
@ bATAFlagIOWrite
Definition: ATA.h:278
@ bATAFlagIORead
Definition: ATA.h:277
@ bATAFlagByteSwap
Definition: ATA.h:276
@ bATAFlagReserved1
Definition: ATA.h:281
@ bATAFlagLEDEnable
Definition: ATA.h:287
@ mATAFlagUseDMA
Definition: ATA.h:300
@ mATAFlagIOWrite
Definition: ATA.h:293
@ bATAFlagUseDMA
Definition: ATA.h:283
@ bATAFlagQLock
Definition: ATA.h:280
@ bATADCRReset
Definition: ATA.h:141
@ mATADCRnIntEnable
Definition: ATA.h:145
@ bATADCRnIntEnable
Definition: ATA.h:142
@ mATADCROne
Definition: ATA.h:143
@ mATADCRReset
Definition: ATA.h:144
@ kATADriverLoader
Definition: ATA.h:268
@ kATAROMDriver
Definition: ATA.h:269
OSErr InvokeATADispatchUPP(ataPB *pb, ATADispatchUPP userUPP)
@ kATALargeIconProDOS
Definition: ATA.h:1266
@ kATADeviceATAPI
Definition: ATA.h:1168
@ kATADeviceReserved
Definition: ATA.h:1169
@ kATADeviceATA
Definition: ATA.h:1167
@ kATADevice1DeviceID
Definition: ATA.h:517
@ ATAPIpacketDRQ
Definition: ATA.h:1137
void DisposeATADispatchUPP(ATADispatchUPP userUPP)
@ bATAFlagScatterGather0
Definition: ATA.h:312
@ bATAFlagProtocol0
Definition: ATA.h:314
@ bATAFlagProtocol1
Definition: ATA.h:313
@ mATAFlagScatterGather1
Definition: ATA.h:315
@ mATASectorSize
Definition: ATA.h:111
@ mATALBASelect
Definition: ATA.h:113
@ mATADriveSelect
Definition: ATA.h:112
void ATAFamBusEventForAIM(UInt32 busID, UInt32 busEvent)
@ kATADeviceLock
Definition: ATA.h:354
@ kATADevIDPropertySize
Definition: ATA.h:475
@ kATAcmdCheckPowerMode
Definition: ATA.h:178
@ kATAcmdMCAcknowledge
Definition: ATA.h:170
@ kATAcmdDiagnostic
Definition: ATA.h:163
@ kATAcmdReadVerify
Definition: ATA.h:160
@ kATAcmdIdle
Definition: ATA.h:176
@ kATAcmdStandby
Definition: ATA.h:175
@ kATAcmdReadLong
Definition: ATA.h:156
@ kATAcmdReadDMA
Definition: ATA.h:168
@ kATAcmdIdleImmed
Definition: ATA.h:174
@ kATAcmdSetRWMultiple
Definition: ATA.h:167
@ kATAcmdDoorLock
Definition: ATA.h:171
@ kATAcmdRead
Definition: ATA.h:155
@ kATAcmdWriteBuffer
Definition: ATA.h:180
@ kATAcmdWriteSame
Definition: ATA.h:181
@ kATAcmdWriteDMA
Definition: ATA.h:169
@ kATAcmdDriveIdentify
Definition: ATA.h:182
@ kATAcmdWrite
Definition: ATA.h:157
@ kATAcmdFormatTrack
Definition: ATA.h:161
@ kATAcmdRecal
Definition: ATA.h:154
@ kATAcmdSetFeatures
Definition: ATA.h:184
@ kATAcmdSeek
Definition: ATA.h:162
@ kATAcmdReadBuffer
Definition: ATA.h:177
@ kATAcmdWriteVerify
Definition: ATA.h:159
@ kATAcmdNOP
Definition: ATA.h:153
@ kATAcmdWriteLong
Definition: ATA.h:158
@ kATAcmdMediaEject
Definition: ATA.h:183
@ kATAcmdWriteMultiple
Definition: ATA.h:166
@ kATAcmdInitDrive
Definition: ATA.h:164
@ kATAcmdSleep
Definition: ATA.h:179
@ kATAcmdStandbyImmed
Definition: ATA.h:173
@ kATAcmdReadMultiple
Definition: ATA.h:165
@ kATAcmdDoorUnlock
Definition: ATA.h:172
@ mATACylinderLoValid
Definition: ATA.h:1035
@ mATAStatusCmdValid
Definition: ATA.h:1032
@ mATAAltSDevCValid
Definition: ATA.h:1030
@ bATASDHValid
Definition: ATA.h:1023
@ bATAErrFeaturesValid
Definition: ATA.h:1028
@ bATASectorCntValid
Definition: ATA.h:1027
@ bATAStatusCmdValid
Definition: ATA.h:1022
@ mATADataValid
Definition: ATA.h:1039
@ bATACylinderHiValid
Definition: ATA.h:1024
@ bATACylinderLoValid
Definition: ATA.h:1025
@ mATASDHValid
Definition: ATA.h:1033
@ mATASectorNumValid
Definition: ATA.h:1036
@ bATASectorNumValid
Definition: ATA.h:1026
@ bATADataValid
Definition: ATA.h:1029
@ mATASectorCntValid
Definition: ATA.h:1037
@ mATACylinderHiValid
Definition: ATA.h:1034
@ mATAErrFeaturesValid
Definition: ATA.h:1038
SInt16 ataManager(ataPB *pb)
void DisposeATACallbackUPP(ATACallbackUPP userUPP)
@ kATAEventVersion1
Definition: ATA.h:1449
SInt16 InvokeATAClientUPP(ATAEventRecPtr ataERPtr, ATAClientUPP userUPP)
@ v1AT_SeekErr
Definition: ATA.h:1740
@ v1ATABusy
Definition: ATA.h:1756
@ v1ATAMgrNotInitialized
Definition: ATA.h:1753
@ v1ATAQLocked
Definition: ATA.h:1760
@ v1ATAAbortedDueToRst
Definition: ATA.h:1763
@ v1AT_NoAddrErr
Definition: ATA.h:1744
@ v1ATAReqInProg
Definition: ATA.h:1758
@ v1DRVRCantAllocate
Definition: ATA.h:1747
@ v1ATATransTimeOut
Definition: ATA.h:1757
@ v1AT_MCErr
Definition: ATA.h:1745
@ v1ATADevUnsupported
Definition: ATA.h:1751
@ v1ATAInitFail
Definition: ATA.h:1749
@ v1ATABufFail
Definition: ATA.h:1750
@ v1ATAFuncNotSupported
Definition: ATA.h:1755
@ v1NoATAMgr
Definition: ATA.h:1748
@ v1AT_RecalErr
Definition: ATA.h:1742
@ v1AT_UncDataErr
Definition: ATA.h:1739
@ v1AT_BadBlkErr
Definition: ATA.h:1737
@ v1AT_NRdyErr
Definition: ATA.h:1734
@ v1ATAUnableToAbort
Definition: ATA.h:1762
@ v1ATAReqAborted
Definition: ATA.h:1761
@ v1AT_WrFltErr
Definition: ATA.h:1741
@ v1AT_IDNFErr
Definition: ATA.h:1735
@ v1ATAUnknownState
Definition: ATA.h:1759
@ v1AT_DMarkErr
Definition: ATA.h:1736
@ v1AT_CorDataErr
Definition: ATA.h:1738
@ v1ATAPBInvalid
Definition: ATA.h:1754
@ v1AT_AbortErr
Definition: ATA.h:1743
#define NewATACallbackUPP(userRoutine)
Definition: ATA.h:389
@ bATAIndex
Definition: ATA.h:125
@ bATADataRequest
Definition: ATA.h:123
@ bATADataCorrected
Definition: ATA.h:124
@ mATABusy
Definition: ATA.h:127
@ mATADataCorrected
Definition: ATA.h:132
@ mATAWriteFault
Definition: ATA.h:129
@ bATASeekComplete
Definition: ATA.h:122
@ bATADriveReady
Definition: ATA.h:120
@ mATASeekComplete
Definition: ATA.h:130
@ mATAIndex
Definition: ATA.h:133
@ bATAError
Definition: ATA.h:126
@ mATAError
Definition: ATA.h:134
@ mATADriveReady
Definition: ATA.h:128
@ mATADataRequest
Definition: ATA.h:131
@ bATAWriteFault
Definition: ATA.h:121
@ kATAMgrAddATABus
Definition: ATA.h:254
@ kATAMgrFindDriverRefnum
Definition: ATA.h:244
@ kATAMgrModifyEventMask
Definition: ATA.h:246
@ kATAMgrExecIO
Definition: ATA.h:235
@ kATAMgrAbort
Definition: ATA.h:238
@ kATAMgrDriveEject
Definition: ATA.h:247
@ kATAMgrFindSpecialDriverRefnum
Definition: ATA.h:257
@ kATAMgrDriverLoad
Definition: ATA.h:242
@ kATAMgrDriveIdentify
Definition: ATA.h:241
@ kATAMgrBusReset
Definition: ATA.h:239
@ kATAMgrRemoveATABus
Definition: ATA.h:255
@ kATAMgrManagerShutdown
Definition: ATA.h:253
@ kATAMgrManagerInquiry
Definition: ATA.h:251
@ kATAMgrManagerInit
Definition: ATA.h:252
@ kATAMgrSetDrvConfiguration
Definition: ATA.h:249
@ kATAMgrQRelease
Definition: ATA.h:237
@ kATAMgrRegAccess
Definition: ATA.h:240
@ kATAMgrDriveRegister
Definition: ATA.h:243
@ kATAMgrBusInquiry
Definition: ATA.h:236
@ kATAMgrGetLocationIcon
Definition: ATA.h:250
@ kATAMgrNextAvailable
Definition: ATA.h:259
@ kATAMgrRemoveDriverRefnum
Definition: ATA.h:245
@ kATAMgrGetDrvConfiguration
Definition: ATA.h:248
@ kATAOnlineEvent
Definition: ATA.h:1420
@ bATAUpdateEvent
Definition: ATA.h:1441
@ bATANullEvent
Definition: ATA.h:1434
@ bATAOfflineRequest
Definition: ATA.h:1439
@ bATAEjectRequest
Definition: ATA.h:1440
@ kATAOfflineRequest
Definition: ATA.h:1424
@ kATALoadDriverNow
Definition: ATA.h:1430
@ kATATaskTimeRequest
Definition: ATA.h:1428
@ kATAUpdateEvent
Definition: ATA.h:1426
@ bATAResetEvent
Definition: ATA.h:1438
@ bATAOnlineEvent
Definition: ATA.h:1435
@ kATAOfflineEvent
Definition: ATA.h:1421
@ kATAPIResetEvent
Definition: ATA.h:1431
@ bATARemovedEvent
Definition: ATA.h:1437
@ kATAResetEvent
Definition: ATA.h:1423
@ bATAPIResetEvent
Definition: ATA.h:1442
@ bATAOfflineEvent
Definition: ATA.h:1436
@ kATAEjectRequest
Definition: ATA.h:1425
@ kATARemovedEvent
Definition: ATA.h:1422
@ AT_UncDataErr
Definition: ATA.h:1642
@ ATATransTimeOut
Definition: ATA.h:1671
@ ATAXferModeErr
Definition: ATA.h:1713
@ AT_UltraDMAiCRCErr
Definition: ATA.h:1650
@ ATAQLocked
Definition: ATA.h:1679
@ NoATAMgr
Definition: ATA.h:1655
@ AT_MCErr
Definition: ATA.h:1647
@ AT_WrFltErr
Definition: ATA.h:1644
@ ATAInternalErr
Definition: ATA.h:1698
@ AT_SeekErr
Definition: ATA.h:1643
@ AT_BadBlkErr
Definition: ATA.h:1640
@ ATAMgrNotInitialized
Definition: ATA.h:1664
@ ATANoDDMErr
Definition: ATA.h:1724
@ AT_DMarkErr
Definition: ATA.h:1639
@ ATAXferParamErr
Definition: ATA.h:1711
@ ATAPBInvalid
Definition: ATA.h:1666
@ ATABusErr
Definition: ATA.h:1700
@ ATAReqInProg
Definition: ATA.h:1673
@ ATAAbortedDueToRst
Definition: ATA.h:1689
@ AT_NRdyErr
Definition: ATA.h:1637
@ CantHandleEvent
Definition: ATA.h:1705
@ ATADmaXferErr
Definition: ATA.h:1718
@ ioPending
Definition: ATA.h:1636
@ ATABufFail
Definition: ATA.h:1658
@ ATAPICheckErr
Definition: ATA.h:1648
@ AT_AbortErr
Definition: ATA.h:1646
@ ATAUnknownState
Definition: ATA.h:1676
@ ATANoDriverErr
Definition: ATA.h:1725
@ ATAMemoryErr
Definition: ATA.h:1723
@ ATABusy
Definition: ATA.h:1670
@ ATAMgrMemoryErr
Definition: ATA.h:1708
@ ATANoClientErr
Definition: ATA.h:1696
@ ATAUnableToAbort
Definition: ATA.h:1686
@ DRVRCantAllocate
Definition: ATA.h:1653
@ ATAMgrConsistencyErr
Definition: ATA.h:1715
@ ATAInitFail
Definition: ATA.h:1657
@ AT_NoAddrErr
Definition: ATA.h:1701
@ ATAInvalidDrvNum
Definition: ATA.h:1721
@ ATAPITxCntErr
Definition: ATA.h:1694
@ ATAFuncNotSupported
Definition: ATA.h:1668
@ AT_IDNFErr
Definition: ATA.h:1638
@ ATADevUnsupported
Definition: ATA.h:1659
@ AT_CorDataErr
Definition: ATA.h:1641
@ ATAReqAborted
Definition: ATA.h:1682
@ ATAPIPhaseErr
Definition: ATA.h:1692
@ ATAEjectDrvErr
Definition: ATA.h:1661
@ AT_RecalErr
Definition: ATA.h:1645
@ ATASDFailErr
Definition: ATA.h:1710
@ DriverLocked
Definition: ATA.h:1702
void InvokeATACallbackUPP(void *ataPB, ATACallbackUPP userUPP)
@ kATAPBVers1
Definition: ATA.h:64
@ kATAPBVers3
Definition: ATA.h:66
@ kATADefaultBlockSize
Definition: ATA.h:67
@ kATAPBVers2
Definition: ATA.h:65
@ mATAPIuseDMA
Definition: ATA.h:104
@ mATAMediaChangeReq
Definition: ATA.h:93
@ mATABadBlock
Definition: ATA.h:88
@ mATAUncorrectable
Definition: ATA.h:89
@ bATAIDNotFound
Definition: ATA.h:83
@ bATAUncorrectable
Definition: ATA.h:81
@ mATACommandAborted
Definition: ATA.h:95
@ bATATrack0NotFound
Definition: ATA.h:86
@ bATAMediaChangeReq
Definition: ATA.h:84
@ bATAMediaChanged
Definition: ATA.h:82
@ bATACommandAborted
Definition: ATA.h:85
@ mATAIDNotFound
Definition: ATA.h:92
@ mATAAddressNotFound
Definition: ATA.h:97
@ bATAAddressNotFound
Definition: ATA.h:87
@ mATAMediaChanged
Definition: ATA.h:90
@ mATATrack0NotFound
Definition: ATA.h:96
#define NewATADispatchUPP(userRoutine)
Definition: ATA.h:1477
@ kATAEnableReadAhead
Definition: ATA.h:195
@ kATAEnableECC
Definition: ATA.h:193
@ kATAEnableRetry
Definition: ATA.h:194
@ kATASetPIOMode
Definition: ATA.h:192
@ kATASetTransferMode
Definition: ATA.h:191
void ATAFamIODone(ATAReqBlock *theReq, OSStatus result)
@ kATAFnRegAccess
Definition: ATA.h:333
@ kATAFnKillIO
Definition: ATA.h:339
@ kATAFnCmd
Definition: ATA.h:330
@ kATAFnQRelease
Definition: ATA.h:329
@ kATAFnAbort
Definition: ATA.h:331
@ kATAFnExecIO
Definition: ATA.h:327
@ kATAFnBusInquiry
Definition: ATA.h:328
@ kATAFnGetDriveConfig
Definition: ATA.h:337
@ kATAPIFnExecIO
Definition: ATA.h:335
@ kATAFnSetDriveConfig
Definition: ATA.h:338
@ kATAFnDriveIdentify
Definition: ATA.h:334
@ kATAFnBusReset
Definition: ATA.h:332
@ kATAPIFnCmd
Definition: ATA.h:336
#define NewATAClientUPP(userRoutine)
Definition: ATA.h:895
typedef CALLBACK_API_C(OSStatus, ATAPluginInit)(ATAInitInfo *pb)
@ kATASocketMB
Definition: ATA.h:1175
@ kATASocketPCMCIA
Definition: ATA.h:1176
@ kATADeviceLightOn
Definition: ATA.h:347
Public Code Fragment Manager Interfaces.
Basic Macintosh data types.
unsigned char Boolean
Definition: MacTypes.h:318
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)
NameRegistry Interfaces.
Definition: ATA.h:549
UInt8 ataUltraDMAModes
Definition: ATA.h:553
UInt32 ataIOPBsize0
Definition: ATA.h:554
UInt32 reserved3
Definition: ATA.h:558
UInt8 ataMultiDMAModes
Definition: ATA.h:552
NumVersion ataHBAversion
Definition: ATA.h:557
UInt32 ataIOPBsize1
Definition: ATA.h:555
UInt8 ataSingleDMAModes
Definition: ATA.h:551
SInt8 ataContrlType[16]
Definition: ATA.h:556
Definition: ATA.h:479
UInt32 Count
Definition: ATA.h:482
Definition: ATA.h:569
UInt8 ataSingleDMASpeed
Definition: ATA.h:604
UInt8 atapcConfigIndex
Definition: ATA.h:603
UInt8 ataDeviceType
Definition: ATA.h:591
UInt16 ataMultiCycleTime
Definition: ATA.h:607
UInt16 ataSectorsPerCylinder
Definition: ATA.h:582
UInt8 reserved
Definition: ATA.h:579
UInt8 atapcAccessMode
Definition: ATA.h:596
UInt16 ataUltraCycleTime
Definition: ATA.h:610
UInt8 atapcStatus
Definition: ATA.h:600
UInt8 atapcVpp1
Definition: ATA.h:598
UInt8 ataPIOSpeedMode
Definition: ATA.h:578
UInt16 ataRWMultipleCount
Definition: ATA.h:581
UInt8 ataSocketType
Definition: ATA.h:586
UInt8 atapcCopy
Definition: ATA.h:602
UInt8 atapcVpp2
Definition: ATA.h:599
UInt8 atapcPin
Definition: ATA.h:601
UInt16 ataPIOCycleTime
Definition: ATA.h:606
UInt8 ataMultiDMASpeed
Definition: ATA.h:605
UInt16 Reserved1[5]
Definition: ATA.h:611
UInt16 ataSectorsPerTrack
Definition: ATA.h:584
UInt8 reserved2
Definition: ATA.h:609
UInt16 ataHeads
Definition: ATA.h:583
UInt8 ataUltraDMASpeed
Definition: ATA.h:608
UInt8 atapcVcc
Definition: ATA.h:597
UInt16 ataSocketNumber
Definition: ATA.h:585
Definition: ATA.h:505
Definition: ATA.h:533
UInt8 ataTFFeatures
Definition: ATA.h:537
OSStatus ataResult
Definition: ATA.h:535
UInt8 ataTFSector
Definition: ATA.h:539
UInt8 ataAltStatDevCnt
Definition: ATA.h:544
UInt8 ataTFCount
Definition: ATA.h:538
UInt8 ataTFCylinderLo
Definition: ATA.h:540
UInt8 ataTFSDH
Definition: ATA.h:542
UInt8 ataTFCylinderHi
Definition: ATA.h:541
UInt16 ataDataReg
Definition: ATA.h:536
UInt8 ataTFCommand
Definition: ATA.h:543
Definition: ATA.h:859
SInt32 ataDrvrContext
Definition: ATA.h:862
UInt32 ataEventRecVersion
Definition: ATA.h:864
UInt32 ataMarker
Definition: ATA.h:863
UInt16 ataRefNum
Definition: ATA.h:866
UInt16 ataPhysicalID
Definition: ATA.h:861
UInt32 ataDeviceType
Definition: ATA.h:865
Definition: ATA.h:522
UInt32 refCon
Definition: ATA.h:527
RegEntryIDPtr aimRegEntry
Definition: ATA.h:526
ATADevInfo FirstDevice
Definition: ATA.h:524
ATADevInfo SecondDevice
Definition: ATA.h:525
Definition: ATA.h:499
SInt16 atapiCommandByte[8]
Definition: ATA.h:501
Definition: ATA.h:1579
Definition: ATA.h:1571
Definition: ATA.h:616
UInt32 MsgID
Definition: ATA.h:619
Duration Timeout
Definition: ATA.h:627
ATADevConfig * devConfig
Definition: ATA.h:623
ataTaskFile ataPBTaskFile
Definition: ATA.h:625
OSStatus ataPBResult
Definition: ATA.h:637
ATAResult * result
Definition: ATA.h:620
UInt8 reserved2
Definition: ATA.h:646
SInt8 DevID
Definition: ATA.h:629
UInt32 BusID
Definition: ATA.h:628
ATAPICmdPacket packetCBD
Definition: ATA.h:626
struct ATAReqBlock * nextREQ
Definition: ATA.h:636
UInt32 connectionID
Definition: ATA.h:618
UInt8 ataPBIOSpeed
Definition: ATA.h:645
ATADataObject ioObject
Definition: ATA.h:624
ATADiagResult * DiagResult
Definition: ATA.h:621
ATABusInfo * busInfo
Definition: ATA.h:622
UInt8 ataFunctionCode
Definition: ATA.h:630
Definition: ATA.h:486
ataTaskFile * TaskFile
Definition: ATA.h:491
UInt32 actualXferCount
Definition: ATA.h:490
SInt8 ataStatusRegister
Definition: ATA.h:488
SInt8 ataErrorRegister
Definition: ATA.h:489
Definition: Components.h:266
Definition: ATA.h:694
UInt32 ataPBByteCount
Definition: ATA.h:696
Definition: MacTypes.h:638
Definition: NameRegistry.h:62
Definition: ATA.h:832
UInt16 ataPBFlags
Definition: ATA.h:843
UInt16 ataPBSemaphores
Definition: ATA.h:850
SInt16 ataPBReserved3
Definition: ATA.h:844
Ptr ataPBReserved2
Definition: ATA.h:838
OSErr ataPBResult
Definition: ATA.h:840
UInt8 ataPBReserved
Definition: ATA.h:837
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:839
SInt16 Reserved[22]
Definition: ATA.h:854
UInt16 ataPBQType
Definition: ATA.h:835
Ptr ataPBClientPtr1
Definition: ATA.h:847
UInt8 ataPBIOSpeed
Definition: ATA.h:842
UInt8 ataPBFunctionCode
Definition: ATA.h:841
Ptr ataPBClientPtr2
Definition: ATA.h:848
UInt8 ataPBVers
Definition: ATA.h:836
ataPBHeader * ataPBLink
Definition: ATA.h:834
UInt32 ataPBDeviceID
Definition: ATA.h:845
SInt32 ataPBReserved4
Definition: ATA.h:851
UInt16 ataPBState
Definition: ATA.h:849
ataIOPB * ataAbortPB
Definition: ATA.h:853
UInt32 ataPBTimeOut
Definition: ATA.h:846
Definition: ATA.h:1309
ataPBHeader * ataPBLink
Definition: ATA.h:1311
UInt32 busID
Definition: ATA.h:1332
UInt16 ataPBQType
Definition: ATA.h:1312
UInt32 ataPBDeviceID
Definition: ATA.h:1322
UInt16 ataPBState
Definition: ATA.h:1326
OSErr ataPBResult
Definition: ATA.h:1317
SInt32 ataPBReserved4
Definition: ATA.h:1328
UInt8 socketType
Definition: ATA.h:1334
ProcPtr ataPBCallbackPtr
Definition: ATA.h:1316
UInt8 ataPBIOSpeed
Definition: ATA.h:1319
SInt16 ataPBReserved3
Definition: ATA.h:1321
UInt8 ataPBFunctionCode
Definition: ATA.h:1318
Ptr ataPBClientPtr1
Definition: ATA.h:1324
Ptr iconData
Definition: ATA.h:1335
UInt16 ataPBFlags
Definition: ATA.h:1320
UInt8 flags
Definition: ATA.h:1333
UInt32 ataPBTimeOut
Definition: ATA.h:1323
RegEntryIDPtr ataNameRegEntry
Definition: ATA.h:1330
UInt8 ataPBVers
Definition: ATA.h:1313
Ptr stringData
Definition: ATA.h:1336
CFragConnectionID connID
Definition: ATA.h:1331
Ptr ataPBReserved2
Definition: ATA.h:1315
Ptr ataPBClientPtr2
Definition: ATA.h:1325
UInt16 ataPBSemaphores
Definition: ATA.h:1327
UInt8 ataPBReserved
Definition: ATA.h:1314
Definition: ATA.h:741
UInt16 ataPBSemaphores
Definition: ATA.h:759
UInt16 ataPBState
Definition: ATA.h:758
Ptr ataPBClientPtr1
Definition: ATA.h:756
UInt16 ataMaxIOpbSize
Definition: ATA.h:766
UInt16 ataReserved1
Definition: ATA.h:763
UInt8 ataMultiDMAModes
Definition: ATA.h:777
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:748
UInt8 ataSingleDMAModes
Definition: ATA.h:776
SInt8 ataContrlFamily[16]
Definition: ATA.h:781
UInt8 ataPBReserved
Definition: ATA.h:746
UInt8 ataPIOModes
Definition: ATA.h:774
UInt32 ataFeatureFlags
Definition: ATA.h:767
UInt32 ataHBAPrivSize
Definition: ATA.h:772
UInt32 ataReserved4[4]
Definition: ATA.h:778
NumVersion ataHBAversion
Definition: ATA.h:785
UInt16 ataEngineCount
Definition: ATA.h:762
SInt8 ataContrlType[16]
Definition: ATA.h:782
UInt32 ataPBTimeOut
Definition: ATA.h:755
UInt8 ataPBIOSpeed
Definition: ATA.h:751
UInt16 ataPBQType
Definition: ATA.h:744
UInt8 ataHBAslotNum
Definition: ATA.h:787
OSErr ataPBResult
Definition: ATA.h:749
SInt8 ataXPTversion[4]
Definition: ATA.h:783
SInt8 ataHBAVendor[16]
Definition: ATA.h:780
UInt8 ataUltraDMAModes
Definition: ATA.h:775
UInt32 ataHBAPrivPtr
Definition: ATA.h:771
ataPBHeader * ataPBLink
Definition: ATA.h:743
UInt16 ataReserved7
Definition: ATA.h:788
UInt32 ataDataTypes
Definition: ATA.h:764
UInt8 ataHBAInquiry
Definition: ATA.h:769
UInt32 ataAsyncFlags
Definition: ATA.h:773
UInt16 ataReserved2
Definition: ATA.h:770
Ptr ataPBReserved2
Definition: ATA.h:747
UInt16 ataPBFlags
Definition: ATA.h:752
UInt8 ataHBAslotType
Definition: ATA.h:786
SInt32 ataPBReserved4
Definition: ATA.h:760
UInt16 ataIOpbSize
Definition: ATA.h:765
Ptr ataPBClientPtr2
Definition: ATA.h:757
UInt8 ataPBFunctionCode
Definition: ATA.h:750
UInt32 ataPBDeviceID
Definition: ATA.h:754
UInt8 ataVersionNum
Definition: ATA.h:768
SInt8 ataReserved5[16]
Definition: ATA.h:779
UInt8 ataPBVers
Definition: ATA.h:745
SInt8 ataReserved6[4]
Definition: ATA.h:784
SInt16 ataPBReserved3
Definition: ATA.h:753
UInt32 ataReserved8
Definition: ATA.h:789
Definition: ATA.h:1184
UInt8 reserved2
Definition: ATA.h:1257
UInt16 ataPBSemaphores
Definition: ATA.h:1202
UInt8 atapcCopy
Definition: ATA.h:1250
UInt16 ataPBState
Definition: ATA.h:1201
Ptr ataPBReserved2
Definition: ATA.h:1190
OSErr ataPBResult
Definition: ATA.h:1192
UInt8 ataMultiDMASpeed
Definition: ATA.h:1253
UInt16 ataPBFlags
Definition: ATA.h:1195
UInt16 ataUltraCycleTime
Definition: ATA.h:1258
UInt8 ataDeviceType
Definition: ATA.h:1239
UInt8 atapcStatus
Definition: ATA.h:1248
UInt8 ataPIOSpeedMode
Definition: ATA.h:1213
UInt16 atapcValid
Definition: ATA.h:1215
SInt32 ataPBReserved4
Definition: ATA.h:1203
ataPBHeader * ataPBLink
Definition: ATA.h:1186
SInt32 ataConfigSetting
Definition: ATA.h:1205
UInt16 ataSectorsPerTrack
Definition: ATA.h:1230
UInt16 ataSectorsPerCylinder
Definition: ATA.h:1228
UInt8 ataSocketType
Definition: ATA.h:1234
UInt32 ataPBTimeOut
Definition: ATA.h:1198
UInt8 atapcPin
Definition: ATA.h:1249
UInt32 ataPBDeviceID
Definition: ATA.h:1197
UInt16 Reserved1[5]
Definition: ATA.h:1259
UInt8 ataPBReserved
Definition: ATA.h:1189
UInt8 ataPBVers
Definition: ATA.h:1188
UInt16 ataPIOCycleTime
Definition: ATA.h:1254
UInt16 ataSocketNumber
Definition: ATA.h:1231
UInt16 ataPBQType
Definition: ATA.h:1187
UInt8 ataPBIOSpeed
Definition: ATA.h:1194
UInt16 ataMultiCycleTime
Definition: ATA.h:1255
Ptr ataPBClientPtr2
Definition: ATA.h:1200
UInt8 ataSingleDMASpeed
Definition: ATA.h:1252
Ptr ataPBClientPtr1
Definition: ATA.h:1199
UInt16 ataRWMultipleCount
Definition: ATA.h:1227
UInt8 atapcVpp2
Definition: ATA.h:1247
UInt8 Reserved3
Definition: ATA.h:1214
UInt8 ataPBFunctionCode
Definition: ATA.h:1193
UInt16 ataHeads
Definition: ATA.h:1229
SInt16 ataPBReserved3
Definition: ATA.h:1196
UInt8 atapcAccessMode
Definition: ATA.h:1244
UInt8 atapcConfigIndex
Definition: ATA.h:1251
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:1191
UInt8 atapcVcc
Definition: ATA.h:1245
UInt8 ataUltraDMASpeed
Definition: ATA.h:1256
UInt8 atapcVpp1
Definition: ATA.h:1246
Definition: ATA.h:458
UInt8 busNum
Definition: ATA.h:461
UInt8 devNum
Definition: ATA.h:460
Definition: ATA.h:958
SInt16 ataDrvrRefNum
Definition: ATA.h:979
UInt32 ataPBDeviceID
Definition: ATA.h:971
UInt8 ataPBIOSpeed
Definition: ATA.h:968
ATAClientUPP ataEventHandler
Definition: ATA.h:984
Ptr ataPBClientPtr2
Definition: ATA.h:974
SInt32 ataEventMask
Definition: ATA.h:986
UInt16 ataPBState
Definition: ATA.h:975
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:965
SInt16 ataPBReserved3
Definition: ATA.h:970
UInt16 ataPBSemaphores
Definition: ATA.h:976
SInt16 Reserved[14]
Definition: ATA.h:987
OSErr ataPBResult
Definition: ATA.h:966
UInt8 ataPBReserved
Definition: ATA.h:963
SInt32 ataPBReserved4
Definition: ATA.h:977
UInt8 ataPBFunctionCode
Definition: ATA.h:967
Ptr ataPBClientPtr1
Definition: ATA.h:973
UInt16 ataDeviceNextID
Definition: ATA.h:981
SInt32 ataDrvrContext
Definition: ATA.h:985
Ptr ataPBReserved2
Definition: ATA.h:964
SInt16 ataDrvrLoadPriv
Definition: ATA.h:982
UInt16 ataPBFlags
Definition: ATA.h:969
ataPBHeader * ataPBLink
Definition: ATA.h:960
UInt16 ataPBQType
Definition: ATA.h:961
UInt8 ataPBVers
Definition: ATA.h:962
UInt32 ataPBTimeOut
Definition: ATA.h:972
UInt16 ataDrvrFlags
Definition: ATA.h:980
Definition: ATA.h:1369
UInt16 ataPBFlags
Definition: ATA.h:1380
Ptr ataPBClientPtr1
Definition: ATA.h:1384
UInt8 ataPBFunctionCode
Definition: ATA.h:1378
UInt32 ataPBDeviceID
Definition: ATA.h:1382
SInt32 ataPBReserved4
Definition: ATA.h:1388
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:1376
ataPBHeader * ataPBLink
Definition: ATA.h:1371
Ptr ataPBReserved2
Definition: ATA.h:1375
UInt8 ataPBVers
Definition: ATA.h:1373
UInt16 ataPBSemaphores
Definition: ATA.h:1387
Ptr ataPBClientPtr2
Definition: ATA.h:1385
UInt8 ataPBReserved
Definition: ATA.h:1374
UInt16 Reserved[24]
Definition: ATA.h:1390
SInt16 ataPBReserved3
Definition: ATA.h:1381
UInt8 ataPBIOSpeed
Definition: ATA.h:1379
UInt32 ataPBTimeOut
Definition: ATA.h:1383
UInt16 ataPBState
Definition: ATA.h:1386
UInt16 ataPBQType
Definition: ATA.h:1372
OSErr ataPBResult
Definition: ATA.h:1377
Definition: ATA.h:701
OSErr ataPBResult
Definition: ATA.h:709
SInt8 ataPBStatusRegister
Definition: ATA.h:722
UInt16 ataPBSemaphores
Definition: ATA.h:719
UInt8 ataPBFunctionCode
Definition: ATA.h:710
UInt16 ataPBState
Definition: ATA.h:718
Ptr ataPBClientPtr2
Definition: ATA.h:717
SInt32 ataPBReserved4
Definition: ATA.h:720
Ptr ataPBReserved2
Definition: ATA.h:707
UInt8 * ataPBBuffer
Definition: ATA.h:728
UInt32 ataPBTimeOut
Definition: ATA.h:715
UInt8 ataPBIOSpeed
Definition: ATA.h:711
UInt32 ataPBByteCount
Definition: ATA.h:729
ataPBHeader * ataPBLink
Definition: ATA.h:703
SInt8 ataPBErrorRegister
Definition: ATA.h:723
SInt16 ataPBReserved3
Definition: ATA.h:713
UInt32 ataPBReserved6
Definition: ATA.h:731
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:708
UInt16 ataPBFlags
Definition: ATA.h:712
UInt32 ataPBDeviceID
Definition: ATA.h:714
SInt16 ataPBReserved5
Definition: ATA.h:725
ATAPICmdPacket * ataPBPacketPtr
Definition: ATA.h:733
UInt16 ataPBQType
Definition: ATA.h:704
UInt8 ataPBReserved
Definition: ATA.h:706
UInt32 ataPBActualTxCount
Definition: ATA.h:730
Ptr ataPBClientPtr1
Definition: ATA.h:716
ataTaskFile ataPBTaskFile
Definition: ATA.h:732
UInt8 ataPBVers
Definition: ATA.h:705
UInt32 ataPBLogicalBlockSize
Definition: ATA.h:726
SInt16 ataPBReserved7[6]
Definition: ATA.h:735
Definition: ATA.h:1105
Ptr ataPBClientPtr1
Definition: ATA.h:1120
UInt16 Reserved2[12]
Definition: ATA.h:1128
Ptr ataPBClientPtr2
Definition: ATA.h:1121
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:1112
UInt8 ataPBVers
Definition: ATA.h:1109
OSErr ataPBResult
Definition: ATA.h:1113
Ptr ataPBReserved2
Definition: ATA.h:1111
UInt8 * ataPBBuffer
Definition: ATA.h:1127
UInt16 ataPBSemaphores
Definition: ATA.h:1123
SInt16 ataPBReserved3
Definition: ATA.h:1117
SInt32 ataPBReserved4
Definition: ATA.h:1124
UInt8 ataPBIOSpeed
Definition: ATA.h:1115
UInt8 ataPBReserved
Definition: ATA.h:1110
UInt16 Reserved1[4]
Definition: ATA.h:1126
UInt16 ataPBFlags
Definition: ATA.h:1116
ataPBHeader * ataPBLink
Definition: ATA.h:1107
UInt32 ataPBTimeOut
Definition: ATA.h:1119
UInt16 ataPBState
Definition: ATA.h:1122
UInt32 ataPBDeviceID
Definition: ATA.h:1118
UInt16 ataPBQType
Definition: ATA.h:1108
SInt16 Reserved3[6]
Definition: ATA.h:1129
UInt8 ataPBFunctionCode
Definition: ATA.h:1114
Definition: ATA.h:1271
SInt8 * ataLocationStringPtr
Definition: ATA.h:1297
SInt8 * ataLocationIconPtr
Definition: ATA.h:1296
UInt16 ataPBQType
Definition: ATA.h:1274
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:1278
UInt32 ataPBTimeOut
Definition: ATA.h:1285
UInt16 ataPBSemaphores
Definition: ATA.h:1289
SInt16 ataPBReserved3
Definition: ATA.h:1283
SInt32 ataPBReserved4
Definition: ATA.h:1290
UInt8 ataPBReserved
Definition: ATA.h:1276
SInt16 ataIconReserved
Definition: ATA.h:1295
Ptr ataPBReserved2
Definition: ATA.h:1277
UInt16 Reserved1[18]
Definition: ATA.h:1298
UInt8 ataPBFunctionCode
Definition: ATA.h:1280
UInt32 ataPBDeviceID
Definition: ATA.h:1284
UInt8 ataPBVers
Definition: ATA.h:1275
Ptr ataPBClientPtr1
Definition: ATA.h:1286
UInt8 ataPBIOSpeed
Definition: ATA.h:1281
SInt16 ataIconType
Definition: ATA.h:1292
UInt16 ataPBFlags
Definition: ATA.h:1282
OSErr ataPBResult
Definition: ATA.h:1279
UInt16 ataPBState
Definition: ATA.h:1288
Ptr ataPBClientPtr2
Definition: ATA.h:1287
ataPBHeader * ataPBLink
Definition: ATA.h:1273
Definition: ATA.h:794
UInt32 ataPBDeviceID
Definition: ATA.h:807
UInt16 ataPBState
Definition: ATA.h:811
UInt8 ataPioModes
Definition: ATA.h:820
UInt16 ataPBQType
Definition: ATA.h:797
NumVersion ataMgrVersion
Definition: ATA.h:815
ataPBHeader * ataPBLink
Definition: ATA.h:796
UInt16 ataPBFlags
Definition: ATA.h:805
UInt16 ataBusCnt
Definition: ATA.h:818
Ptr ataPBClientPtr2
Definition: ATA.h:810
UInt32 ataPBTimeOut
Definition: ATA.h:808
UInt8 ataPBVers
Definition: ATA.h:798
Ptr ataPBReserved2
Definition: ATA.h:800
UInt8 ataSingleDMAModes
Definition: ATA.h:824
Ptr ataPBClientPtr1
Definition: ATA.h:809
SInt16 Reserved[16]
Definition: ATA.h:826
OSErr ataPBResult
Definition: ATA.h:802
UInt8 Reserved1
Definition: ATA.h:817
SInt32 ataPBReserved4
Definition: ATA.h:813
UInt16 ataIOClkResolution
Definition: ATA.h:823
UInt8 ataPBIOSpeed
Definition: ATA.h:804
UInt8 ataMultiDMAModes
Definition: ATA.h:825
UInt16 ataDevCnt
Definition: ATA.h:819
SInt16 ataPBReserved3
Definition: ATA.h:806
UInt8 Reserved2
Definition: ATA.h:821
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:801
UInt8 ataPBFunctionCode
Definition: ATA.h:803
UInt16 ataPBSemaphores
Definition: ATA.h:812
UInt8 ataMgrPBVers
Definition: ATA.h:816
UInt8 ataPBReserved
Definition: ATA.h:799
Definition: ATA.h:992
SInt16 Reserved[22]
Definition: ATA.h:1014
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:999
Ptr ataPBClientPtr1
Definition: ATA.h:1007
UInt16 ataPBFlags
Definition: ATA.h:1003
SInt32 ataModifiedEventMask
Definition: ATA.h:1013
UInt8 ataPBIOSpeed
Definition: ATA.h:1002
SInt32 ataPBReserved4
Definition: ATA.h:1011
UInt8 ataPBReserved
Definition: ATA.h:997
UInt8 ataPBVers
Definition: ATA.h:996
UInt32 ataPBDeviceID
Definition: ATA.h:1005
Ptr ataPBClientPtr2
Definition: ATA.h:1008
UInt16 ataPBSemaphores
Definition: ATA.h:1010
UInt16 ataPBQType
Definition: ATA.h:995
UInt32 ataPBTimeOut
Definition: ATA.h:1006
OSErr ataPBResult
Definition: ATA.h:1000
UInt8 ataPBFunctionCode
Definition: ATA.h:1001
UInt16 ataPBState
Definition: ATA.h:1009
SInt16 ataPBReserved3
Definition: ATA.h:1004
ataPBHeader * ataPBLink
Definition: ATA.h:994
Ptr ataPBReserved2
Definition: ATA.h:998
Definition: ATA.h:669
struct ataPBHeader * ataPBLink
Definition: ATA.h:671
UInt32 ataPBTimeOut
Definition: ATA.h:683
Ptr ataPBClientPtr1
Definition: ATA.h:684
UInt8 ataPBIOSpeed
Definition: ATA.h:679
UInt8 ataPBReserved
Definition: ATA.h:674
UInt8 ataPBVers
Definition: ATA.h:673
UInt8 ataPBFunctionCode
Definition: ATA.h:678
UInt32 ataPBDeviceID
Definition: ATA.h:682
SInt16 ataPBReserved3
Definition: ATA.h:681
Ptr ataPBClientPtr2
Definition: ATA.h:685
UInt16 ataPBState
Definition: ATA.h:686
UInt16 ataPBFlags
Definition: ATA.h:680
UInt16 ataPBSemaphores
Definition: ATA.h:687
SInt32 ataPBReserved4
Definition: ATA.h:688
Ptr ataPBReserved2
Definition: ATA.h:675
OSErr ataPBResult
Definition: ATA.h:677
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:676
UInt16 ataPBQType
Definition: ATA.h:672
Definition: ATA.h:1051
UInt8 ataAltSDevCReg
Definition: ATA.h:1097
UInt16 ataPBState
Definition: ATA.h:1068
SInt32 ataPBReserved4
Definition: ATA.h:1070
UInt8 ataPBIOSpeed
Definition: ATA.h:1061
UInt8 ataPBReserved
Definition: ATA.h:1056
ataRegValueUnion ataRegValue
Definition: ATA.h:1082
ataPBHeader * ataPBLink
Definition: ATA.h:1053
UInt8 ataPBVers
Definition: ATA.h:1055
UInt16 ataPBQType
Definition: ATA.h:1054
UInt16 ataRegSelect
Definition: ATA.h:1072
UInt16 ataPBFlags
Definition: ATA.h:1062
UInt8 ataPBFunctionCode
Definition: ATA.h:1060
Ptr ataPBClientPtr2
Definition: ATA.h:1067
ataTaskFile ataRegisterImage
Definition: ATA.h:1096
OSErr ataPBResult
Definition: ATA.h:1059
UInt32 ataPBTimeOut
Definition: ATA.h:1065
UInt32 ataPBDeviceID
Definition: ATA.h:1064
Ptr ataPBClientPtr1
Definition: ATA.h:1066
UInt8 Reserved3
Definition: ATA.h:1099
ATACallbackUPP ataPBCallbackPtr
Definition: ATA.h:1058
SInt16 Reserved[16]
Definition: ATA.h:1100
UInt16 ataRegMask
Definition: ATA.h:1084
UInt16 ataPBSemaphores
Definition: ATA.h:1069
Ptr ataPBReserved2
Definition: ATA.h:1057
SInt16 ataPBReserved3
Definition: ATA.h:1063
Definition: ATA.h:1341
RegEntryIDPtr ataNameRegEntry
Definition: ATA.h:1363
OSErr ataPBResult
Definition: ATA.h:1349
SInt32 ataPBReserved4
Definition: ATA.h:1360
UInt16 ataPBFlags
Definition: ATA.h:1352
UInt16 ataPBState
Definition: ATA.h:1358
Ptr ataPBClientPtr2
Definition: ATA.h:1357
UInt8 ataPBVers
Definition: ATA.h:1345
UInt32 busID
Definition: ATA.h:1362
ataPBHeader * ataPBLink
Definition: ATA.h:1343
ProcPtr ataPBCallbackPtr
Definition: ATA.h:1348
UInt16 ataPBQType
Definition: ATA.h:1344
UInt32 ataPBDeviceID
Definition: ATA.h:1354
UInt16 ataPBSemaphores
Definition: ATA.h:1359
UInt8 ataPBFunctionCode
Definition: ATA.h:1350
SInt16 ataPBReserved3
Definition: ATA.h:1353
UInt32 ataPBTimeOut
Definition: ATA.h:1355
Ptr ataPBClientPtr1
Definition: ATA.h:1356
UInt8 ataPBIOSpeed
Definition: ATA.h:1351
Ptr ataPBReserved2
Definition: ATA.h:1347
UInt8 ataPBReserved
Definition: ATA.h:1346
Definition: ATA.h:221
UInt16 ataTFCylinder
Definition: ATA.h:226
UInt8 ataTFSDH
Definition: ATA.h:227
UInt8 ataTFReserved
Definition: ATA.h:225
UInt8 ataTFSector
Definition: ATA.h:224
UInt8 ataTFCount
Definition: ATA.h:223
UInt8 ataTFCommand
Definition: ATA.h:228
Definition: ATA.h:1394
ataDrvrRegister ataDRParamBlock
Definition: ATA.h:1399
ataMgrInquiry ataMIParamBlock
Definition: ATA.h:1397
ataBusInquiry ataBIParamBlock
Definition: ATA.h:1396
ataModifyEventMask ataMEParamBlock
Definition: ATA.h:1401
ataDevConfiguration ataDCParamBlock
Definition: ATA.h:1405
ataIdentify ataDIParamBlock
Definition: ATA.h:1403
ataAbort ataAbortParamBlock
Definition: ATA.h:1398
ataRegAccess ataRAParamBlock
Definition: ATA.h:1402
ataGeneric ataGenericParamBlock
Definition: ATA.h:1413
ataLocationData ataLDParamBlock
Definition: ATA.h:1406
Definition: ATA.h:1044
UInt16 ataWordRegValue
Definition: ATA.h:1046