34cf4058 |
1 | #include "gles2N64.h" |
2 | #include "Debug.h" |
3 | #include "F3D.h" |
4 | #include "F3DEX.h" |
5 | #include "F3DEX2.h" |
6 | #include "L3DEX2.h" |
7 | #include "N64.h" |
8 | #include "RSP.h" |
9 | #include "RDP.h" |
10 | #include "gSP.h" |
11 | #include "gDP.h" |
12 | #include "GBI.h" |
13 | |
14 | void L3DEX2_Line3D( u32 w0, u32 w1 ) |
15 | { |
16 | u32 wd = _SHIFTR( w0, 0, 8 ); |
17 | |
18 | if (wd == 0) |
19 | gSPLine3D( _SHIFTR( w0, 17, 7 ), _SHIFTR( w0, 9, 7 ), 0 ); |
20 | else |
21 | gSPLineW3D( _SHIFTR( w0, 17, 7 ), _SHIFTR( w0, 9, 7 ), wd, 0 ); |
22 | } |
23 | |
24 | void L3DEX2_Init() |
25 | { |
26 | // Set GeometryMode flags |
27 | GBI_InitFlags( F3DEX2 ); |
28 | |
29 | GBI.PCStackSize = 18; |
30 | |
31 | // GBI Command Command Value Command Function |
32 | // GBI_SetGBI( G_BG_COPY, 0x0A, S2DEX_BG_Copy ); |
33 | GBI_SetGBI( G_RDPHALF_2, F3DEX2_RDPHALF_2, F3D_RDPHalf_2 ); |
34 | GBI_SetGBI( G_SETOTHERMODE_H, F3DEX2_SETOTHERMODE_H, F3DEX2_SetOtherMode_H ); |
35 | GBI_SetGBI( G_SETOTHERMODE_L, F3DEX2_SETOTHERMODE_L, F3DEX2_SetOtherMode_L ); |
36 | GBI_SetGBI( G_RDPHALF_1, F3DEX2_RDPHALF_1, F3D_RDPHalf_1 ); |
37 | GBI_SetGBI( G_SPNOOP, F3DEX2_SPNOOP, F3D_SPNoOp ); |
38 | GBI_SetGBI( G_ENDDL, F3DEX2_ENDDL, F3D_EndDL ); |
39 | GBI_SetGBI( G_DL, F3DEX2_DL, F3D_DList ); |
40 | GBI_SetGBI( G_LOAD_UCODE, F3DEX2_LOAD_UCODE, F3DEX_Load_uCode ); |
41 | GBI_SetGBI( G_MOVEMEM, F3DEX2_MOVEMEM, F3DEX2_MoveMem ); |
42 | GBI_SetGBI( G_MOVEWORD, F3DEX2_MOVEWORD, F3DEX2_MoveWord ); |
43 | GBI_SetGBI( G_MTX, F3DEX2_MTX, F3DEX2_Mtx ); |
44 | GBI_SetGBI( G_GEOMETRYMODE, F3DEX2_GEOMETRYMODE, F3DEX2_GeometryMode ); |
45 | GBI_SetGBI( G_POPMTX, F3DEX2_POPMTX, F3DEX2_PopMtx ); |
46 | GBI_SetGBI( G_TEXTURE, F3DEX2_TEXTURE, F3DEX2_Texture ); |
47 | GBI_SetGBI( G_DMA_IO, F3DEX2_DMA_IO, F3DEX2_DMAIO ); |
48 | GBI_SetGBI( G_SPECIAL_1, F3DEX2_SPECIAL_1, F3DEX2_Special_1 ); |
49 | GBI_SetGBI( G_SPECIAL_2, F3DEX2_SPECIAL_2, F3DEX2_Special_2 ); |
50 | GBI_SetGBI( G_SPECIAL_3, F3DEX2_SPECIAL_3, F3DEX2_Special_3 ); |
51 | |
52 | GBI_SetGBI( G_VTX, F3DEX2_VTX, F3DEX2_Vtx ); |
53 | GBI_SetGBI( G_MODIFYVTX, F3DEX2_MODIFYVTX, F3DEX_ModifyVtx ); |
54 | GBI_SetGBI( G_CULLDL, F3DEX2_CULLDL, F3DEX_CullDL ); |
55 | GBI_SetGBI( G_BRANCH_Z, F3DEX2_BRANCH_Z, F3DEX_Branch_Z ); |
56 | // GBI_SetGBI( G_TRI1, F3DEX2_TRI1, F3DEX2_Tri1 ); |
57 | // GBI_SetGBI( G_TRI2, F3DEX2_TRI2, F3DEX_Tri2 ); |
58 | // GBI_SetGBI( G_QUAD, F3DEX2_QUAD, F3DEX2_Quad ); |
59 | GBI_SetGBI( G_LINE3D, L3DEX2_LINE3D, L3DEX2_Line3D ); |
60 | } |
61 | |