radeon: fix scissors harder.

this makes gnome-shell work on r300 for me
This commit is contained in:
Dave Airlie 2009-08-28 11:01:38 +10:00
parent 60b072d49f
commit d0cb1036aa
3 changed files with 6 additions and 6 deletions

View file

@ -1661,8 +1661,8 @@ void r200_vtbl_update_scissor( GLcontext *ctx )
if (r200->radeon.state.scissor.enabled) {
x1 = r200->radeon.state.scissor.rect.x1;
y1 = r200->radeon.state.scissor.rect.y1;
x2 = r200->radeon.state.scissor.rect.x2 - 1;
y2 = r200->radeon.state.scissor.rect.y2 - 1;
x2 = r200->radeon.state.scissor.rect.x2;
y2 = r200->radeon.state.scissor.rect.y2;
} else {
rrb = radeon_get_colorbuffer(&r200->radeon);
x1 = 0;

View file

@ -226,8 +226,8 @@ void r300_emit_scissor(GLcontext *ctx)
if (r300->radeon.state.scissor.enabled) {
x1 = r300->radeon.state.scissor.rect.x1;
y1 = r300->radeon.state.scissor.rect.y1;
x2 = r300->radeon.state.scissor.rect.x2 - 1;
y2 = r300->radeon.state.scissor.rect.y2 - 1;
x2 = r300->radeon.state.scissor.rect.x2;
y2 = r300->radeon.state.scissor.rect.y2;
} else {
x1 = 0;
y1 = 0;

View file

@ -127,8 +127,8 @@ static void radeonEmitScissor(r100ContextPtr rmesa)
OUT_BATCH((rmesa->radeon.state.scissor.rect.y1 << 16) |
rmesa->radeon.state.scissor.rect.x1);
OUT_BATCH(CP_PACKET0(RADEON_RE_WIDTH_HEIGHT, 0));
OUT_BATCH(((rmesa->radeon.state.scissor.rect.y2 - 1) << 16) |
(rmesa->radeon.state.scissor.rect.x2 - 1));
OUT_BATCH(((rmesa->radeon.state.scissor.rect.y2) << 16) |
(rmesa->radeon.state.scissor.rect.x2));
END_BATCH();
} else {
BEGIN_BATCH(2);