mirror of https://github.com/zeldaret/tp.git
d_attention / d_demo / d_lib work
This commit is contained in:
parent
74c248990c
commit
6d006074a7
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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:
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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; }
|
||||
|
|
|
|||
|
|
@ -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(); }
|
||||
|
|
|
|||
|
|
@ -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<class T>
|
||||
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;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -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")
|
||||
|
|
|
|||
|
|
@ -152,6 +152,46 @@ private:
|
|||
/* 0x54 */ s32 _54;
|
||||
};
|
||||
|
||||
template <int T>
|
||||
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 <int T>
|
||||
struct TParseData_fixed : public TParseData<T> {
|
||||
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
|
||||
|
||||
|
|
|
|||
|
|
@ -3,4 +3,6 @@
|
|||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
typedef unsigned short wchar_t;
|
||||
|
||||
#endif /* MSL_COMMON_SRC_WCHAR_IO_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;
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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 */
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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(); }
|
||||
|
|
|
|||
|
|
@ -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 */
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,4 +3,12 @@
|
|||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
union FpscrUnion {
|
||||
f64 f;
|
||||
struct {
|
||||
u32 fpscr_pad;
|
||||
u32 fpscr;
|
||||
} u;
|
||||
};
|
||||
|
||||
#endif /* PPCARCH_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; }
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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 */
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
}
|
||||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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:
|
||||
|
|
|
|||
|
|
@ -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() {
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
675
src/d/d_demo.cpp
675
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
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
@ -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;
|
||||
|
|
|
|||
Loading…
Reference in New Issue