]> git.xonotic.org Git - xonotic/xonotic.git/blobdiff - misc/builddeps/dp.win32/include/d3dtypes.h
Move libraries into subdirectories for better selectivity when building.
[xonotic/xonotic.git] / misc / builddeps / dp.win32 / include / d3dtypes.h
diff --git a/misc/builddeps/dp.win32/include/d3dtypes.h b/misc/builddeps/dp.win32/include/d3dtypes.h
deleted file mode 100644 (file)
index 2ac2cff..0000000
+++ /dev/null
@@ -1,1374 +0,0 @@
-/*
- * Copyright (C) 2000 Peter Hunnisett
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-/* FIXME: Need to add C++ code for certain structs for headers - this is going to be a problem
-          if WINE continues to only use C code  - I suppose that we could always inline in
-          the header file to get around that little problem... */
-/* FIXME: We need to implement versioning on everything directx 5 and up if these headers
-          are going to be generically useful for directx stuff */
-
-#ifndef __WINE_D3DTYPES_H
-#define __WINE_D3DTYPES_H
-
-#include <_mingw_dxhelper.h>
-
-#ifndef __WINESRC__
-# include <windows.h>
-#endif
-
-#include <float.h>
-#include <ddraw.h>
-
-#define D3DVALP(val, prec)      ((float)(val))
-#define D3DVAL(val)             ((float)(val))
-#define D3DDivide(a, b)         (float)((double) (a) / (double) (b))
-#define D3DMultiply(a, b)       ((a) * (b))
-
-typedef LONG D3DFIXED;
-
-
-#ifndef RGB_MAKE
-#define CI_GETALPHA(ci)    ((ci) >> 24)
-#define CI_GETINDEX(ci)    (((ci) >> 8) & 0xffff)
-#define CI_GETFRACTION(ci) ((ci) & 0xff)
-#define CI_ROUNDINDEX(ci)  CI_GETINDEX((ci) + 0x80)
-#define CI_MASKALPHA(ci)   ((ci) & 0xffffff)
-#define CI_MAKE(a, i, f)    (((a) << 24) | ((i) << 8) | (f))
-
-#define RGBA_GETALPHA(rgb)      ((rgb) >> 24)
-#define RGBA_GETRED(rgb)        (((rgb) >> 16) & 0xff)
-#define RGBA_GETGREEN(rgb)      (((rgb) >> 8) & 0xff)
-#define RGBA_GETBLUE(rgb)       ((rgb) & 0xff)
-#define RGBA_MAKE(r, g, b, a)   ((D3DCOLOR) (((a) << 24) | ((r) << 16) | ((g) << 8) | (b)))
-
-#define D3DRGB(r, g, b) \
-    (0xff000000 | ( ((LONG)((r) * 255)) << 16) | (((LONG)((g) * 255)) << 8) | (LONG)((b) * 255))
-#define D3DRGBA(r, g, b, a) \
-    (   (((LONG)((a) * 255)) << 24) | (((LONG)((r) * 255)) << 16) \
-    |   (((LONG)((g) * 255)) << 8) | (LONG)((b) * 255) \
-    )
-
-#define RGB_GETRED(rgb)         (((rgb) >> 16) & 0xff)
-#define RGB_GETGREEN(rgb)       (((rgb) >> 8) & 0xff)
-#define RGB_GETBLUE(rgb)        ((rgb) & 0xff)
-#define RGBA_SETALPHA(rgba, x) (((x) << 24) | ((rgba) & 0x00ffffff))
-#define RGB_MAKE(r, g, b)       ((D3DCOLOR) (((r) << 16) | ((g) << 8) | (b)))
-#define RGBA_TORGB(rgba)       ((D3DCOLOR) ((rgba) & 0xffffff))
-#define RGB_TORGBA(rgb)        ((D3DCOLOR) ((rgb) | 0xff000000))
-
-#endif
-
-#define D3DENUMRET_CANCEL                        DDENUMRET_CANCEL
-#define D3DENUMRET_OK                            DDENUMRET_OK
-
-typedef HRESULT (CALLBACK *LPD3DVALIDATECALLBACK)(LPVOID lpUserArg, DWORD dwOffset);
-typedef HRESULT (CALLBACK *LPD3DENUMTEXTUREFORMATSCALLBACK)(LPDDSURFACEDESC lpDdsd, LPVOID lpContext);
-typedef HRESULT (CALLBACK *LPD3DENUMPIXELFORMATSCALLBACK)(LPDDPIXELFORMAT lpDDPixFmt, LPVOID lpContext);
-
-#ifndef DX_SHARED_DEFINES
-
-typedef float D3DVALUE,*LPD3DVALUE;
-
-#ifndef D3DCOLOR_DEFINED
-typedef DWORD D3DCOLOR, *LPD3DCOLOR;
-#define D3DCOLOR_DEFINED
-#endif
-
-#ifndef D3DVECTOR_DEFINED
-typedef struct _D3DVECTOR {
-  union {
-        D3DVALUE        x;
-    D3DVALUE dvX;
-  } DUMMYUNIONNAME1;
-  union {
-        D3DVALUE        y;
-    D3DVALUE dvY;
-  } DUMMYUNIONNAME2;
-  union {
-        D3DVALUE        z;
-    D3DVALUE dvZ;
-  } DUMMYUNIONNAME3;
-#if defined(__cplusplus) && defined(D3D_OVERLOADS)
-  /* the definitions for these methods are in d3dvec.inl */
-public:
-  /*** constructors ***/
-  _D3DVECTOR() {}
-  _D3DVECTOR(D3DVALUE f);
-  _D3DVECTOR(D3DVALUE _x, D3DVALUE _y, D3DVALUE _z);
-  _D3DVECTOR(const D3DVALUE f[3]);
-
-  /*** assignment operators ***/
-  _D3DVECTOR& operator += (const _D3DVECTOR& v);
-  _D3DVECTOR& operator -= (const _D3DVECTOR& v);
-  _D3DVECTOR& operator *= (const _D3DVECTOR& v);
-  _D3DVECTOR& operator /= (const _D3DVECTOR& v);
-  _D3DVECTOR& operator *= (D3DVALUE s);
-  _D3DVECTOR& operator /= (D3DVALUE s);
-
-  /*** unary operators ***/
-  friend _D3DVECTOR operator + (const _D3DVECTOR& v);
-  friend _D3DVECTOR operator - (const _D3DVECTOR& v);
-
-  /*** binary operators ***/
-  friend _D3DVECTOR operator + (const _D3DVECTOR& v1, const _D3DVECTOR& v2);
-  friend _D3DVECTOR operator - (const _D3DVECTOR& v1, const _D3DVECTOR& v2);
-
-  friend _D3DVECTOR operator * (const _D3DVECTOR& v, D3DVALUE s);
-  friend _D3DVECTOR operator * (D3DVALUE s, const _D3DVECTOR& v);
-  friend _D3DVECTOR operator / (const _D3DVECTOR& v, D3DVALUE s);
-
-  friend D3DVALUE SquareMagnitude(const _D3DVECTOR& v);
-  friend D3DVALUE Magnitude(const _D3DVECTOR& v);
-
-  friend _D3DVECTOR Normalize(const _D3DVECTOR& v);
-
-  friend D3DVALUE DotProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2);
-  friend _D3DVECTOR CrossProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2);
-#endif
-} D3DVECTOR;
-#define D3DVECTOR_DEFINED
-#endif
-
-#ifndef LPD3DVECTOR_DEFINED
-typedef D3DVECTOR *LPD3DVECTOR;
-#define LPD3DVECTOR_DEFINED
-#endif
-
-#define DX_SHARED_DEFINES
-#endif /* DX_SHARED_DEFINES */
-
-typedef DWORD D3DMATERIALHANDLE, *LPD3DMATERIALHANDLE;
-typedef DWORD D3DTEXTUREHANDLE,  *LPD3DTEXTUREHANDLE;
-typedef DWORD D3DMATRIXHANDLE,   *LPD3DMATRIXHANDLE;
-
-typedef struct _D3DCOLORVALUE {
-        union {
-                D3DVALUE r;
-                D3DVALUE dvR;
-        } DUMMYUNIONNAME1;
-        union {
-                D3DVALUE g;
-                D3DVALUE dvG;
-        } DUMMYUNIONNAME2;
-        union {
-                D3DVALUE b;
-                D3DVALUE dvB;
-        } DUMMYUNIONNAME3;
-        union {
-                D3DVALUE a;
-                D3DVALUE dvA;
-        } DUMMYUNIONNAME4;
-} D3DCOLORVALUE,*LPD3DCOLORVALUE;
-
-typedef struct _D3DRECT {
-  union {
-    LONG x1;
-    LONG lX1;
-  } DUMMYUNIONNAME1;
-  union {
-    LONG y1;
-    LONG lY1;
-  } DUMMYUNIONNAME2;
-  union {
-    LONG x2;
-    LONG lX2;
-  } DUMMYUNIONNAME3;
-  union {
-    LONG y2;
-    LONG lY2;
-  } DUMMYUNIONNAME4;
-} D3DRECT, *LPD3DRECT;
-
-typedef struct _D3DHVERTEX {
-    DWORD         dwFlags;
- union {
-    D3DVALUE    hx;
-    D3DVALUE    dvHX;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DVALUE    hy;
-    D3DVALUE    dvHY;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DVALUE    hz;
-    D3DVALUE    dvHZ;
-  } DUMMYUNIONNAME3;
-} D3DHVERTEX, *LPD3DHVERTEX;
-
-/*
- * Transformed/lit vertices
- */
-typedef struct _D3DTLVERTEX {
-  union {
-    D3DVALUE    sx;
-    D3DVALUE    dvSX;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DVALUE    sy;
-    D3DVALUE    dvSY;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DVALUE    sz;
-    D3DVALUE    dvSZ;
-  } DUMMYUNIONNAME3;
-  union {
-    D3DVALUE    rhw;
-    D3DVALUE    dvRHW;
-  } DUMMYUNIONNAME4;
-  union {
-    D3DCOLOR    color;
-    D3DCOLOR    dcColor;
-  } DUMMYUNIONNAME5;
-  union {
-    D3DCOLOR    specular;
-    D3DCOLOR    dcSpecular;
-  } DUMMYUNIONNAME6;
-  union {
-    D3DVALUE    tu;
-    D3DVALUE    dvTU;
-  } DUMMYUNIONNAME7;
-  union {
-    D3DVALUE    tv;
-    D3DVALUE    dvTV;
-  } DUMMYUNIONNAME8;
-#if defined(__cplusplus) && defined(D3D_OVERLOADS)
-public:
-  _D3DTLVERTEX() {}
-  _D3DTLVERTEX(const D3DVECTOR& v, float _rhw, D3DCOLOR _color, D3DCOLOR _specular, float _tu, float _tv) {
-    sx = v.x; sy = v.y; sz = v.z; rhw = _rhw;
-    color = _color; specular = _specular;
-    tu = _tu; tv = _tv;
-  }
-#endif
-} D3DTLVERTEX, *LPD3DTLVERTEX;
-
-typedef struct _D3DLVERTEX {
-  union {
-    D3DVALUE x;
-    D3DVALUE dvX;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DVALUE y;
-    D3DVALUE dvY;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DVALUE z;
-    D3DVALUE dvZ;
-  } DUMMYUNIONNAME3;
-  DWORD            dwReserved;
-  union {
-    D3DCOLOR     color;
-    D3DCOLOR     dcColor;
-  } DUMMYUNIONNAME4;
-  union {
-    D3DCOLOR     specular;
-    D3DCOLOR     dcSpecular;
-  } DUMMYUNIONNAME5;
-  union {
-    D3DVALUE     tu;
-    D3DVALUE     dvTU;
-  } DUMMYUNIONNAME6;
-  union {
-    D3DVALUE     tv;
-    D3DVALUE     dvTV;
-  } DUMMYUNIONNAME7;
-} D3DLVERTEX, *LPD3DLVERTEX;
-
-typedef struct _D3DVERTEX {
-  union {
-    D3DVALUE     x;
-    D3DVALUE     dvX;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DVALUE     y;
-    D3DVALUE     dvY;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DVALUE     z;
-    D3DVALUE     dvZ;
-  } DUMMYUNIONNAME3;
-  union {
-    D3DVALUE     nx;
-    D3DVALUE     dvNX;
-  } DUMMYUNIONNAME4;
-  union {
-    D3DVALUE     ny;
-    D3DVALUE     dvNY;
-  } DUMMYUNIONNAME5;
-  union {
-    D3DVALUE     nz;
-    D3DVALUE     dvNZ;
-  } DUMMYUNIONNAME6;
-  union {
-    D3DVALUE     tu;
-    D3DVALUE     dvTU;
-  } DUMMYUNIONNAME7;
-  union {
-    D3DVALUE     tv;
-    D3DVALUE     dvTV;
-  } DUMMYUNIONNAME8;
-#if defined(__cplusplus) && defined(D3D_OVERLOADS)
-public:
-  _D3DVERTEX() {}
-  _D3DVERTEX(const D3DVECTOR& v, const D3DVECTOR& n, float _tu, float _tv) {
-    x  = v.x; y  = v.y; z  = v.z;
-    nx = n.x; ny = n.y; nz = n.z;
-    tu = _tu; tv = _tv;
-  }
-#endif
-} D3DVERTEX, *LPD3DVERTEX;
-
-typedef struct _D3DMATRIX {
-  D3DVALUE        _11, _12, _13, _14;
-  D3DVALUE        _21, _22, _23, _24;
-  D3DVALUE        _31, _32, _33, _34;
-  D3DVALUE        _41, _42, _43, _44;
-#if defined(__cplusplus) && defined(D3D_OVERLOADS)
-  _D3DMATRIX() { }
-
-    /* This is different from MS, but avoids anonymous structs. */
-    D3DVALUE &operator () (int r, int c)
-       { return ((D3DVALUE [4][4])&_11)[r][c]; }
-    const D3DVALUE &operator() (int r, int c) const
-       { return ((const D3DVALUE [4][4])&_11)[r][c]; }
-#endif
-} D3DMATRIX, *LPD3DMATRIX;
-
-#if defined(__cplusplus) && defined(D3D_OVERLOADS)
-#include <d3dvec.inl>
-#endif
-
-typedef struct _D3DVIEWPORT {
-  DWORD       dwSize;
-  DWORD       dwX;
-  DWORD       dwY;
-  DWORD       dwWidth;
-  DWORD       dwHeight;
-  D3DVALUE    dvScaleX;
-  D3DVALUE    dvScaleY;
-  D3DVALUE    dvMaxX;
-  D3DVALUE    dvMaxY;
-  D3DVALUE    dvMinZ;
-  D3DVALUE    dvMaxZ;
-} D3DVIEWPORT, *LPD3DVIEWPORT;
-
-typedef struct _D3DVIEWPORT2 {
-  DWORD       dwSize;
-  DWORD       dwX;
-  DWORD       dwY;
-  DWORD       dwWidth;
-  DWORD       dwHeight;
-  D3DVALUE    dvClipX;
-  D3DVALUE    dvClipY;
-  D3DVALUE    dvClipWidth;
-  D3DVALUE    dvClipHeight;
-  D3DVALUE    dvMinZ;
-  D3DVALUE    dvMaxZ;
-} D3DVIEWPORT2, *LPD3DVIEWPORT2;
-
-typedef struct _D3DVIEWPORT7 {
-  DWORD       dwX;
-  DWORD       dwY;
-  DWORD       dwWidth;
-  DWORD       dwHeight;
-  D3DVALUE    dvMinZ;
-  D3DVALUE    dvMaxZ;
-} D3DVIEWPORT7, *LPD3DVIEWPORT7;
-
-#define D3DMAXUSERCLIPPLANES 32
-
-#define D3DCLIPPLANE0 (1 << 0)
-#define D3DCLIPPLANE1 (1 << 1)
-#define D3DCLIPPLANE2 (1 << 2)
-#define D3DCLIPPLANE3 (1 << 3)
-#define D3DCLIPPLANE4 (1 << 4)
-#define D3DCLIPPLANE5 (1 << 5)
-
-#define D3DCLIP_LEFT     0x00000001
-#define D3DCLIP_RIGHT    0x00000002
-#define D3DCLIP_TOP      0x00000004
-#define D3DCLIP_BOTTOM   0x00000008
-#define D3DCLIP_FRONT    0x00000010
-#define D3DCLIP_BACK     0x00000020
-#define D3DCLIP_GEN0     0x00000040
-#define D3DCLIP_GEN1     0x00000080
-#define D3DCLIP_GEN2     0x00000100
-#define D3DCLIP_GEN3     0x00000200
-#define D3DCLIP_GEN4     0x00000400
-#define D3DCLIP_GEN5     0x00000800
-
-#define D3DSTATUS_CLIPUNIONLEFT                 D3DCLIP_LEFT
-#define D3DSTATUS_CLIPUNIONRIGHT                D3DCLIP_RIGHT
-#define D3DSTATUS_CLIPUNIONTOP                  D3DCLIP_TOP
-#define D3DSTATUS_CLIPUNIONBOTTOM               D3DCLIP_BOTTOM
-#define D3DSTATUS_CLIPUNIONFRONT                D3DCLIP_FRONT
-#define D3DSTATUS_CLIPUNIONBACK                 D3DCLIP_BACK
-#define D3DSTATUS_CLIPUNIONGEN0                 D3DCLIP_GEN0
-#define D3DSTATUS_CLIPUNIONGEN1                 D3DCLIP_GEN1
-#define D3DSTATUS_CLIPUNIONGEN2                 D3DCLIP_GEN2
-#define D3DSTATUS_CLIPUNIONGEN3                 D3DCLIP_GEN3
-#define D3DSTATUS_CLIPUNIONGEN4                 D3DCLIP_GEN4
-#define D3DSTATUS_CLIPUNIONGEN5                 D3DCLIP_GEN5
-
-#define D3DSTATUS_CLIPINTERSECTIONLEFT          0x00001000
-#define D3DSTATUS_CLIPINTERSECTIONRIGHT         0x00002000
-#define D3DSTATUS_CLIPINTERSECTIONTOP           0x00004000
-#define D3DSTATUS_CLIPINTERSECTIONBOTTOM        0x00008000
-#define D3DSTATUS_CLIPINTERSECTIONFRONT         0x00010000
-#define D3DSTATUS_CLIPINTERSECTIONBACK          0x00020000
-#define D3DSTATUS_CLIPINTERSECTIONGEN0          0x00040000
-#define D3DSTATUS_CLIPINTERSECTIONGEN1          0x00080000
-#define D3DSTATUS_CLIPINTERSECTIONGEN2          0x00100000
-#define D3DSTATUS_CLIPINTERSECTIONGEN3          0x00200000
-#define D3DSTATUS_CLIPINTERSECTIONGEN4          0x00400000
-#define D3DSTATUS_CLIPINTERSECTIONGEN5          0x00800000
-#define D3DSTATUS_ZNOTVISIBLE                   0x01000000
-
-#define D3DSTATUS_CLIPUNIONALL  (               \
-            D3DSTATUS_CLIPUNIONLEFT     |       \
-            D3DSTATUS_CLIPUNIONRIGHT    |       \
-            D3DSTATUS_CLIPUNIONTOP      |       \
-            D3DSTATUS_CLIPUNIONBOTTOM   |       \
-            D3DSTATUS_CLIPUNIONFRONT    |       \
-            D3DSTATUS_CLIPUNIONBACK     |       \
-            D3DSTATUS_CLIPUNIONGEN0     |       \
-            D3DSTATUS_CLIPUNIONGEN1     |       \
-            D3DSTATUS_CLIPUNIONGEN2     |       \
-            D3DSTATUS_CLIPUNIONGEN3     |       \
-            D3DSTATUS_CLIPUNIONGEN4     |       \
-            D3DSTATUS_CLIPUNIONGEN5             \
-            )
-
-#define D3DSTATUS_CLIPINTERSECTIONALL   (               \
-            D3DSTATUS_CLIPINTERSECTIONLEFT      |       \
-            D3DSTATUS_CLIPINTERSECTIONRIGHT     |       \
-            D3DSTATUS_CLIPINTERSECTIONTOP       |       \
-            D3DSTATUS_CLIPINTERSECTIONBOTTOM    |       \
-            D3DSTATUS_CLIPINTERSECTIONFRONT     |       \
-            D3DSTATUS_CLIPINTERSECTIONBACK      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN0      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN1      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN2      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN3      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN4      |       \
-            D3DSTATUS_CLIPINTERSECTIONGEN5              \
-            )
-
-#define D3DSTATUS_DEFAULT       (                       \
-            D3DSTATUS_CLIPINTERSECTIONALL       |       \
-            D3DSTATUS_ZNOTVISIBLE)
-
-#define D3DTRANSFORM_CLIPPED       0x00000001
-#define D3DTRANSFORM_UNCLIPPED     0x00000002
-
-typedef struct _D3DTRANSFORMDATA {
-  DWORD           dwSize;
-  LPVOID          lpIn;
-  DWORD           dwInSize;
-  LPVOID          lpOut;
-  DWORD           dwOutSize;
-  LPD3DHVERTEX    lpHOut;
-  DWORD           dwClip;
-  DWORD           dwClipIntersection;
-  DWORD           dwClipUnion;
-  D3DRECT         drExtent;
-} D3DTRANSFORMDATA, *LPD3DTRANSFORMDATA;
-
-typedef struct _D3DLIGHTINGELEMENT {
-  D3DVECTOR dvPosition;
-  D3DVECTOR dvNormal;
-} D3DLIGHTINGELEMENT, *LPD3DLIGHTINGELEMENT;
-
-typedef struct _D3DMATERIAL {
-  DWORD               dwSize;
-  union {
-    D3DCOLORVALUE   diffuse;
-    D3DCOLORVALUE   dcvDiffuse;
-  } DUMMYUNIONNAME;
-  union {
-    D3DCOLORVALUE   ambient;
-    D3DCOLORVALUE   dcvAmbient;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DCOLORVALUE   specular;
-    D3DCOLORVALUE   dcvSpecular;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DCOLORVALUE   emissive;
-    D3DCOLORVALUE   dcvEmissive;
-  } DUMMYUNIONNAME3;
-  union {
-    D3DVALUE        power;
-    D3DVALUE        dvPower;
-  } DUMMYUNIONNAME4;
-  D3DTEXTUREHANDLE    hTexture;
-  DWORD               dwRampSize;
-} D3DMATERIAL, *LPD3DMATERIAL;
-
-typedef struct _D3DMATERIAL7 {
-  union {
-    D3DCOLORVALUE   diffuse;
-    D3DCOLORVALUE   dcvDiffuse;
-  } DUMMYUNIONNAME;
-  union {
-    D3DCOLORVALUE   ambient;
-    D3DCOLORVALUE   dcvAmbient;
-  } DUMMYUNIONNAME1;
-  union {
-    D3DCOLORVALUE   specular;
-    D3DCOLORVALUE   dcvSpecular;
-  } DUMMYUNIONNAME2;
-  union {
-    D3DCOLORVALUE   emissive;
-    D3DCOLORVALUE   dcvEmissive;
-  } DUMMYUNIONNAME3;
-  union {
-    D3DVALUE        power;
-    D3DVALUE        dvPower;
-  } DUMMYUNIONNAME4;
-} D3DMATERIAL7, *LPD3DMATERIAL7;
-
-typedef enum {
-  D3DLIGHT_POINT          = 1,
-  D3DLIGHT_SPOT           = 2,
-  D3DLIGHT_DIRECTIONAL    = 3,
-  D3DLIGHT_PARALLELPOINT  = 4,
-  D3DLIGHT_GLSPOT         = 5,
-  D3DLIGHT_FORCE_DWORD    = 0x7fffffff
-} D3DLIGHTTYPE;
-
-typedef struct _D3DLIGHT {
-    DWORD           dwSize;
-    D3DLIGHTTYPE    dltType;
-    D3DCOLORVALUE   dcvColor;
-    D3DVECTOR       dvPosition;
-    D3DVECTOR       dvDirection;
-    D3DVALUE        dvRange;
-    D3DVALUE        dvFalloff;
-    D3DVALUE        dvAttenuation0;
-    D3DVALUE        dvAttenuation1;
-    D3DVALUE        dvAttenuation2;
-    D3DVALUE        dvTheta;
-    D3DVALUE        dvPhi;
-} D3DLIGHT,*LPD3DLIGHT;
-
-typedef struct _D3DLIGHT7 {
-    D3DLIGHTTYPE    dltType;
-    D3DCOLORVALUE   dcvDiffuse;
-    D3DCOLORVALUE   dcvSpecular;
-    D3DCOLORVALUE   dcvAmbient;
-    D3DVECTOR       dvPosition;
-    D3DVECTOR       dvDirection;
-    D3DVALUE        dvRange;
-    D3DVALUE        dvFalloff;
-    D3DVALUE        dvAttenuation0;
-    D3DVALUE        dvAttenuation1;
-    D3DVALUE        dvAttenuation2;
-    D3DVALUE        dvTheta;
-    D3DVALUE        dvPhi;
-} D3DLIGHT7, *LPD3DLIGHT7;
-
-#define D3DLIGHT_ACTIVE         0x00000001
-#define D3DLIGHT_NO_SPECULAR    0x00000002
-#define D3DLIGHT_ALL (D3DLIGHT_ACTIVE | D3DLIGHT_NO_SPECULAR) /* 0x3 */
-
-#define D3DLIGHT_RANGE_MAX              ((float)sqrt(FLT_MAX))
-
-typedef struct _D3DLIGHT2 {
-  DWORD           dwSize;
-  D3DLIGHTTYPE    dltType;
-  D3DCOLORVALUE   dcvColor;
-  D3DVECTOR       dvPosition;
-  D3DVECTOR       dvDirection;
-  D3DVALUE        dvRange;
-  D3DVALUE        dvFalloff;
-  D3DVALUE        dvAttenuation0;
-  D3DVALUE        dvAttenuation1;
-  D3DVALUE        dvAttenuation2;
-  D3DVALUE        dvTheta;
-  D3DVALUE        dvPhi;
-  DWORD           dwFlags;
-} D3DLIGHT2, *LPD3DLIGHT2;
-
-typedef struct _D3DLIGHTDATA {
-  DWORD                dwSize;
-  LPD3DLIGHTINGELEMENT lpIn;
-  DWORD                dwInSize;
-  LPD3DTLVERTEX        lpOut;
-  DWORD                dwOutSize;
-} D3DLIGHTDATA, *LPD3DLIGHTDATA;
-
-#define D3DCOLOR_MONO   1
-#define D3DCOLOR_RGB    2
-
-typedef DWORD D3DCOLORMODEL;
-
-
-#ifndef D3DCLEAR_TARGET
-#define D3DCLEAR_TARGET   0x00000001
-#endif
-#ifndef D3DCLEAR_ZBUFFER
-#define D3DCLEAR_ZBUFFER  0x00000002
-#endif
-#ifndef D3DCLEAR_STENCIL
-#define D3DCLEAR_STENCIL  0x00000004
-#endif
-
-typedef enum _D3DOPCODE {
-  D3DOP_POINT           = 1,
-  D3DOP_LINE            = 2,
-  D3DOP_TRIANGLE        = 3,
-  D3DOP_MATRIXLOAD      = 4,
-  D3DOP_MATRIXMULTIPLY  = 5,
-  D3DOP_STATETRANSFORM  = 6,
-  D3DOP_STATELIGHT      = 7,
-  D3DOP_STATERENDER     = 8,
-  D3DOP_PROCESSVERTICES = 9,
-  D3DOP_TEXTURELOAD     = 10,
-  D3DOP_EXIT            = 11,
-  D3DOP_BRANCHFORWARD   = 12,
-  D3DOP_SPAN            = 13,
-  D3DOP_SETSTATUS       = 14,
-
-  D3DOP_FORCE_DWORD     = 0x7fffffff
-} D3DOPCODE;
-
-typedef struct _D3DINSTRUCTION {
-  BYTE bOpcode;
-  BYTE bSize;
-  WORD wCount;
-} D3DINSTRUCTION, *LPD3DINSTRUCTION;
-
-typedef struct _D3DTEXTURELOAD {
-  D3DTEXTUREHANDLE hDestTexture;
-  D3DTEXTUREHANDLE hSrcTexture;
-} D3DTEXTURELOAD, *LPD3DTEXTURELOAD;
-
-typedef struct _D3DPICKRECORD {
-  BYTE     bOpcode;
-  BYTE     bPad;
-  DWORD    dwOffset;
-  D3DVALUE dvZ;
-} D3DPICKRECORD, *LPD3DPICKRECORD;
-
-typedef enum {
-  D3DSHADE_FLAT         = 1,
-  D3DSHADE_GOURAUD      = 2,
-  D3DSHADE_PHONG        = 3,
-  D3DSHADE_FORCE_DWORD  = 0x7fffffff
-} D3DSHADEMODE;
-
-typedef enum {
-  D3DFILL_POINT         = 1,
-  D3DFILL_WIREFRAME     = 2,
-  D3DFILL_SOLID         = 3,
-  D3DFILL_FORCE_DWORD   = 0x7fffffff
-} D3DFILLMODE;
-
-typedef struct _D3DLINEPATTERN {
-  WORD    wRepeatFactor;
-  WORD    wLinePattern;
-} D3DLINEPATTERN;
-
-typedef enum {
-  D3DFILTER_NEAREST          = 1,
-  D3DFILTER_LINEAR           = 2,
-  D3DFILTER_MIPNEAREST       = 3,
-  D3DFILTER_MIPLINEAR        = 4,
-  D3DFILTER_LINEARMIPNEAREST = 5,
-  D3DFILTER_LINEARMIPLINEAR  = 6,
-  D3DFILTER_FORCE_DWORD      = 0x7fffffff
-} D3DTEXTUREFILTER;
-
-typedef enum {
-  D3DBLEND_ZERO            = 1,
-  D3DBLEND_ONE             = 2,
-  D3DBLEND_SRCCOLOR        = 3,
-  D3DBLEND_INVSRCCOLOR     = 4,
-  D3DBLEND_SRCALPHA        = 5,
-  D3DBLEND_INVSRCALPHA     = 6,
-  D3DBLEND_DESTALPHA       = 7,
-  D3DBLEND_INVDESTALPHA    = 8,
-  D3DBLEND_DESTCOLOR       = 9,
-  D3DBLEND_INVDESTCOLOR    = 10,
-  D3DBLEND_SRCALPHASAT     = 11,
-  D3DBLEND_BOTHSRCALPHA    = 12,
-  D3DBLEND_BOTHINVSRCALPHA = 13,
-  D3DBLEND_FORCE_DWORD     = 0x7fffffff
-} D3DBLEND;
-
-typedef enum {
-  D3DTBLEND_DECAL         = 1,
-  D3DTBLEND_MODULATE      = 2,
-  D3DTBLEND_DECALALPHA    = 3,
-  D3DTBLEND_MODULATEALPHA = 4,
-  D3DTBLEND_DECALMASK     = 5,
-  D3DTBLEND_MODULATEMASK  = 6,
-  D3DTBLEND_COPY          = 7,
-  D3DTBLEND_ADD           = 8,
-  D3DTBLEND_FORCE_DWORD   = 0x7fffffff
-} D3DTEXTUREBLEND;
-
-typedef enum _D3DTEXTUREADDRESS {
-    D3DTADDRESS_WRAP           = 1,
-    D3DTADDRESS_MIRROR         = 2,
-    D3DTADDRESS_CLAMP          = 3,
-    D3DTADDRESS_BORDER         = 4,
-    D3DTADDRESS_FORCE_DWORD    = 0x7fffffff
-} D3DTEXTUREADDRESS;
-
-typedef enum {
-  D3DCULL_NONE        = 1,
-  D3DCULL_CW          = 2,
-  D3DCULL_CCW         = 3,
-  D3DCULL_FORCE_DWORD = 0x7fffffff
-} D3DCULL;
-
-typedef enum {
-  D3DCMP_NEVER        = 1,
-  D3DCMP_LESS         = 2,
-  D3DCMP_EQUAL        = 3,
-  D3DCMP_LESSEQUAL    = 4,
-  D3DCMP_GREATER      = 5,
-  D3DCMP_NOTEQUAL     = 6,
-  D3DCMP_GREATEREQUAL = 7,
-  D3DCMP_ALWAYS       = 8,
-  D3DCMP_FORCE_DWORD  = 0x7fffffff
-} D3DCMPFUNC;
-
-typedef enum _D3DSTENCILOP {
-  D3DSTENCILOP_KEEP        = 1,
-  D3DSTENCILOP_ZERO        = 2,
-  D3DSTENCILOP_REPLACE     = 3,
-  D3DSTENCILOP_INCRSAT     = 4,
-  D3DSTENCILOP_DECRSAT     = 5,
-  D3DSTENCILOP_INVERT      = 6,
-  D3DSTENCILOP_INCR        = 7,
-  D3DSTENCILOP_DECR        = 8,
-  D3DSTENCILOP_FORCE_DWORD = 0x7fffffff
-} D3DSTENCILOP;
-
-typedef enum _D3DFOGMODE {
-  D3DFOG_NONE         = 0,
-  D3DFOG_EXP          = 1,
-  D3DFOG_EXP2         = 2,
-  D3DFOG_LINEAR       = 3,
-  D3DFOG_FORCE_DWORD  = 0x7fffffff
-} D3DFOGMODE;
-
-typedef enum _D3DZBUFFERTYPE {
-  D3DZB_FALSE        = 0,
-  D3DZB_TRUE         = 1,
-  D3DZB_USEW         = 2,
-  D3DZB_FORCE_DWORD  = 0x7fffffff
-} D3DZBUFFERTYPE;
-
-typedef enum _D3DANTIALIASMODE {
-  D3DANTIALIAS_NONE            = 0,
-  D3DANTIALIAS_SORTDEPENDENT   = 1,
-  D3DANTIALIAS_SORTINDEPENDENT = 2,
-  D3DANTIALIAS_FORCE_DWORD     = 0x7fffffff
-} D3DANTIALIASMODE;
-
-typedef enum {
-  D3DVT_VERTEX        = 1,
-  D3DVT_LVERTEX       = 2,
-  D3DVT_TLVERTEX      = 3,
-  D3DVT_FORCE_DWORD   = 0x7fffffff
-} D3DVERTEXTYPE;
-
-typedef enum {
-  D3DPT_POINTLIST     = 1,
-  D3DPT_LINELIST      = 2,
-  D3DPT_LINESTRIP     = 3,
-  D3DPT_TRIANGLELIST  = 4,
-  D3DPT_TRIANGLESTRIP = 5,
-  D3DPT_TRIANGLEFAN   = 6,
-  D3DPT_FORCE_DWORD   = 0x7fffffff
-} D3DPRIMITIVETYPE;
-
-#define D3DSTATE_OVERRIDE_BIAS      256
-
-#define D3DSTATE_OVERRIDE(type) (D3DRENDERSTATETYPE)(((DWORD) (type) + D3DSTATE_OVERRIDE_BIAS))
-
-typedef enum _D3DTRANSFORMSTATETYPE {
-    D3DTRANSFORMSTATE_WORLD         = 1,
-    D3DTRANSFORMSTATE_VIEW          = 2,
-    D3DTRANSFORMSTATE_PROJECTION    = 3,
-    D3DTRANSFORMSTATE_WORLD1        = 4,
-    D3DTRANSFORMSTATE_WORLD2        = 5,
-    D3DTRANSFORMSTATE_WORLD3        = 6,
-    D3DTRANSFORMSTATE_TEXTURE0      = 16,
-    D3DTRANSFORMSTATE_TEXTURE1      = 17,
-    D3DTRANSFORMSTATE_TEXTURE2      = 18,
-    D3DTRANSFORMSTATE_TEXTURE3      = 19,
-    D3DTRANSFORMSTATE_TEXTURE4      = 20,
-    D3DTRANSFORMSTATE_TEXTURE5      = 21,
-    D3DTRANSFORMSTATE_TEXTURE6      = 22,
-    D3DTRANSFORMSTATE_TEXTURE7      = 23,
-    D3DTRANSFORMSTATE_FORCE_DWORD   = 0x7fffffff
-} D3DTRANSFORMSTATETYPE;
-
-typedef enum {
-  D3DLIGHTSTATE_MATERIAL      = 1,
-  D3DLIGHTSTATE_AMBIENT       = 2,
-  D3DLIGHTSTATE_COLORMODEL    = 3,
-  D3DLIGHTSTATE_FOGMODE       = 4,
-  D3DLIGHTSTATE_FOGSTART      = 5,
-  D3DLIGHTSTATE_FOGEND        = 6,
-  D3DLIGHTSTATE_FOGDENSITY    = 7,
-  D3DLIGHTSTATE_COLORVERTEX   = 8,
-  D3DLIGHTSTATE_FORCE_DWORD   = 0x7fffffff
-} D3DLIGHTSTATETYPE;
-
-typedef enum {
-  D3DRENDERSTATE_TEXTUREHANDLE      = 1,
-  D3DRENDERSTATE_ANTIALIAS          = 2,
-  D3DRENDERSTATE_TEXTUREADDRESS     = 3,
-  D3DRENDERSTATE_TEXTUREPERSPECTIVE = 4,
-  D3DRENDERSTATE_WRAPU              = 5,
-  D3DRENDERSTATE_WRAPV              = 6,
-  D3DRENDERSTATE_ZENABLE            = 7,
-  D3DRENDERSTATE_FILLMODE           = 8,
-  D3DRENDERSTATE_SHADEMODE          = 9,
-  D3DRENDERSTATE_LINEPATTERN        = 10,
-  D3DRENDERSTATE_MONOENABLE         = 11,
-  D3DRENDERSTATE_ROP2               = 12,
-  D3DRENDERSTATE_PLANEMASK          = 13,
-  D3DRENDERSTATE_ZWRITEENABLE       = 14,
-  D3DRENDERSTATE_ALPHATESTENABLE    = 15,
-  D3DRENDERSTATE_LASTPIXEL          = 16,
-  D3DRENDERSTATE_TEXTUREMAG         = 17,
-  D3DRENDERSTATE_TEXTUREMIN         = 18,
-  D3DRENDERSTATE_SRCBLEND           = 19,
-  D3DRENDERSTATE_DESTBLEND          = 20,
-  D3DRENDERSTATE_TEXTUREMAPBLEND    = 21,
-  D3DRENDERSTATE_CULLMODE           = 22,
-  D3DRENDERSTATE_ZFUNC              = 23,
-  D3DRENDERSTATE_ALPHAREF           = 24,
-  D3DRENDERSTATE_ALPHAFUNC          = 25,
-  D3DRENDERSTATE_DITHERENABLE       = 26,
-  D3DRENDERSTATE_ALPHABLENDENABLE   = 27,
-  D3DRENDERSTATE_FOGENABLE          = 28,
-  D3DRENDERSTATE_SPECULARENABLE     = 29,
-  D3DRENDERSTATE_ZVISIBLE           = 30,
-  D3DRENDERSTATE_SUBPIXEL           = 31,
-  D3DRENDERSTATE_SUBPIXELX          = 32,
-  D3DRENDERSTATE_STIPPLEDALPHA      = 33,
-  D3DRENDERSTATE_FOGCOLOR           = 34,
-  D3DRENDERSTATE_FOGTABLEMODE       = 35,
-  D3DRENDERSTATE_FOGTABLESTART      = 36,
-  D3DRENDERSTATE_FOGTABLEEND        = 37,
-  D3DRENDERSTATE_FOGTABLEDENSITY    = 38,
-  D3DRENDERSTATE_FOGSTART           = 36,
-  D3DRENDERSTATE_FOGEND             = 37,
-  D3DRENDERSTATE_FOGDENSITY         = 38,
-  D3DRENDERSTATE_STIPPLEENABLE      = 39,
-  D3DRENDERSTATE_EDGEANTIALIAS      = 40,
-  D3DRENDERSTATE_COLORKEYENABLE     = 41,
-  D3DRENDERSTATE_BORDERCOLOR        = 43,
-  D3DRENDERSTATE_TEXTUREADDRESSU    = 44,
-  D3DRENDERSTATE_TEXTUREADDRESSV    = 45,
-  D3DRENDERSTATE_MIPMAPLODBIAS      = 46,
-  D3DRENDERSTATE_ZBIAS              = 47,
-  D3DRENDERSTATE_RANGEFOGENABLE     = 48,
-  D3DRENDERSTATE_ANISOTROPY         = 49,
-  D3DRENDERSTATE_FLUSHBATCH         = 50,
-  D3DRENDERSTATE_TRANSLUCENTSORTINDEPENDENT = 51,
-
-  D3DRENDERSTATE_STENCILENABLE      = 52,
-  D3DRENDERSTATE_STENCILFAIL        = 53,
-  D3DRENDERSTATE_STENCILZFAIL       = 54,
-  D3DRENDERSTATE_STENCILPASS        = 55,
-  D3DRENDERSTATE_STENCILFUNC        = 56,
-  D3DRENDERSTATE_STENCILREF         = 57,
-  D3DRENDERSTATE_STENCILMASK        = 58,
-  D3DRENDERSTATE_STENCILWRITEMASK   = 59,
-  D3DRENDERSTATE_TEXTUREFACTOR      = 60,
-
-  D3DRENDERSTATE_STIPPLEPATTERN00   = 64,
-  D3DRENDERSTATE_STIPPLEPATTERN01   = 65,
-  D3DRENDERSTATE_STIPPLEPATTERN02   = 66,
-  D3DRENDERSTATE_STIPPLEPATTERN03   = 67,
-  D3DRENDERSTATE_STIPPLEPATTERN04   = 68,
-  D3DRENDERSTATE_STIPPLEPATTERN05   = 69,
-  D3DRENDERSTATE_STIPPLEPATTERN06   = 70,
-  D3DRENDERSTATE_STIPPLEPATTERN07   = 71,
-  D3DRENDERSTATE_STIPPLEPATTERN08   = 72,
-  D3DRENDERSTATE_STIPPLEPATTERN09   = 73,
-  D3DRENDERSTATE_STIPPLEPATTERN10   = 74,
-  D3DRENDERSTATE_STIPPLEPATTERN11   = 75,
-  D3DRENDERSTATE_STIPPLEPATTERN12   = 76,
-  D3DRENDERSTATE_STIPPLEPATTERN13   = 77,
-  D3DRENDERSTATE_STIPPLEPATTERN14   = 78,
-  D3DRENDERSTATE_STIPPLEPATTERN15   = 79,
-  D3DRENDERSTATE_STIPPLEPATTERN16   = 80,
-  D3DRENDERSTATE_STIPPLEPATTERN17   = 81,
-  D3DRENDERSTATE_STIPPLEPATTERN18   = 82,
-  D3DRENDERSTATE_STIPPLEPATTERN19   = 83,
-  D3DRENDERSTATE_STIPPLEPATTERN20   = 84,
-  D3DRENDERSTATE_STIPPLEPATTERN21   = 85,
-  D3DRENDERSTATE_STIPPLEPATTERN22   = 86,
-  D3DRENDERSTATE_STIPPLEPATTERN23   = 87,
-  D3DRENDERSTATE_STIPPLEPATTERN24   = 88,
-  D3DRENDERSTATE_STIPPLEPATTERN25   = 89,
-  D3DRENDERSTATE_STIPPLEPATTERN26   = 90,
-  D3DRENDERSTATE_STIPPLEPATTERN27   = 91,
-  D3DRENDERSTATE_STIPPLEPATTERN28   = 92,
-  D3DRENDERSTATE_STIPPLEPATTERN29   = 93,
-  D3DRENDERSTATE_STIPPLEPATTERN30   = 94,
-  D3DRENDERSTATE_STIPPLEPATTERN31   = 95,
-
-  D3DRENDERSTATE_WRAP0              = 128,
-  D3DRENDERSTATE_WRAP1              = 129,
-  D3DRENDERSTATE_WRAP2              = 130,
-  D3DRENDERSTATE_WRAP3              = 131,
-  D3DRENDERSTATE_WRAP4              = 132,
-  D3DRENDERSTATE_WRAP5              = 133,
-  D3DRENDERSTATE_WRAP6              = 134,
-  D3DRENDERSTATE_WRAP7              = 135,
-  D3DRENDERSTATE_CLIPPING            = 136,
-  D3DRENDERSTATE_LIGHTING            = 137,
-  D3DRENDERSTATE_EXTENTS             = 138,
-  D3DRENDERSTATE_AMBIENT             = 139,
-  D3DRENDERSTATE_FOGVERTEXMODE       = 140,
-  D3DRENDERSTATE_COLORVERTEX         = 141,
-  D3DRENDERSTATE_LOCALVIEWER         = 142,
-  D3DRENDERSTATE_NORMALIZENORMALS    = 143,
-  D3DRENDERSTATE_COLORKEYBLENDENABLE = 144,
-  D3DRENDERSTATE_DIFFUSEMATERIALSOURCE    = 145,
-  D3DRENDERSTATE_SPECULARMATERIALSOURCE   = 146,
-  D3DRENDERSTATE_AMBIENTMATERIALSOURCE    = 147,
-  D3DRENDERSTATE_EMISSIVEMATERIALSOURCE   = 148,
-  D3DRENDERSTATE_VERTEXBLEND              = 151,
-  D3DRENDERSTATE_CLIPPLANEENABLE          = 152,
-
-  D3DRENDERSTATE_FORCE_DWORD        = 0x7fffffff
-
-  /* FIXME: We have some retired values that are being reused for DirectX 7 */
-} D3DRENDERSTATETYPE;
-
-typedef enum _D3DMATERIALCOLORSOURCE
-{
-    D3DMCS_MATERIAL = 0,
-    D3DMCS_COLOR1   = 1,
-    D3DMCS_COLOR2   = 2,
-    D3DMCS_FORCE_DWORD = 0x7fffffff
-} D3DMATERIALCOLORSOURCE;
-
-#define D3DRENDERSTATE_BLENDENABLE      D3DRENDERSTATE_ALPHABLENDENABLE
-#define D3DRENDERSTATE_WRAPBIAS                 128UL
-#define D3DWRAP_U   0x00000001L
-#define D3DWRAP_V   0x00000002L
-
-#define D3DWRAPCOORD_0   0x00000001L
-#define D3DWRAPCOORD_1   0x00000002L
-#define D3DWRAPCOORD_2   0x00000004L
-#define D3DWRAPCOORD_3   0x00000008L
-
-#define D3DRENDERSTATE_STIPPLEPATTERN(y) (D3DRENDERSTATE_STIPPLEPATTERN00 + (y))
-
-typedef struct _D3DSTATE {
-  union {
-    D3DTRANSFORMSTATETYPE dtstTransformStateType;
-    D3DLIGHTSTATETYPE     dlstLightStateType;
-    D3DRENDERSTATETYPE    drstRenderStateType;
-  } DUMMYUNIONNAME1;
-  union {
-    DWORD                 dwArg[1];
-    D3DVALUE              dvArg[1];
-  } DUMMYUNIONNAME2;
-} D3DSTATE, *LPD3DSTATE;
-
-typedef struct _D3DMATRIXLOAD {
-  D3DMATRIXHANDLE hDestMatrix;
-  D3DMATRIXHANDLE hSrcMatrix;
-} D3DMATRIXLOAD, *LPD3DMATRIXLOAD;
-
-typedef struct _D3DMATRIXMULTIPLY {
-  D3DMATRIXHANDLE hDestMatrix;
-  D3DMATRIXHANDLE hSrcMatrix1;
-  D3DMATRIXHANDLE hSrcMatrix2;
-} D3DMATRIXMULTIPLY, *LPD3DMATRIXMULTIPLY;
-
-typedef struct _D3DPROCESSVERTICES {
-  DWORD dwFlags;
-  WORD  wStart;
-  WORD  wDest;
-  DWORD dwCount;
-  DWORD dwReserved;
-} D3DPROCESSVERTICES, *LPD3DPROCESSVERTICES;
-
-#define D3DPROCESSVERTICES_TRANSFORMLIGHT       0x00000000L
-#define D3DPROCESSVERTICES_TRANSFORM            0x00000001L
-#define D3DPROCESSVERTICES_COPY                 0x00000002L
-#define D3DPROCESSVERTICES_OPMASK               0x00000007L
-
-#define D3DPROCESSVERTICES_UPDATEEXTENTS        0x00000008L
-#define D3DPROCESSVERTICES_NOCOLOR              0x00000010L
-
-typedef enum _D3DTEXTURESTAGESTATETYPE
-{
-    D3DTSS_COLOROP        =  1,
-    D3DTSS_COLORARG1      =  2,
-    D3DTSS_COLORARG2      =  3,
-    D3DTSS_ALPHAOP        =  4,
-    D3DTSS_ALPHAARG1      =  5,
-    D3DTSS_ALPHAARG2      =  6,
-    D3DTSS_BUMPENVMAT00   =  7,
-    D3DTSS_BUMPENVMAT01   =  8,
-    D3DTSS_BUMPENVMAT10   =  9,
-    D3DTSS_BUMPENVMAT11   = 10,
-    D3DTSS_TEXCOORDINDEX  = 11,
-    D3DTSS_ADDRESS        = 12,
-    D3DTSS_ADDRESSU       = 13,
-    D3DTSS_ADDRESSV       = 14,
-    D3DTSS_BORDERCOLOR    = 15,
-    D3DTSS_MAGFILTER      = 16,
-    D3DTSS_MINFILTER      = 17,
-    D3DTSS_MIPFILTER      = 18,
-    D3DTSS_MIPMAPLODBIAS  = 19,
-    D3DTSS_MAXMIPLEVEL    = 20,
-    D3DTSS_MAXANISOTROPY  = 21,
-    D3DTSS_BUMPENVLSCALE  = 22,
-    D3DTSS_BUMPENVLOFFSET = 23,
-    D3DTSS_TEXTURETRANSFORMFLAGS = 24,
-    D3DTSS_FORCE_DWORD   = 0x7fffffff
-} D3DTEXTURESTAGESTATETYPE;
-
-#define D3DTSS_TCI_PASSTHRU                             0x00000000
-#define D3DTSS_TCI_CAMERASPACENORMAL                    0x00010000
-#define D3DTSS_TCI_CAMERASPACEPOSITION                  0x00020000
-#define D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR          0x00030000
-
-typedef enum _D3DTEXTUREOP
-{
-    D3DTOP_DISABLE    = 1,
-    D3DTOP_SELECTARG1 = 2,
-    D3DTOP_SELECTARG2 = 3,
-
-    D3DTOP_MODULATE   = 4,
-    D3DTOP_MODULATE2X = 5,
-    D3DTOP_MODULATE4X = 6,
-
-    D3DTOP_ADD          =  7,
-    D3DTOP_ADDSIGNED    =  8,
-    D3DTOP_ADDSIGNED2X  =  9,
-    D3DTOP_SUBTRACT     = 10,
-    D3DTOP_ADDSMOOTH    = 11,
-
-    D3DTOP_BLENDDIFFUSEALPHA    = 12,
-    D3DTOP_BLENDTEXTUREALPHA    = 13,
-    D3DTOP_BLENDFACTORALPHA     = 14,
-    D3DTOP_BLENDTEXTUREALPHAPM  = 15,
-    D3DTOP_BLENDCURRENTALPHA    = 16,
-
-    D3DTOP_PREMODULATE            = 17,
-    D3DTOP_MODULATEALPHA_ADDCOLOR = 18,
-    D3DTOP_MODULATECOLOR_ADDALPHA = 19,
-    D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20,
-    D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21,
-
-    D3DTOP_BUMPENVMAP           = 22,
-    D3DTOP_BUMPENVMAPLUMINANCE  = 23,
-    D3DTOP_DOTPRODUCT3          = 24,
-
-    D3DTOP_FORCE_DWORD = 0x7fffffff
-} D3DTEXTUREOP;
-
-#define D3DTA_SELECTMASK        0x0000000f
-#define D3DTA_DIFFUSE           0x00000000
-#define D3DTA_CURRENT           0x00000001
-#define D3DTA_TEXTURE           0x00000002
-#define D3DTA_TFACTOR           0x00000003
-#define D3DTA_SPECULAR          0x00000004
-#define D3DTA_COMPLEMENT        0x00000010
-#define D3DTA_ALPHAREPLICATE    0x00000020
-
-typedef enum _D3DTEXTUREMAGFILTER
-{
-    D3DTFG_POINT        = 1,
-    D3DTFG_LINEAR       = 2,
-    D3DTFG_FLATCUBIC    = 3,
-    D3DTFG_GAUSSIANCUBIC = 4,
-    D3DTFG_ANISOTROPIC  = 5,
-    D3DTFG_FORCE_DWORD  = 0x7fffffff
-} D3DTEXTUREMAGFILTER;
-
-typedef enum _D3DTEXTUREMINFILTER
-{
-    D3DTFN_POINT        = 1,
-    D3DTFN_LINEAR       = 2,
-    D3DTFN_ANISOTROPIC  = 3,
-    D3DTFN_FORCE_DWORD  = 0x7fffffff
-} D3DTEXTUREMINFILTER;
-
-typedef enum _D3DTEXTUREMIPFILTER
-{
-    D3DTFP_NONE         = 1,
-    D3DTFP_POINT        = 2,
-    D3DTFP_LINEAR       = 3,
-    D3DTFP_FORCE_DWORD  = 0x7fffffff
-} D3DTEXTUREMIPFILTER;
-
-#define D3DTRIFLAG_START                        0x00000000L
-#define D3DTRIFLAG_STARTFLAT(len) (len)
-#define D3DTRIFLAG_ODD                          0x0000001eL
-#define D3DTRIFLAG_EVEN                         0x0000001fL
-
-#define D3DTRIFLAG_EDGEENABLE1                  0x00000100L
-#define D3DTRIFLAG_EDGEENABLE2                  0x00000200L
-#define D3DTRIFLAG_EDGEENABLE3                  0x00000400L
-#define D3DTRIFLAG_EDGEENABLETRIANGLE \
-        (D3DTRIFLAG_EDGEENABLE1 | D3DTRIFLAG_EDGEENABLE2 | D3DTRIFLAG_EDGEENABLE3)
-
-typedef struct _D3DTRIANGLE {
-  union {
-    WORD v1;
-    WORD wV1;
-  } DUMMYUNIONNAME1;
-  union {
-    WORD v2;
-    WORD wV2;
-  } DUMMYUNIONNAME2;
-  union {
-    WORD v3;
-    WORD wV3;
-  } DUMMYUNIONNAME3;
-  WORD     wFlags;
-} D3DTRIANGLE, *LPD3DTRIANGLE;
-
-typedef struct _D3DLINE {
-  union {
-    WORD v1;
-    WORD wV1;
-  } DUMMYUNIONNAME1;
-  union {
-    WORD v2;
-    WORD wV2;
-  } DUMMYUNIONNAME2;
-} D3DLINE, *LPD3DLINE;
-
-typedef struct _D3DSPAN {
-  WORD wCount;
-  WORD wFirst;
-} D3DSPAN, *LPD3DSPAN;
-
-typedef struct _D3DPOINT {
-  WORD wCount;
-  WORD wFirst;
-} D3DPOINT, *LPD3DPOINT;
-
-typedef struct _D3DBRANCH {
-  DWORD dwMask;
-  DWORD dwValue;
-  BOOL  bNegate;
-  DWORD dwOffset;
-} D3DBRANCH, *LPD3DBRANCH;
-
-typedef struct _D3DSTATUS {
-  DWORD   dwFlags;
-  DWORD   dwStatus;
-  D3DRECT drExtent;
-} D3DSTATUS, *LPD3DSTATUS;
-
-#define D3DSETSTATUS_STATUS   0x00000001L
-#define D3DSETSTATUS_EXTENTS  0x00000002L
-#define D3DSETSTATUS_ALL      (D3DSETSTATUS_STATUS | D3DSETSTATUS_EXTENTS)
-
-typedef struct _D3DCLIPSTATUS {
-  DWORD dwFlags;
-  DWORD dwStatus;
-  float minx, maxx;
-  float miny, maxy;
-  float minz, maxz;
-} D3DCLIPSTATUS, *LPD3DCLIPSTATUS;
-
-#define D3DCLIPSTATUS_STATUS        0x00000001L
-#define D3DCLIPSTATUS_EXTENTS2      0x00000002L
-#define D3DCLIPSTATUS_EXTENTS3      0x00000004L
-
-typedef struct {
-  DWORD        dwSize;
-  DWORD        dwTrianglesDrawn;
-  DWORD        dwLinesDrawn;
-  DWORD        dwPointsDrawn;
-  DWORD        dwSpansDrawn;
-  DWORD        dwVerticesProcessed;
-} D3DSTATS, *LPD3DSTATS;
-
-#define D3DEXECUTE_CLIPPED       0x00000001l
-#define D3DEXECUTE_UNCLIPPED     0x00000002l
-
-typedef struct _D3DEXECUTEDATA {
-  DWORD     dwSize;
-  DWORD     dwVertexOffset;
-  DWORD     dwVertexCount;
-  DWORD     dwInstructionOffset;
-  DWORD     dwInstructionLength;
-  DWORD     dwHVertexOffset;
-  D3DSTATUS dsStatus;
-} D3DEXECUTEDATA, *LPD3DEXECUTEDATA;
-
-#define D3DPAL_FREE 0x00
-#define D3DPAL_READONLY 0x40
-#define D3DPAL_RESERVED 0x80
-
-typedef struct _D3DVERTEXBUFFERDESC {
-  DWORD dwSize;
-  DWORD dwCaps;
-  DWORD dwFVF;
-  DWORD dwNumVertices;
-} D3DVERTEXBUFFERDESC, *LPD3DVERTEXBUFFERDESC;
-
-#define D3DVBCAPS_SYSTEMMEMORY      0x00000800l
-#define D3DVBCAPS_WRITEONLY         0x00010000l
-#define D3DVBCAPS_OPTIMIZED         0x80000000l
-#define D3DVBCAPS_DONOTCLIP         0x00000001l
-
-#define D3DVOP_LIGHT       (1 << 10)
-#define D3DVOP_TRANSFORM   (1 << 0)
-#define D3DVOP_CLIP        (1 << 2)
-#define D3DVOP_EXTENTS     (1 << 3)
-
-#define D3DMAXNUMVERTICES    ((1<<16) - 1)
-
-#define D3DMAXNUMPRIMITIVES  ((1<<16) - 1)
-
-#define D3DPV_DONOTCOPYDATA (1 << 0)
-
-#define D3DFVF_RESERVED0        0x001
-#define D3DFVF_POSITION_MASK    0x00E
-#define D3DFVF_XYZ              0x002
-#define D3DFVF_XYZRHW           0x004
-#define D3DFVF_XYZB1            0x006
-#define D3DFVF_XYZB2            0x008
-#define D3DFVF_XYZB3            0x00a
-#define D3DFVF_XYZB4            0x00c
-#define D3DFVF_XYZB5            0x00e
-
-#define D3DFVF_NORMAL           0x010
-#define D3DFVF_RESERVED1        0x020
-#define D3DFVF_DIFFUSE          0x040
-#define D3DFVF_SPECULAR         0x080
-#define D3DFVF_TEXCOUNT_MASK    0xf00
-#define D3DFVF_TEXCOUNT_SHIFT   8
-#define D3DFVF_TEX0             0x000
-#define D3DFVF_TEX1             0x100
-#define D3DFVF_TEX2             0x200
-#define D3DFVF_TEX3             0x300
-#define D3DFVF_TEX4             0x400
-#define D3DFVF_TEX5             0x500
-#define D3DFVF_TEX6             0x600
-#define D3DFVF_TEX7             0x700
-#define D3DFVF_TEX8             0x800
-
-#define D3DFVF_RESERVED2        0xf000
-
-#define D3DFVF_VERTEX ( D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1 )
-#define D3DFVF_LVERTEX ( D3DFVF_XYZ | D3DFVF_RESERVED1 | D3DFVF_DIFFUSE | \
-                         D3DFVF_SPECULAR | D3DFVF_TEX1 )
-#define D3DFVF_TLVERTEX ( D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | \
-                          D3DFVF_TEX1 )
-
-typedef struct _D3DDP_PTRSTRIDE {
-  LPVOID lpvData;
-  DWORD  dwStride;
-} D3DDP_PTRSTRIDE;
-
-#define D3DDP_MAXTEXCOORD 8
-
-typedef struct _D3DDRAWPRIMITIVESTRIDEDDATA  {
-  D3DDP_PTRSTRIDE position;
-  D3DDP_PTRSTRIDE normal;
-  D3DDP_PTRSTRIDE diffuse;
-  D3DDP_PTRSTRIDE specular;
-  D3DDP_PTRSTRIDE textureCoords[D3DDP_MAXTEXCOORD];
-} D3DDRAWPRIMITIVESTRIDEDDATA ,*LPD3DDRAWPRIMITIVESTRIDEDDATA;
-
-#define D3DVIS_INSIDE_FRUSTUM       0
-#define D3DVIS_INTERSECT_FRUSTUM    1
-#define D3DVIS_OUTSIDE_FRUSTUM      2
-#define D3DVIS_INSIDE_LEFT          0
-#define D3DVIS_INTERSECT_LEFT       (1 << 2)
-#define D3DVIS_OUTSIDE_LEFT         (2 << 2)
-#define D3DVIS_INSIDE_RIGHT         0
-#define D3DVIS_INTERSECT_RIGHT      (1 << 4)
-#define D3DVIS_OUTSIDE_RIGHT        (2 << 4)
-#define D3DVIS_INSIDE_TOP           0
-#define D3DVIS_INTERSECT_TOP        (1 << 6)
-#define D3DVIS_OUTSIDE_TOP          (2 << 6)
-#define D3DVIS_INSIDE_BOTTOM        0
-#define D3DVIS_INTERSECT_BOTTOM     (1 << 8)
-#define D3DVIS_OUTSIDE_BOTTOM       (2 << 8)
-#define D3DVIS_INSIDE_NEAR          0
-#define D3DVIS_INTERSECT_NEAR       (1 << 10)
-#define D3DVIS_OUTSIDE_NEAR         (2 << 10)
-#define D3DVIS_INSIDE_FAR           0
-#define D3DVIS_INTERSECT_FAR        (1 << 12)
-#define D3DVIS_OUTSIDE_FAR          (2 << 12)
-
-#define D3DVIS_MASK_FRUSTUM         (3 << 0)
-#define D3DVIS_MASK_LEFT            (3 << 2)
-#define D3DVIS_MASK_RIGHT           (3 << 4)
-#define D3DVIS_MASK_TOP             (3 << 6)
-#define D3DVIS_MASK_BOTTOM          (3 << 8)
-#define D3DVIS_MASK_NEAR            (3 << 10)
-#define D3DVIS_MASK_FAR             (3 << 12)
-
-#define D3DDEVINFOID_TEXTUREMANAGER    1
-#define D3DDEVINFOID_D3DTEXTUREMANAGER 2
-#define D3DDEVINFOID_TEXTURING         3
-
-typedef enum _D3DSTATEBLOCKTYPE
-{
-    D3DSBT_ALL           = 1,
-    D3DSBT_PIXELSTATE    = 2,
-    D3DSBT_VERTEXSTATE   = 3,
-    D3DSBT_FORCE_DWORD   = 0xffffffff
-} D3DSTATEBLOCKTYPE;
-
-typedef enum _D3DVERTEXBLENDFLAGS
-{
-    D3DVBLEND_DISABLE  = 0,
-    D3DVBLEND_1WEIGHT  = 1,
-    D3DVBLEND_2WEIGHTS = 2,
-    D3DVBLEND_3WEIGHTS = 3,
-} D3DVERTEXBLENDFLAGS;
-
-typedef enum _D3DTEXTURETRANSFORMFLAGS {
-    D3DTTFF_DISABLE         = 0,
-    D3DTTFF_COUNT1          = 1,
-    D3DTTFF_COUNT2          = 2,
-    D3DTTFF_COUNT3          = 3,
-    D3DTTFF_COUNT4          = 4,
-    D3DTTFF_PROJECTED       = 256,
-    D3DTTFF_FORCE_DWORD     = 0x7fffffff
-} D3DTEXTURETRANSFORMFLAGS;
-
-#define D3DFVF_TEXTUREFORMAT2 0
-#define D3DFVF_TEXTUREFORMAT1 3
-#define D3DFVF_TEXTUREFORMAT3 1
-#define D3DFVF_TEXTUREFORMAT4 2
-
-#define D3DFVF_TEXCOORDSIZE3(CoordIndex) (D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16))
-#define D3DFVF_TEXCOORDSIZE2(CoordIndex) (D3DFVF_TEXTUREFORMAT2)
-#define D3DFVF_TEXCOORDSIZE4(CoordIndex) (D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16))
-#define D3DFVF_TEXCOORDSIZE1(CoordIndex) (D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16))
-
-#endif