📄 halscsi.h
字号:
/****************************************************************
* Viaon Technology (Suzhou) Co.,Ltd
*
* Copyright 2007, Viaon Technology (Suzhou) Co.,Ltd,Suzhou,China
* All rights reserved.
*
*
* Filename: halscsi.h
*
* Programmer: Greg
*
* Created: 1/2/2008
*
* Description: public functions
*
*
* Change History (most recent first): 2008.1.2
****************************************************************/
#ifndef __HALSCSI_H__
#define __HALSCSI_H__
#include "scsicmd.h"
///////////////////////////////////
#define CBW_SIGNATURE 0x55534243
#define CSW_SIGNATURE 0x55534253
#define RBC_READ_BUF 0x12
#define RBC_READ_MP3 0x34
#define TPBulk_CBW TPBulk_Block.TPBulk_CommandBlock
#define CBW_wXferLen TPBulk_CBW.dCBW_DataXferLen
#define RBC_CDB TPBulk_CBW.cdbRBC
#define RBC_LUN TPBulk_CBW.bCBW_LUN
#define TPBulk_CSW TPBulk_Block.TPBulk_CommandStatus
typedef struct _COMMAND_BLOCK_WRAPPER{
DWORD dCBW_Signature;
DWORD dCBW_Tag;
DWORD dCBW_DataXferLen;
BYTE bCBW_Flag;
BYTE bCBW_LUN;
BYTE bCBW_CDBLen;
CDB_RBC cdbRBC;
} CBW, *pCBW;
typedef struct _COMMAND_STATUS_WRAPPER{
DWORD dCSW_Signature;
DWORD dCSW_Tag;
DWORD dCSW_DataResidue;
BYTE bCSW_Status;
} CSW, *pCSW;
typedef union _TPBULK_STRUC {
CBW TPBulk_CommandBlock;
CSW TPBulk_CommandStatus;
}TPB_STRUC, *pTPB_STRUC;
///////////////////////////////////
void EnumMassDev(void);
BYTE TPBulk_GetMaxLUN(void);
void SPC_Inquiry(void);
void SPC_READLONG(void);
void SPC_RequestSense(void);
void SPC_TestUnit(void);
void SPC_LockMedia(void);
void RBC_ReadCapacity(void);
BYTE RBC_ReadOneSec(DWORD lba, BYTE *pBuffer, BYTE flag, BYTE offset);
//BYTE RBC_ReadMp3(DWORD lba);
//BYTE RBC_Write(DWORD lba, BYTE len, BYTE *pBuffer);
BYTE RBC_WriteOneSec(DWORD lba, BYTE *pBuffer);
BYTE RBC_ReadFlush(BOOL bSkip);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -