summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/savage/savagestate.c
diff options
context:
space:
mode:
authorFelix Kuehling <[email protected]>2004-03-26 23:27:24 +0000
committerFelix Kuehling <[email protected]>2004-03-26 23:27:24 +0000
commit58fa2a8c5049b209b6bcaffe2530daea0314ef27 (patch)
tree95e5d3d15f10b2a07ace2e4a90525ccd9fbdfda1 /src/mesa/drivers/dri/savage/savagestate.c
parent1e50e4046f6a85319ef33033d4b529345fd08ddd (diff)
Enable drawing directly to the (now tiled) front buffer.
Diffstat (limited to 'src/mesa/drivers/dri/savage/savagestate.c')
-rw-r--r--src/mesa/drivers/dri/savage/savagestate.c25
1 files changed, 6 insertions, 19 deletions
diff --git a/src/mesa/drivers/dri/savage/savagestate.c b/src/mesa/drivers/dri/savage/savagestate.c
index 5fdafa4288b..599dbaa3ea0 100644
--- a/src/mesa/drivers/dri/savage/savagestate.c
+++ b/src/mesa/drivers/dri/savage/savagestate.c
@@ -642,18 +642,11 @@ static void savageDDDrawBuffer(GLcontext *ctx, GLenum mode )
case DD_FRONT_LEFT_BIT:
imesa->IsDouble = GL_FALSE;
- if(imesa->IsFullScreen)
- {
- imesa->drawMap = (char *)imesa->apertureBase[TARGET_FRONT];
- imesa->readMap = (char *)imesa->apertureBase[TARGET_FRONT];
- }
- else
- {
- imesa->drawMap = (char *)imesa->apertureBase[TARGET_BACK];
- imesa->readMap = (char *)imesa->apertureBase[TARGET_BACK];
- }
+ imesa->drawMap = (char *)imesa->apertureBase[TARGET_FRONT];
+ imesa->readMap = (char *)imesa->apertureBase[TARGET_FRONT];
+ imesa->regs.s4.destCtrl.ni.offset = imesa->savageScreen->frontOffset>>11;
imesa->NotFirstFrame = GL_FALSE;
- imesa->dirty |= SAVAGE_UPLOAD_BUFFERS;
+ imesa->dirty |= SAVAGE_UPLOAD_BUFFERS | SAVAGE_UPLOAD_CTX;
savageXMesaSetFrontClipRects( imesa );
FALLBACK( ctx, SAVAGE_FALLBACK_DRAW_BUFFER, GL_FALSE );
break;
@@ -661,8 +654,9 @@ static void savageDDDrawBuffer(GLcontext *ctx, GLenum mode )
imesa->IsDouble = GL_TRUE;
imesa->drawMap = (char *)imesa->apertureBase[TARGET_BACK];
imesa->readMap = (char *)imesa->apertureBase[TARGET_BACK];
+ imesa->regs.s4.destCtrl.ni.offset = imesa->savageScreen->backOffset>>11;
imesa->NotFirstFrame = GL_FALSE;
- imesa->dirty |= SAVAGE_UPLOAD_BUFFERS;
+ imesa->dirty |= SAVAGE_UPLOAD_BUFFERS | SAVAGE_UPLOAD_CTX;
savageXMesaSetBackClipRects( imesa );
FALLBACK( ctx, SAVAGE_FALLBACK_DRAW_BUFFER, GL_FALSE );
break;
@@ -1838,13 +1832,6 @@ void savageDDRenderStart(GLcontext *ctx)
void savageDDRenderEnd(GLcontext *ctx)
{
- savageContextPtr imesa = SAVAGE_CONTEXT( ctx );
-
- if(!imesa->IsDouble)
- {
- savageSwapBuffers(imesa->driDrawable);
- }
-
}
static void savageDDInvalidateState( GLcontext *ctx, GLuint new_state )