summaryrefslogtreecommitdiff
path: root/arm9/src
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/src')
-rw-r--r--arm9/src/main.c64
1 files changed, 62 insertions, 2 deletions
diff --git a/arm9/src/main.c b/arm9/src/main.c
index eb02186e..3236fdaa 100644
--- a/arm9/src/main.c
+++ b/arm9/src/main.c
@@ -42,7 +42,7 @@ extern void FUN_02015E30(void);
extern void FUN_02000EE8(void);
extern void FUN_02000FE8(void);
extern void FUN_02016464(void);
-extern void FUN_02000F18(int);
+extern void FUN_02000F18(u32 parameter);
extern BOOL FUN_0202FB80(void);
extern void FUN_02000E0C(void);
extern void FUN_0201B5CC(int);
@@ -52,6 +52,7 @@ extern void FUN_020222C4(void);
extern void FUN_0200A318(void);
extern void FUN_0200E2D8(void);
extern void FUN_02003C10(void);
+void FUN_02000F4C(int arg0, int arg1);
extern struct Unk21DBE18 gUnk021DBE18;
extern struct Unk21DBE18 gUnk021D76C8;
@@ -190,7 +191,7 @@ THUMB_FUNC void FUN_02000E9C(void)
gUnknown21C48B8.unk0(gUnknown21C48B8.unk4);
}
-void FUN_02000EC8(u32 parameter)
+THUMB_FUNC void FUN_02000EC8(u32 parameter)
{
if (FUN_02033678() && CARD_TryWaitBackupAsync() == 1)
{
@@ -198,3 +199,62 @@ void FUN_02000EC8(u32 parameter)
}
FUN_02000E9C();
}
+
+THUMB_FUNC void FUN_02000EE8(void)
+{
+ int r1 = FUN_020335B8();
+ switch (r1)
+ {
+ case 1:
+ FUN_02000F4C(1, r1);
+ break;
+ case 2:
+ FUN_02000F4C(0, r1);
+ break;
+ case 3:
+ FUN_02000F4C(1, r1);
+ break;
+ }
+}
+
+THUMB_FUNC void FUN_02000F18(u32 parameter)
+{
+ FUN_0200E3A0(0, 0x7FFF);
+ FUN_0200E3A0(1, 0x7FFF);
+ if (FUN_02032DAC())
+ {
+ FUN_020225F8();
+ FUN_0202287C();
+ }
+ do
+ {
+ FUN_02000FE8();
+ FUN_02000EC8(parameter);
+ } while (1);
+}
+
+THUMB_FUNC void FUN_02000F4C(int arg0, int arg1)
+{
+ if (arg1 == 3)
+ {
+ FUN_02033F70(0, 3, 0);
+ }
+ else if (arg0 == 0)
+ {
+ FUN_02033F70(0, 2, 0);
+ }
+ else
+ {
+ FUN_02033F70(0, 0, 0);
+ }
+ FUN_02032DAC();
+ while (1)
+ {
+ FUN_02000FE8();
+ FUN_02016464();
+ if (gUnknown21C48B8.unk48 & 1)
+ break;
+ FUN_02000E9C();
+ }
+ FUN_02000F18(arg0);
+}