summaryrefslogtreecommitdiff
path: root/asm/field_screen.s
diff options
context:
space:
mode:
authorDizzyEggg <jajkodizzy@wp.pl>2018-12-20 22:53:08 +0100
committerDizzyEggg <jajkodizzy@wp.pl>2018-12-20 22:53:08 +0100
commitecee02816d475f012dd4eec8a59b9ad3ba9ab531 (patch)
tree5eb0cdad91aeba20866a731033d76add878c3ec4 /asm/field_screen.s
parent7dcb614cca6d61c5e51960826dddc004858ed9f1 (diff)
parent6ef96717181dfa1cda548cbe405410aba065e41c (diff)
Merge with master
Diffstat (limited to 'asm/field_screen.s')
-rw-r--r--asm/field_screen.s10509
1 files changed, 0 insertions, 10509 deletions
diff --git a/asm/field_screen.s b/asm/field_screen.s
deleted file mode 100644
index 8a97644ac..000000000
--- a/asm/field_screen.s
+++ /dev/null
@@ -1,10509 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80AAFA4
-@ void sub_80AAFA4()
-sub_80AAFA4: @ 80AAFA4
- push {r4-r6,lr}
- ldr r0, =sub_80AB1B0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _080AB060
- movs r0, 0x90
- lsls r0, 5
- bl AllocSpritePalette
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, =gUnknown_0854C270
- lsls r1, r5, 5
- ldr r2, =gPlttBufferUnfaded + 0x200
- adds r1, r2
- ldr r2, =0x04000008
- bl CpuSet
- bl sub_80AB294
- ldr r4, =gUnknown_02038454
- ldr r1, =0x000006d5
- adds r0, r4, r1
- strb r5, [r0]
- ldr r0, =0x00001201
- bl AllocSpritePalette
- ldr r2, =0x000006d4
- adds r1, r4, r2
- strb r0, [r1]
- ldr r1, =0x000006da
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0x4
- adds r0, r4, r2
- strb r6, [r0]
- adds r1, 0x4
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0xC
- adds r0, r4, r2
- strb r6, [r0]
- adds r1, 0x22
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0x17
- adds r0, r4, r2
- strb r6, [r0]
- adds r1, 0x24
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0x1B
- adds r0, r4, r2
- strb r6, [r0]
- subs r1, 0xD
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0x18
- adds r0, r4, r2
- strb r6, [r0]
- subs r1, 0x1D
- adds r0, r4, r1
- strb r6, [r0]
- movs r0, 0x10
- movs r1, 0
- bl sub_80AC124
- movs r2, 0xDA
- lsls r2, 3
- adds r0, r4, r2
- strb r6, [r0]
- ldr r0, =0x000006c6
- adds r1, r4, r0
- movs r0, 0x3
- strb r0, [r1]
- movs r1, 0xD9
- lsls r1, 3
- adds r0, r4, r1
- strb r6, [r0]
- adds r2, 0x3
- adds r1, r4, r2
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, =sub_80AB160
- movs r1, 0x50
- bl CreateTask
- ldr r1, =0x000006c9
- adds r4, r1
- strb r0, [r4]
-_080AB060:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AAFA4
-
- thumb_func_start weather_set
-weather_set: @ 80AB098
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- beq _080AB0AE
- cmp r4, 0x5
- beq _080AB0AE
- cmp r4, 0xD
- beq _080AB0AE
- bl play_some_sound
-_080AB0AE:
- ldr r1, =gUnknown_02038454
- ldr r2, =0x000006d1
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, r4
- beq _080AB0D2
- movs r3, 0xDA
- lsls r3, 3
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r4
- bne _080AB0D2
- ldr r0, =gUnknown_0854C150
- lsls r1, r4, 4
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
-_080AB0D2:
- ldr r1, =gUnknown_02038454
- ldr r2, =0x000006d3
- adds r0, r1, r2
- movs r2, 0
- strb r2, [r0]
- ldr r3, =0x000006d1
- adds r0, r1, r3
- strb r4, [r0]
- ldr r0, =0x000006ce
- adds r1, r0
- strh r2, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end weather_set
-
- thumb_func_start sub_80AB104
-sub_80AB104: @ 80AB104
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl play_some_sound
- ldr r0, =gUnknown_02038454
- movs r2, 0xDA
- lsls r2, 3
- adds r1, r0, r2
- strb r4, [r1]
- ldr r1, =0x000006d1
- adds r0, r1
- strb r4, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB104
-
- thumb_func_start sub_80AB130
-sub_80AB130: @ 80AB130
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl play_some_sound
- ldr r1, =gUnknown_02038454
- movs r2, 0xDA
- lsls r2, 3
- adds r0, r1, r2
- strb r4, [r0]
- adds r2, 0x1
- adds r0, r1, r2
- strb r4, [r0]
- movs r0, 0xD9
- lsls r0, 3
- adds r1, r0
- movs r0, 0x1
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB130
-
- thumb_func_start sub_80AB160
-sub_80AB160: @ 80AB160
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, =gUnknown_02038454
- movs r1, 0xD9
- lsls r1, 3
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AB198
- ldr r1, =gUnknown_0854C150
- movs r3, 0xDA
- lsls r3, 3
- adds r0, r2, r3
- ldrb r0, [r0]
- lsls r0, 4
- adds r1, 0x8
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80AB1B0
- str r1, [r0]
-_080AB198:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB160
-
- thumb_func_start sub_80AB1B0
-sub_80AB1B0: @ 80AB1B0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r5, =gUnknown_02038454
- movs r0, 0xDA
- lsls r0, 3
- adds r6, r5, r0
- ldr r1, =0x000006d1
- adds r7, r5, r1
- ldrb r0, [r6]
- ldrb r2, [r7]
- cmp r0, r2
- beq _080AB22C
- ldr r0, =gUnknown_0854C150
- mov r9, r0
- ldrb r0, [r6]
- lsls r0, 4
- mov r1, r9
- adds r1, 0xC
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080AB23C
- ldr r1, =0x000006c6
- adds r1, r5
- mov r8, r1
- ldrb r0, [r1]
- cmp r0, 0x2
- beq _080AB23C
- ldrb r0, [r7]
- lsls r0, 4
- add r0, r9
- ldr r0, [r0]
- bl _call_via_r0
- ldr r2, =0x000006c3
- adds r0, r5, r2
- strb r4, [r0]
- mov r0, r8
- strb r4, [r0]
- ldrb r0, [r7]
- strb r0, [r6]
- adds r2, 0x10
- adds r1, r5, r2
- movs r0, 0x1
- strb r0, [r1]
- b _080AB23C
- .pool
-_080AB22C:
- ldr r0, =gUnknown_0854C150
- ldrb r1, [r6]
- lsls r1, 4
- adds r0, 0x4
- adds r1, r0
- ldr r0, [r1]
- bl _call_via_r0
-_080AB23C:
- ldr r1, =gUnknown_0854C240
- ldr r0, =gUnknown_02038454
- ldr r2, =0x000006c6
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB1B0
-
- thumb_func_start sub_80AB26C
-sub_80AB26C: @ 80AB26C
- ldr r0, =gUnknown_02038454
- ldr r2, =0x000006c1
- adds r1, r0, r2
- movs r2, 0
- strb r2, [r1]
- ldr r1, =0x000006c2
- adds r0, r1
- strb r2, [r0]
- bx lr
- .pool
- thumb_func_end sub_80AB26C
-
- thumb_func_start nullsub_36
-nullsub_36: @ 80AB28C
- bx lr
- thumb_func_end nullsub_36
-
- thumb_func_start sub_80AB290
-sub_80AB290: @ 80AB290
- movs r0, 0
- bx lr
- thumb_func_end sub_80AB290
-
- thumb_func_start sub_80AB294
-sub_80AB294: @ 80AB294
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r1, =gUnknown_03000F50
- ldr r0, =gUnknown_0854C250
- str r0, [r1]
- movs r0, 0
- mov r12, r0
- ldr r1, =gUnknown_020388B4
- mov r10, r1
-_080AB2AC:
- mov r7, r10
- mov r0, r12
- cmp r0, 0
- bne _080AB2B8
- ldr r1, =0xfffffda0
- adds r7, r1
-_080AB2B8:
- movs r5, 0
- movs r0, 0x1
- add r0, r12
- mov r9, r0
-_080AB2C0:
- lsls r1, r5, 8
- lsls r0, r5, 24
- lsrs r2, r0, 16
- mov r0, r12
- cmp r0, 0
- bne _080AB2E4
- adds r0, r1, 0
- lsls r0, 12
- lsrs r4, r0, 16
- b _080AB2E6
- .pool
-_080AB2E4:
- movs r4, 0
-_080AB2E6:
- movs r3, 0
- adds r1, r5, 0x1
- mov r8, r1
-_080AB2EC:
- subs r1, r2, r4
- lsls r1, 16
- lsrs r2, r1, 16
- lsls r0, r3, 5
- adds r0, r7
- adds r0, r5
- lsrs r1, 24
- strb r1, [r0]
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x2
- bls _080AB2EC
- adds r6, r2, 0
- movs r0, 0xF8
- lsls r0, 5
- subs r0, r2
- cmp r0, 0
- bge _080AB314
- adds r0, 0xF
-_080AB314:
- lsls r0, 12
- lsrs r4, r0, 16
- cmp r5, 0xB
- bhi _080AB35E
- cmp r3, 0x12
- bhi _080AB384
-_080AB320:
- adds r0, r2, r4
- lsls r0, 16
- lsrs r2, r0, 16
- subs r0, r2, r6
- lsls r0, 16
- asrs r1, r0, 16
- cmp r1, 0
- ble _080AB33C
- lsrs r0, 31
- adds r0, r1, r0
- asrs r0, 1
- subs r0, r2, r0
- lsls r0, 16
- lsrs r2, r0, 16
-_080AB33C:
- lsls r0, r3, 5
- adds r0, r7
- adds r1, r0, r5
- lsrs r0, r2, 8
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1F
- bls _080AB352
- movs r0, 0x1F
- strb r0, [r1]
-_080AB352:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x12
- bls _080AB320
- b _080AB384
-_080AB35E:
- cmp r3, 0x12
- bhi _080AB384
- movs r6, 0x1F
-_080AB364:
- adds r1, r2, r4
- lsls r1, 16
- lsrs r2, r1, 16
- lsls r0, r3, 5
- adds r0, r7
- adds r0, r5
- lsrs r1, 24
- strb r1, [r0]
- cmp r1, 0x1F
- bls _080AB37A
- strb r6, [r0]
-_080AB37A:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x12
- bls _080AB364
-_080AB384:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r5, r0, 16
- cmp r5, 0x1F
- bls _080AB2C0
- mov r1, r9
- lsls r0, r1, 16
- lsrs r0, 16
- mov r12, r0
- cmp r0, 0x1
- bls _080AB2AC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80AB294
-
- thumb_func_start sub_80AB3A8
-sub_80AB3A8: @ 80AB3A8
- push {r4-r7,lr}
- ldr r0, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r2, r0, r1
- ldrb r1, [r2]
- adds r3, r0, 0
- cmp r1, 0x2
- beq _080AB42C
- movs r7, 0xD8
- lsls r7, 3
- adds r4, r3, r7
- ldr r1, =0x000006c1
- adds r0, r3, r1
- ldrb r7, [r4]
- mov r12, r7
- movs r6, 0
- ldrsb r6, [r4, r6]
- movs r5, 0
- ldrsb r5, [r0, r5]
- cmp r6, r5
- bne _080AB3E4
- movs r0, 0x3
- strb r0, [r2]
- b _080AB42C
- .pool
-_080AB3E4:
- ldr r0, =0x000006c3
- adds r2, r3, r0
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldr r7, =0x000006c2
- adds r1, r3, r7
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bcc _080AB42C
- movs r0, 0
- strb r0, [r2]
- mov r0, r12
- cmp r6, r5
- bge _080AB414
- adds r0, 0x1
- b _080AB418
- .pool
-_080AB414:
- mov r0, r12
- subs r0, 0x1
-_080AB418:
- strb r0, [r4]
- movs r1, 0xD8
- lsls r1, 3
- adds r0, r3, r1
- movs r2, 0
- ldrsb r2, [r0, r2]
- movs r0, 0
- movs r1, 0x20
- bl pal_fade_2
-_080AB42C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80AB3A8
-
- thumb_func_start sub_80AB434
-sub_80AB434: @ 80AB434
- push {lr}
- ldr r2, =gUnknown_02038454
- ldr r0, =0x000006cb
- adds r1, r2, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _080AB452
- ldr r3, =0x000006ca
- adds r1, r2, r3
- movs r0, 0
- strb r0, [r1]
-_080AB452:
- movs r1, 0xDA
- lsls r1, 3
- adds r0, r2, r1
- ldrb r0, [r0]
- subs r0, 0x3
- cmp r0, 0xA
- bhi _080AB51C
- lsls r0, 2
- ldr r1, =_080AB47C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AB47C:
- .4byte _080AB4A8
- .4byte _080AB4A8
- .4byte _080AB4A8
- .4byte _080AB4F4
- .4byte _080AB51C
- .4byte _080AB51C
- .4byte _080AB51C
- .4byte _080AB51C
- .4byte _080AB4A8
- .4byte _080AB4D0
- .4byte _080AB4A8
-_080AB4A8:
- bl sub_80AB54C
- lsls r0, 24
- cmp r0, 0
- bne _080AB53C
- ldr r0, =gUnknown_02038454
- movs r2, 0xD8
- lsls r2, 3
- adds r1, r0, r2
- movs r2, 0x3
- strb r2, [r1]
- ldr r3, =0x000006c6
- adds r0, r3
- strb r2, [r0]
- b _080AB53C
- .pool
-_080AB4D0:
- bl sub_80AB5AC
- lsls r0, 24
- cmp r0, 0
- bne _080AB53C
- ldr r1, =gUnknown_02038454
- movs r0, 0xD8
- lsls r0, 3
- adds r2, r1, r0
- movs r0, 0xFA
- strb r0, [r2]
- ldr r2, =0x000006c6
- adds r1, r2
- b _080AB538
- .pool
-_080AB4F4:
- bl sub_80AB604
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080AB53C
- ldr r0, =gUnknown_02038454
- movs r3, 0xD8
- lsls r3, 3
- adds r1, r0, r3
- strb r2, [r1]
- ldr r1, =0x000006c6
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- b _080AB53C
- .pool
-_080AB51C:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080AB53C
- ldr r3, =0x000006c1
- adds r0, r2, r3
- ldrb r1, [r0]
- subs r3, 0x1
- adds r0, r2, r3
- strb r1, [r0]
- ldr r0, =0x000006c6
- adds r1, r2, r0
-_080AB538:
- movs r0, 0x3
- strb r0, [r1]
-_080AB53C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB434
-
- thumb_func_start sub_80AB54C
-sub_80AB54C: @ 80AB54C
- push {r4,lr}
- sub sp, 0x4
- ldr r2, =gUnknown_02038454
- ldr r0, =0x000006c7
- adds r4, r2, r0
- ldrb r0, [r4]
- cmp r0, 0x10
- beq _080AB5A2
- adds r1, r0, 0x1
- strb r1, [r4]
- lsls r0, r1, 24
- lsrs r0, 24
- cmp r0, 0xF
- bhi _080AB594
- movs r3, 0x10
- subs r3, r1
- lsls r3, 24
- lsrs r3, 24
- ldr r1, =0x000006c4
- adds r0, r2, r1
- ldrh r0, [r0]
- str r0, [sp]
- movs r0, 0
- movs r1, 0x20
- movs r2, 0x3
- bl sub_80AB848
- movs r0, 0x1
- b _080AB5A4
- .pool
-_080AB594:
- movs r0, 0
- movs r1, 0x20
- movs r2, 0x3
- bl pal_fade_2
- movs r0, 0x10
- strb r0, [r4]
-_080AB5A2:
- movs r0, 0
-_080AB5A4:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AB54C
-
- thumb_func_start sub_80AB5AC
-sub_80AB5AC: @ 80AB5AC
- push {r4,lr}
- ldr r2, =gUnknown_02038454
- ldr r0, =0x000006c7
- adds r4, r2, r0
- ldrb r0, [r4]
- cmp r0, 0x10
- beq _080AB5FC
- adds r3, r0, 0x1
- strb r3, [r4]
- lsls r0, r3, 24
- lsrs r0, 24
- cmp r0, 0xF
- bhi _080AB5EC
- movs r0, 0x6
- negs r0, r0
- movs r1, 0x10
- subs r1, r3
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =0x000006c4
- adds r2, r3
- ldrh r2, [r2]
- bl sub_80AB990
- movs r0, 0x1
- b _080AB5FE
- .pool
-_080AB5EC:
- movs r2, 0x6
- negs r2, r2
- movs r0, 0
- movs r1, 0x20
- bl pal_fade_2
- movs r0, 0x10
- strb r0, [r4]
-_080AB5FC:
- movs r0, 0
-_080AB5FE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AB5AC
-
- thumb_func_start sub_80AB604
-sub_80AB604: @ 80AB604
- push {lr}
- ldr r2, =gUnknown_02038454
- ldr r1, =0x000006c7
- adds r0, r2, r1
- ldrb r1, [r0]
- cmp r1, 0x10
- beq _080AB638
- adds r1, 0x1
- strb r1, [r0]
- movs r0, 0x10
- subs r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r3, =0x000006c4
- adds r1, r2, r3
- ldrh r1, [r1]
- bl sub_80ABAB0
- movs r0, 0x1
- b _080AB63A
- .pool
-_080AB638:
- movs r0, 0
-_080AB63A:
- pop {r1}
- bx r1
- thumb_func_end sub_80AB604
-
- thumb_func_start nullsub_94
-nullsub_94: @ 80AB640
- bx lr
- thumb_func_end nullsub_94
-
- thumb_func_start pal_fade_2
-pal_fade_2: @ 80AB644
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r3, r0, 24
- adds r4, r3, 0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- asrs r0, r2, 24
- cmp r0, 0
- ble _080AB754
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r6, r3, 4
- adds r0, r1, r3
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- cmp r4, r9
- bcc _080AB67C
- b _080AB82E
-_080AB67C:
- ldr r1, [sp]
- lsls r0, r1, 24
- asrs r0, 19
- str r0, [sp, 0x4]
-_080AB684:
- ldr r0, =gUnknown_03000F50
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AB6C0
- lsls r1, r6, 1
- ldr r0, =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, =gPlttBufferFaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- adds r0, r6, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r6, r0, 16
- mov r2, r9
- lsls r2, 16
- mov r8, r2
- adds r4, 0x1
- mov r12, r4
- b _080AB73E
- .pool
-_080AB6C0:
- cmp r0, 0x2
- beq _080AB6D4
- adds r1, r4, 0
- subs r1, 0x10
- ldr r2, =gUnknown_02038454
- ldr r3, =0x000006d5
- adds r0, r2, r3
- ldrb r0, [r0]
- cmp r1, r0
- bne _080AB6E4
-_080AB6D4:
- ldr r0, =gUnknown_020388B4
- b _080AB6EA
- .pool
-_080AB6E4:
- movs r3, 0x80
- lsls r3, 2
- adds r0, r2, r3
-_080AB6EA:
- ldr r1, [sp, 0x4]
- adds r5, r1, r0
- movs r7, 0
- mov r2, r9
- lsls r2, 16
- mov r8, r2
- adds r4, 0x1
- mov r12, r4
- ldr r3, =gPlttBufferFaded
- mov r10, r3
-_080AB6FE:
- adds r2, r6, 0
- lsls r0, r2, 1
- ldr r1, =gPlttBufferUnfaded
- adds r0, r1
- ldr r1, [r0]
- lsls r0, r1, 27
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r4, [r0]
- lsls r0, r1, 22
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r1, 17
- lsrs r1, 27
- adds r1, r5, r1
- ldrb r1, [r1]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r2, 1
- add r2, r10
- lsls r1, 10
- lsls r3, 5
- orrs r1, r3
- orrs r1, r4
- strh r1, [r2]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _080AB6FE
-_080AB73E:
- mov r2, r12
- lsls r0, r2, 16
- lsrs r4, r0, 16
- cmp r0, r8
- bcc _080AB684
- b _080AB82E
- .pool
-_080AB754:
- cmp r0, 0
- bge _080AB81C
- mvns r0, r0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- lsls r6, r3, 4
- adds r0, r1, r3
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- adds r4, r3, 0
- cmp r4, r9
- bcs _080AB82E
-_080AB770:
- ldr r0, =gUnknown_03000F50
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AB7AC
- lsls r1, r6, 1
- ldr r0, =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, =gPlttBufferFaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- adds r0, r6, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r6, r0, 16
- mov r3, r9
- lsls r3, 16
- mov r8, r3
- adds r4, 0x1
- mov r12, r4
- b _080AB804
- .pool
-_080AB7AC:
- movs r7, 0
- mov r0, r9
- lsls r0, 16
- mov r8, r0
- adds r4, 0x1
- mov r12, r4
- ldr r1, =gUnknown_0854014C
- mov r10, r1
- ldr r2, [sp]
- lsls r0, r2, 24
- asrs r5, r0, 11
-_080AB7C2:
- lsls r0, r6, 1
- ldr r3, =gPlttBufferFaded
- adds r4, r0, r3
- ldr r1, =gPlttBufferUnfaded
- adds r0, r1
- ldrh r3, [r0]
- lsls r3, 16
- lsrs r0, r3, 17
- movs r1, 0xF
- ands r0, r1
- lsrs r1, r3, 18
- movs r2, 0xF0
- ands r1, r2
- orrs r0, r1
- lsrs r3, 19
- movs r2, 0xF0
- lsls r2, 4
- adds r1, r2, 0
- ands r3, r1
- orrs r0, r3
- lsls r0, 1
- adds r0, r5
- add r0, r10
- ldrh r0, [r0]
- strh r0, [r4]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _080AB7C2
-_080AB804:
- mov r3, r12
- lsls r0, r3, 16
- lsrs r4, r0, 16
- cmp r0, r8
- bcc _080AB770
- b _080AB82E
- .pool
-_080AB81C:
- lsls r1, r4, 5
- ldr r0, =gPlttBufferUnfaded
- adds r0, r1, r0
- ldr r2, =gPlttBufferFaded
- adds r1, r2
- mov r3, r9
- lsls r2, r3, 3
- bl CpuFastSet
-_080AB82E:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end pal_fade_2
-
- thumb_func_start sub_80AB848
-sub_80AB848: @ 80AB848
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- ldr r4, [sp, 0x34]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- mov r1, sp
- strh r4, [r1]
- ldr r1, [sp]
- lsls r3, r1, 27
- lsrs r3, 27
- str r3, [sp, 0x4]
- lsls r3, r1, 22
- lsrs r3, 27
- str r3, [sp, 0x8]
- lsls r1, 17
- lsrs r1, 27
- str r1, [sp, 0xC]
- lsls r6, r0, 4
- mov r3, r10
- adds r1, r3, r0
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- movs r1, 0xFF
- lsls r1, 24
- adds r2, r1
- lsrs r2, 24
- adds r4, r0, 0
- cmp r4, r10
- bcs _080AB974
- lsls r0, r2, 24
- asrs r0, 19
- str r0, [sp, 0x10]
-_080AB8A0:
- ldr r0, =gUnknown_03000F50
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AB8D4
- mov r0, sp
- ldrh r3, [r0]
- adds r0, r6, 0
- movs r1, 0x10
- mov r2, r8
- bl BlendPalette
- adds r0, r6, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r6, r0, 16
- mov r3, r10
- lsls r3, 16
- mov r9, r3
- adds r4, 0x1
- mov r12, r4
- b _080AB96A
- .pool
-_080AB8D4:
- cmp r0, 0x1
- bne _080AB8E4
- ldr r0, =gUnknown_02038654
- ldr r1, [sp, 0x10]
- adds r5, r1, r0
- b _080AB8EA
- .pool
-_080AB8E4:
- ldr r0, =gUnknown_020388B4
- ldr r3, [sp, 0x10]
- adds r5, r3, r0
-_080AB8EA:
- movs r7, 0
- mov r0, r10
- lsls r0, 16
- mov r9, r0
- adds r4, 0x1
- mov r12, r4
-_080AB8F6:
- adds r4, r6, 0
- lsls r0, r4, 1
- ldr r1, =gPlttBufferUnfaded
- adds r0, r1
- ldr r1, [r0]
- lsls r0, r1, 27
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r3, [r0]
- lsls r0, r1, 22
- lsrs r0, 27
- adds r0, r5, r0
- ldrb r2, [r0]
- lsls r1, 17
- lsrs r1, 27
- adds r1, r5, r1
- ldrb r1, [r1]
- ldr r6, [sp, 0x4]
- subs r0, r6, r3
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- ldr r6, [sp, 0x8]
- subs r0, r6, r2
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- ldr r6, [sp, 0xC]
- subs r0, r6, r1
- mov r6, r8
- muls r6, r0
- adds r0, r6, 0
- asrs r0, 4
- adds r1, r0
- lsls r1, 24
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- lsls r4, 1
- ldr r0, =gPlttBufferFaded
- adds r4, r0
- lsrs r1, 14
- lsrs r2, 19
- orrs r1, r2
- orrs r1, r3
- strh r1, [r4]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0xF
- bls _080AB8F6
-_080AB96A:
- mov r1, r12
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r0, r9
- bcc _080AB8A0
-_080AB974:
- 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_80AB848
-
- thumb_func_start sub_80AB990
-sub_80AB990: @ 80AB990
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- lsls r1, 24
- lsrs r6, r1, 24
- mov r1, sp
- strh r2, [r1]
- lsls r0, 24
- movs r1, 0xFF
- lsls r1, 24
- eors r0, r1
- lsrs r0, 24
- str r0, [sp, 0x4]
- ldr r0, [sp]
- lsls r1, r0, 27
- lsrs r1, 27
- str r1, [sp, 0x8]
- lsls r1, r0, 22
- lsrs r1, 27
- str r1, [sp, 0xC]
- lsls r0, 17
- lsrs r0, 27
- mov r10, r0
- movs r5, 0
- movs r4, 0
-_080AB9C8:
- ldr r0, =gUnknown_03000F50
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AB9F4
- mov r0, sp
- ldrh r3, [r0]
- adds r0, r5, 0
- movs r1, 0x10
- adds r2, r6, 0
- bl BlendPalette
- adds r0, r5, 0
- adds r0, 0x10
- lsls r0, 16
- lsrs r5, r0, 16
- adds r4, 0x1
- mov r8, r4
- b _080ABA8A
- .pool
-_080AB9F4:
- movs r0, 0
- mov r12, r0
- ldr r1, [sp, 0x4]
- lsls r0, r1, 24
- adds r4, 0x1
- mov r8, r4
- movs r7, 0x1E
- asrs r0, 11
- mov r9, r0
-_080ABA06:
- adds r4, r5, 0
- lsls r0, r4, 1
- ldr r5, =gPlttBufferUnfaded
- adds r0, r5
- ldr r0, [r0]
- lsls r2, r0, 27
- lsrs r2, 27
- lsls r1, r0, 22
- lsrs r1, 27
- lsls r0, 17
- lsrs r0, 27
- ands r0, r7
- lsls r0, 7
- ands r1, r7
- lsls r1, 3
- orrs r0, r1
- ands r2, r7
- lsls r0, 1
- orrs r0, r2
- add r0, r9
- ldr r1, =gUnknown_0854014C
- adds r0, r1
- ldr r1, [r0]
- lsls r3, r1, 27
- lsrs r3, 27
- lsls r2, r1, 22
- lsrs r2, 27
- lsls r1, 17
- lsrs r1, 27
- ldr r5, [sp, 0x8]
- subs r0, r5, r3
- muls r0, r6
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- ldr r5, [sp, 0xC]
- subs r0, r5, r2
- muls r0, r6
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- mov r5, r10
- subs r0, r5, r1
- muls r0, r6
- asrs r0, 4
- adds r1, r0
- lsls r1, 24
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r4, 1
- ldr r0, =gPlttBufferFaded
- adds r4, r0
- lsrs r1, 14
- lsrs r2, 19
- orrs r1, r2
- orrs r1, r3
- strh r1, [r4]
- mov r0, r12
- adds r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- mov r12, r0
- cmp r0, 0xF
- bls _080ABA06
-_080ABA8A:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r4, 0x1F
- bls _080AB9C8
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AB990
-
- thumb_func_start sub_80ABAB0
-sub_80ABAB0: @ 80ABAB0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- adds r3, r1, 0
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r3, 16
- lsrs r3, 16
- mov r0, sp
- strh r3, [r0]
- movs r1, 0x80
- lsls r1, 1
- movs r0, 0
- adds r2, r7, 0
- bl BlendPalette
- ldr r0, [sp]
- lsls r1, r0, 27
- lsrs r1, 27
- str r1, [sp, 0x4]
- lsls r1, r0, 22
- lsrs r1, 27
- str r1, [sp, 0x8]
- lsls r0, 17
- lsrs r0, 27
- mov r10, r0
- movs r4, 0x10
-_080ABAEC:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80ABC00
- lsls r0, 24
- cmp r0, 0
- beq _080ABB9C
- adds r0, r4, 0x1
- lsls r1, r0, 20
- lsrs r1, 16
- mov r12, r1
- lsls r1, r4, 20
- lsrs r6, r1, 16
- mov r9, r0
- cmp r6, r12
- bcs _080ABBB0
- movs r0, 0x1C
- mov r8, r0
-_080ABB10:
- lsls r5, r6, 1
- ldr r0, =gPlttBufferUnfaded
- adds r0, r5, r0
- ldr r2, [r0]
- lsls r4, r2, 27
- lsrs r4, 27
- lsls r3, r2, 22
- lsrs r3, 27
- lsls r2, 17
- lsrs r2, 27
- mov r0, r8
- subs r1, r0, r4
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0x1F
- subs r1, r3
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r3, r0
- lsls r3, 24
- lsrs r3, 24
- mov r0, r8
- subs r1, r0, r2
- lsls r0, r1, 1
- adds r0, r1
- asrs r0, 2
- adds r2, r0
- lsls r2, 24
- lsrs r2, 24
- ldr r1, [sp, 0x4]
- subs r0, r1, r4
- muls r0, r7
- asrs r0, 4
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, [sp, 0x8]
- subs r0, r1, r3
- muls r0, r7
- asrs r0, 4
- adds r3, r0
- lsls r3, 24
- mov r1, r10
- subs r0, r1, r2
- muls r0, r7
- asrs r0, 4
- adds r2, r0
- lsls r2, 24
- ldr r0, =gPlttBufferFaded
- adds r5, r0
- lsrs r2, 14
- lsrs r3, 19
- orrs r2, r3
- orrs r2, r4
- strh r2, [r5]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, r12
- bcc _080ABB10
- b _080ABBB0
- .pool
-_080ABB9C:
- lsls r0, r4, 20
- lsrs r0, 16
- mov r1, sp
- ldrh r3, [r1]
- movs r1, 0x10
- adds r2, r7, 0
- bl BlendPalette
- adds r4, 0x1
- mov r9, r4
-_080ABBB0:
- mov r1, r9
- lsls r0, r1, 16
- lsrs r4, r0, 16
- cmp r4, 0x1F
- bls _080ABAEC
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80ABAB0
-
- thumb_func_start sub_80ABBCC
-sub_80ABBCC: @ 80ABBCC
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r3, =gUnknown_02038454
- ldr r0, =0x000006fa
- adds r1, r3, r0
- ldrb r0, [r1]
- cmp r0, 0x5
- bhi _080ABBEE
- ldr r4, =0x000006f4
- adds r0, r3, r4
- ldrb r3, [r1]
- adds r0, r3
- strb r2, [r0]
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_080ABBEE:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ABBCC
-
- thumb_func_start sub_80ABC00
-sub_80ABC00: @ 80ABC00
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r1, 0
- ldr r2, =gUnknown_02038454
- ldr r4, =0x000006fa
- adds r0, r2, r4
- ldrb r0, [r0]
- cmp r1, r0
- bcs _080ABC3E
- ldr r5, =0x000006f4
- adds r4, r2, r5
- adds r2, r0, 0
-_080ABC1A:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, r3
- bne _080ABC34
- movs r0, 0x1
- b _080ABC40
- .pool
-_080ABC34:
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r2
- bcc _080ABC1A
-_080ABC3E:
- movs r0, 0
-_080ABC40:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80ABC00
-
- thumb_func_start sub_80ABC48
-sub_80ABC48: @ 80ABC48
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _080ABC6E
- lsls r2, r4, 24
- asrs r2, 24
- movs r0, 0
- movs r1, 0x20
- bl pal_fade_2
- movs r1, 0xD8
- lsls r1, 3
- adds r0, r5, r1
- strb r4, [r0]
-_080ABC6E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ABC48
-
- thumb_func_start sub_80ABC7C
-sub_80ABC7C: @ 80ABC7C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r3, =gUnknown_02038454
- ldr r0, =0x000006c6
- adds r2, r3, r0
- ldrb r0, [r2]
- cmp r0, 0x3
- bne _080ABCBC
- movs r1, 0
- strb r1, [r2]
- movs r2, 0xD8
- lsls r2, 3
- adds r0, r3, r2
- strb r4, [r0]
- adds r2, 0x1
- adds r0, r3, r2
- strb r5, [r0]
- adds r2, 0x2
- adds r0, r3, r2
- strb r1, [r0]
- ldr r1, =0x000006c2
- adds r0, r3, r1
- strb r6, [r0]
- lsls r0, r4, 24
- asrs r0, 24
- bl sub_80ABC48
-_080ABCBC:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ABC7C
-
- thumb_func_start FadeScreen
-FadeScreen: @ 80ABCD0
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- adds r2, r0, 0
- lsls r1, 24
- lsrs r5, r1, 24
- cmp r0, 0x1
- beq _080ABD08
- cmp r0, 0x1
- bgt _080ABCEC
- cmp r0, 0
- beq _080ABCF6
- b _080ABDE4
-_080ABCEC:
- cmp r2, 0x2
- beq _080ABCFC
- cmp r2, 0x3
- beq _080ABD0C
- b _080ABDE4
-_080ABCF6:
- movs r4, 0
- movs r1, 0
- b _080ABD10
-_080ABCFC:
- ldr r4, =0x0000ffff
- movs r1, 0
- b _080ABD10
- .pool
-_080ABD08:
- movs r4, 0
- b _080ABD0E
-_080ABD0C:
- ldr r4, =0x0000ffff
-_080ABD0E:
- movs r1, 0x1
-_080ABD10:
- ldr r0, =gUnknown_02038454
- movs r2, 0xDA
- lsls r2, 3
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0x3
- blt _080ABD38
- cmp r0, 0x6
- ble _080ABD2A
- cmp r0, 0xD
- bgt _080ABD38
- cmp r0, 0xB
- blt _080ABD38
-_080ABD2A:
- movs r2, 0x1
- b _080ABD3A
- .pool
-_080ABD38:
- movs r2, 0
-_080ABD3A:
- cmp r1, 0
- beq _080ABD7C
- cmp r2, 0
- beq _080ABD4E
- ldr r0, =gPlttBufferFaded
- ldr r1, =gPlttBufferUnfaded
- movs r2, 0x80
- lsls r2, 1
- bl CpuFastSet
-_080ABD4E:
- movs r0, 0x1
- negs r0, r0
- lsls r1, r5, 24
- asrs r1, 24
- str r4, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_02038454
- ldr r3, =0x000006c6
- adds r0, r3
- movs r1, 0x2
- strb r1, [r0]
- b _080ABDE4
- .pool
-_080ABD7C:
- ldr r1, =gUnknown_02038454
- ldr r3, =0x000006c4
- adds r0, r1, r3
- strh r4, [r0]
- cmp r2, 0
- beq _080ABDA0
- ldr r0, =0x000006c7
- adds r1, r0
- movs r0, 0
- strb r0, [r1]
- b _080ABDB2
- .pool
-_080ABDA0:
- movs r0, 0x1
- negs r0, r0
- lsls r1, r5, 24
- asrs r1, 24
- str r4, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
-_080ABDB2:
- ldr r4, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r0, r4, r1
- movs r1, 0
- movs r5, 0x1
- strb r5, [r0]
- ldr r2, =0x000006ca
- adds r0, r4, r2
- strb r5, [r0]
- ldr r3, =0x000006cb
- adds r0, r4, r3
- strb r1, [r0]
- movs r1, 0xE6
- lsls r1, 3
- adds r0, r4, r1
- ldrb r0, [r0]
- adds r2, 0x68
- adds r1, r4, r2
- ldrb r1, [r1]
- bl sub_80AC124
- movs r3, 0xD9
- lsls r3, 3
- adds r4, r3
- strb r5, [r4]
-_080ABDE4:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end FadeScreen
-
- thumb_func_start IsWeatherNotFadingIn
-IsWeatherNotFadingIn: @ 80ABDFC
- ldr r0, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- bx lr
- .pool
- thumb_func_end IsWeatherNotFadingIn
-
- thumb_func_start UpdateSpritePaletteWithWeather
-@ void UpdateSpritePaletteWithWeather(u8 a1)
-UpdateSpritePaletteWithWeather: @ 80ABE18
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 8
- movs r1, 0x80
- lsls r1, 13
- adds r0, r1
- lsrs r4, r0, 16
- ldr r5, =gUnknown_02038454
- ldr r2, =0x000006c6
- adds r0, r5, r2
- ldrb r0, [r0]
- adds r1, r5, 0
- cmp r0, 0x1
- beq _080ABE60
- cmp r0, 0x2
- beq _080ABEAC
- adds r2, 0xA
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _080ABEE4
- lsls r0, r4, 24
- lsrs r0, 24
- subs r2, 0x10
- adds r1, r2
- movs r2, 0
- ldrsb r2, [r1, r2]
- movs r1, 0x1
- bl pal_fade_2
- b _080ABEF4
- .pool
-_080ABE60:
- ldr r2, =0x000006ca
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080ABEF4
- adds r2, 0x6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _080ABE7C
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_80ABBCC
-_080ABE7C:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- movs r2, 0
- ldr r6, =gPlttBufferFaded
- ldr r0, =0x000006c4
- adds r3, r5, r0
-_080ABE88:
- adds r0, r4, r2
- lsls r0, 1
- adds r0, r6
- ldrh r1, [r3]
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xF
- bls _080ABE88
- b _080ABEF4
- .pool
-_080ABEAC:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- lsls r1, r4, 1
- ldr r0, =gPlttBufferFaded
- adds r0, r1, r0
- ldr r2, =gPlttBufferUnfaded
- adds r1, r2
- movs r2, 0x8
- bl CpuFastSet
- ldr r0, =gPaletteFade
- ldrh r2, [r0, 0x4]
- lsls r2, 21
- lsrs r2, 27
- ldrh r3, [r0, 0x6]
- lsls r3, 17
- lsrs r3, 17
- adds r0, r4, 0
- movs r1, 0x10
- bl BlendPalette
- b _080ABEF4
- .pool
-_080ABEE4:
- lsls r0, r4, 20
- lsrs r4, r0, 16
- ldr r3, =0x000073fc
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0xC
- bl BlendPalette
-_080ABEF4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end UpdateSpritePaletteWithWeather
-
- thumb_func_start ApplyWeatherGammaShiftToPal
-ApplyWeatherGammaShiftToPal: @ 80ABF00
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02038454
- movs r2, 0xD8
- lsls r2, 3
- adds r1, r2
- movs r2, 0
- ldrsb r2, [r1, r2]
- movs r1, 0x1
- bl pal_fade_2
- pop {r0}
- bx r0
- .pool
- thumb_func_end ApplyWeatherGammaShiftToPal
-
- thumb_func_start sub_80ABF20
-sub_80ABF20: @ 80ABF20
- push {lr}
- ldr r1, =gUnknown_02038454
- ldr r2, =0x000006c6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080ABF3C
- movs r0, 0
- b _080ABF42
- .pool
-_080ABF3C:
- ldr r2, =0x000006ca
- adds r0, r1, r2
- ldrb r0, [r0]
-_080ABF42:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80ABF20
-
- thumb_func_start sub_80ABF4C
-sub_80ABF4C: @ 80ABF4C
- push {r4,lr}
- ldr r4, =gUnknown_02038454
- ldr r1, =0x000006d4
- adds r4, r1
- ldrb r1, [r4]
- lsls r1, 20
- movs r2, 0x80
- lsls r2, 17
- adds r1, r2
- lsrs r1, 16
- movs r2, 0x20
- bl LoadPalette
- ldrb r0, [r4]
- bl UpdateSpritePaletteWithWeather
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ABF4C
-
- thumb_func_start sub_80ABF7C
-sub_80ABF7C: @ 80ABF7C
- movs r2, 0x20
- strb r2, [r0]
- strb r2, [r1]
- bx lr
- thumb_func_end sub_80ABF7C
-
- thumb_func_start sub_80ABF84
-sub_80ABF84: @ 80ABF84
- ldr r0, =gUnknown_02038454
- ldr r2, =0x0000074d
- adds r1, r0, r2
- movs r2, 0x1
- strb r2, [r1]
- ldr r1, =0x0000074e
- adds r0, r1
- strb r2, [r0]
- bx lr
- .pool
- thumb_func_end sub_80ABF84
-
- thumb_func_start sub_80ABFA4
-sub_80ABFA4: @ 80ABFA4
- push {r4,lr}
- ldr r1, =gUnknown_02038454
- ldr r0, =0x0000074d
- adds r4, r1, r0
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x1F
- bgt _080ABFD8
- ldr r0, =0x0000074e
- adds r1, r0
- adds r0, r4, 0
- bl sub_80ABF7C
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x1F
- bgt _080ABFD8
- movs r0, 0x1
- b _080ABFDA
- .pool
-_080ABFD8:
- movs r0, 0
-_080ABFDA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80ABFA4
-
- thumb_func_start sub_80ABFE0
-sub_80ABFE0: @ 80ABFE0
- push {lr}
- lsls r0, 24
- asrs r0, 24
- mvns r0, r0
- bl sub_80ABC48
- pop {r0}
- bx r0
- thumb_func_end sub_80ABFE0
-
- thumb_func_start sub_80ABFF0
-sub_80ABFF0: @ 80ABFF0
- ldr r1, =gUnknown_02038454
- ldr r2, =0x0000073c
- adds r0, r1, r2
- movs r2, 0
- strh r2, [r0]
- movs r3, 0xE8
- lsls r3, 3
- adds r0, r1, r3
- strh r2, [r0]
- adds r3, 0x2
- adds r0, r1, r3
- strh r2, [r0]
- ldr r0, =0x0000073e
- adds r1, r0
- strh r2, [r1]
- bx lr
- .pool
- thumb_func_end sub_80ABFF0
-
- thumb_func_start sub_80AC01C
-sub_80AC01C: @ 80AC01C
- push {r4-r7,lr}
- ldr r5, =gUnknown_02038454
- ldr r0, =0x00000742
- adds r7, r5, r0
- movs r2, 0
- ldrsh r1, [r7, r2]
- cmp r1, 0x1
- beq _080AC090
- cmp r1, 0x1
- bgt _080AC040
- cmp r1, 0
- beq _080AC046
- b _080AC118
- .pool
-_080AC040:
- cmp r1, 0x2
- beq _080AC0E4
- b _080AC118
-_080AC046:
- movs r3, 0xE8
- lsls r3, 3
- adds r6, r5, r3
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- ble _080AC118
- strh r1, [r6]
- ldr r0, =0x0000073c
- adds r4, r5, r0
- ldrh r0, [r4]
- adds r1, r0, 0x1
- strh r1, [r4]
- lsls r0, 24
- asrs r0, 24
- bl sub_80ABFE0
- ldrh r1, [r4]
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x5
- ble _080AC118
- ldr r3, =0x0000073e
- adds r0, r5, r3
- strh r1, [r0]
- movs r0, 0x1
- strh r0, [r7]
- movs r0, 0x3C
- strh r0, [r6]
- b _080AC118
- .pool
-_080AC090:
- movs r0, 0xE8
- lsls r0, 3
- adds r2, r5, r0
- ldrh r0, [r2]
- adds r0, 0x3
- movs r1, 0x7F
- ands r0, r1
- strh r0, [r2]
- ldr r1, =gSineTable
- movs r3, 0
- ldrsh r0, [r2, r3]
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- subs r0, 0x1
- asrs r0, 6
- adds r0, 0x2
- ldr r2, =0x0000073c
- adds r6, r5, r2
- adds r2, r0, 0
- strh r0, [r6]
- ldr r3, =0x0000073e
- adds r4, r5, r3
- movs r3, 0
- ldrsh r1, [r4, r3]
- cmp r0, r1
- beq _080AC0D0
- lsls r0, r2, 24
- asrs r0, 24
- bl sub_80ABFE0
-_080AC0D0:
- ldrh r0, [r6]
- strh r0, [r4]
- b _080AC118
- .pool
-_080AC0E4:
- movs r0, 0xE8
- lsls r0, 3
- adds r1, r5, r0
- ldrh r0, [r1]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- ble _080AC118
- strh r6, [r1]
- ldr r1, =0x0000073c
- adds r4, r5, r1
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 24
- asrs r0, 24
- bl sub_80ABFE0
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x3
- bne _080AC118
- strh r6, [r7]
-_080AC118:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC01C
-
- thumb_func_start sub_80AC124
-sub_80AC124: @ 80AC124
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =gUnknown_02038454
- movs r4, 0xE6
- lsls r4, 3
- adds r2, r3, r4
- strh r0, [r2]
- adds r4, 0x2
- adds r2, r3, r4
- strh r1, [r2]
- adds r4, 0x2
- adds r2, r3, r4
- strh r0, [r2]
- ldr r2, =0x00000736
- adds r3, r2
- strh r1, [r3]
- lsls r1, 8
- orrs r1, r0
- movs r0, 0x52
- bl SetGpuReg
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC124
-
- thumb_func_start sub_80AC164
-sub_80AC164: @ 80AC164
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r3, =gUnknown_02038454
- ldr r5, =0x00000734
- adds r4, r3, r5
- movs r5, 0
- strh r0, [r4]
- ldr r4, =0x00000736
- adds r0, r3, r4
- strh r1, [r0]
- ldr r1, =0x0000073a
- adds r0, r3, r1
- strb r2, [r0]
- adds r4, 0x3
- adds r0, r3, r4
- strb r5, [r0]
- movs r0, 0xE7
- lsls r0, 3
- adds r3, r0
- strb r5, [r3]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC164
-
- thumb_func_start sub_80AC1A8
-sub_80AC1A8: @ 80AC1A8
- push {r4-r6,lr}
- ldr r0, =gUnknown_02038454
- movs r1, 0xE6
- lsls r1, 3
- adds r3, r0, r1
- ldr r2, [r3]
- ldr r6, =0x00000734
- adds r4, r0, r6
- ldr r1, [r4]
- adds r5, r0, 0
- cmp r2, r1
- beq _080AC26C
- ldr r0, =0x00000739
- adds r2, r5, r0
- ldrb r0, [r2]
- adds r0, 0x1
- strb r0, [r2]
- ldr r6, =0x0000073a
- adds r1, r5, r6
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bls _080AC238
- movs r0, 0
- strb r0, [r2]
- movs r0, 0xE7
- lsls r0, 3
- adds r1, r5, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080AC210
- ldrh r1, [r3]
- adds r2, r1, 0
- ldrh r0, [r4]
- cmp r2, r0
- bcs _080AC230
- adds r0, r1, 0x1
- b _080AC236
- .pool
-_080AC210:
- ldr r1, =0x00000732
- adds r3, r5, r1
- ldr r2, =0x00000736
- adds r0, r5, r2
- ldrh r1, [r3]
- adds r2, r1, 0
- ldrh r0, [r0]
- cmp r2, r0
- bcs _080AC230
- adds r0, r1, 0x1
- b _080AC236
- .pool
-_080AC230:
- cmp r2, r0
- bls _080AC238
- subs r0, r1, 0x1
-_080AC236:
- strh r0, [r3]
-_080AC238:
- ldr r6, =0x00000732
- adds r0, r5, r6
- ldrh r1, [r0]
- lsls r1, 8
- movs r0, 0xE6
- lsls r0, 3
- adds r4, r5, r0
- ldrh r0, [r4]
- orrs r1, r0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- ldr r1, [r4]
- ldr r2, =0x00000734
- adds r0, r5, r2
- ldr r0, [r0]
- cmp r1, r0
- beq _080AC26C
- movs r0, 0
- b _080AC26E
- .pool
-_080AC26C:
- movs r0, 0x1
-_080AC26E:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80AC1A8
-
- thumb_func_start sub_80AC274
-sub_80AC274: @ 80AC274
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x9
- bhi _080AC306
- lsls r0, 2
- ldr r1, =_080AC290
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AC290:
- .4byte _080AC2B8
- .4byte _080AC2C0
- .4byte _080AC2C8
- .4byte _080AC2D0
- .4byte _080AC2D8
- .4byte _080AC2E0
- .4byte _080AC2E8
- .4byte _080AC2F0
- .4byte _080AC2F8
- .4byte _080AC300
-_080AC2B8:
- movs r0, 0x1
- bl SetWeather
- b _080AC306
-_080AC2C0:
- movs r0, 0x2
- bl SetWeather
- b _080AC306
-_080AC2C8:
- movs r0, 0x3
- bl SetWeather
- b _080AC306
-_080AC2D0:
- movs r0, 0x4
- bl SetWeather
- b _080AC306
-_080AC2D8:
- movs r0, 0x5
- bl SetWeather
- b _080AC306
-_080AC2E0:
- movs r0, 0x6
- bl SetWeather
- b _080AC306
-_080AC2E8:
- movs r0, 0x9
- bl SetWeather
- b _080AC306
-_080AC2F0:
- movs r0, 0x7
- bl SetWeather
- b _080AC306
-_080AC2F8:
- movs r0, 0x8
- bl SetWeather
- b _080AC306
-_080AC300:
- movs r0, 0xB
- bl SetWeather
-_080AC306:
- pop {r0}
- bx r0
- thumb_func_end sub_80AC274
-
- thumb_func_start weather_get_current
-weather_get_current: @ 80AC30C
- ldr r0, =gUnknown_02038454
- movs r1, 0xDA
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end weather_get_current
-
- thumb_func_start sub_80AC31C
-sub_80AC31C: @ 80AC31C
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, =gUnknown_02038454
- ldr r3, =0x000006c6
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080AC36E
- cmp r2, 0x53
- beq _080AC354
- cmp r2, 0x53
- bgt _080AC344
- cmp r2, 0x51
- beq _080AC360
- b _080AC36E
- .pool
-_080AC344:
- cmp r2, 0x55
- bne _080AC36E
- ldr r0, =0x000006dd
- adds r1, r0
- movs r0, 0
- b _080AC366
- .pool
-_080AC354:
- ldr r3, =0x000006dd
- adds r1, r3
- movs r0, 0x1
- b _080AC366
- .pool
-_080AC360:
- ldr r0, =0x000006dd
- adds r1, r0
- movs r0, 0x2
-_080AC366:
- strb r0, [r1]
- adds r0, r2, 0
- bl PlaySE
-_080AC36E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC31C
-
- thumb_func_start play_some_sound
-play_some_sound: @ 80AC378
- push {lr}
- bl IsSpecialSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _080AC3B6
- ldr r0, =gUnknown_02038454
- ldr r1, =0x000006dd
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080AC3A8
- cmp r0, 0x1
- bgt _080AC3B0
- cmp r0, 0
- bne _080AC3B0
- movs r0, 0x56
- bl PlaySE
- b _080AC3B6
- .pool
-_080AC3A8:
- movs r0, 0x54
- bl PlaySE
- b _080AC3B6
-_080AC3B0:
- movs r0, 0x52
- bl PlaySE
-_080AC3B6:
- pop {r0}
- bx r0
- thumb_func_end play_some_sound
-
- 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 IsWeatherChangeComplete
-
- thumb_func_start sub_80AC3D0
-sub_80AC3D0: @ 80AC3D0
- ldr r0, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80AC3D0
-
- thumb_func_start sub_80AC3E4
-sub_80AC3E4: @ 80AC3E4
- ldr r0, =gUnknown_02038454
- ldr r1, =0x000006c6
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80AC3E4
-
- thumb_func_start PreservePaletteInWeather
-PreservePaletteInWeather: @ 80AC3F8
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, =gUnknown_0854C250
- ldr r5, =gUnknown_02038BA4
- adds r1, r5, 0
- movs r2, 0x10
- bl CpuSet
- adds r4, r5
- movs r0, 0
- strb r0, [r4]
- ldr r0, =gUnknown_03000F50
- str r5, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end PreservePaletteInWeather
-
- thumb_func_start ResetPreservedPalettesInWeather
-ResetPreservedPalettesInWeather: @ 80AC428
- ldr r1, =gUnknown_03000F50
- ldr r0, =gUnknown_0854C250
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end ResetPreservedPalettesInWeather
-
- thumb_func_start sub_80AC438
-sub_80AC438: @ 80AC438
- push {lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r2, =0x000006c1
- adds r1, r0, r2
- movs r2, 0
- strb r2, [r1]
- ldr r1, =0x000006c2
- adds r3, r0, r1
- movs r1, 0x14
- strb r1, [r3]
- ldr r3, =0x000006d2
- adds r1, r0, r3
- strb r2, [r1]
- subs r3, 0x6
- adds r1, r0, r3
- strh r2, [r1]
- ldr r1, =0x000006de
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AC46C
- movs r0, 0
- movs r1, 0x10
- bl sub_80AC124
-_080AC46C:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC438
-
- thumb_func_start sub_80AC484
-sub_80AC484: @ 80AC484
- push {r4,lr}
- bl sub_80AC438
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AC4A4
- adds r4, r1, r2
-_080AC49A:
- bl sub_80AC4B4
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AC49A
-_080AC4A4:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC484
-
- thumb_func_start sub_80AC4B4
-sub_80AC4B4: @ 80AC4B4
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AC4E4
- cmp r0, 0x1
- bgt _080AC4D8
- cmp r0, 0
- beq _080AC4DE
- b _080AC508
- .pool
-_080AC4D8:
- cmp r0, 0x2
- beq _080AC4F0
- b _080AC508
-_080AC4DE:
- bl sub_80AC594
- b _080AC502
-_080AC4E4:
- movs r0, 0xC
- movs r1, 0x8
- movs r2, 0x1
- bl sub_80AC164
- b _080AC502
-_080AC4F0:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AC508
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080AC502:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AC508:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC4B4
-
- thumb_func_start sub_80AC514
-sub_80AC514: @ 80AC514
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0
- beq _080AC534
- cmp r0, 0x1
- beq _080AC540
- movs r0, 0
- b _080AC556
- .pool
-_080AC534:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x1
- bl sub_80AC164
- b _080AC54E
-_080AC540:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AC554
- bl sub_80AC660
-_080AC54E:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AC554:
- movs r0, 0x1
-_080AC556:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AC514
-
- thumb_func_start sub_80AC55C
-sub_80AC55C: @ 80AC55C
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006c1
- adds r2, r1, r0
- movs r0, 0
- strb r0, [r2]
- ldr r0, =0x000006c2
- adds r1, r0
- movs r0, 0x14
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80AC55C
-
- thumb_func_start sub_80AC580
-sub_80AC580: @ 80AC580
- push {lr}
- bl sub_80AC55C
- pop {r0}
- bx r0
- thumb_func_end sub_80AC580
-
- thumb_func_start nullsub_95
-nullsub_95: @ 80AC58C
- bx lr
- thumb_func_end nullsub_95
-
- thumb_func_start sub_80AC590
-sub_80AC590: @ 80AC590
- movs r0, 0
- bx lr
- thumb_func_end sub_80AC590
-
- thumb_func_start sub_80AC594
-sub_80AC594: @ 80AC594
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006de
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080AC650
- ldr r0, =sCloudSpriteSheet
- bl LoadSpriteSheet
- ldr r0, =gUnknown_0854C290
- bl sub_80ABF4C
- movs r5, 0
-_080AC5B2:
- ldr r0, =sCloudSpriteTemplate
- movs r1, 0
- movs r2, 0
- movs r3, 0xFF
- bl CreateSprite
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x40
- beq _080AC628
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- lsls r2, r5, 2
- movs r0, 0xFA
- lsls r0, 1
- adds r1, r0
- adds r1, r2
- lsls r4, r3, 4
- adds r4, r3
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- str r4, [r1]
- ldr r0, =gUnknown_0854FB50
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x7
- lsls r0, 16
- asrs r0, 16
- ldrh r1, [r2, 0x2]
- adds r1, 0x7
- lsls r1, 16
- asrs r1, 16
- adds r2, r4, 0
- adds r2, 0x20
- adds r3, r4, 0
- adds r3, 0x22
- bl sub_8093038
- adds r4, 0x3E
- ldrb r0, [r4]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- b _080AC63A
- .pool
-_080AC628:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- lsls r0, r5, 2
- movs r2, 0xFA
- lsls r2, 1
- adds r1, r2
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_080AC63A:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x2
- bls _080AC5B2
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006de
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_080AC650:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC594
-
- thumb_func_start sub_80AC660
-sub_80AC660: @ 80AC660
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006de
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AC6A4
- movs r4, 0
- movs r0, 0xFA
- lsls r0, 1
- adds r5, r1, r0
-_080AC678:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080AC686
- bl DestroySprite
-_080AC686:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x2
- bls _080AC678
- movs r0, 0x90
- lsls r0, 5
- bl FreeSpriteTilesByTag
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006de
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080AC6A4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC660
-
- thumb_func_start sub_80AC6B4
-sub_80AC6B4: @ 80AC6B4
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x2E]
- adds r0, 0x1
- movs r1, 0x1
- ands r0, r1
- strh r0, [r2, 0x2E]
- cmp r0, 0
- beq _080AC6CC
- ldrh r0, [r2, 0x20]
- subs r0, 0x1
- strh r0, [r2, 0x20]
-_080AC6CC:
- pop {r0}
- bx r0
- thumb_func_end sub_80AC6B4
-
- thumb_func_start sub_80AC6D0
-sub_80AC6D0: @ 80AC6D0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006cc
- adds r3, r1, r0
- movs r2, 0
- movs r0, 0
- strh r0, [r3]
- ldr r3, =0x000006d2
- adds r0, r1, r3
- strb r2, [r0]
- subs r3, 0x11
- adds r0, r1, r3
- strb r2, [r0]
- ldr r0, =0x000006c2
- adds r1, r0
- strb r2, [r1]
- bx lr
- .pool
- thumb_func_end sub_80AC6D0
-
- thumb_func_start sub_80AC704
-sub_80AC704: @ 80AC704
- push {r4,lr}
- bl sub_80AC6D0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AC724
- adds r4, r1, r2
-_080AC71A:
- bl sub_80AC734
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AC71A
-_080AC724:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC704
-
- thumb_func_start sub_80AC734
-sub_80AC734: @ 80AC734
- push {lr}
- ldr r1, =gUnknown_0854C14C
- ldr r0, [r1]
- ldr r2, =0x000006cc
- adds r0, r2
- ldrh r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _080AC810
- lsls r0, 2
- ldr r1, =_080AC75C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AC75C:
- .4byte _080AC770
- .4byte _080AC78C
- .4byte _080AC7A4
- .4byte _080AC7C0
- .4byte _080AC7D8
-_080AC770:
- ldr r1, [r2]
- ldr r2, =0x000006c6
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AC814
- ldr r0, =0x000006cc
- adds r1, r0
- b _080AC7F8
- .pool
-_080AC78C:
- bl sub_80ABF84
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r1, r2
- b _080AC7F8
- .pool
-_080AC7A4:
- bl sub_80ABFA4
- lsls r0, 24
- cmp r0, 0
- bne _080AC814
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006cc
- adds r1, r0
- b _080AC7F8
- .pool
-_080AC7C0:
- bl sub_80ABFF0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r1, r2
- b _080AC7F8
- .pool
-_080AC7D8:
- bl sub_80AC01C
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r1, =0x0000073c
- adds r0, r2, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x6
- bne _080AC814
- ldr r0, =0x000006d2
- adds r1, r2, r0
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, =0x000006cc
- adds r1, r2, r0
-_080AC7F8:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080AC814
- .pool
-_080AC810:
- bl sub_80AC01C
-_080AC814:
- pop {r0}
- bx r0
- thumb_func_end sub_80AC734
-
- thumb_func_start sub_80AC818
-sub_80AC818: @ 80AC818
- movs r0, 0
- bx lr
- thumb_func_end sub_80AC818
-
- thumb_func_start sub_80AC81C
-sub_80AC81C: @ 80AC81C
- push {lr}
- ldr r0, =task50_0807B6D4
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC81C
-
- thumb_func_start task50_0807B6D4
-task50_0807B6D4: @ 80AC830
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x4
- bhi _080AC922
- lsls r0, 2
- ldr r1, =_080AC85C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AC85C:
- .4byte _080AC870
- .4byte _080AC89A
- .4byte _080AC8C8
- .4byte _080AC8F8
- .4byte _080AC918
-_080AC870:
- movs r0, 0
- strh r0, [r4, 0xA]
- strh r0, [r4, 0xC]
- ldr r0, =0x04000048
- ldrh r0, [r0]
- strh r0, [r4, 0xE]
- ldr r1, =0x00003f3f
- movs r0, 0x48
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0x9E
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080AC89A:
- ldrh r0, [r4, 0xA]
- adds r0, 0x3
- strh r0, [r4, 0xA]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- ble _080AC8AC
- movs r0, 0x10
- strh r0, [r4, 0xA]
-_080AC8AC:
- ldrh r1, [r4, 0xA]
- movs r0, 0x54
- bl SetGpuReg
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0xF
- ble _080AC922
- b _080AC910
- .pool
-_080AC8C8:
- ldrh r0, [r4, 0xC]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r4, 0xC]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x9
- ble _080AC922
- strh r1, [r4, 0xC]
- ldrh r0, [r4, 0xA]
- subs r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- cmp r0, 0
- bgt _080AC8EE
- strh r1, [r4, 0xA]
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
-_080AC8EE:
- ldrh r1, [r4, 0xA]
- movs r0, 0x54
- bl SetGpuReg
- b _080AC922
-_080AC8F8:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- ldrh r1, [r4, 0xE]
- movs r0, 0x48
- bl SetGpuReg
-_080AC910:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AC922
-_080AC918:
- bl EnableBothScriptContexts
- adds r0, r5, 0
- bl DestroyTask
-_080AC922:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task50_0807B6D4
-
- thumb_func_start sub_80AC928
-sub_80AC928: @ 80AC928
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r0, r1, r2
- movs r3, 0
- movs r2, 0
- strh r2, [r0]
- ldr r4, =0x000006d2
- adds r0, r1, r4
- strb r3, [r0]
- adds r4, 0x4
- adds r0, r1, r4
- strh r2, [r0]
- ldr r0, =0x000006db
- adds r2, r1, r0
- movs r0, 0x8
- strb r0, [r2]
- ldr r2, =0x000006dc
- adds r0, r1, r2
- strb r3, [r0]
- adds r4, 0x3
- adds r2, r1, r4
- movs r0, 0xA
- strb r0, [r2]
- ldr r0, =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- ldr r2, =0x000006c2
- adds r1, r2
- movs r0, 0x14
- strb r0, [r1]
- movs r0, 0x55
- bl sub_80AC31C
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC928
-
- thumb_func_start sub_80AC994
-sub_80AC994: @ 80AC994
- push {r4,lr}
- bl sub_80AC928
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AC9B4
- adds r4, r1, r2
-_080AC9AA:
- bl sub_80AC9C4
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AC9AA
-_080AC9B4:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC994
-
- thumb_func_start sub_80AC9C4
-sub_80AC9C4: @ 80AC9C4
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AC9F4
- cmp r0, 0x1
- bgt _080AC9E8
- cmp r0, 0
- beq _080AC9EE
- b _080ACA18
- .pool
-_080AC9E8:
- cmp r0, 0x2
- beq _080ACA00
- b _080ACA18
-_080AC9EE:
- bl sub_80ACD68
- b _080ACA12
-_080AC9F4:
- bl sub_80ACD78
- lsls r0, 24
- cmp r0, 0
- bne _080ACA18
- b _080ACA12
-_080ACA00:
- bl sub_80ACEAC
- lsls r0, 24
- cmp r0, 0
- bne _080ACA18
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080ACA12:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080ACA18:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AC9C4
-
- thumb_func_start sub_80ACA24
-sub_80ACA24: @ 80ACA24
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r1, =0x000006ce
- adds r3, r2, r1
- ldrh r1, [r3]
- adds r4, r0, 0
- cmp r1, 0
- beq _080ACA48
- cmp r1, 0x1
- beq _080ACA7C
- movs r0, 0
- b _080ACAAA
- .pool
-_080ACA48:
- ldr r5, =0x000006d1
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _080ACA5A
- cmp r0, 0x5
- beq _080ACA5A
- cmp r0, 0xD
- bne _080ACA70
-_080ACA5A:
- ldr r0, [r4]
- ldr r1, =0x000006ce
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0]
- movs r0, 0
- b _080ACAAA
- .pool
-_080ACA70:
- ldr r4, =0x000006d9
- adds r0, r2, r4
- strb r1, [r0]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_080ACA7C:
- bl sub_80ACEAC
- lsls r0, 24
- cmp r0, 0
- bne _080ACAA8
- bl sub_80ACF38
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r5, =0x000006ce
- adds r1, r5
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- b _080ACAAA
- .pool
-_080ACAA8:
- movs r0, 0x1
-_080ACAAA:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80ACA24
-
- thumb_func_start sub_80ACAB0
-sub_80ACAB0: @ 80ACAB0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- cmp r0, 0
- bne _080ACAC4
- ldr r0, =0x00000169
- strh r0, [r7, 0x30]
-_080ACAC4:
- movs r2, 0x30
- ldrsh r1, [r7, r2]
- ldr r0, =0x41c64e6d
- muls r0, r1
- ldr r3, =0x00003039
- adds r0, r3
- lsls r0, 1
- lsrs r0, 17
- movs r1, 0x96
- lsls r1, 2
- bl __umodsi3
- movs r1, 0
- mov r8, r1
- strh r0, [r7, 0x30]
- ldr r1, =gUnknown_0854FC4C
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r2, =0x000006dc
- adds r5, r2
- ldrb r0, [r5]
- lsls r0, 2
- adds r0, r1
- ldrh r6, [r0]
- movs r3, 0x30
- ldrsh r0, [r7, r3]
- movs r1, 0x1E
- bl __modsi3
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- lsls r0, r4, 3
- strh r0, [r7, 0x32]
- movs r1, 0x30
- ldrsh r0, [r7, r1]
- movs r1, 0x1E
- bl __divsi3
- lsls r0, 16
- lsls r4, 7
- strh r4, [r7, 0x32]
- asrs r0, 9
- strh r0, [r7, 0x34]
- ldr r2, =gUnknown_0854FC44
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r2
- movs r3, 0
- ldrsh r1, [r1, r3]
- muls r1, r6
- subs r4, r1
- strh r4, [r7, 0x32]
- ldrb r1, [r5]
- lsls r1, 2
- adds r2, 0x2
- adds r1, r2
- movs r2, 0
- ldrsh r1, [r1, r2]
- muls r1, r6
- subs r0, r1
- strh r0, [r7, 0x34]
- adds r0, r7, 0
- movs r1, 0
- bl StartSpriteAnim
- mov r3, r8
- strh r3, [r7, 0x36]
- adds r2, r7, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- strh r6, [r7, 0x2E]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ACAB0
-
- thumb_func_start sub_80ACB84
-sub_80ACB84: @ 80ACB84
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x36
- ldrsh r0, [r5, r1]
- cmp r0, 0
- bne _080ACC60
- ldr r3, =gUnknown_0854FC44
- ldr r4, =gUnknown_0854C14C
- ldr r2, [r4]
- ldr r0, =0x000006dc
- adds r2, r0
- ldrb r0, [r2]
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0]
- ldrh r0, [r5, 0x32]
- adds r1, r0
- strh r1, [r5, 0x32]
- ldrb r0, [r2]
- lsls r0, 2
- adds r3, 0x2
- adds r0, r3
- ldrh r0, [r0]
- ldrh r2, [r5, 0x34]
- adds r0, r2
- strh r0, [r5, 0x34]
- lsls r1, 16
- asrs r1, 20
- strh r1, [r5, 0x20]
- lsls r0, 16
- asrs r2, r0, 20
- strh r2, [r5, 0x22]
- movs r3, 0x38
- ldrsh r0, [r5, r3]
- adds r3, r4, 0
- cmp r0, 0
- beq _080ACC04
- adds r0, r1, 0
- adds r0, 0x8
- lsls r0, 16
- movs r1, 0x80
- lsls r1, 17
- cmp r0, r1
- bhi _080ACC04
- adds r1, r2, 0
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- blt _080ACC04
- cmp r1, 0xB0
- bgt _080ACC04
- adds r0, r5, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- b _080ACC0E
- .pool
-_080ACC04:
- adds r0, r5, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
-_080ACC0E:
- strb r1, [r0]
- adds r4, r0, 0
- ldrh r0, [r5, 0x2E]
- subs r0, 0x1
- strh r0, [r5, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bne _080ACC80
- ldr r0, [r3]
- ldr r1, =0x000006dc
- adds r0, r1
- ldrb r1, [r0]
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl StartSpriteAnim
- movs r0, 0x1
- strh r0, [r5, 0x36]
- ldr r1, =gSpriteCoordOffsetX
- ldrh r0, [r5, 0x20]
- ldrh r1, [r1]
- subs r0, r1
- strh r0, [r5, 0x20]
- ldr r1, =gSpriteCoordOffsetY
- ldrh r0, [r5, 0x22]
- ldrh r1, [r1]
- subs r0, r1
- strh r0, [r5, 0x22]
- ldrb r0, [r4]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4]
- b _080ACC80
- .pool
-_080ACC60:
- adds r0, r5, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _080ACC80
- adds r2, r5, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- adds r0, r5, 0
- bl sub_80ACAB0
-_080ACC80:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80ACB84
-
- thumb_func_start sub_80ACC88
-sub_80ACC88: @ 80ACC88
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _080ACCA8
- adds r0, r4, 0
- bl sub_80ACAB0
- ldr r0, =sub_80ACB84
- str r0, [r4, 0x1C]
- b _080ACCAC
- .pool
-_080ACCA8:
- subs r0, r1, 0x1
- strh r0, [r4, 0x2E]
-_080ACCAC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80ACC88
-
- thumb_func_start sub_80ACCB4
-sub_80ACCB4: @ 80ACCB4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- lsls r5, r1, 16
- lsrs r5, 16
- ldr r2, =gUnknown_0854FC4C
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006dc
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 2
- adds r1, r0, r2
- ldrh r1, [r1]
- mov r8, r1
- adds r2, 0x2
- adds r0, r2
- ldrh r4, [r0]
- add r4, r8
- adds r0, r5, 0
- adds r1, r4, 0
- bl __divsi3
- lsls r0, 16
- lsrs r6, r0, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl __modsi3
- lsls r0, 16
- lsrs r4, r0, 16
- subs r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =0x0000ffff
- cmp r6, r0
- beq _080ACD12
- adds r5, r0, 0
-_080ACD02:
- adds r0, r7, 0
- bl sub_80ACAB0
- subs r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, r5
- bne _080ACD02
-_080ACD12:
- cmp r4, r8
- bcs _080ACD48
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =0x0000ffff
- cmp r4, r0
- beq _080ACD34
- adds r5, r0, 0
-_080ACD24:
- adds r0, r7, 0
- bl sub_80ACB84
- subs r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, r5
- bne _080ACD24
-_080ACD34:
- movs r0, 0
- b _080ACD5C
- .pool
-_080ACD48:
- mov r1, r8
- subs r0, r4, r1
- strh r0, [r7, 0x2E]
- adds r2, r7, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r0, 0x1
-_080ACD5C:
- strh r0, [r7, 0x3A]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80ACCB4
-
- thumb_func_start sub_80ACD68
-sub_80ACD68: @ 80ACD68
- push {lr}
- ldr r0, =gUnknown_0854FC54
- bl LoadSpriteSheet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ACD68
-
- thumb_func_start sub_80ACD78
-sub_80ACD78: @ 80ACD78
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r0, =0x000006da
- adds r2, r4, r0
- ldrb r0, [r2]
- cmp r0, 0x18
- bne _080ACD92
- b _080ACE98
-_080ACD92:
- ldrb r7, [r2]
- ldr r0, =gSpriteTemplate_854FC2C
- ldr r2, =gUnknown_0854FB90
- lsls r6, r7, 2
- adds r2, r6, r2
- movs r3, 0
- ldrsh r1, [r2, r3]
- movs r3, 0x2
- ldrsh r2, [r2, r3]
- movs r3, 0x4E
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x40
- beq _080ACE40
- ldr r3, =gSprites
- lsls r4, r5, 4
- adds r1, r4, r5
- lsls r1, 2
- adds r1, r3
- movs r0, 0
- strh r0, [r1, 0x38]
- lsls r2, r7, 3
- adds r0, r2, r7
- lsls r0, 4
- adds r0, r7
- strh r0, [r1, 0x30]
- lsls r0, 16
- asrs r0, 16
- ldr r1, =0x00000257
- mov r10, r6
- mov r9, r3
- mov r12, r4
- mov r8, r2
- cmp r0, r1
- ble _080ACDF6
- adds r2, r1, 0
-_080ACDDE:
- adds r0, r4, r5
- lsls r0, 2
- ldr r6, =gSprites
- adds r0, r6
- ldr r3, =0xfffffda8
- ldrh r6, [r0, 0x30]
- adds r1, r3, r6
- strh r1, [r0, 0x30]
- lsls r1, 16
- asrs r1, 16
- cmp r1, r2
- bgt _080ACDDE
-_080ACDF6:
- mov r0, r12
- adds r4, r0, r5
- lsls r4, 2
- add r4, r9
- adds r0, r4, 0
- bl sub_80ACAB0
- mov r3, r8
- adds r1, r3, r7
- adds r0, r4, 0
- bl sub_80ACCB4
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- add r0, r10
- str r4, [r0]
- b _080ACE46
- .pool
-_080ACE40:
- adds r1, r4, r6
- movs r0, 0
- str r0, [r1]
-_080ACE46:
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r6, =0x000006da
- adds r1, r2, r6
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x18
- bne _080ACE9C
- movs r3, 0
- adds r1, r2, 0
- ldr r5, =sub_80ACB84
- ldr r4, =sub_80ACC88
-_080ACE64:
- lsls r0, r3, 2
- adds r0, r1, r0
- ldr r2, [r0]
- cmp r2, 0
- beq _080ACE8E
- movs r6, 0x3A
- ldrsh r0, [r2, r6]
- cmp r0, 0
- bne _080ACE8C
- str r5, [r2, 0x1C]
- b _080ACE8E
- .pool
-_080ACE8C:
- str r4, [r2, 0x1C]
-_080ACE8E:
- adds r0, r3, 0x1
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0x17
- bls _080ACE64
-_080ACE98:
- movs r0, 0
- b _080ACE9E
-_080ACE9C:
- movs r0, 0x1
-_080ACE9E:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80ACD78
-
- thumb_func_start sub_80ACEAC
-sub_80ACEAC: @ 80ACEAC
- push {r4-r7,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r3, [r0]
- movs r0, 0xDB
- lsls r0, 3
- adds r4, r3, r0
- ldr r1, =0x000006d9
- adds r5, r3, r1
- ldrb r0, [r4]
- ldrb r7, [r5]
- cmp r0, r7
- bne _080ACED0
- movs r0, 0
- b _080ACF32
- .pool
-_080ACED0:
- ldr r0, =0x000006d6
- adds r2, r3, r0
- ldrh r0, [r2]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r2]
- ldr r7, =0x000006db
- adds r1, r3, r7
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1]
- cmp r0, r1
- bls _080ACF30
- strh r6, [r2]
- ldrb r0, [r4]
- adds r1, r0, 0
- ldrb r5, [r5]
- cmp r1, r5
- bcs _080ACF10
- adds r0, 0x1
- strb r0, [r4]
- lsls r0, r1, 2
- adds r0, r3, r0
- ldr r1, [r0]
- movs r0, 0x1
- strh r0, [r1, 0x38]
- b _080ACF30
- .pool
-_080ACF10:
- subs r0, 0x1
- strb r0, [r4]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3, r0
- ldr r0, [r0]
- strh r6, [r0, 0x38]
- ldrb r0, [r4]
- lsls r0, 2
- adds r0, r3, r0
- ldr r1, [r0]
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
-_080ACF30:
- movs r0, 0x1
-_080ACF32:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80ACEAC
-
- thumb_func_start sub_80ACF38
-sub_80ACF38: @ 80ACF38
- push {r4-r7,lr}
- movs r4, 0
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r3, =0x000006da
- adds r1, r2, r3
- adds r7, r0, 0
- ldrb r1, [r1]
- cmp r4, r1
- bcs _080ACF6A
- adds r5, r2, 0
- adds r6, r5, r3
-_080ACF50:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080ACF5E
- bl DestroySprite
-_080ACF5E:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrb r0, [r6]
- cmp r4, r0
- bcc _080ACF50
-_080ACF6A:
- ldr r0, [r7]
- ldr r1, =0x000006da
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, =0x00001206
- bl FreeSpriteTilesByTag
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ACF38
-
- thumb_func_start sub_80ACF8C
-sub_80ACF8C: @ 80ACF8C
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r0, r1, r2
- movs r2, 0
- movs r3, 0
- strh r3, [r0]
- ldr r4, =0x000006d2
- adds r0, r1, r4
- strb r2, [r0]
- ldr r0, =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- subs r4, 0x10
- adds r2, r1, r4
- movs r0, 0x14
- strb r0, [r2]
- ldr r0, =0x000006e5
- adds r2, r1, r0
- movs r0, 0x10
- strb r0, [r2]
- movs r2, 0xDC
- lsls r2, 3
- adds r1, r2
- strh r3, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ACF8C
-
- thumb_func_start sub_80ACFDC
-sub_80ACFDC: @ 80ACFDC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- bl sub_80ACF8C
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- ldr r3, =0x000006d2
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD032
- mov r8, r2
- adds r7, r1, r3
-_080ACFF8:
- bl snowflakes_progress2
- movs r4, 0
- mov r1, r8
- ldr r0, [r1]
- ldr r3, =0x000006e4
- adds r0, r3
- ldrb r0, [r0]
- cmp r4, r0
- bcs _080AD02C
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- adds r6, r5, r3
-_080AD012:
- lsls r1, r4, 2
- adds r0, r5, 0
- adds r0, 0x60
- adds r0, r1
- ldr r0, [r0]
- bl sub_80AD30C
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- ldrb r0, [r6]
- cmp r4, r0
- bcc _080AD012
-_080AD02C:
- ldrb r0, [r7]
- cmp r0, 0
- beq _080ACFF8
-_080AD032:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ACFDC
-
- thumb_func_start snowflakes_progress2
-snowflakes_progress2: @ 80AD048
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0
- bne _080AD070
- bl snowflakes_progress
- lsls r0, 24
- cmp r0, 0
- bne _080AD070
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AD070:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end snowflakes_progress2
-
- thumb_func_start sub_80AD084
-sub_80AD084: @ 80AD084
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r0, =0x000006ce
- adds r3, r2, r0
- ldrh r1, [r3]
- cmp r1, 0
- beq _080AD0A4
- cmp r1, 0x1
- beq _080AD0B6
- movs r0, 0
- b _080AD0E2
- .pool
-_080AD0A4:
- ldr r4, =0x000006e5
- adds r0, r2, r4
- strb r1, [r0]
- subs r4, 0x5
- adds r0, r2, r4
- strh r1, [r0]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_080AD0B6:
- bl snowflakes_progress
- lsls r0, 24
- cmp r0, 0
- bne _080AD0E0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006ce
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- b _080AD0E2
- .pool
-_080AD0E0:
- movs r0, 0x1
-_080AD0E2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AD084
-
- thumb_func_start snowflakes_progress
-snowflakes_progress: @ 80AD0E8
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006e4
- adds r3, r1, r0
- ldr r4, =0x000006e5
- adds r2, r1, r4
- ldrb r0, [r3]
- ldrb r4, [r2]
- cmp r0, r4
- bne _080AD110
- movs r0, 0
- b _080AD152
- .pool
-_080AD110:
- movs r0, 0xDC
- lsls r0, 3
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x24
- bls _080AD13A
- movs r0, 0
- strh r0, [r1]
- ldrb r0, [r3]
- ldrb r2, [r2]
- cmp r0, r2
- bcs _080AD136
- bl snowflake_add
- b _080AD13A
-_080AD136:
- bl snowflake_remove
-_080AD13A:
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r2, =0x000006e4
- adds r1, r0, r2
- ldr r4, =0x000006e5
- adds r0, r4
- ldrb r1, [r1]
- ldrb r0, [r0]
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
-_080AD152:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end snowflakes_progress
-
- thumb_func_start snowflake_add
-snowflake_add: @ 80AD164
- push {r4-r6,lr}
- ldr r0, =gUnknown_0854FC8C
- movs r1, 0
- movs r2, 0
- movs r3, 0x4E
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080AD1C8
- ldr r0, =gSprites
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r4, r0
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x000006e4
- adds r6, r5, r0
- ldrb r0, [r6]
- strh r0, [r4, 0x36]
- adds r0, r4, 0
- bl sub_80AD204
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2]
- ldrb r0, [r6]
- adds r1, r0, 0x1
- strb r1, [r6]
- lsls r0, 24
- lsrs r0, 22
- adds r5, 0x60
- adds r5, r0
- str r4, [r5]
- movs r0, 0x1
- b _080AD1CA
- .pool
-_080AD1C8:
- movs r0, 0
-_080AD1CA:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end snowflake_add
-
- thumb_func_start snowflake_remove
-snowflake_remove: @ 80AD1D0
- push {lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006e4
- adds r2, r1, r0
- ldrb r0, [r2]
- cmp r0, 0
- bne _080AD1EC
- movs r0, 0
- b _080AD200
- .pool
-_080AD1EC:
- subs r0, 0x1
- strb r0, [r2]
- lsls r0, 24
- lsrs r0, 22
- adds r1, 0x60
- adds r1, r0
- ldr r0, [r1]
- bl DestroySprite
- movs r0, 0x1
-_080AD200:
- pop {r1}
- bx r1
- thumb_func_end snowflake_remove
-
- thumb_func_start sub_80AD204
-sub_80AD204: @ 80AD204
- push {r4-r7,lr}
- adds r5, r0, 0
- bl Random
- movs r1, 0x36
- ldrsh r2, [r5, r1]
- lsls r1, r2, 2
- adds r1, r2
- movs r2, 0x7
- ands r1, r2
- lsls r4, r1, 4
- subs r4, r1
- lsls r4, 1
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1E
- bl __umodsi3
- adds r4, r0
- lsls r4, 16
- lsrs r4, 16
- ldr r1, =gSpriteCoordOffsetY
- adds r0, r5, 0
- adds r0, 0x29
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- movs r2, 0x3
- negs r2, r2
- adds r1, r2, 0
- subs r1, r0
- movs r7, 0
- strh r1, [r5, 0x22]
- ldr r1, =gSpriteCoordOffsetX
- adds r0, r5, 0
- adds r0, 0x28
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- subs r4, r0
- strh r4, [r5, 0x20]
- movs r1, 0x22
- ldrsh r0, [r5, r1]
- lsls r0, 7
- strh r0, [r5, 0x2E]
- strh r7, [r5, 0x24]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r6, r0, 0
- movs r4, 0x3
- ands r4, r6
- lsls r0, r4, 2
- adds r0, r4
- adds r0, 0x40
- strh r0, [r5, 0x30]
- strh r0, [r5, 0x3C]
- movs r1, 0x1
- bics r1, r6
- adds r0, r5, 0
- bl StartSpriteAnim
- strh r7, [r5, 0x34]
- movs r0, 0x1
- cmp r4, 0
- bne _080AD294
- movs r0, 0x2
-_080AD294:
- strh r0, [r5, 0x32]
- movs r0, 0x1F
- ands r0, r6
- adds r0, 0xD2
- strh r0, [r5, 0x3A]
- strh r7, [r5, 0x38]
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD204
-
- thumb_func_start sub_80AD2B0
-sub_80AD2B0: @ 80AD2B0
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006e2
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x12
- bls _080AD2F6
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- ldr r0, =sub_80AD30C
- str r0, [r3, 0x1C]
- ldr r1, =gSpriteCoordOffsetY
- adds r0, r3, 0
- adds r0, 0x29
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r1]
- adds r0, r1
- movs r1, 0xFA
- subs r1, r0
- movs r2, 0
- strh r1, [r3, 0x22]
- movs r1, 0x22
- ldrsh r0, [r3, r1]
- lsls r0, 7
- strh r0, [r3, 0x2E]
- strh r2, [r4]
-_080AD2F6:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD2B0
-
- thumb_func_start sub_80AD30C
-sub_80AD30C: @ 80AD30C
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x30]
- ldrh r1, [r4, 0x2E]
- adds r0, r1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 23
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x32]
- ldrh r2, [r4, 0x34]
- adds r0, r2
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x34]
- ldr r1, =gSineTable
- movs r3, 0x34
- ldrsh r0, [r4, r3]
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080AD33E
- adds r0, 0x3F
-_080AD33E:
- asrs r0, 6
- strh r0, [r4, 0x24]
- adds r0, r4, 0
- adds r0, 0x28
- movs r5, 0
- ldrsb r5, [r0, r5]
- ldrh r0, [r4, 0x20]
- adds r0, r5
- ldr r1, =gSpriteCoordOffsetX
- ldrh r1, [r1]
- adds r3, r1, r0
- ldr r2, =0x000001ff
- adds r0, r2, 0
- ands r3, r0
- adds r2, r3, 0
- movs r0, 0x80
- lsls r0, 1
- ands r0, r2
- cmp r0, 0
- beq _080AD370
- ldr r3, =0xffffff00
- adds r0, r3, 0
- orrs r2, r0
- lsls r0, r2, 16
- lsrs r3, r0, 16
-_080AD370:
- lsls r0, r3, 16
- asrs r0, 16
- movs r2, 0x3
- negs r2, r2
- cmp r0, r2
- bge _080AD394
- adds r1, r5
- movs r0, 0xF2
- subs r0, r1
- b _080AD39C
- .pool
-_080AD394:
- cmp r0, 0xF2
- ble _080AD39E
- adds r0, r1, r5
- subs r0, r2, r0
-_080AD39C:
- strh r0, [r4, 0x20]
-_080AD39E:
- adds r0, r4, 0
- adds r0, 0x29
- movs r3, 0
- ldrsb r3, [r0, r3]
- ldrh r0, [r4, 0x22]
- adds r0, r3
- ldr r1, =gSpriteCoordOffsetY
- ldrh r1, [r1]
- adds r2, r1, r0
- movs r0, 0xFF
- ands r2, r0
- adds r0, r2, 0
- subs r0, 0xA4
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x6
- bhi _080AD3E0
- adds r1, r3
- movs r0, 0xFA
- subs r0, r1
- movs r1, 0
- strh r0, [r4, 0x22]
- movs r2, 0x22
- ldrsh r0, [r4, r2]
- lsls r0, 7
- strh r0, [r4, 0x2E]
- strh r1, [r4, 0x38]
- movs r0, 0xDC
- strh r0, [r4, 0x3A]
- b _080AD40C
- .pool
-_080AD3E0:
- adds r0, r2, 0
- subs r0, 0xF3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x6
- bhi _080AD40C
- movs r1, 0
- movs r0, 0xA3
- strh r0, [r4, 0x22]
- lsls r0, 7
- strh r0, [r4, 0x2E]
- strh r1, [r4, 0x38]
- movs r0, 0xDC
- strh r0, [r4, 0x3A]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =sub_80AD2B0
- str r0, [r4, 0x1C]
-_080AD40C:
- ldrh r0, [r4, 0x38]
- adds r0, 0x1
- strh r0, [r4, 0x38]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x3A
- ldrsh r1, [r4, r3]
- cmp r0, r1
- bne _080AD438
- adds r0, r4, 0
- bl sub_80AD204
- movs r0, 0xFA
- strh r0, [r4, 0x22]
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =sub_80AD2B0
- str r0, [r4, 0x1C]
-_080AD438:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD30C
-
- thumb_func_start sub_80AD444
-sub_80AD444: @ 80AD444
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r0, r1, r2
- movs r3, 0
- movs r2, 0
- strh r2, [r0]
- ldr r5, =0x000006d2
- adds r4, r1, r5
- strb r3, [r4]
- adds r5, 0x4
- adds r0, r1, r5
- strh r2, [r0]
- ldr r0, =0x000006db
- adds r2, r1, r0
- movs r0, 0x4
- strb r0, [r2]
- ldr r2, =0x000006dc
- adds r0, r1, r2
- strb r3, [r0]
- adds r5, 0x3
- adds r2, r1, r5
- movs r0, 0x10
- strb r0, [r2]
- ldr r0, =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- subs r5, 0x17
- adds r2, r1, r5
- movs r0, 0x14
- strb r0, [r2]
- strb r3, [r4]
- ldr r0, =0x000006ed
- adds r1, r0
- strb r3, [r1]
- movs r0, 0x51
- bl sub_80AC31C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD444
-
- thumb_func_start sub_80AD4B8
-sub_80AD4B8: @ 80AD4B8
- push {r4,lr}
- bl sub_80AD444
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD4D8
- adds r4, r1, r2
-_080AD4CE:
- bl sub_80AD584
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AD4CE
-_080AD4D8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD4B8
-
- thumb_func_start sub_80AD4E8
-sub_80AD4E8: @ 80AD4E8
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r0, r1, r2
- movs r4, 0
- movs r2, 0
- strh r2, [r0]
- ldr r5, =0x000006d2
- adds r3, r1, r5
- strb r4, [r3]
- adds r5, 0x4
- adds r0, r1, r5
- strh r2, [r0]
- ldr r0, =0x000006db
- adds r2, r1, r0
- movs r0, 0x4
- strb r0, [r2]
- adds r5, 0x6
- adds r2, r1, r5
- movs r0, 0x1
- strb r0, [r2]
- ldr r0, =0x000006d9
- adds r2, r1, r0
- movs r0, 0x18
- strb r0, [r2]
- subs r5, 0x1B
- adds r2, r1, r5
- movs r0, 0x3
- strb r0, [r2]
- ldr r0, =0x000006c2
- adds r1, r0
- movs r0, 0x14
- strb r0, [r1]
- strb r4, [r3]
- movs r0, 0x53
- bl sub_80AC31C
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD4E8
-
- thumb_func_start sub_80AD554
-sub_80AD554: @ 80AD554
- push {r4,lr}
- bl sub_80AD4E8
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD574
- adds r4, r1, r2
-_080AD56A:
- bl sub_80AD584
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AD56A
-_080AD574:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD554
-
- thumb_func_start sub_80AD584
-sub_80AD584: @ 80AD584
- push {r4,r5,lr}
- bl sub_80AD9F8
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006cc
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0xE
- bls _080AD59A
- b _080AD8FA
-_080AD59A:
- lsls r0, 2
- ldr r1, =_080AD5B0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AD5B0:
- .4byte _080AD5EC
- .4byte _080AD608
- .4byte _080AD62C
- .4byte _080AD65C
- .4byte _080AD680
- .4byte _080AD6B0
- .4byte _080AD6E0
- .4byte _080AD70C
- .4byte _080AD72A
- .4byte _080AD788
- .4byte _080AD80C
- .4byte _080AD834
- .4byte _080AD864
- .4byte _080AD8A8
- .4byte _080AD8DC
-_080AD5EC:
- bl sub_80ACD68
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006cc
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD608:
- bl sub_80ACD78
- lsls r0, 24
- cmp r0, 0
- beq _080AD614
- b _080AD8FA
-_080AD614:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r3, =0x000006cc
- adds r1, r3
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD62C:
- bl sub_80ACEAC
- lsls r0, 24
- cmp r0, 0
- beq _080AD638
- b _080AD8FA
-_080AD638:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006d2
- adds r2, r1, r0
- movs r0, 0x1
- strb r0, [r2]
- ldr r2, =0x000006cc
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD65C:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r3, =0x000006c6
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD66C
- b _080AD8FA
-_080AD66C:
- ldr r0, =0x000006cc
- adds r1, r0
- movs r0, 0x6
- b _080AD8F8
- .pool
-_080AD680:
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r2, =0x000006ea
- adds r1, r4, r2
- movs r0, 0x1
- strb r0, [r1]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r5, 0xB4
- lsls r5, 1
- adds r1, r5, 0
- bl __umodsi3
- adds r0, r5
- ldr r3, =0x000006e6
- adds r1, r4, r3
- strh r0, [r1]
- ldr r0, =0x000006cc
- adds r4, r0
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AD6B0:
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r3, =0x000006e6
- adds r1, r2, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- beq _080AD6C6
- b _080AD8FA
-_080AD6C6:
- ldr r0, =0x000006cc
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD6E0:
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r1, =0x000006ea
- adds r0, r4, r1
- movs r5, 0x1
- strb r5, [r0]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- ands r0, r5
- ldr r2, =0x000006eb
- adds r1, r4, r2
- strb r0, [r1]
- b _080AD768
- .pool
-_080AD70C:
- bl Random
- ldr r1, =gUnknown_0854C14C
- ldr r2, [r1]
- movs r1, 0x1
- ands r1, r0
- adds r1, 0x1
- ldr r3, =0x000006ec
- adds r0, r2, r3
- strb r1, [r0]
- ldr r0, =0x000006cc
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
-_080AD72A:
- movs r0, 0x13
- bl sub_80ABC48
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006eb
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD74E
- ldr r3, =0x000006ec
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _080AD74E
- movs r0, 0x14
- bl sub_80AD9BC
-_080AD74E:
- bl Random
- ldr r1, =gUnknown_0854C14C
- ldr r4, [r1]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r0, 0x6
- ldr r2, =0x000006e6
- adds r1, r4, r2
- strh r0, [r1]
-_080AD768:
- ldr r3, =0x000006cc
- adds r4, r3
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080AD8FA
- .pool
-_080AD788:
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r0, =0x000006e6
- adds r5, r4, r0
- ldrh r0, [r5]
- subs r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- cmp r0, 0
- beq _080AD79E
- b _080AD8FA
-_080AD79E:
- movs r0, 0x3
- bl sub_80ABC48
- ldr r2, =0x000006ea
- adds r1, r4, r2
- movs r0, 0x1
- strb r0, [r1]
- ldr r3, =0x000006ec
- adds r1, r4, r3
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- cmp r0, 0
- beq _080AD7E8
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- adds r0, 0x3C
- strh r0, [r5]
- ldr r0, =0x000006cc
- adds r1, r4, r0
- movs r0, 0xA
- b _080AD8F8
- .pool
-_080AD7E8:
- ldr r1, =0x000006eb
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AD800
- ldr r2, =0x000006cc
- adds r1, r4, r2
- b _080AD8F6
- .pool
-_080AD800:
- ldr r3, =0x000006cc
- adds r1, r4, r3
- movs r0, 0xB
- b _080AD8F8
- .pool
-_080AD80C:
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r0, =0x000006e6
- adds r1, r2, r0
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bne _080AD8FA
- ldr r3, =0x000006cc
- adds r1, r2, r3
- movs r0, 0x8
- b _080AD8F8
- .pool
-_080AD834:
- bl Random
- ldr r1, =gUnknown_0854C14C
- ldr r2, [r1]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF
- ands r0, r1
- adds r0, 0x3C
- ldr r3, =0x000006e6
- adds r1, r2, r3
- strh r0, [r1]
- ldr r0, =0x000006cc
- adds r2, r0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- b _080AD8FA
- .pool
-_080AD864:
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r1, =0x000006e6
- adds r4, r5, r1
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r4]
- lsls r0, 16
- cmp r0, 0
- bne _080AD8FA
- movs r0, 0x64
- bl sub_80AD9BC
- movs r0, 0x13
- bl sub_80ABC48
- bl Random
- movs r1, 0xF
- ands r1, r0
- adds r1, 0x1E
- strh r1, [r4]
- ldr r2, =0x000006cc
- adds r1, r5, r2
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD8A8:
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r3, =0x000006e6
- adds r1, r4, r3
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- cmp r0, 0
- bne _080AD8FA
- movs r0, 0x13
- movs r1, 0x3
- movs r2, 0x5
- bl sub_80ABC7C
- ldr r0, =0x000006cc
- adds r1, r4, r0
- ldrh r0, [r1]
- adds r0, 0x1
- b _080AD8F8
- .pool
-_080AD8DC:
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r1, =0x000006c6
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _080AD8FA
- ldr r3, =0x000006ea
- adds r1, r2, r3
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, =0x000006cc
- adds r1, r2, r0
-_080AD8F6:
- movs r0, 0x4
-_080AD8F8:
- strh r0, [r1]
-_080AD8FA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD584
-
- thumb_func_start sub_80AD910
-sub_80AD910: @ 80AD910
- push {r4-r6,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r6, [r0]
- ldr r0, =0x000006ce
- adds r5, r6, r0
- ldrh r1, [r5]
- cmp r1, 0x1
- beq _080AD946
- cmp r1, 0x1
- bgt _080AD934
- cmp r1, 0
- beq _080AD93A
- b _080AD9AC
- .pool
-_080AD934:
- cmp r1, 0x2
- beq _080AD990
- b _080AD9AC
-_080AD93A:
- ldr r2, =0x000006ea
- adds r0, r6, r2
- strb r1, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080AD946:
- bl sub_80AD584
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r1, =0x000006ea
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AD9B4
- subs r1, 0x19
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x3
- beq _080AD9AC
- cmp r0, 0x5
- beq _080AD9AC
- cmp r0, 0xD
- beq _080AD9AC
- ldr r0, =0x000006d9
- adds r1, r2, r0
- movs r0, 0
- strb r0, [r1]
- ldr r0, =0x000006ce
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080AD9B4
- .pool
-_080AD990:
- bl sub_80ACEAC
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _080AD9B4
- bl sub_80ACF38
- ldr r1, =0x000006ed
- adds r0, r6, r1
- strb r4, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080AD9AC:
- movs r0, 0
- b _080AD9B6
- .pool
-_080AD9B4:
- movs r0, 0x1
-_080AD9B6:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80AD910
-
- thumb_func_start sub_80AD9BC
-sub_80AD9BC: @ 80AD9BC
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r0, =0x000006ed
- adds r5, r4, r0
- ldrb r0, [r5]
- cmp r0, 0
- bne _080AD9EA
- bl Random
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl __umodsi3
- movs r2, 0xDD
- lsls r2, 3
- adds r1, r4, r2
- strh r0, [r1]
- movs r0, 0x1
- strb r0, [r5]
-_080AD9EA:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AD9BC
-
- thumb_func_start sub_80AD9F8
-sub_80AD9F8: @ 80AD9F8
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006ed
- adds r0, r1, r2
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _080ADA58
- movs r0, 0xDD
- lsls r0, 3
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- bne _080ADA54
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _080ADA58
- bl Random
- ands r4, r0
- cmp r4, 0
- beq _080ADA38
- movs r0, 0x57
- bl PlaySE
- b _080ADA3E
- .pool
-_080ADA38:
- movs r0, 0x58
- bl PlaySE
-_080ADA3E:
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ed
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- b _080ADA58
- .pool
-_080ADA54:
- subs r0, 0x1
- strh r0, [r1]
-_080ADA58:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80AD9F8
-
- thumb_func_start sub_80ADA60
-sub_80ADA60: @ 80ADA60
- push {lr}
- ldr r0, =gUnknown_0854C14C
- ldr r3, [r0]
- ldr r0, =0x000006cc
- adds r1, r3, r0
- movs r2, 0
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x000006d2
- adds r0, r3, r1
- strb r2, [r0]
- subs r1, 0x11
- adds r0, r3, r1
- strb r2, [r0]
- ldr r2, =0x000006c2
- adds r1, r3, r2
- movs r0, 0x14
- strb r0, [r1]
- ldr r1, =0x000006fb
- adds r0, r3, r1
- ldrb r1, [r0]
- cmp r1, 0
- bne _080ADAA8
- adds r2, 0x2E
- adds r0, r3, r2
- strh r1, [r0]
- adds r2, 0x2
- adds r0, r3, r2
- strh r1, [r0]
- subs r2, 0x4
- adds r0, r3, r2
- strh r1, [r0]
- movs r0, 0
- movs r1, 0x10
- bl sub_80AC124
-_080ADAA8:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADA60
-
- thumb_func_start sub_80ADAC0
-sub_80ADAC0: @ 80ADAC0
- push {r4,lr}
- bl sub_80ADA60
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080ADAE0
- adds r4, r1, r2
-_080ADAD6:
- bl sub_80ADAF0
- ldrb r0, [r4]
- cmp r0, 0
- beq _080ADAD6
-_080ADAE0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADAC0
-
- thumb_func_start sub_80ADAF0
-sub_80ADAF0: @ 80ADAF0
- push {r4-r6,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r6, [r0]
- ldr r0, =gSpriteCoordOffsetX
- ldr r1, =0x000006f2
- adds r2, r6, r1
- ldrh r0, [r0]
- ldrh r1, [r2]
- subs r0, r1
- movs r1, 0xFF
- ands r0, r1
- ldr r3, =0x000006ee
- adds r1, r6, r3
- strh r0, [r1]
- movs r0, 0xDE
- lsls r0, 3
- adds r1, r6, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3
- bls _080ADB2A
- movs r0, 0
- strh r0, [r1]
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
-_080ADB2A:
- ldr r1, =0x000006cc
- adds r5, r6, r1
- ldrh r4, [r5]
- cmp r4, 0
- beq _080ADB50
- cmp r4, 0x1
- beq _080ADB90
- b _080ADBA6
- .pool
-_080ADB50:
- bl sub_80ADCAC
- movs r3, 0xDA
- lsls r3, 3
- adds r0, r6, r3
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _080ADB6C
- movs r0, 0xC
- movs r1, 0x8
- movs r2, 0x3
- bl sub_80AC164
- b _080ADB76
-_080ADB6C:
- movs r0, 0x4
- movs r1, 0x10
- movs r2, 0
- bl sub_80AC164
-_080ADB76:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006cc
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080ADBA6
- .pool
-_080ADB90:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080ADBA6
- ldr r1, =0x000006d2
- adds r0, r6, r1
- strb r4, [r0]
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
-_080ADBA6:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADAF0
-
- thumb_func_start sub_80ADBB0
-sub_80ADBB0: @ 80ADBB0
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r0, =gSpriteCoordOffsetX
- ldr r1, =0x000006f2
- adds r3, r2, r1
- ldrh r0, [r0]
- ldrh r1, [r3]
- subs r0, r1
- movs r1, 0xFF
- ands r0, r1
- ldr r4, =0x000006ee
- adds r1, r2, r4
- strh r0, [r1]
- movs r0, 0xDE
- lsls r0, 3
- adds r1, r2, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x3
- bls _080ADBEA
- movs r0, 0
- strh r0, [r1]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
-_080ADBEA:
- ldr r1, =0x000006ce
- adds r4, r2, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080ADC26
- cmp r0, 0x1
- bgt _080ADC14
- cmp r0, 0
- beq _080ADC1A
- b _080ADC3E
- .pool
-_080ADC14:
- cmp r0, 0x2
- beq _080ADC32
- b _080ADC3E
-_080ADC1A:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x3
- bl sub_80AC164
- b _080ADC36
-_080ADC26:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080ADC42
- b _080ADC36
-_080ADC32:
- bl sub_80ADD68
-_080ADC36:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080ADC42
-_080ADC3E:
- movs r0, 0
- b _080ADC44
-_080ADC42:
- movs r0, 0x1
-_080ADC44:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80ADBB0
-
- thumb_func_start sub_80ADC4C
-sub_80ADC4C: @ 80ADC4C
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gSpriteCoordOffsetY
- ldrb r0, [r0]
- strh r0, [r3, 0x26]
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ee
- adds r2, r0, r1
- ldrh r1, [r2]
- adds r1, 0x20
- movs r4, 0x2E
- ldrsh r0, [r3, r4]
- lsls r0, 6
- adds r1, r0
- strh r1, [r3, 0x20]
- lsls r1, 16
- ldr r0, =0x010f0000
- cmp r1, r0
- ble _080ADC90
- movs r0, 0xF0
- lsls r0, 1
- adds r1, r0, 0
- ldrh r2, [r2]
- adds r1, r2
- movs r4, 0x2E
- ldrsh r2, [r3, r4]
- movs r0, 0x4
- subs r0, r2
- lsls r0, 6
- subs r1, r0
- ldr r0, =0x000001ff
- ands r1, r0
- strh r1, [r3, 0x20]
-_080ADC90:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADC4C
-
- thumb_func_start sub_80ADCAC
-sub_80ADCAC: @ 80ADCAC
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006fb
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080ADD56
- ldr r0, =gUnknown_0854FD30
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- movs r5, 0
-_080ADCD0:
- ldr r0, =gSpriteTemplate_854FD18
- movs r1, 0
- movs r2, 0
- movs r3, 0xFF
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _080ADD34
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- adds r0, r5, 0
- movs r1, 0x5
- bl __umodsi3
- strh r0, [r4, 0x2E]
- lsls r0, 16
- lsrs r0, 10
- adds r0, 0x20
- strh r0, [r4, 0x20]
- adds r0, r5, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 16
- lsrs r0, 10
- adds r0, 0x20
- strh r0, [r4, 0x22]
- ldr r2, =gUnknown_0854C14C
- ldr r0, [r2]
- lsls r1, r5, 2
- adds r0, 0xA0
- adds r0, r1
- str r4, [r0]
- b _080ADD42
- .pool
-_080ADD34:
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- lsls r0, r5, 2
- adds r1, 0xA0
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_080ADD42:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x13
- bls _080ADCD0
- ldr r0, [r2]
- ldr r1, =0x000006fb
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_080ADD56:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADCAC
-
- thumb_func_start sub_80ADD68
-sub_80ADD68: @ 80ADD68
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006fb
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080ADDA8
- movs r4, 0
- adds r5, r1, 0
- adds r5, 0xA0
-_080ADD7E:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080ADD8C
- bl DestroySprite
-_080ADD8C:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x13
- bls _080ADD7E
- ldr r0, =0x00001201
- bl FreeSpriteTilesByTag
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006fb
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080ADDA8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADD68
-
- thumb_func_start sub_80ADDBC
-sub_80ADDBC: @ 80ADDBC
- push {lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006cc
- adds r2, r1, r0
- movs r3, 0
- movs r0, 0
- strh r0, [r2]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- strb r3, [r0]
- subs r2, 0x11
- adds r0, r1, r2
- strb r3, [r0]
- ldr r3, =0x000006c2
- adds r0, r1, r3
- movs r2, 0x14
- strb r2, [r0]
- adds r3, 0x3C
- adds r0, r1, r3
- strh r2, [r0]
- movs r0, 0xE0
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- bne _080ADE04
- movs r0, 0
- movs r1, 0x10
- bl sub_80AC124
- movs r1, 0xFD
- lsls r1, 6
- movs r0, 0x52
- bl SetGpuReg
-_080ADE04:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADDBC
-
- thumb_func_start sub_80ADE18
-sub_80ADE18: @ 80ADE18
- push {r4,lr}
- bl sub_80ADDBC
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080ADE38
- adds r4, r1, r2
-_080ADE2E:
- bl sub_80ADE48
- ldrb r0, [r4]
- cmp r0, 0
- beq _080ADE2E
-_080ADE38:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADE18
-
- thumb_func_start sub_80ADE48
-sub_80ADE48: @ 80ADE48
- push {r4,r5,lr}
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- ldr r0, =gSpriteCoordOffsetX
- ldrh r0, [r0]
- ldr r3, =0x000001ff
- ands r3, r0
- ldr r0, =0x000006fc
- adds r1, r0
- strh r3, [r1]
- cmp r3, 0xEF
- bls _080ADE74
- adds r4, r1, 0
- adds r1, r3, 0
-_080ADE64:
- adds r3, r1, 0
- subs r3, 0xF0
- adds r1, r3, 0
- lsls r0, r3, 16
- lsrs r0, 16
- cmp r0, 0xEF
- bhi _080ADE64
- strh r3, [r4]
-_080ADE74:
- ldr r5, [r2]
- ldr r1, =0x000006cc
- adds r4, r5, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080ADEAC
- cmp r0, 0x1
- bgt _080ADEA0
- cmp r0, 0
- beq _080ADEA6
- b _080ADEE8
- .pool
-_080ADEA0:
- cmp r0, 0x2
- beq _080ADEC8
- b _080ADEE8
-_080ADEA6:
- bl sub_80ADF5C
- b _080ADEDA
-_080ADEAC:
- movs r1, 0xE0
- lsls r1, 3
- adds r0, r5, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080ADEBC
- bl sub_80ADF6C
-_080ADEBC:
- movs r0, 0x10
- movs r1, 0
- movs r2, 0x1
- bl sub_80AC164
- b _080ADEDA
-_080ADEC8:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080ADEEC
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080ADEDA:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080ADEEC
- .pool
-_080ADEE8:
- bl sub_80AC1A8
-_080ADEEC:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80ADE48
-
- thumb_func_start sub_80ADEF4
-sub_80ADEF4: @ 80ADEF4
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080ADF2A
- cmp r0, 0x1
- bgt _080ADF18
- cmp r0, 0
- beq _080ADF1E
- b _080ADF4E
- .pool
-_080ADF18:
- cmp r0, 0x2
- beq _080ADF40
- b _080ADF4E
-_080ADF1E:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x1
- bl sub_80AC164
- b _080ADF38
-_080ADF2A:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080ADF52
- bl sub_80AE014
-_080ADF38:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080ADF52
-_080ADF40:
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080ADF4E:
- movs r0, 0
- b _080ADF54
-_080ADF52:
- movs r0, 0x1
-_080ADF54:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80ADEF4
-
- thumb_func_start sub_80ADF5C
-sub_80ADF5C: @ 80ADF5C
- push {lr}
- ldr r0, =gUnknown_0854FD38
- bl LoadSpriteSheet
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADF5C
-
- thumb_func_start sub_80ADF6C
-sub_80ADF6C: @ 80ADF6C
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- movs r1, 0xE0
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE008
- movs r5, 0
-_080ADF80:
- ldr r0, =gSpriteTemplate_854FD58
- movs r1, 0
- movs r2, 0
- movs r3, 0x4E
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _080ADFE4
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- movs r0, 0
- strh r0, [r4, 0x30]
- adds r0, r5, 0
- movs r1, 0x5
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x32]
- adds r0, r5, 0
- movs r1, 0x5
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x34]
- movs r1, 0x34
- ldrsh r0, [r4, r1]
- lsls r0, 6
- adds r0, 0x20
- strh r0, [r4, 0x2E]
- ldr r2, =gUnknown_0854C14C
- ldr r0, [r2]
- lsls r1, r5, 2
- adds r0, 0xF0
- adds r0, r1
- str r4, [r0]
- b _080ADFF2
- .pool
-_080ADFE4:
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- lsls r0, r5, 2
- adds r1, 0xF0
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_080ADFF2:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x13
- bls _080ADF80
- ldr r0, [r2]
- movs r1, 0xE0
- lsls r1, 3
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_080AE008:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80ADF6C
-
- thumb_func_start sub_80AE014
-sub_80AE014: @ 80AE014
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- movs r2, 0xE0
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AE058
- movs r4, 0
- adds r5, r1, 0
- adds r5, 0xF0
-_080AE02C:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080AE03A
- bl DestroySprite
-_080AE03A:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x13
- bls _080AE02C
- ldr r0, =0x00001202
- bl FreeSpriteTilesByTag
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- movs r1, 0xE0
- lsls r1, 3
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080AE058:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE014
-
- thumb_func_start sub_80AE068
-sub_80AE068: @ 80AE068
- push {r4,lr}
- adds r3, r0, 0
- ldrh r0, [r3, 0x30]
- adds r0, 0x1
- strh r0, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- ble _080AE084
- movs r0, 0
- strh r0, [r3, 0x30]
- ldrh r0, [r3, 0x2E]
- adds r0, 0x1
- strh r0, [r3, 0x2E]
-_080AE084:
- ldr r1, =gSpriteCoordOffsetY
- ldrh r0, [r3, 0x2E]
- ldrh r1, [r1]
- adds r0, r1
- strh r0, [r3, 0x22]
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006fc
- adds r2, r0, r1
- ldrh r1, [r2]
- adds r1, 0x20
- movs r4, 0x32
- ldrsh r0, [r3, r4]
- lsls r0, 6
- adds r1, r0
- strh r1, [r3, 0x20]
- lsls r1, 16
- ldr r0, =0x010f0000
- cmp r1, r0
- ble _080AE0C8
- movs r0, 0xF0
- lsls r0, 1
- adds r1, r0, 0
- ldrh r2, [r2]
- adds r1, r2
- movs r4, 0x32
- ldrsh r2, [r3, r4]
- movs r0, 0x4
- subs r0, r2
- lsls r0, 6
- subs r1, r0
- ldr r0, =0x000001ff
- ands r1, r0
- strh r1, [r3, 0x20]
-_080AE0C8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE068
-
- thumb_func_start sub_80AE0E4
-sub_80AE0E4: @ 80AE0E4
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r3, [r0]
- ldr r1, =0x000006cc
- adds r0, r3, r1
- movs r1, 0
- movs r2, 0
- strh r2, [r0]
- ldr r4, =0x000006d2
- adds r0, r3, r4
- strb r1, [r0]
- subs r4, 0x11
- adds r0, r3, r4
- strb r1, [r0]
- ldr r0, =0x000006c2
- adds r1, r3, r0
- movs r0, 0x14
- strb r0, [r1]
- movs r1, 0xDE
- lsls r1, 3
- adds r0, r3, r1
- strh r2, [r0]
- adds r4, 0x31
- adds r1, r3, r4
- movs r0, 0x1
- strh r0, [r1]
- ldr r1, =0x00000724
- adds r0, r3, r1
- ldrb r2, [r0]
- cmp r2, 0
- bne _080AE14E
- adds r4, 0x2A
- adds r0, r3, r4
- strh r2, [r0]
- subs r1, 0x6
- adds r0, r3, r1
- strh r2, [r0]
- adds r4, 0x4
- adds r0, r3, r4
- strh r2, [r0]
- adds r1, 0x4
- adds r0, r3, r1
- strh r2, [r0]
- subs r4, 0x8
- adds r0, r3, r4
- strh r2, [r0]
- subs r1, 0x8
- adds r0, r3, r1
- strh r2, [r0]
- movs r0, 0
- movs r1, 0x10
- bl sub_80AC124
-_080AE14E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE0E4
-
- thumb_func_start sub_80AE168
-sub_80AE168: @ 80AE168
- push {r4,lr}
- bl sub_80AE0E4
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE188
- adds r4, r1, r2
-_080AE17E:
- bl sub_80AE198
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AE17E
-_080AE188:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE168
-
- thumb_func_start sub_80AE198
-sub_80AE198: @ 80AE198
- push {r4,r5,lr}
- bl sub_80AE25C
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AE1CC
- cmp r0, 0x1
- bgt _080AE1C0
- cmp r0, 0
- beq _080AE1C6
- b _080AE1F0
- .pool
-_080AE1C0:
- cmp r0, 0x2
- beq _080AE1D8
- b _080AE1F0
-_080AE1C6:
- bl sub_80AE2F0
- b _080AE1EA
-_080AE1CC:
- movs r0, 0xC
- movs r1, 0x8
- movs r2, 0x8
- bl sub_80AC164
- b _080AE1EA
-_080AE1D8:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AE1F0
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080AE1EA:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AE1F0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE198
-
- thumb_func_start sub_80AE1FC
-sub_80AE1FC: @ 80AE1FC
- push {r4,lr}
- bl sub_80AE25C
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AE236
- cmp r0, 0x1
- bgt _080AE224
- cmp r0, 0
- beq _080AE22A
- b _080AE24E
- .pool
-_080AE224:
- cmp r0, 0x2
- beq _080AE242
- b _080AE24E
-_080AE22A:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0x1
- bl sub_80AC164
- b _080AE246
-_080AE236:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AE252
- b _080AE246
-_080AE242:
- bl sub_80AE3A8
-_080AE246:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080AE252
-_080AE24E:
- movs r0, 0
- b _080AE254
-_080AE252:
- movs r0, 0x1
-_080AE254:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AE1FC
-
- thumb_func_start sub_80AE25C
-sub_80AE25C: @ 80AE25C
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r3, [r0]
- ldr r0, =0x0000071c
- adds r2, r3, r0
- ldrh r0, [r2]
- adds r0, 0x1
- movs r5, 0
- strh r0, [r2]
- ldr r1, =0x0000ffff
- adds r4, r1, 0
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- bls _080AE288
- movs r0, 0xE4
- lsls r0, 3
- adds r1, r3, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- strh r5, [r2]
-_080AE288:
- ldr r1, =0x0000071e
- adds r2, r3, r1
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- ands r0, r4
- cmp r0, 0x4
- bls _080AE2A4
- ldr r0, =0x00000722
- adds r1, r3, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- strh r5, [r2]
-_080AE2A4:
- ldr r0, =gSpriteCoordOffsetX
- movs r2, 0xE4
- lsls r2, 3
- adds r1, r3, r2
- ldrh r0, [r0]
- ldrh r1, [r1]
- subs r0, r1
- movs r1, 0xFF
- ands r0, r1
- subs r2, 0x8
- adds r1, r3, r2
- strh r0, [r1]
- ldr r1, =gSpriteCoordOffsetY
- adds r2, 0xA
- adds r0, r3, r2
- ldrh r0, [r0]
- ldrh r1, [r1]
- adds r0, r1
- subs r2, 0x8
- adds r1, r3, r2
- strh r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE25C
-
- thumb_func_start sub_80AE2F0
-sub_80AE2F0: @ 80AE2F0
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x00000724
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE396
- ldr r0, =gUnknown_0854FD70
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- movs r6, 0
-_080AE314:
- adds r0, r6, 0
- movs r1, 0x5
- bl __udivsi3
- adds r5, r0, 0
- lsls r2, r5, 22
- asrs r2, 16
- ldr r0, =gSpriteTemplate_854FD8C
- movs r1, 0
- movs r3, 0xFF
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _080AE370
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- adds r0, r6, 0
- movs r1, 0x5
- bl __umodsi3
- strh r0, [r4, 0x2E]
- strh r5, [r4, 0x30]
- ldr r2, =gUnknown_0854C14C
- ldr r0, [r2]
- lsls r1, r6, 2
- movs r3, 0xA0
- lsls r3, 1
- adds r0, r3
- adds r0, r1
- str r4, [r0]
- b _080AE382
- .pool
-_080AE370:
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- lsls r0, r6, 2
- movs r3, 0xA0
- lsls r3, 1
- adds r1, r3
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_080AE382:
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- cmp r6, 0x13
- bls _080AE314
- ldr r0, [r2]
- ldr r1, =0x00000724
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_080AE396:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE2F0
-
- thumb_func_start sub_80AE3A8
-sub_80AE3A8: @ 80AE3A8
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x00000724
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AE3EA
- movs r4, 0
- movs r0, 0xA0
- lsls r0, 1
- adds r5, r1, r0
-_080AE3C0:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080AE3CE
- bl DestroySprite
-_080AE3CE:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x13
- bls _080AE3C0
- ldr r0, =0x00001203
- bl FreeSpriteTilesByTag
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x00000724
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080AE3EA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE3A8
-
- thumb_func_start sub_80AE3FC
-sub_80AE3FC: @ 80AE3FC
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x0000071a
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r3, 0x26]
- movs r4, 0xE3
- lsls r4, 3
- adds r2, r1, r4
- ldrh r1, [r2]
- adds r1, 0x20
- movs r4, 0x2E
- ldrsh r0, [r3, r4]
- lsls r0, 6
- adds r1, r0
- strh r1, [r3, 0x20]
- lsls r1, 16
- ldr r0, =0x010f0000
- cmp r1, r0
- ble _080AE444
- movs r0, 0xF0
- lsls r0, 1
- adds r1, r0, 0
- ldrh r2, [r2]
- adds r1, r2
- movs r4, 0x2E
- ldrsh r2, [r3, r4]
- movs r0, 0x4
- subs r0, r2
- lsls r0, 6
- subs r1, r0
- ldr r0, =0x000001ff
- ands r1, r0
- strh r1, [r3, 0x20]
-_080AE444:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE3FC
-
- thumb_func_start sub_80AE45C
-sub_80AE45C: @ 80AE45C
- push {r4,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r3, [r0]
- ldr r0, =0x000006cc
- adds r1, r3, r0
- movs r2, 0
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x000006d2
- adds r0, r3, r1
- strb r2, [r0]
- ldr r4, =0x000006c1
- adds r0, r3, r4
- strb r2, [r0]
- ldr r0, =0x000006c2
- adds r1, r3, r0
- movs r0, 0x14
- strb r0, [r1]
- ldr r1, =0x00000716
- adds r0, r3, r1
- ldrb r2, [r0]
- cmp r2, 0
- bne _080AE4B8
- adds r4, 0x43
- adds r1, r3, r4
- adds r4, 0x4
- adds r0, r3, r4
- str r2, [r0]
- str r2, [r1]
- ldr r0, =0x00000712
- adds r1, r3, r0
- movs r0, 0x8
- strh r0, [r1]
- adds r4, 0xC
- adds r0, r3, r4
- strh r2, [r0]
- ldrh r2, [r1]
- cmp r2, 0x5F
- bls _080AE4B0
- movs r0, 0x80
- subs r0, r2
- strh r0, [r1]
-_080AE4B0:
- movs r0, 0
- movs r1, 0x10
- bl sub_80AC124
-_080AE4B8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE45C
-
- thumb_func_start sub_80AE4DC
-sub_80AE4DC: @ 80AE4DC
- push {r4,lr}
- bl sub_80AE45C
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE4FC
- adds r4, r1, r2
-_080AE4F2:
- bl sub_80AE50C
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AE4F2
-_080AE4FC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE4DC
-
- thumb_func_start sub_80AE50C
-sub_80AE50C: @ 80AE50C
- push {r4,r5,lr}
- bl sub_80AE624
- bl sub_80AE5EC
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x00000712
- adds r1, r5, r0
- ldrh r0, [r1]
- cmp r0, 0x5F
- bls _080AE528
- movs r0, 0x20
- strh r0, [r1]
-_080AE528:
- ldr r0, =0x000006cc
- adds r4, r5, r0
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AE558
- cmp r0, 0x1
- bgt _080AE548
- cmp r0, 0
- beq _080AE54E
- b _080AE57C
- .pool
-_080AE548:
- cmp r0, 0x2
- beq _080AE564
- b _080AE57C
-_080AE54E:
- bl sub_80AE738
- bl sub_80AE7F8
- b _080AE576
-_080AE558:
- movs r0, 0x10
- movs r1, 0
- movs r2, 0
- bl sub_80AC164
- b _080AE576
-_080AE564:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AE57C
- ldr r0, =0x000006d2
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
-_080AE576:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_080AE57C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE50C
-
- thumb_func_start sub_80AE588
-sub_80AE588: @ 80AE588
- push {r4,lr}
- bl sub_80AE624
- bl sub_80AE5EC
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x000006ce
- adds r4, r0, r1
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _080AE5C6
- cmp r0, 0x1
- bgt _080AE5B4
- cmp r0, 0
- beq _080AE5BA
- b _080AE5DE
- .pool
-_080AE5B4:
- cmp r0, 0x2
- beq _080AE5D2
- b _080AE5DE
-_080AE5BA:
- movs r0, 0
- movs r1, 0x10
- movs r2, 0
- bl sub_80AC164
- b _080AE5D6
-_080AE5C6:
- bl sub_80AC1A8
- lsls r0, 24
- cmp r0, 0
- beq _080AE5E2
- b _080AE5D6
-_080AE5D2:
- bl sub_80AE6A4
-_080AE5D6:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080AE5E2
-_080AE5DE:
- movs r0, 0
- b _080AE5E4
-_080AE5E2:
- movs r0, 0x1
-_080AE5E4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80AE588
-
- thumb_func_start sub_80AE5EC
-sub_80AE5EC: @ 80AE5EC
- push {lr}
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r0, =0x00000714
- adds r3, r2, r0
- ldrh r0, [r3]
- adds r1, r0, 0x1
- strh r1, [r3]
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x4
- bls _080AE612
- ldr r1, =0x00000712
- adds r0, r2, r1
- ldrh r1, [r0]
- adds r1, 0x1
- movs r2, 0
- strh r1, [r0]
- strh r2, [r3]
-_080AE612:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE5EC
-
- thumb_func_start sub_80AE624
-sub_80AE624: @ 80AE624
- push {r4-r6,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r2, [r0]
- ldr r0, =0x00000704
- adds r4, r2, r0
- ldr r6, =gSineTable
- ldr r1, =0x00000712
- adds r5, r2, r1
- ldrh r0, [r5]
- lsls r0, 1
- adds r0, r6
- movs r3, 0
- ldrsh r1, [r0, r3]
- lsls r1, 2
- ldr r0, [r4]
- subs r0, r1
- str r0, [r4]
- movs r0, 0xE1
- lsls r0, 3
- adds r3, r2, r0
- ldrh r0, [r5]
- lsls r0, 1
- adds r0, r6
- movs r5, 0
- ldrsh r1, [r0, r5]
- ldr r0, [r3]
- subs r0, r1
- str r0, [r3]
- ldr r1, =gSpriteCoordOffsetX
- ldr r0, [r4]
- lsrs r0, 8
- ldrh r1, [r1]
- adds r0, r1
- movs r1, 0xFF
- ands r0, r1
- ldr r4, =0x0000070e
- adds r1, r2, r4
- strh r0, [r1]
- ldr r1, =gSpriteCoordOffsetY
- ldr r0, [r3]
- lsrs r0, 8
- ldrh r1, [r1]
- adds r0, r1
- movs r5, 0xE2
- lsls r5, 3
- adds r2, r5
- strh r0, [r2]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE624
-
- thumb_func_start sub_80AE6A4
-sub_80AE6A4: @ 80AE6A4
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x00000716
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AE6E6
- movs r4, 0
- movs r0, 0xC8
- lsls r0, 1
- adds r5, r1, r0
-_080AE6BC:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080AE6CA
- bl DestroySprite
-_080AE6CA:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x13
- bls _080AE6BC
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x00000716
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, =0x00001204
- bl FreeSpriteTilesByTag
-_080AE6E6:
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x00000717
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080AE720
- movs r4, 0
- movs r0, 0xF0
- lsls r0, 1
- adds r5, r1, r0
-_080AE6FC:
- lsls r0, r4, 2
- adds r0, r5, r0
- ldr r0, [r0]
- cmp r0, 0
- beq _080AE70A
- bl DestroySprite
-_080AE70A:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x4
- bls _080AE6FC
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x00000717
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
-_080AE720:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE6A4
-
- thumb_func_start sub_80AE738
-sub_80AE738: @ 80AE738
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x00000716
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE7E6
- ldr r0, =gUnknown_0854FDDC
- bl LoadSpriteSheet
- ldr r0, =gUnknown_0854C2B0
- bl sub_80ABF4C
- movs r7, 0
-_080AE758:
- adds r0, r7, 0
- movs r1, 0x5
- bl __udivsi3
- adds r6, r0, 0
- lsls r2, r6, 22
- asrs r2, 16
- ldr r0, =gSpriteTemplate_854FDC4
- movs r1, 0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080AE7C0
- ldr r2, =gUnknown_0854C14C
- ldr r5, [r2]
- lsls r0, r7, 2
- movs r3, 0xC8
- lsls r3, 1
- adds r5, r3
- adds r5, r0
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- ldr r0, =gSprites
- adds r4, r0
- str r4, [r5]
- adds r0, r7, 0
- movs r1, 0x5
- str r2, [sp]
- bl __umodsi3
- strh r0, [r4, 0x2E]
- ldr r0, [r5]
- strh r6, [r0, 0x30]
- ldr r2, [sp]
- b _080AE7D2
- .pool
-_080AE7C0:
- ldr r2, =gUnknown_0854C14C
- ldr r1, [r2]
- lsls r0, r7, 2
- movs r3, 0xC8
- lsls r3, 1
- adds r1, r3
- adds r1, r0
- movs r0, 0
- str r0, [r1]
-_080AE7D2:
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0x13
- bls _080AE758
- ldr r0, [r2]
- ldr r1, =0x00000716
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
-_080AE7E6:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE738
-
- thumb_func_start sub_80AE7F8
-sub_80AE7F8: @ 80AE7F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, =gUnknown_0854C14C
- ldr r0, [r4]
- ldr r1, =0x00000717
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AE8E4
- movs r7, 0
- mov r9, r4
- movs r2, 0
- mov r10, r2
-_080AE818:
- lsls r0, r7, 1
- mov r8, r0
- adds r6, r0, r7
- lsls r5, r6, 4
- adds r1, r5, 0
- adds r1, 0x18
- lsls r1, 16
- asrs r1, 16
- ldr r0, =gSpriteTemplate_854FDC4
- movs r2, 0xD0
- movs r3, 0x1
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x40
- beq _080AE8BC
- mov r2, r9
- ldr r4, [r2]
- lsls r0, r7, 2
- movs r2, 0xF0
- lsls r2, 1
- adds r4, r2
- adds r4, r0
- lsls r2, r1, 4
- adds r2, r1
- lsls r2, 2
- ldr r0, =gSprites
- adds r2, r0
- str r2, [r4]
- ldrb r1, [r2, 0x3]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x3]
- ldr r1, [r4]
- adds r0, r6, r5
- strh r0, [r1, 0x30]
- ldr r1, [r4]
- movs r0, 0x8
- strh r0, [r1, 0x2E]
- ldr r0, [r4]
- mov r1, r10
- strh r1, [r0, 0x32]
- ldr r1, [r4]
- ldr r0, =0x00006730
- strh r0, [r1, 0x36]
- ldr r1, [r4]
- ldr r0, =gUnknown_0854FDE4
- add r0, r8
- ldrh r0, [r0]
- strh r0, [r1, 0x34]
- ldr r0, [r4]
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, [r4]
- movs r1, 0
- movs r2, 0x2
- movs r3, 0
- bl CalcCenterToCornerVec
- ldr r1, [r4]
- ldr r0, =sub_80AE958
- str r0, [r1, 0x1C]
- b _080AE8CE
- .pool
-_080AE8BC:
- mov r2, r9
- ldr r0, [r2]
- lsls r1, r7, 2
- movs r2, 0xF0
- lsls r2, 1
- adds r0, r2
- adds r0, r1
- mov r1, r10
- str r1, [r0]
-_080AE8CE:
- mov r2, r9
- ldr r0, [r2]
- ldr r1, =0x00000717
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- adds r0, r7, 0x1
- lsls r0, 16
- lsrs r7, r0, 16
- cmp r7, 0x4
- bls _080AE818
-_080AE8E4:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE7F8
-
- thumb_func_start sub_80AE8F8
-sub_80AE8F8: @ 80AE8F8
- push {r4,lr}
- adds r3, r0, 0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- movs r2, 0xE2
- lsls r2, 3
- adds r0, r1, r2
- ldrh r0, [r0]
- strh r0, [r3, 0x26]
- ldr r4, =0x0000070e
- adds r2, r1, r4
- ldrh r1, [r2]
- adds r1, 0x20
- movs r4, 0x2E
- ldrsh r0, [r3, r4]
- lsls r0, 6
- adds r1, r0
- strh r1, [r3, 0x20]
- lsls r1, 16
- ldr r0, =0x010f0000
- cmp r1, r0
- ble _080AE940
- movs r0, 0xF0
- lsls r0, 1
- adds r1, r0, 0
- ldrh r2, [r2]
- adds r1, r2
- movs r4, 0x2E
- ldrsh r2, [r3, r4]
- movs r0, 0x4
- subs r0, r2
- lsls r0, 6
- subs r1, r0
- ldr r0, =0x000001ff
- ands r1, r0
- strh r1, [r3, 0x20]
-_080AE940:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE8F8
-
- thumb_func_start sub_80AE958
-sub_80AE958: @ 80AE958
- push {lr}
- adds r2, r0, 0
- ldrh r0, [r2, 0x34]
- subs r0, 0x1
- strh r0, [r2, 0x34]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080AE972
- ldr r0, =sub_80AE97C
- str r0, [r2, 0x1C]
-_080AE972:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE958
-
- thumb_func_start sub_80AE97C
-sub_80AE97C: @ 80AE97C
- push {r4,r5,lr}
- adds r5, r0, 0
- ldrh r0, [r5, 0x22]
- subs r0, 0x1
- strh r0, [r5, 0x22]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x30
- negs r1, r1
- cmp r0, r1
- bge _080AE99A
- movs r0, 0xD0
- strh r0, [r5, 0x22]
- movs r0, 0x4
- strh r0, [r5, 0x2E]
-_080AE99A:
- movs r0, 0x2E
- ldrsh r4, [r5, r0]
- ldr r3, =gSineTable
- movs r2, 0x30
- ldrsh r1, [r5, r2]
- lsls r0, r1, 1
- adds r0, r3
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r2, r4, 0
- muls r2, r0
- adds r1, 0x40
- lsls r1, 1
- adds r1, r3
- movs r3, 0
- ldrsh r0, [r1, r3]
- muls r0, r4
- lsrs r2, 8
- strh r2, [r5, 0x24]
- lsrs r0, 8
- strh r0, [r5, 0x26]
- ldrh r0, [r5, 0x30]
- adds r0, 0xA
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r5, 0x30]
- ldrh r0, [r5, 0x32]
- adds r0, 0x1
- strh r0, [r5, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _080AE9E6
- movs r0, 0
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x2E]
- adds r0, 0x1
- strh r0, [r5, 0x2E]
-_080AE9E6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AE97C
-
- thumb_func_start sub_80AE9F0
-sub_80AE9F0: @ 80AE9F0
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x000006cc
- adds r2, r1, r0
- movs r0, 0
- strh r0, [r2]
- ldr r0, =0x000006c1
- adds r2, r1, r0
- movs r0, 0x3
- strb r0, [r2]
- ldr r0, =0x000006c2
- adds r1, r0
- movs r0, 0x14
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_80AE9F0
-
- thumb_func_start sub_80AEA20
-sub_80AEA20: @ 80AEA20
- push {lr}
- bl sub_80AE9F0
- pop {r0}
- bx r0
- thumb_func_end sub_80AEA20
-
- thumb_func_start nullsub_96
-nullsub_96: @ 80AEA2C
- bx lr
- thumb_func_end nullsub_96
-
- thumb_func_start sub_80AEA30
-sub_80AEA30: @ 80AEA30
- movs r0, 0
- bx lr
- thumb_func_end sub_80AEA30
-
- thumb_func_start sub_80AEA34
-sub_80AEA34: @ 80AEA34
- push {r4,r5,lr}
- bl sub_80ADA60
- ldr r0, =gUnknown_0854C14C
- ldr r4, [r0]
- ldr r1, =0x0000072e
- adds r0, r4, r1
- ldrb r5, [r0]
- cmp r5, 0
- bne _080AEA6C
- ldr r0, =gUnknown_0854FDF8
- bl LoadSpriteSheet
- movs r2, 0xE5
- lsls r2, 3
- adds r0, r4, r2
- strh r5, [r0]
- ldr r0, =gUnknown_0854FDF0
- ldrb r1, [r0]
- subs r2, 0x2
- adds r0, r4, r2
- strh r1, [r0]
- ldr r1, =0x0000072a
- adds r0, r4, r1
- strh r5, [r0]
- adds r2, 0x6
- adds r0, r4, r2
- strh r5, [r0]
-_080AEA6C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEA34
-
- thumb_func_start sub_80AEA88
-sub_80AEA88: @ 80AEA88
- push {r4,lr}
- bl sub_80AEA34
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r2, =0x000006d2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AEAA8
- adds r4, r1, r2
-_080AEA9E:
- bl sub_80AEAB8
- ldrb r0, [r4]
- cmp r0, 0
- beq _080AEA9E
-_080AEAA8:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEA88
-
- thumb_func_start sub_80AEAB8
-sub_80AEAB8: @ 80AEAB8
- push {r4-r7,lr}
- bl sub_80ADAF0
- ldr r0, =gUnknown_0854C14C
- ldr r5, [r0]
- ldr r0, =0x00000726
- adds r4, r5, r0
- ldrh r0, [r4]
- adds r0, 0x1
- movs r6, 0
- strh r0, [r4]
- ldr r1, =0x0000ffff
- adds r7, r1, 0
- ldr r2, =gUnknown_0854FDF0
- movs r1, 0xE5
- lsls r1, 3
- adds r3, r5, r1
- ldrh r1, [r3]
- adds r1, r2
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1]
- cmp r0, r1
- bls _080AEB10
- strh r6, [r4]
- ldrh r0, [r3]
- adds r0, 0x1
- strh r0, [r3]
- ands r0, r7
- cmp r0, 0x7
- bls _080AEAF8
- strh r6, [r3]
-_080AEAF8:
- ldr r0, =0x0000072a
- adds r4, r5, r0
- ldrh r0, [r4]
- bl sub_80AEB48
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- ands r0, r7
- cmp r0, 0xC
- bls _080AEB10
- strh r6, [r4]
-_080AEB10:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEAB8
-
- thumb_func_start sub_80AEB2C
-sub_80AEB2C: @ 80AEB2C
- push {lr}
- bl sub_80ADBB0
- lsls r0, 24
- cmp r0, 0
- beq _080AEB3C
- movs r0, 0x1
- b _080AEB42
-_080AEB3C:
- bl sub_80AEBD0
- movs r0, 0
-_080AEB42:
- pop {r1}
- bx r1
- thumb_func_end sub_80AEB2C
-
- thumb_func_start sub_80AEB48
-sub_80AEB48: @ 80AEB48
- push {r4,lr}
- lsls r0, 16
- ldr r1, =gUnknown_0854FE00
- lsrs r0, 14
- adds r3, r0, r1
- adds r1, 0x2
- adds r0, r1
- ldr r1, =gSpriteCoordOffsetY
- ldrh r2, [r0]
- ldrh r0, [r1]
- subs r2, r0
- ldr r0, =gSpriteTemplate_854FE44
- movs r4, 0
- ldrsh r1, [r3, r4]
- lsls r2, 16
- asrs r2, 16
- movs r3, 0
- bl CreateSpriteAtEnd
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x40
- beq _080AEBB0
- ldr r0, =gSprites
- lsls r1, r2, 4
- adds r1, r2
- lsls r1, 2
- adds r1, r0
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1, 0x5]
- adds r3, r1, 0
- adds r3, 0x3E
- ldrb r0, [r3]
- movs r2, 0x2
- orrs r0, r2
- strb r0, [r3]
- movs r0, 0
- strh r0, [r1, 0x2E]
- strh r0, [r1, 0x30]
- strh r0, [r1, 0x32]
- ldr r0, =gUnknown_0854C14C
- ldr r1, [r0]
- ldr r0, =0x0000072c
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_080AEBB0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEB48
-
- thumb_func_start sub_80AEBD0
-sub_80AEBD0: @ 80AEBD0
- push {r4,r5,lr}
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x0000072c
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _080AEC1A
- movs r4, 0
- ldr r5, =gSprites
-_080AEBE4:
- lsls r0, r4, 4
- adds r0, r4
- lsls r2, r0, 2
- adds r0, r5, 0
- adds r0, 0x14
- adds r0, r2, r0
- ldr r1, [r0]
- ldr r0, =gSpriteTemplate_854FE44
- cmp r1, r0
- bne _080AEBFE
- adds r0, r2, r5
- bl DestroySprite
-_080AEBFE:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3F
- bls _080AEBE4
- ldr r0, =0x00001205
- bl FreeSpriteTilesByTag
- ldr r0, =gUnknown_0854C14C
- ldr r0, [r0]
- ldr r1, =0x0000072c
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
-_080AEC1A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEBD0
-
- thumb_func_start sub_80AEC34
-sub_80AEC34: @ 80AEC34
- push {lr}
- adds r1, r0, 0
- ldrh r0, [r1, 0x2E]
- movs r2, 0
- adds r0, 0x2
- strh r0, [r1, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- ble _080AEC74
- strh r2, [r1, 0x2E]
- movs r3, 0x30
- ldrsh r0, [r1, r3]
- cmp r0, 0
- bne _080AEC66
- ldrh r0, [r1, 0x24]
- adds r0, 0x1
- strh r0, [r1, 0x24]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x4
- ble _080AEC74
- movs r0, 0x1
- strh r0, [r1, 0x30]
- b _080AEC74
-_080AEC66:
- ldrh r0, [r1, 0x24]
- subs r0, 0x1
- strh r0, [r1, 0x24]
- lsls r0, 16
- cmp r0, 0
- bgt _080AEC74
- strh r2, [r1, 0x30]
-_080AEC74:
- ldrh r0, [r1, 0x22]
- subs r0, 0x3
- strh r0, [r1, 0x22]
- ldrh r0, [r1, 0x32]
- adds r0, 0x1
- strh r0, [r1, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x77
- ble _080AEC8E
- adds r0, r1, 0
- bl DestroySprite
-_080AEC8E:
- pop {r0}
- bx r0
- thumb_func_end sub_80AEC34
-
- thumb_func_start sub_80AEC94
-sub_80AEC94: @ 80AEC94
- ldr r2, =gUnknown_02038BC4
- strb r0, [r2]
- ldr r0, =gUnknown_02038BC6
- strh r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80AEC94
-
- thumb_func_start sub_80AECA8
-sub_80AECA8: @ 80AECA8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r4, r1, r0
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080AECCC
- cmp r0, 0x1
- beq _080AECF8
- b _080AED1C
- .pool
-_080AECCC:
- ldrh r0, [r4, 0x1E]
- subs r1, r0, 0x1
- strh r1, [r4, 0x1E]
- lsls r0, 16
- cmp r0, 0
- bgt _080AED1C
- ldrb r0, [r4, 0x2]
- bl weather_set
- ldr r1, =gUnknown_02038BC4
- ldrh r0, [r4, 0x2]
- strb r0, [r1]
- movs r1, 0x96
- lsls r1, 2
- adds r0, r1, 0
- strh r0, [r4, 0x1E]
- ldrh r0, [r4]
- adds r0, 0x1
- b _080AED1A
- .pool
-_080AECF8:
- ldrh r0, [r4, 0x1E]
- subs r1, r0, 0x1
- strh r1, [r4, 0x1E]
- lsls r0, 16
- cmp r0, 0
- bgt _080AED1C
- ldrb r0, [r4, 0x4]
- bl weather_set
- ldr r1, =gUnknown_02038BC4
- ldrh r0, [r4, 0x4]
- strb r0, [r1]
- movs r1, 0x96
- lsls r1, 2
- adds r0, r1, 0
- strh r0, [r4, 0x1E]
- movs r0, 0
-_080AED1A:
- strh r0, [r4]
-_080AED1C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AECA8
-
- thumb_func_start bag_add_task0_by_acit
-bag_add_task0_by_acit: @ 80AED28
- push {lr}
- ldr r0, =sub_80AECA8
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r1, r0
- movs r2, 0x96
- lsls r2, 2
- adds r0, r2, 0
- strh r0, [r1, 0x1E]
- ldr r3, =gUnknown_02038BC4
- ldrb r2, [r3]
- cmp r2, 0xD
- bne _080AED60
- movs r0, 0xC
- b _080AED66
- .pool
-_080AED60:
- cmp r2, 0xC
- bne _080AED6C
- movs r0, 0xD
-_080AED66:
- strh r0, [r1, 0x2]
- strh r2, [r1, 0x4]
- b _080AED78
-_080AED6C:
- movs r0, 0xD
- strb r0, [r3]
- movs r0, 0xC
- strh r0, [r1, 0x2]
- movs r0, 0xD
- strh r0, [r1, 0x4]
-_080AED78:
- pop {r0}
- bx r0
- thumb_func_end bag_add_task0_by_acit
-
- thumb_func_start SetSav1Weather
-SetSav1Weather: @ 80AED7C
- push {r4,r5,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r1, [r4]
- adds r1, 0x2E
- ldrb r5, [r1]
- lsls r0, 24
- lsrs r0, 24
- bl sub_80AEEE8
- ldr r1, [r4]
- adds r1, 0x2E
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0x2E
- ldrb r0, [r0]
- adds r1, r5, 0
- bl sub_80AEFDC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetSav1Weather
-
- thumb_func_start GetSav1Weather
-GetSav1Weather: @ 80AEDAC
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x2E
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end GetSav1Weather
-
- thumb_func_start SetSav1WeatherFromCurrMapHeader
-SetSav1WeatherFromCurrMapHeader: @ 80AEDBC
- push {r4,r5,lr}
- ldr r4, =gSaveBlock1Ptr
- ldr r0, [r4]
- adds r0, 0x2E
- ldrb r5, [r0]
- ldr r0, =gMapHeader
- ldrb r0, [r0, 0x16]
- bl sub_80AEEE8
- ldr r1, [r4]
- adds r1, 0x2E
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0x2E
- ldrb r0, [r0]
- adds r1, r5, 0
- bl sub_80AEFDC
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end SetSav1WeatherFromCurrMapHeader
-
- thumb_func_start SetWeather
-SetWeather: @ 80AEDF0
- push {lr}
- bl SetSav1Weather
- bl GetSav1Weather
- lsls r0, 24
- lsrs r0, 24
- bl weather_set
- pop {r0}
- bx r0
- thumb_func_end SetWeather
-
- thumb_func_start sub_80AEE08
-sub_80AEE08: @ 80AEE08
- push {lr}
- bl SetSav1Weather
- bl GetSav1Weather
- lsls r0, 24
- lsrs r0, 24
- bl sub_80AB104
- pop {r0}
- bx r0
- thumb_func_end sub_80AEE08
-
- thumb_func_start DoCurrentWeather
-DoCurrentWeather: @ 80AEE20
- push {r4,r5,lr}
- bl GetSav1Weather
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bne _080AEE4C
- ldr r0, =sub_80AECA8
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080AEE3E
- bl bag_add_task0_by_acit
-_080AEE3E:
- ldr r0, =gUnknown_02038BC4
- ldrb r4, [r0]
- b _080AEE6E
- .pool
-_080AEE4C:
- ldr r5, =sub_80AECA8
- adds r0, r5, 0
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _080AEE68
- adds r0, r5, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080AEE68:
- ldr r1, =gUnknown_02038BC4
- movs r0, 0xD
- strb r0, [r1]
-_080AEE6E:
- adds r0, r4, 0
- bl weather_set
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end DoCurrentWeather
-
- thumb_func_start sub_80AEE84
-sub_80AEE84: @ 80AEE84
- push {r4,r5,lr}
- bl GetSav1Weather
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xF
- bne _080AEEB0
- ldr r0, =sub_80AECA8
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080AEEA2
- bl bag_add_task0_by_acit
-_080AEEA2:
- ldr r0, =gUnknown_02038BC4
- ldrb r4, [r0]
- b _080AEED2
- .pool
-_080AEEB0:
- ldr r5, =sub_80AECA8
- adds r0, r5, 0
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _080AEECC
- adds r0, r5, 0
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- bl DestroyTask
-_080AEECC:
- ldr r1, =gUnknown_02038BC4
- movs r0, 0xD
- strb r0, [r1]
-_080AEED2:
- adds r0, r4, 0
- bl sub_80AB104
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AEE84
-
- thumb_func_start sub_80AEEE8
-sub_80AEEE8: @ 80AEEE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x15
- bhi _080AEFB4
- lsls r0, 2
- ldr r1, =_080AEF00
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AEF00:
- .4byte _080AEFB4
- .4byte _080AEF58
- .4byte _080AEF5C
- .4byte _080AEF60
- .4byte _080AEF64
- .4byte _080AEF68
- .4byte _080AEF6C
- .4byte _080AEF70
- .4byte _080AEF74
- .4byte _080AEF78
- .4byte _080AEF7C
- .4byte _080AEF80
- .4byte _080AEF84
- .4byte _080AEF88
- .4byte _080AEF8C
- .4byte _080AEF90
- .4byte _080AEFB4
- .4byte _080AEFB4
- .4byte _080AEFB4
- .4byte _080AEFB4
- .4byte _080AEF94
- .4byte _080AEF9C
-_080AEF58:
- movs r0, 0x1
- b _080AEFB6
-_080AEF5C:
- movs r0, 0x2
- b _080AEFB6
-_080AEF60:
- movs r0, 0x3
- b _080AEFB6
-_080AEF64:
- movs r0, 0x4
- b _080AEFB6
-_080AEF68:
- movs r0, 0x5
- b _080AEFB6
-_080AEF6C:
- movs r0, 0x6
- b _080AEFB6
-_080AEF70:
- movs r0, 0x7
- b _080AEFB6
-_080AEF74:
- movs r0, 0x8
- b _080AEFB6
-_080AEF78:
- movs r0, 0x9
- b _080AEFB6
-_080AEF7C:
- movs r0, 0xA
- b _080AEFB6
-_080AEF80:
- movs r0, 0xB
- b _080AEFB6
-_080AEF84:
- movs r0, 0xC
- b _080AEFB6
-_080AEF88:
- movs r0, 0xD
- b _080AEFB6
-_080AEF8C:
- movs r0, 0xE
- b _080AEFB6
-_080AEF90:
- movs r0, 0xF
- b _080AEFB6
-_080AEF94:
- ldr r1, =gUnknown_0854FE5C
- b _080AEF9E
- .pool
-_080AEF9C:
- ldr r1, =gUnknown_0854FE60
-_080AEF9E:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- adds r0, 0x2F
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- b _080AEFB6
- .pool
-_080AEFB4:
- movs r0, 0
-_080AEFB6:
- pop {r1}
- bx r1
- thumb_func_end sub_80AEEE8
-
- thumb_func_start UpdateWeatherPerDay
-UpdateWeatherPerDay: @ 80AEFBC
- lsls r0, 16
- ldr r1, =gSaveBlock1Ptr
- ldr r2, [r1]
- adds r2, 0x2F
- lsrs r0, 16
- ldrb r1, [r2]
- adds r0, r1
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 16
- strb r1, [r2]
- bx lr
- .pool
- thumb_func_end UpdateWeatherPerDay
-
- thumb_func_start sub_80AEFDC
-sub_80AEFDC: @ 80AEFDC
- push {lr}
- lsls r0, 24
- lsls r1, 24
- lsrs r2, r0, 24
- cmp r0, r1
- beq _080AEFF6
- cmp r2, 0x3
- beq _080AEFF0
- cmp r2, 0x5
- bne _080AEFF6
-_080AEFF0:
- movs r0, 0x28
- bl IncrementGameStat
-_080AEFF6:
- pop {r0}
- bx r0
- thumb_func_end sub_80AEFDC
-
- thumb_func_start palette_bg_faded_fill_white
-palette_bg_faded_fill_white: @ 80AEFFC
- push {lr}
- sub sp, 0x4
- ldr r0, =0x7fff7fff
- str r0, [sp]
- ldr r1, =gPlttBufferFaded
- ldr r2, =0x01000100
- mov r0, sp
- bl CpuFastSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end palette_bg_faded_fill_white
-
- thumb_func_start palette_bg_faded_fill_black
-palette_bg_faded_fill_black: @ 80AF020
- push {lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- ldr r1, =gPlttBufferFaded
- ldr r2, =0x01000100
- mov r0, sp
- bl CpuFastSet
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end palette_bg_faded_fill_black
-
- thumb_func_start pal_fill_for_maplights
-pal_fill_for_maplights: @ 80AF040
- push {r4,lr}
- bl GetLastUsedWarpMapType
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl Overworld_GetMapTypeOfSaveblockLocation
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl fade_type_for_given_maplight_pair
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080AF06A
- cmp r0, 0x1
- beq _080AF078
- b _080AF084
-_080AF06A:
- bl palette_bg_faded_fill_black
- movs r0, 0
- movs r1, 0
- bl FadeScreen
- b _080AF084
-_080AF078:
- bl palette_bg_faded_fill_white
- movs r0, 0x2
- movs r1, 0
- bl FadeScreen
-_080AF084:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end pal_fill_for_maplights
-
- thumb_func_start sub_80AF08C
-sub_80AF08C: @ 80AF08C
- push {lr}
- bl palette_bg_faded_fill_white
- movs r0, 0x2
- movs r1, 0x8
- bl FadeScreen
- pop {r0}
- bx r0
- thumb_func_end sub_80AF08C
-
- thumb_func_start pal_fill_black
-pal_fill_black: @ 80AF0A0
- push {lr}
- bl palette_bg_faded_fill_black
- movs r0, 0
- movs r1, 0
- bl FadeScreen
- pop {r0}
- bx r0
- thumb_func_end pal_fill_black
-
- thumb_func_start sub_80AF0B4
-sub_80AF0B4: @ 80AF0B4
- push {r4,lr}
- bl Overworld_GetMapTypeOfSaveblockLocation
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl GetDestinationWarpMapHeader
- ldrb r1, [r0, 0x17]
- adds r0, r4, 0
- bl sub_8137360
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080AF0DA
- cmp r0, 0x1
- beq _080AF0E4
- b _080AF0EC
-_080AF0DA:
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- b _080AF0EC
-_080AF0E4:
- movs r0, 0x3
- movs r1, 0
- bl FadeScreen
-_080AF0EC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80AF0B4
-
- thumb_func_start sub_80AF0F4
-sub_80AF0F4: @ 80AF0F4
- push {lr}
- lsls r0, 24
- movs r1, 0
- cmp r0, 0
- bne _080AF100
- movs r1, 0x1
-_080AF100:
- adds r0, r1, 0
- bl sub_808C0A8
- pop {r0}
- bx r0
- thumb_func_end sub_80AF0F4
-
- thumb_func_start task0A_nop_for_a_while
-task0A_nop_for_a_while: @ 80AF10C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF120
- adds r0, r4, 0
- bl DestroyTask
-_080AF120:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task0A_nop_for_a_while
-
- thumb_func_start sub_80AF128
-sub_80AF128: @ 80AF128
- push {lr}
- bl ScriptContext2_Enable
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_black
- ldr r0, =task0A_nop_for_a_while
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF128
-
- thumb_func_start task0A_asap_script_env_2_enable_and_set_ctx_running
-task0A_asap_script_env_2_enable_and_set_ctx_running: @ 80AF148
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF160
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080AF160:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task0A_asap_script_env_2_enable_and_set_ctx_running
-
- thumb_func_start sub_80AF168
-sub_80AF168: @ 80AF168
- push {lr}
- bl ScriptContext2_Enable
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_black
- ldr r0, =task0A_asap_script_env_2_enable_and_set_ctx_running
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF168
-
- thumb_func_start sub_80AF188
-sub_80AF188: @ 80AF188
- push {lr}
- bl ScriptContext2_Enable
- bl pal_fill_black
- ldr r0, =task0A_asap_script_env_2_enable_and_set_ctx_running
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF188
-
- thumb_func_start task_mpl_807DD60
-task_mpl_807DD60: @ 80AF1A4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r2, =gTasks
- adds r4, r0, r2
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AF1DE
- cmp r0, 0x1
- bgt _080AF1CC
- cmp r0, 0
- beq _080AF1D2
- b _080AF20E
- .pool
-_080AF1CC:
- cmp r0, 0x2
- beq _080AF1FC
- b _080AF20E
-_080AF1D2:
- bl sub_80B3050
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xA]
- b _080AF1F4
-_080AF1DE:
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080AF20E
- bl pal_fill_for_maplights
-_080AF1F4:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AF20E
-_080AF1FC:
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF20E
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_080AF20E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task_mpl_807DD60
-
- thumb_func_start sub_80AF214
-sub_80AF214: @ 80AF214
- push {lr}
- bl ScriptContext2_Enable
- bl Overworld_PlaySpecialMapMusic
- bl palette_bg_faded_fill_black
- ldr r0, =task_mpl_807DD60
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF214
-
- thumb_func_start sub_80AF234
-sub_80AF234: @ 80AF234
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AF268
- cmp r0, 0x1
- bgt _080AF25C
- cmp r0, 0
- beq _080AF262
- b _080AF2AE
- .pool
-_080AF25C:
- cmp r0, 0x2
- beq _080AF298
- b _080AF2AE
-_080AF262:
- bl sub_800ADF8
- b _080AF290
-_080AF268:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- bne _080AF28C
- ldrh r0, [r4, 0xA]
- adds r0, 0x1
- strh r0, [r4, 0xA]
- lsls r0, 16
- movs r1, 0xE1
- lsls r1, 19
- cmp r0, r1
- ble _080AF2AE
- movs r0, 0xC0
- lsls r0, 7
- bl sub_8011170
- b _080AF2AE
-_080AF28C:
- bl pal_fill_for_maplights
-_080AF290:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AF2AE
-_080AF298:
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF2AE
- bl sub_8009F18
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_080AF2AE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80AF234
-
- thumb_func_start sub_80AF2B4
-sub_80AF2B4: @ 80AF2B4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AF2E8
- cmp r0, 0x1
- bgt _080AF2DC
- cmp r0, 0
- beq _080AF2E2
- b _080AF30C
- .pool
-_080AF2DC:
- cmp r0, 0x2
- beq _080AF2FA
- b _080AF30C
-_080AF2E2:
- bl sub_800ADF8
- b _080AF2F2
-_080AF2E8:
- bl sub_800A520
- lsls r0, 24
- cmp r0, 0
- beq _080AF30C
-_080AF2F2:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AF30C
-_080AF2FA:
- bl sub_8009F18
- bl sub_8086C2C
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_080AF30C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80AF2B4
-
- thumb_func_start sub_80AF314
-sub_80AF314: @ 80AF314
- push {lr}
- bl ScriptContext2_Enable
- bl Overworld_PlaySpecialMapMusic
- bl palette_bg_faded_fill_black
- ldr r0, =sub_80AF234
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF314
-
- thumb_func_start sub_80AF334
-sub_80AF334: @ 80AF334
- push {r4,lr}
- sub sp, 0x4
- 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
- adds r0, r4, 0
- bl MetatileBehavior_IsDoor
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080AF36C
- ldr r1, =sub_80AF438
- b _080AF37E
- .pool
-_080AF36C:
- adds r0, r4, 0
- bl MetatileBehavior_IsNonAnimDoor
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =task_map_chg_seq_0807E2CC
- cmp r0, 0x1
- bne _080AF37E
- ldr r1, =task_map_chg_seq_0807E20C
-_080AF37E:
- adds r0, r1, 0
- movs r1, 0xA
- bl CreateTask
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF334
-
- thumb_func_start mapldr_default
-mapldr_default: @ 80AF398
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- bl sub_80AF334
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end mapldr_default
-
- thumb_func_start sub_80AF3B0
-sub_80AF3B0: @ 80AF3B0
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl sub_80AF08C
- bl sub_80AF334
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end sub_80AF3B0
-
- thumb_func_start sub_80AF3C8
-sub_80AF3C8: @ 80AF3C8
- push {lr}
- bl sub_81D6534
- cmp r0, 0
- bne _080AF3D6
- bl Overworld_PlaySpecialMapMusic
-_080AF3D6:
- bl pal_fill_black
- bl sub_80AF334
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- thumb_func_end sub_80AF3C8
-
- thumb_func_start sub_80AF3E8
-sub_80AF3E8: @ 80AF3E8
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- movs r0, 0x2E
- bl PlaySE
- ldr r0, =task0A_mpl_807E31C
- movs r1, 0xA
- bl CreateTask
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF3E8
-
- thumb_func_start sub_80AF40C
-sub_80AF40C: @ 80AF40C
- push {lr}
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_for_maplights
- movs r0, 0x2E
- bl PlaySE
- ldr r0, =task_map_chg_seq_0807E2CC
- movs r1, 0xA
- bl CreateTask
- bl ScriptContext2_Enable
- movs r0, 0xE
- bl sub_8085540
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF40C
-
- thumb_func_start sub_80AF438
-sub_80AF438: @ 80AF438
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, =gTasks
- adds r5, r0, r1
- adds r6, r5, 0
- adds r6, 0xC
- adds r7, r5, 0
- adds r7, 0xE
- movs r2, 0x8
- ldrsh r0, [r5, r2]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _080AF54A
- lsls r0, 2
- ldr r1, =_080AF46C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AF46C:
- .4byte _080AF480
- .4byte _080AF4A4
- .4byte _080AF4DC
- .4byte _080AF520
- .4byte _080AF540
-_080AF480:
- movs r0, 0
- bl sub_80AF0F4
- bl FreezeEventObjects
- adds r0, r6, 0
- adds r1, r7, 0
- bl PlayerGetDestCoords
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r2, 0
- ldrsh r1, [r7, r2]
- bl FieldSetDoorOpened
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _080AF54A
-_080AF4A4:
- bl sub_80AF71C
- cmp r0, 0
- beq _080AF54A
- movs r0, 0x1
- bl sub_80AF0F4
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gEventObjects
- adds r0, r1
- movs r1, 0x8
- bl EventObjectSetHeldMovement
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _080AF54A
- .pool
-_080AF4DC:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _080AF54A
- movs r1, 0
- ldrsh r0, [r6, r1]
- movs r2, 0
- ldrsh r1, [r7, r2]
- bl FieldAnimateDoorClose
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gEventObjects
- adds r0, r1
- bl EventObjectClearHeldMovementIfFinished
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _080AF54A
- .pool
-_080AF520:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _080AF536
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080AF54A
-_080AF536:
- bl UnfreezeEventObjects
- movs r0, 0x4
- strh r0, [r5, 0x8]
- b _080AF54A
-_080AF540:
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
-_080AF54A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80AF438
-
- thumb_func_start task_map_chg_seq_0807E20C
-task_map_chg_seq_0807E20C: @ 80AF550
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, =gTasks
- adds r5, r0, r1
- adds r6, r5, 0
- adds r6, 0xC
- adds r7, r5, 0
- adds r7, 0xE
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _080AF5A2
- cmp r0, 0x1
- bgt _080AF580
- cmp r0, 0
- beq _080AF58A
- b _080AF60A
- .pool
-_080AF580:
- cmp r0, 0x2
- beq _080AF5EC
- cmp r0, 0x3
- beq _080AF600
- b _080AF60A
-_080AF58A:
- movs r0, 0
- bl sub_80AF0F4
- bl FreezeEventObjects
- adds r0, r6, 0
- adds r1, r7, 0
- bl PlayerGetDestCoords
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _080AF60A
-_080AF5A2:
- bl sub_80AF71C
- cmp r0, 0
- beq _080AF60A
- movs r0, 0x1
- bl sub_80AF0F4
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 3
- adds r4, r0
- lsls r4, 2
- ldr r0, =gEventObjects
- adds r4, r0
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- bl GetWalkNormalMovementAction
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl EventObjectSetHeldMovement
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _080AF60A
- .pool
-_080AF5EC:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _080AF60A
- bl UnfreezeEventObjects
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _080AF60A
-_080AF600:
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
-_080AF60A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end task_map_chg_seq_0807E20C
-
- thumb_func_start task_map_chg_seq_0807E2CC
-task_map_chg_seq_0807E2CC: @ 80AF610
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080AF634
- cmp r0, 0x1
- beq _080AF644
- b _080AF65A
- .pool
-_080AF634:
- bl FreezeEventObjects
- bl ScriptContext2_Enable
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AF65A
-_080AF644:
- bl sub_80AF71C
- cmp r0, 0
- beq _080AF65A
- bl UnfreezeEventObjects
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_080AF65A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task_map_chg_seq_0807E2CC
-
- thumb_func_start sub_80AF660
-sub_80AF660: @ 80AF660
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF67C
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, =sub_809FA34
- movs r1, 0x50
- bl CreateTask
-_080AF67C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF660
-
- thumb_func_start sub_80AF688
-sub_80AF688: @ 80AF688
- push {lr}
- bl pal_fill_black
- ldr r0, =sub_80AF660
- movs r1, 0x50
- bl CreateTask
- bl ScriptContext2_Enable
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF688
-
- thumb_func_start sub_80AF6A4
-sub_80AF6A4: @ 80AF6A4
- push {lr}
- bl sub_809FA18
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_80AF6A4
-
- thumb_func_start task_mpl_807E3C8
-task_mpl_807E3C8: @ 80AF6B0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80AF71C
- cmp r0, 0x1
- bne _080AF6CC
- bl ScriptContext2_Disable
- adds r0, r4, 0
- bl DestroyTask
- bl ScriptUnfreezeEventObjects
-_080AF6CC:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task_mpl_807E3C8
-
- thumb_func_start sub_80AF6D4
-sub_80AF6D4: @ 80AF6D4
- push {lr}
- bl ScriptContext2_Enable
- bl pal_fill_black
- ldr r0, =task_mpl_807E3C8
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF6D4
-
- thumb_func_start sub_80AF6F0
-sub_80AF6F0: @ 80AF6F0
- push {lr}
- bl ScriptContext2_Enable
- bl Overworld_PlaySpecialMapMusic
- bl pal_fill_black
- ldr r0, =task_mpl_807E3C8
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF6F0
-
- thumb_func_start sub_80AF710
-sub_80AF710: @ 80AF710
- ldr r0, =gPaletteFade
- ldrb r0, [r0, 0x7]
- lsrs r0, 7
- bx lr
- .pool
- thumb_func_end sub_80AF710
-
- thumb_func_start sub_80AF71C
-sub_80AF71C: @ 80AF71C
- push {lr}
- bl IsWeatherNotFadingIn
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _080AF72E
- movs r0, 0
- b _080AF730
-_080AF72E:
- movs r0, 0x1
-_080AF730:
- pop {r1}
- bx r1
- thumb_func_end sub_80AF71C
-
- thumb_func_start sub_80AF734
-sub_80AF734: @ 80AF734
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- bl sub_80AF0B4
- bl play_some_sound
- movs r0, 0x9
- bl PlaySE
- ldr r0, =gFieldCallback
- ldr r1, =mapldr_default
- str r1, [r0]
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF734
-
- thumb_func_start sp13E_warp_to_last_warp
-sp13E_warp_to_last_warp: @ 80AF76C
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- bl sub_80AF0B4
- bl play_some_sound
- ldr r0, =gFieldCallback
- ldr r1, =mapldr_default
- str r1, [r0]
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sp13E_warp_to_last_warp
-
- thumb_func_start sub_80AF79C
-sub_80AF79C: @ 80AF79C
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- movs r0, 0x3
- movs r1, 0x8
- bl FadeScreen
- bl play_some_sound
- ldr r0, =gFieldCallback
- ldr r1, =sub_80AF3B0
- str r1, [r0]
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF79C
-
- thumb_func_start sub_80AF7D0
-sub_80AF7D0: @ 80AF7D0
- push {lr}
- bl ScriptContext2_Enable
- ldr r0, =gFieldCallback
- ldr r1, =mapldr_default
- str r1, [r0]
- ldr r0, =sub_80AFA88
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF7D0
-
- thumb_func_start sp13F_fall_to_last_warp
-sp13F_fall_to_last_warp: @ 80AF7F4
- push {lr}
- bl sp13E_warp_to_last_warp
- ldr r1, =gFieldCallback
- ldr r0, =sub_80B6B68
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sp13F_fall_to_last_warp
-
- thumb_func_start sub_80AF80C
-sub_80AF80C: @ 80AF80C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ScriptContext2_Enable
- adds r0, r4, 0
- movs r1, 0xA
- bl sub_80B6E4C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80AF80C
-
- thumb_func_start sub_80AF828
-sub_80AF828: @ 80AF828
- push {lr}
- bl ScriptContext2_Enable
- movs r0, 0xA
- bl sub_80B75D8
- pop {r0}
- bx r0
- thumb_func_end sub_80AF828
-
- thumb_func_start sub_80AF838
-sub_80AF838: @ 80AF838
- push {lr}
- bl ScriptContext2_Enable
- movs r0, 0xA
- bl sub_80B7A74
- pop {r0}
- bx r0
- thumb_func_end sub_80AF838
-
- thumb_func_start sub_80AF848
-sub_80AF848: @ 80AF848
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- bl sub_80AF0B4
- movs r0, 0x2D
- bl PlaySE
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF3E8
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF848
-
- thumb_func_start sub_80AF87C
-sub_80AF87C: @ 80AF87C
- push {lr}
- movs r0, 0x1
- bl sub_8085540
- bl ScriptContext2_Enable
- bl SaveEventObjects
- bl music_something
- bl sub_80AF0B4
- movs r0, 0x2D
- bl PlaySE
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF40C
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF87C
-
- thumb_func_start sub_80AF8B8
-sub_80AF8B8: @ 80AF8B8
- push {lr}
- bl ScriptContext2_Enable
- bl sub_80AF0B4
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- ldr r1, =gFieldCallback
- ldr r0, =sub_80FB768
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF8B8
-
- thumb_func_start sub_80AF8E0
-sub_80AF8E0: @ 80AF8E0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AF914
- cmp r0, 0x1
- bgt _080AF908
- cmp r0, 0
- beq _080AF90E
- b _080AF93E
- .pool
-_080AF908:
- cmp r0, 0x2
- beq _080AF92E
- b _080AF93E
-_080AF90E:
- bl ScriptContext2_Enable
- b _080AF926
-_080AF914:
- bl sub_80AF710
- cmp r0, 0
- bne _080AF93E
- bl BGMusicStopped
- lsls r0, 24
- cmp r0, 0
- beq _080AF93E
-_080AF926:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AF93E
-_080AF92E:
- bl WarpIntoMap
- ldr r0, =sub_8086074
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080AF93E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF8E0
-
- thumb_func_start sub_80AF948
-sub_80AF948: @ 80AF948
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- bl sub_80AF0B4
- movs r0, 0x9
- bl PlaySE
- ldr r0, =sub_80AF8E0
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF948
-
- thumb_func_start sub_80AF96C
-sub_80AF96C: @ 80AF96C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AF9B2
- cmp r0, 0x1
- bgt _080AF994
- cmp r0, 0
- beq _080AF99A
- b _080AF9E8
- .pool
-_080AF994:
- cmp r0, 0x2
- beq _080AF9D0
- b _080AF9E8
-_080AF99A:
- bl ClearLinkCallback_2
- movs r0, 0x1
- movs r1, 0
- bl FadeScreen
- bl music_something
- movs r0, 0x9
- bl PlaySE
- b _080AF9C8
-_080AF9B2:
- bl sub_80AF710
- cmp r0, 0
- bne _080AF9E8
- bl BGMusicStopped
- lsls r0, 24
- cmp r0, 0
- beq _080AF9E8
- bl sub_800AC34
-_080AF9C8:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _080AF9E8
-_080AF9D0:
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080AF9E8
- bl WarpIntoMap
- ldr r0, =CB2_LoadMap
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080AF9E8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF96C
-
- thumb_func_start sub_80AF9F8
-sub_80AF9F8: @ 80AF9F8
- push {lr}
- ldr r0, =sub_80AF96C
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AF9F8
-
- thumb_func_start sub_80AFA0C
-sub_80AFA0C: @ 80AFA0C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r0, 0x8
- ldrsh r5, [r4, r0]
- cmp r5, 0x1
- beq _080AFA44
- cmp r5, 0x1
- bgt _080AFA34
- cmp r5, 0
- beq _080AFA3A
- b _080AFA7C
- .pool
-_080AFA34:
- cmp r5, 0x2
- beq _080AFA6C
- b _080AFA7C
-_080AFA3A:
- bl FreezeEventObjects
- bl ScriptContext2_Enable
- b _080AFA64
-_080AFA44:
- bl sub_80AF710
- cmp r0, 0
- bne _080AFA7C
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080AFA5A
- bl sub_81BE72C
- strh r5, [r4, 0xA]
-_080AFA5A:
- bl BGMusicStopped
- lsls r0, 24
- cmp r0, 0
- beq _080AFA7C
-_080AFA64:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AFA7C
-_080AFA6C:
- bl WarpIntoMap
- ldr r0, =CB2_LoadMap
- bl SetMainCallback2
- adds r0, r6, 0
- bl DestroyTask
-_080AFA7C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AFA0C
-
- thumb_func_start sub_80AFA88
-sub_80AFA88: @ 80AFA88
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks
- adds r5, r1, r0
- adds r4, r5, 0
- adds r4, 0xC
- adds r6, r5, 0
- adds r6, 0xE
- movs r2, 0x8
- ldrsh r1, [r5, r2]
- adds r2, r0, 0
- cmp r1, 0x4
- bls _080AFAAC
- b _080AFBE8
-_080AFAAC:
- lsls r0, r1, 2
- ldr r1, =_080AFAC0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080AFAC0:
- .4byte _080AFAD4
- .4byte _080AFB10
- .4byte _080AFB6C
- .4byte _080AFBB8
- .4byte _080AFBD4
-_080AFAD4:
- bl FreezeEventObjects
- adds r0, r4, 0
- adds r1, r6, 0
- bl PlayerGetDestCoords
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl GetDoorSoundEffect
- lsls r0, 16
- lsrs r0, 16
- bl PlaySE
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl FieldAnimateDoorOpen
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0x1
- strh r0, [r5, 0x8]
- b _080AFBE8
-_080AFB10:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _080AFB26
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080AFBE8
-_080AFB26:
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r4, =gEventObjects
- adds r0, r4
- bl EventObjectClearHeldMovementIfActive
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x9
- bl EventObjectSetHeldMovement
- movs r0, 0x2
- strh r0, [r5, 0x8]
- b _080AFBE8
- .pool
-_080AFB6C:
- bl walkrun_is_standing_still
- lsls r0, 24
- cmp r0, 0
- beq _080AFBE8
- movs r2, 0
- ldrsh r0, [r4, r2]
- movs r2, 0
- ldrsh r1, [r6, r2]
- subs r1, 0x1
- bl FieldAnimateDoorClose
- lsls r0, 24
- asrs r0, 24
- strh r0, [r5, 0xA]
- movs r0, 0xFF
- movs r1, 0
- movs r2, 0
- bl GetEventObjectIdByLocalIdAndMap
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, =gEventObjects
- adds r0, r1
- bl EventObjectClearHeldMovementIfFinished
- movs r0, 0
- bl sub_80AF0F4
- movs r0, 0x3
- strh r0, [r5, 0x8]
- b _080AFBE8
- .pool
-_080AFBB8:
- movs r1, 0xA
- ldrsh r0, [r5, r1]
- cmp r0, 0
- blt _080AFBCE
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrb r0, [r1, 0x4]
- cmp r0, 0x1
- beq _080AFBE8
-_080AFBCE:
- movs r0, 0x4
- strh r0, [r5, 0x8]
- b _080AFBE8
-_080AFBD4:
- bl music_something
- bl sub_80AF0B4
- bl play_some_sound
- movs r0, 0
- strh r0, [r5, 0x8]
- ldr r0, =sub_80AFA0C
- str r0, [r5]
-_080AFBE8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AFA88
-
- thumb_func_start task0A_fade_n_map_maybe
-task0A_fade_n_map_maybe: @ 80AFBF4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AFC2C
- cmp r0, 0x1
- bgt _080AFC1C
- cmp r0, 0
- beq _080AFC22
- b _080AFC56
- .pool
-_080AFC1C:
- cmp r0, 0x2
- beq _080AFC46
- b _080AFC56
-_080AFC22:
- bl FreezeEventObjects
- bl ScriptContext2_Enable
- b _080AFC3E
-_080AFC2C:
- bl sub_80AF710
- cmp r0, 0
- bne _080AFC56
- bl BGMusicStopped
- lsls r0, 24
- cmp r0, 0
- beq _080AFC56
-_080AFC3E:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080AFC56
-_080AFC46:
- bl WarpIntoMap
- ldr r0, =sub_8086024
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080AFC56:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end task0A_fade_n_map_maybe
-
- thumb_func_start sub_80AFC60
-sub_80AFC60: @ 80AFC60
- push {lr}
- bl ScriptContext2_Enable
- bl music_something
- bl sub_80AF0B4
- bl play_some_sound
- movs r0, 0x9
- bl PlaySE
- ldr r0, =gFieldCallback
- ldr r1, =sub_80AF3C8
- str r1, [r0]
- ldr r0, =task0A_fade_n_map_maybe
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AFC60
-
- thumb_func_start sub_80AFC98
-sub_80AFC98: @ 80AFC98
- push {lr}
- cmp r1, 0xA0
- bhi _080AFCC0
- cmp r2, 0
- bge _080AFCA4
- movs r2, 0
-_080AFCA4:
- cmp r2, 0xFF
- ble _080AFCAA
- movs r2, 0xFF
-_080AFCAA:
- cmp r3, 0
- bge _080AFCB0
- movs r3, 0
-_080AFCB0:
- cmp r3, 0xFF
- ble _080AFCB6
- movs r3, 0xFF
-_080AFCB6:
- lsls r1, 1
- adds r1, r0
- lsls r0, r2, 8
- orrs r0, r3
- strh r0, [r1]
-_080AFCC0:
- pop {r0}
- bx r0
- thumb_func_end sub_80AFC98
-
- thumb_func_start sub_80AFCC4
-sub_80AFCC4: @ 80AFCC4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- str r0, [sp]
- mov r10, r1
- mov r9, r2
- adds r6, r3, 0
- mov r8, r6
- movs r7, 0
- cmp r6, 0
- blt _080AFD40
-_080AFCE0:
- mov r0, r9
- subs r1, r0, r7
- mov r0, r10
- subs r4, r0, r6
- adds r5, r0, r6
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFC98
- mov r0, r9
- adds r1, r0, r7
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFC98
- mov r0, r9
- subs r1, r0, r6
- mov r0, r10
- subs r4, r0, r7
- adds r5, r0, r7
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFC98
- mov r0, r9
- adds r1, r0, r6
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFC98
- mov r1, r8
- adds r1, 0x1
- lsls r0, r7, 1
- subs r1, r0
- mov r8, r1
- adds r7, 0x1
- cmp r1, 0
- bge _080AFD3C
- subs r1, r6, 0x1
- lsls r0, r1, 1
- add r8, r0
- adds r6, r1, 0
-_080AFD3C:
- cmp r6, r7
- bge _080AFCE0
-_080AFD40:
- 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_80AFCC4
-
- thumb_func_start sub_80AFD50
-sub_80AFD50: @ 80AFD50
- push {lr}
- cmp r1, 0xA0
- bhi _080AFD78
- cmp r2, 0
- bge _080AFD5C
- movs r2, 0
-_080AFD5C:
- cmp r2, 0xF0
- ble _080AFD62
- movs r2, 0xF0
-_080AFD62:
- cmp r3, 0
- bge _080AFD68
- movs r3, 0
-_080AFD68:
- cmp r3, 0xF0
- ble _080AFD6E
- movs r3, 0xF0
-_080AFD6E:
- lsls r1, 1
- adds r1, r0
- lsls r0, r2, 8
- orrs r0, r3
- strh r0, [r1]
-_080AFD78:
- pop {r0}
- bx r0
- thumb_func_end sub_80AFD50
-
- thumb_func_start sub_80AFD7C
-sub_80AFD7C: @ 80AFD7C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- str r0, [sp]
- mov r10, r1
- mov r9, r2
- adds r6, r3, 0
- mov r8, r6
- movs r7, 0
- cmp r6, 0
- blt _080AFDF8
-_080AFD98:
- mov r0, r9
- subs r1, r0, r7
- mov r0, r10
- subs r4, r0, r6
- adds r5, r0, r6
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFD50
- mov r0, r9
- adds r1, r0, r7
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFD50
- mov r0, r9
- subs r1, r0, r6
- mov r0, r10
- subs r4, r0, r7
- adds r5, r0, r7
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFD50
- mov r0, r9
- adds r1, r0, r6
- ldr r0, [sp]
- adds r2, r4, 0
- adds r3, r5, 0
- bl sub_80AFD50
- mov r1, r8
- adds r1, 0x1
- lsls r0, r7, 1
- subs r1, r0
- mov r8, r1
- adds r7, 0x1
- cmp r1, 0
- bge _080AFDF4
- subs r1, r6, 0x1
- lsls r0, r1, 1
- add r8, r0
- adds r6, r1, 0
-_080AFDF4:
- cmp r6, r7
- bge _080AFD98
-_080AFDF8:
- 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_80AFD7C
-
- thumb_func_start sub_80AFE08
-sub_80AFE08: @ 80AFE08
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AFE64
- cmp r0, 0x1
- bgt _080AFE30
- cmp r0, 0
- beq _080AFE36
- b _080AFEC6
- .pool
-_080AFE30:
- cmp r0, 0x2
- beq _080AFEBC
- b _080AFEC6
-_080AFE36:
- ldr r0, =gScanlineEffect
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gScanlineEffectRegBuffers
- adds r0, r1
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- movs r5, 0x6
- ldrsh r3, [r4, r5]
- bl sub_80AFCC4
- movs r0, 0x1
- strh r0, [r4]
- b _080AFEC6
- .pool
-_080AFE64:
- ldr r0, =gScanlineEffect
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gScanlineEffectRegBuffers
- adds r0, r1
- movs r6, 0x2
- ldrsh r1, [r4, r6]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- movs r6, 0x6
- ldrsh r3, [r4, r6]
- bl sub_80AFCC4
- movs r0, 0
- strh r0, [r4]
- ldrh r0, [r4, 0xA]
- ldrh r1, [r4, 0x6]
- adds r0, r1
- strh r0, [r4, 0x6]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- cmp r0, r1
- ble _080AFEC6
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- bne _080AFEB4
- bl ScanlineEffect_Stop
- movs r0, 0x2
- strh r0, [r4]
- b _080AFEC6
- .pool
-_080AFEB4:
- adds r0, r5, 0
- bl DestroyTask
- b _080AFEC6
-_080AFEBC:
- bl ScanlineEffect_Clear
- adds r0, r5, 0
- bl DestroyTask
-_080AFEC6:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80AFE08
-
- thumb_func_start sub_80AFECC
-sub_80AFECC: @ 80AFECC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080AFF28
- cmp r0, 0x1
- bgt _080AFEF4
- cmp r0, 0
- beq _080AFEFA
- b _080AFF8A
- .pool
-_080AFEF4:
- cmp r0, 0x2
- beq _080AFF80
- b _080AFF8A
-_080AFEFA:
- ldr r0, =gScanlineEffect
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gScanlineEffectRegBuffers
- adds r0, r1
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- movs r5, 0x6
- ldrsh r3, [r4, r5]
- bl sub_80AFD7C
- movs r0, 0x1
- strh r0, [r4]
- b _080AFF8A
- .pool
-_080AFF28:
- ldr r0, =gScanlineEffect
- ldrb r1, [r0, 0x14]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 7
- ldr r1, =gScanlineEffectRegBuffers
- adds r0, r1
- movs r6, 0x2
- ldrsh r1, [r4, r6]
- movs r3, 0x4
- ldrsh r2, [r4, r3]
- movs r6, 0x6
- ldrsh r3, [r4, r6]
- bl sub_80AFD7C
- movs r0, 0
- strh r0, [r4]
- ldrh r0, [r4, 0xA]
- ldrh r1, [r4, 0x6]
- adds r0, r1
- strh r0, [r4, 0x6]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0x8
- ldrsh r1, [r4, r2]
- cmp r0, r1
- ble _080AFF8A
- movs r3, 0xC
- ldrsh r0, [r4, r3]
- cmp r0, 0x1
- bne _080AFF78
- bl ScanlineEffect_Stop
- movs r0, 0x2
- strh r0, [r4]
- b _080AFF8A
- .pool
-_080AFF78:
- adds r0, r5, 0
- bl DestroyTask
- b _080AFF8A
-_080AFF80:
- bl ScanlineEffect_Clear
- adds r0, r5, 0
- bl DestroyTask
-_080AFF8A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80AFECC
-
- thumb_func_start sub_80AFF90
-sub_80AFF90: @ 80AFF90
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =sub_80AFE08
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080AFFAC
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_080AFFAC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AFF90
-
- thumb_func_start sub_80AFFB8
-sub_80AFFB8: @ 80AFFB8
- push {r4,lr}
- ldr r4, =sub_80AFF90
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080AFFD0
- adds r0, r4, 0
- movs r1, 0x50
- bl CreateTask
-_080AFFD0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80AFFB8
-
- thumb_func_start sub_80AFFDC
-sub_80AFFDC: @ 80AFFDC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r8, r0
- mov r9, r1
- adds r5, r2, 0
- adds r4, r3, 0
- ldr r6, [sp, 0x1C]
- ldr r0, [sp, 0x20]
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =sub_80AFE08
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r1, r0, r1
- strh r5, [r1, 0x6]
- strh r4, [r1, 0x8]
- mov r0, r8
- strh r0, [r1, 0x2]
- mov r0, r9
- strh r0, [r1, 0x4]
- strh r6, [r1, 0xC]
- cmp r5, r4
- bge _080B0028
- strh r7, [r1, 0xA]
- b _080B002C
- .pool
-_080B0028:
- negs r0, r7
- strh r0, [r1, 0xA]
-_080B002C:
- adds r0, r2, 0
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80AFFDC
-
- thumb_func_start sub_80B003C
-sub_80B003C: @ 80B003C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r8, r0
- mov r9, r1
- adds r5, r2, 0
- adds r4, r3, 0
- ldr r6, [sp, 0x1C]
- ldr r0, [sp, 0x20]
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =sub_80AFECC
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r1, r0, r1
- strh r5, [r1, 0x6]
- strh r4, [r1, 0x8]
- mov r0, r8
- strh r0, [r1, 0x2]
- mov r0, r9
- strh r0, [r1, 0x4]
- strh r6, [r1, 0xC]
- cmp r5, r4
- bge _080B0088
- strh r7, [r1, 0xA]
- b _080B008C
- .pool
-_080B0088:
- negs r0, r7
- strh r0, [r1, 0xA]
-_080B008C:
- adds r0, r2, 0
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80B003C
-
- thumb_func_start sub_80B009C
-sub_80B009C: @ 80B009C
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- adds r4, r0, 0
- bl Overworld_GetFlashLevel
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0
- cmp r4, 0
- bne _080B00B6
- movs r5, 0x1
-_080B00B6:
- ldr r1, =gUnknown_0854FE64
- lsls r0, 1
- adds r0, r1
- ldrh r2, [r0]
- lsls r0, r4, 1
- adds r0, r1
- ldrh r3, [r0]
- str r5, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r0, 0x78
- movs r1, 0x50
- bl sub_80AFFDC
- bl sub_80AFFB8
- bl ScriptContext2_Enable
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B009C
-
- thumb_func_start sub_80B00E8
-sub_80B00E8: @ 80B00E8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _080B0116
- ldr r4, =gScanlineEffectRegBuffers
- ldr r1, =gUnknown_0854FE64
- lsls r0, 1
- adds r0, r1
- ldrh r3, [r0]
- adds r0, r4, 0
- movs r1, 0x78
- movs r2, 0x50
- bl sub_80AFCC4
- movs r0, 0xF0
- lsls r0, 3
- adds r1, r4, r0
- movs r2, 0xF0
- lsls r2, 1
- adds r0, r4, 0
- bl CpuFastSet
-_080B0116:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B00E8
-
- thumb_func_start door_upload_tiles
-door_upload_tiles: @ 80B0124
- push {r4,lr}
- ldr r4, =gScanlineEffectRegBuffers
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, =0x00000e68
- adds r0, r1
- ldrb r3, [r0]
- adds r0, r4, 0
- movs r1, 0x78
- movs r2, 0x50
- bl sub_80AFCC4
- movs r0, 0xF0
- lsls r0, 3
- adds r1, r4, r0
- movs r2, 0xF0
- lsls r2, 1
- adds r0, r4, 0
- bl CpuFastSet
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end door_upload_tiles
-
- thumb_func_start task0A_mpl_807E31C
-task0A_mpl_807E31C: @ 80B0160
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _080B0184
- cmp r0, 0x1
- beq _080B0198
- b _080B01B6
- .pool
-_080B0184:
- bl FreezeEventObjects
- bl ScriptContext2_Enable
- bl sub_808D194
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080B01B6
-_080B0198:
- bl sub_80AF71C
- cmp r0, 0
- beq _080B01B6
- bl sub_808D1B4
- cmp r0, 0x1
- beq _080B01B6
- bl UnfreezeEventObjects
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_080B01B6:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end task0A_mpl_807E31C
-
- thumb_func_start sub_80B01BC
-sub_80B01BC: @ 80B01BC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, =gTasks
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _080B0202
- cmp r0, 0x1
- bgt _080B01E4
- cmp r0, 0
- beq _080B01EE
- b _080B023A
- .pool
-_080B01E4:
- cmp r0, 0x2
- beq _080B0210
- cmp r0, 0x3
- beq _080B022A
- b _080B023A
-_080B01EE:
- bl FreezeEventObjects
- bl ScriptContext2_Enable
- movs r0, 0x2D
- bl PlaySE
- bl sub_808D1C8
- b _080B0222
-_080B0202:
- bl sub_808D1E8
- cmp r0, 0
- bne _080B023A
- bl sub_80AF0B4
- b _080B0222
-_080B0210:
- bl sub_80AF710
- cmp r0, 0
- bne _080B023A
- bl BGMusicStopped
- lsls r0, 24
- cmp r0, 0
- beq _080B023A
-_080B0222:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _080B023A
-_080B022A:
- bl WarpIntoMap
- ldr r0, =CB2_LoadMap
- bl SetMainCallback2
- adds r0, r5, 0
- bl DestroyTask
-_080B023A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B01BC
-
- thumb_func_start sub_80B0244
-sub_80B0244: @ 80B0244
- push {lr}
- bl ScriptContext2_Enable
- ldr r0, =sub_80AFA0C
- movs r1, 0xA
- bl CreateTask
- ldr r1, =gFieldCallback
- ldr r0, =sub_80AF3E8
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B0244
-
- thumb_func_start sub_80B0268
-sub_80B0268: @ 80B0268
- push {lr}
- bl ScriptContext2_Enable
- ldr r0, =gFieldCallback
- ldr r1, =mapldr_default
- str r1, [r0]
- ldr r0, =sub_80B01BC
- movs r1, 0xA
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B0268
-
- thumb_func_start sub_80B028C
-sub_80B028C: @ 80B028C
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- cmp r0, 0
- bne _080B029A
- movs r1, 0x1F
- b _080B02A0
-_080B029A:
- movs r0, 0xF8
- lsls r0, 7
- adds r1, r0, 0
-_080B02A0:
- mov r0, sp
- strh r1, [r0]
- movs r5, 0
- movs r4, 0xF0
- lsls r4, 16
-_080B02AA:
- lsrs r1, r4, 16
- mov r0, sp
- movs r2, 0x2
- bl LoadPalette
- movs r0, 0x80
- lsls r0, 9
- adds r4, r0
- adds r5, 0x1
- cmp r5, 0xF
- ble _080B02AA
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80B028C
-
- thumb_func_start sub_80B02C8
-sub_80B02C8: @ 80B02C8
- push {r4,r5,lr}
- lsls r0, 16
- ldr r2, =0x04000052
- ldrh r1, [r2]
- lsls r1, 24
- lsrs r5, r1, 24
- ldrh r1, [r2]
- lsrs r4, r1, 8
- cmp r0, 0
- beq _080B02EC
- cmp r5, 0
- beq _080B02F6
- subs r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- b _080B02F6
- .pool
-_080B02EC:
- cmp r4, 0xF
- bhi _080B02F6
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_080B02F6:
- lsls r1, r4, 8
- orrs r1, r5
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x52
- bl SetGpuReg
- cmp r5, 0
- bne _080B0310
- cmp r4, 0x10
- bne _080B0310
- movs r0, 0x1
- b _080B0312
-_080B0310:
- movs r0, 0
-_080B0312:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_80B02C8
-
- thumb_func_start sub_80B0318
-sub_80B0318: @ 80B0318
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, =gTasks + 0x8
- adds r5, r0, r1
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0x7
- bls _080B0334
- b _080B052C
-_080B0334:
- lsls r0, 2
- ldr r1, =_080B0348
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080B0348:
- .4byte _080B0368
- .4byte _080B0424
- .4byte _080B0450
- .4byte _080B046C
- .4byte _080B0482
- .4byte _080B04F2
- .4byte _080B04AC
- .4byte _080B04BA
-_080B0368:
- movs r0, 0x80
- lsls r0, 19
- ldrh r0, [r0]
- strh r0, [r5, 0xC]
- ldr r0, =0x04000050
- ldrh r0, [r0]
- strh r0, [r5, 0xE]
- ldr r0, =0x04000052
- ldrh r0, [r0]
- strh r0, [r5, 0x10]
- ldr r0, =0x04000048
- ldrh r0, [r0]
- strh r0, [r5, 0x12]
- ldr r0, =0x0400004a
- ldrh r0, [r0]
- strh r0, [r5, 0x14]
- movs r1, 0x80
- lsls r1, 7
- movs r0, 0
- bl ClearGpuRegBits
- ldr r0, =gUnknown_82EC7CC
- ldrh r1, [r0]
- movs r0, 0x50
- bl SetGpuRegBits
- ldr r1, =0x0000070c
- movs r0, 0x52
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0x3F
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0x1E
- bl SetGpuReg
- movs r0, 0x14
- str r0, [sp]
- movs r0, 0xF
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0x1E
- bl sub_8199C30
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- ldr r4, =gScanlineEffectRegBuffers
- movs r2, 0x4
- ldrsh r1, [r5, r2]
- movs r0, 0x6
- ldrsh r2, [r5, r0]
- adds r0, r4, 0
- movs r3, 0x1
- bl sub_80AFD7C
- movs r2, 0xF0
- lsls r2, 3
- adds r1, r4, r2
- movs r2, 0xF0
- lsls r2, 1
- adds r0, r4, 0
- bl CpuFastSet
- ldr r2, =gUnknown_0854FE7C
- ldr r0, [r2]
- ldr r1, [r2, 0x4]
- ldr r2, [r2, 0x8]
- bl ScanlineEffect_SetParams
- movs r0, 0x1
- strh r0, [r5]
- b _080B052C
- .pool
-_080B0424:
- movs r0, 0
- movs r1, 0x11
- movs r2, 0
- movs r3, 0x1
- bl sub_8199DF0
- ldrb r0, [r5, 0x2]
- bl sub_80B028C
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- movs r2, 0x6
- ldrsh r1, [r5, r2]
- movs r2, 0x1
- str r2, [sp]
- movs r4, 0x2
- str r4, [sp, 0x4]
- movs r3, 0xA0
- bl sub_80B003C
- strh r4, [r5]
- b _080B052C
-_080B0450:
- ldr r0, =sub_80AFECC
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _080B052C
- bl EnableBothScriptContexts
- movs r0, 0x3
- strh r0, [r5]
- b _080B052C
- .pool
-_080B046C:
- bl InstallCameraPanAheadCallback
- movs r0, 0
- bl SetCameraPanningCallback
- movs r0, 0
- strh r0, [r5, 0xA]
- movs r0, 0x4
- strh r0, [r5, 0x8]
- strh r0, [r5]
- b _080B052C
-_080B0482:
- ldrh r0, [r5, 0x8]
- subs r0, 0x1
- strh r0, [r5, 0x8]
- lsls r0, 16
- cmp r0, 0
- bne _080B052C
- movs r0, 0x4
- strh r0, [r5, 0x8]
- ldrh r0, [r5, 0xA]
- movs r1, 0x1
- eors r0, r1
- strh r0, [r5, 0xA]
- movs r1, 0x4
- negs r1, r1
- cmp r0, 0
- beq _080B04A4
- movs r1, 0x4
-_080B04A4:
- movs r0, 0
- bl SetCameraPanning
- b _080B052C
-_080B04AC:
- bl InstallCameraPanAheadCallback
- movs r0, 0x8
- strh r0, [r5, 0x8]
- movs r0, 0x7
- strh r0, [r5]
- b _080B052C
-_080B04BA:
- ldrh r0, [r5, 0x8]
- subs r0, 0x1
- strh r0, [r5, 0x8]
- lsls r0, 16
- cmp r0, 0
- bne _080B052C
- movs r0, 0x8
- strh r0, [r5, 0x8]
- ldrh r0, [r5, 0xA]
- movs r1, 0x1
- eors r0, r1
- strh r0, [r5, 0xA]
- ldrh r0, [r5, 0xA]
- bl sub_80B02C8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080B052C
- movs r0, 0x5
- strh r0, [r5]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_8199DF0
- b _080B052C
-_080B04F2:
- movs r0, 0x40
- movs r1, 0xFF
- bl SetGpuReg
- ldrh r1, [r5, 0xC]
- movs r0, 0
- bl SetGpuReg
- ldrh r1, [r5, 0xE]
- movs r0, 0x50
- bl SetGpuReg
- ldrh r1, [r5, 0x10]
- movs r0, 0x52
- bl SetGpuReg
- ldrh r1, [r5, 0x12]
- movs r0, 0x48
- bl SetGpuReg
- ldrh r1, [r5, 0x14]
- movs r0, 0x4A
- bl SetGpuReg
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
-_080B052C:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80B0318
-
- thumb_func_start sub_80B0534
-sub_80B0534: @ 80B0534
- push {lr}
- ldr r0, =sub_80B0318
- movs r1, 0x50
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, =gTasks + 0x8
- adds r1, r0
- ldr r0, =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0
- bne _080B0568
- strh r0, [r1, 0x2]
- movs r0, 0x68
- b _080B0580
- .pool
-_080B0568:
- cmp r0, 0x1
- bne _080B0572
- strh r0, [r1, 0x2]
- movs r0, 0x88
- b _080B0580
-_080B0572:
- cmp r0, 0x2
- bne _080B057A
- movs r0, 0
- b _080B057C
-_080B057A:
- movs r0, 0x1
-_080B057C:
- strh r0, [r1, 0x2]
- movs r0, 0x78
-_080B0580:
- strh r0, [r1, 0x4]
- movs r0, 0x50
- strh r0, [r1, 0x6]
- pop {r0}
- bx r0
- thumb_func_end sub_80B0534
-
- thumb_func_start sub_80B058C
-sub_80B058C: @ 80B058C
- push {lr}
- ldr r0, =sub_80B0318
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0x6
- strh r0, [r1, 0x8]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B058C
-
- thumb_func_start sub_80B05B4
-sub_80B05B4: @ 80B05B4
- push {lr}
- bl Overworld_FadeOutMapMusic
- ldr r0, =task50_0807F0C8
- movs r1, 0x50
- bl CreateTask
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80B05B4
-
- thumb_func_start task50_0807F0C8
-task50_0807F0C8: @ 80B05CC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl BGMusicStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080B05E8
- adds r0, r4, 0
- bl DestroyTask
- bl EnableBothScriptContexts
-_080B05E8:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task50_0807F0C8
-
- .align 2, 0 @ Don't pad with nop.