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

📄 glint_regs.h

📁 原名叫avifile
💻 H
📖 第 1 页 / 共 3 页
字号:
#define StencilMode				GLINT_TAG_ADDR(0x13,0x01)#define StencilData				GLINT_TAG_ADDR(0x13,0x02)#define GLINTStencil				GLINT_TAG_ADDR(0x13,0x03)#define DepthMode				GLINT_TAG_ADDR(0x13,0x04)	/* 0:				*/	/* WriteDisable			*/	/* SrcCompFragment		*/	/* CompFuncNEVER		*/	/* UNIT_DISABLE			*/	#define DPM_WriteEnable			1 << 1	#define DPM_SrcCompLBData		1 << 2	#define DPM_SrcCompDregister		2 << 2	#define DPM_SrcCompLBSourceData		3 << 2	#define DPM_CompFuncLESS		1 << 4	#define DPM_CompFuncEQUAL		2 << 4	#define DPM_CompFuncLESS_OR_EQ		3 << 4	#define DPM_CompFuncGREATER		4 << 4	#define DPM_CompFuncNOT_EQ		5 << 4	#define DPM_CompFuncGREATER_OR_EQ	6 << 4	#define DPM_CompFuncALWAYS		7 << 4#define GLINTDepth				GLINT_TAG_ADDR(0x13,0x05)#define ZStartU					GLINT_TAG_ADDR(0x13,0x06)#define ZStartL					GLINT_TAG_ADDR(0x13,0x07)#define dZdxU					GLINT_TAG_ADDR(0x13,0x08)#define dZdxL					GLINT_TAG_ADDR(0x13,0x09)#define dZdyDomU				GLINT_TAG_ADDR(0x13,0x0a)#define dZdyDomL				GLINT_TAG_ADDR(0x13,0x0b)#define FastClearDepth				GLINT_TAG_ADDR(0x13,0x0c)#define FBReadMode				GLINT_TAG_ADDR(0x15,0x00)	/* 0:				*/	/* SrcNoRead			*/	/* DstNoRead			*/	/* DataFBDefault		*/	/* WinTopLeft			*/	/* ScanlineInterval1 		*/	#define FBRM_SrcEnable			1 << 9	#define FBRM_DstEnable			1 << 10	#define FBRM_DataFBColor		1 << 15	#define FBRM_WinBottomLeft		1 << 16	#define FBRM_Packed			1 << 19	#define FBRM_ScanlineInt2		1 << 23	#define FBRM_ScanlineInt4		2 << 23	#define FBRM_ScanlineInt8		3 << 23#define FBSourceOffset				GLINT_TAG_ADDR(0x15,0x01)#define FBPixelOffset				GLINT_TAG_ADDR(0x15,0x02)#define FBColor					GLINT_TAG_ADDR(0x15,0x03)#define FBData					GLINT_TAG_ADDR(0x15,0x04)#define FBSourceData				GLINT_TAG_ADDR(0x15,0x05)#define FBWindowBase				GLINT_TAG_ADDR(0x15,0x06)#define FBWriteMode				GLINT_TAG_ADDR(0x15,0x07)	/* 0:			*/	/* FBWM_NoColorUpload	*/	/* FBWM_WriteDisable	*/	#define FBWM_WriteEnable		1	#define FBWM_UploadColor		1 << 3/* Permedia3 extensions */	#define FBWM_Enable0			1 << 12#define FBHardwareWriteMask			GLINT_TAG_ADDR(0x15,0x08)#define FBBlockColor				GLINT_TAG_ADDR(0x15,0x09)#define FBReadPixel				GLINT_TAG_ADDR(0x15,0x0a) /* PM */#define PatternRamMode				GLINT_TAG_ADDR(0x15,0x0f)#define PatternRamData0				GLINT_TAG_ADDR(0x16,0x00)#define PatternRamData1				GLINT_TAG_ADDR(0x16,0x01)#define PatternRamData2				GLINT_TAG_ADDR(0x16,0x02)#define PatternRamData3				GLINT_TAG_ADDR(0x16,0x03)#define PatternRamData4				GLINT_TAG_ADDR(0x16,0x04)#define PatternRamData5				GLINT_TAG_ADDR(0x16,0x05)#define PatternRamData6				GLINT_TAG_ADDR(0x16,0x06)#define PatternRamData7				GLINT_TAG_ADDR(0x16,0x07)#define FilterMode				GLINT_TAG_ADDR(0x18,0x00)	/* 0:				*/	/* CullDepthTags		*/	/* CullDepthData		*/	/* CullStencilTags		*/	/* CullStencilData		*/	/* CullColorTag			*/	/* CullColorData		*/	/* CullSyncTag			*/	/* CullSyncData			*/	/* CullStatisticTag		*/	/* CullStatisticData		*/	#define FM_PassDepthTags					0x0010	#define FM_PassDepthData					0x0020	#define FM_PassStencilTags					0x0040	#define FM_PassStencilData					0x0080	#define FM_PassColorTag						0x0100	#define FM_PassColorData					0x0200	#define FM_PassSyncTag						0x0400	#define FM_PassSyncData						0x0800	#define FM_PassStatisticTag					0x1000	#define FM_PassStatisticData					0x2000#define	Sync_tag							0x0188#define StatisticMode				GLINT_TAG_ADDR(0x18,0x01)#define MinRegion				GLINT_TAG_ADDR(0x18,0x02)#define MaxRegion				GLINT_TAG_ADDR(0x18,0x03)#define ResetPickResult				GLINT_TAG_ADDR(0x18,0x04)#define MitHitRegion				GLINT_TAG_ADDR(0x18,0x05)#define MaxHitRegion				GLINT_TAG_ADDR(0x18,0x06)#define PickResult				GLINT_TAG_ADDR(0x18,0x07)#define GlintSync				GLINT_TAG_ADDR(0x18,0x08)#define FBBlockColorU				GLINT_TAG_ADDR(0x18,0x0d)#define FBBlockColorL				GLINT_TAG_ADDR(0x18,0x0e)#define SuspendUntilFrameBlank			GLINT_TAG_ADDR(0x18,0x0f)#define KsRStart				GLINT_TAG_ADDR(0x19,0x00)#define dKsRdx					GLINT_TAG_ADDR(0x19,0x01)#define dKsRdyDom				GLINT_TAG_ADDR(0x19,0x02)#define KsGStart				GLINT_TAG_ADDR(0x19,0x03)#define dKsGdx					GLINT_TAG_ADDR(0x19,0x04)#define dKsGdyDom				GLINT_TAG_ADDR(0x19,0x05)#define KsBStart				GLINT_TAG_ADDR(0x19,0x06)#define dKsBdx					GLINT_TAG_ADDR(0x19,0x07)#define dKsBdyDom				GLINT_TAG_ADDR(0x19,0x08)#define KdRStart				GLINT_TAG_ADDR(0x1A,0x00)#define dKdRdx					GLINT_TAG_ADDR(0x1A,0x01)#define dKdRdyDom				GLINT_TAG_ADDR(0x1A,0x02)#define KdGStart				GLINT_TAG_ADDR(0x1A,0x03)#define dKdGdx					GLINT_TAG_ADDR(0x1A,0x04)#define dKdGdyDom				GLINT_TAG_ADDR(0x1A,0x05)#define KdBStart				GLINT_TAG_ADDR(0x1A,0x06)#define dKdBdx					GLINT_TAG_ADDR(0x1A,0x07)#define dKdBdyDom				GLINT_TAG_ADDR(0x1A,0x08)#define FBSourceBase				GLINT_TAG_ADDR(0x1B,0x00)#define FBSourceDelta				GLINT_TAG_ADDR(0x1B,0x01)#define Config					GLINT_TAG_ADDR(0x1B,0x02)#define		CFBRM_SrcEnable		1<<0#define		CFBRM_DstEnable		1<<1#define		CFBRM_Packed		1<<2#define		CWM_Enable		1<<3#define		CCDDA_Enable		1<<4#define		CLogOp_Enable		1<<5#define ContextDump                             GLINT_TAG_ADDR(0x1B,0x08)#define ContextRestore                          GLINT_TAG_ADDR(0x1B,0x09)#define ContextData                             GLINT_TAG_ADDR(0x1B,0x0a)#define TexelLUT0				GLINT_TAG_ADDR(0x1D,0x00)#define TexelLUT1				GLINT_TAG_ADDR(0x1D,0x01)#define TexelLUT2				GLINT_TAG_ADDR(0x1D,0x02)#define TexelLUT3				GLINT_TAG_ADDR(0x1D,0x03)#define TexelLUT4				GLINT_TAG_ADDR(0x1D,0x04)#define TexelLUT5				GLINT_TAG_ADDR(0x1D,0x05)#define TexelLUT6				GLINT_TAG_ADDR(0x1D,0x06)#define TexelLUT7				GLINT_TAG_ADDR(0x1D,0x07)#define TexelLUT8				GLINT_TAG_ADDR(0x1D,0x08)#define TexelLUT9				GLINT_TAG_ADDR(0x1D,0x09)#define TexelLUT10				GLINT_TAG_ADDR(0x1D,0x0A)#define TexelLUT11				GLINT_TAG_ADDR(0x1D,0x0B)#define TexelLUT12				GLINT_TAG_ADDR(0x1D,0x0C)#define TexelLUT13				GLINT_TAG_ADDR(0x1D,0x0D)#define TexelLUT14				GLINT_TAG_ADDR(0x1D,0x0E)#define TexelLUT15				GLINT_TAG_ADDR(0x1D,0x0F)#define YUVMode                                 GLINT_TAG_ADDR(0x1E,0x00)#define ChromaUpper                             GLINT_TAG_ADDR(0x1E,0x01)#define ChromaLower                             GLINT_TAG_ADDR(0x1E,0x02)#define ChromaTestMode                          GLINT_TAG_ADDR(0x1E,0x03)#define AlphaMapUpperBound                      GLINT_TAG_ADDR(0x1E,0x03) /* PM2 */#define AlphaMapLowerBound                      GLINT_TAG_ADDR(0x1E,0x04) /* PM2 *//****************************** * GLINT Delta Core Registers * ******************************/#define V0FixedTag	GLINT_TAG_ADDR(0x20,0x00)#define V1FixedTag	GLINT_TAG_ADDR(0x21,0x00)#define V2FixedTag	GLINT_TAG_ADDR(0x22,0x00)#define V0FloatTag	GLINT_TAG_ADDR(0x23,0x00)#define V1FloatTag	GLINT_TAG_ADDR(0x24,0x00)#define V2FloatTag	GLINT_TAG_ADDR(0x25,0x00)#define VPAR_s		0x00#define VPAR_t		0x08#define VPAR_q		0x10#define VPAR_Ks		0x18#define VPAR_Kd		0x20/* have changed colors in ramdac !#define VPAR_R		0x28#define VPAR_G		0x30#define VPAR_B		0x38#define VPAR_A		0x40*/#define VPAR_B		0x28#define VPAR_G		0x30#define VPAR_R		0x38#define VPAR_A		0x40#define VPAR_f		0x48#define VPAR_x		0x50#define VPAR_y		0x58#define VPAR_z		0x60#define DeltaModeTag				GLINT_TAG_ADDR(0x26,0x00)	/* 0:				*/	/* GLINT_300SX			*/	/* DeltaMode Register Bit Field Assignments */	#define DM_GLINT_300SX					0x0000	#define DM_GLINT_500TX					0x0001	#define DM_PERMEDIA					0x0002	#define DM_Depth_16BPP					(1 << 2)	#define DM_Depth_24BPP					(2 << 2)	#define DM_Depth_32BPP					(3 << 2)	#define DM_FogEnable					0x0010	#define DM_TextureEnable				0x0020	#define DM_SmoothShadingEnable				0x0040	#define DM_DepthEnable					0x0080	#define DM_SpecularTextureEnable			0x0100	#define DM_DiffuseTextureEnable				0x0200	#define DM_SubPixelCorrectionEnable			0x0400	#define DM_DiamondExit					0x0800	#define DM_NoDraw					0x1000	#define DM_ClampEnable					0x2000	#define DM_ClampedTexParMode				0x4000 	#define DM_NormalizedTexParMode				0xC000         #define DDCMD_AreaStrippleEnable                        0x0001	#define DDCMD_LineStrippleEnable                        0x0002	#define DDCMD_ResetLineStripple                         1 << 2        #define DDCMD_FastFillEnable                            1 << 3        /*  2 Bits reserved */	#define DDCMD_PrimitiveType_Point                       2 << 6	#define DDCMD_PrimitiveType_Line                        0 << 6	#define DDCMD_PrimitiveType_Trapezoid                   1 << 6	#define DDCMD_AntialiasEnable				1 << 8     	#define DDCMD_AntialiasingQuality			1 << 9        #define DDCMD_UsePointTable                             1 << 10	#define DDCMD_SyncOnBitMask                             1 << 11	#define DDCMD_SyncOnHostDate                            1 << 12     	#define DDCMD_TextureEnable			        1 << 13	#define DDCMD_FogEnable                                 1 << 14	#define DDCMD_CoverageEnable                            1 << 15	#define DDCMD_SubPixelCorrectionEnable                  1 << 16#define DrawTriangle				GLINT_TAG_ADDR(0x26,0x01)#define RepeatTriangle				GLINT_TAG_ADDR(0x26,0x02)#define DrawLine01				GLINT_TAG_ADDR(0x26,0x03)#define DrawLine10				GLINT_TAG_ADDR(0x26,0x04)#define RepeatLine				GLINT_TAG_ADDR(0x26,0x05)#define BroadcastMask				GLINT_TAG_ADDR(0x26,0x0F)/* Permedia 3 - Accelerator Extensions */#define FillRectanglePosition					0x8348#define FillRender2D						0x8350#define FBDstReadBufAddr0					0xAE80#define FBDstReadBufOffset0					0xAEA0#define FBDstReadBufWidth0					0xAEC0#define FBDstReadMode						0xAEE0#define		FBDRM_Enable0		1<<8#define		FBDRM_Blocking		1<<24#define FBDstReadEnables					0xAEE8#define FBSrcReadMode						0xAF00#define		FBSRM_Blocking		1<<11#define FBSrcReadBufAddr					0xAF08#define FBSrcReadBufOffset0					0xAF10#define FBSrcReadBufWidth					0xAF18#define FBWriteBufAddr0						0xB000#define FBWriteBufOffset0					0xB020#define FBWriteBufWidth0					0xB040#define FBBlockColorBack					0xB0A0#define ForegroundColor						0xB0C0#define BackgroundColor						0xB0C8#define RectanglePosition					0xB600#define Render2D						0xB640/*  Colorformats */#define BGR555  1#define BGR565  16#define CI8     14#define CI4     15#ifdef DEBUG#define GLINT_WRITE_REG(v,r)					\	GLINT_VERB_WRITE_REG(pGlint,v,r,__FILE__,__LINE__)#define GLINT_READ_REG(r)					\	GLINT_VERB_READ_REG(pGlint,r,__FILE__,__LINE__)#else#define GLINT_WRITE_REG(v,r) \	MMIO_OUT32(pGlint->IOBase + pGlint->IOOffset,(unsigned long)(r), (v))#define GLINT_READ_REG(r) \	MMIO_IN32(pGlint->IOBase + pGlint->IOOffset,(unsigned long)(r))#endif /* DEBUG */#define GLINT_WAIT(n)						\do{								\	if (pGlint->InFifoSpace>=(n))				\	    pGlint->InFifoSpace -= (n);				\	else {							\	    int tmp;						\	    while((tmp=GLINT_READ_REG(InFIFOSpace))<(n));	\	    /* Clamp value due to bugs in PM3 */		\	    if (tmp > pGlint->FIFOSize)				\		tmp = pGlint->FIFOSize;				\	    pGlint->InFifoSpace = tmp - (n);			\	}							\}while(0)#define GLINTDACDelay(x) do {                                   \        int delay = x;                                          \        unsigned char tmp;                                      \	while(delay--){tmp = GLINT_READ_REG(InFIFOSpace);};     \	} while(0)        #define GLINT_MASK_WRITE_REG(v,m,r)				\	GLINT_WRITE_REG((GLINT_READ_REG(r)&(m))|(v),r)#define GLINT_SLOW_WRITE_REG(v,r)				\do{								\	mem_barrier();						\	GLINT_WAIT(pGlint->FIFOSize);	     			\	mem_barrier();						\        GLINT_WRITE_REG(v,r);					\}while(0)#define GLINT_SET_INDEX(index)					\do{								\	GLINT_SLOW_WRITE_REG(((index)>>8)&0xff,PM2VDACIndexRegHigh);	\	GLINT_SLOW_WRITE_REG((index)&0xff,PM2VDACIndexRegLow);	\} while(0)#define REPLICATE(r)						\{								\	if (pScrn->bitsPerPixel == 16) {			\		r &= 0xFFFF;					\		r |= (r<<16);					\	} else							\	if (pScrn->bitsPerPixel == 8) { 			\		r &= 0xFF;					\		r |= (r<<8);					\		r |= (r<<16);					\	}							\}#ifndef XF86DRI#define LOADROP(rop)						\{								\	if (pGlint->ROP != rop)	{				\		GLINT_WRITE_REG(rop<<1|UNIT_ENABLE, LogicalOpMode);	\		pGlint->ROP = rop;				\	}							\}#else#define LOADROP(rop) \	{				\		GLINT_WRITE_REG(rop<<1|UNIT_ENABLE, LogicalOpMode);	\		pGlint->ROP = rop;				\	}#endif	#define CHECKCLIPPING						\{								\	if (pGlint->ClippingOn) {				\		pGlint->ClippingOn = FALSE;			\		GLINT_WAIT(1);					\		GLINT_WRITE_REG(0, ScissorMode);		\	}							\}#ifndef XF86DRI#define DO_PLANEMASK(planemask)					\{ 								\	if (planemask != pGlint->planemask) {			\		pGlint->planemask = planemask;			\		REPLICATE(planemask); 				\		GLINT_WRITE_REG(planemask, FBHardwareWriteMask);\	}							\} #else#define DO_PLANEMASK(planemask)					\	{							\		pGlint->planemask = planemask;			\		REPLICATE(planemask); 				\		GLINT_WRITE_REG(planemask, FBHardwareWriteMask);\	}#endif/* Permedia Save/Restore functions */#define STOREREG(address,value) 				\    	pReg->glintRegs[address >> 3] = value;#define SAVEREG(address) 					\    	pReg->glintRegs[address >> 3] = GLINT_READ_REG(address);#define RESTOREREG(address) 					\    	GLINT_SLOW_WRITE_REG(pReg->glintRegs[address >> 3], address);#define STOREDAC(address,value)					\    	pReg->DacRegs[address] = value;#define P2VOUT(address)						\    Permedia2vOutIndReg(pScrn, address, 0x00, pReg->DacRegs[address]);#define P2VIN(address)						\    pReg->DacRegs[address] = Permedia2vInIndReg(pScrn, address);/* RamDac Save/Restore functions, used by external DAC's */#define STORERAMDAC(address,value)				\    	ramdacReg->DacRegs[address] = value;/* Multi Chip access */#define ACCESSCHIP1()						\    pGlint->IOOffset = 0;#define ACCESSCHIP2()						\    pGlint->IOOffset = 0x10000;#endif

⌨️ 快捷键说明

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