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

📄 vgaregs.h

📁 linux 下svgalib编的一个界面程序示例
💻 H
字号:
/* Register indices into mode state array. */#define VGA_CRTC_COUNT		24#define VGA_ATC_COUNT		21#define VGA_GRAPHICS_COUNT	9#define VGA_SEQUENCER_COUNT	5#define VGA_CRTC_OFFSET		0	/* 24 registers */#define VGA_ATC_OFFSET		24	/* 21 registers */#define VGA_GRAPHICS_OFFSET	45	/* 9 registers. */#define VGA_SEQUENCER_OFFSET	54	/* 5 registers. */#define VGA_MISCOUTPUT		59	/* (single register) */#define VGA_TOTAL_REGS		60/* Total of 60 registers. */#define VGAREG_CR(i)		(i)#define VGAREG_AR(i)		(i + VGA_ATC_OFFSET)#define VGAREG_GR(i)		(i + VGA_GRAPHICS_OFFSET)#define VGAREG_SR(i)		(i + VGA_SEQUENCER_OFFSET)#define VGA_CR0			VGAREG_CR(0x00)#define VGA_CR1			VGAREG_CR(0x01)#define VGA_CR2			VGAREG_CR(0x02)#define VGA_CR3			VGAREG_CR(0x03)#define VGA_CR4			VGAREG_CR(0x04)#define VGA_CR5			VGAREG_CR(0x05)#define VGA_CR6			VGAREG_CR(0x06)#define VGA_CR7			VGAREG_CR(0x07)#define VGA_CR8			VGAREG_CR(0x08)#define VGA_CR9			VGAREG_CR(0x09)#define VGA_CRA			VGAREG_CR(0x0A)#define VGA_CRB			VGAREG_CR(0x0B)#define VGA_CRC			VGAREG_CR(0x0C)#define VGA_CRD			VGAREG_CR(0x0D)#define VGA_CRE			VGAREG_CR(0x0E)#define VGA_CRF			VGAREG_CR(0x0F)#define VGA_CR10		VGAREG_CR(0x10)#define VGA_CR11		VGAREG_CR(0x11)#define VGA_CR12		VGAREG_CR(0x12)#define VGA_CR13		VGAREG_CR(0x13)#define VGA_SCANLINEOFFSET	VGAREG_CR(0x13)#define VGA_CR14		VGAREG_CR(0x14)#define VGA_CR15		VGAREG_CR(0x15)#define VGA_CR16		VGAREG_CR(0x16)#define VGA_CR17		VGAREG_CR(0x17)#define VGA_CR18		VGAREG_CR(0x18)#define VGA_AR0			VGAREG_AR(0x00)#define VGA_AR10		VGAREG_AR(0x10)#define VGA_AR11		VGAREG_AR(0x11)#define VGA_AR12		VGAREG_AR(0x12)#define VGA_AR13		VGAREG_AR(0x13)#define VGA_AR14		VGAREG_AR(0x14)#define VGA_GR0			VGAREG_GR(0x00)#define VGA_GR1			VGAREG_GR(0x01)#define VGA_GR2			VGAREG_GR(0x02)#define VGA_GR3			VGAREG_GR(0x03)#define VGA_GR4			VGAREG_GR(0x04)#define VGA_GR5			VGAREG_GR(0x05)#define VGA_GR6			VGAREG_GR(0x06)#define VGA_GR7			VGAREG_GR(0x07)#define VGA_GR8			VGAREG_GR(0x08)#define VGA_SR0			VGAREG_SR(0x00)#define VGA_SR1			VGAREG_SR(0x01)#define VGA_SR2			VGAREG_SR(0x02)#define VGA_SR3			VGAREG_SR(0x03)#define VGA_SR4			VGAREG_SR(0x04)/* * Set the bits bytemask in variable bytevar with the value of bits * valuemask in value (masks must match, but may be shifted relative * to eachother). With proper masks, should optimize into shifts. */#define SETBITSFROMVALUE(bytevar, bytemask, value, valuemask) \	if (valuemask > bytemask) \		bytevar = (bytevar & (~(unsigned char)bytemask)) \			| (((value) & valuemask) / (valuemask / bytemask)); \	else \		bytevar = (bytevar & (~(unsigned char)bytemask)) \			| (((value) & valuemask) * (bytemask / valuemask));/* * Set bits bytemask in bytevar, with value bits (no shifting). */#define SETBITS(bytevar, bytemask, bits) \	bytevar = (bytevar & (~(unsigned char)bytemask)) + bits;#define min(x, y) ((x) < (y) ? (x) : (y))#define LIMIT(var, lim) if (var > lim) var = lim;/* Prototypes of functions defined in vgaregs.c. */void __svgalib_setup_VGA_registers(			    unsigned char *moderegs,			    ModeTiming * modetiming,			    ModeInfo * modeinfo);/* svgalib-2.0 source compatibility */#define __svgalib_outgra	__svgalib_outGR#define __svgalib_outcrtc	__svgalib_outCR#define __svgalib_outseq	__svgalib_outSR#define __svgalib_ingra		__svgalib_inGR#define __svgalib_incrtc	__svgalib_inCR#define __svgalib_inseq __svgalib_inSR/* Write to indexed VGA register using outw. */void __svgalib_outGR(int index, unsigned char value);void __svgalib_outSR(int index, unsigned char value);void __svgalib_outCR(int index, unsigned char value);/* Write to indexed VGA register using outb. */void __svgalib_outbGR(int index, unsigned char value);void __svgalib_outbSR(int index, unsigned char value);void __svgalib_outbCR(int index, unsigned char value);unsigned char __svgalib_inGR(int index);unsigned char __svgalib_inSR(int index);unsigned char __svgalib_inCR(int index);

⌨️ 快捷键说明

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