mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-08-16 12:24:45 -04:00
demangle data-symbols
This commit is contained in:
+971
-320
File diff suppressed because it is too large
Load Diff
@@ -21,6 +21,10 @@ struct e_wb_class {
|
||||
/* 80037DBC */ void setRunRideMode();
|
||||
};
|
||||
|
||||
struct daTagHstop_c {
|
||||
static u8 m_top[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct Z2CreatureRide {
|
||||
/* 802C522C */ void setLinkRiding(bool);
|
||||
};
|
||||
@@ -36,7 +40,7 @@ extern "C" void getOff__10e_wb_classFv();
|
||||
extern "C" void checkDownDamage__10e_wb_classFv();
|
||||
extern "C" void checkNormalRideMode__10e_wb_classCFv();
|
||||
extern "C" void setRunRideMode__10e_wb_classFv();
|
||||
extern "C" extern u8 m_top__12daTagHstop_c[4 + 4 /* padding */];
|
||||
extern "C" u8 m_top__12daTagHstop_c[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -120,5 +124,4 @@ asm void e_wb_class::setRunRideMode() {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450DF8-80450E00 0002F8 0004+04 0/0 1/1 3/3 .sbss m_top__12daTagHstop_c */
|
||||
extern u8 m_top__12daTagHstop_c[4 + 4 /* padding */];
|
||||
u8 m_top__12daTagHstop_c[4 + 4 /* padding */];
|
||||
u8 daTagHstop_c::m_top[4 + 4 /* padding */];
|
||||
|
||||
@@ -13,10 +13,10 @@
|
||||
|
||||
struct request_of_phase_process_class {};
|
||||
|
||||
struct J3DAnmTexPattern {};
|
||||
|
||||
struct J3DMaterialTable {};
|
||||
|
||||
struct J3DAnmTexPattern {};
|
||||
|
||||
struct mDoExt_btpAnm {
|
||||
/* 8000D54C */ void init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16);
|
||||
/* 8000D5E8 */ void entry(J3DMaterialTable*, s16);
|
||||
@@ -43,10 +43,10 @@ struct mDoExt_bpkAnm {
|
||||
/* 8000D518 */ void entry(J3DMaterialTable*, f32);
|
||||
};
|
||||
|
||||
struct J3DAnmTransform {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct J3DAnmTransform {};
|
||||
|
||||
struct mDoExt_bckAnm {
|
||||
/* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool);
|
||||
/* 8000D9CC */ void entry(J3DModelData*, f32);
|
||||
@@ -96,6 +96,15 @@ struct dRes_control_c {
|
||||
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
|
||||
};
|
||||
|
||||
struct dItem_data {
|
||||
static void* item_resource[1530];
|
||||
static u8 item_info[1020 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct _GXTexObj {};
|
||||
@@ -164,10 +173,10 @@ extern "C" void _restfpr_27();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" extern void* __vt__12J3DFrameCtrl[3];
|
||||
extern "C" extern void* item_resource__10dItem_data[1530];
|
||||
extern "C" extern u8 item_info__10dItem_data[1020 + 4 /* padding */];
|
||||
extern "C" void* item_resource__10dItem_data[1530];
|
||||
extern "C" u8 item_info__10dItem_data[1020 + 4 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" extern u8 j3dSys[284];
|
||||
|
||||
|
||||
@@ -22,6 +22,13 @@ struct daItemBase_c {
|
||||
/* 80037AE4 */ void dead();
|
||||
/* 80037AF4 */ void chkDead();
|
||||
/* 8014475C */ void CreateItemHeap(char const*, s16, s16, s16, s16, s16, s16, s16);
|
||||
|
||||
static u8 const m_data[56];
|
||||
};
|
||||
|
||||
struct dItem_data {
|
||||
static void* item_resource[1530];
|
||||
static void* field_item_res[1020];
|
||||
};
|
||||
|
||||
//
|
||||
@@ -37,15 +44,15 @@ extern "C" void dead__12daItemBase_cFv();
|
||||
extern "C" void chkDead__12daItemBase_cFv();
|
||||
extern "C" void CheckItemCreateHeap__FP10fopAc_ac_c();
|
||||
extern "C" void CheckFieldItemCreateHeap__FP10fopAc_ac_c();
|
||||
extern "C" extern u8 const m_data__12daItemBase_c[56];
|
||||
extern "C" u8 const m_data__12daItemBase_c[56];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void CreateItemHeap__12daItemBase_cFPCcsssssss();
|
||||
extern "C" extern void* item_resource__10dItem_data[1530];
|
||||
extern "C" extern void* field_item_res__10dItem_data[1020];
|
||||
extern "C" void* item_resource__10dItem_data[1530];
|
||||
extern "C" void* field_item_res__10dItem_data[1020];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -144,10 +151,10 @@ asm void CheckFieldItemCreateHeap(fopAc_ac_c* param_0) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803792B0-803792E8 005910 0038+00 0/0 1/1 0/0 .rodata m_data__12daItemBase_c */
|
||||
SECTION_RODATA extern u8 const m_data__12daItemBase_c[56] = {
|
||||
SECTION_RODATA u8 const daItemBase_c::m_data[56] = {
|
||||
0xC0, 0x90, 0x00, 0x00, 0x3F, 0x1E, 0xB8, 0x52, 0x42, 0x34, 0x00, 0x00, 0x41, 0x20,
|
||||
0x00, 0x00, 0x40, 0xC0, 0x00, 0x00, 0x00, 0x01, 0x00, 0xF0, 0x00, 0x3C, 0x0F, 0xA0,
|
||||
0x00, 0x78, 0x00, 0x00, 0xC0, 0x80, 0x00, 0x00, 0x40, 0x60, 0x00, 0x00, 0x04, 0x4C,
|
||||
0x0B, 0xB8, 0x41, 0xB8, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0x0D, 0x00, 0x0A,
|
||||
};
|
||||
COMPILER_STRIP_GATE(803792B0, &m_data__12daItemBase_c);
|
||||
COMPILER_STRIP_GATE(803792B0, &daItemBase_c::m_data);
|
||||
|
||||
@@ -13,6 +13,10 @@
|
||||
|
||||
struct process_node_class {};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {
|
||||
/* 80018B64 */ fopAc_ac_c();
|
||||
};
|
||||
@@ -21,6 +25,8 @@ struct cXyz {};
|
||||
|
||||
struct fopAcM_gc_c {
|
||||
/* 8001DCBC */ void gndCheck(cXyz const*);
|
||||
|
||||
static u8 mGndCheck[84];
|
||||
};
|
||||
|
||||
struct daNocrm_c {
|
||||
@@ -28,6 +34,10 @@ struct daNocrm_c {
|
||||
/* 80145508 */ void getRoomNo(int);
|
||||
};
|
||||
|
||||
struct dStage_roomControl_c {
|
||||
static u8 mStatus[65792];
|
||||
};
|
||||
|
||||
struct cBgS_PolyInfo {};
|
||||
|
||||
struct dBgS {
|
||||
@@ -68,9 +78,9 @@ extern "C" void _savegpr_28();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" extern void* g_fopAc_Method[8];
|
||||
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
|
||||
extern "C" extern u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 mGndCheck__11fopAcM_gc_c[84];
|
||||
extern "C" extern u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mGndCheck__11fopAcM_gc_c[84];
|
||||
extern "C" u8 mStatus__20dStage_roomControl_c[65792];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 data_804505F0[8];
|
||||
extern "C" extern u8 data_80450D68[4];
|
||||
|
||||
+111
-48
@@ -13,6 +13,14 @@
|
||||
|
||||
struct request_of_phase_process_class {};
|
||||
|
||||
struct csXyz {
|
||||
/* 80018BD0 */ ~csXyz();
|
||||
/* 80112C80 */ csXyz();
|
||||
/* 8026745C */ void operator+=(csXyz&);
|
||||
|
||||
static u8 Zero[4];
|
||||
};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
@@ -24,12 +32,6 @@ struct cXyz {
|
||||
/* 802670AC */ void isZero() const;
|
||||
};
|
||||
|
||||
struct csXyz {
|
||||
/* 80018BD0 */ ~csXyz();
|
||||
/* 80112C80 */ csXyz();
|
||||
/* 8026745C */ void operator+=(csXyz&);
|
||||
};
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CD64 */ void transS(cXyz const&);
|
||||
/* 8000CD9C */ void transM(f32, f32, f32);
|
||||
@@ -38,18 +40,20 @@ struct mDoMtx_stack_c {
|
||||
/* 8000CED4 */ void XYZrotM(csXyz const&);
|
||||
/* 8000CF0C */ void ZXYrotS(csXyz const&);
|
||||
/* 8000CF44 */ void ZXYrotM(csXyz const&);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct mDoExt_morf_c {
|
||||
/* 8000FB7C */ void setMorf(f32);
|
||||
};
|
||||
|
||||
struct J3DAnmColor {};
|
||||
|
||||
struct J3DAnmTexPattern {};
|
||||
|
||||
struct J3DAnmTevRegKey {};
|
||||
|
||||
struct J3DAnmColor {};
|
||||
|
||||
struct J3DAnmTextureSRTKey {};
|
||||
|
||||
struct J3DMaterialTable {
|
||||
@@ -79,10 +83,10 @@ struct mDoExt_bpkAnm {
|
||||
/* 8000D518 */ void entry(J3DMaterialTable*, f32);
|
||||
};
|
||||
|
||||
struct J3DAnmTransform {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct J3DAnmTransform {};
|
||||
|
||||
struct mDoExt_bckAnm {
|
||||
/* 8000D7DC */ void init(J3DAnmTransform*, int, int, f32, s16, s16, bool);
|
||||
/* 8000D990 */ void changeBckOnly(J3DAnmTransform*);
|
||||
@@ -116,21 +120,21 @@ struct daNpcT_motionAnmData_c {};
|
||||
|
||||
struct daNpcT_faceMotionAnmData_c {};
|
||||
|
||||
struct J3DAnmTransformKey {};
|
||||
struct dCcD_GObjInf {
|
||||
/* 80084460 */ void ChkTgHit();
|
||||
};
|
||||
|
||||
struct J3DModel {};
|
||||
|
||||
struct _GXColorS10 {};
|
||||
|
||||
struct J3DFrameCtrl {
|
||||
/* 803283FC */ void init(s16);
|
||||
};
|
||||
|
||||
struct _GXColorS10 {};
|
||||
|
||||
struct J3DJoint {};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 80084460 */ void ChkTgHit();
|
||||
};
|
||||
struct J3DAnmTransformKey {};
|
||||
|
||||
struct daNpcT_c {
|
||||
/* 80147FA4 */ void tgHitCallBack(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
@@ -232,6 +236,13 @@ struct daNpcT_c {
|
||||
/* 8014D0A8 */ bool getEyeballLMaterialNo();
|
||||
/* 8014D0B0 */ bool getEyeballRMaterialNo();
|
||||
/* 8014D0B8 */ bool getEyeballMaterialNo();
|
||||
|
||||
static u8 const mCcDObjData[48];
|
||||
static u8 mCcDCyl[68];
|
||||
static u8 mCcDSph[64];
|
||||
static u8 mFindActorPtrs[200];
|
||||
static u8 mSrchName[2 + 2 /* padding */];
|
||||
static u8 mFindCount[4];
|
||||
};
|
||||
|
||||
struct daNpcT_Hermite_c {
|
||||
@@ -355,6 +366,13 @@ struct daNpcF_c {
|
||||
/* 80155BF0 */ void setExpression(int, f32);
|
||||
/* 80155BF4 */ ~daNpcF_c();
|
||||
/* 80155EC8 */ bool setExpressionBtp(int);
|
||||
|
||||
static u8 const mCcDObjInfo[48];
|
||||
static u8 mCcDCyl[68];
|
||||
static u8 mCcDSph[64];
|
||||
static u8 mFindActorPList[400];
|
||||
static u8 mFindCount[4];
|
||||
static u8 mSrchActorName[2 + 2 /* padding */];
|
||||
};
|
||||
|
||||
struct dPath {};
|
||||
@@ -457,6 +475,10 @@ struct daBaseNpc_moveBgActor_c {
|
||||
/* 801503EC */ bool ToFore();
|
||||
/* 801503F4 */ bool ToBack();
|
||||
/* 80155FB0 */ ~daBaseNpc_moveBgActor_c();
|
||||
|
||||
static u8 m_name[4];
|
||||
static u8 m_dzb_id[4];
|
||||
static u8 m_set_func[4];
|
||||
};
|
||||
|
||||
struct daBaseNpc_matAnm_c {
|
||||
@@ -502,6 +524,10 @@ struct daBaseNpc_c {
|
||||
/* 8014F4A4 */ void setAttnPos();
|
||||
/* 8014F4A8 */ void drawOtherMdls();
|
||||
/* 8014F4AC */ bool dbgDraw();
|
||||
|
||||
static u8 const mCcDObj[48];
|
||||
static u8 mCcDCyl[68];
|
||||
static u8 mCcDSph[64];
|
||||
};
|
||||
|
||||
struct daBaseNpc_acMngr_c {
|
||||
@@ -511,6 +537,14 @@ struct daBaseNpc_acMngr_c {
|
||||
/* 80150524 */ ~daBaseNpc_acMngr_c();
|
||||
};
|
||||
|
||||
struct dSv_event_tmp_flag_c {
|
||||
static u8 const tempBitLabels[370 + 2 /* padding */];
|
||||
};
|
||||
|
||||
struct dSv_event_flag_c {
|
||||
static u8 saveBitLabels[1644 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct dSv_event_c {
|
||||
/* 8003498C */ void onEventBit(u16);
|
||||
/* 800349A4 */ void offEventBit(u16);
|
||||
@@ -588,6 +622,10 @@ struct dEvent_manager_c {
|
||||
/* 800483E8 */ void getRunEventName();
|
||||
};
|
||||
|
||||
struct dDlst_shadowControl_c {
|
||||
static u8 mSimpleTexObj[32];
|
||||
};
|
||||
|
||||
struct dCcD_GStts {
|
||||
/* 80083760 */ dCcD_GStts();
|
||||
/* 80083830 */ void Move();
|
||||
@@ -634,6 +672,8 @@ struct dAttention_c {
|
||||
/* 8007353C */ void LockonTarget(s32);
|
||||
/* 80073734 */ void ActionTarget(s32);
|
||||
/* 8014B010 */ void getDistTable(int);
|
||||
|
||||
static u8 dist_table[6552];
|
||||
};
|
||||
|
||||
struct cSGlobe {
|
||||
@@ -686,6 +726,10 @@ struct Z2Creature {
|
||||
/* 802C0420 */ ~Z2Creature();
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
struct J3DTexNoAnm {
|
||||
/* 8003B1F8 */ ~J3DTexNoAnm();
|
||||
};
|
||||
@@ -702,6 +746,10 @@ struct J3DTevColorAnm {
|
||||
/* 8003B1A4 */ ~J3DTevColorAnm();
|
||||
};
|
||||
|
||||
struct J3DSys {
|
||||
static u8 mCurrentMtx[48];
|
||||
};
|
||||
|
||||
struct J3DMaterialAnm {
|
||||
/* 8032C3C4 */ void calc(J3DMaterial*) const;
|
||||
};
|
||||
@@ -1059,7 +1107,25 @@ extern "C" bool ToBack__20daNpcF_MoveBgActor_cFv();
|
||||
extern "C" bool setExpressionBtp__8daNpcF_cFi();
|
||||
extern "C" void __dt__15daNpcF_MatAnm_cFv();
|
||||
extern "C" void __dt__23daBaseNpc_moveBgActor_cFv();
|
||||
extern "C" u8 const mCcDObjData__8daNpcT_c[48];
|
||||
extern "C" u8 const mCcDObj__11daBaseNpc_c[48];
|
||||
extern "C" u8 const mCcDObjInfo__8daNpcF_c[48];
|
||||
extern "C" extern char const* const d_a_d_a_npc__stringBase0;
|
||||
extern "C" u8 mCcDCyl__8daNpcT_c[68];
|
||||
extern "C" u8 mCcDSph__8daNpcT_c[64];
|
||||
extern "C" u8 mCcDCyl__11daBaseNpc_c[68];
|
||||
extern "C" u8 mCcDSph__11daBaseNpc_c[64];
|
||||
extern "C" u8 mCcDCyl__8daNpcF_c[68];
|
||||
extern "C" u8 mCcDSph__8daNpcF_c[64];
|
||||
extern "C" u8 mFindActorPtrs__8daNpcT_c[200];
|
||||
extern "C" u8 mFindActorPList__8daNpcF_c[400];
|
||||
extern "C" u8 mSrchName__8daNpcT_c[2 + 2 /* padding */];
|
||||
extern "C" u8 mFindCount__8daNpcT_c[4];
|
||||
extern "C" u8 m_name__23daBaseNpc_moveBgActor_c[4];
|
||||
extern "C" u8 m_dzb_id__23daBaseNpc_moveBgActor_c[4];
|
||||
extern "C" u8 m_set_func__23daBaseNpc_moveBgActor_c[4];
|
||||
extern "C" u8 mFindCount__8daNpcF_c[4];
|
||||
extern "C" u8 mSrchActorName__8daNpcF_c[2 + 2 /* padding */];
|
||||
extern "C" extern u8 data_80450FF8[8];
|
||||
|
||||
//
|
||||
@@ -1269,11 +1335,11 @@ extern "C" void _restgpr_29();
|
||||
extern "C" void abs();
|
||||
extern "C" void strcmp();
|
||||
extern "C" void strlen();
|
||||
extern "C" extern u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
||||
extern "C" u8 const tempBitLabels__20dSv_event_tmp_flag_c[370 + 2 /* padding */];
|
||||
extern "C" extern void* __vt__12J3DFrameCtrl[3];
|
||||
extern "C" extern void* __vt__8cM3dGPla[3];
|
||||
extern "C" extern u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||
extern "C" extern u8 dist_table__12dAttention_c[6552];
|
||||
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
|
||||
extern "C" u8 dist_table__12dAttention_c[6552];
|
||||
extern "C" extern void* __vt__12dBgS_AcchCir[3];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
extern "C" extern void* __vt__10dCcD_GStts[3];
|
||||
@@ -1281,15 +1347,15 @@ extern "C" extern void* __vt__10cCcD_GStts[3];
|
||||
extern "C" extern void* __vt__12dBgS_ObjAcch[9];
|
||||
extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" extern void* __vt__14J3DMaterialAnm[4];
|
||||
extern "C" extern u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" extern u8 g_env_light[4880];
|
||||
extern "C" extern u8 j3dSys[284];
|
||||
extern "C" extern u8 mCurrentMtx__6J3DSys[48];
|
||||
extern "C" extern u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 mCurrentMtx__6J3DSys[48];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u8 Zero__5csXyz[4];
|
||||
extern "C" u8 Zero__5csXyz[4];
|
||||
extern "C" extern u8 data_80451164[4];
|
||||
extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */];
|
||||
|
||||
@@ -1579,7 +1645,7 @@ SECTION_DATA static void* lit_5258[9] = {
|
||||
};
|
||||
|
||||
/* 803B36D8-803B371C 0107F8 0044+00 0/0 0/0 54/54 .data mCcDCyl__8daNpcT_c */
|
||||
SECTION_DATA extern u8 mCcDCyl__8daNpcT_c[68] = {
|
||||
SECTION_DATA u8 daNpcT_c::mCcDCyl[68] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1588,7 +1654,7 @@ SECTION_DATA extern u8 mCcDCyl__8daNpcT_c[68] = {
|
||||
};
|
||||
|
||||
/* 803B371C-803B375C 01083C 0040+00 0/0 0/0 3/3 .data mCcDSph__8daNpcT_c */
|
||||
SECTION_DATA extern u8 mCcDSph__8daNpcT_c[64] = {
|
||||
SECTION_DATA u8 daNpcT_c::mCcDSph[64] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1596,7 +1662,7 @@ SECTION_DATA extern u8 mCcDSph__8daNpcT_c[64] = {
|
||||
};
|
||||
|
||||
/* 803B375C-803B37A0 01087C 0044+00 0/0 0/0 1/1 .data mCcDCyl__11daBaseNpc_c */
|
||||
SECTION_DATA extern u8 mCcDCyl__11daBaseNpc_c[68] = {
|
||||
SECTION_DATA u8 daBaseNpc_c::mCcDCyl[68] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1605,7 +1671,7 @@ SECTION_DATA extern u8 mCcDCyl__11daBaseNpc_c[68] = {
|
||||
};
|
||||
|
||||
/* 803B37A0-803B37E0 0108C0 0040+00 0/0 0/0 1/1 .data mCcDSph__11daBaseNpc_c */
|
||||
SECTION_DATA extern u8 mCcDSph__11daBaseNpc_c[64] = {
|
||||
SECTION_DATA u8 daBaseNpc_c::mCcDSph[64] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1613,7 +1679,7 @@ SECTION_DATA extern u8 mCcDSph__11daBaseNpc_c[64] = {
|
||||
};
|
||||
|
||||
/* 803B37E0-803B3824 010900 0044+00 0/0 0/0 36/36 .data mCcDCyl__8daNpcF_c */
|
||||
SECTION_DATA extern u8 mCcDCyl__8daNpcF_c[68] = {
|
||||
SECTION_DATA u8 daNpcF_c::mCcDCyl[68] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -1622,7 +1688,7 @@ SECTION_DATA extern u8 mCcDCyl__8daNpcF_c[68] = {
|
||||
};
|
||||
|
||||
/* 803B3824-803B3864 010944 0040+00 0/0 0/0 2/2 .data mCcDSph__8daNpcF_c */
|
||||
SECTION_DATA extern u8 mCcDSph__8daNpcF_c[64] = {
|
||||
SECTION_DATA u8 daNpcF_c::mCcDSph[64] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
@@ -2045,16 +2111,13 @@ asm void daNpcT_c::tgHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80425708-804257D0 052428 00C8+00 4/4 0/0 40/40 .bss mFindActorPtrs__8daNpcT_c */
|
||||
extern u8 mFindActorPtrs__8daNpcT_c[200];
|
||||
u8 mFindActorPtrs__8daNpcT_c[200];
|
||||
u8 daNpcT_c::mFindActorPtrs[200];
|
||||
|
||||
/* 80450FD8-80450FDC 0004D8 0002+02 4/4 0/0 2/2 .sbss mSrchName__8daNpcT_c */
|
||||
extern u8 mSrchName__8daNpcT_c[2 + 2 /* padding */];
|
||||
u8 mSrchName__8daNpcT_c[2 + 2 /* padding */];
|
||||
u8 daNpcT_c::mSrchName[2 + 2 /* padding */];
|
||||
|
||||
/* 80450FDC-80450FE0 0004DC 0004+00 4/4 0/0 42/42 .sbss mFindCount__8daNpcT_c */
|
||||
extern u8 mFindCount__8daNpcT_c[4];
|
||||
u8 mFindCount__8daNpcT_c[4];
|
||||
u8 daNpcT_c::mFindCount[4];
|
||||
|
||||
/* 80147FD4-80148058 142914 0084+00 3/3 0/0 2/2 .text srchActor__8daNpcT_cFPvPv */
|
||||
#pragma push
|
||||
@@ -3201,12 +3264,12 @@ extern "C" asm void func_8014D364(int param_0, int param_1) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80392680-803926B0 01ECE0 0030+00 1/1 0/0 4/4 .rodata mCcDObjData__8daNpcT_c */
|
||||
SECTION_RODATA extern u8 const mCcDObjData__8daNpcT_c[48] = {
|
||||
SECTION_RODATA u8 const daNpcT_c::mCcDObjData[48] = {
|
||||
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, 0x79, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(80392680, &mCcDObjData__8daNpcT_c);
|
||||
COMPILER_STRIP_GATE(80392680, &daNpcT_c::mCcDObjData);
|
||||
|
||||
/* 8014D3D8-8014D538 147D18 0160+00 0/0 1/0 0/0 .text __sinit_d_a_npc_cpp */
|
||||
#pragma push
|
||||
@@ -3732,14 +3795,14 @@ static asm void CheckCreateHeap(fopAc_ac_c* param_0) {
|
||||
/* ############################################################################################## */
|
||||
/* 80450FE0-80450FE4 0004E0 0004+00 2/2 0/0 0/0 .sbss m_name__23daBaseNpc_moveBgActor_c
|
||||
*/
|
||||
static u8 m_name__23daBaseNpc_moveBgActor_c[4];
|
||||
u8 daBaseNpc_moveBgActor_c::m_name[4];
|
||||
|
||||
/* 80450FE4-80450FE8 0004E4 0004+00 2/2 0/0 0/0 .sbss m_dzb_id__23daBaseNpc_moveBgActor_c
|
||||
*/
|
||||
static u8 m_dzb_id__23daBaseNpc_moveBgActor_c[4];
|
||||
u8 daBaseNpc_moveBgActor_c::m_dzb_id[4];
|
||||
|
||||
/* 80450FE8-80450FEC 0004E8 0004+00 2/2 0/0 0/0 .sbss m_set_func__23daBaseNpc_moveBgActor_c */
|
||||
static u8 m_set_func__23daBaseNpc_moveBgActor_c[4];
|
||||
u8 daBaseNpc_moveBgActor_c::m_set_func[4];
|
||||
|
||||
/* 8014F518-8014F60C 149E58 00F4+00 1/1 0/0 0/0 .text
|
||||
* MoveBGCreateHeap__23daBaseNpc_moveBgActor_cFv */
|
||||
@@ -4316,10 +4379,10 @@ asm void daNpcF_c::tgHitCallBack(fopAc_ac_c* param_0, dCcD_GObjInf* param_1, fop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804257E8-80425978 052508 0190+00 4/4 0/0 0/0 .bss mFindActorPList__8daNpcF_c */
|
||||
static u8 mFindActorPList__8daNpcF_c[400];
|
||||
u8 daNpcF_c::mFindActorPList[400];
|
||||
|
||||
/* 80450FF0-80450FF4 0004F0 0004+00 4/4 0/0 0/0 .sbss mFindCount__8daNpcF_c */
|
||||
static u8 mFindCount__8daNpcF_c[4];
|
||||
u8 daNpcF_c::mFindCount[4];
|
||||
|
||||
/* 80152654-801526E8 14CF94 0094+00 0/0 0/0 12/12 .text srchAttnActor1__8daNpcF_cFPvPv */
|
||||
#pragma push
|
||||
@@ -4333,7 +4396,7 @@ asm void daNpcF_c::srchAttnActor1(void* param_0, void* param_1) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80450FF4-80450FF8 0004F4 0002+02 2/2 0/0 0/0 .sbss mSrchActorName__8daNpcF_c */
|
||||
static u8 mSrchActorName__8daNpcF_c[2 + 2 /* padding */];
|
||||
u8 daNpcF_c::mSrchActorName[2 + 2 /* padding */];
|
||||
|
||||
/* 801526E8-8015276C 14D028 0084+00 1/1 0/0 0/0 .text srchActor__8daNpcF_cFPvPv */
|
||||
#pragma push
|
||||
@@ -5123,23 +5186,23 @@ asm daBaseNpc_moveBgActor_c::~daBaseNpc_moveBgActor_c() {
|
||||
/* 803926B0-803926E0 01ED10 0030+00 0/0 0/0 0/0 .rodata mCcDObj__11daBaseNpc_c */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const mCcDObj__11daBaseNpc_c[48] = {
|
||||
SECTION_RODATA u8 const daBaseNpc_c::mCcDObj[48] = {
|
||||
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, 0x79, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(803926B0, &mCcDObj__11daBaseNpc_c);
|
||||
COMPILER_STRIP_GATE(803926B0, &daBaseNpc_c::mCcDObj);
|
||||
#pragma pop
|
||||
|
||||
/* 803926E0-80392710 01ED40 0030+00 0/0 0/0 0/0 .rodata mCcDObjInfo__8daNpcF_c */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const mCcDObjInfo__8daNpcF_c[48] = {
|
||||
SECTION_RODATA u8 const daNpcF_c::mCcDObjInfo[48] = {
|
||||
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, 0x79, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(803926E0, &mCcDObjInfo__8daNpcF_c);
|
||||
COMPILER_STRIP_GATE(803926E0, &daNpcF_c::mCcDObjInfo);
|
||||
#pragma pop
|
||||
|
||||
/* 80450FF8-80451000 0004F8 0008+00 0/0 1/1 0/0 .sbss None */
|
||||
|
||||
+29
-14
@@ -17,6 +17,13 @@ struct daPy_py_c {
|
||||
/* 8015F398 */ void checkMasterSwordEquip();
|
||||
};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 800844F8 */ void GetTgHitObj();
|
||||
/* 8008457C */ void GetTgHitObjSe();
|
||||
};
|
||||
|
||||
struct Quaternion {};
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct cXyz {
|
||||
@@ -25,13 +32,9 @@ struct cXyz {
|
||||
/* 80266B84 */ void operator*(f32) const;
|
||||
/* 80266C18 */ void operator/(f32) const;
|
||||
/* 80266CBC */ void outprod(Vec const&) const;
|
||||
};
|
||||
|
||||
struct Quaternion {};
|
||||
|
||||
struct dCcD_GObjInf {
|
||||
/* 800844F8 */ void GetTgHitObj();
|
||||
/* 8008457C */ void GetTgHitObjSe();
|
||||
static f32 Zero[3];
|
||||
static u8 BaseY[12];
|
||||
};
|
||||
|
||||
struct daObj {
|
||||
@@ -55,13 +58,15 @@ struct dRes_control_c {
|
||||
|
||||
struct dKy_tevstr_c {};
|
||||
|
||||
struct JPABaseEmitter {};
|
||||
|
||||
struct J3DModelData {};
|
||||
|
||||
struct JPABaseEmitter {};
|
||||
|
||||
struct dPa_modelEcallBack {
|
||||
/* 8004AC00 */ void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8, void*, u8,
|
||||
u8);
|
||||
|
||||
static u8 mEcallback[4];
|
||||
};
|
||||
|
||||
struct dPa_levelEcallBack {};
|
||||
@@ -74,6 +79,8 @@ struct dPa_control_c {
|
||||
/* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
|
||||
u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
|
||||
cXyz const*, f32);
|
||||
|
||||
static u8 mTsubo[64];
|
||||
};
|
||||
|
||||
struct dCcD_GAtTgCoCommonBase {
|
||||
@@ -94,6 +101,14 @@ struct Z2SeMgr {
|
||||
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
|
||||
};
|
||||
|
||||
struct Z2AudioMgr {
|
||||
static u8 mAudioMgrPtr[4 + 4 /* padding */];
|
||||
};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
@@ -153,13 +168,13 @@ extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" void acos();
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 mTsubo__13dPa_control_c[64];
|
||||
extern "C" extern f32 Zero__4cXyz[3];
|
||||
extern "C" extern u8 BaseY__4cXyz[12];
|
||||
extern "C" extern u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 mTsubo__13dPa_control_c[64];
|
||||
extern "C" f32 Zero__4cXyz[3];
|
||||
extern "C" u8 BaseY__4cXyz[12];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u8 struct_80450DF0[8];
|
||||
extern "C" extern u8 mEcallback__18dPa_modelEcallBack[4];
|
||||
extern "C" extern u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
extern "C" u8 mEcallback__18dPa_modelEcallBack[4];
|
||||
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
|
||||
+22
-6
@@ -13,6 +13,8 @@
|
||||
|
||||
struct mDoMtx_stack_c {
|
||||
/* 8000CE38 */ void scaleM(f32, f32, f32);
|
||||
|
||||
static u8 now[48];
|
||||
};
|
||||
|
||||
struct fopAc_ac_c {};
|
||||
@@ -63,6 +65,8 @@ struct daPy_py_c {
|
||||
/* 8015F914 */ void setPlayerDamage(int, int);
|
||||
/* 8015F954 */ void setMidnaMotionNum(int);
|
||||
/* 8015F968 */ void setMidnaFaceNum(int);
|
||||
|
||||
static u8 m_midnaActor[4];
|
||||
};
|
||||
|
||||
struct daPy_frameCtrl_c {
|
||||
@@ -108,6 +112,10 @@ struct daAlink_c {
|
||||
/* 800E7AEC */ void setFmChainPosFromOut(fopAc_ac_c*, cXyz*, int);
|
||||
};
|
||||
|
||||
struct dStage_roomControl_c {
|
||||
static u8 mDemoArcName[10 + 2 /* padding */];
|
||||
};
|
||||
|
||||
struct dRes_info_c {};
|
||||
|
||||
struct dRes_control_c {
|
||||
@@ -123,6 +131,10 @@ struct dDlst_list_c {
|
||||
|
||||
struct Vec {};
|
||||
|
||||
struct JMath {
|
||||
static u8 sincosTable_[65536];
|
||||
};
|
||||
|
||||
struct JKRSolidHeap {};
|
||||
|
||||
struct JKRHeap {
|
||||
@@ -137,6 +149,10 @@ struct J3DSys {
|
||||
/* 8031073C */ void reinitGX();
|
||||
};
|
||||
|
||||
struct J3DShape {
|
||||
static u8 sOldVcdVatCmd[4];
|
||||
};
|
||||
|
||||
struct J3DFrameCtrl {
|
||||
/* 803289CC */ void update();
|
||||
};
|
||||
@@ -221,6 +237,7 @@ extern "C" void setMidnaMotionNum__9daPy_py_cFi();
|
||||
extern "C" void setMidnaFaceNum__9daPy_py_cFi();
|
||||
extern "C" void daPy_addCalcShort__FPsssss();
|
||||
extern "C" extern void* __vt__18daPy_sightPacket_c[4 + 1 /* padding */];
|
||||
extern "C" u8 m_midnaActor__9daPy_py_c[4];
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -280,13 +297,13 @@ extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__18mDoExt_transAnmBas[5];
|
||||
extern "C" extern void* __vt__18J3DAnmTransformKey[5];
|
||||
extern "C" extern u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mDemoArcName__20dStage_roomControl_c[10 + 2 /* padding */];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" extern u8 j3dSys[284];
|
||||
extern "C" extern u8 sincosTable___5JMath[65536];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u8 sOldVcdVatCmd__8J3DShape[4];
|
||||
extern "C" u8 sOldVcdVatCmd__8J3DShape[4];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -362,8 +379,7 @@ asm void daPy_boomerangMove_c::initOffset(cXyz const* param_0) {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80451018-8045101C 000518 0004+00 2/2 33/33 103/103 .sbss m_midnaActor__9daPy_py_c */
|
||||
extern u8 m_midnaActor__9daPy_py_c[4];
|
||||
u8 m_midnaActor__9daPy_py_c[4];
|
||||
u8 daPy_py_c::m_midnaActor[4];
|
||||
|
||||
/* 8045101C-80451020 -00001 0004+00 1/1 1/1 1/1 .sbss None */
|
||||
/* 8045101C 0002+00 data_8045101C m_dropAngleY__20daPy_boomerangMove_c */
|
||||
|
||||
@@ -16,6 +16,8 @@ struct fopAc_ac_c {};
|
||||
struct daShopItem_c {
|
||||
/* 80037C14 */ void getRotateP();
|
||||
/* 80037C1C */ void getPosP();
|
||||
|
||||
static void* const mData[276];
|
||||
};
|
||||
|
||||
struct daItemBase_c {
|
||||
@@ -29,6 +31,7 @@ struct daItemBase_c {
|
||||
extern "C" void getRotateP__12daShopItem_cFv();
|
||||
extern "C" void getPosP__12daShopItem_cFv();
|
||||
extern "C" void CheckShopItemCreateHeap__FP10fopAc_ac_c();
|
||||
extern "C" void* const mData__12daShopItem_c[276];
|
||||
extern "C" extern char const* const d_a_d_a_shop_item_static__stringBase0;
|
||||
|
||||
//
|
||||
@@ -63,7 +66,7 @@ asm void daShopItem_c::getPosP() {
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803792E8-80379738 -00001 0450+00 1/1 0/0 9/9 .rodata mData__12daShopItem_c */
|
||||
SECTION_RODATA extern void* const mData__12daShopItem_c[276] = {
|
||||
SECTION_RODATA void* const daShopItem_c::mData[276] = {
|
||||
(void*)&d_a_d_a_shop_item_static__stringBase0,
|
||||
(void*)0x0003FFFF,
|
||||
(void*)0xFFFFFFFF,
|
||||
@@ -341,7 +344,7 @@ SECTION_RODATA extern void* const mData__12daShopItem_c[276] = {
|
||||
(void*)0x0000000C,
|
||||
(void*)NULL,
|
||||
};
|
||||
COMPILER_STRIP_GATE(803792E8, &mData__12daShopItem_c);
|
||||
COMPILER_STRIP_GATE(803792E8, &daShopItem_c::mData);
|
||||
|
||||
/* 80037C24-80037C7C 032564 0058+00 0/0 0/0 1/1 .text CheckShopItemCreateHeap__FP10fopAc_ac_c */
|
||||
#pragma push
|
||||
|
||||
Reference in New Issue
Block a user