[Video] Reemove Glide inc
This commit is contained in:
parent
72645a8e31
commit
8ed2c00bac
|
@ -755,7 +755,7 @@ to allow the user to test the dll
|
||||||
input: a handle to the window that calls this function
|
input: a handle to the window that calls this function
|
||||||
output: none
|
output: none
|
||||||
*******************************************************************/
|
*******************************************************************/
|
||||||
void CALL DllTest(HWND /*hParent*/)
|
void CALL DllTest(void * /*hParent*/)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,6 @@
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "glide.h"
|
|
||||||
#include "glitchmain.h"
|
#include "glitchmain.h"
|
||||||
#include <Project64-video/trace.h>
|
#include <Project64-video/trace.h>
|
||||||
#include <Project64-video/Settings.h>
|
#include <Project64-video/Settings.h>
|
||||||
|
|
|
@ -17,7 +17,6 @@
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#endif // _WIN32
|
#endif // _WIN32
|
||||||
#include "glide.h"
|
|
||||||
#include "glitchmain.h"
|
#include "glitchmain.h"
|
||||||
#include <Project64-video/rdp.h>
|
#include <Project64-video/rdp.h>
|
||||||
#include <Project64-video/trace.h>
|
#include <Project64-video/trace.h>
|
||||||
|
|
|
@ -27,8 +27,6 @@
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include "glide.h"
|
|
||||||
#include "g3ext.h"
|
|
||||||
#include "glitchmain.h"
|
#include "glitchmain.h"
|
||||||
#include <Project64-video/trace.h>
|
#include <Project64-video/trace.h>
|
||||||
#include <Project64-video/Settings.h>
|
#include <Project64-video/Settings.h>
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
#else // _WIN32
|
#else // _WIN32
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#endif // _WIN32
|
#endif // _WIN32
|
||||||
#include "glide.h"
|
|
||||||
#include "glitchmain.h"
|
#include "glitchmain.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <Project64-video/trace.h>
|
#include <Project64-video/trace.h>
|
||||||
|
|
|
@ -1,133 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
**
|
|
||||||
** $Revision: 1.3.4.2 $
|
|
||||||
** $Date: 2003/05/05 06:50:41 $
|
|
||||||
*/
|
|
||||||
#ifndef __3DFX_H__
|
|
||||||
#define __3DFX_H__
|
|
||||||
|
|
||||||
/*
|
|
||||||
** basic data types
|
|
||||||
*/
|
|
||||||
typedef unsigned char FxU8;
|
|
||||||
typedef signed char FxI8;
|
|
||||||
typedef unsigned short FxU16;
|
|
||||||
typedef signed short FxI16;
|
|
||||||
#if defined(__alpha__) || defined (__LP64__)
|
|
||||||
typedef signed int FxI32;
|
|
||||||
typedef unsigned int FxU32;
|
|
||||||
#else
|
|
||||||
typedef signed long FxI32;
|
|
||||||
typedef unsigned long FxU32;
|
|
||||||
#endif
|
|
||||||
typedef unsigned long AnyPtr;
|
|
||||||
typedef int FxBool;
|
|
||||||
typedef float FxFloat;
|
|
||||||
typedef double FxDouble;
|
|
||||||
|
|
||||||
/*
|
|
||||||
** color types
|
|
||||||
*/
|
|
||||||
typedef unsigned long FxColor_t;
|
|
||||||
typedef struct { float r, g, b, a; } FxColor4;
|
|
||||||
|
|
||||||
/*
|
|
||||||
** fundamental types
|
|
||||||
*/
|
|
||||||
#define FXTRUE 1
|
|
||||||
#define FXFALSE 0
|
|
||||||
|
|
||||||
/*
|
|
||||||
** helper macros
|
|
||||||
*/
|
|
||||||
#define FXUNUSED( a ) ((void)(a))
|
|
||||||
#define FXBIT( i ) ( 1L << (i) )
|
|
||||||
|
|
||||||
/*
|
|
||||||
** export macros
|
|
||||||
*/
|
|
||||||
|
|
||||||
#if defined(__MSC__) || defined(_MSC_VER)
|
|
||||||
# if defined (MSVC16)
|
|
||||||
# define FX_ENTRY
|
|
||||||
# define FX_CALL
|
|
||||||
# else
|
|
||||||
# define FX_ENTRY __declspec(dllexport) extern
|
|
||||||
# define FX_CALL __stdcall
|
|
||||||
# endif
|
|
||||||
#elif defined(__WATCOMC__)
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL __stdcall
|
|
||||||
#elif defined (__IBMC__) || defined (__IBMCPP__)
|
|
||||||
/* IBM Visual Age C/C++: */
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL __stdcall
|
|
||||||
#elif defined(__DJGPP__)
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL
|
|
||||||
#elif defined(__MINGW32__)
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL __stdcall
|
|
||||||
#elif defined(__unix__)
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL
|
|
||||||
#elif defined(__APPLE__)
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL
|
|
||||||
#elif defined(__MWERKS__)
|
|
||||||
# if macintosh
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL
|
|
||||||
# else /* !macintosh */
|
|
||||||
# error "Unknown MetroWerks target platform"
|
|
||||||
# endif /* !macintosh */
|
|
||||||
#else
|
|
||||||
# warning define FX_ENTRY & FX_CALL for your compiler
|
|
||||||
# define FX_ENTRY extern
|
|
||||||
# define FX_CALL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** x86 compiler specific stuff
|
|
||||||
*/
|
|
||||||
#if defined(__BORLANDC_)
|
|
||||||
# define REALMODE
|
|
||||||
|
|
||||||
# define REGW( a, b ) ((a).x.b)
|
|
||||||
# define REGB( a, b ) ((a).h.b)
|
|
||||||
# define INT86( a, b, c ) int86(a,b,c)
|
|
||||||
# define INT86X( a, b, c, d ) int86x(a,b,c,d)
|
|
||||||
|
|
||||||
# define RM_SEG( a ) FP_SEG( a )
|
|
||||||
# define RM_OFF( a ) FP_OFF( a )
|
|
||||||
#elif defined(__WATCOMC__)
|
|
||||||
# undef FP_SEG
|
|
||||||
# undef FP_OFF
|
|
||||||
|
|
||||||
# define REGW( a, b ) ((a).w.b)
|
|
||||||
# define REGB( a, b ) ((a).h.b)
|
|
||||||
# define INT86( a, b, c ) int386(a,b,c)
|
|
||||||
# define INT86X( a, b, c, d ) int386x(a,b,c,d)
|
|
||||||
|
|
||||||
# define RM_SEG( a ) ( ( ( ( FxU32 ) (a) ) & 0x000F0000 ) >> 4 )
|
|
||||||
# define RM_OFF( a ) ( ( FxU16 ) (a) )
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* !__3DFX_H__ */
|
|
|
@ -1,187 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
** H3EXT.H
|
|
||||||
**
|
|
||||||
** The following #defines are relevant when using Glide:
|
|
||||||
**
|
|
||||||
** One of the following "platform constants" must be defined during
|
|
||||||
** compilation:
|
|
||||||
**
|
|
||||||
** __DOS__ Defined for 32-bit DOS applications
|
|
||||||
** __WIN32__ Defined for 32-bit Windows applications
|
|
||||||
** __sparc__ Defined for Sun Solaris/SunOS
|
|
||||||
** __linux__ Defined for Linux applications
|
|
||||||
** __FreeBSD__ Defined for FreeBSD applications
|
|
||||||
** __NetBSD__ Defined for NetBSD applications
|
|
||||||
** __OpenBSD__ Defined for OpenBSD applications
|
|
||||||
** __IRIX__ Defined for SGI Irix applications
|
|
||||||
**
|
|
||||||
*/
|
|
||||||
#ifndef __H3EXT_H__
|
|
||||||
#define __H3EXT_H__
|
|
||||||
|
|
||||||
#include <3dfx.h>
|
|
||||||
#include <glidesys.h>
|
|
||||||
#include <sst1vid.h>
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** TYPE DEFINITIONS
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** CONSTANTS AND TYPES
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
* gregk 5/3/99
|
|
||||||
* Constants defined for SSTH3_ALPHADITHERMODE registry key
|
|
||||||
*/
|
|
||||||
|
|
||||||
#define OPTIMAL 1
|
|
||||||
#define SHARPER 2
|
|
||||||
#define SMOOTHER 3
|
|
||||||
|
|
||||||
/* tbext */
|
|
||||||
#define GR_BUFFER_TEXTUREBUFFER_EXT 0x6
|
|
||||||
#define GR_BUFFER_TEXTUREAUXBUFFER_EXT 0x7
|
|
||||||
|
|
||||||
typedef FxU32 GrPixelFormat_t;
|
|
||||||
|
|
||||||
#define GR_PIXFMT_I_8 0x0001
|
|
||||||
#define GR_PIXFMT_AI_88 0x0002
|
|
||||||
#define GR_PIXFMT_RGB_565 0x0003
|
|
||||||
#define GR_PIXFMT_ARGB_1555 0x0004
|
|
||||||
#define GR_PIXFMT_ARGB_8888 0x0005
|
|
||||||
#define GR_PIXFMT_AA_2_RGB_565 0x0006
|
|
||||||
#define GR_PIXFMT_AA_2_ARGB_1555 0x0007
|
|
||||||
#define GR_PIXFMT_AA_2_ARGB_8888 0x0008
|
|
||||||
#define GR_PIXFMT_AA_4_RGB_565 0x0009
|
|
||||||
#define GR_PIXFMT_AA_4_ARGB_1555 0x000a
|
|
||||||
#define GR_PIXFMT_AA_4_ARGB_8888 0x000b
|
|
||||||
#define GR_PIXFMT_AA_8_RGB_565 0x000c /* 8xaa */
|
|
||||||
#define GR_PIXFMT_AA_8_ARGB_1555 0x000d
|
|
||||||
#define GR_PIXFMT_AA_8_ARGB_8888 0x000e
|
|
||||||
|
|
||||||
|
|
||||||
#define GR_LFBWRITEMODE_Z32 0x0008
|
|
||||||
|
|
||||||
typedef FxU32 GrAAMode_t;
|
|
||||||
|
|
||||||
#define GR_AA_NONE 0x0000
|
|
||||||
#define GR_AA_4SAMPLES 0x0001
|
|
||||||
|
|
||||||
typedef FxU8 GrStencil_t;
|
|
||||||
|
|
||||||
typedef FxU32 GrStencilOp_t;
|
|
||||||
#define GR_STENCILOP_KEEP 0x00 /* keep current value */
|
|
||||||
#define GR_STENCILOP_ZERO 0x01 /* set to zero */
|
|
||||||
#define GR_STENCILOP_REPLACE 0x02 /* replace with reference value */
|
|
||||||
#define GR_STENCILOP_INCR_CLAMP 0x03 /* increment - clamp */
|
|
||||||
#define GR_STENCILOP_DECR_CLAMP 0x04 /* decrement - clamp */
|
|
||||||
#define GR_STENCILOP_INVERT 0x05 /* bitwise inversion */
|
|
||||||
#define GR_STENCILOP_INCR_WRAP 0x06 /* increment - wrap */
|
|
||||||
#define GR_STENCILOP_DECR_WRAP 0x07 /* decrement - wrap */
|
|
||||||
|
|
||||||
#define GR_TEXTURE_UMA_EXT 0x06
|
|
||||||
#define GR_STENCIL_MODE_EXT 0x07
|
|
||||||
#define GR_OPENGL_MODE_EXT 0x08
|
|
||||||
|
|
||||||
typedef FxU32 GrCCUColor_t;
|
|
||||||
|
|
||||||
typedef FxU32 GrACUColor_t;
|
|
||||||
|
|
||||||
typedef FxU32 GrTCCUColor_t;
|
|
||||||
|
|
||||||
typedef FxU32 GrTACUColor_t;
|
|
||||||
|
|
||||||
#define GR_CMBX_ZERO 0x00
|
|
||||||
#define GR_CMBX_TEXTURE_ALPHA 0x01
|
|
||||||
#define GR_CMBX_ALOCAL 0x02
|
|
||||||
#define GR_CMBX_AOTHER 0x03
|
|
||||||
#define GR_CMBX_B 0x04
|
|
||||||
#define GR_CMBX_CONSTANT_ALPHA 0x05
|
|
||||||
#define GR_CMBX_CONSTANT_COLOR 0x06
|
|
||||||
#define GR_CMBX_DETAIL_FACTOR 0x07
|
|
||||||
#define GR_CMBX_ITALPHA 0x08
|
|
||||||
#define GR_CMBX_ITRGB 0x09
|
|
||||||
#define GR_CMBX_LOCAL_TEXTURE_ALPHA 0x0a
|
|
||||||
#define GR_CMBX_LOCAL_TEXTURE_RGB 0x0b
|
|
||||||
#define GR_CMBX_LOD_FRAC 0x0c
|
|
||||||
#define GR_CMBX_OTHER_TEXTURE_ALPHA 0x0d
|
|
||||||
#define GR_CMBX_OTHER_TEXTURE_RGB 0x0e
|
|
||||||
#define GR_CMBX_TEXTURE_RGB 0x0f
|
|
||||||
#define GR_CMBX_TMU_CALPHA 0x10
|
|
||||||
#define GR_CMBX_TMU_CCOLOR 0x11
|
|
||||||
|
|
||||||
typedef FxU32 GrCombineMode_t;
|
|
||||||
#define GR_FUNC_MODE_ZERO 0x00
|
|
||||||
#define GR_FUNC_MODE_X 0x01
|
|
||||||
#define GR_FUNC_MODE_ONE_MINUS_X 0x02
|
|
||||||
#define GR_FUNC_MODE_NEGATIVE_X 0x03
|
|
||||||
#define GR_FUNC_MODE_X_MINUS_HALF 0x04
|
|
||||||
|
|
||||||
typedef FxU32 GrAlphaBlendOp_t;
|
|
||||||
#define GR_BLEND_OP_ADD 0x00
|
|
||||||
#define GR_BLEND_OP_SUB 0x01
|
|
||||||
#define GR_BLEND_OP_REVSUB 0x02
|
|
||||||
|
|
||||||
#define GR_BLEND_SAME_COLOR_EXT 0x08
|
|
||||||
#define GR_BLEND_ONE_MINUS_SAME_COLOR_EXT 0x09
|
|
||||||
|
|
||||||
/* Napalm extensions to GrTextureFormat_t */
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_FXT1 0x11
|
|
||||||
#define GR_TEXFMT_ARGB_8888 0x12
|
|
||||||
#define GR_TEXFMT_YUYV_422 0x13
|
|
||||||
#define GR_TEXFMT_UYVY_422 0x14
|
|
||||||
#define GR_TEXFMT_AYUV_444 0x15
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_DXT1 0x16
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_DXT2 0x17
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_DXT3 0x18
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_DXT4 0x19
|
|
||||||
#define GR_TEXFMT_ARGB_CMP_DXT5 0x1A
|
|
||||||
#define GR_TEXTFMT_RGB_888 0xFF
|
|
||||||
|
|
||||||
/* Napalm extensions to GrLOD_t */
|
|
||||||
#define GR_LOD_LOG2_2048 0xb
|
|
||||||
#define GR_LOD_LOG2_1024 0xa
|
|
||||||
#define GR_LOD_LOG2_512 0x9
|
|
||||||
|
|
||||||
/* Napalm extensions to GrTexBaseRange_t */
|
|
||||||
#define GR_TEXBASE_2048 0x7
|
|
||||||
#define GR_TEXBASE_1024 0x6
|
|
||||||
#define GR_TEXBASE_512 0x5
|
|
||||||
#define GR_TEXBASE_256_TO_1 0x4
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <glideutl.h>
|
|
||||||
|
|
||||||
#endif /* __H3EXT_H__ */
|
|
|
@ -1,946 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*
|
|
||||||
** GLIDE.H
|
|
||||||
**
|
|
||||||
** The following #defines are relevant when using Glide:
|
|
||||||
**
|
|
||||||
** One of the following "platform constants" must be defined during
|
|
||||||
** compilation:
|
|
||||||
**
|
|
||||||
** __DOS__ Defined for 32-bit DOS applications
|
|
||||||
** __WIN32__ Defined for 32-bit Windows applications
|
|
||||||
** __sparc__ Defined for Sun Solaris/SunOS
|
|
||||||
** __linux__ Defined for Linux applications
|
|
||||||
** __FreeBSD__ Defined for FreeBSD applications
|
|
||||||
** __NetBSD__ Defined for NetBSD applications
|
|
||||||
** __OpenBSD__ Defined for OpenBSD applications
|
|
||||||
** __IRIX__ Defined for SGI Irix applications
|
|
||||||
**
|
|
||||||
*/
|
|
||||||
#ifndef __GLIDE_H__
|
|
||||||
#define __GLIDE_H__
|
|
||||||
|
|
||||||
#include <3dfx.h>
|
|
||||||
#include <glidesys.h>
|
|
||||||
#include <sst1vid.h>
|
|
||||||
#ifdef _WIN32
|
|
||||||
#include <windows.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** TYPE DEFINITIONS
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
typedef FxU32 GrColor_t;
|
|
||||||
typedef FxU8 GrAlpha_t;
|
|
||||||
typedef FxU32 GrMipMapId_t;
|
|
||||||
typedef FxU32 GrStipplePattern_t;
|
|
||||||
typedef FxU8 GrFog_t;
|
|
||||||
typedef FxU32 GrContext_t;
|
|
||||||
typedef int (FX_CALL *GrProc)();
|
|
||||||
|
|
||||||
#ifndef _WIN32
|
|
||||||
typedef int HWND;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** CONSTANTS AND TYPES
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
#define GR_NULL_MIPMAP_HANDLE ((GrMipMapId_t) -1)
|
|
||||||
|
|
||||||
#define GR_MIPMAPLEVELMASK_EVEN FXBIT(0)
|
|
||||||
#define GR_MIPMAPLEVELMASK_ODD FXBIT(1)
|
|
||||||
#define GR_MIPMAPLEVELMASK_BOTH (GR_MIPMAPLEVELMASK_EVEN | GR_MIPMAPLEVELMASK_ODD )
|
|
||||||
|
|
||||||
#define GR_LODBIAS_BILINEAR 0.5
|
|
||||||
#define GR_LODBIAS_TRILINEAR 0.0
|
|
||||||
|
|
||||||
typedef FxI32 GrChipID_t;
|
|
||||||
#define GR_TMU0 0x0
|
|
||||||
#define GR_TMU1 0x1
|
|
||||||
#define GR_TMU2 0x2
|
|
||||||
|
|
||||||
#define GR_FBI 0x0
|
|
||||||
|
|
||||||
typedef FxI32 GrCombineFunction_t;
|
|
||||||
#define GR_COMBINE_FUNCTION_ZERO 0x0
|
|
||||||
#define GR_COMBINE_FUNCTION_NONE GR_COMBINE_FUNCTION_ZERO
|
|
||||||
#define GR_COMBINE_FUNCTION_LOCAL 0x1
|
|
||||||
#define GR_COMBINE_FUNCTION_LOCAL_ALPHA 0x2
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER 0x3
|
|
||||||
#define GR_COMBINE_FUNCTION_BLEND_OTHER GR_COMBINE_FUNCTION_SCALE_OTHER
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER_ADD_LOCAL 0x4
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER_ADD_LOCAL_ALPHA 0x5
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER_MINUS_LOCAL 0x6
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER_MINUS_LOCAL_ADD_LOCAL 0x7
|
|
||||||
#define GR_COMBINE_FUNCTION_BLEND GR_COMBINE_FUNCTION_SCALE_OTHER_MINUS_LOCAL_ADD_LOCAL
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_OTHER_MINUS_LOCAL_ADD_LOCAL_ALPHA 0x8
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_MINUS_LOCAL_ADD_LOCAL 0x9
|
|
||||||
#define GR_COMBINE_FUNCTION_BLEND_LOCAL GR_COMBINE_FUNCTION_SCALE_MINUS_LOCAL_ADD_LOCAL
|
|
||||||
#define GR_COMBINE_FUNCTION_SCALE_MINUS_LOCAL_ADD_LOCAL_ALPHA 0x10
|
|
||||||
|
|
||||||
typedef FxI32 GrCombineFactor_t;
|
|
||||||
#define GR_COMBINE_FACTOR_ZERO 0x0
|
|
||||||
#define GR_COMBINE_FACTOR_NONE GR_COMBINE_FACTOR_ZERO
|
|
||||||
#define GR_COMBINE_FACTOR_LOCAL 0x1
|
|
||||||
#define GR_COMBINE_FACTOR_OTHER_ALPHA 0x2
|
|
||||||
#define GR_COMBINE_FACTOR_LOCAL_ALPHA 0x3
|
|
||||||
#define GR_COMBINE_FACTOR_TEXTURE_ALPHA 0x4
|
|
||||||
#define GR_COMBINE_FACTOR_TEXTURE_RGB 0x5
|
|
||||||
#define GR_COMBINE_FACTOR_DETAIL_FACTOR GR_COMBINE_FACTOR_TEXTURE_ALPHA
|
|
||||||
#define GR_COMBINE_FACTOR_LOD_FRACTION 0x5
|
|
||||||
#define GR_COMBINE_FACTOR_ONE 0x8
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_LOCAL 0x9
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_OTHER_ALPHA 0xa
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_LOCAL_ALPHA 0xb
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_TEXTURE_ALPHA 0xc
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_DETAIL_FACTOR GR_COMBINE_FACTOR_ONE_MINUS_TEXTURE_ALPHA
|
|
||||||
#define GR_COMBINE_FACTOR_ONE_MINUS_LOD_FRACTION 0xd
|
|
||||||
|
|
||||||
|
|
||||||
typedef FxI32 GrCombineLocal_t;
|
|
||||||
#define GR_COMBINE_LOCAL_ITERATED 0x0
|
|
||||||
#define GR_COMBINE_LOCAL_CONSTANT 0x1
|
|
||||||
#define GR_COMBINE_LOCAL_NONE GR_COMBINE_LOCAL_CONSTANT
|
|
||||||
#define GR_COMBINE_LOCAL_DEPTH 0x2
|
|
||||||
|
|
||||||
typedef FxI32 GrCombineOther_t;
|
|
||||||
#define GR_COMBINE_OTHER_ITERATED 0x0
|
|
||||||
#define GR_COMBINE_OTHER_TEXTURE 0x1
|
|
||||||
#define GR_COMBINE_OTHER_CONSTANT 0x2
|
|
||||||
#define GR_COMBINE_OTHER_NONE GR_COMBINE_OTHER_CONSTANT
|
|
||||||
|
|
||||||
|
|
||||||
typedef FxI32 GrAlphaSource_t;
|
|
||||||
#define GR_ALPHASOURCE_CC_ALPHA 0x0
|
|
||||||
#define GR_ALPHASOURCE_ITERATED_ALPHA 0x1
|
|
||||||
#define GR_ALPHASOURCE_TEXTURE_ALPHA 0x2
|
|
||||||
#define GR_ALPHASOURCE_TEXTURE_ALPHA_TIMES_ITERATED_ALPHA 0x3
|
|
||||||
|
|
||||||
|
|
||||||
typedef FxI32 GrColorCombineFnc_t;
|
|
||||||
#define GR_COLORCOMBINE_ZERO 0x0
|
|
||||||
#define GR_COLORCOMBINE_CCRGB 0x1
|
|
||||||
#define GR_COLORCOMBINE_ITRGB 0x2
|
|
||||||
#define GR_COLORCOMBINE_ITRGB_DELTA0 0x3
|
|
||||||
#define GR_COLORCOMBINE_DECAL_TEXTURE 0x4
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_CCRGB 0x5
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_ITRGB 0x6
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_ITRGB_DELTA0 0x7
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_ITRGB_ADD_ALPHA 0x8
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_ALPHA 0x9
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_TIMES_ALPHA_ADD_ITRGB 0xa
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_ADD_ITRGB 0xb
|
|
||||||
#define GR_COLORCOMBINE_TEXTURE_SUB_ITRGB 0xc
|
|
||||||
#define GR_COLORCOMBINE_CCRGB_BLEND_ITRGB_ON_TEXALPHA 0xd
|
|
||||||
#define GR_COLORCOMBINE_DIFF_SPEC_A 0xe
|
|
||||||
#define GR_COLORCOMBINE_DIFF_SPEC_B 0xf
|
|
||||||
#define GR_COLORCOMBINE_ONE 0x10
|
|
||||||
|
|
||||||
typedef FxI32 GrAlphaBlendFnc_t;
|
|
||||||
#define GR_BLEND_ZERO 0x0
|
|
||||||
#define GR_BLEND_SRC_ALPHA 0x1
|
|
||||||
#define GR_BLEND_SRC_COLOR 0x2
|
|
||||||
#define GR_BLEND_DST_COLOR GR_BLEND_SRC_COLOR
|
|
||||||
#define GR_BLEND_DST_ALPHA 0x3
|
|
||||||
#define GR_BLEND_ONE 0x4
|
|
||||||
#define GR_BLEND_ONE_MINUS_SRC_ALPHA 0x5
|
|
||||||
#define GR_BLEND_ONE_MINUS_SRC_COLOR 0x6
|
|
||||||
#define GR_BLEND_ONE_MINUS_DST_COLOR GR_BLEND_ONE_MINUS_SRC_COLOR
|
|
||||||
#define GR_BLEND_ONE_MINUS_DST_ALPHA 0x7
|
|
||||||
#define GR_BLEND_RESERVED_8 0x8
|
|
||||||
#define GR_BLEND_RESERVED_9 0x9
|
|
||||||
#define GR_BLEND_RESERVED_A 0xa
|
|
||||||
#define GR_BLEND_RESERVED_B 0xb
|
|
||||||
#define GR_BLEND_RESERVED_C 0xc
|
|
||||||
#define GR_BLEND_RESERVED_D 0xd
|
|
||||||
#define GR_BLEND_RESERVED_E 0xe
|
|
||||||
#define GR_BLEND_ALPHA_SATURATE 0xf
|
|
||||||
#define GR_BLEND_PREFOG_COLOR GR_BLEND_ALPHA_SATURATE
|
|
||||||
|
|
||||||
typedef FxI32 GrAspectRatio_t;
|
|
||||||
#define GR_ASPECT_LOG2_8x1 3 /* 8W x 1H */
|
|
||||||
#define GR_ASPECT_LOG2_4x1 2 /* 4W x 1H */
|
|
||||||
#define GR_ASPECT_LOG2_2x1 1 /* 2W x 1H */
|
|
||||||
#define GR_ASPECT_LOG2_1x1 0 /* 1W x 1H */
|
|
||||||
#define GR_ASPECT_LOG2_1x2 -1 /* 1W x 2H */
|
|
||||||
#define GR_ASPECT_LOG2_1x4 -2 /* 1W x 4H */
|
|
||||||
#define GR_ASPECT_LOG2_1x8 -3 /* 1W x 8H */
|
|
||||||
|
|
||||||
typedef FxI32 GrBuffer_t;
|
|
||||||
#define GR_BUFFER_FRONTBUFFER 0x0
|
|
||||||
#define GR_BUFFER_BACKBUFFER 0x1
|
|
||||||
#define GR_BUFFER_AUXBUFFER 0x2
|
|
||||||
#define GR_BUFFER_DEPTHBUFFER 0x3
|
|
||||||
#define GR_BUFFER_ALPHABUFFER 0x4
|
|
||||||
#define GR_BUFFER_TRIPLEBUFFER 0x5
|
|
||||||
|
|
||||||
typedef FxI32 GrChromakeyMode_t;
|
|
||||||
#define GR_CHROMAKEY_DISABLE 0x0
|
|
||||||
#define GR_CHROMAKEY_ENABLE 0x1
|
|
||||||
|
|
||||||
typedef FxI32 GrChromaRangeMode_t;
|
|
||||||
#define GR_CHROMARANGE_RGB_ALL_EXT 0x0
|
|
||||||
|
|
||||||
#define GR_CHROMARANGE_DISABLE_EXT 0x00
|
|
||||||
#define GR_CHROMARANGE_ENABLE_EXT 0x01
|
|
||||||
|
|
||||||
typedef FxI32 GrTexChromakeyMode_t;
|
|
||||||
#define GR_TEXCHROMA_DISABLE_EXT 0x0
|
|
||||||
#define GR_TEXCHROMA_ENABLE_EXT 0x1
|
|
||||||
|
|
||||||
#define GR_TEXCHROMARANGE_RGB_ALL_EXT 0x0
|
|
||||||
|
|
||||||
typedef FxI32 GrCmpFnc_t;
|
|
||||||
#define GR_CMP_NEVER 0x0
|
|
||||||
#define GR_CMP_LESS 0x1
|
|
||||||
#define GR_CMP_EQUAL 0x2
|
|
||||||
#define GR_CMP_LEQUAL 0x3
|
|
||||||
#define GR_CMP_GREATER 0x4
|
|
||||||
#define GR_CMP_NOTEQUAL 0x5
|
|
||||||
#define GR_CMP_GEQUAL 0x6
|
|
||||||
#define GR_CMP_ALWAYS 0x7
|
|
||||||
|
|
||||||
typedef FxI32 GrColorFormat_t;
|
|
||||||
#define GR_COLORFORMAT_ARGB 0x0
|
|
||||||
#define GR_COLORFORMAT_ABGR 0x1
|
|
||||||
|
|
||||||
#define GR_COLORFORMAT_RGBA 0x2
|
|
||||||
#define GR_COLORFORMAT_BGRA 0x3
|
|
||||||
|
|
||||||
typedef FxI32 GrCullMode_t;
|
|
||||||
#define GR_CULL_DISABLE 0x0
|
|
||||||
#define GR_CULL_NEGATIVE 0x1
|
|
||||||
#define GR_CULL_POSITIVE 0x2
|
|
||||||
|
|
||||||
typedef FxI32 GrDepthBufferMode_t;
|
|
||||||
#define GR_DEPTHBUFFER_DISABLE 0x0
|
|
||||||
#define GR_DEPTHBUFFER_ZBUFFER 0x1
|
|
||||||
#define GR_DEPTHBUFFER_WBUFFER 0x2
|
|
||||||
#define GR_DEPTHBUFFER_ZBUFFER_COMPARE_TO_BIAS 0x3
|
|
||||||
#define GR_DEPTHBUFFER_WBUFFER_COMPARE_TO_BIAS 0x4
|
|
||||||
|
|
||||||
typedef FxI32 GrDitherMode_t;
|
|
||||||
#define GR_DITHER_DISABLE 0x0
|
|
||||||
#define GR_DITHER_2x2 0x1
|
|
||||||
#define GR_DITHER_4x4 0x2
|
|
||||||
|
|
||||||
typedef FxI32 GrStippleMode_t;
|
|
||||||
#define GR_STIPPLE_DISABLE 0x0
|
|
||||||
#define GR_STIPPLE_PATTERN 0x1
|
|
||||||
#define GR_STIPPLE_ROTATE 0x2
|
|
||||||
|
|
||||||
typedef FxI32 GrFogMode_t;
|
|
||||||
#define GR_FOG_DISABLE 0x0
|
|
||||||
#define GR_FOG_WITH_TABLE_ON_FOGCOORD_EXT 0x1
|
|
||||||
#define GR_FOG_WITH_TABLE_ON_Q 0x2
|
|
||||||
#define GR_FOG_WITH_TABLE_ON_W GR_FOG_WITH_TABLE_ON_Q
|
|
||||||
#define GR_FOG_WITH_ITERATED_Z 0x3
|
|
||||||
#define GR_FOG_WITH_ITERATED_ALPHA_EXT 0x4
|
|
||||||
#define GR_FOG_MULT2 0x100
|
|
||||||
#define GR_FOG_ADD2 0x200
|
|
||||||
|
|
||||||
typedef FxU32 GrLock_t;
|
|
||||||
#define GR_LFB_READ_ONLY 0x00
|
|
||||||
#define GR_LFB_WRITE_ONLY 0x01
|
|
||||||
#define GR_LFB_IDLE 0x00
|
|
||||||
#define GR_LFB_NOIDLE 0x10
|
|
||||||
|
|
||||||
#define GR_LFB_WRITE_ONLY_EXPLICIT_EXT 0x02 /* explicitly not allow reading from the lfb pointer */
|
|
||||||
|
|
||||||
typedef FxI32 GrLfbBypassMode_t;
|
|
||||||
#define GR_LFBBYPASS_DISABLE 0x0
|
|
||||||
#define GR_LFBBYPASS_ENABLE 0x1
|
|
||||||
|
|
||||||
typedef FxI32 GrLfbWriteMode_t;
|
|
||||||
#define GR_LFBWRITEMODE_565 0x0 /* RGB:RGB */
|
|
||||||
#define GR_LFBWRITEMODE_555 0x1 /* RGB:RGB */
|
|
||||||
#define GR_LFBWRITEMODE_1555 0x2 /* ARGB:ARGB */
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED1 0x3
|
|
||||||
#define GR_LFBWRITEMODE_888 0x4 /* RGB */
|
|
||||||
#define GR_LFBWRITEMODE_8888 0x5 /* ARGB */
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED2 0x6
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED3 0x7
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED4 0x8
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED5 0x9
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED6 0xa
|
|
||||||
#define GR_LFBWRITEMODE_RESERVED7 0xb
|
|
||||||
#define GR_LFBWRITEMODE_565_DEPTH 0xc /* RGB:DEPTH */
|
|
||||||
#define GR_LFBWRITEMODE_555_DEPTH 0xd /* RGB:DEPTH */
|
|
||||||
#define GR_LFBWRITEMODE_1555_DEPTH 0xe /* ARGB:DEPTH */
|
|
||||||
#define GR_LFBWRITEMODE_ZA16 0xf /* DEPTH:DEPTH */
|
|
||||||
#define GR_LFBWRITEMODE_ANY 0xFF
|
|
||||||
|
|
||||||
|
|
||||||
typedef FxI32 GrOriginLocation_t;
|
|
||||||
#define GR_ORIGIN_UPPER_LEFT 0x0
|
|
||||||
#define GR_ORIGIN_LOWER_LEFT 0x1
|
|
||||||
#define GR_ORIGIN_ANY 0xFF
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
int size;
|
|
||||||
void *lfbPtr;
|
|
||||||
FxU32 strideInBytes;
|
|
||||||
GrLfbWriteMode_t writeMode;
|
|
||||||
GrOriginLocation_t origin;
|
|
||||||
} GrLfbInfo_t;
|
|
||||||
|
|
||||||
typedef FxI32 GrLOD_t;
|
|
||||||
#define GR_LOD_LOG2_256 0x8
|
|
||||||
#define GR_LOD_LOG2_128 0x7
|
|
||||||
#define GR_LOD_LOG2_64 0x6
|
|
||||||
#define GR_LOD_LOG2_32 0x5
|
|
||||||
#define GR_LOD_LOG2_16 0x4
|
|
||||||
#define GR_LOD_LOG2_8 0x3
|
|
||||||
#define GR_LOD_LOG2_4 0x2
|
|
||||||
#define GR_LOD_LOG2_2 0x1
|
|
||||||
#define GR_LOD_LOG2_1 0x0
|
|
||||||
|
|
||||||
typedef FxI32 GrMipMapMode_t;
|
|
||||||
#define GR_MIPMAP_DISABLE 0x0 /* no mip mapping */
|
|
||||||
#define GR_MIPMAP_NEAREST 0x1 /* use nearest mipmap */
|
|
||||||
#define GR_MIPMAP_NEAREST_DITHER 0x2 /* GR_MIPMAP_NEAREST + LOD dith */
|
|
||||||
|
|
||||||
typedef FxI32 GrSmoothingMode_t;
|
|
||||||
#define GR_SMOOTHING_DISABLE 0x0
|
|
||||||
#define GR_SMOOTHING_ENABLE 0x1
|
|
||||||
|
|
||||||
typedef FxI32 GrTextureClampMode_t;
|
|
||||||
#define GR_TEXTURECLAMP_WRAP 0x0
|
|
||||||
#define GR_TEXTURECLAMP_CLAMP 0x1
|
|
||||||
#define GR_TEXTURECLAMP_MIRROR_EXT 0x2
|
|
||||||
|
|
||||||
typedef FxI32 GrTextureCombineFnc_t;
|
|
||||||
#define GR_TEXTURECOMBINE_ZERO 0x0 /* texout = 0 */
|
|
||||||
#define GR_TEXTURECOMBINE_DECAL 0x1 /* texout = texthis */
|
|
||||||
#define GR_TEXTURECOMBINE_OTHER 0x2 /* this TMU in passthru mode */
|
|
||||||
#define GR_TEXTURECOMBINE_ADD 0x3 /* tout = tthis + t(this+1) */
|
|
||||||
#define GR_TEXTURECOMBINE_MULTIPLY 0x4 /* texout = tthis * t(this+1) */
|
|
||||||
#define GR_TEXTURECOMBINE_SUBTRACT 0x5 /* Sutract from upstream TMU */
|
|
||||||
#define GR_TEXTURECOMBINE_DETAIL 0x6 /* detail--detail on tthis */
|
|
||||||
#define GR_TEXTURECOMBINE_DETAIL_OTHER 0x7 /* detail--detail on tthis+1 */
|
|
||||||
#define GR_TEXTURECOMBINE_TRILINEAR_ODD 0x8 /* trilinear--odd levels tthis*/
|
|
||||||
#define GR_TEXTURECOMBINE_TRILINEAR_EVEN 0x9 /*trilinear--even levels tthis*/
|
|
||||||
#define GR_TEXTURECOMBINE_ONE 0xa /* texout = 0xFFFFFFFF */
|
|
||||||
|
|
||||||
typedef FxI32 GrTextureFilterMode_t;
|
|
||||||
#define GR_TEXTUREFILTER_POINT_SAMPLED 0x0
|
|
||||||
#define GR_TEXTUREFILTER_BILINEAR 0x1
|
|
||||||
|
|
||||||
typedef FxI32 GrTextureFormat_t;
|
|
||||||
/* KoolSmoky - */
|
|
||||||
#define GR_TEXFMT_8BIT 0x0
|
|
||||||
#define GR_TEXFMT_RGB_332 GR_TEXFMT_8BIT
|
|
||||||
#define GR_TEXFMT_YIQ_422 0x1
|
|
||||||
#define GR_TEXFMT_ALPHA_8 0x2 /* (0..0xFF) alpha */
|
|
||||||
#define GR_TEXFMT_INTENSITY_8 0x3 /* (0..0xFF) intensity */
|
|
||||||
#define GR_TEXFMT_ALPHA_INTENSITY_44 0x4
|
|
||||||
#define GR_TEXFMT_P_8 0x5 /* 8-bit palette */
|
|
||||||
#define GR_TEXFMT_RSVD0 0x6 /* GR_TEXFMT_P_8_RGBA */
|
|
||||||
#define GR_TEXFMT_P_8_6666 GR_TEXFMT_RSVD0
|
|
||||||
#define GR_TEXFMT_P_8_6666_EXT GR_TEXFMT_RSVD0
|
|
||||||
#define GR_TEXFMT_RSVD1 0x7
|
|
||||||
#define GR_TEXFMT_16BIT 0x8
|
|
||||||
#define GR_TEXFMT_ARGB_8332 GR_TEXFMT_16BIT
|
|
||||||
#define GR_TEXFMT_AYIQ_8422 0x9
|
|
||||||
#define GR_TEXFMT_RGB_565 0xa
|
|
||||||
#define GR_TEXFMT_ARGB_1555 0xb
|
|
||||||
#define GR_TEXFMT_ARGB_4444 0xc
|
|
||||||
#define GR_TEXFMT_ALPHA_INTENSITY_88 0xd
|
|
||||||
#define GR_TEXFMT_AP_88 0xe /* 8-bit alpha 8-bit palette */
|
|
||||||
#define GR_TEXFMT_RSVD2 0xf
|
|
||||||
#define GR_TEXFMT_RSVD4 GR_TEXFMT_RSVD2
|
|
||||||
|
|
||||||
typedef FxU32 GrTexTable_t;
|
|
||||||
#define GR_TEXTABLE_NCC0 0x0
|
|
||||||
#define GR_TEXTABLE_NCC1 0x1
|
|
||||||
#define GR_TEXTABLE_PALETTE 0x2
|
|
||||||
#define GR_TEXTABLE_PALETTE_6666_EXT 0x3
|
|
||||||
|
|
||||||
typedef FxU32 GrNCCTable_t;
|
|
||||||
#define GR_NCCTABLE_NCC0 0x0
|
|
||||||
#define GR_NCCTABLE_NCC1 0x1
|
|
||||||
|
|
||||||
typedef FxU32 GrTexBaseRange_t;
|
|
||||||
#define GR_TEXBASE_256 0x3
|
|
||||||
#define GR_TEXBASE_128 0x2
|
|
||||||
#define GR_TEXBASE_64 0x1
|
|
||||||
#define GR_TEXBASE_32_TO_1 0x0
|
|
||||||
|
|
||||||
|
|
||||||
typedef FxU32 GrEnableMode_t;
|
|
||||||
#define GR_MODE_DISABLE 0x0
|
|
||||||
#define GR_MODE_ENABLE 0x1
|
|
||||||
|
|
||||||
#define GR_AA_ORDERED 0x01
|
|
||||||
#define GR_ALLOW_MIPMAP_DITHER 0x02
|
|
||||||
#define GR_PASSTHRU 0x03
|
|
||||||
#define GR_SHAMELESS_PLUG 0x04
|
|
||||||
#define GR_VIDEO_SMOOTHING 0x05
|
|
||||||
|
|
||||||
typedef FxU32 GrCoordinateSpaceMode_t;
|
|
||||||
#define GR_WINDOW_COORDS 0x00
|
|
||||||
#define GR_CLIP_COORDS 0x01
|
|
||||||
|
|
||||||
/* Types of data in strips */
|
|
||||||
#define GR_FLOAT 0
|
|
||||||
#define GR_U8 1
|
|
||||||
|
|
||||||
/* Parameters for strips */
|
|
||||||
#define GR_PARAM_XY 0x01
|
|
||||||
#define GR_PARAM_Z 0x02
|
|
||||||
#define GR_PARAM_W 0x03
|
|
||||||
#define GR_PARAM_Q 0x04
|
|
||||||
#define GR_PARAM_FOG_EXT 0x05
|
|
||||||
|
|
||||||
#define GR_PARAM_A 0x10
|
|
||||||
|
|
||||||
#define GR_PARAM_RGB 0x20
|
|
||||||
|
|
||||||
#define GR_PARAM_PARGB 0x30
|
|
||||||
|
|
||||||
#define GR_PARAM_ST0 0x40
|
|
||||||
#define GR_PARAM_ST1 GR_PARAM_ST0+1
|
|
||||||
#define GR_PARAM_ST2 GR_PARAM_ST0+2
|
|
||||||
|
|
||||||
#define GR_PARAM_Q0 0x50
|
|
||||||
#define GR_PARAM_Q1 GR_PARAM_Q0+1
|
|
||||||
#define GR_PARAM_Q2 GR_PARAM_Q0+2
|
|
||||||
|
|
||||||
#define GR_PARAM_DISABLE 0x00
|
|
||||||
#define GR_PARAM_ENABLE 0x01
|
|
||||||
|
|
||||||
/*
|
|
||||||
** grDrawVertexArray/grDrawVertexArrayContiguous primitive type
|
|
||||||
*/
|
|
||||||
#define GR_POINTS 0
|
|
||||||
#define GR_LINE_STRIP 1
|
|
||||||
#define GR_LINES 2
|
|
||||||
#define GR_POLYGON 3
|
|
||||||
#define GR_TRIANGLE_STRIP 4
|
|
||||||
#define GR_TRIANGLE_FAN 5
|
|
||||||
#define GR_TRIANGLES 6
|
|
||||||
#define GR_TRIANGLE_STRIP_CONTINUE 7
|
|
||||||
#define GR_TRIANGLE_FAN_CONTINUE 8
|
|
||||||
|
|
||||||
/*
|
|
||||||
** grGet/grReset types
|
|
||||||
*/
|
|
||||||
#define GR_BITS_DEPTH 0x01
|
|
||||||
#define GR_BITS_RGBA 0x02
|
|
||||||
#define GR_FIFO_FULLNESS 0x03
|
|
||||||
#define GR_FOG_TABLE_ENTRIES 0x04
|
|
||||||
#define GR_GAMMA_TABLE_ENTRIES 0x05
|
|
||||||
#define GR_GLIDE_STATE_SIZE 0x06
|
|
||||||
#define GR_GLIDE_VERTEXLAYOUT_SIZE 0x07
|
|
||||||
#define GR_IS_BUSY 0x08
|
|
||||||
#define GR_LFB_PIXEL_PIPE 0x09
|
|
||||||
#define GR_MAX_TEXTURE_SIZE 0x0a
|
|
||||||
#define GR_MAX_TEXTURE_ASPECT_RATIO 0x0b
|
|
||||||
#define GR_MEMORY_FB 0x0c
|
|
||||||
#define GR_MEMORY_TMU 0x0d
|
|
||||||
#define GR_MEMORY_UMA 0x0e
|
|
||||||
#define GR_NUM_BOARDS 0x0f
|
|
||||||
#define GR_NON_POWER_OF_TWO_TEXTURES 0x10
|
|
||||||
#define GR_NUM_FB 0x11
|
|
||||||
#define GR_NUM_SWAP_HISTORY_BUFFER 0x12
|
|
||||||
#define GR_NUM_TMU 0x13
|
|
||||||
#define GR_PENDING_BUFFERSWAPS 0x14
|
|
||||||
#define GR_REVISION_FB 0x15
|
|
||||||
#define GR_REVISION_TMU 0x16
|
|
||||||
#define GR_STATS_LINES 0x17 /* grGet/grReset */
|
|
||||||
#define GR_STATS_PIXELS_AFUNC_FAIL 0x18
|
|
||||||
#define GR_STATS_PIXELS_CHROMA_FAIL 0x19
|
|
||||||
#define GR_STATS_PIXELS_DEPTHFUNC_FAIL 0x1a
|
|
||||||
#define GR_STATS_PIXELS_IN 0x1b
|
|
||||||
#define GR_STATS_PIXELS_OUT 0x1c
|
|
||||||
#define GR_STATS_PIXELS 0x1d /* grReset */
|
|
||||||
#define GR_STATS_POINTS 0x1e /* grGet/grReset */
|
|
||||||
#define GR_STATS_TRIANGLES_IN 0x1f
|
|
||||||
#define GR_STATS_TRIANGLES_OUT 0x20
|
|
||||||
#define GR_STATS_TRIANGLES 0x21 /* grReset */
|
|
||||||
#define GR_SWAP_HISTORY 0x22
|
|
||||||
#define GR_SUPPORTS_PASSTHRU 0x23
|
|
||||||
#define GR_TEXTURE_ALIGN 0x24
|
|
||||||
#define GR_VIDEO_POSITION 0x25
|
|
||||||
#define GR_VIEWPORT 0x26
|
|
||||||
#define GR_WDEPTH_MIN_MAX 0x27
|
|
||||||
#define GR_ZDEPTH_MIN_MAX 0x28
|
|
||||||
#define GR_VERTEX_PARAMETER 0x29
|
|
||||||
#define GR_BITS_GAMMA 0x2a
|
|
||||||
#define GR_GET_RESERVED_1 0x1000
|
|
||||||
|
|
||||||
/*
|
|
||||||
** grGetString types
|
|
||||||
*/
|
|
||||||
#define GR_EXTENSION 0xa0
|
|
||||||
#define GR_HARDWARE 0xa1
|
|
||||||
#define GR_RENDERER 0xa2
|
|
||||||
#define GR_VENDOR 0xa3
|
|
||||||
#define GR_VERSION 0xa4
|
|
||||||
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** STRUCTURES
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
GrLOD_t smallLodLog2;
|
|
||||||
GrLOD_t largeLodLog2;
|
|
||||||
GrAspectRatio_t aspectRatioLog2;
|
|
||||||
GrTextureFormat_t format;
|
|
||||||
void *data;
|
|
||||||
} GrTexInfo;
|
|
||||||
|
|
||||||
typedef struct GrSstPerfStats_s {
|
|
||||||
FxU32 pixelsIn; /* # pixels processed (minus buffer clears) */
|
|
||||||
FxU32 chromaFail; /* # pixels not drawn due to chroma key */
|
|
||||||
FxU32 zFuncFail; /* # pixels not drawn due to Z comparison */
|
|
||||||
FxU32 aFuncFail; /* # pixels not drawn due to alpha comparison */
|
|
||||||
FxU32 pixelsOut; /* # pixels drawn (including buffer clears) */
|
|
||||||
} GrSstPerfStats_t;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
GrScreenResolution_t resolution;
|
|
||||||
GrScreenRefresh_t refresh;
|
|
||||||
int numColorBuffers;
|
|
||||||
int numAuxBuffers;
|
|
||||||
} GrResolution;
|
|
||||||
|
|
||||||
typedef GrResolution GlideResolution;
|
|
||||||
|
|
||||||
#define GR_QUERY_ANY ((FxU32)(~0))
|
|
||||||
|
|
||||||
typedef FxU32 GrLfbSrcFmt_t;
|
|
||||||
#define GR_LFB_SRC_FMT_565 0x00
|
|
||||||
#define GR_LFB_SRC_FMT_555 0x01
|
|
||||||
#define GR_LFB_SRC_FMT_1555 0x02
|
|
||||||
#define GR_LFB_SRC_FMT_888 0x04
|
|
||||||
#define GR_LFB_SRC_FMT_8888 0x05
|
|
||||||
#define GR_LFB_SRC_FMT_565_DEPTH 0x0c
|
|
||||||
#define GR_LFB_SRC_FMT_555_DEPTH 0x0d
|
|
||||||
#define GR_LFB_SRC_FMT_1555_DEPTH 0x0e
|
|
||||||
#define GR_LFB_SRC_FMT_ZA16 0x0f
|
|
||||||
#define GR_LFB_SRC_FMT_RLE16 0x80
|
|
||||||
|
|
||||||
#ifdef H3D
|
|
||||||
#define GR_HINT_H3DENABLE 4
|
|
||||||
#undef GR_HINTTYPE_MAX
|
|
||||||
#define GR_HINTTYPE_MAX 4
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
** FUNCTION PROTOTYPES
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
#ifndef FX_GLIDE_NO_FUNC_PROTO
|
|
||||||
/*
|
|
||||||
** rendering functions
|
|
||||||
*/
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDrawPoint( const void *pt );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDrawLine( const void *v1, const void *v2 );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDrawTriangle( const void *a, const void *b, const void *c );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grVertexLayout(FxU32 param, FxI32 offset, FxU32 mode);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDrawVertexArray(FxU32 mode, FxU32 Count, void *pointers);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDrawVertexArrayContiguous(FxU32 mode, FxU32 Count, void *pointers, FxU32 stride);
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Antialiasing Functions
|
|
||||||
*/
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAADrawTriangle(
|
|
||||||
const void *a, const void *b, const void *c,
|
|
||||||
FxBool ab_antialias, FxBool bc_antialias, FxBool ca_antialias
|
|
||||||
);
|
|
||||||
|
|
||||||
/*
|
|
||||||
** buffer management
|
|
||||||
*/
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grBufferClear( GrColor_t color, GrAlpha_t alpha, FxU32 depth );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grBufferSwap( FxU32 swap_interval );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grRenderBuffer( GrBuffer_t buffer );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** error management
|
|
||||||
*/
|
|
||||||
typedef void (*GrErrorCallbackFnc_t)( const char *string, FxBool fatal );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grErrorSetCallback( GrErrorCallbackFnc_t fnc );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** SST routines
|
|
||||||
*/
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grFinish(void);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grFlush(void);
|
|
||||||
|
|
||||||
FX_ENTRY GrContext_t FX_CALL grSstWinOpen(GrColorFormat_t color_format, GrOriginLocation_t origin_location, int nColBuffers, int nAuxBuffers);
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grSstWinClose( GrContext_t context );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grSetNumPendingBuffers(FxI32 NumPendingBuffers);
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grSelectContext( GrContext_t context );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grSstOrigin(GrOriginLocation_t origin);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grSstSelect( int which_sst );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Glide configuration and special effect maintenance functions
|
|
||||||
*/
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAlphaBlendFunction(
|
|
||||||
GrAlphaBlendFnc_t rgb_sf, GrAlphaBlendFnc_t rgb_df,
|
|
||||||
GrAlphaBlendFnc_t alpha_sf, GrAlphaBlendFnc_t alpha_df
|
|
||||||
);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAlphaCombine(
|
|
||||||
GrCombineFunction_t function, GrCombineFactor_t factor,
|
|
||||||
GrCombineLocal_t local, GrCombineOther_t other,
|
|
||||||
FxBool invert
|
|
||||||
);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAlphaControlsITRGBLighting( FxBool enable );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAlphaTestFunction( GrCmpFnc_t function );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grAlphaTestReferenceValue( GrAlpha_t value );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grChromakeyMode( GrChromakeyMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grChromakeyValue( GrColor_t value );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grClipWindow( FxU32 minx, FxU32 miny, FxU32 maxx, FxU32 maxy );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grColorCombine(
|
|
||||||
GrCombineFunction_t function, GrCombineFactor_t factor,
|
|
||||||
GrCombineLocal_t local, GrCombineOther_t other,
|
|
||||||
FxBool invert );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grColorMask( FxBool rgb, FxBool a );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grCullMode( GrCullMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grConstantColorValue( GrColor_t value );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDepthBiasLevel( FxI32 level );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDepthBufferFunction( GrCmpFnc_t function );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDepthBufferMode( GrDepthBufferMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDepthMask( FxBool mask );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDisableAllEffects( void );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDitherMode( GrDitherMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grFogColorValue( GrColor_t fogcolor );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grFogMode( GrFogMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grFogTable( const GrFog_t ft[] );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grLoadGammaTable( FxU32 nentries, FxU32 *red, FxU32 *green, FxU32 *blue);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grSplash(float x, float y, float width, float height, FxU32 frame);
|
|
||||||
|
|
||||||
FX_ENTRY FxU32 FX_CALL
|
|
||||||
grGet( FxU32 pname, FxU32 plength, FxI32 *params );
|
|
||||||
|
|
||||||
FX_ENTRY const char * FX_CALL
|
|
||||||
grGetString( FxU32 pname );
|
|
||||||
|
|
||||||
FX_ENTRY FxI32 FX_CALL
|
|
||||||
grQueryResolutions( const GrResolution *resTemplate, GrResolution *output );
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grReset( FxU32 what );
|
|
||||||
|
|
||||||
FX_ENTRY GrProc FX_CALL
|
|
||||||
grGetProcAddress( char *procName );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grEnable( GrEnableMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDisable( GrEnableMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grCoordinateSpace( GrCoordinateSpaceMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grDepthRange( FxFloat n, FxFloat f );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grStippleMode( GrStippleMode_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grStipplePattern( GrStipplePattern_t mode );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grViewport( FxI32 x, FxI32 y, FxI32 width, FxI32 height );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** texture mapping control functions
|
|
||||||
*/
|
|
||||||
FX_ENTRY FxU32 FX_CALL
|
|
||||||
grTexCalcMemRequired(
|
|
||||||
GrLOD_t lodmin, GrLOD_t lodmax,
|
|
||||||
GrAspectRatio_t aspect, GrTextureFormat_t fmt);
|
|
||||||
|
|
||||||
FX_ENTRY FxU32 FX_CALL
|
|
||||||
grTexTextureMemRequired( FxU32 evenOdd,
|
|
||||||
GrTexInfo *info );
|
|
||||||
|
|
||||||
FX_ENTRY FxU32 FX_CALL
|
|
||||||
grTexMinAddress( GrChipID_t tmu );
|
|
||||||
|
|
||||||
FX_ENTRY FxU32 FX_CALL
|
|
||||||
grTexMaxAddress( GrChipID_t tmu );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexNCCTable( GrNCCTable_t table );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexSource( GrChipID_t tmu,
|
|
||||||
FxU32 startAddress,
|
|
||||||
FxU32 evenOdd,
|
|
||||||
GrTexInfo *info );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexClampMode(
|
|
||||||
GrChipID_t tmu,
|
|
||||||
GrTextureClampMode_t s_clampmode,
|
|
||||||
GrTextureClampMode_t t_clampmode
|
|
||||||
);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexCombine(
|
|
||||||
GrChipID_t tmu,
|
|
||||||
GrCombineFunction_t rgb_function,
|
|
||||||
GrCombineFactor_t rgb_factor,
|
|
||||||
GrCombineFunction_t alpha_function,
|
|
||||||
GrCombineFactor_t alpha_factor,
|
|
||||||
FxBool rgb_invert,
|
|
||||||
FxBool alpha_invert
|
|
||||||
);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexDetailControl(
|
|
||||||
GrChipID_t tmu,
|
|
||||||
int lod_bias,
|
|
||||||
FxU8 detail_scale,
|
|
||||||
float detail_max
|
|
||||||
);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexFilterMode(
|
|
||||||
GrChipID_t tmu,
|
|
||||||
GrTextureFilterMode_t minfilter_mode,
|
|
||||||
GrTextureFilterMode_t magfilter_mode
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexLodBiasValue(GrChipID_t tmu, float bias );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexDownloadMipMap( GrChipID_t tmu,
|
|
||||||
FxU32 startAddress,
|
|
||||||
FxU32 evenOdd,
|
|
||||||
GrTexInfo *info );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexDownloadMipMapLevel( GrChipID_t tmu,
|
|
||||||
FxU32 startAddress,
|
|
||||||
GrLOD_t thisLod,
|
|
||||||
GrLOD_t largeLod,
|
|
||||||
GrAspectRatio_t aspectRatio,
|
|
||||||
GrTextureFormat_t format,
|
|
||||||
FxU32 evenOdd,
|
|
||||||
void *data );
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grTexDownloadMipMapLevelPartial( GrChipID_t tmu,
|
|
||||||
FxU32 startAddress,
|
|
||||||
GrLOD_t thisLod,
|
|
||||||
GrLOD_t largeLod,
|
|
||||||
GrAspectRatio_t aspectRatio,
|
|
||||||
GrTextureFormat_t format,
|
|
||||||
FxU32 evenOdd,
|
|
||||||
void *data,
|
|
||||||
int start,
|
|
||||||
int end );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexDownloadTable( GrTexTable_t type,
|
|
||||||
void *data );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexDownloadTablePartial( GrTexTable_t type,
|
|
||||||
void *data,
|
|
||||||
int start,
|
|
||||||
int end );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexMipMapMode( GrChipID_t tmu,
|
|
||||||
GrMipMapMode_t mode,
|
|
||||||
FxBool lodBlend );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexMultibase( GrChipID_t tmu,
|
|
||||||
FxBool enable );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grTexMultibaseAddress( GrChipID_t tmu,
|
|
||||||
GrTexBaseRange_t range,
|
|
||||||
FxU32 startAddress,
|
|
||||||
FxU32 evenOdd,
|
|
||||||
GrTexInfo *info );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** linear frame buffer functions
|
|
||||||
*/
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grLfbLock( GrLock_t type, GrBuffer_t buffer, GrLfbWriteMode_t writeMode,
|
|
||||||
GrOriginLocation_t origin, FxBool pixelPipeline,
|
|
||||||
GrLfbInfo_t *info );
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grLfbUnlock( GrLock_t type, GrBuffer_t buffer );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grLfbConstantAlpha( GrAlpha_t alpha );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grLfbConstantDepth( FxU32 depth );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grLfbWriteColorSwizzle(FxBool swizzleBytes, FxBool swapWords);
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grLfbWriteColorFormat(GrColorFormat_t colorFormat);
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grLfbWriteRegion( GrBuffer_t dst_buffer,
|
|
||||||
FxU32 dst_x, FxU32 dst_y,
|
|
||||||
GrLfbSrcFmt_t src_format,
|
|
||||||
FxU32 src_width, FxU32 src_height,
|
|
||||||
FxBool pixelPipeline,
|
|
||||||
FxI32 src_stride, void *src_data );
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
grLfbReadRegion( GrBuffer_t src_buffer,
|
|
||||||
FxU32 src_x, FxU32 src_y,
|
|
||||||
FxU32 src_width, FxU32 src_height,
|
|
||||||
FxU32 dst_stride, void *dst_data );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** glide management functions
|
|
||||||
*/
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideInit( void );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideShutdown( void );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideGetState( void *state );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideSetState( const void *state );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideGetVertexLayout( void *layout );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
grGlideSetVertexLayout( const void *layout );
|
|
||||||
|
|
||||||
#endif /* FX_GLIDE_NO_FUNC_PROTO */
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <glideutl.h>
|
|
||||||
|
|
||||||
#endif /* __GLIDE_H__ */
|
|
|
@ -1,161 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
**
|
|
||||||
** $Header: /cvsroot/glide/glide3x/h5/glide3/src/glidesys.h,v 1.3.4.3 2003/07/24 03:51:08 anholt Exp $
|
|
||||||
** $Log:
|
|
||||||
** 3 3dfx 1.0.1.0.1.0 10/11/00 Brent Forced check in to enforce
|
|
||||||
** branching.
|
|
||||||
** 2 3dfx 1.0.1.0 06/20/00 Joseph Kain Changes to support the
|
|
||||||
** Napalm Glide open source release. Changes include cleaned up offensive
|
|
||||||
** comments and new legal headers.
|
|
||||||
** 1 3dfx 1.0 09/11/99 StarTeam VTS Administrator
|
|
||||||
** $
|
|
||||||
**
|
|
||||||
** 4 11/05/98 11:18a Russp
|
|
||||||
** Fix GLIDE_NUM_TMU error check (change "&&" to "||")
|
|
||||||
**
|
|
||||||
** 3 7/24/98 1:41p Hohn
|
|
||||||
**
|
|
||||||
** 2 6/15/98 10:50a Peter
|
|
||||||
** made csim compile time option
|
|
||||||
*
|
|
||||||
* 1 1/16/98 4:29p Atai
|
|
||||||
* create glide 3 src
|
|
||||||
*
|
|
||||||
* 10 12/09/97 12:20p Peter
|
|
||||||
* mac glide port
|
|
||||||
*
|
|
||||||
* 9 11/04/97 4:00p Dow
|
|
||||||
* Banshee Mods
|
|
||||||
*
|
|
||||||
* 8 8/18/97 3:52p Peter
|
|
||||||
* pre-hw arrival fixes/cleanup
|
|
||||||
*
|
|
||||||
* 7 6/02/97 4:09p Peter
|
|
||||||
* Compile w/ gcc for Dural
|
|
||||||
*
|
|
||||||
* 6 5/27/97 1:16p Peter
|
|
||||||
* Basic cvg, w/o cmd fifo stuff.
|
|
||||||
*
|
|
||||||
* 5 5/21/97 6:05a Peter
|
|
||||||
*/
|
|
||||||
#ifndef __GLIDESYS_H__
|
|
||||||
#define __GLIDESYS_H__
|
|
||||||
|
|
||||||
/*
|
|
||||||
n** -----------------------------------------------------------------------
|
|
||||||
** COMPILER/ENVIRONMENT CONFIGURATION
|
|
||||||
** -----------------------------------------------------------------------
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Endianness is stored in bits [30:31] */
|
|
||||||
#define GLIDE_ENDIAN_SHIFT 30
|
|
||||||
#define GLIDE_ENDIAN_LITTLE (0x1 << GLIDE_ENDIAN_SHIFT)
|
|
||||||
#define GLIDE_ENDIAN_BIG (0x2 << GLIDE_ENDIAN_SHIFT)
|
|
||||||
|
|
||||||
/* OS is stored in bits [0:6] */
|
|
||||||
#define GLIDE_OS_SHIFT 0
|
|
||||||
#define GLIDE_OS_UNIX 0x1
|
|
||||||
#define GLIDE_OS_DOS32 0x2
|
|
||||||
#define GLIDE_OS_WIN32 0x4
|
|
||||||
#define GLIDE_OS_MACOS 0x8
|
|
||||||
#define GLIDE_OS_OS2 0x10
|
|
||||||
#define GLIDE_OS_OTHER 0x40 /* For Proprietary Arcade HW */
|
|
||||||
|
|
||||||
/* Sim vs. Hardware is stored in bits [7:8] */
|
|
||||||
#define GLIDE_SST_SHIFT 7
|
|
||||||
#define GLIDE_SST_SIM (0x1 << GLIDE_SST_SHIFT)
|
|
||||||
#define GLIDE_SST_HW (0x2 << GLIDE_SST_SHIFT)
|
|
||||||
|
|
||||||
/* Hardware Type is stored in bits [9:13] */
|
|
||||||
#define GLIDE_HW_SHIFT 9
|
|
||||||
#define GLIDE_HW_SST1 (0x1 << GLIDE_HW_SHIFT)
|
|
||||||
#define GLIDE_HW_SST96 (0x2 << GLIDE_HW_SHIFT)
|
|
||||||
#define GLIDE_HW_H3 (0x4 << GLIDE_HW_SHIFT)
|
|
||||||
#define GLIDE_HW_SST2 (0x8 << GLIDE_HW_SHIFT)
|
|
||||||
#define GLIDE_HW_CVG (0x10 << GLIDE_HW_SHIFT)
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Make sure we handle all instances of WIN32
|
|
||||||
*/
|
|
||||||
#ifndef __WIN32__
|
|
||||||
# if defined (_WIN32) || defined (WIN32) || defined(__NT__)
|
|
||||||
# define __WIN32__
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* We need two checks on the OS: one for endian, the other for OS */
|
|
||||||
/* Check for endianness */
|
|
||||||
#if defined(__IRIX__) || defined(__sparc__) || defined(MACOS)
|
|
||||||
# define GLIDE_ENDIAN GLIDE_ENDIAN_BIG
|
|
||||||
#else
|
|
||||||
# define GLIDE_ENDIAN GLIDE_ENDIAN_LITTLE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Check for OS */
|
|
||||||
#if defined(__IRIX__) || defined(__sparc__) || defined(__linux__) || \
|
|
||||||
defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || \
|
|
||||||
defined(__FreeBSD_kernel__) || defined(__GNU__)
|
|
||||||
# define GLIDE_OS GLIDE_OS_UNIX
|
|
||||||
#elif defined(__DOS__)
|
|
||||||
# define GLIDE_OS GLIDE_OS_DOS32
|
|
||||||
#elif defined(__WIN32__)
|
|
||||||
# define GLIDE_OS GLIDE_OS_WIN32
|
|
||||||
#elif defined(macintosh) || defined(__APPLE__)
|
|
||||||
# define GLIDE_OS GLIDE_OS_MACOS
|
|
||||||
#else
|
|
||||||
#error "Unknown OS"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Check for Simulator vs. Hardware */
|
|
||||||
#if HAL_CSIM || HWC_CSIM
|
|
||||||
# define GLIDE_SST GLIDE_SST_SIM
|
|
||||||
#else
|
|
||||||
# define GLIDE_SST GLIDE_SST_HW
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Check for type of hardware */
|
|
||||||
#ifdef SST96
|
|
||||||
# define GLIDE_HW GLIDE_HW_SST96
|
|
||||||
#elif defined(H3)
|
|
||||||
# define GLIDE_HW GLIDE_HW_H3
|
|
||||||
#elif defined(SST2)
|
|
||||||
# define GLIDE_HW GLIDE_HW_SST2
|
|
||||||
#elif defined(CVG)
|
|
||||||
# define GLIDE_HW GLIDE_HW_CVG
|
|
||||||
#else /* Default to SST1 */
|
|
||||||
# define GLIDE_HW GLIDE_HW_SST1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#define GLIDE_PLATFORM (GLIDE_ENDIAN | GLIDE_OS | GLIDE_SST | GLIDE_HW)
|
|
||||||
|
|
||||||
/*
|
|
||||||
** Control the number of TMUs
|
|
||||||
*/
|
|
||||||
#ifndef GLIDE_NUM_TMU
|
|
||||||
# define GLIDE_NUM_TMU 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#if ((GLIDE_NUM_TMU < 0) || (GLIDE_NUM_TMU > 3))
|
|
||||||
# error "GLIDE_NUM_TMU set to an invalid value"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __GLIDESYS_H__ */
|
|
|
@ -1,153 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
**
|
|
||||||
** $Header: /cvsroot/glide/glide3x/h5/glide3/src/glideutl.h,v 1.3.4.2 2003/06/05 08:23:53 koolsmoky Exp $
|
|
||||||
** $Log:
|
|
||||||
** 3 3dfx 1.0.1.0.1.0 10/11/00 Brent Forced check in to enforce
|
|
||||||
** branching.
|
|
||||||
** 2 3dfx 1.0.1.0 06/20/00 Joseph Kain Changes to support the
|
|
||||||
** Napalm Glide open source release. Changes include cleaned up offensive
|
|
||||||
** comments and new legal headers.
|
|
||||||
** 1 3dfx 1.0 09/11/99 StarTeam VTS Administrator
|
|
||||||
** $
|
|
||||||
**
|
|
||||||
** 4 7/24/98 1:41p Hohn
|
|
||||||
**
|
|
||||||
** 3 1/30/98 4:27p Atai
|
|
||||||
** gufog* prototype
|
|
||||||
**
|
|
||||||
** 1 1/29/98 4:00p Atai
|
|
||||||
*
|
|
||||||
* 1 1/16/98 4:29p Atai
|
|
||||||
* create glide 3 src
|
|
||||||
*
|
|
||||||
* 11 1/07/98 11:18a Atai
|
|
||||||
* remove GrMipMapInfo and GrGC.mm_table in glide3
|
|
||||||
*
|
|
||||||
* 10 1/06/98 6:47p Atai
|
|
||||||
* undo grSplash and remove gu routines
|
|
||||||
*
|
|
||||||
* 9 1/05/98 6:04p Atai
|
|
||||||
* move 3df gu related data structure from glide.h to glideutl.h
|
|
||||||
*
|
|
||||||
* 8 12/18/97 2:13p Peter
|
|
||||||
* fogTable cataclysm
|
|
||||||
*
|
|
||||||
* 7 12/15/97 5:52p Atai
|
|
||||||
* disable obsolete glide2 api for glide3
|
|
||||||
*
|
|
||||||
* 6 8/14/97 5:32p Pgj
|
|
||||||
* remove dead code per GMT
|
|
||||||
*
|
|
||||||
* 5 6/12/97 5:19p Pgj
|
|
||||||
* Fix bug 578
|
|
||||||
*
|
|
||||||
* 4 3/05/97 9:36p Jdt
|
|
||||||
* Removed guFbWriteRegion added guEncodeRLE16
|
|
||||||
*
|
|
||||||
* 3 1/16/97 3:45p Dow
|
|
||||||
* Embedded fn protos in ifndef FX_GLIDE_NO_FUNC_PROTO
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Glide Utility routines */
|
|
||||||
|
|
||||||
#ifndef __GLIDEUTL_H__
|
|
||||||
#define __GLIDEUTL_H__
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
** 3DF texture file structs
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
FxU32 width, height;
|
|
||||||
int small_lod, large_lod;
|
|
||||||
GrAspectRatio_t aspect_ratio;
|
|
||||||
GrTextureFormat_t format;
|
|
||||||
} Gu3dfHeader;
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
FxU8 yRGB[16];
|
|
||||||
FxI16 iRGB[4][3];
|
|
||||||
FxI16 qRGB[4][3];
|
|
||||||
FxU32 packed_data[12];
|
|
||||||
} GuNccTable;
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
FxU32 data[256];
|
|
||||||
} GuTexPalette;
|
|
||||||
|
|
||||||
typedef union {
|
|
||||||
GuNccTable nccTable;
|
|
||||||
GuTexPalette palette;
|
|
||||||
} GuTexTable;
|
|
||||||
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
Gu3dfHeader header;
|
|
||||||
GuTexTable table;
|
|
||||||
void *data;
|
|
||||||
FxU32 mem_required; /* memory required for mip map in bytes. */
|
|
||||||
} Gu3dfInfo;
|
|
||||||
|
|
||||||
#ifndef FX_GLIDE_NO_FUNC_PROTO
|
|
||||||
/*
|
|
||||||
** Gamma functions
|
|
||||||
*/
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
guGammaCorrectionRGB( FxFloat red, FxFloat green, FxFloat blue );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** fog stuff
|
|
||||||
*/
|
|
||||||
FX_ENTRY float FX_CALL
|
|
||||||
guFogTableIndexToW( int i );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
guFogGenerateExp( GrFog_t *fogtable, float density );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
guFogGenerateExp2( GrFog_t *fogtable, float density );
|
|
||||||
|
|
||||||
FX_ENTRY void FX_CALL
|
|
||||||
guFogGenerateLinear(GrFog_t *fogtable,
|
|
||||||
float nearZ, float farZ );
|
|
||||||
|
|
||||||
/*
|
|
||||||
** hi-level texture manipulation tools.
|
|
||||||
*/
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
gu3dfGetInfo( const char *filename, Gu3dfInfo *info );
|
|
||||||
|
|
||||||
FX_ENTRY FxBool FX_CALL
|
|
||||||
gu3dfLoad( const char *filename, Gu3dfInfo *data );
|
|
||||||
|
|
||||||
#endif /* FX_GLIDE_NO_FUNC_PROTO */
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __GLIDEUTL_H__ */
|
|
|
@ -1,148 +0,0 @@
|
||||||
/*
|
|
||||||
** THIS SOFTWARE IS SUBJECT TO COPYRIGHT PROTECTION AND IS OFFERED ONLY
|
|
||||||
** PURSUANT TO THE 3DFX GLIDE GENERAL PUBLIC LICENSE. THERE IS NO RIGHT
|
|
||||||
** TO USE THE GLIDE TRADEMARK WITHOUT PRIOR WRITTEN PERMISSION OF 3DFX
|
|
||||||
** INTERACTIVE, INC. A COPY OF THIS LICENSE MAY BE OBTAINED FROM THE
|
|
||||||
** DISTRIBUTOR OR BY CONTACTING 3DFX INTERACTIVE INC(info@3dfx.com).
|
|
||||||
** THIS PROGRAM IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
|
|
||||||
** EXPRESSED OR IMPLIED. SEE THE 3DFX GLIDE GENERAL PUBLIC LICENSE FOR A
|
|
||||||
** FULL TEXT OF THE NON-WARRANTY PROVISIONS.
|
|
||||||
**
|
|
||||||
** USE, DUPLICATION OR DISCLOSURE BY THE GOVERNMENT IS SUBJECT TO
|
|
||||||
** RESTRICTIONS AS SET FORTH IN SUBDIVISION (C)(1)(II) OF THE RIGHTS IN
|
|
||||||
** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 252.227-7013,
|
|
||||||
** AND/OR IN SIMILAR OR SUCCESSOR CLAUSES IN THE FAR, DOD OR NASA FAR
|
|
||||||
** SUPPLEMENT. UNPUBLISHED RIGHTS RESERVED UNDER THE COPYRIGHT LAWS OF
|
|
||||||
** THE UNITED STATES.
|
|
||||||
**
|
|
||||||
** COPYRIGHT 3DFX INTERACTIVE, INC. 1999, ALL RIGHTS RESERVED
|
|
||||||
**
|
|
||||||
** $Header: /cvsroot/glide/glide3x/h5/incsrc/sst1vid.h,v 1.3.4.1 2003/04/06 18:23:10 koolsmoky Exp $
|
|
||||||
** $Log:
|
|
||||||
** 7 3dfx 1.4.1.0.1.0 10/11/00 Brent Forced check in to enforce
|
|
||||||
** branching.
|
|
||||||
** 6 3dfx 1.4.1.0 06/20/00 Joseph Kain Changes to support the
|
|
||||||
** Napalm Glide open source release. Changes include cleaned up offensive
|
|
||||||
** comments and new legal headers.
|
|
||||||
** 5 3dfx 1.4 12/10/99 Leo Galway Removed previous hi-res
|
|
||||||
** mode information for Glide3. These modes were only necessary for
|
|
||||||
** Cornerstone (or future hi-res) support in RT4.2 source branch and
|
|
||||||
** proceeded to break the V3 and V2 builds (from 3dfx view), hence they have
|
|
||||||
** been removed.
|
|
||||||
** 4 3dfx 1.3 12/08/99 Leo Galway Added mode information for
|
|
||||||
** 1600x1280, 1792x1440, 1920x1080, 1920x1200, 2046x1536 (as a result of
|
|
||||||
** glide being tested with Cornerstone modes). Although not all of these
|
|
||||||
** modes are currently capable under Glide, their inclusion prevents Glide
|
|
||||||
** apps from displaying in incorrect modes when these hi-res modes are
|
|
||||||
** selected. Search for SUSTAINED_ENGINEERING_CHANGE_BEGIN.
|
|
||||||
** 3 3dfx 1.2 09/17/99 Jeremy Zelsnack
|
|
||||||
** 2 3dfx 1.1 09/17/99 Jeremy Zelsnack
|
|
||||||
** 1 3dfx 1.0 09/11/99 StarTeam VTS Administrator
|
|
||||||
** $
|
|
||||||
**
|
|
||||||
** 8 3/04/99 1:19p Atai
|
|
||||||
** sync new res modes
|
|
||||||
**
|
|
||||||
** 10 2/27/99 12:28p Dow
|
|
||||||
** new resolutions
|
|
||||||
**
|
|
||||||
** 6 2/13/99 1:56p Dow
|
|
||||||
** Added new resolution constants
|
|
||||||
**
|
|
||||||
** 5 7/24/98 1:38p Hohn
|
|
||||||
*
|
|
||||||
* 4 9/09/97 7:35p Sellers
|
|
||||||
* Added 400x300 resolution
|
|
||||||
*
|
|
||||||
* 3 8/24/97 9:31a Sellers
|
|
||||||
* moved new video timing to sst1vid.h
|
|
||||||
* redefined 1600x1280 to be 1600x1200
|
|
||||||
*
|
|
||||||
* 2 6/05/97 11:14p Pgj
|
|
||||||
*
|
|
||||||
* 5 7/24/96 3:43p Sellers
|
|
||||||
* added 512x384 @ 60 Hz for arcade monitors
|
|
||||||
* added 512x256 @ 60 Hz for arcade monitors
|
|
||||||
*
|
|
||||||
* 4 7/18/96 10:58a Sellers
|
|
||||||
* fixed FT and TF clock delay values for lower frequencies with
|
|
||||||
* .5/.5 combos
|
|
||||||
*
|
|
||||||
* 3 6/18/96 6:54p Sellers
|
|
||||||
* added sst1InitShutdownSli() to fix Glide Splash screen problems with
|
|
||||||
* SLI
|
|
||||||
*
|
|
||||||
* 2 6/13/96 7:45p Sellers
|
|
||||||
* added "voodoo.ini" support
|
|
||||||
* added DirectX support
|
|
||||||
* misc cleanup
|
|
||||||
*
|
|
||||||
* 2 6/11/96 1:43p Sellers
|
|
||||||
* added support for 60, 75, 85, and 120 Hz refresh rates for "most"
|
|
||||||
* resolutions
|
|
||||||
*
|
|
||||||
* 1 5/08/96 5:43p Paik
|
|
||||||
* Video definitions
|
|
||||||
*/
|
|
||||||
#ifndef __SST1VID_H__
|
|
||||||
#define __SST1VID_H__
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Video defines */
|
|
||||||
|
|
||||||
typedef FxI32 GrScreenRefresh_t;
|
|
||||||
#define GR_REFRESH_60Hz 0x0
|
|
||||||
#define GR_REFRESH_70Hz 0x1
|
|
||||||
#define GR_REFRESH_72Hz 0x2
|
|
||||||
#define GR_REFRESH_75Hz 0x3
|
|
||||||
#define GR_REFRESH_80Hz 0x4
|
|
||||||
#define GR_REFRESH_90Hz 0x5
|
|
||||||
#define GR_REFRESH_100Hz 0x6
|
|
||||||
#define GR_REFRESH_85Hz 0x7
|
|
||||||
#define GR_REFRESH_120Hz 0x8
|
|
||||||
#define GR_REFRESH_NONE 0xff
|
|
||||||
|
|
||||||
typedef FxI32 GrScreenResolution_t;
|
|
||||||
#define GR_RESOLUTION_320x200 0x0
|
|
||||||
#define GR_RESOLUTION_320x240 0x1
|
|
||||||
#define GR_RESOLUTION_400x256 0x2
|
|
||||||
#define GR_RESOLUTION_512x384 0x3
|
|
||||||
#define GR_RESOLUTION_640x200 0x4
|
|
||||||
#define GR_RESOLUTION_640x350 0x5
|
|
||||||
#define GR_RESOLUTION_640x400 0x6
|
|
||||||
#define GR_RESOLUTION_640x480 0x7
|
|
||||||
#define GR_RESOLUTION_800x600 0x8
|
|
||||||
#define GR_RESOLUTION_960x720 0x9
|
|
||||||
#define GR_RESOLUTION_856x480 0xa
|
|
||||||
#define GR_RESOLUTION_512x256 0xb
|
|
||||||
#define GR_RESOLUTION_1024x768 0xC
|
|
||||||
#define GR_RESOLUTION_1280x1024 0xD
|
|
||||||
#define GR_RESOLUTION_1600x1200 0xE
|
|
||||||
#define GR_RESOLUTION_400x300 0xF
|
|
||||||
#define GR_RESOLUTION_1152x864 0x10
|
|
||||||
#define GR_RESOLUTION_1280x960 0x11
|
|
||||||
#define GR_RESOLUTION_1600x1024 0x12
|
|
||||||
#define GR_RESOLUTION_1792x1344 0x13
|
|
||||||
#define GR_RESOLUTION_1856x1392 0x14
|
|
||||||
#define GR_RESOLUTION_1920x1440 0x15
|
|
||||||
#define GR_RESOLUTION_2048x1536 0x16
|
|
||||||
#define GR_RESOLUTION_2048x2048 0x17
|
|
||||||
#define GR_RESOLUTION_NONE 0xff
|
|
||||||
|
|
||||||
#ifdef GR_RESOLUTION_MAX
|
|
||||||
#undef GR_RESOLUTION_MAX
|
|
||||||
#endif
|
|
||||||
#ifdef GR_RESOLUTION_MIN
|
|
||||||
#undef GR_RESOLUTION_MIN
|
|
||||||
#endif
|
|
||||||
#define GR_RESOLUTION_MIN GR_RESOLUTION_320x200
|
|
||||||
#define GR_RESOLUTION_MAX GR_RESOLUTION_2048x2048
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __SST1VID_H__ */
|
|
Loading…
Reference in New Issue