summaryrefslogtreecommitdiff
path: root/src/save_mid.c
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2021-02-21 11:13:55 -0800
committerGitHub <noreply@github.com>2021-02-21 13:13:55 -0600
commit7fa4f1a92bdc4cefb094f9e3f1144ad3e3a588d9 (patch)
tree4d5149a98d71e691fb89dca3dfa082eb11ae6a49 /src/save_mid.c
parentc754c2a0466d8394c7ffcb3a515199d5703e47be (diff)
Fully decomp save.s (#28)
* some work on decomping more save stuff * code cleanup and decomp another save func * fully decomp save and combine split save c files * fix two nonmatchings
Diffstat (limited to 'src/save_mid.c')
-rw-r--r--src/save_mid.c310
1 files changed, 0 insertions, 310 deletions
diff --git a/src/save_mid.c b/src/save_mid.c
deleted file mode 100644
index 0c4531c..0000000
--- a/src/save_mid.c
+++ /dev/null
@@ -1,310 +0,0 @@
-#include "global.h"
-#include "save.h"
-#include "friend_area.h"
-
-extern struct UnkStruct_203B184 *gUnknown_203B184;
-extern struct unkTimeStruct *gUnknown_203B47C;
-
-struct unk_203B188
-{
- u32 unk0;
- u32 unk4;
-};
-
-struct unk_struct
-{
- u32 unk0;
- u32 unk4;
- u32 unk8;
- u32 unkC;
- u32 unk10;
- u32 unk14;
- u32 unk18;
- u32 unk1C;
- u32 padding[504];
-};
-
-extern struct unk_203B188 *gUnknown_203B188;
-
-extern u32 *gUnknown_203B45C;
-extern u32 *gUnknown_203B460;
-extern u32 gUnknown_203B464;
-extern u8 *gFriendAreas;
-extern u32 gUnknown_203B46C;
-extern u8 *gUnknown_203B480;
-extern u8 *gUnknown_203B484;
-extern u32 *gUnknown_203B488;
-extern u32 *gUnknown_203B48C;
-extern u32 gUnknown_203B490;
-extern u32 gUnknown_203B494;
-extern u8 *gUnknown_203B498;
-extern u32 gUnknown_80D4354;
-
-extern void sub_800135C(void);
-extern u32 *sub_808CE00(void);
-extern void sub_808CE08(void);
-extern u32 *sub_80909D0(void);
-extern void sub_80909D8(void);
-extern u32 sub_809208C(void);
-extern void sub_8092094(void);
-extern u32 sub_8094990(void);
-extern void sub_8094998(u8 r0);
-extern u8 *sub_80950F8(void);
-extern u8 *sub_8095100(void);
-extern u32 *sub_8095108(void);
-extern u32 *sub_8095110(void);
-extern void sub_8095118(void);
-extern u32 sub_80958F8(void);
-extern void sub_8095900(void);
-extern u32 sub_8097680(void);
-extern void sub_80972F4(void);
-extern void sub_80974E8(void);
-extern u8 *sub_8097F6C(void);
-extern void sub_8097F74(void);
-
-extern void sub_8011C28(u32 r0);
-extern void sub_8011C40(s32 r0);
-extern void sub_8097748(void);
-
-
-extern void ResetPlayTime(struct unkTimeStruct *Time); // defined in src/code_8094F88.c
-extern struct unkTimeStruct *sub_8094FA0(void);
-
-extern void* MemoryAlloc(u32 a, u32 b);
-extern void MemoryFree(void* a);
-extern void MemoryFill8(u8 *dest, u8 value, s32 size);
-extern void sub_8011830(void);
-extern s32 WriteFlashData(s32 sector, u8 *src, s32 size);
-extern void xxx_call_start_bg_music(void);
-extern u32 *sub_809769C(void);
-u32 *sub_8011C4C(void);
-extern void sub_80958E4(u8 *a, u32 b);
-extern s32 WriteSaveSector(s32 *a, u8 *src, s32 size);
-extern u32 sub_8011DAC(u32 *a);
-extern u32 sub_80144A4(u32 *a);
-extern bool8 sub_8011FF8(void);
-extern void sub_80141B4(u32 *r0, u32 r1, u32 r2, u16 r3);
-
-void sub_8012298();
-void sub_80122D0();
-void sub_80122F4();
-void sub_8012300();
-void sub_80976A8();
-void sub_80122A8();
-
-
-s32 sub_80121D4(s32 *a, u8 *src, s32 size)
-{
- return WriteSaveSector(a, src, size);
-}
-
-u32 sub_80121E0(u32 r0)
-{
- u32 temp;
- u32 *temp2;
- u32 temp3;
- struct unk_struct *r4 = MemoryAlloc(sizeof(struct unk_struct), 5);
- temp = 0x1F;
-
- r4->unk18 = r0;
- r4->unk1C = *sub_809769C();
- r4->unk14 = 0x5071412;
-
- temp2 = sub_8011C4C();
- strncpy((u8 *)r4 + 4, (u8*)temp2, 16);
- sub_80958E4((u8 *)r4 + 32, 0);
- temp3 = WriteSaveSector(&temp, (u8 *)r4, sizeof(struct unk_struct));
- MemoryFree(r4);
- return temp3;
-}
-
-u32 sub_8012240(void)
-{
- s32 temp;
- struct unk_struct *r5 = MemoryAlloc(sizeof(struct unk_struct), 5);
- MemoryFill8((u8 *)r5, 0xFF, 0x4);
- sub_8011830();
- temp = WriteFlashData(0x1F, (u8 *)r5, sizeof(struct unk_struct));
- xxx_call_start_bg_music();
- MemoryFree(r5);
- if(temp != 0)
- {
- return 2;
- }
- else
- {
- return 0;
- }
-}
-
-void sub_8012284(void)
-{
- sub_80122D0();
- sub_80122F4();
- sub_8012300();
-}
-
-void sub_8012298(void)
-{
- sub_80976A8();
- sub_80122A8();
-}
-
-void sub_80122A8(void)
-{
- sub_80122D0();
- sub_80122F4();
- sub_8012300();
- sub_8012240();
-
-}
-
-void nullsub_33(void)
-{
-}
-
-void sub_80122C4(void)
-{
- sub_80122A8();
-}
-
-void sub_80122D0(void)
-{
- sub_8011C28(0);
- sub_8011C40(-1);
- sub_8097748();
- ResetPlayTime(gUnknown_203B47C);
-}
-
-void sub_80122F4(void)
-{
- sub_800135C();
-}
-
-void sub_8012300(void)
-{
- InitializeFriendAreas();
- sub_808CE08();
- sub_80909D8();
- sub_8092094();
- sub_80972F4();
- sub_8095118();
- sub_8095900();
- sub_80974E8();
- sub_8094998(1);
- sub_8097F74();
-}
-
-
-// Unused
-void nullsub_200(u32 r0)
-{
-}
-
-// Unused
-void sub_8012334(struct UnkStruct_203B184 *r0)
-{
- gUnknown_203B184 = r0;
- if(r0 != NULL)
- {
- gUnknown_203B460 = r0->unk0;
- gUnknown_203B45C = r0->unk4;
- gUnknown_203B480 = r0->unk8;
- gUnknown_203B484 = r0->unkC;
- gUnknown_203B488 = r0->unk10;
- gUnknown_203B48C = r0->unk14;
- gUnknown_203B490 = r0->unk18;
- gUnknown_203B464 = r0->unk1C;
- gUnknown_203B494 = r0->unk20;
- gUnknown_203B498 = r0->unk24;
- gFriendAreas = r0->BoughtFriendAreas;
- gUnknown_203B46C = r0->unk2C;
- gUnknown_203B47C = r0->unk30;
- return;
- }
- gUnknown_203B460 = sub_80909D0();
- gUnknown_203B45C = sub_808CE00();
- gUnknown_203B480 = sub_80950F8();
- gUnknown_203B484 = sub_8095100();
- gUnknown_203B488 = sub_8095108();
- gUnknown_203B48C = sub_8095110();
- gUnknown_203B490 = sub_80958F8();
- gUnknown_203B464 = sub_809208C();
- gUnknown_203B494 = sub_8097680();
- gUnknown_203B498 = sub_8097F6C();
- gFriendAreas = GetBoughtFriendAreas();
- gUnknown_203B46C = sub_8094990();
- gUnknown_203B47C = sub_8094FA0();
-
-}
-
-void sub_8012468(void)
-{
- gUnknown_203B188 = MemoryAlloc(sizeof(struct unk_203B188), 5);
- gUnknown_203B188->unk0 = 1;
-
-}
-
-u8 sub_8012484(void)
-{
- u32 temp;
- u32 temp2;
- switch(gUnknown_203B188->unk0)
- {
- case 0:
- gUnknown_203B188->unk0 = 1;
- break;
- case 1:
- temp = 0;
- gUnknown_203B188->unk4 = sub_8011DAC(&temp);
- gUnknown_203B188->unk0 = 2;
- break;
- case 2:
- if(gUnknown_203B188->unk4 != 0)
- {
- if(sub_8011FF8())
- {
- sub_80141B4(&gUnknown_80D4354, 0, 0, 0x301);
- gUnknown_203B188->unk0 = 3;
- break;
- }
- else
- {
- gUnknown_203B188->unk0 = 4;
- break;
- }
- }
- else
- {
- gUnknown_203B188->unk0 = 6;
- break;
- }
- case 3:
- if(sub_80144A4(&temp2) == 0)
- {
- gUnknown_203B188->unk0 = 4;
- break;
- }
- else
- {
- break;
- }
- case 4:
- sub_8012298();
- gUnknown_203B188->unk0 = 6;
- case 5:
- break;
- case 6:
- return 0;
- }
- return 1;
-}
-
-void sub_8012558(void)
-{
- if(gUnknown_203B188 != NULL)
- {
- MemoryFree(gUnknown_203B188);
- gUnknown_203B188 = NULL;
- }
-}