1 /*---------------------------------------------------------------------------* 2 Project: Dolphin GX library 3 File: GXPixel.h 4 5 Copyright 1998-2003 Nintendo. All rights reserved. 6 7 These coded instructions, statements, and computer programs contain 8 proprietary information of Nintendo of America Inc. and/or Nintendo 9 Company Ltd., and are protected by Federal copyright law. They may 10 not be disclosed to third parties or copied or duplicated in any form, 11 in whole or in part, without the prior written consent of Nintendo. 12 13 $Log: GXPixel.h,v $ 14 Revision 1.2.40.1 2009/01/05 06:34:42 nakano_yoshinobu 15 Added GXGetColorUpdate, GXGetAlphaUpdate, GXGetPixelFmt and GXGetDither. 16 17 Revision 1.2 2006/02/04 11:56:46 hashida 18 (none) 19 20 Revision 1.1.1.1 2005/12/29 06:53:28 hiratsu 21 Initial import. 22 23 Revision 1.1.1.1 2005/05/12 02:41:07 yasuh-to 24 Ported from dolphin sheath tree. 25 26 27 6 2003/09/26 16:56 Hirose 28 Added GXSetFogColor(). 29 30 5 2002/02/07 9:07 Hirose 31 Resolved version conflicts. 32 33 5 2002/04/09 15:15 Hirose 34 const type specifier support. (worked by hiratsu@IRD) 35 36 4 2000/04/26 4:09p Alligator 37 Added parameter to GXSetFieldMode 38 39 3 2000/04/19 2:38p Carl 40 Added GXSetFieldMode (ArtX update). 41 42 2 1999/12/10 4:53p Carl 43 Fixed Z compare stuff. 44 45 10 1999/10/13 5:19p Alligator 46 Changed GXSetMotionComp to GXSetFieldMask 47 48 9 1999/10/04 2:42p Yasu 49 Added GXInitFogAdjTable 50 51 8 1999/09/30 10:40p Yasu 52 Renamed some GX functions and enums 53 54 7 1999/09/29 6:29p Alligator 55 Added width parameter to GXSetFogRangeAdj 56 57 6 1999/09/02 10:57a Ryan 58 59 5 1999/09/01 5:45p Ryan 60 61 4 1999/08/27 2:35p Yasu 62 Changed a parameter of GXSetBlendMode, GXSetZMode. 63 Appended GXSetZUpdate, GXSetAlphaUpdate and GXSetDither. 64 65 3 1999/08/26 2:55p Yasu 66 Deleted density parameter in GXSetFog(). 67 Changed a function name GXSetColorMode -> GXSetBlendMode 68 69 2 1999/07/28 4:07p Alligator 70 Updated header files and emulator for hw changes 71 72 1 1999/07/14 4:20p Alligator 73 Split gx.h into individual header files for each major section of API 74 $NoKeywords: $ 75 *---------------------------------------------------------------------------*/ 76 77 #ifndef __GXPIXEL_H__ 78 #define __GXPIXEL_H__ 79 80 #ifdef __cplusplus 81 extern "C" { 82 #endif 83 84 /*---------------------------------------------------------------------------*/ 85 #include <revolution/types.h> 86 #include <revolution/gx/GXEnum.h> 87 #include <revolution/gx/GXStruct.h> 88 89 /*---------------------------------------------------------------------------*/ 90 void GXSetFog( GXFogType type, 91 f32 startz, 92 f32 endz, 93 f32 nearz, 94 f32 farz, 95 GXColor color ); 96 97 void GXSetFogColor( GXColor color ); 98 99 void GXInitFogAdjTable( GXFogAdjTable* table, u16 width, const f32 projmtx[4][4] ); 100 101 void GXSetFogRangeAdj( GXBool enable, u16 center, const GXFogAdjTable* table ); 102 103 void GXSetBlendMode ( GXBlendMode type, 104 GXBlendFactor src_factor, 105 GXBlendFactor dst_factor, 106 GXLogicOp op ); 107 108 void GXSetColorUpdate( GXBool update_enable ); 109 void GXSetAlphaUpdate( GXBool update_enable ); 110 void GXSetZMode( GXBool compare_enable, 111 GXCompare func, 112 GXBool update_enable ); 113 114 void GXSetZCompLoc( GXBool before_tex ); 115 void GXSetPixelFmt ( GXPixelFmt pix_fmt, GXZFmt16 z_fmt ); 116 void GXSetDither( GXBool dither ); 117 void GXSetDstAlpha( GXBool enable, u8 alpha ); 118 void GXSetFieldMask( GXBool odd_mask, GXBool even_mask ); 119 void GXSetFieldMode( GXBool field_mode, GXBool half_aspect_ratio ); 120 121 void GXGetColorUpdate( GXBool *update_enable ); 122 void GXGetAlphaUpdate( GXBool *update_enable ); 123 void GXGetPixelFmt ( GXPixelFmt *pix_fmt, GXZFmt16 *z_fmt ); 124 void GXGetDither( GXBool *dither ); 125 126 /*---------------------------------------------------------------------------*/ 127 #ifdef __cplusplus 128 } 129 #endif // __GXPIXEL_H__ 130 131 #endif 132