diff options
Diffstat (limited to 'asm/save.s')
-rw-r--r-- | asm/save.s | 92 |
1 files changed, 21 insertions, 71 deletions
@@ -5,48 +5,18 @@ .text - thumb_func_start sub_8011C7C -sub_8011C7C: - push {r4,lr} - adds r4, r0, 0 - movs r2, 0 - lsrs r1, 2 - cmp r1, 0x1 - ble _08011C96 - adds r3, r4, 0x4 - subs r1, 0x1 -_08011C8C: - ldm r3!, {r0} - adds r2, r0 - subs r1, 0x1 - cmp r1, 0 - bne _08011C8C -_08011C96: - ldr r0, [r4] - cmp r0, r2 - bne _08011CA0 - movs r0, 0 - b _08011CA2 -_08011CA0: - movs r0, 0x1 -_08011CA2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8011C7C - thumb_func_start sub_8011CA8 sub_8011CA8: push {lr} adds r3, r0, 0 adds r2, r1, 0 - ldr r0, _08011CCC + ldr r0, =gUnknown_203B184 ldr r0, [r0] - ldr r0, _08011CD0 + ldr r0, =0xfff adds r1, r2, r0 cmp r1, 0 bge _08011CBE - ldr r0, _08011CD4 + ldr r0, =0x1ffe adds r1, r2, r0 _08011CBE: asrs r1, 12 @@ -56,13 +26,11 @@ _08011CBE: pop {r0} bx r0 .align 2, 0 -_08011CCC: .4byte gUnknown_203B184 -_08011CD0: .4byte 0x00000fff -_08011CD4: .4byte 0x00001ffe + .pool thumb_func_end sub_8011CA8 - thumb_func_start sub_8011CD8 -sub_8011CD8: + thumb_func_start WriteSaveSector +WriteSaveSector: push {r4-r6,lr} adds r5, r1, 0 adds r4, r2, 0 @@ -71,7 +39,7 @@ sub_8011CD8: bl sub_8011CA8 adds r0, r5, 0 adds r1, r4, 0 - bl sub_8011C58 + bl CalculateChecksum ldr r0, _08011D04 ldr r0, [r0] cmp r0, 0 @@ -115,10 +83,10 @@ _08011D3A: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_8011CD8 + thumb_func_end WriteSaveSector - thumb_func_start sub_8011D40 -sub_8011D40: + thumb_func_start ReadSaveSector +ReadSaveSector: push {r4-r6,lr} adds r5, r1, 0 adds r4, r2, 0 @@ -160,7 +128,7 @@ _08011D8A: _08011D8E: adds r0, r5, 0 adds r1, r4, 0 - bl sub_8011C7C + bl ValidateChecksum lsls r0, 24 cmp r0, 0 bne _08011DA0 @@ -172,7 +140,7 @@ _08011DA2: pop {r4-r6} pop {r1} bx r1 - thumb_func_end sub_8011D40 + thumb_func_end ReadSaveSector thumb_func_start sub_8011DA8 sub_8011DA8: @@ -197,14 +165,14 @@ sub_8011DAC: adds r0, r6, 0 adds r1, r5, 0 mov r2, r8 - bl sub_8011D40 + bl ReadSaveSector adds r7, r0, 0 cmp r7, 0 beq _08011DE8 adds r0, r6, 0 adds r1, r5, 0 mov r2, r8 - bl sub_8011D40 + bl ReadSaveSector adds r7, r0, 0 b _08011DF0 .align 2, 0 @@ -423,7 +391,7 @@ _08011F98: .4byte 0x00000444 thumb_func_start sub_8011F9C sub_8011F9C: push {lr} - bl sub_8011D40 + bl ReadSaveSector pop {r1} bx r1 thumb_func_end sub_8011F9C @@ -443,7 +411,7 @@ sub_8011FA8: mov r0, sp adds r1, r5, 0 adds r2, r4, 0 - bl sub_8011D40 + bl ReadSaveSector adds r2, r0, 0 cmp r2, 0 bne _08011FD8 @@ -486,7 +454,7 @@ sub_8011FF8: mov r0, sp adds r1, r5, 0 adds r2, r4, 0 - bl sub_8011D40 + bl ReadSaveSector cmp r0, 0 bne _08012028 ldr r1, [r5, 0x14] @@ -654,12 +622,12 @@ _080120E8: adds r0, r7, 0 adds r1, r6, 0 adds r2, r4, 0 - bl sub_8011CD8 + bl WriteSaveSector adds r5, r0, 0 adds r0, r7, 0 adds r1, r6, 0 adds r2, r4, 0 - bl sub_8011CD8 + bl WriteSaveSector adds r4, r0, 0 adds r0, r6, 0 bl MemoryFree @@ -692,7 +660,7 @@ _080121CE: thumb_func_start sub_80121D4 sub_80121D4: push {lr} - bl sub_8011CD8 + bl WriteSaveSector pop {r1} bx r1 thumb_func_end sub_80121D4 @@ -728,7 +696,7 @@ sub_80121E0: mov r0, sp adds r1, r4, 0 adds r2, r6, 0 - bl sub_8011CD8 + bl WriteSaveSector adds r5, r0, 0 adds r0, r4, 0 bl MemoryFree @@ -1724,22 +1692,4 @@ _080129F2: bx r1 thumb_func_end sub_80128B0 - thumb_func_start sub_80129FC -sub_80129FC: - push {r4,lr} - ldr r4, _08012A14 - ldr r0, [r4] - cmp r0, 0 - beq _08012A0E - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08012A0E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08012A14: .4byte gUnknown_203B194 - thumb_func_end sub_80129FC - .align 2, 0 @ Don't pad with nop. |