graphic.h

来自「ADC图形图像例子」· C头文件 代码 · 共 89 行

H
89
字号
#ifndef		_GRAPHIC_H
#define		_GRAPHIC_H

#include "uart.h"


#define MAX_COMMAND			2048
#define MAX_COMMAND_MASK	(MAX_COMMAND-1)

#define VID_CONTROL_BASE	0x3000080
#define VID_COMMAND_BASE	0x3800000 

#define	VIDREG6_SYNCSELCOMP		(0x00<<4)
#define	VIDREG6_SYNCSELINVCOMP	(0x06<<4)
#define	VIDREG6_SYNCSELHV		(0x01<<4)
#define	VIDREG6_SYNCSELINVHV	(0x07<<4)

#define	VIDREG6_RUN2D			(0x01<<2)
#define	VIDREG6_CANCEL2D		(0x02<<2)

#define	VIDREG6_DITHER2x2		(0x00)
#define	VIDREG6_DITHER4x4		(0x01)
#define	VIDREG6_DITHERNONE		(0x02)

#define	VIDREG8_FMEM16			(0x00<<14)
#define	VIDREG8_FMEM64			(0x02<<14)

#define	VIDREG8_INTERLACE		(0x01<<13)
#define	VIDREG8_FIELD			(0x01<<12)

#define	VIDREG8_PCLK0			(0x00<<10)
#define	VIDREG8_PCLK1			(0x01<<10)
#define	VIDREG8_PCLK2			(0x02<<10)
#define	VIDREG8_PCLK3			(0x03<<10)

#define	VIDREG8_RENDER_FRONT	(0x80)
#define	VIDREG8_RENDER_BACK		(0x00)
#define	VIDREG8_RENDER_TARGETMASK	(0xff7f)

#define	VIDREG8_ELSE			(28<<5)	| (8<<1) | (0x00)

#define Vid_ReadReg( A )		readw( VID_CONTROL_BASE + ((U32)(A)<<1) )
#define Vid_WriteReg( A, D )	writew( VID_CONTROL_BASE + ((U32)(A)<<1), D )
#define Vid_WriteCmd( A, D )	writew( VID_COMMAND_BASE + (_vgCurCommandNum<<6) + ((U32)(A)<<1), D )

/***********************************************
	Draw Mode
************************************************/
#define DGDRAWMODE_ALPHA        0x01
#define DGDRAWMODE_SHADE        0x02
#define DGDRAWMODE_TEXTURE      0x04
#define DGDRAWMODE_TRANSPARENCY 0x08
#define DGDRAWMODE_NOREPEAT		0x10


typedef enum _DGSCREENMODE 
{
	DGSCREENMODE_320x240	= 1,
	DGSCREENMODE_360x240	= 2,
	DGSCREENMODE_640x480	= 3,
	DGSCREENMODE_FORCE_DWORD = 0x7fffffff
} DGSCREENMODE;


U32 _vgCurCommandNum;
S32	_vgScreen_width;
S32	_vgScreen_height;
U32 _vgSDK_ShadeColor;

U32 _vg_current_drawmode;
U16 _vg_write_mode;


void Vid_EndCommand( void );
void InitRenderingEngine();
vgBOOL	vgSetScreenMode( DGSCREENMODE smode	);
void Vid_WaitEmptyCommandQueue( void );
void	vgSetClipWindow( S32 x,	S32	y, S32 dx, S32 dy );
void vgClearFMEM( long x, long y, long w, long h );
void	vgSetShadeColor( U8 r, U8 g, U8 b );
void vgASyncFlip( void );
U32	 vgNumberOfFlip( void );
void vgFlip( void );
void vgClearScreen( U8 r, U8 g, U8 b );
void DrawColorBar(void);
void	vgSetDrawMode( U32 dmode );

#endif	/* _GRAPHIC_H */

⌨️ 快捷键说明

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