Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
J3DFifo.h
Go to the documentation of this file.
1#ifndef J3DFIFO_H
2#define J3DFIFO_H
3
4#include <dolphin/gx.h>
5#include <dolphin/gd.h>
6
7inline void J3DFifoLoadBPCmd(u32 regval) {
8 GXCmd1u8(GX_LOAD_BP_REG);
9 GXCmd1u32(regval);
10}
11
12inline void J3DFifoWriteXFCmdHdr(u16 addr, u8 len) {
13 GXCmd1u8(GX_LOAD_XF_REG);
14 GXCmd1u16(len - 1);
15 GXCmd1u16(addr);
16}
17
18inline void J3DFifoLoadIndx(u8 cmd, u16 indx, u16 addr) {
19 GXWGFifo.u8 = cmd;
20 GXWGFifo.u16 = indx;
21 GXWGFifo.u16 = addr;
22}
23
24inline void J3DFifoWriteCPCmd(u8 cmd, u32 param) {
25 GXWGFifo.u8 = GX_LOAD_CP_REG;
26 GXWGFifo.u8 = cmd;
27 GXWGFifo.u32 = param;
28}
29
30inline void J3DFifoLoadCPCmd(u8 reg, u32 value) {
31 GXCmd1u8(GX_LOAD_CP_REG);
32 GXCmd1u8(reg);
33 GXCmd1u32(value);
34}
35
36inline void J3DFifoWriteXFCmd(u16 cmd, u16 len) {
37 GXWGFifo.u8 = GX_LOAD_XF_REG;
38 GXWGFifo.u16 = (len - 1);
39 GXWGFifo.u16 = cmd;
40}
41
42inline void J3DFifoLoadXFCmdHdr(u16 addr, u8 len) {
43 GXCmd1u8(GX_LOAD_XF_REG);
44 GXCmd1u16(len - 1);
45 GXCmd1u16(addr);
46}
47
48inline void J3DFifoLoadPosMtxIndx(u16 index, u32 addr) {
49 GXCmd1u8(GX_LOAD_INDX_A);
50 GXCmd1u16(index);
51 GXCmd1u16(((sizeof(Vec) - 1) << 12) | (u16)(addr * 4));
52}
53
55 GXCmd1u8(GX_LOAD_INDX_B);
56 GXCmd1u16(index);
57 GXCmd1u16(((9 - 1) << 12) | (u16)((addr * 3) + 0x400));
58}
59
66
67#endif /* J3DFIFO_H */
void J3DFifoWriteXFCmd(u16 cmd, u16 len)
Definition J3DFifo.h:36
void J3DFifoLoadNrmMtxImm3x3(f32(*)[3], u32)
void J3DFifoLoadNrmMtxToTexMtx3x3(f32(*)[3], u32)
void J3DFifoLoadNrmMtxIndx3x3(u16 index, u32 addr)
Definition J3DFifo.h:54
void J3DFifoLoadNrmMtxImm(f32(*)[4], u32)
void J3DFifoLoadXFCmdHdr(u16 addr, u8 len)
Definition J3DFifo.h:42
void J3DFifoLoadPosMtxIndx(u16 index, u32 addr)
Definition J3DFifo.h:48
void J3DFifoLoadCPCmd(u8 reg, u32 value)
Definition J3DFifo.h:30
void J3DFifoLoadTexCached(GXTexMapID, u32, GXTexCacheSize, u32, GXTexCacheSize)
Definition J3DGD.cpp:704
void J3DFifoLoadIndx(u8 cmd, u16 indx, u16 addr)
Definition J3DFifo.h:18
void J3DFifoLoadBPCmd(u32 regval)
Definition J3DFifo.h:7
void J3DFifoWriteCPCmd(u8 cmd, u32 param)
Definition J3DFifo.h:24
void J3DFifoLoadNrmMtxToTexMtx(f32(*)[4], u32)
void J3DFifoWriteXFCmdHdr(u16 addr, u8 len)
Definition J3DFifo.h:12
void J3DFifoLoadPosMtxImm(f32(*)[4], u32)
static u8 index[20][3]
Definition GXDraw.c:434
enum _GXTexMapID GXTexMapID
enum _GXTexCacheSize GXTexCacheSize
unsigned long u32
Definition types.h:12
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition mtx.h:13