tp/src/d/d_k_wmark.cpp

313 lines
9.5 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: d/d_k_wmark
//
#include "d/d_k_wmark.h"
#include "dol2asm.h"
//
// Types:
//
struct mDoMtx_stack_c {
static u8 now[48];
};
struct mDoLib_clipper {
static u8 mClipper[92];
};
struct kankyo_class {};
struct cXyz {
/* 80009184 */ ~cXyz();
/* 80267128 */ void atan2sX_Z() const;
};
struct fopAcM_gc_c {
/* 8001DCBC */ void gndCheck(cXyz const*);
static u8 mGndCheck[84];
static f32 mGroundY;
};
struct dkWmark_c {
/* 80261640 */ ~dkWmark_c();
/* 802616C4 */ void setMatrix();
static u8 m_nowID[4];
};
struct dKy_tevstr_c {};
struct J3DModelData {};
struct dScnKy_env_light_c {
/* 801A37C4 */ void settingTevStruct(int, cXyz*, dKy_tevstr_c*);
/* 801A4DA0 */ void setLightTevColorType_MAJI(J3DModelData*, dKy_tevstr_c*);
};
struct dRes_info_c {};
struct dRes_control_c {
/* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int);
};
struct cBgS_PolyInfo {};
struct dBgS {
/* 80074ABC */ void ChkMoveBG(cBgS_PolyInfo const&);
};
struct cM3dGPla {};
struct cBgS {
/* 80074744 */ void GetTriPla(cBgS_PolyInfo const&, cM3dGPla*) const;
};
struct Vec {};
struct JMath {
static u8 sincosTable_[65536];
};
struct JKRSolidHeap {};
struct J3DUClipper {
/* 802738FC */ void clip(f32 const (*)[4], Vec, f32) const;
};
struct J3DModel {};
struct J3DLightObj {
/* 80018C0C */ J3DLightObj();
};
struct J3DLightInfo {
/* 803256C4 */ void operator=(J3DLightInfo const&);
};
//
// Forward References:
//
extern "C" static void dkWmark_Create__FP12kankyo_class();
extern "C" void __dt__9dkWmark_cFv();
extern "C" static void dkWmark_Delete__FP9dkWmark_c();
extern "C" void setMatrix__9dkWmark_cFv();
extern "C" static void dkWmark_Execute__FP9dkWmark_c();
extern "C" static void dkWmark_Draw__FP9dkWmark_c();
extern "C" extern char const* const d_d_k_wmark__stringBase0;
extern "C" extern void* g_profile_WMARK[10 + 1 /* padding */];
extern "C" u8 m_nowID__9dkWmark_c[4];
//
// External References:
//
extern "C" void __dt__4cXyzFv();
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
extern "C" void mDoExt_createSolidHeapFromGameToCurrent__FUlUl();
extern "C" void mDoExt_adjustSolidHeap__FP12JKRSolidHeap();
extern "C" void mDoExt_destroySolidHeap__FP12JKRSolidHeap();
extern "C" void mDoExt_restoreCurrentHeap__Fv();
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
extern "C" void __ct__11J3DLightObjFv();
extern "C" void gndCheck__11fopAcM_gc_cFPC4cXyz();
extern "C" void fopKyM_Delete__FPv();
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
extern "C" void GetTriPla__4cBgSCFRC13cBgS_PolyInfoP8cM3dGPla();
extern "C" void ChkMoveBG__4dBgSFRC13cBgS_PolyInfo();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void dKy_tevstr_init__FP12dKy_tevstr_cScUc();
extern "C" void atan2sX_Z__4cXyzCFv();
extern "C" void cM_atan2s__Fff();
extern "C" void clip__11J3DUClipperCFPA4_Cf3Vecf();
extern "C" void __dl__FPv();
extern "C" void __as__12J3DLightInfoFRC12J3DLightInfo();
extern "C" void PSMTXCopy();
extern "C" void PSMTXTrans();
extern "C" void PSVECSquareMag();
extern "C" void __register_global_object();
extern "C" void __construct_array();
extern "C" void _savegpr_26();
extern "C" void _restgpr_26();
extern "C" void abs();
extern "C" extern u8 const j3dDefaultLightInfo[52];
extern "C" extern void* __vt__8cM3dGPla[3];
extern "C" extern void* g_fopKy_Method[5 + 1 /* padding */];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 mClipper__14mDoLib_clipper[92];
extern "C" u8 mGndCheck__11fopAcM_gc_c[84];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_env_light[4880];
extern "C" extern u8 j3dSys[284];
extern "C" u8 sincosTable___5JMath[65536];
extern "C" extern u32 __float_nan;
extern "C" f32 mGroundY__11fopAcM_gc_c;
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
//
// Declarations:
//
/* ############################################################################################## */
/* 8039A494-8039A494 026AF4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_8039A494 = "Alink";
/* @stringBase0 padding */
SECTION_DEAD static char const* const pad_8039A49A = "\0\0\0\0\0";
#pragma pop
/* 80430C90-80430C9C 05D9B0 000C+00 1/1 0/0 0/0 .bss @3644 */
static u8 lit_3644[12];
/* 80430C9C-80430CA8 05D9BC 000C+00 1/1 0/0 0/0 .bss
* wolfFootScale$localstatic3$create__9dkWmark_cFv */
static f32 data_80430C9C[3];
/* 80451130-80451134 000630 0004+00 2/2 0/0 0/0 .sbss m_nowID__9dkWmark_c */
u8 dkWmark_c::m_nowID[4];
/* 80451134-80451138 000634 0004+00 1/1 0/0 0/0 .sbss None */
static u8 data_80451134[4];
/* 80454FB0-80454FB4 0035B0 0004+00 1/1 0/0 0/0 .sdata2 @3718 */
SECTION_SDATA2 static f32 lit_3718 = 11.0f / 10.0f;
/* 80454FB4-80454FB8 0035B4 0004+00 2/2 0/0 0/0 .sdata2 @3719 */
SECTION_SDATA2 static f32 lit_3719 = 1.0f;
/* 80454FB8-80454FBC 0035B8 0004+00 1/1 0/0 0/0 .sdata2 @3720 */
SECTION_SDATA2 static f32 lit_3720 = 3.0f / 5.0f;
/* 8026141C-80261640 25BD5C 0224+00 1/0 0/0 0/0 .text dkWmark_Create__FP12kankyo_class */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dkWmark_Create(kankyo_class* param_0) {
nofralloc
#include "asm/d/d_k_wmark/dkWmark_Create__FP12kankyo_class.s"
}
#pragma pop
/* 80261640-8026169C 25BF80 005C+00 1/1 0/0 0/0 .text __dt__9dkWmark_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dkWmark_c::~dkWmark_c() {
nofralloc
#include "asm/d/d_k_wmark/__dt__9dkWmark_cFv.s"
}
#pragma pop
/* 8026169C-802616C4 25BFDC 0028+00 1/0 0/0 0/0 .text dkWmark_Delete__FP9dkWmark_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dkWmark_Delete(dkWmark_c* param_0) {
nofralloc
#include "asm/d/d_k_wmark/dkWmark_Delete__FP9dkWmark_c.s"
}
#pragma pop
/* ############################################################################################## */
/* 80454FBC-80454FC0 0035BC 0004+00 1/1 0/0 0/0 .sdata2 @3844 */
SECTION_SDATA2 static f32 lit_3844 = 100.0f;
/* 80454FC0-80454FC8 0035C0 0004+04 2/2 0/0 0/0 .sdata2 @3845 */
SECTION_SDATA2 static f32 lit_3845[1 + 1 /* padding */] = {
0.0f,
/* padding */
0.0f,
};
/* 80454FC8-80454FD0 0035C8 0008+00 1/1 0/0 0/0 .sdata2 @3846 */
SECTION_SDATA2 static f64 lit_3846 = 0.5;
/* 80454FD0-80454FD8 0035D0 0008+00 1/1 0/0 0/0 .sdata2 @3847 */
SECTION_SDATA2 static f64 lit_3847 = 3.0;
/* 80454FD8-80454FE0 0035D8 0008+00 1/1 0/0 0/0 .sdata2 @3848 */
SECTION_SDATA2 static u8 lit_3848[8] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 802616C4-80261964 25C004 02A0+00 2/2 0/0 0/0 .text setMatrix__9dkWmark_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dkWmark_c::setMatrix() {
nofralloc
#include "asm/d/d_k_wmark/setMatrix__9dkWmark_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80454FE0-80454FE4 0035E0 0004+00 1/1 0/0 0/0 .sdata2 @3873 */
SECTION_SDATA2 static f32 lit_3873 = 1.0f / 50.0f;
/* 80261964-80261A18 25C2A4 00B4+00 1/0 0/0 0/0 .text dkWmark_Execute__FP9dkWmark_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dkWmark_Execute(dkWmark_c* param_0) {
nofralloc
#include "asm/d/d_k_wmark/dkWmark_Execute__FP9dkWmark_c.s"
}
#pragma pop
/* ############################################################################################## */
/* 8039A488-8039A494 026AE8 000C+00 1/1 0/0 0/0 .rodata kColor$localstatic3$draw__9dkWmark_cFv */
SECTION_RODATA static u8 const data_8039A488[12] = {
0x00, 0x00, 0x00, 0x82, 0x5F, 0x4B, 0x32, 0x3C, 0x64, 0x6E, 0x78, 0x28,
};
COMPILER_STRIP_GATE(0x8039A488, &data_8039A488);
/* 80454FE4-80454FE8 0035E4 0004+00 1/1 0/0 0/0 .sdata2 @3906 */
SECTION_SDATA2 static f32 lit_3906 = 50.0f;
/* 80454FE8-80454FF0 0035E8 0008+00 1/1 0/0 0/0 .sdata2 @3908 */
SECTION_SDATA2 static f64 lit_3908 = 4503599627370496.0 /* cast u32 to float */;
/* 80261A18-80261B54 25C358 013C+00 1/0 0/0 0/0 .text dkWmark_Draw__FP9dkWmark_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dkWmark_Draw(dkWmark_c* param_0) {
nofralloc
#include "asm/d/d_k_wmark/dkWmark_Draw__FP9dkWmark_c.s"
}
#pragma pop
/* ############################################################################################## */
/* 803C3430-803C3444 -00001 0014+00 1/0 0/0 0/0 .data l_dkWmark_Method */
SECTION_DATA static void* l_dkWmark_Method[5] = {
(void*)dkWmark_Create__FP12kankyo_class, (void*)dkWmark_Delete__FP9dkWmark_c,
(void*)dkWmark_Execute__FP9dkWmark_c, (void*)NULL,
(void*)dkWmark_Draw__FP9dkWmark_c,
};
/* 803C3444-803C3470 -00001 0028+04 0/0 0/0 1/0 .data g_profile_WMARK */
SECTION_DATA extern void* g_profile_WMARK[10 + 1 /* padding */] = {
(void*)0xFFFFFFFD,
(void*)0x0009FFFD,
(void*)0x03030000,
(void*)&g_fpcLf_Method,
(void*)0x00000498,
(void*)NULL,
(void*)NULL,
(void*)&g_fopKy_Method,
(void*)0x02F80000,
(void*)&l_dkWmark_Method,
/* padding */
NULL,
};
/* 8039A494-8039A494 026AF4 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */