| /* |
| * Mesa 3-D graphics library |
| * Version: 5.0.1 |
| * |
| * Copyright (C) 1999-2003 Brian Paul All Rights Reserved. |
| * |
| * Permission is hereby granted, free of charge, to any person obtaining a |
| * copy of this software and associated documentation files (the "Software"), |
| * to deal in the Software without restriction, including without limitation |
| * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| * and/or sell copies of the Software, and to permit persons to whom the |
| * Software is furnished to do so, subject to the following conditions: |
| * |
| * The above copyright notice and this permission notice shall be included |
| * in all copies or substantial portions of the Software. |
| * |
| * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS |
| * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 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. |
| */ |
| |
| /* |
| * Mesa/FX device driver. Interface to Glide3. |
| * |
| * Copyright (c) 2003 - Daniel Borca |
| * Email : dborca@users.sourceforge.net |
| * Web : http://www.geocities.com/dborca |
| */ |
| |
| |
| #ifndef TDFX_GLIDE_H_included |
| #define TDFX_GLIDE_H_included |
| |
| #include <glide.h> |
| #include <g3ext.h> |
| |
| #ifndef FX_TRAP_GLIDE |
| #define FX_TRAP_GLIDE 0 |
| #endif |
| |
| #if FX_TRAP_GLIDE |
| /* |
| ** rendering functions |
| */ |
| void FX_CALL trap_grDrawPoint (const void *pt); |
| void FX_CALL trap_grDrawLine (const void *v1, const void *v2); |
| void FX_CALL trap_grDrawTriangle (const void *a, const void *b, const void *c); |
| void FX_CALL trap_grVertexLayout (FxU32 param, FxI32 offset, FxU32 mode); |
| void FX_CALL trap_grDrawVertexArray (FxU32 mode, FxU32 Count, void *pointers); |
| void FX_CALL trap_grDrawVertexArrayContiguous (FxU32 mode, FxU32 Count, void *pointers, FxU32 stride); |
| |
| /* |
| ** Antialiasing Functions |
| */ |
| void FX_CALL trap_grAADrawTriangle (const void *a, const void *b, const void *c, FxBool ab_antialias, FxBool bc_antialias, FxBool ca_antialias); |
| |
| /* |
| ** buffer management |
| */ |
| void FX_CALL trap_grBufferClear (GrColor_t color, GrAlpha_t alpha, FxU32 depth); |
| void FX_CALL trap_grBufferSwap (FxU32 swap_interval); |
| void FX_CALL trap_grRenderBuffer (GrBuffer_t buffer); |
| |
| /* |
| ** error management |
| */ |
| void FX_CALL trap_grErrorSetCallback (GrErrorCallbackFnc_t fnc); |
| |
| /* |
| ** SST routines |
| */ |
| void FX_CALL trap_grFinish (void); |
| void FX_CALL trap_grFlush (void); |
| GrContext_t FX_CALL trap_grSstWinOpen (FxU32 hWnd, GrScreenResolution_t screen_resolution, GrScreenRefresh_t refresh_rate, GrColorFormat_t color_format, GrOriginLocation_t origin_location, int nColBuffers, int nAuxBuffers); |
| FxBool FX_CALL trap_grSstWinClose (GrContext_t context); |
| FxBool FX_CALL trap_grSelectContext (GrContext_t context); |
| void FX_CALL trap_grSstOrigin (GrOriginLocation_t origin); |
| void FX_CALL trap_grSstSelect (int which_sst); |
| |
| /* |
| ** Glide configuration and special effect maintenance functions |
| */ |
| void FX_CALL trap_grAlphaBlendFunction (GrAlphaBlendFnc_t rgb_sf, GrAlphaBlendFnc_t rgb_df, GrAlphaBlendFnc_t alpha_sf, GrAlphaBlendFnc_t alpha_df); |
| void FX_CALL trap_grAlphaCombine (GrCombineFunction_t function, GrCombineFactor_t factor, GrCombineLocal_t local, GrCombineOther_t other, FxBool invert); |
| void FX_CALL trap_grAlphaControlsITRGBLighting (FxBool enable); |
| void FX_CALL trap_grAlphaTestFunction (GrCmpFnc_t function); |
| void FX_CALL trap_grAlphaTestReferenceValue (GrAlpha_t value); |
| void FX_CALL trap_grChromakeyMode (GrChromakeyMode_t mode); |
| void FX_CALL trap_grChromakeyValue (GrColor_t value); |
| void FX_CALL trap_grClipWindow (FxU32 minx, FxU32 miny, FxU32 maxx, FxU32 maxy); |
| void FX_CALL trap_grColorCombine (GrCombineFunction_t function, GrCombineFactor_t factor, GrCombineLocal_t local, GrCombineOther_t other, FxBool invert); |
| void FX_CALL trap_grColorMask (FxBool rgb, FxBool a); |
| void FX_CALL trap_grCullMode (GrCullMode_t mode); |
| void FX_CALL trap_grConstantColorValue (GrColor_t value); |
| void FX_CALL trap_grDepthBiasLevel (FxI32 level); |
| void FX_CALL trap_grDepthBufferFunction (GrCmpFnc_t function); |
| void FX_CALL trap_grDepthBufferMode (GrDepthBufferMode_t mode); |
| void FX_CALL trap_grDepthMask (FxBool mask); |
| void FX_CALL trap_grDisableAllEffects (void); |
| void FX_CALL trap_grDitherMode (GrDitherMode_t mode); |
| void FX_CALL trap_grFogColorValue (GrColor_t fogcolor); |
| void FX_CALL trap_grFogMode (GrFogMode_t mode); |
| void FX_CALL trap_grFogTable (const GrFog_t ft[]); |
| void FX_CALL trap_grLoadGammaTable (FxU32 nentries, FxU32 *red, FxU32 *green, FxU32 *blue); |
| void FX_CALL trap_grSplash (float x, float y, float width, float height, FxU32 frame); |
| FxU32 FX_CALL trap_grGet (FxU32 pname, FxU32 plength, FxI32 *params); |
| const char * FX_CALL trap_grGetString (FxU32 pname); |
| FxI32 FX_CALL trap_grQueryResolutions (const GrResolution *resTemplate, GrResolution *output); |
| FxBool FX_CALL trap_grReset (FxU32 what); |
| GrProc FX_CALL trap_grGetProcAddress (char *procName); |
| void FX_CALL trap_grEnable (GrEnableMode_t mode); |
| void FX_CALL trap_grDisable (GrEnableMode_t mode); |
| void FX_CALL trap_grCoordinateSpace (GrCoordinateSpaceMode_t mode); |
| void FX_CALL trap_grDepthRange (FxFloat n, FxFloat f); |
| void FX_CALL trap_grStippleMode (GrStippleMode_t mode); |
| void FX_CALL trap_grStipplePattern (GrStipplePattern_t mode); |
| void FX_CALL trap_grViewport (FxI32 x, FxI32 y, FxI32 width, FxI32 height); |
| |
| /* |
| ** texture mapping control functions |
| */ |
| FxU32 FX_CALL trap_grTexCalcMemRequired (GrLOD_t lodmin, GrLOD_t lodmax, GrAspectRatio_t aspect, GrTextureFormat_t fmt); |
| FxU32 FX_CALL trap_grTexTextureMemRequired (FxU32 evenOdd, GrTexInfo *info); |
| FxU32 FX_CALL trap_grTexMinAddress (GrChipID_t tmu); |
| FxU32 FX_CALL trap_grTexMaxAddress (GrChipID_t tmu); |
| void FX_CALL trap_grTexNCCTable (GrNCCTable_t table); |
| void FX_CALL trap_grTexSource (GrChipID_t tmu, FxU32 startAddress, FxU32 evenOdd, GrTexInfo *info); |
| void FX_CALL trap_grTexClampMode (GrChipID_t tmu, GrTextureClampMode_t s_clampmode, GrTextureClampMode_t t_clampmode); |
| void FX_CALL trap_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); |
| void FX_CALL trap_grTexDetailControl (GrChipID_t tmu, int lod_bias, FxU8 detail_scale, float detail_max); |
| void FX_CALL trap_grTexFilterMode (GrChipID_t tmu, GrTextureFilterMode_t minfilter_mode, GrTextureFilterMode_t magfilter_mode); |
| void FX_CALL trap_grTexLodBiasValue (GrChipID_t tmu, float bias); |
| void FX_CALL trap_grTexDownloadMipMap (GrChipID_t tmu, FxU32 startAddress, FxU32 evenOdd, GrTexInfo *info); |
| void FX_CALL trap_grTexDownloadMipMapLevel (GrChipID_t tmu, FxU32 startAddress, GrLOD_t thisLod, GrLOD_t largeLod, GrAspectRatio_t aspectRatio, GrTextureFormat_t format, FxU32 evenOdd, void *data); |
| FxBool FX_CALL trap_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); |
| void FX_CALL trap_grTexDownloadTable (GrTexTable_t type, void *data); |
| void FX_CALL trap_grTexDownloadTablePartial (GrTexTable_t type, void *data, int start, int end); |
| void FX_CALL trap_grTexMipMapMode (GrChipID_t tmu, GrMipMapMode_t mode, FxBool lodBlend); |
| void FX_CALL trap_grTexMultibase (GrChipID_t tmu, FxBool enable); |
| void FX_CALL trap_grTexMultibaseAddress (GrChipID_t tmu, GrTexBaseRange_t range, FxU32 startAddress, FxU32 evenOdd, GrTexInfo *info); |
| |
| /* |
| ** linear frame buffer functions |
| */ |
| FxBool FX_CALL trap_grLfbLock (GrLock_t type, GrBuffer_t buffer, GrLfbWriteMode_t writeMode, GrOriginLocation_t origin, FxBool pixelPipeline, GrLfbInfo_t *info); |
| FxBool FX_CALL trap_grLfbUnlock (GrLock_t type, GrBuffer_t buffer); |
| void FX_CALL trap_grLfbConstantAlpha (GrAlpha_t alpha); |
| void FX_CALL trap_grLfbConstantDepth (FxU32 depth); |
| void FX_CALL trap_grLfbWriteColorSwizzle (FxBool swizzleBytes, FxBool swapWords); |
| void FX_CALL trap_grLfbWriteColorFormat (GrColorFormat_t colorFormat); |
| FxBool FX_CALL trap_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); |
| FxBool FX_CALL trap_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 |
| */ |
| void FX_CALL trap_grGlideInit (void); |
| void FX_CALL trap_grGlideShutdown (void); |
| void FX_CALL trap_grGlideGetState (void *state); |
| void FX_CALL trap_grGlideSetState (const void *state); |
| void FX_CALL trap_grGlideGetVertexLayout (void *layout); |
| void FX_CALL trap_grGlideSetVertexLayout (const void *layout); |
| |
| /* |
| ** glide utility functions |
| */ |
| void FX_CALL trap_guGammaCorrectionRGB (FxFloat red, FxFloat green, FxFloat blue); |
| float FX_CALL trap_guFogTableIndexToW (int i); |
| void FX_CALL trap_guFogGenerateExp (GrFog_t *fogtable, float density); |
| void FX_CALL trap_guFogGenerateExp2 (GrFog_t *fogtable, float density); |
| void FX_CALL trap_guFogGenerateLinear (GrFog_t *fogtable, float nearZ, float farZ); |
| |
| #ifndef FX_TRAP_GLIDE_internal |
| /* |
| ** rendering functions |
| */ |
| #define grDrawPoint trap_grDrawPoint |
| #define grDrawLine trap_grDrawLine |
| #define grDrawTriangle trap_grDrawTriangle |
| #define grVertexLayout trap_grVertexLayout |
| #define grDrawVertexArray trap_grDrawVertexArray |
| #define grDrawVertexArrayContiguous trap_grDrawVertexArrayContiguous |
| |
| /* |
| ** Antialiasing Functions |
| */ |
| #define grAADrawTriangle trap_grAADrawTriangle |
| |
| /* |
| ** buffer management |
| */ |
| #define grBufferClear trap_grBufferClear |
| #define grBufferSwap trap_grBufferSwap |
| #define grRenderBuffer trap_grRenderBuffer |
| |
| /* |
| ** error management |
| */ |
| #define grErrorSetCallback trap_grErrorSetCallback |
| |
| /* |
| ** SST routines |
| */ |
| #define grFinish trap_grFinish |
| #define grFlush trap_grFlush |
| #define grSstWinOpen trap_grSstWinOpen |
| #define grSstWinClose trap_grSstWinClose |
| #define grSelectContext trap_grSelectContext |
| #define grSstOrigin trap_grSstOrigin |
| #define grSstSelect trap_grSstSelect |
| |
| /* |
| ** Glide configuration and special effect maintenance functions |
| */ |
| #define grAlphaBlendFunction trap_grAlphaBlendFunction |
| #define grAlphaCombine trap_grAlphaCombine |
| #define grAlphaControlsITRGBLighting trap_grAlphaControlsITRGBLighting |
| #define grAlphaTestFunction trap_grAlphaTestFunction |
| #define grAlphaTestReferenceValue trap_grAlphaTestReferenceValue |
| #define grChromakeyMode trap_grChromakeyMode |
| #define grChromakeyValue trap_grChromakeyValue |
| #define grClipWindow trap_grClipWindow |
| #define grColorCombine trap_grColorCombine |
| #define grColorMask trap_grColorMask |
| #define grCullMode trap_grCullMode |
| #define grConstantColorValue trap_grConstantColorValue |
| #define grDepthBiasLevel trap_grDepthBiasLevel |
| #define grDepthBufferFunction trap_grDepthBufferFunction |
| #define grDepthBufferMode trap_grDepthBufferMode |
| #define grDepthMask trap_grDepthMask |
| #define grDisableAllEffects trap_grDisableAllEffects |
| #define grDitherMode trap_grDitherMode |
| #define grFogColorValue trap_grFogColorValue |
| #define grFogMode trap_grFogMode |
| #define grFogTable trap_grFogTable |
| #define grLoadGammaTable trap_grLoadGammaTable |
| #define grSplash trap_grSplash |
| #define grGet trap_grGet |
| #define grGetString trap_grGetString |
| #define grQueryResolutions trap_grQueryResolutions |
| #define grReset trap_grReset |
| #define grGetProcAddress trap_grGetProcAddress |
| #define grEnable trap_grEnable |
| #define grDisable trap_grDisable |
| #define grCoordinateSpace trap_grCoordinateSpace |
| #define grDepthRange trap_grDepthRange |
| #define grStippleMode trap_grStippleMode |
| #define grStipplePattern trap_grStipplePattern |
| #define grViewport trap_grViewport |
| |
| /* |
| ** texture mapping control functions |
| */ |
| #define grTexCalcMemRequired trap_grTexCalcMemRequired |
| #define grTexTextureMemRequired trap_grTexTextureMemRequired |
| #define grTexMinAddress trap_grTexMinAddress |
| #define grTexMaxAddress trap_grTexMaxAddress |
| #define grTexNCCTable trap_grTexNCCTable |
| #define grTexSource trap_grTexSource |
| #define grTexClampMode trap_grTexClampMode |
| #define grTexCombine trap_grTexCombine |
| #define grTexDetailControl trap_grTexDetailControl |
| #define grTexFilterMode trap_grTexFilterMode |
| #define grTexLodBiasValue trap_grTexLodBiasValue |
| #define grTexDownloadMipMap trap_grTexDownloadMipMap |
| #define grTexDownloadMipMapLevel trap_grTexDownloadMipMapLevel |
| #define grTexDownloadMipMapLevelPartial trap_grTexDownloadMipMapLevelPartial |
| #define grTexDownloadTable trap_grTexDownloadTable |
| #define grTexDownloadTablePartial trap_grTexDownloadTablePartial |
| #define grTexMipMapMode trap_grTexMipMapMode |
| #define grTexMultibase trap_grTexMultibase |
| #define grTexMultibaseAddress trap_grTexMultibaseAddress |
| |
| /* |
| ** linear frame buffer functions |
| */ |
| #define grLfbLock trap_grLfbLock |
| #define grLfbUnlock trap_grLfbUnlock |
| #define grLfbConstantAlpha trap_grLfbConstantAlpha |
| #define grLfbConstantDepth trap_grLfbConstantDepth |
| #define grLfbWriteColorSwizzle trap_grLfbWriteColorSwizzle |
| #define grLfbWriteColorFormat trap_grLfbWriteColorFormat |
| #define grLfbWriteRegion trap_grLfbWriteRegion |
| #define grLfbReadRegion trap_grLfbReadRegion |
| |
| /* |
| ** glide management functions |
| */ |
| #define grGlideInit trap_grGlideInit |
| #define grGlideShutdown trap_grGlideShutdown |
| #define grGlideGetState trap_grGlideGetState |
| #define grGlideSetState trap_grGlideSetState |
| #define grGlideGetVertexLayout trap_grGlideGetVertexLayout |
| #define grGlideSetVertexLayout trap_grGlideSetVertexLayout |
| |
| /* |
| ** glide utility functions |
| */ |
| #define guGammaCorrectionRGB trap_guGammaCorrectionRGB |
| #define guFogTableIndexToW trap_guFogTableIndexToW |
| #define guFogGenerateExp trap_guFogGenerateExp |
| #define guFogGenerateExp2 trap_guFogGenerateExp2 |
| #define guFogGenerateLinear trap_guFogGenerateLinear |
| #endif /* FX_TRAP_GLIDE_internal */ |
| #endif /* FX_TRAP_GLIDE */ |
| |
| |
| |
| /* <texus.h> */ |
| #define TX_MAX_LEVEL 16 |
| typedef struct _TxMip { |
| int format; |
| int width; |
| int height; |
| int depth; |
| int size; |
| void *data[TX_MAX_LEVEL]; |
| FxU32 pal[256]; |
| } TxMip; |
| |
| #define TX_DITHER_NONE 0x00000000 |
| #define TX_DITHER_4x4 0x00000001 |
| #define TX_DITHER_ERR 0x00000002 |
| |
| #define TX_COMPRESSION_STATISTICAL 0x00000000 |
| #define TX_COMPRESSION_HEURISTIC 0x00000010 |
| /* <texus.h> */ |
| |
| |
| |
| struct tdfx_glide { |
| /* |
| ** glide extensions |
| */ |
| void (FX_CALL *grSetNumPendingBuffers) (FxI32 NumPendingBuffers); |
| char * (FX_CALL *grGetRegistryOrEnvironmentStringExt) (char *theEntry); |
| void (FX_CALL *grGetGammaTableExt) (FxU32 nentries, FxU32 *red, FxU32 *green, FxU32 *blue); |
| void (FX_CALL *grChromaRangeModeExt) (GrChromakeyMode_t mode); |
| void (FX_CALL *grChromaRangeExt) (GrColor_t color, GrColor_t range, GrChromaRangeMode_t match_mode); |
| void (FX_CALL *grTexChromaModeExt) (GrChipID_t tmu, GrChromakeyMode_t mode); |
| void (FX_CALL *grTexChromaRangeExt) (GrChipID_t tmu, GrColor_t min, GrColor_t max, GrTexChromakeyMode_t mode); |
| |
| /* pointcast */ |
| void (FX_CALL *grTexDownloadTableExt) (GrChipID_t tmu, GrTexTable_t type, void *data); |
| void (FX_CALL *grTexDownloadTablePartialExt) (GrChipID_t tmu, GrTexTable_t type, void *data, int start, int end); |
| void (FX_CALL *grTexNCCTableExt) (GrChipID_t tmu, GrNCCTable_t table); |
| |
| /* tbext */ |
| void (FX_CALL *grTextureBufferExt) (GrChipID_t tmu, FxU32 startAddress, GrLOD_t thisLOD, GrLOD_t largeLOD, GrAspectRatio_t aspectRatio, GrTextureFormat_t format, FxU32 odd_even_mask); |
| void (FX_CALL *grTextureAuxBufferExt) (GrChipID_t tmu, FxU32 startAddress, GrLOD_t thisLOD, GrLOD_t largeLOD, GrAspectRatio_t aspectRatio, GrTextureFormat_t format, FxU32 odd_even_mask); |
| void (FX_CALL *grAuxBufferExt) (GrBuffer_t buffer); |
| |
| /* napalm */ |
| GrContext_t (FX_CALL *grSstWinOpenExt) (FxU32 hWnd, GrScreenResolution_t resolution, GrScreenRefresh_t refresh, GrColorFormat_t format, GrOriginLocation_t origin, GrPixelFormat_t pixelformat, int nColBuffers, int nAuxBuffers); |
| void (FX_CALL *grStencilFuncExt) (GrCmpFnc_t fnc, GrStencil_t ref, GrStencil_t mask); |
| void (FX_CALL *grStencilMaskExt) (GrStencil_t value); |
| void (FX_CALL *grStencilOpExt) (GrStencilOp_t stencil_fail, GrStencilOp_t depth_fail, GrStencilOp_t depth_pass); |
| void (FX_CALL *grLfbConstantStencilExt) (GrStencil_t value); |
| void (FX_CALL *grBufferClearExt) (GrColor_t color, GrAlpha_t alpha, FxU32 depth, GrStencil_t stencil); |
| void (FX_CALL *grColorCombineExt) (GrCCUColor_t a, GrCombineMode_t a_mode, GrCCUColor_t b, GrCombineMode_t b_mode, GrCCUColor_t c, FxBool c_invert, GrCCUColor_t d, FxBool d_invert, FxU32 shift, FxBool invert); |
| void (FX_CALL *grAlphaCombineExt) (GrACUColor_t a, GrCombineMode_t a_mode, GrACUColor_t b, GrCombineMode_t b_mode, GrACUColor_t c, FxBool c_invert, GrACUColor_t d, FxBool d_invert, FxU32 shift, FxBool invert); |
| void (FX_CALL *grTexColorCombineExt) (GrChipID_t tmu, GrTCCUColor_t a, GrCombineMode_t a_mode, GrTCCUColor_t b, GrCombineMode_t b_mode, GrTCCUColor_t c, FxBool c_invert, GrTCCUColor_t d, FxBool d_invert, FxU32 shift, FxBool invert); |
| void (FX_CALL *grTexAlphaCombineExt) (GrChipID_t tmu, GrTACUColor_t a, GrCombineMode_t a_mode, GrTACUColor_t b, GrCombineMode_t b_mode, GrTACUColor_t c, FxBool c_invert, GrTACUColor_t d, FxBool d_invert, FxU32 shift, FxBool invert); |
| void (FX_CALL *grConstantColorValueExt) (GrChipID_t tmu, GrColor_t value); |
| void (FX_CALL *grColorMaskExt) (FxBool r, FxBool g, FxBool b, FxBool a); |
| void (FX_CALL *grAlphaBlendFunctionExt) (GrAlphaBlendFnc_t rgb_sf, GrAlphaBlendFnc_t rgb_df, GrAlphaBlendOp_t rgb_op, GrAlphaBlendFnc_t alpha_sf, GrAlphaBlendFnc_t alpha_df, GrAlphaBlendOp_t alpha_op); |
| void (FX_CALL *grTBufferWriteMaskExt) (FxU32 tmask); |
| |
| /* |
| ** Texus2 functions |
| */ |
| void (FX_CALL *txImgQuantize) (char *dst, char *src, int w, int h, FxU32 format, FxU32 dither); |
| void (FX_CALL *txMipQuantize) (TxMip *pxMip, TxMip *txMip, int fmt, FxU32 d, FxU32 comp); |
| void (FX_CALL *txPalToNcc) (GuNccTable *ncc_table, const FxU32 *pal); |
| }; |
| |
| void tdfx_hook_glide (struct tdfx_glide *Glide, int pointcast); |
| |
| #endif |