summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_anim_80FE840.s132
-rw-r--r--asm/battle_anim_815A0D4.s24
-rw-r--r--asm/battle_frontier_1.s10
-rw-r--r--asm/cable_club.s50
-rw-r--r--asm/contest.s4
-rw-r--r--asm/contest_link_80F57C4.s4
-rw-r--r--asm/coord_event_weather.s156
-rw-r--r--asm/easy_chat.s2
-rw-r--r--asm/field_control_avatar.s2
-rw-r--r--asm/field_screen.s88
-rw-r--r--asm/intro.s10
-rw-r--r--asm/item_use.s2863
-rw-r--r--asm/link.s124
-rw-r--r--asm/main_menu.s2
-rw-r--r--asm/mystery_event_menu.s669
-rw-r--r--asm/option_menu.s10
-rw-r--r--asm/overworld.s14
-rw-r--r--asm/party_menu.s8
-rw-r--r--asm/player_pc.s6
-rw-r--r--asm/pokemon_animation.s11782
-rw-r--r--asm/pokemon_storage_system.s2
-rw-r--r--asm/pokemon_summary_screen.s2
-rw-r--r--asm/pokenav.s48
-rw-r--r--asm/rayquaza_scene.s10
-rw-r--r--asm/record_mixing.s12
-rw-r--r--asm/reset_rtc_screen.s2
-rw-r--r--asm/shop.s4
-rw-r--r--asm/start_menu.s4
-rw-r--r--asm/time_events.s225
-rw-r--r--asm/title_screen.s4
-rw-r--r--asm/trade.s18
-rw-r--r--asm/trainer_card.s20
-rw-r--r--asm/unknown_task.s593
-rw-r--r--asm/use_pokeblock.s4
34 files changed, 305 insertions, 16603 deletions
diff --git a/asm/battle_anim_80FE840.s b/asm/battle_anim_80FE840.s
index 031bf2128..9a8b378ac 100644
--- a/asm/battle_anim_80FE840.s
+++ b/asm/battle_anim_80FE840.s
@@ -12802,7 +12802,7 @@ _08104EDC:
lsls r0, 16
cmp r2, r0
bgt _08104F1A
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r4, r0
@@ -12839,7 +12839,7 @@ _08104F1A:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_8104F54
str r0, [r5]
add sp, 0xC
@@ -12919,7 +12919,7 @@ _08104FCC:
ldrsh r0, [r3, r1]
cmp r0, 0
blt _08104FF0
- ldr r2, =gUnknown_02038C28
+ ldr r2, =gScanlineEffectRegBuffers
lsls r0, 1
adds r0, r2
ldrh r1, [r3, 0x14]
@@ -12943,7 +12943,7 @@ _08104FF0:
ldrsh r1, [r3, r2]
cmp r0, r1
blt _0810500E
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
adds r0, r4, 0
@@ -18518,7 +18518,7 @@ _08107D8C:
movs r3, 0
movs r2, 0x10
ldrsh r0, [r4, r2]
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
mov r12, r1
cmp r3, r0
bge _08107DCA
@@ -18555,7 +18555,7 @@ _08107DCA:
ldrsh r0, [r4, r3]
cmp r1, r0
bge _08107E04
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -18584,7 +18584,7 @@ _08107E04:
asrs r0, r2, 16
cmp r0, 0x9F
bgt _08107E3A
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -18652,7 +18652,7 @@ _08107E7A:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldrh r0, [r4, 0x8]
adds r0, 0x1
strh r0, [r4, 0x8]
@@ -18689,8 +18689,8 @@ _08107ED8:
ldrsh r0, [r4, r1]
cmp r3, r0
bge _08107F0C
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107EE6:
lsls r1, r3, 16
asrs r1, 16
@@ -18719,8 +18719,8 @@ _08107F0C:
ldrsh r0, [r4, r3]
cmp r1, r0
bge _08107F40
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107F1E:
asrs r3, r2, 16
lsls r2, r3, 1
@@ -18745,8 +18745,8 @@ _08107F40:
asrs r0, r1, 16
cmp r0, 0x9F
bgt _08108022
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107F4E:
asrs r3, r1, 16
lsls r2, r3, 1
@@ -18771,8 +18771,8 @@ _08107F78:
ldrsh r0, [r4, r1]
cmp r3, r0
bge _08107FAC
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107F86:
lsls r1, r3, 16
asrs r1, 16
@@ -18801,8 +18801,8 @@ _08107FAC:
ldrsh r0, [r4, r3]
cmp r1, r0
bge _08107FE0
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107FBE:
asrs r3, r2, 16
lsls r2, r3, 1
@@ -18827,8 +18827,8 @@ _08107FE0:
asrs r0, r1, 16
cmp r0, 0x9F
bgt _0810800C
- ldr r6, =gUnknown_02038C28
- ldr r5, =gUnknown_02039B28
+ ldr r6, =gScanlineEffectRegBuffers
+ ldr r5, =gScanlineEffect
_08107FEE:
asrs r3, r1, 16
lsls r2, r3, 1
@@ -34618,7 +34618,7 @@ _0810FEC0:
adds r0, 0x40
cmp r1, r0
bgt _0810FEFA
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -34651,7 +34651,7 @@ _0810FEFA:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_810FF34
str r0, [r4]
add sp, 0xC
@@ -34700,7 +34700,7 @@ _0810FF66:
ldr r0, =gSineTable
mov r9, r0
movs r7, 0x3
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
mov r12, r1
movs r2, 0xF0
lsls r2, 3
@@ -34775,7 +34775,7 @@ _0810FFFE:
ble _08110026
b _08110014
_0811000E:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_08110014:
@@ -38728,7 +38728,7 @@ _08112054:
_0811206C:
movs r2, 0x2
movs r3, 0x6
- bl sub_80BA384
+ bl ScanlineEffect_InitWave
lsls r0, 24
lsrs r0, 24
strh r0, [r5, 0x1C]
@@ -38884,7 +38884,7 @@ _081121A8:
beq _081121F0
b _08112258
_081121AE:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
movs r0, 0x1
@@ -41152,7 +41152,7 @@ _0811345A:
ldrsh r0, [r4, r1]
cmp r3, r0
bgt _08113488
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -41175,7 +41175,7 @@ _08113488:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_81134B8
str r0, [r4]
add sp, 0xC
@@ -41264,7 +41264,7 @@ _0811354E:
bl sub_8113574
b _0811356E
_08113556:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
ldrh r0, [r2, 0x8]
@@ -41292,11 +41292,11 @@ sub_8113574: @ 8113574
ldrsh r0, [r5, r1]
cmp r4, r0
bgt _081135CA
- ldr r7, =gUnknown_02038C28
+ ldr r7, =gScanlineEffectRegBuffers
mov r12, r7
ldr r0, =gSineTable
mov r8, r0
- ldr r6, =gUnknown_02039B28
+ ldr r6, =gScanlineEffect
_08113592:
lsls r2, r4, 1
ldrb r1, [r6, 0x14]
@@ -42169,7 +42169,7 @@ _08113CB0:
movs r0, 0x3
bl sub_8114374
movs r3, 0
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r4, r0
@@ -42189,7 +42189,7 @@ _08113CDC:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
movs r0, 0x3F
eors r7, r0
movs r1, 0xFC
@@ -42344,7 +42344,7 @@ _08113E3E:
b _08113E5E
.pool
_08113E58:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_08113E5E:
@@ -42534,7 +42534,7 @@ _08114002:
str r0, [sp, 0x10]
movs r3, 0
add r4, sp, 0x10
- ldr r6, =gUnknown_02038C28
+ ldr r6, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r7, r6, r0
@@ -42563,7 +42563,7 @@ _08114010:
strb r2, [r4, 0x9]
ldr r0, [sp, 0x10]
ldr r2, [r4, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
_08114044:
ldrh r0, [r5, 0x8]
adds r0, 0x1
@@ -42772,7 +42772,7 @@ _081141DA:
bne _08114232
b _08114204
_081141FE:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_08114204:
@@ -42827,9 +42827,9 @@ sub_8114244: @ 8114244
movs r4, 0
cmp r0, 0
ble _081142A4
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r12, r0
- ldr r7, =gUnknown_02039B28
+ ldr r7, =gScanlineEffect
_08114278:
lsls r2, r4, 16
asrs r2, 16
@@ -42861,9 +42861,9 @@ _081142A4:
ldrsh r0, [r6, r2]
cmp r1, r0
bgt _081142EE
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r12, r0
- ldr r7, =gUnknown_02039B28
+ ldr r7, =gScanlineEffect
_081142B8:
asrs r4, r3, 16
cmp r4, 0
@@ -42904,8 +42904,8 @@ _081142EE:
ldrsh r0, [r6, r3]
cmp r1, r0
bge _08114366
- ldr r7, =gUnknown_02038C28
- ldr r4, =gUnknown_02039B28
+ ldr r7, =gScanlineEffectRegBuffers
+ ldr r4, =gScanlineEffect
_08114306:
asrs r3, r2, 16
cmp r3, 0
@@ -42935,7 +42935,7 @@ _08114338:
adds r5, r0, 0
adds r5, 0x9F
movs r4, 0
- ldr r3, =gUnknown_02038C28
+ ldr r3, =gScanlineEffectRegBuffers
movs r2, 0xF0
lsls r2, 3
adds r6, r3, r2
@@ -44235,7 +44235,7 @@ _08114E4E:
b _08114E7E
.pool
_08114E78:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_08114E7E:
@@ -44510,7 +44510,7 @@ _08115094:
ldrsh r0, [r0, r1]
cmp r0, 0
bne _081150DA
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_081150C2:
@@ -44561,7 +44561,7 @@ _08115114:
asrs r4, r0, 16
cmp r2, r0
bge _08115140
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -44584,7 +44584,7 @@ _08115140:
asrs r0, r1, 16
cmp r0, 0x9F
bgt _0811516E
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
lsls r0, r3, 16
asrs r0, 16
adds r3, r0, 0
@@ -44616,7 +44616,7 @@ _0811516E:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
add sp, 0xC
pop {r4-r6}
pop {r0}
@@ -50740,9 +50740,9 @@ _08118442:
strh r0, [r1, 0xC]
_0811845A:
movs r3, 0
- ldr r5, =gUnknown_02039B28
+ ldr r5, =gScanlineEffect
mov r9, r5
- ldr r7, =gUnknown_02038C28
+ ldr r7, =gScanlineEffectRegBuffers
mov r6, r9
adds r5, r1, 0
_08118466:
@@ -50760,8 +50760,8 @@ _08118466:
ble _08118466
cmp r3, 0x9F
bgt _081184AA
- ldr r7, =gUnknown_02038C28
- ldr r6, =gUnknown_02039B28
+ ldr r7, =gScanlineEffectRegBuffers
+ ldr r6, =gScanlineEffect
ldr r1, =gTasks
mov r2, r12
adds r0, r2, r4
@@ -51089,9 +51089,9 @@ _0811873C:
strh r0, [r1, 0xC]
_08118752:
movs r3, 0
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
mov r8, r0
- ldr r2, =gUnknown_02038C28
+ ldr r2, =gScanlineEffectRegBuffers
mov r12, r2
mov r7, r8
adds r4, r1, 0
@@ -51110,9 +51110,9 @@ _08118760:
ble _08118760
cmp r3, 0x9F
bgt _081187A4
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r12, r0
- ldr r7, =gUnknown_02039B28
+ ldr r7, =gScanlineEffect
ldr r1, =gTasks
adds r0, r6, r5
lsls r0, 3
@@ -51378,9 +51378,9 @@ _081189BA:
strh r0, [r1, 0xC]
_081189D0:
movs r3, 0
- ldr r6, =gUnknown_02039B28
+ ldr r6, =gScanlineEffect
mov r8, r6
- ldr r7, =gUnknown_02038C28
+ ldr r7, =gScanlineEffectRegBuffers
adds r4, r1, 0
_081189DA:
lsls r2, r3, 1
@@ -51397,8 +51397,8 @@ _081189DA:
ble _081189DA
cmp r3, 0x9F
bgt _08118A1E
- ldr r7, =gUnknown_02038C28
- ldr r6, =gUnknown_02039B28
+ ldr r7, =gScanlineEffectRegBuffers
+ ldr r6, =gScanlineEffect
ldr r1, =gTasks
mov r2, r12
adds r0, r2, r5
@@ -51707,9 +51707,9 @@ _08118C90:
strh r0, [r1, 0xC]
_08118CA6:
movs r3, 0
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
mov r12, r0
- ldr r2, =gUnknown_02038C28
+ ldr r2, =gScanlineEffectRegBuffers
mov r8, r2
mov r7, r12
adds r4, r1, 0
@@ -51728,9 +51728,9 @@ _08118CB4:
ble _08118CB4
cmp r3, 0x9F
bgt _08118CF8
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r8, r0
- ldr r7, =gUnknown_02039B28
+ ldr r7, =gScanlineEffect
ldr r1, =gTasks
adds r0, r5, r6
lsls r0, 3
@@ -52025,7 +52025,7 @@ _08118F28:
lsls r1, 7
movs r0, 0xC
bl SetGpuReg
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
ldr r1, =gTasks
diff --git a/asm/battle_anim_815A0D4.s b/asm/battle_anim_815A0D4.s
index d583f1e85..f3b72792d 100644
--- a/asm/battle_anim_815A0D4.s
+++ b/asm/battle_anim_815A0D4.s
@@ -1689,7 +1689,7 @@ _0815AE58:
ldrsh r0, [r5, r6]
cmp r1, r0
bgt _0815AE8E
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r0, r4
@@ -1729,7 +1729,7 @@ _0815AEA2:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_815AED8
str r0, [r5]
add sp, 0xC
@@ -1820,7 +1820,7 @@ _0815AF5C:
ldrsh r0, [r4, r2]
cmp r1, r0
bge _0815AF90
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -1848,7 +1848,7 @@ _0815AF90:
ldrsh r0, [r4, r2]
cmp r1, r0
bgt _0815AFC4
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r6, r5, r0
@@ -1877,7 +1877,7 @@ _0815AFC4:
ldrsh r0, [r4, r1]
cmp r0, 0
beq _0815AFDA
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_0815AFDA:
@@ -6151,7 +6151,7 @@ _0815D316:
ldrh r3, [r0]
movs r7, 0
movs r2, 0
- ldr r6, =gUnknown_02038C28
+ ldr r6, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r0, r6
@@ -6192,7 +6192,7 @@ _0815D326:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_815D398
str r0, [r4]
add sp, 0xC
@@ -6304,7 +6304,7 @@ _0815D40E:
ldrsh r0, [r6, r3]
cmp r1, r0
ble _0815D52E
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
mov r10, r0
ldr r1, [sp, 0x4]
lsls r0, r1, 16
@@ -6325,7 +6325,7 @@ _0815D47E:
subs r0, r1
lsls r0, 7
adds r2, r0
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
adds r2, r0
lsls r4, 16
asrs r4, 16
@@ -6343,7 +6343,7 @@ _0815D47E:
subs r0, r1
lsls r0, 7
adds r3, r0
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
adds r3, r1
lsls r1, r7, 16
asrs r1, 16
@@ -6407,7 +6407,7 @@ _0815D52E:
lsls r1, r2, 17
cmp r1, 0
blt _0815D55A
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
ldr r7, [sp, 0x4]
lsls r0, r7, 16
asrs r0, 16
@@ -6487,7 +6487,7 @@ _0815D5CC:
asrs r0, 16
cmp r0, 0xC
ble _0815D63C
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
movs r0, 0
diff --git a/asm/battle_frontier_1.s b/asm/battle_frontier_1.s
index 91c8215e5..31d5d3fbe 100644
--- a/asm/battle_frontier_1.s
+++ b/asm/battle_frontier_1.s
@@ -11000,8 +11000,8 @@ _0819486C:
movs r1, 0
strh r1, [r0, 0x8]
_08194878:
- bl dp12_8087EA4
- ldr r0, =gUnknown_02038C28
+ bl ScanlineEffect_Clear
+ ldr r0, =gScanlineEffectRegBuffers
ldr r2, =0x00001f0a
movs r4, 0xF0
lsls r4, 3
@@ -11017,7 +11017,7 @@ _08194888:
bge _08194888
movs r5, 0x5B
ldr r3, =gUnknown_0860CF44
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
ldr r2, =0x00001f09
ldr r4, =0x00000836
adds r1, r0, r4
@@ -11033,7 +11033,7 @@ _081948A4:
ldr r0, [r3]
ldr r1, [r3, 0x4]
ldr r2, [r3, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
mov r0, r8
bl DestroyTask
_081948C2:
@@ -11513,7 +11513,7 @@ sub_8194CE4: @ 8194CE4
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
.pool
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 611b87eef..1d2f5d1ff 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -178,7 +178,7 @@ _080B24C8:
b _080B24F2
_080B24CC:
ldr r4, =gStringVar1
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -239,7 +239,7 @@ sub_80B252C: @ 80B252C
ands r0, r1
cmp r0, 0
beq _080B2570
- bl sub_800B320
+ bl IsLinkConnectionEstablished
lsls r0, 24
lsrs r1, r0, 24
cmp r1, 0
@@ -269,7 +269,7 @@ sub_80B2578: @ 80B2578
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl sub_800B320
+ bl IsLinkConnectionEstablished
lsls r0, 24
cmp r0, 0
beq _080B258E
@@ -404,7 +404,7 @@ sub_80B2688: @ 80B2688
push {r4,r5,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r5, r0, 24
adds r0, r4, 0
@@ -426,7 +426,7 @@ sub_80B2688: @ 80B2688
adds r4, r0, r1
movs r0, 0
strh r0, [r4, 0xE]
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -506,7 +506,7 @@ sub_80B275C: @ 80B275C
mov r9, r0
mov r7, r8
add r7, r9
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r5, r0, 24
adds r0, r4, 0
@@ -585,7 +585,7 @@ sub_80B2804: @ 80B2804
bne _080B2898
bl sub_800AA48
adds r4, r0, 0
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -652,7 +652,7 @@ sub_80B28A8: @ 80B28A8
lsrs r0, 24
cmp r0, 0x1
beq _080B290A
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
adds r4, r0, 0
bl sub_800AA48
lsls r4, 24
@@ -729,13 +729,13 @@ _080B297C:
cmp r2, 0x9
bne _080B2994
_080B2984:
- bl sub_80097E8
+ bl CloseLink
bl HideFieldMessageBox
ldr r0, =sub_80B2CB0
b _080B29E4
.pool
_080B2994:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
ldr r4, =gUnknown_03005DB8
strb r0, [r4]
bl GetMultiplayerId
@@ -812,7 +812,7 @@ _080B2A42:
cmp r0, 0x9
bne _080B2A6C
_080B2A4A:
- bl sub_80097E8
+ bl CloseLink
_080B2A4E:
bl HideFieldMessageBox
ldr r0, =gTasks
@@ -825,7 +825,7 @@ _080B2A4E:
b _080B2ACE
.pool
_080B2A6C:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
ldr r4, =gUnknown_03005DB8
strb r0, [r4]
bl GetMultiplayerId
@@ -1610,7 +1610,7 @@ sub_80B3144: @ 80B3144
ldrsh r2, [r4, r3]
cmp r2, 0
bne _080B3178
- bl sub_8009734
+ bl OpenLink
bl sub_800A2BC
ldr r0, =task00_08081A90
movs r1, 0x50
@@ -1640,12 +1640,12 @@ sub_80B3194: @ 80B3194
lsls r0, 24
lsrs r4, r0, 24
adds r5, r4, 0
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bls _080B31DA
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1681,7 +1681,7 @@ sub_80B31E8: @ 80B31E8
lsrs r5, r0, 24
bl sub_800AA48
adds r4, r0, 0
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -1808,7 +1808,7 @@ _080B32E0:
_080B32F8:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r1, =gLinkType
ldr r2, =0x00002211
adds r0, r2, 0
@@ -1921,7 +1921,7 @@ _080B33E8:
_080B3408:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =gLinkType
ldr r2, =0x00002211
adds r1, r2, 0
@@ -2399,7 +2399,7 @@ _080B382E:
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
bl sub_8009FAC
b _080B3864
_080B3840:
@@ -2470,7 +2470,7 @@ _080B38C6:
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
bl Rfu_set_zero
b _080B38FC
_080B38D8:
@@ -2651,7 +2651,7 @@ task00_08081A90: @ 80B3A30
lsls r0, 17
cmp r1, r0
ble _080B3A62
- bl sub_80097E8
+ bl CloseLink
ldr r0, =c2_800ACD4
bl SetMainCallback2
adds r0, r4, 0
@@ -2669,7 +2669,7 @@ _080B3A62:
lsls r0, 24
cmp r0, 0
bne _080B3A86
- bl sub_80097E8
+ bl CloseLink
ldr r0, =c2_800ACD4
bl SetMainCallback2
_080B3A86:
@@ -2761,7 +2761,7 @@ _080B3B2A:
b _080B3BB8
.pool
_080B3B40:
- bl sub_8009734
+ bl OpenLink
ldr r0, =task00_08081A90
movs r1, 0x1
bl CreateTask
@@ -2779,14 +2779,14 @@ _080B3B54:
strh r0, [r5, 0x2]
b _080B3B96
_080B3B68:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
adds r4, r0, 0
bl sub_800AA48
lsls r4, 24
lsls r0, 24
cmp r4, r0
bcc _080B3BB8
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
cmp r0, 0
beq _080B3B96
diff --git a/asm/contest.s b/asm/contest.s
index 3c34965ad..e81ce8d5c 100644
--- a/asm/contest.s
+++ b/asm/contest.s
@@ -563,7 +563,7 @@ _080D7B4E:
bl sub_80D779C
bl sub_80D77E4
bl sub_80D7678
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
bl ResetPaletteFade
ldr r2, =gPaletteFade
ldrb r0, [r2, 0x8]
@@ -1367,7 +1367,7 @@ vblank_cb_battle: @ 80D827C
bl TransferPlttBuffer
bl LoadOam
bl ProcessSpriteCopyRequests
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
.pool
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
index 55503fde1..e73c657a9 100644
--- a/asm/contest_link_80F57C4.s
+++ b/asm/contest_link_80F57C4.s
@@ -344,7 +344,7 @@ sub_80F5B00: @ 80F5B00
bl SetVBlankCallback
bl sub_80F7DF4
bl sub_80F57C4
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
bl ResetPaletteFade
bl ResetSpriteData
bl ResetTasks
@@ -492,7 +492,7 @@ sub_80F5C24: @ 80F5C24
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
.pool
diff --git a/asm/coord_event_weather.s b/asm/coord_event_weather.s
deleted file mode 100644
index 7c1188ad6..000000000
--- a/asm/coord_event_weather.s
+++ /dev/null
@@ -1,156 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_809D7BC
-sub_809D7BC: @ 809D7BC
- push {lr}
- movs r0, 0x1
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7BC
-
- thumb_func_start sub_809D7C8
-sub_809D7C8: @ 809D7C8
- push {lr}
- movs r0, 0x2
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7C8
-
- thumb_func_start sub_809D7D4
-sub_809D7D4: @ 809D7D4
- push {lr}
- movs r0, 0x3
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7D4
-
- thumb_func_start sub_809D7E0
-sub_809D7E0: @ 809D7E0
- push {lr}
- movs r0, 0x4
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7E0
-
- thumb_func_start sub_809D7EC
-sub_809D7EC: @ 809D7EC
- push {lr}
- movs r0, 0x5
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7EC
-
- thumb_func_start sub_809D7F8
-sub_809D7F8: @ 809D7F8
- push {lr}
- movs r0, 0x6
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D7F8
-
- thumb_func_start sub_809D804
-sub_809D804: @ 809D804
- push {lr}
- movs r0, 0x9
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D804
-
- thumb_func_start sub_809D810
-sub_809D810: @ 809D810
- push {lr}
- movs r0, 0x7
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D810
-
- thumb_func_start sub_809D81C
-sub_809D81C: @ 809D81C
- push {lr}
- movs r0, 0x8
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D81C
-
- thumb_func_start sub_809D828
-sub_809D828: @ 809D828
- push {lr}
- movs r0, 0xB
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D828
-
- thumb_func_start sub_809D834
-sub_809D834: @ 809D834
- push {lr}
- movs r0, 0xC
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D834
-
- thumb_func_start sub_809D840
-sub_809D840: @ 809D840
- push {lr}
- movs r0, 0x14
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D840
-
- thumb_func_start sub_809D84C
-sub_809D84C: @ 809D84C
- push {lr}
- movs r0, 0x15
- bl sub_80AEDF0
- pop {r0}
- bx r0
- thumb_func_end sub_809D84C
-
- thumb_func_start trigger_activate_weather
-trigger_activate_weather: @ 809D858
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r2, 0
- ldr r3, =gUnknown_085102E0
-_0809D862:
- lsls r1, r2, 3
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r4
- bne _0809D87C
- adds r0, r3, 0x4
- adds r0, r1, r0
- ldr r0, [r0]
- bl _call_via_r0
- b _0809D886
- .pool
-_0809D87C:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xC
- bls _0809D862
-_0809D886:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end trigger_activate_weather
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 86c78d2cf..db2ffac14 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -652,7 +652,7 @@ sub_811A7E4: @ 811A7E4
_0811A804:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
b _0811A840
_0811A80E:
ldr r0, =gPaletteFade
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index e0e7b5efb..89e6efa6a 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -2155,7 +2155,7 @@ trigger_activate: @ 809D04C
cmp r1, 0
bne _0809D062
ldrb r0, [r4, 0x6]
- bl trigger_activate_weather
+ bl DoCoordEventWeather
b _0809D082
_0809D062:
ldrh r0, [r4, 0x6]
diff --git a/asm/field_screen.s b/asm/field_screen.s
index 6b49b9c7c..d05028cc6 100644
--- a/asm/field_screen.s
+++ b/asm/field_screen.s
@@ -1625,8 +1625,8 @@ _080ABCBC:
.pool
thumb_func_end sub_80ABC7C
- thumb_func_start fade_screen
-fade_screen: @ 80ABCD0
+ thumb_func_start FadeScreen
+FadeScreen: @ 80ABCD0
push {r4,r5,lr}
sub sp, 0x4
lsls r0, 24
@@ -1762,7 +1762,7 @@ _080ABDE4:
pop {r0}
bx r0
.pool
- thumb_func_end fade_screen
+ thumb_func_end FadeScreen
thumb_func_start sub_80ABDFC
sub_80ABDFC: @ 80ABDFC
@@ -2339,43 +2339,43 @@ _080AC290:
.4byte _080AC300
_080AC2B8:
movs r0, 0x1
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2C0:
movs r0, 0x2
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2C8:
movs r0, 0x3
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2D0:
movs r0, 0x4
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2D8:
movs r0, 0x5
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2E0:
movs r0, 0x6
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2E8:
movs r0, 0x9
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2F0:
movs r0, 0x7
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC2F8:
movs r0, 0x8
- bl sub_80AEDF0
+ bl SetWeather
b _080AC306
_080AC300:
movs r0, 0xB
- bl sub_80AEDF0
+ bl SetWeather
_080AC306:
pop {r0}
bx r0
@@ -2472,15 +2472,15 @@ _080AC3B6:
bx r0
thumb_func_end play_some_sound
- thumb_func_start sub_80AC3BC
-sub_80AC3BC: @ 80AC3BC
+ thumb_func_start IsWeatherChangeComplete
+IsWeatherChangeComplete: @ 80AC3BC
ldr r0, =gUnknown_02038454
ldr r1, =0x000006d3
adds r0, r1
ldrb r0, [r0]
bx lr
.pool
- thumb_func_end sub_80AC3BC
+ thumb_func_end IsWeatherChangeComplete
thumb_func_start sub_80AC3D0
sub_80AC3D0: @ 80AC3D0
@@ -7537,8 +7537,8 @@ GetSav1Weather: @ 80AEDAC
.pool
thumb_func_end GetSav1Weather
- thumb_func_start sub_80AEDBC
-sub_80AEDBC: @ 80AEDBC
+ thumb_func_start SetSav1WeatherFromCurrMapHeader
+SetSav1WeatherFromCurrMapHeader: @ 80AEDBC
push {r4,r5,lr}
ldr r4, =gSaveBlock1Ptr
ldr r0, [r4]
@@ -7559,10 +7559,10 @@ sub_80AEDBC: @ 80AEDBC
pop {r0}
bx r0
.pool
- thumb_func_end sub_80AEDBC
+ thumb_func_end SetSav1WeatherFromCurrMapHeader
- thumb_func_start sub_80AEDF0
-sub_80AEDF0: @ 80AEDF0
+ thumb_func_start SetWeather
+SetWeather: @ 80AEDF0
push {lr}
bl SetSav1Weather
bl GetSav1Weather
@@ -7571,7 +7571,7 @@ sub_80AEDF0: @ 80AEDF0
bl weather_set
pop {r0}
bx r0
- thumb_func_end sub_80AEDF0
+ thumb_func_end SetWeather
thumb_func_start sub_80AEE08
sub_80AEE08: @ 80AEE08
@@ -7872,13 +7872,13 @@ _080AF06A:
bl palette_bg_faded_fill_black
movs r0, 0
movs r1, 0
- bl fade_screen
+ bl FadeScreen
b _080AF084
_080AF078:
bl palette_bg_faded_fill_white
movs r0, 0x2
movs r1, 0
- bl fade_screen
+ bl FadeScreen
_080AF084:
pop {r4}
pop {r0}
@@ -7891,7 +7891,7 @@ sub_80AF08C: @ 80AF08C
bl palette_bg_faded_fill_white
movs r0, 0x2
movs r1, 0x8
- bl fade_screen
+ bl FadeScreen
pop {r0}
bx r0
thumb_func_end sub_80AF08C
@@ -7902,7 +7902,7 @@ pal_fill_black: @ 80AF0A0
bl palette_bg_faded_fill_black
movs r0, 0
movs r1, 0
- bl fade_screen
+ bl FadeScreen
pop {r0}
bx r0
thumb_func_end pal_fill_black
@@ -7928,12 +7928,12 @@ sub_80AF0B4: @ 80AF0B4
_080AF0DA:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
b _080AF0EC
_080AF0E4:
movs r0, 0x3
movs r1, 0
- bl fade_screen
+ bl FadeScreen
_080AF0EC:
pop {r4}
pop {r0}
@@ -8761,7 +8761,7 @@ sub_80AF79C: @ 80AF79C
bl music_something
movs r0, 0x3
movs r1, 0x8
- bl fade_screen
+ bl FadeScreen
bl play_some_sound
ldr r0, =gFieldCallback
ldr r1, =sub_80AF3B0
@@ -8990,7 +8990,7 @@ _080AF99A:
bl sub_8009FAC
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
bl music_something
movs r0, 0x9
bl PlaySE
@@ -9572,12 +9572,12 @@ _080AFE30:
beq _080AFEBC
b _080AFEC6
_080AFE36:
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
ldrb r1, [r0, 0x14]
lsls r0, r1, 4
subs r0, r1
lsls r0, 7
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
adds r0, r1
movs r2, 0x2
ldrsh r1, [r4, r2]
@@ -9591,12 +9591,12 @@ _080AFE36:
b _080AFEC6
.pool
_080AFE64:
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
ldrb r1, [r0, 0x14]
lsls r0, r1, 4
subs r0, r1
lsls r0, 7
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
adds r0, r1
movs r6, 0x2
ldrsh r1, [r4, r6]
@@ -9631,7 +9631,7 @@ _080AFEB4:
bl DestroyTask
b _080AFEC6
_080AFEBC:
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
adds r0, r5, 0
bl DestroyTask
_080AFEC6:
@@ -9665,12 +9665,12 @@ _080AFEF4:
beq _080AFF80
b _080AFF8A
_080AFEFA:
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
ldrb r1, [r0, 0x14]
lsls r0, r1, 4
subs r0, r1
lsls r0, 7
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
adds r0, r1
movs r2, 0x2
ldrsh r1, [r4, r2]
@@ -9684,12 +9684,12 @@ _080AFEFA:
b _080AFF8A
.pool
_080AFF28:
- ldr r0, =gUnknown_02039B28
+ ldr r0, =gScanlineEffect
ldrb r1, [r0, 0x14]
lsls r0, r1, 4
subs r0, r1
lsls r0, 7
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
adds r0, r1
movs r6, 0x2
ldrsh r1, [r4, r6]
@@ -9724,7 +9724,7 @@ _080AFF78:
bl DestroyTask
b _080AFF8A
_080AFF80:
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
adds r0, r5, 0
bl DestroyTask
_080AFF8A:
@@ -9914,7 +9914,7 @@ sub_80B00E8: @ 80B00E8
lsrs r0, 24
cmp r0, 0
beq _080B0116
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
ldr r1, =gUnknown_0854FE64
lsls r0, 1
adds r0, r1
@@ -9940,7 +9940,7 @@ _080B0116:
thumb_func_start door_upload_tiles
door_upload_tiles: @ 80B0124
push {r4,lr}
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
ldr r0, =gSaveBlock2Ptr
ldr r0, [r0]
ldr r1, =0x00000e68
@@ -10261,7 +10261,7 @@ _080B0368:
bl sub_8199C30
movs r0, 0
bl schedule_bg_copy_tilemap_to_vram
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
movs r2, 0x4
ldrsh r1, [r5, r2]
movs r0, 0x6
@@ -10280,7 +10280,7 @@ _080B0368:
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
movs r0, 0x1
strh r0, [r5]
b _080B052C
diff --git a/asm/intro.s b/asm/intro.s
index efc36e7d9..3e95c6ec7 100644
--- a/asm/intro.s
+++ b/asm/intro.s
@@ -11,7 +11,7 @@ sub_816CBE8: @ 816CBE8
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
thumb_func_end sub_816CBE8
@@ -2124,7 +2124,7 @@ task_intro_17: @ 816DEEC
movs r1, 0xA0
movs r2, 0x4
movs r3, 0x4
- bl sub_80BA384
+ bl ScanlineEffect_InitWave
add sp, 0xC
pop {r0}
bx r0
@@ -2411,7 +2411,7 @@ _0816E156:
adds r0, r1
ldr r1, =task_intro_19
str r1, [r0]
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_0816E176:
@@ -2623,7 +2623,7 @@ task_intro_19: @ 816E2A0
movs r1, 0xA0
movs r2, 0x4
movs r3, 0x4
- bl sub_80BA384
+ bl ScanlineEffect_InitWave
add sp, 0xC
pop {r4}
pop {r0}
@@ -3038,7 +3038,7 @@ _0816E69C:
adds r0, r1
ldr r1, =task_intro_21
str r1, [r0]
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
_0816E6BC:
diff --git a/asm/item_use.s b/asm/item_use.s
deleted file mode 100644
index 0d9f30ec3..000000000
--- a/asm/item_use.s
+++ /dev/null
@@ -1,2863 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start SetUpItemUseCallback
-@ void SetUpItemUseCallback(u8 taskId)
-SetUpItemUseCallback: @ 80FD060
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gSpecialVar_ItemId
- ldrh r0, [r1]
- cmp r0, 0xAF
- bne _080FD084
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldrb r0, [r1, 0x10]
- b _080FD08A
- .pool
-_080FD084:
- ldrh r0, [r1]
- bl ItemId_GetType
-_080FD08A:
- subs r0, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FD0B8
- ldr r0, =gUnknown_0203CE54
- ldr r2, [r0]
- ldr r1, =gUnknown_085920D8
- lsls r0, r4, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- adds r0, r5, 0
- bl unknown_ItemMenu_Confirm
- b _080FD0CC
- .pool
-_080FD0B8:
- ldr r0, =gUnknown_0203CF2C
- ldr r2, [r0]
- ldr r1, =gUnknown_085920D8
- lsls r0, r4, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- adds r0, r5, 0
- bl sub_81C5B14
-_080FD0CC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetUpItemUseCallback
-
- thumb_func_start SetUpItemUseOnFieldCallback
-@ void SetUpItemUseOnFieldCallback()
-SetUpItemUseOnFieldCallback: @ 80FD0DC
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r0, r1
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- cmp r0, 0x1
- beq _080FD110
- ldr r1, =gFieldCallback
- ldr r0, =MapPostLoadHook_UseItem
- str r0, [r1]
- adds r0, r2, 0
- bl SetUpItemUseCallback
- b _080FD11A
- .pool
-_080FD110:
- ldr r0, =gUnknown_0203A0F4
- ldr r1, [r0]
- adds r0, r2, 0
- bl _call_via_r1
-_080FD11A:
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetUpItemUseOnFieldCallback
-
- thumb_func_start MapPostLoadHook_UseItem
-@ void MapPostLoadHook_UseItem()
-MapPostLoadHook_UseItem: @ 80FD124
- push {lr}
- bl pal_fill_black
- ldr r0, =Task_CallItemUseOnFieldCallback
- movs r1, 0x8
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end MapPostLoadHook_UseItem
-
- thumb_func_start Task_CallItemUseOnFieldCallback
-@ void Task_CallItemUseOnFieldCallback(u8 taskId)
-Task_CallItemUseOnFieldCallback: @ 80FD13C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80ABDFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FD158
- ldr r0, =gUnknown_0203A0F4
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
-_080FD158:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end Task_CallItemUseOnFieldCallback
-
- thumb_func_start DisplayCannotUseItemMessage
-@ void DisplayCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyItemOnField, u8 *str)
-DisplayCannotUseItemMessage: @ 80FD164
- push {r4-r6,lr}
- adds r4, r1, 0
- adds r1, r2, 0
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r4, 24
- lsrs r4, 24
- ldr r6, =gStringVar4
- adds r0, r6, 0
- bl StringExpandPlaceholders
- cmp r4, 0
- bne _080FD1B4
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FD1A0
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r5, 0
- movs r1, 0x1
- adds r2, r6, 0
- bl DisplayItemMessage
- b _080FD1BE
- .pool
-_080FD1A0:
- ldr r1, =gText_DadsAdvice
- ldr r2, =sub_81C6714
- adds r0, r5, 0
- bl DisplayItemMessageInBattlePyramid
- b _080FD1BE
- .pool
-_080FD1B4:
- ldr r2, =CleanUpAfterFailingToUseRegisteredKeyItemOnField
- adds r0, r5, 0
- adds r1, r6, 0
- bl DisplayItemMessageOnField
-_080FD1BE:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DisplayCannotUseItemMessage
-
- thumb_func_start DisplayDadsAdviceCannotUseItemMessage
-@ void DisplayDadsAdviceCannotUseItemMessage(u8 taskId, bool8 isUsingRegisteredKeyItemOnField)
-DisplayDadsAdviceCannotUseItemMessage: @ 80FD1C8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r2, =gText_DadsAdvice
- bl DisplayCannotUseItemMessage
- pop {r0}
- bx r0
- .pool
- thumb_func_end DisplayDadsAdviceCannotUseItemMessage
-
- thumb_func_start DisplayCannotDismountBikeMessage
-@ void DisplayCannotDismountBikeMessage(u8 taskId, bool8 isUsingRegisteredKeyItemOnField)
-DisplayCannotDismountBikeMessage: @ 80FD1E0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r2, =gText_CantDismountBike
- bl DisplayCannotUseItemMessage
- pop {r0}
- bx r0
- .pool
- thumb_func_end DisplayCannotDismountBikeMessage
-
- thumb_func_start CleanUpAfterFailingToUseRegisteredKeyItemOnField
-@ void CleanUpAfterFailingToUseRegisteredKeyItemOnField(u8 taskId)
-CleanUpAfterFailingToUseRegisteredKeyItemOnField: @ 80FD1F8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_8197434
- adds r0, r4, 0
- bl DestroyTask
- bl sub_80984F4
- bl ScriptContext2_Disable
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end CleanUpAfterFailingToUseRegisteredKeyItemOnField
-
- thumb_func_start CheckIfItemIsTMHMOrEvolutionStone
-@ u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId)
-CheckIfItemIsTMHMOrEvolutionStone: @ 80FD21C
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl ItemId_GetFieldFunc
- ldr r1, =ItemUseOutOfBattle_TMHM
- cmp r0, r1
- bne _080FD238
- movs r0, 0x1
- b _080FD24E
- .pool
-_080FD238:
- adds r0, r4, 0
- bl ItemId_GetFieldFunc
- ldr r1, =ItemUseOutOfBattle_EvolutionStone
- cmp r0, r1
- beq _080FD24C
- movs r0, 0
- b _080FD24E
- .pool
-_080FD24C:
- movs r0, 0x2
-_080FD24E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end CheckIfItemIsTMHMOrEvolutionStone
-
- thumb_func_start sub_80FD254
-sub_80FD254: @ 80FD254
- push {lr}
- sub sp, 0x24
- mov r1, sp
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- strh r0, [r1, 0x20]
- ldr r1, =bag_menu_mail_related
- mov r0, sp
- movs r2, 0
- bl ReadMail
- add sp, 0x24
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FD254
-
- thumb_func_start ItemUseOutOfBattle_Mail
-@ void ItemUseOutOfBattle_Mail(int taskId)
-ItemUseOutOfBattle_Mail: @ 80FD278
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_0203CE54
- ldr r2, [r1]
- ldr r1, =sub_80FD254
- str r1, [r2]
- bl unknown_ItemMenu_Confirm
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_Mail
-
- thumb_func_start ItemUseOutOfBattle_Bike
-@ void ItemUseOutOfBattle_Bike(int taskId)
-ItemUseOutOfBattle_Bike: @ 80FD298
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r6, r0, r1
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =0x0000088b
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FD30E
- adds r0, r4, 0
- bl MetatileBehavior_IsVerticalRail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FD30E
- adds r0, r4, 0
- bl MetatileBehavior_IsHorizontalRail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FD30E
- adds r0, r4, 0
- bl MetatileBehavior_IsIsolatedVerticalRail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FD30E
- adds r0, r4, 0
- bl MetatileBehavior_IsIsolatedHorizontalRail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FD320
-_080FD30E:
- ldrb r1, [r6, 0x6]
- adds r0, r5, 0
- bl DisplayCannotDismountBikeMessage
- b _080FD350
- .pool
-_080FD320:
- bl sav1_map_is_biking_allowed
- cmp r0, 0x1
- bne _080FD348
- bl IsBikingDisallowedByPlayer
- lsls r0, 24
- cmp r0, 0
- bne _080FD348
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =ItemUseOnFieldCB_Bike
- str r0, [r1]
- adds r0, r5, 0
- bl SetUpItemUseOnFieldCallback
- b _080FD350
- .pool
-_080FD348:
- ldrb r1, [r6, 0x6]
- adds r0, r5, 0
- bl DisplayDadsAdviceCannotUseItemMessage
-_080FD350:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ItemUseOutOfBattle_Bike
-
- thumb_func_start ItemUseOnFieldCB_Bike
-ItemUseOnFieldCB_Bike: @ 80FD358
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemId_GetSecondaryId
- lsls r0, 24
- cmp r0, 0
- bne _080FD378
- movs r0, 0x2
- bl GetOnOffBike
- b _080FD37E
- .pool
-_080FD378:
- movs r0, 0x4
- bl GetOnOffBike
-_080FD37E:
- bl sub_80984F4
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end ItemUseOnFieldCB_Bike
-
- thumb_func_start CanFish
-@ bool8 CanFish()
-CanFish: @ 80FD394
- push {r4-r6,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r0, r6, 24
- lsrs r5, r0, 24
- adds r0, r5, 0
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- cmp r0, 0
- bne _080FD41C
- movs r0, 0x10
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- bne _080FD41C
- movs r0, 0x8
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- bne _080FD3EC
- bl IsPlayerFacingSurfableFishableWater
- lsls r0, 24
- cmp r0, 0
- beq _080FD41C
-_080FD3E8:
- movs r0, 0x1
- b _080FD41E
-_080FD3EC:
- adds r0, r5, 0
- bl MetatileBehavior_IsSurfableWaterOrUnderwater
- lsls r0, 24
- cmp r0, 0
- beq _080FD40C
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridIsImpassableAt
- lsls r0, 24
- cmp r0, 0
- beq _080FD3E8
-_080FD40C:
- lsls r0, r6, 24
- lsrs r0, 24
- bl MetatileBehavior_8089510
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FD3E8
-_080FD41C:
- movs r0, 0
-_080FD41E:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end CanFish
-
- thumb_func_start ItemUseOutOfBattle_Rod
-ItemUseOutOfBattle_Rod: @ 80FD428
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl CanFish
- cmp r0, 0x1
- bne _080FD44C
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =ItemUseOnFieldCB_Rod
- str r0, [r1]
- adds r0, r4, 0
- bl SetUpItemUseOnFieldCallback
- b _080FD45E
- .pool
-_080FD44C:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r1, [r1, 0xE]
- adds r0, r4, 0
- bl DisplayDadsAdviceCannotUseItemMessage
-_080FD45E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_Rod
-
- thumb_func_start ItemUseOnFieldCB_Rod
-ItemUseOnFieldCB_Rod: @ 80FD468
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemId_GetSecondaryId
- lsls r0, 24
- lsrs r0, 24
- bl StartFishing
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOnFieldCB_Rod
-
- thumb_func_start ItemUseOutOfBattle_Itemfinder
-ItemUseOutOfBattle_Itemfinder: @ 80FD490
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x27
- bl IncrementGameStat
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =ItemUseOnFieldCB_Itemfinder
- str r0, [r1]
- adds r0, r4, 0
- bl SetUpItemUseOnFieldCallback
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_Itemfinder
-
- thumb_func_start ItemUseOnFieldCB_Itemfinder
-ItemUseOnFieldCB_Itemfinder: @ 80FD4B8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gMapHeader
- ldr r0, [r0, 0x4]
- adds r1, r4, 0
- bl ItemfinderCheckForHiddenItems
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FD4EC
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80FD504
- str r0, [r1]
- b _080FD4F6
- .pool
-_080FD4EC:
- ldr r1, =gText_ItemFinderNothing
- ldr r2, =sub_80FD5CC
- adds r0, r4, 0
- bl DisplayItemMessageOnField
-_080FD4F6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOnFieldCB_Itemfinder
-
- thumb_func_start sub_80FD504
-sub_80FD504: @ 80FD504
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r6, r5, 2
- adds r0, r6, r5
- lsls r7, r0, 3
- ldr r0, =gTasks + 0x8
- mov r8, r0
- adds r4, r7, r0
- movs r1, 0x6
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080FD5B8
- movs r2, 0x8
- ldrsh r0, [r4, r2]
- cmp r0, 0x4
- bne _080FD5AC
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- bl sub_80FD9B0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080FD564
- ldr r1, =gUnknown_085920E4
- subs r0, 0x1
- adds r0, r1
- ldrb r0, [r0]
- bl sub_80FDA24
- mov r0, r8
- subs r0, 0x8
- adds r0, r7, r0
- ldr r1, =sub_80FDA94
- str r1, [r0]
- b _080FD5C2
- .pool
-_080FD564:
- bl player_get_direction_lower_nybble
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- adds r3, r6, 0
- ldr r7, =gUnknown_085920E4
- movs r6, 0x3
-_080FD574:
- adds r0, r1, r7
- adds r1, 0x1
- ldrb r0, [r0]
- cmp r2, r0
- bne _080FD584
- adds r0, r1, 0
- ands r0, r6
- strh r0, [r4, 0xA]
-_080FD584:
- lsls r0, r1, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _080FD574
- ldr r1, =gTasks
- adds r0, r3, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80FDADC
- str r1, [r0]
- movs r0, 0
- strh r0, [r4, 0x6]
- strh r0, [r4, 0x4]
- b _080FD5C2
- .pool
-_080FD5AC:
- movs r0, 0x48
- bl PlaySE
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080FD5B8:
- ldrh r0, [r4, 0x6]
- adds r0, 0x1
- movs r1, 0x1F
- ands r0, r1
- strh r0, [r4, 0x6]
-_080FD5C2:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80FD504
-
- thumb_func_start sub_80FD5CC
-sub_80FD5CC: @ 80FD5CC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x1
- bl sub_8197434
- bl sub_80984F4
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FD5CC
-
- thumb_func_start ItemfinderCheckForHiddenItems
-@ bool8 ItemfinderCheckForHiddenItems(struct map_events *events, u8 taskId)
-ItemfinderCheckForHiddenItems: @ 80FD5F0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r1, 24
- lsrs r6, r1, 24
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0xC]
- movs r3, 0
- mov r9, r4
- ldrb r0, [r5, 0x3]
- cmp r3, r0
- bge _080FD6A4
- subs r1, 0x5
- mov r8, r1
-_080FD628:
- lsls r3, 16
- asrs r1, r3, 16
- ldr r2, [r5, 0x10]
- lsls r0, r1, 1
- adds r0, r1
- lsls r4, r0, 2
- adds r1, r4, r2
- ldrb r0, [r1, 0x5]
- adds r7, r3, 0
- cmp r0, 0x7
- bne _080FD694
- movs r2, 0xFA
- lsls r2, 1
- adds r0, r2, 0
- ldrh r1, [r1, 0xA]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _080FD694
- ldr r1, [r5, 0x10]
- adds r1, r4, r1
- ldrh r2, [r1]
- adds r2, 0x7
- mov r0, sp
- ldrh r0, [r0]
- subs r2, r0
- ldrh r0, [r1, 0x2]
- adds r0, 0x7
- mov r3, r9
- ldrh r1, [r3]
- subs r0, r1
- lsls r0, 16
- lsrs r0, 16
- lsls r2, 16
- asrs r1, r2, 16
- movs r3, 0xE0
- lsls r3, 11
- adds r2, r3
- lsrs r2, 16
- cmp r2, 0xE
- bhi _080FD694
- lsls r0, 16
- asrs r2, r0, 16
- cmp r2, r8
- blt _080FD694
- cmp r2, 0x5
- bgt _080FD694
- adds r0, r6, 0
- bl sub_80FD8E0
-_080FD694:
- movs r1, 0x80
- lsls r1, 9
- adds r0, r7, r1
- lsrs r3, r0, 16
- asrs r0, 16
- ldrb r2, [r5, 0x3]
- cmp r0, r2
- blt _080FD628
-_080FD6A4:
- adds r0, r6, 0
- bl sub_80FD7C8
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- movs r3, 0xC
- ldrsh r0, [r1, r3]
- cmp r0, 0x1
- beq _080FD6C4
- movs r0, 0
- b _080FD6C6
- .pool
-_080FD6C4:
- movs r0, 0x1
-_080FD6C6:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end ItemfinderCheckForHiddenItems
-
- thumb_func_start sub_80FD6D4
-sub_80FD6D4: @ 80FD6D4
- push {r4-r6,lr}
- lsls r1, 16
- lsrs r3, r1, 16
- lsls r2, 16
- lsrs r4, r2, 16
- ldrb r2, [r0, 0x3]
- ldr r5, [r0, 0x10]
- movs r1, 0
- cmp r1, r2
- bge _080FD728
- lsls r0, r3, 16
- asrs r6, r0, 16
- lsls r0, r4, 16
- asrs r4, r0, 16
- adds r3, r5, 0
-_080FD6F2:
- ldrb r0, [r3, 0x5]
- cmp r0, 0x7
- bne _080FD720
- ldrh r0, [r3]
- cmp r6, r0
- bne _080FD720
- ldrh r0, [r3, 0x2]
- cmp r4, r0
- bne _080FD720
- movs r1, 0xFA
- lsls r1, 1
- adds r0, r1, 0
- ldrh r3, [r3, 0xA]
- adds r0, r3
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _080FD728
- movs r0, 0x1
- b _080FD72A
-_080FD720:
- adds r3, 0xC
- adds r1, 0x1
- cmp r1, r2
- blt _080FD6F2
-_080FD728:
- movs r0, 0
-_080FD72A:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80FD6D4
-
- thumb_func_start sub_80FD730
-sub_80FD730: @ 80FD730
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- bl mapconnection_get_mapheader
- adds r3, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x2
- beq _080FD758
- cmp r0, 0x2
- bgt _080FD74E
- cmp r0, 0x1
- beq _080FD76C
- b _080FD7AC
-_080FD74E:
- cmp r0, 0x3
- beq _080FD784
- cmp r0, 0x4
- beq _080FD78E
- b _080FD7AC
-_080FD758:
- ldr r0, [r4, 0x4]
- adds r0, 0x7
- subs r0, r5, r0
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- subs r0, 0x7
- adds r0, r6
- b _080FD7A2
-_080FD76C:
- ldr r0, [r4, 0x4]
- adds r0, 0x7
- subs r0, r5, r0
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- b _080FD79E
- .pool
-_080FD784:
- ldr r0, [r3]
- ldr r0, [r0]
- subs r0, 0x7
- adds r0, r5
- b _080FD798
-_080FD78E:
- ldr r0, =gMapHeader
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0x7
- subs r0, r5, r0
-_080FD798:
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, [r4, 0x4]
-_080FD79E:
- adds r0, 0x7
- subs r0, r6, r0
-_080FD7A2:
- lsls r0, 16
- lsrs r2, r0, 16
- b _080FD7B0
- .pool
-_080FD7AC:
- movs r0, 0
- b _080FD7C2
-_080FD7B0:
- ldr r0, [r3, 0x4]
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- bl sub_80FD6D4
- lsls r0, 24
- lsrs r0, 24
-_080FD7C2:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80FD730
-
- thumb_func_start sub_80FD7C8
-sub_80FD7C8: @ 80FD7C8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, =gMapHeader
- ldr r1, [r0]
- ldr r0, [r1]
- adds r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0x8]
- ldr r0, [r1, 0x4]
- adds r0, 0x7
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0xC]
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x7
- lsls r0, 16
- lsrs r3, r0, 16
- asrs r0, 16
- mov r1, sp
- movs r2, 0
- ldrsh r1, [r1, r2]
- adds r1, 0x7
- cmp r0, r1
- bgt _080FD8CC
-_080FD816:
- mov r5, sp
- ldrh r0, [r5, 0x2]
- subs r0, 0x5
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r2, r4, 16
- asrs r1, r2, 16
- movs r6, 0x2
- ldrsh r0, [r5, r6]
- adds r0, 0x5
- lsls r3, 16
- mov r8, r3
- cmp r1, r0
- bgt _080FD8B6
- movs r0, 0x7
- str r0, [sp, 0x10]
- mov r1, r8
- asrs r1, 16
- mov r9, r1
- mov r10, r0
-_080FD83E:
- ldr r3, [sp, 0x10]
- cmp r3, r9
- bgt _080FD860
- ldr r5, [sp, 0x8]
- lsls r0, r5, 16
- asrs r0, 16
- cmp r9, r0
- bge _080FD860
- asrs r1, r2, 16
- cmp r10, r1
- bgt _080FD860
- ldr r6, [sp, 0xC]
- lsls r0, r6, 16
- asrs r0, 16
- lsls r7, r4, 16
- cmp r1, r0
- blt _080FD89E
-_080FD860:
- mov r0, r8
- asrs r5, r0, 16
- lsls r4, 16
- asrs r6, r4, 16
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_8088A8C
- adds r7, r4, 0
- cmp r0, 0
- beq _080FD89E
- adds r1, r5, 0
- adds r2, r6, 0
- bl sub_80FD730
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FD89E
- mov r0, sp
- ldrh r1, [r0]
- subs r1, r5, r1
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r0, 0x2]
- subs r2, r6, r2
- lsls r2, 16
- asrs r2, 16
- ldr r0, [sp, 0x4]
- bl sub_80FD8E0
-_080FD89E:
- movs r1, 0x80
- lsls r1, 9
- adds r0, r7, r1
- lsrs r4, r0, 16
- lsls r2, r4, 16
- asrs r1, r2, 16
- mov r3, sp
- movs r5, 0x2
- ldrsh r0, [r3, r5]
- adds r0, 0x5
- cmp r1, r0
- ble _080FD83E
-_080FD8B6:
- movs r1, 0x80
- lsls r1, 9
- add r1, r8
- lsrs r3, r1, 16
- asrs r1, 16
- mov r0, sp
- movs r6, 0
- ldrsh r0, [r0, r6]
- adds r0, 0x7
- cmp r1, r0
- ble _080FD816
-_080FD8CC:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FD7C8
-
- thumb_func_start sub_80FD8E0
-sub_80FD8E0: @ 80FD8E0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 16
- lsrs r7, r1, 16
- lsls r2, 16
- lsrs r2, 16
- mov r12, r2
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r3, r1, r0
- movs r1, 0x4
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _080FD918
- strh r7, [r3]
- mov r0, r12
- strh r0, [r3, 0x2]
- movs r0, 0x1
- strh r0, [r3, 0x4]
- b _080FD9A2
- .pool
-_080FD918:
- movs r1, 0
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bge _080FD928
- negs r0, r0
- lsls r0, 16
- lsrs r4, r0, 16
- b _080FD92A
-_080FD928:
- ldrh r4, [r3]
-_080FD92A:
- movs r1, 0x2
- ldrsh r0, [r3, r1]
- ldrh r1, [r3, 0x2]
- mov r9, r1
- cmp r0, 0
- bge _080FD93E
- negs r0, r0
- lsls r0, 16
- lsrs r2, r0, 16
- b _080FD940
-_080FD93E:
- ldrh r2, [r3, 0x2]
-_080FD940:
- lsls r1, r7, 16
- asrs r0, r1, 16
- cmp r0, 0
- bge _080FD950
- negs r0, r0
- lsls r0, 16
- lsrs r6, r0, 16
- b _080FD952
-_080FD950:
- lsrs r6, r1, 16
-_080FD952:
- mov r1, r12
- lsls r0, r1, 16
- asrs r1, r0, 16
- mov r8, r0
- cmp r1, 0
- bge _080FD964
- negs r0, r1
- lsls r0, 16
- b _080FD966
-_080FD964:
- mov r0, r8
-_080FD966:
- lsrs r5, r0, 16
- lsls r0, r4, 16
- asrs r0, 16
- lsls r1, r2, 16
- asrs r2, r1, 16
- adds r4, r0, r2
- lsls r0, r6, 16
- asrs r0, 16
- lsls r1, r5, 16
- asrs r1, 16
- adds r0, r1
- cmp r4, r0
- ble _080FD988
- strh r7, [r3]
- mov r1, r12
- strh r1, [r3, 0x2]
- b _080FD9A2
-_080FD988:
- cmp r4, r0
- bne _080FD9A2
- cmp r2, r1
- bgt _080FD99C
- cmp r2, r1
- bne _080FD9A2
- mov r1, r9
- lsls r0, r1, 16
- cmp r0, r8
- bge _080FD9A2
-_080FD99C:
- strh r7, [r3]
- mov r0, r12
- strh r0, [r3, 0x2]
-_080FD9A2:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80FD8E0
-
- thumb_func_start sub_80FD9B0
-sub_80FD9B0: @ 80FD9B0
- push {r4,r5,lr}
- lsls r0, 16
- lsls r1, 16
- lsrs r1, 16
- lsrs r2, r0, 16
- cmp r0, 0
- bne _080FD9C2
- cmp r1, 0
- beq _080FDA1C
-_080FD9C2:
- lsls r0, r2, 16
- asrs r2, r0, 16
- adds r5, r0, 0
- cmp r2, 0
- bge _080FD9D4
- negs r0, r2
- lsls r0, 16
- lsrs r4, r0, 16
- b _080FD9D6
-_080FD9D4:
- lsrs r4, r5, 16
-_080FD9D6:
- lsls r0, r1, 16
- asrs r2, r0, 16
- adds r1, r0, 0
- cmp r2, 0
- bge _080FD9E8
- negs r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- b _080FD9EA
-_080FD9E8:
- lsrs r3, r1, 16
-_080FD9EA:
- lsls r0, r4, 16
- asrs r2, r0, 16
- lsls r0, r3, 16
- asrs r0, 16
- cmp r2, r0
- ble _080FDA02
- cmp r5, 0
- bge _080FD9FE
- movs r0, 0x4
- b _080FDA1E
-_080FD9FE:
- movs r0, 0x2
- b _080FDA1E
-_080FDA02:
- cmp r2, r0
- bge _080FDA0C
- cmp r1, 0
- blt _080FDA14
- b _080FDA18
-_080FDA0C:
- cmp r2, r0
- bne _080FDA1C
- cmp r1, 0
- bge _080FDA18
-_080FDA14:
- movs r0, 0x1
- b _080FDA1E
-_080FDA18:
- movs r0, 0x3
- b _080FDA1E
-_080FDA1C:
- movs r0, 0
-_080FDA1E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80FD9B0
-
- thumb_func_start sub_80FDA24
-sub_80FDA24: @ 80FDA24
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r4, =gMapObjects
- adds r0, r4
- bl FieldObjectClearAnimIfSpecialAnimFinished
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl FieldObjectClearAnim
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl npc_sync_anim_pause_bits
- adds r0, r5, 0
- bl PlayerTurnInPlace
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDA24
-
- thumb_func_start sub_80FDA94
-sub_80FDA94: @ 80FDA94
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- bl FieldObjectCheckIfSpecialAnimFinishedOrInactive
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FDACA
- ldr r1, =gText_ItemFinderNearby
- ldr r2, =sub_80FD5CC
- adds r0, r4, 0
- bl DisplayItemMessageOnField
-_080FDACA:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDA94
-
- thumb_func_start sub_80FDADC
-sub_80FDADC: @ 80FDADC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetFieldObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gMapObjects
- adds r0, r1
- bl FieldObjectCheckIfSpecialAnimFinishedOrInactive
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080FDB1C
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080FDB50
-_080FDB1C:
- ldr r1, =gUnknown_085920E4
- movs r2, 0xA
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_80FDA24
- movs r0, 0x1
- strh r0, [r4, 0x4]
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- strh r0, [r4, 0xA]
- ldrh r0, [r4, 0x6]
- adds r0, 0x1
- strh r0, [r4, 0x6]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- bne _080FDB50
- ldr r1, =gText_ItemFinderOnTop
- ldr r2, =sub_80FD5CC
- adds r0, r5, 0
- bl DisplayItemMessageOnField
-_080FDB50:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDADC
-
- thumb_func_start ItemUseOutOfBattle_PokeblockCase
-ItemUseOutOfBattle_PokeblockCase: @ 80FDB6C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_81221AC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FDB98
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r1, [r1, 0xE]
- adds r0, r4, 0
- bl DisplayDadsAdviceCannotUseItemMessage
- b _080FDBDA
- .pool
-_080FDB98:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r5, r1, r0
- movs r1, 0xE
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080FDBC8
- ldr r0, =gUnknown_0203CE54
- ldr r1, [r0]
- ldr r0, =sub_80FDBEC
- str r0, [r1]
- adds r0, r4, 0
- bl unknown_ItemMenu_Confirm
- b _080FDBDA
- .pool
-_080FDBC8:
- ldr r0, =gFieldCallback
- ldr r1, =sub_80AF6D4
- str r1, [r0]
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- ldr r0, =sub_80FDC00
- str r0, [r5]
-_080FDBDA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_PokeblockCase
-
- thumb_func_start sub_80FDBEC
-sub_80FDBEC: @ 80FDBEC
- push {lr}
- ldr r1, =bag_menu_mail_related
- movs r0, 0
- bl OpenPokeblockCase
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDBEC
-
- thumb_func_start sub_80FDC00
-sub_80FDC00: @ 80FDC00
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080FDC24
- bl overworld_free_bg_tilemaps
- ldr r1, =c2_exit_to_overworld_2_switch
- movs r0, 0
- bl OpenPokeblockCase
- adds r0, r4, 0
- bl DestroyTask
-_080FDC24:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDC00
-
- thumb_func_start ItemUseOutOfBattle_CoinCase
-ItemUseOutOfBattle_CoinCase: @ 80FDC34
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gStringVar1
- bl GetCoins
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gText_CoinCase
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080FDC90
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r5, 0
- movs r1, 0x1
- adds r2, r4, 0
- bl DisplayItemMessage
- b _080FDC9A
- .pool
-_080FDC90:
- ldr r2, =CleanUpAfterFailingToUseRegisteredKeyItemOnField
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_080FDC9A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_CoinCase
-
- thumb_func_start ItemUseOutOfBattle_PowderJar
-ItemUseOutOfBattle_PowderJar: @ 80FDCA4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gStringVar1
- bl sub_80247BC
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- ldr r4, =gStringVar4
- ldr r1, =gText_PowderQty
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080FDCFC
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r5, 0
- movs r1, 0x1
- adds r2, r4, 0
- bl DisplayItemMessage
- b _080FDD06
- .pool
-_080FDCFC:
- ldr r2, =CleanUpAfterFailingToUseRegisteredKeyItemOnField
- adds r0, r5, 0
- adds r1, r4, 0
- bl DisplayItemMessageOnField
-_080FDD06:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_PowderJar
-
- thumb_func_start sub_80FDD10
-sub_80FDD10: @ 80FDD10
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl IsPlayerFacingPlantedBerryTree
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FDD58
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =sub_80FDD74
- str r0, [r1]
- ldr r1, =gFieldCallback
- ldr r0, =MapPostLoadHook_UseItem
- str r0, [r1]
- ldr r0, =gUnknown_0203CE54
- ldr r1, [r0]
- ldr r0, =c2_exit_to_overworld_2_switch
- str r0, [r1]
- adds r0, r4, 0
- bl unknown_ItemMenu_Confirm
- b _080FDD68
- .pool
-_080FDD58:
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemId_GetFieldFunc
- adds r1, r0, 0
- adds r0, r4, 0
- bl _call_via_r1
-_080FDD68:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDD10
-
- thumb_func_start sub_80FDD74
-sub_80FDD74: @ 80FDD74
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- movs r1, 0x1
- bl RemoveBagItem
- bl ScriptContext2_Enable
- ldr r0, =Route102_EventScript_274482
- bl ScriptContext1_SetupScript
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDD74
-
- thumb_func_start ItemUseOutOfBattle_WailmerPail
-ItemUseOutOfBattle_WailmerPail: @ 80FDDA4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_80FDE2C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FDDC8
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =sub_80FDE7C
- b _080FDDD8
- .pool
-_080FDDC8:
- bl TryToWaterBerryTree
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FDDEC
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =sub_80FDE08
-_080FDDD8:
- str r0, [r1]
- adds r0, r4, 0
- bl SetUpItemUseOnFieldCallback
- b _080FDDFE
- .pool
-_080FDDEC:
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldrb r1, [r1, 0xE]
- adds r0, r5, 0
- bl DisplayDadsAdviceCannotUseItemMessage
-_080FDDFE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_WailmerPail
-
- thumb_func_start sub_80FDE08
-sub_80FDE08: @ 80FDE08
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- ldr r0, =Route102_EventScript_2744C0
- bl ScriptContext1_SetupScript
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDE08
-
- thumb_func_start sub_80FDE2C
-sub_80FDE2C: @ 80FDE2C
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- bl PlayerGetZCoord
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- mov r0, sp
- ldrh r0, [r0]
- ldrh r1, [r4]
- bl GetFieldObjectIdByXYZ
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x10
- beq _080FDE68
- ldr r0, =gMapObjects
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x5]
- cmp r0, 0xE4
- beq _080FDE70
-_080FDE68:
- movs r0, 0
- b _080FDE72
- .pool
-_080FDE70:
- movs r0, 0x1
-_080FDE72:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80FDE2C
-
- thumb_func_start sub_80FDE7C
-sub_80FDE7C: @ 80FDE7C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- ldr r0, =BattleFrontier_OutsideEast_EventScript_242CFC
- bl ScriptContext1_SetupScript
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDE7C
-
- thumb_func_start ItemUseOutOfBattle_Medicine
-ItemUseOutOfBattle_Medicine: @ 80FDEA0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =ItemUseCB_Medicine
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_Medicine
-
- thumb_func_start ItemUseOutOfBattle_ReduceEV
-ItemUseOutOfBattle_ReduceEV: @ 80FDEBC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =sub_81B67C8
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_ReduceEV
-
- thumb_func_start ItemUseOutOfBattle_SacredAsh
-ItemUseOutOfBattle_SacredAsh: @ 80FDED8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =sub_81B79E8
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_SacredAsh
-
- thumb_func_start ItemUseOutOfBattle_PPRecovery
-ItemUseOutOfBattle_PPRecovery: @ 80FDEF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =dp05_ether
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_PPRecovery
-
- thumb_func_start ItemUseOutOfBattle_PPUp
-ItemUseOutOfBattle_PPUp: @ 80FDF10
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =dp05_pp_up
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_PPUp
-
- thumb_func_start ItemUseOutOfBattle_RareCandy
-ItemUseOutOfBattle_RareCandy: @ 80FDF2C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =dp05_rare_candy
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_RareCandy
-
- thumb_func_start ItemUseOutOfBattle_TMHM
-ItemUseOutOfBattle_TMHM: @ 80FDF48
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r1, [r0]
- movs r0, 0xA9
- lsls r0, 1
- cmp r1, r0
- bls _080FDF74
- ldr r2, =gText_BootedUpHM
- ldr r3, =sub_80FDF90
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FDF80
- .pool
-_080FDF74:
- ldr r2, =gText_BootedUpTM
- ldr r3, =sub_80FDF90
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
-_080FDF80:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_TMHM
-
- thumb_func_start sub_80FDF90
-sub_80FDF90: @ 80FDF90
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x2
- bl PlaySE
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =task08_0809AD8C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FDF90
-
- thumb_func_start task08_0809AD8C
-task08_0809AD8C: @ 80FDFBC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _080FE000
- ldr r4, =gStringVar1
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemIdToBattleMoveId
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xD
- muls r1, r0
- ldr r0, =gMoveNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- ldr r4, =gStringVar4
- ldr r1, =gText_TMHMContainedVar1
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r3, =sub_80FE024
- adds r0, r5, 0
- movs r1, 0x1
- adds r2, r4, 0
- bl DisplayItemMessage
-_080FE000:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task08_0809AD8C
-
- thumb_func_start sub_80FE024
-sub_80FE024: @ 80FE024
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_085920E8
- movs r1, 0x6
- bl bag_menu_yes_no
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE024
-
- thumb_func_start sub_80FE03C
-sub_80FE03C: @ 80FE03C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =sub_81B6DC4
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE03C
-
- thumb_func_start sub_80FE058
-sub_80FE058: @ 80FE058
- push {r4,lr}
- ldr r4, =gSpecialVar_ItemId
- ldrh r0, [r4]
- movs r1, 0x1
- bl RemoveBagItem
- ldrh r0, [r4]
- ldr r1, =gStringVar2
- bl CopyItemName
- ldr r0, =gStringVar4
- ldr r1, =gText_PlayerUsedVar2
- bl StringExpandPlaceholders
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE0AC
- ldrh r0, [r4]
- bl ItemId_GetPocket
- lsls r0, 24
- lsrs r0, 24
- bl sub_81AB9A8
- ldrh r0, [r4]
- bl ItemId_GetPocket
- lsls r0, 24
- lsrs r0, 24
- bl sub_81ABA88
- b _080FE0B4
- .pool
-_080FE0AC:
- bl sub_81C5924
- bl sub_81C59BC
-_080FE0B4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80FE058
-
- thumb_func_start ItemUseOutOfBattle_Repel
-ItemUseOutOfBattle_Repel: @ 80FE0BC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, =0x00004021
- bl VarGet
- lsls r0, 16
- cmp r0, 0
- bne _080FE0EC
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80FE124
- str r0, [r1]
- b _080FE116
- .pool
-_080FE0EC:
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE10C
- ldr r2, =gText_RepelEffectsLingered
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE116
- .pool
-_080FE10C:
- ldr r1, =gText_RepelEffectsLingered
- ldr r2, =sub_81C6714
- adds r0, r5, 0
- bl DisplayItemMessageInBattlePyramid
-_080FE116:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_Repel
-
- thumb_func_start sub_80FE124
-sub_80FE124: @ 80FE124
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r4, r1, 3
- ldr r5, =gTasks + 0x8
- adds r1, r4, r5
- ldrh r0, [r1, 0x10]
- adds r0, 0x1
- strh r0, [r1, 0x10]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _080FE156
- movs r0, 0
- strh r0, [r1, 0x10]
- movs r0, 0x2F
- bl PlaySE
- adds r0, r5, 0
- subs r0, 0x8
- adds r0, r4, r0
- ldr r1, =sub_80FE164
- str r1, [r0]
-_080FE156:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE124
-
- thumb_func_start sub_80FE164
-sub_80FE164: @ 80FE164
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _080FE1C2
- ldr r4, =0x00004021
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemId_GetHoldEffectParam
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl VarSet
- bl sub_80FE058
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE1B8
- ldr r2, =gStringVar4
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r5, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE1C2
- .pool
-_080FE1B8:
- ldr r1, =gStringVar4
- ldr r2, =sub_81C6714
- adds r0, r6, 0
- bl DisplayItemMessageInBattlePyramid
-_080FE1C2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE164
-
- thumb_func_start sub_80FE1D0
-sub_80FE1D0: @ 80FE1D0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _080FE226
- movs r0, 0x75
- bl PlaySE
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE21C
- ldr r2, =gStringVar4
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE226
- .pool
-_080FE21C:
- ldr r1, =gStringVar4
- ldr r2, =sub_81C6714
- adds r0, r5, 0
- bl DisplayItemMessageInBattlePyramid
-_080FE226:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE1D0
-
- thumb_func_start ItemUseOutOfBattle_BlackWhiteFlute
-ItemUseOutOfBattle_BlackWhiteFlute: @ 80FE234
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, =gSpecialVar_ItemId
- ldrh r0, [r4]
- ldr r1, =gStringVar2
- bl CopyItemName
- ldrh r0, [r4]
- cmp r0, 0x2B
- bne _080FE278
- ldr r0, =0x000008ad
- bl FlagSet
- ldr r0, =0x000008ae
- bl FlagClear
- ldr r0, =gStringVar4
- ldr r1, =gText_UsedVar2WildLured
- bl StringExpandPlaceholders
- b _080FE28C
- .pool
-_080FE278:
- ldr r0, =0x000008ae
- bl FlagSet
- ldr r0, =0x000008ad
- bl FlagClear
- ldr r0, =gStringVar4
- ldr r1, =gText_UsedVar2WildRepelled
- bl StringExpandPlaceholders
-_080FE28C:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x18]
- ldr r1, =sub_80FE1D0
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_BlackWhiteFlute
-
- thumb_func_start task08_080A1C44
-task08_080A1C44: @ 80FE2BC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl player_avatar_init_params_reset
- bl sub_80B7CC8
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task08_080A1C44
-
- thumb_func_start re_escape_rope
-re_escape_rope: @ 80FE2D8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl flagmods_08054D70
- bl sub_80FE058
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0
- strh r1, [r0, 0x8]
- ldr r1, =gStringVar4
- ldr r2, =task08_080A1C44
- adds r0, r4, 0
- bl DisplayItemMessageOnField
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end re_escape_rope
-
- thumb_func_start sub_80FE314
-sub_80FE314: @ 80FE314
- push {lr}
- ldr r0, =gMapHeader
- ldrb r1, [r0, 0x1A]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080FE32C
- movs r0, 0
- b _080FE32E
- .pool
-_080FE32C:
- movs r0, 0x1
-_080FE32E:
- pop {r1}
- bx r1
- thumb_func_end sub_80FE314
-
- thumb_func_start ItemUseOutOfBattle_EscapeRope
-ItemUseOutOfBattle_EscapeRope: @ 80FE334
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80FE314
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080FE35C
- ldr r1, =gUnknown_0203A0F4
- ldr r0, =re_escape_rope
- str r0, [r1]
- adds r0, r4, 0
- bl SetUpItemUseOnFieldCallback
- b _080FE36E
- .pool
-_080FE35C:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r1, [r1, 0xE]
- adds r0, r4, 0
- bl DisplayDadsAdviceCannotUseItemMessage
-_080FE36E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_EscapeRope
-
- thumb_func_start ItemUseOutOfBattle_EvolutionStone
-ItemUseOutOfBattle_EvolutionStone: @ 80FE378
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =sub_81B7C74
- str r1, [r2]
- bl SetUpItemUseCallback
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_EvolutionStone
-
- thumb_func_start ItemUseInBattle_PokeBall
-ItemUseInBattle_PokeBall: @ 80FE394
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl IsPlayerPartyAndPokemonStorageFull
- lsls r0, 24
- cmp r0, 0
- bne _080FE3D0
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- movs r1, 0x1
- bl RemoveBagItem
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE3C8
- adds r0, r4, 0
- bl unknown_ItemMenu_Confirm
- b _080FE3FA
- .pool
-_080FE3C8:
- adds r0, r4, 0
- bl sub_81C5B14
- b _080FE3FA
-_080FE3D0:
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE3F0
- ldr r2, =gText_BoxFull
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE3FA
- .pool
-_080FE3F0:
- ldr r1, =gText_BoxFull
- ldr r2, =sub_81C6714
- adds r0, r5, 0
- bl DisplayItemMessageInBattlePyramid
-_080FE3FA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseInBattle_PokeBall
-
- thumb_func_start sub_80FE408
-sub_80FE408: @ 80FE408
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- beq _080FE43A
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE434
- adds r0, r4, 0
- bl unknown_ItemMenu_Confirm
- b _080FE43A
- .pool
-_080FE434:
- adds r0, r5, 0
- bl sub_81C5B14
-_080FE43A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80FE408
-
- thumb_func_start sub_80FE440
-sub_80FE440: @ 80FE440
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- ldr r0, =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _080FE4AC
- movs r0, 0x1
- bl PlaySE
- ldr r4, =gSpecialVar_ItemId
- ldrh r0, [r4]
- movs r1, 0x1
- bl RemoveBagItem
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE49C
- ldrh r0, [r4]
- bl sub_806CF78
- adds r2, r0, 0
- ldr r3, =sub_80FE408
- adds r0, r5, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE4AC
- .pool
-_080FE49C:
- ldrh r0, [r4]
- bl sub_806CF78
- adds r1, r0, 0
- ldr r2, =sub_80FE408
- adds r0, r6, 0
- bl DisplayItemMessageInBattlePyramid
-_080FE4AC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE440
-
- thumb_func_start ItemUseInBattle_StatIncrease
-ItemUseInBattle_StatIncrease: @ 80FE4B8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gBattlePartyID
- ldr r0, =gBankInMenu
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r2, [r0]
- movs r0, 0x64
- muls r0, r2
- ldr r1, =gPlayerParty
- adds r0, r1
- ldr r1, =gSpecialVar_ItemId
- ldrh r1, [r1]
- lsls r2, 24
- lsrs r2, 24
- movs r3, 0
- bl ExecuteTableBasedItemEffect_
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _080FE52C
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE518
- ldr r2, =gText_WontHaveEffect
- ldr r3, =bag_menu_inits_lists_menu
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE53C
- .pool
-_080FE518:
- ldr r1, =gText_WontHaveEffect
- ldr r2, =sub_81C6714
- adds r0, r4, 0
- bl DisplayItemMessageInBattlePyramid
- b _080FE53C
- .pool
-_080FE52C:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80FE440
- str r0, [r1]
- strh r2, [r1, 0x18]
-_080FE53C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseInBattle_StatIncrease
-
- thumb_func_start sub_80FE54C
-sub_80FE54C: @ 80FE54C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE574
- ldr r0, =gUnknown_0203CE54
- ldr r1, [r0]
- ldr r0, =sub_81B89F0
- str r0, [r1]
- adds r0, r4, 0
- bl unknown_ItemMenu_Confirm
- b _080FE582
- .pool
-_080FE574:
- ldr r0, =gUnknown_0203CF2C
- ldr r1, [r0]
- ldr r0, =sub_81B89F0
- str r0, [r1]
- adds r0, r4, 0
- bl sub_81C5B14
-_080FE582:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE54C
-
- thumb_func_start ItemUseInBattle_Medicine
-ItemUseInBattle_Medicine: @ 80FE590
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =ItemUseCB_Medicine
- str r1, [r2]
- bl sub_80FE54C
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseInBattle_Medicine
-
- thumb_func_start sub_80FE5AC
-sub_80FE5AC: @ 80FE5AC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =sub_81B79E8
- str r1, [r2]
- bl sub_80FE54C
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80FE5AC
-
- thumb_func_start ItemUseInBattle_PPRecovery
-ItemUseInBattle_PPRecovery: @ 80FE5C8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gUnknown_03006328
- ldr r1, =dp05_ether
- str r1, [r2]
- bl sub_80FE54C
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseInBattle_PPRecovery
-
- thumb_func_start ItemUseInBattle_Escape
-ItemUseInBattle_Escape: @ 80FE5E4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- bne _080FE634
- bl sub_80FE058
- bl InBattlePyramid
- lsls r0, 24
- cmp r0, 0
- bne _080FE620
- ldr r2, =gStringVar4
- ldr r3, =unknown_ItemMenu_Confirm
- adds r0, r4, 0
- movs r1, 0x1
- bl DisplayItemMessage
- b _080FE646
- .pool
-_080FE620:
- ldr r1, =gStringVar4
- ldr r2, =sub_81C5B14
- adds r0, r4, 0
- bl DisplayItemMessageInBattlePyramid
- b _080FE646
- .pool
-_080FE634:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrb r1, [r1, 0xE]
- adds r0, r4, 0
- bl DisplayDadsAdviceCannotUseItemMessage
-_080FE646:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseInBattle_Escape
-
- thumb_func_start ItemUseOutOfBattle_EnigmaBerry
-ItemUseOutOfBattle_EnigmaBerry: @ 80FE650
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x14
- bls _080FE66A
- b _080FE75C
-_080FE66A:
- lsls r0, 2
- ldr r1, =_080FE67C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080FE67C:
- .4byte _080FE708
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE75C
- .4byte _080FE75C
- .4byte _080FE6EC
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE6D0
- .4byte _080FE75C
- .4byte _080FE724
- .4byte _080FE724
- .4byte _080FE740
-_080FE6D0:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_Medicine
- b _080FE770
- .pool
-_080FE6EC:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_SacredAsh
- b _080FE770
- .pool
-_080FE708:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_RareCandy
- b _080FE770
- .pool
-_080FE724:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_PPUp
- b _080FE770
- .pool
-_080FE740:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x1
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_PPRecovery
- b _080FE770
- .pool
-_080FE75C:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r0, 0x4
- strh r0, [r1, 0x10]
- adds r0, r4, 0
- bl ItemUseOutOfBattle_CannotUse
-_080FE770:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_EnigmaBerry
-
- thumb_func_start ItemUseInBattle_EnigmaBerry
-ItemUseInBattle_EnigmaBerry: @ 80FE77C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x15
- bhi _080FE814
- lsls r0, 2
- ldr r1, =_080FE7A4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080FE7A4:
- .4byte _080FE7FC
- .4byte _080FE814
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE804
- .4byte _080FE814
- .4byte _080FE804
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE814
- .4byte _080FE80C
-_080FE7FC:
- adds r0, r4, 0
- bl ItemUseInBattle_StatIncrease
- b _080FE81A
-_080FE804:
- adds r0, r4, 0
- bl ItemUseInBattle_Medicine
- b _080FE81A
-_080FE80C:
- adds r0, r4, 0
- bl ItemUseInBattle_PPRecovery
- b _080FE81A
-_080FE814:
- adds r0, r4, 0
- bl ItemUseOutOfBattle_CannotUse
-_080FE81A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end ItemUseInBattle_EnigmaBerry
-
- thumb_func_start ItemUseOutOfBattle_CannotUse
-ItemUseOutOfBattle_CannotUse: @ 80FE820
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r1, [r1, 0xE]
- bl DisplayDadsAdviceCannotUseItemMessage
- pop {r0}
- bx r0
- .pool
- thumb_func_end ItemUseOutOfBattle_CannotUse
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/link.s b/asm/link.s
index 1ad160340..fa780fa1c 100644
--- a/asm/link.s
+++ b/asm/link.s
@@ -15,7 +15,7 @@ sub_80093CC: @ 80093CC
cmp r0, r1
beq _080093F4
bl sub_800B4A4
- bl sub_80097E8
+ bl CloseLink
bl RestoreSerialTimer3IntrHandlers
movs r0, 0
b _080093FE
@@ -29,15 +29,15 @@ _080093FE:
bx r1
thumb_func_end sub_80093CC
- thumb_func_start sub_8009404
-sub_8009404: @ 8009404
+ thumb_func_start Task_DestroySelf
+Task_DestroySelf: @ 8009404
push {lr}
lsls r0, 24
lsrs r0, 24
bl DestroyTask
pop {r0}
bx r0
- thumb_func_end sub_8009404
+ thumb_func_end Task_DestroySelf
thumb_func_start sub_8009414
sub_8009414: @ 8009414
@@ -210,7 +210,7 @@ sub_8009570: @ 8009570
ldr r2, =0x00001111
adds r0, r2, 0
strh r0, [r1]
- bl sub_8009734
+ bl OpenLink
ldr r0, =gMain
ldrh r0, [r0, 0x24]
bl SeedRng
@@ -236,7 +236,7 @@ _080095A0:
lsls r1, 5
movs r0, 0
bl SetGpuReg
- ldr r0, =sub_8009404
+ ldr r0, =Task_DestroySelf
movs r1, 0
bl CreateTask
bl RunTasks
@@ -384,8 +384,8 @@ _08009726:
.pool
thumb_func_end task02_080097CC
- thumb_func_start sub_8009734
-sub_8009734: @ 8009734
+ thumb_func_start OpenLink
+OpenLink: @ 8009734
push {r4-r6,lr}
ldr r0, =gLinkVSyncDisabled
ldrb r4, [r0]
@@ -443,10 +443,10 @@ _080097BE:
pop {r0}
bx r0
.pool
- thumb_func_end sub_8009734
+ thumb_func_end OpenLink
- thumb_func_start sub_80097E8
-sub_80097E8: @ 80097E8
+ thumb_func_start CloseLink
+CloseLink: @ 80097E8
push {r4,lr}
ldr r0, =gReceivedRemoteLinkPlayers
movs r4, 0
@@ -464,7 +464,7 @@ _080097FC:
pop {r0}
bx r0
.pool
- thumb_func_end sub_80097E8
+ thumb_func_end CloseLink
thumb_func_start sub_8009818
sub_8009818: @ 8009818
@@ -698,7 +698,7 @@ _080099FC:
bls _080099FC
ldrh r0, [r4]
strh r0, [r5]
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r0, [r0]
movs r1, 0x40
ands r0, r1
@@ -717,7 +717,7 @@ _080099FC:
_08009A34:
bl sub_800AEB4
_08009A38:
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldrh r0, [r0]
_08009A3C:
pop {r4,r5}
@@ -745,7 +745,7 @@ _08009A70:
adds r5, r0
adds r4, 0x1
_08009A78:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r4, r0
@@ -1378,7 +1378,7 @@ GetLinkPlayerCount: @ 8009FCC
ldrb r0, [r0]
cmp r0, 0
bne _08009FEC
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r0, [r0]
movs r1, 0x1C
ands r0, r1
@@ -1514,7 +1514,7 @@ sub_800A0AC: @ 800A0AC
str r1, [r0]
ldr r0, =gUnknown_020229C8
strh r1, [r0]
- bl sub_8009734
+ bl OpenLink
pop {r0}
bx r0
.pool
@@ -1532,7 +1532,7 @@ sub_800A0C8: @ 800A0C8
beq _0800A0DA
b _0800A214
_0800A0DA:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r5, r0
@@ -1552,7 +1552,7 @@ _0800A0FC:
bne _0800A10E
ldr r0, =gUnknown_0300306C
strb r4, [r0]
- bl sub_80097E8
+ bl CloseLink
_0800A10E:
movs r6, 0
ldr r4, =gLinkPlayers
@@ -2211,7 +2211,7 @@ _0800A616:
thumb_func_start sub_800A620
sub_800A620: @ 800A620
push {lr}
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r1, [r0]
movs r0, 0x20
ands r0, r1
@@ -2499,7 +2499,7 @@ _0800A81C:
thumb_func_start sub_800A824
sub_800A824: @ 800A824
push {lr}
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r0, [r0]
movs r1, 0x20
ands r0, r1
@@ -2534,7 +2534,7 @@ task00_link_test: @ 800A850
movs r2, 0x1
movs r3, 0x2
bl sub_800A6E8
- ldr r4, =gUnknown_030030E0
+ ldr r4, =gLinkStatus
ldr r0, [r4]
movs r1, 0xF
movs r2, 0x1
@@ -2606,7 +2606,7 @@ task00_link_test: @ 800A850
movs r2, 0x6
movs r3, 0x1
bl sub_800A6E8
- bl sub_800B320
+ bl IsLinkConnectionEstablished
lsls r0, 24
lsrs r0, 24
movs r1, 0x19
@@ -2807,7 +2807,7 @@ _0800AAB4:
ldrb r0, [r0]
cmp r3, r0
bne _0800AAE4
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
mov r1, r9
@@ -2887,7 +2887,7 @@ _0800AB5A:
ldr r1, =gUnknown_0300306C
movs r0, 0x1
strb r0, [r1]
- bl sub_80097E8
+ bl CloseLink
ldr r0, =c2_800ACD4
bl SetMainCallback2
_0800AB6A:
@@ -2918,25 +2918,25 @@ sub_800AB98: @ 800AB98
.pool
thumb_func_end sub_800AB98
- thumb_func_start sub_800ABAC
-sub_800ABAC: @ 800ABAC
- ldr r0, =gUnknown_030030E0
+ thumb_func_start GetLinkPlayerCount_2
+GetLinkPlayerCount_2: @ 800ABAC
+ ldr r0, =gLinkStatus
ldr r0, [r0]
movs r1, 0x1C
ands r0, r1
lsrs r0, 2
bx lr
.pool
- thumb_func_end sub_800ABAC
+ thumb_func_end GetLinkPlayerCount_2
- thumb_func_start sub_800ABBC
-sub_800ABBC: @ 800ABBC
+ thumb_func_start IsLinkMaster
+IsLinkMaster: @ 800ABBC
push {lr}
ldr r0, =gLinkVSyncDisabled
ldrb r0, [r0]
cmp r0, 0
bne _0800ABDC
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r0, [r0]
lsrs r0, 5
movs r1, 0x1
@@ -2950,7 +2950,7 @@ _0800ABDC:
_0800ABE4:
pop {r1}
bx r1
- thumb_func_end sub_800ABBC
+ thumb_func_end IsLinkMaster
thumb_func_start sub_800ABE8
sub_800ABE8: @ 800ABE8
@@ -3074,7 +3074,7 @@ _0800ACD0:
ldr r0, =gUnknown_03002748
movs r4, 0x1
strb r4, [r0]
- bl sub_80097E8
+ bl CloseLink
ldr r1, =gUnknown_03003140
movs r0, 0
str r0, [r1]
@@ -3178,7 +3178,7 @@ _0800ADB6:
ldr r0, =gUnknown_03002748
movs r4, 0x1
strb r4, [r0]
- bl sub_80097E8
+ bl CloseLink
ldr r1, =gUnknown_03003140
movs r0, 0
str r0, [r1]
@@ -3290,7 +3290,7 @@ sub_800AEB4: @ 800AEB4
ldrb r0, [r0]
cmp r0, 0
beq _0800AEF4
- ldr r0, =gUnknown_030030E0
+ ldr r0, =gLinkStatus
ldr r2, [r0]
movs r0, 0xFE
lsls r0, 11
@@ -3315,7 +3315,7 @@ _0800AEEA:
ldr r1, =gUnknown_0300306C
movs r0, 0x1
strb r0, [r1]
- bl sub_80097E8
+ bl CloseLink
_0800AEF4:
pop {r0}
bx r0
@@ -3426,7 +3426,7 @@ _0800AF8C:
ldr r1, =gSoftResetDisabled
movs r0, 0
strb r0, [r1]
- ldr r0, =sub_8009404
+ ldr r0, =Task_DestroySelf
movs r1, 0
bl CreateTask
bl StopMapMusic
@@ -3740,16 +3740,16 @@ _0800B314:
.pool
thumb_func_end sub_800B2F8
- thumb_func_start sub_800B320
-sub_800B320: @ 800B320
- ldr r0, =gUnknown_030030E0
+ thumb_func_start IsLinkConnectionEstablished
+IsLinkConnectionEstablished: @ 800B320
+ ldr r0, =gLinkStatus
ldr r0, [r0]
lsrs r0, 6
movs r1, 0x1
ands r0, r1
bx lr
.pool
- thumb_func_end sub_800B320
+ thumb_func_end IsLinkConnectionEstablished
thumb_func_start sub_800B330
sub_800B330: @ 800B330
@@ -3864,7 +3864,7 @@ HandleLinkConnection: @ 800B40C
ldr r1, =gSendCmd
ldr r2, =gRecvCmds
bl sub_800B638
- ldr r4, =gUnknown_030030E0
+ ldr r4, =gLinkStatus
str r0, [r4]
ldr r0, =gUnknown_030022EC
bl sub_80099E0
@@ -15025,7 +15025,7 @@ _08010E20:
ldrb r1, [r0]
movs r1, 0x2
strb r1, [r0]
- bl sub_80097E8
+ bl CloseLink
b _08010E8E
.pool
_08010E5C:
@@ -16613,7 +16613,7 @@ sub_8011AFC: @ 8011AFC
adds r0, r2, 0
strh r0, [r1]
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
ldr r0, =gMain
ldrh r0, [r0, 0x24]
bl SeedRng
@@ -18142,7 +18142,7 @@ _08012848:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
ldrb r1, [r4]
movs r0, 0xF
ands r0, r1
@@ -19650,7 +19650,7 @@ _08013590:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C5C
movs r0, 0x70
bl AllocZeroed
@@ -20398,7 +20398,7 @@ _08013CD0:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C5C
movs r0, 0x1
bl sub_80111B0
@@ -21684,7 +21684,7 @@ _080148CC:
bne _080149B2
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
movs r0, 0x2
strh r0, [r7]
b _080149B2
@@ -21897,7 +21897,7 @@ _08014AB0:
movs r1, 0
bl sub_8010FA0
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
movs r0, 0x2
bl sub_8011C10
movs r0, 0x1
@@ -22435,7 +22435,7 @@ _08014FA4:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C5C
movs r0, 0x70
bl AllocZeroed
@@ -22823,7 +22823,7 @@ _08015358:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C5C
movs r0, 0x70
bl AllocZeroed
@@ -23373,7 +23373,7 @@ _08015878:
ldrh r2, [r2, 0xC]
bl sub_8010FCC
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C84
ldr r0, [r6, 0x8]
movs r1, 0x1
@@ -25223,7 +25223,7 @@ _080169BE:
movs r2, 0
bl sub_8010F84
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011C84
movs r0, 0x1
bl sub_80111B0
@@ -31098,7 +31098,7 @@ _080198FE:
b _08019922
.pool
_0801990C:
- bl sub_80097E8
+ bl CloseLink
ldr r0, [r5, 0x10]
bl Free
adds r0, r4, 0
@@ -39837,7 +39837,7 @@ sub_801DF20: @ 801DF20
bl TransferPlttBuffer
bl LoadOam
bl ProcessSpriteCopyRequests
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
thumb_func_end sub_801DF20
@@ -42568,7 +42568,7 @@ sub_801F544: @ 801F544
str r0, [r4]
_0801F55A:
bl FreeAllWindowBuffers
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
pop {r4}
@@ -44875,13 +44875,13 @@ sub_8020770: @ 8020770
strh r1, [r0, 0x20]
str r1, [sp, 0xC]
add r0, sp, 0xC
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
ldr r2, =0x010003c0
bl CpuFastSet
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
add sp, 0x10
pop {r0}
bx r0
@@ -44896,12 +44896,12 @@ sub_80207C0: @ 80207C0
lsrs r0, 16
mov r1, sp
strh r0, [r1]
- ldr r5, =gUnknown_02039B28
+ ldr r5, =gScanlineEffect
ldrb r0, [r5, 0x14]
lsls r1, r0, 4
subs r1, r0
lsls r1, 7
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
adds r1, r4
ldr r2, =0x01000090
mov r0, sp
@@ -44939,7 +44939,7 @@ sub_8020818: @ 8020818
lsrs r4, 16
mov r0, sp
strh r4, [r0]
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
ldr r0, =0x01000090
mov r9, r0
mov r0, sp
diff --git a/asm/main_menu.s b/asm/main_menu.s
index 9d6cba40f..08e0c3103 100644
--- a/asm/main_menu.s
+++ b/asm/main_menu.s
@@ -1495,7 +1495,7 @@ _08030478:
b _0803048A
.pool
_08030480:
- ldr r0, =sub_8178974
+ ldr r0, =CB2_InitMysteryEventMenu
b _0803048A
.pool
_08030488:
diff --git a/asm/mystery_event_menu.s b/asm/mystery_event_menu.s
deleted file mode 100644
index 34b8cadd6..000000000
--- a/asm/mystery_event_menu.s
+++ /dev/null
@@ -1,669 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8178944
-sub_8178944: @ 8178944
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8178944
-
- thumb_func_start sub_8178958
-sub_8178958: @ 8178958
- push {lr}
- movs r2, 0
- ldr r1, =gLinkPlayers
- ldrh r0, [r1, 0x1A]
- ldrh r1, [r1, 0x36]
- cmp r0, r1
- bne _08178968
- movs r2, 0x1
-_08178968:
- adds r0, r2, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8178958
-
- thumb_func_start sub_8178974
-sub_8178974: @ 8178974
- push {r4,lr}
- sub sp, 0x8
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- bl ResetTasks
- ldr r0, =sub_8178944
- bl SetVBlankCallback
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_085EFD64
- movs r0, 0
- movs r2, 0x1
- bl InitBgsFromTemplates
- ldr r0, =gUnknown_085EFD68
- bl InitWindows
- lsls r0, 16
- cmp r0, 0
- beq _08178A22
- bl DeactivateAllTextPrinters
- movs r4, 0
-_081789AC:
- lsls r0, r4, 24
- lsrs r0, 24
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r4, 0x1
- cmp r4, 0x1
- ble _081789AC
- movs r0, 0x1E
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- movs r0, 0
- movs r1, 0x1
- movs r2, 0xD0
- bl sub_809882C
- movs r0, 0xE0
- bl sub_81978B0
- movs r1, 0xA0
- lsls r1, 1
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- ldr r0, =sub_8009404
- movs r1, 0
- bl CreateTask
- bl StopMapMusic
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTextPrinters
- bl UpdatePaletteFade
- movs r0, 0
- movs r1, 0
- movs r2, 0x2
- bl FillPalette
- ldr r0, =sub_8178A78
- bl SetMainCallback2
-_08178A22:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8178974
-
- thumb_func_start sub_8178A40
-sub_8178A40: @ 8178A40
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- movs r5, 0x1
- cmp r4, 0
- bne _08178A54
- ldr r1, =gText_EventSafelyLoaded
- bl StringCopy
- movs r5, 0
-_08178A54:
- cmp r4, 0x2
- bne _08178A5A
- movs r5, 0
-_08178A5A:
- cmp r4, 0x1
- bne _08178A66
- ldr r1, =gText_LoadErrorEndingSession
- adds r0, r6, 0
- bl StringCopy
-_08178A66:
- adds r0, r5, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_8178A40
-
- thumb_func_start sub_8178A78
-sub_8178A78: @ 8178A78
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r4, r1, 0
- cmp r0, 0x10
- bls _08178A8E
- b _08178E58
-_08178A8E:
- lsls r0, 2
- ldr r1, =_08178AA0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08178AA0:
- .4byte _08178AE4
- .4byte _08178B12
- .4byte _08178B48
- .4byte _08178B80
- .4byte _08178BCC
- .4byte _08178BDC
- .4byte _08178C54
- .4byte _08178D28
- .4byte _08178D38
- .4byte _08178D58
- .4byte _08178D60
- .4byte _08178D74
- .4byte _08178DBC
- .4byte _08178DE0
- .4byte _08178E0C
- .4byte _08178E24
- .4byte _08178E48
-_08178AE4:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- movs r3, 0xD
- bl SetWindowBorderStyle
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- b _08178E30
-_08178B12:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08178B20
- b _08178E58
-_08178B20:
- ldr r1, =gText_LinkStandby2
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08178E3C
- .pool
-_08178B48:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- beq _08178B56
- b _08178E58
-_08178B56:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r1, =gLinkType
- ldr r2, =0x00005501
- adds r0, r2, 0
- strh r0, [r1]
- bl sub_8009734
- b _08178E58
- .pool
-_08178B80:
- ldr r0, =gUnknown_030030E0
- ldr r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _08178B8E
- b _08178D00
-_08178B8E:
- movs r0, 0x1C
- ands r1, r0
- cmp r1, 0x4
- bhi _08178B98
- b _08178D00
-_08178B98:
- movs r0, 0x15
- bl PlaySE
- ldr r1, =gText_PressAToLoadEvent
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08178D00
- .pool
-_08178BCC:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- beq _08178BDA
- b _08178E58
-_08178BDA:
- b _08178E34
-_08178BDC:
- bl sub_800ABAC
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bne _08178CD0
- ldr r4, =gMain
- ldrh r1, [r4, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08178C38
- movs r0, 0x5
- bl PlaySE
- bl sub_800A620
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0x1
- movs r3, 0xD
- bl SetWindowBorderStyle
- ldr r1, =gText_LoadingEvent
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0x1
- movs r1, 0x3
- bl CopyWindowToVram
- movs r2, 0x87
- lsls r2, 3
- adds r1, r4, r2
- b _08178E3C
- .pool
-_08178C38:
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _08178C42
- b _08178E58
-_08178C42:
- movs r0, 0x5
- bl PlaySE
- bl sub_80097E8
- movs r0, 0x87
- lsls r0, 3
- adds r1, r4, r0
- b _08178D1E
-_08178C54:
- bl sub_800B320
- lsls r0, 24
- cmp r0, 0
- beq _08178D00
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08178C68
- b _08178E58
-_08178C68:
- movs r0, 0x2
- movs r1, 0x2
- bl sub_800A0C8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _08178CAC
- bl sub_800AC34
- ldr r4, =gStringVar4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8178A40
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r0, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- b _08178CF2
- .pool
-_08178CAC:
- bl sub_8178958
- lsls r0, 24
- cmp r0, 0
- beq _08178CCC
- ldr r1, =gText_DontRemoveCableTurnOff
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- b _08178E34
- .pool
-_08178CCC:
- bl sub_80097E8
-_08178CD0:
- ldr r4, =gStringVar4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8178A40
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
-_08178CF2:
- movs r1, 0xD
- strb r1, [r0]
- b _08178E58
- .pool
-_08178D00:
- ldr r4, =gMain
- ldrh r1, [r4, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08178D0E
- b _08178E58
-_08178D0E:
- movs r0, 0x5
- bl PlaySE
- bl sub_80097E8
- movs r2, 0x87
- lsls r2, 3
- adds r1, r4, r2
-_08178D1E:
- movs r0, 0xF
- strb r0, [r1]
- b _08178E58
- .pool
-_08178D28:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- cmp r0, 0
- beq _08178D36
- b _08178E58
-_08178D36:
- b _08178E34
-_08178D38:
- bl GetBlockReceivedStatus
- lsls r0, 24
- cmp r0, 0
- bne _08178D44
- b _08178E58
-_08178D44:
- bl ResetBlockReceivedFlags
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08178E3C
- .pool
-_08178D58:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r4, r0
- b _08178E3C
-_08178D60:
- bl sub_800AC34
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08178E3C
- .pool
-_08178D74:
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r6, [r0]
- cmp r6, 0
- bne _08178E58
- ldr r5, =0x0201c000
- adds r0, r5, 0
- bl RunMysteryEventScript
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- str r6, [sp, 0x4]
- ldr r2, =0x050001f5
- add r0, sp, 0x4
- adds r1, r5, 0
- bl CpuSet
- ldr r0, =gStringVar4
- adds r1, r4, 0
- bl sub_8178A40
- lsls r0, 24
- cmp r0, 0
- bne _08178E34
- movs r0, 0
- bl TrySavingData
- b _08178E34
- .pool
-_08178DBC:
- ldr r1, =gStringVar4
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08178E3C
- .pool
-_08178DE0:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- bne _08178E58
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- ldr r0, =gUnknown_0203BCF8
- strb r2, [r0]
- b _08178E58
- .pool
-_08178E0C:
- ldrh r1, [r4, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08178E58
- movs r0, 0x5
- bl PlaySE
- movs r2, 0x87
- lsls r2, 3
- adds r1, r4, r2
- b _08178E3C
-_08178E24:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
-_08178E30:
- bl BeginNormalPaletteFade
-_08178E34:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_08178E3C:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08178E58
- .pool
-_08178E48:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08178E58
- bl DoSoftReset
-_08178E58:
- ldr r0, =gUnknown_030030E0
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08178E98
- bl sub_800ABBC
- lsls r0, 24
- cmp r0, 0
- bne _08178E98
- bl sub_80097E8
- ldr r4, =gStringVar4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8178A40
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x2
- bl sub_8178EC4
- ldr r0, =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0xD
- strb r1, [r0]
-_08178E98:
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl RunTextPrinters
- bl UpdatePaletteFade
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8178A78
-
- thumb_func_start sub_8178EC4
-sub_8178EC4: @ 8178EC4
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x1C
- adds r5, r0, 0
- mov r10, r1
- adds r6, r2, 0
- ldr r4, [sp, 0x38]
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- mov r9, r0
- movs r1, 0x1
- mov r8, r1
- add r0, sp, 0x14
- mov r1, r8
- strb r1, [r0]
- adds r1, r0, 0
- movs r0, 0x2
- strb r0, [r1, 0x1]
- movs r0, 0x3
- strb r0, [r1, 0x2]
- adds r0, r1, 0
- ldrb r0, [r0]
- lsls r1, r0, 4
- orrs r1, r0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- str r3, [sp, 0x18]
- bl FillWindowPixelBuffer
- mov r0, r9
- str r0, [sp]
- mov r1, r8
- str r1, [sp, 0x4]
- add r0, sp, 0x14
- str r0, [sp, 0x8]
- lsls r4, 24
- asrs r4, 24
- str r4, [sp, 0xC]
- mov r1, r10
- str r1, [sp, 0x10]
- adds r0, r5, 0
- movs r1, 0x1
- adds r2, r6, 0
- ldr r3, [sp, 0x18]
- bl AddTextPrinterParameterized2
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8178EC4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/option_menu.s b/asm/option_menu.s
deleted file mode 100644
index c3fc4d140..000000000
--- a/asm/option_menu.s
+++ /dev/null
@@ -1,10 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/overworld.s b/asm/overworld.s
index 2858fb6d3..492fcd2cb 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -1383,7 +1383,7 @@ _080850C8:
adds r1, r5, 0
bl TryUpdateRandomTrainerRematches
bl DoTimeBasedEvents
- bl sub_80AEDBC
+ bl SetSav1WeatherFromCurrMapHeader
bl sub_8085B2C
bl update_sav1_flash_used_on_map
bl Overworld_ClearSavedMusic
@@ -1483,7 +1483,7 @@ _080851A2:
beq _080851EE
bl DoTimeBasedEvents
_080851EE:
- bl sub_80AEDBC
+ bl SetSav1WeatherFromCurrMapHeader
bl sub_8085B2C
cmp r5, 0
beq _08085200
@@ -3584,7 +3584,7 @@ sub_808631C: @ 808631C
lsrs r0, 24
cmp r0, 0x1
bne _0808632E
- bl sub_80097E8
+ bl CloseLink
_0808632E:
ldr r0, =gLinkVSyncDisabled
ldrb r0, [r0]
@@ -3637,7 +3637,7 @@ VBlankCB_Field: @ 8086390
push {lr}
bl LoadOam
bl ProcessSpriteCopyRequests
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
bl FieldUpdateBgTilemapScroll
bl TransferPlttBuffer
bl TransferTilesetAnimsBuffer
@@ -3657,7 +3657,7 @@ sub_80863B0: @ 80863B0
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
b _080863F0
.pool
_080863D4:
@@ -3671,7 +3671,7 @@ _080863D4:
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
_080863F0:
pop {r0}
bx r0
@@ -4294,7 +4294,7 @@ sub_8086988: @ 8086988
bl ResetTasks
bl ResetSpriteData
bl ResetPaletteFade
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
bl dp13_810BB8C
bl ResetCameraUpdateInfo
bl InstallCameraPanAheadCallback
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 429b629ea..0dc03a1e2 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -17171,7 +17171,7 @@ sub_81B9404: @ 81B9404
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =sub_81B9424
movs r1, 0xA
bl CreateTask
@@ -17247,7 +17247,7 @@ sub_81B94B0: @ 81B94B0
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =sub_81B94D0
movs r1, 0xA
bl CreateTask
@@ -17297,7 +17297,7 @@ sub_81B951C: @ 81B951C
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =sub_81B953C
movs r1, 0xA
bl CreateTask
@@ -17418,7 +17418,7 @@ sub_81B9620: @ 81B9620
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =sub_81B9640
movs r1, 0xA
bl CreateTask
diff --git a/asm/player_pc.s b/asm/player_pc.s
index 3f08d3f5c..5d9314f80 100644
--- a/asm/player_pc.s
+++ b/asm/player_pc.s
@@ -552,7 +552,7 @@ sub_816B2C8: @ 816B2C8
str r0, [r1]
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
pop {r0}
bx r0
.pool
@@ -1221,7 +1221,7 @@ sub_816B878: @ 816B878
lsrs r4, 24
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r1, =gTasks
lsls r0, r4, 2
adds r0, r4
@@ -1494,7 +1494,7 @@ sub_816BABC: @ 816BABC
_0816BAD4:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =gTasks
lsls r1, r4, 2
adds r1, r4
diff --git a/asm/pokemon_animation.s b/asm/pokemon_animation.s
deleted file mode 100644
index a625f8511..000000000
--- a/asm/pokemon_animation.s
+++ /dev/null
@@ -1,11782 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
-
- thumb_func_start nullsub_69
-nullsub_69: @ 817F3EC
- bx lr
- thumb_func_end nullsub_69
-
- thumb_func_start sub_817F3F0
-sub_817F3F0: @ 817F3F0
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x4
- mov r9, r0
- mov r8, r1
- adds r5, r2, 0
- adds r4, r3, 0
- lsls r5, 16
- negs r5, r5
- lsls r4, 16
- negs r4, r4
- lsrs r4, 16
- mov r0, r8
- lsls r0, 16
- asrs r0, 16
- mov r8, r0
- asrs r5, 16
- adds r1, r5, 0
- bl Cos
- adds r6, r0, 0
- lsls r4, 16
- asrs r4, 16
- mov r0, r8
- adds r1, r4, 0
- bl Sin
- subs r6, r0
- lsls r6, 16
- lsrs r6, 16
- mov r0, r8
- adds r1, r4, 0
- bl Cos
- adds r2, r0, 0
- mov r0, r8
- adds r1, r5, 0
- str r2, [sp]
- bl Sin
- ldr r2, [sp]
- adds r2, r0
- negs r5, r5
- negs r4, r4
- lsls r6, 16
- asrs r6, 16
- lsls r5, 16
- asrs r5, 16
- adds r6, r5
- mov r0, r9
- strh r6, [r0, 0x24]
- lsls r2, 16
- asrs r2, 16
- lsls r4, 16
- asrs r4, 16
- adds r2, r4
- strh r2, [r0, 0x26]
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_817F3F0
-
- thumb_func_start GetSpeciesBackAnimId
-GetSpeciesBackAnimId: @ 817F474
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- ldr r1, =gUnknown_0860A8C8
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _0817F48C
- movs r0, 0
- b _0817F492
- .pool
-_0817F48C:
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
-_0817F492:
- pop {r1}
- bx r1
- thumb_func_end GetSpeciesBackAnimId
-
- thumb_func_start sub_817F498
-sub_817F498: @ 817F498
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r6, r5, 2
- adds r0, r6, r5
- lsls r0, 3
- adds r2, r0, r1
- movs r3, 0xA
- ldrsh r0, [r2, r3]
- lsls r3, r0, 16
- movs r4, 0xC
- ldrsh r0, [r2, r4]
- orrs r3, r0
- movs r0, 0x8
- ldrsh r4, [r2, r0]
- mov r8, r1
- ldr r0, =SpriteCallbackDummy
- mov r12, r0
- cmp r4, 0
- bne _0817F508
- ldrh r0, [r3, 0x2E]
- strh r0, [r2, 0x10]
- ldrh r0, [r3, 0x32]
- strh r0, [r2, 0x12]
- movs r0, 0x1
- strh r0, [r3, 0x30]
- strh r4, [r3, 0x2E]
- movs r0, 0x2
- adds r1, r6, 0
- ldr r6, =gUnknown_0860AA88
- ldr r7, =gUnknown_03001274
- movs r4, 0
- adds r2, r3, 0
- adds r2, 0x32
-_0817F4E2:
- strh r4, [r2]
- adds r2, 0x2
- adds r0, 0x1
- cmp r0, 0x7
- bls _0817F4E2
- adds r1, r5
- lsls r1, 3
- add r1, r8
- movs r2, 0xE
- ldrsh r0, [r1, r2]
- lsls r0, 2
- adds r0, r6
- ldr r0, [r0]
- str r0, [r3, 0x1C]
- movs r0, 0
- str r0, [r7]
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
-_0817F508:
- ldr r0, [r3, 0x1C]
- cmp r0, r12
- bne _0817F528
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- add r0, r8
- ldrh r1, [r0, 0x10]
- movs r2, 0
- strh r1, [r3, 0x2E]
- ldrh r0, [r0, 0x12]
- strh r0, [r3, 0x32]
- strh r2, [r3, 0x30]
- adds r0, r5, 0
- bl DestroyTask
-_0817F528:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817F498
-
- thumb_func_start LaunchAnimationTaskForFrontSprite
-LaunchAnimationTaskForFrontSprite: @ 817F544
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- ldr r0, =sub_817F498
- movs r1, 0x80
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- lsrs r0, r5, 16
- strh r0, [r1, 0xA]
- strh r5, [r1, 0xC]
- strh r4, [r1, 0xE]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end LaunchAnimationTaskForFrontSprite
-
- thumb_func_start sub_817F578
-sub_817F578: @ 817F578
- lsls r1, 24
- ldr r3, =gUnknown_03001274
- movs r2, 0x1
- str r2, [r3]
- ldr r2, =gUnknown_0860AA88
- lsrs r1, 22
- adds r1, r2
- ldr r1, [r1]
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_817F578
-
- thumb_func_start LaunchAnimationTaskForBackSprite
-LaunchAnimationTaskForBackSprite: @ 817F594
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r6, r1, 24
- lsrs r6, 24
- ldr r0, =sub_817F498
- movs r1, 0x80
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- lsrs r0, r5, 16
- strh r0, [r4, 0xA]
- strh r5, [r4, 0xC]
- ldrh r0, [r5, 0x2E]
- lsls r0, 24
- ldr r1, =gBattlePartyID
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- bl GetNature
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r6, 1
- ldr r2, =gUnknown_0860AD2F
- adds r0, r2
- adds r1, r6
- ldrb r0, [r0]
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, =gUnknown_0860ACE4
- adds r1, r0
- ldrb r0, [r1]
- strh r0, [r4, 0xE]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end LaunchAnimationTaskForBackSprite
-
- thumb_func_start sub_817F60C
-sub_817F60C: @ 817F60C
- ldr r1, =nullsub_69
- str r1, [r0, 0x1C]
- bx lr
- .pool
- thumb_func_end sub_817F60C
-
- thumb_func_start sub_817F618
-sub_817F618: @ 817F618
- push {r4,r5,lr}
- sub sp, 0x10
- lsls r1, 16
- lsls r3, 16
- lsrs r3, 16
- ldr r4, =0xffff0000
- lsls r2, 16
- lsrs r1, 16
- orrs r1, r2
- str r1, [sp]
- ldr r1, [sp, 0x4]
- ands r1, r4
- orrs r1, r3
- str r1, [sp, 0x4]
- ldrb r4, [r0, 0x3]
- lsls r4, 26
- lsrs r4, 27
- add r5, sp, 0x8
- mov r0, sp
- adds r1, r5, 0
- movs r2, 0x1
- movs r3, 0x2
- bl ObjAffineSet
- ldr r0, =gOamMatrices
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r5]
- strh r0, [r4]
- ldrh r0, [r5, 0x2]
- strh r0, [r4, 0x2]
- ldrh r0, [r5, 0x4]
- strh r0, [r4, 0x4]
- ldrh r0, [r5, 0x6]
- strh r0, [r4, 0x6]
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817F618
-
- thumb_func_start sub_817F670
-sub_817F670: @ 817F670
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0x1]
- movs r1, 0x3
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldr r0, =gSpriteAffineAnimTable_860AD68
- str r0, [r4, 0x10]
- ldr r0, =gUnknown_03001274
- ldr r0, [r0]
- cmp r0, 0x1
- bne _0817F68E
- adds r0, r4, 0
- bl InitSpriteAffineAnim
-_0817F68E:
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0817F6A8
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- b _0817F6B0
- .pool
-_0817F6A8:
- adds r0, r4, 0
- movs r1, 0
- bl StartSpriteAffineAnim
-_0817F6B0:
- ldrb r3, [r4, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- adds r0, r4, 0
- bl CalcCenterToCornerVec
- adds r2, r4, 0
- adds r2, 0x2C
- ldrb r0, [r2]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817F670
-
- thumb_func_start sub_817F6D4
-sub_817F6D4: @ 817F6D4
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 16
- lsrs r2, 16
- lsls r3, 16
- lsrs r3, 16
- movs r5, 0x30
- ldrsh r0, [r4, r5]
- cmp r0, 0
- bne _0817F6F8
- lsls r0, r1, 16
- negs r0, r0
- lsrs r1, r0, 16
- negs r0, r3
- lsls r0, 16
- lsrs r3, r0, 16
-_0817F6F8:
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- bl sub_817F618
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_817F6D4
-
- thumb_func_start sub_817F70C
-sub_817F70C: @ 817F70C
- push {lr}
- adds r1, r0, 0
- movs r2, 0x30
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _0817F720
- movs r2, 0x24
- ldrsh r0, [r1, r2]
- negs r0, r0
- strh r0, [r1, 0x24]
-_0817F720:
- pop {r0}
- bx r0
- thumb_func_end sub_817F70C
-
- thumb_func_start sub_817F724
-sub_817F724: @ 817F724
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bhi _0817F750
- ldr r1, =gUnknown_03001240
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- movs r2, 0
- strh r2, [r0, 0x6]
- strh r2, [r0]
- movs r1, 0x1
- strh r1, [r0, 0x4]
- strh r2, [r0, 0x2]
- strh r2, [r0, 0x8]
- movs r0, 0x1
- b _0817F752
- .pool
-_0817F750:
- movs r0, 0
-_0817F752:
- pop {r1}
- bx r1
- thumb_func_end sub_817F724
-
- thumb_func_start sub_817F758
-sub_817F758: @ 817F758
- push {r4,lr}
- ldr r4, =gUnknown_03001270
- ldrb r1, [r4]
- adds r2, r1, 0x1
- adds r0, r2, 0
- asrs r0, 2
- lsls r0, 2
- subs r0, r2, r0
- strb r0, [r4]
- ldrb r0, [r4]
- bl sub_817F724
- ldrb r0, [r4]
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_817F758
-
- thumb_func_start sub_817F77C
-sub_817F77C: @ 817F77C
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0x1]
- movs r3, 0x4
- negs r3, r3
- ands r3, r0
- movs r5, 0x1
- orrs r3, r5
- strb r3, [r4, 0x1]
- lsrs r1, r3, 6
- ldrb r2, [r4, 0x3]
- lsrs r2, 6
- lsls r3, 30
- lsrs r3, 30
- adds r0, r4, 0
- bl CalcCenterToCornerVec
- ldr r0, =gUnknown_03001274
- ldr r0, [r0]
- cmp r0, 0x1
- bne _0817F800
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0817F7C0
- adds r1, r4, 0
- adds r1, 0x3F
- ldrb r0, [r1]
- orrs r0, r5
- strb r0, [r1]
- adds r5, r1, 0
- b _0817F7D0
- .pool
-_0817F7C0:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r2, [r0]
- movs r1, 0x2
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- adds r5, r0, 0
-_0817F7D0:
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldrb r2, [r4, 0x3]
- lsls r1, r2, 26
- lsrs r1, 27
- ldrb r0, [r5]
- lsls r0, 31
- lsrs r0, 31
- lsls r0, 3
- orrs r1, r0
- lsls r1, 1
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
-_0817F800:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_817F77C
-
- thumb_func_start pokemonanimfunc_01
-pokemonanimfunc_01: @ 817F808
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0817F81A
- adds r0, r6, 0
- bl sub_817F670
-_0817F81A:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0x28
- ble _0817F840
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _0817F88C
- .pool
-_0817F840:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 9
- movs r1, 0x28
- bl __divsi3
- adds r4, r0, 0
- cmp r0, 0
- bge _0817F854
- adds r4, 0xFF
-_0817F854:
- asrs r4, 8
- lsls r4, 8
- subs r4, r0, r4
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x20
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r5, r1, 0
- adds r0, r5
- strh r0, [r6, 0x36]
- adds r0, r4, 0
- movs r1, 0x20
- bl Cos
- adds r0, r5
- strh r0, [r6, 0x38]
- movs r0, 0x36
- ldrsh r1, [r6, r0]
- movs r0, 0x38
- ldrsh r2, [r6, r0]
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F6D4
-_0817F88C:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_01
-
- thumb_func_start pokemonanimfunc_02
-pokemonanimfunc_02: @ 817F898
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0x28
- ble _0817F8B4
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0817F8EE
- .pool
-_0817F8B4:
- movs r0, 0x1
- ands r0, r1
- movs r5, 0xFF
- cmp r0, 0
- bne _0817F8C0
- movs r5, 0x1
-_0817F8C0:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsls r0, 7
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0817F8D4
- adds r0, 0xFF
-_0817F8D4:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x6
- bl Sin
- lsls r1, r5, 24
- asrs r1, 24
- adds r2, r0, 0
- muls r2, r1
- adds r0, r2, 0
-_0817F8EE:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_02
-
- thumb_func_start sub_817F8FC
-sub_817F8FC: @ 817F8FC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _0817F91C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0817F946
- .pool
-_0817F91C:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 7
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0817F936
- adds r0, 0xFF
-_0817F936:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x6
- bl Sin
-_0817F946:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817F8FC
-
- thumb_func_start pokemonanimfunc_03
-pokemonanimfunc_03: @ 817F95C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x28
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F8FC
- ldr r0, =sub_817F8FC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_03
-
- thumb_func_start sub_817F978
-sub_817F978: @ 817F978
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _0817F998
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0817F9C4
- .pool
-_0817F998:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 7
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0817F9B2
- adds r0, 0xFF
-_0817F9B2:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x6
- bl Sin
- negs r0, r0
-_0817F9C4:
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817F978
-
- thumb_func_start pokemonanimfunc_04
-pokemonanimfunc_04: @ 817F9D8
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x28
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F978
- ldr r0, =sub_817F978
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_04
-
- thumb_func_start sub_817F9F4
-sub_817F9F4: @ 817F9F4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0xC0
- lsls r0, 1
- cmp r1, r0
- ble _0817FA14
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- b _0817FA5E
- .pool
-_0817FA14:
- adds r0, r1, 0
- cmp r1, 0
- bge _0817FA1C
- adds r0, 0x7F
-_0817FA1C:
- asrs r2, r0, 7
- lsls r0, r2, 16
- asrs r0, 16
- cmp r0, 0
- blt _0817FA60
- cmp r0, 0x1
- ble _0817FA48
- cmp r0, 0x3
- bgt _0817FA60
- ldr r2, =0xffffff00
- adds r1, r2
- lsls r0, r1, 16
- asrs r0, 16
- movs r1, 0x2E
- ldrsh r2, [r4, r1]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 16
- b _0817FA56
- .pool
-_0817FA48:
- lsls r0, r2, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- lsls r1, 17
-_0817FA56:
- asrs r1, 16
- bl Sin
- negs r0, r0
-_0817FA5E:
- strh r0, [r4, 0x26]
-_0817FA60:
- ldrh r0, [r4, 0x32]
- adds r0, 0xC
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817F9F4
-
- thumb_func_start pokemonanimfunc_1E
-pokemonanimfunc_1E: @ 817FA6C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x4
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F9F4
- ldr r0, =sub_817F9F4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_1E
-
- thumb_func_start pokemonanimfunc_06
-pokemonanimfunc_06: @ 817FA88
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r0, 0xC0
- lsls r0, 2
- cmp r2, r0
- ble _0817FAA8
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- b _0817FB56
- .pool
-_0817FAA8:
- adds r0, r2, 0
- cmp r2, 0
- bge _0817FAB0
- adds r0, 0x7F
-_0817FAB0:
- lsls r0, 9
- asrs r0, 16
- cmp r0, 0x5
- bhi _0817FB3C
- lsls r0, 2
- ldr r1, =_0817FAC8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0817FAC8:
- .4byte _0817FAE0
- .4byte _0817FAE0
- .4byte _0817FAE4
- .4byte _0817FAE8
- .4byte _0817FB04
- .4byte _0817FB1E
-_0817FAE0:
- movs r0, 0
- b _0817FB3A
-_0817FAE4:
- movs r2, 0
- b _0817FB3C
-_0817FAE8:
- adds r0, r2, 0
- cmp r2, 0
- bge _0817FAF0
- adds r0, 0x7F
-_0817FAF0:
- asrs r0, 7
- lsls r0, 7
- subs r0, r2, r0
- lsls r0, 3
- negs r0, r0
- cmp r0, 0
- bge _0817FB00
- adds r0, 0x7F
-_0817FB00:
- asrs r0, 7
- b _0817FB3A
-_0817FB04:
- adds r0, r2, 0
- cmp r2, 0
- bge _0817FB0C
- adds r0, 0x7F
-_0817FB0C:
- asrs r0, 7
- lsls r0, 7
- subs r0, r2, r0
- cmp r0, 0
- bge _0817FB18
- adds r0, 0x7
-_0817FB18:
- asrs r0, 3
- subs r0, 0x8
- b _0817FB3A
-_0817FB1E:
- adds r0, r2, 0
- cmp r2, 0
- bge _0817FB26
- adds r0, 0x7F
-_0817FB26:
- asrs r0, 7
- lsls r0, 7
- subs r0, r2, r0
- lsls r0, 3
- negs r0, r0
- cmp r0, 0
- bge _0817FB36
- adds r0, 0x7F
-_0817FB36:
- asrs r0, 7
- adds r0, 0x8
-_0817FB3A:
- strh r0, [r4, 0x24]
-_0817FB3C:
- adds r0, r2, 0
- cmp r2, 0
- bge _0817FB44
- adds r0, 0x7F
-_0817FB44:
- asrs r0, 7
- lsls r0, 7
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
-_0817FB56:
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0xC
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_06
-
- thumb_func_start pokemonanimfunc_09
-pokemonanimfunc_09: @ 817FB64
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0817FB76
- adds r0, r6, 0
- bl sub_817F670
-_0817FB76:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0x28
- ble _0817FB9C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _0817FC12
- .pool
-_0817FB9C:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 8
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0817FBB0
- adds r0, 0xFF
-_0817FBB0:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- lsrs r4, r0, 16
- ldrh r0, [r6, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0817FBE0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x20
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r5, r1, 0
- adds r0, r5
- strh r0, [r6, 0x36]
- adds r0, r4, 0
- movs r1, 0x20
- b _0817FBFA
-_0817FBE0:
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x8
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r5, r1, 0
- adds r0, r5
- strh r0, [r6, 0x36]
- adds r0, r4, 0
- movs r1, 0x8
-_0817FBFA:
- bl Sin
- adds r0, r5
- strh r0, [r6, 0x38]
- movs r0, 0x36
- ldrsh r1, [r6, r0]
- movs r0, 0x38
- ldrsh r2, [r6, r0]
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F6D4
-_0817FC12:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_09
-
- thumb_func_start sub_817FC20
-sub_817FC20: @ 817FC20
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0817FC32
- strh r0, [r4, 0x34]
-_0817FC32:
- ldr r2, =gUnknown_0860AD70
- movs r5, 0x34
- ldrsh r1, [r4, r5]
- lsls r0, r1, 1
- adds r0, r1
- adds r1, r2, 0x2
- adds r3, r0, r1
- movs r1, 0
- ldrsb r1, [r3, r1]
- movs r5, 0x32
- ldrsh r0, [r4, r5]
- cmp r1, r0
- bne _0817FC6A
- adds r0, r1, 0
- cmp r0, 0
- bne _0817FC60
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0817FC6A
- .pool
-_0817FC60:
- ldrh r0, [r4, 0x34]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r4, 0x34]
- strh r1, [r4, 0x32]
-_0817FC6A:
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r1, r0, r1
- adds r0, r2, 0x2
- adds r0, r1, r0
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bne _0817FC8C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0817FCBE
- .pool
-_0817FC8C:
- adds r0, r1, r2
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r5, 0x34
- ldrsh r1, [r4, r5]
- lsls r0, r1, 1
- adds r0, r1
- adds r1, r2, 0x1
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
-_0817FCBE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_817FC20
-
- thumb_func_start pokemonanimfunc_0A
-pokemonanimfunc_0A: @ 817FCC4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817FC20
- ldr r0, =sub_817FC20
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0A
-
- thumb_func_start sub_817FCDC
-sub_817FCDC: @ 817FCDC
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x90
- lsls r0, 4
- cmp r1, r0
- ble _0817FCF8
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0817FD12
- .pool
-_0817FCF8:
- adds r0, r1, 0
- cmp r1, 0
- bge _0817FD00
- adds r0, 0xFF
-_0817FD00:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- bl Sin
-_0817FD12:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- adds r0, r1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817FCDC
-
- thumb_func_start pokemonanimfunc_0F
-pokemonanimfunc_0F: @ 817FD24
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3C
- strh r0, [r4, 0x2E]
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817FCDC
- ldr r0, =sub_817FCDC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0F
-
- thumb_func_start sub_817FD44
-sub_817FD44: @ 817FD44
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x90
- lsls r0, 4
- cmp r1, r0
- ble _0817FD60
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0817FD78
- .pool
-_0817FD60:
- adds r0, r1, 0
- cmp r1, 0
- bge _0817FD68
- adds r0, 0xFF
-_0817FD68:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x3
- bl Sin
-_0817FD78:
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- adds r0, r1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_817FD44
-
- thumb_func_start pokemonanimfunc_10
-pokemonanimfunc_10: @ 817FD88
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3C
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817FD44
- ldr r0, =sub_817FD44
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_10
-
- thumb_func_start pokemonanimfunc_11
-pokemonanimfunc_11: @ 817FDA4
- push {r4-r7,lr}
- adds r7, r0, 0
- ldrh r2, [r7, 0x32]
- movs r0, 0x32
- ldrsh r1, [r7, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _0817FDC8
- ldr r0, =sub_8184D88
- str r0, [r7, 0x1C]
- movs r0, 0
- strh r0, [r7, 0x24]
- strh r0, [r7, 0x26]
- b _0817FE24
- .pool
-_0817FDC8:
- movs r0, 0x1
- ands r0, r2
- movs r5, 0xFF
- cmp r0, 0
- bne _0817FDD4
- movs r5, 0x1
-_0817FDD4:
- movs r1, 0x32
- ldrsh r0, [r7, r1]
- cmp r0, 0
- bge _0817FDDE
- adds r0, 0x3
-_0817FDDE:
- asrs r0, 2
- movs r1, 0x8
- bl Sin
- lsls r0, 16
- asrs r6, r0, 16
- movs r0, 0x32
- ldrsh r1, [r7, r0]
- adds r4, r1, 0
- cmp r1, 0
- bge _0817FDF6
- adds r4, 0xFF
-_0817FDF6:
- asrs r4, 8
- lsls r4, 8
- subs r4, r1, r4
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- adds r1, r6, 0
- bl Sin
- lsls r5, 24
- asrs r5, 24
- adds r1, r0, 0
- muls r1, r5
- adds r0, r1, 0
- strh r0, [r7, 0x26]
- adds r0, r4, 0
- adds r1, r6, 0
- bl Cos
- adds r1, r0, 0
- muls r1, r5
- adds r0, r1, 0
- strh r0, [r7, 0x24]
-_0817FE24:
- ldrh r0, [r7, 0x32]
- adds r0, 0x9
- strh r0, [r7, 0x32]
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_11
-
- thumb_func_start sub_817FE30
-sub_817FE30: @ 817FE30
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r2, =gUnknown_03001240
- ldrh r6, [r4, 0x2E]
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r5, r0, r2
- ldrh r0, [r5]
- cmp r0, 0
- beq _0817FE54
- subs r0, 0x1
- strh r0, [r5]
- b _0817FEF8
- .pool
-_0817FE54:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0817FE70
- movs r2, 0x8
- ldrsh r0, [r5, r2]
- cmp r0, 0
- bne _0817FE70
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
-_0817FE70:
- ldr r2, =gUnknown_03001240
- lsls r1, r6, 16
- asrs r1, 16
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r5, r0, r2
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x6
- ldrsh r0, [r5, r2]
- cmp r1, r0
- ble _0817FEC4
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r1, [r5, 0x4]
- movs r2, 0x4
- ldrsh r0, [r5, r2]
- cmp r0, 0x1
- ble _0817FEB4
- subs r0, r1, 0x1
- movs r1, 0
- strh r0, [r5, 0x4]
- movs r0, 0xA
- strh r0, [r5]
- strh r1, [r4, 0x32]
- b _0817FEF2
- .pool
-_0817FEB4:
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0817FEF2
- .pool
-_0817FEC4:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _0817FED0
- adds r0, 0xFF
-_0817FED0:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x80
- lsls r1, 5
- bl Sin
- strh r0, [r4, 0x3A]
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3A]
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
-_0817FEF2:
- ldrh r0, [r4, 0x32]
- adds r0, 0x10
- strh r0, [r4, 0x32]
-_0817FEF8:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_817FE30
-
- thumb_func_start pokemonanimfunc_12
-pokemonanimfunc_12: @ 817FF00
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r1, 0x6]
- strh r3, [r1]
- adds r0, r4, 0
- bl sub_817FE30
- ldr r0, =sub_817FE30
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_12
-
- thumb_func_start sub_817FF3C
-sub_817FF3C: @ 817FF3C
- push {r4-r6,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- lsls r0, 24
- lsrs r5, r0, 24
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0817FF54
- adds r0, r4, 0
- bl sub_817F670
-_0817FF54:
- movs r2, 0x32
- ldrsh r6, [r4, r2]
- ldr r1, =gUnknown_03001240
- lsls r0, r5, 1
- adds r0, r5
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0]
- cmp r6, r1
- ble _0817FF8C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0817FFAA
- .pool
-_0817FF8C:
- movs r2, 0x8
- ldrsh r1, [r0, r2]
- movs r0, 0x80
- lsls r0, 9
- bl __divsi3
- muls r0, r6
- strh r0, [r4, 0x3A]
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3A]
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
-_0817FFAA:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_817FF3C
-
- thumb_func_start pokemonanimfunc_1F
-pokemonanimfunc_1F: @ 817FFB8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3C
- strh r0, [r1]
- movs r0, 0x14
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_817FF3C
- ldr r0, =sub_817FF3C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_1F
-
- thumb_func_start sub_817FFF0
-sub_817FFF0: @ 817FFF0
- push {r4-r7,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0x2E]
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r5, 0
- bl sub_817F70C
- ldr r1, =gUnknown_03001240
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 2
- adds r6, r0, r1
- movs r0, 0x32
- ldrsh r1, [r5, r0]
- movs r2, 0x6
- ldrsh r0, [r6, r2]
- cmp r1, r0
- ble _0818002C
- movs r0, 0
- strh r0, [r5, 0x24]
- strh r0, [r5, 0x26]
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
- b _0818006A
- .pool
-_0818002C:
- movs r0, 0x32
- ldrsh r1, [r5, r0]
- adds r0, r1, 0
- adds r0, 0xC0
- adds r4, r0, 0
- cmp r0, 0
- bge _0818003E
- ldr r2, =0x000001bf
- adds r4, r1, r2
-_0818003E:
- asrs r4, 8
- lsls r4, 8
- subs r4, r0, r4
- lsls r4, 16
- asrs r4, 16
- movs r0, 0x8
- ldrsh r1, [r6, r0]
- lsls r1, 17
- asrs r1, 16
- adds r0, r4, 0
- bl Cos
- negs r0, r0
- strh r0, [r5, 0x24]
- movs r2, 0x8
- ldrsh r1, [r6, r2]
- adds r0, r4, 0
- bl Sin
- ldrh r1, [r6, 0x8]
- adds r0, r1
- strh r0, [r5, 0x26]
-_0818006A:
- ldr r0, =gUnknown_03001240
- lsls r1, r7, 1
- adds r1, r7
- lsls r1, 2
- adds r1, r0
- ldrh r0, [r1, 0x2]
- ldrh r1, [r5, 0x32]
- adds r0, r1
- strh r0, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F70C
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_817FFF0
-
- thumb_func_start pokemonanimfunc_14
-pokemonanimfunc_14: @ 8180090
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r1, 0x6]
- movs r0, 0x6
- strh r0, [r1, 0x8]
- movs r0, 0x18
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- bl sub_817FFF0
- ldr r0, =sub_817FFF0
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_14
-
- thumb_func_start pokemonanimfunc_15
-pokemonanimfunc_15: @ 81800D0
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081800EC
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_081800EC:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _0818010C
- ldrh r0, [r4, 0x3C]
- movs r1, 0x10
- movs r2, 0
- movs r3, 0
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180128
- .pool
-_0818010C:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0x10
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- movs r1, 0x10
- movs r3, 0
- bl BlendPalette
-_08180128:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_15
-
- thumb_func_start pokemonanimfunc_16
-pokemonanimfunc_16: @ 8180134
- push {r4-r7,lr}
- adds r6, r0, 0
- movs r7, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _08180148
- adds r0, r6, 0
- bl sub_817F670
-_08180148:
- ldrh r5, [r6, 0x32]
- movs r2, 0x32
- ldrsh r0, [r6, r2]
- cmp r0, 0x28
- ble _08180170
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08180204
- .pool
-_08180170:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 7
- movs r1, 0x28
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r5, 0
- subs r0, 0xA
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x13
- bhi _08180196
- ldrh r0, [r6, 0x3C]
- adds r0, 0x33
- strh r0, [r6, 0x3C]
- movs r7, 0xFF
- ands r7, r0
-_08180196:
- movs r2, 0x30
- ldrsh r0, [r6, r2]
- cmp r0, 0
- bne _081801C4
- lsls r5, r4, 16
- asrs r0, r5, 16
- movs r1, 0x28
- bl Sin
- adds r4, r0, 0
- adds r0, r7, 0
- movs r1, 0x10
- bl Sin
- ldr r1, =0xffffff00
- adds r0, r1
- adds r4, r0
- strh r4, [r6, 0x36]
- adds r4, r5, 0
- b _081801E4
- .pool
-_081801C4:
- adds r0, r7, 0
- movs r1, 0x10
- bl Sin
- adds r5, r0, 0
- lsls r4, 16
- asrs r0, r4, 16
- movs r1, 0x28
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r1, r5
- subs r1, r0
- strh r1, [r6, 0x36]
-_081801E4:
- asrs r0, r4, 16
- movs r1, 0x10
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- strh r0, [r6, 0x38]
- movs r2, 0x36
- ldrsh r1, [r6, r2]
- movs r0, 0x38
- ldrsh r2, [r6, r0]
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F618
-_08180204:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_16
-
- thumb_func_start pokemonanimfunc_17
-pokemonanimfunc_17: @ 8180210
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- movs r0, 0
- mov r8, r0
- movs r7, 0
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0818022C
- adds r0, r5, 0
- bl sub_817F670
-_0818022C:
- ldrh r6, [r5, 0x32]
- movs r2, 0x32
- ldrsh r0, [r5, r2]
- cmp r0, 0x28
- ble _08180258
- movs r2, 0x80
- lsls r2, 1
- adds r0, r5, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r5, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
- mov r0, r8
- strh r0, [r5, 0x26]
- b _0818030A
- .pool
-_08180258:
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- lsls r0, 7
- movs r1, 0x28
- bl __divsi3
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r6, 0
- subs r0, 0xA
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x13
- bhi _0818027E
- ldrh r0, [r5, 0x3C]
- adds r0, 0x33
- strh r0, [r5, 0x3C]
- movs r7, 0xFF
- ands r7, r0
-_0818027E:
- movs r2, 0x30
- ldrsh r0, [r5, r2]
- cmp r0, 0
- bne _081802A0
- lsls r4, 16
- asrs r0, r4, 16
- movs r1, 0x10
- bl Sin
- ldr r2, =0xffffff00
- adds r1, r2, 0
- subs r1, r0
- strh r1, [r5, 0x36]
- b _081802B2
- .pool
-_081802A0:
- lsls r4, 16
- asrs r0, r4, 16
- movs r1, 0x10
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- strh r0, [r5, 0x36]
-_081802B2:
- adds r6, r4, 0
- adds r0, r7, 0
- movs r1, 0x8
- bl Sin
- adds r4, r0, 0
- asrs r0, r6, 16
- movs r1, 0x28
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r4, r1, r4
- subs r4, r0
- strh r4, [r5, 0x38]
- lsls r4, 16
- asrs r4, 16
- lsls r1, 16
- asrs r1, 16
- cmp r4, r1
- beq _081802F0
- movs r2, 0x38
- ldrsh r0, [r5, r2]
- subs r0, r1, r0
- cmp r0, 0
- bge _081802EA
- adds r0, 0x7
-_081802EA:
- lsls r0, 13
- lsrs r0, 16
- mov r8, r0
-_081802F0:
- mov r1, r8
- lsls r0, r1, 16
- asrs r0, 16
- negs r0, r0
- strh r0, [r5, 0x26]
- movs r2, 0x36
- ldrsh r1, [r5, r2]
- movs r0, 0x38
- ldrsh r2, [r5, r0]
- adds r0, r5, 0
- movs r3, 0
- bl sub_817F618
-_0818030A:
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_17
-
- thumb_func_start sub_818031C
-sub_818031C: @ 818031C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r0, 0
- ldrh r0, [r4, 0x32]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrh r0, [r4, 0x3A]
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r2, =gUnknown_0860AA80
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- lsls r0, 1
- adds r1, r0, r2
- ldrb r5, [r1]
- adds r2, 0x1
- adds r0, r2
- ldrb r6, [r0]
- movs r1, 0
- cmp r5, 0xFE
- beq _08180358
- subs r0, r6, r7
- muls r0, r5
- adds r1, r6, 0
- bl __divsi3
- lsls r0, 24
- lsrs r1, r0, 24
-_08180358:
- cmp r5, 0xFF
- bne _08180370
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x26]
- b _08180394
- .pool
-_08180370:
- mov r0, r8
- bl Sin
- strh r0, [r4, 0x26]
- cmp r7, r6
- bne _08180386
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
- movs r0, 0
- b _08180392
-_08180386:
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- adds r0, r1
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x1
-_08180392:
- strh r0, [r4, 0x3A]
-_08180394:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_818031C
-
- thumb_func_start pokemonanimfunc_19
-pokemonanimfunc_19: @ 81803A0
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x30
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_818031C
- ldr r0, =sub_818031C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_19
-
- thumb_func_start pokemonanimfunc_1A
-pokemonanimfunc_1A: @ 81803BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x32]
- lsls r7, r0, 24
- lsrs r5, r7, 24
- mov r8, r5
- cmp r0, 0
- bne _081803DA
- adds r0, r4, 0
- bl sub_817F670
-_081803DA:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x23
- ble _08180404
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- b _0818045E
- .pool
-_08180404:
- adds r6, r5, 0
- subs r6, 0xA
- lsls r0, r6, 7
- movs r1, 0x14
- bl __divsi3
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r5, 0x9
- bhi _0818042A
- movs r2, 0x80
- lsls r2, 1
- lsrs r3, r7, 25
- lsls r3, 9
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- b _0818045E
-_0818042A:
- lsls r0, r6, 24
- lsrs r0, 24
- cmp r0, 0x13
- bhi _08180442
- lsls r0, r1, 16
- asrs r0, 16
- movs r1, 0x5
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- b _0818045E
-_08180442:
- movs r2, 0x80
- lsls r2, 1
- movs r3, 0x23
- mov r0, r8
- subs r3, r0
- lsrs r0, r3, 31
- adds r3, r0
- asrs r3, 1
- lsls r3, 26
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
-_0818045E:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_1A
-
- thumb_func_start pokemonanimfunc_1B
-pokemonanimfunc_1B: @ 8180474
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _08180486
- adds r0, r6, 0
- bl sub_817F670
-_08180486:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0x64
- ble _081804B0
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r0, 0
- strh r0, [r6, 0x26]
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _081804E8
- .pool
-_081804B0:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 8
- movs r1, 0x64
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0xA
- bl Sin
- strh r0, [r6, 0x26]
- movs r5, 0x80
- lsls r5, 1
- ldr r1, =0x00000ccc
- adds r0, r4, 0
- bl Sin
- adds r3, r0, 0
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r5, 0
- bl sub_817F6D4
-_081804E8:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_1B
-
- thumb_func_start sub_81804F8
-sub_81804F8: @ 81804F8
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r5, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0818050C
- adds r0, r6, 0
- bl sub_817F670
-_0818050C:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0x64
- ble _08180534
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r5, [r6, 0x26]
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08180582
- .pool
-_08180534:
- movs r0, 0x32
- ldrsh r5, [r6, r0]
- lsls r0, r5, 8
- movs r1, 0x64
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 9
- adds r0, r5, 0
- movs r1, 0x64
- bl __divsi3
- adds r5, r0, 0
- movs r0, 0xFF
- ands r5, r0
- lsls r4, 16
- asrs r4, 16
- movs r0, 0x2E
- ldrsh r1, [r6, r0]
- adds r0, r4, 0
- bl Sin
- strh r0, [r6, 0x26]
- movs r4, 0x80
- lsls r4, 1
- adds r0, r5, 0
- ldr r1, =0x00000ccc
- bl Sin
- adds r3, r0, 0
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r4, 0
- bl sub_817F6D4
-_08180582:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81804F8
-
- thumb_func_start pokemonanimfunc_1C
-pokemonanimfunc_1C: @ 8180594
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0xA
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_81804F8
- ldr r0, =sub_81804F8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_1C
-
- thumb_func_start sub_81805B0
-sub_81805B0: @ 81805B0
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r5, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _081805C4
- adds r0, r6, 0
- bl sub_817F670
-_081805C4:
- movs r2, 0x32
- ldrsh r0, [r6, r2]
- cmp r0, 0x64
- ble _081805EC
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r5, [r6, 0x26]
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08180644
- .pool
-_081805EC:
- movs r0, 0x32
- ldrsh r5, [r6, r0]
- lsls r0, r5, 8
- movs r1, 0x64
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 9
- adds r0, r5, 0
- movs r1, 0x64
- bl __divsi3
- adds r5, r0, 0
- movs r0, 0xFF
- ands r5, r0
- lsls r4, 16
- asrs r0, r4, 16
- lsrs r4, 31
- adds r0, r4
- asrs r0, 1
- movs r2, 0x2E
- ldrsh r1, [r6, r2]
- lsls r1, 17
- asrs r1, 16
- bl Sin
- negs r0, r0
- strh r0, [r6, 0x26]
- movs r4, 0x80
- lsls r4, 1
- adds r0, r5, 0
- ldr r1, =0x00000ccc
- bl Sin
- adds r3, r0, 0
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r4, 0
- bl sub_817F6D4
-_08180644:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81805B0
-
- thumb_func_start pokemonanimfunc_18
-pokemonanimfunc_18: @ 8180654
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x5
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_81805B0
- ldr r0, =sub_81805B0
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_18
-
- thumb_func_start pokemonanimfunc_1D
-pokemonanimfunc_1D: @ 8180670
- push {r4-r6,lr}
- adds r6, r0, 0
- bl sub_817F70C
- movs r5, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _08180688
- adds r0, r6, 0
- bl sub_817F670
-_08180688:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0x64
- ble _081806B0
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r5, [r6, 0x24]
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _081806FC
- .pool
-_081806B0:
- movs r0, 0x32
- ldrsh r5, [r6, r0]
- lsls r0, r5, 8
- movs r1, 0x64
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 9
- adds r0, r5, 0
- movs r1, 0x64
- bl __divsi3
- adds r5, r0, 0
- movs r0, 0xFF
- ands r5, r0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x8
- bl Sin
- strh r0, [r6, 0x24]
- movs r4, 0x80
- lsls r4, 1
- adds r0, r5, 0
- ldr r1, =0x00000ccc
- bl Sin
- adds r3, r0, 0
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r4, 0
- bl sub_817F6D4
-_081806FC:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- adds r0, r6, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_1D
-
- thumb_func_start sub_8180714
-sub_8180714: @ 8180714
- push {r4-r6,lr}
- adds r4, r0, 0
- movs r6, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0818072A
- adds r0, r4, 0
- bl sub_817F670
- strh r6, [r4, 0x34]
-_0818072A:
- adds r0, r4, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- cmp r2, r0
- ble _08180760
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r6, [r4, 0x26]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _081807FE
- .pool
-_08180760:
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _08180796
- adds r2, r0, 0
- lsls r0, r2, 1
- cmp r1, r0
- bge _08180796
- movs r0, 0x80
- adds r1, r2, 0
- bl __divsi3
- ldrh r1, [r4, 0x34]
- adds r1, r0
- strh r1, [r4, 0x34]
-_08180796:
- lsls r0, r5, 16
- asrs r1, r0, 16
- movs r2, 0x80
- lsls r2, 1
- adds r5, r0, 0
- cmp r1, r2
- ble _081807B0
- subs r0, r2, r1
- cmp r0, 0
- bge _081807AC
- adds r0, 0x7
-_081807AC:
- lsls r0, 13
- lsrs r6, r0, 16
-_081807B0:
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- movs r1, 0xA
- bl Sin
- negs r0, r0
- lsls r1, r6, 16
- asrs r1, 16
- subs r0, r1
- strh r0, [r4, 0x26]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- movs r1, 0x20
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r1, r0
- lsls r1, 16
- asrs r1, 16
- asrs r2, r5, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- bl __divsi3
- ldrh r1, [r4, 0x36]
- adds r1, r0
- movs r0, 0xFF
- ands r1, r0
- strh r1, [r4, 0x36]
-_081807FE:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8180714
-
- thumb_func_start pokemonanimfunc_00
-pokemonanimfunc_00: @ 818080C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x10
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_8180714
- ldr r0, =sub_8180714
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_00
-
- thumb_func_start sub_8180828
-sub_8180828: @ 8180828
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r6, 0
- movs r0, 0x32
- ldrsh r4, [r5, r0]
- movs r2, 0x3A
- ldrsh r1, [r5, r2]
- movs r0, 0x80
- bl __divsi3
- movs r2, 0x3C
- ldrsh r1, [r5, r2]
- muls r0, r1
- cmp r4, r0
- ble _08180868
- movs r2, 0x80
- lsls r2, 1
- adds r0, r5, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r6, [r5, 0x26]
- adds r0, r5, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
- b _081808D0
- .pool
-_08180868:
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r1, 0x20
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- lsls r0, 16
- lsrs r4, r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- cmp r0, r1
- ble _08180894
- subs r0, r1, r0
- cmp r0, 0
- bge _08180890
- adds r0, 0x7
-_08180890:
- lsls r0, 13
- lsrs r6, r0, 16
-_08180894:
- lsls r0, r6, 16
- asrs r0, 16
- negs r0, r0
- strh r0, [r5, 0x26]
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r1, 0x30
- bl Sin
- adds r1, r0, 0
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- lsls r2, r4, 16
- asrs r2, 16
- adds r0, r5, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x3A]
- ldrh r1, [r5, 0x36]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r5, 0x36]
-_081808D0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8180828
-
- thumb_func_start pokemonanimfunc_13
-pokemonanimfunc_13: @ 81808D8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081808F2
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
-_081808F2:
- adds r0, r4, 0
- bl sub_8180828
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_13
-
- thumb_func_start sub_8180900
-sub_8180900: @ 8180900
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x2E]
- lsls r1, 24
- lsrs r1, 24
- ldr r2, =gUnknown_03001240
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x6]
- str r1, [sp]
- ldr r5, =gUnknown_0860AD8E
- movs r3, 0x36
- ldrsh r2, [r4, r3]
- lsls r1, r2, 1
- adds r1, r2
- movs r3, 0x8
- ldrsh r2, [r0, r3]
- lsls r0, r2, 1
- adds r0, r2
- lsls r6, r0, 3
- adds r1, r6
- adds r2, r1, r5
- adds r0, r5, 0x1
- adds r1, r0
- movs r0, 0
- ldrsb r0, [r1, r0]
- ldrb r2, [r2]
- lsls r2, 24
- asrs r2, 24
- mov r9, r2
- subs r0, r2
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- ldrh r7, [r4, 0x34]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0818096C
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_0818096C:
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, r6
- adds r5, 0x2
- mov r8, r5
- adds r1, r0, r5
- movs r5, 0
- ldrsb r5, [r1, r5]
- cmp r5, 0
- bne _081809B0
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- strh r5, [r4, 0x24]
- strh r5, [r4, 0x26]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180A3A
- .pool
-_081809B0:
- lsls r0, r7, 16
- asrs r5, r0, 16
- lsls r0, r5, 7
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- movs r1, 0xA
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- mov r3, r10
- lsls r0, r3, 16
- asrs r0, 16
- muls r0, r5
- movs r1, 0x36
- ldrsh r2, [r4, r1]
- lsls r1, r2, 1
- adds r1, r2
- adds r1, r6
- add r1, r8
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- bl __divsi3
- add r0, r9
- strh r0, [r4, 0x24]
- ldr r2, [sp]
- lsls r0, r2, 16
- asrs r0, 16
- movs r3, 0x24
- ldrsh r1, [r4, r3]
- muls r0, r1
- negs r0, r0
- cmp r0, 0
- bge _08180A04
- adds r0, 0x7
-_08180A04:
- lsls r3, r0, 13
- lsrs r3, 16
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r0, 0x36
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- adds r0, r6
- add r0, r8
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- cmp r5, r0
- bne _08180A34
- ldrh r0, [r4, 0x36]
- adds r0, 0x1
- strh r0, [r4, 0x36]
- movs r0, 0
- b _08180A38
-_08180A34:
- ldrh r0, [r4, 0x34]
- adds r0, 0x1
-_08180A38:
- strh r0, [r4, 0x34]
-_08180A3A:
- adds r0, r4, 0
- bl sub_817F70C
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8180900
-
- thumb_func_start pokemonanimfunc_05
-pokemonanimfunc_05: @ 8180A50
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 5
- strh r0, [r1, 0x6]
- ldrh r0, [r4, 0x3A]
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_8180900
- ldr r0, =sub_8180900
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_05
-
- thumb_func_start pokemonanimfunc_20
-pokemonanimfunc_20: @ 8180A8C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180AA8
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_08180AA8:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _08180ACC
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000002df
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180AE8
- .pool
-_08180ACC:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =0x000002df
- movs r1, 0x10
- bl BlendPalette
-_08180AE8:
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_20
-
- thumb_func_start pokemonanimfunc_21
-pokemonanimfunc_21: @ 8180AF8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180B14
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_08180B14:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _08180B34
- ldrh r0, [r4, 0x3C]
- movs r1, 0x10
- movs r2, 0
- movs r3, 0x1F
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180B50
- .pool
-_08180B34:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- movs r1, 0x10
- movs r3, 0x1F
- bl BlendPalette
-_08180B50:
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_21
-
- thumb_func_start pokemonanimfunc_22
-pokemonanimfunc_22: @ 8180B5C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180B78
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_08180B78:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _08180B98
- ldrh r0, [r4, 0x3C]
- movs r3, 0xF8
- lsls r3, 7
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180BB6
- .pool
-_08180B98:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- movs r3, 0xF8
- lsls r3, 7
- movs r1, 0x10
- bl BlendPalette
-_08180BB6:
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_22
-
- thumb_func_start pokemonanimfunc_23
-pokemonanimfunc_23: @ 8180BC4
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180BE0
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_08180BE0:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _08180C04
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000003ff
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180C20
- .pool
-_08180C04:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =0x000003ff
- movs r1, 0x10
- bl BlendPalette
-_08180C20:
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_23
-
- thumb_func_start pokemonanimfunc_24
-pokemonanimfunc_24: @ 8180C30
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180C4C
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
-_08180C4C:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x80
- ble _08180C70
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x00006018
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08180C8C
- .pool
-_08180C70:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =0x00006018
- movs r1, 0x10
- bl BlendPalette
-_08180C8C:
- ldrh r0, [r4, 0x32]
- adds r0, 0x2
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_24
-
- thumb_func_start pokemonanimfunc_25
-pokemonanimfunc_25: @ 8180C9C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- ldr r0, =sub_8180CB4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_25
-
- thumb_func_start sub_8180CB4
-sub_8180CB4: @ 8180CB4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- adds r0, 0x1
- strh r0, [r4, 0x24]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _08180CD6
- movs r0, 0x8
- strh r0, [r4, 0x24]
- movs r0, 0x2
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8180CE8
- str r0, [r4, 0x1C]
-_08180CD6:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180CB4
-
- thumb_func_start sub_8180CE8
-sub_8180CE8: @ 8180CE8
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x24]
- ldrh r0, [r4, 0x3C]
- subs r1, r0
- strh r1, [r4, 0x24]
- adds r0, 0x1
- adds r2, r0, 0
- strh r0, [r4, 0x3C]
- lsls r1, 16
- cmp r1, 0
- bgt _08180D32
- lsls r0, r2, 24
- lsrs r2, r0, 24
- movs r0, 0
- strh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x24]
- ldr r5, =sub_8180D44
- movs r3, 0x8
- negs r3, r3
-_08180D14:
- subs r0, r1, r2
- lsls r0, 16
- ldrh r1, [r4, 0x3A]
- adds r1, 0x1
- strh r1, [r4, 0x3A]
- adds r1, r2, 0x1
- lsls r1, 24
- lsrs r2, r1, 24
- lsrs r1, r0, 16
- asrs r0, 16
- cmp r0, r3
- bgt _08180D14
- movs r0, 0x1
- strh r0, [r4, 0x38]
- str r5, [r4, 0x1C]
-_08180D32:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180CE8
-
- thumb_func_start sub_8180D44
-sub_8180D44: @ 8180D44
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x3C]
- subs r0, r1
- strh r0, [r4, 0x24]
- adds r1, 0x1
- strh r1, [r4, 0x3C]
- movs r0, 0x38
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- bl __divsi3
- lsls r0, 24
- lsrs r5, r0, 24
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
- lsls r0, 16
- asrs r0, 16
- ldrh r2, [r4, 0x3A]
- movs r3, 0x3A
- ldrsh r1, [r4, r3]
- cmp r0, r1
- ble _08180D84
- strh r2, [r4, 0x38]
-_08180D84:
- movs r2, 0x80
- lsls r2, 1
- lsls r3, r5, 8
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r1, 0x24
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- negs r1, r1
- cmp r0, r1
- bge _08180DAE
- strh r1, [r4, 0x24]
- movs r0, 0x2
- strh r0, [r4, 0x36]
- movs r0, 0
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x32]
- ldr r0, =sub_8180DC0
- str r0, [r4, 0x1C]
-_08180DAE:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180D44
-
- thumb_func_start sub_8180DC0
-sub_8180DC0: @ 8180DC0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x34]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- cmp r0, 0xB
- ble _08180E08
- ldrh r0, [r4, 0x32]
- subs r0, 0x2
- strh r0, [r4, 0x32]
- lsls r0, 16
- cmp r0, 0
- bge _08180DE2
- movs r0, 0
- strh r0, [r4, 0x32]
-_08180DE2:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x32]
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08180E1C
- ldr r0, =sub_8180E28
- str r0, [r4, 0x1C]
- b _08180E1C
- .pool
-_08180E08:
- ldrh r0, [r4, 0x36]
- ldrh r2, [r4, 0x24]
- adds r0, r2
- strh r0, [r4, 0x24]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- negs r0, r0
- strh r0, [r4, 0x36]
- adds r0, r1, 0x1
- strh r0, [r4, 0x34]
-_08180E1C:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8180DC0
-
- thumb_func_start sub_8180E28
-sub_8180E28: @ 8180E28
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- adds r0, 0x2
- strh r0, [r4, 0x24]
- lsls r0, 16
- cmp r0, 0
- ble _08180E4A
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08180E4A:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180E28
-
- thumb_func_start pokemonanimfunc_26
-pokemonanimfunc_26: @ 8180E5C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r0, 0
- strh r0, [r4, 0x34]
- ldr r0, =sub_8180E78
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_26
-
- thumb_func_start sub_8180E78
-sub_8180E78: @ 8180E78
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- adds r0, 0x1
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x26]
- subs r0, 0x1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x24]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08180EA2
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bgt _08180EA2
- movs r0, 0xA
- strh r0, [r4, 0x34]
-_08180EA2:
- movs r1, 0x24
- ldrsh r0, [r4, r1]
- cmp r0, 0x7
- ble _08180EBA
- movs r1, 0
- movs r0, 0x8
- strh r0, [r4, 0x24]
- ldr r0, =0x0000fff8
- strh r0, [r4, 0x26]
- strh r1, [r4, 0x36]
- ldr r0, =sub_8180ED0
- str r0, [r4, 0x1C]
-_08180EBA:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180E78
-
- thumb_func_start sub_8180ED0
-sub_8180ED0: @ 8180ED0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Cos
- subs r0, 0x8
- strh r0, [r4, 0x24]
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Sin
- subs r0, 0x8
- strh r0, [r4, 0x26]
- movs r1, 0x36
- ldrsh r0, [r4, r1]
- cmp r0, 0x3F
- ble _08180F08
- movs r0, 0xA0
- strh r0, [r4, 0x32]
- movs r0, 0xA
- strh r0, [r4, 0x34]
- ldr r0, =sub_8180F2C
- str r0, [r4, 0x1C]
-_08180F08:
- ldrh r0, [r4, 0x36]
- adds r0, 0x8
- strh r0, [r4, 0x36]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x40
- ble _08180F1A
- movs r0, 0x40
- strh r0, [r4, 0x36]
-_08180F1A:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180ED0
-
- thumb_func_start sub_8180F2C
-sub_8180F2C: @ 8180F2C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x34]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _08180F44
- subs r0, r1, 0x1
- strh r0, [r4, 0x34]
- b _08180F96
-_08180F44:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x5
- bl Cos
- subs r0, 0x4
- movs r5, 0
- strh r0, [r4, 0x24]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- movs r1, 0x5
- bl Sin
- negs r0, r0
- adds r0, 0x4
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- subs r0, 0x4
- strh r0, [r4, 0x32]
- movs r0, 0x32
- ldrsh r3, [r4, r0]
- subs r3, 0x20
- movs r2, 0x80
- lsls r2, 1
- lsls r3, 25
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x20
- bgt _08180F96
- strh r5, [r4, 0x24]
- strh r5, [r4, 0x26]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08180F96:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8180F2C
-
- thumb_func_start pokemonanimfunc_27
-pokemonanimfunc_27: @ 8180FA8
- push {r4,lr}
- adds r3, r0, 0
- ldrh r1, [r3, 0x34]
- movs r2, 0x34
- ldrsh r0, [r3, r2]
- cmp r0, 0
- ble _08180FBA
- subs r0, r1, 0x1
- b _08180FFE
-_08180FBA:
- movs r2, 0
- movs r1, 0x36
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _08180FC6
- movs r2, 0x1
-_08180FC6:
- strh r2, [r3, 0x36]
- movs r0, 0x3E
- adds r0, r3
- mov r12, r0
- lsls r2, 2
- ldrb r1, [r0]
- movs r4, 0x5
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- orrs r0, r2
- mov r1, r12
- strb r0, [r1]
- ldrh r0, [r3, 0x32]
- adds r0, 0x1
- strh r0, [r3, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x13
- ble _08180FFC
- ldrb r0, [r1]
- adds r1, r4, 0
- ands r1, r0
- mov r2, r12
- strb r1, [r2]
- ldr r0, =sub_8184D88
- str r0, [r3, 0x1C]
-_08180FFC:
- movs r0, 0x2
-_08180FFE:
- strh r0, [r3, 0x34]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_27
-
- thumb_func_start pokemonanimfunc_28
-pokemonanimfunc_28: @ 818100C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- ldr r0, =sub_8181024
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_28
-
- thumb_func_start sub_8181024
-sub_8181024: @ 8181024
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- subs r0, 0x1
- strh r0, [r4, 0x24]
- ldrh r1, [r4, 0x26]
- adds r1, 0x1
- strh r1, [r4, 0x26]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- negs r1, r1
- cmp r0, r1
- bgt _08181054
- ldr r0, =0x0000fff0
- strh r0, [r4, 0x24]
- movs r0, 0x10
- strh r0, [r4, 0x26]
- ldr r0, =sub_8181068
- str r0, [r4, 0x1C]
- movs r0, 0xA0
- strh r0, [r4, 0x32]
-_08181054:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181024
-
- thumb_func_start sub_8181068
-sub_8181068: @ 8181068
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x32]
- subs r0, 0x4
- strh r0, [r4, 0x32]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x16
- bl Cos
- strh r0, [r4, 0x24]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x16
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r0, 0x32
- ldrsh r3, [r4, r0]
- subs r3, 0x20
- movs r2, 0x80
- lsls r2, 1
- lsls r3, 25
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x20
- bgt _081810B2
- ldr r0, =sub_81810C4
- str r0, [r4, 0x1C]
-_081810B2:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181068
-
- thumb_func_start sub_81810C4
-sub_81810C4: @ 81810C4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x24]
- subs r1, 0x1
- strh r1, [r4, 0x24]
- ldrh r0, [r4, 0x26]
- adds r0, 0x1
- strh r0, [r4, 0x26]
- lsls r1, 16
- cmp r1, 0
- bgt _081810E8
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_081810E8:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81810C4
-
- thumb_func_start pokemonanimfunc_29
-pokemonanimfunc_29: @ 81810F8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- ldr r0, =sub_8181110
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_29
-
- thumb_func_start sub_8181110
-sub_8181110: @ 8181110
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x24]
- adds r1, 0x1
- strh r1, [r4, 0x24]
- ldrh r0, [r4, 0x26]
- subs r0, 0x1
- strh r0, [r4, 0x26]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0xF
- ble _08181134
- movs r0, 0
- strh r0, [r4, 0x32]
- ldr r0, =sub_8181144
- str r0, [r4, 0x1C]
-_08181134:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181110
-
- thumb_func_start sub_8181144
-sub_8181144: @ 8181144
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x32]
- adds r0, 0x10
- strh r0, [r4, 0x32]
- ldrh r2, [r4, 0x24]
- movs r0, 0x24
- ldrsh r1, [r4, r0]
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- bgt _0818117C
- ldr r0, =0x0000fff0
- strh r0, [r4, 0x24]
- movs r0, 0x10
- strh r0, [r4, 0x26]
- movs r0, 0
- strh r0, [r4, 0x32]
- ldr r0, =sub_81811A4
- str r0, [r4, 0x1C]
- b _08181186
- .pool
-_0818117C:
- subs r0, r2, 0x2
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x26]
- adds r0, 0x2
- strh r0, [r4, 0x26]
-_08181186:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x32]
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8181144
-
- thumb_func_start sub_81811A4
-sub_81811A4: @ 81811A4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x24]
- adds r1, 0x1
- movs r2, 0
- strh r1, [r4, 0x24]
- ldrh r0, [r4, 0x26]
- subs r0, 0x1
- strh r0, [r4, 0x26]
- lsls r1, 16
- cmp r1, 0
- blt _081811CE
- strh r2, [r4, 0x24]
- strh r2, [r4, 0x26]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_081811CE:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81811A4
-
- thumb_func_start pokemonanimfunc_2A
-pokemonanimfunc_2A: @ 81811E0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x2
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- bl sub_8181214
- ldr r0, =sub_8181214
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_2A
-
- thumb_func_start sub_8181214
-sub_8181214: @ 8181214
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r6, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r6
- ldrh r0, [r1]
- cmp r0, 0
- beq _08181238
- subs r0, 0x1
- strh r0, [r1]
- b _0818134A
- .pool
-_08181238:
- adds r0, r4, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x32]
- movs r1, 0x32
- ldrsh r5, [r4, r1]
- cmp r5, 0
- bne _08181270
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F670
- movs r2, 0x2E
- ldrsh r1, [r4, r2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- ldrh r0, [r0, 0x2]
- strh r0, [r4, 0x3C]
- ldr r0, =0x0000ffff
- strh r0, [r4, 0x34]
- movs r0, 0x1
- negs r0, r0
- strh r0, [r4, 0x36]
- strh r5, [r4, 0x38]
- strh r5, [r4, 0x3A]
-_08181270:
- movs r3, 0x3C
- ldrsh r1, [r4, r3]
- movs r6, 0x34
- ldrsh r0, [r4, r6]
- lsls r0, 1
- muls r1, r0
- ldrh r0, [r4, 0x24]
- adds r1, r0
- strh r1, [r4, 0x24]
- ldrh r2, [r4, 0x3C]
- ldrh r0, [r4, 0x36]
- adds r3, r0, 0
- muls r3, r2
- adds r0, r3, 0
- ldrh r6, [r4, 0x26]
- adds r2, r0, r6
- strh r2, [r4, 0x26]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x8
- strh r0, [r4, 0x3A]
- adds r1, 0xF
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0x1E
- bls _081812B8
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- lsls r0, 4
- strh r0, [r4, 0x24]
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- negs r0, r0
- strh r0, [r4, 0x34]
- b _081812D4
- .pool
-_081812B8:
- adds r0, r2, 0
- adds r0, 0xF
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1E
- bls _081812DA
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- lsls r0, 4
- strh r0, [r4, 0x26]
- movs r6, 0x36
- ldrsh r0, [r4, r6]
- negs r0, r0
- strh r0, [r4, 0x36]
-_081812D4:
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
-_081812DA:
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0x5
- ble _08181332
- movs r2, 0x24
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bgt _08181332
- movs r3, 0
- strh r3, [r4, 0x24]
- strh r3, [r4, 0x26]
- ldr r5, =gUnknown_03001240
- movs r6, 0x2E
- ldrsh r0, [r4, r6]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldrh r2, [r1, 0x4]
- movs r6, 0x4
- ldrsh r0, [r1, r6]
- cmp r0, 0x1
- ble _08181328
- subs r0, r2, 0x1
- strh r0, [r1, 0x4]
- strh r3, [r4, 0x38]
- strh r3, [r4, 0x3A]
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0xA
- strh r1, [r0]
- b _08181332
- .pool
-_08181328:
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08181332:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3A]
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
-_0818134A:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181214
-
- thumb_func_start pokemonanimfunc_2B
-pokemonanimfunc_2B: @ 8181354
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r0, 0
- strh r0, [r4, 0x3A]
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8181370
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_2B
-
- thumb_func_start sub_8181370
-sub_8181370: @ 8181370
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3A]
- adds r0, 0x4
- strh r0, [r4, 0x3A]
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- lsls r0, 1
- movs r1, 0xFF
- ands r0, r1
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0xC0
- ble _081813BA
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _081813BA
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- b _081813D2
-_081813BA:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x40
- ble _081813DE
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081813DE
- ldr r1, =0xffffff00
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
-_081813D2:
- movs r3, 0
- bl sub_817F6D4
- ldrh r0, [r4, 0x3C]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
-_081813DE:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0xFF
- ble _08181404
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08181404:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181370
-
- thumb_func_start pokemonanimfunc_2C
-pokemonanimfunc_2C: @ 8181418
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- movs r2, 0
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bne _08181442
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- strh r2, [r4, 0x3A]
- strh r2, [r4, 0x38]
- strh r2, [r4, 0x36]
-_08181442:
- ldr r1, =gUnknown_0860AA64
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- lsls r2, r0, 1
- adds r0, r1, 0x1
- adds r0, r2, r0
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08181464
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _081814CE
- .pool
-_08181464:
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- bne _0818149A
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08181488
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000003ff
- movs r1, 0x10
- movs r2, 0x10
- bl BlendPalette
- b _08181494
- .pool
-_08181488:
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000003ff
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
-_08181494:
- movs r0, 0
- strh r0, [r4, 0x36]
- ldr r1, =gUnknown_0860AA64
-_0818149A:
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- lsls r0, 1
- adds r1, 0x1
- adds r0, r1
- ldrb r1, [r0]
- movs r3, 0x38
- ldrsh r0, [r4, r3]
- cmp r1, r0
- bne _081814C8
- movs r1, 0
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r1, [r4, 0x38]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x1
- strh r0, [r4, 0x3A]
- b _081814CE
- .pool
-_081814C8:
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
-_081814CE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_2C
-
- thumb_func_start sub_81814D4
-sub_81814D4: @ 81814D4
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _081814E6
- adds r0, r6, 0
- bl sub_817F670
-_081814E6:
- adds r0, r6, 0
- bl sub_817F70C
- ldr r4, =gUnknown_03001240
- movs r3, 0x2E
- ldrsh r1, [r6, r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r4
- movs r0, 0x32
- ldrsh r1, [r6, r0]
- movs r3, 0x8
- ldrsh r0, [r2, r3]
- cmp r1, r0
- ble _0818154C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r3, 0
- strh r3, [r6, 0x24]
- movs r0, 0x2E
- ldrsh r1, [r6, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrh r2, [r1, 0x4]
- movs r4, 0x4
- ldrsh r0, [r1, r4]
- cmp r0, 0x1
- ble _0818153C
- subs r0, r2, 0x1
- strh r0, [r1, 0x4]
- strh r3, [r6, 0x32]
- b _08181588
- .pool
-_0818153C:
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08181588
- .pool
-_0818154C:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 8
- movs r3, 0x8
- ldrsh r1, [r2, r3]
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0xA
- bl Sin
- negs r0, r0
- strh r0, [r6, 0x24]
- movs r5, 0x80
- lsls r5, 1
- ldr r1, =0x00000ccc
- adds r0, r4, 0
- bl Sin
- adds r3, r0, 0
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r5, 0
- bl sub_817F6D4
-_08181588:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- adds r0, r6, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81814D4
-
- thumb_func_start pokemonanimfunc_2D
-pokemonanimfunc_2D: @ 81815A0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x32
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_81814D4
- ldr r0, =sub_81814D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_2D
-
- thumb_func_start sub_81815D4
-sub_81815D4: @ 81815D4
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _081815E6
- adds r0, r6, 0
- bl sub_817F670
-_081815E6:
- adds r0, r6, 0
- bl sub_817F70C
- ldr r4, =gUnknown_03001240
- movs r3, 0x2E
- ldrsh r1, [r6, r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r4
- movs r0, 0x32
- ldrsh r1, [r6, r0]
- movs r3, 0x8
- ldrsh r0, [r2, r3]
- cmp r1, r0
- ble _0818164C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r3, 0
- strh r3, [r6, 0x24]
- movs r0, 0x2E
- ldrsh r1, [r6, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrh r2, [r1, 0x4]
- movs r4, 0x4
- ldrsh r0, [r1, r4]
- cmp r0, 0x1
- ble _0818163C
- subs r0, r2, 0x1
- strh r0, [r1, 0x4]
- strh r3, [r6, 0x32]
- b _0818168A
- .pool
-_0818163C:
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _0818168A
- .pool
-_0818164C:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- lsls r0, 8
- movs r3, 0x8
- ldrsh r1, [r2, r3]
- bl __divsi3
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0xA
- bl Sin
- negs r0, r0
- strh r0, [r6, 0x24]
- movs r5, 0x80
- lsls r5, 1
- ldr r1, =0x00000ccc
- adds r0, r4, 0
- bl Sin
- adds r3, r0, 0
- negs r3, r3
- lsls r3, 16
- lsrs r3, 16
- adds r0, r6, 0
- adds r1, r5, 0
- adds r2, r5, 0
- bl sub_817F6D4
-_0818168A:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- adds r0, r6, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81815D4
-
- thumb_func_start pokemonanimfunc_2E
-pokemonanimfunc_2E: @ 81816A0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x32
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_81815D4
- ldr r0, =sub_81815D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_2E
-
- thumb_func_start pokemonanimfunc_2F
-pokemonanimfunc_2F: @ 81816D4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- adds r0, r4, 0
- adds r0, 0x28
- movs r1, 0
- ldrsb r1, [r0, r1]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 1
- movs r1, 0xA
- bl __divsi3
- negs r0, r0
- strh r0, [r4, 0x3A]
- movs r0, 0x80
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8181708
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_2F
-
- thumb_func_start sub_8181708
-sub_8181708: @ 8181708
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3C]
- subs r0, 0x1
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- bl Cos
- ldrh r1, [r4, 0x3A]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- subs r3, 0x80
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0x78
- bgt _08181760
- movs r0, 0x78
- strh r0, [r4, 0x3C]
- movs r0, 0
- strh r0, [r4, 0x34]
- ldr r0, =sub_8181770
- str r0, [r4, 0x1C]
-_08181760:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181708
-
- thumb_func_start sub_8181770
-sub_8181770: @ 8181770
- push {lr}
- adds r1, r0, 0
- movs r2, 0x34
- ldrsh r0, [r1, r2]
- cmp r0, 0x14
- bne _08181784
- ldr r0, =sub_8181794
- str r0, [r1, 0x1C]
- movs r0, 0
- strh r0, [r1, 0x34]
-_08181784:
- ldrh r0, [r1, 0x34]
- adds r0, 0x1
- strh r0, [r1, 0x34]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181770
-
- thumb_func_start sub_8181794
-sub_8181794: @ 8181794
- push {r4-r6,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3C]
- adds r0, 0x2
- movs r6, 0
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- bl Cos
- ldrh r1, [r4, 0x3A]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r5, 0x80
- lsls r5, 1
- ldrh r3, [r4, 0x3C]
- subs r3, 0x80
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r5, 0
- bl sub_817F6D4
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _08181800
- strh r6, [r4, 0x24]
- strh r6, [r4, 0x26]
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r5, 0
- movs r3, 0
- bl sub_817F6D4
- strh r6, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =pokemonanimfunc_10
- str r0, [r4, 0x1C]
-_08181800:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181794
-
- thumb_func_start sub_8181810
-sub_8181810: @ 8181810
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r4, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r5, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r4
- ldrh r0, [r1]
- adds r6, r0, 0
- cmp r6, 0
- beq _08181834
- subs r0, 0x1
- strh r0, [r1]
- b _08181950
- .pool
-_08181834:
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _0818184A
- adds r0, r5, 0
- bl sub_817F670
- strh r6, [r5, 0x36]
- strh r6, [r5, 0x38]
- movs r0, 0x1
- strh r0, [r5, 0x32]
-_0818184A:
- movs r3, 0x38
- ldrsh r0, [r5, r3]
- cmp r0, 0
- bne _081818A2
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r4, 0x80
- lsls r4, 1
- adds r1, r4, 0
- bl Sin
- strh r0, [r5, 0x3C]
- movs r3, 0x36
- ldrsh r0, [r5, r3]
- movs r1, 0x10
- bl Sin
- strh r0, [r5, 0x26]
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r1, 0x20
- bl Sin
- adds r1, r0, 0
- strh r1, [r5, 0x3A]
- subs r1, r4, r1
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r5, 0x3C]
- adds r2, r4
- lsls r2, 16
- asrs r2, 16
- adds r0, r5, 0
- movs r3, 0
- bl sub_817F6D4
- movs r3, 0x36
- ldrsh r0, [r5, r3]
- cmp r0, 0x80
- bne _0818193A
- strh r6, [r5, 0x36]
- movs r0, 0x1
- strh r0, [r5, 0x38]
- b _0818193A
-_081818A2:
- cmp r0, 0x1
- bne _0818193A
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r1, 0x20
- bl Sin
- strh r0, [r5, 0x3C]
- movs r3, 0x36
- ldrsh r0, [r5, r3]
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r5, 0x26]
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- movs r1, 0x80
- bl Sin
- adds r1, r0, 0
- strh r1, [r5, 0x3A]
- movs r3, 0x80
- lsls r3, 1
- adds r2, r3, 0
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- ldrh r0, [r5, 0x3C]
- subs r2, r0
- lsls r2, 16
- asrs r2, 16
- adds r0, r5, 0
- movs r3, 0
- bl sub_817F6D4
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- cmp r0, 0x80
- bne _0818193A
- movs r3, 0x2E
- ldrsh r0, [r5, r3]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrh r2, [r1, 0x4]
- movs r3, 0x4
- ldrsh r0, [r1, r3]
- cmp r0, 0x1
- ble _08181922
- subs r0, r2, 0x1
- strh r0, [r1, 0x4]
- movs r0, 0x2E
- ldrsh r1, [r5, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xA
- strh r1, [r0]
- strh r6, [r5, 0x36]
- strh r6, [r5, 0x38]
- b _0818193A
-_08181922:
- movs r2, 0x80
- lsls r2, 1
- adds r0, r5, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r5, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
-_0818193A:
- ldr r2, =gUnknown_03001240
- movs r3, 0x2E
- ldrsh r1, [r5, r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x6]
- ldrh r1, [r5, 0x36]
- adds r0, r1
- strh r0, [r5, 0x36]
-_08181950:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181810
-
- thumb_func_start pokemonanimfunc_30
-pokemonanimfunc_30: @ 8181960
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x4
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- bl sub_8181810
- ldr r0, =sub_8181810
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_30
-
- thumb_func_start pokemonanimfunc_31
-pokemonanimfunc_31: @ 8181994
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r4, [r5, r0]
- adds r0, r5, 0
- bl sub_817F70C
- movs r0, 0x80
- lsls r0, 2
- cmp r4, r0
- ble _081819B8
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
- movs r0, 0
- strh r0, [r5, 0x24]
- b _08181A62
- .pool
-_081819B8:
- movs r1, 0x32
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bge _081819C2
- adds r0, 0x7F
-_081819C2:
- asrs r0, 7
- cmp r0, 0x1
- beq _081819F8
- cmp r0, 0x1
- bgt _081819D2
- cmp r0, 0
- beq _081819DC
- b _08181A48
-_081819D2:
- cmp r0, 0x2
- beq _08181A12
- cmp r0, 0x3
- beq _08181A2A
- b _08181A48
-_081819DC:
- adds r0, r4, 0
- cmp r4, 0
- bge _081819E4
- adds r0, 0x7F
-_081819E4:
- asrs r0, 7
- lsls r0, 7
- subs r0, r4, r0
- lsls r0, 3
- negs r0, r0
- cmp r0, 0
- bge _081819F4
- adds r0, 0x7F
-_081819F4:
- asrs r0, 7
- b _08181A46
-_081819F8:
- adds r0, r4, 0
- cmp r4, 0
- bge _08181A00
- adds r0, 0x7F
-_08181A00:
- asrs r0, 7
- lsls r0, 7
- subs r0, r4, r0
- cmp r0, 0
- bge _08181A0C
- adds r0, 0xF
-_08181A0C:
- asrs r0, 4
- subs r0, 0x8
- b _08181A46
-_08181A12:
- adds r0, r4, 0
- cmp r4, 0
- bge _08181A1A
- adds r0, 0x7F
-_08181A1A:
- asrs r0, 7
- lsls r0, 7
- subs r0, r4, r0
- cmp r0, 0
- bge _08181A26
- adds r0, 0xF
-_08181A26:
- asrs r0, 4
- b _08181A46
-_08181A2A:
- adds r0, r4, 0
- cmp r4, 0
- bge _08181A32
- adds r0, 0x7F
-_08181A32:
- asrs r0, 7
- lsls r0, 7
- subs r0, r4, r0
- lsls r0, 3
- negs r0, r0
- cmp r0, 0
- bge _08181A42
- adds r0, 0x7F
-_08181A42:
- asrs r0, 7
- adds r0, 0x8
-_08181A46:
- strh r0, [r5, 0x24]
-_08181A48:
- adds r0, r4, 0
- cmp r4, 0
- bge _08181A50
- adds r0, 0x7F
-_08181A50:
- asrs r0, 7
- lsls r0, 7
- subs r0, r4, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
-_08181A62:
- strh r0, [r5, 0x26]
- ldrh r0, [r5, 0x32]
- adds r0, 0xC
- strh r0, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_31
-
- thumb_func_start pokemonanimfunc_32
-pokemonanimfunc_32: @ 8181A78
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldr r0, =0x0000ffff
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_817F670
- strh r5, [r4, 0x34]
- adds r0, r4, 0
- bl sub_8181ABC
- ldr r0, =sub_8181ABC
- str r0, [r4, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_32
-
- thumb_func_start sub_8181ABC
-sub_8181ABC: @ 8181ABC
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r6, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r6
- ldrh r0, [r1]
- adds r5, r0, 0
- cmp r5, 0
- beq _08181AE0
- subs r0, 0x1
- strh r0, [r1]
- b _08181B44
- .pool
-_08181AE0:
- adds r0, r4, 0
- bl sub_817F70C
- movs r1, 0x32
- ldrsh r2, [r4, r1]
- adds r0, r2, 0
- cmp r0, 0x80
- ble _08181AFC
- strh r5, [r4, 0x32]
- ldr r0, =sub_8181B4C
- str r0, [r4, 0x1C]
- b _08181B3E
- .pool
-_08181AFC:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- movs r3, 0x8
- ldrsh r0, [r1, r3]
- lsls r3, r0, 3
- adds r0, r2, 0
- cmp r2, 0
- bge _08181B16
- adds r0, 0x7F
-_08181B16:
- asrs r0, 7
- lsls r0, 7
- subs r1, r2, r0
- adds r0, r3, 0
- muls r0, r1
- cmp r0, 0
- bge _08181B26
- adds r0, 0x7F
-_08181B26:
- asrs r0, 7
- strh r0, [r4, 0x24]
- lsls r0, r1, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0xC
- strh r0, [r4, 0x32]
-_08181B3E:
- adds r0, r4, 0
- bl sub_817F70C
-_08181B44:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8181ABC
-
- thumb_func_start sub_8181B4C
-sub_8181B4C: @ 8181B4C
- push {r4-r6,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x30
- ble _08181B7C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r0, 0
- strh r0, [r4, 0x26]
- strh r0, [r4, 0x32]
- ldr r0, =sub_8181C2C
- str r0, [r4, 0x1C]
- b _08181C1A
- .pool
-_08181B7C:
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- movs r1, 0x40
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r6, r1, 0
- adds r0, r6
- lsls r0, 16
- lsrs r3, r0, 16
- ldrh r0, [r4, 0x32]
- subs r0, 0x10
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xF
- bhi _08181BBA
- ldrh r0, [r4, 0x34]
- adds r0, 0x8
- strh r0, [r4, 0x34]
- ldr r2, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r4, 0x24]
- ldrh r0, [r0, 0x8]
- subs r1, r0
- strh r1, [r4, 0x24]
-_08181BBA:
- movs r5, 0
- lsls r1, r3, 16
- asrs r2, r1, 16
- lsls r0, r6, 16
- asrs r0, 16
- adds r6, r1, 0
- cmp r2, r0
- ble _08181BD6
- subs r0, r2
- cmp r0, 0
- bge _08181BD2
- adds r0, 0x7
-_08181BD2:
- lsls r0, 13
- lsrs r5, r0, 16
-_08181BD6:
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- movs r1, 0x14
- bl Sin
- negs r0, r0
- lsls r1, r5, 16
- asrs r1, 16
- subs r0, r1
- strh r0, [r4, 0x26]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- movs r1, 0x20
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r1, r0
- lsls r1, 16
- asrs r1, 16
- asrs r2, r6, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x36]
- adds r0, 0x8
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x36]
-_08181C1A:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181B4C
-
- thumb_func_start sub_8181C2C
-sub_8181C2C: @ 8181C2C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r3, [r4, r0]
- cmp r3, 0x80
- ble _08181C90
- ldr r3, =gUnknown_03001240
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldrh r2, [r1, 0x4]
- movs r5, 0x4
- ldrsh r0, [r1, r5]
- cmp r0, 0x1
- ble _08181C7C
- subs r0, r2, 0x1
- movs r2, 0
- strh r0, [r1, 0x4]
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- movs r1, 0xA
- strh r1, [r0]
- strh r2, [r4, 0x34]
- strh r2, [r4, 0x32]
- strh r2, [r4, 0x36]
- ldr r0, =sub_8181ABC
- b _08181C84
- .pool
-_08181C7C:
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
-_08181C84:
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- b _08181CD0
- .pool
-_08181C90:
- ldr r2, =gUnknown_03001240
- movs r5, 0x2E
- ldrsh r1, [r4, r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x8
- ldrsh r5, [r0, r1]
- lsls r1, r5, 3
- adds r0, r3, 0
- cmp r3, 0
- bge _08181CAC
- adds r0, 0x7F
-_08181CAC:
- asrs r0, 7
- lsls r0, 7
- subs r2, r3, r0
- adds r0, r1, 0
- muls r0, r2
- cmp r0, 0
- bge _08181CBC
- adds r0, 0x7F
-_08181CBC:
- asrs r0, 7
- lsls r1, r5, 3
- subs r0, r1
- strh r0, [r4, 0x24]
- lsls r0, r2, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
-_08181CD0:
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0xC
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181C2C
-
- thumb_func_start sub_8181CE8
-sub_8181CE8: @ 8181CE8
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08181D00
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_08181D00:
- adds r0, r4, 0
- bl sub_817F70C
- movs r3, 0x3C
- ldrsh r0, [r4, r3]
- cmp r0, 0xFE
- ble _08181D60
- movs r5, 0
- strh r5, [r4, 0x24]
- strh r5, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldr r2, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- ldrh r2, [r1, 0x4]
- movs r3, 0x4
- ldrsh r0, [r1, r3]
- cmp r0, 0x1
- ble _08181D48
- subs r0, r2, 0x1
- strh r0, [r1, 0x4]
- strh r5, [r4, 0x32]
- strh r5, [r4, 0x3C]
- b _08181D52
- .pool
-_08181D48:
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08181D52:
- adds r0, r4, 0
- bl sub_817F70C
- b _08181DA6
- .pool
-_08181D60:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r3, 0x3C
- ldrsh r0, [r4, r3]
- movs r1, 0x20
- bl Sin
- adds r3, r0, 0
- movs r2, 0x80
- lsls r2, 1
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- ldr r2, =gUnknown_03001240
- movs r0, 0x2E
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r0, [r0, 0x6]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817F70C
-_08181DA6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181CE8
-
- thumb_func_start pokemonanimfunc_33
-pokemonanimfunc_33: @ 8181DB0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x4
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- bl sub_8181CE8
- ldr r0, =sub_8181CE8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_33
-
- thumb_func_start pokemonanimfunc_34
-pokemonanimfunc_34: @ 8181DE4
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08181DFC
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_08181DFC:
- adds r0, r4, 0
- bl sub_817F70C
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0xFE
- ble _08181E34
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- adds r0, r4, 0
- bl sub_817F70C
- b _08181E8A
- .pool
-_08181E34:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08181E4E
- adds r0, 0x7F
-_08181E4E:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Sin
- adds r3, r0, 0
- movs r2, 0x80
- lsls r2, 1
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817F70C
-_08181E8A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_34
-
- thumb_func_start pokemonanimfunc_35
-pokemonanimfunc_35: @ 8181E90
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r1, 0x32
- ldrsh r0, [r3, r1]
- cmp r0, 0
- bne _08181E9E
- strh r0, [r3, 0x3C]
-_08181E9E:
- ldrh r4, [r3, 0x32]
- movs r5, 0x32
- ldrsh r1, [r3, r5]
- ldrh r2, [r3, 0x3C]
- movs r5, 0x3C
- ldrsh r0, [r3, r5]
- cmp r1, r0
- bne _08181EC8
- movs r0, 0
- strh r0, [r3, 0x3C]
- adds r0, r4, 0x1
- strh r0, [r3, 0x32]
- adds r1, r3, 0
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r2, r1, 0
- b _08181ED8
-_08181EC8:
- adds r0, r2, 0x1
- strh r0, [r3, 0x3C]
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_08181ED8:
- movs r1, 0x32
- ldrsh r0, [r3, r1]
- cmp r0, 0xA
- ble _08181EEE
- ldrb r0, [r2]
- movs r1, 0x5
- negs r1, r1
- ands r1, r0
- strb r1, [r2]
- ldr r0, =sub_8184D88
- str r0, [r3, 0x1C]
-_08181EEE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_35
-
- thumb_func_start pokemonanimfunc_36
-pokemonanimfunc_36: @ 8181EF8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r0, 0
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8181F14
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_36
-
- thumb_func_start sub_8181F14
-sub_8181F14: @ 8181F14
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0x1F
- ble _08181F34
- movs r0, 0
- movs r1, 0x20
- strh r1, [r4, 0x3C]
- strh r0, [r4, 0x32]
- ldr r0, =sub_8181F50
- str r0, [r4, 0x1C]
- b _08181F38
- .pool
-_08181F34:
- adds r0, r1, 0x4
- strh r0, [r4, 0x3C]
-_08181F38:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8181F14
-
- thumb_func_start sub_8181F50
-sub_8181F50: @ 8181F50
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _08181F74
- ldr r0, =sub_8181FC0
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3A]
- b _08181FAE
- .pool
-_08181F74:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsls r0, 4
- negs r0, r0
- cmp r0, 0
- bge _08181F84
- ldr r1, =0x000001ff
- adds r0, r1
-_08181F84:
- asrs r0, 9
- strh r0, [r4, 0x24]
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08181F94
- adds r0, 0x7F
-_08181F94:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0xC
- strh r0, [r4, 0x32]
-_08181FAE:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8181F50
-
- thumb_func_start sub_8181FC0
-sub_8181FC0: @ 8181FC0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3C]
- subs r0, 0x2
- movs r1, 0
- strh r0, [r4, 0x3C]
- lsls r0, 16
- cmp r0, 0
- bge _08181FEC
- strh r1, [r4, 0x3C]
- strh r1, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08181FFE
- .pool
-_08181FEC:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- lsls r0, 17
- asrs r0, 16
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
-_08181FFE:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8181FC0
-
- thumb_func_start pokemonanimfunc_37
-pokemonanimfunc_37: @ 818201C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08182036
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_08182036:
- adds r0, r4, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0xFF
- ble _08182060
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _081820A6
- .pool
-_08182060:
- adds r0, r1, 0
- adds r0, 0x10
- strh r0, [r4, 0x3C]
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182072
- adds r0, 0x7F
-_08182072:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182092
- adds r0, 0x7F
-_08182092:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
-_081820A6:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081820B2
- adds r0, 0x7F
-_081820B2:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- bl Sin
- adds r3, r0, 0
- movs r2, 0x80
- lsls r2, 1
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_37
-
- thumb_func_start pokemonanimfunc_38
-pokemonanimfunc_38: @ 81820E0
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r0, 0
- strh r0, [r4, 0x3C]
- strh r0, [r4, 0x36]
- ldr r0, =sub_81820FC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_38
-
- thumb_func_start sub_81820FC
-sub_81820FC: @ 81820FC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0x18
- ble _0818212C
- ldrh r0, [r4, 0x36]
- adds r0, 0x1
- strh r0, [r4, 0x36]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- ble _0818214A
- movs r0, 0
- strh r0, [r4, 0x36]
- ldr r0, =sub_818216C
- str r0, [r4, 0x1C]
- b _0818214A
- .pool
-_0818212C:
- adds r0, r1, 0x2
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
-_0818214A:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- negs r3, r3
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81820FC
-
- thumb_func_start sub_818216C
-sub_818216C: @ 818216C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0x20
- ble _0818218C
- movs r0, 0x1
- strh r0, [r4, 0x3A]
- ldr r0, =sub_81821CC
- str r0, [r4, 0x1C]
- b _081821AA
- .pool
-_0818218C:
- adds r0, r1, 0x2
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
-_081821AA:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- negs r3, r3
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_818216C
-
- thumb_func_start sub_81821CC
-sub_81821CC: @ 81821CC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- lsls r0, 2
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0x9
- ble _081821F0
- movs r0, 0x20
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8182248
- str r0, [r4, 0x1C]
-_081821F0:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3C]
- subs r0, 0x1D
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x6
- bls _08182224
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- negs r0, r0
- strh r0, [r4, 0x3A]
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
-_08182224:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- negs r3, r3
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81821CC
-
- thumb_func_start sub_8182248
-sub_8182248: @ 8182248
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bgt _08182270
- movs r0, 0
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0818228E
- .pool
-_08182270:
- subs r0, r1, 0x2
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x24]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
-_0818228E:
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3C]
- negs r3, r3
- lsls r3, 24
- lsrs r3, 16
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8182248
-
- thumb_func_start pokemonanimfunc_39
-pokemonanimfunc_39: @ 81822B0
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0x28
- ble _081822D0
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- b _0818235C
- .pool
-_081822D0:
- movs r0, 0x1
- ands r0, r1
- movs r5, 0xFF
- cmp r0, 0
- bne _081822DC
- movs r5, 0x1
-_081822DC:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- adds r0, r2, 0
- cmp r2, 0
- bge _081822E8
- adds r0, r2, 0x3
-_081822E8:
- asrs r0, 2
- lsls r0, 2
- subs r0, r2, r0
- lsls r0, 16
- asrs r1, r0, 16
- lsrs r0, 31
- adds r1, r0
- asrs r1, 1
- cmp r1, 0
- bne _0818232C
- lsls r0, r2, 7
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0818230C
- adds r0, 0xFF
-_0818230C:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- bl Sin
- lsls r1, r5, 24
- asrs r1, 24
- adds r2, r0, 0
- muls r2, r1
- adds r0, r2, 0
- strh r0, [r4, 0x24]
- negs r0, r0
- b _0818235A
-_0818232C:
- lsls r0, r2, 7
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _0818233C
- adds r0, 0xFF
-_0818233C:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x10
- bl Sin
- lsls r0, 16
- asrs r0, 16
- negs r0, r0
- lsls r1, r5, 24
- asrs r1, 24
- muls r0, r1
- strh r0, [r4, 0x24]
-_0818235A:
- strh r0, [r4, 0x26]
-_0818235C:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_39
-
- thumb_func_start pokemonanimfunc_3A
-pokemonanimfunc_3A: @ 8182370
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08182392
- adds r0, r4, 0
- bl sub_817F670
- strh r5, [r4, 0x38]
- strh r5, [r4, 0x3A]
- strh r5, [r4, 0x3C]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_08182392:
- ldrh r1, [r4, 0x3A]
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- cmp r0, 0
- ble _081823E4
- subs r0, r1, 0x1
- strh r0, [r4, 0x3A]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0x3
- beq _08182494
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- lsls r0, 3
- movs r1, 0x14
- bl __divsi3
- adds r1, r0, 0
- ldrh r0, [r4, 0x3C]
- lsls r1, 16
- asrs r1, 16
- subs r0, r1
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x40
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r2, r1, 0
- lsls r0, 16
- asrs r0, 16
- subs r2, r0
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- b _08182494
-_081823E4:
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- bne _08182424
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0x3F
- ble _08182410
- movs r0, 0x40
- strh r0, [r4, 0x3C]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08182410:
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x40
- bl Cos
- lsls r0, 16
- lsrs r3, r0, 16
- b _08182474
- .pool
-_08182424:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x40
- bl Sin
- lsls r0, 16
- lsrs r3, r0, 16
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0x3F
- ble _08182448
- movs r0, 0
- movs r1, 0x3
- strh r1, [r4, 0x38]
- movs r1, 0xA
- strh r1, [r4, 0x3A]
- strh r0, [r4, 0x3C]
- b _08182474
-_08182448:
- lsls r0, r3, 16
- asrs r0, 16
- cmp r0, 0x30
- ble _0818245C
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _0818245C
- movs r0, 0x2
- b _0818246E
-_0818245C:
- lsls r0, r3, 16
- asrs r0, 16
- cmp r0, 0x10
- ble _08182474
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _08182474
- movs r0, 0x1
-_0818246E:
- strh r0, [r4, 0x38]
- movs r0, 0x14
- strh r0, [r4, 0x3A]
-_08182474:
- ldrh r0, [r4, 0x3C]
- adds r0, 0x2
- strh r0, [r4, 0x3C]
- movs r0, 0x80
- lsls r0, 1
- adds r2, r0, 0
- lsls r0, r3, 16
- asrs r0, 16
- subs r2, r0
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_08182494:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_3A
-
- thumb_func_start pokemonanimfunc_3B
-pokemonanimfunc_3B: @ 81824A0
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _081824BA
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_081824BA:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _081824E8
- movs r0, 0
- strh r0, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08182540
- .pool
-_081824E8:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081824F4
- adds r0, 0xFF
-_081824F4:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182518
- adds r0, 0x7F
-_08182518:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x60
- bl Sin
- adds r2, r0, 0
- movs r1, 0x80
- lsls r1, 1
- lsls r2, 16
- asrs r2, 16
- adds r2, r1
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
-_08182540:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_3B
-
- thumb_func_start pokemonanimfunc_3C
-pokemonanimfunc_3C: @ 8182548
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08182562
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_08182562:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r5, 0x80
- lsls r5, 1
- cmp r0, r5
- ble _08182590
- movs r0, 0
- strh r0, [r4, 0x26]
- adds r0, r4, 0
- adds r1, r5, 0
- adds r2, r5, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _081825D4
- .pool
-_08182590:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x10
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x4
- strh r0, [r4, 0x3C]
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081825AE
- adds r0, 0x3F
-_081825AE:
- asrs r0, 6
- lsls r0, 6
- subs r0, r1, r0
- lsls r0, 17
- asrs r0, 16
- movs r1, 0x80
- bl Sin
- adds r2, r0, 0
- lsls r2, 16
- asrs r2, 16
- adds r2, r5
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r5, 0
- movs r3, 0
- bl sub_817F6D4
-_081825D4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_3C
-
- thumb_func_start pokemonanimfunc_3D
-pokemonanimfunc_3D: @ 81825DC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- ldr r0, =sub_81825F8
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_3D
-
- thumb_func_start sub_81825F8
-sub_81825F8: @ 81825F8
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- movs r1, 0
- strh r0, [r4, 0x3C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3F
- ble _0818261C
- strh r1, [r4, 0x3C]
- strh r1, [r4, 0x3A]
- ldr r0, =sub_8182648
- str r0, [r4, 0x1C]
- movs r0, 0x40
- b _08182620
- .pool
-_0818261C:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
-_08182620:
- movs r1, 0x80
- bl Sin
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x80
- lsls r1, 1
- lsls r2, r0, 16
- asrs r2, 16
- adds r2, r1
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81825F8
-
- thumb_func_start sub_8182648
-sub_8182648: @ 8182648
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x3C]
- adds r0, 0x4
- strh r0, [r4, 0x3C]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5F
- ble _08182672
- movs r0, 0
- movs r1, 0x80
- bl Cos
- lsls r0, 16
- lsrs r2, r0, 16
- movs r0, 0
- strh r0, [r4, 0x3C]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x1
- strh r0, [r4, 0x3A]
- b _081826C8
-_08182672:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Sin
- movs r2, 0x3A
- ldrsh r1, [r4, r2]
- lsls r1, 2
- negs r1, r1
- subs r1, r0
- strh r1, [r4, 0x26]
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0x3F
- ble _081826A4
- ldr r5, =0x0000ffff
- adds r0, r1, 0
- subs r0, 0x40
- lsls r0, 16
- lsrs r0, 16
- b _081826A8
- .pool
-_081826A4:
- movs r5, 0x1
- movs r0, 0
-_081826A8:
- lsls r0, 16
- asrs r0, 15
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x80
- bl Cos
- lsls r1, r5, 16
- asrs r1, 16
- adds r2, r1, 0
- muls r2, r0
- adds r0, r2, 0
- lsls r0, 16
- lsrs r2, r0, 16
-_081826C8:
- movs r1, 0x80
- lsls r1, 1
- lsls r2, 16
- asrs r2, 16
- adds r2, r1
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x3
- bne _081826EE
- movs r0, 0
- strh r0, [r4, 0x3C]
- ldr r0, =sub_81826F8
- str r0, [r4, 0x1C]
-_081826EE:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8182648
-
- thumb_func_start sub_81826F8
-sub_81826F8: @ 81826F8
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x80
- bl Cos
- lsls r0, 16
- lsrs r5, r0, 16
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0xC
- bl Cos
- negs r0, r0
- strh r0, [r4, 0x26]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0x3F
- ble _08182742
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_08182742:
- movs r1, 0x80
- lsls r1, 1
- lsls r2, r5, 16
- asrs r2, 16
- adds r2, r1
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81826F8
-
- thumb_func_start sub_8182764
-sub_8182764: @ 8182764
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _08182798
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- b _081827F4
- .pool
-_08182798:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081827A4
- adds r0, 0xFF
-_081827A4:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- adds r0, r1, 0
- cmp r1, 0
- bge _081827CC
- adds r0, 0x7F
-_081827CC:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x60
- bl Sin
- adds r1, r0, 0
- lsls r1, 16
- movs r0, 0x80
- lsls r0, 17
- adds r1, r0
- asrs r1, 16
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
-_081827F4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8182764
-
- thumb_func_start pokemonanimfunc_3E
-pokemonanimfunc_3E: @ 81827FC
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08182822
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r1, 0x8
- strh r1, [r4, 0x3A]
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r4, 0x38]
- strh r1, [r4, 0x36]
-_08182822:
- adds r0, r4, 0
- bl sub_8182764
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_3E
-
- thumb_func_start sub_8182830
-sub_8182830: @ 8182830
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _08182864
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- b _081828C0
- .pool
-_08182864:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182870
- adds r0, 0xFF
-_08182870:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3A]
- ldrh r1, [r4, 0x3C]
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182898
- adds r0, 0x3F
-_08182898:
- asrs r0, 6
- lsls r0, 6
- subs r0, r1, r0
- lsls r0, 17
- asrs r0, 16
- movs r1, 0x80
- bl Sin
- adds r1, r0, 0
- lsls r1, 16
- movs r0, 0x80
- lsls r0, 17
- adds r1, r0
- asrs r1, 16
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F6D4
-_081828C0:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8182830
-
- thumb_func_start pokemonanimfunc_3F
-pokemonanimfunc_3F: @ 81828C8
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _081828EE
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x4
- strh r0, [r4, 0x3A]
- adds r0, 0xFC
- strh r0, [r4, 0x38]
- movs r0, 0x10
- strh r0, [r4, 0x36]
-_081828EE:
- adds r0, r4, 0
- bl sub_8182830
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_3F
-
- thumb_func_start pokemonanimfunc_40
-pokemonanimfunc_40: @ 81828FC
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _0818291A
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_0818291A:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _08182948
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0818299E
- .pool
-_08182948:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182954
- adds r0, 0xFF
-_08182954:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182978
- adds r0, 0x7F
-_08182978:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x60
- bl Sin
- adds r2, r0, 0
- lsls r2, 16
- movs r0, 0x80
- lsls r0, 17
- adds r2, r0
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_0818299E:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_40
-
- thumb_func_start pokemonanimfunc_41
-pokemonanimfunc_41: @ 81829AC
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _081829CA
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_081829CA:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _081829F8
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08182A5E
- .pool
-_081829F8:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- adds r1, r0, 0
- cmp r0, 0
- bge _08182A04
- adds r1, 0xFF
-_08182A04:
- asrs r1, 8
- lsls r1, 8
- subs r1, r0, r1
- lsls r1, 16
- asrs r0, r1, 16
- lsrs r1, 31
- adds r0, r1
- asrs r0, 1
- movs r1, 0x10
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- adds r1, r0, 0
- cmp r0, 0
- bge _08182A30
- adds r1, 0xFF
-_08182A30:
- asrs r1, 8
- lsls r1, 8
- subs r1, r0, r1
- lsls r1, 16
- asrs r0, r1, 16
- lsrs r1, 31
- adds r0, r1
- asrs r0, 1
- movs r1, 0x40
- bl Sin
- adds r2, r0, 0
- negs r2, r2
- lsls r2, 16
- movs r0, 0x80
- lsls r0, 17
- adds r2, r0
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_08182A5E:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_41
-
- thumb_func_start pokemonanimfunc_42
-pokemonanimfunc_42: @ 8182A6C
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08182A8A
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
-_08182A8A:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 2
- cmp r1, r0
- ble _08182AB8
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08182B16
- .pool
-_08182AB8:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182AC4
- adds r0, 0xFF
-_08182AC4:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x8
- strh r0, [r4, 0x3C]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- adds r1, r0, 0
- cmp r0, 0
- bge _08182AEA
- adds r1, 0xFF
-_08182AEA:
- asrs r1, 8
- lsls r1, 8
- subs r1, r0, r1
- lsls r1, 16
- asrs r0, r1, 16
- lsrs r1, 31
- adds r0, r1
- asrs r0, 1
- movs r1, 0x60
- bl Sin
- adds r2, r0, 0
- lsls r2, 16
- movs r0, 0x80
- lsls r0, 17
- adds r2, r0
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_08182B16:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_42
-
- thumb_func_start pokemonanimfunc_43
-pokemonanimfunc_43: @ 8182B24
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 4
- cmp r1, r0
- ble _08182B48
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3A]
- b _08182C08
- .pool
-_08182B48:
- movs r1, 0x32
- ldrsh r2, [r4, r1]
- adds r0, r2, 0
- cmp r2, 0
- bge _08182B56
- ldr r1, =0x000001ff
- adds r0, r2, r1
-_08182B56:
- asrs r3, r0, 9
- adds r1, r3, 0
- adds r0, r1, 0
- cmp r1, 0
- bge _08182B62
- adds r0, r1, 0x3
-_08182B62:
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _08182BA4
- cmp r0, 0x1
- bgt _08182B80
- cmp r0, 0
- beq _08182B8A
- b _08182BE2
- .pool
-_08182B80:
- cmp r0, 0x2
- beq _08182BB8
- cmp r0, 0x3
- beq _08182BCA
- b _08182BE2
-_08182B8A:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _08182B9C
- ldr r1, =0x000001ff
- adds r0, r1
-_08182B9C:
- asrs r0, 9
- b _08182BE0
- .pool
-_08182BA4:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08182BB2
- adds r0, 0x1F
-_08182BB2:
- asrs r0, 5
- subs r0, 0x10
- b _08182BE0
-_08182BB8:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08182BC6
- adds r0, 0x1F
-_08182BC6:
- asrs r0, 5
- b _08182BE0
-_08182BCA:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _08182BDC
- ldr r1, =0x000001ff
- adds r0, r1
-_08182BDC:
- asrs r0, 9
- adds r0, 0x10
-_08182BE0:
- strh r0, [r4, 0x24]
-_08182BE2:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08182BEE
- adds r0, 0x7F
-_08182BEE:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x18
- strh r0, [r4, 0x32]
-_08182C08:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_43
-
- thumb_func_start pokemonanimfunc_44
-pokemonanimfunc_44: @ 8182C18
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _08182C34
- strh r0, [r4, 0x3A]
- movs r0, 0x40
- strh r0, [r4, 0x3C]
- adds r0, r1, 0x1
- strh r0, [r4, 0x32]
-_08182C34:
- ldrh r0, [r4, 0x3C]
- adds r1, r0, 0
- adds r1, 0x8
- movs r3, 0
- strh r1, [r4, 0x3C]
- ldrh r2, [r4, 0x3A]
- movs r5, 0x3A
- ldrsh r0, [r4, r5]
- cmp r0, 0x4
- bne _08182C52
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x3F
- ble _08182C60
- b _08182C5A
-_08182C52:
- lsls r0, r1, 16
- asrs r0, 16
- cmp r0, 0x7F
- ble _08182C60
-_08182C5A:
- strh r3, [r4, 0x3C]
- adds r0, r2, 0x1
- strh r0, [r4, 0x3A]
-_08182C60:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- cmp r0, 0x4
- bhi _08182D08
- lsls r0, 2
- ldr r1, =_08182C78
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_08182C78:
- .4byte _08182CEC
- .4byte _08182C8C
- .4byte _08182CAA
- .4byte _08182CCC
- .4byte _08182CEC
-_08182C8C:
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x8
- bl Cos
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r5, 0x3C
- ldrsh r0, [r4, r5]
- movs r1, 0x8
- bl Sin
- subs r0, 0x8
- strh r0, [r4, 0x26]
- b _08182D12
-_08182CAA:
- ldrh r0, [r4, 0x3C]
- adds r0, 0x80
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- adds r0, 0x8
- strh r0, [r4, 0x24]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Cos
- negs r0, r0
- strh r0, [r4, 0x26]
- b _08182D12
-_08182CCC:
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- movs r1, 0x8
- bl Cos
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x3C]
- adds r0, 0x80
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- adds r0, 0x8
- strh r0, [r4, 0x26]
- b _08182D12
-_08182CEC:
- movs r5, 0x3C
- ldrsh r0, [r4, r5]
- movs r1, 0x8
- bl Sin
- subs r0, 0x8
- strh r0, [r4, 0x24]
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Cos
- strh r0, [r4, 0x26]
- b _08182D12
-_08182D08:
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_08182D12:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_44
-
- thumb_func_start pokemonanimfunc_45
-pokemonanimfunc_45: @ 8182D24
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x20
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_8180714
- ldr r0, =sub_8180714
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_45
-
- thumb_func_start pokemonanimfunc_46
-pokemonanimfunc_46: @ 8182D40
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x50
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F8FC
- ldr r0, =sub_817F8FC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_46
-
- thumb_func_start pokemonanimfunc_47
-pokemonanimfunc_47: @ 8182D5C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x50
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F978
- ldr r0, =sub_817F978
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_47
-
- thumb_func_start pokemonanimfunc_48
-pokemonanimfunc_48: @ 8182D78
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 4
- strh r0, [r1, 0x6]
- ldrh r0, [r4, 0x3A]
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_8180900
- ldr r0, =sub_8180900
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_48
-
- thumb_func_start pokemonanimfunc_49
-pokemonanimfunc_49: @ 8182DB4
- push {lr}
- movs r1, 0x1
- strh r1, [r0, 0x3A]
- bl pokemonanimfunc_05
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_49
-
- thumb_func_start pokemonanimfunc_4A
-pokemonanimfunc_4A: @ 8182DC4
- push {lr}
- movs r1, 0x1
- strh r1, [r0, 0x3A]
- bl pokemonanimfunc_48
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_4A
-
- thumb_func_start pokemonanimfunc_4B
-pokemonanimfunc_4B: @ 8182DD4
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08182DE2
- strh r0, [r4, 0x2E]
-_08182DE2:
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bgt _08182DF6
- adds r0, r4, 0
- bl sub_817FC20
- movs r0, 0x1
- b _08182DF8
-_08182DF6:
- subs r0, r1, 0x1
-_08182DF8:
- strh r0, [r4, 0x2E]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_4B
-
- thumb_func_start pokemonanimfunc_4C
-pokemonanimfunc_4C: @ 8182E00
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1E
- strh r0, [r4, 0x2E]
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817FCDC
- ldr r0, =sub_817FCDC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_4C
-
- thumb_func_start pokemonanimfunc_4D
-pokemonanimfunc_4D: @ 8182E20
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1E
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817FD44
- ldr r0, =sub_817FD44
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_4D
-
- thumb_func_start pokemonanimfunc_4E
-pokemonanimfunc_4E: @ 8182E3C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 3
- strh r0, [r1, 0x6]
- strh r3, [r1]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_817FE30
- ldr r0, =sub_817FE30
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_4E
-
- thumb_func_start pokemonanimfunc_4F
-pokemonanimfunc_4F: @ 8182E7C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r1, 0x6]
- movs r0, 0x3
- strh r0, [r1, 0x8]
- movs r0, 0xC
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- bl sub_817FFF0
- ldr r0, =sub_817FFF0
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_4F
-
- thumb_func_start pokemonanimfunc_50
-pokemonanimfunc_50: @ 8182EBC
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x18
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_818031C
- ldr r0, =sub_818031C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_50
-
- thumb_func_start pokemonanimfunc_51
-pokemonanimfunc_51: @ 8182ED8
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x5
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_81804F8
- ldr r0, =sub_81804F8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_51
-
- thumb_func_start pokemonanimfunc_52
-pokemonanimfunc_52: @ 8182EF4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F9F4
- ldr r0, =sub_817F9F4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_52
-
- thumb_func_start pokemonanimfunc_53
-pokemonanimfunc_53: @ 8182F10
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3C
- strh r0, [r1]
- movs r0, 0x1E
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_817FF3C
- ldr r0, =sub_817FF3C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_53
-
- thumb_func_start pokemonanimfunc_54
-pokemonanimfunc_54: @ 8182F48
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x1
- strh r0, [r1, 0x2]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_8181214
- ldr r0, =sub_8181214
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_54
-
- thumb_func_start pokemonanimfunc_55
-pokemonanimfunc_55: @ 8182F80
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x4
- strh r0, [r1, 0x6]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_8181810
- ldr r0, =sub_8181810
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_55
-
- thumb_func_start pokemonanimfunc_56
-pokemonanimfunc_56: @ 8182FB8
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x1
- strh r0, [r1, 0x8]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_817F670
- strh r5, [r4, 0x34]
- adds r0, r4, 0
- bl sub_8181ABC
- ldr r0, =sub_8181ABC
- str r0, [r4, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_56
-
- thumb_func_start pokemonanimfunc_07
-pokemonanimfunc_07: @ 8182FFC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x2
- strh r0, [r1, 0x6]
- adds r0, r4, 0
- bl sub_8181CE8
- ldr r0, =sub_8181CE8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_07
-
- thumb_func_start pokemonanimfunc_08
-pokemonanimfunc_08: @ 8183030
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x4
- strh r0, [r1, 0x6]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_8181CE8
- ldr r0, =sub_8181CE8
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_08
-
- thumb_func_start pokemonanimfunc_0B
-pokemonanimfunc_0B: @ 8183068
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x64
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_81814D4
- ldr r0, =sub_81814D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0B
-
- thumb_func_start pokemonanimfunc_0C
-pokemonanimfunc_0C: @ 818309C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x32
- strh r0, [r1, 0x8]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_81814D4
- ldr r0, =sub_81814D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0C
-
- thumb_func_start pokemonanimfunc_0D
-pokemonanimfunc_0D: @ 81830D4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x64
- strh r0, [r1, 0x8]
- adds r0, r4, 0
- bl sub_81815D4
- ldr r0, =sub_81815D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0D
-
- thumb_func_start pokemonanimfunc_0E
-pokemonanimfunc_0E: @ 8183108
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x32
- strh r0, [r1, 0x8]
- movs r0, 0x2
- strh r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_81815D4
- ldr r0, =sub_81815D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_0E
-
- thumb_func_start sub_8183140
-sub_8183140: @ 8183140
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r0, 0x90
- lsls r0, 4
- cmp r2, r0
- ble _0818315C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _08183180
- .pool
-_0818315C:
- adds r1, r2, 0
- adds r1, 0xC0
- adds r0, r1, 0
- cmp r1, 0
- bge _0818316A
- ldr r3, =0x000001bf
- adds r0, r2, r3
-_0818316A:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- bl Sin
- ldrh r1, [r4, 0x3C]
- adds r0, r1
-_08183180:
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- ldrh r3, [r4, 0x32]
- adds r0, r3
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8183140
-
- thumb_func_start pokemonanimfunc_57
-pokemonanimfunc_57: @ 8183194
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x3C
- strh r0, [r4, 0x2E]
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183140
- ldr r0, =sub_8183140
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_57
-
- thumb_func_start pokemonanimfunc_58
-pokemonanimfunc_58: @ 81831B4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1E
- strh r0, [r4, 0x2E]
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183140
- ldr r0, =sub_8183140
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_58
-
- thumb_func_start pokemonanimfunc_59
-pokemonanimfunc_59: @ 81831D4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 4
- cmp r1, r0
- ble _081831F8
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3A]
- b _081832BC
- .pool
-_081831F8:
- movs r1, 0x32
- ldrsh r2, [r4, r1]
- adds r0, r2, 0
- cmp r2, 0
- bge _08183206
- ldr r1, =0x000001ff
- adds r0, r2, r1
-_08183206:
- asrs r3, r0, 9
- adds r1, r3, 0
- adds r0, r1, 0
- cmp r1, 0
- bge _08183212
- adds r0, r1, 0x3
-_08183212:
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _08183268
- cmp r0, 0x1
- bgt _08183230
- cmp r0, 0
- beq _0818323A
- b _08183298
- .pool
-_08183230:
- cmp r0, 0x2
- beq _0818324C
- cmp r0, 0x3
- beq _08183284
- b _08183298
-_0818323A:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08183248
- adds r0, 0x1F
-_08183248:
- asrs r0, 5
- b _08183296
-_0818324C:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _0818325E
- ldr r1, =0x000001ff
- adds r0, r1
-_0818325E:
- asrs r0, 9
- b _08183296
- .pool
-_08183268:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _0818327A
- ldr r1, =0x000001ff
- adds r0, r1
-_0818327A:
- asrs r0, 9
- adds r0, 0x10
- b _08183296
- .pool
-_08183284:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08183292
- adds r0, 0x1F
-_08183292:
- asrs r0, 5
- subs r0, 0x10
-_08183296:
- strh r0, [r4, 0x24]
-_08183298:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _081832A4
- adds r0, 0x7F
-_081832A4:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x18
- strh r0, [r4, 0x32]
-_081832BC:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_59
-
- thumb_func_start sub_81832C8
-sub_81832C8: @ 81832C8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- movs r0, 0
- mov r8, r0
- movs r2, 0x38
- ldrsh r1, [r6, r2]
- movs r2, 0x3A
- ldrsh r0, [r6, r2]
- cmp r1, r0
- ble _0818331A
- mov r0, r8
- strh r0, [r6, 0x26]
- strh r0, [r6, 0x38]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r1, [r6, 0x36]
- movs r2, 0x36
- ldrsh r0, [r6, r2]
- cmp r0, 0x1
- bgt _08183310
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _081833DC
- .pool
-_08183310:
- subs r0, r1, 0x1
- strh r0, [r6, 0x36]
- mov r0, r8
- strh r0, [r6, 0x3C]
- b _081833DC
-_0818331A:
- movs r1, 0x38
- ldrsh r5, [r6, r1]
- lsls r0, r5, 7
- movs r2, 0x3A
- ldrsh r4, [r6, r2]
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r4, 0
- bge _08183334
- adds r4, 0x3
-_08183334:
- asrs r1, r4, 2
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r1
- blt _08183358
- cmp r5, r0
- bge _08183358
- ldrh r0, [r6, 0x3C]
- adds r0, 0x33
- strh r0, [r6, 0x3C]
- movs r1, 0xFF
- mov r8, r1
- ands r1, r0
- mov r8, r1
-_08183358:
- movs r1, 0x30
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _0818337C
- lsls r4, r2, 16
- asrs r0, r4, 16
- movs r1, 0x10
- bl Sin
- ldr r2, =0xffffff00
- adds r1, r2, 0
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- b _08183392
- .pool
-_0818337C:
- lsls r4, r2, 16
- asrs r0, r4, 16
- movs r1, 0x10
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
-_08183392:
- adds r7, r4, 0
- ldrh r4, [r6, 0x34]
- lsls r4, 24
- lsrs r4, 24
- mov r5, r8
- adds r0, r4, 0
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl Sin
- adds r5, r0, 0
- asrs r0, r7, 16
- adds r1, r4, 0
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r2, r1, 0
- subs r2, r5
- subs r2, r0
- mov r0, r9
- lsls r1, r0, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F618
- ldrh r0, [r6, 0x38]
- adds r0, 0x1
- strh r0, [r6, 0x38]
-_081833DC:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81832C8
-
- thumb_func_start pokemonanimfunc_5A
-pokemonanimfunc_5A: @ 81833E8
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _0818340A
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x28
- strh r0, [r5, 0x3A]
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x38]
- strh r6, [r5, 0x3C]
-_0818340A:
- adds r0, r5, 0
- bl sub_81832C8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_5A
-
- thumb_func_start sub_8183418
-sub_8183418: @ 8183418
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r6, r0, 0
- movs r0, 0
- mov r8, r0
- movs r2, 0x38
- ldrsh r1, [r6, r2]
- movs r2, 0x3A
- ldrsh r0, [r6, r2]
- cmp r1, r0
- ble _0818346A
- mov r0, r8
- strh r0, [r6, 0x38]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r1, [r6, 0x36]
- movs r2, 0x36
- ldrsh r0, [r6, r2]
- cmp r0, 0x1
- bgt _08183460
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08183538
- .pool
-_08183460:
- subs r0, r1, 0x1
- strh r0, [r6, 0x36]
- mov r0, r8
- strh r0, [r6, 0x3C]
- b _08183538
-_0818346A:
- movs r1, 0x38
- ldrsh r5, [r6, r1]
- lsls r0, r5, 7
- movs r2, 0x3A
- ldrsh r4, [r6, r2]
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r0, 16
- mov r9, r0
- cmp r4, 0
- bge _08183486
- adds r4, 0x3
-_08183486:
- asrs r1, r4, 2
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r1
- blt _081834AC
- cmp r5, r0
- bge _081834AC
- ldrh r0, [r6, 0x3C]
- adds r0, 0x33
- strh r0, [r6, 0x3C]
- movs r1, 0xFF
- mov r8, r1
- mov r2, r8
- ands r2, r0
- mov r8, r2
-_081834AC:
- ldrh r0, [r6, 0x34]
- lsls r0, 24
- lsrs r7, r0, 24
- movs r1, 0x30
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _081834F0
- mov r2, r9
- lsls r0, r2, 16
- asrs r0, 16
- adds r1, r7, 0
- bl Sin
- adds r4, r0, 0
- mov r5, r8
- adds r0, r7, 0
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 23
- adds r0, r5, 0
- bl Sin
- ldr r1, =0xffffff00
- adds r0, r1
- adds r4, r0
- lsls r4, 16
- lsrs r1, r4, 16
- b _08183522
- .pool
-_081834F0:
- mov r4, r8
- adds r0, r7, 0
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 23
- adds r0, r4, 0
- bl Sin
- adds r4, r0, 0
- mov r2, r9
- lsls r0, r2, 16
- asrs r0, 16
- adds r1, r7, 0
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r1, r4
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
-_08183522:
- lsls r1, 16
- asrs r1, 16
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F618
- ldrh r0, [r6, 0x38]
- adds r0, 0x1
- strh r0, [r6, 0x38]
-_08183538:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8183418
-
- thumb_func_start pokemonanimfunc_5B
-pokemonanimfunc_5B: @ 8183544
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _08183566
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x28
- strh r0, [r5, 0x3A]
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x38]
- strh r6, [r5, 0x3C]
-_08183566:
- adds r0, r5, 0
- bl sub_8183418
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_5B
-
- thumb_func_start sub_8183574
-sub_8183574: @ 8183574
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r4, r0, 0
- ldrh r0, [r4, 0x32]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldrh r0, [r4, 0x3A]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r3, =gUnknown_0860AA80
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- lsls r1, r0, 1
- adds r0, r1, r3
- ldrb r5, [r0]
- adds r2, r5, 0
- cmp r5, 0xFF
- beq _081835A6
- ldrh r0, [r4, 0x3C]
- lsls r0, 24
- lsrs r5, r0, 24
-_081835A6:
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r6, [r0]
- movs r7, 0
- cmp r2, 0xFE
- beq _081835C2
- mov r1, r9
- subs r0, r6, r1
- muls r0, r5
- adds r1, r6, 0
- bl __divsi3
- lsls r0, 24
- lsrs r7, r0, 24
-_081835C2:
- cmp r5, 0xFF
- bne _081835D8
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x26]
- b _0818360A
- .pool
-_081835D8:
- mov r1, r8
- adds r1, 0xC0
- adds r0, r1, 0
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- adds r1, r7, 0
- bl Sin
- adds r0, r7
- strh r0, [r4, 0x26]
- cmp r9, r6
- bne _081835FC
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
- movs r0, 0
- b _08183608
-_081835FC:
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x32]
- adds r0, r1
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x1
-_08183608:
- strh r0, [r4, 0x3A]
-_0818360A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8183574
-
- thumb_func_start pokemonanimfunc_5C
-pokemonanimfunc_5C: @ 8183618
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x28
- strh r0, [r4, 0x2E]
- movs r0, 0x6
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183574
- ldr r0, =sub_8183574
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_5C
-
- thumb_func_start pokemonanimfunc_5D
-pokemonanimfunc_5D: @ 8183638
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x46
- strh r0, [r4, 0x2E]
- movs r0, 0x6
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_817FCDC
- ldr r0, =sub_817FCDC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_5D
-
- thumb_func_start pokemonanimfunc_5E
-pokemonanimfunc_5E: @ 8183658
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x14
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl sub_817F8FC
- ldr r0, =sub_817F8FC
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_5E
-
- thumb_func_start pokemonanimfunc_5F
-pokemonanimfunc_5F: @ 8183674
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0x28
- ble _08183690
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _081836CA
- .pool
-_08183690:
- movs r0, 0x1
- ands r0, r1
- movs r5, 0xFF
- cmp r0, 0
- bne _0818369C
- movs r5, 0x1
-_0818369C:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsls r0, 7
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _081836B0
- adds r0, 0xFF
-_081836B0:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x9
- bl Sin
- lsls r1, r5, 24
- asrs r1, 24
- adds r2, r0, 0
- muls r2, r1
- adds r0, r2, 0
-_081836CA:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_5F
-
- thumb_func_start pokemonanimfunc_60
-pokemonanimfunc_60: @ 81836D8
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x32]
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0x28
- ble _081836F4
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- b _0818372E
- .pool
-_081836F4:
- movs r0, 0x1
- ands r0, r1
- movs r5, 0xFF
- cmp r0, 0
- bne _08183700
- movs r5, 0x1
-_08183700:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsls r0, 7
- movs r1, 0x28
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _08183714
- adds r0, 0xFF
-_08183714:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0xC
- bl Sin
- lsls r1, r5, 24
- asrs r1, 24
- adds r2, r0, 0
- muls r2, r1
- adds r0, r2, 0
-_0818372E:
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_60
-
- thumb_func_start pokemonanimfunc_61
-pokemonanimfunc_61: @ 818373C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x46
- strh r0, [r4, 0x2E]
- movs r0, 0x6
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183140
- ldr r0, =sub_8183140
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_61
-
- thumb_func_start pokemonanimfunc_62
-pokemonanimfunc_62: @ 818375C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x18
- strh r0, [r4, 0x2E]
- movs r0, 0x6
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183574
- ldr r0, =sub_8183574
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_62
-
- thumb_func_start pokemonanimfunc_63
-pokemonanimfunc_63: @ 818377C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x38
- strh r0, [r4, 0x2E]
- movs r0, 0x9
- strh r0, [r4, 0x3C]
- adds r0, r4, 0
- bl sub_8183574
- ldr r0, =sub_8183574
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_63
-
- thumb_func_start pokemonanimfunc_64
-pokemonanimfunc_64: @ 818379C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F758
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_03001240
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x80
- lsls r0, 3
- strh r0, [r1, 0x6]
- movs r0, 0x6
- strh r0, [r1, 0x8]
- movs r0, 0x18
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- bl sub_817FFF0
- ldr r0, =sub_817FFF0
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_64
-
- thumb_func_start sub_81837DC
-sub_81837DC: @ 81837DC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r7, r0, 0
- movs r5, 0
- movs r0, 0x38
- ldrsh r1, [r7, r0]
- movs r2, 0x3A
- ldrsh r0, [r7, r2]
- cmp r1, r0
- ble _0818382C
- strh r5, [r7, 0x26]
- strh r5, [r7, 0x38]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r7, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- ldrh r1, [r7, 0x36]
- movs r2, 0x36
- ldrsh r0, [r7, r2]
- cmp r0, 0x1
- bgt _08183824
- adds r0, r7, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r7, 0x1C]
- b _0818392C
- .pool
-_08183824:
- subs r0, r1, 0x1
- strh r0, [r7, 0x36]
- strh r5, [r7, 0x3C]
- b _0818392C
-_0818382C:
- movs r0, 0x38
- ldrsh r6, [r7, r0]
- lsls r0, r6, 7
- movs r1, 0x3A
- ldrsh r4, [r7, r1]
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r4, 0
- bge _08183846
- adds r4, 0x3
-_08183846:
- asrs r1, r4, 2
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 24
- lsrs r0, 24
- cmp r6, r1
- blt _08183866
- cmp r6, r0
- bge _08183866
- ldrh r0, [r7, 0x3C]
- adds r0, 0x33
- strh r0, [r7, 0x3C]
- movs r5, 0xFF
- ands r5, r0
-_08183866:
- ldrh r0, [r7, 0x34]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- cmp r0, 0
- bne _081838B0
- lsls r2, 16
- mov r8, r2
- asrs r0, r2, 16
- mov r1, r9
- bl Sin
- adds r4, r0, 0
- lsls r6, r5, 16
- asrs r5, r6, 16
- mov r0, r9
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 23
- adds r0, r5, 0
- bl Sin
- ldr r2, =0xffffff00
- adds r4, r2
- adds r0, r4
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- mov r0, r8
- b _081838EA
- .pool
-_081838B0:
- lsls r2, 16
- mov r8, r2
- asrs r0, r2, 16
- mov r1, r9
- bl Sin
- adds r6, r0, 0
- lsls r5, 16
- asrs r4, r5, 16
- mov r0, r9
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 23
- adds r0, r4, 0
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2, 0
- subs r1, r6
- subs r1, r0
- lsls r1, 16
- lsrs r1, 16
- mov r10, r1
- mov r0, r8
- adds r6, r5, 0
-_081838EA:
- asrs r0, 16
- mov r1, r9
- bl Sin
- adds r5, r0, 0
- asrs r4, r6, 16
- mov r0, r9
- movs r1, 0x5
- bl __udivsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r2, r1, 0
- subs r2, r5
- subs r2, r0
- mov r0, r10
- lsls r1, r0, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r0, r7, 0
- movs r3, 0
- bl sub_817F618
- ldrh r0, [r7, 0x38]
- adds r0, 0x1
- strh r0, [r7, 0x38]
-_0818392C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81837DC
-
- thumb_func_start pokemonanimfunc_65
-pokemonanimfunc_65: @ 818393C
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _0818395E
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x28
- strh r0, [r5, 0x3A]
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x38]
- strh r6, [r5, 0x3C]
-_0818395E:
- adds r0, r5, 0
- bl sub_81837DC
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_65
-
- thumb_func_start pokemonanimfunc_66
-pokemonanimfunc_66: @ 818396C
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 4
- cmp r1, r0
- ble _08183990
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3A]
- b _08183A54
- .pool
-_08183990:
- movs r1, 0x32
- ldrsh r2, [r4, r1]
- adds r0, r2, 0
- cmp r2, 0
- bge _0818399E
- ldr r1, =0x000001ff
- adds r0, r2, r1
-_0818399E:
- asrs r3, r0, 9
- adds r1, r3, 0
- adds r0, r1, 0
- cmp r1, 0
- bge _081839AA
- adds r0, r1, 0x3
-_081839AA:
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _08183A00
- cmp r0, 0x1
- bgt _081839C8
- cmp r0, 0
- beq _081839D2
- b _08183A30
- .pool
-_081839C8:
- cmp r0, 0x2
- beq _081839E4
- cmp r0, 0x3
- beq _08183A1C
- b _08183A30
-_081839D2:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _081839E0
- adds r0, 0x1F
-_081839E0:
- asrs r0, 5
- b _08183A2E
-_081839E4:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _081839F6
- ldr r1, =0x000001ff
- adds r0, r1
-_081839F6:
- asrs r0, 9
- b _08183A2E
- .pool
-_08183A00:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _08183A12
- ldr r1, =0x000001ff
- adds r0, r1
-_08183A12:
- asrs r0, 9
- adds r0, 0x10
- b _08183A2E
- .pool
-_08183A1C:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08183A2A
- adds r0, 0x1F
-_08183A2A:
- asrs r0, 5
- subs r0, 0x10
-_08183A2E:
- strh r0, [r4, 0x24]
-_08183A30:
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08183A3C
- adds r0, 0x7F
-_08183A3C:
- asrs r0, 7
- lsls r0, 7
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x30
- strh r0, [r4, 0x32]
-_08183A54:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_66
-
- thumb_func_start pokemonanimfunc_67
-pokemonanimfunc_67: @ 8183A60
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r1, [r4, r0]
- movs r0, 0x80
- lsls r0, 4
- cmp r1, r0
- ble _08183A84
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x3A]
- b _08183B40
- .pool
-_08183A84:
- movs r1, 0x32
- ldrsh r2, [r4, r1]
- adds r0, r2, 0
- cmp r2, 0
- bge _08183A92
- ldr r1, =0x000001ff
- adds r0, r2, r1
-_08183A92:
- asrs r3, r0, 9
- adds r1, r3, 0
- adds r0, r1, 0
- cmp r1, 0
- bge _08183A9E
- adds r0, r1, 0x3
-_08183A9E:
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- beq _08183AF4
- cmp r0, 0x1
- bgt _08183ABC
- cmp r0, 0
- beq _08183AC6
- b _08183B24
- .pool
-_08183ABC:
- cmp r0, 0x2
- beq _08183AD8
- cmp r0, 0x3
- beq _08183B10
- b _08183B24
-_08183AC6:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08183AD4
- adds r0, 0x1F
-_08183AD4:
- asrs r0, 5
- b _08183B22
-_08183AD8:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _08183AEA
- ldr r1, =0x000001ff
- adds r0, r1
-_08183AEA:
- asrs r0, 9
- b _08183B22
- .pool
-_08183AF4:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 12
- negs r0, r0
- cmp r0, 0
- bge _08183B06
- ldr r1, =0x000001ff
- adds r0, r1
-_08183B06:
- asrs r0, 9
- adds r0, 0x10
- b _08183B22
- .pool
-_08183B10:
- lsls r0, r3, 9
- subs r0, r2, r0
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bge _08183B1E
- adds r0, 0x1F
-_08183B1E:
- asrs r0, 5
- subs r0, 0x10
-_08183B22:
- strh r0, [r4, 0x24]
-_08183B24:
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- movs r1, 0x60
- bl __modsi3
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x40
- strh r0, [r4, 0x32]
-_08183B40:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_67
-
- thumb_func_start sub_8183B4C
-sub_8183B4C: @ 8183B4C
- push {r4-r7,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08183B5E
- strh r0, [r4, 0x34]
-_08183B5E:
- ldr r7, =gUnknown_0860ADBE
- movs r2, 0x34
- ldrsh r1, [r4, r2]
- lsls r0, r1, 1
- adds r0, r1
- adds r5, r7, 0x2
- adds r0, r5
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl __divsi3
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- cmp r0, r1
- bne _08183B8C
- ldrh r0, [r4, 0x34]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r4, 0x34]
- strh r1, [r4, 0x32]
-_08183B8C:
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r6, r0, r1
- adds r0, r6, r5
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x38
- ldrsh r5, [r4, r1]
- adds r1, r5, 0
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bne _08183BCC
- ldrh r0, [r4, 0x3A]
- subs r0, 0x1
- strh r0, [r4, 0x3A]
- lsls r0, 16
- cmp r0, 0
- bne _08183BC8
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08183C06
- .pool
-_08183BC8:
- strh r1, [r4, 0x32]
- b _08183C06
-_08183BCC:
- adds r0, r6, r7
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- muls r0, r5
- ldrh r2, [r4, 0x24]
- adds r0, r2
- strh r0, [r4, 0x24]
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- lsls r0, r1, 1
- adds r0, r1
- adds r1, r7, 0x1
- adds r0, r1
- movs r1, 0
- ldrsb r1, [r0, r1]
- ldrh r0, [r4, 0x38]
- adds r2, r0, 0
- muls r2, r1
- adds r0, r2, 0
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F70C
-_08183C06:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8183B4C
-
- thumb_func_start pokemonanimfunc_68
-pokemonanimfunc_68: @ 8183C0C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1
- strh r0, [r4, 0x38]
- strh r0, [r4, 0x3A]
- adds r0, r4, 0
- bl sub_8183B4C
- ldr r0, =sub_8183B4C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_68
-
- thumb_func_start pokemonanimfunc_69
-pokemonanimfunc_69: @ 8183C2C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x2
- strh r0, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x3A]
- adds r0, r4, 0
- bl sub_8183B4C
- ldr r0, =sub_8183B4C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_69
-
- thumb_func_start pokemonanimfunc_6A
-pokemonanimfunc_6A: @ 8183C4C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x2
- strh r0, [r4, 0x38]
- strh r0, [r4, 0x3A]
- adds r0, r4, 0
- bl sub_8183B4C
- ldr r0, =sub_8183B4C
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_6A
-
- thumb_func_start sub_8183C6C
-sub_8183C6C: @ 8183C6C
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x3C]
- movs r2, 0x3C
- ldrsh r0, [r4, r2]
- cmp r0, 0xFF
- ble _08183CAE
- ldrh r1, [r4, 0x38]
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r0, 0x1
- bgt _08183CA4
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- b _08183CE8
- .pool
-_08183CA4:
- subs r0, r1, 0x1
- movs r1, 0
- strh r0, [r4, 0x38]
- strh r1, [r4, 0x3C]
- b _08183CE8
-_08183CAE:
- ldrh r0, [r4, 0x3A]
- adds r0, r1, r0
- strh r0, [r4, 0x3C]
- lsls r0, 16
- asrs r0, 16
- movs r5, 0x80
- lsls r5, 1
- cmp r0, r5
- ble _08183CC2
- strh r5, [r4, 0x3C]
-_08183CC2:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- movs r1, 0x40
- bl Sin
- adds r2, r0, 0
- lsls r2, 16
- asrs r2, 16
- subs r2, r5, r2
- lsls r2, 16
- asrs r2, 16
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
-_08183CE8:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8183C6C
-
- thumb_func_start pokemonanimfunc_6B
-pokemonanimfunc_6B: @ 8183CF0
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183D16
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x4
- strh r0, [r4, 0x3A]
- movs r0, 0x1
- strh r0, [r4, 0x38]
-_08183D16:
- adds r0, r4, 0
- bl sub_8183C6C
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_6B
-
- thumb_func_start pokemonanimfunc_6C
-pokemonanimfunc_6C: @ 8183D28
- push {r4,r5,lr}
- adds r4, r0, 0
- bl sub_817F70C
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183D4E
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
- movs r0, 0x2
- strh r0, [r4, 0x38]
-_08183D4E:
- adds r0, r4, 0
- bl sub_8183C6C
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_6C
-
- thumb_func_start pokemonanimfunc_6D
-pokemonanimfunc_6D: @ 8183D60
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183D88
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r4, 0x38]
- movs r0, 0x10
- strh r0, [r4, 0x36]
-_08183D88:
- adds r0, r4, 0
- bl sub_8182764
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_6D
-
- thumb_func_start pokemonanimfunc_6E
-pokemonanimfunc_6E: @ 8183D94
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183DBA
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x4
- strh r0, [r4, 0x3A]
- adds r0, 0xFC
- strh r0, [r4, 0x38]
- movs r0, 0x10
- strh r0, [r4, 0x36]
-_08183DBA:
- adds r0, r4, 0
- bl sub_8182764
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_6E
-
- thumb_func_start pokemonanimfunc_6F
-pokemonanimfunc_6F: @ 8183DC8
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183DF0
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r4, 0x38]
- movs r0, 0x10
- strh r0, [r4, 0x36]
-_08183DF0:
- adds r0, r4, 0
- bl sub_8182830
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_6F
-
- thumb_func_start pokemonanimfunc_70
-pokemonanimfunc_70: @ 8183DFC
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183E22
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- strh r5, [r4, 0x3C]
- movs r1, 0x8
- strh r1, [r4, 0x3A]
- movs r0, 0x80
- lsls r0, 2
- strh r0, [r4, 0x38]
- strh r1, [r4, 0x36]
-_08183E22:
- adds r0, r4, 0
- bl sub_8182830
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_70
-
- thumb_func_start pokemonanimfunc_71
-pokemonanimfunc_71: @ 8183E30
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08183E4A
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x5
- strh r0, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
-_08183E4A:
- adds r0, r4, 0
- bl sub_8180828
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_71
-
- thumb_func_start pokemonanimfunc_72
-pokemonanimfunc_72: @ 8183E58
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08183E72
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x3
- strh r0, [r4, 0x3C]
- movs r0, 0x4
- strh r0, [r4, 0x3A]
-_08183E72:
- adds r0, r4, 0
- bl sub_8180828
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_72
-
- thumb_func_start pokemonanimfunc_73
-pokemonanimfunc_73: @ 8183E80
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _08183EA2
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x1E
- strh r0, [r5, 0x3A]
- movs r0, 0x3C
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x3C]
-_08183EA2:
- adds r0, r5, 0
- bl sub_81832C8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_73
-
- thumb_func_start pokemonanimfunc_74
-pokemonanimfunc_74: @ 8183EB0
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183ED4
- movs r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x2
- strh r0, [r4, 0x36]
- movs r0, 0x14
- strh r0, [r4, 0x3A]
- movs r0, 0x46
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x3C]
-_08183ED4:
- adds r0, r4, 0
- bl sub_81832C8
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_74
-
- thumb_func_start pokemonanimfunc_75
-pokemonanimfunc_75: @ 8183EE0
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183F06
- movs r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x2
- strh r0, [r4, 0x36]
- movs r0, 0x14
- strh r0, [r4, 0x3A]
- movs r0, 0x46
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x38]
- strh r5, [r4, 0x3C]
-_08183F06:
- adds r0, r4, 0
- bl sub_8183418
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_75
-
- thumb_func_start pokemonanimfunc_76
-pokemonanimfunc_76: @ 8183F14
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _08183F38
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x1E
- strh r0, [r5, 0x3A]
- movs r0, 0x3C
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x38]
- strh r6, [r5, 0x3C]
-_08183F38:
- adds r0, r5, 0
- bl sub_8183418
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_76
-
- thumb_func_start pokemonanimfunc_77
-pokemonanimfunc_77: @ 8183F44
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08183F6A
- movs r0, 0x1
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x2
- strh r0, [r4, 0x36]
- movs r0, 0x14
- strh r0, [r4, 0x3A]
- movs r0, 0x46
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x38]
- strh r5, [r4, 0x3C]
-_08183F6A:
- adds r0, r4, 0
- bl sub_81837DC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_77
-
- thumb_func_start pokemonanimfunc_78
-pokemonanimfunc_78: @ 8183F78
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0x32
- ldrsh r6, [r5, r0]
- cmp r6, 0
- bne _08183F9C
- movs r4, 0x1
- strh r4, [r5, 0x32]
- adds r0, r5, 0
- bl sub_817F670
- strh r4, [r5, 0x36]
- movs r0, 0x1E
- strh r0, [r5, 0x3A]
- movs r0, 0x3C
- strh r0, [r5, 0x34]
- strh r6, [r5, 0x38]
- strh r6, [r5, 0x3C]
-_08183F9C:
- adds r0, r5, 0
- bl sub_81837DC
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_78
-
- thumb_func_start sub_8183FA8
-sub_8183FA8: @ 8183FA8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- cmp r0, 0xFF
- ble _08183FEA
- ldrh r2, [r4, 0x3A]
- movs r3, 0x3A
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- bgt _08183FD0
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x24]
- strh r0, [r4, 0x26]
- b _0818403E
- .pool
-_08183FD0:
- movs r0, 0x3C
- ldrsh r1, [r4, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08183FDC
- adds r0, 0xFF
-_08183FDC:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- strh r0, [r4, 0x3C]
- subs r0, r2, 0x1
- strh r0, [r4, 0x3A]
- b _0818403E
-_08183FEA:
- movs r1, 0x3C
- ldrsh r0, [r4, r1]
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r3, 0x3C
- ldrsh r2, [r4, r3]
- adds r1, r2, 0
- adds r1, 0xC0
- adds r0, r1, 0
- cmp r1, 0
- bge _0818400C
- ldr r3, =0x000001bf
- adds r0, r2, r3
-_0818400C:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x36
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x26]
- lsls r0, 16
- cmp r0, 0
- ble _0818402E
- movs r3, 0x26
- ldrsh r0, [r4, r3]
- negs r0, r0
- strh r0, [r4, 0x26]
-_0818402E:
- ldrh r0, [r4, 0x36]
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x34]
- ldrh r2, [r4, 0x3C]
- adds r0, r2
- strh r0, [r4, 0x3C]
-_0818403E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8183FA8
-
- thumb_func_start pokemonanimfunc_79
-pokemonanimfunc_79: @ 8184048
- push {lr}
- adds r1, r0, 0
- movs r0, 0x32
- ldrsh r2, [r1, r0]
- cmp r2, 0
- bne _08184066
- movs r0, 0x1
- strh r0, [r1, 0x32]
- strh r0, [r1, 0x3A]
- strh r2, [r1, 0x3C]
- movs r0, 0xC
- strh r0, [r1, 0x38]
- strh r0, [r1, 0x36]
- movs r0, 0x4
- strh r0, [r1, 0x34]
-_08184066:
- adds r0, r1, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_79
-
- thumb_func_start pokemonanimfunc_7A
-pokemonanimfunc_7A: @ 8184070
- push {lr}
- adds r1, r0, 0
- movs r0, 0x32
- ldrsh r2, [r1, r0]
- cmp r2, 0
- bne _0818408E
- movs r0, 0x1
- strh r0, [r1, 0x32]
- strh r0, [r1, 0x3A]
- strh r2, [r1, 0x3C]
- movs r0, 0xC
- strh r0, [r1, 0x38]
- strh r0, [r1, 0x36]
- movs r0, 0x6
- strh r0, [r1, 0x34]
-_0818408E:
- adds r0, r1, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7A
-
- thumb_func_start pokemonanimfunc_7B
-pokemonanimfunc_7B: @ 8184098
- push {lr}
- adds r1, r0, 0
- movs r0, 0x32
- ldrsh r2, [r1, r0]
- cmp r2, 0
- bne _081840B8
- movs r0, 0x1
- strh r0, [r1, 0x32]
- movs r0, 0x2
- strh r0, [r1, 0x3A]
- strh r2, [r1, 0x3C]
- movs r0, 0xC
- strh r0, [r1, 0x38]
- strh r0, [r1, 0x36]
- movs r0, 0x8
- strh r0, [r1, 0x34]
-_081840B8:
- adds r0, r1, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7B
-
- thumb_func_start sub_81840C4
-sub_81840C4: @ 81840C4
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r5, r1]
- movs r1, 0x80
- lsls r1, 1
- cmp r0, r1
- ble _081840FC
- movs r2, 0x3A
- ldrsh r1, [r5, r2]
- ldrh r2, [r5, 0x36]
- movs r3, 0x36
- ldrsh r0, [r5, r3]
- cmp r1, r0
- bgt _081840EC
- ldr r0, =sub_8184D88
- str r0, [r5, 0x1C]
- b _081840F4
- .pool
-_081840EC:
- adds r0, r2, 0x1
- movs r1, 0
- strh r0, [r5, 0x36]
- strh r1, [r5, 0x3C]
-_081840F4:
- movs r0, 0
- strh r0, [r5, 0x24]
- strh r0, [r5, 0x26]
- b _08184188
-_081840FC:
- cmp r0, 0x9F
- ble _08184126
- cmp r0, r1
- ble _08184106
- strh r1, [r5, 0x3C]
-_08184106:
- movs r0, 0x3C
- ldrsh r1, [r5, r0]
- adds r0, r1, 0
- cmp r1, 0
- bge _08184112
- adds r0, 0xFF
-_08184112:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x8
- bl Sin
- negs r0, r0
- b _08184154
-_08184126:
- cmp r0, 0x5F
- ble _0818414A
- movs r0, 0x60
- movs r1, 0x6
- bl Sin
- adds r4, r0, 0
- movs r1, 0x3C
- ldrsh r0, [r5, r1]
- subs r0, 0x60
- lsls r0, 17
- asrs r0, 16
- movs r1, 0x4
- bl Sin
- subs r4, r0
- strh r4, [r5, 0x26]
- b _08184156
-_0818414A:
- movs r2, 0x3C
- ldrsh r0, [r5, r2]
- movs r1, 0x6
- bl Sin
-_08184154:
- strh r0, [r5, 0x26]
-_08184156:
- movs r3, 0x3C
- ldrsh r0, [r5, r3]
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- movs r2, 0x38
- ldrsh r1, [r5, r2]
- bl Sin
- negs r0, r0
- lsls r0, 16
- lsrs r2, r0, 16
- ldrh r0, [r5, 0x36]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0818417E
- lsls r0, r2, 16
- negs r0, r0
- lsrs r2, r0, 16
-_0818417E:
- strh r2, [r5, 0x24]
- ldrh r0, [r5, 0x34]
- ldrh r3, [r5, 0x3C]
- adds r0, r3
- strh r0, [r5, 0x3C]
-_08184188:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81840C4
-
- thumb_func_start pokemonanimfunc_7C
-pokemonanimfunc_7C: @ 8184190
- push {lr}
- adds r2, r0, 0
- movs r0, 0x32
- ldrsh r3, [r2, r0]
- cmp r3, 0
- bne _081841B0
- movs r1, 0x1
- strh r1, [r2, 0x32]
- movs r0, 0x2
- strh r0, [r2, 0x3A]
- strh r3, [r2, 0x3C]
- movs r0, 0x10
- strh r0, [r2, 0x38]
- strh r1, [r2, 0x36]
- movs r0, 0x4
- strh r0, [r2, 0x34]
-_081841B0:
- adds r0, r2, 0
- bl sub_81840C4
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7C
-
- thumb_func_start pokemonanimfunc_7D
-pokemonanimfunc_7D: @ 81841BC
- push {lr}
- adds r2, r0, 0
- movs r0, 0x32
- ldrsh r3, [r2, r0]
- cmp r3, 0
- bne _081841DC
- movs r1, 0x1
- strh r1, [r2, 0x32]
- movs r0, 0x2
- strh r0, [r2, 0x3A]
- strh r3, [r2, 0x3C]
- movs r0, 0x10
- strh r0, [r2, 0x38]
- strh r1, [r2, 0x36]
- movs r0, 0x6
- strh r0, [r2, 0x34]
-_081841DC:
- adds r0, r2, 0
- bl sub_81840C4
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7D
-
- thumb_func_start pokemonanimfunc_7E
-pokemonanimfunc_7E: @ 81841E8
- push {lr}
- adds r2, r0, 0
- movs r0, 0x32
- ldrsh r3, [r2, r0]
- cmp r3, 0
- bne _08184208
- movs r1, 0x1
- strh r1, [r2, 0x32]
- movs r0, 0x3
- strh r0, [r2, 0x3A]
- strh r3, [r2, 0x3C]
- movs r0, 0x10
- strh r0, [r2, 0x38]
- strh r1, [r2, 0x36]
- movs r0, 0x8
- strh r0, [r2, 0x34]
-_08184208:
- adds r0, r2, 0
- bl sub_81840C4
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7E
-
- thumb_func_start pokemonanimfunc_7F
-pokemonanimfunc_7F: @ 8184214
- push {lr}
- adds r2, r0, 0
- movs r0, 0x32
- ldrsh r1, [r2, r0]
- cmp r1, 0
- bne _08184232
- movs r0, 0x1
- strh r0, [r2, 0x32]
- strh r0, [r2, 0x3A]
- strh r1, [r2, 0x3C]
- movs r1, 0x4
- strh r1, [r2, 0x38]
- movs r0, 0x6
- strh r0, [r2, 0x36]
- strh r1, [r2, 0x34]
-_08184232:
- adds r0, r2, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_7F
-
- thumb_func_start pokemonanimfunc_80
-pokemonanimfunc_80: @ 818423C
- push {lr}
- adds r1, r0, 0
- movs r0, 0x32
- ldrsh r2, [r1, r0]
- cmp r2, 0
- bne _0818425A
- movs r0, 0x1
- strh r0, [r1, 0x32]
- strh r0, [r1, 0x3A]
- strh r2, [r1, 0x3C]
- movs r0, 0x4
- strh r0, [r1, 0x38]
- movs r0, 0x6
- strh r0, [r1, 0x36]
- strh r0, [r1, 0x34]
-_0818425A:
- adds r0, r1, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_80
-
- thumb_func_start pokemonanimfunc_81
-pokemonanimfunc_81: @ 8184264
- push {lr}
- adds r1, r0, 0
- movs r0, 0x32
- ldrsh r2, [r1, r0]
- cmp r2, 0
- bne _08184286
- movs r0, 0x1
- strh r0, [r1, 0x32]
- movs r0, 0x2
- strh r0, [r1, 0x3A]
- strh r2, [r1, 0x3C]
- movs r0, 0x4
- strh r0, [r1, 0x38]
- movs r0, 0x6
- strh r0, [r1, 0x36]
- movs r0, 0x8
- strh r0, [r1, 0x34]
-_08184286:
- adds r0, r1, 0
- bl sub_8183FA8
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_81
-
- thumb_func_start sub_8184290
-sub_8184290: @ 8184290
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- lsls r0, 7
- movs r2, 0x3C
- ldrsh r1, [r4, r2]
- bl __divsi3
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- bl Sin
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- lsls r0, r1, 8
- negs r0, r0
- strh r0, [r4, 0x3A]
- movs r0, 0x36
- ldrsh r2, [r4, r0]
- adds r0, r4, 0
- movs r3, 0
- bl sub_817F3F0
- movs r2, 0x80
- lsls r2, 1
- ldrh r3, [r4, 0x3A]
- adds r0, r4, 0
- adds r1, r2, 0
- bl sub_817F6D4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8184290
-
- thumb_func_start pokemonanimfunc_82
-pokemonanimfunc_82: @ 81842DC
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08184300
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x3C
- strh r0, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x38]
- ldr r0, =0x0000ffe0
- strh r0, [r4, 0x36]
- movs r0, 0x1
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x2E]
-_08184300:
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- movs r3, 0x3C
- ldrsh r0, [r4, r3]
- cmp r1, r0
- ble _0818434C
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r2, 0
- strh r2, [r4, 0x24]
- strh r2, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r3, 0x34
- ldrsh r1, [r4, r3]
- lsls r0, 16
- asrs r0, 16
- cmp r1, r0
- bgt _08184348
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08184358
- .pool
-_08184348:
- strh r2, [r4, 0x32]
- b _08184352
-_0818434C:
- adds r0, r4, 0
- bl sub_8184290
-_08184352:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_08184358:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_82
-
- thumb_func_start pokemonanimfunc_83
-pokemonanimfunc_83: @ 8184360
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08184384
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x5A
- strh r0, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x38]
- ldr r0, =0x0000ffe0
- strh r0, [r4, 0x36]
- movs r0, 0x1
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x2E]
-_08184384:
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- movs r3, 0x3C
- ldrsh r0, [r4, r3]
- cmp r1, r0
- ble _081843D0
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r2, 0
- strh r2, [r4, 0x24]
- strh r2, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r3, 0x34
- ldrsh r1, [r4, r3]
- lsls r0, 16
- asrs r0, 16
- cmp r1, r0
- bgt _081843CC
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _081843DC
- .pool
-_081843CC:
- strh r2, [r4, 0x32]
- b _081843D6
-_081843D0:
- adds r0, r4, 0
- bl sub_8184290
-_081843D6:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_081843DC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_83
-
- thumb_func_start pokemonanimfunc_84
-pokemonanimfunc_84: @ 81843E4
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08184408
- adds r0, r4, 0
- bl sub_817F670
- movs r0, 0x1E
- strh r0, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x38]
- ldr r0, =0x0000ffe0
- strh r0, [r4, 0x36]
- movs r0, 0x2
- strh r0, [r4, 0x34]
- strh r5, [r4, 0x2E]
-_08184408:
- movs r2, 0x32
- ldrsh r1, [r4, r2]
- movs r3, 0x3C
- ldrsh r0, [r4, r3]
- cmp r1, r0
- ble _08184454
- movs r2, 0x80
- lsls r2, 1
- adds r0, r4, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- movs r2, 0
- strh r2, [r4, 0x24]
- strh r2, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- movs r3, 0x34
- ldrsh r1, [r4, r3]
- lsls r0, 16
- asrs r0, 16
- cmp r1, r0
- bgt _08184450
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _08184460
- .pool
-_08184450:
- strh r2, [r4, 0x32]
- b _0818445A
-_08184454:
- adds r0, r4, 0
- bl sub_8184290
-_0818445A:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
-_08184460:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_84
-
- thumb_func_start sub_8184468
-sub_8184468: @ 8184468
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r0, 0x32
- ldrsh r1, [r6, r0]
- movs r2, 0x3C
- ldrsh r0, [r6, r2]
- cmp r1, r0
- ble _0818449C
- movs r0, 0
- strh r0, [r6, 0x26]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r6, 0
- adds r1, r2, 0
- movs r3, 0
- bl sub_817F6D4
- adds r0, r6, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r6, 0x1C]
- b _08184544
- .pool
-_0818449C:
- movs r1, 0x32
- ldrsh r0, [r6, r1]
- movs r2, 0x3A
- ldrsh r4, [r6, r2]
- adds r1, r4, 0
- bl __modsi3
- lsls r0, 24
- lsrs r0, 16
- adds r1, r4, 0
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _081844BC
- adds r0, 0xFF
-_081844BC:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- lsrs r4, r0, 16
- ldrh r0, [r6, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _081844F8
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x20
- bl Sin
- movs r1, 0x80
- lsls r1, 1
- adds r5, r1, 0
- adds r0, r5
- strh r0, [r6, 0x36]
- adds r0, r4, 0
- movs r1, 0x20
- bl Sin
- adds r0, r5
- strh r0, [r6, 0x38]
- adds r0, r4, 0
- movs r1, 0x20
- b _0818451E
-_081844F8:
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x8
- bl Sin
- movs r2, 0x80
- lsls r2, 1
- adds r5, r2, 0
- adds r0, r5
- strh r0, [r6, 0x36]
- adds r0, r4, 0
- movs r1, 0x8
- bl Sin
- adds r0, r5
- strh r0, [r6, 0x38]
- adds r0, r4, 0
- movs r1, 0x8
-_0818451E:
- bl Sin
- lsls r0, 24
- lsrs r0, 24
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bge _08184530
- adds r0, 0x7
-_08184530:
- lsrs r0, 3
- strh r0, [r6, 0x26]
- movs r0, 0x36
- ldrsh r1, [r6, r0]
- movs r0, 0x38
- ldrsh r2, [r6, r0]
- adds r0, r6, 0
- movs r3, 0
- bl sub_817F6D4
-_08184544:
- ldrh r0, [r6, 0x32]
- adds r0, 0x1
- strh r0, [r6, 0x32]
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8184468
-
- thumb_func_start pokemonanimfunc_85
-pokemonanimfunc_85: @ 8184550
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08184570
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x26]
- adds r0, 0x2
- strh r0, [r4, 0x26]
- movs r0, 0x28
- strh r0, [r4, 0x3A]
- movs r0, 0x50
- strh r0, [r4, 0x3C]
-_08184570:
- adds r0, r4, 0
- bl sub_8184468
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_85
-
- thumb_func_start pokemonanimfunc_86
-pokemonanimfunc_86: @ 818457C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _0818459A
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x26]
- adds r0, 0x2
- strh r0, [r4, 0x26]
- movs r0, 0x28
- strh r0, [r4, 0x3A]
- strh r0, [r4, 0x3C]
-_0818459A:
- adds r0, r4, 0
- bl sub_8184468
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_86
-
- thumb_func_start pokemonanimfunc_87
-pokemonanimfunc_87: @ 81845A8
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081845C6
- adds r0, r4, 0
- bl sub_817F670
- ldrh r0, [r4, 0x26]
- adds r0, 0x2
- strh r0, [r4, 0x26]
- movs r0, 0x50
- strh r0, [r4, 0x3A]
- strh r0, [r4, 0x3C]
-_081845C6:
- adds r0, r4, 0
- bl sub_8184468
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_87
-
- thumb_func_start sub_81845D4
-sub_81845D4: @ 81845D4
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- ldrh r1, [r4, 0x32]
- subs r0, r1
- strh r0, [r4, 0x24]
- movs r0, 0x24
- ldrsh r1, [r4, r0]
- movs r2, 0x3A
- ldrsh r0, [r4, r2]
- cmn r1, r0
- bgt _081845FE
- ldrh r0, [r4, 0x3A]
- negs r0, r0
- strh r0, [r4, 0x24]
- movs r0, 0x2
- strh r0, [r4, 0x3C]
- ldr r0, =sub_8184610
- str r0, [r4, 0x1C]
-_081845FE:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81845D4
-
- thumb_func_start sub_8184610
-sub_8184610: @ 8184610
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3C]
- ldrh r2, [r4, 0x24]
- adds r1, r0, r2
- strh r1, [r4, 0x24]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- lsls r1, 16
- cmp r1, 0
- blt _0818462E
- ldr r0, =sub_8184640
- str r0, [r4, 0x1C]
-_0818462E:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8184610
-
- thumb_func_start sub_8184640
-sub_8184640: @ 8184640
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x3C]
- ldrh r2, [r4, 0x24]
- adds r1, r0, r2
- strh r1, [r4, 0x24]
- adds r0, 0x1
- strh r0, [r4, 0x3C]
- lsls r1, 16
- asrs r1, 16
- ldrh r2, [r4, 0x3A]
- movs r3, 0x3A
- ldrsh r0, [r4, r3]
- cmp r1, r0
- ble _08184668
- strh r2, [r4, 0x24]
- ldr r0, =sub_8184678
- str r0, [r4, 0x1C]
-_08184668:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8184640
-
- thumb_func_start sub_8184678
-sub_8184678: @ 8184678
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r2, [r4, 0x34]
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- movs r3, 0x38
- ldrsh r0, [r4, r3]
- cmp r1, r0
- blt _08184698
- ldr r0, =sub_81846B8
- str r0, [r4, 0x1C]
- b _081846AC
- .pool
-_08184698:
- ldrh r0, [r4, 0x36]
- ldrh r1, [r4, 0x24]
- adds r0, r1
- strh r0, [r4, 0x24]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- negs r0, r0
- strh r0, [r4, 0x36]
- adds r0, r2, 0x1
- strh r0, [r4, 0x34]
-_081846AC:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8184678
-
- thumb_func_start sub_81846B8
-sub_81846B8: @ 81846B8
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F70C
- ldrh r0, [r4, 0x24]
- subs r0, 0x2
- strh r0, [r4, 0x24]
- lsls r0, 16
- cmp r0, 0
- bgt _081846DA
- movs r0, 0
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- bl sub_817F77C
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
-_081846DA:
- adds r0, r4, 0
- bl sub_817F70C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81846B8
-
- thumb_func_start pokemonanimfunc_88
-pokemonanimfunc_88: @ 81846EC
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r2, 0
- movs r1, 0x4
- strh r1, [r4, 0x3C]
- movs r0, 0xC
- strh r0, [r4, 0x3A]
- movs r0, 0x10
- strh r0, [r4, 0x38]
- strh r1, [r4, 0x36]
- strh r2, [r4, 0x34]
- movs r0, 0x2
- strh r0, [r4, 0x32]
- ldr r0, =sub_81845D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_88
-
- thumb_func_start pokemonanimfunc_89
-pokemonanimfunc_89: @ 8184718
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r2, 0
- movs r1, 0x2
- strh r1, [r4, 0x3C]
- movs r0, 0x8
- strh r0, [r4, 0x3A]
- movs r0, 0xC
- strh r0, [r4, 0x38]
- strh r1, [r4, 0x36]
- strh r2, [r4, 0x34]
- movs r0, 0x1
- strh r0, [r4, 0x32]
- ldr r0, =sub_81845D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_89
-
- thumb_func_start pokemonanimfunc_8A
-pokemonanimfunc_8A: @ 8184744
- push {r4,lr}
- adds r4, r0, 0
- bl sub_817F670
- movs r1, 0
- strh r1, [r4, 0x3C]
- movs r0, 0x6
- strh r0, [r4, 0x3A]
- strh r0, [r4, 0x38]
- movs r0, 0x2
- strh r0, [r4, 0x36]
- strh r1, [r4, 0x34]
- movs r0, 0x1
- strh r0, [r4, 0x32]
- ldr r0, =sub_81845D4
- str r0, [r4, 0x1C]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pokemonanimfunc_8A
-
- thumb_func_start sub_8184770
-sub_8184770: @ 8184770
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x30]
- strh r0, [r1, 0x24]
- ldrh r2, [r1, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r1, r3]
- cmp r0, 0x1
- ble _0818478E
- movs r2, 0x30
- ldrsh r0, [r1, r2]
- negs r0, r0
- strh r0, [r1, 0x30]
- movs r0, 0
- b _08184790
-_0818478E:
- adds r0, r2, 0x1
-_08184790:
- strh r0, [r1, 0x2E]
- pop {r0}
- bx r0
- thumb_func_end sub_8184770
-
- thumb_func_start sub_8184798
-sub_8184798: @ 8184798
- push {r4,r5,lr}
- adds r4, r0, 0
- ldr r1, =gUnknown_0860AE7C
- movs r2, 0x34
- ldrsh r0, [r4, r2]
- lsls r0, 2
- adds r0, r1
- ldr r5, [r0]
- adds r0, r4, 0
- bl sub_8184770
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r1, r0, r5
- ldrb r0, [r1, 0x1]
- cmp r0, 0xFF
- bne _081847D0
- movs r0, 0
- strh r0, [r4, 0x24]
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0818482E
- .pool
-_081847D0:
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- cmp r0, 0x1
- bne _08184800
- ldrb r0, [r1]
- cmp r0, 0
- beq _081847F0
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000003ff
- movs r1, 0x10
- movs r2, 0x10
- bl BlendPalette
- b _081847FC
- .pool
-_081847F0:
- ldrh r0, [r4, 0x3C]
- ldr r3, =0x000003ff
- movs r1, 0x10
- movs r2, 0
- bl BlendPalette
-_081847FC:
- movs r0, 0
- strh r0, [r4, 0x36]
-_08184800:
- movs r1, 0x3A
- ldrsh r0, [r4, r1]
- lsls r0, 2
- adds r0, r5
- ldrb r1, [r0, 0x1]
- movs r2, 0x38
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bne _08184828
- movs r1, 0
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r1, [r4, 0x38]
- ldrh r0, [r4, 0x3A]
- adds r0, 0x1
- strh r0, [r4, 0x3A]
- b _0818482E
- .pool
-_08184828:
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
-_0818482E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8184798
-
- thumb_func_start pokemonanimfunc_8B
-pokemonanimfunc_8B: @ 8184834
- push {r4,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x32]
- adds r0, 0x1
- movs r3, 0
- strh r0, [r2, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bne _08184860
- ldrb r0, [r2, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r4, 0x80
- lsls r4, 1
- adds r1, r4, 0
- adds r0, r1
- strh r0, [r2, 0x3C]
- strh r3, [r2, 0x3A]
- strh r3, [r2, 0x38]
- strh r3, [r2, 0x36]
- strh r3, [r2, 0x34]
-_08184860:
- adds r0, r2, 0
- bl sub_8184798
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_8B
-
- thumb_func_start pokemonanimfunc_8C
-pokemonanimfunc_8C: @ 818486C
- push {r4,r5,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x32]
- adds r0, 0x1
- movs r3, 0
- strh r0, [r2, 0x32]
- lsls r0, 16
- asrs r4, r0, 16
- cmp r4, 0x1
- bne _08184898
- ldrb r0, [r2, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r5, 0x80
- lsls r5, 1
- adds r1, r5, 0
- adds r0, r1
- strh r0, [r2, 0x3C]
- strh r3, [r2, 0x3A]
- strh r3, [r2, 0x38]
- strh r3, [r2, 0x36]
- strh r4, [r2, 0x34]
-_08184898:
- adds r0, r2, 0
- bl sub_8184798
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_8C
-
- thumb_func_start pokemonanimfunc_8D
-pokemonanimfunc_8D: @ 81848A4
- push {r4,lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x32]
- adds r0, 0x1
- movs r3, 0
- strh r0, [r2, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x1
- bne _081848D2
- ldrb r0, [r2, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r4, 0x80
- lsls r4, 1
- adds r1, r4, 0
- adds r0, r1
- strh r0, [r2, 0x3C]
- strh r3, [r2, 0x3A]
- strh r3, [r2, 0x38]
- strh r3, [r2, 0x36]
- movs r0, 0x2
- strh r0, [r2, 0x34]
-_081848D2:
- adds r0, r2, 0
- bl sub_8184798
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_8D
-
- thumb_func_start sub_81848E0
-sub_81848E0: @ 81848E0
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0x7F
- ble _08184904
- ldrh r0, [r4, 0x3C]
- movs r1, 0x10
- movs r2, 0
- movs r3, 0x1F
- bl BlendPalette
- ldr r0, =sub_8184D88
- str r0, [r4, 0x1C]
- b _0818492A
- .pool
-_08184904:
- movs r5, 0x32
- ldrsh r0, [r4, r5]
- movs r1, 0xC
- bl Sin
- adds r2, r0, 0
- strh r2, [r4, 0x3A]
- ldrh r0, [r4, 0x3C]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =gUnknown_0860AE88
- movs r5, 0x30
- ldrsh r1, [r4, r5]
- lsls r1, 1
- adds r1, r3
- ldrh r3, [r1]
- movs r1, 0x10
- bl BlendPalette
-_0818492A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_81848E0
-
- thumb_func_start sub_8184934
-sub_8184934: @ 8184934
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- cmp r1, r0
- bge _081849CC
- adds r0, r4, 0
- bl sub_817F70C
- movs r3, 0x38
- ldrsh r1, [r4, r3]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r1, r0
- ble _08184970
- ldrh r0, [r4, 0x34]
- adds r0, 0x1
- movs r2, 0
- strh r0, [r4, 0x34]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x36
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bge _0818496C
- strh r2, [r4, 0x38]
-_0818496C:
- strh r2, [r4, 0x24]
- b _081849C6
-_08184970:
- movs r0, 0x34
- ldrsh r1, [r4, r0]
- lsrs r0, r1, 31
- adds r0, r1, r0
- asrs r0, 1
- lsls r0, 1
- subs r1, r0
- lsls r1, 16
- asrs r1, 15
- movs r0, 0x1
- subs r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- movs r2, 0x38
- ldrsh r1, [r4, r2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 7
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- bl __divsi3
- adds r1, r0, 0
- cmp r1, 0
- bge _081849A4
- adds r0, 0xFF
-_081849A4:
- asrs r0, 8
- lsls r0, 8
- subs r0, r1, r0
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x6
- bl Sin
- lsls r1, r5, 24
- asrs r1, 24
- adds r2, r1, 0
- muls r2, r0
- adds r0, r2, 0
- strh r0, [r4, 0x24]
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
-_081849C6:
- adds r0, r4, 0
- bl sub_817F70C
-_081849CC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8184934
-
- thumb_func_start pokemonanimfunc_8E
-pokemonanimfunc_8E: @ 81849D4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _081849FE
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0xA
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x2
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r2, [r4, 0x30]
-_081849FE:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184A0E
- adds r0, r4, 0
- bl sub_81848E0
-_08184A0E:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184A30
- adds r0, r4, 0
- bl sub_8184934
-_08184A30:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_8E
-
- thumb_func_start pokemonanimfunc_8F
-pokemonanimfunc_8F: @ 8184A3C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184A66
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x14
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r2, [r4, 0x30]
-_08184A66:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184A76
- adds r0, r4, 0
- bl sub_81848E0
-_08184A76:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184A98
- adds r0, r4, 0
- bl sub_8184934
-_08184A98:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_8F
-
- thumb_func_start pokemonanimfunc_90
-pokemonanimfunc_90: @ 8184AA4
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184ACE
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x50
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r2, [r4, 0x30]
-_08184ACE:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184ADE
- adds r0, r4, 0
- bl sub_81848E0
-_08184ADE:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184B00
- adds r0, r4, 0
- bl sub_8184934
-_08184B00:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_90
-
- thumb_func_start pokemonanimfunc_91
-pokemonanimfunc_91: @ 8184B0C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184B38
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0xA
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x2
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- movs r0, 0x1
- strh r0, [r4, 0x30]
-_08184B38:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184B48
- adds r0, r4, 0
- bl sub_81848E0
-_08184B48:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184B6A
- adds r0, r4, 0
- bl sub_8184934
-_08184B6A:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_91
-
- thumb_func_start pokemonanimfunc_92
-pokemonanimfunc_92: @ 8184B78
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184BA2
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x14
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r0, [r4, 0x30]
-_08184BA2:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184BB2
- adds r0, r4, 0
- bl sub_81848E0
-_08184BB2:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184BD4
- adds r0, r4, 0
- bl sub_8184934
-_08184BD4:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_92
-
- thumb_func_start pokemonanimfunc_93
-pokemonanimfunc_93: @ 8184BE0
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184C0A
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x50
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r0, [r4, 0x30]
-_08184C0A:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184C1A
- adds r0, r4, 0
- bl sub_81848E0
-_08184C1A:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184C3C
- adds r0, r4, 0
- bl sub_8184934
-_08184C3C:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_93
-
- thumb_func_start pokemonanimfunc_94
-pokemonanimfunc_94: @ 8184C48
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184C72
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0xA
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x2
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- strh r0, [r4, 0x30]
-_08184C72:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184C82
- adds r0, r4, 0
- bl sub_81848E0
-_08184C82:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184CA4
- adds r0, r4, 0
- bl sub_8184934
-_08184CA4:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_94
-
- thumb_func_start pokemonanimfunc_95
-pokemonanimfunc_95: @ 8184CB0
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184CDC
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x14
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- movs r0, 0x2
- strh r0, [r4, 0x30]
-_08184CDC:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184CEC
- adds r0, r4, 0
- bl sub_81848E0
-_08184CEC:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184D0E
- adds r0, r4, 0
- bl sub_8184934
-_08184D0E:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_95
-
- thumb_func_start pokemonanimfunc_96
-pokemonanimfunc_96: @ 8184D1C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- cmp r2, 0
- bne _08184D48
- ldrb r0, [r4, 0x5]
- lsrs r0, 4
- lsls r0, 4
- movs r3, 0x80
- lsls r3, 1
- adds r1, r3, 0
- adds r0, r1
- strh r0, [r4, 0x3C]
- movs r0, 0x50
- strh r0, [r4, 0x2E]
- strh r2, [r4, 0x38]
- movs r0, 0x1
- strh r0, [r4, 0x36]
- strh r2, [r4, 0x34]
- movs r0, 0x2
- strh r0, [r4, 0x30]
-_08184D48:
- ldrh r0, [r4, 0x32]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08184D58
- adds r0, r4, 0
- bl sub_81848E0
-_08184D58:
- movs r0, 0x32
- ldrsh r2, [r4, r0]
- movs r3, 0x2E
- ldrsh r1, [r4, r3]
- movs r3, 0x36
- ldrsh r0, [r4, r3]
- muls r1, r0
- movs r0, 0x80
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- cmp r2, r0
- blt _08184D7A
- adds r0, r4, 0
- bl sub_8184934
-_08184D7A:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pokemonanimfunc_96
-
- thumb_func_start sub_8184D88
-sub_8184D88: @ 8184D88
- push {lr}
- adds r2, r0, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08184D9C
- ldr r0, =SpriteCallbackDummy
- str r0, [r2, 0x1C]
-_08184D9C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8184D88
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index c105c7781..8fc10ba29 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -406,7 +406,7 @@ _080C7428:
_080C745C:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
movs r0, 0x4
strh r0, [r5, 0x8]
b _080C756A
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 2817b55b1..a04939c12 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -2049,7 +2049,7 @@ sub_81C4F24: @ 81C4F24
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, =sub_81C4F44
movs r1, 0xA
bl CreateTask
diff --git a/asm/pokenav.s b/asm/pokenav.s
index 896d9aae0..66ecf71d0 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -44,7 +44,7 @@ sub_81C72A4: @ 81C72A4
bl SetMainCallback2
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
pop {r0}
bx r0
.pool
@@ -7068,7 +7068,7 @@ sub_81CA914: @ 81CA914
bl TransferPlttBuffer
bl LoadOam
bl ProcessSpriteCopyRequests
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
thumb_func_end sub_81CA914
@@ -7101,7 +7101,7 @@ titlescreen_0: @ 81CA92C
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldr r0, =sub_81CA914
bl c3args_set_0toR1_1to0
ldr r0, =sub_81CA9EC
@@ -7220,7 +7220,7 @@ sub_81CAA3C: @ 81CAA3C
mov r0, sp
movs r6, 0
strh r6, [r0]
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
ldr r0, =0x010000a0
mov r8, r0
mov r0, sp
@@ -15647,7 +15647,7 @@ sub_81CEE44: @ 81CEE44
bl TransferPlttBuffer
adds r0, r4, 0
bl sub_81D2108
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r4}
pop {r0}
bx r0
@@ -22318,7 +22318,7 @@ sub_81D20BC: @ 81D20BC
b _081D20FA
.pool
_081D20D4:
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
ldrb r0, [r4]
adds r0, 0x1
strb r0, [r4]
@@ -22332,7 +22332,7 @@ _081D20E2:
ldr r0, [sp]
ldr r1, [sp, 0x4]
ldr r2, [sp, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
ldrb r0, [r4]
adds r0, 0x1
strb r0, [r4]
@@ -22366,7 +22366,7 @@ sub_81D2108: @ 81D2108
adds r0, r6, 0
bl sub_81D2634
movs r7, 0
- ldr r5, =gUnknown_02038C28
+ ldr r5, =gScanlineEffectRegBuffers
mov r12, r5
movs r0, 0xF0
lsls r0, 3
@@ -28072,7 +28072,7 @@ sub_81D4E30: @ 81D4E30
ldr r2, =0x00005503
adds r0, r2, 0
strh r0, [r1]
- bl sub_8009734
+ bl OpenLink
movs r0, 0x1
bl sub_800B330
pop {r0}
@@ -28128,11 +28128,11 @@ _081D4EBA:
thumb_func_start sub_81D4EC0
sub_81D4EC0: @ 81D4EC0
push {lr}
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
cmp r0, 0
beq _081D4EDC
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -28186,11 +28186,11 @@ _081D4F20:
.4byte _081D4FEC
.4byte _081D4FF8
_081D4F38:
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
cmp r0, 0
beq _081D4F88
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -28212,7 +28212,7 @@ _081D4F54:
strb r0, [r4]
b _081D500C
_081D4F6C:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -28248,7 +28248,7 @@ _081D4FA0:
movs r0, 0x5
b _081D500E
_081D4FB6:
- bl sub_800B320
+ bl IsLinkConnectionEstablished
lsls r0, 24
cmp r0, 0
beq _081D500C
@@ -28447,7 +28447,7 @@ _081D515C:
beq _081D5166
b _081D52FC
_081D5166:
- bl sub_80097E8
+ bl CloseLink
b _081D525C
_081D516C:
adds r0, r4, 0
@@ -28500,20 +28500,20 @@ _081D51D0:
beq _081D51F4
movs r0, 0x5
bl PlaySE
- bl sub_80097E8
+ bl CloseLink
adds r0, r4, 0
bl sub_81D505C
b _081D535A
.pool
_081D51F4:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
bls _081D5210
adds r0, r4, 0
bl sub_81D505C
- bl sub_80097E8
+ bl CloseLink
movs r0, 0x7
strb r0, [r4, 0x8]
b _081D548A
@@ -28523,7 +28523,7 @@ _081D5210:
beq _081D522E
movs r0, 0x5
bl PlaySE
- bl sub_80097E8
+ bl CloseLink
adds r0, r4, 0
bl sub_81D505C
movs r0, 0x8
@@ -28537,7 +28537,7 @@ _081D522E:
bne _081D523C
b _081D548A
_081D523C:
- bl sub_80097E8
+ bl CloseLink
bl sub_81D4E30
adds r0, r4, 0
bl sub_81D505C
@@ -28654,13 +28654,13 @@ _081D5340:
_081D5350:
movs r0, 0x5
bl PlaySE
- bl sub_80097E8
+ bl CloseLink
_081D535A:
movs r0, 0x17
strb r0, [r4, 0x8]
b _081D548A
_081D5360:
- bl sub_80097E8
+ bl CloseLink
movs r0, 0x15
strb r0, [r4, 0x8]
b _081D548A
@@ -28670,7 +28670,7 @@ _081D536A:
cmp r0, 0
beq _081D537A
_081D5374:
- bl sub_80097E8
+ bl CloseLink
b _081D53C0
_081D537A:
bl GetBlockReceivedStatus
diff --git a/asm/rayquaza_scene.s b/asm/rayquaza_scene.s
index f60b2a252..8832d3942 100644
--- a/asm/rayquaza_scene.s
+++ b/asm/rayquaza_scene.s
@@ -1058,7 +1058,7 @@ _081D6FC8:
sub_81D6FD0: @ 81D6FD0
push {lr}
bl sub_81D67EC
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
pop {r0}
bx r0
thumb_func_end sub_81D6FD0
@@ -1183,12 +1183,12 @@ sub_81D7134: @ 81D7134
lsls r6, r1, 3
ldr r7, =gTasks + 0x8
adds r5, r6, r7
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
bl sub_81D6FE0
bl sub_81D706C
movs r4, 0
str r4, [sp, 0x4]
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
ldr r2, =0x010003c0
add r0, sp, 0x4
bl CpuFastSet
@@ -1196,7 +1196,7 @@ sub_81D7134: @ 81D7134
ldr r0, [r2]
ldr r1, [r2, 0x4]
ldr r2, [r2, 0x8]
- bl sub_80BA038
+ bl ScanlineEffect_SetParams
strh r4, [r5]
ldr r0, =sub_81D7228
movs r1, 0
@@ -1278,7 +1278,7 @@ sub_81D7228: @ 81D7228
adds r3, r1, r0
movs r1, 0x18
ldr r7, =gUnknown_0203CF60
- ldr r4, =gUnknown_02038C28
+ ldr r4, =gScanlineEffectRegBuffers
movs r0, 0xF0
lsls r0, 3
adds r5, r4, r0
diff --git a/asm/record_mixing.s b/asm/record_mixing.s
index b7bcca4a8..e54c3a1fb 100644
--- a/asm/record_mixing.s
+++ b/asm/record_mixing.s
@@ -765,10 +765,10 @@ _080E73B0:
movs r0, 0x65
b _080E7564
_080E73B8:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r4, r0, 24
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -796,7 +796,7 @@ _080E73EA:
_080E73F8:
bl sub_800AA48
adds r4, r0, 0
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -808,7 +808,7 @@ _080E740C:
strh r4, [r5, 0x20]
lsls r4, 16
asrs r4, 16
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 4
@@ -824,7 +824,7 @@ _080E742A:
_080E7432:
bl sub_800AA48
adds r4, r0, 0
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r4, 24
lsls r0, 24
cmp r4, r0
@@ -868,7 +868,7 @@ _080E746E:
b _080E7564
.pool
_080E7490:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
lsls r0, 24
lsrs r0, 24
movs r1, 0
diff --git a/asm/reset_rtc_screen.s b/asm/reset_rtc_screen.s
index ab5e0840c..b314afbf5 100644
--- a/asm/reset_rtc_screen.s
+++ b/asm/reset_rtc_screen.s
@@ -888,7 +888,7 @@ _0809EFCA:
bl ResetOamRange
bl LoadOam
bl ScanlineEffect_Stop
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
bl ResetSpriteData
bl ResetTasks
bl ResetPaletteFade
diff --git a/asm/shop.s b/asm/shop.s
index eacef5837..70429c7cf 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -188,7 +188,7 @@ HandleShopMenuBuy: @ 80DFBD0
str r0, [r1]
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
pop {r4}
pop {r0}
bx r0
@@ -216,7 +216,7 @@ HandleShopMenuSell: @ 80DFC0C
str r0, [r1]
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
pop {r4}
pop {r0}
bx r0
diff --git a/asm/start_menu.s b/asm/start_menu.s
index 518b46f76..b99ed84ce 100644
--- a/asm/start_menu.s
+++ b/asm/start_menu.s
@@ -449,7 +449,7 @@ _0809FB34:
beq _0809FBA0
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
b _0809FBA0
.pool
_0809FB98:
@@ -1561,7 +1561,7 @@ _080A0490:
bl ResetSpriteData
bl ResetTasks
bl ResetPaletteFade
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
b _080A04FC
_080A04A2:
movs r0, 0
diff --git a/asm/time_events.s b/asm/time_events.s
deleted file mode 100644
index de2d2d165..000000000
--- a/asm/time_events.s
+++ /dev/null
@@ -1,225 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start GetMirageRnd
-GetMirageRnd: @ 8137890
- push {r4,lr}
- ldr r0, =0x00004024
- bl VarGet
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, =0x00004025
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- lsls r4, 16
- orrs r4, r0
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end GetMirageRnd
-
- thumb_func_start SetMirageRnd
-SetMirageRnd: @ 81378BC
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, =0x00004024
- lsrs r1, r4, 16
- bl VarSet
- ldr r0, =0x00004025
- lsls r4, 16
- lsrs r4, 16
- adds r1, r4, 0
- bl VarSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetMirageRnd
-
- thumb_func_start InitMirageRnd
-InitMirageRnd: @ 81378E4
- push {r4,lr}
- bl Random
- adds r4, r0, 0
- bl Random
- lsls r4, 16
- lsls r0, 16
- lsrs r0, 16
- orrs r4, r0
- adds r0, r4, 0
- bl SetMirageRnd
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end InitMirageRnd
-
- thumb_func_start UpdateMirageRnd
-UpdateMirageRnd: @ 8137904
- push {r4,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- bl GetMirageRnd
- adds r1, r0, 0
- cmp r4, 0
- beq _08137928
- ldr r3, =0x41c64e6d
- ldr r2, =0x00003039
-_08137918:
- adds r0, r1, 0
- muls r0, r3
- adds r1, r0, r2
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- bne _08137918
-_08137928:
- adds r0, r1, 0
- bl SetMirageRnd
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateMirageRnd
-
- thumb_func_start IsMirageIslandPresent
-IsMirageIslandPresent: @ 813793C
- push {r4-r6,lr}
- bl GetMirageRnd
- lsrs r6, r0, 16
- movs r5, 0
-_08137946:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08137978
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- ldr r1, =0x0000ffff
- ands r1, r0
- cmp r1, r6
- bne _08137978
- movs r0, 0x1
- b _08137980
- .pool
-_08137978:
- adds r5, 0x1
- cmp r5, 0x5
- ble _08137946
- movs r0, 0
-_08137980:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end IsMirageIslandPresent
-
- thumb_func_start UpdateShoalTideFlag
-UpdateShoalTideFlag: @ 8137988
- push {lr}
- bl get_map_light_from_warp0
- lsls r0, 24
- lsrs r0, 24
- bl is_light_level_1_2_3_5_or_6
- lsls r0, 24
- cmp r0, 0
- beq _081379CE
- bl RtcCalcLocalTime
- ldr r1, =gUnknown_085B2B44
- ldr r0, =gLocalTime
- ldrb r0, [r0, 0x2]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _081379C8
- ldr r0, =0x0000089a
- bl FlagSet
- b _081379CE
- .pool
-_081379C8:
- ldr r0, =0x0000089a
- bl FlagClear
-_081379CE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateShoalTideFlag
-
- thumb_func_start Task_WaitWeather
-Task_WaitWeather: @ 81379D8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80AC3BC
- lsls r0, 24
- cmp r0, 0
- beq _081379F2
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_081379F2:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end Task_WaitWeather
-
- thumb_func_start WaitWeather
-WaitWeather: @ 81379F8
- push {lr}
- ldr r0, =Task_WaitWeather
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end WaitWeather
-
- thumb_func_start InitBirchState
-InitBirchState: @ 8137A0C
- push {lr}
- ldr r0, =0x00004049
- bl GetVarPointer
- movs r1, 0
- strh r1, [r0]
- pop {r0}
- bx r0
- .pool
- thumb_func_end InitBirchState
-
- thumb_func_start UpdateBirchState
-UpdateBirchState: @ 8137A20
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, =0x00004049
- bl GetVarPointer
- adds r5, r0, 0
- ldrh r0, [r5]
- adds r4, r0
- strh r4, [r5]
- ldrh r0, [r5]
- movs r1, 0x7
- bl __umodsi3
- strh r0, [r5]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateBirchState
diff --git a/asm/title_screen.s b/asm/title_screen.s
index 54c1b5353..32594424a 100644
--- a/asm/title_screen.s
+++ b/asm/title_screen.s
@@ -464,7 +464,7 @@ _080AA766:
@ void title_screen_vblank_callback()
title_screen_vblank_callback: @ 80AA780
push {lr}
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
bl LoadOam
bl ProcessSpriteCopyRequests
bl TransferPlttBuffer
@@ -779,7 +779,7 @@ _080AAAF0:
movs r1, 0xA0
movs r2, 0x4
movs r3, 0x4
- bl sub_80BA384
+ bl ScanlineEffect_InitWave
ldr r0, =c2_title_screen_2
bl SetMainCallback2
_080AAB1E:
diff --git a/asm/trade.s b/asm/trade.s
index dd0477560..0126baa6a 100644
--- a/asm/trade.s
+++ b/asm/trade.s
@@ -416,12 +416,12 @@ _080774B2:
cmp r0, 0
beq _08077528
bl sub_800B488
- bl sub_8009734
+ bl OpenLink
bl sub_8011BA4
b _08077B46
.pool
_08077528:
- bl sub_8009734
+ bl OpenLink
ldr r0, =gMain
movs r7, 0x87
lsls r7, 3
@@ -466,7 +466,7 @@ _0807757A:
b _08077B22
.pool
_0807758C:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
adds r4, r0, 0
bl sub_800AA48
lsls r4, 24
@@ -475,7 +475,7 @@ _0807758C:
bcs _080775A0
b _08077B46
_080775A0:
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
cmp r0, 0
beq _080775D8
@@ -7026,7 +7026,7 @@ _0807AC92:
lsls r0, 1
cmp r1, r0
bls _0807ACC4
- bl sub_80097E8
+ bl CloseLink
ldr r0, =c2_800ACD4
bl SetMainCallback2
ldr r1, [r4]
@@ -7264,7 +7264,7 @@ _0807AEAC:
ldr r2, =0x00001144
adds r0, r2, 0
strh r0, [r1]
- bl sub_80097E8
+ bl CloseLink
_0807AEC0:
ldr r4, =gUnknown_020322A0
movs r5, 0x80
@@ -7332,7 +7332,7 @@ _0807AF58:
adds r0, 0xFA
movs r1, 0x1
strb r1, [r0]
- bl sub_8009734
+ bl OpenLink
ldr r1, =gMain
movs r2, 0x87
lsls r2, 3
@@ -7369,13 +7369,13 @@ _0807AFAC:
b _0807B0E4
.pool
_0807AFBC:
- bl sub_800ABBC
+ bl IsLinkMaster
lsls r0, 24
cmp r0, 0
bne _0807AFC8
b _0807B0DC
_0807AFC8:
- bl sub_800ABAC
+ bl GetLinkPlayerCount_2
adds r4, r0, 0
bl sub_800AA48
lsls r4, 24
diff --git a/asm/trainer_card.s b/asm/trainer_card.s
index f1679d04e..fe6133618 100644
--- a/asm/trainer_card.s
+++ b/asm/trainer_card.s
@@ -18,7 +18,7 @@ sub_80C2690: @ 80C2690
cmp r0, 0
beq _080C26C0
ldr r1, =0x040000d4
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
str r0, [r1]
movs r2, 0xF0
lsls r2, 3
@@ -40,7 +40,7 @@ sub_80C26D4: @ 80C26D4
ldrh r3, [r4]
movs r0, 0
strh r0, [r4]
- ldr r1, =gUnknown_02038C28
+ ldr r1, =gScanlineEffectRegBuffers
ldr r0, =0x04000006
ldrh r2, [r0]
movs r0, 0xFF
@@ -3977,9 +3977,9 @@ sub_80C4998: @ 80C4998
movs r0, 0x3
bl HideBg
bl ScanlineEffect_Stop
- bl dp12_8087EA4
+ bl ScanlineEffect_Clear
movs r1, 0
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
movs r2, 0
movs r3, 0xF0
lsls r3, 3
@@ -4066,7 +4066,7 @@ _080C4A0E:
movs r2, 0
cmp r2, r7
bcs _080C4A78
- ldr r3, =gUnknown_02038C28
+ ldr r3, =gScanlineEffectRegBuffers
_080C4A60:
lsls r0, r2, 16
asrs r0, 16
@@ -4091,7 +4091,7 @@ _080C4A78:
lsrs r7, r4, 16
cmp r1, r0
bge _080C4AB0
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r12, r0
adds r4, r3, 0
_080C4A92:
@@ -4116,7 +4116,7 @@ _080C4AB0:
asrs r0, r1, 16
cmp r0, 0x9F
bgt _080C4ACE
- ldr r2, =gUnknown_02038C28
+ ldr r2, =gScanlineEffectRegBuffers
_080C4ABC:
asrs r0, r1, 16
lsls r1, r0, 1
@@ -4392,7 +4392,7 @@ _080C4CB6:
movs r2, 0
cmp r2, r7
bcs _080C4D20
- ldr r3, =gUnknown_02038C28
+ ldr r3, =gScanlineEffectRegBuffers
_080C4D08:
lsls r0, r2, 16
asrs r0, 16
@@ -4417,7 +4417,7 @@ _080C4D20:
lsrs r7, r4, 16
cmp r1, r0
bge _080C4D56
- ldr r0, =gUnknown_02038C28
+ ldr r0, =gScanlineEffectRegBuffers
mov r12, r0
adds r4, r3, 0
_080C4D3A:
@@ -4441,7 +4441,7 @@ _080C4D56:
asrs r0, r1, 16
cmp r0, 0x9F
bgt _080C4D74
- ldr r2, =gUnknown_02038C28
+ ldr r2, =gScanlineEffectRegBuffers
_080C4D62:
asrs r0, r1, 16
lsls r1, r0, 1
diff --git a/asm/unknown_task.s b/asm/unknown_task.s
deleted file mode 100644
index a8672ac8f..000000000
--- a/asm/unknown_task.s
+++ /dev/null
@@ -1,593 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start ScanlineEffect_Stop
-ScanlineEffect_Stop: @ 80B9FB8
- push {r4,lr}
- ldr r4, =gUnknown_02039B28
- movs r0, 0
- strb r0, [r4, 0x15]
- ldr r1, =0x040000b0
- ldrh r2, [r1, 0xA]
- ldr r0, =0x0000c5ff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r2, [r1, 0xA]
- ldr r0, =0x00007fff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r0, [r1, 0xA]
- ldrb r0, [r4, 0x18]
- cmp r0, 0xFF
- beq _080B9FE2
- bl DestroyTask
- movs r0, 0xFF
- strb r0, [r4, 0x18]
-_080B9FE2:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end ScanlineEffect_Stop
-
- thumb_func_start dp12_8087EA4
-dp12_8087EA4: @ 80B9FF8
- push {r4,lr}
- sub sp, 0x4
- mov r0, sp
- movs r4, 0
- strh r4, [r0]
- ldr r1, =gUnknown_02038C28
- ldr r2, =0x01000780
- bl CpuSet
- ldr r0, =gUnknown_02039B28
- movs r1, 0
- str r1, [r0]
- str r1, [r0, 0x4]
- str r1, [r0, 0x8]
- str r1, [r0, 0xC]
- strb r4, [r0, 0x14]
- strb r4, [r0, 0x15]
- strb r4, [r0, 0x16]
- strb r4, [r0, 0x17]
- movs r1, 0xFF
- strb r1, [r0, 0x18]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end dp12_8087EA4
-
- thumb_func_start sub_80BA038
-sub_80BA038: @ 80BA038
- push {lr}
- sub sp, 0xC
- str r0, [sp]
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- ldr r0, =0xa2600001
- cmp r1, r0
- bne _080BA06C
- ldr r0, =gUnknown_02039B28
- ldr r1, =gUnknown_02038C2A
- str r1, [r0]
- movs r2, 0xF0
- lsls r2, 3
- adds r1, r2
- str r1, [r0, 0x4]
- ldr r1, =sub_80BA134
- b _080BA07C
- .pool
-_080BA06C:
- ldr r0, =gUnknown_02039B28
- ldr r1, =gUnknown_02038C2C
- str r1, [r0]
- movs r2, 0xF0
- lsls r2, 3
- adds r1, r2
- str r1, [r0, 0x4]
- ldr r1, =sub_80BA154
-_080BA07C:
- str r1, [r0, 0x10]
- adds r1, r0, 0
- ldr r0, [sp, 0x4]
- str r0, [r1, 0xC]
- ldr r0, [sp]
- str r0, [r1, 0x8]
- mov r0, sp
- ldrb r0, [r0, 0x8]
- strb r0, [r1, 0x15]
- mov r0, sp
- ldrb r0, [r0, 0x9]
- strb r0, [r1, 0x16]
- strb r0, [r1, 0x17]
- add sp, 0xC
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BA038
-
- thumb_func_start sub_80BA0A8
-sub_80BA0A8: @ 80BA0A8
- push {r4,lr}
- ldr r4, =gUnknown_02039B28
- ldrb r0, [r4, 0x15]
- cmp r0, 0
- beq _080BA122
- cmp r0, 0x3
- bne _080BA0EC
- movs r0, 0
- strb r0, [r4, 0x15]
- ldr r1, =0x040000b0
- ldrh r2, [r1, 0xA]
- ldr r0, =0x0000c5ff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r2, [r1, 0xA]
- ldr r0, =0x00007fff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r0, [r1, 0xA]
- ldr r1, =gUnknown_02039B44
- movs r0, 0x1
- strb r0, [r1]
- b _080BA122
- .pool
-_080BA0EC:
- ldr r1, =0x040000b0
- ldrh r2, [r1, 0xA]
- ldr r0, =0x0000c5ff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r2, [r1, 0xA]
- ldr r0, =0x00007fff
- ands r0, r2
- strh r0, [r1, 0xA]
- ldrh r0, [r1, 0xA]
- ldrb r0, [r4, 0x14]
- lsls r0, 2
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- ldr r0, [r4, 0x8]
- str r0, [r1, 0x4]
- ldr r0, [r4, 0xC]
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r0, [r4, 0x10]
- bl _call_via_r0
- ldrb r0, [r4, 0x14]
- movs r1, 0x1
- eors r0, r1
- strb r0, [r4, 0x14]
-_080BA122:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BA0A8
-
- thumb_func_start sub_80BA134
-sub_80BA134: @ 80BA134
- ldr r0, =gUnknown_02039B28
- ldr r2, [r0, 0x8]
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gUnknown_02038C28
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_80BA134
-
- thumb_func_start sub_80BA154
-sub_80BA154: @ 80BA154
- ldr r0, =gUnknown_02039B28
- ldr r2, [r0, 0x8]
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gUnknown_02038C28
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_80BA154
-
- thumb_func_start task00_for_dp12
-task00_for_dp12: @ 80BA174
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r12, r0
- movs r6, 0
- ldr r0, =gUnknown_02039B44
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BA1A4
- mov r0, r12
- bl DestroyTask
- ldr r1, =gUnknown_02039B28
- movs r0, 0xFF
- strb r0, [r1, 0x18]
- b _080BA324
- .pool
-_080BA1A4:
- ldr r1, =gTasks
- mov r0, r12
- lsls r2, r0, 2
- adds r0, r2, r0
- lsls r0, 3
- adds r3, r0, r1
- movs r4, 0x16
- ldrsh r0, [r3, r4]
- mov r10, r1
- mov r9, r2
- cmp r0, 0
- beq _080BA250
- movs r1, 0x14
- ldrsh r0, [r3, r1]
- cmp r0, 0xE
- bhi _080BA250
- lsls r0, 2
- ldr r1, =_080BA1D8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080BA1D8:
- .4byte _080BA214
- .4byte _080BA250
- .4byte _080BA21C
- .4byte _080BA250
- .4byte _080BA224
- .4byte _080BA250
- .4byte _080BA22C
- .4byte _080BA250
- .4byte _080BA234
- .4byte _080BA250
- .4byte _080BA23C
- .4byte _080BA250
- .4byte _080BA244
- .4byte _080BA250
- .4byte _080BA24C
-_080BA214:
- ldr r0, =gBattle_BG0_X
- b _080BA24E
- .pool
-_080BA21C:
- ldr r0, =gBattle_BG0_Y
- b _080BA24E
- .pool
-_080BA224:
- ldr r0, =gBattle_BG1_X
- b _080BA24E
- .pool
-_080BA22C:
- ldr r0, =gBattle_BG1_Y
- b _080BA24E
- .pool
-_080BA234:
- ldr r0, =gBattle_BG2_X
- b _080BA24E
- .pool
-_080BA23C:
- ldr r0, =gBattle_BG2_Y
- b _080BA24E
- .pool
-_080BA244:
- ldr r0, =gBattle_BG3_X
- b _080BA24E
- .pool
-_080BA24C:
- ldr r0, =gBattle_BG3_Y
-_080BA24E:
- ldrh r6, [r0]
-_080BA250:
- mov r0, r9
- add r0, r12
- lsls r0, 3
- mov r2, r10
- adds r1, r0, r2
- ldrh r2, [r1, 0x10]
- movs r3, 0x10
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _080BA2BC
- subs r0, r2, 0x1
- strh r0, [r1, 0x10]
- movs r4, 0xE
- ldrsh r0, [r1, r4]
- movs r3, 0xA0
- lsls r3, 1
- adds r2, r0, r3
- movs r4, 0x8
- ldrsh r3, [r1, r4]
- movs r4, 0xA
- ldrsh r0, [r1, r4]
- cmp r3, r0
- bge _080BA324
- ldr r5, =gUnknown_02038C28
- ldr r0, =gUnknown_02039B28
- mov r8, r0
- adds r7, r1, 0
- lsls r0, r2, 1
- adds r4, r0, r5
-_080BA28A:
- lsls r2, r3, 1
- mov r0, r8
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- adds r2, r0
- adds r2, r5
- ldrh r0, [r4]
- adds r0, r6
- strh r0, [r2]
- adds r4, 0x2
- adds r3, 0x1
- movs r1, 0xA
- ldrsh r0, [r7, r1]
- cmp r3, r0
- blt _080BA28A
- b _080BA324
- .pool
-_080BA2BC:
- ldrh r0, [r1, 0x12]
- strh r0, [r1, 0x10]
- movs r2, 0xE
- ldrsh r0, [r1, r2]
- movs r3, 0xA0
- lsls r3, 1
- adds r2, r0, r3
- movs r4, 0x8
- ldrsh r3, [r1, r4]
- movs r4, 0xA
- ldrsh r0, [r1, r4]
- cmp r3, r0
- bge _080BA304
- ldr r5, =gUnknown_02038C28
- adds r7, r1, 0
- lsls r0, r2, 1
- adds r4, r0, r5
- ldr r0, =gUnknown_02039B28
- mov r8, r0
-_080BA2E2:
- lsls r2, r3, 1
- mov r0, r8
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- adds r2, r0
- adds r2, r5
- ldrh r0, [r4]
- adds r0, r6
- strh r0, [r2]
- adds r4, 0x2
- adds r3, 0x1
- movs r1, 0xA
- ldrsh r0, [r7, r1]
- cmp r3, r0
- blt _080BA2E2
-_080BA304:
- mov r0, r9
- add r0, r12
- lsls r0, 3
- mov r3, r10
- adds r2, r0, r3
- ldrh r0, [r2, 0xE]
- adds r0, 0x1
- strh r0, [r2, 0xE]
- lsls r0, 16
- asrs r0, 16
- movs r4, 0xC
- ldrsh r1, [r2, r4]
- cmp r0, r1
- bne _080BA324
- movs r0, 0
- strh r0, [r2, 0xE]
-_080BA324:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task00_for_dp12
-
- thumb_func_start sub_80BA33C
-sub_80BA33C: @ 80BA33C
- push {r4-r7,lr}
- adds r6, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r4, r2, 24
- movs r1, 0
- movs r2, 0
- ldr r0, =gSineTable
- mov r12, r0
-_080BA350:
- lsls r0, r1, 1
- adds r3, r0, r6
- lsls r0, r2, 1
- add r0, r12
- movs r7, 0
- ldrsh r0, [r0, r7]
- muls r0, r4
- cmp r0, 0
- bge _080BA364
- adds r0, 0xFF
-_080BA364:
- asrs r0, 8
- strh r0, [r3]
- adds r0, r2, r5
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xFF
- bls _080BA350
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BA33C
-
- thumb_func_start sub_80BA384
-sub_80BA384: @ 80BA384
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- adds r5, r0, 0
- str r1, [sp, 0x10]
- ldr r0, [sp, 0x40]
- mov r8, r0
- ldr r1, [sp, 0x44]
- mov r9, r1
- ldr r0, [sp, 0x48]
- mov r10, r0
- lsls r5, 24
- lsrs r5, 24
- ldr r1, [sp, 0x10]
- lsls r1, 24
- str r1, [sp, 0x14]
- lsrs r0, r1, 24
- str r0, [sp, 0xC]
- lsls r1, r2, 24
- lsrs r1, 24
- str r1, [sp, 0x18]
- lsls r2, r3, 24
- lsrs r2, 24
- str r2, [sp, 0x1C]
- mov r1, r8
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- mov r3, r9
- lsls r3, 24
- lsrs r3, 24
- mov r9, r3
- mov r0, r10
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- bl dp12_8087EA4
- ldr r0, =0x04000010
- add r0, r9
- str r0, [sp]
- ldr r0, =0xa2600001
- str r0, [sp, 0x4]
- mov r1, sp
- movs r0, 0x1
- strb r0, [r1, 0x8]
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0x9]
- ldr r0, [sp]
- ldr r1, [sp, 0x4]
- ldr r2, [sp, 0x8]
- bl sub_80BA038
- ldr r0, =task00_for_dp12
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gTasks
- lsls r4, r7, 2
- adds r4, r7
- lsls r4, 3
- adds r4, r0
- strh r5, [r4, 0x8]
- mov r3, sp
- ldrh r3, [r3, 0xC]
- strh r3, [r4, 0xA]
- movs r0, 0x80
- lsls r0, 1
- ldr r1, [sp, 0x18]
- bl __divsi3
- strh r0, [r4, 0xC]
- movs r0, 0
- strh r0, [r4, 0xE]
- mov r1, r8
- strh r1, [r4, 0x10]
- strh r1, [r4, 0x12]
- mov r3, r9
- strh r3, [r4, 0x14]
- mov r0, r10
- strh r0, [r4, 0x16]
- ldr r0, =gUnknown_02039B28
- strb r7, [r0, 0x18]
- ldr r0, =gUnknown_02039B44
- movs r1, 0
- strb r1, [r0]
- ldr r4, =gUnknown_02038EA8
- ldr r3, [sp, 0xC]
- subs r6, r3, r5
- lsls r3, r6, 24
- lsrs r3, 24
- adds r0, r4, 0
- ldr r1, [sp, 0x18]
- ldr r2, [sp, 0x1C]
- bl sub_80BA33C
- ldr r0, [sp, 0xC]
- cmp r5, r0
- bge _080BA47E
- ldr r1, =0xfffffd80
- adds r2, r4, r1
- lsls r1, r5, 1
- movs r3, 0xF0
- lsls r3, 3
- adds r0, r1, r3
- adds r3, r0, r2
- adds r1, r2
- adds r2, r4, 0
- adds r5, r6, 0
-_080BA46A:
- ldrh r0, [r2]
- strh r0, [r1]
- ldrh r0, [r2]
- strh r0, [r3]
- adds r2, 0x2
- adds r3, 0x2
- adds r1, 0x2
- subs r5, 0x1
- cmp r5, 0
- bne _080BA46A
-_080BA47E:
- adds r0, r7, 0
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80BA384
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/use_pokeblock.s b/asm/use_pokeblock.s
index 60c11524a..5047ec65e 100644
--- a/asm/use_pokeblock.s
+++ b/asm/use_pokeblock.s
@@ -732,10 +732,10 @@ _08166C28:
b _08166D18
.pool
_08166C40:
- ldr r1, =gUnknown_02039B28
+ ldr r1, =gScanlineEffect
movs r0, 0x3
strb r0, [r1, 0x15]
- bl sub_80BA0A8
+ bl ScanlineEffect_InitHBlankDmaTransfer
_08166C4A:
ldr r1, [r4]
adds r1, 0x50