⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wnaspi32.h

📁 PS2游戏硬盘直灌(HDL)的Windows下VC的源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
   *               %%% Commands for all Device Types %%%   ****************************************************************************/#define SCSI_CHANGE_DEF 0x40                    /* Change Definition (Optional) */#define SCSI_COMPARE    0x39                    /* Compare (O) */#define SCSI_COPY       0x18                    /* Copy (O) */#define SCSI_COP_VERIFY 0x3A                    /* Copy and Verify (O) */#define SCSI_INQUIRY    0x12                    /* Inquiry (MANDATORY) */#define SCSI_LOG_SELECT 0x4C                    /* Log Select (O) */#define SCSI_LOG_SENSE  0x4D                    /* Log Sense (O) */#define SCSI_MODE_SEL6  0x15                    /* Mode Select 6-byte (Device Specific) */#define SCSI_MODE_SEL10 0x55                    /* Mode Select 10-byte (Device Specific) */#define SCSI_MODE_SEN6  0x1A                    /* Mode Sense 6-byte (Device Specific) */#define SCSI_MODE_SEN10 0x5A                    /* Mode Sense 10-byte (Device Specific) */#define SCSI_READ_BUFF  0x3C                    /* Read Buffer (O) */#define SCSI_REQ_SENSE  0x03                    /* Request Sense (MANDATORY) */#define SCSI_SEND_DIAG  0x1D                    /* Send Diagnostic (O) */#define SCSI_TST_U_RDY  0x00                    /* Test Unit Ready (MANDATORY) */#define SCSI_WRITE_BUFF 0x3B                    /* Write Buffer (O) */  /****************************************************************************   *            %%% Commands Unique to Direct Access Devices %%%   ****************************************************************************/#define SCSI_COMPARE    0x39                    /* Compare (O) */#define SCSI_FORMAT     0x04                    /* Format Unit (MANDATORY) */#define SCSI_LCK_UN_CAC 0x36                    /* Lock Unlock Cache (O) */#define SCSI_PREFETCH   0x34                    /* Prefetch (O) */#define SCSI_MED_REMOVL 0x1E                    /* Prevent/Allow medium Removal (O) */#define SCSI_READ6      0x08                    /* Read 6-byte (MANDATORY) */#define SCSI_READ10     0x28                    /* Read 10-byte (MANDATORY) */#define SCSI_RD_CAPAC   0x25                    /* Read Capacity (MANDATORY) */#define SCSI_RD_DEFECT  0x37                    /* Read Defect Data (O) */#define SCSI_READ_LONG  0x3E                    /* Read Long (O) */#define SCSI_REASS_BLK  0x07                    /* Reassign Blocks (O) */#define SCSI_RCV_DIAG   0x1C                    /* Receive Diagnostic Results (O) */#define SCSI_RELEASE    0x17                    /* Release Unit (MANDATORY) */#define SCSI_REZERO     0x01                    /* Rezero Unit (O) */#define SCSI_SRCH_DAT_E 0x31                    /* Search Data Equal (O) */#define SCSI_SRCH_DAT_H 0x30                    /* Search Data High (O) */#define SCSI_SRCH_DAT_L 0x32                    /* Search Data Low (O) */#define SCSI_SEEK6      0x0B                    /* Seek 6-Byte (O) */#define SCSI_SEEK10     0x2B                    /* Seek 10-Byte (O) */#define SCSI_SEND_DIAG  0x1D                    /* Send Diagnostics (MANDATORY) */#define SCSI_SET_LIMIT  0x33                    /* Set Limits (O) */#define SCSI_START_STP  0x1B                    /* Start/Stop Unit (O) */#define SCSI_SYNC_CACHE 0x35                    /* Synchronize Cache (O) */#define SCSI_VERIFY     0x2F                    /* Verify (O) */#define SCSI_WRITE6     0x0A                    /* Write 6-Byte (MANDATORY) */#define SCSI_WRITE10    0x2A                    /* Write 10-Byte (MANDATORY) */#define SCSI_WRT_VERIFY 0x2E                    /* Write and Verify (O) */#define SCSI_WRITE_LONG 0x3F                    /* Write Long (O) */#define SCSI_WRITE_SAME 0x41                    /* Write Same (O) */  /******************************************************************************   *          %%% SRB - ABORT AN SRB - SC_ABORT_SRB (3) %%%   ******************************************************************************/  typedef struct                                /* Offset */  {                                             /* HX/DEC */    BYTE        SRB_Cmd;                        /* 00/000 ASPI command code = SC_ABORT_SRB */    BYTE        SRB_Status;                     /* 01/001 ASPI command status byte */    BYTE        SRB_HaId;                       /* 02/002 ASPI host adapter number */    BYTE        SRB_Flags;                      /* 03/003 Reserved */    DWORD       SRB_Hdr_Rsvd;                   /* 04/004 Reserved */    VOID        FAR *SRB_ToAbort;               /* 08/008 Pointer to SRB to abort */  } PACK SRB_Abort, *PSRB_Abort, FAR *LPSRB_Abort;  /******************************************************************************   *          %%% SRB - BUS DEVICE RESET - SC_RESET_DEV (4) %%%   ******************************************************************************/  typedef struct                                /* Offset */  {                                             /* HX/DEC */    BYTE        SRB_Cmd;                        /* 00/000 ASPI command code = SC_RESET_DEV */    BYTE        SRB_Status;                     /* 01/001 ASPI command status byte */    BYTE        SRB_HaId;                       /* 02/002 ASPI host adapter number */    BYTE        SRB_Flags;                      /* 03/003 ASPI request flags */    DWORD       SRB_Hdr_Rsvd;                   /* 04/004 Reserved */    BYTE        SRB_Target;                     /* 08/008 Target's SCSI ID */    BYTE        SRB_Lun;                        /* 09/009 Target's LUN number */    BYTE        SRB_Rsvd1[12];                  /* 0A/010 Reserved for Alignment */    BYTE        SRB_HaStat;                     /* 16/022 Host Adapter Status */    BYTE        SRB_TargStat;                   /* 17/023 Target Status */    VOID        FAR *SRB_PostProc;              /* 18/024 Post routine */    BYTE        SRB_Rsvd2[36];                  /* 1C/028 Reserved, MUST = 0 */  } PACK SRB_BusDeviceReset, *PSRB_BusDeviceReset, FAR *LPSRB_BusDeviceReset;  /******************************************************************************   *          %%% SRB - GET DISK INFORMATION - SC_GET_DISK_INFO %%%   ******************************************************************************/  typedef struct                                /* Offset */  {                                             /* HX/DEC */    BYTE        SRB_Cmd;                        /* 00/000 ASPI command code = SC_GET_DISK_INFO */    BYTE        SRB_Status;                     /* 01/001 ASPI command status byte */    BYTE        SRB_HaId;                       /* 02/002 ASPI host adapter number */    BYTE        SRB_Flags;                      /* 03/003 Reserved, MUST = 0 */    DWORD       SRB_Hdr_Rsvd;                   /* 04/004 Reserved, MUST = 0 */    BYTE        SRB_Target;                     /* 08/008 Target's SCSI ID */    BYTE        SRB_Lun;                        /* 09/009 Target's LUN number */    BYTE        SRB_DriveFlags;                 /* 0A/010 Driver flags */    BYTE        SRB_Int13HDriveInfo;            /* 0B/011 Host Adapter Status */    BYTE        SRB_Heads;                      /* 0C/012 Preferred number of heads translation */    BYTE        SRB_Sectors;                    /* 0D/013 Preferred numb of sectors translation */    BYTE        SRB_Rsvd1[10];                  /* 0E/014 Reserved, MUST = 0 */  } PACK SRB_GetDiskInfo, *PSRB_GetDiskInfo, FAR *LPSRB_GetDiskInfo;  /******************************************************************************   *          %%%  SRB - RESCAN SCSI BUS(ES) ON SCSIPORT %%%   ******************************************************************************/  typedef struct                                /* Offset */  {                                             /* HX/DEC */    BYTE        SRB_Cmd;                        /* 00/000 ASPI command code = SC_RESCAN_SCSI_BUS */    BYTE        SRB_Status;                     /* 01/001 ASPI command status byte */    BYTE        SRB_HaId;                       /* 02/002 ASPI host adapter number */    BYTE        SRB_Flags;                      /* 03/003 Reserved, MUST = 0 */    DWORD       SRB_Hdr_Rsvd;                   /* 04/004 Reserved, MUST = 0 */  } PACK SRB_RescanPort, *PSRB_RescanPort, FAR *LPSRB_RescanPort;  /******************************************************************************   *          %%% SRB - GET/SET TARGET TIMEOUTS %%%   ******************************************************************************/  typedef struct                                /* Offset */  {                                             /* HX/DEC */    BYTE        SRB_Cmd;                        /* 00/000 ASPI command code = SC_GETSET_TIMEOUTS */    BYTE        SRB_Status;                     /* 01/001 ASPI command status byte */    BYTE        SRB_HaId;                       /* 02/002 ASPI host adapter number */    BYTE        SRB_Flags;                      /* 03/003 ASPI request flags */    DWORD       SRB_Hdr_Rsvd;                   /* 04/004 Reserved, MUST = 0 */    BYTE        SRB_Target;                     /* 08/008 Target's SCSI ID */    BYTE        SRB_Lun;                        /* 09/009 Target's LUN number */    DWORD       SRB_Timeout;                    /* 0A/010 Timeout in half seconds */  } PACK SRB_GetSetTimeouts, *PSRB_GetSetTimeouts, FAR *LPSRB_GetSetTimeouts;  /******************************************************************************   *          %%% ASPIBUFF - Structure For Controllng I/O Buffers %%%   ******************************************************************************/  typedef struct tag_ASPI32BUFF                 /* Offset */  {                                             /* HX/DEC */    PBYTE                   AB_BufPointer;      /* 00/000 Pointer to the ASPI allocated buffer */    DWORD                   AB_BufLen;          /* 04/004 Length in bytes of the buffer */    DWORD                   AB_ZeroFill;        /* 08/008 Flag set to 1 if buff should be zeroed */    DWORD                   AB_Reserved;        /* 0C/012 Reserved */  } PACK ASPI32BUFF, *PASPI32BUFF, FAR *LPASPI32BUFF;  /******************************************************************************   *          %%% PROTOTYPES - User Callable ASPI for Win32 Functions %%%   ******************************************************************************/  typedef void *LPSRB;#if defined (__BORLANDC__)  DWORD _import GetASPI32SupportInfo (void);  DWORD _import SendASPI32Command (LPSRB);  BOOL _import GetASPI32Buffer (PASPI32BUFF);  BOOL _import FreeASPI32Buffer (PASPI32BUFF);  BOOL _import TranslateASPI32Address (PDWORD, PDWORD);#elif defined (_MSC_VER)__declspec(dllimport) DWORD GetASPI32SupportInfo (void);__declspec(dllimport) DWORD SendASPI32Command (LPSRB);__declspec(dllimport) BOOL GetASPI32Buffer (PASPI32BUFF);__declspec(dllimport) BOOL FreeASPI32Buffer (PASPI32BUFF);__declspec(dllimport) BOOL TranslateASPI32Address (PDWORD, PDWORD);#elseextern DWORD GetASPI32SupportInfo (void);extern DWORD GetASPI32Command (LPSRB);extern BOOL GetASPI32Buffer (PASPI32BUFF);extern BOOL FreeASPI32Buffer (PASPI32BUFF);extern BOOL TranslateASPI32Address (PDWORD, PDWORD);#endif/* * Restore compiler default packing and close off the C declarations. */#ifdef __BORLANDC__#pragma option -a.#endif#ifdef _MSC_VER#pragma pack()#endif#ifdef __cplusplus}#endif#endif /* __WNASPI32_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -