diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2021-05-16 20:39:53 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2021-05-16 20:39:53 -0400 |
commit | dc13d38ac229697e3c4bbbadf943fc91bbb2667a (patch) | |
tree | 75042219766c1430794a84fa169f4644a0a87e5e | |
parent | e22dc9134171fe4b24cafdfe15619ba5939d3608 (diff) |
Fix prototypes in module 52
-rw-r--r-- | CMakeLists.txt | 5 | ||||
-rw-r--r-- | arm9/CMakeLists.txt | 18 | ||||
-rw-r--r-- | arm9/modules/52/include/module_52.h | 28 | ||||
-rw-r--r-- | arm9/modules/52/src/module_52.c | 633 |
4 files changed, 176 insertions, 508 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index d0806d0f..92d8aea2 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,10 +15,7 @@ endif(APPLE) add_compile_options(-fms-extensions) -file(GLOB_RECURSE SOURCES RELATIVE ${CMAKE_SOURCE_DIR} "*.c" "*.cpp") - -add_executable(PokeDiamond ${SOURCES}) -target_include_directories(PokeDiamond PRIVATE include include-mw arm9/lib/include arm7/lib/include arm9/modules/05/include arm9/modules/21/include arm9/modules/59/include arm9/modules/63/include) +add_subdirectory(arm9) add_executable(calcrom .github/calcrom/calcrom.cpp) target_include_directories(calcrom PRIVATE /usr/local/include) diff --git a/arm9/CMakeLists.txt b/arm9/CMakeLists.txt new file mode 100644 index 00000000..9170d823 --- /dev/null +++ b/arm9/CMakeLists.txt @@ -0,0 +1,18 @@ +cmake_minimum_required (VERSION 3.15) +set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") +set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") +project(DP_Arm9) +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_C_STANDARD 11) + +# TODO: Add commands + +enable_language(ASM) + +add_compile_options(-fms-extensions) + +file(GLOB_RECURSE SOURCES "*.c" "*.cpp") +file(GLOB MODULE_INC modules/*/include) + +add_executable(DP_Arm9 ${SOURCES}) +target_include_directories(DP_Arm9 PRIVATE ../include ../include-mw lib/include ${MODULE_INC}) diff --git a/arm9/modules/52/include/module_52.h b/arm9/modules/52/include/module_52.h index 4c47a82d..0abc13e1 100644 --- a/arm9/modules/52/include/module_52.h +++ b/arm9/modules/52/include/module_52.h @@ -13,30 +13,22 @@ #include "unk_02024E64.h" #include "unk_020286F8.h" -const u8 MOD52_021D76F8[]; +const u16 MOD52_021D76F8[]; -THUMB_FUNC int MOD52_021D74E0(); -THUMB_FUNC int MOD52_021D74F8(struct UnkStruct_02006234 *param0); -THUMB_FUNC int MOD52_021D750C(); +THUMB_FUNC BOOL MOD52_021D74E0(); +THUMB_FUNC BOOL MOD52_021D74F8(struct UnkStruct_02006234 *param0, u32 *unused); +THUMB_FUNC BOOL MOD52_021D750C(); -THUMB_FUNC int MOD52_021D7528(); -THUMB_FUNC int MOD52_021D7540(struct UnkStruct_02006234 *param0); -THUMB_FUNC int MOD52_021D7560(); +THUMB_FUNC BOOL MOD52_021D7528(); +THUMB_FUNC BOOL MOD52_021D7540(struct UnkStruct_02006234 *param0, u32 *unused); +THUMB_FUNC BOOL MOD52_021D7560(); -THUMB_FUNC int MOD52_021D757C(); -THUMB_FUNC int MOD52_021D7594(struct UnkStruct_02006234 *param0); -THUMB_FUNC int MOD52_021D75E8(); +THUMB_FUNC BOOL MOD52_021D757C(); +THUMB_FUNC BOOL MOD52_021D7594(struct UnkStruct_02006234 *param0, u32 *unused); +THUMB_FUNC BOOL MOD52_021D75E8(); THUMB_FUNC void MOD52_021D7604(u32 heap_id, struct SaveBlock2 *sav2, BOOL set_trainerid); THUMB_FUNC void MOD52_021D7688(u32 param0, struct SaveBlock2 *sav2); THUMB_FUNC void MOD52_021D769C(u32 param0, struct SaveBlock2 *sav2); -struct MOD52_Struct -{ - int (*func1)(void); - int (*func2)(struct UnkStruct_02006234 *param0); - int (*func3)(void); - u32 terminator; -}; - #endif // POKEDIAMOND_MODULE_52_H
\ No newline at end of file diff --git a/arm9/modules/52/src/module_52.c b/arm9/modules/52/src/module_52.c index 39a16495..52cba975 100644 --- a/arm9/modules/52/src/module_52.c +++ b/arm9/modules/52/src/module_52.c @@ -9,20 +9,23 @@ extern struct Unk21DBE18 UNK_020F2B8C; extern void FUN_02015E3C(struct IGT *igt); extern int FUN_02053678(u32 random, u32 gender, u32 param2); -extern void FUN_020250C4(void *sav_ptr, u32 heap_id, const u8 param2[], u32 param3); +extern void FUN_020250C4(void *sav_ptr, u32 heap_id, const u16 param2[], u32 param3); extern void FUN_020377E0(struct SaveBlock2 *sav2); extern void FUN_0205ECD4(struct ScriptState *script_state); -THUMB_FUNC int MOD52_021D74E0() +THUMB_FUNC BOOL MOD52_021D74E0(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_0201681C(3, 0x4d, 2 << 16); InitializeMainRNG(); return 1; } -THUMB_FUNC int MOD52_021D74F8(struct UnkStruct_02006234 *param0) +THUMB_FUNC BOOL MOD52_021D74F8(struct UnkStruct_02006234 *param0, u32 *unused) { +#pragma unused(unused) struct SaveBlock2 *sav2 = (struct SaveBlock2 *)OverlayManager_GetField18(param0)[2]; // weird MOD52_021D769C(0x4d, sav2); @@ -30,24 +33,29 @@ THUMB_FUNC int MOD52_021D74F8(struct UnkStruct_02006234 *param0) return 1; } -THUMB_FUNC int MOD52_021D750C() +THUMB_FUNC BOOL MOD52_021D750C(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_020168D0(0x4d); RegisterMainOverlay(0XFFFFFFFF, &UNK_020FD144); return 1; } -THUMB_FUNC int MOD52_021D7528() +THUMB_FUNC BOOL MOD52_021D7528(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_0201681C(3, 0x4d, 2 << 16); InitializeMainRNG(); return 1; } -THUMB_FUNC int MOD52_021D7540(struct UnkStruct_02006234 *param0) +THUMB_FUNC BOOL MOD52_021D7540(struct UnkStruct_02006234 *param0, u32 *unused) { +#pragma unused(unused) struct SaveBlock2 *sav2 = (struct SaveBlock2 *)OverlayManager_GetField18(param0)[2]; // weird MOD52_021D7604(0x4d, sav2, 1); @@ -57,24 +65,29 @@ THUMB_FUNC int MOD52_021D7540(struct UnkStruct_02006234 *param0) return 1; } -THUMB_FUNC int MOD52_021D7560() +THUMB_FUNC BOOL MOD52_021D7560(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_020168D0(0x4d); RegisterMainOverlay(0xFFFFFFFF, &UNK_020F2B7C); return 1; } -THUMB_FUNC int MOD52_021D757C() +THUMB_FUNC BOOL MOD52_021D757C(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_0201681C(3, 0x4d, 2 << 16); InitializeMainRNG(); return 1; } -THUMB_FUNC int MOD52_021D7594(struct UnkStruct_02006234 *param0) +THUMB_FUNC BOOL MOD52_021D7594(struct UnkStruct_02006234 *param0, u32 *unused) { +#pragma unused(unused) struct SaveBlock2 *sav2 = (struct SaveBlock2 *)OverlayManager_GetField18(param0)[2]; // weird struct SavSysInfo *sav2_info = Sav2_SysInfo_get(sav2); @@ -93,8 +106,10 @@ THUMB_FUNC int MOD52_021D7594(struct UnkStruct_02006234 *param0) return 1; } -THUMB_FUNC int MOD52_021D75E8() +THUMB_FUNC BOOL MOD52_021D75E8(struct UnkStruct_02006234 *arg1, u32 *arg2) { +#pragma unused(arg1) +#pragma unused(arg2) FUN_020168D0(0x4d); RegisterMainOverlay(0XFFFFFFFF, &UNK_020F2B8C); @@ -150,498 +165,144 @@ THUMB_FUNC void MOD52_021D769C(u32 unused, struct SaveBlock2 *sav2) FUN_0205ECD4(SavArray_Flags_get(sav2)); } -const struct MOD52_Struct MOD52_021D76E8 = { +const struct Unk21DBE18 MOD52_021D76E8 = { MOD52_021D74E0, MOD52_021D74F8, MOD52_021D750C, 0xFFFFFFFF, }; -const struct MOD52_Struct MOD52_021D76D8 = { +const struct Unk21DBE18 MOD52_021D76D8 = { MOD52_021D7528, MOD52_021D7540, MOD52_021D7560, 0xFFFFFFFF, }; -const struct MOD52_Struct MOD52_021D76C8 = { +const struct Unk21DBE18 MOD52_021D76C8 = { MOD52_021D757C, MOD52_021D7594, MOD52_021D75E8, 0xFFFFFFFF, }; -const u8 MOD52_021D76F8[] = { - 0x9B, - 0x00, - 0x01, - 0x00, - 0x95, - 0x00, - 0x01, - 0x00, - 0x96, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x02, - 0x00, - 0xA5, - 0x00, - 0x02, - 0x00, - 0x95, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x02, - 0x00, - 0x9E, - 0x00, - 0x01, - 0x00, - 0xA7, - 0x00, - 0x02, - 0x00, - 0xA7, - 0x00, - 0x02, - 0x00, - 0xAA, - 0x00, - 0x01, - 0x00, - 0x95, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x01, - 0x00, - 0x98, - 0x00, - 0x01, - 0x00, - 0x98, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x01, - 0x00, - 0x95, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x01, - 0x00, - 0x9B, - 0x00, - 0x01, - 0x00, - 0xA5, - 0x00, - 0x01, - 0x00, - 0xA6, - 0x00, - 0x02, - 0x00, - 0xA4, - 0x00, - 0x02, - 0x00, - 0xA5, - 0x00, - 0x02, - 0x00, - 0xA8, - 0x00, - 0x02, - 0x00, - 0x9A, - 0x00, - 0x01, - 0x00, - 0x96, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x01, - 0x00, - 0x9C, - 0x00, - 0x01, - 0x00, - 0xA6, - 0x00, - 0x01, - 0x00, - 0xA6, - 0x00, - 0x01, - 0x00, - 0x9F, - 0x00, - 0x01, - 0x00, - 0x99, - 0x00, - 0x01, - 0x00, - 0x99, - 0x00, - 0x01, - 0x00, - 0xA4, - 0x00, - 0x01, - 0x00, - 0xA8, - 0x00, - 0x01, - 0x00, - 0x9E, - 0x00, - 0x01, - 0x00, - 0x96, - 0x00, - 0x01, - 0x00, - 0xA0, - 0x00, - 0x01, - 0x00, - 0xA2, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0x99, - 0x00, - 0x01, - 0x00, - 0xA3, - 0x00, - 0x01, - 0x00, - 0xAD, - 0x00, - 0x01, - 0x00, - 0x9E, - 0x00, - 0x01, - 0x00, - 0x99, - 0x00, - 0x01, - 0x00, - 0xAE, - 0x00, - 0x01, - 0x00, - 0x9D, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0xA8, - 0x00, - 0x01, - 0x00, - 0xA8, - 0x00, - 0x01, - 0x00, - 0xA8, - 0x00, - 0x01, - 0x00, - 0x9C, - 0x00, - 0x01, - 0x00, - 0x9C, - 0x00, - 0x01, - 0x00, - 0xA6, - 0x00, - 0x01, - 0x00, - 0xA6, - 0x00, - 0x01, - 0x00, - 0xA2, - 0x00, - 0x01, - 0x00, - 0xA3, - 0x00, - 0x01, - 0x00, - 0x98, - 0x00, - 0x01, - 0x00, - 0x98, - 0x00, - 0x01, - 0x00, - 0x95, - 0x00, - 0x01, - 0x00, - 0x9E, - 0x00, - 0x01, - 0x00, - 0x96, - 0x00, - 0x01, - 0x00, - 0xA9, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x02, - 0x00, - 0xA5, - 0x00, - 0x02, - 0x00, - 0xA0, - 0x00, - 0x01, - 0x00, - 0xA1, - 0x00, - 0x01, - 0x00, - 0x98, - 0x00, - 0x01, - 0x00, - 0x9C, - 0x00, - 0x01, - 0x00, - 0x9F, - 0x00, - 0x01, - 0x00, - 0xA8, - 0x00, - 0x02, - 0x00, - 0x9A, - 0x00, - 0x01, - 0x00, - 0x97, - 0x00, - 0x01, - 0x00, - 0xA1, - 0x00, - 0x01, - 0x00, - 0xAC, - 0x00, - 0x01, - 0x00, - 0xA0, - 0x00, - 0x02, - 0x00, - 0xA1, - 0x00, - 0x02, - 0x00, - 0xA2, - 0x00, - 0x02, - 0x00, - 0xAB, - 0x00, - 0x01, - 0x00, - 0x9E, - 0x00, - 0x02, - 0x00, - 0xA5, - 0x00, - 0x03, - 0x00, - 0xA6, - 0x00, - 0x03, - 0x00, - 0xA7, - 0x00, - 0x03, - 0x00, - 0xA9, - 0x00, - 0x01, - 0x00, - 0xA9, - 0x00, - 0x01, - 0x00, - 0xAC, - 0x00, - 0x02, - 0x00, - 0xAC, - 0x00, - 0x02, - 0x00, - 0xAA, - 0x00, - 0x01, - 0x00, - 0xAA, - 0x00, - 0x01, - 0x00, - 0xAE, - 0x00, - 0x01, - 0x00, - 0xAE, - 0x00, - 0x01, - 0x00, - 0xAB, - 0x00, - 0x01, - 0x00, - 0xAB, - 0x00, - 0x01, - 0x00, - 0xA9, - 0x00, - 0x01, - 0x00, - 0xA9, - 0x00, - 0x01, - 0x00, - 0xAC, - 0x00, - 0x01, - 0x00, - 0xAC, - 0x00, - 0x01, - 0x00, - 0xAE, - 0x00, - 0x01, - 0x00, - 0xAE, - 0x00, - 0x01, - 0x00, - 0xAD, - 0x00, - 0x01, - 0x00, - 0xAD, - 0x00, - 0x01, - 0x00, - 0xAB, - 0x00, - 0x01, - 0x00, - 0xAB, - 0x00, - 0x01, - 0x00, - 0x9D, - 0x00, - 0x01, - 0x00, - 0x9A, - 0x00, - 0x01, - 0x00, - 0xAB, - 0x00, - 0x02, - 0x00, - 0xAD, - 0x00, - 0x02, - 0x00, - 0xAA, - 0x00, - 0x02, - 0x00, - 0xAA, - 0x00, - 0x02, - 0x00, - 0xAD, - 0x00, - 0x01, - 0x00, - 0xAD, - 0x00, - 0x01, - 0x00, +const u16 MOD52_021D76F8[] = { + ITEM_ORAN_BERRY, 1, + ITEM_CHERI_BERRY, 1, + ITEM_CHESTO_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_ORAN_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_RAZZ_BERRY, 2, + ITEM_BLUK_BERRY, 2, + ITEM_CHERI_BERRY, 1, + ITEM_ORAN_BERRY, 2, + ITEM_SITRUS_BERRY, 1, + ITEM_WEPEAR_BERRY, 2, + ITEM_WEPEAR_BERRY, 2, + ITEM_KELPSY_BERRY, 1, + ITEM_CHERI_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_ORAN_BERRY, 1, + ITEM_ORAN_BERRY, 1, + ITEM_RAWST_BERRY, 1, + ITEM_RAWST_BERRY, 1, + ITEM_RAZZ_BERRY, 1, + ITEM_RAZZ_BERRY, 1, + ITEM_CHERI_BERRY, 1, + ITEM_ORAN_BERRY, 1, + ITEM_ORAN_BERRY, 1, + ITEM_BLUK_BERRY, 1, + ITEM_NANAB_BERRY, 2, + ITEM_RAZZ_BERRY, 2, + ITEM_BLUK_BERRY, 2, + ITEM_PINAP_BERRY, 2, + ITEM_LEPPA_BERRY, 1, + ITEM_CHESTO_BERRY, 1, + ITEM_RAZZ_BERRY, 1, + ITEM_RAZZ_BERRY, 1, + ITEM_PERSIM_BERRY, 1, + ITEM_NANAB_BERRY, 1, + ITEM_NANAB_BERRY, 1, + ITEM_FIGY_BERRY, 1, + ITEM_ASPEAR_BERRY, 1, + ITEM_ASPEAR_BERRY, 1, + ITEM_RAZZ_BERRY, 1, + ITEM_PINAP_BERRY, 1, + ITEM_SITRUS_BERRY, 1, + ITEM_CHESTO_BERRY, 1, + ITEM_WIKI_BERRY, 1, + ITEM_AGUAV_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_ASPEAR_BERRY, 1, + ITEM_IAPAPA_BERRY, 1, + ITEM_GREPA_BERRY, 1, + ITEM_SITRUS_BERRY, 1, + ITEM_ASPEAR_BERRY, 1, + ITEM_TAMATO_BERRY, 1, + ITEM_LUM_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_PINAP_BERRY, 1, + ITEM_PINAP_BERRY, 1, + ITEM_PINAP_BERRY, 1, + ITEM_PERSIM_BERRY, 1, + ITEM_PERSIM_BERRY, 1, + ITEM_NANAB_BERRY, 1, + ITEM_NANAB_BERRY, 1, + ITEM_AGUAV_BERRY, 1, + ITEM_IAPAPA_BERRY, 1, + ITEM_RAWST_BERRY, 1, + ITEM_RAWST_BERRY, 1, + ITEM_CHERI_BERRY, 1, + ITEM_SITRUS_BERRY, 1, + ITEM_CHESTO_BERRY, 1, + ITEM_POMEG_BERRY, 1, + ITEM_PECHA_BERRY, 2, + ITEM_BLUK_BERRY, 2, + ITEM_WIKI_BERRY, 1, + ITEM_MAGO_BERRY, 1, + ITEM_RAWST_BERRY, 1, + ITEM_PERSIM_BERRY, 1, + ITEM_FIGY_BERRY, 1, + ITEM_PINAP_BERRY, 2, + ITEM_LEPPA_BERRY, 1, + ITEM_PECHA_BERRY, 1, + ITEM_MAGO_BERRY, 1, + ITEM_HONDEW_BERRY, 1, + ITEM_WIKI_BERRY, 2, + ITEM_MAGO_BERRY, 2, + ITEM_AGUAV_BERRY, 2, + ITEM_QUALOT_BERRY, 1, + ITEM_SITRUS_BERRY, 2, + ITEM_BLUK_BERRY, 3, + ITEM_NANAB_BERRY, 3, + ITEM_WEPEAR_BERRY, 3, + ITEM_POMEG_BERRY, 1, + ITEM_POMEG_BERRY, 1, + ITEM_HONDEW_BERRY, 2, + ITEM_HONDEW_BERRY, 2, + ITEM_KELPSY_BERRY, 1, + ITEM_KELPSY_BERRY, 1, + ITEM_TAMATO_BERRY, 1, + ITEM_TAMATO_BERRY, 1, + ITEM_QUALOT_BERRY, 1, + ITEM_QUALOT_BERRY, 1, + ITEM_POMEG_BERRY, 1, + ITEM_POMEG_BERRY, 1, + ITEM_HONDEW_BERRY, 1, + ITEM_HONDEW_BERRY, 1, + ITEM_TAMATO_BERRY, 1, + ITEM_TAMATO_BERRY, 1, + ITEM_GREPA_BERRY, 1, + ITEM_GREPA_BERRY, 1, + ITEM_QUALOT_BERRY, 1, + ITEM_QUALOT_BERRY, 1, + ITEM_LUM_BERRY, 1, + ITEM_LEPPA_BERRY, 1, + ITEM_QUALOT_BERRY, 2, + ITEM_GREPA_BERRY, 2, + ITEM_KELPSY_BERRY, 2, + ITEM_KELPSY_BERRY, 2, + ITEM_GREPA_BERRY, 1, + ITEM_GREPA_BERRY, 1, };
\ No newline at end of file |