Files
tp/src/d/d_drawlist.cpp
T
lepelog 202e3c51c0 J2DPane (#168)
* most of J2DPane

* finish j2dpane

* cleanup

* use J2DBlendInfo
2021-12-11 23:39:53 +01:00

3154 lines
70 KiB
C++

//
// Generated By: dol2asm
// Translation Unit: d/d_drawlist
//
#include "d/d_drawlist.h"
#include "JSystem/J3DGraphBase/J3DShape.h"
#include "JSystem/J3DGraphBase/J3DSys.h"
#include "dol2asm.h"
#include "dolphin/mtx/mtx44.h"
#include "dolphin/mtx/mtxvec.h"
#include "dolphin/types.h"
//
// Types:
//
struct mDoMtx_stack_c {
/* 8000CE38 */ void scaleM(f32, f32, f32);
static u8 now[48];
};
struct mDoLib_clipper {
static u8 mClipper[92];
static f32 mSystemFar;
static f32 mFovyRate;
};
struct mDoGph_gInf_c {
static u8 mBackColor[4];
};
struct dDlst_effectLine_c {
/* 80053E9C */ void draw();
/* 800541F4 */ void update(cXyz&, _GXColor&, u16, u16, u16, u16, f32, f32, f32, f32);
};
struct dDlst_blo_c {
/* 80053B64 */ void draw();
};
struct dDlst_2Dm_c {
/* 8005312C */ void draw();
};
struct dDlst_2D_c {
/* 80053A00 */ dDlst_2D_c(ResTIMG*, s16, s16, s16, s16, u8);
/* 80053A9C */ void draw();
};
struct dDlst_2DTri_c {
/* 80051AF0 */ void draw();
};
struct dDlst_2DT_c {
/* 80051F98 */ void draw();
};
struct dDlst_2DT2_c {
/* 80052354 */ void draw();
/* 80052B00 */ dDlst_2DT2_c();
/* 80052B4C */ void init(ResTIMG*, f32, f32, f32, f32, u8, u8, u8, f32, f32);
};
struct dDlst_2DQuad_c {
/* 80051CF0 */ void draw();
};
struct dDlst_2DPoint_c {
/* 80051E5C */ void draw();
};
struct dDlst_2DMt_c {
/* 8005364C */ void draw();
};
struct dDlst_2DM_c {
/* 80052C58 */ void draw();
};
class cM_rnd_c {
public:
/* 80053CDC */ void init(int, int, int);
/* 80053CEC */ f32 get();
/* 80053DE0 */ f32 getF(f32);
/* 80053E18 */ f32 getFX(f32);
/* 80053E60 */ f32 getValue(f32, f32);
/* 0x0 */ int seed0;
/* 0x4 */ int seed1;
/* 0x8 */ int seed2;
};
struct cBgS_ShdwDraw {
/* 80267F88 */ cBgS_ShdwDraw();
/* 80267FD0 */ ~cBgS_ShdwDraw();
/* 80268048 */ void Set(cXyz&, cXyz&);
};
struct cBgS {
/* 80074840 */ void ShdwDraw(cBgS_ShdwDraw*);
};
struct ShdwDrawPoly_c {
/* 80054A6C */ ~ShdwDrawPoly_c();
};
struct JMath {
static u8 sincosTable_[65536];
};
struct J3DUClipper {
/* 8027378C */ void calcViewFrustum();
/* 80273A44 */ void clip(f32 const (*)[4], Vec*, Vec*) const;
};
struct J2DPicture {
/* 800539DC */ void getTexture(u8) const;
/* 80053C44 */ void setWhite(JUtility::TColor);
/* 80053C6C */ void setBlack(JUtility::TColor);
/* 802FC050 */ J2DPicture();
};
//
// Forward References:
//
extern "C" void setViewPort__14dDlst_window_cFffffff();
extern "C" void setScissor__14dDlst_window_cFffff();
extern "C" void draw__13dDlst_2DTri_cFv();
extern "C" void draw__14dDlst_2DQuad_cFv();
extern "C" void draw__15dDlst_2DPoint_cFv();
extern "C" void draw__11dDlst_2DT_cFv();
extern "C" void draw__12dDlst_2DT2_cFv();
extern "C" void __ct__12dDlst_2DT2_cFv();
extern "C" void init__12dDlst_2DT2_cFP7ResTIMGffffUcUcUcff();
extern "C" void draw__11dDlst_2DM_cFv();
extern "C" void draw__11dDlst_2Dm_cFv();
extern "C" void draw__12dDlst_2DMt_cFv();
extern "C" void getTexture__10J2DPictureCFUc();
extern "C" void __ct__10dDlst_2D_cFP7ResTIMGssssUc();
extern "C" void draw__10dDlst_2D_cFv();
extern "C" void draw__11dDlst_blo_cFv();
extern "C" void clearAnmTransform__9J2DScreenFv();
extern "C" void calcMtx__7J2DPaneFv();
extern "C" void makeMatrix__7J2DPaneFff();
extern "C" s32 getTypeID__7J2DPaneCFv();
extern "C" void setWhite__10J2DPictureFQ28JUtility6TColor();
extern "C" void setBlack__10J2DPictureFQ28JUtility6TColor();
extern "C" void __dt__10J2DAnmBaseFv();
extern "C" void init__8cM_rnd_cFiii();
extern "C" void get__8cM_rnd_cFv();
extern "C" void getF__8cM_rnd_cFf();
extern "C" void getFX__8cM_rnd_cFf();
extern "C" void getValue__8cM_rnd_cFff();
extern "C" void draw__18dDlst_effectLine_cFv();
extern "C" void update__18dDlst_effectLine_cFR4cXyzR8_GXColorUsUsUsUsffff();
extern "C" void set__18dDlst_shadowPoly_cFP10cBgD_Vtx_tUsUsUsP8cM3dGPla();
extern "C" void draw__18dDlst_shadowPoly_cFv();
extern "C" static void J3DDrawBuffer__create__FUl();
extern "C" void reset__18dDlst_shadowReal_cFv();
extern "C" void imageDraw__18dDlst_shadowReal_cFPA4_f();
extern "C" void draw__18dDlst_shadowReal_cFv();
extern "C" static void psdRealCallBack__FP13cBgS_ShdwDrawP10cBgD_Vtx_tiiiP8cM3dGPla();
extern "C" static void realPolygonCheck__FP4cXyzffP4cXyzP18dDlst_shadowPoly_c();
extern "C" void __dt__14ShdwDrawPoly_cFv();
extern "C" static void setkankyoShadow__FP12dKy_tevstr_cPf();
extern "C" void setShadowRealMtx__18dDlst_shadowReal_cFP4cXyzP4cXyzfffP12dKy_tevstr_c();
extern "C" void set__18dDlst_shadowReal_cFUlP8J3DModelP4cXyzffP12dKy_tevstr_cff();
extern "C" void add__18dDlst_shadowReal_cFP8J3DModel();
extern "C" void draw__20dDlst_shadowSimple_cFv();
extern "C" void set__20dDlst_shadowSimple_cFP4cXyzffP4cXyzsfP9_GXTexObj();
extern "C" void init__21dDlst_shadowControl_cFv();
extern "C" void reset__21dDlst_shadowControl_cFv();
extern "C" void imageDraw__21dDlst_shadowControl_cFPA4_f();
extern "C" void draw__21dDlst_shadowControl_cFPA4_f();
extern "C" void setReal__21dDlst_shadowControl_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c();
extern "C" void addReal__21dDlst_shadowControl_cFUlP8J3DModel();
extern "C" void setSimple__21dDlst_shadowControl_cFP4cXyzffP4cXyzsfP9_GXTexObj();
extern "C" void setSimpleTex__21dDlst_shadowControl_cFPC7ResTIMG();
extern "C" void newData__13dDlst_peekZ_cFssPUl();
extern "C" void peekData__13dDlst_peekZ_cFv();
extern "C" void __ct__12dDlst_list_cFv();
extern "C" void __ct__26mDoExt_3DlineMatSortPacketFv();
extern "C" void __dt__18dDlst_shadowReal_cFv();
extern "C" void __dt__17dDlst_shadowTri_cFv();
extern "C" void __ct__18dDlst_shadowReal_cFv();
extern "C" void __ct__17dDlst_shadowTri_cFv();
extern "C" void __ct__20dDlst_shadowSimple_cFv();
extern "C" void init__12dDlst_list_cFv();
extern "C" void __dt__12dDlst_list_cFv();
extern "C" void reset__12dDlst_list_cFv();
extern "C" void entryZSortXluDrawList__12dDlst_list_cFP13J3DDrawBufferP9J3DPacketR4cXyz();
extern "C" void drawOpaDrawList__12dDlst_list_cFP13J3DDrawBuffer();
extern "C" void drawXluDrawList__12dDlst_list_cFP13J3DDrawBuffer();
extern "C" void drawOpaListItem3d__12dDlst_list_cFv();
extern "C" void drawXluListItem3d__12dDlst_list_cFv();
extern "C" void set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c();
extern "C" void draw__12dDlst_list_cFPP12dDlst_base_cPP12dDlst_base_c();
extern "C" void wipeIn__12dDlst_list_cFfR8_GXColor();
extern "C" void wipeIn__12dDlst_list_cFf();
extern "C" void calcWipe__12dDlst_list_cFv();
extern "C" void getTri__22dDlst_shadowRealPoly_cFv();
extern "C" s32 getTriMax__22dDlst_shadowRealPoly_cFv();
extern "C" void searchUpdateMaterialID__10J2DAnmBaseFP9J2DScreen();
extern "C" void __sinit_d_drawlist_cpp();
extern "C" extern char const* const d_d_drawlist__stringBase0;
extern "C" extern void* __vt__11dDlst_2DT_c[3];
extern "C" extern void* __vt__15dDlst_2DPoint_c[3];
extern "C" extern void* __vt__14dDlst_2DQuad_c[3];
extern "C" extern void* __vt__13dDlst_2DTri_c[3];
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
extern "C" u8 mWipeDlst__12dDlst_list_c[72];
extern "C" u8 mWipeColor__12dDlst_list_c[4];
extern "C" f32 mWipeRate__12dDlst_list_c;
extern "C" f32 mWipeSpeed__12dDlst_list_c[1 + 1 /* padding */];
extern "C" extern u8 data_80450EE0[8];
//
// External References:
//
extern "C" void __dt__4cXyzFv();
extern "C" void mDoMtx_YrotM__FPA4_fs();
extern "C" void mDoMtx_lookAt__FPA4_fPC3VecPC3Vecs();
extern "C" void scaleM__14mDoMtx_stack_cFfff();
extern "C" void __ct__4cXyzFv();
extern "C" void __dt__26mDoExt_3DlineMatSortPacketFv();
extern "C" void mDoLib_setResTimgObj__FPC7ResTIMGP9_GXTexObjUlP10_GXTlutObj();
extern "C" void ShdwDraw__4cBgSFP13cBgS_ShdwDraw();
extern "C" void dKy_plight_near_pos__Fv();
extern "C" void dKy_GxFog_set__Fv();
extern "C" void __mi__4cXyzCFRC3Vec();
extern "C" void normalize__4cXyzFv();
extern "C" void isZero__4cXyzCFv();
extern "C" void __ct__13cBgS_ShdwDrawFv();
extern "C" void __dt__13cBgS_ShdwDrawFv();
extern "C" void Set__13cBgS_ShdwDrawFR4cXyzR4cXyz();
extern "C" void SetCallback__13cBgS_ShdwDrawFPFP13cBgS_ShdwDrawP10cBgD_Vtx_tiiiP8cM3dGPla_i();
extern "C" void cLib_chaseUC__FPUcUcUc();
extern "C" void calcViewFrustum__11J3DUClipperFv();
extern "C" void clip__11J3DUClipperCFPA4_CfP3VecP3Vec();
extern "C" void* __nw__FUl();
extern "C" void* __nwa__FUli();
extern "C" void __dl__FPv();
extern "C" void getGlbResource__10JKRArchiveFUlPCcP10JKRArchive();
extern "C" void clearAnmTransform__7J2DPaneFv();
extern "C" void draw__9J2DScreenFffPC14J2DGrafContext();
extern "C" void __ct__10J2DPictureFv();
extern "C" void reinitGX__6J3DSysFv();
extern "C" void drawFast__14J3DShapePacketFv();
extern "C" void loadPreDrawSetting__8J3DShapeCFv();
extern "C" void initialize__13J3DDrawBufferFv();
extern "C" void allocBuffer__13J3DDrawBufferFUl();
extern "C" void __dt__13J3DDrawBufferFv();
extern "C" void frameInit__13J3DDrawBufferFv();
extern "C" void entryImm__13J3DDrawBufferFP9J3DPacketUs();
extern "C" void draw__13J3DDrawBufferCFv();
extern "C" void GXClearVtxDesc();
extern "C" void GXPixModeSync();
extern "C" void GXPeekZ();
extern "C" void GXGetTexObjWidth();
extern "C" void GXGetTexObjHeight();
extern "C" void GXGetTexObjWrapS();
extern "C" void GXGetTexObjWrapT();
extern "C" void GXGetTexObjTlut();
extern "C" void __destroy_arr();
extern "C" void __construct_array();
extern "C" void _savefpr_26();
extern "C" void _restfpr_26();
extern "C" void _savegpr_22();
extern "C" void _savegpr_23();
extern "C" void _savegpr_24();
extern "C" void _savegpr_25();
extern "C" void _savegpr_26();
extern "C" void _savegpr_27();
extern "C" void _savegpr_28();
extern "C" void _savegpr_29();
extern "C" void _restgpr_22();
extern "C" void _restgpr_23();
extern "C" void _restgpr_24();
extern "C" void _restgpr_25();
extern "C" void _restgpr_26();
extern "C" void _restgpr_27();
extern "C" void _restgpr_28();
extern "C" void _restgpr_29();
extern "C" extern u8 g_mDoMtx_identity[48 + 24 /* padding */];
extern "C" extern void* __vt__26mDoExt_3DlineMatSortPacket[5];
extern "C" extern void* __vt__12dDlst_base_c[3];
extern "C" extern void* __vt__9J3DPacket[5];
extern "C" u8 now__14mDoMtx_stack_c[48];
extern "C" u8 mClipper__14mDoLib_clipper[92];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 g_env_light[4880];
extern "C" extern u8 g_envHIO[68];
extern "C" u8 sincosTable___5JMath[65536];
extern "C" u8 mBackColor__13mDoGph_gInf_c[4];
extern "C" extern u8 g_clearColor[4];
extern "C" extern u32 g_blackColor;
extern "C" extern u32 g_whiteColor;
extern "C" f32 mSystemFar__14mDoLib_clipper;
extern "C" f32 mFovyRate__14mDoLib_clipper;
extern "C" extern f32 G_CM3D_F_ABS_MIN[1 + 1 /* padding */];
extern "C" u8 sOldVcdVatCmd__8J3DShape[4];
//
// Declarations:
//
/* 80051AC0-80051ADC 04C400 001C+00 0/0 3/3 0/0 .text setViewPort__14dDlst_window_cFffffff */
void dDlst_window_c::setViewPort(f32 param_0, f32 param_1, f32 param_2, f32 param_3, f32 param_4,
f32 param_5) {
mViewport = param_0;
field_0x04 = param_1;
field_0x08 = param_2;
field_0x0C = param_3;
field_0x10 = param_4;
field_0x14 = param_5;
}
/* 80051ADC-80051AF0 04C41C 0014+00 0/0 4/4 0/0 .text setScissor__14dDlst_window_cFffff
*/
void dDlst_window_c::setScissor(f32 param_0, f32 param_1, f32 param_2, f32 param_3) {
mScissor = param_0;
field_0x1c = param_1;
field_0x20 = param_2;
field_0x24 = param_3;
}
/* 80051AF0-80051CF0 04C430 0200+00 1/0 0/0 0/0 .text draw__13dDlst_2DTri_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DTri_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__13dDlst_2DTri_cFv.s"
}
#pragma pop
/* 80051CF0-80051E5C 04C630 016C+00 1/0 0/0 0/0 .text draw__14dDlst_2DQuad_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DQuad_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__14dDlst_2DQuad_cFv.s"
}
#pragma pop
/* 80051E5C-80051F98 04C79C 013C+00 1/0 0/0 0/0 .text draw__15dDlst_2DPoint_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DPoint_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__15dDlst_2DPoint_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80450648-8045064C 0000C8 0004+00 1/1 0/0 0/0 .sdata l_color$4033 */
SECTION_SDATA static _GXColor l_color_4033 = {
0xFF,
0xFF,
0xFF,
0xE0,
};
/* 80452008-8045200C 000608 0004+00 4/4 0/0 0/0 .sdata2 @4072 */
SECTION_SDATA2 static f32 lit_4072 = 0.5f;
/* 8045200C-80452010 00060C 0004+00 1/1 0/0 0/0 .sdata2 @4073 */
SECTION_SDATA2 static f32 lit_4073 = 32768.0f;
/* 80452010-80452018 000610 0004+04 10/10 0/0 0/0 .sdata2 @4074 */
SECTION_SDATA2 static f32 lit_4074[1 + 1 /* padding */] = {
0.0f,
/* padding */
0.0f,
};
/* 80452018-80452020 000618 0008+00 8/8 0/0 0/0 .sdata2 @4076 */
SECTION_SDATA2 static f64 lit_4076 = 4503599627370496.0 /* cast u32 to float */;
/* 80452020-80452028 000620 0008+00 5/5 0/0 0/0 .sdata2 @4079 */
SECTION_SDATA2 static f64 lit_4079 = 4503601774854144.0 /* cast s32 to float */;
/* 80051F98-80052354 04C8D8 03BC+00 1/0 0/0 0/0 .text draw__11dDlst_2DT_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DT_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__11dDlst_2DT_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452028-8045202C 000628 0004+00 10/10 0/0 0/0 .sdata2 @4270 */
SECTION_SDATA2 static f32 lit_4270 = 1.0f;
/* 80052354-80052B00 04CC94 07AC+00 1/0 0/0 0/0 .text draw__12dDlst_2DT2_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DT2_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__12dDlst_2DT2_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 803A87A0-803A87C0 0058C0 000C+14 2/2 0/0 0/0 .data cNullVec__6Z2Calc */
SECTION_DATA static u8 cNullVec__6Z2Calc[12 + 20 /* padding */] = {
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
/* 803A87C0-803A8800 0058E0 003C+04 0/0 0/0 0/0 .data l_frontZMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_frontZMat[60 + 4 /* padding */] = {
0x61,
0x40,
0x00,
0x00,
0x07,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x40,
0x10,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8800-803A882C 005920 002A+02 0/0 0/0 0/0 .data l_frontNoZSubMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_frontNoZSubMat[42 + 2 /* padding */] = {
0x61,
0x40,
0x00,
0x00,
0x06,
0x61,
0x41,
0x00,
0x09,
0x35,
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,
/* padding */
0x00,
0x00,
};
#pragma pop
/* 803A882C-803A88A0 00594C 0060+14 0/1 0/0 0/0 .data l_shadowVolPos */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowVolPos[96 + 20 /* padding */] = {
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xC3,
0x96,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xC3,
0x96,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xC3,
0x96,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xC3,
0x96,
0x00,
0x00,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A88A0-803A88E0 0059C0 003B+05 0/0 0/0 0/0 .data l_shadowVolDL */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowVolDL[59 + 5 /* padding */] = {
0x80,
0x00,
0x18,
0x06,
0x02,
0x03,
0x07,
0x00,
0x04,
0x05,
0x01,
0x06,
0x04,
0x00,
0x02,
0x07,
0x05,
0x04,
0x06,
0x03,
0x01,
0x05,
0x07,
0x02,
0x00,
0x01,
0x03,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A88E0-803A8940 005A00 005A+06 1/1 0/0 0/0 .data l_shadowProjMat */
SECTION_DATA static u8 l_shadowProjMat[90 + 6 /* padding */] = {
0x61,
0x28,
0x38,
0x03,
0xC0,
0x61,
0xC0,
0x08,
0xFF,
0xFF,
0x61,
0xC1,
0x08,
0xE6,
0x70,
0x61,
0x43,
0x00,
0x00,
0x01,
0x61,
0x40,
0x00,
0x00,
0x07,
0x61,
0x41,
0x00,
0x04,
0xAD,
0x61,
0xF3,
0x64,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x01,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x00,
0x61,
0x00,
0x00,
0x40,
0x01,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
/* 803A8940-803A89A0 005A60 005A+06 0/0 0/0 0/0 .data l_shadowVolMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowVolMat[90 + 6 /* padding */] = {
0x61,
0x28,
0x38,
0x00,
0x00,
0x61,
0xC0,
0x08,
0xFF,
0xFC,
0x61,
0xC1,
0x08,
0xFF,
0x90,
0x61,
0x43,
0x00,
0x00,
0x41,
0x61,
0x40,
0x00,
0x00,
0x0D,
0x61,
0x41,
0x00,
0x01,
0x35,
0x61,
0xF3,
0x7F,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x80,
0x10,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A89A0-803A8A00 005AC0 0055+0B 0/1 0/0 0/0 .data l_clearMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_clearMat[85 + 11 /* padding */] = {
0x61,
0x28,
0x38,
0x00,
0x00,
0x61,
0xC0,
0x08,
0xFF,
0xFF,
0x61,
0xC1,
0x08,
0xFF,
0xA0,
0x61,
0x40,
0x00,
0x00,
0x06,
0x61,
0x41,
0x00,
0x00,
0x14,
0x61,
0xF3,
0x7F,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x00,
0x10,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8A00-803A8A60 005B20 0055+0B 0/1 0/0 0/0 .data l_frontMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_frontMat[85 + 11 /* padding */] = {
0x61,
0x28,
0x38,
0x00,
0x00,
0x61,
0xC0,
0x08,
0xFF,
0xFF,
0x61,
0xC1,
0x08,
0xFF,
0x90,
0x61,
0x43,
0x00,
0x00,
0x41,
0x61,
0x40,
0x00,
0x00,
0x07,
0x61,
0x41,
0x00,
0x01,
0x15,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x40,
0x10,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8A60-803A8A9C 005B80 003C+00 0/1 0/0 0/0 .data l_backSubMat */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_backSubMat[60] = {
0x61, 0x41, 0x00, 0x09, 0x35, 0x10, 0x00, 0x00, 0x10, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x10,
0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, 0x01, 0x61, 0x00, 0x00, 0x80, 0x10, 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,
};
#pragma pop
/* 803A8A9C-803A8B60 005BBC 00A8+1C 0/1 0/0 0/0 .data l_simpleShadowPos */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_simpleShadowPos[168 + 28 /* padding */] = {
0x00,
0x00,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0xBF,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
0x3F,
0x80,
0x00,
0x00,
/* padding */
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,
};
#pragma pop
/* 803A8B60-803A8BC0 005C80 0058+08 0/1 0/0 0/0 .data l_shadowVolumeDL */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowVolumeDL[88 + 8 /* padding */] = {
0x98,
0x00,
0x05,
0x03,
0x09,
0x01,
0x07,
0x05,
0x98,
0x00,
0x05,
0x04,
0x06,
0x00,
0x08,
0x02,
0x98,
0x00,
0x04,
0x04,
0x05,
0x06,
0x07,
0x98,
0x00,
0x04,
0x02,
0x03,
0x04,
0x05,
0x98,
0x00,
0x04,
0x08,
0x09,
0x02,
0x03,
0x98,
0x00,
0x04,
0x06,
0x07,
0x08,
0x09,
0x98,
0x00,
0x03,
0x01,
0x05,
0x03,
0x98,
0x00,
0x03,
0x00,
0x02,
0x04,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8BC0-803A8C20 005CE0 0055+0B 0/1 0/0 0/0 .data l_shadowSealTexDL */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowSealTexDL[85 + 11 /* padding */] = {
0x61,
0x28,
0x38,
0x03,
0xC0,
0x61,
0x40,
0x00,
0x00,
0x06,
0x61,
0x41,
0x00,
0x06,
0x15,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x01,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x00,
0x61,
0x00,
0x00,
0x40,
0x01,
0x80,
0x00,
0x04,
0x0A,
0x00,
0x00,
0x0B,
0x01,
0x00,
0x0C,
0x01,
0x01,
0x0D,
0x00,
0x01,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8C20-803A8C80 005D40 0055+0B 0/1 0/0 0/0 .data l_shadowSealTex2DL */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowSealTex2DL[85 + 11 /* padding */] = {
0x61,
0x28,
0x38,
0x03,
0xC0,
0x61,
0x40,
0x00,
0x00,
0x06,
0x61,
0x41,
0x00,
0x06,
0x15,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x01,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x00,
0x61,
0x00,
0x00,
0x40,
0x01,
0x80,
0x00,
0x04,
0x0A,
0x00,
0x00,
0x0B,
0x02,
0x00,
0x0C,
0x02,
0x01,
0x0D,
0x00,
0x01,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8C80-803A8D00 005DA0 0069+17 0/1 0/0 0/0 .data l_shadowSealDL */
#pragma push
#pragma force_active on
SECTION_DATA static u8 l_shadowSealDL[105 + 23 /* padding */] = {
0x10,
0x00,
0x00,
0x10,
0x0E,
0x00,
0x00,
0x05,
0x00,
0x10,
0x00,
0x00,
0x10,
0x10,
0x00,
0x00,
0x05,
0x00,
0x61,
0x28,
0x38,
0x00,
0x00,
0x61,
0xC0,
0x08,
0xFF,
0xFF,
0x61,
0xC1,
0x08,
0xFF,
0xB0,
0x61,
0x40,
0x00,
0x00,
0x06,
0x61,
0x41,
0x00,
0x06,
0xED,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x40,
0x10,
0x80,
0x00,
0x04,
0x0A,
0x0B,
0x0C,
0x0D,
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,
/* padding */
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
0x00,
};
#pragma pop
/* 803A8D00-803A8D7C 005E20 007B+01 1/1 0/0 0/0 .data l_matDL$5404 */
SECTION_DATA static u8 l_matDL[123 + 1 /* padding */] = {
0x10,
0x00,
0x00,
0x10,
0x0E,
0x00,
0x00,
0x04,
0x00,
0x10,
0x00,
0x00,
0x10,
0x10,
0x00,
0x00,
0x04,
0x00,
0x61,
0x28,
0x38,
0x00,
0x00,
0x61,
0xC0,
0x08,
0xFF,
0xF2,
0x61,
0xC1,
0x08,
0xFF,
0x90,
0x61,
0x43,
0x00,
0x00,
0x41,
0x61,
0xF3,
0x7F,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x3F,
0x00,
0x00,
0x00,
0x00,
0x10,
0x00,
0x00,
0x10,
0x09,
0x00,
0x00,
0x00,
0x01,
0x61,
0x00,
0x00,
0x40,
0x10,
0x61,
0xEE,
0x00,
0x00,
0x00,
0x61,
0xEF,
0x00,
0x00,
0x00,
0x61,
0xF0,
0x00,
0x00,
0x00,
0x61,
0xF1,
0x00,
0x00,
0x00,
0x61,
0xF2,
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,
/* padding */
0x00,
};
/* 803A8D7C-803A8D8C 005E9C 0010+00 1/1 0/0 0/0 .data l_imageDrawColor$5405 */
SECTION_DATA static _GXColor l_imageDrawColor[4] = {{0xFF, 0x00, 0x00, 0x00},
{0x00, 0xFF, 0x00, 0x00},
{0x00, 0x00, 0xFF, 0x00},
{0x00, 0x00, 0x00, 0xFF}};
/* 803A8D8C-803A8D9C 005EAC 0010+00 0/1 0/0 0/0 .data l_tevColorChan$5438 */
#pragma push
#pragma force_active on
SECTION_DATA static GXTevColor l_tevColorChan[4] = {GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE,
GX_CH_ALPHA};
#pragma pop
/* 803A8D9C-803A8DCC 005EBC 0030+00 0/0 0/0 0/0 .data mtx_adj$5842 */
#pragma push
#pragma force_active on
SECTION_DATA static u8 mtx_adj[48] = {
0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
#pragma pop
/* 803A8DCC-803A8DDC 005EEC 0010+00 1/1 0/0 0/0 .data __vt__18dDlst_shadowPoly_c */
SECTION_DATA extern void* __vt__18dDlst_shadowPoly_c[4] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 803A8DDC-803A8DEC 005EFC 0010+00 2/2 0/0 0/0 .data __vt__22dDlst_shadowRealPoly_c */
SECTION_DATA extern void* __vt__22dDlst_shadowRealPoly_c[4] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)getTri__22dDlst_shadowRealPoly_cFv,
(void*)getTriMax__22dDlst_shadowRealPoly_cFv,
};
/* 803A8DEC-803A8DF8 005F0C 000C+00 2/2 0/0 0/0 .data __vt__14ShdwDrawPoly_c */
SECTION_DATA extern void* __vt__14ShdwDrawPoly_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__14ShdwDrawPoly_cFv,
};
/* 803A8DF8-803A8E04 005F18 000C+00 0/0 2/2 0/0 .data __vt__18dDlst_effectLine_c */
SECTION_DATA extern void* __vt__18dDlst_effectLine_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__18dDlst_effectLine_cFv,
};
/* 803A8E04-803A8E14 005F24 0010+00 1/1 14/14 0/0 .data __vt__10J2DAnmBase */
SECTION_DATA extern void* __vt__10J2DAnmBase[4] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__10J2DAnmBaseFv,
(void*)searchUpdateMaterialID__10J2DAnmBaseFP9J2DScreen,
};
/* 803A8E14-803A8E20 005F34 000C+00 0/0 0/0 0/0 .data __vt__11dDlst_blo_c */
SECTION_DATA extern void* __vt__11dDlst_blo_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__11dDlst_blo_cFv,
};
/* 803A8E20-803A8E2C 005F40 000C+00 1/1 1/1 0/0 .data __vt__10dDlst_2D_c */
SECTION_DATA extern void* __vt__10dDlst_2D_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__10dDlst_2D_cFv,
};
/* 803A8E2C-803A8E38 005F4C 000C+00 0/0 0/0 0/0 .data __vt__12dDlst_2DMt_c */
SECTION_DATA extern void* __vt__12dDlst_2DMt_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__12dDlst_2DMt_cFv,
};
/* 803A8E38-803A8E44 005F58 000C+00 0/0 0/0 0/0 .data __vt__11dDlst_2Dm_c */
SECTION_DATA extern void* __vt__11dDlst_2Dm_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__11dDlst_2Dm_cFv,
};
/* 803A8E44-803A8E5C 005F64 000C+0C 0/0 0/0 0/0 .data __vt__11dDlst_2DM_c */
SECTION_DATA extern void* __vt__11dDlst_2DM_c[3 + 3 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__11dDlst_2DM_cFv,
/* padding */
NULL,
NULL,
NULL,
};
/* 803A8E5C-803A8E68 005F7C 000C+00 1/1 0/0 0/0 .data __vt__12dDlst_2DT2_c */
SECTION_DATA extern void* __vt__12dDlst_2DT2_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__12dDlst_2DT2_cFv,
};
/* 80456B68-80456B70 000008 0004+04 1/1 0/0 0/0 .sbss2 @4275 */
SECTION_SBSS2 static u8 lit_4275[4 + 4 /* padding */];
/* 80052B00-80052B4C 04D440 004C+00 1/1 0/0 0/0 .text __ct__12dDlst_2DT2_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_2DT2_c::dDlst_2DT2_c() {
nofralloc
#include "asm/d/d_drawlist/__ct__12dDlst_2DT2_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 8045202C-80452030 00062C 0004+00 1/1 0/0 0/0 .sdata2 @4284 */
SECTION_SDATA2 static u32 lit_4284 = 0x000000FF;
/* 80052B4C-80052C58 04D48C 010C+00 1/1 0/0 0/0 .text init__12dDlst_2DT2_cFP7ResTIMGffffUcUcUcff
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DT2_c::init(ResTIMG* param_0, f32 param_1, f32 param_2, f32 param_3, f32 param_4,
u8 param_5, u8 param_6, u8 param_7, f32 param_8, f32 param_9) {
nofralloc
#include "asm/d/d_drawlist/init__12dDlst_2DT2_cFP7ResTIMGffffUcUcUcff.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452030-80452034 000630 0004+00 2/2 0/0 0/0 .sdata2 @4360 */
SECTION_SDATA2 static f32 lit_4360 = 256.0f;
/* 80052C58-8005312C 04D598 04D4+00 1/0 0/0 0/0 .text draw__11dDlst_2DM_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DM_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__11dDlst_2DM_cFv.s"
}
#pragma pop
/* 8005312C-8005364C 04DA6C 0520+00 1/0 0/0 0/0 .text draw__11dDlst_2Dm_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2Dm_c::draw() {
nofralloc
#include "asm/d/d_drawlist/func_8005312C.s"
}
#pragma pop
/* 8005364C-800539DC 04DF8C 0390+00 1/0 0/0 0/0 .text draw__12dDlst_2DMt_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2DMt_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__12dDlst_2DMt_cFv.s"
}
#pragma pop
/* 800539DC-80053A00 04E31C 0024+00 0/0 1/0 0/0 .text getTexture__10J2DPictureCFUc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPicture::getTexture(u8 param_0) const {
nofralloc
#include "asm/d/d_drawlist/getTexture__10J2DPictureCFUc.s"
}
#pragma pop
/* 80053A00-80053A9C 04E340 009C+00 0/0 1/1 0/0 .text __ct__10dDlst_2D_cFP7ResTIMGssssUc
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_2D_c::dDlst_2D_c(ResTIMG* param_0, s16 param_1, s16 param_2, s16 param_3, s16 param_4,
u8 param_5) {
nofralloc
#include "asm/d/d_drawlist/__ct__10dDlst_2D_cFP7ResTIMGssssUc.s"
}
#pragma pop
/* 80053A9C-80053B64 04E3DC 00C8+00 1/0 0/0 0/0 .text draw__10dDlst_2D_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_2D_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__10dDlst_2D_cFv.s"
}
#pragma pop
/* 80053B64-80053BA0 04E4A4 003C+00 1/0 0/0 0/0 .text draw__11dDlst_blo_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_blo_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__11dDlst_blo_cFv.s"
}
#pragma pop
/* 80053BA0-80053BC0 04E4E0 0020+00 0/0 1/0 0/0 .text clearAnmTransform__9J2DScreenFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DScreen::clearAnmTransform() {
nofralloc
#include "asm/d/d_drawlist/clearAnmTransform__9J2DScreenFv.s"
}
#pragma pop
/* 80053BC0-80053C00 04E500 0040+00 0/0 7/0 0/0 .text calcMtx__7J2DPaneFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPane::calcMtx() {
nofralloc
#include "asm/d/d_drawlist/calcMtx__7J2DPaneFv.s"
}
#pragma pop
/* 80053C00-80053C3C 04E540 003C+00 0/0 8/0 0/0 .text makeMatrix__7J2DPaneFff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPane::makeMatrix(f32 param_0, f32 param_1) {
nofralloc
#include "asm/d/d_drawlist/makeMatrix__7J2DPaneFff.s"
}
#pragma pop
/* 80053C3C-80053C44 04E57C 0008+00 0/0 1/0 0/0 .text getTypeID__7J2DPaneCFv */
// s32 J2DPane::getTypeID() const {
extern "C" s32 getTypeID__7J2DPaneCFv() {
return 16;
}
/* 80053C44-80053C6C 04E584 0028+00 0/0 1/0 0/0 .text setWhite__10J2DPictureFQ28JUtility6TColor */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPicture::setWhite(JUtility::TColor param_0) {
nofralloc
#include "asm/d/d_drawlist/setWhite__10J2DPictureFQ28JUtility6TColor.s"
}
#pragma pop
/* 80053C6C-80053C94 04E5AC 0028+00 0/0 1/0 0/0 .text setBlack__10J2DPictureFQ28JUtility6TColor */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void J2DPicture::setBlack(JUtility::TColor param_0) {
nofralloc
#include "asm/d/d_drawlist/setBlack__10J2DPictureFQ28JUtility6TColor.s"
}
#pragma pop
/* 80053C94-80053CDC 04E5D4 0048+00 1/0 0/0 0/0 .text __dt__10J2DAnmBaseFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
// asm J2DAnmBase::~J2DAnmBase() {
extern "C" asm void __dt__10J2DAnmBaseFv() {
nofralloc
#include "asm/d/d_drawlist/__dt__10J2DAnmBaseFv.s"
}
#pragma pop
/* 80053CDC-80053CEC 04E61C 0010+00 0/0 2/2 0/0 .text init__8cM_rnd_cFiii */
void cM_rnd_c::init(int s0, int s1, int s2) {
seed0 = s0;
seed1 = s1;
seed2 = s2;
}
/* ############################################################################################## */
/* 80452034-80452038 000634 0004+00 1/1 0/0 0/0 .sdata2 @4791 */
SECTION_SDATA2 static f32 lit_4791 = 30323.0f;
/* 80452038-8045203C 000638 0004+00 1/1 0/0 0/0 .sdata2 @4792 */
SECTION_SDATA2 static f32 lit_4792 = 30269.0f;
/* 8045203C-80452040 00063C 0004+00 1/1 0/0 0/0 .sdata2 @4793 */
SECTION_SDATA2 static f32 lit_4793 = 30307.0f;
/* 80452040-80452048 000640 0008+00 1/1 0/0 0/0 .sdata2 @4794 */
SECTION_SDATA2 static f64 lit_4794 = 1.0;
/* 80053CEC-80053DE0 04E62C 00F4+00 2/2 0/0 0/0 .text get__8cM_rnd_cFv */
// reg swap
#ifdef NONMATCHING
f32 cM_rnd_c::get() {
seed0 = seed0 * 171 % 30269;
seed1 = seed1 * 172 % 30307;
seed2 = seed2 * 170 % 30323;
f32 rm = fmod((seed0 / 30269.0f) + (seed1 / 30307.0f) + (seed2 / 30323.0f), 1.0f);
return __fabs(rm);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm f32 cM_rnd_c::get() {
nofralloc
#include "asm/d/d_drawlist/get__8cM_rnd_cFv.s"
}
#pragma pop
#endif
/* 80053DE0-80053E18 04E720 0038+00 1/1 0/0 0/0 .text getF__8cM_rnd_cFf */
f32 cM_rnd_c::getF(f32 param_0) {
return get() * param_0;
}
/* ############################################################################################## */
/* 80452048-8045204C 000648 0004+00 5/5 0/0 0/0 .sdata2 @4806 */
SECTION_SDATA2 static f32 lit_4806 = 2.0f;
/* 80053E18-80053E60 04E758 0048+00 1/1 0/0 0/0 .text getFX__8cM_rnd_cFf */
f32 cM_rnd_c::getFX(f32 param_0) {
return ((get() - lit_4072) * param_0) * lit_4806;
}
/* 80053E60-80053E9C 04E7A0 003C+00 1/1 0/0 0/0 .text getValue__8cM_rnd_cFff */
f32 cM_rnd_c::getValue(f32 param_0, f32 param_1) {
return param_0 + getF(param_1);
}
/* ############################################################################################## */
/* 8045204C-80452050 00064C 0004+00 1/1 0/0 0/0 .sdata2 @4876 */
SECTION_SDATA2 static f32 lit_4876 = 32767.0f;
/* 80053E9C-800541F4 04E7DC 0358+00 1/0 0/0 0/0 .text draw__18dDlst_effectLine_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_effectLine_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__18dDlst_effectLine_cFv.s"
}
#pragma pop
/* 800541F4-80054288 04EB34 0094+00 0/0 1/1 0/0 .text
* update__18dDlst_effectLine_cFR4cXyzR8_GXColorUsUsUsUsffff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_effectLine_c::update(cXyz& param_0, _GXColor& param_1, u16 param_2, u16 param_3,
u16 param_4, u16 param_5, f32 param_6, f32 param_7, f32 param_8,
f32 param_9) {
nofralloc
#include "asm/d/d_drawlist/update__18dDlst_effectLine_cFR4cXyzR8_GXColorUsUsUsUsffff.s"
}
#pragma pop
/* 80054288-800543B4 04EBC8 012C+00 1/1 0/0 0/0 .text
* set__18dDlst_shadowPoly_cFP10cBgD_Vtx_tUsUsUsP8cM3dGPla */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowPoly_c::set(cBgD_Vtx_t* param_0, u16 param_1, u16 param_2, u16 param_3,
cM3dGPla* param_4) {
nofralloc
#include "asm/d/d_drawlist/set__18dDlst_shadowPoly_cFP10cBgD_Vtx_tUsUsUsP8cM3dGPla.s"
}
#pragma pop
/* 800543B4-80054478 04ECF4 00C4+00 1/1 0/0 0/0 .text draw__18dDlst_shadowPoly_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowPoly_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__18dDlst_shadowPoly_cFv.s"
}
#pragma pop
/* 80054478-800544F0 04EDB8 0078+00 1/1 0/0 0/0 .text J3DDrawBuffer__create__FUl */
static J3DDrawBuffer* J3DDrawBuffer__create(u32 size) {
J3DDrawBuffer* buffer = new J3DDrawBuffer();
if (buffer) {
if (buffer->allocBuffer(size) == kJ3DError_Success) {
return buffer;
}
delete buffer;
}
return NULL;
}
/* 800544F0-80054500 04EE30 0010+00 2/2 0/0 0/0 .text reset__18dDlst_shadowReal_cFv */
void dDlst_shadowReal_c::reset() {
mState = 0;
mModelNum = 0;
}
/* 80054500-800545D4 04EE40 00D4+00 1/1 0/0 0/0 .text imageDraw__18dDlst_shadowReal_cFPA4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowReal_c::imageDraw(f32 (*param_0)[4]) {
nofralloc
#include "asm/d/d_drawlist/imageDraw__18dDlst_shadowReal_cFPA4_f.s"
}
#pragma pop
/* ############################################################################################## */
/* 8045064C-80450650 0000CC 0004+00 1/1 0/0 0/0 .sdata l_color$5004 */
SECTION_SDATA static u8 l_color_5004[4] = {
0x00,
0x00,
0x00,
0x40,
};
/* 800545D4-80054688 04EF14 00B4+00 1/1 0/0 0/0 .text draw__18dDlst_shadowReal_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowReal_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__18dDlst_shadowReal_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452050-80452054 000650 0004+00 1/1 0/0 0/0 .sdata2 @5061 */
SECTION_SDATA2 static f32 lit_5061 = -1.0f / 5.0f;
/* 80452054-80452058 000654 0004+00 1/1 0/0 0/0 .sdata2 @5062 */
SECTION_SDATA2 static f32 lit_5062 = -90.0f;
/* 80054688-80054854 04EFC8 01CC+00 1/1 0/0 0/0 .text
* psdRealCallBack__FP13cBgS_ShdwDrawP10cBgD_Vtx_tiiiP8cM3dGPla */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void psdRealCallBack(cBgS_ShdwDraw* param_0, cBgD_Vtx_t* param_1, int param_2,
int param_3, int param_4, cM3dGPla* param_5) {
nofralloc
#include "asm/d/d_drawlist/psdRealCallBack__FP13cBgS_ShdwDrawP10cBgD_Vtx_tiiiP8cM3dGPla.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452058-8045205C 000658 0004+00 1/1 0/0 0/0 .sdata2 @5127 */
SECTION_SDATA2 static f32 lit_5127 = 0.0020000000949949026f;
/* 8045205C-80452060 00065C 0004+00 1/1 0/0 0/0 .sdata2 @5128 */
SECTION_SDATA2 static f32 lit_5128 = 120.0f;
/* 80452060-80452064 000660 0004+00 1/1 0/0 0/0 .sdata2 @5129 */
SECTION_SDATA2 static f32 lit_5129 = 3.0f / 20.0f;
/* 80452064-80452068 000664 0004+00 3/3 0/0 0/0 .sdata2 @5130 */
SECTION_SDATA2 static f32 lit_5130 = 10000.0f;
/* 80054854-80054A6C 04F194 0218+00 1/1 0/0 0/0 .text
* realPolygonCheck__FP4cXyzffP4cXyzP18dDlst_shadowPoly_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void realPolygonCheck(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3,
dDlst_shadowPoly_c* param_4) {
nofralloc
#include "asm/d/d_drawlist/realPolygonCheck__FP4cXyzffP4cXyzP18dDlst_shadowPoly_c.s"
}
#pragma pop
/* 80054A6C-80054ACC 04F3AC 0060+00 1/0 0/0 0/0 .text __dt__14ShdwDrawPoly_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm ShdwDrawPoly_c::~ShdwDrawPoly_c() {
nofralloc
#include "asm/d/d_drawlist/__dt__14ShdwDrawPoly_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452068-8045206C 000668 0004+00 1/1 0/0 0/0 .sdata2 @5155 */
SECTION_SDATA2 static f32 lit_5155 = 15.0f;
/* 8045206C-80452070 00066C 0004+00 1/1 0/0 0/0 .sdata2 @5156 */
SECTION_SDATA2 static f32 lit_5156 = 13.0f / 20.0f;
/* 80054ACC-80054BD0 04F40C 0104+00 2/2 0/0 0/0 .text setkankyoShadow__FP12dKy_tevstr_cPf
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void setkankyoShadow(dKy_tevstr_c* param_0, f32* param_1) {
nofralloc
#include "asm/d/d_drawlist/setkankyoShadow__FP12dKy_tevstr_cPf.s"
}
#pragma pop
/* ############################################################################################## */
/* 80452070-80452074 000670 0004+00 1/1 0/0 0/0 .sdata2 @5267 */
SECTION_SDATA2 static f32 lit_5267 = 50.0f;
/* 80452074-80452078 000674 0004+00 1/1 0/0 0/0 .sdata2 @5268 */
SECTION_SDATA2 static f32 lit_5268 = 4.0f / 5.0f;
/* 80452078-80452080 000678 0004+04 1/1 0/0 0/0 .sdata2 @5269 */
SECTION_SDATA2 static f32 lit_5269[1 + 1 /* padding */] = {
255.0f,
/* padding */
0.0f,
};
/* 80452080-80452088 000680 0008+00 1/1 0/0 0/0 .sdata2 @5270 */
SECTION_SDATA2 static f64 lit_5270 = 0.5;
/* 80452088-80452090 000688 0008+00 1/1 0/0 0/0 .sdata2 @5271 */
SECTION_SDATA2 static f64 lit_5271 = 3.0;
/* 80452090-80452098 000690 0008+00 1/1 0/0 0/0 .sdata2 @5272 */
SECTION_SDATA2 static u8 lit_5272[8] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
/* 80452098-8045209C 000698 0004+00 1/1 0/0 0/0 .sdata2 @5273 */
SECTION_SDATA2 static f32 lit_5273 = 2.0f / 5.0f;
/* 8045209C-804520A0 00069C 0004+00 1/1 0/0 0/0 .sdata2 @5274 */
SECTION_SDATA2 static f32 lit_5274 = -1.0f;
/* 804520A0-804520A4 0006A0 0004+00 1/1 0/0 0/0 .sdata2 @5275 */
SECTION_SDATA2 static f32 lit_5275 = -0.5f;
/* 80054BD0-80055028 04F510 0458+00 1/1 0/0 0/0 .text
* setShadowRealMtx__18dDlst_shadowReal_cFP4cXyzP4cXyzfffP12dKy_tevstr_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowReal_c::setShadowRealMtx(cXyz* param_0, cXyz* param_1, f32 param_2,
f32 param_3, f32 param_4, dKy_tevstr_c* param_5) {
nofralloc
#include "asm/d/d_drawlist/setShadowRealMtx__18dDlst_shadowReal_cFP4cXyzP4cXyzfffP12dKy_tevstr_c.s"
}
#pragma pop
/* 80055028-800551D4 04F968 01AC+00 1/1 0/0 0/0 .text
* set__18dDlst_shadowReal_cFUlP8J3DModelP4cXyzffP12dKy_tevstr_cff */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowReal_c::set(u32 param_0, J3DModel* param_1, cXyz* param_2, f32 param_3,
f32 param_4, dKy_tevstr_c* param_5, f32 param_6, f32 param_7) {
nofralloc
#include "asm/d/d_drawlist/set__18dDlst_shadowReal_cFUlP8J3DModelP4cXyzffP12dKy_tevstr_cff.s"
}
#pragma pop
/* 800551D4-8005520C 04FB14 0038+00 1/1 0/0 0/0 .text add__18dDlst_shadowReal_cFP8J3DModel */
bool dDlst_shadowReal_c::add(J3DModel* pModel) {
u8 curModelNum = mModelNum;
if (curModelNum == 0 || pModel == NULL) {
return false;
}
mModelNum++;
mpModels[curModelNum] = pModel;
return true;
}
/* ############################################################################################## */
/* 80450650-80450654 0000D0 0004+00 1/1 0/0 0/0 .sdata l_color$5326 */
SECTION_SDATA static u8 l_color_5326[4] = {
0x00,
0x00,
0x00,
0x40,
};
/* 8005520C-800553EC 04FB4C 01E0+00 1/1 0/0 0/0 .text draw__20dDlst_shadowSimple_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowSimple_c::draw() {
nofralloc
#include "asm/d/d_drawlist/draw__20dDlst_shadowSimple_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804520A4-804520A8 0006A4 0004+00 1/1 0/0 0/0 .sdata2 @5375 */
SECTION_SDATA2 static f32 lit_5375 = -255.0f;
/* 804520A8-804520AC 0006A8 0004+00 1/1 0/0 0/0 .sdata2 @5376 */
SECTION_SDATA2 static f32 lit_5376 = 0.000699999975040555f;
/* 804520AC-804520B0 0006AC 0004+00 1/1 0/0 0/0 .sdata2 @5377 */
SECTION_SDATA2 static f32 lit_5377 = 7.0f / 5.0f;
/* 804520B0-804520B4 0006B0 0004+00 1/1 0/0 0/0 .sdata2 @5378 */
SECTION_SDATA2 static f32 lit_5378 = 16.0f;
/* 800553EC-80055684 04FD2C 0298+00 1/1 0/0 0/0 .text
* set__20dDlst_shadowSimple_cFP4cXyzffP4cXyzsfP9_GXTexObj */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowSimple_c::set(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3,
s16 param_4, f32 param_5, _GXTexObj* param_6) {
nofralloc
#include "asm/d/d_drawlist/set__20dDlst_shadowSimple_cFP4cXyzffP4cXyzsfP9_GXTexObj.s"
}
#pragma pop
/* ############################################################################################## */
/* 80450654-80450658 0000D4 0004+00 1/1 0/0 0/0 .sdata l_realImageSize$5383 */
SECTION_SDATA static u8 l_realImageSize[4] = {
0x00,
0xC0,
0x00,
0x40,
};
/* 80055684-80055768 04FFC4 00E4+00 1/1 0/0 0/0 .text init__21dDlst_shadowControl_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::init() {
nofralloc
#include "asm/d/d_drawlist/init__21dDlst_shadowControl_cFv.s"
}
#pragma pop
/* 80055768-800557C8 0500A8 0060+00 1/1 0/0 0/0 .text reset__21dDlst_shadowControl_cFv */
void dDlst_shadowControl_c::reset() {
dDlst_shadowReal_c* shadowReal = &mReal[0];
for (int i = 0; i < 8; i++) {
shadowReal->reset();
shadowReal++;
}
mSimpleNum = 0;
mRealNum = 0;
field_0x4 = NULL;
}
/* 800557C8-80055A14 050108 024C+00 0/0 1/1 0/0 .text imageDraw__21dDlst_shadowControl_cFPA4_f */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::imageDraw(f32 (*param_0)[4]) {
nofralloc
#include "asm/d/d_drawlist/imageDraw__21dDlst_shadowControl_cFPA4_f.s"
}
#pragma pop
/* ############################################################################################## */
/* 80450658-8045065C 0000D8 0004+00 1/1 0/0 0/0 .sdata clearColor$5435 */
SECTION_SDATA static u8 clearColor[4] = {
0x00,
0x00,
0x00,
0x40,
};
/* 804520B4-804520B8 0006B4 0004+00 1/1 0/0 0/0 .sdata2 @5433 */
SECTION_SDATA2 static u32 lit_5433 = 0x00000020;
/* 80055A14-80055C74 050354 0260+00 0/0 1/1 0/0 .text draw__21dDlst_shadowControl_cFPA4_f
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::draw(f32 (*param_0)[4]) {
nofralloc
#include "asm/d/d_drawlist/draw__21dDlst_shadowControl_cFPA4_f.s"
}
#pragma pop
/* ############################################################################################## */
/* 804520B8-804520BC 0006B8 0004+00 1/1 0/0 0/0 .sdata2 @5551 */
SECTION_SDATA2 static f32 lit_5551 = 0.003000000026077032f;
/* 804520BC-804520C0 0006BC 0004+00 1/1 0/0 0/0 .sdata2 @5552 */
SECTION_SDATA2 static f32 lit_5552 = -1000.0f;
/* 804520C0-804520C4 0006C0 0004+00 1/1 0/0 0/0 .sdata2 @5553 */
SECTION_SDATA2 static f32 lit_5553 = 0.0010000000474974513f;
/* 80055C74-80055F1C 0505B4 02A8+00 0/0 1/1 1/1 .text
* setReal__21dDlst_shadowControl_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::setReal(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3,
f32 param_4, f32 param_5, dKy_tevstr_c* param_6) {
nofralloc
#include "asm/d/d_drawlist/setReal__21dDlst_shadowControl_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c.s"
}
#pragma pop
/* 80055F1C-80055F84 05085C 0068+00 0/0 1/1 45/45 .text
* addReal__21dDlst_shadowControl_cFUlP8J3DModel */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::addReal(u32 param_0, J3DModel* param_1) {
nofralloc
#include "asm/d/d_drawlist/addReal__21dDlst_shadowControl_cFUlP8J3DModel.s"
}
#pragma pop
/* 80055F84-80055FE8 0508C4 0064+00 0/0 1/1 10/10 .text
* setSimple__21dDlst_shadowControl_cFP4cXyzffP4cXyzsfP9_GXTexObj */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::setSimple(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3,
s16 param_4, f32 param_5, _GXTexObj* param_6) {
nofralloc
#include "asm/d/d_drawlist/setSimple__21dDlst_shadowControl_cFP4cXyzffP4cXyzsfP9_GXTexObj.s"
}
#pragma pop
/* ############################################################################################## */
/* 804248D0-804248F0 0515F0 0020+00 1/1 6/6 173/173 .bss mSimpleTexObj__21dDlst_shadowControl_c */
u8 dDlst_shadowControl_c::mSimpleTexObj[32];
/* 80055FE8-80056018 050928 0030+00 0/0 1/1 0/0 .text
* setSimpleTex__21dDlst_shadowControl_cFPC7ResTIMG */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowControl_c::setSimpleTex(ResTIMG const* param_0) {
nofralloc
#include "asm/d/d_drawlist/setSimpleTex__21dDlst_shadowControl_cFPC7ResTIMG.s"
}
#pragma pop
/* 80056018-80056080 050958 0068+00 0/0 3/3 9/9 .text newData__13dDlst_peekZ_cFssPUl */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_peekZ_c::newData(s16 param_0, s16 param_1, u32* param_2) {
nofralloc
#include "asm/d/d_drawlist/newData__13dDlst_peekZ_cFssPUl.s"
}
#pragma pop
/* 80056080-800560F0 0509C0 0070+00 0/0 1/1 0/0 .text peekData__13dDlst_peekZ_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_peekZ_c::peekData() {
nofralloc
#include "asm/d/d_drawlist/peekData__13dDlst_peekZ_cFv.s"
}
#pragma pop
/* 800560F0-800561C8 050A30 00D8+00 0/0 1/1 0/0 .text __ct__12dDlst_list_cFv */
#ifdef NONMATCHING
dDlst_list_c::dDlst_list_c() {
field_0x68 = &field_0x64;
field_0xb0 = &field_0xac;
field_0x1b8 = &field_0x1b4;
field_0x240 = &field_0x23c;
J3DDrawBuffer** tmp = &mOpaListSky;
for (int i = 0; i < 0x15; i++) {
*(tmp + i) = NULL;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_list_c::dDlst_list_c() {
nofralloc
#include "asm/d/d_drawlist/__ct__12dDlst_list_cFv.s"
}
#pragma pop
#endif
/* 800561C8-800561F8 050B08 0030+00 1/1 0/0 0/0 .text __ct__26mDoExt_3DlineMatSortPacketFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm mDoExt_3DlineMatSortPacket::mDoExt_3DlineMatSortPacket() {
nofralloc
#include "asm/d/d_drawlist/__ct__26mDoExt_3DlineMatSortPacketFv.s"
}
#pragma pop
/* 800561F8-80056270 050B38 0078+00 2/2 0/0 0/0 .text __dt__18dDlst_shadowReal_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_shadowReal_c::~dDlst_shadowReal_c() {
nofralloc
#include "asm/d/d_drawlist/__dt__18dDlst_shadowReal_cFv.s"
}
#pragma pop
/* 80056270-800562D0 050BB0 0060+00 2/2 0/0 0/0 .text __dt__17dDlst_shadowTri_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_shadowTri_c::~dDlst_shadowTri_c() {
nofralloc
#include "asm/d/d_drawlist/__dt__17dDlst_shadowTri_cFv.s"
}
#pragma pop
/* 800562D0-80056344 050C10 0074+00 1/1 0/0 0/0 .text __ct__18dDlst_shadowReal_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_shadowReal_c::dDlst_shadowReal_c() {
nofralloc
#include "asm/d/d_drawlist/__ct__18dDlst_shadowReal_cFv.s"
}
#pragma pop
/* 80056344-8005638C 050C84 0048+00 1/1 0/0 0/0 .text __ct__17dDlst_shadowTri_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_shadowTri_c::dDlst_shadowTri_c() {
nofralloc
#include "asm/d/d_drawlist/__ct__17dDlst_shadowTri_cFv.s"
}
#pragma pop
/* 8005638C-80056390 050CCC 0004+00 1/1 0/0 0/0 .text __ct__20dDlst_shadowSimple_cFv */
dDlst_shadowSimple_c::dDlst_shadowSimple_c() {
/* empty function */
}
/* ############################################################################################## */
/* 8037A178-8037A1A4 0067D8 002A+02 1/1 0/0 0/0 .rodata l_drawlistSize$5656 */
SECTION_RODATA static u8 const l_drawlistSize[42 + 2 /* padding */] = {
0x00,
0x01,
0x00,
0x01,
0x00,
0x01,
0x00,
0x80,
0x00,
0x01,
0x00,
0x01,
0x00,
0x01,
0x00,
0x80,
0x01,
0x00,
0x00,
0x01,
0x01,
0x00,
0x00,
0x01,
0x00,
0x20,
0x00,
0x10,
0x00,
0x10,
0x00,
0x20,
0x00,
0x20,
0x01,
0x00,
0x00,
0x01,
0x00,
0x04,
0x00,
0x04,
/* padding */
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8037A178, &l_drawlistSize);
/* 8037A1A4-8037A1B0 006804 0009+03 1/1 0/0 0/0 .rodata l_nonSortId$5662 */
SECTION_RODATA static u8 const l_nonSortId[9 + 3 /* padding */] = {
0x00,
0x01,
0x02,
0x04,
0x05,
0x06,
0x09,
0x12,
0x0D,
/* padding */
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x8037A1A4, &l_nonSortId);
/* 804520C4-804520CC 0006C4 0006+02 1/1 0/0 0/0 .sdata2 l_zSortId$5668 */
SECTION_SDATA2 static u8 l_zSortId[6 + 2 /* padding */] = {
0x08,
0x0A,
0x0C,
0x0E,
0x10,
0x11,
/* padding */
0x00,
0x00,
};
/* 80056390-8005648C 050CD0 00FC+00 0/0 1/1 0/0 .text init__12dDlst_list_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::init() {
nofralloc
#include "asm/d/d_drawlist/init__12dDlst_list_cFv.s"
}
#pragma pop
/* 8005648C-80056538 050DCC 00AC+00 0/0 1/1 0/0 .text __dt__12dDlst_list_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dDlst_list_c::~dDlst_list_c() {
nofralloc
#include "asm/d/d_drawlist/__dt__12dDlst_list_cFv.s"
}
#pragma pop
/* 80056538-800565EC 050E78 00B4+00 0/0 1/1 0/0 .text reset__12dDlst_list_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::reset() {
nofralloc
#include "asm/d/d_drawlist/reset__12dDlst_list_cFv.s"
}
#pragma pop
/* ############################################################################################## */
/* 804520CC-804520D0 0006CC 0004+00 1/1 0/0 0/0 .sdata2 @5747 */
SECTION_SDATA2 static f32 lit_5747 = 9999.0f;
/* 800565EC-800566D4 050F2C 00E8+00 0/0 2/2 0/0 .text
* entryZSortXluDrawList__12dDlst_list_cFP13J3DDrawBufferP9J3DPacketR4cXyz */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::entryZSortXluDrawList(J3DDrawBuffer* param_0, J3DPacket* param_1,
cXyz& param_2) {
nofralloc
#include "asm/d/d_drawlist/entryZSortXluDrawList__12dDlst_list_cFP13J3DDrawBufferP9J3DPacketR4cXyz.s"
}
#pragma pop
/* 800566D4-80056710 051014 003C+00 1/1 1/1 0/0 .text
* drawOpaDrawList__12dDlst_list_cFP13J3DDrawBuffer */
void dDlst_list_c::drawOpaDrawList(J3DDrawBuffer* pDrawBuf) {
J3DShape::resetVcdVatCache();
j3dSys.setDrawModeOpaTexEdge();
pDrawBuf->draw();
}
/* 80056710-8005674C 051050 003C+00 1/1 1/1 0/0 .text
* drawXluDrawList__12dDlst_list_cFP13J3DDrawBuffer */
void dDlst_list_c::drawXluDrawList(J3DDrawBuffer* pDrawBuf) {
J3DShape::resetVcdVatCache();
j3dSys.setDrawModeXlu();
pDrawBuf->draw();
}
/* 8005674C-80056770 05108C 0024+00 0/0 1/1 0/0 .text drawOpaListItem3d__12dDlst_list_cFv
*/
void dDlst_list_c::drawOpaListItem3d() {
drawOpaDrawList(mOpaListItem3d);
}
/* 80056770-80056794 0510B0 0024+00 0/0 1/1 0/0 .text drawXluListItem3d__12dDlst_list_cFv
*/
void dDlst_list_c::drawXluListItem3d() {
drawXluDrawList(mXluListItem3d);
}
/* 80056794-800567C4 0510D4 0030+00 2/2 35/35 6/6 .text
* set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c */
#ifdef NONMATCHING
int dDlst_list_c::set(dDlst_base_c**& param_0, dDlst_base_c**& param_1, dDlst_base_c* param_2) {
if (*param_0 >= *param_1) {
return 0;
}
*param_0 = param_2;
*param_0++;
return 1;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm int dDlst_list_c::set(dDlst_base_c**& param_0, dDlst_base_c**& param_1, dDlst_base_c* param_2) {
nofralloc
#include "asm/d/d_drawlist/set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c.s"
}
#pragma pop
#endif
/* 800567C4-8005681C 051104 0058+00 0/0 1/1 0/0 .text
* draw__12dDlst_list_cFPP12dDlst_base_cPP12dDlst_base_c */
void dDlst_list_c::draw(dDlst_base_c** pStart, dDlst_base_c** pEnd) {
for (; pStart < pEnd; pStart++) {
dDlst_base_c* base = *pStart;
base->draw();
}
}
/* ############################################################################################## */
/* 8037A1B0-8037A1B0 006810 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_8037A1B0 = "wipe_00.bti";
/* @stringBase0 padding */
SECTION_DEAD static char const* const pad_8037A1BC = "\0\0\0";
#pragma pop
/* 804248F0-80424938 051610 0048+00 3/3 0/0 0/0 .bss mWipeDlst__12dDlst_list_c */
u8 dDlst_list_c::mWipeDlst[72];
/* 8045065C-80450660 0000DC 0004+00 1/1 0/0 0/0 .sdata mWipeColor__12dDlst_list_c */
SECTION_SDATA u8 dDlst_list_c::mWipeColor[4] = {
0x00,
0x00,
0x00,
0x00,
};
/* 80450ED0-80450ED4 0003D0 0004+00 2/2 1/1 0/0 .sbss None */
extern u8 data_80450ED0[4];
u8 data_80450ED0[4];
/* 80450ED4-80450ED8 0003D4 0004+00 2/2 1/1 0/0 .sbss mWipeRate__12dDlst_list_c */
f32 dDlst_list_c::mWipeRate;
/* 80450ED8-80450EE0 0003D8 0004+04 2/2 0/0 0/0 .sbss mWipeSpeed__12dDlst_list_c */
f32 dDlst_list_c::mWipeSpeed[1 + 1 /* padding */];
/* 804520D0-804520D4 0006D0 0004+00 1/1 0/0 0/0 .sdata2 @5809 */
SECTION_SDATA2 static f32 lit_5809 = 608.0f;
/* 804520D4-804520D8 0006D4 0004+00 1/1 0/0 0/0 .sdata2 @5810 */
SECTION_SDATA2 static f32 lit_5810 = 448.0f;
/* 804520D8-804520DC 0006D8 0004+00 1/1 0/0 0/0 .sdata2 @5811 */
SECTION_SDATA2 static f32 lit_5811 = 2.436000108718872f;
/* 8005681C-800568D8 05115C 00BC+00 1/1 0/0 0/0 .text wipeIn__12dDlst_list_cFfR8_GXColor
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::wipeIn(f32 param_0, _GXColor& param_1) {
nofralloc
#include "asm/d/d_drawlist/wipeIn__12dDlst_list_cFfR8_GXColor.s"
}
#pragma pop
/* 800568D8-80056900 051218 0028+00 0/0 1/1 0/0 .text wipeIn__12dDlst_list_cFf */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::wipeIn(f32 param_0) {
nofralloc
#include "asm/d/d_drawlist/wipeIn__12dDlst_list_cFf.s"
}
#pragma pop
/* ############################################################################################## */
/* 804520DC-804520E0 0006DC 0004+00 1/1 0/0 0/0 .sdata2 @5838 */
SECTION_SDATA2 static f32 lit_5838 = 1.218000054359436f;
/* 80056900-800569A0 051240 00A0+00 0/0 1/1 0/0 .text calcWipe__12dDlst_list_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_list_c::calcWipe() {
nofralloc
#include "asm/d/d_drawlist/calcWipe__12dDlst_list_cFv.s"
}
#pragma pop
/* 800569A0-800569A8 0512E0 0008+00 1/0 0/0 0/0 .text getTri__22dDlst_shadowRealPoly_cFv
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dDlst_shadowRealPoly_c::getTri() {
nofralloc
#include "asm/d/d_drawlist/getTri__22dDlst_shadowRealPoly_cFv.s"
}
#pragma pop
/* 800569A8-800569B0 0512E8 0008+00 1/0 0/0 0/0 .text getTriMax__22dDlst_shadowRealPoly_cFv */
s32 dDlst_shadowRealPoly_c::getTriMax() {
return 256;
}
/* 800569B0-800569B4 0512F0 0004+00 1/0 7/0 0/0 .text
* searchUpdateMaterialID__10J2DAnmBaseFP9J2DScreen */
void J2DAnmBase::searchUpdateMaterialID(J2DScreen* param_0) {
/* empty function */
}
/* 800569B4-800569DC 0512F4 0028+00 0/0 1/0 0/0 .text __sinit_d_drawlist_cpp */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __sinit_d_drawlist_cpp() {
nofralloc
#include "asm/d/d_drawlist/__sinit_d_drawlist_cpp.s"
}
#pragma pop
#pragma push
#pragma force_active on
REGISTER_CTORS(0x800569B4, __sinit_d_drawlist_cpp);
#pragma pop
/* ############################################################################################## */
/* 803A8E68-803A8E74 005F88 000C+00 0/0 0/0 0/0 .data __vt__11dDlst_2DT_c */
SECTION_DATA extern void* __vt__11dDlst_2DT_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__11dDlst_2DT_cFv,
};
/* 803A8E74-803A8E80 005F94 000C+00 0/0 0/0 0/0 .data __vt__15dDlst_2DPoint_c */
SECTION_DATA extern void* __vt__15dDlst_2DPoint_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__15dDlst_2DPoint_cFv,
};
/* 803A8E80-803A8E8C 005FA0 000C+00 0/0 0/0 0/0 .data __vt__14dDlst_2DQuad_c */
SECTION_DATA extern void* __vt__14dDlst_2DQuad_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__14dDlst_2DQuad_cFv,
};
/* 803A8E8C-803A8E98 005FAC 000C+00 0/0 0/0 0/0 .data __vt__13dDlst_2DTri_c */
SECTION_DATA extern void* __vt__13dDlst_2DTri_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)draw__13dDlst_2DTri_cFv,
};
/* 80450EE0-80450EE8 0003E0 0008+00 0/0 1/1 0/0 .sbss None */
extern u8 data_80450EE0[8];
u8 data_80450EE0[8];
/* 8037A1B0-8037A1B0 006810 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */