Fixed size calculation in solid rendering
This commit is contained in:
parent
056322336c
commit
784d37ee36
|
@ -1,5 +1,6 @@
|
||||||
2004-04-11 Franco Catrin L. <fcatrin@tuxpan.com>
|
2004-04-11 Franco Catrin L. <fcatrin@tuxpan.com>
|
||||||
* Basic bitblt implementation
|
* Basic bitblt implementation
|
||||||
|
* Fixed width and height calculation in solids
|
||||||
|
|
||||||
2004-04-10 Franco Catrin L. <fcatrin@tuxpan.com>
|
2004-04-10 Franco Catrin L. <fcatrin@tuxpan.com>
|
||||||
* MMIO enabled after switching to new VT
|
* MMIO enabled after switching to new VT
|
||||||
|
|
|
@ -62,7 +62,7 @@ static Bool neoPrepareSolid(PixmapPtr pPixmap,
|
||||||
Pixel fg)
|
Pixel fg)
|
||||||
{
|
{
|
||||||
FbBits depthMask = FbFullMask(pPixmap->drawable.depth);
|
FbBits depthMask = FbFullMask(pPixmap->drawable.depth);
|
||||||
|
DBGOUT("ROP %i\n", alu);
|
||||||
if ((pm & depthMask) != depthMask) {
|
if ((pm & depthMask) != depthMask) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
} else {
|
} else {
|
||||||
|
@ -76,17 +76,8 @@ static void neoSolid (int x1, int y1, int x2, int y2)
|
||||||
int x, y, w, h;
|
int x, y, w, h;
|
||||||
x = x1;
|
x = x1;
|
||||||
y = y1;
|
y = y1;
|
||||||
w = x2-x1 + 1;
|
w = x2-x1;
|
||||||
h = y2-y1 + 1;
|
h = y2-y1;
|
||||||
if (x1>x2) {
|
|
||||||
x = x2;
|
|
||||||
w = -w;
|
|
||||||
}
|
|
||||||
if (y1>y2) {
|
|
||||||
y = y2;
|
|
||||||
h = -h;
|
|
||||||
}
|
|
||||||
|
|
||||||
neoWaitIdle(card);
|
neoWaitIdle(card);
|
||||||
mmio->fgColor = fgColor;
|
mmio->fgColor = fgColor;
|
||||||
mmio->bltCntl =
|
mmio->bltCntl =
|
||||||
|
@ -115,7 +106,7 @@ static void neoCopy (int srcX, int srcY, int dstX, int dstY, int w, int h)
|
||||||
|
|
||||||
if ((dstY < srcY) || ((dstY == srcY) && (dstX < srcX))) {
|
if ((dstY < srcY) || ((dstY == srcY) && (dstX < srcX))) {
|
||||||
mmio->bltCntl =
|
mmio->bltCntl =
|
||||||
NEO_BC3_FIFO_EN |
|
NEO_BC3_FIFO_EN |
|
||||||
NEO_BC3_SKIP_MAPPING | 0x0c0000;
|
NEO_BC3_SKIP_MAPPING | 0x0c0000;
|
||||||
mmio->srcStart = srcY * screen->pitch + srcX * screen->depth;
|
mmio->srcStart = srcY * screen->pitch + srcX * screen->depth;
|
||||||
mmio->dstStart = dstY * screen->pitch + dstX * screen->depth;
|
mmio->dstStart = dstY * screen->pitch + dstX * screen->depth;
|
||||||
|
|
Loading…
Reference in New Issue