Merge pull request #488 from ferwardle/decomp/unk_02037C94

Decompile unk_02037C94
This commit is contained in:
Adrienn Tindall
2026-09-20 20:27:32 -05:00
committed by GitHub
22 changed files with 2238 additions and 5536 deletions

View File

@@ -1,244 +0,0 @@
#include <nitro/fs/overlay.h>
#pragma once
.public Sound_Stop
.public sub_0201A728
.public sub_0201A738
.public sub_0201A79C
.public Heap_CreateAtEnd
.public Heap_Destroy
.public Heap_Alloc
.public Heap_Free
.public GF_AssertFail
.public String_New
.public String_Delete
.public CopyU16ArrayToString
.public Save_PrepareForAsyncWrite
.public Save_WriteFileAsync
.public Save_Cancel
.public Save_PlayerData_GetProfile
.public PlayerProfile_GetPlayerName_NewString
.public PlayerProfile_GetTrainerID
.public PlayerProfile_GetTrainerGender
.public PlayerProfile_GetAvatar
.public PlayerProfile_GetLanguage
.public sub_0202C08C
.public sub_0202C090
.public sub_0202C190
.public sub_0202C23C
.public sub_0202C270
.public sub_0202C2B4
.public sub_0202C6F4
.public WiFiHistory_GetLocationSeenState
.public WiFiHistory_SetLocationSeenState
.public sub_02033908
.public sub_02033974
.public sub_02033A0C
.public sub_02033A7C
.public sub_02033AA4
.public sub_02033ACC
.public sub_02033FC4
.public sub_02034044
.public sub_0203410C
.public sub_02034154
.public sub_02034354
.public sub_020343E4
.public sub_02034434
.public sub_02034638
.public sub_02034818
.public sub_0203484C
.public sub_02034884
.public sub_020348A8
.public sub_020348CC
.public sub_02034A20
.public sub_02034B0C
.public sub_02034BE4
.public sub_02034D8C
.public sub_02034DB8
.public sub_02034DE0
.public sub_02034FE8
.public sub_020350A8
.public sub_020351AC
.public sub_0203528C
.public sub_02035630
.public sub_02035650
.public sub_02035664
.public sub_020356C0
.public sub_020356EC
.public sub_020358B0
.public sub_02035ED8
.public sub_02035F14
.public sub_02035FD8
.public sub_02035FE4
.public sub_02036024
.public sub_020360E4
.public sub_0203622C
.public sub_0203624C
.public sub_02036274
.public sub_020367A8
.public sub_02036904
.public sub_020369CC
.public sub_02037184
.public sub_020373B4
.public sub_02037454
.public sub_02037474
.public sub_020374E4
.public sub_0203769C
.public sub_020376E0
.public sub_020376F8
.public sub_02037700
.public sub_0203778C
.public sub_0203786C
.public sub_020378E4
.public sub_02037988
.public sub_02037AC0
.public sub_02037B38
.public sub_02037C94
.public sub_02037D78
.public sub_02037D8C
.public sub_02037DD4
.public sub_02037E1C
.public sub_02037E38
.public sub_02037E9C
.public sub_02037EC0
.public sub_02037EC8
.public sub_02037F18
.public sub_02037F64
.public sub_02037F94
.public sub_02037FCC
.public sub_02037FF0
.public sub_02038070
.public sub_02038094
.public sub_020380B0
.public sub_020380CC
.public sub_020380F4
.public sub_02038104
.public sub_02038114
.public sub_02038148
.public sub_0203817C
.public sub_020388E0
.public sub_02038918
.public sub_0203893C
.public sub_0203894C
.public sub_0203897C
.public sub_0203898C
.public sub_02038B3C
.public sub_02038B9C
.public sub_02038C18
.public sub_02038C1C
.public sub_02038D28
.public sub_02038D64
.public sub_02038D80
.public sub_02038D90
.public sub_02038F74
.public sub_02039080
.public sub_020390C4
.public sub_02039220
.public sub_02039264
.public sub_02039274
.public sub_020392A0
.public sub_020392D8
.public sub_02039330
.public sub_02039358
.public sub_02039378
.public sub_020393B4
.public sub_020393C8
.public sub_02039418
.public sub_0203946C
.public sub_020394A0
.public sub_020394F4
.public sub_02039528
.public sub_0203957C
.public sub_020396FC
.public sub_0203976C
.public sub_020397C8
.public sub_020397E4
.public sub_020397FC
.public sub_0203981C
.public sub_0203986C
.public sub_0203988C
.public sub_020398C8
.public sub_020398D4
.public sub_02039918
.public sub_0203993C
.public sub_02039954
.public sub_0203996C
.public sub_02039980
.public sub_02039998
.public sub_020399B8
.public sub_020399DC
.public sub_020399EC
.public sub_020399FC
.public sub_02039A00
.public sub_02039AA4
.public sub_02039AD8
.public sub_02039AF8
.public sub_02039B18
.public sub_02039B38
.public sub_02039B58
.public sub_02039B7C
.public sub_02039E9C
.public sub_02039EAC
.public sub_02039EB4
.public sub_02039F68
.public sub_02039FB8
.public sub_02039FD8
.public sub_02039FFC
.public sub_0203A01C
.public sub_0203A040
.public sub_0203A05C
.public sub_0203A084
.public sub_0203A128
.public sub_0203A1C4
.public sub_0203A280
.public sub_0203A378
.public sub_0203A880
.public sub_0203A914
.public sub_0203A930
.public ShowCommunicationError
.public LoadDwcOverlay
.public UnloadDwcOverlay
.public LoadOVY38
.public UnloadOVY38
.public DWC_Init
.public DWC_CheckFriendKey
.public DWC_IsValidFriendData
.public DWC_CreateUserData
.public DWC_CheckUserData
.public DWC_CheckHasProfile
.public DWC_CheckValidConsole
.public DWC_ClearDirtyFlag
.public DWC_GetGsProfileId
.public DWC_CreateFriendKeyToken
.public DWC_CreateExchangeToken
.public DWC_IsEqualFriendData
.public MI_CpuFill8
.public MI_CpuCopy8
.public WM_GetLinkLevel
.public _ll_mul
.public gSystem
.public ov00_021E5900
.public ov00_021E5B6C
.public ov00_021E5C84
.public ov00_021E5E54
.public ov00_021E6690
.public ov00_021E6BE4
.public ov00_021E6C68
.public ov00_021E6CA4
.public ov00_021E6CB8
.public ov00_021E6D7C
.public ov00_021E70B8
.public ov00_021EC11C
.public ov00_021EC210
.public ov00_021EC9D4
.public ov45_0222E6C8
.public ov45_0222E804
.public ov45_0222E8F4
.public ov45_0222E91C
.public ov45_0222E944
.public ov45_0222F028
.public ov45_0222F154
.public ov45_0222F254
.public ov45_0222F274
.public ov45_0222F350
.public ov45_0222F464
.public ov45_0222F70C

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,25 @@
#include "global.h"
BOOL DWC_CheckValidConsole(void);
BOOL DWC_CheckHasProfile(void);
typedef struct DWCUserData DWCUserData;
typedef struct DWCFriendData {
u32 unk0;
u32 unk4;
u32 unk8;
} DWCFriendData;
BOOL DWC_CheckValidConsole(DWCUserData *userData);
BOOL DWC_CheckHasProfile(DWCUserData *userData);
int DWC_IsValidFriendData(DWCFriendData *friendData);
void DWC_CreateExchangeToken(DWCUserData *, DWCFriendData *);
void DWC_CreateFriendKeyToken(DWCFriendData *friendData, u64 a1);
int DWC_CheckFriendKey(DWCUserData *userData, u64 a1);
int DWC_GetGsProfileId(DWCUserData *userData, DWCFriendData *friendData);
void DWC_CreateUserData(DWCUserData *userData, s32 a1);
void DWC_ClearDirtyFlag(DWCUserData *userData);
int DWC_CheckUserData(DWCUserData *userData);
int DWC_Init(int);
int DWC_IsEqualFriendData(DWCFriendData *friendData0, DWCFriendData *friendData1);
#endif // POKEHEARTGOLD_DWCACCOUNT_H

View File

@@ -130,7 +130,7 @@ typedef struct UnkStruct_0203F844 {
Party *party;
PCStorage *pcStorage;
Pokedex *pokedex;
UnkStruct_021D2230 *unk14;
WiFiList *unk14;
SaveWiFiHistory *wifiHistory;
PlayerProfile *profile;
SaveData *saveData;
@@ -138,7 +138,7 @@ typedef struct UnkStruct_0203F844 {
GameStats *gameStats;
Bag *bag;
BOOL natDexEnabled;
void *unk34;
int unk34;
u32 unk38;
int unk3C;
} UnkStruct_0203F844;

View File

@@ -23,5 +23,18 @@ void ov00_021E5CBC(BOOL (*arg0)(s32));
void ov00_021E7328(void);
BOOL ov00_021E7314(void);
void ov00_021E6CCC(UnkStruct_ov44_02231958 *arg0, s32 arg1);
int ov00_021E6BE4(int arg0);
int ov00_021E6C68(void);
int ov00_021E5E54(int arg0);
void ov00_021E6CA4(void (*func)(u32));
void ov00_021E5900(SaveData *saveData, int arg1, int arg2, int arg3);
void ov00_021E5C84(void (*func0)(), void (*func1)());
s32 ov00_021E5B6C(void);
void ov00_021EC210(void);
int ov00_021EC11C(s32 *arg0, s32 *arg1);
s32 ov00_021E6690(void);
u32 ov00_021E6D7C(s32 arg0, s32 arg1, s32 arg2);
void ov00_021E6CB8(void);
int ov00_021EC9D4(void);
#endif // POKEHEARTGOLD_OVERLAY_00_THUMB_H

View File

@@ -4,5 +4,6 @@
#include "global.h"
BOOL ov13_0222B430(void *, s32, s32);
s32 WM_GetLinkLevel(void);
#endif // POKEHEARTGOLD_OVERLAY_13_ARM_2_H

View File

@@ -159,7 +159,7 @@ typedef struct UnkStruct_ov44_0222AB24 {
} UnkStruct_ov44_0222AB24;
struct UnkStruct_ov44_022319EC {
UnkStruct_021D2230 *unk0;
WiFiList *unk0;
UnkStruct_ov44_0223197C *unk4;
u8 unk8[4];
u8 unkC[0x20];

View File

@@ -0,0 +1,17 @@
#ifndef POKEHEARTGOLD_OVERLAY_45_THUMB_H
#define POKEHEARTGOLD_OVERLAY_45_THUMB_H
void ov45_0222F70C(void);
int ov45_0222F254(void);
int ov45_0222E944(void);
void ov45_0222E91C(void);
int ov45_0222E6C8(void);
int ov45_0222E8F4(void);
void ov45_0222F154(void);
int ov45_0222F464(void);
void ov45_0222F350(int arg0);
void ov45_0222F028(int arg0, int arg1);
int ov45_0222F274(int arg0);
int ov45_0222E804(int arg0);
#endif // POKEHEARTGOLD_OVERLAY_45_THUMB_H

View File

@@ -15,7 +15,7 @@ typedef struct NintendoWifiConnectArgs {
Options *options;
void *unk14;
int unk18;
void *unk1C;
int unk1C;
int unk20;
int unk24;
} NintendoWifiConnectArgs;

View File

@@ -1,22 +1,27 @@
#ifndef POKEHEARTGOLD_UNK_0202C034_H
#define POKEHEARTGOLD_UNK_0202C034_H
#include "dwcaccount.h"
#include "pm_string.h"
#include "save.h"
typedef struct UnkStruct_021D2230 UnkStruct_021D2230;
typedef struct WiFiList WiFiList;
void sub_0202C6FC(SaveData *saveData);
void sub_0202C714(SaveData *saveData);
UnkStruct_021D2230 *sub_0202C6F4(SaveData *saveData);
int sub_0202C2F8(struct UnkStruct_021D2230 *a0);
void *sub_0202C08C(UnkStruct_021D2230 *a0);
u16 *sub_0202C254(struct UnkStruct_021D2230 *a0, s32 a1);
u16 *sub_0202C298(struct UnkStruct_021D2230 *a0, s32 a1);
s32 sub_0202C090(struct UnkStruct_021D2230 *a0, s32 a1, s32 a2);
void sub_0202C46C(struct UnkStruct_021D2230 *a0);
void sub_0202C4B0(struct UnkStruct_021D2230 *a0, s32 a1);
u16 sub_0202C318(struct UnkStruct_021D2230 *a0);
void sub_0202C190(UnkStruct_021D2230 *a0, int a1, int a2, u8 a3);
void sub_0202C03C(struct UnkStruct_021D2230 *a0);
WiFiList *sub_0202C6F4(SaveData *saveData);
int sub_0202C2F8(struct WiFiList *a0);
DWCUserData *sub_0202C08C(WiFiList *a0);
u16 *sub_0202C254(struct WiFiList *a0, s32 a1);
u16 *sub_0202C298(struct WiFiList *a0, s32 a1);
s32 sub_0202C090(struct WiFiList *a0, s32 a1, s32 a2);
void sub_0202C46C(struct WiFiList *a0);
void sub_0202C4B0(struct WiFiList *a0, s32 a1);
u16 sub_0202C318(struct WiFiList *a0);
void sub_0202C190(WiFiList *a0, int a1, int a2, u32 a3);
void sub_0202C03C(struct WiFiList *a0);
void sub_0202C2B4(struct WiFiList *a0, int a1, String *a2);
void sub_0202C270(struct WiFiList *a0, int a1, String *a2);
DWCFriendData *sub_0202C23C(struct WiFiList *a0, int a1);
#endif // POKEHEARTGOLD_UNK_0202C034_H

View File

@@ -4,5 +4,11 @@
#include "global.h"
u16 sub_02033250(void);
int sub_02033974(void);
void sub_02033A7C(void *arg0);
void sub_02033ACC(int arg0);
void sub_02033908(int arg0);
void sub_02033AA4(int arg0);
void sub_02033A0C(int arg0);
#endif // POKEHEARTGOLD_UNK_02032844_H

View File

@@ -9,5 +9,8 @@ u32 sub_020342C4(void);
u32 sub_020342C0(void);
u32 sub_020342B8(void);
u32 sub_02057A08(void);
s32 sub_02033FC4(u8 arg0);
s32 sub_02034044(void);
void sub_02034154(void);
#endif // POKEHEARTGOLD_UNK_02033AE0_H

View File

@@ -1,10 +1,16 @@
#ifndef POKEHEARTGOLD_UNK_02034354_H
#define POKEHEARTGOLD_UNK_02034354_H
#include "dwcaccount.h"
#include "player_data.h"
void sub_02034354(SaveData *saveData, int a1);
void sub_020343E4(void);
void sub_02034A20(SaveData *saveData);
DWCFriendData *sub_0203484C(int a0);
int sub_020348A8(int a0);
int sub_020348CC(int a0);
u16 *sub_02034884(int a0);
BOOL sub_02034420(void);
void sub_02034434(void);
void sub_02034638(void);

View File

@@ -5,6 +5,17 @@
void sub_02034D8C(void);
BOOL sub_02034DB8(void);
BOOL sub_02034BE4(void);
BOOL sub_02035630(void);
void sub_020356EC(int arg0);
int sub_02035664(void);
int sub_02034FE8(void);
int sub_020351AC(int arg0);
int sub_020358B0(void);
void sub_0203528C(void);
void sub_02034B0C(PlayerProfile *playerProfile, int arg1);
void sub_020350A8(int arg0);
void sub_02034DE0(void);
int sub_0203511C();
u32 sub_02035150(u32 index);
u8 sub_02035184();

View File

@@ -4,6 +4,7 @@
#include "global.h"
#include "safari_zone.h"
#include "unk_02037C94.h"
BOOL sub_02036144(void);
BOOL sub_020373B4(u16 arg0);
@@ -12,10 +13,10 @@ int sub_02037454(void);
BOOL sub_02037474(void);
void sub_020374E4(void);
void sub_02037504(void);
BOOL sub_0203769C(void);
u16 sub_0203769C(void);
void sub_020378E4(int a0);
void sub_020376D4(s32 arg0, SafariZoneAreaSet *areaSet);
void sub_020376EC(int arg0);
BOOL sub_02037700();
int sub_0203774C(u32 arg0);
int sub_0203775C(u32 arg0);
int sub_020378AC(int arg0);
@@ -23,9 +24,25 @@ void sub_020380F4(void);
void sub_02038104(void);
int sub_02037824(int arg0);
BOOL sub_02037880(void);
int sub_020378AC(int);
void sub_020369CC(void);
void sub_02036904(void);
void sub_020367A8(void);
void sub_0203622C(void);
void sub_0203786C(int);
void sub_02035FD8(void);
int sub_02035ED8(int arg0, int arg1, int arg2, int arg3);
void sub_02037988(void);
BOOL sub_02037700(void);
void sub_020376E0(int, u8 *);
void sub_02037184(int arg0, u8 *arg1);
void sub_02035FE4(void);
int sub_02035F14(int arg0, int arg1, int arg2);
int sub_020360E4(int arg0);
int sub_020376F8(void);
void sub_0203624C(void);
void sub_02036024(void);
void sub_02036274(void);
void sub_0203778C(MATHRandContext32 *arg0);
BOOL sub_02037958(void);
void sub_020380F4(void);
void sub_02038104(void);
#endif // POKEHEARTGOLD_UNK_02035900_H

View File

@@ -3,44 +3,192 @@
#include "overlay_44_02232E9C.h"
#include "save.h"
#include "save_wifi_history.h"
#include "unk_0202C034.h"
typedef struct {
u64 x;
u64 mul;
u64 add;
} MATHRandContext32;
s32 sub_02037C94(void);
void sub_02037C98(SaveData *saveData, s8 arg1);
void sub_02037D2C(void);
BOOL sub_02037D78(void);
void sub_02037D8C(SaveData *saveData, s8 arg1, s8 arg2, s32 arg3);
void sub_02037DD4(SaveData *saveData, s8 arg1, s8 arg2, s32 arg3);
void sub_02037E1C(s8 arg0);
void sub_02037E38(void);
void sub_02037E4C(void);
void sub_02037E9C(void);
s32 sub_02037EC8(void);
void sub_02037F18(SaveData *saveData);
void sub_02037F64(s8 arg0);
s32 sub_02037F94(void);
s32 sub_02037FCC(void);
s32 sub_02038070(void);
void sub_02038094(void);
void sub_02037EC0(u32 arg0);
void sub_02037FF0(void);
void sub_020380B0(void);
void sub_020380CC(void);
u32 *sub_020392D8(void);
BOOL sub_020393C8(void);
int sub_0203993C(void);
int sub_02039998(void);
int sub_02039FFC(int a0);
BOOL sub_02039AA4(void);
int sub_020399B8(void);
void sub_020380F4(void);
void sub_02038104(void);
void sub_02038114(SaveData *saveData, s8 arg1);
void sub_02038148(SaveData *saveData, s8 arg1);
void sub_0203817C(void);
void sub_020381C0(void (*func)(), int arg1);
void sub_020381D0(void);
void sub_020381FC(void);
void sub_02038218(void);
void sub_02038260(void);
void sub_0203827C(void);
void sub_02038294(void);
void sub_020382DC(void);
void sub_020382E4(void);
void sub_0203830C(void);
void sub_02038344(void);
void sub_02038358(void);
void sub_02038398(void);
void sub_020383B0(void);
void sub_020383C4(void);
void sub_02038404(void);
void sub_02038408(void);
void sub_02038418(void);
void sub_02038460(void);
void sub_0203847C(void);
void sub_020384B4(void);
void sub_02038508(void);
void sub_02038538(void);
void sub_02038550(void);
void sub_020385B8(void);
void sub_02038610(void);
void sub_02038668(void);
void sub_02038680(void);
void sub_020386AC(void);
void sub_02038710(void);
void sub_0203876C(void);
void sub_020387E8(void);
void sub_02038800(void);
void sub_02038804(void);
void sub_02038854(void);
void sub_020388A8(void);
void sub_020388E0(void);
void sub_02038918(s8 arg0);
void sub_0203893C(void);
void sub_0203894C(s8 arg0);
void sub_0203897C(void);
void sub_0203898C(s8 arg0);
void sub_020389BC(void);
void sub_020389D4(void);
void sub_02038A10(void);
void sub_02038A94(void);
void sub_02038B3C(u8 arg0, u8 arg1, u8 *arg2);
void sub_02038B9C(u32 arg0, u32 arg1, u8 *arg2);
s32 sub_02038C18(void);
void sub_02038C1C(s8 arg0);
void sub_02038C34(void);
void sub_02038C3C(u32 arg0, s32 arg1);
void sub_02038CC4(void);
void sub_02038CE8(void);
void sub_02038D28(SaveData *saveData);
void sub_02038D64(void);
u8 sub_02038D80(void);
BOOL sub_02038D90(void);
BOOL sub_0203A05C(SaveData *saveData);
void sub_02039F68(void *);
void sub_02039AD8(int);
void *sub_0203A040(UnkStruct_021D2230 *a0);
void sub_020398D4(int a0, int a1);
void sub_02039B58(void);
void sub_02039358(void);
BOOL sub_020390C4(void);
void sub_020378E4(int a0);
void sub_02039B18(void);
void sub_02039AF8(void);
s32 sub_02039080(s32);
s32 sub_02039264(void);
UnkStruct_ov44_0223197C *sub_020398C8(void);
void sub_020393B4(void);
void sub_02038E00(void);
void sub_02038E48(void);
void sub_02038E90(void);
void sub_02038E94(void);
void sub_02038EB0(void);
void sub_02038EB4(void);
void sub_02038EB8(void);
void sub_02038F74(u32 arg0, s32 arg1, s32 arg2);
void sub_02038F9C(void);
void sub_0203900C(void);
s32 sub_02039080(s32 arg0);
s32 sub_020390C4(void);
void sub_02039144(void);
void sub_020391D0(void);
void sub_02039220(void);
u8 sub_02039264(void);
BOOL sub_02039274(void);
void sub_02039330(void);
void sub_0203A1C4(SaveData *saveData, void *a1, enum HeapID heapID);
void sub_02039B7C(void);
BOOL sub_020392A0(void);
UnkStruct_ov44_0223197C *sub_020396FC(SaveData *saveData, int a1);
u32 *sub_020392D8(void);
void sub_020392F4(void);
void sub_02039330(void);
void sub_02039358(void);
void sub_02039378(void);
void sub_02039FD8(enum HeapID heapID);
void sub_020393B4(void);
BOOL sub_020393C8(void);
void sub_02039418(SaveData *saveData);
void sub_0203946C(void);
void sub_020394A0(SaveData *saveData);
void sub_020394F4(void);
void sub_02039528(SaveData *saveData);
void sub_0203957C(void);
BOOL sub_020395B0(void);
void sub_0203960C(void);
void sub_02039694(void);
UnkStruct_ov44_0223197C *sub_020396FC(SaveData *saveData, u32 arg1);
void sub_0203976C(SaveData *saveData, s32 arg1);
void sub_020397C8(void);
u8 sub_020397E4(void);
BOOL sub_020397FC(void);
void sub_0203981C(s32 arg0);
void sub_0203986C(void);
s32 sub_0203988C(void);
UnkStruct_ov44_0223197C *sub_020398C8(void);
void sub_020398D4(s8 arg0, s8 arg1);
BOOL sub_02039918(void);
u8 sub_0203993C(void);
u8 sub_02039954(void);
void sub_0203996C(void *arg0);
void sub_02039980(void *arg0);
int sub_02039998(void);
void sub_020399A4(s8 arg0);
u8 sub_020399B8(void);
void sub_020399DC(u32 errorCode);
void sub_020399EC(void);
void sub_020399FC(void);
void sub_02039A00(void);
BOOL sub_02039AA4(void);
BOOL sub_02039AD8(int arg0);
void sub_02039AF8(void);
void sub_02039B18(void);
void sub_02039B38(void);
void sub_02039B58(void);
void sub_02039B7C(void);
void sub_02039BA0(void);
void sub_02039C14(void);
void sub_02039C60(void);
s32 sub_02039C6C(s32 arg0);
s32 sub_02039D08(void);
int sub_02039D3C(void);
void sub_02039D54(s32 *arg0);
void sub_02039D78(void);
void sub_02039D8C(void);
void sub_02039DC0(void);
void sub_02039DC4(void);
void sub_02039DE4(void);
void sub_02039E30(void);
void sub_02039E7C(void);
void sub_02039E9C(void);
void sub_02039EAC(s32 *arg0);
s32 sub_02039EB4(SaveData *saveData, s32 arg1, u32 *arg2);
void sub_02039F68(SaveWiFiHistory *arg0);
void sub_02039FB8(SaveWiFiHistory *arg0, s32 arg1, s32 arg2, u8 arg3);
s32 sub_02039FD8(enum HeapID heapID);
s32 sub_02039FFC(enum HeapID heapID);
void sub_0203A01C(WiFiList *arg0);
int sub_0203A040(WiFiList *arg0);
BOOL sub_0203A05C(SaveData *saveData);
s32 sub_0203A084(SaveData *saveData, DWCFriendData *arg1, s32 *arg2);
int sub_0203A128(SaveData *saveData, u64 arg1, int *arg2);
s32 sub_0203A1C4(SaveData *saveData, s32 *arg1, enum HeapID heapID);
void sub_0203A280(SaveData *saveData, s32 arg1, s32 arg2, enum HeapID heapID, u32 arg4);
s32 sub_0203A378(SaveData *saveData, s32 arg1);
#endif // POKEHEARTGOLD_UNK_02037C94_H

View File

@@ -5,5 +5,7 @@ void sub_0203A880(void);
void sub_0203A914(void);
void sub_0203A964(void);
void sub_0203A994(int a0);
void sub_0203A930(int a0);
void sub_0203A914(void);
#endif // POKEHEARTGOLD_UNK_0203A3B0_H

View File

@@ -3,5 +3,7 @@
void UnloadDwcOverlay(void);
void LoadDwcOverlay(void);
void UnloadOVY38(void);
void LoadOVY38(void);
#endif // POKEHEARTGOLD_UNK_020915B0_H

View File

@@ -151,7 +151,7 @@ Static main
Object asm/unk_02034B0C.o
Object asm/unk_02035900.o
Object asm/unk_020379A0.o
Object asm/unk_02037C94.o
Object src/unk_02037C94.o
Object asm/unk_0203A3B0.o
Object src/communication_error.o
Object src/unk_0203AC88.o

View File

@@ -63,7 +63,7 @@ void NitroMain(void) {
sub_02005D00();
InitSoundData(Save_Chatot_Get(_02111868.unk_10.saveData), Save_PlayerData_GetOptionsAddr(_02111868.unk_10.saveData));
Init_Timer3();
if (sub_02039FFC(3) == 3) {
if (sub_02039FFC(HEAP_ID_3) == 3) {
ShowWFCUserInfoWarning(HEAP_ID_3, 0);
}
if (!Save_FlashChipIsDetected(_02111868.unk_10.saveData)) {

View File

@@ -1419,8 +1419,7 @@ s32 ov44_0222B228(UnkStruct_ov44_022319EC *arg0, s32 arg1) {
} else {
Sound_SetSceneAndPlayBGM(11, SEQ_GS_WIFI_ACCESS, 1);
ov44_0222B0B0(arg0);
sub_0202C08C(arg0->unk0);
if (DWC_CheckHasProfile() == 0) {
if (!DWC_CheckHasProfile(sub_0202C08C(arg0->unk0))) {
SetBgPriority(0, 3);
SetBgPriority(1, 0);
SetBgPriority(3, 0);
@@ -1429,8 +1428,7 @@ s32 ov44_0222B228(UnkStruct_ov44_022319EC *arg0, s32 arg1) {
arg0->unk188 = ov44_02231A28(arg0->unk15C, &ov44_02235384, 0);
arg0->unk348 = 6;
} else {
sub_0202C08C(arg0->unk0);
if (DWC_CheckValidConsole() == 0) {
if (!DWC_CheckValidConsole(sub_0202C08C(arg0->unk0))) {
ov44_0222F66C(arg0, 20);
arg0->unk348 = 3;
} else {
@@ -3482,9 +3480,9 @@ s32 ov44_0222E9FC(UnkStruct_ov44_022319EC *arg0) {
}
s32 ov44_0222EA2C(UnkStruct_ov44_022319EC *arg0, s32 arg1) {
ListMenuTemplate spC; // Unknown struct of size 0x20
s32 spC[8]; // Unknown struct of size 0x20
if ((ov44_0222E7C4(arg0) == 0) && (sub_02037B38(18) != 0) && (ov44_0222E9FC(arg0) == 1)) {
sub_0203A1C4(arg0->saveData, &spC, HEAP_ID_53);
sub_0203A1C4(arg0->saveData, spC, HEAP_ID_53);
ov44_0222F7BC(arg0);
u32 temp_r0 = ov44_02229F00(arg0, ov44_02231958(arg0, ov00_021E6EBC()));
u32 var_r1 = temp_r0;
@@ -4589,7 +4587,7 @@ void ov44_02230D8C(UnkStruct_ov44_022319EC *arg0, enum HeapID heapID) {
}
void ov44_02230E5C(UnkStruct_ov44_022319EC *arg0, enum HeapID heapID) {
UnkStruct_021D2230 *temp_r6 = sub_0202C6F4(arg0->saveData);
WiFiList *temp_r6 = sub_0202C6F4(arg0->saveData);
s32 temp_r4 = arg0->unkB1C.unk71 - 1;
// PLAZA GAMES PLAYED
ReadMsgDataIntoString(arg0->unk168, msg_0778_00070, arg0->unk178);

1932
src/unk_02037C94.c Normal file

File diff suppressed because it is too large Load Diff