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 + -
显示快捷键?