ActorShopItem 98% (#151)

* ActorShopItem 93%

* Fix build

* Add missing symbols to usa

* Document BMG message ID functions

* Create bmg.py for inspecting BMG files

* ActorShopItem 98%

* Match func_ov031_0217dfec

* Port reloc changes to usa

* Make `ModelRender::GetLcdcAddress` non-const
This commit is contained in:
Aetias
2026-05-04 22:07:42 +02:00
committed by GitHub
parent fe6681a298
commit b44496319d
51 changed files with 2545 additions and 1055 deletions
+5 -5
View File
@@ -33,8 +33,8 @@ extern void func_ov000_020792a0(s32 *param_1, s32 param_2, unk32 param_3, unk32
extern void func_ov000_02079898(unk32 *param_1, unk32 param_2, unk32 param_3);
extern void func_ov000_020798bc(s32 *param_1, s32 param_2);
extern void func_ov000_02088000(UnkStruct_027e0f64_04 *param_1, s32 param_2);
extern void func_ov000_02088130(u8 *param_1, unk32 param_2);
extern void func_ov000_02088144(u8 *param_1, unk32 param_2);
extern void func_ov000_02088130(u8 *param_1, UnkStruct_027e0f64_04 *param_2);
extern void func_ov000_02088144(u8 *param_1, UnkStruct_027e0f64_04 *param_2);
extern s32 func_ov000_0208b73c(s32 param_1, unk32 param_2);
extern s32 func_ov000_0208b7d0(s32 param_1, Vec3p *param_2);
@@ -2090,7 +2090,7 @@ unk32 MapManager::func_ov00_02084ebc(Vec3p *param_2) {
s32 MapManager::func_ov00_02085108(Vec3p *param_2) {
MapManager *puVar1;
unk32 uVar2;
UnkStruct_027e0f64_04 *uVar2;
int *piVar3;
int iVar4;
u32 uVar5;
@@ -2148,7 +2148,7 @@ s32 MapManager::func_ov00_02085108(Vec3p *param_2) {
s32 MapManager::func_ov00_0208527c(MapManager *param_1, unk32 param_2, Vec3p *param_3) {
u32 uVar1;
MapManager *puVar2;
unk32 uVar3;
UnkStruct_027e0f64_04 *uVar3;
int iVar4;
int iVar5;
u32 uVar6;
@@ -2208,7 +2208,7 @@ s32 MapManager::func_ov00_0208527c(MapManager *param_1, unk32 param_2, Vec3p *pa
s32 MapManager::func_ov00_020853fc(MapManager *param_1, Vec3p *param_2, s32 *param_3) {
u32 uVar1;
unk32 uVar2;
UnkStruct_027e0f64_04 *uVar2;
int iVar3;
int iVar4;
int iVar5;
+1 -3
View File
@@ -728,8 +728,6 @@ ARM bool PlayerControl::func_ov00_020b05e8(Vec3p *param1) {
return false;
}
extern "C" bool func_01ffe468(unk32 param1, Vec3p *param2, s32 *param3, s32 *param4, bool param5);
ARM bool PlayerControl::func_ov00_020b0778(Vec3p *param1, u32 angle, unk32 *param3) {
Vec3p spC;
*param3 = 0;
@@ -737,7 +735,7 @@ ARM bool PlayerControl::func_ov00_020b0778(Vec3p *param1, u32 angle, unk32 *para
s32 sp8;
s32 sp4;
bool var_r0 = !func_01ffe468(data_027e0f64->func_ov000_0208b180(), &spC, &sp8, &sp4, 0);
bool var_r0 = !data_027e0f64->func_ov000_0208b180()->func_01ffe468(&spC, &sp8, &sp4, 0);
if (var_r0) {
return 0;
}
-2
View File
@@ -9,7 +9,6 @@ extern "C" void UnkInit_ModelRender_Struct4_Params(G3d_RenderObject *unkStruct4,
extern "C" void CopySingle288(Mat3p *src, Mat3p *dest);
extern "C" void SetGeometryScale(Vec3p *scale);
extern "C" void SetGeometryTranslation(Vec3p *translation);
extern "C" void PushGeometryCommand(u32 command, void *data, s32 length);
extern "C" void func_ov000_020c0d70(UnkStruct_ov000_020c0c08 *param1, G3d_RenderObject *param2);
extern "C" void func_ov000_020b3ea8(void *param1);
extern "C" unk32 func_0201e388(void *param1, const char *param2);
@@ -20,7 +19,6 @@ extern "C" Vec3p gGeomScale;
extern "C" const Mat4x3p *data_027e03c8;
extern "C" Vec3p gDefaultScale;
extern "C" Mat3p gDefaultMatrix;
extern "C" u32 *data_027e0ce0[];
THUMB ModelRender::ModelRender(ItemModel *itemModel) {
this->unkBoneMatrixArray2 = NULL;
+1 -1
View File
@@ -142,7 +142,7 @@ ARM unk32 GameModeAdventure::vfunc_08(bool param1) {
this->mUnk_00c->func_ov009_021135d0();
this->mUnk_014->func_ov009_0211372c();
data_027e0e28->func_ov000_0207bc9c();
data_027e0e28.func_ov000_0207bc9c();
}
}
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -413,7 +413,7 @@ ARM void UnkStruct_020397f8::vfunc_44(s32 touchLastX, s32 touchLastY) {
if ((data_02056be4[data_027e077c.mUnk_0] & 2) == 0) {
if ((gTouchControl.mFlags & 1) != 0) {
if (this->mUnk_50 == 0 && data_027e0d38 != 0) {
if (func_ov000_02079e04() == 0 && data_027e0e28->func_ov000_0207bc48() == 0) {
if (func_ov000_02079e04() == 0 && data_027e0e28.func_ov000_0207bc48() == 0) {
if (gGame.mUnk_101 == 0 && data_027e103c->mUnk_24 == 0) {
return;
}