diff --git a/configure.py b/configure.py index 29221a404..fb8a7591e 100755 --- a/configure.py +++ b/configure.py @@ -366,7 +366,7 @@ config.libs = [ Object(NonMatching, "m_Do/m_Do_graphic.cpp"), Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "m_Do/m_Do_machine.cpp"), Object(Matching, "m_Do/m_Do_mtx.cpp"), - Object(NonMatching, "m_Do/m_Do_ext.cpp", extra_cflags=["-sym off"]), + Object(NonMatching, "m_Do/m_Do_ext.cpp"), Object(NonMatching, "m_Do/m_Do_lib.cpp"), Object(Matching, "m_Do/m_Do_hostIO.cpp"), Object(MatchingFor("GZLJ01", "GZLE01", "GZLP01"), "m_Do/m_Do_Reset.cpp"), diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 994f42490..b111d98a9 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -293,7 +293,6 @@ struct mDoExt_MtxCalcAnmBlendTblOld : public mDoExt_MtxCalcAnmBlendTbl { mAfterCallback = NULL; mUserArea = 0; } - virtual ~mDoExt_MtxCalcAnmBlendTblOld(); virtual void calc(u16); void setUserArea(u32 area) { mUserArea = area; } @@ -332,7 +331,6 @@ public: mDoExt_McaMorfCallBack2_c* callback2, J3DAnmTransform* anmTransform, int loopMode, f32 param_5, int param_6, int param_7, int param_8, void* basAnm, u32 modelFlag, u32 differedDlistFlag); - virtual ~mDoExt_McaMorf(); void calc(); void calc(u16 jnt_no); @@ -392,7 +390,6 @@ public: J3DAnmTransform* anmTransform1, J3DAnmTransform* anmTransform2, int loopMode, f32 param_5, int param_6, int param_7, int param_8, void* basAnm, u32 modelFlag, u32 differedDlistFlag); - ~mDoExt_McaMorf2(); void ERROR_EXIT(); void calc(u16); diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 5178a6d1f..a866fe201 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -19,8 +19,6 @@ #include "m_Do/m_Do_mtx.h" #include "m_Do/m_Do_printf.h" -// #pragma sym on - // Needed for the .data section to match. static Vec dummy_2100 = {1.0f, 1.0f, 1.0f}; @@ -70,6 +68,15 @@ void mDoExt_setJ3DData(Mtx mtx, const J3DTransformInfo* transformInfo, u16 jnt_n J3DSys::mParentS.z = transformInfo->mScale.z; } +static void dummy1() { + // Fix the weak function order of J3DAnmTransform::getTransform. + // There was most likely an unused function here that got stripped out. + j3dSys.setCurrentMtxCalc(NULL); + J3DJoint* joint; + J3DAnmTransform* anmTransform; + anmTransform->getTransform(0, &joint->getTransformInfo()); +} + /* 8000DCF4-8000DD4C .text isCurrentSolidHeap__Fv */ bool isCurrentSolidHeap() { if (JKRGetCurrentHeap()->getHeapType() != 'SLID') { @@ -2590,12 +2597,3 @@ int mDoExt_3DlineMat1_c::getMaterialID() { int mDoExt_3DlineMat0_c::getMaterialID() { return 0; } - -/* 80016E40-80016F14 .text __dt__15mDoExt_McaMorf2Fv */ -mDoExt_McaMorf2::~mDoExt_McaMorf2() {} - -/* 80017000-800170D4 .text __dt__14mDoExt_McaMorfFv */ -mDoExt_McaMorf::~mDoExt_McaMorf() {} - -/* 800170D4-800171BC .text __dt__28mDoExt_MtxCalcAnmBlendTblOldFv */ -mDoExt_MtxCalcAnmBlendTblOld::~mDoExt_MtxCalcAnmBlendTblOld() {}