CVS commit: xsrc/external/mit/xf86-video-pnozz/dist/src

2023-11-05 Thread Julian Coleman
Module Name:xsrc
Committed By:   jdc
Date:   Sun Nov  5 17:06:15 UTC 2023

Modified Files:
xsrc/external/mit/xf86-video-pnozz/dist/src: pnozz_exa.c

Log Message:
Add NetBSD keyword.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c
diff -u xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.5 xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.6
--- xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.5	Sun Nov  5 17:01:05 2023
+++ xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c	Sun Nov  5 17:06:14 2023
@@ -29,6 +29,7 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  */
+/* $NetBSD: pnozz_exa.c,v 1.6 2023/11/05 17:06:14 jdc Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"



CVS commit: xsrc/external/mit/xf86-video-pnozz/dist/src

2023-11-05 Thread Julian Coleman
Module Name:xsrc
Committed By:   jdc
Date:   Sun Nov  5 17:06:15 UTC 2023

Modified Files:
xsrc/external/mit/xf86-video-pnozz/dist/src: pnozz_exa.c

Log Message:
Add NetBSD keyword.


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 \
xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xf86-video-pnozz/dist/src

2023-11-05 Thread Julian Coleman
Module Name:xsrc
Committed By:   jdc
Date:   Sun Nov  5 17:01:05 UTC 2023

Modified Files:
xsrc/external/mit/xf86-video-pnozz/dist/src: pnozz_exa.c

Log Message:
Revert r1.4.
The changes are minimal and they cause redraw problems (as reported by
Maxim Devaev on port-sparc).


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 \
xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: xsrc/external/mit/xf86-video-pnozz/dist/src

2023-11-05 Thread Julian Coleman
Module Name:xsrc
Committed By:   jdc
Date:   Sun Nov  5 17:01:05 UTC 2023

Modified Files:
xsrc/external/mit/xf86-video-pnozz/dist/src: pnozz_exa.c

Log Message:
Revert r1.4.
The changes are minimal and they cause redraw problems (as reported by
Maxim Devaev on port-sparc).


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 \
xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c
diff -u xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.4 xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.5
--- xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c:1.4	Wed Jun  9 07:25:57 2021
+++ xsrc/external/mit/xf86-video-pnozz/dist/src/pnozz_exa.c	Sun Nov  5 17:01:05 2023
@@ -1,6 +1,7 @@
 /*
  * SBus Weitek P9100 EXA support
- *
+ */
+/*-
  * Copyright (c) 2021 The NetBSD Foundation, Inc.
  * All rights reserved.
  *
@@ -78,9 +79,11 @@ static CARD32 PnozzDrawROP[] = {
 #define waitReady(pPnozz) while((pnozz_read_4(pPnozz, ENGINE_STATUS) & \
 (ENGINE_BUSY | BLITTER_BUSY)) !=0 )
 
-/* From pnozz_accel.c */
+void PnozzInitEngine(PnozzPtr);
 void pnozz_write_colour(PnozzPtr pPnozz, int reg, CARD32 colour);
 
+extern CARD32 MaxClip, junk;
+
 static void
 PnozzWaitMarker(ScreenPtr pScreen, int Marker)
 {
@@ -107,10 +110,8 @@ PnozzPrepareCopy
 waitReady(pPnozz);
 pnozz_write_4(pPnozz, RASTER_OP, (PnozzCopyROP[alu] & 0xff));
 pnozz_write_4(pPnozz, PLANE_MASK, planemask);
-pPnozz->srcoff = exaGetPixmapOffset(pSrcPixmap);
+pPnozz->srcoff = exaGetPixmapOffset(pSrcPixmap) / pPnozz->width;
 
-if (exaGetPixmapPitch(pSrcPixmap) != exaGetPixmapPitch(pDstPixmap))
-	return FALSE;
 return TRUE;
 }
 
@@ -129,25 +130,24 @@ PnozzCopy
 ScrnInfoPtr pScrn = xf86Screens[pDstPixmap->drawable.pScreen->myNum];
 PnozzPtr pPnozz = GET_PNOZZ_FROM_SCRN(pScrn);
 CARD32 src, dst, srcw, dstw;
-int soff = pPnozz->srcoff / exaGetPixmapPitch(pDstPixmap);
-int doff = exaGetPixmapOffset(pDstPixmap) / exaGetPixmapPitch(pDstPixmap);
+int doff = exaGetPixmapOffset(pDstPixmap) / pPnozz->width;
 
 src = (((xSrc << pPnozz->depthshift) & 0x1fff) << 16) |
-	((ySrc + soff) & 0x1fff);
+	((ySrc + pPnozz->srcoff) & 0x1fff);
 dst = (((xDst << pPnozz->depthshift) & 0x1fff) << 16) |
 	((yDst + doff) & 0x1fff);
-srcw = xSrc + w) << pPnozz->depthshift) - 1) << 16) |
-	((ySrc + soff + h) & 0x1fff);
+srcw = xSrc + w) << pPnozz->depthshift) - 1) << 16) | 
+((ySrc + pPnozz->srcoff + h - 1) & 0x1fff);
 dstw = xDst + w) << pPnozz->depthshift) - 1) << 16) |
-	((yDst + doff + h) & 0x1fff);
+((yDst + doff + h - 1) & 0x1fff);
 
 waitReady(pPnozz);
+
 pnozz_write_4(pPnozz, ABS_XY0, src);
 pnozz_write_4(pPnozz, ABS_XY1, srcw);
 pnozz_write_4(pPnozz, ABS_XY2, dst);
 pnozz_write_4(pPnozz, ABS_XY3, dstw);
-pnozz_read_4(pPnozz, COMMAND_BLIT);
-
+junk = pnozz_read_4(pPnozz, COMMAND_BLIT);
 exaMarkSync(pDstPixmap->drawable.pScreen);
 }
 
@@ -172,8 +172,7 @@ PnozzPrepareSolid(
 
 waitReady(pPnozz);
 pnozz_write_colour(pPnozz, FOREGROUND_COLOR, fg);
-pnozz_write_colour(pPnozz, BACKGROUND_COLOR, fg);
-pnozz_write_4(pPnozz, RASTER_OP, ROP_PAT);
+pnozz_write_4(pPnozz, RASTER_OP, PnozzDrawROP[alu] & 0xff);
 pnozz_write_4(pPnozz, PLANE_MASK, planemask);
 pnozz_write_4(pPnozz, COORD_INDEX, 0);
 
@@ -190,18 +189,15 @@ PnozzSolid(
 {
 ScrnInfoPtr pScrn = xf86Screens[pPixmap->drawable.pScreen->myNum];
 PnozzPtr pPnozz = GET_PNOZZ_FROM_SCRN(pScrn);
-int doff = exaGetPixmapOffset(pPixmap);
+int w = x2 - x - 1;
+int h = y2 - y - 1;
 
 waitReady(pPnozz);
-pnozz_write_4(pPnozz, ABS_XY0, (((x + doff) & 0x1fff) << 16) |
-	(y & 0x1fff));
-pnozz_write_4(pPnozz, ABS_XY1, (((x + doff) & 0x1fff) << 16) |
-	(y2 & 0x1fff));
-pnozz_write_4(pPnozz, ABS_XY2, (((x2 + doff) & 0x1fff) << 16) |
-	(y2 & 0x1fff));
-pnozz_write_4(pPnozz, ABS_XY3, (((x2 + doff) & 0x1fff) << 16) |
-	(y & 0x1fff));
-pnozz_read_4(pPnozz, COMMAND_QUAD);
+pnozz_write_4(pPnozz, RECT_RTW_XY, ((x & 0x1fff) << 16) | 
+(y & 0x1fff));
+pnozz_write_4(pPnozz, RECT_RTP_XY, (((w & 0x1fff) << 16) | 
+(h & 0x1fff)));
+junk = pnozz_read_4(pPnozz, COMMAND_QUAD);
 exaMarkSync(pPixmap->drawable.pScreen);
 }
 
@@ -212,6 +208,8 @@ PnozzEXAInit(ScreenPtr pScreen)
 PnozzPtr pPnozz = GET_PNOZZ_FROM_SCRN(pScrn);
 ExaDriverPtr pExa;
 
+PnozzInitEngine(pPnozz);
+
 pExa = exaDriverAlloc();
 if (!pExa)
 	return FALSE;
@@ -225,8 +223,7 @@ PnozzEXAInit(ScreenPtr pScreen)
 
 /* round to multiple of pixmap pitch */
 pExa->memorySize = (pPnozz->vidmem / pPnozz->width) * pPnozz->width;
-pExa->offScreenBase = pPnozz->width * pPnozz->height *
-