diff --git a/Progress.md b/Progress.md index 57fdeb11338..14d50e113a0 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 | 27.346475% | 983528 | 3596544 +.text | 27.417543% | 986084 | 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 | 35.005691% | 1407464 | 4020672 +Total | 35.069262% | 1410020 | 4020672 ## Total Section | Percentage | Decompiled (bytes) | Total (bytes) ---|---|---|--- -main.dol | 35.005691% | 1407464 | 4020672 -RELs | 33.644652% | 3869244 | 11500324 -Total | 33.997225% | 5276708 | 15520996 +main.dol | 35.069262% | 1410020 | 4020672 +RELs | 33.649382% | 3869788 | 11500324 +Total | 34.017198% | 5279808 | 15520996 ## RELs @@ -220,7 +220,7 @@ d_a_myna | 30.876570% | 9736 | 31532 d_a_nbomb | 28.739233% | 8808 | 30648 d_a_ni | 27.299309% | 8216 | 30096 d_a_npc_aru | 34.812103% | 12932 | 37148 -d_a_npc_ash | 40.990760% | 12776 | 31168 +d_a_npc_ash | 42.736140% | 13320 | 31168 d_a_npc_ashB | 32.906995% | 8336 | 25332 d_a_npc_bans | 34.954955% | 11640 | 33300 d_a_npc_besu | 38.726854% | 19492 | 50332 @@ -785,4 +785,4 @@ d_a_vrbox2 | 34.977578% | 2184 | 6244 d_a_warp_bug | 54.940711% | 1112 | 2024 d_a_ykgr | 44.400631% | 2252 | 5072 f_pc_profile_lst | 100.000000% | 28156 | 28156 -Total | 33.644652% | 3869244 | 11500324 +Total | 33.649382% | 3869788 | 11500324 diff --git a/asm/JSystem/JAudio2/JASAudioThread/DMACallback__14JASAudioThreadFv.s b/asm/JSystem/JAudio2/JASAudioThread/DMACallback__14JASAudioThreadFv.s deleted file mode 100644 index 877675f557f..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/DMACallback__14JASAudioThreadFv.s +++ /dev/null @@ -1,22 +0,0 @@ -lbl_8029CF68: -/* 8029CF68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029CF6C 7C 08 02 A6 */ mflr r0 -/* 8029CF70 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029CF74 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029CF78 83 ED 86 0C */ lwz r31, __OSReport_disable-0xC(r13) -/* 8029CF7C 38 60 00 04 */ li r3, 4 -/* 8029CF80 4B FF 3F A5 */ bl stop__8JASProbeFl -/* 8029CF84 38 60 00 04 */ li r3, 4 -/* 8029CF88 3C 80 80 3A */ lis r4, JASAudioThread__stringBase0@ha /* 0x8039B338@ha */ -/* 8029CF8C 38 84 B3 38 */ addi r4, r4, JASAudioThread__stringBase0@l /* 0x8039B338@l */ -/* 8029CF90 38 84 00 08 */ addi r4, r4, 8 -/* 8029CF94 4B FF 3F 51 */ bl start__8JASProbeFlPCc -/* 8029CF98 38 7F 00 30 */ addi r3, r31, 0x30 -/* 8029CF9C 38 80 00 00 */ li r4, 0 -/* 8029CFA0 38 A0 00 00 */ li r5, 0 -/* 8029CFA4 48 0A 1A 51 */ bl OSSendMessage -/* 8029CFA8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029CFAC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029CFB0 7C 08 03 A6 */ mtlr r0 -/* 8029CFB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029CFB8 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASAudioThread/DSPCallback__14JASAudioThreadFPv.s b/asm/JSystem/JAudio2/JASAudioThread/DSPCallback__14JASAudioThreadFPv.s deleted file mode 100644 index 5c7d4588962..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/DSPCallback__14JASAudioThreadFPv.s +++ /dev/null @@ -1,31 +0,0 @@ -lbl_8029CFBC: -/* 8029CFBC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029CFC0 7C 08 02 A6 */ mflr r0 -/* 8029CFC4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029CFC8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029CFCC 83 ED 86 0C */ lwz r31, __OSReport_disable-0xC(r13) -lbl_8029CFD0: -/* 8029CFD0 48 0B 54 71 */ bl DSPCheckMailFromDSP -/* 8029CFD4 28 03 00 00 */ cmplwi r3, 0 -/* 8029CFD8 41 82 FF F8 */ beq lbl_8029CFD0 -/* 8029CFDC 48 0B 54 75 */ bl DSPReadMailFromDSP -/* 8029CFE0 54 60 84 3E */ srwi r0, r3, 0x10 -/* 8029CFE4 28 00 F3 55 */ cmplwi r0, 0xf355 -/* 8029CFE8 40 82 00 2C */ bne lbl_8029D014 -/* 8029CFEC 54 60 04 2E */ rlwinm r0, r3, 0, 0x10, 0x17 -/* 8029CFF0 28 00 FF 00 */ cmplwi r0, 0xff00 -/* 8029CFF4 40 82 00 18 */ bne lbl_8029D00C -/* 8029CFF8 38 7F 00 30 */ addi r3, r31, 0x30 -/* 8029CFFC 38 80 00 01 */ li r4, 1 -/* 8029D000 38 A0 00 00 */ li r5, 0 -/* 8029D004 48 0A 19 F1 */ bl OSSendMessage -/* 8029D008 48 00 00 0C */ b lbl_8029D014 -lbl_8029D00C: -/* 8029D00C 54 63 04 3E */ clrlwi r3, r3, 0x10 -/* 8029D010 48 00 09 B5 */ bl finishWork__6JASDspFUs -lbl_8029D014: -/* 8029D014 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029D018 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029D01C 7C 08 03 A6 */ mtlr r0 -/* 8029D020 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029D024 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASAudioThread/__ct__14JASAudioThreadFiiUl.s b/asm/JSystem/JAudio2/JASAudioThread/__ct__14JASAudioThreadFiiUl.s deleted file mode 100644 index 0e5da428f24..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/__ct__14JASAudioThreadFiiUl.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_8029CCDC: -/* 8029CCDC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029CCE0 7C 08 02 A6 */ mflr r0 -/* 8029CCE4 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029CCE8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029CCEC 7C 7F 1B 78 */ mr r31, r3 -/* 8029CCF0 7C 87 23 78 */ mr r7, r4 -/* 8029CCF4 7C A0 2B 78 */ mr r0, r5 -/* 8029CCF8 80 8D 8C 90 */ lwz r4, JASDram(r13) -/* 8029CCFC 7C C5 33 78 */ mr r5, r6 -/* 8029CD00 7C 06 03 78 */ mr r6, r0 -/* 8029CD04 48 03 49 0D */ bl __ct__9JKRThreadFP7JKRHeapUlii -/* 8029CD08 34 7F 00 7C */ addic. r3, r31, 0x7c -/* 8029CD0C 41 82 00 08 */ beq lbl_8029CD14 -/* 8029CD10 38 63 FF 84 */ addi r3, r3, -124 -lbl_8029CD14: -/* 8029CD14 90 6D 86 0C */ stw r3, __OSReport_disable-0xC(r13) -/* 8029CD18 3C 60 80 3C */ lis r3, __vt__14JASAudioThread@ha /* 0x803C78E0@ha */ -/* 8029CD1C 38 03 78 E0 */ addi r0, r3, __vt__14JASAudioThread@l /* 0x803C78E0@l */ -/* 8029CD20 90 1F 00 00 */ stw r0, 0(r31) -/* 8029CD24 38 00 00 00 */ li r0, 0 -/* 8029CD28 98 1F 00 84 */ stb r0, 0x84(r31) -/* 8029CD2C 38 7F 00 7C */ addi r3, r31, 0x7c -/* 8029CD30 48 0A 3F 45 */ bl OSInitThreadQueue -/* 8029CD34 7F E3 FB 78 */ mr r3, r31 -/* 8029CD38 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029CD3C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029CD40 7C 08 03 A6 */ mtlr r0 -/* 8029CD44 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029CD48 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASAudioThread/__dt__14JASAudioThreadFv.s b/asm/JSystem/JAudio2/JASAudioThread/__dt__14JASAudioThreadFv.s deleted file mode 100644 index c1373fd019f..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/__dt__14JASAudioThreadFv.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_8029D028: -/* 8029D028 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029D02C 7C 08 02 A6 */ mflr r0 -/* 8029D030 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029D034 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029D038 93 C1 00 08 */ stw r30, 8(r1) -/* 8029D03C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 8029D040 7C 9F 23 78 */ mr r31, r4 -/* 8029D044 41 82 00 54 */ beq lbl_8029D098 -/* 8029D048 3C 60 80 3C */ lis r3, __vt__14JASAudioThread@ha /* 0x803C78E0@ha */ -/* 8029D04C 38 03 78 E0 */ addi r0, r3, __vt__14JASAudioThread@l /* 0x803C78E0@l */ -/* 8029D050 90 1E 00 00 */ stw r0, 0(r30) -/* 8029D054 34 1E 00 7C */ addic. r0, r30, 0x7c -/* 8029D058 41 82 00 24 */ beq lbl_8029D07C -/* 8029D05C 34 7E 00 7C */ addic. r3, r30, 0x7c -/* 8029D060 41 82 00 08 */ beq lbl_8029D068 -/* 8029D064 38 63 FF 84 */ addi r3, r3, -124 -lbl_8029D068: -/* 8029D068 80 0D 86 0C */ lwz r0, __OSReport_disable-0xC(r13) -/* 8029D06C 7C 00 18 40 */ cmplw r0, r3 -/* 8029D070 40 82 00 0C */ bne lbl_8029D07C -/* 8029D074 38 00 00 00 */ li r0, 0 -/* 8029D078 90 0D 86 0C */ stw r0, __OSReport_disable-0xC(r13) -lbl_8029D07C: -/* 8029D07C 7F C3 F3 78 */ mr r3, r30 -/* 8029D080 38 80 00 00 */ li r4, 0 -/* 8029D084 48 03 46 D5 */ bl __dt__9JKRThreadFv -/* 8029D088 7F E0 07 35 */ extsh. r0, r31 -/* 8029D08C 40 81 00 0C */ ble lbl_8029D098 -/* 8029D090 7F C3 F3 78 */ mr r3, r30 -/* 8029D094 48 03 1C A9 */ bl __dl__FPv -lbl_8029D098: -/* 8029D098 7F C3 F3 78 */ mr r3, r30 -/* 8029D09C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029D0A0 83 C1 00 08 */ lwz r30, 8(r1) -/* 8029D0A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029D0A8 7C 08 03 A6 */ mtlr r0 -/* 8029D0AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029D0B0 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASAudioThread/create__14JASAudioThreadFl.s b/asm/JSystem/JAudio2/JASAudioThread/create__14JASAudioThreadFl.s deleted file mode 100644 index ecae5c9772e..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/create__14JASAudioThreadFl.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_8029CD4C: -/* 8029CD4C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029CD50 7C 08 02 A6 */ mflr r0 -/* 8029CD54 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029CD58 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8029CD5C 7C 7F 1B 78 */ mr r31, r3 -/* 8029CD60 38 60 00 88 */ li r3, 0x88 -/* 8029CD64 80 8D 8C 90 */ lwz r4, JASDram(r13) -/* 8029CD68 38 A0 00 00 */ li r5, 0 -/* 8029CD6C 48 03 1F 2D */ bl __nw__FUlP7JKRHeapi -/* 8029CD70 7C 64 1B 79 */ or. r4, r3, r3 -/* 8029CD74 41 82 00 18 */ beq lbl_8029CD8C -/* 8029CD78 7F E4 FB 78 */ mr r4, r31 -/* 8029CD7C 38 A0 00 10 */ li r5, 0x10 -/* 8029CD80 38 C0 14 00 */ li r6, 0x1400 -/* 8029CD84 4B FF FF 59 */ bl __ct__14JASAudioThreadFiiUl -/* 8029CD88 7C 64 1B 78 */ mr r4, r3 -lbl_8029CD8C: -/* 8029CD8C 80 0D 8D F0 */ lwz r0, sSystemHeap__7JKRHeap(r13) -/* 8029CD90 28 00 00 00 */ cmplwi r0, 0 -/* 8029CD94 41 82 00 08 */ beq lbl_8029CD9C -/* 8029CD98 48 00 00 08 */ b lbl_8029CDA0 -lbl_8029CD9C: -/* 8029CD9C 80 0D 8D F4 */ lwz r0, sCurrentHeap__7JKRHeap(r13) -lbl_8029CDA0: -/* 8029CDA0 90 04 00 74 */ stw r0, 0x74(r4) -/* 8029CDA4 80 64 00 2C */ lwz r3, 0x2c(r4) -/* 8029CDA8 48 0A 4A 0D */ bl OSResumeThread -/* 8029CDAC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8029CDB0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029CDB4 7C 08 03 A6 */ mtlr r0 -/* 8029CDB8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029CDBC 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASAudioThread/stop__14JASAudioThreadFv.s b/asm/JSystem/JAudio2/JASAudioThread/stop__14JASAudioThreadFv.s deleted file mode 100644 index 3fd438cfb56..00000000000 --- a/asm/JSystem/JAudio2/JASAudioThread/stop__14JASAudioThreadFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_8029CDC0: -/* 8029CDC0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8029CDC4 7C 08 02 A6 */ mflr r0 -/* 8029CDC8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029CDCC 38 80 00 02 */ li r4, 2 -/* 8029CDD0 38 A0 00 01 */ li r5, 1 -/* 8029CDD4 38 63 00 30 */ addi r3, r3, 0x30 -/* 8029CDD8 48 0A 1D C1 */ bl OSJamMessage -/* 8029CDDC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8029CDE0 7C 08 03 A6 */ mtlr r0 -/* 8029CDE4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029CDE8 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/__ct__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/__ct__10JASSeqCtrlFv.s deleted file mode 100644 index de71c596dcb..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/__ct__10JASSeqCtrlFv.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_802938BC: -/* 802938BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802938C0 7C 08 02 A6 */ mflr r0 -/* 802938C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 802938C8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802938CC 7C 7F 1B 78 */ mr r31, r3 -/* 802938D0 48 00 28 39 */ bl init__12JASSeqReaderFv -/* 802938D4 38 0D 8C B8 */ la r0, sDefaultParser__10JASSeqCtrl(r13) /* 80451238-_SDA_BASE_ */ -/* 802938D8 90 1F 00 3C */ stw r0, 0x3c(r31) -/* 802938DC 38 00 00 00 */ li r0, 0 -/* 802938E0 90 1F 00 40 */ stw r0, 0x40(r31) -/* 802938E4 90 1F 00 44 */ stw r0, 0x44(r31) -/* 802938E8 90 1F 00 48 */ stw r0, 0x48(r31) -/* 802938EC B0 1F 00 4C */ sth r0, 0x4c(r31) -/* 802938F0 B0 1F 00 4E */ sth r0, 0x4e(r31) -/* 802938F4 98 1F 00 50 */ stb r0, 0x50(r31) -/* 802938F8 98 1F 00 51 */ stb r0, 0x51(r31) -/* 802938FC 90 1F 00 54 */ stw r0, 0x54(r31) -/* 80293900 90 1F 00 58 */ stw r0, 0x58(r31) -/* 80293904 7F E3 FB 78 */ mr r3, r31 -/* 80293908 48 00 28 01 */ bl init__12JASSeqReaderFv -/* 8029390C 7F E3 FB 78 */ mr r3, r31 -/* 80293910 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293914 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293918 7C 08 03 A6 */ mtlr r0 -/* 8029391C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293920 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/__dt__12JASSeqParserFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/__dt__12JASSeqParserFv.s deleted file mode 100644 index 9c5ed30ed9e..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/__dt__12JASSeqParserFv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_80293CAC: -/* 80293CAC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293CB0 7C 08 02 A6 */ mflr r0 -/* 80293CB4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80293CB8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80293CBC 7C 7F 1B 79 */ or. r31, r3, r3 -/* 80293CC0 41 82 00 1C */ beq lbl_80293CDC -/* 80293CC4 3C A0 80 3C */ lis r5, __vt__12JASSeqParser@ha /* 0x803C7650@ha */ -/* 80293CC8 38 05 76 50 */ addi r0, r5, __vt__12JASSeqParser@l /* 0x803C7650@l */ -/* 80293CCC 90 1F 00 00 */ stw r0, 0(r31) -/* 80293CD0 7C 80 07 35 */ extsh. r0, r4 -/* 80293CD4 40 81 00 08 */ ble lbl_80293CDC -/* 80293CD8 48 03 B0 65 */ bl __dl__FPv -lbl_80293CDC: -/* 80293CDC 7F E3 FB 78 */ mr r3, r31 -/* 80293CE0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293CE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293CE8 7C 08 03 A6 */ mtlr r0 -/* 80293CEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293CF0 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/__sinit_JASSeqCtrl_cpp.s b/asm/JSystem/JAudio2/JASSeqCtrl/__sinit_JASSeqCtrl_cpp.s deleted file mode 100644 index ad5b27dc410..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/__sinit_JASSeqCtrl_cpp.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_80293C6C: -/* 80293C6C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293C70 7C 08 02 A6 */ mflr r0 -/* 80293C74 90 01 00 14 */ stw r0, 0x14(r1) -/* 80293C78 3C 60 80 3C */ lis r3, __vt__12JASSeqParser@ha /* 0x803C7650@ha */ -/* 80293C7C 38 03 76 50 */ addi r0, r3, __vt__12JASSeqParser@l /* 0x803C7650@l */ -/* 80293C80 90 0D 8C B8 */ stw r0, sDefaultParser__10JASSeqCtrl(r13) -/* 80293C84 38 6D 8C B8 */ la r3, sDefaultParser__10JASSeqCtrl(r13) /* 80451238-_SDA_BASE_ */ -/* 80293C88 3C 80 80 29 */ lis r4, __dt__12JASSeqParserFv@ha /* 0x80293CAC@ha */ -/* 80293C8C 38 84 3C AC */ addi r4, r4, __dt__12JASSeqParserFv@l /* 0x80293CAC@l */ -/* 80293C90 3C A0 80 43 */ lis r5, lit_433@ha /* 0x80431B18@ha */ -/* 80293C94 38 A5 1B 18 */ addi r5, r5, lit_433@l /* 0x80431B18@l */ -/* 80293C98 48 0C DF 8D */ bl __register_global_object -/* 80293C9C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293CA0 7C 08 03 A6 */ mtlr r0 -/* 80293CA4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293CA8 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/checkIntr__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/checkIntr__10JASSeqCtrlFv.s deleted file mode 100644 index cf35f6977fe..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/checkIntr__10JASSeqCtrlFv.s +++ /dev/null @@ -1,30 +0,0 @@ -lbl_80293B78: -/* 80293B78 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293B7C 7C 08 02 A6 */ mflr r0 -/* 80293B80 90 01 00 14 */ stw r0, 0x14(r1) -/* 80293B84 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80293B88 7C 7F 1B 78 */ mr r31, r3 -/* 80293B8C 80 03 00 44 */ lwz r0, 0x44(r3) -/* 80293B90 28 00 00 00 */ cmplwi r0, 0 -/* 80293B94 40 82 00 40 */ bne lbl_80293BD4 -/* 80293B98 4B FF FF 91 */ bl findIntr__10JASSeqCtrlFv -/* 80293B9C 2C 03 00 00 */ cmpwi r3, 0 -/* 80293BA0 41 80 00 34 */ blt lbl_80293BD4 -/* 80293BA4 80 9F 00 48 */ lwz r4, 0x48(r31) -/* 80293BA8 1C 03 00 03 */ mulli r0, r3, 3 -/* 80293BAC 7C 84 02 14 */ add r4, r4, r0 -/* 80293BB0 80 7F 00 00 */ lwz r3, 0(r31) -/* 80293BB4 38 04 FF FF */ addi r0, r4, -1 -/* 80293BB8 7C 03 00 2E */ lwzx r0, r3, r0 -/* 80293BBC 54 03 02 3E */ clrlwi r3, r0, 8 -/* 80293BC0 80 1F 00 04 */ lwz r0, 4(r31) -/* 80293BC4 90 1F 00 44 */ stw r0, 0x44(r31) -/* 80293BC8 80 1F 00 00 */ lwz r0, 0(r31) -/* 80293BCC 7C 00 1A 14 */ add r0, r0, r3 -/* 80293BD0 90 1F 00 04 */ stw r0, 4(r31) -lbl_80293BD4: -/* 80293BD4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293BD8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293BDC 7C 08 03 A6 */ mtlr r0 -/* 80293BE0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293BE4 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/clrIntrMask__10JASSeqCtrlFUl.s b/asm/JSystem/JAudio2/JASSeqCtrl/clrIntrMask__10JASSeqCtrlFUl.s deleted file mode 100644 index 38c89c7990a..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/clrIntrMask__10JASSeqCtrlFUl.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80293AF0: -/* 80293AF0 A0 03 00 4E */ lhz r0, 0x4e(r3) -/* 80293AF4 7C 00 20 78 */ andc r0, r0, r4 -/* 80293AF8 B0 03 00 4E */ sth r0, 0x4e(r3) -/* 80293AFC 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/findIntr__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/findIntr__10JASSeqCtrlFv.s deleted file mode 100644 index 69f4a104830..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/findIntr__10JASSeqCtrlFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80293B28: -/* 80293B28 A0 83 00 4E */ lhz r4, 0x4e(r3) -/* 80293B2C A0 03 00 4C */ lhz r0, 0x4c(r3) -/* 80293B30 7C 84 00 38 */ and r4, r4, r0 -/* 80293B34 38 A0 00 00 */ li r5, 0 -/* 80293B38 48 00 00 30 */ b lbl_80293B68 -lbl_80293B3C: -/* 80293B3C 54 80 07 FF */ clrlwi. r0, r4, 0x1f -/* 80293B40 41 82 00 20 */ beq lbl_80293B60 -/* 80293B44 A0 83 00 4C */ lhz r4, 0x4c(r3) -/* 80293B48 38 00 00 01 */ li r0, 1 -/* 80293B4C 7C 00 28 30 */ slw r0, r0, r5 -/* 80293B50 7C 80 00 78 */ andc r0, r4, r0 -/* 80293B54 B0 03 00 4C */ sth r0, 0x4c(r3) -/* 80293B58 7C A3 2B 78 */ mr r3, r5 -/* 80293B5C 4E 80 00 20 */ blr -lbl_80293B60: -/* 80293B60 54 84 F8 7E */ srwi r4, r4, 1 -/* 80293B64 38 A5 00 01 */ addi r5, r5, 1 -lbl_80293B68: -/* 80293B68 28 04 00 00 */ cmplwi r4, 0 -/* 80293B6C 40 82 FF D0 */ bne lbl_80293B3C -/* 80293B70 38 60 FF FF */ li r3, -1 -/* 80293B74 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/init__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/init__10JASSeqCtrlFv.s deleted file mode 100644 index 47f5bdc912e..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/init__10JASSeqCtrlFv.s +++ /dev/null @@ -1,24 +0,0 @@ -lbl_80293924: -/* 80293924 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293928 7C 08 02 A6 */ mflr r0 -/* 8029392C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80293930 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80293934 7C 7F 1B 78 */ mr r31, r3 -/* 80293938 48 00 27 D1 */ bl init__12JASSeqReaderFv -/* 8029393C 38 0D 8C B8 */ la r0, sDefaultParser__10JASSeqCtrl(r13) /* 80451238-_SDA_BASE_ */ -/* 80293940 90 1F 00 3C */ stw r0, 0x3c(r31) -/* 80293944 38 00 00 00 */ li r0, 0 -/* 80293948 90 1F 00 40 */ stw r0, 0x40(r31) -/* 8029394C 90 1F 00 44 */ stw r0, 0x44(r31) -/* 80293950 90 1F 00 48 */ stw r0, 0x48(r31) -/* 80293954 B0 1F 00 4C */ sth r0, 0x4c(r31) -/* 80293958 B0 1F 00 4E */ sth r0, 0x4e(r31) -/* 8029395C 98 1F 00 50 */ stb r0, 0x50(r31) -/* 80293960 90 1F 00 54 */ stw r0, 0x54(r31) -/* 80293964 90 1F 00 58 */ stw r0, 0x58(r31) -/* 80293968 98 1F 00 51 */ stb r0, 0x51(r31) -/* 8029396C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293970 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293974 7C 08 03 A6 */ mtlr r0 -/* 80293978 38 21 00 10 */ addi r1, r1, 0x10 -/* 8029397C 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType.s b/asm/JSystem/JAudio2/JASSeqCtrl/interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType.s deleted file mode 100644 index 5d37ba1c01f..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_80293ABC: -/* 80293ABC A0 A3 00 4E */ lhz r5, 0x4e(r3) -/* 80293AC0 38 00 00 01 */ li r0, 1 -/* 80293AC4 7C 04 20 30 */ slw r4, r0, r4 -/* 80293AC8 7C A0 20 39 */ and. r0, r5, r4 -/* 80293ACC 4D 82 00 20 */ beqlr -/* 80293AD0 A0 03 00 4C */ lhz r0, 0x4c(r3) -/* 80293AD4 7C 00 23 78 */ or r0, r0, r4 -/* 80293AD8 B0 03 00 4C */ sth r0, 0x4c(r3) -/* 80293ADC 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/retIntr__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/retIntr__10JASSeqCtrlFv.s deleted file mode 100644 index a9aa74cc58e..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/retIntr__10JASSeqCtrlFv.s +++ /dev/null @@ -1,12 +0,0 @@ -lbl_80293B00: -/* 80293B00 80 03 00 44 */ lwz r0, 0x44(r3) -/* 80293B04 28 00 00 00 */ cmplwi r0, 0 -/* 80293B08 40 82 00 0C */ bne lbl_80293B14 -/* 80293B0C 38 60 00 00 */ li r3, 0 -/* 80293B10 4E 80 00 20 */ blr -lbl_80293B14: -/* 80293B14 90 03 00 04 */ stw r0, 4(r3) -/* 80293B18 38 00 00 00 */ li r0, 0 -/* 80293B1C 90 03 00 44 */ stw r0, 0x44(r3) -/* 80293B20 38 60 00 01 */ li r3, 1 -/* 80293B24 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/setIntrMask__10JASSeqCtrlFUl.s b/asm/JSystem/JAudio2/JASSeqCtrl/setIntrMask__10JASSeqCtrlFUl.s deleted file mode 100644 index 7983738ca39..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/setIntrMask__10JASSeqCtrlFUl.s +++ /dev/null @@ -1,5 +0,0 @@ -lbl_80293AE0: -/* 80293AE0 A0 03 00 4E */ lhz r0, 0x4e(r3) -/* 80293AE4 7C 00 23 78 */ or r0, r0, r4 -/* 80293AE8 B0 03 00 4E */ sth r0, 0x4e(r3) -/* 80293AEC 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/start__10JASSeqCtrlFPvUl.s b/asm/JSystem/JAudio2/JASSeqCtrl/start__10JASSeqCtrlFPvUl.s deleted file mode 100644 index 6b3351e2db3..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/start__10JASSeqCtrlFPvUl.s +++ /dev/null @@ -1,18 +0,0 @@ -lbl_80293980: -/* 80293980 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293984 7C 08 02 A6 */ mflr r0 -/* 80293988 90 01 00 14 */ stw r0, 0x14(r1) -/* 8029398C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80293990 93 C1 00 08 */ stw r30, 8(r1) -/* 80293994 7C 7E 1B 78 */ mr r30, r3 -/* 80293998 7C BF 2B 78 */ mr r31, r5 -/* 8029399C 48 00 27 AD */ bl init__12JASSeqReaderFPv -/* 802939A0 80 1E 00 00 */ lwz r0, 0(r30) -/* 802939A4 7C 00 FA 14 */ add r0, r0, r31 -/* 802939A8 90 1E 00 04 */ stw r0, 4(r30) -/* 802939AC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802939B0 83 C1 00 08 */ lwz r30, 8(r1) -/* 802939B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802939B8 7C 08 03 A6 */ mtlr r0 -/* 802939BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802939C0 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/tickProc__10JASSeqCtrlFP8JASTrack.s b/asm/JSystem/JAudio2/JASSeqCtrl/tickProc__10JASSeqCtrlFP8JASTrack.s deleted file mode 100644 index 712a376f88d..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/tickProc__10JASSeqCtrlFP8JASTrack.s +++ /dev/null @@ -1,72 +0,0 @@ -lbl_802939C4: -/* 802939C4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802939C8 7C 08 02 A6 */ mflr r0 -/* 802939CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 802939D0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802939D4 93 C1 00 08 */ stw r30, 8(r1) -/* 802939D8 7C 7E 1B 78 */ mr r30, r3 -/* 802939DC 7C 9F 23 78 */ mr r31, r4 -/* 802939E0 80 03 00 00 */ lwz r0, 0(r3) -/* 802939E4 28 00 00 00 */ cmplwi r0, 0 -/* 802939E8 40 82 00 0C */ bne lbl_802939F4 -/* 802939EC 38 60 00 00 */ li r3, 0 -/* 802939F0 48 00 00 B4 */ b lbl_80293AA4 -lbl_802939F4: -/* 802939F4 38 80 00 06 */ li r4, 6 -/* 802939F8 48 00 00 C5 */ bl interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType -/* 802939FC 7F C3 F3 78 */ mr r3, r30 -/* 80293A00 48 00 01 E9 */ bl timerProcess__10JASSeqCtrlFv -/* 80293A04 88 1E 00 51 */ lbz r0, 0x51(r30) -/* 80293A08 28 00 00 00 */ cmplwi r0, 0 -/* 80293A0C 41 82 00 28 */ beq lbl_80293A34 -/* 80293A10 7F E3 FB 78 */ mr r3, r31 -/* 80293A14 38 80 00 00 */ li r4, 0 -/* 80293A18 4B FF E8 09 */ bl checkNoteStop__8JASTrackCFUl -/* 80293A1C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80293A20 40 82 00 0C */ bne lbl_80293A2C -/* 80293A24 38 60 00 00 */ li r3, 0 -/* 80293A28 48 00 00 7C */ b lbl_80293AA4 -lbl_80293A2C: -/* 80293A2C 38 00 00 00 */ li r0, 0 -/* 80293A30 98 1E 00 51 */ stb r0, 0x51(r30) -lbl_80293A34: -/* 80293A34 80 7E 00 40 */ lwz r3, 0x40(r30) -/* 80293A38 2C 03 00 00 */ cmpwi r3, 0 -/* 80293A3C 40 81 00 0C */ ble lbl_80293A48 -/* 80293A40 38 03 FF FF */ addi r0, r3, -1 -/* 80293A44 90 1E 00 40 */ stw r0, 0x40(r30) -lbl_80293A48: -/* 80293A48 7F C3 F3 78 */ mr r3, r30 -/* 80293A4C 48 00 01 2D */ bl checkIntr__10JASSeqCtrlFv -/* 80293A50 48 00 00 2C */ b lbl_80293A7C -lbl_80293A54: -/* 80293A54 80 7E 00 3C */ lwz r3, 0x3c(r30) -/* 80293A58 7F E4 FB 78 */ mr r4, r31 -/* 80293A5C 81 83 00 00 */ lwz r12, 0(r3) -/* 80293A60 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 80293A64 7D 89 03 A6 */ mtctr r12 -/* 80293A68 4E 80 04 21 */ bctrl -/* 80293A6C 2C 03 00 00 */ cmpwi r3, 0 -/* 80293A70 40 80 00 0C */ bge lbl_80293A7C -/* 80293A74 38 60 FF FF */ li r3, -1 -/* 80293A78 48 00 00 2C */ b lbl_80293AA4 -lbl_80293A7C: -/* 80293A7C 80 1E 00 40 */ lwz r0, 0x40(r30) -/* 80293A80 2C 00 00 00 */ cmpwi r0, 0 -/* 80293A84 41 82 00 10 */ beq lbl_80293A94 -/* 80293A88 80 1E 00 44 */ lwz r0, 0x44(r30) -/* 80293A8C 28 00 00 00 */ cmplwi r0, 0 -/* 80293A90 41 82 00 10 */ beq lbl_80293AA0 -lbl_80293A94: -/* 80293A94 88 1E 00 51 */ lbz r0, 0x51(r30) -/* 80293A98 28 00 00 00 */ cmplwi r0, 0 -/* 80293A9C 41 82 FF B8 */ beq lbl_80293A54 -lbl_80293AA0: -/* 80293AA0 38 60 00 00 */ li r3, 0 -lbl_80293AA4: -/* 80293AA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293AA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 80293AAC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293AB0 7C 08 03 A6 */ mtlr r0 -/* 80293AB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293AB8 4E 80 00 20 */ blr diff --git a/asm/JSystem/JAudio2/JASSeqCtrl/timerProcess__10JASSeqCtrlFv.s b/asm/JSystem/JAudio2/JASSeqCtrl/timerProcess__10JASSeqCtrlFv.s deleted file mode 100644 index 3e9e5fc774c..00000000000 --- a/asm/JSystem/JAudio2/JASSeqCtrl/timerProcess__10JASSeqCtrlFv.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_80293BE8: -/* 80293BE8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80293BEC 7C 08 02 A6 */ mflr r0 -/* 80293BF0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80293BF4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80293BF8 7C 7F 1B 78 */ mr r31, r3 -/* 80293BFC 80 83 00 54 */ lwz r4, 0x54(r3) -/* 80293C00 28 04 00 00 */ cmplwi r4, 0 -/* 80293C04 41 82 00 54 */ beq lbl_80293C58 -/* 80293C08 38 04 FF FF */ addi r0, r4, -1 -/* 80293C0C 90 1F 00 54 */ stw r0, 0x54(r31) -/* 80293C10 80 1F 00 54 */ lwz r0, 0x54(r31) -/* 80293C14 28 00 00 00 */ cmplwi r0, 0 -/* 80293C18 40 82 00 40 */ bne lbl_80293C58 -/* 80293C1C 38 80 00 05 */ li r4, 5 -/* 80293C20 4B FF FE 9D */ bl interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType -/* 80293C24 88 7F 00 50 */ lbz r3, 0x50(r31) -/* 80293C28 28 03 00 00 */ cmplwi r3, 0 -/* 80293C2C 41 82 00 24 */ beq lbl_80293C50 -/* 80293C30 38 03 FF FF */ addi r0, r3, -1 -/* 80293C34 98 1F 00 50 */ stb r0, 0x50(r31) -/* 80293C38 88 1F 00 50 */ lbz r0, 0x50(r31) -/* 80293C3C 28 00 00 00 */ cmplwi r0, 0 -/* 80293C40 41 82 00 18 */ beq lbl_80293C58 -/* 80293C44 80 1F 00 58 */ lwz r0, 0x58(r31) -/* 80293C48 90 1F 00 54 */ stw r0, 0x54(r31) -/* 80293C4C 48 00 00 0C */ b lbl_80293C58 -lbl_80293C50: -/* 80293C50 80 1F 00 58 */ lwz r0, 0x58(r31) -/* 80293C54 90 1F 00 54 */ stw r0, 0x54(r31) -lbl_80293C58: -/* 80293C58 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80293C5C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80293C60 7C 08 03 A6 */ mtlr r0 -/* 80293C64 38 21 00 10 */ addi r1, r1, 0x10 -/* 80293C68 4E 80 00 20 */ blr diff --git a/asm/d/d_bright_check/_move__14dBrightCheck_cFv.s b/asm/d/d_bright_check/_move__14dBrightCheck_cFv.s deleted file mode 100644 index dd9f95d1914..00000000000 --- a/asm/d/d_bright_check/_move__14dBrightCheck_cFv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_801934D0: -/* 801934D0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801934D4 7C 08 02 A6 */ mflr r0 -/* 801934D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 801934DC 88 03 00 18 */ lbz r0, 0x18(r3) -/* 801934E0 1C A0 00 0C */ mulli r5, r0, 0xc -/* 801934E4 3C 80 80 3C */ lis r4, brightChackProc@ha /* 0x803BB5D4@ha */ -/* 801934E8 38 04 B5 D4 */ addi r0, r4, brightChackProc@l /* 0x803BB5D4@l */ -/* 801934EC 7D 80 2A 14 */ add r12, r0, r5 -/* 801934F0 48 1C EB 95 */ bl __ptmf_scall -/* 801934F4 60 00 00 00 */ nop -/* 801934F8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801934FC 7C 08 03 A6 */ mtlr r0 -/* 80193500 38 21 00 10 */ addi r1, r1, 0x10 -/* 80193504 4E 80 00 20 */ blr diff --git a/asm/d/d_bright_check/modeMove__14dBrightCheck_cFv.s b/asm/d/d_bright_check/modeMove__14dBrightCheck_cFv.s deleted file mode 100644 index c837a95bb31..00000000000 --- a/asm/d/d_bright_check/modeMove__14dBrightCheck_cFv.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_8019350C: -/* 8019350C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80193510 7C 08 02 A6 */ mflr r0 -/* 80193514 90 01 00 24 */ stw r0, 0x24(r1) -/* 80193518 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8019351C 7C 7F 1B 78 */ mr r31, r3 -/* 80193520 3C 60 80 3E */ lis r3, m_cpadInfo__8mDoCPd_c@ha /* 0x803DD2E8@ha */ -/* 80193524 38 63 D2 E8 */ addi r3, r3, m_cpadInfo__8mDoCPd_c@l /* 0x803DD2E8@l */ -/* 80193528 80 63 00 34 */ lwz r3, 0x34(r3) -/* 8019352C 54 60 05 EF */ rlwinm. r0, r3, 0, 0x17, 0x17 -/* 80193530 40 82 00 0C */ bne lbl_8019353C -/* 80193534 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 -/* 80193538 41 82 00 48 */ beq lbl_80193580 -lbl_8019353C: -/* 8019353C 38 00 00 01 */ li r0, 1 -/* 80193540 90 01 00 08 */ stw r0, 8(r1) -/* 80193544 80 6D 8D E8 */ lwz r3, mAudioMgrPtr__10Z2AudioMgr(r13) -/* 80193548 38 81 00 08 */ addi r4, r1, 8 -/* 8019354C 38 A0 00 00 */ li r5, 0 -/* 80193550 38 C0 00 00 */ li r6, 0 -/* 80193554 38 E0 00 00 */ li r7, 0 -/* 80193558 C0 22 A0 04 */ lfs f1, lit_3821(r2) -/* 8019355C FC 40 08 90 */ fmr f2, f1 -/* 80193560 C0 62 A0 08 */ lfs f3, lit_3822(r2) -/* 80193564 FC 80 18 90 */ fmr f4, f3 -/* 80193568 39 00 00 00 */ li r8, 0 -/* 8019356C 48 11 84 19 */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc -/* 80193570 38 00 00 01 */ li r0, 1 -/* 80193574 98 1F 00 19 */ stb r0, 0x19(r31) -/* 80193578 38 00 00 00 */ li r0, 0 -/* 8019357C 98 1F 00 18 */ stb r0, 0x18(r31) -lbl_80193580: -/* 80193580 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 80193584 80 01 00 24 */ lwz r0, 0x24(r1) -/* 80193588 7C 08 03 A6 */ mtlr r0 -/* 8019358C 38 21 00 20 */ addi r1, r1, 0x20 -/* 80193590 4E 80 00 20 */ blr diff --git a/asm/d/event/d_event_manager/cutEnd__16dEvent_manager_cFi.s b/asm/d/event/d_event_manager/cutEnd__16dEvent_manager_cFi.s deleted file mode 100644 index f690cc2b7bd..00000000000 --- a/asm/d/event/d_event_manager/cutEnd__16dEvent_manager_cFi.s +++ /dev/null @@ -1,32 +0,0 @@ -lbl_8004817C: -/* 8004817C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80048180 7C 08 02 A6 */ mflr r0 -/* 80048184 90 01 00 14 */ stw r0, 0x14(r1) -/* 80048188 3C A0 80 40 */ lis r5, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8004818C 38 A5 61 C0 */ addi r5, r5, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 80048190 88 05 4F AC */ lbz r0, 0x4fac(r5) -/* 80048194 28 00 00 00 */ cmplwi r0, 0 -/* 80048198 41 82 00 4C */ beq lbl_800481E4 -/* 8004819C 2C 04 FF FF */ cmpwi r4, -1 -/* 800481A0 41 82 00 44 */ beq lbl_800481E4 -/* 800481A4 A8 03 01 AA */ lha r0, 0x1aa(r3) -/* 800481A8 2C 00 FF FF */ cmpwi r0, -1 -/* 800481AC 41 82 00 38 */ beq lbl_800481E4 -/* 800481B0 80 03 01 B4 */ lwz r0, 0x1b4(r3) -/* 800481B4 1C 00 00 24 */ mulli r0, r0, 0x24 -/* 800481B8 7C C3 02 14 */ add r6, r3, r0 -/* 800481BC 80 A6 00 08 */ lwz r5, 8(r6) -/* 800481C0 1C 84 00 50 */ mulli r4, r4, 0x50 -/* 800481C4 38 04 00 38 */ addi r0, r4, 0x38 -/* 800481C8 7C 05 00 2E */ lwzx r0, r5, r0 -/* 800481CC 80 86 00 0C */ lwz r4, 0xc(r6) -/* 800481D0 1C 00 00 50 */ mulli r0, r0, 0x50 -/* 800481D4 7C 84 02 14 */ add r4, r4, r0 -/* 800481D8 38 63 01 BC */ addi r3, r3, 0x1bc -/* 800481DC 80 84 00 34 */ lwz r4, 0x34(r4) -/* 800481E0 4B FF BB E9 */ bl flagSet__11dEvDtFlag_cFi -lbl_800481E4: -/* 800481E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800481E8 7C 08 03 A6 */ mtlr r0 -/* 800481EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800481F0 4E 80 00 20 */ blr diff --git a/asm/d/map/d_map_path_dmap/getFirstRoomPointer__16renderingDAmap_cFv.s b/asm/d/map/d_map_path_dmap/getFirstRoomPointer__16renderingDAmap_cFv.s deleted file mode 100644 index 51d0aba683b..00000000000 --- a/asm/d/map/d_map_path_dmap/getFirstRoomPointer__16renderingDAmap_cFv.s +++ /dev/null @@ -1,48 +0,0 @@ -lbl_80040134: -/* 80040134 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80040138 7C 08 02 A6 */ mflr r0 -/* 8004013C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80040140 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80040144 93 C1 00 08 */ stw r30, 8(r1) -/* 80040148 7C 7E 1B 78 */ mr r30, r3 -/* 8004014C 3B E0 00 00 */ li r31, 0 -/* 80040150 4B FF FE A5 */ bl getFirstDrawRoomNo__16renderingDAmap_cFv -/* 80040154 90 7E 00 24 */ stw r3, 0x24(r30) -/* 80040158 80 1E 00 24 */ lwz r0, 0x24(r30) -/* 8004015C 2C 00 00 00 */ cmpwi r0, 0 -/* 80040160 41 80 00 5C */ blt lbl_800401BC -/* 80040164 7F C3 F3 78 */ mr r3, r30 -/* 80040168 81 9E 00 00 */ lwz r12, 0(r30) -/* 8004016C 81 8C 00 68 */ lwz r12, 0x68(r12) -/* 80040170 7D 89 03 A6 */ mtctr r12 -/* 80040174 4E 80 04 21 */ bctrl -/* 80040178 90 7E 00 28 */ stw r3, 0x28(r30) -/* 8004017C 80 8D 88 E4 */ lwz r4, mLayerList__8dMpath_c(r13) -/* 80040180 80 1E 00 28 */ lwz r0, 0x28(r30) -/* 80040184 54 03 40 2E */ slwi r3, r0, 8 -/* 80040188 80 1E 00 24 */ lwz r0, 0x24(r30) -/* 8004018C 54 00 10 3A */ slwi r0, r0, 2 -/* 80040190 7C 03 02 14 */ add r0, r3, r0 -/* 80040194 7C 04 00 2E */ lwzx r0, r4, r0 -/* 80040198 7C 1F 03 78 */ mr r31, r0 -/* 8004019C 28 00 00 00 */ cmplwi r0, 0 -/* 800401A0 40 82 00 1C */ bne lbl_800401BC -/* 800401A4 7F C3 F3 78 */ mr r3, r30 -/* 800401A8 81 9E 00 00 */ lwz r12, 0(r30) -/* 800401AC 81 8C 00 2C */ lwz r12, 0x2c(r12) -/* 800401B0 7D 89 03 A6 */ mtctr r12 -/* 800401B4 4E 80 04 21 */ bctrl -/* 800401B8 7C 7F 1B 78 */ mr r31, r3 -lbl_800401BC: -/* 800401BC 28 1F 00 00 */ cmplwi r31, 0 -/* 800401C0 41 82 00 0C */ beq lbl_800401CC -/* 800401C4 7F C3 F3 78 */ mr r3, r30 -/* 800401C8 4B FF FC A5 */ bl setSingleRoomSetting__16renderingDAmap_cFv -lbl_800401CC: -/* 800401CC 7F E3 FB 78 */ mr r3, r31 -/* 800401D0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800401D4 83 C1 00 08 */ lwz r30, 8(r1) -/* 800401D8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800401DC 7C 08 03 A6 */ mtlr r0 -/* 800401E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 800401E4 4E 80 00 20 */ blr diff --git a/asm/d/map/d_map_path_dmap/getMapRestartAngleY__10dMapInfo_nFv.s b/asm/d/map/d_map_path_dmap/getMapRestartAngleY__10dMapInfo_nFv.s deleted file mode 100644 index ecf075c5395..00000000000 --- a/asm/d/map/d_map_path_dmap/getMapRestartAngleY__10dMapInfo_nFv.s +++ /dev/null @@ -1,45 +0,0 @@ -lbl_8003F0F8: -/* 8003F0F8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8003F0FC 7C 08 02 A6 */ mflr r0 -/* 8003F100 90 01 00 14 */ stw r0, 0x14(r1) -/* 8003F104 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8003F108 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8003F10C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8003F110 AB E3 0D BA */ lha r31, 0xdba(r3) -/* 8003F114 4B FF FE 5D */ bl getConstRestartIconPointer__10dMapInfo_nFv -/* 8003F118 28 03 00 00 */ cmplwi r3, 0 -/* 8003F11C 41 82 00 34 */ beq lbl_8003F150 -/* 8003F120 88 03 00 13 */ lbz r0, 0x13(r3) -/* 8003F124 7C 00 07 74 */ extsb r0, r0 -/* 8003F128 7C 1F 03 78 */ mr r31, r0 -/* 8003F12C 7C 60 00 D0 */ neg r3, r0 -/* 8003F130 7C 60 00 78 */ andc r0, r3, r0 -/* 8003F134 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f -/* 8003F138 41 82 00 08 */ beq lbl_8003F140 -/* 8003F13C 7C 7F 1B 78 */ mr r31, r3 -lbl_8003F140: -/* 8003F140 57 FF 40 2E */ slwi r31, r31, 8 -/* 8003F144 28 00 00 00 */ cmplwi r0, 0 -/* 8003F148 41 82 00 08 */ beq lbl_8003F150 -/* 8003F14C 7F FF 00 D0 */ neg r31, r31 -lbl_8003F150: -/* 8003F150 3C 60 80 3F */ lis r3, mStatus__20dStage_roomControl_c@ha /* 0x803F6094@ha */ -/* 8003F154 38 83 60 94 */ addi r4, r3, mStatus__20dStage_roomControl_c@l /* 0x803F6094@l */ -/* 8003F158 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */ -/* 8003F15C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */ -/* 8003F160 88 03 0D B4 */ lbz r0, 0xdb4(r3) -/* 8003F164 7C 00 07 74 */ extsb r0, r0 -/* 8003F168 1C 00 04 04 */ mulli r0, r0, 0x404 -/* 8003F16C 7C 64 02 14 */ add r3, r4, r0 -/* 8003F170 80 63 00 20 */ lwz r3, 0x20(r3) -/* 8003F174 28 03 00 00 */ cmplwi r3, 0 -/* 8003F178 41 82 00 0C */ beq lbl_8003F184 -/* 8003F17C A8 03 00 1C */ lha r0, 0x1c(r3) -/* 8003F180 7F FF 02 14 */ add r31, r31, r0 -lbl_8003F184: -/* 8003F184 7F E3 07 34 */ extsh r3, r31 -/* 8003F188 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8003F18C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8003F190 7C 08 03 A6 */ mtlr r0 -/* 8003F194 38 21 00 10 */ addi r1, r1, 0x10 -/* 8003F198 4E 80 00 20 */ blr diff --git a/asm/d/map/d_map_path_dmap/getNextRoomPointer__16renderingDAmap_cFv.s b/asm/d/map/d_map_path_dmap/getNextRoomPointer__16renderingDAmap_cFv.s deleted file mode 100644 index 556b9c6ab5a..00000000000 --- a/asm/d/map/d_map_path_dmap/getNextRoomPointer__16renderingDAmap_cFv.s +++ /dev/null @@ -1,61 +0,0 @@ -lbl_800401E8: -/* 800401E8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 800401EC 7C 08 02 A6 */ mflr r0 -/* 800401F0 90 01 00 24 */ stw r0, 0x24(r1) -/* 800401F4 39 61 00 20 */ addi r11, r1, 0x20 -/* 800401F8 48 32 1F E5 */ bl _savegpr_29 -/* 800401FC 7C 7D 1B 78 */ mr r29, r3 -/* 80040200 3B E0 00 00 */ li r31, 0 -/* 80040204 3B C0 00 00 */ li r30, 0 -lbl_80040208: -/* 80040208 7F A3 EB 78 */ mr r3, r29 -/* 8004020C 80 9D 00 24 */ lwz r4, 0x24(r29) -/* 80040210 4B FF FE 85 */ bl getNextDrawRoomNo__16renderingDAmap_cFi -/* 80040214 90 7D 00 24 */ stw r3, 0x24(r29) -/* 80040218 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 8004021C 2C 00 00 00 */ cmpwi r0, 0 -/* 80040220 40 80 00 40 */ bge lbl_80040260 -/* 80040224 7F A3 EB 78 */ mr r3, r29 -/* 80040228 80 9D 00 28 */ lwz r4, 0x28(r29) -/* 8004022C 81 9D 00 00 */ lwz r12, 0(r29) -/* 80040230 81 8C 00 6C */ lwz r12, 0x6c(r12) -/* 80040234 7D 89 03 A6 */ mtctr r12 -/* 80040238 4E 80 04 21 */ bctrl -/* 8004023C 90 7D 00 28 */ stw r3, 0x28(r29) -/* 80040240 80 1D 00 28 */ lwz r0, 0x28(r29) -/* 80040244 2C 00 00 00 */ cmpwi r0, 0 -/* 80040248 40 80 00 0C */ bge lbl_80040254 -/* 8004024C 3B C0 00 01 */ li r30, 1 -/* 80040250 48 00 00 10 */ b lbl_80040260 -lbl_80040254: -/* 80040254 7F A3 EB 78 */ mr r3, r29 -/* 80040258 4B FF FD 9D */ bl getFirstDrawRoomNo__16renderingDAmap_cFv -/* 8004025C 90 7D 00 24 */ stw r3, 0x24(r29) -lbl_80040260: -/* 80040260 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80040264 40 82 00 20 */ bne lbl_80040284 -/* 80040268 80 8D 88 E4 */ lwz r4, mLayerList__8dMpath_c(r13) -/* 8004026C 80 1D 00 28 */ lwz r0, 0x28(r29) -/* 80040270 54 03 40 2E */ slwi r3, r0, 8 -/* 80040274 80 1D 00 24 */ lwz r0, 0x24(r29) -/* 80040278 54 00 10 3A */ slwi r0, r0, 2 -/* 8004027C 7C 03 02 14 */ add r0, r3, r0 -/* 80040280 7F E4 00 2E */ lwzx r31, r4, r0 -lbl_80040284: -/* 80040284 28 1F 00 00 */ cmplwi r31, 0 -/* 80040288 40 82 00 0C */ bne lbl_80040294 -/* 8004028C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 -/* 80040290 41 82 FF 78 */ beq lbl_80040208 -lbl_80040294: -/* 80040294 28 1F 00 00 */ cmplwi r31, 0 -/* 80040298 41 82 00 0C */ beq lbl_800402A4 -/* 8004029C 7F A3 EB 78 */ mr r3, r29 -/* 800402A0 4B FF FB CD */ bl setSingleRoomSetting__16renderingDAmap_cFv -lbl_800402A4: -/* 800402A4 7F E3 FB 78 */ mr r3, r31 -/* 800402A8 39 61 00 20 */ addi r11, r1, 0x20 -/* 800402AC 48 32 1F 7D */ bl _restgpr_29 -/* 800402B0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 800402B4 7C 08 03 A6 */ mtlr r0 -/* 800402B8 38 21 00 20 */ addi r1, r1, 0x20 -/* 800402BC 4E 80 00 20 */ blr diff --git a/asm/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash/ctrlJoint__10daNpcAsh_cFP8J3DJointP8J3DModel.s b/asm/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash/ctrlJoint__10daNpcAsh_cFP8J3DJointP8J3DModel.s deleted file mode 100644 index 23093ffad16..00000000000 --- a/asm/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash/ctrlJoint__10daNpcAsh_cFP8J3DJointP8J3DModel.s +++ /dev/null @@ -1,145 +0,0 @@ -lbl_80959238: -/* 80959238 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8095923C 7C 08 02 A6 */ mflr r0 -/* 80959240 90 01 00 34 */ stw r0, 0x34(r1) -/* 80959244 39 61 00 30 */ addi r11, r1, 0x30 -/* 80959248 4B A0 8F 91 */ bl _savegpr_28 -/* 8095924C 7C 7D 1B 78 */ mr r29, r3 -/* 80959250 7C BE 2B 78 */ mr r30, r5 -/* 80959254 A0 A4 00 14 */ lhz r5, 0x14(r4) -/* 80959258 7C BF 2B 78 */ mr r31, r5 -/* 8095925C 3C 60 80 96 */ lis r3, lit_4385@ha /* 0x8095D6C4@ha */ -/* 80959260 38 83 D6 C4 */ addi r4, r3, lit_4385@l /* 0x8095D6C4@l */ -/* 80959264 80 64 00 00 */ lwz r3, 0(r4) -/* 80959268 80 04 00 04 */ lwz r0, 4(r4) -/* 8095926C 90 61 00 08 */ stw r3, 8(r1) -/* 80959270 90 01 00 0C */ stw r0, 0xc(r1) -/* 80959274 80 04 00 08 */ lwz r0, 8(r4) -/* 80959278 90 01 00 10 */ stw r0, 0x10(r1) -/* 8095927C 2C 05 00 00 */ cmpwi r5, 0 -/* 80959280 40 82 00 B0 */ bne lbl_80959330 -/* 80959284 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 80959288 80 63 00 04 */ lwz r3, 4(r3) -/* 8095928C 80 63 00 84 */ lwz r3, 0x84(r3) -/* 80959290 80 63 00 0C */ lwz r3, 0xc(r3) -/* 80959294 38 63 00 30 */ addi r3, r3, 0x30 -/* 80959298 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8095929C 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 809592A0 4B 9E D2 11 */ bl PSMTXCopy -/* 809592A4 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 809592A8 3B 83 D4 70 */ addi r28, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 809592AC C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 809592B0 D0 1D 08 54 */ stfs f0, 0x854(r29) -/* 809592B4 C0 1C 00 1C */ lfs f0, 0x1c(r28) -/* 809592B8 D0 1D 08 58 */ stfs f0, 0x858(r29) -/* 809592BC C0 1C 00 2C */ lfs f0, 0x2c(r28) -/* 809592C0 D0 1D 08 5C */ stfs f0, 0x85c(r29) -/* 809592C4 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 809592C8 80 63 00 04 */ lwz r3, 4(r3) -/* 809592CC 80 63 00 84 */ lwz r3, 0x84(r3) -/* 809592D0 80 63 00 0C */ lwz r3, 0xc(r3) -/* 809592D4 38 63 00 90 */ addi r3, r3, 0x90 -/* 809592D8 7F 84 E3 78 */ mr r4, r28 -/* 809592DC 4B 9E D1 D5 */ bl PSMTXCopy -/* 809592E0 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 809592E4 D0 1D 08 60 */ stfs f0, 0x860(r29) -/* 809592E8 C0 1C 00 1C */ lfs f0, 0x1c(r28) -/* 809592EC D0 1D 08 64 */ stfs f0, 0x864(r29) -/* 809592F0 C0 1C 00 2C */ lfs f0, 0x2c(r28) -/* 809592F4 D0 1D 08 68 */ stfs f0, 0x868(r29) -/* 809592F8 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 809592FC 80 63 00 04 */ lwz r3, 4(r3) -/* 80959300 80 63 00 84 */ lwz r3, 0x84(r3) -/* 80959304 80 63 00 0C */ lwz r3, 0xc(r3) -/* 80959308 38 63 00 C0 */ addi r3, r3, 0xc0 -/* 8095930C 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80959310 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80959314 4B 9E D1 9D */ bl PSMTXCopy -/* 80959318 C0 1C 00 0C */ lfs f0, 0xc(r28) -/* 8095931C D0 1D 08 6C */ stfs f0, 0x86c(r29) -/* 80959320 C0 1C 00 1C */ lfs f0, 0x1c(r28) -/* 80959324 D0 1D 08 70 */ stfs f0, 0x870(r29) -/* 80959328 C0 1C 00 2C */ lfs f0, 0x2c(r28) -/* 8095932C D0 1D 08 74 */ stfs f0, 0x874(r29) -lbl_80959330: -/* 80959330 80 7E 00 84 */ lwz r3, 0x84(r30) -/* 80959334 80 03 00 0C */ lwz r0, 0xc(r3) -/* 80959338 1F 9F 00 30 */ mulli r28, r31, 0x30 -/* 8095933C 7C 60 E2 14 */ add r3, r0, r28 -/* 80959340 3C 80 80 3E */ lis r4, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 80959344 38 84 D4 70 */ addi r4, r4, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80959348 4B 9E D1 69 */ bl PSMTXCopy -/* 8095934C 2C 1F 00 02 */ cmpwi r31, 2 -/* 80959350 41 82 00 38 */ beq lbl_80959388 -/* 80959354 40 80 00 10 */ bge lbl_80959364 -/* 80959358 2C 1F 00 01 */ cmpwi r31, 1 -/* 8095935C 40 80 00 10 */ bge lbl_8095936C -/* 80959360 48 00 00 28 */ b lbl_80959388 -lbl_80959364: -/* 80959364 2C 1F 00 05 */ cmpwi r31, 5 -/* 80959368 40 80 00 20 */ bge lbl_80959388 -lbl_8095936C: -/* 8095936C 7F A3 EB 78 */ mr r3, r29 -/* 80959370 7F E4 FB 78 */ mr r4, r31 -/* 80959374 38 A1 00 08 */ addi r5, r1, 8 -/* 80959378 3C C0 80 96 */ lis r6, m__16daNpcAsh_Param_c@ha /* 0x8095D640@ha */ -/* 8095937C 38 C6 D6 40 */ addi r6, r6, m__16daNpcAsh_Param_c@l /* 0x8095D640@l */ -/* 80959380 C0 26 00 40 */ lfs f1, 0x40(r6) -/* 80959384 4B 7F 9F F9 */ bl setLookatMtx__8daNpcF_cFiPif -lbl_80959388: -/* 80959388 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 8095938C 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 80959390 80 9E 00 84 */ lwz r4, 0x84(r30) -/* 80959394 80 04 00 0C */ lwz r0, 0xc(r4) -/* 80959398 7C 80 E2 14 */ add r4, r0, r28 -/* 8095939C 4B 9E D1 15 */ bl PSMTXCopy -/* 809593A0 3C 60 80 3E */ lis r3, now__14mDoMtx_stack_c@ha /* 0x803DD470@ha */ -/* 809593A4 38 63 D4 70 */ addi r3, r3, now__14mDoMtx_stack_c@l /* 0x803DD470@l */ -/* 809593A8 3C 80 80 43 */ lis r4, mCurrentMtx__6J3DSys@ha /* 0x80434BE4@ha */ -/* 809593AC 38 84 4B E4 */ addi r4, r4, mCurrentMtx__6J3DSys@l /* 0x80434BE4@l */ -/* 809593B0 4B 9E D1 01 */ bl PSMTXCopy -/* 809593B4 2C 1F 00 04 */ cmpwi r31, 4 -/* 809593B8 41 82 00 0C */ beq lbl_809593C4 -/* 809593BC 2C 1F 00 0C */ cmpwi r31, 0xc -/* 809593C0 40 82 00 2C */ bne lbl_809593EC -lbl_809593C4: -/* 809593C4 80 1D 09 9C */ lwz r0, 0x99c(r29) -/* 809593C8 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17 -/* 809593CC 41 82 00 20 */ beq lbl_809593EC -/* 809593D0 83 9D 05 80 */ lwz r28, 0x580(r29) -/* 809593D4 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 809593D8 80 83 00 08 */ lwz r4, 8(r3) -/* 809593DC 38 7D 05 6C */ addi r3, r29, 0x56c -/* 809593E0 4B 6B 45 B1 */ bl changeBckOnly__13mDoExt_bckAnmFP15J3DAnmTransform -/* 809593E4 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 809593E8 93 83 00 08 */ stw r28, 8(r3) -lbl_809593EC: -/* 809593EC C0 1D 09 78 */ lfs f0, 0x978(r29) -/* 809593F0 FC 00 02 10 */ fabs f0, f0 -/* 809593F4 FC 20 00 18 */ frsp f1, f0 -/* 809593F8 3C 60 80 45 */ lis r3, G_CM3D_F_ABS_MIN@ha /* 0x80451180@ha */ -/* 809593FC C0 03 11 80 */ lfs f0, G_CM3D_F_ABS_MIN@l(r3) /* 0x80451180@l */ -/* 80959400 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80959404 7C 00 00 26 */ mfcr r0 -/* 80959408 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f -/* 8095940C 40 82 00 30 */ bne lbl_8095943C -/* 80959410 2C 1F 00 0C */ cmpwi r31, 0xc -/* 80959414 40 82 00 14 */ bne lbl_80959428 -/* 80959418 38 00 00 01 */ li r0, 1 -/* 8095941C 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 80959420 98 03 00 55 */ stb r0, 0x55(r3) -/* 80959424 48 00 00 18 */ b lbl_8095943C -lbl_80959428: -/* 80959428 2C 1F 00 04 */ cmpwi r31, 4 -/* 8095942C 40 82 00 10 */ bne lbl_8095943C -/* 80959430 38 00 00 00 */ li r0, 0 -/* 80959434 80 7D 05 68 */ lwz r3, 0x568(r29) -/* 80959438 98 03 00 55 */ stb r0, 0x55(r3) -lbl_8095943C: -/* 8095943C 38 60 00 01 */ li r3, 1 -/* 80959440 39 61 00 30 */ addi r11, r1, 0x30 -/* 80959444 4B A0 8D E1 */ bl _restgpr_28 -/* 80959448 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8095944C 7C 08 03 A6 */ mtlr r0 -/* 80959450 38 21 00 30 */ addi r1, r1, 0x30 -/* 80959454 4E 80 00 20 */ blr diff --git a/include/JSystem/JAudio2/JASAudioThread.h b/include/JSystem/JAudio2/JASAudioThread.h index 95a9a9fd026..9d89801cc50 100644 --- a/include/JSystem/JAudio2/JASAudioThread.h +++ b/include/JSystem/JAudio2/JASAudioThread.h @@ -2,17 +2,27 @@ #define JASAUDIOTHREAD_H #include "JSystem/JAudio2/JASGadget.h" +#include "JSystem/JKernel/JKRThread.h" -struct JASAudioThread : public JASGlobalInstance { +enum JASAudioMessage { + AUDIOMSG_DMA = 0, + AUDIOMSG_DSP = 1, + AUDIOMSG_STOP = 2, +}; + +struct JASAudioThread : public JKRThread, public JASGlobalInstance { /* 8029CCDC */ JASAudioThread(int, int, u32); - /* 8029CD4C */ void create(s32); + /* 8029CD4C */ static void create(s32); /* 8029CDC0 */ void stop(); - /* 8029CDEC */ void run(); - /* 8029CF68 */ void DMACallback(); - /* 8029CFBC */ void DSPCallback(void*); - /* 8029D028 */ ~JASAudioThread(); + /* 8029CDEC */ virtual void* run(); + /* 8029CF68 */ static void DMACallback(); + /* 8029CFBC */ static void DSPCallback(void*); + /* 8029D028 */ virtual ~JASAudioThread() {} - static u8 snIntCount[4 + 4 /* padding */]; + /* 0x7c */ OSThreadQueue sThreadQueue; + /* 0x84 */ bool sbPauseFlag; // type unsure + + static volatile int snIntCount; // type unsure }; #endif /* JASAUDIOTHREAD_H */ diff --git a/include/JSystem/JAudio2/JASDriverIF.h b/include/JSystem/JAudio2/JASDriverIF.h index af133f69674..05b9d3c827a 100644 --- a/include/JSystem/JAudio2/JASDriverIF.h +++ b/include/JSystem/JAudio2/JASDriverIF.h @@ -19,6 +19,13 @@ struct JASDriver { /* 8029E2D0 */ void DSPSyncCallback(); /* 8029E2F8 */ void updateDacCallback(); /* 8029C9F0 */ static u32 getSubFrames(); + static void initAI(void (*)()); + static void startDMA(); + static void stopDMA(); + static void updateDac(); + static void updateDacCallback(); + static void finishDSPFrame(); + static void updateDSP(); static u8 sDspSyncCallback[256]; static u8 sSubFrameCallback[256]; diff --git a/include/JSystem/JAudio2/JASGadget.h b/include/JSystem/JAudio2/JASGadget.h index fc4e7e9516a..24b00e3c79d 100644 --- a/include/JSystem/JAudio2/JASGadget.h +++ b/include/JSystem/JAudio2/JASGadget.h @@ -10,8 +10,12 @@ public: sInstance = inst; } + JASGlobalInstance(bool param_1) { + sInstance = (T*)this; + } + ~JASGlobalInstance() { - if (this == sInstance) { + if (sInstance == (T*)this) { sInstance = NULL; } } diff --git a/include/JSystem/JAudio2/JASSeqReader.h b/include/JSystem/JAudio2/JASSeqReader.h index 065c3298422..89e44f14415 100644 --- a/include/JSystem/JAudio2/JASSeqReader.h +++ b/include/JSystem/JAudio2/JASSeqReader.h @@ -13,6 +13,21 @@ public: /* 8029627C */ bool ret(); /* 802962B0 */ int readMidiValue(); + void jump(u32 param_1) { + field_0x04 = (u8*)field_0x00 + param_1; + } + + void jump(void* param_1) { + field_0x04 = (u8*)param_1; + } + + u32 get24(int param_0) { + return (*(u32*)((int)field_0x00 + param_0 - 1)) & 0xffffff; + } + + u32* getBase() { return field_0x00; } + u8* getCur() { return field_0x04; } + u8 readByte() { u8* tmp = field_0x04; field_0x04 += 1; diff --git a/include/JSystem/JAudio2/JASTrack.h b/include/JSystem/JAudio2/JASTrack.h index 12465a470c4..396a32ae150 100644 --- a/include/JSystem/JAudio2/JASTrack.h +++ b/include/JSystem/JAudio2/JASTrack.h @@ -70,7 +70,7 @@ struct JASTrack { /* 80291F38 */ void noteOn(u32, u32, u32); /* 80292008 */ void gateOn(u32, u32, f32, u32); /* 80292198 */ void noteOff(u32, u16); - /* 80292220 */ void checkNoteStop(u32) const; + /* 80292220 */ bool checkNoteStop(u32) const; /* 8029226C */ void overwriteOsc(JASChannel*); /* 802922D8 */ void updateTimedParam(); /* 80292348 */ void updateTrack(f32); diff --git a/include/JSystem/JKernel/JKRThread.h b/include/JSystem/JKernel/JKRThread.h index 12ed5241f6a..b7e31e20011 100644 --- a/include/JSystem/JKernel/JKRThread.h +++ b/include/JSystem/JKernel/JKRThread.h @@ -72,11 +72,7 @@ public: s32 getCurrentHeapError() const { return mCurrentHeapError; } void setCurrentHeap(JKRHeap* heap) { - if (!heap) { - heap = JKRHeap::getCurrentHeap(); - } - - mCurrentHeap = heap; + mCurrentHeap = heap ? heap : JKRHeap::getCurrentHeap(); } protected: diff --git a/include/d/map/d_map_path_dmap.h b/include/d/map/d_map_path_dmap.h index 08af8253fbc..6b0ed898c08 100644 --- a/include/d/map/d_map_path_dmap.h +++ b/include/d/map/d_map_path_dmap.h @@ -18,6 +18,9 @@ public: /* 8003FB70 */ static void create(); /* 8003FBD0 */ static void reset(); /* 8003FC70 */ static void remove(); + static dDrawPath_c::room_class* getRoomPointer(int layerNo, int roomNo) { + return (mLayerList + 0x40*layerNo)[roomNo]; + } static dDrawPath_c::room_class** mLayerList; // this doesn't seem right, but can't figure it out atm static f32 mMinX; @@ -92,7 +95,7 @@ public: /* 8003FFC4 */ virtual void postDrawPath(); /* 800402C0 */ virtual bool isDrawPath(); /* 8003FE4C */ virtual GXColor* getBackColor() const; - /* 800402E0 */ virtual bool getFirstDrawLayerNo(); + /* 800402E0 */ virtual int getFirstDrawLayerNo(); /* 800402E8 */ virtual int getNextDrawLayerNo(int); /* 800409E0 */ virtual bool isDrawIconSingle(dTres_c::data_s const*, int, int, bool, bool, Vec const*) const; diff --git a/libs/JSystem/JAudio2/JASAudioThread.cpp b/libs/JSystem/JAudio2/JASAudioThread.cpp index b67d7c792e7..10ba8cd1399 100644 --- a/libs/JSystem/JAudio2/JASAudioThread.cpp +++ b/libs/JSystem/JAudio2/JASAudioThread.cpp @@ -4,30 +4,24 @@ // #include "JSystem/JAudio2/JASAudioThread.h" +#include "JSystem/JAudio2/JASDriverIF.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "dolphin/os/OS.h" +#include "dolphin/dsp/dsp.h" // // Types: // -struct JKRHeap { - static u8 sSystemHeap[4]; - static u8 sCurrentHeap[4]; -}; - -struct JKRThread { - /* 802D1610 */ JKRThread(JKRHeap*, u32, int, int); - /* 802D1758 */ ~JKRThread(); -}; - struct JASProbe { - /* 80290EE4 */ void start(s32, char const*); - /* 80290F24 */ void stop(s32); + /* 80290EE4 */ static void start(s32, char const*); + /* 80290F24 */ static void stop(s32); }; template -struct JASMemPool_MultiThreaded {}; +struct JASMemPool {}; + /* JASMemPool_MultiThreaded */ struct JASMemPool_MultiThreaded__template2 { /* 802978DC */ void func_802978DC(void* _this); @@ -35,27 +29,17 @@ struct JASMemPool_MultiThreaded__template2 { struct JASGenericMemPool { /* 80290848 */ JASGenericMemPool(); - /* 802908C8 */ void newMemPool(u32, int); + /* 802908C8 */ static void newMemPool(u32, int); }; struct JASDsp { - /* 8029D958 */ void boot(void (*)(void*)); - /* 8029D9C4 */ void finishWork(u16); - /* 8029DAC8 */ void initBuffer(); -}; - -struct JASDriver { - /* 8029C388 */ void initAI(void (*)(void)); - /* 8029C4E4 */ void startDMA(); - /* 8029C504 */ void stopDMA(); - /* 8029C568 */ void updateDac(); - /* 8029C6C4 */ void updateDSP(); - /* 8029C900 */ void finishDSPFrame(); - /* 8029E2F8 */ void updateDacCallback(); + /* 8029D958 */ static void boot(void (*)(void*)); + /* 8029D9C4 */ static void finishWork(u16); + /* 8029DAC8 */ static void initBuffer(); }; struct JASDSPChannel { - /* 8029D3C8 */ void initAll(); + /* 8029D3C8 */ static void initAll(); }; // @@ -96,67 +80,41 @@ extern "C" void* __nw__FUlP7JKRHeapi(); extern "C" void __dl__FPv(); extern "C" void __ct__9JKRThreadFP7JKRHeapUlii(); extern "C" void __dt__9JKRThreadFv(); -extern "C" void OSDisableInterrupts(); -extern "C" void OSRestoreInterrupts(); -extern "C" void OSSendMessage(); -extern "C" void OSReceiveMessage(); -extern "C" void OSJamMessage(); -extern "C" void OSInitThreadQueue(); -extern "C" void OSExitThread(); -extern "C" void OSResumeThread(); -extern "C" void OSSleepThread(); -extern "C" void DSPCheckMailFromDSP(); -extern "C" void DSPReadMailFromDSP(); extern "C" void __register_global_object(); extern "C" extern u8 data_80431B34[16 + 4 /* padding */]; -extern "C" extern u8 JASDram[4]; extern "C" extern u8 struct_80451260[8]; extern "C" u8 sSystemHeap__7JKRHeap[4]; extern "C" u8 sCurrentHeap__7JKRHeap[4]; extern "C" extern u8 __OSReport_disable; +extern JKRHeap* JASDram; // // Declarations: // /* ############################################################################################## */ -/* 803C78E0-803C78F0 024A00 0010+00 2/2 0/0 0/0 .data __vt__14JASAudioThread */ -SECTION_DATA extern void* __vt__14JASAudioThread[4] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__14JASAudioThreadFv, - (void*)run__14JASAudioThreadFv, -}; /* 8029CCDC-8029CD4C 29761C 0070+00 1/1 0/0 0/0 .text __ct__14JASAudioThreadFiiUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm JASAudioThread::JASAudioThread(int param_0, int param_1, u32 param_2) { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/__ct__14JASAudioThreadFiiUl.s" +JASAudioThread::JASAudioThread(int stackSize, int msgCount, u32 threadPriority) + : + JKRThread(JASDram, threadPriority, msgCount, stackSize), + JASGlobalInstance(true) +{ + sbPauseFlag = false; + OSInitThreadQueue(&sThreadQueue); } -#pragma pop /* 8029CD4C-8029CDC0 29768C 0074+00 0/0 1/1 0/0 .text create__14JASAudioThreadFl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASAudioThread::create(s32 param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/create__14JASAudioThreadFl.s" +void JASAudioThread::create(long threadPriority) { + JASAudioThread* sAudioThread = new (JASDram, 0) JASAudioThread(threadPriority, 0x10, 0x1400); + sAudioThread->setCurrentHeap(JKRGetSystemHeap()); + sAudioThread->resume(); } -#pragma pop /* 8029CDC0-8029CDEC 297700 002C+00 0/0 1/1 0/0 .text stop__14JASAudioThreadFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASAudioThread::stop() { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/stop__14JASAudioThreadFv.s" +void JASAudioThread::stop() { + jamMessageBlock((void*)2); } -#pragma pop /* ############################################################################################## */ /* 8039B338-8039B338 027998 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ @@ -169,18 +127,93 @@ SECTION_DEAD static char const* const stringBase_8039B338 = "SFR_DSP"; static u8 lit_205[12 + 4 /* padding */]; /* 804512D8-804512E0 0007D8 0004+04 1/1 2/2 0/0 .sbss snIntCount__14JASAudioThread */ -u8 JASAudioThread::snIntCount[4 + 4 /* padding */]; +volatile int JASAudioThread::snIntCount; + +class Lock { +public: + Lock() { + mInterrupts = OSDisableInterrupts(); + } + ~Lock() { + OSRestoreInterrupts(mInterrupts); + } +private: + BOOL mInterrupts; +}; + +class JASChannel {}; + +template +class JASMemPool_MultiThreaded { +public: + static void newMemPool(int param_1) { + Lock lock; + JASGenericMemPool::newMemPool(0x108, param_1); + } +}; + +template +class JASPoolAllocObject_MultiThreaded { +public: + static void newMemPool(int param_1) { + JASMemPool_MultiThreaded::newMemPool(param_1); + } +}; /* 8029CDEC-8029CF68 29772C 017C+00 1/0 0/0 0/0 .text run__14JASAudioThreadFv */ +// JASPoolAllocObject_MultiThreaded is complex +#ifdef NONMATCHING +void* JASAudioThread::run() { + i_OSInitFastCast(); + JASDriver::initAI(DMACallback); + JASDsp::boot(DSPCallback); + JASDsp::initBuffer(); + JASDSPChannel::initAll(); + + JASPoolAllocObject_MultiThreaded::newMemPool(0x48); + JASDriver::startDMA(); + + while (true) { + OSMessage msg = waitMessageBlock(); + switch ((int)msg) { + case AUDIOMSG_DMA: + if (sbPauseFlag) { + JASDriver::stopDMA(); + OSSleepThread(&sThreadQueue); + } + JASDriver::updateDac(); + JASDriver::updateDacCallback(); + break; + + case AUDIOMSG_DSP: + snIntCount--; + if (snIntCount == 0) { + JASProbe::stop(7); + JASDriver::finishDSPFrame(); + } else { + JASProbe::start(2, "SFR_DSP"); + JASDriver::updateDSP(); + JASProbe::stop(2); + } + break; + + case AUDIOMSG_STOP: + JASDriver::stopDMA(); + OSExitThread(NULL); + break; + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void JASAudioThread::run() { +asm void* JASAudioThread::run() { nofralloc #include "asm/JSystem/JAudio2/JASAudioThread/run__14JASAudioThreadFv.s" } #pragma pop - +#endif /* ############################################################################################## */ /* 8039B338-8039B338 027998 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ #pragma push @@ -191,33 +224,26 @@ SECTION_DEAD static char const* const pad_8039B34B = "\0\0\0\0\0\0\0\0\0\0\0\0\0 #pragma pop /* 8029CF68-8029CFBC 2978A8 0054+00 1/1 0/0 0/0 .text DMACallback__14JASAudioThreadFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASAudioThread::DMACallback() { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/DMACallback__14JASAudioThreadFv.s" +void JASAudioThread::DMACallback() { + JASAudioThread* thread = getInstance(); + JASProbe::stop(4); + JASProbe::start(4, "UPDATE-DAC"); + thread->sendMessage((void*)AUDIOMSG_DMA); } -#pragma pop /* 8029CFBC-8029D028 2978FC 006C+00 1/1 0/0 0/0 .text DSPCallback__14JASAudioThreadFPv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASAudioThread::DSPCallback(void* param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/DSPCallback__14JASAudioThreadFPv.s" -} -#pragma pop +void JASAudioThread::DSPCallback(void*) { + JASAudioThread* thread = getInstance(); + while (DSPCheckMailFromDSP() == 0) { } -/* 8029D028-8029D0B4 297968 008C+00 1/0 0/0 0/0 .text __dt__14JASAudioThreadFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm JASAudioThread::~JASAudioThread() { - nofralloc -#include "asm/JSystem/JAudio2/JASAudioThread/__dt__14JASAudioThreadFv.s" + u32 mail = DSPReadMailFromDSP(); + if (mail >> 0x10 == 0xF355) { + if ((mail & 0xFF00) == 0xFF00) { + thread->sendMessage((void*)AUDIOMSG_DSP); + } else { + JASDsp::finishWork(mail); + } + } } -#pragma pop /* 8039B338-8039B338 027998 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/libs/JSystem/JAudio2/JASSeqCtrl.cpp b/libs/JSystem/JAudio2/JASSeqCtrl.cpp index b8ed73edb3d..6d92d7fea8d 100644 --- a/libs/JSystem/JAudio2/JASSeqCtrl.cpp +++ b/libs/JSystem/JAudio2/JASSeqCtrl.cpp @@ -6,217 +6,227 @@ #include "JSystem/JAudio2/JASSeqCtrl.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "JSystem/JAudio2/JASSeqReader.h" +#include "JSystem/JAudio2/JASTrack.h" // // Types: // -struct JASTrack { - /* 80292220 */ void checkNoteStop(u32) const; -}; - -struct JASSeqReader { - /* 80296108 */ void init(); - /* 80296148 */ void init(void*); -}; - +// TODO: Use JASSeqParser.hh when possible struct JASSeqParser { - /* 80293CAC */ ~JASSeqParser(); + /* 80293CAC */ inline virtual ~JASSeqParser() {} + /* 802958D4 */ virtual int parse(JASTrack*); + /* 80295540 */ virtual void execNoteOnMidi(JASTrack*, u32, u32, u32); + /* 80295498 */ virtual void execNoteOnGate(JASTrack*, u32, u32, u32, u32); + /* 80295570 */ virtual void execNoteOff(JASTrack*, u32); + /* 8029559C */ virtual void execCommand(JASTrack*, s32 (JASSeqParser::*)(JASTrack*, u32*), u32, u32*); + + static u8 sCmdInfo[1536]; + static u8 sExtCmdInfo[4080]; + static u8 sCallBackFunc[4]; }; struct JASSeqCtrl { - struct IntrType {}; + enum IntrType { + INTRTYPE_VALUE_0, + INTRTYPE_VALUE_1, + INTRTYPE_VALUE_2, + INTRTYPE_VALUE_3, + INTRTYPE_VALUE_4, + INTRTYPE_VALUE_5, + INTRTYPE_VALUE_6, + }; /* 802938BC */ JASSeqCtrl(); /* 80293924 */ void init(); /* 80293980 */ void start(void*, u32); - /* 802939C4 */ void tickProc(JASTrack*); + /* 802939C4 */ int tickProc(JASTrack*); /* 80293ABC */ void interrupt(JASSeqCtrl::IntrType); /* 80293AE0 */ void setIntrMask(u32); /* 80293AF0 */ void clrIntrMask(u32); - /* 80293B00 */ void retIntr(); - /* 80293B28 */ void findIntr(); + /* 80293B00 */ int retIntr(); + /* 80293B28 */ int findIntr(); /* 80293B78 */ void checkIntr(); /* 80293BE8 */ void timerProcess(); - static u8 sDefaultParser[4 + 4 /* padding */]; + u32 get24(int param_0) { + return mReader.get24(param_0); + } + + /* 0x00 */ JASSeqReader mReader; + /* 0x3c */ JASSeqParser* field_0x3c; + /* 0x40 */ s32 field_0x40; + /* 0x44 */ void* field_0x44; + /* 0x48 */ u32 field_0x48; + /* 0x4c */ u16 field_0x4c; + /* 0x4e */ u16 field_0x4e; + /* 0x50 */ u8 field_0x50; + /* 0x51 */ u8 field_0x51; + /* 0x52 */ u16 field_0x52; + /* 0x54 */ u32 field_0x54; + /* 0x58 */ u32 field_0x58; + static JASSeqParser sDefaultParser; }; // // Forward References: // -extern "C" void __ct__10JASSeqCtrlFv(); -extern "C" void init__10JASSeqCtrlFv(); -extern "C" void start__10JASSeqCtrlFPvUl(); -extern "C" void tickProc__10JASSeqCtrlFP8JASTrack(); -extern "C" void interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType(); -extern "C" void setIntrMask__10JASSeqCtrlFUl(); -extern "C" void clrIntrMask__10JASSeqCtrlFUl(); -extern "C" void retIntr__10JASSeqCtrlFv(); -extern "C" void findIntr__10JASSeqCtrlFv(); -extern "C" void checkIntr__10JASSeqCtrlFv(); -extern "C" void timerProcess__10JASSeqCtrlFv(); -extern "C" void __sinit_JASSeqCtrl_cpp(); -extern "C" void __dt__12JASSeqParserFv(); -extern "C" u8 sDefaultParser__10JASSeqCtrl[4 + 4 /* padding */]; - // // External References: // -extern "C" void checkNoteStop__8JASTrackCFUl(); -extern "C" void init__12JASSeqReaderFv(); -extern "C" void init__12JASSeqReaderFPv(); -extern "C" void __dl__FPv(); -extern "C" void __register_global_object(); -extern "C" extern void* __vt__12JASSeqParser[8]; - // // Declarations: // /* ############################################################################################## */ /* 80451238-80451240 000738 0004+04 3/3 0/0 0/0 .sbss sDefaultParser__10JASSeqCtrl */ -u8 JASSeqCtrl::sDefaultParser[4 + 4 /* padding */]; +JASSeqParser JASSeqCtrl::sDefaultParser; /* 802938BC-80293924 28E1FC 0068+00 0/0 1/1 0/0 .text __ct__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm JASSeqCtrl::JASSeqCtrl() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/__ct__10JASSeqCtrlFv.s" +JASSeqCtrl::JASSeqCtrl() { + mReader.init(); + field_0x3c = &sDefaultParser; + field_0x40 = 0; + field_0x44 = NULL; + field_0x48 = 0; + field_0x4c = 0; + field_0x4e = 0; + field_0x50 = 0; + field_0x51 = 0; + field_0x54 = 0; + field_0x58 = 0; + mReader.init(); } -#pragma pop /* 80293924-80293980 28E264 005C+00 0/0 1/1 0/0 .text init__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::init() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/init__10JASSeqCtrlFv.s" +void JASSeqCtrl::init() { + mReader.init(); + field_0x3c = &sDefaultParser; + field_0x40 = 0; + field_0x44 = NULL; + field_0x48 = 0; + field_0x4c = 0; + field_0x4e = 0; + field_0x50 = 0; + field_0x54 = 0; + field_0x58 = 0; + field_0x51 = 0; } -#pragma pop /* 80293980-802939C4 28E2C0 0044+00 0/0 1/1 0/0 .text start__10JASSeqCtrlFPvUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::start(void* param_0, u32 param_1) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/start__10JASSeqCtrlFPvUl.s" +void JASSeqCtrl::start(void* param_0, u32 param_1) { + mReader.init(param_0); + mReader.jump(param_1); } -#pragma pop /* 802939C4-80293ABC 28E304 00F8+00 0/0 1/1 0/0 .text tickProc__10JASSeqCtrlFP8JASTrack */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::tickProc(JASTrack* param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/tickProc__10JASSeqCtrlFP8JASTrack.s" +int JASSeqCtrl::tickProc(JASTrack* param_0) { + if (!mReader.getBase()) { + return 0; + } + + interrupt(INTRTYPE_VALUE_6); + timerProcess(); + + if (field_0x51) { + if (!param_0->checkNoteStop(0)) { + return 0; + } + + field_0x51 = 0; + } + + if (field_0x40 > 0) { + field_0x40--; + } + + checkIntr(); + + while ((field_0x40 == 0 || field_0x44 != NULL) && field_0x51 == 0) { + if (field_0x3c->parse(param_0) < 0) { + return -1; + } + } + + return 0; } -#pragma pop /* 80293ABC-80293AE0 28E3FC 0024+00 2/2 2/2 0/0 .text * interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::interrupt(JASSeqCtrl::IntrType param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/interrupt__10JASSeqCtrlFQ210JASSeqCtrl8IntrType.s" +void JASSeqCtrl::interrupt(JASSeqCtrl::IntrType param_0) { + if (field_0x4e & (1 << param_0)) { + field_0x4c |= (1 << param_0); + } } -#pragma pop /* 80293AE0-80293AF0 28E420 0010+00 0/0 1/1 0/0 .text setIntrMask__10JASSeqCtrlFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::setIntrMask(u32 param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/setIntrMask__10JASSeqCtrlFUl.s" +void JASSeqCtrl::setIntrMask(u32 param_0) { + field_0x4e |= param_0; } -#pragma pop /* 80293AF0-80293B00 28E430 0010+00 0/0 1/1 0/0 .text clrIntrMask__10JASSeqCtrlFUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::clrIntrMask(u32 param_0) { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/clrIntrMask__10JASSeqCtrlFUl.s" +void JASSeqCtrl::clrIntrMask(u32 param_0) { + field_0x4e &= ~param_0; } -#pragma pop /* 80293B00-80293B28 28E440 0028+00 0/0 1/1 0/0 .text retIntr__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::retIntr() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/retIntr__10JASSeqCtrlFv.s" +int JASSeqCtrl::retIntr() { + if (field_0x44 == NULL) { + return 0; + } + + mReader.jump(field_0x44); + field_0x44 = NULL; + return 1; } -#pragma pop /* 80293B28-80293B78 28E468 0050+00 1/1 0/0 0/0 .text findIntr__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::findIntr() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/findIntr__10JASSeqCtrlFv.s" +int JASSeqCtrl::findIntr() { + u32 uVar1 = field_0x4e & field_0x4c; + for (int i = 0; uVar1 != 0; uVar1 >>= 1, i++) { + if (uVar1 & 1) { + field_0x4c &= ~(1 << i); + return i; + } + } + return -1; } -#pragma pop /* 80293B78-80293BE8 28E4B8 0070+00 1/1 2/2 0/0 .text checkIntr__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::checkIntr() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/checkIntr__10JASSeqCtrlFv.s" +void JASSeqCtrl::checkIntr() { + if (field_0x44) return; + int intr = findIntr(); + + if (intr < 0) return; + + u32 uVar2 = field_0x48; + uVar2 += intr * 3; + u32 uVar1 = get24(uVar2); + field_0x44 = mReader.getCur(); + mReader.jump(uVar1); } -#pragma pop /* 80293BE8-80293C6C 28E528 0084+00 1/1 0/0 0/0 .text timerProcess__10JASSeqCtrlFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JASSeqCtrl::timerProcess() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/timerProcess__10JASSeqCtrlFv.s" +void JASSeqCtrl::timerProcess() { + if (field_0x54 == 0) return; + + field_0x54--; + if (field_0x54) return; + + interrupt(INTRTYPE_VALUE_5); + + if (field_0x50) { + field_0x50--; + if (field_0x50) { + field_0x54 = field_0x58; + } + } else { + field_0x54 = field_0x58; + } } -#pragma pop /* ############################################################################################## */ -/* 80431B18-80431B28 05E838 000C+04 1/1 0/0 0/0 .bss @433 */ -static u8 lit_433[12 + 4 /* padding */]; - -/* 80293C6C-80293CAC 28E5AC 0040+00 0/0 1/0 0/0 .text __sinit_JASSeqCtrl_cpp */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void __sinit_JASSeqCtrl_cpp() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/__sinit_JASSeqCtrl_cpp.s" -} -#pragma pop - -#pragma push -#pragma force_active on -REGISTER_CTORS(0x80293C6C, __sinit_JASSeqCtrl_cpp); -#pragma pop - -/* 80293CAC-80293CF4 28E5EC 0048+00 1/1 1/0 0/0 .text __dt__12JASSeqParserFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm JASSeqParser::~JASSeqParser() { - nofralloc -#include "asm/JSystem/JAudio2/JASSeqCtrl/__dt__12JASSeqParserFv.s" -} -#pragma pop diff --git a/libs/JSystem/JAudio2/JASTrack.cpp b/libs/JSystem/JAudio2/JASTrack.cpp index 977e09bf6cd..ae377bfc22d 100644 --- a/libs/JSystem/JAudio2/JASTrack.cpp +++ b/libs/JSystem/JAudio2/JASTrack.cpp @@ -522,7 +522,7 @@ asm void JASTrack::noteOff(u32 param_0, u16 param_1) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void JASTrack::checkNoteStop(u32 param_0) const { +asm bool JASTrack::checkNoteStop(u32 param_0) const { nofralloc #include "asm/JSystem/JAudio2/JASTrack/checkNoteStop__8JASTrackCFUl.s" } diff --git a/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp b/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp index 9c1d48dac69..2551314525c 100644 --- a/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp +++ b/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash.cpp @@ -1170,17 +1170,11 @@ int daNpcAsh_c::Draw() { } /* ############################################################################################## */ -/* 8095D6C4-8095D6D0 000084 000C+00 1/1 0/0 0/0 .rodata @4385 */ -SECTION_RODATA static u8 const lit_4385[12] = { - 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x04, -}; -COMPILER_STRIP_GATE(0x8095D6C4, &lit_4385); /* 80959238-80959458 001038 0220+00 1/1 0/0 0/0 .text ctrlJoint__10daNpcAsh_cFP8J3DJointP8J3DModel */ -#ifdef NONMATCHING bool daNpcAsh_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) { - s32 jointNo = i_joint->getJntNo(); + int jointNo = i_joint->getJntNo(); int lookatJoints[3] = {1, 3, 4}; if (jointNo == 0) { mDoMtx_stack_c::copy(mMcaMorf->getModel()->i_getAnmMtx(1)); @@ -1214,16 +1208,6 @@ bool daNpcAsh_c::ctrlJoint(J3DJoint* i_joint, J3DModel* i_model) { } return true; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm bool daNpcAsh_c::ctrlJoint(J3DJoint* param_0, J3DModel* param_1) { - nofralloc -#include "asm/rel/d/a/npc/d_a_npc_ash/d_a_npc_ash/ctrlJoint__10daNpcAsh_cFP8J3DJointP8J3DModel.s" -} -#pragma pop -#endif /* 80959458-80959478 001258 0020+00 1/1 0/0 0/0 .text * createHeapCallBack__10daNpcAsh_cFP10fopAc_ac_c */ diff --git a/src/d/d_bright_check.cpp b/src/d/d_bright_check.cpp index 3c5249ac944..aec69a7a85e 100644 --- a/src/d/d_bright_check.cpp +++ b/src/d/d_bright_check.cpp @@ -6,65 +6,56 @@ #include "d/d_bright_check.h" #include "dol2asm.h" #include "dolphin/types.h" +#include "d/d_drawlist.h" +#include "d/com/d_com_inf_game.h" +#include "d/msg/d_msg_string.h" +#include "d/meter/d_meter2_info.h" +#include "m_Do/m_Do_controller_pad.h" +#include "JSystem/J2DGraph/J2DTextBox.h" +#include "JSystem/J2DGraph/J2DGrafContext.h" +#include "JSystem/J2DGraph/J2DScreen.h" +#include "JSystem/JKernel/JKRArchive.h" // // Types: // -struct mDoCPd_c { - static u8 m_cpadInfo[256]; -}; - -struct dMsgString_c { - /* 80249C20 */ dMsgString_c(); - /* 80249D28 */ ~dMsgString_c(); -}; - -struct dDlst_base_c {}; - -struct dDlst_list_c { - /* 80056794 */ void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*); -}; - -struct dDlst_BrightCheck_c { +struct dDlst_BrightCheck_c +#ifdef NONMATCHING +: public dDlst_base_c +#endif +{ + #ifdef NONMATCHING + /* 801935D0 */ virtual void draw(); + /* 80193648 */ virtual ~dDlst_BrightCheck_c() {}; + #else /* 801935D0 */ void draw(); /* 80193648 */ ~dDlst_BrightCheck_c(); + void* vtable; + #endif + J2DScreen* mScreen; }; -struct JKRArchive {}; - struct dBrightCheck_c { /* 80192F10 */ dBrightCheck_c(JKRArchive*); + #ifdef NONMATCHING + /* 80192F98 */ virtual ~dBrightCheck_c(); + #else + void * vtable; /* 80192F98 */ ~dBrightCheck_c(); + #endif /* 80193030 */ void screenSet(); /* 801934D0 */ void _move(); /* 80193508 */ void modeWait(); /* 8019350C */ void modeMove(); /* 80193594 */ void _draw(); -}; - -struct JAISoundID {}; - -struct Vec {}; - -struct Z2SeMgr { - /* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -struct J2DTextBox { - /* 8030074C */ void setString(s16, char const*, ...); -}; - -struct J2DGrafContext {}; - -struct J2DScreen { - /* 802F8498 */ J2DScreen(); - /* 802F8648 */ void setPriority(char const*, u32, JKRArchive*); - /* 802F8ED4 */ void draw(f32, f32, J2DGrafContext const*); + + /* 0x04 */ JKRArchive* mArchive; + /* 0x08 */ dDlst_BrightCheck_c mDlstBrightCheck; + /* 0x10 */ u8 field_0x10[4]; + /* 0x14 */ dMsgString_c* mMsgString; + /* 0x18 */ u8 field_0x18; + /* 0x19 */ u8 field_0x19; }; // @@ -104,7 +95,6 @@ extern "C" void _savegpr_22(); extern "C" void _restgpr_22(); extern "C" extern void* __vt__12dDlst_base_c[3]; extern "C" u8 m_cpadInfo__8mDoCPd_c[256]; -extern "C" extern u8 g_dComIfG_gameInfo[122384]; extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; // @@ -117,6 +107,13 @@ SECTION_DATA static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; +typedef void (dBrightCheck_c::*BrightCheckFunc)(); + +#ifdef NONMATCHING +SECTION_DATA static BrightCheckFunc brightChackProc[2] = { + &dBrightCheck_c::modeWait, &dBrightCheck_c::modeMove, +}; +#else /* 803BB5BC-803BB5C8 -00001 000C+00 0/1 0/0 0/0 .data @3797 */ #pragma push #pragma force_active on @@ -163,7 +160,19 @@ SECTION_DATA extern void* __vt__14dBrightCheck_c[3 + 4 /* padding */] = { NULL, }; +#endif + /* 80192F10-80192F98 18D850 0088+00 0/0 1/1 0/0 .text __ct__14dBrightCheck_cFP10JKRArchive */ +// Matches without vtables +#ifdef NONMATCHING +dBrightCheck_c::dBrightCheck_c(JKRArchive* param_0) { + mArchive = param_0; + mMsgString = new dMsgString_c(); + screenSet(); + field_0x19 = 0; + field_0x18 = 1; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -172,8 +181,15 @@ asm dBrightCheck_c::dBrightCheck_c(JKRArchive* param_0) { #include "asm/d/d_bright_check/__ct__14dBrightCheck_cFP10JKRArchive.s" } #pragma pop +#endif /* 80192F98-80193030 18D8D8 0098+00 1/0 0/0 0/0 .text __dt__14dBrightCheck_cFv */ +#ifdef NONMATCHING +dBrightCheck_c::~dBrightCheck_c() { + delete mDlstBrightCheck.mScreen; + delete mMsgString; +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -182,23 +198,20 @@ asm dBrightCheck_c::~dBrightCheck_c() { #include "asm/d/d_bright_check/__dt__14dBrightCheck_cFv.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80394910-80394938 020F70 0028+00 1/1 0/0 0/0 .rodata tv_btnA$3744 */ -SECTION_RODATA static u8 const tv_btnA[40] = { - 0x63, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x74, 0x31, 0x63, 0x6F, 0x6E, 0x74, 0x5F, 0x61, - 0x74, 0x32, 0x63, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x74, 0x33, 0x63, 0x6F, 0x6E, 0x74, - 0x5F, 0x61, 0x74, 0x34, 0x00, 0x63, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x74, +SECTION_RODATA static u64 const tv_btnA[5] = { + 'cont_at1', 'cont_at2', 'cont_at3', 'cont_at4', 'cont_at', }; COMPILER_STRIP_GATE(0x80394910, &tv_btnA); /* 80394938-80394960 020F98 0028+00 0/1 0/0 0/0 .rodata ftv_btnA$3745 */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const ftv_btnA[40] = { - 0x00, 0x66, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x31, 0x66, 0x6F, 0x6E, 0x74, 0x5F, 0x61, - 0x74, 0x32, 0x66, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x74, 0x33, 0x66, 0x6F, 0x6E, 0x74, - 0x5F, 0x61, 0x74, 0x34, 0x00, 0x66, 0x6F, 0x6E, 0x74, 0x5F, 0x61, 0x74, +SECTION_RODATA static u64 const ftv_btnA[5] = { + 'font_a1', 'font_at2', 'font_at3' , 'font_at4', 'font_at', }; COMPILER_STRIP_GATE(0x80394938, &ftv_btnA); #pragma pop @@ -206,12 +219,9 @@ COMPILER_STRIP_GATE(0x80394938, &ftv_btnA); /* 80394960-803949B0 020FC0 0050+00 0/1 0/0 0/0 .rodata txTV$3751 */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const txTV[80] = { - 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x36, 0x31, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x32, - 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x39, 0x31, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x31, - 0x6D, 0x65, 0x6E, 0x75, 0x74, 0x31, 0x30, 0x31, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x30, 0x31, - 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x37, 0x31, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x33, - 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x38, 0x31, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x74, 0x34, +SECTION_RODATA static u64 const txTV[10] = { + 'menu_t61', 'menu_t2', 'menu_t91', 'menu_t1', 'menut101', 'menu_t01', 'menu_t71', + 'menu_t3', 'menu_t81', 'menu_t4', }; COMPILER_STRIP_GATE(0x80394960, &txTV); #pragma pop @@ -219,10 +229,8 @@ COMPILER_STRIP_GATE(0x80394960, &txTV); /* 803949B0-803949D8 021010 0028+00 0/1 0/0 0/0 .rodata txTVhide$3752 */ #pragma push #pragma force_active on -SECTION_RODATA static u8 const txTVhide[40] = { - 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x36, 0x6E, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, - 0x39, 0x6E, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x31, 0x30, 0x6E, 0x00, 0x6D, 0x65, 0x6E, - 0x75, 0x5F, 0x37, 0x6E, 0x00, 0x6D, 0x65, 0x6E, 0x75, 0x5F, 0x38, 0x6E, +SECTION_RODATA static u64 const txTVhide[5] = { + 'menu_6n', 'menu_9n', 'menu_10n', 'menu_7n', 'menu_8n', }; COMPILER_STRIP_GATE(0x803949B0, &txTVhide); #pragma pop @@ -243,6 +251,56 @@ SECTION_SDATA2 static u8 lit_3792[4] = { }; /* 80193030-801934D0 18D970 04A0+00 1/1 0/0 0/0 .text screenSet__14dBrightCheck_cFv */ +// matches with literals +#ifdef NONMATCHING +void dBrightCheck_c::screenSet() { + mDlstBrightCheck.mScreen = new J2DScreen(); + mDlstBrightCheck.mScreen->setPriority("zelda_option_check.blo", 0x1100000, mArchive); + mDlstBrightCheck.mScreen->search('g_abtn_n')->hide(); + J2DTextBox* textBox = (J2DTextBox*)mDlstBrightCheck.mScreen->search('f_t00'); + mDlstBrightCheck.mScreen->search('f_t00')->show(); + mDlstBrightCheck.mScreen->search('t_t00')->hide(); + textBox->setFont(mDoExt_getRubyFont()); + textBox->setString(0x40, ""); + mMsgString->getString(0x55c, textBox, NULL, NULL, NULL, 0); + + J2DTextBox* texts[5]; + for (int i = 0; i < 5; i++) { + texts[i] = (J2DTextBox*)mDlstBrightCheck.mScreen->search(ftv_btnA[i]); + mDlstBrightCheck.mScreen->search(tv_btnA[i])->hide(); + texts[i]->setFont(mDoExt_getMesgFont()); + texts[i]->setString(0x40, ""); + mMsgString->getString(0x564, texts[i], NULL, NULL, NULL, 0); + } + + for (int i = 0; i < 5; i++) { + mDlstBrightCheck.mScreen->search(txTVhide[i])->hide(); + } + + for (int i = 0; i < 10; i++) { + textBox = (J2DTextBox*)mDlstBrightCheck.mScreen->search(txTV[i]); + textBox->setFont(mDoExt_getMesgFont()); + textBox->setCharSpace(0.0f); + + if (i < 2) { + textBox->setString(0x100, ""); + mMsgString->getString(0x558, textBox, NULL, NULL, NULL, 0); + } else if (i < 4) { + textBox->setString(0x100, ""); + mMsgString->getString(0x557, textBox, NULL, NULL, NULL, 0); + } else if (i < 6) { + textBox->setString(0x100, ""); + mMsgString->getString(0x559, textBox, NULL, NULL, NULL, 0); + } else if (i < 8) { + textBox->setString(0x100, ""); + mMsgString->getString(0x55a, textBox, NULL, NULL, NULL, 0); + } else { + textBox->setString(0x100, ""); + mMsgString->getString(0x55b, textBox, NULL, NULL, NULL, 0); + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -251,16 +309,12 @@ asm void dBrightCheck_c::screenSet() { #include "asm/d/d_bright_check/screenSet__14dBrightCheck_cFv.s" } #pragma pop +#endif /* 801934D0-80193508 18DE10 0038+00 0/0 1/1 0/0 .text _move__14dBrightCheck_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dBrightCheck_c::_move() { - nofralloc -#include "asm/d/d_bright_check/_move__14dBrightCheck_cFv.s" +void dBrightCheck_c::_move() { + (this->*(((BrightCheckFunc*)brightChackProc)[field_0x18]))(); } -#pragma pop /* 80193508-8019350C 18DE48 0004+00 1/0 0/0 0/0 .text modeWait__14dBrightCheck_cFv */ void dBrightCheck_c::modeWait() { @@ -279,16 +333,21 @@ SECTION_SDATA2 static f32 lit_3822[1 + 1 /* padding */] = { }; /* 8019350C-80193594 18DE4C 0088+00 1/0 0/0 0/0 .text modeMove__14dBrightCheck_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dBrightCheck_c::modeMove() { - nofralloc -#include "asm/d/d_bright_check/modeMove__14dBrightCheck_cFv.s" +void dBrightCheck_c::modeMove() { + if (mDoCPd_c::getTrigA(0) || mDoCPd_c::getTrigStart(0)) { + mDoAud_seStart(1, 0, 0, 0); + field_0x19 = 1; + field_0x18 = 0; + } } -#pragma pop /* 80193594-801935D0 18DED4 003C+00 0/0 1/1 0/0 .text _draw__14dBrightCheck_cFv */ +// Matches with mDlstBrightCheck inheritance +#ifdef NONMATCHING +void dBrightCheck_c::_draw() { + dComIfGd_set2DOpa(&mDlstBrightCheck); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -297,8 +356,16 @@ asm void dBrightCheck_c::_draw() { #include "asm/d/d_bright_check/_draw__14dBrightCheck_cFv.s" } #pragma pop +#endif /* 801935D0-80193608 18DF10 0038+00 1/0 0/0 0/0 .text draw__19dDlst_BrightCheck_cFv */ +// Matches with literals +#ifdef NONMATCHING +void dDlst_BrightCheck_c::draw() { + J2DGrafContext* grafContext = dComIfGp_getCurrentGrafPort(); + mScreen->draw(0.0f, 0.0f, grafContext); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -307,6 +374,7 @@ asm void dDlst_BrightCheck_c::draw() { #include "asm/d/d_bright_check/draw__19dDlst_BrightCheck_cFv.s" } #pragma pop +#endif /* 80193608-80193648 18DF48 0040+00 0/0 1/0 0/0 .text __sinit_d_bright_check_cpp */ #pragma push diff --git a/src/d/event/d_event_manager.cpp b/src/d/event/d_event_manager.cpp index 4b5e75826e6..4fea4c76949 100644 --- a/src/d/event/d_event_manager.cpp +++ b/src/d/event/d_event_manager.cpp @@ -1042,7 +1042,6 @@ int dEvent_manager_c::getMySubstanceNum(int index, char const* name) { /* 8004817C-800481F4 042ABC 0078+00 1/1 78/78 182/182 .text cutEnd__16dEvent_manager_cFi */ -#ifdef NONMATCHING void dEvent_manager_c::cutEnd(int cutIndex) { if (i_dComIfGp_getEvent().getMode() == EVT_MODE_NONE) { return; @@ -1052,19 +1051,10 @@ void dEvent_manager_c::cutEnd(int cutIndex) { return; } else { // instruction swap - mFlags.flagSet(getBase().getCutStaffCurrentCutP(cutIndex)->getFlagId()); + dEvDtCut_c* cut = getBase().getCutStaffCurrentCutP(cutIndex); + mFlags.flagSet(cut->getFlagId()); } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void dEvent_manager_c::cutEnd(int param_0) { - nofralloc -#include "asm/d/event/d_event_manager/cutEnd__16dEvent_manager_cFi.s" -} -#pragma pop -#endif /* 800481F4-800482CC 042B34 00D8+00 0/0 4/4 0/0 .text * getEventPrio__16dEvent_manager_cFP10fopAc_ac_cs */ diff --git a/src/d/map/d_map_path_dmap.cpp b/src/d/map/d_map_path_dmap.cpp index 1e8d53c23dd..170d86a3e25 100644 --- a/src/d/map/d_map_path_dmap.cpp +++ b/src/d/map/d_map_path_dmap.cpp @@ -301,23 +301,21 @@ Vec dMapInfo_n::getMapRestartPos() { /* 8003F0F8-8003F19C 039A38 00A4+00 1/1 1/1 0/0 .text getMapRestartAngleY__10dMapInfo_nFv */ -// small regalloc -#ifdef NONMATCHING s16 dMapInfo_n::getMapRestartAngleY() { int angle = dComIfGs_getRestartRoomAngleY(); const dTres_c::typeGroupData_c* icon_data = getConstRestartIconPointer(); if (icon_data != NULL) { - int icon_angle = icon_data->getAngleY(); - bool tmp = icon_angle > 0; + angle = icon_data->getAngleY(); + bool tmp = angle > 0; if (tmp) { - icon_angle = -icon_angle; + angle = -angle; } - angle = icon_angle * 0x0100; + angle = angle * 0x0100; if (tmp) { - angle = icon_angle * -0x0100; + angle = -angle; } } @@ -329,16 +327,6 @@ s16 dMapInfo_n::getMapRestartAngleY() { return angle; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm s16 dMapInfo_n::getMapRestartAngleY() { - nofralloc -#include "asm/d/map/d_map_path_dmap/getMapRestartAngleY__10dMapInfo_nFv.s" -} -#pragma pop -#endif /* 8003F19C-8003F1F4 039ADC 0058+00 0/0 1/1 0/0 .text getRoomCenter__10dMapInfo_nFiPfPf */ @@ -896,24 +884,49 @@ asm int renderingDAmap_c::getNextDrawRoomNo(int param_0) { #endif /* 80040134-800401E8 03AA74 00B4+00 3/0 3/0 0/0 .text getFirstRoomPointer__16renderingDAmap_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dDrawPath_c::room_class* renderingDAmap_c::getFirstRoomPointer() { - nofralloc -#include "asm/d/map/d_map_path_dmap/getFirstRoomPointer__16renderingDAmap_cFv.s" +dDrawPath_c::room_class* renderingDAmap_c::getFirstRoomPointer() { + dDrawPath_c::room_class* pRoomClass = NULL; + mRoomNo = getFirstDrawRoomNo(); + if (mRoomNo >= 0) { + field_0x28 = getFirstDrawLayerNo(); + + pRoomClass = dMpath_c::getRoomPointer(field_0x28, mRoomNo); + if (pRoomClass == NULL) { + pRoomClass = getNextRoomPointer(); + } + } + + if(pRoomClass != NULL) { + setSingleRoomSetting(); + } + return pRoomClass; } -#pragma pop /* 800401E8-800402C0 03AB28 00D8+00 3/0 3/0 0/0 .text getNextRoomPointer__16renderingDAmap_cFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm dDrawPath_c::room_class* renderingDAmap_c::getNextRoomPointer() { - nofralloc -#include "asm/d/map/d_map_path_dmap/getNextRoomPointer__16renderingDAmap_cFv.s" +dDrawPath_c::room_class* renderingDAmap_c::getNextRoomPointer() { + dDrawPath_c::room_class* pRoomClass = NULL; + bool bVar1 = false; + do { + mRoomNo = getNextDrawRoomNo(mRoomNo); + if (mRoomNo < 0) { + field_0x28 = getNextDrawLayerNo(field_0x28); + if (field_0x28 < 0) { + bVar1 = true; + } else { + mRoomNo = getFirstDrawRoomNo(); + } + } + + if (!bVar1) { + pRoomClass = dMpath_c::getRoomPointer(field_0x28, mRoomNo); + } + } while(pRoomClass == NULL && !bVar1); + + if (pRoomClass != NULL) { + setSingleRoomSetting(); + } + return pRoomClass; } -#pragma pop /* 800402C0-800402E0 03AC00 0020+00 3/0 3/0 0/0 .text isDrawPath__16renderingDAmap_cFv */ bool renderingDAmap_c::isDrawPath() { @@ -921,8 +934,8 @@ bool renderingDAmap_c::isDrawPath() { } /* 800402E0-800402E8 03AC20 0008+00 3/0 3/0 0/0 .text getFirstDrawLayerNo__16renderingDAmap_cFv */ -bool renderingDAmap_c::getFirstDrawLayerNo() { - return false; +int renderingDAmap_c::getFirstDrawLayerNo() { + return 0; } /* 800402E8-800402FC 03AC28 0014+00 3/0 3/0 0/0 .text getNextDrawLayerNo__16renderingDAmap_cFi */ @@ -1232,8 +1245,9 @@ void renderingPlusDoorAndCursor_c::drawTreasure() { setTevSettingIntensityTextureToCI(); for (int i = 0; i < 4; i++) { + dTres_c::typeGroupData_c* typeGroupData_p; u8 tmp = l_treasureDispList_4524[i].field_0x0; - dTres_c::typeGroupData_c* typeGroupData_p = getFirstData(tmp); + typeGroupData_p = getFirstData(tmp); int group_num = getIconGroupNumber(tmp); if (group_num != 0) { @@ -1256,7 +1270,7 @@ void renderingPlusDoorAndCursor_c::drawTreasure() { GXSetTevColor(GX_TEVREG2, sp18); for (int j = 0; j < group_num && typeGroupData_p != NULL; j++) { - Vec* icon_pos = getIconPosition(typeGroupData_p); + const Vec* icon_pos = getIconPosition(typeGroupData_p); if (tmp == 0) { if (mRoomNoSingle != typeGroupData_p->getRoomNo()) {