📄 atapishx.h
字号:
//
// Copyright(C) Renesas Technology Corp. 2005. All rights reserved.
//
// ATAPI(UDFS) driver for ITS-DS7
//
// FILE : atamain.cpp
// CREATED : 2005.02.10
// MODIFIED :
// AUTHOR : Renesas Technology Corp.
// HARDWARE : RENESAS ITS-DS7
// HISTORY :
// 2005.02.10
// - Created release code.
// (based on PUBLIC ATAPI driver for WCE5.0)
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//
/*++
Module Name:
atapishx.h
Abstract:
Base ATA/ATAPI device abstraction.
Revision History:
--*/
#ifndef _ATAPISHX_H_
#define _ATAPISHX_H_
#include <atamain.h>
class CSHXDisk : public CDisk {
public:
// member variables
static LONG m_lDeviceCount;
LPBYTE m_pAtapiBuffer;
LPBYTE m_pAtapiControl;
// constructors/destructors
CSHXDisk(HKEY hKey);
virtual ~CSHXDisk();
// member functions
virtual VOID ConfigureRegisterBlock(DWORD dwStride);
virtual BOOL Init(HKEY hActiveKey);
virtual DWORD MainIoctl(PIOREQ pIOReq);
virtual BOOL WaitForInterrupt(DWORD dwTimeOut);
virtual void EnableInterrupt();
virtual BOOL ConfigPort();
virtual BOOL SetupDMA(PSG_BUF pSgBuf, DWORD dwSgCount, BOOL fRead);
virtual BOOL BeginDMA(BOOL fRead);
virtual BOOL EndDMA();
virtual BOOL AbortDMA();
virtual BOOL CompleteDMA(PSG_BUF pSgBuf, DWORD dwSgCount, BOOL fRead);
void FreeDMABuffers();
void CopyDiskInfoFromPort();
virtual void SetDeviceTiming(DWORD dwDevice, BYTE dwPioMode, BYTE dwDmaMode, BYTE dwUdmaMode);
inline virtual void CSHXDisk::TakeCS() {
m_pPort->TakeCS();
}
inline virtual void CSHXDisk::ReleaseCS() {
m_pPort->ReleaseCS();
}
inline BOOL CSHXDisk::DoesDeviceAlreadyExist() {
return FALSE;
}
};
#endif //_ATAPISHX_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -