From d0b62fd83f6aa9d1f33e3f59c929cec9d4bfd37a Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Fri, 27 Jan 2023 15:12:42 -0800 Subject: [PATCH 1/4] d_door_param2 / d_cam_param / d_gameover + some misc cleanup --- include/SSystem/SComponent/c_angle.h | 32 + include/d/com/d_com_inf_game.h | 22 +- include/d/d_cam_param.h | 72 +- include/d/d_door_param2.h | 24 +- include/d/d_drawlist.h | 6 +- include/d/d_gameover.h | 92 +- include/d/d_kantera_icon_meter.h | 2 + include/d/d_stage.h | 14 + include/d/d_timer.h | 154 +-- include/d/menu/d_menu_save.h | 1 + include/d/menu/d_menu_window.h | 1 + include/d/meter/d_meter2.h | 1 + include/d/meter/d_meter2_draw.h | 45 +- include/d/meter/d_meter2_info.h | 10 + include/d/msg/d_msg_class.h | 3 +- include/d/msg/d_msg_object.h | 1 + include/d/pane/d_pane_class.h | 5 +- include/d/save/d_save.h | 6 + include/f_op/f_op_msg_mng.h | 13 +- include/m_Do/m_Do_graphic.h | 3 + libs/SSystem/SComponent/c_angle.cpp | 182 ++- src/d/d_cam_param.cpp | 540 ++++----- src/d/d_door_param2.cpp | 230 +--- src/d/d_drawlist.cpp | 1683 +++----------------------- src/d/d_gameover.cpp | 766 +++++++----- src/d/d_timer.cpp | 150 +-- src/d/meter/d_meter2.cpp | 4 + src/d/meter/d_meter2_draw.cpp | 361 +++++- 28 files changed, 1651 insertions(+), 2772 deletions(-) diff --git a/include/SSystem/SComponent/c_angle.h b/include/SSystem/SComponent/c_angle.h index b54d8f7585..d87b220fb7 100644 --- a/include/SSystem/SComponent/c_angle.h +++ b/include/SSystem/SComponent/c_angle.h @@ -52,12 +52,44 @@ public: cSAngle operator+(short, const cSAngle&); cSAngle operator-(short, const cSAngle&); +struct cAngle { + static f32 Radian_to_Degree(f32 rad) { return rad * 57.2957763671875f; } + static f32 Degree_to_Radian(f32 deg) { return deg * 0.017453292f; } + static s16 Degree_to_SAngle(f32 deg) { return deg * 182.04444885253906f; } + static f32 SAngle_to_Degree(s16 angle) { return (360.0f / 65536.0f) * angle; } + static f32 SAngle_to_Radian(s16 angle) { return 9.58738E-5f * angle; } + static f32 SAngle_to_Normal(s16 angle) { return 3.0517578E-5f * angle; } + static s16 Radian_to_SAngle(f32 rad) { return rad * 10430.378f; } + + /* Converts Radian value into Degree value */ + static f32 r2d(f32 r) { return Radian_to_Degree(r); } + + /* Converts Degree value to s16 angle */ + static s16 d2s(f32 d) { return Degree_to_SAngle(d); } + + template + static T Adjust(T f1, T f2, T f3); +}; + +template +T cAngle::Adjust(T f1, T f2, T f3) { + while (f1 >= f3) { + f1 -= f3 - f2; + } + while (f1 < f2) { + f1 += f3 - f2; + } + return f1; +} + class cDegree { private: float mDegree; public: cDegree(float); + ~cDegree() {} + cDegree& Formal(void); void Val(float); float Radian(void) const; diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 1efc9d1853..84ba45a17f 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -434,7 +434,9 @@ public: } char* getLastPlayStageName() { return mLastPlayStageName; } + void setGameoverStatus(u8 status) { mGameoverStatus = status; } u8 getGameoverStatus() { return mGameoverStatus; } + u8 getMesgStatus() { return mMesgStatus; } public: /* 0x00000 */ dBgS mBgs; @@ -1532,6 +1534,10 @@ inline int dComIfGs_createZone(int roomNo) { return g_dComIfG_gameInfo.info.createZone(roomNo); } +inline void dComIfGs_addDeathCount() { + g_dComIfG_gameInfo.info.getPlayer().getPlayerInfo().addDeathCount(); +} + void dComIfGp_setSelectItem(int index); s32 dComIfGp_offHeapLockFlag(int flag); void dComIfGp_createSubExpHeap2D(); @@ -1834,6 +1840,10 @@ inline u8 dComIfGp_getGameoverStatus() { return g_dComIfG_gameInfo.play.getGameoverStatus(); } +inline void dComIfGp_setGameoverStatus(u8 i_status) { + return g_dComIfG_gameInfo.play.setGameoverStatus(i_status); +} + inline u32 dComIfGp_getNowVibration() { return g_dComIfG_gameInfo.play.getNowVibration(); } @@ -2359,6 +2369,14 @@ inline void i_dComIfGp_setHitMark(u16 i_hitmark, fopAc_ac_c* param_1, const cXyz i_atType); } +inline JKRArchive* dComIfGp_getFmapResArchive() { + return g_dComIfG_gameInfo.play.getFmapResArchive(); +} + +inline u8 dComIfGp_getMesgStatus() { + return g_dComIfG_gameInfo.play.getMesgStatus(); +} + inline s32 dComIfGp_roomControl_getStayNo() { return dStage_roomControl_c::getStayNo(); } @@ -2871,8 +2889,4 @@ inline daAlink_c* daAlink_getAlinkActorClass() { return (daAlink_c*)g_dComIfG_gameInfo.play.getPlayerPtr(LINK_PTR); } -inline JKRArchive* dComIfGp_getFmapResArchive() { - return g_dComIfG_gameInfo.play.getFmapResArchive(); -} - #endif /* D_COM_D_COM_INF_GAME_H */ diff --git a/include/d/d_cam_param.h b/include/d/d_cam_param.h index 96ea1d4925..3d23cd2e0d 100644 --- a/include/d/d_cam_param.h +++ b/include/d/d_cam_param.h @@ -5,11 +5,11 @@ #include "SSystem/SComponent/c_xyz.h" struct dCamMath { - /* 8008813C */ void rationalBezierRatio(f32, f32); - /* 80088284 */ void zoomFovy(f32, f32); - /* 8008831C */ void xyzRotateX(cXyz&, cSAngle); - /* 80088384 */ void xyzRotateY(cXyz&, cSAngle); - /* 800883EC */ void xyzHorizontalDistance(cXyz&, cXyz&); + /* 8008813C */ static f32 rationalBezierRatio(f32, f32); + /* 80088284 */ static f32 zoomFovy(f32, f32); + /* 8008831C */ static cXyz xyzRotateX(cXyz&, cSAngle); + /* 80088384 */ static cXyz xyzRotateY(cXyz&, cSAngle); + /* 800883EC */ static f32 xyzHorizontalDistance(cXyz&, cXyz&); }; class dCstick_c { @@ -29,31 +29,43 @@ class dCamBGChk_c { public: /* 80088464 */ dCamBGChk_c(); - /* 0x00 */ f32 field_0x0; - /* 0x04 */ f32 field_0x4; - /* 0x08 */ f32 field_0x8; - /* 0x0C */ f32 field_0xc; - /* 0x10 */ f32 field_0x10; - /* 0x14 */ f32 field_0x14; - /* 0x18 */ f32 field_0x18; - /* 0x1C */ f32 field_0x1c; - /* 0x20 */ f32 field_0x20; - /* 0x24 */ f32 field_0x24; - /* 0x28 */ f32 field_0x28; + // name is a guess for now + struct ChkInfo { + /* 0x0 */ f32 mDistance; + /* 0x4 */ f32 mChkAngle; + /* 0x8 */ f32 mWeightH; + /* 0xC */ f32 mWeightL; + }; // Size: 0x10 + + /* 0x00 */ f32 mFloorMargin; + /* 0x04 */ ChkInfo mChkInfo[2]; + /* 0x24 */ f32 mFwdBackMargin; + /* 0x28 */ f32 mFwdCushion; /* 0x2C */ f32 field_0x2c; - /* 0x30 */ f32 field_0x30; - /* 0x34 */ f32 field_0x34; - /* 0x38 */ f32 field_0x38; - /* 0x3C */ f32 field_0x3c; - /* 0x40 */ f32 field_0x40; - /* 0x44 */ f32 field_0x44; + /* 0x30 */ f32 mGazeBackMargin; + /* 0x34 */ f32 mCornerCushion; + /* 0x38 */ f32 mWallCushion; + /* 0x3C */ f32 mWallUpDistance; + /* 0x40 */ f32 mWallBackCushion; + /* 0x44 */ f32 mCornerAngleMax; +}; + +struct dCamStyleData { + struct StyleData { + /* 0x0 */ u32 field_0x0; + /* 0x4 */ u8 field_0x4[0x78 - 0x4]; + }; // Size: 0x78 + + /* 0x0 */ u8 field_0x0[4]; + /* 0x4 */ int mStyleNum; + /* 0x8 */ StyleData* mStyleData; }; class dCamParam_c { public: /* 800884F0 */ dCamParam_c(s32); - /* 800885D4 */ void Change(s32); - /* 80088620 */ void SearchStyle(u32); + /* 800885D4 */ int Change(s32); + /* 80088620 */ int SearchStyle(u32); /* 80182C60 */ void Arg2(s16); /* 80182C3C */ void Arg2(); /* 80182C48 */ void Arg1(); @@ -70,9 +82,9 @@ public: /* 0x01 */ u8 mMapToolArg0; /* 0x02 */ u8 mMapToolArg1; /* 0x04 */ int mMapToolArg2; - /* 0x08 */ u8* mCamStyleData; - /* 0x0C */ int field_0xc; - /* 0x10 */ u8* field_0x10; + /* 0x08 */ dCamStyleData::StyleData* mCamStyleData; + /* 0x0C */ s32 mStyleNum; + /* 0x10 */ dCamStyleData::StyleData* mCurrentStyle; /* 0x14 */ int mStyleID; /* 0x18 */ u8 field_0x18[4]; @@ -82,8 +94,8 @@ public: class dCamSetup_c { public: /* 80088668 */ dCamSetup_c(); - /* 80088918 */ void CheckLatitudeRange(s16*); - /* 80088988 */ void PlayerHideDist(); + /* 80088918 */ bool CheckLatitudeRange(s16*); + /* 80088988 */ f32 PlayerHideDist(); /* 80182BB8 */ void CheckFlag2(u16); /* 80182BD0 */ void CheckFlag(u16); /* 80182BE8 */ void WaitRollSpeed(); @@ -169,7 +181,7 @@ public: /* 0x114 */ dCamBGChk_c mBGChk; /* 0x15C */ f32 field_0x15c; /* 0x160 */ f32 field_0x160; - /* 0x164 */ f32 mWaitRollTimer; + /* 0x164 */ int mWaitRollTimer; /* 0x168 */ f32 mWaitRollSpeed; /* 0x16C */ f32 field_0x16c; /* 0x170 */ int mScreensaverFirstWaitTimer; diff --git a/include/d/d_door_param2.h b/include/d/d_door_param2.h index 13045c2d6a..0ae93871b8 100644 --- a/include/d/d_door_param2.h +++ b/include/d/d_door_param2.h @@ -1,6 +1,28 @@ #ifndef D_D_DOOR_PARAM2_H #define D_D_DOOR_PARAM2_H -#include "dolphin/types.h" +#include "f_op/f_op_actor_mng.h" + +class door_param2_c { +public: + /* 8003A188 */ static u8 getKind(fopAc_ac_c* i_actor); + /* 8003A194 */ static u8 getDoorModel(fopAc_ac_c* i_actor); + /* 8003A1A0 */ static u8 getFrontOption(fopAc_ac_c* i_actor); + /* 8003A1AC */ static u8 getBackOption(fopAc_ac_c* i_actor); + /* 8003A1B8 */ static u8 getFRoomNo(fopAc_ac_c* i_actor); + /* 8003A1C4 */ static u8 getBRoomNo(fopAc_ac_c* i_actor); + /* 8003A1D0 */ static u8 getSwbit(fopAc_ac_c* i_actor); + /* 8003A1DC */ static u8 getSwbit2(fopAc_ac_c* i_actor); + /* 8003A1E8 */ static u8 getSwbit3(fopAc_ac_c* i_actor); + /* 8003A1F4 */ static u8 isMsgDoor(fopAc_ac_c* i_actor); + /* 8003A200 */ static u8 getEventNo(fopAc_ac_c* i_actor); + /* 8003A20C */ static u8 getEventNo2(fopAc_ac_c* i_actor); + /* 8003A218 */ static u16 getMsgNo(fopAc_ac_c* i_actor); + /* 8003A224 */ static u8 getExitNo(fopAc_ac_c* i_actor); + /* 8003A230 */ static u8 getFLightInf(fopAc_ac_c* i_actor); + /* 8003A23C */ static u8 getBLightInf(fopAc_ac_c* i_actor); + /* 8003A248 */ static u8 getMFLightInf(fopAc_ac_c* i_actor); + /* 8003A254 */ static u8 getMBLightInf(fopAc_ac_c* i_actor); +}; #endif /* D_D_DOOR_PARAM2_H */ diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h index c22a647f2b..c2de5e7e6a 100644 --- a/include/d/d_drawlist.h +++ b/include/d/d_drawlist.h @@ -255,8 +255,8 @@ public: /* 80056770 */ void drawXluListItem3d(); /* 80056794 */ int set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*); /* 800567C4 */ void draw(dDlst_base_c**, dDlst_base_c**); - /* 8005681C */ void wipeIn(f32, _GXColor&); - /* 800568D8 */ static void wipeIn(f32); + /* 8005681C */ static void wipeIn(f32 i_wipeSpeed, GXColor& i_wipeColor); + /* 800568D8 */ static void wipeIn(f32 i_wipeSpeed); /* 80056900 */ void calcWipe(); enum DrawBuffer { @@ -336,7 +336,7 @@ public: static dDlst_2DT2_c mWipeDlst; static GXColor mWipeColor; static f32 mWipeRate; - static f32 mWipeSpeed[1 + 1 /* padding */]; + static f32 mWipeSpeed; static u8 mWipe; private: diff --git a/include/d/d_gameover.h b/include/d/d_gameover.h index 318cf8756b..9e010aa19c 100644 --- a/include/d/d_gameover.h +++ b/include/d/d_gameover.h @@ -1,13 +1,69 @@ #ifndef D_D_GAMEOVER_H #define D_D_GAMEOVER_H +#include "SSystem/SComponent/c_phase.h" +#include "d/menu/d_menu_save.h" #include "d/msg/d_msg_class.h" -#include "dolphin/types.h" #include "f_op/f_op_msg_mng.h" -struct dGameover_c : msg_class { - /* 8019B044 */ void _create(); - /* 8019B2F4 */ void _execute(); +class mDoHIO_entry_c { +public: + virtual ~mDoHIO_entry_c() {} + + /* 0x4 */ s8 mNo; + /* 0x5 */ u8 mCount; +}; + +class dGov_HIO_c : public mDoHIO_entry_c { +public: + /* 8019AFE0 */ dGov_HIO_c(); + /* 8019C06C */ virtual ~dGov_HIO_c(); + + /* 0x08 */ f32 mScale; + /* 0x0C */ f32 mAlpha; + /* 0x10 */ f32 mAnimSpeed; + /* 0x14 */ GXColor mBlack; + /* 0x18 */ GXColor mWhite; +}; // Size: 0x1C + +class dDlst_Gameover_CAPTURE_c : public dDlst_base_c { +public: + /* 8019ACF8 */ virtual void draw(); + /* 8019C2CC */ virtual ~dDlst_Gameover_CAPTURE_c(); +}; + +class dMsgScrnLight_c; +class dDlst_GameOverScrnDraw_c : public dDlst_base_c { +public: + /* 8019B940 */ dDlst_GameOverScrnDraw_c(JKRArchive*); + /* 8019BCB0 */ void setBackAlpha(f32); + + /* 8019BCF4 */ virtual void draw(); + /* 8019BBFC */ virtual ~dDlst_GameOverScrnDraw_c(); + + /* 0x04 */ J2DScreen* mpScreen; + /* 0x08 */ J2DPicture* mpBackImg; + /* 0x0C */ dMsgScrnLight_c* mpLight; + /* 0x10 */ f32 field_0x10; + /* 0x14 */ JUtility::TColor mFadeColor; +}; // Size: 0x18 + +enum dGameover_Proc { + /* 0 */ PROC_PLAYER_ANM_WAIT, + /* 1 */ PROC_DISP_FADE_OUT, + /* 2 */ PROC_DISP_WAIT, + /* 3 */ PROC_DEMO_FADE_IN, + /* 4 */ PROC_DEMO_FADE_OUT, + /* 5 */ PROC_SAVE_OPEN, + /* 6 */ PROC_SAVE_MOVE, + /* 7 */ PROC_SAVE_CLOSE, + /* 8 */ PROC_DELETE_WAIT, +}; + +class dGameover_c : public msg_class { +public: + /* 8019B044 */ int _create(); + /* 8019B2F4 */ int _execute(); /* 8019B384 */ void playerAnmWait_init(); /* 8019B388 */ void playerAnmWait_proc(); /* 8019B3A0 */ void dispFadeOut_init(); @@ -26,27 +82,37 @@ struct dGameover_c : msg_class { /* 8019B5F4 */ void saveClose_proc(); /* 8019B7BC */ void deleteWait_init(); /* 8019B7C0 */ void deleteWait_proc(); - /* 8019B7C4 */ void _draw(); - /* 8019B864 */ void _delete(); - s32 deleteCheck() { return _0x108 == 8; } + /* 8019B7C4 */ int _draw(); + /* 8019B864 */ int _delete(); - /* 0x100 */ u8 _0x100[0x118 - 0x100]; - /* 0x108 */ u8 _0x108; -}; // size unknown + s32 deleteCheck() { return mProc == 8; } + + /* 0x0FC */ dMenu_save_c* dMs_c; + /* 0x100 */ dDlst_GameOverScrnDraw_c* dgo_screen_c; + /* 0x104 */ dDlst_Gameover_CAPTURE_c* dgo_capture_c; + /* 0x108 */ request_of_phase_process_class mPhase; + /* 0x110 */ JKRHeap* mpHeap; + /* 0x114 */ s16 mTimer; + /* 0x116 */ s16 field_0x116; + /* 0x118 */ u8 mProc; + /* 0x119 */ bool mIsDemoSave; +}; // Size: 0x11C s32 d_GameOver_Create(u8 param_0); -void d_GameOver_Delete(unsigned int& param_0); +bool d_GameOver_Delete(unsigned int& i_id); + inline s32 d_GameOver_CheckDelete(unsigned int& id) { if (id != UINT32_MAX) { dGameover_c* gameover = (dGameover_c*)fopMsgM_SearchByID(id); + if (gameover != NULL) { return gameover->deleteCheck(); } else { return 0; } - } else { - return 0; } + + return 0; } #endif /* D_D_GAMEOVER_H */ diff --git a/include/d/d_kantera_icon_meter.h b/include/d/d_kantera_icon_meter.h index 666d1c4a26..ad0a52cf4b 100644 --- a/include/d/d_kantera_icon_meter.h +++ b/include/d/d_kantera_icon_meter.h @@ -29,6 +29,8 @@ public: /* 801AE974 */ virtual ~dKantera_icon_c(); + void drawSelf() { mpKanteraIcon->draw(); } + private: /* 0x04 */ dDlst_KanteraIcon_c* mpKanteraIcon; /* 0x08 */ CPaneMgr* mpParent; diff --git a/include/d/d_stage.h b/include/d/d_stage.h index e74c7acbb3..67e0da5cdb 100644 --- a/include/d/d_stage.h +++ b/include/d/d_stage.h @@ -241,8 +241,22 @@ public: /* 0x4 */ dStage_Mult_info* mInfo; }; +struct stage_sound_data { + /* 0x00 */ char field_0x0[8]; + /* 0x08 */ Vec field_0x8; + /* 0x14 */ u8 field_0x14; + /* 0x15 */ u8 field_0x15; + /* 0x16 */ u8 field_0x16; + /* 0x17 */ u8 field_0x17; + /* 0x18 */ u8 field_0x18; + /* 0x19 */ u8 field_0x19; + /* 0x1A */ u8 field_0x1a; +}; // Size: 0x1C + struct dStage_SoundInfo_c { // SOND + /* 0x0 */ int field_0x0; + /* 0x4 */ stage_sound_data* field_0x4; }; class dStage_FileList_dt_c { diff --git a/include/d/d_timer.h b/include/d/d_timer.h index 1b39147cab..6f7899da0d 100644 --- a/include/d/d_timer.h +++ b/include/d/d_timer.h @@ -1,37 +1,28 @@ #ifndef D_D_TIMER_H #define D_D_TIMER_H -#include "SSystem/SComponent/c_xyz.h" +#include "JSystem/J2DGraph/J2DPane.h" +#include "JSystem/JKernel/JKRExpHeap.h" #include "SSystem/SComponent/c_phase.h" -#include "dolphin/types.h" -#include "dolphin/os/OSTime.h" +#include "SSystem/SComponent/c_xyz.h" #include "d/msg/d_msg_class.h" #include "d/msg/d_msg_object.h" -#include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/J2DGraph/J2DPane.h" +#include "dolphin/os/OSTime.h" +#include "dolphin/types.h" s32 dTimer_createStockTimer(); -class dDlst_TimerScrnDraw_c { -private: - /* 0x000 */ u8 field_0x000[0x3B0]; - /* 0x3B0 */ int field_0x3B0;; - /* 0x3B4 */ int field_0x3B4; - /* 0x3B8 */ int field_0x3B8; - /* 0x3BC */ int field_0x3BC; - /* 0x3C0 */ u8 field_0x3C0[12]; - /* 0x3CC */ int field_0x3CC; - /* 0x3D0 */ int field_0x3D0; - /* 0x3D4 */ int field_0x3D4; - /* 0x3D8 */ int field_0x3D8; - /* 0x3DC */ u8 field_0x3DC; - // /* 0x3DC */ u8 field_0x3DD; - /* 0x3DE */ u8 field_0x3DE; - /* 0x3DF */ u8 field_0x3DF; - /* 0x3E0 */ u8 field_0x3E0; - /* 0x3E1 */ u8 field_0x3E1; - /* 0x3E2 */ u8 mTimerVisible; +class dDlst_TimerScrnDraw_c : public dDlst_base_c { public: + struct dDlst_TimerScrnDraw_UnkData { + /* 0x0 */ f32 field_0x0; + /* 0x4 */ f32 field_0x4; + /* 0x8 */ u16 field_0x8; + /* 0xA */ u16 field_0xa; + /* 0xC */ u8 field_0xc; + /* 0xD */ u8 field_0xd; + }; // Size: 0x10 + /* 8025DB38 */ dDlst_TimerScrnDraw_c(); /* 8025DBE0 */ void setHIO(); /* 8025DFBC */ void setScreen(s32, JKRArchive*); @@ -53,23 +44,86 @@ public: /* 8025FF98 */ void closeAnime(); /* 802601E4 */ void createGetIn(cXyz); /* 80260574 */ s32 createStart(u16); - /* 80260690 */ void draw(); /* 80260AA8 */ void checkStartAnimeEnd(); /* 80260AD4 */ void playBckAnimation(f32); /* 80260B54 */ void drawPikari(int); - /* 80261394 */ ~dDlst_TimerScrnDraw_c(); - void show() { - mTimerVisible = 1; - } + /* 80260690 */ virtual void draw(); + /* 80261394 */ virtual ~dDlst_TimerScrnDraw_c(); - void hide() { - mTimerVisible = 0; - } + void show() { mTimerVisible = 1; } + void hide() { mTimerVisible = 0; } + +private: + /* 0x004 */ J2DScreen* mpScreen; + /* 0x008 */ J2DScreen* mpGetInScreen; + /* 0x00C */ void* mpGetInBck; + /* 0x010 */ CPaneMgr* mpParent; + /* 0x014 */ CPaneMgr* mpCowParent; + /* 0x018 */ CPaneMgr* mpTimeParent; + /* 0x01C */ CPaneMgr* mpImageParent; + /* 0x020 */ CPaneMgr* mpGetInParent; + /* 0x024 */ CPaneMgr* mpGetInRoot; + /* 0x028 */ CPaneMgr* mpGetInText; + /* 0x02C */ J2DPane* mTimerText[6][2]; + /* 0x05C */ J2DPane* field_0x5c[2][2]; + /* 0x06C */ J2DPane* field_0x6c; + /* 0x070 */ J2DPane* field_0x70; + /* 0x074 */ J2DPane* field_0x74; + /* 0x078 */ J2DPane* field_0x78; + /* 0x07C */ JKRArchive* mpArchive; + /* 0x080 */ dDlst_TimerScrnDraw_UnkData field_0x80[51]; + /* 0x3B0 */ f32 field_0x3B0; + /* 0x3B4 */ f32 field_0x3B4; + /* 0x3B8 */ f32 field_0x3B8; + /* 0x3BC */ f32 field_0x3BC; + /* 0x3C0 */ f32 mTimerTransX; + /* 0x3C4 */ f32 mTimerTransY; + /* 0x3C8 */ s32 field_0x3C8; + /* 0x3CC */ int field_0x3CC; + /* 0x3D0 */ int field_0x3D0; + /* 0x3D4 */ int field_0x3D4; + /* 0x3D8 */ int field_0x3D8; + /* 0x3DC */ u8 mCowID; + /* 0x3DD */ u8 field_0x3DD; + /* 0x3DE */ u8 field_0x3DE; + /* 0x3DF */ u8 field_0x3DF; + /* 0x3E0 */ u8 field_0x3E0; + /* 0x3E1 */ u8 mTimerVisible; + /* 0x3E2 */ u8 mHIOType; }; class dTimer_c : public msg_class { +public: + /* 8025CA0C */ void _create(); + /* 8025CF04 */ void _execute(); + /* 8025D33C */ int _draw(); + /* 8025D3BC */ void _delete(); + /* 8025D524 */ int deleteCheck(); + /* 8025D618 */ void start(int, s16); + /* 8025D538 */ void start(int); + /* 8025D7C0 */ int stock_start(s16); + /* 8025D708 */ bool stock_start(); + /* 8025D7E8 */ int stop(u8); + /* 8025D86C */ int restart(u8); + /* 8025D920 */ int end(int); + /* 8025D9E0 */ int deleteRequest(); + /* 8025D9F0 */ int getTimeMs(); + /* 8025DA54 */ int getLimitTimeMs(); + /* 8025DA9C */ int getRestTimeMs(); + /* 8025DB10 */ int isStart(); + /* 802613DC */ int createGetIn(cXyz); + + s32 createStart(u16 param_0) { return mp_tm_scrn->createStart(param_0); } + + void show() { mp_tm_scrn->show(); } + + void hide() { mp_tm_scrn->hide(); } + + u8 isReadyFlag() { return mIsReady; } + private: + /* 0x0FC */ dDlst_TimerScrnDraw_c* mp_tm_scrn; /* 0x100 */ JKRExpHeap* mpHeap; /* 0x104 */ u8 field_0x104[4]; /* 0x108 */ request_of_phase_process_class mPhase; @@ -92,42 +146,6 @@ private: /* 0x16C */ u8 mDeleteCheck; /* 0x16C */ u8 field_0x16D; /* 0x16E */ u8 mIsReady; - -public: - /* 8025CA0C */ void _create(); - /* 8025CF04 */ void _execute(); - /* 8025D33C */ int _draw(); - /* 8025D3BC */ void _delete(); - /* 8025D524 */ int deleteCheck(); - /* 8025D618 */ void start(int, s16); - /* 8025D538 */ void start(int); - /* 8025D7C0 */ int stock_start(s16); - /* 8025D708 */ bool stock_start(); - /* 8025D7E8 */ int stop(u8); - /* 8025D86C */ int restart(u8); - /* 8025D920 */ int end(int); - /* 8025D9E0 */ int deleteRequest(); - /* 8025D9F0 */ int getTimeMs(); - /* 8025DA54 */ int getLimitTimeMs(); - /* 8025DA9C */ int getRestTimeMs(); - /* 8025DB10 */ int isStart(); - /* 802613DC */ int createGetIn(cXyz); - - s32 createStart(u16 param_0) { - return ((dDlst_TimerScrnDraw_c*)field_0xfc)->createStart(param_0); - } - - void show() { - ((dDlst_TimerScrnDraw_c*)field_0xfc)->show(); - } - - void hide() { - ((dDlst_TimerScrnDraw_c*)field_0xfc)->hide(); - } - - u8 isReadyFlag() { - return mIsReady; - } }; #endif /* D_D_TIMER_H */ diff --git a/include/d/menu/d_menu_save.h b/include/d/menu/d_menu_save.h index fa344b3f13..324e43473c 100644 --- a/include/d/menu/d_menu_save.h +++ b/include/d/menu/d_menu_save.h @@ -262,6 +262,7 @@ public: /* 802844D0 */ virtual ~dMenu_save_c(); u8 getSaveStatus() { return mSaveStatus; } + u8 getEndStatus() { return mEndStatus; } void setUseType(u8 type) { mUseType = type; } private: diff --git a/include/d/menu/d_menu_window.h b/include/d/menu/d_menu_window.h index 2d252e73a9..8734194867 100644 --- a/include/d/menu/d_menu_window.h +++ b/include/d/menu/d_menu_window.h @@ -249,6 +249,7 @@ public: bool isFadeNowCheck() { return mDoGph_gInf_c::getFader()->getStatus() == 1; } private: + /* 0x0FC */ int field_0xfc; /* 0x100 */ JKRExpHeap* mpHeap; /* 0x104 */ STControl* mpStick; /* 0x108 */ CSTControl* mpCStick; diff --git a/include/d/meter/d_meter2.h b/include/d/meter/d_meter2.h index 3e10104ce9..02e8c4ce49 100644 --- a/include/d/meter/d_meter2.h +++ b/include/d/meter/d_meter2.h @@ -229,6 +229,7 @@ public: u16 getSubContentsStringType() { return mSubContentsStringType; } private: + /* 0x0FC */ int field_0xfc; /* 0x100 */ JKRExpHeap* mpHeap; /* 0x104 */ JKRExpHeap* mpSubHeap; /* 0x108 */ void* field_0x108; diff --git a/include/d/meter/d_meter2_draw.h b/include/d/meter/d_meter2_draw.h index 511e5ecdec..e5ae5b2d28 100644 --- a/include/d/meter/d_meter2_draw.h +++ b/include/d/meter/d_meter2_draw.h @@ -351,7 +351,7 @@ private: /* 0x524 */ int field_0x524[2][2]; /* 0x534 */ J2DAnmTransformKey* mPikariBck; /* 0x538 */ J2DAnmColorKey* mPikariBpk; - /* 0x53C */ J2DAnmColorKey* field_0x53c[3]; + /* 0x53C */ J2DAnmColorKey* mpOxygenBpk[3]; /* 0x548 */ JUtility::TColor field_0x548; /* 0x54C */ JUtility::TColor field_0x54c; /* 0x550 */ f32 field_0x550; @@ -367,36 +367,17 @@ private: /* 0x578 */ f32 field_0x578; /* 0x57C */ f32 field_0x57c; /* 0x580 */ f32 field_0x580; - /* 0x584 */ f32 field_0x584; - /* 0x588 */ f32 field_0x588; - /* 0x58C */ f32 field_0x58c; - /* 0x590 */ f32 field_0x590; - /* 0x594 */ f32 field_0x594; - /* 0x598 */ f32 field_0x598; - /* 0x59C */ f32 field_0x59c; - /* 0x5A0 */ f32 field_0x5a0; - /* 0x5A4 */ f32 field_0x5a4; - /* 0x5A8 */ f32 field_0x5a8; - /* 0x5AC */ f32 field_0x5ac; - /* 0x5B0 */ f32 field_0x5b0; - /* 0x5B4 */ f32 field_0x5b4; - /* 0x5B8 */ f32 field_0x5b8; - /* 0x5BC */ f32 field_0x5bc; - /* 0x5C0 */ f32 field_0x5c0; - /* 0x5C4 */ f32 field_0x5c4; - /* 0x5C8 */ f32 field_0x5c8; - /* 0x5CC */ f32 field_0x5cc; - /* 0x5D0 */ f32 field_0x5d0; - /* 0x5D4 */ f32 field_0x5d4; - /* 0x5D8 */ f32 field_0x5d8; - /* 0x5DC */ f32 field_0x5dc; - /* 0x5E0 */ f32 field_0x5e0; - /* 0x5E4 */ f32 field_0x5e4; - /* 0x5E8 */ f32 field_0x5e8; - /* 0x5EC */ f32 field_0x5ec; - /* 0x5F0 */ f32 field_0x5f0; - /* 0x5F4 */ u8 field_0x5f4[0x8]; - /* 0x5FC */ f32 field_0x5fc[3]; + /* 0x584 */ f32 field_0x584[3]; + /* 0x590 */ f32 field_0x590[3]; + /* 0x59C */ f32 field_0x59c[3]; + /* 0x5A8 */ f32 field_0x5a8[3]; + /* 0x5B4 */ f32 field_0x5b4[3]; + /* 0x5C0 */ f32 field_0x5c0[3]; + /* 0x5CC */ f32 field_0x5cc[3]; + /* 0x5D8 */ f32 field_0x5d8[3]; + /* 0x5E4 */ f32 field_0x5e4[3]; + /* 0x5F0 */ f32 field_0x5f0[3]; + /* 0x5FC */ f32 mMeterAlphaRate[3]; /* 0x608 */ f32 field_0x608; /* 0x60C */ f32 field_0x60c; /* 0x610 */ f32 field_0x610[3]; @@ -429,7 +410,7 @@ private: /* 0x738 */ f32 field_0x738; /* 0x73C */ f32 field_0x73c; /* 0x740 */ u16 field_0x740; - /* 0x742 */ u16 field_0x742[3]; + /* 0x742 */ s16 field_0x742[3]; /* 0x748 */ u8 field_0x748[0xC]; /* 0x756 */ u16 field_0x754; /* 0x756 */ s16 field_0x756; diff --git a/include/d/meter/d_meter2_info.h b/include/d/meter/d_meter2_info.h index 3088f04487..f75483179f 100644 --- a/include/d/meter/d_meter2_info.h +++ b/include/d/meter/d_meter2_info.h @@ -159,6 +159,8 @@ public: dMeter2_c* getMeterClass() { return mMeterClass; } u8 getMiniGameItemSetFlag() { return mMiniGameItemSetFlag; } s16 getMsgKeyWaitTimer() { return mMsgKeyWaitTimer; } + u8 getGameOverType() { return mGameOverType; } + void setGameOverType(u8 i_gameoverType) { mGameOverType = i_gameoverType; } public: /* 0x04 */ u8 unk4[4]; @@ -505,6 +507,14 @@ inline void dMeter2Info_setFloatingFlow(u16 param_0, s16 param_1, bool param_2) g_meter2_info.setFloatingFlow(param_0, param_1, param_2); } +inline u8 dMeter2Info_getGameOverType() { + return g_meter2_info.getGameOverType(); +} + +inline void dMeter2Info_setGameOverType(u8 i_gameoverType) { + g_meter2_info.setGameOverType(i_gameoverType); +} + char* dMeter2Info_getNumberTextureName(int pIndex); void dMeter2Info_recieveLetter(); u8 dMeter2Info_getNewLetterNum(); diff --git a/include/d/msg/d_msg_class.h b/include/d/msg/d_msg_class.h index ffcac0294a..8ac1d507e5 100644 --- a/include/d/msg/d_msg_class.h +++ b/include/d/msg/d_msg_class.h @@ -17,7 +17,6 @@ public: /* 0xF4 */ u32 field_0xf4; /* 0xF8 */ u16 mMode; /* 0xFA */ u8 mSelectedChoiceIdx; - /* 0xFC */ int field_0xfc; -}; // Size: 0x100 +}; // Size: 0xFC #endif /* D_MSG_D_MSG_CLASS_H */ diff --git a/include/d/msg/d_msg_object.h b/include/d/msg/d_msg_object.h index 45fe778606..7f7c74f6f2 100644 --- a/include/d/msg/d_msg_object.h +++ b/include/d/msg/d_msg_object.h @@ -162,6 +162,7 @@ public: u8 getSelectPushFlag() { return mSelectPushFlag; } u8 getSelectCancelPos() { return mSelectCancelPos; } + /* 0x0FC */ int field_0xfc; /* 0x100 */ msg_class* field_0x100; /* 0x104 */ dMsgScrnBase_c* mpScrnDraw; /* 0x108 */ dMsgString_c* mpMsgString; diff --git a/include/d/pane/d_pane_class.h b/include/d/pane/d_pane_class.h index 418abda8bc..3265b1268e 100644 --- a/include/d/pane/d_pane_class.h +++ b/include/d/pane/d_pane_class.h @@ -36,8 +36,10 @@ public: } void translate(f32 x, f32 y) { getPanePtr()->translate(x, y); } - void scale(f32 h, f32 v) { getPanePtr()->scale(h, v); } + void resize(f32 x, f32 y) { getPanePtr()->resize(x, y); } + void move(f32 x, f32 y) { getPanePtr()->move(x, y); } + void scaleAnimeStart(s16 v) { mScaleAnime = v; } void colorAnimeStart(s16 start) { mColorAnime = start; } @@ -60,6 +62,7 @@ public: f32 getInitPosY() { return mInitPos.y; } JUtility::TColor getInitBlack() { return mInitBlack; } + JUtility::TColor getInitWhite() { return mInitWhite; } private: /* 0x1C */ void* mpFirstStackSize; diff --git a/include/d/save/d_save.h b/include/d/save/d_save.h index a31380e64b..387be9e51b 100644 --- a/include/d/save/d_save.h +++ b/include/d/save/d_save.h @@ -683,6 +683,12 @@ public: void setTotalTime(s64 i_time) { mTotalTime = i_time; } s64 getTotalTime() const { return mTotalTime; } + void addDeathCount() { + if (mDeathCount < 0xFFFF) { + mDeathCount++; + } + } + private: /* 0x00 */ u32 unk0; /* 0x04 */ u32 unk4; diff --git a/include/f_op/f_op_msg_mng.h b/include/f_op/f_op_msg_mng.h index 67db9e21e1..8e115fd700 100644 --- a/include/f_op/f_op_msg_mng.h +++ b/include/f_op/f_op_msg_mng.h @@ -7,7 +7,7 @@ struct msg_process_profile_definition { /* 0x00 */ leaf_process_profile_definition mBase; - /* 0x24 */ leafdraw_method_class* mSubMtd; // Subclass methods + /* 0x24 */ leafdraw_method_class* mSubMtd; // Subclass methods }; struct fopMsg_prm_class { @@ -38,6 +38,9 @@ typedef int (*fopMsgCreateFunc)(void*); JKRExpHeap* fopMsgM_createExpHeap(u32, JKRHeap*); u32 fopMsgM_Create(s16, fopMsgCreateFunc, void*); +s32 fopMsgM_create(s16 param_0, fopAc_ac_c* param_1, cXyz* param_2, u32* param_3, u32* param_4, + fopMsgCreateFunc createFunc); +void fopMsgM_Delete(void* process); fopMsg_prm_class* fopMsgM_GetAppend(void* msg); void fopMsgM_setMessageID(unsigned int); void fopMsgM_destroyExpHeap(JKRExpHeap*); @@ -48,9 +51,11 @@ msg_class* fopMsgM_SearchByID(unsigned int param_0); char* fopMsgM_messageGet(char* msg, u32 string_id); s32 fop_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, f32 param_5, f32 param_6, f32 param_7, f32 param_8, fopMsgCreateFunc createFunc); -inline s32 fopMsgM_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, f32 param_5, - f32 param_6, f32 param_7, f32 param_8, fopMsgCreateFunc createFunc) { - return fop_Timer_create(param_0, param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8, createFunc); +inline s32 fopMsgM_Timer_create(s16 param_0, u8 param_1, u32 param_2, u8 param_3, u8 param_4, + f32 param_5, f32 param_6, f32 param_7, f32 param_8, + fopMsgCreateFunc createFunc) { + return fop_Timer_create(param_0, param_1, param_2, param_3, param_4, param_5, param_6, param_7, + param_8, createFunc); } #endif diff --git a/include/m_Do/m_Do_graphic.h b/include/m_Do/m_Do_graphic.h index d989cefe34..1607cbc14e 100644 --- a/include/m_Do/m_Do_graphic.h +++ b/include/m_Do/m_Do_graphic.h @@ -55,6 +55,8 @@ public: static void waitBlanking(int wait) { JFWDisplay::getManager()->waitBlanking(wait); } static f32 getWidthF() { return 608.0f; } static f32 getHeightF() { return 448.0f; } + static f32 getWidth() { return 608.0f; } + static f32 getHeight() { return 448.0f; } static f32 getMinYF() { return 0.0f; } static f32 getMinXF() { return 0.0f; } static int getMinY() { return 0; } @@ -66,6 +68,7 @@ public: static void setFadeRate(f32 rate) { mFadeRate = rate; } static f32 getFadeRate() { return mFadeRate; } static bloom_c* getBloom() { return &m_bloom; } + static GXColor& getFadeColor() { return mFadeColor; } static GXTexObj mFrameBufferTexObj; static GXTexObj mZbufferTexObj; diff --git a/libs/SSystem/SComponent/c_angle.cpp b/libs/SSystem/SComponent/c_angle.cpp index aaa7309988..676dcd7958 100644 --- a/libs/SSystem/SComponent/c_angle.cpp +++ b/libs/SSystem/SComponent/c_angle.cpp @@ -22,71 +22,71 @@ const cSAngle cSAngle::_270(static_cast(-0x4000)); /* 80270F68-80270F98 0030+00 s=0 e=33 z=2 None .text __ct__7cSAngleFRC7cSAngle */ cSAngle::cSAngle(const cSAngle& angle) { - this->Val(angle); + Val(angle); } /* 80270F98-80270FC8 0030+00 s=14 e=50 z=4 None .text __ct__7cSAngleFs */ cSAngle::cSAngle(s16 angle) { - this->Val(angle); + Val(angle); } /* 80270FC8-80270FF8 0030+00 s=0 e=22 z=0 None .text __ct__7cSAngleFf */ -cSAngle::cSAngle(float angle) { - this->Val(angle); +cSAngle::cSAngle(f32 angle) { + Val(angle); } /* 80270FF8-80271004 000C+00 s=2 e=6 z=0 None .text Val__7cSAngleFRC7cSAngle */ void cSAngle::Val(const cSAngle& other) { - this->mAngle = other.mAngle; + mAngle = other.mAngle; } /* 80271004-8027100C 0008+00 s=4 e=7 z=0 None .text Val__7cSAngleFs */ void cSAngle::Val(s16 val) { - this->mAngle = val; + mAngle = val; } /* 8027100C-80271030 0024+00 s=1 e=8 z=0 None .text Val__7cSAngleFf */ -void cSAngle::Val(float f) { - this->mAngle = 182.04445f * f; +void cSAngle::Val(f32 degree) { + mAngle = cAngle::Degree_to_SAngle(degree); } /* 80271030-80271064 0034+00 s=0 e=11 z=0 None .text Degree__7cSAngleCFv */ -float cSAngle::Degree(void) const { - return (360.0f / 65536.0f) * this->mAngle; +f32 cSAngle::Degree() const { + return cAngle::SAngle_to_Degree(mAngle); } /* 80271064-80271098 0034+00 s=3 e=0 z=0 None .text Radian__7cSAngleCFv */ -float cSAngle::Radian(void) const { - return 9.58738E-5f * this->mAngle; +f32 cSAngle::Radian() const { + return cAngle::SAngle_to_Radian(mAngle); } /* 80271098-802710CC 0034+00 s=0 e=1 z=0 None .text Norm__7cSAngleCFv */ -float cSAngle::Norm(void) const { - return 3.0517578E-5f * this->mAngle; +f32 cSAngle::Norm() const { + return cAngle::SAngle_to_Normal(mAngle); } /* 802710CC-802710E8 001C+00 s=0 e=5 z=1 None .text Abs__7cSAngleCFv */ -s16 cSAngle::Abs(void) const { +s16 cSAngle::Abs() const { return mAngle >= 0 ? mAngle : -mAngle; } /* 802710E8-802710F8 0010+00 s=2 e=22 z=2 None .text Inv__7cSAngleCFv */ -s16 cSAngle::Inv(void) const { +s16 cSAngle::Inv() const { return mAngle - 0x8000; } /* 802710F8-80271120 0028+00 s=0 e=6 z=1 None .text Sin__7cSAngleCFv */ -float cSAngle::Sin(void) const { - return sin(this->Radian()); +f32 cSAngle::Sin() const { + return sin(Radian()); } /* 80271120-80271148 0028+00 s=0 e=8 z=1 None .text Cos__7cSAngleCFv */ -float cSAngle::Cos(void) const { - return cos(this->Radian()); +f32 cSAngle::Cos() const { + return cos(Radian()); } /* 80271148-80271174 002C+00 s=2 e=8 z=0 None .text __mi__7cSAngleCFv */ -cSAngle cSAngle::operator-(void) const { +cSAngle cSAngle::operator-() const { return cSAngle(static_cast(-mAngle)); } @@ -111,149 +111,134 @@ void cSAngle::operator-=(const cSAngle& other) { } /* 802711FC-80271228 002C+00 s=0 e=5 z=0 None .text __pl__7cSAngleCFs */ -cSAngle cSAngle::operator+(short other) const { +cSAngle cSAngle::operator+(s16 other) const { return cSAngle(static_cast(mAngle + other)); } /* 80271228-80271254 002C+00 s=0 e=9 z=3 None .text __mi__7cSAngleCFs */ -cSAngle cSAngle::operator-(short other) const { +cSAngle cSAngle::operator-(s16 other) const { return cSAngle(static_cast(mAngle - other)); } /* 80271254-80271264 0010+00 s=0 e=1 z=0 None .text __apl__7cSAngleFs */ -void cSAngle::operator+=(short other) { +void cSAngle::operator+=(s16 other) { mAngle += other; } /* 80271264-802712B4 0050+00 s=0 e=31 z=0 None .text __ml__7cSAngleCFf */ -cSAngle cSAngle::operator*(float f1) const { +cSAngle cSAngle::operator*(f32 f1) const { return cSAngle(static_cast(mAngle * f1)); } /* 802712B4-802712F4 0040+00 s=0 e=3 z=0 None .text __amu__7cSAngleFf */ -void cSAngle::operator*=(float f1) { - this->mAngle *= f1; +void cSAngle::operator*=(f32 f1) { + mAngle *= f1; } /* 802712F4-80271320 002C+00 s=0 e=2 z=0 None .text __pl__FsRC7cSAngle */ -cSAngle operator+(short other, const cSAngle& angle) { +cSAngle operator+(s16 other, const cSAngle& angle) { return cSAngle(static_cast(other + angle.Val())); } /* 80271320-8027134C 002C+00 s=0 e=5 z=0 None .text __mi__FsRC7cSAngle */ -cSAngle operator-(short other, const cSAngle& angle) { +cSAngle operator-(s16 other, const cSAngle& angle) { return cSAngle(static_cast(other - angle.Val())); } /* 8027134C-8027137C 0030+00 s=0 e=3 z=0 None .text __ct__7cDegreeFf */ -cDegree::cDegree(float f) { - this->Val(f); -} - -struct cAngle { - template - static T Adjust(T f1, T f2, T f3); -}; - -template -T cAngle::Adjust(T f1, T f2, T f3) { - while (f1 >= f3) { - f1 -= f3 - f2; - } - while (f1 < f2) { - f1 += f3 - f2; - } - return f1; +cDegree::cDegree(f32 f) { + Val(f); } /* 8027137C-802713BC 0040+00 s=1 e=0 z=0 None .text Formal__7cDegreeFv */ -cDegree& cDegree::Formal(void) { +cDegree& cDegree::Formal() { mDegree = cAngle::Adjust(mDegree, -180.0f, 180.0f); - // mDegree = cAngle_NS_Adjust(mDegree, -180.0f, 180.0f); return *this; } /* 802713BC-802713E0 0024+00 s=1 e=0 z=0 None .text Val__7cDegreeFf */ -void cDegree::Val(float f) { +void cDegree::Val(f32 f) { mDegree = f; - this->Formal(); + Formal(); } /* 802713E0-802713F0 0010+00 s=3 e=0 z=0 None .text Radian__7cDegreeCFv */ -float cDegree::Radian(void) const { - return 0.017453292f * mDegree; +f32 cDegree::Radian() const { + return cAngle::Degree_to_Radian(mDegree); } /* 802713F0-80271418 0028+00 s=0 e=1 z=0 None .text Sin__7cDegreeCFv */ -float cDegree::Sin(void) const { - return sin(this->Radian()); +f32 cDegree::Sin() const { + return sin(Radian()); } /* 80271418-80271440 0028+00 s=0 e=2 z=0 None .text Cos__7cDegreeCFv */ -float cDegree::Cos(void) const { - return cos(this->Radian()); +f32 cDegree::Cos() const { + return cos(Radian()); } /* 80271440-80271468 0028+00 s=0 e=1 z=0 None .text Tan__7cDegreeCFv */ -float cDegree::Tan(void) const { - return tan(this->Radian()); +f32 cDegree::Tan() const { + return tan(Radian()); } /* 80271468-80271498 0030+00 s=1 e=0 z=0 None .text __ct__7cSPolarFRC4cXyz */ cSPolar::cSPolar(const cXyz& xyz) { - this->Val(xyz); + Val(xyz); } /* 80271498-80271558 00C0+00 s=2 e=0 z=0 None .text Formal__7cSPolarFv */ -cSPolar& cSPolar::Formal(void) { +cSPolar& cSPolar::Formal() { if (mRadial < 0.0f) { mRadial = -mRadial; cSAngle tmp(static_cast(-0x8000)); mAngle1.Val(tmp - mAngle1); mAngle2.Val(mAngle2.Inv()); } + if (mAngle1.Val() < 0 && mAngle1.Val() != -0x8000) { mAngle1.Val(-mAngle1); mAngle2.Val(mAngle2.Inv()); } + return *this; } /* 80271558-802715BC 0064+00 s=1 e=0 z=0 None .text Val__7cSPolarFfss */ -void cSPolar::Val(float f, short s1, short s2) { +void cSPolar::Val(f32 f, s16 s1, s16 s2) { mRadial = f; mAngle1 = cSAngle(s1); mAngle2 = cSAngle(s2); - this->Formal(); + Formal(); } -inline double square(float f) { +inline double square(f32 f) { return f * f; } /* 802715BC-802716EC 0130+00 s=1 e=0 z=0 None .text Val__7cSPolarFRC4cXyz */ void cSPolar::Val(const cXyz& xyz) { - float x, y, z, tmp4; + f32 x, y, z, tmp4; x = xyz.x; y = xyz.y; z = xyz.z; double tmp = square(z) + square(x); double tmp2 = square(y) + tmp; - tmp4 = (tmp > 0.0) ? (float)sqrt(tmp) : 0.0f; - mRadial = (tmp2 > 0.0) ? (float)sqrt(tmp2) : 0.0f; - mAngle1.Val(static_cast(cM_atan2f(tmp4, y) * 10430.378f)); - mAngle2.Val(static_cast(cM_atan2f(x, z) * 10430.378f)); - this->Formal(); + tmp4 = (tmp > 0.0) ? (f32)sqrt(tmp) : 0.0f; + mRadial = (tmp2 > 0.0) ? (f32)sqrt(tmp2) : 0.0f; + mAngle1.Val(cAngle::Radian_to_SAngle(cM_atan2f(tmp4, y))); + mAngle2.Val(cAngle::Radian_to_SAngle(cM_atan2f(x, z))); + Formal(); } /* 802716EC-802717B4 00C8+00 s=1 e=1 z=0 None .text Xyz__7cSPolarCFv */ -cXyz cSPolar::Xyz(void) const { - float ang1Cos; - float ang2Cos; - float ang1Sin = mRadial * (float)sin(mAngle1.Radian()); - ang2Cos = (float)cos(mAngle2.Radian()); - ang1Cos = mRadial * (float)cos(mAngle1.Radian()); - float ang2Sin = sin(mAngle2.Radian()); +cXyz cSPolar::Xyz() const { + f32 ang1Cos; + f32 ang2Cos; + f32 ang1Sin = mRadial * (f32)sin(mAngle1.Radian()); + ang2Cos = (f32)cos(mAngle2.Radian()); + ang1Cos = mRadial * (f32)cos(mAngle1.Radian()); + f32 ang2Sin = sin(mAngle2.Radian()); return cXyz(ang1Sin * ang2Sin, ang1Cos, ang1Sin * ang2Cos); } @@ -264,36 +249,37 @@ void cSPolar::Globe(cSGlobe* globe) const { /* 802717F0-80271820 0030+00 s=0 e=6 z=0 None .text __ct__7cSGlobeFRC7cSGlobe */ cSGlobe::cSGlobe(const cSGlobe& other) { - this->Val(other); + Val(other); } /* 80271820-80271850 0030+00 s=0 e=3 z=0 None .text __ct__7cSGlobeFfss */ -cSGlobe::cSGlobe(float f, short s1, short s2) { - this->Val(f, s1, s2); +cSGlobe::cSGlobe(f32 f, s16 s1, s16 s2) { + Val(f, s1, s2); } /* 80271850-80271880 0030+00 s=1 e=4 z=0 None .text __ct__7cSGlobeFfRC7cSAngleRC7cSAngle */ -cSGlobe::cSGlobe(float f, const cSAngle& a1, const cSAngle& a2) { - this->Val(f, a1, a2); +cSGlobe::cSGlobe(f32 f, const cSAngle& a1, const cSAngle& a2) { + Val(f, a1, a2); } /* 80271880-802718B0 0030+00 s=0 e=35 z=3 None .text __ct__7cSGlobeFRC4cXyz */ cSGlobe::cSGlobe(const cXyz& xyz) { - this->Val(xyz); + Val(xyz); } /* 802718B0-8027196C 00BC+00 s=5 e=0 z=0 None .text Formal__7cSGlobeFv */ -cSGlobe& cSGlobe::Formal(void) { +cSGlobe& cSGlobe::Formal() { if (mRadius < 0.0f) { mRadius = -mRadius; mAzimuth = -mAzimuth; mInclination.Val(mInclination.Inv()); } + if (mAzimuth.Val() < -0x4000 || 0x4000 < mAzimuth.Val()) { - // mAzimuth.mirrorAtMaxNeg(); mAzimuth = cSAngle((s16)-0x8000) - mAzimuth; mInclination.Val(mInclination.Inv()); } + return *this; } @@ -302,36 +288,36 @@ void cSGlobe::Val(const cSGlobe& other) { mRadius = other.mRadius; mAzimuth = other.mAzimuth; mInclination = other.mInclination; - this->Formal(); + Formal(); } /* 802719A4-80271A08 0064+00 s=2 e=3 z=0 None .text Val__7cSGlobeFfss */ -void cSGlobe::Val(float f, short s1, short s2) { +void cSGlobe::Val(f32 f, s16 s1, s16 s2) { mRadius = f; mAzimuth = cSAngle(s1); mInclination = cSAngle(s2); - this->Formal(); + Formal(); } /* 80271A08-80271A70 0068+00 s=1 e=11 z=0 None .text Val__7cSGlobeFfRC7cSAngleRC7cSAngle */ -void cSGlobe::Val(float f, const cSAngle& a1, const cSAngle& a2) { +void cSGlobe::Val(f32 f, const cSAngle& a1, const cSAngle& a2) { mRadius = f; mAzimuth = cSAngle(a1.Val()); mInclination = cSAngle(a2.Val()); - this->Formal(); + Formal(); } /* 80271A70-80271AB4 0044+00 s=1 e=38 z=0 None .text Val__7cSGlobeFRC4cXyz */ void cSGlobe::Val(const cXyz& xyz) { cSPolar csp(xyz); csp.Globe(this); - this->Formal(); + Formal(); } /* 80271AB4-80271AF4 0040+00 s=1 e=38 z=0 None .text Xyz__7cSGlobeCFv */ -cXyz cSGlobe::Xyz(void) const { +cXyz cSGlobe::Xyz() const { cSPolar csp; - this->Polar(&csp); + Polar(&csp); return csp.Xyz(); } @@ -340,18 +326,14 @@ void cSGlobe::Polar(cSPolar* csp) const { csp->Val(mRadius, 0x4000 - mAzimuth.Val(), mInclination.Val()); } -/* ############################################################################################## */ -/* 8045523C-80455240 00383C 0004+00 1/1 0/0 0/0 .sdata2 @2744 */ -SECTION_SDATA2 static f32 lit_2744 = 1.0f; - /* 80271B30-80271B7C 004C+00 s=0 e=3 z=0 None .text Norm__7cSGlobeCFv */ -cXyz cSGlobe::Norm(void) const { +cXyz cSGlobe::Norm() const { cSGlobe glob(1.0f, mAzimuth, mInclination); return glob.Xyz(); } /* 80271B7C-80271BA8 002C+00 s=0 e=2 z=0 None .text Invert__7cSGlobeFv */ -cSGlobe& cSGlobe::Invert(void) { +cSGlobe& cSGlobe::Invert() { mRadius = -mRadius; - return this->Formal(); + return Formal(); } diff --git a/src/d/d_cam_param.cpp b/src/d/d_cam_param.cpp index c8569314ea..389d7e4db6 100644 --- a/src/d/d_cam_param.cpp +++ b/src/d/d_cam_param.cpp @@ -1,159 +1,115 @@ -// -// Generated By: dol2asm -// Translation Unit: d/d_cam_param -// +/** + * d_cam_param.cpp + * + */ #include "d/d_cam_param.h" -#include "dol2asm.h" -#include "dolphin/types.h" +#include "SSystem/SComponent/c_math.h" #include "d/com/d_com_inf_game.h" +#include "dol2asm.h" // // Forward References: // -extern "C" void rationalBezierRatio__8dCamMathFff(); -extern "C" void zoomFovy__8dCamMathFff(); -extern "C" void __dt__7cDegreeFv(); -extern "C" void xyzRotateX__8dCamMathFR4cXyz7cSAngle(); -extern "C" void xyzRotateY__8dCamMathFR4cXyz7cSAngle(); -extern "C" void xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz(); -extern "C" void __ct__9dCstick_cFv(); -extern "C" bool Shift__9dCstick_cFUl(); -extern "C" void __ct__11dCamBGChk_cFv(); -extern "C" void __ct__11dCamParam_cFl(); extern "C" void __dt__11dCamParam_cFv(); -extern "C" void Change__11dCamParam_cFl(); -extern "C" void SearchStyle__11dCamParam_cFUl(); -extern "C" void __ct__11dCamSetup_cFv(); extern "C" void __dt__11dCamSetup_cFv(); -extern "C" void CheckLatitudeRange__11dCamSetup_cFPs(); -extern "C" void PlayerHideDist__11dCamSetup_cFv(); extern "C" void __dt__9dCstick_cFv(); -extern "C" extern char const* const d_d_cam_param__stringBase0; // // External References: // -extern "C" void mDoMtx_XrotS__FPA4_fs(); -extern "C" void mDoMtx_YrotS__FPA4_fs(); -extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci(); -extern "C" void EventRecoverNotime__9dCamera_cFv(); -extern "C" void dCam_getBody__Fv(); -extern "C" void cM_atan2f__Fff(); -extern "C" void __ct__7cDegreeFf(); -extern "C" void Sin__7cDegreeCFv(); -extern "C" void Cos__7cDegreeCFv(); extern "C" void __dl__FPv(); // // Declarations: // -/* ############################################################################################## */ -/* 804527C8-804527D0 000DC8 0004+04 2/2 0/0 0/0 .sdata2 @3769 */ -SECTION_SDATA2 static f32 lit_3769[1 + 1 /* padding */] = { - 0.0f, - /* padding */ - 0.0f, -}; - -/* 804527D0-804527D8 000DD0 0008+00 1/1 0/0 0/0 .sdata2 @3770 */ -SECTION_SDATA2 static f64 lit_3770 = 1.0; - -/* 804527D8-804527E0 000DD8 0008+00 1/1 0/0 0/0 .sdata2 @3771 */ -SECTION_SDATA2 static f64 lit_3771 = -1.0; - -/* 804527E0-804527E8 000DE0 0008+00 1/1 0/0 0/0 .sdata2 @3772 */ -SECTION_SDATA2 static f64 lit_3772 = 2.0; - -/* 804527E8-804527F0 000DE8 0008+00 1/1 0/0 0/0 .sdata2 @3773 */ -SECTION_SDATA2 static f64 lit_3773 = 4.0; - -/* 804527F0-804527F8 000DF0 0008+00 1/1 0/0 0/0 .sdata2 @3774 */ -SECTION_SDATA2 static u8 lit_3774[8] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/* 804527F8-80452800 000DF8 0008+00 1/1 0/0 0/0 .sdata2 @3775 */ -SECTION_SDATA2 static f64 lit_3775 = 1e-07; - -/* 80452800-80452808 000E00 0008+00 1/1 0/0 0/0 .sdata2 @3776 */ -SECTION_SDATA2 static f64 lit_3776 = -1e-07; - -/* 80452808-80452810 000E08 0008+00 1/1 0/0 0/0 .sdata2 @3777 */ -SECTION_SDATA2 static f64 lit_3777 = 1.0000000116860974e-07; - /* 8008813C-80088284 082A7C 0148+00 0/0 12/12 0/0 .text rationalBezierRatio__8dCamMathFff */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamMath::rationalBezierRatio(f32 param_0, f32 param_1) { - nofralloc -#include "asm/d/d_cam_param/rationalBezierRatio__8dCamMathFff.s" +f32 dCamMath::rationalBezierRatio(f32 param_0, f32 param_1) { + f64 var_f31; + f32 var_f1 = param_0; + + if (var_f1 >= 0.0f) { + var_f31 = 1.0; + } else { + var_f31 = -1.0; + var_f1 = -var_f1; + } + + f64 temp_f2 = 2.0 * var_f1; + f64 temp_f2_2 = ((temp_f2 * param_1) - temp_f2) - (2.0 * param_1); + f64 temp_f29 = -temp_f2_2; + f64 temp_f28 = temp_f29 - 1.0; + f64 var_f1_2 = (temp_f2_2 * temp_f2_2) - (4.0 * temp_f28 * var_f1); + + if (var_f1_2 > 0.0) { + var_f1_2 = sqrt(var_f1_2); + } else { + var_f1_2 = 0.0; + } + + f64 temp = temp_f29 - var_f1_2; + f64 temp_f2_3 = temp_f28 * 2.0; + if (temp_f2_3 > 1e-07 || temp_f2_3 < -1e-07) { + f64 temp_f2_4 = temp / temp_f2_3; + f64 temp_f3 = temp_f2_4 * temp_f2_4; + f64 temp_f4 = 1.0 - temp_f2_4; + f64 temp_f1 = temp_f3 + ((temp_f4 * temp_f4) + (param_1 * (2.0 * temp_f4 * temp_f2_4))); + + if (temp_f1 > 1.0000000116860974e-07) { + return var_f31 * (temp_f3 / temp_f1); + } + return 0.0f; + } + + return 0.0f; } -#pragma pop /* ############################################################################################## */ /* 80452810-80452814 000E10 0004+00 2/2 0/0 0/0 .sdata2 @3791 */ -SECTION_SDATA2 static f32 lit_3791 = 1.0f; - -/* 80452814-80452818 000E14 0004+00 1/1 0/0 0/0 .sdata2 @3807 */ -SECTION_SDATA2 static f32 lit_3807 = 57.2957763671875f; +SECTION_SDATA2 static f32 lit_3791 = 1.0f; // placed in a weird order, so can't remove until fixed /* 80088284-800882E0 082BC4 005C+00 0/0 1/1 0/0 .text zoomFovy__8dCamMathFff */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamMath::zoomFovy(f32 param_0, f32 param_1) { - nofralloc -#include "asm/d/d_cam_param/zoomFovy__8dCamMathFff.s" -} -#pragma pop +f32 dCamMath::zoomFovy(f32 param_0, f32 param_1) { + cDegree deg(param_0); -/* 800882E0-8008831C 082C20 003C+00 0/0 1/1 0/0 .text __dt__7cDegreeFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm cDegree::~cDegree() { -extern "C" asm void __dt__7cDegreeFv() { - nofralloc -#include "asm/d/d_cam_param/__dt__7cDegreeFv.s" + f32 radian = cM_atan2f(deg.Sin(), param_1 * deg.Cos()); + return cAngle::r2d(radian); } -#pragma pop /* 8008831C-80088384 082C5C 0068+00 0/0 1/1 0/0 .text xyzRotateX__8dCamMathFR4cXyz7cSAngle */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamMath::xyzRotateX(cXyz& param_0, cSAngle param_1) { - nofralloc -#include "asm/d/d_cam_param/xyzRotateX__8dCamMathFR4cXyz7cSAngle.s" +cXyz dCamMath::xyzRotateX(cXyz& i_xyz, cSAngle i_angle) { + Mtx m; + cXyz rot_xyz; + + s16 angle = i_angle.Val(); + mDoMtx_XrotS(m, angle); + PSMTXMultVec(m, &i_xyz, &rot_xyz); + return rot_xyz; } -#pragma pop /* 80088384-800883EC 082CC4 0068+00 0/0 13/13 0/0 .text xyzRotateY__8dCamMathFR4cXyz7cSAngle */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamMath::xyzRotateY(cXyz& param_0, cSAngle param_1) { - nofralloc -#include "asm/d/d_cam_param/xyzRotateY__8dCamMathFR4cXyz7cSAngle.s" +cXyz dCamMath::xyzRotateY(cXyz& i_xyz, cSAngle i_angle) { + Mtx m; + cXyz rot_xyz; + + s16 angle = i_angle.Val(); + mDoMtx_YrotS(m, angle); + PSMTXMultVec(m, &i_xyz, &rot_xyz); + return rot_xyz; } -#pragma pop /* 800883EC-80088434 082D2C 0048+00 0/0 9/9 0/0 .text * xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamMath::xyzHorizontalDistance(cXyz& param_0, cXyz& param_1) { - nofralloc -#include "asm/d/d_cam_param/xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz.s" +f32 dCamMath::xyzHorizontalDistance(cXyz& i_posA, cXyz& i_posB) { + f64 x = i_posA.x - i_posB.x; + f64 z = i_posA.z - i_posB.z; + + return sqrt((x * x) + (z * z)); } -#pragma pop /* ############################################################################################## */ /* 803AC500-803AC50C 009620 000C+00 2/2 0/0 0/0 .data __vt__11dCamSetup_c */ @@ -179,98 +135,56 @@ SECTION_DATA extern void* __vt__9dCstick_c[3 + 1 /* padding */] = { NULL, }; -/* 80452818-8045281C 000E18 0004+00 3/3 0/0 0/0 .sdata2 @3991 */ -SECTION_SDATA2 static f32 lit_3991 = 1.0f / 5.0f; - -/* 8045281C-80452820 000E1C 0004+00 1/1 0/0 0/0 .sdata2 @3992 */ -SECTION_SDATA2 static f32 lit_3992 = 19.0f / 20.0f; - /* 80088434-8008845C 082D74 0028+00 1/1 0/0 0/0 .text __ct__9dCstick_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dCstick_c::dCstick_c() { - nofralloc -#include "asm/d/d_cam_param/__ct__9dCstick_cFv.s" +dCstick_c::dCstick_c() { + mThresholdLow = 0.2f; + mThresholdHigh = 0.95f; + mInputSpeed = 6; } -#pragma pop /* 8008845C-80088464 082D9C 0008+00 0/0 1/1 0/0 .text Shift__9dCstick_cFUl */ bool dCstick_c::Shift(u32 param_0) { return false; } -/* ############################################################################################## */ -/* 80452820-80452824 000E20 0004+00 1/1 0/0 0/0 .sdata2 @4001 */ -SECTION_SDATA2 static f32 lit_4001 = 32.0f; - -/* 80452824-80452828 000E24 0004+00 2/2 0/0 0/0 .sdata2 @4002 */ -SECTION_SDATA2 static f32 lit_4002 = 25.0f; - -/* 80452828-8045282C 000E28 0004+00 2/2 0/0 0/0 .sdata2 @4003 */ -SECTION_SDATA2 static f32 lit_4003 = 2.0f / 5.0f; - -/* 8045282C-80452830 000E2C 0004+00 1/1 0/0 0/0 .sdata2 @4004 */ -SECTION_SDATA2 static f32 lit_4004 = 3.0f / 5.0f; - -/* 80452830-80452834 000E30 0004+00 1/1 0/0 0/0 .sdata2 @4005 */ -SECTION_SDATA2 static f32 lit_4005 = 3.0f; - -/* 80452834-80452838 000E34 0004+00 2/2 0/0 0/0 .sdata2 @4006 */ -SECTION_SDATA2 static f32 lit_4006 = 15.0f; - -/* 80452838-8045283C 000E38 0004+00 2/2 0/0 0/0 .sdata2 @4007 */ -SECTION_SDATA2 static f32 lit_4007 = 0.5f; - -/* 8045283C-80452840 000E3C 0004+00 2/2 0/0 0/0 .sdata2 @4008 */ -SECTION_SDATA2 static f32 lit_4008 = 3.0f / 10.0f; - -/* 80452840-80452844 000E40 0004+00 2/2 0/0 0/0 .sdata2 @4009 */ -SECTION_SDATA2 static f32 lit_4009 = 10.0f; - -/* 80452844-80452848 000E44 0004+00 2/2 0/0 0/0 .sdata2 @4010 */ -SECTION_SDATA2 static f32 lit_4010 = 1.0f / 10.0f; - -/* 80452848-8045284C 000E48 0004+00 2/2 0/0 0/0 .sdata2 @4011 */ -SECTION_SDATA2 static f32 lit_4011 = 0.75f; - -/* 8045284C-80452850 000E4C 0004+00 2/2 0/0 0/0 .sdata2 @4012 */ -SECTION_SDATA2 static f32 lit_4012 = 80.0f; - -/* 80452850-80452854 000E50 0004+00 1/1 0/0 0/0 .sdata2 @4013 */ -SECTION_SDATA2 static f32 lit_4013 = 2.0f / 25.0f; - -/* 80452854-80452858 000E54 0004+00 2/2 0/0 0/0 .sdata2 @4014 */ -SECTION_SDATA2 static f32 lit_4014 = 120.0f; - /* 80088464-800884F0 082DA4 008C+00 1/1 0/0 0/0 .text __ct__11dCamBGChk_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dCamBGChk_c::dCamBGChk_c() { - nofralloc -#include "asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s" -} -#pragma pop +dCamBGChk_c::dCamBGChk_c() { + mFloorMargin = 32.0f; -/* ############################################################################################## */ -/* 8037A7E0-8037A7E0 006E40 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_8037A7E0 = "camstyle.dat"; -/* @stringBase0 padding */ -SECTION_DEAD static char const* const pad_8037A7ED = "\0\0"; -#pragma pop + mChkInfo[0].mDistance = lit_3791; + mChkInfo[0].mChkAngle = 25.0f; + mChkInfo[0].mWeightH = 0.4f; + mChkInfo[0].mWeightL = 0.6f; + + mChkInfo[1].mDistance = 3.0f; + mChkInfo[1].mChkAngle = 15.0f; + mChkInfo[1].mWeightH = 0.5f; + mChkInfo[1].mWeightL = 0.3f; + + mFwdBackMargin = 10.0f; + mFwdCushion = 0.1f; + field_0x2c = 0.2f; + mGazeBackMargin = 10.0f; + mCornerCushion = 0.75f; + mWallCushion = 0.5f; + mWallUpDistance = 80.0f; + mWallBackCushion = 0.08f; + mCornerAngleMax = 120.0f; +} /* 800884F0-8008858C 082E30 009C+00 0/0 1/1 0/0 .text __ct__11dCamParam_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dCamParam_c::dCamParam_c(s32 param_0) { - nofralloc -#include "asm/d/d_cam_param/__ct__11dCamParam_cFl.s" +dCamParam_c::dCamParam_c(s32 i_styleID) { + u8* cam_data = (u8*)dComIfG_getObjectRes(dComIfGp_getCameraParamFileName(0), "camstyle.dat"); + + mCamStyleData = (dCamStyleData::StyleData*)(cam_data + 8); + mStyleNum = ((dCamStyleData*)cam_data)->mStyleNum; + Change(i_styleID); + + mMapToolFovy = 0xFF; + mMapToolArg0 = 0xFF; + mMapToolArg1 = 0xFF; + mMapToolArg2 = -1; } -#pragma pop /* 8008858C-800885D4 082ECC 0048+00 1/0 1/1 0/0 .text __dt__11dCamParam_cFv */ #pragma push @@ -284,104 +198,118 @@ extern "C" asm void __dt__11dCamParam_cFv() { #pragma pop /* 800885D4-80088620 082F14 004C+00 1/1 7/7 0/0 .text Change__11dCamParam_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamParam_c::Change(s32 param_0) { - nofralloc -#include "asm/d/d_cam_param/Change__11dCamParam_cFl.s" +int dCamParam_c::Change(s32 i_styleID) { + if (i_styleID >= 0 && i_styleID < mStyleNum) { + mStyleID = i_styleID; + mCurrentStyle = &mCamStyleData[mStyleID]; + return 1; + } + + mStyleID = 0; + mCurrentStyle = mCamStyleData; + return 0; } -#pragma pop /* 80088620-80088668 082F60 0048+00 0/0 4/4 0/0 .text SearchStyle__11dCamParam_cFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamParam_c::SearchStyle(u32 param_0) { - nofralloc -#include "asm/d/d_cam_param/SearchStyle__11dCamParam_cFUl.s" +int dCamParam_c::SearchStyle(u32 param_0) { + int styleID = -1; + + for (int i = 0; i < mStyleNum; i++) { + if (param_0 == mCamStyleData[i].field_0x0) { + styleID = i; + break; + } + } + + return styleID; } -#pragma pop /* ############################################################################################## */ /* 80452858-8045285C 000E58 0004+00 1/1 0/0 0/0 .sdata2 @4058 */ -SECTION_SDATA2 static f32 lit_4058 = 0.25f; - -/* 8045285C-80452860 000E5C 0004+00 1/1 0/0 0/0 .sdata2 @4119 */ -SECTION_SDATA2 static f32 lit_4119 = 100000.0f; - -/* 80452860-80452864 000E60 0004+00 1/1 0/0 0/0 .sdata2 @4120 */ -SECTION_SDATA2 static f32 lit_4120 = 1.0f / 20.0f; - -/* 80452864-80452868 000E64 0004+00 1/1 0/0 0/0 .sdata2 @4121 */ -SECTION_SDATA2 static f32 lit_4121 = -60.0f; - -/* 80452868-8045286C 000E68 0004+00 1/1 0/0 0/0 .sdata2 @4122 */ -SECTION_SDATA2 static f32 lit_4122 = 33.0f / 100.0f; - -/* 8045286C-80452870 000E6C 0004+00 1/1 0/0 0/0 .sdata2 @4123 */ -SECTION_SDATA2 static f32 lit_4123 = 1.0f / 50.0f; - -/* 80452870-80452874 000E70 0004+00 1/1 0/0 0/0 .sdata2 @4124 */ -SECTION_SDATA2 static f32 lit_4124 = 100.0f; - -/* 80452874-80452878 000E74 0004+00 1/1 0/0 0/0 .sdata2 @4125 */ -SECTION_SDATA2 static f32 lit_4125 = 7.0f / 25.0f; - -/* 80452878-8045287C 000E78 0004+00 1/1 0/0 0/0 .sdata2 @4126 */ -SECTION_SDATA2 static f32 lit_4126 = 3.0f / 20.0f; - -/* 8045287C-80452880 000E7C 0004+00 1/1 0/0 0/0 .sdata2 @4127 */ -SECTION_SDATA2 static f32 lit_4127 = 0.004999999888241291f; - -/* 80452880-80452884 000E80 0004+00 1/1 0/0 0/0 .sdata2 @4128 */ -SECTION_SDATA2 static f32 lit_4128 = 3.0f / 50.0f; - -/* 80452884-80452888 000E84 0004+00 1/1 0/0 0/0 .sdata2 @4129 */ -SECTION_SDATA2 static f32 lit_4129 = 70.0f; - -/* 80452888-8045288C 000E88 0004+00 1/1 0/0 0/0 .sdata2 @4130 */ -SECTION_SDATA2 static f32 lit_4130 = 60.0f; - -/* 8045288C-80452890 000E8C 0004+00 1/1 0/0 0/0 .sdata2 @4131 */ -SECTION_SDATA2 static f32 lit_4131 = 35.0f; - -/* 80452890-80452894 000E90 0004+00 1/1 0/0 0/0 .sdata2 @4132 */ -SECTION_SDATA2 static f32 lit_4132 = 65.0f; - -/* 80452894-80452898 000E94 0004+00 1/1 0/0 0/0 .sdata2 @4133 */ -SECTION_SDATA2 static f32 lit_4133 = 30.0f; - -/* 80452898-8045289C 000E98 0004+00 1/1 0/0 0/0 .sdata2 @4134 */ -SECTION_SDATA2 static f32 lit_4134 = 27.0f; - -/* 8045289C-804528A0 000E9C 0004+00 1/1 0/0 0/0 .sdata2 @4135 */ -SECTION_SDATA2 static f32 lit_4135 = 45.0f; - -/* 804528A0-804528A4 000EA0 0004+00 1/1 0/0 0/0 .sdata2 @4136 */ -SECTION_SDATA2 static f32 lit_4136 = 3500.0f; - -/* 804528A4-804528A8 000EA4 0004+00 1/1 0/0 0/0 .sdata2 @4137 */ -SECTION_SDATA2 static f32 lit_4137 = 4.0f; - -/* 804528A8-804528AC 000EA8 0004+00 1/1 0/0 0/0 .sdata2 @4138 */ -SECTION_SDATA2 static f32 lit_4138 = 1200.0f; - -/* 804528AC-804528B0 000EAC 0004+00 1/1 0/0 0/0 .sdata2 @4139 */ -SECTION_SDATA2 static f32 lit_4139 = 17.0f / 20.0f; - -/* 804528B0-804528B4 000EB0 0004+00 1/1 0/0 0/0 .sdata2 @4140 */ -SECTION_SDATA2 static f32 lit_4140 = 50.0f; +SECTION_SDATA2 static f32 lit_4058 = 0.25f; // placed in a weird order, so can't remove until fixed /* 80088668-800888B8 082FA8 0250+00 0/0 1/1 0/0 .text __ct__11dCamSetup_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dCamSetup_c::dCamSetup_c() { - nofralloc -#include "asm/d/d_cam_param/__ct__11dCamSetup_cFv.s" +dCamSetup_c::dCamSetup_c() { + f32 temp_1 = lit_3791; + + mDrawNear = temp_1; + mDrawFar = 100000.0f; + field_0xc = 1; + mModeSwitchType = -1; + mForceType = -1; + mCusCus = 0.2f; + field_0x24 = 0.05f; + field_0x60 = 80.0f; + field_0x5c = -60.0f; + field_0x28 = 0.33f; + field_0x2c = 0.02f; + field_0x50 = 100.0f; + field_0x30 = 0.75f; + mBaseCushion = 0.28f; + mJumpCushion = temp_1; + field_0x58 = 0.15f; + field_0x44 = 0.005f; + field_0x54 = 0.06f; + mCurveWeight = temp_1; + field_0x34 = 25.0f; + mSubjLinkCullDist = 70.0f; + mParallelDist = 60.0f; + mTrimVistaHeight = 35.0f; + mTrimCineScopeHeight = 65.0f; + field_0xb0 = 150; + field_0xb4 = 60.0f; + mManualStartCThreshold = 0.3f; + mManualEndVal = 0.2f; + mFalseValue = 0.1f; + mFalseAngle = 30.0f; + mDebugFlags = 1; + + field_0xa = 0x118; + field_0xa |= 0x200; + field_0xa |= 0x400; + + mChargeLatitude = 27.0f; + mChargeTimer = 90; + mChargeBRatio = 0.5f; + mLockonChangeTimer = 40; + mLockonChangeCushion = lit_4058; + field_0x6c = 45.0f; + mForceLockOffDist = 3500.0f; + mForceLockOffTimer = 90; + mThrowTimer = 30; + mThrowVAngle = 25.0f; + mThrowCushion = 0.05f; + mThrowCtrOffset = 10.0f; + field_0x78 = 0.5f; + field_0x7c = 0.4f; + field_0x80 = 10.0f; + field_0x84 = 4.0f; + field_0xd4 = 60.0f; + field_0xd8 = 100.0f; + mWindShakeCtr = 15.0f; + mWindShakeFvy = 0.3f; + mMapToolCamShortTimer = 60; + mMapToolCamLongTimer = 120; + mDebugFlags |= 0x4800; + field_0x15c = 0.0f; + field_0x160 = 0.0f; + mDebugFlags |= 0x800; + mWaitRollTimer = 120; + mWaitRollSpeed = 0.02f; + field_0x16c = 1200.0f; + field_0xe0 = 0.06f; + field_0xec = 25; + field_0xf4 = 0.85f; + field_0xf8 = temp_1; + field_0xf0 = 12; + field_0xe4 = 50.0f; + field_0xe8 = 0.0f; + mScreensaverFirstWaitTimer = 30; + mScreensaverWaitTimer = 600; + mScreensaverExecTimer = 120; + + dCam_getBody()->EventRecoverNotime(); } -#pragma pop /* 800888B8-80088918 0831F8 0060+00 1/0 1/1 0/0 .text __dt__11dCamSetup_cFv */ #pragma push @@ -394,38 +322,32 @@ extern "C" asm void __dt__11dCamSetup_cFv() { } #pragma pop -/* ############################################################################################## */ -/* 804528B4-804528B8 000EB4 0004+00 1/1 0/0 0/0 .sdata2 @4173 */ -SECTION_SDATA2 static f32 lit_4173 = 182.04444885253906f; - /* 80088918-80088988 083258 0070+00 0/0 1/1 0/0 .text CheckLatitudeRange__11dCamSetup_cFPs */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamSetup_c::CheckLatitudeRange(s16* param_0) { - nofralloc -#include "asm/d/d_cam_param/CheckLatitudeRange__11dCamSetup_cFPs.s" +bool dCamSetup_c::CheckLatitudeRange(s16* param_0) { + s16 temp0 = cAngle::d2s(field_0x60); + s16 temp1 = cAngle::d2s(field_0x5c); + + if (*param_0 > temp0) { + *param_0 = temp0; + return false; + } + + if (*param_0 < temp1) { + *param_0 = temp1; + return false; + } + + return true; } -#pragma pop /* 80088988-800889B0 0832C8 0028+00 0/0 1/1 0/0 .text PlayerHideDist__11dCamSetup_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dCamSetup_c::PlayerHideDist() { - nofralloc -#include "asm/d/d_cam_param/PlayerHideDist__11dCamSetup_cFv.s" +f32 dCamSetup_c::PlayerHideDist() { + if (daPy_py_c::i_checkNowWolf()) { + return 120.0f; + } + + return mSubjLinkCullDist; } -#pragma pop /* 800889B0-800889F8 0832F0 0048+00 1/0 0/0 0/0 .text __dt__9dCstick_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dCstick_c::~dCstick_c() { - nofralloc -#include "asm/d/d_cam_param/__dt__9dCstick_cFv.s" -} -#pragma pop - -/* 8037A7E0-8037A7E0 006E40 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +dCstick_c::~dCstick_c() {} diff --git a/src/d/d_door_param2.cpp b/src/d/d_door_param2.cpp index 8c98dacc82..ba9fcd64f3 100644 --- a/src/d/d_door_param2.cpp +++ b/src/d/d_door_param2.cpp @@ -1,257 +1,107 @@ -// -// Generated By: dol2asm -// Translation Unit: d/d_door_param2 -// +/** + * d_door_param2.cpp + * + */ #include "d/d_door_param2.h" -#include "dol2asm.h" -#include "dolphin/types.h" - -// -// Types: -// - -struct fopAc_ac_c {}; - -struct door_param2_c { - /* 8003A188 */ void getKind(fopAc_ac_c*); - /* 8003A194 */ void getDoorModel(fopAc_ac_c*); - /* 8003A1A0 */ void getFrontOption(fopAc_ac_c*); - /* 8003A1AC */ void getBackOption(fopAc_ac_c*); - /* 8003A1B8 */ void getFRoomNo(fopAc_ac_c*); - /* 8003A1C4 */ void getBRoomNo(fopAc_ac_c*); - /* 8003A1D0 */ void getSwbit(fopAc_ac_c*); - /* 8003A1DC */ void getSwbit2(fopAc_ac_c*); - /* 8003A1E8 */ void getSwbit3(fopAc_ac_c*); - /* 8003A1F4 */ void isMsgDoor(fopAc_ac_c*); - /* 8003A200 */ void getEventNo(fopAc_ac_c*); - /* 8003A20C */ void getEventNo2(fopAc_ac_c*); - /* 8003A218 */ void getMsgNo(fopAc_ac_c*); - /* 8003A224 */ void getExitNo(fopAc_ac_c*); - /* 8003A230 */ void getFLightInf(fopAc_ac_c*); - /* 8003A23C */ void getBLightInf(fopAc_ac_c*); - /* 8003A248 */ void getMFLightInf(fopAc_ac_c*); - /* 8003A254 */ void getMBLightInf(fopAc_ac_c*); -}; - -// -// Forward References: -// - -extern "C" void getKind__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getDoorModel__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getFrontOption__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getBackOption__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getFRoomNo__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getBRoomNo__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getSwbit__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getSwbit2__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getSwbit3__13door_param2_cFP10fopAc_ac_c(); -extern "C" void isMsgDoor__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getEventNo__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getEventNo2__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getMsgNo__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getExitNo__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getFLightInf__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getBLightInf__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getMFLightInf__13door_param2_cFP10fopAc_ac_c(); -extern "C" void getMBLightInf__13door_param2_cFP10fopAc_ac_c(); - -// -// External References: -// - -// -// Declarations: -// /* 8003A188-8003A194 034AC8 000C+00 0/0 0/0 17/17 .text getKind__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getKind(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getKind__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getKind(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 0, 5); } -#pragma pop /* 8003A194-8003A1A0 034AD4 000C+00 0/0 0/0 2/2 .text getDoorModel__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getDoorModel(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getDoorModel__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getDoorModel(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 5, 3); } -#pragma pop /* 8003A1A0-8003A1AC 034AE0 000C+00 0/0 0/0 17/17 .text * getFrontOption__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getFrontOption(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getFrontOption__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getFrontOption(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 8, 2); } -#pragma pop /* 8003A1AC-8003A1B8 034AEC 000C+00 0/0 0/0 14/14 .text * getBackOption__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getBackOption(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getBackOption__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getBackOption(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 10, 3); } -#pragma pop /* 8003A1B8-8003A1C4 034AF8 000C+00 0/0 0/0 19/19 .text getFRoomNo__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getFRoomNo(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getFRoomNo__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getFRoomNo(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 13, 6); } -#pragma pop /* 8003A1C4-8003A1D0 034B04 000C+00 0/0 0/0 10/10 .text getBRoomNo__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getBRoomNo(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getBRoomNo__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getBRoomNo(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 19, 6); } -#pragma pop /* 8003A1D0-8003A1DC 034B10 000C+00 0/0 0/0 25/25 .text getSwbit__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getSwbit(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getSwbit__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getSwbit(fopAc_ac_c* i_actor) { + return i_actor->orig.angle.z & 0xFF; } -#pragma pop /* 8003A1DC-8003A1E8 034B1C 000C+00 0/0 0/0 12/12 .text getSwbit2__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getSwbit2(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getSwbit2__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getSwbit2(fopAc_ac_c* i_actor) { + return (i_actor->orig.angle.z >> 8) & 0xFF; } -#pragma pop /* 8003A1E8-8003A1F4 034B28 000C+00 0/0 0/0 3/3 .text getSwbit3__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getSwbit3(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getSwbit3__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getSwbit3(fopAc_ac_c* i_actor) { + return (i_actor->orig.angle.x >> 8) & 0xFF; } -#pragma pop /* 8003A1F4-8003A200 034B34 000C+00 0/0 0/0 4/4 .text isMsgDoor__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::isMsgDoor(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/isMsgDoor__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::isMsgDoor(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 31, 1); } -#pragma pop /* 8003A200-8003A20C 034B40 000C+00 0/0 0/0 3/3 .text getEventNo__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getEventNo(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getEventNo__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getEventNo(fopAc_ac_c* i_actor) { + return i_actor->orig.angle.x & 0xFF; } -#pragma pop /* 8003A20C-8003A218 034B4C 000C+00 0/0 0/0 2/2 .text getEventNo2__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getEventNo2(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getEventNo2__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getEventNo2(fopAc_ac_c* i_actor) { + return (i_actor->orig.angle.x >> 8) & 0xFF; } -#pragma pop /* 8003A218-8003A224 034B58 000C+00 0/0 0/0 2/2 .text getMsgNo__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getMsgNo(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getMsgNo__13door_param2_cFP10fopAc_ac_c.s" +u16 door_param2_c::getMsgNo(fopAc_ac_c* i_actor) { + return i_actor->orig.angle.x; } -#pragma pop /* 8003A224-8003A230 034B64 000C+00 0/0 0/0 6/6 .text getExitNo__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getExitNo(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getExitNo__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getExitNo(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 25, 6); } -#pragma pop /* 8003A230-8003A23C 034B70 000C+00 0/0 0/0 1/1 .text getFLightInf__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getFLightInf(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getFLightInf__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getFLightInf(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 25, 3); } -#pragma pop /* 8003A23C-8003A248 034B7C 000C+00 0/0 0/0 1/1 .text getBLightInf__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getBLightInf(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getBLightInf__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getBLightInf(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 28, 3); } -#pragma pop /* 8003A248-8003A254 034B88 000C+00 0/0 0/0 1/1 .text getMFLightInf__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getMFLightInf(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getMFLightInf__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getMFLightInf(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 19, 3); } -#pragma pop /* 8003A254-8003A260 034B94 000C+00 0/0 0/0 1/1 .text getMBLightInf__13door_param2_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void door_param2_c::getMBLightInf(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_door_param2/getMBLightInf__13door_param2_cFP10fopAc_ac_c.s" +u8 door_param2_c::getMBLightInf(fopAc_ac_c* i_actor) { + return fopAcM_GetParamBit(i_actor, 22, 3); } -#pragma pop diff --git a/src/d/d_drawlist.cpp b/src/d/d_drawlist.cpp index 772ac395b5..e52dd6bcdc 100644 --- a/src/d/d_drawlist.cpp +++ b/src/d/d_drawlist.cpp @@ -6,13 +6,14 @@ #include "d/d_drawlist.h" #include "JSystem/J3DGraphBase/J3DShape.h" #include "JSystem/J3DGraphBase/J3DSys.h" +#include "d/com/d_com_inf_game.h" #include "dol2asm.h" #include "dolphin/mtx/mtx44.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" -#include "m_Do/m_Do_mtx.h" -#include "m_Do/m_Do_lib.h" #include "m_Do/m_Do_graphic.h" +#include "m_Do/m_Do_lib.h" +#include "m_Do/m_Do_mtx.h" // // Types: @@ -50,16 +51,6 @@ struct dDlst_2DM_c { /* 80052C58 */ void draw(); }; -struct cBgS_ShdwDraw { - /* 80267F88 */ cBgS_ShdwDraw(); - /* 80267FD0 */ ~cBgS_ShdwDraw(); - /* 80268048 */ void Set(cXyz&, cXyz&); -}; - -struct cBgS { - /* 80074840 */ void ShdwDraw(cBgS_ShdwDraw*); -}; - struct ShdwDrawPoly_c { /* 80054A6C */ ~ShdwDrawPoly_c(); }; @@ -226,13 +217,9 @@ extern "C" extern void* __vt__12dDlst_base_c[3]; extern "C" extern void* __vt__9J3DPacket[5]; extern "C" u8 now__14mDoMtx_stack_c[48]; extern "C" u8 mClipper__14mDoLib_clipper[92]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" extern u8 g_envHIO[68]; extern "C" u8 sincosTable___5JMath[65536]; extern "C" u8 mBackColor__13mDoGph_gInf_c[4]; -extern "C" extern u8 g_clearColor[4]; -extern "C" extern u32 g_blackColor; -extern "C" extern u32 g_whiteColor; extern "C" f32 mSystemFar__14mDoLib_clipper; extern "C" f32 mFovyRate__14mDoLib_clipper; extern "C" u8 sOldVcdVatCmd__8J3DShape[4]; @@ -242,8 +229,7 @@ extern "C" u8 sOldVcdVatCmd__8J3DShape[4]; // /* 80051AC0-80051ADC 04C400 001C+00 0/0 3/3 0/0 .text setViewPort__14dDlst_window_cFffffff */ -void dDlst_window_c::setViewPort(f32 xOrig, f32 yOrig, f32 width, f32 height, f32 nearZ, - f32 farZ) { +void dDlst_window_c::setViewPort(f32 xOrig, f32 yOrig, f32 width, f32 height, f32 nearZ, f32 farZ) { mXOrig = xOrig; mYOrig = yOrig; mWidth = width; @@ -346,779 +332,104 @@ extern "C" asm void draw__12dDlst_2DT2_cFv() { /* ############################################################################################## */ /* 803A87A0-803A87C0 0058C0 000C+14 2/2 0/0 0/0 .data cNullVec__6Z2Calc */ -SECTION_DATA static u8 cNullVec__6Z2Calc[12 + 20 /* padding */] = { - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; /* 803A87C0-803A8800 0058E0 003C+04 0/0 0/0 0/0 .data l_frontZMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_frontZMat[60 + 4 /* padding */] = { - 0x61, - 0x40, - 0x00, - 0x00, - 0x07, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x40, - 0x10, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_frontZMat[] ALIGN_DECL(32) = { + 0x61, 0x40, 0x00, 0x00, 0x07, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x40, 0x10, 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, }; #pragma pop /* 803A8800-803A882C 005920 002A+02 0/0 0/0 0/0 .data l_frontNoZSubMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_frontNoZSubMat[42 + 2 /* padding */] = { - 0x61, - 0x40, - 0x00, - 0x00, - 0x06, - 0x61, - 0x41, - 0x00, - 0x09, - 0x35, - 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, - /* padding */ - 0x00, - 0x00, +SECTION_DATA static u8 l_frontNoZSubMat[] ALIGN_DECL(32) = { + 0x61, 0x40, 0x00, 0x00, 0x06, 0x61, 0x41, 0x00, 0x09, 0x35, 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, }; #pragma pop /* 803A882C-803A88A0 00594C 0060+14 0/1 0/0 0/0 .data l_shadowVolPos */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowVolPos[96 + 20 /* padding */] = { - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xC3, - 0x96, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xC3, - 0x96, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xC3, - 0x96, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xC3, - 0x96, - 0x00, - 0x00, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static Vec l_shadowVolPos[] = { + {-1.0f, -1.0f, 0.0f}, {-1.0f, -1.0f, -300.0f}, {-1.0f, 1.0f, 0.0f}, {-1.0f, 1.0f, -300.0f}, + {1.0f, -1.0f, 0.0f}, {1.0f, -1.0f, -300.0f}, {1.0f, 1.0f, 0.0f}, {1.0f, 1.0f, -300.0f}, }; #pragma pop /* 803A88A0-803A88E0 0059C0 003B+05 0/0 0/0 0/0 .data l_shadowVolDL */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowVolDL[59 + 5 /* padding */] = { - 0x80, - 0x00, - 0x18, - 0x06, - 0x02, - 0x03, - 0x07, - 0x00, - 0x04, - 0x05, - 0x01, - 0x06, - 0x04, - 0x00, - 0x02, - 0x07, - 0x05, - 0x04, - 0x06, - 0x03, - 0x01, - 0x05, - 0x07, - 0x02, - 0x00, - 0x01, - 0x03, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowVolDL[] ALIGN_DECL(32) = { + 0x80, 0x00, 0x18, 0x06, 0x02, 0x03, 0x07, 0x00, 0x04, 0x05, 0x01, 0x06, 0x04, 0x00, 0x02, + 0x07, 0x05, 0x04, 0x06, 0x03, 0x01, 0x05, 0x07, 0x02, 0x00, 0x01, 0x03, 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, }; #pragma pop /* 803A88E0-803A8940 005A00 005A+06 1/1 0/0 0/0 .data l_shadowProjMat */ -SECTION_DATA static u8 l_shadowProjMat[90 + 6 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x03, - 0xC0, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xFF, - 0x61, - 0xC1, - 0x08, - 0xE6, - 0x70, - 0x61, - 0x43, - 0x00, - 0x00, - 0x01, - 0x61, - 0x40, - 0x00, - 0x00, - 0x07, - 0x61, - 0x41, - 0x00, - 0x04, - 0xAD, - 0x61, - 0xF3, - 0x64, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x01, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x00, - 0x61, - 0x00, - 0x00, - 0x40, - 0x01, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowProjMat[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x03, 0xC0, 0x61, 0xC0, 0x08, 0xFF, 0xFF, 0x61, 0xC1, 0x08, 0xE6, 0x70, + 0x61, 0x43, 0x00, 0x00, 0x01, 0x61, 0x40, 0x00, 0x00, 0x07, 0x61, 0x41, 0x00, 0x04, 0xAD, + 0x61, 0xF3, 0x64, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x10, + 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x40, 0x01, 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, }; /* 803A8940-803A89A0 005A60 005A+06 0/0 0/0 0/0 .data l_shadowVolMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowVolMat[90 + 6 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x00, - 0x00, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xFC, - 0x61, - 0xC1, - 0x08, - 0xFF, - 0x90, - 0x61, - 0x43, - 0x00, - 0x00, - 0x41, - 0x61, - 0x40, - 0x00, - 0x00, - 0x0D, - 0x61, - 0x41, - 0x00, - 0x01, - 0x35, - 0x61, - 0xF3, - 0x7F, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x80, - 0x10, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowVolMat[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x00, 0x00, 0x61, 0xC0, 0x08, 0xFF, 0xFC, 0x61, 0xC1, 0x08, 0xFF, 0x90, + 0x61, 0x43, 0x00, 0x00, 0x41, 0x61, 0x40, 0x00, 0x00, 0x0D, 0x61, 0x41, 0x00, 0x01, 0x35, + 0x61, 0xF3, 0x7F, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x80, 0x10, 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, }; #pragma pop /* 803A89A0-803A8A00 005AC0 0055+0B 0/1 0/0 0/0 .data l_clearMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_clearMat[85 + 11 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x00, - 0x00, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xFF, - 0x61, - 0xC1, - 0x08, - 0xFF, - 0xA0, - 0x61, - 0x40, - 0x00, - 0x00, - 0x06, - 0x61, - 0x41, - 0x00, - 0x00, - 0x14, - 0x61, - 0xF3, - 0x7F, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x00, - 0x10, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_clearMat[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x00, 0x00, 0x61, 0xC0, 0x08, 0xFF, 0xFF, 0x61, 0xC1, 0x08, 0xFF, 0xA0, + 0x61, 0x40, 0x00, 0x00, 0x06, 0x61, 0x41, 0x00, 0x00, 0x14, 0x61, 0xF3, 0x7F, 0x00, 0x00, + 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, + 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x00, 0x10, 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, }; #pragma pop /* 803A8A00-803A8A60 005B20 0055+0B 0/1 0/0 0/0 .data l_frontMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_frontMat[85 + 11 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x00, - 0x00, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xFF, - 0x61, - 0xC1, - 0x08, - 0xFF, - 0x90, - 0x61, - 0x43, - 0x00, - 0x00, - 0x41, - 0x61, - 0x40, - 0x00, - 0x00, - 0x07, - 0x61, - 0x41, - 0x00, - 0x01, - 0x15, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x40, - 0x10, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_frontMat[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x00, 0x00, 0x61, 0xC0, 0x08, 0xFF, 0xFF, 0x61, 0xC1, 0x08, 0xFF, 0x90, + 0x61, 0x43, 0x00, 0x00, 0x41, 0x61, 0x40, 0x00, 0x00, 0x07, 0x61, 0x41, 0x00, 0x01, 0x15, + 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, + 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x40, 0x10, 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, }; #pragma pop /* 803A8A60-803A8A9C 005B80 003C+00 0/1 0/0 0/0 .data l_backSubMat */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_backSubMat[60] = { +SECTION_DATA static u8 l_backSubMat[] ALIGN_DECL(32) = { 0x61, 0x41, 0x00, 0x09, 0x35, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x80, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -1129,804 +440,105 @@ SECTION_DATA static u8 l_backSubMat[60] = { /* 803A8A9C-803A8B60 005BBC 00A8+1C 0/1 0/0 0/0 .data l_simpleShadowPos */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_simpleShadowPos[168 + 28 /* padding */] = { - 0x00, - 0x00, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0xBF, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - 0x3F, - 0x80, - 0x00, - 0x00, - /* padding */ - 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, +SECTION_DATA static Vec l_simpleShadowPos[] = { + {0.0f, -1.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {1.0f, -1.0f, -1.0f}, {1.0f, 0.0f, -1.0f}, + {-1.0f, -1.0f, -1.0f}, {-1.0f, 0.0f, -1.0f}, {-1.0f, -1.0f, 1.0f}, {-1.0f, 0.0f, 1.0f}, + {1.0f, -1.0f, 1.0f}, {1.0f, 0.0f, 1.0f}, {-1.0f, 1.0f, -1.0f}, {1.0f, 1.0f, -1.0f}, + {1.0f, 1.0f, 1.0f}, {-1.0f, 1.0f, 1.0f}, }; #pragma pop /* 803A8B60-803A8BC0 005C80 0058+08 0/1 0/0 0/0 .data l_shadowVolumeDL */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowVolumeDL[88 + 8 /* padding */] = { - 0x98, - 0x00, - 0x05, - 0x03, - 0x09, - 0x01, - 0x07, - 0x05, - 0x98, - 0x00, - 0x05, - 0x04, - 0x06, - 0x00, - 0x08, - 0x02, - 0x98, - 0x00, - 0x04, - 0x04, - 0x05, - 0x06, - 0x07, - 0x98, - 0x00, - 0x04, - 0x02, - 0x03, - 0x04, - 0x05, - 0x98, - 0x00, - 0x04, - 0x08, - 0x09, - 0x02, - 0x03, - 0x98, - 0x00, - 0x04, - 0x06, - 0x07, - 0x08, - 0x09, - 0x98, - 0x00, - 0x03, - 0x01, - 0x05, - 0x03, - 0x98, - 0x00, - 0x03, - 0x00, - 0x02, - 0x04, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowVolumeDL[] ALIGN_DECL(32) = { + 0x98, 0x00, 0x05, 0x03, 0x09, 0x01, 0x07, 0x05, 0x98, 0x00, 0x05, 0x04, 0x06, 0x00, 0x08, + 0x02, 0x98, 0x00, 0x04, 0x04, 0x05, 0x06, 0x07, 0x98, 0x00, 0x04, 0x02, 0x03, 0x04, 0x05, + 0x98, 0x00, 0x04, 0x08, 0x09, 0x02, 0x03, 0x98, 0x00, 0x04, 0x06, 0x07, 0x08, 0x09, 0x98, + 0x00, 0x03, 0x01, 0x05, 0x03, 0x98, 0x00, 0x03, 0x00, 0x02, 0x04, 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, }; #pragma pop /* 803A8BC0-803A8C20 005CE0 0055+0B 0/1 0/0 0/0 .data l_shadowSealTexDL */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowSealTexDL[85 + 11 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x03, - 0xC0, - 0x61, - 0x40, - 0x00, - 0x00, - 0x06, - 0x61, - 0x41, - 0x00, - 0x06, - 0x15, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x01, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x00, - 0x61, - 0x00, - 0x00, - 0x40, - 0x01, - 0x80, - 0x00, - 0x04, - 0x0A, - 0x00, - 0x00, - 0x0B, - 0x01, - 0x00, - 0x0C, - 0x01, - 0x01, - 0x0D, - 0x00, - 0x01, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowSealTexDL[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x03, 0xC0, 0x61, 0x40, 0x00, 0x00, 0x06, 0x61, 0x41, 0x00, 0x06, 0x15, + 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, + 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x40, 0x01, 0x80, 0x00, 0x04, 0x0A, 0x00, 0x00, 0x0B, + 0x01, 0x00, 0x0C, 0x01, 0x01, 0x0D, 0x00, 0x01, 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, }; #pragma pop /* 803A8C20-803A8C80 005D40 0055+0B 0/1 0/0 0/0 .data l_shadowSealTex2DL */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowSealTex2DL[85 + 11 /* padding */] = { - 0x61, - 0x28, - 0x38, - 0x03, - 0xC0, - 0x61, - 0x40, - 0x00, - 0x00, - 0x06, - 0x61, - 0x41, - 0x00, - 0x06, - 0x15, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x01, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x00, - 0x61, - 0x00, - 0x00, - 0x40, - 0x01, - 0x80, - 0x00, - 0x04, - 0x0A, - 0x00, - 0x00, - 0x0B, - 0x02, - 0x00, - 0x0C, - 0x02, - 0x01, - 0x0D, - 0x00, - 0x01, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowSealTex2DL[] ALIGN_DECL(32) = { + 0x61, 0x28, 0x38, 0x03, 0xC0, 0x61, 0x40, 0x00, 0x00, 0x06, 0x61, 0x41, 0x00, 0x06, 0x15, + 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, + 0x00, 0x00, 0x00, 0x61, 0x00, 0x00, 0x40, 0x01, 0x80, 0x00, 0x04, 0x0A, 0x00, 0x00, 0x0B, + 0x02, 0x00, 0x0C, 0x02, 0x01, 0x0D, 0x00, 0x01, 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, }; #pragma pop /* 803A8C80-803A8D00 005DA0 0069+17 0/1 0/0 0/0 .data l_shadowSealDL */ #pragma push #pragma force_active on -SECTION_DATA static u8 l_shadowSealDL[105 + 23 /* padding */] = { - 0x10, - 0x00, - 0x00, - 0x10, - 0x0E, - 0x00, - 0x00, - 0x05, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x10, - 0x00, - 0x00, - 0x05, - 0x00, - 0x61, - 0x28, - 0x38, - 0x00, - 0x00, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xFF, - 0x61, - 0xC1, - 0x08, - 0xFF, - 0xB0, - 0x61, - 0x40, - 0x00, - 0x00, - 0x06, - 0x61, - 0x41, - 0x00, - 0x06, - 0xED, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x40, - 0x10, - 0x80, - 0x00, - 0x04, - 0x0A, - 0x0B, - 0x0C, - 0x0D, - 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, - /* padding */ - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, +SECTION_DATA static u8 l_shadowSealDL[] ALIGN_DECL(32) = { + 0x10, 0x00, 0x00, 0x10, 0x0E, 0x00, 0x00, 0x05, 0x00, 0x10, 0x00, 0x00, 0x10, 0x10, 0x00, + 0x00, 0x05, 0x00, 0x61, 0x28, 0x38, 0x00, 0x00, 0x61, 0xC0, 0x08, 0xFF, 0xFF, 0x61, 0xC1, + 0x08, 0xFF, 0xB0, 0x61, 0x40, 0x00, 0x00, 0x06, 0x61, 0x41, 0x00, 0x06, 0xED, 0x10, 0x00, + 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, + 0x01, 0x61, 0x00, 0x00, 0x40, 0x10, 0x80, 0x00, 0x04, 0x0A, 0x0B, 0x0C, 0x0D, 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, }; #pragma pop /* 803A8D00-803A8D7C 005E20 007B+01 1/1 0/0 0/0 .data l_matDL$5404 */ -SECTION_DATA static u8 l_matDL[123 + 1 /* padding */] = { - 0x10, - 0x00, - 0x00, - 0x10, - 0x0E, - 0x00, - 0x00, - 0x04, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x10, - 0x00, - 0x00, - 0x04, - 0x00, - 0x61, - 0x28, - 0x38, - 0x00, - 0x00, - 0x61, - 0xC0, - 0x08, - 0xFF, - 0xF2, - 0x61, - 0xC1, - 0x08, - 0xFF, - 0x90, - 0x61, - 0x43, - 0x00, - 0x00, - 0x41, - 0x61, - 0xF3, - 0x7F, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x3F, - 0x00, - 0x00, - 0x00, - 0x00, - 0x10, - 0x00, - 0x00, - 0x10, - 0x09, - 0x00, - 0x00, - 0x00, - 0x01, - 0x61, - 0x00, - 0x00, - 0x40, - 0x10, - 0x61, - 0xEE, - 0x00, - 0x00, - 0x00, - 0x61, - 0xEF, - 0x00, - 0x00, - 0x00, - 0x61, - 0xF0, - 0x00, - 0x00, - 0x00, - 0x61, - 0xF1, - 0x00, - 0x00, - 0x00, - 0x61, - 0xF2, - 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, - /* padding */ - 0x00, +SECTION_DATA static u8 l_matDL[] ALIGN_DECL(32) = { + 0x10, 0x00, 0x00, 0x10, 0x0E, 0x00, 0x00, 0x04, 0x00, 0x10, 0x00, 0x00, 0x10, 0x10, 0x00, 0x00, + 0x04, 0x00, 0x61, 0x28, 0x38, 0x00, 0x00, 0x61, 0xC0, 0x08, 0xFF, 0xF2, 0x61, 0xC1, 0x08, 0xFF, + 0x90, 0x61, 0x43, 0x00, 0x00, 0x41, 0x61, 0xF3, 0x7F, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x3F, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, + 0x40, 0x10, 0x61, 0xEE, 0x00, 0x00, 0x00, 0x61, 0xEF, 0x00, 0x00, 0x00, 0x61, 0xF0, 0x00, 0x00, + 0x00, 0x61, 0xF1, 0x00, 0x00, 0x00, 0x61, 0xF2, 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, }; /* 803A8D7C-803A8D8C 005E9C 0010+00 1/1 0/0 0/0 .data l_imageDrawColor$5405 */ -SECTION_DATA static GXColor l_imageDrawColor[4] = {{0xFF, 0x00, 0x00, 0x00}, - {0x00, 0xFF, 0x00, 0x00}, - {0x00, 0x00, 0xFF, 0x00}, - {0x00, 0x00, 0x00, 0xFF}}; +SECTION_DATA static GXColor l_imageDrawColor[4] = { + {255, 0, 0, 0}, + {0, 255, 0, 0}, + {0, 0, 255, 0}, + {0, 0, 0, 255}, +}; /* 803A8D8C-803A8D9C 005EAC 0010+00 0/1 0/0 0/0 .data l_tevColorChan$5438 */ #pragma push #pragma force_active on -SECTION_DATA static GXTevColor l_tevColorChan[4] = {GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, - GX_CH_ALPHA}; +SECTION_DATA static GXTevColor l_tevColorChan[4] = { + GX_CH_RED, + GX_CH_GREEN, + GX_CH_BLUE, + GX_CH_ALPHA, +}; #pragma pop /* 803A8D9C-803A8DCC 005EBC 0030+00 0/0 0/0 0/0 .data mtx_adj$5842 */ #pragma push #pragma force_active on -SECTION_DATA static u8 mtx_adj[48] = { - 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +SECTION_DATA static Mtx mtx_adj = { + {0.5f, 0.0f, 0.0f, 0.5f}, + {0.0f, -0.5f, 0.0f, 0.5f}, + {0.0f, 0.0f, 1.0f, 0.0f}, }; #pragma pop @@ -2759,52 +1371,20 @@ dDlst_shadowSimple_c::dDlst_shadowSimple_c() { /* ############################################################################################## */ /* 8037A178-8037A1A4 0067D8 002A+02 1/1 0/0 0/0 .rodata l_drawlistSize$5656 */ SECTION_RODATA static u16 const l_drawlistSize[21] = { - 0x0001, - 0x0001, - 0x0001, - 0x0080, - 0x0001, - 0x0001, - 0x0001, - 0x0080, - 0x0100, - 0x0001, - 0x0100, - 0x0001, - 0x0020, - 0x0010, - 0x0010, - 0x0020, - 0x0020, - 0x0100, - 0x0001, - 0x0004, - 0x0004, + 0x0001, 0x0001, 0x0001, 0x0080, 0x0001, 0x0001, 0x0001, 0x0080, 0x0100, 0x0001, 0x0100, + 0x0001, 0x0020, 0x0010, 0x0010, 0x0020, 0x0020, 0x0100, 0x0001, 0x0004, 0x0004, }; COMPILER_STRIP_GATE(0x8037A178, &l_drawlistSize); /* 8037A1A4-8037A1B0 006804 0009+03 1/1 0/0 0/0 .rodata l_nonSortId$5662 */ SECTION_RODATA static u8 const l_nonSortId[9] = { - 0x00, - 0x01, - 0x02, - 0x04, - 0x05, - 0x06, - 0x09, - 0x12, - 0x0D, + 0x00, 0x01, 0x02, 0x04, 0x05, 0x06, 0x09, 0x12, 0x0D, }; COMPILER_STRIP_GATE(0x8037A1A4, &l_nonSortId); /* 804520C4-804520CC 0006C4 0006+02 1/1 0/0 0/0 .sdata2 l_zSortId$5668 */ SECTION_SDATA2 static u8 l_zSortId[6] = { - 0x08, - 0x0A, - 0x0C, - 0x0E, - 0x10, - 0x11, + 0x08, 0x0A, 0x0C, 0x0E, 0x10, 0x11, }; /* 80056390-8005648C 050CD0 00FC+00 0/0 1/1 0/0 .text init__12dDlst_list_cFv */ @@ -2812,7 +1392,7 @@ SECTION_SDATA2 static u8 l_zSortId[6] = { void dDlst_list_c::init() { J3DDrawBuffer** buffer = mDrawBuffers; const u16* size = l_drawlistSize; - + for (int i = 0; i < 21; i++) { u32 bufSize = *size; size++; @@ -2959,7 +1539,7 @@ u8 dDlst_list_c::mWipe; f32 dDlst_list_c::mWipeRate; /* 80450ED8-80450EE0 0003D8 0004+04 2/2 0/0 0/0 .sbss mWipeSpeed__12dDlst_list_c */ -f32 dDlst_list_c::mWipeSpeed[1 + 1 /* padding */]; +f32 dDlst_list_c::mWipeSpeed; /* 804520D0-804520D4 0006D0 0004+00 1/1 0/0 0/0 .sdata2 @5809 */ SECTION_SDATA2 static f32 lit_5809 = 608.0f; @@ -2972,24 +1552,35 @@ SECTION_SDATA2 static f32 lit_5811 = 2.436000108718872f; /* 8005681C-800568D8 05115C 00BC+00 1/1 0/0 0/0 .text wipeIn__12dDlst_list_cFfR8_GXColor */ +// matches with literals +#ifdef NONMATCHING +void dDlst_list_c::wipeIn(f32 i_wipeSpeed, GXColor& i_wipeColor) { + mWipe = true; + mWipeSpeed = i_wipeSpeed; + mWipeColor = i_wipeColor; + mWipeRate = i_wipeSpeed >= 0.0f ? 0.0f : 1.0f; + + JKRArchive* main2d = dComIfGp_getMain2DArchive(); + ResTIMG* texture = (ResTIMG*)JKRArchive::getGlbResource('TIMG', "wipe_00.bti", main2d); + + mWipeDlst.init(texture, mDoGph_gInf_c::getMinX(), mDoGph_gInf_c::getMinY(), + mDoGph_gInf_c::getWidth(), mDoGph_gInf_c::getHeight(), 0, 1, 1, 2.0f, 2.436f); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dDlst_list_c::wipeIn(f32 param_0, _GXColor& param_1) { +asm void dDlst_list_c::wipeIn(f32 i_wipeSpeed, GXColor& i_wipeColor) { nofralloc #include "asm/d/d_drawlist/wipeIn__12dDlst_list_cFfR8_GXColor.s" } #pragma pop +#endif /* 800568D8-80056900 051218 0028+00 0/0 1/1 0/0 .text wipeIn__12dDlst_list_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDlst_list_c::wipeIn(f32 param_0) { - nofralloc -#include "asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s" +void dDlst_list_c::wipeIn(f32 i_wipeSpeed) { + wipeIn(-i_wipeSpeed, g_blackColor); } -#pragma pop /* ############################################################################################## */ /* 804520DC-804520E0 0006DC 0004+00 1/1 0/0 0/0 .sdata2 @5838 */ @@ -3060,6 +1651,6 @@ SECTION_DATA extern void* __vt__13dDlst_2DTri_c[3] = { /* 80450EE0-80450EE8 0003E0 0008+00 0/0 1/1 0/0 .sbss None */ extern u8 data_80450EE0[8]; -u8 data_80450EE0[8]; +u8 data_80450EE0[8] ALIGN_DECL(8); /* 8037A1B0-8037A1B0 006810 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/d/d_gameover.cpp b/src/d/d_gameover.cpp index 6385a1aa39..db84dfce6f 100644 --- a/src/d/d_gameover.cpp +++ b/src/d/d_gameover.cpp @@ -4,128 +4,23 @@ // #include "d/d_gameover.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" +#include "d/menu/d_menu_save.h" +#include "d/meter/d_meter_HIO.h" #include "dol2asm.h" -#include "dolphin/types.h" +#include "f_op/f_op_msg_mng.h" // // Types: // -struct request_of_phase_process_class {}; - -struct mDoRst { - static u8 mResetData[4 + 4 /* padding */]; -}; - -struct mDoGph_gInf_c { - static u8 mFadeColor[4]; - static u8 mFader[4]; - static u8 mFrameBufferTimg[4]; - static u8 mFrameBufferTex[4]; - static u8 mZbufferTex[4]; - static f32 mFadeRate; -}; - -struct dSv_player_item_c { - /* 80032FB8 */ void setItem(int, u8); - /* 80033030 */ void getItem(int, bool) const; -}; - -struct dSv_player_get_item_c { - /* 80033EC8 */ void isFirstBit(u8) const; -}; - -struct dSv_event_flag_c { - static u8 saveBitLabels[1644 + 4 /* padding */]; -}; - -struct dSv_event_c { - /* 800349A4 */ void offEventBit(u16); - /* 800349BC */ void isEventBit(u16) const; -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C1E4 */ void getResInfo(char const*, dRes_info_c*, int); -}; - -struct JUtility { - struct TColor {}; -}; - struct dMsgScrnLight_c { /* 80245934 */ dMsgScrnLight_c(u8, u8); /* 80245F90 */ void draw(f32*, f32, f32, f32, f32, f32, f32, JUtility::TColor, JUtility::TColor); -}; -struct JMSMesgEntry_c {}; - -struct dMeter2Info_c { - /* 8021C250 */ void getString(u32, char*, JMSMesgEntry_c*); - /* 8021E0C4 */ void resetMiniGameItem(bool); -}; - -struct dMenu_save_c { - /* 8019C314 */ ~dMenu_save_c(); - /* 801EF6A0 */ dMenu_save_c(); - /* 801EF7AC */ void _create(); - /* 801F09AC */ void _open(); - /* 801F0B28 */ void _delete(); - /* 801F1048 */ void _move(); - /* 801F69FC */ void _draw2(); -}; - -class dGov_HIO_c { -public: - /* 8019AFE0 */ dGov_HIO_c(); - /* 8019C06C */ virtual ~dGov_HIO_c(); - - /* 0x04 */ s8 field_0x4; - /* 0x08 */ f32 mScale; - /* 0x0C */ f32 mAlpha; - /* 0x10 */ f32 mAnimSpeed; - /* 0x14 */ GXColor mBlack; - /* 0x18 */ GXColor mWhite; -}; // Size: 0x1C - -struct dDlst_base_c {}; - -struct dDlst_list_c { - /* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*); -}; - -struct dDlst_Gameover_CAPTURE_c { - /* 8019ACF8 */ void draw(); - /* 8019C2CC */ ~dDlst_Gameover_CAPTURE_c(); -}; - -struct dDlst_GameOverScrnDraw_c { - /* 8019B940 */ dDlst_GameOverScrnDraw_c(JKRArchive*); - /* 8019BBFC */ ~dDlst_GameOverScrnDraw_c(); - /* 8019BCB0 */ void setBackAlpha(f32); - /* 8019BCF4 */ void draw(); -}; - -struct JFWDisplay { - static u8 sManager[4]; -}; - -struct J2DTextBox { - /* 80300660 */ void setString(char const*, ...); -}; - -struct J2DGrafContext {}; - -struct J2DScreen { - /* 802F8498 */ J2DScreen(); - /* 802F8648 */ void setPriority(char const*, u32, JKRArchive*); - /* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*); -}; - -struct J2DPicture { - /* 802FC800 */ J2DPicture(u64, JGeometry::TBox2 const&, ResTIMG const*, ResTLUT const*); + /* 0x00 */ u8 field_0x0[0x24]; }; // @@ -221,26 +116,19 @@ extern "C" void _savegpr_29(); extern "C" void _restgpr_24(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void strcmp(); -extern "C" extern u8 g_mDoMtx_identity[48 + 24 /* padding */]; extern "C" extern void* g_fopMsg_Method[5 + 1 /* padding */]; extern "C" extern void* __vt__12dDlst_base_c[3]; extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */]; extern "C" extern void* __vt__14mDoHIO_entry_c[3]; extern "C" extern void* __vt__16dDlst_MenuSave_c[4]; extern "C" extern void* __vt__23dDlst_MenuSaveExplain_c[4 + 18 /* padding */]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 g_meter2_info[248]; extern "C" u8 mFadeColor__13mDoGph_gInf_c[4]; -extern "C" extern u8 g_clearColor[4]; -extern "C" extern u32 g_blackColor; extern "C" u8 mFader__13mDoGph_gInf_c[4]; extern "C" u8 mFrameBufferTimg__13mDoGph_gInf_c[4]; extern "C" u8 mFrameBufferTex__13mDoGph_gInf_c[4]; extern "C" u8 mZbufferTex__13mDoGph_gInf_c[4]; extern "C" f32 mFadeRate__13mDoGph_gInf_c; extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */]; -extern "C" extern u8 g_menuHIO[8]; extern "C" u8 sManager__10JFWDisplay[4]; // @@ -264,6 +152,65 @@ SECTION_SDATA2 static f32 lit_3870 = 10.0f; /* 8019ACF8-8019AFE0 195638 02E8+00 1/0 0/0 0/0 .text draw__24dDlst_Gameover_CAPTURE_cFv */ +// matches with literals +#ifdef NONMATCHING +void dDlst_Gameover_CAPTURE_c::draw() { + GXTexObj tex_obj; + Mtx44 m; + + GXSetTexCopySrc(0, 0, 608, 448); + GXSetTexCopyDst(304, 224, GX_TF_RGB565, 1); + GXCopyTex(mDoGph_gInf_c::mZbufferTex, 0); + GXPixModeSync(); + GXInitTexObj(&tex_obj, mDoGph_gInf_c::mFrameBufferTex, 304, 224, + (GXTexFmt)mDoGph_gInf_c::mFrameBufferTimg->format, GX_CLAMP, GX_CLAMP, GX_FALSE); + GXInitTexObjLOD(&tex_obj, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, + GX_ANISO_1); + GXLoadTexObj(&tex_obj, GX_TEXMAP0); + GXSetNumChans(0); + GXSetNumTexGens(1); + GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 60, GX_FALSE, 125); + GXSetNumTevStages(1); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC); + GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO); + GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV); + GXSetZCompLoc(1); + GXSetZMode(GX_FALSE, GX_ALWAYS, GX_FALSE); + GXSetBlendMode(GX_BM_NONE, GX_BL_ZERO, GX_BL_ZERO, GX_LO_OR); + GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_OR, GX_ALWAYS, 0); + GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, g_clearColor); + GXSetFogRangeAdj(GX_FALSE, 0, NULL); + GXSetCullMode(GX_CULL_NONE); + GXSetDither(1); + C_MTXOrtho(m, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 10.0f); + GXSetProjection(m, GX_ORTHOGRAPHIC); + GXLoadPosMtxImm(g_mDoMtx_identity, GX_PNMTX0); + GXSetCurrentMtx(0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_CLR_RGBA, GX_RGB8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGB8, 0); + + GXBegin(GX_QUADS, GX_VTXFMT0, 4); + + GXPosition3s8(0, 0, -5); + GXTexCoord2s8(0, 0); + + GXPosition3s8(1, 0, -5); + GXTexCoord2s8(1, 0); + + GXPosition3s8(1, 1, -5); + GXTexCoord2s8(1, 1); + + GXPosition3s8(0, 1, -5); + GXTexCoord2s8(0, 1); + + i_GXEnd(); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -272,6 +219,7 @@ asm void dDlst_Gameover_CAPTURE_c::draw() { #include "asm/d/d_gameover/draw__24dDlst_Gameover_CAPTURE_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 803BBB50-803BBB5C 018C70 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ @@ -380,6 +328,13 @@ SECTION_DATA static u8 init_process[108] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; +/* typedef void (dGameover_c::*initFunc)(); +SECTION_DATA initFunc init_process[] = { + &dGameover_c::playerAnmWait_init, &dGameover_c::dispFadeOut_init, &dGameover_c::dispWait_init, + &dGameover_c::demoFadeIn_init, &dGameover_c::demoFadeOut_init, &dGameover_c::saveOpen_init, + &dGameover_c::saveMove_init, &dGameover_c::saveClose_init, &dGameover_c::deleteWait_init, +}; */ + /* 803BBC34-803BBC40 -00001 000C+00 0/1 0/0 0/0 .data @3892 */ #pragma push #pragma force_active on @@ -481,10 +436,16 @@ SECTION_DATA static u8 move_process[108] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; +/* typedef void (dGameover_c::*moveFunc)(); +SECTION_DATA moveFunc move_process[] = { + &dGameover_c::playerAnmWait_proc, &dGameover_c::dispFadeOut_proc, &dGameover_c::dispWait_proc, + &dGameover_c::demoFadeIn_proc, &dGameover_c::demoFadeOut_proc, &dGameover_c::saveOpen_proc, + &dGameover_c::saveMove_proc, &dGameover_c::saveClose_proc, &dGameover_c::deleteWait_proc, +}; */ + /* 803BBD0C-803BBD2C 018E2C 0020+00 1/1 0/0 0/0 .data offset$4331 */ -SECTION_DATA static u8 offset[32] = { - 0xC3, 0x0A, 0x00, 0x00, 0xC2, 0xC0, 0x00, 0x00, 0xC2, 0x60, 0x00, 0x00, 0xC1, 0x90, 0x00, 0x00, - 0x42, 0x28, 0x00, 0x00, 0x42, 0x96, 0x00, 0x00, 0x42, 0xDC, 0x00, 0x00, 0x43, 0x0F, 0x00, 0x00, +SECTION_DATA static f32 offset[8] = { + -138.0f, -96.0f, -56.0f, -18.0f, 42.0f, 75.0f, 110.0f, 143.0f, }; /* 803BBD2C-803BBD40 -00001 0014+00 1/0 0/0 0/0 .data l_dGameover_Method */ @@ -533,21 +494,22 @@ SECTION_DATA extern void* __vt__10dGov_HIO_c[3 + 3 /* padding */] = { NULL, }; -/* 80453B8C-80453B90 00218C 0004+00 1/1 0/0 0/0 .sdata2 @3878 */ -SECTION_SDATA2 static f32 lit_3878 = 27.0f / 10.0f; - -/* 80453B90-80453B94 002190 0004+00 1/1 0/0 0/0 .sdata2 @3879 */ -SECTION_SDATA2 static f32 lit_3879 = 1.0f / 5.0f; - /* 8019AFE0-8019B044 195920 0064+00 1/1 0/0 0/0 .text __ct__10dGov_HIO_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dGov_HIO_c::dGov_HIO_c() { - nofralloc -#include "asm/d/d_gameover/__ct__10dGov_HIO_cFv.s" +dGov_HIO_c::dGov_HIO_c() { + mScale = 2.7f; + mAlpha = lit_3869; + mAnimSpeed = 0.2f; + + mBlack.r = 0; + mBlack.g = 0; + mBlack.b = 0; + mBlack.a = 0; + + mWhite.r = 255; + mWhite.g = 220; + mWhite.b = 125; + mWhite.a = 255; } -#pragma pop /* ############################################################################################## */ /* 80394C28-80394C28 021288 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -566,207 +528,288 @@ SECTION_DATA extern void* __vt__24dDlst_Gameover_CAPTURE_c[4] = { }; /* 8019B044-8019B2F4 195984 02B0+00 1/1 0/0 0/0 .text _create__11dGameover_cFv */ +#ifdef NONMATCHING +int dGameover_c::_create() { + int phase = dComIfG_resLoad(&mPhase, "Gover"); + + if (dComIfGp_isPauseFlag() || + (dComIfGp_isHeapLockFlag() != 0 && dComIfGp_isHeapLockFlag() != 6) || + dComIfGp_getMesgStatus() != 0) + { + return 0; + } + + if (phase == cPhs_COMPLEATE_e) { + if (dMeter2Info_getGameOverType() == 0) { + mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor); + dComIfGs_addDeathCount(); + } + + dRes_info_c* resInfo = dComIfG_getObjectResInfo("Gover"); + + mpHeap = dComIfGp_getExpHeap2D(); + dComIfGp_setHeapLockFlag(6); + JKRHeap* old_heap = mDoExt_setCurrentHeap(mpHeap); + mpHeap->getTotalFreeSize(); + + dgo_screen_c = new dDlst_GameOverScrnDraw_c(resInfo->getArchive()); + dMs_c = new dMenu_save_c(); + + if (dMeter2Info_getGameOverType() == 1) { + if (!strcmp(dComIfGp_getLastPlayStageName(), "D_MN10A")) { + // Last stage was Stallord Arena + // Remove Ooccoo from inventory + dComIfGs_setItem(SLOT_18, NO_ITEM); + dComIfGs_resetLastWarpAcceptStage(); + } + + dMs_c->setUseType(3); + } else if (dMeter2Info_getGameOverType() == 2) { + dMs_c->setUseType(4); + } else { + dMs_c->setUseType(2); + } + + dMs_c->_create(); + dgo_capture_c = new dDlst_Gameover_CAPTURE_c(); + + mDoExt_setCurrentHeap(old_heap); + field_0x116 = g_menuHIO.mGameover; + + if (dMeter2Info_getGameOverType() == 1 || dMeter2Info_getGameOverType() == 2) { + mIsDemoSave = true; + mProc = PROC_DEMO_FADE_IN; + dgo_screen_c->setBackAlpha(1.0f); + } else { + mIsDemoSave = false; + mProc = PROC_PLAYER_ANM_WAIT; + } + + (this->*init_process[mProc])(); + return cPhs_COMPLEATE_e; + } + + return phase; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dGameover_c::_create() { +asm int dGameover_c::_create() { nofralloc #include "asm/d/d_gameover/_create__11dGameover_cFv.s" } #pragma pop +#endif /* 8019B2F4-8019B384 195C34 0090+00 1/1 0/0 0/0 .text _execute__11dGameover_cFv */ +// matches with sinit +#ifdef NONMATCHING +int dGameover_c::_execute() { + JKRHeap* old_heap = mDoExt_setCurrentHeap(mpHeap); + u8 old_proc = mProc; + + (this->*move_process[mProc])(); + if (mProc != old_proc) { + (this->*init_process[mProc])(); + } + + mDoExt_setCurrentHeap(old_heap); + return 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dGameover_c::_execute() { +asm int dGameover_c::_execute() { nofralloc #include "asm/d/d_gameover/_execute__11dGameover_cFv.s" } #pragma pop +#endif /* 8019B384-8019B388 195CC4 0004+00 1/0 0/0 0/0 .text playerAnmWait_init__11dGameover_cFv */ -void dGameover_c::playerAnmWait_init() { - /* empty function */ -} +void dGameover_c::playerAnmWait_init() {} /* 8019B388-8019B3A0 195CC8 0018+00 1/0 0/0 0/0 .text playerAnmWait_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::playerAnmWait_proc() { - nofralloc -#include "asm/d/d_gameover/playerAnmWait_proc__11dGameover_cFv.s" +void dGameover_c::playerAnmWait_proc() { + if (mIsDemoSave) { + mProc = PROC_DISP_FADE_OUT; + } } -#pragma pop /* 8019B3A0-8019B3E8 195CE0 0048+00 1/0 0/0 0/0 .text dispFadeOut_init__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::dispFadeOut_init() { - nofralloc -#include "asm/d/d_gameover/dispFadeOut_init__11dGameover_cFv.s" +void dGameover_c::dispFadeOut_init() { + mTimer = 30; + mDoGph_gInf_c::startFadeOut(15); } -#pragma pop /* 8019B3E8-8019B40C 195D28 0024+00 1/0 0/0 0/0 .text dispFadeOut_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::dispFadeOut_proc() { - nofralloc -#include "asm/d/d_gameover/dispFadeOut_proc__11dGameover_cFv.s" +void dGameover_c::dispFadeOut_proc() { + if (mTimer != 0) { + mTimer--; + } else { + mProc = PROC_DISP_WAIT; + } } -#pragma pop /* 8019B40C-8019B454 195D4C 0048+00 1/0 0/0 0/0 .text dispWait_init__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::dispWait_init() { - nofralloc -#include "asm/d/d_gameover/dispWait_init__11dGameover_cFv.s" +void dGameover_c::dispWait_init() { + mTimer = 90; + mDoGph_gInf_c::startFadeIn(30); } -#pragma pop /* 8019B454-8019B478 195D94 0024+00 1/0 0/0 0/0 .text dispWait_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::dispWait_proc() { - nofralloc -#include "asm/d/d_gameover/dispWait_proc__11dGameover_cFv.s" +void dGameover_c::dispWait_proc() { + if (mTimer != 0) { + mTimer--; + } else { + mProc = PROC_SAVE_OPEN; + } } -#pragma pop /* 8019B478-8019B484 195DB8 000C+00 1/0 0/0 0/0 .text demoFadeIn_init__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::demoFadeIn_init() { - nofralloc -#include "asm/d/d_gameover/demoFadeIn_init__11dGameover_cFv.s" +void dGameover_c::demoFadeIn_init() { + mTimer = 0; } -#pragma pop /* 8019B484-8019B4D8 195DC4 0054+00 1/0 0/0 0/0 .text demoFadeIn_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::demoFadeIn_proc() { - nofralloc -#include "asm/d/d_gameover/demoFadeIn_proc__11dGameover_cFv.s" +void dGameover_c::demoFadeIn_proc() { + mTimer++; + dgo_screen_c->setBackAlpha(lit_3869); + + if (mTimer >= 30) { + mProc = PROC_SAVE_OPEN; + } } -#pragma pop /* 8019B4D8-8019B4E4 195E18 000C+00 1/0 0/0 0/0 .text demoFadeOut_init__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::demoFadeOut_init() { - nofralloc -#include "asm/d/d_gameover/demoFadeOut_init__11dGameover_cFv.s" +void dGameover_c::demoFadeOut_init() { + mTimer = 30; } -#pragma pop - -/* ############################################################################################## */ -/* 80453B94-80453B98 002194 0004+00 1/1 0/0 0/0 .sdata2 @4069 */ -SECTION_SDATA2 static f32 lit_4069 = 900.0f; - -/* 80453B98-80453BA0 002198 0008+00 1/1 0/0 0/0 .sdata2 @4071 */ -SECTION_SDATA2 static f64 lit_4071 = 4503601774854144.0 /* cast s32 to float */; /* 8019B4E4-8019B560 195E24 007C+00 1/0 0/0 0/0 .text demoFadeOut_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::demoFadeOut_proc() { - nofralloc -#include "asm/d/d_gameover/demoFadeOut_proc__11dGameover_cFv.s" +void dGameover_c::demoFadeOut_proc() { + mTimer--; + dgo_screen_c->setBackAlpha((mTimer * mTimer) / 900.0f); + + if (mTimer <= 0) { + mProc = PROC_DELETE_WAIT; + } } -#pragma pop /* 8019B560-8019B564 195EA0 0004+00 1/0 0/0 0/0 .text saveOpen_init__11dGameover_cFv */ -void dGameover_c::saveOpen_init() { - /* empty function */ -} +void dGameover_c::saveOpen_init() {} /* 8019B564-8019B5A4 195EA4 0040+00 1/0 0/0 0/0 .text saveOpen_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::saveOpen_proc() { - nofralloc -#include "asm/d/d_gameover/saveOpen_proc__11dGameover_cFv.s" +void dGameover_c::saveOpen_proc() { + if (dMs_c->_open()) { + mProc = PROC_SAVE_MOVE; + } } -#pragma pop /* 8019B5A4-8019B5A8 195EE4 0004+00 1/0 0/0 0/0 .text saveMove_init__11dGameover_cFv */ -void dGameover_c::saveMove_init() { - /* empty function */ -} +void dGameover_c::saveMove_init() {} /* 8019B5A8-8019B5F0 195EE8 0048+00 1/0 0/0 0/0 .text saveMove_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::saveMove_proc() { - nofralloc -#include "asm/d/d_gameover/saveMove_proc__11dGameover_cFv.s" +void dGameover_c::saveMove_proc() { + dMs_c->_move(); + + if (dMs_c->getSaveStatus() == 3) { + mProc = PROC_SAVE_CLOSE; + } } -#pragma pop /* 8019B5F0-8019B5F4 195F30 0004+00 1/0 0/0 0/0 .text saveClose_init__11dGameover_cFv */ -void dGameover_c::saveClose_init() { - /* empty function */ -} +void dGameover_c::saveClose_init() {} /* 8019B5F4-8019B7BC 195F34 01C8+00 1/0 0/0 0/0 .text saveClose_proc__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::saveClose_proc() { - nofralloc -#include "asm/d/d_gameover/saveClose_proc__11dGameover_cFv.s" +void dGameover_c::saveClose_proc() { + if (dMs_c->getEndStatus() == 0) { + dComIfGp_setGameoverStatus(3); + dComIfGp_offPauseFlag(); + mDoRst::onReset(); + } else if (dMs_c->getEndStatus() == 1) { + if (dMeter2Info_getGameOverType() == 1 || dMeter2Info_getGameOverType() == 2) { + dComIfGp_setGameoverStatus(1); + } else { + dComIfGp_setGameoverStatus(2); + } + + dComIfGp_offPauseFlag(); + + // Reset Monkey lantern steal sequence flags if player hasn't regained lantern + if (!i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[226])) { + dComIfGs_offEventBit(dSv_event_flag_c::saveBitLabels[224]); + dComIfGs_offEventBit(dSv_event_flag_c::saveBitLabels[225]); + } + + // Reset Lantern and oil status back into inventory if gameover during monkey steal sequence + if (i_dComIfGs_isItemFirstBit(KANTERA) && dComIfGs_getItem(SLOT_1, true) == NO_ITEM) { + dComIfGs_setItem(SLOT_1, KANTERA); + dComIfGs_setOil(dMeter2Info_getOilGaugeBackUp()); + } + + dMeter2Info_resetMiniGameItem(false); + } + + if (dMeter2Info_getGameOverType() == 1 && dMeter2Info_getGameOverType() == 2 && + dComIfGp_getGameoverStatus() == 1) + { + mProc = PROC_DEMO_FADE_OUT; + } else { + mProc = PROC_DELETE_WAIT; + } } -#pragma pop /* 8019B7BC-8019B7C0 1960FC 0004+00 1/0 0/0 0/0 .text deleteWait_init__11dGameover_cFv */ -void dGameover_c::deleteWait_init() { - /* empty function */ -} +void dGameover_c::deleteWait_init() {} /* 8019B7C0-8019B7C4 196100 0004+00 1/0 0/0 0/0 .text deleteWait_proc__11dGameover_cFv */ -void dGameover_c::deleteWait_proc() { - /* empty function */ -} +void dGameover_c::deleteWait_proc() {} /* 8019B7C4-8019B864 196104 00A0+00 1/1 0/0 0/0 .text _draw__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::_draw() { - nofralloc -#include "asm/d/d_gameover/_draw__11dGameover_cFv.s" +int dGameover_c::_draw() { + if (dgo_capture_c != NULL && dComIfGp_isPauseFlag()) { + dComIfGd_set2DOpa(dgo_capture_c); + } + + if (mIsDemoSave && mProc >= PROC_DISP_WAIT) { + if (dgo_screen_c != NULL) { + dComIfGd_set2DOpa(dgo_screen_c); + } + dMs_c->_draw2(); + } + + return 1; } -#pragma pop /* 8019B864-8019B940 1961A4 00DC+00 1/1 0/0 0/0 .text _delete__11dGameover_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dGameover_c::_delete() { - nofralloc -#include "asm/d/d_gameover/_delete__11dGameover_cFv.s" +int dGameover_c::_delete() { + JKRHeap* old_heap = mDoExt_setCurrentHeap(mpHeap); + + if (dgo_screen_c != NULL) { + delete dgo_screen_c; + dgo_screen_c = NULL; + } + + dMs_c->_delete(); + delete dMs_c; + delete dgo_capture_c; + + mpHeap->freeAll(); + dComIfGp_offHeapLockFlag(0); + mDoExt_setCurrentHeap(old_heap); + + dComIfG_resDelete(&mPhase, "Gover"); + return 1; } -#pragma pop /* ############################################################################################## */ /* 80394C28-80394C28 021288 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -786,6 +829,46 @@ SECTION_SDATA2 static f32 lit_4291 = 660.0f; /* 8019B940-8019BBFC 196280 02BC+00 1/1 0/0 0/0 .text * __ct__24dDlst_GameOverScrnDraw_cFP10JKRArchive */ +// matches with literals +#ifdef NONMATCHING +dDlst_GameOverScrnDraw_c::dDlst_GameOverScrnDraw_c(JKRArchive* i_archive) { + mpScreen = new J2DScreen(); + mpScreen->setPriority("zelda_game_over.blo", 0x100000, i_archive); + dPaneClass_showNullPane(mpScreen); + + mFadeColor.set(0, 0, 0, 0); + + if (dMeter2Info_getGameOverType() != 0) { + mpScreen->search('n_base')->hide(); + + if (mDoGph_gInf_c::getFadeRate() == 1.0f) { + mFadeColor = mDoGph_gInf_c::getFadeColor(); + } + } + + mpScreen->search('base_b')->hide(); + + JUtility::TColor img_white(mFadeColor); + JUtility::TColor img_black(mFadeColor); + img_white.a = 0; + img_black.a = 255; + + ResTIMG* img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "tt_block8x8.bti"); + mpBackImg = + new J2DPicture('PICT01', JGeometry::TBox2(0.0f, 486.0f, 0.0f, 660.0f), img, NULL); + mpBackImg->setBlackWhite(img_white, img_black); + + J2DTextBox* gold_tbox = (J2DTextBox*)mpScreen->search('gold_00'); + gold_tbox->setFont(mDoExt_getSubFont()); + + char string[64]; + dMeter2Info_getString(0x381, string, NULL); + gold_tbox->setString(string); + + mpLight = new dMsgScrnLight_c(6, 0xFF); + field_0x10 = 0.0f; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -794,39 +877,21 @@ asm dDlst_GameOverScrnDraw_c::dDlst_GameOverScrnDraw_c(JKRArchive* param_0) { #include "asm/d/d_gameover/__ct__24dDlst_GameOverScrnDraw_cFP10JKRArchive.s" } #pragma pop +#endif /* 8019BBFC-8019BCB0 19653C 00B4+00 1/0 0/0 0/0 .text __dt__24dDlst_GameOverScrnDraw_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dDlst_GameOverScrnDraw_c::~dDlst_GameOverScrnDraw_c() { - nofralloc -#include "asm/d/d_gameover/__dt__24dDlst_GameOverScrnDraw_cFv.s" +dDlst_GameOverScrnDraw_c::~dDlst_GameOverScrnDraw_c() { + delete mpBackImg; + delete mpScreen; + dComIfGp_getMain2DArchive()->removeResourceAll(); } -#pragma pop - -/* ############################################################################################## */ -/* 80453BA8-80453BAC 0021A8 0004+00 1/1 0/0 0/0 .sdata2 @4316 */ -SECTION_SDATA2 static f32 lit_4316 = 255.0f; /* 8019BCB0-8019BCF4 1965F0 0044+00 3/3 0/0 0/0 .text setBackAlpha__24dDlst_GameOverScrnDraw_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDlst_GameOverScrnDraw_c::setBackAlpha(f32 param_0) { - nofralloc -#include "asm/d/d_gameover/setBackAlpha__24dDlst_GameOverScrnDraw_cFf.s" +void dDlst_GameOverScrnDraw_c::setBackAlpha(f32 i_alpha) { + mpBackImg->setAlpha(i_alpha * 255.0f); } -#pragma pop - -/* ############################################################################################## */ -/* 8042CA20-8042CA2C 059740 000C+00 1/1 0/0 0/0 .bss @3882 */ -static u8 lit_3882[12]; - -/* 8042CA2C-8042CA48 05974C 001C+00 2/2 0/0 0/0 .bss l_HIO */ -static u8 l_HIO[28]; /* 80453BAC-80453BB0 0021AC 0004+00 1/1 0/0 0/0 .sdata2 @4374 */ SECTION_SDATA2 static f32 lit_4374 = 608.0f; @@ -846,82 +911,119 @@ SECTION_SDATA2 static f32 lit_4377[1 + 1 /* padding */] = { /* 8019BCF4-8019BF3C 196634 0248+00 1/0 0/0 0/0 .text draw__24dDlst_GameOverScrnDraw_cFv */ +// matches with literals / sinit +#ifdef NONMATCHING +/* ############################################################################################## */ +/* 8042CA20-8042CA2C 059740 000C+00 1/1 0/0 0/0 .bss @3882 */ +static u8 lit_3882[12]; + +/* 8042CA2C-8042CA48 05974C 001C+00 2/2 0/0 0/0 .bss l_HIO */ +static dGov_HIO_c l_HIO; + +void dDlst_GameOverScrnDraw_c::draw() { + J2DGrafContext* graf_ctx = dComIfGp_getCurrentGrafPort(); + graf_ctx->setup2D(); + + if (dMeter2Info_getGameOverType() == 1 || dMeter2Info_getGameOverType() == 2) { + if (mDoGph_gInf_c::getFadeRate() == 1.0f) { + mFadeColor = mDoGph_gInf_c::getFadeColor(); + } + + JUtility::TColor img_black(mFadeColor); + JUtility::TColor img_white(mFadeColor); + img_black.a = 0; + img_white.a = 255; + + mpBackImg->setBlackWhite(img_black, img_white); + mpBackImg->draw(0.0f, 0.0f, 608.0f, 448.0f, false, false, false); + } else { + JUtility::TColor img_black; + JUtility::TColor img_white; + + img_black.r = l_HIO.mBlack.r; + img_black.g = l_HIO.mBlack.g; + img_black.b = l_HIO.mBlack.b; + img_black.a = l_HIO.mBlack.a; + + img_white.r = l_HIO.mWhite.r; + img_white.g = l_HIO.mWhite.g; + img_white.b = l_HIO.mWhite.b; + img_white.a = l_HIO.mWhite.a; + + mpBackImg->draw(0.0f, 0.0f, 608.0f, 448.0f, false, false, false); + + for (int i = 0; i < 8; i++) { + mpLight->draw(&field_0x10, offset[i] + 304.0f, 224.0f, l_HIO.mScale, l_HIO.mScale, + l_HIO.mAlpha, l_HIO.mAnimSpeed, img_black, img_white); + } + } + + mpScreen->draw(0.0f, 0.0f, graf_ctx); +} +#else +/* ############################################################################################## */ +/* 8042CA20-8042CA2C 059740 000C+00 1/1 0/0 0/0 .bss @3882 */ +static u8 lit_3882[12]; + +/* 8042CA2C-8042CA48 05974C 001C+00 2/2 0/0 0/0 .bss l_HIO */ +static u8 l_HIO[28]; + #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dDlst_GameOverScrnDraw_c::draw() { +// asm void dDlst_GameOverScrnDraw_c::draw() { +extern "C" asm void draw__24dDlst_GameOverScrnDraw_cFv() { nofralloc #include "asm/d/d_gameover/draw__24dDlst_GameOverScrnDraw_cFv.s" } #pragma pop +#endif /* 8019BF3C-8019BF5C 19687C 0020+00 1/0 0/0 0/0 .text dGameover_Draw__FP11dGameover_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void dGameover_Draw(dGameover_c* param_0) { - nofralloc -#include "asm/d/d_gameover/dGameover_Draw__FP11dGameover_c.s" +static int dGameover_Draw(dGameover_c* i_this) { + return i_this->_draw(); } -#pragma pop /* 8019BF5C-8019BF7C 19689C 0020+00 1/0 0/0 0/0 .text dGameover_Execute__FP11dGameover_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void dGameover_Execute(dGameover_c* param_0) { - nofralloc -#include "asm/d/d_gameover/dGameover_Execute__FP11dGameover_c.s" +static int dGameover_Execute(dGameover_c* i_this) { + return i_this->_execute(); } -#pragma pop /* 8019BF7C-8019BF84 1968BC 0008+00 1/0 0/0 0/0 .text dGameover_IsDelete__FP11dGameover_c */ -static bool dGameover_IsDelete(dGameover_c* param_0) { - return true; +static int dGameover_IsDelete(dGameover_c* i_this) { + return 1; } /* 8019BF84-8019BFA4 1968C4 0020+00 1/0 0/0 0/0 .text dGameover_Delete__FP11dGameover_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void dGameover_Delete(dGameover_c* param_0) { - nofralloc -#include "asm/d/d_gameover/dGameover_Delete__FP11dGameover_c.s" +static int dGameover_Delete(dGameover_c* i_this) { + return i_this->_delete(); } -#pragma pop /* 8019BFA4-8019BFC4 1968E4 0020+00 1/0 0/0 0/0 .text dGameover_Create__FP9msg_class */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void dGameover_Create(msg_class* param_0) { - nofralloc -#include "asm/d/d_gameover/dGameover_Create__FP9msg_class.s" +static int dGameover_Create(msg_class* i_this) { + return static_cast(i_this)->_create(); } -#pragma pop /* 8019BFC4-8019C008 196904 0044+00 0/0 2/2 0/0 .text d_GameOver_Create__FUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm s32 d_GameOver_Create(u8 param_0) { - nofralloc -#include "asm/d/d_gameover/d_GameOver_Create__FUc.s" +s32 d_GameOver_Create(u8 i_gameoverType) { + dMeter2Info_setGameOverType(i_gameoverType); + return fopMsgM_create(PROC_GAMEOVER, NULL, NULL, NULL, NULL, NULL); } -#pragma pop /* 8019C008-8019C06C 196948 0064+00 0/0 1/1 0/0 .text d_GameOver_Delete__FRUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void d_GameOver_Delete(unsigned int& param_0) { - nofralloc -#include "asm/d/d_gameover/d_GameOver_Delete__FRUi.s" +bool d_GameOver_Delete(unsigned int& i_id) { + if (i_id != UINT32_MAX) { + fopMsgM_Delete(fopMsgM_SearchByID(i_id)); + i_id = -1; + dMeter2Info_setGameOverType(0); + return true; + } + + return false; } -#pragma pop /* 8019C06C-8019C0C8 1969AC 005C+00 2/1 0/0 0/0 .text __dt__10dGov_HIO_cFv */ #pragma push @@ -938,8 +1040,7 @@ extern "C" asm void __dt__10dGov_HIO_cFv() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void __sinit_d_gameover_cpp() { - nofralloc +asm void __sinit_d_gameover_cpp(){nofralloc #include "asm/d/d_gameover/__sinit_d_gameover_cpp.s" } #pragma pop @@ -964,7 +1065,8 @@ asm dDlst_Gameover_CAPTURE_c::~dDlst_Gameover_CAPTURE_c() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm dMenu_save_c::~dMenu_save_c() { +// asm dMenu_save_c::~dMenu_save_c() { +extern "C" asm void __dt__12dMenu_save_cFv() { nofralloc #include "asm/d/d_gameover/__dt__12dMenu_save_cFv.s" } diff --git a/src/d/d_timer.cpp b/src/d/d_timer.cpp index a887623e67..7edfb5108b 100644 --- a/src/d/d_timer.cpp +++ b/src/d/d_timer.cpp @@ -5,9 +5,9 @@ #include "d/d_timer.h" #include "d/com/d_com_inf_game.h" -#include "f_op/f_op_msg_mng.h" +#include "d/d_procname.h" #include "dol2asm.h" -#include "dolphin/types.h" +#include "f_op/f_op_msg_mng.h" #include "m_Do/m_Do_lib.h" // @@ -195,18 +195,12 @@ asm void dTimer_c::_execute() { /* 8025D33C-8025D3BC 257C7C 0080+00 1/1 0/0 0/0 .text _draw__8dTimer_cFv */ int dTimer_c::_draw() { - int ret; - if (dComIfGp_isPauseFlag() || dMsgObject_isTalkNowCheck()) { - ret = 1; - } else { - dComIfGd_set2DOpa((dDlst_base_c*)field_0xfc); - ret = 1; + return 1; } - - return ret; - + dComIfGd_set2DOpa(mp_tm_scrn); + return 1; } /* 8025D3BC-8025D524 257CFC 0168+00 1/1 0/0 0/0 .text _delete__8dTimer_cFv */ @@ -252,7 +246,7 @@ bool dTimer_c::stock_start() { OSTime current_time = dLib_time_c::getTime(); mTime1 = current_time; mTime2 = current_time; - + mTime1 -= OS_TIMER_CLOCK_MS * dComIfG_getTimerNowTimeMs(); } return mDeleteCheck == 5; @@ -275,61 +269,54 @@ int dTimer_c::stock_start(s16 param_0) { mDeleteCheck = 5; return 1; } + return 0; } /* 8025D7E8-8025D86C 258128 0084+00 3/3 1/1 0/0 .text stop__8dTimer_cFUc */ int dTimer_c::stop(u8 param_0) { - int ret; - if (field_0x16A == 1 || field_0x16B != 0) { - ret = 0; + return 0; } else if (mDeleteCheck != 4) { - ret = 0; + return 0; } else { mTime3 = dLib_time_c::getTime(); field_0x16A = 1; field_0x16B = param_0; - ret = 1; + return 1; } - - return ret; } /* 8025D86C-8025D920 2581AC 00B4+00 1/1 1/1 0/0 .text restart__8dTimer_cFUc */ int dTimer_c::restart(u8 param_0) { if (field_0x16A != 1 || field_0x16B != param_0) { return 0; + } else if (mDeleteCheck != 4 && mDeleteCheck != 2) { + return 0; } else { - if (mDeleteCheck != 4 && mDeleteCheck != 2) { - return 0; - } else { - mTime2 = dLib_time_c::getTime(); - mTime5 += mTime2 - mTime3; - field_0x16A = 0; - field_0x16B = 0; - return 1; - } + mTime2 = dLib_time_c::getTime(); + mTime5 += mTime2 - mTime3; + field_0x16A = 0; + field_0x16B = 0; + return 1; } } /* 8025D920-8025D9E0 258260 00C0+00 0/0 1/1 0/0 .text end__8dTimer_cFi */ int dTimer_c::end(int param_0) { - int ret; if (mDeleteCheck != 4) { - ret = 0; - - } else { - mTime6 = dLib_time_c::getTime(); - mDeleteCheck = 6; - dComIfG_setTimerNowTimeMs((mTime6 - mTime1 - mTime5) / OS_TIMER_CLOCK_MS); - if (param_0 != -1) { - field_0x158 = param_0; - } - ret = 1; + return 0; } - return ret; + mTime6 = dLib_time_c::getTime(); + mDeleteCheck = 6; + dComIfG_setTimerNowTimeMs((mTime6 - mTime1 - mTime5) / OS_TIMER_CLOCK_MS); + + if (param_0 != -1) { + field_0x158 = param_0; + } + + return 1; } /* 8025D9E0-8025D9F0 258320 0010+00 0/0 1/1 0/0 .text deleteRequest__8dTimer_cFv */ @@ -353,8 +340,8 @@ int dTimer_c::getLimitTimeMs() { int dTimer_c::getRestTimeMs() { OSTime tmpTime2 = mTime2 - mTime1 - mTime5; // OSTime tmpTime = (mTime5) - mLimitTime; - - return (tmpTime2 - mLimitTime) / OS_TIMER_CLOCK_MS; + + return (tmpTime2 - mLimitTime) / OS_TIMER_CLOCK_MS; } #else #pragma push @@ -372,6 +359,7 @@ int dTimer_c::isStart() { if (field_0x16A != 1 && mDeleteCheck == 4) { return 1; } + return 0; } /* ############################################################################################## */ @@ -422,10 +410,10 @@ dDlst_TimerScrnDraw_c::dDlst_TimerScrnDraw_c() { field_0x3D0 = -1; field_0x3D4 = 0; - field_0x3B0 = 0; // fix - field_0x3B4 = 0; // fix - field_0x3B8 = 0; // fix - field_0x3BC = 0; // fix + field_0x3B0 = 0; // fix + field_0x3B4 = 0; // fix + field_0x3B8 = 0; // fix + field_0x3BC = 0; // fix field_0x3DE = 0; field_0x3DF = 0; @@ -790,43 +778,39 @@ asm void dDlst_TimerScrnDraw_c::drawPikari(int param_0) { #pragma pop /* 80260F04-80260F24 25B844 0020+00 1/0 0/0 0/0 .text dTimer_Draw__FP8dTimer_c */ -static void dTimer_Draw(dTimer_c* i_timer) { - i_timer->_draw(); +static void dTimer_Draw(dTimer_c* i_this) { + i_this->_draw(); } /* 80260F24-80260F44 25B864 0020+00 1/0 0/0 0/0 .text dTimer_Execute__FP8dTimer_c */ -static void dTimer_Execute(dTimer_c* i_timer) { - i_timer->_execute(); +static void dTimer_Execute(dTimer_c* i_this) { + i_this->_execute(); } /* 80260F44-80260F4C 25B884 0008+00 1/0 0/0 0/0 .text dTimer_IsDelete__FP8dTimer_c */ -static bool dTimer_IsDelete(dTimer_c* i_timer) { +static bool dTimer_IsDelete(dTimer_c* i_this) { return true; } /* 80260F4C-80260F6C 25B88C 0020+00 1/0 0/0 0/0 .text dTimer_Delete__FP8dTimer_c */ -static void dTimer_Delete(dTimer_c* i_timer) { - i_timer->_delete(); +static void dTimer_Delete(dTimer_c* i_this) { + i_this->_delete(); } /* 80260F6C-80260F8C 25B8AC 0020+00 1/0 0/0 0/0 .text dTimer_Create__FP9msg_class */ -static void dTimer_Create(msg_class* i_timer) { - ((dTimer_c*)i_timer)->_create(); +static void dTimer_Create(msg_class* i_this) { + ((dTimer_c*)i_this)->_create(); } /* 80260F8C-80261034 25B8CC 00A8+00 0/0 1/1 9/9 .text dTimer_createTimer__FlUlUcUcffff */ -s32 dTimer_createTimer(s32 param_0, u32 param_1, u8 param_2, u8 param_3, f32 param_4, - f32 param_5, f32 param_6, f32 param_7) { - s32 ret; - +s32 dTimer_createTimer(s32 param_0, u32 param_1, u8 param_2, u8 param_3, f32 param_4, f32 param_5, + f32 param_6, f32 param_7) { if (dComIfG_getTimerMode() == -1) { - ret = fopMsgM_Timer_create(0x315,param_0,param_1,param_2,param_3,param_4,param_5,param_6,param_7,0); + return fopMsgM_Timer_create(PROC_TIMER, param_0, param_1, param_2, param_3, param_4, + param_5, param_6, param_7, 0); } - else { - ret = -1; - } - - return ret; + + return -1; } /* ############################################################################################## */ /* 8039A3D8-8039A3D8 026A38 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -852,12 +836,16 @@ SECTION_SDATA2 static f32 lit_5547 = 419.0f; /* 80261034-80261100 25B974 00CC+00 0/0 1/1 0/0 .text dTimer_createStockTimer__Fv */ s32 dTimer_createStockTimer() { if (dComIfG_getTimerMode() != -1) { - if ((dComIfG_getTimerMode() == 3 || dComIfG_getTimerMode() == 4) && strcmp(dComIfGp_getStartStageName(),"F_SP115")) { + if ((dComIfG_getTimerMode() == 3 || dComIfG_getTimerMode() == 4) && + strcmp(dComIfGp_getStartStageName(), "F_SP115")) + { dComIfG_setTimerMode(-1); return -1; } else { u8 timer_type = dComIfG_getTimerType(); - return fopMsgM_Timer_create(0x315,10,0,timer_type,0,FLOAT_LABEL(lit_5544),FLOAT_LABEL(lit_5545),FLOAT_LABEL(lit_5546),FLOAT_LABEL(lit_5547),0); + return fopMsgM_Timer_create(PROC_TIMER, 10, 0, timer_type, 0, FLOAT_LABEL(lit_5544), + FLOAT_LABEL(lit_5545), FLOAT_LABEL(lit_5546), + FLOAT_LABEL(lit_5547), 0); } } else { return -1; @@ -868,7 +856,7 @@ s32 dTimer_createStockTimer() { u32 dTimer_createGetIn2D(s32 param_0, cXyz param_1) { if (dComIfG_getTimerPtr()) { cXyz tmp; - mDoLib_project(¶m_1,&tmp); + mDoLib_project(¶m_1, &tmp); param_0 = dComIfG_getTimerPtr()->createGetIn(tmp); } else { param_0 = 0; @@ -890,28 +878,20 @@ static int dTimer_createStart2D(s32 param_0, u16 param_1) { /* 802611F0-80261244 25BB30 0054+00 0/0 0/0 5/5 .text dTimer_isStart__Fv */ int dTimer_isStart() { - int ret; - if (dComIfG_getTimerPtr()) { - ret = dComIfG_getTimerPtr()->isStart(); - } else { - ret = 0; + return dComIfG_getTimerPtr()->isStart(); } - return ret; - + return 0; } + /* 80261244-80261298 25BB84 0054+00 0/0 0/0 2/2 .text dTimer_getRestTimeMs__Fv */ int dTimer_getRestTimeMs() { - int ret; - if (dComIfG_getTimerPtr()) { - ret = dComIfG_getTimerPtr()->getRestTimeMs(); - } else { - ret = 0; + return dComIfG_getTimerPtr()->getRestTimeMs(); } - return ret; + return 0; } /* 80261298-802612EC 25BBD8 0054+00 0/0 0/0 2/2 .text dTimer_show__Fv */ @@ -930,15 +910,11 @@ void dTimer_hide() { /* 80261340-80261394 25BC80 0054+00 0/0 0/0 1/1 .text dTimer_isReadyFlag__Fv */ u32 dTimer_isReadyFlag() { - u32 ret; - if (dComIfG_getTimerPtr()) { - ret = dComIfG_getTimerPtr()->isReadyFlag(); - } else { - ret = 0; + return dComIfG_getTimerPtr()->isReadyFlag(); } - return ret; + return 0; } /* 80261394-802613DC 25BCD4 0048+00 1/0 0/0 0/0 .text __dt__21dDlst_TimerScrnDraw_cFv */ diff --git a/src/d/meter/d_meter2.cpp b/src/d/meter/d_meter2.cpp index 869e615b7f..315b13bea9 100644 --- a/src/d/meter/d_meter2.cpp +++ b/src/d/meter/d_meter2.cpp @@ -809,18 +809,22 @@ void dMeter2_c::moveLife() { field_0x204 = g_drawHIO.mLifeGaugePosX; setDraw = true; } + if (field_0x208 != g_drawHIO.mLifeGaugePosY) { field_0x208 = g_drawHIO.mLifeGaugePosY; setDraw = true; } + if (field_0x20c != g_drawHIO.mLifeGaugeScale) { field_0x20c = g_drawHIO.mLifeGaugeScale; setDraw = true; } + if (field_0x210 != g_drawHIO.mHeartScale) { field_0x210 = g_drawHIO.mHeartScale; setDraw = true; } + if (field_0x214 != g_drawHIO.mLargeHeartScale) { field_0x214 = g_drawHIO.mLargeHeartScale; setDraw = true; diff --git a/src/d/meter/d_meter2_draw.cpp b/src/d/meter/d_meter2_draw.cpp index d47a40a9b6..32d6b2b72e 100644 --- a/src/d/meter/d_meter2_draw.cpp +++ b/src/d/meter/d_meter2_draw.cpp @@ -637,8 +637,8 @@ dMeter2Draw_c::~dMeter2Draw_c() { mpMagicFrameR = NULL; for (int i = 0; i < 3; i++) { - delete field_0x53c[i]; - field_0x53c[i] = NULL; + delete mpOxygenBpk[i]; + mpOxygenBpk[i] = NULL; } delete mpMagicMeter; @@ -961,7 +961,8 @@ void dMeter2Draw_c::exec(u32 param_0) { if (param_0 & 0x1000000) { if (mButtonsPosX != g_drawHIO.mRingHUDButtonsPosX || - mButtonsPosY != g_drawHIO.mRingHUDButtonsPosY) { + mButtonsPosY != g_drawHIO.mRingHUDButtonsPosY) + { mButtonsPosX = g_drawHIO.mRingHUDButtonsPosX; mButtonsPosY = g_drawHIO.mRingHUDButtonsPosY; mpButtonParent->paneTrans(g_drawHIO.mRingHUDButtonsPosX, g_drawHIO.mRingHUDButtonsPosY); @@ -973,7 +974,8 @@ void dMeter2Draw_c::exec(u32 param_0) { } } else { if (mButtonsPosX != g_drawHIO.mMainHUDButtonsPosX || - mButtonsPosY != g_drawHIO.mMainHUDButtonsPosY) { + mButtonsPosY != g_drawHIO.mMainHUDButtonsPosY) + { mButtonsPosX = g_drawHIO.mMainHUDButtonsPosX; mButtonsPosY = g_drawHIO.mMainHUDButtonsPosY; mpButtonParent->paneTrans(g_drawHIO.mMainHUDButtonsPosX, g_drawHIO.mMainHUDButtonsPosY); @@ -1004,6 +1006,57 @@ SECTION_SDATA2 static f32 lit_4923[1 + 1 /* padding */] = { SECTION_SDATA2 static f64 lit_4925 = 4503601774854144.0 /* cast s32 to float */; /* 8021151C-80211BEC 20BE5C 06D0+00 1/0 0/0 0/0 .text draw__13dMeter2Draw_cFv */ +#ifdef NONMATCHING +void dMeter2Draw_c::draw() { + J2DGrafContext* graf = dComIfGp_getCurrentGrafPort(); + + mpScreen->draw(0.0f, 0.0f, graf); + drawKanteraScreen(1); + drawKanteraScreen(2); + + for (int i = 0; i < 2; i++) { + if (mpItemXY[i] != NULL) { + for (int j = 0; j < 3; j++) { + JGeometry::TVec3 vtx1 = pane->getPanePtr()->getGlbVtx(0); + JGeometry::TVec3 vtx2 = pane->getPanePtr()->getGlbVtx(3); + + // mpItemNumTex[i][j]-> + } + } + } + + for (int i = 0; i < 2; i++) { + mpKanteraMeter[i]->drawSelf(); + } + + if (!dComIfGp_isPauseFlag() && mpButtonParent->getAlphaRate() != 0.0f) { + if (field_0x608 > 0.0f) { + drawPikari(mpBTextA, &field_0x608, g_drawHIO.mAButtonHighlightScale, + g_drawHIO.mAButtonHighlightFrontOuter, g_drawHIO.mAButtonHighlightFrontInner, + g_drawHIO.mAButtonHighlightBackOuter, g_drawHIO.mAButtonHighlightBackInner, + g_drawHIO.mAButtonHighlightAnimSpeed, field_0x759); + } + + if (field_0x60c > 0.0f) { + drawPikari(mpBTextB, &field_0x60c, g_drawHIO.mBButtonHighlightScale, + g_drawHIO.mBButtonHighlightFrontOuter, g_drawHIO.mBButtonHighlightFrontInner, + g_drawHIO.mBButtonHighlightBackOuter, g_drawHIO.mBButtonHighlightBackInner, + g_drawHIO.mBButtonHighlightAnimSpeed, field_0x75a); + } + + for (int i = 0; i < 2; i++) { + if (field_0x60c > 0.0f) { + drawPikari(mpBTextXY[i], &field_0x620[i], g_drawHIO.mXYButtonHighlightScale, + g_drawHIO.mXYButtonHighlightFrontOuter, g_drawHIO.mXYButtonHighlightFrontInner, + g_drawHIO.mXYButtonHighlightBackOuter, g_drawHIO.XYButtonHighlightBackInner, + g_drawHIO.mXYButtonHighlightAnimSpeed, field_0x768[i]); + } + } + } + + // TODO +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1012,6 +1065,7 @@ asm void dMeter2Draw_c::draw() { #include "asm/d/meter/d_meter2_draw/draw__13dMeter2Draw_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80398320-803983C0 024980 00A0+00 0/1 0/0 0/0 .rodata life_tag$4931 */ @@ -1139,18 +1193,18 @@ void dMeter2Draw_c::initMagic() { void* res = JKRFileLoader::getGlbResource("zelda_game_image_sanso_10percent.bpk", dComIfGp_getMain2DArchive()); - field_0x53c[0] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); - field_0x53c[0]->searchUpdateMaterialID(mpKanteraScreen); + mpOxygenBpk[0] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); + mpOxygenBpk[0]->searchUpdateMaterialID(mpKanteraScreen); res = JKRFileLoader::getGlbResource("zelda_game_image_sanso_25percent.bpk", dComIfGp_getMain2DArchive()); - field_0x53c[1] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); - field_0x53c[1]->searchUpdateMaterialID(mpKanteraScreen); + mpOxygenBpk[1] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); + mpOxygenBpk[1]->searchUpdateMaterialID(mpKanteraScreen); res = JKRFileLoader::getGlbResource("zelda_game_image_sanso_50percent.bpk", dComIfGp_getMain2DArchive()); - field_0x53c[2] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); - field_0x53c[2]->searchUpdateMaterialID(mpKanteraScreen); + mpOxygenBpk[2] = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load(res); + mpOxygenBpk[2]->searchUpdateMaterialID(mpKanteraScreen); field_0x558 = 0.0f; mpMagicParent->setAlphaRate(0.0f); @@ -1163,7 +1217,7 @@ void dMeter2Draw_c::initMagic() { } for (int i = 0; i < 3; i++) { - field_0x5fc[i] = 0.0f; + mMeterAlphaRate[i] = 0.0f; field_0x742[i] = 0; } @@ -1486,6 +1540,60 @@ asm void dMeter2Draw_c::setAlphaLifeAnimeMax() { SECTION_SDATA2 static f32 lit_6143 = 0.25f; /* 80214EB4-80215290 20F7F4 03DC+00 1/1 0/0 0/0 .text drawKanteraScreen__13dMeter2Draw_cFUc */ +// matches with literals +#ifdef NONMATCHING +void dMeter2Draw_c::drawKanteraScreen(u8 i_meterType) { + J2DGrafContext* graf = dComIfGp_getCurrentGrafPort(); + + mpMagicParent->setAlphaRate(mMeterAlphaRate[i_meterType]); + + if (i_meterType == 0) { + JUtility::TColor black = mpMagicMeter->getInitBlack(); + black.a = 255; + + mpMagicMeter->setBlackWhite(black, mpMagicMeter->getInitWhite()); + setAlphaMagicChange(true); + } else if (i_meterType == 1) { + mpMagicMeter->setBlackWhite(JUtility::TColor(255, 255, 140, 255), + JUtility::TColor(230, 170, 0, 255)); + setAlphaKanteraChange(true); + } else if (i_meterType == 2) { + f32 oxygen_percent = (f32)dComIfGp_getOxygen() / (f32)dComIfGp_getMaxOxygen(); + + if (oxygen_percent <= 0.25f) { + mpMagicMeter->setBlackWhite(JUtility::TColor(255, 100, 100, 255), + JUtility::TColor(255, 10, 10, 255)); + playOxygenBpkAnimation(mpOxygenBpk[0]); + + if (mMeterAlphaRate[i_meterType] > 0.0f) { + Z2GetAudioMgr()->mSeMgr.seStartLevel(Z2SE_SWIM_TIMER_BLINK_2, NULL, 0, 0, 1.0f, + 1.0f, -1.0f, -1.0f, 0); + } + } else if (oxygen_percent <= 0.5f) { + mpMagicMeter->setBlackWhite(JUtility::TColor(200, 200, 255, 255), + JUtility::TColor(80, 180, 255, 255)); + playOxygenBpkAnimation(mpOxygenBpk[1]); + + if (mMeterAlphaRate[i_meterType] > 0.0f) { + Z2GetAudioMgr()->mSeMgr.seStartLevel(Z2SE_SWIM_TIMER_BLINK_1, NULL, 0, 0, 1.0f, + 1.0f, -1.0f, -1.0f, 0); + } + } else { + mpMagicMeter->setBlackWhite(JUtility::TColor(200, 200, 255, 255), + JUtility::TColor(80, 180, 255, 255)); + } + + setAlphaOxygenChange(true); + } + + mpMagicMeter->resize(field_0x584[i_meterType], field_0x590[i_meterType]); + mpMagicFrameR->move(field_0x59c[i_meterType], field_0x5a8[i_meterType]); + mpMagicBase->resize(field_0x5b4[i_meterType], field_0x5c0[i_meterType]); + mpMagicParent->scale(field_0x5cc[i_meterType], field_0x5d8[i_meterType]); + mpMagicParent->paneTrans(field_0x5e4[i_meterType], field_0x5f0[i_meterType]); + mpKanteraScreen->draw(0.0f, 0.0f, graf); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1494,6 +1602,7 @@ asm void dMeter2Draw_c::drawKanteraScreen(u8 param_0) { #include "asm/d/meter/d_meter2_draw/drawKanteraScreen__13dMeter2Draw_cFUc.s" } #pragma pop +#endif /* ############################################################################################## */ /* 804548B8-804548BC 002EB8 0004+00 1/1 0/0 0/0 .sdata2 @6175 */ @@ -1501,29 +1610,31 @@ SECTION_SDATA2 static f32 lit_6175 = 0.03125f; /* 80215290-80215380 20FBD0 00F0+00 1/1 0/0 0/0 .text drawMagic__13dMeter2Draw_cFssff */ #ifdef NONMATCHING -void dMeter2Draw_c::drawMagic(s16 max_count, s16 now_count, f32 x_pos, f32 y_pos) { - f32 x_diff = mpMagicFrameR->getInitPosX() - mpMagicFrameL->getInitPosX(); +void dMeter2Draw_c::drawMagic(s16 i_maxMagic, s16 i_nowMagic, f32 i_xPos, f32 i_yPos) { + f32 frameL_posX = mpMagicFrameL->getInitPosX(); + f32 frameR_posX = mpMagicFrameR->getInitPosX(); - field_0x584 = mpMagicMeter->getInitSizeX() * (lit_6175 * now_count); - field_0x590 = mpMagicMeter->getInitSizeY(); + field_0x584[0] = (mpMagicMeter->getInitSizeX() * i_nowMagic) * 0.03125f; + field_0x590[0] = mpMagicMeter->getInitSizeY(); - field_0x59c = mpMagicFrameL->getInitPosX() * x_diff * (max_count * lit_6175); - field_0x5a8 = mpMagicFrameL->getInitPosY(); + field_0x59c[0] = + ((f32)i_maxMagic * (frameR_posX - frameL_posX)) * 0.03125f + mpMagicFrameL->getInitPosX(); + field_0x5a8[0] = mpMagicFrameL->getInitPosY(); - field_0x5b4 = mpMagicBase->getInitSizeX() * (max_count * lit_6175); - field_0x5c0 = mpMagicBase->getInitSizeY(); + field_0x5b4[0] = (f32)i_maxMagic * mpMagicBase->getInitSizeX() * 0.03125f; + field_0x5c0[0] = mpMagicBase->getInitSizeY(); - field_0x5cc = g_drawHIO.mMagicMeterScale; - field_0x5d8 = g_drawHIO.mMagicMeterScale; + field_0x5cc[0] = g_drawHIO.mMagicMeterScale; + field_0x5d8[0] = g_drawHIO.mMagicMeterScale; - field_0x5e4 = x_pos; - field_0x5f0 = y_pos; + field_0x5e4[0] = i_xPos; + field_0x5f0[0] = i_yPos; } #else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Draw_c::drawMagic(s16 param_0, s16 param_1, f32 param_2, f32 param_3) { +asm void dMeter2Draw_c::drawMagic(s16 i_maxMagic, s16 i_nowMagic, f32 i_xPos, f32 i_yPos) { nofralloc #include "asm/d/meter/d_meter2_draw/drawMagic__13dMeter2Draw_cFssff.s" } @@ -1531,14 +1642,35 @@ asm void dMeter2Draw_c::drawMagic(s16 param_0, s16 param_1, f32 param_2, f32 par #endif /* 80215380-802154A8 20FCC0 0128+00 2/2 0/0 0/0 .text setAlphaMagicChange__13dMeter2Draw_cFb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Draw_c::setAlphaMagicChange(bool param_0) { - nofralloc -#include "asm/d/meter/d_meter2_draw/setAlphaMagicChange__13dMeter2Draw_cFb.s" +void dMeter2Draw_c::setAlphaMagicChange(bool i_forceSet) { + bool meter_parent_alpha_set = false; + bool meter_alpha_set = false; + bool meter_frame_alpha_set = false; + + if (field_0x7a4 != mpMagicParent->getAlphaRate() || i_forceSet) { + field_0x7a4 = mpMagicParent->getAlphaRate(); + meter_parent_alpha_set = true; + } + + if (mMagicMeterAlpha != g_drawHIO.mMagicMeterAlpha || i_forceSet) { + mMagicMeterAlpha = g_drawHIO.mMagicMeterAlpha; + meter_alpha_set = true; + } + + if (mMagicMeterFrameAlpha != g_drawHIO.mMagicMeterFrameAlpha || i_forceSet) { + mMagicMeterFrameAlpha = g_drawHIO.mMagicMeterFrameAlpha; + meter_frame_alpha_set = true; + } + + if (meter_parent_alpha_set || meter_alpha_set || i_forceSet) { + mpMagicMeter->setAlphaRate(mMagicMeterAlpha * field_0x7a4); + } + + if (meter_parent_alpha_set || meter_frame_alpha_set || i_forceSet) { + mpMagicFrameL->setAlphaRate(mMagicMeterFrameAlpha * field_0x7a4); + mpMagicFrameR->setAlphaRate(mMagicMeterFrameAlpha * field_0x7a4); + } } -#pragma pop /* ############################################################################################## */ /* 804548BC-804548C0 002EBC 0004+00 4/4 0/0 0/0 .sdata2 @6210 */ @@ -1552,24 +1684,60 @@ SECTION_SDATA2 static f64 lit_6293 = 4503599627370496.0 /* cast u32 to float */; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dMeter2Draw_c::drawKantera(s32 param_0, s32 param_1, f32 param_2, f32 param_3) { +asm void dMeter2Draw_c::drawKantera(s32 i_maxOil, s32 i_nowOil, f32 i_xPos, f32 i_yPos) { nofralloc #include "asm/d/meter/d_meter2_draw/drawKantera__13dMeter2Draw_cFllff.s" } #pragma pop /* 802155B8-802156E0 20FEF8 0128+00 2/2 1/1 0/0 .text setAlphaKanteraChange__13dMeter2Draw_cFb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Draw_c::setAlphaKanteraChange(bool param_0) { - nofralloc -#include "asm/d/meter/d_meter2_draw/setAlphaKanteraChange__13dMeter2Draw_cFb.s" +void dMeter2Draw_c::setAlphaKanteraChange(bool i_forceSet) { + bool meter_parent_alpha_set = false; + bool meter_alpha_set = false; + bool meter_frame_alpha_set = false; + + if (field_0x7b0 != mpMagicParent->getAlphaRate() || i_forceSet) { + field_0x7b0 = mpMagicParent->getAlphaRate(); + meter_parent_alpha_set = true; + } + + if (mLanternMeterAlpha != g_drawHIO.mLanternMeterAlpha || i_forceSet) { + mLanternMeterAlpha = g_drawHIO.mLanternMeterAlpha; + meter_alpha_set = true; + } + + if (mLanternMeterFrameAlpha != g_drawHIO.mLanternMeterFrameAlpha || i_forceSet) { + mLanternMeterFrameAlpha = g_drawHIO.mLanternMeterFrameAlpha; + meter_frame_alpha_set = true; + } + + if (meter_parent_alpha_set || meter_alpha_set || i_forceSet) { + mpMagicMeter->setAlphaRate(mLanternMeterAlpha * field_0x7b0); + } + + if (meter_parent_alpha_set || meter_frame_alpha_set || i_forceSet) { + mpMagicFrameL->setAlphaRate(mLanternMeterFrameAlpha * field_0x7b0); + mpMagicFrameR->setAlphaRate(mLanternMeterFrameAlpha * field_0x7b0); + } } -#pragma pop /* 802156E0-8021575C 210020 007C+00 0/0 1/1 0/0 .text setAlphaKanteraAnimeMin__13dMeter2Draw_cFv */ +// matches with literals +#ifdef NONMATCHING +void dMeter2Draw_c::setAlphaKanteraAnimeMin() { + if (field_0x742[1] <= 0) { + mMeterAlphaRate[1] = 0.0f; + } else { + field_0x742[1]--; + if (field_0x742[1] < 0) { + field_0x742[1] = 0; + } + + mMeterAlphaRate[1] = (field_0x742[1] / 5.0f) * g_drawHIO.mHUDAlpha; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1578,9 +1746,25 @@ asm void dMeter2Draw_c::setAlphaKanteraAnimeMin() { #include "asm/d/meter/d_meter2_draw/setAlphaKanteraAnimeMin__13dMeter2Draw_cFv.s" } #pragma pop +#endif /* 8021575C-802157E0 21009C 0084+00 0/0 1/1 0/0 .text setAlphaKanteraAnimeMax__13dMeter2Draw_cFv */ +// matches with literals +#ifdef NONMATCHING +void dMeter2Draw_c::setAlphaKanteraAnimeMax() { + if (field_0x742[1] >= 5) { + mMeterAlphaRate[1] = g_drawHIO.mHUDAlpha; + } else { + field_0x742[1]++; + if (field_0x742[1] > 5) { + field_0x742[1] = 5; + } + + mMeterAlphaRate[1] = (field_0x742[1] / 5.0f) * g_drawHIO.mHUDAlpha; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1589,6 +1773,7 @@ asm void dMeter2Draw_c::setAlphaKanteraAnimeMax() { #include "asm/d/meter/d_meter2_draw/setAlphaKanteraAnimeMax__13dMeter2Draw_cFv.s" } #pragma pop +#endif /* 802157E0-802158F0 210120 0110+00 0/0 1/1 0/0 .text drawOxygen__13dMeter2Draw_cFllff */ #pragma push @@ -1601,16 +1786,52 @@ asm void dMeter2Draw_c::drawOxygen(s32 param_0, s32 param_1, f32 param_2, f32 pa #pragma pop /* 802158F0-80215A18 210230 0128+00 1/1 1/1 0/0 .text setAlphaOxygenChange__13dMeter2Draw_cFb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dMeter2Draw_c::setAlphaOxygenChange(bool param_0) { - nofralloc -#include "asm/d/meter/d_meter2_draw/setAlphaOxygenChange__13dMeter2Draw_cFb.s" +void dMeter2Draw_c::setAlphaOxygenChange(bool i_forceSet) { + bool meter_parent_alpha_set = false; + bool meter_alpha_set = false; + bool meter_frame_alpha_set = false; + + if (field_0x7bc != mpMagicParent->getAlphaRate() || i_forceSet) { + field_0x7bc = mpMagicParent->getAlphaRate(); + meter_parent_alpha_set = true; + } + + if (mOxygenMeterAlpha != g_drawHIO.mOxygenMeterAlpha || i_forceSet) { + mOxygenMeterAlpha = g_drawHIO.mOxygenMeterAlpha; + meter_alpha_set = true; + } + + if (mOxygenMeterFrameAlpha != g_drawHIO.mOxygenMeterFrameAlpha || i_forceSet) { + mOxygenMeterFrameAlpha = g_drawHIO.mOxygenMeterFrameAlpha; + meter_frame_alpha_set = true; + } + + if (meter_parent_alpha_set || meter_alpha_set || i_forceSet) { + mpMagicMeter->setAlphaRate(mOxygenMeterAlpha * field_0x7bc); + } + + if (meter_parent_alpha_set || meter_frame_alpha_set || i_forceSet) { + mpMagicFrameL->setAlphaRate(mOxygenMeterFrameAlpha * field_0x7bc); + mpMagicFrameR->setAlphaRate(mOxygenMeterFrameAlpha * field_0x7bc); + } } -#pragma pop /* 80215A18-80215A94 210358 007C+00 0/0 1/1 0/0 .text setAlphaOxygenAnimeMin__13dMeter2Draw_cFv */ +// matches with literals +#ifdef NONMATCHING +void dMeter2Draw_c::setAlphaOxygenAnimeMin() { + if (field_0x742[2] <= 0) { + mMeterAlphaRate[2] = 0.0f; + } else { + field_0x742[2]--; + if (field_0x742[2] < 0) { + field_0x742[2] = 0; + } + + mMeterAlphaRate[2] = (field_0x742[2] / 5.0f) * g_drawHIO.mHUDAlpha; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1619,8 +1840,24 @@ asm void dMeter2Draw_c::setAlphaOxygenAnimeMin() { #include "asm/d/meter/d_meter2_draw/setAlphaOxygenAnimeMin__13dMeter2Draw_cFv.s" } #pragma pop +#endif /* 80215A94-80215B18 2103D4 0084+00 0/0 1/1 0/0 .text setAlphaOxygenAnimeMax__13dMeter2Draw_cFv */ +// matches with literals +#ifdef NONMATCHING +void dMeter2Draw_c::setAlphaOxygenAnimeMax() { + if (field_0x742[2] >= 5) { + mMeterAlphaRate[2] = g_drawHIO.mHUDAlpha; + } else { + field_0x742[2]++; + if (field_0x742[2] > 5) { + field_0x742[2] = 5; + } + + mMeterAlphaRate[2] = (field_0x742[2] / 5.0f) * g_drawHIO.mHUDAlpha; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1629,6 +1866,7 @@ asm void dMeter2Draw_c::setAlphaOxygenAnimeMax() { #include "asm/d/meter/d_meter2_draw/setAlphaOxygenAnimeMax__13dMeter2Draw_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 804548C8-804548CC 002EC8 0004+00 4/4 0/0 0/0 .sdata2 @6524 */ @@ -1647,9 +1885,7 @@ asm void dMeter2Draw_c::drawLightDrop(u8 param_0, u8 param_1, f32 param_2, f32 p /* 80215DA4-80215DA8 2106E4 0004+00 1/1 1/1 0/0 .text setAlphaLightDropChange__13dMeter2Draw_cFb */ -void dMeter2Draw_c::setAlphaLightDropChange(bool param_0) { - /* empty function */ -} +void dMeter2Draw_c::setAlphaLightDropChange(bool param_0) {} /* 80215DA8-80215E40 2106E8 0098+00 0/0 1/1 0/0 .text getNowLightDropRateCalc__13dMeter2Draw_cFv */ @@ -2192,6 +2428,29 @@ SECTION_SBSS2 static u8 lit_8747[4]; SECTION_SBSS2 static u8 data_80456B9C[4]; /* 8021AF78-8021B0C8 2158B8 0150+00 0/0 1/1 0/0 .text drawKanteraMeter__13dMeter2Draw_cFUcf */ +#ifdef NONMATCHING +void dMeter2Draw_c::drawKanteraMeter(u8 i_button, f32 i_alphaRate) { + CPaneMgr* pane = mpItemXY[i_button]; + f32 local_68[2][2]; + local_68[1][0] = 0.0f; + local_68[1][1] = 0.0f; + local_68[0][0] = 0.0f; + local_68[0][1] = 0.0f; + + if (i_alphaRate == 1.0f) { + i_alphaRate = pane->getAlphaRate(); + } + + JGeometry::TVec3 vtx1 = pane->getPanePtr()->getGlbVtx(0); + JGeometry::TVec3 vtx2 = pane->getPanePtr()->getGlbVtx(3); + + mpKanteraMeter[i_button]->setPos((vtx1.x + vtx2.x) * 0.5f + 9.0f + local_68[1][i_button], + vtx2.y + local_68[0][i_button]); + mpKanteraMeter[i_button]->setScale(0.6f, 0.6f); + mpKanteraMeter[i_button]->setNowGauge(dComIfGs_getMaxOil(), dComIfGs_getOil()); + mpKanteraMeter[i_button]->setAlphaRate(i_alphaRate); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -2200,6 +2459,7 @@ asm void dMeter2Draw_c::drawKanteraMeter(u8 param_0, f32 param_1) { #include "asm/d/meter/d_meter2_draw/drawKanteraMeter__13dMeter2Draw_cFUcf.s" } #pragma pop +#endif /* 8021B0C8-8021B104 215A08 003C+00 0/0 3/3 0/0 .text isButtonVisible__13dMeter2Draw_cFv */ @@ -2414,7 +2674,8 @@ SECTION_DEAD static char const* const pad_80398A77 = ""; */ bool dMeter2Draw_c::getCanoeFishing() { if (!strcmp(dComIfGp_getStartStageName(), "F_SP127") && - g_dComIfG_gameInfo.play.mPlayer[0]->checkCanoeRide()) { + g_dComIfG_gameInfo.play.mPlayer[0]->checkCanoeRide()) + { return TRUE; } else { return FALSE; From 799c16a1dbea6d9341ceaeb95bf04610228b59ee Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Fri, 27 Jan 2023 15:13:48 -0800 Subject: [PATCH 2/4] remove asm --- Progress.md | 1478 ++++++++--------- asm/d/d_cam_param/Change__11dCamParam_cFl.s | 21 - .../CheckLatitudeRange__11dCamSetup_cFPs.s | 32 - .../PlayerHideDist__11dCamSetup_cFv.s | 12 - .../SearchStyle__11dCamParam_cFUl.s | 22 - asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s | 36 - asm/d/d_cam_param/__ct__11dCamParam_cFl.s | 40 - asm/d/d_cam_param/__ct__11dCamSetup_cFv.s | 149 -- asm/d/d_cam_param/__ct__9dCstick_cFv.s | 11 - asm/d/d_cam_param/__dt__7cDegreeFv.s | 17 - asm/d/d_cam_param/__dt__9dCstick_cFv.s | 20 - .../rationalBezierRatio__8dCamMathFff.s | 91 - ...rizontalDistance__8dCamMathFR4cXyzR4cXyz.s | 19 - .../xyzRotateX__8dCamMathFR4cXyz7cSAngle.s | 27 - .../xyzRotateY__8dCamMathFR4cXyz7cSAngle.s | 27 - asm/d/d_cam_param/zoomFovy__8dCamMathFff.s | 24 - ...BLightInf__13door_param2_cFP10fopAc_ac_c.s | 4 - ...etBRoomNo__13door_param2_cFP10fopAc_ac_c.s | 4 - ...ackOption__13door_param2_cFP10fopAc_ac_c.s | 4 - ...DoorModel__13door_param2_cFP10fopAc_ac_c.s | 4 - ...tEventNo2__13door_param2_cFP10fopAc_ac_c.s | 4 - ...etEventNo__13door_param2_cFP10fopAc_ac_c.s | 4 - ...getExitNo__13door_param2_cFP10fopAc_ac_c.s | 4 - ...FLightInf__13door_param2_cFP10fopAc_ac_c.s | 4 - ...etFRoomNo__13door_param2_cFP10fopAc_ac_c.s | 4 - ...ontOption__13door_param2_cFP10fopAc_ac_c.s | 4 - .../getKind__13door_param2_cFP10fopAc_ac_c.s | 4 - ...BLightInf__13door_param2_cFP10fopAc_ac_c.s | 4 - ...FLightInf__13door_param2_cFP10fopAc_ac_c.s | 4 - .../getMsgNo__13door_param2_cFP10fopAc_ac_c.s | 4 - ...getSwbit2__13door_param2_cFP10fopAc_ac_c.s | 4 - ...getSwbit3__13door_param2_cFP10fopAc_ac_c.s | 4 - .../getSwbit__13door_param2_cFP10fopAc_ac_c.s | 4 - ...isMsgDoor__13door_param2_cFP10fopAc_ac_c.s | 4 - asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s | 11 - asm/d/d_gameover/__ct__10dGov_HIO_cFv.s | 26 - .../__dt__24dDlst_GameOverScrnDraw_cFv.s | 49 - asm/d/d_gameover/_delete__11dGameover_cFv.s | 60 - asm/d/d_gameover/_draw__11dGameover_cFv.s | 44 - .../dGameover_Create__FP9msg_class.s | 9 - .../dGameover_Delete__FP11dGameover_c.s | 9 - .../dGameover_Draw__FP11dGameover_c.s | 9 - .../dGameover_Execute__FP11dGameover_c.s | 9 - asm/d/d_gameover/d_GameOver_Create__FUc.s | 18 - asm/d/d_gameover/d_GameOver_Delete__FRUi.s | 28 - .../demoFadeIn_init__11dGameover_cFv.s | 4 - .../demoFadeIn_proc__11dGameover_cFv.s | 23 - .../demoFadeOut_init__11dGameover_cFv.s | 4 - .../demoFadeOut_proc__11dGameover_cFv.s | 33 - .../dispFadeOut_init__11dGameover_cFv.s | 20 - .../dispFadeOut_proc__11dGameover_cFv.s | 11 - .../dispWait_init__11dGameover_cFv.s | 20 - .../dispWait_proc__11dGameover_cFv.s | 11 - .../playerAnmWait_proc__11dGameover_cFv.s | 7 - .../saveClose_proc__11dGameover_cFv.s | 124 -- .../saveMove_proc__11dGameover_cFv.s | 20 - .../saveOpen_proc__11dGameover_cFv.s | 18 - ...tBackAlpha__24dDlst_GameOverScrnDraw_cFf.s | 18 - ...setAlphaKanteraChange__13dMeter2Draw_cFb.s | 85 - .../setAlphaMagicChange__13dMeter2Draw_cFb.s | 85 - .../setAlphaOxygenChange__13dMeter2Draw_cFb.s | 85 - 61 files changed, 739 insertions(+), 2199 deletions(-) delete mode 100644 asm/d/d_cam_param/Change__11dCamParam_cFl.s delete mode 100644 asm/d/d_cam_param/CheckLatitudeRange__11dCamSetup_cFPs.s delete mode 100644 asm/d/d_cam_param/PlayerHideDist__11dCamSetup_cFv.s delete mode 100644 asm/d/d_cam_param/SearchStyle__11dCamParam_cFUl.s delete mode 100644 asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s delete mode 100644 asm/d/d_cam_param/__ct__11dCamParam_cFl.s delete mode 100644 asm/d/d_cam_param/__ct__11dCamSetup_cFv.s delete mode 100644 asm/d/d_cam_param/__ct__9dCstick_cFv.s delete mode 100644 asm/d/d_cam_param/__dt__7cDegreeFv.s delete mode 100644 asm/d/d_cam_param/__dt__9dCstick_cFv.s delete mode 100644 asm/d/d_cam_param/rationalBezierRatio__8dCamMathFff.s delete mode 100644 asm/d/d_cam_param/xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz.s delete mode 100644 asm/d/d_cam_param/xyzRotateX__8dCamMathFR4cXyz7cSAngle.s delete mode 100644 asm/d/d_cam_param/xyzRotateY__8dCamMathFR4cXyz7cSAngle.s delete mode 100644 asm/d/d_cam_param/zoomFovy__8dCamMathFff.s delete mode 100644 asm/d/d_door_param2/getBLightInf__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getBRoomNo__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getBackOption__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getDoorModel__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getEventNo2__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getEventNo__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getExitNo__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getFLightInf__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getFRoomNo__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getFrontOption__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getKind__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getMBLightInf__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getMFLightInf__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getMsgNo__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getSwbit2__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getSwbit3__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/getSwbit__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_door_param2/isMsgDoor__13door_param2_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s delete mode 100644 asm/d/d_gameover/__ct__10dGov_HIO_cFv.s delete mode 100644 asm/d/d_gameover/__dt__24dDlst_GameOverScrnDraw_cFv.s delete mode 100644 asm/d/d_gameover/_delete__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/_draw__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/dGameover_Create__FP9msg_class.s delete mode 100644 asm/d/d_gameover/dGameover_Delete__FP11dGameover_c.s delete mode 100644 asm/d/d_gameover/dGameover_Draw__FP11dGameover_c.s delete mode 100644 asm/d/d_gameover/dGameover_Execute__FP11dGameover_c.s delete mode 100644 asm/d/d_gameover/d_GameOver_Create__FUc.s delete mode 100644 asm/d/d_gameover/d_GameOver_Delete__FRUi.s delete mode 100644 asm/d/d_gameover/demoFadeIn_init__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/demoFadeIn_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/demoFadeOut_init__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/demoFadeOut_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/dispFadeOut_init__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/dispFadeOut_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/dispWait_init__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/dispWait_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/playerAnmWait_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/saveClose_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/saveMove_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/saveOpen_proc__11dGameover_cFv.s delete mode 100644 asm/d/d_gameover/setBackAlpha__24dDlst_GameOverScrnDraw_cFf.s delete mode 100644 asm/d/meter/d_meter2_draw/setAlphaKanteraChange__13dMeter2Draw_cFb.s delete mode 100644 asm/d/meter/d_meter2_draw/setAlphaMagicChange__13dMeter2Draw_cFb.s delete mode 100644 asm/d/meter/d_meter2_draw/setAlphaOxygenChange__13dMeter2Draw_cFb.s diff --git a/Progress.md b/Progress.md index 7a349bf2fa..0619d1c12c 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 23.237864% | 835760 | 3596544 +.text | 23.385005% | 841052 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 31.330484% | 1259696 | 4020672 +Total | 31.462104% | 1264988 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 31.330484% | 1259696 | 4020672 +main.dol | 31.462104% | 1264988 | 4020672 RELs | 33.041295% | 3799856 | 11500324 -Total | 32.598114% | 5059552 | 15520996 +Total | 32.632210% | 5064844 | 15520996 ## RELs @@ -30,759 +30,759 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- f_pc_profile_lst | 100.000000% | 28156 | 28156 d_a_hozelda | 28.805621% | 4920 | 17080 -d_a_ni | 27.299309% | 8216 | 30096 -d_a_mg_fshop | 36.363636% | 9360 | 25740 -d_a_movie_player | 23.696790% | 8328 | 35144 -d_a_vrbox | 48.327138% | 1040 | 2152 -d_a_sq | 35.488722% | 3776 | 10640 -d_a_ppolamp | 42.341463% | 1736 | 4100 -d_a_demo_item | 33.863165% | 3920 | 11576 -d_a_cstaf | 32.377740% | 3840 | 11860 +d_a_passer_mng | 31.038027% | 2416 | 7784 +d_a_formation_mng | 27.806286% | 3468 | 12472 +d_a_guard_mng | 53.457447% | 804 | 1504 +d_a_arrow | 28.104690% | 6400 | 22772 +d_a_mant | 86.020312% | 40316 | 46868 +d_a_demo00 | 29.136000% | 7284 | 25000 +d_a_scene_exit | 61.359223% | 1264 | 2060 d_a_bg | 41.505376% | 3860 | 9300 +d_a_midna | 22.953368% | 12404 | 54040 +d_a_dmidna | 50.000000% | 944 | 1888 +d_a_swTime | 63.076923% | 656 | 1040 +d_a_tbox | 30.165503% | 9332 | 30936 +d_a_grass | 49.074395% | 28312 | 57692 +d_a_boomerang | 26.528647% | 6612 | 24924 +d_a_swc00 | 43.087121% | 1820 | 4224 +d_a_vrbox2 | 34.977578% | 2184 | 6244 +d_a_talk | 45.434783% | 836 | 1840 +d_a_suspend | 68.303571% | 612 | 896 +d_a_tbox2 | 42.486445% | 4388 | 10328 +d_a_dshutter | 46.003263% | 2256 | 4904 +d_a_cow | 22.936702% | 12784 | 55736 +d_a_scene_exit2 | 44.782034% | 1356 | 3028 +d_a_balloon_2D | 29.886212% | 3572 | 11952 +d_a_L7demo_dr | 30.796884% | 2056 | 6676 +d_a_myna | 30.876570% | 9736 | 31532 +d_a_set_bgobj | 100.000000% | 1108 | 1108 +d_a_mg_fshop | 36.363636% | 9360 | 25740 +d_a_path_line | 100.000000% | 508 | 508 +d_a_canoe | 28.479263% | 4944 | 17360 +d_a_do | 25.780847% | 10004 | 38804 +d_a_ykgr | 44.400631% | 2252 | 5072 +d_a_fr | 34.866377% | 4488 | 12872 +d_a_demo_item | 33.863165% | 3920 | 11576 +d_a_swBall | 33.297414% | 1236 | 3712 +d_a_mg_fish | 26.024167% | 17660 | 67860 +d_a_cstaf | 32.377740% | 3840 | 11860 +d_a_peru | 33.139234% | 10244 | 30912 +d_a_ppolamp | 42.341463% | 1736 | 4100 +d_a_crod | 33.887043% | 2448 | 7224 +d_a_horse | 22.301298% | 15668 | 70256 +d_a_spinner | 27.874187% | 5140 | 18440 +d_a_nbomb | 28.739233% | 8808 | 30648 d_a_tboxSw | 100.000000% | 1016 | 1016 d_a_title | 39.558574% | 2796 | 7068 -d_a_L7low_dr | 38.905775% | 1536 | 3948 -d_a_andsw2 | 29.472774% | 1364 | 4628 -d_a_nbomb | 28.739233% | 8808 | 30648 -d_a_talk | 45.434783% | 836 | 1840 -d_a_coach_2D | 38.344915% | 2428 | 6332 -d_a_ykgr | 44.400631% | 2252 | 5072 -d_a_scene_exit | 61.359223% | 1264 | 2060 -d_a_tbox2 | 42.486445% | 4388 | 10328 -d_a_shop_item | 43.088737% | 2020 | 4688 -d_a_midna | 22.953368% | 12404 | 54040 -d_a_passer_mng | 31.038027% | 2416 | 7784 -d_a_boomerang | 26.528647% | 6612 | 24924 -d_a_demo00 | 29.136000% | 7284 | 25000 -d_a_startAndGoal | 41.918528% | 1276 | 3044 -d_a_horse | 22.301298% | 15668 | 70256 -d_a_kago | 24.588671% | 15124 | 61508 -d_a_path_line | 100.000000% | 508 | 508 -d_a_do | 25.780847% | 10004 | 38804 -d_a_formation_mng | 27.806286% | 3468 | 12472 -d_a_andsw | 60.526316% | 644 | 1064 -d_a_dmidna | 50.000000% | 944 | 1888 -d_a_L7op_demo_dr | 26.198715% | 4240 | 16184 -d_a_guard_mng | 53.457447% | 804 | 1504 -d_a_econt | 59.836066% | 876 | 1464 -d_a_myna | 30.876570% | 9736 | 31532 -d_a_izumi_gate | 57.729941% | 1180 | 2044 -d_a_mirror | 32.707993% | 3208 | 9808 -d_a_cow | 22.936702% | 12784 | 55736 -d_a_disappear | 45.091514% | 1084 | 2404 -d_a_swc00 | 43.087121% | 1820 | 4224 -d_a_spinner | 27.874187% | 5140 | 18440 -d_a_swLBall | 33.651805% | 1268 | 3768 -d_a_suspend | 68.303571% | 612 | 896 -d_a_coach_fire | 44.050104% | 1688 | 3832 -d_a_bg_obj | 32.434657% | 6304 | 19436 -d_a_warp_bug | 54.940711% | 1112 | 2024 -d_a_vrbox2 | 34.977578% | 2184 | 6244 -d_a_alldie | 100.000000% | 2096 | 2096 d_a_bd | 31.115418% | 5780 | 18576 -d_a_scene_exit2 | 44.782034% | 1356 | 3028 -d_a_swhit0 | 35.577421% | 2748 | 7724 -d_a_swBall | 33.297414% | 1236 | 3712 -d_a_crod | 33.887043% | 2448 | 7224 -d_a_balloon_2D | 29.886212% | 3572 | 11952 -d_a_fr | 34.866377% | 4488 | 12872 -d_a_hitobj | 62.682927% | 1028 | 1640 -d_a_mg_rod | 24.484345% | 23836 | 97352 -d_a_skip_2D | 100.000000% | 1332 | 1332 -d_a_ep | 30.950696% | 5248 | 16956 -d_a_grass | 49.074395% | 28312 | 57692 -d_a_dshutter | 46.003263% | 2256 | 4904 -d_a_tbox | 30.165503% | 9332 | 30936 -d_a_peru | 33.139234% | 10244 | 30912 -d_a_set_bgobj | 100.000000% | 1108 | 1108 -d_a_mant | 86.020312% | 40316 | 46868 +d_a_coach_2D | 38.344915% | 2428 | 6332 +d_a_andsw2 | 29.472774% | 1364 | 4628 +d_a_alldie | 100.000000% | 2096 | 2096 +d_a_mirror | 32.707993% | 3208 | 9808 +d_a_bg_obj | 32.434657% | 6304 | 19436 d_a_cstatue | 29.155833% | 6728 | 23076 -d_a_swTime | 63.076923% | 656 | 1040 -d_a_arrow | 28.104690% | 6400 | 22772 -d_a_mg_fish | 26.024167% | 17660 | 67860 -d_a_L7demo_dr | 30.796884% | 2056 | 6676 -d_a_canoe | 28.479263% | 4944 | 17360 +d_a_swhit0 | 35.577421% | 2748 | 7724 +d_a_econt | 59.836066% | 876 | 1464 +d_a_disappear | 45.091514% | 1084 | 2404 +d_a_L7low_dr | 38.905775% | 1536 | 3948 +d_a_mg_rod | 24.484345% | 23836 | 97352 +d_a_startAndGoal | 41.918528% | 1276 | 3044 d_a_bullet | 42.660550% | 2604 | 6104 -d_a_tag_watchge | 61.290323% | 760 | 1240 -d_a_tag_mhint | 35.576923% | 1332 | 3744 -d_a_tag_attack_item | 43.212237% | 1808 | 4184 -d_a_tag_attention | 50.000000% | 1012 | 2024 -d_a_tag_myna2 | 47.260274% | 828 | 1752 -d_a_tag_Lv6Gate | 39.281576% | 2712 | 6904 -d_a_tag_hinit | 100.000000% | 1440 | 1440 -d_a_tag_camera | 37.023593% | 1632 | 4408 -d_a_tag_statue_evt | 38.427948% | 2816 | 7328 -d_a_tag_rmbit_sw | 46.642468% | 1028 | 2204 -d_a_tag_TWgate | 53.384834% | 10504 | 19676 -d_a_tag_smk_emt | 50.127226% | 788 | 1572 -d_a_tag_csw | 35.869565% | 3696 | 10304 -d_a_tag_evt | 37.815126% | 1620 | 4284 -d_a_tag_evtmsg | 39.491150% | 1428 | 3616 -d_a_tag_spring | 45.780591% | 868 | 1896 -d_a_tag_poFire | 63.270142% | 1068 | 1688 -d_a_tag_shop_camera | 62.541806% | 748 | 1196 -d_a_tag_wljump | 30.777538% | 1140 | 3704 -d_a_tag_telop | 100.000000% | 1040 | 1040 -d_a_tag_kago_fall | 34.469328% | 1416 | 4108 -d_a_tag_yami | 42.650334% | 1532 | 3592 -d_a_tag_Lv7Gate | 34.752224% | 2188 | 6296 -d_a_tag_arena | 82.022472% | 584 | 712 -d_a_tag_sppath | 33.333333% | 2040 | 6120 -d_a_tag_shop_item | 41.944848% | 1156 | 2756 -d_a_tag_theB_hint | 67.253521% | 764 | 1136 -d_a_tag_lv2prchk | 35.734870% | 992 | 2776 -d_a_tag_mmsg | 100.000000% | 1960 | 1960 -d_a_tag_lightball | 46.212121% | 976 | 2112 -d_a_tag_msg | 37.563971% | 1468 | 3908 -d_a_tag_pachi | 51.107595% | 1292 | 2528 -d_a_tag_evtarea | 37.091319% | 1316 | 3548 -d_a_tag_Lv8Gate | 43.347193% | 1668 | 3848 -d_a_tag_ret_room | 49.168646% | 828 | 1684 -d_a_tag_waterfall | 46.361502% | 1580 | 3408 -d_a_tag_gstart | 100.000000% | 1208 | 1208 -d_a_tag_mstop | 36.151961% | 1180 | 3264 -d_a_tag_escape | 100.000000% | 712 | 712 -d_a_tag_setrestart | 96.739130% | 1780 | 1840 -d_a_tag_river_back | 45.725916% | 1348 | 2948 -d_a_tag_qs | 34.804270% | 1956 | 5620 -d_a_tag_event | 31.075697% | 1248 | 4016 -d_a_tag_gra | 76.000000% | 608 | 800 -d_a_tag_ss_drink | 36.483740% | 1436 | 3936 -d_a_tag_allmato | 30.234070% | 3720 | 12304 -d_a_tag_bottle_item | 38.554217% | 1024 | 2656 -d_a_tag_push | 41.000000% | 1148 | 2800 -d_a_tag_stream | 49.729730% | 736 | 1480 -d_a_tag_magne | 100.000000% | 928 | 928 -d_a_tag_spinner | 45.850622% | 884 | 1928 -d_a_tag_schedule | 82.022472% | 584 | 712 -d_a_tag_setBall | 100.000000% | 880 | 880 -d_a_tag_kmsg | 32.037997% | 1484 | 4632 -d_a_tag_myna_light | 36.747759% | 1148 | 3124 -d_a_tag_howl | 46.934461% | 888 | 1892 -d_a_tag_chkpoint | 39.852399% | 864 | 2168 -d_a_tag_firewall | 35.325132% | 1608 | 4552 -d_a_tag_lv6CstaSw | 51.406250% | 1316 | 2560 -d_a_tag_instruction | 100.000000% | 712 | 712 -d_a_tag_mwait | 35.082873% | 1016 | 2896 -d_a_tag_ajnot | 56.493506% | 696 | 1232 -d_a_tag_hstop | 100.000000% | 3424 | 3424 -d_a_tag_chgrestart | 48.868778% | 864 | 1768 -d_a_tag_cstasw | 51.406250% | 1316 | 2560 -d_a_tag_lv5soup | 100.000000% | 1908 | 1908 -d_a_tag_lantern | 52.013423% | 1240 | 2384 -d_a_tag_guard | 54.421769% | 640 | 1176 -d_a_tag_assistance | 76.699029% | 632 | 824 -d_a_tag_mist | 43.436293% | 900 | 2072 -d_a_tag_wara_howl | 100.000000% | 1420 | 1420 -d_a_tag_hjump | 40.841584% | 1320 | 3232 -d_a_door_dbdoor00 | 40.734908% | 3104 | 7620 -d_a_door_spiral | 100.000000% | 504 | 504 -d_a_door_push | 37.997725% | 2672 | 7032 -d_a_door_shutter | 37.465797% | 14240 | 38008 -d_a_door_bossL5 | 39.221790% | 4032 | 10280 -d_a_door_mbossL1 | 34.467633% | 10372 | 30092 -d_a_door_bossl1 | 39.355114% | 7372 | 18732 -d_a_door_knob00 | 37.500000% | 4608 | 12288 -d_a_door_boss | 40.856890% | 3700 | 9056 -d_a_kytag10 | 31.720430% | 944 | 2976 -d_a_kytag12 | 20.217129% | 3352 | 16580 -d_a_kytag16 | 47.212544% | 1084 | 2296 -d_a_kytag17 | 86.170213% | 648 | 752 -d_a_kytag09 | 49.936948% | 1584 | 3172 -d_a_kytag07 | 60.062893% | 764 | 1272 -d_a_kytag04 | 36.357481% | 2148 | 5908 -d_a_kytag01 | 35.156250% | 1260 | 3584 -d_a_kytag08 | 31.379026% | 1520 | 4844 -d_a_kytag00 | 33.522084% | 2368 | 7064 -d_a_kytag02 | 54.888889% | 988 | 1800 -d_a_kytag14 | 100.000000% | 1408 | 1408 -d_a_kytag11 | 52.643172% | 956 | 1816 -d_a_kytag05 | 100.000000% | 816 | 816 -d_a_kytag13 | 30.696576% | 2080 | 6776 -d_a_kytag03 | 23.399898% | 1828 | 7812 -d_a_kytag15 | 49.443561% | 1244 | 2516 -d_a_kytag06 | 31.287129% | 4424 | 14140 -d_a_obj_lv4floor | 49.786020% | 1396 | 2804 -d_a_obj_scannon_ten | 37.738049% | 3884 | 10292 -d_a_obj_crvhahen | 37.120623% | 1908 | 5140 -d_a_obj_lv4HsTarget | 58.333333% | 1428 | 2448 -d_a_obj_kiPot | 53.782895% | 1308 | 2432 -d_a_obj_fireWood2 | 41.290323% | 2304 | 5580 -d_a_obj_lv4bridge | 47.146866% | 2016 | 4276 -d_a_obj_suisya | 49.914821% | 1172 | 2348 -d_a_obj_tatigi | 40.549020% | 2068 | 5100 -d_a_obj_volcbom | 32.897713% | 5236 | 15916 -d_a_obj_gra2 | 24.809250% | 21200 | 85452 -d_a_obj_yousei | 27.926623% | 4628 | 16572 -d_a_obj_laundry_rope | 34.459867% | 2284 | 6628 -d_a_obj_oiltubo | 40.168244% | 3056 | 7608 -d_a_obj_scannon | 35.209799% | 5404 | 15348 -d_a_obj_barDesk | 49.477072% | 2460 | 4972 -d_a_obj_yobikusa | 39.095993% | 3356 | 8584 -d_a_obj_Y_taihou | 37.379068% | 3400 | 9096 -d_a_obj_hbombkoya | 47.549020% | 3104 | 6528 -d_a_obj_keyhole | 33.394883% | 5064 | 15164 -d_a_obj_ki | 41.573034% | 2220 | 5340 -d_a_obj_lv6swturn | 36.266259% | 1896 | 5228 -d_a_obj_twGate | 57.395498% | 2856 | 4976 -d_a_obj_bsGate | 48.010850% | 2124 | 4424 -d_a_obj_zra_freeze | 37.662338% | 1624 | 4312 -d_a_obj_waterfall | 34.033613% | 2268 | 6664 -d_a_obj_kita | 40.112090% | 2004 | 4996 -d_a_obj_nan | 33.293811% | 5616 | 16868 -d_a_obj_testcube | 100.000000% | 504 | 504 -d_a_obj_batta | 31.886560% | 5172 | 16220 -d_a_obj_udoor | 49.156627% | 1632 | 3320 -d_a_obj_damCps | 100.000000% | 504 | 504 -d_a_obj_tobyhouse | 34.586466% | 3864 | 11172 -d_a_obj_enemy_create | 100.000000% | 2828 | 2828 -d_a_obj_magne_arm | 34.395028% | 7084 | 20596 -d_a_obj_TvCdlst | 43.547170% | 2308 | 5300 -d_a_obj_lv8OptiLift | 35.768374% | 3212 | 8980 -d_a_obj_avalanche | 41.881443% | 2600 | 6208 -d_a_obj_glowSphere | 38.917749% | 3596 | 9240 -d_a_obj_lv4CandleDemoTag | 46.972860% | 1800 | 3832 -d_a_obj_pillar | 38.500852% | 3616 | 9392 -d_a_obj_fchain | 30.649490% | 2284 | 7452 -d_a_obj_Turara | 38.494412% | 4684 | 12168 -d_a_obj_tgake | 49.302326% | 1272 | 2580 -d_a_obj_crvlh_up | 42.485784% | 2092 | 4924 -d_a_obj_lv7PropellerY | 41.738506% | 2324 | 5568 -d_a_obj_digholl | 42.781690% | 972 | 2272 -d_a_obj_swpush2 | 34.150019% | 3624 | 10612 -d_a_obj_warp_obrg | 34.784076% | 4124 | 11856 -d_a_obj_zrTuraraRock | 46.299094% | 2452 | 5296 -d_a_obj_scannon_crs | 35.204678% | 3612 | 10260 -d_a_obj_boumato | 40.192484% | 3508 | 8728 -d_a_obj_lv6FurikoTrap | 45.967742% | 2736 | 5952 -d_a_obj_fireWood | 44.125561% | 1968 | 4460 -d_a_obj_wdStick | 32.908234% | 4748 | 14428 -d_a_obj_lv4PoGate | 44.906743% | 2504 | 5576 -d_a_obj_rotBridge | 43.430152% | 2512 | 5784 -d_a_obj_bmWindow | 38.757933% | 3420 | 8824 -d_a_obj_smtile | 35.912938% | 2376 | 6616 -d_a_obj_sm_door | 39.302885% | 2616 | 6656 -d_a_obj_lv6bemos | 42.081031% | 3656 | 8688 -d_a_obj_lv3WaterB | 46.278317% | 1716 | 3708 -d_a_obj_swhang | 38.446450% | 3920 | 10196 -d_a_obj_kjgjs | 52.250804% | 1300 | 2488 -d_a_obj_drop | 30.227416% | 3828 | 12664 -d_a_obj_chandelier | 36.773256% | 2024 | 5504 -d_a_obj_lv7BsGate | 48.080279% | 2204 | 4584 -d_a_obj_volcball | 34.010759% | 4552 | 13384 -d_a_obj_heavySw | 41.214623% | 2796 | 6784 -d_a_obj_ikada | 40.697674% | 1960 | 4816 -d_a_obj_cho | 33.555219% | 4436 | 13220 -d_a_obj_hakai_ftr | 42.324888% | 2272 | 5368 -d_a_obj_stairBlock | 45.129643% | 2576 | 5708 -d_a_obj_brg | 22.881356% | 6696 | 29264 -d_a_obj_lv8UdFloor | 39.681529% | 2492 | 6280 -d_a_obj_zra_rock | 45.394112% | 1912 | 4212 -d_a_obj_kago | 31.956798% | 4024 | 12592 -d_a_obj_ice_s | 35.446009% | 2416 | 6816 -d_a_obj_klift00 | 37.650457% | 3128 | 8308 -d_a_obj_sakuita | 43.573382% | 1912 | 4388 -d_a_obj_ystone | 42.824944% | 2280 | 5324 -d_a_obj_bk_leaf | 41.935484% | 1144 | 2728 -d_a_obj_flag2 | 46.370840% | 5852 | 12620 -d_a_obj_flag3 | 33.292929% | 3296 | 9900 -d_a_obj_waterGate | 47.279550% | 2016 | 4264 -d_a_obj_lv1Candle01 | 44.344569% | 2368 | 5340 -d_a_obj_bosswarp | 39.728243% | 4912 | 12364 -d_a_obj_poCandle | 44.244604% | 2460 | 5560 -d_a_obj_vground | 44.817927% | 1280 | 2856 -d_a_obj_grave_stone | 42.700730% | 2340 | 5480 -d_a_obj_lv6elevta | 39.452780% | 1788 | 4532 -d_a_obj_bky_rock | 35.592460% | 3172 | 8912 -d_a_obj_burnbox | 45.251397% | 1620 | 3580 -d_a_obj_table | 45.544554% | 1656 | 3636 -d_a_obj_gm | 35.212957% | 4696 | 13336 -d_a_obj_szbridge | 43.280632% | 1752 | 4048 -d_a_obj_lv3Water | 44.263566% | 4568 | 10320 -d_a_obj_lv1Candle00 | 41.348158% | 2380 | 5756 -d_a_obj_ktonfire | 45.504087% | 2004 | 4404 -d_a_obj_sw | 27.590884% | 4068 | 14744 -d_a_obj_lv6bemos2 | 32.122093% | 7072 | 22016 -d_a_obj_kazeneko | 45.277127% | 2320 | 5124 -d_a_obj_fw | 43.368592% | 2132 | 4916 -d_a_obj_kamakiri | 30.171107% | 5572 | 18468 -d_a_obj_lv5SwIce | 46.408046% | 2584 | 5568 -d_a_obj_lv4digsand | 43.888433% | 2140 | 4876 -d_a_obj_kuwagata | 30.226537% | 5604 | 18540 -d_a_obj_food | 36.994728% | 3368 | 9104 -d_a_obj_hata | 39.059081% | 1428 | 3656 -d_a_obj_pleaf | 44.689221% | 2272 | 5084 -d_a_obj_dust | 40.406977% | 2224 | 5504 -d_a_obj_firepillar | 43.032015% | 1828 | 4248 -d_a_obj_brakeeff | 45.417515% | 1784 | 3928 -d_a_obj_lv9SwShutter | 48.128342% | 2160 | 4488 -d_a_obj_lv6SwGate | 40.186916% | 3784 | 9416 -d_a_obj_kwheel00 | 40.352811% | 2928 | 7256 -d_a_obj_crystal | 44.482173% | 1048 | 2356 -d_a_obj_hb | 29.310936% | 3420 | 11668 -d_a_obj_swchain | 24.473297% | 3996 | 16328 -d_a_obj_sword | 45.479963% | 1952 | 4292 -d_a_obj_shield | 34.160959% | 3192 | 9344 -d_a_obj_tmoon | 48.478702% | 956 | 1972 -d_a_obj_lv7bridge | 39.684569% | 3724 | 9384 -d_a_obj_lbox | 47.423510% | 2356 | 4968 -d_a_obj_lv6ChangeGate | 41.732283% | 3816 | 9144 -d_a_obj_sekidoor | 43.834383% | 1948 | 4444 -d_a_obj_pumpkin | 29.152971% | 4612 | 15820 -d_a_obj_bhashi | 31.443815% | 3772 | 11996 -d_a_obj_hhashi | 33.138856% | 3408 | 10284 -d_a_obj_riverrock | 37.311178% | 2964 | 7944 -d_a_obj_prop | 47.868217% | 988 | 2064 -d_a_obj_lv6Lblock | 46.958175% | 1976 | 4208 -d_a_obj_swBallC | 41.458222% | 3116 | 7516 -d_a_obj_digplace | 35.129068% | 1252 | 3564 -d_a_obj_lv4CandleTag | 50.114416% | 1752 | 3496 -d_a_obj_rw | 41.210834% | 3104 | 7532 -d_a_obj_syRock | 38.458961% | 4592 | 11940 -d_a_obj_bed | 42.310889% | 2036 | 4812 -d_a_obj_thdoor | 39.419319% | 2824 | 7164 -d_a_obj_kag | 32.055503% | 5452 | 17008 -d_a_obj_movebox | 36.691330% | 7736 | 21084 -d_a_obj_dan | 35.198921% | 4176 | 11864 -d_a_obj_magLiftRot | 40.697674% | 3080 | 7568 -d_a_obj_lv4SlideWall | 48.954373% | 2060 | 4208 -d_a_obj_toaru_maki | 46.596067% | 1232 | 2644 -d_a_obj_yel_bag | 33.773087% | 3584 | 10612 -d_a_obj_hsTarget | 57.317073% | 1504 | 2624 -d_a_obj_digsnow | 44.813278% | 2160 | 4820 -d_a_obj_bubblePilar | 44.760583% | 2580 | 5764 -d_a_obj_well_cover | 45.704467% | 1596 | 3492 -d_a_obj_mato | 37.093023% | 2552 | 6880 -d_a_obj_lv4RailWall | 41.496973% | 3016 | 7268 -d_a_obj_stonemark | 52.549020% | 1072 | 2040 -d_a_obj_gomikabe | 37.032799% | 3884 | 10488 -d_a_obj_lv5IceWall | 39.937435% | 3064 | 7672 -d_a_obj_life_container | 34.456243% | 3764 | 10924 -d_a_obj_lv3waterEff | 48.122066% | 820 | 1704 -d_a_obj_kwheel01 | 41.610233% | 2212 | 5316 -d_a_obj_firepillar2 | 32.320564% | 2936 | 9084 -d_a_obj_h_saku | 37.610063% | 2392 | 6360 -d_a_obj_warp_kbrg | 34.066524% | 5080 | 14912 -d_a_obj_so | 31.698636% | 6412 | 20228 -d_a_obj_kshutter | 35.690936% | 4804 | 13460 -d_a_obj_lv4prwall | 38.593750% | 1976 | 5120 -d_a_obj_ari | 31.622322% | 5372 | 16988 -d_a_obj_swpush5 | 39.210384% | 2900 | 7396 -d_a_obj_crvfence | 37.146893% | 3156 | 8496 -d_a_obj_crvlh_down | 42.363776% | 2208 | 5212 -d_a_obj_rock | 40.423729% | 1908 | 4720 -d_a_obj_poFire | 36.999540% | 3216 | 8692 -d_a_obj_stone | 26.135237% | 5272 | 20172 -d_a_obj_lv4gear | 42.242704% | 1100 | 2604 -d_a_obj_wchain | 31.823745% | 3120 | 9804 -d_a_obj_spinLift | 41.107692% | 2672 | 6500 -d_a_obj_lv3Candle | 45.638126% | 2260 | 4952 -d_a_obj_smw_stone | 40.435606% | 1708 | 4224 -d_a_obj_stick | 43.708609% | 2376 | 5436 -d_a_obj_groundwater | 40.823478% | 3728 | 9132 -d_a_obj_stopper | 31.675996% | 3848 | 12148 -d_a_obj_ten | 30.064631% | 5396 | 17948 -d_a_obj_mhole | 35.548173% | 2140 | 6020 -d_a_obj_fmobj | 55.200000% | 1104 | 2000 -d_a_obj_swallshutter | 41.268759% | 2420 | 5864 -d_a_obj_takaraDai | 46.376812% | 2304 | 4968 -d_a_obj_ice_l | 34.815373% | 1848 | 5308 -d_a_obj_fallobj | 31.929604% | 2032 | 6364 -d_a_obj_crvsteel | 48.717949% | 1520 | 3120 -d_a_obj_lv3Water2 | 41.786571% | 2788 | 6672 -d_a_obj_cboard | 57.703927% | 1528 | 2648 -d_a_obj_crope | 26.014689% | 2692 | 10348 -d_a_obj_sakuita_rope | 30.817009% | 2580 | 8372 -d_a_obj_eff | 73.504274% | 688 | 936 -d_a_obj_thashi | 49.534161% | 3828 | 7728 -d_a_obj_itamato | 38.072602% | 3524 | 9256 -d_a_obj_knBullet | 43.076923% | 1568 | 3640 -d_a_obj_wsword | 48.936170% | 1380 | 2820 -d_a_obj_smoke | 51.322751% | 776 | 1512 -d_a_obj_swBallA | 35.803945% | 2396 | 6692 -d_a_obj_cwall | 30.455195% | 5968 | 19596 -d_a_obj_picture | 35.041841% | 4020 | 11472 -d_a_obj_ladder | 42.348485% | 2236 | 5280 -d_a_obj_gptaru | 33.238231% | 4660 | 14020 -d_a_obj_rotTrap | 45.877144% | 3316 | 7228 -d_a_obj_swspinner | 39.141631% | 1824 | 4660 -d_a_obj_lv3saka00 | 50.576369% | 1404 | 2776 -d_a_obj_metalbox | 50.268097% | 1500 | 2984 -d_a_obj_bmshutter | 41.338854% | 2396 | 5796 -d_a_obj_kkanban | 47.103514% | 1984 | 4212 -d_a_obj_goGate | 48.046181% | 2164 | 4504 -d_a_obj_lv8KekkaiTrap | 49.367089% | 2028 | 4108 -d_a_obj_lv6Tenbin | 40.000000% | 2848 | 7120 -d_a_obj_kbox | 35.736196% | 3728 | 10432 -d_a_obj_bbox | 48.606466% | 1744 | 3588 -d_a_obj_bombf | 46.875000% | 1020 | 2176 -d_a_obj_key | 33.145009% | 3520 | 10620 -d_a_obj_crvgate | 27.603513% | 4400 | 15940 -d_a_obj_iceleaf | 37.604212% | 3428 | 9116 -d_a_obj_tombo | 33.688640% | 4804 | 14260 -d_a_obj_lv5ychndlr | 40.267765% | 3128 | 7768 -d_a_obj_usaku | 55.081301% | 1084 | 1968 -d_a_obj_gb | 41.063644% | 1884 | 4588 -d_a_obj_nougu | 42.325581% | 2548 | 6020 -d_a_obj_roten | 41.613588% | 1568 | 3768 -d_a_obj_timer | 46.691176% | 1016 | 2176 -d_a_obj_bhbridge | 39.936609% | 2016 | 5048 -d_a_obj_sekizo | 53.625171% | 1568 | 2924 -d_a_obj_saidan | 50.210970% | 1904 | 3792 -d_a_obj_grz_rock | 45.558087% | 1600 | 3512 -d_a_obj_kaisou | 41.645729% | 2652 | 6368 -d_a_obj_mvstair | 35.209479% | 3328 | 9452 -d_a_obj_pdoor | 37.254902% | 1900 | 5100 -d_a_obj_pdtile | 31.467607% | 2856 | 9076 -d_a_obj_inobone | 42.361111% | 1952 | 4608 -d_a_obj_msima | 35.108959% | 3480 | 9912 -d_a_obj_smgdoor | 41.383095% | 3016 | 7288 -d_a_obj_bemos | 32.943081% | 10580 | 32116 -d_a_obj_sekizoa | 32.789446% | 15112 | 46088 -d_a_obj_chest | 39.833795% | 2876 | 7220 -d_a_obj_snowEffTag | 46.419098% | 1400 | 3016 -d_a_obj_lv4sand | 46.461825% | 1996 | 4296 -d_a_obj_flag | 37.518248% | 2056 | 5480 -d_a_obj_maki | 45.531587% | 2364 | 5192 -d_a_obj_ss_drink | 36.026542% | 3692 | 10248 -d_a_obj_automata | 40.573951% | 3676 | 9060 -d_a_obj_geyser | 29.678068% | 3540 | 11928 -d_a_obj_cblock | 42.294713% | 3008 | 7112 -d_a_obj_taFence | 41.279360% | 3304 | 8004 -d_a_obj_window | 42.655602% | 2056 | 4820 -d_a_obj_swturn | 31.295716% | 2396 | 7656 -d_a_obj_rcircle | 43.989432% | 1332 | 3028 -d_a_obj_kanban2 | 30.775877% | 7124 | 23148 -d_a_obj_iceblock | 32.744340% | 4744 | 14488 -d_a_obj_lv6TogeTrap | 34.484536% | 5352 | 15520 -d_a_obj_wflag | 41.214286% | 2308 | 5600 -d_a_obj_cdoor | 40.255786% | 2644 | 6568 -d_a_obj_lv8Lift | 35.532359% | 3404 | 9580 -d_a_obj_zcloth | 52.373418% | 1324 | 2528 -d_a_obj_katatsumuri | 31.170697% | 5208 | 16708 -d_a_obj_togeTrap | 41.746183% | 3500 | 8384 -d_a_obj_web0 | 75.286533% | 4204 | 5584 -d_a_obj_ganonwall | 38.930481% | 1456 | 3740 -d_a_obj_kantera | 37.623762% | 2432 | 6464 -d_a_obj_gra_rock | 37.947123% | 2928 | 7716 -d_a_obj_lv5yiblltray | 33.403583% | 3804 | 11388 -d_a_obj_swLight | 40.346767% | 3444 | 8536 -d_a_obj_tks | 34.669261% | 7128 | 20560 -d_a_obj_nameplate | 39.726962% | 2328 | 5860 -d_a_obj_nagaisu | 37.130271% | 2360 | 6356 -d_a_obj_stopper2 | 38.987342% | 1848 | 4740 -d_a_obj_graWall | 55.725191% | 1168 | 2096 -d_a_obj_balloon | 42.722710% | 2724 | 6376 -d_a_obj_rgate | 36.466069% | 5696 | 15620 -d_a_obj_waterPillar | 37.877429% | 5068 | 13380 -d_a_obj_swBallB | 34.276891% | 2664 | 7772 -d_a_obj_fan | 39.173554% | 2844 | 7260 -d_a_obj_lv4EdShutter | 45.846154% | 2384 | 5200 -d_a_obj_swpropeller | 39.765679% | 2308 | 5804 -d_a_obj_dmelevator | 35.600390% | 4376 | 12292 -d_a_obj_onsenTaru | 38.567616% | 3468 | 8992 -d_a_obj_wind_stone | 37.702265% | 1864 | 4944 -d_a_obj_kgate | 35.192216% | 5932 | 16856 -d_a_obj_lv6TogeRoll | 35.933806% | 4256 | 11844 -d_a_obj_ornament_cloth | 38.734568% | 2008 | 5184 -d_a_obj_ita | 42.717855% | 2804 | 6564 -d_a_obj_ndoor | 51.957831% | 1380 | 2656 -d_a_obj_kznkarm | 35.088583% | 2852 | 8128 -d_a_obj_zrTurara | 43.437672% | 3164 | 7284 -d_a_obj_wood_statue | 36.601579% | 3524 | 9628 -d_a_obj_rstair | 37.354086% | 2688 | 7196 -d_a_obj_lv6SzGate | 45.147151% | 2884 | 6388 -d_a_obj_tp | 35.262726% | 3436 | 9744 -d_a_obj_swpush | 31.657104% | 3752 | 11852 -d_a_obj_lv4Gate | 48.863636% | 2064 | 4224 -d_a_obj_ito | 30.588925% | 4176 | 13652 -d_a_obj_master_sword | 43.575419% | 2808 | 6444 -d_a_obj_carry | 29.827071% | 18352 | 61528 -d_a_obj_myogan | 51.677852% | 1848 | 3576 -d_a_obj_toby | 32.460733% | 3720 | 11460 -d_a_obj_lv5FloorBoard | 47.577093% | 2592 | 5448 -d_a_obj_smallkey | 31.464798% | 3772 | 11988 -d_a_obj_rfHole | 43.621701% | 2380 | 5456 -d_a_obj_tornado | 36.577869% | 1428 | 3904 -d_a_obj_rope_bridge | 36.903633% | 4672 | 12660 -d_a_obj_zraMark | 34.016942% | 3052 | 8972 -d_a_obj_ss_item | 38.313378% | 2944 | 7684 -d_a_obj_laundry | 39.077103% | 2676 | 6848 -d_a_obj_lv4chandelier | 26.284971% | 4848 | 18444 -d_a_obj_Lv5Key | 37.172105% | 2324 | 6252 -d_a_obj_zdoor | 45.037688% | 2868 | 6368 -d_a_obj_kage | 50.520833% | 1164 | 2304 -d_a_obj_magLift | 41.319181% | 2180 | 5276 -d_a_obj_timeFire | 43.483146% | 1548 | 3560 -d_a_obj_mie | 34.891676% | 3672 | 10524 -d_a_obj_octhashi | 35.325420% | 3452 | 9772 -d_a_obj_onsenFire | 61.419753% | 796 | 1296 -d_a_obj_cb | 43.008475% | 2436 | 5664 -d_a_obj_poTbox | 44.731739% | 2768 | 6188 -d_a_obj_kbacket | 33.053127% | 3932 | 11896 -d_a_obj_lv4prelvtr | 48.664688% | 1312 | 2696 -d_a_obj_ihasi | 43.372216% | 1636 | 3772 -d_a_obj_pdwall | 40.192308% | 1672 | 4160 -d_a_obj_web1 | 100.000000% | 5772 | 5772 -d_a_obj_hfuta | 39.073970% | 2768 | 7084 -d_a_obj_lv2candle | 38.160920% | 2656 | 6960 -d_a_obj_wood_pendulum | 44.455748% | 1748 | 3932 -d_a_obj_onsen | 49.239281% | 1424 | 2892 -d_a_obj_hasu2 | 41.190476% | 1384 | 3360 -d_a_obj_catdoor | 82.338611% | 2704 | 3284 -d_a_obj_bkdoor | 45.847554% | 1612 | 3516 -d_a_obj_mgate | 47.398844% | 1968 | 4152 -d_a_obj_ganonwall2 | 41.938675% | 1696 | 4044 -d_a_obj_hakai_brl | 40.491284% | 2044 | 5048 -d_a_obj_lp | 29.557762% | 2620 | 8864 -d_a_obj_gadget | 34.371565% | 3752 | 10916 -d_a_obj_tornado2 | 30.997110% | 1716 | 5536 -d_a_obj_amiShutter | 42.478422% | 2756 | 6488 -d_a_obj_lv6egate | 42.456719% | 2060 | 4852 -d_a_obj_snow_soup | 37.025948% | 1484 | 4008 -d_a_obj_kabuto | 30.226537% | 5604 | 18540 -d_a_obj_treesh | 48.098664% | 1872 | 3892 -d_a_obj_cowdoor | 56.672761% | 1240 | 2188 -d_a_obj_mirror_sand | 46.972860% | 1800 | 3832 -d_a_obj_mirror_chain | 34.916201% | 3500 | 10024 -d_a_obj_mirror_screw | 40.374532% | 2156 | 5340 -d_a_obj_mirror_6pole | 49.656751% | 1736 | 3496 -d_a_obj_mirror_table | 38.664122% | 4052 | 10480 -d_a_npc_doc | 38.160961% | 8516 | 22316 -d_a_npc_tkc | 32.075472% | 7820 | 24380 -d_a_npc_aru | 34.812103% | 12932 | 37148 -d_a_npc_kolinb | 41.382827% | 8116 | 19612 -d_a_npc_knj | 41.627219% | 5628 | 13520 -d_a_npc_fish | 79.939819% | 3188 | 3988 -d_a_npc_raca | 38.792102% | 8016 | 20664 -d_a_npc_pachi_taro | 42.126544% | 15420 | 36604 -d_a_npc_rafrel | 29.654182% | 10736 | 36204 -d_a_npc_seirei | 39.691517% | 6176 | 15560 -d_a_npc_doorboy | 35.898009% | 6420 | 17884 -d_a_npc_zra | 24.569698% | 26608 | 108296 -d_a_npc_chin | 33.958357% | 11808 | 34772 -d_a_npc_zant | 38.262795% | 6220 | 16256 -d_a_npc_kkri | 38.042823% | 10092 | 26528 -d_a_npc_zelRo | 37.784656% | 6836 | 18092 -d_a_npc_zelR | 37.762547% | 6832 | 18092 -d_a_npc_ne | 24.204919% | 12360 | 51064 -d_a_npc_kasi_kyu | 33.587533% | 8104 | 24128 -d_a_npc_shop_maro | 53.691275% | 2880 | 5364 -d_a_npc_grs | 33.634658% | 7888 | 23452 -d_a_npc_lf | 39.566396% | 2336 | 5904 -d_a_npc_wrestler | 27.819607% | 28820 | 103596 -d_a_npc_grm | 38.118162% | 6968 | 18280 -d_a_npc_besu | 38.726854% | 19492 | 50332 -d_a_npc_yelia | 40.634175% | 13840 | 34060 -d_a_npc_bouS | 32.586831% | 9720 | 29828 -d_a_npc_kakashi | 39.139523% | 8988 | 22964 -d_a_npc_p2 | 100.000000% | 632 | 632 -d_a_npc_jagar | 33.736985% | 11924 | 35344 -d_a_npc_inko | 32.502352% | 2764 | 8504 -d_a_npc_len | 37.465709% | 11472 | 30620 -d_a_npc_moir | 28.712188% | 11656 | 40596 -d_a_npc_tkj2 | 28.985507% | 5520 | 19044 -d_a_npc_gro | 33.290996% | 9436 | 28344 -d_a_npc_kasi_mich | 33.749584% | 8108 | 24024 -d_a_npc_the | 34.936999% | 9760 | 27936 -d_a_npc_df | 35.418672% | 2944 | 8312 -d_a_npc_uri | 34.281392% | 13596 | 39660 -d_a_npc_grz | 31.010419% | 12620 | 40696 -d_a_npc_prayer | 36.469470% | 6140 | 16836 -d_a_npc_shop0 | 38.731379% | 3224 | 8324 -d_a_npc_bans | 34.954955% | 11640 | 33300 -d_a_npc_midp | 37.189356% | 6764 | 18188 -d_a_npc_bou | 36.186814% | 12800 | 35372 -d_a_npc_hanjo | 32.618297% | 14476 | 44380 -d_a_npc_fairy_seirei | 42.302956% | 5496 | 12992 -d_a_npc_du | 35.940410% | 3860 | 10740 -d_a_npc_sq | 39.651108% | 3364 | 8484 -d_a_npc_zrc | 32.120762% | 10384 | 32328 -d_a_npc_kdk | 100.000000% | 504 | 504 -d_a_npc_grc | 32.984636% | 8072 | 24472 -d_a_npc_fguard | 42.375887% | 2868 | 6768 -d_a_npc_ashB | 32.906995% | 8336 | 25332 -d_a_npc_kn | 34.989558% | 48252 | 137904 -d_a_npc_chat | 56.591640% | 32384 | 57224 -d_a_npc_ash | 31.737680% | 9892 | 31168 -d_a_npc_tr | 57.199682% | 2876 | 5028 -d_a_npc_blue_ns | 31.763122% | 7552 | 23776 -d_a_npc_yamid | 36.895778% | 7236 | 19612 -d_a_npc_zanb | 37.827310% | 6992 | 18484 -d_a_npc_tkj | 37.419769% | 6996 | 18696 -d_a_npc_shoe | 36.629002% | 6224 | 16992 -d_a_npc_hoz | 40.521518% | 14048 | 34668 -d_a_npc_pachi_maro | 38.260301% | 9360 | 24464 -d_a_npc_seid | 42.554557% | 5304 | 12464 -d_a_npc_pachi_besu | 42.797557% | 11492 | 26852 -d_a_npc_gwolf | 35.693780% | 11936 | 33440 -d_a_npc_grmc | 40.486016% | 7064 | 17448 -d_a_npc_fairy | 39.344262% | 19776 | 50264 -d_a_npc_gra | 30.387241% | 20120 | 66212 -d_a_npc_tks | 27.123246% | 14384 | 53032 -d_a_npc_ykm | 32.908526% | 20348 | 61832 -d_a_npc_clerka | 36.659479% | 7480 | 20404 -d_a_npc_coach | 28.195770% | 12052 | 42744 -d_a_npc_worm | 33.717579% | 2340 | 6940 -d_a_npc_grr | 33.284338% | 8152 | 24492 -d_a_npc_kolin | 35.754689% | 14412 | 40308 -d_a_npc_clerkt | 36.386139% | 7056 | 19392 -d_a_npc_grd | 33.161068% | 7700 | 23220 -d_a_npc_theB | 34.129794% | 9256 | 27120 -d_a_npc_toby | 35.857461% | 14168 | 39512 -d_a_npc_yamit | 36.693548% | 7280 | 19840 -d_a_npc_maro | 36.380572% | 21872 | 60120 -d_a_npc_ins | 30.852199% | 10412 | 33748 -d_a_npc_seira | 38.908741% | 11324 | 29104 -d_a_npc_post | 37.414676% | 10524 | 28128 -d_a_npc_passer2 | 37.528815% | 3256 | 8676 -d_a_npc_seib | 42.233442% | 5688 | 13468 -d_a_npc_mk | 100.000000% | 632 | 632 -d_a_npc_lud | 38.010021% | 12744 | 33528 -d_a_npc_drainSol | 38.587732% | 4328 | 11216 -d_a_npc_ykw | 33.875000% | 18428 | 54400 -d_a_npc_shad | 27.050485% | 14960 | 55304 -d_a_npc_soldierA | 34.996894% | 6760 | 19316 -d_a_npc_zrz | 31.977232% | 13708 | 42868 -d_a_npc_tk | 22.166176% | 12656 | 57096 -d_a_npc_soldierB | 35.587267% | 6484 | 18220 -d_a_npc_pouya | 40.447529% | 11424 | 28244 -d_a_npc_guard | 35.071398% | 6484 | 18488 -d_a_npc_yamis | 36.878425% | 7268 | 19708 -d_a_npc_sola | 39.560155% | 6116 | 15460 -d_a_npc_ks | 24.232793% | 27448 | 113268 -d_a_npc_taro | 38.152632% | 28996 | 76000 -d_a_npc_seira2 | 39.278557% | 10192 | 25948 -d_a_npc_henna0 | 100.000000% | 504 | 504 -d_a_npc_passer | 35.701424% | 8724 | 24436 -d_a_npc_moi | 34.114704% | 14728 | 43172 -d_a_npc_impal | 32.590326% | 8948 | 27456 -d_a_npc_kyury | 39.351296% | 9172 | 23308 -d_a_npc_saru | 39.289415% | 10616 | 27020 -d_a_npc_shaman | 40.368229% | 10612 | 26288 -d_a_npc_cdn3 | 34.686491% | 14184 | 40892 -d_a_npc_gnd | 36.965399% | 6880 | 18612 -d_a_npc_myna2 | 33.448276% | 8924 | 26680 -d_a_npc_kasi_hana | 29.810206% | 10492 | 35196 -d_a_npc_clerkb | 36.128920% | 8340 | 23084 -d_a_npc_zelda | 37.603569% | 7080 | 18828 -d_a_npc_henna | 27.446434% | 11836 | 43124 -d_a_npc_seic | 42.554557% | 5304 | 12464 -d_a_e_ws | 29.700483% | 6148 | 20700 +d_a_ep | 30.950696% | 5248 | 16956 +d_a_skip_2D | 100.000000% | 1332 | 1332 +d_a_kago | 24.588671% | 15124 | 61508 +d_a_hitobj | 62.682927% | 1028 | 1640 +d_a_swLBall | 33.651805% | 1268 | 3768 +d_a_ni | 27.299309% | 8216 | 30096 +d_a_sq | 35.488722% | 3776 | 10640 +d_a_vrbox | 48.327138% | 1040 | 2152 +d_a_andsw | 60.526316% | 644 | 1064 +d_a_warp_bug | 54.940711% | 1112 | 2024 +d_a_coach_fire | 44.050104% | 1688 | 3832 +d_a_movie_player | 23.696790% | 8328 | 35144 +d_a_izumi_gate | 57.729941% | 1180 | 2044 +d_a_shop_item | 43.088737% | 2020 | 4688 +d_a_L7op_demo_dr | 26.198715% | 4240 | 16184 +d_a_e_zs | 31.358336% | 3980 | 12692 +d_a_e_bg | 27.665091% | 7256 | 26228 +d_a_e_gob | 26.683396% | 10208 | 38256 +d_a_e_oc | 22.586920% | 11148 | 49356 +d_a_e_mm | 27.438612% | 4872 | 17756 +d_a_e_sg | 29.168221% | 6256 | 21448 +d_a_e_zh | 27.029865% | 9268 | 34288 +d_a_e_bu | 30.436573% | 5912 | 19424 +d_a_e_yd | 27.879315% | 7688 | 27576 +d_a_e_sm | 24.418880% | 8236 | 33728 +d_a_e_nz | 32.041969% | 4764 | 14868 +d_a_e_rdb | 27.331887% | 9576 | 35036 +d_a_e_gi | 30.183330% | 6388 | 21164 +d_a_e_fk | 32.965394% | 4420 | 13408 +d_a_e_mb | 29.067542% | 4252 | 14628 +d_a_e_ga | 43.014395% | 2032 | 4724 +d_a_e_bs | 32.320835% | 5448 | 16856 +d_a_e_hzelda | 30.097531% | 7900 | 26248 +d_a_e_rb | 30.197628% | 4584 | 15180 +d_a_e_bi_leaf | 50.446429% | 904 | 1792 +d_a_e_bee | 30.316629% | 4864 | 16044 +d_a_e_yg | 28.386013% | 7436 | 26196 +d_a_e_ww | 23.418134% | 10052 | 42924 +d_a_e_tk | 32.077326% | 3916 | 12208 +d_a_e_dn | 25.842869% | 13460 | 52084 +d_a_e_warpappear | 28.864569% | 4220 | 14620 +d_a_e_yc | 30.733107% | 4712 | 15332 +d_a_e_wb | 23.058129% | 20008 | 86772 +d_a_e_bi | 30.767563% | 5676 | 18448 +d_a_e_ymb | 23.798093% | 14672 | 61652 +d_a_e_dk | 29.244060% | 5416 | 18520 +d_a_e_sh | 30.953709% | 6660 | 21516 +d_a_e_arrow | 35.306882% | 4556 | 12904 +d_a_e_sb | 28.045789% | 5488 | 19568 +d_a_e_tk_ball | 33.349562% | 2740 | 8216 +d_a_e_st_line | 60.459770% | 1052 | 1740 +d_a_e_cr | 34.481521% | 3844 | 11148 d_a_e_ym | 20.062370% | 13896 | 69264 +d_a_e_mm_mt | 28.672856% | 4200 | 14648 +d_a_e_is | 31.728595% | 3928 | 12380 +d_a_e_gb | 26.939571% | 8292 | 30780 +d_a_e_hb | 27.624471% | 7568 | 27396 +d_a_e_sf | 29.821481% | 8152 | 27336 +d_a_e_fs | 31.823996% | 4976 | 15636 +d_a_e_ai | 28.308171% | 5100 | 18016 +d_a_e_rd | 24.121965% | 25632 | 106260 +d_a_e_ge | 24.669967% | 7176 | 29088 +d_a_e_fz | 30.508860% | 5372 | 17608 +d_a_e_sw | 21.949266% | 9864 | 44940 +d_a_e_st | 26.260013% | 12588 | 47936 +d_a_e_yh | 26.277603% | 9996 | 38040 +d_a_e_nest | 29.119005% | 5804 | 19932 +d_a_e_hz | 23.990326% | 7936 | 33080 +d_a_e_s1 | 28.078818% | 9804 | 34916 +d_a_e_hp | 28.231798% | 6840 | 24228 +d_a_e_ym_tag | 61.764706% | 672 | 1088 d_a_e_po | 23.824220% | 14204 | 59620 d_a_e_dt | 27.760631% | 12952 | 46656 -d_a_e_bi | 30.767563% | 5676 | 18448 -d_a_e_tk | 32.077326% | 3916 | 12208 -d_a_e_ai | 28.308171% | 5100 | 18016 -d_a_e_md | 34.917814% | 3144 | 9004 -d_a_e_tk2 | 33.419577% | 3100 | 9276 -d_a_e_fk | 32.965394% | 4420 | 13408 -d_a_e_db_leaf | 57.582938% | 972 | 1688 -d_a_e_ms | 28.208138% | 5768 | 20448 -d_a_e_cr_egg | 43.296089% | 1860 | 4296 -d_a_e_mb | 29.067542% | 4252 | 14628 -d_a_e_yc | 30.733107% | 4712 | 15332 -d_a_e_pz | 27.469575% | 13904 | 50616 -d_a_e_mm | 27.438612% | 4872 | 17756 -d_a_e_db | 26.006517% | 9896 | 38052 -d_a_e_rb | 30.197628% | 4584 | 15180 -d_a_e_s1 | 28.078818% | 9804 | 34916 -d_a_e_gm | 28.274812% | 10404 | 36796 -d_a_e_sh | 30.953709% | 6660 | 21516 -d_a_e_sw | 21.949266% | 9864 | 44940 -d_a_e_ph | 23.274129% | 5556 | 23872 -d_a_e_df | 28.031364% | 4004 | 14284 -d_a_e_hzelda | 30.097531% | 7900 | 26248 -d_a_e_hb | 27.624471% | 7568 | 27396 -d_a_e_sg | 29.168221% | 6256 | 21448 -d_a_e_kk | 27.161029% | 7516 | 27672 -d_a_e_yr | 27.591936% | 9964 | 36112 -d_a_e_bi_leaf | 50.446429% | 904 | 1792 -d_a_e_vt | 24.313702% | 16332 | 67172 -d_a_e_th_ball | 29.462631% | 5724 | 19428 -d_a_e_mm_mt | 28.672856% | 4200 | 14648 -d_a_e_bug | 29.207138% | 5172 | 17708 -d_a_e_sm2 | 30.097087% | 8184 | 27192 -d_a_e_ww | 23.418134% | 10052 | 42924 -d_a_e_dk | 29.244060% | 5416 | 18520 -d_a_e_dd | 26.687870% | 7384 | 27668 -d_a_e_ba | 28.140394% | 5484 | 19488 -d_a_e_yd | 27.879315% | 7688 | 27576 -d_a_e_kr | 27.652396% | 9508 | 34384 -d_a_e_hm | 27.299426% | 8180 | 29964 -d_a_e_zs | 31.358336% | 3980 | 12692 -d_a_e_rd | 24.121965% | 25632 | 106260 -d_a_e_fm | 24.588144% | 15164 | 61672 -d_a_e_hz | 23.990326% | 7936 | 33080 -d_a_e_is | 31.728595% | 3928 | 12380 -d_a_e_st_line | 60.459770% | 1052 | 1740 -d_a_e_pm | 21.505129% | 11236 | 52248 -d_a_e_oc | 22.586920% | 11148 | 49356 -d_a_e_rdy | 25.649401% | 19788 | 77148 -d_a_e_zh | 27.029865% | 9268 | 34288 -d_a_e_hp | 28.231798% | 6840 | 24228 -d_a_e_sb | 28.045789% | 5488 | 19568 d_a_e_mf | 25.211695% | 12624 | 50072 -d_a_e_gi | 30.183330% | 6388 | 21164 -d_a_e_bs | 32.320835% | 5448 | 16856 -d_a_e_nest | 29.119005% | 5804 | 19932 -d_a_e_rdb | 27.331887% | 9576 | 35036 -d_a_e_yh | 26.277603% | 9996 | 38040 -d_a_e_kg | 31.431080% | 4296 | 13668 -d_a_e_gs | 44.729606% | 1952 | 4364 -d_a_e_fs | 31.823996% | 4976 | 15636 -d_a_e_wb | 23.058129% | 20008 | 86772 -d_a_e_fz | 30.508860% | 5372 | 17608 -d_a_e_mk_bo | 29.776477% | 4476 | 15032 d_a_e_th | 29.463680% | 6944 | 23568 -d_a_e_ga | 43.014395% | 2032 | 4724 -d_a_e_st | 26.260013% | 12588 | 47936 -d_a_e_hb_leaf | 55.309735% | 1000 | 1808 -d_a_e_sf | 29.821481% | 8152 | 27336 +d_a_e_hm | 27.299426% | 8180 | 29964 +d_a_e_ba | 28.140394% | 5484 | 19488 d_a_e_tt | 27.836991% | 7104 | 25520 -d_a_e_ge | 24.669967% | 7176 | 29088 -d_a_e_arrow | 35.306882% | 4556 | 12904 -d_a_e_yk | 29.001484% | 5472 | 18868 -d_a_e_nz | 32.041969% | 4764 | 14868 -d_a_e_fb | 31.127328% | 4948 | 15896 -d_a_e_warpappear | 28.864569% | 4220 | 14620 -d_a_e_ot | 32.497589% | 5392 | 16592 -d_a_e_zm | 28.267015% | 5200 | 18396 -d_a_e_sm | 24.418880% | 8236 | 33728 -d_a_e_ymb | 23.798093% | 14672 | 61652 -d_a_e_gob | 26.683396% | 10208 | 38256 +d_a_e_gm | 28.274812% | 10404 | 36796 d_a_e_oct_bg | 30.217151% | 6568 | 21736 -d_a_e_yg | 28.386013% | 7436 | 26196 -d_a_e_tk_ball | 33.349562% | 2740 | 8216 -d_a_e_bee | 30.316629% | 4864 | 16044 -d_a_e_ym_tag | 61.764706% | 672 | 1088 -d_a_e_gb | 26.939571% | 8292 | 30780 -d_a_e_mk | 25.747187% | 11716 | 45504 -d_a_e_dn | 25.842869% | 13460 | 52084 -d_a_e_cr | 34.481521% | 3844 | 11148 +d_a_e_mk_bo | 29.776477% | 4476 | 15032 +d_a_e_ws | 29.700483% | 6148 | 20700 +d_a_e_vt | 24.313702% | 16332 | 67172 +d_a_e_tk2 | 33.419577% | 3100 | 9276 +d_a_e_bug | 29.207138% | 5172 | 17708 +d_a_e_cr_egg | 43.296089% | 1860 | 4296 +d_a_e_pz | 27.469575% | 13904 | 50616 +d_a_e_ph | 23.274129% | 5556 | 23872 +d_a_e_rdy | 25.649401% | 19788 | 77148 +d_a_e_yr | 27.591936% | 9964 | 36112 +d_a_e_db | 26.006517% | 9896 | 38052 +d_a_e_hb_leaf | 55.309735% | 1000 | 1808 +d_a_e_df | 28.031364% | 4004 | 14284 +d_a_e_yk | 29.001484% | 5472 | 18868 +d_a_e_md | 34.917814% | 3144 | 9004 +d_a_e_sm2 | 30.097087% | 8184 | 27192 +d_a_e_ot | 32.497589% | 5392 | 16592 +d_a_e_kk | 27.161029% | 7516 | 27672 +d_a_e_kr | 27.652396% | 9508 | 34384 +d_a_e_ms | 28.208138% | 5768 | 20448 +d_a_e_fm | 24.588144% | 15164 | 61672 +d_a_e_fb | 31.127328% | 4948 | 15896 +d_a_e_pm | 21.505129% | 11236 | 52248 +d_a_e_dd | 26.687870% | 7384 | 27668 d_a_e_yd_leaf | 54.022989% | 1128 | 2088 -d_a_e_bu | 30.436573% | 5912 | 19424 -d_a_e_bg | 27.665091% | 7256 | 26228 -d_a_b_bh | 24.452445% | 6520 | 26664 -d_a_b_yo_ice | 28.297953% | 5972 | 21104 -d_a_b_dre | 27.912731% | 4964 | 17784 -d_a_b_yo | 25.613486% | 14404 | 56236 -d_a_b_gnd | 25.489573% | 19264 | 75576 -d_a_b_oh | 32.611348% | 4276 | 13112 -d_a_b_go | 44.671347% | 2800 | 6268 -d_a_b_zant_magic | 42.453480% | 2464 | 5804 -d_a_b_tn | 24.850960% | 21176 | 85212 +d_a_e_zm | 28.267015% | 5200 | 18396 +d_a_e_th_ball | 29.462631% | 5724 | 19428 +d_a_e_mk | 25.747187% | 11716 | 45504 +d_a_e_gs | 44.729606% | 1952 | 4364 +d_a_e_db_leaf | 57.582938% | 972 | 1688 +d_a_e_kg | 31.431080% | 4296 | 13668 +d_a_kytag03 | 23.399898% | 1828 | 7812 +d_a_kytag00 | 33.522084% | 2368 | 7064 +d_a_kytag02 | 54.888889% | 988 | 1800 +d_a_kytag07 | 60.062893% | 764 | 1272 +d_a_kytag14 | 100.000000% | 1408 | 1408 +d_a_kytag11 | 52.643172% | 956 | 1816 +d_a_kytag04 | 36.357481% | 2148 | 5908 +d_a_kytag13 | 30.696576% | 2080 | 6776 +d_a_kytag05 | 100.000000% | 816 | 816 +d_a_kytag15 | 49.443561% | 1244 | 2516 +d_a_kytag01 | 35.156250% | 1260 | 3584 +d_a_kytag08 | 31.379026% | 1520 | 4844 +d_a_kytag09 | 49.936948% | 1584 | 3172 +d_a_kytag17 | 86.170213% | 648 | 752 +d_a_kytag16 | 47.212544% | 1084 | 2296 +d_a_kytag12 | 20.217129% | 3352 | 16580 +d_a_kytag06 | 31.287129% | 4424 | 14140 +d_a_kytag10 | 31.720430% | 944 | 2976 +d_a_tag_setrestart | 96.739130% | 1780 | 1840 +d_a_tag_TWgate | 53.384834% | 10504 | 19676 +d_a_tag_sppath | 33.333333% | 2040 | 6120 +d_a_tag_ss_drink | 36.483740% | 1436 | 3936 +d_a_tag_myna_light | 36.747759% | 1148 | 3124 +d_a_tag_hstop | 100.000000% | 3424 | 3424 +d_a_tag_evt | 37.815126% | 1620 | 4284 +d_a_tag_wljump | 30.777538% | 1140 | 3704 +d_a_tag_waterfall | 46.361502% | 1580 | 3408 +d_a_tag_statue_evt | 38.427948% | 2816 | 7328 +d_a_tag_kago_fall | 34.469328% | 1416 | 4108 +d_a_tag_watchge | 61.290323% | 760 | 1240 +d_a_tag_guard | 54.421769% | 640 | 1176 +d_a_tag_evtmsg | 39.491150% | 1428 | 3616 +d_a_tag_attention | 50.000000% | 1012 | 2024 +d_a_tag_gstart | 100.000000% | 1208 | 1208 +d_a_tag_qs | 34.804270% | 1956 | 5620 +d_a_tag_shop_item | 41.944848% | 1156 | 2756 +d_a_tag_ajnot | 56.493506% | 696 | 1232 +d_a_tag_csw | 35.869565% | 3696 | 10304 +d_a_tag_instruction | 100.000000% | 712 | 712 +d_a_tag_event | 31.075697% | 1248 | 4016 +d_a_tag_rmbit_sw | 46.642468% | 1028 | 2204 +d_a_tag_gra | 76.000000% | 608 | 800 +d_a_tag_lightball | 46.212121% | 976 | 2112 +d_a_tag_push | 41.000000% | 1148 | 2800 +d_a_tag_kmsg | 32.037997% | 1484 | 4632 +d_a_tag_cstasw | 51.406250% | 1316 | 2560 +d_a_tag_Lv8Gate | 43.347193% | 1668 | 3848 +d_a_tag_schedule | 82.022472% | 584 | 712 +d_a_tag_smk_emt | 50.127226% | 788 | 1572 +d_a_tag_attack_item | 43.212237% | 1808 | 4184 +d_a_tag_setBall | 100.000000% | 880 | 880 +d_a_tag_pachi | 51.107595% | 1292 | 2528 +d_a_tag_arena | 82.022472% | 584 | 712 +d_a_tag_shop_camera | 62.541806% | 748 | 1196 +d_a_tag_firewall | 35.325132% | 1608 | 4552 +d_a_tag_lv5soup | 100.000000% | 1908 | 1908 +d_a_tag_poFire | 63.270142% | 1068 | 1688 +d_a_tag_telop | 100.000000% | 1040 | 1040 +d_a_tag_Lv6Gate | 39.281576% | 2712 | 6904 +d_a_tag_stream | 49.729730% | 736 | 1480 +d_a_tag_howl | 46.934461% | 888 | 1892 +d_a_tag_wara_howl | 100.000000% | 1420 | 1420 +d_a_tag_mmsg | 100.000000% | 1960 | 1960 +d_a_tag_river_back | 45.725916% | 1348 | 2948 +d_a_tag_theB_hint | 67.253521% | 764 | 1136 +d_a_tag_lantern | 52.013423% | 1240 | 2384 +d_a_tag_lv6CstaSw | 51.406250% | 1316 | 2560 +d_a_tag_mhint | 35.576923% | 1332 | 3744 +d_a_tag_hjump | 40.841584% | 1320 | 3232 +d_a_tag_bottle_item | 38.554217% | 1024 | 2656 +d_a_tag_mist | 43.436293% | 900 | 2072 +d_a_tag_spring | 45.780591% | 868 | 1896 +d_a_tag_lv2prchk | 35.734870% | 992 | 2776 +d_a_tag_msg | 37.563971% | 1468 | 3908 +d_a_tag_myna2 | 47.260274% | 828 | 1752 +d_a_tag_Lv7Gate | 34.752224% | 2188 | 6296 +d_a_tag_hinit | 100.000000% | 1440 | 1440 +d_a_tag_allmato | 30.234070% | 3720 | 12304 +d_a_tag_camera | 37.023593% | 1632 | 4408 +d_a_tag_chkpoint | 39.852399% | 864 | 2168 +d_a_tag_magne | 100.000000% | 928 | 928 +d_a_tag_assistance | 76.699029% | 632 | 824 +d_a_tag_chgrestart | 48.868778% | 864 | 1768 +d_a_tag_ret_room | 49.168646% | 828 | 1684 +d_a_tag_spinner | 45.850622% | 884 | 1928 +d_a_tag_evtarea | 37.091319% | 1316 | 3548 +d_a_tag_yami | 42.650334% | 1532 | 3592 +d_a_tag_escape | 100.000000% | 712 | 712 +d_a_tag_mwait | 35.082873% | 1016 | 2896 +d_a_tag_mstop | 36.151961% | 1180 | 3264 +d_a_obj_oiltubo | 40.168244% | 3056 | 7608 +d_a_obj_goGate | 48.046181% | 2164 | 4504 +d_a_obj_master_sword | 43.575419% | 2808 | 6444 +d_a_obj_glowSphere | 38.917749% | 3596 | 9240 +d_a_obj_sm_door | 39.302885% | 2616 | 6656 +d_a_obj_msima | 35.108959% | 3480 | 9912 +d_a_obj_grz_rock | 45.558087% | 1600 | 3512 +d_a_obj_warp_kbrg | 34.066524% | 5080 | 14912 +d_a_obj_bky_rock | 35.592460% | 3172 | 8912 +d_a_obj_zra_freeze | 37.662338% | 1624 | 4312 +d_a_obj_fw | 43.368592% | 2132 | 4916 +d_a_obj_iceleaf | 37.604212% | 3428 | 9116 +d_a_obj_waterfall | 34.033613% | 2268 | 6664 +d_a_obj_digholl | 42.781690% | 972 | 2272 +d_a_obj_lv4prelvtr | 48.664688% | 1312 | 2696 +d_a_obj_lv4PoGate | 44.906743% | 2504 | 5576 +d_a_obj_kkanban | 47.103514% | 1984 | 4212 +d_a_obj_well_cover | 45.704467% | 1596 | 3492 +d_a_obj_carry | 29.827071% | 18352 | 61528 +d_a_obj_rock | 40.423729% | 1908 | 4720 +d_a_obj_yel_bag | 33.773087% | 3584 | 10612 +d_a_obj_kbox | 35.736196% | 3728 | 10432 +d_a_obj_prop | 47.868217% | 988 | 2064 +d_a_obj_gra_rock | 37.947123% | 2928 | 7716 +d_a_obj_ganonwall2 | 41.938675% | 1696 | 4044 +d_a_obj_lv4Gate | 48.863636% | 2064 | 4224 +d_a_obj_syRock | 38.458961% | 4592 | 11940 +d_a_obj_web1 | 100.000000% | 5772 | 5772 +d_a_obj_sekidoor | 43.834383% | 1948 | 4444 +d_a_obj_lv6TogeRoll | 35.933806% | 4256 | 11844 +d_a_obj_groundwater | 40.823478% | 3728 | 9132 +d_a_obj_lv6elevta | 39.452780% | 1788 | 4532 +d_a_obj_stonemark | 52.549020% | 1072 | 2040 +d_a_obj_life_container | 34.456243% | 3764 | 10924 +d_a_obj_lv4bridge | 47.146866% | 2016 | 4276 +d_a_obj_lv2candle | 38.160920% | 2656 | 6960 +d_a_obj_kgate | 35.192216% | 5932 | 16856 +d_a_obj_lv7PropellerY | 41.738506% | 2324 | 5568 +d_a_obj_wchain | 31.823745% | 3120 | 9804 +d_a_obj_damCps | 100.000000% | 504 | 504 +d_a_obj_lv5yiblltray | 33.403583% | 3804 | 11388 +d_a_obj_lv4prwall | 38.593750% | 1976 | 5120 +d_a_obj_kazeneko | 45.277127% | 2320 | 5124 +d_a_obj_picture | 35.041841% | 4020 | 11472 +d_a_obj_poTbox | 44.731739% | 2768 | 6188 +d_a_obj_catdoor | 82.338611% | 2704 | 3284 +d_a_obj_pillar | 38.500852% | 3616 | 9392 +d_a_obj_firepillar2 | 32.320564% | 2936 | 9084 +d_a_obj_kznkarm | 35.088583% | 2852 | 8128 +d_a_obj_tgake | 49.302326% | 1272 | 2580 +d_a_obj_tornado | 36.577869% | 1428 | 3904 +d_a_obj_hfuta | 39.073970% | 2768 | 7084 +d_a_obj_lbox | 47.423510% | 2356 | 4968 +d_a_obj_hakai_brl | 40.491284% | 2044 | 5048 +d_a_obj_myogan | 51.677852% | 1848 | 3576 +d_a_obj_stopper | 31.675996% | 3848 | 12148 +d_a_obj_rfHole | 43.621701% | 2380 | 5456 +d_a_obj_hata | 39.059081% | 1428 | 3656 +d_a_obj_ito | 30.588925% | 4176 | 13652 +d_a_obj_lv7bridge | 39.684569% | 3724 | 9384 +d_a_obj_lv7BsGate | 48.080279% | 2204 | 4584 +d_a_obj_lv8Lift | 35.532359% | 3404 | 9580 +d_a_obj_klift00 | 37.650457% | 3128 | 8308 +d_a_obj_scannon_crs | 35.204678% | 3612 | 10260 +d_a_obj_window | 42.655602% | 2056 | 4820 +d_a_obj_balloon | 42.722710% | 2724 | 6376 +d_a_obj_enemy_create | 100.000000% | 2828 | 2828 +d_a_obj_pdoor | 37.254902% | 1900 | 5100 +d_a_obj_nougu | 42.325581% | 2548 | 6020 +d_a_obj_ihasi | 43.372216% | 1636 | 3772 +d_a_obj_zraMark | 34.016942% | 3052 | 8972 +d_a_obj_heavySw | 41.214623% | 2796 | 6784 +d_a_obj_flag2 | 46.370840% | 5852 | 12620 +d_a_obj_kita | 40.112090% | 2004 | 4996 +d_a_obj_poCandle | 44.244604% | 2460 | 5560 +d_a_obj_barDesk | 49.477072% | 2460 | 4972 +d_a_obj_Lv5Key | 37.172105% | 2324 | 6252 +d_a_obj_lv4RailWall | 41.496973% | 3016 | 7268 +d_a_obj_bmWindow | 38.757933% | 3420 | 8824 +d_a_obj_kshutter | 35.690936% | 4804 | 13460 +d_a_obj_lv4floor | 49.786020% | 1396 | 2804 +d_a_obj_ice_l | 34.815373% | 1848 | 5308 +d_a_obj_iceblock | 32.744340% | 4744 | 14488 +d_a_obj_hhashi | 33.138856% | 3408 | 10284 +d_a_obj_bbox | 48.606466% | 1744 | 3588 +d_a_obj_maki | 45.531587% | 2364 | 5192 +d_a_obj_lv3waterEff | 48.122066% | 820 | 1704 +d_a_obj_lv4EdShutter | 45.846154% | 2384 | 5200 +d_a_obj_ikada | 40.697674% | 1960 | 4816 +d_a_obj_wood_statue | 36.601579% | 3524 | 9628 +d_a_obj_crope | 26.014689% | 2692 | 10348 +d_a_obj_swLight | 40.346767% | 3444 | 8536 +d_a_obj_bsGate | 48.010850% | 2124 | 4424 +d_a_obj_lv5ychndlr | 40.267765% | 3128 | 7768 +d_a_obj_lv1Candle00 | 41.348158% | 2380 | 5756 +d_a_obj_lv1Candle01 | 44.344569% | 2368 | 5340 +d_a_obj_ki | 41.573034% | 2220 | 5340 +d_a_obj_gomikabe | 37.032799% | 3884 | 10488 +d_a_obj_lv8OptiLift | 35.768374% | 3212 | 8980 +d_a_obj_swBallC | 41.458222% | 3116 | 7516 +d_a_obj_gadget | 34.371565% | 3752 | 10916 +d_a_obj_twGate | 57.395498% | 2856 | 4976 +d_a_obj_tombo | 33.688640% | 4804 | 14260 +d_a_obj_lv6SwGate | 40.186916% | 3784 | 9416 +d_a_obj_mie | 34.891676% | 3672 | 10524 +d_a_obj_smw_stone | 40.435606% | 1708 | 4224 +d_a_obj_h_saku | 37.610063% | 2392 | 6360 +d_a_obj_riverrock | 37.311178% | 2964 | 7944 +d_a_obj_fallobj | 31.929604% | 2032 | 6364 +d_a_obj_crvlh_down | 42.363776% | 2208 | 5212 +d_a_obj_bombf | 46.875000% | 1020 | 2176 +d_a_obj_ita | 42.717855% | 2804 | 6564 +d_a_obj_toaru_maki | 46.596067% | 1232 | 2644 +d_a_obj_lv6egate | 42.456719% | 2060 | 4852 +d_a_obj_lv3Candle | 45.638126% | 2260 | 4952 +d_a_obj_tatigi | 40.549020% | 2068 | 5100 +d_a_obj_geyser | 29.678068% | 3540 | 11928 +d_a_obj_lv3Water | 44.263566% | 4568 | 10320 +d_a_obj_lv6TogeTrap | 34.484536% | 5352 | 15520 +d_a_obj_wsword | 48.936170% | 1380 | 2820 +d_a_obj_stairBlock | 45.129643% | 2576 | 5708 +d_a_obj_fmobj | 55.200000% | 1104 | 2000 +d_a_obj_firepillar | 43.032015% | 1828 | 4248 +d_a_obj_suisya | 49.914821% | 1172 | 2348 +d_a_obj_web0 | 75.286533% | 4204 | 5584 +d_a_obj_swpush2 | 34.150019% | 3624 | 10612 +d_a_obj_wflag | 41.214286% | 2308 | 5600 +d_a_obj_hb | 29.310936% | 3420 | 11668 +d_a_obj_zra_rock | 45.394112% | 1912 | 4212 +d_a_obj_crvsteel | 48.717949% | 1520 | 3120 +d_a_obj_itamato | 38.072602% | 3524 | 9256 +d_a_obj_lv8KekkaiTrap | 49.367089% | 2028 | 4108 +d_a_obj_kwheel00 | 40.352811% | 2928 | 7256 +d_a_obj_crvgate | 27.603513% | 4400 | 15940 +d_a_obj_tornado2 | 30.997110% | 1716 | 5536 +d_a_obj_eff | 73.504274% | 688 | 936 +d_a_obj_bk_leaf | 41.935484% | 1144 | 2728 +d_a_obj_chandelier | 36.773256% | 2024 | 5504 +d_a_obj_togeTrap | 41.746183% | 3500 | 8384 +d_a_obj_testcube | 100.000000% | 504 | 504 +d_a_obj_sekizo | 53.625171% | 1568 | 2924 +d_a_obj_swhang | 38.446450% | 3920 | 10196 +d_a_obj_sakuita_rope | 30.817009% | 2580 | 8372 +d_a_obj_bhbridge | 39.936609% | 2016 | 5048 +d_a_obj_fireWood | 44.125561% | 1968 | 4460 +d_a_obj_nan | 33.293811% | 5616 | 16868 +d_a_obj_lv3Water2 | 41.786571% | 2788 | 6672 +d_a_obj_ten | 30.064631% | 5396 | 17948 +d_a_obj_fireWood2 | 41.290323% | 2304 | 5580 +d_a_obj_pleaf | 44.689221% | 2272 | 5084 +d_a_obj_rgate | 36.466069% | 5696 | 15620 +d_a_obj_knBullet | 43.076923% | 1568 | 3640 +d_a_obj_treesh | 48.098664% | 1872 | 3892 +d_a_obj_automata | 40.573951% | 3676 | 9060 +d_a_obj_ornament_cloth | 38.734568% | 2008 | 5184 +d_a_obj_kbacket | 33.053127% | 3932 | 11896 +d_a_obj_avalanche | 41.881443% | 2600 | 6208 +d_a_obj_vground | 44.817927% | 1280 | 2856 +d_a_obj_crvfence | 37.146893% | 3156 | 8496 +d_a_obj_kantera | 37.623762% | 2432 | 6464 +d_a_obj_brg | 22.881356% | 6696 | 29264 +d_a_obj_ss_item | 38.313378% | 2944 | 7684 +d_a_obj_scannon_ten | 37.738049% | 3884 | 10292 +d_a_obj_cwall | 30.455195% | 5968 | 19596 +d_a_obj_sw | 27.590884% | 4068 | 14744 +d_a_obj_sakuita | 43.573382% | 1912 | 4388 +d_a_obj_rstair | 37.354086% | 2688 | 7196 +d_a_obj_metalbox | 50.268097% | 1500 | 2984 +d_a_obj_octhashi | 35.325420% | 3452 | 9772 +d_a_obj_dust | 40.406977% | 2224 | 5504 +d_a_obj_hsTarget | 57.317073% | 1504 | 2624 +d_a_obj_timer | 46.691176% | 1016 | 2176 +d_a_obj_graWall | 55.725191% | 1168 | 2096 +d_a_obj_lv4chandelier | 26.284971% | 4848 | 18444 +d_a_obj_rw | 41.210834% | 3104 | 7532 +d_a_obj_zdoor | 45.037688% | 2868 | 6368 +d_a_obj_spinLift | 41.107692% | 2672 | 6500 +d_a_obj_lv9SwShutter | 48.128342% | 2160 | 4488 +d_a_obj_bemos | 32.943081% | 10580 | 32116 +d_a_obj_bkdoor | 45.847554% | 1612 | 3516 +d_a_obj_takaraDai | 46.376812% | 2304 | 4968 +d_a_obj_food | 36.994728% | 3368 | 9104 +d_a_obj_kago | 31.956798% | 4024 | 12592 +d_a_obj_crystal | 44.482173% | 1048 | 2356 +d_a_obj_warp_obrg | 34.784076% | 4124 | 11856 +d_a_obj_lv6swturn | 36.266259% | 1896 | 5228 +d_a_obj_ganonwall | 38.930481% | 1456 | 3740 +d_a_obj_onsen | 49.239281% | 1424 | 2892 +d_a_obj_ndoor | 51.957831% | 1380 | 2656 +d_a_obj_poFire | 36.999540% | 3216 | 8692 +d_a_obj_grave_stone | 42.700730% | 2340 | 5480 +d_a_obj_timeFire | 43.483146% | 1548 | 3560 +d_a_obj_brakeeff | 45.417515% | 1784 | 3928 +d_a_obj_rotTrap | 45.877144% | 3316 | 7228 +d_a_obj_burnbox | 45.251397% | 1620 | 3580 +d_a_obj_kabuto | 30.226537% | 5604 | 18540 +d_a_obj_wood_pendulum | 44.455748% | 1748 | 3932 +d_a_obj_wind_stone | 37.702265% | 1864 | 4944 +d_a_obj_tks | 34.669261% | 7128 | 20560 +d_a_obj_lv5FloorBoard | 47.577093% | 2592 | 5448 +d_a_obj_cblock | 42.294713% | 3008 | 7112 +d_a_obj_snow_soup | 37.025948% | 1484 | 4008 +d_a_obj_movebox | 36.691330% | 7736 | 21084 +d_a_obj_inobone | 42.361111% | 1952 | 4608 +d_a_obj_lv4digsand | 43.888433% | 2140 | 4876 +d_a_obj_flag | 37.518248% | 2056 | 5480 +d_a_obj_smgdoor | 41.383095% | 3016 | 7288 +d_a_obj_flag3 | 33.292929% | 3296 | 9900 +d_a_obj_gptaru | 33.238231% | 4660 | 14020 +d_a_obj_onsenFire | 61.419753% | 796 | 1296 +d_a_obj_so | 31.698636% | 6412 | 20228 +d_a_obj_volcbom | 32.897713% | 5236 | 15916 +d_a_obj_nameplate | 39.726962% | 2328 | 5860 +d_a_obj_ice_s | 35.446009% | 2416 | 6816 +d_a_obj_ladder | 42.348485% | 2236 | 5280 +d_a_obj_zrTurara | 43.437672% | 3164 | 7284 +d_a_obj_drop | 30.227416% | 3828 | 12664 +d_a_obj_swpropeller | 39.765679% | 2308 | 5804 +d_a_obj_Turara | 38.494412% | 4684 | 12168 +d_a_obj_lv6SzGate | 45.147151% | 2884 | 6388 +d_a_obj_szbridge | 43.280632% | 1752 | 4048 +d_a_obj_table | 45.544554% | 1656 | 3636 +d_a_obj_lv6Tenbin | 40.000000% | 2848 | 7120 +d_a_obj_gra2 | 24.809250% | 21200 | 85452 +d_a_obj_pdwall | 40.192308% | 1672 | 4160 +d_a_obj_kuwagata | 30.226537% | 5604 | 18540 +d_a_obj_fan | 39.173554% | 2844 | 7260 +d_a_obj_gm | 35.212957% | 4696 | 13336 +d_a_obj_smtile | 35.912938% | 2376 | 6616 +d_a_obj_ss_drink | 36.026542% | 3692 | 10248 +d_a_obj_saidan | 50.210970% | 1904 | 3792 +d_a_obj_swBallA | 35.803945% | 2396 | 6692 +d_a_obj_ystone | 42.824944% | 2280 | 5324 +d_a_obj_cowdoor | 56.672761% | 1240 | 2188 +d_a_obj_lv4CandleTag | 50.114416% | 1752 | 3496 +d_a_obj_ari | 31.622322% | 5372 | 16988 +d_a_obj_stopper2 | 38.987342% | 1848 | 4740 +d_a_obj_rotBridge | 43.430152% | 2512 | 5784 +d_a_obj_dmelevator | 35.600390% | 4376 | 12292 +d_a_obj_lv4SlideWall | 48.954373% | 2060 | 4208 +d_a_obj_kwheel01 | 41.610233% | 2212 | 5316 +d_a_obj_yousei | 27.926623% | 4628 | 16572 +d_a_obj_mhole | 35.548173% | 2140 | 6020 +d_a_obj_cho | 33.555219% | 4436 | 13220 +d_a_obj_batta | 31.886560% | 5172 | 16220 +d_a_obj_sekizoa | 32.789446% | 15112 | 46088 +d_a_obj_lv6bemos2 | 32.122093% | 7072 | 22016 +d_a_obj_rcircle | 43.989432% | 1332 | 3028 +d_a_obj_lv6bemos | 42.081031% | 3656 | 8688 +d_a_obj_onsenTaru | 38.567616% | 3468 | 8992 +d_a_obj_kamakiri | 30.171107% | 5572 | 18468 +d_a_obj_digplace | 35.129068% | 1252 | 3564 +d_a_obj_amiShutter | 42.478422% | 2756 | 6488 +d_a_obj_lv6FurikoTrap | 45.967742% | 2736 | 5952 +d_a_obj_crvlh_up | 42.485784% | 2092 | 4924 +d_a_obj_laundry | 39.077103% | 2676 | 6848 +d_a_obj_swspinner | 39.141631% | 1824 | 4660 +d_a_obj_stone | 26.135237% | 5272 | 20172 +d_a_obj_lv4gear | 42.242704% | 1100 | 2604 +d_a_obj_mgate | 47.398844% | 1968 | 4152 +d_a_obj_swpush5 | 39.210384% | 2900 | 7396 +d_a_obj_digsnow | 44.813278% | 2160 | 4820 +d_a_obj_yobikusa | 39.095993% | 3356 | 8584 +d_a_obj_lv4CandleDemoTag | 46.972860% | 1800 | 3832 +d_a_obj_lv5SwIce | 46.408046% | 2584 | 5568 +d_a_obj_pdtile | 31.467607% | 2856 | 9076 +d_a_obj_cboard | 57.703927% | 1528 | 2648 +d_a_obj_lv8UdFloor | 39.681529% | 2492 | 6280 +d_a_obj_kanban2 | 30.775877% | 7124 | 23148 +d_a_obj_lv4HsTarget | 58.333333% | 1428 | 2448 +d_a_obj_key | 33.145009% | 3520 | 10620 +d_a_obj_scannon | 35.209799% | 5404 | 15348 +d_a_obj_waterGate | 47.279550% | 2016 | 4264 +d_a_obj_thashi | 49.534161% | 3828 | 7728 +d_a_obj_cb | 43.008475% | 2436 | 5664 +d_a_obj_keyhole | 33.394883% | 5064 | 15164 +d_a_obj_hakai_ftr | 42.324888% | 2272 | 5368 +d_a_obj_swpush | 31.657104% | 3752 | 11852 +d_a_obj_swturn | 31.295716% | 2396 | 7656 +d_a_obj_lv4sand | 46.461825% | 1996 | 4296 +d_a_obj_ktonfire | 45.504087% | 2004 | 4404 +d_a_obj_wdStick | 32.908234% | 4748 | 14428 +d_a_obj_kag | 32.055503% | 5452 | 17008 +d_a_obj_hasu2 | 41.190476% | 1384 | 3360 +d_a_obj_swchain | 24.473297% | 3996 | 16328 +d_a_obj_pumpkin | 29.152971% | 4612 | 15820 +d_a_obj_swallshutter | 41.268759% | 2420 | 5864 +d_a_obj_chest | 39.833795% | 2876 | 7220 +d_a_obj_kaisou | 41.645729% | 2652 | 6368 +d_a_obj_sword | 45.479963% | 1952 | 4292 +d_a_obj_thdoor | 39.419319% | 2824 | 7164 +d_a_obj_hbombkoya | 47.549020% | 3104 | 6528 +d_a_obj_lv5IceWall | 39.937435% | 3064 | 7672 +d_a_obj_stick | 43.708609% | 2376 | 5436 +d_a_obj_udoor | 49.156627% | 1632 | 3320 +d_a_obj_taFence | 41.279360% | 3304 | 8004 +d_a_obj_nagaisu | 37.130271% | 2360 | 6356 +d_a_obj_mvstair | 35.209479% | 3328 | 9452 +d_a_obj_roten | 41.613588% | 1568 | 3768 +d_a_obj_crvhahen | 37.120623% | 1908 | 5140 +d_a_obj_tp | 35.262726% | 3436 | 9744 +d_a_obj_tobyhouse | 34.586466% | 3864 | 11172 +d_a_obj_Y_taihou | 37.379068% | 3400 | 9096 +d_a_obj_bubblePilar | 44.760583% | 2580 | 5764 +d_a_obj_usaku | 55.081301% | 1084 | 1968 +d_a_obj_bosswarp | 39.728243% | 4912 | 12364 +d_a_obj_lp | 29.557762% | 2620 | 8864 +d_a_obj_rope_bridge | 36.903633% | 4672 | 12660 +d_a_obj_lv3saka00 | 50.576369% | 1404 | 2776 +d_a_obj_katatsumuri | 31.170697% | 5208 | 16708 +d_a_obj_mato | 37.093023% | 2552 | 6880 +d_a_obj_dan | 35.198921% | 4176 | 11864 +d_a_obj_TvCdlst | 43.547170% | 2308 | 5300 +d_a_obj_volcball | 34.010759% | 4552 | 13384 +d_a_obj_lv6Lblock | 46.958175% | 1976 | 4208 +d_a_obj_waterPillar | 37.877429% | 5068 | 13380 +d_a_obj_bhashi | 31.443815% | 3772 | 11996 +d_a_obj_zrTuraraRock | 46.299094% | 2452 | 5296 +d_a_obj_magLiftRot | 40.697674% | 3080 | 7568 +d_a_obj_lv3WaterB | 46.278317% | 1716 | 3708 +d_a_obj_kage | 50.520833% | 1164 | 2304 +d_a_obj_bmshutter | 41.338854% | 2396 | 5796 +d_a_obj_boumato | 40.192484% | 3508 | 8728 +d_a_obj_smoke | 51.322751% | 776 | 1512 +d_a_obj_smallkey | 31.464798% | 3772 | 11988 +d_a_obj_bed | 42.310889% | 2036 | 4812 +d_a_obj_snowEffTag | 46.419098% | 1400 | 3016 +d_a_obj_kiPot | 53.782895% | 1308 | 2432 +d_a_obj_tmoon | 48.478702% | 956 | 1972 +d_a_obj_toby | 32.460733% | 3720 | 11460 +d_a_obj_shield | 34.160959% | 3192 | 9344 +d_a_obj_kjgjs | 52.250804% | 1300 | 2488 +d_a_obj_cdoor | 40.255786% | 2644 | 6568 +d_a_obj_laundry_rope | 34.459867% | 2284 | 6628 +d_a_obj_lv6ChangeGate | 41.732283% | 3816 | 9144 +d_a_obj_magLift | 41.319181% | 2180 | 5276 +d_a_obj_zcloth | 52.373418% | 1324 | 2528 +d_a_obj_magne_arm | 34.395028% | 7084 | 20596 +d_a_obj_gb | 41.063644% | 1884 | 4588 +d_a_obj_fchain | 30.649490% | 2284 | 7452 +d_a_obj_swBallB | 34.276891% | 2664 | 7772 +d_a_obj_mirror_6pole | 49.656751% | 1736 | 3496 +d_a_obj_mirror_table | 38.664122% | 4052 | 10480 +d_a_obj_mirror_sand | 46.972860% | 1800 | 3832 +d_a_obj_mirror_screw | 40.374532% | 2156 | 5340 +d_a_obj_mirror_chain | 34.916201% | 3500 | 10024 +d_a_door_knob00 | 37.500000% | 4608 | 12288 +d_a_door_shutter | 37.465797% | 14240 | 38008 +d_a_door_boss | 40.856890% | 3700 | 9056 +d_a_door_mbossL1 | 34.467633% | 10372 | 30092 +d_a_door_push | 37.997725% | 2672 | 7032 +d_a_door_spiral | 100.000000% | 504 | 504 +d_a_door_bossl1 | 39.355114% | 7372 | 18732 +d_a_door_bossL5 | 39.221790% | 4032 | 10280 +d_a_door_dbdoor00 | 40.734908% | 3104 | 7620 +d_a_npc_mk | 100.000000% | 632 | 632 +d_a_npc_kn | 34.989558% | 48252 | 137904 +d_a_npc_aru | 34.812103% | 12932 | 37148 +d_a_npc_kakashi | 39.139523% | 8988 | 22964 +d_a_npc_ykw | 33.875000% | 18428 | 54400 +d_a_npc_pouya | 40.447529% | 11424 | 28244 +d_a_npc_drainSol | 38.587732% | 4328 | 11216 +d_a_npc_bou | 36.186814% | 12800 | 35372 +d_a_npc_chat | 56.591640% | 32384 | 57224 +d_a_npc_toby | 35.857461% | 14168 | 39512 +d_a_npc_ins | 30.852199% | 10412 | 33748 +d_a_npc_post | 37.414676% | 10524 | 28128 +d_a_npc_doorboy | 35.898009% | 6420 | 17884 +d_a_npc_besu | 38.726854% | 19492 | 50332 +d_a_npc_len | 37.465709% | 11472 | 30620 +d_a_npc_ashB | 32.906995% | 8336 | 25332 +d_a_npc_bans | 34.954955% | 11640 | 33300 +d_a_npc_coach | 28.195770% | 12052 | 42744 +d_a_npc_zrc | 32.120762% | 10384 | 32328 +d_a_npc_kyury | 39.351296% | 9172 | 23308 +d_a_npc_inko | 32.502352% | 2764 | 8504 +d_a_npc_blue_ns | 31.763122% | 7552 | 23776 +d_a_npc_grc | 32.984636% | 8072 | 24472 +d_a_npc_raca | 38.792102% | 8016 | 20664 +d_a_npc_midp | 37.189356% | 6764 | 18188 +d_a_npc_kolinb | 41.382827% | 8116 | 19612 +d_a_npc_seirei | 39.691517% | 6176 | 15560 +d_a_npc_shad | 27.050485% | 14960 | 55304 +d_a_npc_grm | 38.118162% | 6968 | 18280 +d_a_npc_grr | 33.284338% | 8152 | 24492 +d_a_npc_tkj2 | 28.985507% | 5520 | 19044 +d_a_npc_sola | 39.560155% | 6116 | 15460 +d_a_npc_shaman | 40.368229% | 10612 | 26288 +d_a_npc_gro | 33.290996% | 9436 | 28344 +d_a_npc_shop0 | 38.731379% | 3224 | 8324 +d_a_npc_henna0 | 100.000000% | 504 | 504 +d_a_npc_theB | 34.129794% | 9256 | 27120 +d_a_npc_passer | 35.701424% | 8724 | 24436 +d_a_npc_chin | 33.958357% | 11808 | 34772 +d_a_npc_gra | 30.387241% | 20120 | 66212 +d_a_npc_zelda | 37.603569% | 7080 | 18828 +d_a_npc_shop_maro | 53.691275% | 2880 | 5364 +d_a_npc_df | 35.418672% | 2944 | 8312 +d_a_npc_pachi_besu | 42.797557% | 11492 | 26852 +d_a_npc_tkc | 32.075472% | 7820 | 24380 +d_a_npc_zelR | 37.762547% | 6832 | 18092 +d_a_npc_kasi_hana | 29.810206% | 10492 | 35196 +d_a_npc_seid | 42.554557% | 5304 | 12464 +d_a_npc_henna | 27.446434% | 11836 | 43124 +d_a_npc_yamid | 36.895778% | 7236 | 19612 +d_a_npc_worm | 33.717579% | 2340 | 6940 +d_a_npc_ne | 24.204919% | 12360 | 51064 +d_a_npc_kasi_kyu | 33.587533% | 8104 | 24128 +d_a_npc_gnd | 36.965399% | 6880 | 18612 +d_a_npc_tk | 22.166176% | 12656 | 57096 +d_a_npc_knj | 41.627219% | 5628 | 13520 +d_a_npc_kolin | 35.754689% | 14412 | 40308 +d_a_npc_saru | 39.289415% | 10616 | 27020 +d_a_npc_uri | 34.281392% | 13596 | 39660 +d_a_npc_wrestler | 27.819607% | 28820 | 103596 +d_a_npc_moi | 34.114704% | 14728 | 43172 +d_a_npc_lud | 38.010021% | 12744 | 33528 +d_a_npc_fguard | 42.375887% | 2868 | 6768 +d_a_npc_grs | 33.634658% | 7888 | 23452 +d_a_npc_doc | 38.160961% | 8516 | 22316 +d_a_npc_ykm | 32.908526% | 20348 | 61832 +d_a_npc_moir | 28.712188% | 11656 | 40596 +d_a_npc_zelRo | 37.784656% | 6836 | 18092 +d_a_npc_the | 34.936999% | 9760 | 27936 +d_a_npc_impal | 32.590326% | 8948 | 27456 +d_a_npc_fish | 79.939819% | 3188 | 3988 +d_a_npc_yelia | 40.634175% | 13840 | 34060 +d_a_npc_zanb | 37.827310% | 6992 | 18484 +d_a_npc_tkj | 37.419769% | 6996 | 18696 +d_a_npc_guard | 35.071398% | 6484 | 18488 +d_a_npc_rafrel | 29.654182% | 10736 | 36204 +d_a_npc_ks | 24.232793% | 27448 | 113268 +d_a_npc_du | 35.940410% | 3860 | 10740 +d_a_npc_tks | 27.123246% | 14384 | 53032 +d_a_npc_hoz | 40.521518% | 14048 | 34668 +d_a_npc_kasi_mich | 33.749584% | 8108 | 24024 +d_a_npc_soldierB | 35.587267% | 6484 | 18220 +d_a_npc_myna2 | 33.448276% | 8924 | 26680 +d_a_npc_bouS | 32.586831% | 9720 | 29828 +d_a_npc_zant | 38.262795% | 6220 | 16256 +d_a_npc_ash | 31.737680% | 9892 | 31168 +d_a_npc_seira2 | 39.278557% | 10192 | 25948 +d_a_npc_soldierA | 34.996894% | 6760 | 19316 +d_a_npc_jagar | 33.736985% | 11924 | 35344 +d_a_npc_grmc | 40.486016% | 7064 | 17448 +d_a_npc_seib | 42.233442% | 5688 | 13468 +d_a_npc_zrz | 31.977232% | 13708 | 42868 +d_a_npc_taro | 38.152632% | 28996 | 76000 +d_a_npc_clerkt | 36.386139% | 7056 | 19392 +d_a_npc_maro | 36.380572% | 21872 | 60120 +d_a_npc_clerkb | 36.128920% | 8340 | 23084 +d_a_npc_tr | 57.199682% | 2876 | 5028 +d_a_npc_clerka | 36.659479% | 7480 | 20404 +d_a_npc_fairy | 39.344262% | 19776 | 50264 +d_a_npc_gwolf | 35.693780% | 11936 | 33440 +d_a_npc_grd | 33.161068% | 7700 | 23220 +d_a_npc_zra | 24.569698% | 26608 | 108296 +d_a_npc_pachi_taro | 42.126544% | 15420 | 36604 +d_a_npc_pachi_maro | 38.260301% | 9360 | 24464 +d_a_npc_p2 | 100.000000% | 632 | 632 +d_a_npc_yamit | 36.693548% | 7280 | 19840 +d_a_npc_shoe | 36.629002% | 6224 | 16992 +d_a_npc_cdn3 | 34.686491% | 14184 | 40892 +d_a_npc_grz | 31.010419% | 12620 | 40696 +d_a_npc_hanjo | 32.618297% | 14476 | 44380 +d_a_npc_sq | 39.651108% | 3364 | 8484 +d_a_npc_kdk | 100.000000% | 504 | 504 +d_a_npc_seic | 42.554557% | 5304 | 12464 +d_a_npc_seira | 38.908741% | 11324 | 29104 +d_a_npc_yamis | 36.878425% | 7268 | 19708 +d_a_npc_lf | 39.566396% | 2336 | 5904 +d_a_npc_fairy_seirei | 42.302956% | 5496 | 12992 +d_a_npc_passer2 | 37.528815% | 3256 | 8676 +d_a_npc_prayer | 36.469470% | 6140 | 16836 +d_a_npc_kkri | 38.042823% | 10092 | 26528 d_a_b_mgn | 26.103833% | 15064 | 57708 -d_a_b_ob | 26.856326% | 15784 | 58772 -d_a_b_gg | 22.324410% | 17380 | 77852 +d_a_b_gm | 30.376176% | 11628 | 38280 +d_a_b_yo_ice | 28.297953% | 5972 | 21104 d_a_b_ds | 26.627364% | 26016 | 97704 +d_a_b_tn | 24.850960% | 21176 | 85212 +d_a_b_bh | 24.452445% | 6520 | 26664 +d_a_b_yo | 25.613486% | 14404 | 56236 +d_a_b_zant_sima | 40.995025% | 1648 | 4020 d_a_b_zant | 22.203940% | 19432 | 87516 -d_a_b_gos | 43.551689% | 3404 | 7816 +d_a_b_ob | 26.856326% | 15784 | 58772 +d_a_b_gnd | 25.489573% | 19264 | 75576 d_a_b_dr | 27.536664% | 18476 | 67096 +d_a_b_oh | 32.611348% | 4276 | 13112 +d_a_b_bq | 28.033347% | 11164 | 39824 +d_a_b_dre | 27.912731% | 4964 | 17784 +d_a_b_zant_magic | 42.453480% | 2464 | 5804 +d_a_b_gg | 22.324410% | 17380 | 77852 +d_a_b_gos | 43.551689% | 3404 | 7816 d_a_b_zant_mobile | 36.326402% | 4612 | 12696 d_a_b_oh2 | 100.000000% | 5532 | 5532 -d_a_b_bq | 28.033347% | 11164 | 39824 -d_a_b_zant_sima | 40.995025% | 1648 | 4020 -d_a_b_gm | 30.376176% | 11628 | 38280 +d_a_b_go | 44.671347% | 2800 | 6268 Total | 33.041295% | 3799856 | 11500324 diff --git a/asm/d/d_cam_param/Change__11dCamParam_cFl.s b/asm/d/d_cam_param/Change__11dCamParam_cFl.s deleted file mode 100644 index 22b8605852..0000000000 --- a/asm/d/d_cam_param/Change__11dCamParam_cFl.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_800885D4: -/* 800885D4 2C 04 00 00 */ cmpwi r4, 0 -/* 800885D8 41 80 00 30 */ blt lbl_80088608 -/* 800885DC 80 03 00 0C */ lwz r0, 0xc(r3) -/* 800885E0 7C 04 00 00 */ cmpw r4, r0 -/* 800885E4 40 80 00 24 */ bge lbl_80088608 -/* 800885E8 90 83 00 14 */ stw r4, 0x14(r3) -/* 800885EC 80 83 00 08 */ lwz r4, 8(r3) -/* 800885F0 80 03 00 14 */ lwz r0, 0x14(r3) -/* 800885F4 1C 00 00 78 */ mulli r0, r0, 0x78 -/* 800885F8 7C 04 02 14 */ add r0, r4, r0 -/* 800885FC 90 03 00 10 */ stw r0, 0x10(r3) -/* 80088600 38 60 00 01 */ li r3, 1 -/* 80088604 4E 80 00 20 */ blr -lbl_80088608: -/* 80088608 38 00 00 00 */ li r0, 0 -/* 8008860C 90 03 00 14 */ stw r0, 0x14(r3) -/* 80088610 80 03 00 08 */ lwz r0, 8(r3) -/* 80088614 90 03 00 10 */ stw r0, 0x10(r3) -/* 80088618 38 60 00 00 */ li r3, 0 -/* 8008861C 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/CheckLatitudeRange__11dCamSetup_cFPs.s b/asm/d/d_cam_param/CheckLatitudeRange__11dCamSetup_cFPs.s deleted file mode 100644 index d09e4a0309..0000000000 --- a/asm/d/d_cam_param/CheckLatitudeRange__11dCamSetup_cFPs.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_80088918: -/* 80088918 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8008891C C0 22 8E B4 */ lfs f1, lit_4173(r2) -/* 80088920 C0 03 00 60 */ lfs f0, 0x60(r3) -/* 80088924 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80088928 FC 00 00 1E */ fctiwz f0, f0 -/* 8008892C D8 01 00 08 */ stfd f0, 8(r1) -/* 80088930 80 A1 00 0C */ lwz r5, 0xc(r1) -/* 80088934 C0 03 00 5C */ lfs f0, 0x5c(r3) -/* 80088938 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8008893C FC 00 00 1E */ fctiwz f0, f0 -/* 80088940 D8 01 00 10 */ stfd f0, 0x10(r1) -/* 80088944 80 61 00 14 */ lwz r3, 0x14(r1) -/* 80088948 A8 C4 00 00 */ lha r6, 0(r4) -/* 8008894C 7C A0 07 34 */ extsh r0, r5 -/* 80088950 7C 06 00 00 */ cmpw r6, r0 -/* 80088954 40 81 00 10 */ ble lbl_80088964 -/* 80088958 B0 A4 00 00 */ sth r5, 0(r4) -/* 8008895C 38 60 00 00 */ li r3, 0 -/* 80088960 48 00 00 20 */ b lbl_80088980 -lbl_80088964: -/* 80088964 7C 60 07 34 */ extsh r0, r3 -/* 80088968 7C 06 00 00 */ cmpw r6, r0 -/* 8008896C 40 80 00 10 */ bge lbl_8008897C -/* 80088970 B0 64 00 00 */ sth r3, 0(r4) -/* 80088974 38 60 00 00 */ li r3, 0 -/* 80088978 48 00 00 08 */ b lbl_80088980 -lbl_8008897C: -/* 8008897C 38 60 00 01 */ li r3, 1 -lbl_80088980: -/* 80088980 38 21 00 20 */ addi r1, r1, 0x20 -/* 80088984 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/PlayerHideDist__11dCamSetup_cFv.s b/asm/d/d_cam_param/PlayerHideDist__11dCamSetup_cFv.s deleted file mode 100644 index 1944a26bb6..0000000000 --- a/asm/d/d_cam_param/PlayerHideDist__11dCamSetup_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80088988: -/* 80088988 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8008898C 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80088990 80 84 5D B4 */ lwz r4, 0x5db4(r4) -/* 80088994 80 04 05 74 */ lwz r0, 0x574(r4) -/* 80088998 54 00 01 8D */ rlwinm. r0, r0, 0, 6, 6 -/* 8008899C 41 82 00 0C */ beq lbl_800889A8 -/* 800889A0 C0 22 8E 54 */ lfs f1, lit_4014(r2) -/* 800889A4 4E 80 00 20 */ blr -lbl_800889A8: -/* 800889A8 C0 23 00 48 */ lfs f1, 0x48(r3) -/* 800889AC 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/SearchStyle__11dCamParam_cFUl.s b/asm/d/d_cam_param/SearchStyle__11dCamParam_cFUl.s deleted file mode 100644 index 280093db35..0000000000 --- a/asm/d/d_cam_param/SearchStyle__11dCamParam_cFUl.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_80088620: -/* 80088620 38 E0 FF FF */ li r7, -1 -/* 80088624 39 00 00 00 */ li r8, 0 -/* 80088628 38 A0 00 00 */ li r5, 0 -/* 8008862C 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80088630 7C 09 03 A6 */ mtctr r0 -/* 80088634 2C 00 00 00 */ cmpwi r0, 0 -/* 80088638 40 81 00 28 */ ble lbl_80088660 -lbl_8008863C: -/* 8008863C 80 C3 00 08 */ lwz r6, 8(r3) -/* 80088640 7C 06 28 2E */ lwzx r0, r6, r5 -/* 80088644 7C 04 00 40 */ cmplw r4, r0 -/* 80088648 40 82 00 0C */ bne lbl_80088654 -/* 8008864C 7D 07 43 78 */ mr r7, r8 -/* 80088650 48 00 00 10 */ b lbl_80088660 -lbl_80088654: -/* 80088654 39 08 00 01 */ addi r8, r8, 1 -/* 80088658 38 A5 00 78 */ addi r5, r5, 0x78 -/* 8008865C 42 00 FF E0 */ bdnz lbl_8008863C -lbl_80088660: -/* 80088660 7C E3 3B 78 */ mr r3, r7 -/* 80088664 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s b/asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s deleted file mode 100644 index 77e2211f84..0000000000 --- a/asm/d/d_cam_param/__ct__11dCamBGChk_cFv.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_80088464: -/* 80088464 C0 02 8E 20 */ lfs f0, lit_4001(r2) -/* 80088468 D0 03 00 00 */ stfs f0, 0(r3) -/* 8008846C C0 02 8E 10 */ lfs f0, lit_3791(r2) -/* 80088470 D0 03 00 04 */ stfs f0, 4(r3) -/* 80088474 C0 02 8E 24 */ lfs f0, lit_4002(r2) -/* 80088478 D0 03 00 08 */ stfs f0, 8(r3) -/* 8008847C C0 02 8E 28 */ lfs f0, lit_4003(r2) -/* 80088480 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80088484 C0 02 8E 2C */ lfs f0, lit_4004(r2) -/* 80088488 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8008848C C0 02 8E 30 */ lfs f0, lit_4005(r2) -/* 80088490 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80088494 C0 02 8E 34 */ lfs f0, lit_4006(r2) -/* 80088498 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 8008849C C0 42 8E 38 */ lfs f2, lit_4007(r2) -/* 800884A0 D0 43 00 1C */ stfs f2, 0x1c(r3) -/* 800884A4 C0 02 8E 3C */ lfs f0, lit_4008(r2) -/* 800884A8 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 800884AC C0 22 8E 40 */ lfs f1, lit_4009(r2) -/* 800884B0 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 800884B4 C0 02 8E 44 */ lfs f0, lit_4010(r2) -/* 800884B8 D0 03 00 28 */ stfs f0, 0x28(r3) -/* 800884BC C0 02 8E 18 */ lfs f0, lit_3991(r2) -/* 800884C0 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 800884C4 D0 23 00 30 */ stfs f1, 0x30(r3) -/* 800884C8 C0 02 8E 48 */ lfs f0, lit_4011(r2) -/* 800884CC D0 03 00 34 */ stfs f0, 0x34(r3) -/* 800884D0 D0 43 00 38 */ stfs f2, 0x38(r3) -/* 800884D4 C0 02 8E 4C */ lfs f0, lit_4012(r2) -/* 800884D8 D0 03 00 3C */ stfs f0, 0x3c(r3) -/* 800884DC C0 02 8E 50 */ lfs f0, lit_4013(r2) -/* 800884E0 D0 03 00 40 */ stfs f0, 0x40(r3) -/* 800884E4 C0 02 8E 54 */ lfs f0, lit_4014(r2) -/* 800884E8 D0 03 00 44 */ stfs f0, 0x44(r3) -/* 800884EC 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__ct__11dCamParam_cFl.s b/asm/d/d_cam_param/__ct__11dCamParam_cFl.s deleted file mode 100644 index 7975e20e90..0000000000 --- a/asm/d/d_cam_param/__ct__11dCamParam_cFl.s +++ /dev/null @@ -1,40 +0,0 @@ -lbl_800884F0: -/* 800884F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800884F4 7C 08 02 A6 */ mflr r0 -/* 800884F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800884FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80088500 93 C1 00 08 */ stw r30, 8(r1) -/* 80088504 7C 7E 1B 78 */ mr r30, r3 -/* 80088508 7C 9F 23 78 */ mr r31, r4 -/* 8008850C 3C 60 80 3B */ lis r3, __vt__11dCamParam_c@ha /* 0x803AC50C@ha */ -/* 80088510 38 03 C5 0C */ addi r0, r3, __vt__11dCamParam_c@l /* 0x803AC50C@l */ -/* 80088514 90 1E 00 1C */ stw r0, 0x1c(r30) -/* 80088518 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8008851C 38 A3 61 C0 */ addi r5, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80088520 80 65 5D 88 */ lwz r3, 0x5d88(r5) -/* 80088524 3C 80 80 38 */ lis r4, d_d_cam_param__stringBase0@ha /* 0x8037A7E0@ha */ -/* 80088528 38 84 A7 E0 */ addi r4, r4, d_d_cam_param__stringBase0@l /* 0x8037A7E0@l */ -/* 8008852C 3C A5 00 02 */ addis r5, r5, 2 -/* 80088530 38 C0 00 80 */ li r6, 0x80 -/* 80088534 38 A5 C2 F8 */ addi r5, r5, -15624 -/* 80088538 4B FB 3E 45 */ bl getRes__14dRes_control_cFPCcPCcP11dRes_info_ci -/* 8008853C 38 03 00 08 */ addi r0, r3, 8 -/* 80088540 90 1E 00 08 */ stw r0, 8(r30) -/* 80088544 80 03 00 04 */ lwz r0, 4(r3) -/* 80088548 90 1E 00 0C */ stw r0, 0xc(r30) -/* 8008854C 7F C3 F3 78 */ mr r3, r30 -/* 80088550 7F E4 FB 78 */ mr r4, r31 -/* 80088554 48 00 00 81 */ bl Change__11dCamParam_cFl -/* 80088558 38 00 00 FF */ li r0, 0xff -/* 8008855C 98 1E 00 00 */ stb r0, 0(r30) -/* 80088560 98 1E 00 01 */ stb r0, 1(r30) -/* 80088564 98 1E 00 02 */ stb r0, 2(r30) -/* 80088568 38 00 FF FF */ li r0, -1 -/* 8008856C 90 1E 00 04 */ stw r0, 4(r30) -/* 80088570 7F C3 F3 78 */ mr r3, r30 -/* 80088574 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80088578 83 C1 00 08 */ lwz r30, 8(r1) -/* 8008857C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80088580 7C 08 03 A6 */ mtlr r0 -/* 80088584 38 21 00 10 */ addi r1, r1, 0x10 -/* 80088588 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__ct__11dCamSetup_cFv.s b/asm/d/d_cam_param/__ct__11dCamSetup_cFv.s deleted file mode 100644 index 81a99b90f7..0000000000 --- a/asm/d/d_cam_param/__ct__11dCamSetup_cFv.s +++ /dev/null @@ -1,149 +0,0 @@ -lbl_80088668: -/* 80088668 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8008866C 7C 08 02 A6 */ mflr r0 -/* 80088670 90 01 00 14 */ stw r0, 0x14(r1) -/* 80088674 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80088678 7C 7F 1B 78 */ mr r31, r3 -/* 8008867C 3C 60 80 3B */ lis r3, __vt__11dCamSetup_c@ha /* 0x803AC500@ha */ -/* 80088680 38 03 C5 00 */ addi r0, r3, __vt__11dCamSetup_c@l /* 0x803AC500@l */ -/* 80088684 90 1F 00 FC */ stw r0, 0xfc(r31) -/* 80088688 38 7F 01 00 */ addi r3, r31, 0x100 -/* 8008868C 4B FF FD A9 */ bl __ct__9dCstick_cFv -/* 80088690 38 7F 01 14 */ addi r3, r31, 0x114 -/* 80088694 4B FF FD D1 */ bl __ct__11dCamBGChk_cFv -/* 80088698 C0 02 8E 10 */ lfs f0, lit_3791(r2) -/* 8008869C D0 1F 00 00 */ stfs f0, 0(r31) -/* 800886A0 C0 22 8E 5C */ lfs f1, lit_4119(r2) -/* 800886A4 D0 3F 00 04 */ stfs f1, 4(r31) -/* 800886A8 38 60 00 01 */ li r3, 1 -/* 800886AC 90 7F 00 0C */ stw r3, 0xc(r31) -/* 800886B0 38 00 FF FF */ li r0, -1 -/* 800886B4 90 1F 00 10 */ stw r0, 0x10(r31) -/* 800886B8 90 1F 00 1C */ stw r0, 0x1c(r31) -/* 800886BC C0 62 8E 18 */ lfs f3, lit_3991(r2) -/* 800886C0 D0 7F 00 20 */ stfs f3, 0x20(r31) -/* 800886C4 C1 22 8E 60 */ lfs f9, lit_4120(r2) -/* 800886C8 D1 3F 00 24 */ stfs f9, 0x24(r31) -/* 800886CC C0 22 8E 4C */ lfs f1, lit_4012(r2) -/* 800886D0 D0 3F 00 60 */ stfs f1, 0x60(r31) -/* 800886D4 C0 22 8E 64 */ lfs f1, lit_4121(r2) -/* 800886D8 D0 3F 00 5C */ stfs f1, 0x5c(r31) -/* 800886DC C0 22 8E 68 */ lfs f1, lit_4122(r2) -/* 800886E0 D0 3F 00 28 */ stfs f1, 0x28(r31) -/* 800886E4 C1 02 8E 6C */ lfs f8, lit_4123(r2) -/* 800886E8 D1 1F 00 2C */ stfs f8, 0x2c(r31) -/* 800886EC C0 E2 8E 70 */ lfs f7, lit_4124(r2) -/* 800886F0 D0 FF 00 50 */ stfs f7, 0x50(r31) -/* 800886F4 C0 22 8E 48 */ lfs f1, lit_4011(r2) -/* 800886F8 D0 3F 00 30 */ stfs f1, 0x30(r31) -/* 800886FC C0 22 8E 74 */ lfs f1, lit_4125(r2) -/* 80088700 D0 3F 00 38 */ stfs f1, 0x38(r31) -/* 80088704 D0 1F 00 3C */ stfs f0, 0x3c(r31) -/* 80088708 C0 22 8E 78 */ lfs f1, lit_4126(r2) -/* 8008870C D0 3F 00 58 */ stfs f1, 0x58(r31) -/* 80088710 C0 22 8E 7C */ lfs f1, lit_4127(r2) -/* 80088714 D0 3F 00 44 */ stfs f1, 0x44(r31) -/* 80088718 C0 C2 8E 80 */ lfs f6, lit_4128(r2) -/* 8008871C D0 DF 00 54 */ stfs f6, 0x54(r31) -/* 80088720 D0 1F 00 4C */ stfs f0, 0x4c(r31) -/* 80088724 C0 42 8E 24 */ lfs f2, lit_4002(r2) -/* 80088728 D0 5F 00 34 */ stfs f2, 0x34(r31) -/* 8008872C C0 22 8E 84 */ lfs f1, lit_4129(r2) -/* 80088730 D0 3F 00 48 */ stfs f1, 0x48(r31) -/* 80088734 C0 A2 8E 88 */ lfs f5, lit_4130(r2) -/* 80088738 D0 BF 00 40 */ stfs f5, 0x40(r31) -/* 8008873C C0 22 8E 8C */ lfs f1, lit_4131(r2) -/* 80088740 D0 3F 00 64 */ stfs f1, 0x64(r31) -/* 80088744 C0 22 8E 90 */ lfs f1, lit_4132(r2) -/* 80088748 D0 3F 00 68 */ stfs f1, 0x68(r31) -/* 8008874C 38 00 00 96 */ li r0, 0x96 -/* 80088750 90 1F 00 B0 */ stw r0, 0xb0(r31) -/* 80088754 D0 BF 00 B4 */ stfs f5, 0xb4(r31) -/* 80088758 C0 82 8E 3C */ lfs f4, lit_4008(r2) -/* 8008875C D0 9F 00 B8 */ stfs f4, 0xb8(r31) -/* 80088760 D0 7F 00 BC */ stfs f3, 0xbc(r31) -/* 80088764 C0 22 8E 44 */ lfs f1, lit_4010(r2) -/* 80088768 D0 3F 00 A4 */ stfs f1, 0xa4(r31) -/* 8008876C C0 22 8E 94 */ lfs f1, lit_4133(r2) -/* 80088770 D0 3F 00 A8 */ stfs f1, 0xa8(r31) -/* 80088774 B0 7F 00 08 */ sth r3, 8(r31) -/* 80088778 38 00 01 18 */ li r0, 0x118 -/* 8008877C B0 1F 00 0A */ sth r0, 0xa(r31) -/* 80088780 A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 80088784 60 00 02 00 */ ori r0, r0, 0x200 -/* 80088788 B0 1F 00 0A */ sth r0, 0xa(r31) -/* 8008878C A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 80088790 60 00 04 00 */ ori r0, r0, 0x400 -/* 80088794 B0 1F 00 0A */ sth r0, 0xa(r31) -/* 80088798 C0 22 8E 98 */ lfs f1, lit_4134(r2) -/* 8008879C D0 3F 00 C0 */ stfs f1, 0xc0(r31) -/* 800887A0 38 60 00 5A */ li r3, 0x5a -/* 800887A4 90 7F 00 C4 */ stw r3, 0xc4(r31) -/* 800887A8 C0 62 8E 38 */ lfs f3, lit_4007(r2) -/* 800887AC D0 7F 00 C8 */ stfs f3, 0xc8(r31) -/* 800887B0 38 00 00 28 */ li r0, 0x28 -/* 800887B4 90 1F 00 CC */ stw r0, 0xcc(r31) -/* 800887B8 C0 22 8E 58 */ lfs f1, lit_4058(r2) -/* 800887BC D0 3F 00 D0 */ stfs f1, 0xd0(r31) -/* 800887C0 C0 22 8E 9C */ lfs f1, lit_4135(r2) -/* 800887C4 D0 3F 00 6C */ stfs f1, 0x6c(r31) -/* 800887C8 C0 22 8E A0 */ lfs f1, lit_4136(r2) -/* 800887CC D0 3F 00 70 */ stfs f1, 0x70(r31) -/* 800887D0 90 7F 00 74 */ stw r3, 0x74(r31) -/* 800887D4 38 80 00 1E */ li r4, 0x1e -/* 800887D8 90 9F 00 94 */ stw r4, 0x94(r31) -/* 800887DC D0 5F 00 88 */ stfs f2, 0x88(r31) -/* 800887E0 D1 3F 00 90 */ stfs f9, 0x90(r31) -/* 800887E4 C0 42 8E 40 */ lfs f2, lit_4009(r2) -/* 800887E8 D0 5F 00 8C */ stfs f2, 0x8c(r31) -/* 800887EC D0 7F 00 78 */ stfs f3, 0x78(r31) -/* 800887F0 C0 22 8E 28 */ lfs f1, lit_4003(r2) -/* 800887F4 D0 3F 00 7C */ stfs f1, 0x7c(r31) -/* 800887F8 D0 5F 00 80 */ stfs f2, 0x80(r31) -/* 800887FC C0 22 8E A4 */ lfs f1, lit_4137(r2) -/* 80088800 D0 3F 00 84 */ stfs f1, 0x84(r31) -/* 80088804 D0 BF 00 D4 */ stfs f5, 0xd4(r31) -/* 80088808 D0 FF 00 D8 */ stfs f7, 0xd8(r31) -/* 8008880C C0 22 8E 34 */ lfs f1, lit_4006(r2) -/* 80088810 D0 3F 00 98 */ stfs f1, 0x98(r31) -/* 80088814 D0 9F 00 A0 */ stfs f4, 0xa0(r31) -/* 80088818 38 00 00 3C */ li r0, 0x3c -/* 8008881C B0 1F 00 DC */ sth r0, 0xdc(r31) -/* 80088820 38 60 00 78 */ li r3, 0x78 -/* 80088824 B0 7F 00 DE */ sth r3, 0xde(r31) -/* 80088828 A0 1F 00 08 */ lhz r0, 8(r31) -/* 8008882C 60 00 48 00 */ ori r0, r0, 0x4800 -/* 80088830 B0 1F 00 08 */ sth r0, 8(r31) -/* 80088834 C0 42 8D C8 */ lfs f2, lit_3769(r2) -/* 80088838 D0 5F 01 5C */ stfs f2, 0x15c(r31) -/* 8008883C D0 5F 01 60 */ stfs f2, 0x160(r31) -/* 80088840 A0 1F 00 08 */ lhz r0, 8(r31) -/* 80088844 60 00 08 00 */ ori r0, r0, 0x800 -/* 80088848 B0 1F 00 08 */ sth r0, 8(r31) -/* 8008884C 90 7F 01 64 */ stw r3, 0x164(r31) -/* 80088850 D1 1F 01 68 */ stfs f8, 0x168(r31) -/* 80088854 C0 22 8E A8 */ lfs f1, lit_4138(r2) -/* 80088858 D0 3F 01 6C */ stfs f1, 0x16c(r31) -/* 8008885C D0 DF 00 E0 */ stfs f6, 0xe0(r31) -/* 80088860 38 00 00 19 */ li r0, 0x19 -/* 80088864 90 1F 00 EC */ stw r0, 0xec(r31) -/* 80088868 C0 22 8E AC */ lfs f1, lit_4139(r2) -/* 8008886C D0 3F 00 F4 */ stfs f1, 0xf4(r31) -/* 80088870 D0 1F 00 F8 */ stfs f0, 0xf8(r31) -/* 80088874 38 00 00 0C */ li r0, 0xc -/* 80088878 90 1F 00 F0 */ stw r0, 0xf0(r31) -/* 8008887C C0 02 8E B0 */ lfs f0, lit_4140(r2) -/* 80088880 D0 1F 00 E4 */ stfs f0, 0xe4(r31) -/* 80088884 D0 5F 00 E8 */ stfs f2, 0xe8(r31) -/* 80088888 90 9F 01 70 */ stw r4, 0x170(r31) -/* 8008888C 38 00 02 58 */ li r0, 0x258 -/* 80088890 90 1F 01 74 */ stw r0, 0x174(r31) -/* 80088894 90 7F 01 78 */ stw r3, 0x178(r31) -/* 80088898 48 0F 8D A9 */ bl dCam_getBody__Fv -/* 8008889C 48 0F 81 A5 */ bl EventRecoverNotime__9dCamera_cFv -/* 800888A0 7F E3 FB 78 */ mr r3, r31 -/* 800888A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800888A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800888AC 7C 08 03 A6 */ mtlr r0 -/* 800888B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800888B4 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__ct__9dCstick_cFv.s b/asm/d/d_cam_param/__ct__9dCstick_cFv.s deleted file mode 100644 index e450a2f2e4..0000000000 --- a/asm/d/d_cam_param/__ct__9dCstick_cFv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80088434: -/* 80088434 3C 80 80 3B */ lis r4, __vt__9dCstick_c@ha /* 0x803AC518@ha */ -/* 80088438 38 04 C5 18 */ addi r0, r4, __vt__9dCstick_c@l /* 0x803AC518@l */ -/* 8008843C 90 03 00 10 */ stw r0, 0x10(r3) -/* 80088440 C0 02 8E 18 */ lfs f0, lit_3991(r2) -/* 80088444 D0 03 00 00 */ stfs f0, 0(r3) -/* 80088448 C0 02 8E 1C */ lfs f0, lit_3992(r2) -/* 8008844C D0 03 00 04 */ stfs f0, 4(r3) -/* 80088450 38 00 00 06 */ li r0, 6 -/* 80088454 90 03 00 08 */ stw r0, 8(r3) -/* 80088458 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__dt__7cDegreeFv.s b/asm/d/d_cam_param/__dt__7cDegreeFv.s deleted file mode 100644 index 47dae448c8..0000000000 --- a/asm/d/d_cam_param/__dt__7cDegreeFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_800882E0: -/* 800882E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800882E4 7C 08 02 A6 */ mflr r0 -/* 800882E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800882EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800882F0 7C 7F 1B 79 */ or. r31, r3, r3 -/* 800882F4 41 82 00 10 */ beq lbl_80088304 -/* 800882F8 7C 80 07 35 */ extsh. r0, r4 -/* 800882FC 40 81 00 08 */ ble lbl_80088304 -/* 80088300 48 24 6A 3D */ bl __dl__FPv -lbl_80088304: -/* 80088304 7F E3 FB 78 */ mr r3, r31 -/* 80088308 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8008830C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80088310 7C 08 03 A6 */ mtlr r0 -/* 80088314 38 21 00 10 */ addi r1, r1, 0x10 -/* 80088318 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/__dt__9dCstick_cFv.s b/asm/d/d_cam_param/__dt__9dCstick_cFv.s deleted file mode 100644 index 9b827783c0..0000000000 --- a/asm/d/d_cam_param/__dt__9dCstick_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_800889B0: -/* 800889B0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800889B4 7C 08 02 A6 */ mflr r0 -/* 800889B8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800889BC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800889C0 7C 7F 1B 79 */ or. r31, r3, r3 -/* 800889C4 41 82 00 1C */ beq lbl_800889E0 -/* 800889C8 3C A0 80 3B */ lis r5, __vt__9dCstick_c@ha /* 0x803AC518@ha */ -/* 800889CC 38 05 C5 18 */ addi r0, r5, __vt__9dCstick_c@l /* 0x803AC518@l */ -/* 800889D0 90 1F 00 10 */ stw r0, 0x10(r31) -/* 800889D4 7C 80 07 35 */ extsh. r0, r4 -/* 800889D8 40 81 00 08 */ ble lbl_800889E0 -/* 800889DC 48 24 63 61 */ bl __dl__FPv -lbl_800889E0: -/* 800889E0 7F E3 FB 78 */ mr r3, r31 -/* 800889E4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800889E8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800889EC 7C 08 03 A6 */ mtlr r0 -/* 800889F0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800889F4 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/rationalBezierRatio__8dCamMathFff.s b/asm/d/d_cam_param/rationalBezierRatio__8dCamMathFff.s deleted file mode 100644 index 730116ad47..0000000000 --- a/asm/d/d_cam_param/rationalBezierRatio__8dCamMathFff.s +++ /dev/null @@ -1,91 +0,0 @@ -lbl_8008813C: -/* 8008813C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80088140 7C 08 02 A6 */ mflr r0 -/* 80088144 90 01 00 54 */ stw r0, 0x54(r1) -/* 80088148 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 8008814C F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0 /* qr0 */ -/* 80088150 DB C1 00 30 */ stfd f30, 0x30(r1) -/* 80088154 F3 C1 00 38 */ psq_st f30, 56(r1), 0, 0 /* qr0 */ -/* 80088158 DB A1 00 20 */ stfd f29, 0x20(r1) -/* 8008815C F3 A1 00 28 */ psq_st f29, 40(r1), 0, 0 /* qr0 */ -/* 80088160 DB 81 00 10 */ stfd f28, 0x10(r1) -/* 80088164 F3 81 00 18 */ psq_st f28, 24(r1), 0, 0 /* qr0 */ -/* 80088168 FF C0 10 90 */ fmr f30, f2 -/* 8008816C C0 02 8D C8 */ lfs f0, lit_3769(r2) -/* 80088170 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80088174 4C 41 13 82 */ cror 2, 1, 2 -/* 80088178 40 82 00 0C */ bne lbl_80088184 -/* 8008817C CB E2 8D D0 */ lfd f31, lit_3770(r2) -/* 80088180 48 00 00 0C */ b lbl_8008818C -lbl_80088184: -/* 80088184 CB E2 8D D8 */ lfd f31, lit_3771(r2) -/* 80088188 FC 20 08 50 */ fneg f1, f1 -lbl_8008818C: -/* 8008818C C8 62 8D E0 */ lfd f3, lit_3772(r2) -/* 80088190 FC 43 00 72 */ fmul f2, f3, f1 -/* 80088194 FC 02 07 B2 */ fmul f0, f2, f30 -/* 80088198 FC 40 10 28 */ fsub f2, f0, f2 -/* 8008819C FC 03 07 B2 */ fmul f0, f3, f30 -/* 800881A0 FC 42 00 28 */ fsub f2, f2, f0 -/* 800881A4 FF A0 10 50 */ fneg f29, f2 -/* 800881A8 C8 02 8D D0 */ lfd f0, lit_3770(r2) -/* 800881AC FF 9D 00 28 */ fsub f28, f29, f0 -/* 800881B0 FC 42 00 B2 */ fmul f2, f2, f2 -/* 800881B4 C8 02 8D E8 */ lfd f0, lit_3773(r2) -/* 800881B8 FC 00 07 32 */ fmul f0, f0, f28 -/* 800881BC FC 00 00 72 */ fmul f0, f0, f1 -/* 800881C0 FC 22 00 28 */ fsub f1, f2, f0 -/* 800881C4 C8 02 8D F0 */ lfd f0, lit_3774(r2) -/* 800881C8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 800881CC 40 81 00 0C */ ble lbl_800881D8 -/* 800881D0 48 2E 48 85 */ bl sqrt -/* 800881D4 48 00 00 08 */ b lbl_800881DC -lbl_800881D8: -/* 800881D8 FC 20 00 90 */ fmr f1, f0 -lbl_800881DC: -/* 800881DC FC 3D 08 28 */ fsub f1, f29, f1 -/* 800881E0 C8 02 8D E0 */ lfd f0, lit_3772(r2) -/* 800881E4 FC 40 07 32 */ fmul f2, f0, f28 -/* 800881E8 C8 02 8D F8 */ lfd f0, lit_3775(r2) -/* 800881EC FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 800881F0 41 81 00 10 */ bgt lbl_80088200 -/* 800881F4 C8 02 8E 00 */ lfd f0, lit_3776(r2) -/* 800881F8 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 800881FC 40 80 00 54 */ bge lbl_80088250 -lbl_80088200: -/* 80088200 FC 41 10 24 */ fdiv f2, f1, f2 -/* 80088204 FC 62 00 B2 */ fmul f3, f2, f2 -/* 80088208 C8 02 8D D0 */ lfd f0, lit_3770(r2) -/* 8008820C FC 80 10 28 */ fsub f4, f0, f2 -/* 80088210 FC 24 01 32 */ fmul f1, f4, f4 -/* 80088214 C8 02 8D E0 */ lfd f0, lit_3772(r2) -/* 80088218 FC 00 01 32 */ fmul f0, f0, f4 -/* 8008821C FC 00 00 B2 */ fmul f0, f0, f2 -/* 80088220 FC 1E 00 32 */ fmul f0, f30, f0 -/* 80088224 FC 01 00 2A */ fadd f0, f1, f0 -/* 80088228 FC 23 00 2A */ fadd f1, f3, f0 -/* 8008822C C8 02 8E 08 */ lfd f0, lit_3777(r2) -/* 80088230 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80088234 40 81 00 14 */ ble lbl_80088248 -/* 80088238 FC 03 08 24 */ fdiv f0, f3, f1 -/* 8008823C FC 3F 00 32 */ fmul f1, f31, f0 -/* 80088240 FC 20 08 18 */ frsp f1, f1 -/* 80088244 48 00 00 10 */ b lbl_80088254 -lbl_80088248: -/* 80088248 C0 22 8D C8 */ lfs f1, lit_3769(r2) -/* 8008824C 48 00 00 08 */ b lbl_80088254 -lbl_80088250: -/* 80088250 C0 22 8D C8 */ lfs f1, lit_3769(r2) -lbl_80088254: -/* 80088254 E3 E1 00 48 */ psq_l f31, 72(r1), 0, 0 /* qr0 */ -/* 80088258 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 8008825C E3 C1 00 38 */ psq_l f30, 56(r1), 0, 0 /* qr0 */ -/* 80088260 CB C1 00 30 */ lfd f30, 0x30(r1) -/* 80088264 E3 A1 00 28 */ psq_l f29, 40(r1), 0, 0 /* qr0 */ -/* 80088268 CB A1 00 20 */ lfd f29, 0x20(r1) -/* 8008826C E3 81 00 18 */ psq_l f28, 24(r1), 0, 0 /* qr0 */ -/* 80088270 CB 81 00 10 */ lfd f28, 0x10(r1) -/* 80088274 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80088278 7C 08 03 A6 */ mtlr r0 -/* 8008827C 38 21 00 50 */ addi r1, r1, 0x50 -/* 80088280 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz.s b/asm/d/d_cam_param/xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz.s deleted file mode 100644 index c19b00d16c..0000000000 --- a/asm/d/d_cam_param/xyzHorizontalDistance__8dCamMathFR4cXyzR4cXyz.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_800883EC: -/* 800883EC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800883F0 7C 08 02 A6 */ mflr r0 -/* 800883F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800883F8 C0 23 00 00 */ lfs f1, 0(r3) -/* 800883FC C0 04 00 00 */ lfs f0, 0(r4) -/* 80088400 EC 41 00 28 */ fsubs f2, f1, f0 -/* 80088404 C0 23 00 08 */ lfs f1, 8(r3) -/* 80088408 C0 04 00 08 */ lfs f0, 8(r4) -/* 8008840C EC 01 00 28 */ fsubs f0, f1, f0 -/* 80088410 FC 22 00 B2 */ fmul f1, f2, f2 -/* 80088414 FC 00 00 32 */ fmul f0, f0, f0 -/* 80088418 FC 21 00 2A */ fadd f1, f1, f0 -/* 8008841C 48 2E 46 39 */ bl sqrt -/* 80088420 FC 20 08 18 */ frsp f1, f1 -/* 80088424 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80088428 7C 08 03 A6 */ mtlr r0 -/* 8008842C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80088430 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/xyzRotateX__8dCamMathFR4cXyz7cSAngle.s b/asm/d/d_cam_param/xyzRotateX__8dCamMathFR4cXyz7cSAngle.s deleted file mode 100644 index edc089db29..0000000000 --- a/asm/d/d_cam_param/xyzRotateX__8dCamMathFR4cXyz7cSAngle.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_8008831C: -/* 8008831C 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80088320 7C 08 02 A6 */ mflr r0 -/* 80088324 90 01 00 54 */ stw r0, 0x54(r1) -/* 80088328 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 8008832C 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80088330 7C 7E 1B 78 */ mr r30, r3 -/* 80088334 7C 9F 23 78 */ mr r31, r4 -/* 80088338 A8 85 00 00 */ lha r4, 0(r5) -/* 8008833C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80088340 4B F8 40 05 */ bl mDoMtx_XrotS__FPA4_fs -/* 80088344 38 61 00 14 */ addi r3, r1, 0x14 -/* 80088348 7F E4 FB 78 */ mr r4, r31 -/* 8008834C 38 A1 00 08 */ addi r5, r1, 8 -/* 80088350 48 2B EA 1D */ bl PSMTXMultVec -/* 80088354 C0 01 00 08 */ lfs f0, 8(r1) -/* 80088358 D0 1E 00 00 */ stfs f0, 0(r30) -/* 8008835C C0 01 00 0C */ lfs f0, 0xc(r1) -/* 80088360 D0 1E 00 04 */ stfs f0, 4(r30) -/* 80088364 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80088368 D0 1E 00 08 */ stfs f0, 8(r30) -/* 8008836C 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80088370 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 80088374 80 01 00 54 */ lwz r0, 0x54(r1) -/* 80088378 7C 08 03 A6 */ mtlr r0 -/* 8008837C 38 21 00 50 */ addi r1, r1, 0x50 -/* 80088380 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/xyzRotateY__8dCamMathFR4cXyz7cSAngle.s b/asm/d/d_cam_param/xyzRotateY__8dCamMathFR4cXyz7cSAngle.s deleted file mode 100644 index 671b21fb17..0000000000 --- a/asm/d/d_cam_param/xyzRotateY__8dCamMathFR4cXyz7cSAngle.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_80088384: -/* 80088384 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 80088388 7C 08 02 A6 */ mflr r0 -/* 8008838C 90 01 00 54 */ stw r0, 0x54(r1) -/* 80088390 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80088394 93 C1 00 48 */ stw r30, 0x48(r1) -/* 80088398 7C 7E 1B 78 */ mr r30, r3 -/* 8008839C 7C 9F 23 78 */ mr r31, r4 -/* 800883A0 A8 85 00 00 */ lha r4, 0(r5) -/* 800883A4 38 61 00 14 */ addi r3, r1, 0x14 -/* 800883A8 4B F8 40 35 */ bl mDoMtx_YrotS__FPA4_fs -/* 800883AC 38 61 00 14 */ addi r3, r1, 0x14 -/* 800883B0 7F E4 FB 78 */ mr r4, r31 -/* 800883B4 38 A1 00 08 */ addi r5, r1, 8 -/* 800883B8 48 2B E9 B5 */ bl PSMTXMultVec -/* 800883BC C0 01 00 08 */ lfs f0, 8(r1) -/* 800883C0 D0 1E 00 00 */ stfs f0, 0(r30) -/* 800883C4 C0 01 00 0C */ lfs f0, 0xc(r1) -/* 800883C8 D0 1E 00 04 */ stfs f0, 4(r30) -/* 800883CC C0 01 00 10 */ lfs f0, 0x10(r1) -/* 800883D0 D0 1E 00 08 */ stfs f0, 8(r30) -/* 800883D4 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 800883D8 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 800883DC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 800883E0 7C 08 03 A6 */ mtlr r0 -/* 800883E4 38 21 00 50 */ addi r1, r1, 0x50 -/* 800883E8 4E 80 00 20 */ blr diff --git a/asm/d/d_cam_param/zoomFovy__8dCamMathFff.s b/asm/d/d_cam_param/zoomFovy__8dCamMathFff.s deleted file mode 100644 index 190fcb4ec3..0000000000 --- a/asm/d/d_cam_param/zoomFovy__8dCamMathFff.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80088284: -/* 80088284 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80088288 7C 08 02 A6 */ mflr r0 -/* 8008828C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80088290 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 80088294 F3 E1 00 18 */ psq_st f31, 24(r1), 0, 0 /* qr0 */ -/* 80088298 FF E0 10 90 */ fmr f31, f2 -/* 8008829C 38 61 00 08 */ addi r3, r1, 8 -/* 800882A0 48 1E 90 AD */ bl __ct__7cDegreeFf -/* 800882A4 38 61 00 08 */ addi r3, r1, 8 -/* 800882A8 48 1E 91 71 */ bl Cos__7cDegreeCFv -/* 800882AC EF FF 00 72 */ fmuls f31, f31, f1 -/* 800882B0 38 61 00 08 */ addi r3, r1, 8 -/* 800882B4 48 1E 91 3D */ bl Sin__7cDegreeCFv -/* 800882B8 FC 40 F8 90 */ fmr f2, f31 -/* 800882BC 48 1D F5 59 */ bl cM_atan2f__Fff -/* 800882C0 C0 02 8E 14 */ lfs f0, lit_3807(r2) -/* 800882C4 EC 20 00 72 */ fmuls f1, f0, f1 -/* 800882C8 E3 E1 00 18 */ psq_l f31, 24(r1), 0, 0 /* qr0 */ -/* 800882CC CB E1 00 10 */ lfd f31, 0x10(r1) -/* 800882D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 800882D4 7C 08 03 A6 */ mtlr r0 -/* 800882D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 800882DC 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getBLightInf__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getBLightInf__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 117e0404b7..0000000000 --- a/asm/d/d_door_param2/getBLightInf__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A23C: -/* 8003A23C 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A240 54 03 27 7E */ rlwinm r3, r0, 4, 0x1d, 0x1f -/* 8003A244 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getBRoomNo__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getBRoomNo__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index a1fa25147b..0000000000 --- a/asm/d/d_door_param2/getBRoomNo__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1C4: -/* 8003A1C4 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A1C8 54 03 6E BE */ rlwinm r3, r0, 0xd, 0x1a, 0x1f -/* 8003A1CC 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getBackOption__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getBackOption__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 5fe2ce7c08..0000000000 --- a/asm/d/d_door_param2/getBackOption__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1AC: -/* 8003A1AC 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A1B0 54 03 B7 7E */ rlwinm r3, r0, 0x16, 0x1d, 0x1f -/* 8003A1B4 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getDoorModel__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getDoorModel__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index fe28bfff22..0000000000 --- a/asm/d/d_door_param2/getDoorModel__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A194: -/* 8003A194 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A198 54 03 DF 7E */ rlwinm r3, r0, 0x1b, 0x1d, 0x1f -/* 8003A19C 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getEventNo2__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getEventNo2__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 019c58f4fb..0000000000 --- a/asm/d/d_door_param2/getEventNo2__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A20C: -/* 8003A20C A8 03 04 B4 */ lha r0, 0x4b4(r3) -/* 8003A210 54 03 C6 3E */ rlwinm r3, r0, 0x18, 0x18, 0x1f -/* 8003A214 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getEventNo__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getEventNo__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index c585671e72..0000000000 --- a/asm/d/d_door_param2/getEventNo__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A200: -/* 8003A200 A8 03 04 B4 */ lha r0, 0x4b4(r3) -/* 8003A204 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 8003A208 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getExitNo__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getExitNo__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 3bb4ed9f9d..0000000000 --- a/asm/d/d_door_param2/getExitNo__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A224: -/* 8003A224 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A228 54 03 3E BE */ rlwinm r3, r0, 7, 0x1a, 0x1f -/* 8003A22C 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getFLightInf__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getFLightInf__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 62413287a6..0000000000 --- a/asm/d/d_door_param2/getFLightInf__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A230: -/* 8003A230 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A234 54 03 3F 7E */ rlwinm r3, r0, 7, 0x1d, 0x1f -/* 8003A238 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getFRoomNo__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getFRoomNo__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 9414fef9c2..0000000000 --- a/asm/d/d_door_param2/getFRoomNo__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1B8: -/* 8003A1B8 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A1BC 54 03 9E BE */ rlwinm r3, r0, 0x13, 0x1a, 0x1f -/* 8003A1C0 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getFrontOption__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getFrontOption__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 3c30f80d38..0000000000 --- a/asm/d/d_door_param2/getFrontOption__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1A0: -/* 8003A1A0 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A1A4 54 03 C7 BE */ rlwinm r3, r0, 0x18, 0x1e, 0x1f -/* 8003A1A8 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getKind__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getKind__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 941eefb93b..0000000000 --- a/asm/d/d_door_param2/getKind__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A188: -/* 8003A188 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A18C 54 03 06 FE */ clrlwi r3, r0, 0x1b -/* 8003A190 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getMBLightInf__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getMBLightInf__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 1a0bc5f8db..0000000000 --- a/asm/d/d_door_param2/getMBLightInf__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A254: -/* 8003A254 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A258 54 03 57 7E */ rlwinm r3, r0, 0xa, 0x1d, 0x1f -/* 8003A25C 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getMFLightInf__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getMFLightInf__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index d5fa35969e..0000000000 --- a/asm/d/d_door_param2/getMFLightInf__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A248: -/* 8003A248 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A24C 54 03 6F 7E */ rlwinm r3, r0, 0xd, 0x1d, 0x1f -/* 8003A250 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getMsgNo__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getMsgNo__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 9d1e9115f1..0000000000 --- a/asm/d/d_door_param2/getMsgNo__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A218: -/* 8003A218 A8 03 04 B4 */ lha r0, 0x4b4(r3) -/* 8003A21C 54 03 04 3E */ clrlwi r3, r0, 0x10 -/* 8003A220 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getSwbit2__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getSwbit2__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 28df4fcb30..0000000000 --- a/asm/d/d_door_param2/getSwbit2__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1DC: -/* 8003A1DC A8 03 04 B8 */ lha r0, 0x4b8(r3) -/* 8003A1E0 54 03 C6 3E */ rlwinm r3, r0, 0x18, 0x18, 0x1f -/* 8003A1E4 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getSwbit3__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getSwbit3__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index ef67f40caa..0000000000 --- a/asm/d/d_door_param2/getSwbit3__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1E8: -/* 8003A1E8 A8 03 04 B4 */ lha r0, 0x4b4(r3) -/* 8003A1EC 54 03 C6 3E */ rlwinm r3, r0, 0x18, 0x18, 0x1f -/* 8003A1F0 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/getSwbit__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/getSwbit__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 7123f46d5f..0000000000 --- a/asm/d/d_door_param2/getSwbit__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1D0: -/* 8003A1D0 A8 03 04 B8 */ lha r0, 0x4b8(r3) -/* 8003A1D4 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 8003A1D8 4E 80 00 20 */ blr diff --git a/asm/d/d_door_param2/isMsgDoor__13door_param2_cFP10fopAc_ac_c.s b/asm/d/d_door_param2/isMsgDoor__13door_param2_cFP10fopAc_ac_c.s deleted file mode 100644 index 260d9fd67b..0000000000 --- a/asm/d/d_door_param2/isMsgDoor__13door_param2_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8003A1F4: -/* 8003A1F4 80 03 00 B0 */ lwz r0, 0xb0(r3) -/* 8003A1F8 54 03 0F FE */ srwi r3, r0, 0x1f -/* 8003A1FC 4E 80 00 20 */ blr diff --git a/asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s b/asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s deleted file mode 100644 index 2914fb11d9..0000000000 --- a/asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_800568D8: -/* 800568D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800568DC 7C 08 02 A6 */ mflr r0 -/* 800568E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 800568E4 FC 20 08 50 */ fneg f1, f1 -/* 800568E8 38 6D 80 84 */ la r3, g_blackColor(r13) /* 80450604-_SDA_BASE_ */ -/* 800568EC 4B FF FF 31 */ bl wipeIn__12dDlst_list_cFfR8_GXColor -/* 800568F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800568F4 7C 08 03 A6 */ mtlr r0 -/* 800568F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800568FC 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/__ct__10dGov_HIO_cFv.s b/asm/d/d_gameover/__ct__10dGov_HIO_cFv.s deleted file mode 100644 index 1752a94e46..0000000000 --- a/asm/d/d_gameover/__ct__10dGov_HIO_cFv.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_8019AFE0: -/* 8019AFE0 3C 80 80 3B */ lis r4, __vt__14mDoHIO_entry_c@ha /* 0x803B61B4@ha */ -/* 8019AFE4 38 04 61 B4 */ addi r0, r4, __vt__14mDoHIO_entry_c@l /* 0x803B61B4@l */ -/* 8019AFE8 90 03 00 00 */ stw r0, 0(r3) -/* 8019AFEC 3C 80 80 3C */ lis r4, __vt__10dGov_HIO_c@ha /* 0x803BBD90@ha */ -/* 8019AFF0 38 04 BD 90 */ addi r0, r4, __vt__10dGov_HIO_c@l /* 0x803BBD90@l */ -/* 8019AFF4 90 03 00 00 */ stw r0, 0(r3) -/* 8019AFF8 C0 02 A1 8C */ lfs f0, lit_3878(r2) -/* 8019AFFC D0 03 00 08 */ stfs f0, 8(r3) -/* 8019B000 C0 02 A1 84 */ lfs f0, lit_3869(r2) -/* 8019B004 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 8019B008 C0 02 A1 90 */ lfs f0, lit_3879(r2) -/* 8019B00C D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8019B010 38 00 00 00 */ li r0, 0 -/* 8019B014 98 03 00 14 */ stb r0, 0x14(r3) -/* 8019B018 98 03 00 15 */ stb r0, 0x15(r3) -/* 8019B01C 98 03 00 16 */ stb r0, 0x16(r3) -/* 8019B020 98 03 00 17 */ stb r0, 0x17(r3) -/* 8019B024 38 80 00 FF */ li r4, 0xff -/* 8019B028 98 83 00 18 */ stb r4, 0x18(r3) -/* 8019B02C 38 00 00 DC */ li r0, 0xdc -/* 8019B030 98 03 00 19 */ stb r0, 0x19(r3) -/* 8019B034 38 00 00 7D */ li r0, 0x7d -/* 8019B038 98 03 00 1A */ stb r0, 0x1a(r3) -/* 8019B03C 98 83 00 1B */ stb r4, 0x1b(r3) -/* 8019B040 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/__dt__24dDlst_GameOverScrnDraw_cFv.s b/asm/d/d_gameover/__dt__24dDlst_GameOverScrnDraw_cFv.s deleted file mode 100644 index 243d4637b4..0000000000 --- a/asm/d/d_gameover/__dt__24dDlst_GameOverScrnDraw_cFv.s +++ /dev/null @@ -1,49 +0,0 @@ -lbl_8019BBFC: -/* 8019BBFC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BC00 7C 08 02 A6 */ mflr r0 -/* 8019BC04 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BC08 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019BC0C 93 C1 00 08 */ stw r30, 8(r1) -/* 8019BC10 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8019BC14 7C 9F 23 78 */ mr r31, r4 -/* 8019BC18 41 82 00 7C */ beq lbl_8019BC94 -/* 8019BC1C 3C 60 80 3C */ lis r3, __vt__24dDlst_GameOverScrnDraw_c@ha /* 0x803BBD68@ha */ -/* 8019BC20 38 03 BD 68 */ addi r0, r3, __vt__24dDlst_GameOverScrnDraw_c@l /* 0x803BBD68@l */ -/* 8019BC24 90 1E 00 00 */ stw r0, 0(r30) -/* 8019BC28 80 7E 00 08 */ lwz r3, 8(r30) -/* 8019BC2C 28 03 00 00 */ cmplwi r3, 0 -/* 8019BC30 41 82 00 18 */ beq lbl_8019BC48 -/* 8019BC34 38 80 00 01 */ li r4, 1 -/* 8019BC38 81 83 00 00 */ lwz r12, 0(r3) -/* 8019BC3C 81 8C 00 08 */ lwz r12, 8(r12) -/* 8019BC40 7D 89 03 A6 */ mtctr r12 -/* 8019BC44 4E 80 04 21 */ bctrl -lbl_8019BC48: -/* 8019BC48 80 7E 00 04 */ lwz r3, 4(r30) -/* 8019BC4C 28 03 00 00 */ cmplwi r3, 0 -/* 8019BC50 41 82 00 18 */ beq lbl_8019BC68 -/* 8019BC54 38 80 00 01 */ li r4, 1 -/* 8019BC58 81 83 00 00 */ lwz r12, 0(r3) -/* 8019BC5C 81 8C 00 08 */ lwz r12, 8(r12) -/* 8019BC60 7D 89 03 A6 */ mtctr r12 -/* 8019BC64 4E 80 04 21 */ bctrl -lbl_8019BC68: -/* 8019BC68 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019BC6C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019BC70 80 63 5D 30 */ lwz r3, 0x5d30(r3) -/* 8019BC74 81 83 00 00 */ lwz r12, 0(r3) -/* 8019BC78 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 8019BC7C 7D 89 03 A6 */ mtctr r12 -/* 8019BC80 4E 80 04 21 */ bctrl -/* 8019BC84 7F E0 07 35 */ extsh. r0, r31 -/* 8019BC88 40 81 00 0C */ ble lbl_8019BC94 -/* 8019BC8C 7F C3 F3 78 */ mr r3, r30 -/* 8019BC90 48 13 30 AD */ bl __dl__FPv -lbl_8019BC94: -/* 8019BC94 7F C3 F3 78 */ mr r3, r30 -/* 8019BC98 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019BC9C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8019BCA0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BCA4 7C 08 03 A6 */ mtlr r0 -/* 8019BCA8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BCAC 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/_delete__11dGameover_cFv.s b/asm/d/d_gameover/_delete__11dGameover_cFv.s deleted file mode 100644 index c3c788bd25..0000000000 --- a/asm/d/d_gameover/_delete__11dGameover_cFv.s +++ /dev/null @@ -1,60 +0,0 @@ -lbl_8019B864: -/* 8019B864 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B868 7C 08 02 A6 */ mflr r0 -/* 8019B86C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B870 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B874 93 C1 00 08 */ stw r30, 8(r1) -/* 8019B878 7C 7E 1B 78 */ mr r30, r3 -/* 8019B87C 80 63 01 10 */ lwz r3, 0x110(r3) -/* 8019B880 4B E7 39 4D */ bl mDoExt_setCurrentHeap__FP7JKRHeap -/* 8019B884 7C 7F 1B 78 */ mr r31, r3 -/* 8019B888 80 7E 01 00 */ lwz r3, 0x100(r30) -/* 8019B88C 28 03 00 00 */ cmplwi r3, 0 -/* 8019B890 41 82 00 24 */ beq lbl_8019B8B4 -/* 8019B894 41 82 00 18 */ beq lbl_8019B8AC -/* 8019B898 38 80 00 01 */ li r4, 1 -/* 8019B89C 81 83 00 00 */ lwz r12, 0(r3) -/* 8019B8A0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8019B8A4 7D 89 03 A6 */ mtctr r12 -/* 8019B8A8 4E 80 04 21 */ bctrl -lbl_8019B8AC: -/* 8019B8AC 38 00 00 00 */ li r0, 0 -/* 8019B8B0 90 1E 01 00 */ stw r0, 0x100(r30) -lbl_8019B8B4: -/* 8019B8B4 80 7E 00 FC */ lwz r3, 0xfc(r30) -/* 8019B8B8 48 05 52 71 */ bl _delete__12dMenu_save_cFv -/* 8019B8BC 80 7E 00 FC */ lwz r3, 0xfc(r30) -/* 8019B8C0 28 03 00 00 */ cmplwi r3, 0 -/* 8019B8C4 41 82 00 18 */ beq lbl_8019B8DC -/* 8019B8C8 38 80 00 01 */ li r4, 1 -/* 8019B8CC 81 83 00 00 */ lwz r12, 0(r3) -/* 8019B8D0 81 8C 00 08 */ lwz r12, 8(r12) -/* 8019B8D4 7D 89 03 A6 */ mtctr r12 -/* 8019B8D8 4E 80 04 21 */ bctrl -lbl_8019B8DC: -/* 8019B8DC 80 7E 01 04 */ lwz r3, 0x104(r30) -/* 8019B8E0 28 03 00 00 */ cmplwi r3, 0 -/* 8019B8E4 41 82 00 18 */ beq lbl_8019B8FC -/* 8019B8E8 38 80 00 01 */ li r4, 1 -/* 8019B8EC 81 83 00 00 */ lwz r12, 0(r3) -/* 8019B8F0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8019B8F4 7D 89 03 A6 */ mtctr r12 -/* 8019B8F8 4E 80 04 21 */ bctrl -lbl_8019B8FC: -/* 8019B8FC 80 7E 01 10 */ lwz r3, 0x110(r30) -/* 8019B900 48 13 2C CD */ bl freeAll__7JKRHeapFv -/* 8019B904 38 60 00 00 */ li r3, 0 -/* 8019B908 4B E9 28 81 */ bl dComIfGp_offHeapLockFlag__Fi -/* 8019B90C 7F E3 FB 78 */ mr r3, r31 -/* 8019B910 4B E7 38 BD */ bl mDoExt_setCurrentHeap__FP7JKRHeap -/* 8019B914 38 7E 01 08 */ addi r3, r30, 0x108 -/* 8019B918 3C 80 80 39 */ lis r4, d_d_gameover__stringBase0@ha /* 0x80394C28@ha */ -/* 8019B91C 38 84 4C 28 */ addi r4, r4, d_d_gameover__stringBase0@l /* 0x80394C28@l */ -/* 8019B920 4B E9 16 E9 */ bl dComIfG_resDelete__FP30request_of_phase_process_classPCc -/* 8019B924 38 60 00 01 */ li r3, 1 -/* 8019B928 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B92C 83 C1 00 08 */ lwz r30, 8(r1) -/* 8019B930 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B934 7C 08 03 A6 */ mtlr r0 -/* 8019B938 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B93C 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/_draw__11dGameover_cFv.s b/asm/d/d_gameover/_draw__11dGameover_cFv.s deleted file mode 100644 index dd06684fb1..0000000000 --- a/asm/d/d_gameover/_draw__11dGameover_cFv.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_8019B7C4: -/* 8019B7C4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B7C8 7C 08 02 A6 */ mflr r0 -/* 8019B7CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B7D0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B7D4 7C 7F 1B 78 */ mr r31, r3 -/* 8019B7D8 80 C3 01 04 */ lwz r6, 0x104(r3) -/* 8019B7DC 28 06 00 00 */ cmplwi r6, 0 -/* 8019B7E0 41 82 00 28 */ beq lbl_8019B808 -/* 8019B7E4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B7E8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B7EC 88 03 5E B5 */ lbz r0, 0x5eb5(r3) -/* 8019B7F0 28 00 00 00 */ cmplwi r0, 0 -/* 8019B7F4 41 82 00 14 */ beq lbl_8019B808 -/* 8019B7F8 38 63 5F 64 */ addi r3, r3, 0x5f64 -/* 8019B7FC 38 83 01 B4 */ addi r4, r3, 0x1b4 -/* 8019B800 38 A3 01 B8 */ addi r5, r3, 0x1b8 -/* 8019B804 4B EB AF 91 */ bl set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c -lbl_8019B808: -/* 8019B808 88 1F 01 19 */ lbz r0, 0x119(r31) -/* 8019B80C 28 00 00 00 */ cmplwi r0, 0 -/* 8019B810 41 82 00 3C */ beq lbl_8019B84C -/* 8019B814 88 1F 01 18 */ lbz r0, 0x118(r31) -/* 8019B818 28 00 00 02 */ cmplwi r0, 2 -/* 8019B81C 41 80 00 30 */ blt lbl_8019B84C -/* 8019B820 80 DF 01 00 */ lwz r6, 0x100(r31) -/* 8019B824 28 06 00 00 */ cmplwi r6, 0 -/* 8019B828 41 82 00 1C */ beq lbl_8019B844 -/* 8019B82C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B830 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B834 38 63 5F 64 */ addi r3, r3, 0x5f64 -/* 8019B838 38 83 01 B4 */ addi r4, r3, 0x1b4 -/* 8019B83C 38 A3 01 B8 */ addi r5, r3, 0x1b8 -/* 8019B840 4B EB AF 55 */ bl set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c -lbl_8019B844: -/* 8019B844 80 7F 00 FC */ lwz r3, 0xfc(r31) -/* 8019B848 48 05 B1 B5 */ bl _draw2__12dMenu_save_cFv -lbl_8019B84C: -/* 8019B84C 38 60 00 01 */ li r3, 1 -/* 8019B850 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B854 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B858 7C 08 03 A6 */ mtlr r0 -/* 8019B85C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B860 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dGameover_Create__FP9msg_class.s b/asm/d/d_gameover/dGameover_Create__FP9msg_class.s deleted file mode 100644 index 2e90a08f0d..0000000000 --- a/asm/d/d_gameover/dGameover_Create__FP9msg_class.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8019BFA4: -/* 8019BFA4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BFA8 7C 08 02 A6 */ mflr r0 -/* 8019BFAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BFB0 4B FF F0 95 */ bl _create__11dGameover_cFv -/* 8019BFB4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BFB8 7C 08 03 A6 */ mtlr r0 -/* 8019BFBC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BFC0 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dGameover_Delete__FP11dGameover_c.s b/asm/d/d_gameover/dGameover_Delete__FP11dGameover_c.s deleted file mode 100644 index f0a4698e1f..0000000000 --- a/asm/d/d_gameover/dGameover_Delete__FP11dGameover_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8019BF84: -/* 8019BF84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BF88 7C 08 02 A6 */ mflr r0 -/* 8019BF8C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BF90 4B FF F8 D5 */ bl _delete__11dGameover_cFv -/* 8019BF94 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BF98 7C 08 03 A6 */ mtlr r0 -/* 8019BF9C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BFA0 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dGameover_Draw__FP11dGameover_c.s b/asm/d/d_gameover/dGameover_Draw__FP11dGameover_c.s deleted file mode 100644 index 517526901f..0000000000 --- a/asm/d/d_gameover/dGameover_Draw__FP11dGameover_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8019BF3C: -/* 8019BF3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BF40 7C 08 02 A6 */ mflr r0 -/* 8019BF44 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BF48 4B FF F8 7D */ bl _draw__11dGameover_cFv -/* 8019BF4C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BF50 7C 08 03 A6 */ mtlr r0 -/* 8019BF54 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BF58 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dGameover_Execute__FP11dGameover_c.s b/asm/d/d_gameover/dGameover_Execute__FP11dGameover_c.s deleted file mode 100644 index be5360dc9b..0000000000 --- a/asm/d/d_gameover/dGameover_Execute__FP11dGameover_c.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_8019BF5C: -/* 8019BF5C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BF60 7C 08 02 A6 */ mflr r0 -/* 8019BF64 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BF68 4B FF F3 8D */ bl _execute__11dGameover_cFv -/* 8019BF6C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BF70 7C 08 03 A6 */ mtlr r0 -/* 8019BF74 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BF78 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/d_GameOver_Create__FUc.s b/asm/d/d_gameover/d_GameOver_Create__FUc.s deleted file mode 100644 index a228766975..0000000000 --- a/asm/d/d_gameover/d_GameOver_Create__FUc.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8019BFC4: -/* 8019BFC4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BFC8 7C 08 02 A6 */ mflr r0 -/* 8019BFCC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BFD0 3C 80 80 43 */ lis r4, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019BFD4 38 84 01 88 */ addi r4, r4, g_meter2_info@l /* 0x80430188@l */ -/* 8019BFD8 98 64 00 C2 */ stb r3, 0xc2(r4) -/* 8019BFDC 38 60 03 17 */ li r3, 0x317 -/* 8019BFE0 38 80 00 00 */ li r4, 0 -/* 8019BFE4 38 A0 00 00 */ li r5, 0 -/* 8019BFE8 38 C0 00 00 */ li r6, 0 -/* 8019BFEC 38 E0 00 00 */ li r7, 0 -/* 8019BFF0 39 00 00 00 */ li r8, 0 -/* 8019BFF4 4B E8 3C 59 */ bl fopMsgM_create__FsP10fopAc_ac_cP4cXyzPUlPUlPFPv_i -/* 8019BFF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BFFC 7C 08 03 A6 */ mtlr r0 -/* 8019C000 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019C004 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/d_GameOver_Delete__FRUi.s b/asm/d/d_gameover/d_GameOver_Delete__FRUi.s deleted file mode 100644 index 4ddf60ade4..0000000000 --- a/asm/d/d_gameover/d_GameOver_Delete__FRUi.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_8019C008: -/* 8019C008 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019C00C 7C 08 02 A6 */ mflr r0 -/* 8019C010 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019C014 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019C018 7C 7F 1B 78 */ mr r31, r3 -/* 8019C01C 80 63 00 00 */ lwz r3, 0(r3) -/* 8019C020 3C 03 00 01 */ addis r0, r3, 1 -/* 8019C024 28 00 FF FF */ cmplwi r0, 0xffff -/* 8019C028 41 82 00 2C */ beq lbl_8019C054 -/* 8019C02C 4B E8 39 F9 */ bl fopMsgM_SearchByID__FUi -/* 8019C030 4B E8 3A 1D */ bl fopMsgM_Delete__FPv -/* 8019C034 38 00 FF FF */ li r0, -1 -/* 8019C038 90 1F 00 00 */ stw r0, 0(r31) -/* 8019C03C 38 00 00 00 */ li r0, 0 -/* 8019C040 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019C044 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8019C048 98 03 00 C2 */ stb r0, 0xc2(r3) -/* 8019C04C 38 60 00 01 */ li r3, 1 -/* 8019C050 48 00 00 08 */ b lbl_8019C058 -lbl_8019C054: -/* 8019C054 38 60 00 00 */ li r3, 0 -lbl_8019C058: -/* 8019C058 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019C05C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019C060 7C 08 03 A6 */ mtlr r0 -/* 8019C064 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019C068 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/demoFadeIn_init__11dGameover_cFv.s b/asm/d/d_gameover/demoFadeIn_init__11dGameover_cFv.s deleted file mode 100644 index 662775281f..0000000000 --- a/asm/d/d_gameover/demoFadeIn_init__11dGameover_cFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8019B478: -/* 8019B478 38 00 00 00 */ li r0, 0 -/* 8019B47C B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B480 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/demoFadeIn_proc__11dGameover_cFv.s b/asm/d/d_gameover/demoFadeIn_proc__11dGameover_cFv.s deleted file mode 100644 index 0f3316cfde..0000000000 --- a/asm/d/d_gameover/demoFadeIn_proc__11dGameover_cFv.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_8019B484: -/* 8019B484 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B488 7C 08 02 A6 */ mflr r0 -/* 8019B48C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B490 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B494 7C 7F 1B 78 */ mr r31, r3 -/* 8019B498 A8 63 01 14 */ lha r3, 0x114(r3) -/* 8019B49C 38 03 00 01 */ addi r0, r3, 1 -/* 8019B4A0 B0 1F 01 14 */ sth r0, 0x114(r31) -/* 8019B4A4 80 7F 01 00 */ lwz r3, 0x100(r31) -/* 8019B4A8 C0 22 A1 84 */ lfs f1, lit_3869(r2) -/* 8019B4AC 48 00 08 05 */ bl setBackAlpha__24dDlst_GameOverScrnDraw_cFf -/* 8019B4B0 A8 1F 01 14 */ lha r0, 0x114(r31) -/* 8019B4B4 2C 00 00 1E */ cmpwi r0, 0x1e -/* 8019B4B8 41 80 00 0C */ blt lbl_8019B4C4 -/* 8019B4BC 38 00 00 05 */ li r0, 5 -/* 8019B4C0 98 1F 01 18 */ stb r0, 0x118(r31) -lbl_8019B4C4: -/* 8019B4C4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B4C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B4CC 7C 08 03 A6 */ mtlr r0 -/* 8019B4D0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B4D4 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/demoFadeOut_init__11dGameover_cFv.s b/asm/d/d_gameover/demoFadeOut_init__11dGameover_cFv.s deleted file mode 100644 index 5b2600d03c..0000000000 --- a/asm/d/d_gameover/demoFadeOut_init__11dGameover_cFv.s +++ /dev/null @@ -1,4 +0,0 @@ -lbl_8019B4D8: -/* 8019B4D8 38 00 00 1E */ li r0, 0x1e -/* 8019B4DC B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B4E0 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/demoFadeOut_proc__11dGameover_cFv.s b/asm/d/d_gameover/demoFadeOut_proc__11dGameover_cFv.s deleted file mode 100644 index 0e247c04c1..0000000000 --- a/asm/d/d_gameover/demoFadeOut_proc__11dGameover_cFv.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_8019B4E4: -/* 8019B4E4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8019B4E8 7C 08 02 A6 */ mflr r0 -/* 8019B4EC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8019B4F0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8019B4F4 7C 7F 1B 78 */ mr r31, r3 -/* 8019B4F8 A8 63 01 14 */ lha r3, 0x114(r3) -/* 8019B4FC 38 03 FF FF */ addi r0, r3, -1 -/* 8019B500 B0 1F 01 14 */ sth r0, 0x114(r31) -/* 8019B504 80 7F 01 00 */ lwz r3, 0x100(r31) -/* 8019B508 A8 1F 01 14 */ lha r0, 0x114(r31) -/* 8019B50C 7C 00 01 D6 */ mullw r0, r0, r0 -/* 8019B510 C8 22 A1 98 */ lfd f1, lit_4071(r2) -/* 8019B514 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8019B518 90 01 00 0C */ stw r0, 0xc(r1) -/* 8019B51C 3C 00 43 30 */ lis r0, 0x4330 -/* 8019B520 90 01 00 08 */ stw r0, 8(r1) -/* 8019B524 C8 01 00 08 */ lfd f0, 8(r1) -/* 8019B528 EC 20 08 28 */ fsubs f1, f0, f1 -/* 8019B52C C0 02 A1 94 */ lfs f0, lit_4069(r2) -/* 8019B530 EC 21 00 24 */ fdivs f1, f1, f0 -/* 8019B534 48 00 07 7D */ bl setBackAlpha__24dDlst_GameOverScrnDraw_cFf -/* 8019B538 A8 1F 01 14 */ lha r0, 0x114(r31) -/* 8019B53C 2C 00 00 00 */ cmpwi r0, 0 -/* 8019B540 41 81 00 0C */ bgt lbl_8019B54C -/* 8019B544 38 00 00 08 */ li r0, 8 -/* 8019B548 98 1F 01 18 */ stb r0, 0x118(r31) -lbl_8019B54C: -/* 8019B54C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8019B550 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8019B554 7C 08 03 A6 */ mtlr r0 -/* 8019B558 38 21 00 20 */ addi r1, r1, 0x20 -/* 8019B55C 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dispFadeOut_init__11dGameover_cFv.s b/asm/d/d_gameover/dispFadeOut_init__11dGameover_cFv.s deleted file mode 100644 index ac92c976bf..0000000000 --- a/asm/d/d_gameover/dispFadeOut_init__11dGameover_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8019B3A0: -/* 8019B3A0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B3A4 7C 08 02 A6 */ mflr r0 -/* 8019B3A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B3AC 38 00 00 1E */ li r0, 0x1e -/* 8019B3B0 B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B3B4 80 6D 8C 40 */ lwz r3, sManager__10JFWDisplay(r13) -/* 8019B3B8 80 63 00 04 */ lwz r3, 4(r3) -/* 8019B3BC 28 03 00 00 */ cmplwi r3, 0 -/* 8019B3C0 41 82 00 18 */ beq lbl_8019B3D8 -/* 8019B3C4 38 80 00 0F */ li r4, 0xf -/* 8019B3C8 81 83 00 00 */ lwz r12, 0(r3) -/* 8019B3CC 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8019B3D0 7D 89 03 A6 */ mtctr r12 -/* 8019B3D4 4E 80 04 21 */ bctrl -lbl_8019B3D8: -/* 8019B3D8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B3DC 7C 08 03 A6 */ mtlr r0 -/* 8019B3E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B3E4 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dispFadeOut_proc__11dGameover_cFv.s b/asm/d/d_gameover/dispFadeOut_proc__11dGameover_cFv.s deleted file mode 100644 index d27f5b35fa..0000000000 --- a/asm/d/d_gameover/dispFadeOut_proc__11dGameover_cFv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8019B3E8: -/* 8019B3E8 A8 83 01 14 */ lha r4, 0x114(r3) -/* 8019B3EC 2C 04 00 00 */ cmpwi r4, 0 -/* 8019B3F0 41 82 00 10 */ beq lbl_8019B400 -/* 8019B3F4 38 04 FF FF */ addi r0, r4, -1 -/* 8019B3F8 B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B3FC 4E 80 00 20 */ blr -lbl_8019B400: -/* 8019B400 38 00 00 02 */ li r0, 2 -/* 8019B404 98 03 01 18 */ stb r0, 0x118(r3) -/* 8019B408 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dispWait_init__11dGameover_cFv.s b/asm/d/d_gameover/dispWait_init__11dGameover_cFv.s deleted file mode 100644 index d360cbe104..0000000000 --- a/asm/d/d_gameover/dispWait_init__11dGameover_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8019B40C: -/* 8019B40C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B410 7C 08 02 A6 */ mflr r0 -/* 8019B414 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B418 38 00 00 5A */ li r0, 0x5a -/* 8019B41C B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B420 80 6D 8C 40 */ lwz r3, sManager__10JFWDisplay(r13) -/* 8019B424 80 63 00 04 */ lwz r3, 4(r3) -/* 8019B428 28 03 00 00 */ cmplwi r3, 0 -/* 8019B42C 41 82 00 18 */ beq lbl_8019B444 -/* 8019B430 38 80 00 1E */ li r4, 0x1e -/* 8019B434 81 83 00 00 */ lwz r12, 0(r3) -/* 8019B438 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8019B43C 7D 89 03 A6 */ mtctr r12 -/* 8019B440 4E 80 04 21 */ bctrl -lbl_8019B444: -/* 8019B444 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B448 7C 08 03 A6 */ mtlr r0 -/* 8019B44C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B450 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/dispWait_proc__11dGameover_cFv.s b/asm/d/d_gameover/dispWait_proc__11dGameover_cFv.s deleted file mode 100644 index 917b554b2f..0000000000 --- a/asm/d/d_gameover/dispWait_proc__11dGameover_cFv.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_8019B454: -/* 8019B454 A8 83 01 14 */ lha r4, 0x114(r3) -/* 8019B458 2C 04 00 00 */ cmpwi r4, 0 -/* 8019B45C 41 82 00 10 */ beq lbl_8019B46C -/* 8019B460 38 04 FF FF */ addi r0, r4, -1 -/* 8019B464 B0 03 01 14 */ sth r0, 0x114(r3) -/* 8019B468 4E 80 00 20 */ blr -lbl_8019B46C: -/* 8019B46C 38 00 00 05 */ li r0, 5 -/* 8019B470 98 03 01 18 */ stb r0, 0x118(r3) -/* 8019B474 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/playerAnmWait_proc__11dGameover_cFv.s b/asm/d/d_gameover/playerAnmWait_proc__11dGameover_cFv.s deleted file mode 100644 index b9b174ba47..0000000000 --- a/asm/d/d_gameover/playerAnmWait_proc__11dGameover_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_8019B388: -/* 8019B388 88 03 01 19 */ lbz r0, 0x119(r3) -/* 8019B38C 28 00 00 00 */ cmplwi r0, 0 -/* 8019B390 4D 82 00 20 */ beqlr -/* 8019B394 38 00 00 01 */ li r0, 1 -/* 8019B398 98 03 01 18 */ stb r0, 0x118(r3) -/* 8019B39C 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/saveClose_proc__11dGameover_cFv.s b/asm/d/d_gameover/saveClose_proc__11dGameover_cFv.s deleted file mode 100644 index 4f95aae269..0000000000 --- a/asm/d/d_gameover/saveClose_proc__11dGameover_cFv.s +++ /dev/null @@ -1,124 +0,0 @@ -lbl_8019B5F4: -/* 8019B5F4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B5F8 7C 08 02 A6 */ mflr r0 -/* 8019B5FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B600 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B604 93 C1 00 08 */ stw r30, 8(r1) -/* 8019B608 7C 7F 1B 78 */ mr r31, r3 -/* 8019B60C 80 63 00 FC */ lwz r3, 0xfc(r3) -/* 8019B610 88 03 01 BB */ lbz r0, 0x1bb(r3) -/* 8019B614 28 00 00 00 */ cmplwi r0, 0 -/* 8019B618 40 82 00 2C */ bne lbl_8019B644 -/* 8019B61C 38 00 00 03 */ li r0, 3 -/* 8019B620 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B624 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B628 98 03 5E 89 */ stb r0, 0x5e89(r3) -/* 8019B62C 38 00 00 00 */ li r0, 0 -/* 8019B630 98 03 5E B5 */ stb r0, 0x5eb5(r3) -/* 8019B634 38 00 00 01 */ li r0, 1 -/* 8019B638 80 6D 86 F8 */ lwz r3, mResetData__6mDoRst(r13) -/* 8019B63C 90 03 00 00 */ stw r0, 0(r3) -/* 8019B640 48 00 01 20 */ b lbl_8019B760 -lbl_8019B644: -/* 8019B644 28 00 00 01 */ cmplwi r0, 1 -/* 8019B648 40 82 01 18 */ bne lbl_8019B760 -/* 8019B64C 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019B650 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8019B654 88 03 00 C2 */ lbz r0, 0xc2(r3) -/* 8019B658 28 00 00 01 */ cmplwi r0, 1 -/* 8019B65C 41 82 00 0C */ beq lbl_8019B668 -/* 8019B660 28 00 00 02 */ cmplwi r0, 2 -/* 8019B664 40 82 00 18 */ bne lbl_8019B67C -lbl_8019B668: -/* 8019B668 38 00 00 01 */ li r0, 1 -/* 8019B66C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B670 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B674 98 03 5E 89 */ stb r0, 0x5e89(r3) -/* 8019B678 48 00 00 14 */ b lbl_8019B68C -lbl_8019B67C: -/* 8019B67C 38 00 00 02 */ li r0, 2 -/* 8019B680 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B684 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B688 98 03 5E 89 */ stb r0, 0x5e89(r3) -lbl_8019B68C: -/* 8019B68C 38 00 00 00 */ li r0, 0 -/* 8019B690 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B694 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B698 98 03 5E B5 */ stb r0, 0x5eb5(r3) -/* 8019B69C 3B C3 07 F0 */ addi r30, r3, 0x7f0 -/* 8019B6A0 7F C3 F3 78 */ mr r3, r30 -/* 8019B6A4 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 8019B6A8 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 8019B6AC A0 84 01 C4 */ lhz r4, 0x1c4(r4) -/* 8019B6B0 4B E9 93 0D */ bl isEventBit__11dSv_event_cCFUs -/* 8019B6B4 2C 03 00 00 */ cmpwi r3, 0 -/* 8019B6B8 40 82 00 2C */ bne lbl_8019B6E4 -/* 8019B6BC 7F C3 F3 78 */ mr r3, r30 -/* 8019B6C0 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 8019B6C4 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 8019B6C8 A0 84 01 C0 */ lhz r4, 0x1c0(r4) -/* 8019B6CC 4B E9 92 D9 */ bl offEventBit__11dSv_event_cFUs -/* 8019B6D0 7F C3 F3 78 */ mr r3, r30 -/* 8019B6D4 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */ -/* 8019B6D8 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */ -/* 8019B6DC A0 84 01 C2 */ lhz r4, 0x1c2(r4) -/* 8019B6E0 4B E9 92 C5 */ bl offEventBit__11dSv_event_cFUs -lbl_8019B6E4: -/* 8019B6E4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B6E8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B6EC 38 63 00 CC */ addi r3, r3, 0xcc -/* 8019B6F0 38 80 00 48 */ li r4, 0x48 -/* 8019B6F4 4B E9 87 D5 */ bl isFirstBit__21dSv_player_get_item_cCFUc -/* 8019B6F8 2C 03 00 00 */ cmpwi r3, 0 -/* 8019B6FC 41 82 00 54 */ beq lbl_8019B750 -/* 8019B700 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B704 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B708 3B C3 00 9C */ addi r30, r3, 0x9c -/* 8019B70C 7F C3 F3 78 */ mr r3, r30 -/* 8019B710 38 80 00 01 */ li r4, 1 -/* 8019B714 38 A0 00 01 */ li r5, 1 -/* 8019B718 4B E9 79 19 */ bl getItem__17dSv_player_item_cCFib -/* 8019B71C 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8019B720 28 00 00 FF */ cmplwi r0, 0xff -/* 8019B724 40 82 00 2C */ bne lbl_8019B750 -/* 8019B728 7F C3 F3 78 */ mr r3, r30 -/* 8019B72C 38 80 00 01 */ li r4, 1 -/* 8019B730 38 A0 00 48 */ li r5, 0x48 -/* 8019B734 4B E9 78 85 */ bl setItem__17dSv_player_item_cFiUc -/* 8019B738 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019B73C 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8019B740 A0 03 00 B6 */ lhz r0, 0xb6(r3) -/* 8019B744 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B748 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B74C B0 03 00 08 */ sth r0, 8(r3) -lbl_8019B750: -/* 8019B750 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019B754 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8019B758 38 80 00 00 */ li r4, 0 -/* 8019B75C 48 08 29 69 */ bl resetMiniGameItem__13dMeter2Info_cFb -lbl_8019B760: -/* 8019B760 3C 60 80 43 */ lis r3, g_meter2_info@ha /* 0x80430188@ha */ -/* 8019B764 38 63 01 88 */ addi r3, r3, g_meter2_info@l /* 0x80430188@l */ -/* 8019B768 88 03 00 C2 */ lbz r0, 0xc2(r3) -/* 8019B76C 28 00 00 01 */ cmplwi r0, 1 -/* 8019B770 40 82 00 2C */ bne lbl_8019B79C -/* 8019B774 28 00 00 02 */ cmplwi r0, 2 -/* 8019B778 40 82 00 24 */ bne lbl_8019B79C -/* 8019B77C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8019B780 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8019B784 88 03 5E 89 */ lbz r0, 0x5e89(r3) -/* 8019B788 28 00 00 01 */ cmplwi r0, 1 -/* 8019B78C 40 82 00 10 */ bne lbl_8019B79C -/* 8019B790 38 00 00 04 */ li r0, 4 -/* 8019B794 98 1F 01 18 */ stb r0, 0x118(r31) -/* 8019B798 48 00 00 0C */ b lbl_8019B7A4 -lbl_8019B79C: -/* 8019B79C 38 00 00 08 */ li r0, 8 -/* 8019B7A0 98 1F 01 18 */ stb r0, 0x118(r31) -lbl_8019B7A4: -/* 8019B7A4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B7A8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8019B7AC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B7B0 7C 08 03 A6 */ mtlr r0 -/* 8019B7B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B7B8 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/saveMove_proc__11dGameover_cFv.s b/asm/d/d_gameover/saveMove_proc__11dGameover_cFv.s deleted file mode 100644 index 2436cff171..0000000000 --- a/asm/d/d_gameover/saveMove_proc__11dGameover_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_8019B5A8: -/* 8019B5A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B5AC 7C 08 02 A6 */ mflr r0 -/* 8019B5B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B5B4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B5B8 7C 7F 1B 78 */ mr r31, r3 -/* 8019B5BC 80 63 00 FC */ lwz r3, 0xfc(r3) -/* 8019B5C0 48 05 5A 89 */ bl _move__12dMenu_save_cFv -/* 8019B5C4 80 7F 00 FC */ lwz r3, 0xfc(r31) -/* 8019B5C8 88 03 01 BA */ lbz r0, 0x1ba(r3) -/* 8019B5CC 28 00 00 03 */ cmplwi r0, 3 -/* 8019B5D0 40 82 00 0C */ bne lbl_8019B5DC -/* 8019B5D4 38 00 00 07 */ li r0, 7 -/* 8019B5D8 98 1F 01 18 */ stb r0, 0x118(r31) -lbl_8019B5DC: -/* 8019B5DC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B5E0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B5E4 7C 08 03 A6 */ mtlr r0 -/* 8019B5E8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B5EC 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/saveOpen_proc__11dGameover_cFv.s b/asm/d/d_gameover/saveOpen_proc__11dGameover_cFv.s deleted file mode 100644 index e990a4c8e8..0000000000 --- a/asm/d/d_gameover/saveOpen_proc__11dGameover_cFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8019B564: -/* 8019B564 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019B568 7C 08 02 A6 */ mflr r0 -/* 8019B56C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019B570 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8019B574 7C 7F 1B 78 */ mr r31, r3 -/* 8019B578 80 63 00 FC */ lwz r3, 0xfc(r3) -/* 8019B57C 48 05 54 31 */ bl _open__12dMenu_save_cFv -/* 8019B580 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8019B584 41 82 00 0C */ beq lbl_8019B590 -/* 8019B588 38 00 00 06 */ li r0, 6 -/* 8019B58C 98 1F 01 18 */ stb r0, 0x118(r31) -lbl_8019B590: -/* 8019B590 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8019B594 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019B598 7C 08 03 A6 */ mtlr r0 -/* 8019B59C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019B5A0 4E 80 00 20 */ blr diff --git a/asm/d/d_gameover/setBackAlpha__24dDlst_GameOverScrnDraw_cFf.s b/asm/d/d_gameover/setBackAlpha__24dDlst_GameOverScrnDraw_cFf.s deleted file mode 100644 index 3226c44c04..0000000000 --- a/asm/d/d_gameover/setBackAlpha__24dDlst_GameOverScrnDraw_cFf.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8019BCB0: -/* 8019BCB0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8019BCB4 7C 08 02 A6 */ mflr r0 -/* 8019BCB8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8019BCBC 80 63 00 08 */ lwz r3, 8(r3) -/* 8019BCC0 C0 02 A1 A8 */ lfs f0, lit_4316(r2) -/* 8019BCC4 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8019BCC8 FC 00 00 1E */ fctiwz f0, f0 -/* 8019BCCC D8 01 00 08 */ stfd f0, 8(r1) -/* 8019BCD0 80 81 00 0C */ lwz r4, 0xc(r1) -/* 8019BCD4 81 83 00 00 */ lwz r12, 0(r3) -/* 8019BCD8 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 8019BCDC 7D 89 03 A6 */ mtctr r12 -/* 8019BCE0 4E 80 04 21 */ bctrl -/* 8019BCE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8019BCE8 7C 08 03 A6 */ mtlr r0 -/* 8019BCEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8019BCF0 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_draw/setAlphaKanteraChange__13dMeter2Draw_cFb.s b/asm/d/meter/d_meter2_draw/setAlphaKanteraChange__13dMeter2Draw_cFb.s deleted file mode 100644 index 3255be50ae..0000000000 --- a/asm/d/meter/d_meter2_draw/setAlphaKanteraChange__13dMeter2Draw_cFb.s +++ /dev/null @@ -1,85 +0,0 @@ -lbl_802155B8: -/* 802155B8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802155BC 7C 08 02 A6 */ mflr r0 -/* 802155C0 90 01 00 24 */ stw r0, 0x24(r1) -/* 802155C4 39 61 00 20 */ addi r11, r1, 0x20 -/* 802155C8 48 14 CC 0D */ bl _savegpr_27 -/* 802155CC 7C 7B 1B 78 */ mr r27, r3 -/* 802155D0 7C 9C 23 78 */ mr r28, r4 -/* 802155D4 3B E0 00 00 */ li r31, 0 -/* 802155D8 3B C0 00 00 */ li r30, 0 -/* 802155DC 3B A0 00 00 */ li r29, 0 -/* 802155E0 80 63 01 CC */ lwz r3, 0x1cc(r3) -/* 802155E4 48 04 02 45 */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 802155E8 C0 1B 07 B0 */ lfs f0, 0x7b0(r27) -/* 802155EC FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 802155F0 40 82 00 0C */ bne lbl_802155FC -/* 802155F4 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 802155F8 41 82 00 14 */ beq lbl_8021560C -lbl_802155FC: -/* 802155FC 80 7B 01 CC */ lwz r3, 0x1cc(r27) -/* 80215600 48 04 02 29 */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 80215604 D0 3B 07 B0 */ stfs f1, 0x7b0(r27) -/* 80215608 3B E0 00 01 */ li r31, 1 -lbl_8021560C: -/* 8021560C C0 1B 07 B4 */ lfs f0, 0x7b4(r27) -/* 80215610 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 80215614 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 80215618 C0 23 00 58 */ lfs f1, 0x58(r3) -/* 8021561C FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215620 40 82 00 0C */ bne lbl_8021562C -/* 80215624 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215628 41 82 00 0C */ beq lbl_80215634 -lbl_8021562C: -/* 8021562C D0 3B 07 B4 */ stfs f1, 0x7b4(r27) -/* 80215630 3B C0 00 01 */ li r30, 1 -lbl_80215634: -/* 80215634 C0 1B 07 B8 */ lfs f0, 0x7b8(r27) -/* 80215638 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 8021563C 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 80215640 C0 23 00 5C */ lfs f1, 0x5c(r3) -/* 80215644 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215648 40 82 00 0C */ bne lbl_80215654 -/* 8021564C 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215650 41 82 00 0C */ beq lbl_8021565C -lbl_80215654: -/* 80215654 D0 3B 07 B8 */ stfs f1, 0x7b8(r27) -/* 80215658 3B A0 00 01 */ li r29, 1 -lbl_8021565C: -/* 8021565C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80215660 40 82 00 14 */ bne lbl_80215674 -/* 80215664 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80215668 40 82 00 0C */ bne lbl_80215674 -/* 8021566C 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215670 41 82 00 18 */ beq lbl_80215688 -lbl_80215674: -/* 80215674 80 7B 01 D8 */ lwz r3, 0x1d8(r27) -/* 80215678 C0 3B 07 B4 */ lfs f1, 0x7b4(r27) -/* 8021567C C0 1B 07 B0 */ lfs f0, 0x7b0(r27) -/* 80215680 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80215684 48 04 01 4D */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_80215688: -/* 80215688 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 8021568C 40 82 00 14 */ bne lbl_802156A0 -/* 80215690 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 80215694 40 82 00 0C */ bne lbl_802156A0 -/* 80215698 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 8021569C 41 82 00 2C */ beq lbl_802156C8 -lbl_802156A0: -/* 802156A0 80 7B 01 D4 */ lwz r3, 0x1d4(r27) -/* 802156A4 C0 3B 07 B8 */ lfs f1, 0x7b8(r27) -/* 802156A8 C0 1B 07 B0 */ lfs f0, 0x7b0(r27) -/* 802156AC EC 21 00 32 */ fmuls f1, f1, f0 -/* 802156B0 48 04 01 21 */ bl setAlphaRate__13CPaneMgrAlphaFf -/* 802156B4 80 7B 01 DC */ lwz r3, 0x1dc(r27) -/* 802156B8 C0 3B 07 B8 */ lfs f1, 0x7b8(r27) -/* 802156BC C0 1B 07 B0 */ lfs f0, 0x7b0(r27) -/* 802156C0 EC 21 00 32 */ fmuls f1, f1, f0 -/* 802156C4 48 04 01 0D */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_802156C8: -/* 802156C8 39 61 00 20 */ addi r11, r1, 0x20 -/* 802156CC 48 14 CB 55 */ bl _restgpr_27 -/* 802156D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802156D4 7C 08 03 A6 */ mtlr r0 -/* 802156D8 38 21 00 20 */ addi r1, r1, 0x20 -/* 802156DC 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_draw/setAlphaMagicChange__13dMeter2Draw_cFb.s b/asm/d/meter/d_meter2_draw/setAlphaMagicChange__13dMeter2Draw_cFb.s deleted file mode 100644 index a8ca105d7f..0000000000 --- a/asm/d/meter/d_meter2_draw/setAlphaMagicChange__13dMeter2Draw_cFb.s +++ /dev/null @@ -1,85 +0,0 @@ -lbl_80215380: -/* 80215380 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80215384 7C 08 02 A6 */ mflr r0 -/* 80215388 90 01 00 24 */ stw r0, 0x24(r1) -/* 8021538C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80215390 48 14 CE 45 */ bl _savegpr_27 -/* 80215394 7C 7B 1B 78 */ mr r27, r3 -/* 80215398 7C 9C 23 78 */ mr r28, r4 -/* 8021539C 3B E0 00 00 */ li r31, 0 -/* 802153A0 3B C0 00 00 */ li r30, 0 -/* 802153A4 3B A0 00 00 */ li r29, 0 -/* 802153A8 80 63 01 CC */ lwz r3, 0x1cc(r3) -/* 802153AC 48 04 04 7D */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 802153B0 C0 1B 07 A4 */ lfs f0, 0x7a4(r27) -/* 802153B4 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 802153B8 40 82 00 0C */ bne lbl_802153C4 -/* 802153BC 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 802153C0 41 82 00 14 */ beq lbl_802153D4 -lbl_802153C4: -/* 802153C4 80 7B 01 CC */ lwz r3, 0x1cc(r27) -/* 802153C8 48 04 04 61 */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 802153CC D0 3B 07 A4 */ stfs f1, 0x7a4(r27) -/* 802153D0 3B E0 00 01 */ li r31, 1 -lbl_802153D4: -/* 802153D4 C0 1B 07 A8 */ lfs f0, 0x7a8(r27) -/* 802153D8 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 802153DC 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 802153E0 C0 23 00 44 */ lfs f1, 0x44(r3) -/* 802153E4 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 802153E8 40 82 00 0C */ bne lbl_802153F4 -/* 802153EC 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 802153F0 41 82 00 0C */ beq lbl_802153FC -lbl_802153F4: -/* 802153F4 D0 3B 07 A8 */ stfs f1, 0x7a8(r27) -/* 802153F8 3B C0 00 01 */ li r30, 1 -lbl_802153FC: -/* 802153FC C0 1B 07 AC */ lfs f0, 0x7ac(r27) -/* 80215400 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 80215404 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 80215408 C0 23 00 48 */ lfs f1, 0x48(r3) -/* 8021540C FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215410 40 82 00 0C */ bne lbl_8021541C -/* 80215414 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215418 41 82 00 0C */ beq lbl_80215424 -lbl_8021541C: -/* 8021541C D0 3B 07 AC */ stfs f1, 0x7ac(r27) -/* 80215420 3B A0 00 01 */ li r29, 1 -lbl_80215424: -/* 80215424 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80215428 40 82 00 14 */ bne lbl_8021543C -/* 8021542C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80215430 40 82 00 0C */ bne lbl_8021543C -/* 80215434 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215438 41 82 00 18 */ beq lbl_80215450 -lbl_8021543C: -/* 8021543C 80 7B 01 D8 */ lwz r3, 0x1d8(r27) -/* 80215440 C0 3B 07 A8 */ lfs f1, 0x7a8(r27) -/* 80215444 C0 1B 07 A4 */ lfs f0, 0x7a4(r27) -/* 80215448 EC 21 00 32 */ fmuls f1, f1, f0 -/* 8021544C 48 04 03 85 */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_80215450: -/* 80215450 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80215454 40 82 00 14 */ bne lbl_80215468 -/* 80215458 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 8021545C 40 82 00 0C */ bne lbl_80215468 -/* 80215460 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215464 41 82 00 2C */ beq lbl_80215490 -lbl_80215468: -/* 80215468 80 7B 01 D4 */ lwz r3, 0x1d4(r27) -/* 8021546C C0 3B 07 AC */ lfs f1, 0x7ac(r27) -/* 80215470 C0 1B 07 A4 */ lfs f0, 0x7a4(r27) -/* 80215474 EC 21 00 32 */ fmuls f1, f1, f0 -/* 80215478 48 04 03 59 */ bl setAlphaRate__13CPaneMgrAlphaFf -/* 8021547C 80 7B 01 DC */ lwz r3, 0x1dc(r27) -/* 80215480 C0 3B 07 AC */ lfs f1, 0x7ac(r27) -/* 80215484 C0 1B 07 A4 */ lfs f0, 0x7a4(r27) -/* 80215488 EC 21 00 32 */ fmuls f1, f1, f0 -/* 8021548C 48 04 03 45 */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_80215490: -/* 80215490 39 61 00 20 */ addi r11, r1, 0x20 -/* 80215494 48 14 CD 8D */ bl _restgpr_27 -/* 80215498 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8021549C 7C 08 03 A6 */ mtlr r0 -/* 802154A0 38 21 00 20 */ addi r1, r1, 0x20 -/* 802154A4 4E 80 00 20 */ blr diff --git a/asm/d/meter/d_meter2_draw/setAlphaOxygenChange__13dMeter2Draw_cFb.s b/asm/d/meter/d_meter2_draw/setAlphaOxygenChange__13dMeter2Draw_cFb.s deleted file mode 100644 index 24c2616868..0000000000 --- a/asm/d/meter/d_meter2_draw/setAlphaOxygenChange__13dMeter2Draw_cFb.s +++ /dev/null @@ -1,85 +0,0 @@ -lbl_802158F0: -/* 802158F0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802158F4 7C 08 02 A6 */ mflr r0 -/* 802158F8 90 01 00 24 */ stw r0, 0x24(r1) -/* 802158FC 39 61 00 20 */ addi r11, r1, 0x20 -/* 80215900 48 14 C8 D5 */ bl _savegpr_27 -/* 80215904 7C 7B 1B 78 */ mr r27, r3 -/* 80215908 7C 9C 23 78 */ mr r28, r4 -/* 8021590C 3B E0 00 00 */ li r31, 0 -/* 80215910 3B C0 00 00 */ li r30, 0 -/* 80215914 3B A0 00 00 */ li r29, 0 -/* 80215918 80 63 01 CC */ lwz r3, 0x1cc(r3) -/* 8021591C 48 03 FF 0D */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 80215920 C0 1B 07 BC */ lfs f0, 0x7bc(r27) -/* 80215924 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215928 40 82 00 0C */ bne lbl_80215934 -/* 8021592C 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215930 41 82 00 14 */ beq lbl_80215944 -lbl_80215934: -/* 80215934 80 7B 01 CC */ lwz r3, 0x1cc(r27) -/* 80215938 48 03 FE F1 */ bl getAlphaRate__13CPaneMgrAlphaFv -/* 8021593C D0 3B 07 BC */ stfs f1, 0x7bc(r27) -/* 80215940 3B E0 00 01 */ li r31, 1 -lbl_80215944: -/* 80215944 C0 1B 07 C0 */ lfs f0, 0x7c0(r27) -/* 80215948 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 8021594C 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 80215950 C0 23 00 6C */ lfs f1, 0x6c(r3) -/* 80215954 FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215958 40 82 00 0C */ bne lbl_80215964 -/* 8021595C 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215960 41 82 00 0C */ beq lbl_8021596C -lbl_80215964: -/* 80215964 D0 3B 07 C0 */ stfs f1, 0x7c0(r27) -/* 80215968 3B C0 00 01 */ li r30, 1 -lbl_8021596C: -/* 8021596C C0 1B 07 C4 */ lfs f0, 0x7c4(r27) -/* 80215970 3C 60 80 43 */ lis r3, g_drawHIO@ha /* 0x8042EBC8@ha */ -/* 80215974 38 63 EB C8 */ addi r3, r3, g_drawHIO@l /* 0x8042EBC8@l */ -/* 80215978 C0 23 00 70 */ lfs f1, 0x70(r3) -/* 8021597C FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 80215980 40 82 00 0C */ bne lbl_8021598C -/* 80215984 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 80215988 41 82 00 0C */ beq lbl_80215994 -lbl_8021598C: -/* 8021598C D0 3B 07 C4 */ stfs f1, 0x7c4(r27) -/* 80215990 3B A0 00 01 */ li r29, 1 -lbl_80215994: -/* 80215994 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 80215998 40 82 00 14 */ bne lbl_802159AC -/* 8021599C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 802159A0 40 82 00 0C */ bne lbl_802159AC -/* 802159A4 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 802159A8 41 82 00 18 */ beq lbl_802159C0 -lbl_802159AC: -/* 802159AC 80 7B 01 D8 */ lwz r3, 0x1d8(r27) -/* 802159B0 C0 3B 07 C0 */ lfs f1, 0x7c0(r27) -/* 802159B4 C0 1B 07 BC */ lfs f0, 0x7bc(r27) -/* 802159B8 EC 21 00 32 */ fmuls f1, f1, f0 -/* 802159BC 48 03 FE 15 */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_802159C0: -/* 802159C0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 802159C4 40 82 00 14 */ bne lbl_802159D8 -/* 802159C8 57 A0 06 3F */ clrlwi. r0, r29, 0x18 -/* 802159CC 40 82 00 0C */ bne lbl_802159D8 -/* 802159D0 57 80 06 3F */ clrlwi. r0, r28, 0x18 -/* 802159D4 41 82 00 2C */ beq lbl_80215A00 -lbl_802159D8: -/* 802159D8 80 7B 01 D4 */ lwz r3, 0x1d4(r27) -/* 802159DC C0 3B 07 C4 */ lfs f1, 0x7c4(r27) -/* 802159E0 C0 1B 07 BC */ lfs f0, 0x7bc(r27) -/* 802159E4 EC 21 00 32 */ fmuls f1, f1, f0 -/* 802159E8 48 03 FD E9 */ bl setAlphaRate__13CPaneMgrAlphaFf -/* 802159EC 80 7B 01 DC */ lwz r3, 0x1dc(r27) -/* 802159F0 C0 3B 07 C4 */ lfs f1, 0x7c4(r27) -/* 802159F4 C0 1B 07 BC */ lfs f0, 0x7bc(r27) -/* 802159F8 EC 21 00 32 */ fmuls f1, f1, f0 -/* 802159FC 48 03 FD D5 */ bl setAlphaRate__13CPaneMgrAlphaFf -lbl_80215A00: -/* 80215A00 39 61 00 20 */ addi r11, r1, 0x20 -/* 80215A04 48 14 C8 1D */ bl _restgpr_27 -/* 80215A08 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80215A0C 7C 08 03 A6 */ mtlr r0 -/* 80215A10 38 21 00 20 */ addi r1, r1, 0x20 -/* 80215A14 4E 80 00 20 */ blr From 181417f20a12e0e86d920a262f65908bdc5b0af0 Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Fri, 27 Jan 2023 17:50:20 -0800 Subject: [PATCH 3/4] fix conflict --- Progress.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Progress.md b/Progress.md index 4787bd1ea3..b14d7049fc 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 23.307153% | 838252 | 3596544 +.text | 23.454294% | 843544 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 31.392464% | 1262188 | 4020672 +Total | 31.524084% | 1267480 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 31.392464% | 1262188 | 4020672 +main.dol | 31.524084% | 1267480 | 4020672 RELs | 33.041295% | 3799856 | 11500324 -Total | 32.614170% | 5062044 | 15520996 +Total | 32.648266% | 5067336 | 15520996 ## RELs From 3d8bfabe5a08660a7b72192c938d81aedc3b42c7 Mon Sep 17 00:00:00 2001 From: Jcw87 Date: Sat, 28 Jan 2023 20:53:37 -0800 Subject: [PATCH 4/4] lcf.py: fix wrong variable being checked for "@" --- tools/lcf.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/lcf.py b/tools/lcf.py index 6faeb8b055..c75d96877b 100644 --- a/tools/lcf.py +++ b/tools/lcf.py @@ -105,7 +105,7 @@ def lcf_generate(output_path,shiftable,map_file): if shiftable==True: for line in map_file: literals_found = [] - if type(symbol['name'])==str and line.find(' '+symbol['name']+' ')!=-1 and name[0] != "@" or type(symbol['label']) == str and line.find(' '+symbol['label']+' ')!=-1: + if type(symbol['name'])==str and line.find(' '+symbol['name']+' ')!=-1 and symbol['name'][0] != "@" or type(symbol['label']) == str and line.find(' '+symbol['label']+' ')!=-1: linesplit = line.split() if len(linesplit) > 3 and linesplit[2]!="NOT": if line.find("lit_")!=-1: