GLES2N64 (from mupen64plus-ae) plugin. Compile and run on the OpenPandora
[mupen64plus-pandora.git] / source / gles2n64 / src / F3DEX2.h
1 #ifndef F3DEX2_H
2 #define F3DEX2_H
3
4 #define F3DEX2_MTX_STACKSIZE        18
5
6 #define F3DEX2_MTX_MODELVIEW        0x00
7 #define F3DEX2_MTX_PROJECTION       0x04
8 #define F3DEX2_MTX_MUL              0x00
9 #define F3DEX2_MTX_LOAD             0x02
10 #define F3DEX2_MTX_NOPUSH           0x00
11 #define F3DEX2_MTX_PUSH             0x01
12
13 #define F3DEX2_TEXTURE_ENABLE       0x00000000
14 #define F3DEX2_SHADING_SMOOTH       0x00200000
15 #define F3DEX2_CULL_FRONT           0x00000200
16 #define F3DEX2_CULL_BACK            0x00000400
17 #define F3DEX2_CULL_BOTH            0x00000600
18 #define F3DEX2_CLIPPING             0x00800000
19
20 #define F3DEX2_MV_VIEWPORT          8
21
22 #define F3DEX2_MWO_aLIGHT_1     0x00
23 #define F3DEX2_MWO_bLIGHT_1     0x04
24 #define F3DEX2_MWO_aLIGHT_2     0x18
25 #define F3DEX2_MWO_bLIGHT_2     0x1c
26 #define F3DEX2_MWO_aLIGHT_3     0x30
27 #define F3DEX2_MWO_bLIGHT_3     0x34
28 #define F3DEX2_MWO_aLIGHT_4     0x48
29 #define F3DEX2_MWO_bLIGHT_4     0x4c
30 #define F3DEX2_MWO_aLIGHT_5     0x60
31 #define F3DEX2_MWO_bLIGHT_5     0x64
32 #define F3DEX2_MWO_aLIGHT_6     0x78
33 #define F3DEX2_MWO_bLIGHT_6     0x7c
34 #define F3DEX2_MWO_aLIGHT_7     0x90
35 #define F3DEX2_MWO_bLIGHT_7     0x94
36 #define F3DEX2_MWO_aLIGHT_8     0xa8
37 #define F3DEX2_MWO_bLIGHT_8     0xac
38
39
40 #define F3DEX2_RDPHALF_2        0xF1
41 #define F3DEX2_SETOTHERMODE_H   0xE3
42 #define F3DEX2_SETOTHERMODE_L   0xE2
43 #define F3DEX2_RDPHALF_1        0xE1
44 #define F3DEX2_SPNOOP           0xE0
45 #define F3DEX2_ENDDL            0xDF
46 #define F3DEX2_DL               0xDE
47 #define F3DEX2_LOAD_UCODE       0xDD
48 #define F3DEX2_MOVEMEM          0xDC
49 #define F3DEX2_MOVEWORD         0xDB
50 #define F3DEX2_MTX              0xDA
51 #define F3DEX2_GEOMETRYMODE     0xD9
52 #define F3DEX2_POPMTX           0xD8
53 #define F3DEX2_TEXTURE          0xD7
54 #define F3DEX2_DMA_IO           0xD6
55 #define F3DEX2_SPECIAL_1        0xD5
56 #define F3DEX2_SPECIAL_2        0xD4
57 #define F3DEX2_SPECIAL_3        0xD3
58
59 #define F3DEX2_VTX              0x01
60 #define F3DEX2_MODIFYVTX        0x02
61 #define F3DEX2_CULLDL           0x03
62 #define F3DEX2_BRANCH_Z         0x04
63 #define F3DEX2_TRI1             0x05
64 #define F3DEX2_TRI2             0x06
65 #define F3DEX2_QUAD             0x07
66 //#define F3DEX2_LINE3D         0x08
67
68
69 void F3DEX2_Mtx( u32 w0, u32 w1 );
70 void F3DEX2_MoveMem( u32 w0, u32 w1 );
71 void F3DEX2_Vtx( u32 w0, u32 w1 );
72 void F3DEX2_Reserved1( u32 w0, u32 w1 );
73 void F3DEX2_Tri1( u32 w0, u32 w1 );
74 void F3DEX2_PopMtx( u32 w0, u32 w1 );
75 void F3DEX2_MoveWord( u32 w0, u32 w1 );
76 void F3DEX2_Texture( u32 w0, u32 w1 );
77 void F3DEX2_SetOtherMode_H( u32 w0, u32 w1 );
78 void F3DEX2_SetOtherMode_L( u32 w0, u32 w1 );
79 void F3DEX2_GeometryMode( u32 w0, u32 w1 );
80 //void F3DEX2_Line3D( u32 w0, u32 w1 );
81 void F3DEX2_DMAIO( u32 w0, u32 w1 );
82 void F3DEX2_Special_1( u32 w0, u32 w1 );
83 void F3DEX2_Special_2( u32 w0, u32 w1 );
84 void F3DEX2_Special_3( u32 w0, u32 w1 );
85 void F3DEX2_Quad( u32 w0, u32 w1 );
86 void F3DEX2_Init();
87 #endif
88