Match frame draw setup functions (#123)

* Match frameDrawSetup2D

* Match frameDrawSetupDP

* Match frameDrawSetupFog_Zelda1

* Match frameDrawSetupFog_Default

* Match frameDrawSetupSP

* Fixup frameDrawSetupSP
This commit is contained in:
cadmic
2024-05-17 00:36:47 -07:00
committed by GitHub
parent 0f3d8f5089
commit 0e43fc24e2
4 changed files with 616 additions and 4 deletions
+3 -2
View File
@@ -340,7 +340,7 @@ typedef struct Frame {
/* 0x3D121 */ u8 primLODfrac;
/* 0x3D122 */ u8 lastTile;
/* 0x3D123 */ u8 iTileDrawn;
/* 0x3D124 */ GXColor aColor[5];
/* 0x3D124 */ GXColor aColor[FCT_COUNT];
/* 0x3D138 */ u32 nModeVtx;
/* 0x3D13C */ u16* nTempBuffer;
/* 0x3D140 */ u16* nCopyBuffer;
@@ -399,8 +399,9 @@ bool frameSetMatrixHint(Frame* pFrame, FrameMatrixProjection eProjection, s32 nA
f32 rNear, f32 rFar, f32 rFOVY, f32 rAspect, f32 rScale);
bool frameInvalidateCache(Frame* pFrame, s32 nOffset0, s32 nOffset1);
// _frameGCNcc.c
void SetNumTexGensChans(Frame* pFrame, s32 numCycles);
void SetTevStages(Frame* pFrame, s32 cycle);
void SetTevStages(Frame* pFrame, s32 cycle, s32 numCycles);
bool SetTevStageTable(Frame* pFrame, s32 numCycles);
#endif
+2
View File
@@ -10,6 +10,8 @@
#define OFFSETOF(p, field) ((u8*)&(p)->field - (u8*)(p))
#define MIN(a, b) ((a) < (b) ? (a) : (b))
#define MAX(a, b) ((a) < (b) ? (b) : (a))
#define SQ(x) ((x) * (x))
// Adds no-ops to increase a function's size, preventing automatic inlining
+2 -2
View File
@@ -111,7 +111,7 @@ void SetNumTexGensChans(Frame* pFrame, s32 numCycles) {
GXSetNumChans(numChans);
}
void SetTevStages(Frame* pFrame, s32 cycle) {
void SetTevStages(Frame* pFrame, s32 cycle, s32 numCycles) {
u8 nColor[4];
u8 nAlpha[4];
u32 tempColor;
@@ -126,7 +126,7 @@ void SetTevStages(Frame* pFrame, s32 cycle) {
s32 i;
// bug? order never used
s32 order;
s32 pad[3];
s32 pad[2];
order = 0;
if (cycle == 0) {
File diff suppressed because it is too large Load Diff