From a3578d0c7c64b11258260bee1148d33195542c4f Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Tue, 4 Oct 2022 17:29:53 -0700 Subject: [PATCH 1/4] fopEn_enemy / fix e_wb --- Progress.md | 8 +- .../d_a_alink/throwBoomerang__9daAlink_cFv.s | 4 +- ...y_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s | 10 +- .../execute__13daBoomerang_cFv.s | 4 +- include/JSystem/J3DGraphBase/J3DDrawBuffer.h | 39 +- include/JSystem/J3DGraphBase/J3DPacket.h | 4 +- include/JSystem/J3DGraphBase/J3DShape.h | 16 + include/JSystem/J3DGraphBase/J3DShapeMtx.h | 36 +- .../JSystem/J3DGraphLoader/J3DShapeFactory.h | 74 +++- include/JSystem/JSupport/JSupport.h | 2 +- include/d/a/d_a_alink.h | 20 +- include/d/a/d_a_player.h | 24 +- include/d/bg/d_bg_s_acch.h | 2 +- include/d/com/d_com_inf_game.h | 42 ++- include/d/d_drawlist.h | 1 + include/d/event/d_event.h | 2 + include/d/particle/d_particle.h | 23 +- include/f_op/f_op_actor.h | 22 ++ include/m_Do/m_Do_ext.h | 90 +++-- include/m_Do/m_Do_graphic.h | 1 + include/m_Do/m_Do_mtx.h | 2 +- include/rel/d/a/d_a_boomerang/d_a_boomerang.h | 4 +- include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h | 144 +++++++- libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp | 265 ++++++-------- libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp | 4 +- .../J3DGraphLoader/J3DShapeFactory.cpp | 308 +++++++++------- rel/d/a/d_a_boomerang/d_a_boomerang.cpp | 2 +- rel/d/a/e/d_a_e_wb/d_a_e_wb.cpp | 115 +----- src/d/a/d_a_alink.cpp | 4 +- src/d/a/d_a_alink_boom.inc | 49 +-- src/d/a/d_a_horse_static.cpp | 19 +- src/d/a/d_a_itembase.cpp | 16 +- src/d/a/d_a_obj.cpp | 178 ++++----- src/d/a/d_a_player.cpp | 346 +++++++++--------- src/d/particle/d_particle.cpp | 2 +- src/f_op/f_op_actor.cpp | 11 - 36 files changed, 1057 insertions(+), 836 deletions(-) diff --git a/Progress.md b/Progress.md index fc8be3633dd..c2234273c8a 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 91.849662% | 8700 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 16.356925% | 588284 | 3596544 +.text | 16.478820% | 592668 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 25.160968% | 1011640 | 4020672 +Total | 25.270005% | 1016024 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 25.160968% | 1011640 | 4020672 +main.dol | 25.270005% | 1016024 | 4020672 RELs | 33.217047% | 3820068 | 11500324 -Total | 31.130141% | 4831708 | 15520996 +Total | 31.158387% | 4836092 | 15520996 ## RELs diff --git a/asm/d/a/d_a_alink/throwBoomerang__9daAlink_cFv.s b/asm/d/a/d_a_alink/throwBoomerang__9daAlink_cFv.s index 009a9f0bc3a..dc8922a68d4 100644 --- a/asm/d/a/d_a_alink/throwBoomerang__9daAlink_cFv.s +++ b/asm/d/a/d_a_alink/throwBoomerang__9daAlink_cFv.s @@ -43,13 +43,13 @@ lbl_800E0734: /* 800E0758 64 03 00 40 */ oris r3, r0, 0x40 /* 800E075C 90 64 5F 18 */ stw r3, 0x5f18(r4) /* 800E0760 38 00 40 00 */ li r0, 0x4000 -/* 800E0764 B0 0D 8A 9C */ sth r0, struct_8045101C+0x0(r13) +/* 800E0764 B0 0D 8A 9C */ sth r0, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) /* 800E0768 54 60 03 56 */ rlwinm r0, r3, 0, 0xd, 0xb /* 800E076C 90 04 5F 18 */ stw r0, 0x5f18(r4) /* 800E0770 38 00 FF FF */ li r0, -1 /* 800E0774 B0 1D 30 8E */ sth r0, 0x308e(r29) /* 800E0778 38 00 00 00 */ li r0, 0 -/* 800E077C B0 0D 8A 9E */ sth r0, struct_8045101C+0x2(r13) +/* 800E077C B0 0D 8A 9E */ sth r0, m_dropAngleY__20daPy_boomerangMove_c+0x2(r13) /* 800E0780 48 00 00 44 */ b lbl_800E07C4 lbl_800E0784: /* 800E0784 3C 60 80 39 */ lis r3, m__20daAlinkHIO_pickUp_c0@ha /* 0x8038E840@ha */ diff --git a/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s b/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s index 0cff662c51f..ec6f3756e79 100644 --- a/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s +++ b/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s @@ -51,7 +51,7 @@ lbl_8015E6F0: /* 8015E708 98 1E 00 00 */ stb r0, 0(r30) /* 8015E70C 48 00 00 24 */ b lbl_8015E730 lbl_8015E710: -/* 8015E710 A8 0D 8A 9E */ lha r0, struct_8045101C+0x2(r13) +/* 8015E710 A8 0D 8A 9E */ lha r0, m_dropAngleY__20daPy_boomerangMove_c+0x2(r13) /* 8015E714 2C 00 00 00 */ cmpwi r0, 0 /* 8015E718 41 82 00 18 */ beq lbl_8015E730 /* 8015E71C 88 1E 00 00 */ lbz r0, 0(r30) @@ -97,7 +97,7 @@ lbl_8015E794: /* 8015E7B4 2C 03 00 00 */ cmpwi r3, 0 /* 8015E7B8 40 82 00 A8 */ bne lbl_8015E860 lbl_8015E7BC: -/* 8015E7BC A8 0D 8A 9E */ lha r0, struct_8045101C+0x2(r13) +/* 8015E7BC A8 0D 8A 9E */ lha r0, m_dropAngleY__20daPy_boomerangMove_c+0x2(r13) /* 8015E7C0 2C 00 00 00 */ cmpwi r0, 0 /* 8015E7C4 41 82 00 10 */ beq lbl_8015E7D4 /* 8015E7C8 88 1E 00 00 */ lbz r0, 0(r30) @@ -106,7 +106,7 @@ lbl_8015E7BC: lbl_8015E7D4: /* 8015E7D4 C0 22 9C 28 */ lfs f1, lit_4334(r2) /* 8015E7D8 48 10 91 7D */ bl cM_rndF__Ff -/* 8015E7DC A8 6D 8A 9C */ lha r3, struct_8045101C+0x0(r13) +/* 8015E7DC A8 6D 8A 9C */ lha r3, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) /* 8015E7E0 A8 1D 04 E6 */ lha r0, 0x4e6(r29) /* 8015E7E4 7C 03 02 14 */ add r0, r3, r0 /* 8015E7E8 C8 42 9C 08 */ lfd f2, lit_4237(r2) @@ -136,9 +136,9 @@ lbl_8015E7D4: /* 8015E848 EC 01 00 32 */ fmuls f0, f1, f0 /* 8015E84C EC 02 00 2A */ fadds f0, f2, f0 /* 8015E850 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8015E854 A8 6D 8A 9C */ lha r3, struct_8045101C+0x0(r13) +/* 8015E854 A8 6D 8A 9C */ lha r3, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) /* 8015E858 38 03 20 00 */ addi r0, r3, 0x2000 -/* 8015E85C B0 0D 8A 9C */ sth r0, struct_8045101C+0x0(r13) +/* 8015E85C B0 0D 8A 9C */ sth r0, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) lbl_8015E860: /* 8015E860 38 60 00 00 */ li r3, 0 lbl_8015E864: diff --git a/asm/rel/d/a/d_a_boomerang/d_a_boomerang/execute__13daBoomerang_cFv.s b/asm/rel/d/a/d_a_boomerang/d_a_boomerang/execute__13daBoomerang_cFv.s index 39469e10bcb..98771505c83 100644 --- a/asm/rel/d/a/d_a_boomerang/d_a_boomerang/execute__13daBoomerang_cFv.s +++ b/asm/rel/d/a/d_a_boomerang/d_a_boomerang/execute__13daBoomerang_cFv.s @@ -244,8 +244,8 @@ lbl_804A1B68: /* 804A1B9C 28 00 00 00 */ cmplwi r0, 0 /* 804A1BA0 41 82 00 10 */ beq lbl_804A1BB0 /* 804A1BA4 38 00 00 01 */ li r0, 1 -/* 804A1BA8 3C 60 80 45 */ lis r3, struct_8045101C+0x2@ha /* 0x8045101E@ha */ -/* 804A1BAC B0 03 10 1E */ sth r0, struct_8045101C+0x2@l(r3) /* 0x8045101E@l */ +/* 804A1BA8 3C 60 80 45 */ lis r3, m_dropAngleY__20daPy_boomerangMove_c+0x2@ha /* 0x8045101E@ha */ +/* 804A1BAC B0 03 10 1E */ sth r0, m_dropAngleY__20daPy_boomerangMove_c+0x2@l(r3) /* 0x8045101E@l */ lbl_804A1BB0: /* 804A1BB0 38 60 00 01 */ li r3, 1 lbl_804A1BB4: diff --git a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h index 38cc0e08c29..b937d163871 100644 --- a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h +++ b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h @@ -11,22 +11,37 @@ class J3DDrawPacket; class J3DMatPacket; class J3DShapePacket; -typedef void (*J3DDrawBuffer_DrawFunc)(const J3DDrawBuffer* this_); +typedef int (J3DDrawBuffer::*sortFunc)(J3DMatPacket*); +typedef void (J3DDrawBuffer::*drawFunc)() const; class J3DDrawBuffer { public: + enum EDrawType { + DRAW_HEAD, + DRAW_TAIL, + }; + + enum ESortType { + SORT_MAT, + SORT_MAT_ANM, + SORT_Z, + SORT_MODEL, + SORT_INVALID, + SORT_NON, + }; + J3DDrawBuffer() { initialize(); } ~J3DDrawBuffer(); void initialize(); J3DError allocBuffer(u32); void frameInit(); - void entryMatSort(J3DMatPacket*); - void entryMatAnmSort(J3DMatPacket*); - void entryZSort(J3DMatPacket*); - void entryModelSort(J3DMatPacket*); - void entryInvalidSort(J3DMatPacket*); - bool entryNonSort(J3DMatPacket*); - bool entryImm(J3DPacket* pPacket, u16 index); + int entryMatSort(J3DMatPacket*); + int entryMatAnmSort(J3DMatPacket*); + int entryZSort(J3DMatPacket*); + int entryModelSort(J3DMatPacket*); + int entryInvalidSort(J3DMatPacket*); + int entryNonSort(J3DMatPacket*); + int entryImm(J3DPacket* pPacket, u16 index); void draw() const; void drawHead() const; void drawTail() const; @@ -43,12 +58,12 @@ public: /* 0x10 */ f32 mZNear; /* 0x14 */ f32 mZFar; /* 0x18 */ f32 mZRatio; - /* 0x1C */ Mtx* mpZMtx; + /* 0x1C */ MtxP mpZMtx; /* 0x20 */ J3DPacket* mpCallBackPacket; - static u8 sortFuncTable[72]; - static u8 drawFuncTable[24]; - static u8 entryNum[4 + 4 /* padding */]; + static sortFunc sortFuncTable[6]; + static drawFunc drawFuncTable[2]; + static int entryNum; }; #endif /* J3DDRAWBUFFER_H */ diff --git a/include/JSystem/J3DGraphBase/J3DPacket.h b/include/JSystem/J3DGraphBase/J3DPacket.h index 6552c461afd..463ba0d3560 100644 --- a/include/JSystem/J3DGraphBase/J3DPacket.h +++ b/include/JSystem/J3DGraphBase/J3DPacket.h @@ -57,9 +57,11 @@ public: } void addChildPacket(J3DPacket*); + J3DPacket* getNextPacket() const { return mpNextSibling; } + void setNextPacket(J3DPacket* i_packet) { mpNextSibling = i_packet; } - inline void clear() { + void drawClear() { mpNextSibling = NULL; mpFirstChild = NULL; } diff --git a/include/JSystem/J3DGraphBase/J3DShape.h b/include/JSystem/J3DGraphBase/J3DShape.h index f18551d7ede..85cf0da8e97 100644 --- a/include/JSystem/J3DGraphBase/J3DShape.h +++ b/include/JSystem/J3DGraphBase/J3DShape.h @@ -27,6 +27,11 @@ static inline void J3DFifoWriteXFCmd(u16 cmd, u16 len) { class J3DCurrentMtx : public J3DCurrentMtxInfo { public: + J3DCurrentMtx() { + mMtxIdxRegA = 0x3cf3cf00; + mMtxIdxRegB = 0x00f3cf3c; + } + u32 getMtxIdxRegA() const { return mMtxIdxRegA; } u32 getMtxIdxRegB() const { return mMtxIdxRegB; } @@ -54,6 +59,14 @@ enum J3DShpFlag { class J3DShape { public: + J3DShape() { + initialize(); + } + + enum { + kVcdVatDLSize = 0xC0, + }; + /* 80314B48 */ void initialize(); /* 80314BB8 */ void addTexMtxIndexInDL(_GXAttr, u32); /* 80314CBC */ void addTexMtxIndexInVcd(_GXAttr); @@ -93,11 +106,14 @@ public: inline u32 getMtxGroupNum() const { return mMtxGroupNum; } inline J3DShapeDraw* getShapeDraw(u32 idx) const { return mShapeDraw[idx]; } inline J3DShapeMtx* getShapeMtx(u32 idx) const { return mShapeMtx[idx]; } + static void resetVcdVatCache() { sOldVcdVatCmd = NULL; } static void* sOldVcdVatCmd; private: + friend struct J3DShapeFactory; + /* 0x04 */ J3DMaterial* mMaterial; /* 0x08 */ u16 mIndex; /* 0x0A */ u16 mMtxGroupNum; diff --git a/include/JSystem/J3DGraphBase/J3DShapeMtx.h b/include/JSystem/J3DGraphBase/J3DShapeMtx.h index 0a346b20683..1b745e5fc19 100644 --- a/include/JSystem/J3DGraphBase/J3DShapeMtx.h +++ b/include/JSystem/J3DGraphBase/J3DShapeMtx.h @@ -24,6 +24,10 @@ extern u8 struct_804515B0[4]; class J3DShapeMtx { public: + J3DShapeMtx(u16 useMtxIndex) + : mUseMtxIndex(useMtxIndex) + {} + /* 803130A8 */ void resetMtxLoadCache(); /* 803130E4 */ void loadMtxIndx_PNGP(int, u16) const; /* 80313128 */ void loadMtxIndx_PCPU(int, u16) const; @@ -54,6 +58,10 @@ private: class J3DShapeMtxConcatView : public J3DShapeMtx { public: + J3DShapeMtxConcatView(u16 useMtxIndex) + : J3DShapeMtx(useMtxIndex) + {} + /* 80314730 */ virtual ~J3DShapeMtxConcatView(); /* 803147E0 */ virtual u32 getType() const; /* 80313C54 */ virtual void load() const; @@ -73,6 +81,10 @@ public: class J3DShapeMtxYBBoardConcatView : public J3DShapeMtxConcatView { public: + J3DShapeMtxYBBoardConcatView(u16 useMtxIndex) + : J3DShapeMtxConcatView(useMtxIndex) + {} + /* 80314520 */ virtual ~J3DShapeMtxYBBoardConcatView(); /* 803147E0 */ virtual u32 getType() const; /* 803143E4 */ virtual void load() const; @@ -80,6 +92,10 @@ public: class J3DShapeMtxBBoardConcatView : public J3DShapeMtxConcatView { public: + J3DShapeMtxBBoardConcatView(u16 useMtxIndex) + : J3DShapeMtxConcatView(useMtxIndex) + {} + /* 803145A4 */ virtual ~J3DShapeMtxBBoardConcatView(); /* 803147E0 */ virtual u32 getType() const; /* 803142D4 */ virtual void load() const; @@ -87,6 +103,12 @@ public: class J3DShapeMtxMulti : public J3DShapeMtx { public: + J3DShapeMtxMulti(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable) + : J3DShapeMtx(useMtxIndex) + , mUseMtxNum(useMtxNum) + , mUseMtxIndexTable(useMtxIndexTable) + {} + /* 803146B0 */ virtual ~J3DShapeMtxMulti(); /* 803147E0 */ virtual u32 getType() const; /* 80273E08 */ virtual u32 getUseMtxNum() const; @@ -96,11 +118,17 @@ public: private: /* 0x6 */ u16 mUseMtxNum; - /* 0x8 */ u16* mUseMtxIndex; + /* 0x8 */ u16* mUseMtxIndexTable; }; -class J3DShapeMtxMultiConcatView : public J3DShapeMtx { +class J3DShapeMtxMultiConcatView : public J3DShapeMtxConcatView { public: + J3DShapeMtxMultiConcatView(u16 useMtxIndex, u16 useMtxNum, u16* useMtxIndexTable) + : J3DShapeMtxConcatView(useMtxIndex) + , mUseMtxNum(useMtxNum) + , mUseMtxIndexTable(useMtxIndexTable) + {} + /* 8031461C */ virtual ~J3DShapeMtxMultiConcatView(); /* 803147E0 */ virtual u32 getType() const; /* 80273E08 */ virtual u32 getUseMtxNum() const; @@ -111,7 +139,7 @@ public: private: /* 0x6 */ u16 mUseMtxNum; - /* 0x8 */ u16* mUseMtxIndex; + /* 0x8 */ u16* mUseMtxIndexTable; }; -#endif /* J3DSHAPEMTX_H */ +#endif /* J3DSHAPEMTX_H */ \ No newline at end of file diff --git a/include/JSystem/J3DGraphLoader/J3DShapeFactory.h b/include/JSystem/J3DGraphLoader/J3DShapeFactory.h index 6f1f64ce13b..385a217e253 100644 --- a/include/JSystem/J3DGraphLoader/J3DShapeFactory.h +++ b/include/JSystem/J3DGraphLoader/J3DShapeFactory.h @@ -1,6 +1,78 @@ #ifndef J3DSHAPEFACTORY_H #define J3DSHAPEFACTORY_H +#include "dolphin/gx/GX.h" #include "dolphin/types.h" -#endif /* J3DSHAPEFACTORY_H */ +struct J3DShape; +struct J3DShapeMtx; +struct J3DShapeDraw; +struct ResNTAB; + +struct J3DShapeInitData { + /* 0x00 */ u8 mShapeMtxType; + /* 0x02 */ u16 mMtxGroupNum; + /* 0x04 */ u16 mVtxDescListIndex; + /* 0x06 */ u16 mMtxInitDataIndex; + /* 0x08 */ u16 mDrawInitDataIndex; + /* 0x0C */ f32 mRadius; + /* 0x10 */ Vec mMin; + /* 0x1C */ Vec mMax; +}; + +struct J3DShapeMtxInitData { + /* 0x00 */ u16 mUseMtxIndex; + /* 0x02 */ u16 mUseMtxCount; + /* 0x04 */ u32 mFirstUseMtxIndex; +}; + +struct J3DShapeDrawInitData { + /* 0x00 */ u32 mDisplayListSize; + /* 0x04 */ u32 mDisplayListIndex; +}; + +struct J3DShapeBlock { + /* 0x00 */ u8 mMagic[4]; + /* 0x04 */ u32 mSize; + + /* 0x08 */ u16 mShapeNum; + /* 0x0A */ u16 _pad; + + /* 0x0C */ J3DShapeInitData* mShapeInitData; + /* 0x10 */ u16* mIndexTable; + /* 0x14 */ ResNTAB* mNameTable; + /* 0x18 */ GXVtxDescList* mVtxDescList; + /* 0x1C */ u16* mMtxTable; + /* 0x20 */ u8* mDisplayListData; + /* 0x24 */ J3DShapeMtxInitData* mMtxInitData; + /* 0x28 */ J3DShapeDrawInitData* mDrawInitData; +}; + +struct J3DShapeFactory { + /* 80337350 */ J3DShapeFactory(J3DShapeBlock const&); + /* 80337400 */ J3DShape* create(int, u32, GXVtxDescList*); + /* 803375BC */ J3DShapeMtx* newShapeMtx(u32, int, int) const; + /* 8033784C */ J3DShapeDraw* newShapeDraw(int, int) const; + /* 803378D8 */ void allocVcdVatCmdBuffer(u32); + /* 80337944 */ s32 calcSize(int, u32); + /* 803379D8 */ s32 calcSizeVcdVatCmdBuffer(u32); + /* 803379E8 */ s32 calcSizeShapeMtx(u32, int, int) const; + + /* 0x00 */ J3DShapeInitData* mShapeInitData; + /* 0x04 */ u16* mIndexTable; + /* 0x08 */ GXVtxDescList* mVtxDescList; + /* 0x0C */ u16* mMtxTable; + /* 0x10 */ u8* mDisplayListData; + /* 0x14 */ J3DShapeMtxInitData* mMtxInitData; + /* 0x18 */ J3DShapeDrawInitData* mDrawInitData; + /* 0x1C */ u8* mVcdVatCmdBuffer; + + u32 getMtxGroupNum(int no) const { return mShapeInitData[mIndexTable[no]].mMtxGroupNum; } + GXVtxDescList* getVtxDescList(int no) const { return (GXVtxDescList*)((u8*)mVtxDescList + mShapeInitData[mIndexTable[no]].mVtxDescListIndex); } + f32 getRadius(int no) const { return mShapeInitData[mIndexTable[no]].mRadius; } + Vec& getMin(int no) const { return mShapeInitData[mIndexTable[no]].mMin; } + Vec& getMax(int no) const { return mShapeInitData[mIndexTable[no]].mMax; } +}; + + +#endif /* J3DSHAPEFACTORY_H */ \ No newline at end of file diff --git a/include/JSystem/JSupport/JSupport.h b/include/JSystem/JSupport/JSupport.h index 7c1d91058ab..e98dee1f987 100644 --- a/include/JSystem/JSupport/JSupport.h +++ b/include/JSystem/JSupport/JSupport.h @@ -3,7 +3,7 @@ template T* JSUConvertOffsetToPtr(const void* ptr, const void* offset) { - if (ptr == NULL) { + if (offset == NULL) { return NULL; } else { return (T*)((s32)ptr + (s32)offset); diff --git a/include/d/a/d_a_alink.h b/include/d/a/d_a_alink.h index 7df6f5c7a6c..f0caef5526d 100644 --- a/include/d/a/d_a_alink.h +++ b/include/d/a/d_a_alink.h @@ -1430,7 +1430,7 @@ public: /* 800E01CC */ void cancelBoomerangLock(fopAc_ac_c*); /* 800E0210 */ fopAc_ac_c* getBoomerangActor(); /* 800E0244 */ bool checkBoomerangChargeEnd(); - /* 800E02B8 */ void checkBoomerangCarry(fopAc_ac_c*); + /* 800E02B8 */ BOOL checkBoomerangCarry(fopAc_ac_c*); /* 800E03D0 */ void initBoomerangUpperAnimeSpeed(int); /* 800E0440 */ BOOL checkBoomerangAnime() const; /* 800E04AC */ BOOL checkBoomerangThrowAnime() const; @@ -5596,17 +5596,17 @@ class daAlinkHIO_boom_c1 { public: /* 0x00 */ daAlinkHIO_anm_c mThrowAnm; /* 0x14 */ daAlinkHIO_anm_c mCatchAnm; - /* 0x28 */ s16 field_0x28; + /* 0x28 */ s16 field_0x28; // return time? /* 0x2A */ s16 mBgThroughTime; - /* 0x2C */ f32 field_0x2c; - /* 0x30 */ f32 field_0x30; - /* 0x34 */ f32 field_0x34; - /* 0x38 */ f32 field_0x38; - /* 0x3C */ f32 field_0x3c; - /* 0x40 */ f32 field_0x40; - /* 0x44 */ f32 field_0x44; + /* 0x2C */ f32 mIdleAnmSpeed; + /* 0x30 */ f32 mStartInterpolation; + /* 0x34 */ f32 mFlySpeed; + /* 0x38 */ f32 mFlySpeed2; // return speed? + /* 0x3C */ f32 mFlyDistMax; + /* 0x40 */ f32 mHorsebackFlyDistMax; + /* 0x44 */ f32 mLockDistMax; /* 0x48 */ f32 mCatchSpeed; -}; // Size: 0x4c +}; // Size: 0x4C class daAlinkHIO_boom_c0 { public: diff --git a/include/d/a/d_a_player.h b/include/d/a/d_a_player.h index 1e5e9c7604d..f026d1bfa89 100644 --- a/include/d/a/d_a_player.h +++ b/include/d/a/d_a_player.h @@ -34,12 +34,15 @@ private: class daPy_boomerangMove_c { public: /* 8015E5B0 */ void initOffset(cXyz const*); - /* 8015E654 */ void posMove(cXyz*, s16*, fopAc_ac_c*, s16); + /* 8015E654 */ int posMove(cXyz*, s16*, fopAc_ac_c*, s16); /* 8015E87C */ void bgCheckAfterOffset(cXyz const*); + static s16 m_dropAngleY; + static s16 m_eventKeepFlg; + private: /* 0x0 */ u8 field_0x0; - /* 0x2 */ u16 field_0x2; + /* 0x2 */ s16 field_0x2; /* 0x4 */ f32 field_0x4; /* 0x8 */ f32 field_0x8; }; // Size: 0xC @@ -213,7 +216,15 @@ public: HEAVY_STATE_BOOTS = FLG0_UNK_40000000 | EQUIP_HEAVY_BOOTS | FLG0_UNK_20000, }; - enum daPy_FLG1 { IS_WOLF = 0x2000000, FLG1_UNK_10000 = 0x10000, THROW_DAMAGE = 0x4000, FLG1_UNK_4 = 4, }; + + enum daPy_FLG1 { + IS_WOLF = 0x2000000, + FLG1_UNK_10000 = 0x10000, + THROW_DAMAGE = 0x4000, + FLG1_UNK_4 = 4, + FLG1_UNK_2 = 2, + }; + enum daPy_FLG2 { FLG2_UNK_20000000 = 0x20000000, FLG2_UNK_4080000 = 0x4080000, @@ -227,12 +238,14 @@ public: UNK_FLG2_2 = 2, UNK_DAPY_FLG2_1 = 1 }; + enum daPy_FLG3 { FLG3_UNK_2000000 = 0x2000000, FLG3_UNK_1000000 = 0x1000000, FLG3_UNK_100000 = 0x100000, COPY_ROD_THROW_AFTER = 0x40000 }; + enum daPy_ERFLG0 { ERFLG0_UNK_8000000 = 0x8000000, ERFLG0_UNK_1000000 = 0x1000000, @@ -243,15 +256,18 @@ public: ERFLG0_UNK_2 = 2, ERFLG0_UNK_1 = 1, }; + enum daPy_ERFLG1 { GANON_FINISH = 0x80000000, UNK_FORCE_PUT_POS = 0x2000, ERFLG1_UNK_2 = 2, ERFLG1_UNK_1 = 1, }; + enum daPy_ERFLG2 { ERFLG2_UNK_100 = 0x100, }; + enum daPy_RFLG0 { RFLG0_UNK_8000000 = 0x8000000, RFLG0_UNK_4000 = 0x4000, @@ -321,7 +337,7 @@ public: static u32 checkCarryStartLightBallA(); static u32 checkCarryStartLightBallB(); float getSpinnerRideSpeed() const; - void checkSpinnerReflectEffect(); + bool checkSpinnerReflectEffect(); static bool checkBoomerangCharge(); bool checkBoomerangChargeTime(); static daBoomerang_c* getThrowBoomerangActor(); diff --git a/include/d/bg/d_bg_s_acch.h b/include/d/bg/d_bg_s_acch.h index 0754ceb3ec8..7a56b4d3d65 100644 --- a/include/d/bg/d_bg_s_acch.h +++ b/include/d/bg/d_bg_s_acch.h @@ -47,7 +47,7 @@ public: bool ChkWallHit() { return m_flags & WALL_HIT; } void SetCir(cXyz& pos) { m_cir.Set(pos.x, pos.z, pos.y + GetWallH(), m_wall_r); } -}; +}; // Size: 0x40 class dBgS; class dBgS_Acch : public cBgS_Chk, public dBgS_Chk { diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 0d0a803c887..899e6e40841 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -364,7 +364,10 @@ public: void setPlayerPtr(int i, fopAc_ac_c* ptr) { mPlayerPtr[i] = ptr; } void setPlayer(int i, fopAc_ac_c* player) { mPlayer[i] = (daAlink_c*)player; } - void setPlayerInfo(int i, fopAc_ac_c* ptr, int camIdx) { mPlayer[i] = (daAlink_c*)ptr; mPlayerCameraID[camIdx] = 0; } + void setPlayerInfo(int i, fopAc_ac_c* ptr, int camIdx) { + mPlayer[i] = (daAlink_c*)ptr; + mPlayerCameraID[camIdx] = 0; + } void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] |= flag; } void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] &= ~flag; } bool checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[i]; } @@ -1477,7 +1480,6 @@ inline void dComIfGs_setMemoryToCard(u8* p_saveData, int dataNum) { g_dComIfG_gameInfo.info.memory_to_card((char*)p_saveData, dataNum); } - void dComIfGp_setSelectItem(int index); s32 dComIfGp_offHeapLockFlag(int flag); void dComIfGp_createSubExpHeap2D(); @@ -2024,7 +2026,8 @@ inline BOOL dComIfGp_checkCameraAttentionStatus(int i, u32 flag) { return g_dComIfG_gameInfo.play.checkCameraAttentionStatus(i, flag); } -inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) { +inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, + int param_4) { g_dComIfG_gameInfo.play.setCameraInfo(camIdx, p_cam, param_2, param_3, param_4); } @@ -2288,7 +2291,8 @@ inline int dComIfGp_event_moveApproval(void* actor) { inline int dComIfGp_event_order(u16 eventType, u16 priority, u16 flag, u16 param_3, void* param_4, void* param_5, s16 eventID, u8 infoIdx) { - return g_dComIfG_gameInfo.play.getEvent().order(eventType, priority, flag, param_3, param_4, param_5, eventID, infoIdx); + return g_dComIfG_gameInfo.play.getEvent().order(eventType, priority, flag, param_3, param_4, + param_5, eventID, infoIdx); } inline void dComIfGp_event_setGtItm(int i_itemNo) { @@ -2436,10 +2440,10 @@ inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, param_10, param_11, 1.0f); } -inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3, - const cXyz* param_4, u8 param_5, dPa_levelEcallBack* param_6, - s8 param_7, const GXColor* param_8, const GXColor* param_9, - const cXyz* param_10) { +inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, + const csXyz* param_3, const cXyz* param_4, u8 param_5, + dPa_levelEcallBack* param_6, s8 param_7, const GXColor* param_8, + const GXColor* param_9, const cXyz* param_10) { return g_dComIfG_gameInfo.play.getParticle()->setNormal( param_0, param_1, param_2, NULL, param_3, param_4, param_5, param_6, param_7, param_8, param_9, param_10, 1.0f); @@ -2454,20 +2458,29 @@ inline u32 dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy_tev param_9, param_10, param_11, 1.0f); } +inline u32 dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const csXyz* param_3, + const cXyz* param_4, u8 param_5, dPa_levelEcallBack* param_6, + s8 param_7, const GXColor* param_8, const GXColor* param_9, + const cXyz* param_10) { + return g_dComIfG_gameInfo.play.getParticle()->setNormal(param_1, param_2, NULL, param_3, + param_4, param_5, param_6, param_7, + param_8, param_9, param_10, 1.0f); +} + inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz* param_2, const cXyz* param_3) { return dComIfGp_particle_set(param_0, param_1, NULL, param_2, param_3, 0xFF, NULL, -1, NULL, NULL, NULL); } -inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const dKy_tevstr_c* param_2, const csXyz* param_3, - const cXyz* param_4) { +inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const dKy_tevstr_c* param_2, + const csXyz* param_3, const cXyz* param_4) { return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL, NULL, NULL); } -inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3, - const cXyz* param_4) { +inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, + const csXyz* param_3, const cXyz* param_4) { return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL, NULL, NULL); } @@ -2496,7 +2509,6 @@ int dComIfGd_setShadow(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3 f32 param_5, f32 param_6, f32 param_7, cBgS_PolyInfo& param_8, dKy_tevstr_c* param_9, s16 param_10, f32 param_11, _GXTexObj* param_12); - inline int dComIfGd_setRealShadow(u32 param_0, s8 param_1, J3DModel* param_2, cXyz* param_3, f32 param_4, f32 param_5, dKy_tevstr_c* param_6) { return g_dComIfG_gameInfo.drawlist.setRealShadow(param_0, param_1, param_2, param_3, param_4, @@ -2522,6 +2534,10 @@ inline void dComIfGd_set2DOpa(dDlst_base_c* dlst) { g_dComIfG_gameInfo.drawlist.set2DOpa(dlst); } +inline void dComIfGd_set2DXlu(dDlst_base_c* dlst) { + g_dComIfG_gameInfo.drawlist.set2DXlu(dlst); +} + inline void dComIfGd_set2DOpaTop(dDlst_base_c* dlst) { g_dComIfG_gameInfo.drawlist.set2DOpaTop(dlst); } diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h index 4a4abb8f91c..256a1f1b109 100644 --- a/include/d/d_drawlist.h +++ b/include/d/d_drawlist.h @@ -284,6 +284,7 @@ public: void set2DOpa(dDlst_base_c* dlst) { set(mp2DOpaSet[0], mp2DOpaSet[1], dlst); } void set2DOpaTop(dDlst_base_c* dlst) { set(mp2DOpaTopSet[0], mp2DOpaTopSet[1], dlst); } + void set2DXlu(dDlst_base_c* dlst) { set(mp2DXluSet[0], mp2DXluSet[1], dlst); } view_class* getView() { return mView; } void setView(view_class* view) { mView = view; } void setWindow(dDlst_window_c* window) { mWindow = window; } diff --git a/include/d/event/d_event.h b/include/d/event/d_event.h index 04a9a610cb2..8da3453ea69 100644 --- a/include/d/event/d_event.h +++ b/include/d/event/d_event.h @@ -104,6 +104,8 @@ public: void setPtD(void* ptr); void setGtItm(u8 itemNo); void isOrderOK(); + /* 807DFAD8 */ void checkSkipEdge(); + /* 807E2908 */ void startCheckSkipEdge(void*); u16 chkFlag2(u16 flag) { return flag & mFlag2; } bool runCheck() { return mEventStatus != 0; } diff --git a/include/d/particle/d_particle.h b/include/d/particle/d_particle.h index d4a8cc965d4..270c1347d0f 100644 --- a/include/d/particle/d_particle.h +++ b/include/d/particle/d_particle.h @@ -2,9 +2,9 @@ #define D_PARTICLE_D_PARTICLE_H #include "JSystem/JParticle/JPAParticle.h" +#include "d/particle/d_particle_name.h" #include "dolphin/types.h" #include "f_op/f_op_actor.h" -#include "d/particle/d_particle_name.h" class dPa_levelEcallBack : public JPAEmitterCallBack { public: @@ -138,8 +138,8 @@ public: /* 8004AB1C */ void create(u8); /* 8004ABC4 */ void remove(); - /* 8004AC00 */ void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8, void*, u8, - u8); + /* 8004AC00 */ static void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8, + void*, u8, u8); /* 8004AC90 */ void resetModel(JPABaseEmitter*); /* 8004ACC0 */ void setupModel(JPABaseEmitter*); /* 8004ACEC */ void drawModel(JPABaseEmitter*, f32 (*)[4]); @@ -152,7 +152,15 @@ public: /* 80050014 */ virtual void drawAfter(JPABaseEmitter*); /* 8004AAA8 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8); - static u8 mEcallback[4]; + static void setModel(JPABaseEmitter* param_0, J3DModelData* param_1, + const dKy_tevstr_c& param_2, u8 param_3, J3DAnmTexPattern* param_4, + u8 param_5) { + setModel(param_0, param_1, param_2, param_3, param_4, param_5); + } + + static dPa_modelEcallBack* getEcallback() { return mEcallback; } + + static dPa_modelEcallBack* mEcallback; static u8 mPcallback[4]; static J3DModel* mModel; }; @@ -207,7 +215,6 @@ public: /* 8004FE6C */ virtual ~dPa_fsenthPcallBack(); /* 8004DCA0 */ virtual void execute(JPABaseEmitter*, JPABaseParticle*); /* 8004DD0C */ virtual void draw(JPABaseEmitter*, JPABaseParticle*); - }; class dPa_simpleData_c { @@ -244,7 +251,7 @@ public: void offActive() { mStatus &= ~1; } bool isActive() { return mStatus & 1; } - + private: /* 0x00 */ u32 mId; /* 0x04 */ u16 mNameId; @@ -341,6 +348,10 @@ public: static void offStatus(u8 status) { mStatus &= ~status; } static bool isStatus(u8 status) { return mStatus & status; } + static dPa_selectTexEcallBack* getTsuboSelectTexEcallBack(int idx) { + return ((dPa_selectTexEcallBack*)mTsubo) + idx; + } + static u8 mTsubo[64]; static u8 mLifeBall[24]; static Mtx mWindViewMatrix; diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index e85f70bf2c6..77f98548aa2 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -134,6 +134,28 @@ public: s8 getRoomNo() const { return current.mRoomNo; } }; // Size: 0x568 +class fopEn_enemy_c : public fopAc_ac_c { +public: + /* 80019404 */ void initBallModel(); + /* 800194FC */ void checkBallModelDraw(); + /* 80019520 */ void setBallModelEffect(dKy_tevstr_c*); + /* 800196A0 */ void drawBallModel(dKy_tevstr_c*); + + /* 0x568 */ cXyz mDownPos; + /* 0x574 */ cXyz mHeadLockPos; + /* 0x580 */ J3DModel* mBallModel; + /* 0x584 */ J3DAnmTextureSRTKey* mBtk; + /* 0x588 */ J3DAnmTevRegKey* mBrk; + /* 0x58C */ u8 field_0x58c; + /* 0x58D */ u8 mThrowMode; + /* 0x58E */ u16 mFlags; + /* 0x590 */ f32 field_0x590; + /* 0x594 */ u32 mEffectID1; + /* 0x598 */ u32 mEffectID2; + /* 0x59C */ u32 mMidnaBindID[3]; + /* 0x5A8 */ u8 field_0x5a8; +}; // Size: 0x5AC + s32 fopAc_IsActor(void* actor); #endif diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index ab055c090ce..1d932e8347d 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -46,17 +46,21 @@ private: class mDoExt_btkAnm : public mDoExt_baseAnm { public: mDoExt_btkAnm() { mpAnm = 0; } - /* 8000D63C */ int init(J3DMaterialTable*, J3DAnmTextureSRTKey*, int, int, f32, s16, s16); - /* 8000D6D8 */ void entry(J3DMaterialTable*, f32); + /* 8000D63C */ int init(J3DMaterialTable* i_matTable, J3DAnmTextureSRTKey* i_btk, int i_anmPlay, + int i_attribute, f32 i_rate, s16 i_start, s16 param_6); + /* 8000D6D8 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame); - void entry(J3DModelData* data) { entry(data, getFrame()); } - void entry(J3DModelData* data, f32 frame) { entry(&data->getMaterialTable(), frame); } - int init(J3DModelData* data, J3DAnmTextureSRTKey* key, int param_2, int param_3, f32 param_4, - s16 param_5, s16 param_6) { - return init(&data->getMaterialTable(), key, param_2, param_3, param_4, param_5, param_6); + void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } + void entry(J3DModelData* i_modelData, f32 i_frame) { + entry(&i_modelData->getMaterialTable(), i_frame); + } + int init(J3DModelData* i_modelData, J3DAnmTextureSRTKey* i_btk, int i_anmPlay, int i_attribute, + f32 i_rate, s16 i_start, s16 param_6) { + return init(&i_modelData->getMaterialTable(), i_btk, i_anmPlay, i_attribute, i_rate, + i_start, param_6); } - int remove(J3DModelData* data) { return data->removeTexMtxAnimator(mpAnm); } + int remove(J3DModelData* i_modelData) { return i_modelData->removeTexMtxAnimator(mpAnm); } private: /* 0x14 */ J3DAnmTextureSRTKey* mpAnm; @@ -67,18 +71,22 @@ STATIC_ASSERT(sizeof(mDoExt_btkAnm) == 0x18); class mDoExt_brkAnm : public mDoExt_baseAnm { public: mDoExt_brkAnm() { mpAnm = 0; } - /* 8000D70C */ int init(J3DMaterialTable*, J3DAnmTevRegKey*, int, int, f32, s16, s16); - /* 8000D7A8 */ void entry(J3DMaterialTable*, f32); + /* 8000D70C */ int init(J3DMaterialTable* i_matTable, J3DAnmTevRegKey* i_brk, int i_anmPlay, + int i_attribute, f32 i_rate, s16 i_start, s16 param_6); + /* 8000D7A8 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame); - void entry(J3DModelData* data) { entry(data, getFrame()); } - void entry(J3DModelData* data, f32 frame) { entry(&data->getMaterialTable(), frame); } - - int init(J3DModelData* data, J3DAnmTevRegKey* anmKey, int param_2, int param_3, f32 param_4, - s16 param_5, s16 param_6) { - return init(&data->getMaterialTable(), anmKey, param_2, param_3, param_4, param_5, param_6); + void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } + void entry(J3DModelData* i_modelData, f32 i_frame) { + entry(&i_modelData->getMaterialTable(), i_frame); } - int remove(J3DModelData* data) { return data->removeTevRegAnimator(mpAnm); } + int init(J3DModelData* i_modelData, J3DAnmTevRegKey* i_brk, int i_anmPlay, int i_attribute, + f32 i_rate, s16 i_start, s16 param_6) { + return init(&i_modelData->getMaterialTable(), i_brk, i_anmPlay, i_attribute, i_rate, + i_start, param_6); + } + + int remove(J3DModelData* i_modelData) { return i_modelData->removeTevRegAnimator(mpAnm); } private: /* 0x14 */ J3DAnmTevRegKey* mpAnm; @@ -93,16 +101,18 @@ public: int i_attribute, f32 i_rate, s16 i_start, s16 param_6); /* 8000D518 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame); - void entry(J3DModelData* data) { entry(data, getFrame()); } - void entry(J3DModelData* data, f32 frame) { entry(&data->getMaterialTable(), frame); } - - int init(J3DModelData* data, J3DAnmColor* anmColor, int param_2, int param_3, f32 param_4, - s16 param_5, s16 param_6) { - return init(&data->getMaterialTable(), anmColor, param_2, param_3, param_4, param_5, - param_6); + void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } + void entry(J3DModelData* i_modelData, f32 i_frame) { + entry(&i_modelData->getMaterialTable(), i_frame); } - int remove(J3DModelData* data) { return data->removeMatColorAnimator(mpAnm); } + int init(J3DModelData* i_modelData, J3DAnmColor* i_bpk, int i_anmPlay, int i_attribute, + f32 i_rate, s16 i_start, s16 param_6) { + return init(&i_modelData->getMaterialTable(), i_bpk, i_anmPlay, i_attribute, i_rate, + i_start, param_6); + } + + int remove(J3DModelData* i_modelData) { return i_modelData->removeMatColorAnimator(mpAnm); } private: /* 0x14 */ J3DAnmColor* mpAnm; @@ -115,11 +125,11 @@ public: mDoExt_bckAnm() { mpMtxCalc = NULL; } /* 8000D7DC */ int init(J3DAnmTransform* i_bck, int i_play, int i_attr, f32 i_rate, s16 i_startF, s16 i_endF, bool i_modify); - /* 8000D990 */ void changeBckOnly(J3DAnmTransform*); - /* 8000D9CC */ void entry(J3DModelData*, f32); - /* 8000D9E8 */ void entryJoint(J3DModelData*, u16, f32); + /* 8000D990 */ void changeBckOnly(J3DAnmTransform* i_bck); + /* 8000D9CC */ void entry(J3DModelData* i_modelData, f32 i_frame); + /* 8000D9E8 */ void entryJoint(J3DModelData* i_modelData, u16 i_jntNo, f32 i_frame); - void entry(J3DModelData* data) { entry(data, getFrame()); } + void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } J3DAnmTransform* getBckAnm() { return mAnm; } private: @@ -136,16 +146,18 @@ public: int i_attribute, f32 i_rate, s16 i_start, s16 param_6); /* 8000D5E8 */ void entry(J3DMaterialTable* i_matTable, s16 i_frame); - void entry(J3DModelData* data) { entry(data, getFrame()); } - void entry(J3DModelData* data, s16 frame) { entry(&data->getMaterialTable(), frame); } - - int init(J3DModelData* data, J3DAnmTexPattern* anmPattern, int param_2, int param_3, - f32 param_4, s16 param_5, s16 param_6) { - return init(&data->getMaterialTable(), anmPattern, param_2, param_3, param_4, param_5, - param_6); + void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); } + void entry(J3DModelData* i_modelData, s16 i_frame) { + entry(&i_modelData->getMaterialTable(), i_frame); } - int remove(J3DModelData* data) { return data->removeTexNoAnimator(mpAnm); } + int init(J3DModelData* i_modelData, J3DAnmTexPattern* i_btk, int i_anmPlay, int i_attribute, + f32 i_rate, s16 i_start, s16 param_6) { + return init(&i_modelData->getMaterialTable(), i_btk, i_anmPlay, i_attribute, i_rate, + i_start, param_6); + } + + int remove(J3DModelData* i_modelData) { return i_modelData->removeTexNoAnimator(mpAnm); } private: /* 0x14 */ J3DAnmTexPattern* mpAnm; @@ -197,7 +209,7 @@ private: class mDoExt_invisibleModel { public: - /* 8000E53C */ int create(J3DModel*, u8); + /* 8000E53C */ int create(J3DModel* i_model, u8 param_1); /* 8000E6C8 */ void entryJoint(cXyz*); /* 8000E7C0 */ void entryDL(cXyz*); @@ -219,7 +231,7 @@ class mDoExt_morf_c { // inheritance causing issues, fix later public: /* 8000F950 */ mDoExt_morf_c(); - /* 8000FB7C */ void setMorf(f32); + /* 8000FB7C */ void setMorf(f32 i_morf); /* 8000FBC0 */ void frameUpdate(); /* 8000FAE8 */ virtual ~mDoExt_morf_c(); diff --git a/include/m_Do/m_Do_graphic.h b/include/m_Do/m_Do_graphic.h index 32b4acb8e8c..d989cefe34e 100644 --- a/include/m_Do/m_Do_graphic.h +++ b/include/m_Do/m_Do_graphic.h @@ -36,6 +36,7 @@ public: /* 80007F90 */ static void beginRender(); /* 800080D0 */ static void fadeOut(f32); /* 80007FD8 */ static void fadeOut(f32, _GXColor&); + /* 807DFAB4 */ static void fadeIn(f32, _GXColor&); /* 80008028 */ static void fadeOut_f(f32, _GXColor&); /* 800080A0 */ static void onBlure(const Mtx); /* 80008078 */ static void onBlure(); diff --git a/include/m_Do/m_Do_mtx.h b/include/m_Do/m_Do_mtx.h index 123a7d17b83..a4a5e1b8c0a 100644 --- a/include/m_Do/m_Do_mtx.h +++ b/include/m_Do/m_Do_mtx.h @@ -54,7 +54,7 @@ public: static void XrotM(s16 x) { mDoMtx_XrotM(now, x); } static void inverse() { PSMTXInverse(now, now); } static void concat(const Mtx m) { PSMTXConcat(now, m, now); } - static void copy(const Mtx m) { PSMTXCopy(m, now); } + static void copy(Mtx m) { PSMTXCopy(now, m); } static Mtx now; static Mtx buffer[16]; diff --git a/include/rel/d/a/d_a_boomerang/d_a_boomerang.h b/include/rel/d/a/d_a_boomerang/d_a_boomerang.h index cd39bb9e4f0..e3f802d51b5 100644 --- a/include/rel/d/a/d_a_boomerang/d_a_boomerang.h +++ b/include/rel/d/a/d_a_boomerang/d_a_boomerang.h @@ -90,6 +90,8 @@ public: void onStateFlg0(daBoomerang_FLG0 flag) { mStateFlg0 |= flag; } void onWindCatch() { onStateFlg0(WIND_CATCH); } + bool checkForceDelete() const { return mForceDelete; } + bool checkCharge() const { return true; } private: /* 0x568 */ daMirror_c* field_0x568; @@ -114,7 +116,7 @@ private: /* 0x953 */ u8 field_0x953; /* 0x954 */ u8 field_0x954; /* 0x955 */ u8 field_0x955; - /* 0x956 */ u8 field_0x956; + /* 0x956 */ bool mForceDelete; /* 0x957 */ u8 field_0x957; /* 0x958 */ s16 field_0x958; /* 0x95A */ s16 field_0x95a; diff --git a/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h b/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h index 0f5478c59da..e752b8586af 100644 --- a/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h +++ b/include/rel/d/a/e/d_a_e_wb/d_a_e_wb.h @@ -4,8 +4,17 @@ #include "Z2AudioLib/Z2Creature.h" #include "dolphin/types.h" #include "rel/d/a/d_a_horse/d_a_horse.h" +#include "SSystem/SComponent/c_phase.h" +#include "d/cc/d_cc_uty.h" -class e_wb_class : public fopAc_ac_c { +enum daE_wb_ACT { + /* 0x00 */ ACT_WAIT, + /* 0x15 */ ACT_S_DAMAGE = 0x15, + /* 0x65 */ ACT_PL_RIDE = 0x65, + /* 0x67 */ ACT_PL_RIDE_NOW = 0x67, +}; + +class e_wb_class : public fopEn_enemy_c { public: BOOL checkWait(); void setPlayerRideNow(); @@ -16,38 +25,133 @@ public: void setRunRideMode(); private: - /* 0x0568 */ u8 field_0x568[0x4C]; + /* 0x05AC */ request_of_phase_process_class mPhase; /* 0x05B4 */ s16 field_0x5b4; - /* 0x05B6 */ u8 unk1462[9]; + /* 0x05B8 */ char* mResName; + /* 0x05BC */ u8 field_0x5bc; + /* 0x05BD */ u8 field_0x5bd; + /* 0x05BE */ u8 field_0x5be; /* 0x05BF */ bool field_0x5bf; - /* 0x05C0 */ u8 field_0x5c0[0x20]; - /* 0x05E0 */ void* field_0x5e0; - /* 0x05E4 */ u8 field_0x5e4[8]; + /* 0x05C0 */ u8 field_0x5c0; + /* 0x05C4 */ cXyz field_0x5c4; + /* 0x05D0 */ cXyz field_0x5d0; + /* 0x05DC */ s16 field_0x5dc; + /* 0x05DE */ s16 field_0x5de; + /* 0x05E0 */ mDoExt_McaMorfSO* field_0x5e0; + /* 0x05E4 */ f32 field_0x5e4; + /* 0x05E8 */ int mAnmID; /* 0x05EC */ Z2CreatureRide mZ2Ride; - /* 0x0688 */ u8 unk1673[6]; + /* 0x0688 */ u8 field_0x688[4]; + /* 0x068C */ s8 field_0x68c; /* 0x068E */ s16 field_0x68e; - /* 0x0690 */ s16 field_0x690; + /* 0x0690 */ s16 mActionID; /* 0x0692 */ u16 field_0x692; - /* 0x0694 */ u8 unk1684[0xc]; + /* 0x0694 */ u32 field_0x694; + /* 0x0698 */ s16 field_0x698[4]; /* 0x06A0 */ s16 field_0x6a0; - /* 0x06A2 */ u8 field_0x6a2[0xc]; + /* 0x06A2 */ u8 field_0x6a2[0x6ae - 0x6a2]; /* 0x06AE */ s16 field_0x6ae; /* 0x06B0 */ s16 field_0x6b0; - /* 0x06B2 */ u8 field_0x6b2[0xc]; + /* 0x06B2 */ s16 field_0x6b2; + /* 0x06B4 */ u8 field_0x6b4[0x6b6 - 0x6b4]; + /* 0x06B6 */ s16 field_0x6b6; + /* 0x06B8 */ u8 field_0x6b8[0x6ba - 0x6b8]; + /* 0x06BA */ s16 field_0x6ba; + /* 0x06BC */ u8 field_0x6bc; + /* 0x06BD */ u8 field_0x6bd; /* 0x06BE */ u16 field_0x6be; - /* 0x06C0 */ u8 field_0x6c0[0xdd]; - /* 0x079D */ u8 field_0x79d; - /* 0x079E */ u8 field_0x79e[0x4e]; + /* 0x06C0 */ s8 field_0x6c0; + /* 0x06C4 */ cXyz field_0x6c4; + /* 0x06D0 */ s16 field_0x6d0; + /* 0x06D2 */ s16 field_0x6d2; + /* 0x06D4 */ s16 field_0x6d4; + /* 0x06D6 */ s16 field_0x6d6; + /* 0x06D8 */ u8 field_0x6d8[0x6da - 0x6d8]; + /* 0x06DA */ s16 field_0x6da; + /* 0x06DC */ s16 field_0x6dc; + /* 0x06DE */ u8 field_0x6de[0x6e4 - 0x6de]; + /* 0x06E4 */ u8 field_0x6e4; + /* 0x06E5 */ u8 field_0x6e5[0x79a - 0x6e5]; + /* 0x079A */ s16 field_0x79a; + /* 0x079C */ u8 field_0x79c; + /* 0x079D */ s8 field_0x79d; + /* 0x079E */ s8 field_0x79e; + /* 0x079F */ s8 field_0x79f; + /* 0x07A0 */ s16 field_0x7a0; + /* 0x07A2 */ s8 field_0x7a2; + /* 0x07A4 */ s16 field_0x7a4; + /* 0x07A6 */ s8 field_0x7a6; + /* 0x07A7 */ s8 field_0x7a7; + /* 0x07A8 */ f32 field_0x7a8; + /* 0x07AC */ dBgS_AcchCir field_0x7ac; /* 0x07EC */ dBgS_Acch field_0x7ec; - /* 0x09C4 */ cXyz field_0x9c4; - /* 0x09D0 */ u8 field_0x9d0[0xa5f]; - /* 0x142F */ u8 field_0x142f; - /* 0x1430 */ u8 field_0x1430; + /* 0x09C4 */ dCcD_Stts field_0x9c4; + /* 0x0A00 */ dCcD_Sph field_0xa00[7]; + /* 0x1288 */ dCcD_Sph field_0x1288; + /* 0x13C0 */ dCcU_AtInfo field_0x13c0; + /* 0x13E4 */ u8 field_0x13e4; + /* 0x13E8 */ u32 field_0x13e8; + /* 0x13EC */ u32 field_0x13ec; + /* 0x13F0 */ u32 field_0x13f0; + /* 0x13F4 */ u32 field_0x13f4; + /* 0x13F8 */ u32 field_0x13f8; + /* 0x13FC */ u32 field_0x13fc; + /* 0x1400 */ u32 field_0x1400; + /* 0x1404 */ u32 field_0x1404; + /* 0x1408 */ u32 field_0x1408; + /* 0x140C */ u32 field_0x140c; + /* 0x1410 */ u32 field_0x1410; + /* 0x1414 */ u32 field_0x1414; + /* 0x1418 */ u32 field_0x1418; + /* 0x141C */ u32 field_0x141c; + /* 0x1420 */ u32 field_0x1420[3]; + /* 0x142C */ u8 field_0x142c; + /* 0x142D */ u8 field_0x142d; + /* 0x142E */ u8 field_0x142e; + /* 0x142F */ s8 field_0x142f; + /* 0x1430 */ s8 field_0x1430; /* 0x1432 */ s16 field_0x1432; - /* 0x1434 */ u8 field_0x1434[0x250]; + /* 0x1434 */ u32 field_0x1434; // Some actor ID + /* 0x1438 */ cXyz field_0x1438; + /* 0x1444 */ cXyz field_0x1444; + /* 0x1450 */ u8 field_0x1450[0x15d0 - 0x1450]; + /* 0x15D0 */ mDoExt_3DlineMat1_c field_0x15d0; + /* 0x160C */ mDoExt_3DlineMat1_c field_0x160c; + /* 0x1648 */ mDoExt_3DlineMat1_c field_0x1648; /* 0x1684 */ f32 field_0x1684; - /* 0x1688 */ u8 field_0x1688[0x16]; + /* 0x1688 */ u8 field_0x1688; + /* 0x168A */ u16 field_0x168a; + /* 0x168C */ f32 field_0x168c; + /* 0x1690 */ f32 field_0x1690; + /* 0x1694 */ u8 field_0x1694[0x169e - 0x1694]; /* 0x169E */ s16 field_0x169e; + /* 0x16A0 */ s16 field_0x16a0; + /* 0x16A4 */ cXyz field_0x16a4; + /* 0x16B0 */ cXyz field_0x16b0; + /* 0x16BC */ cXyz field_0x16bc; + /* 0x16C8 */ cXyz field_0x16c8; + /* 0x16D4 */ cXyz field_0x16d4; + /* 0x16E0 */ cXyz field_0x16e0; + /* 0x16EC */ cXyz field_0x16ec; + /* 0x16F8 */ cXyz field_0x16f8; + /* 0x1704 */ s16 field_0x1704; + /* 0x1708 */ f32 field_0x1708; + /* 0x170C */ f32 field_0x170c; + /* 0x1710 */ f32 field_0x1710; + /* 0x1714 */ f32 field_0x1714; + /* 0x1718 */ f32 field_0x1718; + /* 0x171C */ u8 field_0x171c[0x1720 - 0x171c]; + /* 0x1720 */ s8 field_0x1720; + /* 0x1721 */ s8 field_0x1721; + /* 0x1722 */ s8 field_0x1722; + /* 0x1723 */ u8 field_0x1723[0x17c4 - 0x1723]; + /* 0x17C4 */ u32 field_0x17c4; + /* 0x17D0 */ u32 field_0x17d0[4]; + /* 0x17E0 */ u8 field_0x17e0; + /* 0x17E1 */ u8 field_0x17e1; + /* 0x17E2 */ s16 mWaitRollAngle; + /* 0x17E4 */ u8 field_0x17e4[0x17e8 - 0x17e4]; + /* 0x17E8 */ f32 mSpeedRate; }; #endif /* D_A_E_WB_H */ diff --git a/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp b/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp index 35f960d8888..cd24d86819d 100644 --- a/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp +++ b/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp @@ -58,21 +58,15 @@ extern "C" void _restgpr_28(); /* 80456400-80456404 004A00 0004+00 2/2 0/0 0/0 .sdata2 @781 */ SECTION_SDATA2 static f32 lit_781 = 1.0f; -/* 80456404-80456408 004A04 0004+00 1/1 0/0 0/0 .sdata2 @782 */ -SECTION_SDATA2 static f32 lit_782 = 10000.0f; - -/* 80456408-80456410 004A08 0008+00 2/2 0/0 0/0 .sdata2 @784 */ -SECTION_SDATA2 static f64 lit_784 = 4503599627370496.0 /* cast u32 to float */; - void J3DDrawBuffer::calcZRatio() { mZRatio = (mZFar - mZNear) / (f32)mBufSize; } void J3DDrawBuffer::initialize() { - mDrawType = 0; - mSortType = 0; + mDrawType = DRAW_HEAD; + mSortType = SORT_MAT; mZNear = lit_781; - mZFar = lit_782; + mZFar = 10000.0f; mpZMtx = NULL; mpCallBackPacket = NULL; mBufSize = 0x20; @@ -123,7 +117,7 @@ asm void J3DDrawBuffer::frameInit() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DDrawBuffer::entryMatSort(J3DMatPacket* param_0) { +asm int J3DDrawBuffer::entryMatSort(J3DMatPacket* param_0) { nofralloc #include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryMatSort__13J3DDrawBufferFP12J3DMatPacket.s" } @@ -134,152 +128,130 @@ asm void J3DDrawBuffer::entryMatSort(J3DMatPacket* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DDrawBuffer::entryMatAnmSort(J3DMatPacket* param_0) { +asm int J3DDrawBuffer::entryMatAnmSort(J3DMatPacket* param_0) { nofralloc #include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryMatAnmSort__13J3DDrawBufferFP12J3DMatPacket.s" } #pragma pop +inline f32 J3DCalcZValue(register MtxP m, register Vec v) { + register f32 out; + + // clang-format off + asm { + lfs f1, lit_781(r2) + psq_l f0, 8(v), 0, 0 /* qr0 */ + lfs f2, 0x10(v) + psq_l f4, 32(m), 0, 0 /* qr0 */ + psq_l out, 40(m), 0, 0 /* qr0 */ + ps_merge00 f2, f2, f1 + ps_mul f4, f0, f4 + ps_madd out, f2, out, f4 + ps_sum0 out, out, out, out + } + // clang-format on + + return out; +} + /* 8032529C-803253B4 31FBDC 0118+00 1/0 0/0 0/0 .text entryZSort__13J3DDrawBufferFP12J3DMatPacket */ +// J3DCalcZValue needs work with the asm registers +#ifdef NONMATCHING +int J3DDrawBuffer::entryZSort(J3DMatPacket* i_packet) { + i_packet->drawClear(); + i_packet->getShapePacket()->drawClear(); + + Vec tmp; + tmp.x = mpZMtx[0][3]; + tmp.y = mpZMtx[1][3]; + tmp.z = mpZMtx[2][3]; + + f32 value = -J3DCalcZValue(j3dSys.getViewMtx(), tmp); + + u32 uvar4; + if (mZNear + mZRatio < value) { + if (mZFar - mZRatio > value) { + uvar4 = value / mZRatio; + } else { + uvar4 = mBufSize - 1; + } + } else { + uvar4 = 0; + } + + u32 idx = (mBufSize - 1) - uvar4; + i_packet->setNextPacket(mpBuf[idx]); + mpBuf[idx] = i_packet; + + return 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DDrawBuffer::entryZSort(J3DMatPacket* param_0) { +asm int J3DDrawBuffer::entryZSort(J3DMatPacket* param_0) { nofralloc #include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryZSort__13J3DDrawBufferFP12J3DMatPacket.s" } #pragma pop +#endif /* 803253B4-80325404 31FCF4 0050+00 1/0 0/0 0/0 .text * entryModelSort__13J3DDrawBufferFP12J3DMatPacket */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DDrawBuffer::entryModelSort(J3DMatPacket* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryModelSort__13J3DDrawBufferFP12J3DMatPacket.s" +int J3DDrawBuffer::entryModelSort(J3DMatPacket* i_packet) { + i_packet->drawClear(); + i_packet->getShapePacket()->drawClear(); + + if (mpCallBackPacket != NULL) { + mpCallBackPacket->addChildPacket(i_packet); + return 1; + } + + return 0; } -#pragma pop /* 80325404-80325458 31FD44 0054+00 1/0 0/0 0/0 .text * entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DDrawBuffer::entryInvalidSort(J3DMatPacket* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket.s" -} -#pragma pop +int J3DDrawBuffer::entryInvalidSort(J3DMatPacket* i_packet) { + i_packet->drawClear(); + i_packet->getShapePacket()->drawClear(); -bool J3DDrawBuffer::entryNonSort(J3DMatPacket* pMat) { - pMat->clear(); - pMat->mpShapePacket->clear(); + if (mpCallBackPacket != NULL) { + mpCallBackPacket->addChildPacket(i_packet->getShapePacket()); + return 1; + } - // inlined copy of entryImm, add to start of buf - pMat->mpNextSibling = mpBuf[0]; - mpBuf[0] = pMat; - return true; + return 0; } -bool J3DDrawBuffer::entryImm(J3DPacket* pPacket, u16 index) { - pPacket->mpNextSibling = mpBuf[index]; - mpBuf[index] = pPacket; - return true; +int J3DDrawBuffer::entryNonSort(J3DMatPacket* i_packet) { + i_packet->drawClear(); + i_packet->mpShapePacket->drawClear(); + + i_packet->setNextPacket(mpBuf[0]); + mpBuf[0] = i_packet; + + return 1; } -/* ############################################################################################## */ -/* 803CEBE8-803CEBF4 -00001 000C+00 1/1 0/0 0/0 .data @992 */ -SECTION_DATA static void* lit_992[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryMatSort__13J3DDrawBufferFP12J3DMatPacket, -}; +int J3DDrawBuffer::entryImm(J3DPacket* i_packet, u16 index) { + i_packet->setNextPacket(mpBuf[index]); + mpBuf[index] = i_packet; -/* 803CEBF4-803CEC00 -00001 000C+00 0/1 0/0 0/0 .data @993 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_993[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryMatAnmSort__13J3DDrawBufferFP12J3DMatPacket, -}; -#pragma pop - -/* 803CEC00-803CEC0C -00001 000C+00 0/1 0/0 0/0 .data @994 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_994[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryZSort__13J3DDrawBufferFP12J3DMatPacket, -}; -#pragma pop - -/* 803CEC0C-803CEC18 -00001 000C+00 0/1 0/0 0/0 .data @995 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_995[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryModelSort__13J3DDrawBufferFP12J3DMatPacket, -}; -#pragma pop - -/* 803CEC18-803CEC24 -00001 000C+00 0/1 0/0 0/0 .data @996 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_996[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket, -}; -#pragma pop - -/* 803CEC24-803CEC30 -00001 000C+00 0/1 0/0 0/0 .data @997 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_997[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)entryNonSort__13J3DDrawBufferFP12J3DMatPacket, -}; -#pragma pop + return 1; +} /* 803CEC30-803CEC78 02BD50 0048+00 0/1 1/1 0/0 .data sortFuncTable__13J3DDrawBuffer */ -SECTION_DATA u8 J3DDrawBuffer::sortFuncTable[72] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +SECTION_DATA sortFunc J3DDrawBuffer::sortFuncTable[6] = { + &J3DDrawBuffer::entryMatSort, &J3DDrawBuffer::entryMatAnmSort, &J3DDrawBuffer::entryZSort, + &J3DDrawBuffer::entryModelSort, &J3DDrawBuffer::entryInvalidSort, &J3DDrawBuffer::entryNonSort, }; -/* 803CEC78-803CEC84 -00001 000C+00 0/1 0/0 0/0 .data @998 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_998[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)drawHead__13J3DDrawBufferCFv, -}; -#pragma pop - -/* 803CEC84-803CEC90 -00001 000C+00 0/1 0/0 0/0 .data @999 */ -#pragma push -#pragma force_active on -SECTION_DATA static void* lit_999[3] = { - (void*)NULL, - (void*)0xFFFFFFFF, - (void*)drawTail__13J3DDrawBufferCFv, -}; -#pragma pop - /* 803CEC90-803CECA8 02BDB0 0018+00 1/2 0/0 0/0 .data drawFuncTable__13J3DDrawBuffer */ -SECTION_DATA u8 J3DDrawBuffer::drawFuncTable[24] = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +SECTION_DATA drawFunc J3DDrawBuffer::drawFuncTable[2] = { + &J3DDrawBuffer::drawHead, + &J3DDrawBuffer::drawTail, }; /* 803254AC-80325500 31FDEC 0054+00 0/0 2/2 0/0 .text draw__13J3DDrawBufferCFv */ @@ -293,16 +265,31 @@ asm void J3DDrawBuffer::draw() const { #pragma pop /* 80325500-80325578 31FE40 0078+00 1/0 0/0 0/0 .text drawHead__13J3DDrawBufferCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DDrawBuffer::drawHead() const { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawHead__13J3DDrawBufferCFv.s" +void J3DDrawBuffer::drawHead() const { + u32 size = mBufSize; + J3DPacket** buf = mpBuf; + + for (u32 i = 0; i < size; i++) { + for (J3DPacket* packet = buf[i]; packet != NULL; packet = packet->getNextPacket()) { + packet->draw(); + } + } } -#pragma pop /* 80325578-803255F0 31FEB8 0078+00 1/0 0/0 0/0 .text drawTail__13J3DDrawBufferCFv */ +// flipped regs +#ifdef NONMATCHING +void J3DDrawBuffer::drawTail() const { + int i = mBufSize - 1; + J3DPacket** buf = mpBuf; + + for (; i >= 0; i--) { + for (J3DPacket* packet = buf[i]; packet != NULL; packet = packet->getNextPacket()) { + packet->draw(); + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -311,22 +298,8 @@ asm void J3DDrawBuffer::drawTail() const { #include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s" } #pragma pop - -/* 803255F0-803256C4 31FF30 00D4+00 0/0 1/0 0/0 .text __sinit_J3DDrawBuffer_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_J3DDrawBuffer_cpp() { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x803255F0, __sinit_J3DDrawBuffer_cpp); -#pragma pop +#endif /* ############################################################################################## */ /* 804515E0-804515E8 000AE0 0004+04 0/0 1/1 0/0 .sbss entryNum__13J3DDrawBuffer */ -u8 J3DDrawBuffer::entryNum[4 + 4 /* padding */]; +int J3DDrawBuffer::entryNum; diff --git a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp index 839a9492538..86d52ff500b 100644 --- a/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp +++ b/libs/JSystem/J3DGraphBase/J3DShapeMtx.cpp @@ -719,7 +719,7 @@ u32 J3DShapeMtxMultiConcatView::getUseMtxNum() const { /* 8031469C-803146AC 30EFDC 0010+00 1/0 0/0 0/0 .text * getUseMtxIndex__26J3DShapeMtxMultiConcatViewCFUs */ u32 J3DShapeMtxMultiConcatView::getUseMtxIndex(u16 no) const { - return mUseMtxIndex[no]; + return mUseMtxIndexTable[no]; } /* 803146AC-803146B0 30EFEC 0004+00 1/0 0/0 0/0 .text @@ -752,7 +752,7 @@ u32 J3DShapeMtxMulti::getUseMtxNum() const { /* 80314720-80314730 30F060 0010+00 1/0 0/0 0/0 .text getUseMtxIndex__16J3DShapeMtxMultiCFUs */ u32 J3DShapeMtxMulti::getUseMtxIndex(u16 no) const { - return mUseMtxIndex[no]; + return mUseMtxIndexTable[no]; } /* 80314730-8031478C 30F070 005C+00 1/0 0/0 0/0 .text __dt__21J3DShapeMtxConcatViewFv */ diff --git a/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp b/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp index 1f872b32289..6a21b67580f 100644 --- a/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DShapeFactory.cpp @@ -4,36 +4,13 @@ // #include "JSystem/J3DGraphLoader/J3DShapeFactory.h" +#include "JSystem/J3DGraphBase/J3DShape.h" +#include "JSystem/JKernel/JKRHeap.h" +#include "JSystem/JSupport/JSupport.h" #include "dol2asm.h" +#include "dolphin/os/OS.h" #include "dolphin/types.h" -// -// Types: -// - -struct _GXVtxDescList {}; - -struct J3DShapeBlock {}; - -struct J3DShapeFactory { - /* 80337350 */ J3DShapeFactory(J3DShapeBlock const&); - /* 80337400 */ void create(int, u32, _GXVtxDescList*); - /* 803375BC */ void newShapeMtx(u32, int, int) const; - /* 8033784C */ void newShapeDraw(int, int) const; - /* 803378D8 */ void allocVcdVatCmdBuffer(u32); - /* 80337944 */ void calcSize(int, u32); - /* 803379D8 */ void calcSizeVcdVatCmdBuffer(u32); - /* 803379E8 */ void calcSizeShapeMtx(u32, int, int) const; -}; - -struct J3DShapeDraw { - /* 80314ABC */ J3DShapeDraw(u8 const*, u32); -}; - -struct J3DShape { - /* 80314B48 */ void initialize(); -}; - // // Forward References: // @@ -56,14 +33,15 @@ extern "C" extern char const* const J3DShapeFactory__stringBase0; // External References: // -extern "C" void OSReport(); +extern "C" J3DShapeInitData* func_80336764(const void*, + const void*); // JSUConvertOffsetToPtr +extern "C" u16* func_8033677C(const void*, const void*); // JSUConvertOffsetToPtr + extern "C" void* __nw__FUl(); extern "C" void* __nwa__FUl(); extern "C" void* __nwa__FUli(); extern "C" void __ct__12J3DShapeDrawFPCUcUl(); extern "C" void initialize__8J3DShapeFv(); -extern "C" void func_80336764(void* _this, void const*, u32); -extern "C" void func_8033677C(void* _this, void const*, u32); extern "C" void _savegpr_26(); extern "C" void _savegpr_29(); extern "C" void _restgpr_26(); @@ -81,141 +59,203 @@ extern "C" extern void* __vt__8J3DShape[6]; // /* 80337350-80337400 331C90 00B0+00 0/0 2/2 0/0 .text __ct__15J3DShapeFactoryFRC13J3DShapeBlock */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DShapeFactory::J3DShapeFactory(J3DShapeBlock const& param_0) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/__ct__15J3DShapeFactoryFRC13J3DShapeBlock.s" +J3DShapeFactory::J3DShapeFactory(J3DShapeBlock const& block) { + // mShapeInitData = JSUConvertOffsetToPtr(&block, block.mShapeInitData); + mShapeInitData = func_80336764(&block, block.mShapeInitData); + // mIndexTable = JSUConvertOffsetToPtr(&block, block.mIndexTable); + mIndexTable = func_8033677C(&block, block.mIndexTable); + mVtxDescList = JSUConvertOffsetToPtr(&block, block.mVtxDescList); + // mMtxTable = JSUConvertOffsetToPtr(&block, block.mMtxTable); + mMtxTable = func_8033677C(&block, block.mMtxTable); + mDisplayListData = JSUConvertOffsetToPtr(&block, block.mDisplayListData); + mMtxInitData = JSUConvertOffsetToPtr(&block, block.mMtxInitData); + mDrawInitData = JSUConvertOffsetToPtr(&block, block.mDrawInitData); + mVcdVatCmdBuffer = NULL; } -#pragma pop /* 80337400-803375BC 331D40 01BC+00 0/0 1/1 0/0 .text * create__15J3DShapeFactoryFiUlP14_GXVtxDescList */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::create(int param_0, u32 param_1, _GXVtxDescList* param_2) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/create__15J3DShapeFactoryFiUlP14_GXVtxDescList.s" -} -#pragma pop +J3DShape* J3DShapeFactory::create(int no, u32 flag, GXVtxDescList* vtxDesc) { + J3DShape* shape = new J3DShape; + shape->mMtxGroupNum = getMtxGroupNum(no); + shape->mRadius = getRadius(no); + shape->mVtxDesc = getVtxDescList(no); + shape->mShapeMtx = new J3DShapeMtx*[shape->mMtxGroupNum]; + shape->mShapeDraw = new J3DShapeDraw*[shape->mMtxGroupNum]; + shape->mMin = getMin(no); + shape->mMax = getMax(no); + shape->mVcdVatCmd = mVcdVatCmdBuffer + no * J3DShape::kVcdVatDLSize; -/* ############################################################################################## */ -/* 803A2100-803A2100 02E760 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_803A2100 = - "WRONG SHAPE MATRIX TYPE (J3DModelInit.cpp)\n"; -/* @stringBase0 padding */ -SECTION_DEAD static char const* const pad_803A212C = "\0\0\0"; -#pragma pop + for (s32 i = 0; i < shape->mMtxGroupNum; i++) { + shape->mShapeMtx[i] = newShapeMtx(flag, no, i); + shape->mShapeDraw[i] = newShapeDraw(no, i); + } + + shape->mIndex = no; + return shape; +} + +static inline u32 getMdlDataFlag_MtxLoadType(u32 flag) { + return flag & 0x10; +} + +enum { + J3DMdlDataFlag_ConcatView = 0x10, +}; + +enum { + J3DShapeMtxType_Mtx = 0x00, + J3DShapeMtxType_BBoard = 0x01, + J3DShapeMtxType_YBBoard = 0x02, + J3DShapeMtxType_Multi = 0x03, +}; /* 803375BC-8033784C 331EFC 0290+00 1/1 0/0 0/0 .text newShapeMtx__15J3DShapeFactoryCFUlii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::newShapeMtx(u32 param_0, int param_1, int param_2) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeMtx__15J3DShapeFactoryCFUlii.s" +J3DShapeMtx* J3DShapeFactory::newShapeMtx(u32 flag, int shapeNo, int mtxGroupNo) const { + J3DShapeMtx* ret = NULL; + const J3DShapeInitData& shapeInitData = mShapeInitData[mIndexTable[shapeNo]]; + const J3DShapeMtxInitData& mtxInitData = + (&mMtxInitData[shapeInitData.mMtxInitDataIndex])[mtxGroupNo]; + + switch (getMdlDataFlag_MtxLoadType(flag)) { + case J3DMdlDataFlag_ConcatView: + switch (shapeInitData.mShapeMtxType) { + case J3DShapeMtxType_Mtx: + ret = new J3DShapeMtxConcatView(mtxInitData.mUseMtxIndex); + break; + case J3DShapeMtxType_BBoard: + ret = new J3DShapeMtxBBoardConcatView(mtxInitData.mUseMtxIndex); + break; + case J3DShapeMtxType_YBBoard: + ret = new J3DShapeMtxYBBoardConcatView(mtxInitData.mUseMtxIndex); + break; + case J3DShapeMtxType_Multi: + ret = new J3DShapeMtxMultiConcatView(mtxInitData.mUseMtxIndex, mtxInitData.mUseMtxCount, + &mMtxTable[mtxInitData.mFirstUseMtxIndex]); + break; + default: + OSReport("WRONG SHAPE MATRIX TYPE (J3DModelInit.cpp)\n"); + break; + } + break; + + case 0: + default: + switch (shapeInitData.mShapeMtxType) { + case J3DShapeMtxType_Mtx: + case J3DShapeMtxType_BBoard: + case J3DShapeMtxType_YBBoard: + ret = new J3DShapeMtx(mtxInitData.mUseMtxIndex); + break; + case J3DShapeMtxType_Multi: + ret = new J3DShapeMtxMulti(mtxInitData.mUseMtxIndex, mtxInitData.mUseMtxCount, + &mMtxTable[mtxInitData.mFirstUseMtxIndex]); + break; + default: + OSReport("WRONG SHAPE MATRIX TYPE (J3DModelInit.cpp)\n"); + break; + } + break; + } + + return ret; } -#pragma pop /* 8033784C-803378D8 33218C 008C+00 1/1 0/0 0/0 .text newShapeDraw__15J3DShapeFactoryCFii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::newShapeDraw(int param_0, int param_1) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeDraw__15J3DShapeFactoryCFii.s" +J3DShapeDraw* J3DShapeFactory::newShapeDraw(int shapeNo, int mtxGroupNo) const { + const J3DShapeInitData& shapeInitData = mShapeInitData[mIndexTable[shapeNo]]; + const J3DShapeDrawInitData& drawInitData = + (&mDrawInitData[shapeInitData.mDrawInitDataIndex])[mtxGroupNo]; + return new J3DShapeDraw(&mDisplayListData[drawInitData.mDisplayListIndex], + drawInitData.mDisplayListSize); } -#pragma pop /* 803378D8-80337944 332218 006C+00 0/0 1/1 0/0 .text allocVcdVatCmdBuffer__15J3DShapeFactoryFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::allocVcdVatCmdBuffer(u32 param_0) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/allocVcdVatCmdBuffer__15J3DShapeFactoryFUl.s" +void J3DShapeFactory::allocVcdVatCmdBuffer(u32 count) { + mVcdVatCmdBuffer = new (0x20) u8[J3DShape::kVcdVatDLSize * count]; + for (u32 i = 0; i < (J3DShape::kVcdVatDLSize * count) / 4; i++) + ((u32*)mVcdVatCmdBuffer)[i] = 0; } -#pragma pop /* 80337944-803379D8 332284 0094+00 0/0 1/1 0/0 .text calcSize__15J3DShapeFactoryFiUl */ +#ifdef NONMATCHING +s32 J3DShapeFactory::calcSize(int shapeNo, u32 flag) { + s32 size = 0x68; + + // regalloc + u32 mtxGroupNo = getMtxGroupNum(shapeNo); + size += mtxGroupNo * 4; + size += mtxGroupNo * 4; + + for (u32 i = 0; i < mtxGroupNo; i++) { + s32 shapeMtxSize = calcSizeShapeMtx(flag, shapeNo, i); + size += shapeMtxSize; + size += 0x0C; + } + + return size; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void J3DShapeFactory::calcSize(int param_0, u32 param_1) { +asm s32 J3DShapeFactory::calcSize(int param_0, u32 param_1) { nofralloc #include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSize__15J3DShapeFactoryFiUl.s" } #pragma pop +#endif /* 803379D8-803379E8 332318 0010+00 0/0 1/1 0/0 .text * calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::calcSizeVcdVatCmdBuffer(u32 param_0) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s" +s32 J3DShapeFactory::calcSizeVcdVatCmdBuffer(u32 count) { + return ALIGN_NEXT(count * J3DShape::kVcdVatDLSize, 0x20); } -#pragma pop /* 803379E8-80337AE0 332328 00F8+00 1/1 0/0 0/0 .text calcSizeShapeMtx__15J3DShapeFactoryCFUlii */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DShapeFactory::calcSizeShapeMtx(u32 param_0, int param_1, int param_2) const { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeShapeMtx__15J3DShapeFactoryCFUlii.s" -} -#pragma pop +s32 J3DShapeFactory::calcSizeShapeMtx(u32 flag, int shapeNo, int mtxGroupNo) const { + const J3DShapeInitData& shapeInitData = mShapeInitData[mIndexTable[shapeNo]]; + u32 ret = 0; -/* 80337AE0-80337AF8 332420 0018+00 1/1 0/0 0/0 .text - * JSUConvertOffsetToPtr<20J3DShapeDrawInitData>__FPCvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void func_80337AE0(void* _this, void const* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AE0.s" -} -#pragma pop + u32 mtxLoadType = getMdlDataFlag_MtxLoadType(flag); + switch (mtxLoadType) { + case J3DMdlDataFlag_ConcatView: + switch (shapeInitData.mShapeMtxType) { + case J3DShapeMtxType_Mtx: + ret = 0x08; + break; + case J3DShapeMtxType_BBoard: + ret = 0x08; + break; + case J3DShapeMtxType_YBBoard: + ret = 0x08; + break; + case J3DShapeMtxType_Multi: + ret = 0x10; + break; + default: + OSReport("WRONG SHAPE MATRIX TYPE (J3DModelInit.cpp)\n"); + } + break; -/* 80337AF8-80337B10 332438 0018+00 1/1 0/0 0/0 .text - * JSUConvertOffsetToPtr<19J3DShapeMtxInitData>__FPCvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void func_80337AF8(void* _this, void const* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AF8.s" -} -#pragma pop + case 0: + default: + switch (shapeInitData.mShapeMtxType) { + case J3DShapeMtxType_Mtx: + case J3DShapeMtxType_BBoard: + case J3DShapeMtxType_YBBoard: + ret = 0x08; + break; + case J3DShapeMtxType_Multi: + ret = 0x10; + break; + default: + OSReport("WRONG SHAPE MATRIX TYPE (J3DModelInit.cpp)\n"); + } + break; + } -/* 80337B10-80337B28 332450 0018+00 1/1 0/0 0/0 .text JSUConvertOffsetToPtr__FPCvUl - */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void func_80337B10(void* _this, void const* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B10.s" -} -#pragma pop - -/* 80337B28-80337B40 332468 0018+00 1/1 0/0 0/0 .text - * JSUConvertOffsetToPtr<14_GXVtxDescList>__FPCvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void func_80337B28(void* _this, void const* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B28.s" -} -#pragma pop - -/* 803A2100-803A2100 02E760 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ + return ret; +} \ No newline at end of file diff --git a/rel/d/a/d_a_boomerang/d_a_boomerang.cpp b/rel/d/a/d_a_boomerang/d_a_boomerang.cpp index af0f885222c..5bd6f439f4c 100644 --- a/rel/d/a/d_a_boomerang/d_a_boomerang.cpp +++ b/rel/d/a/d_a_boomerang/d_a_boomerang.cpp @@ -346,7 +346,7 @@ extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; extern "C" f32 mRoofY__11fopAcM_rc_c; extern "C" f32 mWaterY__11fopAcM_wt_c[1 + 1 /* padding */]; -extern "C" extern u8 struct_8045101C[4]; +extern "C" extern u8 m_dropAngleY__20daPy_boomerangMove_c[4]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; // diff --git a/rel/d/a/e/d_a_e_wb/d_a_e_wb.cpp b/rel/d/a/e/d_a_e_wb/d_a_e_wb.cpp index 77a356fabe3..035d95a1c5f 100644 --- a/rel/d/a/e/d_a_e_wb/d_a_e_wb.cpp +++ b/rel/d/a/e/d_a_e_wb/d_a_e_wb.cpp @@ -3,6 +3,7 @@ // Translation Unit: d_a_e_wb // + #include "rel/d/a/e/d_a_e_wb/d_a_e_wb.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -15,24 +16,6 @@ namespace std { /* 807E2350 */ void fabsf(f32); }; -struct mDoMtx_stack_c { - /* 8000CD9C */ void transM(f32, f32, f32); - /* 8000CE38 */ void scaleM(f32, f32, f32); - /* 807E2858 */ void multVec(Vec const*, Vec*); - /* 807E288C */ void YrotS(s16); - - static u8 now[48]; -}; - -struct mDoGph_gInf_c { - /* 80007FD8 */ void fadeOut(f32, _GXColor&); - /* 807DFAB4 */ void fadeIn(f32, _GXColor&); -}; - -struct mDoCPd_c { - static u8 m_cpadInfo[256]; -}; - struct himo_s { /* 807E1CCC */ ~himo_s(); /* 807E1D2C */ himo_s(); @@ -52,71 +35,10 @@ struct daE_WB_HIO_c { /* 807E20DC */ ~daE_WB_HIO_c(); }; -struct daAlink_c { - /* 800ED0D4 */ void getHorseReinHandPos(cXyz*, cXyz*); - /* 800ED1F0 */ void checkHorseNotGrab() const; -}; - -struct dVibration_c { - /* 8006FA24 */ void StartShock(int, int, cXyz); - /* 8006FB10 */ void StartQuake(int, int, cXyz); - /* 8006FD94 */ void StopQuake(int); -}; - -struct dPa_levelEcallBack {}; - -struct dPa_control_c { - struct level_c { - /* 8004B918 */ void getEmitter(u32); - }; - - /* 8004C218 */ void setHitMark(u16, fopAc_ac_c*, cXyz const*, csXyz const*, cXyz const*, u32); - /* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, - cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*, - _GXColor const*, cXyz const*, f32); - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); -}; - struct dMsgObject_c { /* 8023822C */ void getStatus(); }; -struct dEvt_control_c { - /* 80042468 */ void reset(); - /* 80042914 */ void setSkipProc(void*, int (*)(void*, int), int); - /* 807DFAD8 */ void checkSkipEdge(); - /* 807E2908 */ void startCheckSkipEdge(void*); -}; - -struct dEvent_manager_c { - /* 80047B1C */ void getMyStaffId(char const*, fopAc_ac_c*, int); - /* 800480EC */ void getMySubstanceP(int, char const*, int); - /* 8004817C */ void cutEnd(int); -}; - -struct dComIfG_play_c { - /* 8002C97C */ void getLayerNo(int); -}; - -struct dCcU_AtInfo {}; - -struct dCamera_c { - /* 801614AC */ void Start(); - /* 801614D0 */ void Stop(); - /* 8016300C */ void SetTrimSize(s32); - /* 80180B40 */ void Set(cXyz, cXyz, s16, f32); - /* 80180BA0 */ void Reset(cXyz, cXyz, f32, s16); - /* 80180C18 */ void Reset(cXyz, cXyz); -}; - -struct camera_class {}; - -struct cCcS { - /* 80264BA8 */ void Set(cCcD_Obj*); -}; - // // Forward References: // @@ -211,8 +133,8 @@ extern "C" void changeDemoParam2__9daPy_py_cFs(); extern "C" void fabsf__3stdFf(); extern "C" void __ct__4cXyzFRC4cXyz(); extern "C" static void cMtx_YrotS__FPA4_fs(); -extern "C" static void fopAcM_searchPlayerAngleY__FPC10fopAc_ac_c(); -extern "C" static void dComIfGs_onEventBit__FUs(); +extern "C" static void fopAcM_searchPlayerAngleY__FPC10fopAc_ac_c(fopAc_ac_c const* param_0); +extern "C" static void dComIfGs_onEventBit__FUs(u16); extern "C" static void Z2GetAudioMgr__Fv(); extern "C" void cancelOriginalDemo__9daPy_py_cFv(); extern "C" static void dComIfGp_event_reset__Fv(); @@ -227,14 +149,15 @@ extern "C" void __ct__4cXyzFv(); extern "C" static void fopAcM_SearchByName__Fs(); extern "C" static void fopAcM_SearchByID__FUi(unsigned int); extern "C" static void dComIfGp_getHorseActor__Fv(); -extern "C" static void dComIfGp_getPlayer__Fi(); -extern "C" static void dComIfGp_getCamera__Fi(); +extern "C" static void dComIfGp_getPlayer__Fi(int); +extern "C" static void dComIfGp_getCamera__Fi(int); extern "C" static void dComIfGp_getPlayerCameraID__Fi(); extern "C" static void dMsgObject_isTalkNowCheck__Fv(); extern "C" void abs__4cXyzCFv(); extern "C" static void cMtx_XrotM__FPA4_fs(); extern "C" static void JMAFastSqrt__Ff(); -extern "C" static void dComIfGp_particle_set__FUlUsPC4cXyzPC5csXyzPC4cXyz(); +extern "C" static void dComIfGp_particle_set__FUlUsPC4cXyzPC5csXyzPC4cXyz(u32 param_0, u16 param_1, cXyz const* param_2, + csXyz const* param_3, cXyz const* param_4); extern "C" void cancelOriginalDemo__9daHorse_cFv(); extern "C" void __ct__10JAISoundIDFUl(u32* this_replacement, u32 param_0); extern "C" static void dComIfGp_getVibration__Fv(); @@ -242,8 +165,8 @@ extern "C" void __ct__4cXyzFfff(); extern "C" void onDemoJumpDistance__9daHorse_cFff(); extern "C" void __as__4cXyzFRC4cXyz(); extern "C" void __apl__4cXyzFRC3Vec(); -extern "C" void multVec__14mDoMtx_stack_cFPC3VecP3Vec(); -extern "C" void YrotS__14mDoMtx_stack_cFs(); +extern "C" void multVec__14mDoMtx_stack_cFPC3VecP3Vec(Vec const* param_0, Vec* param_1); +extern "C" void YrotS__14mDoMtx_stack_cFs(s16); extern "C" void changeDemoPos0__9daHorse_cFPC4cXyz(); extern "C" void changeDemoMode__9daHorse_cFUli(); extern "C" void setHorsePosAndAngle__9daHorse_cFPC4cXyzs(); @@ -437,11 +360,9 @@ extern "C" extern void* __vt__14cCcD_ShapeAttr[22]; extern "C" extern void* __vt__9cCcD_Stts[8]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32]; extern "C" u8 mCurrentMtx__6J3DSys[48]; extern "C" u8 sincosTable___5JMath[65536]; -extern "C" extern u32 g_blackColor; //extern "C" extern void* calc_mtx[1 + 1 /* padding */]; extern "C" extern u8 struct_80450C98[4]; extern "C" f32 mGroundY__11fopAcM_gc_c; @@ -4679,7 +4600,7 @@ static asm void cMtx_YrotS(f32 (*param_0)[4], s16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void fopAcM_searchPlayerAngleY(fopAc_ac_c const* param_0) { +static asm void fopAcM_searchPlayerAngleY__FPC10fopAc_ac_c(fopAc_ac_c const* param_0) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/fopAcM_searchPlayerAngleY__FPC10fopAc_ac_c.s" } @@ -4689,7 +4610,7 @@ static asm void fopAcM_searchPlayerAngleY(fopAc_ac_c const* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGs_onEventBit(u16 param_0) { +static asm void dComIfGs_onEventBit__FUs(u16 param_0) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/dComIfGs_onEventBit__FUs.s" } @@ -4740,7 +4661,7 @@ asm void daPy_py_c::changeOriginalDemo() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void daPy_getPlayerActorClass() { +static asm void daPy_getPlayerActorClass__Fv() { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/daPy_getPlayerActorClass__Fv.s" } @@ -4841,7 +4762,7 @@ static asm void dComIfGp_getHorseActor() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getPlayer(int param_0) { +static asm void dComIfGp_getPlayer__Fi(int param_0) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/dComIfGp_getPlayer__Fi.s" } @@ -4851,7 +4772,7 @@ static asm void dComIfGp_getPlayer(int param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getCamera(int param_0) { +static asm void dComIfGp_getCamera__Fi(int param_0) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/dComIfGp_getCamera__Fi.s" } @@ -4913,7 +4834,7 @@ static asm void JMAFastSqrt(f32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_particle_set(u32 param_0, u16 param_1, cXyz const* param_2, +static asm void dComIfGp_particle_set__FUlUsPC4cXyzPC5csXyzPC4cXyz(u32 param_0, u16 param_1, cXyz const* param_2, csXyz const* param_3, cXyz const* param_4) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/dComIfGp_particle_set__FUlUsPC4cXyzPC5csXyzPC4cXyz.s" @@ -4939,7 +4860,7 @@ extern "C" void __ct__10JAISoundIDFUl(u32* this_replacement, u32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dComIfGp_getVibration() { +static asm void dComIfGp_getVibration__Fv() { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/dComIfGp_getVibration__Fv.s" } @@ -4993,7 +4914,7 @@ extern "C" asm void __apl__4cXyzFRC3Vec() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoMtx_stack_c::multVec(Vec const* param_0, Vec* param_1) { +asm void multVec__14mDoMtx_stack_cFPC3VecP3Vec(Vec const* param_0, Vec* param_1) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/multVec__14mDoMtx_stack_cFPC3VecP3Vec.s" } @@ -5003,7 +4924,7 @@ asm void mDoMtx_stack_c::multVec(Vec const* param_0, Vec* param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void mDoMtx_stack_c::YrotS(s16 param_0) { +asm void YrotS__14mDoMtx_stack_cFs(s16 param_0) { nofralloc #include "asm/rel/d/a/e/d_a_e_wb/d_a_e_wb/YrotS__14mDoMtx_stack_cFs.s" } diff --git a/src/d/a/d_a_alink.cpp b/src/d/a/d_a_alink.cpp index ba0a9133399..6183ed4c53b 100644 --- a/src/d/a/d_a_alink.cpp +++ b/src/d/a/d_a_alink.cpp @@ -33,8 +33,6 @@ // Types: // -struct fopEn_enemy_c {}; - struct daTagMist_c { /* 80031CF0 */ void getPlayerNo(); }; @@ -3094,7 +3092,7 @@ extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */]; extern "C" extern u8 struct_80450FB8[4]; extern "C" extern u8 struct_80450FBC[4]; extern "C" u8 m_midnaActor__9daPy_py_c[4]; -extern "C" extern u8 struct_8045101C[4]; +extern "C" extern u8 m_dropAngleY__20daPy_boomerangMove_c[4]; extern "C" u8 Zero__5csXyz[4]; extern "C" u8 mLinkPtr__14Z2CreatureLink[4 + 4 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; diff --git a/src/d/a/d_a_alink_boom.inc b/src/d/a/d_a_alink_boom.inc index 73e3a79c578..a487ce03fe8 100644 --- a/src/d/a/d_a_alink_boom.inc +++ b/src/d/a/d_a_alink_boom.inc @@ -1,3 +1,5 @@ +#include "rel/d/a/d_a_boomerang/d_a_boomerang.h" + /* 800DFFE0-800E0010 0DA920 0030+00 0/0 0/0 1/1 .text checkBoomerangLockAccept__9daAlink_cFv */ BOOL daAlink_c::checkBoomerangLockAccept() { return mSight.getDrawFlg() && i_dComIfGp_checkPlayerStatus0(0, 0x80000); @@ -9,9 +11,9 @@ BOOL daAlink_c::checkBoomerangLockAccept() { f32 daAlink_c::getBoomSpeed() { f32 speed; if (checkBoomerangChargeEndWait()) { - speed = daAlinkHIO_boom_c0::m.field_0x38; + speed = daAlinkHIO_boom_c0::m.mFlySpeed2; } else { - speed = daAlinkHIO_boom_c0::m.field_0x34; + speed = daAlinkHIO_boom_c0::m.mFlySpeed; } if (i_checkModeFlg(0x400) && mRideAcKeep.getActor() != NULL && mSpeedF > FLOAT_LABEL(lit_6108)) { @@ -39,22 +41,22 @@ f32 daAlink_c::getBoomCatchSpeed() const { /* 800E00C0-800E011C 0DAA00 005C+00 1/1 0/0 1/1 .text getBoomFlyMax__9daAlink_cCFv */ f32 daAlink_c::getBoomFlyMax() const { if (i_checkModeFlg(0x400) && !checkCanoeRide()) { - return daAlinkHIO_boom_c0::m.field_0x40; + return daAlinkHIO_boom_c0::m.mHorsebackFlyDistMax; } else { - return daAlinkHIO_boom_c0::m.field_0x3c; + return daAlinkHIO_boom_c0::m.mFlyDistMax; } } /* 800E011C-800E0190 0DAA5C 0074+00 1/1 0/0 2/2 .text getBoomLockMax__9daAlink_cFv */ f32 daAlink_c::getBoomLockMax() { - f32 max = getBoomFlyMax(); + f32 fly_max = getBoomFlyMax(); if (checkBossBabaRoom()) { return lit_12475; - } else if (daAlinkHIO_boom_c0::m.field_0x44 > max) { - return daAlinkHIO_boom_c0::m.field_0x44; + } else if (daAlinkHIO_boom_c0::m.mLockDistMax > fly_max) { + return daAlinkHIO_boom_c0::m.mLockDistMax; } else { - return max; + return fly_max; } } @@ -94,21 +96,25 @@ fopAc_ac_c* daAlink_c::getBoomerangActor() { } /* 800E0244-800E02B8 0DAB84 0074+00 0/0 1/1 0/0 .text checkBoomerangChargeEnd__9daAlink_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm bool daAlink_c::checkBoomerangChargeEnd() { - nofralloc -#include "asm/d/a/d_a_alink/checkBoomerangChargeEnd__9daAlink_cFv.s" +bool daAlink_c::checkBoomerangChargeEnd() { + if (checkBoomerangChargeEndWait()) { + return true; + } + + daBoomerang_c* boomerang = (daBoomerang_c*)getBoomerangActor(); + if (boomerang != NULL && boomerang->checkCharge()) { + return true; + } + + return false; } -#pragma pop /* 800E02B8-800E03D0 0DABF8 0118+00 0/0 1/1 0/0 .text * checkBoomerangCarry__9daAlink_cFP10fopAc_ac_c */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daAlink_c::checkBoomerangCarry(fopAc_ac_c* param_0) { +asm BOOL daAlink_c::checkBoomerangCarry(fopAc_ac_c* param_0) { nofralloc #include "asm/d/a/d_a_alink/checkBoomerangCarry__9daAlink_cFP10fopAc_ac_c.s" } @@ -124,7 +130,7 @@ void daAlink_c::initBoomerangUpperAnimeSpeed(int param_0) { mFrameCtrl2[2].setFrame(tmp); getNowAnmPackUpper(UPPER_NOW)->setFrame(tmp); } else { - mFrameCtrl2[2].setRate(daAlinkHIO_boom_c0::m.field_0x2c); + mFrameCtrl2[2].setRate(daAlinkHIO_boom_c0::m.mIdleAnmSpeed); } } } @@ -136,14 +142,9 @@ BOOL daAlink_c::checkBoomerangAnime() const { } /* 800E04AC-800E04E8 0DADEC 003C+00 13/13 0/0 0/0 .text checkBoomerangThrowAnime__9daAlink_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm BOOL daAlink_c::checkBoomerangThrowAnime() const { - nofralloc -#include "asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s" +BOOL daAlink_c::checkBoomerangThrowAnime() const { + return (mEquipItem == BOOMERANG || i_checkNoResetFlg1(FLG1_UNK_2) || mEquipItem == 0x102) && checkUpperAnime(0x53); } -#pragma pop /* 800E04E8-800E055C 0DAE28 0074+00 1/1 0/0 0/0 .text setBoomerangReadyQuake__9daAlink_cFv */ #pragma push diff --git a/src/d/a/d_a_horse_static.cpp b/src/d/a/d_a_horse_static.cpp index 8f7a8a18e9c..9e64804270a 100644 --- a/src/d/a/d_a_horse_static.cpp +++ b/src/d/a/d_a_horse_static.cpp @@ -12,13 +12,13 @@ BOOL e_wb_class::checkWait() { } void e_wb_class::setPlayerRideNow() { - field_0x690 = 0x67; + mActionID = ACT_PL_RIDE_NOW; field_0x5b4 = 0; field_0x6be |= 3; } void e_wb_class::setPlayerRide() { - field_0x690 = 0x65; + mActionID = ACT_PL_RIDE; field_0x5b4 = 0; field_0x6be |= 3; @@ -26,28 +26,29 @@ void e_wb_class::setPlayerRide() { } void e_wb_class::getOff() { - if (!checkDownDamage() || field_0x690 == 0x67) { - field_0x690 = 0; + if (!checkDownDamage() || mActionID == ACT_PL_RIDE_NOW) { + mActionID = 0; } else { field_0x692 = 0; } + field_0x5b4 = 0; - field_0x6be &= 0xfffc; + field_0x6be &= ~3; mZ2Ride.setLinkRiding(false); } BOOL e_wb_class::checkDownDamage() { - return field_0x690 != 0x65 && field_0x690 != 0x66 && field_0x690 != 0x15; + return mActionID != ACT_PL_RIDE && mActionID != 0x66 && mActionID != ACT_S_DAMAGE; } u8 e_wb_class::checkNormalRideMode() const { - return field_0x690 != 0x66 || field_0x5b4 < 1; + return mActionID != 0x66 || field_0x5b4 < 1; } void e_wb_class::setRunRideMode() { - if (field_0x690 == 0x65) { + if (mActionID == ACT_PL_RIDE) { field_0x5b4 = 0; - field_0x690 = 0x15; + mActionID = ACT_S_DAMAGE; field_0x692 = 0x65; } } diff --git a/src/d/a/d_a_itembase.cpp b/src/d/a/d_a_itembase.cpp index 4a589f4cfc0..9811545c172 100644 --- a/src/d/a/d_a_itembase.cpp +++ b/src/d/a/d_a_itembase.cpp @@ -99,14 +99,14 @@ int daItemBase_c::CreateItemHeap(char const* arcName, s16 bmdName, s16 btkName, if (brkName > 0) { J3DAnmTevRegKey* pbrk = (J3DAnmTevRegKey*)dComIfG_getObjectRes(arcName, brkName); s8 tevFrm = getTevFrm(); - int tmp = 1; + int anmPlay = 1; if (tevFrm != -1) { - tmp = 0; + anmPlay = 0; } mpBrkAnm = new mDoExt_brkAnm(); - if (mpBrkAnm == NULL || !mpBrkAnm->init(modelData, pbrk, tmp, 2, 1.0f, 0, -1)) { + if (mpBrkAnm == NULL || !mpBrkAnm->init(modelData, pbrk, anmPlay, 2, 1.0f, 0, -1)) { return 0; } } @@ -176,8 +176,7 @@ void daItemBase_c::setShadow() { if (!chkFlag(0x10)) { if (getShadowSize() != 0.0f) { - dComIfGd_setSimpleShadow(¤t.pos, mAcch.GetGroundH(), scale, - mAcch.m_gnd, 0, 1.0f, + dComIfGd_setSimpleShadow(¤t.pos, mAcch.GetGroundH(), scale, mAcch.m_gnd, 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); } } else { @@ -186,10 +185,9 @@ void daItemBase_c::setShadow() { shadowSize = 150.0f; } - field_0x91c = - dComIfGd_setShadow(field_0x91c, 3, mpModel, ¤t.pos, shadowSize, 0.0f, - current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, - &mTevStr, 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); + field_0x91c = dComIfGd_setShadow(field_0x91c, 3, mpModel, ¤t.pos, shadowSize, 0.0f, + current.pos.y, mAcch.GetGroundH(), mAcch.m_gnd, &mTevStr, + 0, 1.0f, dDlst_shadowControl_c::getSimpleTex()); } } diff --git a/src/d/a/d_a_obj.cpp b/src/d/a/d_a_obj.cpp index 3f57f806591..7149519432d 100644 --- a/src/d/a/d_a_obj.cpp +++ b/src/d/a/d_a_obj.cpp @@ -4,110 +4,25 @@ // #include "d/a/d_a_obj.h" +#include "d/com/d_com_inf_game.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // - -struct fopAc_ac_c {}; - -struct daPy_py_c { - /* 8015F398 */ void checkMasterSwordEquip(); -}; - -struct dCcD_GObjInf { - /* 800844F8 */ void GetTgHitObj(); - /* 8008457C */ void GetTgHitObjSe(); -}; - -struct Quaternion {}; - -struct Vec {}; - -struct cXyz { - /* 80009184 */ ~cXyz(); - /* 80266B34 */ void operator-(Vec const&) const; - /* 80266B84 */ void operator*(f32) const; - /* 80266C18 */ void operator/(f32) const; - /* 80266CBC */ void outprod(Vec const&) const; - - static f32 Zero[3]; - static u8 BaseY[12]; -}; - -struct daObj { - /* 80037038 */ void eff_break_tsubo(fopAc_ac_c*, cXyz, int); - /* 80037180 */ void make_eff_break_kotubo(fopAc_ac_c*); - /* 80037210 */ void make_eff_break_kotubo2(fopAc_ac_c*); - /* 800372A0 */ void make_eff_break_gm_kotubo(fopAc_ac_c*); - /* 80037330 */ void make_eff_break_gm_ootubo(fopAc_ac_c*); - /* 800373C0 */ void posMoveF_stream(fopAc_ac_c*, cXyz const*, cXyz const*, f32, f32); - /* 80037620 */ void posMoveF_grade(fopAc_ac_c*, cXyz const*, cXyz const*, f32, f32, cXyz const*, - f32, f32, cXyz const*); - /* 80037788 */ void quat_rotBaseY(Quaternion*, cXyz const&); - /* 80037900 */ void HitSeStart(cXyz const*, int, dCcD_GObjInf const*, u32); -}; - -struct dRes_info_c {}; - -struct dRes_control_c { - /* 8003C2EC */ void getRes(char const*, s32, dRes_info_c*, int); -}; - -struct dKy_tevstr_c {}; - -struct J3DModelData {}; - -struct JPABaseEmitter {}; - -struct dPa_modelEcallBack { - /* 8004AC00 */ void setModel(JPABaseEmitter*, J3DModelData*, dKy_tevstr_c const&, u8, void*, u8, - u8); - - static u8 mEcallback[4]; -}; - -struct dPa_levelEcallBack {}; - -struct csXyz {}; - -struct _GXColor {}; - -struct dPa_control_c { - /* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*, - u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*, - cXyz const*, f32); - - static u8 mTsubo[64]; -}; - -struct dCcD_GAtTgCoCommonBase { - /* 80083688 */ void GetAc(); -}; - -struct cCcD_SphAttr { - /* 80037A54 */ void GetCoCP(); -}; - -struct cCcD_CylAttr { - /* 80037A4C */ void GetCoCP(); -}; - -struct JAISoundID {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct JMath { - static u8 sincosTable_[65536]; -}; +namespace daObj { +/* 80037038 */ void eff_break_tsubo(fopAc_ac_c*, cXyz, int); +/* 80037180 */ void make_eff_break_kotubo(fopAc_ac_c*); +/* 80037210 */ void make_eff_break_kotubo2(fopAc_ac_c*); +/* 800372A0 */ void make_eff_break_gm_kotubo(fopAc_ac_c*); +/* 80037330 */ void make_eff_break_gm_ootubo(fopAc_ac_c*); +/* 800373C0 */ void posMoveF_stream(fopAc_ac_c*, cXyz const*, cXyz const*, f32, f32); +/* 80037620 */ void posMoveF_grade(fopAc_ac_c*, cXyz const*, cXyz const*, f32, f32, cXyz const*, + f32, f32, cXyz const*); +/* 80037788 */ void quat_rotBaseY(Quaternion*, cXyz const&); +/* 80037900 */ void HitSeStart(cXyz const*, int, dCcD_GObjInf const*, u32); +}; // namespace daObj // // Forward References: @@ -151,12 +66,6 @@ extern "C" void outprod__4cXyzCFRC3Vec(); extern "C" void cM_atan2s__Fff(); extern "C" void cM3d_CrawVec__FRC3VecRC3VecP3Vec(); extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc(); -extern "C" void PSVECAdd(); -extern "C" void PSVECSubtract(); -extern "C" void PSVECScale(); -extern "C" void PSVECSquareMag(); -extern "C" void PSVECDotProduct(); -extern "C" void C_QUATRotAxisRad(); extern "C" void __register_global_object(); extern "C" void _savegpr_25(); extern "C" void _savegpr_26(); @@ -166,8 +75,6 @@ extern "C" void _restgpr_25(); extern "C" void _restgpr_26(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); -extern "C" void acos(); -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mTsubo__13dPa_control_c[64]; extern "C" f32 Zero__4cXyz[3]; extern "C" u8 BaseY__4cXyz[12]; @@ -194,6 +101,22 @@ SECTION_SDATA2 static f32 lit_3671 = 1.0f; /* 80037038-80037180 031978 0148+00 4/4 0/0 0/0 .text eff_break_tsubo__5daObjFP10fopAc_ac_c4cXyzi */ +#ifdef NONMATCHING +void daObj::eff_break_tsubo(fopAc_ac_c* param_0, cXyz param_1, int param_2) { + J3DModelData* tubo_bmd = (J3DModelData*)dComIfG_getObjectRes("Always", 0x20); + J3DAnmTexPattern* tubo_btp = (J3DAnmTexPattern*)dComIfG_getObjectRes("Always", 0x42); + + JPABaseEmitter* emitter = (JPABaseEmitter*)dComIfGp_particle_set( + 0x15C, ¶m_0->current.pos, NULL, NULL, 0xFF, dPa_modelEcallBack::getEcallback(), + fopAcM_GetRoomNo(param_0), NULL, NULL, ¶m_1); + + dPa_modelEcallBack::setModel(emitter, tubo_bmd, param_0->mTevStr, 3, tubo_btp, 0, param_2); + + dComIfGp_particle_set(0x15D, ¶m_0->current.pos, NULL, NULL, 0xFF, + dPa_control_c::getTsuboSelectTexEcallBack(param_2), + fopAcM_GetRoomNo(param_0), NULL, NULL, ¶m_1); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -202,6 +125,7 @@ asm void daObj::eff_break_tsubo(fopAc_ac_c* param_0, cXyz param_1, int param_2) #include "asm/d/a/d_a_obj/eff_break_tsubo__5daObjFP10fopAc_ac_c4cXyzi.s" } #pragma pop +#endif /* ############################################################################################## */ /* 804245E8-804245F4 051308 000C+00 1/1 0/0 0/0 .bss @3677 */ @@ -212,6 +136,14 @@ static f32 scale_3676[3]; /* 80037180-80037210 031AC0 0090+00 0/0 0/0 2/2 .text make_eff_break_kotubo__5daObjFP10fopAc_ac_c */ +// matches with literals +#ifdef NONMATCHING +void daObj::make_eff_break_kotubo(fopAc_ac_c* param_0) { + static cXyz scale(1.0f, 1.0f, 1.0f); + + eff_break_tsubo(param_0, scale, 0); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -220,6 +152,7 @@ asm void daObj::make_eff_break_kotubo(fopAc_ac_c* param_0) { #include "asm/d/a/d_a_obj/make_eff_break_kotubo__5daObjFP10fopAc_ac_c.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80424600-8042460C 051320 000C+00 1/1 0/0 0/0 .bss @3692 */ @@ -230,6 +163,14 @@ static f32 scale_3691[3]; /* 80037210-800372A0 031B50 0090+00 0/0 0/0 2/2 .text make_eff_break_kotubo2__5daObjFP10fopAc_ac_c */ +// matches with literals +#ifdef NONMATCHING +void daObj::make_eff_break_kotubo2(fopAc_ac_c* param_0) { + static cXyz scale(1.0f, 1.0f, 1.0f); + + eff_break_tsubo(param_0, scale, 1); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -238,6 +179,7 @@ asm void daObj::make_eff_break_kotubo2(fopAc_ac_c* param_0) { #include "asm/d/a/d_a_obj/make_eff_break_kotubo2__5daObjFP10fopAc_ac_c.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80424618-80424624 051338 000C+00 1/1 0/0 0/0 .bss @3719 */ @@ -248,6 +190,14 @@ static f32 scale_3718[3]; /* 800372A0-80037330 031BE0 0090+00 0/0 0/0 1/1 .text * make_eff_break_gm_kotubo__5daObjFP10fopAc_ac_c */ +// matches with literals +#ifdef NONMATCHING +void daObj::make_eff_break_gm_kotubo(fopAc_ac_c* param_0) { + static cXyz scale(1.0f, 1.0f, 1.0f); + + eff_break_tsubo(param_0, scale, 3); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -256,6 +206,7 @@ asm void daObj::make_eff_break_gm_kotubo(fopAc_ac_c* param_0) { #include "asm/d/a/d_a_obj/make_eff_break_gm_kotubo__5daObjFP10fopAc_ac_c.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80424630-8042463C 051350 000C+00 1/1 0/0 0/0 .bss @3732 */ @@ -269,6 +220,14 @@ SECTION_SDATA2 static f32 lit_3714 = 2.0f; /* 80037330-800373C0 031C70 0090+00 0/0 0/0 1/1 .text * make_eff_break_gm_ootubo__5daObjFP10fopAc_ac_c */ +// matches with literals +#ifdef NONMATCHING +void daObj::make_eff_break_gm_ootubo(fopAc_ac_c* param_0) { + static cXyz scale(2.0f, 2.0f, 2.0f); + + eff_break_tsubo(param_0, scale, 4); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -277,6 +236,7 @@ asm void daObj::make_eff_break_gm_ootubo(fopAc_ac_c* param_0) { #include "asm/d/a/d_a_obj/make_eff_break_gm_ootubo__5daObjFP10fopAc_ac_c.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80451DA0-80451DA4 0003A0 0004+00 4/4 0/0 0/0 .sdata2 @3801 */ @@ -383,7 +343,8 @@ asm void daObj::HitSeStart(cXyz const* param_0, int param_1, dCcD_GObjInf const* #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cCcD_CylAttr::GetCoCP() { +// asm void cCcD_CylAttr::GetCoCP() { +extern "C" asm void GetCoCP__12cCcD_CylAttrFv() { nofralloc #include "asm/d/a/d_a_obj/GetCoCP__12cCcD_CylAttrFv.s" } @@ -393,7 +354,8 @@ asm void cCcD_CylAttr::GetCoCP() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void cCcD_SphAttr::GetCoCP() { +// asm void cCcD_SphAttr::GetCoCP() { +extern "C" asm void GetCoCP__12cCcD_SphAttrFv() { nofralloc #include "asm/d/a/d_a_obj/GetCoCP__12cCcD_SphAttrFv.s" } diff --git a/src/d/a/d_a_player.cpp b/src/d/a/d_a_player.cpp index 518fc004f6f..81c1161e016 100644 --- a/src/d/a/d_a_player.cpp +++ b/src/d/a/d_a_player.cpp @@ -12,7 +12,9 @@ #include "dolphin/types.h" #include "f_op/f_op_actor_iter.h" #include "f_op/f_op_actor_mng.h" +#include "m_Do/m_Do_lib.h" #include "rel/d/a/d_a_boomerang/d_a_boomerang.h" +#include "rel/d/a/d_a_spinner/d_a_spinner.h" // // Forward References: @@ -77,6 +79,7 @@ extern "C" void setMidnaFaceNum__9daPy_py_cFi(); extern "C" void daPy_addCalcShort__FPsssss(); extern "C" extern void* __vt__18daPy_sightPacket_c[4 + 1 /* padding */]; extern "C" u8 m_midnaActor__9daPy_py_c[4]; +extern "C" u8 m_dropAngleY__20daPy_boomerangMove_c[4]; // // External References: @@ -143,10 +146,12 @@ bool daPy_frameCtrl_c::checkAnmEnd() { if (getEndFlg() != 0 && getNowSetFlg() == 0) { return true; } + if (getRate() == lit_4215[0]) { onEndFlg(); onNowSetFlg(); } + return false; } @@ -155,63 +160,38 @@ void daPy_frameCtrl_c::updateFrame() { offNowSetFlg(); } -/* ############################################################################################## */ -/* 80453608-80453610 001C08 0008+00 2/2 0/0 0/0 .sdata2 @4237 */ -SECTION_SDATA2 static f64 lit_4237 = 4503601774854144.0 /* cast s32 to float */; - /* 8015E544-8015E5B0 158E84 006C+00 0/0 1/1 6/6 .text setFrameCtrl__16daPy_frameCtrl_cFUcssff */ -// compiler generated literal from short to float conversion -#ifdef NONMATCHING -void daPy_frameCtrl_c::setFrameCtrl(u8 pAttribute, s16 pStart, s16 pEnd, f32 pRate, f32 pFrame) { - setAttribute(pAttribute); - setEnd(pEnd); - setRate(pRate); - setStart(pStart); - setFrame(pFrame); - if (pRate >= lit_4215[0]) { - setLoop(pStart); +void daPy_frameCtrl_c::setFrameCtrl(u8 i_attribute, s16 i_start, s16 i_end, f32 i_rate, + f32 i_frame) { + setAttribute(i_attribute); + setEnd(i_end); + setRate(i_rate); + setStart(i_start); + setFrame(i_frame); + + if (i_rate >= lit_4215[0]) { + setLoop(i_start); } else { - setLoop(pEnd); + setLoop(i_end); } + offEndFlg(); } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_frameCtrl_c::setFrameCtrl(u8 param_0, s16 param_1, s16 param_2, f32 param_3, - f32 param_4) { - nofralloc -#include "asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s" -} -#pragma pop -#endif - -/* ############################################################################################## */ -/* 80453610-80453614 001C10 0004+00 1/1 0/0 0/0 .sdata2 @4247 */ -SECTION_SDATA2 static f32 lit_4247 = 30.0f; - -/* 80453614-80453618 001C14 0004+00 1/1 0/0 0/0 .sdata2 @4248 */ -SECTION_SDATA2 static f32 lit_4248 = 70.0f; - -/* 80453618-8045361C 001C18 0004+00 2/2 0/0 0/0 .sdata2 @4249 */ -SECTION_SDATA2 static f32 lit_4249 = 50.0f; - -/* 8045361C-80453620 001C1C 0004+00 1/1 0/0 0/0 .sdata2 @4250 */ -SECTION_SDATA2 static f32 lit_4250 = 65536.0f; /* 8015E5B0-8015E654 158EF0 00A4+00 0/0 1/1 18/18 .text initOffset__20daPy_boomerangMove_cFPC4cXyz */ void daPy_boomerangMove_c::initOffset(cXyz const* param_0) { daBoomerang_c* boomerang = daPy_py_c::getThrowBoomerangActor(); + if (boomerang != NULL) { bgCheckAfterOffset(param_0); boomerang->onWindCatch(); } else { - field_0x4 = cM_rndF(lit_4248) + lit_4247; - field_0x8 = cM_rndF(lit_4249) + lit_4249; - field_0x2 = cM_rndF(lit_4250); + field_0x4 = cM_rndF(70.0f) + 30.0f; + field_0x8 = cM_rndF(50.0f) + 50.0f; + field_0x2 = cM_rndF(65536.0f); } + field_0x0 = 0; } @@ -221,34 +201,59 @@ daMidna_c* daPy_py_c::m_midnaActor; /* 8045101C-80451020 -00001 0004+00 1/1 1/1 1/1 .sbss None */ /* 8045101C 0002+00 data_8045101C m_dropAngleY__20daPy_boomerangMove_c */ +s16 daPy_boomerangMove_c::m_dropAngleY; + /* 8045101E 0002+00 data_8045101E m_eventKeepFlg__20daPy_boomerangMove_c */ -extern u8 struct_8045101C[4]; -u8 struct_8045101C[4]; - -/* 80453620-80453624 001C20 0004+00 1/1 0/0 0/0 .sdata2 @4332 */ -SECTION_SDATA2 static f32 lit_4332 = 300.0f; - -/* 80453624-80453628 001C24 0004+00 1/1 0/0 0/0 .sdata2 @4333 */ -SECTION_SDATA2 static f32 lit_4333 = -700.0f; - -/* 80453628-80453630 001C28 0004+04 1/1 0/0 0/0 .sdata2 @4334 */ -SECTION_SDATA2 static f32 lit_4334[1 + 1 /* padding */] = { - 2048.0f, - /* padding */ - 0.0f, -}; +s16 daPy_boomerangMove_c::m_eventKeepFlg; /* 8015E654-8015E87C 158F94 0228+00 0/0 1/1 17/17 .text * posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_boomerangMove_c::posMove(cXyz* param_0, s16* param_1, fopAc_ac_c* param_2, - s16 param_3) { - nofralloc -#include "asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s" +int daPy_boomerangMove_c::posMove(cXyz* param_0, s16* param_1, fopAc_ac_c* param_2, s16 param_3) { + daBoomerang_c* boomerang = daPy_py_c::getThrowBoomerangActor(); + + field_0x2 -= param_3; + *param_1 -= param_3; + + if (field_0x8 > 300.0f) { + field_0x8 = 300.0f; + } + + if (field_0x4 < -700.0f) { + field_0x4 = -700.0f; + } else if (field_0x4 > 50.0f) { + field_0x4 = 50.0f; + } + + if (boomerang != NULL) { + if (boomerang->checkForceDelete()) { + return 0; + } + + if (i_dComIfGp_event_runCheck()) { + field_0x0 = 1; + } else if (m_eventKeepFlg != 0 && field_0x0 == 0) { + return 0; + } + + param_0->set(boomerang->current.pos.x + field_0x8 * cM_ssin(field_0x2), + boomerang->current.pos.y + field_0x4, + boomerang->current.pos.z + field_0x8 * cM_scos(field_0x2)); + boomerang->onWindCatch(); + return 1; + } + + daAlink_c* link = daAlink_getAlinkActorClass(); + if ((param_2 == NULL || !link->checkBoomerangCarry(param_2)) && + (m_eventKeepFlg == 0 || field_0x0 != 0)) { + s16 tmp = (m_dropAngleY + link->mCollisionRot.y) + cM_rndF(2048.0f); + + param_0->x = link->current.pos.x + field_0x8 * cM_ssin(tmp); + param_0->z = link->current.pos.z + field_0x8 * cM_scos(tmp); + m_dropAngleY += 0x2000; + } + + return 0; } -#pragma pop /* ############################################################################################## */ /* 80453630-80453638 001C30 0008+00 1/1 0/0 0/0 .sdata2 @4379 */ @@ -271,8 +276,8 @@ void daPy_boomerangMove_c::bgCheckAfterOffset(cXyz const* param_0) { if (boomerang != NULL) { field_0x4 = param_0->y - boomerang->current.pos.y; field_0x8 = boomerang->current.pos.absXZ(*param_0); - field_0x2 = cM_atan2s(param_0->x - boomerang->current.pos.x, - param_0->z - boomerang->current.pos.z); + field_0x2 = + cM_atan2s(param_0->x - boomerang->current.pos.x, param_0->z - boomerang->current.pos.z); } } #else @@ -375,10 +380,10 @@ void daPy_actorKeep_c::setActor() { /* 8015ECB8-8015ECFC 1595F8 0044+00 0/0 59/59 4/4 .text setData__16daPy_actorKeep_cFP10fopAc_ac_c */ -void daPy_actorKeep_c::setData(fopAc_ac_c* pActor) { - if (pActor != NULL) { - mActor = pActor; - mID = fopAcM_GetID(pActor); +void daPy_actorKeep_c::setData(fopAc_ac_c* i_actor) { + if (i_actor != NULL) { + mActor = i_actor; + mID = fopAcM_GetID(i_actor); } else { clearData(); } @@ -389,9 +394,9 @@ void daPy_actorKeep_c::clearData() { mActor = NULL; } -daPy_anmHeap_c::daPy_anmHeap_c(u32 pBufferSize) { +daPy_anmHeap_c::daPy_anmHeap_c(u32 i_bufferSize) { initData(); - mBufferSize = pBufferSize; + mBufferSize = i_bufferSize; } daPy_anmHeap_c::~daPy_anmHeap_c() { @@ -414,16 +419,16 @@ void* daPy_anmHeap_c::mallocBuffer() { /* 8015EE00-8015EF84 159740 0184+00 0/0 1/1 1/1 .text * createHeap__14daPy_anmHeap_cFQ214daPy_anmHeap_c16daAlinkHEAP_TYPE */ -void daPy_anmHeap_c::createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE heap_type) { +void daPy_anmHeap_c::createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE i_heapType) { u32 size; - if (heap_type == 4) { + if (i_heapType == 4) { size = mBufferSize; - } else if (heap_type == 3) { + } else if (i_heapType == 3) { size = 0x50; - } else if (heap_type == 0) { + } else if (i_heapType == 0) { size = 0x40; - } else if (heap_type == 1) { + } else if (i_heapType == 1) { size = 0x40; } else { size = 0xA0; @@ -432,13 +437,13 @@ void daPy_anmHeap_c::createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE heap_type) { JKRHeap* tmp; mAnimeHeap = mDoExt_createSolidHeapFromGameToCurrent(&tmp, size, 0x20); - if (heap_type == 4) { + if (i_heapType == 4) { char* tmpWork = new char[size]; - } else if (heap_type == 3) { + } else if (i_heapType == 3) { mDoExt_transAnmBas* tmpTransBas = new mDoExt_transAnmBas(NULL); - } else if (heap_type == 0) { + } else if (i_heapType == 0) { J3DAnmTransformKey* tmpTrans = new J3DAnmTransformKey(); - } else if (heap_type == 1) { + } else if (i_heapType == 1) { J3DAnmTexPattern* tmpTp = new J3DAnmTexPattern(); } else { J3DAnmTextureSRTKey* tmpTk = new J3DAnmTextureSRTKey(); @@ -448,50 +453,24 @@ void daPy_anmHeap_c::createHeap(daPy_anmHeap_c::daAlinkHEAP_TYPE heap_type) { mDoExt_adjustSolidHeap(mAnimeHeap); } -/* ############################################################################################## */ -/* 80453648-80453650 001C48 0008+00 1/0 0/0 0/0 .sdata2 sumouArcName$4614 */ -extern "C" char sumouArcName[8]; - -/* 80453650-80453658 001C50 0005+03 1/0 0/0 0/0 .sdata2 ocArcName$4615 */ -extern "C" char ocArcName[8]; - -/* 80453658-80453660 001C58 0005+03 1/0 0/0 0/0 .sdata2 drArcName$4618 */ -extern "C" char drArcName[8]; - -/* 80453660-80453668 001C60 0008+00 1/0 0/0 0/0 .sdata2 msDemoArcName$4619 */ -extern "C" char msDemoArcName[8]; - -/* 80453668-80453670 001C68 0006+02 1/0 0/0 0/0 .sdata2 lastGanonArcName$4620 */ -extern "C" char lastGanonArcName[8]; - -/* 80453670-80453678 001C70 0006+02 1/0 0/0 0/0 .sdata2 pigGanonArcName$4621 */ -extern "C" char pigGanonArcName[8]; - -SECTION_RODATA static char const twglArcName[12] = "TWGate_Lk"; - -SECTION_RODATA static char const twgwArcName[12] = "TWGate_Wf"; - -SECTION_DATA static char* arcName[8] = { - (char*)&sumouArcName, (char*)&ocArcName, (char*)&twglArcName, (char*)&twgwArcName, - (char*)&drArcName, (char*)&msDemoArcName, (char*)&lastGanonArcName, (char*)&pigGanonArcName, -}; - -SECTION_SDATA2 static char sumouArcName[8] = "alSumou"; - -SECTION_SDATA2 static char ocArcName[8] = "B_oh"; - -SECTION_SDATA2 static char drArcName[8] = "B_DR"; - -SECTION_SDATA2 static char msDemoArcName[8] = "Lv6Gate"; - -SECTION_SDATA2 static char lastGanonArcName[8] = "B_gnd"; - -SECTION_SDATA2 static char pigGanonArcName[8] = "B_mgn"; - /* 8015EF84-8015F068 1598C4 00E4+00 3/3 0/0 0/0 .text loadData__14daPy_anmHeap_cFUs */ -void* daPy_anmHeap_c::loadData(u16 id) { +void* daPy_anmHeap_c::loadData(u16 i_resId) { + static const char twglArcName[12] = "TWGate_Lk"; + static const char twgwArcName[12] = "TWGate_Wf"; + static const char sumouArcName[8] = "alSumou"; + static const char ocArcName[8] = "B_oh"; + static const char drArcName[8] = "B_DR"; + static const char msDemoArcName[8] = "Lv6Gate"; + static const char lastGanonArcName[8] = "B_gnd"; + static const char pigGanonArcName[8] = "B_mgn"; + + static const char* arcName[8] = { + sumouArcName, ocArcName, twglArcName, twgwArcName, + drArcName, msDemoArcName, lastGanonArcName, pigGanonArcName, + }; + if (mArcNo == 0xFFFF) { - dComIfGp_getAnmArchive()->readIdxResource(mBuffer, mBufferSize, id); + dComIfGp_getAnmArchive()->readIdxResource(mBuffer, mBufferSize, i_resId); JKRHeap* heap = setAnimeHeap(); void* data = J3DAnmLoaderDataBase::load(mBuffer, UNK_FLAG0); mDoExt_setCurrentHeap(heap); @@ -499,10 +478,10 @@ void* daPy_anmHeap_c::loadData(u16 id) { } if (mArcNo == 0) { - return dComIfG_getObjectIDRes(dStage_roomControl_c::getDemoArcName(), id); + return dComIfG_getObjectIDRes(dStage_roomControl_c::getDemoArcName(), i_resId); } - return dComIfG_getObjectRes(arcName[mArcNo - 1], id); + return dComIfG_getObjectRes(arcName[mArcNo - 1], i_resId); } /* 8015F068-8015F0D0 1599A8 0068+00 0/0 9/9 5/5 .text loadDataIdx__14daPy_anmHeap_cFUs */ @@ -520,6 +499,7 @@ void* daPy_anmHeap_c::loadDataIdx(u16 id) { data = NULL; } } + return data; } @@ -534,6 +514,7 @@ void* daPy_anmHeap_c::loadDataPriIdx(u16 id) { mPriIdx = id; data = loadData(id); } + return data; } @@ -548,6 +529,7 @@ void* daPy_anmHeap_c::loadDataDemoRID(u16 id, u16 arc_no) { mArcNo = arc_no; data = loadData(id); } + return data; } @@ -578,29 +560,56 @@ SECTION_SDATA2 static u32 lit_4668 = 0xFF8000FF; SECTION_SDATA2 static u32 lit_4669 = 0x321400FF; /* 8015F1A0-8015F2FC 159AE0 015C+00 1/0 1/1 0/0 .text draw__18daPy_sightPacket_cFv */ +// dumb instruction block out of order +#ifdef NONMATCHING +void daPy_sightPacket_c::draw() { + GXTexObj texObj; + + j3dSys.reinitGX(); + GXSetNumIndStages(0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS, GX_DIRECT); + GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_CLR_RGBA, GX_RGB8, 0); + GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGB565, 0); + + GXColor reg0 = {255, 128, 0, 255}; + GXColor reg1 = {50, 20, 0, 255}; + + GXSetTevColor(GX_TEVREG0, reg0); + GXSetTevColor(GX_TEVREG1, reg1); + GXInitTexObj(&texObj, mpData, mpImg->width, mpImg->height, (GXTexFmt)mpImg->format, + (GXTexWrapMode)mpImg->wrapS, (GXTexWrapMode)mpImg->wrapT, + (GXBool)(mpImg->mipmapCount > 1)); + GXInitTexObjLOD(&texObj, GX_LINEAR, GX_LINEAR, 0.0, 0.0, 0.0, GX_FALSE, GX_FALSE, GX_ANISO_1); + GXLoadTexObj(&texObj, GX_TEXMAP0); + GXLoadPosMtxImm(field_0x14, GX_PNMTX0); + GXSetCurrentMtx(0); + GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL); + GXCallDisplayList(l_sightDL, 0x80); + J3DShape::resetVcdVatCache(); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -extern "C" asm void draw__18daPy_sightPacket_cFv() { - // asm void daPy_sightPacket_c::draw() { +asm void daPy_sightPacket_c::draw() { nofralloc #include "asm/d/a/d_a_player/draw__18daPy_sightPacket_cFv.s" } #pragma pop - -/* ############################################################################################## */ -/* 80453680-80453684 001C80 0004+00 1/1 0/0 0/0 .sdata2 @4699 */ -SECTION_SDATA2 static f32 lit_4699 = 32.0f; +#endif /* 8015F2FC-8015F384 159C3C 0088+00 0/0 1/1 0/0 .text setSight__18daPy_sightPacket_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daPy_sightPacket_c::setSight() { - nofralloc -#include "asm/d/a/d_a_player/setSight__18daPy_sightPacket_cFv.s" +void daPy_sightPacket_c::setSight() { + Vec tmp; + + mDoLib_project(&mPos, &tmp); + mDoMtx_stack_c::transS(tmp.x, tmp.y, tmp.z); + mDoMtx_stack_c::scaleM(32.0f, 32.0f, 32.0f); + mDoMtx_stack_c::copy(field_0x14); + dComIfGd_set2DXlu(this); } -#pragma pop /* 8015F384-8015F398 159CC4 0014+00 0/0 1/1 0/0 .text * setSightImage__18daPy_sightPacket_cFP7ResTIMG */ @@ -617,6 +626,7 @@ BOOL daPy_py_c::checkMasterSwordEquip() { if (equipSword == MASTER_SWORD || equipSword == LIGHT_SWORD) { isMasterSword = true; } + return isMasterSword; } @@ -625,8 +635,7 @@ BOOL daPy_py_c::checkMasterSwordEquip() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::checkWoodShieldEquip() { - nofralloc +asm void daPy_py_c::checkWoodShieldEquip(){nofralloc #include "asm/d/a/d_a_player/checkWoodShieldEquip__9daPy_py_cFv.s" } #pragma pop @@ -641,6 +650,7 @@ f32 daPy_py_c::getAttentionOffsetY() { if (checkNowWolf()) { return -12.5f; } + return 57.5f; } @@ -678,8 +688,8 @@ void daPy_py_c::setLookPos(cXyz* p_pos) { } /* 8015F520-8015F55C 159E60 003C+00 0/0 0/0 4/4 .text setPlayerSe__9daPy_py_cFUl */ -void daPy_py_c::setPlayerSe(u32 se_id) { - daAlink_getAlinkActorClass()->seStartOnlyReverb(se_id); +void daPy_py_c::setPlayerSe(u32 i_sfxID) { + daAlink_getAlinkActorClass()->seStartOnlyReverb(i_sfxID); } /* 8015F55C-8015F60C 159E9C 00B0+00 1/1 0/0 2/2 .text @@ -696,7 +706,8 @@ bool daPy_py_c::linkGrabSubjectNoDraw(fopAc_ac_c* p_ac) { } } - if (check_carry && dComIfGp_checkCameraAttentionStatus(i_dComIfGp_getPlayerCameraID(0), 2) != 0) { + if (check_carry && + dComIfGp_checkCameraAttentionStatus(i_dComIfGp_getPlayerCameraID(0), 2) != 0) { ret = true; } @@ -718,8 +729,7 @@ asm bool daPy_py_c::linkGrabSubjectNoDraw(fopAc_ac_c* param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::wolfGrabSubjectNoDraw(fopAc_ac_c* param_0) { - nofralloc +asm void daPy_py_c::wolfGrabSubjectNoDraw(fopAc_ac_c* param_0){nofralloc #include "asm/d/a/d_a_player/wolfGrabSubjectNoDraw__9daPy_py_cFP10fopAc_ac_c.s" } #pragma pop @@ -735,48 +745,67 @@ bool daPy_py_c::checkRoomRestartStart() { if (mode == 4 || mode == 8 || mode == 5) { return true; - } else { - return false; } + + return false; } /* 8015F698-8015F730 159FD8 0098+00 0/0 2/2 1/1 .text checkCarryStartLightBallA__9daPy_py_cFv */ u32 daPy_py_c::checkCarryStartLightBallA() { - if (checkRoomRestartStart() || !i_dComIfGp_getStage() || !i_dComIfGp_getStage()->getStagInfo() || + if (checkRoomRestartStart() || !i_dComIfGp_getStage() || + !i_dComIfGp_getStage()->getStagInfo() || i_dStage_stagInfo_GetSaveTbl(i_dComIfGp_getStage()->getStagInfo()) != 0x17) { return FALSE; } + return dComIfGs_getLastSceneMode() & 0x100000; } /* 8015F730-8015F7C8 15A070 0098+00 0/0 2/2 1/1 .text checkCarryStartLightBallB__9daPy_py_cFv */ u32 daPy_py_c::checkCarryStartLightBallB() { - if (checkRoomRestartStart() || !i_dComIfGp_getStage() || !i_dComIfGp_getStage()->getStagInfo() || + if (checkRoomRestartStart() || !i_dComIfGp_getStage() || + !i_dComIfGp_getStage()->getStagInfo() || i_dStage_stagInfo_GetSaveTbl(i_dComIfGp_getStage()->getStagInfo()) != 0x17) { return FALSE; } + return dComIfGs_getLastSceneMode() & 0x80000; } -float daPy_py_c::getSpinnerRideSpeed() const { - float rideSpeed; +f32 daPy_py_c::getSpinnerRideSpeed() const { + f32 rideSpeed; + if (checkSpinnerRide()) { rideSpeed = mSpeedF; } else { rideSpeed = lit_4215[0]; } + return rideSpeed; } /* 8015F814-8015F89C 15A154 0088+00 0/0 0/0 1/1 .text checkSpinnerReflectEffect__9daPy_py_cFv */ +// matches with literals +#ifdef NONMATCHING +bool daPy_py_c::checkSpinnerReflectEffect() { + daSpinner_c* spinner = (daSpinner_c*)getSpinnerActor(); + + if (spinner != NULL && spinner->reflectAccept()) { + return true; + } + + return false; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void daPy_py_c::checkSpinnerReflectEffect() { +asm bool daPy_py_c::checkSpinnerReflectEffect() { nofralloc #include "asm/d/a/d_a_player/checkSpinnerReflectEffect__9daPy_py_cFv.s" } #pragma pop +#endif /* 8015F89C-8015F8C8 15A1DC 002C+00 0/0 0/0 7/7 .text checkBoomerangCharge__9daPy_py_cFv */ @@ -874,14 +903,3 @@ asm void daPy_addCalcShort(s16* param_0, s16 param_1, s16 param_2, s16 param_3, } #pragma pop #endif - -/* ############################################################################################## */ -/* 803BA14C-803BA160 01726C 0010+04 0/0 4/4 0/0 .data __vt__18daPy_sightPacket_c */ -SECTION_DATA extern void* __vt__18daPy_sightPacket_c[4 + 1 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)draw__18daPy_sightPacket_cFv, - (void*)__dt__18daPy_sightPacket_cFv, - /* padding */ - NULL, -}; diff --git a/src/d/particle/d_particle.cpp b/src/d/particle/d_particle.cpp index f80e660d17c..befe696a0e4 100644 --- a/src/d/particle/d_particle.cpp +++ b/src/d/particle/d_particle.cpp @@ -626,7 +626,7 @@ void dPa_followEcallBack::end() { /* ############################################################################################## */ /* 80450E90-80450E94 000390 0004+00 2/2 1/1 11/11 .sbss mEcallback__18dPa_modelEcallBack */ -u8 dPa_modelEcallBack::mEcallback[4]; +dPa_modelEcallBack* dPa_modelEcallBack::mEcallback; /* 80450E94-80450E98 000394 0004+00 2/2 0/0 0/0 .sbss mPcallback__18dPa_modelEcallBack */ u8 dPa_modelEcallBack::mPcallback[4]; diff --git a/src/f_op/f_op_actor.cpp b/src/f_op/f_op_actor.cpp index 9b11dbe3a79..8da6d9f2dbb 100644 --- a/src/f_op/f_op_actor.cpp +++ b/src/f_op/f_op_actor.cpp @@ -15,17 +15,6 @@ #include "d/s/d_s_play.h" #include "d/d_demo.h" -// -// Types: -// - -struct fopEn_enemy_c { - /* 80019404 */ void initBallModel(); - /* 800194FC */ void checkBallModelDraw(); - /* 80019520 */ void setBallModelEffect(dKy_tevstr_c*); - /* 800196A0 */ void drawBallModel(dKy_tevstr_c*); -}; - // // Forward References: // From 74c248990c5cc991aff8f119efd8b733770178a7 Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Tue, 4 Oct 2022 21:17:53 -0700 Subject: [PATCH 2/4] move jasper's jsystem work over --- Progress.md | 8 +- .../J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s | 54 ------ .../drawHead__13J3DDrawBufferCFv.s | 35 ---- .../drawTail__13J3DDrawBufferCFv.s | 35 ---- .../J3DDrawBuffer/draw__13J3DDrawBufferCFv.s | 22 --- ...lidSort__13J3DDrawBufferFP12J3DMatPacket.s | 24 --- ...delSort__13J3DDrawBufferFP12J3DMatPacket.s | 23 --- .../entry__12J3DMatPacketFP13J3DDrawBuffer.s | 25 --- ..._ct__15J3DJointFactoryFRC13J3DJointBlock.s | 23 --- .../create__15J3DJointFactoryFi.s | 93 --------- .../J3DJointFactory/func_80337338.s | 8 - ..._ct__15J3DShapeFactoryFRC13J3DShapeBlock.s | 45 ----- ...locVcdVatCmdBuffer__15J3DShapeFactoryFUl.s | 30 --- ...alcSizeShapeMtx__15J3DShapeFactoryCFUlii.s | 75 ------- ...izeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s | 5 - ...__15J3DShapeFactoryFiUlP14_GXVtxDescList.s | 115 ----------- .../J3DShapeFactory/func_80337AE0.s | 8 - .../J3DShapeFactory/func_80337AF8.s | 8 - .../J3DShapeFactory/func_80337B10.s | 8 - .../J3DShapeFactory/func_80337B28.s | 8 - .../newShapeDraw__15J3DShapeFactoryCFii.s | 37 ---- .../newShapeMtx__15J3DShapeFactoryCFUlii.s | 183 ------------------ .../checkBoomerangChargeEnd__9daAlink_cFv.s | 33 ---- .../checkBoomerangThrowAnime__9daAlink_cCFv.s | 18 -- ...y_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s | 150 -------------- .../setFrameCtrl__16daPy_frameCtrl_cFUcssff.s | 30 --- .../setSight__18daPy_sightPacket_cFv.s | 35 ---- include/JSystem/J3DGraphAnimator/J3DJoint.h | 4 +- include/JSystem/J3DGraphBase/J3DPacket.h | 18 +- include/JSystem/J3DGraphBase/J3DSys.h | 3 + include/JSystem/J3DGraphBase/J3DTransform.h | 7 +- .../JSystem/J3DGraphLoader/J3DJointFactory.h | 45 ++++- include/JSystem/JGeometry.h | 26 +++ libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp | 30 +-- libs/JSystem/J3DGraphBase/J3DPacket.cpp | 89 +++------ libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp | 6 +- .../J3DGraphLoader/J3DJointFactory.cpp | 79 +++----- 37 files changed, 153 insertions(+), 1292 deletions(-) delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawHead__13J3DDrawBufferCFv.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/draw__13J3DDrawBufferCFv.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryModelSort__13J3DDrawBufferFP12J3DMatPacket.s delete mode 100644 asm/JSystem/J3DGraphBase/J3DPacket/entry__12J3DMatPacketFP13J3DDrawBuffer.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DJointFactory/__ct__15J3DJointFactoryFRC13J3DJointBlock.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DJointFactory/func_80337338.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/__ct__15J3DShapeFactoryFRC13J3DShapeBlock.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/allocVcdVatCmdBuffer__15J3DShapeFactoryFUl.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeShapeMtx__15J3DShapeFactoryCFUlii.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/create__15J3DShapeFactoryFiUlP14_GXVtxDescList.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AE0.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AF8.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B10.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B28.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeDraw__15J3DShapeFactoryCFii.s delete mode 100644 asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeMtx__15J3DShapeFactoryCFUlii.s delete mode 100644 asm/d/a/d_a_alink/checkBoomerangChargeEnd__9daAlink_cFv.s delete mode 100644 asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s delete mode 100644 asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s delete mode 100644 asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s delete mode 100644 asm/d/a/d_a_player/setSight__18daPy_sightPacket_cFv.s diff --git a/Progress.md b/Progress.md index c2234273c8a..f4da0061222 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 91.849662% | 8700 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 16.478820% | 592668 | 3596544 +.text | 16.500285% | 593440 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 25.270005% | 1016024 | 4020672 +Total | 25.289205% | 1016796 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 25.270005% | 1016024 | 4020672 +main.dol | 25.289205% | 1016796 | 4020672 RELs | 33.217047% | 3820068 | 11500324 -Total | 31.158387% | 4836092 | 15520996 +Total | 31.163361% | 4836864 | 15520996 ## RELs diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s deleted file mode 100644 index 9aaa286798e..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/__sinit_J3DDrawBuffer_cpp.s +++ /dev/null @@ -1,54 +0,0 @@ -lbl_803255F0: -/* 803255F0 3C 60 80 3D */ lis r3, lit_992@ha /* 0x803CEBE8@ha */ -/* 803255F4 38 A3 EB E8 */ addi r5, r3, lit_992@l /* 0x803CEBE8@l */ -/* 803255F8 80 65 00 00 */ lwz r3, 0(r5) -/* 803255FC 80 05 00 04 */ lwz r0, 4(r5) -/* 80325600 90 65 00 48 */ stw r3, 0x48(r5) -/* 80325604 90 05 00 4C */ stw r0, 0x4c(r5) -/* 80325608 80 05 00 08 */ lwz r0, 8(r5) -/* 8032560C 90 05 00 50 */ stw r0, 0x50(r5) -/* 80325610 38 85 00 48 */ addi r4, r5, 0x48 -/* 80325614 80 65 00 0C */ lwz r3, 0xc(r5) -/* 80325618 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8032561C 90 64 00 0C */ stw r3, 0xc(r4) -/* 80325620 90 04 00 10 */ stw r0, 0x10(r4) -/* 80325624 80 05 00 14 */ lwz r0, 0x14(r5) -/* 80325628 90 04 00 14 */ stw r0, 0x14(r4) -/* 8032562C 80 65 00 18 */ lwz r3, 0x18(r5) -/* 80325630 80 05 00 1C */ lwz r0, 0x1c(r5) -/* 80325634 90 64 00 18 */ stw r3, 0x18(r4) -/* 80325638 90 04 00 1C */ stw r0, 0x1c(r4) -/* 8032563C 80 05 00 20 */ lwz r0, 0x20(r5) -/* 80325640 90 04 00 20 */ stw r0, 0x20(r4) -/* 80325644 80 65 00 24 */ lwz r3, 0x24(r5) -/* 80325648 80 05 00 28 */ lwz r0, 0x28(r5) -/* 8032564C 90 64 00 24 */ stw r3, 0x24(r4) -/* 80325650 90 04 00 28 */ stw r0, 0x28(r4) -/* 80325654 80 05 00 2C */ lwz r0, 0x2c(r5) -/* 80325658 90 04 00 2C */ stw r0, 0x2c(r4) -/* 8032565C 80 65 00 30 */ lwz r3, 0x30(r5) -/* 80325660 80 05 00 34 */ lwz r0, 0x34(r5) -/* 80325664 90 64 00 30 */ stw r3, 0x30(r4) -/* 80325668 90 04 00 34 */ stw r0, 0x34(r4) -/* 8032566C 80 05 00 38 */ lwz r0, 0x38(r5) -/* 80325670 90 04 00 38 */ stw r0, 0x38(r4) -/* 80325674 80 65 00 3C */ lwz r3, 0x3c(r5) -/* 80325678 80 05 00 40 */ lwz r0, 0x40(r5) -/* 8032567C 90 64 00 3C */ stw r3, 0x3c(r4) -/* 80325680 90 04 00 40 */ stw r0, 0x40(r4) -/* 80325684 80 05 00 44 */ lwz r0, 0x44(r5) -/* 80325688 90 04 00 44 */ stw r0, 0x44(r4) -/* 8032568C 80 65 00 90 */ lwz r3, 0x90(r5) -/* 80325690 80 05 00 94 */ lwz r0, 0x94(r5) -/* 80325694 90 65 00 A8 */ stw r3, 0xa8(r5) -/* 80325698 90 05 00 AC */ stw r0, 0xac(r5) -/* 8032569C 80 05 00 98 */ lwz r0, 0x98(r5) -/* 803256A0 90 05 00 B0 */ stw r0, 0xb0(r5) -/* 803256A4 38 85 00 A8 */ addi r4, r5, 0xa8 -/* 803256A8 80 65 00 9C */ lwz r3, 0x9c(r5) -/* 803256AC 80 05 00 A0 */ lwz r0, 0xa0(r5) -/* 803256B0 90 64 00 0C */ stw r3, 0xc(r4) -/* 803256B4 90 04 00 10 */ stw r0, 0x10(r4) -/* 803256B8 80 05 00 A4 */ lwz r0, 0xa4(r5) -/* 803256BC 90 04 00 14 */ stw r0, 0x14(r4) -/* 803256C0 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawHead__13J3DDrawBufferCFv.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawHead__13J3DDrawBufferCFv.s deleted file mode 100644 index ea41a9ebd08..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawHead__13J3DDrawBufferCFv.s +++ /dev/null @@ -1,35 +0,0 @@ -lbl_80325500: -/* 80325500 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80325504 7C 08 02 A6 */ mflr r0 -/* 80325508 90 01 00 24 */ stw r0, 0x24(r1) -/* 8032550C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80325510 48 03 CC C5 */ bl _savegpr_27 -/* 80325514 83 C3 00 04 */ lwz r30, 4(r3) -/* 80325518 83 A3 00 00 */ lwz r29, 0(r3) -/* 8032551C 3B 80 00 00 */ li r28, 0 -/* 80325520 3B E0 00 00 */ li r31, 0 -/* 80325524 48 00 00 34 */ b lbl_80325558 -lbl_80325528: -/* 80325528 7F 7D F8 2E */ lwzx r27, r29, r31 -/* 8032552C 48 00 00 1C */ b lbl_80325548 -lbl_80325530: -/* 80325530 7F 63 DB 78 */ mr r3, r27 -/* 80325534 81 9B 00 00 */ lwz r12, 0(r27) -/* 80325538 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8032553C 7D 89 03 A6 */ mtctr r12 -/* 80325540 4E 80 04 21 */ bctrl -/* 80325544 83 7B 00 04 */ lwz r27, 4(r27) -lbl_80325548: -/* 80325548 28 1B 00 00 */ cmplwi r27, 0 -/* 8032554C 40 82 FF E4 */ bne lbl_80325530 -/* 80325550 3B 9C 00 01 */ addi r28, r28, 1 -/* 80325554 3B FF 00 04 */ addi r31, r31, 4 -lbl_80325558: -/* 80325558 7C 1C F0 40 */ cmplw r28, r30 -/* 8032555C 41 80 FF CC */ blt lbl_80325528 -/* 80325560 39 61 00 20 */ addi r11, r1, 0x20 -/* 80325564 48 03 CC BD */ bl _restgpr_27 -/* 80325568 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8032556C 7C 08 03 A6 */ mtlr r0 -/* 80325570 38 21 00 20 */ addi r1, r1, 0x20 -/* 80325574 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s deleted file mode 100644 index 4d23047e70d..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s +++ /dev/null @@ -1,35 +0,0 @@ -lbl_80325578: -/* 80325578 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8032557C 7C 08 02 A6 */ mflr r0 -/* 80325580 90 01 00 24 */ stw r0, 0x24(r1) -/* 80325584 39 61 00 20 */ addi r11, r1, 0x20 -/* 80325588 48 03 CC 51 */ bl _savegpr_28 -/* 8032558C 80 83 00 04 */ lwz r4, 4(r3) -/* 80325590 3B A4 FF FF */ addi r29, r4, -1 -/* 80325594 83 C3 00 00 */ lwz r30, 0(r3) -/* 80325598 57 BF 10 3A */ slwi r31, r29, 2 -/* 8032559C 48 00 00 34 */ b lbl_803255D0 -lbl_803255A0: -/* 803255A0 7F 9E F8 2E */ lwzx r28, r30, r31 -/* 803255A4 48 00 00 1C */ b lbl_803255C0 -lbl_803255A8: -/* 803255A8 7F 83 E3 78 */ mr r3, r28 -/* 803255AC 81 9C 00 00 */ lwz r12, 0(r28) -/* 803255B0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 803255B4 7D 89 03 A6 */ mtctr r12 -/* 803255B8 4E 80 04 21 */ bctrl -/* 803255BC 83 9C 00 04 */ lwz r28, 4(r28) -lbl_803255C0: -/* 803255C0 28 1C 00 00 */ cmplwi r28, 0 -/* 803255C4 40 82 FF E4 */ bne lbl_803255A8 -/* 803255C8 3B BD FF FF */ addi r29, r29, -1 -/* 803255CC 3B FF FF FC */ addi r31, r31, -4 -lbl_803255D0: -/* 803255D0 2C 1D 00 00 */ cmpwi r29, 0 -/* 803255D4 40 80 FF CC */ bge lbl_803255A0 -/* 803255D8 39 61 00 20 */ addi r11, r1, 0x20 -/* 803255DC 48 03 CC 49 */ bl _restgpr_28 -/* 803255E0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803255E4 7C 08 03 A6 */ mtlr r0 -/* 803255E8 38 21 00 20 */ addi r1, r1, 0x20 -/* 803255EC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/draw__13J3DDrawBufferCFv.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/draw__13J3DDrawBufferCFv.s deleted file mode 100644 index 902b7934547..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/draw__13J3DDrawBufferCFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_803254AC: -/* 803254AC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803254B0 7C 08 02 A6 */ mflr r0 -/* 803254B4 90 01 00 24 */ stw r0, 0x24(r1) -/* 803254B8 80 03 00 08 */ lwz r0, 8(r3) -/* 803254BC 1C A0 00 0C */ mulli r5, r0, 0xc -/* 803254C0 3C 80 80 3D */ lis r4, drawFuncTable__13J3DDrawBuffer@ha /* 0x803CEC90@ha */ -/* 803254C4 38 04 EC 90 */ addi r0, r4, drawFuncTable__13J3DDrawBuffer@l /* 0x803CEC90@l */ -/* 803254C8 7C A0 2A 14 */ add r5, r0, r5 -/* 803254CC 80 85 00 00 */ lwz r4, 0(r5) -/* 803254D0 80 05 00 04 */ lwz r0, 4(r5) -/* 803254D4 90 81 00 08 */ stw r4, 8(r1) -/* 803254D8 90 01 00 0C */ stw r0, 0xc(r1) -/* 803254DC 80 05 00 08 */ lwz r0, 8(r5) -/* 803254E0 90 01 00 10 */ stw r0, 0x10(r1) -/* 803254E4 39 81 00 08 */ addi r12, r1, 8 -/* 803254E8 48 03 CB 9D */ bl __ptmf_scall -/* 803254EC 60 00 00 00 */ nop -/* 803254F0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803254F4 7C 08 03 A6 */ mtlr r0 -/* 803254F8 38 21 00 20 */ addi r1, r1, 0x20 -/* 803254FC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket.s deleted file mode 100644 index 7dce1185924..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryInvalidSort__13J3DDrawBufferFP12J3DMatPacket.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80325404: -/* 80325404 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80325408 7C 08 02 A6 */ mflr r0 -/* 8032540C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80325410 38 00 00 00 */ li r0, 0 -/* 80325414 90 04 00 04 */ stw r0, 4(r4) -/* 80325418 90 04 00 08 */ stw r0, 8(r4) -/* 8032541C 80 A4 00 2C */ lwz r5, 0x2c(r4) -/* 80325420 90 05 00 04 */ stw r0, 4(r5) -/* 80325424 90 05 00 08 */ stw r0, 8(r5) -/* 80325428 80 63 00 20 */ lwz r3, 0x20(r3) -/* 8032542C 28 03 00 00 */ cmplwi r3, 0 -/* 80325430 41 82 00 14 */ beq lbl_80325444 -/* 80325434 80 84 00 2C */ lwz r4, 0x2c(r4) -/* 80325438 4B FE D3 21 */ bl addChildPacket__9J3DPacketFP9J3DPacket -/* 8032543C 38 60 00 01 */ li r3, 1 -/* 80325440 48 00 00 08 */ b lbl_80325448 -lbl_80325444: -/* 80325444 38 60 00 00 */ li r3, 0 -lbl_80325448: -/* 80325448 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8032544C 7C 08 03 A6 */ mtlr r0 -/* 80325450 38 21 00 10 */ addi r1, r1, 0x10 -/* 80325454 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryModelSort__13J3DDrawBufferFP12J3DMatPacket.s b/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryModelSort__13J3DDrawBufferFP12J3DMatPacket.s deleted file mode 100644 index 024a7f4b6c6..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DDrawBuffer/entryModelSort__13J3DDrawBufferFP12J3DMatPacket.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_803253B4: -/* 803253B4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803253B8 7C 08 02 A6 */ mflr r0 -/* 803253BC 90 01 00 14 */ stw r0, 0x14(r1) -/* 803253C0 38 00 00 00 */ li r0, 0 -/* 803253C4 90 04 00 04 */ stw r0, 4(r4) -/* 803253C8 90 04 00 08 */ stw r0, 8(r4) -/* 803253CC 80 A4 00 2C */ lwz r5, 0x2c(r4) -/* 803253D0 90 05 00 04 */ stw r0, 4(r5) -/* 803253D4 90 05 00 08 */ stw r0, 8(r5) -/* 803253D8 80 63 00 20 */ lwz r3, 0x20(r3) -/* 803253DC 28 03 00 00 */ cmplwi r3, 0 -/* 803253E0 41 82 00 10 */ beq lbl_803253F0 -/* 803253E4 4B FE D3 75 */ bl addChildPacket__9J3DPacketFP9J3DPacket -/* 803253E8 38 60 00 01 */ li r3, 1 -/* 803253EC 48 00 00 08 */ b lbl_803253F4 -lbl_803253F0: -/* 803253F0 38 60 00 00 */ li r3, 0 -lbl_803253F4: -/* 803253F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803253F8 7C 08 03 A6 */ mtlr r0 -/* 803253FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80325400 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphBase/J3DPacket/entry__12J3DMatPacketFP13J3DDrawBuffer.s b/asm/JSystem/J3DGraphBase/J3DPacket/entry__12J3DMatPacketFP13J3DDrawBuffer.s deleted file mode 100644 index 8ae797a67f0..00000000000 --- a/asm/JSystem/J3DGraphBase/J3DPacket/entry__12J3DMatPacketFP13J3DDrawBuffer.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_80313048: -/* 80313048 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8031304C 7C 08 02 A6 */ mflr r0 -/* 80313050 90 01 00 24 */ stw r0, 0x24(r1) -/* 80313054 7C 66 1B 78 */ mr r6, r3 -/* 80313058 80 04 00 0C */ lwz r0, 0xc(r4) -/* 8031305C 1C A0 00 0C */ mulli r5, r0, 0xc -/* 80313060 3C 60 80 3D */ lis r3, sortFuncTable__13J3DDrawBuffer@ha /* 0x803CEC30@ha */ -/* 80313064 38 03 EC 30 */ addi r0, r3, sortFuncTable__13J3DDrawBuffer@l /* 0x803CEC30@l */ -/* 80313068 7C A0 2A 14 */ add r5, r0, r5 -/* 8031306C 80 65 00 00 */ lwz r3, 0(r5) -/* 80313070 80 05 00 04 */ lwz r0, 4(r5) -/* 80313074 90 61 00 08 */ stw r3, 8(r1) -/* 80313078 90 01 00 0C */ stw r0, 0xc(r1) -/* 8031307C 80 05 00 08 */ lwz r0, 8(r5) -/* 80313080 90 01 00 10 */ stw r0, 0x10(r1) -/* 80313084 7C 83 23 78 */ mr r3, r4 -/* 80313088 7C C4 33 78 */ mr r4, r6 -/* 8031308C 39 81 00 08 */ addi r12, r1, 8 -/* 80313090 48 04 EF F5 */ bl __ptmf_scall -/* 80313094 60 00 00 00 */ nop -/* 80313098 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8031309C 7C 08 03 A6 */ mtlr r0 -/* 803130A0 38 21 00 20 */ addi r1, r1, 0x20 -/* 803130A4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DJointFactory/__ct__15J3DJointFactoryFRC13J3DJointBlock.s b/asm/JSystem/J3DGraphLoader/J3DJointFactory/__ct__15J3DJointFactoryFRC13J3DJointBlock.s deleted file mode 100644 index f798834a78c..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DJointFactory/__ct__15J3DJointFactoryFRC13J3DJointBlock.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_80337178: -/* 80337178 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8033717C 7C 08 02 A6 */ mflr r0 -/* 80337180 90 01 00 14 */ stw r0, 0x14(r1) -/* 80337184 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80337188 93 C1 00 08 */ stw r30, 8(r1) -/* 8033718C 7C 7E 1B 78 */ mr r30, r3 -/* 80337190 7C 9F 23 78 */ mr r31, r4 -/* 80337194 7F E3 FB 78 */ mr r3, r31 -/* 80337198 80 84 00 0C */ lwz r4, 0xc(r4) -/* 8033719C 48 00 01 9D */ bl func_80337338 -/* 803371A0 90 7E 00 00 */ stw r3, 0(r30) -/* 803371A4 7F E3 FB 78 */ mr r3, r31 -/* 803371A8 80 9F 00 10 */ lwz r4, 0x10(r31) -/* 803371AC 4B FF F5 D1 */ bl func_8033677C -/* 803371B0 90 7E 00 04 */ stw r3, 4(r30) -/* 803371B4 7F C3 F3 78 */ mr r3, r30 -/* 803371B8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803371BC 83 C1 00 08 */ lwz r30, 8(r1) -/* 803371C0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803371C4 7C 08 03 A6 */ mtlr r0 -/* 803371C8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803371CC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s b/asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s deleted file mode 100644 index ae2e6929e89..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s +++ /dev/null @@ -1,93 +0,0 @@ -lbl_803371D0: -/* 803371D0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803371D4 7C 08 02 A6 */ mflr r0 -/* 803371D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 803371DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803371E0 93 C1 00 08 */ stw r30, 8(r1) -/* 803371E4 7C 7F 1B 78 */ mr r31, r3 -/* 803371E8 7C 9E 23 78 */ mr r30, r4 -/* 803371EC 38 60 00 5C */ li r3, 0x5c -/* 803371F0 4B F9 7A 5D */ bl __nw__FUl -/* 803371F4 7C 64 1B 79 */ or. r4, r3, r3 -/* 803371F8 41 82 00 0C */ beq lbl_80337204 -/* 803371FC 4B FF 7F 75 */ bl __ct__8J3DJointFv -/* 80337200 7C 64 1B 78 */ mr r4, r3 -lbl_80337204: -/* 80337204 B3 C4 00 14 */ sth r30, 0x14(r4) -/* 80337208 80 BF 00 00 */ lwz r5, 0(r31) -/* 8033720C 80 7F 00 04 */ lwz r3, 4(r31) -/* 80337210 57 C0 08 3C */ slwi r0, r30, 1 -/* 80337214 7C 63 02 2E */ lhzx r3, r3, r0 -/* 80337218 54 63 30 32 */ slwi r3, r3, 6 -/* 8033721C 7C 65 1A 2E */ lhzx r3, r5, r3 -/* 80337220 98 64 00 16 */ stb r3, 0x16(r4) -/* 80337224 80 BF 00 00 */ lwz r5, 0(r31) -/* 80337228 80 7F 00 04 */ lwz r3, 4(r31) -/* 8033722C 7C 63 02 2E */ lhzx r3, r3, r0 -/* 80337230 54 63 30 32 */ slwi r3, r3, 6 -/* 80337234 7C 65 1A 14 */ add r3, r5, r3 -/* 80337238 88 63 00 02 */ lbz r3, 2(r3) -/* 8033723C 98 64 00 17 */ stb r3, 0x17(r4) -/* 80337240 80 BF 00 00 */ lwz r5, 0(r31) -/* 80337244 80 7F 00 04 */ lwz r3, 4(r31) -/* 80337248 7C 63 02 2E */ lhzx r3, r3, r0 -/* 8033724C 54 63 30 32 */ slwi r3, r3, 6 -/* 80337250 38 C3 00 04 */ addi r6, r3, 4 -/* 80337254 7C C5 32 14 */ add r6, r5, r6 -/* 80337258 E0 06 00 00 */ psq_l f0, 0(r6), 0, 0 /* qr0 */ -/* 8033725C F0 04 00 18 */ psq_st f0, 24(r4), 0, 0 /* qr0 */ -/* 80337260 C0 06 00 08 */ lfs f0, 8(r6) -/* 80337264 D0 04 00 20 */ stfs f0, 0x20(r4) -/* 80337268 80 66 00 0C */ lwz r3, 0xc(r6) -/* 8033726C 90 64 00 24 */ stw r3, 0x24(r4) -/* 80337270 A8 66 00 10 */ lha r3, 0x10(r6) -/* 80337274 B0 64 00 28 */ sth r3, 0x28(r4) -/* 80337278 E0 06 00 14 */ psq_l f0, 20(r6), 0, 0 /* qr0 */ -/* 8033727C F0 04 00 2C */ psq_st f0, 44(r4), 0, 0 /* qr0 */ -/* 80337280 C0 06 00 1C */ lfs f0, 0x1c(r6) -/* 80337284 D0 04 00 34 */ stfs f0, 0x34(r4) -/* 80337288 80 BF 00 00 */ lwz r5, 0(r31) -/* 8033728C 80 7F 00 04 */ lwz r3, 4(r31) -/* 80337290 7C 63 02 2E */ lhzx r3, r3, r0 -/* 80337294 54 63 30 32 */ slwi r3, r3, 6 -/* 80337298 7C 65 1A 14 */ add r3, r5, r3 -/* 8033729C C0 03 00 24 */ lfs f0, 0x24(r3) -/* 803372A0 D0 04 00 38 */ stfs f0, 0x38(r4) -/* 803372A4 80 BF 00 00 */ lwz r5, 0(r31) -/* 803372A8 80 7F 00 04 */ lwz r3, 4(r31) -/* 803372AC 7C 63 02 2E */ lhzx r3, r3, r0 -/* 803372B0 54 63 30 32 */ slwi r3, r3, 6 -/* 803372B4 38 63 00 28 */ addi r3, r3, 0x28 -/* 803372B8 7C 65 1A 14 */ add r3, r5, r3 -/* 803372BC C0 03 00 00 */ lfs f0, 0(r3) -/* 803372C0 D0 04 00 3C */ stfs f0, 0x3c(r4) -/* 803372C4 C0 03 00 04 */ lfs f0, 4(r3) -/* 803372C8 D0 04 00 40 */ stfs f0, 0x40(r4) -/* 803372CC C0 03 00 08 */ lfs f0, 8(r3) -/* 803372D0 D0 04 00 44 */ stfs f0, 0x44(r4) -/* 803372D4 80 BF 00 00 */ lwz r5, 0(r31) -/* 803372D8 80 7F 00 04 */ lwz r3, 4(r31) -/* 803372DC 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803372E0 54 03 30 32 */ slwi r3, r0, 6 -/* 803372E4 38 63 00 34 */ addi r3, r3, 0x34 -/* 803372E8 7C 65 1A 14 */ add r3, r5, r3 -/* 803372EC C0 03 00 00 */ lfs f0, 0(r3) -/* 803372F0 D0 04 00 48 */ stfs f0, 0x48(r4) -/* 803372F4 C0 03 00 04 */ lfs f0, 4(r3) -/* 803372F8 D0 04 00 4C */ stfs f0, 0x4c(r4) -/* 803372FC C0 03 00 08 */ lfs f0, 8(r3) -/* 80337300 D0 04 00 50 */ stfs f0, 0x50(r4) -/* 80337304 38 60 00 00 */ li r3, 0 -/* 80337308 90 64 00 54 */ stw r3, 0x54(r4) -/* 8033730C 88 04 00 17 */ lbz r0, 0x17(r4) -/* 80337310 28 00 00 FF */ cmplwi r0, 0xff -/* 80337314 40 82 00 08 */ bne lbl_8033731C -/* 80337318 98 64 00 17 */ stb r3, 0x17(r4) -lbl_8033731C: -/* 8033731C 7C 83 23 78 */ mr r3, r4 -/* 80337320 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80337324 83 C1 00 08 */ lwz r30, 8(r1) -/* 80337328 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8033732C 7C 08 03 A6 */ mtlr r0 -/* 80337330 38 21 00 10 */ addi r1, r1, 0x10 -/* 80337334 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DJointFactory/func_80337338.s b/asm/JSystem/J3DGraphLoader/J3DJointFactory/func_80337338.s deleted file mode 100644 index 8c8dd696c07..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DJointFactory/func_80337338.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80337338: -/* 80337338 28 04 00 00 */ cmplwi r4, 0 -/* 8033733C 40 82 00 0C */ bne lbl_80337348 -/* 80337340 38 60 00 00 */ li r3, 0 -/* 80337344 4E 80 00 20 */ blr -lbl_80337348: -/* 80337348 7C 63 22 14 */ add r3, r3, r4 -/* 8033734C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/__ct__15J3DShapeFactoryFRC13J3DShapeBlock.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/__ct__15J3DShapeFactoryFRC13J3DShapeBlock.s deleted file mode 100644 index 868871177c4..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/__ct__15J3DShapeFactoryFRC13J3DShapeBlock.s +++ /dev/null @@ -1,45 +0,0 @@ -lbl_80337350: -/* 80337350 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80337354 7C 08 02 A6 */ mflr r0 -/* 80337358 90 01 00 14 */ stw r0, 0x14(r1) -/* 8033735C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80337360 93 C1 00 08 */ stw r30, 8(r1) -/* 80337364 7C 7E 1B 78 */ mr r30, r3 -/* 80337368 7C 9F 23 78 */ mr r31, r4 -/* 8033736C 7F E3 FB 78 */ mr r3, r31 -/* 80337370 80 84 00 0C */ lwz r4, 0xc(r4) -/* 80337374 4B FF F3 F1 */ bl func_80336764 -/* 80337378 90 7E 00 00 */ stw r3, 0(r30) -/* 8033737C 7F E3 FB 78 */ mr r3, r31 -/* 80337380 80 9F 00 10 */ lwz r4, 0x10(r31) -/* 80337384 4B FF F3 F9 */ bl func_8033677C -/* 80337388 90 7E 00 04 */ stw r3, 4(r30) -/* 8033738C 7F E3 FB 78 */ mr r3, r31 -/* 80337390 80 9F 00 18 */ lwz r4, 0x18(r31) -/* 80337394 48 00 07 95 */ bl func_80337B28 -/* 80337398 90 7E 00 08 */ stw r3, 8(r30) -/* 8033739C 7F E3 FB 78 */ mr r3, r31 -/* 803373A0 80 9F 00 1C */ lwz r4, 0x1c(r31) -/* 803373A4 4B FF F3 D9 */ bl func_8033677C -/* 803373A8 90 7E 00 0C */ stw r3, 0xc(r30) -/* 803373AC 7F E3 FB 78 */ mr r3, r31 -/* 803373B0 80 9F 00 20 */ lwz r4, 0x20(r31) -/* 803373B4 48 00 07 5D */ bl func_80337B10 -/* 803373B8 90 7E 00 10 */ stw r3, 0x10(r30) -/* 803373BC 7F E3 FB 78 */ mr r3, r31 -/* 803373C0 80 9F 00 24 */ lwz r4, 0x24(r31) -/* 803373C4 48 00 07 35 */ bl func_80337AF8 -/* 803373C8 90 7E 00 14 */ stw r3, 0x14(r30) -/* 803373CC 7F E3 FB 78 */ mr r3, r31 -/* 803373D0 80 9F 00 28 */ lwz r4, 0x28(r31) -/* 803373D4 48 00 07 0D */ bl func_80337AE0 -/* 803373D8 90 7E 00 18 */ stw r3, 0x18(r30) -/* 803373DC 38 00 00 00 */ li r0, 0 -/* 803373E0 90 1E 00 1C */ stw r0, 0x1c(r30) -/* 803373E4 7F C3 F3 78 */ mr r3, r30 -/* 803373E8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803373EC 83 C1 00 08 */ lwz r30, 8(r1) -/* 803373F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803373F4 7C 08 03 A6 */ mtlr r0 -/* 803373F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 803373FC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/allocVcdVatCmdBuffer__15J3DShapeFactoryFUl.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/allocVcdVatCmdBuffer__15J3DShapeFactoryFUl.s deleted file mode 100644 index 38f6609f1b5..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/allocVcdVatCmdBuffer__15J3DShapeFactoryFUl.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_803378D8: -/* 803378D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803378DC 7C 08 02 A6 */ mflr r0 -/* 803378E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 803378E4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803378E8 93 C1 00 08 */ stw r30, 8(r1) -/* 803378EC 7C 7E 1B 78 */ mr r30, r3 -/* 803378F0 1F E4 00 C0 */ mulli r31, r4, 0xc0 -/* 803378F4 7F E3 FB 78 */ mr r3, r31 -/* 803378F8 38 80 00 20 */ li r4, 0x20 -/* 803378FC 4B F9 73 F1 */ bl __nwa__FUli -/* 80337900 90 7E 00 1C */ stw r3, 0x1c(r30) -/* 80337904 38 60 00 00 */ li r3, 0 -/* 80337908 57 E4 F0 BE */ srwi r4, r31, 2 -/* 8033790C 7C 60 1B 78 */ mr r0, r3 -/* 80337910 7C 89 03 A6 */ mtctr r4 -/* 80337914 28 04 00 00 */ cmplwi r4, 0 -/* 80337918 40 81 00 14 */ ble lbl_8033792C -lbl_8033791C: -/* 8033791C 80 9E 00 1C */ lwz r4, 0x1c(r30) -/* 80337920 7C 04 19 2E */ stwx r0, r4, r3 -/* 80337924 38 63 00 04 */ addi r3, r3, 4 -/* 80337928 42 00 FF F4 */ bdnz lbl_8033791C -lbl_8033792C: -/* 8033792C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80337930 83 C1 00 08 */ lwz r30, 8(r1) -/* 80337934 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80337938 7C 08 03 A6 */ mtlr r0 -/* 8033793C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80337940 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeShapeMtx__15J3DShapeFactoryCFUlii.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeShapeMtx__15J3DShapeFactoryCFUlii.s deleted file mode 100644 index 7e23882c4fd..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeShapeMtx__15J3DShapeFactoryCFUlii.s +++ /dev/null @@ -1,75 +0,0 @@ -lbl_803379E8: -/* 803379E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803379EC 7C 08 02 A6 */ mflr r0 -/* 803379F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 803379F4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803379F8 80 C3 00 00 */ lwz r6, 0(r3) -/* 803379FC 80 63 00 04 */ lwz r3, 4(r3) -/* 80337A00 54 A0 08 3C */ slwi r0, r5, 1 -/* 80337A04 7C 03 02 2E */ lhzx r0, r3, r0 -/* 80337A08 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 80337A0C 3B E0 00 00 */ li r31, 0 -/* 80337A10 54 83 06 F6 */ rlwinm r3, r4, 0, 0x1b, 0x1b -/* 80337A14 2C 03 00 10 */ cmpwi r3, 0x10 -/* 80337A18 41 82 00 14 */ beq lbl_80337A2C -/* 80337A1C 40 80 00 70 */ bge lbl_80337A8C -/* 80337A20 2C 03 00 00 */ cmpwi r3, 0 -/* 80337A24 41 82 00 68 */ beq lbl_80337A8C -/* 80337A28 48 00 00 64 */ b lbl_80337A8C -lbl_80337A2C: -/* 80337A2C 7C 06 00 AE */ lbzx r0, r6, r0 -/* 80337A30 2C 00 00 02 */ cmpwi r0, 2 -/* 80337A34 41 82 00 34 */ beq lbl_80337A68 -/* 80337A38 40 80 00 14 */ bge lbl_80337A4C -/* 80337A3C 2C 00 00 00 */ cmpwi r0, 0 -/* 80337A40 41 82 00 18 */ beq lbl_80337A58 -/* 80337A44 40 80 00 1C */ bge lbl_80337A60 -/* 80337A48 48 00 00 30 */ b lbl_80337A78 -lbl_80337A4C: -/* 80337A4C 2C 00 00 04 */ cmpwi r0, 4 -/* 80337A50 40 80 00 28 */ bge lbl_80337A78 -/* 80337A54 48 00 00 1C */ b lbl_80337A70 -lbl_80337A58: -/* 80337A58 3B E0 00 08 */ li r31, 8 -/* 80337A5C 48 00 00 6C */ b lbl_80337AC8 -lbl_80337A60: -/* 80337A60 3B E0 00 08 */ li r31, 8 -/* 80337A64 48 00 00 64 */ b lbl_80337AC8 -lbl_80337A68: -/* 80337A68 3B E0 00 08 */ li r31, 8 -/* 80337A6C 48 00 00 5C */ b lbl_80337AC8 -lbl_80337A70: -/* 80337A70 3B E0 00 10 */ li r31, 0x10 -/* 80337A74 48 00 00 54 */ b lbl_80337AC8 -lbl_80337A78: -/* 80337A78 3C 60 80 3A */ lis r3, J3DShapeFactory__stringBase0@ha /* 0x803A2100@ha */ -/* 80337A7C 38 63 21 00 */ addi r3, r3, J3DShapeFactory__stringBase0@l /* 0x803A2100@l */ -/* 80337A80 4C C6 31 82 */ crclr 6 -/* 80337A84 4B CC F0 39 */ bl OSReport -/* 80337A88 48 00 00 40 */ b lbl_80337AC8 -lbl_80337A8C: -/* 80337A8C 7C 06 00 AE */ lbzx r0, r6, r0 -/* 80337A90 2C 00 00 03 */ cmpwi r0, 3 -/* 80337A94 41 82 00 1C */ beq lbl_80337AB0 -/* 80337A98 40 80 00 20 */ bge lbl_80337AB8 -/* 80337A9C 2C 00 00 00 */ cmpwi r0, 0 -/* 80337AA0 40 80 00 08 */ bge lbl_80337AA8 -/* 80337AA4 48 00 00 14 */ b lbl_80337AB8 -lbl_80337AA8: -/* 80337AA8 3B E0 00 08 */ li r31, 8 -/* 80337AAC 48 00 00 1C */ b lbl_80337AC8 -lbl_80337AB0: -/* 80337AB0 3B E0 00 10 */ li r31, 0x10 -/* 80337AB4 48 00 00 14 */ b lbl_80337AC8 -lbl_80337AB8: -/* 80337AB8 3C 60 80 3A */ lis r3, J3DShapeFactory__stringBase0@ha /* 0x803A2100@ha */ -/* 80337ABC 38 63 21 00 */ addi r3, r3, J3DShapeFactory__stringBase0@l /* 0x803A2100@l */ -/* 80337AC0 4C C6 31 82 */ crclr 6 -/* 80337AC4 4B CC EF F9 */ bl OSReport -lbl_80337AC8: -/* 80337AC8 7F E3 FB 78 */ mr r3, r31 -/* 80337ACC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80337AD0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80337AD4 7C 08 03 A6 */ mtlr r0 -/* 80337AD8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80337ADC 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s deleted file mode 100644 index 99ee9b638ef..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/calcSizeVcdVatCmdBuffer__15J3DShapeFactoryFUl.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_803379D8: -/* 803379D8 1C 64 00 C0 */ mulli r3, r4, 0xc0 -/* 803379DC 38 03 00 1F */ addi r0, r3, 0x1f -/* 803379E0 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a -/* 803379E4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/create__15J3DShapeFactoryFiUlP14_GXVtxDescList.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/create__15J3DShapeFactoryFiUlP14_GXVtxDescList.s deleted file mode 100644 index 8b6e9fb73c1..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/create__15J3DShapeFactoryFiUlP14_GXVtxDescList.s +++ /dev/null @@ -1,115 +0,0 @@ -lbl_80337400: -/* 80337400 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80337404 7C 08 02 A6 */ mflr r0 -/* 80337408 90 01 00 24 */ stw r0, 0x24(r1) -/* 8033740C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80337410 48 02 AD C1 */ bl _savegpr_26 -/* 80337414 7C 7B 1B 78 */ mr r27, r3 -/* 80337418 7C 9C 23 78 */ mr r28, r4 -/* 8033741C 7C BD 2B 78 */ mr r29, r5 -/* 80337420 38 60 00 68 */ li r3, 0x68 -/* 80337424 4B F9 78 29 */ bl __nw__FUl -/* 80337428 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8033742C 41 82 00 2C */ beq lbl_80337458 -/* 80337430 3C 80 80 3D */ lis r4, __vt__8J3DShape@ha /* 0x803CDC78@ha */ -/* 80337434 38 04 DC 78 */ addi r0, r4, __vt__8J3DShape@l /* 0x803CDC78@l */ -/* 80337438 90 1F 00 00 */ stw r0, 0(r31) -/* 8033743C 3C 80 3C F4 */ lis r4, 0x3CF4 /* 0x3CF3CF00@ha */ -/* 80337440 38 04 CF 00 */ addi r0, r4, 0xCF00 /* 0x3CF3CF00@l */ -/* 80337444 90 1F 00 40 */ stw r0, 0x40(r31) -/* 80337448 3C 80 00 F4 */ lis r4, 0x00F4 /* 0x00F3CF3C@ha */ -/* 8033744C 38 04 CF 3C */ addi r0, r4, 0xCF3C /* 0x00F3CF3C@l */ -/* 80337450 90 1F 00 44 */ stw r0, 0x44(r31) -/* 80337454 4B FD D6 F5 */ bl initialize__8J3DShapeFv -lbl_80337458: -/* 80337458 80 9B 00 00 */ lwz r4, 0(r27) -/* 8033745C 80 7B 00 04 */ lwz r3, 4(r27) -/* 80337460 57 9E 08 3C */ slwi r30, r28, 1 -/* 80337464 7C 03 F2 2E */ lhzx r0, r3, r30 -/* 80337468 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 8033746C 7C 64 02 14 */ add r3, r4, r0 -/* 80337470 A0 03 00 02 */ lhz r0, 2(r3) -/* 80337474 B0 1F 00 0A */ sth r0, 0xa(r31) -/* 80337478 80 9B 00 00 */ lwz r4, 0(r27) -/* 8033747C 80 7B 00 04 */ lwz r3, 4(r27) -/* 80337480 7C 03 F2 2E */ lhzx r0, r3, r30 -/* 80337484 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 80337488 7C 64 02 14 */ add r3, r4, r0 -/* 8033748C C0 03 00 0C */ lfs f0, 0xc(r3) -/* 80337490 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 80337494 80 BB 00 08 */ lwz r5, 8(r27) -/* 80337498 80 9B 00 00 */ lwz r4, 0(r27) -/* 8033749C 80 7B 00 04 */ lwz r3, 4(r27) -/* 803374A0 7C 03 F2 2E */ lhzx r0, r3, r30 -/* 803374A4 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 803374A8 7C 64 02 14 */ add r3, r4, r0 -/* 803374AC A0 03 00 04 */ lhz r0, 4(r3) -/* 803374B0 7C 05 02 14 */ add r0, r5, r0 -/* 803374B4 90 1F 00 30 */ stw r0, 0x30(r31) -/* 803374B8 A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 803374BC 54 03 10 3A */ slwi r3, r0, 2 -/* 803374C0 4B F9 78 05 */ bl __nwa__FUl -/* 803374C4 90 7F 00 38 */ stw r3, 0x38(r31) -/* 803374C8 A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 803374CC 54 03 10 3A */ slwi r3, r0, 2 -/* 803374D0 4B F9 77 F5 */ bl __nwa__FUl -/* 803374D4 90 7F 00 3C */ stw r3, 0x3c(r31) -/* 803374D8 80 9B 00 00 */ lwz r4, 0(r27) -/* 803374DC 80 7B 00 04 */ lwz r3, 4(r27) -/* 803374E0 7C 03 F2 2E */ lhzx r0, r3, r30 -/* 803374E4 1C 60 00 28 */ mulli r3, r0, 0x28 -/* 803374E8 38 63 00 10 */ addi r3, r3, 0x10 -/* 803374EC 7C 64 1A 14 */ add r3, r4, r3 -/* 803374F0 C0 03 00 00 */ lfs f0, 0(r3) -/* 803374F4 D0 1F 00 14 */ stfs f0, 0x14(r31) -/* 803374F8 C0 03 00 04 */ lfs f0, 4(r3) -/* 803374FC D0 1F 00 18 */ stfs f0, 0x18(r31) -/* 80337500 C0 03 00 08 */ lfs f0, 8(r3) -/* 80337504 D0 1F 00 1C */ stfs f0, 0x1c(r31) -/* 80337508 80 9B 00 00 */ lwz r4, 0(r27) -/* 8033750C 80 7B 00 04 */ lwz r3, 4(r27) -/* 80337510 7C 03 F2 2E */ lhzx r0, r3, r30 -/* 80337514 1C 60 00 28 */ mulli r3, r0, 0x28 -/* 80337518 38 63 00 1C */ addi r3, r3, 0x1c -/* 8033751C 7C 64 1A 14 */ add r3, r4, r3 -/* 80337520 C0 03 00 00 */ lfs f0, 0(r3) -/* 80337524 D0 1F 00 20 */ stfs f0, 0x20(r31) -/* 80337528 C0 03 00 04 */ lfs f0, 4(r3) -/* 8033752C D0 1F 00 24 */ stfs f0, 0x24(r31) -/* 80337530 C0 03 00 08 */ lfs f0, 8(r3) -/* 80337534 D0 1F 00 28 */ stfs f0, 0x28(r31) -/* 80337538 80 7B 00 1C */ lwz r3, 0x1c(r27) -/* 8033753C 1C 1C 00 C0 */ mulli r0, r28, 0xc0 -/* 80337540 7C 03 02 14 */ add r0, r3, r0 -/* 80337544 90 1F 00 2C */ stw r0, 0x2c(r31) -/* 80337548 3B 40 00 00 */ li r26, 0 -/* 8033754C 3B C0 00 00 */ li r30, 0 -/* 80337550 48 00 00 40 */ b lbl_80337590 -lbl_80337554: -/* 80337554 7F 63 DB 78 */ mr r3, r27 -/* 80337558 7F A4 EB 78 */ mr r4, r29 -/* 8033755C 7F 85 E3 78 */ mr r5, r28 -/* 80337560 7F 46 D3 78 */ mr r6, r26 -/* 80337564 48 00 00 59 */ bl newShapeMtx__15J3DShapeFactoryCFUlii -/* 80337568 80 9F 00 38 */ lwz r4, 0x38(r31) -/* 8033756C 7C 64 F1 2E */ stwx r3, r4, r30 -/* 80337570 7F 63 DB 78 */ mr r3, r27 -/* 80337574 7F 84 E3 78 */ mr r4, r28 -/* 80337578 7F 45 D3 78 */ mr r5, r26 -/* 8033757C 48 00 02 D1 */ bl newShapeDraw__15J3DShapeFactoryCFii -/* 80337580 80 9F 00 3C */ lwz r4, 0x3c(r31) -/* 80337584 7C 64 F1 2E */ stwx r3, r4, r30 -/* 80337588 3B 5A 00 01 */ addi r26, r26, 1 -/* 8033758C 3B DE 00 04 */ addi r30, r30, 4 -lbl_80337590: -/* 80337590 A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 80337594 7C 1A 00 00 */ cmpw r26, r0 -/* 80337598 41 80 FF BC */ blt lbl_80337554 -/* 8033759C B3 9F 00 08 */ sth r28, 8(r31) -/* 803375A0 7F E3 FB 78 */ mr r3, r31 -/* 803375A4 39 61 00 20 */ addi r11, r1, 0x20 -/* 803375A8 48 02 AC 75 */ bl _restgpr_26 -/* 803375AC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 803375B0 7C 08 03 A6 */ mtlr r0 -/* 803375B4 38 21 00 20 */ addi r1, r1, 0x20 -/* 803375B8 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AE0.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AE0.s deleted file mode 100644 index e3543786860..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AE0.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80337AE0: -/* 80337AE0 28 04 00 00 */ cmplwi r4, 0 -/* 80337AE4 40 82 00 0C */ bne lbl_80337AF0 -/* 80337AE8 38 60 00 00 */ li r3, 0 -/* 80337AEC 4E 80 00 20 */ blr -lbl_80337AF0: -/* 80337AF0 7C 63 22 14 */ add r3, r3, r4 -/* 80337AF4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AF8.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AF8.s deleted file mode 100644 index 6e38d3acd2a..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337AF8.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80337AF8: -/* 80337AF8 28 04 00 00 */ cmplwi r4, 0 -/* 80337AFC 40 82 00 0C */ bne lbl_80337B08 -/* 80337B00 38 60 00 00 */ li r3, 0 -/* 80337B04 4E 80 00 20 */ blr -lbl_80337B08: -/* 80337B08 7C 63 22 14 */ add r3, r3, r4 -/* 80337B0C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B10.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B10.s deleted file mode 100644 index 32f0712377c..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B10.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80337B10: -/* 80337B10 28 04 00 00 */ cmplwi r4, 0 -/* 80337B14 40 82 00 0C */ bne lbl_80337B20 -/* 80337B18 38 60 00 00 */ li r3, 0 -/* 80337B1C 4E 80 00 20 */ blr -lbl_80337B20: -/* 80337B20 7C 63 22 14 */ add r3, r3, r4 -/* 80337B24 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B28.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B28.s deleted file mode 100644 index 910957e6942..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/func_80337B28.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80337B28: -/* 80337B28 28 04 00 00 */ cmplwi r4, 0 -/* 80337B2C 40 82 00 0C */ bne lbl_80337B38 -/* 80337B30 38 60 00 00 */ li r3, 0 -/* 80337B34 4E 80 00 20 */ blr -lbl_80337B38: -/* 80337B38 7C 63 22 14 */ add r3, r3, r4 -/* 80337B3C 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeDraw__15J3DShapeFactoryCFii.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeDraw__15J3DShapeFactoryCFii.s deleted file mode 100644 index 8866bfd809b..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeDraw__15J3DShapeFactoryCFii.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_8033784C: -/* 8033784C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80337850 7C 08 02 A6 */ mflr r0 -/* 80337854 90 01 00 14 */ stw r0, 0x14(r1) -/* 80337858 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8033785C 93 C1 00 08 */ stw r30, 8(r1) -/* 80337860 7C 7E 1B 78 */ mr r30, r3 -/* 80337864 80 E3 00 18 */ lwz r7, 0x18(r3) -/* 80337868 80 C3 00 00 */ lwz r6, 0(r3) -/* 8033786C 80 63 00 04 */ lwz r3, 4(r3) -/* 80337870 54 80 08 3C */ slwi r0, r4, 1 -/* 80337874 7C 03 02 2E */ lhzx r0, r3, r0 -/* 80337878 1C 60 00 28 */ mulli r3, r0, 0x28 -/* 8033787C 38 03 00 08 */ addi r0, r3, 8 -/* 80337880 7C 06 02 2E */ lhzx r0, r6, r0 -/* 80337884 54 03 18 38 */ slwi r3, r0, 3 -/* 80337888 54 A0 18 38 */ slwi r0, r5, 3 -/* 8033788C 7F E3 02 14 */ add r31, r3, r0 -/* 80337890 7F E7 FA 14 */ add r31, r7, r31 -/* 80337894 38 60 00 0C */ li r3, 0xc -/* 80337898 4B F9 73 B5 */ bl __nw__FUl -/* 8033789C 7C 60 1B 79 */ or. r0, r3, r3 -/* 803378A0 41 82 00 1C */ beq lbl_803378BC -/* 803378A4 80 9E 00 10 */ lwz r4, 0x10(r30) -/* 803378A8 80 1F 00 04 */ lwz r0, 4(r31) -/* 803378AC 7C 84 02 14 */ add r4, r4, r0 -/* 803378B0 80 BF 00 00 */ lwz r5, 0(r31) -/* 803378B4 4B FD D2 09 */ bl __ct__12J3DShapeDrawFPCUcUl -/* 803378B8 7C 60 1B 78 */ mr r0, r3 -lbl_803378BC: -/* 803378BC 7C 03 03 78 */ mr r3, r0 -/* 803378C0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 803378C4 83 C1 00 08 */ lwz r30, 8(r1) -/* 803378C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 803378CC 7C 08 03 A6 */ mtlr r0 -/* 803378D0 38 21 00 10 */ addi r1, r1, 0x10 -/* 803378D4 4E 80 00 20 */ blr diff --git a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeMtx__15J3DShapeFactoryCFUlii.s b/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeMtx__15J3DShapeFactoryCFUlii.s deleted file mode 100644 index 67319b7256e..00000000000 --- a/asm/JSystem/J3DGraphLoader/J3DShapeFactory/newShapeMtx__15J3DShapeFactoryCFUlii.s +++ /dev/null @@ -1,183 +0,0 @@ -lbl_803375BC: -/* 803375BC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 803375C0 7C 08 02 A6 */ mflr r0 -/* 803375C4 90 01 00 24 */ stw r0, 0x24(r1) -/* 803375C8 39 61 00 20 */ addi r11, r1, 0x20 -/* 803375CC 48 02 AC 11 */ bl _savegpr_29 -/* 803375D0 7C 7D 1B 78 */ mr r29, r3 -/* 803375D4 3B E0 00 00 */ li r31, 0 -/* 803375D8 80 E3 00 00 */ lwz r7, 0(r3) -/* 803375DC 80 63 00 04 */ lwz r3, 4(r3) -/* 803375E0 54 A0 08 3C */ slwi r0, r5, 1 -/* 803375E4 7C 03 02 2E */ lhzx r0, r3, r0 -/* 803375E8 1C 00 00 28 */ mulli r0, r0, 0x28 -/* 803375EC 7C E7 02 14 */ add r7, r7, r0 -/* 803375F0 80 BD 00 14 */ lwz r5, 0x14(r29) -/* 803375F4 A0 07 00 06 */ lhz r0, 6(r7) -/* 803375F8 54 03 18 38 */ slwi r3, r0, 3 -/* 803375FC 54 C0 18 38 */ slwi r0, r6, 3 -/* 80337600 7F C3 02 14 */ add r30, r3, r0 -/* 80337604 7F C5 F2 14 */ add r30, r5, r30 -/* 80337608 54 80 06 F6 */ rlwinm r0, r4, 0, 0x1b, 0x1b -/* 8033760C 2C 00 00 10 */ cmpwi r0, 0x10 -/* 80337610 41 82 00 14 */ beq lbl_80337624 -/* 80337614 40 80 01 70 */ bge lbl_80337784 -/* 80337618 2C 00 00 00 */ cmpwi r0, 0 -/* 8033761C 41 82 01 68 */ beq lbl_80337784 -/* 80337620 48 00 01 64 */ b lbl_80337784 -lbl_80337624: -/* 80337624 88 07 00 00 */ lbz r0, 0(r7) -/* 80337628 2C 00 00 02 */ cmpwi r0, 2 -/* 8033762C 41 82 00 A0 */ beq lbl_803376CC -/* 80337630 40 80 00 14 */ bge lbl_80337644 -/* 80337634 2C 00 00 00 */ cmpwi r0, 0 -/* 80337638 41 82 00 18 */ beq lbl_80337650 -/* 8033763C 40 80 00 4C */ bge lbl_80337688 -/* 80337640 48 00 01 30 */ b lbl_80337770 -lbl_80337644: -/* 80337644 2C 00 00 04 */ cmpwi r0, 4 -/* 80337648 40 80 01 28 */ bge lbl_80337770 -/* 8033764C 48 00 00 C4 */ b lbl_80337710 -lbl_80337650: -/* 80337650 38 60 00 08 */ li r3, 8 -/* 80337654 4B F9 75 F9 */ bl __nw__FUl -/* 80337658 28 03 00 00 */ cmplwi r3, 0 -/* 8033765C 41 82 00 24 */ beq lbl_80337680 -/* 80337660 A0 BE 00 00 */ lhz r5, 0(r30) -/* 80337664 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 80337668 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 8033766C 90 03 00 00 */ stw r0, 0(r3) -/* 80337670 B0 A3 00 04 */ sth r5, 4(r3) -/* 80337674 3C 80 80 3D */ lis r4, __vt__21J3DShapeMtxConcatView@ha /* 0x803CDC1C@ha */ -/* 80337678 38 04 DC 1C */ addi r0, r4, __vt__21J3DShapeMtxConcatView@l /* 0x803CDC1C@l */ -/* 8033767C 90 03 00 00 */ stw r0, 0(r3) -lbl_80337680: -/* 80337680 7C 7F 1B 78 */ mr r31, r3 -/* 80337684 48 00 01 AC */ b lbl_80337830 -lbl_80337688: -/* 80337688 38 60 00 08 */ li r3, 8 -/* 8033768C 4B F9 75 C1 */ bl __nw__FUl -/* 80337690 28 03 00 00 */ cmplwi r3, 0 -/* 80337694 41 82 00 30 */ beq lbl_803376C4 -/* 80337698 A0 BE 00 00 */ lhz r5, 0(r30) -/* 8033769C 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 803376A0 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 803376A4 90 03 00 00 */ stw r0, 0(r3) -/* 803376A8 B0 A3 00 04 */ sth r5, 4(r3) -/* 803376AC 3C 80 80 3D */ lis r4, __vt__21J3DShapeMtxConcatView@ha /* 0x803CDC1C@ha */ -/* 803376B0 38 04 DC 1C */ addi r0, r4, __vt__21J3DShapeMtxConcatView@l /* 0x803CDC1C@l */ -/* 803376B4 90 03 00 00 */ stw r0, 0(r3) -/* 803376B8 3C 80 80 3D */ lis r4, __vt__27J3DShapeMtxBBoardConcatView@ha /* 0x803CDBAC@ha */ -/* 803376BC 38 04 DB AC */ addi r0, r4, __vt__27J3DShapeMtxBBoardConcatView@l /* 0x803CDBAC@l */ -/* 803376C0 90 03 00 00 */ stw r0, 0(r3) -lbl_803376C4: -/* 803376C4 7C 7F 1B 78 */ mr r31, r3 -/* 803376C8 48 00 01 68 */ b lbl_80337830 -lbl_803376CC: -/* 803376CC 38 60 00 08 */ li r3, 8 -/* 803376D0 4B F9 75 7D */ bl __nw__FUl -/* 803376D4 28 03 00 00 */ cmplwi r3, 0 -/* 803376D8 41 82 00 30 */ beq lbl_80337708 -/* 803376DC A0 BE 00 00 */ lhz r5, 0(r30) -/* 803376E0 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 803376E4 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 803376E8 90 03 00 00 */ stw r0, 0(r3) -/* 803376EC B0 A3 00 04 */ sth r5, 4(r3) -/* 803376F0 3C 80 80 3D */ lis r4, __vt__21J3DShapeMtxConcatView@ha /* 0x803CDC1C@ha */ -/* 803376F4 38 04 DC 1C */ addi r0, r4, __vt__21J3DShapeMtxConcatView@l /* 0x803CDC1C@l */ -/* 803376F8 90 03 00 00 */ stw r0, 0(r3) -/* 803376FC 3C 80 80 3D */ lis r4, __vt__28J3DShapeMtxYBBoardConcatView@ha /* 0x803CDB84@ha */ -/* 80337700 38 04 DB 84 */ addi r0, r4, __vt__28J3DShapeMtxYBBoardConcatView@l /* 0x803CDB84@l */ -/* 80337704 90 03 00 00 */ stw r0, 0(r3) -lbl_80337708: -/* 80337708 7C 7F 1B 78 */ mr r31, r3 -/* 8033770C 48 00 01 24 */ b lbl_80337830 -lbl_80337710: -/* 80337710 38 60 00 10 */ li r3, 0x10 -/* 80337714 4B F9 75 39 */ bl __nw__FUl -/* 80337718 28 03 00 00 */ cmplwi r3, 0 -/* 8033771C 41 82 00 4C */ beq lbl_80337768 -/* 80337720 80 9D 00 0C */ lwz r4, 0xc(r29) -/* 80337724 80 1E 00 04 */ lwz r0, 4(r30) -/* 80337728 54 00 08 3C */ slwi r0, r0, 1 -/* 8033772C 7C E4 02 14 */ add r7, r4, r0 -/* 80337730 A0 DE 00 02 */ lhz r6, 2(r30) -/* 80337734 A0 BE 00 00 */ lhz r5, 0(r30) -/* 80337738 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 8033773C 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 80337740 90 03 00 00 */ stw r0, 0(r3) -/* 80337744 B0 A3 00 04 */ sth r5, 4(r3) -/* 80337748 3C 80 80 3D */ lis r4, __vt__21J3DShapeMtxConcatView@ha /* 0x803CDC1C@ha */ -/* 8033774C 38 04 DC 1C */ addi r0, r4, __vt__21J3DShapeMtxConcatView@l /* 0x803CDC1C@l */ -/* 80337750 90 03 00 00 */ stw r0, 0(r3) -/* 80337754 3C 80 80 3D */ lis r4, __vt__26J3DShapeMtxMultiConcatView@ha /* 0x803CDBD4@ha */ -/* 80337758 38 04 DB D4 */ addi r0, r4, __vt__26J3DShapeMtxMultiConcatView@l /* 0x803CDBD4@l */ -/* 8033775C 90 03 00 00 */ stw r0, 0(r3) -/* 80337760 B0 C3 00 08 */ sth r6, 8(r3) -/* 80337764 90 E3 00 0C */ stw r7, 0xc(r3) -lbl_80337768: -/* 80337768 7C 7F 1B 78 */ mr r31, r3 -/* 8033776C 48 00 00 C4 */ b lbl_80337830 -lbl_80337770: -/* 80337770 3C 60 80 3A */ lis r3, J3DShapeFactory__stringBase0@ha /* 0x803A2100@ha */ -/* 80337774 38 63 21 00 */ addi r3, r3, J3DShapeFactory__stringBase0@l /* 0x803A2100@l */ -/* 80337778 4C C6 31 82 */ crclr 6 -/* 8033777C 4B CC F3 41 */ bl OSReport -/* 80337780 48 00 00 B0 */ b lbl_80337830 -lbl_80337784: -/* 80337784 88 07 00 00 */ lbz r0, 0(r7) -/* 80337788 2C 00 00 03 */ cmpwi r0, 3 -/* 8033778C 41 82 00 40 */ beq lbl_803377CC -/* 80337790 40 80 00 90 */ bge lbl_80337820 -/* 80337794 2C 00 00 00 */ cmpwi r0, 0 -/* 80337798 40 80 00 08 */ bge lbl_803377A0 -/* 8033779C 48 00 00 84 */ b lbl_80337820 -lbl_803377A0: -/* 803377A0 38 60 00 08 */ li r3, 8 -/* 803377A4 4B F9 74 A9 */ bl __nw__FUl -/* 803377A8 28 03 00 00 */ cmplwi r3, 0 -/* 803377AC 41 82 00 18 */ beq lbl_803377C4 -/* 803377B0 A0 BE 00 00 */ lhz r5, 0(r30) -/* 803377B4 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 803377B8 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 803377BC 90 03 00 00 */ stw r0, 0(r3) -/* 803377C0 B0 A3 00 04 */ sth r5, 4(r3) -lbl_803377C4: -/* 803377C4 7C 7F 1B 78 */ mr r31, r3 -/* 803377C8 48 00 00 68 */ b lbl_80337830 -lbl_803377CC: -/* 803377CC 38 60 00 10 */ li r3, 0x10 -/* 803377D0 4B F9 74 7D */ bl __nw__FUl -/* 803377D4 28 03 00 00 */ cmplwi r3, 0 -/* 803377D8 41 82 00 40 */ beq lbl_80337818 -/* 803377DC 80 9D 00 0C */ lwz r4, 0xc(r29) -/* 803377E0 80 1E 00 04 */ lwz r0, 4(r30) -/* 803377E4 54 00 08 3C */ slwi r0, r0, 1 -/* 803377E8 7C E4 02 14 */ add r7, r4, r0 -/* 803377EC A0 DE 00 02 */ lhz r6, 2(r30) -/* 803377F0 A0 BE 00 00 */ lhz r5, 0(r30) -/* 803377F4 3C 80 80 3D */ lis r4, __vt__11J3DShapeMtx@ha /* 0x803CDC44@ha */ -/* 803377F8 38 04 DC 44 */ addi r0, r4, __vt__11J3DShapeMtx@l /* 0x803CDC44@l */ -/* 803377FC 90 03 00 00 */ stw r0, 0(r3) -/* 80337800 B0 A3 00 04 */ sth r5, 4(r3) -/* 80337804 3C 80 80 3D */ lis r4, __vt__16J3DShapeMtxMulti@ha /* 0x803CDBFC@ha */ -/* 80337808 38 04 DB FC */ addi r0, r4, __vt__16J3DShapeMtxMulti@l /* 0x803CDBFC@l */ -/* 8033780C 90 03 00 00 */ stw r0, 0(r3) -/* 80337810 B0 C3 00 08 */ sth r6, 8(r3) -/* 80337814 90 E3 00 0C */ stw r7, 0xc(r3) -lbl_80337818: -/* 80337818 7C 7F 1B 78 */ mr r31, r3 -/* 8033781C 48 00 00 14 */ b lbl_80337830 -lbl_80337820: -/* 80337820 3C 60 80 3A */ lis r3, J3DShapeFactory__stringBase0@ha /* 0x803A2100@ha */ -/* 80337824 38 63 21 00 */ addi r3, r3, J3DShapeFactory__stringBase0@l /* 0x803A2100@l */ -/* 80337828 4C C6 31 82 */ crclr 6 -/* 8033782C 4B CC F2 91 */ bl OSReport -lbl_80337830: -/* 80337830 7F E3 FB 78 */ mr r3, r31 -/* 80337834 39 61 00 20 */ addi r11, r1, 0x20 -/* 80337838 48 02 A9 F1 */ bl _restgpr_29 -/* 8033783C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80337840 7C 08 03 A6 */ mtlr r0 -/* 80337844 38 21 00 20 */ addi r1, r1, 0x20 -/* 80337848 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_alink/checkBoomerangChargeEnd__9daAlink_cFv.s b/asm/d/a/d_a_alink/checkBoomerangChargeEnd__9daAlink_cFv.s deleted file mode 100644 index 7d66f313225..00000000000 --- a/asm/d/a/d_a_alink/checkBoomerangChargeEnd__9daAlink_cFv.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_800E0244: -/* 800E0244 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800E0248 7C 08 02 A6 */ mflr r0 -/* 800E024C 90 01 00 14 */ stw r0, 0x14(r1) -/* 800E0250 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800E0254 93 C1 00 08 */ stw r30, 8(r1) -/* 800E0258 7C 7E 1B 78 */ mr r30, r3 -/* 800E025C 3B E0 00 00 */ li r31, 0 -/* 800E0260 A0 03 2F DC */ lhz r0, 0x2fdc(r3) -/* 800E0264 28 00 01 02 */ cmplwi r0, 0x102 -/* 800E0268 41 82 00 14 */ beq lbl_800E027C -/* 800E026C 48 00 01 D5 */ bl checkBoomerangAnime__9daAlink_cCFv -/* 800E0270 2C 03 00 00 */ cmpwi r3, 0 -/* 800E0274 41 82 00 08 */ beq lbl_800E027C -/* 800E0278 3B E0 00 01 */ li r31, 1 -lbl_800E027C: -/* 800E027C 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 800E0280 41 82 00 0C */ beq lbl_800E028C -/* 800E0284 38 60 00 01 */ li r3, 1 -/* 800E0288 48 00 00 18 */ b lbl_800E02A0 -lbl_800E028C: -/* 800E028C 7F C3 F3 78 */ mr r3, r30 -/* 800E0290 4B FF FF 81 */ bl getBoomerangActor__9daAlink_cFv -/* 800E0294 30 03 FF FF */ addic r0, r3, -1 -/* 800E0298 7C 00 19 10 */ subfe r0, r0, r3 -/* 800E029C 54 03 06 3E */ clrlwi r3, r0, 0x18 -lbl_800E02A0: -/* 800E02A0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800E02A4 83 C1 00 08 */ lwz r30, 8(r1) -/* 800E02A8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800E02AC 7C 08 03 A6 */ mtlr r0 -/* 800E02B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800E02B4 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s b/asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s deleted file mode 100644 index cb76752cc6a..00000000000 --- a/asm/d/a/d_a_alink/checkBoomerangThrowAnime__9daAlink_cCFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_800E04AC: -/* 800E04AC 38 80 00 00 */ li r4, 0 -/* 800E04B0 A0 A3 2F DC */ lhz r5, 0x2fdc(r3) -/* 800E04B4 28 05 00 40 */ cmplwi r5, 0x40 -/* 800E04B8 41 82 00 18 */ beq lbl_800E04D0 -/* 800E04BC 80 03 05 74 */ lwz r0, 0x574(r3) -/* 800E04C0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e -/* 800E04C4 40 82 00 0C */ bne lbl_800E04D0 -/* 800E04C8 28 05 01 02 */ cmplwi r5, 0x102 -/* 800E04CC 40 82 00 14 */ bne lbl_800E04E0 -lbl_800E04D0: -/* 800E04D0 A0 03 1F BC */ lhz r0, 0x1fbc(r3) -/* 800E04D4 28 00 00 53 */ cmplwi r0, 0x53 -/* 800E04D8 40 82 00 08 */ bne lbl_800E04E0 -/* 800E04DC 38 80 00 01 */ li r4, 1 -lbl_800E04E0: -/* 800E04E0 54 83 06 3E */ clrlwi r3, r4, 0x18 -/* 800E04E4 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s b/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s deleted file mode 100644 index ec6f3756e79..00000000000 --- a/asm/d/a/d_a_player/posMove__20daPy_boomerangMove_cFP4cXyzPsP10fopAc_ac_cs.s +++ /dev/null @@ -1,150 +0,0 @@ -lbl_8015E654: -/* 8015E654 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8015E658 7C 08 02 A6 */ mflr r0 -/* 8015E65C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8015E660 39 61 00 30 */ addi r11, r1, 0x30 -/* 8015E664 48 20 3B 71 */ bl _savegpr_27 -/* 8015E668 7C 7E 1B 78 */ mr r30, r3 -/* 8015E66C 7C 9F 23 78 */ mr r31, r4 -/* 8015E670 7C BB 2B 78 */ mr r27, r5 -/* 8015E674 7C DC 33 78 */ mr r28, r6 -/* 8015E678 7C FD 3B 78 */ mr r29, r7 -/* 8015E67C 48 00 12 55 */ bl getThrowBoomerangActor__9daPy_py_cFv -/* 8015E680 A8 1E 00 02 */ lha r0, 2(r30) -/* 8015E684 7C 1D 00 50 */ subf r0, r29, r0 -/* 8015E688 B0 1E 00 02 */ sth r0, 2(r30) -/* 8015E68C A8 1B 00 00 */ lha r0, 0(r27) -/* 8015E690 7C 1D 00 50 */ subf r0, r29, r0 -/* 8015E694 B0 1B 00 00 */ sth r0, 0(r27) -/* 8015E698 C0 3E 00 08 */ lfs f1, 8(r30) -/* 8015E69C C0 02 9C 20 */ lfs f0, lit_4332(r2) -/* 8015E6A0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E6A4 40 81 00 08 */ ble lbl_8015E6AC -/* 8015E6A8 D0 1E 00 08 */ stfs f0, 8(r30) -lbl_8015E6AC: -/* 8015E6AC C0 3E 00 04 */ lfs f1, 4(r30) -/* 8015E6B0 C0 02 9C 24 */ lfs f0, lit_4333(r2) -/* 8015E6B4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E6B8 40 80 00 0C */ bge lbl_8015E6C4 -/* 8015E6BC D0 1E 00 04 */ stfs f0, 4(r30) -/* 8015E6C0 48 00 00 14 */ b lbl_8015E6D4 -lbl_8015E6C4: -/* 8015E6C4 C0 02 9C 18 */ lfs f0, lit_4249(r2) -/* 8015E6C8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E6CC 40 81 00 08 */ ble lbl_8015E6D4 -/* 8015E6D0 D0 1E 00 04 */ stfs f0, 4(r30) -lbl_8015E6D4: -/* 8015E6D4 28 03 00 00 */ cmplwi r3, 0 -/* 8015E6D8 41 82 00 BC */ beq lbl_8015E794 -/* 8015E6DC 88 03 09 56 */ lbz r0, 0x956(r3) -/* 8015E6E0 28 00 00 00 */ cmplwi r0, 0 -/* 8015E6E4 41 82 00 0C */ beq lbl_8015E6F0 -/* 8015E6E8 38 60 00 00 */ li r3, 0 -/* 8015E6EC 48 00 01 78 */ b lbl_8015E864 -lbl_8015E6F0: -/* 8015E6F0 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8015E6F4 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8015E6F8 88 04 4F AD */ lbz r0, 0x4fad(r4) -/* 8015E6FC 28 00 00 00 */ cmplwi r0, 0 -/* 8015E700 41 82 00 10 */ beq lbl_8015E710 -/* 8015E704 38 00 00 01 */ li r0, 1 -/* 8015E708 98 1E 00 00 */ stb r0, 0(r30) -/* 8015E70C 48 00 00 24 */ b lbl_8015E730 -lbl_8015E710: -/* 8015E710 A8 0D 8A 9E */ lha r0, m_dropAngleY__20daPy_boomerangMove_c+0x2(r13) -/* 8015E714 2C 00 00 00 */ cmpwi r0, 0 -/* 8015E718 41 82 00 18 */ beq lbl_8015E730 -/* 8015E71C 88 1E 00 00 */ lbz r0, 0(r30) -/* 8015E720 28 00 00 00 */ cmplwi r0, 0 -/* 8015E724 40 82 00 0C */ bne lbl_8015E730 -/* 8015E728 38 60 00 00 */ li r3, 0 -/* 8015E72C 48 00 01 38 */ b lbl_8015E864 -lbl_8015E730: -/* 8015E730 3C 80 80 44 */ lis r4, sincosTable___5JMath@ha /* 0x80439A20@ha */ -/* 8015E734 38 A4 9A 20 */ addi r5, r4, sincosTable___5JMath@l /* 0x80439A20@l */ -/* 8015E738 A8 1E 00 02 */ lha r0, 2(r30) -/* 8015E73C 54 00 04 38 */ rlwinm r0, r0, 0, 0x10, 0x1c -/* 8015E740 7C 85 02 14 */ add r4, r5, r0 -/* 8015E744 C0 04 00 04 */ lfs f0, 4(r4) -/* 8015E748 C0 23 04 D8 */ lfs f1, 0x4d8(r3) -/* 8015E74C C0 9E 00 08 */ lfs f4, 8(r30) -/* 8015E750 EC 04 00 32 */ fmuls f0, f4, f0 -/* 8015E754 EC 61 00 2A */ fadds f3, f1, f0 -/* 8015E758 C0 23 04 D4 */ lfs f1, 0x4d4(r3) -/* 8015E75C C0 1E 00 04 */ lfs f0, 4(r30) -/* 8015E760 EC 41 00 2A */ fadds f2, f1, f0 -/* 8015E764 7C 05 04 2E */ lfsx f0, r5, r0 -/* 8015E768 C0 23 04 D0 */ lfs f1, 0x4d0(r3) -/* 8015E76C EC 04 00 32 */ fmuls f0, f4, f0 -/* 8015E770 EC 01 00 2A */ fadds f0, f1, f0 -/* 8015E774 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8015E778 D0 5F 00 04 */ stfs f2, 4(r31) -/* 8015E77C D0 7F 00 08 */ stfs f3, 8(r31) -/* 8015E780 80 03 09 64 */ lwz r0, 0x964(r3) -/* 8015E784 60 00 00 80 */ ori r0, r0, 0x80 -/* 8015E788 90 03 09 64 */ stw r0, 0x964(r3) -/* 8015E78C 38 60 00 01 */ li r3, 1 -/* 8015E790 48 00 00 D4 */ b lbl_8015E864 -lbl_8015E794: -/* 8015E794 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8015E798 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8015E79C 83 A3 5D B4 */ lwz r29, 0x5db4(r3) -/* 8015E7A0 28 1C 00 00 */ cmplwi r28, 0 -/* 8015E7A4 41 82 00 18 */ beq lbl_8015E7BC -/* 8015E7A8 7F A3 EB 78 */ mr r3, r29 -/* 8015E7AC 7F 84 E3 78 */ mr r4, r28 -/* 8015E7B0 4B F8 1B 09 */ bl checkBoomerangCarry__9daAlink_cFP10fopAc_ac_c -/* 8015E7B4 2C 03 00 00 */ cmpwi r3, 0 -/* 8015E7B8 40 82 00 A8 */ bne lbl_8015E860 -lbl_8015E7BC: -/* 8015E7BC A8 0D 8A 9E */ lha r0, m_dropAngleY__20daPy_boomerangMove_c+0x2(r13) -/* 8015E7C0 2C 00 00 00 */ cmpwi r0, 0 -/* 8015E7C4 41 82 00 10 */ beq lbl_8015E7D4 -/* 8015E7C8 88 1E 00 00 */ lbz r0, 0(r30) -/* 8015E7CC 28 00 00 00 */ cmplwi r0, 0 -/* 8015E7D0 41 82 00 90 */ beq lbl_8015E860 -lbl_8015E7D4: -/* 8015E7D4 C0 22 9C 28 */ lfs f1, lit_4334(r2) -/* 8015E7D8 48 10 91 7D */ bl cM_rndF__Ff -/* 8015E7DC A8 6D 8A 9C */ lha r3, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) -/* 8015E7E0 A8 1D 04 E6 */ lha r0, 0x4e6(r29) -/* 8015E7E4 7C 03 02 14 */ add r0, r3, r0 -/* 8015E7E8 C8 42 9C 08 */ lfd f2, lit_4237(r2) -/* 8015E7EC 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8015E7F0 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015E7F4 3C 00 43 30 */ lis r0, 0x4330 -/* 8015E7F8 90 01 00 08 */ stw r0, 8(r1) -/* 8015E7FC C8 01 00 08 */ lfd f0, 8(r1) -/* 8015E800 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8015E804 EC 00 08 2A */ fadds f0, f0, f1 -/* 8015E808 FC 00 00 1E */ fctiwz f0, f0 -/* 8015E80C D8 01 00 10 */ stfd f0, 0x10(r1) -/* 8015E810 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8015E814 C0 5D 04 D0 */ lfs f2, 0x4d0(r29) -/* 8015E818 C0 3E 00 08 */ lfs f1, 8(r30) -/* 8015E81C 54 00 04 38 */ rlwinm r0, r0, 0, 0x10, 0x1c -/* 8015E820 3C 60 80 44 */ lis r3, sincosTable___5JMath@ha /* 0x80439A20@ha */ -/* 8015E824 38 63 9A 20 */ addi r3, r3, sincosTable___5JMath@l /* 0x80439A20@l */ -/* 8015E828 7C 03 04 2E */ lfsx f0, r3, r0 -/* 8015E82C EC 01 00 32 */ fmuls f0, f1, f0 -/* 8015E830 EC 02 00 2A */ fadds f0, f2, f0 -/* 8015E834 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8015E838 C0 5D 04 D8 */ lfs f2, 0x4d8(r29) -/* 8015E83C C0 3E 00 08 */ lfs f1, 8(r30) -/* 8015E840 7C 63 02 14 */ add r3, r3, r0 -/* 8015E844 C0 03 00 04 */ lfs f0, 4(r3) -/* 8015E848 EC 01 00 32 */ fmuls f0, f1, f0 -/* 8015E84C EC 02 00 2A */ fadds f0, f2, f0 -/* 8015E850 D0 1F 00 08 */ stfs f0, 8(r31) -/* 8015E854 A8 6D 8A 9C */ lha r3, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) -/* 8015E858 38 03 20 00 */ addi r0, r3, 0x2000 -/* 8015E85C B0 0D 8A 9C */ sth r0, m_dropAngleY__20daPy_boomerangMove_c+0x0(r13) -lbl_8015E860: -/* 8015E860 38 60 00 00 */ li r3, 0 -lbl_8015E864: -/* 8015E864 39 61 00 30 */ addi r11, r1, 0x30 -/* 8015E868 48 20 39 B9 */ bl _restgpr_27 -/* 8015E86C 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8015E870 7C 08 03 A6 */ mtlr r0 -/* 8015E874 38 21 00 30 */ addi r1, r1, 0x30 -/* 8015E878 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s b/asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s deleted file mode 100644 index 0fac4d1310e..00000000000 --- a/asm/d/a/d_a_player/setFrameCtrl__16daPy_frameCtrl_cFUcssff.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_8015E544: -/* 8015E544 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8015E548 98 83 00 04 */ stb r4, 4(r3) -/* 8015E54C B0 C3 00 08 */ sth r6, 8(r3) -/* 8015E550 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 8015E554 B0 A3 00 06 */ sth r5, 6(r3) -/* 8015E558 7C A0 07 34 */ extsh r0, r5 -/* 8015E55C C8 62 9C 08 */ lfd f3, lit_4237(r2) -/* 8015E560 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 8015E564 90 01 00 0C */ stw r0, 0xc(r1) -/* 8015E568 3C 00 43 30 */ lis r0, 0x4330 -/* 8015E56C 90 01 00 08 */ stw r0, 8(r1) -/* 8015E570 C8 01 00 08 */ lfd f0, 8(r1) -/* 8015E574 EC 00 18 28 */ fsubs f0, f0, f3 -/* 8015E578 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8015E57C D0 43 00 10 */ stfs f2, 0x10(r3) -/* 8015E580 C0 02 9C 00 */ lfs f0, lit_4215(r2) -/* 8015E584 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8015E588 4C 41 13 82 */ cror 2, 1, 2 -/* 8015E58C 40 82 00 0C */ bne lbl_8015E598 -/* 8015E590 B0 A3 00 0A */ sth r5, 0xa(r3) -/* 8015E594 48 00 00 08 */ b lbl_8015E59C -lbl_8015E598: -/* 8015E598 B0 C3 00 0A */ sth r6, 0xa(r3) -lbl_8015E59C: -/* 8015E59C 38 00 00 00 */ li r0, 0 -/* 8015E5A0 B0 03 00 14 */ sth r0, 0x14(r3) -/* 8015E5A4 B0 03 00 16 */ sth r0, 0x16(r3) -/* 8015E5A8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8015E5AC 4E 80 00 20 */ blr diff --git a/asm/d/a/d_a_player/setSight__18daPy_sightPacket_cFv.s b/asm/d/a/d_a_player/setSight__18daPy_sightPacket_cFv.s deleted file mode 100644 index 0fea7caa182..00000000000 --- a/asm/d/a/d_a_player/setSight__18daPy_sightPacket_cFv.s +++ /dev/null @@ -1,35 +0,0 @@ -lbl_8015F2FC: -/* 8015F2FC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8015F300 7C 08 02 A6 */ mflr r0 -/* 8015F304 90 01 00 24 */ stw r0, 0x24(r1) -/* 8015F308 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8015F30C 7C 7F 1B 78 */ mr r31, r3 -/* 8015F310 38 7F 00 08 */ addi r3, r31, 8 -/* 8015F314 38 81 00 08 */ addi r4, r1, 8 -/* 8015F318 4B EB 5F F9 */ bl mDoLib_project__FP3VecP3Vec -/* 8015F31C 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8015F320 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8015F324 C0 21 00 08 */ lfs f1, 8(r1) -/* 8015F328 C0 41 00 0C */ lfs f2, 0xc(r1) -/* 8015F32C C0 61 00 10 */ lfs f3, 0x10(r1) -/* 8015F330 48 1E 75 B9 */ bl PSMTXTrans -/* 8015F334 C0 22 9C 80 */ lfs f1, lit_4699(r2) -/* 8015F338 FC 40 08 90 */ fmr f2, f1 -/* 8015F33C FC 60 08 90 */ fmr f3, f1 -/* 8015F340 4B EA DA F9 */ bl scaleM__14mDoMtx_stack_cFfff -/* 8015F344 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8015F348 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 8015F34C 38 9F 00 14 */ addi r4, r31, 0x14 -/* 8015F350 48 1E 71 61 */ bl PSMTXCopy -/* 8015F354 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8015F358 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8015F35C 38 63 5F 64 */ addi r3, r3, 0x5f64 -/* 8015F360 38 83 02 3C */ addi r4, r3, 0x23c -/* 8015F364 38 A3 02 40 */ addi r5, r3, 0x240 -/* 8015F368 7F E6 FB 78 */ mr r6, r31 -/* 8015F36C 4B EF 74 29 */ bl set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c -/* 8015F370 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8015F374 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8015F378 7C 08 03 A6 */ mtlr r0 -/* 8015F37C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8015F380 4E 80 00 20 */ blr diff --git a/include/JSystem/J3DGraphAnimator/J3DJoint.h b/include/JSystem/J3DGraphAnimator/J3DJoint.h index 0474f4eb5a1..94ce45c74d7 100644 --- a/include/JSystem/J3DGraphAnimator/J3DJoint.h +++ b/include/JSystem/J3DGraphAnimator/J3DJoint.h @@ -68,13 +68,15 @@ public: static J3DMtxCalc* mCurrentMtxCalc; private: + friend struct J3DJointFactory; + /* 0x00 */ void* mCallBackUserData; /* 0x04 */ J3DJointCallBack mCallBack; /* 0x08 */ void* field_0x8; /* 0x0C */ J3DJoint* mChild; /* 0x10 */ J3DJoint* mYounger; /* 0x14 */ u16 mJntNo; - /* 0x16 */ u8 mMtxType; + /* 0x16 */ u8 mKind; /* 0x17 */ u8 mScaleCompensate; /* 0x18 */ J3DTransformInfo mTransformInfo; /* 0x38 */ f32 mBoundingSphereRadius; diff --git a/include/JSystem/J3DGraphBase/J3DPacket.h b/include/JSystem/J3DGraphBase/J3DPacket.h index 463ba0d3560..232db283d3d 100644 --- a/include/JSystem/J3DGraphBase/J3DPacket.h +++ b/include/JSystem/J3DGraphBase/J3DPacket.h @@ -51,29 +51,29 @@ public: class J3DPacket { public: J3DPacket() { - mpNextSibling = NULL; + mpNextPacket = NULL; mpFirstChild = NULL; mpUserData = NULL; } void addChildPacket(J3DPacket*); - J3DPacket* getNextPacket() const { return mpNextSibling; } - void setNextPacket(J3DPacket* i_packet) { mpNextSibling = i_packet; } + J3DPacket* getNextPacket() const { return mpNextPacket; } + void setNextPacket(J3DPacket* i_packet) { mpNextPacket = i_packet; } void drawClear() { - mpNextSibling = NULL; + mpNextPacket = NULL; mpFirstChild = NULL; } void setUserArea(u32 area) { mpUserData = (void*)area; } - virtual bool entry(J3DDrawBuffer*); + virtual int entry(J3DDrawBuffer*); virtual void draw(); virtual ~J3DPacket() {} public: - /* 0x04 */ J3DPacket* mpNextSibling; + /* 0x04 */ J3DPacket* mpNextPacket; /* 0x08 */ J3DPacket* mpFirstChild; /* 0x0C */ void* mpUserData; }; // Size: 0x10 @@ -145,19 +145,21 @@ public: void endDiff(); bool isSame(J3DMatPacket*) const; + J3DMaterial* getMaterial() const { return mpMaterial; } J3DShapePacket* getShapePacket() const { return mpShapePacket; } void setShapePacket(J3DShapePacket* packet) { mpShapePacket = packet; } void setInitShapePacket(J3DShapePacket* packet) { mpInitShapePacket = packet; } + bool isChanged() const { return mDiffFlag < 0; } virtual ~J3DMatPacket(); - virtual bool entry(J3DDrawBuffer*); + virtual int entry(J3DDrawBuffer*); virtual void draw(); public: /* 0x28 */ J3DShapePacket* mpInitShapePacket; /* 0x2C */ J3DShapePacket* mpShapePacket; /* 0x30 */ J3DMaterial* mpMaterial; - /* 0x34 */ u32 mSortFlags; + /* 0x34 */ u32 mDiffFlag; /* 0x38 */ J3DTexture* mpTexture; /* 0x3C */ J3DMaterialAnm* mpMaterialAnm; }; // Size: 0x40 diff --git a/include/JSystem/J3DGraphBase/J3DSys.h b/include/JSystem/J3DGraphBase/J3DSys.h index fd75fc48f75..01f882e3f41 100644 --- a/include/JSystem/J3DGraphBase/J3DSys.h +++ b/include/JSystem/J3DGraphBase/J3DSys.h @@ -93,6 +93,9 @@ struct J3DSys { void setMaterialMode(u32 mode) { mMaterialMode = mode; } void setTexture(J3DTexture* pTex) { mTexture = pTex; } + J3DTexture* getTexture() { return mTexture; } + + void setNBTScale(Vec* scale) { mNBTScale = scale; } void onFlag(u32 flag) { mFlags |= flag; } diff --git a/include/JSystem/J3DGraphBase/J3DTransform.h b/include/JSystem/J3DGraphBase/J3DTransform.h index 1bdc7ebb88a..a162bd5b7c9 100644 --- a/include/JSystem/J3DGraphBase/J3DTransform.h +++ b/include/JSystem/J3DGraphBase/J3DTransform.h @@ -1,13 +1,14 @@ #ifndef J3DTRANSFORM_H #define J3DTRANSFORM_H +#include "JSystem/JGeometry.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" struct J3DTransformInfo { - /* 0x00 */ Vec mScale; - /* 0x0C */ SVec mRotation; - /* 0x14 */ Vec mTranslate; + /* 0x00 */ JGeometry::TVec3 mScale; + /* 0x0C */ JGeometry::TVec3 mRotation; + /* 0x14 */ JGeometry::TVec3 mTranslate; }; // Size: 0x20 extern J3DTransformInfo const j3dDefaultTransformInfo; diff --git a/include/JSystem/J3DGraphLoader/J3DJointFactory.h b/include/JSystem/J3DGraphLoader/J3DJointFactory.h index 2e992b48f3e..98409802a70 100644 --- a/include/JSystem/J3DGraphLoader/J3DJointFactory.h +++ b/include/JSystem/J3DGraphLoader/J3DJointFactory.h @@ -1,6 +1,49 @@ #ifndef J3DJOINTFACTORY_H #define J3DJOINTFACTORY_H +#include "JSystem/J3DGraphBase/J3DTransform.h" +#include "JSystem/JGeometry.h" #include "dolphin/types.h" -#endif /* J3DJOINTFACTORY_H */ +struct J3DJoint; +struct ResNTAB; + +struct J3DJointInitData { + /* 0x00 */ u16 mKind; + /* 0x02 */ bool mScaleCompensate; + /* 0x04 */ J3DTransformInfo mTransformInfo; + /* 0x24 */ f32 mRadius; + /* 0x28 */ Vec mMin; + /* 0x2C */ Vec mMax; +}; // Size: 0x30 + +struct J3DJointBlock { + /* 0x00 */ u8 mMagic[4]; + /* 0x04 */ u32 mSize; + + /* 0x08 */ u16 mJointNum; + /* 0x0A */ u16 _pad; + + /* 0x0C */ J3DJointInitData* mJointInitData; + /* 0x10 */ u16* mIndexTable; + /* 0x14 */ ResNTAB* mNameTable; +}; + +struct J3DJointFactory { + /* 80337178 */ J3DJointFactory(J3DJointBlock const&); + /* 803371D0 */ J3DJoint* create(int); + + J3DJointInitData* mJointInitData; + u16* mIndexTable; + + u16 getKind(int no) const { return mJointInitData[mIndexTable[no]].mKind; } + u8 getScaleCompensate(int no) const { return mJointInitData[mIndexTable[no]].mScaleCompensate; } + const J3DTransformInfo& getTransformInfo(int no) const { + return mJointInitData[mIndexTable[no]].mTransformInfo; + } + f32 getRadius(int no) const { return mJointInitData[mIndexTable[no]].mRadius; } + Vec& getMin(int no) const { return mJointInitData[mIndexTable[no]].mMin; } + Vec& getMax(int no) const { return mJointInitData[mIndexTable[no]].mMax; } +}; + +#endif /* J3DJOINTFACTORY_H */ \ No newline at end of file diff --git a/include/JSystem/JGeometry.h b/include/JSystem/JGeometry.h index 42e505a7b5a..6eb88b0279f 100644 --- a/include/JSystem/JGeometry.h +++ b/include/JSystem/JGeometry.h @@ -19,6 +19,18 @@ struct TVec3 { } }; +template <> +struct TVec3 { + s16 x, y, z; + + TVec3& operator=(const TVec3& b) { + // Force copies to use lwz/lha + *((s32*)this) = *((s32*)&b); + z = b.z; + return *this; + } +}; + template <> struct TVec3 { f32 x; @@ -47,6 +59,20 @@ struct TVec3 { y = a.y * b.y; z = a.z * b.z; } + + inline TVec3& operator=(const TVec3& b) { + register f32* dst = &x; + const register f32* src = &b.x; + register f32 x_y; + register f32 z; + asm { + psq_l x_y, 0(src), 0, 0 + psq_st x_y, 0(dst), 0, 0 + lfs z, 8(src) + stfs z, 8(dst) + }; + return *this; + } }; template diff --git a/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp b/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp index cd24d86819d..371059303cc 100644 --- a/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp +++ b/libs/JSystem/J3DGraphBase/J3DDrawBuffer.cpp @@ -7,7 +7,6 @@ #include "JSystem/JKernel/JKRHeap.h" #include "dol2asm.h" #include "dolphin/types.h" - #include "JSystem/J3DGraphBase/J3DPacket.h" // @@ -255,14 +254,10 @@ SECTION_DATA drawFunc J3DDrawBuffer::drawFuncTable[2] = { }; /* 803254AC-80325500 31FDEC 0054+00 0/0 2/2 0/0 .text draw__13J3DDrawBufferCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DDrawBuffer::draw() const { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/draw__13J3DDrawBufferCFv.s" +void J3DDrawBuffer::draw() const { + drawFunc func = drawFuncTable[mDrawType]; + (this->*func)(); } -#pragma pop /* 80325500-80325578 31FE40 0078+00 1/0 0/0 0/0 .text drawHead__13J3DDrawBufferCFv */ void J3DDrawBuffer::drawHead() const { @@ -277,28 +272,15 @@ void J3DDrawBuffer::drawHead() const { } /* 80325578-803255F0 31FEB8 0078+00 1/0 0/0 0/0 .text drawTail__13J3DDrawBufferCFv */ -// flipped regs -#ifdef NONMATCHING void J3DDrawBuffer::drawTail() const { - int i = mBufSize - 1; - J3DPacket** buf = mpBuf; + int num = mBufSize - 1; - for (; i >= 0; i--) { - for (J3DPacket* packet = buf[i]; packet != NULL; packet = packet->getNextPacket()) { + for (int i = num; i >= 0; i--) { + for (J3DPacket* packet = mpBuf[i]; packet != NULL; packet = packet->getNextPacket()) { packet->draw(); } } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DDrawBuffer::drawTail() const { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DDrawBuffer/drawTail__13J3DDrawBufferCFv.s" -} -#pragma pop -#endif /* ############################################################################################## */ /* 804515E0-804515E8 000AE0 0004+04 0/0 1/1 0/0 .sbss entryNum__13J3DDrawBuffer */ diff --git a/libs/JSystem/J3DGraphBase/J3DPacket.cpp b/libs/JSystem/J3DGraphBase/J3DPacket.cpp index 581f924969f..bf734f17107 100644 --- a/libs/JSystem/J3DGraphBase/J3DPacket.cpp +++ b/libs/JSystem/J3DGraphBase/J3DPacket.cpp @@ -5,6 +5,7 @@ #include "JSystem/J3DGraphBase/J3DPacket.h" #include "JSystem/J3DGraphAnimator/J3DModel.h" +#include "JSystem/J3DGraphBase/J3DDrawBuffer.h" #include "JSystem/J3DGraphBase/J3DMaterial.h" #include "JSystem/J3DGraphBase/J3DShape.h" #include "JSystem/J3DGraphBase/J3DShapeMtx.h" @@ -18,14 +19,6 @@ #include "dolphin/types.h" #include "global.h" -// -// Types: -// - -struct J3DDrawBuffer { - static u8 sortFuncTable[72]; -}; - // // Forward References: // @@ -97,8 +90,10 @@ J3DError J3DDisplayListObj::newDisplayList(u32 capacity) { mpData[0] = new (0x20) char[mCapacity]; mpData[1] = new (0x20) char[mCapacity]; mSize = 0; + if (mpData[0] == NULL || mpData[1] == NULL) return kJ3DError_Alloc; + return kJ3DError_Success; } @@ -107,8 +102,10 @@ J3DError J3DDisplayListObj::newSingleDisplayList(u32 capacity) { mpData[0] = new (0x20) char[mCapacity]; mpData[1] = mpData[0]; mSize = 0; + if (mpData[0] == NULL) return kJ3DError_Alloc; + return kJ3DError_Success; } @@ -116,8 +113,10 @@ J3DError J3DDisplayListObj::newSingleDisplayList(u32 capacity) { J3DError J3DDisplayListObj::single_To_Double() { if (mpData[0] == mpData[1]) { mpData[1] = new (0x20) char[mCapacity]; + if (mpData[1] == NULL) return kJ3DError_Alloc; + memcpy(mpData[1], mpData[0], mCapacity); DCStoreRange(mpData[1], mCapacity); } @@ -182,61 +181,28 @@ u32 J3DDisplayListObj::endPatch() { } /* 80312750-80312758 30D090 0008+00 3/0 16/0 10/0 .text entry__9J3DPacketFP13J3DDrawBuffer */ -bool J3DPacket::entry(J3DDrawBuffer* param_0) { - return true; +int J3DPacket::entry(J3DDrawBuffer*) { + return 1; } void J3DPacket::addChildPacket(J3DPacket* pPacket) { if (mpFirstChild == NULL) { mpFirstChild = pPacket; } else { - pPacket->mpNextSibling = mpFirstChild; + pPacket->mpNextPacket = mpFirstChild; mpFirstChild = pPacket; } } /* ############################################################################################## */ /* 803CD900-803CD920 02AA20 0020+00 1/1 0/0 0/0 .data sDifferedRegister */ -SECTION_DATA static u32 sDifferedRegister[8] = {0x00000004, 0x00000001, 0x00000002, 0x01000000, - 0x10000000, 0x20000000, 0x02000000, 0x08000000}; +SECTION_DATA static u32 sDifferedRegister[8] = { + 0x00000004, 0x00000001, 0x00000002, 0x01000000, 0x10000000, 0x20000000, 0x02000000, 0x08000000, +}; /* 803CD920-803CD940 02AA40 0020+00 1/1 0/0 0/0 .data sSizeOfDiffered */ -SECTION_DATA static s32 sSizeOfDiffered[8] = {13, 13, 21, 120, 55, 15, 19, 45}; - -/* 803CD940-803CD954 02AA60 0014+00 2/2 0/0 0/0 .data __vt__14J3DShapePacket */ -SECTION_DATA extern void* __vt__14J3DShapePacket[5] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)entry__9J3DPacketFP13J3DDrawBuffer, - (void*)draw__14J3DShapePacketFv, - (void*)__dt__14J3DShapePacketFv, -}; - -/* 803CD954-803CD968 02AA74 0014+00 2/2 0/0 0/0 .data __vt__12J3DMatPacket */ -SECTION_DATA extern void* __vt__12J3DMatPacket[5] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)entry__12J3DMatPacketFP13J3DDrawBuffer, - (void*)draw__12J3DMatPacketFv, - (void*)__dt__12J3DMatPacketFv, -}; - -/* 803CD968-803CD97C 02AA88 0014+00 2/2 0/0 0/0 .data __vt__13J3DDrawPacket */ -SECTION_DATA extern void* __vt__13J3DDrawPacket[5] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)entry__9J3DPacketFP13J3DDrawBuffer, - (void*)draw__13J3DDrawPacketFv, - (void*)__dt__13J3DDrawPacketFv, -}; - -/* 803CD97C-803CD990 02AA9C 0014+00 2/2 34/34 23/23 .data __vt__9J3DPacket */ -SECTION_DATA extern void* __vt__9J3DPacket[5] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)entry__9J3DPacketFP13J3DDrawBuffer, - (void*)draw__9J3DPacketFv, - (void*)__dt__9J3DPacketFv, +SECTION_DATA static s32 sSizeOfDiffered[8] = { + 13, 13, 21, 120, 55, 15, 19, 45, }; /* 80312778-803127B0 30D0B8 0038+00 2/2 0/0 0/0 .text __ct__13J3DDrawPacketFv */ @@ -287,7 +253,7 @@ J3DMatPacket::J3DMatPacket() { mpInitShapePacket = NULL; mpShapePacket = NULL; mpMaterial = NULL; - mSortFlags = -1; + mDiffFlag = -1; mpTexture = NULL; mpMaterialAnm = NULL; } @@ -299,7 +265,7 @@ void J3DMatPacket::addShapePacket(J3DShapePacket* pShape) { if (mpShapePacket == NULL) { mpShapePacket = pShape; } else { - pShape->mpNextSibling = mpShapePacket; + pShape->mpNextPacket = mpShapePacket; mpShapePacket = pShape; } } @@ -316,7 +282,7 @@ void J3DMatPacket::endDiff() { bool J3DMatPacket::isSame(J3DMatPacket* pOther) const { bool isSame = false; - if (mSortFlags == pOther->mSortFlags && !(mSortFlags >> 0x1F)) { + if (mDiffFlag == pOther->mDiffFlag && !(mDiffFlag >> 0x1F)) { isSame = true; } return isSame; @@ -430,6 +396,7 @@ asm void J3DShapePacket::prepareDraw() const { void J3DShapePacket::draw() { if (!checkFlag(J3DShpFlag_Hidden) && mpShape != NULL) { prepareDraw(); + if (mpTexMtx != NULL) { J3DMaterial* material = mpShape->getMaterial(); J3DDifferedTexMtx::sTexGenBlock = material->getTexGenBlock(); @@ -437,9 +404,11 @@ void J3DShapePacket::draw() { } else { J3DDifferedTexMtx::sTexGenBlock = NULL; } + if (mpDisplayListObj != NULL) { mpDisplayListObj->callDL(); } + mpShape->draw(); } } @@ -448,6 +417,7 @@ void J3DShapePacket::draw() { void J3DShapePacket::drawFast() { if (!checkFlag(J3DShpFlag_Hidden) && mpShape != NULL) { prepareDraw(); + if (mpTexMtx != NULL) { J3DMaterial* material = mpShape->getMaterial(); J3DDifferedTexMtx::sTexGenBlock = material->getTexGenBlock(); @@ -455,21 +425,16 @@ void J3DShapePacket::drawFast() { } else { J3DDifferedTexMtx::sTexGenBlock = NULL; } + mpShape->drawFast(); } } /* 80313044-80313048 30D984 0004+00 1/0 0/0 0/0 .text draw__9J3DPacketFv */ -void J3DPacket::draw() { - /* empty function */ -} +void J3DPacket::draw() {} /* 80313048-803130A8 30D988 0060+00 1/0 0/0 0/0 .text entry__12J3DMatPacketFP13J3DDrawBuffer */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm bool J3DMatPacket::entry(J3DDrawBuffer* param_0) { - nofralloc -#include "asm/JSystem/J3DGraphBase/J3DPacket/entry__12J3DMatPacketFP13J3DDrawBuffer.s" +int J3DMatPacket::entry(J3DDrawBuffer* i_buffer) { + sortFunc func = J3DDrawBuffer::sortFuncTable[i_buffer->mSortType]; + return (i_buffer->*func)(this); } -#pragma pop diff --git a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp b/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp index dc735608ca4..94b407be05a 100644 --- a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp +++ b/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp @@ -26,7 +26,7 @@ u32 J3DShapeDraw::countVertex(u32 stride) { u32 count = 0; u32 dlStart = (u32)getDisplayList(); for (u8* dl = (u8*)dlStart; ((u32)dl - dlStart) < getDisplayListSize();) { - if (*dl != 0xA0 && *dl != 0x98) + if (*dl != GX_TRIANGLEFAN && *dl != GX_TRIANGLESTRIP) break; u16 vtxNum = *((u16*)(dl + 1)); count += vtxNum; @@ -50,7 +50,7 @@ void J3DShapeDraw::addTexMtxIndexInDL(u32 stride, u32 attrOffs, u32 valueBase) { u8 h = *oldDL; *newDL++ = h; - if (h != 0xA0 && h != 0x98) + if (h != GX_TRIANGLEFAN && h != GX_TRIANGLESTRIP) break; // Copy count @@ -82,7 +82,6 @@ void J3DShapeDraw::addTexMtxIndexInDL(u32 stride, u32 attrOffs, u32 valueBase) { DCStoreRange(newDLStart, mDisplayListSize); } #else - #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -91,7 +90,6 @@ asm void J3DShapeDraw::addTexMtxIndexInDL(u32 param_0, u32 param_1, u32 param_2) #include "asm/JSystem/J3DGraphBase/J3DShapeDraw/addTexMtxIndexInDL__12J3DShapeDrawFUlUlUl.s" } #pragma pop - #endif /* 80314ABC-80314AD4 30F3FC 0018+00 0/0 1/1 0/0 .text __ct__12J3DShapeDrawFPCUcUl */ diff --git a/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp b/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp index 5960abff0d1..e676e413441 100644 --- a/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp +++ b/libs/JSystem/J3DGraphLoader/J3DJointFactory.cpp @@ -4,6 +4,8 @@ // #include "JSystem/J3DGraphLoader/J3DJointFactory.h" +#include "JSystem/J3DGraphAnimator/J3DJoint.h" +#include "JSystem/JSupport/JSupport.h" #include "dol2asm.h" #include "dolphin/types.h" @@ -11,64 +13,31 @@ // Types: // -struct J3DJointBlock {}; - -struct J3DJointFactory { - /* 80337178 */ J3DJointFactory(J3DJointBlock const&); - /* 803371D0 */ void create(int); -}; - -struct J3DJoint { - /* 8032F170 */ J3DJoint(); -}; - -// -// Forward References: -// - -extern "C" void __ct__15J3DJointFactoryFRC13J3DJointBlock(); -extern "C" void create__15J3DJointFactoryFi(); -extern "C" void func_80337338(void* _this, void const*, u32); - -// -// External References: -// - -extern "C" void* __nw__FUl(); -extern "C" void __ct__8J3DJointFv(); -extern "C" void func_8033677C(void* _this, void const*, u32); - -// -// Declarations: -// +extern "C" u16* func_8033677C(const void*, const void*); // JSUConvertOffsetToPtr /* 80337178-803371D0 331AB8 0058+00 0/0 1/1 0/0 .text __ct__15J3DJointFactoryFRC13J3DJointBlock */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm J3DJointFactory::J3DJointFactory(J3DJointBlock const& param_0) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DJointFactory/__ct__15J3DJointFactoryFRC13J3DJointBlock.s" +J3DJointFactory::J3DJointFactory(J3DJointBlock const& block) { + mJointInitData = JSUConvertOffsetToPtr(&block, block.mJointInitData); + + // Fix when we have our ODR working. + // mIndexTable = JSUConvertOffsetToPtr(&block, block.mIndexTable); + mIndexTable = func_8033677C(&block, block.mIndexTable); } -#pragma pop /* 803371D0-80337338 331B10 0168+00 0/0 1/1 0/0 .text create__15J3DJointFactoryFi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void J3DJointFactory::create(int param_0) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s" -} -#pragma pop +J3DJoint* J3DJointFactory::create(int no) { + J3DJoint* joint = new J3DJoint(); + joint->mJntNo = no; + joint->mKind = getKind(no); + joint->mScaleCompensate = getScaleCompensate(no); + joint->mTransformInfo = getTransformInfo(no); + joint->mBoundingSphereRadius = getRadius(no); + joint->mMin = getMin(no); + joint->mMax = getMax(no); + joint->mMtxCalc = NULL; -/* 80337338-80337350 331C78 0018+00 1/1 0/0 0/0 .text - * JSUConvertOffsetToPtr<16J3DJointInitData>__FPCvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void func_80337338(void* _this, void const* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/J3DGraphLoader/J3DJointFactory/func_80337338.s" -} -#pragma pop + if (joint->mScaleCompensate == 0xFF) + joint->mScaleCompensate = 0; + + return joint; +} \ No newline at end of file From 6d006074a75e780a3632789a1d1b73d5b578112b Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Tue, 18 Oct 2022 05:15:45 -0700 Subject: [PATCH 3/4] d_attention / d_demo / d_lib work --- Progress.md | 8 +- .../getPlayerNo__11daTagMist_cFv.s | 2 +- ...newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc.s | 6 +- asm/d/d_attention/Run__12dAttention_cFv.s | 4 +- asm/d/d_attention/__ct__11dAttParam_cFl.s | 2 +- .../checkButton__12dAttention_cFv.s | 6 +- .../d_a_arrow/arrowShooting__9daArrow_cFv.s | 4 +- .../d_a_arrow/execute__9daArrow_cFv.s | 4 +- .../d_a_tag_mist/Create__11daTagMist_cFv.s | 4 +- .../d_a_tag_mist/execute__11daTagMist_cFv.s | 4 +- .../JSystem/J3DGraphAnimator/J3DJointTree.h | 1 + .../JSystem/J3DGraphAnimator/J3DModelData.h | 1 + .../JSystem/JStudio/JStudio/jstudio-object.h | 30 +- .../JSystem/JStudio/JStudio/stb-data-parse.h | 2 +- include/JSystem/JStudio/JStudio/stb.h | 40 + include/MSL_C/MSL_Common/Src/wchar_io.h | 2 + include/Z2AudioLib/Z2SeqMgr.h | 22 +- include/d/com/d_com_inf_game.h | 33 +- include/d/com/d_com_static.h | 28 +- include/d/d_attention.h | 161 +- include/d/d_demo.h | 28 +- include/d/d_drawlist.h | 3 + include/d/d_lib.h | 8 +- include/d/msg/d_msg_object.h | 4 + include/dolphin/base/PPCArch.h | 8 + include/f_op/f_op_actor.h | 1 + include/m_Do/m_Do_audio.h | 16 +- include/m_Do/m_Do_ext.h | 4 + .../d/a/d_a_movie_player/d_a_movie_player.h | 24 +- libs/MSL_C/MSL_Common/Src/abort_exit.c | 81 +- libs/dolphin/base/Makefile | 12 +- libs/dolphin/base/{PPCArch.cpp => PPCArch.c} | 61 +- rel/d/a/d_a_arrow/d_a_arrow.cpp | 2 +- rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp | 2 +- src/d/com/d_com_static.cpp | 340 ++-- src/d/d_attention.cpp | 1721 +++++++++++++---- src/d/d_demo.cpp | 675 ++++--- src/d/d_lib.cpp | 54 +- src/d/d_vibration.cpp | 9 +- src/d/event/d_event_data.cpp | 6 +- 40 files changed, 2249 insertions(+), 1174 deletions(-) rename libs/dolphin/base/{PPCArch.cpp => PPCArch.c} (84%) diff --git a/Progress.md b/Progress.md index f4da0061222..6803a8ff850 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 91.849662% | 8700 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 16.500285% | 593440 | 3596544 +.text | 16.800351% | 604232 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 25.289205% | 1016796 | 4020672 +Total | 25.557618% | 1027588 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 25.289205% | 1016796 | 4020672 +main.dol | 25.557618% | 1027588 | 4020672 RELs | 33.217047% | 3820068 | 11500324 -Total | 31.163361% | 4836864 | 15520996 +Total | 31.232893% | 4847656 | 15520996 ## RELs diff --git a/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s b/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s index 5b8bf7d38bf..a7b18377b07 100644 --- a/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s +++ b/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s @@ -1,3 +1,3 @@ lbl_80031CF0: -/* 80031CF0 88 6D 88 40 */ lbz r3, struct_80450DC0+0x0(r13) +/* 80031CF0 88 6D 88 40 */ lbz r3, mPlayerNo__11daTagMist_c+0x0(r13) /* 80031CF4 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc.s b/asm/d/com/d_com_static/newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc.s index ae8464a9aad..7b3e4cec22d 100644 --- a/asm/d/com/d_com_static/newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc.s +++ b/asm/d/com/d_com_static/newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc.s @@ -10,7 +10,7 @@ lbl_80031248: /* 80031268 7C CA 33 78 */ mr r10, r6 /* 8003126C 7C E0 3B 78 */ mr r0, r7 /* 80031270 7D 09 43 78 */ mr r9, r8 -/* 80031274 A8 AD 88 0A */ lha r5, struct_80450D88+0x2(r13) +/* 80031274 A8 AD 88 0A */ lha r5, m_count__9daArrow_c+0x2(r13) /* 80031278 1C 85 00 24 */ mulli r4, r5, 0x24 /* 8003127C 3C 60 80 42 */ lis r3, mData__7daSus_c@ha /* 0x80423FFC@ha */ /* 80031280 38 63 3F FC */ addi r3, r3, mData__7daSus_c@l /* 0x80423FFC@l */ @@ -42,7 +42,7 @@ lbl_80031290: /* 800312E4 7C 03 00 50 */ subf r0, r3, r0 /* 800312E8 54 00 28 3E */ rotlwi r0, r0, 5 /* 800312EC 7C 00 1A 14 */ add r0, r0, r3 -/* 800312F0 B0 0D 88 0A */ sth r0, struct_80450D88+0x2(r13) +/* 800312F0 B0 0D 88 0A */ sth r0, m_count__9daArrow_c+0x2(r13) /* 800312F4 38 60 00 01 */ li r3, 1 /* 800312F8 48 00 00 AC */ b lbl_800313A4 lbl_800312FC: @@ -81,7 +81,7 @@ lbl_80031320: /* 80031374 7C 03 00 50 */ subf r0, r3, r0 /* 80031378 54 00 28 3E */ rotlwi r0, r0, 5 /* 8003137C 7C 00 1A 14 */ add r0, r0, r3 -/* 80031380 B0 0D 88 0A */ sth r0, struct_80450D88+0x2(r13) +/* 80031380 B0 0D 88 0A */ sth r0, m_count__9daArrow_c+0x2(r13) /* 80031384 38 60 00 01 */ li r3, 1 /* 80031388 48 00 00 1C */ b lbl_800313A4 lbl_8003138C: diff --git a/asm/d/d_attention/Run__12dAttention_cFv.s b/asm/d/d_attention/Run__12dAttention_cFv.s index 0caeeaac933..26fd164b4e7 100644 --- a/asm/d/d_attention/Run__12dAttention_cFv.s +++ b/asm/d/d_attention/Run__12dAttention_cFv.s @@ -105,7 +105,7 @@ lbl_80072A9C: /* 80072A9C 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 /* 80072AA0 41 82 00 48 */ beq lbl_80072AE8 /* 80072AA4 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072AA8 4B FF D5 71 */ bl func_80070018 +/* 80072AA8 4B FF D5 71 */ bl padLockButton /* 80072AAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80072AB0 40 82 00 84 */ bne lbl_80072B34 /* 80072AB4 80 1F 03 34 */ lwz r0, 0x334(r31) @@ -124,7 +124,7 @@ lbl_80072AD8: /* 80072AE4 48 00 00 50 */ b lbl_80072B34 lbl_80072AE8: /* 80072AE8 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072AEC 4B FF D5 2D */ bl func_80070018 +/* 80072AEC 4B FF D5 2D */ bl padLockButton /* 80072AF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80072AF4 41 82 00 40 */ beq lbl_80072B34 /* 80072AF8 7F E3 FB 78 */ mr r3, r31 diff --git a/asm/d/d_attention/__ct__11dAttParam_cFl.s b/asm/d/d_attention/__ct__11dAttParam_cFl.s index 07212d18ad4..69accabe210 100644 --- a/asm/d/d_attention/__ct__11dAttParam_cFl.s +++ b/asm/d/d_attention/__ct__11dAttParam_cFl.s @@ -46,7 +46,7 @@ lbl_80070038: /* 800700E8 48 2F 88 AD */ bl strcmp /* 800700EC 7C 60 00 34 */ cntlzw r0, r3 /* 800700F0 54 00 D9 7E */ srwi r0, r0, 5 -/* 800700F4 98 0D 89 D8 */ stb r0, data_80450F58(r13) +/* 800700F4 98 0D 89 D8 */ stb r0, on_final_boss_stg(r13) /* 800700F8 7F E3 FB 78 */ mr r3, r31 /* 800700FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80070100 80 01 00 14 */ lwz r0, 0x14(r1) diff --git a/asm/d/d_attention/checkButton__12dAttention_cFv.s b/asm/d/d_attention/checkButton__12dAttention_cFv.s index db3e953c462..cfd402b4582 100644 --- a/asm/d/d_attention/checkButton__12dAttention_cFv.s +++ b/asm/d/d_attention/checkButton__12dAttention_cFv.s @@ -4,7 +4,7 @@ lbl_800720F8: /* 80072100 90 01 00 14 */ stw r0, 0x14(r1) /* 80072104 93 E1 00 0C */ stw r31, 0xc(r1) /* 80072108 7C 7F 1B 78 */ mr r31, r3 -/* 8007210C 88 0D 89 D8 */ lbz r0, data_80450F58(r13) +/* 8007210C 88 0D 89 D8 */ lbz r0, on_final_boss_stg(r13) /* 80072110 28 00 00 00 */ cmplwi r0, 0 /* 80072114 41 82 00 60 */ beq lbl_80072174 /* 80072118 88 0D 87 E4 */ lbz r0, mStayNo__20dStage_roomControl_c+0x0(r13) @@ -69,7 +69,7 @@ lbl_800721E8: /* 800721F0 48 00 00 9C */ b lbl_8007228C lbl_800721F4: /* 800721F4 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 800721F8 4B FF DE 21 */ bl func_80070018 +/* 800721F8 4B FF DE 21 */ bl padLockButton /* 800721FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80072200 40 82 00 10 */ bne lbl_80072210 /* 80072204 80 1F 03 34 */ lwz r0, 0x334(r31) @@ -105,7 +105,7 @@ lbl_8007223C: /* 80072270 48 00 00 1C */ b lbl_8007228C lbl_80072274: /* 80072274 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072278 4B FF DD A1 */ bl func_80070018 +/* 80072278 4B FF DD A1 */ bl padLockButton /* 8007227C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80072280 40 82 00 0C */ bne lbl_8007228C /* 80072284 38 00 00 04 */ li r0, 4 diff --git a/asm/rel/d/a/d_a_arrow/d_a_arrow/arrowShooting__9daArrow_cFv.s b/asm/rel/d/a/d_a_arrow/d_a_arrow/arrowShooting__9daArrow_cFv.s index fe937a00928..34fb0c2278d 100644 --- a/asm/rel/d/a/d_a_arrow/d_a_arrow/arrowShooting__9daArrow_cFv.s +++ b/asm/rel/d/a/d_a_arrow/d_a_arrow/arrowShooting__9daArrow_cFv.s @@ -154,8 +154,8 @@ lbl_8049ABF0: /* 8049AC14 60 00 00 02 */ ori r0, r0, 2 /* 8049AC18 90 1F 06 E0 */ stw r0, 0x6e0(r31) lbl_8049AC1C: -/* 8049AC1C 3C 60 80 45 */ lis r3, struct_80450D88+0x0@ha /* 0x80450D88@ha */ -/* 8049AC20 38 83 0D 88 */ addi r4, r3, struct_80450D88+0x0@l /* 0x80450D88@l */ +/* 8049AC1C 3C 60 80 45 */ lis r3, m_count__9daArrow_c+0x0@ha /* 0x80450D88@ha */ +/* 8049AC20 38 83 0D 88 */ addi r4, r3, m_count__9daArrow_c+0x0@l /* 0x80450D88@l */ /* 8049AC24 A8 04 00 00 */ lha r0, 0(r4) /* 8049AC28 B0 1F 09 4E */ sth r0, 0x94e(r31) /* 8049AC2C A8 64 00 00 */ lha r3, 0(r4) diff --git a/asm/rel/d/a/d_a_arrow/d_a_arrow/execute__9daArrow_cFv.s b/asm/rel/d/a/d_a_arrow/d_a_arrow/execute__9daArrow_cFv.s index f68c6a48c3a..b310bc9cb5e 100644 --- a/asm/rel/d/a/d_a_arrow/d_a_arrow/execute__9daArrow_cFv.s +++ b/asm/rel/d/a/d_a_arrow/d_a_arrow/execute__9daArrow_cFv.s @@ -41,8 +41,8 @@ lbl_8049CF14: /* 8049CF38 48 00 01 60 */ b lbl_8049D098 lbl_8049CF3C: /* 8049CF3C A8 9F 09 4E */ lha r4, 0x94e(r31) -/* 8049CF40 3C 60 80 45 */ lis r3, struct_80450D88+0x0@ha /* 0x80450D88@ha */ -/* 8049CF44 A8 03 0D 88 */ lha r0, struct_80450D88+0x0@l(r3) /* 0x80450D88@l */ +/* 8049CF40 3C 60 80 45 */ lis r3, m_count__9daArrow_c+0x0@ha /* 0x80450D88@ha */ +/* 8049CF44 A8 03 0D 88 */ lha r0, m_count__9daArrow_c+0x0@l(r3) /* 0x80450D88@l */ /* 8049CF48 7C 04 00 00 */ cmpw r4, r0 /* 8049CF4C 40 82 00 0C */ bne lbl_8049CF58 /* 8049CF50 38 00 00 01 */ li r0, 1 diff --git a/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/Create__11daTagMist_cFv.s b/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/Create__11daTagMist_cFv.s index 69caf3f1243..4c51652614c 100644 --- a/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/Create__11daTagMist_cFv.s +++ b/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/Create__11daTagMist_cFv.s @@ -42,8 +42,8 @@ lbl_8048F370: /* 8048F410 41 82 00 14 */ beq lbl_8048F424 /* 8048F414 80 1F 00 B0 */ lwz r0, 0xb0(r31) /* 8048F418 54 00 46 BE */ rlwinm r0, r0, 8, 0x1a, 0x1f -/* 8048F41C 3C 60 80 45 */ lis r3, struct_80450DC0+0x0@ha /* 0x80450DC0@ha */ -/* 8048F420 98 03 0D C0 */ stb r0, struct_80450DC0+0x0@l(r3) /* 0x80450DC0@l */ +/* 8048F41C 3C 60 80 45 */ lis r3, mPlayerNo__11daTagMist_c+0x0@ha /* 0x80450DC0@ha */ +/* 8048F420 98 03 0D C0 */ stb r0, mPlayerNo__11daTagMist_c+0x0@l(r3) /* 0x80450DC0@l */ lbl_8048F424: /* 8048F424 38 00 00 00 */ li r0, 0 /* 8048F428 98 1F 05 A0 */ stb r0, 0x5a0(r31) diff --git a/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/execute__11daTagMist_cFv.s b/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/execute__11daTagMist_cFv.s index 428201bb3d9..f7259cf39b8 100644 --- a/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/execute__11daTagMist_cFv.s +++ b/asm/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist/execute__11daTagMist_cFv.s @@ -69,8 +69,8 @@ lbl_8048F63C: /* 8048F65C 4B FF FC 69 */ bl onMySw__11daTagMist_cFv /* 8048F660 80 1F 00 B0 */ lwz r0, 0xb0(r31) /* 8048F664 54 00 46 BE */ rlwinm r0, r0, 8, 0x1a, 0x1f -/* 8048F668 3C 60 80 45 */ lis r3, struct_80450DC0+0x0@ha /* 0x80450DC0@ha */ -/* 8048F66C 98 03 0D C0 */ stb r0, struct_80450DC0+0x0@l(r3) /* 0x80450DC0@l */ +/* 8048F668 3C 60 80 45 */ lis r3, mPlayerNo__11daTagMist_c+0x0@ha /* 0x80450DC0@ha */ +/* 8048F66C 98 03 0D C0 */ stb r0, mPlayerNo__11daTagMist_c+0x0@l(r3) /* 0x80450DC0@l */ lbl_8048F670: /* 8048F670 9B DF 05 A0 */ stb r30, 0x5a0(r31) /* 8048F674 38 60 00 01 */ li r3, 1 diff --git a/include/JSystem/J3DGraphAnimator/J3DJointTree.h b/include/JSystem/J3DGraphAnimator/J3DJointTree.h index b8e82673399..4937fdae320 100644 --- a/include/JSystem/J3DGraphAnimator/J3DJointTree.h +++ b/include/JSystem/J3DGraphAnimator/J3DJointTree.h @@ -34,6 +34,7 @@ public: u16 getWEvlpMtxNum() const { return mWEvlpMtxNum; } u16 getJointNum() const { return mJointNum; } u16 getDrawMtxNum() const { return mDrawMtxData.mEntryNum; } + JUTNameTab* getJointName() const { return mJointName; } J3DJoint* getRootNode() { return mRootNode; } J3DJoint* getJointNodePointer(u16 idx) const { return mJointNodePointer[idx]; } J3DMtxCalc* getBasicMtxCalc() const { return mBasicMtxCalc; } diff --git a/include/JSystem/J3DGraphAnimator/J3DModelData.h b/include/JSystem/J3DGraphAnimator/J3DModelData.h index 5371f8113a8..bc4c2ba9a64 100644 --- a/include/JSystem/J3DGraphAnimator/J3DModelData.h +++ b/include/JSystem/J3DGraphAnimator/J3DModelData.h @@ -33,6 +33,7 @@ public: J3DShape* getShapeNodePointer(u16 idx) const { return mShapeTable.getShapeNodePointer(idx); } J3DJoint* getJointNodePointer(u16 idx) const { return mJointTree.getJointNodePointer(idx); } J3DJointTree& getJointTree() { return mJointTree; } + JUTNameTab* getJointName() const { return mJointTree.getJointName(); } Mtx& getInvJointMtx(s32 idx) const { return mJointTree.getInvJointMtx(idx); } J3DTexture* getTexture() const { return mMaterialTable.getTexture(); } JUTNameTab* getTextureName() const { return mMaterialTable.getTextureName(); } diff --git a/include/JSystem/JStudio/JStudio/jstudio-object.h b/include/JSystem/JStudio/JStudio/jstudio-object.h index 9f78474e13e..b0da5a20450 100644 --- a/include/JSystem/JStudio/JStudio/jstudio-object.h +++ b/include/JSystem/JStudio/JStudio/jstudio-object.h @@ -9,7 +9,9 @@ namespace JStudio { namespace data { - struct TEOperationData {}; + enum TEOperationData { + UNK_0x19 = 0x19, + }; }; struct TAdaptor; @@ -50,6 +52,26 @@ public: /* 8028680C */ virtual void do_wait(u32); /* 8028682C */ virtual void do_data(void const*, u32, void const*, u32); + void prepareAdaptor() { + if (mpAdaptor != NULL) { + // mpAdaptor->adaptor_setObject_(this); + // mpAdaptor->adaptor_do_begin(); + } + } + + template + T* createFromAdaptor(const stb::data::TParse_TBlock_object& param_0, T* param_1) { + T* n = new T(param_0, param_1); + + if (n == NULL) { + return NULL; + } + + n->prepareAdaptor(); + + return n; + } + /* 0x34 */ TAdaptor* mpAdaptor; }; @@ -86,7 +108,11 @@ struct TAdaptor { /* 80286648 */ void adaptor_setVariableValue_FVR_INDEX_(JStudio::TAdaptor*, JStudio::TControl*, u32, void const*, u32); - /* 0x4 */ TObject* pObject_; + void adaptor_setObject_(const TObject* pObject) { + pObject_ = pObject; + } + + /* 0x4 */ const TObject* pObject_; /* 0x8 */ TVariableValue* pValue_; /* 0xC */ u32 u; }; diff --git a/include/JSystem/JStudio/JStudio/stb-data-parse.h b/include/JSystem/JStudio/JStudio/stb-data-parse.h index ef96a0d35fa..b21486fcfb0 100644 --- a/include/JSystem/JStudio/JStudio/stb-data-parse.h +++ b/include/JSystem/JStudio/JStudio/stb-data-parse.h @@ -73,7 +73,7 @@ struct TParse_TParagraph_data : public TParseData_aligned<4> { }; TParse_TParagraph_data(const void* content) : TParseData_aligned<4>(content) {} - /* 80289A80 */ void getData(TData*) const; + /* 80289A80 */ void getData(TData* pData) const; }; // Parses a TObject ("demo object") diff --git a/include/JSystem/JStudio/JStudio/stb.h b/include/JSystem/JStudio/JStudio/stb.h index e54ddb4b838..ec5dfbb2e8d 100644 --- a/include/JSystem/JStudio/JStudio/stb.h +++ b/include/JSystem/JStudio/JStudio/stb.h @@ -152,6 +152,46 @@ private: /* 0x54 */ s32 _54; }; +template +struct TParseData { + TParseData(const void* pContent) { + data::TParse_TParagraph_data data(pContent); + set(data); + } + + void set(const data::TParse_TParagraph_data& data) { + //data::TParse_TParagraph_data::TData* p = (data::TParse_TParagraph_data::TData*)this; + data.getData(m_data); + } + + bool isEnd() const { + return m_data->_0 == 0; + } + + bool empty() const { + return m_data->_c == NULL; + } + + bool isValid() const { + return !empty() && m_data->_0 == 50; + } + + data::TParse_TParagraph_data::TData* m_data; +}; + +template +struct TParseData_fixed : public TParseData { + TParseData_fixed(const void* pContent) : TParseData(pContent) {} + + const void* getNext() const { + return m_data->_c; + } + + bool isValid() const { + return TParseData::isValid() && getNext() != NULL; + } +}; + } // namespace stb } // namespace JStudio diff --git a/include/MSL_C/MSL_Common/Src/wchar_io.h b/include/MSL_C/MSL_Common/Src/wchar_io.h index ba643b03fa9..fc8d3d43326 100644 --- a/include/MSL_C/MSL_Common/Src/wchar_io.h +++ b/include/MSL_C/MSL_Common/Src/wchar_io.h @@ -3,4 +3,6 @@ #include "dolphin/types.h" +typedef unsigned short wchar_t; + #endif /* MSL_COMMON_SRC_WCHAR_IO_H */ diff --git a/include/Z2AudioLib/Z2SeqMgr.h b/include/Z2AudioLib/Z2SeqMgr.h index 5a1ec56f388..3dedde1115a 100644 --- a/include/Z2AudioLib/Z2SeqMgr.h +++ b/include/Z2AudioLib/Z2SeqMgr.h @@ -25,8 +25,8 @@ class Z2SeqMgr { public: Z2SeqMgr(); - void bgmStart(u32, u32, s32); - void bgmStop(u32, s32); + void bgmStart(u32 i_bgmID, u32, s32); + void bgmStop(u32 i_bgmID, s32); void subBgmStart(u32); void subBgmStop(); void subBgmStopInner(); @@ -79,12 +79,12 @@ public: void i_setTwilightGateVol(f32 vol) { mTwilightGateVol = vol; } - void i_setWindStoneVol(f32 vol, u32 count) { field_0x94.move(vol, count); } + void i_setWindStoneVol(f32 vol, u32 count) { mWindStone.move(vol, count); } - void i_bgmAllUnMute(u32 count) { field_0x74.move(1.0f, count); } + void i_bgmAllUnMute(u32 count) { mAllBgmMaster.move(1.0f, count); } void i_unMuteSceneBgm(u32 count) { - field_0x34.move(1.0f, 0); + mBgmPause.move(1.0f, 0); field_0x44.move(1.0f, count); } @@ -94,15 +94,15 @@ private: /* 0x08 */ JAISoundHandle field_0x08; /* 0x0C */ JAISoundHandle field_0x0c; /* 0x10 */ JAISoundID field_0x10; - /* 0x14 */ Z2SoundFader field_0x14; - /* 0x24 */ Z2SoundFader field_0x24; - /* 0x34 */ Z2SoundFader field_0x34; + /* 0x14 */ Z2SoundFader mMainBgmMaster; + /* 0x24 */ Z2SoundFader mSubBgmMaster; + /* 0x34 */ Z2SoundFader mBgmPause; /* 0x44 */ Z2SoundFader field_0x44; - /* 0x54 */ Z2SoundFader field_0x54; + /* 0x54 */ Z2SoundFader mFanfareMute; /* 0x64 */ Z2SoundFader field_0x64; - /* 0x74 */ Z2SoundFader field_0x74; + /* 0x74 */ Z2SoundFader mAllBgmMaster; /* 0x84 */ Z2SoundFader field_0x84; - /* 0x94 */ Z2SoundFader field_0x94; + /* 0x94 */ Z2SoundFader mWindStone; /* 0xA4 */ Z2SoundFader field_0xa4; /* 0xB4 */ f32 mTwilightGateVol; /* 0xB8 */ u16 field_0xb8; diff --git a/include/d/com/d_com_inf_game.h b/include/d/com/d_com_inf_game.h index 899e6e40841..687eaf1aef7 100644 --- a/include/d/com/d_com_inf_game.h +++ b/include/d/com/d_com_inf_game.h @@ -380,6 +380,8 @@ public: return mCameraInfo[i].mCameraAttentionStatus & flag; } void setCameraAttentionStatus(int i, u32 flag) { mCameraInfo[i].mCameraAttentionStatus = flag; } + void onCameraAttentionStatus(int i, u32 flag) { mCameraInfo[i].mCameraAttentionStatus |= flag; } + void offCameraAttentionStatus(int i, u32 flag) { mCameraInfo[i].mCameraAttentionStatus &= ~flag; } void setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) { mCameraInfo[camIdx].mCamera = p_cam; mCameraInfo[camIdx].field_0x4 = param_2; @@ -400,6 +402,7 @@ public: int getMessageCountNumber() { return mMessageCountNum; } void setWindowNum(u8 num) { mWindowNum = num; } + int getWindowNum() { return mWindowNum; } dDlst_window_c* getWindow(int i) { return &mWindow[i]; } void setWindow(int i, f32 param_1, f32 param_2, f32 param_3, f32 param_4, f32 param_5, f32 param_6, int camID, int mode) { @@ -1062,6 +1065,10 @@ inline u8 dComIfGs_getOptVibration() { return g_dComIfG_gameInfo.info.getPlayer().getConfig().getVibration(); } +inline u8 dComIfGs_getOptAttentionType() { + return g_dComIfG_gameInfo.info.getPlayer().getConfig().getAttentionType(); +} + inline BOOL dComIfGs_isTbox(int i_no) { return g_dComIfG_gameInfo.info.getMemory().getBit().isTbox(i_no); } @@ -1400,7 +1407,7 @@ inline void dComIfGs_setTmpReg(u16 reg, u8 flag) { g_dComIfG_gameInfo.info.getTmp().setEventReg(reg, flag); } -inline u8 dComIfGs_getTmpReg(u16 reg) { +inline int dComIfGs_getTmpReg(u16 reg) { return g_dComIfG_gameInfo.info.getTmp().getEventReg(reg); } @@ -2026,6 +2033,14 @@ inline BOOL dComIfGp_checkCameraAttentionStatus(int i, u32 flag) { return g_dComIfG_gameInfo.play.checkCameraAttentionStatus(i, flag); } +inline void dComIfGp_onCameraAttentionStatus(int i, u32 flag) { + g_dComIfG_gameInfo.play.onCameraAttentionStatus(i, flag); +} + +inline void dComIfGp_offCameraAttentionStatus(int i, u32 flag) { + g_dComIfG_gameInfo.play.offCameraAttentionStatus(i, flag); +} + inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) { g_dComIfG_gameInfo.play.setCameraInfo(camIdx, p_cam, param_2, param_3, param_4); @@ -2171,6 +2186,10 @@ inline void dComIfGp_setWindowNum(int num) { g_dComIfG_gameInfo.play.setWindowNum(num); } +inline int dComIfGp_getWindowNum() { + return g_dComIfG_gameInfo.play.getWindowNum(); +} + inline dDlst_window_c* dComIfGp_getWindow(int i) { return g_dComIfG_gameInfo.play.getWindow(i); } @@ -2546,6 +2565,13 @@ inline view_class* dComIfGd_getView() { return g_dComIfG_gameInfo.drawlist.getView(); } +inline MtxP dComIfGd_getViewRotMtx() { + return ((camera_process_class*)g_dComIfG_gameInfo.drawlist.getView())->mViewMtxNoTrans; +} +inline MtxP dComIfGd_getViewMtx() { + return ((camera_process_class*)g_dComIfG_gameInfo.drawlist.getView())->mViewMtx; +} + inline J3DDrawBuffer* dComIfGd_getListFilter() { return g_dComIfG_gameInfo.drawlist.getOpaListFilter(); } @@ -2578,6 +2604,11 @@ inline void dComIfGd_setListItem3D() { g_dComIfG_gameInfo.drawlist.setXluListItem3D(); } +inline void dComIfGd_setList3Dlast() { + g_dComIfG_gameInfo.drawlist.setOpaList3Dlast(); + g_dComIfG_gameInfo.drawlist.setXluList3Dlast(); +} + inline void dComIfGd_setXluList2DScreen() { g_dComIfG_gameInfo.drawlist.setXluList2DScreen(); } diff --git a/include/d/com/d_com_static.h b/include/d/com/d_com_static.h index 2268d3081a5..9f15a064987 100644 --- a/include/d/com/d_com_static.h +++ b/include/d/com/d_com_static.h @@ -11,21 +11,36 @@ public: class data_c { public: /* 80030F14 */ void set(s8, cXyz const&, cXyz const&, u8, u8, u8); - /* 80030FBC */ void reset(); - /* 80030FCC */ void isSwitch(); - /* 800310C8 */ void check(fopAc_ac_c*); - /* 80031038 */ void check(cXyz const&); + /* 80030FBC */ data_c* reset(); + /* 80030FCC */ u8 isSwitch(); + /* 800310C8 */ u8 check(fopAc_ac_c*); + /* 80031038 */ bool check(cXyz const&); /* 80031150 */ void execute(); /* 80031F28 */ ~data_c(); /* 80031F64 */ data_c(); - }; + + void setNext(data_c* i_next) { mpNext = i_next; } + data_c* getNext() { return mpNext; } + u8 getType() { return mType; } + + /* 0x00 */ s8 mRoomNo; + /* 0x01 */ bool field_0x1; + /* 0x02 */ u8 field_0x2; + /* 0x03 */ u8 field_0x3; + /* 0x04 */ u8 mType; + /* 0x08 */ cXyz field_0x8; + /* 0x14 */ cXyz field_0x14; + /* 0x20 */ data_c* mpNext; + }; // Size: 0x24 class room_c { public: /* 80031190 */ void add(daSus_c::data_c*); /* 800311FC */ void reset(); /* 80031EE4 */ room_c(); - }; + + /* 0x0 */ data_c* mpData; + }; // Size: 0x4 /* 80031248 */ void newData(s8, cXyz const&, cXyz const&, u8, u8, u8); /* 800313BC */ void reset(); @@ -35,6 +50,7 @@ public: static u8 mData[1152]; static u8 mRoom[256]; + static s16 mSetTop; }; #endif /* D_COM_D_COM_STATIC_H */ diff --git a/include/d/d_attention.h b/include/d/d_attention.h index d0c674f9049..b214b991cdd 100644 --- a/include/d/d_attention.h +++ b/include/d/d_attention.h @@ -10,32 +10,32 @@ class dAttHint_c { public: dAttHint_c() {} - /* 800738B4 */ void getPId(void*); - /* 800738CC */ void convPId(unsigned int); - /* 800738FC */ void request(fopAc_ac_c*, int); + /* 800738B4 */ u32 getPId(void*); + /* 800738CC */ fopAc_ac_c* convPId(unsigned int); + /* 800738FC */ int request(fopAc_ac_c*, int); /* 80073958 */ void init(); /* 80073970 */ void proc(); private: /* 0x0 */ u32 mHintActorID; - /* 0x4 */ u32 mPriority; + /* 0x4 */ int mPriority; /* 0x8 */ u32 field_0x8; }; class dAttCatch_c { public: dAttCatch_c() {} - s32 convPId(unsigned int); + fopAc_ac_c* convPId(unsigned int); void init(); void proc(); void request(fopAc_ac_c*, u8, f32, f32, f32, s16, int); - s32 getCatghTarget() { return convPId(mCatghTargetID); } + fopAc_ac_c* getCatghTarget() { return convPId(mCatghTargetID); } u8 getChangeItem() { return mChangeItem; } private: - /* 0x00 */ void* field_0x0; - /* 0x04 */ f32 field_0x4; + /* 0x00 */ u32 field_0x0; + /* 0x04 */ int field_0x4; /* 0x08 */ f32 field_0x8; /* 0x0C */ u8 field_0xc; /* 0x0D */ u8 field_0xd; @@ -47,11 +47,7 @@ private: class dAttParam_c { public: - dAttParam_c() {} - /* 80070038 */ dAttParam_c(s32); - -private: - /* 0x00 */ u16 field_0x0; + /* 0x00 */ u16 mFlags; /* 0x04 */ f32 field_0x4; /* 0x08 */ f32 field_0x8; /* 0x0C */ f32 field_0xc; @@ -66,21 +62,23 @@ private: /* 0x30 */ f32 mAttnCursorOffsetY; /* 0x34 */ u8 mAttnCursorAppearFrames; /* 0x35 */ u8 mAttnCursorDisappearFrames; + /* 0x38 */ f32 field_0x38; + /* 0x3C */ f32 field_0x3c; public: - /* 80070110 */ virtual ~dAttParam_c(); - /* 0x38 vtable */ + dAttParam_c() {} + /* 80070038 */ dAttParam_c(s32); -private: - /* 0x3C */ f32 mSelCursorAnmSpeed; - /* 0x40 */ f32 mAttnCursorAnmSpeed; - /* 0x44 */ u32 mDispPosX; - /* 0x48 */ u32 mDispPosY; -}; // Size = 0x4C + /* 80070110 */ virtual ~dAttParam_c(); + + bool CheckFlag(u16 flag) { return mFlags & flag; } + + /* 0x40 vtable */ +}; // Size: 0x44 class dAttLook_c { public: - /* 80073CA4 */ void convPId(unsigned int); + /* 80073CA4 */ fopAc_ac_c* convPId(unsigned int); /* 80073CD4 */ void init(); /* 80073CEC */ void proc(); /* 80073D08 */ void request(fopAc_ac_c*, f32, f32, f32, s16, int); @@ -96,10 +94,11 @@ class dAttList_c { public: /* 800304D0 */ ~dAttList_c() {} /* 8003050C */ dAttList_c() {} - /* 80073864 */ void getActor(); + /* 80073864 */ fopAc_ac_c* getActor(); /* 80073898 */ void setActor(fopAc_ac_c*); -private: + u32 getPid() { return mActorID; } + /* 0x00 */ f32 mWeight; /* 0x04 */ f32 mDistance; /* 0x08 */ cSAngle mAngle; @@ -117,15 +116,15 @@ public: /* 800732B0 */ void draw(cXyz&, f32 (*)[4]); /* 0x000 */ J3DModel* mModel[2]; - /* 0x008 */ mDoExt_bckAnm bckAnm[2]; - /* 0x040 */ mDoExt_bpkAnm bpkAnm[2]; - /* 0x070 */ mDoExt_brkAnm brkAnm[2]; - /* 0x0A0 */ mDoExt_brkAnm brkAnm2[2]; - /* 0x0D0 */ mDoExt_btkAnm btkAnm[2]; - /* 0x100 */ mDoExt_bckAnm bckAnm2; - /* 0x11C */ mDoExt_bpkAnm bpkAnm2; - /* 0x134 */ mDoExt_brkAnm brkAnm3; - /* 0x14C */ mDoExt_btkAnm btkAnm2; + /* 0x008 */ mDoExt_bckAnm mNoticeCursorBck[2]; + /* 0x040 */ mDoExt_bpkAnm mNoticeCursorBpk[2]; + /* 0x070 */ mDoExt_brkAnm mNoticeCursorBrk[2]; + /* 0x0A0 */ mDoExt_brkAnm mNoticeCursor02Brk[2]; + /* 0x0D0 */ mDoExt_btkAnm mNoticeCursorBtk[2]; + /* 0x100 */ mDoExt_bckAnm mImpactBck; + /* 0x11C */ mDoExt_bpkAnm mImpactBpk; + /* 0x134 */ mDoExt_brkAnm mImpactBrk; + /* 0x14C */ mDoExt_btkAnm mImpactBtk; /* 0x164 */ cXyz field_0x164; /* 0x170 */ u8 field_0x170; /* 0x171 */ u8 field_0x171; @@ -152,45 +151,56 @@ struct dist_entry { u32 field_0x18; }; // Size: 0x1C +struct type_tbl_entry { + s16 field_0x0; + u16 field_0x2; +}; + class dAttention_c { public: + enum EState { + ST_NONE, + ST_LOCK, + ST_RELEASE, + }; + dAttention_c() {} /* 80070198 */ dAttention_c(fopAc_ac_c*, u32); /* 80070774 */ ~dAttention_c(); - /* 80070844 */ void GetLockonList(s32); - /* 80070880 */ void getActionBtnB(); - /* 80070974 */ void getActionBtnXY(); - /* 80070A70 */ void chkAttMask(u32, u32); - /* 80070E90 */ void calcWeight(int, fopAc_ac_c*, f32, s16, s16, u32*); + /* 80070844 */ dAttList_c* GetLockonList(s32); + /* 80070880 */ dAttList_c* getActionBtnB(); + /* 80070974 */ dAttList_c* getActionBtnXY(); + /* 80070A70 */ int chkAttMask(u32, u32); + /* 80070E90 */ f32 calcWeight(int, fopAc_ac_c*, f32, s16, s16, u32*); /* 800710C0 */ void setList(int, fopAc_ac_c*, f32, f32, cSAngle, u32); /* 80071240 */ void initList(u32); - /* 800713CC */ void makeList(); + /* 800713CC */ int makeList(); /* 80071424 */ void setOwnerAttentionPos(); - /* 80071488 */ void SelectAttention(fopAc_ac_c*); + /* 80071488 */ int SelectAttention(fopAc_ac_c*); /* 800716B8 */ void sortList(); /* 800718A4 */ void stockAttention(); - /* 80071960 */ void nextAttention(); - /* 80071A68 */ void freeAttention(); - /* 80071A98 */ void chaseAttention(); - /* 80071CC0 */ void EnemyDistance(fopAc_ac_c*); + /* 80071960 */ fopAc_ac_c* nextAttention(); + /* 80071A68 */ int freeAttention(); + /* 80071A98 */ bool chaseAttention(); + /* 80071CC0 */ f32 EnemyDistance(fopAc_ac_c*); /* 80071DEC */ void runSoundProc(); /* 80071E84 */ void runDrawProc(); /* 800720F4 */ void runDebugDisp(); /* 800720F8 */ void checkButton(); - /* 800722A0 */ void triggerProc(); - /* 800722EC */ void lostCheck(); + /* 800722A0 */ bool triggerProc(); + /* 800722EC */ int lostCheck(); /* 80072344 */ void judgementStatus4Hold(); /* 800725F0 */ void judgementStatus4Switch(); - /* 80072924 */ void Run(); + /* 80072924 */ int Run(); /* 80072BD4 */ void Draw(); /* 80072D80 */ void lockSoundStart(u32); - /* 8007353C */ void LockonTarget(s32); - /* 800735DC */ void LockonReleaseDistanse(); - /* 800736CC */ void LockonTargetPId(s32); - /* 80073734 */ void ActionTarget(s32); - /* 8007378C */ void CheckObjectTarget(s32); + /* 8007353C */ fopAc_ac_c* LockonTarget(s32); + /* 800735DC */ f32 LockonReleaseDistanse(); + /* 800736CC */ u32 LockonTargetPId(s32); + /* 80073734 */ fopAc_ac_c* ActionTarget(s32); + /* 8007378C */ fopAc_ac_c* CheckObjectTarget(s32); /* 800737E4 */ bool LockonTruth(); - /* 80073838 */ void checkDistance(cXyz*, s16, cXyz*, f32, f32, f32, f32); + /* 80073838 */ int checkDistance(cXyz*, s16, cXyz*, f32, f32, f32, f32); /* 8016E424 */ void LockEdge(); /* 80182994 */ void GetCheckObjectCount(); /* 80182AD0 */ void keepLock(int); @@ -199,6 +209,8 @@ public: dAttCatch_c& getCatghTarget() { return mCatghTarget; } u8 getCatchChgItem() { return mCatghTarget.getChangeItem(); } BOOL chkFlag(u32 flag) { return mFlags & flag; } + void setFlag(u32 flag) { mFlags |= flag; } + void clrFlag(u32 flag) { mFlags &= ~flag; } s8 Lockon() { /* s32 chk = true; if (!LockonTruth() && !chkFlag(0x20000000)) { @@ -209,28 +221,28 @@ public: return !LockonTruth() && !chkFlag(0x20000000); } - static u8 loc_type_tbl[12]; - static u8 act_type_tbl[20]; + static type_tbl_entry loc_type_tbl[3]; + static type_tbl_entry act_type_tbl[5]; static dist_entry dist_table[234]; - static u32 loc_type_num; - static u32 act_type_num; - static u32 chk_type_tbl; - static u32 chk_type_num; + static int loc_type_num; + static int act_type_num; + static type_tbl_entry chk_type_tbl[1]; + static int chk_type_num; public: /* 0x000 */ fopAc_ac_c* mpPlayer; /* 0x004 */ u32 mLockTargetID; /* 0x008 */ dAttDraw_CallBack_c mpDrawCallback; - /* 0x00C */ u32 field_0xc; + /* 0x00C */ u32 mPadNo; /* 0x010 */ u32 field_0x10; /* 0x014 */ u8 field_0x14[4]; /* 0x018 */ JKRSolidHeap* heap; - /* 0x01C */ cXyz field_0x1c; + /* 0x01C */ cXyz mDrawAttnPos; /* 0x028 */ dAttDraw_c draw[2]; - /* 0x318 */ int field_0x318; - /* 0x31C */ cXyz field_0x31c; - /* 0x328 */ u8 field_0x328; - /* 0x329 */ u8 field_0x329; + /* 0x318 */ u32 mTargetActorID; + /* 0x31C */ cXyz mOwnerAttnPos; + /* 0x328 */ s8 field_0x328; + /* 0x329 */ u8 mAttnStatus; /* 0x32A */ u8 field_0x32a; /* 0x32B */ u8 field_0x32b; /* 0x32C */ u8 field_0x32c; @@ -248,22 +260,17 @@ public: /* 0x3E0 */ dAttList_c mActionList[4]; /* 0x430 */ int mActionCount; /* 0x434 */ int mActionOffset; - /* 0x438 */ dAttList_c field_0x438[4]; + /* 0x438 */ dAttList_c mCheckObjectList[4]; /* 0x488 */ int mCheckObjectCount; - /* 0x48C */ int field_0x48c; + /* 0x48C */ int mCheckObjectOffset; /* 0x490 */ dAttHint_c mZHintTarget; /* 0x49C */ dAttCatch_c mCatghTarget; /* 0x4B4 */ dAttLook_c mLookTarget; - /* 0x4C4 */ int field_0x4c4; - /* 0x4C8 */ u8 field_0x4c8; - /* 0x4C9 */ u8 field_0x4c9; - /* 0x4CA */ u8 field_0x4ca; - /* 0x4CB */ u8 field_0x4cb; - /* 0x4CC */ u8 field_0x4cc; - /* 0x4CD */ u8 field_0x4cd; - /* 0x4CE */ u8 field_0x4ce; - /* 0x4CF */ u8 field_0x4cf; - /* 0x4D0 */ dAttParam_c mAttParam; + /* 0x4C4 */ int mAttnBlockTimer; + /* 0x4C8 */ dAttParam_c mAttParam; + /* 0x50C */ u8 field_0x50c[0x514 - 0x50c]; + /* 0x514 */ u32 mEnemyActorID; + /* 0x518 */ f32 mEnemyDist; }; // Size: 0x51C STATIC_ASSERT(sizeof(dAttention_c) == 0x51C); diff --git a/include/d/d_demo.h b/include/d/d_demo.h index 584e24cc858..15d09fb5cda 100644 --- a/include/d/d_demo.h +++ b/include/d/d_demo.h @@ -52,15 +52,15 @@ public: class dDemo_actor_c : public JStage::TActor { public: /* 80038020 */ dDemo_actor_c(); - /* 80038128 */ void getActor(); + /* 80038128 */ fopAc_ac_c* getActor(); /* 8003815C */ void setActor(fopAc_ac_c*); - /* 8003819C */ void getPrm_Morf(); + /* 8003819C */ f32 getPrm_Morf(); /* 80038338 */ void getDemoIDData(int*, int*, int*, u16*, u8*); /* 80038098 */ virtual ~dDemo_actor_c(); /* 800387EC */ virtual void JSGSetData(u32, void const*, u32); - /* 8003A05C */ virtual void JSGFindNodeID(char const*) const; - /* 8003A088 */ virtual void JSGGetNodeTransformation(u32, f32 (*)[4]) const; + /* 8003A05C */ virtual s32 JSGFindNodeID(char const*) const; + /* 8003A088 */ virtual int JSGGetNodeTransformation(u32, f32 (*)[4]) const; /* 8003A0D8 */ virtual void JSGGetTranslation(Vec*) const; /* 80038920 */ virtual void JSGSetTranslation(Vec const&); /* 8003A0F4 */ virtual void JSGGetScaling(Vec*) const; @@ -77,6 +77,16 @@ public: /* 8003A0D0 */ virtual f32 JSGGetTextureAnimationFrameMax() const; void setModel(J3DModel* p_model) { mModel = p_model; } + u8 checkEnable(u16 flag) { return mFlags & flag; } + void onEnable(u16 flag) { mFlags |= flag; } + cXyz& getTrans() { return mTrans; } + cXyz& getScale() { return mScale; } + csXyz& getRatate() { return mRotate; } + u32 getAnmId() { return mAnmId; } + u32 getOldAnmId() { return mOldAnmId; } + void setOldAnmId(u32 id) { mOldAnmId = id; } + void setAnmFrameMax(f32 max) { mAnmFrameMax = max; } + f32 getAnmFrame() { return mAnmFrame; } private: /* 0x04 */ u16 mFlags; @@ -136,6 +146,8 @@ public: /* 80038EA8 */ virtual void JSGSetAngleAttenuation(f32, GXSpotFn); /* 80038EC0 */ virtual void JSGSetDirection(Vec const&); + void onEnable(u8 flag) { mFlags |= flag; } + private: /* 0x04 */ u8 mFlags; /* 0x08 */ JStage::TELight mLightType; @@ -161,6 +173,8 @@ public: /* 80038F10 */ virtual void JSGSetEndZ(f32); /* 80038F24 */ virtual void JSGSetColor(GXColor); + void onEnable(u8 flag) { mFlags |= flag; } + private: /* 0x04 */ u8 mFlags; /* 0x05 */ u8 mFogType; @@ -193,6 +207,8 @@ public: /* 80038D84 */ virtual f32 JSGGetViewRoll() const; /* 80038DDC */ virtual void JSGSetViewRoll(f32); + void onEnable(u8 flag) { mFlags |= flag; } + private: /* 0x04 */ u8 mFlags; /* 0x08 */ f32 mProjNear; @@ -214,6 +230,8 @@ public: /* 800394C8 */ virtual ~dDemo_ambient_c(); /* 80038DF0 */ virtual void JSGSetColor(GXColor); + void onEnable(u8 flag) { mFlags |= flag; } + private: /* 0x04 */ u8 mFlags; /* 0x05 */ GXColor mColor; @@ -255,6 +273,8 @@ public: static s32 getMode() { return m_mode; } static JStudio::stb::TControl* getControl() { return m_control; } static bool isStatus(u32 status) { return m_status & status; } + static void onStatus(u32 status) { m_status |= status; } + static void offStatus(u32 status) { m_status &= ~status; } static void setBranchData(const u8* p_data) { m_branchData = p_data; } static s16 m_branchId; diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h index 256a1f1b109..423383e051e 100644 --- a/include/d/d_drawlist.h +++ b/include/d/d_drawlist.h @@ -226,6 +226,7 @@ public: /* 80051ADC */ void setScissor(f32, f32, f32, f32); void setCameraID(int id) { mCameraID = id; } + s8 getCameraID() { return mCameraID; } void setMode(int mode) { mMode = mode; } f32 getViewPort() { return mXOrig; } @@ -304,6 +305,8 @@ public: void setXluListItem3D() { setXluDrawList(mDrawBuffers[DB_XLU_LIST_ITEM3D]); } void setXluListBG() { setXluDrawList(mDrawBuffers[DB_XLU_LIST_BG]); } void setOpaListBG() { setOpaDrawList(mDrawBuffers[DB_OPA_LIST_BG]); } + void setOpaList3Dlast() { setOpaDrawList(mDrawBuffers[DB_LIST_3D_LAST]); } + void setXluList3Dlast() { setXluDrawList(mDrawBuffers[DB_LIST_3D_LAST]); } void setXluList2DScreen() { setXluDrawList(mDrawBuffers[DB_LIST_2D_SCREEN]); } void peekZdata() { mPeekZ.peekData(); } diff --git a/include/d/d_lib.h b/include/d/d_lib.h index 121bff182e6..0f87597d275 100644 --- a/include/d/d_lib.h +++ b/include/d/d_lib.h @@ -2,6 +2,7 @@ #define D_D_LIB_H #include "dolphin/types.h" +#include "dolphin/os/OS.h" struct JKRAramArchive; u32 dLib_getExpandSizeFromAramArchive(JKRAramArchive* arc, char const* resName); @@ -71,12 +72,13 @@ struct CSTControl : public STControl { }; struct dLib_time_c { - /* 80032804 */ void getTime(); + /* 80032804 */ static OSTime getTime(); /* 80032880 */ static void stopTime(); /* 800328BC */ static void startTime(); - static u8 m_diffTime[4]; - static u8 m_stopTime[4]; + static OSTime m_diffTime; + static OSTime m_stopTime; + static bool m_timeStopped; }; #endif /* D_D_LIB_H */ diff --git a/include/d/msg/d_msg_object.h b/include/d/msg/d_msg_object.h index dbf173e88bb..b42daaa3bbe 100644 --- a/include/d/msg/d_msg_object.h +++ b/include/d/msg/d_msg_object.h @@ -273,6 +273,10 @@ inline void dMsgObject_readMessageGroup(mDoDvdThd_mountXArchive_c** param_0) { dMsgObject_getMsgObjectClass()->readMessageGroup(param_0); } +inline void dMsgObject_setDemoMessage(u32 param_0) { + dMsgObject_getMsgObjectClass()->setDemoMessage(param_0); +} + inline void dMsgObject_setShopWaitTimer(u8 timer) { dMsgObject_c::setShopWaitTimer(timer); } diff --git a/include/dolphin/base/PPCArch.h b/include/dolphin/base/PPCArch.h index 4af0a94b338..d721eb225c8 100644 --- a/include/dolphin/base/PPCArch.h +++ b/include/dolphin/base/PPCArch.h @@ -3,4 +3,12 @@ #include "dolphin/types.h" +union FpscrUnion { + f64 f; + struct { + u32 fpscr_pad; + u32 fpscr; + } u; +}; + #endif /* PPCARCH_H */ diff --git a/include/f_op/f_op_actor.h b/include/f_op/f_op_actor.h index 77f98548aa2..a7fe695e1d9 100644 --- a/include/f_op/f_op_actor.h +++ b/include/f_op/f_op_actor.h @@ -26,6 +26,7 @@ public: void setMapToolId(u8 id) { mMapToolId = id; } void setEventId(s16 id) { mEventId = id; } void setCondition(u16 condition) { mCondition = condition; } + u16 getCondition() { return mCondition; } void setArchiveName(char* name) { mArchiveName = name; } u8 getMapToolId() { return mMapToolId; } s16 getEventId() { return mEventId; } diff --git a/include/m_Do/m_Do_audio.h b/include/m_Do/m_Do_audio.h index fe95da62591..8e2f27af0e5 100644 --- a/include/m_Do/m_Do_audio.h +++ b/include/m_Do/m_Do_audio.h @@ -47,8 +47,12 @@ inline void mDoAud_bgmSetSwordUsing(s32 id) { Z2AudioMgr::getInterface()->mSeqMgr.bgmSetSwordUsing(id); } -inline void mDoAud_bgmStart(u32 id) { - Z2AudioMgr::getInterface()->mSeqMgr.bgmStart(id, 0, 0); +inline void mDoAud_bgmStart(u32 i_bgmID) { + Z2AudioMgr::getInterface()->mSeqMgr.bgmStart(i_bgmID, 0, 0); +} + +inline void mDoAud_bgmNowBattle(f32 param_0) { + Z2AudioMgr::getInterface()->mSeqMgr.bgmNowBattle(param_0); } inline void mDoAud_bgmStreamPrepare(u32 param_0) { @@ -75,13 +79,13 @@ inline void mDoAud_setInDarkness(bool state) { Z2AudioMgr::getInterface()->mSceneMgr.setInDarkness(state); } -inline void mDoAud_seStart(u32 sfx_id, const Vec* param_1, u32 param_2, s8 param_3) { - Z2AudioMgr::getInterface()->mSeMgr.seStart(sfx_id, param_1, param_2, param_3, 1.0f, 1.0f, -1.0f, +inline void mDoAud_seStart(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) { + Z2AudioMgr::getInterface()->mSeMgr.seStart(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f, -1.0f, -1.0f, 0); } -inline void i_mDoAud_seStartLevel(u32 sfx_id, const Vec* param_1, u32 param_2, s8 param_3) { - Z2AudioMgr::getInterface()->mSeMgr.seStartLevel(sfx_id, param_1, param_2, param_3, 1.0f, 1.0f, +inline void i_mDoAud_seStartLevel(u32 i_sfxID, const Vec* i_sePos, u32 param_2, s8 i_reverb) { + Z2AudioMgr::getInterface()->mSeMgr.seStartLevel(i_sfxID, i_sePos, param_2, i_reverb, 1.0f, 1.0f, -1.0f, -1.0f, 0); } diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h index 1d932e8347d..7af5266ac03 100644 --- a/include/m_Do/m_Do_ext.h +++ b/include/m_Do/m_Do_ext.h @@ -237,9 +237,11 @@ public: /* 8000FAE8 */ virtual ~mDoExt_morf_c(); void setPlaySpeed(f32 speed) { mFrameCtrl.setRate(speed); } + void setFrame(f32 frame) { mFrameCtrl.setFrame((s16)frame); } f32 getPlaySpeed() { return mFrameCtrl.getRate(); } f32 getFrame() { return mFrameCtrl.getFrame(); } + f32 getEndFrame() { return mFrameCtrl.getEnd(); } bool isStop() { bool stopped = true; @@ -309,6 +311,8 @@ public: /* 8000FD10 */ virtual ~mDoExt_McaMorf(); /* 80010074 */ virtual void calc(); + J3DModel* getModel() { return mpModel; } + private: /* 0x38 */ mDoExt_McaMorfCallBack1_c* mpCallback1; /* 0x3C */ mDoExt_McaMorfCallBack2_c* mpCallback2; diff --git a/include/rel/d/a/d_a_movie_player/d_a_movie_player.h b/include/rel/d/a/d_a_movie_player/d_a_movie_player.h index 848f6787a1a..8461581f8bf 100644 --- a/include/rel/d/a/d_a_movie_player/d_a_movie_player.h +++ b/include/rel/d/a/d_a_movie_player/d_a_movie_player.h @@ -4,14 +4,12 @@ #include "dolphin/types.h" #include "f_op/f_op_actor.h" -typedef void (*daMP_Func)(); - class daMP_c : public fopAc_ac_c { public: - /* 80031AD0 */ static void daMP_c_THPPlayerPlay(); - /* 80031B24 */ void daMP_c_THPPlayerPause(); - /* 80031A78 */ void daMP_c_Get_MovieRestFrame(); - /* 80031AA4 */ void daMP_c_Set_PercentMovieVolume(f32); + /* 80031AD0 */ static int daMP_c_THPPlayerPlay(); + /* 80031B24 */ static void daMP_c_THPPlayerPause(); + /* 80031A78 */ static int daMP_c_Get_MovieRestFrame(); + /* 80031AA4 */ static void daMP_c_Set_PercentMovieVolume(f32); /* 80878BB8 */ void daMP_c_Get_arg_demoNo(); /* 80878C04 */ void daMP_c_Get_arg_movieNo(); /* 80878C28 */ void daMP_c_Init(); @@ -24,15 +22,15 @@ public: /* 80878F38 */ void daMP_c_Callback_Main(daMP_c*); /* 80878F70 */ void daMP_c_Callback_Draw(daMP_c*); - static u8 m_myObj[4]; + static daMP_c* m_myObj; private: - /* 0x568 */ daMP_Func mpGetMovieRestFrame; - /* 0x56C */ daMP_Func mpSetPercentMovieVol; - /* 0x570 */ daMP_Func mpTHPGetTotalFrame; - /* 0x574 */ daMP_Func mpTHPPlay; - /* 0x578 */ daMP_Func mpTHPStop; - /* 0x57C */ daMP_Func mpTHPPause; + /* 0x568 */ int (*mpGetMovieRestFrame)(void); + /* 0x56C */ void (*mpSetPercentMovieVol)(f32); + /* 0x570 */ int (*mpTHPGetTotalFrame)(void); + /* 0x574 */ int (*mpTHPPlay)(void); + /* 0x578 */ void (*mpTHPStop)(void); + /* 0x57C */ int (*mpTHPPause)(void); }; // Size: 0x580 #endif /* D_A_MOVIE_PLAYER_H */ diff --git a/libs/MSL_C/MSL_Common/Src/abort_exit.c b/libs/MSL_C/MSL_Common/Src/abort_exit.c index 4dc61f92d31..4685d60803c 100644 --- a/libs/MSL_C/MSL_Common/Src/abort_exit.c +++ b/libs/MSL_C/MSL_Common/Src/abort_exit.c @@ -24,8 +24,8 @@ void __destroy_global_chain(); void __end_critical_region(); void __begin_critical_region(); void __kill_critical_regions(); -void raise(); -SECTION_DTORS10 extern void* const __destroy_global_chain_reference; +void raise(int); +SECTION_DTORS10 extern void (*__destroy_global_chain_reference[])(void); // // Declarations: @@ -33,7 +33,7 @@ SECTION_DTORS10 extern void* const __destroy_global_chain_reference; /* ############################################################################################## */ /* 8044D440-8044D540 07A160 0100+00 2/2 0/0 0/0 .bss __atexit_funcs */ -static u8 __atexit_funcs[256]; +static void (*__atexit_funcs[64])(void); /* ############################################################################################## */ /* 804519A0-804519A8 000EA0 0008+00 0/0 1/1 0/0 .sbss None */ @@ -41,34 +41,71 @@ extern u8 data_804519A0[8]; u8 data_804519A0[8]; /* 8045199C-804519A0 000E9C 0004+00 2/2 0/0 0/0 .sbss __console_exit */ -static u8 __console_exit[4]; +static void (*__console_exit)(void); /* 80451998-8045199C 000E98 0004+00 1/1 1/1 0/0 .sbss __stdio_exit */ -extern u8 __stdio_exit[4]; -u8 __stdio_exit[4]; +extern void (*__stdio_exit)(void); +void (*__stdio_exit)(void); /* 80451994-80451998 000E94 0004+00 2/2 0/0 0/0 .sbss __atexit_curr_func */ -static u8 __atexit_curr_func[4]; +static int __atexit_curr_func; /* 80451990-80451994 000E90 0004+00 2/2 0/0 0/0 .sbss __aborting */ -static u8 __aborting[4]; +static int __aborting; /* 803629CC-80362ABC 35D30C 00F0+00 0/0 2/2 0/0 .text exit */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void exit() { - nofralloc -#include "asm/MSL_C/MSL_Common/Src/abort_exit/exit.s" +void exit(int status) { + int i; + void (**dtor)(void); + + if (!__aborting) { + __begin_critical_region(0); + __end_critical_region(0); + __destroy_global_chain(); + + dtor = __destroy_global_chain_reference; + while (*dtor != NULL) { + (*dtor)(); + dtor++; + } + + if (__stdio_exit != NULL) { + __stdio_exit(); + __stdio_exit = NULL; + } + } + + __begin_critical_region(0); + while (__atexit_curr_func > 0) + __atexit_funcs[--__atexit_curr_func](); + + __end_critical_region(0); + __kill_critical_regions(); + + if (__console_exit != NULL) { + __console_exit(); + __console_exit = NULL; + } + + _ExitProcess(); } -#pragma pop /* 80362ABC-80362B58 35D3FC 009C+00 0/0 9/9 0/0 .text abort */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void abort() { - nofralloc -#include "asm/MSL_C/MSL_Common/Src/abort_exit/abort.s" +void abort(void) { + raise(1); + __aborting = 1; + __begin_critical_region(0); + + while (__atexit_curr_func > 0) + __atexit_funcs[--__atexit_curr_func](); + + __end_critical_region(0); + __kill_critical_regions(); + + if (__console_exit != NULL) { + __console_exit(); + __console_exit = NULL; + } + + _ExitProcess(); } -#pragma pop diff --git a/libs/dolphin/base/Makefile b/libs/dolphin/base/Makefile index 947eb4c8084..96c4fd0c8e6 100644 --- a/libs/dolphin/base/Makefile +++ b/libs/dolphin/base/Makefile @@ -3,12 +3,14 @@ # LIBBASE_A_CPP_FILES := \ - libs/dolphin/base/PPCArch.cpp \ + libs/dolphin/base/PPCArch.c \ LIBBASE_A_O_FILES := \ $(BUILD_DIR)/libs/dolphin/base/PPCArch.o \ LIBBASE_A_CFLAGS := \ + -O4,p \ + -lang=c \ LIBBASE_A_LDFLAGS := \ -nodefaults \ @@ -16,14 +18,16 @@ LIBBASE_A_LDFLAGS := \ -proc gekko \ -linkmode moreram \ +$(BUILD_DIR)/libs/dolphin/base/PPCArch.o: MWCC_VERSION := 1.2.5 + $(BUILD_DIR)/libbase.a: $(LIBBASE_A_O_FILES) @echo linking... $(BUILD_DIR)/libbase.a @echo $(LIBBASE_A_O_FILES) > build/LIBBASE_A_ofiles @$(LD) -xm l $(LIBBASE_A_LDFLAGS) -o $(BUILD_DIR)/libbase.a @build/LIBBASE_A_ofiles -$(BUILD_DIR)/libs/dolphin/base/%.o: libs/dolphin/base/%.cpp +$(BUILD_DIR)/libs/dolphin/base/%.o: libs/dolphin/base/%.c @mkdir -p $(@D) @echo building... $< - @$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).cpp - @$(CC) $(CFLAGS) $(LIBBASE_A_CFLAGS) -c -o $@ $(basename $@).cpp + @$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c + @$(CC) $(CFLAGS) $(LIBBASE_A_CFLAGS) -c -o $@ $(basename $@).c diff --git a/libs/dolphin/base/PPCArch.cpp b/libs/dolphin/base/PPCArch.c similarity index 84% rename from libs/dolphin/base/PPCArch.cpp rename to libs/dolphin/base/PPCArch.c index 379badcf1f8..bc7319b47bf 100644 --- a/libs/dolphin/base/PPCArch.cpp +++ b/libs/dolphin/base/PPCArch.c @@ -11,28 +11,28 @@ // Forward References: // -extern "C" void PPCMfmsr(); -extern "C" void PPCMtmsr(); -extern "C" void PPCMfhid0(); -extern "C" void PPCMthid0(); -extern "C" void PPCMfl2cr(); -extern "C" void PPCMtl2cr(); -extern "C" void PPCMtdec(); -extern "C" void PPCSync(); -extern "C" void PPCHalt(); -extern "C" void PPCMtmmcr0(); -extern "C" void PPCMtmmcr1(); -extern "C" void PPCMtpmc1(); -extern "C" void PPCMtpmc2(); -extern "C" void PPCMtpmc3(); -extern "C" void PPCMtpmc4(); -extern "C" void PPCMffpscr(); -extern "C" void PPCMtfpscr(); -extern "C" void PPCMfhid2(); -extern "C" void PPCMthid2(); -extern "C" void PPCMtwpar(); -extern "C" void PPCDisableSpeculation(); -extern "C" void PPCSetFpNonIEEEMode(); +extern void PPCMfmsr(); +extern void PPCMtmsr(); +extern void PPCMfhid0(); +extern void PPCMthid0(); +extern void PPCMfl2cr(); +extern void PPCMtl2cr(); +extern void PPCMtdec(); +extern void PPCSync(); +extern void PPCHalt(); +extern void PPCMtmmcr0(); +extern void PPCMtmmcr1(); +extern void PPCMtpmc1(); +extern void PPCMtpmc2(); +extern void PPCMtpmc3(); +extern void PPCMtpmc4(); +extern u32 PPCMffpscr(); +extern void PPCMtfpscr(); +extern void PPCMfhid2(); +extern void PPCMthid2(); +extern void PPCMtwpar(); +extern void PPCDisableSpeculation(); +extern void PPCSetFpNonIEEEMode(); // // External References: @@ -115,14 +115,17 @@ asm void PPCSync() { } /* 80339D00-80339D14 334640 0014+00 0/0 7/7 0/0 .text PPCHalt */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void PPCHalt() { +asm void PPCHalt(void) { + // clang-format off nofralloc -#include "asm/dolphin/base/PPCArch/PPCHalt.s" + sync +_spin: + nop + li r3, 0 + nop + b _spin + // clang-format on } -#pragma pop /* 80339D14-80339D1C -00001 0008+00 0/0 0/0 0/0 .text PPCMtmmcr0 */ asm void PPCMtmmcr0() { @@ -182,7 +185,7 @@ asm void PPCMtpmc4() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void PPCMffpscr() { +asm u32 PPCMffpscr() { nofralloc #include "asm/dolphin/base/PPCArch/PPCMffpscr.s" } diff --git a/rel/d/a/d_a_arrow/d_a_arrow.cpp b/rel/d/a/d_a_arrow/d_a_arrow.cpp index de09620152a..e4e0cf05ba2 100644 --- a/rel/d/a/d_a_arrow/d_a_arrow.cpp +++ b/rel/d/a/d_a_arrow/d_a_arrow.cpp @@ -518,7 +518,7 @@ extern "C" extern u32 __float_nan; extern "C" extern u32 __float_max; extern "C" f32 mWaterY__11fopAcM_wt_c[1 + 1 /* padding */]; extern "C" extern u8 mStayNo__20dStage_roomControl_c[4]; -extern "C" extern u8 struct_80450D88[4]; +extern "C" extern u8 m_count__9daArrow_c[4]; extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; extern "C" void __register_global_object(); diff --git a/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp b/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp index 1bdccecf6b1..d870cfe1888 100644 --- a/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp +++ b/rel/d/a/tag/d_a_tag_mist/d_a_tag_mist.cpp @@ -77,7 +77,7 @@ extern "C" extern void* g_fopAc_Method[8]; extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */]; extern "C" u8 now__14mDoMtx_stack_c[48]; extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 struct_80450DC0[4]; +extern "C" extern u8 mPlayerNo__11daTagMist_c[4]; // // Declarations: diff --git a/src/d/com/d_com_static.cpp b/src/d/com/d_com_static.cpp index b731220c6df..5464fc52885 100644 --- a/src/d/com/d_com_static.cpp +++ b/src/d/com/d_com_static.cpp @@ -4,11 +4,13 @@ // #include "d/com/d_com_static.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_demo.h" #include "dol2asm.h" #include "dolphin/types.h" -#include "rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.h" +#include "rel/d/a/d_a_movie_player/d_a_movie_player.h" #include "rel/d/a/obj/d_a_obj_carry/d_a_obj_carry.h" -#include "d/com/d_com_inf_game.h" +#include "rel/d/a/tag/d_a_tag_magne/d_a_tag_magne.h" // // Types: @@ -27,11 +29,13 @@ struct daTagStream_c { }; struct daTagMist_c { - /* 80031CF0 */ void getPlayerNo(); + /* 80031CF0 */ static u8 getPlayerNo(); + + static u8 mPlayerNo; }; struct daSetBgObj_c { - /* 80031870 */ void getArcName(fopAc_ac_c*); + /* 80031870 */ static const char* getArcName(fopAc_ac_c*); }; struct daObjMovebox { @@ -48,15 +52,6 @@ struct daMirror_c { static u8 m_myObj[4]; }; -struct daMP_c { - /* 80031A78 */ void daMP_c_Get_MovieRestFrame(); - /* 80031AA4 */ void daMP_c_Set_PercentMovieVolume(f32); - /* 80031AD0 */ void daMP_c_THPPlayerPlay(); - /* 80031B24 */ void daMP_c_THPPlayerPause(); - - static u8 m_myObj[4]; -}; - struct daGrass_c { /* 800319C8 */ void deleteRoomGrass(int); /* 80031A20 */ void deleteRoomFlower(int); @@ -67,7 +62,7 @@ struct daGrass_c { }; struct daDsh_c { - static u32 OPEN_SIZE; + static f32 OPEN_SIZE; static f32 OPEN_ACCEL; static f32 OPEN_SPEED; static f32 OPEN_BOUND_SPEED; @@ -86,10 +81,6 @@ struct dFlower_packet_c { static u8 m_deleteRoom[12]; }; -struct dDemo_c { - static u8 m_status[4]; -}; - // // Forward References: // @@ -205,6 +196,7 @@ extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u8 const __ptmf_null[12 + 4 /* padding */]; extern "C" u8 m_status__7dDemo_c[4]; +extern "C" extern u8 mPlayerNo__11daTagMist_c[4]; // // Declarations: @@ -212,67 +204,102 @@ extern "C" u8 m_status__7dDemo_c[4]; /* 80030F14-80030FBC 02B854 00A8+00 1/1 0/0 0/0 .text * set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::set(s8 param_0, cXyz const& param_1, cXyz const& param_2, u8 param_3, - u8 param_4, u8 param_5) { - nofralloc -#include "asm/d/com/d_com_static/set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s" +void daSus_c::data_c::set(s8 i_roomNo, cXyz const& param_1, cXyz const& param_2, u8 param_3, + u8 param_4, u8 i_type) { + mRoomNo = i_roomNo; + field_0x8.set(param_1.x - param_2.x, param_1.y, param_1.z - param_2.z); + field_0x14.set(param_1.x + param_2.x, param_1.y + param_2.y, param_1.z + param_2.z); + field_0x2 = param_3; + field_0x1 = param_4 != 0; + field_0x3 = isSwitch() == false; + mType = i_type; } -#pragma pop /* 80030FBC-80030FCC 02B8FC 0010+00 3/3 0/0 0/0 .text reset__Q27daSus_c6data_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::reset() { - nofralloc -#include "asm/d/com/d_com_static/reset__Q27daSus_c6data_cFv.s" +daSus_c::data_c* daSus_c::data_c::reset() { + mRoomNo = -1; + return mpNext; } -#pragma pop /* 80030FCC-80031038 02B90C 006C+00 2/2 0/0 0/0 .text isSwitch__Q27daSus_c6data_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::isSwitch() { - nofralloc -#include "asm/d/com/d_com_static/isSwitch__Q27daSus_c6data_cFv.s" +u8 daSus_c::data_c::isSwitch() { + if (field_0x1 & 1) { + return dComIfGs_isSwitch(field_0x2, mRoomNo); + } else { + return dComIfGs_isSwitch(field_0x2, mRoomNo) == false; + } } -#pragma pop /* 80031038-800310C8 02B978 0090+00 2/2 0/0 0/0 .text check__Q27daSus_c6data_cFRC4cXyz */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::check(cXyz const& param_0) { - nofralloc -#include "asm/d/com/d_com_static/check__Q27daSus_c6data_cFRC4cXyz.s" +bool daSus_c::data_c::check(cXyz const& i_pos) { + if (field_0x3 != 0) { + return false; + } + + if ((field_0x8.x <= i_pos.x && i_pos.x <= field_0x14.x) && + (field_0x8.y <= i_pos.y && i_pos.y <= field_0x14.y) && + (field_0x8.z <= i_pos.z && i_pos.z <= field_0x14.z)) { + return true; + } + + return false; } -#pragma pop /* 800310C8-80031150 02BA08 0088+00 1/1 0/0 0/0 .text check__Q27daSus_c6data_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::check(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/com/d_com_static/check__Q27daSus_c6data_cFP10fopAc_ac_c.s" +u8 daSus_c::data_c::check(fopAc_ac_c* i_actor) { + if (field_0x3) { + return 0x80; + } + + u8 tmp = 0x80; + + if (check(i_actor->orig.pos)) { + tmp |= 1; + } + + if (check(i_actor->current.pos)) { + tmp |= 2; + return tmp; + } + + return tmp; } -#pragma pop /* 80031150-80031190 02BA90 0040+00 1/1 0/0 0/0 .text execute__Q27daSus_c6data_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::data_c::execute() { - nofralloc -#include "asm/d/com/d_com_static/execute__Q27daSus_c6data_cFv.s" +void daSus_c::data_c::execute() { + u8 sw = isSwitch(); + if (sw != field_0x3) { + field_0x3 = sw; + } } -#pragma pop /* 80031190-800311FC 02BAD0 006C+00 1/1 0/0 0/0 .text add__Q27daSus_c6room_cFPQ27daSus_c6data_c */ +// instruction reorder +#ifdef NONMATCHING +void daSus_c::room_c::add(daSus_c::data_c* i_data) { + if (mpData == NULL) { + mpData = i_data; + i_data->setNext(NULL); + return; + } + + if (i_data->getType() == 0) { + i_data->setNext(mpData); + mpData = i_data; + return; + } + + daSus_c::data_c* data1 = mpData; + daSus_c::data_c* data2 = data1->getNext(); + while (data1->getType() == 0 && data2 != NULL) { + data1 = data2; + data2 = data2->getNext(); + } + + i_data->setNext(data1->getNext()); + data1->setNext(i_data); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -281,16 +308,14 @@ asm void daSus_c::room_c::add(daSus_c::data_c* param_0) { #include "asm/d/com/d_com_static/add__Q27daSus_c6room_cFPQ27daSus_c6data_c.s" } #pragma pop +#endif /* 800311FC-80031248 02BB3C 004C+00 0/0 0/0 1/1 .text reset__Q27daSus_c6room_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSus_c::room_c::reset() { - nofralloc -#include "asm/d/com/d_com_static/reset__Q27daSus_c6room_cFv.s" +void daSus_c::room_c::reset() { + while (mpData != NULL && mpData->getType() == 0) { + mpData = mpData->reset(); + } } -#pragma pop /* ############################################################################################## */ /* 80423FF0-80423FFC 050D10 000C+00 1/1 0/0 0/0 .bss @3840 */ @@ -304,9 +329,11 @@ u8 daSus_c::mRoom[256]; /* 80450D88-80450D8C -00001 0004+00 1/1 0/0 2/2 .sbss None */ /* 80450D88 0002+00 data_80450D88 m_count__9daArrow_c */ +extern s16 m_count__9daArrow_c; +s16 m_count__9daArrow_c; + /* 80450D8A 0002+00 data_80450D8A mSetTop__7daSus_c */ -extern u8 struct_80450D88[4]; -u8 struct_80450D88[4]; +s16 daSus_c::mSetTop; /* 80031248-800313BC 02BB88 0174+00 0/0 0/0 1/1 .text newData__7daSus_cFScRC4cXyzRC4cXyzUcUcUc */ #pragma push @@ -360,102 +387,55 @@ asm void daSus_c::execute() { #pragma pop /* 8003160C-80031648 02BF4C 003C+00 0/0 0/0 1/1 .text daNpcMsg_setEvtNum__FUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcMsg_setEvtNum(u8 param_0) { - nofralloc -#include "asm/d/com/d_com_static/daNpcMsg_setEvtNum__FUc.s" +int daNpcMsg_setEvtNum(u8 iEvtNum) { + dComIfGs_setTmpReg(0xFDFF, iEvtNum); + return 1; } -#pragma pop - -/* ############################################################################################## */ -/* 803790B0-803790B0 005710 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_803790B0 = "F_SP103"; -#pragma pop /* 80031648-800316A8 02BF88 0060+00 0/0 0/0 6/6 .text daNpcKakashi_chkSwdTutorialStage__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_chkSwdTutorialStage() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_chkSwdTutorialStage__Fv.s" +BOOL daNpcKakashi_chkSwdTutorialStage() { + return !strcmp(dComIfGp_getStartStageName(), "F_SP103") && dComIfG_play_c::getLayerNo(0) == 8; } -#pragma pop /* 800316A8-800316E0 02BFE8 0038+00 0/0 0/0 3/3 .text daNpcKakashi_setSwdTutorialStep__FUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_setSwdTutorialStep(u8 param_0) { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialStep__FUc.s" +void daNpcKakashi_setSwdTutorialStep(u8 iEvtNum) { + dComIfGs_setTmpReg(0xFF0F, iEvtNum); } -#pragma pop /* 800316E0-80031718 02C020 0038+00 0/0 1/1 4/4 .text daNpcKakashi_getSwdTutorialStep__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm int daNpcKakashi_getSwdTutorialStep() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialStep__Fv.s" +int daNpcKakashi_getSwdTutorialStep() { + return dComIfGs_getTmpReg(0xFF0F); } -#pragma pop /* 80031718-80031754 02C058 003C+00 0/0 1/1 0/0 .text daNpcKakashi_getSwdTutorialResult__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_getSwdTutorialResult() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialResult__Fv.s" +bool daNpcKakashi_getSwdTutorialResult() { + return dComIfGs_isTmpBit(0x40); } -#pragma pop /* 80031754-800317A4 02C094 0050+00 0/0 0/0 1/1 .text daNpcKakashi_setSwdTutorialResult__Fb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_setSwdTutorialResult(bool param_0) { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialResult__Fb.s" +void daNpcKakashi_setSwdTutorialResult(bool param_0) { + if (param_0) { + dComIfGs_onTmpBit(0x40); + } else { + dComIfGs_offTmpBit(0x40); + } } -#pragma pop /* 800317A4-800317DC 02C0E4 0038+00 0/0 1/1 1/1 .text daNpcKakashi_getSuccessCount__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_getSuccessCount() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_getSuccessCount__Fv.s" +int daNpcKakashi_getSuccessCount() { + return dComIfGs_getTmpReg(0xFEFF); } -#pragma pop /* 800317DC-80031838 02C11C 005C+00 0/0 0/0 1/1 .text daNpcKakashi_incSuccessCount__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_incSuccessCount() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_incSuccessCount__Fv.s" +void daNpcKakashi_incSuccessCount() { + dComIfGs_setTmpReg(0xFEFF, dComIfGs_getTmpReg(0xFEFF) + 1); } -#pragma pop /* 80031838-80031870 02C178 0038+00 0/0 0/0 4/4 .text daNpcKakashi_clrSuccessCount__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daNpcKakashi_clrSuccessCount() { - nofralloc -#include "asm/d/com/d_com_static/daNpcKakashi_clrSuccessCount__Fv.s" +void daNpcKakashi_clrSuccessCount() { + dComIfGs_setTmpReg(0xFEFF, 0); } -#pragma pop /* ############################################################################################## */ /* 803790B0-803790B0 005710 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -480,19 +460,14 @@ u8 daYkgr_c::m_path[4]; /* 80450D98-80450D9C 000298 0004+00 0/0 1/1 2/2 .sbss m_emitter__8daYkgr_c */ u8 daYkgr_c::m_emitter[4]; -/* 80450D9C-80450DA4 00029C 0008+00 1/1 0/0 0/0 .sbss arcName$4309 */ -static u8 arcName[8]; - /* 80031870-800318B4 02C1B0 0044+00 0/0 0/0 19/19 .text getArcName__12daSetBgObj_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daSetBgObj_c::getArcName(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/com/d_com_static/getArcName__12daSetBgObj_cFP10fopAc_ac_c.s" +const char* daSetBgObj_c::getArcName(fopAc_ac_c* param_0) { + static char arcName[8]; + + sprintf(arcName, "@bg%04x", (u16)fopAcM_GetParam(param_0)); + return arcName; } -#pragma pop /* ############################################################################################## */ /* 80451D28-80451D30 -00001 0008+00 0/0 0/0 3/3 .sdata2 M_dir_base__Q212daObjMovebox5Act_c @@ -503,7 +478,7 @@ SECTION_SDATA2 void* daObjMovebox::Act_c::M_dir_base[2] = { }; /* 80451D30-80451D34 000330 0004+00 0/0 0/0 3/3 .sdata2 OPEN_SIZE__7daDsh_c */ -SECTION_SDATA2 u32 daDsh_c::OPEN_SIZE = 0x43870CCD; +SECTION_SDATA2 f32 daDsh_c::OPEN_SIZE = 270.1f; /* 80451D34-80451D38 000334 0004+00 0/0 0/0 1/1 .sdata2 OPEN_ACCEL__7daDsh_c */ SECTION_SDATA2 f32 daDsh_c::OPEN_ACCEL = 10.0f; @@ -515,7 +490,7 @@ SECTION_SDATA2 f32 daDsh_c::OPEN_SPEED = -40.0f; SECTION_SDATA2 f32 daDsh_c::OPEN_BOUND_SPEED = -30.0f; /* 80451D40-80451D44 000340 0004+00 0/0 0/0 1/1 .sdata2 OPEN_BOUND_RATIO__7daDsh_c */ -SECTION_SDATA2 f32 daDsh_c::OPEN_BOUND_RATIO = -2.0f / 5.0f; +SECTION_SDATA2 f32 daDsh_c::OPEN_BOUND_RATIO = -0.4f; /* 80451D44-80451D48 000344 0004+00 0/0 0/0 1/1 .sdata2 CLOSE_ACCEL__7daDsh_c */ SECTION_SDATA2 f32 daDsh_c::CLOSE_ACCEL = 10.0f; @@ -527,7 +502,7 @@ SECTION_SDATA2 f32 daDsh_c::CLOSE_SPEED = 40.0f; SECTION_SDATA2 f32 daDsh_c::CLOSE_BOUND_SPEED = 30.0f; /* 80451D50-80451D54 000350 0004+00 0/0 0/0 1/1 .sdata2 CLOSE_BOUND_RATIO__7daDsh_c */ -SECTION_SDATA2 f32 daDsh_c::CLOSE_BOUND_RATIO = -2.0f / 5.0f; +SECTION_SDATA2 f32 daDsh_c::CLOSE_BOUND_RATIO = -0.4f; /* 80451D54-80451D58 000354 0004+00 1/1 0/0 0/0 .sdata2 @4338 */ SECTION_SDATA2 static u8 lit_4338[4] = { @@ -617,47 +592,33 @@ asm void daGrass_c::deleteRoomFlower(int param_0) { /* ############################################################################################## */ /* 80450DB8-80450DBC 0002B8 0004+00 4/4 0/0 2/2 .sbss m_myObj__6daMP_c */ -u8 daMP_c::m_myObj[4]; +daMP_c* daMP_c::m_myObj; /* 80031A78-80031AA4 02C3B8 002C+00 0/0 0/0 1/1 .text daMP_c_Get_MovieRestFrame__6daMP_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daMP_c::daMP_c_Get_MovieRestFrame() { - nofralloc -#include "asm/d/com/d_com_static/daMP_c_Get_MovieRestFrame__6daMP_cFv.s" +int daMP_c::daMP_c_Get_MovieRestFrame() { + return m_myObj->mpGetMovieRestFrame(); } -#pragma pop /* 80031AA4-80031AD0 02C3E4 002C+00 0/0 0/0 1/1 .text daMP_c_Set_PercentMovieVolume__6daMP_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daMP_c::daMP_c_Set_PercentMovieVolume(f32 param_0) { - nofralloc -#include "asm/d/com/d_com_static/daMP_c_Set_PercentMovieVolume__6daMP_cFf.s" +void daMP_c::daMP_c_Set_PercentMovieVolume(f32 i_volume) { + m_myObj->mpSetPercentMovieVol(i_volume); } -#pragma pop /* 80031AD0-80031B24 02C410 0054+00 0/0 1/1 1/1 .text daMP_c_THPPlayerPlay__6daMP_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daMP_c::daMP_c_THPPlayerPlay() { - nofralloc -#include "asm/d/com/d_com_static/daMP_c_THPPlayerPlay__6daMP_cFv.s" +int daMP_c::daMP_c_THPPlayerPlay() { + if (m_myObj == NULL) { + dDemo_c::onStatus(1); + return 0; + } else { + dDemo_c::offStatus(1); + return m_myObj->mpTHPPlay(); + } } -#pragma pop /* 80031B24-80031B50 02C464 002C+00 0/0 0/0 1/1 .text daMP_c_THPPlayerPause__6daMP_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daMP_c::daMP_c_THPPlayerPause() { - nofralloc -#include "asm/d/com/d_com_static/daMP_c_THPPlayerPause__6daMP_cFv.s" +void daMP_c::daMP_c_THPPlayerPause() { + m_myObj->mpTHPPause(); } -#pragma pop /* ############################################################################################## */ /* 80450DBC-80450DC0 0002BC 0004+00 1/1 0/0 3/3 .sbss mTagMagne__12daTagMagne_c */ @@ -671,8 +632,7 @@ int daTagMagne_c::checkMagnetCode(cBgS_PolyInfo& poly) { } int magCode = dComIfG_Bgsp().GetMagnetCode(poly); - if ((magCode == 1 && mTagMagne->checkMagneA()) || - (magCode == 2 && mTagMagne->checkMagneB()) || + if ((magCode == 1 && mTagMagne->checkMagneA()) || (magCode == 2 && mTagMagne->checkMagneB()) || (magCode == 3 && mTagMagne->checkMagneC())) { return 1; } @@ -710,21 +670,15 @@ int daTagMagne_c::checkMagneC() { /* ############################################################################################## */ /* 80450DC0-80450DC4 -00001 0004+00 4/4 0/0 2/2 .sbss None */ /* 80450DC0 0001+00 data_80450DC0 None */ -extern u8 struct_80450DC0; -u8 struct_80450DC0; +u8 daTagMist_c::mPlayerNo; /* 80450DC1 0003+00 data_80450DC1 None */ bool daObjCarry_c::mSaveFlag; /* 80031CF0-80031CF8 02C630 0008+00 0/0 1/1 0/0 .text getPlayerNo__11daTagMist_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void daTagMist_c::getPlayerNo() { - nofralloc -#include "asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s" +u8 daTagMist_c::getPlayerNo() { + return mPlayerNo; } -#pragma pop /* 80031CF8-80031D04 02C638 000C+00 0/0 1/1 0/0 .text clrSaveFlag__12daObjCarry_cFv */ void daObjCarry_c::clrSaveFlag() { diff --git a/src/d/d_attention.cpp b/src/d/d_attention.cpp index 06b1721b414..f279e51cd16 100644 --- a/src/d/d_attention.cpp +++ b/src/d/d_attention.cpp @@ -4,6 +4,8 @@ // #include "d/d_attention.h" +#include "d/com/d_com_inf_game.h" +#include "d/d_procname.h" #include "dol2asm.h" #include "dolphin/mtx/mtxvec.h" #include "dolphin/types.h" @@ -12,10 +14,6 @@ // Types: // -struct mDoCPd_c { - static u8 m_cpadInfo[256]; -}; - class dAttDrawParam_c { public: /* 80070158 */ dAttDrawParam_c(); @@ -30,7 +28,6 @@ public: // Forward References: // -extern "C" static void func_80070018(); extern "C" void __ct__11dAttParam_cFl(); extern "C" void __dt__11dAttParam_cFv(); extern "C" void __ct__15dAttDrawParam_cFv(); @@ -171,8 +168,6 @@ extern "C" extern void* __vt__25mDoExt_McaMorfCallBack1_c[3]; extern "C" u8 dist_table__12dAttention_c[6552]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; extern "C" u8 now__14mDoMtx_stack_c[48]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; -extern "C" extern u8 data_80450F58[8]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; // @@ -181,14 +176,11 @@ extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; /* 80070018-80070038 06A958 0020+00 2/2 0/0 0/0 .text padLockButton__25@unnamed@d_attention_cpp@Fl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void func_80070018() { - nofralloc -#include "asm/d/d_attention/func_80070018.s" +namespace { +static bool padLockButton(s32 i_padNo) { + return mDoCPd_c::getHoldLockL(i_padNo) != 0; } -#pragma pop +} // namespace /* ############################################################################################## */ /* 8037A770-8037A770 006DD0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -198,26 +190,25 @@ SECTION_DEAD static char const* const stringBase_8037A770 = "D_MN09B"; #pragma pop /* 803A9BF8-803A9C04 006D18 000C+00 2/2 0/0 0/0 .data loc_type_tbl__12dAttention_c */ -SECTION_DATA u8 dAttention_c::loc_type_tbl[12] = { - 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, +SECTION_DATA type_tbl_entry dAttention_c::loc_type_tbl[3] = { + {0, 1}, + {1, 2}, + {2, 4}, }; /* 803A9C04-803A9C18 006D24 0014+00 1/1 0/0 0/0 .data act_type_tbl__12dAttention_c */ -SECTION_DATA u8 dAttention_c::act_type_tbl[20] = { - 0x00, 0x03, 0x00, 0x08, 0x00, 0x04, 0x00, 0x10, 0x00, 0x05, - 0x00, 0x20, 0x00, 0x06, 0x00, 0x40, 0x00, 0x07, 0x00, 0x80, +SECTION_DATA type_tbl_entry dAttention_c::act_type_tbl[5] = { + {3, 8}, {4, 16}, {5, 32}, {6, 64}, {7, 128}, }; /* 803A9C18-803A9C3C 006D38 0024+00 1/1 0/0 0/0 .data ftp_table$4417 */ -SECTION_DATA static u8 ftp_table[36] = { - 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x20, - 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x00, +SECTION_DATA static int ftp_table[9] = { + 4, 1, 2, 8, 16, 32, 64, 128, 256, }; /* 803A9C3C-803A9C48 006D5C 000C+00 1/1 0/0 0/0 .data ang_table2$4419 */ -SECTION_DATA static u8 ang_table2[12] = { - 0x0A, 0xAA, 0x20, 0x00, 0x2A, 0xAA, 0x40, 0x00, 0x4E, 0x38, 0x60, 0x00, +SECTION_DATA static s16 ang_table2[6] = { + 0x0AAA, 0x2000, 0x2AAA, 0x4000, 0x4E38, 0x6000, }; /* 803A9C48-803A9C54 006D68 000C+00 1/1 1/1 0/0 .data __vt__19dAttDraw_CallBack_c */ @@ -287,45 +278,60 @@ SECTION_SDATA2 static f32 lit_4072 = 17.0f / 10.0f; /* 80452658-8045265C 000C58 0004+00 10/10 0/0 0/0 .sdata2 @4073 */ SECTION_SDATA2 static f32 lit_4073 = 1.0f; +/* ############################################################################################## */ +/* 80450F58-80450F60 000458 0008+00 0/0 2/2 0/0 .sbss None */ +extern bool on_final_boss_stg; +bool on_final_boss_stg; + /* 80070038-80070110 06A978 00D8+00 1/1 0/0 0/0 .text __ct__11dAttParam_cFl */ +// matches with literals +#ifdef NONMATCHING +dAttParam_c::dAttParam_c(s32 param_0) { + field_0x4 = 45.0f; + field_0x8 = 30.0f; + field_0xc = 90.0f; + mFlags = 1; + mSWModeDisable = -0.9f; + + mDangerBGMDistance = 3000.0f; + mBGMDistMargin = 1000.0f; + + mSelCursorScaleX = 6.0f; + mSelCursorScaleY = 4.5f; + + mAttnCursorScaleX = 14.0f; + mAttnCursorScaleY = 14.0f; + + mSelCursorOffsetY = 10.0f; + mAttnCursorOffsetY = 0.0f; + + mAttnCursorAppearFrames = 1; + mAttnCursorDisappearFrames = 1; + + field_0x38 = 1.7f; + field_0x3c = 1.0f; + + on_final_boss_stg = strcmp(dComIfGp_getStartStageName(), "D_MN09B") == 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -// asm dAttParam_c::dAttParam_c(s32 param_0) { -extern "C" asm void __ct__11dAttParam_cFl() { +asm dAttParam_c::dAttParam_c(s32 param_0) { nofralloc #include "asm/d/d_attention/__ct__11dAttParam_cFl.s" } #pragma pop +#endif /* 80070110-80070158 06AA50 0048+00 2/1 0/0 0/0 .text __dt__11dAttParam_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm dAttParam_c::~dAttParam_c() { -extern "C" asm void __dt__11dAttParam_cFv() { - nofralloc -#include "asm/d/d_attention/__dt__11dAttParam_cFv.s" -} -#pragma pop - -/* ############################################################################################## */ -/* 8045265C-80452660 000C5C 0004+00 1/1 0/0 0/0 .sdata2 @4084 */ -SECTION_SDATA2 static f32 lit_4084 = 250.0f; - -/* 80452660-80452664 000C60 0004+00 1/1 0/0 0/0 .sdata2 @4085 */ -SECTION_SDATA2 static f32 lit_4085 = 2.0f; +dAttParam_c::~dAttParam_c() {} /* 80070158-80070178 06AA98 0020+00 1/1 0/0 0/0 .text __ct__15dAttDrawParam_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm dAttDrawParam_c::dAttDrawParam_c() { -extern "C" asm void __ct__15dAttDrawParam_cFv() { - nofralloc -#include "asm/d/d_attention/__ct__15dAttDrawParam_cFv.s" +dAttDrawParam_c::dAttDrawParam_c() { + mCursorDistance = 250.0f; + field_0xc = 2.0f; } -#pragma pop /* ############################################################################################## */ /* 80452664-80452668 000C64 0004+00 1/1 0/0 0/0 .sdata2 @4092 */ @@ -356,6 +362,105 @@ SECTION_DEAD static char const* const pad_8037A77F = ""; static dAttDrawParam_c g_AttDwHIO; /* 80070198-80070774 06AAD8 05DC+00 0/0 1/1 0/0 .text __ct__12dAttention_cFP10fopAc_ac_cUl */ +// matches with literals +#ifdef NONMATCHING +dAttention_c::dAttention_c(fopAc_ac_c* i_player, u32 i_padNo) { + mpPlayer = i_player; + mPadNo = i_padNo; + + mLockTargetID = -1; + field_0x32e = 0; + field_0x32f = 0; + + mCheckObjectOffset = 0; + mActionOffset = 0; + mLockOnOffset = 0; + initList(-1); + + field_0x10 = 0; + field_0x32a = 0; + mAttnStatus = ST_NONE; + field_0x32b = 4; + field_0x32c = 0; + mAttnBlockTimer = 0; + + heap = mDoExt_createSolidHeapFromGameToCurrent(0x9000, 0); + + J3DModelData* modelDataR = (J3DModelData*)dComIfG_getObjectRes("Always", 0x25); + J3DModelData* modelDataY = (J3DModelData*)dComIfG_getObjectRes("Always", 0x26); + + for (int i = 0; i < 2; i++) { + draw[i].mModel[0] = mDoExt_J3DModel__create(modelDataY, 0x80000, 0x11000285); + draw[i].mModel[1] = mDoExt_J3DModel__create(modelDataR, 0x80000, 0x11000285); + + void* res = dComIfG_getObjectRes("Always", 0x11); + draw[i].mNoticeCursorBck[0].init((J3DAnmTransform*)res, TRUE, 2, 1.0f, 0, -1, false); + + res = dComIfG_getObjectRes("Always", 0x2B); + draw[i].mNoticeCursorBpk[0].init(modelDataY, (J3DAnmColor*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x37); + draw[i].mNoticeCursorBrk[0].init(modelDataY, (J3DAnmTevRegKey*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x3F); + draw[i].mNoticeCursorBtk[0].init(modelDataY, (J3DAnmTextureSRTKey*)res, TRUE, 2, 1.0f, 0, + -1); + + res = dComIfG_getObjectRes("Always", 0x38); + draw[i].mNoticeCursor02Brk[0].init(modelDataY, (J3DAnmTevRegKey*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x10); + draw[i].mNoticeCursorBck[1].init((J3DAnmTransform*)res, TRUE, 2, 1.0f, 0, -1, false); + + res = dComIfG_getObjectRes("Always", 0x2A); + draw[i].mNoticeCursorBpk[1].init(modelDataR, (J3DAnmColor*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x35); + draw[i].mNoticeCursorBrk[1].init(modelDataR, (J3DAnmTevRegKey*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x3E); + draw[i].mNoticeCursorBtk[1].init(modelDataR, (J3DAnmTextureSRTKey*)res, TRUE, 2, 1.0f, 0, + -1); + + res = dComIfG_getObjectRes("Always", 0x36); + draw[i].mNoticeCursor02Brk[1].init(modelDataR, (J3DAnmTevRegKey*)res, TRUE, 2, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0xC); + draw[i].mImpactBck.init((J3DAnmTransform*)res, TRUE, 0, 1.0f, 0, -1, false); + + res = dComIfG_getObjectRes("Always", 0x29); + draw[i].mImpactBpk.init(modelDataR, (J3DAnmColor*)res, TRUE, 0, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x32); + draw[i].mImpactBrk.init(modelDataR, (J3DAnmTevRegKey*)res, TRUE, 0, 1.0f, 0, -1); + + res = dComIfG_getObjectRes("Always", 0x3D); + draw[i].mImpactBtk.init(modelDataR, (J3DAnmTextureSRTKey*)res, TRUE, 0, 1.0f, 0, -1); + + draw[i].field_0x170 = 0; + draw[i].field_0x171 = 1; + draw[i].field_0x172 = 0; + draw[i].field_0x174 = 1; + draw[i].field_0x173 = 2; + draw[i].field_0x175 = 0; + } + + mDoExt_restoreCurrentHeap(); + if ((int)mDoExt_adjustSolidHeap(heap) >= 0) { + DCStoreRangeNoSync(heap->getStartAddr(), heap->getHeapSize()); + } + + field_0x328 = -1; + mFlags = 0; + + mZHintTarget.init(); + mCatghTarget.init(); + mLookTarget.init(); + new (&mAttParam) dAttParam_c(0); + + g_AttDwHIO.field_0x4 = -1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -364,106 +469,171 @@ asm dAttention_c::dAttention_c(fopAc_ac_c* param_0, u32 param_1) { #include "asm/d/d_attention/__ct__12dAttention_cFP10fopAc_ac_cUl.s" } #pragma pop +#endif /* 80070774-80070844 06B0B4 00D0+00 0/0 2/2 0/0 .text __dt__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dAttention_c::~dAttention_c() { - nofralloc -#include "asm/d/d_attention/__dt__12dAttention_cFv.s" +dAttention_c::~dAttention_c() { + if (heap != NULL) { + mDoExt_destroySolidHeap(heap); + heap = NULL; + } } -#pragma pop /* 80070844-80070880 06B184 003C+00 2/2 2/2 8/8 .text GetLockonList__12dAttention_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::GetLockonList(s32 param_0) { - nofralloc -#include "asm/d/d_attention/GetLockonList__12dAttention_cFl.s" +dAttList_c* dAttention_c::GetLockonList(s32 param_0) { + if (mLockonCount != 0) { + return &mLockOnList[(mLockOnOffset + param_0) % mLockonCount]; + } + + return NULL; } -#pragma pop /* 80070880-80070974 06B1C0 00F4+00 0/0 5/5 2/2 .text getActionBtnB__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::getActionBtnB() { - nofralloc -#include "asm/d/d_attention/getActionBtnB__12dAttention_cFv.s" +dAttList_c* dAttention_c::getActionBtnB() { + int i; + dAttList_c* list = GetLockonList(0); + + if (list != NULL && list->getActor() != NULL && list->mType == 1 && LockonTruth() && + !(list->getActor()->mAttentionInfo.mFlags & 0x2000000)) { + return list; + } + + if (mActionCount == 0) { + return NULL; + } + + for (i = 0; i < mActionCount; i++) { + if (mActionList[i].mType == 3) { + if (!(mActionList[i].getActor()->mAttentionInfo.mFlags & 0x2000000)) { + return &mActionList[i]; + } + continue; + } + return &mActionList[i]; + } + + return NULL; } -#pragma pop /* 80070974-80070A70 06B2B4 00FC+00 0/0 1/1 0/0 .text getActionBtnXY__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::getActionBtnXY() { - nofralloc -#include "asm/d/d_attention/getActionBtnXY__12dAttention_cFv.s" +dAttList_c* dAttention_c::getActionBtnXY() { + int i; + dAttList_c* list = GetLockonList(0); + + if (list != NULL && list->getActor() != NULL && list->mType == 1 && LockonTruth()) { + if (list->getActor()->mEvtInfo.chkCondition(0x20)) { + return list; + } + + return NULL; + } + + if (mActionCount == 0) { + return NULL; + } + + for (i = 0; i < mActionCount; i++) { + if (mActionList[i].mType == 3) { + if (mActionList[i].getActor()->mEvtInfo.chkCondition(0x20)) { + return &mActionList[i]; + } + } + } + + return NULL; } -#pragma pop /* ############################################################################################## */ /* 80450660-80450664 0000E0 0004+00 2/2 0/0 0/0 .sdata loc_type_num__12dAttention_c */ -SECTION_SDATA u32 dAttention_c::loc_type_num = 0x00000003; +SECTION_SDATA int dAttention_c::loc_type_num = 3; /* 80070A70-80070AC0 06B3B0 0050+00 1/1 0/0 0/0 .text chkAttMask__12dAttention_cFUlUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::chkAttMask(u32 param_0, u32 param_1) { - nofralloc -#include "asm/d/d_attention/chkAttMask__12dAttention_cFUlUl.s" +int dAttention_c::chkAttMask(u32 param_0, u32 param_1) { + for (int i = 0; i < loc_type_num; i++) { + if (param_0 == loc_type_tbl[i].field_0x0) { + return param_1 & loc_type_tbl[i].field_0x2; + } + } + + return 1; } -#pragma pop /* 80070AC0-80070B2C 06B400 006C+00 2/2 0/0 0/0 .text check_event_condition__FUlUs */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void check_event_condition(u32 param_0, u16 param_1) { - nofralloc -#include "asm/d/d_attention/check_event_condition__FUlUs.s" +static int check_event_condition(u32 i_listType, u16 i_condition) { + switch (i_listType) { + case 3: + case 1: + if (!(i_condition & 1)) { + return true; + } + break; + case 4: + case 2: + break; + case 5: + if (!(i_condition & 4)) { + return true; + } + break; + case 6: + if (!(i_condition & 4)) { + return true; + } + break; + } + + return false; } -#pragma pop /* ############################################################################################## */ /* 80450664-80450668 0000E4 0004+00 1/1 0/0 0/0 .sdata act_type_num__12dAttention_c */ -SECTION_SDATA u32 dAttention_c::act_type_num = 0x00000005; +SECTION_SDATA int dAttention_c::act_type_num = 5; /* 80450668-8045066C 0000E8 0004+00 1/1 0/0 0/0 .sdata chk_type_tbl__12dAttention_c */ -SECTION_SDATA u32 dAttention_c::chk_type_tbl = 0x00080100; - -/* 8045066C-80450670 0000EC 0004+00 1/1 0/0 0/0 .sdata chk_type_num__12dAttention_c */ -SECTION_SDATA u32 dAttention_c::chk_type_num = 0x00000001; - -/* 80450670-80450674 0000F0 0004+00 2/2 0/0 0/0 .sdata None */ -SECTION_SDATA static u32 data_80450670 = 0x01000000; - -/* 80450674-8045067C 0000F4 0006+02 1/1 0/0 0/0 .sdata ang_table$4418 */ -SECTION_SDATA static u8 ang_table[6 + 2 /* padding */] = { - 0x40, - 0x00, - 0x20, - 0x00, - 0x0A, - 0xAA, - /* padding */ - 0x00, - 0x00, +SECTION_SDATA type_tbl_entry dAttention_c::chk_type_tbl[1] = { + {8, 256}, }; +/* 8045066C-80450670 0000EC 0004+00 1/1 0/0 0/0 .sdata chk_type_num__12dAttention_c */ +SECTION_SDATA int dAttention_c::chk_type_num = 1; + +/* 80450670-80450674 0000F0 0004+00 2/2 0/0 0/0 .sdata None */ +SECTION_SDATA static bool attn_opt_hold = true; + /* 80070B2C-80070BF4 06B46C 00C8+00 2/2 0/0 0/0 .text check_flontofplayer__FUlss */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void check_flontofplayer(u32 param_0, s16 param_1, s16 param_2) { - nofralloc -#include "asm/d/d_attention/check_flontofplayer__FUlss.s" +static int check_flontofplayer(u32 param_0, s16 param_1, s16 param_2) { + static s16 ang_table[3] = { + 0x4000, + 0x2000, + 0x0AAA, + }; + + if (param_1 < 0) { + param_1 = -param_1; + } + + if (param_2 < 0) { + param_2 = -param_2; + } + + for (int i = 0; i < 3; i++) { + if (param_0 & ftp_table[i]) { + if (param_1 > ang_table[i]) { + return true; + } + } + } + + for (int i = 8; i > 2; i--) { + if (param_0 & ftp_table[i]) { + if (param_2 > ang_table2[i - 3]) { + return true; + } + } + } + + return false; } -#pragma pop /* ############################################################################################## */ /* 80452668-80452670 000C68 0004+04 2/2 0/0 0/0 .sdata2 @4448 */ @@ -477,24 +647,44 @@ SECTION_SDATA2 static f32 lit_4448[1 + 1 /* padding */] = { SECTION_SDATA2 static f64 lit_4450 = 4503601774854144.0 /* cast s32 to float */; /* 80070BF4-80070C40 06B534 004C+00 2/2 0/0 0/0 .text distace_weight__Ffsf */ +// matches with literals +#ifdef NONMATCHING +static f32 distace_weight(f32 param_0, s16 param_1, f32 param_2) { + f32 tmp = param_1 / 32768.0f; + return param_0 * ((1.0f - param_2) + (param_2 * (tmp * tmp))); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void distace_weight(f32 param_0, s16 param_1, f32 param_2) { +static asm f32 distace_weight(f32 param_0, s16 param_1, f32 param_2) { nofralloc #include "asm/d/d_attention/distace_weight__Ffsf.s" } #pragma pop +#endif /* 80070C40-80070CA0 06B580 0060+00 2/2 0/0 0/0 .text distace_angle_adjust__Ffsf */ +// matches with literals +#ifdef NONMATCHING +static f32 distace_angle_adjust(f32 param_0, s16 param_1, f32 param_2) { + f32 tmp = param_1 / 32768.0f; + if (tmp < 0.0f) { + tmp = -tmp; + } + + return param_0 * ((1.0f - param_2) + (param_2 * ((1.0f - tmp) * (1.0f - tmp)))); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void distace_angle_adjust(f32 param_0, s16 param_1, f32 param_2) { +static asm f32 distace_angle_adjust(f32 param_0, s16 param_1, f32 param_2) { nofralloc #include "asm/d/d_attention/distace_angle_adjust__Ffsf.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80452678-80452680 000C78 0008+00 3/3 0/0 0/0 .sdata2 @4514 */ @@ -510,15 +700,34 @@ SECTION_SDATA2 static u8 lit_4516[8] = { /* 80070CA0-80070E90 06B5E0 01F0+00 3/3 0/0 0/0 .text check_distace__FP4cXyzsP4cXyzffff */ +// matches with literals +#ifdef NONMATCHING +static bool check_distace(cXyz* param_0, s16 param_1, cXyz* param_2, f32 param_3, f32 param_4, + f32 param_5, f32 param_6) { + cXyz tmp = *param_2 - *param_0; + + if (tmp.y <= param_6 || tmp.y >= param_5) { + return false; + } + + f32 adjust = param_3 + distace_angle_adjust(param_4, param_1, 1.0f); + if (adjust < tmp.absXZ()) { + return false; + } + + return true; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void check_distace(cXyz* param_0, s16 param_1, cXyz* param_2, f32 param_3, f32 param_4, - f32 param_5, f32 param_6) { +static asm int check_distace(cXyz* param_0, s16 param_1, cXyz* param_2, f32 param_3, f32 param_4, + f32 param_5, f32 param_6) { nofralloc #include "asm/d/d_attention/check_distace__FP4cXyzsP4cXyzffff.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80452690-80452694 000C90 0004+00 3/3 0/0 0/0 .sdata2 @4562 */ @@ -529,18 +738,152 @@ SECTION_SDATA2 static f32 lit_4563 = 0.5f; /* 80070E90-800710C0 06B7D0 0230+00 2/2 0/0 0/0 .text * calcWeight__12dAttention_cFiP10fopAc_ac_cfssPUl */ +// matches with literals +#ifdef NONMATCHING +f32 dAttention_c::calcWeight(int param_0, fopAc_ac_c* param_1, f32 param_2, s16 param_3, + s16 param_4, u32* param_5) { + int i; + int num; + type_tbl_entry* table; + + switch (param_0) { + case 0x4C: + if (chkFlag(0x4000)) { + return 0.0f; + } + + num = loc_type_num; + table = loc_type_tbl; + break; + default: + case 0x41: + num = act_type_num; + table = act_type_tbl; + break; + case 0x43: + num = chk_type_num; + table = chk_type_tbl; + break; + } + + f32 weight = 0.0f; + f32 dvar14 = -1.0f; + + daPy_py_c* player = daPy_getPlayerActorClass(); + if (player != NULL) { + if (param_1 == fopAcM_SearchByID(player->getGrabActorID())) { + return 0.0f; + } + } + + for (i = 0; i < num; i++) { + f32 dvar12; + type_tbl_entry* entry = &table[i]; + + if (field_0x10 & entry->field_0x2 & param_1->mAttentionInfo.mFlags) { + u8 index = param_1->mAttentionInfo.field_0x0[entry->field_0x0]; + dist_entry* d_entry = &dist_table[index]; + + if (fopAcM_checkStatus(param_1, 0x20000000) || + check_event_condition(entry->field_0x0, param_1->mEvtInfo.getCondition())) { + dvar12 = 0.0f; + } else if (check_flontofplayer(d_entry->field_0x18, param_3, param_4)) { + dvar12 = 0.0f; + } else if (!check_distace(&mOwnerAttnPos, param_3, ¶m_1->mAttentionInfo.mPosition, + d_entry->field_0x0, d_entry->field_0x8, d_entry->field_0xc, + d_entry->field_0x10)) { + dvar12 = 0.0f; + } else { + dvar12 = distace_weight(param_2, param_3, 0.5f); + } + + f32 dvar13 = d_entry->field_0x14; + if (dvar12 > 0.0f && dvar13 > dvar14) { + dvar14 = dvar13; + weight = dvar12 / dvar13; + *param_5 = entry->field_0x0; + } + } + } + + return weight; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::calcWeight(int param_0, fopAc_ac_c* param_1, f32 param_2, s16 param_3, - s16 param_4, u32* param_5) { +asm f32 dAttention_c::calcWeight(int param_0, fopAc_ac_c* param_1, f32 param_2, s16 param_3, + s16 param_4, u32* param_5) { nofralloc #include "asm/d/d_attention/calcWeight__12dAttention_cFiP10fopAc_ac_cfssPUl.s" } #pragma pop +#endif /* 800710C0-80071240 06BA00 0180+00 1/1 0/0 0/0 .text * setList__12dAttention_cFiP10fopAc_ac_cff7cSAngleUl */ +#ifdef NONMATCHING +void dAttention_c::setList(int param_0, fopAc_ac_c* param_1, f32 param_2, f32 param_3, + cSAngle param_4, u32 param_5) { + int i; + int max; + int* num; + dAttList_c* list; + + switch (param_0) { + case 0x4C: + if (!chkFlag(0x4000) && (mLockonCount < 1 || param_1 != mLockOnList[0].getActor() || param_5 != mLockOnList[0].mType)) { + max = 8; + num = &mLockonCount; + list = mLockOnList; + break; + } + + return; + default: + case 0x41: + max = 4; + num = &mActionCount; + list = mActionList; + break; + case 0x43: + max = 4; + num = &mCheckObjectCount; + list = mCheckObjectList; + break; + } + + f32 weight = 0.0f; + + if (param_2 > weight) { + int temp_r3 = *num; + int var_r5; + + if (temp_r3 < max) { + var_r5 = temp_r3; + *num = temp_r3 + 1; + } else { + f32 var_f1 = weight; + var_r5 = 0; + for (i = 0; i < max; i++) { + if (list[i].mWeight > var_f1) { + var_f1 = list[i].mWeight; + var_r5 = i; + } + } + } + + list = &list[var_r5]; + if (list->mWeight > param_2) { + list->setActor(param_1); + list->mWeight = param_2; + list->mDistance = param_3; + list->mAngle = param_4; + list->mType = param_5; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -550,6 +893,7 @@ asm void dAttention_c::setList(int param_0, fopAc_ac_c* param_1, f32 param_2, f3 #include "asm/d/d_attention/setList__12dAttention_cFiP10fopAc_ac_cff7cSAngleUl.s" } #pragma pop +#endif /* 80071240-8007138C 06BB80 014C+00 6/6 0/0 0/0 .text initList__12dAttention_cFUl */ #pragma push @@ -563,41 +907,36 @@ asm void dAttention_c::initList(u32 param_0) { /* 8007138C-800713CC 06BCCC 0040+00 1/1 0/0 0/0 .text select_attention__FP10fopAc_ac_cPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void select_attention(fopAc_ac_c* param_0, void* param_1) { - nofralloc -#include "asm/d/d_attention/select_attention__FP10fopAc_ac_cPv.s" +static int select_attention(fopAc_ac_c* param_0, void* i_attention) { + if (param_0->mAttentionInfo.mFlags == 0) { + return 0; + } + + return ((dAttention_c*)i_attention)->SelectAttention(param_0); } -#pragma pop /* 800713CC-80071424 06BD0C 0058+00 4/4 0/0 0/0 .text makeList__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::makeList() { - nofralloc -#include "asm/d/d_attention/makeList__12dAttention_cFv.s" +int dAttention_c::makeList() { + fopAcIt_Executor((fopAcIt_ExecutorFunc)select_attention, this); + setFlag(0x2000); + return mLockonCount + mActionCount + mCheckObjectCount; } -#pragma pop /* 80071424-80071488 06BD64 0064+00 1/1 0/0 0/0 .text setOwnerAttentionPos__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::setOwnerAttentionPos() { - nofralloc -#include "asm/d/d_attention/setOwnerAttentionPos__12dAttention_cFv.s" +void dAttention_c::setOwnerAttentionPos() { + mOwnerAttnPos = mpPlayer->mAttentionInfo.mPosition; + + if (fopAcM_GetName(mpPlayer) == PROC_ALINK) { + mOwnerAttnPos.y -= ((daPy_py_c*)mpPlayer)->getAttentionOffsetY(); + } } -#pragma pop /* 80071488-8007167C 06BDC8 01F4+00 1/1 0/0 0/0 .text * SelectAttention__12dAttention_cFP10fopAc_ac_c */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::SelectAttention(fopAc_ac_c* param_0) { +asm int dAttention_c::SelectAttention(fopAc_ac_c* param_0) { nofralloc #include "asm/d/d_attention/SelectAttention__12dAttention_cFP10fopAc_ac_c.s" } @@ -614,6 +953,52 @@ extern "C" asm void __dt__7cSGlobeFv() { #pragma pop /* 800716B8-800718A4 06BFF8 01EC+00 4/4 0/0 0/0 .text sortList__12dAttention_cFv */ +#ifdef NONMATCHING +void dAttention_c::sortList() { + dAttList_c list; + + if (!chkFlag(0x4000)) { + for (int i = (mLockTargetID != -1); i < mLockonCount - 1; i++) { + dAttList_c* list_1 = &mLockOnList[i]; + for (int j = i + 1; j < mLockonCount; j++) { + dAttList_c* list_2 = &mLockOnList[j]; + + if (list_2->mWeight < list_1->mWeight) { + memcpy(&list, list_2, sizeof(dAttList_c)); + memcpy(list_2, list_1, sizeof(dAttList_c)); + memcpy(list_1, &list, sizeof(dAttList_c)); + } + } + } + } + + for (int i = 0; i < mActionCount - 1; i++) { + dAttList_c* list_1 = &mActionList[i]; + for (int j = i + 1; j < mActionCount; j++) { + dAttList_c* list_2 = &mActionList[j]; + + if (list_2->mWeight < list_1->mWeight) { + memcpy(&list, list_2, sizeof(dAttList_c)); + memcpy(list_2, list_1, sizeof(dAttList_c)); + memcpy(list_1, &list, sizeof(dAttList_c)); + } + } + } + + for (int i = 0; i < mCheckObjectCount - 1; i++) { + dAttList_c* list_1 = &mCheckObjectList[i]; + for (int j = i + 1; j < mCheckObjectCount; j++) { + dAttList_c* list_2 = &mCheckObjectList[j]; + + if (list_2->mWeight < list_1->mWeight) { + memcpy(&list, list_2, sizeof(dAttList_c)); + memcpy(list_2, list_1, sizeof(dAttList_c)); + memcpy(list_1, &list, sizeof(dAttList_c)); + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -622,162 +1007,674 @@ asm void dAttention_c::sortList() { #include "asm/d/d_attention/sortList__12dAttention_cFv.s" } #pragma pop +#endif /* 800718A4-80071960 06C1E4 00BC+00 2/2 0/0 0/0 .text stockAttention__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::stockAttention() { - nofralloc -#include "asm/d/d_attention/stockAttention__12dAttention_cFv.s" +void dAttention_c::stockAttention() { + fopAc_ac_c* target = LockonTarget(0); + + initList(-1); + if (makeList()) { + sortList(); + } + + if (target != mLockOnList[0].getActor()) { + if (target != NULL) { + if (mLockOnList[0].getActor() != NULL) { + setFlag(2); + } + } else { + setFlag(1); + } + setFlag(4); + } + + LockonTarget(0); } -#pragma pop /* 80071960-80071A68 06C2A0 0108+00 2/2 0/0 0/0 .text nextAttention__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::nextAttention() { - nofralloc -#include "asm/d/d_attention/nextAttention__12dAttention_cFv.s" +fopAc_ac_c* dAttention_c::nextAttention() { + if (!attn_opt_hold && mLockonCount == 1) { + field_0x32e = 0; + return NULL; + } + + if (field_0x32e != 0) { + mLockOnOffset++; + + if (mLockOnOffset >= mLockonCount) { + mLockOnOffset = 0; + } + return LockonTarget(0); + } + + fopAc_ac_c* actor = fopAcM_SearchByID(mLockTargetID); + initList(-1); + + if (makeList()) { + sortList(); + } + + if (actor == mLockOnList[0].getActor() && mLockonCount > 1) { + mLockOnOffset = 1; + } + + return LockonTarget(0); } -#pragma pop /* 80071A68-80071A98 06C3A8 0030+00 3/3 0/0 0/0 .text freeAttention__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::freeAttention() { - nofralloc -#include "asm/d/d_attention/freeAttention__12dAttention_cFv.s" +int dAttention_c::freeAttention() { + mLockTargetID = -1; + initList(-1); + return 0; } -#pragma pop /* 80071A98-80071CC0 06C3D8 0228+00 2/2 0/0 0/0 .text chaseAttention__12dAttention_cFv */ +#ifdef NONMATCHING +bool dAttention_c::chaseAttention() { + int offset = mLockOnOffset; + fopAc_ac_c* actor = mLockOnList[offset].getActor(); + + if (actor == NULL) { + return false; + } + + if (!chkFlag(0x4000)) { + cSGlobe g1(actor->mAttentionInfo.mPosition - mOwnerAttnPos); + cSAngle a1(g1.U() - mpPlayer->mCollisionRot.y); + + cSGlobe g2(mOwnerAttnPos - actor->mAttentionInfo.mPosition); + cSAngle a2(g2.U() - actor->mCollisionRot.y); + + u32 type; + f32 weight = calcWeight(0x4C, actor, g1.R(), a1.Val(), a2.Val(), &type); + if (weight >= 0.0f) { + int type = mLockOnList[offset].mType; + int tbl_idx = actor->mAttentionInfo.field_0x0[type]; + + if (!chkAttMask(type, actor->mAttentionInfo.mFlags)) { + return false; + } else if (check_event_condition(type, actor->mEvtInfo.getCondition())) { + return false; + } else if (check_flontofplayer(dist_table[tbl_idx].field_0x18, a1.Val(), a2.Val())) { + return false; + } else if (check_distace(&mOwnerAttnPos, a1.Val(), &actor->mAttentionInfo.mPosition, + dist_table[tbl_idx].field_0x4, dist_table[tbl_idx].field_0x8, + dist_table[tbl_idx].field_0xc, + dist_table[tbl_idx].field_0x10)) { + mLockOnList[offset].mWeight = distace_weight(g1.R(), a1.Val(), 0.5f); + return true; + } + + return false; + } + + mLockOnList[offset].setActor(actor); + mLockOnList[offset].mWeight = weight; + mLockOnList[offset].mDistance = g1.R(); + mLockOnList[offset].mType = type; + return true; + } + + return (actor->mAttentionInfo.mFlags & 7) != false; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::chaseAttention() { +asm bool dAttention_c::chaseAttention() { nofralloc #include "asm/d/d_attention/chaseAttention__12dAttention_cFv.s" } #pragma pop +#endif /* 80071CC0-80071D6C 06C600 00AC+00 1/1 0/0 0/0 .text EnemyDistance__12dAttention_cFP10fopAc_ac_c */ +// matches with literals +#ifdef NONMATCHING +f32 dAttention_c::EnemyDistance(fopAc_ac_c* i_actor) { + f32 distance; + + if (i_actor == mpPlayer || mpPlayer == NULL) { + distance = -1.0f; + } else if (fopAcM_GetProfName(i_actor) == PROC_ALINK) { + distance = -1.0f; + } else if (!(i_actor->mAttentionInfo.mFlags & 4) && + !(i_actor->mAttentionInfo.mFlags & 0x4000000)) { + distance = -1.0f; + } else { + distance = fopAcM_searchActorDistance(mpPlayer, i_actor); + u8 tmp = i_actor->mAttentionInfo.field_0x0[2]; + + if (distance < dist_table[tmp].field_0x0 + dist_table[tmp].field_0x8) { + return distance; + } + + distance = -1.0f; + } + + return distance; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::EnemyDistance(fopAc_ac_c* param_0) { +asm f32 dAttention_c::EnemyDistance(fopAc_ac_c* param_0) { nofralloc #include "asm/d/d_attention/EnemyDistance__12dAttention_cFP10fopAc_ac_c.s" } #pragma pop +#endif /* 80071D6C-80071DEC 06C6AC 0080+00 1/1 0/0 0/0 .text sound_attention__FP10fopAc_ac_cPv */ +// matches with literals +#ifdef NONMATCHING +static int sound_attention(fopAc_ac_c* param_0, void* i_attention) { + f32 dist = ((dAttention_c*)i_attention)->EnemyDistance(param_0); + + if (dist < 0.0f) { + return 0; + } + + if (dist < ((dAttention_c*)i_attention)->mEnemyDist) { + ((dAttention_c*)i_attention)->mEnemyActorID = fopAcM_GetID(param_0); + ((dAttention_c*)i_attention)->mEnemyDist = dist; + } + + return 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void sound_attention(fopAc_ac_c* param_0, void* param_1) { +static asm int sound_attention(fopAc_ac_c* param_0, void* param_1) { nofralloc #include "asm/d/d_attention/sound_attention__FP10fopAc_ac_cPv.s" } #pragma pop - -/* ############################################################################################## */ -/* 80452698-8045269C 000C98 0004+00 1/1 0/0 0/0 .sdata2 @5137 */ -SECTION_SDATA2 static f32 lit_5137 = 10000.0f; - -/* 8045269C-804526A0 000C9C 0004+00 1/1 0/0 0/0 .sdata2 @5138 */ -SECTION_SDATA2 static f32 lit_5138 = 1.0f / 10.0f; +#endif /* 80071DEC-80071E84 06C72C 0098+00 1/1 0/0 0/0 .text runSoundProc__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::runSoundProc() { - nofralloc -#include "asm/d/d_attention/runSoundProc__12dAttention_cFv.s" +void dAttention_c::runSoundProc() { + mEnemyActorID = -1; + mEnemyDist = 10000.0f; + + if (!chkFlag(0x80000000)) { + fopAcIt_Executor((fopAcIt_ExecutorFunc)sound_attention, this); + + if (fopAcM_SearchByID(mEnemyActorID) != NULL) { + mDoAud_bgmNowBattle(mEnemyDist * 0.1f); + setFlag(0x100); + } + } } -#pragma pop /* 80071E84-800720F4 06C7C4 0270+00 1/1 0/0 0/0 .text runDrawProc__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::runDrawProc() { - nofralloc -#include "asm/d/d_attention/runDrawProc__12dAttention_cFv.s" +void dAttention_c::runDrawProc() { + if ((mFlags >> 3) & 1) { + draw[0].setAlphaAnm(mAttParam.mAttnCursorAppearFrames, 0); + draw[0].setAnm(1, mAttParam.field_0x3c); + draw[0].field_0x164.x = mAttParam.mAttnCursorScaleX; + draw[0].field_0x164.y = mAttParam.mAttnCursorScaleY; + draw[0].field_0x164.z = mAttParam.mAttnCursorOffsetY; + draw[0].field_0x175 = 1; + + if (!i_dComIfGp_checkPlayerStatus0(0, 0x36a02311) || + i_dComIfGp_checkPlayerStatus1(0, 0x11)) { + lockSoundStart(Z2SE_SY_L_FOCUS_SET); + } + } else if (chkFlag(0x10)) { + draw[0].setAlphaAnm(mAttParam.mAttnCursorDisappearFrames, 1); + if (field_0x328 >= 0) { + field_0x328 = 1; + setFlag(0x40000000); + } + + if (!i_dComIfGp_checkPlayerStatus0(0, 0x36a02311) || + i_dComIfGp_checkPlayerStatus1(0, 0x11)) { + lockSoundStart(Z2SE_SY_L_FOCUS_RESET); + } + } else if (chkFlag(0x1)) { + draw[0].setAnm(0, mAttParam.field_0x38); + draw[0].setAlphaAnm(mAttParam.mAttnCursorAppearFrames, 0); + + draw[0].field_0x164.x = mAttParam.mSelCursorScaleX; + draw[0].field_0x164.y = mAttParam.mSelCursorScaleY; + draw[0].field_0x164.z = mAttParam.mSelCursorOffsetY; + draw[0].field_0x175 = 0; + setFlag(0x40000000); + } else if (chkFlag(0x2)) { + draw[0].setAlphaAnm(mAttParam.mAttnCursorAppearFrames, 0); + draw[1].setAnm(0, mAttParam.field_0x38); + draw[1].setAlphaAnm(mAttParam.mAttnCursorDisappearFrames, 1); + + draw[1].field_0x164.x = mAttParam.mSelCursorScaleX; + draw[1].field_0x164.y = mAttParam.mSelCursorScaleY; + draw[1].field_0x164.z = mAttParam.mSelCursorOffsetY; + draw[1].field_0x175 = 0; + setFlag(0x40000000); + } else if (mLockonCount <= 0 && field_0x328 == 0) { + draw[0].setAlphaAnm(mAttParam.mAttnCursorDisappearFrames, 1); + field_0x328 = 1; + setFlag(0x40000000); + } + + if (mAttnStatus == ST_LOCK) { + if (draw[0].field_0x173 == 3) { + draw[0].field_0x173 = 4; + clrFlag(0x40000000); + } + } else if (draw[0].field_0x173 == 3) { + draw[0].field_0x173 = 4; + clrFlag(0x40000000); + field_0x328 = -1; + } } -#pragma pop /* 800720F4-800720F8 06CA34 0004+00 1/1 0/0 0/0 .text runDebugDisp__12dAttention_cFv */ -void dAttention_c::runDebugDisp() { - /* empty function */ -} +void dAttention_c::runDebugDisp() {} /* 800720F8-800722A0 06CA38 01A8+00 1/1 0/0 0/0 .text checkButton__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::checkButton() { - nofralloc -#include "asm/d/d_attention/checkButton__12dAttention_cFv.s" +void dAttention_c::checkButton() { + if (on_final_boss_stg && dComIfGp_roomControl_getStayNo() == 0 && + !dComIfGs_isSaveDunSwitch(1)) { + if (field_0x32b == 1 && LockonTarget(0) != NULL && chkFlag(0x20000000)) { + setFlag(0x1000000); + } + } + + if (i_dComIfGp_checkPlayerStatus0(0, 0x36a02311) || i_dComIfGp_checkPlayerStatus1(0, 0x11)) { + switch (field_0x32b) { + case 0: + case 1: + clrFlag(0x1000000); + field_0x32b = 4; + break; + } + + return; + } + + switch (field_0x32b) { + case 4: + if (padLockButton(mPadNo) || chkFlag(0x1000000)) { + field_0x32b = 0; + setFlag(0x200); + clrFlag(0x1000000); + } + return; + case 0: + field_0x32b = 1; + case 1: + if (chkFlag(0x1000000)) { + field_0x32b = 0; + field_0x32e = 0x3C; + setFlag(0x200); + clrFlag(0x1000000); + return; + } + + if (!padLockButton(mPadNo)) { + field_0x32b = 4; + } + } } -#pragma pop /* 800722A0-800722EC 06CBE0 004C+00 2/2 0/0 0/0 .text triggerProc__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::triggerProc() { - nofralloc -#include "asm/d/d_attention/triggerProc__12dAttention_cFv.s" +bool dAttention_c::triggerProc() { + if (chaseAttention()) { + setFlag(0x8); + return true; + } + + return false; } -#pragma pop /* 800722EC-80072344 06CC2C 0058+00 2/2 0/0 0/0 .text lostCheck__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::lostCheck() { - nofralloc -#include "asm/d/d_attention/lostCheck__12dAttention_cFv.s" +int dAttention_c::lostCheck() { + if (chaseAttention()) { + return false; + } + + setFlag(0x10); + setFlag(0x40); + return true; } -#pragma pop /* 80072344-800725F0 06CC84 02AC+00 1/1 0/0 0/0 .text judgementStatus4Hold__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::judgementStatus4Hold() { - nofralloc -#include "asm/d/d_attention/judgementStatus4Hold__12dAttention_cFv.s" +void dAttention_c::judgementStatus4Hold() { + switch (mAttnStatus) { + case ST_NONE: + field_0x32f = 0; + field_0x32e = 0; + mLockTargetID = -1; + stockAttention(); + + if (field_0x32b == 0 && triggerProc()) { + mAttnStatus = ST_LOCK; + field_0x32e = 15; + } + break; + case ST_LOCK: + mLockTargetID = LockonTargetPId(0); + field_0x32f = 0; + + if (lostCheck()) { + mLockTargetID = -1; + stockAttention(); + + if (triggerProc()) { + mAttnStatus = ST_LOCK; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + setFlag(0x800000); + } + } else if (field_0x32b == 4) { + mAttnStatus = ST_RELEASE; + setFlag(0x10); + field_0x32f = 10; + } else if (field_0x32e == 0) { + initList(-1); + + if (makeList()) { + sortList(); + } + } + + if (field_0x32e != 0) { + field_0x32e--; + } + + break; + case ST_RELEASE: + setFlag(0x40); + + if (lostCheck()) { + mLockTargetID = -1; + stockAttention(); + + if (triggerProc()) { + mAttnStatus = ST_LOCK; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + setFlag(0x800000); + } + } else if (field_0x32b == 0) { + if (nextAttention()) { + setFlag(0x8); + mAttnStatus = ST_LOCK; + field_0x32e = 15; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + } + } else if (LockonTarget(0) == NULL || field_0x32f == 0) { + mAttnStatus = ST_NONE; + freeAttention(); + } + + if (field_0x32f != 0) { + field_0x32f--; + } + + break; + } + + if (!chkFlag(0x1000)) { + setFlag(0x4000); + initList(-1); + + if (makeList()) { + sortList(); + } + } } -#pragma pop /* 800725F0-80072924 06CF30 0334+00 1/1 0/0 0/0 .text judgementStatus4Switch__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::judgementStatus4Switch() { - nofralloc -#include "asm/d/d_attention/judgementStatus4Switch__12dAttention_cFv.s" +void dAttention_c::judgementStatus4Switch() { + switch (mAttnStatus) { + case ST_NONE: + mLockTargetID = -1; + stockAttention(); + field_0x32f = 0; + field_0x32e = 0; + + if (field_0x32b == 0 && triggerProc()) { + mAttnStatus = ST_LOCK; + field_0x32e = 15; + field_0x32f = 15; + } + break; + case ST_LOCK: + mLockTargetID = LockonTargetPId(0); + + if (field_0x32f == 0) { + mAttnStatus = ST_NONE; + freeAttention(); + } else if (lostCheck()) { + mLockTargetID = -1; + stockAttention(); + + if (triggerProc()) { + mAttnStatus = ST_LOCK; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + setFlag(0x800000); + } + } else if (field_0x32b == 0) { + if (mDoCPd_c::getStickY(mPadNo) < lit_4064) { + mAttnStatus = ST_NONE; + freeAttention(); + } else if (nextAttention()) { + setFlag(0x8); + mAttnStatus = ST_LOCK; + field_0x32e = 15; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + } + } else if (field_0x32e == 0) { + initList(-1); + + if (makeList()) { + sortList(); + } + } + + if (!chkFlag(0x8) && field_0x32e != 0) { + field_0x32e--; + } + + if (field_0x32b == 1) { + if (field_0x32f != 0) { + field_0x32f--; + } + } else { + field_0x32f = 15; + } + + break; + case ST_RELEASE: + setFlag(0x40); + + if (lostCheck()) { + mLockTargetID = -1; + stockAttention(); + + if (triggerProc()) { + mAttnStatus = ST_LOCK; + } else { + mAttnStatus = ST_NONE; + freeAttention(); + setFlag(0x800000); + } + } else if (field_0x32b == 0) { + mAttnStatus = ST_NONE; + + if (triggerProc()) { + mAttnStatus = ST_LOCK; + field_0x32e = 15; + field_0x32f = 15; + } + } else if (LockonTarget(0) == NULL || field_0x32f == 0) { + mAttnStatus = ST_NONE; + freeAttention(); + } + + break; + } + + if (!chkFlag(0x1000)) { + setFlag(0x4000); + initList(-1); + + if (makeList()) { + sortList(); + } + } } -#pragma pop /* 80072924-80072BD4 06D264 02B0+00 0/0 1/1 0/0 .text Run__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::Run() { - nofralloc -#include "asm/d/d_attention/Run__12dAttention_cFv.s" +int dAttention_c::Run() { + clrFlag(0x3FFFFF); + + bool usingHold = dComIfGs_getOptAttentionType() == 0; + if (attn_opt_hold != usingHold) { + setFlag(0x10000); + } + + attn_opt_hold = usingHold; + + if (mAttnBlockTimer != 0) { + mAttnBlockTimer--; + return 1; + } + + if (chkFlag(0x80)) { + mpPlayer = dComIfGp_getPlayer(0); + mPadNo = PAD_1; + } + + setOwnerAttentionPos(); + + if (i_dComIfGp_event_runCheck() || chkFlag(0x10000)) { + mAttnStatus = ST_NONE; + field_0x32b = 4; + field_0x32c = 0; + clrFlag(0x20000000); + clrFlag(0x10000000); + mLockTargetID = -1; + freeAttention(); + } else { + checkButton(); + + if (attn_opt_hold) { + judgementStatus4Hold(); + } else { + judgementStatus4Switch(); + } + + if ((mFlags >> 0x17) & 1) { + freeAttention(); + if (LockonTarget(0) == NULL) { + setFlag(0x20000020); + } + setFlag(0x10000000); + clrFlag(0x800000); + } else if (chkFlag(0x10000000)) { + if (!padLockButton(mPadNo)) { + if (chkFlag(0x20000000)) { + lockSoundStart(Z2SE_SY_CAMERA_L_CANCEL); + clrFlag(0x20000000); + } + + clrFlag(0x10000000); + } + } else { + if (padLockButton(mPadNo)) { + if (LockonTarget(0) == NULL) { + lockSoundStart(Z2SE_SY_CAMERA_L_MOVE); + setFlag(0x20000020); + } + + setFlag(0x10000000); + } + } + } + + field_0x32a = mAttnStatus; + + runSoundProc(); + runDrawProc(); + runDebugDisp(); + + if (mAttnStatus == ST_LOCK) { + dComIfGp_onCameraAttentionStatus(mPadNo, 1); + } else { + dComIfGp_offCameraAttentionStatus(mPadNo, 1); + } + + mZHintTarget.proc(); + mCatghTarget.proc(); + mLookTarget.proc(); + + return 1; } -#pragma pop /* 80072BD4-80072D80 06D514 01AC+00 0/0 1/1 0/0 .text Draw__12dAttention_cFv */ +// reg stuff +#ifdef NONMATCHING +void dAttention_c::Draw() { + if (mAttParam.CheckFlag(0x10)) { + draw[0].field_0x173 = 3; + draw[1].field_0x173 = 3; + return; + } + + Mtx tmp; + PSMTXInverse(dComIfGd_getViewRotMtx(), tmp); + fopAc_ac_c* target = LockonTarget(0); + + if (!i_dComIfGp_event_runCheck()) { + if (target != NULL) { + draw[0].draw(target->mAttentionInfo.mPosition, tmp); + + if (mLockonCount >= 2 && draw[1].field_0x173 == 2) { + int listIdx = mLockOnOffset; + + if (listIdx == 0) { + listIdx = mLockonCount - 1; + } else { + listIdx--; + } + + if (mLockOnList[listIdx].getActor() != NULL) { + fopAc_ac_c* actor = mLockOnList[listIdx].getActor(); + draw[1].draw(actor->mAttentionInfo.mPosition, tmp); + } + } + + mTargetActorID = fopAcM_GetID(target); + mDrawAttnPos = target->mAttentionInfo.mPosition; + field_0x328 = 0; + } else if (field_0x328 > 0) { + fopAc_ac_c* actor = fopAcM_SearchByID(mTargetActorID); + + if (actor != NULL) { + draw[0].draw(actor->mAttentionInfo.mPosition, tmp); + mDrawAttnPos = actor->mAttentionInfo.mPosition; + } else { + draw[0].draw(mDrawAttnPos, tmp); + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -786,9 +1683,18 @@ asm void dAttention_c::Draw() { #include "asm/d/d_attention/Draw__12dAttention_cFv.s" } #pragma pop +#endif /* 80072D80-80072DD8 06D6C0 0058+00 2/2 0/0 0/0 .text lockSoundStart__12dAttention_cFUl */ +// matches with literals +#ifdef NONMATCHING +void dAttention_c::lockSoundStart(u32 i_sfxID) { + if (!chkFlag(0x400000)) { + mDoAud_seStart(i_sfxID, NULL, 0, 0); + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -797,6 +1703,7 @@ asm void dAttention_c::lockSoundStart(u32 param_0) { #include "asm/d/d_attention/lockSoundStart__12dAttention_cFUl.s" } #pragma pop +#endif /* 80072DD8-80072FE8 06D718 0210+00 1/1 0/0 0/0 .text setAnm__10dAttDraw_cFUcf */ #pragma push @@ -809,14 +1716,12 @@ asm void dAttDraw_c::setAnm(u8 param_0, f32 param_1) { #pragma pop /* 80072FE8-80073004 06D928 001C+00 1/1 0/0 0/0 .text setAlphaAnm__10dAttDraw_cFUcUc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttDraw_c::setAlphaAnm(u8 param_0, u8 param_1) { - nofralloc -#include "asm/d/d_attention/setAlphaAnm__10dAttDraw_cFUcUc.s" +void dAttDraw_c::setAlphaAnm(u8 param_0, u8 param_1) { + field_0x171 = param_0; + field_0x172 = 0; + field_0x173 = 2; + field_0x174 = param_1; } -#pragma pop /* ############################################################################################## */ /* 804526A0-804526A8 000CA0 0004+04 1/1 0/0 0/0 .sdata2 @5668 */ @@ -853,190 +1758,243 @@ SECTION_SDATA2 static f32 lit_5784 = 0.01745329238474369f; SECTION_SDATA2 static f32 lit_5785 = -100.0f; /* 800732B0-8007353C 06DBF0 028C+00 1/1 0/0 0/0 .text draw__10dAttDraw_cFR4cXyzPA4_f */ +// matches with literals +#ifdef NONMATCHING +void dAttDraw_c::draw(cXyz& param_0, Mtx param_1) { + J3DModelData* modelData = mModel[field_0x170]->getModelData(); + + mDoMtx_stack_c::transS(param_0.x, param_0.y + field_0x164.z, param_0.z); + mDoMtx_stack_c::concat(param_1); + mModel[field_0x170]->i_setBaseTRMtx(mDoMtx_stack_c::get()); + + view_class* view = dComIfGd_getView(); + f32 temp_f31 = tan(0.01745329238474369f * (0.5f * view->mFovy)); + f32 temp_f30 = (-100.0f - g_AttDwHIO.mCursorDistance) / temp_f31; + + cXyz tmp; + PSMTXMultVec(dComIfGd_getViewMtx(), ¶m_0, &tmp); + + f32 var_f2 = 1.0f; + if (tmp.z < temp_f30) { + var_f2 = (tmp.z * temp_f31) / (-100.0f - g_AttDwHIO.mCursorDistance); + } + + mModel[field_0x170]->setBaseScale( + cXyz(field_0x164.x * var_f2, field_0x164.y * var_f2, field_0x164.x * var_f2)); + + alphaAnm(); + + if (field_0x175 != 0) { + mImpactBck.entry(modelData); + mImpactBpk.entry(modelData); + mImpactBrk.entry(modelData); + mImpactBtk.entry(modelData); + } else { + mNoticeCursorBck[field_0x170].entry(modelData); + mNoticeCursorBpk[field_0x170].entry(modelData); + mNoticeCursorBrk[field_0x170].entry(modelData); + mNoticeCursorBtk[field_0x170].entry(modelData); + mNoticeCursor02Brk[field_0x170].entry(modelData); + } + + dComIfGd_setList3Dlast(); + mDoExt_modelUpdateDL(mModel[field_0x170]); + dComIfGd_setList(); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttDraw_c::draw(cXyz& param_0, f32 (*param_1)[4]) { +asm void dAttDraw_c::draw(cXyz& param_0, Mtx param_1) { nofralloc #include "asm/d/d_attention/draw__10dAttDraw_cFR4cXyzPA4_f.s" } #pragma pop +#endif /* 8007353C-800735DC 06DE7C 00A0+00 8/8 13/13 21/21 .text LockonTarget__12dAttention_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::LockonTarget(s32 param_0) { - nofralloc -#include "asm/d/d_attention/LockonTarget__12dAttention_cFl.s" +fopAc_ac_c* dAttention_c::LockonTarget(s32 param_0) { + if (i_dComIfGp_checkPlayerStatus0(0, 0x36A02311) || i_dComIfGp_checkPlayerStatus1(0, 0x11)) { + return NULL; + } + + if (param_0 >= mLockonCount) { + return NULL; + } + + int listIdx = mLockOnOffset + param_0; + if (listIdx >= mLockonCount) { + listIdx -= mLockonCount; + } + + fopAc_ac_c* actor = mLockOnList[listIdx].getActor(); + if (actor == NULL || !(actor->mAttentionInfo.mFlags & 7)) { + return NULL; + } + + return actor; } -#pragma pop /* 800735DC-800736CC 06DF1C 00F0+00 0/0 1/1 0/0 .text LockonReleaseDistanse__12dAttention_cFv */ +#ifdef NONMATCHING +f32 dAttention_c::LockonReleaseDistanse() { + if (!LockonTruth()) { + return 0.0f; + } + + fopAc_ac_c* actor = mLockOnList[mLockOnOffset].getActor(); + if (actor == NULL) { + return 0.0f; + } + + int idx = mLockOnList[mLockOnOffset].mType + actor->mAttentionInfo.field_0x0[0]; + cSGlobe tmp_g(actor->mAttentionInfo.mPosition - mOwnerAttnPos); + cSAngle tmp_a(tmp_g.U() - mpPlayer->mCollisionRot.y); + + return distace_angle_adjust(dist_table[idx].field_0x8, tmp_a, 1.0f) + dist_table[idx].field_0x4; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dAttention_c::LockonReleaseDistanse() { +asm f32 dAttention_c::LockonReleaseDistanse() { nofralloc #include "asm/d/d_attention/LockonReleaseDistanse__12dAttention_cFv.s" } #pragma pop +#endif /* 800736CC-80073734 06E00C 0068+00 2/2 0/0 0/0 .text LockonTargetPId__12dAttention_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::LockonTargetPId(s32 param_0) { - nofralloc -#include "asm/d/d_attention/LockonTargetPId__12dAttention_cFl.s" +u32 dAttention_c::LockonTargetPId(s32 param_0) { + if (i_dComIfGp_checkPlayerStatus0(0, 0x36A02311) || i_dComIfGp_checkPlayerStatus1(0, 0x11)) { + return -1; + } + + if (param_0 >= mLockonCount) { + return -1; + } + + int listIdx = mLockOnOffset + param_0; + if (listIdx >= mLockonCount) { + listIdx -= mLockonCount; + } + + return mLockOnList[listIdx].getPid(); } -#pragma pop /* 80073734-8007378C 06E074 0058+00 0/0 3/3 2/2 .text ActionTarget__12dAttention_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::ActionTarget(s32 param_0) { - nofralloc -#include "asm/d/d_attention/ActionTarget__12dAttention_cFl.s" +fopAc_ac_c* dAttention_c::ActionTarget(s32 param_0) { + if (param_0 >= mActionCount) { + return NULL; + } + + int listIdx = mActionOffset + param_0; + if (listIdx >= mActionCount) { + listIdx -= mActionCount; + } + + return mActionList[listIdx].getActor(); } -#pragma pop /* 8007378C-800737E4 06E0CC 0058+00 0/0 3/3 0/0 .text CheckObjectTarget__12dAttention_cFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::CheckObjectTarget(s32 param_0) { - nofralloc -#include "asm/d/d_attention/CheckObjectTarget__12dAttention_cFl.s" +fopAc_ac_c* dAttention_c::CheckObjectTarget(s32 param_0) { + if (param_0 >= mCheckObjectCount) { + return NULL; + } + + int listIdx = mCheckObjectOffset + param_0; + if (listIdx >= mCheckObjectCount) { + listIdx -= mCheckObjectCount; + } + + return mCheckObjectList[listIdx].getActor(); } -#pragma pop /* 800737E4-80073838 06E124 0054+00 3/3 53/53 37/37 .text LockonTruth__12dAttention_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm bool dAttention_c::LockonTruth() { - nofralloc -#include "asm/d/d_attention/LockonTruth__12dAttention_cFv.s" +bool dAttention_c::LockonTruth() { + return (mAttnStatus == ST_LOCK || mAttnStatus == ST_RELEASE) && LockonTarget(0); } -#pragma pop /* 80073838-80073864 06E178 002C+00 0/0 1/1 0/0 .text * checkDistance__12dAttention_cFP4cXyzsP4cXyzffff */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttention_c::checkDistance(cXyz* param_0, s16 param_1, cXyz* param_2, f32 param_3, - f32 param_4, f32 param_5, f32 param_6) { - nofralloc -#include "asm/d/d_attention/checkDistance__12dAttention_cFP4cXyzsP4cXyzffff.s" +int dAttention_c::checkDistance(cXyz* param_0, s16 param_1, cXyz* param_2, f32 param_3, f32 param_4, + f32 param_5, f32 param_6) { + return check_distace(param_0, param_1, param_2, param_3, param_4, param_5, param_6); } -#pragma pop /* 80073864-80073898 06E1A4 0034+00 11/11 3/3 8/8 .text getActor__10dAttList_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttList_c::getActor() { - nofralloc -#include "asm/d/d_attention/getActor__10dAttList_cFv.s" +fopAc_ac_c* dAttList_c::getActor() { + return fopAcM_SearchByID(mActorID); } -#pragma pop /* 80073898-800738B4 06E1D8 001C+00 3/3 0/0 0/0 .text setActor__10dAttList_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttList_c::setActor(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_attention/setActor__10dAttList_cFP10fopAc_ac_c.s" +void dAttList_c::setActor(fopAc_ac_c* i_actor) { + mActorID = fopAcM_GetID(i_actor); } -#pragma pop /* 800738B4-800738CC 06E1F4 0018+00 1/1 0/0 0/0 .text getPId__10dAttHint_cFPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttHint_c::getPId(void* param_0) { - nofralloc -#include "asm/d/d_attention/getPId__10dAttHint_cFPv.s" +u32 dAttHint_c::getPId(void* i_actor) { + return fopAcM_GetID(i_actor); } -#pragma pop /* 800738CC-800738FC 06E20C 0030+00 0/0 1/1 0/0 .text convPId__10dAttHint_cFUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttHint_c::convPId(unsigned int param_0) { - nofralloc -#include "asm/d/d_attention/convPId__10dAttHint_cFUi.s" +fopAc_ac_c* dAttHint_c::convPId(unsigned int i_id) { + return fopAcM_SearchByID(i_id); } -#pragma pop /* 800738FC-80073958 06E23C 005C+00 0/0 0/0 6/6 .text request__10dAttHint_cFP10fopAc_ac_ci */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttHint_c::request(fopAc_ac_c* param_0, int param_1) { - nofralloc -#include "asm/d/d_attention/request__10dAttHint_cFP10fopAc_ac_ci.s" +int dAttHint_c::request(fopAc_ac_c* i_actor, int i_priority) { + if (i_priority < 0) { + i_priority = 0x1FF; + } + + if (i_priority <= mPriority) { + mHintActorID = getPId(i_actor); + mPriority = i_priority; + } + + return 1; } -#pragma pop /* 80073958-80073970 06E298 0018+00 1/1 0/0 0/0 .text init__10dAttHint_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttHint_c::init() { - nofralloc -#include "asm/d/d_attention/init__10dAttHint_cFv.s" +void dAttHint_c::init() { + mHintActorID = -1; + field_0x8 = -1; + mPriority = 0x200; } -#pragma pop /* 80073970-8007398C 06E2B0 001C+00 1/1 0/0 0/0 .text proc__10dAttHint_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttHint_c::proc() { - nofralloc -#include "asm/d/d_attention/proc__10dAttHint_cFv.s" +void dAttHint_c::proc() { + field_0x8 = mHintActorID; + mHintActorID = -1; + mPriority = 0x200; } -#pragma pop /* 8007398C-800739BC 06E2CC 0030+00 0/0 4/4 0/0 .text convPId__11dAttCatch_cFUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm s32 dAttCatch_c::convPId(unsigned int param_0) { - nofralloc -#include "asm/d/d_attention/convPId__11dAttCatch_cFUi.s" +fopAc_ac_c* dAttCatch_c::convPId(unsigned int i_id) { + return fopAcM_SearchByID(i_id); } -#pragma pop /* 800739BC-800739DC 06E2FC 0020+00 1/1 0/0 0/0 .text init__11dAttCatch_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttCatch_c::init() { - nofralloc -#include "asm/d/d_attention/init__11dAttCatch_cFv.s" +void dAttCatch_c::init() { + field_0xc = 0x67; + field_0x0 = -1; + mCatghTargetID = -1; + field_0x4 = 3; } -#pragma pop /* 800739DC-80073A08 06E31C 002C+00 1/1 0/0 0/0 .text proc__11dAttCatch_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttCatch_c::proc() { - nofralloc -#include "asm/d/d_attention/proc__11dAttCatch_cFv.s" +void dAttCatch_c::proc() { + mCatghTargetID = field_0x0; + mChangeItem = field_0xc; + field_0x0 = -1; + field_0x4 = 3; + field_0xc = 0x67; } -#pragma pop /* 80073A08-80073CA4 06E348 029C+00 0/0 0/0 10/10 .text * request__11dAttCatch_cFP10fopAc_ac_cUcfffsi */ @@ -1051,34 +2009,23 @@ asm void dAttCatch_c::request(fopAc_ac_c* param_0, u8 param_1, f32 param_2, f32 #pragma pop /* 80073CA4-80073CD4 06E5E4 0030+00 0/0 1/1 0/0 .text convPId__10dAttLook_cFUi */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttLook_c::convPId(unsigned int param_0) { - nofralloc -#include "asm/d/d_attention/convPId__10dAttLook_cFUi.s" +fopAc_ac_c* dAttLook_c::convPId(unsigned int i_id) { + return fopAcM_SearchByID(i_id); } -#pragma pop /* 80073CD4-80073CEC 06E614 0018+00 1/1 0/0 0/0 .text init__10dAttLook_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttLook_c::init() { - nofralloc -#include "asm/d/d_attention/init__10dAttLook_cFv.s" +void dAttLook_c::init() { + field_0x0 = -1; + mLookTargetID = -1; + field_0x4 = 3; } -#pragma pop /* 80073CEC-80073D08 06E62C 001C+00 1/1 0/0 0/0 .text proc__10dAttLook_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dAttLook_c::proc() { - nofralloc -#include "asm/d/d_attention/proc__10dAttLook_cFv.s" +void dAttLook_c::proc() { + mLookTargetID = field_0x0; + field_0x0 = -1; + field_0x4 = 3; } -#pragma pop /* 80073D08-80073FC4 06E648 02BC+00 0/0 0/0 7/7 .text request__10dAttLook_cFP10fopAc_ac_cfffsi */ #pragma push @@ -1092,15 +2039,7 @@ asm void dAttLook_c::request(fopAc_ac_c* param_0, f32 param_1, f32 param_2, f32 #pragma pop /* 80073FC4-8007400C 06E904 0048+00 2/1 0/0 0/0 .text __dt__15dAttDrawParam_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -// asm dAttDrawParam_c::~dAttDrawParam_c() { -extern "C" asm void __dt__15dAttDrawParam_cFv() { - nofralloc -#include "asm/d/d_attention/__dt__15dAttDrawParam_cFv.s" -} -#pragma pop +dAttDrawParam_c::~dAttDrawParam_c() {} /* ############################################################################################## */ /* 8045067A-8045067E -00001 0004+00 0/0 0/0 0/0 .sdata None */ diff --git a/src/d/d_demo.cpp b/src/d/d_demo.cpp index ee205a18c86..370e64da471 100644 --- a/src/d/d_demo.cpp +++ b/src/d/d_demo.cpp @@ -5,10 +5,10 @@ #include "d/d_demo.h" #include "d/com/d_com_inf_game.h" +#include "d/msg/d_msg_object.h" #include "dol2asm.h" #include "dolphin/types.h" #include "rel/d/a/d_a_movie_player/d_a_movie_player.h" -#include "d/msg/d_msg_object.h" // // Forward References: @@ -506,37 +506,21 @@ SECTION_DATA extern void* data_803A7BF4[9] = { namespace { /* 80037DE4-80037E44 032724 0060+00 1/0 0/0 0/0 .text * __dt__Q220@unnamed@d_demo_cpp@24jstudio_tAdaptor_messageFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm jstudio_tAdaptor_message::~jstudio_tAdaptor_message() { - nofralloc -#include "asm/d/d_demo/func_80037DE4.s" -} -#pragma pop +jstudio_tAdaptor_message::~jstudio_tAdaptor_message() {} /* 80037E44-80037E74 032784 0030+00 1/0 0/0 0/0 .text * adaptor_do_MESSAGE__Q220@unnamed@d_demo_cpp@24jstudio_tAdaptor_messageFQ37JStudio4data15TEOperationDataPCvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void jstudio_tAdaptor_message::adaptor_do_MESSAGE(JStudio::data::TEOperationData param_0, const void* param_1, u32 param_2) { - nofralloc -#include "asm/d/d_demo/func_80037E44.s" +void jstudio_tAdaptor_message::adaptor_do_MESSAGE(JStudio::data::TEOperationData param_0, + const void* pContent, u32 uSize) { + if (param_0 == JStudio::data::UNK_0x19) { + dMsgObject_setDemoMessage(*(u32*)pContent); + } } -#pragma pop /* 80037E74-80037ED4 0327B4 0060+00 1/0 0/0 0/0 .text * __dt__Q220@unnamed@d_demo_cpp@29jstudio_tCreateObject_messageFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm jstudio_tCreateObject_message::~jstudio_tCreateObject_message() { - nofralloc -#include "asm/d/d_demo/func_80037E74.s" -} -#pragma pop +jstudio_tCreateObject_message::~jstudio_tCreateObject_message() {} /* 80037ED4-80038020 032814 014C+00 1/0 0/0 0/0 .text * create__Q220@unnamed@d_demo_cpp@29jstudio_tCreateObject_messageFPPQ27JStudio7TObjectRCQ47JStudio3stb4data20TParse_TBlock_object @@ -544,7 +528,9 @@ asm jstudio_tCreateObject_message::~jstudio_tCreateObject_message() { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void jstudio_tCreateObject_message::create(JStudio::TObject** param_0, const JStudio::stb::data::TParse_TBlock_object& param_1) { +asm void +jstudio_tCreateObject_message::create(JStudio::TObject** param_0, + const JStudio::stb::data::TParse_TBlock_object& param_1) { nofralloc #include "asm/d/d_demo/func_80037ED4.s" } @@ -611,6 +597,18 @@ SECTION_SDATA2 static u8 lit_4040[4] = { SECTION_SDATA2 static f32 lit_4041 = 1.0f; /* 80038020-80038098 032960 0078+00 1/1 0/0 0/0 .text __ct__13dDemo_actor_cFv */ +// matches with literals +#ifdef NONMATCHING +dDemo_actor_c::dDemo_actor_c() { + mFlags = 0; + mTrans.set(0.0f, 0.0f, 0.0f); + mScale.set(1.0f, 1.0f, 1.0f); + mRotate.set(0, 0, 0); + mModel = NULL; + mAnmFrameMax = __float_max[0]; + mTexAnmFrameMax = __float_max[0]; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -619,8 +617,24 @@ asm dDemo_actor_c::dDemo_actor_c() { #include "asm/d/d_demo/__ct__13dDemo_actor_cFv.s" } #pragma pop +#endif /* 80038098-80038128 0329D8 0090+00 1/0 0/0 0/0 .text __dt__13dDemo_actor_cFv */ +// matches with vtable data +#ifdef NONMATCHING +dDemo_actor_c::~dDemo_actor_c() { + fopAc_ac_c* actor = getActor(); + if (actor != NULL) { + actor->mDemoActorId = 0; + } + + mActorId = -1; + mOldAnmId = -1; + mBtpId = -1; + mBtkId = -1; + mBrkId = -1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -630,26 +644,26 @@ extern "C" asm void __dt__13dDemo_actor_cFv() { #include "asm/d/d_demo/__dt__13dDemo_actor_cFv.s" } #pragma pop +#endif /* 80038128-8003815C 032A68 0034+00 1/1 0/0 0/0 .text getActor__13dDemo_actor_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::getActor() { - nofralloc -#include "asm/d/d_demo/getActor__13dDemo_actor_cFv.s" +fopAc_ac_c* dDemo_actor_c::getActor() { + return fopAcM_SearchByID(mActorId); } -#pragma pop /* 8003815C-8003819C 032A9C 0040+00 1/1 1/1 0/0 .text setActor__13dDemo_actor_cFP10fopAc_ac_c */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::setActor(fopAc_ac_c* param_0) { - nofralloc -#include "asm/d/d_demo/setActor__13dDemo_actor_cFP10fopAc_ac_c.s" +void dDemo_actor_c::setActor(fopAc_ac_c* pActor) { + if (pActor == NULL) { + mActorId = -1; + } else { + mActorId = fopAcM_GetID(pActor); + } + + mOldAnmId = -1; + mBtpId = -1; + mBtkId = -1; + mBrkId = -1; } -#pragma pop /* ############################################################################################## */ /* 80451DB8-80451DC0 0003B8 0008+00 4/4 0/0 0/0 .sdata2 @4127 */ @@ -659,7 +673,7 @@ SECTION_SDATA2 static f64 lit_4127 = 4503601774854144.0 /* cast s32 to float */; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void dDemo_actor_c::getPrm_Morf() { +asm f32 dDemo_actor_c::getPrm_Morf() { nofralloc #include "asm/d/d_demo/getPrm_Morf__13dDemo_actor_cFv.s" } @@ -729,7 +743,7 @@ const u8* dDemo_c::m_branchData; static u8 struct_80450E48[4]; /* 80450E4C-80450E50 00034C 0004+00 1/1 0/0 0/0 .sbss it$4206 */ -static u8 it[4]; +static int it; /* 80038338-80038490 032C78 0158+00 0/0 1/1 5/5 .text getDemoIDData__13dDemo_actor_cFPiPiPiPUsPUc */ @@ -747,7 +761,7 @@ asm void dDemo_actor_c::getDemoIDData(int* param_0, int* param_1, int* param_2, #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -static asm void dDemo_getJaiPointer(char const* param_0, u32 param_1, int param_2, u16* param_3) { +static asm void* dDemo_getJaiPointer(char const* param_0, u32 param_1, int param_2, u16* param_3) { nofralloc #include "asm/d/d_demo/dDemo_getJaiPointer__FPCcUliPUs.s" } @@ -759,20 +773,93 @@ SECTION_SDATA2 static f32 lit_4152 = -1.0f; /* 80038518-800387A8 032E58 0290+00 0/0 0/0 2/2 .text * dDemo_setDemoData__FP10fopAc_ac_cUcP14mDoExt_McaMorfPCciPUsUlSc */ +// reg alloc +#ifdef NONMATCHING +int dDemo_setDemoData(fopAc_ac_c* param_0, u8 param_1, mDoExt_McaMorf* param_2, char const* param_3, + int param_4, u16* param_5, u32 param_6, s8 param_7) { + dDemo_actor_c* demo_actor = dDemo_c::getActor(param_0->mDemoActorId); + + if (demo_actor == NULL) { + return 0; + } + + u32 flags = demo_actor->checkEnable(param_1); + if (flags & 2) { + param_0->current.pos = demo_actor->getTrans(); + param_0->next.pos = param_0->current.pos; + } + + if (flags & 8) { + param_0->mCollisionRot = demo_actor->getRatate(); + } + + if (flags & 4) { + param_0->mScale = demo_actor->getScale(); + } + + if (flags & 0x80) { + param_0->mGravity = demo_actor->getPrm_Morf(); + } + + if (param_2 == NULL) { + return 1; + } + + demo_actor->setModel(param_2->getModel()); + + if (flags & 0x20) { + u32 anmID = demo_actor->getAnmId(); + + if (anmID != demo_actor->getOldAnmId()) { + const char* a_name; + if (anmID & 0x10000) { + a_name = dStage_roomControl_c::getDemoArcName(); + } else { + a_name = param_3; + } + + demo_actor->setOldAnmId(anmID); + + J3DAnmTransform* i_key = (J3DAnmTransform*)dComIfG_getObjectIDRes(a_name, anmID); + void* ptr = dDemo_getJaiPointer(a_name, anmID, param_4, param_5); + + param_2->setAnm(i_key, -1, demo_actor->getPrm_Morf(), 1.0f, 0.0f, -1.0f, ptr); + demo_actor->setAnmFrameMax(param_2->getEndFrame()); + } + } + + if (flags & 0x40) { + f32 anm_frame = demo_actor->getAnmFrame(); + + if (anm_frame > 1.0f) { + param_2->setFrame(anm_frame - 1.0f); + param_2->play(¶m_0->current.pos, param_6, param_7); + } else { + param_2->setFrame(anm_frame); + } + } else { + param_2->play(¶m_0->current.pos, param_6, param_7); + } + + return 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void dDemo_setDemoData(fopAc_ac_c* param_0, u8 param_1, mDoExt_McaMorf* param_2, - char const* param_3, int param_4, u16* param_5, u32 param_6, + char const* a_name, int param_4, u16* param_5, u32 param_6, s8 param_7) { nofralloc #include "asm/d/d_demo/dDemo_setDemoData__FP10fopAc_ac_cUcP14mDoExt_McaMorfPCciPUsUlSc.s" } #pragma pop +#endif /* 800387A8-800387EC 0330E8 0044+00 1/1 0/0 0/0 .text branchFile__FPCc */ static void branchFile(char const* resName) { - dDemo_c::setBranchData((u8*)dComIfG_getObjectRes(dStage_roomControl_c::getDemoArcName(), resName)); + dDemo_c::setBranchData( + (u8*)dComIfG_getObjectRes(dStage_roomControl_c::getDemoArcName(), resName)); } /* ############################################################################################## */ @@ -814,258 +901,205 @@ asm void dDemo_actor_c::JSGSetTranslation(Vec const& param_0) { #pragma pop /* 80038980-800389A8 0332C0 0028+00 1/0 0/0 0/0 .text JSGSetScaling__13dDemo_actor_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetScaling(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetScaling__13dDemo_actor_cFRC3Vec.s" +void dDemo_actor_c::JSGSetScaling(Vec const& i_scale) { + mScale = i_scale; + onEnable(0x4); } -#pragma pop - -/* ############################################################################################## */ -/* 80451DCC-80451DD0 0003CC 0004+00 1/1 0/0 0/0 .sdata2 @4567 */ -SECTION_SDATA2 static f32 lit_4567 = 182.04444885253906f; /* 800389A8-80038A0C 0332E8 0064+00 1/0 0/0 0/0 .text JSGSetRotation__13dDemo_actor_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetRotation(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetRotation__13dDemo_actor_cFRC3Vec.s" +void dDemo_actor_c::JSGSetRotation(Vec const& i_rotate) { + mRotate.x = i_rotate.x * 182.04444885253906f; + mRotate.y = i_rotate.y * 182.04444885253906f; + mRotate.z = i_rotate.z * 182.04444885253906f; + onEnable(0x8); } -#pragma pop /* 80038A0C-80038A20 03334C 0014+00 1/0 0/0 0/0 .text JSGSetShape__13dDemo_actor_cFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetShape(u32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetShape__13dDemo_actor_cFUl.s" +void dDemo_actor_c::JSGSetShape(u32 i_shape) { + mShape = i_shape; + onEnable(0x10); } -#pragma pop /* 80038A20-80038A40 033360 0020+00 1/0 0/0 0/0 .text JSGSetAnimation__13dDemo_actor_cFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetAnimation(u32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetAnimation__13dDemo_actor_cFUl.s" +void dDemo_actor_c::JSGSetAnimation(u32 i_anmID) { + mAnmId = i_anmID; + mAnmFrameMax = __float_max[0]; + onEnable(0x20); } -#pragma pop /* 80038A40-80038A54 033380 0014+00 1/0 0/0 0/0 .text JSGSetAnimationFrame__13dDemo_actor_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetAnimationFrame(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetAnimationFrame__13dDemo_actor_cFf.s" +void dDemo_actor_c::JSGSetAnimationFrame(f32 i_frame) { + mAnmFrame = i_frame; + onEnable(0x40); } -#pragma pop /* 80038A54-80038A68 033394 0014+00 1/0 0/0 0/0 .text JSGSetAnimationTransition__13dDemo_actor_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetAnimationTransition(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetAnimationTransition__13dDemo_actor_cFf.s" +void dDemo_actor_c::JSGSetAnimationTransition(f32 i_trans) { + mAnmTransition = i_trans; + onEnable(0x80); } -#pragma pop /* 80038A68-80038A7C 0333A8 0014+00 1/0 0/0 0/0 .text JSGSetTextureAnimation__13dDemo_actor_cFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetTextureAnimation(u32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetTextureAnimation__13dDemo_actor_cFUl.s" +void dDemo_actor_c::JSGSetTextureAnimation(u32 i_anm) { + mTexAnm = i_anm; + onEnable(0x100); } -#pragma pop /* 80038A7C-80038A90 0333BC 0014+00 1/0 0/0 0/0 .text * JSGSetTextureAnimationFrame__13dDemo_actor_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGSetTextureAnimationFrame(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetTextureAnimationFrame__13dDemo_actor_cFf.s" +void dDemo_actor_c::JSGSetTextureAnimationFrame(f32 i_frame) { + mTexAnmFrame = i_frame; + onEnable(0x200); } -#pragma pop /* 80038A90-80038AC4 0333D0 0034+00 8/8 0/0 0/0 .text getView__Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -static asm void getView() { - nofralloc -#include "asm/d/d_demo/getView__Fv.s" +static view_class* getView() { + if (dComIfGp_getWindowNum() == 0) { + return NULL; + } + + int camID = dComIfGp_getWindow(0)->getCameraID(); + return dComIfGp_getCamera(camID); } -#pragma pop /* 80038AC4-80038AF8 033404 0034+00 1/0 0/0 0/0 .text JSGGetProjectionNear__14dDemo_camera_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_camera_c::JSGGetProjectionNear() const { - nofralloc -#include "asm/d/d_demo/JSGGetProjectionNear__14dDemo_camera_cCFv.s" +f32 dDemo_camera_c::JSGGetProjectionNear() const { + view_class* view = getView(); + + if (view == NULL) { + return FLOAT_LABEL(lit_4040); + } + + return view->mNear; } -#pragma pop /* 80038AF8-80038B0C 033438 0014+00 1/0 0/0 0/0 .text JSGSetProjectionNear__14dDemo_camera_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetProjectionNear(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetProjectionNear__14dDemo_camera_cFf.s" +void dDemo_camera_c::JSGSetProjectionNear(f32 i_projNear) { + mProjNear = i_projNear; + onEnable(0x1); } -#pragma pop /* 80038B0C-80038B40 03344C 0034+00 1/0 0/0 0/0 .text JSGGetProjectionFar__14dDemo_camera_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_camera_c::JSGGetProjectionFar() const { - nofralloc -#include "asm/d/d_demo/JSGGetProjectionFar__14dDemo_camera_cCFv.s" +f32 dDemo_camera_c::JSGGetProjectionFar() const { + view_class* view = getView(); + + if (view == NULL) { + return lit_4041; + } + + return view->mFar; } -#pragma pop /* 80038B40-80038B54 033480 0014+00 1/0 0/0 0/0 .text JSGSetProjectionFar__14dDemo_camera_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetProjectionFar(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetProjectionFar__14dDemo_camera_cFf.s" +void dDemo_camera_c::JSGSetProjectionFar(f32 i_projFar) { + mProjFar = i_projFar; + onEnable(0x2); } -#pragma pop - -/* ############################################################################################## */ -/* 80451DD0-80451DD4 0003D0 0004+00 1/1 0/0 0/0 .sdata2 @4642 */ -SECTION_SDATA2 static f32 lit_4642 = 60.0f; /* 80038B54-80038B88 033494 0034+00 1/0 0/0 0/0 .text JSGGetProjectionFovy__14dDemo_camera_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_camera_c::JSGGetProjectionFovy() const { - nofralloc -#include "asm/d/d_demo/JSGGetProjectionFovy__14dDemo_camera_cCFv.s" +f32 dDemo_camera_c::JSGGetProjectionFovy() const { + view_class* view = getView(); + + if (view == NULL) { + return 60.0f; + } + + return view->mFovy; } -#pragma pop /* 80038B88-80038B9C 0334C8 0014+00 1/0 0/0 0/0 .text JSGSetProjectionFovy__14dDemo_camera_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetProjectionFovy(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetProjectionFovy__14dDemo_camera_cFf.s" +void dDemo_camera_c::JSGSetProjectionFovy(f32 i_projFovy) { + mProjFovy = i_projFovy; + onEnable(0x4); } -#pragma pop - -/* ############################################################################################## */ -/* 80451DD4-80451DD8 0003D4 0004+00 1/1 0/0 0/0 .sdata2 @4655 */ -SECTION_SDATA2 static f32 lit_4655 = 19.0f / 14.0f; /* 80038B9C-80038BD0 0334DC 0034+00 1/0 0/0 0/0 .text JSGGetProjectionAspect__14dDemo_camera_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_camera_c::JSGGetProjectionAspect() const { - nofralloc -#include "asm/d/d_demo/JSGGetProjectionAspect__14dDemo_camera_cCFv.s" +f32 dDemo_camera_c::JSGGetProjectionAspect() const { + view_class* view = getView(); + + if (view == NULL) { + return 1.3571428f; + } + + return view->mAspect; } -#pragma pop /* 80038BD0-80038BE4 033510 0014+00 1/0 0/0 0/0 .text JSGSetProjectionAspect__14dDemo_camera_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetProjectionAspect(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetProjectionAspect__14dDemo_camera_cFf.s" +void dDemo_camera_c::JSGSetProjectionAspect(f32 i_aspect) { + mProjAspect = i_aspect; + onEnable(0x8); } -#pragma pop /* 80038BE4-80038C44 033524 0060+00 1/0 0/0 0/0 .text JSGGetViewPosition__14dDemo_camera_cCFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGGetViewPosition(Vec* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGGetViewPosition__14dDemo_camera_cCFP3Vec.s" +void dDemo_camera_c::JSGGetViewPosition(Vec* o_position) const { + view_class* view = getView(); + + if (view == NULL) { + f32 tmp_0 = FLOAT_LABEL(lit_4040); + o_position->x = tmp_0; + o_position->y = tmp_0; + o_position->z = tmp_0; + } else { + *o_position = view->mLookat.mEye; + } } -#pragma pop /* 80038C44-80038C6C 033584 0028+00 1/0 0/0 0/0 .text JSGSetViewPosition__14dDemo_camera_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetViewPosition(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetViewPosition__14dDemo_camera_cFRC3Vec.s" +void dDemo_camera_c::JSGSetViewPosition(Vec const& i_position) { + mViewPos = i_position; + onEnable(0x10); } -#pragma pop /* 80038C6C-80038CD0 0335AC 0064+00 1/0 0/0 0/0 .text JSGGetViewUpVector__14dDemo_camera_cCFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGGetViewUpVector(Vec* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGGetViewUpVector__14dDemo_camera_cCFP3Vec.s" +void dDemo_camera_c::JSGGetViewUpVector(Vec* o_upVec) const { + view_class* view = getView(); + + if (view == NULL) { + f32 tmp_0 = FLOAT_LABEL(lit_4040); + o_upVec->x = tmp_0; + o_upVec->y = lit_4041; + o_upVec->z = tmp_0; + } else { + *o_upVec = view->mLookat.mUp; + } } -#pragma pop /* 80038CD0-80038CF8 033610 0028+00 1/0 0/0 0/0 .text JSGSetViewUpVector__14dDemo_camera_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetViewUpVector(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetViewUpVector__14dDemo_camera_cFRC3Vec.s" +void dDemo_camera_c::JSGSetViewUpVector(Vec const& i_upVec) { + mViewUpVector = i_upVec; + onEnable(0x20); } -#pragma pop /* 80038CF8-80038D5C 033638 0064+00 1/0 0/0 0/0 .text * JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGGetViewTargetPosition(Vec* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec.s" +void dDemo_camera_c::JSGGetViewTargetPosition(Vec* o_targetPos) const { + view_class* view = getView(); + + if (view == NULL) { + f32 tmp_0 = FLOAT_LABEL(lit_4040); + o_targetPos->x = tmp_0; + o_targetPos->y = tmp_0; + o_targetPos->z = lit_4041; + } else { + *o_targetPos = view->mLookat.mCenter; + } } -#pragma pop /* 80038D5C-80038D84 03369C 0028+00 1/0 0/0 0/0 .text * JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetViewTargetPosition(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec.s" +void dDemo_camera_c::JSGSetViewTargetPosition(Vec const& i_targetPos) { + mViewTargetVector = i_targetPos; + onEnable(0x40); } -#pragma pop /* ############################################################################################## */ /* 80451DD8-80451DE0 0003D8 0004+04 2/2 0/0 0/0 .sdata2 @4710 */ @@ -1077,6 +1111,18 @@ SECTION_SDATA2 static f32 lit_4710[1 + 1 /* padding */] = { /* 80038D84-80038DDC 0336C4 0058+00 1/0 0/0 0/0 .text JSGGetViewRoll__14dDemo_camera_cCFv */ +// matches with literals +#ifdef NONMATCHING +f32 dDemo_camera_c::JSGGetViewRoll() const { + view_class* view = getView(); + + if (view == NULL) { + return 0.0f; + } + + return view->mBank * 0.0054931640625f; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1085,131 +1131,87 @@ asm f32 dDemo_camera_c::JSGGetViewRoll() const { #include "asm/d/d_demo/JSGGetViewRoll__14dDemo_camera_cCFv.s" } #pragma pop +#endif /* 80038DDC-80038DF0 03371C 0014+00 1/0 0/0 0/0 .text JSGSetViewRoll__14dDemo_camera_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_camera_c::JSGSetViewRoll(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetViewRoll__14dDemo_camera_cFf.s" +void dDemo_camera_c::JSGSetViewRoll(f32 i_roll) { + mViewRoll = i_roll; + onEnable(0x80); } -#pragma pop /* 80038DF0-80038E20 033730 0030+00 1/0 0/0 0/0 .text JSGSetColor__15dDemo_ambient_cF8_GXColor */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_ambient_c::JSGSetColor(_GXColor param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetColor__15dDemo_ambient_cF8_GXColor.s" +void dDemo_ambient_c::JSGSetColor(GXColor i_color) { + mColor = i_color; + onEnable(0x1); } -#pragma pop /* 80038E20-80038E34 033760 0014+00 1/0 0/0 0/0 .text * JSGSetLightType__13dDemo_light_cFQ26JStage7TELight */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetLightType(JStage::TELight param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetLightType__13dDemo_light_cFQ26JStage7TELight.s" +void dDemo_light_c::JSGSetLightType(JStage::TELight i_lightType) { + mLightType = i_lightType; + onEnable(0x1); } -#pragma pop /* 80038E34-80038E5C 033774 0028+00 1/0 0/0 0/0 .text JSGSetPosition__13dDemo_light_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetPosition(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetPosition__13dDemo_light_cFRC3Vec.s" +void dDemo_light_c::JSGSetPosition(Vec const& i_pos) { + mPosition = i_pos; + onEnable(0x2); } -#pragma pop /* 80038E5C-80038E8C 03379C 0030+00 1/0 0/0 0/0 .text JSGSetColor__13dDemo_light_cF8_GXColor */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetColor(_GXColor param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetColor__13dDemo_light_cF8_GXColor.s" +void dDemo_light_c::JSGSetColor(GXColor i_color) { + mColor = i_color; + onEnable(0x4); } -#pragma pop /* 80038E8C-80038EA8 0337CC 001C+00 1/0 0/0 0/0 .text * JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetDistanceAttenuation(f32 param_0, f32 param_1, _GXDistAttnFn param_2) { - nofralloc -#include "asm/d/d_demo/JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn.s" +void dDemo_light_c::JSGSetDistanceAttenuation(f32 param_0, f32 param_1, GXDistAttnFn i_distAttenFn) { + field_0x24 = param_0; + field_0x28 = param_1; + mDistAttenFn = i_distAttenFn; + onEnable(0x8); } -#pragma pop /* 80038EA8-80038EC0 0337E8 0018+00 1/0 0/0 0/0 .text * JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetAngleAttenuation(f32 param_0, _GXSpotFn param_1) { - nofralloc -#include "asm/d/d_demo/JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn.s" +void dDemo_light_c::JSGSetAngleAttenuation(f32 param_0, GXSpotFn i_spotFn) { + field_0x2c = param_0; + mSpotFn = i_spotFn; + onEnable(0x10); } -#pragma pop /* 80038EC0-80038EE8 033800 0028+00 1/0 0/0 0/0 .text JSGSetDirection__13dDemo_light_cFRC3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_light_c::JSGSetDirection(Vec const& param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetDirection__13dDemo_light_cFRC3Vec.s" +void dDemo_light_c::JSGSetDirection(Vec const& i_direction) { + mDirection = i_direction; + onEnable(0x20); } -#pragma pop /* 80038EE8-80038EFC 033828 0014+00 1/0 0/0 0/0 .text * JSGSetFogFunction__11dDemo_fog_cF10_GXFogType */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_fog_c::JSGSetFogFunction(_GXFogType param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetFogFunction__11dDemo_fog_cF10_GXFogType.s" +void dDemo_fog_c::JSGSetFogFunction(GXFogType i_fogType) { + mFogType = i_fogType; + onEnable(0x1); } -#pragma pop /* 80038EFC-80038F10 03383C 0014+00 1/0 0/0 0/0 .text JSGSetStartZ__11dDemo_fog_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_fog_c::JSGSetStartZ(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s" +void dDemo_fog_c::JSGSetStartZ(f32 i_startZ) { + mStartZ = i_startZ; + onEnable(0x2); } -#pragma pop /* 80038F10-80038F24 033850 0014+00 1/0 0/0 0/0 .text JSGSetEndZ__11dDemo_fog_cFf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_fog_c::JSGSetEndZ(f32 param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s" +void dDemo_fog_c::JSGSetEndZ(f32 i_endZ) { + mEndZ = i_endZ; + onEnable(0x4); } -#pragma pop /* 80038F24-80038F54 033864 0030+00 1/0 0/0 0/0 .text JSGSetColor__11dDemo_fog_cF8_GXColor */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_fog_c::JSGSetColor(_GXColor param_0) { - nofralloc -#include "asm/d/d_demo/JSGSetColor__11dDemo_fog_cF8_GXColor.s" +void dDemo_fog_c::JSGSetColor(GXColor i_color) { + mColor = i_color; + onEnable(0x8); } -#pragma pop /* 80038F54-80038F70 033894 001C+00 1/1 0/0 0/0 .text __ct__14dDemo_object_cFv */ dDemo_object_c::dDemo_object_c() { @@ -1386,7 +1388,7 @@ extern "C" asm void __dt__15dDemo_ambient_cFv() { /* 80039528-80039678 033E68 0150+00 1/0 0/0 0/0 .text * JSGFindObject__14dDemo_system_cCFPPQ26JStage7TObjectPCcQ26JStage8TEObject */ bool dDemo_system_c::JSGFindObject(JStage::TObject** p_TObj, char const* actorName, - JStage::TEObject objType) const { + JStage::TEObject objType) const { if (mpObject == NULL) { return true; } @@ -1396,7 +1398,8 @@ bool dDemo_system_c::JSGFindObject(JStage::TObject** p_TObj, char const* actorNa if (actor == NULL) { if (objType == JStage::TOBJ_ACTOR && !strncmp(actorName, "d_act", 5)) { - actor = (fopAc_ac_c*)fopAcM_fastCreate(actorName, 0, NULL, -1, NULL, NULL, NULL, NULL); + actor = + (fopAc_ac_c*)fopAcM_fastCreate(actorName, 0, NULL, -1, NULL, NULL, NULL, NULL); if (actor == NULL) { return true; } @@ -1506,7 +1509,7 @@ int dDemo_c::start(u8 const* p_data, cXyz* p_translation, f32 rotationY) { if (m_data == NULL) { m_control->setSuspend(0); } - + m_control->forward(0); m_translation = p_translation; @@ -1617,6 +1620,14 @@ void dDemo_c::reset() { } /* 80039F1C-80039F9C 03485C 0080+00 1/0 0/0 0/0 .text emitter_create__16dDemo_particle_cFUl */ +// matches with literals +#ifdef NONMATCHING +void dDemo_particle_c::emitter_create(u32 param_0) { + cXyz tmp(0.0f, 0.0f, 0.0f); + int stayNo = dComIfGp_roomControl_getStayNo(); + dComIfGp_particle_set(param_0, &tmp, NULL, NULL, 0xFF, NULL, stayNo, NULL, NULL, NULL); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1625,6 +1636,7 @@ asm void dDemo_particle_c::emitter_create(u32 param_0) { #include "asm/d/d_demo/emitter_create__16dDemo_particle_cFUl.s" } #pragma pop +#endif /* 80039F9C-80039FFC 0348DC 0060+00 1/0 0/0 0/0 .text __dt__16dDemo_particle_cFv */ #pragma push @@ -1650,67 +1662,38 @@ extern "C" asm void __dt__14dDemo_camera_cFv() { /* 8003A05C-8003A088 03499C 002C+00 1/0 0/0 0/0 .text JSGFindNodeID__13dDemo_actor_cCFPCc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGFindNodeID(char const* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGFindNodeID__13dDemo_actor_cCFPCc.s" +s32 dDemo_actor_c::JSGFindNodeID(char const* param_0) const { + return mModel->getModelData()->getJointName()->getIndex(param_0); } -#pragma pop /* 8003A088-8003A0C8 0349C8 0040+00 1/0 0/0 0/0 .text * JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGGetNodeTransformation(u32 param_0, f32 (*param_1)[4]) const { - nofralloc -#include "asm/d/d_demo/JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f.s" +int dDemo_actor_c::JSGGetNodeTransformation(u32 param_0, Mtx param_1) const { + PSMTXCopy(mModel->i_getAnmMtx((u16)param_0), param_1); + return 1; } -#pragma pop /* 8003A0C8-8003A0D0 034A08 0008+00 1/0 0/0 0/0 .text JSGGetAnimationFrameMax__13dDemo_actor_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_actor_c::JSGGetAnimationFrameMax() const { - nofralloc -#include "asm/d/d_demo/JSGGetAnimationFrameMax__13dDemo_actor_cCFv.s" +f32 dDemo_actor_c::JSGGetAnimationFrameMax() const { + return mAnmFrameMax; } -#pragma pop /* 8003A0D0-8003A0D8 034A10 0008+00 1/0 0/0 0/0 .text * JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm f32 dDemo_actor_c::JSGGetTextureAnimationFrameMax() const { - nofralloc -#include "asm/d/d_demo/JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv.s" +f32 dDemo_actor_c::JSGGetTextureAnimationFrameMax() const { + return mTexAnmFrameMax; } -#pragma pop /* 8003A0D8-8003A0F4 034A18 001C+00 1/0 0/0 0/0 .text JSGGetTranslation__13dDemo_actor_cCFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGGetTranslation(Vec* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGGetTranslation__13dDemo_actor_cCFP3Vec.s" +void dDemo_actor_c::JSGGetTranslation(Vec* o_trans) const { + *o_trans = mTrans; } -#pragma pop /* 8003A0F4-8003A110 034A34 001C+00 1/0 0/0 0/0 .text JSGGetScaling__13dDemo_actor_cCFP3Vec */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dDemo_actor_c::JSGGetScaling(Vec* param_0) const { - nofralloc -#include "asm/d/d_demo/JSGGetScaling__13dDemo_actor_cCFP3Vec.s" +void dDemo_actor_c::JSGGetScaling(Vec* o_scale) const { + *o_scale = mScale; } -#pragma pop /* 8003A110-8003A188 034A50 0078+00 1/0 0/0 0/0 .text JSGGetRotation__13dDemo_actor_cCFP3Vec */ #pragma push diff --git a/src/d/d_lib.cpp b/src/d/d_lib.cpp index b9cefd23eeb..f2122d1bcf3 100644 --- a/src/d/d_lib.cpp +++ b/src/d/d_lib.cpp @@ -357,49 +357,41 @@ asm u32 dLib_getExpandSizeFromAramArchive(JKRAramArchive* param_0, char const* p /* ############################################################################################## */ /* 80450DD8-80450DDC 0002D8 0004+00 2/2 0/0 0/0 .sbss m_diffTime__11dLib_time_c */ -u8 dLib_time_c::m_diffTime[4]; - -/* 80450DDC-80450DE0 0002DC 0004+00 2/2 0/0 0/0 .sbss None */ -static u8 data_80450DDC[4]; +OSTime dLib_time_c::m_diffTime; /* 80450DE0-80450DE4 0002E0 0004+00 3/3 0/0 0/0 .sbss m_stopTime__11dLib_time_c */ -u8 dLib_time_c::m_stopTime[4]; - -/* 80450DE4-80450DE8 0002E4 0004+00 3/3 0/0 0/0 .sbss None */ -static u8 data_80450DE4[4]; +OSTime dLib_time_c::m_stopTime; /* 80450DE8-80450DF0 0002E8 0008+00 3/3 0/0 0/0 .sbss None */ -static u8 data_80450DE8[8]; +bool dLib_time_c::m_timeStopped; /* 80032804-80032880 02D144 007C+00 0/0 8/8 0/0 .text getTime__11dLib_time_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dLib_time_c::getTime() { - nofralloc -#include "asm/d/d_lib/getTime__11dLib_time_cFv.s" +OSTime dLib_time_c::getTime() { + if (!m_timeStopped) { + return OSGetTime() - m_diffTime; + } + + OSTime time = OSGetTime(); + m_diffTime += (time - m_stopTime); + m_stopTime = time; + return time - m_diffTime; } -#pragma pop /* 80032880-800328BC 02D1C0 003C+00 0/0 1/1 0/0 .text stopTime__11dLib_time_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dLib_time_c::stopTime() { - nofralloc -#include "asm/d/d_lib/stopTime__11dLib_time_cFv.s" +void dLib_time_c::stopTime() { + if (!m_timeStopped) { + m_stopTime = OSGetTime(); + m_timeStopped = true; + } } -#pragma pop /* 800328BC-80032918 02D1FC 005C+00 0/0 1/1 0/0 .text startTime__11dLib_time_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dLib_time_c::startTime() { - nofralloc -#include "asm/d/d_lib/startTime__11dLib_time_cFv.s" +void dLib_time_c::startTime() { + if (m_timeStopped) { + m_diffTime += OSGetTime() - m_stopTime; + m_timeStopped = false; + } } -#pragma pop /* ############################################################################################## */ /* 80450DF0-80450DF8 -00001 0008+00 0/0 4/4 0/0 .sbss None */ @@ -408,4 +400,4 @@ asm void dLib_time_c::startTime() { /* 80450DF2 0001+00 data_80450DF2 None */ /* 80450DF3 0005+00 data_80450DF3 None */ extern u8 struct_80450DF0[8]; -u8 struct_80450DF0[8]; +u8 struct_80450DF0[8] ALIGN_DECL(8); diff --git a/src/d/d_vibration.cpp b/src/d/d_vibration.cpp index cd28eb9a82a..d1eb20366ea 100644 --- a/src/d/d_vibration.cpp +++ b/src/d/d_vibration.cpp @@ -50,7 +50,7 @@ extern "C" void setDefault__12dVibration_cFv(); extern "C" void Init__12dVibration_cFv(); extern "C" void Pause__12dVibration_cFv(); extern "C" void Remove__12dVibration_cFv(); -extern "C" extern u8 data_80450F58[8]; +extern "C" extern u8 on_final_boss_stg[8]; // // External References: @@ -243,9 +243,4 @@ asm void dVibration_c::Remove() { nofralloc #include "asm/d/d_vibration/Remove__12dVibration_cFv.s" } -#pragma pop - -/* ############################################################################################## */ -/* 80450F58-80450F60 000458 0008+00 0/0 2/2 0/0 .sbss None */ -extern u8 data_80450F58[8]; -u8 data_80450F58[8]; +#pragma pop \ No newline at end of file diff --git a/src/d/event/d_event_data.cpp b/src/d/event/d_event_data.cpp index a0dac1edbd7..91faacfcba2 100644 --- a/src/d/event/d_event_data.cpp +++ b/src/d/event/d_event_data.cpp @@ -825,9 +825,9 @@ void dEvDtStaff_c::specialProcSound() { case 'RIDD': int* typeP = dComIfGp_evmng_getMyIntegerP(staffId, "Type"); if (typeP != NULL && *typeP == 1) { - mDoAud_seStart(0xC, NULL, 0, 0); + mDoAud_seStart(Z2SE_READ_RIDDLE_A, NULL, 0, 0); } else { - mDoAud_seStart(0xD, NULL, 0, 0); + mDoAud_seStart(Z2SE_READ_RIDDLE_B, NULL, 0, 0); } break; case 'BGMS': @@ -1087,7 +1087,7 @@ void dEvDtStaff_c::specialProcDirector() { if (soundP != NULL) { switch (*soundP) { case 0: - mDoAud_seStart(0, NULL, 0, 0); + mDoAud_seStart(Z2SE_SY_DUMMY, NULL, 0, 0); } } break; From c3a6d117295705a486bbd67cc0c84991b4d139c3 Mon Sep 17 00:00:00 2001 From: TakaRikka Date: Tue, 18 Oct 2022 05:17:08 -0700 Subject: [PATCH 4/4] remove asm --- asm/MSL_C/MSL_Common/Src/abort_exit/abort.s | 43 ---- asm/MSL_C/MSL_Common/Src/abort_exit/exit.s | 67 ------ .../check__Q27daSus_c6data_cFP10fopAc_ac_c.s | 39 --- .../check__Q27daSus_c6data_cFRC4cXyz.s | 39 --- .../daMP_c_Get_MovieRestFrame__6daMP_cFv.s | 12 - ...daMP_c_Set_PercentMovieVolume__6daMP_cFf.s | 12 - .../daMP_c_THPPlayerPause__6daMP_cFv.s | 12 - .../daMP_c_THPPlayerPlay__6daMP_cFv.s | 24 -- .../daNpcKakashi_chkSwdTutorialStage__Fv.s | 26 -- .../daNpcKakashi_clrSuccessCount__Fv.s | 15 -- .../daNpcKakashi_getSuccessCount__Fv.s | 15 -- .../daNpcKakashi_getSwdTutorialResult__Fv.s | 16 -- .../daNpcKakashi_getSwdTutorialStep__Fv.s | 15 -- .../daNpcKakashi_incSuccessCount__Fv.s | 24 -- .../daNpcKakashi_setSwdTutorialResult__Fb.s | 23 -- .../daNpcKakashi_setSwdTutorialStep__FUc.s | 15 -- .../d_com_static/daNpcMsg_setEvtNum__FUc.s | 16 -- .../execute__Q27daSus_c6data_cFv.s | 18 -- ...getArcName__12daSetBgObj_cFP10fopAc_ac_c.s | 18 -- .../getPlayerNo__11daTagMist_cFv.s | 3 - .../isSwitch__Q27daSus_c6data_cFv.s | 30 --- .../d_com_static/reset__Q27daSus_c6data_cFv.s | 5 - .../d_com_static/reset__Q27daSus_c6room_cFv.s | 23 -- ...Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s | 43 ---- .../ActionTarget__12dAttention_cFl.s | 26 -- .../CheckObjectTarget__12dAttention_cFl.s | 26 -- .../GetLockonList__12dAttention_cFl.s | 17 -- .../LockonTargetPId__12dAttention_cFl.s | 31 --- .../LockonTarget__12dAttention_cFl.s | 47 ---- .../LockonTruth__12dAttention_cFv.s | 24 -- asm/d/d_attention/Run__12dAttention_cFv.s | 189 --------------- asm/d/d_attention/__ct__15dAttDrawParam_cFv.s | 9 - asm/d/d_attention/__dt__11dAttParam_cFv.s | 20 -- asm/d/d_attention/__dt__12dAttention_cFv.s | 55 ----- asm/d/d_attention/__dt__15dAttDrawParam_cFv.s | 20 -- .../checkButton__12dAttention_cFv.s | 118 --------- ...stance__12dAttention_cFP4cXyzsP4cXyzffff.s | 12 - .../check_event_condition__FUlUs.s | 33 --- .../d_attention/check_flontofplayer__FUlss.s | 57 ----- .../chkAttMask__12dAttention_cFUlUl.s | 24 -- asm/d/d_attention/convPId__10dAttHint_cFUi.s | 13 - asm/d/d_attention/convPId__10dAttLook_cFUi.s | 13 - asm/d/d_attention/convPId__11dAttCatch_cFUi.s | 13 - .../freeAttention__12dAttention_cFv.s | 13 - asm/d/d_attention/func_80070018.s | 9 - .../getActionBtnB__12dAttention_cFv.s | 69 ------ .../getActionBtnXY__12dAttention_cFv.s | 71 ------ asm/d/d_attention/getActor__10dAttList_cFv.s | 14 -- asm/d/d_attention/getPId__10dAttHint_cFPv.s | 8 - asm/d/d_attention/init__10dAttHint_cFv.s | 7 - asm/d/d_attention/init__10dAttLook_cFv.s | 7 - asm/d/d_attention/init__11dAttCatch_cFv.s | 9 - .../judgementStatus4Hold__12dAttention_cFv.s | 188 --------------- ...judgementStatus4Switch__12dAttention_cFv.s | 225 ------------------ .../d_attention/lostCheck__12dAttention_cFv.s | 25 -- .../d_attention/makeList__12dAttention_cFv.s | 23 -- .../nextAttention__12dAttention_cFv.s | 73 ------ asm/d/d_attention/proc__10dAttHint_cFv.s | 8 - asm/d/d_attention/proc__10dAttLook_cFv.s | 8 - asm/d/d_attention/proc__11dAttCatch_cFv.s | 12 - .../request__10dAttHint_cFP10fopAc_ac_ci.s | 26 -- .../runDrawProc__12dAttention_cFv.s | 167 ------------- .../runSoundProc__12dAttention_cFv.s | 40 ---- .../select_attention__FP10fopAc_ac_cPv.s | 19 -- .../setActor__10dAttList_cFP10fopAc_ac_c.s | 10 - .../setAlphaAnm__10dAttDraw_cFUcUc.s | 8 - .../setOwnerAttentionPos__12dAttention_cFv.s | 27 --- .../stockAttention__12dAttention_cFv.s | 52 ---- .../triggerProc__12dAttention_cFv.s | 22 -- .../JSGFindNodeID__13dDemo_actor_cCFPCc.s | 12 - ...GetAnimationFrameMax__13dDemo_actor_cCFv.s | 3 - ...Transformation__13dDemo_actor_cCFUlPA4_f.s | 17 -- ...GetProjectionAspect__14dDemo_camera_cCFv.s | 16 -- ...JSGGetProjectionFar__14dDemo_camera_cCFv.s | 16 -- ...SGGetProjectionFovy__14dDemo_camera_cCFv.s | 16 -- ...SGGetProjectionNear__14dDemo_camera_cCFv.s | 16 -- .../JSGGetScaling__13dDemo_actor_cCFP3Vec.s | 8 - ...ureAnimationFrameMax__13dDemo_actor_cCFv.s | 3 - ...SGGetTranslation__13dDemo_actor_cCFP3Vec.s | 8 - ...GetViewPosition__14dDemo_camera_cCFP3Vec.s | 27 --- ...wTargetPosition__14dDemo_camera_cCFP3Vec.s | 28 --- ...GetViewUpVector__14dDemo_camera_cCFP3Vec.s | 28 --- ...Attenuation__13dDemo_light_cFf9_GXSpotFn.s | 7 - .../JSGSetAnimationFrame__13dDemo_actor_cFf.s | 6 - ...etAnimationTransition__13dDemo_actor_cFf.s | 6 - .../JSGSetAnimation__13dDemo_actor_cFUl.s | 9 - .../JSGSetColor__11dDemo_fog_cF8_GXColor.s | 13 - .../JSGSetColor__13dDemo_light_cF8_GXColor.s | 13 - ...JSGSetColor__15dDemo_ambient_cF8_GXColor.s | 13 - .../JSGSetDirection__13dDemo_light_cFRC3Vec.s | 11 - ...ation__13dDemo_light_cFff13_GXDistAttnFn.s | 8 - asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s | 6 - ...tFogFunction__11dDemo_fog_cF10_GXFogType.s | 6 - ...tType__13dDemo_light_cFQ26JStage7TELight.s | 6 - .../JSGSetPosition__13dDemo_light_cFRC3Vec.s | 11 - ...GSetProjectionAspect__14dDemo_camera_cFf.s | 6 - .../JSGSetProjectionFar__14dDemo_camera_cFf.s | 6 - ...JSGSetProjectionFovy__14dDemo_camera_cFf.s | 6 - ...JSGSetProjectionNear__14dDemo_camera_cFf.s | 6 - .../JSGSetRotation__13dDemo_actor_cFRC3Vec.s | 26 -- .../JSGSetScaling__13dDemo_actor_cFRC3Vec.s | 11 - .../d_demo/JSGSetShape__13dDemo_actor_cFUl.s | 6 - asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s | 6 - ...TextureAnimationFrame__13dDemo_actor_cFf.s | 6 - ...GSetTextureAnimation__13dDemo_actor_cFUl.s | 6 - ...SetViewPosition__14dDemo_camera_cFRC3Vec.s | 11 - .../JSGSetViewRoll__14dDemo_camera_cFf.s | 6 - ...wTargetPosition__14dDemo_camera_cFRC3Vec.s | 11 - ...SetViewUpVector__14dDemo_camera_cFRC3Vec.s | 11 - asm/d/d_demo/getActor__13dDemo_actor_cFv.s | 14 -- asm/d/d_demo/getView__Fv.s | 15 -- .../setActor__13dDemo_actor_cFP10fopAc_ac_c.s | 21 -- asm/d/d_lib/getTime__11dLib_time_cFv.s | 34 --- asm/d/d_lib/startTime__11dLib_time_cFv.s | 25 -- asm/d/d_lib/stopTime__11dLib_time_cFv.s | 17 -- asm/dolphin/base/PPCArch/PPCHalt.s | 7 - 116 files changed, 3010 deletions(-) delete mode 100644 asm/MSL_C/MSL_Common/Src/abort_exit/abort.s delete mode 100644 asm/MSL_C/MSL_Common/Src/abort_exit/exit.s delete mode 100644 asm/d/com/d_com_static/check__Q27daSus_c6data_cFP10fopAc_ac_c.s delete mode 100644 asm/d/com/d_com_static/check__Q27daSus_c6data_cFRC4cXyz.s delete mode 100644 asm/d/com/d_com_static/daMP_c_Get_MovieRestFrame__6daMP_cFv.s delete mode 100644 asm/d/com/d_com_static/daMP_c_Set_PercentMovieVolume__6daMP_cFf.s delete mode 100644 asm/d/com/d_com_static/daMP_c_THPPlayerPause__6daMP_cFv.s delete mode 100644 asm/d/com/d_com_static/daMP_c_THPPlayerPlay__6daMP_cFv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_chkSwdTutorialStage__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_clrSuccessCount__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_getSuccessCount__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialResult__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialStep__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_incSuccessCount__Fv.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialResult__Fb.s delete mode 100644 asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialStep__FUc.s delete mode 100644 asm/d/com/d_com_static/daNpcMsg_setEvtNum__FUc.s delete mode 100644 asm/d/com/d_com_static/execute__Q27daSus_c6data_cFv.s delete mode 100644 asm/d/com/d_com_static/getArcName__12daSetBgObj_cFP10fopAc_ac_c.s delete mode 100644 asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s delete mode 100644 asm/d/com/d_com_static/isSwitch__Q27daSus_c6data_cFv.s delete mode 100644 asm/d/com/d_com_static/reset__Q27daSus_c6data_cFv.s delete mode 100644 asm/d/com/d_com_static/reset__Q27daSus_c6room_cFv.s delete mode 100644 asm/d/com/d_com_static/set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s delete mode 100644 asm/d/d_attention/ActionTarget__12dAttention_cFl.s delete mode 100644 asm/d/d_attention/CheckObjectTarget__12dAttention_cFl.s delete mode 100644 asm/d/d_attention/GetLockonList__12dAttention_cFl.s delete mode 100644 asm/d/d_attention/LockonTargetPId__12dAttention_cFl.s delete mode 100644 asm/d/d_attention/LockonTarget__12dAttention_cFl.s delete mode 100644 asm/d/d_attention/LockonTruth__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/Run__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/__ct__15dAttDrawParam_cFv.s delete mode 100644 asm/d/d_attention/__dt__11dAttParam_cFv.s delete mode 100644 asm/d/d_attention/__dt__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/__dt__15dAttDrawParam_cFv.s delete mode 100644 asm/d/d_attention/checkButton__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/checkDistance__12dAttention_cFP4cXyzsP4cXyzffff.s delete mode 100644 asm/d/d_attention/check_event_condition__FUlUs.s delete mode 100644 asm/d/d_attention/check_flontofplayer__FUlss.s delete mode 100644 asm/d/d_attention/chkAttMask__12dAttention_cFUlUl.s delete mode 100644 asm/d/d_attention/convPId__10dAttHint_cFUi.s delete mode 100644 asm/d/d_attention/convPId__10dAttLook_cFUi.s delete mode 100644 asm/d/d_attention/convPId__11dAttCatch_cFUi.s delete mode 100644 asm/d/d_attention/freeAttention__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/func_80070018.s delete mode 100644 asm/d/d_attention/getActionBtnB__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/getActionBtnXY__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/getActor__10dAttList_cFv.s delete mode 100644 asm/d/d_attention/getPId__10dAttHint_cFPv.s delete mode 100644 asm/d/d_attention/init__10dAttHint_cFv.s delete mode 100644 asm/d/d_attention/init__10dAttLook_cFv.s delete mode 100644 asm/d/d_attention/init__11dAttCatch_cFv.s delete mode 100644 asm/d/d_attention/judgementStatus4Hold__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/judgementStatus4Switch__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/lostCheck__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/makeList__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/nextAttention__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/proc__10dAttHint_cFv.s delete mode 100644 asm/d/d_attention/proc__10dAttLook_cFv.s delete mode 100644 asm/d/d_attention/proc__11dAttCatch_cFv.s delete mode 100644 asm/d/d_attention/request__10dAttHint_cFP10fopAc_ac_ci.s delete mode 100644 asm/d/d_attention/runDrawProc__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/runSoundProc__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/select_attention__FP10fopAc_ac_cPv.s delete mode 100644 asm/d/d_attention/setActor__10dAttList_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_attention/setAlphaAnm__10dAttDraw_cFUcUc.s delete mode 100644 asm/d/d_attention/setOwnerAttentionPos__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/stockAttention__12dAttention_cFv.s delete mode 100644 asm/d/d_attention/triggerProc__12dAttention_cFv.s delete mode 100644 asm/d/d_demo/JSGFindNodeID__13dDemo_actor_cCFPCc.s delete mode 100644 asm/d/d_demo/JSGGetAnimationFrameMax__13dDemo_actor_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f.s delete mode 100644 asm/d/d_demo/JSGGetProjectionAspect__14dDemo_camera_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetProjectionFar__14dDemo_camera_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetProjectionFovy__14dDemo_camera_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetProjectionNear__14dDemo_camera_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetScaling__13dDemo_actor_cCFP3Vec.s delete mode 100644 asm/d/d_demo/JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv.s delete mode 100644 asm/d/d_demo/JSGGetTranslation__13dDemo_actor_cCFP3Vec.s delete mode 100644 asm/d/d_demo/JSGGetViewPosition__14dDemo_camera_cCFP3Vec.s delete mode 100644 asm/d/d_demo/JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec.s delete mode 100644 asm/d/d_demo/JSGGetViewUpVector__14dDemo_camera_cCFP3Vec.s delete mode 100644 asm/d/d_demo/JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn.s delete mode 100644 asm/d/d_demo/JSGSetAnimationFrame__13dDemo_actor_cFf.s delete mode 100644 asm/d/d_demo/JSGSetAnimationTransition__13dDemo_actor_cFf.s delete mode 100644 asm/d/d_demo/JSGSetAnimation__13dDemo_actor_cFUl.s delete mode 100644 asm/d/d_demo/JSGSetColor__11dDemo_fog_cF8_GXColor.s delete mode 100644 asm/d/d_demo/JSGSetColor__13dDemo_light_cF8_GXColor.s delete mode 100644 asm/d/d_demo/JSGSetColor__15dDemo_ambient_cF8_GXColor.s delete mode 100644 asm/d/d_demo/JSGSetDirection__13dDemo_light_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn.s delete mode 100644 asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s delete mode 100644 asm/d/d_demo/JSGSetFogFunction__11dDemo_fog_cF10_GXFogType.s delete mode 100644 asm/d/d_demo/JSGSetLightType__13dDemo_light_cFQ26JStage7TELight.s delete mode 100644 asm/d/d_demo/JSGSetPosition__13dDemo_light_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetProjectionAspect__14dDemo_camera_cFf.s delete mode 100644 asm/d/d_demo/JSGSetProjectionFar__14dDemo_camera_cFf.s delete mode 100644 asm/d/d_demo/JSGSetProjectionFovy__14dDemo_camera_cFf.s delete mode 100644 asm/d/d_demo/JSGSetProjectionNear__14dDemo_camera_cFf.s delete mode 100644 asm/d/d_demo/JSGSetRotation__13dDemo_actor_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetScaling__13dDemo_actor_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetShape__13dDemo_actor_cFUl.s delete mode 100644 asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s delete mode 100644 asm/d/d_demo/JSGSetTextureAnimationFrame__13dDemo_actor_cFf.s delete mode 100644 asm/d/d_demo/JSGSetTextureAnimation__13dDemo_actor_cFUl.s delete mode 100644 asm/d/d_demo/JSGSetViewPosition__14dDemo_camera_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetViewRoll__14dDemo_camera_cFf.s delete mode 100644 asm/d/d_demo/JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec.s delete mode 100644 asm/d/d_demo/JSGSetViewUpVector__14dDemo_camera_cFRC3Vec.s delete mode 100644 asm/d/d_demo/getActor__13dDemo_actor_cFv.s delete mode 100644 asm/d/d_demo/getView__Fv.s delete mode 100644 asm/d/d_demo/setActor__13dDemo_actor_cFP10fopAc_ac_c.s delete mode 100644 asm/d/d_lib/getTime__11dLib_time_cFv.s delete mode 100644 asm/d/d_lib/startTime__11dLib_time_cFv.s delete mode 100644 asm/d/d_lib/stopTime__11dLib_time_cFv.s delete mode 100644 asm/dolphin/base/PPCArch/PPCHalt.s diff --git a/asm/MSL_C/MSL_Common/Src/abort_exit/abort.s b/asm/MSL_C/MSL_Common/Src/abort_exit/abort.s deleted file mode 100644 index c388224c331..00000000000 --- a/asm/MSL_C/MSL_Common/Src/abort_exit/abort.s +++ /dev/null @@ -1,43 +0,0 @@ -lbl_80362ABC: -/* 80362ABC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80362AC0 7C 08 02 A6 */ mflr r0 -/* 80362AC4 38 60 00 01 */ li r3, 1 -/* 80362AC8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80362ACC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80362AD0 48 00 5D 4D */ bl raise -/* 80362AD4 38 00 00 01 */ li r0, 1 -/* 80362AD8 38 60 00 00 */ li r3, 0 -/* 80362ADC 90 0D 94 10 */ stw r0, __aborting(r13) -/* 80362AE0 48 00 29 89 */ bl __begin_critical_region -/* 80362AE4 3C 60 80 45 */ lis r3, __atexit_funcs@ha /* 0x8044D440@ha */ -/* 80362AE8 3B E3 D4 40 */ addi r31, r3, __atexit_funcs@l /* 0x8044D440@l */ -/* 80362AEC 48 00 00 20 */ b lbl_80362B0C -lbl_80362AF0: -/* 80362AF0 80 6D 94 14 */ lwz r3, __atexit_curr_func(r13) -/* 80362AF4 38 63 FF FF */ addi r3, r3, -1 -/* 80362AF8 54 60 10 3A */ slwi r0, r3, 2 -/* 80362AFC 90 6D 94 14 */ stw r3, __atexit_curr_func(r13) -/* 80362B00 7D 9F 00 2E */ lwzx r12, r31, r0 -/* 80362B04 7D 89 03 A6 */ mtctr r12 -/* 80362B08 4E 80 04 21 */ bctrl -lbl_80362B0C: -/* 80362B0C 80 0D 94 14 */ lwz r0, __atexit_curr_func(r13) -/* 80362B10 2C 00 00 00 */ cmpwi r0, 0 -/* 80362B14 41 81 FF DC */ bgt lbl_80362AF0 -/* 80362B18 38 60 00 00 */ li r3, 0 -/* 80362B1C 48 00 29 49 */ bl __end_critical_region -/* 80362B20 48 00 29 4D */ bl __kill_critical_regions -/* 80362B24 81 8D 94 1C */ lwz r12, __console_exit(r13) -/* 80362B28 28 0C 00 00 */ cmplwi r12, 0 -/* 80362B2C 41 82 00 14 */ beq lbl_80362B40 -/* 80362B30 7D 89 03 A6 */ mtctr r12 -/* 80362B34 4E 80 04 21 */ bctrl -/* 80362B38 38 00 00 00 */ li r0, 0 -/* 80362B3C 90 0D 94 1C */ stw r0, __console_exit(r13) -lbl_80362B40: -/* 80362B40 4B FE 00 AD */ bl _ExitProcess -/* 80362B44 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80362B48 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80362B4C 7C 08 03 A6 */ mtlr r0 -/* 80362B50 38 21 00 10 */ addi r1, r1, 0x10 -/* 80362B54 4E 80 00 20 */ blr diff --git a/asm/MSL_C/MSL_Common/Src/abort_exit/exit.s b/asm/MSL_C/MSL_Common/Src/abort_exit/exit.s deleted file mode 100644 index b7cb01a0bca..00000000000 --- a/asm/MSL_C/MSL_Common/Src/abort_exit/exit.s +++ /dev/null @@ -1,67 +0,0 @@ -lbl_803629CC: -/* 803629CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 803629D0 7C 08 02 A6 */ mflr r0 -/* 803629D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 803629D8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 803629DC 80 0D 94 10 */ lwz r0, __aborting(r13) -/* 803629E0 2C 00 00 00 */ cmpwi r0, 0 -/* 803629E4 40 82 00 5C */ bne lbl_80362A40 -/* 803629E8 38 60 00 00 */ li r3, 0 -/* 803629EC 48 00 2A 7D */ bl __begin_critical_region -/* 803629F0 38 60 00 00 */ li r3, 0 -/* 803629F4 48 00 2A 71 */ bl __end_critical_region -/* 803629F8 4B FF F1 E5 */ bl __destroy_global_chain -/* 803629FC 3C 60 80 37 */ lis r3, __destroy_global_chain_reference@ha /* 0x80373980@ha */ -/* 80362A00 38 03 39 80 */ addi r0, r3, __destroy_global_chain_reference@l /* 0x80373980@l */ -/* 80362A04 7C 1F 03 78 */ mr r31, r0 -/* 80362A08 48 00 00 10 */ b lbl_80362A18 -lbl_80362A0C: -/* 80362A0C 7D 89 03 A6 */ mtctr r12 -/* 80362A10 4E 80 04 21 */ bctrl -/* 80362A14 3B FF 00 04 */ addi r31, r31, 4 -lbl_80362A18: -/* 80362A18 81 9F 00 00 */ lwz r12, 0(r31) -/* 80362A1C 28 0C 00 00 */ cmplwi r12, 0 -/* 80362A20 40 82 FF EC */ bne lbl_80362A0C -/* 80362A24 81 8D 94 18 */ lwz r12, __stdio_exit(r13) -/* 80362A28 28 0C 00 00 */ cmplwi r12, 0 -/* 80362A2C 41 82 00 14 */ beq lbl_80362A40 -/* 80362A30 7D 89 03 A6 */ mtctr r12 -/* 80362A34 4E 80 04 21 */ bctrl -/* 80362A38 38 00 00 00 */ li r0, 0 -/* 80362A3C 90 0D 94 18 */ stw r0, __stdio_exit(r13) -lbl_80362A40: -/* 80362A40 38 60 00 00 */ li r3, 0 -/* 80362A44 48 00 2A 25 */ bl __begin_critical_region -/* 80362A48 3C 60 80 45 */ lis r3, __atexit_funcs@ha /* 0x8044D440@ha */ -/* 80362A4C 3B E3 D4 40 */ addi r31, r3, __atexit_funcs@l /* 0x8044D440@l */ -/* 80362A50 48 00 00 20 */ b lbl_80362A70 -lbl_80362A54: -/* 80362A54 80 6D 94 14 */ lwz r3, __atexit_curr_func(r13) -/* 80362A58 38 63 FF FF */ addi r3, r3, -1 -/* 80362A5C 54 60 10 3A */ slwi r0, r3, 2 -/* 80362A60 90 6D 94 14 */ stw r3, __atexit_curr_func(r13) -/* 80362A64 7D 9F 00 2E */ lwzx r12, r31, r0 -/* 80362A68 7D 89 03 A6 */ mtctr r12 -/* 80362A6C 4E 80 04 21 */ bctrl -lbl_80362A70: -/* 80362A70 80 0D 94 14 */ lwz r0, __atexit_curr_func(r13) -/* 80362A74 2C 00 00 00 */ cmpwi r0, 0 -/* 80362A78 41 81 FF DC */ bgt lbl_80362A54 -/* 80362A7C 38 60 00 00 */ li r3, 0 -/* 80362A80 48 00 29 E5 */ bl __end_critical_region -/* 80362A84 48 00 29 E9 */ bl __kill_critical_regions -/* 80362A88 81 8D 94 1C */ lwz r12, __console_exit(r13) -/* 80362A8C 28 0C 00 00 */ cmplwi r12, 0 -/* 80362A90 41 82 00 14 */ beq lbl_80362AA4 -/* 80362A94 7D 89 03 A6 */ mtctr r12 -/* 80362A98 4E 80 04 21 */ bctrl -/* 80362A9C 38 00 00 00 */ li r0, 0 -/* 80362AA0 90 0D 94 1C */ stw r0, __console_exit(r13) -lbl_80362AA4: -/* 80362AA4 4B FE 01 49 */ bl _ExitProcess -/* 80362AA8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80362AAC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80362AB0 7C 08 03 A6 */ mtlr r0 -/* 80362AB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80362AB8 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/check__Q27daSus_c6data_cFP10fopAc_ac_c.s b/asm/d/com/d_com_static/check__Q27daSus_c6data_cFP10fopAc_ac_c.s deleted file mode 100644 index fae210cb097..00000000000 --- a/asm/d/com/d_com_static/check__Q27daSus_c6data_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_800310C8: -/* 800310C8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 800310CC 7C 08 02 A6 */ mflr r0 -/* 800310D0 90 01 00 24 */ stw r0, 0x24(r1) -/* 800310D4 39 61 00 20 */ addi r11, r1, 0x20 -/* 800310D8 48 33 11 05 */ bl _savegpr_29 -/* 800310DC 7C 7D 1B 78 */ mr r29, r3 -/* 800310E0 7C 9E 23 78 */ mr r30, r4 -/* 800310E4 88 03 00 03 */ lbz r0, 3(r3) -/* 800310E8 28 00 00 00 */ cmplwi r0, 0 -/* 800310EC 41 82 00 0C */ beq lbl_800310F8 -/* 800310F0 38 60 00 80 */ li r3, 0x80 -/* 800310F4 48 00 00 44 */ b lbl_80031138 -lbl_800310F8: -/* 800310F8 3B E0 00 80 */ li r31, 0x80 -/* 800310FC 38 9E 04 A8 */ addi r4, r30, 0x4a8 -/* 80031100 4B FF FF 39 */ bl check__Q27daSus_c6data_cFRC4cXyz -/* 80031104 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80031108 41 82 00 0C */ beq lbl_80031114 -/* 8003110C 63 E0 00 01 */ ori r0, r31, 1 -/* 80031110 54 1F 06 3E */ clrlwi r31, r0, 0x18 -lbl_80031114: -/* 80031114 7F A3 EB 78 */ mr r3, r29 -/* 80031118 38 9E 04 D0 */ addi r4, r30, 0x4d0 -/* 8003111C 4B FF FF 1D */ bl check__Q27daSus_c6data_cFRC4cXyz -/* 80031120 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80031124 41 82 00 10 */ beq lbl_80031134 -/* 80031128 63 E0 00 02 */ ori r0, r31, 2 -/* 8003112C 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80031130 48 00 00 08 */ b lbl_80031138 -lbl_80031134: -/* 80031134 7F E3 FB 78 */ mr r3, r31 -lbl_80031138: -/* 80031138 39 61 00 20 */ addi r11, r1, 0x20 -/* 8003113C 48 33 10 ED */ bl _restgpr_29 -/* 80031140 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80031144 7C 08 03 A6 */ mtlr r0 -/* 80031148 38 21 00 20 */ addi r1, r1, 0x20 -/* 8003114C 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/check__Q27daSus_c6data_cFRC4cXyz.s b/asm/d/com/d_com_static/check__Q27daSus_c6data_cFRC4cXyz.s deleted file mode 100644 index cf3c57d306d..00000000000 --- a/asm/d/com/d_com_static/check__Q27daSus_c6data_cFRC4cXyz.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_80031038: -/* 80031038 88 03 00 03 */ lbz r0, 3(r3) -/* 8003103C 28 00 00 00 */ cmplwi r0, 0 -/* 80031040 41 82 00 0C */ beq lbl_8003104C -/* 80031044 38 60 00 00 */ li r3, 0 -/* 80031048 4E 80 00 20 */ blr -lbl_8003104C: -/* 8003104C C0 03 00 08 */ lfs f0, 8(r3) -/* 80031050 C0 24 00 00 */ lfs f1, 0(r4) -/* 80031054 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 80031058 4C 40 13 82 */ cror 2, 0, 2 -/* 8003105C 40 82 00 64 */ bne lbl_800310C0 -/* 80031060 C0 03 00 14 */ lfs f0, 0x14(r3) -/* 80031064 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80031068 4C 40 13 82 */ cror 2, 0, 2 -/* 8003106C 40 82 00 54 */ bne lbl_800310C0 -/* 80031070 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 80031074 C0 24 00 04 */ lfs f1, 4(r4) -/* 80031078 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8003107C 4C 40 13 82 */ cror 2, 0, 2 -/* 80031080 40 82 00 40 */ bne lbl_800310C0 -/* 80031084 C0 03 00 18 */ lfs f0, 0x18(r3) -/* 80031088 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8003108C 4C 40 13 82 */ cror 2, 0, 2 -/* 80031090 40 82 00 30 */ bne lbl_800310C0 -/* 80031094 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 80031098 C0 24 00 08 */ lfs f1, 8(r4) -/* 8003109C FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 800310A0 4C 40 13 82 */ cror 2, 0, 2 -/* 800310A4 40 82 00 1C */ bne lbl_800310C0 -/* 800310A8 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 800310AC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 800310B0 4C 40 13 82 */ cror 2, 0, 2 -/* 800310B4 40 82 00 0C */ bne lbl_800310C0 -/* 800310B8 38 60 00 01 */ li r3, 1 -/* 800310BC 4E 80 00 20 */ blr -lbl_800310C0: -/* 800310C0 38 60 00 00 */ li r3, 0 -/* 800310C4 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daMP_c_Get_MovieRestFrame__6daMP_cFv.s b/asm/d/com/d_com_static/daMP_c_Get_MovieRestFrame__6daMP_cFv.s deleted file mode 100644 index 645912b8bc4..00000000000 --- a/asm/d/com/d_com_static/daMP_c_Get_MovieRestFrame__6daMP_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80031A78: -/* 80031A78 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031A7C 7C 08 02 A6 */ mflr r0 -/* 80031A80 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031A84 80 6D 88 38 */ lwz r3, m_myObj__6daMP_c(r13) -/* 80031A88 81 83 05 68 */ lwz r12, 0x568(r3) -/* 80031A8C 7D 89 03 A6 */ mtctr r12 -/* 80031A90 4E 80 04 21 */ bctrl -/* 80031A94 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031A98 7C 08 03 A6 */ mtlr r0 -/* 80031A9C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031AA0 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daMP_c_Set_PercentMovieVolume__6daMP_cFf.s b/asm/d/com/d_com_static/daMP_c_Set_PercentMovieVolume__6daMP_cFf.s deleted file mode 100644 index f372d6c8874..00000000000 --- a/asm/d/com/d_com_static/daMP_c_Set_PercentMovieVolume__6daMP_cFf.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80031AA4: -/* 80031AA4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031AA8 7C 08 02 A6 */ mflr r0 -/* 80031AAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031AB0 80 6D 88 38 */ lwz r3, m_myObj__6daMP_c(r13) -/* 80031AB4 81 83 05 6C */ lwz r12, 0x56c(r3) -/* 80031AB8 7D 89 03 A6 */ mtctr r12 -/* 80031ABC 4E 80 04 21 */ bctrl -/* 80031AC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031AC4 7C 08 03 A6 */ mtlr r0 -/* 80031AC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031ACC 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daMP_c_THPPlayerPause__6daMP_cFv.s b/asm/d/com/d_com_static/daMP_c_THPPlayerPause__6daMP_cFv.s deleted file mode 100644 index 0a548689c63..00000000000 --- a/asm/d/com/d_com_static/daMP_c_THPPlayerPause__6daMP_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80031B24: -/* 80031B24 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031B28 7C 08 02 A6 */ mflr r0 -/* 80031B2C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031B30 80 6D 88 38 */ lwz r3, m_myObj__6daMP_c(r13) -/* 80031B34 81 83 05 7C */ lwz r12, 0x57c(r3) -/* 80031B38 7D 89 03 A6 */ mtctr r12 -/* 80031B3C 4E 80 04 21 */ bctrl -/* 80031B40 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031B44 7C 08 03 A6 */ mtlr r0 -/* 80031B48 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031B4C 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daMP_c_THPPlayerPlay__6daMP_cFv.s b/asm/d/com/d_com_static/daMP_c_THPPlayerPlay__6daMP_cFv.s deleted file mode 100644 index 01fcecf6d41..00000000000 --- a/asm/d/com/d_com_static/daMP_c_THPPlayerPlay__6daMP_cFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80031AD0: -/* 80031AD0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031AD4 7C 08 02 A6 */ mflr r0 -/* 80031AD8 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031ADC 80 6D 88 38 */ lwz r3, m_myObj__6daMP_c(r13) -/* 80031AE0 28 03 00 00 */ cmplwi r3, 0 -/* 80031AE4 40 82 00 18 */ bne lbl_80031AFC -/* 80031AE8 80 0D 88 BC */ lwz r0, m_status__7dDemo_c(r13) -/* 80031AEC 60 00 00 01 */ ori r0, r0, 1 -/* 80031AF0 90 0D 88 BC */ stw r0, m_status__7dDemo_c(r13) -/* 80031AF4 38 60 00 00 */ li r3, 0 -/* 80031AF8 48 00 00 1C */ b lbl_80031B14 -lbl_80031AFC: -/* 80031AFC 80 0D 88 BC */ lwz r0, m_status__7dDemo_c(r13) -/* 80031B00 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e -/* 80031B04 90 0D 88 BC */ stw r0, m_status__7dDemo_c(r13) -/* 80031B08 81 83 05 74 */ lwz r12, 0x574(r3) -/* 80031B0C 7D 89 03 A6 */ mtctr r12 -/* 80031B10 4E 80 04 21 */ bctrl -lbl_80031B14: -/* 80031B14 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031B18 7C 08 03 A6 */ mtlr r0 -/* 80031B1C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031B20 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_chkSwdTutorialStage__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_chkSwdTutorialStage__Fv.s deleted file mode 100644 index e9720253458..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_chkSwdTutorialStage__Fv.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80031648: -/* 80031648 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003164C 7C 08 02 A6 */ mflr r0 -/* 80031650 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031654 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80031658 3B E0 00 00 */ li r31, 0 -/* 8003165C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80031660 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80031664 38 63 4E 00 */ addi r3, r3, 0x4e00 -/* 80031668 3C 80 80 38 */ lis r4, d_com_d_com_static__stringBase0@ha /* 0x803790B0@ha */ -/* 8003166C 38 84 90 B0 */ addi r4, r4, d_com_d_com_static__stringBase0@l /* 0x803790B0@l */ -/* 80031670 48 33 73 25 */ bl strcmp -/* 80031674 2C 03 00 00 */ cmpwi r3, 0 -/* 80031678 40 82 00 18 */ bne lbl_80031690 -/* 8003167C 38 60 00 00 */ li r3, 0 -/* 80031680 4B FF B2 FD */ bl getLayerNo__14dComIfG_play_cFi -/* 80031684 2C 03 00 08 */ cmpwi r3, 8 -/* 80031688 40 82 00 08 */ bne lbl_80031690 -/* 8003168C 3B E0 00 01 */ li r31, 1 -lbl_80031690: -/* 80031690 57 E3 06 3E */ clrlwi r3, r31, 0x18 -/* 80031694 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80031698 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003169C 7C 08 03 A6 */ mtlr r0 -/* 800316A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800316A4 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_clrSuccessCount__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_clrSuccessCount__Fv.s deleted file mode 100644 index f535c3c8992..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_clrSuccessCount__Fv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_80031838: -/* 80031838 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003183C 7C 08 02 A6 */ mflr r0 -/* 80031840 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031844 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80031848 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8003184C 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 80031850 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FEFF@ha */ -/* 80031854 38 84 FE FF */ addi r4, r4, 0xFEFF /* 0x0000FEFF@l */ -/* 80031858 38 A0 00 00 */ li r5, 0 -/* 8003185C 48 00 31 85 */ bl setEventReg__11dSv_event_cFUsUc -/* 80031860 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031864 7C 08 03 A6 */ mtlr r0 -/* 80031868 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003186C 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_getSuccessCount__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_getSuccessCount__Fv.s deleted file mode 100644 index 143d8de802e..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_getSuccessCount__Fv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_800317A4: -/* 800317A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800317A8 7C 08 02 A6 */ mflr r0 -/* 800317AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800317B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800317B4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800317B8 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 800317BC 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FEFF@ha */ -/* 800317C0 38 84 FE FF */ addi r4, r4, 0xFEFF /* 0x0000FEFF@l */ -/* 800317C4 48 00 32 41 */ bl getEventReg__11dSv_event_cCFUs -/* 800317C8 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 800317CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800317D0 7C 08 03 A6 */ mtlr r0 -/* 800317D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800317D8 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialResult__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialResult__Fv.s deleted file mode 100644 index 00bd1d97720..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialResult__Fv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80031718: -/* 80031718 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003171C 7C 08 02 A6 */ mflr r0 -/* 80031720 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031724 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80031728 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8003172C 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 80031730 38 80 00 40 */ li r4, 0x40 -/* 80031734 48 00 32 89 */ bl isEventBit__11dSv_event_cCFUs -/* 80031738 30 03 FF FF */ addic r0, r3, -1 -/* 8003173C 7C 00 19 10 */ subfe r0, r0, r3 -/* 80031740 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 80031744 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031748 7C 08 03 A6 */ mtlr r0 -/* 8003174C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031750 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialStep__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialStep__Fv.s deleted file mode 100644 index 4c5c98f161f..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_getSwdTutorialStep__Fv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_800316E0: -/* 800316E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800316E4 7C 08 02 A6 */ mflr r0 -/* 800316E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800316EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800316F0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800316F4 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 800316F8 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FF0F@ha */ -/* 800316FC 38 84 FF 0F */ addi r4, r4, 0xFF0F /* 0x0000FF0F@l */ -/* 80031700 48 00 33 05 */ bl getEventReg__11dSv_event_cCFUs -/* 80031704 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 80031708 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003170C 7C 08 03 A6 */ mtlr r0 -/* 80031710 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031714 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_incSuccessCount__Fv.s b/asm/d/com/d_com_static/daNpcKakashi_incSuccessCount__Fv.s deleted file mode 100644 index 890ab0effd2..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_incSuccessCount__Fv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_800317DC: -/* 800317DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800317E0 7C 08 02 A6 */ mflr r0 -/* 800317E4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800317E8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800317EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800317F0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800317F4 3B E3 0D D8 */ addi r31, r3, 0xdd8 -/* 800317F8 7F E3 FB 78 */ mr r3, r31 -/* 800317FC 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FEFF@ha */ -/* 80031800 38 84 FE FF */ addi r4, r4, 0xFEFF /* 0x0000FEFF@l */ -/* 80031804 48 00 32 01 */ bl getEventReg__11dSv_event_cCFUs -/* 80031808 54 65 06 3E */ clrlwi r5, r3, 0x18 -/* 8003180C 7F E3 FB 78 */ mr r3, r31 -/* 80031810 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FEFF@ha */ -/* 80031814 38 84 FE FF */ addi r4, r4, 0xFEFF /* 0x0000FEFF@l */ -/* 80031818 38 05 00 01 */ addi r0, r5, 1 -/* 8003181C 54 05 06 3E */ clrlwi r5, r0, 0x18 -/* 80031820 48 00 31 C1 */ bl setEventReg__11dSv_event_cFUsUc -/* 80031824 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80031828 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003182C 7C 08 03 A6 */ mtlr r0 -/* 80031830 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031834 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialResult__Fb.s b/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialResult__Fb.s deleted file mode 100644 index ecf8c7f4154..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialResult__Fb.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_80031754: -/* 80031754 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031758 7C 08 02 A6 */ mflr r0 -/* 8003175C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031760 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80031764 41 82 00 1C */ beq lbl_80031780 -/* 80031768 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8003176C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80031770 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 80031774 38 80 00 40 */ li r4, 0x40 -/* 80031778 48 00 32 15 */ bl onEventBit__11dSv_event_cFUs -/* 8003177C 48 00 00 18 */ b lbl_80031794 -lbl_80031780: -/* 80031780 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80031784 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80031788 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 8003178C 38 80 00 40 */ li r4, 0x40 -/* 80031790 48 00 32 15 */ bl offEventBit__11dSv_event_cFUs -lbl_80031794: -/* 80031794 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031798 7C 08 03 A6 */ mtlr r0 -/* 8003179C 38 21 00 10 */ addi r1, r1, 0x10 -/* 800317A0 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialStep__FUc.s b/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialStep__FUc.s deleted file mode 100644 index 2819944c336..00000000000 --- a/asm/d/com/d_com_static/daNpcKakashi_setSwdTutorialStep__FUc.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_800316A8: -/* 800316A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800316AC 7C 08 02 A6 */ mflr r0 -/* 800316B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 800316B4 7C 65 1B 78 */ mr r5, r3 -/* 800316B8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800316BC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800316C0 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 800316C4 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FF0F@ha */ -/* 800316C8 38 84 FF 0F */ addi r4, r4, 0xFF0F /* 0x0000FF0F@l */ -/* 800316CC 48 00 33 15 */ bl setEventReg__11dSv_event_cFUsUc -/* 800316D0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800316D4 7C 08 03 A6 */ mtlr r0 -/* 800316D8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800316DC 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/daNpcMsg_setEvtNum__FUc.s b/asm/d/com/d_com_static/daNpcMsg_setEvtNum__FUc.s deleted file mode 100644 index 19b6cfdfe56..00000000000 --- a/asm/d/com/d_com_static/daNpcMsg_setEvtNum__FUc.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_8003160C: -/* 8003160C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031610 7C 08 02 A6 */ mflr r0 -/* 80031614 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031618 7C 65 1B 78 */ mr r5, r3 -/* 8003161C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80031620 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80031624 38 63 0D D8 */ addi r3, r3, 0xdd8 -/* 80031628 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000FDFF@ha */ -/* 8003162C 38 84 FD FF */ addi r4, r4, 0xFDFF /* 0x0000FDFF@l */ -/* 80031630 48 00 33 B1 */ bl setEventReg__11dSv_event_cFUsUc -/* 80031634 38 60 00 01 */ li r3, 1 -/* 80031638 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003163C 7C 08 03 A6 */ mtlr r0 -/* 80031640 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031644 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/execute__Q27daSus_c6data_cFv.s b/asm/d/com/d_com_static/execute__Q27daSus_c6data_cFv.s deleted file mode 100644 index c669b16cab7..00000000000 --- a/asm/d/com/d_com_static/execute__Q27daSus_c6data_cFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80031150: -/* 80031150 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031154 7C 08 02 A6 */ mflr r0 -/* 80031158 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003115C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80031160 7C 7F 1B 78 */ mr r31, r3 -/* 80031164 4B FF FE 69 */ bl isSwitch__Q27daSus_c6data_cFv -/* 80031168 54 64 06 3E */ clrlwi r4, r3, 0x18 -/* 8003116C 88 1F 00 03 */ lbz r0, 3(r31) -/* 80031170 7C 04 00 40 */ cmplw r4, r0 -/* 80031174 41 82 00 08 */ beq lbl_8003117C -/* 80031178 98 7F 00 03 */ stb r3, 3(r31) -lbl_8003117C: -/* 8003117C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80031180 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80031184 7C 08 03 A6 */ mtlr r0 -/* 80031188 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003118C 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/getArcName__12daSetBgObj_cFP10fopAc_ac_c.s b/asm/d/com/d_com_static/getArcName__12daSetBgObj_cFP10fopAc_ac_c.s deleted file mode 100644 index 15c26b25b22..00000000000 --- a/asm/d/com/d_com_static/getArcName__12daSetBgObj_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80031870: -/* 80031870 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031874 7C 08 02 A6 */ mflr r0 -/* 80031878 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003187C 7C 65 1B 78 */ mr r5, r3 -/* 80031880 38 6D 88 1C */ la r3, arcName(r13) /* 80450D9C-_SDA_BASE_ */ -/* 80031884 3C 80 80 38 */ lis r4, d_com_d_com_static__stringBase0@ha /* 0x803790B0@ha */ -/* 80031888 38 84 90 B0 */ addi r4, r4, d_com_d_com_static__stringBase0@l /* 0x803790B0@l */ -/* 8003188C 38 84 00 08 */ addi r4, r4, 8 -/* 80031890 80 05 00 B0 */ lwz r0, 0xb0(r5) -/* 80031894 54 05 04 3E */ clrlwi r5, r0, 0x10 -/* 80031898 4C C6 31 82 */ crclr 6 -/* 8003189C 48 33 4C 41 */ bl sprintf -/* 800318A0 38 6D 88 1C */ la r3, arcName(r13) /* 80450D9C-_SDA_BASE_ */ -/* 800318A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800318A8 7C 08 03 A6 */ mtlr r0 -/* 800318AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800318B0 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s b/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s deleted file mode 100644 index a7b18377b07..00000000000 --- a/asm/d/com/d_com_static/getPlayerNo__11daTagMist_cFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_80031CF0: -/* 80031CF0 88 6D 88 40 */ lbz r3, mPlayerNo__11daTagMist_c+0x0(r13) -/* 80031CF4 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/isSwitch__Q27daSus_c6data_cFv.s b/asm/d/com/d_com_static/isSwitch__Q27daSus_c6data_cFv.s deleted file mode 100644 index 5a5257b8e4c..00000000000 --- a/asm/d/com/d_com_static/isSwitch__Q27daSus_c6data_cFv.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_80030FCC: -/* 80030FCC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80030FD0 7C 08 02 A6 */ mflr r0 -/* 80030FD4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80030FD8 7C 65 1B 78 */ mr r5, r3 -/* 80030FDC 88 03 00 01 */ lbz r0, 1(r3) -/* 80030FE0 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80030FE4 41 82 00 24 */ beq lbl_80031008 -/* 80030FE8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80030FEC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80030FF0 88 85 00 02 */ lbz r4, 2(r5) -/* 80030FF4 88 A5 00 00 */ lbz r5, 0(r5) -/* 80030FF8 7C A5 07 74 */ extsb r5, r5 -/* 80030FFC 48 00 43 65 */ bl isSwitch__10dSv_info_cCFii -/* 80031000 54 63 06 3E */ clrlwi r3, r3, 0x18 -/* 80031004 48 00 00 24 */ b lbl_80031028 -lbl_80031008: -/* 80031008 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8003100C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80031010 88 85 00 02 */ lbz r4, 2(r5) -/* 80031014 88 A5 00 00 */ lbz r5, 0(r5) -/* 80031018 7C A5 07 74 */ extsb r5, r5 -/* 8003101C 48 00 43 45 */ bl isSwitch__10dSv_info_cCFii -/* 80031020 7C 60 00 34 */ cntlzw r0, r3 -/* 80031024 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f -lbl_80031028: -/* 80031028 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003102C 7C 08 03 A6 */ mtlr r0 -/* 80031030 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031034 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/reset__Q27daSus_c6data_cFv.s b/asm/d/com/d_com_static/reset__Q27daSus_c6data_cFv.s deleted file mode 100644 index 83d4621e908..00000000000 --- a/asm/d/com/d_com_static/reset__Q27daSus_c6data_cFv.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80030FBC: -/* 80030FBC 38 00 FF FF */ li r0, -1 -/* 80030FC0 98 03 00 00 */ stb r0, 0(r3) -/* 80030FC4 80 63 00 20 */ lwz r3, 0x20(r3) -/* 80030FC8 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/reset__Q27daSus_c6room_cFv.s b/asm/d/com/d_com_static/reset__Q27daSus_c6room_cFv.s deleted file mode 100644 index 495b213040e..00000000000 --- a/asm/d/com/d_com_static/reset__Q27daSus_c6room_cFv.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_800311FC: -/* 800311FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80031200 7C 08 02 A6 */ mflr r0 -/* 80031204 90 01 00 14 */ stw r0, 0x14(r1) -/* 80031208 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8003120C 7C 7F 1B 78 */ mr r31, r3 -/* 80031210 48 00 00 0C */ b lbl_8003121C -lbl_80031214: -/* 80031214 4B FF FD A9 */ bl reset__Q27daSus_c6data_cFv -/* 80031218 90 7F 00 00 */ stw r3, 0(r31) -lbl_8003121C: -/* 8003121C 80 7F 00 00 */ lwz r3, 0(r31) -/* 80031220 28 03 00 00 */ cmplwi r3, 0 -/* 80031224 41 82 00 10 */ beq lbl_80031234 -/* 80031228 88 03 00 04 */ lbz r0, 4(r3) -/* 8003122C 28 00 00 00 */ cmplwi r0, 0 -/* 80031230 41 82 FF E4 */ beq lbl_80031214 -lbl_80031234: -/* 80031234 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80031238 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003123C 7C 08 03 A6 */ mtlr r0 -/* 80031240 38 21 00 10 */ addi r1, r1, 0x10 -/* 80031244 4E 80 00 20 */ blr diff --git a/asm/d/com/d_com_static/set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s b/asm/d/com/d_com_static/set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s deleted file mode 100644 index a40f7536414..00000000000 --- a/asm/d/com/d_com_static/set__Q27daSus_c6data_cFScRC4cXyzRC4cXyzUcUcUc.s +++ /dev/null @@ -1,43 +0,0 @@ -lbl_80030F14: -/* 80030F14 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80030F18 7C 08 02 A6 */ mflr r0 -/* 80030F1C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80030F20 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80030F24 93 C1 00 08 */ stw r30, 8(r1) -/* 80030F28 7C 7E 1B 78 */ mr r30, r3 -/* 80030F2C 7D 3F 4B 78 */ mr r31, r9 -/* 80030F30 98 83 00 00 */ stb r4, 0(r3) -/* 80030F34 C0 85 00 08 */ lfs f4, 8(r5) -/* 80030F38 C0 66 00 08 */ lfs f3, 8(r6) -/* 80030F3C EC C4 18 28 */ fsubs f6, f4, f3 -/* 80030F40 C0 A5 00 04 */ lfs f5, 4(r5) -/* 80030F44 C0 45 00 00 */ lfs f2, 0(r5) -/* 80030F48 C0 26 00 00 */ lfs f1, 0(r6) -/* 80030F4C EC 02 08 28 */ fsubs f0, f2, f1 -/* 80030F50 D0 03 00 08 */ stfs f0, 8(r3) -/* 80030F54 D0 A3 00 0C */ stfs f5, 0xc(r3) -/* 80030F58 D0 C3 00 10 */ stfs f6, 0x10(r3) -/* 80030F5C EC 84 18 2A */ fadds f4, f4, f3 -/* 80030F60 C0 06 00 04 */ lfs f0, 4(r6) -/* 80030F64 EC 65 00 2A */ fadds f3, f5, f0 -/* 80030F68 EC 02 08 2A */ fadds f0, f2, f1 -/* 80030F6C D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80030F70 D0 63 00 18 */ stfs f3, 0x18(r3) -/* 80030F74 D0 83 00 1C */ stfs f4, 0x1c(r3) -/* 80030F78 98 E3 00 02 */ stb r7, 2(r3) -/* 80030F7C 55 04 06 3E */ clrlwi r4, r8, 0x18 -/* 80030F80 30 04 FF FF */ addic r0, r4, -1 -/* 80030F84 7C 00 21 10 */ subfe r0, r0, r4 -/* 80030F88 98 03 00 01 */ stb r0, 1(r3) -/* 80030F8C 48 00 00 41 */ bl isSwitch__Q27daSus_c6data_cFv -/* 80030F90 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 80030F94 7C 00 00 34 */ cntlzw r0, r0 -/* 80030F98 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f -/* 80030F9C 98 1E 00 03 */ stb r0, 3(r30) -/* 80030FA0 9B FE 00 04 */ stb r31, 4(r30) -/* 80030FA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80030FA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 80030FAC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80030FB0 7C 08 03 A6 */ mtlr r0 -/* 80030FB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80030FB8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/ActionTarget__12dAttention_cFl.s b/asm/d/d_attention/ActionTarget__12dAttention_cFl.s deleted file mode 100644 index a4e7fc91fec..00000000000 --- a/asm/d/d_attention/ActionTarget__12dAttention_cFl.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_80073734: -/* 80073734 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073738 7C 08 02 A6 */ mflr r0 -/* 8007373C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073740 7C 65 1B 78 */ mr r5, r3 -/* 80073744 80 63 04 30 */ lwz r3, 0x430(r3) -/* 80073748 7C 04 18 00 */ cmpw r4, r3 -/* 8007374C 41 80 00 0C */ blt lbl_80073758 -/* 80073750 38 60 00 00 */ li r3, 0 -/* 80073754 48 00 00 28 */ b lbl_8007377C -lbl_80073758: -/* 80073758 80 05 04 34 */ lwz r0, 0x434(r5) -/* 8007375C 7C 00 22 14 */ add r0, r0, r4 -/* 80073760 7C 00 18 00 */ cmpw r0, r3 -/* 80073764 41 80 00 08 */ blt lbl_8007376C -/* 80073768 7C 03 00 50 */ subf r0, r3, r0 -lbl_8007376C: -/* 8007376C 1C 60 00 14 */ mulli r3, r0, 0x14 -/* 80073770 38 63 03 E0 */ addi r3, r3, 0x3e0 -/* 80073774 7C 65 1A 14 */ add r3, r5, r3 -/* 80073778 48 00 00 ED */ bl getActor__10dAttList_cFv -lbl_8007377C: -/* 8007377C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80073780 7C 08 03 A6 */ mtlr r0 -/* 80073784 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073788 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/CheckObjectTarget__12dAttention_cFl.s b/asm/d/d_attention/CheckObjectTarget__12dAttention_cFl.s deleted file mode 100644 index 55fda39bc70..00000000000 --- a/asm/d/d_attention/CheckObjectTarget__12dAttention_cFl.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_8007378C: -/* 8007378C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073790 7C 08 02 A6 */ mflr r0 -/* 80073794 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073798 7C 65 1B 78 */ mr r5, r3 -/* 8007379C 80 63 04 88 */ lwz r3, 0x488(r3) -/* 800737A0 7C 04 18 00 */ cmpw r4, r3 -/* 800737A4 41 80 00 0C */ blt lbl_800737B0 -/* 800737A8 38 60 00 00 */ li r3, 0 -/* 800737AC 48 00 00 28 */ b lbl_800737D4 -lbl_800737B0: -/* 800737B0 80 05 04 8C */ lwz r0, 0x48c(r5) -/* 800737B4 7C 00 22 14 */ add r0, r0, r4 -/* 800737B8 7C 00 18 00 */ cmpw r0, r3 -/* 800737BC 41 80 00 08 */ blt lbl_800737C4 -/* 800737C0 7C 03 00 50 */ subf r0, r3, r0 -lbl_800737C4: -/* 800737C4 1C 60 00 14 */ mulli r3, r0, 0x14 -/* 800737C8 38 63 04 38 */ addi r3, r3, 0x438 -/* 800737CC 7C 65 1A 14 */ add r3, r5, r3 -/* 800737D0 48 00 00 95 */ bl getActor__10dAttList_cFv -lbl_800737D4: -/* 800737D4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800737D8 7C 08 03 A6 */ mtlr r0 -/* 800737DC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800737E0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/GetLockonList__12dAttention_cFl.s b/asm/d/d_attention/GetLockonList__12dAttention_cFl.s deleted file mode 100644 index ebff00a25eb..00000000000 --- a/asm/d/d_attention/GetLockonList__12dAttention_cFl.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_80070844: -/* 80070844 7C 66 1B 78 */ mr r6, r3 -/* 80070848 80 A3 03 D8 */ lwz r5, 0x3d8(r3) -/* 8007084C 2C 05 00 00 */ cmpwi r5, 0 -/* 80070850 41 82 00 28 */ beq lbl_80070878 -/* 80070854 80 06 03 DC */ lwz r0, 0x3dc(r6) -/* 80070858 7C 60 22 14 */ add r3, r0, r4 -/* 8007085C 7C 03 2B D6 */ divw r0, r3, r5 -/* 80070860 7C 00 29 D6 */ mullw r0, r0, r5 -/* 80070864 7C 00 18 50 */ subf r0, r0, r3 -/* 80070868 1C 60 00 14 */ mulli r3, r0, 0x14 -/* 8007086C 38 63 03 38 */ addi r3, r3, 0x338 -/* 80070870 7C 66 1A 14 */ add r3, r6, r3 -/* 80070874 4E 80 00 20 */ blr -lbl_80070878: -/* 80070878 38 60 00 00 */ li r3, 0 -/* 8007087C 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/LockonTargetPId__12dAttention_cFl.s b/asm/d/d_attention/LockonTargetPId__12dAttention_cFl.s deleted file mode 100644 index d835a9604ec..00000000000 --- a/asm/d/d_attention/LockonTargetPId__12dAttention_cFl.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_800736CC: -/* 800736CC 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800736D0 38 E5 61 C0 */ addi r7, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800736D4 80 C7 5F 18 */ lwz r6, 0x5f18(r7) -/* 800736D8 3C A0 36 A0 */ lis r5, 0x36A0 /* 0x36A02311@ha */ -/* 800736DC 38 05 23 11 */ addi r0, r5, 0x2311 /* 0x36A02311@l */ -/* 800736E0 7C C0 00 39 */ and. r0, r6, r0 -/* 800736E4 40 82 00 10 */ bne lbl_800736F4 -/* 800736E8 80 07 5F 1C */ lwz r0, 0x5f1c(r7) -/* 800736EC 70 00 00 11 */ andi. r0, r0, 0x11 -/* 800736F0 41 82 00 0C */ beq lbl_800736FC -lbl_800736F4: -/* 800736F4 38 60 FF FF */ li r3, -1 -/* 800736F8 4E 80 00 20 */ blr -lbl_800736FC: -/* 800736FC 80 A3 03 D8 */ lwz r5, 0x3d8(r3) -/* 80073700 7C 04 28 00 */ cmpw r4, r5 -/* 80073704 41 80 00 0C */ blt lbl_80073710 -/* 80073708 38 60 FF FF */ li r3, -1 -/* 8007370C 4E 80 00 20 */ blr -lbl_80073710: -/* 80073710 80 03 03 DC */ lwz r0, 0x3dc(r3) -/* 80073714 7C 00 22 14 */ add r0, r0, r4 -/* 80073718 7C 00 28 00 */ cmpw r0, r5 -/* 8007371C 41 80 00 08 */ blt lbl_80073724 -/* 80073720 7C 05 00 50 */ subf r0, r5, r0 -lbl_80073724: -/* 80073724 1C 00 00 14 */ mulli r0, r0, 0x14 -/* 80073728 7C 63 02 14 */ add r3, r3, r0 -/* 8007372C 80 63 03 48 */ lwz r3, 0x348(r3) -/* 80073730 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/LockonTarget__12dAttention_cFl.s b/asm/d/d_attention/LockonTarget__12dAttention_cFl.s deleted file mode 100644 index 010b6e9e5dc..00000000000 --- a/asm/d/d_attention/LockonTarget__12dAttention_cFl.s +++ /dev/null @@ -1,47 +0,0 @@ -lbl_8007353C: -/* 8007353C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073540 7C 08 02 A6 */ mflr r0 -/* 80073544 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073548 7C 67 1B 78 */ mr r7, r3 -/* 8007354C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80073550 38 C3 61 C0 */ addi r6, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80073554 80 A6 5F 18 */ lwz r5, 0x5f18(r6) -/* 80073558 3C 60 36 A0 */ lis r3, 0x36A0 /* 0x36A02311@ha */ -/* 8007355C 38 03 23 11 */ addi r0, r3, 0x2311 /* 0x36A02311@l */ -/* 80073560 7C A0 00 39 */ and. r0, r5, r0 -/* 80073564 40 82 00 10 */ bne lbl_80073574 -/* 80073568 80 06 5F 1C */ lwz r0, 0x5f1c(r6) -/* 8007356C 70 00 00 11 */ andi. r0, r0, 0x11 -/* 80073570 41 82 00 0C */ beq lbl_8007357C -lbl_80073574: -/* 80073574 38 60 00 00 */ li r3, 0 -/* 80073578 48 00 00 54 */ b lbl_800735CC -lbl_8007357C: -/* 8007357C 80 67 03 D8 */ lwz r3, 0x3d8(r7) -/* 80073580 7C 04 18 00 */ cmpw r4, r3 -/* 80073584 41 80 00 0C */ blt lbl_80073590 -/* 80073588 38 60 00 00 */ li r3, 0 -/* 8007358C 48 00 00 40 */ b lbl_800735CC -lbl_80073590: -/* 80073590 80 07 03 DC */ lwz r0, 0x3dc(r7) -/* 80073594 7C 00 22 14 */ add r0, r0, r4 -/* 80073598 7C 00 18 00 */ cmpw r0, r3 -/* 8007359C 41 80 00 08 */ blt lbl_800735A4 -/* 800735A0 7C 03 00 50 */ subf r0, r3, r0 -lbl_800735A4: -/* 800735A4 1C 60 00 14 */ mulli r3, r0, 0x14 -/* 800735A8 38 63 03 38 */ addi r3, r3, 0x338 -/* 800735AC 7C 67 1A 14 */ add r3, r7, r3 -/* 800735B0 48 00 02 B5 */ bl getActor__10dAttList_cFv -/* 800735B4 28 03 00 00 */ cmplwi r3, 0 -/* 800735B8 41 82 00 10 */ beq lbl_800735C8 -/* 800735BC 80 03 05 5C */ lwz r0, 0x55c(r3) -/* 800735C0 54 00 07 7F */ clrlwi. r0, r0, 0x1d -/* 800735C4 40 82 00 08 */ bne lbl_800735CC -lbl_800735C8: -/* 800735C8 38 60 00 00 */ li r3, 0 -lbl_800735CC: -/* 800735CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800735D0 7C 08 03 A6 */ mtlr r0 -/* 800735D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800735D8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/LockonTruth__12dAttention_cFv.s b/asm/d/d_attention/LockonTruth__12dAttention_cFv.s deleted file mode 100644 index 1de8290ba4a..00000000000 --- a/asm/d/d_attention/LockonTruth__12dAttention_cFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_800737E4: -/* 800737E4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800737E8 7C 08 02 A6 */ mflr r0 -/* 800737EC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800737F0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800737F4 3B E0 00 00 */ li r31, 0 -/* 800737F8 88 03 03 29 */ lbz r0, 0x329(r3) -/* 800737FC 28 00 00 01 */ cmplwi r0, 1 -/* 80073800 41 82 00 0C */ beq lbl_8007380C -/* 80073804 28 00 00 02 */ cmplwi r0, 2 -/* 80073808 40 82 00 18 */ bne lbl_80073820 -lbl_8007380C: -/* 8007380C 38 80 00 00 */ li r4, 0 -/* 80073810 4B FF FD 2D */ bl LockonTarget__12dAttention_cFl -/* 80073814 28 03 00 00 */ cmplwi r3, 0 -/* 80073818 41 82 00 08 */ beq lbl_80073820 -/* 8007381C 3B E0 00 01 */ li r31, 1 -lbl_80073820: -/* 80073820 7F E3 FB 78 */ mr r3, r31 -/* 80073824 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80073828 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8007382C 7C 08 03 A6 */ mtlr r0 -/* 80073830 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073834 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/Run__12dAttention_cFv.s b/asm/d/d_attention/Run__12dAttention_cFv.s deleted file mode 100644 index 26fd164b4e7..00000000000 --- a/asm/d/d_attention/Run__12dAttention_cFv.s +++ /dev/null @@ -1,189 +0,0 @@ -lbl_80072924: -/* 80072924 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80072928 7C 08 02 A6 */ mflr r0 -/* 8007292C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80072930 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80072934 7C 7F 1B 78 */ mr r31, r3 -/* 80072938 80 03 03 34 */ lwz r0, 0x334(r3) -/* 8007293C 54 00 00 12 */ rlwinm r0, r0, 0, 0, 9 -/* 80072940 90 03 03 34 */ stw r0, 0x334(r3) -/* 80072944 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80072948 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8007294C 88 03 01 E2 */ lbz r0, 0x1e2(r3) -/* 80072950 7C 00 00 34 */ cntlzw r0, r0 -/* 80072954 54 04 D9 7E */ srwi r4, r0, 5 -/* 80072958 88 6D 80 F0 */ lbz r3, data_80450670(r13) -/* 8007295C 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f -/* 80072960 7C 03 00 40 */ cmplw r3, r0 -/* 80072964 41 82 00 10 */ beq lbl_80072974 -/* 80072968 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 8007296C 64 00 00 01 */ oris r0, r0, 1 -/* 80072970 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072974: -/* 80072974 98 8D 80 F0 */ stb r4, data_80450670(r13) -/* 80072978 80 7F 04 C4 */ lwz r3, 0x4c4(r31) -/* 8007297C 2C 03 00 00 */ cmpwi r3, 0 -/* 80072980 41 82 00 14 */ beq lbl_80072994 -/* 80072984 38 03 FF FF */ addi r0, r3, -1 -/* 80072988 90 1F 04 C4 */ stw r0, 0x4c4(r31) -/* 8007298C 38 60 00 01 */ li r3, 1 -/* 80072990 48 00 02 30 */ b lbl_80072BC0 -lbl_80072994: -/* 80072994 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072998 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 -/* 8007299C 41 82 00 1C */ beq lbl_800729B8 -/* 800729A0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800729A4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800729A8 80 03 5D AC */ lwz r0, 0x5dac(r3) -/* 800729AC 90 1F 00 00 */ stw r0, 0(r31) -/* 800729B0 38 00 00 00 */ li r0, 0 -/* 800729B4 90 1F 00 0C */ stw r0, 0xc(r31) -lbl_800729B8: -/* 800729B8 7F E3 FB 78 */ mr r3, r31 -/* 800729BC 4B FF EA 69 */ bl setOwnerAttentionPos__12dAttention_cFv -/* 800729C0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 800729C4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 800729C8 88 03 4F AD */ lbz r0, 0x4fad(r3) -/* 800729CC 28 00 00 00 */ cmplwi r0, 0 -/* 800729D0 40 82 00 10 */ bne lbl_800729E0 -/* 800729D4 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800729D8 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf -/* 800729DC 41 82 00 44 */ beq lbl_80072A20 -lbl_800729E0: -/* 800729E0 38 60 00 00 */ li r3, 0 -/* 800729E4 98 7F 03 29 */ stb r3, 0x329(r31) -/* 800729E8 38 00 00 04 */ li r0, 4 -/* 800729EC 98 1F 03 2B */ stb r0, 0x32b(r31) -/* 800729F0 98 7F 03 2C */ stb r3, 0x32c(r31) -/* 800729F4 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800729F8 54 00 00 C2 */ rlwinm r0, r0, 0, 3, 1 -/* 800729FC 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072A00 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072A04 54 00 01 04 */ rlwinm r0, r0, 0, 4, 2 -/* 80072A08 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072A0C 38 00 FF FF */ li r0, -1 -/* 80072A10 90 1F 00 04 */ stw r0, 4(r31) -/* 80072A14 7F E3 FB 78 */ mr r3, r31 -/* 80072A18 4B FF F0 51 */ bl freeAttention__12dAttention_cFv -/* 80072A1C 48 00 01 18 */ b lbl_80072B34 -lbl_80072A20: -/* 80072A20 7F E3 FB 78 */ mr r3, r31 -/* 80072A24 4B FF F6 D5 */ bl checkButton__12dAttention_cFv -/* 80072A28 88 0D 80 F0 */ lbz r0, data_80450670(r13) -/* 80072A2C 28 00 00 00 */ cmplwi r0, 0 -/* 80072A30 41 82 00 10 */ beq lbl_80072A40 -/* 80072A34 7F E3 FB 78 */ mr r3, r31 -/* 80072A38 4B FF F9 0D */ bl judgementStatus4Hold__12dAttention_cFv -/* 80072A3C 48 00 00 0C */ b lbl_80072A48 -lbl_80072A40: -/* 80072A40 7F E3 FB 78 */ mr r3, r31 -/* 80072A44 4B FF FB AD */ bl judgementStatus4Switch__12dAttention_cFv -lbl_80072A48: -/* 80072A48 80 7F 03 34 */ lwz r3, 0x334(r31) -/* 80072A4C 54 60 4F FF */ rlwinm. r0, r3, 9, 0x1f, 0x1f -/* 80072A50 41 82 00 4C */ beq lbl_80072A9C -/* 80072A54 7F E3 FB 78 */ mr r3, r31 -/* 80072A58 4B FF F0 11 */ bl freeAttention__12dAttention_cFv -/* 80072A5C 7F E3 FB 78 */ mr r3, r31 -/* 80072A60 38 80 00 00 */ li r4, 0 -/* 80072A64 48 00 0A D9 */ bl LockonTarget__12dAttention_cFl -/* 80072A68 28 03 00 00 */ cmplwi r3, 0 -/* 80072A6C 40 82 00 14 */ bne lbl_80072A80 -/* 80072A70 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072A74 64 00 20 00 */ oris r0, r0, 0x2000 -/* 80072A78 60 00 00 20 */ ori r0, r0, 0x20 -/* 80072A7C 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072A80: -/* 80072A80 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072A84 64 00 10 00 */ oris r0, r0, 0x1000 -/* 80072A88 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072A8C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072A90 54 00 02 4E */ rlwinm r0, r0, 0, 9, 7 -/* 80072A94 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072A98 48 00 00 9C */ b lbl_80072B34 -lbl_80072A9C: -/* 80072A9C 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 -/* 80072AA0 41 82 00 48 */ beq lbl_80072AE8 -/* 80072AA4 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072AA8 4B FF D5 71 */ bl padLockButton -/* 80072AAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072AB0 40 82 00 84 */ bne lbl_80072B34 -/* 80072AB4 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072AB8 54 00 00 85 */ rlwinm. r0, r0, 0, 2, 2 -/* 80072ABC 41 82 00 1C */ beq lbl_80072AD8 -/* 80072AC0 7F E3 FB 78 */ mr r3, r31 -/* 80072AC4 38 80 00 5A */ li r4, 0x5a -/* 80072AC8 48 00 02 B9 */ bl lockSoundStart__12dAttention_cFUl -/* 80072ACC 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072AD0 54 00 00 C2 */ rlwinm r0, r0, 0, 3, 1 -/* 80072AD4 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072AD8: -/* 80072AD8 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072ADC 54 00 01 04 */ rlwinm r0, r0, 0, 4, 2 -/* 80072AE0 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072AE4 48 00 00 50 */ b lbl_80072B34 -lbl_80072AE8: -/* 80072AE8 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072AEC 4B FF D5 2D */ bl padLockButton -/* 80072AF0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072AF4 41 82 00 40 */ beq lbl_80072B34 -/* 80072AF8 7F E3 FB 78 */ mr r3, r31 -/* 80072AFC 38 80 00 00 */ li r4, 0 -/* 80072B00 48 00 0A 3D */ bl LockonTarget__12dAttention_cFl -/* 80072B04 28 03 00 00 */ cmplwi r3, 0 -/* 80072B08 40 82 00 20 */ bne lbl_80072B28 -/* 80072B0C 7F E3 FB 78 */ mr r3, r31 -/* 80072B10 38 80 00 59 */ li r4, 0x59 -/* 80072B14 48 00 02 6D */ bl lockSoundStart__12dAttention_cFUl -/* 80072B18 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072B1C 64 00 20 00 */ oris r0, r0, 0x2000 -/* 80072B20 60 00 00 20 */ ori r0, r0, 0x20 -/* 80072B24 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072B28: -/* 80072B28 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072B2C 64 00 10 00 */ oris r0, r0, 0x1000 -/* 80072B30 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072B34: -/* 80072B34 88 1F 03 29 */ lbz r0, 0x329(r31) -/* 80072B38 98 1F 03 2A */ stb r0, 0x32a(r31) -/* 80072B3C 7F E3 FB 78 */ mr r3, r31 -/* 80072B40 4B FF F2 AD */ bl runSoundProc__12dAttention_cFv -/* 80072B44 7F E3 FB 78 */ mr r3, r31 -/* 80072B48 4B FF F3 3D */ bl runDrawProc__12dAttention_cFv -/* 80072B4C 7F E3 FB 78 */ mr r3, r31 -/* 80072B50 4B FF F5 A5 */ bl runDebugDisp__12dAttention_cFv -/* 80072B54 88 1F 03 29 */ lbz r0, 0x329(r31) -/* 80072B58 28 00 00 01 */ cmplwi r0, 1 -/* 80072B5C 40 82 00 28 */ bne lbl_80072B84 -/* 80072B60 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80072B64 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80072B68 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80072B6C 1C 00 00 38 */ mulli r0, r0, 0x38 -/* 80072B70 7C 63 02 14 */ add r3, r3, r0 -/* 80072B74 80 03 5D 7C */ lwz r0, 0x5d7c(r3) -/* 80072B78 60 00 00 01 */ ori r0, r0, 1 -/* 80072B7C 90 03 5D 7C */ stw r0, 0x5d7c(r3) -/* 80072B80 48 00 00 24 */ b lbl_80072BA4 -lbl_80072B84: -/* 80072B84 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80072B88 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80072B8C 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80072B90 1C 00 00 38 */ mulli r0, r0, 0x38 -/* 80072B94 7C 63 02 14 */ add r3, r3, r0 -/* 80072B98 80 03 5D 7C */ lwz r0, 0x5d7c(r3) -/* 80072B9C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e -/* 80072BA0 90 03 5D 7C */ stw r0, 0x5d7c(r3) -lbl_80072BA4: -/* 80072BA4 38 7F 04 90 */ addi r3, r31, 0x490 -/* 80072BA8 48 00 0D C9 */ bl proc__10dAttHint_cFv -/* 80072BAC 38 7F 04 9C */ addi r3, r31, 0x49c -/* 80072BB0 48 00 0E 2D */ bl proc__11dAttCatch_cFv -/* 80072BB4 38 7F 04 B4 */ addi r3, r31, 0x4b4 -/* 80072BB8 48 00 11 35 */ bl proc__10dAttLook_cFv -/* 80072BBC 38 60 00 01 */ li r3, 1 -lbl_80072BC0: -/* 80072BC0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80072BC4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80072BC8 7C 08 03 A6 */ mtlr r0 -/* 80072BCC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80072BD0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/__ct__15dAttDrawParam_cFv.s b/asm/d/d_attention/__ct__15dAttDrawParam_cFv.s deleted file mode 100644 index f19cb8b1c7c..00000000000 --- a/asm/d/d_attention/__ct__15dAttDrawParam_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80070158: -/* 80070158 3C 80 80 3B */ lis r4, __vt__15dAttDrawParam_c@ha /* 0x803A9C54@ha */ -/* 8007015C 38 04 9C 54 */ addi r0, r4, __vt__15dAttDrawParam_c@l /* 0x803A9C54@l */ -/* 80070160 90 03 00 00 */ stw r0, 0(r3) -/* 80070164 C0 02 8C 5C */ lfs f0, lit_4084(r2) -/* 80070168 D0 03 00 08 */ stfs f0, 8(r3) -/* 8007016C C0 02 8C 60 */ lfs f0, lit_4085(r2) -/* 80070170 D0 03 00 0C */ stfs f0, 0xc(r3) -/* 80070174 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/__dt__11dAttParam_cFv.s b/asm/d/d_attention/__dt__11dAttParam_cFv.s deleted file mode 100644 index 3043b987ef9..00000000000 --- a/asm/d/d_attention/__dt__11dAttParam_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80070110: -/* 80070110 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80070114 7C 08 02 A6 */ mflr r0 -/* 80070118 90 01 00 14 */ stw r0, 0x14(r1) -/* 8007011C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80070120 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80070124 41 82 00 1C */ beq lbl_80070140 -/* 80070128 3C A0 80 3B */ lis r5, __vt__11dAttParam_c@ha /* 0x803A9C60@ha */ -/* 8007012C 38 05 9C 60 */ addi r0, r5, __vt__11dAttParam_c@l /* 0x803A9C60@l */ -/* 80070130 90 1F 00 40 */ stw r0, 0x40(r31) -/* 80070134 7C 80 07 35 */ extsh. r0, r4 -/* 80070138 40 81 00 08 */ ble lbl_80070140 -/* 8007013C 48 25 EC 01 */ bl __dl__FPv -lbl_80070140: -/* 80070140 7F E3 FB 78 */ mr r3, r31 -/* 80070144 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80070148 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8007014C 7C 08 03 A6 */ mtlr r0 -/* 80070150 38 21 00 10 */ addi r1, r1, 0x10 -/* 80070154 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/__dt__12dAttention_cFv.s b/asm/d/d_attention/__dt__12dAttention_cFv.s deleted file mode 100644 index 229fc0bbc3b..00000000000 --- a/asm/d/d_attention/__dt__12dAttention_cFv.s +++ /dev/null @@ -1,55 +0,0 @@ -lbl_80070774: -/* 80070774 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80070778 7C 08 02 A6 */ mflr r0 -/* 8007077C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80070780 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80070784 93 C1 00 08 */ stw r30, 8(r1) -/* 80070788 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8007078C 7C 9F 23 78 */ mr r31, r4 -/* 80070790 41 82 00 98 */ beq lbl_80070828 -/* 80070794 80 7E 00 18 */ lwz r3, 0x18(r30) -/* 80070798 28 03 00 00 */ cmplwi r3, 0 -/* 8007079C 41 82 00 10 */ beq lbl_800707AC -/* 800707A0 4B F9 E9 ED */ bl mDoExt_destroySolidHeap__FP12JKRSolidHeap -/* 800707A4 38 00 00 00 */ li r0, 0 -/* 800707A8 90 1E 00 18 */ stw r0, 0x18(r30) -lbl_800707AC: -/* 800707AC 38 7E 04 C8 */ addi r3, r30, 0x4c8 -/* 800707B0 38 80 FF FF */ li r4, -1 -/* 800707B4 4B FF F9 5D */ bl __dt__11dAttParam_cFv -/* 800707B8 38 7E 04 38 */ addi r3, r30, 0x438 -/* 800707BC 3C 80 80 03 */ lis r4, __dt__10dAttList_cFv@ha /* 0x800304D0@ha */ -/* 800707C0 38 84 04 D0 */ addi r4, r4, __dt__10dAttList_cFv@l /* 0x800304D0@l */ -/* 800707C4 38 A0 00 14 */ li r5, 0x14 -/* 800707C8 38 C0 00 04 */ li r6, 4 -/* 800707CC 48 2F 15 1D */ bl __destroy_arr -/* 800707D0 38 7E 03 E0 */ addi r3, r30, 0x3e0 -/* 800707D4 3C 80 80 03 */ lis r4, __dt__10dAttList_cFv@ha /* 0x800304D0@ha */ -/* 800707D8 38 84 04 D0 */ addi r4, r4, __dt__10dAttList_cFv@l /* 0x800304D0@l */ -/* 800707DC 38 A0 00 14 */ li r5, 0x14 -/* 800707E0 38 C0 00 04 */ li r6, 4 -/* 800707E4 48 2F 15 05 */ bl __destroy_arr -/* 800707E8 38 7E 03 38 */ addi r3, r30, 0x338 -/* 800707EC 3C 80 80 03 */ lis r4, __dt__10dAttList_cFv@ha /* 0x800304D0@ha */ -/* 800707F0 38 84 04 D0 */ addi r4, r4, __dt__10dAttList_cFv@l /* 0x800304D0@l */ -/* 800707F4 38 A0 00 14 */ li r5, 0x14 -/* 800707F8 38 C0 00 08 */ li r6, 8 -/* 800707FC 48 2F 14 ED */ bl __destroy_arr -/* 80070800 38 7E 00 28 */ addi r3, r30, 0x28 -/* 80070804 3C 80 80 03 */ lis r4, __dt__10dAttDraw_cFv@ha /* 0x8003054C@ha */ -/* 80070808 38 84 05 4C */ addi r4, r4, __dt__10dAttDraw_cFv@l /* 0x8003054C@l */ -/* 8007080C 38 A0 01 78 */ li r5, 0x178 -/* 80070810 38 C0 00 02 */ li r6, 2 -/* 80070814 48 2F 14 D5 */ bl __destroy_arr -/* 80070818 7F E0 07 35 */ extsh. r0, r31 -/* 8007081C 40 81 00 0C */ ble lbl_80070828 -/* 80070820 7F C3 F3 78 */ mr r3, r30 -/* 80070824 48 25 E5 19 */ bl __dl__FPv -lbl_80070828: -/* 80070828 7F C3 F3 78 */ mr r3, r30 -/* 8007082C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80070830 83 C1 00 08 */ lwz r30, 8(r1) -/* 80070834 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80070838 7C 08 03 A6 */ mtlr r0 -/* 8007083C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80070840 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/__dt__15dAttDrawParam_cFv.s b/asm/d/d_attention/__dt__15dAttDrawParam_cFv.s deleted file mode 100644 index 945a950dcf9..00000000000 --- a/asm/d/d_attention/__dt__15dAttDrawParam_cFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80073FC4: -/* 80073FC4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073FC8 7C 08 02 A6 */ mflr r0 -/* 80073FCC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073FD0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80073FD4 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80073FD8 41 82 00 1C */ beq lbl_80073FF4 -/* 80073FDC 3C A0 80 3B */ lis r5, __vt__15dAttDrawParam_c@ha /* 0x803A9C54@ha */ -/* 80073FE0 38 05 9C 54 */ addi r0, r5, __vt__15dAttDrawParam_c@l /* 0x803A9C54@l */ -/* 80073FE4 90 1F 00 00 */ stw r0, 0(r31) -/* 80073FE8 7C 80 07 35 */ extsh. r0, r4 -/* 80073FEC 40 81 00 08 */ ble lbl_80073FF4 -/* 80073FF0 48 25 AD 4D */ bl __dl__FPv -lbl_80073FF4: -/* 80073FF4 7F E3 FB 78 */ mr r3, r31 -/* 80073FF8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80073FFC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80074000 7C 08 03 A6 */ mtlr r0 -/* 80074004 38 21 00 10 */ addi r1, r1, 0x10 -/* 80074008 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/checkButton__12dAttention_cFv.s b/asm/d/d_attention/checkButton__12dAttention_cFv.s deleted file mode 100644 index cfd402b4582..00000000000 --- a/asm/d/d_attention/checkButton__12dAttention_cFv.s +++ /dev/null @@ -1,118 +0,0 @@ -lbl_800720F8: -/* 800720F8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800720FC 7C 08 02 A6 */ mflr r0 -/* 80072100 90 01 00 14 */ stw r0, 0x14(r1) -/* 80072104 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80072108 7C 7F 1B 78 */ mr r31, r3 -/* 8007210C 88 0D 89 D8 */ lbz r0, on_final_boss_stg(r13) -/* 80072110 28 00 00 00 */ cmplwi r0, 0 -/* 80072114 41 82 00 60 */ beq lbl_80072174 -/* 80072118 88 0D 87 E4 */ lbz r0, mStayNo__20dStage_roomControl_c+0x0(r13) -/* 8007211C 7C 00 07 75 */ extsb. r0, r0 -/* 80072120 40 82 00 54 */ bne lbl_80072174 -/* 80072124 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80072128 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8007212C 38 63 09 78 */ addi r3, r3, 0x978 -/* 80072130 38 80 00 01 */ li r4, 1 -/* 80072134 4B FC 2A B5 */ bl isSwitch__12dSv_danBit_cCFi -/* 80072138 2C 03 00 00 */ cmpwi r3, 0 -/* 8007213C 40 82 00 38 */ bne lbl_80072174 -/* 80072140 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 80072144 28 00 00 01 */ cmplwi r0, 1 -/* 80072148 40 82 00 2C */ bne lbl_80072174 -/* 8007214C 7F E3 FB 78 */ mr r3, r31 -/* 80072150 38 80 00 00 */ li r4, 0 -/* 80072154 48 00 13 E9 */ bl LockonTarget__12dAttention_cFl -/* 80072158 28 03 00 00 */ cmplwi r3, 0 -/* 8007215C 41 82 00 18 */ beq lbl_80072174 -/* 80072160 80 7F 03 34 */ lwz r3, 0x334(r31) -/* 80072164 54 60 00 85 */ rlwinm. r0, r3, 0, 2, 2 -/* 80072168 41 82 00 0C */ beq lbl_80072174 -/* 8007216C 64 60 01 00 */ oris r0, r3, 0x100 -/* 80072170 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072174: -/* 80072174 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80072178 38 A3 61 C0 */ addi r5, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8007217C 80 85 5F 18 */ lwz r4, 0x5f18(r5) -/* 80072180 3C 60 36 A0 */ lis r3, 0x36A0 /* 0x36A02311@ha */ -/* 80072184 38 03 23 11 */ addi r0, r3, 0x2311 /* 0x36A02311@l */ -/* 80072188 7C 80 00 39 */ and. r0, r4, r0 -/* 8007218C 40 82 00 10 */ bne lbl_8007219C -/* 80072190 80 05 5F 1C */ lwz r0, 0x5f1c(r5) -/* 80072194 70 00 00 11 */ andi. r0, r0, 0x11 -/* 80072198 41 82 00 34 */ beq lbl_800721CC -lbl_8007219C: -/* 8007219C 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 800721A0 2C 00 00 02 */ cmpwi r0, 2 -/* 800721A4 40 80 00 E8 */ bge lbl_8007228C -/* 800721A8 2C 00 00 00 */ cmpwi r0, 0 -/* 800721AC 40 80 00 08 */ bge lbl_800721B4 -/* 800721B0 48 00 00 DC */ b lbl_8007228C -lbl_800721B4: -/* 800721B4 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800721B8 54 00 02 0C */ rlwinm r0, r0, 0, 8, 6 -/* 800721BC 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800721C0 38 00 00 04 */ li r0, 4 -/* 800721C4 98 1F 03 2B */ stb r0, 0x32b(r31) -/* 800721C8 48 00 00 C4 */ b lbl_8007228C -lbl_800721CC: -/* 800721CC 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 800721D0 2C 00 00 01 */ cmpwi r0, 1 -/* 800721D4 41 82 00 68 */ beq lbl_8007223C -/* 800721D8 40 80 00 10 */ bge lbl_800721E8 -/* 800721DC 2C 00 00 00 */ cmpwi r0, 0 -/* 800721E0 40 80 00 54 */ bge lbl_80072234 -/* 800721E4 48 00 00 A8 */ b lbl_8007228C -lbl_800721E8: -/* 800721E8 2C 00 00 04 */ cmpwi r0, 4 -/* 800721EC 41 82 00 08 */ beq lbl_800721F4 -/* 800721F0 48 00 00 9C */ b lbl_8007228C -lbl_800721F4: -/* 800721F4 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 800721F8 4B FF DE 21 */ bl padLockButton -/* 800721FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072200 40 82 00 10 */ bne lbl_80072210 -/* 80072204 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072208 54 00 01 CF */ rlwinm. r0, r0, 0, 7, 7 -/* 8007220C 41 82 00 80 */ beq lbl_8007228C -lbl_80072210: -/* 80072210 38 00 00 00 */ li r0, 0 -/* 80072214 98 1F 03 2B */ stb r0, 0x32b(r31) -/* 80072218 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 8007221C 60 00 02 00 */ ori r0, r0, 0x200 -/* 80072220 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072224 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072228 54 00 02 0C */ rlwinm r0, r0, 0, 8, 6 -/* 8007222C 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072230 48 00 00 5C */ b lbl_8007228C -lbl_80072234: -/* 80072234 38 00 00 01 */ li r0, 1 -/* 80072238 98 1F 03 2B */ stb r0, 0x32b(r31) -lbl_8007223C: -/* 8007223C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072240 54 00 01 CF */ rlwinm. r0, r0, 0, 7, 7 -/* 80072244 41 82 00 30 */ beq lbl_80072274 -/* 80072248 38 00 00 00 */ li r0, 0 -/* 8007224C 98 1F 03 2B */ stb r0, 0x32b(r31) -/* 80072250 38 00 00 3C */ li r0, 0x3c -/* 80072254 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 80072258 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 8007225C 60 00 02 00 */ ori r0, r0, 0x200 -/* 80072260 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072264 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072268 54 00 02 0C */ rlwinm r0, r0, 0, 8, 6 -/* 8007226C 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072270 48 00 00 1C */ b lbl_8007228C -lbl_80072274: -/* 80072274 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 80072278 4B FF DD A1 */ bl padLockButton -/* 8007227C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072280 40 82 00 0C */ bne lbl_8007228C -/* 80072284 38 00 00 04 */ li r0, 4 -/* 80072288 98 1F 03 2B */ stb r0, 0x32b(r31) -lbl_8007228C: -/* 8007228C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80072290 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80072294 7C 08 03 A6 */ mtlr r0 -/* 80072298 38 21 00 10 */ addi r1, r1, 0x10 -/* 8007229C 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/checkDistance__12dAttention_cFP4cXyzsP4cXyzffff.s b/asm/d/d_attention/checkDistance__12dAttention_cFP4cXyzsP4cXyzffff.s deleted file mode 100644 index 2c40001e4fb..00000000000 --- a/asm/d/d_attention/checkDistance__12dAttention_cFP4cXyzsP4cXyzffff.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80073838: -/* 80073838 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8007383C 7C 08 02 A6 */ mflr r0 -/* 80073840 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073844 7C 83 23 78 */ mr r3, r4 -/* 80073848 7C A4 2B 78 */ mr r4, r5 -/* 8007384C 7C C5 33 78 */ mr r5, r6 -/* 80073850 4B FF D4 51 */ bl check_distace__FP4cXyzsP4cXyzffff -/* 80073854 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80073858 7C 08 03 A6 */ mtlr r0 -/* 8007385C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073860 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/check_event_condition__FUlUs.s b/asm/d/d_attention/check_event_condition__FUlUs.s deleted file mode 100644 index 6859e8055cf..00000000000 --- a/asm/d/d_attention/check_event_condition__FUlUs.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_80070AC0: -/* 80070AC0 2C 03 00 04 */ cmpwi r3, 4 -/* 80070AC4 41 82 00 60 */ beq lbl_80070B24 -/* 80070AC8 40 80 00 1C */ bge lbl_80070AE4 -/* 80070ACC 2C 03 00 02 */ cmpwi r3, 2 -/* 80070AD0 41 82 00 54 */ beq lbl_80070B24 -/* 80070AD4 40 80 00 20 */ bge lbl_80070AF4 -/* 80070AD8 2C 03 00 01 */ cmpwi r3, 1 -/* 80070ADC 40 80 00 18 */ bge lbl_80070AF4 -/* 80070AE0 48 00 00 44 */ b lbl_80070B24 -lbl_80070AE4: -/* 80070AE4 2C 03 00 06 */ cmpwi r3, 6 -/* 80070AE8 41 82 00 2C */ beq lbl_80070B14 -/* 80070AEC 40 80 00 38 */ bge lbl_80070B24 -/* 80070AF0 48 00 00 14 */ b lbl_80070B04 -lbl_80070AF4: -/* 80070AF4 54 80 07 FF */ clrlwi. r0, r4, 0x1f -/* 80070AF8 40 82 00 2C */ bne lbl_80070B24 -/* 80070AFC 38 60 00 01 */ li r3, 1 -/* 80070B00 4E 80 00 20 */ blr -lbl_80070B04: -/* 80070B04 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d -/* 80070B08 40 82 00 1C */ bne lbl_80070B24 -/* 80070B0C 38 60 00 01 */ li r3, 1 -/* 80070B10 4E 80 00 20 */ blr -lbl_80070B14: -/* 80070B14 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d -/* 80070B18 40 82 00 0C */ bne lbl_80070B24 -/* 80070B1C 38 60 00 01 */ li r3, 1 -/* 80070B20 4E 80 00 20 */ blr -lbl_80070B24: -/* 80070B24 38 60 00 00 */ li r3, 0 -/* 80070B28 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/check_flontofplayer__FUlss.s b/asm/d/d_attention/check_flontofplayer__FUlss.s deleted file mode 100644 index 31912f9e7dc..00000000000 --- a/asm/d/d_attention/check_flontofplayer__FUlss.s +++ /dev/null @@ -1,57 +0,0 @@ -lbl_80070B2C: -/* 80070B2C 7C 80 07 35 */ extsh. r0, r4 -/* 80070B30 40 80 00 0C */ bge lbl_80070B3C -/* 80070B34 7C 04 00 D0 */ neg r0, r4 -/* 80070B38 7C 04 07 34 */ extsh r4, r0 -lbl_80070B3C: -/* 80070B3C 7C A0 07 35 */ extsh. r0, r5 -/* 80070B40 40 80 00 0C */ bge lbl_80070B4C -/* 80070B44 7C 05 00 D0 */ neg r0, r5 -/* 80070B48 7C 05 07 34 */ extsh r5, r0 -lbl_80070B4C: -/* 80070B4C 38 C0 00 00 */ li r6, 0 -/* 80070B50 38 E0 00 00 */ li r7, 0 -/* 80070B54 3D 00 80 3B */ lis r8, ftp_table@ha /* 0x803A9C18@ha */ -/* 80070B58 39 28 9C 18 */ addi r9, r8, ftp_table@l /* 0x803A9C18@l */ -/* 80070B5C 7C 88 07 34 */ extsh r8, r4 -/* 80070B60 38 8D 80 F4 */ la r4, ang_table(r13) /* 80450674-_SDA_BASE_ */ -/* 80070B64 38 00 00 03 */ li r0, 3 -/* 80070B68 7C 09 03 A6 */ mtctr r0 -lbl_80070B6C: -/* 80070B6C 7C 09 38 2E */ lwzx r0, r9, r7 -/* 80070B70 7C 60 00 39 */ and. r0, r3, r0 -/* 80070B74 41 82 00 18 */ beq lbl_80070B8C -/* 80070B78 7C 04 32 AE */ lhax r0, r4, r6 -/* 80070B7C 7C 08 00 00 */ cmpw r8, r0 -/* 80070B80 40 81 00 0C */ ble lbl_80070B8C -/* 80070B84 38 60 00 01 */ li r3, 1 -/* 80070B88 4E 80 00 20 */ blr -lbl_80070B8C: -/* 80070B8C 38 C6 00 02 */ addi r6, r6, 2 -/* 80070B90 38 E7 00 04 */ addi r7, r7, 4 -/* 80070B94 42 00 FF D8 */ bdnz lbl_80070B6C -/* 80070B98 38 80 00 10 */ li r4, 0x10 -/* 80070B9C 38 C0 00 20 */ li r6, 0x20 -/* 80070BA0 3C E0 80 3B */ lis r7, ftp_table@ha /* 0x803A9C18@ha */ -/* 80070BA4 39 27 9C 18 */ addi r9, r7, ftp_table@l /* 0x803A9C18@l */ -/* 80070BA8 7C A8 07 34 */ extsh r8, r5 -/* 80070BAC 3C A0 80 3B */ lis r5, ang_table2@ha /* 0x803A9C3C@ha */ -/* 80070BB0 38 E5 9C 3C */ addi r7, r5, ang_table2@l /* 0x803A9C3C@l */ -/* 80070BB4 38 00 00 06 */ li r0, 6 -/* 80070BB8 7C 09 03 A6 */ mtctr r0 -lbl_80070BBC: -/* 80070BBC 7C 09 30 2E */ lwzx r0, r9, r6 -/* 80070BC0 7C 60 00 39 */ and. r0, r3, r0 -/* 80070BC4 41 82 00 1C */ beq lbl_80070BE0 -/* 80070BC8 7C A7 22 14 */ add r5, r7, r4 -/* 80070BCC A8 05 FF FA */ lha r0, -6(r5) -/* 80070BD0 7C 08 00 00 */ cmpw r8, r0 -/* 80070BD4 40 81 00 0C */ ble lbl_80070BE0 -/* 80070BD8 38 60 00 01 */ li r3, 1 -/* 80070BDC 4E 80 00 20 */ blr -lbl_80070BE0: -/* 80070BE0 38 84 FF FE */ addi r4, r4, -2 -/* 80070BE4 38 C6 FF FC */ addi r6, r6, -4 -/* 80070BE8 42 00 FF D4 */ bdnz lbl_80070BBC -/* 80070BEC 38 60 00 00 */ li r3, 0 -/* 80070BF0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/chkAttMask__12dAttention_cFUlUl.s b/asm/d/d_attention/chkAttMask__12dAttention_cFUlUl.s deleted file mode 100644 index 618998eae9e..00000000000 --- a/asm/d/d_attention/chkAttMask__12dAttention_cFUlUl.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80070A70: -/* 80070A70 38 60 00 00 */ li r3, 0 -/* 80070A74 80 0D 80 E0 */ lwz r0, loc_type_num__12dAttention_c(r13) -/* 80070A78 3C C0 80 3B */ lis r6, loc_type_tbl__12dAttention_c@ha /* 0x803A9BF8@ha */ -/* 80070A7C 38 C6 9B F8 */ addi r6, r6, loc_type_tbl__12dAttention_c@l /* 0x803A9BF8@l */ -/* 80070A80 7C 09 03 A6 */ mtctr r0 -/* 80070A84 2C 00 00 00 */ cmpwi r0, 0 -/* 80070A88 40 81 00 30 */ ble lbl_80070AB8 -lbl_80070A8C: -/* 80070A8C 7C 06 1A AE */ lhax r0, r6, r3 -/* 80070A90 7C 04 00 40 */ cmplw r4, r0 -/* 80070A94 40 82 00 1C */ bne lbl_80070AB0 -/* 80070A98 3C 80 80 3B */ lis r4, loc_type_tbl__12dAttention_c@ha /* 0x803A9BF8@ha */ -/* 80070A9C 38 04 9B F8 */ addi r0, r4, loc_type_tbl__12dAttention_c@l /* 0x803A9BF8@l */ -/* 80070AA0 7C 60 1A 14 */ add r3, r0, r3 -/* 80070AA4 A0 03 00 02 */ lhz r0, 2(r3) -/* 80070AA8 7C A3 00 38 */ and r3, r5, r0 -/* 80070AAC 4E 80 00 20 */ blr -lbl_80070AB0: -/* 80070AB0 38 63 00 04 */ addi r3, r3, 4 -/* 80070AB4 42 00 FF D8 */ bdnz lbl_80070A8C -lbl_80070AB8: -/* 80070AB8 38 60 00 01 */ li r3, 1 -/* 80070ABC 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/convPId__10dAttHint_cFUi.s b/asm/d/d_attention/convPId__10dAttHint_cFUi.s deleted file mode 100644 index 7cdf3779918..00000000000 --- a/asm/d/d_attention/convPId__10dAttHint_cFUi.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_800738CC: -/* 800738CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800738D0 7C 08 02 A6 */ mflr r0 -/* 800738D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800738D8 90 81 00 08 */ stw r4, 8(r1) -/* 800738DC 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 800738E0 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 800738E4 38 81 00 08 */ addi r4, r1, 8 -/* 800738E8 4B FA 5F 11 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 800738EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800738F0 7C 08 03 A6 */ mtlr r0 -/* 800738F4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800738F8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/convPId__10dAttLook_cFUi.s b/asm/d/d_attention/convPId__10dAttLook_cFUi.s deleted file mode 100644 index 41ea43ba110..00000000000 --- a/asm/d/d_attention/convPId__10dAttLook_cFUi.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80073CA4: -/* 80073CA4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073CA8 7C 08 02 A6 */ mflr r0 -/* 80073CAC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073CB0 90 81 00 08 */ stw r4, 8(r1) -/* 80073CB4 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 80073CB8 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 80073CBC 38 81 00 08 */ addi r4, r1, 8 -/* 80073CC0 4B FA 5B 39 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 80073CC4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80073CC8 7C 08 03 A6 */ mtlr r0 -/* 80073CCC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073CD0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/convPId__11dAttCatch_cFUi.s b/asm/d/d_attention/convPId__11dAttCatch_cFUi.s deleted file mode 100644 index 62535a9ac3b..00000000000 --- a/asm/d/d_attention/convPId__11dAttCatch_cFUi.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_8007398C: -/* 8007398C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073990 7C 08 02 A6 */ mflr r0 -/* 80073994 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073998 90 81 00 08 */ stw r4, 8(r1) -/* 8007399C 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 800739A0 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 800739A4 38 81 00 08 */ addi r4, r1, 8 -/* 800739A8 4B FA 5E 51 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 800739AC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800739B0 7C 08 03 A6 */ mtlr r0 -/* 800739B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800739B8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/freeAttention__12dAttention_cFv.s b/asm/d/d_attention/freeAttention__12dAttention_cFv.s deleted file mode 100644 index 70fede49abd..00000000000 --- a/asm/d/d_attention/freeAttention__12dAttention_cFv.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80071A68: -/* 80071A68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80071A6C 7C 08 02 A6 */ mflr r0 -/* 80071A70 90 01 00 14 */ stw r0, 0x14(r1) -/* 80071A74 38 00 FF FF */ li r0, -1 -/* 80071A78 90 03 00 04 */ stw r0, 4(r3) -/* 80071A7C 38 80 FF FF */ li r4, -1 -/* 80071A80 4B FF F7 C1 */ bl initList__12dAttention_cFUl -/* 80071A84 38 60 00 00 */ li r3, 0 -/* 80071A88 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80071A8C 7C 08 03 A6 */ mtlr r0 -/* 80071A90 38 21 00 10 */ addi r1, r1, 0x10 -/* 80071A94 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/func_80070018.s b/asm/d/d_attention/func_80070018.s deleted file mode 100644 index 61d1f69ee0a..00000000000 --- a/asm/d/d_attention/func_80070018.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80070018: -/* 80070018 54 64 30 32 */ slwi r4, r3, 6 -/* 8007001C 3C 60 80 3E */ lis r3, m_cpadInfo__8mDoCPd_c@ha /* 0x803DD2E8@ha */ -/* 80070020 38 03 D2 E8 */ addi r0, r3, m_cpadInfo__8mDoCPd_c@l /* 0x803DD2E8@l */ -/* 80070024 7C 60 22 14 */ add r3, r0, r4 -/* 80070028 88 63 00 39 */ lbz r3, 0x39(r3) -/* 8007002C 30 03 FF FF */ addic r0, r3, -1 -/* 80070030 7C 60 19 10 */ subfe r3, r0, r3 -/* 80070034 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/getActionBtnB__12dAttention_cFv.s b/asm/d/d_attention/getActionBtnB__12dAttention_cFv.s deleted file mode 100644 index bf10c5233c9..00000000000 --- a/asm/d/d_attention/getActionBtnB__12dAttention_cFv.s +++ /dev/null @@ -1,69 +0,0 @@ -lbl_80070880: -/* 80070880 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80070884 7C 08 02 A6 */ mflr r0 -/* 80070888 90 01 00 24 */ stw r0, 0x24(r1) -/* 8007088C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80070890 48 2F 19 49 */ bl _savegpr_28 -/* 80070894 7C 7C 1B 78 */ mr r28, r3 -/* 80070898 38 80 00 00 */ li r4, 0 -/* 8007089C 4B FF FF A9 */ bl GetLockonList__12dAttention_cFl -/* 800708A0 7C 7D 1B 79 */ or. r29, r3, r3 -/* 800708A4 41 82 00 48 */ beq lbl_800708EC -/* 800708A8 48 00 2F BD */ bl getActor__10dAttList_cFv -/* 800708AC 28 03 00 00 */ cmplwi r3, 0 -/* 800708B0 41 82 00 3C */ beq lbl_800708EC -/* 800708B4 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 800708B8 28 00 00 01 */ cmplwi r0, 1 -/* 800708BC 40 82 00 30 */ bne lbl_800708EC -/* 800708C0 7F 83 E3 78 */ mr r3, r28 -/* 800708C4 48 00 2F 21 */ bl LockonTruth__12dAttention_cFv -/* 800708C8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800708CC 41 82 00 20 */ beq lbl_800708EC -/* 800708D0 7F A3 EB 78 */ mr r3, r29 -/* 800708D4 48 00 2F 91 */ bl getActor__10dAttList_cFv -/* 800708D8 80 03 05 5C */ lwz r0, 0x55c(r3) -/* 800708DC 54 00 01 8D */ rlwinm. r0, r0, 0, 6, 6 -/* 800708E0 40 82 00 0C */ bne lbl_800708EC -/* 800708E4 7F A3 EB 78 */ mr r3, r29 -/* 800708E8 48 00 00 74 */ b lbl_8007095C -lbl_800708EC: -/* 800708EC 80 1C 04 30 */ lwz r0, 0x430(r28) -/* 800708F0 2C 00 00 00 */ cmpwi r0, 0 -/* 800708F4 40 82 00 0C */ bne lbl_80070900 -/* 800708F8 38 60 00 00 */ li r3, 0 -/* 800708FC 48 00 00 60 */ b lbl_8007095C -lbl_80070900: -/* 80070900 3B A0 00 00 */ li r29, 0 -/* 80070904 3B E0 00 00 */ li r31, 0 -/* 80070908 48 00 00 44 */ b lbl_8007094C -lbl_8007090C: -/* 8007090C 7C 7C FA 14 */ add r3, r28, r31 -/* 80070910 80 03 03 EC */ lwz r0, 0x3ec(r3) -/* 80070914 28 00 00 03 */ cmplwi r0, 3 -/* 80070918 40 82 00 24 */ bne lbl_8007093C -/* 8007091C 3B C3 03 E0 */ addi r30, r3, 0x3e0 -/* 80070920 7F C3 F3 78 */ mr r3, r30 -/* 80070924 48 00 2F 41 */ bl getActor__10dAttList_cFv -/* 80070928 80 03 05 5C */ lwz r0, 0x55c(r3) -/* 8007092C 54 00 01 8D */ rlwinm. r0, r0, 0, 6, 6 -/* 80070930 40 82 00 14 */ bne lbl_80070944 -/* 80070934 7F C3 F3 78 */ mr r3, r30 -/* 80070938 48 00 00 24 */ b lbl_8007095C -lbl_8007093C: -/* 8007093C 38 63 03 E0 */ addi r3, r3, 0x3e0 -/* 80070940 48 00 00 1C */ b lbl_8007095C -lbl_80070944: -/* 80070944 3B BD 00 01 */ addi r29, r29, 1 -/* 80070948 3B FF 00 14 */ addi r31, r31, 0x14 -lbl_8007094C: -/* 8007094C 80 1C 04 30 */ lwz r0, 0x430(r28) -/* 80070950 7C 1D 00 00 */ cmpw r29, r0 -/* 80070954 41 80 FF B8 */ blt lbl_8007090C -/* 80070958 38 60 00 00 */ li r3, 0 -lbl_8007095C: -/* 8007095C 39 61 00 20 */ addi r11, r1, 0x20 -/* 80070960 48 2F 18 C5 */ bl _restgpr_28 -/* 80070964 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80070968 7C 08 03 A6 */ mtlr r0 -/* 8007096C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80070970 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/getActionBtnXY__12dAttention_cFv.s b/asm/d/d_attention/getActionBtnXY__12dAttention_cFv.s deleted file mode 100644 index 7a236eae4ac..00000000000 --- a/asm/d/d_attention/getActionBtnXY__12dAttention_cFv.s +++ /dev/null @@ -1,71 +0,0 @@ -lbl_80070974: -/* 80070974 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80070978 7C 08 02 A6 */ mflr r0 -/* 8007097C 90 01 00 24 */ stw r0, 0x24(r1) -/* 80070980 39 61 00 20 */ addi r11, r1, 0x20 -/* 80070984 48 2F 18 55 */ bl _savegpr_28 -/* 80070988 7C 7C 1B 78 */ mr r28, r3 -/* 8007098C 38 80 00 00 */ li r4, 0 -/* 80070990 4B FF FE B5 */ bl GetLockonList__12dAttention_cFl -/* 80070994 7C 7D 1B 79 */ or. r29, r3, r3 -/* 80070998 41 82 00 54 */ beq lbl_800709EC -/* 8007099C 48 00 2E C9 */ bl getActor__10dAttList_cFv -/* 800709A0 28 03 00 00 */ cmplwi r3, 0 -/* 800709A4 41 82 00 48 */ beq lbl_800709EC -/* 800709A8 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 800709AC 28 00 00 01 */ cmplwi r0, 1 -/* 800709B0 40 82 00 3C */ bne lbl_800709EC -/* 800709B4 7F 83 E3 78 */ mr r3, r28 -/* 800709B8 48 00 2E 2D */ bl LockonTruth__12dAttention_cFv -/* 800709BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800709C0 41 82 00 2C */ beq lbl_800709EC -/* 800709C4 7F A3 EB 78 */ mr r3, r29 -/* 800709C8 48 00 2E 9D */ bl getActor__10dAttList_cFv -/* 800709CC A0 03 00 FA */ lhz r0, 0xfa(r3) -/* 800709D0 54 00 06 B4 */ rlwinm r0, r0, 0, 0x1a, 0x1a -/* 800709D4 2C 00 00 20 */ cmpwi r0, 0x20 -/* 800709D8 40 82 00 0C */ bne lbl_800709E4 -/* 800709DC 7F A3 EB 78 */ mr r3, r29 -/* 800709E0 48 00 00 78 */ b lbl_80070A58 -lbl_800709E4: -/* 800709E4 38 60 00 00 */ li r3, 0 -/* 800709E8 48 00 00 70 */ b lbl_80070A58 -lbl_800709EC: -/* 800709EC 80 1C 04 30 */ lwz r0, 0x430(r28) -/* 800709F0 2C 00 00 00 */ cmpwi r0, 0 -/* 800709F4 40 82 00 0C */ bne lbl_80070A00 -/* 800709F8 38 60 00 00 */ li r3, 0 -/* 800709FC 48 00 00 5C */ b lbl_80070A58 -lbl_80070A00: -/* 80070A00 3B A0 00 00 */ li r29, 0 -/* 80070A04 3B E0 00 00 */ li r31, 0 -/* 80070A08 48 00 00 40 */ b lbl_80070A48 -lbl_80070A0C: -/* 80070A0C 7C 7C FA 14 */ add r3, r28, r31 -/* 80070A10 80 03 03 EC */ lwz r0, 0x3ec(r3) -/* 80070A14 28 00 00 03 */ cmplwi r0, 3 -/* 80070A18 40 82 00 28 */ bne lbl_80070A40 -/* 80070A1C 3B C3 03 E0 */ addi r30, r3, 0x3e0 -/* 80070A20 7F C3 F3 78 */ mr r3, r30 -/* 80070A24 48 00 2E 41 */ bl getActor__10dAttList_cFv -/* 80070A28 A0 03 00 FA */ lhz r0, 0xfa(r3) -/* 80070A2C 54 00 06 B4 */ rlwinm r0, r0, 0, 0x1a, 0x1a -/* 80070A30 2C 00 00 20 */ cmpwi r0, 0x20 -/* 80070A34 40 82 00 0C */ bne lbl_80070A40 -/* 80070A38 7F C3 F3 78 */ mr r3, r30 -/* 80070A3C 48 00 00 1C */ b lbl_80070A58 -lbl_80070A40: -/* 80070A40 3B BD 00 01 */ addi r29, r29, 1 -/* 80070A44 3B FF 00 14 */ addi r31, r31, 0x14 -lbl_80070A48: -/* 80070A48 80 1C 04 30 */ lwz r0, 0x430(r28) -/* 80070A4C 7C 1D 00 00 */ cmpw r29, r0 -/* 80070A50 41 80 FF BC */ blt lbl_80070A0C -/* 80070A54 38 60 00 00 */ li r3, 0 -lbl_80070A58: -/* 80070A58 39 61 00 20 */ addi r11, r1, 0x20 -/* 80070A5C 48 2F 17 C9 */ bl _restgpr_28 -/* 80070A60 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80070A64 7C 08 03 A6 */ mtlr r0 -/* 80070A68 38 21 00 20 */ addi r1, r1, 0x20 -/* 80070A6C 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/getActor__10dAttList_cFv.s b/asm/d/d_attention/getActor__10dAttList_cFv.s deleted file mode 100644 index 24b7acdaa7d..00000000000 --- a/asm/d/d_attention/getActor__10dAttList_cFv.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_80073864: -/* 80073864 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073868 7C 08 02 A6 */ mflr r0 -/* 8007386C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073870 80 03 00 10 */ lwz r0, 0x10(r3) -/* 80073874 90 01 00 08 */ stw r0, 8(r1) -/* 80073878 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 8007387C 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 80073880 38 81 00 08 */ addi r4, r1, 8 -/* 80073884 4B FA 5F 75 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 80073888 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8007388C 7C 08 03 A6 */ mtlr r0 -/* 80073890 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073894 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/getPId__10dAttHint_cFPv.s b/asm/d/d_attention/getPId__10dAttHint_cFPv.s deleted file mode 100644 index 0916ea26f03..00000000000 --- a/asm/d/d_attention/getPId__10dAttHint_cFPv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_800738B4: -/* 800738B4 28 04 00 00 */ cmplwi r4, 0 -/* 800738B8 41 82 00 0C */ beq lbl_800738C4 -/* 800738BC 80 64 00 04 */ lwz r3, 4(r4) -/* 800738C0 4E 80 00 20 */ blr -lbl_800738C4: -/* 800738C4 38 60 FF FF */ li r3, -1 -/* 800738C8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/init__10dAttHint_cFv.s b/asm/d/d_attention/init__10dAttHint_cFv.s deleted file mode 100644 index bec7ea59b61..00000000000 --- a/asm/d/d_attention/init__10dAttHint_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80073958: -/* 80073958 38 00 FF FF */ li r0, -1 -/* 8007395C 90 03 00 00 */ stw r0, 0(r3) -/* 80073960 90 03 00 08 */ stw r0, 8(r3) -/* 80073964 38 00 02 00 */ li r0, 0x200 -/* 80073968 90 03 00 04 */ stw r0, 4(r3) -/* 8007396C 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/init__10dAttLook_cFv.s b/asm/d/d_attention/init__10dAttLook_cFv.s deleted file mode 100644 index 183f84e5071..00000000000 --- a/asm/d/d_attention/init__10dAttLook_cFv.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80073CD4: -/* 80073CD4 38 00 FF FF */ li r0, -1 -/* 80073CD8 90 03 00 00 */ stw r0, 0(r3) -/* 80073CDC 90 03 00 0C */ stw r0, 0xc(r3) -/* 80073CE0 38 00 00 03 */ li r0, 3 -/* 80073CE4 90 03 00 04 */ stw r0, 4(r3) -/* 80073CE8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/init__11dAttCatch_cFv.s b/asm/d/d_attention/init__11dAttCatch_cFv.s deleted file mode 100644 index 4e8cc299353..00000000000 --- a/asm/d/d_attention/init__11dAttCatch_cFv.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_800739BC: -/* 800739BC 38 00 00 67 */ li r0, 0x67 -/* 800739C0 98 03 00 0C */ stb r0, 0xc(r3) -/* 800739C4 38 00 FF FF */ li r0, -1 -/* 800739C8 90 03 00 00 */ stw r0, 0(r3) -/* 800739CC 90 03 00 10 */ stw r0, 0x10(r3) -/* 800739D0 38 00 00 03 */ li r0, 3 -/* 800739D4 90 03 00 04 */ stw r0, 4(r3) -/* 800739D8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/judgementStatus4Hold__12dAttention_cFv.s b/asm/d/d_attention/judgementStatus4Hold__12dAttention_cFv.s deleted file mode 100644 index 216dbe9184f..00000000000 --- a/asm/d/d_attention/judgementStatus4Hold__12dAttention_cFv.s +++ /dev/null @@ -1,188 +0,0 @@ -lbl_80072344: -/* 80072344 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80072348 7C 08 02 A6 */ mflr r0 -/* 8007234C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80072350 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80072354 7C 7F 1B 78 */ mr r31, r3 -/* 80072358 88 03 03 29 */ lbz r0, 0x329(r3) -/* 8007235C 2C 00 00 01 */ cmpwi r0, 1 -/* 80072360 41 82 00 68 */ beq lbl_800723C8 -/* 80072364 40 80 00 10 */ bge lbl_80072374 -/* 80072368 2C 00 00 00 */ cmpwi r0, 0 -/* 8007236C 40 80 00 14 */ bge lbl_80072380 -/* 80072370 48 00 02 34 */ b lbl_800725A4 -lbl_80072374: -/* 80072374 2C 00 00 03 */ cmpwi r0, 3 -/* 80072378 40 80 02 2C */ bge lbl_800725A4 -/* 8007237C 48 00 01 30 */ b lbl_800724AC -lbl_80072380: -/* 80072380 38 00 00 00 */ li r0, 0 -/* 80072384 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 80072388 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 8007238C 38 00 FF FF */ li r0, -1 -/* 80072390 90 1F 00 04 */ stw r0, 4(r31) -/* 80072394 4B FF F5 11 */ bl stockAttention__12dAttention_cFv -/* 80072398 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 8007239C 28 00 00 00 */ cmplwi r0, 0 -/* 800723A0 40 82 02 04 */ bne lbl_800725A4 -/* 800723A4 7F E3 FB 78 */ mr r3, r31 -/* 800723A8 4B FF FE F9 */ bl triggerProc__12dAttention_cFv -/* 800723AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800723B0 41 82 01 F4 */ beq lbl_800725A4 -/* 800723B4 38 00 00 01 */ li r0, 1 -/* 800723B8 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800723BC 38 00 00 0F */ li r0, 0xf -/* 800723C0 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 800723C4 48 00 01 E0 */ b lbl_800725A4 -lbl_800723C8: -/* 800723C8 38 80 00 00 */ li r4, 0 -/* 800723CC 48 00 13 01 */ bl LockonTargetPId__12dAttention_cFl -/* 800723D0 90 7F 00 04 */ stw r3, 4(r31) -/* 800723D4 38 00 00 00 */ li r0, 0 -/* 800723D8 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 800723DC 7F E3 FB 78 */ mr r3, r31 -/* 800723E0 4B FF FF 0D */ bl lostCheck__12dAttention_cFv -/* 800723E4 2C 03 00 00 */ cmpwi r3, 0 -/* 800723E8 41 82 00 50 */ beq lbl_80072438 -/* 800723EC 38 00 FF FF */ li r0, -1 -/* 800723F0 90 1F 00 04 */ stw r0, 4(r31) -/* 800723F4 7F E3 FB 78 */ mr r3, r31 -/* 800723F8 4B FF F4 AD */ bl stockAttention__12dAttention_cFv -/* 800723FC 7F E3 FB 78 */ mr r3, r31 -/* 80072400 4B FF FE A1 */ bl triggerProc__12dAttention_cFv -/* 80072404 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072408 41 82 00 10 */ beq lbl_80072418 -/* 8007240C 38 00 00 01 */ li r0, 1 -/* 80072410 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072414 48 00 00 80 */ b lbl_80072494 -lbl_80072418: -/* 80072418 38 00 00 00 */ li r0, 0 -/* 8007241C 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072420 7F E3 FB 78 */ mr r3, r31 -/* 80072424 4B FF F6 45 */ bl freeAttention__12dAttention_cFv -/* 80072428 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 8007242C 64 00 00 80 */ oris r0, r0, 0x80 -/* 80072430 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072434 48 00 00 60 */ b lbl_80072494 -lbl_80072438: -/* 80072438 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 8007243C 28 00 00 04 */ cmplwi r0, 4 -/* 80072440 40 82 00 24 */ bne lbl_80072464 -/* 80072444 38 00 00 02 */ li r0, 2 -/* 80072448 98 1F 03 29 */ stb r0, 0x329(r31) -/* 8007244C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072450 60 00 00 10 */ ori r0, r0, 0x10 -/* 80072454 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072458 38 00 00 0A */ li r0, 0xa -/* 8007245C 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 80072460 48 00 00 34 */ b lbl_80072494 -lbl_80072464: -/* 80072464 88 1F 03 2E */ lbz r0, 0x32e(r31) -/* 80072468 28 00 00 00 */ cmplwi r0, 0 -/* 8007246C 40 82 00 28 */ bne lbl_80072494 -/* 80072470 7F E3 FB 78 */ mr r3, r31 -/* 80072474 38 80 FF FF */ li r4, -1 -/* 80072478 4B FF ED C9 */ bl initList__12dAttention_cFUl -/* 8007247C 7F E3 FB 78 */ mr r3, r31 -/* 80072480 4B FF EF 4D */ bl makeList__12dAttention_cFv -/* 80072484 2C 03 00 00 */ cmpwi r3, 0 -/* 80072488 41 82 00 0C */ beq lbl_80072494 -/* 8007248C 7F E3 FB 78 */ mr r3, r31 -/* 80072490 4B FF F2 29 */ bl sortList__12dAttention_cFv -lbl_80072494: -/* 80072494 88 7F 03 2E */ lbz r3, 0x32e(r31) -/* 80072498 28 03 00 00 */ cmplwi r3, 0 -/* 8007249C 41 82 01 08 */ beq lbl_800725A4 -/* 800724A0 38 03 FF FF */ addi r0, r3, -1 -/* 800724A4 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 800724A8 48 00 00 FC */ b lbl_800725A4 -lbl_800724AC: -/* 800724AC 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800724B0 60 00 00 40 */ ori r0, r0, 0x40 -/* 800724B4 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800724B8 4B FF FE 35 */ bl lostCheck__12dAttention_cFv -/* 800724BC 2C 03 00 00 */ cmpwi r3, 0 -/* 800724C0 41 82 00 50 */ beq lbl_80072510 -/* 800724C4 38 00 FF FF */ li r0, -1 -/* 800724C8 90 1F 00 04 */ stw r0, 4(r31) -/* 800724CC 7F E3 FB 78 */ mr r3, r31 -/* 800724D0 4B FF F3 D5 */ bl stockAttention__12dAttention_cFv -/* 800724D4 7F E3 FB 78 */ mr r3, r31 -/* 800724D8 4B FF FD C9 */ bl triggerProc__12dAttention_cFv -/* 800724DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800724E0 41 82 00 10 */ beq lbl_800724F0 -/* 800724E4 38 00 00 01 */ li r0, 1 -/* 800724E8 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800724EC 48 00 00 A4 */ b lbl_80072590 -lbl_800724F0: -/* 800724F0 38 00 00 00 */ li r0, 0 -/* 800724F4 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800724F8 7F E3 FB 78 */ mr r3, r31 -/* 800724FC 4B FF F5 6D */ bl freeAttention__12dAttention_cFv -/* 80072500 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072504 64 00 00 80 */ oris r0, r0, 0x80 -/* 80072508 90 1F 03 34 */ stw r0, 0x334(r31) -/* 8007250C 48 00 00 84 */ b lbl_80072590 -lbl_80072510: -/* 80072510 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 80072514 28 00 00 00 */ cmplwi r0, 0 -/* 80072518 40 82 00 48 */ bne lbl_80072560 -/* 8007251C 7F E3 FB 78 */ mr r3, r31 -/* 80072520 4B FF F4 41 */ bl nextAttention__12dAttention_cFv -/* 80072524 28 03 00 00 */ cmplwi r3, 0 -/* 80072528 41 82 00 24 */ beq lbl_8007254C -/* 8007252C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072530 60 00 00 08 */ ori r0, r0, 8 -/* 80072534 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072538 38 00 00 01 */ li r0, 1 -/* 8007253C 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072540 38 00 00 0F */ li r0, 0xf -/* 80072544 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 80072548 48 00 00 48 */ b lbl_80072590 -lbl_8007254C: -/* 8007254C 38 00 00 00 */ li r0, 0 -/* 80072550 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072554 7F E3 FB 78 */ mr r3, r31 -/* 80072558 4B FF F5 11 */ bl freeAttention__12dAttention_cFv -/* 8007255C 48 00 00 34 */ b lbl_80072590 -lbl_80072560: -/* 80072560 7F E3 FB 78 */ mr r3, r31 -/* 80072564 38 80 00 00 */ li r4, 0 -/* 80072568 48 00 0F D5 */ bl LockonTarget__12dAttention_cFl -/* 8007256C 28 03 00 00 */ cmplwi r3, 0 -/* 80072570 41 82 00 10 */ beq lbl_80072580 -/* 80072574 88 1F 03 2F */ lbz r0, 0x32f(r31) -/* 80072578 28 00 00 00 */ cmplwi r0, 0 -/* 8007257C 40 82 00 14 */ bne lbl_80072590 -lbl_80072580: -/* 80072580 38 00 00 00 */ li r0, 0 -/* 80072584 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072588 7F E3 FB 78 */ mr r3, r31 -/* 8007258C 4B FF F4 DD */ bl freeAttention__12dAttention_cFv -lbl_80072590: -/* 80072590 88 7F 03 2F */ lbz r3, 0x32f(r31) -/* 80072594 28 03 00 00 */ cmplwi r3, 0 -/* 80072598 41 82 00 0C */ beq lbl_800725A4 -/* 8007259C 38 03 FF FF */ addi r0, r3, -1 -/* 800725A0 98 1F 03 2F */ stb r0, 0x32f(r31) -lbl_800725A4: -/* 800725A4 80 7F 03 34 */ lwz r3, 0x334(r31) -/* 800725A8 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 -/* 800725AC 40 82 00 30 */ bne lbl_800725DC -/* 800725B0 60 60 40 00 */ ori r0, r3, 0x4000 -/* 800725B4 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800725B8 7F E3 FB 78 */ mr r3, r31 -/* 800725BC 38 80 FF FF */ li r4, -1 -/* 800725C0 4B FF EC 81 */ bl initList__12dAttention_cFUl -/* 800725C4 7F E3 FB 78 */ mr r3, r31 -/* 800725C8 4B FF EE 05 */ bl makeList__12dAttention_cFv -/* 800725CC 2C 03 00 00 */ cmpwi r3, 0 -/* 800725D0 41 82 00 0C */ beq lbl_800725DC -/* 800725D4 7F E3 FB 78 */ mr r3, r31 -/* 800725D8 4B FF F0 E1 */ bl sortList__12dAttention_cFv -lbl_800725DC: -/* 800725DC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800725E0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800725E4 7C 08 03 A6 */ mtlr r0 -/* 800725E8 38 21 00 10 */ addi r1, r1, 0x10 -/* 800725EC 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/judgementStatus4Switch__12dAttention_cFv.s b/asm/d/d_attention/judgementStatus4Switch__12dAttention_cFv.s deleted file mode 100644 index 451fa944aa6..00000000000 --- a/asm/d/d_attention/judgementStatus4Switch__12dAttention_cFv.s +++ /dev/null @@ -1,225 +0,0 @@ -lbl_800725F0: -/* 800725F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800725F4 7C 08 02 A6 */ mflr r0 -/* 800725F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800725FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80072600 7C 7F 1B 78 */ mr r31, r3 -/* 80072604 88 03 03 29 */ lbz r0, 0x329(r3) -/* 80072608 2C 00 00 01 */ cmpwi r0, 1 -/* 8007260C 41 82 00 6C */ beq lbl_80072678 -/* 80072610 40 80 00 10 */ bge lbl_80072620 -/* 80072614 2C 00 00 00 */ cmpwi r0, 0 -/* 80072618 40 80 00 14 */ bge lbl_8007262C -/* 8007261C 48 00 02 BC */ b lbl_800728D8 -lbl_80072620: -/* 80072620 2C 00 00 03 */ cmpwi r0, 3 -/* 80072624 40 80 02 B4 */ bge lbl_800728D8 -/* 80072628 48 00 01 E0 */ b lbl_80072808 -lbl_8007262C: -/* 8007262C 38 00 FF FF */ li r0, -1 -/* 80072630 90 1F 00 04 */ stw r0, 4(r31) -/* 80072634 4B FF F2 71 */ bl stockAttention__12dAttention_cFv -/* 80072638 38 00 00 00 */ li r0, 0 -/* 8007263C 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 80072640 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 80072644 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 80072648 28 00 00 00 */ cmplwi r0, 0 -/* 8007264C 40 82 02 8C */ bne lbl_800728D8 -/* 80072650 7F E3 FB 78 */ mr r3, r31 -/* 80072654 4B FF FC 4D */ bl triggerProc__12dAttention_cFv -/* 80072658 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8007265C 41 82 02 7C */ beq lbl_800728D8 -/* 80072660 38 00 00 01 */ li r0, 1 -/* 80072664 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072668 38 00 00 0F */ li r0, 0xf -/* 8007266C 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 80072670 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 80072674 48 00 02 64 */ b lbl_800728D8 -lbl_80072678: -/* 80072678 38 80 00 00 */ li r4, 0 -/* 8007267C 48 00 10 51 */ bl LockonTargetPId__12dAttention_cFl -/* 80072680 90 7F 00 04 */ stw r3, 4(r31) -/* 80072684 88 1F 03 2F */ lbz r0, 0x32f(r31) -/* 80072688 28 00 00 00 */ cmplwi r0, 0 -/* 8007268C 40 82 00 18 */ bne lbl_800726A4 -/* 80072690 38 00 00 00 */ li r0, 0 -/* 80072694 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072698 7F E3 FB 78 */ mr r3, r31 -/* 8007269C 4B FF F3 CD */ bl freeAttention__12dAttention_cFv -/* 800726A0 48 00 01 18 */ b lbl_800727B8 -lbl_800726A4: -/* 800726A4 7F E3 FB 78 */ mr r3, r31 -/* 800726A8 4B FF FC 45 */ bl lostCheck__12dAttention_cFv -/* 800726AC 2C 03 00 00 */ cmpwi r3, 0 -/* 800726B0 41 82 00 50 */ beq lbl_80072700 -/* 800726B4 38 00 FF FF */ li r0, -1 -/* 800726B8 90 1F 00 04 */ stw r0, 4(r31) -/* 800726BC 7F E3 FB 78 */ mr r3, r31 -/* 800726C0 4B FF F1 E5 */ bl stockAttention__12dAttention_cFv -/* 800726C4 7F E3 FB 78 */ mr r3, r31 -/* 800726C8 4B FF FB D9 */ bl triggerProc__12dAttention_cFv -/* 800726CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800726D0 41 82 00 10 */ beq lbl_800726E0 -/* 800726D4 38 00 00 01 */ li r0, 1 -/* 800726D8 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800726DC 48 00 00 DC */ b lbl_800727B8 -lbl_800726E0: -/* 800726E0 38 00 00 00 */ li r0, 0 -/* 800726E4 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800726E8 7F E3 FB 78 */ mr r3, r31 -/* 800726EC 4B FF F3 7D */ bl freeAttention__12dAttention_cFv -/* 800726F0 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800726F4 64 00 00 80 */ oris r0, r0, 0x80 -/* 800726F8 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800726FC 48 00 00 BC */ b lbl_800727B8 -lbl_80072700: -/* 80072700 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 80072704 28 00 00 00 */ cmplwi r0, 0 -/* 80072708 40 82 00 80 */ bne lbl_80072788 -/* 8007270C 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 80072710 54 04 30 32 */ slwi r4, r0, 6 -/* 80072714 3C 60 80 3E */ lis r3, m_cpadInfo__8mDoCPd_c@ha /* 0x803DD2E8@ha */ -/* 80072718 38 03 D2 E8 */ addi r0, r3, m_cpadInfo__8mDoCPd_c@l /* 0x803DD2E8@l */ -/* 8007271C 7C 60 22 14 */ add r3, r0, r4 -/* 80072720 C0 23 00 04 */ lfs f1, 4(r3) -/* 80072724 C0 02 8C 34 */ lfs f0, lit_4064(r2) -/* 80072728 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8007272C 40 80 00 18 */ bge lbl_80072744 -/* 80072730 38 00 00 00 */ li r0, 0 -/* 80072734 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072738 7F E3 FB 78 */ mr r3, r31 -/* 8007273C 4B FF F3 2D */ bl freeAttention__12dAttention_cFv -/* 80072740 48 00 00 78 */ b lbl_800727B8 -lbl_80072744: -/* 80072744 7F E3 FB 78 */ mr r3, r31 -/* 80072748 4B FF F2 19 */ bl nextAttention__12dAttention_cFv -/* 8007274C 28 03 00 00 */ cmplwi r3, 0 -/* 80072750 41 82 00 24 */ beq lbl_80072774 -/* 80072754 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072758 60 00 00 08 */ ori r0, r0, 8 -/* 8007275C 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072760 38 00 00 01 */ li r0, 1 -/* 80072764 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072768 38 00 00 0F */ li r0, 0xf -/* 8007276C 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 80072770 48 00 00 48 */ b lbl_800727B8 -lbl_80072774: -/* 80072774 38 00 00 00 */ li r0, 0 -/* 80072778 98 1F 03 29 */ stb r0, 0x329(r31) -/* 8007277C 7F E3 FB 78 */ mr r3, r31 -/* 80072780 4B FF F2 E9 */ bl freeAttention__12dAttention_cFv -/* 80072784 48 00 00 34 */ b lbl_800727B8 -lbl_80072788: -/* 80072788 88 1F 03 2E */ lbz r0, 0x32e(r31) -/* 8007278C 28 00 00 00 */ cmplwi r0, 0 -/* 80072790 40 82 00 28 */ bne lbl_800727B8 -/* 80072794 7F E3 FB 78 */ mr r3, r31 -/* 80072798 38 80 FF FF */ li r4, -1 -/* 8007279C 4B FF EA A5 */ bl initList__12dAttention_cFUl -/* 800727A0 7F E3 FB 78 */ mr r3, r31 -/* 800727A4 4B FF EC 29 */ bl makeList__12dAttention_cFv -/* 800727A8 2C 03 00 00 */ cmpwi r3, 0 -/* 800727AC 41 82 00 0C */ beq lbl_800727B8 -/* 800727B0 7F E3 FB 78 */ mr r3, r31 -/* 800727B4 4B FF EF 05 */ bl sortList__12dAttention_cFv -lbl_800727B8: -/* 800727B8 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800727BC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c -/* 800727C0 40 82 00 18 */ bne lbl_800727D8 -/* 800727C4 88 7F 03 2E */ lbz r3, 0x32e(r31) -/* 800727C8 28 03 00 00 */ cmplwi r3, 0 -/* 800727CC 41 82 00 0C */ beq lbl_800727D8 -/* 800727D0 38 03 FF FF */ addi r0, r3, -1 -/* 800727D4 98 1F 03 2E */ stb r0, 0x32e(r31) -lbl_800727D8: -/* 800727D8 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 800727DC 28 00 00 01 */ cmplwi r0, 1 -/* 800727E0 40 82 00 1C */ bne lbl_800727FC -/* 800727E4 88 7F 03 2F */ lbz r3, 0x32f(r31) -/* 800727E8 28 03 00 00 */ cmplwi r3, 0 -/* 800727EC 41 82 00 EC */ beq lbl_800728D8 -/* 800727F0 38 03 FF FF */ addi r0, r3, -1 -/* 800727F4 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 800727F8 48 00 00 E0 */ b lbl_800728D8 -lbl_800727FC: -/* 800727FC 38 00 00 0F */ li r0, 0xf -/* 80072800 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 80072804 48 00 00 D4 */ b lbl_800728D8 -lbl_80072808: -/* 80072808 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 8007280C 60 00 00 40 */ ori r0, r0, 0x40 -/* 80072810 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072814 4B FF FA D9 */ bl lostCheck__12dAttention_cFv -/* 80072818 2C 03 00 00 */ cmpwi r3, 0 -/* 8007281C 41 82 00 50 */ beq lbl_8007286C -/* 80072820 38 00 FF FF */ li r0, -1 -/* 80072824 90 1F 00 04 */ stw r0, 4(r31) -/* 80072828 7F E3 FB 78 */ mr r3, r31 -/* 8007282C 4B FF F0 79 */ bl stockAttention__12dAttention_cFv -/* 80072830 7F E3 FB 78 */ mr r3, r31 -/* 80072834 4B FF FA 6D */ bl triggerProc__12dAttention_cFv -/* 80072838 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8007283C 41 82 00 10 */ beq lbl_8007284C -/* 80072840 38 00 00 01 */ li r0, 1 -/* 80072844 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072848 48 00 00 90 */ b lbl_800728D8 -lbl_8007284C: -/* 8007284C 38 00 00 00 */ li r0, 0 -/* 80072850 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072854 7F E3 FB 78 */ mr r3, r31 -/* 80072858 4B FF F2 11 */ bl freeAttention__12dAttention_cFv -/* 8007285C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072860 64 00 00 80 */ oris r0, r0, 0x80 -/* 80072864 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072868 48 00 00 70 */ b lbl_800728D8 -lbl_8007286C: -/* 8007286C 88 1F 03 2B */ lbz r0, 0x32b(r31) -/* 80072870 28 00 00 00 */ cmplwi r0, 0 -/* 80072874 40 82 00 34 */ bne lbl_800728A8 -/* 80072878 38 00 00 00 */ li r0, 0 -/* 8007287C 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072880 7F E3 FB 78 */ mr r3, r31 -/* 80072884 4B FF FA 1D */ bl triggerProc__12dAttention_cFv -/* 80072888 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8007288C 41 82 00 4C */ beq lbl_800728D8 -/* 80072890 38 00 00 01 */ li r0, 1 -/* 80072894 98 1F 03 29 */ stb r0, 0x329(r31) -/* 80072898 38 00 00 0F */ li r0, 0xf -/* 8007289C 98 1F 03 2E */ stb r0, 0x32e(r31) -/* 800728A0 98 1F 03 2F */ stb r0, 0x32f(r31) -/* 800728A4 48 00 00 34 */ b lbl_800728D8 -lbl_800728A8: -/* 800728A8 7F E3 FB 78 */ mr r3, r31 -/* 800728AC 38 80 00 00 */ li r4, 0 -/* 800728B0 48 00 0C 8D */ bl LockonTarget__12dAttention_cFl -/* 800728B4 28 03 00 00 */ cmplwi r3, 0 -/* 800728B8 41 82 00 10 */ beq lbl_800728C8 -/* 800728BC 88 1F 03 2F */ lbz r0, 0x32f(r31) -/* 800728C0 28 00 00 00 */ cmplwi r0, 0 -/* 800728C4 40 82 00 14 */ bne lbl_800728D8 -lbl_800728C8: -/* 800728C8 38 00 00 00 */ li r0, 0 -/* 800728CC 98 1F 03 29 */ stb r0, 0x329(r31) -/* 800728D0 7F E3 FB 78 */ mr r3, r31 -/* 800728D4 4B FF F1 95 */ bl freeAttention__12dAttention_cFv -lbl_800728D8: -/* 800728D8 80 7F 03 34 */ lwz r3, 0x334(r31) -/* 800728DC 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 -/* 800728E0 40 82 00 30 */ bne lbl_80072910 -/* 800728E4 60 60 40 00 */ ori r0, r3, 0x4000 -/* 800728E8 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800728EC 7F E3 FB 78 */ mr r3, r31 -/* 800728F0 38 80 FF FF */ li r4, -1 -/* 800728F4 4B FF E9 4D */ bl initList__12dAttention_cFUl -/* 800728F8 7F E3 FB 78 */ mr r3, r31 -/* 800728FC 4B FF EA D1 */ bl makeList__12dAttention_cFv -/* 80072900 2C 03 00 00 */ cmpwi r3, 0 -/* 80072904 41 82 00 0C */ beq lbl_80072910 -/* 80072908 7F E3 FB 78 */ mr r3, r31 -/* 8007290C 4B FF ED AD */ bl sortList__12dAttention_cFv -lbl_80072910: -/* 80072910 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80072914 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80072918 7C 08 03 A6 */ mtlr r0 -/* 8007291C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80072920 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/lostCheck__12dAttention_cFv.s b/asm/d/d_attention/lostCheck__12dAttention_cFv.s deleted file mode 100644 index 27227559bd1..00000000000 --- a/asm/d/d_attention/lostCheck__12dAttention_cFv.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_800722EC: -/* 800722EC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800722F0 7C 08 02 A6 */ mflr r0 -/* 800722F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800722F8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800722FC 7C 7F 1B 78 */ mr r31, r3 -/* 80072300 4B FF F7 99 */ bl chaseAttention__12dAttention_cFv -/* 80072304 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80072308 41 82 00 0C */ beq lbl_80072314 -/* 8007230C 38 60 00 00 */ li r3, 0 -/* 80072310 48 00 00 20 */ b lbl_80072330 -lbl_80072314: -/* 80072314 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072318 60 00 00 10 */ ori r0, r0, 0x10 -/* 8007231C 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072320 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072324 60 00 00 40 */ ori r0, r0, 0x40 -/* 80072328 90 1F 03 34 */ stw r0, 0x334(r31) -/* 8007232C 38 60 00 01 */ li r3, 1 -lbl_80072330: -/* 80072330 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80072334 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80072338 7C 08 03 A6 */ mtlr r0 -/* 8007233C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80072340 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/makeList__12dAttention_cFv.s b/asm/d/d_attention/makeList__12dAttention_cFv.s deleted file mode 100644 index 07c79476384..00000000000 --- a/asm/d/d_attention/makeList__12dAttention_cFv.s +++ /dev/null @@ -1,23 +0,0 @@ -lbl_800713CC: -/* 800713CC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800713D0 7C 08 02 A6 */ mflr r0 -/* 800713D4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800713D8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800713DC 7C 7F 1B 78 */ mr r31, r3 -/* 800713E0 3C 60 80 07 */ lis r3, select_attention__FP10fopAc_ac_cPv@ha /* 0x8007138C@ha */ -/* 800713E4 38 63 13 8C */ addi r3, r3, select_attention__FP10fopAc_ac_cPv@l /* 0x8007138C@l */ -/* 800713E8 7F E4 FB 78 */ mr r4, r31 -/* 800713EC 4B FA 83 D1 */ bl fopAcIt_Executor__FPFPvPv_iPv -/* 800713F0 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800713F4 60 00 20 00 */ ori r0, r0, 0x2000 -/* 800713F8 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800713FC 80 7F 04 88 */ lwz r3, 0x488(r31) -/* 80071400 80 9F 03 D8 */ lwz r4, 0x3d8(r31) -/* 80071404 80 1F 04 30 */ lwz r0, 0x430(r31) -/* 80071408 7C 60 1A 14 */ add r3, r0, r3 -/* 8007140C 7C 64 1A 14 */ add r3, r4, r3 -/* 80071410 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80071414 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80071418 7C 08 03 A6 */ mtlr r0 -/* 8007141C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80071420 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/nextAttention__12dAttention_cFv.s b/asm/d/d_attention/nextAttention__12dAttention_cFv.s deleted file mode 100644 index a358058ba45..00000000000 --- a/asm/d/d_attention/nextAttention__12dAttention_cFv.s +++ /dev/null @@ -1,73 +0,0 @@ -lbl_80071960: -/* 80071960 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80071964 7C 08 02 A6 */ mflr r0 -/* 80071968 90 01 00 24 */ stw r0, 0x24(r1) -/* 8007196C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80071970 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80071974 7C 7E 1B 78 */ mr r30, r3 -/* 80071978 88 0D 80 F0 */ lbz r0, data_80450670(r13) -/* 8007197C 28 00 00 00 */ cmplwi r0, 0 -/* 80071980 40 82 00 20 */ bne lbl_800719A0 -/* 80071984 80 1E 03 D8 */ lwz r0, 0x3d8(r30) -/* 80071988 2C 00 00 01 */ cmpwi r0, 1 -/* 8007198C 40 82 00 14 */ bne lbl_800719A0 -/* 80071990 38 00 00 00 */ li r0, 0 -/* 80071994 98 1E 03 2E */ stb r0, 0x32e(r30) -/* 80071998 38 60 00 00 */ li r3, 0 -/* 8007199C 48 00 00 B4 */ b lbl_80071A50 -lbl_800719A0: -/* 800719A0 88 1E 03 2E */ lbz r0, 0x32e(r30) -/* 800719A4 28 00 00 00 */ cmplwi r0, 0 -/* 800719A8 41 82 00 38 */ beq lbl_800719E0 -/* 800719AC 80 7E 03 DC */ lwz r3, 0x3dc(r30) -/* 800719B0 38 03 00 01 */ addi r0, r3, 1 -/* 800719B4 90 1E 03 DC */ stw r0, 0x3dc(r30) -/* 800719B8 80 7E 03 DC */ lwz r3, 0x3dc(r30) -/* 800719BC 80 1E 03 D8 */ lwz r0, 0x3d8(r30) -/* 800719C0 7C 03 00 00 */ cmpw r3, r0 -/* 800719C4 41 80 00 0C */ blt lbl_800719D0 -/* 800719C8 38 00 00 00 */ li r0, 0 -/* 800719CC 90 1E 03 DC */ stw r0, 0x3dc(r30) -lbl_800719D0: -/* 800719D0 7F C3 F3 78 */ mr r3, r30 -/* 800719D4 38 80 00 00 */ li r4, 0 -/* 800719D8 48 00 1B 65 */ bl LockonTarget__12dAttention_cFl -/* 800719DC 48 00 00 74 */ b lbl_80071A50 -lbl_800719E0: -/* 800719E0 80 1E 00 04 */ lwz r0, 4(r30) -/* 800719E4 90 01 00 08 */ stw r0, 8(r1) -/* 800719E8 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 800719EC 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 800719F0 38 81 00 08 */ addi r4, r1, 8 -/* 800719F4 4B FA 7E 05 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 800719F8 7C 7F 1B 78 */ mr r31, r3 -/* 800719FC 7F C3 F3 78 */ mr r3, r30 -/* 80071A00 38 80 FF FF */ li r4, -1 -/* 80071A04 4B FF F8 3D */ bl initList__12dAttention_cFUl -/* 80071A08 7F C3 F3 78 */ mr r3, r30 -/* 80071A0C 4B FF F9 C1 */ bl makeList__12dAttention_cFv -/* 80071A10 2C 03 00 00 */ cmpwi r3, 0 -/* 80071A14 41 82 00 0C */ beq lbl_80071A20 -/* 80071A18 7F C3 F3 78 */ mr r3, r30 -/* 80071A1C 4B FF FC 9D */ bl sortList__12dAttention_cFv -lbl_80071A20: -/* 80071A20 38 7E 03 38 */ addi r3, r30, 0x338 -/* 80071A24 48 00 1E 41 */ bl getActor__10dAttList_cFv -/* 80071A28 7C 1F 18 40 */ cmplw r31, r3 -/* 80071A2C 40 82 00 18 */ bne lbl_80071A44 -/* 80071A30 80 1E 03 D8 */ lwz r0, 0x3d8(r30) -/* 80071A34 2C 00 00 01 */ cmpwi r0, 1 -/* 80071A38 40 81 00 0C */ ble lbl_80071A44 -/* 80071A3C 38 00 00 01 */ li r0, 1 -/* 80071A40 90 1E 03 DC */ stw r0, 0x3dc(r30) -lbl_80071A44: -/* 80071A44 7F C3 F3 78 */ mr r3, r30 -/* 80071A48 38 80 00 00 */ li r4, 0 -/* 80071A4C 48 00 1A F1 */ bl LockonTarget__12dAttention_cFl -lbl_80071A50: -/* 80071A50 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80071A54 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 80071A58 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80071A5C 7C 08 03 A6 */ mtlr r0 -/* 80071A60 38 21 00 20 */ addi r1, r1, 0x20 -/* 80071A64 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/proc__10dAttHint_cFv.s b/asm/d/d_attention/proc__10dAttHint_cFv.s deleted file mode 100644 index 0fdaf963fcc..00000000000 --- a/asm/d/d_attention/proc__10dAttHint_cFv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80073970: -/* 80073970 80 03 00 00 */ lwz r0, 0(r3) -/* 80073974 90 03 00 08 */ stw r0, 8(r3) -/* 80073978 38 00 FF FF */ li r0, -1 -/* 8007397C 90 03 00 00 */ stw r0, 0(r3) -/* 80073980 38 00 02 00 */ li r0, 0x200 -/* 80073984 90 03 00 04 */ stw r0, 4(r3) -/* 80073988 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/proc__10dAttLook_cFv.s b/asm/d/d_attention/proc__10dAttLook_cFv.s deleted file mode 100644 index 5992a34e35c..00000000000 --- a/asm/d/d_attention/proc__10dAttLook_cFv.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80073CEC: -/* 80073CEC 80 03 00 00 */ lwz r0, 0(r3) -/* 80073CF0 90 03 00 0C */ stw r0, 0xc(r3) -/* 80073CF4 38 00 FF FF */ li r0, -1 -/* 80073CF8 90 03 00 00 */ stw r0, 0(r3) -/* 80073CFC 38 00 00 03 */ li r0, 3 -/* 80073D00 90 03 00 04 */ stw r0, 4(r3) -/* 80073D04 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/proc__11dAttCatch_cFv.s b/asm/d/d_attention/proc__11dAttCatch_cFv.s deleted file mode 100644 index a1c1548d710..00000000000 --- a/asm/d/d_attention/proc__11dAttCatch_cFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_800739DC: -/* 800739DC 80 03 00 00 */ lwz r0, 0(r3) -/* 800739E0 90 03 00 10 */ stw r0, 0x10(r3) -/* 800739E4 88 03 00 0C */ lbz r0, 0xc(r3) -/* 800739E8 98 03 00 14 */ stb r0, 0x14(r3) -/* 800739EC 38 00 FF FF */ li r0, -1 -/* 800739F0 90 03 00 00 */ stw r0, 0(r3) -/* 800739F4 38 00 00 03 */ li r0, 3 -/* 800739F8 90 03 00 04 */ stw r0, 4(r3) -/* 800739FC 38 00 00 67 */ li r0, 0x67 -/* 80073A00 98 03 00 0C */ stb r0, 0xc(r3) -/* 80073A04 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/request__10dAttHint_cFP10fopAc_ac_ci.s b/asm/d/d_attention/request__10dAttHint_cFP10fopAc_ac_ci.s deleted file mode 100644 index 16d2b74d50b..00000000000 --- a/asm/d/d_attention/request__10dAttHint_cFP10fopAc_ac_ci.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_800738FC: -/* 800738FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80073900 7C 08 02 A6 */ mflr r0 -/* 80073904 90 01 00 14 */ stw r0, 0x14(r1) -/* 80073908 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8007390C 93 C1 00 08 */ stw r30, 8(r1) -/* 80073910 7C 7E 1B 78 */ mr r30, r3 -/* 80073914 7C BF 2B 79 */ or. r31, r5, r5 -/* 80073918 40 80 00 08 */ bge lbl_80073920 -/* 8007391C 3B E0 01 FF */ li r31, 0x1ff -lbl_80073920: -/* 80073920 80 1E 00 04 */ lwz r0, 4(r30) -/* 80073924 7C 1F 00 00 */ cmpw r31, r0 -/* 80073928 41 81 00 14 */ bgt lbl_8007393C -/* 8007392C 7F C3 F3 78 */ mr r3, r30 -/* 80073930 4B FF FF 85 */ bl getPId__10dAttHint_cFPv -/* 80073934 90 7E 00 00 */ stw r3, 0(r30) -/* 80073938 93 FE 00 04 */ stw r31, 4(r30) -lbl_8007393C: -/* 8007393C 38 60 00 01 */ li r3, 1 -/* 80073940 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80073944 83 C1 00 08 */ lwz r30, 8(r1) -/* 80073948 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8007394C 7C 08 03 A6 */ mtlr r0 -/* 80073950 38 21 00 10 */ addi r1, r1, 0x10 -/* 80073954 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/runDrawProc__12dAttention_cFv.s b/asm/d/d_attention/runDrawProc__12dAttention_cFv.s deleted file mode 100644 index c482c7b91c3..00000000000 --- a/asm/d/d_attention/runDrawProc__12dAttention_cFv.s +++ /dev/null @@ -1,167 +0,0 @@ -lbl_80071E84: -/* 80071E84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80071E88 7C 08 02 A6 */ mflr r0 -/* 80071E8C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80071E90 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80071E94 7C 7F 1B 78 */ mr r31, r3 -/* 80071E98 80 63 03 34 */ lwz r3, 0x334(r3) -/* 80071E9C 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f -/* 80071EA0 41 82 00 7C */ beq lbl_80071F1C -/* 80071EA4 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071EA8 88 9F 04 FC */ lbz r4, 0x4fc(r31) -/* 80071EAC 38 A0 00 00 */ li r5, 0 -/* 80071EB0 48 00 11 39 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 80071EB4 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071EB8 38 80 00 01 */ li r4, 1 -/* 80071EBC C0 3F 05 04 */ lfs f1, 0x504(r31) -/* 80071EC0 48 00 0F 19 */ bl setAnm__10dAttDraw_cFUcf -/* 80071EC4 C0 1F 04 EC */ lfs f0, 0x4ec(r31) -/* 80071EC8 D0 1F 01 8C */ stfs f0, 0x18c(r31) -/* 80071ECC C0 1F 04 F0 */ lfs f0, 0x4f0(r31) -/* 80071ED0 D0 1F 01 90 */ stfs f0, 0x190(r31) -/* 80071ED4 C0 1F 04 F8 */ lfs f0, 0x4f8(r31) -/* 80071ED8 D0 1F 01 94 */ stfs f0, 0x194(r31) -/* 80071EDC 38 00 00 01 */ li r0, 1 -/* 80071EE0 98 1F 01 9D */ stb r0, 0x19d(r31) -/* 80071EE4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80071EE8 38 A3 61 C0 */ addi r5, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80071EEC 80 85 5F 18 */ lwz r4, 0x5f18(r5) -/* 80071EF0 3C 60 36 A0 */ lis r3, 0x36A0 /* 0x36A02311@ha */ -/* 80071EF4 38 03 23 11 */ addi r0, r3, 0x2311 /* 0x36A02311@l */ -/* 80071EF8 7C 80 00 39 */ and. r0, r4, r0 -/* 80071EFC 41 82 00 10 */ beq lbl_80071F0C -/* 80071F00 80 05 5F 1C */ lwz r0, 0x5f1c(r5) -/* 80071F04 70 00 00 11 */ andi. r0, r0, 0x11 -/* 80071F08 41 82 01 80 */ beq lbl_80072088 -lbl_80071F0C: -/* 80071F0C 7F E3 FB 78 */ mr r3, r31 -/* 80071F10 38 80 00 57 */ li r4, 0x57 -/* 80071F14 48 00 0E 6D */ bl lockSoundStart__12dAttention_cFUl -/* 80071F18 48 00 01 70 */ b lbl_80072088 -lbl_80071F1C: -/* 80071F1C 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b -/* 80071F20 41 82 00 6C */ beq lbl_80071F8C -/* 80071F24 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071F28 88 9F 04 FD */ lbz r4, 0x4fd(r31) -/* 80071F2C 38 A0 00 01 */ li r5, 1 -/* 80071F30 48 00 10 B9 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 80071F34 88 1F 03 28 */ lbz r0, 0x328(r31) -/* 80071F38 7C 00 07 75 */ extsb. r0, r0 -/* 80071F3C 41 80 00 18 */ blt lbl_80071F54 -/* 80071F40 38 00 00 01 */ li r0, 1 -/* 80071F44 98 1F 03 28 */ stb r0, 0x328(r31) -/* 80071F48 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80071F4C 64 00 40 00 */ oris r0, r0, 0x4000 -/* 80071F50 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80071F54: -/* 80071F54 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80071F58 38 A3 61 C0 */ addi r5, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80071F5C 80 85 5F 18 */ lwz r4, 0x5f18(r5) -/* 80071F60 3C 60 36 A0 */ lis r3, 0x36A0 /* 0x36A02311@ha */ -/* 80071F64 38 03 23 11 */ addi r0, r3, 0x2311 /* 0x36A02311@l */ -/* 80071F68 7C 80 00 39 */ and. r0, r4, r0 -/* 80071F6C 41 82 00 10 */ beq lbl_80071F7C -/* 80071F70 80 05 5F 1C */ lwz r0, 0x5f1c(r5) -/* 80071F74 70 00 00 11 */ andi. r0, r0, 0x11 -/* 80071F78 41 82 01 10 */ beq lbl_80072088 -lbl_80071F7C: -/* 80071F7C 7F E3 FB 78 */ mr r3, r31 -/* 80071F80 38 80 00 58 */ li r4, 0x58 -/* 80071F84 48 00 0D FD */ bl lockSoundStart__12dAttention_cFUl -/* 80071F88 48 00 01 00 */ b lbl_80072088 -lbl_80071F8C: -/* 80071F8C 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 80071F90 41 82 00 54 */ beq lbl_80071FE4 -/* 80071F94 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071F98 38 80 00 00 */ li r4, 0 -/* 80071F9C C0 3F 05 00 */ lfs f1, 0x500(r31) -/* 80071FA0 48 00 0E 39 */ bl setAnm__10dAttDraw_cFUcf -/* 80071FA4 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071FA8 88 9F 04 FC */ lbz r4, 0x4fc(r31) -/* 80071FAC 38 A0 00 00 */ li r5, 0 -/* 80071FB0 48 00 10 39 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 80071FB4 C0 1F 04 E4 */ lfs f0, 0x4e4(r31) -/* 80071FB8 D0 1F 01 8C */ stfs f0, 0x18c(r31) -/* 80071FBC C0 1F 04 E8 */ lfs f0, 0x4e8(r31) -/* 80071FC0 D0 1F 01 90 */ stfs f0, 0x190(r31) -/* 80071FC4 C0 1F 04 F4 */ lfs f0, 0x4f4(r31) -/* 80071FC8 D0 1F 01 94 */ stfs f0, 0x194(r31) -/* 80071FCC 38 00 00 00 */ li r0, 0 -/* 80071FD0 98 1F 01 9D */ stb r0, 0x19d(r31) -/* 80071FD4 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80071FD8 64 00 40 00 */ oris r0, r0, 0x4000 -/* 80071FDC 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80071FE0 48 00 00 A8 */ b lbl_80072088 -lbl_80071FE4: -/* 80071FE4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 80071FE8 41 82 00 64 */ beq lbl_8007204C -/* 80071FEC 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80071FF0 88 9F 04 FC */ lbz r4, 0x4fc(r31) -/* 80071FF4 38 A0 00 00 */ li r5, 0 -/* 80071FF8 48 00 0F F1 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 80071FFC 38 7F 01 A0 */ addi r3, r31, 0x1a0 -/* 80072000 38 80 00 00 */ li r4, 0 -/* 80072004 C0 3F 05 00 */ lfs f1, 0x500(r31) -/* 80072008 48 00 0D D1 */ bl setAnm__10dAttDraw_cFUcf -/* 8007200C 38 7F 01 A0 */ addi r3, r31, 0x1a0 -/* 80072010 88 9F 04 FD */ lbz r4, 0x4fd(r31) -/* 80072014 38 A0 00 01 */ li r5, 1 -/* 80072018 48 00 0F D1 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 8007201C C0 1F 04 E4 */ lfs f0, 0x4e4(r31) -/* 80072020 D0 1F 03 04 */ stfs f0, 0x304(r31) -/* 80072024 C0 1F 04 E8 */ lfs f0, 0x4e8(r31) -/* 80072028 D0 1F 03 08 */ stfs f0, 0x308(r31) -/* 8007202C C0 1F 04 F4 */ lfs f0, 0x4f4(r31) -/* 80072030 D0 1F 03 0C */ stfs f0, 0x30c(r31) -/* 80072034 38 00 00 00 */ li r0, 0 -/* 80072038 98 1F 03 15 */ stb r0, 0x315(r31) -/* 8007203C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072040 64 00 40 00 */ oris r0, r0, 0x4000 -/* 80072044 90 1F 03 34 */ stw r0, 0x334(r31) -/* 80072048 48 00 00 40 */ b lbl_80072088 -lbl_8007204C: -/* 8007204C 80 1F 03 D8 */ lwz r0, 0x3d8(r31) -/* 80072050 2C 00 00 00 */ cmpwi r0, 0 -/* 80072054 41 81 00 34 */ bgt lbl_80072088 -/* 80072058 88 1F 03 28 */ lbz r0, 0x328(r31) -/* 8007205C 7C 00 07 75 */ extsb. r0, r0 -/* 80072060 40 82 00 28 */ bne lbl_80072088 -/* 80072064 38 7F 00 28 */ addi r3, r31, 0x28 -/* 80072068 88 9F 04 FD */ lbz r4, 0x4fd(r31) -/* 8007206C 38 A0 00 01 */ li r5, 1 -/* 80072070 48 00 0F 79 */ bl setAlphaAnm__10dAttDraw_cFUcUc -/* 80072074 38 00 00 01 */ li r0, 1 -/* 80072078 98 1F 03 28 */ stb r0, 0x328(r31) -/* 8007207C 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80072080 64 00 40 00 */ oris r0, r0, 0x4000 -/* 80072084 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80072088: -/* 80072088 88 1F 03 29 */ lbz r0, 0x329(r31) -/* 8007208C 28 00 00 01 */ cmplwi r0, 1 -/* 80072090 40 82 00 28 */ bne lbl_800720B8 -/* 80072094 88 1F 01 9B */ lbz r0, 0x19b(r31) -/* 80072098 28 00 00 03 */ cmplwi r0, 3 -/* 8007209C 40 82 00 44 */ bne lbl_800720E0 -/* 800720A0 38 00 00 04 */ li r0, 4 -/* 800720A4 98 1F 01 9B */ stb r0, 0x19b(r31) -/* 800720A8 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800720AC 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0 -/* 800720B0 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800720B4 48 00 00 2C */ b lbl_800720E0 -lbl_800720B8: -/* 800720B8 88 1F 01 9B */ lbz r0, 0x19b(r31) -/* 800720BC 28 00 00 03 */ cmplwi r0, 3 -/* 800720C0 40 82 00 20 */ bne lbl_800720E0 -/* 800720C4 38 00 00 04 */ li r0, 4 -/* 800720C8 98 1F 01 9B */ stb r0, 0x19b(r31) -/* 800720CC 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800720D0 54 00 00 80 */ rlwinm r0, r0, 0, 2, 0 -/* 800720D4 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800720D8 38 00 FF FF */ li r0, -1 -/* 800720DC 98 1F 03 28 */ stb r0, 0x328(r31) -lbl_800720E0: -/* 800720E0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800720E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800720E8 7C 08 03 A6 */ mtlr r0 -/* 800720EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800720F0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/runSoundProc__12dAttention_cFv.s b/asm/d/d_attention/runSoundProc__12dAttention_cFv.s deleted file mode 100644 index 16479c87f27..00000000000 --- a/asm/d/d_attention/runSoundProc__12dAttention_cFv.s +++ /dev/null @@ -1,40 +0,0 @@ -lbl_80071DEC: -/* 80071DEC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80071DF0 7C 08 02 A6 */ mflr r0 -/* 80071DF4 90 01 00 24 */ stw r0, 0x24(r1) -/* 80071DF8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 80071DFC 7C 7F 1B 78 */ mr r31, r3 -/* 80071E00 38 00 FF FF */ li r0, -1 -/* 80071E04 90 03 05 14 */ stw r0, 0x514(r3) -/* 80071E08 C0 02 8C 98 */ lfs f0, lit_5137(r2) -/* 80071E0C D0 03 05 18 */ stfs f0, 0x518(r3) -/* 80071E10 80 03 03 34 */ lwz r0, 0x334(r3) -/* 80071E14 54 00 00 01 */ rlwinm. r0, r0, 0, 0, 0 -/* 80071E18 40 82 00 58 */ bne lbl_80071E70 -/* 80071E1C 3C 60 80 07 */ lis r3, sound_attention__FP10fopAc_ac_cPv@ha /* 0x80071D6C@ha */ -/* 80071E20 38 63 1D 6C */ addi r3, r3, sound_attention__FP10fopAc_ac_cPv@l /* 0x80071D6C@l */ -/* 80071E24 7F E4 FB 78 */ mr r4, r31 -/* 80071E28 4B FA 79 95 */ bl fopAcIt_Executor__FPFPvPv_iPv -/* 80071E2C 80 1F 05 14 */ lwz r0, 0x514(r31) -/* 80071E30 90 01 00 08 */ stw r0, 8(r1) -/* 80071E34 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 80071E38 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 80071E3C 38 81 00 08 */ addi r4, r1, 8 -/* 80071E40 4B FA 79 B9 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 80071E44 28 03 00 00 */ cmplwi r3, 0 -/* 80071E48 41 82 00 28 */ beq lbl_80071E70 -/* 80071E4C 80 6D 8D E8 */ lwz r3, mAudioMgrPtr__10Z2AudioMgr(r13) -/* 80071E50 38 63 03 D0 */ addi r3, r3, 0x3d0 -/* 80071E54 C0 22 8C 9C */ lfs f1, lit_5138(r2) -/* 80071E58 C0 1F 05 18 */ lfs f0, 0x518(r31) -/* 80071E5C EC 21 00 32 */ fmuls f1, f1, f0 -/* 80071E60 48 24 40 29 */ bl bgmNowBattle__8Z2SeqMgrFf -/* 80071E64 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 80071E68 60 00 01 00 */ ori r0, r0, 0x100 -/* 80071E6C 90 1F 03 34 */ stw r0, 0x334(r31) -lbl_80071E70: -/* 80071E70 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80071E74 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80071E78 7C 08 03 A6 */ mtlr r0 -/* 80071E7C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80071E80 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/select_attention__FP10fopAc_ac_cPv.s b/asm/d/d_attention/select_attention__FP10fopAc_ac_cPv.s deleted file mode 100644 index 18275a87ff7..00000000000 --- a/asm/d/d_attention/select_attention__FP10fopAc_ac_cPv.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_8007138C: -/* 8007138C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80071390 7C 08 02 A6 */ mflr r0 -/* 80071394 90 01 00 14 */ stw r0, 0x14(r1) -/* 80071398 7C 65 1B 78 */ mr r5, r3 -/* 8007139C 80 03 05 5C */ lwz r0, 0x55c(r3) -/* 800713A0 28 00 00 00 */ cmplwi r0, 0 -/* 800713A4 40 82 00 0C */ bne lbl_800713B0 -/* 800713A8 38 60 00 00 */ li r3, 0 -/* 800713AC 48 00 00 10 */ b lbl_800713BC -lbl_800713B0: -/* 800713B0 7C 83 23 78 */ mr r3, r4 -/* 800713B4 7C A4 2B 78 */ mr r4, r5 -/* 800713B8 48 00 00 D1 */ bl SelectAttention__12dAttention_cFP10fopAc_ac_c -lbl_800713BC: -/* 800713BC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800713C0 7C 08 03 A6 */ mtlr r0 -/* 800713C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800713C8 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/setActor__10dAttList_cFP10fopAc_ac_c.s b/asm/d/d_attention/setActor__10dAttList_cFP10fopAc_ac_c.s deleted file mode 100644 index 9a3caceee1b..00000000000 --- a/asm/d/d_attention/setActor__10dAttList_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80073898: -/* 80073898 28 04 00 00 */ cmplwi r4, 0 -/* 8007389C 41 82 00 0C */ beq lbl_800738A8 -/* 800738A0 80 04 00 04 */ lwz r0, 4(r4) -/* 800738A4 48 00 00 08 */ b lbl_800738AC -lbl_800738A8: -/* 800738A8 38 00 FF FF */ li r0, -1 -lbl_800738AC: -/* 800738AC 90 03 00 10 */ stw r0, 0x10(r3) -/* 800738B0 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/setAlphaAnm__10dAttDraw_cFUcUc.s b/asm/d/d_attention/setAlphaAnm__10dAttDraw_cFUcUc.s deleted file mode 100644 index 8e29f9fd321..00000000000 --- a/asm/d/d_attention/setAlphaAnm__10dAttDraw_cFUcUc.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80072FE8: -/* 80072FE8 98 83 01 71 */ stb r4, 0x171(r3) -/* 80072FEC 38 00 00 00 */ li r0, 0 -/* 80072FF0 98 03 01 72 */ stb r0, 0x172(r3) -/* 80072FF4 38 00 00 02 */ li r0, 2 -/* 80072FF8 98 03 01 73 */ stb r0, 0x173(r3) -/* 80072FFC 98 A3 01 74 */ stb r5, 0x174(r3) -/* 80073000 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/setOwnerAttentionPos__12dAttention_cFv.s b/asm/d/d_attention/setOwnerAttentionPos__12dAttention_cFv.s deleted file mode 100644 index 59af1e84f2f..00000000000 --- a/asm/d/d_attention/setOwnerAttentionPos__12dAttention_cFv.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_80071424: -/* 80071424 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80071428 7C 08 02 A6 */ mflr r0 -/* 8007142C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80071430 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80071434 7C 7F 1B 78 */ mr r31, r3 -/* 80071438 80 63 00 00 */ lwz r3, 0(r3) -/* 8007143C C0 03 05 50 */ lfs f0, 0x550(r3) -/* 80071440 D0 1F 03 1C */ stfs f0, 0x31c(r31) -/* 80071444 C0 03 05 54 */ lfs f0, 0x554(r3) -/* 80071448 D0 1F 03 20 */ stfs f0, 0x320(r31) -/* 8007144C C0 03 05 58 */ lfs f0, 0x558(r3) -/* 80071450 D0 1F 03 24 */ stfs f0, 0x324(r31) -/* 80071454 80 7F 00 00 */ lwz r3, 0(r31) -/* 80071458 A8 03 00 08 */ lha r0, 8(r3) -/* 8007145C 2C 00 00 FD */ cmpwi r0, 0xfd -/* 80071460 40 82 00 14 */ bne lbl_80071474 -/* 80071464 48 0E DF 99 */ bl getAttentionOffsetY__9daPy_py_cFv -/* 80071468 C0 1F 03 20 */ lfs f0, 0x320(r31) -/* 8007146C EC 00 08 28 */ fsubs f0, f0, f1 -/* 80071470 D0 1F 03 20 */ stfs f0, 0x320(r31) -lbl_80071474: -/* 80071474 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80071478 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8007147C 7C 08 03 A6 */ mtlr r0 -/* 80071480 38 21 00 10 */ addi r1, r1, 0x10 -/* 80071484 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/stockAttention__12dAttention_cFv.s b/asm/d/d_attention/stockAttention__12dAttention_cFv.s deleted file mode 100644 index 395ba0bfad1..00000000000 --- a/asm/d/d_attention/stockAttention__12dAttention_cFv.s +++ /dev/null @@ -1,52 +0,0 @@ -lbl_800718A4: -/* 800718A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800718A8 7C 08 02 A6 */ mflr r0 -/* 800718AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 800718B0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800718B4 93 C1 00 08 */ stw r30, 8(r1) -/* 800718B8 7C 7E 1B 78 */ mr r30, r3 -/* 800718BC 38 80 00 00 */ li r4, 0 -/* 800718C0 48 00 1C 7D */ bl LockonTarget__12dAttention_cFl -/* 800718C4 7C 7F 1B 78 */ mr r31, r3 -/* 800718C8 7F C3 F3 78 */ mr r3, r30 -/* 800718CC 38 80 FF FF */ li r4, -1 -/* 800718D0 4B FF F9 71 */ bl initList__12dAttention_cFUl -/* 800718D4 7F C3 F3 78 */ mr r3, r30 -/* 800718D8 4B FF FA F5 */ bl makeList__12dAttention_cFv -/* 800718DC 2C 03 00 00 */ cmpwi r3, 0 -/* 800718E0 41 82 00 0C */ beq lbl_800718EC -/* 800718E4 7F C3 F3 78 */ mr r3, r30 -/* 800718E8 4B FF FD D1 */ bl sortList__12dAttention_cFv -lbl_800718EC: -/* 800718EC 38 7E 03 38 */ addi r3, r30, 0x338 -/* 800718F0 48 00 1F 75 */ bl getActor__10dAttList_cFv -/* 800718F4 7C 1F 18 40 */ cmplw r31, r3 -/* 800718F8 41 82 00 44 */ beq lbl_8007193C -/* 800718FC 28 1F 00 00 */ cmplwi r31, 0 -/* 80071900 41 82 00 24 */ beq lbl_80071924 -/* 80071904 38 7E 03 38 */ addi r3, r30, 0x338 -/* 80071908 48 00 1F 5D */ bl getActor__10dAttList_cFv -/* 8007190C 28 03 00 00 */ cmplwi r3, 0 -/* 80071910 41 82 00 20 */ beq lbl_80071930 -/* 80071914 80 1E 03 34 */ lwz r0, 0x334(r30) -/* 80071918 60 00 00 02 */ ori r0, r0, 2 -/* 8007191C 90 1E 03 34 */ stw r0, 0x334(r30) -/* 80071920 48 00 00 10 */ b lbl_80071930 -lbl_80071924: -/* 80071924 80 1E 03 34 */ lwz r0, 0x334(r30) -/* 80071928 60 00 00 01 */ ori r0, r0, 1 -/* 8007192C 90 1E 03 34 */ stw r0, 0x334(r30) -lbl_80071930: -/* 80071930 80 1E 03 34 */ lwz r0, 0x334(r30) -/* 80071934 60 00 00 04 */ ori r0, r0, 4 -/* 80071938 90 1E 03 34 */ stw r0, 0x334(r30) -lbl_8007193C: -/* 8007193C 7F C3 F3 78 */ mr r3, r30 -/* 80071940 38 80 00 00 */ li r4, 0 -/* 80071944 48 00 1B F9 */ bl LockonTarget__12dAttention_cFl -/* 80071948 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8007194C 83 C1 00 08 */ lwz r30, 8(r1) -/* 80071950 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80071954 7C 08 03 A6 */ mtlr r0 -/* 80071958 38 21 00 10 */ addi r1, r1, 0x10 -/* 8007195C 4E 80 00 20 */ blr diff --git a/asm/d/d_attention/triggerProc__12dAttention_cFv.s b/asm/d/d_attention/triggerProc__12dAttention_cFv.s deleted file mode 100644 index 20714c99d6d..00000000000 --- a/asm/d/d_attention/triggerProc__12dAttention_cFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_800722A0: -/* 800722A0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800722A4 7C 08 02 A6 */ mflr r0 -/* 800722A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 800722AC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800722B0 7C 7F 1B 78 */ mr r31, r3 -/* 800722B4 4B FF F7 E5 */ bl chaseAttention__12dAttention_cFv -/* 800722B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800722BC 41 82 00 18 */ beq lbl_800722D4 -/* 800722C0 80 1F 03 34 */ lwz r0, 0x334(r31) -/* 800722C4 60 00 00 08 */ ori r0, r0, 8 -/* 800722C8 90 1F 03 34 */ stw r0, 0x334(r31) -/* 800722CC 38 60 00 01 */ li r3, 1 -/* 800722D0 48 00 00 08 */ b lbl_800722D8 -lbl_800722D4: -/* 800722D4 38 60 00 00 */ li r3, 0 -lbl_800722D8: -/* 800722D8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800722DC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800722E0 7C 08 03 A6 */ mtlr r0 -/* 800722E4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800722E8 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGFindNodeID__13dDemo_actor_cCFPCc.s b/asm/d/d_demo/JSGFindNodeID__13dDemo_actor_cCFPCc.s deleted file mode 100644 index 0e8e14359bd..00000000000 --- a/asm/d/d_demo/JSGFindNodeID__13dDemo_actor_cCFPCc.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_8003A05C: -/* 8003A05C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003A060 7C 08 02 A6 */ mflr r0 -/* 8003A064 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003A068 80 63 00 48 */ lwz r3, 0x48(r3) -/* 8003A06C 80 63 00 04 */ lwz r3, 4(r3) -/* 8003A070 80 63 00 54 */ lwz r3, 0x54(r3) -/* 8003A074 48 2A 49 E5 */ bl getIndex__10JUTNameTabCFPCc -/* 8003A078 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003A07C 7C 08 03 A6 */ mtlr r0 -/* 8003A080 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003A084 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetAnimationFrameMax__13dDemo_actor_cCFv.s b/asm/d/d_demo/JSGGetAnimationFrameMax__13dDemo_actor_cCFv.s deleted file mode 100644 index dabfe1e0e2c..00000000000 --- a/asm/d/d_demo/JSGGetAnimationFrameMax__13dDemo_actor_cCFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_8003A0C8: -/* 8003A0C8 C0 23 00 38 */ lfs f1, 0x38(r3) -/* 8003A0CC 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f.s b/asm/d/d_demo/JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f.s deleted file mode 100644 index 8e151631726..00000000000 --- a/asm/d/d_demo/JSGGetNodeTransformation__13dDemo_actor_cCFUlPA4_f.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_8003A088: -/* 8003A088 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003A08C 7C 08 02 A6 */ mflr r0 -/* 8003A090 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003A094 80 63 00 48 */ lwz r3, 0x48(r3) -/* 8003A098 80 63 00 84 */ lwz r3, 0x84(r3) -/* 8003A09C 80 63 00 0C */ lwz r3, 0xc(r3) -/* 8003A0A0 54 80 04 3E */ clrlwi r0, r4, 0x10 -/* 8003A0A4 1C 00 00 30 */ mulli r0, r0, 0x30 -/* 8003A0A8 7C 63 02 14 */ add r3, r3, r0 -/* 8003A0AC 7C A4 2B 78 */ mr r4, r5 -/* 8003A0B0 48 30 C4 01 */ bl PSMTXCopy -/* 8003A0B4 38 60 00 01 */ li r3, 1 -/* 8003A0B8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003A0BC 7C 08 03 A6 */ mtlr r0 -/* 8003A0C0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003A0C4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetProjectionAspect__14dDemo_camera_cCFv.s b/asm/d/d_demo/JSGGetProjectionAspect__14dDemo_camera_cCFv.s deleted file mode 100644 index 10bb005a749..00000000000 --- a/asm/d/d_demo/JSGGetProjectionAspect__14dDemo_camera_cCFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80038B9C: -/* 80038B9C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038BA0 7C 08 02 A6 */ mflr r0 -/* 80038BA4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038BA8 4B FF FE E9 */ bl getView__Fv -/* 80038BAC 28 03 00 00 */ cmplwi r3, 0 -/* 80038BB0 40 82 00 0C */ bne lbl_80038BBC -/* 80038BB4 C0 22 83 D4 */ lfs f1, lit_4655(r2) -/* 80038BB8 48 00 00 08 */ b lbl_80038BC0 -lbl_80038BBC: -/* 80038BBC C0 23 00 D4 */ lfs f1, 0xd4(r3) -lbl_80038BC0: -/* 80038BC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038BC4 7C 08 03 A6 */ mtlr r0 -/* 80038BC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038BCC 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetProjectionFar__14dDemo_camera_cCFv.s b/asm/d/d_demo/JSGGetProjectionFar__14dDemo_camera_cCFv.s deleted file mode 100644 index f0c8596aa2d..00000000000 --- a/asm/d/d_demo/JSGGetProjectionFar__14dDemo_camera_cCFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80038B0C: -/* 80038B0C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038B10 7C 08 02 A6 */ mflr r0 -/* 80038B14 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038B18 4B FF FF 79 */ bl getView__Fv -/* 80038B1C 28 03 00 00 */ cmplwi r3, 0 -/* 80038B20 40 82 00 0C */ bne lbl_80038B2C -/* 80038B24 C0 22 83 B4 */ lfs f1, lit_4041(r2) -/* 80038B28 48 00 00 08 */ b lbl_80038B30 -lbl_80038B2C: -/* 80038B2C C0 23 00 CC */ lfs f1, 0xcc(r3) -lbl_80038B30: -/* 80038B30 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038B34 7C 08 03 A6 */ mtlr r0 -/* 80038B38 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038B3C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetProjectionFovy__14dDemo_camera_cCFv.s b/asm/d/d_demo/JSGGetProjectionFovy__14dDemo_camera_cCFv.s deleted file mode 100644 index e64a2919a07..00000000000 --- a/asm/d/d_demo/JSGGetProjectionFovy__14dDemo_camera_cCFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80038B54: -/* 80038B54 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038B58 7C 08 02 A6 */ mflr r0 -/* 80038B5C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038B60 4B FF FF 31 */ bl getView__Fv -/* 80038B64 28 03 00 00 */ cmplwi r3, 0 -/* 80038B68 40 82 00 0C */ bne lbl_80038B74 -/* 80038B6C C0 22 83 D0 */ lfs f1, lit_4642(r2) -/* 80038B70 48 00 00 08 */ b lbl_80038B78 -lbl_80038B74: -/* 80038B74 C0 23 00 D0 */ lfs f1, 0xd0(r3) -lbl_80038B78: -/* 80038B78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038B7C 7C 08 03 A6 */ mtlr r0 -/* 80038B80 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038B84 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetProjectionNear__14dDemo_camera_cCFv.s b/asm/d/d_demo/JSGGetProjectionNear__14dDemo_camera_cCFv.s deleted file mode 100644 index 745a4aa61c3..00000000000 --- a/asm/d/d_demo/JSGGetProjectionNear__14dDemo_camera_cCFv.s +++ /dev/null @@ -1,16 +0,0 @@ -lbl_80038AC4: -/* 80038AC4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038AC8 7C 08 02 A6 */ mflr r0 -/* 80038ACC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038AD0 4B FF FF C1 */ bl getView__Fv -/* 80038AD4 28 03 00 00 */ cmplwi r3, 0 -/* 80038AD8 40 82 00 0C */ bne lbl_80038AE4 -/* 80038ADC C0 22 83 B0 */ lfs f1, lit_4040(r2) -/* 80038AE0 48 00 00 08 */ b lbl_80038AE8 -lbl_80038AE4: -/* 80038AE4 C0 23 00 C8 */ lfs f1, 0xc8(r3) -lbl_80038AE8: -/* 80038AE8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038AEC 7C 08 03 A6 */ mtlr r0 -/* 80038AF0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038AF4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetScaling__13dDemo_actor_cCFP3Vec.s b/asm/d/d_demo/JSGGetScaling__13dDemo_actor_cCFP3Vec.s deleted file mode 100644 index 958a7e11e01..00000000000 --- a/asm/d/d_demo/JSGGetScaling__13dDemo_actor_cCFP3Vec.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8003A0F4: -/* 8003A0F4 C0 03 00 14 */ lfs f0, 0x14(r3) -/* 8003A0F8 D0 04 00 00 */ stfs f0, 0(r4) -/* 8003A0FC C0 03 00 18 */ lfs f0, 0x18(r3) -/* 8003A100 D0 04 00 04 */ stfs f0, 4(r4) -/* 8003A104 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 8003A108 D0 04 00 08 */ stfs f0, 8(r4) -/* 8003A10C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv.s b/asm/d/d_demo/JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv.s deleted file mode 100644 index ebb72b16be2..00000000000 --- a/asm/d/d_demo/JSGGetTextureAnimationFrameMax__13dDemo_actor_cCFv.s +++ /dev/null @@ -1,3 +0,0 @@ -lbl_8003A0D0: -/* 8003A0D0 C0 23 00 44 */ lfs f1, 0x44(r3) -/* 8003A0D4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetTranslation__13dDemo_actor_cCFP3Vec.s b/asm/d/d_demo/JSGGetTranslation__13dDemo_actor_cCFP3Vec.s deleted file mode 100644 index 4826a2dd8b6..00000000000 --- a/asm/d/d_demo/JSGGetTranslation__13dDemo_actor_cCFP3Vec.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_8003A0D8: -/* 8003A0D8 C0 03 00 08 */ lfs f0, 8(r3) -/* 8003A0DC D0 04 00 00 */ stfs f0, 0(r4) -/* 8003A0E0 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 8003A0E4 D0 04 00 04 */ stfs f0, 4(r4) -/* 8003A0E8 C0 03 00 10 */ lfs f0, 0x10(r3) -/* 8003A0EC D0 04 00 08 */ stfs f0, 8(r4) -/* 8003A0F0 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetViewPosition__14dDemo_camera_cCFP3Vec.s b/asm/d/d_demo/JSGGetViewPosition__14dDemo_camera_cCFP3Vec.s deleted file mode 100644 index 9ec805f719e..00000000000 --- a/asm/d/d_demo/JSGGetViewPosition__14dDemo_camera_cCFP3Vec.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_80038BE4: -/* 80038BE4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038BE8 7C 08 02 A6 */ mflr r0 -/* 80038BEC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038BF0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80038BF4 7C 9F 23 78 */ mr r31, r4 -/* 80038BF8 4B FF FE 99 */ bl getView__Fv -/* 80038BFC 28 03 00 00 */ cmplwi r3, 0 -/* 80038C00 40 82 00 18 */ bne lbl_80038C18 -/* 80038C04 C0 02 83 B0 */ lfs f0, lit_4040(r2) -/* 80038C08 D0 1F 00 00 */ stfs f0, 0(r31) -/* 80038C0C D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038C10 D0 1F 00 08 */ stfs f0, 8(r31) -/* 80038C14 48 00 00 1C */ b lbl_80038C30 -lbl_80038C18: -/* 80038C18 C0 03 00 D8 */ lfs f0, 0xd8(r3) -/* 80038C1C D0 1F 00 00 */ stfs f0, 0(r31) -/* 80038C20 C0 03 00 DC */ lfs f0, 0xdc(r3) -/* 80038C24 D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038C28 C0 03 00 E0 */ lfs f0, 0xe0(r3) -/* 80038C2C D0 1F 00 08 */ stfs f0, 8(r31) -lbl_80038C30: -/* 80038C30 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80038C34 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038C38 7C 08 03 A6 */ mtlr r0 -/* 80038C3C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038C40 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec.s b/asm/d/d_demo/JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec.s deleted file mode 100644 index f3df2c82dde..00000000000 --- a/asm/d/d_demo/JSGGetViewTargetPosition__14dDemo_camera_cCFP3Vec.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_80038CF8: -/* 80038CF8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038CFC 7C 08 02 A6 */ mflr r0 -/* 80038D00 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038D04 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80038D08 7C 9F 23 78 */ mr r31, r4 -/* 80038D0C 4B FF FD 85 */ bl getView__Fv -/* 80038D10 28 03 00 00 */ cmplwi r3, 0 -/* 80038D14 40 82 00 1C */ bne lbl_80038D30 -/* 80038D18 C0 02 83 B0 */ lfs f0, lit_4040(r2) -/* 80038D1C D0 1F 00 00 */ stfs f0, 0(r31) -/* 80038D20 D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038D24 C0 02 83 B4 */ lfs f0, lit_4041(r2) -/* 80038D28 D0 1F 00 08 */ stfs f0, 8(r31) -/* 80038D2C 48 00 00 1C */ b lbl_80038D48 -lbl_80038D30: -/* 80038D30 C0 03 00 E4 */ lfs f0, 0xe4(r3) -/* 80038D34 D0 1F 00 00 */ stfs f0, 0(r31) -/* 80038D38 C0 03 00 E8 */ lfs f0, 0xe8(r3) -/* 80038D3C D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038D40 C0 03 00 EC */ lfs f0, 0xec(r3) -/* 80038D44 D0 1F 00 08 */ stfs f0, 8(r31) -lbl_80038D48: -/* 80038D48 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80038D4C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038D50 7C 08 03 A6 */ mtlr r0 -/* 80038D54 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038D58 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGGetViewUpVector__14dDemo_camera_cCFP3Vec.s b/asm/d/d_demo/JSGGetViewUpVector__14dDemo_camera_cCFP3Vec.s deleted file mode 100644 index 16f63a0f071..00000000000 --- a/asm/d/d_demo/JSGGetViewUpVector__14dDemo_camera_cCFP3Vec.s +++ /dev/null @@ -1,28 +0,0 @@ -lbl_80038C6C: -/* 80038C6C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80038C70 7C 08 02 A6 */ mflr r0 -/* 80038C74 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038C78 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80038C7C 7C 9F 23 78 */ mr r31, r4 -/* 80038C80 4B FF FE 11 */ bl getView__Fv -/* 80038C84 28 03 00 00 */ cmplwi r3, 0 -/* 80038C88 40 82 00 1C */ bne lbl_80038CA4 -/* 80038C8C C0 22 83 B0 */ lfs f1, lit_4040(r2) -/* 80038C90 D0 3F 00 00 */ stfs f1, 0(r31) -/* 80038C94 C0 02 83 B4 */ lfs f0, lit_4041(r2) -/* 80038C98 D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038C9C D0 3F 00 08 */ stfs f1, 8(r31) -/* 80038CA0 48 00 00 1C */ b lbl_80038CBC -lbl_80038CA4: -/* 80038CA4 C0 03 00 F0 */ lfs f0, 0xf0(r3) -/* 80038CA8 D0 1F 00 00 */ stfs f0, 0(r31) -/* 80038CAC C0 03 00 F4 */ lfs f0, 0xf4(r3) -/* 80038CB0 D0 1F 00 04 */ stfs f0, 4(r31) -/* 80038CB4 C0 03 00 F8 */ lfs f0, 0xf8(r3) -/* 80038CB8 D0 1F 00 08 */ stfs f0, 8(r31) -lbl_80038CBC: -/* 80038CBC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80038CC0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038CC4 7C 08 03 A6 */ mtlr r0 -/* 80038CC8 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038CCC 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn.s b/asm/d/d_demo/JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn.s deleted file mode 100644 index c40534bbc3b..00000000000 --- a/asm/d/d_demo/JSGSetAngleAttenuation__13dDemo_light_cFf9_GXSpotFn.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80038EA8: -/* 80038EA8 D0 23 00 2C */ stfs f1, 0x2c(r3) -/* 80038EAC 90 83 00 10 */ stw r4, 0x10(r3) -/* 80038EB0 88 03 00 04 */ lbz r0, 4(r3) -/* 80038EB4 60 00 00 10 */ ori r0, r0, 0x10 -/* 80038EB8 98 03 00 04 */ stb r0, 4(r3) -/* 80038EBC 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetAnimationFrame__13dDemo_actor_cFf.s b/asm/d/d_demo/JSGSetAnimationFrame__13dDemo_actor_cFf.s deleted file mode 100644 index a73591f8bf8..00000000000 --- a/asm/d/d_demo/JSGSetAnimationFrame__13dDemo_actor_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038A40: -/* 80038A40 D0 23 00 30 */ stfs f1, 0x30(r3) -/* 80038A44 A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A48 60 00 00 40 */ ori r0, r0, 0x40 -/* 80038A4C B0 03 00 04 */ sth r0, 4(r3) -/* 80038A50 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetAnimationTransition__13dDemo_actor_cFf.s b/asm/d/d_demo/JSGSetAnimationTransition__13dDemo_actor_cFf.s deleted file mode 100644 index 81990888bff..00000000000 --- a/asm/d/d_demo/JSGSetAnimationTransition__13dDemo_actor_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038A54: -/* 80038A54 D0 23 00 34 */ stfs f1, 0x34(r3) -/* 80038A58 A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A5C 60 00 00 80 */ ori r0, r0, 0x80 -/* 80038A60 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A64 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetAnimation__13dDemo_actor_cFUl.s b/asm/d/d_demo/JSGSetAnimation__13dDemo_actor_cFUl.s deleted file mode 100644 index 9e9ac2b2f40..00000000000 --- a/asm/d/d_demo/JSGSetAnimation__13dDemo_actor_cFUl.s +++ /dev/null @@ -1,9 +0,0 @@ -lbl_80038A20: -/* 80038A20 90 83 00 2C */ stw r4, 0x2c(r3) -/* 80038A24 3C 80 80 45 */ lis r4, __float_max@ha /* 0x80450AE8@ha */ -/* 80038A28 C0 04 0A E8 */ lfs f0, __float_max@l(r4) /* 0x80450AE8@l */ -/* 80038A2C D0 03 00 38 */ stfs f0, 0x38(r3) -/* 80038A30 A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A34 60 00 00 20 */ ori r0, r0, 0x20 -/* 80038A38 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A3C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetColor__11dDemo_fog_cF8_GXColor.s b/asm/d/d_demo/JSGSetColor__11dDemo_fog_cF8_GXColor.s deleted file mode 100644 index 8be966aa075..00000000000 --- a/asm/d/d_demo/JSGSetColor__11dDemo_fog_cF8_GXColor.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80038F24: -/* 80038F24 88 04 00 00 */ lbz r0, 0(r4) -/* 80038F28 98 03 00 10 */ stb r0, 0x10(r3) -/* 80038F2C 88 04 00 01 */ lbz r0, 1(r4) -/* 80038F30 98 03 00 11 */ stb r0, 0x11(r3) -/* 80038F34 88 04 00 02 */ lbz r0, 2(r4) -/* 80038F38 98 03 00 12 */ stb r0, 0x12(r3) -/* 80038F3C 88 04 00 03 */ lbz r0, 3(r4) -/* 80038F40 98 03 00 13 */ stb r0, 0x13(r3) -/* 80038F44 88 03 00 04 */ lbz r0, 4(r3) -/* 80038F48 60 00 00 08 */ ori r0, r0, 8 -/* 80038F4C 98 03 00 04 */ stb r0, 4(r3) -/* 80038F50 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetColor__13dDemo_light_cF8_GXColor.s b/asm/d/d_demo/JSGSetColor__13dDemo_light_cF8_GXColor.s deleted file mode 100644 index e0a49a85a7c..00000000000 --- a/asm/d/d_demo/JSGSetColor__13dDemo_light_cF8_GXColor.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80038E5C: -/* 80038E5C 88 04 00 00 */ lbz r0, 0(r4) -/* 80038E60 98 03 00 20 */ stb r0, 0x20(r3) -/* 80038E64 88 04 00 01 */ lbz r0, 1(r4) -/* 80038E68 98 03 00 21 */ stb r0, 0x21(r3) -/* 80038E6C 88 04 00 02 */ lbz r0, 2(r4) -/* 80038E70 98 03 00 22 */ stb r0, 0x22(r3) -/* 80038E74 88 04 00 03 */ lbz r0, 3(r4) -/* 80038E78 98 03 00 23 */ stb r0, 0x23(r3) -/* 80038E7C 88 03 00 04 */ lbz r0, 4(r3) -/* 80038E80 60 00 00 04 */ ori r0, r0, 4 -/* 80038E84 98 03 00 04 */ stb r0, 4(r3) -/* 80038E88 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetColor__15dDemo_ambient_cF8_GXColor.s b/asm/d/d_demo/JSGSetColor__15dDemo_ambient_cF8_GXColor.s deleted file mode 100644 index dff8f554054..00000000000 --- a/asm/d/d_demo/JSGSetColor__15dDemo_ambient_cF8_GXColor.s +++ /dev/null @@ -1,13 +0,0 @@ -lbl_80038DF0: -/* 80038DF0 88 04 00 00 */ lbz r0, 0(r4) -/* 80038DF4 98 03 00 05 */ stb r0, 5(r3) -/* 80038DF8 88 04 00 01 */ lbz r0, 1(r4) -/* 80038DFC 98 03 00 06 */ stb r0, 6(r3) -/* 80038E00 88 04 00 02 */ lbz r0, 2(r4) -/* 80038E04 98 03 00 07 */ stb r0, 7(r3) -/* 80038E08 88 04 00 03 */ lbz r0, 3(r4) -/* 80038E0C 98 03 00 08 */ stb r0, 8(r3) -/* 80038E10 88 03 00 04 */ lbz r0, 4(r3) -/* 80038E14 60 00 00 01 */ ori r0, r0, 1 -/* 80038E18 98 03 00 04 */ stb r0, 4(r3) -/* 80038E1C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetDirection__13dDemo_light_cFRC3Vec.s b/asm/d/d_demo/JSGSetDirection__13dDemo_light_cFRC3Vec.s deleted file mode 100644 index 401264ce2c9..00000000000 --- a/asm/d/d_demo/JSGSetDirection__13dDemo_light_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038EC0: -/* 80038EC0 C0 04 00 00 */ lfs f0, 0(r4) -/* 80038EC4 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 80038EC8 C0 04 00 04 */ lfs f0, 4(r4) -/* 80038ECC D0 03 00 34 */ stfs f0, 0x34(r3) -/* 80038ED0 C0 04 00 08 */ lfs f0, 8(r4) -/* 80038ED4 D0 03 00 38 */ stfs f0, 0x38(r3) -/* 80038ED8 88 03 00 04 */ lbz r0, 4(r3) -/* 80038EDC 60 00 00 20 */ ori r0, r0, 0x20 -/* 80038EE0 98 03 00 04 */ stb r0, 4(r3) -/* 80038EE4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn.s b/asm/d/d_demo/JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn.s deleted file mode 100644 index 6e86e386218..00000000000 --- a/asm/d/d_demo/JSGSetDistanceAttenuation__13dDemo_light_cFff13_GXDistAttnFn.s +++ /dev/null @@ -1,8 +0,0 @@ -lbl_80038E8C: -/* 80038E8C D0 23 00 24 */ stfs f1, 0x24(r3) -/* 80038E90 D0 43 00 28 */ stfs f2, 0x28(r3) -/* 80038E94 90 83 00 0C */ stw r4, 0xc(r3) -/* 80038E98 88 03 00 04 */ lbz r0, 4(r3) -/* 80038E9C 60 00 00 08 */ ori r0, r0, 8 -/* 80038EA0 98 03 00 04 */ stb r0, 4(r3) -/* 80038EA4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s b/asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s deleted file mode 100644 index 5472cef06a6..00000000000 --- a/asm/d/d_demo/JSGSetEndZ__11dDemo_fog_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038F10: -/* 80038F10 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 80038F14 88 03 00 04 */ lbz r0, 4(r3) -/* 80038F18 60 00 00 04 */ ori r0, r0, 4 -/* 80038F1C 98 03 00 04 */ stb r0, 4(r3) -/* 80038F20 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetFogFunction__11dDemo_fog_cF10_GXFogType.s b/asm/d/d_demo/JSGSetFogFunction__11dDemo_fog_cF10_GXFogType.s deleted file mode 100644 index 87ab2f1ba57..00000000000 --- a/asm/d/d_demo/JSGSetFogFunction__11dDemo_fog_cF10_GXFogType.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038EE8: -/* 80038EE8 98 83 00 05 */ stb r4, 5(r3) -/* 80038EEC 88 03 00 04 */ lbz r0, 4(r3) -/* 80038EF0 60 00 00 01 */ ori r0, r0, 1 -/* 80038EF4 98 03 00 04 */ stb r0, 4(r3) -/* 80038EF8 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetLightType__13dDemo_light_cFQ26JStage7TELight.s b/asm/d/d_demo/JSGSetLightType__13dDemo_light_cFQ26JStage7TELight.s deleted file mode 100644 index ac1623ab474..00000000000 --- a/asm/d/d_demo/JSGSetLightType__13dDemo_light_cFQ26JStage7TELight.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038E20: -/* 80038E20 90 83 00 08 */ stw r4, 8(r3) -/* 80038E24 88 03 00 04 */ lbz r0, 4(r3) -/* 80038E28 60 00 00 01 */ ori r0, r0, 1 -/* 80038E2C 98 03 00 04 */ stb r0, 4(r3) -/* 80038E30 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetPosition__13dDemo_light_cFRC3Vec.s b/asm/d/d_demo/JSGSetPosition__13dDemo_light_cFRC3Vec.s deleted file mode 100644 index 75e26c9fd5b..00000000000 --- a/asm/d/d_demo/JSGSetPosition__13dDemo_light_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038E34: -/* 80038E34 C0 04 00 00 */ lfs f0, 0(r4) -/* 80038E38 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80038E3C C0 04 00 04 */ lfs f0, 4(r4) -/* 80038E40 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 80038E44 C0 04 00 08 */ lfs f0, 8(r4) -/* 80038E48 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80038E4C 88 03 00 04 */ lbz r0, 4(r3) -/* 80038E50 60 00 00 02 */ ori r0, r0, 2 -/* 80038E54 98 03 00 04 */ stb r0, 4(r3) -/* 80038E58 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetProjectionAspect__14dDemo_camera_cFf.s b/asm/d/d_demo/JSGSetProjectionAspect__14dDemo_camera_cFf.s deleted file mode 100644 index 1c1e2ae1528..00000000000 --- a/asm/d/d_demo/JSGSetProjectionAspect__14dDemo_camera_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038BD0: -/* 80038BD0 D0 23 00 14 */ stfs f1, 0x14(r3) -/* 80038BD4 88 03 00 04 */ lbz r0, 4(r3) -/* 80038BD8 60 00 00 08 */ ori r0, r0, 8 -/* 80038BDC 98 03 00 04 */ stb r0, 4(r3) -/* 80038BE0 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetProjectionFar__14dDemo_camera_cFf.s b/asm/d/d_demo/JSGSetProjectionFar__14dDemo_camera_cFf.s deleted file mode 100644 index 22853c800a2..00000000000 --- a/asm/d/d_demo/JSGSetProjectionFar__14dDemo_camera_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038B40: -/* 80038B40 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 80038B44 88 03 00 04 */ lbz r0, 4(r3) -/* 80038B48 60 00 00 02 */ ori r0, r0, 2 -/* 80038B4C 98 03 00 04 */ stb r0, 4(r3) -/* 80038B50 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetProjectionFovy__14dDemo_camera_cFf.s b/asm/d/d_demo/JSGSetProjectionFovy__14dDemo_camera_cFf.s deleted file mode 100644 index 7bceebc850b..00000000000 --- a/asm/d/d_demo/JSGSetProjectionFovy__14dDemo_camera_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038B88: -/* 80038B88 D0 23 00 10 */ stfs f1, 0x10(r3) -/* 80038B8C 88 03 00 04 */ lbz r0, 4(r3) -/* 80038B90 60 00 00 04 */ ori r0, r0, 4 -/* 80038B94 98 03 00 04 */ stb r0, 4(r3) -/* 80038B98 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetProjectionNear__14dDemo_camera_cFf.s b/asm/d/d_demo/JSGSetProjectionNear__14dDemo_camera_cFf.s deleted file mode 100644 index b8e533d4920..00000000000 --- a/asm/d/d_demo/JSGSetProjectionNear__14dDemo_camera_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038AF8: -/* 80038AF8 D0 23 00 08 */ stfs f1, 8(r3) -/* 80038AFC 88 03 00 04 */ lbz r0, 4(r3) -/* 80038B00 60 00 00 01 */ ori r0, r0, 1 -/* 80038B04 98 03 00 04 */ stb r0, 4(r3) -/* 80038B08 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetRotation__13dDemo_actor_cFRC3Vec.s b/asm/d/d_demo/JSGSetRotation__13dDemo_actor_cFRC3Vec.s deleted file mode 100644 index 2c898c3b878..00000000000 --- a/asm/d/d_demo/JSGSetRotation__13dDemo_actor_cFRC3Vec.s +++ /dev/null @@ -1,26 +0,0 @@ -lbl_800389A8: -/* 800389A8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 800389AC C0 22 83 CC */ lfs f1, lit_4567(r2) -/* 800389B0 C0 04 00 00 */ lfs f0, 0(r4) -/* 800389B4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 800389B8 FC 00 00 1E */ fctiwz f0, f0 -/* 800389BC D8 01 00 08 */ stfd f0, 8(r1) -/* 800389C0 80 01 00 0C */ lwz r0, 0xc(r1) -/* 800389C4 B0 03 00 20 */ sth r0, 0x20(r3) -/* 800389C8 C0 04 00 04 */ lfs f0, 4(r4) -/* 800389CC EC 01 00 32 */ fmuls f0, f1, f0 -/* 800389D0 FC 00 00 1E */ fctiwz f0, f0 -/* 800389D4 D8 01 00 10 */ stfd f0, 0x10(r1) -/* 800389D8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800389DC B0 03 00 22 */ sth r0, 0x22(r3) -/* 800389E0 C0 04 00 08 */ lfs f0, 8(r4) -/* 800389E4 EC 01 00 32 */ fmuls f0, f1, f0 -/* 800389E8 FC 00 00 1E */ fctiwz f0, f0 -/* 800389EC D8 01 00 18 */ stfd f0, 0x18(r1) -/* 800389F0 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 800389F4 B0 03 00 24 */ sth r0, 0x24(r3) -/* 800389F8 A0 03 00 04 */ lhz r0, 4(r3) -/* 800389FC 60 00 00 08 */ ori r0, r0, 8 -/* 80038A00 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A04 38 21 00 20 */ addi r1, r1, 0x20 -/* 80038A08 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetScaling__13dDemo_actor_cFRC3Vec.s b/asm/d/d_demo/JSGSetScaling__13dDemo_actor_cFRC3Vec.s deleted file mode 100644 index c3e033a3f93..00000000000 --- a/asm/d/d_demo/JSGSetScaling__13dDemo_actor_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038980: -/* 80038980 C0 04 00 00 */ lfs f0, 0(r4) -/* 80038984 D0 03 00 14 */ stfs f0, 0x14(r3) -/* 80038988 C0 04 00 04 */ lfs f0, 4(r4) -/* 8003898C D0 03 00 18 */ stfs f0, 0x18(r3) -/* 80038990 C0 04 00 08 */ lfs f0, 8(r4) -/* 80038994 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80038998 A0 03 00 04 */ lhz r0, 4(r3) -/* 8003899C 60 00 00 04 */ ori r0, r0, 4 -/* 800389A0 B0 03 00 04 */ sth r0, 4(r3) -/* 800389A4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetShape__13dDemo_actor_cFUl.s b/asm/d/d_demo/JSGSetShape__13dDemo_actor_cFUl.s deleted file mode 100644 index a3ba645fec4..00000000000 --- a/asm/d/d_demo/JSGSetShape__13dDemo_actor_cFUl.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038A0C: -/* 80038A0C 90 83 00 28 */ stw r4, 0x28(r3) -/* 80038A10 A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A14 60 00 00 10 */ ori r0, r0, 0x10 -/* 80038A18 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A1C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s b/asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s deleted file mode 100644 index 015419ab90a..00000000000 --- a/asm/d/d_demo/JSGSetStartZ__11dDemo_fog_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038EFC: -/* 80038EFC D0 23 00 08 */ stfs f1, 8(r3) -/* 80038F00 88 03 00 04 */ lbz r0, 4(r3) -/* 80038F04 60 00 00 02 */ ori r0, r0, 2 -/* 80038F08 98 03 00 04 */ stb r0, 4(r3) -/* 80038F0C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetTextureAnimationFrame__13dDemo_actor_cFf.s b/asm/d/d_demo/JSGSetTextureAnimationFrame__13dDemo_actor_cFf.s deleted file mode 100644 index b0f1e9aa0b5..00000000000 --- a/asm/d/d_demo/JSGSetTextureAnimationFrame__13dDemo_actor_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038A7C: -/* 80038A7C D0 23 00 40 */ stfs f1, 0x40(r3) -/* 80038A80 A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A84 60 00 02 00 */ ori r0, r0, 0x200 -/* 80038A88 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A8C 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetTextureAnimation__13dDemo_actor_cFUl.s b/asm/d/d_demo/JSGSetTextureAnimation__13dDemo_actor_cFUl.s deleted file mode 100644 index 940206792a1..00000000000 --- a/asm/d/d_demo/JSGSetTextureAnimation__13dDemo_actor_cFUl.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038A68: -/* 80038A68 90 83 00 3C */ stw r4, 0x3c(r3) -/* 80038A6C A0 03 00 04 */ lhz r0, 4(r3) -/* 80038A70 60 00 01 00 */ ori r0, r0, 0x100 -/* 80038A74 B0 03 00 04 */ sth r0, 4(r3) -/* 80038A78 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetViewPosition__14dDemo_camera_cFRC3Vec.s b/asm/d/d_demo/JSGSetViewPosition__14dDemo_camera_cFRC3Vec.s deleted file mode 100644 index d9079ceb57f..00000000000 --- a/asm/d/d_demo/JSGSetViewPosition__14dDemo_camera_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038C44: -/* 80038C44 C0 04 00 00 */ lfs f0, 0(r4) -/* 80038C48 D0 03 00 18 */ stfs f0, 0x18(r3) -/* 80038C4C C0 04 00 04 */ lfs f0, 4(r4) -/* 80038C50 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 80038C54 C0 04 00 08 */ lfs f0, 8(r4) -/* 80038C58 D0 03 00 20 */ stfs f0, 0x20(r3) -/* 80038C5C 88 03 00 04 */ lbz r0, 4(r3) -/* 80038C60 60 00 00 10 */ ori r0, r0, 0x10 -/* 80038C64 98 03 00 04 */ stb r0, 4(r3) -/* 80038C68 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetViewRoll__14dDemo_camera_cFf.s b/asm/d/d_demo/JSGSetViewRoll__14dDemo_camera_cFf.s deleted file mode 100644 index 9e74238e0c6..00000000000 --- a/asm/d/d_demo/JSGSetViewRoll__14dDemo_camera_cFf.s +++ /dev/null @@ -1,6 +0,0 @@ -lbl_80038DDC: -/* 80038DDC D0 23 00 3C */ stfs f1, 0x3c(r3) -/* 80038DE0 88 03 00 04 */ lbz r0, 4(r3) -/* 80038DE4 60 00 00 80 */ ori r0, r0, 0x80 -/* 80038DE8 98 03 00 04 */ stb r0, 4(r3) -/* 80038DEC 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec.s b/asm/d/d_demo/JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec.s deleted file mode 100644 index ac1141a4351..00000000000 --- a/asm/d/d_demo/JSGSetViewTargetPosition__14dDemo_camera_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038D5C: -/* 80038D5C C0 04 00 00 */ lfs f0, 0(r4) -/* 80038D60 D0 03 00 30 */ stfs f0, 0x30(r3) -/* 80038D64 C0 04 00 04 */ lfs f0, 4(r4) -/* 80038D68 D0 03 00 34 */ stfs f0, 0x34(r3) -/* 80038D6C C0 04 00 08 */ lfs f0, 8(r4) -/* 80038D70 D0 03 00 38 */ stfs f0, 0x38(r3) -/* 80038D74 88 03 00 04 */ lbz r0, 4(r3) -/* 80038D78 60 00 00 40 */ ori r0, r0, 0x40 -/* 80038D7C 98 03 00 04 */ stb r0, 4(r3) -/* 80038D80 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/JSGSetViewUpVector__14dDemo_camera_cFRC3Vec.s b/asm/d/d_demo/JSGSetViewUpVector__14dDemo_camera_cFRC3Vec.s deleted file mode 100644 index 23d87da1423..00000000000 --- a/asm/d/d_demo/JSGSetViewUpVector__14dDemo_camera_cFRC3Vec.s +++ /dev/null @@ -1,11 +0,0 @@ -lbl_80038CD0: -/* 80038CD0 C0 04 00 00 */ lfs f0, 0(r4) -/* 80038CD4 D0 03 00 24 */ stfs f0, 0x24(r3) -/* 80038CD8 C0 04 00 04 */ lfs f0, 4(r4) -/* 80038CDC D0 03 00 28 */ stfs f0, 0x28(r3) -/* 80038CE0 C0 04 00 08 */ lfs f0, 8(r4) -/* 80038CE4 D0 03 00 2C */ stfs f0, 0x2c(r3) -/* 80038CE8 88 03 00 04 */ lbz r0, 4(r3) -/* 80038CEC 60 00 00 20 */ ori r0, r0, 0x20 -/* 80038CF0 98 03 00 04 */ stb r0, 4(r3) -/* 80038CF4 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/getActor__13dDemo_actor_cFv.s b/asm/d/d_demo/getActor__13dDemo_actor_cFv.s deleted file mode 100644 index f29030123bc..00000000000 --- a/asm/d/d_demo/getActor__13dDemo_actor_cFv.s +++ /dev/null @@ -1,14 +0,0 @@ -lbl_80038128: -/* 80038128 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003812C 7C 08 02 A6 */ mflr r0 -/* 80038130 90 01 00 14 */ stw r0, 0x14(r1) -/* 80038134 80 03 00 58 */ lwz r0, 0x58(r3) -/* 80038138 90 01 00 08 */ stw r0, 8(r1) -/* 8003813C 3C 60 80 02 */ lis r3, fpcSch_JudgeByID__FPvPv@ha /* 0x80023590@ha */ -/* 80038140 38 63 35 90 */ addi r3, r3, fpcSch_JudgeByID__FPvPv@l /* 0x80023590@l */ -/* 80038144 38 81 00 08 */ addi r4, r1, 8 -/* 80038148 4B FE 16 B1 */ bl fopAcIt_Judge__FPFPvPv_PvPv -/* 8003814C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80038150 7C 08 03 A6 */ mtlr r0 -/* 80038154 38 21 00 10 */ addi r1, r1, 0x10 -/* 80038158 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/getView__Fv.s b/asm/d/d_demo/getView__Fv.s deleted file mode 100644 index 38b3c8241d9..00000000000 --- a/asm/d/d_demo/getView__Fv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_80038A90: -/* 80038A90 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 80038A94 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80038A98 88 03 5D 44 */ lbz r0, 0x5d44(r3) -/* 80038A9C 2C 00 00 00 */ cmpwi r0, 0 -/* 80038AA0 40 82 00 0C */ bne lbl_80038AAC -/* 80038AA4 38 60 00 00 */ li r3, 0 -/* 80038AA8 4E 80 00 20 */ blr -lbl_80038AAC: -/* 80038AAC 88 03 5D 70 */ lbz r0, 0x5d70(r3) -/* 80038AB0 7C 00 07 74 */ extsb r0, r0 -/* 80038AB4 1C 00 00 38 */ mulli r0, r0, 0x38 -/* 80038AB8 7C 63 02 14 */ add r3, r3, r0 -/* 80038ABC 80 63 5D 74 */ lwz r3, 0x5d74(r3) -/* 80038AC0 4E 80 00 20 */ blr diff --git a/asm/d/d_demo/setActor__13dDemo_actor_cFP10fopAc_ac_c.s b/asm/d/d_demo/setActor__13dDemo_actor_cFP10fopAc_ac_c.s deleted file mode 100644 index b530ca8b3c7..00000000000 --- a/asm/d/d_demo/setActor__13dDemo_actor_cFP10fopAc_ac_c.s +++ /dev/null @@ -1,21 +0,0 @@ -lbl_8003815C: -/* 8003815C 28 04 00 00 */ cmplwi r4, 0 -/* 80038160 40 82 00 10 */ bne lbl_80038170 -/* 80038164 38 00 FF FF */ li r0, -1 -/* 80038168 90 03 00 58 */ stw r0, 0x58(r3) -/* 8003816C 48 00 00 18 */ b lbl_80038184 -lbl_80038170: -/* 80038170 41 82 00 0C */ beq lbl_8003817C -/* 80038174 80 04 00 04 */ lwz r0, 4(r4) -/* 80038178 48 00 00 08 */ b lbl_80038180 -lbl_8003817C: -/* 8003817C 38 00 FF FF */ li r0, -1 -lbl_80038180: -/* 80038180 90 03 00 58 */ stw r0, 0x58(r3) -lbl_80038184: -/* 80038184 38 00 FF FF */ li r0, -1 -/* 80038188 90 03 00 5C */ stw r0, 0x5c(r3) -/* 8003818C 90 03 00 60 */ stw r0, 0x60(r3) -/* 80038190 90 03 00 64 */ stw r0, 0x64(r3) -/* 80038194 90 03 00 68 */ stw r0, 0x68(r3) -/* 80038198 4E 80 00 20 */ blr diff --git a/asm/d/d_lib/getTime__11dLib_time_cFv.s b/asm/d/d_lib/getTime__11dLib_time_cFv.s deleted file mode 100644 index 95e8e6737a9..00000000000 --- a/asm/d/d_lib/getTime__11dLib_time_cFv.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_80032804: -/* 80032804 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80032808 7C 08 02 A6 */ mflr r0 -/* 8003280C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80032810 88 0D 88 68 */ lbz r0, data_80450DE8(r13) -/* 80032814 28 00 00 00 */ cmplwi r0, 0 -/* 80032818 40 82 00 1C */ bne lbl_80032834 -/* 8003281C 48 30 FE E1 */ bl OSGetTime -/* 80032820 80 0D 88 58 */ lwz r0, m_diffTime__11dLib_time_c(r13) -/* 80032824 80 AD 88 5C */ lwz r5, data_80450DDC(r13) -/* 80032828 7C 85 20 10 */ subfc r4, r5, r4 -/* 8003282C 7C 60 19 10 */ subfe r3, r0, r3 -/* 80032830 48 00 00 40 */ b lbl_80032870 -lbl_80032834: -/* 80032834 48 30 FE C9 */ bl OSGetTime -/* 80032838 80 CD 88 58 */ lwz r6, m_diffTime__11dLib_time_c(r13) -/* 8003283C 80 ED 88 5C */ lwz r7, data_80450DDC(r13) -/* 80032840 80 0D 88 60 */ lwz r0, m_stopTime__11dLib_time_c(r13) -/* 80032844 80 AD 88 64 */ lwz r5, data_80450DE4(r13) -/* 80032848 7C A5 20 10 */ subfc r5, r5, r4 -/* 8003284C 7C 00 19 10 */ subfe r0, r0, r3 -/* 80032850 7C A7 28 14 */ addc r5, r7, r5 -/* 80032854 7C 06 01 14 */ adde r0, r6, r0 -/* 80032858 90 AD 88 5C */ stw r5, data_80450DDC(r13) -/* 8003285C 90 0D 88 58 */ stw r0, m_diffTime__11dLib_time_c(r13) -/* 80032860 90 8D 88 64 */ stw r4, data_80450DE4(r13) -/* 80032864 90 6D 88 60 */ stw r3, m_stopTime__11dLib_time_c(r13) -/* 80032868 7C 85 20 10 */ subfc r4, r5, r4 -/* 8003286C 7C 60 19 10 */ subfe r3, r0, r3 -lbl_80032870: -/* 80032870 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80032874 7C 08 03 A6 */ mtlr r0 -/* 80032878 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003287C 4E 80 00 20 */ blr diff --git a/asm/d/d_lib/startTime__11dLib_time_cFv.s b/asm/d/d_lib/startTime__11dLib_time_cFv.s deleted file mode 100644 index 6a09482e24f..00000000000 --- a/asm/d/d_lib/startTime__11dLib_time_cFv.s +++ /dev/null @@ -1,25 +0,0 @@ -lbl_800328BC: -/* 800328BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800328C0 7C 08 02 A6 */ mflr r0 -/* 800328C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 800328C8 88 0D 88 68 */ lbz r0, data_80450DE8(r13) -/* 800328CC 28 00 00 00 */ cmplwi r0, 0 -/* 800328D0 41 82 00 38 */ beq lbl_80032908 -/* 800328D4 48 30 FE 29 */ bl OSGetTime -/* 800328D8 80 0D 88 60 */ lwz r0, m_stopTime__11dLib_time_c(r13) -/* 800328DC 80 AD 88 64 */ lwz r5, data_80450DE4(r13) -/* 800328E0 7C A5 20 10 */ subfc r5, r5, r4 -/* 800328E4 7C 80 19 10 */ subfe r4, r0, r3 -/* 800328E8 80 0D 88 58 */ lwz r0, m_diffTime__11dLib_time_c(r13) -/* 800328EC 80 6D 88 5C */ lwz r3, data_80450DDC(r13) -/* 800328F0 7C 63 28 14 */ addc r3, r3, r5 -/* 800328F4 7C 00 21 14 */ adde r0, r0, r4 -/* 800328F8 90 6D 88 5C */ stw r3, data_80450DDC(r13) -/* 800328FC 90 0D 88 58 */ stw r0, m_diffTime__11dLib_time_c(r13) -/* 80032900 38 00 00 00 */ li r0, 0 -/* 80032904 98 0D 88 68 */ stb r0, data_80450DE8(r13) -lbl_80032908: -/* 80032908 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003290C 7C 08 03 A6 */ mtlr r0 -/* 80032910 38 21 00 10 */ addi r1, r1, 0x10 -/* 80032914 4E 80 00 20 */ blr diff --git a/asm/d/d_lib/stopTime__11dLib_time_cFv.s b/asm/d/d_lib/stopTime__11dLib_time_cFv.s deleted file mode 100644 index 73e1641a8a7..00000000000 --- a/asm/d/d_lib/stopTime__11dLib_time_cFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_80032880: -/* 80032880 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80032884 7C 08 02 A6 */ mflr r0 -/* 80032888 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003288C 88 0D 88 68 */ lbz r0, data_80450DE8(r13) -/* 80032890 28 00 00 00 */ cmplwi r0, 0 -/* 80032894 40 82 00 18 */ bne lbl_800328AC -/* 80032898 48 30 FE 65 */ bl OSGetTime -/* 8003289C 90 8D 88 64 */ stw r4, data_80450DE4(r13) -/* 800328A0 90 6D 88 60 */ stw r3, m_stopTime__11dLib_time_c(r13) -/* 800328A4 38 00 00 01 */ li r0, 1 -/* 800328A8 98 0D 88 68 */ stb r0, data_80450DE8(r13) -lbl_800328AC: -/* 800328AC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800328B0 7C 08 03 A6 */ mtlr r0 -/* 800328B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800328B8 4E 80 00 20 */ blr diff --git a/asm/dolphin/base/PPCArch/PPCHalt.s b/asm/dolphin/base/PPCArch/PPCHalt.s deleted file mode 100644 index be99fa801ac..00000000000 --- a/asm/dolphin/base/PPCArch/PPCHalt.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80339D00: -/* 80339D00 7C 00 04 AC */ sync -lbl_80339D04: -/* 80339D04 60 00 00 00 */ nop -/* 80339D08 38 60 00 00 */ li r3, 0 -/* 80339D0C 60 00 00 00 */ nop -/* 80339D10 4B FF FF F4 */ b lbl_80339D04