Merge branch 'gallium-winsys-private' into gallium-0.2
authorZack Rusin <zackr@vmware.com>
Sun, 1 Feb 2009 23:48:16 +0000 (18:48 -0500)
committerZack Rusin <zackr@vmware.com>
Sun, 1 Feb 2009 23:48:16 +0000 (18:48 -0500)
1  2 
src/gallium/drivers/nv20/nv20_context.c

index e620166ff556ce00e6d2ea87081834e9b9d00fdc,d3aca8d937a80b83c072ad3de7beb84972a552e1..1659aec8fab77c224b1c85cc2d4f3b51e214664f
@@@ -1,6 -1,6 +1,6 @@@
  #include "draw/draw_context.h"
  #include "pipe/p_defines.h"
- #include "pipe/p_winsys.h"
+ #include "pipe/internal/p_winsys_screen.h"
  
  #include "nv20_context.h"
  #include "nv20_screen.h"
@@@ -263,7 -263,7 +263,7 @@@ static void nv20_init_hwctx(struct nv20
        BEGIN_RING(kelvin, NV20TCL_DEPTH_FUNC, 1);
        OUT_RING  (NV20TCL_DEPTH_FUNC_LESS);
        BEGIN_RING(kelvin, NV20TCL_DEPTH_WRITE_ENABLE, 1);
 -      OUT_RING  (1);
 +      OUT_RING  (0);
        BEGIN_RING(kelvin, NV20TCL_DEPTH_TEST_ENABLE, 1);
        OUT_RING  (0);
        BEGIN_RING(kelvin, NV20TCL_POLYGON_OFFSET_FACTOR, 2);
        memset(projectionmatrix, 0, sizeof(projectionmatrix));
        projectionmatrix[0*4+0] = 1.0;
        projectionmatrix[1*4+1] = 1.0;
 -      projectionmatrix[2*4+2] = 1.0;
 +      projectionmatrix[2*4+2] = 16777215.0;
        projectionmatrix[3*4+3] = 1.0;
        BEGIN_RING(kelvin, NV20TCL_PROJECTION_MATRIX(0), 16);
        for (i = 0; i < 16; i++) {
        }
  
        BEGIN_RING(kelvin, NV20TCL_DEPTH_RANGE_NEAR, 2);
 -      OUT_RINGf  (0.0);
 -      OUT_RINGf  (16777216.0); /* bpp dependant? */
 +      OUT_RINGf (0.0);
 +      OUT_RINGf (16777216.0); /* [0, 1] scaled approx to [0, 2^24] */
  
        BEGIN_RING(kelvin, NV20TCL_VIEWPORT_SCALE0_X, 4);
 -      OUT_RINGf  (0.0); /* x-offset */
 -      OUT_RINGf  (0.0); /* y-offset */
 -      OUT_RINGf  (16777215.0 * 0.5);
 -      OUT_RING  (0);
 +      OUT_RINGf (0.0); /* x-offset, w/2 + 1.031250 */
 +      OUT_RINGf (0.0); /* y-offset, h/2 + 0.030762 */
 +      OUT_RINGf (0.0);
 +      OUT_RINGf (16777215.0);
  
        BEGIN_RING(kelvin, NV20TCL_VIEWPORT_SCALE1_X, 4);
 -      OUT_RINGf  (0.0); /* no effect? */
 -      OUT_RINGf  (0.0); /* no effect? */
 -      OUT_RINGf  (16777215.0 * 0.5);
 -      OUT_RINGf  (65535.0);
 +      OUT_RINGf (0.0); /* no effect?, w/2 */
 +      OUT_RINGf (0.0); /* no effect?, h/2 */
 +      OUT_RINGf (16777215.0 * 0.5);
 +      OUT_RINGf (65535.0);
  
        FIRE_RING (NULL);
  }