summaryrefslogtreecommitdiff
path: root/asm/load_save.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/load_save.s')
-rw-r--r--asm/load_save.s118
1 files changed, 15 insertions, 103 deletions
diff --git a/asm/load_save.s b/asm/load_save.s
index ccfce2ec4..08170b446 100644
--- a/asm/load_save.s
+++ b/asm/load_save.s
@@ -5,97 +5,9 @@
.text
- thumb_func_start CheckForFlashMemory
-@ void CheckForFlashMemory()
-CheckForFlashMemory: @ 8076B68
- push {lr}
- bl IdentifyFlash
- lsls r0, 16
- cmp r0, 0
- bne _08076B84
- ldr r1, =gFlashMemoryPresent
- movs r0, 0x1
- str r0, [r1]
- bl StartFlashMemoryTimer
- b _08076B8A
- .pool
-_08076B84:
- ldr r1, =gFlashMemoryPresent
- movs r0, 0
- str r0, [r1]
-_08076B8A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end CheckForFlashMemory
-
- thumb_func_start ClearSav2
-ClearSav2: @ 8076B94
- push {lr}
- sub sp, 0x4
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_02024A54
- ldr r2, =0x010007d6
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearSav2
-
- thumb_func_start ClearSav1
-ClearSav1: @ 8076BB8
- push {lr}
- sub sp, 0x4
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r1, =gUnknown_02025A00
- ldr r2, =0x01001f04
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end ClearSav1
-
- thumb_func_start InitSaveBlockPointersWithRandomOffset
-@ void InitSaveBlockPointersWithRandomOffset(u8 offset)
-InitSaveBlockPointersWithRandomOffset: @ 8076BDC
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r5, =gSaveBlock1Ptr
- bl Random
- adds r4, r0
- movs r0, 0x7C
- ands r4, r0
- ldr r1, =gSaveBlock2Ptr
- ldr r0, =gUnknown_02024A54
- adds r0, r4, r0
- str r0, [r1]
- ldr r0, =gUnknown_02025A00
- adds r0, r4, r0
- str r0, [r5]
- ldr r1, =gUnknown_03005D94
- ldr r0, =gUnknown_02029808
- adds r4, r0
- str r4, [r1]
- bl SetBagItemsPointers
- bl SetDecorationInventoriesPointers
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end InitSaveBlockPointersWithRandomOffset
- thumb_func_start saveblock_randomize_and_relocate
-saveblock_randomize_and_relocate: @ 8076C2C
+ thumb_func_start MoveSaveBlocks_ResetHeap
+MoveSaveBlocks_ResetHeap: @ 8076C2C
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -126,7 +38,7 @@ saveblock_randomize_and_relocate: @ 8076C2C
ldr r0, =0x02000f2c
adds r2, r7, 0
bl memcpy
- ldr r0, =gUnknown_03005D94
+ ldr r0, =gPokemonStoragePtr
mov r8, r0
ldr r1, [r0]
ldr r0, =0x000083d0
@@ -141,7 +53,7 @@ saveblock_randomize_and_relocate: @ 8076C2C
adds r1, r0
ldrb r0, [r4, 0xD]
adds r0, r1
- bl InitSaveBlockPointersWithRandomOffset
+ bl SetSaveBlocksPointers
ldr r1, =gSaveBlock2Ptr
ldr r0, [r1]
adds r1, r4, 0
@@ -173,7 +85,7 @@ saveblock_randomize_and_relocate: @ 8076C2C
lsrs r0, 16
adds r4, r0
adds r0, r4, 0
- bl saveblock_apply_crypto
+ bl ApplyNewEncyprtionKeyToAllEncryptedData
ldr r1, =gSaveBlock2Ptr
ldr r0, [r1]
adds r0, 0xAC
@@ -187,7 +99,7 @@ saveblock_randomize_and_relocate: @ 8076C2C
pop {r0}
bx r0
.pool
- thumb_func_end saveblock_randomize_and_relocate
+ thumb_func_end MoveSaveBlocks_ResetHeap
thumb_func_start sav2_x1_query_bit1
sav2_x1_query_bit1: @ 8076D24
@@ -713,8 +625,8 @@ ApplyNewEncyprtionKeyToHword: @ 8077100
.pool
thumb_func_end ApplyNewEncyprtionKeyToHword
- thumb_func_start apply_u32_xor_crypto
-apply_u32_xor_crypto: @ 8077118
+ thumb_func_start ApplyNewEncyprtionKeyToWord
+ApplyNewEncyprtionKeyToWord: @ 8077118
ldr r2, =gSaveBlock2Ptr
ldr r3, [r2]
adds r3, 0xAC
@@ -725,24 +637,24 @@ apply_u32_xor_crypto: @ 8077118
str r2, [r0]
bx lr
.pool
- thumb_func_end apply_u32_xor_crypto
+ thumb_func_end ApplyNewEncyprtionKeyToWord
- thumb_func_start saveblock_apply_crypto
-saveblock_apply_crypto: @ 8077130
+ thumb_func_start ApplyNewEncyprtionKeyToAllEncryptedData
+ApplyNewEncyprtionKeyToAllEncryptedData: @ 8077130
push {r4,r5,lr}
adds r4, r0, 0
- bl sub_8084864
+ bl ApplyNewEncyprtionKeyToGameStats
adds r0, r4, 0
bl ApplyNewEncyprtionKeyToBagItems_
adds r0, r4, 0
- bl sub_8024690
+ bl ApplyNewEncyprtionKeyToBerryPowder
ldr r5, =gSaveBlock1Ptr
ldr r0, [r5]
movs r1, 0x92
lsls r1, 3
adds r0, r1
adds r1, r4, 0
- bl apply_u32_xor_crypto
+ bl ApplyNewEncyprtionKeyToWord
ldr r0, [r5]
ldr r1, =0x00000494
adds r0, r1
@@ -752,6 +664,6 @@ saveblock_apply_crypto: @ 8077130
pop {r0}
bx r0
.pool
- thumb_func_end saveblock_apply_crypto
+ thumb_func_end ApplyNewEncyprtionKeyToAllEncryptedData
.align 2, 0 @ Don't pad with nop.