📄 i830_reg.h
字号:
#define TEXCOORD_ADDR_V_MASK 0x70#define TEXCOORD_ADDR_U_MASK 0x7/* _3DSTATE_MAP_CUBE, p168 TODO */#define _3DSTATE_MAP_CUBE (CMD_3D|(0x1c<<24)|(0x0a<<19))#define CUBE_NEGX_ENABLE (1<<5)#define CUBE_POSX_ENABLE (1<<4)#define CUBE_NEGY_ENABLE (1<<3)#define CUBE_POSY_ENABLE (1<<2)#define CUBE_NEGZ_ENABLE (1<<1)#define CUBE_POSZ_ENABLE (1<<0)/* _3DSTATE_MODES_1, p190 */#define _3DSTATE_MODES_1_CMD (CMD_3D|(0x08<<24))#define BLENDFUNC_MASK 0x3f0000#define ENABLE_COLR_BLND_FUNC (1<<21)#define BLENDFUNC_ADD 0#define BLENDFUNC_SUB (1<<16)#define BLENDFUNC_RVRSE_SUB (2<<16)#define BLENDFUNC_MIN (3<<16)#define BLENDFUNC_MAX (4<<16)#define SRC_DST_BLND_MASK 0xfff#define ENABLE_SRC_BLND_FACTOR (1<<11)#define ENABLE_DST_BLND_FACTOR (1<<5)#define SRC_BLND_FACT(x) ((x)<<6)#define DST_BLND_FACT(x) (x)/* _3DSTATE_MODES_2, p192 */#define _3DSTATE_MODES_2_CMD (CMD_3D|(0x0f<<24))#define ENABLE_GLOBAL_DEPTH_BIAS (1<<22)#define GLOBAL_DEPTH_BIAS(x) ((x)<<14)#define ENABLE_ALPHA_TEST_FUNC (1<<13)#define ENABLE_ALPHA_REF_VALUE (1<<8)#define ALPHA_TEST_FUNC(x) ((x)<<9)#define ALPHA_REF_VALUE(x) (x)#define ALPHA_TEST_REF_MASK 0x3fff/* _3DSTATE_MODES_3, p193 */#define _3DSTATE_MODES_3_CMD (CMD_3D|(0x02<<24))#define DEPTH_TEST_FUNC_MASK 0x1f0000#define ENABLE_DEPTH_TEST_FUNC (1<<20)/* Uses COMPAREFUNC */#define DEPTH_TEST_FUNC(x) ((x)<<16)#define ENABLE_ALPHA_SHADE_MODE (1<<11)#define ENABLE_FOG_SHADE_MODE (1<<9)#define ENABLE_SPEC_SHADE_MODE (1<<7)#define ENABLE_COLOR_SHADE_MODE (1<<5)#define ALPHA_SHADE_MODE(x) ((x)<<10)#define FOG_SHADE_MODE(x) ((x)<<8)#define SPEC_SHADE_MODE(x) ((x)<<6)#define COLOR_SHADE_MODE(x) ((x)<<4)#define CULLMODE_MASK 0xf#define ENABLE_CULL_MODE (1<<3)#define CULLMODE_BOTH 0#define CULLMODE_NONE 1#define CULLMODE_CW 2#define CULLMODE_CCW 3#define SHADE_MODE_LINEAR 0#define SHADE_MODE_FLAT 0x1/* _3DSTATE_MODES_4, p195 */#define _3DSTATE_MODES_4_CMD (CMD_3D|(0x16<<24))#define ENABLE_LOGIC_OP_FUNC (1<<23)#define LOGIC_OP_FUNC(x) ((x)<<18)#define LOGICOP_MASK ((1<<18)|(1<<19)|(1<<20)|(1<<21))#define LOGICOP_CLEAR 0#define LOGICOP_NOR 0x1#define LOGICOP_AND_INV 0x2#define LOGICOP_COPY_INV 0x3#define LOGICOP_AND_RVRSE 0x4#define LOGICOP_INV 0x5#define LOGICOP_XOR 0x6#define LOGICOP_NAND 0x7#define LOGICOP_AND 0x8#define LOGICOP_EQUIV 0x9#define LOGICOP_NOOP 0xa#define LOGICOP_OR_INV 0xb#define LOGICOP_COPY 0xc#define LOGICOP_OR_RVRSE 0xd#define LOGICOP_OR 0xe#define LOGICOP_SET 0xf#define MODE4_ENABLE_STENCIL_TEST_MASK ((1<<17)|(0xff00))#define ENABLE_STENCIL_TEST_MASK (1<<17)#define STENCIL_TEST_MASK(x) (((x)&0xff)<<8)#define MODE4_ENABLE_STENCIL_WRITE_MASK ((1<<16)|(0x00ff))#define ENABLE_STENCIL_WRITE_MASK (1<<16)#define STENCIL_WRITE_MASK(x) ((x)&0xff)/* _3DSTATE_MODES_5, p196 */#define _3DSTATE_MODES_5_CMD (CMD_3D|(0x0c<<24))#define ENABLE_SPRITE_POINT_TEX (1<<23)#define SPRITE_POINT_TEX_ON (1<<22)#define SPRITE_POINT_TEX_OFF 0#define FLUSH_RENDER_CACHE (1<<18)#define FLUSH_TEXTURE_CACHE (1<<16)#define FIXED_LINE_WIDTH_MASK 0xfc00#define ENABLE_FIXED_LINE_WIDTH (1<<15)#define FIXED_LINE_WIDTH(x) ((x)<<10)#define FIXED_POINT_WIDTH_MASK 0x3ff#define ENABLE_FIXED_POINT_WIDTH (1<<9)#define FIXED_POINT_WIDTH(x) (x)/* _3DSTATE_RASTERIZATION_RULES, p198 */#define _3DSTATE_RASTER_RULES_CMD (CMD_3D|(0x07<<24))#define ENABLE_POINT_RASTER_RULE (1<<15)#define OGL_POINT_RASTER_RULE (1<<13)#define ENABLE_LINE_STRIP_PROVOKE_VRTX (1<<8)#define ENABLE_TRI_FAN_PROVOKE_VRTX (1<<5)#define ENABLE_TRI_STRIP_PROVOKE_VRTX (1<<2)#define LINE_STRIP_PROVOKE_VRTX(x) ((x)<<6)#define TRI_FAN_PROVOKE_VRTX(x) ((x)<<3)#define TRI_STRIP_PROVOKE_VRTX(x) (x)/* _3DSTATE_SCISSOR_ENABLE, p200 */#define _3DSTATE_SCISSOR_ENABLE_CMD (CMD_3D|(0x1c<<24)|(0x10<<19))#define ENABLE_SCISSOR_RECT ((1<<1) | 1)#define DISABLE_SCISSOR_RECT (1<<1)/* _3DSTATE_SCISSOR_RECTANGLE_0, p201 */#define _3DSTATE_SCISSOR_RECT_0_CMD (CMD_3D|(0x1d<<24)|(0x81<<16)|1)/* Dword 1 */#define SCISSOR_RECT_0_YMIN(x) ((x)<<16)#define SCISSOR_RECT_0_XMIN(x) (x)/* Dword 2 */#define SCISSOR_RECT_0_YMAX(x) ((x)<<16)#define SCISSOR_RECT_0_XMAX(x) (x)/* _3DSTATE_STENCIL_TEST, p202 */#define _3DSTATE_STENCIL_TEST_CMD (CMD_3D|(0x09<<24))#define ENABLE_STENCIL_PARMS (1<<23)#define STENCIL_OPS_MASK (0xffc000)#define STENCIL_FAIL_OP(x) ((x)<<20)#define STENCIL_PASS_DEPTH_FAIL_OP(x) ((x)<<17)#define STENCIL_PASS_DEPTH_PASS_OP(x) ((x)<<14)#define ENABLE_STENCIL_TEST_FUNC_MASK ((1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<9))#define ENABLE_STENCIL_TEST_FUNC (1<<13)/* Uses COMPAREFUNC */#define STENCIL_TEST_FUNC(x) ((x)<<9)#define STENCIL_REF_VALUE_MASK ((1<<8)|0xff)#define ENABLE_STENCIL_REF_VALUE (1<<8)#define STENCIL_REF_VALUE(x) (x)/* _3DSTATE_VERTEX_FORMAT, p204 */#define _3DSTATE_VFT0_CMD (CMD_3D|(0x05<<24))#define VFT0_POINT_WIDTH (1<<12)#define VFT0_TEX_COUNT_MASK (7<<8)#define VFT0_TEX_COUNT_SHIFT 8#define VFT0_TEX_COUNT(x) ((x)<<8)#define VFT0_SPEC (1<<7)#define VFT0_DIFFUSE (1<<6)#define VFT0_DEPTH_OFFSET (1<<5)#define VFT0_XYZ (1<<1)#define VFT0_XYZW (2<<1)#define VFT0_XY (3<<1)#define VFT0_XYW (4<<1)#define VFT0_XYZW_MASK (7<<1)/* _3DSTATE_VERTEX_FORMAT_2, p206 */#define _3DSTATE_VFT1_CMD (CMD_3D|(0x0a<<24))#define VFT1_TEX7_FMT(x) ((x)<<14)#define VFT1_TEX6_FMT(x) ((x)<<12)#define VFT1_TEX5_FMT(x) ((x)<<10)#define VFT1_TEX4_FMT(x) ((x)<<8)#define VFT1_TEX3_FMT(x) ((x)<<6)#define VFT1_TEX2_FMT(x) ((x)<<4)#define VFT1_TEX1_FMT(x) ((x)<<2)#define VFT1_TEX0_FMT(x) (x)#define VFT1_TEX0_MASK 3#define VFT1_TEX1_SHIFT 2#define TEXCOORDFMT_2D 0#define TEXCOORDFMT_3D 1#define TEXCOORDFMT_4D 2#define TEXCOORDFMT_1D 3/*New stuff picked up along the way */#define MLC_LOD_BIAS_MASK ((1<<7)-1)/* _3DSTATE_VERTEX_TRANSFORM, p207 */#define _3DSTATE_VERTEX_TRANS_CMD (CMD_3D|(0x1d<<24)|(0x8b<<16)|0)#define _3DSTATE_VERTEX_TRANS_MTX_CMD (CMD_3D|(0x1d<<24)|(0x8b<<16)|6)/* Dword 1 */#define ENABLE_VIEWPORT_TRANSFORM ((1<<31)|(1<<30))#define DISABLE_VIEWPORT_TRANSFORM (1<<31)#define ENABLE_PERSP_DIVIDE ((1<<29)|(1<<28))#define DISABLE_PERSP_DIVIDE (1<<29)#define VRTX_TRANS_LOAD_MATRICES 0x7421#define VRTX_TRANS_NO_LOAD_MATRICES 0x0000/* Dword 2 -> 7 are matrix elements *//* _3DSTATE_W_STATE, p209 */#define _3DSTATE_W_STATE_CMD (CMD_3D|(0x1d<<24)|(0x8d<<16)|1)/* Dword 1 */#define MAGIC_W_STATE_DWORD1 0x00000008/* Dword 2 */#define WFAR_VALUE(x) (x)/* Stipple command, carried over from the i810, apparently: */#define _3DSTATE_STIPPLE ((0x3<<29)|(0x1d<<24)|(0x83<<16))#define ST1_ENABLE (1<<16)#define ST1_MASK (0xffff)#define _3DSTATE_LOAD_STATE_IMMEDIATE_2 ((0x3<<29)|(0x1d<<24)|(0x03<<16))#define LOAD_TEXTURE_MAP0 (1<<11)#define LOAD_GLOBAL_COLOR_FACTOR (1<<6)#define TM0S0_ADDRESS_MASK 0xfffffffc#define TM0S0_USE_FENCE (1<<1)#define TM0S1_HEIGHT_SHIFT 21#define TM0S1_WIDTH_SHIFT 10#define TM0S1_PALETTE_SELECT (1<<9)#define TM0S1_MAPSURF_FORMAT_MASK (0x7 << 6)#define TM0S1_MAPSURF_FORMAT_SHIFT 6#define MAPSURF_8BIT_INDEXED (0<<6)#define MAPSURF_8BIT (1<<6)#define MAPSURF_16BIT (2<<6)#define MAPSURF_32BIT (3<<6)#define MAPSURF_411 (4<<6)#define MAPSURF_422 (5<<6)#define MAPSURF_COMPRESSED (6<<6)#define MAPSURF_4BIT_INDEXED (7<<6)#define TM0S1_MT_FORMAT_MASK (0x7 << 3)#define TM0S1_MT_FORMAT_SHIFT 3#define MT_4BIT_IDX_ARGB8888 (7<<3) /* SURFACE_4BIT_INDEXED */#define MT_8BIT_IDX_RGB565 (0<<3) /* SURFACE_8BIT_INDEXED */#define MT_8BIT_IDX_ARGB1555 (1<<3)#define MT_8BIT_IDX_ARGB4444 (2<<3)#define MT_8BIT_IDX_AY88 (3<<3)#define MT_8BIT_IDX_ABGR8888 (4<<3)#define MT_8BIT_IDX_BUMP_88DVDU (5<<3)#define MT_8BIT_IDX_BUMP_655LDVDU (6<<3)#define MT_8BIT_IDX_ARGB8888 (7<<3)#define MT_8BIT_I8 (0<<3) /* SURFACE_8BIT */#define MT_8BIT_L8 (1<<3)#define MT_16BIT_RGB565 (0<<3) /* SURFACE_16BIT */#define MT_16BIT_ARGB1555 (1<<3)#define MT_16BIT_ARGB4444 (2<<3)#define MT_16BIT_AY88 (3<<3)#define MT_16BIT_DIB_ARGB1555_8888 (4<<3)#define MT_16BIT_BUMP_88DVDU (5<<3)#define MT_16BIT_BUMP_655LDVDU (6<<3)#define MT_16BIT_DIB_RGB565_8888 (7<<3)#define MT_32BIT_ARGB8888 (0<<3) /* SURFACE_32BIT */#define MT_32BIT_ABGR8888 (1<<3)#define MT_32BIT_XRGB8888 (2<<3) /* XXX: Guess from i915_reg.h */#define MT_32BIT_BUMP_XLDVDU_8888 (6<<3)#define MT_32BIT_DIB_8888 (7<<3)#define MT_411_YUV411 (0<<3) /* SURFACE_411 */#define MT_422_YCRCB_SWAPY (0<<3) /* SURFACE_422 */#define MT_422_YCRCB_NORMAL (1<<3)#define MT_422_YCRCB_SWAPUV (2<<3)#define MT_422_YCRCB_SWAPUVY (3<<3)#define MT_COMPRESS_DXT1 (0<<3) /* SURFACE_COMPRESSED */#define MT_COMPRESS_DXT2_3 (1<<3)#define MT_COMPRESS_DXT4_5 (2<<3)#define MT_COMPRESS_FXT1 (3<<3)#define TM0S1_COLORSPACE_CONVERSION (1 << 2)#define TM0S1_TILED_SURFACE (1 << 1)#define TM0S1_TILE_WALK (1 << 0)#define TM0S2_PITCH_SHIFT 21#define TM0S2_CUBE_FACE_ENA_SHIFT 15#define TM0S2_CUBE_FACE_ENA_MASK (1<<15)#define TM0S2_MAP_FORMAT (1<<14)#define TM0S2_VERTICAL_LINE_STRIDE (1<<13)#define TM0S2_VERITCAL_LINE_STRIDE_OFF (1<<12)#define TM0S2_OUTPUT_CHAN_SHIFT 10#define TM0S2_OUTPUT_CHAN_MASK (3<<10)#define TM0S3_MIP_FILTER_MASK (0x3<<30)#define TM0S3_MIP_FILTER_SHIFT 30#define MIPFILTER_NONE 0#define MIPFILTER_NEAREST 1#define MIPFILTER_LINEAR 3#define TM0S3_MAG_FILTER_MASK (0x3<<28)#define TM0S3_MAG_FILTER_SHIFT 28#define TM0S3_MIN_FILTER_MASK (0x3<<26)#define TM0S3_MIN_FILTER_SHIFT 26#define FILTER_NEAREST 0#define FILTER_LINEAR 1#define FILTER_ANISOTROPIC 2#define TM0S3_LOD_BIAS_SHIFT 17#define TM0S3_LOD_BIAS_MASK (0x1ff<<17)#define TM0S3_MAX_MIP_SHIFT 9#define TM0S3_MAX_MIP_MASK (0xff<<9)#define TM0S3_MIN_MIP_SHIFT 3#define TM0S3_MIN_MIP_MASK (0x3f<<3)#define TM0S3_KILL_PIXEL (1<<2)#define TM0S3_KEYED_FILTER (1<<1)#define TM0S3_CHROMA_KEY (1<<0)/* _3DSTATE_MAP_TEXEL_STREAM, p188 */#define _3DSTATE_MAP_TEX_STREAM_CMD (CMD_3D|(0x1c<<24)|(0x05<<19))#define DISABLE_TEX_STREAM_BUMP (1<<12)#define ENABLE_TEX_STREAM_BUMP ((1<<12)|(1<<11))#define TEX_MODIFY_UNIT_0 0#define TEX_MODIFY_UNIT_1 (1<<8)#define ENABLE_TEX_STREAM_COORD_SET (1<<7)#define TEX_STREAM_COORD_SET(x) ((x)<<4)#define ENABLE_TEX_STREAM_MAP_IDX (1<<3)#define TEX_STREAM_MAP_IDX(x) (x)#define MI_FLUSH ((0<<29)|(4<<23))#define FLUSH_MAP_CACHE (1<<0)#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -