Reintroduce missing changes from pull request #2200 (#2213)

* Reintroduce missing changes from pull request  #2200

* m_Do_audio OK
This commit is contained in:
hatal175
2024-10-16 12:41:21 -07:00
committed by GitHub
parent 030d6533f0
commit ec07abb09b
18 changed files with 894 additions and 1918 deletions
@@ -33,17 +33,17 @@ initTalk__13daTagTWGate_cFiPP10fopAc_ac_c = .text:0x00002AAC; // type:function s
talkProc__13daTagTWGate_cFPiiPP10fopAc_ac_c = .text:0x00002AE8; // type:function size:0xF8 scope:global
createHeapCallBack__13daTagTWGate_cFP10fopAc_ac_c = .text:0x00002BE0; // type:function size:0x20 scope:global
CreateHeap__13daTagTWGate_cFv = .text:0x00002C00; // type:function size:0x108 scope:global
daTagTWGate_Create__FP10fopAc_ac_c = .text:0x00002D08; // type:function size:0x100 scope:global
daTagTWGate_Delete__FP13daTagTWGate_c = .text:0x00002E08; // type:function size:0xB4 scope:global
daTagTWGate_Execute__FP13daTagTWGate_c = .text:0x00002EBC; // type:function size:0xA8 scope:global
daTagTWGate_Draw__FP13daTagTWGate_c = .text:0x00002F64; // type:function size:0x34 scope:global
daTagTWGate_IsDelete__FP13daTagTWGate_c = .text:0x00002F98; // type:function size:0x8 scope:global
daTagTWGate_Create__FP10fopAc_ac_c = .text:0x00002D08; // type:function size:0x100 scope:local
daTagTWGate_Delete__FP13daTagTWGate_c = .text:0x00002E08; // type:function size:0xB4 scope:local
daTagTWGate_Execute__FP13daTagTWGate_c = .text:0x00002EBC; // type:function size:0xA8 scope:local
daTagTWGate_Draw__FP13daTagTWGate_c = .text:0x00002F64; // type:function size:0x34 scope:local
daTagTWGate_IsDelete__FP13daTagTWGate_c = .text:0x00002F98; // type:function size:0x8 scope:local
__sinit_d_a_tag_TWgate_cpp = .text:0x00002FA0; // type:function size:0x280 scope:local
_ctors = .ctors:0x00000000; // type:label scope:global
_dtors = .dtors:0x00000000; // type:label scope:global
...rodata.0 = .rodata:0x00000000; // type:label scope:local
mAttr__13daTagTWGate_c = .rodata:0x00000000; // type:object size:0x1 scope:global
l_zevParamTbl = .rodata:0x00000004; // type:object size:0x70 scope:global
l_zevParamTbl = .rodata:0x00000004; // type:object size:0x70 scope:local
@3857 = .rodata:0x00000074; // type:object size:0x4 scope:local data:float
@3858 = .rodata:0x00000078; // type:object size:0x8 scope:local data:double
@4079 = .rodata:0x00000080; // type:object size:0x4 scope:local data:float
@@ -55,9 +55,9 @@ l_zevParamTbl = .rodata:0x00000004; // type:object size:0x70 scope:global
@4791 = .rodata:0x00000098; // type:object size:0x4 scope:local
@stringBase0 = .rodata:0x0000009C; // type:object size:0x129 scope:local data:string_table
...data.0 = .data:0x00000000; // type:label scope:local
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:global
cNullVec__6Z2Calc = .data:0x00000000; // type:object size:0xC scope:local
@1787 = .data:0x0000000C; // type:object size:0x4 scope:local
l_myName = .data:0x00000020; // type:object size:0x4 scope:global data:4byte
l_myName = .data:0x00000020; // type:object size:0x4 scope:local data:4byte
@3744 = .data:0x00000024; // type:object size:0xC scope:local
@3745 = .data:0x00000030; // type:object size:0xC scope:local
@3746 = .data:0x0000003C; // type:object size:0xC scope:local
@@ -85,5 +85,5 @@ l_myName = .data:0x00000020; // type:object size:0x4 scope:global data:4byte
@3768 = .data:0x00000144; // type:object size:0xC scope:local
@3769 = .data:0x00000150; // type:object size:0xC scope:local
ActionTable__13daTagTWGate_c = .data:0x0000015C; // type:object size:0x138 scope:global data:4byte
l_daTagTWGate_Method = .data:0x00000294; // type:object size:0x20 scope:global
l_daTagTWGate_Method = .data:0x00000294; // type:object size:0x20 scope:local
g_profile_Tag_TWGate = .data:0x000002B4; // type:object size:0x30 scope:global
+8 -8
View File
@@ -12,14 +12,14 @@ getPower80__9daTagQs_cFv = .text:0x00000444; // type:function size:0x24 scope:gl
getCenterPower__9daTagQs_cFv = .text:0x00000468; // type:function size:0x24 scope:global
calcPower__9daTagQs_cFff = .text:0x0000048C; // type:function size:0x16C scope:global
hikiyose__FP4cXyzP4cXyzP4cXyzf = .text:0x000005F8; // type:function size:0x254 scope:global
search__FPvPv = .text:0x0000084C; // type:function size:0x3AC scope:global
search__FPvPv = .text:0x0000084C; // type:function size:0x3AC scope:local
execute__9daTagQs_cFv = .text:0x00000BF8; // type:function size:0x200 scope:global
draw__9daTagQs_cFv = .text:0x00000DF8; // type:function size:0x8 scope:global
daTagQs_Draw__FP9daTagQs_c = .text:0x00000E00; // type:function size:0x20 scope:global
daTagQs_Execute__FP9daTagQs_c = .text:0x00000E20; // type:function size:0x20 scope:global
daTagQs_IsDelete__FP9daTagQs_c = .text:0x00000E40; // type:function size:0x8 scope:global
daTagQs_Delete__FP9daTagQs_c = .text:0x00000E48; // type:function size:0x28 scope:global
daTagQs_Create__FP10fopAc_ac_c = .text:0x00000E70; // type:function size:0x20 scope:global
daTagQs_Draw__FP9daTagQs_c = .text:0x00000E00; // type:function size:0x20 scope:local
daTagQs_Execute__FP9daTagQs_c = .text:0x00000E20; // type:function size:0x20 scope:local
daTagQs_IsDelete__FP9daTagQs_c = .text:0x00000E40; // type:function size:0x8 scope:local
daTagQs_Delete__FP9daTagQs_c = .text:0x00000E48; // type:function size:0x28 scope:local
daTagQs_Create__FP10fopAc_ac_c = .text:0x00000E70; // type:function size:0x20 scope:local
__dt__10cCcD_GSttsFv = .text:0x00000E90; // type:function size:0x48 scope:global
_ctors = .ctors:0x00000000; // type:label scope:global
_dtors = .dtors:0x00000000; // type:label scope:global
@@ -44,8 +44,8 @@ _dtors = .dtors:0x00000000; // type:label scope:global
@4042 = .rodata:0x00000058; // type:object size:0x4 scope:local
@4043 = .rodata:0x0000005C; // type:object size:0x4 scope:local data:string
@4090 = .rodata:0x00000060; // type:object size:0x4 scope:local
l_cc_cyl_src = .data:0x00000000; // type:object size:0x44 scope:global
l_daTagQs_Method = .data:0x00000044; // type:object size:0x20 scope:global
l_cc_cyl_src = .data:0x00000000; // type:object size:0x44 scope:local
l_daTagQs_Method = .data:0x00000044; // type:object size:0x20 scope:local
g_profile_TAG_QS = .data:0x00000064; // type:object size:0x30 scope:global
__vt__8cM3dGAab = .data:0x00000094; // type:object size:0xC scope:global
__vt__8cM3dGCyl = .data:0x000000A0; // type:object size:0xC scope:global
+4 -4
View File
@@ -331,7 +331,7 @@ config.libs = [
"objects": [
Object(Matching, "m_Do/m_Do_main.cpp"),
Object(NonMatching, "m_Do/m_Do_printf.cpp"),
Object(NonMatching, "m_Do/m_Do_audio.cpp"),
Object(Matching, "m_Do/m_Do_audio.cpp"),
Object(Matching, "m_Do/m_Do_controller_pad.cpp"),
Object(NonMatching, "m_Do/m_Do_graphic.cpp"),
Object(NonMatching, "m_Do/m_Do_machine.cpp"),
@@ -540,7 +540,7 @@ config.libs = [
Object(Matching, "d/d_menu_insect.cpp"),
Object(Matching, "d/d_menu_item_explain.cpp"),
Object(NonMatching, "d/d_menu_letter.cpp"),
Object(NonMatching, "d/d_menu_option.cpp"),
Object(Matching, "d/d_menu_option.cpp"),
Object(Matching, "d/d_menu_ring.cpp"),
Object(NonMatching, "d/d_menu_save.cpp"),
Object(Matching, "d/d_menu_skill.cpp"),
@@ -2061,7 +2061,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_tag_Lv6Gate"),
ActorRel(Matching, "d_a_tag_Lv7Gate"),
ActorRel(Matching, "d_a_tag_Lv8Gate"),
ActorRel(NonMatching, "d_a_tag_TWgate"),
ActorRel(Matching, "d_a_tag_TWgate"),
ActorRel(Matching, "d_a_tag_arena"),
ActorRel(Matching, "d_a_tag_assistance"),
ActorRel(Matching, "d_a_tag_bottle_item"),
@@ -2082,7 +2082,7 @@ config.libs = [
ActorRel(Matching, "d_a_tag_myna_light"),
ActorRel(Matching, "d_a_tag_pachi"),
ActorRel(Matching, "d_a_tag_poFire"),
ActorRel(NonMatching, "d_a_tag_qs"),
ActorRel(Matching, "d_a_tag_qs"),
ActorRel(Matching, "d_a_tag_ret_room"),
ActorRel(Matching, "d_a_tag_river_back"),
ActorRel(Matching, "d_a_tag_rmbit_sw"),
+1 -1
View File
@@ -95,7 +95,7 @@ public:
/* 802A0768 */ bool startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3<f32> const*);
/* 802A08D0 */ int getNumActiveSe() const;
/* 802A08FC */ virtual ~JAISeMgr(); // inline?
/* 802A08FC */ virtual ~JAISeMgr() {}
/* 802A0168 */ virtual bool isUsingSeqData(JAISeqDataRegion const&);
/* 802A01D8 */ virtual int releaseSeqData(JAISeqDataRegion const&);
+1 -1
View File
@@ -29,7 +29,7 @@ public:
/* 802A1F58 */ JAISeq* beginStartSeq_();
/* 802A1FE8 */ bool endStartSeq_(JAISeq*, JAISoundHandle*);
/* 802A20F0 */ virtual ~JAISeqMgr(); // inline?
/* 802A20F0 */ virtual ~JAISeqMgr() {}
/* 802A1804 */ virtual bool isUsingSeqData(JAISeqDataRegion const&);
/* 802A1870 */ virtual int releaseSeqData(JAISeqDataRegion const&);
+1 -1
View File
@@ -17,7 +17,7 @@ public:
/* 802BB6DC */ virtual void getSeInfo(JAISoundID, JAISe*) const;
/* 802BB8B4 */ virtual void getSeqInfo(JAISoundID, JAISeq*) const;
/* 802BB8E0 */ virtual void getStreamInfo(JAISoundID, JAIStream*) const;
/* 802BBBE0 */ virtual ~Z2SoundInfo();
/* 802BBBE0 */ virtual ~Z2SoundInfo() {}
/* 802BB158 */ JAUAudibleParam getAudibleSwFull(JAISoundID);
/* 802BBA10 */ const char* getStreamFilePath(JAISoundID);
+2 -1
View File
@@ -8,7 +8,7 @@
struct Z2SpeechStarter : public Z2SoundStarter {
/* 802CCFB8 */ Z2SpeechStarter();
/* 802CBCEC */ virtual ~Z2SpeechStarter();
/* 802CBCEC */ virtual ~Z2SpeechStarter() {}
/* 802CCFF8 */ virtual bool startSound(JAISoundID, JAISoundHandle*,
JGeometry::TVec3<f32> const*, u32, f32, f32, f32, f32,
f32, u32);
@@ -20,6 +20,7 @@ struct Z2SpeechMgr : public JASGlobalInstance<Z2SpeechMgr> {
struct Z2SpeechMgr2 : public JASGlobalInstance<Z2SpeechMgr2> {
/* 802CBC60 */ Z2SpeechMgr2();
~Z2SpeechMgr2() {}
/* 802CBD88 */ void setString(u16 const*, s16, u8, u16);
/* 802CBF60 */ void setTextCount(s16);
/* 802CC190 */ void speakOneWord(bool);
+1 -1
View File
@@ -112,7 +112,7 @@ public:
callInit();
}
static u8 const mAttr[1 + 3 /* padding */];
static u8 const mAttr[1];
static actionFunc ActionTable[13][2];
private:
+26
View File
@@ -1,5 +1,31 @@
#ifndef D_A_TAG_QS_H
#define D_A_TAG_QS_H
#include "f_op/f_op_actor.h"
#include "f_op/f_op_actor_mng.h"
#include "d/d_cc_d.h"
class daTagQs_c : public fopAc_ac_c {
public:
/* 80D5DE78 */ ~daTagQs_c();
/* 80D5DFB0 */ int create();
/* 80D5E1FC */ f32 getPower();
/* 80D5E220 */ f32 getSafeArea();
/* 80D5E244 */ f32 getPower80();
/* 80D5E268 */ f32 getCenterPower();
/* 80D5E28C */ f32 calcPower(f32, f32);
/* 80D5E9F8 */ int execute();
/* 80D5EBF8 */ int draw();
u8 getType() { return fopAcM_GetParamBit(this, 0, 1); }
int getSwNo() { return fopAcM_GetParamBit(this, 1, 8); }
/* 0x568 */ f32 field_0x568;
/* 0x56C */ f32 field_0x56c;
/* 0x570 */ int field_0x570;
/* 0x574 */ int field_0x574;
/* 0x578 */ dCcD_Cyl mCyl;
/* 0x6B4 */ dCcD_Stts mStts;
};
#endif /* D_A_TAG_QS_H */
+1 -1
View File
@@ -87,7 +87,7 @@ public:
/* 801E8CB0 */ void yesnoWakuAlpahAnmInit(u8, u8, u8, u8);
/* 801E8CFC */ u8 yesnoWakuAlpahAnm(u8);
/* 801E8E6C */ virtual void draw();
/* 801E8E6C */ virtual void draw() { _draw(); }
/* 801E2014 */ virtual ~dMenu_Option_c();
u8 getQuitStatus() { return mQuitStatus; }
+1 -1
View File
@@ -430,7 +430,7 @@ void Z2SoundInfo::getSoundInfo_(JAISoundID param_1, JAISound* param_2) const {
/* 802BBBE0-802BBCBC 2B6520 00DC+00 2/1 0/0 0/0 .text __dt__11Z2SoundInfoFv */
Z2SoundInfo::~Z2SoundInfo() {}
// Z2SoundInfo::~Z2SoundInfo() {}
/* 802BBCBC-802BBCC4 2B65FC 0008+00 1/0 0/0 0/0 .text
* @4@getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID */
+1 -1
View File
@@ -316,7 +316,7 @@ SECTION_DATA extern void* __vt__15Z2SpeechStarter[5] = {
};
/* 802CBCEC-802CBD88 2C662C 009C+00 1/0 0/0 0/0 .text __dt__15Z2SpeechStarterFv */
Z2SpeechStarter::~Z2SpeechStarter() {}
//Z2SpeechStarter::~Z2SpeechStarter() {}
/* 802CBD88-802CBF60 2C66C8 01D8+00 1/0 1/1 0/0 .text setString__12Z2SpeechMgr2FPCUssUcUs
*/
File diff suppressed because it is too large Load Diff
+201 -348
View File
File diff suppressed because it is too large Load Diff
+225 -111
View File
@@ -20,6 +20,8 @@
#include "d/d_msg_object.h"
#include "d/d_msg_string.h"
#include "d/d_pane_class.h"
#include "d/d_item.h"
#include "d/d_lib.h"
#include "dol2asm.h"
#include "dolphin/os.h"
#include "dolphin/types.h"
@@ -389,69 +391,6 @@ SECTION_DATA static void* brk_name_7688[4] = {
(void*)(((char*)&d_menu_d_menu_collect__stringBase0) + 0x1B2),
};
/* 803BC75C-803BC768 01987C 000C+00 2/2 0/0 0/0 .data __vt__15dMenu_Collect_c */
SECTION_DATA extern void* __vt__15dMenu_Collect_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__15dMenu_Collect_cFv,
};
/* 803BC768-803BC790 019888 0010+18 2/2 0/0 0/0 .data __vt__20dMenu_Collect2DTop_c */
SECTION_DATA extern void* __vt__20dMenu_Collect2DTop_c[4 + 6 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__20dMenu_Collect2DTop_cFv,
(void*)__dt__20dMenu_Collect2DTop_cFv,
/* padding */
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
};
/* 803BC790-803BC7C4 0198B0 000C+28 2/2 0/0 0/0 .data __vt__17dMenu_Collect3D_c */
SECTION_DATA extern void* __vt__17dMenu_Collect3D_c[3 + 10 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17dMenu_Collect3D_cFv,
/* padding */
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
};
/* 803BC7C4-803BC7E0 0198E4 0010+0C 2/2 0/0 0/0 .data __vt__17dMenu_Collect2D_c */
SECTION_DATA extern void* __vt__17dMenu_Collect2D_c[4 + 3 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__17dMenu_Collect2D_cFv,
(void*)__dt__17dMenu_Collect2D_cFv,
/* padding */
NULL,
NULL,
NULL,
};
/* 80453F28-80453F2C 002528 0004+00 14/14 0/0 0/0 .sdata2 @4481 */
SECTION_SDATA2 static u8 lit_4481[4] = {
0x00,
0x00,
0x00,
0x00,
};
/* 80453F2C-80453F30 00252C 0004+00 15/15 0/0 0/0 .sdata2 @4482 */
SECTION_SDATA2 static f32 lit_4482 = 1.0f;
/* 801AFD48-801AFE34 1AA688 00EC+00 1/1 0/0 0/0 .text
* __ct__17dMenu_Collect2D_cFP10JKRExpHeapP9STControlP10CSTControl */
dMenu_Collect2D_c::dMenu_Collect2D_c(JKRExpHeap* param_0, STControl* param_1, CSTControl* param_2) {
@@ -507,7 +446,7 @@ void dMenu_Collect2D_c::_create() {
mpBlackTex = new J2DPicture(image);
mpBlackTex->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255));
mpBlackTex->setAlpha(0);
mpDrawCursor = new dSelect_cursor_c(2, lit_4482, NULL);
mpDrawCursor = new dSelect_cursor_c(2, 1.0f, NULL);
mpString = new dMsgString_c();
mpSaveScrn = NULL;
mpOptionScrn = NULL;
@@ -723,15 +662,7 @@ static const u64 text_b_tag_4778[5] = {
};
#pragma pop
/* 80453F30-80453F34 002530 0004+00 2/2 0/0 0/0 .sdata2 @5173 */
SECTION_SDATA2 static f32 lit_5173 = 0.5f;
/* 80453F34-80453F38 002534 0004+00 2/2 0/0 0/0 .sdata2 @5174 */
SECTION_SDATA2 static f32 lit_5174 = -1000.0f;
/* 801B074C-801B1C3C 1AB08C 14F0+00 1/1 0/0 0/0 .text screenSet__17dMenu_Collect2D_cFv */
// issues with addi instructions
#ifdef NONMATCHING
void dMenu_Collect2D_c::screenSet() {
static_cast<J2DTextBox*>(mpScreen->search('f_t00'))->setFont(mDoExt_getRubyFont());
static_cast<J2DTextBox*>(mpScreen->search('f_t00'))->setString(0x20, "");
@@ -748,8 +679,8 @@ void dMenu_Collect2D_c::screenSet() {
0x60, static_cast<J2DTextBox*>(mpScreen->search(ftext_sv[i]))->getStringPtr(), NULL);
dMeter2Info_getStringKanji(
0x5F, static_cast<J2DTextBox*>(mpScreen->search(ftext_op[i]))->getStringPtr(), NULL);
mpScreen->search(ftext_sv[i])->hide();
mpScreen->search(ftext_op[i])->hide();
mpScreen->search(text_sv[i])->hide();
mpScreen->search(text_op[i])->hide();
}
for (int i = 0; i < 5; i++) {
@@ -1005,8 +936,8 @@ void dMenu_Collect2D_c::screenSet() {
field_0x1d8[0][3] = field_0x184[0][3] + 0x100;
field_0x1d8[1][3] = field_0x184[1][3] + 0x100;
field_0x1d8[2][3] = 0x5b9;
field_0x1d8[2][3] = 0x5b1;
field_0x1d8[3][3] = 0;
field_0x1d8[3][3] = 0x5b1;
field_0x1d8[4][3] = 0;
field_0x1d8[5][3] = 0;
field_0x1d8[6][3] = 0;
field_0x1d8[0][4] = dMsgObject_getSmellTypeMessageID() + 0x100;
@@ -1103,11 +1034,6 @@ void dMenu_Collect2D_c::screenSet() {
setHeartPiece();
setPohMaxNum(dComIfGs_getPohSpiritNum());
}
#else
void dMenu_Collect2D_c::screenSet() {
// NONMATCHING
}
#endif
/* 801B1C3C-801B1CE0 1AC57C 00A4+00 1/1 0/0 0/0 .text animationSet__17dMenu_Collect2D_cFv
*/
@@ -1122,11 +1048,6 @@ void dMenu_Collect2D_c::animationSet() {
field_0x3c = 0.0f;
}
/* ############################################################################################## */
/* 80453F38-80453F40 002538 0008+00 2/2 0/0 0/0 .sdata2 @5199 */
SECTION_SDATA2 static f64 lit_5199 = 4503601774854144.0 /* cast s32 to float */;
/* 801B1CE0-801B1EDC 1AC620 01FC+00 1/1 0/0 0/0 .text
* btkAnimeLoop0__17dMenu_Collect2D_cFP19J2DAnmTextureSRTKey */
void dMenu_Collect2D_c::btkAnimeLoop0(J2DAnmTextureSRTKey* i_SRTKey) {
@@ -1147,17 +1068,6 @@ void dMenu_Collect2D_c::btkAnimeLoop0(J2DAnmTextureSRTKey* i_SRTKey) {
static_cast<J2DTextBox*>(mpScreen->search('modelbg5'))->setAnimation(i_SRTKey);
}
/* ############################################################################################## */
/* 80453F40-80453F44 002540 0004+00 1/1 0/0 0/0 .sdata2 @5268 */
SECTION_SDATA2 static f32 lit_5268 = 150.0f;
/* 80453F44-80453F48 002544 0004+00 1/1 0/0 0/0 .sdata2 @5269 */
SECTION_SDATA2 static f32 lit_5269 = 1.0f / 5.0f;
/* 80453F48-80453F50 002548 0008+00 1/1 0/0 0/0 .sdata2 @5271 */
SECTION_SDATA2 static f64 lit_5271 = 4503599627370496.0 /* cast u32 to float */;
/* 801B1EDC-801B1FAC 1AC81C 00D0+00 1/1 0/0 0/0 .text setBackAlpha__17dMenu_Collect2D_cFv
*/
void dMenu_Collect2D_c::setBackAlpha() {
@@ -1258,8 +1168,225 @@ SECTION_SDATA2 static f32 lit_5531 = -1.0f;
/* 801B1FAC-801B27EC 1AC8EC 0840+00 1/1 0/0 0/0 .text cursorMove__17dMenu_Collect2D_cFv
*/
// NONMATCHING
// goto logic is wrong
void dMenu_Collect2D_c::cursorMove() {
// NONMATCHING
u8 dVar1 = mCursorX;
u8 dVar2 = mCursorY;
mpStick->checkTrigger();
if (mpStick->checkRightTrigger()) {
if (mCursorX < 6) {
if (mCursorX == 0 && mCursorY == 0 &&
field_0x259 >= 3 && field_0x25a < 3)
{
mCursorX = field_0x259;
mCursorY = field_0x25a;
} else {
do {
mCursorX++;
if (mCursorX == 6 && mCursorY < 3) {
if (field_0x22d[6][0] != 0) {
if (getItemTag(6, 0, false) && field_0x22d[6][0] != 0) {
mCursorX = 6;
mCursorY = 0;
}
} else {
mCursorX = dVar1;
mCursorY = dVar2;
goto LAB_802ba744;
}
}
if (dVar1 == 4 && dVar2 == 1) {
mCursorX = 5;
mCursorY = 0;
goto LAB_802ba744;
}
if (getItemTag(mCursorX, mCursorY, true)) {
goto LAB_802ba744;
}
} while (mCursorX < 6);
mCursorX = dVar1;
}
}
} else {
if (mpStick->checkLeftTrigger() && mCursorX != 0) {
if (mCursorX == 6 &&
mCursorY == 0 && field_0x259 >= 3 &&
field_0x25a < 3)
{
mCursorX = field_0x259;
mCursorY = field_0x25a;
} else if (dVar1 == 5 && dVar2 == 0 &&
field_0x259 == 4 &&
field_0x25a == 1)
{
mCursorX = field_0x259;
mCursorY = field_0x25a;
} else {
do {
mCursorX--;
if (getItemTag(mCursorX, mCursorY, true)) {
goto LAB_802ba744;
}
} while (mCursorX != 0);
mCursorX = dVar1;
}
}
}
LAB_802ba744:
if (mpStick->checkUpTrigger()) {
if (mCursorY != 0) {
bool bVar3;
restart_loop:
do {
mCursorY--;
if (mCursorY == 2) {
u8 local_3c[9] = {3,3,4,3,4,5,4,5,5};
u8 local_48[9] = {2,1,2,0,1,2,0,1,0};
for (int i = 0; i < 9; i++) {
if (getItemTag(local_3c[i], local_48[i], true)) {
mCursorX = local_3c[i];
mCursorY = local_48[i];
break;
}
}
}
if (dVar2 == 5) {
if (dVar1 == 0) {
if (field_0x25a < 5) {
mCursorX = field_0x259;
mCursorY = field_0x25a;
break;
}
bVar3 = false;
for (int i = 0; i < 4; i++) {
if (getItemTag(i, mCursorY, true)) {
mCursorX = i;
bVar3 = true;
break;
}
}
if (mCursorY == 0) {
mCursorX = dVar1;
mCursorY = dVar2;
bVar3 = true;
}
if (bVar3) {
break;
}
goto restart_loop;
}
if (field_0x25a < 5) {
mCursorX = field_0x259;
mCursorY = field_0x25a;
break;
}
bVar3 = false;
for (int i = 3; i < 7; i++) {
if (getItemTag(i, mCursorY, true)) {
mCursorX = i;
bVar3 = true;
break;
}
}
if (mCursorY == 0) {
mCursorX = dVar1;
mCursorY = dVar2;
bVar3 = true;
}
}
} while (!bVar3);
if (!getItemTag(mCursorX, mCursorY, true)) {
if (mCursorY != 0) {
goto restart_loop;
}
}
mCursorY = dVar2;
}
} else {
if (mpStick->checkDownTrigger()) {
if (mCursorY < 4) {
do {
mCursorY++;
if (mCursorY == 3) {
u8 local_50[8] = {3, 2, 3, 1, 2, 0, 1, 0};
u8 local_58[8] = {3, 3, 4, 3, 4, 3, 4, 4};
for (int i = 0; i < 8; i++) {
if (getItemTag(local_50[i], local_58[i], true)) {
mCursorX = local_50[i];
mCursorY = local_58[i];
break;
}
}
}
if (getItemTag(mCursorX, mCursorY, true)) {
goto LAB_802bab54;
}
} while (mCursorY < 4);
mCursorY = 5;
if (mCursorX <= 2) {
mCursorX = 0;
} else {
mCursorX = 1;
}
} else if (mCursorY == 4) {
mCursorY = 5;
if (mCursorX <= 3) {
mCursorX = 0;
} else {
mCursorX = 1;
}
}
}
}
LAB_802bab54:
if (mCursorX != dVar1 || mCursorY != dVar2) {
field_0x259 = dVar1;
field_0x25a = dVar2;
if ((mCursorX == 1 && mCursorY == 5) || (mCursorX == 0 && mCursorY == 5)) {
Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_OPTION, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f,
0);
} else {
Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_ITEM, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
}
cursorPosSet();
setItemNameString(mCursorX, mCursorY);
}
if (field_0x44[0] != g_drawHIO.mCollectScreen.mUnselectItemScale ||
field_0x44[1] != g_drawHIO.mCollectScreen.mSelectItemScale ||
field_0x4c[0] != g_drawHIO.mCollectScreen.mUnselectSaveOptionScale ||
field_0x4c[1] != g_drawHIO.mCollectScreen.mSelectSaveOptionScale)
{
field_0x44[0] = g_drawHIO.mCollectScreen.mUnselectItemScale;
field_0x44[1] = g_drawHIO.mCollectScreen.mSelectItemScale;
field_0x4c[0] = g_drawHIO.mCollectScreen.mUnselectSaveOptionScale;
field_0x4c[1] = g_drawHIO.mCollectScreen.mSelectSaveOptionScale;
for (int i = 0; i < 7; i++) {
for (int j = 0; j < 6; j++) {
if (getItemTag(i, j, true)) {
J2DPane* pane = mpScreen->search(getItemTag(i, j, true));
if ((i != 0 || j != 0) && (i != 6 || j != 0)) {
if (j == 5) {
if (i == mCursorX && j == mCursorY) {
pane->scale(g_drawHIO.mCollectScreen.mSelectSaveOptionScale,
g_drawHIO.mCollectScreen.mSelectSaveOptionScale);
} else {
pane->scale(g_drawHIO.mCollectScreen.mUnselectSaveOptionScale,
g_drawHIO.mCollectScreen.mUnselectSaveOptionScale);
}
} else if (i == mCursorX && j == mCursorY) {
pane->scale(g_drawHIO.mCollectScreen.mSelectItemScale,
g_drawHIO.mCollectScreen.mSelectItemScale);
} else {
pane->scale(g_drawHIO.mCollectScreen.mUnselectItemScale,
g_drawHIO.mCollectScreen.mUnselectItemScale);
}
}
}
}
}
}
}
/* ############################################################################################## */
@@ -2766,19 +2893,6 @@ void dMenu_Collect3D_c::setJ3D(const char* param_0, const char* param_1, const c
}
#endif
/* ############################################################################################## */
/* 80453FB4-80453FB8 0025B4 0004+00 1/1 0/0 0/0 .sdata2 @7505 */
SECTION_SDATA2 static f32 lit_7505 = -1.0f / 10.0f;
/* 80453FB8-80453FBC 0025B8 0004+00 1/1 0/0 0/0 .sdata2 @7506 */
SECTION_SDATA2 static f32 lit_7506 = -3.0f / 5.0f;
/* 80453FBC-80453FC0 0025BC 0004+00 1/1 0/0 0/0 .sdata2 @7507 */
SECTION_SDATA2 static f32 lit_7507 = -2.0f / 5.0f;
/* 80453FC0-80453FC4 0025C0 0004+00 1/1 0/0 0/0 .sdata2 @7508 */
SECTION_SDATA2 static f32 lit_7508 = -3.0f / 10.0f;
/* 801B6D30-801B6E70 1B1670 0140+00 2/2 0/0 0/0 .text set_mtx__17dMenu_Collect3D_cFv */
void dMenu_Collect3D_c::set_mtx() {
f32 scale = 0.0f;
+35 -958
View File
File diff suppressed because it is too large Load Diff
+5 -145
View File
@@ -6,107 +6,26 @@
#include "m_Do/m_Do_audio.h"
#include "JSystem/JKernel/JKRSolidHeap.h"
#include "d/d_com_inf_game.h"
#include "dol2asm.h"
#include "m_Do/m_Do_Reset.h"
#include "m_Do/m_Do_dvd_thread.h"
//
// Forward References:
//
extern "C" void reset__17mDoAud_zelAudio_cFv();
extern "C" static void mDoAud_Create__Fv();
extern "C" void mDoAud_Execute__Fv();
extern "C" void mDoAud_setSceneName__FPCcll();
extern "C" void mDoAud_load1stDynamicWave__Fv();
extern "C" void mDoAud_setFadeOutStart__FUc();
extern "C" void mDoAud_setFadeInStart__FUc();
extern "C" void mDoAud_resetProcess__Fv();
extern "C" void mDoAud_resetRecover__Fv();
extern "C" void __sinit_m_Do_audio_cpp();
extern "C" void __dt__17mDoAud_zelAudio_cFv();
extern "C" void __dt__10Z2AudioMgrFv();
extern "C" void __dt__14JAISoundHandleFv();
extern "C" void __dt__12Z2MultiSeObjFv();
extern "C" void __dt__16JAISeCategoryMgrFv();
extern "C" extern char const* const m_Do_m_Do_audio__stringBase0;
//
// External References:
//
extern "C" void create__25mDoDvdThd_mountXArchive_cFPCcUcQ210JKRArchive10EMountModeP7JKRHeap();
extern "C" void create__21mDoDvdThd_toMainRam_cFPCcUcP7JKRHeap();
extern "C" void __dt__15JASAudioReseterFv();
extern "C" void __dt__14JAISeqDataUserFv();
extern "C" void releaseSound__14JAISoundHandleFv();
extern "C" void __dt__12JAISoundInfoFv();
extern "C" void __dt__15JAISoundStarterFv();
extern "C" void __dt__16JAIStreamDataMgrFv();
extern "C" void __dt__12Z2MultiSeMgrFv();
extern "C" void setEventBit__11Z2StatusMgrFPv();
extern "C" void setFadeOutStart__10Z2SceneMgrFUc();
extern "C" void setFadeInStart__10Z2SceneMgrFUc();
extern "C" void setSceneName__10Z2SceneMgrFPcll();
extern "C" void load1stDynamicWave__10Z2SceneMgrFv();
extern "C" void __dt__10Z2AudienceFv();
extern "C" void __ct__10Z2AudioMgrFv();
extern "C" void init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive();
extern "C" void setOutputMode__10Z2AudioMgrFUl();
extern "C" void gframeProcess__10Z2AudioMgrFv();
extern "C" void resetProcess__10Z2AudioMgrFUlb();
extern "C" void resetRecover__10Z2AudioMgrFv();
extern "C" void hasReset__10Z2AudioMgrCFv();
extern "C" void func_802CDB1C();
extern "C" void free__7JKRHeapFPvP7JKRHeap();
extern "C" void changeGroupID__7JKRHeapFUc();
extern "C" void __dl__FPv();
extern "C" void adjustSize__12JKRSolidHeapFv();
extern "C" void __dt__10JSUPtrListFv();
extern "C" void __register_global_object();
extern "C" void __destroy_arr();
extern "C" void _savegpr_29();
extern "C" void _restgpr_29();
extern "C" extern void* __vt__8JAISeMgr[5];
extern "C" extern void* __vt__16JAISeCategoryMgr[5];
extern "C" extern void* __vt__9JAISeqMgr[5 + 1 /* padding */];
extern "C" extern void* __vt__10Z2SoundMgr[3 + 1 /* padding */];
extern "C" extern void* __vt__14Z2SoundStarter[5 + 1 /* padding */];
extern "C" extern void* __vt__11Z2SoundInfo[20];
extern "C" extern void* __vt__15Z2SpeechStarter[5];
extern "C" extern void* __vt__10Z2AudioMgr[3];
extern "C" u8 mResetData__6mDoRst[4 + 4 /* padding */];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
extern "C" u8 sCurrentHeap__7JKRHeap[4];
//
// Declarations:
//
/* ############################################################################################## */
/* 80450BB8-80450BBC -00001 0004+00 5/5 6/6 0/0 .sbss None */
/* 80450BB8 0001+00 data_80450BB8 None */
/* 80450BB9 0001+00 data_80450BB9 None */
/* 80450BBA 0002+00 data_80450BBA None */
#pragma push
#pragma force_active on
bool mDoAud_zelAudio_c::mInitFlag;
bool mDoAud_zelAudio_c::mResetFlag;
bool mDoAud_zelAudio_c::mBgmSet;
#pragma pop
/* 80006FB4-80006FC0 0018F4 000C+00 1/1 0/0 0/0 .text reset__17mDoAud_zelAudio_cFv */
void mDoAud_zelAudio_c::reset() {
mBgmSet = false;
}
/* 803DBF40-803DBF4C 008C60 000C+00 1/1 0/1 0/0 .bss @3620 */
static u8 lit_3620[12];
/* 803DBF4C-803DD2D8 008C6C 138C+00 3/3 0/0 0/0 .bss g_mDoAud_zelAudio */
static u8 g_mDoAud_zelAudio[5004];
static mDoAud_zelAudio_c g_mDoAud_zelAudio;
/* 80450BBC-80450BC0 0000BC 0004+00 1/1 1/1 0/0 .sbss g_mDoAud_audioHeap */
JKRSolidHeap* g_mDoAud_audioHeap;
@@ -139,7 +58,7 @@ static void mDoAud_Create() {
if (l_affCommand->sync() && l_arcCommand->sync()) {
if (g_mDoAud_audioHeap != NULL) {
s32 groupID = JKRHeap::sCurrentHeap->changeGroupID(5);
(*(mDoAud_zelAudio_c*)g_mDoAud_zelAudio)
g_mDoAud_zelAudio
.init(g_mDoAud_audioHeap, 0xA00000, l_affCommand->getMemAddress(),
l_arcCommand->getArchive());
JKRHeap::sCurrentHeap->changeGroupID(groupID);
@@ -149,9 +68,9 @@ static void mDoAud_Create() {
OSReport_Error("ヒープ確保失敗につきオーディオ初期化できません\n");
}
(*(mDoAud_zelAudio_c*)g_mDoAud_zelAudio)
(g_mDoAud_zelAudio)
.setEventBit(dComIfGs_getPEventBit());
(*(mDoAud_zelAudio_c*)g_mDoAud_zelAudio).reset();
(g_mDoAud_zelAudio).reset();
u32 soundMode = OSGetSoundMode();
Z2AudioMgr::getInterface()->setOutputMode(soundMode);
@@ -171,7 +90,7 @@ void mDoAud_Execute() {
mDoAud_Create();
}
} else {
(*(mDoAud_zelAudio_c*)g_mDoAud_zelAudio).gframeProcess();
g_mDoAud_zelAudio.gframeProcess();
}
}
@@ -216,63 +135,4 @@ bool mDoAud_resetRecover() {
return 1;
}
/* ############################################################################################## */
/* 803A2F40-803A2F4C 000060 000C+00 2/2 0/0 0/0 .data __vt__17mDoAud_zelAudio_c */
SECTION_DATA extern void* __vt__17mDoAud_zelAudio_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)func_802CDB1C,
};
/* 80007318-80007368 001C58 0050+00 0/0 1/0 0/0 .text __sinit_m_Do_audio_cpp */
void __sinit_m_Do_audio_cpp() {
// NONMATCHING
}
#pragma push
#pragma force_active on
REGISTER_CTORS(0x80007318, __sinit_m_Do_audio_cpp);
#pragma pop
/* 80007368-800073C8 001CA8 0060+00 1/1 0/0 0/0 .text __dt__17mDoAud_zelAudio_cFv */
extern "C" void __dt__17mDoAud_zelAudio_cFv() {
// asm mDoAud_zelAudio_c::~mDoAud_zelAudio_c() {
// NONMATCHING
}
/* ############################################################################################## */
/* 803A2F4C-803A2F60 00006C 0010+04 1/1 2/2 0/0 .data __vt__12JAUSoundInfo */
SECTION_DATA extern void* __vt__12JAUSoundInfo[4 + 1 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)NULL,
(void*)NULL,
/* padding */
NULL,
};
/* 800073C8-80007838 001D08 0470+00 1/1 0/0 0/0 .text __dt__10Z2AudioMgrFv */
extern "C" void __dt__10Z2AudioMgrFv() {
// asm Z2AudioMgr::~Z2AudioMgr() {
// NONMATCHING
}
/* 80007838-80007888 002178 0050+00 1/1 1/1 0/0 .text __dt__14JAISoundHandleFv */
extern "C" void __dt__14JAISoundHandleFv() {
// asm JAISoundHandle::~JAISoundHandle() {
// NONMATCHING
}
/* 80007888-800078DC 0021C8 0054+00 1/1 1/1 0/0 .text __dt__12Z2MultiSeObjFv */
extern "C" void __dt__12Z2MultiSeObjFv() {
// asm Z2MultiSeObj::~Z2MultiSeObj() {
// NONMATCHING
}
/* 800078DC-80007954 00221C 0078+00 1/1 3/2 0/0 .text __dt__16JAISeCategoryMgrFv */
extern "C" void __dt__16JAISeCategoryMgrFv() {
// asm JAISeCategoryMgr::~JAISeCategoryMgr() {
// NONMATCHING
}
/* 80373D68-80373D68 0003C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */