summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/i830_cursor.c2
-rw-r--r--src/i830_render.c12
-rw-r--r--src/i830_xf86Rotate.c2
3 files changed, 8 insertions, 8 deletions
diff --git a/src/i830_cursor.c b/src/i830_cursor.c
index 464eb6dd..70a8d52b 100644
--- a/src/i830_cursor.c
+++ b/src/i830_cursor.c
@@ -510,7 +510,7 @@ I830SetCursorPosition(ScrnInfoPtr pScrn, int x, int y)
hotspoty = I810_CURSOR_Y;
break;
case RR_Rotate_270:
- thisx = mode->VDisplay - (root_y - crtc->y);
+ thisx = mode->HDisplay - (root_y - crtc->y);
thisy = (root_x - crtc->x);
hotspotx = I810_CURSOR_Y;
break;
diff --git a/src/i830_render.c b/src/i830_render.c
index 99338439..96aeb3fa 100644
--- a/src/i830_render.c
+++ b/src/i830_render.c
@@ -557,8 +557,8 @@ i830_composite(PixmapPtr pDst, int srcX, int srcY, int maskX, int maskY,
OUT_RING(PRIM3D_INLINE | PRIM3D_RECTLIST | (vertex_count-1));
- OUT_RING_F(dstX);
- OUT_RING_F(dstY);
+ OUT_RING_F(-0.125 + dstX);
+ OUT_RING_F(-0.125 + dstY);
OUT_RING_F(src_x[0] / pI830->scale_units[0][0]);
OUT_RING_F(src_y[0] / pI830->scale_units[0][1]);
if (has_mask) {
@@ -566,8 +566,8 @@ i830_composite(PixmapPtr pDst, int srcX, int srcY, int maskX, int maskY,
OUT_RING_F(mask_y[0] / pI830->scale_units[1][1]);
}
- OUT_RING_F(dstX);
- OUT_RING_F(dstY + h);
+ OUT_RING_F(-0.125 + dstX);
+ OUT_RING_F(-0.125 + dstY + h);
OUT_RING_F(src_x[1] / pI830->scale_units[0][0]);
OUT_RING_F(src_y[1] / pI830->scale_units[0][1]);
if (has_mask) {
@@ -575,8 +575,8 @@ i830_composite(PixmapPtr pDst, int srcX, int srcY, int maskX, int maskY,
OUT_RING_F(mask_y[1] / pI830->scale_units[1][1]);
}
- OUT_RING_F(dstX + w);
- OUT_RING_F(dstY + h);
+ OUT_RING_F(-0.125 + dstX + w);
+ OUT_RING_F(-0.125 + dstY + h);
OUT_RING_F(src_x[2] / pI830->scale_units[0][0]);
OUT_RING_F(src_y[2] / pI830->scale_units[0][1]);
if (has_mask) {
diff --git a/src/i830_xf86Rotate.c b/src/i830_xf86Rotate.c
index bd4d5a60..2491e7b3 100644
--- a/src/i830_xf86Rotate.c
+++ b/src/i830_xf86Rotate.c
@@ -196,7 +196,7 @@ xf86RotateCrtcRedisplay (xf86CrtcPtr crtc, RegionPtr region)
case RR_Rotate_270:
transform.matrix[0][1] = IntToxFixed(1);
transform.matrix[1][0] = IntToxFixed(-1);
- transform.matrix[1][2] += IntToxFixed(crtc->mode.VDisplay);
+ transform.matrix[1][2] += IntToxFixed(crtc->mode.HDisplay);
break;
}