finished reset_save_heap
This commit is contained in:
@@ -1,8 +0,0 @@
|
|||||||
.include "asm/macros.inc"
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.syntax unified
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
.align 2, 0 @ Don't pad with nop.
|
|
||||||
+1
-1
@@ -305,7 +305,7 @@ c2_copyright_1: @ 80EC820
|
|||||||
lsls r0, 24
|
lsls r0, 24
|
||||||
cmp r0, 0
|
cmp r0, 0
|
||||||
bne _080EC858
|
bne _080EC858
|
||||||
bl sub_8054A28
|
bl ResetMenuAndMonGlobals
|
||||||
bl Save_ResetSaveCounters
|
bl Save_ResetSaveCounters
|
||||||
movs r0, 0
|
movs r0, 0
|
||||||
bl Save_LoadGameData
|
bl Save_LoadGameData
|
||||||
|
|||||||
+3
-3
@@ -174,8 +174,8 @@ Sav2_ClearSetDefault: @ 8054A18
|
|||||||
bx r0
|
bx r0
|
||||||
thumb_func_end Sav2_ClearSetDefault
|
thumb_func_end Sav2_ClearSetDefault
|
||||||
|
|
||||||
thumb_func_start sub_8054A28
|
thumb_func_start ResetMenuAndMonGlobals
|
||||||
sub_8054A28: @ 8054A28
|
ResetMenuAndMonGlobals: @ 8054A28
|
||||||
push {lr}
|
push {lr}
|
||||||
ldr r1, _08054A5C @ =gUnknown_2031DB0
|
ldr r1, _08054A5C @ =gUnknown_2031DB0
|
||||||
movs r0, 0
|
movs r0, 0
|
||||||
@@ -195,7 +195,7 @@ sub_8054A28: @ 8054A28
|
|||||||
bx r0
|
bx r0
|
||||||
.align 2, 0
|
.align 2, 0
|
||||||
_08054A5C: .4byte gUnknown_2031DB0
|
_08054A5C: .4byte gUnknown_2031DB0
|
||||||
thumb_func_end sub_8054A28
|
thumb_func_end ResetMenuAndMonGlobals
|
||||||
|
|
||||||
thumb_func_start sub_8054A60
|
thumb_func_start sub_8054A60
|
||||||
sub_8054A60: @ 8054A60
|
sub_8054A60: @ 8054A60
|
||||||
|
|||||||
+3
-3
@@ -3833,8 +3833,8 @@ _0805692C:
|
|||||||
_08056934: .4byte gMapHeader
|
_08056934: .4byte gMapHeader
|
||||||
thumb_func_end sub_8056918
|
thumb_func_end sub_8056918
|
||||||
|
|
||||||
thumb_func_start sub_8056938
|
thumb_func_start CB2_ContinueSavedGame
|
||||||
sub_8056938: @ 8056938
|
CB2_ContinueSavedGame: @ 8056938
|
||||||
push {lr}
|
push {lr}
|
||||||
bl sub_80569BC
|
bl sub_80569BC
|
||||||
bl StopMapMusic
|
bl StopMapMusic
|
||||||
@@ -3880,7 +3880,7 @@ _080569AC:
|
|||||||
_080569B0: .4byte gFieldCallback
|
_080569B0: .4byte gFieldCallback
|
||||||
_080569B4: .4byte sub_8056918
|
_080569B4: .4byte sub_8056918
|
||||||
_080569B8: .4byte sub_8056534
|
_080569B8: .4byte sub_8056534
|
||||||
thumb_func_end sub_8056938
|
thumb_func_end CB2_ContinueSavedGame
|
||||||
|
|
||||||
thumb_func_start sub_80569BC
|
thumb_func_start sub_80569BC
|
||||||
sub_80569BC: @ 80569BC
|
sub_80569BC: @ 80569BC
|
||||||
|
|||||||
@@ -1,68 +0,0 @@
|
|||||||
.include "asm/macros.inc"
|
|
||||||
.include "constants/constants.inc"
|
|
||||||
|
|
||||||
.syntax unified
|
|
||||||
|
|
||||||
.text
|
|
||||||
|
|
||||||
thumb_func_start sub_8079B7C
|
|
||||||
sub_8079B7C: @ 8079B7C
|
|
||||||
push {r4,r5,lr}
|
|
||||||
ldr r5, _08079BEC @ =0x04000208
|
|
||||||
ldrh r4, [r5]
|
|
||||||
movs r0, 0
|
|
||||||
strh r0, [r5]
|
|
||||||
movs r0, 0x1
|
|
||||||
bl RegisterRamReset
|
|
||||||
movs r0, 0
|
|
||||||
movs r1, 0x80
|
|
||||||
bl ClearGpuRegBits
|
|
||||||
strh r4, [r5]
|
|
||||||
ldr r1, _08079BF0 @ =gMain
|
|
||||||
ldr r0, _08079BF4 @ =0x00000439
|
|
||||||
adds r1, r0
|
|
||||||
ldrb r2, [r1]
|
|
||||||
movs r0, 0x3
|
|
||||||
negs r0, r0
|
|
||||||
ands r0, r2
|
|
||||||
strb r0, [r1]
|
|
||||||
bl SetSaveBlocksPointers
|
|
||||||
bl sub_8054A28
|
|
||||||
bl Save_ResetSaveCounters
|
|
||||||
movs r0, 0
|
|
||||||
bl Save_LoadGameData
|
|
||||||
ldr r0, _08079BF8 @ =gSaveFileStatus
|
|
||||||
ldrh r0, [r0]
|
|
||||||
cmp r0, 0
|
|
||||||
beq _08079BC4
|
|
||||||
cmp r0, 0x2
|
|
||||||
bne _08079BC8
|
|
||||||
_08079BC4:
|
|
||||||
bl Sav2_ClearSetDefault
|
|
||||||
_08079BC8:
|
|
||||||
ldr r0, _08079BFC @ =gSaveBlock2Ptr
|
|
||||||
ldr r0, [r0]
|
|
||||||
ldrb r0, [r0, 0x15]
|
|
||||||
lsls r0, 31
|
|
||||||
lsrs r0, 31
|
|
||||||
bl SetPokemonCryStereo
|
|
||||||
ldr r0, _08079C00 @ =gHeap
|
|
||||||
movs r1, 0xE0
|
|
||||||
lsls r1, 9
|
|
||||||
bl InitHeap
|
|
||||||
ldr r0, _08079C04 @ =sub_8056938
|
|
||||||
bl SetMainCallback2
|
|
||||||
pop {r4,r5}
|
|
||||||
pop {r0}
|
|
||||||
bx r0
|
|
||||||
.align 2, 0
|
|
||||||
_08079BEC: .4byte 0x04000208
|
|
||||||
_08079BF0: .4byte gMain
|
|
||||||
_08079BF4: .4byte 0x00000439
|
|
||||||
_08079BF8: .4byte gSaveFileStatus
|
|
||||||
_08079BFC: .4byte gSaveBlock2Ptr
|
|
||||||
_08079C00: .4byte gHeap
|
|
||||||
_08079C04: .4byte sub_8056938
|
|
||||||
thumb_func_end sub_8079B7C
|
|
||||||
|
|
||||||
.align 2, 0 @ Don't pad with nop.
|
|
||||||
+1
-1
@@ -1106,7 +1106,7 @@ _08079248:
|
|||||||
bne _080792A6
|
bne _080792A6
|
||||||
bl SeedRngAndSetTrainerId
|
bl SeedRngAndSetTrainerId
|
||||||
bl SetSaveBlocksPointers
|
bl SetSaveBlocksPointers
|
||||||
bl sub_8054A28
|
bl ResetMenuAndMonGlobals
|
||||||
bl Save_ResetSaveCounters
|
bl Save_ResetSaveCounters
|
||||||
movs r0, 0
|
movs r0, 0
|
||||||
bl Save_LoadGameData
|
bl Save_LoadGameData
|
||||||
|
|||||||
@@ -14,5 +14,6 @@ void NewGameInitData(void);
|
|||||||
void ResetMiniGamesResults(void);
|
void ResetMiniGamesResults(void);
|
||||||
void sub_808447C(void);
|
void sub_808447C(void);
|
||||||
void Sav2_ClearSetDefault(void);
|
void Sav2_ClearSetDefault(void);
|
||||||
|
void ResetMenuAndMonGlobals(void);
|
||||||
|
|
||||||
#endif // GUARD_NEW_GAME_H
|
#endif // GUARD_NEW_GAME_H
|
||||||
|
|||||||
+1
-1
@@ -81,7 +81,7 @@ void mapldr_default(void);
|
|||||||
|
|
||||||
u32 GetGameStat(u8);
|
u32 GetGameStat(u8);
|
||||||
|
|
||||||
void sub_8056938(void);
|
void CB2_ContinueSavedGame(void);
|
||||||
void sub_8055D5C(struct WarpData *);
|
void sub_8055D5C(struct WarpData *);
|
||||||
void sub_80572A8(void);
|
void sub_80572A8(void);
|
||||||
void sub_805726C(void);
|
void sub_805726C(void);
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
#ifndef GUARD_RESET_SAVE_HEAP_H
|
||||||
|
#define GUARD_RESET_SAVE_HEAP_H
|
||||||
|
|
||||||
|
// Exported type declarations
|
||||||
|
|
||||||
|
// Exported RAM declarations
|
||||||
|
|
||||||
|
// Exported ROM declarations
|
||||||
|
|
||||||
|
void sub_8079B7C(void);
|
||||||
|
|
||||||
|
#endif //GUARD_RESET_SAVE_HEAP_H
|
||||||
|
|
||||||
+1
-1
@@ -117,7 +117,7 @@ SECTIONS {
|
|||||||
asm/reshow_battle_screen.o(.text);
|
asm/reshow_battle_screen.o(.text);
|
||||||
asm/battle_anim_status_effects.o(.text);
|
asm/battle_anim_status_effects.o(.text);
|
||||||
asm/title_screen.o(.text);
|
asm/title_screen.o(.text);
|
||||||
asm/reset_save_heap.o(.text);
|
src/reset_save_heap.o(.text);
|
||||||
asm/field_weather.o(.text);
|
asm/field_weather.o(.text);
|
||||||
asm/field_weather_effects.o(.text);
|
asm/field_weather_effects.o(.text);
|
||||||
asm/field_fadetransition.o(.text);
|
asm/field_fadetransition.o(.text);
|
||||||
|
|||||||
+1
-1
@@ -859,7 +859,7 @@ void sub_8110F14(u8 taskId)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SetMainCallback2(sub_8056938);
|
SetMainCallback2(CB2_ContinueSavedGame);
|
||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
#include "global.h"
|
||||||
|
#include "main.h"
|
||||||
|
#include "gpu_regs.h"
|
||||||
|
#include "m4a.h"
|
||||||
|
#include "load_save.h"
|
||||||
|
#include "save.h"
|
||||||
|
#include "new_game.h"
|
||||||
|
#include "overworld.h"
|
||||||
|
#include "malloc.h"
|
||||||
|
|
||||||
|
void sub_8079B7C(void)
|
||||||
|
{
|
||||||
|
u16 imeBackup;
|
||||||
|
|
||||||
|
imeBackup = REG_IME;
|
||||||
|
REG_IME = 0;
|
||||||
|
RegisterRamReset(0x00000001);
|
||||||
|
ClearGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_FORCED_BLANK);
|
||||||
|
REG_IME = imeBackup;
|
||||||
|
gMain.inBattle = FALSE;
|
||||||
|
SetSaveBlocksPointers();
|
||||||
|
ResetMenuAndMonGlobals();
|
||||||
|
Save_ResetSaveCounters();
|
||||||
|
Save_LoadGameData(0);
|
||||||
|
if (gSaveFileStatus == 0 || gSaveFileStatus == 2)
|
||||||
|
Sav2_ClearSetDefault();
|
||||||
|
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||||
|
InitHeap(gHeap, HEAP_SIZE);
|
||||||
|
SetMainCallback2(CB2_ContinueSavedGame);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user