From 60eaf159b47a1dbb4caf0f0a93bf10d5089f1315 Mon Sep 17 00:00:00 2001 From: rozlette Date: Sat, 7 Dec 2019 18:21:34 -0600 Subject: Generate all major headers from ghidra project --- src/code/code_0x800A5AC0.c | 22 ++++----- src/code/code_0x800BF9A0.c | 10 ++-- src/code/code_0x800CAAD0.c | 99 --------------------------------------- src/code/code_0x800CAAD0.c.ignore | 99 +++++++++++++++++++++++++++++++++++++++ src/code/z_actor.c | 2 +- src/code/z_effect_soft_sprite.c | 2 +- src/code/z_lib.c | 32 ++++++------- 7 files changed, 133 insertions(+), 133 deletions(-) delete mode 100644 src/code/code_0x800CAAD0.c create mode 100644 src/code/code_0x800CAAD0.c.ignore (limited to 'src/code') diff --git a/src/code/code_0x800A5AC0.c b/src/code/code_0x800A5AC0.c index efb837e20..6093f412f 100644 --- a/src/code/code_0x800A5AC0.c +++ b/src/code/code_0x800A5AC0.c @@ -5,7 +5,7 @@ // This file is most likely En_A_Obj -UNK_RET EnAObj_Init(void* a0, UNK_TYPE a1) { +UNK_RET EnAObj_Init(ActorEnAObj* a0, GlobalContext* a1) { ActorEnAObj* s0 = (ActorEnAObj*)a0; s0->base.textId = ((s0->base.variable >> 8) & 0xFF) | 0x300; s0->base.variable = (s0->base.variable & 0xFF) - 9; @@ -22,32 +22,32 @@ UNK_RET EnAObj_Fini(ActorEnAObj* a0, GlobalContext* a1) { Collision_FiniCylinder(a1, a2); } -UNK_RET EnAObj_Update1(ActorEnAObj* a0, UNK_TYPE a1) { +UNK_RET EnAObj_Update1(ActorEnAObj* a0, GlobalContext* a1) { s16 v0; s32 v1; - if (func_800B84D0(a0, a1) != 0) { + if (func_800B84D0((Actor*)a0, a1) != 0) { a0->update = (actor_func)EnAObj_Update2; } else { v0 = a0->base.unk92 - a0->base.unkBC.rotation.y; v1 = (v0 < 0)? -v0 : v0; if ((v1 < 10240) || ((a0->base.variable == 1) && (v1 > 22528))) { - func_800B863C(a0, a1); + func_800B863C((Actor*)a0, a1); } } } -UNK_RET EnAObj_Update2(ActorEnAObj* a0) { - if (func_800B867C(a0) != 0) { +UNK_RET EnAObj_Update2(ActorEnAObj* a0, GlobalContext* a1) { + if (func_800B867C((Actor*)a0, a1) != 0) { a0->update = (actor_func)EnAObj_Update1; } } -UNK_RET EnAObj_Main(ActorEnAObj* a0, UNK_TYPE a1) { +UNK_RET EnAObj_Main(ActorEnAObj* a0, GlobalContext* a1) { (a0->update)((Actor*)a0, (GlobalContext*)a1); - func_800B675C(a0, 0x42340000); - Collision_AddOT(a1, a1 + 0x18884, &a0->collision); + func_800B675C((Actor*)a0, 45.0f); + Collision_AddOT(a1, &a1->collisionContext, (ColCommon*)&a0->collision); } -UNK_RET EnAObj_Draw(ActorEnAObj* a0, UNK_TYPE a1) { - func_800BDFC0(a1, D_801ADEB0[a0->base.variable], a1, a0); +UNK_RET EnAObj_Draw(ActorEnAObj* a0, GlobalContext* a1) { + func_800BDFC0(a1, D_801ADEB0[a0->base.variable]); } diff --git a/src/code/code_0x800BF9A0.c b/src/code/code_0x800BF9A0.c index d61cd01ed..a1edaf92b 100644 --- a/src/code/code_0x800BF9A0.c +++ b/src/code/code_0x800BF9A0.c @@ -7,13 +7,13 @@ UNK_RET func_800BF9A0(UNK_TYPE a0, UNK_TYPE a1) { UNK_TYPE v1; func_8008439C(-2, 0); - func_800847CC(&D_801DCBB0, D_801B4610); - func_800847CC(&D_801DCBC4); + func_800847CC(D_801DCBB0, D_801B4610); + func_800847CC(D_801DCBC4); for (i = 0, s0 = &actorOverlayTable[0]; i < D_801B4610; i++, s0++) { v1 = s0->vramEnd - s0->vramStart; if (s0->ramAddr == 0) continue; - func_800847CC(&D_801DCBE4, i, s0->ramAddr, s0->ramAddr + v1, s0->clients, &D_801DCBFC); + func_800847CC(D_801DCBE4, i, s0->ramAddr, s0->ramAddr + v1, s0->clients, &D_801DCBFC); } } @@ -41,8 +41,8 @@ UNK_TYPE func_800BFA78(UNK_TYPE a0, UNK_TYPE a1) { UNK_RET func_800BFAE8(UNK_ARGS) { D_801B4610 = 690; - func_800819F0(&D_801ED930, func_800BF9A0, 0, 0); - func_80081BCC(&D_801ED940, func_800BFA78, 0); + func_800819F0(&D_801ED930, (u32)func_800BF9A0, 0, 0); + func_80081BCC(&D_801ED940, (u32)func_800BFA78, 0); } UNK_RET func_800BFB40(UNK_ARGS) { diff --git a/src/code/code_0x800CAAD0.c b/src/code/code_0x800CAAD0.c deleted file mode 100644 index de931d94e..000000000 --- a/src/code/code_0x800CAAD0.c +++ /dev/null @@ -1,99 +0,0 @@ -#include -#include - -UNK_RET func_800CAAD0(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { - UNK_TYPE spD0; - UNK_TYPE sp90; - UNK_TYPE sp50; - UNK_TYPE sp44; - UNK_TYPE sp38; - UNK_TYPE sp24; - - s800CAAD0* v1; - - if (func_800C6024(a1) == 0) return; - - v1 = (s800CAAD0*)(a0 + a1 * 100); - - func_80139894(&spD0, v1->unk68, v1->unk6C, v1->unk70, v1->unk74, v1->unk76, - v1->unk78, v1->unk7C, v1->unk80, v1->unk84); - - if (func_80139188(&spD0, &sp90) == 2) return; - - func_80139894(&sp50, v1->unk88, v1->unk8C, v1->unk90, v1->unk94, v1->unk96, - v1->unk98, v1->unk9C, v1->unkA0, v1->unkA4); - - func_80138C88(&sp90, (UNK_PTR)(a2 + 36), &sp24); - func_80138C88(&sp50, &sp38, &sp44); - - v1->unk0 = *(UNK_TYPE*)((u8*)sp24 + 0); - v1->unk4 = *(UNK_TYPE*)((u8*)sp24 + 4); - v1->unk8 = *(UNK_TYPE*)((u8*)sp24 + 8); -} - -UNK_RET func_800CAC0C(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { - UNK_TYPE v0; - s16 v1; - - if (func_800C6024(a0) == 0) return; - - v0 = a0 + a1 * 100; - - v1 = *(s16*)(v0 + 150) - *(s16*)(v0 + 118); - - if (*(s16*)a2 == 0) { - *(s16*)(a2 + 2772) += v1; - } - - *(s16*)(a2 + 190) += v1; - *(s16*)(a2 + 50) += v1; -} - -UNK_RET func_800CACA0(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { - UNK_TYPE sp1C; - - if (func_800C6024(a2) == 0) return; - - sp1C = func_800C6248(a0, a2); - - if (sp1C == 0) return; - - func_800CAE88(sp1C); - - if ((*(u32*)(a1 + 4) & 0x04000000) == 0x0400) { - func_800CAF24(sp1C); - } - - if ((*(u32*)(a1 + 4) & 0x20000) == 0x20000) { - func_800CAF38(sp1C); - } -} - -UNK_TYPE func_800CAD2C(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { - UNK_TYPE v1; - UNK_TYPE sp24 = 0; - - if (func_800C6024(a1) == 0) return; - - if (((*(u16*)(a0 + a1*2 + 5084) & 0x2) != 0) || - ((*(u16*)(a0 + a1*2 + 5084) & 0x1) == 0)) { - return 0; - } - - v1 = func_800C6248(a0, a1); - if (v1 == 0) { - return 0; - } - - if ((*(u32*)(v1 + 340) & 0x1) != 0) { - func_800CAAD0(a0, a1, a2); - sp24 = 1; - } - - if ((*(u32*)(v1 + 340) & 0x2) != 0) { - func_800CAC0C(a0, a1, a2); - sp24 = 1; - } - - return sp24; -} diff --git a/src/code/code_0x800CAAD0.c.ignore b/src/code/code_0x800CAAD0.c.ignore new file mode 100644 index 000000000..de931d94e --- /dev/null +++ b/src/code/code_0x800CAAD0.c.ignore @@ -0,0 +1,99 @@ +#include +#include + +UNK_RET func_800CAAD0(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { + UNK_TYPE spD0; + UNK_TYPE sp90; + UNK_TYPE sp50; + UNK_TYPE sp44; + UNK_TYPE sp38; + UNK_TYPE sp24; + + s800CAAD0* v1; + + if (func_800C6024(a1) == 0) return; + + v1 = (s800CAAD0*)(a0 + a1 * 100); + + func_80139894(&spD0, v1->unk68, v1->unk6C, v1->unk70, v1->unk74, v1->unk76, + v1->unk78, v1->unk7C, v1->unk80, v1->unk84); + + if (func_80139188(&spD0, &sp90) == 2) return; + + func_80139894(&sp50, v1->unk88, v1->unk8C, v1->unk90, v1->unk94, v1->unk96, + v1->unk98, v1->unk9C, v1->unkA0, v1->unkA4); + + func_80138C88(&sp90, (UNK_PTR)(a2 + 36), &sp24); + func_80138C88(&sp50, &sp38, &sp44); + + v1->unk0 = *(UNK_TYPE*)((u8*)sp24 + 0); + v1->unk4 = *(UNK_TYPE*)((u8*)sp24 + 4); + v1->unk8 = *(UNK_TYPE*)((u8*)sp24 + 8); +} + +UNK_RET func_800CAC0C(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { + UNK_TYPE v0; + s16 v1; + + if (func_800C6024(a0) == 0) return; + + v0 = a0 + a1 * 100; + + v1 = *(s16*)(v0 + 150) - *(s16*)(v0 + 118); + + if (*(s16*)a2 == 0) { + *(s16*)(a2 + 2772) += v1; + } + + *(s16*)(a2 + 190) += v1; + *(s16*)(a2 + 50) += v1; +} + +UNK_RET func_800CACA0(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { + UNK_TYPE sp1C; + + if (func_800C6024(a2) == 0) return; + + sp1C = func_800C6248(a0, a2); + + if (sp1C == 0) return; + + func_800CAE88(sp1C); + + if ((*(u32*)(a1 + 4) & 0x04000000) == 0x0400) { + func_800CAF24(sp1C); + } + + if ((*(u32*)(a1 + 4) & 0x20000) == 0x20000) { + func_800CAF38(sp1C); + } +} + +UNK_TYPE func_800CAD2C(UNK_TYPE a0, UNK_TYPE a1, UNK_TYPE a2) { + UNK_TYPE v1; + UNK_TYPE sp24 = 0; + + if (func_800C6024(a1) == 0) return; + + if (((*(u16*)(a0 + a1*2 + 5084) & 0x2) != 0) || + ((*(u16*)(a0 + a1*2 + 5084) & 0x1) == 0)) { + return 0; + } + + v1 = func_800C6248(a0, a1); + if (v1 == 0) { + return 0; + } + + if ((*(u32*)(v1 + 340) & 0x1) != 0) { + func_800CAAD0(a0, a1, a2); + sp24 = 1; + } + + if ((*(u32*)(v1 + 340) & 0x2) != 0) { + func_800CAC0C(a0, a1, a2); + sp24 = 1; + } + + return sp24; +} diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 18b608a9c..789b6a3bd 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -259,7 +259,7 @@ GLOBAL_ASM("./asm/nonmatching/z_actor/func_800B8898.asm") GLOBAL_ASM("./asm/nonmatching/z_actor/func_800B8934.asm") -UNK_TYPE Actor_HasParent(Actor* actor, GlobalContext* ctxt) { +u32 Actor_HasParent(Actor* actor, GlobalContext* ctxt) { if (actor->parent != NULL) { return 1; } else { diff --git a/src/code/z_effect_soft_sprite.c b/src/code/z_effect_soft_sprite.c index 80b4f7bf7..bf0c56f8a 100644 --- a/src/code/z_effect_soft_sprite.c +++ b/src/code/z_effect_soft_sprite.c @@ -279,7 +279,7 @@ GLOBAL_ASM("./asm/nonmatching/z_effect_soft_sprite/EffectSS_DrawParticle.asm") #endif void EffectSS_DrawAllParticles(GlobalContext* ctxt) { - UNK_TYPE s0; + LightMapper* s0; s32 i; s0 = Lights_CreateMapper(&ctxt->lightsContext, ctxt->commonVars.graphicsContext); diff --git a/src/code/z_lib.c b/src/code/z_lib.c index ddb63dfd1..34c971601 100644 --- a/src/code/z_lib.c +++ b/src/code/z_lib.c @@ -61,11 +61,11 @@ s32 Lib_StepTowardsGet_i(s32 a0, s32 a1, s32 a2) { return a1; } -UNK_RET Lib_StepTowards_i(u32* a0, u32 a1, u32 a2) { +void Lib_StepTowards_i(s32* a0, s32 a1, s32 a2) { *a0 = Lib_StepTowardsGet_i(*a0, a1, a2); } -UNK_TYPE Lib_StepTowardsCheck_i(u32* a0, u32 a1, u32 a2) { +UNK_TYPE Lib_StepTowardsCheck_i(s32* a0, s32 a1, s32 a2) { Lib_StepTowards_i(a0, a1, a2); return a1 == *a0; @@ -524,7 +524,7 @@ f32 func_800FFCD8(f32* a0, f32 a1, f32 a2, f32 a3, f32 a4) { return fabsf(a1 - *a0); } -UNK_RET Lib_ScaleMax_f(f32* a0, f32 a1, f32 a2, f32 a3) { +void Lib_ScaleMax_f(f32* a0, f32 a1, f32 a2, f32 a3) { f32 f2; if (*a0 != a1) { @@ -581,11 +581,11 @@ void Lib_ScaleMax_s(s16* a0, s16 a1, s16 a2, s16 a3) { *a0 += v0; } -UNK_RET Lib_CopyColor(u8* a0, u8* a1) { - a0[0] = a1[0]; - a0[1] = a1[1]; - a0[2] = a1[2]; - a0[3] = a1[3]; +UNK_RET Lib_CopyColor(Color* a0, Color* a1) { + a0->red = a1->red; + a0->green = a1->green; + a0->blue = a1->blue; + a0->alpha = a1->alpha; } UNK_RET func_801000A4(u16 a0) { @@ -613,11 +613,11 @@ void Lib_TranslateAndRotateYVec3f(Vector3f* a0, s16 a1, Vector3f* a2, Vector3f* #ifdef NONMATCHING -void Lib_LerpRGB(u8* a0, u8* a1, f32 a2, u8* a3) { +void Lib_LerpRGB(RGB* a0, RGB* a1, f32 a2, RGB* a3) { // XXX regalloc is slightly off - a3[0] = (f32)a0[0] + ((f32)a1[0] - (f32)a0[0]) * a2; - a3[1] = (f32)a0[1] + ((f32)a1[1] - (f32)a0[1]) * a2; - a3[2] = (f32)a0[2] + ((f32)a1[2] - (f32)a0[2]) * a2; + a3->red = (f32)a0->red + ((f32)a1->red - (f32)a0->red) * a2; + a3->green = (f32)a0->green + ((f32)a1->green - (f32)a0->green) * a2; + a3->blue = (f32)a0->blue + ((f32)a1->blue - (f32)a0->blue) * a2; } #else @@ -649,11 +649,11 @@ f32 Lib_PushAwayVec3f(Vector3f* a0, Vector3f* a1, f32 a2) { void Lib_Nop801004FC(void) {} -UNK_TYPE Lib_PtrSegToPhys(u32 a0) { +u32 Lib_PtrSegToPhys(u32 a0) { return(rspSegmentPhysAddrs[(a0 << 4) >> 28] + (a0 & 0xFFFFFF)) + 0x80000000; } -UNK_TYPE Lib_PtrSegToPhysNull(u32 a0) { +u32 Lib_PtrSegToPhysNull(u32 a0) { if ((a0 >> 28) == 0) { return a0; } @@ -661,7 +661,7 @@ UNK_TYPE Lib_PtrSegToPhysNull(u32 a0) { return(rspSegmentPhysAddrs[(a0 << 4) >> 28] + (a0 & 0xFFFFFF)) + 0x80000000; } -UNK_TYPE Lib_PtrSegToK0(UNK_TYPE a0) { +u32 Lib_PtrSegToK0(u32 a0) { if (a0 == 0) { return 0; } else { @@ -669,7 +669,7 @@ UNK_TYPE Lib_PtrSegToK0(UNK_TYPE a0) { } } -UNK_TYPE Lib_PtrSegToK0Null(UNK_TYPE a0) { +u32 Lib_PtrSegToK0Null(u32 a0) { if (a0 == 0) { return 0; } else { -- cgit v1.2.3