summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorDennis <dhilhorst2000@gmail.com>2021-07-26 06:11:01 +0200
committerGitHub <noreply@github.com>2021-07-25 21:11:01 -0700
commit645c45431b0e091234699c3706ff90d1654cfb57 (patch)
tree412551a72247c0d9b21049d5addcbe34014419d3 /asm
parentbad7f7f688253c87c2cb2d063ea57c884cb6adff (diff)
Pokemon related decomp (#47)
* decompile last function in pokemon_1.s * some pokemon related decomp * more decomp * decomp another function * decompile function * another one * decompile GetPokemonLevelData * decompile more * more decomp * more structure and decomp * decomp another function (need to do some renaming) * rename some stuff * I cant do anything without committing these 2 files
Diffstat (limited to 'asm')
-rw-r--r--asm/code_8027C84.s4
-rw-r--r--asm/code_803B050.s4
-rw-r--r--asm/code_8057824.s20
-rw-r--r--asm/code_8097670.s4
-rw-r--r--asm/friend_area_action_menu.s6
-rw-r--r--asm/friend_list_menu.s34
-rw-r--r--asm/pokemon.s129
-rw-r--r--asm/pokemon_1.s72
-rw-r--r--asm/pokemon_2.s1117
-rw-r--r--asm/pokemon_3.s65
10 files changed, 38 insertions, 1417 deletions
diff --git a/asm/code_8027C84.s b/asm/code_8027C84.s
index 5057e00..c9fdacd 100644
--- a/asm/code_8027C84.s
+++ b/asm/code_8027C84.s
@@ -320,7 +320,7 @@ _08027ED8:
movs r2, 0x8
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
movs r0, 0x6
bl sub_8027184
b _08027F82
@@ -371,7 +371,7 @@ _08027F52:
movs r2, 0x8
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
movs r0, 0x7
bl sub_8027184
b _08027F82
diff --git a/asm/code_803B050.s b/asm/code_803B050.s
index c9ff87c..1b59946 100644
--- a/asm/code_803B050.s
+++ b/asm/code_803B050.s
@@ -2062,7 +2062,7 @@ sub_803C0DC:
push {lr}
lsls r0, 16
asrs r0, 16
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
asrs r2, r0, 16
ldr r1, _0803C0F0
@@ -2100,7 +2100,7 @@ sub_803C110:
cmp r0, 0
beq _0803C180
adds r0, r4, 0
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
asrs r0, 16
cmp r4, r0
diff --git a/asm/code_8057824.s b/asm/code_8057824.s
index 8cf0799..b715023 100644
--- a/asm/code_8057824.s
+++ b/asm/code_8057824.s
@@ -33850,7 +33850,7 @@ _08068922:
mov r9, r0
adds r0, r2, r0
mov r1, r10
- bl sub_808DE30
+ bl xxx_pokemonstruct_index_to_unk_808DE30
ldr r0, _08068A68
ldr r0, [r0]
ldr r1, _08068A6C
@@ -34079,7 +34079,7 @@ _08068B08:
adds r0, r4, 0
adds r1, r6, 0
ldr r2, _08068B74
- bl sub_808DE50
+ bl xxx_pokemonstruct_to_unk_808DE50
ldrh r0, [r4]
movs r1, 0x1
movs r2, 0
@@ -34293,7 +34293,7 @@ _08068CDC:
movs r3, 0xA
ldrsh r0, [r4, r3]
adds r1, r4, 0
- bl sub_808DF2C
+ bl xxx_unk_to_pokemonstruct_index_808DF2C
b _08068CFE
_08068CE8:
ldr r0, [sp, 0x220]
@@ -34401,7 +34401,7 @@ _08068D6A:
adds r0, r1
str r0, [r4]
adds r1, r5, 0
- bl sub_808DF44
+ bl xxx_unk_to_pokemonstruct_808DF44
ldr r2, [r4]
ldrh r0, [r2]
movs r3, 0x80
@@ -34997,7 +34997,7 @@ _08069228:
movs r2, 0xA
ldrsh r0, [r4, r2]
adds r1, r4, 0
- bl sub_808DF2C
+ bl xxx_unk_to_pokemonstruct_index_808DF2C
_0806926E:
bl sub_8044210
lsls r0, 24
@@ -35196,7 +35196,7 @@ _080693CC:
movs r2, 0xA
ldrsh r0, [r4, r2]
adds r1, r4, 0
- bl sub_808DF2C
+ bl xxx_unk_to_pokemonstruct_index_808DF2C
_0806940E:
bl sub_8044210
lsls r0, 24
@@ -38134,7 +38134,7 @@ sub_806AA0C:
cmp r0, 0
beq _0806AA40
adds r0, r4, 0
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
movs r1, 0xCF
lsls r1, 17
@@ -40078,7 +40078,7 @@ sub_806B8CC:
str r0, [r1]
_0806B906:
adds r0, r4, 0
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
asrs r1, r0, 16
movs r0, 0xCF
@@ -40598,7 +40598,7 @@ _0806BD20:
_0806BD24:
movs r4, 0x2
ldrsh r0, [r6, r4]
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
movs r1, 0xCF
lsls r1, 17
@@ -40613,7 +40613,7 @@ _0806BD24:
_0806BD42:
movs r2, 0x2
ldrsh r0, [r6, r2]
- bl sub_808E770
+ bl GetBaseSpecies
lsls r0, 16
asrs r0, 16
cmp r0, 0x97
diff --git a/asm/code_8097670.s b/asm/code_8097670.s
index 288edc3..d84260c 100644
--- a/asm/code_8097670.s
+++ b/asm/code_8097670.s
@@ -10,7 +10,7 @@ sub_80978C8:
push {lr}
lsls r0, 16
asrs r0, 16
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
asrs r3, r0, 16
ldr r0, _080978FC
@@ -42,7 +42,7 @@ sub_8097900:
push {lr}
lsls r0, 16
asrs r0, 16
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
asrs r3, r0, 16
ldr r0, _08097938
diff --git a/asm/friend_area_action_menu.s b/asm/friend_area_action_menu.s
index f984e29..3c0a469 100644
--- a/asm/friend_area_action_menu.s
+++ b/asm/friend_area_action_menu.s
@@ -512,7 +512,7 @@ _0802782C:
movs r2, 0x8
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D7DC
+ bl PeekPokemonItem
movs r0, 0x3
bl sub_8027184
b _080278AE
@@ -538,7 +538,7 @@ _08027868:
movs r2, 0x8
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D7DC
+ bl PeekPokemonItem
movs r0, 0x4
bl sub_8027184
b _080278AE
@@ -707,7 +707,7 @@ _080279F0:
movs r2, 0x8
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
bl nullsub_104
_08027A0E:
movs r0, 0x2
diff --git a/asm/friend_list_menu.s b/asm/friend_list_menu.s
index caa5a02..9c9a903 100644
--- a/asm/friend_list_menu.s
+++ b/asm/friend_list_menu.s
@@ -3722,7 +3722,7 @@ _08020BD0:
ldr r0, [r0, 0x10]
movs r1, 0x8
ldrsh r0, [r0, r1]
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
movs r1, 0xCF
lsls r1, 17
@@ -5591,7 +5591,7 @@ _08021A8E:
cmp r1, r0
bne _08021AC4
adds r0, r5, 0
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
asrs r0, 16
cmp r5, r0
@@ -5686,7 +5686,7 @@ sub_8021B58:
push {r4,r5,lr}
lsls r0, 16
asrs r0, 16
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
asrs r4, r0, 16
movs r2, 0
@@ -9086,7 +9086,7 @@ _080236B0:
cmp r0, 0
beq _080236E2
adds r0, r4, 0
- bl sub_808E858
+ bl GetBaseSpeciesNoUnown
lsls r0, 16
asrs r0, 16
cmp r4, r0
@@ -10802,7 +10802,7 @@ _080243A8:
ldrsh r0, [r5, r1]
movs r2, 0
ldrsh r1, [r4, r2]
- bl sub_808D864
+ bl ComparePokemonNames
lsls r0, 24
cmp r0, 0
beq _080243C6
@@ -11170,7 +11170,7 @@ sub_802465C:
bl sub_808D33C
ldr r1, [r5]
str r0, [r1, 0xC]
- bl sub_808D824
+ bl IsPokemonRenamed
ldr r1, [r5]
strb r0, [r1, 0x10]
ldr r0, [r5]
@@ -12590,7 +12590,7 @@ sub_8025204:
ldr r4, _0802522C
ldr r0, [r4]
ldr r0, [r0, 0xC]
- bl sub_808D824
+ bl IsPokemonRenamed
ldr r1, [r4]
strb r0, [r1, 0x10]
movs r0, 0x3
@@ -13351,7 +13351,7 @@ _08025810:
cmp r1, r0
bne _08025840
adds r0, r7, 0
- bl sub_808D824
+ bl IsPokemonRenamed
lsls r0, 24
cmp r0, 0
beq _08025840
@@ -13620,7 +13620,7 @@ _08025A0C:
movs r2, 0xE
ldrsh r0, [r1, r2]
adds r1, 0x18
- bl sub_808D7DC
+ bl PeekPokemonItem
movs r0, 0x3
bl sub_8025434
b _08025A7E
@@ -13643,7 +13643,7 @@ _08025A40:
movs r2, 0xE
ldrsh r0, [r1, r2]
adds r1, 0x18
- bl sub_808D7DC
+ bl PeekPokemonItem
movs r0, 0x4
bl sub_8025434
b _08025A7E
@@ -13751,7 +13751,7 @@ _08025B40:
movs r2, 0xE
ldrsh r0, [r1, r2]
adds r1, 0x18
- bl sub_808D800
+ bl GivePokemonItem
bl nullsub_104
movs r0, 0xA
bl sub_8025434
@@ -13990,7 +13990,7 @@ _08025D24:
movs r2, 0xE
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
bl sub_801A928
bl nullsub_104
adds r0, r6, 0
@@ -14930,7 +14930,7 @@ sub_80264CC:
movs r3, 0xA
ldrsh r0, [r1, r3]
adds r1, 0x14
- bl sub_808D7DC
+ bl PeekPokemonItem
mov r1, r8
ldrh r0, [r1]
lsrs r0, 1
@@ -15577,7 +15577,7 @@ _08026A28:
movs r2, 0xA
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
bl nullsub_104
movs r0, 0x11
bl sub_8026074
@@ -15893,7 +15893,7 @@ _08026C84:
movs r2, 0xA
ldrsh r0, [r1, r2]
adds r1, 0x10
- bl sub_808D800
+ bl GivePokemonItem
bl sub_801A928
bl nullsub_104
adds r0, r6, 0
@@ -16306,7 +16306,7 @@ _08026FC4:
movs r2, 0xA
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
movs r0, 0xA
bl sub_8026074
b _0802706E
@@ -16357,7 +16357,7 @@ _0802703E:
movs r2, 0xA
ldrsh r0, [r1, r2]
adds r1, 0x14
- bl sub_808D800
+ bl GivePokemonItem
movs r0, 0xB
bl sub_8026074
b _0802706E
diff --git a/asm/pokemon.s b/asm/pokemon.s
index 4f14847..5fc8e9e 100644
--- a/asm/pokemon.s
+++ b/asm/pokemon.s
@@ -1316,133 +1316,4 @@ _0808D7CE:
bx r1
thumb_func_end sub_808D750
- thumb_func_start sub_808D7DC
-sub_808D7DC:
- lsls r0, 16
- asrs r0, 16
- ldr r3, _0808D7FC
- movs r2, 0x58
- muls r2, r0
- ldr r0, [r3]
- adds r0, r2
- adds r2, r0, 0
- adds r2, 0x28
- ldrb r2, [r2]
- strb r2, [r1]
- adds r0, 0x29
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
- bx lr
- .align 2, 0
-_0808D7FC: .4byte gRecruitedPokemonRef
- thumb_func_end sub_808D7DC
-
- thumb_func_start sub_808D800
-sub_808D800:
- lsls r0, 16
- asrs r0, 16
- ldr r3, _0808D820
- movs r2, 0x58
- muls r2, r0
- ldr r0, [r3]
- adds r0, r2
- ldrb r3, [r1]
- adds r2, r0, 0
- adds r2, 0x28
- strb r3, [r2]
- ldrb r1, [r1, 0x1]
- adds r0, 0x29
- strb r1, [r0]
- bx lr
- .align 2, 0
-_0808D820: .4byte gRecruitedPokemonRef
- thumb_func_end sub_808D800
-
- thumb_func_start sub_808D824
-sub_808D824:
- push {r4,lr}
- sub sp, 0x14
- adds r4, r0, 0
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- bl GetMonSpecies
- adds r1, r0, 0
- mov r0, sp
- bl CopyStringtoBuffer
- movs r2, 0
- adds r4, 0x4C
-_0808D83E:
- adds r0, r4, r2
- mov r3, sp
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- beq _0808D850
- movs r0, 0
- b _0808D85C
-_0808D850:
- cmp r0, 0
- beq _0808D85A
- adds r2, 0x1
- cmp r2, 0x9
- ble _0808D83E
-_0808D85A:
- movs r0, 0x1
-_0808D85C:
- add sp, 0x14
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_808D824
-
- thumb_func_start sub_808D864
-sub_808D864:
- push {r4-r7,lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- ldr r2, _0808D8A0
- movs r3, 0x58
- muls r0, r3
- ldr r2, [r2]
- adds r0, r2, r0
- adds r6, r0, 0
- adds r6, 0x4C
- adds r0, r1, 0
- muls r0, r3
- adds r2, r0
- adds r5, r2, 0
- adds r5, 0x4C
- movs r7, 0
-_0808D888:
- ldrb r0, [r6]
- bl ReturnIntFromChar
- adds r4, r0, 0
- ldrb r0, [r5]
- bl ReturnIntFromChar
- cmp r4, r0
- ble _0808D8A4
- movs r0, 0x1
- b _0808D8B4
- .align 2, 0
-_0808D8A0: .4byte gRecruitedPokemonRef
-_0808D8A4:
- cmp r4, r0
- blt _0808D8B2
- adds r6, 0x1
- adds r5, 0x1
- adds r7, 0x1
- cmp r7, 0x9
- ble _0808D888
-_0808D8B2:
- movs r0, 0
-_0808D8B4:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_808D864
-
-
.align 2,0
diff --git a/asm/pokemon_1.s b/asm/pokemon_1.s
deleted file mode 100644
index 5417b8e..0000000
--- a/asm/pokemon_1.s
+++ /dev/null
@@ -1,72 +0,0 @@
- .include "constants/gba_constants.inc"
- .include "asm/macros.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_808DA44
-sub_808DA44:
- push {r4-r6,lr}
- sub sp, 0x30
- lsls r0, 16
- asrs r4, r0, 16
- lsls r1, 24
- lsrs r2, r1, 24
- cmp r2, 0xC
- bls _0808DAA0
- mov r1, sp
- ldr r0, _0808DA98
- ldm r0!, {r3,r5,r6}
- stm r1!, {r3,r5,r6}
- ldm r0!, {r3,r5,r6}
- stm r1!, {r3,r5,r6}
- ldm r0!, {r3,r5,r6}
- stm r1!, {r3,r5,r6}
- ldm r0!, {r3,r5,r6}
- stm r1!, {r3,r5,r6}
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- beq _0808DA92
- mov r1, sp
- add r3, sp, 0x48
-_0808DA76:
- movs r5, 0
- ldrsh r0, [r1, r5]
- cmp r0, r4
- bne _0808DA84
- ldr r0, [r1, 0x4]
- cmp r0, r2
- beq _0808DA9C
-_0808DA84:
- adds r1, 0x8
- cmp r1, r3
- bgt _0808DA92
- movs r6, 0
- ldrsh r0, [r1, r6]
- cmp r0, 0
- bne _0808DA76
-_0808DA92:
- movs r0, 0
- b _0808DAA6
- .align 2, 0
-_0808DA98: .4byte gUnknown_8107654
-_0808DA9C:
- movs r0, 0x1
- b _0808DAA6
-_0808DAA0:
- ldr r0, _0808DAB0
- adds r0, r2, r0
- ldrb r0, [r0]
-_0808DAA6:
- add sp, 0x30
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0808DAB0: .4byte gUnknown_8107645
- thumb_func_end sub_808DA44
-
- .align 2,0
diff --git a/asm/pokemon_2.s b/asm/pokemon_2.s
index f2e7742..cf8c39d 100644
--- a/asm/pokemon_2.s
+++ b/asm/pokemon_2.s
@@ -4,786 +4,7 @@
.syntax unified
.text
-
- thumb_func_start sub_808DE50
-sub_808DE50:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- adds r5, r0, 0
- adds r6, r1, 0
- adds r4, r2, 0
- ldrh r0, [r6]
- strh r0, [r5]
- ldrb r0, [r6, 0x3]
- strb r0, [r5, 0x3]
- ldrh r0, [r6, 0x14]
- strh r0, [r5, 0x8]
- ldr r0, [r6, 0x20]
- str r0, [r5, 0x4C]
- adds r0, r5, 0
- adds r0, 0x54
- bl sub_808E6F4
- ldr r0, [r6, 0x4]
- str r0, [r5, 0x4]
- ldrb r0, [r6, 0x2]
- strb r0, [r5, 0x2]
- strh r4, [r5, 0xA]
- ldrh r0, [r6, 0x8]
- strh r0, [r5, 0xE]
- adds r0, r6, 0
- adds r0, 0x24
- ldrb r1, [r0]
- adds r0, r5, 0
- adds r0, 0x50
- strb r1, [r0]
- ldrh r0, [r6, 0x16]
- strh r0, [r5, 0x12]
- strh r0, [r5, 0x10]
- add r0, sp, 0x4
- mov r8, r0
- adds r2, r6, 0
- adds r2, 0x18
- adds r1, r5, 0
- adds r1, 0x14
- movs r3, 0x1
-_0808DEA4:
- ldrb r0, [r2]
- strb r0, [r1]
- ldrb r0, [r2, 0x2]
- strb r0, [r1, 0x2]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0808DEA4
- ldr r0, [r6, 0x1C]
- str r0, [r5, 0x18]
- adds r0, r5, 0
- adds r0, 0x1C
- adds r1, r6, 0
- adds r1, 0x2C
- bl sub_8093F50
- movs r3, 0
- movs r0, 0x28
- adds r0, r6
- mov r12, r0
- adds r2, r5, 0
- adds r2, 0x40
- adds r7, r5, 0
- adds r7, 0x58
- adds r4, r6, 0
- adds r4, 0x4C
-_0808DEDA:
- adds r0, r7, r3
- adds r1, r4, r3
- ldrb r1, [r1]
- strb r1, [r0]
- adds r3, 0x1
- cmp r3, 0x9
- ble _0808DEDA
- mov r0, r12
- ldrb r1, [r0]
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- cmp r0, 0
- beq _0808DF00
- adds r0, r2, 0
- mov r1, r12
- bl HeldItemToSlot
- b _0808DF06
-_0808DF00:
- strb r0, [r2, 0x2]
- strb r0, [r2, 0x1]
- strb r0, [r2]
-_0808DF06:
- mov r0, sp
- movs r1, 0x64
- bl sub_80943A0
- ldr r0, [sp]
- str r0, [r5, 0x44]
- mov r0, r8
- movs r1, 0x64
- bl sub_80943A0
- ldr r0, [sp, 0x4]
- str r0, [r5, 0x48]
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_808DE50
-
- thumb_func_start sub_808DF2C
-sub_808DF2C:
- push {lr}
- ldr r3, _0808DF40
- movs r2, 0x58
- muls r2, r0
- ldr r0, [r3]
- adds r0, r2
- bl sub_808DF44
- pop {r0}
- bx r0
- .align 2, 0
-_0808DF40: .4byte gRecruitedPokemonRef
- thumb_func_end sub_808DF2C
-
- thumb_func_start sub_808DF44
-sub_808DF44:
- push {r4-r7,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldrh r0, [r4]
- strh r0, [r5]
- ldrb r0, [r4, 0x3]
- strb r0, [r5, 0x3]
- ldrh r0, [r4, 0x8]
- strh r0, [r5, 0x14]
- ldr r0, [r4, 0x4C]
- str r0, [r5, 0x20]
- ldr r0, [r4, 0x4]
- str r0, [r5, 0x4]
- ldrb r0, [r4, 0x2]
- strb r0, [r5, 0x2]
- ldrh r0, [r4, 0xE]
- strh r0, [r5, 0x8]
- adds r0, r4, 0
- adds r0, 0x50
- ldrb r1, [r0]
- adds r0, r5, 0
- adds r0, 0x24
- strb r1, [r0]
- ldrh r0, [r4, 0x12]
- strh r0, [r5, 0x16]
- adds r2, r4, 0
- adds r2, 0x14
- adds r1, r5, 0
- adds r1, 0x18
- movs r3, 0x1
-_0808DF80:
- ldrb r0, [r2]
- strb r0, [r1]
- ldrb r0, [r2, 0x2]
- strb r0, [r1, 0x2]
- adds r2, 0x1
- adds r1, 0x1
- subs r3, 0x1
- cmp r3, 0
- bge _0808DF80
- ldr r0, [r4, 0x18]
- str r0, [r5, 0x1C]
- adds r0, r5, 0
- adds r0, 0x2C
- adds r1, r4, 0
- adds r1, 0x1C
- bl sub_8093FA8
- movs r3, 0
- adds r7, r4, 0
- adds r7, 0x40
- adds r6, r5, 0
- adds r6, 0x28
- adds r5, 0x4C
- adds r2, r4, 0
- adds r2, 0x58
-_0808DFB2:
- adds r0, r5, r3
- adds r1, r2, r3
- ldrb r1, [r1]
- strb r1, [r0]
- adds r3, 0x1
- cmp r3, 0x9
- ble _0808DFB2
- ldrb r0, [r7]
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- beq _0808DFD4
- adds r0, r6, 0
- adds r1, r7, 0
- bl SlotToHeldItem
- b _0808DFD6
-_0808DFD4:
- strb r1, [r6]
-_0808DFD6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_808DF44
-
- thumb_func_start sub_808DFDC
-sub_808DFDC:
- push {lr}
- ldr r3, _0808E000
- movs r2, 0x58
- muls r2, r0
- ldr r0, [r3]
- adds r3, r0, r2
- adds r1, 0x40
- ldrb r0, [r1]
- movs r2, 0x1
- ands r2, r0
- cmp r2, 0
- beq _0808E004
- adds r0, r3, 0
- adds r0, 0x28
- bl SlotToHeldItem
- b _0808E00A
- .align 2, 0
-_0808E000: .4byte gRecruitedPokemonRef
-_0808E004:
- adds r0, r3, 0
- adds r0, 0x28
- strb r2, [r0]
-_0808E00A:
- pop {r0}
- bx r0
- thumb_func_end sub_808DFDC
-
- thumb_func_start GetPokemonLevelData
-GetPokemonLevelData:
- push {r4-r6,lr}
- sub sp, 0xC
- adds r6, r0, 0
- adds r5, r2, 0
- lsls r1, 16
- asrs r2, r1, 16
- ldr r1, _0808E06C
- movs r3, 0
- ldrsh r0, [r1, r3]
- cmp r0, r2
- beq _0808E04A
- strh r2, [r1]
- ldr r1, _0808E070
- mov r0, sp
- bl sprintf
- ldr r1, _0808E074
- mov r0, sp
- bl OpenFileAndGetFileDataPtr
- adds r4, r0, 0
- ldr r0, _0808E078
- movs r1, 0
- adds r2, r4, 0
- bl DecompressATFile
- adds r0, r4, 0
- bl CloseFile
-_0808E04A:
- subs r5, 0x1
- cmp r5, 0
- bge _0808E052
- movs r5, 0
-_0808E052:
- ldr r0, _0808E078
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 2
- adds r2, r6, 0
- adds r1, r0
- ldm r1!, {r0,r3,r4}
- stm r2!, {r0,r3,r4}
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0808E06C: .4byte gLevelCurrentPokeId
-_0808E070: .4byte gUnknown_810768C
-_0808E074: .4byte gSystemFileArchive
-_0808E078: .4byte gLevelCurrentData
- thumb_func_end GetPokemonLevelData
-
- thumb_func_start sub_808E07C
-sub_808E07C:
- push {r4,lr}
- adds r2, r0, 0
- adds r4, r1, 0
- ldrb r1, [r2]
- adds r2, 0x1
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0808E094
- ldrb r3, [r2]
- adds r2, 0x1
- b _0808E098
-_0808E094:
- adds r3, r1, 0
- movs r1, 0
-_0808E098:
- movs r0, 0x7F
- ands r3, r0
- ands r1, r0
- lsls r0, r1, 7
- orrs r0, r3
- strh r0, [r4]
- adds r0, r2, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_808E07C
-
- thumb_func_start sub_808E0AC
-sub_808E0AC:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r6, r0, 0
- mov r8, r2
- adds r5, r3, 0
- lsls r1, 16
- asrs r1, 16
- adds r2, r1, 0
- movs r7, 0
- ldr r0, _0808E0DC
- cmp r1, r0
- beq _0808E0D8
- cmp r1, 0
- beq _0808E0D8
- movs r0, 0xD2
- lsls r0, 1
- cmp r1, r0
- bne _0808E0E0
-_0808E0D8:
- movs r0, 0
- b _0808E170
- .align 2, 0
-_0808E0DC: .4byte 0x000001a5
-_0808E0E0:
- adds r0, r2, 0
- bl sub_8092B18
- adds r1, r0, 0
- mov r4, sp
- movs r0, 0x88
- lsls r0, 1
- mov r10, r0
- movs r3, 0xB1
- lsls r3, 1
- mov r9, r3
- b _0808E156
-_0808E0F8:
- cmp r0, r8
- bne _0808E156
- movs r2, 0x1
- ldrh r0, [r4]
- cmp r0, 0xEE
- bne _0808E110
- ldr r0, _0808E180
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r5, r0
- bge _0808E110
- movs r2, 0
-_0808E110:
- ldrh r0, [r4]
- cmp r0, 0xEF
- bne _0808E122
- ldr r0, _0808E184
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r5, r0
- bge _0808E122
- movs r2, 0
-_0808E122:
- ldrh r0, [r4]
- cmp r0, r10
- bne _0808E134
- ldr r0, _0808E188
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r5, r0
- bge _0808E134
- movs r2, 0
-_0808E134:
- ldrh r0, [r4]
- cmp r0, r9
- bne _0808E146
- ldr r0, _0808E18C
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r5, r0
- bge _0808E146
- movs r2, 0
-_0808E146:
- cmp r2, 0
- beq _0808E156
- cmp r7, 0xF
- bgt _0808E156
- ldrh r0, [r4]
- strh r0, [r6]
- adds r6, 0x2
- adds r7, 0x1
-_0808E156:
- ldrb r0, [r1]
- cmp r0, 0
- beq _0808E16E
- adds r0, r1, 0
- mov r1, sp
- bl sub_808E07C
- adds r1, r0, 0
- ldrb r0, [r1]
- adds r1, 0x1
- cmp r0, r8
- ble _0808E0F8
-_0808E16E:
- adds r0, r7, 0
-_0808E170:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E180: .4byte gUnknown_810ACB8
-_0808E184: .4byte gUnknown_810ACBA
-_0808E188: .4byte gUnknown_810ACBC
-_0808E18C: .4byte gUnknown_810ACBE
- thumb_func_end sub_808E0AC
-
- thumb_func_start sub_808E190
-sub_808E190:
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 16
- asrs r4, r1, 16
- ldr r0, _0808E1B8
- cmp r4, r0
- beq _0808E20C
- cmp r4, 0
- beq _0808E20C
- movs r0, 0xD2
- lsls r0, 1
- cmp r4, r0
- beq _0808E20C
- movs r0, 0xB0
- lsls r0, 1
- cmp r5, r0
- bne _0808E1C0
- b _0808E20C
- .align 2, 0
-_0808E1B8: .4byte 0x000001a5
-_0808E1BC:
- movs r0, 0x1
- b _0808E20E
-_0808E1C0:
- adds r0, r4, 0
- bl sub_8092B18
- adds r1, r0, 0
- b _0808E1DE
-_0808E1CA:
- adds r0, r1, 0
- mov r1, sp
- bl sub_808E07C
- adds r1, r0, 0
- adds r1, 0x1
- mov r0, sp
- ldrh r0, [r0]
- cmp r5, r0
- beq _0808E1BC
-_0808E1DE:
- ldrb r0, [r1]
- cmp r0, 0
- bne _0808E1CA
- adds r0, r4, 0
- bl sub_8092B54
- adds r1, r0, 0
- ldrb r0, [r1]
- cmp r0, 0
- beq _0808E20C
- mov r4, sp
- adds r4, 0x2
-_0808E1F6:
- adds r0, r1, 0
- adds r1, r4, 0
- bl sub_808E07C
- adds r1, r0, 0
- ldrh r0, [r4]
- cmp r0, r5
- beq _0808E1BC
- ldrb r0, [r1]
- cmp r0, 0
- bne _0808E1F6
-_0808E20C:
- movs r0, 0
-_0808E20E:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_808E190
-
- thumb_func_start sub_808E218
-sub_808E218:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- mov r10, r0
- mov r8, r1
- movs r0, 0
- mov r9, r0
- movs r0, 0xCF
- lsls r0, 2
- add r0, r10
- mov r1, r9
- str r1, [r0]
- mov r2, r8
- movs r3, 0x8
- ldrsh r1, [r2, r3]
- ldr r0, _0808E254
- cmp r1, r0
- beq _0808E24E
- cmp r1, 0
- beq _0808E24E
- movs r0, 0xD2
- lsls r0, 1
- cmp r1, r0
- bne _0808E258
-_0808E24E:
- movs r0, 0
- b _0808E396
- .align 2, 0
-_0808E254: .4byte 0x000001a5
-_0808E258:
- mov r0, r8
- mov r1, sp
- bl sub_808E3B8
- str r0, [sp, 0x10]
- movs r5, 0
- cmp r9, r0
- blt _0808E26A
- b _0808E38A
-_0808E26A:
- lsls r4, r5, 2
- mov r1, sp
- adds r0, r1, r4
- movs r2, 0
- ldrsh r0, [r0, r2]
- bl sub_8092B18
- adds r6, r0, 0
- str r4, [sp, 0x18]
- adds r5, 0x1
- str r5, [sp, 0x14]
- b _0808E35E
-_0808E282:
- movs r0, 0xCE
- lsls r0, 1
- cmp r9, r0
- bgt _0808E35E
- movs r7, 0x1
- ldrh r0, [r4]
- cmp r0, 0xEE
- bne _0808E2A4
- ldr r0, _0808E3A8
- mov r3, r8
- movs r4, 0x14
- ldrsh r1, [r3, r4]
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r1, r0
- bge _0808E2A4
- movs r7, 0
-_0808E2A4:
- mov r3, r12
- ldrh r0, [r3]
- cmp r0, 0xEF
- bne _0808E2BE
- ldr r0, _0808E3AC
- mov r4, r8
- movs r2, 0x14
- ldrsh r1, [r4, r2]
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r1, r0
- bge _0808E2BE
- movs r7, 0
-_0808E2BE:
- mov r4, r12
- ldrh r1, [r4]
- movs r0, 0x88
- lsls r0, 1
- cmp r1, r0
- bne _0808E2DC
- ldr r0, _0808E3B0
- mov r2, r8
- movs r3, 0x14
- ldrsh r1, [r2, r3]
- movs r4, 0
- ldrsh r0, [r0, r4]
- cmp r1, r0
- bge _0808E2DC
- movs r7, 0
-_0808E2DC:
- mov r0, r12
- ldrh r1, [r0]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bne _0808E2FA
- ldr r0, _0808E3B4
- mov r2, r8
- movs r3, 0x14
- ldrsh r1, [r2, r3]
- movs r4, 0
- ldrsh r0, [r0, r4]
- cmp r1, r0
- bge _0808E2FA
- movs r7, 0
-_0808E2FA:
- movs r4, 0x1
- mov r5, r12
- mov r2, r8
- adds r2, 0x2C
- movs r3, 0x3
-_0808E304:
- ldrb r1, [r2]
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- beq _0808E318
- ldrh r0, [r2, 0x2]
- ldrh r1, [r5]
- cmp r0, r1
- bne _0808E318
- movs r7, 0
-_0808E318:
- adds r2, 0x8
- subs r3, 0x1
- cmp r3, 0
- bge _0808E304
- cmp r7, 0
- beq _0808E35E
- movs r2, 0
- cmp r2, r9
- bge _0808E34A
- mov r3, r10
- ldrh r0, [r3]
- mov r4, r12
- ldrh r4, [r4]
- cmp r0, r4
- beq _0808E34A
- mov r3, r12
- mov r1, r10
-_0808E33A:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, r9
- bge _0808E34A
- ldrh r0, [r1]
- ldrh r4, [r3]
- cmp r0, r4
- bne _0808E33A
-_0808E34A:
- cmp r2, r9
- bne _0808E35E
- mov r1, r9
- lsls r0, r1, 1
- add r0, r10
- mov r2, r12
- ldrh r1, [r2]
- strh r1, [r0]
- movs r3, 0x1
- add r9, r3
-_0808E35E:
- ldrb r0, [r6]
- cmp r0, 0
- beq _0808E380
- add r4, sp, 0xC
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_808E07C
- adds r6, r0, 0
- ldrb r0, [r6]
- adds r6, 0x1
- ldr r1, [sp, 0x18]
- add r1, sp
- ldrb r1, [r1, 0x2]
- mov r12, r4
- cmp r0, r1
- ble _0808E282
-_0808E380:
- ldr r5, [sp, 0x14]
- ldr r4, [sp, 0x10]
- cmp r5, r4
- bge _0808E38A
- b _0808E26A
-_0808E38A:
- movs r0, 0xCF
- lsls r0, 2
- add r0, r10
- mov r1, r9
- str r1, [r0]
- mov r0, r9
-_0808E396:
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E3A8: .4byte gUnknown_810ACB8
-_0808E3AC: .4byte gUnknown_810ACBA
-_0808E3B0: .4byte gUnknown_810ACBC
-_0808E3B4: .4byte gUnknown_810ACBE
- thumb_func_end sub_808E218
-
- thumb_func_start sub_808E3B8
-sub_808E3B8:
- push {r4-r7,lr}
- ldrh r2, [r0, 0x8]
- strh r2, [r1]
- ldrb r2, [r0, 0x3]
- strb r2, [r1, 0x2]
- movs r7, 0x1
- movs r3, 0x8
- ldrsh r2, [r0, r3]
- movs r6, 0
- adds r5, r0, 0
- adds r5, 0xC
- adds r4, r1, 0x4
- b _0808E3E0
-_0808E3D2:
- strh r2, [r4]
- ldrb r0, [r5]
- strb r0, [r4, 0x2]
- adds r4, 0x4
- adds r7, 0x1
- adds r5, 0x4
- adds r6, 0x1
-_0808E3E0:
- cmp r6, 0x1
- bgt _0808E3F8
- ldrb r0, [r5]
- cmp r0, 0
- beq _0808E3F8
- adds r0, r2, 0
- bl GetPokemonEvolveFrom
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, 0
- bne _0808E3D2
-_0808E3F8:
- adds r0, r7, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_808E3B8
-
+
thumb_func_start sub_808E400
sub_808E400:
push {r4-r7,lr}
@@ -1095,339 +316,5 @@ _0808E65C: .4byte 0x00000fff
_0808E660: .4byte 0x0000fffe
_0808E664: .4byte 0x0000fffd
thumb_func_end sub_808E53C
-
- thumb_func_start sub_808E668
-sub_808E668:
- push {r4,r5,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r0, 16
- asrs r1, r0, 16
- ldr r2, _0808E6E0
- adds r0, r2
- lsrs r0, 16
- cmp r0, 0x1
- bls _0808E6D6
- adds r0, r1, 0
- bl GetShadowSize
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- ldrsh r2, [r4, r3]
- movs r3, 0x10
- ldrsh r1, [r5, r3]
- adds r2, r1
- movs r1, 0x2
- ldrsh r3, [r4, r1]
- movs r4, 0x12
- ldrsh r1, [r5, r4]
- adds r3, r1
- ldr r4, _0808E6E4
- lsls r1, r0, 2
- adds r1, r4
- ldr r1, [r1]
- adds r2, r1
- subs r3, 0x4
- ldr r1, _0808E6E8
- ands r2, r1
- lsls r0, 3
- ldr r1, _0808E6EC
- adds r0, r1
- ldrh r4, [r0, 0x2]
- movs r1, 0xFE
- lsls r1, 8
- ands r1, r4
- orrs r1, r2
- strh r1, [r0, 0x2]
- ldr r1, _0808E6F0
- ands r3, r1
- lsls r3, 4
- ldrh r2, [r0, 0x6]
- movs r1, 0xF
- ands r1, r2
- orrs r1, r3
- strh r1, [r0, 0x6]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl AddSprite
-_0808E6D6:
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E6E0: .4byte 0xffce0000
-_0808E6E4: .4byte gUnknown_81076C4
-_0808E6E8: .4byte 0x000001ff
-_0808E6EC: .4byte gUnknown_202F3E8
-_0808E6F0: .4byte 0x00000fff
- thumb_func_end sub_808E668
-
- thumb_func_start sub_808E6F4
-sub_808E6F4:
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r0, 0xA
- bl RandomCapped
- ldr r1, _0808E70C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- strh r0, [r5]
- movs r4, 0
- b _0808E712
- .align 2, 0
-_0808E70C: .4byte gUnknown_810AC90
-_0808E710:
- adds r4, 0x1
-_0808E712:
- cmp r4, 0x63
- bgt _0808E724
- movs r0, 0x12
- bl RandomCapped
- strb r0, [r5, 0x2]
- lsls r0, 24
- cmp r0, 0
- beq _0808E710
-_0808E724:
- cmp r4, 0x64
- bne _0808E72C
- movs r0, 0x2
- strb r0, [r5, 0x2]
-_0808E72C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_808E6F4
-
- thumb_func_start HasRecruitedMon
-HasRecruitedMon:
- push {r4-r6,lr}
- lsls r0, 16
- asrs r4, r0, 16
- movs r3, 0
- ldr r0, _0808E75C
- ldr r2, [r0]
- movs r6, 0x1
- movs r5, 0xCE
- lsls r5, 1
-_0808E746:
- ldrb r1, [r2]
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _0808E760
- movs r1, 0x8
- ldrsh r0, [r2, r1]
- cmp r0, r4
- bne _0808E760
- movs r0, 0x1
- b _0808E76A
- .align 2, 0
-_0808E75C: .4byte gRecruitedPokemonRef
-_0808E760:
- adds r2, 0x58
- adds r3, 0x1
- cmp r3, r5
- ble _0808E746
- movs r0, 0
-_0808E76A:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end HasRecruitedMon
-
- thumb_func_start sub_808E770
-sub_808E770:
- push {lr}
- lsls r0, 16
- asrs r1, r0, 16
- ldr r0, _0808E788
- cmp r1, r0
- beq _0808E792
- movs r0, 0xBD
- lsls r0, 1
- cmp r1, r0
- bne _0808E78C
- subs r0, 0x2
- b _0808E854
- .align 2, 0
-_0808E788: .4byte 0x00000179
-_0808E78C:
- ldr r0, _0808E798
- cmp r1, r0
- bne _0808E79C
-_0808E792:
- movs r0, 0xBC
- lsls r0, 1
- b _0808E854
- .align 2, 0
-_0808E798: .4byte 0x0000017b
-_0808E79C:
- cmp r1, 0xCA
- beq _0808E80E
- cmp r1, 0xCB
- beq _0808E80E
- cmp r1, 0xCC
- beq _0808E80E
- cmp r1, 0xCD
- beq _0808E80E
- cmp r1, 0xCE
- beq _0808E80E
- cmp r1, 0xCF
- beq _0808E80E
- cmp r1, 0xD0
- beq _0808E80E
- cmp r1, 0xD1
- beq _0808E80E
- cmp r1, 0xD2
- beq _0808E80E
- cmp r1, 0xD3
- beq _0808E80E
- cmp r1, 0xD4
- beq _0808E80E
- cmp r1, 0xD5
- beq _0808E80E
- cmp r1, 0xD6
- beq _0808E80E
- cmp r1, 0xD7
- beq _0808E80E
- cmp r1, 0xD8
- beq _0808E80E
- cmp r1, 0xD9
- beq _0808E80E
- cmp r1, 0xDA
- beq _0808E80E
- cmp r1, 0xDB
- beq _0808E80E
- cmp r1, 0xDC
- beq _0808E80E
- cmp r1, 0xDD
- beq _0808E80E
- cmp r1, 0xDE
- beq _0808E80E
- cmp r1, 0xDF
- beq _0808E80E
- cmp r1, 0xE0
- beq _0808E80E
- cmp r1, 0xE1
- beq _0808E80E
- cmp r1, 0xE2
- beq _0808E80E
- ldr r0, _0808E814
- cmp r1, r0
- beq _0808E80E
- movs r0, 0xD0
- lsls r0, 1
- cmp r1, r0
- bne _0808E818
-_0808E80E:
- movs r0, 0xC9
- b _0808E854
- .align 2, 0
-_0808E814: .4byte 0x0000019f
-_0808E818:
- ldr r0, _0808E82C
- cmp r1, r0
- beq _0808E836
- movs r0, 0xD1
- lsls r0, 1
- cmp r1, r0
- bne _0808E830
- subs r0, 0x4
- b _0808E854
- .align 2, 0
-_0808E82C: .4byte 0x000001a1
-_0808E830:
- ldr r0, _0808E83C
- cmp r1, r0
- bne _0808E840
-_0808E836:
- movs r0, 0xCF
- lsls r0, 1
- b _0808E854
- .align 2, 0
-_0808E83C: .4byte 0x000001a3
-_0808E840:
- ldr r0, _0808E84C
- cmp r1, r0
- beq _0808E850
- adds r0, r1, 0
- b _0808E854
- .align 2, 0
-_0808E84C: .4byte 0x000001a7
-_0808E850:
- movs r0, 0xCE
- lsls r0, 1
-_0808E854:
- pop {r1}
- bx r1
- thumb_func_end sub_808E770
-
- thumb_func_start sub_808E858
-sub_808E858:
- push {lr}
- lsls r0, 16
- asrs r1, r0, 16
- adds r2, r1, 0
- ldr r0, _0808E874
- cmp r1, r0
- beq _0808E87E
- movs r0, 0xBD
- lsls r0, 1
- cmp r1, r0
- bne _0808E878
- subs r0, 0x2
- b _0808E8C4
- .align 2, 0
-_0808E874: .4byte 0x00000179
-_0808E878:
- ldr r0, _0808E884
- cmp r1, r0
- bne _0808E888
-_0808E87E:
- movs r0, 0xBC
- lsls r0, 1
- b _0808E8C4
- .align 2, 0
-_0808E884: .4byte 0x0000017b
-_0808E888:
- ldr r0, _0808E89C
- cmp r1, r0
- beq _0808E8A6
- movs r0, 0xD1
- lsls r0, 1
- cmp r1, r0
- bne _0808E8A0
- subs r0, 0x4
- b _0808E8C4
- .align 2, 0
-_0808E89C: .4byte 0x000001a1
-_0808E8A0:
- ldr r0, _0808E8AC
- cmp r1, r0
- bne _0808E8B0
-_0808E8A6:
- movs r0, 0xCF
- lsls r0, 1
- b _0808E8C4
- .align 2, 0
-_0808E8AC: .4byte 0x000001a3
-_0808E8B0:
- ldr r0, _0808E8BC
- cmp r2, r0
- beq _0808E8C0
- adds r0, r2, 0
- b _0808E8C4
- .align 2, 0
-_0808E8BC: .4byte 0x000001a7
-_0808E8C0:
- movs r0, 0xCE
- lsls r0, 1
-_0808E8C4:
- pop {r1}
- bx r1
- thumb_func_end sub_808E858
-
+
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokemon_3.s b/asm/pokemon_3.s
index e3647fc..f0308d7 100644
--- a/asm/pokemon_3.s
+++ b/asm/pokemon_3.s
@@ -5,71 +5,6 @@
.text
- thumb_func_start sub_808ED00
-sub_808ED00:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- mov r0, sp
- bl sub_808D580
- adds r6, r0, 0
- movs r4, 0
- cmp r4, r6
- bge _0808ED44
- movs r0, 0x58
- mov r8, r0
- mov r7, sp
- movs r5, 0
- adds r4, r6, 0
-_0808ED20:
- ldr r0, _0808ED70
- ldr r1, [r0]
- adds r0, r1, r5
- ldr r2, _0808ED74
- adds r0, r2
- ldm r7!, {r2}
- mov r3, r8
- muls r3, r2
- adds r2, r3, 0
- adds r1, r2
- movs r2, 0x58
- bl memcpy
- adds r5, 0x58
- subs r4, 0x1
- cmp r4, 0
- bne _0808ED20
- adds r4, r6, 0
-_0808ED44:
- cmp r4, 0x3
- bgt _0808ED64
- ldr r5, _0808ED70
- ldr r3, _0808ED74
- movs r2, 0
- movs r0, 0x58
- adds r1, r4, 0
- muls r1, r0
-_0808ED54:
- ldr r0, [r5]
- adds r0, r1
- adds r0, r3
- strh r2, [r0]
- adds r1, 0x58
- adds r4, 0x1
- cmp r4, 0x3
- ble _0808ED54
-_0808ED64:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0808ED70: .4byte gRecruitedPokemonRef
-_0808ED74: .4byte 0x00008f88
- thumb_func_end sub_808ED00
-
thumb_func_start SaveRecruitedPokemon
SaveRecruitedPokemon:
push {r4-r7,lr}