From aea0496f662fa25b40c59e65a50daf58a8a0d6d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20Villac=C3=ADs=20Lasso?= Date: Thu, 6 Nov 2008 16:10:30 -0500 Subject: Fix EXA Copy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit patch from Alex VillacĂ­s Lasso with minor updates from me --- src/savage_exa.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/savage_exa.c b/src/savage_exa.c index 6320e18..7c6efb3 100644 --- a/src/savage_exa.c +++ b/src/savage_exa.c @@ -382,7 +382,7 @@ SavagePrepareCopy(PixmapPtr pSrcPixmap, PixmapPtr pDstPixmap, int xdir, int ydir /*ErrorF("in preparecopy\n");*/ - cmd = BCI_CMD_RECT | BCI_CMD_DEST_PBD_NEW | BCI_CMD_SRC_SBD_COLOR_NEW; + cmd = BCI_CMD_RECT | BCI_CMD_DEST_PBD | BCI_CMD_SRC_SBD_COLOR; BCI_CMD_SET_ROP( cmd, SavageGetCopyROP(alu) ); @@ -397,18 +397,23 @@ SavagePrepareCopy(PixmapPtr pSrcPixmap, PixmapPtr pDstPixmap, int xdir, int ydir psav->SavedBciCmd = cmd; - psav->WaitQueue(psav,7); + psav->WaitQueue(psav,8); BCI_SEND(BCI_SET_REGISTER | BCI_SET_REGISTER_COUNT(1) | BCI_BITPLANE_WRITE_MASK); BCI_SEND(planemask); - BCI_SEND(psav->SavedBciCmd); /* src */ + BCI_SEND(BCI_SET_REGISTER + | BCI_SET_REGISTER_COUNT(2) + | BCI_SBD_1); BCI_SEND(psav->sbd_offset); BCI_SEND(psav->sbd_high); /* dst */ + BCI_SEND(BCI_SET_REGISTER + | BCI_SET_REGISTER_COUNT(2) + | BCI_PBD_1); BCI_SEND(psav->pbd_offset); BCI_SEND(psav->pbd_high); @@ -437,7 +442,8 @@ SavageCopy(PixmapPtr pDstPixmap, int srcX, int srcY, int dstX, int dstY, int wid height ++; } - psav->WaitQueue(psav,4); + psav->WaitQueue(psav,5); + BCI_SEND(psav->SavedBciCmd); BCI_SEND(BCI_X_Y(srcX, srcY)); BCI_SEND(BCI_X_Y(dstX, dstY)); BCI_SEND(BCI_W_H(width, height)); -- cgit v1.2.3