Loading [MathJax]/extensions/MathMenu.js
Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
GFGeometry.h
Go to the documentation of this file.
1#ifndef GFGEOMETRY_H
2#define GFGEOMETRY_H
3
4#include <dolphin/gx.h>
5
6#define GF_GEN_MODE(nTexGens, nChans, nTevs, cm, nInds) \
7 ( \
8 (u32)(nTexGens) << 0 | \
9 (u32)(nChans) << 4 | \
10 (u32)(nTevs) << 10 | \
11 (u32)(cm) << 14 | \
12 (u32)(nInds) << 16 \
13 )
14
15static inline void GFWrite_u8(u8 data) {
16 GXCmd1u8(data);
17}
18
19static inline void GFWrite_u32(u32 data) {
20 GXCmd1u32(data);
21}
22
23static inline void GFWrite_u16(u16 data) {
24 GXCmd1u16(data);
25}
26
27static inline void GFWriteBPCmd(u32 regval) {
28 GFWrite_u8(GX_LOAD_BP_REG);
29 GFWrite_u32(regval);
30}
31
32static inline void GFWriteXFCmd(u16 addr, u32 val) {
33 GFWrite_u8(GX_LOAD_XF_REG);
34 GFWrite_u16(0);
35 GFWrite_u16(addr);
36 GFWrite_u32(val);
37}
38
39void GFSetGenMode2(u8 nTexGens, u8 nChans, u8 nTevs, u8 nInds, GXCullMode cm);
40
41#endif /* GFGEOMETRY_H */
static void GFWrite_u16(u16 data)
Definition GFGeometry.h:23
static void GFWrite_u8(u8 data)
Definition GFGeometry.h:15
static void GFWrite_u32(u32 data)
Definition GFGeometry.h:19
static void GFWriteBPCmd(u32 regval)
Definition GFGeometry.h:27
void GFSetGenMode2(u8 nTexGens, u8 nChans, u8 nTevs, u8 nInds, GXCullMode cm)
Definition GFGeometry.cpp:4
static void GFWriteXFCmd(u16 addr, u32 val)
Definition GFGeometry.h:32
enum _GXCullMode GXCullMode
unsigned long u32
Definition types.h:9
unsigned short int u16
Definition types.h:7
unsigned char u8
Definition types.h:5