GLES2N64 (from mupen64plus-ae) plugin. Compile and run on the OpenPandora
[mupen64plus-pandora.git] / source / gles2n64 / src / F3D.h
CommitLineData
34cf4058 1#ifndef F3D_H
2#define F3D_H
3#include "Types.h"
4
5#define F3D_MTX_STACKSIZE 10
6
7#define F3D_MTX_MODELVIEW 0x00
8#define F3D_MTX_PROJECTION 0x01
9#define F3D_MTX_MUL 0x00
10#define F3D_MTX_LOAD 0x02
11#define F3D_MTX_NOPUSH 0x00
12#define F3D_MTX_PUSH 0x04
13
14#define F3D_TEXTURE_ENABLE 0x00000002
15#define F3D_SHADING_SMOOTH 0x00000200
16#define F3D_CULL_FRONT 0x00001000
17#define F3D_CULL_BACK 0x00002000
18#define F3D_CULL_BOTH 0x00003000
19#define F3D_CLIPPING 0x00000000
20
21#define F3D_MV_VIEWPORT 0x80
22
23#define F3D_MWO_aLIGHT_1 0x00
24#define F3D_MWO_bLIGHT_1 0x04
25#define F3D_MWO_aLIGHT_2 0x20
26#define F3D_MWO_bLIGHT_2 0x24
27#define F3D_MWO_aLIGHT_3 0x40
28#define F3D_MWO_bLIGHT_3 0x44
29#define F3D_MWO_aLIGHT_4 0x60
30#define F3D_MWO_bLIGHT_4 0x64
31#define F3D_MWO_aLIGHT_5 0x80
32#define F3D_MWO_bLIGHT_5 0x84
33#define F3D_MWO_aLIGHT_6 0xa0
34#define F3D_MWO_bLIGHT_6 0xa4
35#define F3D_MWO_aLIGHT_7 0xc0
36#define F3D_MWO_bLIGHT_7 0xc4
37#define F3D_MWO_aLIGHT_8 0xe0
38#define F3D_MWO_bLIGHT_8 0xe4
39
40// FAST3D commands
41#define F3D_SPNOOP 0x00
42#define F3D_MTX 0x01
43#define F3D_RESERVED0 0x02
44#define F3D_MOVEMEM 0x03
45#define F3D_VTX 0x04
46#define F3D_RESERVED1 0x05
47#define F3D_DL 0x06
48#define F3D_RESERVED2 0x07
49#define F3D_RESERVED3 0x08
50#define F3D_SPRITE2D_BASE 0x09
51
52#define F3D_TRI1 0xBF
53#define F3D_CULLDL 0xBE
54#define F3D_POPMTX 0xBD
55#define F3D_MOVEWORD 0xBC
56#define F3D_TEXTURE 0xBB
57#define F3D_SETOTHERMODE_H 0xBA
58#define F3D_SETOTHERMODE_L 0xB9
59#define F3D_ENDDL 0xB8
60#define F3D_SETGEOMETRYMODE 0xB7
61#define F3D_CLEARGEOMETRYMODE 0xB6
62//#define F3D_LINE3D 0xB5 // Only used in Line3D
63#define F3D_QUAD 0xB5
64#define F3D_RDPHALF_1 0xB4
65#define F3D_RDPHALF_2 0xB3
66#define F3D_RDPHALF_CONT 0xB2
67#define F3D_TRI4 0xB1
68
69#define F3D_TRI_UNKNOWN 0xC0
70
71void F3D_SPNoOp( u32 w0, u32 w1 );
72void F3D_Mtx( u32 w0, u32 w1 );
73void F3D_Reserved0( u32 w0, u32 w1 );
74void F3D_MoveMem( u32 w0, u32 w1 );
75void F3D_Vtx( u32 w0, u32 w1 );
76void F3D_Reserved1( u32 w0, u32 w1 );
77void F3D_DList( u32 w0, u32 w1 );
78void F3D_Reserved2( u32 w0, u32 w1 );
79void F3D_Reserved3( u32 w0, u32 w1 );
80void F3D_Sprite2D_Base( u32 w0, u32 w1 );
81void F3D_Tri1( u32 w0, u32 w1 );
82void F3D_CullDL( u32 w0, u32 w1 );
83void F3D_PopMtx( u32 w0, u32 w1 );
84void F3D_MoveWord( u32 w0, u32 w1 );
85void F3D_Texture( u32 w0, u32 w1 );
86void F3D_SetOtherMode_H( u32 w0, u32 w1 );
87void F3D_SetOtherMode_L( u32 w0, u32 w1 );
88void F3D_EndDL( u32 w0, u32 w1 );
89void F3D_SetGeometryMode( u32 w0, u32 w1 );
90void F3D_ClearGeometryMode( u32 w0, u32 w1 );
91//void F3D_Line3D( u32 w0, u32 w1 );
92void F3D_Quad( u32 w0, u32 w1 );
93void F3D_RDPHalf_1( u32 w0, u32 w1 );
94void F3D_RDPHalf_2( u32 w0, u32 w1 );
95void F3D_RDPHalf_Cont( u32 w0, u32 w1 );
96void F3D_Tri4( u32 w0, u32 w1 );
97void F3D_Init();
98#endif
99