summaryrefslogtreecommitdiff
path: root/include/rvl/GXTev.h
diff options
context:
space:
mode:
authorTreeki <treeki@gmail.com>2011-03-12 23:17:12 +0100
committerTreeki <treeki@gmail.com>2011-03-12 23:17:12 +0100
commit7d4e4c0b34a613dd3c0220475ae4e448197522c1 (patch)
tree4f5cee367de3fdef4f9a7c84af59ffe76a2bb1c3 /include/rvl/GXTev.h
downloadkamek-7d4e4c0b34a613dd3c0220475ae4e448197522c1.tar.gz
kamek-7d4e4c0b34a613dd3c0220475ae4e448197522c1.zip
initial commit. now I can start playing with stuff!
Diffstat (limited to 'include/rvl/GXTev.h')
-rwxr-xr-xinclude/rvl/GXTev.h92
1 files changed, 92 insertions, 0 deletions
diff --git a/include/rvl/GXTev.h b/include/rvl/GXTev.h
new file mode 100755
index 0000000..1cecafc
--- /dev/null
+++ b/include/rvl/GXTev.h
@@ -0,0 +1,92 @@
+#ifndef __GXTEV_H__
+#define __GXTEV_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*---------------------------------------------------------------------------*/
+#include "rvl/GXStruct.h"
+
+/*---------------------------------------------------------------------------*/
+void GXSetTevOp(GXTevStageID id, GXTevMode mode);
+
+void GXSetTevColorIn(
+ GXTevStageID stage,
+ GXTevColorArg a,
+ GXTevColorArg b,
+ GXTevColorArg c,
+ GXTevColorArg d );
+
+void GXSetTevAlphaIn(
+ GXTevStageID stage,
+ GXTevAlphaArg a,
+ GXTevAlphaArg b,
+ GXTevAlphaArg c,
+ GXTevAlphaArg d );
+
+void GXSetTevColorOp(
+ GXTevStageID stage,
+ GXTevOp op,
+ GXTevBias bias,
+ GXTevScale scale,
+ GXBool clamp,
+ GXTevRegID out_reg );
+
+void GXSetTevAlphaOp(
+ GXTevStageID stage,
+ GXTevOp op,
+ GXTevBias bias,
+ GXTevScale scale,
+ GXBool clamp,
+ GXTevRegID out_reg );
+
+void GXSetTevColor( GXTevRegID id, GXColor color );
+void GXSetTevColorS10( GXTevRegID id, GXColorS10 color );
+
+// Feature available in GX chip revision 1 only
+// Revision 2 version is defined, but only prints error msg
+void GXSetTevClampMode ( GXTevStageID stage, GXTevClampMode mode );
+
+void GXSetAlphaCompare(
+ GXCompare comp0,
+ u8 ref0,
+ GXAlphaOp op,
+ GXCompare comp1,
+ u8 ref1 );
+
+void GXSetTevOrder(
+ GXTevStageID stage,
+ GXTexCoordID coord,
+ GXTexMapID map,
+ GXChannelID color );
+
+void GXSetZTexture ( GXZTexOp op, GXTexFmt fmt, u32 bias );
+void GXSetNumTevStages( u8 nStages );
+
+#if ( GX_REV != 1 )
+// Features available in GX chip revision 2 or later only
+void GXSetTevKColor( GXTevKColorID id, GXColor color );
+void GXSetTevKColorSel( GXTevStageID stage, GXTevKColorSel sel );
+void GXSetTevKAlphaSel( GXTevStageID stage, GXTevKAlphaSel sel );
+
+void GXSetTevSwapMode(
+ GXTevStageID stage,
+ GXTevSwapSel ras_sel,
+ GXTevSwapSel tex_sel );
+
+void GXSetTevSwapModeTable(
+ GXTevSwapSel table,
+ GXTevColorChan red,
+ GXTevColorChan green,
+ GXTevColorChan blue,
+ GXTevColorChan alpha );
+
+#endif // ( GX_REV != 1 )
+
+/*---------------------------------------------------------------------------*/
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __GXTEV_H__