[r300] Document some of the wild guesses in VAP_OUTPUT_VTX_FMT based on AMD spec
authorChristoph Brill <egore911@egore911.de>
Mon, 25 Feb 2008 18:39:16 +0000 (19:39 +0100)
committerChristoph Brill <egore911@egore911.de>
Mon, 25 Feb 2008 18:39:16 +0000 (19:39 +0100)
src/mesa/drivers/dri/r300/r300_emit.c
src/mesa/drivers/dri/r300/r300_ioctl.c
src/mesa/drivers/dri/r300/r300_reg.h

index 424bf44e595159dbe48d59d733bc2f1ca087cc93..40d7113d7f99afb652c84b5406308471632127c0 100644 (file)
@@ -294,7 +294,7 @@ GLuint r300VAPOutputCntl0(GLcontext * ctx, GLuint OutputsWritten)
                ret |= R300_VAP_OUTPUT_VTX_FMT_0__POS_PRESENT;
 
        if (OutputsWritten & (1 << VERT_RESULT_COL0))
-               ret |= R300_VAP_OUTPUT_VTX_FMT_0__COLOR_PRESENT;
+               ret |= R300_VAP_OUTPUT_VTX_FMT_0__COLOR_0_PRESENT;
 
        if (OutputsWritten & (1 << VERT_RESULT_COL1))
                ret |= R300_VAP_OUTPUT_VTX_FMT_0__COLOR_1_PRESENT;
index 7e586203e63ef22ba1e3a6151f1642a6412b64f3..27c273c6df718450deab4c10cb8e19e20083e668 100644 (file)
@@ -235,7 +235,7 @@ static void r300EmitClearState(GLcontext * ctx)
        R300_STATECHANGE(r300, vof);
        reg_start(R300_VAP_OUTPUT_VTX_FMT_0, 1);
        e32(R300_VAP_OUTPUT_VTX_FMT_0__POS_PRESENT |
-           R300_VAP_OUTPUT_VTX_FMT_0__COLOR_PRESENT);
+           R300_VAP_OUTPUT_VTX_FMT_0__COLOR_0_PRESENT);
        e32(0x0);               /* no textures */
 
        R300_STATECHANGE(r300, txe);
index c32290d88c267f6278843f806eb73f491e8d3509..ba68721f7a6f8ca4ff1033bb1c30a14a008a805b 100644 (file)
@@ -106,14 +106,13 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
        /* number of vertices */
 #      define  R300_VAP_VF_CNTL__NUM_VERTICES__SHIFT           16
 
-/* BEGIN: Wild guesses */
 #define R300_VAP_OUTPUT_VTX_FMT_0           0x2090
 #       define R300_VAP_OUTPUT_VTX_FMT_0__POS_PRESENT     (1<<0)
-#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_PRESENT   (1<<1)
-#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_1_PRESENT (1<<2)  /* GUESS */
-#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_2_PRESENT (1<<3)  /* GUESS */
-#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_3_PRESENT (1<<4)  /* GUESS */
-#       define R300_VAP_OUTPUT_VTX_FMT_0__PT_SIZE_PRESENT (1<<16) /* GUESS */
+#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_0_PRESENT (1<<1)
+#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_1_PRESENT (1<<2)
+#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_2_PRESENT (1<<3)
+#       define R300_VAP_OUTPUT_VTX_FMT_0__COLOR_3_PRESENT (1<<4)
+#       define R300_VAP_OUTPUT_VTX_FMT_0__PT_SIZE_PRESENT (1<<16)
 
 #define R300_VAP_OUTPUT_VTX_FMT_1           0x2094
        /* each of the following is 3 bits wide, specifies number
@@ -126,7 +125,11 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
 #       define R300_VAP_OUTPUT_VTX_FMT_1__TEX_5_COMP_CNT_SHIFT 15
 #       define R300_VAP_OUTPUT_VTX_FMT_1__TEX_6_COMP_CNT_SHIFT 18
 #       define R300_VAP_OUTPUT_VTX_FMT_1__TEX_7_COMP_CNT_SHIFT 21
-/* END: Wild guesses */
+#      define R300_VAP_OUTPUT_VTX_FMT_1__NOT_PRESENT  (1<<0)
+#      define R300_VAP_OUTPUT_VTX_FMT_1__1_COMPONENT  (1<<1)
+#      define R300_VAP_OUTPUT_VTX_FMT_1__2_COMPONENTS (1<<2)
+#      define R300_VAP_OUTPUT_VTX_FMT_1__3_COMPONENTS (1<<3)
+#      define R300_VAP_OUTPUT_VTX_FMT_1__4_COMPONENTS (1<<4)
 
 #define R300_SE_VTE_CNTL                  0x20b0
 #      define     R300_VPORT_X_SCALE_ENA                0x00000001