d_a_obj_cboard / finish f_op_actor / rels cleanup (#268)

* d_a_obj_cboard / finish f_op_actor / clean up some rel files

* rename some actor vars / remove asm

* progress
This commit is contained in:
TakaRikka
2023-02-03 20:24:26 -08:00
committed by GitHub
parent f030d04b14
commit 0f1c727725
85 changed files with 1038 additions and 2328 deletions
@@ -413,7 +413,6 @@ extern "C" void _restgpr_26();
extern "C" void _restgpr_27();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern u8 ZeroQuat[16];
extern "C" extern void* __vt__8dCcD_Sph[36];
extern "C" extern void* __vt__8dCcD_Cyl[36];
@@ -184,7 +184,6 @@ extern "C" void _savegpr_25();
extern "C" void _savegpr_29();
extern "C" void _restgpr_25();
extern "C" void _restgpr_29();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* __vt__4dBgW[65];
extern "C" u8 now__14mDoMtx_stack_c[48];
+149 -286
View File
@@ -1,335 +1,198 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_obj_cboard
//
/**
* d_a_obj_cboard.cpp
* Clear (Invisible) Wall
*/
#include "rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct request_of_phase_process_class {};
struct csXyz {};
struct cXyz {};
struct mDoMtx_stack_c {
/* 8000CD64 */ void transS(cXyz const&);
/* 8000CE70 */ void scaleM(cXyz const&);
/* 8000CF44 */ void ZXYrotM(csXyz const&);
static u8 now[48];
};
struct fopAc_ac_c {};
struct daObjBoard_c {
/* 8057B958 */ void initBaseMtx();
/* 8057B978 */ void setBaseMtx();
/* 8057B9C8 */ void Create();
/* 8057BA70 */ bool CreateHeap();
/* 8057BA78 */ void create1st();
/* 8057BB74 */ void Execute(f32 (**)[3][4]);
/* 8057BCC0 */ bool Draw();
/* 8057BCC8 */ void Delete();
};
struct dSv_info_c {
/* 80035360 */ void isSwitch(int, int) const;
};
struct dRes_control_c {
/* 8003C6B8 */ void getObjectResName2Index(char const*, char const*);
};
struct dBgW_Base {};
struct dBgW {};
struct cBgS_PolyInfo {};
struct dBgS_MoveBgActor {
/* 80078624 */ dBgS_MoveBgActor();
/* 800786B0 */ bool IsDelete();
/* 800786B8 */ bool ToFore();
/* 800786C0 */ bool ToBack();
/* 800787BC */ void MoveBGCreate(char const*, int,
void (*)(dBgW*, void*, cBgS_PolyInfo const&, bool, cXyz*,
csXyz*, csXyz*),
u32, f32 (*)[3][4]);
/* 800788DC */ void MoveBGDelete();
/* 80078950 */ void MoveBGExecute();
};
struct dBgS {
/* 80074A08 */ void Regist(dBgW_Base*, fopAc_ac_c*);
};
struct cBgW_BgId {
/* 802681D4 */ void ChkUsed() const;
};
struct cBgS {
/* 80074250 */ void Release(dBgW_Base*);
};
//
// Forward References:
//
extern "C" void initBaseMtx__12daObjBoard_cFv();
extern "C" void setBaseMtx__12daObjBoard_cFv();
extern "C" void Create__12daObjBoard_cFv();
extern "C" bool CreateHeap__12daObjBoard_cFv();
extern "C" void create1st__12daObjBoard_cFv();
extern "C" void Execute__12daObjBoard_cFPPA3_A4_f();
extern "C" bool Draw__12daObjBoard_cFv();
extern "C" void Delete__12daObjBoard_cFv();
extern "C" static void daObjBoard_create1st__FP12daObjBoard_c();
extern "C" static void daObjBoard_MoveBGDelete__FP12daObjBoard_c();
extern "C" static void daObjBoard_MoveBGExecute__FP12daObjBoard_c();
extern "C" static void daObjBoard_MoveBGDraw__FP12daObjBoard_c();
extern "C" extern char const* const d_a_obj_cboard__stringBase0;
//
// External References:
//
extern "C" void transS__14mDoMtx_stack_cFRC4cXyz();
extern "C" void scaleM__14mDoMtx_stack_cFRC4cXyz();
extern "C" void ZXYrotM__14mDoMtx_stack_cFRC5csXyz();
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 isSwitch__10dSv_info_cCFii();
extern "C" void getObjectResName2Index__14dRes_control_cFPCcPCc();
extern "C" void Release__4cBgSFP9dBgW_Base();
extern "C" void Regist__4dBgSFP9dBgW_BaseP10fopAc_ac_c();
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 ChkUsed__9cBgW_BgIdCFv();
extern "C" void PSMTXCopy();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
//
// Declarations:
//
/* 8057B958-8057B978 000078 0020+00 1/1 0/0 0/0 .text initBaseMtx__12daObjBoard_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::initBaseMtx() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/initBaseMtx__12daObjBoard_cFv.s"
void daObjBoard_c::initBaseMtx() {
setBaseMtx();
}
#pragma pop
/* 8057B978-8057B9C8 000098 0050+00 1/1 0/0 0/0 .text setBaseMtx__12daObjBoard_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::setBaseMtx() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/setBaseMtx__12daObjBoard_cFv.s"
void daObjBoard_c::setBaseMtx() {
mDoMtx_stack_c::transS(current.pos);
mDoMtx_stack_c::ZXYrotM(shape_angle);
mDoMtx_stack_c::scaleM(mScale);
PSMTXCopy(mDoMtx_stack_c::get(), field_0x56c);
}
#pragma pop
/* ############################################################################################## */
/* 8057BDD0-8057BDD4 000000 0004+00 1/1 0/0 0/0 .rodata @3636 */
SECTION_RODATA static f32 const lit_3636 = 10.0f;
COMPILER_STRIP_GATE(0x8057BDD0, &lit_3636);
/* 8057BDD4-8057BDD4 000004 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_8057BDD4 = "Obj_Board";
SECTION_DEAD static char const* const stringBase_8057BDDE = "ClearB00.dzb";
SECTION_DEAD static char const* const stringBase_8057BDEB = "ClearB01.dzb";
SECTION_DEAD static char const* const stringBase_8057BDF8 = "ClearB02.dzb";
SECTION_DEAD static char const* const stringBase_8057BE05 = "ClearB03.dzb";
SECTION_DEAD static char const* const stringBase_8057BE12 = "ClearB04.dzb";
#pragma pop
/* 8057BE20-8057BE24 -00001 0004+00 2/2 0/0 0/0 .data l_arcName */
SECTION_DATA static void* l_arcName = (void*)&d_a_obj_cboard__stringBase0;
static char* l_arcName = "Obj_Board";
/* 8057BE24-8057BE38 -00001 0014+00 1/1 0/0 0/0 .data l_dzbName */
SECTION_DATA static void* l_dzbName[5] = {
(void*)(((char*)&d_a_obj_cboard__stringBase0) + 0xA),
(void*)(((char*)&d_a_obj_cboard__stringBase0) + 0x17),
(void*)(((char*)&d_a_obj_cboard__stringBase0) + 0x24),
(void*)(((char*)&d_a_obj_cboard__stringBase0) + 0x31),
(void*)(((char*)&d_a_obj_cboard__stringBase0) + 0x3E),
static char* l_dzbName[5] = {
"ClearB00.dzb", "ClearB01.dzb", "ClearB02.dzb", "ClearB03.dzb", "ClearB04.dzb",
};
/* 8057BE38-8057BE50 000018 0018+00 1/1 0/0 0/0 .data l_cull_box */
SECTION_DATA static u8 l_cull_box[24] = {
0xC2, 0xC8, 0x00, 0x00, 0xC1, 0x20, 0x00, 0x00, 0xC2, 0xC8, 0x00, 0x00,
0x42, 0xC8, 0x00, 0x00, 0x41, 0x20, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00,
static Vec l_cull_box[2] = {
{-100.0f, -10.0f, -100.0f},
{100.0f, 10.0f, 100.0f},
};
/* 8057B9C8-8057BA70 0000E8 00A8+00 1/0 0/0 0/0 .text Create__12daObjBoard_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::Create() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/Create__12daObjBoard_cFv.s"
int daObjBoard_c::Create() {
if (getNameArg() == 1) {
mScale.x *= 10.0f;
mScale.z *= 10.0f;
}
initBaseMtx();
fopAcM_SetMtx(this, field_0x5a8);
fopAcM_setCullSizeBox(this, l_cull_box[0].x * mScale.x, l_cull_box[0].y,
l_cull_box[0].z * mScale.z, l_cull_box[1].x * mScale.x, l_cull_box[1].y,
l_cull_box[1].z * mScale.z);
return 1;
}
#pragma pop
/* 8057BA70-8057BA78 000190 0008+00 1/0 0/0 0/0 .text CreateHeap__12daObjBoard_cFv */
bool daObjBoard_c::CreateHeap() {
return true;
int daObjBoard_c::CreateHeap() {
return 1;
}
/* 8057BA78-8057BB74 000198 00FC+00 1/1 0/0 0/0 .text create1st__12daObjBoard_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::create1st() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/create1st__12daObjBoard_cFv.s"
}
#pragma pop
int daObjBoard_c::create1st() {
int ret = dComIfG_resLoad(&mPhase, l_arcName);
if (ret == cPhs_COMPLEATE_e) {
int dzb_no;
/* ############################################################################################## */
/* 8057BE50-8057BE90 -00001 0040+00 1/1 0/0 0/0 .data @3712 */
SECTION_DATA static void* lit_3712[16] = {
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0xB8),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x44),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0xB8),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x44),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0xB8),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x44),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0xB8),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x44),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0xB8),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x128),
(void*)(((char*)Execute__12daObjBoard_cFPPA3_A4_f) + 0x44),
};
switch (getArg0()) {
case 1:
case 2:
dzb_no = 1;
break;
case 3:
case 4:
dzb_no = 2;
break;
case 5:
case 6:
case 7:
case 8:
dzb_no = 4;
break;
default:
dzb_no = 0;
break;
}
int dzb_id = dComIfG_getObjctResName2Index(l_arcName, l_dzbName[dzb_no]);
ret = MoveBGCreate(l_arcName, dzb_id, NULL, 0x200, NULL);
if (ret == cPhs_ERROR_e) {
return ret;
}
}
return ret;
}
/* 8057BB74-8057BCC0 000294 014C+00 2/0 0/0 0/0 .text Execute__12daObjBoard_cFPPA3_A4_f
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::Execute(f32 (**param_0)[3][4]) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/Execute__12daObjBoard_cFPPA3_A4_f.s"
int daObjBoard_c::Execute(Mtx** param_0) {
switch (getArg0()) {
case 1:
case 3:
case 5:
case 7:
case 15:
if (i_fopAcM_isSwitch(this, getSwNo())) {
if (!field_0x568->ChkUsed()) {
dComIfG_Bgsp().Regist(field_0x568, this);
}
} else {
if (field_0x568->ChkUsed()) {
dComIfG_Bgsp().Release(field_0x568);
}
}
break;
case 0:
case 2:
case 4:
case 6:
case 8:
if (i_fopAcM_isSwitch(this, getSwNo())) {
if (field_0x568->ChkUsed()) {
dComIfG_Bgsp().Release(field_0x568);
}
} else {
if (!field_0x568->ChkUsed()) {
dComIfG_Bgsp().Regist(field_0x568, this);
}
}
break;
}
*param_0 = &field_0x56c;
return 1;
}
#pragma pop
/* 8057BCC0-8057BCC8 0003E0 0008+00 1/0 0/0 0/0 .text Draw__12daObjBoard_cFv */
bool daObjBoard_c::Draw() {
return true;
int daObjBoard_c::Draw() {
return 1;
}
/* 8057BCC8-8057BCFC 0003E8 0034+00 1/0 0/0 0/0 .text Delete__12daObjBoard_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daObjBoard_c::Delete() {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/Delete__12daObjBoard_cFv.s"
int daObjBoard_c::Delete() {
dComIfG_resDelete(&mPhase, l_arcName);
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 8057BE90-8057BEB0 -00001 0020+00 1/0 0/0 0/0 .data daObjBoard_METHODS */
SECTION_DATA static void* daObjBoard_METHODS[8] = {
(void*)daObjBoard_create1st__FP12daObjBoard_c,
(void*)daObjBoard_MoveBGDelete__FP12daObjBoard_c,
(void*)daObjBoard_MoveBGExecute__FP12daObjBoard_c,
(void*)NULL,
(void*)daObjBoard_MoveBGDraw__FP12daObjBoard_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 8057BEB0-8057BEE0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Cboard */
SECTION_DATA extern void* g_profile_Obj_Cboard[12] = {
(void*)0xFFFFFFFD, (void*)0x0003FFFD,
(void*)0x00630000, (void*)&g_fpcLf_Method,
(void*)0x000005D8, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x01C50000, (void*)&daObjBoard_METHODS,
(void*)0x00040000, (void*)0x000E0000,
};
/* 8057BEE0-8057BF08 0000C0 0028+00 1/1 0/0 0/0 .data __vt__12daObjBoard_c */
SECTION_DATA extern void* __vt__12daObjBoard_c[10] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)CreateHeap__12daObjBoard_cFv,
(void*)Create__12daObjBoard_cFv,
(void*)Execute__12daObjBoard_cFPPA3_A4_f,
(void*)Draw__12daObjBoard_cFv,
(void*)Delete__12daObjBoard_cFv,
(void*)IsDelete__16dBgS_MoveBgActorFv,
(void*)ToFore__16dBgS_MoveBgActorFv,
(void*)ToBack__16dBgS_MoveBgActorFv,
};
/* 8057BCFC-8057BD5C 00041C 0060+00 1/0 0/0 0/0 .text daObjBoard_create1st__FP12daObjBoard_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBoard_create1st(daObjBoard_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/daObjBoard_create1st__FP12daObjBoard_c.s"
static int daObjBoard_create1st(daObjBoard_c* i_this) {
if (!fopAcM_CheckCondition(i_this, 8)) {
new (i_this) daObjBoard_c();
fopAcM_OnCondition(i_this, 8);
}
return i_this->create1st();
}
#pragma pop
/* 8057BD5C-8057BD7C 00047C 0020+00 1/0 0/0 0/0 .text daObjBoard_MoveBGDelete__FP12daObjBoard_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBoard_MoveBGDelete(daObjBoard_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/daObjBoard_MoveBGDelete__FP12daObjBoard_c.s"
static int daObjBoard_MoveBGDelete(daObjBoard_c* i_this) {
return i_this->MoveBGDelete();
}
#pragma pop
/* 8057BD7C-8057BD9C 00049C 0020+00 1/0 0/0 0/0 .text daObjBoard_MoveBGExecute__FP12daObjBoard_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBoard_MoveBGExecute(daObjBoard_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/daObjBoard_MoveBGExecute__FP12daObjBoard_c.s"
static int daObjBoard_MoveBGExecute(daObjBoard_c* i_this) {
return i_this->MoveBGExecute();
}
#pragma pop
/* 8057BD9C-8057BDC8 0004BC 002C+00 1/0 0/0 0/0 .text daObjBoard_MoveBGDraw__FP12daObjBoard_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daObjBoard_MoveBGDraw(daObjBoard_c* param_0) {
nofralloc
#include "asm/rel/d/a/obj/d_a_obj_cboard/d_a_obj_cboard/daObjBoard_MoveBGDraw__FP12daObjBoard_c.s"
static int daObjBoard_MoveBGDraw(daObjBoard_c* i_this) {
return i_this->Draw();
}
#pragma pop
/* 8057BDD4-8057BDD4 000004 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
/* ############################################################################################## */
/* 8057BE90-8057BEB0 -00001 0020+00 1/0 0/0 0/0 .data daObjBoard_METHODS */
static actor_method_class daObjBoard_METHODS = {
(process_method_func)daObjBoard_create1st, (process_method_func)daObjBoard_MoveBGDelete,
(process_method_func)daObjBoard_MoveBGExecute, (process_method_func)NULL,
(process_method_func)daObjBoard_MoveBGDraw,
};
/* 8057BEB0-8057BEE0 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_Cboard */
extern actor_process_profile_definition g_profile_Obj_Cboard = {
-3,
3,
-3,
PROC_Obj_Cboard,
0,
&g_fpcLf_Method.mBase,
sizeof(daObjBoard_c),
0,
0,
&g_fopAc_Method.base,
0x01C5,
0,
0,
&daObjBoard_METHODS,
0x00040000,
0,
14,
0,
0,
};
@@ -6,8 +6,6 @@
#include "rel/d/a/obj/d_a_obj_enemy_create/d_a_obj_enemy_create.h"
#include "d/d_procname.h"
extern "C" extern leafdraw_method_class g_fopAc_Method;
/* 80BE3178-80BE3198 000078 0020+00 1/0 0/0 0/0 .text daObjE_CREATE_Create__FP10fopAc_ac_c */
static int daObjE_CREATE_Create(fopAc_ac_c* i_this) {
return static_cast<daObjE_CREATE_c*>(i_this)->create();
@@ -284,7 +282,7 @@ extern actor_process_profile_definition g_profile_Obj_E_CREATE = {
sizeof(daObjE_CREATE_c),
0,
0,
&g_fopAc_Method,
&g_fopAc_Method.base,
0x01CA,
0,
0,
+1 -2
View File
@@ -66,7 +66,6 @@ extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern leafdraw_method_class g_fopAc_Method;
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 sincosTable___5JMath[65536];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
@@ -450,7 +449,7 @@ extern actor_process_profile_definition g_profile_OBJ_WEB0 = {
sizeof(obj_web0_class),
0,
0,
&g_fopAc_Method,
&g_fopAc_Method.base,
0x002F,
0,
0,
+1 -3
View File
@@ -8,8 +8,6 @@
#include "SSystem/SComponent/c_math.h"
#include "d/d_procname.h"
extern "C" extern leafdraw_method_class g_fopAc_Method;
/* 80D353AC-80D353C4 0000EC 0018+00 1/1 0/0 0/0 .text __ct__16daObj_Web1_HIO_cFv */
daObj_Web1_HIO_c::daObj_Web1_HIO_c() {
field_0x4 = -1;
@@ -341,7 +339,7 @@ extern actor_process_profile_definition g_profile_OBJ_WEB1 = {
sizeof(obj_web1_class),
0,
0,
&g_fopAc_Method,
&g_fopAc_Method.base,
0x0030,
0,
0,
@@ -109,7 +109,6 @@ extern "C" void _savegpr_29();
extern "C" void _restgpr_27();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* __vt__8dCcD_Cyl[36];
extern "C" extern void* __vt__9dCcD_Stts[11];
extern "C" extern void* __vt__12cCcD_CylAttr[25];