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

📄 hal.h

📁 epson13506 bitblt demo program
💻 H
📖 第 1 页 / 共 2 页
字号:
void seGetHalVersion( const char **pVersion, const char **pStatus, const char **pRevision );

/*---------------------------- Chip Access --------------------------------*/

unsigned seReadRegByte(DWORD index);
void seWriteRegByte(DWORD index, unsigned value);
unsigned seReadRegWord(DWORD index);
void seWriteRegWord(DWORD index, unsigned value);
DWORD seReadRegDword(DWORD index);
void seWriteRegDword(DWORD index, DWORD value);

/*------------------------------- Misc ------------------------------------*/

int seGetSurfaceDisplayMode(void);
DWORD seGetSurfaceSize(void);
DWORD seGetSurfaceLinearAddress(void);
DWORD seGetSurfaceOffsetAddress(void);

DWORD seAllocLcdSurface(DWORD size);
DWORD seAllocCrtSurface(DWORD size);
DWORD seAllocTvSurface(DWORD size);

int seFreeSurface(DWORD LinearAddress);

void seSetLcdAsActiveSurface(void);
void seSetCrtAsActiveSurface(void);
void seSetTvAsActiveSurface(void);

DWORD seSetLcdBitsPerPixel(unsigned nBitsPerPixel);
DWORD seSetCrtBitsPerPixel(unsigned nBitsPerPixel);
DWORD seSetTvBitsPerPixel(unsigned nBitsPerPixel);
DWORD seSetBitsPerPixel(unsigned nBitsPerPixel);
DWORD seSetLcdCrtBitsPerPixel(unsigned nBitsPerPixel);
DWORD seSetLcdTvBitsPerPixel(unsigned nBitsPerPixel);

unsigned seGetLcdBitsPerPixel(void);
unsigned seGetCrtBitsPerPixel(void);
unsigned seGetTvBitsPerPixel(void);
unsigned seGetBitsPerPixel(void);

unsigned seGetLcdBytesPerScanline(void);
unsigned seGetTvBytesPerScanline(void);
unsigned seGetCrtBytesPerScanline(void);
unsigned seGetBytesPerScanline(void);

void seGetLcdResolution(unsigned *width, unsigned *height);
void seGetCrtResolution(unsigned *width, unsigned *height);
void seGetTvResolution(unsigned *width, unsigned *height);
int seGetResolution(unsigned *width, unsigned *height);

void seSetPowerSaveMode(BOOL enable);
BOOL seGetPowerSaveMode(void);

int seCheckEndian(BOOL *ReverseBytes);
unsigned seGetLcdOrientation(void);

int seDelay( DWORD Seconds );

DWORD seGetAvailableMemorySize(void);

void seDisplayBlank(BOOL activate);
void seDisplayLcdBlank(BOOL activate);
void seDisplayCrtBlank(BOOL activate);
void seDisplayTvBlank(BOOL activate);

void seLcdDisplayEnable(BOOL activate);
void seCrtDisplayEnable(BOOL activate);
void seTvDisplayEnable(BOOL activate);
void seDisplayEnable(BOOL activate);

int seVirtInit(DWORD width, DWORD height);
int seLcdVirtInit(DWORD width, DWORD height);
int seCrtVirtInit(DWORD width, DWORD height);
int seTvVirtInit(DWORD width, DWORD height);
int seLcdCrtVirtInit(DWORD width, DWORD height);
int seLcdTvVirtInit(DWORD width, DWORD height);

void seVirtPanScroll(DWORD x, DWORD y);
void seLcdVirtPanScroll(DWORD x, DWORD y);
void seCrtVirtPanScroll(DWORD x, DWORD y);
void seTvVirtPanScroll(DWORD x, DWORD y);
void seLcdCrtVirtPanScroll(DWORD x, DWORD y);
void seLcdTvVirtPanScroll(DWORD x, DWORD y);

/*------------------------- Priority ---------------------------------*/

int seBeginHighPriority(void);
int seEndHighPriority(void);

/*------------------------- Memory Access ---------------------------------*/

unsigned seReadDisplayByte(DWORD offset);
unsigned seReadDisplayWord(DWORD offset);
DWORD seReadDisplayDword(DWORD offset);

void seWriteDisplayBytes(DWORD offset, unsigned val, DWORD count);
void seWriteDisplayWords(DWORD offset, unsigned val, DWORD count);
void seWriteDisplayDwords(DWORD offset, DWORD val, DWORD count);

/*------------------------------- Drawing ---------------------------------*/

void seSetLcdPixel(long x, long y, DWORD color);
void seSetCrtPixel(long x, long y, DWORD color);
void seSetTvPixel(long x, long y, DWORD color);
void seSetPixel(long x, long y, DWORD color);

DWORD seGetLcdPixel(long x, long y);
DWORD seGetCrtPixel(long x, long y);
DWORD seGetTvPixel(long x, long y);
DWORD seGetPixel(long x, long y);

void seDrawLcdLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawCrtLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawTvLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawLine(long x1, long y1, long x2, long y2, DWORD color);

void seDrawLcdRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawCrtRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawTvRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);

void seDrawLcdEllipse(long xc, long yc, long xr, long yr, DWORD color);
void seDrawCrtEllipse(long xc, long yc, long xr, long yr, DWORD color);
void seDrawTvEllipse(long xc, long yc, long xr, long yr, DWORD color);
void seDrawEllipse(long xc, long yc, long xr, long yr, DWORD color);

void seDrawLcdCircle(long xCenter, long yCenter, long radius, DWORD color);
void seDrawCrtCircle(long xCenter, long yCenter, long radius, DWORD color);
void seDrawTvCircle(long xCenter, long yCenter, long radius, DWORD color);
void seDrawCircle(long xCenter, long yCenter, long radius, DWORD color);

/*------------------------------- Hardware Cursor ---------------------------------*/

DWORD seInitLcdCursor(void);
DWORD seInitCrtCursor(void);
DWORD seInitTvCursor(void);
DWORD seInitCursor(void);

void seFreeLcdCursor(void);
void seFreeCrtCursor(void);
void seFreeTvCursor(void);
void seFreeCursor(void);

void seEnableLcdCursor(int enable);
void seEnableCrtCursor(int enable);
void seEnableTvCursor(int enable);
void seEnableCursor(int enable);

DWORD seGetLcdCursorLinearAddress(void);
DWORD seGetCrtCursorLinearAddress(void);
DWORD seGetTvCursorLinearAddress(void);
DWORD seGetCursorLinearAddress(void);

DWORD seGetLcdCursorOffsetAddress(void);
DWORD seGetCrtCursorOffsetAddress(void);
DWORD seGetTvCursorOffsetAddress(void);
DWORD seGetCursorOffsetAddress(void);

void seMoveLcdCursor(long x, long y);
void seMoveCrtCursor(long x, long y);
void seMoveTvCursor(long x, long y);
void seMoveCursor(long x, long y);

void seSetLcdCursorColor(int index, DWORD color);
void seSetCrtCursorColor(int index, DWORD color);
void seSetTvCursorColor(int index, DWORD color);
void seSetCursorColor(int index, DWORD color);

void seSetLcdCursorPixel(long x, long y, DWORD color);
void seSetCrtCursorPixel(long x, long y, DWORD color);
void seSetTvCursorPixel(long x, long y, DWORD color);
void seSetCursorPixel(long x, long y, DWORD color);

void seDrawLcdCursorLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawCrtCursorLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawTvCursorLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawCursorLine(long x1, long y1, long x2, long y2, DWORD color);

void seDrawLcdCursorRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawCrtCursorRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawTvCursorRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawCursorRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);

/*------------------------------- Hardware Ink Layer ---------------------------------*/

DWORD seInitLcdInk(void);
DWORD seInitCrtInk(void);
DWORD seInitTvInk(void);
DWORD seInitInk(void);

void seFreeLcdInk(void);
void seFreeCrtInk(void);
void seFreeTvInk(void);
void seFreeInk(void);

void seEnableLcdInk(int enable);
void seEnableCrtInk(int enable);
void seEnableTvInk(int enable);
void seEnableInk(int enable);

DWORD seGetLcdInkLinearAddress(void);
DWORD seGetCrtInkLinearAddress(void);
DWORD seGetTvInkLinearAddress(void);
DWORD seGetInkLinearAddress(void);

DWORD seGetLcdInkOffsetAddress(void);
DWORD seGetCrtInkOffsetAddress(void);
DWORD seGetTvInkOffsetAddress(void);
DWORD seGetInkOffsetAddress(void);

void seSetLcdInkColor(int index, DWORD color);
void seSetCrtInkColor(int index, DWORD color);
void seSetTvInkColor(int index, DWORD color);
void seSetInkColor(int index, DWORD color);

void seSetLcdInkPixel(long x, long y, DWORD color);
void seSetCrtInkPixel(long x, long y, DWORD color);
void seSetTvInkPixel(long x, long y, DWORD color);
void seSetInkPixel(long x, long y, DWORD color);

void seDrawLcdInkLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawCrtInkLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawTvInkLine(long x1, long y1, long x2, long y2, DWORD color);
void seDrawInkLine(long x1, long y1, long x2, long y2, DWORD color);

void seDrawLcdInkRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawCrtInkRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawTvInkRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);
void seDrawInkRect(long x1, long y1, long x2, long y2, DWORD color, BOOL SolidFill);

/*------------------------------ Color ------------------------------------*/

void seWriteLut(BYTE *pLut, int count);
void seWriteLcdLut(BYTE *pLut, int count);
void seWriteCrtLut(BYTE *pLut, int count);
void seWriteTvLut(BYTE *pLut, int count);

void seReadLut(BYTE *pLut, int count);
void seReadLcdLut(BYTE *pLut, int count);
void seReadCrtLut(BYTE *pLut, int count);
void seReadTvLut(BYTE *pLut, int count);

void seWriteLutEntry(int index, BYTE *pColor);
void seWriteLcdLutEntry(int index, BYTE *pColor);
void seWriteCrtLutEntry(int index, BYTE *pColor);
void seWriteTvLutEntry(int index, BYTE *pColor);

void seReadLutEntry(int index, BYTE *pColor);
void seReadLcdLutEntry(int index, BYTE *pColor);
void seReadCrtLutEntry(int index, BYTE *pColor);
void seReadTvLutEntry(int index, BYTE *pColor);

/*--------------------------- PCI Support --------------------------------*/

DWORD seGetLinearDisplayAddress(void);
DWORD seGetLinearRegAddress(void);

/*--------------------- Programmable Clock Chip Support ------------------*/

typedef enum
{
   FREQ_6000 = 0,   /*  6.000 MHz */
   FREQ_10000,      /* 10.000 MHz */
   FREQ_14318,      /* 14.318 MHz */
   FREQ_17734,      /* 17.734 MHz */
   FREQ_20000,      /* 20.000 MHz */
   FREQ_24000,      /* 24.000 MHz */
   FREQ_25000,      /* 25.000 MHz */
   FREQ_25175,      /* 25.175 MHz */
   FREQ_28318,      /* 28.318 MHz */
   FREQ_30000,      /* 30.000 MHz */
   FREQ_31500,      /* 31.500 MHz */
   FREQ_32000,      /* 32.000 MHz */
   FREQ_33000,      /* 33.000 MHz */
   FREQ_33333,      /* 33.333 MHz */
   FREQ_34000,      /* 34.000 MHz */
   FREQ_35000,      /* 35.000 MHz */
   FREQ_36000,      /* 36.000 MHz */
   FREQ_40000,      /* 40.000 MHz */
   FREQ_49500,      /* 49.500 MHz */
   FREQ_50000,      /* 50.000 MHz */
   FREQ_56250,      /* 56.250 MHz */
   FREQ_65000,      /* 65.000 MHz */
   FREQ_80000,      /* 80.000 MHz */

   MAX_FREQ_INDEX
}FREQINDEX;


#define FREQ_FEATCLK   FREQ_17734


typedef enum
{
   CLKI = 0,
   CLKI2
} CLOCKSELECT;

int seSetClock(CLOCKSELECT clock, FREQINDEX FreqIndex);

/*------------------------------------------------------------------------*/

#endif      /* _HAL_H_ */

⌨️ 快捷键说明

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