pm3_regs.h

来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· C头文件 代码 · 共 1,114 行 · 第 1/4 页

H
1,114
字号
	#define PM3Render_Texture_Enable			(1<<13)	#define PM3Render_Fog_Disable				(0<<14)	#define PM3Render_Fog_Enable				(1<<14)	#define PM3Render_Coverage_Disable			(0<<15)	#define PM3Render_Coverage_Enable			(1<<15)	#define PM3Render_SubPixelCorrection_Disable		(0<<16)	#define PM3Render_SubPixelCorrection_Enable		(1<<16)	#define PM3Render_SpanOperation_Disable			(0<<18)	#define PM3Render_SpanOperation_Enable			(1<<18)	#define PM3Render_FBSourceRead_Disable			(0<<27)	#define PM3Render_FBSourceRead_Enable			(1<<27)#define PM3RasterizerMode					0x80a0#define PM3RasterizerModeAnd					0xaba0#define PM3RasterizerModeOr					0xabb8#define PM3RectangleHeight					0x94e0#define PM3Render						0x8038#define PM3RepeatLine						0x9328#define PM3ResetPickResult					0x8c20#define PM3RLEMask						0x8c48#define PM3RouterMode						0x8840#define PM3RStart						0x8780#define PM3S1Start						0x8400#define PM3aveLineStippleCounters				0x81c0#define PM3ScissorMaxXY						0x8190#define PM3ScissorMinXY						0x8188#define PM3ScissorMode						0x8180#define PM3ScissorModeAnd					0xabb0#define PM3ScissorModeOr					0xabb8#define PM3ScreenSize						0x8198#define PM3Security						0x8908#define PM3SetLogicalTexturePage				0xb360#define PM3SizeOfFramebuffer					0xb0a8#define PM3SStart						0x8388#define PM3StartXDom						0x8000#define PM3StartXSub						0x8010#define PM3StartY						0x8020/* ... */#define PM3SpanColorMask					0x8168/* ... */#define PM3TextureApplicationMode				0x8680#define PM3TextureApplicationModeAnd				0xac50#define PM3TextureApplicationModeOr				0xac58#define PM3TextureBaseAddr					0x8500#define PM3TextureCacheControl					0x8490#define PM3TextureChromaLower0					0x84f0#define PM3TextureChromaLower1					0x8608#define PM3TextureChromaUpper0					0x84e8#define PM3TextureChromaUpper1					0x8600#define PM3TextureCompositeAlphaMode0				0xb310#define PM3TextureCompositeAlphaMode0And			0xb390#define PM3TextureCompositeAlphaMode0Or				0xb398#define PM3TextureCompositeAlphaMode1				0xb320#define PM3TextureCompositeAlphaMode1And			0xb3b0#define PM3TextureCompositeAlphaMode1Or				0xb3b8#define PM3TextureCompositeColorMode0				0xb308#define PM3TextureCompositeColorMode0And			0xb380#define PM3TextureCompositeColorMode0Or				0xb388#define PM3TextureCompositeColorMode1				0xb318#define PM3TextureCompositeColorMode1And			0xb3a0#define PM3TextureCompositeColorMode1Or				0xb3a8#define PM3TextureCompositeFactor0				0xb328#define PM3TextureCompositeFactor1				0xb330#define PM3TextureCompositeMode					0xb300#define PM3TextureCoordMode					0x8380#define PM3TextureCoordModeAnd					0xac20#define PM3TextureCoordModeOr					0xac28#define PM3TextureData						0x88e8/*#define PM3TextureDownloadControl				0x0108*/#define PM3TextureDownloadOffset				0x88f0#define PM3TextureEnvColor					0x8688#define PM3TextureFilterMode					0x84e0#define PM3TextureFilterModeAnd					0xad50#define PM3TextureFilterModeOr					0xad58#define PM3TextureIndexMode0					0xb338#define PM3TextureIndexMode0And					0xb3c0#define PM3TextureIndexMode0Or					0xb3c8#define PM3TextureIndexMode1					0xb340#define PM3TextureIndexMode1And					0xb3d0#define PM3TextureIndexMode1Or					0xb3d8#define PM3TextureLODBiasS					0x8450#define PM3TextureLODBiasT					0x8458/* ... */#define PM3TextureMapSize					0xb428#define PM3TextureMapWidth0					0x8580#define PM3TextureMapWidth1					0x8588	#define PM3TextureMapWidth_Width(w)		((w&0xfff)<<0)	#define PM3TextureMapWidth_BorderLayout			(1<<12)	#define PM3TextureMapWidth_Layout_Linear		(0<<13)	#define PM3TextureMapWidth_Layout_Patch64		(1<<13)	#define PM3TextureMapWidth_Layout_Patch32_2		(2<<13)	#define PM3TextureMapWidth_Layout_Patch2		(3<<13)	#define PM3TextureMapWidth_HostTexture			(1<<15)#define PM3TextureReadMode0					0xb400#define PM3TextureReadMode0And					0xac30#define PM3TextureReadMode0Or					0xac38#define PM3TextureReadMode1					0xb408#define PM3TextureReadMode1And					0xad40#define PM3TextureReadMode1Or					0xad48/* ... */#define PM3WaitForCompletion					0x80b8#define PM3Window						0x8980	#define PM3Window_ForceLBUpdate				1<<3	#define PM3Window_LBUpdateSource			1<<4	#define PM3Window_FrameCount(c)				(((c)&0xff)<<9)	#define PM3Window_StencilFCP				1<<17	#define PM3Window_DepthFCP				1<<18	#define PM3Window_OverrideWriteFiltering		1<<19#define PM3WindowAnd						0xab80#define PM3WindowOr						0xab88#define PM3WindowOrigin						0x81c8#define PM3XBias						0x9480#define PM3YBias						0x9488#define PM3YLimits						0x80a8#define PM3UVMode						0x8f00#define PM3ZFogBias						0x86b8#define PM3ZStart						0xadd8#define PM3ZStartL						0x89b8#define PM3ZStartU						0x89b0/***********************************************  GLINT Permedia3 2D setup Unit              ************************************************/#define PM3Config2D						0xb618	#define PM3Config2D_OpaqueSpan				1<<0	#define PM3Config2D_MultiRXBlit				1<<1	#define PM3Config2D_UserScissorEnable			1<<2	#define PM3Config2D_FBDestReadEnable			1<<3	#define PM3Config2D_AlphaBlendEnable			1<<4	#define PM3Config2D_DitherEnable			1<<5	#define PM3Config2D_ForegroundROPEnable			1<<6	#define PM3Config2D_ForegroundROP(rop)		(((rop)&0xf)<<7)	#define PM3Config2D_BackgroundROPEnable			1<<11	#define PM3Config2D_BackgroundROP(rop)		(((rop)&0xf)<<12)	#define PM3Config2D_UseConstantSource			1<<16	#define PM3Config2D_FBWriteEnable			1<<17	#define PM3Config2D_Blocking				1<<18	#define PM3Config2D_ExternalSourceData			1<<19	#define PM3Config2D_LUTModeEnable			1<<20#define PM3DownloadGlyphwidth					0xb658	#define PM3DownloadGlyphwidth_GlyphWidth(gw)	((gw)&0xffff)#define PM3DownloadTarget					0xb650	#define PM3DownloadTarget_TagName(tag)		((tag)&0x1fff)#define PM3GlyphData						0xb660#define PM3GlyphPosition					0xb608	#define PM3GlyphPosition_XOffset(x)		((x)&0xffff)	#define PM3GlyphPosition_YOffset(y)		(((y)&0xffff)<<16)#define PM3Packed4Pixels					0xb668#define PM3Packed8Pixels					0xb630#define PM3Packed16Pixels					0xb638#define PM3RectanglePosition					0xb600	#define PM3RectanglePosition_XOffset(x)		((x)&0xffff)	#define PM3RectanglePosition_YOffset(y)		(((y)&0xffff)<<16)#define PM3Render2D						0xb640	#define PM3Render2D_Width(w)			((w)&0x0fff)	#define PM3Render2D_Operation_Normal			0<<12	#define PM3Render2D_Operation_SyncOnHostData		1<<12	#define PM3Render2D_Operation_SyncOnBitMask		2<<12	#define PM3Render2D_Operation_PatchOrderRendering	3<<12	#define PM3Render2D_FBSourceReadEnable			1<<14	#define PM3Render2D_SpanOperation			1<<15	#define PM3Render2D_Height(h)			(((h)&0x0fff)<<16)	#define PM3Render2D_XPositive				1<<28	#define PM3Render2D_YPositive				1<<29	#define PM3Render2D_AreaStippleEnable			1<<30	#define PM3Render2D_TextureEnable			1<<31#define PM3Render2DGlyph					0xb648	#define PM3Render2DGlyph_Width(w)		((w)&0x7f)	#define PM3Render2DGlyph_Height(h)		(((h)&0x7f)<<7)	#define PM3Render2DGlyph_XOffset(x)		(((x)&0x1ff)<<14)	#define PM3Render2DGlyph_YOffset(y)		(((y)&0x1ff)<<23)#define PM3RenderPatchOffset					0xb610	#define PM3RenderPatchOffset_XOffset(x)		((x)&0xffff)	#define PM3RenderPatchOffset_YOffset(y)		(((y)&0xffff)<<16)#define PM3RLCount						0xb678	#define PM3RLCount_Count(c)			((c)&0x0fff)#define PM3RLData						0xb670/***********************************************  GLINT Permedia3 Alias Register             ************************************************/#define PM3FillBackgroundColor                                  0x8330#define PM3FillConfig2D0                                        0x8338#define PM3FillConfig2D1                                        0x8360	#define PM3FillConfig2D_OpaqueSpan                      1<<0	#define PM3FillConfig2D_MultiRXBlit                     1<<1	#define PM3FillConfig2D_UserScissorEnable               1<<2	#define PM3FillConfig2D_FBDestReadEnable                1<<3	#define PM3FillConfig2D_AlphaBlendEnable                1<<4	#define PM3FillConfig2D_DitherEnable                    1<<5	#define PM3FillConfig2D_ForegroundROPEnable             1<<6	#define PM3FillConfig2D_ForegroundROP(rop)              (((rop)&0xf)<<7)	#define PM3FillConfig2D_BackgroundROPEnable             1<<11	#define PM3FillConfig2D_BackgroundROP(rop)              (((rop)&0xf)<<12)	#define PM3FillConfig2D_UseConstantSource               1<<16	#define PM3FillConfig2D_FBWriteEnable                   1<<17	#define PM3FillConfig2D_Blocking                        1<<18	#define PM3FillConfig2D_ExternalSourceData              1<<19	#define PM3FillConfig2D_LUTModeEnable                   1<<20#define PM3FillFBDestReadBufferAddr                             0x8310#define PM3FillFBSourceReadBufferAddr                           0x8308#define PM3FillFBSourceReadBufferOffset                         0x8340	#define PM3FillFBSourceReadBufferOffset_XOffset(x)     ((x)&0xffff)	#define PM3FillFBSourceReadBufferOffset_YOffset(y)      (((y)&0xffff)<<16)#define PM3FillFBWriteBufferAddr                                0x8300#define PM3FillForegroundColor0                                 0x8328#define PM3FillForegroundColor1                                 0x8358#define PM3FillGlyphPosition                                    0x8368        #define PM3FillGlyphPosition_XOffset(x)                        ((x)&0xffff)	#define PM3FillGlyphPosition_YOffset(y)                        (((y)&0xffff)<<16)#define PM3FillRectanglePosition                                0x8348	#define PM3FillRectanglePosition_XOffset(x)            ((x)&0xffff)	#define PM3FillRectanglePosition_YOffset(y)            (((y)&0xffff)<<16)#if 1/***********************************************  GLINT Permedia3 Macros                     ************************************************/extern void *pm3_reg_base;#define WRITE_REG(offset,val)				\    *(volatile unsigned long *)(((unsigned char *)(pm3_reg_base)) + (offset)) = (val)	#define READ_REG(offset)					\    *(volatile unsigned long *)(((unsigned char *)(pm3_reg_base)) + (offset))#define UPDATE_SET_REG(offset,val)				\    {								\	unsigned long temp;					\	temp = READ_REG(offset);				\	WRITE_REG(offset,temp|(val));			\    } #define UPDATE_CLEAR_REG(offset,val)			\    {								\	unsigned long temp;					\	temp = READ_REG(offset);				\	WRITE_REG(offset,temp&(~(val)));			\    }#define RAMDAC_DELAY(x) do {					\	int delay = x;						\	unsigned char tmp;					\	while(delay--){tmp = READ_REG(PM3InFIFOSpace);};	\} while(0)#define SLOW_WRITE_REG(v,r)			\do{						\	RAMDAC_DELAY(5);			\	WRITE_REG(v,r);				\	RAMDAC_DELAY(5);			\}while(0)#define RAMDAC_SET_INDEX(index)					\{								\    SLOW_WRITE_REG (PM3RD_IndexHigh,((index)>>8)&0xff);		\    SLOW_WRITE_REG (PM3RD_IndexLow,(index)&0xff);			\}#define RAMDAC_SET_REG(index, data)				\{								\    RAMDAC_SET_INDEX(index);					\    SLOW_WRITE_REG(PM3RD_IndexedData, data);			\}#define RAMDAC_GET_REG(index, temp)				\{								\    RAMDAC_SET_INDEX(index);					\    temp = READ_REG(PM3RD_IndexedData);			\}#endif#endif /* PM3_REGS_H */

⌨️ 快捷键说明

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