diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2020-08-12 15:52:49 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2020-08-12 15:52:49 -0400 |
commit | 9e8e57cacbdb4e75cb7e3adce06a957dec25c33f (patch) | |
tree | a22b7328a7d1026f84888dd62f7596ac0fb480c1 | |
parent | dda861d78ad47a85a54c4c6a2dd3f7e301e65fa5 (diff) |
Pad out struct SaveBlock2
-rw-r--r-- | arm9/asm/save.s | 24 | ||||
-rw-r--r-- | arm9/global.inc | 2 | ||||
-rw-r--r-- | arm9/modules/52/asm/module_52.s | 2 | ||||
-rw-r--r-- | include/save_block_2.h | 20 |
4 files changed, 31 insertions, 17 deletions
diff --git a/arm9/asm/save.s b/arm9/asm/save.s index a8ee71f8..cbef5ecb 100644 --- a/arm9/asm/save.s +++ b/arm9/asm/save.s @@ -129,7 +129,7 @@ _020225C4: b _020225DA _020225D4: add r0, r4, #0x0 - bl FUN_020227DC + bl Sav2_InitDynamicRegion _020225DA: add r0, r4, #0x0 pop {r4, pc} @@ -263,7 +263,7 @@ _020226B4: add r0, r6, #0x0 bl FreeToHeap ldr r0, [sp, #0x0] - bl FUN_020227DC + bl Sav2_InitDynamicRegion ldr r0, [sp, #0x0] mov r1, #0x0 str r1, [r0, #0x4] @@ -395,8 +395,8 @@ _020227CA: pop {r3-r5, pc} .balign 4 - thumb_func_start FUN_020227DC -FUN_020227DC: ; 0x020227DC + thumb_func_start Sav2_InitDynamicRegion +Sav2_InitDynamicRegion: ; 0x020227DC add r2, r0, #0x0 mov r0, #0x1 str r0, [r2, #0x8] @@ -404,13 +404,13 @@ FUN_020227DC: ; 0x020227DC mov r0, #0x85 ldr r1, _020227F4 ; =0x00020224 lsl r0, r0, #0x2 - ldr r3, _020227F8 ; =FUN_020231F4 + ldr r3, _020227F8 ; =Sav2_InitDynamicRegion_Internal add r0, r2, r0 add r1, r2, r1 bx r3 nop _020227F4: .word 0x00020224 -_020227F8: .word FUN_020231F4 +_020227F8: .word Sav2_InitDynamicRegion_Internal thumb_func_start FUN_020227FC FUN_020227FC: ; 0x020227FC @@ -1609,8 +1609,8 @@ FUN_02023074: ; 0x02023074 .balign 4 _020230A8: .word 0x00020464 - thumb_func_start FUN_020230AC -FUN_020230AC: ; 0x020230AC + thumb_func_start SavArray_sizeof +SavArray_sizeof: ; 0x020230AC push {r3-r5, lr} add r5, r0, #0x0 ldr r0, _020230DC ; =UNK_020EE6DC @@ -1667,7 +1667,7 @@ _02023112: ldr r0, [r4, #0x0] str r0, [r5, #0x0] add r0, r6, #0x0 - bl FUN_020230AC + bl SavArray_sizeof str r0, [r5, #0x4] str r7, [r5, #0x8] mov r0, #0x0 @@ -1784,8 +1784,10 @@ _020231E6: _020231EC: .word UNK_020EE6DC _020231F0: .word 0x00000FFF - thumb_func_start FUN_020231F4 -FUN_020231F4: ; 0x020231F4 + thumb_func_start Sav2_InitDynamicRegion_Internal +Sav2_InitDynamicRegion_Internal: ; 0x020231F4 + ; r0: &sav2->dynamic_region + ; r1: &sav2->arraySpecs push {r3-r7, lr} sub sp, #0x8 add r6, r0, #0x0 diff --git a/arm9/global.inc b/arm9/global.inc index b5c4f6cc..02f56526 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -1441,7 +1441,7 @@ .extern FUN_020226FC .extern FUN_02022720 .extern FUN_020227A0 -.extern FUN_020227DC +.extern Sav2_InitDynamicRegion .extern FUN_020227FC .extern FUN_02022800 .extern FUN_02022804 diff --git a/arm9/modules/52/asm/module_52.s b/arm9/modules/52/asm/module_52.s index eb64cd58..53f3737b 100644 --- a/arm9/modules/52/asm/module_52.s +++ b/arm9/modules/52/asm/module_52.s @@ -228,7 +228,7 @@ MOD52_021D769C: ; 0x021D769C push {r4, lr} add r4, r1, #0 add r0, r4, #0 - bl FUN_020227DC + bl Sav2_InitDynamicRegion add r0, r4, #0 bl FUN_020377E0 add r0, r4, #0 diff --git a/include/save_block_2.h b/include/save_block_2.h index b086e566..bfac686d 100644 --- a/include/save_block_2.h +++ b/include/save_block_2.h @@ -3,6 +3,15 @@ #include "pokemon.h" +struct SavArrayHeader +{ + u32 id; + u32 size; + u32 offset; + u16 field_C; + u16 field_E; +}; + struct SaveBlock2 { /* 0x00000 */ u16 playerName[OT_NAME_LENGTH + 1]; @@ -12,10 +21,13 @@ struct SaveBlock2 /* 0x00019 */ u8 origin; /* 0x0001A */ u8 badges; /* 0x0001B */ u8 avatar; - /* 0x0001C */ u8 filler_0001C[0x14]; - /* 0x00030 */ struct PlayerParty party; - // TODO: finish this st ruct -}; + /* 0x0001C */ u8 filler_0001C[0x1F8]; + /* 0x00214 */ u8 dynamic_region[0x20000]; + /* 0x20214 */ u8 filler_20214[16]; + /* 0x20224 */ struct SavArrayHeader arrayHeaders[36]; + /* 0x20464 */ u8 filler_20464[0x44]; + // TODO: finish this struct +}; // size: 0x204A8 struct String * FUN_020239A0(struct SaveBlock2 *, u32 heap_id); u32 FUN_020239BC(struct SaveBlock2 *); |