From 500d079c40b17e52abf40ec32ad9457d384ce921 Mon Sep 17 00:00:00 2001 From: Pheenoh Date: Thu, 9 Mar 2023 01:26:11 -0700 Subject: [PATCH] d_eye_hl OK, d_spline_path and JASSeqReader work (#307) --- Progress.md | 8 +- .../JASSeqReader/call__12JASSeqReaderFUl.s | 18 -- .../JASSeqReader/init__12JASSeqReaderFPv.s | 19 -- .../JASSeqReader/init__12JASSeqReaderFv.s | 18 -- .../loopStart__12JASSeqReaderFUl.s | 19 -- .../readMidiValue__12JASSeqReaderFv.s | 32 --- .../JASSeqReader/ret__12JASSeqReaderFv.s | 15 -- asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s | 60 ------ .../d_spline_path/Calc__14d2DBSplinePathFPf.s | 19 -- .../Init__10dPathCurveFP5dPath.s | 7 - include/JSystem/JAudio2/JASSeqReader.h | 23 +++ include/JSystem/JParticle/JPAParticle.h | 3 + include/c/c_damagereaction.h | 8 + include/d/a/d_a_shop_item_static.h | 1 - include/d/d_eye_hl.h | 1 - include/d/d_path.h | 1 - include/d/d_select_icon.h | 1 - include/d/d_spline_path.h | 33 +++ include/d/s/d_s_play.h | 2 + include/m_Do/m_Do_DVDError.h | 1 - libs/JSystem/JAudio2/JASSeqReader.cpp | 195 +++++++++++------- src/c/c_damagereaction.cpp | 24 ++- src/d/a/d_a_shop_item_static.cpp | 33 +-- src/d/d_eye_hl.cpp | 61 +----- src/d/d_path.cpp | 10 +- src/d/d_select_icon.cpp | 2 - src/d/d_spline_path.cpp | 79 +++---- src/d/s/d_s_play.cpp | 3 +- src/m_Do/m_Do_DVDError.cpp | 1 - 29 files changed, 256 insertions(+), 441 deletions(-) delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/call__12JASSeqReaderFUl.s delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFPv.s delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFv.s delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/loopStart__12JASSeqReaderFUl.s delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/readMidiValue__12JASSeqReaderFv.s delete mode 100644 asm/JSystem/JAudio2/JASSeqReader/ret__12JASSeqReaderFv.s delete mode 100644 asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s delete mode 100644 asm/d/d_spline_path/Calc__14d2DBSplinePathFPf.s delete mode 100644 asm/d/d_spline_path/Init__10dPathCurveFP5dPath.s diff --git a/Progress.md b/Progress.md index 9979470490c..7459c7ef8ea 100644 --- a/Progress.md +++ b/Progress.md @@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes) .init | 97.972973% | 9280 | 9472 .extab | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96 -.text | 25.584339% | 920152 | 3596544 +.text | 25.604469% | 920876 | 3596544 .ctors | 100.000000% | 448 | 448 .dtors | 100.000000% | 32 | 32 .rodata | 100.000000% | 193856 | 193856 .data | 100.000000% | 197632 | 197632 .sdata | 100.000000% | 1408 | 1408 .sdata2 | 100.000000% | 20832 | 20832 -Total | 33.429437% | 1344088 | 4020672 +Total | 33.447444% | 1344812 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 33.429437% | 1344088 | 4020672 +main.dol | 33.447444% | 1344812 | 4020672 RELs | 33.387651% | 3839688 | 11500324 -Total | 33.398475% | 5183776 | 15520996 +Total | 33.403140% | 5184500 | 15520996 ## RELs diff --git a/asm/JSystem/JAudio2/JASSeqReader/call__12JASSeqReaderFUl.s b/asm/JSystem/JAudio2/JASSeqReader/call__12JASSeqReaderFUl.s deleted file mode 100644 index ee374490e75..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/call__12JASSeqReaderFUl.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_8029618C: -/* 8029618C 80 A3 00 08 */ lwz r5, 8(r3) -/* 80296190 28 05 00 08 */ cmplwi r5, 8 -/* 80296194 41 80 00 0C */ blt lbl_802961A0 -/* 80296198 38 60 00 00 */ li r3, 0 -/* 8029619C 4E 80 00 20 */ blr -lbl_802961A0: -/* 802961A0 80 C3 00 04 */ lwz r6, 4(r3) -/* 802961A4 38 05 00 01 */ addi r0, r5, 1 -/* 802961A8 90 03 00 08 */ stw r0, 8(r3) -/* 802961AC 54 A0 10 3A */ slwi r0, r5, 2 -/* 802961B0 7C A3 02 14 */ add r5, r3, r0 -/* 802961B4 90 C5 00 0C */ stw r6, 0xc(r5) -/* 802961B8 80 03 00 00 */ lwz r0, 0(r3) -/* 802961BC 7C 00 22 14 */ add r0, r0, r4 -/* 802961C0 90 03 00 04 */ stw r0, 4(r3) -/* 802961C4 38 60 00 01 */ li r3, 1 -/* 802961C8 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFPv.s b/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFPv.s deleted file mode 100644 index befb67b6b6a..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFPv.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_80296148: -/* 80296148 90 83 00 00 */ stw r4, 0(r3) -/* 8029614C 80 03 00 00 */ lwz r0, 0(r3) -/* 80296150 90 03 00 04 */ stw r0, 4(r3) -/* 80296154 38 C0 00 00 */ li r6, 0 -/* 80296158 90 C3 00 08 */ stw r6, 8(r3) -/* 8029615C 38 80 00 00 */ li r4, 0 -/* 80296160 7C C5 33 78 */ mr r5, r6 -/* 80296164 38 00 00 08 */ li r0, 8 -/* 80296168 7C 09 03 A6 */ mtctr r0 -lbl_8029616C: -/* 8029616C 38 05 00 0C */ addi r0, r5, 0xc -/* 80296170 7C C3 01 2E */ stwx r6, r3, r0 -/* 80296174 38 04 00 2C */ addi r0, r4, 0x2c -/* 80296178 7C C3 03 2E */ sthx r6, r3, r0 -/* 8029617C 38 84 00 02 */ addi r4, r4, 2 -/* 80296180 38 A5 00 04 */ addi r5, r5, 4 -/* 80296184 42 00 FF E8 */ bdnz lbl_8029616C -/* 80296188 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFv.s b/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFv.s deleted file mode 100644 index 178fb21ff54..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFv.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80296108: -/* 80296108 38 C0 00 00 */ li r6, 0 -/* 8029610C 90 C3 00 00 */ stw r6, 0(r3) -/* 80296110 90 C3 00 04 */ stw r6, 4(r3) -/* 80296114 90 C3 00 08 */ stw r6, 8(r3) -/* 80296118 38 80 00 00 */ li r4, 0 -/* 8029611C 7C C5 33 78 */ mr r5, r6 -/* 80296120 38 00 00 08 */ li r0, 8 -/* 80296124 7C 09 03 A6 */ mtctr r0 -lbl_80296128: -/* 80296128 38 05 00 0C */ addi r0, r5, 0xc -/* 8029612C 7C C3 01 2E */ stwx r6, r3, r0 -/* 80296130 38 04 00 2C */ addi r0, r4, 0x2c -/* 80296134 7C C3 03 2E */ sthx r6, r3, r0 -/* 80296138 38 84 00 02 */ addi r4, r4, 2 -/* 8029613C 38 A5 00 04 */ addi r5, r5, 4 -/* 80296140 42 00 FF E8 */ bdnz lbl_80296128 -/* 80296144 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqReader/loopStart__12JASSeqReaderFUl.s b/asm/JSystem/JAudio2/JASSeqReader/loopStart__12JASSeqReaderFUl.s deleted file mode 100644 index 83c4ae6c3a1..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/loopStart__12JASSeqReaderFUl.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_802961CC: -/* 802961CC 80 03 00 08 */ lwz r0, 8(r3) -/* 802961D0 28 00 00 08 */ cmplwi r0, 8 -/* 802961D4 41 80 00 0C */ blt lbl_802961E0 -/* 802961D8 38 60 00 00 */ li r3, 0 -/* 802961DC 4E 80 00 20 */ blr -lbl_802961E0: -/* 802961E0 80 C3 00 04 */ lwz r6, 4(r3) -/* 802961E4 54 00 10 3A */ slwi r0, r0, 2 -/* 802961E8 7C A3 02 14 */ add r5, r3, r0 -/* 802961EC 90 C5 00 0C */ stw r6, 0xc(r5) -/* 802961F0 80 A3 00 08 */ lwz r5, 8(r3) -/* 802961F4 38 05 00 01 */ addi r0, r5, 1 -/* 802961F8 90 03 00 08 */ stw r0, 8(r3) -/* 802961FC 54 A0 08 3C */ slwi r0, r5, 1 -/* 80296200 7C 63 02 14 */ add r3, r3, r0 -/* 80296204 B0 83 00 2C */ sth r4, 0x2c(r3) -/* 80296208 38 60 00 01 */ li r3, 1 -/* 8029620C 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqReader/readMidiValue__12JASSeqReaderFv.s b/asm/JSystem/JAudio2/JASSeqReader/readMidiValue__12JASSeqReaderFv.s deleted file mode 100644 index 1af44b604c7..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/readMidiValue__12JASSeqReaderFv.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_802962B0: -/* 802962B0 80 83 00 04 */ lwz r4, 4(r3) -/* 802962B4 38 04 00 01 */ addi r0, r4, 1 -/* 802962B8 90 03 00 04 */ stw r0, 4(r3) -/* 802962BC 88 84 00 00 */ lbz r4, 0(r4) -/* 802962C0 54 80 06 31 */ rlwinm. r0, r4, 0, 0x18, 0x18 -/* 802962C4 40 82 00 0C */ bne lbl_802962D0 -/* 802962C8 7C 83 23 78 */ mr r3, r4 -/* 802962CC 4E 80 00 20 */ blr -lbl_802962D0: -/* 802962D0 54 85 06 7E */ clrlwi r5, r4, 0x19 -/* 802962D4 38 C0 00 00 */ li r6, 0 -lbl_802962D8: -/* 802962D8 2C 06 00 02 */ cmpwi r6, 2 -/* 802962DC 40 81 00 0C */ ble lbl_802962E8 -/* 802962E0 38 60 00 00 */ li r3, 0 -/* 802962E4 4E 80 00 20 */ blr -lbl_802962E8: -/* 802962E8 80 83 00 04 */ lwz r4, 4(r3) -/* 802962EC 38 04 00 01 */ addi r0, r4, 1 -/* 802962F0 90 03 00 04 */ stw r0, 4(r3) -/* 802962F4 88 84 00 00 */ lbz r4, 0(r4) -/* 802962F8 54 A5 38 30 */ slwi r5, r5, 7 -/* 802962FC 54 80 06 7E */ clrlwi r0, r4, 0x19 -/* 80296300 7C A5 03 78 */ or r5, r5, r0 -/* 80296304 54 80 06 31 */ rlwinm. r0, r4, 0, 0x18, 0x18 -/* 80296308 41 82 00 0C */ beq lbl_80296314 -/* 8029630C 38 C6 00 01 */ addi r6, r6, 1 -/* 80296310 4B FF FF C8 */ b lbl_802962D8 -lbl_80296314: -/* 80296314 7C A3 2B 78 */ mr r3, r5 -/* 80296318 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqReader/ret__12JASSeqReaderFv.s b/asm/JSystem/JAudio2/JASSeqReader/ret__12JASSeqReaderFv.s deleted file mode 100644 index 9d5913b710b..00000000000 --- a/asm/JSystem/JAudio2/JASSeqReader/ret__12JASSeqReaderFv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_8029627C: -/* 8029627C 80 83 00 08 */ lwz r4, 8(r3) -/* 80296280 28 04 00 00 */ cmplwi r4, 0 -/* 80296284 40 82 00 0C */ bne lbl_80296290 -/* 80296288 38 60 00 00 */ li r3, 0 -/* 8029628C 4E 80 00 20 */ blr -lbl_80296290: -/* 80296290 38 04 FF FF */ addi r0, r4, -1 -/* 80296294 90 03 00 08 */ stw r0, 8(r3) -/* 80296298 54 00 10 3A */ slwi r0, r0, 2 -/* 8029629C 7C 83 02 14 */ add r4, r3, r0 -/* 802962A0 80 04 00 0C */ lwz r0, 0xc(r4) -/* 802962A4 90 03 00 04 */ stw r0, 4(r3) -/* 802962A8 38 60 00 01 */ li r3, 1 -/* 802962AC 4E 80 00 20 */ blr diff --git a/asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s b/asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s deleted file mode 100644 index 73727282a1d..00000000000 --- a/asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s +++ /dev/null @@ -1,60 +0,0 @@ -lbl_8009CA48: -/* 8009CA48 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8009CA4C 80 AD 8A 28 */ lwz r5, m_obj__12dEyeHL_mng_c(r13) -/* 8009CA50 3C 60 80 43 */ lis r3, g_envHIO@ha /* 0x8043079C@ha */ -/* 8009CA54 38 63 07 9C */ addi r3, r3, g_envHIO@l /* 0x8043079C@l */ -/* 8009CA58 88 03 00 10 */ lbz r0, 0x10(r3) -/* 8009CA5C 28 00 00 00 */ cmplwi r0, 0 -/* 8009CA60 41 82 00 2C */ beq lbl_8009CA8C -/* 8009CA64 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8009CA68 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8009CA6C 88 03 4F AD */ lbz r0, 0x4fad(r3) -/* 8009CA70 28 00 00 00 */ cmplwi r0, 0 -/* 8009CA74 40 82 00 24 */ bne lbl_8009CA98 -/* 8009CA78 48 00 00 14 */ b lbl_8009CA8C -lbl_8009CA7C: -/* 8009CA7C A8 05 00 08 */ lha r0, 8(r5) -/* 8009CA80 80 65 00 04 */ lwz r3, 4(r5) -/* 8009CA84 B0 03 00 1A */ sth r0, 0x1a(r3) -/* 8009CA88 80 A5 00 10 */ lwz r5, 0x10(r5) -lbl_8009CA8C: -/* 8009CA8C 28 05 00 00 */ cmplwi r5, 0 -/* 8009CA90 40 82 FF EC */ bne lbl_8009CA7C -/* 8009CA94 48 00 00 78 */ b lbl_8009CB0C -lbl_8009CA98: -/* 8009CA98 C0 42 92 10 */ lfs f2, lit_3862(r2) -/* 8009CA9C 80 63 61 B0 */ lwz r3, 0x61b0(r3) -/* 8009CAA0 C0 23 00 D0 */ lfs f1, 0xd0(r3) -/* 8009CAA4 C0 02 92 14 */ lfs f0, lit_3863(r2) -/* 8009CAA8 EC 01 00 28 */ fsubs f0, f1, f0 -/* 8009CAAC EC 02 00 32 */ fmuls f0, f2, f0 -/* 8009CAB0 FC 00 00 1E */ fctiwz f0, f0 -/* 8009CAB4 D8 01 00 08 */ stfd f0, 8(r1) -/* 8009CAB8 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8009CABC 7C 04 07 34 */ extsh r4, r0 -/* 8009CAC0 48 00 00 44 */ b lbl_8009CB04 -lbl_8009CAC4: -/* 8009CAC4 80 C5 00 04 */ lwz r6, 4(r5) -/* 8009CAC8 A8 05 00 08 */ lha r0, 8(r5) -/* 8009CACC 7C 00 22 14 */ add r0, r0, r4 -/* 8009CAD0 B0 06 00 1A */ sth r0, 0x1a(r6) -/* 8009CAD4 A8 66 00 1A */ lha r3, 0x1a(r6) -/* 8009CAD8 2C 03 FE 70 */ cmpwi r3, -400 -/* 8009CADC 40 80 00 0C */ bge lbl_8009CAE8 -/* 8009CAE0 38 00 FE 70 */ li r0, -400 -/* 8009CAE4 48 00 00 18 */ b lbl_8009CAFC -lbl_8009CAE8: -/* 8009CAE8 7C 60 07 34 */ extsh r0, r3 -/* 8009CAEC 2C 00 01 8F */ cmpwi r0, 0x18f -/* 8009CAF0 38 00 01 8F */ li r0, 0x18f -/* 8009CAF4 41 81 00 08 */ bgt lbl_8009CAFC -/* 8009CAF8 7C 60 1B 78 */ mr r0, r3 -lbl_8009CAFC: -/* 8009CAFC B0 06 00 1A */ sth r0, 0x1a(r6) -/* 8009CB00 80 A5 00 10 */ lwz r5, 0x10(r5) -lbl_8009CB04: -/* 8009CB04 28 05 00 00 */ cmplwi r5, 0 -/* 8009CB08 40 82 FF BC */ bne lbl_8009CAC4 -lbl_8009CB0C: -/* 8009CB0C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8009CB10 4E 80 00 20 */ blr diff --git a/asm/d/d_spline_path/Calc__14d2DBSplinePathFPf.s b/asm/d/d_spline_path/Calc__14d2DBSplinePathFPf.s deleted file mode 100644 index b3b2681c124..00000000000 --- a/asm/d/d_spline_path/Calc__14d2DBSplinePathFPf.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_80097B20: -/* 80097B20 C0 23 00 1C */ lfs f1, 0x1c(r3) -/* 80097B24 80 03 00 28 */ lwz r0, 0x28(r3) -/* 80097B28 54 00 10 3A */ slwi r0, r0, 2 -/* 80097B2C 7C 04 04 2E */ lfsx f0, r4, r0 -/* 80097B30 EC 61 00 32 */ fmuls f3, f1, f0 -/* 80097B34 C0 23 00 14 */ lfs f1, 0x14(r3) -/* 80097B38 80 03 00 20 */ lwz r0, 0x20(r3) -/* 80097B3C 54 00 10 3A */ slwi r0, r0, 2 -/* 80097B40 7C 04 04 2E */ lfsx f0, r4, r0 -/* 80097B44 EC 41 00 32 */ fmuls f2, f1, f0 -/* 80097B48 C0 23 00 18 */ lfs f1, 0x18(r3) -/* 80097B4C 80 03 00 24 */ lwz r0, 0x24(r3) -/* 80097B50 54 00 10 3A */ slwi r0, r0, 2 -/* 80097B54 7C 04 04 2E */ lfsx f0, r4, r0 -/* 80097B58 EC 01 00 32 */ fmuls f0, f1, f0 -/* 80097B5C EC 02 00 2A */ fadds f0, f2, f0 -/* 80097B60 EC 23 00 2A */ fadds f1, f3, f0 -/* 80097B64 4E 80 00 20 */ blr diff --git a/asm/d/d_spline_path/Init__10dPathCurveFP5dPath.s b/asm/d/d_spline_path/Init__10dPathCurveFP5dPath.s deleted file mode 100644 index 2c437419421..00000000000 --- a/asm/d/d_spline_path/Init__10dPathCurveFP5dPath.s +++ /dev/null @@ -1,7 +0,0 @@ -lbl_80097C5C: -/* 80097C5C 90 83 00 08 */ stw r4, 8(r3) -/* 80097C60 38 00 00 01 */ li r0, 1 -/* 80097C64 90 03 00 00 */ stw r0, 0(r3) -/* 80097C68 38 00 00 00 */ li r0, 0 -/* 80097C6C 90 03 00 04 */ stw r0, 4(r3) -/* 80097C70 4E 80 00 20 */ blr diff --git a/include/JSystem/JAudio2/JASSeqReader.h b/include/JSystem/JAudio2/JASSeqReader.h index d1492c8b2fb..5a01ff7a9e6 100644 --- a/include/JSystem/JAudio2/JASSeqReader.h +++ b/include/JSystem/JAudio2/JASSeqReader.h @@ -3,4 +3,27 @@ #include "dolphin/types.h" +class JASSeqReader { +public: + /* 80296108 */ void init(); + /* 80296148 */ void init(void*); + /* 8029618C */ bool call(u32); + /* 802961CC */ bool loopStart(u32); + /* 80296210 */ bool loopEnd(); + /* 8029627C */ bool ret(); + /* 802962B0 */ int readMidiValue(); + + u8 readByte() { + u8* tmp = field_0x04; + field_0x04 += 1; + return *tmp; + } + + /* 0x00 */ u32* field_0x00; + /* 0x04 */ u8* field_0x04; + /* 0x08 */ u32 field_0x08; + /* 0x0C */ u16* field_0x0c[8]; + /* 0x2C */ s16 field_0x2c[8]; +}; + #endif /* JASSEQREADER_H */ diff --git a/include/JSystem/JParticle/JPAParticle.h b/include/JSystem/JParticle/JPAParticle.h index f1a04a8d86c..5d72c302799 100644 --- a/include/JSystem/JParticle/JPAParticle.h +++ b/include/JSystem/JParticle/JPAParticle.h @@ -260,6 +260,8 @@ public: void playCalcEmitter() { clearStatus(JPAEmtrStts_StopCalc); } void stopDrawParticle() { setStatus(JPAEmtrStts_StopDraw); } + void* getUserWork() { return mpUserWork; } + public: /* 0x00 */ Vec mLocalScl; /* 0x0C */ Vec mLocalTrs; @@ -329,6 +331,7 @@ public: /* 802804C8 */ void canCreateChild(JPAEmitterWorkData*); /* 80280548 */ f32 getWidth(JPABaseEmitter const*) const; /* 80280568 */ f32 getHeight(JPABaseEmitter const*) const; + int getAge() { return mAge; } public: /* 0x00 */ Vec mPosition; diff --git a/include/c/c_damagereaction.h b/include/c/c_damagereaction.h index 57f932fd254..1f6b2871a39 100644 --- a/include/c/c_damagereaction.h +++ b/include/c/c_damagereaction.h @@ -2,6 +2,14 @@ #define C_C_DAMAGEREACTION_H #include "dolphin/types.h" +#include "JSystem/JParticle/JPAParticle.h" + +class JPTraceParticleCallBack4 { +public: + /* 8001817C */ void execute(JPABaseEmitter*, JPABaseParticle*); + /* 800182A4 */ void draw(JPABaseEmitter*, JPABaseParticle*); + /* 80018328 */ ~JPTraceParticleCallBack4(); +}; BOOL cDmrNowMidnaTalk(); diff --git a/include/d/a/d_a_shop_item_static.h b/include/d/a/d_a_shop_item_static.h index 6d17c53005d..2c61c9b6158 100644 --- a/include/d/a/d_a_shop_item_static.h +++ b/include/d/a/d_a_shop_item_static.h @@ -2,7 +2,6 @@ #define D_A_D_A_SHOP_ITEM_STATIC_H #include "d/a/d_a_itembase.h" -#include "dolphin/types.h" struct ResourceData { char* get_arcName() const { return mArcName; } diff --git a/include/d/d_eye_hl.h b/include/d/d_eye_hl.h index 157988fb0e6..2976dfc1138 100644 --- a/include/d/d_eye_hl.h +++ b/include/d/d_eye_hl.h @@ -4,7 +4,6 @@ #include "JSystem/J3DGraphAnimator/J3DModelData.h" #include "JSystem/J3DGraphBase/J3DDrawBuffer.h" #include "JSystem/JUtility/JUTTexture.h" -#include "dolphin/types.h" class dEyeHL_c; diff --git a/include/d/d_path.h b/include/d/d_path.h index 0ff854677dc..7385af7afab 100644 --- a/include/d/d_path.h +++ b/include/d/d_path.h @@ -1,7 +1,6 @@ #ifndef D_D_PATH_H #define D_D_PATH_H -#include "dolphin/types.h" #include "d/d_stage.h" class dStage_dPnt_c; diff --git a/include/d/d_select_icon.h b/include/d/d_select_icon.h index f7d067ef4e4..de1814657b1 100644 --- a/include/d/d_select_icon.h +++ b/include/d/d_select_icon.h @@ -3,7 +3,6 @@ #include "JSystem/J2DGraph/J2DScreen.h" #include "d/pane/d_pane_class.h" -#include "dolphin/types.h" class dSi_HIO_c { public: diff --git a/include/d/d_spline_path.h b/include/d/d_spline_path.h index abdd2953fd4..b03f0c83ab7 100644 --- a/include/d/d_spline_path.h +++ b/include/d/d_spline_path.h @@ -2,5 +2,38 @@ #define D_D_SPLINE_PATH_H #include "dolphin/types.h" +#include "d/d_path.h" + +struct dPathCurve { + /* 80097C5C */ void Init(dPath*); + /* 80097C74 */ void bSpline2(f32); + + /* 0x00 */ int field_0x00; + /* 0x00 */ int field_0x04; + /* 0x08 */ dPath* mpPath; +}; + +class d2DBSplinePath { +public: + /* 80097878 */ void Init(s32, s32); + /* 80097904 */ void Step(); + /* 80097B20 */ f32 Calc(f32*); + /* 80097A6C */ void Calc(cXyz*); + /* 80097B68 */ void Spot(f32*, f32); + + /* 0x00 */ s32 field_0x00; + /* 0x04 */ s32 field_0x04; + /* 0x08 */ s32 field_0x08; + /* 0x0C */ s32 field_0x0c; + /* 0x10 */ f32 field_0x10; + /* 0x14 */ f32 field_0x14; + /* 0x18 */ f32 field_0x18; + /* 0x1C */ f32 field_0x1c; + /* 0x20 */ u32 field_0x20; + /* 0x24 */ int field_0x24; + /* 0x28 */ int field_0x28; + /* 0x2C */ int field_0x2c; + /* 0x30 */ void* field_0x30; +}; #endif /* D_D_SPLINE_PATH_H */ diff --git a/include/d/s/d_s_play.h b/include/d/s/d_s_play.h index e497c9c62ec..299e70f85fe 100644 --- a/include/d/s/d_s_play.h +++ b/include/d/s/d_s_play.h @@ -78,4 +78,6 @@ public: /* 0x1D4 */ u8 field_0x1d4; }; +extern u8 g_envHIO[68]; + #endif /* D_S_D_S_PLAY_H */ diff --git a/include/m_Do/m_Do_DVDError.h b/include/m_Do/m_Do_DVDError.h index f0ad7f0e4f9..171f9417158 100644 --- a/include/m_Do/m_Do_DVDError.h +++ b/include/m_Do/m_Do_DVDError.h @@ -2,7 +2,6 @@ #define M_DO_M_DO_DVDERROR_H #include "JSystem/JKernel/JKRThread.h" -#include "dolphin/types.h" void mDoDvdErr_ThdCleanup(); static void mDoDvdErr_Watch(void*); diff --git a/libs/JSystem/JAudio2/JASSeqReader.cpp b/libs/JSystem/JAudio2/JASSeqReader.cpp index 48ef9a1d6c4..9e5d53b26d1 100644 --- a/libs/JSystem/JAudio2/JASSeqReader.cpp +++ b/libs/JSystem/JAudio2/JASSeqReader.cpp @@ -1,112 +1,149 @@ -// -// Generated By: dol2asm -// Translation Unit: JASSeqReader -// +/** + * JASSeqReader.cpp + * + */ #include "JSystem/JAudio2/JASSeqReader.h" #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// -struct JASSeqReader { - /* 80296108 */ void init(); - /* 80296148 */ void init(void*); - /* 8029618C */ void call(u32); - /* 802961CC */ void loopStart(u32); - /* 80296210 */ void loopEnd(); - /* 8029627C */ void ret(); - /* 802962B0 */ void readMidiValue(); -}; - -// -// Forward References: -// - -extern "C" void init__12JASSeqReaderFv(); -extern "C" void init__12JASSeqReaderFPv(); -extern "C" void call__12JASSeqReaderFUl(); -extern "C" void loopStart__12JASSeqReaderFUl(); extern "C" void loopEnd__12JASSeqReaderFv(); -extern "C" void ret__12JASSeqReaderFv(); -extern "C" void readMidiValue__12JASSeqReaderFv(); - -// -// External References: -// - -// -// Declarations: -// /* 80296108-80296148 290A48 0040+00 0/0 2/2 0/0 .text init__12JASSeqReaderFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::init() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFv.s" +void JASSeqReader::init() { + field_0x00 = 0; + field_0x04 = 0; + field_0x08 = 0; + + for (int i = 0; i < 8; i++) { + field_0x0c[i] = 0; + field_0x2c[i] = 0; + } } -#pragma pop /* 80296148-8029618C 290A88 0044+00 0/0 1/1 0/0 .text init__12JASSeqReaderFPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::init(void* param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/init__12JASSeqReaderFPv.s" +void JASSeqReader::init(void* param_0) { + field_0x00 = (u32*)param_0; + field_0x04 = (u8*)field_0x00; + field_0x08 = 0; + + for (int i = 0; i < 8; i++) { + field_0x0c[i] = 0; + field_0x2c[i] = 0; + } + } -#pragma pop /* 8029618C-802961CC 290ACC 0040+00 0/0 3/3 0/0 .text call__12JASSeqReaderFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::call(u32 param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/call__12JASSeqReaderFUl.s" +bool JASSeqReader::call(u32 param_0) { + if (8 <= field_0x08) { + return false; + } + + u16* tmp2 = (u16*)field_0x04; + u32 tmp = field_0x08; + + field_0x08++; + field_0x0c[tmp] = tmp2; + field_0x04 = (u8*)((int)field_0x00 + param_0); + + return true; } -#pragma pop /* 802961CC-80296210 290B0C 0044+00 0/0 1/1 0/0 .text loopStart__12JASSeqReaderFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::loopStart(u32 param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/loopStart__12JASSeqReaderFUl.s" +bool JASSeqReader::loopStart(u32 param_0) { + if (8 <= field_0x08) { + return false; + } + + field_0x0c[field_0x08] = (u16*)field_0x04; + + u32 tmp = field_0x08; + field_0x08 = tmp+1; + field_0x2c[tmp] = param_0; + + return true; } -#pragma pop + /* 80296210-8029627C 290B50 006C+00 0/0 1/1 0/0 .text loopEnd__12JASSeqReaderFv */ +#ifdef NONMATCHING +// not sure. field_0x0c is typed wrong maybe? +int JASSeqReader::loopEnd() { + if (field_0x08 == 0) { + return false; + } + + u16 tmp = (u16)field_0x0c[field_0x08]; + + if (tmp != 0) { + tmp--; + } + + if (!tmp) { + field_0x08--; + return true; + } + + field_0x0c[field_0x08] = (u16*)tmp; + field_0x04 = (u8*)field_0x0c[field_0x08-1]; + return true; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void JASSeqReader::loopEnd() { +asm bool JASSeqReader::loopEnd() { nofralloc #include "asm/JSystem/JAudio2/JASSeqReader/loopEnd__12JASSeqReaderFv.s" } #pragma pop +#endif /* 8029627C-802962B0 290BBC 0034+00 0/0 2/2 0/0 .text ret__12JASSeqReaderFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::ret() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/ret__12JASSeqReaderFv.s" +bool JASSeqReader::ret() { + u32 tmp = field_0x08; + + if (tmp == 0) { + return false; + } + + tmp--; + field_0x08 = tmp; + field_0x04 = (u8*)field_0x0c[tmp]; + + return true; } -#pragma pop /* 802962B0-8029631C 290BF0 006C+00 0/0 2/2 0/0 .text readMidiValue__12JASSeqReaderFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqReader::readMidiValue() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqReader/readMidiValue__12JASSeqReaderFv.s" -} -#pragma pop +int JASSeqReader::readMidiValue() { + int byte = readByte(); + + if (!(byte & 0x80)) { + return byte; + } + + byte &= 0x7f; + + int i = 0; + + while (true) { + if (2 < i) { + return 0; + } + + u8 newByte = readByte(); + + byte = byte << 7; + byte |= newByte & 0x7f; + + if (!(newByte & 0x80)) { + break; + } + + i++; + } + + return byte; +} \ No newline at end of file diff --git a/src/c/c_damagereaction.cpp b/src/c/c_damagereaction.cpp index e01e46c5d32..0923c6837b3 100644 --- a/src/c/c_damagereaction.cpp +++ b/src/c/c_damagereaction.cpp @@ -8,15 +8,6 @@ #include "dolphin/types.h" #include "d/com/d_com_inf_game.h" -// -// Types: -// - -struct JPTraceParticleCallBack4 { - /* 8001817C */ void execute(JPABaseEmitter*, JPABaseParticle*); - /* 800182A4 */ void draw(JPABaseEmitter*, JPABaseParticle*); - /* 80018328 */ ~JPTraceParticleCallBack4(); -}; // // Forward References: // @@ -77,6 +68,20 @@ SECTION_SDATA2 static f64 lit_3736 = 4503599627370496.0 /* cast u32 to float */; /* 8001817C-800182A4 012ABC 0128+00 1/0 0/0 0/0 .text * execute__24JPTraceParticleCallBack4FP14JPABaseEmitterP15JPABaseParticle */ +#ifdef NONMATCHING +void JPTraceParticleCallBack4::execute(JPABaseEmitter* param_0, JPABaseParticle* param_1) { + int age = param_1->getAge(); + if (age != 0) { + JGeometry::TVec3 vec1; + JGeometry::TVec3 vec2; + JGeometry::TVec3 vec3; + + void* user_work = param_0->getUserWork(); + user_work[age*0x0C]; + param_1->setOffsetPosition(param_1->getOffsetPosition() + ) + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -85,6 +90,7 @@ asm void JPTraceParticleCallBack4::execute(JPABaseEmitter* param_0, JPABaseParti #include "asm/c/c_damagereaction/execute__24JPTraceParticleCallBack4FP14JPABaseEmitterP15JPABaseParticle.s" } #pragma pop +#endif /* 800182A4-800182A8 012BE4 0004+00 1/0 0/0 0/0 .text * draw__24JPTraceParticleCallBack4FP14JPABaseEmitterP15JPABaseParticle */ diff --git a/src/d/a/d_a_shop_item_static.cpp b/src/d/a/d_a_shop_item_static.cpp index c42b0280541..12fdc6a3bc0 100644 --- a/src/d/a/d_a_shop_item_static.cpp +++ b/src/d/a/d_a_shop_item_static.cpp @@ -1,31 +1,9 @@ -// -// Generated By: dol2asm -// Translation Unit: d/a/d_a_shop_item_static -// +/** + * d_a_shop_item_static.cpp + * + */ #include "d/a/d_a_shop_item_static.h" -#include "dol2asm.h" -#include "dolphin/types.h" - -// -// Forward References: -// - -extern "C" void getRotateP__12daShopItem_cFv(); -extern "C" void getPosP__12daShopItem_cFv(); -extern "C" void CheckShopItemCreateHeap__FP10fopAc_ac_c(); -extern "C" void* const mData__12daShopItem_c[276]; -extern "C" extern char const* const d_a_d_a_shop_item_static__stringBase0; - -// -// External References: -// - -extern "C" void CreateItemHeap__12daItemBase_cFPCcsssssss(); - -// -// Declarations: -// /* 80037C14-80037C1C 032554 0008+00 0/0 1/1 0/0 .text getRotateP__12daShopItem_cFv */ csXyz* daShopItem_c::getRotateP() { @@ -38,7 +16,7 @@ cXyz* daShopItem_c::getPosP() { } /* 803792E8-80379738 -00001 0450+00 1/1 0/0 9/9 .rodata mData__12daShopItem_c */ -SECTION_RODATA ResourceData const daShopItem_c::mData[23] = { +ResourceData const daShopItem_c::mData[23] = { {"B_mD_sold", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0x8000, 0}, 0, 0, 0, 0, -1, -1}, {"B_mD_oil", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1}, {"O_mD_red", 3, -1, -1, -1, -1, -1, -11, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1}, @@ -63,7 +41,6 @@ SECTION_RODATA ResourceData const daShopItem_c::mData[23] = { {"O_mD_gren", 3, -1, -1, -1, -1, -1, -1, 0.0f, 1.0f, 0, {0, 0, 0}, 0, 0, 0, 0, -1, -1}, {"O_mD_bott", 6, 12, -1, -1, -1, 9, 15, 0.0f, 1.0f, 0, {0, 0, 0}, 4, 0, 0, 0, 12, 0}, }; -COMPILER_STRIP_GATE(0x803792E8, &daShopItem_c::mData); /* 80037C24-80037C7C 032564 0058+00 0/0 0/0 1/1 .text CheckShopItemCreateHeap__FP10fopAc_ac_c */ void CheckShopItemCreateHeap(fopAc_ac_c* actor) { diff --git a/src/d/d_eye_hl.cpp b/src/d/d_eye_hl.cpp index 08c4b158e68..ba658e20b20 100644 --- a/src/d/d_eye_hl.cpp +++ b/src/d/d_eye_hl.cpp @@ -1,42 +1,14 @@ -// -// Generated By: dol2asm -// Translation Unit: d/d_eye_hl -// +/** + * d_eye_hl.cpp + * dolzel2 - Eye Highlight Management + */ #include "d/d_eye_hl.h" #include "MSL_C/MSL_Common/Src/string.h" #include "d/com/d_com_inf_game.h" -#include "dol2asm.h" #include "dolphin/os/OS.h" -#include "dolphin/types.h" - -// -// Forward References: -// - -extern "C" void entry__8dEyeHL_cFP12J3DModelDataPCc(); -extern "C" void remove__8dEyeHL_cFv(); -extern "C" void update__12dEyeHL_mng_cFv(); -extern "C" void entry__12dEyeHL_mng_cFP8dEyeHL_c(); -extern "C" void remove__12dEyeHL_mng_cFP8dEyeHL_c(); -extern "C" extern char const* const d_d_eye_hl__stringBase0; -extern "C" u8 m_obj__12dEyeHL_mng_c[4 + 4 /* padding */]; -extern "C" extern u8 struct_80450FB0[8]; -extern "C" extern u8 struct_80450FB8[4]; -extern "C" extern u8 struct_80450FBC[4]; - -// -// External References: -// - -extern "C" void getName__10JUTNameTabCFUs(); -extern "C" void _savegpr_27(); -extern "C" void _restgpr_27(); -extern "C" extern u8 g_envHIO[68]; - -// -// Declarations: -// +#include "dol2asm.h" +#include "d/s/d_s_play.h" /* 8009C964-8009CA28 0972A4 00C4+00 0/0 2/2 0/0 .text entry__8dEyeHL_cFP12J3DModelDataPCc */ @@ -69,14 +41,7 @@ void dEyeHL_c::remove() { /* 80450FA8-80450FB0 0004A8 0004+04 3/3 0/0 0/0 .sbss m_obj__12dEyeHL_mng_c */ dEyeHL_mng_c* dEyeHL_mng_c::m_obj; -/* 80452C10-80452C14 001210 0004+00 1/1 0/0 0/0 .sdata2 @3862 */ -SECTION_SDATA2 static f32 lit_3862 = 2.0f; - -/* 80452C14-80452C18 001214 0004+00 1/1 0/0 0/0 .sdata2 @3863 */ -SECTION_SDATA2 static f32 lit_3863 = 45.0f; - /* 8009CA48-8009CB14 097388 00CC+00 0/0 1/1 0/0 .text update__12dEyeHL_mng_cFv */ -#ifdef NONMATCHING void dEyeHL_mng_c::update() { dEyeHL_mng_c* obj = m_obj; @@ -85,24 +50,14 @@ void dEyeHL_mng_c::update() { obj->m_timg->LODBias = obj->m_lodBias; } } else { - s16 tmp = 2.0f * (dComIfGd_getView()->field_0xd0 - 45.0f); + s16 tmp = 2.0f * (dComIfGd_getView()->mFovy - 45.0f); for (; obj != NULL; obj = obj->m_next) { ResTIMG* timg = obj->m_timg; timg->LODBias = obj->m_lodBias + tmp; - timg->LODBias = cLib_minMaxLimit(timg->LODBias, (s16)-400, (s16)399); + timg->LODBias = (s16)cLib_minMaxLimit((s16)timg->LODBias, (s16)-400, (s16)399); } } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dEyeHL_mng_c::update() { - nofralloc -#include "asm/d/d_eye_hl/update__12dEyeHL_mng_cFv.s" -} -#pragma pop -#endif /* 8009CB14-8009CB34 097454 0020+00 1/1 0/0 0/0 .text entry__12dEyeHL_mng_cFP8dEyeHL_c */ void dEyeHL_mng_c::entry(dEyeHL_c* i_obj) { diff --git a/src/d/d_path.cpp b/src/d/d_path.cpp index b97537deb97..49693106a3b 100644 --- a/src/d/d_path.cpp +++ b/src/d/d_path.cpp @@ -1,11 +1,9 @@ -// -// Generated By: dol2asm -// Translation Unit: d/d_path -// +/** + * d_path.cpp + * dolzel2 - Room Path & Point Management + */ #include "d/d_path.h" -#include "dol2asm.h" -#include "dolphin/types.h" #include "d/com/d_com_inf_game.h" /* 800517B0-800517EC 04C0F0 003C+00 0/0 7/7 63/63 .text dPath_GetPnt__FPC5dPathi */ diff --git a/src/d/d_select_icon.cpp b/src/d/d_select_icon.cpp index 0178d767b01..7367ece488a 100644 --- a/src/d/d_select_icon.cpp +++ b/src/d/d_select_icon.cpp @@ -1,6 +1,4 @@ #include "d/d_select_icon.h" -#include "dol2asm.h" -#include "dolphin/types.h" dSi_HIO_c::dSi_HIO_c() {} diff --git a/src/d/d_spline_path.cpp b/src/d/d_spline_path.cpp index 3cbb089cfe0..edd9ccbd9de 100644 --- a/src/d/d_spline_path.cpp +++ b/src/d/d_spline_path.cpp @@ -1,33 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d/d_spline_path -// +/** + * d_spline_path.cpp + * dolzel2 - Spline Path Management + */ #include "d/d_spline_path.h" #include "dol2asm.h" #include "dolphin/types.h" -// -// Types: -// - -struct dPath {}; - -struct dPathCurve { - /* 80097C5C */ void Init(dPath*); - /* 80097C74 */ void bSpline2(f32); -}; - -struct cXyz {}; - -struct d2DBSplinePath { - /* 80097878 */ void Init(s32, s32); - /* 80097904 */ void Step(); - /* 80097B20 */ void Calc(f32*); - /* 80097A6C */ void Calc(cXyz*); - /* 80097B68 */ void Spot(f32*, f32); -}; - // // Forward References: // @@ -40,12 +19,6 @@ extern "C" void Spot__14d2DBSplinePathFPff(); extern "C" void Init__10dPathCurveFP5dPath(); extern "C" void bSpline2__10dPathCurveFf(); -// -// External References: -// - -extern "C" void PSVECAdd(); - // // Declarations: // @@ -55,6 +28,27 @@ extern "C" void PSVECAdd(); SECTION_SDATA2 static f64 lit_3632 = 4503601774854144.0 /* cast s32 to float */; /* 80097878-80097904 0921B8 008C+00 0/0 7/7 0/0 .text Init__14d2DBSplinePathFll */ +#ifdef NONMATCHING +// regalloc +void d2DBSplinePath::Init(s32 param_0, s32 param_1) { + s32 tmp; + s32 tmp2; + + field_0x00 = 0; + field_0x04 = param_0; + field_0x08 = 1; + field_0x0c = param_1; + + if (field_0x0c != 0) { + tmp2 = field_0x0c - 1; + } + + field_0x04 < 2 ? tmp = 1 : tmp = field_0x04 - 2; + field_0x10 = (f32)tmp / (f32)tmp2; + + field_0x2c = 0; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -63,6 +57,7 @@ asm void d2DBSplinePath::Init(s32 param_0, s32 param_1) { #include "asm/d/d_spline_path/Init__14d2DBSplinePathFll.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80452BD0-80452BD4 0011D0 0004+00 3/3 0/0 0/0 .sdata2 @3684 */ @@ -92,14 +87,11 @@ asm void d2DBSplinePath::Calc(cXyz* param_0) { #pragma pop /* 80097B20-80097B68 092460 0048+00 0/0 5/5 0/0 .text Calc__14d2DBSplinePathFPf */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void d2DBSplinePath::Calc(f32* param_0) { - nofralloc -#include "asm/d/d_spline_path/Calc__14d2DBSplinePathFPf.s" +f32 d2DBSplinePath::Calc(f32* param_0) { + return field_0x14 * param_0[field_0x20] + + field_0x18 * param_0[field_0x24] + + field_0x1c * param_0[field_0x28]; } -#pragma pop /* 80097B68-80097C5C 0924A8 00F4+00 0/0 1/1 0/0 .text Spot__14d2DBSplinePathFPff */ #pragma push @@ -112,14 +104,11 @@ asm void d2DBSplinePath::Spot(f32* param_0, f32 param_1) { #pragma pop /* 80097C5C-80097C74 09259C 0018+00 0/0 0/0 1/1 .text Init__10dPathCurveFP5dPath */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dPathCurve::Init(dPath* param_0) { - nofralloc -#include "asm/d/d_spline_path/Init__10dPathCurveFP5dPath.s" +void dPathCurve::Init(dPath* i_path) { + mpPath = i_path; + field_0x00 = 1; + field_0x04 = 0; } -#pragma pop /* 80097C74-80097E8C 0925B4 0218+00 0/0 0/0 1/1 .text bSpline2__10dPathCurveFf */ #pragma push diff --git a/src/d/s/d_s_play.cpp b/src/d/s/d_s_play.cpp index bb317ce116d..e9f4196707f 100644 --- a/src/d/s/d_s_play.cpp +++ b/src/d/s/d_s_play.cpp @@ -831,8 +831,7 @@ static u8 lit_4050[12]; #pragma pop /* 8043079C-804307E0 05D4BC 0044+00 1/2 3/3 0/0 .bss g_envHIO */ -extern s8 g_envHIO[68]; -s8 g_envHIO[68]; +u8 g_envHIO[68]; /* 80454F30-80454F34 003530 0004+00 1/1 0/0 0/0 .sdata2 @4804 */ SECTION_SDATA2 static f32 lit_4804 = 608.0f; diff --git a/src/m_Do/m_Do_DVDError.cpp b/src/m_Do/m_Do_DVDError.cpp index 35156167bf8..470f99fc5f8 100644 --- a/src/m_Do/m_Do_DVDError.cpp +++ b/src/m_Do/m_Do_DVDError.cpp @@ -5,7 +5,6 @@ #include "m_Do/m_Do_DVDError.h" #include "dol2asm.h" -#include "dolphin/types.h" #include "m_Do/m_Do_dvd_thread.h" #include "m_Do/m_Do_ext.h" #include "m_Do/m_Do_Reset.h"