From f4092abdf94af6a99aff944d6264bc1284e8bdd4 Mon Sep 17 00:00:00 2001 From: Reinhard Tartler Date: Mon, 10 Oct 2011 17:43:39 +0200 Subject: Imported nx-X11-3.1.0-1.tar.gz Summary: Imported nx-X11-3.1.0-1.tar.gz Keywords: Imported nx-X11-3.1.0-1.tar.gz into Git repository --- .../Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c | 79 ++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 nx-X11/extras/Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c (limited to 'nx-X11/extras/Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c') diff --git a/nx-X11/extras/Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c b/nx-X11/extras/Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c new file mode 100644 index 000000000..bdc9effb7 --- /dev/null +++ b/nx-X11/extras/Mesa/src/mesa/drivers/dri/s3v/s3v_inithw.c @@ -0,0 +1,79 @@ +/* + * Author: Max Lingua + */ + +#include + +#include "s3v_context.h" + +void s3vInitHW( s3vContextPtr vmesa ) +{ + int i; + static short _reset = 1; + + DEBUG(("vmesa->driDrawable = %p\n", vmesa->driDrawable)); + DEBUG(("stride = %i\n", + vmesa->driScreen->fbWidth*vmesa->s3vScreen->cpp)); + DEBUG(("frontOffset = 0x%x\n", vmesa->s3vScreen->frontOffset)); + DEBUG(("backOffset = 0x%x\n", vmesa->s3vScreen->backOffset)); + DEBUG(("depthOffset = 0x%x\n", vmesa->s3vScreen->depthOffset)); + DEBUG(("textureOffset = 0x%x\n", vmesa->s3vScreen->texOffset)); + +/* if (_reset) { */ +/* ioctl(vmesa->driFd, 0x4a); */ + ioctl(vmesa->driFd, 0x41); /* reset */ + _reset = 0; +/* ioctl(vmesa->driFd, 0x4c); */ +/* } */ + + /* FIXME */ + switch (vmesa->s3vScreen->cpp) { + case 2: + break; + case 4: + break; + } + + /* FIXME for stencil, gid, etc */ + switch (vmesa->DepthSize) { + case 15: + case 16: + break; + case 24: + break; + case 32: + break; + } + + vmesa->FogMode = 1; + vmesa->ClearDepth = 0xffff; + vmesa->x = 0; + vmesa->y = 0; + vmesa->w = 0; + vmesa->h = 0; + vmesa->FrameCount = 0; + vmesa->MatrixMode = GL_MODELVIEW; + vmesa->ModelViewCount = 0; + vmesa->ProjCount = 0; + vmesa->TextureCount = 0; + + + /* FIXME: do we need the following? */ + + for (i = 0; i < 16; i++) + if (i % 5 == 0) + vmesa->ModelView[i] = + vmesa->Proj[i] = + vmesa->ModelViewProj[i] = + vmesa->Texture[i] = 1.0; + else + vmesa->ModelView[i] = + vmesa->Proj[i] = + vmesa->ModelViewProj[i] = + vmesa->Texture[i] = 0.0; + + vmesa->LBWindowBase = vmesa->driScreen->fbWidth * + (vmesa->driScreen->fbHeight - 1); + vmesa->FBWindowBase = vmesa->driScreen->fbWidth * + (vmesa->driScreen->fbHeight - 1); +} -- cgit v1.2.3