small fixes. README added
This commit is contained in:
parent
d9cca52feb
commit
893ea12559
|
@ -1,3 +1,6 @@
|
||||||
|
2004-06-07 Franco Catrin L. <fcatrin@tuxpan.com>
|
||||||
|
* Small fix for depth calculation
|
||||||
|
|
||||||
2004-04-11 Franco Catrin L. <fcatrin@tuxpan.com>
|
2004-04-11 Franco Catrin L. <fcatrin@tuxpan.com>
|
||||||
|
|
||||||
* Basic bitblt implementation
|
* Basic bitblt implementation
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
Neomagic KDrive driver for xserver
|
||||||
|
|
||||||
|
This is a very simple implementation for Neomagic based cards.
|
||||||
|
Almost all functions are handled by the VESA driver, and
|
||||||
|
only solid drawing and bitblt are done with acceleration,
|
||||||
|
|
||||||
|
This driver has been tested in MagicGraph 256AV+(NM2230) card
|
||||||
|
but it should work on other cards as well.
|
||||||
|
|
||||||
|
The only warning is to choose a working mode. You can ask
|
||||||
|
for supported modes using -listmodes. I use -mode 0x117.
|
||||||
|
|
||||||
|
--
|
||||||
|
Franco Catrin L.
|
||||||
|
fcatrin@tuxpan.com
|
|
@ -108,6 +108,7 @@ static void neoSolid (int x1, int y1, int x2, int y2)
|
||||||
mmio->dstStart = y * screen->pitch + x * screen->depth;
|
mmio->dstStart = y * screen->pitch + x * screen->depth;
|
||||||
|
|
||||||
mmio->xyExt = (unsigned long)(h << 16) | (w & 0xffff);
|
mmio->xyExt = (unsigned long)(h << 16) | (w & 0xffff);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -139,7 +140,7 @@ static void neoCopy (int srcX, int srcY, int dstX, int dstY, int w, int h)
|
||||||
NEO_BC0_DST_Y_DEC |
|
NEO_BC0_DST_Y_DEC |
|
||||||
NEO_BC0_SRC_Y_DEC |
|
NEO_BC0_SRC_Y_DEC |
|
||||||
NEO_BC3_FIFO_EN |
|
NEO_BC3_FIFO_EN |
|
||||||
NEO_BC3_SKIP_MAPPING | 0x0c0000;
|
NEO_BC3_SKIP_MAPPING | rop;
|
||||||
srcX+=w-1;
|
srcX+=w-1;
|
||||||
dstX+=w-1;
|
dstX+=w-1;
|
||||||
srcY+=h-1;
|
srcY+=h-1;
|
||||||
|
@ -168,15 +169,9 @@ KaaScreenInfoRec neoKaa = {
|
||||||
Bool neoDrawInit (ScreenPtr pScreen)
|
Bool neoDrawInit (ScreenPtr pScreen)
|
||||||
{
|
{
|
||||||
ENTER();
|
ENTER();
|
||||||
// SetupNeo(pScreen);
|
|
||||||
// PictureScreenPtr ps = GetPictureScreen(pScreen);
|
|
||||||
|
|
||||||
if (!kaaDrawInit (pScreen, &neoKaa)) {
|
if (!kaaDrawInit (pScreen, &neoKaa)) {
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if (ps && tridents->off_screen)
|
|
||||||
// ps->Composite = tridentComposite;
|
|
||||||
LEAVE();
|
LEAVE();
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -188,7 +183,7 @@ void neoDrawEnable (ScreenPtr pScreen)
|
||||||
screen = neos;
|
screen = neos;
|
||||||
card = neoc;
|
card = neoc;
|
||||||
mmio = neoc->mmio;
|
mmio = neoc->mmio;
|
||||||
screen->depth = screen->backendScreen.mode.BitsPerPixel/8;
|
screen->depth = (screen->backendScreen.mode.BitsPerPixel+7)/8;
|
||||||
screen->pitch = screen->backendScreen.mode.BytesPerScanLine;
|
screen->pitch = screen->backendScreen.mode.BytesPerScanLine;
|
||||||
DBGOUT("NEO depth=%x, pitch=%x\n", screen->depth, screen->pitch);
|
DBGOUT("NEO depth=%x, pitch=%x\n", screen->depth, screen->pitch);
|
||||||
LEAVE();
|
LEAVE();
|
||||||
|
|
|
@ -300,6 +300,11 @@ neoCardFini(KdCardInfo *card)
|
||||||
#define neoCursorDisable 0 // disableCursor
|
#define neoCursorDisable 0 // disableCursor
|
||||||
#define neoCursorFini 0 // finiCursor */
|
#define neoCursorFini 0 // finiCursor */
|
||||||
#define neoRecolorCursor 0 // recolorCursor */
|
#define neoRecolorCursor 0 // recolorCursor */
|
||||||
|
//#define neoDrawInit 0 // initAccel
|
||||||
|
//#define neoDrawEnable 0 // enableAccel
|
||||||
|
//#define neoDrawSync 0 // syncAccel
|
||||||
|
//#define neoDrawDisable 0 // disableAccel
|
||||||
|
//#define neoDrawFini 0 // finiAccel
|
||||||
|
|
||||||
KdCardFuncs neoFuncs = {
|
KdCardFuncs neoFuncs = {
|
||||||
neoCardInit, // cardinit
|
neoCardInit, // cardinit
|
||||||
|
|
Loading…
Reference in New Issue