doc update; minor changes
authorDaniel Borca <dborca@users.sourceforge.net>
Thu, 20 May 2004 06:11:16 +0000 (06:11 +0000)
committerDaniel Borca <dborca@users.sourceforge.net>
Thu, 20 May 2004 06:11:16 +0000 (06:11 +0000)
docs/README.3DFX
src/mesa/drivers/glide/fxwgl.c
src/mesa/tnl/t_vtx_x86.c

index b1145b7f807c9c0db94366d468f8be390dfdee7f..120e3ea23f9fb02123ab817ce04ad77d289ddba2 100644 (file)
@@ -185,6 +185,15 @@ MESA_FX_MAXLOD
            "9"  - 512x512 textures
            "10" - 1024x1024 textures
            "11" - 2048x2048 textures
+MESA_GLX_FX
+       OS: win32, linux
+       HW: selective
+       Desc: force display mode
+       Note: (!) experimental!
+       Value:
+           "w" - windowed mode (linux: V1/2/Rush, win32: all except V1/V2)
+           "f" - fullscreen mode (linux: V1/V2/Rush)
+           "d" - disable glide driver (linux: V1/V2/Rush)
 
 
 
index b87f60282ce0aebe23a9636988948e243dbd9221..cb098fa2ef41e49c8bd5471f56948d2d3c7a8837 100644 (file)
@@ -240,6 +240,12 @@ static BITMAPINFO *dibBMI;
 static HBITMAP dibHBM;
 static HWND dibWnd;
 
+static int env_check (const char *var, int val)
+{
+ const char *env = getenv(var);
+ return (env && (env[0] == val));
+}
+
 static LRESULT APIENTRY 
 __wglMonitor(HWND hwnd, UINT message, UINT wParam, LONG lParam)
  {
@@ -331,10 +337,8 @@ wglCreateContext(HDC hdc)
       SetWindowLong(hWnd, GWL_WNDPROC, (LONG) __wglMonitor);
    }
 
-   {
-    char *env;
-    /* always log when debugging, or if user demands */
-    if (TDFX_DEBUG || ((env = getenv("MESA_FX_INFO")) && env[0] == 'r'))
+   /* always log when debugging, or if user demands */
+   if (TDFX_DEBUG || env_check("MESA_FX_INFO", 'r')) {
       freopen("MESA.LOG", "w", stderr);
    }
 
@@ -343,7 +347,7 @@ wglCreateContext(HDC hdc)
      ShowWindow(hWnd, SW_SHOWNORMAL);
      SetForegroundWindow(hWnd);
      Sleep(100); /* a hack for win95 */
-     if (0 && !(GetWindowLong (hWnd, GWL_STYLE) & WS_POPUP)) {
+     if (env_check("MESA_GLX_FX", 'w') && !(GetWindowLong (hWnd, GWL_STYLE) & WS_POPUP)) {
        /* [dBorca] Hack alert: unfinished business! */
         error = !(ctx = fxMesaCreateContext((GLuint) hWnd, GR_RESOLUTION_NONE, GR_REFRESH_NONE, pix[curPFD - 1].mesaAttr));
      } else {
index 5d7f95e98b7d0a7a059ce32b8e73edaf27670199..53265d23759c67e05c7db243e37e3b20b82f7c0c 100644 (file)
@@ -176,15 +176,19 @@ static struct _tnl_dynfn *makeX86Vertex3fv( GLcontext *ctx, int vertex_size )
    TNLcontext *tnl = TNL_CONTEXT(ctx);
    DFN ( _tnl_x86_Vertex3fv, tnl->vtx.cache.Vertex[3-1], vertex_size );
 
-   FIXUP(dfn->code, 0, 0, (int)&tnl->vtx.vbptr);
-   FIXUP(dfn->code, 0, 1, vertex_size - 3);
-   FIXUP(dfn->code, 0, 2, (int)&tnl->vtx.vertex[3]);
-   FIXUP(dfn->code, 0, 0, (int)&tnl->vtx.vbptr);
-   FIXUP(dfn->code, 0, 3, (int)&tnl->vtx.counter);
-   FIXUP(dfn->code, 0, 3, (int)&tnl->vtx.counter);
-   FIXUP(dfn->code, 0, 4, (int)ctx);
-   FIXUPREL(dfn->code, 0, 5, (int)&_tnl_wrap_filled_vertex);
-   return dfn;
+   switch (vertex_size) {
+      default: {
+         FIXUP(dfn->code, 0, 0, (int)&tnl->vtx.vbptr);
+         FIXUP(dfn->code, 0, 1, vertex_size - 3);
+         FIXUP(dfn->code, 0, 2, (int)&tnl->vtx.vertex[3]);
+         FIXUP(dfn->code, 0, 0, (int)&tnl->vtx.vbptr);
+         FIXUP(dfn->code, 0, 3, (int)&tnl->vtx.counter);
+         FIXUP(dfn->code, 0, 3, (int)&tnl->vtx.counter);
+         FIXUP(dfn->code, 0, 4, (int)ctx);
+         FIXUPREL(dfn->code, 0, 5, (int)&_tnl_wrap_filled_vertex);
+         return dfn;
+      }
+   }
 }
 
 static struct _tnl_dynfn *makeX86Vertex4fv( GLcontext *ctx, int vertex_size )