diff options
| author | Pheenoh <pheenoh@gmail.com> | 2021-01-02 17:47:43 -0500 |
|---|---|---|
| committer | Pheenoh <pheenoh@gmail.com> | 2021-01-02 17:47:43 -0500 |
| commit | 458be4d8cb1dbbe06d748c4e759131e02e73b467 (patch) | |
| tree | 74e4c4420ad6bb86e51765a943c11998b379886e /include | |
| parent | 992cf48c7f5ae78b498197af8795ed9159e37f8b (diff) | |
more d_save funcs OK, initial map out of dcomifg_play_c and it's classes
Diffstat (limited to 'include')
83 files changed, 1330 insertions, 440 deletions
diff --git a/include/JSystem/J2DGraph/J2DPicture/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture/J2DPicture.h new file mode 100644 index 0000000000..35d90e7b20 --- /dev/null +++ b/include/JSystem/J2DGraph/J2DPicture/J2DPicture.h @@ -0,0 +1,8 @@ +#ifndef __J2DPICTURE_H_ +#define __J2DPICTURE_H_ + +#include "global.h" + +class J2DPicture{}; + +#endif
\ No newline at end of file diff --git a/include/JSystem/J2DGraph/J2DScreen/J2DScreen.h b/include/JSystem/J2DGraph/J2DScreen/J2DScreen.h index 52cffc57a2..c917c070f3 100644 --- a/include/JSystem/J2DGraph/J2DScreen/J2DScreen.h +++ b/include/JSystem/J2DGraph/J2DScreen/J2DScreen.h @@ -1,5 +1,7 @@ -#ifndef J2DSCREEN_H_ -#define J2DSCREEN_H_ +#ifndef __J2DSCREEN_H_ +#define __J2DSCREEN_H_ + +#include "global.h" class J2DScreen {}; diff --git a/include/JSystem/J2DGraph/J2DTextBox/J2DTextBox.h b/include/JSystem/J2DGraph/J2DTextBox/J2DTextBox.h new file mode 100644 index 0000000000..15d6edf34c --- /dev/null +++ b/include/JSystem/J2DGraph/J2DTextBox/J2DTextBox.h @@ -0,0 +1,8 @@ +#ifndef __J2DTEXTBOX_H_ +#define __J2DTEXTBOX_H_ + +#include "global.h" + +class J2DTextBox{}; + +#endif
\ No newline at end of file diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h new file mode 100644 index 0000000000..bebf803743 --- /dev/null +++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h @@ -0,0 +1,19 @@ +#ifndef __J3DANIMATION_H_ +#define __J3DANIMATION_H_ + +#include "global.h" + +class J3DFrameCtrl { +public: +private: + void* vtable; + u8 field_0x4; + u8 field_0x5; + u16 field_0x6; + s16 field_0x8; + u16 field_0xa; + float field_0xc; + float field_0x10; +}; + +#endif
\ No newline at end of file diff --git a/include/JSystem/JKernel/JKRAram/asm/func_802D2830.s b/include/JSystem/JKernel/JKRAram/asm/func_802D2830.s index cf2f3592a3..84e5d17878 100644 --- a/include/JSystem/JKernel/JKRAram/asm/func_802D2830.s +++ b/include/JSystem/JKernel/JKRAram/asm/func_802D2830.s @@ -4,7 +4,7 @@ /* 802D2834 002CF774 7C 08 02 A6 */ mflr r0 /* 802D2838 002CF778 90 01 00 34 */ stw r0, 0x34(r1) /* 802D283C 002CF77C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D2840 002CF780 48 08 F9 8D */ bl func_803621CC +/* 802D2840 002CF780 48 08 F9 8D */ bl _savegpr_25 /* 802D2844 002CF784 7C 7A 1B 78 */ mr r26, r3 /* 802D2848 002CF788 7C 9B 23 78 */ mr r27, r4 /* 802D284C 002CF78C 7C BC 2B 78 */ mr r28, r5 diff --git a/include/JSystem/JKernel/JKRAramPiece/asm/func_802D3614.s b/include/JSystem/JKernel/JKRAramPiece/asm/func_802D3614.s index aa79dd2ac0..18cac1905e 100644 --- a/include/JSystem/JKernel/JKRAramPiece/asm/func_802D3614.s +++ b/include/JSystem/JKernel/JKRAramPiece/asm/func_802D3614.s @@ -4,7 +4,7 @@ /* 802D3618 002D0558 7C 08 02 A6 */ mflr r0 /* 802D361C 002D055C 90 01 00 34 */ stw r0, 0x34(r1) /* 802D3620 002D0560 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D3624 002D0564 48 08 EB A9 */ bl func_803621CC +/* 802D3624 002D0564 48 08 EB A9 */ bl _savegpr_25 /* 802D3628 002D0568 7C 7A 1B 78 */ mr r26, r3 /* 802D362C 002D056C 7C 9B 23 78 */ mr r27, r4 /* 802D3630 002D0570 7C BC 2B 78 */ mr r28, r5 diff --git a/include/JSystem/JKernel/JKRAramStream/asm/func_802D3CE0.s b/include/JSystem/JKernel/JKRAramStream/asm/func_802D3CE0.s index c5aa5f9a6b..11970ccc3e 100644 --- a/include/JSystem/JKernel/JKRAramStream/asm/func_802D3CE0.s +++ b/include/JSystem/JKernel/JKRAramStream/asm/func_802D3CE0.s @@ -4,7 +4,7 @@ /* 802D3CE4 002D0C24 7C 08 02 A6 */ mflr r0 /* 802D3CE8 002D0C28 90 01 00 34 */ stw r0, 0x34(r1) /* 802D3CEC 002D0C2C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D3CF0 002D0C30 48 08 E4 D9 */ bl func_803621C8 +/* 802D3CF0 002D0C30 48 08 E4 D9 */ bl _savegpr_24 /* 802D3CF4 002D0C34 7C 78 1B 78 */ mr r24, r3 /* 802D3CF8 002D0C38 83 C3 00 08 */ lwz r30, 8(r3) /* 802D3CFC 002D0C3C 83 A3 00 14 */ lwz r29, 0x14(r3) @@ -134,7 +134,7 @@ lbl_802D3EA4: /* 802D3EB0 002D0DF0 48 06 AB 45 */ bl OSSendMessage /* 802D3EB4 002D0DF4 7F 83 E3 78 */ mr r3, r28 /* 802D3EB8 002D0DF8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D3EBC 002D0DFC 48 08 E3 59 */ bl func_80362214 +/* 802D3EBC 002D0DFC 48 08 E3 59 */ bl _restgpr_24 /* 802D3EC0 002D0E00 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D3EC4 002D0E04 7C 08 03 A6 */ mtlr r0 /* 802D3EC8 002D0E08 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/JSystem/JKernel/JKRCompArchive/asm/func_802D89BC.s b/include/JSystem/JKernel/JKRCompArchive/asm/func_802D89BC.s index 94e7d9f6e0..ad0584f715 100644 --- a/include/JSystem/JKernel/JKRCompArchive/asm/func_802D89BC.s +++ b/include/JSystem/JKernel/JKRCompArchive/asm/func_802D89BC.s @@ -4,7 +4,7 @@ /* 802D89C0 002D5900 7C 08 02 A6 */ mflr r0 /* 802D89C4 002D5904 90 01 00 34 */ stw r0, 0x34(r1) /* 802D89C8 002D5908 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D89CC 002D590C 48 08 98 01 */ bl func_803621CC +/* 802D89CC 002D590C 48 08 98 01 */ bl _savegpr_25 /* 802D89D0 002D5910 7C 7F 1B 78 */ mr r31, r3 /* 802D89D4 002D5914 7C 9A 23 78 */ mr r26, r4 /* 802D89D8 002D5918 38 00 00 00 */ li r0, 0 diff --git a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DA9C0.s b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DA9C0.s index 107159f6b1..227d7f6f41 100644 --- a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DA9C0.s +++ b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DA9C0.s @@ -4,7 +4,7 @@ /* 802DA9C4 002D7904 7C 08 02 A6 */ mflr r0 /* 802DA9C8 002D7908 90 01 00 34 */ stw r0, 0x34(r1) /* 802DA9CC 002D790C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DA9D0 002D7910 48 08 77 F9 */ bl func_803621C8 +/* 802DA9D0 002D7910 48 08 77 F9 */ bl _savegpr_24 /* 802DA9D4 002D7914 7C 78 1B 78 */ mr r24, r3 /* 802DA9D8 002D7918 7C 99 23 78 */ mr r25, r4 /* 802DA9DC 002D791C 7C BA 2B 78 */ mr r26, r5 @@ -43,7 +43,7 @@ lbl_802DAA58: /* 802DAA58 002D7998 7F E3 FB 78 */ mr r3, r31 lbl_802DAA5C: /* 802DAA5C 002D799C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DAA60 002D79A0 48 08 77 B5 */ bl func_80362214 +/* 802DAA60 002D79A0 48 08 77 B5 */ bl _restgpr_24 /* 802DAA64 002D79A4 80 01 00 34 */ lwz r0, 0x34(r1) /* 802DAA68 002D79A8 7C 08 03 A6 */ mtlr r0 /* 802DAA6C 002D79AC 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAA74.s b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAA74.s index d2a7845114..5d13010788 100644 --- a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAA74.s +++ b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAA74.s @@ -4,7 +4,7 @@ /* 802DAA78 002D79B8 7C 08 02 A6 */ mflr r0 /* 802DAA7C 002D79BC 90 01 00 74 */ stw r0, 0x74(r1) /* 802DAA80 002D79C0 39 61 00 70 */ addi r11, r1, 0x70 -/* 802DAA84 002D79C4 48 08 77 49 */ bl func_803621CC +/* 802DAA84 002D79C4 48 08 77 49 */ bl _savegpr_25 /* 802DAA88 002D79C8 7C 7D 1B 78 */ mr r29, r3 /* 802DAA8C 002D79CC 3B E0 00 01 */ li r31, 1 /* 802DAA90 002D79D0 83 C3 00 28 */ lwz r30, 0x28(r3) diff --git a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAFE8.s b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAFE8.s index 8f0bab04f7..88c813916d 100644 --- a/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAFE8.s +++ b/include/JSystem/JKernel/JKRDvdAramRipper/asm/func_802DAFE8.s @@ -4,7 +4,7 @@ /* 802DAFEC 002D7F2C 7C 08 02 A6 */ mflr r0 /* 802DAFF0 002D7F30 90 01 00 34 */ stw r0, 0x34(r1) /* 802DAFF4 002D7F34 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DAFF8 002D7F38 48 08 71 D1 */ bl func_803621C8 +/* 802DAFF8 002D7F38 48 08 71 D1 */ bl _savegpr_24 /* 802DAFFC 002D7F3C 7C 79 1B 78 */ mr r25, r3 /* 802DB000 002D7F40 7C 9A 23 78 */ mr r26, r4 /* 802DB004 002D7F44 7C BB 2B 78 */ mr r27, r5 @@ -94,7 +94,7 @@ lbl_802DB114: /* 802DB140 002D8080 48 06 3F DD */ bl OSUnlockMutex /* 802DB144 002D8084 7F 23 CB 78 */ mr r3, r25 /* 802DB148 002D8088 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DB14C 002D808C 48 08 70 C9 */ bl func_80362214 +/* 802DB14C 002D808C 48 08 70 C9 */ bl _restgpr_24 /* 802DB150 002D8090 80 01 00 34 */ lwz r0, 0x34(r1) /* 802DB154 002D8094 7C 08 03 A6 */ mtlr r0 /* 802DB158 002D8098 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/JSystem/JKernel/JKRDvdArchive/asm/func_802D8474.s b/include/JSystem/JKernel/JKRDvdArchive/asm/func_802D8474.s index 4b504daf08..9620f15949 100644 --- a/include/JSystem/JKernel/JKRDvdArchive/asm/func_802D8474.s +++ b/include/JSystem/JKernel/JKRDvdArchive/asm/func_802D8474.s @@ -4,7 +4,7 @@ /* 802D8478 002D53B8 7C 08 02 A6 */ mflr r0 /* 802D847C 002D53BC 90 01 00 74 */ stw r0, 0x74(r1) /* 802D8480 002D53C0 39 61 00 70 */ addi r11, r1, 0x70 -/* 802D8484 002D53C4 48 08 9D 49 */ bl func_803621CC +/* 802D8484 002D53C4 48 08 9D 49 */ bl _savegpr_25 /* 802D8488 002D53C8 7C 7D 1B 78 */ mr r29, r3 /* 802D848C 002D53CC 7C 9E 23 78 */ mr r30, r4 /* 802D8490 002D53D0 7C B9 2B 78 */ mr r25, r5 diff --git a/include/JSystem/JKernel/JKRDvdRipper/asm/func_802DA1E4.s b/include/JSystem/JKernel/JKRDvdRipper/asm/func_802DA1E4.s index 96ddefc380..7afadde3ee 100644 --- a/include/JSystem/JKernel/JKRDvdRipper/asm/func_802DA1E4.s +++ b/include/JSystem/JKernel/JKRDvdRipper/asm/func_802DA1E4.s @@ -4,7 +4,7 @@ /* 802DA1E8 002D7128 7C 08 02 A6 */ mflr r0 /* 802DA1EC 002D712C 90 01 00 34 */ stw r0, 0x34(r1) /* 802DA1F0 002D7130 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DA1F4 002D7134 48 08 7F D5 */ bl func_803621C8 +/* 802DA1F4 002D7134 48 08 7F D5 */ bl _savegpr_24 /* 802DA1F8 002D7138 7C 79 1B 78 */ mr r25, r3 /* 802DA1FC 002D713C 7C 9A 23 78 */ mr r26, r4 /* 802DA200 002D7140 7C BB 2B 78 */ mr r27, r5 @@ -97,7 +97,7 @@ lbl_802DA324: /* 802DA33C 002D727C 48 06 4D E1 */ bl OSUnlockMutex /* 802DA340 002D7280 7F 03 C3 78 */ mr r3, r24 /* 802DA344 002D7284 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DA348 002D7288 48 08 7E CD */ bl func_80362214 +/* 802DA348 002D7288 48 08 7E CD */ bl _restgpr_24 /* 802DA34C 002D728C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802DA350 002D7290 7C 08 03 A6 */ mtlr r0 /* 802DA354 002D7294 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/JSystem/JKernel/JKRExpHeap/asm/func_802CF234.s b/include/JSystem/JKernel/JKRExpHeap/asm/func_802CF234.s index 5a11a1f51e..556672dc51 100644 --- a/include/JSystem/JKernel/JKRExpHeap/asm/func_802CF234.s +++ b/include/JSystem/JKernel/JKRExpHeap/asm/func_802CF234.s @@ -4,7 +4,7 @@ /* 802CF238 002CC178 7C 08 02 A6 */ mflr r0 /* 802CF23C 002CC17C 90 01 00 34 */ stw r0, 0x34(r1) /* 802CF240 002CC180 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CF244 002CC184 48 09 2F 89 */ bl func_803621CC +/* 802CF244 002CC184 48 09 2F 89 */ bl _savegpr_25 /* 802CF248 002CC188 7C 7D 1B 78 */ mr r29, r3 /* 802CF24C 002CC18C 38 04 00 03 */ addi r0, r4, 3 /* 802CF250 002CC190 54 1E 00 3A */ rlwinm r30, r0, 0, 0, 0x1d diff --git a/include/JSystem/JKernel/JKRExpHeap/asm/func_802D03B8.s b/include/JSystem/JKernel/JKRExpHeap/asm/func_802D03B8.s index 5bc3540b37..2a610361c4 100644 --- a/include/JSystem/JKernel/JKRExpHeap/asm/func_802D03B8.s +++ b/include/JSystem/JKernel/JKRExpHeap/asm/func_802D03B8.s @@ -4,7 +4,7 @@ /* 802D03BC 002CD2FC 7C 08 02 A6 */ mflr r0 /* 802D03C0 002CD300 90 01 00 44 */ stw r0, 0x44(r1) /* 802D03C4 002CD304 39 61 00 40 */ addi r11, r1, 0x40 -/* 802D03C8 002CD308 48 09 1E 05 */ bl func_803621CC +/* 802D03C8 002CD308 48 09 1E 05 */ bl _savegpr_25 /* 802D03CC 002CD30C 7C 7A 1B 78 */ mr r26, r3 /* 802D03D0 002CD310 38 7A 00 18 */ addi r3, r26, 0x18 /* 802D03D4 002CD314 48 06 EC 6D */ bl OSLockMutex diff --git a/include/JSystem/JKernel/JKRExpHeap/asm/func_802D05CC.s b/include/JSystem/JKernel/JKRExpHeap/asm/func_802D05CC.s index 3110df3f26..e7af7e2b81 100644 --- a/include/JSystem/JKernel/JKRExpHeap/asm/func_802D05CC.s +++ b/include/JSystem/JKernel/JKRExpHeap/asm/func_802D05CC.s @@ -4,7 +4,7 @@ /* 802D05D0 002CD510 7C 08 02 A6 */ mflr r0 /* 802D05D4 002CD514 90 01 00 44 */ stw r0, 0x44(r1) /* 802D05D8 002CD518 39 61 00 40 */ addi r11, r1, 0x40 -/* 802D05DC 002CD51C 48 09 1B F1 */ bl func_803621CC +/* 802D05DC 002CD51C 48 09 1B F1 */ bl _savegpr_25 /* 802D05E0 002CD520 7C 79 1B 78 */ mr r25, r3 /* 802D05E4 002CD524 38 79 00 18 */ addi r3, r25, 0x18 /* 802D05E8 002CD528 48 06 EA 59 */ bl OSLockMutex diff --git a/include/JSystem/JKernel/JKRThread/asm/func_802D1C74.s b/include/JSystem/JKernel/JKRThread/asm/func_802D1C74.s index 3d501ed482..d5b4811bc5 100644 --- a/include/JSystem/JKernel/JKRThread/asm/func_802D1C74.s +++ b/include/JSystem/JKernel/JKRThread/asm/func_802D1C74.s @@ -4,7 +4,7 @@ /* 802D1C80 002CEBC0 DB E1 00 40 */ stfd f31, 0x40(r1) /* 802D1C84 002CEBC4 F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0 /* 802D1C88 002CEBC8 39 61 00 40 */ addi r11, r1, 0x40 -/* 802D1C8C 002CEBCC 48 09 05 41 */ bl func_803621CC +/* 802D1C8C 002CEBCC 48 09 05 41 */ bl _savegpr_25 /* 802D1C90 002CEBD0 7C 7A 1B 78 */ mr r26, r3 /* 802D1C94 002CEBD4 7C 9B 23 78 */ mr r27, r4 /* 802D1C98 002CEBD8 7C BC 2B 79 */ or. r28, r5, r5 diff --git a/include/JSystem/JUtility/JUTGamePad/asm/func_802E08E4.s b/include/JSystem/JUtility/JUTGamePad/asm/func_802E08E4.s index f527c02d56..946c19c7ff 100644 --- a/include/JSystem/JUtility/JUTGamePad/asm/func_802E08E4.s +++ b/include/JSystem/JUtility/JUTGamePad/asm/func_802E08E4.s @@ -7,7 +7,7 @@ /* 802E08FC 002DD83C 3B E3 43 D8 */ addi r31, r3, lbl_804343D8@l /* 802E0900 002DD840 38 7F 00 18 */ addi r3, r31, 0x18 /* 802E0904 002DD844 48 06 E5 9D */ bl PADRead -/* 802E0908 002DD848 90 6D 8F 60 */ stw r3, lbl_804514E0-_SDA_BASE_(r13) +/* 802E0908 002DD848 90 6D 8F 60 */ stw r3, _sRumbleSupported-_SDA_BASE_(r13) /* 802E090C 002DD84C 80 0D 83 5C */ lwz r0, lbl_804508DC-_SDA_BASE_(r13) /* 802E0910 002DD850 2C 00 00 02 */ cmpwi r0, 2 /* 802E0914 002DD854 41 82 00 20 */ beq lbl_802E0934 @@ -187,7 +187,7 @@ lbl_802E0B84: /* 802E0B98 002DDAD8 48 06 DF 95 */ bl PADReset lbl_802E0B9C: /* 802E0B9C 002DDADC 48 00 04 09 */ bl checkResetSwitch__10JUTGamePadFv -/* 802E0BA0 002DDAE0 80 6D 8F 60 */ lwz r3, lbl_804514E0-_SDA_BASE_(r13) +/* 802E0BA0 002DDAE0 80 6D 8F 60 */ lwz r3, _sRumbleSupported-_SDA_BASE_(r13) /* 802E0BA4 002DDAE4 39 61 00 40 */ addi r11, r1, 0x40 /* 802E0BA8 002DDAE8 48 08 16 65 */ bl func_8036220C /* 802E0BAC 002DDAEC 80 01 00 44 */ lwz r0, 0x44(r1) diff --git a/include/JSystem/JUtility/asm/JUTResFont__setBlock.s b/include/JSystem/JUtility/asm/JUTResFont__setBlock.s index 445bbb3003..94a17a9da3 100644 --- a/include/JSystem/JUtility/asm/JUTResFont__setBlock.s +++ b/include/JSystem/JUtility/asm/JUTResFont__setBlock.s @@ -2,7 +2,7 @@ /* 802DF348 002DC288 7C 08 02 A6 */ mflr r0 /* 802DF34C 002DC28C 90 01 00 34 */ stw r0, 0x34(r1) /* 802DF350 002DC290 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DF354 002DC294 48 08 2E 79 */ bl func_803621CC +/* 802DF354 002DC294 48 08 2E 79 */ bl _savegpr_25 /* 802DF358 002DC298 7C 7C 1B 78 */ mr r28, r3 /* 802DF35C 002DC29C 3B 60 00 00 */ li r27, 0 /* 802DF360 002DC2A0 3B 40 00 00 */ li r26, 0 diff --git a/include/SComponent/c_angle/c_angle.h b/include/SComponent/c_angle/c_angle.h new file mode 100644 index 0000000000..03ae0e541a --- /dev/null +++ b/include/SComponent/c_angle/c_angle.h @@ -0,0 +1,12 @@ +#ifndef __C_ANGLE_H_ +#define __C_ANGLE_H_ + +#include "global.h" + +class cSAngle { +public: +private: + s16 value; +}; + +#endif
\ No newline at end of file diff --git a/include/SComponent/c_cc_d/c_cc_d.h b/include/SComponent/c_cc_d/c_cc_d.h new file mode 100644 index 0000000000..593c9e2c02 --- /dev/null +++ b/include/SComponent/c_cc_d/c_cc_d.h @@ -0,0 +1,42 @@ +#ifndef __C_CC_D_H_ +#define __C_CC_D_H_ + +#include "SComponent/c_m3d/c_m3d.h" +#include "global.h" + +class cCcD_ShapeAttr { +public: +private: + cM3dGAab cm3dgaab; + void* vtable; +}; + +class cCcD_CpsAttr { +public: +private: + cCcD_ShapeAttr cccd_shapeattr; + cM3dGCps cm3dgcps; +}; + +class cCcD_CylAttr { +public: +private: + cCcD_ShapeAttr cccd_shapeattr; + cM3dGCyl cm3dgcyl; +}; + +class cCcD_DivideInfo { +public: +private: + u8 field_0x0[12]; + void* vtable; +}; + +class cCcD_DivideArea { +public: +private: + cM3dGAab cM3dGAab; + void* vtable; +}; + +#endif
\ No newline at end of file diff --git a/include/SComponent/c_cc_s/c_cc_s.h b/include/SComponent/c_cc_s/c_cc_s.h new file mode 100644 index 0000000000..06ce04692a --- /dev/null +++ b/include/SComponent/c_cc_s/c_cc_s.h @@ -0,0 +1,14 @@ +#ifndef __C_CC_S_H_ +#define __C_CC_S_H_ + +#include "global.h" +#include "SComponent/c_cc_d/c_cc_d.h" + +class cCcS { +public: +private: + u8 field_0x0[10260]; + cCcD_DivideArea cccd_dividearea; +}; + +#endif
\ No newline at end of file diff --git a/include/SComponent/c_m3d/c_m3d.h b/include/SComponent/c_m3d/c_m3d.h new file mode 100644 index 0000000000..c448bb5e43 --- /dev/null +++ b/include/SComponent/c_m3d/c_m3d.h @@ -0,0 +1,39 @@ +#ifndef __C_M3D_H_ +#define __C_M3D_H_ + +#include "SComponent/c_xyz/c_xyz.h" +#include "global.h" + +class cM3dGLin_members { +public: +private: + cXyz start; + cXyz end; +}; + +class cM3dGCps { +public: +private: + cM3dGLin_members base; + void* vtable; + float field_0x1c; +}; + +class cM3dGCyl { /* Cylinder class */ +public: +private: + cXyz center; + float radius; + float height; + void* vtable; +}; + +class cM3dGAab { /* Axis-aligned bounding box */ +public: +private: + cXyz min; + cXyz max; + void* vtable; +}; + +#endif
\ No newline at end of file diff --git a/include/SComponent/c_xyz/c_xyz.h b/include/SComponent/c_xyz/c_xyz.h new file mode 100644 index 0000000000..c70f940b4e --- /dev/null +++ b/include/SComponent/c_xyz/c_xyz.h @@ -0,0 +1,10 @@ +#ifndef __C_XYZ_H_ +#define __C_XYZ_H_ +#include "global.h" + +class cXyz { +public: + float x, y, z; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_a/d_a_alink/asm/func_800A093C.s b/include/d/d_a/d_a_alink/asm/func_800A093C.s index 482ce4f3cf..962e99b80d 100644 --- a/include/d/d_a/d_a_alink/asm/func_800A093C.s +++ b/include/d/d_a/d_a_alink/asm/func_800A093C.s @@ -2,7 +2,7 @@ /* 800A0940 0009D880 7C 08 02 A6 */ mflr r0 /* 800A0944 0009D884 90 01 00 64 */ stw r0, 0x64(r1) /* 800A0948 0009D888 39 61 00 60 */ addi r11, r1, 0x60 -/* 800A094C 0009D88C 48 2C 18 7D */ bl func_803621C8 +/* 800A094C 0009D88C 48 2C 18 7D */ bl _savegpr_24 /* 800A0950 0009D890 7C 7F 1B 78 */ mr r31, r3 /* 800A0954 0009D894 7C 9B 23 78 */ mr r27, r4 /* 800A0958 0009D898 7C BC 2B 78 */ mr r28, r5 @@ -762,7 +762,7 @@ lbl_800A1410: /* 800A1410 0009E350 38 60 00 00 */ li r3, 0 lbl_800A1414: /* 800A1414 0009E354 39 61 00 60 */ addi r11, r1, 0x60 -/* 800A1418 0009E358 48 2C 0D FD */ bl func_80362214 +/* 800A1418 0009E358 48 2C 0D FD */ bl _restgpr_24 /* 800A141C 0009E35C 80 01 00 64 */ lwz r0, 0x64(r1) /* 800A1420 0009E360 7C 08 03 A6 */ mtlr r0 /* 800A1424 0009E364 38 21 00 60 */ addi r1, r1, 0x60 diff --git a/include/d/d_a/d_a_alink/asm/func_800A29DC.s b/include/d/d_a/d_a_alink/asm/func_800A29DC.s index c8a7e015a9..d3ab771f48 100644 --- a/include/d/d_a/d_a_alink/asm/func_800A29DC.s +++ b/include/d/d_a/d_a_alink/asm/func_800A29DC.s @@ -2,7 +2,7 @@ /* 800A29E0 0009F920 7C 08 02 A6 */ mflr r0 /* 800A29E4 0009F924 90 01 00 44 */ stw r0, 0x44(r1) /* 800A29E8 0009F928 39 61 00 40 */ addi r11, r1, 0x40 -/* 800A29EC 0009F92C 48 2B F7 DD */ bl func_803621C8 +/* 800A29EC 0009F92C 48 2B F7 DD */ bl _savegpr_24 /* 800A29F0 0009F930 7C 79 1B 78 */ mr r25, r3 /* 800A29F4 0009F934 3C 60 80 39 */ lis r3, lbl_8038D658@ha /* 800A29F8 0009F938 3B A3 D6 58 */ addi r29, r3, lbl_8038D658@l @@ -147,7 +147,7 @@ lbl_800A2C08: /* 800A2C08 0009FB48 38 60 00 01 */ li r3, 1 lbl_800A2C0C: /* 800A2C0C 0009FB4C 39 61 00 40 */ addi r11, r1, 0x40 -/* 800A2C10 0009FB50 48 2B F6 05 */ bl func_80362214 +/* 800A2C10 0009FB50 48 2B F6 05 */ bl _restgpr_24 /* 800A2C14 0009FB54 80 01 00 44 */ lwz r0, 0x44(r1) /* 800A2C18 0009FB58 7C 08 03 A6 */ mtlr r0 /* 800A2C1C 0009FB5C 38 21 00 40 */ addi r1, r1, 0x40 diff --git a/include/d/d_a/d_a_alink/asm/func_800A551C.s b/include/d/d_a/d_a_alink/asm/func_800A551C.s index e193ff2581..cf66576fea 100644 --- a/include/d/d_a/d_a_alink/asm/func_800A551C.s +++ b/include/d/d_a/d_a_alink/asm/func_800A551C.s @@ -2,7 +2,7 @@ /* 800A5520 000A2460 7C 08 02 A6 */ mflr r0 /* 800A5524 000A2464 90 01 00 34 */ stw r0, 0x34(r1) /* 800A5528 000A2468 39 61 00 30 */ addi r11, r1, 0x30 -/* 800A552C 000A246C 48 2B CC 9D */ bl func_803621C8 +/* 800A552C 000A246C 48 2B CC 9D */ bl _savegpr_24 /* 800A5530 000A2470 7C 78 1B 78 */ mr r24, r3 /* 800A5534 000A2474 3C 80 80 39 */ lis r4, lbl_8038D658@ha /* 800A5538 000A2478 3B A4 D6 58 */ addi r29, r4, lbl_8038D658@l @@ -540,7 +540,7 @@ lbl_800A5CA4: lbl_800A5CAC: /* 800A5CAC 000A2BEC 7F 43 D3 78 */ mr r3, r26 /* 800A5CB0 000A2BF0 39 61 00 30 */ addi r11, r1, 0x30 -/* 800A5CB4 000A2BF4 48 2B C5 61 */ bl func_80362214 +/* 800A5CB4 000A2BF4 48 2B C5 61 */ bl _restgpr_24 /* 800A5CB8 000A2BF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 800A5CBC 000A2BFC 7C 08 03 A6 */ mtlr r0 /* 800A5CC0 000A2C00 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/d/d_a/d_a_alink/asm/func_800A5CC8.s b/include/d/d_a/d_a_alink/asm/func_800A5CC8.s index bde7009aa6..a95e65359b 100644 --- a/include/d/d_a/d_a_alink/asm/func_800A5CC8.s +++ b/include/d/d_a/d_a_alink/asm/func_800A5CC8.s @@ -2,7 +2,7 @@ /* 800A5CCC 000A2C0C 7C 08 02 A6 */ mflr r0 /* 800A5CD0 000A2C10 90 01 00 54 */ stw r0, 0x54(r1) /* 800A5CD4 000A2C14 39 61 00 50 */ addi r11, r1, 0x50 -/* 800A5CD8 000A2C18 48 2B C4 F1 */ bl func_803621C8 +/* 800A5CD8 000A2C18 48 2B C4 F1 */ bl _savegpr_24 /* 800A5CDC 000A2C1C 7C 7F 1B 78 */ mr r31, r3 /* 800A5CE0 000A2C20 80 03 04 A0 */ lwz r0, 0x4a0(r3) /* 800A5CE4 000A2C24 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c @@ -646,7 +646,7 @@ lbl_800A65F0: /* 800A65F0 000A3530 38 60 00 04 */ li r3, 4 lbl_800A65F4: /* 800A65F4 000A3534 39 61 00 50 */ addi r11, r1, 0x50 -/* 800A65F8 000A3538 48 2B BC 1D */ bl func_80362214 +/* 800A65F8 000A3538 48 2B BC 1D */ bl _restgpr_24 /* 800A65FC 000A353C 80 01 00 54 */ lwz r0, 0x54(r1) /* 800A6600 000A3540 7C 08 03 A6 */ mtlr r0 /* 800A6604 000A3544 38 21 00 50 */ addi r1, r1, 0x50 diff --git a/include/d/d_a/d_a_alink/asm/func_800AC610.s b/include/d/d_a/d_a_alink/asm/func_800AC610.s index 8240f89e8f..fde3f06c7d 100644 --- a/include/d/d_a/d_a_alink/asm/func_800AC610.s +++ b/include/d/d_a/d_a_alink/asm/func_800AC610.s @@ -2,7 +2,7 @@ /* 800AC614 000A9554 7C 08 02 A6 */ mflr r0 /* 800AC618 000A9558 90 01 00 34 */ stw r0, 0x34(r1) /* 800AC61C 000A955C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800AC620 000A9560 48 2B 5B A9 */ bl func_803621C8 +/* 800AC620 000A9560 48 2B 5B A9 */ bl _savegpr_24 /* 800AC624 000A9564 7C 7C 1B 78 */ mr r28, r3 /* 800AC628 000A9568 7C BF 2B 78 */ mr r31, r5 /* 800AC62C 000A956C 7C DD 33 78 */ mr r29, r6 @@ -74,7 +74,7 @@ lbl_800AC708: lbl_800AC71C: /* 800AC71C 000A965C 7F E3 FB 78 */ mr r3, r31 /* 800AC720 000A9660 39 61 00 30 */ addi r11, r1, 0x30 -/* 800AC724 000A9664 48 2B 5A F1 */ bl func_80362214 +/* 800AC724 000A9664 48 2B 5A F1 */ bl _restgpr_24 /* 800AC728 000A9668 80 01 00 34 */ lwz r0, 0x34(r1) /* 800AC72C 000A966C 7C 08 03 A6 */ mtlr r0 /* 800AC730 000A9670 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/d/d_a/d_a_alink/asm/func_800AC754.s b/include/d/d_a/d_a_alink/asm/func_800AC754.s index 624a99cdcc..1e0b381ed2 100644 --- a/include/d/d_a/d_a_alink/asm/func_800AC754.s +++ b/include/d/d_a/d_a_alink/asm/func_800AC754.s @@ -14,7 +14,7 @@ /* 800AC788 000A96C8 DB 41 00 50 */ stfd f26, 0x50(r1) /* 800AC78C 000A96CC F3 41 00 58 */ psq_st f26, 88(r1), 0, 0 /* 800AC790 000A96D0 39 61 00 50 */ addi r11, r1, 0x50 -/* 800AC794 000A96D4 48 2B 5A 35 */ bl func_803621C8 +/* 800AC794 000A96D4 48 2B 5A 35 */ bl _savegpr_24 /* 800AC798 000A96D8 7C 78 1B 78 */ mr r24, r3 /* 800AC79C 000A96DC 7C 99 23 78 */ mr r25, r4 /* 800AC7A0 000A96E0 7C BA 2B 78 */ mr r26, r5 @@ -178,7 +178,7 @@ lbl_800AC9C8: /* 800AC9F4 000A9934 E3 41 00 58 */ psq_l f26, 88(r1), 0, 0 /* 800AC9F8 000A9938 CB 41 00 50 */ lfd f26, 0x50(r1) /* 800AC9FC 000A993C 39 61 00 50 */ addi r11, r1, 0x50 -/* 800ACA00 000A9940 48 2B 58 15 */ bl func_80362214 +/* 800ACA00 000A9940 48 2B 58 15 */ bl _restgpr_24 /* 800ACA04 000A9944 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 800ACA08 000A9948 7C 08 03 A6 */ mtlr r0 /* 800ACA0C 000A994C 38 21 00 B0 */ addi r1, r1, 0xb0 diff --git a/include/d/d_a/d_a_alink/asm/func_800AD170.s b/include/d/d_a/d_a_alink/asm/func_800AD170.s index 0e4b3fccca..92249a59ab 100644 --- a/include/d/d_a/d_a_alink/asm/func_800AD170.s +++ b/include/d/d_a/d_a_alink/asm/func_800AD170.s @@ -2,7 +2,7 @@ /* 800AD174 000AA0B4 7C 08 02 A6 */ mflr r0 /* 800AD178 000AA0B8 90 01 00 34 */ stw r0, 0x34(r1) /* 800AD17C 000AA0BC 39 61 00 30 */ addi r11, r1, 0x30 -/* 800AD180 000AA0C0 48 2B 50 49 */ bl func_803621C8 +/* 800AD180 000AA0C0 48 2B 50 49 */ bl _savegpr_24 /* 800AD184 000AA0C4 7C 7F 1B 78 */ mr r31, r3 /* 800AD188 000AA0C8 83 83 1F 2C */ lwz r28, 0x1f2c(r3) /* 800AD18C 000AA0CC 83 63 1F 34 */ lwz r27, 0x1f34(r3) @@ -93,7 +93,7 @@ lbl_800AD2B0: /* 800AD2B8 000AA1F8 80 7F 06 F8 */ lwz r3, 0x6f8(r31) /* 800AD2BC 000AA1FC 4B FF BF 8D */ bl daAlink_c_NS_simpleAnmPlay /* 800AD2C0 000AA200 39 61 00 30 */ addi r11, r1, 0x30 -/* 800AD2C4 000AA204 48 2B 4F 51 */ bl func_80362214 +/* 800AD2C4 000AA204 48 2B 4F 51 */ bl _restgpr_24 /* 800AD2C8 000AA208 80 01 00 34 */ lwz r0, 0x34(r1) /* 800AD2CC 000AA20C 7C 08 03 A6 */ mtlr r0 /* 800AD2D0 000AA210 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/d/d_a/d_a_alink/asm/func_800AD3D8.s b/include/d/d_a/d_a_alink/asm/func_800AD3D8.s index 402864709e..3253365c2f 100644 --- a/include/d/d_a/d_a_alink/asm/func_800AD3D8.s +++ b/include/d/d_a/d_a_alink/asm/func_800AD3D8.s @@ -10,7 +10,7 @@ /* 800AD3FC 000AA33C DB 81 00 30 */ stfd f28, 0x30(r1) /* 800AD400 000AA340 F3 81 00 38 */ psq_st f28, 56(r1), 0, 0 /* 800AD404 000AA344 39 61 00 30 */ addi r11, r1, 0x30 -/* 800AD408 000AA348 48 2B 4D C5 */ bl func_803621CC +/* 800AD408 000AA348 48 2B 4D C5 */ bl _savegpr_25 /* 800AD40C 000AA34C 7C 7A 1B 78 */ mr r26, r3 /* 800AD410 000AA350 7C 9B 23 78 */ mr r27, r4 /* 800AD414 000AA354 7C BC 2B 78 */ mr r28, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_800B3500.s b/include/d/d_a/d_a_alink/asm/func_800B3500.s index 7e0bad0be6..3818855066 100644 --- a/include/d/d_a/d_a_alink/asm/func_800B3500.s +++ b/include/d/d_a/d_a_alink/asm/func_800B3500.s @@ -2,7 +2,7 @@ /* 800B3504 000B0444 7C 08 02 A6 */ mflr r0 /* 800B3508 000B0448 90 01 00 34 */ stw r0, 0x34(r1) /* 800B350C 000B044C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800B3510 000B0450 48 2A EC BD */ bl func_803621CC +/* 800B3510 000B0450 48 2A EC BD */ bl _savegpr_25 /* 800B3514 000B0454 7C 7D 1B 78 */ mr r29, r3 /* 800B3518 000B0458 3B E0 00 01 */ li r31, 1 /* 800B351C 000B045C 7F FE FB 78 */ mr r30, r31 diff --git a/include/d/d_a/d_a_alink/asm/func_800C1F6C.s b/include/d/d_a/d_a_alink/asm/func_800C1F6C.s index 57281d2404..7014d012a7 100644 --- a/include/d/d_a/d_a_alink/asm/func_800C1F6C.s +++ b/include/d/d_a/d_a_alink/asm/func_800C1F6C.s @@ -2,7 +2,7 @@ /* 800C1F70 000BEEB0 7C 08 02 A6 */ mflr r0 /* 800C1F74 000BEEB4 90 01 00 34 */ stw r0, 0x34(r1) /* 800C1F78 000BEEB8 39 61 00 30 */ addi r11, r1, 0x30 -/* 800C1F7C 000BEEBC 48 2A 02 51 */ bl func_803621CC +/* 800C1F7C 000BEEBC 48 2A 02 51 */ bl _savegpr_25 /* 800C1F80 000BEEC0 7C 79 1B 78 */ mr r25, r3 /* 800C1F84 000BEEC4 7C 9A 23 78 */ mr r26, r4 /* 800C1F88 000BEEC8 A0 A3 2F E8 */ lhz r5, 0x2fe8(r3) diff --git a/include/d/d_a/d_a_alink/asm/func_800CF380.s b/include/d/d_a/d_a_alink/asm/func_800CF380.s index 1290aa6cf2..450111caca 100644 --- a/include/d/d_a/d_a_alink/asm/func_800CF380.s +++ b/include/d/d_a/d_a_alink/asm/func_800CF380.s @@ -144,7 +144,7 @@ /* 800CF584 000CC4C4 38 03 72 18 */ addi r0, r3, lbl_803A7218@l /* 800CF588 000CC4C8 90 1A 01 1C */ stw r0, 0x11c(r26) /* 800CF58C 000CC4CC 38 7A 01 24 */ addi r3, r26, 0x124 -/* 800CF590 000CC4D0 48 19 F9 F9 */ bl cM3dGCps +/* 800CF590 000CC4D0 48 19 F9 F9 */ bl __ct__8cM3dGCpsFv /* 800CF594 000CC4D4 3C 60 80 3C */ lis r3, lbl_803C3608@ha /* 800CF598 000CC4D8 38 63 36 08 */ addi r3, r3, lbl_803C3608@l /* 800CF59C 000CC4DC 90 7A 01 20 */ stw r3, 0x120(r26) diff --git a/include/d/d_a/d_a_alink/asm/func_800D1540.s b/include/d/d_a/d_a_alink/asm/func_800D1540.s index fe35748d29..6556ff71a4 100644 --- a/include/d/d_a/d_a_alink/asm/func_800D1540.s +++ b/include/d/d_a/d_a_alink/asm/func_800D1540.s @@ -3,7 +3,7 @@ /* 800D1548 000CE488 90 01 00 34 */ stw r0, 0x34(r1) /* 800D154C 000CE48C DB E1 00 28 */ stfd f31, 0x28(r1) /* 800D1550 000CE490 39 61 00 28 */ addi r11, r1, 0x28 -/* 800D1554 000CE494 48 29 0C 79 */ bl func_803621CC +/* 800D1554 000CE494 48 29 0C 79 */ bl _savegpr_25 /* 800D1558 000CE498 7C 7A 1B 78 */ mr r26, r3 /* 800D155C 000CE49C 7C 9B 23 78 */ mr r27, r4 /* 800D1560 000CE4A0 7C BC 2B 78 */ mr r28, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_800D34D8.s b/include/d/d_a/d_a_alink/asm/func_800D34D8.s index 9ab5273de1..eb5de770b8 100644 --- a/include/d/d_a/d_a_alink/asm/func_800D34D8.s +++ b/include/d/d_a/d_a_alink/asm/func_800D34D8.s @@ -4,7 +4,7 @@ /* 800D34E4 000D0424 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800D34E8 000D0428 F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* 800D34EC 000D042C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800D34F0 000D0430 48 28 EC DD */ bl func_803621CC +/* 800D34F0 000D0430 48 28 EC DD */ bl _savegpr_25 /* 800D34F4 000D0434 7C 7C 1B 78 */ mr r28, r3 /* 800D34F8 000D0438 7C 9D 23 78 */ mr r29, r4 /* 800D34FC 000D043C 3C 80 80 39 */ lis r4, lbl_8038D658@ha diff --git a/include/d/d_a/d_a_alink/asm/func_800DA180.s b/include/d/d_a/d_a_alink/asm/func_800DA180.s index 9eaa3c5145..1be6a0c707 100644 --- a/include/d/d_a/d_a_alink/asm/func_800DA180.s +++ b/include/d/d_a/d_a_alink/asm/func_800DA180.s @@ -2,7 +2,7 @@ /* 800DA184 000D70C4 7C 08 02 A6 */ mflr r0 /* 800DA188 000D70C8 90 01 00 44 */ stw r0, 0x44(r1) /* 800DA18C 000D70CC 39 61 00 40 */ addi r11, r1, 0x40 -/* 800DA190 000D70D0 48 28 80 3D */ bl func_803621CC +/* 800DA190 000D70D0 48 28 80 3D */ bl _savegpr_25 /* 800DA194 000D70D4 7C 7A 1B 78 */ mr r26, r3 /* 800DA198 000D70D8 7C 9B 23 78 */ mr r27, r4 /* 800DA19C 000D70DC 7C BC 2B 78 */ mr r28, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_800DA82C.s b/include/d/d_a/d_a_alink/asm/func_800DA82C.s index 64c89a305b..94f534c548 100644 --- a/include/d/d_a/d_a_alink/asm/func_800DA82C.s +++ b/include/d/d_a/d_a_alink/asm/func_800DA82C.s @@ -2,7 +2,7 @@ /* 800DA830 000D7770 7C 08 02 A6 */ mflr r0 /* 800DA834 000D7774 90 01 00 64 */ stw r0, 0x64(r1) /* 800DA838 000D7778 39 61 00 60 */ addi r11, r1, 0x60 -/* 800DA83C 000D777C 48 28 79 8D */ bl func_803621C8 +/* 800DA83C 000D777C 48 28 79 8D */ bl _savegpr_24 /* 800DA840 000D7780 7C 78 1B 78 */ mr r24, r3 /* 800DA844 000D7784 7C 99 23 78 */ mr r25, r4 /* 800DA848 000D7788 7C BA 2B 78 */ mr r26, r5 @@ -272,7 +272,7 @@ lbl_800DABB8: /* 800DAC0C 000D7B4C 38 60 00 01 */ li r3, 1 lbl_800DAC10: /* 800DAC10 000D7B50 39 61 00 60 */ addi r11, r1, 0x60 -/* 800DAC14 000D7B54 48 28 76 01 */ bl func_80362214 +/* 800DAC14 000D7B54 48 28 76 01 */ bl _restgpr_24 /* 800DAC18 000D7B58 80 01 00 64 */ lwz r0, 0x64(r1) /* 800DAC1C 000D7B5C 7C 08 03 A6 */ mtlr r0 /* 800DAC20 000D7B60 38 21 00 60 */ addi r1, r1, 0x60 diff --git a/include/d/d_a/d_a_alink/asm/func_800DC678.s b/include/d/d_a/d_a_alink/asm/func_800DC678.s index 5693162250..66c7ac3d52 100644 --- a/include/d/d_a/d_a_alink/asm/func_800DC678.s +++ b/include/d/d_a/d_a_alink/asm/func_800DC678.s @@ -2,7 +2,7 @@ /* 800DC67C 000D95BC 7C 08 02 A6 */ mflr r0 /* 800DC680 000D95C0 90 01 00 34 */ stw r0, 0x34(r1) /* 800DC684 000D95C4 39 61 00 30 */ addi r11, r1, 0x30 -/* 800DC688 000D95C8 48 28 5B 45 */ bl func_803621CC +/* 800DC688 000D95C8 48 28 5B 45 */ bl _savegpr_25 /* 800DC68C 000D95CC 7C 7E 1B 78 */ mr r30, r3 /* 800DC690 000D95D0 3B E0 00 00 */ li r31, 0 /* 800DC694 000D95D4 7F FC FB 78 */ mr r28, r31 diff --git a/include/d/d_a/d_a_alink/asm/func_800E3F50.s b/include/d/d_a/d_a_alink/asm/func_800E3F50.s index a24ef68c07..bfcda997d5 100644 --- a/include/d/d_a/d_a_alink/asm/func_800E3F50.s +++ b/include/d/d_a/d_a_alink/asm/func_800E3F50.s @@ -4,7 +4,7 @@ /* 800E3F5C 000E0E9C DB E1 01 80 */ stfd f31, 0x180(r1) /* 800E3F60 000E0EA0 F3 E1 01 88 */ psq_st f31, 392(r1), 0, 0 /* 800E3F64 000E0EA4 39 61 01 80 */ addi r11, r1, 0x180 -/* 800E3F68 000E0EA8 48 27 E2 65 */ bl func_803621CC +/* 800E3F68 000E0EA8 48 27 E2 65 */ bl _savegpr_25 /* 800E3F6C 000E0EAC 7C 7F 1B 78 */ mr r31, r3 /* 800E3F70 000E0EB0 3C 60 80 42 */ lis r3, lbl_80425508@ha /* 800E3F74 000E0EB4 3B 83 55 08 */ addi r28, r3, lbl_80425508@l diff --git a/include/d/d_a/d_a_alink/asm/func_800EF95C.s b/include/d/d_a/d_a_alink/asm/func_800EF95C.s index c4a86541d7..702985e366 100644 --- a/include/d/d_a/d_a_alink/asm/func_800EF95C.s +++ b/include/d/d_a/d_a_alink/asm/func_800EF95C.s @@ -6,7 +6,7 @@ /* 800EF970 000EC8B0 DB C1 00 60 */ stfd f30, 0x60(r1) /* 800EF974 000EC8B4 F3 C1 00 68 */ psq_st f30, 104(r1), 0, 0 /* 800EF978 000EC8B8 39 61 00 60 */ addi r11, r1, 0x60 -/* 800EF97C 000EC8BC 48 27 28 51 */ bl func_803621CC +/* 800EF97C 000EC8BC 48 27 28 51 */ bl _savegpr_25 /* 800EF980 000EC8C0 7C 7A 1B 78 */ mr r26, r3 /* 800EF984 000EC8C4 3C 60 80 42 */ lis r3, lbl_80425508@ha /* 800EF988 000EC8C8 3B 63 55 08 */ addi r27, r3, lbl_80425508@l diff --git a/include/d/d_a/d_a_alink/asm/func_800F81C0.s b/include/d/d_a/d_a_alink/asm/func_800F81C0.s index 8948e0a914..b84d4ebfe0 100644 --- a/include/d/d_a/d_a_alink/asm/func_800F81C0.s +++ b/include/d/d_a/d_a_alink/asm/func_800F81C0.s @@ -2,7 +2,7 @@ /* 800F81C4 000F5104 7C 08 02 A6 */ mflr r0 /* 800F81C8 000F5108 90 01 00 94 */ stw r0, 0x94(r1) /* 800F81CC 000F510C 39 61 00 90 */ addi r11, r1, 0x90 -/* 800F81D0 000F5110 48 26 9F FD */ bl func_803621CC +/* 800F81D0 000F5110 48 26 9F FD */ bl _savegpr_25 /* 800F81D4 000F5114 7C 79 1B 78 */ mr r25, r3 /* 800F81D8 000F5118 7C BD 2B 78 */ mr r29, r5 /* 800F81DC 000F511C 7C DA 33 78 */ mr r26, r6 diff --git a/include/d/d_a/d_a_alink/asm/func_800F9474.s b/include/d/d_a/d_a_alink/asm/func_800F9474.s index 0a59f10b30..7f8d8300d2 100644 --- a/include/d/d_a/d_a_alink/asm/func_800F9474.s +++ b/include/d/d_a/d_a_alink/asm/func_800F9474.s @@ -4,7 +4,7 @@ /* 800F9480 000F63C0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800F9484 000F63C4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* 800F9488 000F63C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 800F948C 000F63CC 48 26 8D 41 */ bl func_803621CC +/* 800F948C 000F63CC 48 26 8D 41 */ bl _savegpr_25 /* 800F9490 000F63D0 7C 7B 1B 78 */ mr r27, r3 /* 800F9494 000F63D4 7C 9C 23 78 */ mr r28, r4 /* 800F9498 000F63D8 7C BD 2B 78 */ mr r29, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_800F95B8.s b/include/d/d_a/d_a_alink/asm/func_800F95B8.s index 253cf4df10..efd3754496 100644 --- a/include/d/d_a/d_a_alink/asm/func_800F95B8.s +++ b/include/d/d_a/d_a_alink/asm/func_800F95B8.s @@ -4,7 +4,7 @@ /* 800F95C4 000F6504 DB E1 00 90 */ stfd f31, 0x90(r1) /* 800F95C8 000F6508 F3 E1 00 98 */ psq_st f31, 152(r1), 0, 0 /* 800F95CC 000F650C 39 61 00 90 */ addi r11, r1, 0x90 -/* 800F95D0 000F6510 48 26 8B F9 */ bl func_803621C8 +/* 800F95D0 000F6510 48 26 8B F9 */ bl _savegpr_24 /* 800F95D4 000F6514 7C 79 1B 78 */ mr r25, r3 /* 800F95D8 000F6518 3C 80 80 39 */ lis r4, lbl_8038D658@ha /* 800F95DC 000F651C 3B 84 D6 58 */ addi r28, r4, lbl_8038D658@l @@ -287,7 +287,7 @@ lbl_800F99DC: /* 800F99DC 000F691C E3 E1 00 98 */ psq_l f31, 152(r1), 0, 0 /* 800F99E0 000F6920 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800F99E4 000F6924 39 61 00 90 */ addi r11, r1, 0x90 -/* 800F99E8 000F6928 48 26 88 2D */ bl func_80362214 +/* 800F99E8 000F6928 48 26 88 2D */ bl _restgpr_24 /* 800F99EC 000F692C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800F99F0 000F6930 7C 08 03 A6 */ mtlr r0 /* 800F99F4 000F6934 38 21 00 A0 */ addi r1, r1, 0xa0 diff --git a/include/d/d_a/d_a_alink/asm/func_800FA070.s b/include/d/d_a/d_a_alink/asm/func_800FA070.s index 1c95f1c83b..3d047551e6 100644 --- a/include/d/d_a/d_a_alink/asm/func_800FA070.s +++ b/include/d/d_a/d_a_alink/asm/func_800FA070.s @@ -6,7 +6,7 @@ /* 800FA084 000F6FC4 DB C1 00 90 */ stfd f30, 0x90(r1) /* 800FA088 000F6FC8 F3 C1 00 98 */ psq_st f30, 152(r1), 0, 0 /* 800FA08C 000F6FCC 39 61 00 90 */ addi r11, r1, 0x90 -/* 800FA090 000F6FD0 48 26 81 39 */ bl func_803621C8 +/* 800FA090 000F6FD0 48 26 81 39 */ bl _savegpr_24 /* 800FA094 000F6FD4 7C 7D 1B 78 */ mr r29, r3 /* 800FA098 000F6FD8 7C BE 2B 78 */ mr r30, r5 /* 800FA09C 000F6FDC 3B E0 00 00 */ li r31, 0 @@ -179,7 +179,7 @@ lbl_800FA310: /* 800FA318 000F7258 E3 C1 00 98 */ psq_l f30, 152(r1), 0, 0 /* 800FA31C 000F725C CB C1 00 90 */ lfd f30, 0x90(r1) /* 800FA320 000F7260 39 61 00 90 */ addi r11, r1, 0x90 -/* 800FA324 000F7264 48 26 7E F1 */ bl func_80362214 +/* 800FA324 000F7264 48 26 7E F1 */ bl _restgpr_24 /* 800FA328 000F7268 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 800FA32C 000F726C 7C 08 03 A6 */ mtlr r0 /* 800FA330 000F7270 38 21 00 B0 */ addi r1, r1, 0xb0 diff --git a/include/d/d_a/d_a_alink/asm/func_80109BDC.s b/include/d/d_a/d_a_alink/asm/func_80109BDC.s index 3b91f45f2b..3303937219 100644 --- a/include/d/d_a/d_a_alink/asm/func_80109BDC.s +++ b/include/d/d_a/d_a_alink/asm/func_80109BDC.s @@ -8,7 +8,7 @@ /* 80109BF8 00106B38 DB A1 02 10 */ stfd f29, 0x210(r1) /* 80109BFC 00106B3C F3 A1 02 18 */ psq_st f29, 536(r1), 0, 0 /* 80109C00 00106B40 39 61 02 10 */ addi r11, r1, 0x210 -/* 80109C04 00106B44 48 25 85 C9 */ bl func_803621CC +/* 80109C04 00106B44 48 25 85 C9 */ bl _savegpr_25 /* 80109C08 00106B48 7C 7F 1B 78 */ mr r31, r3 /* 80109C0C 00106B4C 80 63 06 50 */ lwz r3, 0x650(r3) /* 80109C10 00106B50 80 63 00 84 */ lwz r3, 0x84(r3) diff --git a/include/d/d_a/d_a_alink/asm/func_8010BEF0.s b/include/d/d_a/d_a_alink/asm/func_8010BEF0.s index c5b0d0d6d7..0e3e4d15e4 100644 --- a/include/d/d_a/d_a_alink/asm/func_8010BEF0.s +++ b/include/d/d_a/d_a_alink/asm/func_8010BEF0.s @@ -6,7 +6,7 @@ /* 8010BF04 00108E44 DB C1 00 F0 */ stfd f30, 0xf0(r1) /* 8010BF08 00108E48 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, 0 /* 8010BF0C 00108E4C 39 61 00 F0 */ addi r11, r1, 0xf0 -/* 8010BF10 00108E50 48 25 62 B9 */ bl func_803621C8 +/* 8010BF10 00108E50 48 25 62 B9 */ bl _savegpr_24 /* 8010BF14 00108E54 7C 79 1B 78 */ mr r25, r3 /* 8010BF18 00108E58 83 E3 28 50 */ lwz r31, 0x2850(r3) /* 8010BF1C 00108E5C 28 1F 00 00 */ cmplwi r31, 0 @@ -634,7 +634,7 @@ lbl_8010C808: /* 8010C810 00109750 E3 C1 00 F8 */ psq_l f30, 248(r1), 0, 0 /* 8010C814 00109754 CB C1 00 F0 */ lfd f30, 0xf0(r1) /* 8010C818 00109758 39 61 00 F0 */ addi r11, r1, 0xf0 -/* 8010C81C 0010975C 48 25 59 F9 */ bl func_80362214 +/* 8010C81C 0010975C 48 25 59 F9 */ bl _restgpr_24 /* 8010C820 00109760 80 01 01 14 */ lwz r0, 0x114(r1) /* 8010C824 00109764 7C 08 03 A6 */ mtlr r0 /* 8010C828 00109768 38 21 01 10 */ addi r1, r1, 0x110 diff --git a/include/d/d_a/d_a_alink/asm/func_80111A9C.s b/include/d/d_a/d_a_alink/asm/func_80111A9C.s index 63d94f14e5..624cff3e32 100644 --- a/include/d/d_a/d_a_alink/asm/func_80111A9C.s +++ b/include/d/d_a/d_a_alink/asm/func_80111A9C.s @@ -2,7 +2,7 @@ /* 80111AA0 0010E9E0 7C 08 02 A6 */ mflr r0 /* 80111AA4 0010E9E4 90 01 00 34 */ stw r0, 0x34(r1) /* 80111AA8 0010E9E8 39 61 00 30 */ addi r11, r1, 0x30 -/* 80111AAC 0010E9EC 48 25 07 21 */ bl func_803621CC +/* 80111AAC 0010E9EC 48 25 07 21 */ bl _savegpr_25 /* 80111AB0 0010E9F0 7C 79 1B 78 */ mr r25, r3 /* 80111AB4 0010E9F4 7C 9A 23 78 */ mr r26, r4 /* 80111AB8 0010E9F8 7C BB 2B 78 */ mr r27, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_80112E7C.s b/include/d/d_a/d_a_alink/asm/func_80112E7C.s index eca6fb9943..b6a02aaf1e 100644 --- a/include/d/d_a/d_a_alink/asm/func_80112E7C.s +++ b/include/d/d_a/d_a_alink/asm/func_80112E7C.s @@ -8,7 +8,7 @@ /* 80112E98 0010FDD8 DB A1 02 C0 */ stfd f29, 0x2c0(r1) /* 80112E9C 0010FDDC F3 A1 02 C8 */ psq_st f29, 712(r1), 0, 0 /* 80112EA0 0010FDE0 39 61 02 C0 */ addi r11, r1, 0x2c0 -/* 80112EA4 0010FDE4 48 24 F3 25 */ bl func_803621C8 +/* 80112EA4 0010FDE4 48 24 F3 25 */ bl _savegpr_24 /* 80112EA8 0010FDE8 7C 7F 1B 78 */ mr r31, r3 /* 80112EAC 0010FDEC 80 83 38 40 */ lwz r4, 0x3840(r3) /* 80112EB0 0010FDF0 A8 03 30 1A */ lha r0, 0x301a(r3) @@ -952,7 +952,7 @@ lbl_80113C70: /* 80113C80 00110BC0 E3 A1 02 C8 */ psq_l f29, 712(r1), 0, 0 /* 80113C84 00110BC4 CB A1 02 C0 */ lfd f29, 0x2c0(r1) /* 80113C88 00110BC8 39 61 02 C0 */ addi r11, r1, 0x2c0 -/* 80113C8C 00110BCC 48 24 E5 89 */ bl func_80362214 +/* 80113C8C 00110BCC 48 24 E5 89 */ bl _restgpr_24 /* 80113C90 00110BD0 80 01 02 F4 */ lwz r0, 0x2f4(r1) /* 80113C94 00110BD4 7C 08 03 A6 */ mtlr r0 /* 80113C98 00110BD8 38 21 02 F0 */ addi r1, r1, 0x2f0 diff --git a/include/d/d_a/d_a_alink/asm/func_80113D58.s b/include/d/d_a/d_a_alink/asm/func_80113D58.s index 5a5a35f170..218ab5e3cb 100644 --- a/include/d/d_a/d_a_alink/asm/func_80113D58.s +++ b/include/d/d_a/d_a_alink/asm/func_80113D58.s @@ -8,7 +8,7 @@ /* 80113D74 00110CB4 DB A1 01 80 */ stfd f29, 0x180(r1) /* 80113D78 00110CB8 F3 A1 01 88 */ psq_st f29, 392(r1), 0, 0 /* 80113D7C 00110CBC 39 61 01 80 */ addi r11, r1, 0x180 -/* 80113D80 00110CC0 48 24 E4 49 */ bl func_803621C8 +/* 80113D80 00110CC0 48 24 E4 49 */ bl _savegpr_24 /* 80113D84 00110CC4 7C 7F 1B 78 */ mr r31, r3 /* 80113D88 00110CC8 3C 60 80 39 */ lis r3, lbl_8038D658@ha /* 80113D8C 00110CCC 3B C3 D6 58 */ addi r30, r3, lbl_8038D658@l @@ -1331,7 +1331,7 @@ lbl_801150A0: /* 801150C4 00112004 E3 A1 01 88 */ psq_l f29, 392(r1), 0, 0 /* 801150C8 00112008 CB A1 01 80 */ lfd f29, 0x180(r1) /* 801150CC 0011200C 39 61 01 80 */ addi r11, r1, 0x180 -/* 801150D0 00112010 48 24 D1 45 */ bl func_80362214 +/* 801150D0 00112010 48 24 D1 45 */ bl _restgpr_24 /* 801150D4 00112014 80 01 01 B4 */ lwz r0, 0x1b4(r1) /* 801150D8 00112018 7C 08 03 A6 */ mtlr r0 /* 801150DC 0011201C 38 21 01 B0 */ addi r1, r1, 0x1b0 diff --git a/include/d/d_a/d_a_alink/asm/func_801191C4.s b/include/d/d_a/d_a_alink/asm/func_801191C4.s index 600119ed64..4ffdc72144 100644 --- a/include/d/d_a/d_a_alink/asm/func_801191C4.s +++ b/include/d/d_a/d_a_alink/asm/func_801191C4.s @@ -4,7 +4,7 @@ /* 801191D0 00116110 DB E1 00 30 */ stfd f31, 0x30(r1) /* 801191D4 00116114 F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* 801191D8 00116118 39 61 00 30 */ addi r11, r1, 0x30 -/* 801191DC 0011611C 48 24 8F F1 */ bl func_803621CC +/* 801191DC 0011611C 48 24 8F F1 */ bl _savegpr_25 /* 801191E0 00116120 7C 79 1B 78 */ mr r25, r3 /* 801191E4 00116124 7C 9F 23 78 */ mr r31, r4 /* 801191E8 00116128 7C BA 2B 78 */ mr r26, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_801207BC.s b/include/d/d_a/d_a_alink/asm/func_801207BC.s index 20448fc9d4..ef158ed019 100644 --- a/include/d/d_a/d_a_alink/asm/func_801207BC.s +++ b/include/d/d_a/d_a_alink/asm/func_801207BC.s @@ -4,7 +4,7 @@ /* 801207C8 0011D708 DB E1 00 30 */ stfd f31, 0x30(r1) /* 801207CC 0011D70C F3 E1 00 38 */ psq_st f31, 56(r1), 0, 0 /* 801207D0 0011D710 39 61 00 30 */ addi r11, r1, 0x30 -/* 801207D4 0011D714 48 24 19 F5 */ bl func_803621C8 +/* 801207D4 0011D714 48 24 19 F5 */ bl _savegpr_24 /* 801207D8 0011D718 7C 78 1B 78 */ mr r24, r3 /* 801207DC 0011D71C 3B 20 00 00 */ li r25, 0 /* 801207E0 0011D720 3B E0 00 00 */ li r31, 0 @@ -45,7 +45,7 @@ lbl_80120844: /* 80120860 0011D7A0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, 0 /* 80120864 0011D7A4 CB E1 00 30 */ lfd f31, 0x30(r1) /* 80120868 0011D7A8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8012086C 0011D7AC 48 24 19 A9 */ bl func_80362214 +/* 8012086C 0011D7AC 48 24 19 A9 */ bl _restgpr_24 /* 80120870 0011D7B0 80 01 00 44 */ lwz r0, 0x44(r1) /* 80120874 0011D7B4 7C 08 03 A6 */ mtlr r0 /* 80120878 0011D7B8 38 21 00 40 */ addi r1, r1, 0x40 diff --git a/include/d/d_a/d_a_alink/asm/func_8012277C.s b/include/d/d_a/d_a_alink/asm/func_8012277C.s index 5b59034c88..3e083ab180 100644 --- a/include/d/d_a/d_a_alink/asm/func_8012277C.s +++ b/include/d/d_a/d_a_alink/asm/func_8012277C.s @@ -4,7 +4,7 @@ /* 80122788 0011F6C8 DB E1 00 50 */ stfd f31, 0x50(r1) /* 8012278C 0011F6CC F3 E1 00 58 */ psq_st f31, 88(r1), 0, 0 /* 80122790 0011F6D0 39 61 00 50 */ addi r11, r1, 0x50 -/* 80122794 0011F6D4 48 23 FA 35 */ bl func_803621C8 +/* 80122794 0011F6D4 48 23 FA 35 */ bl _savegpr_24 /* 80122798 0011F6D8 7C 7B 1B 78 */ mr r27, r3 /* 8012279C 0011F6DC 3B C0 00 00 */ li r30, 0 /* 801227A0 0011F6E0 3B 40 00 00 */ li r26, 0 @@ -95,7 +95,7 @@ lbl_801228C0: /* 801228D4 0011F814 E3 E1 00 58 */ psq_l f31, 88(r1), 0, 0 /* 801228D8 0011F818 CB E1 00 50 */ lfd f31, 0x50(r1) /* 801228DC 0011F81C 39 61 00 50 */ addi r11, r1, 0x50 -/* 801228E0 0011F820 48 23 F9 35 */ bl func_80362214 +/* 801228E0 0011F820 48 23 F9 35 */ bl _restgpr_24 /* 801228E4 0011F824 80 01 00 64 */ lwz r0, 0x64(r1) /* 801228E8 0011F828 7C 08 03 A6 */ mtlr r0 /* 801228EC 0011F82C 38 21 00 60 */ addi r1, r1, 0x60 diff --git a/include/d/d_a/d_a_alink/asm/func_801241E0.s b/include/d/d_a/d_a_alink/asm/func_801241E0.s index 8a300ad8c2..7b87d0e28c 100644 --- a/include/d/d_a/d_a_alink/asm/func_801241E0.s +++ b/include/d/d_a/d_a_alink/asm/func_801241E0.s @@ -2,7 +2,7 @@ /* 801241E4 00121124 7C 08 02 A6 */ mflr r0 /* 801241E8 00121128 90 01 00 54 */ stw r0, 0x54(r1) /* 801241EC 0012112C 39 61 00 50 */ addi r11, r1, 0x50 -/* 801241F0 00121130 48 23 DF D9 */ bl func_803621C8 +/* 801241F0 00121130 48 23 DF D9 */ bl _savegpr_24 /* 801241F4 00121134 7C 7B 1B 78 */ mr r27, r3 /* 801241F8 00121138 80 83 05 8C */ lwz r4, 0x58c(r3) /* 801241FC 0012113C 3C 60 00 02 */ lis r3, 0x00021800@ha @@ -206,7 +206,7 @@ lbl_801244A0: /* 801244C4 00121404 3B 9C 00 02 */ addi r28, r28, 2 /* 801244C8 00121408 41 80 FE 74 */ blt lbl_8012433C /* 801244CC 0012140C 39 61 00 50 */ addi r11, r1, 0x50 -/* 801244D0 00121410 48 23 DD 45 */ bl func_80362214 +/* 801244D0 00121410 48 23 DD 45 */ bl _restgpr_24 /* 801244D4 00121414 80 01 00 54 */ lwz r0, 0x54(r1) /* 801244D8 00121418 7C 08 03 A6 */ mtlr r0 /* 801244DC 0012141C 38 21 00 50 */ addi r1, r1, 0x50 diff --git a/include/d/d_a/d_a_alink/asm/func_80124EA8.s b/include/d/d_a/d_a_alink/asm/func_80124EA8.s index 826623e912..75f8b5c445 100644 --- a/include/d/d_a/d_a_alink/asm/func_80124EA8.s +++ b/include/d/d_a/d_a_alink/asm/func_80124EA8.s @@ -2,7 +2,7 @@ /* 80124EAC 00121DEC 7C 08 02 A6 */ mflr r0 /* 80124EB0 00121DF0 90 01 00 34 */ stw r0, 0x34(r1) /* 80124EB4 00121DF4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80124EB8 00121DF8 48 23 D3 11 */ bl func_803621C8 +/* 80124EB8 00121DF8 48 23 D3 11 */ bl _savegpr_24 /* 80124EBC 00121DFC 7C 7B 1B 78 */ mr r27, r3 /* 80124EC0 00121E00 3B BB 32 D8 */ addi r29, r27, 0x32d8 /* 80124EC4 00121E04 80 03 05 74 */ lwz r0, 0x574(r3) @@ -57,7 +57,7 @@ lbl_80124F00: /* 80124F84 00121EC4 3B BD 00 30 */ addi r29, r29, 0x30 /* 80124F88 00121EC8 41 80 FF 78 */ blt lbl_80124F00 /* 80124F8C 00121ECC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80124F90 00121ED0 48 23 D2 85 */ bl func_80362214 +/* 80124F90 00121ED0 48 23 D2 85 */ bl _restgpr_24 /* 80124F94 00121ED4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80124F98 00121ED8 7C 08 03 A6 */ mtlr r0 /* 80124F9C 00121EDC 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/d/d_a/d_a_alink/asm/func_80126F3C.s b/include/d/d_a/d_a_alink/asm/func_80126F3C.s index dd46343acd..74276911fa 100644 --- a/include/d/d_a/d_a_alink/asm/func_80126F3C.s +++ b/include/d/d_a/d_a_alink/asm/func_80126F3C.s @@ -2,7 +2,7 @@ /* 80126F40 00123E80 7C 08 02 A6 */ mflr r0 /* 80126F44 00123E84 90 01 00 44 */ stw r0, 0x44(r1) /* 80126F48 00123E88 39 61 00 40 */ addi r11, r1, 0x40 -/* 80126F4C 00123E8C 48 23 B2 81 */ bl func_803621CC +/* 80126F4C 00123E8C 48 23 B2 81 */ bl _savegpr_25 /* 80126F50 00123E90 7C 7F 1B 78 */ mr r31, r3 /* 80126F54 00123E94 7C 9D 23 78 */ mr r29, r4 /* 80126F58 00123E98 3C 60 80 39 */ lis r3, lbl_8038D658@ha diff --git a/include/d/d_a/d_a_alink/asm/func_80127F50.s b/include/d/d_a/d_a_alink/asm/func_80127F50.s index 984fef5cdf..20bfc27bfb 100644 --- a/include/d/d_a/d_a_alink/asm/func_80127F50.s +++ b/include/d/d_a/d_a_alink/asm/func_80127F50.s @@ -14,7 +14,7 @@ /* 80127F84 00124EC4 DB 41 00 50 */ stfd f26, 0x50(r1) /* 80127F88 00124EC8 F3 41 00 58 */ psq_st f26, 88(r1), 0, 0 /* 80127F8C 00124ECC 39 61 00 50 */ addi r11, r1, 0x50 -/* 80127F90 00124ED0 48 23 A2 3D */ bl func_803621CC +/* 80127F90 00124ED0 48 23 A2 3D */ bl _savegpr_25 /* 80127F94 00124ED4 7C 79 1B 78 */ mr r25, r3 /* 80127F98 00124ED8 C3 E2 92 C0 */ lfs f31, lbl_80452CC0-_SDA2_BASE_(r2) /* 80127F9C 00124EDC 80 03 05 74 */ lwz r0, 0x574(r3) diff --git a/include/d/d_a/d_a_alink/asm/func_8012948C.s b/include/d/d_a/d_a_alink/asm/func_8012948C.s index daabce75d4..786024c53b 100644 --- a/include/d/d_a/d_a_alink/asm/func_8012948C.s +++ b/include/d/d_a/d_a_alink/asm/func_8012948C.s @@ -10,7 +10,7 @@ /* 801294B0 001263F0 DB 81 00 30 */ stfd f28, 0x30(r1) /* 801294B4 001263F4 F3 81 00 38 */ psq_st f28, 56(r1), 0, 0 /* 801294B8 001263F8 39 61 00 30 */ addi r11, r1, 0x30 -/* 801294BC 001263FC 48 23 8D 11 */ bl func_803621CC +/* 801294BC 001263FC 48 23 8D 11 */ bl _savegpr_25 /* 801294C0 00126400 7C 7B 1B 78 */ mr r27, r3 /* 801294C4 00126404 FF 80 08 90 */ fmr f28, f1 /* 801294C8 00126408 FF A0 10 90 */ fmr f29, f2 diff --git a/include/d/d_a/d_a_alink/asm/func_8012A498.s b/include/d/d_a/d_a_alink/asm/func_8012A498.s index 6fb6d66e47..9b717b60fe 100644 --- a/include/d/d_a/d_a_alink/asm/func_8012A498.s +++ b/include/d/d_a/d_a_alink/asm/func_8012A498.s @@ -12,7 +12,7 @@ /* 8012A4C4 00127404 DB 61 00 90 */ stfd f27, 0x90(r1) /* 8012A4C8 00127408 F3 61 00 98 */ psq_st f27, 152(r1), 0, 0 /* 8012A4CC 0012740C 39 61 00 90 */ addi r11, r1, 0x90 -/* 8012A4D0 00127410 48 23 7C FD */ bl func_803621CC +/* 8012A4D0 00127410 48 23 7C FD */ bl _savegpr_25 /* 8012A4D4 00127414 7C 7A 1B 78 */ mr r26, r3 /* 8012A4D8 00127418 80 83 05 7C */ lwz r4, 0x57c(r3) /* 8012A4DC 0012741C 3C 60 FF 80 */ lis r3, 0xFF7FFBFF@ha diff --git a/include/d/d_a/d_a_alink/asm/func_80130BC4.s b/include/d/d_a/d_a_alink/asm/func_80130BC4.s index 246ba3cb5b..e84bfd7736 100644 --- a/include/d/d_a/d_a_alink/asm/func_80130BC4.s +++ b/include/d/d_a/d_a_alink/asm/func_80130BC4.s @@ -4,7 +4,7 @@ /* 80130BD0 0012DB10 DB E1 00 40 */ stfd f31, 0x40(r1) /* 80130BD4 0012DB14 F3 E1 00 48 */ psq_st f31, 72(r1), 0, 0 /* 80130BD8 0012DB18 39 61 00 40 */ addi r11, r1, 0x40 -/* 80130BDC 0012DB1C 48 23 15 F1 */ bl func_803621CC +/* 80130BDC 0012DB1C 48 23 15 F1 */ bl _savegpr_25 /* 80130BE0 0012DB20 7C 7F 1B 78 */ mr r31, r3 /* 80130BE4 0012DB24 3B BF 1F D0 */ addi r29, r31, 0x1fd0 /* 80130BE8 0012DB28 83 83 28 10 */ lwz r28, 0x2810(r3) diff --git a/include/d/d_a/d_a_alink/asm/func_80136624.s b/include/d/d_a/d_a_alink/asm/func_80136624.s index ef2909dbfc..6fdac20a4c 100644 --- a/include/d/d_a/d_a_alink/asm/func_80136624.s +++ b/include/d/d_a/d_a_alink/asm/func_80136624.s @@ -2,7 +2,7 @@ /* 80136628 00133568 7C 08 02 A6 */ mflr r0 /* 8013662C 0013356C 90 01 00 44 */ stw r0, 0x44(r1) /* 80136630 00133570 39 61 00 40 */ addi r11, r1, 0x40 -/* 80136634 00133574 48 22 BB 99 */ bl func_803621CC +/* 80136634 00133574 48 22 BB 99 */ bl _savegpr_25 /* 80136638 00133578 7C 7C 1B 78 */ mr r28, r3 /* 8013663C 0013357C 7C 9D 23 78 */ mr r29, r4 /* 80136640 00133580 7C B9 2B 78 */ mr r25, r5 diff --git a/include/d/d_a/d_a_alink/asm/func_801377F0.s b/include/d/d_a/d_a_alink/asm/func_801377F0.s index 0b3352e99d..64bb80a896 100644 --- a/include/d/d_a/d_a_alink/asm/func_801377F0.s +++ b/include/d/d_a/d_a_alink/asm/func_801377F0.s @@ -4,7 +4,7 @@ /* 801377FC 0013473C DB E1 00 80 */ stfd f31, 0x80(r1) /* 80137800 00134740 F3 E1 00 88 */ psq_st f31, 136(r1), 0, 0 /* 80137804 00134744 39 61 00 80 */ addi r11, r1, 0x80 -/* 80137808 00134748 48 22 A9 C1 */ bl func_803621C8 +/* 80137808 00134748 48 22 A9 C1 */ bl _savegpr_24 /* 8013780C 0013474C 7C 79 1B 78 */ mr r25, r3 /* 80137810 00134750 3C 80 80 39 */ lis r4, lbl_8038D658@ha /* 80137814 00134754 3B 84 D6 58 */ addi r28, r4, lbl_8038D658@l @@ -318,7 +318,7 @@ lbl_80137C70: /* 80137C70 00134BB0 E3 E1 00 88 */ psq_l f31, 136(r1), 0, 0 /* 80137C74 00134BB4 CB E1 00 80 */ lfd f31, 0x80(r1) /* 80137C78 00134BB8 39 61 00 80 */ addi r11, r1, 0x80 -/* 80137C7C 00134BBC 48 22 A5 99 */ bl func_80362214 +/* 80137C7C 00134BBC 48 22 A5 99 */ bl _restgpr_24 /* 80137C80 00134BC0 80 01 00 94 */ lwz r0, 0x94(r1) /* 80137C84 00134BC4 7C 08 03 A6 */ mtlr r0 /* 80137C88 00134BC8 38 21 00 90 */ addi r1, r1, 0x90 diff --git a/include/d/d_a/d_a_alink/asm/func_80140FA0.s b/include/d/d_a/d_a_alink/asm/func_80140FA0.s index 37ec6f6418..5ad93fe176 100644 --- a/include/d/d_a/d_a_alink/asm/func_80140FA0.s +++ b/include/d/d_a/d_a_alink/asm/func_80140FA0.s @@ -11,7 +11,7 @@ /* 80140FC8 0013DF08 38 03 72 18 */ addi r0, r3, lbl_803A7218@l /* 80140FCC 0013DF0C 90 1F 01 1C */ stw r0, 0x11c(r31) /* 80140FD0 0013DF10 38 7F 01 24 */ addi r3, r31, 0x124 -/* 80140FD4 0013DF14 48 12 DF B5 */ bl cM3dGCps +/* 80140FD4 0013DF14 48 12 DF B5 */ bl __ct__8cM3dGCpsFv /* 80140FD8 0013DF18 3C 60 80 3C */ lis r3, lbl_803C3608@ha /* 80140FDC 0013DF1C 38 63 36 08 */ addi r3, r3, lbl_803C3608@l /* 80140FE0 0013DF20 90 7F 01 20 */ stw r3, 0x120(r31) diff --git a/include/d/d_attention/asm/func_80070198.s b/include/d/d_attention/asm/func_80070198.s index 76ef2f520e..e833de9fbd 100644 --- a/include/d/d_attention/asm/func_80070198.s +++ b/include/d/d_attention/asm/func_80070198.s @@ -2,7 +2,7 @@ /* 8007019C 0006D0DC 7C 08 02 A6 */ mflr r0 /* 800701A0 0006D0E0 90 01 00 34 */ stw r0, 0x34(r1) /* 800701A4 0006D0E4 39 61 00 30 */ addi r11, r1, 0x30 -/* 800701A8 0006D0E8 48 2F 20 21 */ bl func_803621C8 +/* 800701A8 0006D0E8 48 2F 20 21 */ bl _savegpr_24 /* 800701AC 0006D0EC 7C 7F 1B 78 */ mr r31, r3 /* 800701B0 0006D0F0 7C 99 23 78 */ mr r25, r4 /* 800701B4 0006D0F4 7C B8 2B 78 */ mr r24, r5 @@ -387,7 +387,7 @@ lbl_80070748: /* 80070754 0006D694 98 03 00 04 */ stb r0, 4(r3) /* 80070758 0006D698 7F E3 FB 78 */ mr r3, r31 /* 8007075C 0006D69C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80070760 0006D6A0 48 2F 1A B5 */ bl func_80362214 +/* 80070760 0006D6A0 48 2F 1A B5 */ bl _restgpr_24 /* 80070764 0006D6A4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80070768 0006D6A8 7C 08 03 A6 */ mtlr r0 /* 8007076C 0006D6AC 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/d/d_attention/d_attention.h b/include/d/d_attention/d_attention.h new file mode 100644 index 0000000000..166f0bcb21 --- /dev/null +++ b/include/d/d_attention/d_attention.h @@ -0,0 +1,158 @@ +#ifndef __D_ATTENTION_H_ +#define __D_ATTENTION_H_ + +#include "SComponent/c_angle/c_angle.h" +#include "SComponent/c_xyz/c_xyz.h" +#include "global.h" +#include "m_Do/m_Do_ext/m_Do_ext.h" + +class dAttHint_c { +public: +private: + u32 field_0x0; + u32 field_0x4; + u32 field_0x8; +}; + +class dAttCatch_c { +public: +private: + void* field_0x0; + u32 field_0x4; + float field_0x8; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + void* field_0x10; +}; + +class dAttParam_c { +public: +private: + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + u8 field_0x10; + u8 field_0x11; + u8 field_0x12; +}; + +class dAttLook_c { +public: +private: + u32 field_0x0; + u32 field_0x4; + float field_0x8; +}; + +class dAttList_c { +public: +private: + u8 field_0x0[8]; + cSAngle angle; + u8 field_0xa[10]; +}; + +class dAttDraw_c { + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + mDoExt_bckAnm bckAnm; + u8 field_0x24[28]; + mDoExt_bpkAnm bpkAnm; + u8 field_0x58[24]; + mDoExt_brkAnm brkAnm; + u8 field_0x88[24]; + mDoExt_brkAnm brkAnm2; + u8 field_0xb8[24]; + mDoExt_btkAnm btkAnm; + u8 field_0xe8[24]; + mDoExt_bckAnm bckAnm2; + mDoExt_bpkAnm bpkAnm2; + mDoExt_brkAnm brkAnm3; + mDoExt_btkAnm btkAnm2; +}; + +class dAttDraw_CallBack_c { + mDoExt_McaMorfCallBack1_c mDoExt_McaMorfCallback; +}; + +class dAttention_c { +public: +private: + u8 field_0x0[4]; + u32 field_0x4; + dAttDraw_CallBack_c dattdraw_callback; + u8 field_0xc[4]; + u32 field_0x10; + u8 field_0x14[8]; + cXyz field_0x1c; + dAttDraw_c attention_draw; + u8 field_0x18c[396]; + int field_0x318; + cXyz field_0x31c; + u8 field_0x328[12]; + u32 field_0x334; + dAttList_c attention_list1; + u8 field_0x34c[140]; + int* field_0x3d8; + int* field_0x3dc; + dAttList_c attention_list2; + u8 field_0x3f4[60]; + int* field_0x430; + int field_0x434; + dAttList_c attention_list3; + u8 field_0x44c[60]; + int* field_0x488; + int field_0x48c; + dAttHint_c attention_hint; + dAttCatch_c attention_catch; + u8 field_0x4b0[4]; + dAttLook_c attention_look; + u8 field_0x4c0; + u8 field_0x4c1; + u8 field_0x4c2; + u8 field_0x4c3; + int* field_0x4c4; + u8 field_0x4c8; + u8 field_0x4c9; + u8 field_0x4ca; + u8 field_0x4cb; + u8 field_0x4cc; + u8 field_0x4cd; + u8 field_0x4ce; + u8 field_0x4cf; + dAttParam_c attention_param; + u8 field_0x4e3; + u8 field_0x4e4; + u8 field_0x4e5; + int* field_0x4e6; + u8 field_0x4ea; + u8 field_0x4eb; + u8 field_0x4ec; + u8 field_0x4ed; + u8 field_0x4ee; + u8 field_0x4ef; + u8 field_0x4f0; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_bg/d_bg_s/d_bg_s.h b/include/d/d_bg/d_bg_s/d_bg_s.h new file mode 100644 index 0000000000..d6adcc0176 --- /dev/null +++ b/include/d/d_bg/d_bg_s/d_bg_s.h @@ -0,0 +1,39 @@ +#ifndef __D_BG_S_H_ +#define __D_BG_S_H_ + +#include "d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h" +#include "global.h" + +class cBgS_ChkElm { + /* 0x00 */ dBgW_Base* bgw_base_pointer; + /* 0x04 */ u8 used; + /* 0x05 */ u8 padding[3]; + /* 0x08 */ u32 field_0x8; + /* 0x0C */ void* actor_pointer; + /* 0x10 */ u32 field_0x10; +}; + +class cBgS { + /* 0x0000 */ cBgS_ChkElm cbgs_elements[256]; +}; + +class dBgS_HIO { + /* 0x00 */ u8 vtable[4]; + /* 0x04 */ u8 field_0x4[2]; + /* 0x06 */ u16 field_0x6; + /* 0x08 */ u16 field_0x8; + /* 0x0A */ u8 field_0xa[2]; + /* 0x0C */ cXyz field_0xc; + /* 0x18 */ cXyz field_0x18; + /* 0x24 */ cXyz field_0x24; + /* 0x30 */ u8 field_0x30[4]; +}; + +class dBgS { +public: +private: + /* 0x0000 */ cBgS cbgs; + /* 0x1400 */ u8 vtable[8]; + /* 0x1408 */ dBgS_HIO dbgs_hio; +}; +#endif
\ No newline at end of file diff --git a/include/d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h b/include/d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h new file mode 100644 index 0000000000..200633a60b --- /dev/null +++ b/include/d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h @@ -0,0 +1,20 @@ +#ifndef __D_BG_W_BASE_H_ +#define __D_BG_W_BASE_H_ + +#include "global.h" + +class dBgW_Base { +public: +private: + u16 field_0x0; + u8 field_0x2[2]; + void* field_0x4; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + s16 field_0xc; + s16 field_0xe; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_cc/d_cc_mass_s/d_cc_mass_s.h b/include/d/d_cc/d_cc_mass_s/d_cc_mass_s.h new file mode 100644 index 0000000000..bcb11c8e36 --- /dev/null +++ b/include/d/d_cc/d_cc_mass_s/d_cc_mass_s.h @@ -0,0 +1,34 @@ +#include "SComponent/c_cc_d/c_cc_d.h" +#include "global.h" + +class dCcMassS_Obj { +public: +private: + u8 field_0x0[12]; + cCcD_DivideInfo cccd_divideinfo; + void* vtable; +}; + +class dCcMassS_Mng { +public: +private: + cCcD_DivideArea cccd_dividearea; + u8 field_0x20[36]; + dCcMassS_Obj dccmasss_obj; + u8 field_0x64[292]; + dCcMassS_Obj dccmasss_obj2; + u8 field_0x1a8[32]; + cCcD_CylAttr cccd_cylattr; + u8 field_0x200[2]; + u8 field_0x202; + u8 field_0x203; + float field_0x204; + float field_0x208; + float field_0x20c; + float field_0x210; + float field_0x214; + float field_0x218; + u8 field_0x21c[8]; + cCcD_CpsAttr cccd_cpsattr; + cCcD_DivideInfo cccd_divideinfo; +};
\ No newline at end of file diff --git a/include/d/d_cc/d_cc_s/d_cc_s.h b/include/d/d_cc/d_cc_s/d_cc_s.h new file mode 100644 index 0000000000..f64125be22 --- /dev/null +++ b/include/d/d_cc/d_cc_s/d_cc_s.h @@ -0,0 +1,16 @@ +#ifndef __D_CC_S_H_ +#define __D_CC_S_H_ + +#include "global.h" +#include "SComponent/c_cc_s/c_cc_s.h" +#include "d/d_cc/d_cc_mass_s/d_cc_mass_s.h" + +class dCcS { +public: +private: + cCcS cccs; + u8 field_0x2834[36]; + dCcMassS_Mng dccmass_mng; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_com/d_com_inf_game/d_com_inf_game.h b/include/d/d_com/d_com_inf_game/d_com_inf_game.h index 89f1f6dc4b..4f216a36ad 100644 --- a/include/d/d_com/d_com_inf_game/d_com_inf_game.h +++ b/include/d/d_com/d_com_inf_game/d_com_inf_game.h @@ -1,42 +1,17 @@ #ifndef __D_COM_INF_GAME_H_ #define __D_COM_INF_GAME_H_ +#include "d/d_attention/d_attention.h" +#include "d/d_bg/d_bg_s/d_bg_s.h" +#include "d/d_bg/d_bg_w/d_bg_w_base/d_bg_w_base.h" +#include "d/d_cc/d_cc_s/d_cc_s.h" #include "d/d_drawlist/d_drawlist.h" #include "d/d_event/d_event/d_event.h" #include "d/d_event/d_event_manager/d_event_manager.h" #include "d/d_resource/d_resource.h" #include "d/d_save/d_save/d_save.h" - -class dComIfG_play_c { -public: - void ct(void); - void init(void); - u8 unk[0x100]; -}; - -class dCcMassS_Mng { -public: - u8 unk[0x274]; -}; - -class dAttDraw_c { -public: - u8 unk[0x178]; -}; - -class dAttList_c { - u8 unk[0x14]; -}; - -class dDlst_window_c { - u8 unk[0x2C]; -}; - -class dComIfG_camera_info_class { - u8 unk[0x38]; -}; - -struct mDoExt_bckAnm {}; +#include "d/d_stage/d_stage.h" +#include "d/d_vibration/d_vibration.h" struct item_func { float hearts; // bf80 @@ -59,38 +34,95 @@ struct item_func { s16 seeds; // bfb6 }; -// 16 bytes too big, figure out later +class dComIfG_camera_info_class { +public: +private: + u8 field_0x0[12]; + cXyz field_0xc; + cXyz field_0x18; +}; + +class dDlst_window_c { +public: +private: + float view_port1; + float view_port2; + float view_port3; + float view_port4; + float view_port5; + float view_port6; + float scissor1; + float scissor2; + float scissor3; + float scissor4; + int camera_id; +}; + +class dComIfG_play_c { +public: + void ct(void); + void init(void); + u32 getNowVibration(); + dStage_roomControl_c& getRoomControl() { return room_control; } + item_func& getGiveItem() { return give_item; } + u8& getUnkHeart() { return unk_heart; } +private: + /* 0x00000 */ dBgS dbgs; + /* 0x0143C */ dCcS dccs; + /* 0x03F08 */ u8 field_0x3f08[0x16]; + /* 0x03F1E */ dStage_nextStage_c next_stage; + /* 0x03F2F */ u8 padding; + /* 0x03F30 */ dStage_stageDt_c stage_data; + /* 0x03F34 */ dStage_roomControl_c room_control; + /* 0x03FD8 */ dEvt_control_c event_control; + /* 0x0409C */ u8 field_0x409c[0x24]; + /* 0x040C0 */ dEvent_manager_c event_manager; + /* 0x0475B */ u8 field_0x475B[0x2D]; + /* 0x04788 */ void* vtable; + /* 0x0478C */ u8 field_0x478c[0x1C]; + /* 0x047A8 */ dAttDraw_c attention_draw; + /* 0x0490C */ u8 field_0x490c[0x1AC]; + /* 0x04AB8 */ dAttList_c attention_list1; + /* 0x04ACC */ u8 field_0x4acc[0x94]; + /* 0x04B60 */ dAttList_c attention_list2; + /* 0x04B74 */ u8 field_0x4b74[0x44]; + /* 0x04BB8 */ dAttList_c attention_list3; + /* 0x04BCC */ u8 field_0x4bcc[0xBC]; + /* 0x04c88 */ void* vtable2; + /* 0x04C8C */ u8 field_0x4c8c[0x55]; + /* 0x04CE1 */ u8 field_0x4ce1[0x37]; + /* 0x04D18 */ dVibration_c vibration; + /* 0x04DA8 */ u8 field_0x4da8[0x5C]; + /* 0x04E04 */ u32 field_0x4e04; + /* 0x04E08 */ u8 field_0x4e08[0x4]; + /* 0x04E0C */ u8 field_0x4e0c[0x4]; + /* 0x04E10 */ dDlst_window_c draw_list_window; + /* 0x04ED4 */ dComIfG_camera_info_class camera_info; + /* 0x04E60 */ u8 field_0x4e60[0x28]; + /* 0x04E88 */ item_func give_item; + /* 0x04EC0 */ u8 field_0x4ec0[0xBE]; + /* 0x04F7E */ u8 unk_heart; + /* 0x04F7F */ u8 field_0x4f7f[0x79]; + /* 0x04FF8 */ u32 field_0x4ff8; + /* 0x04FFC */ u32 field_0x4ffc; + /* 0x05000 */ u32 field_0x5000; + /* 0x05004 */ u32 field_0x5004; + /* 0x05008 */ u8 field_0x5008[0x1C]; + /* 0x05024 */ u8 field_0x5024[8]; +}; + class dComIfG_inf_c { public: + item_func& getPlayGiveItem() { return play.getGiveItem(); } + u8& getPlayUnkHeart() { return play.getUnkHeart(); } /* 0x00000 */ dSv_info_c info; - /* 0x00EEC */ u8 unk2[0x4C]; + /* 0x00EEC */ u8 field_0xeec[0x3C]; + /* 0x00F28 */ u32 saveTotalTime; + /* 0x00F2C */ u32 saveStartTime; + /* 0x00F30 */ u32 field_0xf30; + /* 0x00F34 */ u32 field_0xf34; /* 0x00F38 */ dComIfG_play_c play; - /* 0x01038 */ u8 unk3[0x3B50]; - /* 0x04B88 */ dCcMassS_Mng mass_mng; - /* 0x04DFC */ u8 unk4[0xCC]; // might be part of dCcMassS_Mng - /* 0x04EC8 */ dEvt_control_c event_control; - /* 0x04FF8 */ dEvent_manager_c event_manager; // 0x6C8 - /* 0x056C0 */ u8 unk5[0x20]; // vtables? - /* 0x056E0 */ dAttDraw_c att_draw; - /* 0x05858 */ u8 unk6[0x198]; - /* 0x059F0 */ dAttList_c att_list1; - /* 0x05A04 */ u8 unk8[0x94]; - /* 0x05A98 */ dAttList_c att_list2; - /* 0x05AAC */ u8 unk9[0x44]; - /* 0x05AF0 */ dAttList_c att_list3; - /* 0x05B04 */ u8 unk10[0x244]; - /* 0x05D48 */ dDlst_window_c draw_list_window; - /* 0x05D74 */ dComIfG_camera_info_class camera_info_class; - /* 0x05DAC */ u8 unk11[0x14]; - /* 0x05DC0 */ item_func give_item; - /* 0x05DF8 */ u8 unk35[0x144]; - /* 0x05F3C */ u32 unk12; - /* 0x05F30 */ u32 unk13; - /* 0x05F34 */ u32 unk14; - /* 0x05F38 */ u32 unk15; - /* 0x05F3C */ u32 unk16; - /* 0x05F40 */ u8 unk17[0x24]; - /* 0x05F64 */ dDlst_list_c draw_list_list; + /* 0x05FD8 */ u8 unk35[0x1612C]; /* 0x1C104 */ u8 unk18[0x1F4]; // might be part of dDlst_list_c /* 0x1C2F8 */ dRes_info_c resource_info1; /* 0x1C31C */ u8 unk19[0x11DC]; @@ -114,4 +146,35 @@ public: extern dComIfG_inf_c g_dComIfG_gameInfo; +// int dComIfGp_roomControl_getZoneNo(int zone_no) { +// return g_dComIfG_gameInfo.play.getRoomControl().getZoneNo(zone_no); +// } + +// BOOL dComIfGs_isEventBit(u16 event_no) { +// return g_dComIfG_gameInfo.info.getSaveFile().getEventFlags().isEventBit(event_no); +// } + +// void dComIfGs_offEventBit(u16 event_no) { +// g_dComIfG_gameInfo.info.getSaveFile().getEventFlags().offEventBit(event_no); +// } + +// BOOL dComIfGs_isItemFirstBit(u8 i_no) { +// return g_dComIfG_gameInfo.info.getSaveFile().getPlayerGetItem().isFirstBit(i_no); +// } + +// void dComIfGs_setItem(int item_slot, u8 item_id) { +// g_dComIfG_gameInfo.info.getSaveFile().getPlayer().getPlayerItem().setItem(item_slot, item_id); +// } + +// u16 dComIfGs_getOil(void) { +// return g_dComIfG_gameInfo.info.getSaveFile() +// .getPlayer() +// .getPlayerStatusA() +// .getCurrentLanternOil(); +// } + +// void dComIfGs_setOil(u16 oil_value) { +// g_dComIfG_gameInfo.info.getSaveFile().getPlayer().getPlayerStatusA().setLanternOil(oil_value); +// } + #endif
\ No newline at end of file diff --git a/include/d/d_event/d_event/d_event.h b/include/d/d_event/d_event/d_event.h index 2a4eed8c5c..049b2c9a47 100644 --- a/include/d/d_event/d_event/d_event.h +++ b/include/d/d_event/d_event/d_event.h @@ -1,12 +1,212 @@ -#ifndef D_EVENT_H_ -#define D_EVENT_H_ +#ifndef __D_EVENT_H_ +#define __D_EVENT_H_ #include "dolphin/types.h" +class dEvt_order_c { +public: +private: + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + u8 field_0xc; + u8 field_0xd; + u8 field_0xe; + u8 field_0xf; + u8 field_0x10; + u8 field_0x11; + u8 field_0x12; + u8 field_0x13; + u8 field_0x14; + u8 field_0x15; + u8 field_0x16; + u8 field_0x17; + u8 field_0x18; + u8 field_0x19; + u8 field_0x1a; + u8 field_0x1b; + u8 field_0x1c; + u8 field_0x1d; + u8 field_0x1e; + u8 field_0x1f; + u8 field_0x20; + u8 field_0x21; + u8 field_0x22; + u8 field_0x23; + u8 field_0x24; + u8 field_0x25; + u8 field_0x26; + u8 field_0x27; + u8 field_0x28; + u8 field_0x29; + u8 field_0x2a; + u8 field_0x2b; + u8 field_0x2c; + u8 field_0x2d; + u8 field_0x2e; + u8 field_0x2f; + u8 field_0x30; + u8 field_0x31; + u8 field_0x32; + u8 field_0x33; + u8 field_0x34; + u8 field_0x35; + u8 field_0x36; + u8 field_0x37; + u8 field_0x38; + u8 field_0x39; + u8 field_0x3a; + u8 field_0x3b; + u8 field_0x3c; + u8 field_0x3d; + u8 field_0x3e; + u8 field_0x3f; + u8 field_0x40; + u8 field_0x41; + u8 field_0x42; + u8 field_0x43; + u8 field_0x44; + u8 field_0x45; + u8 field_0x46; + u8 field_0x47; + u8 field_0x48; + u8 field_0x49; + u8 field_0x4a; + u8 field_0x4b; + u8 field_0x4c; + u8 field_0x4d; + u8 field_0x4e; + u8 field_0x4f; + u8 field_0x50; + u8 field_0x51; + u8 field_0x52; + u8 field_0x53; + u8 field_0x54; + u8 field_0x55; + u8 field_0x56; + u8 field_0x57; + u8 field_0x58; + u8 field_0x59; + u8 field_0x5a; + u8 field_0x5b; + u8 field_0x5c; + u8 field_0x5d; + u8 field_0x5e; + u8 field_0x5f; + u8 field_0x60; + u8 field_0x61; + u8 field_0x62; + u8 field_0x63; + u8 field_0x64; + u8 field_0x65; + u8 field_0x66; + u8 field_0x67; + u8 field_0x68; + u8 field_0x69; + u8 field_0x6a; + u8 field_0x6b; + u8 field_0x6c; + u8 field_0x6d; + u8 field_0x6e; + u8 field_0x6f; + u8 field_0x70; + u8 field_0x71; + u8 field_0x72; + u8 field_0x73; + u8 field_0x74; + u8 field_0x75; + u8 field_0x76; + u8 field_0x77; + u8 field_0x78; + u8 field_0x79; + u8 field_0x7a; + u8 field_0x7b; + u8 field_0x7c; + u8 field_0x7d; + u8 field_0x7e; + u8 field_0x7f; + u8 field_0x80; + u8 field_0x81; + u8 field_0x82; + u8 field_0x83; + u8 field_0x84; + u8 field_0x85; + u8 field_0x86; + u8 field_0x87; + u8 field_0x88; + u8 field_0x89; + u8 field_0x8a; + u8 field_0x8b; + u8 field_0x8c; + u8 field_0x8d; + u8 field_0x8e; + u8 field_0x8f; + u8 field_0x90; + u8 field_0x91; + u8 field_0x92; + u8 field_0x93; + u8 field_0x94; + u8 field_0x95; + u8 field_0x96; + u8 field_0x97; + u8 field_0x98; + u8 field_0x99; + u8 field_0x9a; + u8 field_0x9b; + u8 field_0x9c; + u8 field_0x9d; + u8 field_0x9e; + u8 field_0x9f; + u8 field_0xa0; + u8 field_0xa1; + u8 field_0xa2; + u8 field_0xa3; + u8 field_0xa4; + u8 field_0xa5; + u8 field_0xa6; + u8 field_0xa7; + u8 field_0xa8; + u8 field_0xa9; + u8 field_0xaa; + u8 field_0xab; + u8 field_0xac; + u8 field_0xad; + u8 field_0xae; + u8 field_0xaf; + u8 field_0xb0; + u8 field_0xb1; + u8 field_0xb2; + u8 field_0xb3; + u8 field_0xb4; + u8 field_0xb5; + u8 field_0xb6; + u8 field_0xb7; + u8 field_0xb8; + u8 field_0xb9; + u8 field_0xba; + u8 field_0xbb; + u8 field_0xbc; + u8 field_0xbd; + u8 field_0xbe; +}; + class dEvt_control_c { public: void searchMapEventData(u8 param_1); - u8 unk[0x130]; + +private: + u8 field_0x0[4]; + dEvt_order_c event_order; + u8 field_0xc3; }; #endif
\ No newline at end of file diff --git a/include/d/d_event/d_event_data/d_event_data.h b/include/d/d_event/d_event_data/d_event_data.h new file mode 100644 index 0000000000..6b487948db --- /dev/null +++ b/include/d/d_event/d_event_data/d_event_data.h @@ -0,0 +1,26 @@ +#ifndef __D_EVENT_DATA_H_ +#define __D_EVENT_DATA_H_ + +#include "global.h" + +class dEvDtFlag_c { +public: +private: + u8 field_0x0[320]; +}; + +class dEvDtBase_c { +public: +private: + u32 field_0x0; + u32 field_0x4; + u32 field_0x8; + u32 field_0xc; + u32 field_0x10; + u32 field_0x14; + u32 field_0x18; + u32 field_0x1c; + u32 field_0x20; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_event/d_event_manager/d_event_manager.h b/include/d/d_event/d_event_manager/d_event_manager.h index 3f06e27ed3..d1c91ae401 100644 --- a/include/d/d_event/d_event_manager/d_event_manager.h +++ b/include/d/d_event/d_event_manager/d_event_manager.h @@ -1,11 +1,40 @@ -#ifndef D_EVENT_MANAGER_H_ -#define D_EVENT_MANAGER_H_ +#ifndef __D_EVENT_MANAGER_H_ +#define __D_EVENT_MANAGER_H_ #include "dolphin/types.h" +#include "d/d_event/d_event_data/d_event_data.h" -class dEvent_manager_c { +class dEvent_exception_c { public: - u8 unk[0x6C8]; +private: + u32 field_0x0; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u32 field_0x8; }; +#pragma pack(push, 1) +struct dEvent_manager_c { + /* 0x0000 */ dEvDtBase_c event_data_base; + /* 0x0024 */ u8 field_0x24[0x64]; + /* 0x0088 */ u8 field_0x88[0x104]; + /* 0x018C */ u32 field_0x18c; + /* 0x0190 */ u32 field_0x190; + /* 0x0194 */ u8 field_0x194[0x8]; + /* 0x019C */ u8 goal; + /* 0x019D */ u8 field_0x19d[0xD]; + /* 0x01AA */ u16 field_0x1aa; + /* 0x01AC */ u8 field_0x1ac[0x8]; + /* 0x01B4 */ dEvent_exception_c event_exception; + /* 0x01C0 */ cXyz position; + /* 0x01CC */ u8 field_0x1cc[0x14]; + /* 0x01E0 */ dEvDtFlag_c event_data_flag; + /* 0x0320 */ u8 field_0x320[0x35C]; + /* 0x067C */ void* vtable; + /* 0x0680 */ u8 field_0x680[0x1B]; +}; +#pragma pack(pop) + #endif
\ No newline at end of file diff --git a/include/d/d_meter2/d_meter2_info/d_meter2_info.h b/include/d/d_meter2/d_meter2_info/d_meter2_info.h index 4e641ab284..8fdbdf61a0 100644 --- a/include/d/d_meter2/d_meter2_info/d_meter2_info.h +++ b/include/d/d_meter2/d_meter2_info/d_meter2_info.h @@ -1,4 +1,12 @@ +#ifndef __D_METER2_INFO_H_ +#define __D_METER2_INFO_H_ + +#include "JSystem/JMessage/control/control.h" #include "dolphin/types.h" +#include "JSystem/J2DGraph/J2DPicture/J2DPicture.h" +#include "JSystem/J2DGraph/J2DScreen/J2DScreen.h" +#include "JSystem/J2DGraph/J2DTextBox/J2DTextBox.h" +#include "JSystem/JUtility/JUTFont/JUTFont.h" struct dMeter2Info_c_vtable { u32* addr1; @@ -8,8 +16,8 @@ struct dMeter2Info_c_vtable { class dMeter2Info_c { public: - dMeter2Info_c::dMeter2Info_c(); - dMeter2Info_c::~dMeter2Info_c(); + // dMeter2Info_c::dMeter2Info_c(); + // dMeter2Info_c::~dMeter2Info_c(); void init(void); void setFloatingMessage(u16, s16, bool); void setFloatingFlow(u16, s16, bool); @@ -48,6 +56,7 @@ public: void resetMiniGameItem(bool); void setMiniGameCount(s8); void setSaveStageName(const char*); + u8& getDirectUseItem() { return mDirectUseItem; } private: dMeter2Info_c_vtable* vtable; @@ -142,4 +151,6 @@ private: u8 unk243[5]; }; -extern dMeter2Info_c g_meter2_info;
\ No newline at end of file +extern dMeter2Info_c g_meter2_info; + +#endif
\ No newline at end of file diff --git a/include/d/d_save/d_save/asm/func_800332F8.s b/include/d/d_save/d_save/asm/func_800332F8.s index db8413f8fd..8a4d5ea66a 100644 --- a/include/d/d_save/d_save/asm/func_800332F8.s +++ b/include/d/d_save/d_save/asm/func_800332F8.s @@ -8,8 +8,8 @@ lbl_8003330C: /* 80033310 00030250 7C 83 01 AE */ stbx r4, r3, r0 /* 80033314 00030254 38 C6 00 01 */ addi r6, r6, 1 /* 80033318 00030258 42 00 FF F4 */ bdnz lbl_8003330C -/* 8003331C 0003025C 3C 80 80 3A */ lis r4, lbl_803A7270@ha -/* 80033320 00030260 38 84 72 70 */ addi r4, r4, lbl_803A7270@l +/* 8003331C 0003025C 3C 80 80 3A */ lis r4, i_item_lst@ha +/* 80033320 00030260 38 84 72 70 */ addi r4, r4, i_item_lst@l /* 80033324 00030264 38 00 00 17 */ li r0, 0x17 /* 80033328 00030268 7C 09 03 A6 */ mtctr r0 lbl_8003332C: diff --git a/include/d/d_save/d_save/asm/func_80034644.s b/include/d/d_save/d_save/asm/func_80034644.s index 69b644fa95..5551a6e269 100644 --- a/include/d/d_save/d_save/asm/func_80034644.s +++ b/include/d/d_save/d_save/asm/func_80034644.s @@ -1,13 +1,13 @@ /* 80034644 00031584 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80034648 00031588 7C 08 02 A6 */ mflr r0 /* 8003464C 0003158C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80034650 00031590 80 0D 8F 60 */ lwz r0, lbl_804514E0-_SDA_BASE_(r13) +/* 80034650 00031590 80 0D 8F 60 */ lwz r0, _sRumbleSupported-_SDA_BASE_(r13) /* 80034654 00031594 54 00 00 01 */ rlwinm. r0, r0, 0, 0, 0 /* 80034658 00031598 41 82 00 18 */ beq lbl_80034670 /* 8003465C 0003159C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 80034660 000315A0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 80034664 000315A4 38 63 0F 38 */ addi r3, r3, 0xf38 -/* 80034668 000315A8 4B FF 6D 49 */ bl dComIfG_play_c_NS_getNowVibration +/* 80034668 000315A8 4B FF 6D 49 */ bl getNowVibration__14dComIfG_play_cFv /* 8003466C 000315AC 48 00 00 08 */ b lbl_80034674 lbl_80034670: /* 80034670 000315B0 38 60 00 00 */ li r3, 0 diff --git a/include/d/d_save/d_save/d_save.h b/include/d/d_save/d_save/d_save.h index 0263a3863e..e8bd84933e 100644 --- a/include/d/d_save/d_save/d_save.h +++ b/include/d/d_save/d_save/d_save.h @@ -1,6 +1,8 @@ #ifndef __D_SAVE_H_ #define __D_SAVE_H_ +#include "SComponent/c_xyz/c_xyz.h" +#include "d/d_meter2/d_meter2_info/d_meter2_info.h" #include "dolphin/types.h" #include "global.h" @@ -44,262 +46,262 @@ enum ItemSlots { }; enum ItemTable { - AIR_LETTER = 234, - ANCIENT_DOCUMENT = 233, - ANCIENT_DOCUMENT2 = 235, - ARMOR = 48, - ARROW_1 = 17, - ARROW_10 = 14, - ARROW_20 = 15, - ARROW_30 = 16, - ARROW_LV1 = 84, - ARROW_LV2 = 85, - ARROW_LV3 = 86, - ASHS_SCRIBBLING = 145, - BEE_CHILD = 118, - BEE_ROD = 91, - BILL = 129, - BLUE_BOTTLE = 99, - BLUE_RUPEE = 2, - BOMB_10 = 11, - BOMB_20 = 12, - BOMB_30 = 13, - BOMB_5 = 10, - BOMB_ARROW = 89, - BOMB_BAG_LV1 = 80, - BOMB_BAG_LV2 = 79, - BOMB_INSECT_10 = 27, - BOMB_INSECT_20 = 28, - BOMB_INSECT_30 = 29, - BOMB_INSECT_5 = 26, - BOMB_IN_BAG = 81, - BOOMERANG = 64, - BOSSRIDER_KEY = 243, - BOSS_KEY = 38, - BOW = 67, - CHUCHU_BLACK = 159, - CHUCHU_BLUE = 121, - CHUCHU_GREEN = 122, - CHUCHU_PURPLE = 124, - CHUCHU_RARE = 119, - CHUCHU_RED = 120, - CHUCHU_YELLOW = 123, - CHUCHU_YELLOW2 = 156, - COMPUS = 36, - COPY_ROD = 70, - COPY_ROD_2 = 76, - DROP_BOTTLE = 117, - DROP_CONTAINER = 161, - DROP_CONTAINER02 = 162, - DROP_CONTAINER03 = 163, - DUNGEON_BACK = 39, - DUNGEON_EXIT = 37, - DUNGEON_EXIT_2 = 51, - EMPTY_BOTTLE = 96, - FAIRY = 108, - FAIRY_DROP = 115, - FILLED_CONTAINER = 164, - FISHING_ROD_1 = 74, - F_ANT = 213, - F_BEETLE = 193, - F_BUTTERFLY = 195, - F_DANGOMUSHI = 203, - F_DRAGONFLY = 211, - F_GRASSHOPPER = 199, - F_LADYBUG = 207, - F_MANTIS = 205, - F_MAYFLY = 215, - F_NANAFUSHI = 201, - F_SNAIL = 209, - F_STAG_BEETLE = 197, - GREEN_BOTTLE = 98, - GREEN_RUPEE = 1, - HALF_MILK_BOTTLE = 101, - HAWK_ARROW = 90, - HAWK_EYE = 62, - HEART = 0, - HOOKSHOT = 68, - HORSE_FLUTE = 132, - HOT_SPRING = 107, - HOT_SPRING_2 = 109, - HVY_BOOTS = 69, - HYLIA_SHIELD = 44, - IRIAS_PENDANT = 131, - IRONBALL = 66, - JEWEL_BEE_ROD = 94, - JEWEL_ROD = 92, - JEWEL_WORM_ROD = 95, - KAKERA_HEART = 33, - KANTERA = 72, - KANTERA2 = 248, - KEY_OF_CARAVAN = 252, - KEY_OF_FILONE = 254, - L2_KEY_PIECES1 = 249, - L2_KEY_PIECES2 = 250, - L2_KEY_PIECES3 = 251, - LETTER = 128, - LIGHT_ARROW = 83, - LIGHT_DROP = 160, - LIGHT_SWORD = 73, - LINKS_SAVINGS = 237, - LURE_ROD = 88, - LV1_SOUP = 125, - LV2_BOSS_KEY = 253, - LV2_SOUP = 126, - LV3_SOUP = 127, - LV5_BOSS_KEY = 246, - LV7_DUNGEON_EXIT = 236, - L_MAGIC = 9, - MAGIC_LV1 = 50, - MAP = 35, - MASTER_SWORD = 41, - MILK_BOTTLE = 100, - MIRROR_PIECE_2 = 165, - MIRROR_PIECE_3 = 166, - MIRROR_PIECE_4 = 167, - M_ANT = 212, - M_BEETLE = 192, - M_BUTTERFLY = 194, - M_DANGOMUSHI = 202, - M_DRAGONFLY = 210, - M_GRASSHOPPER = 198, - M_LADYBUG = 206, - M_MANTIS = 204, - M_MAYFLY = 214, - M_NANAFUSHI = 200, - M_SNAIL = 208, - M_STAG_BEETLE = 196, - NORMAL_BOMB = 112, - NO_ITEM = 255, - OIL = 111, - OIL2 = 110, - OIL_BOTTLE = 102, - OIL_BOTTLE3 = 157, - OIL_BOTTLE_2 = 104, - ORANGE_RUPEE = 6, - PACHINKO = 75, - PACHINKO_SHOT = 18, - POKE_BOMB = 114, - POU_FIRE1 = 239, - POU_FIRE2 = 240, - POU_FIRE3 = 241, - POU_FIRE4 = 242, - POU_SPIRIT = 224, - PURPLE_RUPEE = 5, - RAFRELS_MEMO = 144, - RECOVERY_FAILY = 30, - RED_BOTTLE = 97, - RED_BOTTLE_2 = 105, - RED_RUPEE = 4, - SHIELD = 43, - SHOP_BEE_CHILD = 158, - SILVER_RUPEE = 7, - SMALL_KEY = 32, - SMALL_KEY2 = 238, - SMELL_CHILDREN = 180, - SMELL_FISH = 179, - SMELL_MEDICINE = 181, - SMELL_POH = 178, - SMELL_PUMPKIN = 177, - SMELL_YELIA_POUCH = 176, - SPINNER = 65, - SURFBOARD = 247, - SWORD = 40, - S_MAGIC = 8, - TASTE = 245, - TKS_LETTER = 45, - TOMATO_PUREE = 244, - TRIPLE_HEART = 31, - UGLY_SOUP = 106, - UTAWA_HEART = 34, - WALLET_LV1 = 52, - WALLET_LV2 = 53, - WALLET_LV3 = 54, - WATER_BOMB = 113, - WATER_BOMB_10 = 23, - WATER_BOMB_20 = 24, - WATER_BOMB_30 = 25, - WATER_BOMB_5 = 22, - WATER_BOTTLE = 103, - WEARS_CASUAL = 46, - WEAR_KOKIRI = 47, - WEAR_ZORA = 49, - WOOD_SHIELD = 42, - WOOD_STATUE = 130, - WOOD_STICK = 63, - WORM = 116, - WORM_ROD = 93, - W_HOOKSHOT = 71, - YELLOW_RUPEE = 3, - ZORAS_JEWEL = 61, - noentry1 = 19, - noentry10 = 77, - noentry11 = 78, - noentry12 = 82, - noentry13 = 87, - noentry14 = 133, - noentry15 = 134, - noentry16 = 135, - noentry17 = 136, - noentry18 = 137, - noentry19 = 138, - noentry2 = 20, - noentry20 = 139, - noentry21 = 140, - noentry22 = 141, - noentry23 = 142, - noentry24 = 143, - noentry25 = 146, - noentry26 = 147, - noentry27 = 148, - noentry28 = 149, - noentry29 = 150, - noentry3 = 21, - noentry30 = 151, - noentry31 = 152, - noentry32 = 153, - noentry33 = 154, - noentry34 = 155, - noentry35 = 168, - noentry36 = 169, - noentry37 = 170, - noentry38 = 171, - noentry39 = 172, - noentry4 = 55, - noentry40 = 173, - noentry41 = 174, - noentry42 = 175, - noentry43 = 182, - noentry44 = 183, - noentry45 = 184, - noentry46 = 185, - noentry47 = 186, - noentry48 = 187, - noentry49 = 188, - noentry5 = 56, - noentry50 = 189, - noentry51 = 190, - noentry52 = 191, - noentry53 = 216, - noentry54 = 217, - noentry55 = 218, - noentry56 = 219, - noentry57 = 220, - noentry58 = 221, - noentry59 = 222, - noentry6 = 57, - noentry60 = 223, - noentry61 = 225, - noentry62 = 226, - noentry63 = 227, - noentry64 = 228, - noentry65 = 229, - noentry66 = 230, - noentry67 = 231, - noentry68 = 232, - noentry7 = 58, - noentry8 = 59, - noentry9 = 60 + HEART, + GREEN_RUPEE, + BLUE_RUPEE, + YELLOW_RUPEE, + RED_RUPEE, + PURPLE_RUPEE, + ORANGE_RUPEE, + SILVER_RUPEE, + S_MAGIC, + L_MAGIC, + BOMB_5, + BOMB_10, + BOMB_20, + BOMB_30, + ARROW_10, + ARROW_20, + ARROW_30, + ARROW_1, + PACHINKO_SHOT, + noentry1, + noentry2, + noentry3, + WATER_BOMB_5, + WATER_BOMB_10, + WATER_BOMB_20, + WATER_BOMB_30, + BOMB_INSECT_5, + BOMB_INSECT_10, + BOMB_INSECT_20, + BOMB_INSECT_30, + RECOVERY_FAILY, + TRIPLE_HEART, + SMALL_KEY, + KAKERA_HEART, + UTAWA_HEART, + MAP, + COMPUS, + DUNGEON_EXIT, + BOSS_KEY, + DUNGEON_BACK, + SWORD, + MASTER_SWORD, + WOOD_SHIELD, + SHIELD, + HYLIA_SHIELD, + TKS_LETTER, + WEARS_CASUAL, + WEAR_KOKIRI, + ARMOR, + WEAR_ZORA, + MAGIC_LV1, + DUNGEON_EXIT_2, + WALLET_LV1, + WALLET_LV2, + WALLET_LV3, + noentry4, + noentry5, + noentry6, + noentry7, + noentry8, + noentry9, + ZORAS_JEWEL, + HAWK_EYE, + WOOD_STICK, + BOOMERANG, + SPINNER, + IRONBALL, + BOW, + HOOKSHOT, + HVY_BOOTS, + COPY_ROD, + W_HOOKSHOT, + KANTERA, + LIGHT_SWORD, + FISHING_ROD_1, + PACHINKO, + COPY_ROD_2, + noentry10, + noentry11, + BOMB_BAG_LV2, + BOMB_BAG_LV1, + BOMB_IN_BAG, + noentry12, + LIGHT_ARROW, + ARROW_LV1, + ARROW_LV2, + ARROW_LV3, + noentry13, + LURE_ROD, + BOMB_ARROW, + HAWK_ARROW, + BEE_ROD, + JEWEL_ROD, + WORM_ROD, + JEWEL_BEE_ROD, + JEWEL_WORM_ROD, + EMPTY_BOTTLE, + RED_BOTTLE, + GREEN_BOTTLE, + BLUE_BOTTLE, + MILK_BOTTLE, + HALF_MILK_BOTTLE, + OIL_BOTTLE, + WATER_BOTTLE, + OIL_BOTTLE_2, + RED_BOTTLE_2, + UGLY_SOUP, + HOT_SPRING, + FAIRY, + HOT_SPRING_2, + OIL2, + OIL, + NORMAL_BOMB, + WATER_BOMB, + POKE_BOMB, + FAIRY_DROP, + WORM, + DROP_BOTTLE, + BEE_CHILD, + CHUCHU_RARE, + CHUCHU_RED, + CHUCHU_BLUE, + CHUCHU_GREEN, + CHUCHU_YELLOW, + CHUCHU_PURPLE, + LV1_SOUP, + LV2_SOUP, + LV3_SOUP, + LETTER, + BILL, + WOOD_STATUE, + IRIAS_PENDANT, + HORSE_FLUTE, + noentry14, + noentry15, + noentry16, + noentry17, + noentry18, + noentry19, + noentry20, + noentry21, + noentry22, + noentry23, + noentry24, + RAFRELS_MEMO, + ASHS_SCRIBBLING, + noentry25, + noentry26, + noentry27, + noentry28, + noentry29, + noentry30, + noentry31, + noentry32, + noentry33, + noentry34, + CHUCHU_YELLOW2, + OIL_BOTTLE3, + SHOP_BEE_CHILD, + CHUCHU_BLACK, + LIGHT_DROP, + DROP_CONTAINER, + DROP_CONTAINER02, + DROP_CONTAINER03, + FILLED_CONTAINER, + MIRROR_PIECE_2, + MIRROR_PIECE_3, + MIRROR_PIECE_4, + noentry35, + noentry36, + noentry37, + noentry38, + noentry39, + noentry40, + noentry41, + noentry42, + SMELL_YELIA_POUCH, + SMELL_PUMPKIN, + SMELL_POH, + SMELL_FISH, + SMELL_CHILDREN, + SMELL_MEDICINE, + noentry43, + noentry44, + noentry45, + noentry46, + noentry47, + noentry48, + noentry49, + noentry50, + noentry51, + noentry52, + M_BEETLE, + F_BEETLE, + M_BUTTERFLY, + F_BUTTERFLY, + M_STAG_BEETLE, + F_STAG_BEETLE, + M_GRASSHOPPER, + F_GRASSHOPPER, + M_NANAFUSHI, + F_NANAFUSHI, + M_DANGOMUSHI, + F_DANGOMUSHI, + M_MANTIS, + F_MANTIS, + M_LADYBUG, + F_LADYBUG, + M_SNAIL, + F_SNAIL, + M_DRAGONFLY, + F_DRAGONFLY, + M_ANT, + F_ANT, + M_MAYFLY, + F_MAYFLY, + noentry53, + noentry54, + noentry55, + noentry56, + noentry57, + noentry58, + noentry59, + noentry60, + POU_SPIRIT, + noentry61, + noentry62, + noentry63, + noentry64, + noentry65, + noentry66, + noentry67, + noentry68, + ANCIENT_DOCUMENT, + AIR_LETTER, + ANCIENT_DOCUMENT2, + LV7_DUNGEON_EXIT, + LINKS_SAVINGS, + SMALL_KEY2, + POU_FIRE1, + POU_FIRE2, + POU_FIRE3, + POU_FIRE4, + BOSSRIDER_KEY, + TOMATO_PUREE, + TASTE, + LV5_BOSS_KEY, + SURFBOARD, + KANTERA2, + L2_KEY_PIECES1, + L2_KEY_PIECES2, + L2_KEY_PIECES3, + KEY_OF_CARAVAN, + LV2_BOSS_KEY, + KEY_OF_FILONE, + NO_ITEM }; enum EquipmentBits { CLOTHING_BITFIELD, SWORD_BITFIELD, SHIELD_BITFIELD }; @@ -325,6 +327,7 @@ public: int isMagicFlag(u8) const; u16& getCurrentHealth() { return mCurrentHealth; } + u16& getCurrentLanternOil() { return mCurrentLanternOil; } u8& getScent() { return mEquipment[3]; } void setWalletLV(u8 lv) { mCurrentWallet = lv; } void setLanternOil(u16 amount) { @@ -376,10 +379,6 @@ private: }; // move to SComponent later -class cXyz { -public: - float x, y, z; -}; class dSv_horse_place_c { public: @@ -454,7 +453,7 @@ public: void setEquipBottleItemIn(u8, u8); void setEquipBottleItemEmpty(u8); u8 checkBottle(u8); - u8 checkInsectBottle(void); + int checkInsectBottle(void); u8 checkEmptyBottle(void); void setBombBagItemIn(u8, u8, bool); void setBombBagItemIn(u8, u8, u8, bool); @@ -891,15 +890,20 @@ public: dSv_save_c& getSaveFile() { return save_file; } dSv_memory_c& getMemory() { return memory; } + dSv_zone_c* getZones() { return zones; } private: - dSv_save_c save_file; - dSv_memory_c memory; - dSv_danBit_c dungeon_bit; - dSv_zone_c zones[32]; - dSv_restart_c restart; - dSv_event_c events; - dSv_turnRestart_c turn_restart; + /* 0x000 */ dSv_save_c save_file; + /* 0x958 */ dSv_memory_c memory; + /* 0x978 */ dSv_danBit_c dungeon_bit; + /* 0x9B4 */ dSv_zone_c zones[32]; + /* 0xDB4 */ dSv_restart_c restart; + /* 0xDD8 */ dSv_event_c events; + /* 0xED8 */ dSv_turnRestart_c turn_restart; }; +// u8 dMeter2Info_getOilGaugeBackUp() { +// return g_meter2_info.getDirectUseItem(); +// } + #endif
\ No newline at end of file diff --git a/include/d/d_stage/d_stage.h b/include/d/d_stage/d_stage.h new file mode 100644 index 0000000000..2c27b137cc --- /dev/null +++ b/include/d/d_stage/d_stage.h @@ -0,0 +1,39 @@ +#ifndef __D_STAGE_H_ +#define __D_STAGE_H_ +#include "global.h" + +class dStage_roomControl_c { +public: +private: + u8 field_0x0[164]; +}; + +class dStage_stageDt_c { +public: +private: + void* vtable; +}; + +class dStage_nextStage_c { +public: +private: + u8 field_0x0; + u8 field_0x1; + u8 field_0x2; + u8 field_0x3; + u8 field_0x4; + u8 field_0x5; + u8 field_0x6; + u8 field_0x7; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + u8 field_0xc; + u8 field_0xd; + u8 enabled; + u8 wipe; + u8 wipe_speed; +}; + +#endif
\ No newline at end of file diff --git a/include/d/d_vibration/d_vibration.h b/include/d/d_vibration/d_vibration.h new file mode 100644 index 0000000000..99ab56a990 --- /dev/null +++ b/include/d/d_vibration/d_vibration.h @@ -0,0 +1,47 @@ +#ifndef __D_VIBRATION_H_ +#define __D_VIBRATION_H_ + +#include "global.h" + +class dVibration_c { +public: +private: + u32 field_0x0; + u32 field_0x4; + u32 field_0x8; + u32 field_0xc; + u32 field_0x10; + u32 field_0x14; + float field_0x18; + float field_0x1c; + float field_0x20; + u32 field_0x24; + u32 field_0x28; + u32 field_0x2c; + u32 field_0x30; + u32 field_0x34; + u32 field_0x38; + u32 field_0x3c; + float field_0x40; + float field_0x44; + float field_0x48; + u32 field_0x4c; + u32 field_0x50; + u32 field_0x54; + u32 field_0x58; + u32 field_0x5c; + u32 field_0x60; + u32 field_0x64; + u32 field_0x68; + u32 field_0x6c; + u32 field_0x70; + u32 field_0x74; + u32 field_0x78; + u32 field_0x7c; + u32 field_0x80; + u32 field_0x84; + u32 field_0x88; + u32 field_0x8c; +}; + +#endif
\ No newline at end of file diff --git a/include/functions.h b/include/functions.h index 28adc9ba63..faa95e35ec 100644 --- a/include/functions.h +++ b/include/functions.h @@ -41,18 +41,20 @@ void init__20dSv_player_collect_cFv(void); void dComIfGp_setSelectItem(int); void getUsedCount__9HeapCheckCFv(void); void isEventBit__11dSv_event_cCFUs(void); -void dComIfGs_setMixItemIndex(void); -void dComIfGs_setSelectItemIndex(void); -void dComIfGs_getMixItemIndex(void); +void dComIfGs_setMixItemIndex(int,u8); +void dComIfGs_setSelectItemIndex(int,u8); +void dComIfGs_getMixItemIndex(int); char* strcpy(char*, const char*); int strcmp(char*, char*); void setBombNum__21dSv_player_item_max_cFUcUc(void); void func_80362224(void); void func_803621D8(void); -void func_803621CC(void); +void _savegpr_25(void); void func_80362218(void); void _restgpr_26(void); void _savegpr_26(void); +void _savegpr_25(void); +void _restgpr_25(void); void func_8036221C(void); void func_803621D0(void); void func_803620AC(void); @@ -90,7 +92,7 @@ void setItem__17dSv_player_item_cFiUc(void); void dMeter2Info_c_NS_getString(void); void Z2AudioMgr_NS_setOutputMode(void*, unsigned long); u32 Z2AudioMgr_NS_hasReset(void*); -void dComIfG_play_c_NS_getNowVibration(void); +void getNowVibration__14dComIfG_play_cFv(void); void setInitEventBit(void); void daObjCarry_c_NS_clrSaveFlag(void); void daObjCarry_c_NS_setSaveFlag(void); @@ -103,7 +105,7 @@ void init__10dSv_info_cFvZone(void); void init__10dSv_zone_cFi(void); void onOneSwitch__13dSv_zoneBit_cFi(void); void onSwitch__13dSv_zoneBit_cFi(void); -int dStage_roomControl_c_NS_getZoneNo(int, int); +int dStage_roomControl_c_NS_getZoneNo(int,int); void onSwitch__12dSv_danBit_cFi(void); void onSwitch__12dSv_memBit_cFi(void); void revOneSwitch__13dSv_zoneBit_cFi(void); @@ -195,7 +197,7 @@ void JUTReportConsole_f(void); void JUTWarningConsole(void); void JUTWarningConsole_f(void); -void func_803621CC(void); +void _savegpr_25(void); void func_80361C24(void); void _restgpr_26(void); @@ -217,7 +219,7 @@ void _restgpr_29(void); void _savegpr_29(void); void func_80361C24(void); -void func_803621CC(void); +void _savegpr_25(void); void func_80362218(void); // void JKRAramArchive(void); @@ -235,7 +237,7 @@ void func_80365470(void); void DCInvalidateRange(void); void JKRDvdRipper_NS_loadToMainRAM_X1_(void); void func_80003458(void); -void func_803621CC(void); +void _savegpr_25(void); void func_80362218(void); void func_803650D0(void); @@ -255,10 +257,10 @@ void func_80003540(void); void func_80361C24(void); void func_803621B0(void); void func_803621C4(void); -void func_803621C8(void); +void _savegpr_24(void); void func_803621FC(void); void func_80362210(void); -void func_80362214(void); +void _restgpr_24(void); void ARQPostRequest(void); void DCStoreRange(void); @@ -1034,7 +1036,7 @@ void dAttention_c_NS_ActionTarget(void); void cSAngle_NS___mi_X2_(void); void dAttention_c_NS_GetLockonList(void); void dAttHint_c_NS_init(void); -void dAttention_c(void); +//void dAttention_c(void); void PSMTXTrans(void); void dAttention_c_NS_makeList(void); void mDoExt_bpkAnm_NS_entry(void); @@ -1058,7 +1060,7 @@ void dAttDraw_c_NS_alphaAnm(void); void dAttention_c_NS_LockonReleaseDistanse(void); void dAttention_c_NS_runDebugDisp(void); void func_803621BC(void); -void dAttParam_c(void); +//void dAttParam_c(void); void dAttention_c_NS_judgementStatus4Hold(void); void dAttention_c_NS_calcWeight(void); void dAttHint_c_NS_getPId(void); @@ -3464,7 +3466,7 @@ void func_800E7E50(void); void func_8014168C(void); void func_800D0370(void); void func_800E6E0C(void); -void cM3dGCps(void); +void __ct__8cM3dGCpsFv(void); void daAlink_c_NS_setHorseSwordUpAnime(void); void daAlink_c_NS_checkNotHeavyBootsStage(void); void func_80141868(void); diff --git a/include/m_Do/m_Do_ext/m_Do_ext.h b/include/m_Do/m_Do_ext/m_Do_ext.h new file mode 100644 index 0000000000..6207c98c67 --- /dev/null +++ b/include/m_Do/m_Do_ext/m_Do_ext.h @@ -0,0 +1,48 @@ +#ifndef __M_DO_EXT_H_ +#define __M_DO_EXT_H_ + +#include "JSystem/J3DGraphAnimator/J3DAnimation.h" +#include "global.h" + +class mDoExt_baseAnm { +public: +private: + J3DFrameCtrl frame_control; +}; + +class mDoExt_btkAnm { +public: +private: + mDoExt_baseAnm base_anm; + u32 field_0x14; +}; + +class mDoExt_brkAnm { +public: +private: + mDoExt_baseAnm mDoExt_baseAnm; + u32 field_0x14; +}; + +class mDoExt_bpkAnm { +public: +private: + mDoExt_baseAnm mDoExt_baseAnm; + u32 field_0x14; +}; + +class mDoExt_bckAnm { +public: +private: + mDoExt_baseAnm base_anm; + u8 field_0x14[4]; + u32 field_0x18; +}; + +class mDoExt_McaMorfCallBack1_c { +public: +private: + void* vtable; +}; + +#endif
\ No newline at end of file diff --git a/include/variables.h b/include/variables.h index ec9b960eba..0bd3457ba9 100644 --- a/include/variables.h +++ b/include/variables.h @@ -1,14 +1,14 @@ #include "JSystem/JSupport/JSUList/JSUList.h" extern float lbl_80451D5C; -extern u8 lbl_80379234[0x64]; extern float lbl_80451D58; -extern u8 lbl_803A7270[24]; +extern u8 i_item_lst[24]; extern u8 lbl_80430188[16]; extern u8 lbl_80379235[16]; +extern u8 lbl_80379234[0x62]; extern char lbl_803739A0[0x310]; extern void* lbl_80451368; -extern u32 lbl_804514E0; +extern u32 _sRumbleSupported; extern u8 lbl_803C3384; struct m_cpadInfo; extern m_cpadInfo lbl_803DD2E8; |
