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

📄 r300_reg.h

📁 Mesa is an open-source implementation of the OpenGL specification - a system for rendering interacti
💻 H
📖 第 1 页 / 共 5 页
字号:
#	define R300_GB_MSPOS0__MS_X1_SHIFT	8#	define R300_GB_MSPOS0__MS_Y1_SHIFT	12#	define R300_GB_MSPOS0__MS_X2_SHIFT	16#	define R300_GB_MSPOS0__MS_Y2_SHIFT	20#	define R300_GB_MSPOS0__MSBD0_Y		24#	define R300_GB_MSPOS0__MSBD0_X		28#define R300_GB_MSPOS1                           0x4014#	define R300_GB_MSPOS1__MS_X3_SHIFT	0#	define R300_GB_MSPOS1__MS_Y3_SHIFT	4#	define R300_GB_MSPOS1__MS_X4_SHIFT	8#	define R300_GB_MSPOS1__MS_Y4_SHIFT	12#	define R300_GB_MSPOS1__MS_X5_SHIFT	16#	define R300_GB_MSPOS1__MS_Y5_SHIFT	20#	define R300_GB_MSPOS1__MSBD1		24/* Specifies the graphics pipeline configuration for rasterization. */#define R300_GB_TILE_CONFIG                      0x4018#	define R300_GB_TILE_DISABLE             (0 << 0)#	define R300_GB_TILE_ENABLE              (1 << 0)#	define R300_GB_TILE_PIPE_COUNT_RV300	(0 << 1) /* RV350 (1 pipe, 1 ctx) */#	define R300_GB_TILE_PIPE_COUNT_R300	(3 << 1) /* R300 (2 pipes, 1 ctx) */#	define R300_GB_TILE_PIPE_COUNT_R420_3P  (6 << 1) /* R420-3P (3 pipes, 1 ctx) */#	define R300_GB_TILE_PIPE_COUNT_R420	(7 << 1) /* R420 (4 pipes, 1 ctx) */#	define R300_GB_TILE_SIZE_8		(0 << 4)#	define R300_GB_TILE_SIZE_16		(1 << 4)#	define R300_GB_TILE_SIZE_32		(2 << 4)#	define R300_GB_SUPER_SIZE_1		(0 << 6)#	define R300_GB_SUPER_SIZE_2		(1 << 6)#	define R300_GB_SUPER_SIZE_4		(2 << 6)#	define R300_GB_SUPER_SIZE_8		(3 << 6)#	define R300_GB_SUPER_SIZE_16		(4 << 6)#	define R300_GB_SUPER_SIZE_32		(5 << 6)#	define R300_GB_SUPER_SIZE_64		(6 << 6)#	define R300_GB_SUPER_SIZE_128		(7 << 6)#	define R300_GB_SUPER_X_SHIFT		9	/* 3 bits wide */#	define R300_GB_SUPER_Y_SHIFT		12	/* 3 bits wide */#	define R300_GB_SUPER_TILE_A		(0 << 15)#	define R300_GB_SUPER_TILE_B		(1 << 15)#	define R300_GB_SUBPIXEL_1_12		(0 << 16)#	define R300_GB_SUBPIXEL_1_16		(1 << 16)#	define GB_TILE_CONFIG_QUADS_PER_RAS_4   (0 << 17)#	define GB_TILE_CONFIG_QUADS_PER_RAS_8   (1 << 17)#	define GB_TILE_CONFIG_QUADS_PER_RAS_16  (2 << 17)#	define GB_TILE_CONFIG_QUADS_PER_RAS_32  (3 << 17)#	define GB_TILE_CONFIG_BB_SCAN_INTERCEPT (0 << 19)#	define GB_TILE_CONFIG_BB_SCAN_BOUND_BOX (1 << 19)#	define GB_TILE_CONFIG_ALT_SCAN_EN_LR    (0 << 20)#	define GB_TILE_CONFIG_ALT_SCAN_EN_LRL   (1 << 20)#	define GB_TILE_CONFIG_ALT_OFFSET        (0 << 21)#	define GB_TILE_CONFIG_SUBPRECISION      (0 << 22)#	define GB_TILE_CONFIG_ALT_TILING_DEF    (0 << 23)#	define GB_TILE_CONFIG_ALT_TILING_3_2    (1 << 23)#	define GB_TILE_CONFIG_Z_EXTENDED_24_1   (0 << 24)#	define GB_TILE_CONFIG_Z_EXTENDED_S25_1  (1 << 24)/* Specifies the sizes of the various FIFO`s in the sc/rs/us. This register must be the first one written */#define R300_GB_FIFO_SIZE	0x4024	/* each of the following is 2 bits wide */#define R300_GB_FIFO_SIZE_32	0#define R300_GB_FIFO_SIZE_64	1#define R300_GB_FIFO_SIZE_128	2#define R300_GB_FIFO_SIZE_256	3#	define R300_SC_IFIFO_SIZE_SHIFT	0#	define R300_SC_TZFIFO_SIZE_SHIFT	2#	define R300_SC_BFIFO_SIZE_SHIFT	4#	define R300_US_OFIFO_SIZE_SHIFT	12#	define R300_US_WFIFO_SIZE_SHIFT	14	/* the following use the same constants as above, but meaning is	   is times 2 (i.e. instead of 32 words it means 64 */#	define R300_RS_TFIFO_SIZE_SHIFT	6#	define R300_RS_CFIFO_SIZE_SHIFT	8#	define R300_US_RAM_SIZE_SHIFT		10	/* watermarks, 3 bits wide */#	define R300_RS_HIGHWATER_COL_SHIFT	16#	define R300_RS_HIGHWATER_TEX_SHIFT	19#	define R300_OFIFO_HIGHWATER_SHIFT	22	/* two bits only */#	define R300_CUBE_FIFO_HIGHWATER_COL_SHIFT	24#define GB_Z_PEQ_CONFIG                          0x4028#	define GB_Z_PEQ_CONFIG_Z_PEQ_SIZE_4_4    (0 << 0)#	define GB_Z_PEQ_CONFIG_Z_PEQ_SIZE_8_8    (1 << 0)/* Specifies various polygon specific selects (fog, depth, perspective). */#define R300_GB_SELECT                           0x401c#	define R300_GB_FOG_SELECT_C0A		(0 << 0)#	define R300_GB_FOG_SELECT_C1A           (1 << 0)#	define R300_GB_FOG_SELECT_C2A           (2 << 0)#	define R300_GB_FOG_SELECT_C3A           (3 << 0)#	define R300_GB_FOG_SELECT_1_1_W         (4 << 0)#	define R300_GB_FOG_SELECT_Z		(5 << 0)#	define R300_GB_DEPTH_SELECT_Z		(0 << 3#	define R300_GB_DEPTH_SELECT_1_1_W	(1 << 3)#	define R300_GB_W_SELECT_1_W		(0 << 4)#	define R300_GB_W_SELECT_1		(1 << 4)#	define R300_GB_FOG_STUFF_DISABLE        (0 << 5)#	define R300_GB_FOG_STUFF_ENABLE         (1 << 5)#	define R300_GB_FOG_STUFF_TEX_SHIFT      6#	define R300_GB_FOG_STUFF_TEX_MASK       0x000003c0#	define R300_GB_FOG_STUFF_COMP_SHIFT     10#	define R300_GB_FOG_STUFF_COMP_MASK      0x00000c00/* Specifies the graphics pipeline configuration for antialiasing. */#define GB_AA_CONFIG   	                         0x4020#	define GB_AA_CONFIG_AA_DISABLE           (0 << 0)#	define GB_AA_CONFIG_AA_ENABLE            (1 << 0)#	define GB_AA_CONFIG_NUM_AA_SUBSAMPLES_2  (0 << 1)#	define GB_AA_CONFIG_NUM_AA_SUBSAMPLES_3  (1 << 1)#	define GB_AA_CONFIG_NUM_AA_SUBSAMPLES_4  (2 << 1)#	define GB_AA_CONFIG_NUM_AA_SUBSAMPLES_6  (3 << 1)/* Selects which of 4 pipes are active. */#define GB_PIPE_SELECT                           0x402c#	define GB_PIPE_SELECT_PIPE0_ID_SHIFT  0#	define GB_PIPE_SELECT_PIPE1_ID_SHIFT  2#	define GB_PIPE_SELECT_PIPE2_ID_SHIFT  4#	define GB_PIPE_SELECT_PIPE3_ID_SHIFT  6#	define GB_PIPE_SELECT_PIPE_MASK_SHIFT 8#	define GB_PIPE_SELECT_MAX_PIPE        12#	define GB_PIPE_SELECT_BAD_PIPES       14#	define GB_PIPE_SELECT_CONFIG_PIPES    18/* Specifies the sizes of the various FIFO`s in the sc/rs. */#define GB_FIFO_SIZE1                            0x4070/* High water mark for SC input fifo */#	define GB_FIFO_SIZE1_SC_HIGHWATER_IFIFO_SHIFT 0#	define GB_FIFO_SIZE1_SC_HIGHWATER_IFIFO_MASK  0x0000003f/* High water mark for SC input fifo (B) */#	define GB_FIFO_SIZE1_SC_HIGHWATER_BFIFO_SHIFT 6#	define GB_FIFO_SIZE1_SC_HIGHWATER_BFIFO_MASK  0x00000fc0/* High water mark for RS colors' fifo */#	define GB_FIFO_SIZE1_SC_HIGHWATER_COL_SHIFT   12#	define GB_FIFO_SIZE1_SC_HIGHWATER_COL_MASK    0x0003f000/* High water mark for RS textures' fifo */#	define GB_FIFO_SIZE1_SC_HIGHWATER_TEX_SHIFT   18#	define GB_FIFO_SIZE1_SC_HIGHWATER_TEX_MASK    0x00fc0000/* This table specifies the source location and format for up to 16 texture * addresses (i[0]:i[15]) and four colors (c[0]:c[3]) */#define R500_RS_IP_0					0x4074#define R500_RS_IP_1					0x4078#define R500_RS_IP_2					0x407C#define R500_RS_IP_3					0x4080#define R500_RS_IP_4					0x4084#define R500_RS_IP_5					0x4088#define R500_RS_IP_6					0x408C#define R500_RS_IP_7					0x4090#define R500_RS_IP_8					0x4094#define R500_RS_IP_9					0x4098#define R500_RS_IP_10					0x409C#define R500_RS_IP_11					0x40A0#define R500_RS_IP_12					0x40A4#define R500_RS_IP_13					0x40A8#define R500_RS_IP_14					0x40AC#define R500_RS_IP_15					0x40B0#define R500_RS_IP_PTR_K0                               62#define R500_RS_IP_PTR_K1                               63#define R500_RS_IP_TEX_PTR_S_SHIFT 			0#define R500_RS_IP_TEX_PTR_T_SHIFT 			6#define R500_RS_IP_TEX_PTR_R_SHIFT 			12#define R500_RS_IP_TEX_PTR_Q_SHIFT 			18#define R500_RS_IP_COL_PTR_SHIFT 			24#define R500_RS_IP_COL_FMT_SHIFT 			27#	define R500_RS_COL_PTR(x)		        (x << 24)#       define R500_RS_COL_FMT(x)                       (x << 27)/* gap */#define R500_RS_IP_OFFSET_DIS 				(0 << 31)#define R500_RS_IP_OFFSET_EN 				(1 << 31)/* gap *//* Zero to flush caches. */#define R300_TX_INVALTAGS                   0x4100#define R300_TX_FLUSH                       0x0/* The upper enable bits are guessed, based on fglrx reported limits. */#define R300_TX_ENABLE                      0x4104#       define R300_TX_ENABLE_0                  (1 << 0)#       define R300_TX_ENABLE_1                  (1 << 1)#       define R300_TX_ENABLE_2                  (1 << 2)#       define R300_TX_ENABLE_3                  (1 << 3)#       define R300_TX_ENABLE_4                  (1 << 4)#       define R300_TX_ENABLE_5                  (1 << 5)#       define R300_TX_ENABLE_6                  (1 << 6)#       define R300_TX_ENABLE_7                  (1 << 7)#       define R300_TX_ENABLE_8                  (1 << 8)#       define R300_TX_ENABLE_9                  (1 << 9)#       define R300_TX_ENABLE_10                 (1 << 10)#       define R300_TX_ENABLE_11                 (1 << 11)#       define R300_TX_ENABLE_12                 (1 << 12)#       define R300_TX_ENABLE_13                 (1 << 13)#       define R300_TX_ENABLE_14                 (1 << 14)#       define R300_TX_ENABLE_15                 (1 << 15)#define R500_TX_FILTER_4		    0x4110#	define R500_TX_WEIGHT_1_SHIFT            (0)#	define R500_TX_WEIGHT_0_SHIFT            (11)#	define R500_TX_WEIGHT_PAIR               (1<<22)#	define R500_TX_PHASE_SHIFT               (23)#	define R500_TX_DIRECTION_HORIZONTAL	 (0<<27)#	define R500_TX_DIRECTION_VERITCAL	 (1<<27)/* S Texture Coordinate of Vertex 0 for Point texture stuffing (LLC) */#define R300_GA_POINT_S0                              0x4200/* T Texture Coordinate of Vertex 0 for Point texture stuffing (LLC) */#define R300_GA_POINT_T0                              0x4204/* S Texture Coordinate of Vertex 2 for Point texture stuffing (URC) */#define R300_GA_POINT_S1                              0x4208/* T Texture Coordinate of Vertex 2 for Point texture stuffing (URC) */#define R300_GA_POINT_T1                              0x420c/* Specifies amount to shift integer position of vertex (screen space) before * converting to float for triangle stipple. */#define R300_GA_TRIANGLE_STIPPLE            0x4214#	define R300_GA_TRIANGLE_STIPPLE_X_SHIFT_SHIFT 0#	define R300_GA_TRIANGLE_STIPPLE_X_SHIFT_MASK  0x0000000f#	define R300_GA_TRIANGLE_STIPPLE_Y_SHIFT_SHIFT 16#	define R300_GA_TRIANGLE_STIPPLE_Y_SHIFT_MASK  0x000f0000/* The pointsize is given in multiples of 6. The pointsize can be enormous: * Clear() renders a single point that fills the entire framebuffer. * 1/2 Height of point; fixed (16.0), subpixel format (1/12 or 1/16, even if in * 8b precision). */#define R300_GA_POINT_SIZE                   0x421C#       define R300_POINTSIZE_Y_SHIFT         0#       define R300_POINTSIZE_Y_MASK          0x0000ffff#       define R300_POINTSIZE_X_SHIFT         16#       define R300_POINTSIZE_X_MASK          0xffff0000#       define R300_POINTSIZE_MAX             (R300_POINTSIZE_Y_MASK / 6)/* Blue fill color */#define R500_GA_FILL_R                                0x4220/* Blue fill color */#define R500_GA_FILL_G                                0x4224/* Blue fill color */#define R500_GA_FILL_B                                0x4228/* Alpha fill color */#define R500_GA_FILL_A                                0x422c/* Specifies maximum and minimum point & sprite sizes for per vertex size * specification. The lower part (15:0) is MIN and (31:16) is max. */#define R300_GA_POINT_MINMAX                0x4230#       define R300_GA_POINT_MINMAX_MIN_SHIFT          0#       define R300_GA_POINT_MINMAX_MIN_MASK           (0xFFFF << 0)#       define R300_GA_POINT_MINMAX_MAX_SHIFT          16#       define R300_GA_POINT_MINMAX_MAX_MASK           (0xFFFF << 16)/* 1/2 width of line, in subpixels (1/12 or 1/16 only, even in 8b * subprecision); (16.0) fixed format. * * The line width is given in multiples of 6. * In default mode lines are classified as vertical lines. * HO: horizontal * VE: vertical or horizontal * HO & VE: no classification */#define R300_GA_LINE_CNTL                             0x4234#       define R300_GA_LINE_CNTL_WIDTH_SHIFT       0#       define R300_GA_LINE_CNTL_WIDTH_MASK        0x0000ffff#	define R300_GA_LINE_CNTL_END_TYPE_HOR      (0 << 16)#	define R300_GA_LINE_CNTL_END_TYPE_VER      (1 << 16)#	define R300_GA_LINE_CNTL_END_TYPE_SQR      (2 << 16) /* horizontal or vertical depending upon slope */#	define R300_GA_LINE_CNTL_END_TYPE_COMP     (3 << 16) /* Computed (perpendicular to slope) */#	define R500_GA_LINE_CNTL_SORT_NO           (0 << 18)#	define R500_GA_LINE_CNTL_SORT_MINX_MINY    (1 << 18)/** TODO: looks wrong */#       define R300_LINESIZE_MAX              (R300_GA_LINE_CNTL_WIDTH_MASK / 6)/** TODO: looks wrong */#       define R300_LINE_CNT_HO               (1 << 16)/** TODO: looks wrong */

⌨️ 快捷键说明

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