diff options
Diffstat (limited to 'arm9/asm')
-rw-r--r-- | arm9/asm/daycare.s | 201 | ||||
-rw-r--r-- | arm9/asm/pokedex.s (renamed from arm9/asm/unk_02023C40.s) | 239 | ||||
-rw-r--r-- | arm9/asm/scrcmd.s | 4 | ||||
-rw-r--r-- | arm9/asm/scrcmd_16.s | 4 | ||||
-rw-r--r-- | arm9/asm/scrcmd_3.s | 2 | ||||
-rw-r--r-- | arm9/asm/unk_020476CC.s | 12 | ||||
-rw-r--r-- | arm9/asm/unk_0205CE48.s | 2 | ||||
-rw-r--r-- | arm9/asm/unk_0206BB28.s | 2 |
8 files changed, 241 insertions, 225 deletions
diff --git a/arm9/asm/daycare.s b/arm9/asm/daycare.s new file mode 100644 index 00000000..3de96399 --- /dev/null +++ b/arm9/asm/daycare.s @@ -0,0 +1,201 @@ + .include "asm/macros.inc" + .include "global.inc" + .include "constants/species.h" + + .text + + thumb_func_start Sav2_Daycare_sizeof +Sav2_Daycare_sizeof: ; 0x02023C40 + mov r0, #0x1e + lsl r0, r0, #0x4 + bx lr + .balign 4 + + thumb_func_start Sav2_Daycare_init +Sav2_Daycare_init: ; 0x02023C48 + push {r4, lr} + mov r2, #0x1e + add r4, r0, #0x0 + mov r1, #0x0 + lsl r2, r2, #0x4 + bl memset + add r0, r4, #0x0 + bl ZeroBoxMonData + add r0, r4, #0x0 + add r0, #0xec + bl ZeroBoxMonData + mov r0, #0x76 + mov r1, #0x0 + lsl r0, r0, #0x2 + str r1, [r4, r0] + add r0, r0, #0x4 + strb r1, [r4, r0] + pop {r4, pc} + .balign 4 + + thumb_func_start FUN_02023C74 +FUN_02023C74: ; 0x02023C74 + mov r2, #0xec + mul r2, r1 + add r0, r0, r2 + bx lr + + thumb_func_start FUN_02023C7C +FUN_02023C7C: ; 0x02023C7C + bx lr + .balign 4 + + thumb_func_start FUN_02023C80 +FUN_02023C80: ; 0x02023C80 + add r0, #0x88 + bx lr + + thumb_func_start FUN_02023C84 +FUN_02023C84: ; 0x02023C84 + add r0, #0xe8 + ldr r0, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start FUN_02023C8C +FUN_02023C8C: ; 0x02023C8C + bx lr + .balign 4 + + thumb_func_start FUN_02023C90 +FUN_02023C90: ; 0x02023C90 + mov r1, #0x76 + lsl r1, r1, #0x2 + ldr r0, [r0, r1] + bx lr + + thumb_func_start FUN_02023C98 +FUN_02023C98: ; 0x02023C98 + mov r1, #0x77 + lsl r1, r1, #0x2 + ldrb r0, [r0, r1] + bx lr + + thumb_func_start FUN_02023CA0 +FUN_02023CA0: ; 0x02023CA0 + add r0, #0xe8 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start FUN_02023CA8 +FUN_02023CA8: ; 0x02023CA8 + add r2, r0, #0x0 + add r2, #0xe8 + ldr r2, [r2, #0x0] + add r0, #0xe8 + add r1, r2, r1 + str r1, [r0, #0x0] + bx lr + .balign 4 + + thumb_func_start FUN_02023CB8 +FUN_02023CB8: ; 0x02023CB8 + mov r2, #0x76 + lsl r2, r2, #0x2 + str r1, [r0, r2] + bx lr + + thumb_func_start FUN_02023CC0 +FUN_02023CC0: ; 0x02023CC0 + mov r2, #0x77 + lsl r2, r2, #0x2 + strb r1, [r0, r2] + bx lr + + thumb_func_start FUN_02023CC8 +FUN_02023CC8: ; 0x02023CC8 + push {r3-r5, lr} + add r5, r0, #0x0 + mov r1, #0xc + mov r2, #0x0 + bl GetBoxMonData + add r5, #0xec + add r4, r0, #0x0 + add r0, r5, #0x0 + mov r1, #0xc + mov r2, #0x0 + bl GetBoxMonData + cmp r4, r0 + beq _02023CEA + mov r0, #0x1 + pop {r3-r5, pc} +_02023CEA: + mov r0, #0x0 + pop {r3-r5, pc} + .balign 4 + + thumb_func_start FUN_02023CF0 +FUN_02023CF0: ; 0x02023CF0 + push {r3-r4} + add r4, r0, #0x0 + add r3, r1, #0x0 + mov r2, #0x1d +_02023CF8: + ldmia r3!, {r0-r1} + stmia r4!, {r0-r1} + sub r2, r2, #0x1 + bne _02023CF8 + ldr r0, [r3, #0x0] + str r0, [r4, #0x0] + pop {r3-r4} + bx lr + + thumb_func_start FUN_02023D08 +FUN_02023D08: ; 0x02023D08 + push {r3-r4} + mov r1, #0x0 + add r2, r0, #0x0 + add r4, r1, #0x0 +_02023D10: + add r1, r1, #0x1 + strh r4, [r2, #0x38] + add r2, r2, #0x2 + cmp r1, #0x8 + blt _02023D10 + add r3, r0, #0x0 + mov r2, #0x0 +_02023D1E: + add r1, r3, #0x0 + add r1, #0x48 + add r4, r4, #0x1 + add r3, r3, #0x2 + strh r2, [r1, #0x0] + cmp r4, #0xb + blt _02023D1E + ldr r1, _02023D38 ; =0x0000FFFF + strh r1, [r0, #0x38] + add r0, #0x48 + strh r1, [r0, #0x0] + pop {r3-r4} + bx lr + .balign 4 +_02023D38: .word 0x0000FFFF + + thumb_func_start FUN_02023D3C +FUN_02023D3C: ; 0x02023D3C + push {r4, lr} + add r4, r0, #0x0 + bl ZeroBoxMonData + add r0, r4, #0x0 + mov r1, #0x0 + add r0, #0xe8 + add r4, #0x88 + str r1, [r0, #0x0] + add r0, r4, #0x0 + bl FUN_02023D08 + pop {r4, pc} + .balign 4 + + thumb_func_start Sav2_Daycare_get +Sav2_Daycare_get: ; 0x02023D58 + ldr r3, _02023D60 ; =SavArray_get + mov r1, #0x8 + bx r3 + nop +_02023D60: .word SavArray_get diff --git a/arm9/asm/unk_02023C40.s b/arm9/asm/pokedex.s index 0de40519..11a29cda 100644 --- a/arm9/asm/unk_02023C40.s +++ b/arm9/asm/pokedex.s @@ -1,231 +1,46 @@ .include "asm/macros.inc" .include "global.inc" + .include "constants/species.h" .section .rodata .global UNK_020EE940 UNK_020EE940: ; 0x020EE940 - .short 0x01EA, 0x0097, 0x00F9, 0x00FA, 0x00FB, 0x0181, 0x0182, 0x01E9 - .short 0x01EA, 0x01EB, 0x01EC, 0x01ED + .short SPECIES_MANAPHY + .short SPECIES_MEW + .short SPECIES_LUGIA + .short SPECIES_HO_OH + .short SPECIES_CELEBI + .short SPECIES_JIRACHI + .short SPECIES_DEOXYS + .short SPECIES_PHIONE + .short SPECIES_MANAPHY + .short SPECIES_DARKRAI + .short SPECIES_SHAYMIN + .short SPECIES_ARCEUS .text - thumb_func_start FUN_02023C40 -FUN_02023C40: ; 0x02023C40 - mov r0, #0x1e - lsl r0, r0, #0x4 - bx lr - .balign 4 - - thumb_func_start FUN_02023C48 -FUN_02023C48: ; 0x02023C48 - push {r4, lr} - mov r2, #0x1e - add r4, r0, #0x0 - mov r1, #0x0 - lsl r2, r2, #0x4 - bl memset - add r0, r4, #0x0 - bl ZeroBoxMonData - add r0, r4, #0x0 - add r0, #0xec - bl ZeroBoxMonData - mov r0, #0x76 - mov r1, #0x0 - lsl r0, r0, #0x2 - str r1, [r4, r0] - add r0, r0, #0x4 - strb r1, [r4, r0] - pop {r4, pc} - .balign 4 - - thumb_func_start FUN_02023C74 -FUN_02023C74: ; 0x02023C74 - mov r2, #0xec - mul r2, r1 - add r0, r0, r2 - bx lr - - thumb_func_start FUN_02023C7C -FUN_02023C7C: ; 0x02023C7C - bx lr - .balign 4 - - thumb_func_start FUN_02023C80 -FUN_02023C80: ; 0x02023C80 - add r0, #0x88 - bx lr - - thumb_func_start FUN_02023C84 -FUN_02023C84: ; 0x02023C84 - add r0, #0xe8 - ldr r0, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start FUN_02023C8C -FUN_02023C8C: ; 0x02023C8C - bx lr - .balign 4 - - thumb_func_start FUN_02023C90 -FUN_02023C90: ; 0x02023C90 - mov r1, #0x76 - lsl r1, r1, #0x2 - ldr r0, [r0, r1] - bx lr - - thumb_func_start FUN_02023C98 -FUN_02023C98: ; 0x02023C98 - mov r1, #0x77 - lsl r1, r1, #0x2 - ldrb r0, [r0, r1] - bx lr - - thumb_func_start FUN_02023CA0 -FUN_02023CA0: ; 0x02023CA0 - add r0, #0xe8 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start FUN_02023CA8 -FUN_02023CA8: ; 0x02023CA8 - add r2, r0, #0x0 - add r2, #0xe8 - ldr r2, [r2, #0x0] - add r0, #0xe8 - add r1, r2, r1 - str r1, [r0, #0x0] - bx lr - .balign 4 - - thumb_func_start FUN_02023CB8 -FUN_02023CB8: ; 0x02023CB8 - mov r2, #0x76 - lsl r2, r2, #0x2 - str r1, [r0, r2] - bx lr - - thumb_func_start FUN_02023CC0 -FUN_02023CC0: ; 0x02023CC0 - mov r2, #0x77 - lsl r2, r2, #0x2 - strb r1, [r0, r2] - bx lr - - thumb_func_start FUN_02023CC8 -FUN_02023CC8: ; 0x02023CC8 - push {r3-r5, lr} - add r5, r0, #0x0 - mov r1, #0xc - mov r2, #0x0 - bl GetBoxMonData - add r5, #0xec - add r4, r0, #0x0 - add r0, r5, #0x0 - mov r1, #0xc - mov r2, #0x0 - bl GetBoxMonData - cmp r4, r0 - beq _02023CEA - mov r0, #0x1 - pop {r3-r5, pc} -_02023CEA: - mov r0, #0x0 - pop {r3-r5, pc} - .balign 4 - - thumb_func_start FUN_02023CF0 -FUN_02023CF0: ; 0x02023CF0 - push {r3-r4} - add r4, r0, #0x0 - add r3, r1, #0x0 - mov r2, #0x1d -_02023CF8: - ldmia r3!, {r0-r1} - stmia r4!, {r0-r1} - sub r2, r2, #0x1 - bne _02023CF8 - ldr r0, [r3, #0x0] - str r0, [r4, #0x0] - pop {r3-r4} - bx lr - - thumb_func_start FUN_02023D08 -FUN_02023D08: ; 0x02023D08 - push {r3-r4} - mov r1, #0x0 - add r2, r0, #0x0 - add r4, r1, #0x0 -_02023D10: - add r1, r1, #0x1 - strh r4, [r2, #0x38] - add r2, r2, #0x2 - cmp r1, #0x8 - blt _02023D10 - add r3, r0, #0x0 - mov r2, #0x0 -_02023D1E: - add r1, r3, #0x0 - add r1, #0x48 - add r4, r4, #0x1 - add r3, r3, #0x2 - strh r2, [r1, #0x0] - cmp r4, #0xb - blt _02023D1E - ldr r1, _02023D38 ; =0x0000FFFF - strh r1, [r0, #0x38] - add r0, #0x48 - strh r1, [r0, #0x0] - pop {r3-r4} - bx lr - .balign 4 -_02023D38: .word 0x0000FFFF - - thumb_func_start FUN_02023D3C -FUN_02023D3C: ; 0x02023D3C - push {r4, lr} - add r4, r0, #0x0 - bl ZeroBoxMonData - add r0, r4, #0x0 - mov r1, #0x0 - add r0, #0xe8 - add r4, #0x88 - str r1, [r0, #0x0] - add r0, r4, #0x0 - bl FUN_02023D08 - pop {r4, pc} - .balign 4 - - thumb_func_start FUN_02023D58 -FUN_02023D58: ; 0x02023D58 - ldr r3, _02023D60 ; =SavArray_get - mov r1, #0x8 - bx r3 - nop -_02023D60: .word SavArray_get - - thumb_func_start FUN_02023D64 -FUN_02023D64: ; 0x02023D64 + thumb_func_start Sav2_Pokedex_sizeof +Sav2_Pokedex_sizeof: ; 0x02023D64 mov r0, #0x4f lsl r0, r0, #0x2 bx lr .balign 4 - thumb_func_start FUN_02023D6C -FUN_02023D6C: ; 0x02023D6C + thumb_func_start Sav2_Pokedex_new +Sav2_Pokedex_new: ; 0x02023D6C push {r4, lr} mov r1, #0x4f lsl r1, r1, #0x2 bl AllocFromHeap add r4, r0, #0x0 - bl FUN_02024378 + bl Sav2_Pokedex_init add r0, r4, #0x0 pop {r4, pc} - thumb_func_start FUN_02023D80 -FUN_02023D80: ; 0x02023D80 + thumb_func_start Sav2_Pokedex_Copy +Sav2_Pokedex_Copy: ; 0x02023D80 ldr r3, _02023D88 ; =MI_CpuCopy8 mov r2, #0x4f lsl r2, r2, #0x2 @@ -1071,8 +886,8 @@ _0202436E: nop _02024374: .word 0x000001EA - thumb_func_start FUN_02024378 -FUN_02024378: ; 0x02024378 + thumb_func_start Sav2_Pokedex_init +Sav2_Pokedex_init: ; 0x02024378 push {r4, lr} mov r2, #0x4f mov r1, #0x0 @@ -1177,7 +992,7 @@ _0202443C: .word 0x000001ED FUN_02024440: ; 0x02024440 push {r4, lr} add r4, r0, #0x0 - bl FUN_02024CA4 + bl Pokedex_GetNatDexFlag cmp r0, #0x0 beq _02024454 add r0, r4, #0x0 @@ -2296,8 +2111,8 @@ _02024C78: .word 0xBEEFCAFE _02024C7C: .word 0x000001ED _02024C80: .word 0x00000147 - thumb_func_start FUN_02024C84 -FUN_02024C84: ; 0x02024C84 + thumb_func_start Pokedex_SetNatDexFlag +Pokedex_SetNatDexFlag: ; 0x02024C84 push {r4, lr} add r4, r0, #0x0 ldr r1, [r4, #0x0] @@ -2314,8 +2129,8 @@ _02024C94: _02024C9C: .word 0xBEEFCAFE _02024CA0: .word 0x00000139 - thumb_func_start FUN_02024CA4 -FUN_02024CA4: ; 0x02024CA4 + thumb_func_start Pokedex_GetNatDexFlag +Pokedex_GetNatDexFlag: ; 0x02024CA4 push {r4, lr} add r4, r0, #0x0 ldr r1, [r4, #0x0] diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s index 716c0f15..1cf7300d 100644 --- a/arm9/asm/scrcmd.s +++ b/arm9/asm/scrcmd.s @@ -10034,7 +10034,7 @@ FUN_0203E968: ; 0x0203E968 ldr r0, [r0, #0x0] ldr r0, [r0, #0xc] bl FUN_02024DA0 - bl FUN_02024C84 + bl Pokedex_SetNatDexFlag add r5, #0x80 ldr r0, [r5, #0x0] ldr r0, [r0, #0xc] @@ -10048,7 +10048,7 @@ _0203E9AE: ldr r0, [r5, #0x0] ldr r0, [r0, #0xc] bl FUN_02024DA0 - bl FUN_02024CA4 + bl Pokedex_GetNatDexFlag strh r0, [r6, #0x0] b _0203E9C8 _0203E9C4: diff --git a/arm9/asm/scrcmd_16.s b/arm9/asm/scrcmd_16.s index dba4514e..374d9ace 100644 --- a/arm9/asm/scrcmd_16.s +++ b/arm9/asm/scrcmd_16.s @@ -13,7 +13,7 @@ FUN_02043E00: ; 0x02043E00 bl FUN_02039438 add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_02023D58 + bl Sav2_Daycare_get ldr r1, [r4, #0x0] bl MOD05_021ED4E0 mov r0, #0x0 @@ -306,7 +306,7 @@ FUN_02044034: ; 0x02044034 bl VarGet add r4, r0, #0x0 add r0, r5, #0x0 - bl FUN_02023D58 + bl Sav2_Daycare_get lsl r1, r4, #0x18 lsr r1, r1, #0x18 str r1, [sp, #0x0] diff --git a/arm9/asm/scrcmd_3.s b/arm9/asm/scrcmd_3.s index 3de355ea..4d4d924c 100644 --- a/arm9/asm/scrcmd_3.s +++ b/arm9/asm/scrcmd_3.s @@ -145,7 +145,7 @@ FUN_0203FF10: ; 0x0203FF10 ldr r0, [r0, #0x0] ldr r0, [r0, #0xc] bl FUN_02024DA0 - bl FUN_02024CA4 + bl Pokedex_GetNatDexFlag add r1, sp, #0x14 strb r0, [r1, #0x4] strb r6, [r1, #0x5] diff --git a/arm9/asm/unk_020476CC.s b/arm9/asm/unk_020476CC.s index 60437a7d..bf857f21 100644 --- a/arm9/asm/unk_020476CC.s +++ b/arm9/asm/unk_020476CC.s @@ -111,7 +111,7 @@ _02047774: lsl r1, r1, #0x2 str r0, [r7, r1] add r0, r5, #0x0 - bl FUN_02023D6C + bl Sav2_Pokedex_new mov r1, #0x11 lsl r1, r1, #0x4 str r0, [r7, r1] @@ -508,7 +508,7 @@ FUN_02047A78: ; 0x02047A78 lsl r1, r1, #0x4 ldr r0, [sp, #0x4] ldr r1, [r5, r1] - bl FUN_02023D80 + bl Sav2_Pokedex_Copy mov r1, #0x13 lsl r1, r1, #0x4 ldr r0, [sp, #0xc] @@ -707,7 +707,7 @@ _02047C98: lsl r1, r1, #0x4 ldr r0, [sp, #0xc] ldr r1, [r6, r1] - bl FUN_02023D80 + bl Sav2_Pokedex_Copy mov r1, #0x13 lsl r1, r1, #0x4 ldr r0, [sp, #0x4] @@ -891,7 +891,7 @@ _02047E2C: lsl r1, r1, #0x4 ldr r0, [sp, #0x18] ldr r1, [r5, r1] - bl FUN_02023D80 + bl Sav2_Pokedex_Copy mov r1, #0x13 lsl r1, r1, #0x4 ldr r0, [sp, #0x10] @@ -1042,7 +1042,7 @@ FUN_02047F38: ; 0x02047F38 lsl r0, r0, #0x4 ldr r0, [r4, r0] ldr r1, [sp, #0x4] - bl FUN_02023D80 + bl Sav2_Pokedex_Copy mov r0, #0x19 lsl r0, r0, #0x4 ldr r0, [r4, r0] @@ -1067,7 +1067,7 @@ FUN_02047FA4: ; 0x02047FA4 mov r0, #0x11 lsl r0, r0, #0x4 ldr r0, [r4, r0] - bl FUN_02023D80 + bl Sav2_Pokedex_Copy pop {r3-r5, pc} thumb_func_start FUN_02047FD0 diff --git a/arm9/asm/unk_0205CE48.s b/arm9/asm/unk_0205CE48.s index c42ef09c..aa8d85d5 100644 --- a/arm9/asm/unk_0205CE48.s +++ b/arm9/asm/unk_0205CE48.s @@ -1667,7 +1667,7 @@ _0205DB1A: ldr r0, [r4, #0x18] ldr r0, [r0, #0xc] bl FUN_02024DA0 - bl FUN_02024CA4 + bl Pokedex_GetNatDexFlag cmp r0, #0x0 bne _0205DB30 mov r0, #0x0 diff --git a/arm9/asm/unk_0206BB28.s b/arm9/asm/unk_0206BB28.s index 6416c65f..c460f6c3 100644 --- a/arm9/asm/unk_0206BB28.s +++ b/arm9/asm/unk_0206BB28.s @@ -13,7 +13,7 @@ FUN_0206BB28: ; 0x0206BB28 thumb_func_start FUN_0206BB34 FUN_0206BB34: ; 0x0206BB34 push {r3, lr} - bl FUN_02024CA4 + bl Pokedex_GetNatDexFlag cmp r0, #0x1 bne _0206BB42 mov r0, #0x1 |