#ifndef _ATAPI_H_\r
#define _ATAPI_H_\r
\r
+#pragma pack(1)\r
+\r
///\r
/// ATAPI_IDENTIFY_DATA is defined in ATA-6\r
///\r
UINT8 SKSV : 1;\r
UINT8 sense_key_specific_16;\r
UINT8 sense_key_specific_17;\r
- ///\r
- /// Followed by additional sense bytes.\r
- /// the sizeof (ATAPI_REQUEST_SENSE_DATA) is 254, \r
- /// since allocation_length is one byte in ATAPI_INQUIRY_CMD.\r
- ///\r
- UINT8 additional_sense_bytes_18_253[253 - 18 + 1];\r
} ATAPI_REQUEST_SENSE_DATA;\r
\r
-//\r
-// The followings are defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
-//\r
-\r
///\r
-/// READ CAPACITY Data \r
+/// READ CAPACITY Data, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 LastLba3;\r
\r
///\r
/// Capacity List Header + Current/Maximum Capacity Descriptor,\r
+/// defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 reserved_0;\r
} ATAPI_READ_FORMAT_CAPACITY_DATA;\r
\r
///\r
-/// Test Unit Ready Command\r
+/// Test Unit Ready Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
} ATAPI_TEST_UNIT_READY_CMD;\r
\r
///\r
-/// INQUIRY Command\r
+/// INQUIRY Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
} ATAPI_INQUIRY_CMD;\r
\r
///\r
-/// REQUEST SENSE Command\r
+/// REQUEST SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
} ATAPI_REQUEST_SENSE_CMD;\r
\r
///\r
-/// READ (10) Command\r
+/// READ (10) Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
} ATAPI_READ10_CMD;\r
\r
///\r
-/// READ Format Capacity Command\r
+/// READ Format Capacity Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
} ATAPI_READ_FORMAT_CAP_CMD;\r
\r
///\r
-/// MODE SENSE Command\r
+/// MODE SENSE Command, defined in SFF-8070i(ATAPI Removable Rewritable Specification)\r
///\r
typedef struct {\r
UINT8 opcode;\r
ATAPI_READ_FORMAT_CAP_CMD ReadFormatCapacity;\r
} ATAPI_PACKET_COMMAND;\r
\r
+#pragma pack()\r
+\r
\r
#define ATAPI_MAX_DMA_EXT_CMD_SECTORS 0x10000\r
#define ATAPI_MAX_DMA_CMD_SECTORS 0x100\r
#define ATA_CMD_STANDBY_ALIAS 0xe2 ///< defined in ATA-6\r
#define ATA_CMD_STANDBY_IMMEDIATE 0x94 ///< defined in ATA-3\r
#define ATA_CMD_STANDBY_IMMEDIATE_ALIAS 0xe0 ///< defined in ATA-6\r
-///\r
-/// S.M.A.R.T\r
-///\r
+//\r
+// S.M.A.R.T\r
+//\r
#define ATA_CMD_SMART 0xb0\r
#define ATA_CONSTANT_C2 0xc2\r
#define ATA_CONSTANT_4F 0x4f\r
#define ATA_SMART_ENABLE_OPERATION 0xd8\r
#define ATA_SMART_RETURN_STATUS 0xda\r
\r
-///\r
-/// Class 4: DMA Command\r
-///\r
+//\r
+// Class 4: DMA Command\r
+//\r
#define ATA_CMD_READ_DMA 0xc8 ///< defined in ATA-6\r
#define ATA_CMD_READ_DMA_WITH_RETRY 0xc9 ///< defined in ATA-4\r
#define ATA_CMD_READ_DMA_EXT 0x25 ///< defined in ATA-6\r