diff --git a/Progress.md b/Progress.md index df3bcbb0119..23a0702be2b 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 | 47.116120% | 1694552 | 3596544 +.text | 47.117010% | 1694584 | 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 | 52.689899% | 2118488 | 4020672 +Total | 52.690694% | 2118520 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 52.689899% | 2118488 | 4020672 +main.dol | 52.690694% | 2118520 | 4020672 RELs | 36.707175% | 4221444 | 11500324 -Total | 40.847456% | 6339932 | 15520996 +Total | 40.847662% | 6339964 | 15520996 ## RELs diff --git a/asm/d/menu/d_menu_skill/draw__13dMenu_Skill_cFv.s b/asm/d/menu/d_menu_skill/draw__13dMenu_Skill_cFv.s deleted file mode 100644 index ec174ae8ebf..00000000000 --- a/asm/d/menu/d_menu_skill/draw__13dMenu_Skill_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_801F9A08: -/* 801F9A08 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801F9A0C 7C 08 02 A6 */ mflr r0 -/* 801F9A10 90 01 00 14 */ stw r0, 0x14(r1) -/* 801F9A14 4B FF DD 9D */ bl _draw__13dMenu_Skill_cFv -/* 801F9A18 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801F9A1C 7C 08 03 A6 */ mtlr r0 -/* 801F9A20 38 21 00 10 */ addi r1, r1, 0x10 -/* 801F9A24 4E 80 00 20 */ blr diff --git a/include/JSystem/J2DGraph/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture.h index c35a7bb4aba..3130805ea94 100644 --- a/include/JSystem/J2DGraph/J2DPicture.h +++ b/include/JSystem/J2DGraph/J2DPicture.h @@ -97,7 +97,11 @@ public: /* 802FF634 */ virtual u8 getTextureCount() const; /* 80053C6C */ virtual bool setBlack(JUtility::TColor); /* 80053C44 */ virtual bool setWhite(JUtility::TColor); - /* 8018BEE0 */ virtual bool setBlackWhite(JUtility::TColor, JUtility::TColor); + /* 8018BEE0 */ virtual bool setBlackWhite(JUtility::TColor i_black, JUtility::TColor i_white) { + mBlack = i_black; + mWhite = i_white; + return 1; + } /* 801DFA4C */ virtual JUtility::TColor getBlack() const; /* 801DFA40 */ virtual JUtility::TColor getWhite() const; /* 8025603C */ virtual bool getMaterial() const; diff --git a/include/d/menu/d_menu_skill.h b/include/d/menu/d_menu_skill.h index 12af91fdd5e..7d596a4bc46 100644 --- a/include/d/menu/d_menu_skill.h +++ b/include/d/menu/d_menu_skill.h @@ -49,7 +49,7 @@ public: /* 801F9470 */ u8 getSkillNum(); /* 801F9500 */ void setHIO(bool); - /* 801F9A08 */ virtual void draw(); + /* 801F9A08 */ virtual void draw() { _draw(); } /* 801F7348 */ virtual ~dMenu_Skill_c(); u8 getStatus() { return mStatus; } @@ -96,6 +96,6 @@ private: /* 0x209 */ u8 field_0x209; /* 0x20A */ u8 field_0x20a; /* 0x20B */ u8 mTotalSkillNum; -}; // Size: 0x20C +}; // Size: 0x20C #endif /* D_MENU_D_MENU_SKILL_H */ diff --git a/src/d/file/d_file_select.cpp b/src/d/file/d_file_select.cpp index eb777f32786..32efe947dcd 100644 --- a/src/d/file/d_file_select.cpp +++ b/src/d/file/d_file_select.cpp @@ -117,7 +117,7 @@ extern "C" void backDatSelWait__14dFile_select_cFv(); extern "C" void backDatSelWait2__14dFile_select_cFv(); extern "C" void nextModeWait__14dFile_select_cFv(); extern "C" void screenSet__14dFile_select_cFv(); -extern "C" void setBlackWhite__10J2DPictureFQ28JUtility6TColorQ28JUtility6TColor(); +extern "C" bool setBlackWhite__10J2DPictureFQ28JUtility6TColorQ28JUtility6TColor(); extern "C" void setAnimation__7J2DPaneFP19J2DAnmTextureSRTKey(); extern "C" void screenSetCopySel__14dFile_select_cFv(); extern "C" void screenSetYesNo__14dFile_select_cFv(); @@ -3878,7 +3878,8 @@ asm void dFile_select_c::screenSet() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm bool J2DPicture::setBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) { +// J2DPicture::setBlackWhite(JUtility::TColor param_0, JUtility::TColor param_1) +extern "C" asm bool setBlackWhite__10J2DPictureFQ28JUtility6TColorQ28JUtility6TColor() { nofralloc #include "asm/d/file/d_file_select/setBlackWhite__10J2DPictureFQ28JUtility6TColorQ28JUtility6TColor.s" } diff --git a/src/d/menu/d_menu_fishing.cpp b/src/d/menu/d_menu_fishing.cpp index 14eb9b64146..f9cc1931e50 100644 --- a/src/d/menu/d_menu_fishing.cpp +++ b/src/d/menu/d_menu_fishing.cpp @@ -11,7 +11,6 @@ #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_string.h" -#include "dol2asm.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" diff --git a/src/d/menu/d_menu_insect.cpp b/src/d/menu/d_menu_insect.cpp index a79f8e769a6..6dedecbcc64 100644 --- a/src/d/menu/d_menu_insect.cpp +++ b/src/d/menu/d_menu_insect.cpp @@ -14,8 +14,6 @@ #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_scrn_3select.h" #include "d/msg/d_msg_string.h" -#include "dol2asm.h" -#include "dolphin/types.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" #include "stdio.h" diff --git a/src/d/menu/d_menu_skill.cpp b/src/d/menu/d_menu_skill.cpp index 9f6019de395..70d411982a2 100644 --- a/src/d/menu/d_menu_skill.cpp +++ b/src/d/menu/d_menu_skill.cpp @@ -1,10 +1,8 @@ /** * d_menu_skill.cpp - * Hidden Skills - Menu + * Menu - Hidden Skills */ -#define NO_INLINE_DLSTBASE_DRAW - #include "d/menu/d_menu_skill.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JKernel/JKRMemArchive.h" @@ -14,14 +12,9 @@ #include "d/meter/d_meter2_info.h" #include "d/meter/d_meter_HIO.h" #include "d/msg/d_msg_string.h" -#include "dol2asm.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -extern "C" void __dt__13dMenu_Skill_cFv(); -extern "C" void _draw__13dMenu_Skill_cFv(); -extern "C" void draw__13dMenu_Skill_cFv(); - /* 803BE7D8-803BE7E4 01B8F8 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -43,24 +36,6 @@ static moveFunc map_move_process[] = { &dMenu_Skill_c::read_close_move, }; -/* 803BE8A4-803BE8C0 01B9C4 001C+00 1/1 0/0 0/0 .data evt_id$4557 */ -static u32 evt_id[7] = { - 339, 338, 340, 341, 342, 343, 344, -}; - -/* 803BE8C0-803BE8E0 01B9E0 0010+10 2/2 0/0 0/0 .data __vt__13dMenu_Skill_c */ -SECTION_DATA extern void* __vt__13dMenu_Skill_c[4 + 4 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)draw__13dMenu_Skill_cFv, - (void*)__dt__13dMenu_Skill_cFv, - /* padding */ - NULL, - NULL, - NULL, - NULL, -}; - /* 801F7224-801F7348 1F1B64 0124+00 0/0 2/2 0/0 .text * __ct__13dMenu_Skill_cFP10JKRExpHeapP9STControlP10CSTControl */ dMenu_Skill_c::dMenu_Skill_c(JKRExpHeap* i_heap, STControl* i_stcontrol, CSTControl* i_cstcontrol) { @@ -307,20 +282,18 @@ void dMenu_Skill_c::wait_move() { mStatus = 3; } else if (mDoCPd_c::getTrigA(PAD_1)) { mProcess = PROC_WAIT_MOVE; - Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_OPEN, NULL, 0, 0, 1.0f, 1.0f, -1.0f, - -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_OPEN, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); dMeter2Info_set2DVibration(); } else if (mpStick->checkUpTrigger()) { if (mIndex) { mIndex--; - Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, - -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, + 0); } } else if (mpStick->checkDownTrigger() && mIndex < mSkillNum - 1) { mIndex++; - Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, - -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); } if (oldIndex != mIndex) { changeActiveColor(); @@ -328,24 +301,21 @@ void dMenu_Skill_c::wait_move() { } } -/* 80397A18-80397A34 024078 001C+00 2/2 0/0 0/0 .rodata i_id$4087 */ -static const u32 i_id[7] = { - 1716, 1715, 1717, 1718, 1719, 1720, 1721, -}; - -/* 80397A34-80397A50 024094 001C+00 1/1 0/0 0/0 .rodata i_id1$4088 */ -static const u32 i_id1_4088[7] = { - 1709, 1708, 1710, 1711, 1712, 1713, 1714, -}; - /* 801F7F24-801F7FF8 1F2864 00D4+00 1/0 0/0 0/0 .text read_open_init__13dMenu_Skill_cFv */ void dMenu_Skill_c::read_open_init() { + static const u32 i_id[7] = { + 1716, 1715, 1717, 1718, 1719, 1720, 1721, + }; + static const u32 i_id1[7] = { + 1709, 1708, 1710, 1711, 1712, 1713, 1714, + }; + mProcFrame = 0; int index = mIndex; mStringID = i_id[index]; mpTextParent->setAlphaRate(0.0f); - setNameString(i_id1_4088[index]); + setNameString(i_id1[index]); mpString->getString(mStringID, (J2DTextBox*)mpTextPane->getPanePtr(), NULL, NULL, NULL, 0); setAButtonString(0); setBButtonString(0); @@ -355,7 +325,8 @@ void dMenu_Skill_c::read_open_init() { /* 801F7FF8-801F8114 1F2938 011C+00 1/0 0/0 0/0 .text read_open_move__13dMenu_Skill_cFv */ void dMenu_Skill_c::read_open_move() { - s16 openSkillDescFrame = g_drawHIO.mSkillListScreen.mOpenFrame[dMeter_drawSkillHIO_c::SKILL_DESC]; + s16 openSkillDescFrame = + g_drawHIO.mSkillListScreen.mOpenFrame[dMeter_drawSkillHIO_c::SKILL_DESC]; mProcFrame++; if (mProcFrame >= openSkillDescFrame) { mProcess = PROC_OPEN_MOVE; @@ -379,14 +350,12 @@ void dMenu_Skill_c::read_move_init() { */ void dMenu_Skill_c::read_move_move() { if (mDoCPd_c::getTrigA(PAD_1) != 0) { - Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, - 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); dMeter2Info_set2DVibration(); mProcess = PROC_MOVE_MOVE; } else if (mDoCPd_c::getTrigB(PAD_1) != 0) { - Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, - 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); dMeter2Info_set2DVibration(); mProcess = PROC_MOVE_MOVE; } @@ -404,7 +373,8 @@ void dMenu_Skill_c::read_close_init() { /* 801F826C-801F8388 1F2BAC 011C+00 1/0 0/0 0/0 .text read_close_move__13dMenu_Skill_cFv */ void dMenu_Skill_c::read_close_move() { - s16 closeSkillDescFrame = g_drawHIO.mSkillListScreen.mCloseFrame[dMeter_drawSkillHIO_c::SKILL_DESC]; + s16 closeSkillDescFrame = + g_drawHIO.mSkillListScreen.mCloseFrame[dMeter_drawSkillHIO_c::SKILL_DESC]; mProcFrame--; if (mProcFrame <= 0) { mProcess = PROC_CLOSE_MOVE; @@ -417,104 +387,56 @@ void dMenu_Skill_c::read_close_move() { } } -/* 80397A50-80397A88 0240B0 0038+00 0/1 0/0 0/0 .rodata tag_sub0$4148 */ -#pragma push -#pragma force_active on -static const u64 tag_sub0[7] = { - 'menu_t0s', 'menu_t1s', 'menu_t2s', 'menu_t3s', 'menu_t4s', 'menu_t5s', 'menu_t51', -}; -#pragma pop - -/* 80397A88-80397AC0 0240E8 0038+00 0/1 0/0 0/0 .rodata tag_sub1$4149 */ -#pragma push -#pragma force_active on -static const u64 tag_sub1[7] = { - 'menu_t0', 'menu_t1', 'menu_t2', 'menu_t3', 'menu_t4', 'menu_t5', 'menu_t6', -}; -#pragma pop - -/* 80397AC0-80397AF8 024120 0038+00 0/1 0/0 0/0 .rodata tag_name0$4150 */ -#pragma push -#pragma force_active on -static const u64 tag_name0[7] = { - 'menu_t6s', 'menu_f7s', 'menu_f8s', 'menu_t9s', 'menu_10s', 'menu_11s', 'menu_112', -}; -#pragma pop - -/* 80397AF8-80397B30 024158 0038+00 0/1 0/0 0/0 .rodata tag_name1$4151 */ -#pragma push -#pragma force_active on -static const u64 tag_name1[7] = { - 'menu_f6', 'menu_f7', 'menu_t8', 'menu_t9', 'menu_t10', 'menu_t11', 'menu_t01', -}; -#pragma pop - -/* 80397B30-80397B68 024190 0038+00 0/1 0/0 0/0 .rodata ftag_sub0$4152 */ -#pragma push -#pragma force_active on -static const u64 ftag_sub0[7] = { - 'fenu_t0s', 'fenu_t1s', 'fenu_t2s', 'fenu_t3s', 'fenu_t4s', 'fenu_t5s', 'fenu_t6s', -}; -#pragma pop - -/* 80397B68-80397BA0 0241C8 0038+00 0/1 0/0 0/0 .rodata ftag_sub1$4153 */ -#pragma push -#pragma force_active on -static const u64 ftag_sub1[7] = { - 'fenu_t0', 'fenu_t1', 'fenu_t2', 'fenu_t3', 'fenu_t4', 'fenu_t5', 'fenu_t6', -}; -#pragma pop - -/* 80397BA0-80397BD8 024200 0038+00 0/1 0/0 0/0 .rodata ftag_name0$4154 */ -#pragma push -#pragma force_active on -static const u64 ftag_name0[7] = { - 'fenu_t7s', 'fenu_t8s', 'fenu_t9s', 'fenu_10s', 'fenu_11s', 'fenu_12s', 'fenu_13s', -}; -#pragma pop - -/* 80397BD8-80397C10 024238 0038+00 0/1 0/0 0/0 .rodata ftag_name1$4155 */ -#pragma push -#pragma force_active on -static const u64 ftag_name1[7] = { - 'fenu_t7', 'fenu_t8', 'fenu_t9', 'fenu_10', 'fenu_11', 'fenu_12', 'fenu_13', -}; -#pragma pop - -/* 80397C10-80397C48 024270 0038+00 0/1 0/0 0/0 .rodata tag_letter$4166 */ -#pragma push -#pragma force_active on -static const u64 tag_letter[7] = { - 'let_00_n', 'let_01_n', 'let_02_n', 'let_03_n', 'let_04_n', 'let_05_n', 'let_06_n', -}; -#pragma pop - -/* 80397C48-80397C80 0242A8 0038+00 0/1 0/0 0/0 .rodata tag_frame$4173 */ -#pragma push -#pragma force_active on -static const u64 tag_frame[7] = { - 'flame_00', 'flame_01', 'flame_02', 'flame_03', 'flame_04', 'flame_05', 'flame_06', -}; -#pragma pop - -/* 80397C80-80397CB8 0242E0 0038+00 0/1 0/0 0/0 .rodata tag_maki$4174 */ -#pragma push -#pragma force_active on -static const u64 tag_maki[7] = { - 'maki_0n', 'maki_1n', 'maki_2n', 'maki_3n', 'maki_4n', 'maki_5n', 'maki_6n', -}; -#pragma pop - -/* 80397CB8-80397CF0 024318 0038+00 0/1 0/0 0/0 .rodata tag_makic$4175 */ -#pragma push -#pragma force_active on -static const u64 tag_makic[7] = { - 'maki_0', 'maki_1', 'maki_2', 'maki_3', 'maki_4', 'maki_5', 'maki_6', -}; -#pragma pop - /* 801F8388-801F8A18 1F2CC8 0690+00 1/1 0/0 0/0 .text screenSetMenu__13dMenu_Skill_cFv */ void dMenu_Skill_c::screenSetMenu() { + static const u64 tag_sub0[7] = { + 'menu_t0s', 'menu_t1s', 'menu_t2s', 'menu_t3s', 'menu_t4s', 'menu_t5s', 'menu_t51', + }; + + static const u64 tag_sub1[7] = { + 'menu_t0', 'menu_t1', 'menu_t2', 'menu_t3', 'menu_t4', 'menu_t5', 'menu_t6', + }; + + static const u64 tag_name0[7] = { + 'menu_t6s', 'menu_f7s', 'menu_f8s', 'menu_t9s', 'menu_10s', 'menu_11s', 'menu_112', + }; + + static const u64 tag_name1[7] = { + 'menu_f6', 'menu_f7', 'menu_t8', 'menu_t9', 'menu_t10', 'menu_t11', 'menu_t01', + }; + + static const u64 ftag_sub0[7] = { + 'fenu_t0s', 'fenu_t1s', 'fenu_t2s', 'fenu_t3s', 'fenu_t4s', 'fenu_t5s', 'fenu_t6s', + }; + + static const u64 ftag_sub1[7] = { + 'fenu_t0', 'fenu_t1', 'fenu_t2', 'fenu_t3', 'fenu_t4', 'fenu_t5', 'fenu_t6', + }; + + static const u64 ftag_name0[7] = { + 'fenu_t7s', 'fenu_t8s', 'fenu_t9s', 'fenu_10s', 'fenu_11s', 'fenu_12s', 'fenu_13s', + }; + + static const u64 ftag_name1[7] = { + 'fenu_t7', 'fenu_t8', 'fenu_t9', 'fenu_10', 'fenu_11', 'fenu_12', 'fenu_13', + }; + + static const u64 tag_letter[7] = { + 'let_00_n', 'let_01_n', 'let_02_n', 'let_03_n', 'let_04_n', 'let_05_n', 'let_06_n', + }; + + static const u64 tag_frame[7] = { + 'flame_00', 'flame_01', 'flame_02', 'flame_03', 'flame_04', 'flame_05', 'flame_06', + }; + + static const u64 tag_maki[7] = { + 'maki_0n', 'maki_1n', 'maki_2n', 'maki_3n', 'maki_4n', 'maki_5n', 'maki_6n', + }; + + static const u64 tag_makic[7] = { + 'maki_0', 'maki_1', 'maki_2', 'maki_3', 'maki_4', 'maki_5', 'maki_6', + }; + mpMenuScreen = new J2DScreen(); mpMenuScreen->setPriority("zelda_ougi_window.blo", 0x20000, mpArchive); dPaneClass_showNullPane(mpMenuScreen); @@ -572,23 +494,22 @@ void dMenu_Skill_c::screenSetMenu() { mpString->getString(0x6a4, textBox, NULL, NULL, NULL, 0); } -static const u64 name_tag[4] = { - 'item_n04', - 'item_n05', - 'item_n06', - 'item_n07', -}; - -static const u64 fame_tag[4] = { - 'f_item_1', - 'f_item_2', - 'f_item_3', - 'f_item_4', -}; - /* 801F8A18-801F8D20 1F3358 0308+00 1/1 0/0 0/0 .text screenSetLetter__13dMenu_Skill_cFv */ void dMenu_Skill_c::screenSetLetter() { + static const u64 name_tag[4] = { + 'item_n04', + 'item_n05', + 'item_n06', + 'item_n07', + }; + static const u64 fame_tag[4] = { + 'f_item_1', + 'f_item_2', + 'f_item_3', + 'f_item_4', + }; + mpLetterScreen = new J2DScreen(); mpLetterScreen->setPriority("zelda_ougi_info.blo", 0x20000, mpArchive); dPaneClass_showNullPane(mpLetterScreen); @@ -613,19 +534,15 @@ void dMenu_Skill_c::screenSetLetter() { mpBlackTex->setAlpha(0); } -/* 80397D30-80397D58 024390 0028+00 1/1 0/0 0/0 .rodata text_a_tag$4365 */ -static const u64 text_a_tag[5] = { - 'atext1_1', 'atext1_2', 'atext1_3', 'atext1_4', 'atext1_5', -}; - -/* 80397D58-80397D80 0243B8 0028+00 1/1 0/0 0/0 .rodata text_b_tag$4366 */ -static const u64 text_b_tag[5] = { - 'btext1_1', 'btext1_2', 'btext1_3', 'btext1_4', 'btext1_5', -}; - /* 801F8D20-801F8E9C 1F3660 017C+00 1/1 0/0 0/0 .text screenSetDoIcon__13dMenu_Skill_cFv */ void dMenu_Skill_c::screenSetDoIcon() { + static const u64 text_a_tag[5] = { + 'atext1_1', 'atext1_2', 'atext1_3', 'atext1_4', 'atext1_5', + }; + static const u64 text_b_tag[5] = { + 'btext1_1', 'btext1_2', 'btext1_3', 'btext1_4', 'btext1_5', + }; mpIconScreen = new J2DScreen(); mpIconScreen->setPriority("zelda_collect_soubi_do_icon_parts.blo", 0x20000, mpArchive); for (int i = 0; i < 2; i++) { @@ -669,23 +586,20 @@ void dMenu_Skill_c::changeActiveColor() { } } -/* 80397D80-80397D9C 0243E0 001C+00 1/1 0/0 0/0 .rodata i_id0$4478 */ -static const u32 i_id0[7] = { - 1701, 1702, 1703, 1704, 1705, 1706, 1707, -}; - -/* 80397D9C-80397DB8 0243FC 001C+00 1/1 0/0 0/0 .rodata i_id1$4479 */ -static const u32 i_id1_4479[7] = { - 1709, 1708, 1710, 1711, 1712, 1713, 1714, -}; - /* 801F9144-801F9260 1F3A84 011C+00 1/1 0/0 0/0 .text setPageText__13dMenu_Skill_cFv */ void dMenu_Skill_c::setPageText() { + static const u32 i_id0[7] = { + 1701, 1702, 1703, 1704, 1705, 1706, 1707, + }; + static const u32 i_id1[7] = { + 1709, 1708, 1710, 1711, 1712, 1713, 1714, + }; + for (int i = 0; i < mSkillNum; i++) { mpString->getString(i_id0[i], mpFTagPicture[i][0], NULL, NULL, NULL, 0); mpString->getString(i_id0[i], mpFTagPicture[i][1], NULL, NULL, NULL, 0); - mpString->getString(i_id1_4479[i], mpFTagPicture[i][2], NULL, NULL, NULL, 0); - mpString->getString(i_id1_4479[i], mpFTagPicture[i][3], NULL, NULL, NULL, 0); + mpString->getString(i_id1[i], mpFTagPicture[i][2], NULL, NULL, NULL, 0); + mpString->getString(i_id1[i], mpFTagPicture[i][3], NULL, NULL, NULL, 0); } } @@ -731,6 +645,10 @@ void dMenu_Skill_c::setNameString(u16 i_stringID) { /* 801F9470-801F9500 1F3DB0 0090+00 1/1 0/0 0/0 .text getSkillNum__13dMenu_Skill_cFv */ u8 dMenu_Skill_c::getSkillNum() { + static u32 evt_id[7] = { + 339, 338, 340, 341, 342, 343, 344, + }; + u8 skillNum = 0; for (int i = 0; i < 7; i++) { if (i_dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[evt_id[i]])) { @@ -804,21 +722,3 @@ void dMenu_Skill_c::setHIO(bool i_useHIO) { } } } - -/* 801F9A08-801F9A28 1F4348 0020+00 1/0 0/0 0/0 .text draw__13dMenu_Skill_cFv */ -#ifdef NONMATCHING -// Size of vtable doesn't match. Same padding occours in d_menu_calibration -void dMenu_Skill_c::draw() { - _draw(); -} -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm void dMenu_Skill_c::draw() { -extern "C" asm void draw__13dMenu_Skill_cFv() { - nofralloc -#include "asm/d/menu/d_menu_skill/draw__13dMenu_Skill_cFv.s" -} -#pragma pop -#endif