summaryrefslogtreecommitdiff
path: root/include/JSystem/J3DGraphBase
diff options
context:
space:
mode:
authorCaroline Madsen <69010899+randomsalience@users.noreply.github.com>2023-12-31 11:49:08 -0500
committerGitHub <noreply@github.com>2023-12-31 18:49:08 +0200
commitfe92c18c83d57f9f041a7d3a014327d8fdc7cfba (patch)
tree0006aa0bf9574cb401361a4d72d5f53adaa6fa2c /include/JSystem/J3DGraphBase
parent68e857b4da4cfc692354f926ab3d12cef8c2be5b (diff)
work on J3DGD (#2017)
Diffstat (limited to 'include/JSystem/J3DGraphBase')
-rw-r--r--include/JSystem/J3DGraphBase/J3DGD.h39
1 files changed, 32 insertions, 7 deletions
diff --git a/include/JSystem/J3DGraphBase/J3DGD.h b/include/JSystem/J3DGraphBase/J3DGD.h
index 35e8ac45d5..2ff7131106 100644
--- a/include/JSystem/J3DGraphBase/J3DGD.h
+++ b/include/JSystem/J3DGraphBase/J3DGD.h
@@ -25,22 +25,47 @@ inline void J3DGDWrite_f32(f32 param) {
J3DGDWrite_u32(tmp);
}
-inline void J3DGDWriteBPCmd(u32 param_1) {
+inline void J3DGDWriteBPCmd(u32 cmd) {
J3DGDWrite_u8(0x61);
- J3DGDWrite_u32(param_1);
+ J3DGDWrite_u32(cmd);
}
-inline void J3DGDWriteXFCmd(u16 param_1, u32 param_2) {
+inline void J3DFifoLoadBPCmd(u32 cmd) {
+ GFX_FIFO(u8) = 0x61;
+ GFX_FIFO(u32) = cmd;
+}
+
+inline void J3DGDWriteXFCmd(u16 addr, u32 cmd) {
J3DGDWrite_u8(0x10);
J3DGDWrite_u16(0);
- J3DGDWrite_u16(param_1);
- J3DGDWrite_u32(param_2);
+ J3DGDWrite_u16(addr);
+ J3DGDWrite_u32(cmd);
}
-inline void J3DGDWriteXFCmdHdr(u16 cmd, u8 len) {
+inline void J3DGDWriteXFCmdHdr(u16 addr, u8 len) {
J3DGDWrite_u8(0x10);
J3DGDWrite_u16(len - 1);
- J3DGDWrite_u16(cmd);
+ J3DGDWrite_u16(addr);
+}
+
+inline void J3DFifoWriteXFCmdHdr(u16 addr, u8 len) {
+ GFX_FIFO(u8) = 0x10;
+ GFX_FIFO(u16) = len - 1;
+ GFX_FIFO(u16) = addr;
+}
+
+inline void J3DGXCmd1f32ptr(f32* value) {
+ GFX_FIFO(u32) = *(u32*)value;
+}
+
+inline void J3DGXCmd1f32(f32 value) {
+ GFX_FIFO(u32) = *(u32*)&value;
+}
+
+inline void J3DGDWriteCPCmd(u8 reg, u32 value) {
+ J3DGDWrite_u8(8);
+ J3DGDWrite_u8(reg);
+ J3DGDWrite_u32(value);
}
void J3DGDSetGenMode(u8 texGenNum, u8 colorChanNum, u8 tevStageNum, u8 IndTexStageNum,