documentation updates
Glide3 driver: POINTCAST palette fixes
This commit is contained in:
12
Makefile.DJ
12
Makefile.DJ
@@ -20,7 +20,7 @@
|
|||||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
# DOS/DJGPP makefile v1.4 for Mesa
|
# DOS/DJGPP makefile v1.5 for Mesa
|
||||||
#
|
#
|
||||||
# Copyright (C) 2002 - Borca Daniel
|
# Copyright (C) 2002 - Borca Daniel
|
||||||
# Email : dborca@users.sourceforge.net
|
# Email : dborca@users.sourceforge.net
|
||||||
@@ -43,15 +43,7 @@
|
|||||||
# As a consequence, you'll need the DJGPP Glide3
|
# As a consequence, you'll need the DJGPP Glide3
|
||||||
# library to build any application.
|
# library to build any application.
|
||||||
# default = no
|
# default = no
|
||||||
# HAVE_X86=1 optimize for i386.
|
# X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
|
||||||
# default = no
|
|
||||||
# HAVE_MMX=1 allow MMX specializations, provided your assembler
|
|
||||||
# supports MMX instruction set. However, the true CPU
|
|
||||||
# capabilities are checked at run-time to avoid crashes.
|
|
||||||
# default = no
|
|
||||||
# HAVE_SSE=1 (see HAVE_MMX)
|
|
||||||
# default = no
|
|
||||||
# HAVE_3DNOW=1 (see HAVE_MMX)
|
|
||||||
# default = no
|
# default = no
|
||||||
#
|
#
|
||||||
# Targets:
|
# Targets:
|
||||||
|
12
Makefile.mgw
12
Makefile.mgw
@@ -20,7 +20,7 @@
|
|||||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
# MinGW makefile v1.0 for Mesa
|
# MinGW makefile v1.1 for Mesa
|
||||||
#
|
#
|
||||||
# Copyright (C) 2002 - Borca Daniel
|
# Copyright (C) 2002 - Borca Daniel
|
||||||
# Email : dborca@users.sourceforge.net
|
# Email : dborca@users.sourceforge.net
|
||||||
@@ -40,15 +40,7 @@
|
|||||||
# As a consequence, you'll need the Win32 Glide3
|
# As a consequence, you'll need the Win32 Glide3
|
||||||
# library to build any application.
|
# library to build any application.
|
||||||
# default = no
|
# default = no
|
||||||
# HAVE_X86=1 optimize for i386.
|
# X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
|
||||||
# default = no
|
|
||||||
# HAVE_MMX=1 allow MMX specializations, provided your assembler
|
|
||||||
# supports MMX instruction set. However, the true CPU
|
|
||||||
# capabilities are checked at run-time to avoid crashes.
|
|
||||||
# default = no
|
|
||||||
# HAVE_SSE=1 (see HAVE_MMX)
|
|
||||||
# default = no
|
|
||||||
# HAVE_3DNOW=1 (see HAVE_MMX)
|
|
||||||
# default = no
|
# default = no
|
||||||
#
|
#
|
||||||
# Targets:
|
# Targets:
|
||||||
|
@@ -74,7 +74,7 @@ Environment variables:
|
|||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
The following environment variables affect MesaFX. Those that affect Glide
|
The following environment variables affect MesaFX. Those that affect Glide
|
||||||
only, are beyond the scope of this file. Entries that don't have a "Value"
|
only, are beyond the scope of this section. Entries that don't have a "Value"
|
||||||
field, can have any value whatsoever
|
field, can have any value whatsoever
|
||||||
ex: set MESA_FX_IGNORE_CMBEXT=y
|
ex: set MESA_FX_IGNORE_CMBEXT=y
|
||||||
|
|
||||||
@@ -89,7 +89,7 @@ default values. Use them only when you experience crashes or strange behavior.
|
|||||||
|
|
||||||
FX_GLIDE_NUM_TMU
|
FX_GLIDE_NUM_TMU
|
||||||
OS: all
|
OS: all
|
||||||
HW: 2 TMU cards (Voodoo2, Avenger, Napalm)
|
HW: dual-TMU cards (some Voodoo1, Voodoo2, Avenger, Napalm)
|
||||||
Desc: force single-TMU
|
Desc: force single-TMU
|
||||||
Note: (*)
|
Note: (*)
|
||||||
Value: "1"
|
Value: "1"
|
||||||
@@ -137,6 +137,11 @@ MESA_FX_INFO
|
|||||||
HW: all
|
HW: all
|
||||||
Desc: verbose to stderr
|
Desc: verbose to stderr
|
||||||
Value: any; special value "r" to redirect stderr to MESA.LOG
|
Value: any; special value "r" to redirect stderr to MESA.LOG
|
||||||
|
MESA_FX_POINTCAST
|
||||||
|
OS: all
|
||||||
|
HW: dual-TMU cards (some Voodoo1, Voodoo2, Avenger, Napalm)
|
||||||
|
Desc: try to use pointcast palette
|
||||||
|
Note: may give adverse effects on UMA cards (Avenger, Napalm)
|
||||||
MESA_FX_IGNORE_PALEXT
|
MESA_FX_IGNORE_PALEXT
|
||||||
OS: all
|
OS: all
|
||||||
HW: all
|
HW: all
|
||||||
@@ -153,8 +158,9 @@ MESA_FX_IGNORE_CMBEXT
|
|||||||
OS: all
|
OS: all
|
||||||
HW: Napalm
|
HW: Napalm
|
||||||
Desc: disable Napalm combiners (color/alpha/texture)
|
Desc: disable Napalm combiners (color/alpha/texture)
|
||||||
Note: this means advanced (multi)texturing modes won't
|
Note: this option allows dual-TMU cards perform single-pass
|
||||||
work, but disabling this turns on REAL trilinear
|
trilinear, but some advanced (multi)texturing modes
|
||||||
|
won't work (GL_EXT_texture_env_combine)
|
||||||
MESA_FX_IGNORE_MIREXT
|
MESA_FX_IGNORE_MIREXT
|
||||||
OS: all
|
OS: all
|
||||||
HW: all
|
HW: all
|
||||||
|
@@ -1,3 +1,31 @@
|
|||||||
|
Mesa 6.1 for MinGW32
|
||||||
|
~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Quick & dirty start:
|
||||||
|
--------------------
|
||||||
|
|
||||||
|
mingw32-make -f Makefile.mgw [OPTIONS...]
|
||||||
|
|
||||||
|
Look into the corresponding makefiles for further information.
|
||||||
|
Check README.3DFX to find out how to compile Mesa Glide3 driver
|
||||||
|
with MinGW32!
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Contact:
|
||||||
|
--------
|
||||||
|
|
||||||
|
Daniel Borca <dborca@users.sourceforge.net>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
WARNING! The info below this line is outdated (yet some of it useful). WARNING!
|
||||||
|
*******************************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
August 30, 1998 -- Paul Garceau
|
August 30, 1998 -- Paul Garceau
|
||||||
Updated January 13, 2000 -- Paul Garceau (pgarceau@teleport.com)
|
Updated January 13, 2000 -- Paul Garceau (pgarceau@teleport.com)
|
||||||
|
|
||||||
|
@@ -2240,8 +2240,12 @@ void FX_CALL fake_grTexNCCTableExt (GrChipID_t tmu,
|
|||||||
/****************************************************************************\
|
/****************************************************************************\
|
||||||
* interface *
|
* interface *
|
||||||
\****************************************************************************/
|
\****************************************************************************/
|
||||||
void tdfx_hook_glide (struct tdfx_glide *Glide)
|
void tdfx_hook_glide (struct tdfx_glide *Glide, int pointcast)
|
||||||
{
|
{
|
||||||
|
/* GET_EXT_ADDR: get function pointer
|
||||||
|
* GET_EXT_FAKE: get function pointer if possible, else use a fake function
|
||||||
|
* GET_EXT_NULL: get function pointer if possible, else leave NULL pointer
|
||||||
|
*/
|
||||||
#if FX_TRAP_GLIDE
|
#if FX_TRAP_GLIDE
|
||||||
#define GET_EXT_ADDR(name) *(GrProc *)&real_##name = grGetProcAddress(#name), Glide->name = trap_##name
|
#define GET_EXT_ADDR(name) *(GrProc *)&real_##name = grGetProcAddress(#name), Glide->name = trap_##name
|
||||||
#define GET_EXT_FAKE(name) GET_EXT_ADDR(name); if (real_##name == NULL) real_##name = fake_##name
|
#define GET_EXT_FAKE(name) GET_EXT_ADDR(name); if (real_##name == NULL) real_##name = fake_##name
|
||||||
@@ -2263,9 +2267,15 @@ void tdfx_hook_glide (struct tdfx_glide *Glide)
|
|||||||
GET_EXT_ADDR(grTexChromaModeExt);
|
GET_EXT_ADDR(grTexChromaModeExt);
|
||||||
GET_EXT_ADDR(grTexChromaRangeExt);
|
GET_EXT_ADDR(grTexChromaRangeExt);
|
||||||
/* pointcast */
|
/* pointcast */
|
||||||
|
if (pointcast) {
|
||||||
GET_EXT_FAKE(grTexDownloadTableExt);
|
GET_EXT_FAKE(grTexDownloadTableExt);
|
||||||
GET_EXT_FAKE(grTexDownloadTablePartialExt);
|
GET_EXT_FAKE(grTexDownloadTablePartialExt);
|
||||||
GET_EXT_FAKE(grTexNCCTableExt);
|
GET_EXT_FAKE(grTexNCCTableExt);
|
||||||
|
} else {
|
||||||
|
Glide->grTexDownloadTableExt = fake_grTexDownloadTableExt;
|
||||||
|
Glide->grTexDownloadTablePartialExt = fake_grTexDownloadTablePartialExt;
|
||||||
|
Glide->grTexNCCTableExt = fake_grTexNCCTableExt;
|
||||||
|
}
|
||||||
/* tbext */
|
/* tbext */
|
||||||
GET_EXT_ADDR(grTextureBufferExt);
|
GET_EXT_ADDR(grTextureBufferExt);
|
||||||
GET_EXT_ADDR(grTextureAuxBufferExt);
|
GET_EXT_ADDR(grTextureAuxBufferExt);
|
||||||
|
@@ -377,6 +377,6 @@ struct tdfx_glide {
|
|||||||
void (FX_CALL *txPalToNcc) (GuNccTable *ncc_table, const FxU32 *pal);
|
void (FX_CALL *txPalToNcc) (GuNccTable *ncc_table, const FxU32 *pal);
|
||||||
};
|
};
|
||||||
|
|
||||||
void tdfx_hook_glide (struct tdfx_glide *Glide);
|
void tdfx_hook_glide (struct tdfx_glide *Glide, int pointcast);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -240,7 +240,7 @@ FX_grSstQueryHardware(GrHwConfiguration * config)
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tdfx_hook_glide(&config->Glide);
|
tdfx_hook_glide(&config->Glide, getenv("MESA_FX_POINTCAST") != NULL);
|
||||||
|
|
||||||
END_BOARD_LOCK();
|
END_BOARD_LOCK();
|
||||||
return 1;
|
return 1;
|
||||||
|
Reference in New Issue
Block a user