diff --git a/configure.py b/configure.py index c6ae21348..26e2dc918 100644 --- a/configure.py +++ b/configure.py @@ -257,7 +257,7 @@ config.libs = [ Object(NonMatching, "m_Do/m_Do_graphic.cpp"), Object(Matching, "m_Do/m_Do_machine.cpp"), Object(NonMatching, "m_Do/m_Do_mtx.cpp"), - Object(NonMatching, "m_Do/m_Do_ext.cpp"), + Object(NonMatching, "m_Do/m_Do_ext.cpp", cflags=[*cflags_framework, "-sym off"]), Object(NonMatching, "m_Do/m_Do_lib.cpp"), Object(Matching, "m_Do/m_Do_hostIO.cpp"), Object(Matching, "m_Do/m_Do_Reset.cpp"), diff --git a/include/JSystem/J3DGraphAnimator/J3DJoint.h b/include/JSystem/J3DGraphAnimator/J3DJoint.h index 742a0888e..632d1f031 100644 --- a/include/JSystem/J3DGraphAnimator/J3DJoint.h +++ b/include/JSystem/J3DGraphAnimator/J3DJoint.h @@ -1,8 +1,9 @@ #ifndef J3DJOINT_H #define J3DJOINT_H -#include "JSystem/J3DGraphBase/J3DTransform.h" #include "JSystem/J3DGraphAnimator/J3DNode.h" +#include "JSystem/J3DGraphBase/J3DSys.h" +#include "JSystem/J3DGraphBase/J3DTransform.h" class J3DAnmTransform; class J3DJoint; @@ -11,42 +12,105 @@ class J3DMtxBuffer; class J3DMtxCalc { public: - static void setMtxBuffer(J3DMtxBuffer*); + virtual void init(const Vec&, const Mtx&) {} + virtual void recursiveCalc(J3DNode*) {} + virtual void calcTransform(u16, const J3DTransformInfo&) {} + virtual void calc(u16) {} - virtual ~J3DMtxCalc(); - virtual void init(Vec const& param_0, const Mtx&) = 0; - virtual void recursiveCalc(J3DNode *); - virtual void calc() = 0; - virtual void calcTransform(u16, J3DTransformInfo const &) = 0; + void initAnm() { + for (int i = 0; i < 4; i++) { + mOne[i] = 0; + mTwo[i] = 0.0f; + } + } + void setAnmTransform(J3DAnmTransform* mAnmTransform); - static J3DMtxBuffer* getMtxBuffer() { return mMtxBuffer; } - static J3DJoint* getJoint() { return mJoint; } - static void setJoint(J3DJoint* joint) { mJoint = joint; } - - static J3DMtxBuffer* mMtxBuffer; - static J3DJoint* mJoint; -}; // Size: 0x4 - -class J3DMtxCalcNoAnmBase : public J3DMtxCalc { public: - virtual ~J3DMtxCalcNoAnmBase(); + u32 mOne[4]; + f32 mTwo[4]; }; -template -class J3DMtxCalcNoAnm : public J3DMtxCalcNoAnmBase, public A, public B { +class J3DMtxCalcAnm : public virtual J3DMtxCalc { public: - J3DMtxCalcNoAnm() {} - virtual ~J3DMtxCalcNoAnm() {} - virtual void init(Vec const& param_0, f32 const (¶m_1)[3][4]); - virtual void calc(); + J3DMtxCalcAnm(J3DAnmTransform* mAnmTransform) : J3DMtxCalc() { setAnmTransform(mAnmTransform); } + virtual ~J3DMtxCalcAnm() { initAnm(); } + virtual void calc(u16); +}; + +class J3DMtxCalcBasic : public virtual J3DMtxCalc { +private: + Mtx mBackupMtx; + Vec mBackupS; + Vec mBackupParentS; + +public: + J3DMtxCalcBasic(); + virtual ~J3DMtxCalcBasic() {} + virtual void init(const Vec& vec, const Mtx& mtx); + virtual void recursiveCalc(J3DNode*); + virtual void calcTransform(u16, const J3DTransformInfo&); + virtual void calc(u16); + + Mtx& getBackupMtx() { return mBackupMtx; } + Vec& getBackupS() { return mBackupS; } + Vec& getBackupParentS() { return mBackupParentS; } + + void setBackupS(const Vec& vec) { mBackupS = vec; } + void setBackupParentS(const Vec& vec) { mBackupParentS = vec; } +}; + +class J3DMtxCalcSoftimage : public J3DMtxCalcBasic { +public: + J3DMtxCalcSoftimage() : J3DMtxCalc() {} + virtual ~J3DMtxCalcSoftimage(); + virtual void init(const Vec& vec, const Mtx& mtx); + virtual void calcTransform(u16, const J3DTransformInfo&); +}; + +class J3DMtxCalcMaya : public J3DMtxCalcBasic { +public: + J3DMtxCalcMaya() : J3DMtxCalcBasic() {} + virtual ~J3DMtxCalcMaya() {} + virtual void init(const Vec& vec, const Mtx& mtx) { + // TODO: This breaks some TUs by adding extra data ({0x3F800000, 0x3F800000, 0x3F800000}) + // J3DSys::mParentS = (Vec){1.0f, 1.0f, 1.0f}; + J3DSys::mCurrentS = vec; + J3DSys::mCurrentMtx[0][0] = mtx[0][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[0][1] = mtx[0][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[0][2] = mtx[0][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[0][3] = mtx[0][3]; + J3DSys::mCurrentMtx[1][0] = mtx[1][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[1][1] = mtx[1][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[1][2] = mtx[1][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[1][3] = mtx[1][3]; + J3DSys::mCurrentMtx[2][0] = mtx[2][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[2][1] = mtx[2][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[2][2] = mtx[2][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[2][3] = mtx[2][3]; + } + virtual void calcTransform(u16, const J3DTransformInfo&); +}; + +class J3DMtxCalcMayaAnm : public J3DMtxCalcMaya, public J3DMtxCalcAnm { +public: + J3DMtxCalcMayaAnm(J3DAnmTransform* pAnmTransform) + : J3DMtxCalcMaya(), J3DMtxCalcAnm(pAnmTransform) {} + virtual ~J3DMtxCalcMayaAnm() {} + virtual void calc(u16 v) { J3DMtxCalcAnm::calc(v); } }; class J3DJoint : public J3DNode { public: - J3DJoint(); - void entryIn(); - void recursiveCalc(); + void initialize(); void addMesh(J3DMaterial*); + void calcIn(); + void calcOut(); + void entryIn(); + u32 getType() const { return 'NJNT'; } + void recursiveCalc(); + + J3DJoint(); + ~J3DJoint() {} J3DMaterial* getMesh() { return mMesh; } u16 getJntNo() const { return mJntNo; } @@ -79,24 +143,4 @@ private: /* 0x60 */ J3DMaterial* mMesh; }; // Size: 0x54 -struct J3DMtxCalcJ3DSysInitMaya { - static void init(Vec const&, f32 const (&)[3][4]); -}; - -struct J3DMtxCalcJ3DSysInitBasic { - static void init(Vec const&, f32 const (&)[3][4]); -}; - -struct J3DMtxCalcCalcTransformSoftimage { - static void calcTransform(J3DTransformInfo const&); -}; - -struct J3DMtxCalcCalcTransformMaya { - static void calcTransform(J3DTransformInfo const&); -}; - -struct J3DMtxCalcCalcTransformBasic { - static void calcTransform(J3DTransformInfo const&); -}; - #endif /* J3DJOINT_H */ diff --git a/include/JSystem/J3DGraphAnimator/J3DNode.h b/include/JSystem/J3DGraphAnimator/J3DNode.h index ec61c56f1..ec8a783d4 100644 --- a/include/JSystem/J3DGraphAnimator/J3DNode.h +++ b/include/JSystem/J3DGraphAnimator/J3DNode.h @@ -4,14 +4,15 @@ #include "dolphin/mtx/mtx.h" class J3DNode; +class J3DModelData; typedef int (*J3DNodeCallBack)(J3DNode*, int); class J3DNode { public: - virtual void init(Vec const& param_0, Mtx*); + virtual void init(J3DModelData*) {} virtual void entryIn(); - virtual void calcIn(); - virtual void calcOut(); + virtual void calcIn() {} + virtual void calcOut() {} virtual u32 getType() const; virtual ~J3DNode(); diff --git a/include/JSystem/J3DGraphBase/J3DGD.h b/include/JSystem/J3DGraphBase/J3DGD.h index 254aa8962..caee628b3 100644 --- a/include/JSystem/J3DGraphBase/J3DGD.h +++ b/include/JSystem/J3DGraphBase/J3DGD.h @@ -9,7 +9,7 @@ inline void J3DGDWrite_u8(u8 param) { } inline void J3DGDWrite_u16(u16 param) { - __GDWrite((param & 0xffff) >> 8); + __GDWrite((param >> 8) & 0xff); __GDWrite(param & 0xff); } @@ -20,15 +20,27 @@ inline void J3DGDWrite_u32(u32 param) { __GDWrite(param & 0xff); } -inline void J3DGDWriteXFCmd(u16 param_1, u32 param_2) { +inline void J3DGDWrite_f32(f32 param) { + u32 tmp = *(u32*)¶m; + J3DGDWrite_u32(tmp); +} + +inline void J3DGDWriteXFCmd(u16 cmd, u32 param) { J3DGDWrite_u8(0x10); J3DGDWrite_u16(0); - J3DGDWrite_u16(param_1); - J3DGDWrite_u32(param_2); + J3DGDWrite_u16(cmd); + J3DGDWrite_u32(param); +} + +inline void J3DGDWriteXFCmdHdr(u16 cmd, u8 len) { + J3DGDWrite_u8(0x10); + J3DGDWrite_u16(len - 1); + J3DGDWrite_u16(cmd); } void J3DGDSetGenMode(u8 texGenNum, u8 colorChanNum, u8 tevStageNum, u8 IndTexStageNum, _GXCullMode cullMode); void J3DGDSetGenMode_3Param(u8 texGenNum, u8 tevStageNum, u8 indTexStageNum); +void J3DGDSetTexCoordGen(GXTexGenType, GXTexGenSrc); static inline void J3DFifoLoadIndx(u8 cmd, u16 indx, u16 addr) { GFX_FIFO(u8) = cmd; diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h index 940108e06..17cc0abd7 100644 --- a/include/JSystem/J3DGraphBase/J3DMatBlock.h +++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h @@ -48,14 +48,12 @@ public: virtual J3DNBTScale* getNBTScale(); virtual u32 getTexMtxOffset() const; virtual void setTexMtxOffset(u32); - virtual ~J3DTexGenBlock(); + virtual ~J3DTexGenBlock() {} }; class J3DTexGenBlockPatched : public J3DTexGenBlock { public: - J3DTexGenBlockPatched() { - initialize(); - } + J3DTexGenBlockPatched() { initialize(); } void initialize(); virtual void reset(J3DTexGenBlock*); @@ -79,7 +77,7 @@ public: virtual J3DTexMtx* getTexMtx(u32); virtual u32 getTexMtxOffset() const; virtual void setTexMtxOffset(u32); - virtual ~J3DTexGenBlockPatched(); + virtual ~J3DTexGenBlockPatched() {} protected: /* 0x04 */ u32 mTexGenNum; @@ -90,9 +88,7 @@ protected: class J3DTexGenBlockBasic : public J3DTexGenBlockPatched { public: - J3DTexGenBlockBasic() : mNBTScale(j3dDefaultNBTScaleInfo) { - initialize(); - } + J3DTexGenBlockBasic() : mNBTScale(j3dDefaultNBTScaleInfo) { initialize(); } void initialize(); virtual void reset(J3DTexGenBlock*); @@ -103,7 +99,7 @@ public: virtual void setNBTScale(J3DNBTScale const*); virtual void setNBTScale(J3DNBTScale); virtual J3DNBTScale* getNBTScale(); - virtual ~J3DTexGenBlockBasic(); + virtual ~J3DTexGenBlockBasic() {} private: /* 0x5C */ J3DNBTScale mNBTScale; @@ -111,9 +107,7 @@ private: class J3DTexGenBlock4 : public J3DTexGenBlockPatched { public: - J3DTexGenBlock4() : mNBTScale(j3dDefaultNBTScaleInfo) { - initialize(); - } + J3DTexGenBlock4() : mNBTScale(j3dDefaultNBTScaleInfo) { initialize(); } void initialize(); virtual void reset(J3DTexGenBlock*); @@ -124,7 +118,7 @@ public: virtual void setNBTScale(J3DNBTScale const*); virtual void setNBTScale(J3DNBTScale); virtual J3DNBTScale* getNBTScale(); - virtual ~J3DTexGenBlock4(); + virtual ~J3DTexGenBlock4() {} private: /* 0x5C */ J3DNBTScale mNBTScale; @@ -135,11 +129,11 @@ public: virtual void reset(J3DTevBlock*); virtual void load(); virtual void diff(u32); - virtual void diffTexNo(); - virtual void diffTevReg(); - virtual void diffTexCoordScale(); - virtual void diffTevStage(); - virtual void diffTevStageIndirect(); + virtual void diffTexNo() {} + virtual void diffTevReg() {} + virtual void diffTexCoordScale() {} + virtual void diffTevStage() {} + virtual void diffTevStageIndirect() {} virtual void patch(); virtual void patchTexNo(); virtual void patchTevReg(); @@ -160,10 +154,10 @@ public: virtual void setTevKColor(u32, J3DGXColor const*); virtual void setTevKColor(u32, J3DGXColor); virtual _GXColor* getTevKColor(u32); - virtual void setTevKColorSel(u32, u8 const*); + virtual void setTevKColorSel(u32 i, const u8* pNum) {} virtual void setTevKColorSel(u32, u8); virtual u8 getTevKColorSel(u32); - virtual void setTevKAlphaSel(u32, u8 const*); + virtual void setTevKAlphaSel(u32 i, const u8* pNum) {} virtual void setTevKAlphaSel(u32, u8); virtual u8 getTevKAlphaSel(u32); virtual void setTevStageNum(u8 const*); @@ -171,20 +165,20 @@ public: virtual u8 getTevStageNum() const; virtual void setTevStage(u32, J3DTevStage const*); virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo const*); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable const*); + virtual J3DTevStage* getTevStage(u32); + virtual void setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo* pInfo) {} + virtual void setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo info) {} + virtual void setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) {} virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable); - virtual J3DTevSwapModeTable * getTevSwapModeTable(u32); + virtual J3DTevSwapModeTable* getTevSwapModeTable(u32); virtual void setIndTevStage(u32, J3DIndTevStage const*); virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); + virtual J3DIndTevStage* getIndTevStage(u32); virtual u32 getTexNoOffset() const; - virtual u32 getTevRegOffset() const; - virtual void setTexNoOffset(u32); - virtual void setTevRegOffset(u32); - virtual ~J3DTevBlock(); + virtual u32 getTevRegOffset() const { return 0; } + virtual void setTexNoOffset(u32 offs) { mTexNoOffset = offs; } + virtual void setTevRegOffset(u32 offs) {} + virtual ~J3DTevBlock() {} protected: void indexToPtr_private(u32); @@ -194,13 +188,11 @@ protected: class J3DTevBlockPatched : public J3DTevBlock { public: - J3DTevBlockPatched() { - initialize(); - } + J3DTevBlockPatched() { initialize(); } void initialize(); virtual void reset(J3DTevBlock*); - virtual void load(); + virtual void load() {} virtual void diffTexNo(); virtual void diffTevReg(); virtual void diffTexCoordScale(); @@ -211,37 +203,38 @@ public: virtual void patchTevReg(); virtual void patchTexNoAndTexCoordScale(); virtual void ptrToIndex(); - virtual void indexToPtr(); - virtual u32 getType(); + virtual void indexToPtr() { return indexToPtr_private(mTexNoOffset); } + virtual u32 getType() { return 'TVPT'; } virtual s32 countDLSize(); - virtual void setTexNo(u32, u16 const*); - virtual void setTexNo(u32, u16); - virtual u16 getTexNo(u32) const; - virtual void setTevOrder(u32, J3DTevOrder const*); - virtual void setTevOrder(u32, J3DTevOrder); - virtual J3DTevOrder* getTevOrder(u32); - virtual void setTevColor(u32, J3DGXColorS10 const*); - virtual void setTevColor(u32, J3DGXColorS10); - virtual GXColorS10* getTevColor(u32); - virtual void setTevKColor(u32, J3DGXColor const*); - virtual void setTevKColor(u32, J3DGXColor); - virtual GXColor* getTevKColor(u32); - virtual void setTevKColorSel(u32, u8 const*); - virtual void setTevKColorSel(u32, u8); - virtual u8 getTevKColorSel(u32); - virtual void setTevStageNum(u8 const*); - virtual void setTevStageNum(u8); - virtual u8 getTevStageNum() const; - virtual void setTevStage(u32, J3DTevStage const*); - virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setIndTevStage(u32, J3DIndTevStage const*); - virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); - virtual u32 getTexNoOffset() const; - virtual u32 getTevRegOffset() const; - virtual void setTevRegOffset(u32); - virtual ~J3DTevBlockPatched(); + virtual void setTevStageNum(const u8* pNum) { mTevStageNum = *pNum; } + virtual void setTevStageNum(u8 num) { mTevStageNum = num; } + virtual u8 getTevStageNum() const { return mTevStageNum; } + virtual void setTexNo(u32 i, const u16* pNo) { mTexNo[i] = *pNo; } + virtual void setTexNo(u32 i, u16 no) { mTexNo[i] = no; } + virtual u16 getTexNo(u32 i) const { return mTexNo[i]; } + virtual void setTevOrder(u32 i, const J3DTevOrder* pOrder) { mTevOrder[i] = *pOrder; } + virtual void setTevOrder(u32 i, J3DTevOrder order) { mTevOrder[i] = order; } + virtual J3DTevOrder* getTevOrder(u32 i) { return &mTevOrder[i]; } + virtual void setTevStage(u32 i, const J3DTevStage* pStage) { mTevStage[i] = *pStage; } + virtual void setTevStage(u32 i, J3DTevStage stage) { mTevStage[i] = stage; } + virtual J3DTevStage* getTevStage(u32 i) { return &mTevStage[i]; } + virtual void setIndTevStage(u32 i, const J3DIndTevStage* pStage) { mIndTevStage[i] = *pStage; } + virtual void setIndTevStage(u32 i, J3DIndTevStage stage) { mIndTevStage[i] = stage; } + virtual J3DIndTevStage* getIndTevStage(u32 i) { return &mIndTevStage[i]; } + virtual void setTevColor(u32 i, const J3DGXColorS10* pColor) { mTevColor[i] = *pColor; } + virtual void setTevColor(u32 i, J3DGXColorS10 color) { mTevColor[i] = color; } + virtual GXColorS10* getTevColor(u32 i) { return &mTevColor[i]; } + virtual void setTevKColor(u32 i, const J3DGXColor* pColor) { mTevKColor[i] = *pColor; } + virtual void setTevKColor(u32 i, J3DGXColor color) { mTevKColor[i] = color; } + virtual GXColor* getTevKColor(u32 i) { return &mTevKColor[i]; } + virtual void setTevKColorSel(u32 i, const u8* pSel) { mTevKColorSel[i] = *pSel; } + virtual void setTevKColorSel(u32 i, u8 sel) { mTevKColorSel[i] = sel; } + virtual u8 getTevKColorSel(u32 i) { return mTevKColorSel[i]; } + virtual u32 getTexNoOffset() const { return mTexNoOffset; } + virtual u32 getTevRegOffset() const { return mTevRegOffset; } + + virtual void setTevRegOffset(u32 offs) { mTevRegOffset = offs; } + virtual ~J3DTevBlockPatched() {} private: /* 0x08 */ u16 mTexNo[8]; @@ -261,9 +254,7 @@ class J3DTevBlockNull : public J3DTevBlock { class J3DTevBlock4 : public J3DTevBlock { public: - J3DTevBlock4() { - initialize(); - } + J3DTevBlock4() { initialize(); } void initialize(); virtual void reset(J3DTevBlock*); @@ -277,46 +268,52 @@ public: virtual void patchTexNo(); virtual void patchTevReg(); virtual void patchTexNoAndTexCoordScale(); - virtual void ptrToIndex(); - virtual void indexToPtr(); - virtual u32 getType(); + virtual void ptrToIndex() {} + virtual void indexToPtr() { return indexToPtr_private(mTexNoOffset); } + virtual u32 getType() { return 'TVB4'; } virtual s32 countDLSize(); - virtual void setTexNo(u32, u16 const*); - virtual void setTexNo(u32, u16); - virtual u16 getTexNo(u32) const; - virtual void setTevOrder(u32, J3DTevOrder const*); - virtual void setTevOrder(u32, J3DTevOrder); - virtual J3DTevOrder* getTevOrder(u32); - virtual void setTevColor(u32, J3DGXColorS10 const*); - virtual void setTevColor(u32, J3DGXColorS10); - virtual GXColorS10* getTevColor(u32); - virtual void setTevKColor(u32, J3DGXColor const*); - virtual void setTevKColor(u32, J3DGXColor); - virtual GXColor* getTevKColor(u32); - virtual void setTevKColorSel(u32, u8 const*); - virtual void setTevKColorSel(u32, u8); - virtual u8 getTevKColorSel(u32); - virtual void setTevKAlphaSel(u32, u8 const*); - virtual void setTevKAlphaSel(u32, u8); - virtual u8 getTevKAlphaSel(u32); - virtual void setTevStageNum(u8 const*); - virtual void setTevStageNum(u8); - virtual u8 getTevStageNum() const; - virtual void setTevStage(u32, J3DTevStage const*); - virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo const*); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable const*); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable); - virtual J3DTevSwapModeTable * getTevSwapModeTable(u32); - virtual void setIndTevStage(u32, J3DIndTevStage const*); - virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); - virtual u32 getTexNoOffset() const; - virtual u32 getTevRegOffset() const; - virtual void setTevRegOffset(u32); - virtual ~J3DTevBlock4(); + virtual void setTexNo(u32 i, const u16* pNo) { mTexNo[i] = *pNo; } + virtual void setTexNo(u32 i, u16 no) { mTexNo[i] = no; } + virtual u16 getTexNo(u32 i) const { return mTexNo[i]; } + virtual void setTevOrder(u32 i, const J3DTevOrder* pOrder) { mTevOrder[i] = *pOrder; } + virtual void setTevOrder(u32 i, J3DTevOrder order) { mTevOrder[i] = order; } + virtual J3DTevOrder* getTevOrder(u32 i) { return &mTevOrder[i]; } + virtual void setTevColor(u32 i, const J3DGXColorS10* pColor) { mTevColor[i] = *pColor; } + virtual void setTevColor(u32 i, J3DGXColorS10 color) { mTevColor[i] = color; } + virtual GXColorS10* getTevColor(u32 i) { return &mTevColor[i]; } + virtual void setTevKColor(u32 i, const J3DGXColor* pColor) { mTevKColor[i] = *pColor; } + virtual void setTevKColor(u32 i, J3DGXColor color) { mTevKColor[i] = color; } + virtual GXColor* getTevKColor(u32 i) { return &mTevKColor[i]; } + virtual void setTevKColorSel(u32 i, const u8* pNum) { mTevKColorSel[i] = *pNum; } + virtual void setTevKColorSel(u32 i, u8 num) { mTevKColorSel[i] = num; } + virtual u8 getTevKColorSel(u32 i) { return mTevKColorSel[i]; } + virtual void setTevKAlphaSel(u32 i, const u8* pNum) { mTevKAlphaSel[i] = *pNum; } + virtual void setTevKAlphaSel(u32 i, u8 num) { mTevKAlphaSel[i] = num; } + virtual u8 getTevKAlphaSel(u32 i) { return mTevKAlphaSel[i]; } + virtual void setTevStageNum(const u8* pNum) { mTevStageNum = *pNum; } + virtual void setTevStageNum(u8 num) { mTevStageNum = num; } + virtual u8 getTevStageNum() const { return mTevStageNum; } + virtual void setTevStage(u32 i, const J3DTevStage* pStage) { mTevStage[i] = *pStage; } + virtual void setTevStage(u32 i, J3DTevStage stage) { mTevStage[i] = stage; } + virtual J3DTevStage* getTevStage(u32 i) { return &mTevStage[i]; } + virtual void setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo*) { /* Nonmatching */ + } + virtual void setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo) { /* Nonmatching */ + } + virtual void setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { + mTevSwapModeTable[i] = *pTable; + } + virtual void setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { + mTevSwapModeTable[i] = table; + } + virtual J3DTevSwapModeTable* getTevSwapModeTable(u32 i) { return &mTevSwapModeTable[i]; } + virtual void setIndTevStage(u32 i, const J3DIndTevStage* pStage) { mIndTevStage[i] = *pStage; } + virtual void setIndTevStage(u32 i, J3DIndTevStage stage) { mIndTevStage[i] = stage; } + virtual J3DIndTevStage* getIndTevStage(u32 i) { return &mIndTevStage[i]; } + virtual u32 getTexNoOffset() const { return mTexNoOffset; } + virtual u32 getTevRegOffset() const { return mTevRegOffset; } + virtual void setTevRegOffset(u32 offs) { mTevRegOffset = offs; } + virtual ~J3DTevBlock4() {} private: /* 0x08 */ u16 mTexNo[4]; @@ -334,9 +331,7 @@ private: class J3DTevBlock2 : public J3DTevBlock { public: - J3DTevBlock2() { - initialize(); - } + J3DTevBlock2() { initialize(); } void initialize(); virtual void reset(J3DTevBlock*); @@ -350,46 +345,52 @@ public: virtual void patchTexNo(); virtual void patchTevReg(); virtual void patchTexNoAndTexCoordScale(); - virtual void ptrToIndex(); - virtual void indexToPtr(); - virtual u32 getType(); + virtual void ptrToIndex() {} + virtual void indexToPtr() { return indexToPtr_private(mTexNoOffset); } + virtual u32 getType() { return 'TVB2'; } virtual s32 countDLSize(); - virtual void setTexNo(u32, u16 const*); - virtual void setTexNo(u32, u16); - virtual u16 getTexNo(u32) const; - virtual void setTevOrder(u32, J3DTevOrder const*); - virtual void setTevOrder(u32, J3DTevOrder); - virtual J3DTevOrder* getTevOrder(u32); - virtual void setTevColor(u32, J3DGXColorS10 const*); - virtual void setTevColor(u32, J3DGXColorS10); - virtual GXColorS10* getTevColor(u32); - virtual void setTevKColor(u32, J3DGXColor const*); - virtual void setTevKColor(u32, J3DGXColor); - virtual GXColor* getTevKColor(u32); - virtual void setTevKColorSel(u32, u8 const*); - virtual void setTevKColorSel(u32, u8); - virtual u8 getTevKColorSel(u32); - virtual void setTevKAlphaSel(u32, u8 const*); - virtual void setTevKAlphaSel(u32, u8); - virtual u8 getTevKAlphaSel(u32); - virtual void setTevStageNum(u8 const*); - virtual void setTevStageNum(u8); - virtual u8 getTevStageNum() const; - virtual void setTevStage(u32, J3DTevStage const*); - virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo const*); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable const*); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable); - virtual J3DTevSwapModeTable * getTevSwapModeTable(u32); - virtual void setIndTevStage(u32, J3DIndTevStage const*); - virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); - virtual u32 getTexNoOffset() const; - virtual u32 getTevRegOffset() const; - virtual void setTevRegOffset(u32); - virtual ~J3DTevBlock2(); + virtual void setTexNo(u32 i, const u16* pNo) { mTexNo[i] = *pNo; } + virtual void setTexNo(u32 i, u16 no) { mTexNo[i] = no; } + virtual u16 getTexNo(u32 i) const { return mTexNo[i]; } + virtual void setTevOrder(u32 i, const J3DTevOrder* pOrder) { mTevOrder[i] = *pOrder; } + virtual void setTevOrder(u32 i, J3DTevOrder order) { mTevOrder[i] = order; } + virtual J3DTevOrder* getTevOrder(u32 i) { return &mTevOrder[i]; } + virtual void setTevColor(u32 i, const J3DGXColorS10* pColor) { mTevColor[i] = *pColor; } + virtual void setTevColor(u32 i, J3DGXColorS10 color) { mTevColor[i] = color; } + virtual GXColorS10* getTevColor(u32 i) { return &mTevColor[i]; } + virtual void setTevKColor(u32 i, const J3DGXColor* pColor) { mTevKColor[i] = *pColor; } + virtual void setTevKColor(u32 i, J3DGXColor color) { mTevKColor[i] = color; } + virtual GXColor* getTevKColor(u32 i) { return &mTevKColor[i]; } + virtual void setTevKColorSel(u32 i, const u8* pNum) { mTevKColorSel[i] = *pNum; } + virtual void setTevKColorSel(u32 i, u8 num) { mTevKColorSel[i] = num; } + virtual u8 getTevKColorSel(u32 i) { return mTevKColorSel[i]; } + virtual void setTevKAlphaSel(u32 i, const u8* pNum) { mTevKAlphaSel[i] = *pNum; } + virtual void setTevKAlphaSel(u32 i, u8 num) { mTevKAlphaSel[i] = num; } + virtual u8 getTevKAlphaSel(u32 i) { return mTevKAlphaSel[i]; } + virtual void setTevStageNum(const u8* pNum) { mTevStageNum = *pNum; } + virtual void setTevStageNum(u8 num) { mTevStageNum = num; } + virtual u8 getTevStageNum() const { return mTevStageNum; } + virtual void setTevStage(u32 i, const J3DTevStage* pStage) { mTevStage[i] = *pStage; } + virtual void setTevStage(u32 i, J3DTevStage stage) { mTevStage[i] = stage; } + virtual J3DTevStage* getTevStage(u32 i) { return &mTevStage[i]; } + virtual void setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo*) { /* Nonmatching */ + } + virtual void setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo) { /* Nonmatching */ + } + virtual void setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { + mTevSwapModeTable[i] = *pTable; + } + virtual void setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { + mTevSwapModeTable[i] = table; + } + virtual J3DTevSwapModeTable* getTevSwapModeTable(u32 i) { return &mTevSwapModeTable[i]; } + virtual void setIndTevStage(u32 i, const J3DIndTevStage* pStage) { mIndTevStage[i] = *pStage; } + virtual void setIndTevStage(u32 i, J3DIndTevStage stage) { mIndTevStage[i] = stage; } + virtual J3DIndTevStage* getIndTevStage(u32 i) { return &mIndTevStage[i]; } + virtual u32 getTexNoOffset() const { return mTexNoOffset; } + virtual u32 getTevRegOffset() const { return mTevRegOffset; } + virtual void setTevRegOffset(u32 offs) { mTevRegOffset = offs; } + virtual ~J3DTevBlock2() {} private: /* 0x08 */ u16 mTexNo[2]; @@ -407,9 +408,7 @@ private: class J3DTevBlock16 : public J3DTevBlock { public: - J3DTevBlock16() { - initialize(); - } + J3DTevBlock16() { initialize(); } void initialize(); virtual void reset(J3DTevBlock*); @@ -424,47 +423,58 @@ public: virtual void patchTevReg(); virtual void patchTexNoAndTexCoordScale(); virtual void ptrToIndex(); - virtual void indexToPtr(); - virtual u32 getType(); + virtual void indexToPtr() { return indexToPtr_private(mTexNoOffset); } + virtual u32 getType() { return 'TV16'; } virtual s32 countDLSize(); - virtual void setTexNo(u32, u16 const*); - virtual void setTexNo(u32, u16); - virtual u16 getTexNo(u32) const; - virtual void setTevOrder(u32, J3DTevOrder const*); - virtual void setTevOrder(u32, J3DTevOrder); - virtual J3DTevOrder* getTevOrder(u32); - virtual void setTevColor(u32, J3DGXColorS10 const*); - virtual void setTevColor(u32, J3DGXColorS10); - virtual GXColorS10* getTevColor(u32); - virtual void setTevKColor(u32, J3DGXColor const*); - virtual void setTevKColor(u32, J3DGXColor); - virtual GXColor* getTevKColor(u32); - virtual void setTevKColorSel(u32, u8 const*); - virtual void setTevKColorSel(u32, u8); - virtual u8 getTevKColorSel(u32); - virtual void setTevKAlphaSel(u32, u8 const*); - virtual void setTevKAlphaSel(u32, u8); - virtual u8 getTevKAlphaSel(u32); - virtual void setTevStageNum(u8); - virtual void setTevStageNum(u8 const*); - virtual u8 getTevStageNum() const; - virtual void setTevStage(u32, J3DTevStage const*); - virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo const*); - virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable const*); - virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable); - virtual J3DTevSwapModeTable * getTevSwapModeTable(u32); - virtual void setIndTevStage(u32, J3DIndTevStage const*); - virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); - virtual u32 getTexNoOffset() const; - virtual u32 getTevRegOffset() const; - virtual void setTevRegOffset(u32); - virtual ~J3DTevBlock16(); + virtual void setTexNo(u32 i, const u16* pNo) { mTexNo[i] = *pNo; } + virtual void setTexNo(u32 i, u16 no) { mTexNo[i] = no; } + virtual u16 getTexNo(u32 i) const { return mTexNo[i]; } + virtual void setTevOrder(u32 i, const J3DTevOrder* pOrder) { mTevOrder[i] = *pOrder; } + virtual void setTevOrder(u32 i, J3DTevOrder order) { mTevOrder[i] = order; } + virtual J3DTevOrder* getTevOrder(u32 i) { return &mTevOrder[i]; } + virtual void setTevColor(u32 i, const J3DGXColorS10* pColor) { mTevColor[i] = *pColor; } + virtual void setTevColor(u32 i, J3DGXColorS10 color) { mTevColor[i] = color; } + virtual GXColorS10* getTevColor(u32 i) { return &mTevColor[i]; } + virtual void setTevKColor(u32 i, const J3DGXColor* pColor) { mTevKColor[i] = *pColor; } + virtual void setTevKColor(u32 i, J3DGXColor color) { mTevKColor[i] = color; } + virtual GXColor* getTevKColor(u32 i) { return &mTevKColor[i]; } + virtual void setTevKColorSel(u32 i, const u8* pNum) { mTevKColorSel[i] = *pNum; } + virtual void setTevKColorSel(u32 i, u8 num) { mTevKColorSel[i] = num; } + virtual u8 getTevKColorSel(u32 i) { return mTevKColorSel[i]; } + virtual void setTevKAlphaSel(u32 i, const u8* pNum) { mTevKAlphaSel[i] = *pNum; } + virtual void setTevKAlphaSel(u32 i, u8 num) { mTevKAlphaSel[i] = num; } + virtual u8 getTevKAlphaSel(u32 i) { return mTevKAlphaSel[i]; } + virtual void setTevStageNum(const u8* pNum) { mTevStageNum = *pNum; } + virtual void setTevStageNum(u8 num) { mTevStageNum = num; } + virtual u8 getTevStageNum() const { return mTevStageNum; } + virtual void setTevStage(u32 i, const J3DTevStage* pStage) { mTevStage[i] = *pStage; } + virtual void setTevStage(u32 i, J3DTevStage stage) { mTevStage[i] = stage; } + virtual J3DTevStage* getTevStage(u32 i) { return &mTevStage[i]; } + virtual void setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo* pInfo) { + J3DTevStageTevSwapModeInfo& out = mTevStage[i].mTevSwapModeInfo; + out.field_0x0_29 = pInfo->field_0x0 + 1; + out.field_0x0_31 = pInfo->field_0x0; + } + virtual void setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo info) { + mTevStage[i].mTevSwapModeInfo.field_0x0_29 = info.field_0x0 + 1; + mTevStage[i].mTevSwapModeInfo.field_0x0_31 = info.field_0x0; + } + virtual void setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { + mTevSwapModeTable[i] = *pTable; + } + virtual void setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { + mTevSwapModeTable[i] = table; + } + virtual J3DTevSwapModeTable* getTevSwapModeTable(u32 i) { return &mTevSwapModeTable[i]; } + virtual void setIndTevStage(u32 i, const J3DIndTevStage* pStage) { mIndTevStage[i] = *pStage; } + virtual void setIndTevStage(u32 i, J3DIndTevStage stage) { mIndTevStage[i] = stage; } + virtual J3DIndTevStage* getIndTevStage(u32 i) { return &mIndTevStage[i]; } + virtual u32 getTexNoOffset() const { return mTexNoOffset; } + virtual u32 getTevRegOffset() const { return mTevRegOffset; } + virtual void setTevRegOffset(u32 offs) { mTevRegOffset = offs; } + virtual ~J3DTevBlock16() {} -private: + // private: /* 0x008 */ u16 mTexNo[8]; /* 0x018 */ J3DTevOrder mTevOrder[16]; /* 0x058 */ u8 mTevStageNum; @@ -478,11 +488,12 @@ private: /* 0x170 */ u32 mTevRegOffset; }; // Size: 0x174 +STATIC_ASSERT(offsetof(J3DTevBlock16, mTexNo) == 0x008); +STATIC_ASSERT(offsetof(J3DTevBlock16, mTevStage) == 0x059); + class J3DTevBlock1 : public J3DTevBlock { public: - J3DTevBlock1() { - initialize(); - } + J3DTevBlock1() { initialize(); } void initialize(); virtual void reset(J3DTevBlock*); @@ -496,27 +507,27 @@ public: virtual void patchTexNo(); virtual void patchTevReg(); virtual void patchTexNoAndTexCoordScale(); - virtual void ptrToIndex(); - virtual void indexToPtr(); - virtual u32 getType(); + virtual void ptrToIndex() {} + virtual void indexToPtr() { return indexToPtr_private(mTexNoOffset); } + virtual u32 getType() { return 'TVB1'; } virtual s32 countDLSize(); - virtual void setTexNo(u32, u16 const*); - virtual void setTexNo(u32, u16); - virtual u16 getTexNo(u32) const; - virtual void setTevOrder(u32, J3DTevOrder const*); - virtual void setTevOrder(u32, J3DTevOrder); - virtual J3DTevOrder* getTevOrder(u32); - virtual void setTevStageNum(u8 const*); - virtual void setTevStageNum(u8); - virtual u8 getTevStageNum() const; - virtual void setTevStage(u32, J3DTevStage const*); - virtual void setTevStage(u32, J3DTevStage); - virtual J3DTevStage * getTevStage(u32); - virtual void setIndTevStage(u32, J3DIndTevStage const*); - virtual void setIndTevStage(u32, J3DIndTevStage); - virtual J3DIndTevStage * getIndTevStage(u32); - virtual u32 getTexNoOffset() const; - virtual ~J3DTevBlock1(); + virtual void setTexNo(u32 i, const u16* pNo) { mTexNo[i] = *pNo; } + virtual void setTexNo(u32 i, u16 no) { mTexNo[i] = no; } + virtual u16 getTexNo(u32 i) const { return mTexNo[i]; } + virtual void setTevOrder(u32 i, const J3DTevOrder* pOrder) { mTevOrder[i] = *pOrder; } + virtual void setTevOrder(u32 i, J3DTevOrder order) { mTevOrder[i] = order; } + virtual J3DTevOrder* getTevOrder(u32 i) { return &mTevOrder[i]; } + virtual void setTevStageNum(const u8* pNum) {} + virtual void setTevStageNum(u8 num) {} + virtual u8 getTevStageNum() const { return 1; } + virtual void setTevStage(u32 i, const J3DTevStage* pStage) { mTevStage[i] = *pStage; } + virtual void setTevStage(u32 i, J3DTevStage stage) { mTevStage[i] = stage; } + virtual J3DTevStage* getTevStage(u32 i) { return &mTevStage[i]; } + virtual void setIndTevStage(u32 i, const J3DIndTevStage* pStage) { mIndTevStage[i] = *pStage; } + virtual void setIndTevStage(u32 i, J3DIndTevStage stage) { mIndTevStage[i] = stage; } + virtual J3DIndTevStage* getIndTevStage(u32 i) { return &mIndTevStage[i]; } + virtual u32 getTexNoOffset() const { return mTexNoOffset; } + virtual ~J3DTevBlock1() {} private: /* 0x08 */ u16 mTexNo[1]; @@ -538,9 +549,7 @@ struct J3DZModeInfo { }; struct J3DZMode { - J3DZMode() { - mZModeID = j3dDefaultZModeID; - } + J3DZMode() { mZModeID = j3dDefaultZModeID; } void setZModeInfo(const J3DZModeInfo& info) { mZModeID = calcZModeID(info.field_0x0, info.field_0x1, info.field_0x2); @@ -559,17 +568,13 @@ struct J3DBlendInfo { extern const J3DBlendInfo j3dDefaultBlendInfo; struct J3DBlend : public J3DBlendInfo { - J3DBlend() { - *(J3DBlendInfo*)this = j3dDefaultBlendInfo; - } + J3DBlend() { *(J3DBlendInfo*)this = j3dDefaultBlendInfo; } }; extern const J3DFogInfo j3dDefaultFogInfo; struct J3DFog : public J3DFogInfo { - J3DFog() { - *getFogInfo() = j3dDefaultFogInfo; - } + J3DFog() { *getFogInfo() = j3dDefaultFogInfo; } J3DFogInfo* getFogInfo() { return (J3DFogInfo*)this; } }; @@ -626,23 +631,23 @@ public: virtual void setFog(J3DFog*); virtual J3DFog* getFog(); virtual void setAlphaComp(J3DAlphaComp const*); - virtual void setAlphaComp(J3DAlphaComp); + virtual void setAlphaComp(J3DAlphaComp) {} virtual J3DAlphaComp* getAlphaComp(); virtual void setBlend(J3DBlend const*); - virtual void setBlend(J3DBlend); + virtual void setBlend(J3DBlend) {} virtual J3DBlend* getBlend(); virtual void setZMode(J3DZMode const*); - virtual void setZMode(J3DZMode); + virtual void setZMode(J3DZMode) {} virtual J3DZMode* getZMode(); virtual void setZCompLoc(u8 const*); - virtual void setZCompLoc(u8); + virtual void setZCompLoc(u8) {} virtual u8 getZCompLoc() const; virtual void setDither(u8 const*); virtual void setDither(u8); virtual u8 getDither() const; virtual u32 getFogOffset() const; virtual void setFogOffset(u32); - virtual ~J3DPEBlock(); + virtual ~J3DPEBlock() {} }; class J3DPEBlockXlu : public J3DPEBlock { @@ -671,9 +676,7 @@ public: class J3DPEBlockFull : public J3DPEBlock { public: - J3DPEBlockFull() { - initialize(); - } + J3DPEBlockFull() { initialize(); } void initialize(); virtual void reset(J3DPEBlock*); @@ -683,30 +686,30 @@ public: virtual void diffFog(); virtual void diffBlend(); virtual s32 countDLSize(); - virtual u32 getType(); - virtual void setFog(J3DFog*); - virtual J3DFog* getFog(); - virtual void setAlphaComp(J3DAlphaComp const*); - virtual void setAlphaComp(J3DAlphaComp); - virtual J3DAlphaComp* getAlphaComp(); - virtual void setBlend(J3DBlend const*); - virtual void setBlend(J3DBlend); - virtual J3DBlend* getBlend(); - virtual void setZMode(J3DZMode const*); - virtual void setZMode(J3DZMode); - virtual J3DZMode* getZMode(); - virtual void setZCompLoc(u8 const*); - virtual void setZCompLoc(u8); - virtual u8 getZCompLoc() const; - virtual void setDither(u8 const*); - virtual void setDither(u8); - virtual u8 getDither() const; - virtual u32 getFogOffset() const; - virtual void setFogOffset(u32); - virtual ~J3DPEBlockFull(); + virtual u32 getType() { return 'PEFL'; } + virtual void setFog(J3DFog* pFog) { mFog = pFog; } + virtual J3DFog* getFog() { return mFog; } + virtual void setAlphaComp(const J3DAlphaComp* pAlphaComp) { mAlphaComp = *pAlphaComp; } + virtual void setAlphaComp(J3DAlphaComp alphaComp) { mAlphaComp = alphaComp; } + virtual J3DAlphaComp* getAlphaComp() { return &mAlphaComp; } + virtual void setBlend(const J3DBlend* pBlend) { mBlend = *pBlend; } + virtual void setBlend(J3DBlend blend) { mBlend = blend; } + virtual J3DBlend* getBlend() { return &mBlend; } + virtual void setZMode(const J3DZMode* pZMode) { mZMode = *pZMode; } + virtual void setZMode(J3DZMode zMode) { mZMode = zMode; } + virtual J3DZMode* getZMode() { return &mZMode; } + virtual void setZCompLoc(const u8* pZCompLoc) { mZCompLoc = *pZCompLoc; } + virtual void setZCompLoc(u8 zCompLoc) { mZCompLoc = zCompLoc; } + virtual u8 getZCompLoc() const { return mZCompLoc; } + virtual void setDither(const u8* pDither) { mDither = *pDither; } + virtual void setDither(u8 dither) { mDither = dither; } + virtual u8 getDither() const { return mDither; } + virtual u32 getFogOffset() const { return mFogOffset; } + virtual void setFogOffset(u32 offs) { mFogOffset = offs; } + virtual ~J3DPEBlockFull() {} private: - /* 0x04 */ J3DFog * mFog; + /* 0x04 */ J3DFog* mFog; /* 0x08 */ J3DAlphaComp mAlphaComp; /* 0x0C */ J3DBlend mBlend; /* 0x10 */ J3DZMode mZMode; @@ -717,33 +720,34 @@ private: class J3DPEBlockFogOff : public J3DPEBlock { public: - J3DPEBlockFogOff() { - initialize(); - } + J3DPEBlockFogOff() { initialize(); } void initialize(); virtual void reset(J3DPEBlock*); virtual void load(); - virtual void diff(u32); + virtual void diff(u32 flag) { + if ((flag & 0x20000000) != 0) + diffBlend(); + } virtual void diffBlend(); virtual s32 countDLSize(); - virtual u32 getType(); - virtual void setAlphaComp(J3DAlphaComp const*); - virtual void setAlphaComp(J3DAlphaComp); - virtual J3DAlphaComp* getAlphaComp(); - virtual void setBlend(J3DBlend const*); - virtual void setBlend(J3DBlend); - virtual J3DBlend* getBlend(); - virtual void setZMode(J3DZMode const*); - virtual void setZMode(J3DZMode); - virtual J3DZMode* getZMode(); - virtual void setZCompLoc(u8 const*); - virtual void setZCompLoc(u8); - virtual u8 getZCompLoc() const; - virtual void setDither(u8 const*); - virtual void setDither(u8); - virtual u8 getDither() const; - virtual ~J3DPEBlockFogOff(); + virtual u32 getType() { return 'PEFG'; } + virtual void setAlphaComp(const J3DAlphaComp* pAlphaComp) { mAlphaComp = *pAlphaComp; } + virtual void setAlphaComp(J3DAlphaComp alphaComp) { mAlphaComp = alphaComp; } + virtual J3DAlphaComp* getAlphaComp() { return &mAlphaComp; } + virtual void setBlend(const J3DBlend* pBlend) { mBlend = *pBlend; } + virtual void setBlend(J3DBlend blend) { mBlend = blend; } + virtual J3DBlend* getBlend() { return &mBlend; } + virtual void setZMode(const J3DZMode* pZMode) { mZMode = *pZMode; } + virtual void setZMode(J3DZMode zMode) { mZMode = zMode; } + virtual J3DZMode* getZMode() { return &mZMode; } + virtual void setZCompLoc(const u8* pZCompLoc) { mZCompLoc = *pZCompLoc; } + virtual void setZCompLoc(u8 zCompLoc) { mZCompLoc = zCompLoc; } + virtual u8 getZCompLoc() const { return mZCompLoc; } + virtual void setDither(const u8* pDither) { mDither = *pDither; } + virtual void setDither(u8 dither) { mDither = dither; } + virtual u8 getDither() const { return mDither; } + virtual ~J3DPEBlockFogOff() {} private: /* 0x04 */ J3DAlphaComp mAlphaComp; @@ -754,16 +758,16 @@ private: }; // Size: 0x10 struct J3DIndTexCoordScale { - ~J3DIndTexCoordScale(); J3DIndTexCoordScale(); + ~J3DIndTexCoordScale() {} /* 0x0 */ u8 mScaleS __attribute__((aligned(4))); /* 0x1 */ u8 mScaleT; }; struct J3DIndTexMtx { - ~J3DIndTexMtx(); J3DIndTexMtx(); + ~J3DIndTexMtx() {} /* 0x00 */ Mtx23 mOffsetMtx; /* 0x18 */ u8 mScaleExp; @@ -789,21 +793,19 @@ public: virtual u8 getIndTexStageNum() const; virtual void setIndTexOrder(u32, J3DIndTexOrder); virtual void setIndTexOrder(u32, J3DIndTexOrder const*); - virtual J3DIndTexOrder * getIndTexOrder(u32); + virtual J3DIndTexOrder* getIndTexOrder(u32); virtual void setIndTexMtx(u32, J3DIndTexMtx const*); - virtual void setIndTexMtx(u32, J3DIndTexMtx); - virtual J3DIndTexMtx * getIndTexMtx(u32); - virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale); + virtual void setIndTexMtx(u32, J3DIndTexMtx) {} + virtual J3DIndTexMtx* getIndTexMtx(u32); + virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale) {} virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale const*); - virtual J3DIndTexCoordScale * getIndTexCoordScale(u32); + virtual J3DIndTexCoordScale* getIndTexCoordScale(u32); virtual ~J3DIndBlock() {} }; class J3DIndBlockFull : public J3DIndBlock { public: - J3DIndBlockFull() { - initialize(); - } + J3DIndBlockFull() { initialize(); } void initialize(); virtual void reset(J3DIndBlock*); @@ -815,13 +817,13 @@ public: virtual u8 getIndTexStageNum() const; virtual void setIndTexOrder(u32, J3DIndTexOrder); virtual void setIndTexOrder(u32, J3DIndTexOrder const*); - virtual J3DIndTexOrder * getIndTexOrder(u32); + virtual J3DIndTexOrder* getIndTexOrder(u32); virtual void setIndTexMtx(u32, J3DIndTexMtx const*); virtual void setIndTexMtx(u32, J3DIndTexMtx); - virtual J3DIndTexMtx * getIndTexMtx(u32); + virtual J3DIndTexMtx* getIndTexMtx(u32); virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale const*); virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale); - virtual J3DIndTexCoordScale * getIndTexCoordScale(u32); + virtual J3DIndTexCoordScale* getIndTexCoordScale(u32); virtual ~J3DIndBlockFull(); private: @@ -893,14 +895,12 @@ public: virtual u32 getColorChanOffset() const; virtual void setMatColorOffset(u32); virtual void setColorChanOffset(u32); - virtual ~J3DColorBlock(); + virtual ~J3DColorBlock() {} }; class J3DColorBlockLightOn : public J3DColorBlock { public: - J3DColorBlockLightOn() { - initialize(); - } + J3DColorBlockLightOn() { initialize(); } void initialize(); virtual void load(); @@ -934,7 +934,7 @@ public: virtual u32 getColorChanOffset() const; virtual void setMatColorOffset(u32); virtual void setColorChanOffset(u32); - virtual ~J3DColorBlockLightOn(); + virtual ~J3DColorBlockLightOn() {} private: /* 0x04 */ GXColor mMatColor[2]; @@ -949,9 +949,7 @@ private: class J3DColorBlockLightOff : public J3DColorBlock { public: - J3DColorBlockLightOff() { - initialize(); - } + J3DColorBlockLightOff() { initialize(); } void initialize(); virtual void load(); @@ -980,7 +978,7 @@ public: virtual u32 getColorChanOffset() const; virtual void setMatColorOffset(u32); virtual void setColorChanOffset(u32); - virtual ~J3DColorBlockLightOff(); + virtual ~J3DColorBlockLightOff() {} protected: /* 0x04 */ GXColor mMatColor[2]; @@ -991,11 +989,11 @@ protected: /* 0x1C */ u32 mColorChanOffset; }; // Size: 0x20 +extern int SizeOfJ3DColorBlockLightOffLoad; + class J3DColorBlockAmbientOn : public J3DColorBlockLightOff { public: - J3DColorBlockAmbientOn() { - initialize(); - } + J3DColorBlockAmbientOn() { initialize(); } void initialize(); virtual void load(); @@ -1005,10 +1003,12 @@ public: virtual void setAmbColor(u32, J3DGXColor const*); virtual void setAmbColor(u32, J3DGXColor); virtual GXColor* getAmbColor(u32); - virtual ~J3DColorBlockAmbientOn(); + virtual ~J3DColorBlockAmbientOn() {} protected: /* 0x20 */ GXColor mAmbColor[2]; }; // Size: 0x28 +extern int SizeOfJ3DColorBlockAmbientOnLoad; + #endif /* J3DMATBLOCK_H */ diff --git a/include/JSystem/J3DGraphBase/J3DTevs.h b/include/JSystem/J3DGraphBase/J3DTevs.h index 0905c36c0..b3299b6ad 100644 --- a/include/JSystem/J3DGraphBase/J3DTevs.h +++ b/include/JSystem/J3DGraphBase/J3DTevs.h @@ -12,12 +12,59 @@ struct J3DTevStageInfo { /* 0x5 */ u8 field_0x5; /* 0x6 */ u8 field_0x6; /* 0x7 */ u8 field_0x7; + /* 0x8 */ u8 field_0x8; + /* 0x9 */ u8 field_0x9; + /* 0xA */ u8 field_0xa; + /* 0xB */ u8 field_0xb; + /* 0xC */ u8 field_0xc; + /* 0xD */ u8 field_0xd; + /* 0xE */ u8 field_0xe; + /* 0xF */ u8 field_0xf; + /* 0x10 */ u8 field_0x10; + /* 0x11 */ u8 field_0x11; + /* 0x12 */ u8 field_0x12; + /* 0x13 */ u8 field_0x13; }; -struct J3DTevStage : public J3DTevStageInfo { - J3DTevStage(); - void setTevStageInfo(J3DTevStageInfo const&); - J3DTevStage(J3DTevStageInfo const&); +STATIC_ASSERT(sizeof(J3DTevStageInfo) == 0x14); + +struct J3DTevStageTevSwapModeInfo { + u8 field_0x0_29 : 2; + u8 field_0x0_31 : 2; +}; + +struct J3DTevStage { + J3DTevStage() { + // TODO + // setTevStageInfo(j3dDefaultTevStageInfo); + mTevSwapModeInfo.field_0x0_29 = 0; + mTevSwapModeInfo.field_0x0_31 = 0; + } + J3DTevStage(const J3DTevStageInfo& info) { + setTevStageInfo(info); + mTevSwapModeInfo.field_0x0_29 = 0; + mTevSwapModeInfo.field_0x0_31 = 0; + } + J3DTevStage& operator=(const J3DTevStage& other) { + this->field_0x1 = other.field_0x1; + this->field_0x2 = other.field_0x2; + this->field_0x3 = other.field_0x3; + this->field_0x5 = other.field_0x5; + this->field_0x6 = other.field_0x6; + this->mTevSwapModeInfo = other.mTevSwapModeInfo; + return *this; + } + + void setTevStageInfo(const J3DTevStageInfo&); + + /* 0x0 */ u8 field_0x0; + /* 0x1 */ u8 field_0x1; + /* 0x1 */ u8 field_0x2; + /* 0x3 */ u8 field_0x3; + /* 0x4 */ u8 field_0x4; + /* 0x5 */ u8 field_0x5; + /* 0x6 */ u8 field_0x6; + /* 0x7 */ J3DTevStageTevSwapModeInfo mTevSwapModeInfo; }; struct J3DIndTevStageInfo { diff --git a/include/JSystem/J3DGraphBase/J3DTexture.h b/include/JSystem/J3DGraphBase/J3DTexture.h index 46840e139..c091f403e 100644 --- a/include/JSystem/J3DGraphBase/J3DTexture.h +++ b/include/JSystem/J3DGraphBase/J3DTexture.h @@ -2,10 +2,31 @@ #define J3DTEXTURE_H #include "JSystem/J3DGraphBase/J3DStruct.h" +#include "JSystem/J3DGraphBase/J3DGD.h" #include "JSystem/JUtility/JUTTexture.h" #include "dolphin/mtx/mtx.h" #include "dolphin/types.h" +inline void J3DGDLoadTexMtxImm(Mtx pMtx, u32 i, GXTexMtxType mType) { + u16 cmd = i * 4; + u8 len = mType == GX_MTX2x4 ? 8 : 12; + J3DGDWriteXFCmdHdr(cmd, len); + J3DGDWrite_f32(pMtx[0][0]); + J3DGDWrite_f32(pMtx[0][1]); + J3DGDWrite_f32(pMtx[0][2]); + J3DGDWrite_f32(pMtx[0][3]); + J3DGDWrite_f32(pMtx[1][0]); + J3DGDWrite_f32(pMtx[1][1]); + J3DGDWrite_f32(pMtx[1][2]); + J3DGDWrite_f32(pMtx[1][3]); + if (mType == GX_MTX3x4) { + J3DGDWrite_f32(pMtx[2][0]); + J3DGDWrite_f32(pMtx[2][1]); + J3DGDWrite_f32(pMtx[2][2]); + J3DGDWrite_f32(pMtx[2][3]); + } +} + class J3DTexture { private: /* 0x0 */ u16 mNum; @@ -28,10 +49,15 @@ public: class J3DTexMtx { public: + J3DTexMtx(); J3DTexMtx(const J3DTexMtxInfo& info) { mTexMtxInfo = info; } - void load(u32) const; + ~J3DTexMtx(); + void load(u32 i) const { + GDOverflowCheck(53); + J3DGDLoadTexMtxImm((Mtx&)mMtx, i * 3 + 30, (GXTexMtxType)mTexMtxInfo.mProjection); + }; void calc(f32 const (*)[4]); void calcTexMtx(f32 const (*)[4]); void calcPostTexMtx(f32 const (*)[4]); @@ -48,7 +74,7 @@ private: }; // Size: 0x94 struct J3DTexCoordInfo { - /* 0x0 */ u8 mTexGenType; + /* 0x0 */ u8 mTexGenType __attribute__((aligned(4))); /* 0x1 */ u8 mTexGenSrc; /* 0x2 */ u8 mTexGenMtx; }; @@ -56,21 +82,9 @@ struct J3DTexCoordInfo { struct J3DTexCoord : public J3DTexCoordInfo { J3DTexCoord(); - void setTexCoordInfo(J3DTexCoordInfo *param_1) { - *(J3DTexCoordInfo*)this = *param_1; - } - u8 getTexGenMtx() { return mTexGenMtx & 0xff; } - u16 getTexMtxReg() { return mTexMtxReg & 0xff; } - void setTexGenMtx(u8 v) { mTexGenMtx = v; } - - void resetTexMtxReg() { - mTexMtxReg = mTexGenMtx; - } - - /* 0x4 */ u8 mTexMtxReg; -}; // Size: 0x6 +}; // Size: 0x4 struct J3DDefaultTexCoordInfo { /* 0x0 */ u8 mTexGenType; diff --git a/include/JSystem/J3DU/J3DUMotion.h b/include/JSystem/J3DU/J3DUMotion.h new file mode 100644 index 000000000..ca815357f --- /dev/null +++ b/include/JSystem/J3DU/J3DUMotion.h @@ -0,0 +1,4 @@ +#ifndef J3DUMOTION_H +#define J3DUMOTION_H + +#endif /* J3DUMOTION_H */ diff --git a/include/dolphin/gd/GDBase.h b/include/dolphin/gd/GDBase.h index 32fdeba3c..983893536 100644 --- a/include/dolphin/gd/GDBase.h +++ b/include/dolphin/gd/GDBase.h @@ -7,7 +7,7 @@ extern "C" { #endif -typedef struct GDLObj { +typedef struct _GDLObj { /* 0x0 */ u8* start; /* 0x4 */ u32 length; /* 0x8 */ u8* ptr; @@ -16,18 +16,30 @@ typedef struct GDLObj { extern GDLObj* __GDCurrentDL; -inline void GDSetCurrent(GDLObj* obj) { - __GDCurrentDL = obj; -} +typedef void (*GDOverflowCallback)(void); + +void GDInitGDLObj(GDLObj*, u8*, u32); +void GDFlushCurrToMem(void); +void GDPadCurr32(void); +void GDOverflowed(void); +void GDSetVtxDescv(GXVtxDescList*); inline void __GDWrite(u8 data) { *__GDCurrentDL->ptr++ = data; } +inline void GDSetCurrent(GDLObj* obj) { + __GDCurrentDL = obj; +} + inline u32 GDGetGDLObjOffset(GDLObj* obj) { return (u32)(obj->ptr - obj->start); } +inline u8* GDGetCurrPointer() { + return __GDCurrentDL->ptr; +} + inline void GDSetCurrOffset(s32 offs) { __GDCurrentDL->ptr = __GDCurrentDL->start + offs; } @@ -36,19 +48,35 @@ inline void GDAdvCurrOffset(s32 offs) { __GDCurrentDL->ptr += offs; } +/* Unused inline GDLObj* GDGetCurrent() { return __GDCurrentDL; +} */ + +inline void GDOverflowCheck(u32 len) { + if (__GDCurrentDL->ptr + len > __GDCurrentDL->end) { + GDOverflowed(); + } } -inline u8* GDGetCurrPointer() { - return __GDCurrentDL->ptr; +inline void GDWrite_u32(u32 v) { + GDOverflowCheck(4); + __GDWrite((v >> 24) & 0xff); + __GDWrite((v >> 16) & 0xff); + __GDWrite((v >> 8) & 0xff); + __GDWrite((v >> 0) & 0xff); } -void GDInitGDLObj(GDLObj*, u8*, u32); -void GDFlushCurrToMem(); -void GDPadCurr32(); +inline void GDWrite_u16(u16 v) { + GDOverflowCheck(2); + __GDWrite(v >> 8); + __GDWrite(v & 0xff); +} -typedef void (*GDOverflowCallback)(void); +inline void GDWrite_u8(u8 v) { + GDOverflowCheck(1); + __GDWrite(v); +} #ifdef __cplusplus }; diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 3b420060f..165188a60 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -2,7 +2,10 @@ #define M_DO_EXT_H #include "JSystem/J3DGraphAnimator/J3DAnimation.h" +#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" #include "JSystem/J3DGraphAnimator/J3DModel.h" +#include "JSystem/JUtility/JUTFont.h" +#include "d/d_kankyo.h" class JKRArchive; class JKRAssertHeap; @@ -133,6 +136,8 @@ public: mDoExt_btpAnm() { mpAnm = NULL; } /* 8000D54C */ int init(J3DMaterialTable* i_matTable, J3DAnmTexPattern* i_btk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6); + int init(J3DModelData*, J3DAnmTexPattern*, int, int, float, short, short, bool, int); + int init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, float, short, short, bool, int); /* 8000D5E8 */ void entry(J3DMaterialTable* i_matTable, s16 i_frame); void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } @@ -163,6 +168,29 @@ private: /* 0x14 */ J3DAnmCluster* mpAnm; }; +class mDoExt_bpkAnm : public mDoExt_baseAnm { +public: + int init(J3DModelData*, J3DAnmColor*, int, int, float, short, short, bool, int); + int init(J3DMaterialTable*, J3DAnmColor*, int, int, float, short, short, bool, int); + + void entry(J3DModelData*, float); + void entry(J3DMaterialTable*, float); + +private: + // TODO +}; + +class mDoExt_bvaAnm : public mDoExt_baseAnm { +public: + int init(J3DModel*, J3DAnmVisibilityFull*, int, int, float, short, short, bool, int); + void entry(J3DModel*, short); + + int init(J3DModelData*, J3DAnmTransform*, int, int, float, short, short, bool); + +private: + // TODO +}; + class mDoExt_AnmRatioPack { public: /* 80140DF0 */ ~mDoExt_AnmRatioPack(); @@ -212,20 +240,19 @@ private: /* 0x20 */ Quaternion* mOldFrameQuaternion; }; // Size: 0x24 -struct mDoExt_MtxCalcAnmBlendTblOld - : public J3DMtxCalcNoAnm { - /* 80014EB0 */ virtual ~mDoExt_MtxCalcAnmBlendTblOld(); - /* 8000F4B0 */ virtual void calc(); +struct mDoExt_MtxCalcAnmBlendTblOld : public J3DMtxCalcMaya { + virtual ~mDoExt_MtxCalcAnmBlendTblOld(); + virtual void calc(u16); /* 0x4 */ int mNum; /* 0x8 */ mDoExt_AnmRatioPack* mAnmRatio; }; // Size: 0xC struct mDoExt_MtxCalcAnmBlendTbl : public mDoExt_MtxCalcAnmBlendTblOld { - /* 800D00BC */ J3DAnmTransform* getAnm(int); + J3DAnmTransform* getAnm(int); - /* 80014F3C */ virtual ~mDoExt_MtxCalcAnmBlendTbl(); - /* 8000F26C */ virtual void calc(); + virtual ~mDoExt_MtxCalcAnmBlendTbl(); + virtual void calc(u16); /* 0xC */ mDoExt_MtxCalcOldFrame* mOldFrame; }; @@ -242,18 +269,6 @@ public: class JAIAnimeSound; -class J3DMtxCalcBasic { // Placeholder to fix mDoExt_McaMorf inheritance -public: - virtual ~J3DMtxCalcBasic(); -}; - -class J3DMtxCalcMaya : virtual J3DMtxCalcBasic { // Placeholder to fix mDoExt_McaMorf inheritance -public: - virtual ~J3DMtxCalcMaya(); - - u8 pad[0x48]; -}; - class mDoExt_McaMorf : public J3DMtxCalcMaya { public: mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, float, int, int, int, void*, unsigned long, unsigned long); @@ -277,6 +292,7 @@ public: void update(); void updateDL(); + void updateDL(J3DMaterialTable*); void entry(); void entryDL(); void entryDL(J3DMaterialTable*); @@ -294,8 +310,21 @@ public: /* 0x80 */ JAIAnimeSound * mpSound; /* 0x84 */ mDoExt_McaMorfCallBack1_c * mpCallBack1; /* 0x88 */ mDoExt_McaMorfCallBack2_c * mpCallBack2; - /* 0x8C */ /* virtual inheritance */ - /* 0x94 */ u8 pad2[0xB4 - 0x94]; +}; + +class mDoExt_McaMorf2 { +public: + mDoExt_McaMorf2(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, J3DAnmTransform*, int, f32, int, int, int, void*, u32, u32); + ~mDoExt_McaMorf2(); + + void ERROR_EXIT(); + void calc(u16); + void setAnm(J3DAnmTransform*, J3DAnmTransform*, f32, int, f32, f32, f32, f32, void*); + void setMorf(f32); + void play(Vec*, u32, s8); + void entryDL(); + void calc(); + void stopZelAnime(); }; class mDoExt_3DlineMat_c { @@ -318,6 +347,89 @@ private: /* 0x10 */ mDoExt_3DlineMat_c* mp3DlineMat; }; +class mDoExt_backupMatBlock_c { +public: + mDoExt_backupMatBlock_c(); + ~mDoExt_backupMatBlock_c(); + + void store(J3DMaterial*); + void restore(J3DMaterial*); + +private: + // TODO +}; + +class mDoExt_backupMaterial_c { +public: + void create(J3DModelData*); + void create(u16); + void restore(J3DModelData*); + +private: + // TODO +}; + +class mDoExt_invisibleModel { +public: + void create(J3DModel*); + + void entry(); + void entryMaskOff(); + + void updateDL(J3DModel*); + void updateDL(mDoExt_McaMorf*); +}; + +class mDoExt_invJntPacket : public J3DPacket { +public: + mDoExt_invJntPacket(); + ~mDoExt_invJntPacket(); + + void draw(); +}; + +class mDoExt_offCupOnAupPacket : public J3DPacket { +public: + ~mDoExt_offCupOnAupPacket(); + + void draw(); +}; + +class mDoExt_onCupOffAupPacket : public J3DPacket { +public: + ~mDoExt_onCupOffAupPacket(); + + void draw(); +}; + +class mDoExt_3Dline_c { +public: + mDoExt_3Dline_c(); + ~mDoExt_3Dline_c(); + + int init(u16, int, int); +}; + +class mDoExt_3DlineMat0_c { +public: + int init(u16, u16, int); + void setMaterial(); + void draw(); + void update(u16, f32, GXColor&, u16, dKy_tevstr_c*); + void update(u16, GXColor&, dKy_tevstr_c*); + int getMaterialID(); +}; + +class mDoExt_3DlineMat1_c { +public: + int init(u16, u16, ResTIMG*, int); + void setMaterial(); + void draw(); + void update(u16, f32, GXColor&, u16, dKy_tevstr_c*); + void update(u16, GXColor&, dKy_tevstr_c*); + int getMaterialID(); +}; + J3DModel* mDoExt_J3DModel__create(J3DModelData* i_modelData, u32 i_modelFlag, u32 i_differedDlistFlag); void mDoExt_modelUpdate(J3DModel* i_model); diff --git a/src/JSystem/J3DGraphAnimator/J3DJoint.cpp b/src/JSystem/J3DGraphAnimator/J3DJoint.cpp index 772db9f29..9b6b94003 100644 --- a/src/JSystem/J3DGraphAnimator/J3DJoint.cpp +++ b/src/JSystem/J3DGraphAnimator/J3DJoint.cpp @@ -7,14 +7,12 @@ #include "dolphin/types.h" /* 802F4DC0-802F4EB0 .text calc__13J3DMtxCalcAnmFUs */ -void J3DMtxCalcAnm::calc(unsigned short) { +void J3DMtxCalcAnm::calc(u16) { /* Nonmatching */ } /* 802F4EB0-802F4EF8 .text __ct__15J3DMtxCalcBasicFv */ -J3DMtxCalcBasic::J3DMtxCalcBasic() { - /* Nonmatching */ -} +J3DMtxCalcBasic::J3DMtxCalcBasic() {} /* 802F4EF8-802F5090 .text recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ void J3DMtxCalcBasic::recursiveCalc(J3DNode*) { @@ -22,22 +20,22 @@ void J3DMtxCalcBasic::recursiveCalc(J3DNode*) { } /* 802F5090-802F525C .text calcTransform__15J3DMtxCalcBasicFUsRC16J3DTransformInfo */ -void J3DMtxCalcBasic::calcTransform(unsigned short, const J3DTransformInfo&) { +void J3DMtxCalcBasic::calcTransform(u16, const J3DTransformInfo&) { /* Nonmatching */ } /* 802F525C-802F52BC .text calc__15J3DMtxCalcBasicFUs */ -void J3DMtxCalcBasic::calc(unsigned short) { +void J3DMtxCalcBasic::calc(u16) { /* Nonmatching */ } /* 802F52BC-802F5508 .text calcTransform__19J3DMtxCalcSoftimageFUsRC16J3DTransformInfo */ -void J3DMtxCalcSoftimage::calcTransform(unsigned short, const J3DTransformInfo&) { +void J3DMtxCalcSoftimage::calcTransform(u16, const J3DTransformInfo&) { /* Nonmatching */ } /* 802F5508-802F5724 .text calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::calcTransform(unsigned short, const J3DTransformInfo&) { +void J3DMtxCalcMaya::calcTransform(u16, const J3DTransformInfo&) { /* Nonmatching */ } @@ -65,73 +63,3 @@ void J3DJoint::calcOut() { void J3DJoint::entryIn() { /* Nonmatching */ } - -/* 802F5A78-802F5A84 .text getType__8J3DJointCFv */ -void J3DJoint::getType() const { - /* Nonmatching */ -} - -/* 802F5A84-802F5AE4 .text __dt__8J3DJointFv */ -J3DJoint::~J3DJoint() { - /* Nonmatching */ -} - -/* 802F5AE4-802F5AF8 .text @8@36@calc__13J3DMtxCalcAnmFUs */ -void J3DMtxCalcAnm::@8@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 802F5AF8-802F5B0C .text @80@36@calcTransform__15J3DMtxCalcBasicFUsRC16J3DTransformInfo */ -void J3DMtxCalcBasic::@80@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 802F5B0C-802F5B20 .text @80@36@init__15J3DMtxCalcBasicFRC3VecRA3_A4_Cf */ -void J3DMtxCalcBasic::@80@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 802F5B20-802F5B34 .text @80@36@calcTransform__19J3DMtxCalcSoftimageFUsRC16J3DTransformInfo */ -void J3DMtxCalcSoftimage::@80@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 802F5B34-802F5B48 .text @80@36@init__19J3DMtxCalcSoftimageFRC3VecRA3_A4_Cf */ -void J3DMtxCalcSoftimage::@80@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 802F5B48-802F5B5C .text @80@36@calc__15J3DMtxCalcBasicFUs */ -void J3DMtxCalcBasic::@80@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 802F5B5C-802F5B70 .text @80@36@calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::@80@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 802F5B70-802F5B84 .text @80@36@recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ -void J3DMtxCalcBasic::@80@36@recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 802F5B84-802F5B98 .text @80@36@init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::@80@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 802F5B98-802F5B9C .text calcOut__7J3DNodeFv */ -void J3DNode::calcOut() { - /* Nonmatching */ -} - -/* 802F5B9C-802F5BA0 .text calcIn__7J3DNodeFv */ -void J3DNode::calcIn() { - /* Nonmatching */ -} - -/* 802F5BA0-802F5BA4 .text init__7J3DNodeFP12J3DModelData */ -void J3DNode::init(J3DModelData*) { - /* Nonmatching */ -} diff --git a/src/JSystem/J3DGraphBase/J3DMatBlock.cpp b/src/JSystem/J3DGraphBase/J3DMatBlock.cpp index 0c8f6a4c3..b8481e2bf 100644 --- a/src/JSystem/J3DGraphBase/J3DMatBlock.cpp +++ b/src/JSystem/J3DGraphBase/J3DMatBlock.cpp @@ -3,8 +3,9 @@ // Translation Unit: J3DMatBlock.cpp // +#include "JSystem/J3DGraphBase/J3DTexture.h" +#include "JSystem/J3DGraphBase/J3DTransform.h" #include "JSystem/J3DGraphBase/J3DMatBlock.h" -#include "JSystem/J3DGraphBase/J3DGD.h" #include "dolphin/gd/GDBase.h" #include "dolphin/os/OSCache.h" #include "dolphin/types.h" @@ -21,6 +22,14 @@ extern void loadTexNo(u32, const u16 &); extern void J3DGDSetTevColorS10(GXTevRegID, GXColorS10); extern void J3DGDSetTevKColor(GXTevKColorID, GXColor); +static int SizeOfLoadMatColors = 13; +static int SizeOfLoadAmbColors = 13; +static int SizeOfLoadColorChans = 21; + +static int SizeOfJ3DColorBlockLightOffLoad = SizeOfLoadMatColors + SizeOfLoadColorChans; +static int SizeOfJ3DColorBlockAmbientOnLoad = + SizeOfLoadMatColors + SizeOfLoadAmbColors + SizeOfLoadColorChans; + /* 802DF794-802DF7E4 .text initialize__21J3DColorBlockLightOffFv */ void J3DColorBlockLightOff::initialize() { mColorChanNum = 0; @@ -297,16 +306,43 @@ s32 J3DPEBlockFull::countDLSize() { /* 802DFED8-802E0438 .text load__21J3DColorBlockLightOffFv */ void J3DColorBlockLightOff::load() { + GDOverflowCheck(SizeOfJ3DColorBlockLightOffLoad); + mMatColorOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); + mColorChanOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100E, 4); /* Nonmatching */ } /* 802E0438-802E0AC0 .text load__22J3DColorBlockAmbientOnFv */ void J3DColorBlockAmbientOn::load() { + GDOverflowCheck(SizeOfJ3DColorBlockAmbientOnLoad); + mMatColorOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); + J3DGDWriteXFCmdHdr(0x100A, 2); + J3DGDWrite_u32(*(u32*)(&mAmbColor[0])); + J3DGDWrite_u32(*(u32*)(&mAmbColor[1])); + mColorChanOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100E, 4); /* Nonmatching */ } /* 802E0AC0-802E1180 .text load__20J3DColorBlockLightOnFv */ void J3DColorBlockLightOn::load() { + GDOverflowCheck(SizeOfJ3DColorBlockAmbientOnLoad); + mMatColorOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); + J3DGDWriteXFCmdHdr(0x100A, 2); + J3DGDWrite_u32(*(u32*)(&mAmbColor[0])); + J3DGDWrite_u32(*(u32*)(&mAmbColor[1])); + mColorChanOffset = GDGetGDLObjOffset(__GDCurrentDL); + J3DGDWriteXFCmdHdr(0x100E, 4); /* Nonmatching */ } @@ -318,7 +354,14 @@ void J3DColorBlockLightOff::patch() { /* 802E11CC-802E1378 .text patchMatColor__21J3DColorBlockLightOffFv */ void J3DColorBlockLightOff::patchMatColor() { - /* Nonmatching */ + GDSetCurrOffset(mMatColorOffset); + u8* start = GDGetCurrPointer(); + GDOverflowCheck(SizeOfLoadMatColors); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); + u8* end = GDGetCurrPointer(); + DCFlushRange(start, (u32)(end - start)); } /* 802E1378-802E17B4 .text patchLight__21J3DColorBlockLightOffFv */ @@ -334,7 +377,14 @@ void J3DColorBlockLightOn::patch() { /* 802E1800-802E19AC .text patchMatColor__20J3DColorBlockLightOnFv */ void J3DColorBlockLightOn::patchMatColor() { - /* Nonmatching */ + GDSetCurrOffset(mMatColorOffset); + u8* start = GDGetCurrPointer(); + GDOverflowCheck(SizeOfLoadMatColors); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); + u8* end = GDGetCurrPointer(); + DCFlushRange(start, (u32)(end - start)); } /* 802E19AC-802E1E18 .text patchLight__20J3DColorBlockLightOnFv */ @@ -352,7 +402,10 @@ void J3DColorBlockLightOff::diff(u32 flag) { /* 802E1E80-802E1FFC .text diffMatColor__21J3DColorBlockLightOffFv */ void J3DColorBlockLightOff::diffMatColor() { - /* Nonmatching */ + GDOverflowCheck(SizeOfLoadMatColors); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); } /* 802E1FFC-802E2408 .text diffLight__21J3DColorBlockLightOffFv */ @@ -370,7 +423,10 @@ void J3DColorBlockLightOn::diff(u32 flag) { /* 802E2478-802E25F4 .text diffMatColor__20J3DColorBlockLightOnFv */ void J3DColorBlockLightOn::diffMatColor() { - /* Nonmatching */ + GDOverflowCheck(SizeOfLoadMatColors); + J3DGDWriteXFCmdHdr(0x100C, 2); + J3DGDWrite_u32(*(u32*)(&mMatColor[0])); + J3DGDWrite_u32(*(u32*)(&mMatColor[1])); } /* 802E25F4-802E2A38 .text diffLight__20J3DColorBlockLightOnFv */ @@ -414,12 +470,23 @@ void J3DTexGenBlockPatched::diff(u32 flag) { /* 802E2D90-802E2DF0 .text diffTexMtx__21J3DTexGenBlockPatchedFv */ void J3DTexGenBlockPatched::diffTexMtx() { - /* Nonmatching */ + for (u32 i = 0; i < ARRAY_SIZE(mTexMtx); ++i) { + if (mTexMtx[i] != NULL) { + mTexMtx[i]->load(i); + } + } } /* 802E2DF0-802E2ED0 .text diffTexGen__21J3DTexGenBlockPatchedFv */ void J3DTexGenBlockPatched::diffTexGen() { - /* Nonmatching */ + u32 num = mTexGenNum; + if (num > 0) { + J3DGDWriteXFCmdHdr(0x1040, num); + } + for (u32 i = 0; i < num; ++i) { + J3DGDSetTexCoordGen((GXTexGenType)mTexCoord[i].mTexGenType, + (GXTexGenSrc)mTexCoord[i].mTexGenSrc); + } } /* 802E2ED0-802E3110 .text load__12J3DTevBlock1Fv */ @@ -914,1095 +981,7 @@ void J3DTexGenBlockPatched::calc(const Mtx) { /* Nonmatching */ } -/* 802E9920-802E9984 .text load__9J3DTexMtxCFUl */ -void J3DTexMtx::load(u32 i) const { - /* Nonmatching */ -} - -/* 802E9984-802E9F04 .text J3DGDLoadTexMtxImm__FPA4_fUl13_GXTexMtxType */ -void J3DGDLoadTexMtxImm(Mtx pMtx, u32 i, GXTexMtxType) { - /* Nonmatching */ -} - -/* 802E9F04-802E9F08 .text diffTevReg__11J3DTevBlockFv */ -void J3DTevBlock::diffTevReg() { -} - -/* 802E9F08-802E9F0C .text diffTevStageIndirect__11J3DTevBlockFv */ -void J3DTevBlock::diffTevStageIndirect() { -} - -/* 802E9F0C-802E9F10 .text diffTevStage__11J3DTevBlockFv */ -void J3DTevBlock::diffTevStage() { -} - -/* 802E9F10-802E9F14 .text diffTexCoordScale__11J3DTevBlockFv */ -void J3DTevBlock::diffTexCoordScale() { -} - -/* 802E9F14-802E9F18 .text diffTexNo__11J3DTevBlockFv */ -void J3DTevBlock::diffTexNo() { -} - -/* 802E9F18-802E9F24 .text getType__14J3DPEBlockFullFv */ -u32 J3DPEBlockFull::getType() { - return 'PEFL'; -} - -/* 802E9F24-802E9F2C .text setFog__14J3DPEBlockFullFP6J3DFog */ -void J3DPEBlockFull::setFog(J3DFog* pFog) { - mFog = pFog; -} - -/* 802E9F2C-802E9F34 .text getFog__14J3DPEBlockFullFv */ -J3DFog * J3DPEBlockFull::getFog() { - return mFog; -} - -/* 802E9F34-802E9F50 .text setAlphaComp__14J3DPEBlockFullF12J3DAlphaComp */ -void J3DPEBlockFull::setAlphaComp(J3DAlphaComp alphaComp) { - mAlphaComp = alphaComp; -} - -/* 802E9F50-802E9F6C .text setAlphaComp__14J3DPEBlockFullFPC12J3DAlphaComp */ -void J3DPEBlockFull::setAlphaComp(const J3DAlphaComp* pAlphaComp) { - mAlphaComp = *pAlphaComp; -} - -/* 802E9F6C-802E9F74 .text getAlphaComp__14J3DPEBlockFullFv */ -J3DAlphaComp * J3DPEBlockFull::getAlphaComp() { - return &mAlphaComp; -} - -/* 802E9F74-802E9F98 .text setBlend__14J3DPEBlockFullF8J3DBlend */ -void J3DPEBlockFull::setBlend(J3DBlend blend) { - mBlend = blend; -} - -/* 802E9F98-802E9FBC .text setBlend__14J3DPEBlockFullFPC8J3DBlend */ -void J3DPEBlockFull::setBlend(const J3DBlend* pBlend) { - mBlend = *pBlend; -} - -/* 802E9FBC-802E9FC4 .text getBlend__14J3DPEBlockFullFv */ -J3DBlend * J3DPEBlockFull::getBlend() { - return &mBlend; -} - -/* 802E9FC4-802E9FD0 .text setZMode__14J3DPEBlockFullF8J3DZMode */ -void J3DPEBlockFull::setZMode(J3DZMode zMode) { - mZMode = zMode; -} - -/* 802E9FD0-802E9FDC .text setZMode__14J3DPEBlockFullFPC8J3DZMode */ -void J3DPEBlockFull::setZMode(const J3DZMode* pZMode) { - mZMode = *pZMode; -} - -/* 802E9FDC-802E9FE4 .text getZMode__14J3DPEBlockFullFv */ -J3DZMode * J3DPEBlockFull::getZMode() { - return &mZMode; -} - -/* 802E9FE4-802E9FEC .text setZCompLoc__14J3DPEBlockFullFUc */ -void J3DPEBlockFull::setZCompLoc(u8 zCompLoc) { - mZCompLoc = zCompLoc; -} - -/* 802E9FEC-802E9FF8 .text setZCompLoc__14J3DPEBlockFullFPCUc */ -void J3DPEBlockFull::setZCompLoc(const u8* pZCompLoc) { - mZCompLoc = *pZCompLoc; -} - -/* 802E9FF8-802EA000 .text getZCompLoc__14J3DPEBlockFullCFv */ -u8 J3DPEBlockFull::getZCompLoc() const { - return mZCompLoc; -} - -/* 802EA000-802EA008 .text setDither__14J3DPEBlockFullFUc */ -void J3DPEBlockFull::setDither(u8 dither) { - mDither = dither; -} - -/* 802EA008-802EA014 .text setDither__14J3DPEBlockFullFPCUc */ -void J3DPEBlockFull::setDither(const u8* pDither) { - mDither = *pDither; -} - -/* 802EA014-802EA01C .text getDither__14J3DPEBlockFullCFv */ -u8 J3DPEBlockFull::getDither() const { - return mDither; -} - -/* 802EA01C-802EA024 .text getFogOffset__14J3DPEBlockFullCFv */ -u32 J3DPEBlockFull::getFogOffset() const { - return mFogOffset; -} - -/* 802EA024-802EA02C .text setFogOffset__14J3DPEBlockFullFUl */ -void J3DPEBlockFull::setFogOffset(u32 offs) { - mFogOffset = offs; -} - -/* 802EA02C-802EA088 .text __dt__14J3DPEBlockFullFv */ -J3DPEBlockFull::~J3DPEBlockFull() { - /* Nonmatching */ -} - -/* 802EA088-802EA0BC .text diff__16J3DPEBlockFogOffFUl */ -void J3DPEBlockFogOff::diff(u32 flag) { - if ((flag & 0x20000000) != 0) - diffBlend(); -} - -/* 802EA0BC-802EA0C8 .text getType__16J3DPEBlockFogOffFv */ -u32 J3DPEBlockFogOff::getType() { - return 'PEFG'; -} - -/* 802EA0C8-802EA0E4 .text setAlphaComp__16J3DPEBlockFogOffF12J3DAlphaComp */ -void J3DPEBlockFogOff::setAlphaComp(J3DAlphaComp alphaComp) { - mAlphaComp = alphaComp; -} - -/* 802EA0E4-802EA100 .text setAlphaComp__16J3DPEBlockFogOffFPC12J3DAlphaComp */ -void J3DPEBlockFogOff::setAlphaComp(const J3DAlphaComp* pAlphaComp) { - mAlphaComp = *pAlphaComp; -} - -/* 802EA100-802EA108 .text getAlphaComp__16J3DPEBlockFogOffFv */ -J3DAlphaComp * J3DPEBlockFogOff::getAlphaComp() { - return &mAlphaComp; -} - -/* 802EA108-802EA12C .text setBlend__16J3DPEBlockFogOffF8J3DBlend */ -void J3DPEBlockFogOff::setBlend(J3DBlend blend) { - mBlend = blend; -} - -/* 802EA12C-802EA150 .text setBlend__16J3DPEBlockFogOffFPC8J3DBlend */ -void J3DPEBlockFogOff::setBlend(const J3DBlend* pBlend) { - mBlend = *pBlend; -} - -/* 802EA150-802EA158 .text getBlend__16J3DPEBlockFogOffFv */ -J3DBlend * J3DPEBlockFogOff::getBlend() { - return &mBlend; -} - -/* 802EA158-802EA164 .text setZMode__16J3DPEBlockFogOffF8J3DZMode */ -void J3DPEBlockFogOff::setZMode(J3DZMode zMode) { - mZMode = zMode; -} - -/* 802EA164-802EA170 .text setZMode__16J3DPEBlockFogOffFPC8J3DZMode */ -void J3DPEBlockFogOff::setZMode(const J3DZMode* pZMode) { - mZMode = *pZMode; -} - -/* 802EA170-802EA178 .text getZMode__16J3DPEBlockFogOffFv */ -J3DZMode * J3DPEBlockFogOff::getZMode() { - return &mZMode; -} - -/* 802EA178-802EA180 .text setZCompLoc__16J3DPEBlockFogOffFUc */ -void J3DPEBlockFogOff::setZCompLoc(u8 zCompLoc) { - mZCompLoc = zCompLoc; -} - -/* 802EA180-802EA18C .text setZCompLoc__16J3DPEBlockFogOffFPCUc */ -void J3DPEBlockFogOff::setZCompLoc(const u8* pZCompLoc) { - mZCompLoc = *pZCompLoc; -} - -/* 802EA18C-802EA194 .text getZCompLoc__16J3DPEBlockFogOffCFv */ -u8 J3DPEBlockFogOff::getZCompLoc() const { - return mZCompLoc; -} - -/* 802EA194-802EA19C .text setDither__16J3DPEBlockFogOffFUc */ -void J3DPEBlockFogOff::setDither(u8 dither) { - mDither = dither; -} - -/* 802EA19C-802EA1A8 .text setDither__16J3DPEBlockFogOffFPCUc */ -void J3DPEBlockFogOff::setDither(const u8* pDither) { - mDither = *pDither; -} - -/* 802EA1A8-802EA1B0 .text getDither__16J3DPEBlockFogOffCFv */ -u8 J3DPEBlockFogOff::getDither() const { - return mDither; -} - -/* 802EA1B0-802EA20C .text __dt__16J3DPEBlockFogOffFv */ -J3DPEBlockFogOff::~J3DPEBlockFogOff() { - /* Nonmatching */ -} - -/* 802EA20C-802EA230 .text indexToPtr__13J3DTevBlock16Fv */ -void J3DTevBlock16::indexToPtr() { - return indexToPtr_private(mTexNoOffset); -} - -/* 802EA230-802EA23C .text getType__13J3DTevBlock16Fv */ -u32 J3DTevBlock16::getType() { - return 'TV16'; -} - -/* 802EA23C-802EA24C .text setTexNo__13J3DTevBlock16FUlUs */ -void J3DTevBlock16::setTexNo(u32 i, u16 no) { - mTexNo[i] = no; -} - -/* 802EA24C-802EA260 .text setTexNo__13J3DTevBlock16FUlPCUs */ -void J3DTevBlock16::setTexNo(u32 i, const u16* pNo) { - mTexNo[i] = *pNo; -} - -/* 802EA260-802EA270 .text getTexNo__13J3DTevBlock16CFUl */ -u16 J3DTevBlock16::getTexNo(u32 i) const { - return mTexNo[i]; -} - -/* 802EA270-802EA294 .text setTevOrder__13J3DTevBlock16FUl11J3DTevOrder */ -void J3DTevBlock16::setTevOrder(u32 i, J3DTevOrder order) { - mTevOrder[i] = order; -} - -/* 802EA294-802EA2B8 .text setTevOrder__13J3DTevBlock16FUlPC11J3DTevOrder */ -void J3DTevBlock16::setTevOrder(u32 i, const J3DTevOrder* pOrder) { - mTevOrder[i] = *pOrder; -} - -/* 802EA2B8-802EA2CC .text getTevOrder__13J3DTevBlock16FUl */ -J3DTevOrder * J3DTevBlock16::getTevOrder(u32 i) { - return &mTevOrder[i]; -} - -/* 802EA2CC-802EA2F8 .text setTevColor__13J3DTevBlock16FUl13J3DGXColorS10 */ -void J3DTevBlock16::setTevColor(u32 i, J3DGXColorS10 color) { - mTevColor[i] = color; -} - -/* 802EA2F8-802EA324 .text setTevColor__13J3DTevBlock16FUlPC13J3DGXColorS10 */ -void J3DTevBlock16::setTevColor(u32 i, const J3DGXColorS10* pColor) { - mTevColor[i] = *pColor; -} - -/* 802EA324-802EA338 .text getTevColor__13J3DTevBlock16FUl */ -GXColorS10 * J3DTevBlock16::getTevColor(u32 i) { - return &mTevColor[i]; -} - -/* 802EA338-802EA364 .text setTevKColor__13J3DTevBlock16FUl10J3DGXColor */ -void J3DTevBlock16::setTevKColor(u32 i, J3DGXColor color) { - mTevKColor[i] = color; -} - -/* 802EA364-802EA390 .text setTevKColor__13J3DTevBlock16FUlPC10J3DGXColor */ -void J3DTevBlock16::setTevKColor(u32 i, const J3DGXColor* pColor) { - mTevKColor[i] = *pColor; -} - -/* 802EA390-802EA3A4 .text getTevKColor__13J3DTevBlock16FUl */ -GXColor * J3DTevBlock16::getTevKColor(u32 i) { - return &mTevKColor[i]; -} - -/* 802EA3A4-802EA3B0 .text setTevKColorSel__13J3DTevBlock16FUlUc */ -void J3DTevBlock16::setTevKColorSel(u32 i, u8 num) { - mTevKColorSel[i] = num; -} - -/* 802EA3B0-802EA3C0 .text setTevKColorSel__13J3DTevBlock16FUlPCUc */ -void J3DTevBlock16::setTevKColorSel(u32 i, const u8* pNum) { - mTevKColorSel[i] = *pNum; -} - -/* 802EA3C0-802EA3CC .text getTevKColorSel__13J3DTevBlock16FUl */ -u8 J3DTevBlock16::getTevKColorSel(u32 i) { - return mTevKColorSel[i]; -} - -/* 802EA3CC-802EA3D8 .text setTevKAlphaSel__13J3DTevBlock16FUlUc */ -void J3DTevBlock16::setTevKAlphaSel(u32 i, u8 num) { - mTevKAlphaSel[i] = num; -} - -/* 802EA3D8-802EA3E8 .text setTevKAlphaSel__13J3DTevBlock16FUlPCUc */ -void J3DTevBlock16::setTevKAlphaSel(u32 i, const u8* pNum) { - mTevKAlphaSel[i] = *pNum; -} - -/* 802EA3E8-802EA3F4 .text getTevKAlphaSel__13J3DTevBlock16FUl */ -u8 J3DTevBlock16::getTevKAlphaSel(u32 i) { - return mTevKAlphaSel[i]; -} - -/* 802EA3F4-802EA3FC .text setTevStageNum__13J3DTevBlock16FUc */ -void J3DTevBlock16::setTevStageNum(u8 num) { - mTevStageNum = num; -} - -/* 802EA3FC-802EA408 .text setTevStageNum__13J3DTevBlock16FPCUc */ -void J3DTevBlock16::setTevStageNum(const u8* pNum) { - mTevStageNum = *pNum; -} - -/* 802EA408-802EA410 .text getTevStageNum__13J3DTevBlock16CFv */ -u8 J3DTevBlock16::getTevStageNum() const { - return mTevStageNum; -} - -/* 802EA410-802EA44C .text setTevStage__13J3DTevBlock16FUl11J3DTevStage */ -void J3DTevBlock16::setTevStage(u32 i, J3DTevStage stage) { - mTevStage[i] = stage; -} - -/* 802EA44C-802EA488 .text setTevStage__13J3DTevBlock16FUlPC11J3DTevStage */ -void J3DTevBlock16::setTevStage(u32 i, const J3DTevStage* pStage) { - mTevStage[i] = *pStage; -} - -/* 802EA488-802EA49C .text getTevStage__13J3DTevBlock16FUl */ -J3DTevStage * J3DTevBlock16::getTevStage(u32 i) { - return &mTevStage[i]; -} - -/* 802EA49C-802EA4D4 .text setTevSwapModeInfo__13J3DTevBlock16FUl18J3DTevSwapModeInfo */ -void J3DTevBlock16::setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo) { - /* Nonmatching */ -} - -/* 802EA4D4-802EA50C .text setTevSwapModeInfo__13J3DTevBlock16FUlPC18J3DTevSwapModeInfo */ -void J3DTevBlock16::setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo*) { - /* Nonmatching */ -} - -/* 802EA50C-802EA51C .text setTevSwapModeTable__13J3DTevBlock16FUl19J3DTevSwapModeTable */ -void J3DTevBlock16::setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { - mTevSwapModeTable[i] = table; -} - -/* 802EA51C-802EA52C .text setTevSwapModeTable__13J3DTevBlock16FUlPC19J3DTevSwapModeTable */ -void J3DTevBlock16::setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { - mTevSwapModeTable[i] = *pTable; -} - -/* 802EA52C-802EA53C .text getTevSwapModeTable__13J3DTevBlock16FUl */ -J3DTevSwapModeTable * J3DTevBlock16::getTevSwapModeTable(u32 i) { - return &mTevSwapModeTable[i]; -} - -/* 802EA53C-802EA550 .text setIndTevStage__13J3DTevBlock16FUl14J3DIndTevStage */ -void J3DTevBlock16::setIndTevStage(u32 i, J3DIndTevStage stage) { - mIndTevStage[i] = stage; -} - -/* 802EA550-802EA564 .text setIndTevStage__13J3DTevBlock16FUlPC14J3DIndTevStage */ -void J3DTevBlock16::setIndTevStage(u32 i, const J3DIndTevStage* pStage) { - mIndTevStage[i] = *pStage; -} - -/* 802EA564-802EA578 .text getIndTevStage__13J3DTevBlock16FUl */ -J3DIndTevStage * J3DTevBlock16::getIndTevStage(u32 i) { - return &mIndTevStage[i]; -} - -/* 802EA578-802EA580 .text getTexNoOffset__13J3DTevBlock16CFv */ -u32 J3DTevBlock16::getTexNoOffset() const { - return mTexNoOffset; -} - -/* 802EA580-802EA588 .text getTevRegOffset__13J3DTevBlock16CFv */ -u32 J3DTevBlock16::getTevRegOffset() const { - return mTevRegOffset; -} - -/* 802EA588-802EA590 .text setTevRegOffset__13J3DTevBlock16FUl */ -void J3DTevBlock16::setTevRegOffset(u32 offs) { - mTevRegOffset = offs; -} - -/* 802EA590-802EA5EC .text __dt__13J3DTevBlock16Fv */ -J3DTevBlock16::~J3DTevBlock16() { - /* Nonmatching */ -} - -/* 802EA5EC-802EA5F4 .text setTexNoOffset__11J3DTevBlockFUl */ -void J3DTevBlock::setTexNoOffset(u32 offs) { - mTexNoOffset = offs; -} - -/* 802EA5F4-802EA5F8 .text ptrToIndex__12J3DTevBlock4Fv */ -void J3DTevBlock4::ptrToIndex() { -} - -/* 802EA5F8-802EA61C .text indexToPtr__12J3DTevBlock4Fv */ -void J3DTevBlock4::indexToPtr() { - return indexToPtr_private(mTexNoOffset); -} - -/* 802EA61C-802EA628 .text getType__12J3DTevBlock4Fv */ -u32 J3DTevBlock4::getType() { - return 'TVB4'; -} - -/* 802EA628-802EA638 .text setTexNo__12J3DTevBlock4FUlUs */ -void J3DTevBlock4::setTexNo(u32 i, u16 no) { - mTexNo[i] = no; -} - -/* 802EA638-802EA64C .text setTexNo__12J3DTevBlock4FUlPCUs */ -void J3DTevBlock4::setTexNo(u32 i, const u16* pNo) { - mTexNo[i] = *pNo; -} - -/* 802EA64C-802EA65C .text getTexNo__12J3DTevBlock4CFUl */ -u16 J3DTevBlock4::getTexNo(u32 i) const { - return mTexNo[i]; -} - -/* 802EA65C-802EA680 .text setTevOrder__12J3DTevBlock4FUl11J3DTevOrder */ -void J3DTevBlock4::setTevOrder(u32 i, J3DTevOrder order) { - mTevOrder[i] = order; -} - -/* 802EA680-802EA6A4 .text setTevOrder__12J3DTevBlock4FUlPC11J3DTevOrder */ -void J3DTevBlock4::setTevOrder(u32 i, const J3DTevOrder* pOrder) { - mTevOrder[i] = *pOrder; -} - -/* 802EA6A4-802EA6B8 .text getTevOrder__12J3DTevBlock4FUl */ -J3DTevOrder * J3DTevBlock4::getTevOrder(u32 i) { - return &mTevOrder[i]; -} - -/* 802EA6B8-802EA6E4 .text setTevColor__12J3DTevBlock4FUl13J3DGXColorS10 */ -void J3DTevBlock4::setTevColor(u32 i, J3DGXColorS10 color) { - mTevColor[i] = color; -} - -/* 802EA6E4-802EA710 .text setTevColor__12J3DTevBlock4FUlPC13J3DGXColorS10 */ -void J3DTevBlock4::setTevColor(u32 i, const J3DGXColorS10* pColor) { - mTevColor[i] = *pColor; -} - -/* 802EA710-802EA724 .text getTevColor__12J3DTevBlock4FUl */ -GXColorS10 * J3DTevBlock4::getTevColor(u32 i) { - return &mTevColor[i]; -} - -/* 802EA724-802EA750 .text setTevKColor__12J3DTevBlock4FUl10J3DGXColor */ -void J3DTevBlock4::setTevKColor(u32 i, J3DGXColor color) { - mTevKColor[i] = color; -} - -/* 802EA750-802EA77C .text setTevKColor__12J3DTevBlock4FUlPC10J3DGXColor */ -void J3DTevBlock4::setTevKColor(u32 i, const J3DGXColor* pColor) { - mTevKColor[i] = *pColor; -} - -/* 802EA77C-802EA790 .text getTevKColor__12J3DTevBlock4FUl */ -GXColor * J3DTevBlock4::getTevKColor(u32 i) { - return &mTevKColor[i]; -} - -/* 802EA790-802EA79C .text setTevKColorSel__12J3DTevBlock4FUlUc */ -void J3DTevBlock4::setTevKColorSel(u32 i, u8 num) { - mTevKColorSel[i] = num; -} - -/* 802EA79C-802EA7AC .text setTevKColorSel__12J3DTevBlock4FUlPCUc */ -void J3DTevBlock4::setTevKColorSel(u32 i, const u8* pNum) { - mTevKColorSel[i] = *pNum; -} - -/* 802EA7AC-802EA7B8 .text getTevKColorSel__12J3DTevBlock4FUl */ -u8 J3DTevBlock4::getTevKColorSel(u32 i) { - return mTevKColorSel[i]; -} - -/* 802EA7B8-802EA7C4 .text setTevKAlphaSel__12J3DTevBlock4FUlUc */ -void J3DTevBlock4::setTevKAlphaSel(u32 i, u8 num) { - mTevKAlphaSel[i] = num; -} - -/* 802EA7C4-802EA7D4 .text setTevKAlphaSel__12J3DTevBlock4FUlPCUc */ -void J3DTevBlock4::setTevKAlphaSel(u32 i, const u8* pNum) { - mTevKAlphaSel[i] = *pNum; -} - -/* 802EA7D4-802EA7E0 .text getTevKAlphaSel__12J3DTevBlock4FUl */ -u8 J3DTevBlock4::getTevKAlphaSel(u32 i) { - return mTevKAlphaSel[i]; -} - -/* 802EA7E0-802EA7E8 .text setTevStageNum__12J3DTevBlock4FUc */ -void J3DTevBlock4::setTevStageNum(u8 num) { - mTevStageNum = num; -} - -/* 802EA7E8-802EA7F4 .text setTevStageNum__12J3DTevBlock4FPCUc */ -void J3DTevBlock4::setTevStageNum(const u8* pNum) { - mTevStageNum = *pNum; -} - -/* 802EA7F4-802EA7FC .text getTevStageNum__12J3DTevBlock4CFv */ -u8 J3DTevBlock4::getTevStageNum() const { - return mTevStageNum; -} - -/* 802EA7FC-802EA838 .text setTevStage__12J3DTevBlock4FUl11J3DTevStage */ -void J3DTevBlock4::setTevStage(u32 i, J3DTevStage stage) { - mTevStage[i] = stage; -} - -/* 802EA838-802EA874 .text setTevStage__12J3DTevBlock4FUlPC11J3DTevStage */ -void J3DTevBlock4::setTevStage(u32 i, const J3DTevStage* pStage) { - mTevStage[i] = *pStage; -} - -/* 802EA874-802EA888 .text getTevStage__12J3DTevBlock4FUl */ -J3DTevStage * J3DTevBlock4::getTevStage(u32 i) { - return &mTevStage[i]; -} - -/* 802EA888-802EA8C0 .text setTevSwapModeInfo__12J3DTevBlock4FUl18J3DTevSwapModeInfo */ -void J3DTevBlock4::setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo) { - /* Nonmatching */ -} - -/* 802EA8C0-802EA8F8 .text setTevSwapModeInfo__12J3DTevBlock4FUlPC18J3DTevSwapModeInfo */ -void J3DTevBlock4::setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo*) { - /* Nonmatching */ -} - -/* 802EA8F8-802EA908 .text setTevSwapModeTable__12J3DTevBlock4FUl19J3DTevSwapModeTable */ -void J3DTevBlock4::setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { - mTevSwapModeTable[i] = table; -} - -/* 802EA908-802EA918 .text setTevSwapModeTable__12J3DTevBlock4FUlPC19J3DTevSwapModeTable */ -void J3DTevBlock4::setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { - mTevSwapModeTable[i] = *pTable; -} - -/* 802EA918-802EA928 .text getTevSwapModeTable__12J3DTevBlock4FUl */ -J3DTevSwapModeTable * J3DTevBlock4::getTevSwapModeTable(u32 i) { - return &mTevSwapModeTable[i]; -} - -/* 802EA928-802EA93C .text setIndTevStage__12J3DTevBlock4FUl14J3DIndTevStage */ -void J3DTevBlock4::setIndTevStage(u32 i, J3DIndTevStage stage) { - mIndTevStage[i] = stage; -} - -/* 802EA93C-802EA950 .text setIndTevStage__12J3DTevBlock4FUlPC14J3DIndTevStage */ -void J3DTevBlock4::setIndTevStage(u32 i, const J3DIndTevStage* pStage) { - mIndTevStage[i] = *pStage; -} - -/* 802EA950-802EA964 .text getIndTevStage__12J3DTevBlock4FUl */ -J3DIndTevStage * J3DTevBlock4::getIndTevStage(u32 i) { - return &mIndTevStage[i]; -} - -/* 802EA964-802EA96C .text getTexNoOffset__12J3DTevBlock4CFv */ -u32 J3DTevBlock4::getTexNoOffset() const { - return mTexNoOffset; -} - -/* 802EA96C-802EA974 .text getTevRegOffset__12J3DTevBlock4CFv */ -u32 J3DTevBlock4::getTevRegOffset() const { - return mTevRegOffset; -} - -/* 802EA974-802EA97C .text setTevRegOffset__12J3DTevBlock4FUl */ -void J3DTevBlock4::setTevRegOffset(u32 offs) { - mTevRegOffset = offs; -} - -/* 802EA97C-802EA9D8 .text __dt__12J3DTevBlock4Fv */ -J3DTevBlock4::~J3DTevBlock4() { - /* Nonmatching */ -} - -/* 802EA9D8-802EA9DC .text ptrToIndex__12J3DTevBlock2Fv */ -void J3DTevBlock2::ptrToIndex() { - /* Nonmatching */ -} - -/* 802EA9DC-802EAA00 .text indexToPtr__12J3DTevBlock2Fv */ -void J3DTevBlock2::indexToPtr() { - return indexToPtr_private(mTexNoOffset); -} - -/* 802EAA00-802EAA0C .text getType__12J3DTevBlock2Fv */ -u32 J3DTevBlock2::getType() { - return 'TVB2'; -} - -/* 802EAA0C-802EAA1C .text setTexNo__12J3DTevBlock2FUlUs */ -void J3DTevBlock2::setTexNo(u32 i, u16 no) { - mTexNo[i] = no; -} - -/* 802EAA1C-802EAA30 .text setTexNo__12J3DTevBlock2FUlPCUs */ -void J3DTevBlock2::setTexNo(u32 i, const u16* pNo) { - mTexNo[i] = *pNo; -} - -/* 802EAA30-802EAA40 .text getTexNo__12J3DTevBlock2CFUl */ -u16 J3DTevBlock2::getTexNo(u32 i) const { - return mTexNo[i]; -} - -/* 802EAA40-802EAA64 .text setTevOrder__12J3DTevBlock2FUl11J3DTevOrder */ -void J3DTevBlock2::setTevOrder(u32 i, J3DTevOrder order) { - mTevOrder[i] = order; -} - -/* 802EAA64-802EAA88 .text setTevOrder__12J3DTevBlock2FUlPC11J3DTevOrder */ -void J3DTevBlock2::setTevOrder(u32 i, const J3DTevOrder* pOrder) { - mTevOrder[i] = *pOrder; -} - -/* 802EAA88-802EAA9C .text getTevOrder__12J3DTevBlock2FUl */ -J3DTevOrder * J3DTevBlock2::getTevOrder(u32 i) { - return &mTevOrder[i]; -} - -/* 802EAA9C-802EAAC8 .text setTevColor__12J3DTevBlock2FUl13J3DGXColorS10 */ -void J3DTevBlock2::setTevColor(u32 i, J3DGXColorS10 color) { - mTevColor[i] = color; -} - -/* 802EAAC8-802EAAF4 .text setTevColor__12J3DTevBlock2FUlPC13J3DGXColorS10 */ -void J3DTevBlock2::setTevColor(u32 i, const J3DGXColorS10* pColor) { - mTevColor[i] = *pColor; -} - -/* 802EAAF4-802EAB08 .text getTevColor__12J3DTevBlock2FUl */ -GXColorS10 * J3DTevBlock2::getTevColor(u32 i) { - return &mTevColor[i]; -} - -/* 802EAB08-802EAB34 .text setTevKColor__12J3DTevBlock2FUl10J3DGXColor */ -void J3DTevBlock2::setTevKColor(u32 i, J3DGXColor color) { - mTevKColor[i] = color; -} - -/* 802EAB34-802EAB60 .text setTevKColor__12J3DTevBlock2FUlPC10J3DGXColor */ -void J3DTevBlock2::setTevKColor(u32 i, const J3DGXColor* pColor) { - mTevKColor[i] = *pColor; -} - -/* 802EAB60-802EAB74 .text getTevKColor__12J3DTevBlock2FUl */ -GXColor * J3DTevBlock2::getTevKColor(u32 i) { - return &mTevKColor[i]; -} - -/* 802EAB74-802EAB80 .text setTevKColorSel__12J3DTevBlock2FUlUc */ -void J3DTevBlock2::setTevKColorSel(u32 i, u8 num) { - mTevKColorSel[i] = num; -} - -/* 802EAB80-802EAB90 .text setTevKColorSel__12J3DTevBlock2FUlPCUc */ -void J3DTevBlock2::setTevKColorSel(u32 i, const u8* pNum) { - mTevKColorSel[i] = *pNum; -} - -/* 802EAB90-802EAB9C .text getTevKColorSel__12J3DTevBlock2FUl */ -u8 J3DTevBlock2::getTevKColorSel(u32 i) { - return mTevKColorSel[i]; -} - -/* 802EAB9C-802EABA8 .text setTevKAlphaSel__12J3DTevBlock2FUlUc */ -void J3DTevBlock2::setTevKAlphaSel(u32 i, u8 num) { - mTevKAlphaSel[i] = num; -} - -/* 802EABA8-802EABB8 .text setTevKAlphaSel__12J3DTevBlock2FUlPCUc */ -void J3DTevBlock2::setTevKAlphaSel(u32 i, const u8* pNum) { - mTevKAlphaSel[i] = *pNum; -} - -/* 802EABB8-802EABC4 .text getTevKAlphaSel__12J3DTevBlock2FUl */ -u8 J3DTevBlock2::getTevKAlphaSel(u32 i) { - return mTevKAlphaSel[i]; -} - -/* 802EABC4-802EABCC .text setTevStageNum__12J3DTevBlock2FUc */ -void J3DTevBlock2::setTevStageNum(u8 num) { - mTevStageNum = num; -} - -/* 802EABCC-802EABD8 .text setTevStageNum__12J3DTevBlock2FPCUc */ -void J3DTevBlock2::setTevStageNum(const u8* pNum) { - mTevStageNum = *pNum; -} - -/* 802EABD8-802EABE0 .text getTevStageNum__12J3DTevBlock2CFv */ -u8 J3DTevBlock2::getTevStageNum() const { - return mTevStageNum; -} - -/* 802EABE0-802EAC1C .text setTevStage__12J3DTevBlock2FUl11J3DTevStage */ -void J3DTevBlock2::setTevStage(u32 i, J3DTevStage stage) { - mTevStage[i] = stage; -} - -/* 802EAC1C-802EAC58 .text setTevStage__12J3DTevBlock2FUlPC11J3DTevStage */ -void J3DTevBlock2::setTevStage(u32 i, const J3DTevStage* pStage) { - mTevStage[i] = *pStage; -} - -/* 802EAC58-802EAC6C .text getTevStage__12J3DTevBlock2FUl */ -J3DTevStage * J3DTevBlock2::getTevStage(u32 i) { - return &mTevStage[i]; -} - -/* 802EAC6C-802EACA4 .text setTevSwapModeInfo__12J3DTevBlock2FUl18J3DTevSwapModeInfo */ -void J3DTevBlock2::setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo swapModeInfo) { - // mTevStage[i].mTevSwapModeInfo = swapModeInfo; -} - -/* 802EACA4-802EACDC .text setTevSwapModeInfo__12J3DTevBlock2FUlPC18J3DTevSwapModeInfo */ -void J3DTevBlock2::setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo* pSwapModeInfo) { - // mTevStage[i].mTevSwapModeInfo = *pSwapModeInfo; -} - -/* 802EACDC-802EACEC .text setTevSwapModeTable__12J3DTevBlock2FUl19J3DTevSwapModeTable */ -void J3DTevBlock2::setTevSwapModeTable(u32 i, J3DTevSwapModeTable table) { - mTevSwapModeTable[i] = table; -} - -/* 802EACEC-802EACFC .text setTevSwapModeTable__12J3DTevBlock2FUlPC19J3DTevSwapModeTable */ -void J3DTevBlock2::setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { - mTevSwapModeTable[i] = *pTable; -} - -/* 802EACFC-802EAD0C .text getTevSwapModeTable__12J3DTevBlock2FUl */ -J3DTevSwapModeTable * J3DTevBlock2::getTevSwapModeTable(u32 i) { - return &mTevSwapModeTable[i]; -} - -/* 802EAD0C-802EAD20 .text setIndTevStage__12J3DTevBlock2FUl14J3DIndTevStage */ -void J3DTevBlock2::setIndTevStage(u32 i, J3DIndTevStage stage) { - mIndTevStage[i] = stage; -} - -/* 802EAD20-802EAD34 .text setIndTevStage__12J3DTevBlock2FUlPC14J3DIndTevStage */ -void J3DTevBlock2::setIndTevStage(u32 i, const J3DIndTevStage* pStage) { - mIndTevStage[i] = *pStage; -} - -/* 802EAD34-802EAD48 .text getIndTevStage__12J3DTevBlock2FUl */ -J3DIndTevStage * J3DTevBlock2::getIndTevStage(u32 i) { - return &mIndTevStage[i]; -} - -/* 802EAD48-802EAD50 .text getTexNoOffset__12J3DTevBlock2CFv */ -u32 J3DTevBlock2::getTexNoOffset() const { - return mTexNoOffset; -} - -/* 802EAD50-802EAD58 .text getTevRegOffset__12J3DTevBlock2CFv */ -u32 J3DTevBlock2::getTevRegOffset() const { - return mTevRegOffset; -} - -/* 802EAD58-802EAD60 .text setTevRegOffset__12J3DTevBlock2FUl */ -void J3DTevBlock2::setTevRegOffset(u32 offs) { - mTevRegOffset = offs; -} - -/* 802EAD60-802EADBC .text __dt__12J3DTevBlock2Fv */ -J3DTevBlock2::~J3DTevBlock2() { - /* Nonmatching */ -} - -/* 802EADBC-802EADC0 .text ptrToIndex__12J3DTevBlock1Fv */ -void J3DTevBlock1::ptrToIndex() { -} - -/* 802EADC0-802EADE4 .text indexToPtr__12J3DTevBlock1Fv */ -void J3DTevBlock1::indexToPtr() { - return indexToPtr_private(mTexNoOffset); -} - -/* 802EADE4-802EADF0 .text getType__12J3DTevBlock1Fv */ -u32 J3DTevBlock1::getType() { - return 'TVB1'; -} - -/* 802EADF0-802EAE00 .text setTexNo__12J3DTevBlock1FUlUs */ -void J3DTevBlock1::setTexNo(u32 i, u16 no) { - mTexNo[i] = no; -} - -/* 802EAE00-802EAE14 .text setTexNo__12J3DTevBlock1FUlPCUs */ -void J3DTevBlock1::setTexNo(u32 i, const u16* pNo) { - mTexNo[i] = *pNo; -} - -/* 802EAE14-802EAE24 .text getTexNo__12J3DTevBlock1CFUl */ -u16 J3DTevBlock1::getTexNo(u32 i) const { - return mTexNo[i]; -} - -/* 802EAE24-802EAE48 .text setTevOrder__12J3DTevBlock1FUl11J3DTevOrder */ -void J3DTevBlock1::setTevOrder(u32 i, J3DTevOrder order) { - mTevOrder[i] = order; -} - -/* 802EAE48-802EAE6C .text setTevOrder__12J3DTevBlock1FUlPC11J3DTevOrder */ -void J3DTevBlock1::setTevOrder(u32 i, const J3DTevOrder* pOrder) { - mTevOrder[i] = *pOrder; -} - -/* 802EAE6C-802EAE80 .text getTevOrder__12J3DTevBlock1FUl */ -J3DTevOrder * J3DTevBlock1::getTevOrder(u32 i) { - return &mTevOrder[i]; -} - -/* 802EAE80-802EAE84 .text setTevStageNum__12J3DTevBlock1FUc */ -void J3DTevBlock1::setTevStageNum(u8 num) { -} - -/* 802EAE84-802EAE88 .text setTevStageNum__12J3DTevBlock1FPCUc */ -void J3DTevBlock1::setTevStageNum(const u8* pNum) { -} - -/* 802EAE88-802EAE90 .text getTevStageNum__12J3DTevBlock1CFv */ -u8 J3DTevBlock1::getTevStageNum() const { - return 1; -} - -/* 802EAE90-802EAECC .text setTevStage__12J3DTevBlock1FUl11J3DTevStage */ -void J3DTevBlock1::setTevStage(u32 i, J3DTevStage stage) { - mTevStage[i] = stage; -} - -/* 802EAECC-802EAF08 .text setTevStage__12J3DTevBlock1FUlPC11J3DTevStage */ -void J3DTevBlock1::setTevStage(u32 i, const J3DTevStage* pStage) { - mTevStage[i] = *pStage; -} - -/* 802EAF08-802EAF1C .text getTevStage__12J3DTevBlock1FUl */ -J3DTevStage * J3DTevBlock1::getTevStage(u32 i) { - return &mTevStage[i]; -} - -/* 802EAF1C-802EAF30 .text setIndTevStage__12J3DTevBlock1FUl14J3DIndTevStage */ -void J3DTevBlock1::setIndTevStage(u32 i, J3DIndTevStage stage) { - mIndTevStage[i] = stage; -} - -/* 802EAF30-802EAF44 .text setIndTevStage__12J3DTevBlock1FUlPC14J3DIndTevStage */ -void J3DTevBlock1::setIndTevStage(u32 i, const J3DIndTevStage* pStage) { - mIndTevStage[i] = *pStage; -} - -/* 802EAF44-802EAF58 .text getIndTevStage__12J3DTevBlock1FUl */ -J3DIndTevStage * J3DTevBlock1::getIndTevStage(u32 i) { - return &mIndTevStage[i]; -} - -/* 802EAF58-802EAF60 .text getTexNoOffset__12J3DTevBlock1CFv */ -u32 J3DTevBlock1::getTexNoOffset() const { - return mTexNoOffset; -} - -/* 802EAF60-802EAFBC .text __dt__12J3DTevBlock1Fv */ -J3DTevBlock1::~J3DTevBlock1() { - /* Nonmatching */ -} - -/* 802EAFBC-802EAFC0 .text setTevKColorSel__11J3DTevBlockFUlPCUc */ -void J3DTevBlock::setTevKColorSel(u32 i, const u8* pNum) { -} - -/* 802EAFC0-802EAFC4 .text setTevKAlphaSel__11J3DTevBlockFUlPCUc */ -void J3DTevBlock::setTevKAlphaSel(u32 i, const u8* pNum) { -} - -/* 802EAFC4-802EAFC8 .text setTevSwapModeInfo__11J3DTevBlockFUl18J3DTevSwapModeInfo */ -void J3DTevBlock::setTevSwapModeInfo(u32 i, J3DTevSwapModeInfo) { -} - -/* 802EAFC8-802EAFCC .text setTevSwapModeInfo__11J3DTevBlockFUlPC18J3DTevSwapModeInfo */ -void J3DTevBlock::setTevSwapModeInfo(u32 i, const J3DTevSwapModeInfo*) { -} - -/* 802EAFCC-802EAFD0 .text setTevSwapModeTable__11J3DTevBlockFUlPC19J3DTevSwapModeTable */ -void J3DTevBlock::setTevSwapModeTable(u32 i, const J3DTevSwapModeTable* pTable) { -} - -/* 802EAFD0-802EAFD8 .text getTevRegOffset__11J3DTevBlockCFv */ -u32 J3DTevBlock::getTevRegOffset() const { - return 0; -} - -/* 802EAFD8-802EAFDC .text setTevRegOffset__11J3DTevBlockFUl */ -void J3DTevBlock::setTevRegOffset(u32 offs) { -} - -/* 802EAFDC-802EAFE0 .text load__18J3DTevBlockPatchedFv */ -void J3DTevBlockPatched::load() { -} - -/* 802EAFE0-802EB004 .text indexToPtr__18J3DTevBlockPatchedFv */ -void J3DTevBlockPatched::indexToPtr() { - return indexToPtr_private(mTexNoOffset); -} - -/* 802EB004-802EB010 .text getType__18J3DTevBlockPatchedFv */ -u32 J3DTevBlockPatched::getType() { - return 'TVPT'; -} - -/* 802EB010-802EB018 .text setTevStageNum__18J3DTevBlockPatchedFUc */ -void J3DTevBlockPatched::setTevStageNum(u8 num) { - mTevStageNum = num; -} - -/* 802EB018-802EB024 .text setTevStageNum__18J3DTevBlockPatchedFPCUc */ -void J3DTevBlockPatched::setTevStageNum(const u8* pNum) { - mTevStageNum = *pNum; -} - -/* 802EB024-802EB02C .text getTevStageNum__18J3DTevBlockPatchedCFv */ -u8 J3DTevBlockPatched::getTevStageNum() const { - return mTevStageNum; -} - -/* 802EB02C-802EB03C .text setTexNo__18J3DTevBlockPatchedFUlUs */ -void J3DTevBlockPatched::setTexNo(u32 i, u16 no) { - mTexNo[i] = no; -} - -/* 802EB03C-802EB050 .text setTexNo__18J3DTevBlockPatchedFUlPCUs */ -void J3DTevBlockPatched::setTexNo(u32 i, const u16* pNo) { - mTexNo[i] = *pNo; -} - -/* 802EB050-802EB060 .text getTexNo__18J3DTevBlockPatchedCFUl */ -u16 J3DTevBlockPatched::getTexNo(u32 i) const { - return mTexNo[i]; -} - -/* 802EB060-802EB084 .text setTevOrder__18J3DTevBlockPatchedFUl11J3DTevOrder */ -void J3DTevBlockPatched::setTevOrder(u32 i, J3DTevOrder order) { - mTevOrder[i] = order; -} - -/* 802EB084-802EB0A8 .text setTevOrder__18J3DTevBlockPatchedFUlPC11J3DTevOrder */ -void J3DTevBlockPatched::setTevOrder(u32 i, const J3DTevOrder* pOrder) { - mTevOrder[i] = *pOrder; -} - -/* 802EB0A8-802EB0BC .text getTevOrder__18J3DTevBlockPatchedFUl */ -J3DTevOrder * J3DTevBlockPatched::getTevOrder(u32 i) { - return &mTevOrder[i]; -} - -/* 802EB0BC-802EB0F8 .text setTevStage__18J3DTevBlockPatchedFUl11J3DTevStage */ -void J3DTevBlockPatched::setTevStage(u32 i, J3DTevStage stage) { - mTevStage[i] = stage; -} - -/* 802EB0F8-802EB134 .text setTevStage__18J3DTevBlockPatchedFUlPC11J3DTevStage */ -void J3DTevBlockPatched::setTevStage(u32 i, const J3DTevStage* pStage) { - mTevStage[i] = *pStage; -} - -/* 802EB134-802EB148 .text getTevStage__18J3DTevBlockPatchedFUl */ -J3DTevStage * J3DTevBlockPatched::getTevStage(u32 i) { - return &mTevStage[i]; -} - -/* 802EB148-802EB15C .text setIndTevStage__18J3DTevBlockPatchedFUl14J3DIndTevStage */ -void J3DTevBlockPatched::setIndTevStage(u32 i, J3DIndTevStage stage) { - mIndTevStage[i] = stage; -} - -/* 802EB15C-802EB170 .text setIndTevStage__18J3DTevBlockPatchedFUlPC14J3DIndTevStage */ -void J3DTevBlockPatched::setIndTevStage(u32 i, const J3DIndTevStage* pStage) { - mIndTevStage[i] = *pStage; -} - -/* 802EB170-802EB184 .text getIndTevStage__18J3DTevBlockPatchedFUl */ -J3DIndTevStage * J3DTevBlockPatched::getIndTevStage(u32 i) { - return &mIndTevStage[i]; -} - -/* 802EB184-802EB1B0 .text setTevColor__18J3DTevBlockPatchedFUl13J3DGXColorS10 */ -void J3DTevBlockPatched::setTevColor(u32 i, J3DGXColorS10 color) { - mTevColor[i] = color; -} - -/* 802EB1B0-802EB1DC .text setTevColor__18J3DTevBlockPatchedFUlPC13J3DGXColorS10 */ -void J3DTevBlockPatched::setTevColor(u32 i, const J3DGXColorS10* pColor) { - mTevColor[i] = *pColor; -} - -/* 802EB1DC-802EB1F0 .text getTevColor__18J3DTevBlockPatchedFUl */ -GXColorS10 * J3DTevBlockPatched::getTevColor(u32 i) { - return &mTevColor[i]; -} - -/* 802EB1F0-802EB21C .text setTevKColor__18J3DTevBlockPatchedFUl10J3DGXColor */ -void J3DTevBlockPatched::setTevKColor(u32 i, J3DGXColor color) { - mTevKColor[i] = color; -} - -/* 802EB21C-802EB248 .text setTevKColor__18J3DTevBlockPatchedFUlPC10J3DGXColor */ -void J3DTevBlockPatched::setTevKColor(u32 i, const J3DGXColor* pColor) { - mTevKColor[i] = *pColor; -} - -/* 802EB248-802EB25C .text getTevKColor__18J3DTevBlockPatchedFUl */ -GXColor * J3DTevBlockPatched::getTevKColor(u32 i) { - return &mTevKColor[i]; -} - -/* 802EB25C-802EB268 .text setTevKColorSel__18J3DTevBlockPatchedFUlUc */ -void J3DTevBlockPatched::setTevKColorSel(u32 i, u8 sel) { - mTevKColorSel[i] = sel; -} - -/* 802EB268-802EB278 .text setTevKColorSel__18J3DTevBlockPatchedFUlPCUc */ -void J3DTevBlockPatched::setTevKColorSel(u32 i, const u8* pSel) { - mTevKColorSel[i] = *pSel; -} - -/* 802EB278-802EB284 .text getTevKColorSel__18J3DTevBlockPatchedFUl */ -u8 J3DTevBlockPatched::getTevKColorSel(u32 i) { - return mTevKColorSel[i]; -} - -/* 802EB284-802EB28C .text getTexNoOffset__18J3DTevBlockPatchedCFv */ -u32 J3DTevBlockPatched::getTexNoOffset() const { - return mTexNoOffset; -} - -/* 802EB28C-802EB294 .text getTevRegOffset__18J3DTevBlockPatchedCFv */ -u32 J3DTevBlockPatched::getTevRegOffset() const { - return mTevRegOffset; -} - -/* 802EB294-802EB29C .text setTevRegOffset__18J3DTevBlockPatchedFUl */ -void J3DTevBlockPatched::setTevRegOffset(u32 offs) { - mTevRegOffset = offs; -} - -/* 802EB29C-802EB2F8 .text __dt__18J3DTevBlockPatchedFv */ -J3DTevBlockPatched::~J3DTevBlockPatched() { - /* Nonmatching */ -} +// BEGIN WEAK FUNCTIONS /* 802EB2F8-802EB304 .text getType__19J3DTexGenBlockBasicFv */ u32 J3DTexGenBlockBasic::getType() { @@ -2024,11 +1003,6 @@ J3DNBTScale * J3DTexGenBlockBasic::getNBTScale() { return &mNBTScale; } -/* 802EB354-802EB3C0 .text __dt__19J3DTexGenBlockBasicFv */ -J3DTexGenBlockBasic::~J3DTexGenBlockBasic() { - /* Nonmatching */ -} - /* 802EB3C0-802EB3C8 .text setTexGenNum__21J3DTexGenBlockPatchedFUl */ void J3DTexGenBlockPatched::setTexGenNum(u32 num) { mTexGenNum = num; @@ -2094,11 +1068,6 @@ J3DNBTScale * J3DTexGenBlock4::getNBTScale() { return &mNBTScale; } -/* 802EB4A0-802EB50C .text __dt__15J3DTexGenBlock4Fv */ -J3DTexGenBlock4::~J3DTexGenBlock4() { - /* Nonmatching */ -} - /* 802EB50C-802EB510 .text load__21J3DTexGenBlockPatchedFv */ void J3DTexGenBlockPatched::load() { /* Nonmatching */ @@ -2219,11 +1188,6 @@ void J3DColorBlockLightOn::setColorChanOffset(u32 offs) { mColorChanOffset = offs; } -/* 802EB6B4-802EB710 .text __dt__20J3DColorBlockLightOnFv */ -J3DColorBlockLightOn::~J3DColorBlockLightOn() { - /* Nonmatching */ -} - /* 802EB710-802EB71C .text getType__22J3DColorBlockAmbientOnFv */ u32 J3DColorBlockAmbientOn::getType() { return 'CLAB'; @@ -2244,11 +1208,6 @@ GXColor * J3DColorBlockAmbientOn::getAmbColor(u32 i) { return &mAmbColor[i]; } -/* 802EB788-802EB7F4 .text __dt__22J3DColorBlockAmbientOnFv */ -J3DColorBlockAmbientOn::~J3DColorBlockAmbientOn() { - /* Nonmatching */ -} - /* 802EB7F4-802EB820 .text setMatColor__21J3DColorBlockLightOffFUl10J3DGXColor */ void J3DColorBlockLightOff::setMatColor(u32 i, J3DGXColor color) { mMatColor[i] = color; diff --git a/src/JSystem/J3DU/J3DUMotion.cpp b/src/JSystem/J3DU/J3DUMotion.cpp index 0fa72c964..f21ae9b2d 100644 --- a/src/JSystem/J3DU/J3DUMotion.cpp +++ b/src/JSystem/J3DU/J3DUMotion.cpp @@ -4,19 +4,35 @@ // #include "JSystem/J3DU/J3DUMotion.h" +#include "JSystem/J3DGraphAnimator/J3DJoint.h" #include "dolphin/types.h" +// The following are probably weak functions? +// Not sure how they ended up here, exactly. + /* 80256DBC-80256E4C .text __dt__19J3DMtxCalcSoftimageFv */ -J3DMtxCalcSoftimage::~J3DMtxCalcSoftimage() { - /* Nonmatching */ -} +J3DMtxCalcSoftimage::~J3DMtxCalcSoftimage() {} /* 80256E4C-80256E94 .text init__19J3DMtxCalcSoftimageFRC3VecRA3_A4_Cf */ -void J3DMtxCalcSoftimage::init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ +void J3DMtxCalcSoftimage::init(const Vec& vec, const Mtx& mtx) { + J3DSys::mCurrentS = vec; + MTXCopy(mtx, J3DSys::mCurrentMtx); } /* 80256E94-80256F80 .text init__15J3DMtxCalcBasicFRC3VecRA3_A4_Cf */ -void J3DMtxCalcBasic::init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ +void J3DMtxCalcBasic::init(const Vec& vec, const Mtx& mtx) { + J3DSys::mCurrentS = vec; + J3DSys::mParentS = (Vec){1.0f, 1.0f, 1.0f}; + J3DSys::mCurrentMtx[0][0] = mtx[0][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[0][1] = mtx[0][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[0][2] = mtx[0][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[0][3] = mtx[0][3]; + J3DSys::mCurrentMtx[1][0] = mtx[1][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[1][1] = mtx[1][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[1][2] = mtx[1][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[1][3] = mtx[1][3]; + J3DSys::mCurrentMtx[2][0] = mtx[2][0] * J3DSys::mCurrentS.x; + J3DSys::mCurrentMtx[2][1] = mtx[2][1] * J3DSys::mCurrentS.y; + J3DSys::mCurrentMtx[2][2] = mtx[2][2] * J3DSys::mCurrentS.z; + J3DSys::mCurrentMtx[2][3] = mtx[2][3]; } diff --git a/src/d/d_vib_pattern.cpp b/src/d/d_vib_pattern.cpp index 63ca40200..2d73d450b 100644 --- a/src/d/d_vib_pattern.cpp +++ b/src/d/d_vib_pattern.cpp @@ -5,4 +5,3 @@ #include "d_vib_pattern.h" #include "dolphin/types.h" - diff --git a/src/m_Do/m_Do_ext.cpp b/src/m_Do/m_Do_ext.cpp index 66b2d8eeb..f55e2361e 100644 --- a/src/m_Do/m_Do_ext.cpp +++ b/src/m_Do/m_Do_ext.cpp @@ -7,12 +7,12 @@ #include "dolphin/types.h" /* 8000DA70-8000DCF0 .text mDoExt_setJ3DData__FPA4_fPC16J3DTransformInfoUs */ -void mDoExt_setJ3DData(float(*)[4], const J3DTransformInfo*, unsigned short) { +void mDoExt_setJ3DData(f32(*)[4], const J3DTransformInfo*, u16) { /* Nonmatching */ } /* 8000DCF0-8000DCF4 .text getTransform__15J3DAnmTransformCFUsP16J3DTransformInfo */ -void J3DAnmTransform::getTransform(unsigned short, J3DTransformInfo*) const { +void J3DAnmTransform::getTransform(u16, J3DTransformInfo*) const { /* Nonmatching */ } @@ -22,7 +22,7 @@ void isCurrentSolidHeap() { } /* 8000DD4C-8000DF24 .text initPlay__14mDoExt_baseAnmFsifssb */ -int mDoExt_baseAnm::initPlay(short, int, float, short, short, bool) { +int mDoExt_baseAnm::initPlay(s16, int, f32, s16, s16, bool) { /* Nonmatching */ } @@ -32,97 +32,62 @@ int mDoExt_baseAnm::play() { } /* 8000DFC4-8000DFF0 .text init__13mDoExt_bpkAnmFP12J3DModelDataP11J3DAnmColoriifssbi */ -void mDoExt_bpkAnm::init(J3DModelData*, J3DAnmColor*, int, int, float, short, short, bool, int) { +int mDoExt_bpkAnm::init(J3DModelData*, J3DAnmColor*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000DFF0-8000E014 .text entry__13mDoExt_bpkAnmFP12J3DModelDataf */ -void mDoExt_bpkAnm::entry(J3DModelData*, float) { +void mDoExt_bpkAnm::entry(J3DModelData*, f32) { /* Nonmatching */ } /* 8000E014-8000E2A8 .text init__13mDoExt_bpkAnmFP16J3DMaterialTableP11J3DAnmColoriifssbi */ -void mDoExt_bpkAnm::init(J3DMaterialTable*, J3DAnmColor*, int, int, float, short, short, bool, int) { - /* Nonmatching */ -} - -/* 8000E2A8-8000E2E4 .text __dt__14J3DMatColorAnmFv */ -J3DMatColorAnm::~J3DMatColorAnm() { - /* Nonmatching */ -} - -/* 8000E2E4-8000E2F4 .text __ct__14J3DMatColorAnmFv */ -J3DMatColorAnm::J3DMatColorAnm() { +int mDoExt_bpkAnm::init(J3DMaterialTable*, J3DAnmColor*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000E2F4-8000E32C .text entry__13mDoExt_bpkAnmFP16J3DMaterialTablef */ -void mDoExt_bpkAnm::entry(J3DMaterialTable*, float) { +void mDoExt_bpkAnm::entry(J3DMaterialTable*, f32) { /* Nonmatching */ } /* 8000E32C-8000E358 .text init__13mDoExt_btpAnmFP12J3DModelDataP16J3DAnmTexPatterniifssbi */ -void mDoExt_btpAnm::init(J3DModelData*, J3DAnmTexPattern*, int, int, float, short, short, bool, int) { - /* Nonmatching */ -} - -/* 8000E358-8000E37C .text entry__13mDoExt_btpAnmFP12J3DModelDatas */ -void mDoExt_btpAnm::entry(J3DModelData*, short) { +int mDoExt_btpAnm::init(J3DModelData*, J3DAnmTexPattern*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000E37C-8000E610 .text init__13mDoExt_btpAnmFP16J3DMaterialTableP16J3DAnmTexPatterniifssbi */ -void mDoExt_btpAnm::init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, float, short, short, bool, int) { - /* Nonmatching */ -} - -/* 8000E610-8000E658 .text __dt__11J3DTexNoAnmFv */ -J3DTexNoAnm::~J3DTexNoAnm() { - /* Nonmatching */ -} - -/* 8000E658-8000E674 .text __ct__11J3DTexNoAnmFv */ -J3DTexNoAnm::J3DTexNoAnm() { +int mDoExt_btpAnm::init(J3DMaterialTable*, J3DAnmTexPattern*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000E674-8000E6CC .text entry__13mDoExt_btpAnmFP16J3DMaterialTables */ -void mDoExt_btpAnm::entry(J3DMaterialTable*, short) { +void mDoExt_btpAnm::entry(J3DMaterialTable*, s16) { /* Nonmatching */ } /* 8000E6CC-8000E6F8 .text init__13mDoExt_btkAnmFP12J3DModelDataP19J3DAnmTextureSRTKeyiifssbi */ -void mDoExt_btkAnm::init(J3DModelData*, J3DAnmTextureSRTKey*, int, int, float, short, short, bool, int) { +int mDoExt_btkAnm::init(J3DModelData*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000E6F8-8000E71C .text entry__13mDoExt_btkAnmFP12J3DModelDataf */ -void mDoExt_btkAnm::entry(J3DModelData*, float) { +void mDoExt_btkAnm::entry(J3DModelData*, f32) { /* Nonmatching */ } /* 8000E71C-8000EAE4 .text init__13mDoExt_btkAnmFP16J3DMaterialTableP19J3DAnmTextureSRTKeyiifssbi */ -void mDoExt_btkAnm::init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, float, short, short, bool, int) { - /* Nonmatching */ -} - -/* 8000EAE4-8000EB20 .text __dt__12J3DTexMtxAnmFv */ -J3DTexMtxAnm::~J3DTexMtxAnm() { - /* Nonmatching */ -} - -/* 8000EB20-8000EB30 .text __ct__12J3DTexMtxAnmFv */ -J3DTexMtxAnm::J3DTexMtxAnm() { +int mDoExt_btkAnm::init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000EB30-8000EB38 .text getTexMtx__14J3DTexGenBlockFUl */ -void J3DTexGenBlock::getTexMtx(unsigned long) { +J3DTexMtx* J3DTexGenBlock::getTexMtx(u32) { /* Nonmatching */ } /* 8000EB38-8000EB74 .text entry__13mDoExt_btkAnmFP16J3DMaterialTablef */ -void mDoExt_btkAnm::entry(J3DMaterialTable*, float) { +void mDoExt_btkAnm::entry(J3DMaterialTable*, f32) { /* Nonmatching */ } @@ -134,67 +99,32 @@ int mDoExt_brkAnm::init(J3DModelData* i_modelData, J3DAnmTevRegKey* i_brk, int i } /* 8000EBA0-8000EBC4 .text entry__13mDoExt_brkAnmFP12J3DModelDataf */ -void mDoExt_brkAnm::entry(J3DModelData* i_modelData, float i_frame) { +void mDoExt_brkAnm::entry(J3DModelData* i_modelData, f32 i_frame) { entry(&i_modelData->getMaterialTable(), i_frame); } /* 8000EBC4-8000EEE8 .text init__13mDoExt_brkAnmFP16J3DMaterialTableP15J3DAnmTevRegKeyiifssbi */ -int mDoExt_brkAnm::init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, float, short, short, bool, int) { - /* Nonmatching */ -} - -/* 8000EEE8-8000EF24 .text __dt__15J3DTevKColorAnmFv */ -J3DTevKColorAnm::~J3DTevKColorAnm() { - /* Nonmatching */ -} - -/* 8000EF24-8000EF34 .text __ct__15J3DTevKColorAnmFv */ -J3DTevKColorAnm::J3DTevKColorAnm() { - /* Nonmatching */ -} - -/* 8000EF34-8000EF70 .text __dt__14J3DTevColorAnmFv */ -J3DTevColorAnm::~J3DTevColorAnm() { - /* Nonmatching */ -} - -/* 8000EF70-8000EF80 .text __ct__14J3DTevColorAnmFv */ -J3DTevColorAnm::J3DTevColorAnm() { +int mDoExt_brkAnm::init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000EF80-8000EFBC .text entry__13mDoExt_brkAnmFP16J3DMaterialTablef */ -void mDoExt_brkAnm::entry(J3DMaterialTable*, float) { +void mDoExt_brkAnm::entry(J3DMaterialTable*, f32) { /* Nonmatching */ } /* 8000EFBC-8000F178 .text init__13mDoExt_bvaAnmFP8J3DModelP20J3DAnmVisibilityFulliifssbi */ -void mDoExt_bvaAnm::init(J3DModel*, J3DAnmVisibilityFull*, int, int, float, short, short, bool, int) { +int mDoExt_bvaAnm::init(J3DModel*, J3DAnmVisibilityFull*, int, int, f32, s16, s16, bool, int) { /* Nonmatching */ } /* 8000F178-8000F1B4 .text entry__13mDoExt_bvaAnmFP8J3DModels */ -void mDoExt_bvaAnm::entry(J3DModel*, short) { +void mDoExt_bvaAnm::entry(J3DModel*, s16) { /* Nonmatching */ } /* 8000F1B4-8000F408 .text init__13mDoExt_bckAnmFP12J3DModelDataP15J3DAnmTransformiifssb */ -void mDoExt_bckAnm::init(J3DModelData*, J3DAnmTransform*, int, int, float, short, short, bool) { - /* Nonmatching */ -} - -/* 8000F408-8000F49C .text __dt__13J3DMtxCalcAnmFv */ -J3DMtxCalcAnm::~J3DMtxCalcAnm() { - /* Nonmatching */ -} - -/* 8000F49C-8000F52C .text __dt__14J3DMtxCalcMayaFv */ -J3DMtxCalcMaya::~J3DMtxCalcMaya() { - /* Nonmatching */ -} - -/* 8000F52C-8000F590 .text __dt__15J3DMtxCalcBasicFv */ -J3DMtxCalcBasic::~J3DMtxCalcBasic() { +int mDoExt_bckAnm::init(J3DModelData*, J3DAnmTransform*, int, int, f32, s16, s16, bool) { /* Nonmatching */ } @@ -204,7 +134,7 @@ void mDoExt_bckAnm::changeBckOnly(J3DAnmTransform*) { } /* 8000F610-8000F638 .text entry__13mDoExt_bckAnmFP12J3DModelDataf */ -void mDoExt_bckAnm::entry(J3DModelData*, float) { +void mDoExt_bckAnm::entry(J3DModelData*, f32) { /* Nonmatching */ } @@ -268,258 +198,93 @@ void mDoExt_backupMatBlock_c::store(J3DMaterial*) { /* Nonmatching */ } -/* 800100F0-800100F8 .text getZCompLoc__10J3DPEBlockCFv */ -void J3DPEBlock::getZCompLoc() const { - /* Nonmatching */ -} - -/* 800100F8-80010100 .text getZMode__10J3DPEBlockFv */ -void J3DPEBlock::getZMode() { - /* Nonmatching */ -} - -/* 80010100-80010108 .text getBlend__10J3DPEBlockFv */ -void J3DPEBlock::getBlend() { - /* Nonmatching */ -} - -/* 80010108-80010110 .text getAlphaComp__10J3DPEBlockFv */ -void J3DPEBlock::getAlphaComp() { - /* Nonmatching */ -} - -/* 80010110-80010118 .text getFog__10J3DPEBlockFv */ -void J3DPEBlock::getFog() { - /* Nonmatching */ -} - -/* 80010118-80010120 .text getIndTexCoordScale__11J3DIndBlockFUl */ -void J3DIndBlock::getIndTexCoordScale(unsigned long) { - /* Nonmatching */ -} - -/* 80010120-80010128 .text getIndTexMtx__11J3DIndBlockFUl */ -void J3DIndBlock::getIndTexMtx(unsigned long) { - /* Nonmatching */ -} - -/* 80010128-80010130 .text getIndTexOrder__11J3DIndBlockFUl */ -void J3DIndBlock::getIndTexOrder(unsigned long) { - /* Nonmatching */ -} - -/* 80010130-80010138 .text getIndTexStageNum__11J3DIndBlockCFv */ -void J3DIndBlock::getIndTexStageNum() const { - /* Nonmatching */ -} - -/* 80010138-80010140 .text getIndTevStage__11J3DTevBlockFUl */ -void J3DTevBlock::getIndTevStage(unsigned long) { - /* Nonmatching */ -} - -/* 80010140-80010148 .text getTevStage__11J3DTevBlockFUl */ -void J3DTevBlock::getTevStage(unsigned long) { - /* Nonmatching */ -} - -/* 80010148-80010154 .text getTexNo__11J3DTevBlockCFUl */ -void J3DTevBlock::getTexNo(unsigned long) const { - /* Nonmatching */ -} - -/* 80010154-8001015C .text getTevSwapModeTable__11J3DTevBlockFUl */ -void J3DTevBlock::getTevSwapModeTable(unsigned long) { - /* Nonmatching */ -} - -/* 8001015C-80010164 .text getTevKAlphaSel__11J3DTevBlockFUl */ -void J3DTevBlock::getTevKAlphaSel(unsigned long) { - /* Nonmatching */ -} - -/* 80010164-8001016C .text getTevKColorSel__11J3DTevBlockFUl */ -void J3DTevBlock::getTevKColorSel(unsigned long) { - /* Nonmatching */ -} - -/* 8001016C-80010174 .text getTevOrder__11J3DTevBlockFUl */ -void J3DTevBlock::getTevOrder(unsigned long) { - /* Nonmatching */ -} - -/* 80010174-8001017C .text getTevKColor__11J3DTevBlockFUl */ -void J3DTevBlock::getTevKColor(unsigned long) { - /* Nonmatching */ -} - -/* 8001017C-80010184 .text getTevColor__11J3DTevBlockFUl */ -void J3DTevBlock::getTevColor(unsigned long) { - /* Nonmatching */ -} - -/* 80010184-8001018C .text getTevStageNum__11J3DTevBlockCFv */ -void J3DTevBlock::getTevStageNum() const { - /* Nonmatching */ -} - -/* 8001018C-80010194 .text getTexCoord__14J3DTexGenBlockFUl */ -void J3DTexGenBlock::getTexCoord(unsigned long) { - /* Nonmatching */ -} - -/* 80010194-8001019C .text getTexGenNum__14J3DTexGenBlockCFv */ -void J3DTexGenBlock::getTexGenNum() const { - /* Nonmatching */ -} - -/* 8001019C-800101A4 .text getAmbColor__13J3DColorBlockFUl */ -void J3DColorBlock::getAmbColor(unsigned long) { - /* Nonmatching */ -} - -/* 800101A4-800101AC .text getColorChan__13J3DColorBlockFUl */ -void J3DColorBlock::getColorChan(unsigned long) { - /* Nonmatching */ -} - -/* 800101AC-800101B4 .text getMatColor__13J3DColorBlockFUl */ -void J3DColorBlock::getMatColor(unsigned long) { - /* Nonmatching */ -} - -/* 800101B4-800101BC .text getColorChanNum__13J3DColorBlockCFv */ -void J3DColorBlock::getColorChanNum() const { - /* Nonmatching */ -} - /* 800101BC-8001084C .text restore__23mDoExt_backupMatBlock_cFP11J3DMaterial */ void mDoExt_backupMatBlock_c::restore(J3DMaterial*) { /* Nonmatching */ } -/* 8001084C-80010850 .text setZCompLoc__10J3DPEBlockFUc */ -void J3DPEBlock::setZCompLoc(unsigned char) { - /* Nonmatching */ -} - -/* 80010850-80010854 .text setZMode__10J3DPEBlockF8J3DZMode */ -void J3DPEBlock::setZMode(J3DZMode) { - /* Nonmatching */ -} - -/* 80010854-80010858 .text setBlend__10J3DPEBlockF8J3DBlend */ -void J3DPEBlock::setBlend(J3DBlend) { - /* Nonmatching */ -} - -/* 80010858-8001085C .text setAlphaComp__10J3DPEBlockF12J3DAlphaComp */ -void J3DPEBlock::setAlphaComp(J3DAlphaComp) { - /* Nonmatching */ -} - -/* 8001085C-80010860 .text setIndTexCoordScale__11J3DIndBlockFUl19J3DIndTexCoordScale */ -void J3DIndBlock::setIndTexCoordScale(unsigned long, J3DIndTexCoordScale) { - /* Nonmatching */ -} - -/* 80010860-8001089C .text __dt__19J3DIndTexCoordScaleFv */ -J3DIndTexCoordScale::~J3DIndTexCoordScale() { - /* Nonmatching */ -} - -/* 8001089C-800108A0 .text setIndTexMtx__11J3DIndBlockFUl12J3DIndTexMtx */ -void J3DIndBlock::setIndTexMtx(unsigned long, J3DIndTexMtx) { - /* Nonmatching */ -} - -/* 800108A0-800108DC .text __dt__12J3DIndTexMtxFv */ -J3DIndTexMtx::~J3DIndTexMtx() { - /* Nonmatching */ -} - /* 800108DC-800108E0 .text setIndTexStageNum__11J3DIndBlockFUc */ -void J3DIndBlock::setIndTexStageNum(unsigned char) { +void J3DIndBlock::setIndTexStageNum(u8) { /* Nonmatching */ } /* 800108E0-800108E4 .text setIndTevStage__11J3DTevBlockFUl14J3DIndTevStage */ -void J3DTevBlock::setIndTevStage(unsigned long, J3DIndTevStage) { +void J3DTevBlock::setIndTevStage(u32, J3DIndTevStage) { /* Nonmatching */ } /* 800108E4-800108E8 .text setTevStage__11J3DTevBlockFUl11J3DTevStage */ -void J3DTevBlock::setTevStage(unsigned long, J3DTevStage) { +void J3DTevBlock::setTevStage(u32, J3DTevStage) { /* Nonmatching */ } /* 800108E8-800108EC .text setTexNo__11J3DTevBlockFUlUs */ -void J3DTevBlock::setTexNo(unsigned long, unsigned short) { +void J3DTevBlock::setTexNo(u32, u16) { /* Nonmatching */ } /* 800108EC-800108F0 .text setTevSwapModeTable__11J3DTevBlockFUl19J3DTevSwapModeTable */ -void J3DTevBlock::setTevSwapModeTable(unsigned long, J3DTevSwapModeTable) { +void J3DTevBlock::setTevSwapModeTable(u32, J3DTevSwapModeTable) { /* Nonmatching */ } /* 800108F0-800108F4 .text setTevKAlphaSel__11J3DTevBlockFUlUc */ -void J3DTevBlock::setTevKAlphaSel(unsigned long, unsigned char) { +void J3DTevBlock::setTevKAlphaSel(u32, u8) { /* Nonmatching */ } /* 800108F4-800108F8 .text setTevKColorSel__11J3DTevBlockFUlUc */ -void J3DTevBlock::setTevKColorSel(unsigned long, unsigned char) { +void J3DTevBlock::setTevKColorSel(u32, u8) { /* Nonmatching */ } /* 800108F8-800108FC .text setTevOrder__11J3DTevBlockFUl11J3DTevOrder */ -void J3DTevBlock::setTevOrder(unsigned long, J3DTevOrder) { +void J3DTevBlock::setTevOrder(u32, J3DTevOrder) { /* Nonmatching */ } /* 800108FC-80010900 .text setTevKColor__11J3DTevBlockFUl10J3DGXColor */ -void J3DTevBlock::setTevKColor(unsigned long, J3DGXColor) { +void J3DTevBlock::setTevKColor(u32, J3DGXColor) { /* Nonmatching */ } /* 80010900-80010904 .text setTevColor__11J3DTevBlockFUl13J3DGXColorS10 */ -void J3DTevBlock::setTevColor(unsigned long, J3DGXColorS10) { +void J3DTevBlock::setTevColor(u32, J3DGXColorS10) { /* Nonmatching */ } /* 80010904-80010908 .text setTevStageNum__11J3DTevBlockFUc */ -void J3DTevBlock::setTevStageNum(unsigned char) { +void J3DTevBlock::setTevStageNum(u8) { /* Nonmatching */ } /* 80010908-8001090C .text setTexCoord__14J3DTexGenBlockFUlPC11J3DTexCoord */ -void J3DTexGenBlock::setTexCoord(unsigned long, const J3DTexCoord*) { +void J3DTexGenBlock::setTexCoord(u32, const J3DTexCoord*) { /* Nonmatching */ } /* 8001090C-80010910 .text setTexGenNum__14J3DTexGenBlockFUl */ -void J3DTexGenBlock::setTexGenNum(unsigned long) { +void J3DTexGenBlock::setTexGenNum(u32) { /* Nonmatching */ } /* 80010910-80010914 .text setAmbColor__13J3DColorBlockFUl10J3DGXColor */ -void J3DColorBlock::setAmbColor(unsigned long, J3DGXColor) { +void J3DColorBlock::setAmbColor(u32, J3DGXColor) { /* Nonmatching */ } /* 80010914-80010918 .text setColorChan__13J3DColorBlockFUlRC12J3DColorChan */ -void J3DColorBlock::setColorChan(unsigned long, const J3DColorChan&) { +void J3DColorBlock::setColorChan(u32, const J3DColorChan&) { /* Nonmatching */ } /* 80010918-8001091C .text setMatColor__13J3DColorBlockFUl10J3DGXColor */ -void J3DColorBlock::setMatColor(unsigned long, J3DGXColor) { +void J3DColorBlock::setMatColor(u32, J3DGXColor) { /* Nonmatching */ } /* 8001091C-80010920 .text setColorChanNum__13J3DColorBlockFUc */ -void J3DColorBlock::setColorChanNum(unsigned char) { +void J3DColorBlock::setColorChanNum(u8) { /* Nonmatching */ } @@ -573,21 +338,11 @@ J3DIndTevStage::J3DIndTevStage() { /* Nonmatching */ } -/* 80010EDC-80010F44 .text __ct__11J3DTevStageFv */ -J3DTevStage::J3DTevStage() { - /* Nonmatching */ -} - /* 80010F44-8001110C .text setTevStageInfo__11J3DTevStageFRC15J3DTevStageInfo */ void J3DTevStage::setTevStageInfo(const J3DTevStageInfo&) { /* Nonmatching */ } -/* 8001110C-80011110 .text __ct__13J3DGXColorS10Fv */ -J3DGXColorS10::J3DGXColorS10() { - /* Nonmatching */ -} - /* 80011110-800111B4 .text __ct__9J3DTexMtxFv */ J3DTexMtx::J3DTexMtx() { /* Nonmatching */ @@ -603,13 +358,8 @@ J3DColorChan::J3DColorChan() { /* Nonmatching */ } -/* 80011290-80011294 .text __ct__10J3DGXColorFv */ -J3DGXColor::J3DGXColor() { - /* Nonmatching */ -} - /* 80011294-80011300 .text create__23mDoExt_backupMaterial_cFUs */ -void mDoExt_backupMaterial_c::create(unsigned short) { +void mDoExt_backupMaterial_c::create(u16) { /* Nonmatching */ } @@ -633,11 +383,6 @@ mDoExt_invJntPacket::mDoExt_invJntPacket() { /* Nonmatching */ } -/* 800114BC-80011504 .text __dt__9J3DPacketFv */ -J3DPacket::~J3DPacket() { - /* Nonmatching */ -} - /* 80011504-800115AC .text entry__21mDoExt_invisibleModelFv */ void mDoExt_invisibleModel::entry() { /* Nonmatching */ @@ -659,12 +404,12 @@ void mDoExt_invisibleModel::updateDL(mDoExt_McaMorf*) { } /* 80011734-800117E4 .text mDoExt_createGameHeap__FUlP7JKRHeap */ -void mDoExt_createGameHeap(unsigned long, JKRHeap*) { +JKRExpHeap* mDoExt_createGameHeap(u32, JKRHeap*) { /* Nonmatching */ } /* 800117E4-800117EC .text mDoExt_getGameHeap__Fv */ -void mDoExt_getGameHeap() { +JKRExpHeap* mDoExt_getGameHeap() { /* Nonmatching */ } @@ -674,37 +419,37 @@ void mDoExt_setSafeGameHeapSize() { } /* 80011814-8001181C .text mDoExt_getSafeGameHeapSize__Fv */ -void mDoExt_getSafeGameHeapSize() { +int mDoExt_getSafeGameHeapSize() { /* Nonmatching */ } /* 8001181C-800118C0 .text mDoExt_createZeldaHeap__FUlP7JKRHeap */ -void mDoExt_createZeldaHeap(unsigned long, JKRHeap*) { +JKRExpHeap* mDoExt_createZeldaHeap(u32, JKRHeap*) { /* Nonmatching */ } /* 800118C0-800118C8 .text mDoExt_getZeldaHeap__Fv */ -void mDoExt_getZeldaHeap() { +JKRExpHeap* mDoExt_getZeldaHeap() { /* Nonmatching */ } /* 800118C8-800118F0 .text mDoExt_setSafeZeldaHeapSize__Fv */ -void mDoExt_setSafeZeldaHeapSize() { +int mDoExt_setSafeZeldaHeapSize() { /* Nonmatching */ } /* 800118F0-800118F8 .text mDoExt_getSafeZeldaHeapSize__Fv */ -void mDoExt_getSafeZeldaHeapSize() { +int mDoExt_getSafeZeldaHeapSize() { /* Nonmatching */ } /* 800118F8-8001199C .text mDoExt_createCommandHeap__FUlP7JKRHeap */ -void mDoExt_createCommandHeap(unsigned long, JKRHeap*) { +JKRExpHeap* mDoExt_createCommandHeap(u32, JKRHeap*) { /* Nonmatching */ } /* 8001199C-800119A4 .text mDoExt_getCommandHeap__Fv */ -void mDoExt_getCommandHeap() { +JKRExpHeap* mDoExt_getCommandHeap() { /* Nonmatching */ } @@ -714,12 +459,12 @@ void mDoExt_setSafeCommandHeapSize() { } /* 800119CC-800119D4 .text mDoExt_getSafeCommandHeapSize__Fv */ -void mDoExt_getSafeCommandHeapSize() { +int mDoExt_getSafeCommandHeapSize() { /* Nonmatching */ } /* 800119D4-80011A84 .text mDoExt_createArchiveHeap__FUlP7JKRHeap */ -void mDoExt_createArchiveHeap(unsigned long, JKRHeap*) { +JKRExpHeap* mDoExt_createArchiveHeap(u32, JKRHeap*) { /* Nonmatching */ } @@ -729,37 +474,37 @@ void mDoExt_setSafeArchiveHeapSize() { } /* 80011AAC-80011AB4 .text mDoExt_getSafeArchiveHeapSize__Fv */ -void mDoExt_getSafeArchiveHeapSize() { +int mDoExt_getSafeArchiveHeapSize() { /* Nonmatching */ } /* 80011AB4-80011ABC .text mDoExt_getArchiveHeap__Fv */ -void mDoExt_getArchiveHeap() { +JKRExpHeap* mDoExt_getArchiveHeap() { /* Nonmatching */ } /* 80011ABC-80011B54 .text mDoExt_createSolidHeap__FUlP7JKRHeapUl */ -void mDoExt_createSolidHeap(unsigned long, JKRHeap*, unsigned long) { +void mDoExt_createSolidHeap(u32, JKRHeap*, u32) { /* Nonmatching */ } /* 80011B54-80011B9C .text mDoExt_createSolidHeapFromGame__FUlUl */ -void mDoExt_createSolidHeapFromGame(unsigned long, unsigned long) { +void mDoExt_createSolidHeapFromGame(u32, u32) { /* Nonmatching */ } /* 80011B9C-80011BE4 .text mDoExt_createSolidHeapFromSystem__FUlUl */ -void mDoExt_createSolidHeapFromSystem(unsigned long, unsigned long) { +void mDoExt_createSolidHeapFromSystem(u32, u32) { /* Nonmatching */ } /* 80011BE4-80011CC0 .text mDoExt_createSolidHeapToCurrent__FUlP7JKRHeapUl */ -void mDoExt_createSolidHeapToCurrent(unsigned long, JKRHeap*, unsigned long) { +JKRSolidHeap* mDoExt_createSolidHeapToCurrent(u32, JKRHeap*, u32) { /* Nonmatching */ } /* 80011CC0-80011D0C .text mDoExt_createSolidHeapFromGameToCurrent__FUlUl */ -void mDoExt_createSolidHeapFromGameToCurrent(unsigned long, unsigned long) { +JKRSolidHeap* mDoExt_createSolidHeapFromGameToCurrent(u32, u32) { /* Nonmatching */ } @@ -789,22 +534,22 @@ void mDoExt_restoreCurrentHeap() { } /* 80011E98-80011EE4 .text mDoExt_resIDToIndex__FP10JKRArchiveUs */ -void mDoExt_resIDToIndex(JKRArchive*, unsigned short) { +s32 mDoExt_resIDToIndex(JKRArchive*, u16) { /* Nonmatching */ } /* 80011EE4-80012140 .text calc__25mDoExt_MtxCalcAnmBlendTblFUs */ -void mDoExt_MtxCalcAnmBlendTbl::calc(unsigned short) { +void mDoExt_MtxCalcAnmBlendTbl::calc(u16) { /* Nonmatching */ } /* 80012140-80012548 .text calc__28mDoExt_MtxCalcAnmBlendTblOldFUs */ -void mDoExt_MtxCalcAnmBlendTblOld::calc(unsigned short) { +void mDoExt_MtxCalcAnmBlendTblOld::calc(u16) { /* Nonmatching */ } /* 80012548-800125CC .text initOldFrameMorf__22mDoExt_MtxCalcOldFrameFfUsUs */ -void mDoExt_MtxCalcOldFrame::initOldFrameMorf(float, unsigned short, unsigned short) { +void mDoExt_MtxCalcOldFrame::initOldFrameMorf(f32, u16, u16) { /* Nonmatching */ } @@ -814,32 +559,27 @@ void mDoExt_MtxCalcOldFrame::decOldFrameMorfCounter() { } /* 80012650-800129E4 .text __ct__14mDoExt_McaMorfFP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformifiiiPvUlUl */ -mDoExt_McaMorf::mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, float, int, int, int, void*, unsigned long, unsigned long) { - /* Nonmatching */ -} - -/* 800129E4-80012A2C .text __dt__12J3DFrameCtrlFv */ -J3DFrameCtrl::~J3DFrameCtrl() { +mDoExt_McaMorf::mDoExt_McaMorf(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, int, f32, int, int, int, void*, u32, u32) { /* Nonmatching */ } /* 80012A2C-80012D78 .text calc__14mDoExt_McaMorfFUs */ -void mDoExt_McaMorf::calc(unsigned short) { +void mDoExt_McaMorf::calc(u16) { /* Nonmatching */ } /* 80012D78-80012FC8 .text setAnm__14mDoExt_McaMorfFP15J3DAnmTransformiffffPv */ -void mDoExt_McaMorf::setAnm(J3DAnmTransform*, int, float, float, float, float, void*) { +void mDoExt_McaMorf::setAnm(J3DAnmTransform*, int, f32, f32, f32, f32, void*) { /* Nonmatching */ } /* 80012FC8-8001300C .text setMorf__14mDoExt_McaMorfFf */ -void mDoExt_McaMorf::setMorf(float) { +void mDoExt_McaMorf::setMorf(f32) { /* Nonmatching */ } /* 8001300C-800130D0 .text play__14mDoExt_McaMorfFP3VecUlSc */ -void mDoExt_McaMorf::play(Vec*, unsigned long, signed char) { +void mDoExt_McaMorf::play(Vec*, u32, s8) { /* Nonmatching */ } @@ -884,7 +624,7 @@ void mDoExt_McaMorf::stopZelAnime() { } /* 80013388-800136F4 .text __ct__15mDoExt_McaMorf2FP12J3DModelDataP25mDoExt_McaMorfCallBack1_cP25mDoExt_McaMorfCallBack2_cP15J3DAnmTransformP15J3DAnmTransformifiiiPvUlUl */ -mDoExt_McaMorf2::mDoExt_McaMorf2(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, J3DAnmTransform*, int, float, int, int, int, void*, unsigned long, unsigned long) { +mDoExt_McaMorf2::mDoExt_McaMorf2(J3DModelData*, mDoExt_McaMorfCallBack1_c*, mDoExt_McaMorfCallBack2_c*, J3DAnmTransform*, J3DAnmTransform*, int, f32, int, int, int, void*, u32, u32) { /* Nonmatching */ } @@ -894,22 +634,22 @@ void mDoExt_McaMorf2::ERROR_EXIT() { } /* 80013770-80013E50 .text calc__15mDoExt_McaMorf2FUs */ -void mDoExt_McaMorf2::calc(unsigned short) { +void mDoExt_McaMorf2::calc(u16) { /* Nonmatching */ } /* 80013E50-800140A0 .text setAnm__15mDoExt_McaMorf2FP15J3DAnmTransformP15J3DAnmTransformfiffffPv */ -void mDoExt_McaMorf2::setAnm(J3DAnmTransform*, J3DAnmTransform*, float, int, float, float, float, float, void*) { +void mDoExt_McaMorf2::setAnm(J3DAnmTransform*, J3DAnmTransform*, f32, int, f32, f32, f32, f32, void*) { /* Nonmatching */ } /* 800140A0-800140D8 .text setMorf__15mDoExt_McaMorf2Ff */ -void mDoExt_McaMorf2::setMorf(float) { +void mDoExt_McaMorf2::setMorf(f32) { /* Nonmatching */ } /* 800140D8-8001419C .text play__15mDoExt_McaMorf2FP3VecUlSc */ -void mDoExt_McaMorf2::play(Vec*, unsigned long, signed char) { +void mDoExt_McaMorf2::play(Vec*, u32, s8) { /* Nonmatching */ } @@ -944,17 +684,12 @@ void mDoExt_invJntPacket::draw() { } /* 800143B8-80014580 .text init__15mDoExt_3Dline_cFUsii */ -void mDoExt_3Dline_c::init(unsigned short, int, int) { - /* Nonmatching */ -} - -/* 80014580-80014584 .text __ct__4cXyzFv */ -cXyz::cXyz() { +int mDoExt_3Dline_c::init(u16, int, int) { /* Nonmatching */ } /* 80014584-80014664 .text init__19mDoExt_3DlineMat0_cFUsUsi */ -void mDoExt_3DlineMat0_c::init(unsigned short, unsigned short, int) { +int mDoExt_3DlineMat0_c::init(u16, u16, int) { /* Nonmatching */ } @@ -979,17 +714,17 @@ void mDoExt_3DlineMat0_c::draw() { } /* 800148B4-80014E04 .text update__19mDoExt_3DlineMat0_cFUsfR8_GXColorUsP12dKy_tevstr_c */ -void mDoExt_3DlineMat0_c::update(unsigned short, float, _GXColor&, unsigned short, dKy_tevstr_c*) { +void mDoExt_3DlineMat0_c::update(u16, f32, GXColor&, u16, dKy_tevstr_c*) { /* Nonmatching */ } /* 80014E04-80015328 .text update__19mDoExt_3DlineMat0_cFUsR8_GXColorP12dKy_tevstr_c */ -void mDoExt_3DlineMat0_c::update(unsigned short, _GXColor&, dKy_tevstr_c*) { +void mDoExt_3DlineMat0_c::update(u16, GXColor&, dKy_tevstr_c*) { /* Nonmatching */ } /* 80015328-800154C4 .text init__19mDoExt_3DlineMat1_cFUsUsP7ResTIMGi */ -void mDoExt_3DlineMat1_c::init(unsigned short, unsigned short, ResTIMG*, int) { +int mDoExt_3DlineMat1_c::init(u16, u16, ResTIMG*, int) { /* Nonmatching */ } @@ -1004,12 +739,12 @@ void mDoExt_3DlineMat1_c::draw() { } /* 80015764-80015E54 .text update__19mDoExt_3DlineMat1_cFUsfR8_GXColorUsP12dKy_tevstr_c */ -void mDoExt_3DlineMat1_c::update(unsigned short, float, _GXColor&, unsigned short, dKy_tevstr_c*) { +void mDoExt_3DlineMat1_c::update(u16, f32, _GXColor&, u16, dKy_tevstr_c*) { /* Nonmatching */ } /* 80015E54-80016518 .text update__19mDoExt_3DlineMat1_cFUsR8_GXColorP12dKy_tevstr_c */ -void mDoExt_3DlineMat1_c::update(unsigned short, _GXColor&, dKy_tevstr_c*) { +void mDoExt_3DlineMat1_c::update(u16, _GXColor&, dKy_tevstr_c*) { /* Nonmatching */ } @@ -1024,12 +759,7 @@ void mDoExt_3DlineMatSortPacket::draw() { } /* 800165E4-8001683C .text mDoExt_initFontCommon__FPP7JUTFontPP7ResFONTP7JKRHeapPCcP10JKRArchiveUcUlUl */ -void mDoExt_initFontCommon(JUTFont**, ResFONT**, JKRHeap*, const char*, JKRArchive*, unsigned char, unsigned long, unsigned long) { - /* Nonmatching */ -} - -/* 8001683C-80016884 .text __dt__7JUTFontFv */ -JUTFont::~JUTFont() { +void mDoExt_initFontCommon(JUTFont**, ResFONT**, JKRHeap*, const char*, JKRArchive*, u8, u32, u32) { /* Nonmatching */ } @@ -1064,7 +794,7 @@ void mDoExt_removeRubyFont() { } /* 80016BB8-80016C98 .text mDoExt_J3DModel__create__FP12J3DModelDataUlUl */ -void mDoExt_J3DModel__create__FP12J3DModelDataUlUl { +J3DModel* mDoExt_J3DModel__create(J3DModelData* i_modelData, u32 i_modelFlag, u32 i_differedDlistFlag) { /* Nonmatching */ } @@ -1074,12 +804,12 @@ void JUTFont::setGX(JUtility::TColor, JUtility::TColor) { } /* 80016CC4-80016CF0 .text getCellWidth__7JUTFontCFv */ -void JUTFont::getCellWidth() const { +int JUTFont::getCellWidth() const { /* Nonmatching */ } /* 80016CF0-80016D1C .text getCellHeight__7JUTFontCFv */ -void JUTFont::getCellHeight() const { +s32 JUTFont::getCellHeight() const { /* Nonmatching */ } @@ -1089,13 +819,13 @@ mDoExt_3DlineMatSortPacket::~mDoExt_3DlineMatSortPacket() { } /* 80016D78-80016D80 .text getMaterialID__19mDoExt_3DlineMat1_cFv */ -void mDoExt_3DlineMat1_c::getMaterialID() { - /* Nonmatching */ +int mDoExt_3DlineMat1_c::getMaterialID() { + return 1; } /* 80016D80-80016D88 .text getMaterialID__19mDoExt_3DlineMat0_cFv */ -void mDoExt_3DlineMat0_c::getMaterialID() { - /* Nonmatching */ +int mDoExt_3DlineMat0_c::getMaterialID() { + return 0; } /* 80016D88-80016DE4 .text __dt__24mDoExt_onCupOffAupPacketFv */ @@ -1113,11 +843,6 @@ mDoExt_McaMorf2::~mDoExt_McaMorf2() { /* Nonmatching */ } -/* 80016F14-80017000 .text init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - /* 80017000-800170D4 .text __dt__14mDoExt_McaMorfFv */ mDoExt_McaMorf::~mDoExt_McaMorf() { /* Nonmatching */ @@ -1132,128 +857,3 @@ mDoExt_MtxCalcAnmBlendTblOld::~mDoExt_MtxCalcAnmBlendTblOld() { mDoExt_MtxCalcAnmBlendTbl::~mDoExt_MtxCalcAnmBlendTbl() { /* Nonmatching */ } - -/* 80017278-80017398 .text __dt__17J3DMtxCalcMayaAnmFv */ -J3DMtxCalcMayaAnm::~J3DMtxCalcMayaAnm() { - /* Nonmatching */ -} - -/* 80017398-800173BC .text calc__17J3DMtxCalcMayaAnmFUs */ -void J3DMtxCalcMayaAnm::calc(unsigned short) { - /* Nonmatching */ -} - -/* 800173BC-800173C0 .text init__10J3DMtxCalcFRC3VecRA3_A4_Cf */ -void J3DMtxCalc::init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 800173C0-800173C4 .text recursiveCalc__10J3DMtxCalcFP7J3DNode */ -void J3DMtxCalc::recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 800173C4-800173C8 .text calcTransform__10J3DMtxCalcFUsRC16J3DTransformInfo */ -void J3DMtxCalc::calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 800173C8-800173CC .text calc__10J3DMtxCalcFUs */ -void J3DMtxCalc::calc(unsigned short) { - /* Nonmatching */ -} - -/* 800173CC-800173E0 .text @88@36@calc__17J3DMtxCalcMayaAnmFUs */ -void J3DMtxCalcMayaAnm::@88@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 800173E0-800173E8 .text @80@calc__17J3DMtxCalcMayaAnmFUs */ -void J3DMtxCalcMayaAnm::@80@calc(unsigned short) { - /* Nonmatching */ -} - -/* 800173E8-800173F0 .text @80@__dt__17J3DMtxCalcMayaAnmFv */ -void @80@__dt__17J3DMtxCalcMayaAnmFv { - /* Nonmatching */ -} - -/* 800173F0-80017404 .text @88@36@calc__25mDoExt_MtxCalcAnmBlendTblFUs */ -void mDoExt_MtxCalcAnmBlendTbl::@88@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 80017404-80017418 .text @88@36@calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::@88@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 80017418-8001742C .text @88@36@recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ -void J3DMtxCalcBasic::@88@36@recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 8001742C-80017440 .text @88@36@init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::@88@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 80017440-80017454 .text @104@36@calc__28mDoExt_MtxCalcAnmBlendTblOldFUs */ -void mDoExt_MtxCalcAnmBlendTblOld::@104@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 80017454-80017468 .text @104@36@calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::@104@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 80017468-8001747C .text @104@36@recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ -void J3DMtxCalcBasic::@104@36@recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 8001747C-80017490 .text @104@36@init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::@104@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 80017490-800174A4 .text @140@36@calc__14mDoExt_McaMorfFUs */ -void mDoExt_McaMorf::@140@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 800174A4-800174B8 .text @140@36@calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::@140@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 800174B8-800174CC .text @140@36@recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ -void J3DMtxCalcBasic::@140@36@recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 800174CC-800174E0 .text @140@36@init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::@140@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -} - -/* 800174E0-800174F4 .text @148@36@calc__15mDoExt_McaMorf2FUs */ -void mDoExt_McaMorf2::@148@36@calc(unsigned short) { - /* Nonmatching */ -} - -/* 800174F4-80017508 .text @148@36@calcTransform__14J3DMtxCalcMayaFUsRC16J3DTransformInfo */ -void J3DMtxCalcMaya::@148@36@calcTransform(unsigned short, const J3DTransformInfo&) { - /* Nonmatching */ -} - -/* 80017508-8001751C .text @148@36@recursiveCalc__15J3DMtxCalcBasicFP7J3DNode */ -void J3DMtxCalcBasic::@148@36@recursiveCalc(J3DNode*) { - /* Nonmatching */ -} - -/* 8001751C-80017530 .text @148@36@init__14J3DMtxCalcMayaFRC3VecRA3_A4_Cf */ -void J3DMtxCalcMaya::@148@36@init(const Vec&, const float(&)[3][4]) { - /* Nonmatching */ -}