Work on d_msg_object (#2186)

This commit is contained in:
hatal175
2024-08-07 13:18:30 +03:00
committed by GitHub
parent 6bf2f3cc55
commit 106d72032c
136 changed files with 2550 additions and 3847 deletions
+8 -8
View File
@@ -1203,26 +1203,26 @@ void jmessage_tReference::resetWord() {
/* 80229768-80229788 2240A8 0020+00 3/3 0/0 0/0 .text setCharactor__19jmessage_tReferenceFUs */
void jmessage_tReference::setCharactor(u16 param_0) {
mCharactor[field_0x40c] = param_0;
field_0x40c++;
mCharactor.data[mCharactor.field_0x40c] = param_0;
mCharactor.field_0x40c++;
}
/* 80229788-802297B0 2240C8 0028+00 3/3 0/0 0/0 .text addCharactor__19jmessage_tReferenceFUs */
void jmessage_tReference::addCharactor(u16 param_0) {
if (param_0 == mCharactor[field_0x40e]) {
field_0x40e++;
if (param_0 == mCharactor.data[mCharactor.field_0x40e]) {
mCharactor.field_0x40e++;
}
}
/* 802297B0-802297E4 2240F0 0034+00 3/3 0/0 0/0 .text resetCharactor__19jmessage_tReferenceFv */
void jmessage_tReference::resetCharactor() {
for (int i = 0; i < 0x200; i++) {
mCharactor[i] = 0;
mCharactor.data[i] = 0;
}
field_0x40c = 0;
field_0x40e = 0;
mCountBackUp = 0;
mCharactor.field_0x40c = 0;
mCharactor.field_0x40e = 0;
mCharactor.mCountBackUp = 0;
}
/* 802297E4-80229810 224124 002C+00 0/0 1/1 0/0 .text
+1 -1
View File
@@ -748,7 +748,7 @@ void dMsgFlow_c::setInitValueGroupChange(int param_1, fopAc_ac_c** param_2) {
*/
u8* dMsgFlow_c::getMsgDataBlock(char const* block_tag) {
char tag[5] = {0};
u8* dt_p = dMsgObject_c::getMsgDtPtr();
u8* dt_p = (u8*)dMsgObject_c::getMsgDtPtr();
u8* block;
u32 num;
u32 i;
+2150 -878
View File
File diff suppressed because it is too large Load Diff
+5 -81
View File
@@ -4,69 +4,16 @@
//
#include "d/msg/d_msg_scrn_item.h"
#include "d/msg/d_msg_scrn_light.h"
#include "d/msg/d_msg_scrn_arrow.h"
#include "dol2asm.h"
//
// Types:
//
struct dMsgScrnLight_c {
/* 80245934 */ dMsgScrnLight_c(u8, u8);
/* 80245C04 */ void draw(f32*, f32, f32, f32, f32, f32, u8);
};
struct J2DAnmColor {};
struct J2DAnmTextureSRTKey {};
struct JKRExpHeap {};
struct dMsgScrnItem_c {
/* 8023E79C */ dMsgScrnItem_c(u8, u8, JKRExpHeap*);
/* 8023F51C */ ~dMsgScrnItem_c();
/* 8023F888 */ void exec();
/* 8023FB24 */ void drawSelf();
/* 8023FF30 */ void arwAnimeInit();
/* 8023FF54 */ void arwAnimeMove();
/* 8023FF78 */ void dotAnimeInit();
/* 8023FF9C */ void dotAnimeMove();
/* 8023FFC0 */ void setSelectString(char*, char*, char*);
/* 8023FFE4 */ void setSelectRubyString(char*, char*, char*);
/* 80240008 */ void isSelect();
/* 8024002C */ void selectAnimeInit(u8, u8, f32, u8);
/* 8024005C */ void selectAnimeMove(u8, u8, bool);
/* 80240080 */ void selectAnimeEnd();
/* 802400A4 */ void fukiScale(f32);
/* 802400A8 */ void fukiTrans(f32, f32);
/* 802400CC */ void fukiAlpha(f32);
/* 80240174 */ void fukiPosCalc(u8);
/* 8024074C */ void setBtk0Animation(J2DAnmTextureSRTKey*);
/* 802407E8 */ void setBpk0Animation(J2DAnmColor*);
/* 80240844 */ void setBpk1Animation(J2DAnmColor*);
/* 802408A4 */ void isOugiID();
};
struct dMsgScrnBase_c {
/* 8023C0DC */ dMsgScrnBase_c();
/* 8023C124 */ ~dMsgScrnBase_c();
/* 8023C16C */ void init();
/* 8023C234 */ void multiDraw();
/* 8023C274 */ void draw();
/* 8023C32C */ void drawOutFont(f32, f32, f32);
/* 8023C4F4 */ void fontAlpha(f32);
/* 8023C574 */ void isTalkNow();
};
struct dMsgScrnArrow_c {
/* 8023B9B4 */ dMsgScrnArrow_c();
/* 8023BDC0 */ void draw();
/* 8023BDF8 */ void setPos(f32, f32);
/* 8023BE34 */ void arwAnimeInit();
/* 8023BE90 */ void arwAnimeMove();
/* 8023BFC4 */ void dotAnimeInit();
/* 8023C010 */ void dotAnimeMove();
};
struct dMsgScrn3Select_c {
/* 802390B4 */ dMsgScrn3Select_c();
/* 80239C64 */ void isSelect();
@@ -93,10 +40,6 @@ struct dMsgObject_c {
struct ResTIMG {};
struct J2DPicture {
/* 802FC708 */ J2DPicture(ResTIMG const*);
};
struct dMeter2Info_c {
/* 8021CF08 */ void readItemTexture(u8, void*, J2DPicture*, void*, J2DPicture*, void*,
J2DPicture*, void*, J2DPicture*, int);
@@ -107,17 +50,6 @@ struct dItem_data {
static void* item_resource[1530];
};
struct Vec {};
struct cXyz {
/* 8026702C */ bool operator==(Vec const&) const;
};
struct JKRHeap {
/* 802CE4D4 */ void alloc(u32, int);
/* 802CE548 */ void free(void*);
};
struct JKRFileLoader {
/* 802D4270 */ void getGlbResource(char const*, JKRFileLoader*);
};
@@ -135,13 +67,6 @@ struct J2DScreen {
/* 802F9690 */ void animation();
};
struct J2DBasePosition {};
struct J2DPane {
/* 802F7100 */ void getBounds();
/* 802F76F8 */ void setBasePosition(J2DBasePosition);
};
struct J2DAnmLoaderDataBase {
/* 80308A6C */ void load(void const*);
};
@@ -192,7 +117,6 @@ extern "C" extern char const* const msg_scrn_d_msg_scrn_item__stringBase0;
// External References:
//
SECTION_INIT void memset();
extern "C" void mDoExt_getMesgFont__Fv();
extern "C" void mDoLib_project__FP3VecP3Vec();
extern "C" void dComIfGp_getSubHeap2D__Fi();
@@ -461,7 +385,7 @@ asm void dMsgScrnItem_c::setSelectRubyString(char* param_0, char* param_1, char*
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnItem_c::isSelect() {
asm bool dMsgScrnItem_c::isSelect() {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_item/isSelect__14dMsgScrnItem_cFv.s"
}
@@ -481,7 +405,7 @@ asm void dMsgScrnItem_c::selectAnimeInit(u8 param_0, u8 param_1, f32 param_2, u8
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnItem_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
asm bool dMsgScrnItem_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_item/selectAnimeMove__14dMsgScrnItem_cFUcUcb.s"
}
@@ -492,7 +416,7 @@ asm void dMsgScrnItem_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnItem_c::selectAnimeEnd() {
asm bool dMsgScrnItem_c::selectAnimeEnd() {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_item/selectAnimeEnd__14dMsgScrnItem_cFv.s"
}
+3 -59
View File
@@ -12,43 +12,11 @@
struct JKRExpHeap {};
struct dMsgScrnTalk_c {
/* 80246FF0 */ dMsgScrnTalk_c(u8, u8, JKRExpHeap*);
/* 80247A90 */ ~dMsgScrnTalk_c();
/* 80247D34 */ void exec();
/* 80247E4C */ void drawSelf();
/* 802480F0 */ void arwAnimeInit();
/* 80248114 */ void arwAnimeMove();
/* 80248138 */ void dotAnimeInit();
/* 8024815C */ void dotAnimeMove();
/* 80248180 */ void setSelectString(char*, char*, char*);
/* 802481AC */ void setSelectRubyString(char*, char*, char*);
/* 802481D8 */ void isSelect();
/* 8024820C */ void selectAnimeInit(u8, u8, f32, u8);
/* 80248244 */ void selectAnimeMove(u8, u8, bool);
/* 80248278 */ void selectAnimeEnd();
/* 802482AC */ void fukiScale(f32);
/* 802482B0 */ void fukiTrans(f32, f32);
/* 802482B4 */ void fukiAlpha(f32);
/* 8024835C */ void fukiPosCalc(u8);
};
struct dMsgScrnLight_c {
/* 80245934 */ dMsgScrnLight_c(u8, u8);
/* 80245C04 */ void draw(f32*, f32, f32, f32, f32, f32, u8);
};
struct dMsgScrnBase_c {
/* 8023C0DC */ dMsgScrnBase_c();
/* 8023C124 */ ~dMsgScrnBase_c();
/* 8023C16C */ void init();
/* 8023C234 */ void multiDraw();
/* 8023C274 */ void draw();
/* 8023C32C */ void drawOutFont(f32, f32, f32);
/* 8023C4F4 */ void fontAlpha(f32);
/* 8023C574 */ void isTalkNow();
};
struct dMsgScrnArrow_c {
/* 8023B9B4 */ dMsgScrnArrow_c();
/* 8023BDC0 */ void draw();
@@ -82,32 +50,13 @@ struct dMsgObject_c {
/* 8023819C */ void getActor();
};
struct JUtility {
struct TColor {};
};
struct dMeter2Draw_c {
/* 802140DC */ void drawPikari(f32, f32, f32*, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor, f32, u8);
};
struct Vec {};
struct cXyz {
/* 8026702C */ bool operator==(Vec const&) const;
};
struct JKRHeap {
/* 802CE4D4 */ void alloc(u32, int);
/* 802CE548 */ void free(void*);
};
struct JKRArchive {};
struct J2DTextBox {
/* 8030074C */ void setString(s16, char const*, ...);
};
struct J2DGrafContext {};
struct J2DScreen {
@@ -116,10 +65,6 @@ struct J2DScreen {
/* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*);
};
struct J2DPane {
/* 802F7100 */ void getBounds();
};
struct CPaneMgrAlpha {
/* 802557D0 */ void setAlphaRate(f32);
/* 80255828 */ void getAlphaRate();
@@ -162,7 +107,6 @@ extern "C" extern char const* const msg_scrn_d_msg_scrn_talk__stringBase0;
// External References:
//
SECTION_INIT void memset();
extern "C" void mDoExt_getMesgFont__Fv();
extern "C" void mDoLib_project__FP3VecP3Vec();
extern "C" void dComIfGp_getSubHeap2D__Fi();
@@ -410,7 +354,7 @@ asm void dMsgScrnTalk_c::setSelectRubyString(char* param_0, char* param_1, char*
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnTalk_c::isSelect() {
asm bool dMsgScrnTalk_c::isSelect() {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_talk/isSelect__14dMsgScrnTalk_cFv.s"
}
@@ -430,7 +374,7 @@ asm void dMsgScrnTalk_c::selectAnimeInit(u8 param_0, u8 param_1, f32 param_2, u8
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnTalk_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
asm bool dMsgScrnTalk_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_talk/selectAnimeMove__14dMsgScrnTalk_cFUcUcb.s"
}
@@ -441,7 +385,7 @@ asm void dMsgScrnTalk_c::selectAnimeMove(u8 param_0, u8 param_1, bool param_2) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dMsgScrnTalk_c::selectAnimeEnd() {
asm bool dMsgScrnTalk_c::selectAnimeEnd() {
nofralloc
#include "asm/msg/scrn/d_msg_scrn_talk/selectAnimeEnd__14dMsgScrnTalk_cFv.s"
}
+2 -100
View File
@@ -1,90 +1,14 @@
//
// Generated By: dol2asm
// Translation Unit: d/msg/d_msg_string_base
// d_msg_string_base
//
#include "d/msg/d_msg_string_base.h"
#include "d/msg/d_msg_class.h"
#include "d/com/d_com_inf_game.h"
#include "d/meter/d_meter2_info.h"
#include "dol2asm.h"
#include "JSystem/JKernel/JKRArchive.h"
#include "JSystem/J2DGraph/J2DTextBox.h"
//
// Forward References:
//
extern "C" void __ct__16dMsgStringBase_cFv();
extern "C" void __dt__16dMsgStringBase_cFv();
extern "C" void getResource__16dMsgStringBase_cFv();
extern "C" void
getStringLocal__16dMsgStringBase_cFUlP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc();
extern "C" void
getStringPageLocal__16dMsgStringBase_cFUlUcUcP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc();
extern "C" void getPageMax__16dMsgStringBase_cFi();
extern "C" void getMessageLocal__16dMsgStringBase_cFUlPc();
extern "C" void drawFontLocal__16dMsgStringBase_cFP10J2DTextBoxUcffffUlUc();
extern "C" void
getString__16dMsgStringBase_cFUlP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc();
extern "C" void
getStringPage__16dMsgStringBase_cFUlUcUcP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc();
extern "C" void getMessage__16dMsgStringBase_cFUlPc();
extern "C" void resetStringLocal__16dMsgStringBase_cFP10J2DTextBox();
extern "C" void drawOutFontLocal__16dMsgStringBase_cFP10J2DTextBoxf();
extern "C" extern char const* const d_msg_d_msg_string_base__stringBase0;
//
// External References:
//
extern "C" void __ct__26jmessage_string_tReferenceFv();
extern "C" void
init__26jmessage_string_tReferenceFP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc();
extern "C" void getLineLength__26jmessage_string_tReferenceFi();
extern "C" void __ct__24jmessage_string_tControlFv();
extern "C" void
__ct__34jmessage_string_tSequenceProcessorFPC26jmessage_string_tReferenceP24jmessage_string_tControl();
extern "C" void __ct__35jmessage_string_tRenderingProcessorFPC26jmessage_string_tReference();
extern "C" void reset__Q28JMessage8TControlFv();
extern "C" void update__Q28JMessage8TControlFv();
extern "C" void render__Q28JMessage8TControlFv();
extern "C" void setMessageID__Q28JMessage8TControlFUlUlPb();
extern "C" void __dt__Q38JMessage18TResourceContainer10TCResourceFv();
extern "C" void __ct__Q28JMessage18TResourceContainerFv();
extern "C" void __ct__Q28JMessage6TParseFPQ28JMessage18TResourceContainer();
extern "C" void* __nw__FUl();
extern "C" void __dl__FPv();
extern "C" void getGlbResource__10JKRArchiveFUlPCcP10JKRArchive();
extern "C" void parse_next__Q37JGadget6binary19TParse_header_blockFPPCvUl();
extern "C" void erase__Q27JGadget13TNodeLinkListFQ37JGadget13TNodeLinkList8iterator();
extern "C" void _savegpr_23();
extern "C" void _savegpr_25();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_23();
extern "C" void _restgpr_25();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
//
// Declarations:
//
/* ############################################################################################## */
/* 803C1478-803C1498 01E598 0020+00 2/2 0/0 0/0 .data __vt__16dMsgStringBase_c */
SECTION_DATA extern void* __vt__16dMsgStringBase_c[8] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)getString__16dMsgStringBase_cFUlP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc,
(void*)
getStringPage__16dMsgStringBase_cFUlUcUcP10J2DTextBoxP10J2DTextBoxP7JUTFontP10COutFont_cUc,
(void*)getMessage__16dMsgStringBase_cFUlPc,
(void*)resetStringLocal__16dMsgStringBase_cFP10J2DTextBox,
(void*)drawOutFontLocal__16dMsgStringBase_cFP10J2DTextBoxf,
(void*)drawFontLocal__16dMsgStringBase_cFP10J2DTextBoxUcffffUlUc,
};
/* 802493B4-80249528 243CF4 0174+00 0/0 2/2 0/0 .text __ct__16dMsgStringBase_cFv */
dMsgStringBase_c::dMsgStringBase_c() {
field_0x20 = 0;
@@ -110,8 +34,6 @@ dMsgStringBase_c::dMsgStringBase_c() {
}
/* 80249528-80249700 243E68 01D8+00 0/0 1/1 0/0 .text __dt__16dMsgStringBase_cFv */
// linklist begin/front/pop_front iterator stack
#ifdef NONMATCHING
dMsgStringBase_c::~dMsgStringBase_c() {
mpResCont->destroyResource_all();
delete mpResCont;
@@ -132,16 +54,6 @@ dMsgStringBase_c::~dMsgStringBase_c() {
dComIfGp_getMsgDtArchive(0)->removeResourceAll();
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dMsgStringBase_c::~dMsgStringBase_c() {
nofralloc
#include "asm/d/msg/d_msg_string_base/__dt__16dMsgStringBase_cFv.s"
}
#pragma pop
#endif
/* 80249700-80249768 244040 0068+00 1/1 2/2 0/0 .text getResource__16dMsgStringBase_cFv
*/
@@ -251,7 +163,6 @@ f32 dMsgStringBase_c::getMessageLocal(u32 param_1, char* param_2) {
* drawFontLocal__16dMsgStringBase_cFP10J2DTextBoxUcffffUlUc */
void dMsgStringBase_c::drawFontLocal(J2DTextBox* param_0, u8 param_1, f32 param_2, f32 param_3,
f32 param_4, f32 param_5, u32 param_6, u8 param_7) {
/* empty function */
}
/* 80249BB0-80249BD0 2444F0 0020+00 1/0 0/0 0/0 .text
@@ -278,24 +189,15 @@ f32 dMsgStringBase_c::getMessage(u32 param_0, char* param_1) {
/* 80249C18-80249C1C 244558 0004+00 1/0 0/0 0/0 .text
* resetStringLocal__16dMsgStringBase_cFP10J2DTextBox */
void dMsgStringBase_c::resetStringLocal(J2DTextBox* param_0) {
/* empty function */
}
/* 80249C1C-80249C20 24455C 0004+00 1/0 0/0 0/0 .text
* drawOutFontLocal__16dMsgStringBase_cFP10J2DTextBoxf */
void dMsgStringBase_c::drawOutFontLocal(J2DTextBox* param_0, f32 param_1) {
/* empty function */
}
/* ############################################################################################## */
/* 80399CA3-80399CB0 026303 0008+05 0/0 0/0 0/0 .rodata None */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80399CA3 = ""
"\x1B"
"CR[%d]";
/* @stringBase0 padding */
SECTION_DEAD static char const* const pad_80399CAB = "\0\0\0\0";
#pragma pop
static char const* const stringBase_80399CA3 = "\x1B" "CR[%d]";
/* 80399C98-80399C98 0262F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */