#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define ErrorOffset 256 pascal SInt16 ataManager(ataPB *pb); enum { kATAtimeout = 3000 /* 3 seconds */ }; int open_drive(UInt32 deviceID); UInt32 ReadData(SInt64 offset, UInt32 count, UInt8 *buffer); UInt32 WriteData(SInt64 offset, UInt32 count, UInt8 *buffer); UInt64 GetDriveSize(); OSErr UnlockDrive(void);