d_name / d_s_name (#194)

* d_name

* scnname
This commit is contained in:
TakaRikka
2022-04-28 13:58:43 -07:00
committed by GitHub
parent 07c5152e5a
commit d91b1294bb
91 changed files with 1742 additions and 4182 deletions
+959 -1341
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -504,7 +504,7 @@ asm void CPaneMgr::getGlobalVtx(J2DPane* param_0, f32 (*param_1)[3][4], u8 param
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void CPaneMgr::getGlobalVtxCenter(J2DPane* param_0, bool param_1, s16 param_2) {
asm Vec CPaneMgr::getGlobalVtxCenter(J2DPane* param_0, bool param_1, s16 param_2) {
nofralloc
#include "asm/d/pane/d_pane_class/getGlobalVtxCenter__8CPaneMgrFP7J2DPanebs.s"
}
+313 -359
View File
@@ -4,52 +4,83 @@
//
#include "d/s/d_s_name.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "f_op/f_op_overlap_mng.h"
#include "m_Do/m_Do_audio.h"
#include "m_Do/m_Do_machine.h"
#include "m_Do/m_Do_mtx.h"
//
// Types:
//
struct scene_class {};
struct request_of_phase_process_class {};
struct mDoRst {
static u8 mResetData[4 + 4 /* padding */];
};
struct mDoMch_render_c {
static void* mRenderModeObj[1 + 1 /* padding */];
};
struct mDoGph_gInf_c {
static u8 mFader[4];
};
struct dVibration_c {
/* 8006F268 */ void Run();
/* 8006FF04 */ void Init();
};
struct dSv_player_get_item_c {
/* 80033E94 */ void offFirstBit(u8);
};
struct dSn_HIO_c {
class dSn_HIO_c {
public:
/* 8025878C */ dSn_HIO_c();
/* 802592DC */ ~dSn_HIO_c();
/* 802592DC */ virtual ~dSn_HIO_c() {}
/* 0x4 */ s8 field_0x4;
/* 0x5 */ u8 mFileSelWaitTime;
};
struct dScnName_camera_c {
/* 80259294 */ ~dScnName_camera_c();
class dScnName_camera_c : public camera_class {
public:
dScnName_camera_c() { field_0x22f = 84; }
/* 80259294 */ virtual ~dScnName_camera_c() {}
};
struct dScnName_c {
/* 802588A0 */ void create();
class dFile_select_c {
public:
/* 8018366C */ dFile_select_c(JKRArchive*);
/* 8018375C */ virtual ~dFile_select_c();
/* 801843CC */ void _create();
/* 801844FC */ void _move();
/* 8018DD38 */ void _draw();
bool getFadeFlag() { return mFadeFlag; }
int isDataNew(u8 i) { return mDataNew[i]; }
int isSelectEnd() { return mSelectEnd; }
u8 getSelectNum() { return mSelectNum; }
void setUseType(u8 type) { mUseType = type; }
private:
u8 field_0x4[0x254];
/* 0x0258 */ u8 mDataNew[3];
/* 0x025B */ u8 field_0x25b[0x265 - 0x25b];
/* 0x0265 */ u8 mSelectNum;
/* 0x0266 */ u8 field_0x266[0x270 - 0x266];
/* 0x0270 */ bool mSelectEnd;
/* 0x0271 */ u8 field_0x271[0x3b0 - 0x271];
/* 0x03B0 */ u8 mUseType;
/* 0x03B1 */ u8 field_0x3b1[0x2374 - 0x3b1];
/* 0x2374 */ bool mFadeFlag;
/* 0x2375 */ u8 field_0x2375[0x237c - 0x2375];
};
class dBrightCheck_c {
public:
/* 80192F10 */ dBrightCheck_c(JKRArchive*);
/* 80192F98 */ virtual ~dBrightCheck_c();
/* 801934D0 */ void _move();
/* 80193594 */ void _draw();
bool isEnd() { return mEnd; }
u8 field_0x4[0x15];
/* 0x19 */ bool mEnd;
};
class dScnName_c : public scene_class {
public:
dScnName_c() {}
/* 802588A0 */ s32 create();
/* 80258B2C */ void setView();
/* 80258BC8 */ void execute();
/* 80258C5C */ void draw();
/* 80258BC8 */ s32 execute();
/* 80258C5C */ s32 draw();
/* 80258CC8 */ ~dScnName_c();
/* 80258DD0 */ void FileSelectOpen();
/* 80258E34 */ void FileSelectMain();
@@ -58,69 +89,18 @@ struct dScnName_c {
/* 80258FD4 */ void brightCheckOpen();
/* 80259008 */ void brightCheck();
/* 802590F8 */ void changeGameScene();
};
struct dRes_info_c {};
struct JKRHeap {
/* 802CE438 */ void becomeCurrentHeap();
/* 802CE448 */ void destroy();
};
struct dRes_control_c {
/* 8003C078 */ void setRes(char const*, dRes_info_c*, int, char const*, u8, JKRHeap*);
/* 8003C160 */ void syncRes(char const*, dRes_info_c*, int);
/* 8003C194 */ void deleteRes(char const*, dRes_info_c*, int);
/* 8003C1E4 */ void getResInfo(char const*, dRes_info_c*, int);
};
struct dPa_control_c {
/* 8004C054 */ void cleanup();
};
struct dMeter2Info_c {
/* 8021DD5C */ void changeWater(u8);
};
struct JKRArchive {};
struct dFile_select_c {
/* 8018366C */ dFile_select_c(JKRArchive*);
/* 801843CC */ void _create();
/* 801844FC */ void _move();
/* 8018DD38 */ void _draw();
};
struct dDlst_window_c {
/* 80051AC0 */ void setViewPort(f32, f32, f32, f32, f32, f32);
/* 80051ADC */ void setScissor(f32, f32, f32, f32);
};
struct dBrightCheck_c {
/* 80192F10 */ dBrightCheck_c(JKRArchive*);
/* 801934D0 */ void _move();
/* 80193594 */ void _draw();
};
struct Z2SeqMgr {
/* 802AF010 */ void bgmStart(u32, u32, s32);
/* 802AF408 */ void bgmStop(u32, s32);
/* 802AFB94 */ void bgmStreamPrepare(u32);
/* 802AFE18 */ void bgmStreamPlay();
};
struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
struct Vec {};
struct JKRExpHeap {
/* 802CEE2C */ void create(u32, JKRHeap*, bool);
};
struct JFWDisplay {
static u8 sManager[4];
private:
/* 0x1CC */ JKRExpHeap* mHeap;
/* 0x1D0 */ JKRExpHeap* field_0x1d0;
/* 0x1D4 */ dScnName_camera_c mCamera;
/* 0x414 */ dFile_select_c* dFs_c;
/* 0x418 */ dBrightCheck_c* mBrightCheck;
/* 0x41C */ u8 field_0x41c;
/* 0x41D */ u8 field_0x41d;
/* 0x41E */ u8 field_0x41e;
/* 0x41F */ u8 field_0x41f;
/* 0x420 */ u8 field_0x420;
};
//
@@ -196,23 +176,14 @@ extern "C" void destroy__7JKRHeapFv();
extern "C" void* __nw__FUl();
extern "C" void __dl__FPv();
extern "C" void create__10JKRExpHeapFUlP7JKRHeapb();
extern "C" void OSGetTime();
extern "C" void PSMTXCopy();
extern "C" void PSMTXInverse();
extern "C" void C_MTXPerspective();
extern "C" void __register_global_object();
extern "C" void __ptmf_scall();
extern "C" void _savegpr_28();
extern "C" void _restgpr_28();
extern "C" extern void* g_fopScn_Method[5 + 1 /* padding */];
extern "C" extern void* g_fpcNd_Method[5 + 1 /* padding */];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_meter2_info[248];
extern "C" extern u8 j3dSys[284];
extern "C" void* mRenderModeObj__15mDoMch_render_c[1 + 1 /* padding */];
extern "C" extern u32 g_blackColor;
extern "C" u8 mFader__13mDoGph_gInf_c[4];
extern "C" extern u8 struct_80450BE4[4];
extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
extern "C" u8 sManager__10JFWDisplay[4];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
@@ -227,73 +198,14 @@ SECTION_DATA static u8 cNullVec__6Z2Calc[12] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 803C304C-803C3058 -00001 000C+00 0/1 0/0 0/0 .data @3942 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3942[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)FileSelectOpen__10dScnName_cFv,
};
#pragma pop
/* 803C3058-803C3064 -00001 000C+00 0/1 0/0 0/0 .data @3943 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3943[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)FileSelectMain__10dScnName_cFv,
};
#pragma pop
/* 803C3064-803C3070 -00001 000C+00 0/1 0/0 0/0 .data @3944 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3944[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)FileSelectClose__10dScnName_cFv,
};
#pragma pop
/* 803C3070-803C307C -00001 000C+00 0/1 0/0 0/0 .data @3945 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3945[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)brightCheckOpen__10dScnName_cFv,
};
#pragma pop
/* 803C307C-803C3088 -00001 000C+00 0/1 0/0 0/0 .data @3946 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3946[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)brightCheck__10dScnName_cFv,
};
#pragma pop
/* 803C3088-803C3094 -00001 000C+00 0/1 0/0 0/0 .data @3947 */
#pragma push
#pragma force_active on
SECTION_DATA static void* lit_3947[3] = {
(void*)NULL,
(void*)0xFFFFFFFF,
(void*)changeGameScene__10dScnName_cFv,
};
#pragma pop
/* 804510F0-804510F8 0005F0 0008+00 2/2 0/0 0/0 .sbss g_snHIO */
static dSn_HIO_c g_snHIO;
/* 803C3094-803C30DC 0201B4 0048+00 1/2 0/0 0/0 .data MainProc */
SECTION_DATA static u8 MainProc[72] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
typedef void (dScnName_c::*mainProcFunc)(void);
SECTION_DATA static mainProcFunc MainProc[6] = {
&dScnName_c::FileSelectOpen, &dScnName_c::FileSelectMain, &dScnName_c::FileSelectClose,
&dScnName_c::brightCheckOpen, &dScnName_c::brightCheck, &dScnName_c::changeGameScene,
};
/* 803C30DC-803C30F0 -00001 0014+00 2/0 0/0 0/0 .data l_dScnName_Method */
@@ -331,74 +243,39 @@ SECTION_DATA extern void* g_profile_NAMEEX_SCENE[10] = {
(void*)NULL,
};
/* 803C3140-803C314C 020260 000C+00 3/3 0/0 0/0 .data __vt__17dScnName_camera_c */
SECTION_DATA extern void* __vt__17dScnName_camera_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17dScnName_camera_cFv,
};
/* 803C314C-803C3158 02026C 000C+00 2/2 0/0 0/0 .data __vt__9dSn_HIO_c */
SECTION_DATA extern void* __vt__9dSn_HIO_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__9dSn_HIO_cFv,
};
/* 8025878C-802587A4 2530CC 0018+00 1/1 0/0 0/0 .text __ct__9dSn_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dSn_HIO_c::dSn_HIO_c() {
nofralloc
#include "asm/d/s/d_s_name/__ct__9dSn_HIO_cFv.s"
dSn_HIO_c::dSn_HIO_c() {
mFileSelWaitTime = 15;
}
#pragma pop
/* ############################################################################################## */
/* 8039A2A8-8039A2A8 026908 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_8039A2A8 = "/res/Object/";
#pragma pop
/* 802587A4-80258820 2530E4 007C+00 1/0 0/0 0/0 .text phase_1__FPc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void phase_1(char* param_0) {
nofralloc
#include "asm/d/s/d_s_name/phase_1__FPc.s"
static s32 phase_1(char* resName) {
mDoAud_bgmStart(-1);
if (dComIfG_setObjectRes(resName, 0, NULL) == 0) {
return 5;
}
return 2;
}
#pragma pop
/* 80258820-80258878 253160 0058+00 1/0 0/0 0/0 .text phase_2__FPc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void phase_2(char* param_0) {
nofralloc
#include "asm/d/s/d_s_name/phase_2__FPc.s"
}
#pragma pop
static s32 phase_2(char* resName) {
int syncStatus = dComIfG_syncObjectRes(resName);
/* ############################################################################################## */
/* 80450758-80450760 -00001 0008+00 1/1 0/0 0/0 .sdata l_method$3851 */
SECTION_SDATA static void* l_method[2] = {
(void*)phase_1__FPc,
(void*)phase_2__FPc,
};
if (syncStatus < 0) {
return 5;
} else {
return syncStatus > 0 ? 0 : 4;
}
}
/* 80258878-802588A0 2531B8 0028+00 1/1 0/0 0/0 .text
* resLoad__FP30request_of_phase_process_classPc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void resLoad(request_of_phase_process_class* param_0, char* param_1) {
nofralloc
#include "asm/d/s/d_s_name/resLoad__FP30request_of_phase_process_classPc.s"
static s32 resLoad(request_of_phase_process_class* i_phase, char* param_1) {
static s32 (*l_method[2])(char*) = {phase_1, phase_2};
return dComLbG_PhaseHandler(i_phase, (request_of_phase_process_fn)l_method, param_1);
}
#pragma pop
/* ############################################################################################## */
/* 8039A2A8-8039A2A8 026908 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
@@ -407,9 +284,6 @@ static asm void resLoad(request_of_phase_process_class* param_0, char* param_1)
SECTION_DEAD static char const* const stringBase_8039A2B5 = "fileSel";
#pragma pop
/* 804510F0-804510F8 0005F0 0008+00 2/2 0/0 0/0 .sbss g_snHIO */
static u8 g_snHIO[8];
/* 80454EF8-80454EFC 0034F8 0004+00 2/2 0/0 0/0 .sdata2 @3923 */
SECTION_SDATA2 static u8 lit_3923[4] = {
0x00,
@@ -437,76 +311,172 @@ SECTION_SDATA2 static f32 lit_3928 = -1000.0f;
SECTION_SDATA2 static f64 lit_3930 = 4503599627370496.0 /* cast u32 to float */;
/* 802588A0-80258B2C 2531E0 028C+00 1/1 0/0 0/0 .text create__10dScnName_cFv */
#ifdef NONMATCHING
s32 dScnName_c::create() {
int loadStat = resLoad(&field_0x1c4, "fileSel");
if (loadStat == 4) {
mHeap = JKRExpHeap::create(0x180000, mDoExt_getGameHeap(), false);
JKRExpHeap* heap = mHeap;
mDoExt_setCurrentHeap(heap);
field_0x1d0 = heap;
dRes_info_c* res = dComIfG_getObjectResInfo("fileSel");
dFs_c = new dFile_select_c(res->getArchive());
dFs_c->_create();
if (fpcM_GetName(this) == PROC_NAME_SCENE) {
dFs_c->setUseType(0);
dComIfGs_setNoFile(0);
}
mBrightCheck = new dBrightCheck_c(res->getArchive());
field_0x420 = 0;
g_snHIO.field_0x4 = -1;
field_0x1d0->becomeCurrentHeap();
dComIfGp_setWindowNum(1);
dComIfGp_setWindow(0, 0.0f, 0.0f, mDoMch_render_c::getFbWidth(),
mDoMch_render_c::getEfbHeight(), 0.0f, 1.0f, 0, 2);
dComIfGp_setCamera(0, &mCamera);
// dDlst_window_c* window = &g_dComIfG_gameInfo.play.mWindow[0];
/* fopCamM_SetNear(&mCamera, 1.0f);
fopCamM_SetFar(&mCamera, 100000.0f);
fopCamM_SetFovy(&mCamera, 45.0f);
fopCamM_SetAspect(&mCamera, mDoGph_gInf_c::getWidthF() / mDoGph_gInf_c::getHeightF());
fopCamM_SetEye(&mCamera, 0.0f, 0.0f, -1000.0f);
fopCamM_SetCenter(&mCamera, 0.0f, 0.0f, 0.0f);
fopCamM_SetBank(&mCamera, 0); */
mCamera.mNear = 1.0f;
mCamera.mFar = 100000.0f;
mCamera.mFovy = 45.0f;
mCamera.mAspect = mDoGph_gInf_c::getWidthF() / mDoGph_gInf_c::getHeightF();
mCamera.field_0xd8.mEye.set(0.0f, 0.0f, -1000.0f);
mCamera.field_0xd8.mCenter.set(0.0f, 0.0f, 0.0f);
mCamera.mBank = 0;
dComIfGp_setPlayer(0, NULL);
dComIfGd_setWindow(g_dComIfG_gameInfo.play.mWindow);
dComIfGd_setViewport(g_dComIfG_gameInfo.play.mWindow->getViewPort());
dComIfGd_setView(&mCamera);
mDoGph_gInf_c::offAutoForcus();
setView();
dKy_setLight_init();
field_0x41e = g_snHIO.mFileSelWaitTime;
field_0x41c = 0;
field_0x41d = 0;
mDoGph_gInf_c::setTickRate((OS_BUS_CLOCK / 4) / 30);
dComIfGp_getVibration().Init();
}
return loadStat;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::create() {
asm s32 dScnName_c::create() {
nofralloc
#include "asm/d/s/d_s_name/create__10dScnName_cFv.s"
}
#pragma pop
#endif
/* 80258B2C-80258BC8 25346C 009C+00 1/1 0/0 0/0 .text setView__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::setView() {
nofralloc
#include "asm/d/s/d_s_name/setView__10dScnName_cFv.s"
void dScnName_c::setView() {
C_MTXPerspective(mCamera.field_0x100, mCamera.mFovy, mCamera.mAspect, mCamera.mNear,
mCamera.mFar);
mDoMtx_lookAt(mCamera.field_0x140, &mCamera.field_0xd8.mEye, &mCamera.field_0xd8.mCenter,
mCamera.mBank);
PSMTXInverse(mCamera.field_0x140, mCamera.field_0x170);
PSMTXCopy(mCamera.field_0x140, mCamera.field_0x1e0);
f32 tmp_0 = FLOAT_LABEL(lit_3923);
mCamera.field_0x1e0[0][3] = tmp_0;
mCamera.field_0x1e0[1][3] = tmp_0;
mCamera.field_0x1e0[2][3] = tmp_0;
PSMTXCopy(mCamera.field_0x140, j3dSys.mViewMtx);
mDoMtx_concatProjView(mCamera.field_0x100, mCamera.field_0x140, mCamera.field_0x1a0);
}
#pragma pop
/* 80258BC8-80258C5C 253508 0094+00 1/1 0/0 0/0 .text execute__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::execute() {
nofralloc
#include "asm/d/s/d_s_name/execute__10dScnName_cFv.s"
s32 dScnName_c::execute() {
if (fopOvlpM_IsPeek() == 0) {
dComIfG_resetToOpening(this);
}
if (mDoRst::isReset() && field_0x420 == 0 && !dFs_c->getFadeFlag()) {
return 1;
}
(this->*MainProc[field_0x41d])();
return 1;
}
#pragma pop
/* 80258C5C-80258CC8 25359C 006C+00 1/1 0/0 0/0 .text draw__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::draw() {
nofralloc
#include "asm/d/s/d_s_name/draw__10dScnName_cFv.s"
s32 dScnName_c::draw() {
dComIfGp_getVibration().Run();
switch (field_0x41c) {
case 0:
dFs_c->_draw();
break;
case 1:
mBrightCheck->_draw();
break;
}
return 1;
}
#pragma pop
/* 80258CC8-80258DD0 253608 0108+00 1/1 0/0 0/0 .text __dt__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dScnName_c::~dScnName_c() {
nofralloc
#include "asm/d/s/d_s_name/__dt__10dScnName_cFv.s"
dScnName_c::~dScnName_c() {
delete dFs_c;
delete mBrightCheck;
dComIfG_deleteObjectResMain("fileSel");
mHeap->destroy();
for (int i = 0; i < 4; i++) {
dMeter2Info_changeWater(i + SLOT_11);
}
dComIfGp_setWindowNum(0);
dComIfGd_setView(NULL);
}
#pragma pop
/* 80258DD0-80258E34 253710 0064+00 1/0 0/0 0/0 .text FileSelectOpen__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::FileSelectOpen() {
nofralloc
#include "asm/d/s/d_s_name/FileSelectOpen__10dScnName_cFv.s"
void dScnName_c::FileSelectOpen() {
if (field_0x41e != 0) {
field_0x41e--;
} else {
mDoAud_bgmStreamPrepare(0x2000000);
mDoAud_bgmStreamPlay();
field_0x41d = 1;
}
}
#pragma pop
/* 80258E34-80258E78 253774 0044+00 1/0 0/0 0/0 .text FileSelectMain__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::FileSelectMain() {
nofralloc
#include "asm/d/s/d_s_name/FileSelectMain__10dScnName_cFv.s"
void dScnName_c::FileSelectMain() {
dFs_c->_move();
if (fpcM_GetName(this) == PROC_NAME_SCENE) {
FileSelectMainNormal();
}
}
#pragma pop
/* 80258E78-80258F20 2537B8 00A8+00 1/1 0/0 0/0 .text FileSelectMainNormal__10dScnName_cFv */
#ifdef NONMATCHING
void dScnName_c::FileSelectMainNormal() {
if (dFs_c->isSelectEnd() == true) {
field_0x41e = 15;
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
mDoGph_gInf_c::startFadeOut(15);
field_0x41d = 2;
field_0x420 = 1;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -515,8 +485,23 @@ asm void dScnName_c::FileSelectMainNormal() {
#include "asm/d/s/d_s_name/FileSelectMainNormal__10dScnName_cFv.s"
}
#pragma pop
#endif
/* 80258F20-80258FD4 253860 00B4+00 1/0 0/0 0/0 .text FileSelectClose__10dScnName_cFv */
#ifdef NONMATCHING
void dScnName_c::FileSelectClose() {
field_0x41e--;
if (field_0x41e == 0) {
field_0x41d = 3;
field_0x41e = 15;
field_0x41c = 1;
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
mDoGph_gInf_c::startFadeIn(15);
field_0x420 = 0;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -525,26 +510,38 @@ asm void dScnName_c::FileSelectClose() {
#include "asm/d/s/d_s_name/FileSelectClose__10dScnName_cFv.s"
}
#pragma pop
#endif
/* 80258FD4-80259008 253914 0034+00 1/0 0/0 0/0 .text brightCheckOpen__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::brightCheckOpen() {
nofralloc
#include "asm/d/s/d_s_name/brightCheckOpen__10dScnName_cFv.s"
void dScnName_c::brightCheckOpen() {
if (!mDoRst::isReset()) {
field_0x41e--;
if (field_0x41e == 0) {
field_0x41d = 4;
}
}
}
#pragma pop
/* 80259008-802590F8 253948 00F0+00 1/0 0/0 0/0 .text brightCheck__10dScnName_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dScnName_c::brightCheck() {
nofralloc
#include "asm/d/s/d_s_name/brightCheck__10dScnName_cFv.s"
void dScnName_c::brightCheck() {
mBrightCheck->_move();
if (mBrightCheck->isEnd()) {
dComIfGs_setSaveTotalTime(dComIfGs_getTotalTime());
dComIfGs_setSaveStartTime(OSGetTime());
mDoAud_bgmStop(0x2D);
field_0x41f = 0;
field_0x41d = 5;
dComIfGs_offItemFirstBit(GREEN_RUPEE);
dComIfGs_offItemFirstBit(BLUE_RUPEE);
dComIfGs_offItemFirstBit(YELLOW_RUPEE);
dComIfGs_offItemFirstBit(RED_RUPEE);
dComIfGs_offItemFirstBit(PURPLE_RUPEE);
dComIfGs_offItemFirstBit(ORANGE_RUPEE);
dComIfGs_offItemFirstBit(SILVER_RUPEE);
}
}
#pragma pop
/* ############################################################################################## */
/* 8039A2A8-8039A2A8 026908 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
@@ -556,6 +553,23 @@ SECTION_DEAD static char const* const pad_8039A2C5 = "\0\0";
#pragma pop
/* 802590F8-802591C0 253A38 00C8+00 1/0 0/0 0/0 .text changeGameScene__10dScnName_cFv */
// weird comparison in changeReq
#ifdef NONMATCHING
void dScnName_c::changeGameScene() {
if (!mDoRst::isReset() && !fopOvlpM_IsPeek()) {
dComIfGs_gameStart();
fopScnM_ChangeReq(this, field_0x41f == 0 ? PROC_PLAY_SCENE : 10, 0, 5);
dComIfGp_offEnableNextStage();
if (dFs_c->isDataNew(dFs_c->getSelectNum())) {
dComIfGp_setNextStage("F_SP108", 21, 1, 13);
}
dKy_clear_game_init();
dComIfGs_resetDan();
dComIfGs_setRestartRoomParam(0);
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
@@ -564,95 +578,35 @@ asm void dScnName_c::changeGameScene() {
#include "asm/d/s/d_s_name/changeGameScene__10dScnName_cFv.s"
}
#pragma pop
#endif
/* 802591C0-802591E0 253B00 0020+00 1/0 0/0 0/0 .text dScnName_Draw__FP10dScnName_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dScnName_Draw(dScnName_c* param_0) {
nofralloc
#include "asm/d/s/d_s_name/dScnName_Draw__FP10dScnName_c.s"
static void dScnName_Draw(dScnName_c* scn) {
scn->draw();
}
#pragma pop
/* 802591E0-80259200 253B20 0020+00 1/0 0/0 0/0 .text dScnName_Execute__FP10dScnName_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dScnName_Execute(dScnName_c* param_0) {
nofralloc
#include "asm/d/s/d_s_name/dScnName_Execute__FP10dScnName_c.s"
static void dScnName_Execute(dScnName_c* scn) {
scn->execute();
}
#pragma pop
/* 80259200-80259230 253B40 0030+00 1/0 0/0 0/0 .text dScnName_IsDelete__FP10dScnName_c
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dScnName_IsDelete(dScnName_c* param_0) {
nofralloc
#include "asm/d/s/d_s_name/dScnName_IsDelete__FP10dScnName_c.s"
static s32 dScnName_IsDelete(dScnName_c*) {
dComIfGp_particle_cleanup();
return 1;
}
#pragma pop
/* 80259230-80259258 253B70 0028+00 1/0 0/0 0/0 .text dScnName_Delete__FP10dScnName_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dScnName_Delete(dScnName_c* param_0) {
nofralloc
#include "asm/d/s/d_s_name/dScnName_Delete__FP10dScnName_c.s"
static s32 dScnName_Delete(dScnName_c* scn) {
scn->~dScnName_c();
return 1;
}
#pragma pop
/* 80259258-80259294 253B98 003C+00 1/0 0/0 0/0 .text dScnName_Create__FP11scene_class */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dScnName_Create(scene_class* param_0) {
nofralloc
#include "asm/d/s/d_s_name/dScnName_Create__FP11scene_class.s"
static void dScnName_Create(scene_class* scn) {
new (scn) dScnName_c();
static_cast<dScnName_c*>(scn)->create();
}
#pragma pop
/* 80259294-802592DC 253BD4 0048+00 1/0 0/0 0/0 .text __dt__17dScnName_camera_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dScnName_camera_c::~dScnName_camera_c() {
nofralloc
#include "asm/d/s/d_s_name/__dt__17dScnName_camera_cFv.s"
}
#pragma pop
/* 802592DC-80259324 253C1C 0048+00 2/1 0/0 0/0 .text __dt__9dSn_HIO_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dSn_HIO_c::~dSn_HIO_c() {
nofralloc
#include "asm/d/s/d_s_name/__dt__9dSn_HIO_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80430768-80430778 05D488 000C+04 1/1 0/0 0/0 .bss @3822 */
static u8 lit_3822[12 + 4 /* padding */];
/* 80259324-80259400 253C64 00DC+00 0/0 1/0 0/0 .text __sinit_d_s_name_cpp */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __sinit_d_s_name_cpp() {
nofralloc
#include "asm/d/s/d_s_name/__sinit_d_s_name_cpp.s"
}
#pragma pop
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80259324, __sinit_d_s_name_cpp);
#pragma pop
/* 8039A2A8-8039A2A8 026908 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
+1 -1
View File
@@ -18,7 +18,7 @@ static u32 l_fopCamM_id[4];
/* 8001E308-8001E310 018C48 0008+00 0/0 12/12 2/2 .text fopCamM_GetParam__FP12camera_class */
u32 fopCamM_GetParam(camera_class* pCamera) {
return pCamera->parameter;
return pCamera->mBase.mParameters;
}
/* 8001E310-8001E374 018C50 0064+00 0/0 1/1 0/0 .text fopCamM_Create__FisPv */
+4 -4
View File
@@ -34,23 +34,23 @@ extern "C" void fpcMtd_Create__FP20process_method_classPv();
/* 8001F1A8-8001F1D0 019AE8 0028+00 1/0 0/0 0/0 .text fopVw_Draw__FP10view_class */
void fopVw_Draw(view_class* pView) {
fpcLf_DrawMethod((leafdraw_method_class*)pView->pmProcessMtd, pView);
fpcLf_DrawMethod(pView->mpLeafdrawMtd, pView);
}
/* 8001F1D0-8001F1F8 019B10 0028+00 1/0 0/0 0/0 .text fopVw_Execute__FP10view_class */
void fopVw_Execute(view_class* pView) {
fpcMtd_Execute(pView->pmProcessMtd, pView);
fpcMtd_Execute((process_method_class*)pView->mpLeafdrawMtd, pView);
}
/* 8001F1F8-8001F220 019B38 0028+00 1/0 0/0 0/0 .text fopVw_IsDelete__FPv */
s32 fopVw_IsDelete(void* param_1) {
view_class* pView = (view_class*)param_1;
return fpcMtd_IsDelete(pView->pmProcessMtd, pView);
return fpcMtd_IsDelete((process_method_class*)pView->mpLeafdrawMtd, pView);
}
/* 8001F220-8001F248 019B60 0028+00 1/0 0/0 0/0 .text fopVw_Delete__FP10view_class */
s32 fopVw_Delete(view_class* pView) {
return fpcMtd_Delete(pView->pmProcessMtd, pView);
return fpcMtd_Delete((process_method_class*)pView->mpLeafdrawMtd, pView);
}
/* 8001F248-8001F284 019B88 003C+00 1/0 0/0 0/0 .text fopVw_Create__FPv */
+1 -1
View File
@@ -239,7 +239,7 @@ static bool data_80450BE5;
u8 data_80450BE6;
static bool data_80450BE7;
bool data_80450BE7;
#pragma pop
/* 80007E44-80007F90 002784 014C+00 1/1 0/0 0/0 .text create__13mDoGph_gInf_cFv */