Improve various partially matched TUs (#2526)

This commit is contained in:
hatal175
2025-07-11 11:11:21 +03:00
committed by GitHub
parent a11f8f6375
commit b83ff69589
25 changed files with 285 additions and 1140 deletions
+8 -232
View File
@@ -6,98 +6,6 @@
#include "d/actor/d_a_obj_hbombkoya.h"
#include "d/d_com_inf_game.h"
#include "d/d_bg_w.h"
#include "dol2asm.h"
//
// Forward References:
//
extern "C" void create1st__16daObjHBombkoya_cFv();
extern "C" void CreateHeap__16daObjHBombkoya_cFv();
extern "C" void Create__16daObjHBombkoya_cFv();
extern "C" void __dt__8cM3dGAabFv();
extern "C" void setParticle__16daObjHBombkoya_cFPUsiPQ216daObjHBombkoya_c7PSetTblii();
extern "C" void Execute__16daObjHBombkoya_cFPPA3_A4_f();
extern "C" void Draw__16daObjHBombkoya_cFv();
extern "C" void Delete__16daObjHBombkoya_cFv();
extern "C" static void daObjHBombkoya_create1st__FP16daObjHBombkoya_c();
extern "C" void __dt__8cM3dGCylFv();
extern "C" void __dt__10dCcD_GSttsFv();
extern "C" static void daObjHBombkoya_MoveBGDelete__FP16daObjHBombkoya_c();
extern "C" static void daObjHBombkoya_MoveBGExecute__FP16daObjHBombkoya_c();
extern "C" static void daObjHBombkoya_MoveBGDraw__FP16daObjHBombkoya_c();
extern "C" void __dt__10cCcD_GSttsFv();
extern "C" void __dt__17dEvLib_callback_cFv();
extern "C" bool eventStart__17dEvLib_callback_cFv();
extern "C" bool eventRun__17dEvLib_callback_cFv();
extern "C" bool eventEnd__17dEvLib_callback_cFv();
extern "C" void __dt__16daObjHBombkoya_cFv();
extern "C" static void func_80C1C5E8();
extern "C" extern char const* const d_a_obj_hbombkoya__stringBase0;
//
// External References:
//
extern "C" void mDoMtx_YrotM__FPA4_fs();
extern "C" void scaleM__14mDoMtx_stack_cFfff();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void onSwitch__10dSv_info_cFii();
extern "C" void isSwitch__10dSv_info_cCFii();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void
set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
extern "C" void
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
extern "C" void __ct__16dBgS_MoveBgActorFv();
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
extern "C" void
MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
extern "C" void __ct__12dCcD_GObjInfFv();
extern "C" void __dt__12dCcD_GObjInfFv();
extern "C" void Set__8dCcD_CylFRC11dCcD_SrcCyl();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void Set__4cCcSFP8cCcD_Obj();
extern "C" void SetC__8cM3dGCylFRC4cXyz();
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void __dl__FPv();
extern "C" void _savegpr_19();
extern "C" void _savegpr_24();
extern "C" void _restgpr_19();
extern "C" void _restgpr_24();
extern "C" extern void* __vt__16dBgS_MoveBgActor[10];
extern "C" extern void* __vt__8dCcD_Cyl[36];
extern "C" extern void* __vt__9dCcD_Stts[11];
extern "C" extern void* __vt__12cCcD_CylAttr[25];
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
extern "C" extern void* __vt__9cCcD_Stts[8];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern void* __vt__10cCcD_GStts[3];
extern void* __vt__10dCcD_GStts[3];
extern void* __vt__8cM3dGCyl[3];
extern void* __vt__17dEvLib_callback_c[6];
extern void* __vt__8cM3dGAab[3];
extern void* __vt__16daObjHBombkoya_c[17];
//
// Declarations:
//
/* 80C1C734-80C1C738 -00001 0004+00 3/3 0/0 0/0 .data l_arcName */
static char* l_arcName = "H_Bombkoy";
@@ -137,11 +45,6 @@ int daObjHBombkoya_c::CreateHeap() {
return 1;
}
/* ############################################################################################## */
/* 80C1C5F8-80C1C5FC 000000 0004+00 2/2 0/0 0/0 .rodata @3699 */
SECTION_RODATA static f32 const lit_3699 = 200.0f;
COMPILER_STRIP_GATE(0x80C1C5F8, &lit_3699);
/* 80C1C738-80C1C77C 000004 0044+00 1/1 0/0 0/0 .data l_cc_cyl_src */
static dCcD_SrcCyl l_cc_cyl_src = {
{
@@ -163,8 +66,9 @@ int daObjHBombkoya_c::Create() {
fopAcM_SetMtx(this, NULL);
cM3dGAab aab(*mpBgW->GetBnd());
aab.GetMaxP()->y += 200.0f;
fopAcM_setCullSizeBox(this, aab.GetMinP()->x, aab.GetMinP()->y, aab.GetMinP()->z,
aab.GetMaxP()->x, aab.GetMaxP()->y + 200.0f, aab.GetMaxP()->z);
aab.GetMaxP()->x, aab.GetMaxP()->y, aab.GetMaxP()->z);
mTimer = 0;
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
@@ -176,20 +80,13 @@ int daObjHBombkoya_c::Create() {
mEmitterKeys[i] = 0;
}
mActive = false;
mActive = true;
mStts.Init(0xFF, 0, this);
mCyl.Set(l_cc_cyl_src);
mCyl.SetStts(&mStts);
return 1;
}
/* 80C1BB34-80C1BB7C 000334 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
// cM3dGAab::~cM3dGAab() {
extern "C" void __dt__8cM3dGAabFv() {
// NONMATCHING
}
/* 80C1BB7C-80C1BCA0 00037C 0124+00 1/1 0/0 0/0 .text
* setParticle__16daObjHBombkoya_cFPUsiPQ216daObjHBombkoya_c7PSetTblii */
bool daObjHBombkoya_c::setParticle(u16* i_particleIDs, int i_particleMax,
@@ -355,8 +252,6 @@ int daObjHBombkoya_c::Delete() {
return 1;
}
/* ############################################################################################## */
/* 80C1C1A8-80C1C2BC 0009A8 0114+00 1/0 0/0 0/0 .text
* daObjHBombkoya_create1st__FP16daObjHBombkoya_c */
// NONMATCHING - vtable issues, read more below
@@ -366,18 +261,6 @@ static int daObjHBombkoya_create1st(daObjHBombkoya_c* i_this) {
return i_this->create1st();
}
/* 80C1C2BC-80C1C304 000ABC 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGCylFv */
// cM3dGCyl::~cM3dGCyl() {
extern "C" void __dt__8cM3dGCylFv() {
// NONMATCHING
}
/* 80C1C304-80C1C360 000B04 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
// dCcD_GStts::~dCcD_GStts() {
extern "C" void __dt__10dCcD_GSttsFv() {
// NONMATCHING
}
/* 80C1C360-80C1C380 000B60 0020+00 1/0 0/0 0/0 .text
* daObjHBombkoya_MoveBGDelete__FP16daObjHBombkoya_c */
static int daObjHBombkoya_MoveBGDelete(daObjHBombkoya_c* i_this) {
@@ -396,61 +279,13 @@ static int daObjHBombkoya_MoveBGDraw(daObjHBombkoya_c* i_this) {
return i_this->MoveBGDraw();
}
/**
* Vtables for daObjHBombkoya_c mostly match, but __dt__17dEvLib_callback_cFv keeps getting
* generated above after daObjHBombkoya_create1st instead of down here. If that can be fixed,
* it should fix all vtable issues for this TU
*/
/* 80C1C3CC-80C1C414 000BCC 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
// cCcD_GStts::~cCcD_GStts() {
extern "C" void __dt__10cCcD_GSttsFv() {
// NONMATCHING
}
/* 80C1C414-80C1C45C 000C14 0048+00 1/0 0/0 0/0 .text __dt__17dEvLib_callback_cFv */
// dEvLib_callback_c::~dEvLib_callback_c() {
extern "C" void __dt__17dEvLib_callback_cFv() {
// NONMATCHING
}
/* 80C1C45C-80C1C464 000C5C 0008+00 2/0 0/0 0/0 .text eventStart__17dEvLib_callback_cFv
*/
// bool dEvLib_callback_c::eventStart()() {
extern "C" bool eventStart__17dEvLib_callback_cFv() {
return true;
}
/* 80C1C464-80C1C46C 000C64 0008+00 2/0 0/0 0/0 .text eventRun__17dEvLib_callback_cFv */
// bool dEvLib_callback_c::eventRun() {
extern "C" bool eventRun__17dEvLib_callback_cFv() {
return true;
}
/* 80C1C46C-80C1C474 000C6C 0008+00 2/0 0/0 0/0 .text eventEnd__17dEvLib_callback_cFv */
// bool dEvLib_callback_c::eventEnd() {
extern "C" bool eventEnd__17dEvLib_callback_cFv() {
return true;
}
/* 80C1C474-80C1C5E8 000C74 0174+00 2/1 0/0 0/0 .text __dt__16daObjHBombkoya_cFv */
// daObjHBombkoya_c::~daObjHBombkoya_c() {
extern "C" void __dt__16daObjHBombkoya_cFv() {
// NONMATCHING
}
/* 80C1C5E8-80C1C5F0 000DE8 0008+00 1/0 0/0 0/0 .text @1448@__dt__16daObjHBombkoya_cFv */
static void func_80C1C5E8() {
// NONMATCHING
}
/* 80C1C910-80C1C930 -00001 0020+00 1/0 0/0 0/0 .data daObjHBombkoya_METHODS */
static actor_method_class daObjHBombkoya_METHODS = {
(process_method_func)daObjHBombkoya_create1st__FP16daObjHBombkoya_c,
(process_method_func)daObjHBombkoya_MoveBGDelete__FP16daObjHBombkoya_c,
(process_method_func)daObjHBombkoya_MoveBGExecute__FP16daObjHBombkoya_c,
0,
(process_method_func)daObjHBombkoya_MoveBGDraw__FP16daObjHBombkoya_c,
(process_method_func)daObjHBombkoya_create1st,
(process_method_func)daObjHBombkoya_MoveBGDelete,
(process_method_func)daObjHBombkoya_MoveBGExecute,
NULL,
(process_method_func)daObjHBombkoya_MoveBGDraw,
};
/* 80C1C930-80C1C960 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_HBombkoya */
@@ -470,62 +305,3 @@ extern actor_process_profile_definition g_profile_Obj_HBombkoya = {
fopAc_ACTOR_e, // mActorType
fopAc_CULLBOX_CUSTOM_e, // cullType
};
/* 80C1C960-80C1C96C 00022C 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */
SECTION_DATA extern void* __vt__10cCcD_GStts[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__10cCcD_GSttsFv,
};
/* 80C1C96C-80C1C978 000238 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */
SECTION_DATA extern void* __vt__10dCcD_GStts[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__10dCcD_GSttsFv,
};
/* 80C1C978-80C1C984 000244 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGCyl */
SECTION_DATA extern void* __vt__8cM3dGCyl[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGCylFv,
};
/* 80C1C984-80C1C99C 000250 0018+00 3/3 0/0 0/0 .data __vt__17dEvLib_callback_c */
SECTION_DATA extern void* __vt__17dEvLib_callback_c[6] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17dEvLib_callback_cFv,
(void*)eventStart__17dEvLib_callback_cFv,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
};
/* 80C1C99C-80C1C9A8 000268 000C+00 4/4 0/0 0/0 .data __vt__8cM3dGAab */
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGAabFv,
};
/* 80C1C9A8-80C1C9EC 000274 0044+00 2/2 0/0 0/0 .data __vt__16daObjHBombkoya_c */
SECTION_DATA extern void* __vt__16daObjHBombkoya_c[17] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)CreateHeap__16daObjHBombkoya_cFv,
(void*)Create__16daObjHBombkoya_cFv,
(void*)Execute__16daObjHBombkoya_cFPPA3_A4_f,
(void*)Draw__16daObjHBombkoya_cFv,
(void*)Delete__16daObjHBombkoya_cFv,
(void*)IsDelete__16dBgS_MoveBgActorFv,
(void*)ToFore__16dBgS_MoveBgActorFv,
(void*)ToBack__16dBgS_MoveBgActorFv,
(void*)NULL,
(void*)NULL,
(void*)func_80C1C5E8,
(void*)eventStart__17dEvLib_callback_cFv,
(void*)eventRun__17dEvLib_callback_cFv,
(void*)eventEnd__17dEvLib_callback_cFv,
(void*)__dt__16daObjHBombkoya_cFv,
};