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

📄 udepson.h

📁 S1D13506windml下的驱动程序,支持vxworks5.4 支持tornado2.0 windml2.0
💻 H
字号:
/***************************************************************************
 *                                                                         * 
 *  UDEPSON.H                                                              * 
 *  Copyright (c) 2000, 2001 Epson Research and Development, Inc.          *
 *  All Rights Reserved                                                    *
 *                                                                         *
 ***************************************************************************/

/* includes */
#include <ugl/ugl.h>
#include <ugl/driver/graphics/generic/udgen16.h>
#include "control.h" //build number controlling 
#include "udemode.h" //display controller initialization

/* Driver Configuration Definitions */
#define BUILD_DRIVER

/* Bus types */
#define UGL_EPSON_PCI_VENDOR_ID 0x10F4
#define UGL_EPSON_PCI_DEV_ID    0x1300
#define UGL_EPSON_PCI           1

/* Address mapping */
#define MEDIAPLUG_REG_OFFSET  0x1000   /* MediaPlug register offset */
#define BITBLT_REG_OFFSET     0x100000 /* BitBlt register offset */
#define FRAME_BUFFER_OFFSET   0x200000 /* Frame buffer offset */

/* BitBlt Register addresses */
#define	BITBLT_CTRL0	                0x0100
#define	BITBLT_CTRL1	                0x0101
#define	BITBLT_ROP		        0x0102
#define	BITBLT_OP		        0x0103
#define BITBLT_SRCE_ADDRESS_REG0	0x0104
#define	BITBLT_SRCE_ADDRESS_REG1	0x0105
#define	BITBLT_SRCE_ADDRESS_REG2	0x0106
#define	BITBLT_DEST_ADDRESS_REG0	0x0108
#define BITBLT_DEST_ADDRESS_REG1	0x0109
#define	BITBLT_DEST_ADDRESS_REG2	0x010A
#define BITBLT_MEM_OFF0	                0x010C
#define BITBLT_MEM_OFF1	                0x010D
#define BITBLT_WIDTH_REG0               0x0110
#define BITBLT_WIDTH_REG1	        0x0111
#define BITBLT_HEIGHT_REG0	        0x0112
#define BITBLT_HEIGHT_REG1              0x0113
#define	BITBLT_BGCOLOR0	                0x0114
#define	BITBLT_BGCOLOR1	                0x0115
#define	BITBLT_FGCOLOR0	                0x0118
#define	BITBLT_FGCOLOR1	                0x0119

/* Defines for BitBLT functions */
#define BYTES_PER_PIXEL   2 //16bpp

/* Look-Up table register address */
#define LUT_MODE_REG      0x1E0
#define LUT_ADDRESS_REG   0x1E2
#define LUT_DATA_REG      0x1E4

 
/* Writing/Reading memory-mapped I/O */
#define uglWriteByte( address, data ) *(UGL_UINT8 *) address = data
#define uglReadByte( address, data ) data = *(UGL_UINT8 *) address 

/* Mode configurations */
UGL_LOCAL UGL_MODE    modes[1];
UGL_LOCAL UGL_MODE   *pDevModes = modes;
UGL_LOCAL ModeHeader *pEpsonModeTable = &epsonModeTable[0].ModeInfo;

/* device dependment bitmap */
typedef struct ugl_epson_ddb
{
    UGL_GEN_DDB genDdb;
    UGL_BOOL    vram;
}UGL_EPSON_DDB;

/* Build number - source code version assurance */
typedef struct ugl_epson_build
{
   UGL_UINT8 first_num;
   UGL_UINT8 second_num[4];
}UGL_EPSON_BUILD;

typedef struct ugl_epson_driver
{
   UGL_GENERIC_DRIVER pGenDriver;
   UGL_INT32 pciBus;
   UGL_INT32 pciDevice;
   UGL_INT32 pciFunc;
   UGL_UINT32 busType;
   UGL_UINT32 chipType;
} UGL_EPSON_DRIVER;


extern  UGL_UINT32 pciBaseAddress;
UGL_UINT8 buildNum = 20; 

UGL_LOCAL void  uglEpsonDisplayBuildNum   ( const char * szVersion );
UGL_UGI_DRIVER *uglEpson16BitDevCreate    ( UGL_ORD instance, UGL_UINT32 notUsed0,
				            UGL_UINT32 notUsed1 );
UGL_DDB_ID      uglEpson16BitBitmapCreate ( UGL_DEVICE_ID devId, UGL_DIB  * pDib, 
                                            UGL_DIB_CREATE_MODE createMode,
                                            UGL_UINT32 initValue, UGL_MEM_POOL_ID poolId );
UGL_STATUS      uglEpson16BitDevDestroy   ( UGL_DEVICE_ID devId );
UGL_STATUS      uglEpson16BitInfo         ( UGL_DEVICE_ID devId, UGL_INFO_REQ infoRequest, 
                                            void *info );
UGL_STATUS      uglEpson16BitModeAvailGet ( UGL_UGI_DRIVER * pDriver, 
				            UGL_UINT32  * pNumModes, 
				            const UGL_MODE ** pModeArray );
UGL_STATUS      uglEpson16BitModeSet      ( UGL_UGI_DRIVER * pDriver, UGL_MODE * pMode );
UGL_STATUS      uglEpson16BitClutSet      ( UGL_DEVICE_ID pDriver, UGL_ORD startIndex, 
                                            UGL_ARGB * pColors, UGL_SIZE numColors );
UGL_STATUS      uglEpson16BitClutGet      ( UGL_DEVICE_ID pDriver, UGL_ORD startIndex, 
                                            UGL_ARGB * pColors, UGL_SIZE numColors );
UGL_STATUS      uglEpson16BitBitmapBlt    ( UGL_DEVICE_ID devId, UGL_DDB_ID srcDdbId,
                                            UGL_RECT * pSourceRect, UGL_DDB_ID destDdbId,
                                            UGL_POINT * pDestPoint );
UGL_STATUS      uglEpsonCursorShow        ( UGL_DEVICE_ID devId );
UGL_STATUS      uglEpsonCursorHide        ( UGL_DEVICE_ID devId, UGL_RECT * pHideRect );
UGL_STATUS      uglEpsonCursorMove        ( UGL_DEVICE_ID devId, UGL_POINT * pCursorPos );
UGL_STATUS      uglEpsonGpWait            ( UGL_GENERIC_DRIVER * pDriver );


⌨️ 快捷键说明

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