diff --git a/README.MD b/README.MD index c88a8667b..eb3bae0bf 100644 --- a/README.MD +++ b/README.MD @@ -78,6 +78,7 @@ pikmin2.usa.dol: `sha1: 90d328bf8f190c90472e8c19e7e53c6ad0fe0d1a` - plugProjectOgawaU/ogSceneWorldMapInfoWindow0.cpp - plugProjectKandoU - plugProjectKandoU/baseHIOparms.cpp + - plugProjectKandoU/gameChallenge2D.cpp - plugProjectKandoU/gameHighscore.cpp - plugProjectKandoU/gameIconTexture.cpp - plugProjectKandoU/gameSoundEvent.cpp diff --git a/asm/plugProjectKandoU/gameChallenge2D.s b/asm/plugProjectKandoU/gameChallenge2D.s deleted file mode 100644 index 3f58e29be..000000000 --- a/asm/plugProjectKandoU/gameChallenge2D.s +++ /dev/null @@ -1,193 +0,0 @@ -.include "macros.inc" -.section .rodata # 0x804732E0 - 0x8049E220 -.balign 8 -.global lbl_80483AB0 -lbl_80483AB0: - .asciz "gameChallenge2D.cpp" -.global lbl_80483AC4 -lbl_80483AC4: - .asciz "P2Assert" - .skip 3 - -.section .sdata2, "a" # 0x80516360 - 0x80520E40 -.balign 8 -.global lbl_8051A3B8 -lbl_8051A3B8: - .4byte 0x5A414E4E - .4byte 0x454E0A00 - -.section .text, "ax" # 0x800056C0 - 0x80472F00 -.global __ct__Q24Game21Challenge2D_TitleInfoFi -__ct__Q24Game21Challenge2D_TitleInfoFi: -/* 802350A0 00231FE0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802350A4 00231FE4 7C 08 02 A6 */ mflr r0 -/* 802350A8 00231FE8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802350AC 00231FEC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802350B0 00231FF0 7C 9F 23 78 */ mr r31, r4 -/* 802350B4 00231FF4 93 C1 00 08 */ stw r30, 8(r1) -/* 802350B8 00231FF8 7C 7E 1B 78 */ mr r30, r3 -/* 802350BC 00231FFC 1C 7F 00 24 */ mulli r3, r31, 0x24 -/* 802350C0 00232000 38 63 00 10 */ addi r3, r3, 0x10 -/* 802350C4 00232004 4B DE EE E9 */ bl __nwa__FUl -/* 802350C8 00232008 3C 80 80 23 */ lis r4, __ct__Q34Game21Challenge2D_TitleInfo4InfoFv@ha -/* 802350CC 0023200C 7F E7 FB 78 */ mr r7, r31 -/* 802350D0 00232010 38 84 51 04 */ addi r4, r4, __ct__Q34Game21Challenge2D_TitleInfo4InfoFv@l -/* 802350D4 00232014 38 A0 00 00 */ li r5, 0 -/* 802350D8 00232018 38 C0 00 24 */ li r6, 0x24 -/* 802350DC 0023201C 4B E8 C9 15 */ bl __construct_new_array -/* 802350E0 00232020 90 7E 00 00 */ stw r3, 0(r30) -/* 802350E4 00232024 7F C3 F3 78 */ mr r3, r30 -/* 802350E8 00232028 93 FE 00 04 */ stw r31, 4(r30) -/* 802350EC 0023202C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802350F0 00232030 83 C1 00 08 */ lwz r30, 8(r1) -/* 802350F4 00232034 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802350F8 00232038 7C 08 03 A6 */ mtlr r0 -/* 802350FC 0023203C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80235100 00232040 4E 80 00 20 */ blr - -.global __ct__Q34Game21Challenge2D_TitleInfo4InfoFv -__ct__Q34Game21Challenge2D_TitleInfo4InfoFv: -/* 80235104 00232044 38 00 00 00 */ li r0, 0 -/* 80235108 00232048 98 03 00 20 */ stb r0, 0x20(r3) -/* 8023510C 0023204C 90 03 00 00 */ stw r0, 0(r3) -/* 80235110 00232050 90 03 00 08 */ stw r0, 8(r3) -/* 80235114 00232054 90 03 00 04 */ stw r0, 4(r3) -/* 80235118 00232058 90 03 00 0C */ stw r0, 0xc(r3) -/* 8023511C 0023205C 90 03 00 10 */ stw r0, 0x10(r3) -/* 80235120 00232060 90 03 00 18 */ stw r0, 0x18(r3) -/* 80235124 00232064 90 03 00 14 */ stw r0, 0x14(r3) -/* 80235128 00232068 90 03 00 1C */ stw r0, 0x1c(r3) -/* 8023512C 0023206C 98 03 00 20 */ stb r0, 0x20(r3) -/* 80235130 00232070 4E 80 00 20 */ blr - -.global __cl__Q24Game21Challenge2D_TitleInfoFi -__cl__Q24Game21Challenge2D_TitleInfoFi: -/* 80235134 00232074 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80235138 00232078 7C 08 02 A6 */ mflr r0 -/* 8023513C 0023207C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80235140 00232080 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80235144 00232084 7C 9F 23 79 */ or. r31, r4, r4 -/* 80235148 00232088 93 C1 00 08 */ stw r30, 8(r1) -/* 8023514C 0023208C 7C 7E 1B 78 */ mr r30, r3 -/* 80235150 00232090 38 60 00 00 */ li r3, 0 -/* 80235154 00232094 41 80 00 14 */ blt lbl_80235168 -/* 80235158 00232098 80 1E 00 04 */ lwz r0, 4(r30) -/* 8023515C 0023209C 7C 1F 00 00 */ cmpw r31, r0 -/* 80235160 002320A0 40 80 00 08 */ bge lbl_80235168 -/* 80235164 002320A4 38 60 00 01 */ li r3, 1 -lbl_80235168: -/* 80235168 002320A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8023516C 002320AC 40 82 00 20 */ bne lbl_8023518C -/* 80235170 002320B0 3C 60 80 48 */ lis r3, lbl_80483AB0@ha -/* 80235174 002320B4 3C A0 80 48 */ lis r5, lbl_80483AC4@ha -/* 80235178 002320B8 38 63 3A B0 */ addi r3, r3, lbl_80483AB0@l -/* 8023517C 002320BC 38 80 00 1F */ li r4, 0x1f -/* 80235180 002320C0 38 A5 3A C4 */ addi r5, r5, lbl_80483AC4@l -/* 80235184 002320C4 4C C6 31 82 */ crclr 6 -/* 80235188 002320C8 4B DF 54 B9 */ bl panic_f__12JUTExceptionFPCciPCce -lbl_8023518C: -/* 8023518C 002320CC 1C 1F 00 24 */ mulli r0, r31, 0x24 -/* 80235190 002320D0 80 7E 00 00 */ lwz r3, 0(r30) -/* 80235194 002320D4 7C 63 02 14 */ add r3, r3, r0 -/* 80235198 002320D8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8023519C 002320DC 83 C1 00 08 */ lwz r30, 8(r1) -/* 802351A0 002320E0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802351A4 002320E4 7C 08 03 A6 */ mtlr r0 -/* 802351A8 002320E8 38 21 00 10 */ addi r1, r1, 0x10 -/* 802351AC 002320EC 4E 80 00 20 */ blr - -.global __ct__Q24Game14Vs2D_TitleInfoFi -__ct__Q24Game14Vs2D_TitleInfoFi: -/* 802351B0 002320F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802351B4 002320F4 7C 08 02 A6 */ mflr r0 -/* 802351B8 002320F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802351BC 002320FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802351C0 00232100 7C 9F 23 78 */ mr r31, r4 -/* 802351C4 00232104 93 C1 00 08 */ stw r30, 8(r1) -/* 802351C8 00232108 7C 7E 1B 78 */ mr r30, r3 -/* 802351CC 0023210C 54 83 10 3A */ slwi r3, r4, 2 -/* 802351D0 00232110 38 63 00 10 */ addi r3, r3, 0x10 -/* 802351D4 00232114 4B DE ED D9 */ bl __nwa__FUl -/* 802351D8 00232118 3C 80 80 23 */ lis r4, __ct__Q34Game14Vs2D_TitleInfo4InfoFv@ha -/* 802351DC 0023211C 7F E7 FB 78 */ mr r7, r31 -/* 802351E0 00232120 38 84 52 14 */ addi r4, r4, __ct__Q34Game14Vs2D_TitleInfo4InfoFv@l -/* 802351E4 00232124 38 A0 00 00 */ li r5, 0 -/* 802351E8 00232128 38 C0 00 04 */ li r6, 4 -/* 802351EC 0023212C 4B E8 C8 05 */ bl __construct_new_array -/* 802351F0 00232130 90 7E 00 00 */ stw r3, 0(r30) -/* 802351F4 00232134 7F C3 F3 78 */ mr r3, r30 -/* 802351F8 00232138 93 FE 00 04 */ stw r31, 4(r30) -/* 802351FC 0023213C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80235200 00232140 83 C1 00 08 */ lwz r30, 8(r1) -/* 80235204 00232144 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80235208 00232148 7C 08 03 A6 */ mtlr r0 -/* 8023520C 0023214C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80235210 00232150 4E 80 00 20 */ blr - -.global __ct__Q34Game14Vs2D_TitleInfo4InfoFv -__ct__Q34Game14Vs2D_TitleInfo4InfoFv: -/* 80235214 00232154 38 00 00 00 */ li r0, 0 -/* 80235218 00232158 90 03 00 00 */ stw r0, 0(r3) -/* 8023521C 0023215C 4E 80 00 20 */ blr - -.global __cl__Q24Game14Vs2D_TitleInfoFi -__cl__Q24Game14Vs2D_TitleInfoFi: -/* 80235220 00232160 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80235224 00232164 7C 08 02 A6 */ mflr r0 -/* 80235228 00232168 90 01 00 14 */ stw r0, 0x14(r1) -/* 8023522C 0023216C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80235230 00232170 7C 9F 23 79 */ or. r31, r4, r4 -/* 80235234 00232174 93 C1 00 08 */ stw r30, 8(r1) -/* 80235238 00232178 7C 7E 1B 78 */ mr r30, r3 -/* 8023523C 0023217C 41 80 00 10 */ blt lbl_8023524C -/* 80235240 00232180 80 1E 00 04 */ lwz r0, 4(r30) -/* 80235244 00232184 7C 1F 00 00 */ cmpw r31, r0 -/* 80235248 00232188 41 80 00 1C */ blt lbl_80235264 -lbl_8023524C: -/* 8023524C 0023218C 3C 60 80 48 */ lis r3, lbl_80483AB0@ha -/* 80235250 00232190 38 80 00 34 */ li r4, 0x34 -/* 80235254 00232194 38 63 3A B0 */ addi r3, r3, lbl_80483AB0@l -/* 80235258 00232198 38 A2 C0 58 */ addi r5, r2, lbl_8051A3B8@sda21 -/* 8023525C 0023219C 4C C6 31 82 */ crclr 6 -/* 80235260 002321A0 4B DF 53 E1 */ bl panic_f__12JUTExceptionFPCciPCce -lbl_80235264: -/* 80235264 002321A4 2C 1F 00 00 */ cmpwi r31, 0 -/* 80235268 002321A8 38 60 00 00 */ li r3, 0 -/* 8023526C 002321AC 41 80 00 14 */ blt lbl_80235280 -/* 80235270 002321B0 80 1E 00 04 */ lwz r0, 4(r30) -/* 80235274 002321B4 7C 1F 00 00 */ cmpw r31, r0 -/* 80235278 002321B8 40 80 00 08 */ bge lbl_80235280 -/* 8023527C 002321BC 38 60 00 01 */ li r3, 1 -lbl_80235280: -/* 80235280 002321C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 80235284 002321C4 40 82 00 20 */ bne lbl_802352A4 -/* 80235288 002321C8 3C 60 80 48 */ lis r3, lbl_80483AB0@ha -/* 8023528C 002321CC 3C A0 80 48 */ lis r5, lbl_80483AC4@ha -/* 80235290 002321D0 38 63 3A B0 */ addi r3, r3, lbl_80483AB0@l -/* 80235294 002321D4 38 80 00 36 */ li r4, 0x36 -/* 80235298 002321D8 38 A5 3A C4 */ addi r5, r5, lbl_80483AC4@l -/* 8023529C 002321DC 4C C6 31 82 */ crclr 6 -/* 802352A0 002321E0 4B DF 53 A1 */ bl panic_f__12JUTExceptionFPCciPCce -lbl_802352A4: -/* 802352A4 002321E4 80 7E 00 00 */ lwz r3, 0(r30) -/* 802352A8 002321E8 57 E0 10 3A */ slwi r0, r31, 2 -/* 802352AC 002321EC 7C 63 02 14 */ add r3, r3, r0 -/* 802352B0 002321F0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802352B4 002321F4 83 C1 00 08 */ lwz r30, 8(r1) -/* 802352B8 002321F8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802352BC 002321FC 7C 08 03 A6 */ mtlr r0 -/* 802352C0 00232200 38 21 00 10 */ addi r1, r1, 0x10 -/* 802352C4 00232204 4E 80 00 20 */ blr - -.global __ct__Q24Game22Challenge2D_ResultInfoFv -__ct__Q24Game22Challenge2D_ResultInfoFv: -/* 802352C8 00232208 38 00 00 00 */ li r0, 0 -/* 802352CC 0023220C 98 03 00 00 */ stb r0, 0(r3) -/* 802352D0 00232210 98 03 00 00 */ stb r0, 0(r3) -/* 802352D4 00232214 90 03 00 08 */ stw r0, 8(r3) -/* 802352D8 00232218 90 03 00 0C */ stw r0, 0xc(r3) -/* 802352DC 0023221C 90 03 00 10 */ stw r0, 0x10(r3) -/* 802352E0 00232220 90 03 00 14 */ stw r0, 0x14(r3) -/* 802352E4 00232224 90 03 00 1C */ stw r0, 0x1c(r3) -/* 802352E8 00232228 90 03 00 18 */ stw r0, 0x18(r3) -/* 802352EC 0023222C 4E 80 00 20 */ blr diff --git a/include/Game/gameChallenge2D.h b/include/Game/gameChallenge2D.h new file mode 100644 index 000000000..ac615452d --- /dev/null +++ b/include/Game/gameChallenge2D.h @@ -0,0 +1,55 @@ +#ifndef _GAME_CHALLENGE2D_H +#define _GAME_CHALLENGE2D_H + +#include "types.h" +#include "Game/PikiContainer.h" +#include "Game/Highscore.h" +#include "JSystem/JUT/JUTException.h" + +namespace Game { +class Challenge2D_TitleInfo { + struct Info { + Info(); + u32 m_floorCount; // _00 + u32 m_sprayCounts[2]; // _04 + u32 m_0C; // _0C + PikiContainer* m_pPikiContainer; // _10 + Highscore* m_pHighscore1; // _14 + Highscore* m_pHighscore2; // _18 + u32 m_1C; // _1C + bool m_bool; // _20 + }; + Info* pInfoArray; // _00 + int m_count; // _04 + + Challenge2D_TitleInfo(int); + Challenge2D_TitleInfo::Info* operator()(int); +}; + +class Challenge2D_ResultInfo { + bool m_bool; // _00 + u32 m_04; // _04 + u32 m_08; // _08 + u32 m_0C; // _0C + u32 m_10; // _10 + u32 m_14; // _14 + u32 m_18; // _18 + u32 m_1C; // _1C + + Challenge2D_ResultInfo(); +}; + +class Vs2D_TitleInfo { + struct Info { + Info(); + u32 m_info; // _00 + }; + Info* pInfoArray; // _00 + int m_infoCount; // _04 + + Vs2D_TitleInfo(int); + Vs2D_TitleInfo::Info* operator()(int); +}; +} // namespace Game + +#endif diff --git a/obj_files.mk b/obj_files.mk index 2fe9a6266..da418d6f7 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -612,7 +612,7 @@ KANDO:=\ $(BUILD_DIR)/src/plugProjectKandoU/gameHighscore.o\ $(BUILD_DIR)/asm/plugProjectKandoU/gamePlayCommonData.o\ $(BUILD_DIR)/src/plugProjectKandoU/pelletCarry.o\ - $(BUILD_DIR)/asm/plugProjectKandoU/gameChallenge2D.o\ + $(BUILD_DIR)/src/plugProjectKandoU/gameChallenge2D.o\ $(BUILD_DIR)/asm/plugProjectKandoU/vsTekiMgr.o\ $(BUILD_DIR)/asm/plugProjectKandoU/vsCardMgr.o\ $(BUILD_DIR)/asm/plugProjectKandoU/aiRescue.o\ diff --git a/src/plugProjectKandoU/gameChallenge2D.cpp b/src/plugProjectKandoU/gameChallenge2D.cpp index 67a227f8f..60160f851 100644 --- a/src/plugProjectKandoU/gameChallenge2D.cpp +++ b/src/plugProjectKandoU/gameChallenge2D.cpp @@ -1,23 +1,5 @@ #include "types.h" - -/* - Generated from dpostproc - - .section .rodata # 0x804732E0 - 0x8049E220 - .global lbl_80483AB0 - lbl_80483AB0: - .asciz "gameChallenge2D.cpp" - .global lbl_80483AC4 - lbl_80483AC4: - .asciz "P2Assert" - .skip 3 - - .section .sdata2, "a" # 0x80516360 - 0x80520E40 - .global lbl_8051A3B8 - lbl_8051A3B8: - .4byte 0x5A414E4E - .4byte 0x454E0A00 -*/ +#include "Game/gameChallenge2D.h" namespace Game { @@ -26,35 +8,10 @@ namespace Game { * Address: 802350A0 * Size: 000064 */ -Challenge2D_TitleInfo::Challenge2D_TitleInfo(int) +Challenge2D_TitleInfo::Challenge2D_TitleInfo(int count) { - /* - stwu r1, -0x10(r1) - mflr r0 - stw r0, 0x14(r1) - stw r31, 0xc(r1) - mr r31, r4 - stw r30, 8(r1) - mr r30, r3 - mulli r3, r31, 0x24 - addi r3, r3, 0x10 - bl __nwa__FUl - lis r4, __ct__Q34Game21Challenge2D_TitleInfo4InfoFv@ha - mr r7, r31 - addi r4, r4, __ct__Q34Game21Challenge2D_TitleInfo4InfoFv@l - li r5, 0 - li r6, 0x24 - bl __construct_new_array - stw r3, 0(r30) - mr r3, r30 - stw r31, 4(r30) - lwz r31, 0xc(r1) - lwz r30, 8(r1) - lwz r0, 0x14(r1) - mtlr r0 - addi r1, r1, 0x10 - blr - */ + pInfoArray = new Info[count]; + m_count = count; } /* @@ -64,20 +21,16 @@ Challenge2D_TitleInfo::Challenge2D_TitleInfo(int) */ Challenge2D_TitleInfo::Info::Info(void) { - /* - li r0, 0 - stb r0, 0x20(r3) - stw r0, 0(r3) - stw r0, 8(r3) - stw r0, 4(r3) - stw r0, 0xc(r3) - stw r0, 0x10(r3) - stw r0, 0x18(r3) - stw r0, 0x14(r3) - stw r0, 0x1c(r3) - stb r0, 0x20(r3) - blr - */ + m_bool = false; + m_floorCount = 0; + m_sprayCounts[1] = 0; + m_sprayCounts[0] = 0; + m_0C = 0; + m_pPikiContainer = nullptr; + m_pHighscore2 = nullptr; + m_pHighscore1 = nullptr; + m_1C = 0; + m_bool = false; } /* @@ -85,45 +38,11 @@ Challenge2D_TitleInfo::Info::Info(void) * Address: 80235134 * Size: 00007C */ -void Challenge2D_TitleInfo::operator()(int) +Challenge2D_TitleInfo::Info* Challenge2D_TitleInfo::operator()(int count) { - /* - stwu r1, -0x10(r1) - mflr r0 - stw r0, 0x14(r1) - stw r31, 0xc(r1) - or. r31, r4, r4 - stw r30, 8(r1) - mr r30, r3 - li r3, 0 - blt lbl_80235168 - lwz r0, 4(r30) - cmpw r31, r0 - bge lbl_80235168 - li r3, 1 - -lbl_80235168: - clrlwi. r0, r3, 0x18 - bne lbl_8023518C - lis r3, lbl_80483AB0@ha - lis r5, lbl_80483AC4@ha - addi r3, r3, lbl_80483AB0@l - li r4, 0x1f - addi r5, r5, lbl_80483AC4@l - crclr 6 - bl panic_f__12JUTExceptionFPCciPCce - -lbl_8023518C: - mulli r0, r31, 0x24 - lwz r3, 0(r30) - add r3, r3, r0 - lwz r31, 0xc(r1) - lwz r30, 8(r1) - lwz r0, 0x14(r1) - mtlr r0 - addi r1, r1, 0x10 - blr - */ + bool isLegal = count >= 0 && count < m_count; + P2ASSERTLINE(31, (isLegal)); + return &pInfoArray[count]; } /* @@ -131,35 +50,10 @@ lbl_8023518C: * Address: 802351B0 * Size: 000064 */ -Vs2D_TitleInfo::Vs2D_TitleInfo(int) +Vs2D_TitleInfo::Vs2D_TitleInfo(int count) { - /* - stwu r1, -0x10(r1) - mflr r0 - stw r0, 0x14(r1) - stw r31, 0xc(r1) - mr r31, r4 - stw r30, 8(r1) - mr r30, r3 - slwi r3, r4, 2 - addi r3, r3, 0x10 - bl __nwa__FUl - lis r4, __ct__Q34Game14Vs2D_TitleInfo4InfoFv@ha - mr r7, r31 - addi r4, r4, __ct__Q34Game14Vs2D_TitleInfo4InfoFv@l - li r5, 0 - li r6, 4 - bl __construct_new_array - stw r3, 0(r30) - mr r3, r30 - stw r31, 4(r30) - lwz r31, 0xc(r1) - lwz r30, 8(r1) - lwz r0, 0x14(r1) - mtlr r0 - addi r1, r1, 0x10 - blr - */ + pInfoArray = new Info[count]; + m_infoCount = count; } /* @@ -167,74 +61,20 @@ Vs2D_TitleInfo::Vs2D_TitleInfo(int) * Address: 80235214 * Size: 00000C */ -Vs2D_TitleInfo::Info::Info(void) -{ - /* - li r0, 0 - stw r0, 0(r3) - blr - */ -} +Vs2D_TitleInfo::Info::Info(void) { m_info = 0; } /* * --INFO-- * Address: 80235220 * Size: 0000A8 */ -void Vs2D_TitleInfo::operator()(int) +Vs2D_TitleInfo::Info* Vs2D_TitleInfo::operator()(int infoIndex) { - /* - stwu r1, -0x10(r1) - mflr r0 - stw r0, 0x14(r1) - stw r31, 0xc(r1) - or. r31, r4, r4 - stw r30, 8(r1) - mr r30, r3 - blt lbl_8023524C - lwz r0, 4(r30) - cmpw r31, r0 - blt lbl_80235264 - -lbl_8023524C: - lis r3, lbl_80483AB0@ha - li r4, 0x34 - addi r3, r3, lbl_80483AB0@l - addi r5, r2, lbl_8051A3B8@sda21 - crclr 6 - bl panic_f__12JUTExceptionFPCciPCce - -lbl_80235264: - cmpwi r31, 0 - li r3, 0 - blt lbl_80235280 - lwz r0, 4(r30) - cmpw r31, r0 - bge lbl_80235280 - li r3, 1 - -lbl_80235280: - clrlwi. r0, r3, 0x18 - bne lbl_802352A4 - lis r3, lbl_80483AB0@ha - lis r5, lbl_80483AC4@ha - addi r3, r3, lbl_80483AB0@l - li r4, 0x36 - addi r5, r5, lbl_80483AC4@l - crclr 6 - bl panic_f__12JUTExceptionFPCciPCce - -lbl_802352A4: - lwz r3, 0(r30) - slwi r0, r31, 2 - add r3, r3, r0 - lwz r31, 0xc(r1) - lwz r30, 8(r1) - lwz r0, 0x14(r1) - mtlr r0 - addi r1, r1, 0x10 - blr - */ + bool amLegal = ((infoIndex >= 0)); + JUT_ASSERTLINE(52, (amLegal && (infoIndex < m_infoCount)), "ZANNEN\n"); + bool isLegal = infoIndex >= 0 && infoIndex < m_infoCount; + P2ASSERTLINE(54, (isLegal)); + return &pInfoArray[infoIndex]; } /* @@ -244,17 +84,13 @@ lbl_802352A4: */ Challenge2D_ResultInfo::Challenge2D_ResultInfo(void) { - /* - li r0, 0 - stb r0, 0(r3) - stb r0, 0(r3) - stw r0, 8(r3) - stw r0, 0xc(r3) - stw r0, 0x10(r3) - stw r0, 0x14(r3) - stw r0, 0x1c(r3) - stw r0, 0x18(r3) - blr - */ + m_bool = false; + m_bool = false; + m_08 = 0; + m_0C = 0; + m_10 = 0; + m_14 = 0; + m_1C = 0; + m_18 = 0; } } // namespace Game diff --git a/src/plugProjectKandoU/gameHighscore.cpp b/src/plugProjectKandoU/gameHighscore.cpp index 232d658d5..d0e7623e4 100644 --- a/src/plugProjectKandoU/gameHighscore.cpp +++ b/src/plugProjectKandoU/gameHighscore.cpp @@ -3,28 +3,6 @@ #include "Game/Highscore.h" #include "JSystem/JUT/JUTException.h" -/* - Generated from dpostproc - - .section .rodata # 0x804732E0 - 0x8049E220 - .global lbl_80483A68 - lbl_80483A68: - .asciz "gameHighscore.cpp" - .skip 2 - .global lbl_80483A7C - lbl_80483A7C: - .asciz "P2Assert" - .skip 3 - - .section .data, "wa" # 0x8049E220 - 0x804EFC20 - .global __vt__Q24Game9Highscore - __vt__Q24Game9Highscore: - .4byte 0 - .4byte 0 - .4byte do_higher__Q24Game9HighscoreFii - .4byte 0 -*/ - namespace Game { /*