summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/pokedex.s1538
1 files changed, 0 insertions, 1538 deletions
diff --git a/asm/pokedex.s b/asm/pokedex.s
index 439ffd35d..0c9f97432 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -6,1544 +6,6 @@
.text
- thumb_func_start sub_808E48C
-sub_808E48C: @ 808E48C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r7, r0, 16
- lsls r1, 16
- lsrs r4, r1, 16
- movs r0, 0
- mov r10, r0
- ldr r1, _0808E52C @ =gMain
- ldrh r2, [r1, 0x2C]
- movs r0, 0x40
- ands r0, r2
- adds r3, r1, 0
- cmp r0, 0
- beq _0808E4B6
- cmp r7, 0
- beq _0808E4B6
- b _0808E5E4
-_0808E4B6:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _0808E4CE
- ldr r0, _0808E530 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808E534 @ =0x0000060c
- adds r0, r1
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r7, r0
- blt _0808E5C4
-_0808E4CE:
- ldrh r1, [r3, 0x2E]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0808E53C
- cmp r7, 0
- beq _0808E53C
- adds r6, r7, 0
- movs r4, 0
-_0808E4E0:
- ldr r5, _0808E530 @ =gUnknown_0202FFB4
- ldr r0, [r5]
- ldr r2, _0808E534 @ =0x0000060c
- adds r0, r2
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0
- bl sub_8091818
- adds r7, r0, 0
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x6
- bls _0808E4E0
- ldr r1, [r5]
- ldr r3, _0808E538 @ =0x0000062c
- adds r1, r3
- subs r0, r7, r6
- lsls r0, 4
- ldrb r2, [r1]
- adds r0, r2
- strb r0, [r1]
- bl sub_808E82C
- adds r0, r7, 0
- movs r1, 0xE
- bl sub_808E0CC
- movs r0, 0x6D
- bl PlaySE
- b _0808E5A2
- .align 2, 0
-_0808E52C: .4byte gMain
-_0808E530: .4byte gUnknown_0202FFB4
-_0808E534: .4byte 0x0000060c
-_0808E538: .4byte 0x0000062c
-_0808E53C:
- ldrh r1, [r3, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0808E5A2
- ldr r0, _0808E5B8 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r3, _0808E5BC @ =0x0000060c
- adds r0, r3
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r7, r0
- bge _0808E5A2
- adds r6, r7, 0
- movs r4, 0
-_0808E55A:
- ldr r5, _0808E5B8 @ =gUnknown_0202FFB4
- ldr r0, [r5]
- ldr r1, _0808E5BC @ =0x0000060c
- adds r0, r1
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0
- adds r1, r7, 0
- movs r2, 0
- bl sub_8091818
- adds r7, r0, 0
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x6
- bls _0808E55A
- ldr r1, [r5]
- ldr r2, _0808E5C0 @ =0x0000062c
- adds r1, r2
- subs r0, r7, r6
- lsls r0, 4
- ldrb r3, [r1]
- adds r0, r3
- strb r0, [r1]
- bl sub_808E82C
- adds r0, r7, 0
- movs r1, 0xE
- bl sub_808E0CC
- movs r0, 0x6D
- bl PlaySE
-_0808E5A2:
- mov r0, r10
- cmp r0, 0
- bne _0808E628
- ldr r0, _0808E5B8 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- movs r1, 0xC7
- lsls r1, 3
- adds r0, r1
- mov r2, r10
- strh r2, [r0]
- b _0808E68E
- .align 2, 0
-_0808E5B8: .4byte gUnknown_0202FFB4
-_0808E5BC: .4byte 0x0000060c
-_0808E5C0: .4byte 0x0000062c
-_0808E5C4:
- movs r3, 0x2
- mov r10, r3
- lsls r3, r0, 16
- lsrs r3, 16
- movs r0, 0
- adds r1, r7, 0
- movs r2, 0
- bl sub_8091818
- adds r7, r0, 0
- movs r0, 0x2
- adds r1, r7, 0
- bl sub_808E398
- movs r0, 0x2
- b _0808E60E
-_0808E5E4:
- movs r0, 0x1
- mov r10, r0
- ldr r0, _0808E620 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808E624 @ =0x0000060c
- adds r0, r1
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0x1
- adds r1, r7, 0
- movs r2, 0
- bl sub_8091818
- adds r7, r0, 0
- movs r0, 0x1
- adds r1, r7, 0
- bl sub_808E398
- movs r0, 0x1
-_0808E60E:
- adds r1, r7, 0
- adds r2, r4, 0
- bl sub_808DBE8
- movs r0, 0x6C
- bl PlaySE
- b _0808E5A2
- .align 2, 0
-_0808E620: .4byte gUnknown_0202FFB4
-_0808E624: .4byte 0x0000060c
-_0808E628:
- ldr r1, _0808E6A0 @ =gUnknown_083A05EC
- ldr r6, _0808E6A4 @ =gUnknown_0202FFB4
- ldr r2, [r6]
- movs r3, 0xC7
- lsls r3, 3
- mov r9, r3
- adds r0, r2, r3
- ldrh r0, [r0]
- lsrs r0, 2
- adds r1, r0, r1
- ldrb r5, [r1]
- ldr r1, _0808E6A8 @ =gUnknown_083A05F1
- adds r0, r1
- ldrb r3, [r0]
- ldr r0, _0808E6AC @ =0x0000062e
- adds r2, r0
- strb r3, [r2]
- ldr r1, [r6]
- ldr r2, _0808E6B0 @ =0x00000636
- mov r8, r2
- adds r0, r1, r2
- strh r3, [r0]
- ldr r4, _0808E6B4 @ =0x00000634
- adds r0, r1, r4
- strh r5, [r0]
- ldr r3, _0808E6B8 @ =0x0000062f
- adds r1, r3
- mov r0, r10
- strb r0, [r1]
- ldr r2, [r6]
- lsrs r5, 1
- movs r1, 0xC5
- lsls r1, 3
- adds r0, r2, r1
- strh r5, [r0]
- adds r3, r2, r3
- ldrb r0, [r3]
- adds r4, r2, r4
- ldrb r1, [r4]
- add r2, r8
- ldrb r2, [r2]
- bl sub_808E208
- ldr r0, [r6]
- mov r2, r9
- adds r1, r0, r2
- ldrh r0, [r1]
- cmp r0, 0xB
- bhi _0808E68E
- adds r0, 0x1
- strh r0, [r1]
-_0808E68E:
- adds r0, r7, 0
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E6A0: .4byte gUnknown_083A05EC
-_0808E6A4: .4byte gUnknown_0202FFB4
-_0808E6A8: .4byte gUnknown_083A05F1
-_0808E6AC: .4byte 0x0000062e
-_0808E6B0: .4byte 0x00000636
-_0808E6B4: .4byte 0x00000634
-_0808E6B8: .4byte 0x0000062f
- thumb_func_end sub_808E48C
-
- thumb_func_start sub_808E6BC
-sub_808E6BC: @ 808E6BC
- push {r4-r7,lr}
- movs r4, 0
- ldr r0, _0808E708 @ =gUnknown_0202FFB4
- mov r12, r0
- ldr r6, _0808E70C @ =gSprites
- ldr r5, _0808E710 @ =0x0000ffff
-_0808E6C8:
- mov r1, r12
- ldr r3, [r1]
- lsls r1, r4, 1
- ldr r2, _0808E714 @ =0x0000061e
- adds r0, r3, r2
- adds r0, r1
- ldrh r2, [r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r6
- movs r7, 0x24
- ldrsh r0, [r1, r7]
- cmp r0, 0
- bne _0808E6F8
- movs r7, 0x26
- ldrsh r0, [r1, r7]
- cmp r0, 0
- bne _0808E6F8
- cmp r2, r5
- beq _0808E6F8
- ldr r1, _0808E718 @ =0x00000626
- adds r0, r3, r1
- strh r2, [r0]
-_0808E6F8:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bls _0808E6C8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0808E708: .4byte gUnknown_0202FFB4
-_0808E70C: .4byte gSprites
-_0808E710: .4byte 0x0000ffff
-_0808E714: .4byte 0x0000061e
-_0808E718: .4byte 0x00000626
- thumb_func_end sub_808E6BC
-
- thumb_func_start sub_808E71C
-sub_808E71C: @ 808E71C
- push {r4-r6,lr}
- ldr r3, _0808E77C @ =gUnknown_0202FFB4
- ldr r0, [r3]
- ldr r1, _0808E780 @ =0x0000060e
- adds r0, r1
- ldrh r4, [r0]
- ldr r2, _0808E784 @ =gMain
- ldrh r1, [r2, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0808E7A4
- cmp r4, 0
- beq _0808E7A4
- adds r2, r4, 0
- adds r5, r3, 0
-_0808E73C:
- ldr r0, [r5]
- ldr r1, _0808E788 @ =0x0000060c
- adds r0, r1
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0x1
- adds r1, r2, 0
- movs r2, 0
- bl sub_8091818
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, [r5]
- lsls r1, r2, 2
- adds r0, r1
- ldrb r0, [r0, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _0808E78C
- cmp r2, 0
- bne _0808E73C
-_0808E76A:
- ldr r0, _0808E77C @ =gUnknown_0202FFB4
- ldr r1, [r0]
- ldr r0, _0808E780 @ =0x0000060e
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, r4
- bne _0808E790
- b _0808E824
- .align 2, 0
-_0808E77C: .4byte gUnknown_0202FFB4
-_0808E780: .4byte 0x0000060e
-_0808E784: .4byte gMain
-_0808E788: .4byte 0x0000060c
-_0808E78C:
- adds r4, r2, 0
- b _0808E76A
-_0808E790:
- strh r4, [r2]
- ldr r0, _0808E79C @ =0x0000062c
- adds r1, r0
- ldrb r0, [r1]
- subs r0, 0x10
- b _0808E80C
- .align 2, 0
-_0808E79C: .4byte 0x0000062c
-_0808E7A0:
- adds r4, r2, 0
- b _0808E7F4
-_0808E7A4:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0808E824
- ldr r0, [r3]
- ldr r1, _0808E814 @ =0x0000060c
- adds r0, r1
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r4, r0
- bge _0808E824
- adds r2, r4, 0
- adds r6, r3, 0
- adds r5, r1, 0
-_0808E7C2:
- ldr r0, [r6]
- adds r0, r5
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0
- adds r1, r2, 0
- movs r2, 0
- bl sub_8091818
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, [r6]
- lsls r0, r2, 2
- adds r0, r1, r0
- ldrb r0, [r0, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _0808E7A0
- adds r0, r1, r5
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r2, r0
- blt _0808E7C2
-_0808E7F4:
- ldr r0, _0808E818 @ =gUnknown_0202FFB4
- ldr r1, [r0]
- ldr r0, _0808E81C @ =0x0000060e
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, r4
- beq _0808E824
- strh r4, [r2]
- ldr r0, _0808E820 @ =0x0000062c
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x10
-_0808E80C:
- strb r0, [r1]
- movs r0, 0x1
- b _0808E826
- .align 2, 0
-_0808E814: .4byte 0x0000060c
-_0808E818: .4byte gUnknown_0202FFB4
-_0808E81C: .4byte 0x0000060e
-_0808E820: .4byte 0x0000062c
-_0808E824:
- movs r0, 0
-_0808E826:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_808E71C
-
- thumb_func_start sub_808E82C
-sub_808E82C: @ 808E82C
- push {r4-r7,lr}
- movs r5, 0
- ldr r6, _0808E878 @ =gUnknown_0202FFB4
- ldr r7, _0808E87C @ =0x0000ffff
-_0808E834:
- ldr r0, [r6]
- lsls r4, r5, 1
- ldr r1, _0808E880 @ =0x0000061e
- adds r0, r1
- adds r1, r0, r4
- ldrh r0, [r1]
- cmp r0, r7
- beq _0808E864
- adds r1, r0, 0
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0808E884 @ =gSprites
- adds r0, r1
- bl DestroySprite
- ldr r1, [r6]
- ldr r0, _0808E880 @ =0x0000061e
- adds r1, r0
- adds r1, r4
- ldrh r2, [r1]
- adds r0, r7, 0
- orrs r0, r2
- strh r0, [r1]
-_0808E864:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x3
- bls _0808E834
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E878: .4byte gUnknown_0202FFB4
-_0808E87C: .4byte 0x0000ffff
-_0808E880: .4byte 0x0000061e
-_0808E884: .4byte gSprites
- thumb_func_end sub_808E82C
-
- thumb_func_start sub_808E888
-sub_808E888: @ 808E888
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, _0808E8A8 @ =0x00000181
- cmp r2, r0
- bhi _0808E8A4
- ldr r0, _0808E8AC @ =gUnknown_0202FFB4
- ldr r1, [r0]
- lsls r0, r2, 2
- adds r2, r1, r0
- ldrh r1, [r2]
- ldr r0, _0808E8B0 @ =0x0000ffff
- cmp r1, r0
- bne _0808E8B4
-_0808E8A4:
- ldr r0, _0808E8B0 @ =0x0000ffff
- b _0808E8C2
- .align 2, 0
-_0808E8A8: .4byte 0x00000181
-_0808E8AC: .4byte gUnknown_0202FFB4
-_0808E8B0: .4byte 0x0000ffff
-_0808E8B4:
- ldrb r0, [r2, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _0808E8C0
- movs r0, 0
- b _0808E8C2
-_0808E8C0:
- ldrh r0, [r2]
-_0808E8C2:
- pop {r1}
- bx r1
- thumb_func_end sub_808E888
-
- thumb_func_start sub_808E8C8
-sub_808E8C8: @ 808E8C8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r2, 16
- lsrs r2, 16
- movs r6, 0
- ldr r0, _0808E94C @ =gUnknown_0202FFB4
- mov r9, r0
- ldr r3, _0808E950 @ =0x0000ffff
- lsls r1, 16
-_0808E8E4:
- mov r4, r9
- ldr r0, [r4]
- lsls r7, r6, 1
- ldr r4, _0808E954 @ =0x0000061e
- adds r0, r4
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, r3
- bne _0808E95C
- lsls r2, 16
- mov r0, r8
- asrs r1, 16
- asrs r2, 16
- adds r3, r6, 0
- bl sub_80918EC
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _0808E958 @ =gSprites
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r2, 0x4
- negs r2, r2
- adds r0, r2, 0
- ands r1, r0
- movs r0, 0x1
- orrs r1, r0
- strb r1, [r4, 0x1]
- ldrb r0, [r4, 0x5]
- movs r1, 0xC
- orrs r0, r1
- strb r0, [r4, 0x5]
- movs r0, 0
- strh r0, [r4, 0x2E]
- strh r6, [r4, 0x30]
- mov r0, r8
- bl NationalPokedexNumToSpecies
- strh r0, [r4, 0x32]
- mov r4, r9
- ldr r0, [r4]
- ldr r1, _0808E954 @ =0x0000061e
- adds r0, r1
- adds r0, r7
- strh r5, [r0]
- adds r0, r5, 0
- b _0808E968
- .align 2, 0
-_0808E94C: .4byte gUnknown_0202FFB4
-_0808E950: .4byte 0x0000ffff
-_0808E954: .4byte 0x0000061e
-_0808E958: .4byte gSprites
-_0808E95C:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _0808E8E4
- ldr r0, _0808E974 @ =0x0000ffff
-_0808E968:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0808E974: .4byte 0x0000ffff
- thumb_func_end sub_808E8C8
-
- thumb_func_start sub_808E978
-sub_808E978: @ 808E978
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r4, _0808EB3C @ =gSpriteTemplate_83A053C
- adds r0, r4, 0
- movs r1, 0xB8
- movs r2, 0x4
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, _0808EB40 @ =gSprites
- mov r10, r1
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0
- strh r1, [r0, 0x30]
- adds r0, r4, 0
- movs r1, 0xB8
- movs r2, 0x9C
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- strh r1, [r0, 0x30]
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
- ldr r0, _0808EB44 @ =gSpriteTemplate_83A0524
- movs r1, 0xEA
- movs r2, 0x14
- movs r3, 0
- bl CreateSprite
- ldr r5, _0808EB48 @ =gSpriteTemplate_83A0554
- adds r0, r5, 0
- movs r1, 0x10
- movs r2, 0x8A
- movs r3, 0
- bl CreateSprite
- adds r0, r5, 0
- movs r1, 0x30
- movs r2, 0x8A
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x3
- bl StartSpriteAnim
- adds r0, r5, 0
- movs r1, 0x10
- movs r2, 0x9E
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- add r4, r10
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnim
- movs r0, 0x80
- mov r9, r0
- mov r1, r9
- strh r1, [r4, 0x32]
- adds r0, r5, 0
- movs r1, 0x30
- movs r2, 0x9E
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r6, _0808EB4C @ =gSpriteTemplate_83A056C
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x50
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- add r1, r10
- ldrb r2, [r1, 0x1]
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r0, r2
- movs r5, 0x1
- orrs r0, r5
- strb r0, [r1, 0x1]
- ldrb r2, [r1, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- movs r2, 0x3C
- orrs r0, r2
- strb r0, [r1, 0x3]
- movs r0, 0x1E
- strh r0, [r1, 0x2E]
- movs r0, 0
- strh r0, [r1, 0x30]
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x50
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- add r1, r10
- ldrb r0, [r1, 0x1]
- ands r4, r0
- orrs r4, r5
- strb r4, [r1, 0x1]
- ldrb r0, [r1, 0x3]
- movs r2, 0x3E
- orrs r0, r2
- strb r0, [r1, 0x3]
- movs r0, 0x1F
- strh r0, [r1, 0x2E]
- mov r0, r9
- strh r0, [r1, 0x30]
- mov r1, r8
- cmp r1, 0
- beq _0808EAC8
- b _0808ED5C
-_0808EAC8:
- ldr r4, _0808EB50 @ =gSpriteTemplate_83A0584
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x28
- movs r3, 0x1
- bl CreateSprite
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x48
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- movs r0, 0
- mov r8, r0
- ldr r0, _0808EB54 @ =gSpriteTemplate_83A059C
- movs r1, 0x1C
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0808EB58 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808EB5C @ =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- mov r1, r10
- adds r4, r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _0808EB60
- movs r0, 0x1
- mov r8, r0
- b _0808EB6C
- .align 2, 0
-_0808EB3C: .4byte gSpriteTemplate_83A053C
-_0808EB40: .4byte gSprites
-_0808EB44: .4byte gSpriteTemplate_83A0524
-_0808EB48: .4byte gSpriteTemplate_83A0554
-_0808EB4C: .4byte gSpriteTemplate_83A056C
-_0808EB50: .4byte gSpriteTemplate_83A0584
-_0808EB54: .4byte gSpriteTemplate_83A059C
-_0808EB58: .4byte gUnknown_0202FFB4
-_0808EB5C: .4byte 0x0000061a
-_0808EB60:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0808EB6C:
- ldr r0, _0808EBB8 @ =gSpriteTemplate_83A059C
- movs r1, 0x22
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0808EBBC @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808EBC0 @ =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _0808EBA4
- mov r0, r8
- cmp r0, 0
- beq _0808EBC8
-_0808EBA4:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, _0808EBC4 @ =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _0808EBDC
- .align 2, 0
-_0808EBB8: .4byte gSpriteTemplate_83A059C
-_0808EBBC: .4byte gUnknown_0202FFB4
-_0808EBC0: .4byte 0x0000061a
-_0808EBC4: .4byte gSprites
-_0808EBC8:
- ldr r1, _0808EC60 @ =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0808EBDC:
- ldr r6, _0808EC64 @ =gSpriteTemplate_83A059C
- adds r0, r6, 0
- movs r1, 0x28
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r5, _0808EC68 @ =gUnknown_0202FFB4
- ldr r0, [r5]
- ldr r1, _0808EC6C @ =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, _0808EC60 @ =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0
- mov r8, r0
- adds r0, r6, 0
- movs r1, 0x1C
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, [r5]
- ldr r1, _0808EC70 @ =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r4
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _0808EC74
- movs r0, 0x1
- mov r8, r0
- b _0808EC80
- .align 2, 0
-_0808EC60: .4byte gSprites
-_0808EC64: .4byte gSpriteTemplate_83A059C
-_0808EC68: .4byte gUnknown_0202FFB4
-_0808EC6C: .4byte 0x0000061a
-_0808EC70: .4byte 0x0000061c
-_0808EC74:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0808EC80:
- ldr r0, _0808ECCC @ =gSpriteTemplate_83A059C
- movs r1, 0x22
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0808ECD0 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808ECD4 @ =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _0808ECB8
- mov r0, r8
- cmp r0, 0
- beq _0808ECDC
-_0808ECB8:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, _0808ECD8 @ =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _0808ECF0
- .align 2, 0
-_0808ECCC: .4byte gSpriteTemplate_83A059C
-_0808ECD0: .4byte gUnknown_0202FFB4
-_0808ECD4: .4byte 0x0000061c
-_0808ECD8: .4byte gSprites
-_0808ECDC:
- ldr r1, _0808ED48 @ =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_0808ECF0:
- ldr r0, _0808ED4C @ =gSpriteTemplate_83A059C
- movs r1, 0x28
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0808ED50 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r1, _0808ED54 @ =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, _0808ED48 @ =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- ldr r0, _0808ED58 @ =gSpriteTemplate_83A05B4
- movs r1, 0x8C
- movs r2, 0x60
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r4
- b _0808ED74
- .align 2, 0
-_0808ED48: .4byte gSprites
-_0808ED4C: .4byte gSpriteTemplate_83A059C
-_0808ED50: .4byte gUnknown_0202FFB4
-_0808ED54: .4byte 0x0000061c
-_0808ED58: .4byte gSpriteTemplate_83A05B4
-_0808ED5C:
- ldr r0, _0808ED8C @ =gSpriteTemplate_83A05B4
- movs r1, 0x8C
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
-_0808ED74:
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0808ED8C: .4byte gSpriteTemplate_83A05B4
- thumb_func_end sub_808E978
-
- thumb_func_start nullsub_58
-nullsub_58: @ 808ED90
- bx lr
- thumb_func_end nullsub_58
-
- thumb_func_start sub_808ED94
-sub_808ED94: @ 808ED94
- push {lr}
- adds r1, r0, 0
- ldr r0, _0808EDB0 @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r2, _0808EDB4 @ =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808EDAC
- adds r0, r1, 0
- bl DestroySprite
-_0808EDAC:
- pop {r0}
- bx r0
- .align 2, 0
-_0808EDB0: .4byte gUnknown_0202FFB4
-_0808EDB4: .4byte 0x0000064a
- thumb_func_end sub_808ED94
-
- thumb_func_start sub_808EDB8
-sub_808EDB8: @ 808EDB8
- push {lr}
- adds r2, r0, 0
- ldrb r1, [r2, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x5]
- ldrb r1, [r2, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1]
- movs r0, 0
- strh r0, [r2, 0x24]
- strh r0, [r2, 0x26]
- ldr r1, [r2, 0x20]
- ldr r0, _0808EE18 @ =0x00380030
- cmp r1, r0
- beq _0808EE1C
- ldrh r1, [r2, 0x20]
- movs r3, 0x20
- ldrsh r0, [r2, r3]
- cmp r0, 0x30
- ble _0808EDEC
- subs r0, r1, 0x1
- strh r0, [r2, 0x20]
-_0808EDEC:
- ldrh r1, [r2, 0x20]
- movs r3, 0x20
- ldrsh r0, [r2, r3]
- cmp r0, 0x2F
- bgt _0808EDFA
- adds r0, r1, 0x1
- strh r0, [r2, 0x20]
-_0808EDFA:
- ldrh r1, [r2, 0x22]
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- cmp r0, 0x38
- ble _0808EE08
- subs r0, r1, 0x1
- strh r0, [r2, 0x22]
-_0808EE08:
- ldrh r1, [r2, 0x22]
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- cmp r0, 0x37
- bgt _0808EE20
- adds r0, r1, 0x1
- strh r0, [r2, 0x22]
- b _0808EE20
- .align 2, 0
-_0808EE18: .4byte 0x00380030
-_0808EE1C:
- ldr r0, _0808EE24 @ =nullsub_58
- str r0, [r2, 0x1C]
-_0808EE20:
- pop {r0}
- bx r0
- .align 2, 0
-_0808EE24: .4byte nullsub_58
- thumb_func_end sub_808EDB8
-
- thumb_func_start sub_808EE28
-sub_808EE28: @ 808EE28
- push {r4-r6,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldrh r0, [r4, 0x30]
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r5, _0808EE50 @ =gUnknown_0202FFB4
- ldr r0, [r5]
- ldr r1, _0808EE54 @ =0x0000064a
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808EE58
- cmp r0, 0x3
- beq _0808EE58
- adds r0, r4, 0
- bl DestroySprite
- ldr r0, [r5]
- b _0808EF16
- .align 2, 0
-_0808EE50: .4byte gUnknown_0202FFB4
-_0808EE54: .4byte 0x0000064a
-_0808EE58:
- ldr r2, _0808EEE4 @ =gSineTable
- ldrh r0, [r4, 0x38]
- lsls r0, 24
- lsrs r0, 23
- adds r0, r2
- movs r3, 0
- ldrsh r1, [r0, r3]
- movs r0, 0x4C
- muls r0, r1
- cmp r0, 0
- bge _0808EE70
- adds r0, 0xFF
-_0808EE70:
- asrs r0, 8
- strh r0, [r4, 0x26]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- adds r0, 0x40
- lsls r0, 1
- adds r0, r2
- movs r2, 0
- ldrsh r1, [r0, r2]
- movs r0, 0x80
- lsls r0, 9
- bl __divsi3
- adds r2, r0, 0
- ldr r0, _0808EEE8 @ =0x0000ffff
- cmp r2, r0
- bls _0808EE94
- adds r2, r0, 0
-_0808EE94:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x80
- lsls r1, 1
- lsls r2, 16
- lsrs r2, 16
- str r2, [sp]
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- adds r1, r6, 0x1
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrh r0, [r4, 0x38]
- adds r0, 0x3F
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x7E
- bhi _0808EEEC
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x5
- negs r1, r1
- ands r1, r0
- strb r1, [r2]
- movs r0, 0x1
- strh r0, [r4, 0x2E]
- b _0808EEF8
- .align 2, 0
-_0808EEE4: .4byte gSineTable
-_0808EEE8: .4byte 0x0000ffff
-_0808EEEC:
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_0808EEF8:
- ldrh r0, [r4, 0x38]
- adds r0, 0x3F
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x7E
- bls _0808EF22
- movs r3, 0x2E
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _0808EF22
- adds r0, r4, 0
- bl DestroySprite
- ldr r0, _0808EF2C @ =gUnknown_0202FFB4
- ldr r0, [r0]
-_0808EF16:
- lsls r1, r6, 1
- ldr r2, _0808EF30 @ =0x0000061e
- adds r0, r2
- adds r0, r1
- ldr r1, _0808EF34 @ =0x0000ffff
- strh r1, [r0]
-_0808EF22:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0808EF2C: .4byte gUnknown_0202FFB4
-_0808EF30: .4byte 0x0000061e
-_0808EF34: .4byte 0x0000ffff
- thumb_func_end sub_808EE28
-
- thumb_func_start sub_808EF38
-sub_808EF38: @ 808EF38
- push {r4,lr}
- adds r4, r0, 0
- ldr r1, _0808EF58 @ =gUnknown_0202FFB4
- ldr r0, [r1]
- ldr r2, _0808EF5C @ =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808EF60
- cmp r0, 0x3
- beq _0808EF60
- adds r0, r4, 0
- bl DestroySprite
- b _0808EF7C
- .align 2, 0
-_0808EF58: .4byte gUnknown_0202FFB4
-_0808EF5C: .4byte 0x0000064a
-_0808EF60:
- ldr r2, [r1]
- ldr r1, _0808EF84 @ =0x0000060e
- adds r0, r2, r1
- ldrh r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 3
- ldr r1, _0808EF88 @ =0x0000060c
- adds r2, r1
- ldrh r1, [r2]
- subs r1, 0x1
- bl __divsi3
- strh r0, [r4, 0x26]
-_0808EF7C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0808EF84: .4byte 0x0000060e
-_0808EF88: .4byte 0x0000060c
- thumb_func_end sub_808EF38
-
- thumb_func_start sub_808EF8C
-sub_808EF8C: @ 808EF8C
- push {r4,r5,lr}
- adds r3, r0, 0
- ldr r1, _0808EFAC @ =gUnknown_0202FFB4
- ldr r0, [r1]
- ldr r2, _0808EFB0 @ =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- beq _0808EFB4
- cmp r0, 0x3
- beq _0808EFB4
- adds r0, r3, 0
- bl DestroySprite
- b _0808F084
- .align 2, 0
-_0808EFAC: .4byte gUnknown_0202FFB4
-_0808EFB0: .4byte 0x0000064a
-_0808EFB4:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0
- beq _0808EFF6
- ldr r0, [r5]
- ldr r2, _0808EFDC @ =0x0000060e
- adds r1, r0, r2
- ldrh r1, [r1]
- subs r2, 0x2
- adds r0, r2
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _0808EFE0
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _0808EFEC
- .align 2, 0
-_0808EFDC: .4byte 0x0000060e
-_0808EFE0:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_0808EFEC:
- strb r1, [r0]
- adds r2, r0, 0
- ldrh r1, [r3, 0x32]
- lsls r0, r1, 24
- b _0808F02C
-_0808EFF6:
- ldr r0, [r5]
- ldr r1, _0808F010 @ =0x0000060e
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- bne _0808F014
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _0808F020
- .align 2, 0
-_0808F010: .4byte 0x0000060e
-_0808F014:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_0808F020:
- strb r1, [r0]
- adds r2, r0, 0
- ldrh r1, [r3, 0x32]
- adds r0, r1, 0
- subs r0, 0x80
- lsls r0, 24
-_0808F02C:
- lsrs r0, 24
- adds r4, r1, 0
- ldr r1, _0808F078 @ =gSineTable
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _0808F040
- adds r0, 0x3F
-_0808F040:
- asrs r0, 6
- strh r0, [r3, 0x26]
- adds r0, r4, 0
- adds r0, 0x8
- strh r0, [r3, 0x32]
- ldr r1, [r5]
- movs r3, 0xCA
- lsls r3, 3
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _0808F07C
- adds r3, 0x4
- adds r0, r1, r3
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _0808F07C
- ldrb r1, [r2]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _0808F07C
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- b _0808F082
- .align 2, 0
-_0808F078: .4byte gSineTable
-_0808F07C:
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
-_0808F082:
- strb r0, [r2]
-_0808F084:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_808EF8C
-
- thumb_func_start sub_808F08C
-sub_808F08C: @ 808F08C
- push {lr}
- adds r1, r0, 0
- ldr r0, _0808F0AC @ =gUnknown_0202FFB4
- ldr r0, [r0]
- ldr r2, _0808F0B0 @ =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0808F0A8
- cmp r0, 0x3
- beq _0808F0A8
- adds r0, r1, 0
- bl DestroySprite
-_0808F0A8:
- pop {r0}
- bx r0
- .align 2, 0
-_0808F0AC: .4byte gUnknown_0202FFB4
-_0808F0B0: .4byte 0x0000064a
- thumb_func_end sub_808F08C
-
thumb_func_start sub_808F0B4
sub_808F0B4: @ 808F0B4
push {r4-r7,lr}