blt fill did broke winquake fix it now. Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c _____
Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c --- trunk/reactos/subsys/win32k/dib/dib32bpp.c 2005-06-03 00:35:31 UTC (rev 15743) +++ trunk/reactos/subsys/win32k/dib/dib32bpp.c 2005-06-03 01:18:02 UTC (rev 15744) @@ -329,18 +329,17 @@
else { SourceX = ((BltInfo->DestRect.bottom - BltInfo->DestRect.top) * - BltInfo->DestRect.right) << 2; + BltInfo->DestRect.right);
memset4(BltInfo->DestSurface->pvScan0 + BltInfo->DestRect.top * BltInfo->DestSurface->lDelta, 0x00000000, SourceX);
} -#else - SourceX = (BltInfo->DestRect.right - BltInfo->DestRect.left) << 2; +#else for (DestY=BltInfo->DestRect.bottom-1;DestY>=BltInfo->DestRect.top;DestY--) { - DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.bottom, SourceX, DestY, 0x00000000); + DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.left, BltInfo->DestRect.right, DestY, 0x00000000); } #endif
@@ -364,7 +363,7 @@ else { SourceX = ((BltInfo->DestRect.bottom - BltInfo->DestRect.top) * - BltInfo->DestRect.right) << 2; + BltInfo->DestRect.right);
memset4(BltInfo->DestSurface->pvScan0 + BltInfo->DestRect.top * BltInfo->DestSurface->lDelta, 0xFFFFFFFF, SourceX); @@ -372,10 +371,9 @@
} #else - SourceX = (BltInfo->DestRect.right - BltInfo->DestRect.left) << 2; for (DestY=BltInfo->DestRect.bottom-1;DestY>=BltInfo->DestRect.top;DestY--) { - DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.bottom, SourceX, DestY, 0xFFFFFFFF); + DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.left, BltInfo->DestRect.left, DestY, 0xFFFFFFFF); } #endif return TRUE; @@ -395,6 +393,7 @@ case BMF_24BPP: break; case BMF_32BPP: + SrcmaxX = BltInfo->SourceSurface->sizlBitmap.cx - BltInfo->SourcePoint.x; SrcmaxY = BltInfo->SourceSurface->sizlBitmap.cy - BltInfo->SourcePoint.y;