summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYamaArashi <shadow962@live.com>2015-11-27 09:39:52 -0800
committerYamaArashi <shadow962@live.com>2015-11-27 09:39:52 -0800
commit13340a9d822cab913688f24421fd0efe4c216b09 (patch)
treecb5a52803864a6d762c1e79f02bf78cb216176a8
parent144bab20ce498fd13e0e36a78e718e6fd39efbf0 (diff)
split out tileset animation code
-rw-r--r--asm/emerald.s1935
-rw-r--r--asm/tileset_animation.s1934
2 files changed, 1935 insertions, 1934 deletions
diff --git a/asm/emerald.s b/asm/emerald.s
index 614d240b3..7e5b63334 100644
--- a/asm/emerald.s
+++ b/asm/emerald.s
@@ -299033,1940 +299033,7 @@ append_byte: ; 80A0944
bx lr
thumb_func_end append_byte
- thumb_func_start sub_80A0954
-; void sub_80A0954()
-sub_80A0954: ; 80A0954
- push {lr}
- sub sp, 0x4
- ldr r1, =0x03000f34
- movs r0, 0
- strb r0, [r1]
- movs r0, 0
- str r0, [sp]
- ldr r1, =0x02037624
- ldr r2, =0x0500003c
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0954
-
- thumb_func_start sub_80A0980
-sub_80A0980: ; 80A0980
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r2, 16
- lsrs r6, r2, 16
- ldr r3, =0x03000f34
- ldrb r0, [r3]
- cmp r0, 0x13
- bhi @080A09C0
- ldr r2, =0x02037624
- adds r1, r0, 0
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- str r4, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r1, r2, 0x4
- adds r0, r1
- str r5, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- strh r6, [r0, 0x8]
- ldrb r0, [r3]
- adds r0, 0x1
- strb r0, [r3]
-@080A09C0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0980
-
- thumb_func_start sub_80A09D0
-sub_80A09D0: ; 80A09D0
- push {r4-r6,lr}
- movs r3, 0
- ldr r4, =0x03000f34
- adds r6, r4, 0
- ldrb r0, [r4]
- cmp r3, r0
- bge @080A0A02
- ldr r2, =0x040000d4
- ldr r1, =0x02037624
- movs r5, 0x80
- lsls r5, 24
-@080A09E6:
- ldr r0, [r1]
- str r0, [r2]
- ldr r0, [r1, 0x4]
- str r0, [r2, 0x4]
- ldrh r0, [r1, 0x8]
- lsrs r0, 1
- orrs r0, r5
- str r0, [r2, 0x8]
- ldr r0, [r2, 0x8]
- adds r1, 0xC
- adds r3, 0x1
- ldrb r0, [r4]
- cmp r3, r0
- blt @080A09E6
-@080A0A02:
- movs r0, 0
- strb r0, [r6]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A09D0
-
- thumb_func_start cur_mapheader_run_tileset_funcs_after_some_cpuset
-cur_mapheader_run_tileset_funcs_after_some_cpuset: ; 80A0A18
- push {lr}
- bl sub_80A0954
- bl cur_mapheader_run_tileset1_func
- bl cur_mapheader_run_tileset2_func
- pop {r0}
- bx r0
- thumb_func_end cur_mapheader_run_tileset_funcs_after_some_cpuset
-
- thumb_func_start sub_80A0A2C
-sub_80A0A2C: ; 80A0A2C
- push {lr}
- bl cur_mapheader_run_tileset2_func
- pop {r0}
- bx r0
- thumb_func_end sub_80A0A2C
-
- thumb_func_start sub_80A0A38
-sub_80A0A38: ; 80A0A38
- push {r4,lr}
- bl sub_80A0954
- ldr r2, =0x03000f36
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- ldr r1, =0x03000f38
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bcc @080A0A56
- movs r0, 0
- strh r0, [r2]
-@080A0A56:
- ldr r4, =0x03000f3a
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- ldr r1, =0x03000f3c
- lsls r0, 16
- lsrs r0, 16
- ldrh r1, [r1]
- cmp r0, r1
- bcc @080A0A6E
- movs r0, 0
- strh r0, [r4]
-@080A0A6E:
- ldr r0, =0x03000f40
- ldr r1, [r0]
- cmp r1, 0
- beq @080A0A7C
- ldrh r0, [r2]
- bl _call_via_r1
-@080A0A7C:
- ldr r0, =0x03000f44
- ldr r1, [r0]
- cmp r1, 0
- beq @080A0A8A
- ldrh r0, [r4]
- bl _call_via_r1
-@080A0A8A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0A38
-
- thumb_func_start cur_mapheader_run_tileset1_func
-cur_mapheader_run_tileset1_func: ; 80A0AA8
- push {lr}
- ldr r0, =0x03000f36
- movs r1, 0
- strh r1, [r0]
- ldr r0, =0x03000f38
- strh r1, [r0]
- ldr r1, =0x03000f40
- movs r0, 0
- str r0, [r1]
- ldr r0, =0x02037318
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- cmp r0, 0
- beq @080A0ACE
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq @080A0ACE
- bl _call_via_r0
-@080A0ACE:
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end cur_mapheader_run_tileset1_func
-
- thumb_func_start cur_mapheader_run_tileset2_func
-cur_mapheader_run_tileset2_func: ; 80A0AE4
- push {lr}
- ldr r0, =0x03000f3a
- movs r1, 0
- strh r1, [r0]
- ldr r0, =0x03000f3c
- strh r1, [r0]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- ldr r0, =0x02037318
- ldr r0, [r0]
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq @080A0B0A
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq @080A0B0A
- bl _call_via_r0
-@080A0B0A:
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end cur_mapheader_run_tileset2_func
-
- thumb_func_start TilesetCb_General
-TilesetCb_General: ; 80A0B20
- ldr r1, =0x03000f36
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f38
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, =0x03000f40
- ldr r0, =sub_80A0B70
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_General
-
- thumb_func_start TilesetCb_InsideBuilding
-TilesetCb_InsideBuilding: ; 80A0B48
- ldr r1, =0x03000f36
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f38
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- ldr r1, =0x03000f40
- ldr r0, =sub_80A0BB4
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_InsideBuilding
-
- thumb_func_start sub_80A0B70
-sub_80A0B70: ; 80A0B70
- push {r4,r5,lr}
- lsls r5, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r5
- lsrs r4, r0, 16
- cmp r4, 0
- bne @080A0B86
- lsrs r0, r5, 20
- bl sub_80A0BCC
-@080A0B86:
- cmp r4, 0x1
- bne @080A0B90
- lsrs r0, r5, 20
- bl sub_80A0BF4
-@080A0B90:
- cmp r4, 0x2
- bne @080A0B9A
- lsrs r0, r5, 20
- bl sub_80A0C1C
-@080A0B9A:
- cmp r4, 0x3
- bne @080A0BA4
- lsrs r0, r5, 20
- bl sub_80A0C44
-@080A0BA4:
- cmp r4, 0x4
- bne @080A0BAE
- lsrs r0, r5, 20
- bl sub_80A12AC
-@080A0BAE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A0B70
-
- thumb_func_start sub_80A0BB4
-sub_80A0BB4: ; 80A0BB4
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne @080A0BC8
- lsrs r0, r1, 19
- bl sub_80A1688
-@080A0BC8:
- pop {r0}
- bx r0
- thumb_func_end sub_80A0BB4
-
- thumb_func_start sub_80A0BCC
-sub_80A0BCC: ; 80A0BCC
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08510764
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003f80
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0BCC
-
- thumb_func_start sub_80A0BF4
-sub_80A0BF4: ; 80A0BF4
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x7
- ands r0, r1
- ldr r1, =gUnknown_08512574
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06003600
- movs r2, 0xF0
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0BF4
-
- thumb_func_start sub_80A0C1C
-sub_80A0C1C: ; 80A0C1C
- push {lr}
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_08512E54
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003a00
- movs r2, 0xA0
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0C1C
-
- thumb_func_start sub_80A0C44
-sub_80A0C44: ; 80A0C44
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08513174
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003e00
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A0C44
-
- thumb_func_start TilesetCb_Petalburg
-TilesetCb_Petalburg: ; 80A0C6C
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Petalburg
-
- thumb_func_start TilesetCb_Rustboro
-TilesetCb_Rustboro: ; 80A0C94
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A103C
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Rustboro
-
- thumb_func_start TilesetCb_Dewford
-TilesetCb_Dewford: ; 80A0CC0
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A10B8
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Dewford
-
- thumb_func_start TilesetCb_Slateport
-TilesetCb_Slateport: ; 80A0CEC
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A10D0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Slateport
-
- thumb_func_start TilesetCb_Mauville
-TilesetCb_Mauville: ; 80A0D18
- ldr r1, =0x03000f3a
- ldr r0, =0x03000f36
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A10E8
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Mauville
-
- thumb_func_start TilesetCb_Lavaridge
-TilesetCb_Lavaridge: ; 80A0D48
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A115C
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Lavaridge
-
- thumb_func_start TilesetCb_Fallarbor
-TilesetCb_Fallarbor: ; 80A0D74
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Fallarbor
-
- thumb_func_start TilesetCb_Fortree
-TilesetCb_Fortree: ; 80A0D9C
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Fortree
-
- thumb_func_start TilesetCb_Lilycove
-TilesetCb_Lilycove: ; 80A0DC4
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Lilycove
-
- thumb_func_start TilesetCb_Mossdeep
-TilesetCb_Mossdeep: ; 80A0DEC
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- movs r0, 0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Mossdeep
-
- thumb_func_start TilesetCb_EverGrande
-TilesetCb_EverGrande: ; 80A0E14
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1188
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_EverGrande
-
- thumb_func_start TilesetCb_Pacifidlog
-TilesetCb_Pacifidlog: ; 80A0E40
- ldr r1, =0x03000f3a
- ldr r0, =0x03000f36
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A11FC
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Pacifidlog
-
- thumb_func_start TilesetCb_Sootopolis
-TilesetCb_Sootopolis: ; 80A0E70
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A122C
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Sootopolis
-
- thumb_func_start TilesetCb_BattleFrontierOutsideWest
-TilesetCb_BattleFrontierOutsideWest: ; 80A0E9C
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A127C
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_BattleFrontierOutsideWest
-
- thumb_func_start TilesetCb_BattleFrontierOutsideEast
-TilesetCb_BattleFrontierOutsideEast: ; 80A0EC8
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1294
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_BattleFrontierOutsideEast
-
- thumb_func_start TilesetCb_Underwater
-TilesetCb_Underwater: ; 80A0EF4
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- movs r0, 0x80
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1244
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Underwater
-
- thumb_func_start TilesetCb_SootopolisGym
-TilesetCb_SootopolisGym: ; 80A0F18
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- movs r0, 0xF0
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A15D8
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_SootopolisGym
-
- thumb_func_start TilesetCb_Cave
-TilesetCb_Cave: ; 80A0F3C
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1260
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_Cave
-
- thumb_func_start TilesetCb_EliteFour
-TilesetCb_EliteFour: ; 80A0F68
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- movs r0, 0x80
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A15F0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_EliteFour
-
- thumb_func_start TilesetCb_MauvilleGym
-TilesetCb_MauvilleGym: ; 80A0F8C
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A15C0
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_MauvilleGym
-
- thumb_func_start TilesetCb_BikeShop
-TilesetCb_BikeShop: ; 80A0FB8
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A161C
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_BikeShop
-
- thumb_func_start TilesetCb_BattlePyramid
-TilesetCb_BattlePyramid: ; 80A0FE4
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1634
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_BattlePyramid
-
- thumb_func_start TilesetCb_BattleDome
-TilesetCb_BattleDome: ; 80A1010
- ldr r1, =0x03000f3a
- movs r0, 0
- strh r0, [r1]
- ldr r1, =0x03000f3c
- ldr r0, =0x03000f38
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1658
- str r0, [r1]
- bx lr
- .align 2, 0
- .pool
- thumb_func_end TilesetCb_BattleDome
-
- thumb_func_start sub_80A103C
-sub_80A103C: ; 80A103C
- push {r4-r6,lr}
- lsls r5, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r5
- lsrs r6, r0, 16
- cmp r6, 0
- bne @080A105C
- lsrs r4, r5, 19
- adds r0, r4, 0
- movs r1, 0
- bl sub_80A1434
- adds r0, r4, 0
- bl sub_80A1470
-@080A105C:
- cmp r6, 0x1
- bne @080A1068
- lsrs r0, r5, 19
- movs r1, 0x1
- bl sub_80A1434
-@080A1068:
- cmp r6, 0x2
- bne @080A1074
- lsrs r0, r5, 19
- movs r1, 0x2
- bl sub_80A1434
-@080A1074:
- cmp r6, 0x3
- bne @080A1080
- lsrs r0, r5, 19
- movs r1, 0x3
- bl sub_80A1434
-@080A1080:
- cmp r6, 0x4
- bne @080A108C
- lsrs r0, r5, 19
- movs r1, 0x4
- bl sub_80A1434
-@080A108C:
- cmp r6, 0x5
- bne @080A1098
- lsrs r0, r5, 19
- movs r1, 0x5
- bl sub_80A1434
-@080A1098:
- cmp r6, 0x6
- bne @080A10A4
- lsrs r0, r5, 19
- movs r1, 0x6
- bl sub_80A1434
-@080A10A4:
- cmp r6, 0x7
- bne @080A10B0
- lsrs r0, r5, 19
- movs r1, 0x7
- bl sub_80A1434
-@080A10B0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_80A103C
-
- thumb_func_start sub_80A10B8
-sub_80A10B8: ; 80A10B8
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne @080A10CC
- lsrs r0, r1, 19
- bl sub_80A1520
-@080A10CC:
- pop {r0}
- bx r0
- thumb_func_end sub_80A10B8
-
- thumb_func_start sub_80A10D0
-sub_80A10D0: ; 80A10D0
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne @080A10E4
- lsrs r0, r1, 20
- bl sub_80A1598
-@080A10E4:
- pop {r0}
- bx r0
- thumb_func_end sub_80A10D0
-
- thumb_func_start sub_80A10E8
-sub_80A10E8: ; 80A10E8
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne @080A1100
- lsrs r0, r4, 19
- movs r1, 0
- bl sub_80A1394
-@080A1100:
- cmp r5, 0x1
- bne @080A110C
- lsrs r0, r4, 19
- movs r1, 0x1
- bl sub_80A1394
-@080A110C:
- cmp r5, 0x2
- bne @080A1118
- lsrs r0, r4, 19
- movs r1, 0x2
- bl sub_80A1394
-@080A1118:
- cmp r5, 0x3
- bne @080A1124
- lsrs r0, r4, 19
- movs r1, 0x3
- bl sub_80A1394
-@080A1124:
- cmp r5, 0x4
- bne @080A1130
- lsrs r0, r4, 19
- movs r1, 0x4
- bl sub_80A1394
-@080A1130:
- cmp r5, 0x5
- bne @080A113C
- lsrs r0, r4, 19
- movs r1, 0x5
- bl sub_80A1394
-@080A113C:
- cmp r5, 0x6
- bne @080A1148
- lsrs r0, r4, 19
- movs r1, 0x6
- bl sub_80A1394
-@080A1148:
- cmp r5, 0x7
- bne @080A1154
- lsrs r0, r4, 19
- movs r1, 0x7
- bl sub_80A1394
-@080A1154:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A10E8
-
- thumb_func_start sub_80A115C
-sub_80A115C: ; 80A115C
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne @080A1176
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A12D4
-@080A1176:
- cmp r5, 0x1
- bne @080A1180
- lsrs r0, r4, 20
- bl sub_80A1498
-@080A1180:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A115C
-
- thumb_func_start sub_80A1188
-sub_80A1188: ; 80A1188
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne @080A11A0
- lsrs r0, r4, 19
- movs r1, 0
- bl sub_80A14C0
-@080A11A0:
- cmp r5, 0x1
- bne @080A11AC
- lsrs r0, r4, 19
- movs r1, 0x1
- bl sub_80A14C0
-@080A11AC:
- cmp r5, 0x2
- bne @080A11B8
- lsrs r0, r4, 19
- movs r1, 0x2
- bl sub_80A14C0
-@080A11B8:
- cmp r5, 0x3
- bne @080A11C4
- lsrs r0, r4, 19
- movs r1, 0x3
- bl sub_80A14C0
-@080A11C4:
- cmp r5, 0x4
- bne @080A11D0
- lsrs r0, r4, 19
- movs r1, 0x4
- bl sub_80A14C0
-@080A11D0:
- cmp r5, 0x5
- bne @080A11DC
- lsrs r0, r4, 19
- movs r1, 0x5
- bl sub_80A14C0
-@080A11DC:
- cmp r5, 0x6
- bne @080A11E8
- lsrs r0, r4, 19
- movs r1, 0x6
- bl sub_80A14C0
-@080A11E8:
- cmp r5, 0x7
- bne @080A11F4
- lsrs r0, r4, 19
- movs r1, 0x7
- bl sub_80A14C0
-@080A11F4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A1188
-
- thumb_func_start sub_80A11FC
-sub_80A11FC: ; 80A11FC
- push {r4,r5,lr}
- lsls r4, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r4
- lsrs r5, r0, 16
- cmp r5, 0
- bne @080A1216
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A131C
-@080A1216:
- cmp r5, 0x1
- bne @080A1224
- lsrs r0, r4, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A136C
-@080A1224:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A11FC
-
- thumb_func_start sub_80A122C
-sub_80A122C: ; 80A122C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne @080A1240
- lsrs r0, r1, 20
- bl sub_80A1798
-@080A1240:
- pop {r0}
- bx r0
- thumb_func_end sub_80A122C
-
- thumb_func_start sub_80A1244
-sub_80A1244: ; 80A1244
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- bne @080A125C
- lsrs r0, r1, 20
- lsls r0, 24
- lsrs r0, 24
- bl sub_80A1344
-@080A125C:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1244
-
- thumb_func_start sub_80A1260
-sub_80A1260: ; 80A1260
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r1
- lsrs r0, 16
- cmp r0, 0x1
- bne @080A1276
- lsrs r0, r1, 20
- bl sub_80A14F8
-@080A1276:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1260
-
- thumb_func_start sub_80A127C
-sub_80A127C: ; 80A127C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne @080A1290
- lsrs r0, r1, 19
- bl sub_80A1548
-@080A1290:
- pop {r0}
- bx r0
- thumb_func_end sub_80A127C
-
- thumb_func_start sub_80A1294
-sub_80A1294: ; 80A1294
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne @080A12A8
- lsrs r0, r1, 19
- bl sub_80A1570
-@080A12A8:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1294
-
- thumb_func_start sub_80A12AC
-sub_80A12AC: ; 80A12AC
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08513684
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06003c00
- movs r2, 0xA0
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A12AC
-
- thumb_func_start sub_80A12D4
-sub_80A12D4: ; 80A12D4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x3
- ands r0, r4
- ldr r5, =gUnknown_08513894
- lsls r0, 2
- adds r0, r5
- ldr r0, [r0]
- ldr r1, =0x06006400
- movs r2, 0x80
- bl sub_80A0980
- adds r1, r4, 0x2
- adds r0, r1, 0
- asrs r0, 2
- lsls r0, 2
- subs r0, r1, r0
- lsls r0, 24
- lsrs r0, 22
- adds r0, r5
- ldr r0, [r0]
- ldr r1, =0x06006480
- movs r2, 0x80
- bl sub_80A0980
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A12D4
-
- thumb_func_start sub_80A131C
-sub_80A131C: ; 80A131C
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 18
- ands r1, r0
- ldr r0, =gUnknown_085143E4
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007a00
- movs r2, 0xF0
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A131C
-
- thumb_func_start sub_80A1344
-sub_80A1344: ; 80A1344
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 18
- ands r1, r0
- ldr r0, =gUnknown_085145F4
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007e00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1344
-
- thumb_func_start sub_80A136C
-sub_80A136C: ; 80A136C
- push {lr}
- lsls r0, 24
- movs r1, 0xE0
- lsls r1, 19
- ands r1, r0
- ldr r0, =gUnknown_08514E04
- lsrs r1, 22
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007e00
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A136C
-
- thumb_func_start sub_80A1394
-sub_80A1394: ; 80A1394
- push {r4-r6,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- subs r0, r5, r6
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0xB
- bhi @080A13F0
- adds r0, r5, 0
- movs r1, 0xC
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- ldr r0, =gUnknown_08515384
- lsrs r4, 14
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, =gUnknown_08515344
- lsls r5, r6, 2
- adds r1, r5, r1
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- ldr r0, =gUnknown_085153B4
- adds r4, r0
- ldr r0, [r4]
- ldr r1, =gUnknown_08515364
- adds r5, r1
- ldr r1, [r5]
- movs r2, 0x80
- bl sub_80A0980
- b @080A141C
- .align 2, 0
- .pool
-@080A13F0:
- movs r0, 0x3
- ands r5, r0
- ldr r0, =gUnknown_085153E4
- lsls r5, 2
- adds r0, r5, r0
- ldr r0, [r0]
- ldr r1, =gUnknown_08515344
- lsls r4, r6, 2
- adds r1, r4, r1
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- ldr r0, =gUnknown_085153F4
- adds r5, r0
- ldr r0, [r5]
- ldr r1, =gUnknown_08515364
- adds r4, r1
- ldr r1, [r4]
- movs r2, 0x80
- bl sub_80A0980
-@080A141C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1394
-
- thumb_func_start sub_80A1434
-sub_80A1434: ; 80A1434
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r3, r1, 24
- subs r0, r3
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_08515824
- lsrs r1, 14
- adds r1, r0
- ldr r2, [r1]
- cmp r2, 0
- beq @080A1464
- ldr r0, =gUnknown_08515804
- lsls r1, r3, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r2, 0
- movs r2, 0x80
- bl sub_80A0980
-@080A1464:
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1434
-
- thumb_func_start sub_80A1470
-sub_80A1470: ; 80A1470
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08515964
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007800
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1470
-
- thumb_func_start sub_80A1498
-sub_80A1498: ; 80A1498
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08515D8C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005400
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1498
-
- thumb_func_start sub_80A14C0
-sub_80A14C0: ; 80A14C0
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1
- lsls r0, 16
- movs r2, 0xE0
- lsls r2, 11
- ands r2, r0
- ldr r0, =gUnknown_085161DC
- lsrs r2, 14
- adds r2, r0
- ldr r0, [r2]
- ldr r2, =gUnknown_085161BC
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A14C0
-
- thumb_func_start sub_80A14F8
-sub_80A14F8: ; 80A14F8
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08515D8C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007400
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A14F8
-
- thumb_func_start sub_80A1520
-sub_80A1520: ; 80A1520
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_085164FC
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005540
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1520
-
- thumb_func_start sub_80A1548
-sub_80A1548: ; 80A1548
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_0851680C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005b40
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1548
-
- thumb_func_start sub_80A1570
-sub_80A1570: ; 80A1570
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08516B1C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005b40
- movs r2, 0xC0
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1570
-
- thumb_func_start sub_80A1598
-sub_80A1598: ; 80A1598
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08516D2C
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005c00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1598
-
- thumb_func_start sub_80A15C0
-sub_80A15C0: ; 80A15C0
- push {lr}
- lsls r2, r0, 16
- lsrs r0, r2, 16
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne @080A15D4
- lsrs r0, r2, 17
- bl sub_80A1748
-@080A15D4:
- pop {r0}
- bx r0
- thumb_func_end sub_80A15C0
-
- thumb_func_start sub_80A15D8
-sub_80A15D8: ; 80A15D8
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r1
- cmp r0, 0
- bne @080A15EC
- lsrs r0, r1, 19
- bl sub_80A16B0
-@080A15EC:
- pop {r0}
- bx r0
- thumb_func_end sub_80A15D8
-
- thumb_func_start sub_80A15F0
-sub_80A15F0: ; 80A15F0
- push {r4,r5,lr}
- lsls r4, r0, 16
- lsrs r0, r4, 16
- adds r5, r0, 0
- movs r0, 0x3F
- ands r0, r5
- cmp r0, 0x1
- bne @080A1606
- lsrs r0, r4, 22
- bl sub_80A1720
-@080A1606:
- movs r0, 0x7
- ands r0, r5
- cmp r0, 0x1
- bne @080A1614
- lsrs r0, r4, 19
- bl sub_80A16F8
-@080A1614:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80A15F0
-
- thumb_func_start sub_80A161C
-sub_80A161C: ; 80A161C
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne @080A1630
- lsrs r0, r1, 18
- bl sub_80A1770
-@080A1630:
- pop {r0}
- bx r0
- thumb_func_end sub_80A161C
-
- thumb_func_start sub_80A1634
-sub_80A1634: ; 80A1634
- push {r4,lr}
- lsls r4, r0, 16
- movs r0, 0xE0
- lsls r0, 11
- ands r0, r4
- cmp r0, 0
- bne @080A1650
- lsrs r4, 19
- adds r0, r4, 0
- bl sub_80A17C0
- adds r0, r4, 0
- bl sub_80A17EC
-@080A1650:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80A1634
-
- thumb_func_start sub_80A1658
-sub_80A1658: ; 80A1658
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne @080A166C
- lsrs r0, r1, 18
- bl sub_80A1818
-@080A166C:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1658
-
- thumb_func_start sub_80A1670
-sub_80A1670: ; 80A1670
- push {lr}
- lsls r1, r0, 16
- movs r0, 0xC0
- lsls r0, 10
- ands r0, r1
- cmp r0, 0
- bne @080A1684
- lsrs r0, r1, 18
- bl sub_80A1884
-@080A1684:
- pop {r0}
- bx r0
- thumb_func_end sub_80A1670
-
- thumb_func_start sub_80A1688
-sub_80A1688: ; 80A1688
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08516E3C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06003e00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1688
-
- thumb_func_start sub_80A16B0
-sub_80A16B0: ; 80A16B0
- push {r4,lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- ldr r0, =gUnknown_08517A44
- lsrs r4, 14
- adds r0, r4, r0
- ldr r0, [r0]
- ldr r1, =0x06007e00
- movs r2, 0xC0
- lsls r2, 1
- bl sub_80A0980
- ldr r0, =gUnknown_08517A50
- adds r4, r0
- ldr r0, [r4]
- ldr r1, =0x06007a00
- movs r2, 0xA0
- lsls r2, 2
- bl sub_80A0980
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A16B0
-
- thumb_func_start sub_80A16F8
-sub_80A16F8: ; 80A16F8
- push {lr}
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- ldr r0, =gUnknown_08517BFC
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06007f00
- movs r2, 0x20
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A16F8
-
- thumb_func_start sub_80A1720
-sub_80A1720: ; 80A1720
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08517C0C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007c00
- movs r2, 0x80
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1720
-
- thumb_func_start sub_80A1748
-sub_80A1748: ; 80A1748
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_08518034
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06005200
- movs r2, 0x80
- lsls r2, 2
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1748
-
- thumb_func_start sub_80A1770
-sub_80A1770: ; 80A1770
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- ldr r1, =gUnknown_0851829C
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x06007e00
- movs r2, 0x90
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1770
-
- thumb_func_start sub_80A1798
-sub_80A1798: ; 80A1798
- push {lr}
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- ldr r0, =gUnknown_085202C4
- lsrs r1, 14
- adds r1, r0
- ldr r0, [r1]
- ldr r1, =0x06005e00
- movs r2, 0xC0
- lsls r2, 4
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1798
-
- thumb_func_start sub_80A17C0
-sub_80A17C0: ; 80A17C0
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- ldr r1, =gUnknown_08524864
- lsrs r0, 14
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x060052e0
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A17C0
-
- thumb_func_start sub_80A17EC
-sub_80A17EC: ; 80A17EC
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x3
- bl __umodsi3
- lsls r0, 16
- ldr r1, =gUnknown_08524870
- lsrs r0, 14
- adds r0, r1
- ldr r0, [r0]
- ldr r1, =0x060050e0
- movs r2, 0x80
- lsls r2, 1
- bl sub_80A0980
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A17EC
-
- thumb_func_start sub_80A1818
-sub_80A1818: ; 80A1818
- push {lr}
- lsls r0, 16
- ldr r2, =gUnknown_0852487C
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 14
- adds r1, r2
- ldr r0, [r1]
- ldr r1, =0x02037814
- movs r2, 0x10
- bl CpuSet
- ldr r0, =0x02037fd4
- ldrh r2, [r0, 0x4]
- lsls r2, 21
- lsrs r2, 27
- ldrh r3, [r0, 0x6]
- lsls r3, 17
- lsrs r3, 17
- movs r0, 0x80
- movs r1, 0x10
- bl pal_fade_1
- ldr r0, =sub_8149DFC
- bl get_task_id_by_function
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq @080A1862
- ldr r1, =0x03000f44
- ldr r0, =sub_80A1670
- str r0, [r1]
- ldr r1, =0x03000f3c
- movs r0, 0x20
- strh r0, [r1]
-@080A1862:
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1818
-
- thumb_func_start sub_80A1884
-sub_80A1884: ; 80A1884
- push {lr}
- lsls r0, 16
- ldr r2, =gUnknown_0852487C
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 14
- adds r1, r2
- ldr r0, [r1]
- ldr r1, =0x02037814
- movs r2, 0x10
- bl CpuSet
- ldr r0, =sub_8149DFC
- bl get_task_id_by_function
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne @080A18D6
- ldr r0, =0x02037fd4
- ldrh r2, [r0, 0x4]
- lsls r2, 21
- lsrs r2, 27
- ldrh r3, [r0, 0x6]
- lsls r3, 17
- lsrs r3, 17
- movs r0, 0x80
- movs r1, 0x10
- bl pal_fade_1
- ldr r1, =0x03000f3c
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- bne @080A18D6
- ldr r0, =0x03000f44
- str r1, [r0]
-@080A18D6:
- pop {r0}
- bx r0
- .align 2, 0
- .pool
- thumb_func_end sub_80A1884
+ .include "asm/tileset_animation.s"
thumb_func_start decompress_palette
; void decompress_palette(void *src, u16 offset, u16 size)
diff --git a/asm/tileset_animation.s b/asm/tileset_animation.s
new file mode 100644
index 000000000..471fa21fd
--- /dev/null
+++ b/asm/tileset_animation.s
@@ -0,0 +1,1934 @@
+ thumb_func_start sub_80A0954
+; void sub_80A0954()
+sub_80A0954: ; 80A0954
+ push {lr}
+ sub sp, 0x4
+ ldr r1, =0x03000f34
+ movs r0, 0
+ strb r0, [r1]
+ movs r0, 0
+ str r0, [sp]
+ ldr r1, =0x02037624
+ ldr r2, =0x0500003c
+ mov r0, sp
+ bl CpuSet
+ add sp, 0x4
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0954
+
+ thumb_func_start sub_80A0980
+sub_80A0980: ; 80A0980
+ push {r4-r6,lr}
+ adds r4, r0, 0
+ adds r5, r1, 0
+ lsls r2, 16
+ lsrs r6, r2, 16
+ ldr r3, =0x03000f34
+ ldrb r0, [r3]
+ cmp r0, 0x13
+ bhi @080A09C0
+ ldr r2, =0x02037624
+ adds r1, r0, 0
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ str r4, [r0]
+ ldrb r1, [r3]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r1, r2, 0x4
+ adds r0, r1
+ str r5, [r0]
+ ldrb r1, [r3]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ strh r6, [r0, 0x8]
+ ldrb r0, [r3]
+ adds r0, 0x1
+ strb r0, [r3]
+@080A09C0:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0980
+
+ thumb_func_start sub_80A09D0
+sub_80A09D0: ; 80A09D0
+ push {r4-r6,lr}
+ movs r3, 0
+ ldr r4, =0x03000f34
+ adds r6, r4, 0
+ ldrb r0, [r4]
+ cmp r3, r0
+ bge @080A0A02
+ ldr r2, =0x040000d4
+ ldr r1, =0x02037624
+ movs r5, 0x80
+ lsls r5, 24
+@080A09E6:
+ ldr r0, [r1]
+ str r0, [r2]
+ ldr r0, [r1, 0x4]
+ str r0, [r2, 0x4]
+ ldrh r0, [r1, 0x8]
+ lsrs r0, 1
+ orrs r0, r5
+ str r0, [r2, 0x8]
+ ldr r0, [r2, 0x8]
+ adds r1, 0xC
+ adds r3, 0x1
+ ldrb r0, [r4]
+ cmp r3, r0
+ blt @080A09E6
+@080A0A02:
+ movs r0, 0
+ strb r0, [r6]
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A09D0
+
+ thumb_func_start cur_mapheader_run_tileset_funcs_after_some_cpuset
+cur_mapheader_run_tileset_funcs_after_some_cpuset: ; 80A0A18
+ push {lr}
+ bl sub_80A0954
+ bl cur_mapheader_run_tileset1_func
+ bl cur_mapheader_run_tileset2_func
+ pop {r0}
+ bx r0
+ thumb_func_end cur_mapheader_run_tileset_funcs_after_some_cpuset
+
+ thumb_func_start sub_80A0A2C
+sub_80A0A2C: ; 80A0A2C
+ push {lr}
+ bl cur_mapheader_run_tileset2_func
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A0A2C
+
+ thumb_func_start sub_80A0A38
+sub_80A0A38: ; 80A0A38
+ push {r4,lr}
+ bl sub_80A0954
+ ldr r2, =0x03000f36
+ ldrh r0, [r2]
+ adds r0, 0x1
+ strh r0, [r2]
+ ldr r1, =0x03000f38
+ lsls r0, 16
+ lsrs r0, 16
+ ldrh r1, [r1]
+ cmp r0, r1
+ bcc @080A0A56
+ movs r0, 0
+ strh r0, [r2]
+@080A0A56:
+ ldr r4, =0x03000f3a
+ ldrh r0, [r4]
+ adds r0, 0x1
+ strh r0, [r4]
+ ldr r1, =0x03000f3c
+ lsls r0, 16
+ lsrs r0, 16
+ ldrh r1, [r1]
+ cmp r0, r1
+ bcc @080A0A6E
+ movs r0, 0
+ strh r0, [r4]
+@080A0A6E:
+ ldr r0, =0x03000f40
+ ldr r1, [r0]
+ cmp r1, 0
+ beq @080A0A7C
+ ldrh r0, [r2]
+ bl _call_via_r1
+@080A0A7C:
+ ldr r0, =0x03000f44
+ ldr r1, [r0]
+ cmp r1, 0
+ beq @080A0A8A
+ ldrh r0, [r4]
+ bl _call_via_r1
+@080A0A8A:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0A38
+
+ thumb_func_start cur_mapheader_run_tileset1_func
+cur_mapheader_run_tileset1_func: ; 80A0AA8
+ push {lr}
+ ldr r0, =0x03000f36
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, =0x03000f38
+ strh r1, [r0]
+ ldr r1, =0x03000f40
+ movs r0, 0
+ str r0, [r1]
+ ldr r0, =0x02037318
+ ldr r0, [r0]
+ ldr r0, [r0, 0x10]
+ cmp r0, 0
+ beq @080A0ACE
+ ldr r0, [r0, 0x14]
+ cmp r0, 0
+ beq @080A0ACE
+ bl _call_via_r0
+@080A0ACE:
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end cur_mapheader_run_tileset1_func
+
+ thumb_func_start cur_mapheader_run_tileset2_func
+cur_mapheader_run_tileset2_func: ; 80A0AE4
+ push {lr}
+ ldr r0, =0x03000f3a
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, =0x03000f3c
+ strh r1, [r0]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ ldr r0, =0x02037318
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ cmp r0, 0
+ beq @080A0B0A
+ ldr r0, [r0, 0x14]
+ cmp r0, 0
+ beq @080A0B0A
+ bl _call_via_r0
+@080A0B0A:
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end cur_mapheader_run_tileset2_func
+
+ thumb_func_start TilesetCb_General
+TilesetCb_General: ; 80A0B20
+ ldr r1, =0x03000f36
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f38
+ movs r2, 0x80
+ lsls r2, 1
+ adds r0, r2, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f40
+ ldr r0, =sub_80A0B70
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_General
+
+ thumb_func_start TilesetCb_InsideBuilding
+TilesetCb_InsideBuilding: ; 80A0B48
+ ldr r1, =0x03000f36
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f38
+ movs r2, 0x80
+ lsls r2, 1
+ adds r0, r2, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f40
+ ldr r0, =sub_80A0BB4
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_InsideBuilding
+
+ thumb_func_start sub_80A0B70
+sub_80A0B70: ; 80A0B70
+ push {r4,r5,lr}
+ lsls r5, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r5
+ lsrs r4, r0, 16
+ cmp r4, 0
+ bne @080A0B86
+ lsrs r0, r5, 20
+ bl sub_80A0BCC
+@080A0B86:
+ cmp r4, 0x1
+ bne @080A0B90
+ lsrs r0, r5, 20
+ bl sub_80A0BF4
+@080A0B90:
+ cmp r4, 0x2
+ bne @080A0B9A
+ lsrs r0, r5, 20
+ bl sub_80A0C1C
+@080A0B9A:
+ cmp r4, 0x3
+ bne @080A0BA4
+ lsrs r0, r5, 20
+ bl sub_80A0C44
+@080A0BA4:
+ cmp r4, 0x4
+ bne @080A0BAE
+ lsrs r0, r5, 20
+ bl sub_80A12AC
+@080A0BAE:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A0B70
+
+ thumb_func_start sub_80A0BB4
+sub_80A0BB4: ; 80A0BB4
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r1
+ cmp r0, 0
+ bne @080A0BC8
+ lsrs r0, r1, 19
+ bl sub_80A1688
+@080A0BC8:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A0BB4
+
+ thumb_func_start sub_80A0BCC
+sub_80A0BCC: ; 80A0BCC
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08510764
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06003f80
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0BCC
+
+ thumb_func_start sub_80A0BF4
+sub_80A0BF4: ; 80A0BF4
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x7
+ ands r0, r1
+ ldr r1, =gUnknown_08512574
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06003600
+ movs r2, 0xF0
+ lsls r2, 2
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0BF4
+
+ thumb_func_start sub_80A0C1C
+sub_80A0C1C: ; 80A0C1C
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xE0
+ lsls r1, 11
+ ands r1, r0
+ ldr r0, =gUnknown_08512E54
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06003a00
+ movs r2, 0xA0
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0C1C
+
+ thumb_func_start sub_80A0C44
+sub_80A0C44: ; 80A0C44
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08513174
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06003e00
+ movs r2, 0xC0
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A0C44
+
+ thumb_func_start TilesetCb_Petalburg
+TilesetCb_Petalburg: ; 80A0C6C
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Petalburg
+
+ thumb_func_start TilesetCb_Rustboro
+TilesetCb_Rustboro: ; 80A0C94
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A103C
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Rustboro
+
+ thumb_func_start TilesetCb_Dewford
+TilesetCb_Dewford: ; 80A0CC0
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A10B8
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Dewford
+
+ thumb_func_start TilesetCb_Slateport
+TilesetCb_Slateport: ; 80A0CEC
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A10D0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Slateport
+
+ thumb_func_start TilesetCb_Mauville
+TilesetCb_Mauville: ; 80A0D18
+ ldr r1, =0x03000f3a
+ ldr r0, =0x03000f36
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A10E8
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Mauville
+
+ thumb_func_start TilesetCb_Lavaridge
+TilesetCb_Lavaridge: ; 80A0D48
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A115C
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Lavaridge
+
+ thumb_func_start TilesetCb_Fallarbor
+TilesetCb_Fallarbor: ; 80A0D74
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Fallarbor
+
+ thumb_func_start TilesetCb_Fortree
+TilesetCb_Fortree: ; 80A0D9C
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Fortree
+
+ thumb_func_start TilesetCb_Lilycove
+TilesetCb_Lilycove: ; 80A0DC4
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Lilycove
+
+ thumb_func_start TilesetCb_Mossdeep
+TilesetCb_Mossdeep: ; 80A0DEC
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ movs r0, 0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Mossdeep
+
+ thumb_func_start TilesetCb_EverGrande
+TilesetCb_EverGrande: ; 80A0E14
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1188
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_EverGrande
+
+ thumb_func_start TilesetCb_Pacifidlog
+TilesetCb_Pacifidlog: ; 80A0E40
+ ldr r1, =0x03000f3a
+ ldr r0, =0x03000f36
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A11FC
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Pacifidlog
+
+ thumb_func_start TilesetCb_Sootopolis
+TilesetCb_Sootopolis: ; 80A0E70
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A122C
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Sootopolis
+
+ thumb_func_start TilesetCb_BattleFrontierOutsideWest
+TilesetCb_BattleFrontierOutsideWest: ; 80A0E9C
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A127C
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_BattleFrontierOutsideWest
+
+ thumb_func_start TilesetCb_BattleFrontierOutsideEast
+TilesetCb_BattleFrontierOutsideEast: ; 80A0EC8
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1294
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_BattleFrontierOutsideEast
+
+ thumb_func_start TilesetCb_Underwater
+TilesetCb_Underwater: ; 80A0EF4
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ movs r0, 0x80
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1244
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Underwater
+
+ thumb_func_start TilesetCb_SootopolisGym
+TilesetCb_SootopolisGym: ; 80A0F18
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ movs r0, 0xF0
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A15D8
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_SootopolisGym
+
+ thumb_func_start TilesetCb_Cave
+TilesetCb_Cave: ; 80A0F3C
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1260
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_Cave
+
+ thumb_func_start TilesetCb_EliteFour
+TilesetCb_EliteFour: ; 80A0F68
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ movs r0, 0x80
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A15F0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_EliteFour
+
+ thumb_func_start TilesetCb_MauvilleGym
+TilesetCb_MauvilleGym: ; 80A0F8C
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A15C0
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_MauvilleGym
+
+ thumb_func_start TilesetCb_BikeShop
+TilesetCb_BikeShop: ; 80A0FB8
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A161C
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_BikeShop
+
+ thumb_func_start TilesetCb_BattlePyramid
+TilesetCb_BattlePyramid: ; 80A0FE4
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1634
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_BattlePyramid
+
+ thumb_func_start TilesetCb_BattleDome
+TilesetCb_BattleDome: ; 80A1010
+ ldr r1, =0x03000f3a
+ movs r0, 0
+ strh r0, [r1]
+ ldr r1, =0x03000f3c
+ ldr r0, =0x03000f38
+ ldrh r0, [r0]
+ strh r0, [r1]
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1658
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+ .pool
+ thumb_func_end TilesetCb_BattleDome
+
+ thumb_func_start sub_80A103C
+sub_80A103C: ; 80A103C
+ push {r4-r6,lr}
+ lsls r5, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r5
+ lsrs r6, r0, 16
+ cmp r6, 0
+ bne @080A105C
+ lsrs r4, r5, 19
+ adds r0, r4, 0
+ movs r1, 0
+ bl sub_80A1434
+ adds r0, r4, 0
+ bl sub_80A1470
+@080A105C:
+ cmp r6, 0x1
+ bne @080A1068
+ lsrs r0, r5, 19
+ movs r1, 0x1
+ bl sub_80A1434
+@080A1068:
+ cmp r6, 0x2
+ bne @080A1074
+ lsrs r0, r5, 19
+ movs r1, 0x2
+ bl sub_80A1434
+@080A1074:
+ cmp r6, 0x3
+ bne @080A1080
+ lsrs r0, r5, 19
+ movs r1, 0x3
+ bl sub_80A1434
+@080A1080:
+ cmp r6, 0x4
+ bne @080A108C
+ lsrs r0, r5, 19
+ movs r1, 0x4
+ bl sub_80A1434
+@080A108C:
+ cmp r6, 0x5
+ bne @080A1098
+ lsrs r0, r5, 19
+ movs r1, 0x5
+ bl sub_80A1434
+@080A1098:
+ cmp r6, 0x6
+ bne @080A10A4
+ lsrs r0, r5, 19
+ movs r1, 0x6
+ bl sub_80A1434
+@080A10A4:
+ cmp r6, 0x7
+ bne @080A10B0
+ lsrs r0, r5, 19
+ movs r1, 0x7
+ bl sub_80A1434
+@080A10B0:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A103C
+
+ thumb_func_start sub_80A10B8
+sub_80A10B8: ; 80A10B8
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r1
+ cmp r0, 0
+ bne @080A10CC
+ lsrs r0, r1, 19
+ bl sub_80A1520
+@080A10CC:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A10B8
+
+ thumb_func_start sub_80A10D0
+sub_80A10D0: ; 80A10D0
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r1
+ cmp r0, 0
+ bne @080A10E4
+ lsrs r0, r1, 20
+ bl sub_80A1598
+@080A10E4:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A10D0
+
+ thumb_func_start sub_80A10E8
+sub_80A10E8: ; 80A10E8
+ push {r4,r5,lr}
+ lsls r4, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r4
+ lsrs r5, r0, 16
+ cmp r5, 0
+ bne @080A1100
+ lsrs r0, r4, 19
+ movs r1, 0
+ bl sub_80A1394
+@080A1100:
+ cmp r5, 0x1
+ bne @080A110C
+ lsrs r0, r4, 19
+ movs r1, 0x1
+ bl sub_80A1394
+@080A110C:
+ cmp r5, 0x2
+ bne @080A1118
+ lsrs r0, r4, 19
+ movs r1, 0x2
+ bl sub_80A1394
+@080A1118:
+ cmp r5, 0x3
+ bne @080A1124
+ lsrs r0, r4, 19
+ movs r1, 0x3
+ bl sub_80A1394
+@080A1124:
+ cmp r5, 0x4
+ bne @080A1130
+ lsrs r0, r4, 19
+ movs r1, 0x4
+ bl sub_80A1394
+@080A1130:
+ cmp r5, 0x5
+ bne @080A113C
+ lsrs r0, r4, 19
+ movs r1, 0x5
+ bl sub_80A1394
+@080A113C:
+ cmp r5, 0x6
+ bne @080A1148
+ lsrs r0, r4, 19
+ movs r1, 0x6
+ bl sub_80A1394
+@080A1148:
+ cmp r5, 0x7
+ bne @080A1154
+ lsrs r0, r4, 19
+ movs r1, 0x7
+ bl sub_80A1394
+@080A1154:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A10E8
+
+ thumb_func_start sub_80A115C
+sub_80A115C: ; 80A115C
+ push {r4,r5,lr}
+ lsls r4, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r4
+ lsrs r5, r0, 16
+ cmp r5, 0
+ bne @080A1176
+ lsrs r0, r4, 20
+ lsls r0, 24
+ lsrs r0, 24
+ bl sub_80A12D4
+@080A1176:
+ cmp r5, 0x1
+ bne @080A1180
+ lsrs r0, r4, 20
+ bl sub_80A1498
+@080A1180:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A115C
+
+ thumb_func_start sub_80A1188
+sub_80A1188: ; 80A1188
+ push {r4,r5,lr}
+ lsls r4, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r4
+ lsrs r5, r0, 16
+ cmp r5, 0
+ bne @080A11A0
+ lsrs r0, r4, 19
+ movs r1, 0
+ bl sub_80A14C0
+@080A11A0:
+ cmp r5, 0x1
+ bne @080A11AC
+ lsrs r0, r4, 19
+ movs r1, 0x1
+ bl sub_80A14C0
+@080A11AC:
+ cmp r5, 0x2
+ bne @080A11B8
+ lsrs r0, r4, 19
+ movs r1, 0x2
+ bl sub_80A14C0
+@080A11B8:
+ cmp r5, 0x3
+ bne @080A11C4
+ lsrs r0, r4, 19
+ movs r1, 0x3
+ bl sub_80A14C0
+@080A11C4:
+ cmp r5, 0x4
+ bne @080A11D0
+ lsrs r0, r4, 19
+ movs r1, 0x4
+ bl sub_80A14C0
+@080A11D0:
+ cmp r5, 0x5
+ bne @080A11DC
+ lsrs r0, r4, 19
+ movs r1, 0x5
+ bl sub_80A14C0
+@080A11DC:
+ cmp r5, 0x6
+ bne @080A11E8
+ lsrs r0, r4, 19
+ movs r1, 0x6
+ bl sub_80A14C0
+@080A11E8:
+ cmp r5, 0x7
+ bne @080A11F4
+ lsrs r0, r4, 19
+ movs r1, 0x7
+ bl sub_80A14C0
+@080A11F4:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1188
+
+ thumb_func_start sub_80A11FC
+sub_80A11FC: ; 80A11FC
+ push {r4,r5,lr}
+ lsls r4, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r4
+ lsrs r5, r0, 16
+ cmp r5, 0
+ bne @080A1216
+ lsrs r0, r4, 20
+ lsls r0, 24
+ lsrs r0, 24
+ bl sub_80A131C
+@080A1216:
+ cmp r5, 0x1
+ bne @080A1224
+ lsrs r0, r4, 20
+ lsls r0, 24
+ lsrs r0, 24
+ bl sub_80A136C
+@080A1224:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A11FC
+
+ thumb_func_start sub_80A122C
+sub_80A122C: ; 80A122C
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r1
+ cmp r0, 0
+ bne @080A1240
+ lsrs r0, r1, 20
+ bl sub_80A1798
+@080A1240:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A122C
+
+ thumb_func_start sub_80A1244
+sub_80A1244: ; 80A1244
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r1
+ cmp r0, 0
+ bne @080A125C
+ lsrs r0, r1, 20
+ lsls r0, 24
+ lsrs r0, 24
+ bl sub_80A1344
+@080A125C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1244
+
+ thumb_func_start sub_80A1260
+sub_80A1260: ; 80A1260
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xF0
+ lsls r0, 12
+ ands r0, r1
+ lsrs r0, 16
+ cmp r0, 0x1
+ bne @080A1276
+ lsrs r0, r1, 20
+ bl sub_80A14F8
+@080A1276:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1260
+
+ thumb_func_start sub_80A127C
+sub_80A127C: ; 80A127C
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r1
+ cmp r0, 0
+ bne @080A1290
+ lsrs r0, r1, 19
+ bl sub_80A1548
+@080A1290:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A127C
+
+ thumb_func_start sub_80A1294
+sub_80A1294: ; 80A1294
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r1
+ cmp r0, 0
+ bne @080A12A8
+ lsrs r0, r1, 19
+ bl sub_80A1570
+@080A12A8:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1294
+
+ thumb_func_start sub_80A12AC
+sub_80A12AC: ; 80A12AC
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08513684
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06003c00
+ movs r2, 0xA0
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A12AC
+
+ thumb_func_start sub_80A12D4
+sub_80A12D4: ; 80A12D4
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ movs r0, 0x3
+ ands r0, r4
+ ldr r5, =gUnknown_08513894
+ lsls r0, 2
+ adds r0, r5
+ ldr r0, [r0]
+ ldr r1, =0x06006400
+ movs r2, 0x80
+ bl sub_80A0980
+ adds r1, r4, 0x2
+ adds r0, r1, 0
+ asrs r0, 2
+ lsls r0, 2
+ subs r0, r1, r0
+ lsls r0, 24
+ lsrs r0, 22
+ adds r0, r5
+ ldr r0, [r0]
+ ldr r1, =0x06006480
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A12D4
+
+ thumb_func_start sub_80A131C
+sub_80A131C: ; 80A131C
+ push {lr}
+ lsls r0, 24
+ movs r1, 0xC0
+ lsls r1, 18
+ ands r1, r0
+ ldr r0, =gUnknown_085143E4
+ lsrs r1, 22
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06007a00
+ movs r2, 0xF0
+ lsls r2, 2
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A131C
+
+ thumb_func_start sub_80A1344
+sub_80A1344: ; 80A1344
+ push {lr}
+ lsls r0, 24
+ movs r1, 0xC0
+ lsls r1, 18
+ ands r1, r0
+ ldr r0, =gUnknown_085145F4
+ lsrs r1, 22
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06007e00
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1344
+
+ thumb_func_start sub_80A136C
+sub_80A136C: ; 80A136C
+ push {lr}
+ lsls r0, 24
+ movs r1, 0xE0
+ lsls r1, 19
+ ands r1, r0
+ ldr r0, =gUnknown_08514E04
+ lsrs r1, 22
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06007e00
+ movs r2, 0x80
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A136C
+
+ thumb_func_start sub_80A1394
+sub_80A1394: ; 80A1394
+ push {r4-r6,lr}
+ lsls r0, 16
+ lsrs r5, r0, 16
+ lsls r1, 24
+ lsrs r6, r1, 24
+ subs r0, r5, r6
+ lsls r0, 16
+ lsrs r5, r0, 16
+ cmp r5, 0xB
+ bhi @080A13F0
+ adds r0, r5, 0
+ movs r1, 0xC
+ bl __umodsi3
+ adds r4, r0, 0
+ lsls r4, 16
+ ldr r0, =gUnknown_08515384
+ lsrs r4, 14
+ adds r0, r4, r0
+ ldr r0, [r0]
+ ldr r1, =gUnknown_08515344
+ lsls r5, r6, 2
+ adds r1, r5, r1
+ ldr r1, [r1]
+ movs r2, 0x80
+ bl sub_80A0980
+ ldr r0, =gUnknown_085153B4
+ adds r4, r0
+ ldr r0, [r4]
+ ldr r1, =gUnknown_08515364
+ adds r5, r1
+ ldr r1, [r5]
+ movs r2, 0x80
+ bl sub_80A0980
+ b @080A141C
+ .align 2, 0
+ .pool
+@080A13F0:
+ movs r0, 0x3
+ ands r5, r0
+ ldr r0, =gUnknown_085153E4
+ lsls r5, 2
+ adds r0, r5, r0
+ ldr r0, [r0]
+ ldr r1, =gUnknown_08515344
+ lsls r4, r6, 2
+ adds r1, r4, r1
+ ldr r1, [r1]
+ movs r2, 0x80
+ bl sub_80A0980
+ ldr r0, =gUnknown_085153F4
+ adds r5, r0
+ ldr r0, [r5]
+ ldr r1, =gUnknown_08515364
+ adds r4, r1
+ ldr r1, [r4]
+ movs r2, 0x80
+ bl sub_80A0980
+@080A141C:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1394
+
+ thumb_func_start sub_80A1434
+sub_80A1434: ; 80A1434
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ lsls r1, 24
+ lsrs r3, r1, 24
+ subs r0, r3
+ lsls r0, 16
+ movs r1, 0xE0
+ lsls r1, 11
+ ands r1, r0
+ ldr r0, =gUnknown_08515824
+ lsrs r1, 14
+ adds r1, r0
+ ldr r2, [r1]
+ cmp r2, 0
+ beq @080A1464
+ ldr r0, =gUnknown_08515804
+ lsls r1, r3, 2
+ adds r1, r0
+ ldr r1, [r1]
+ adds r0, r2, 0
+ movs r2, 0x80
+ bl sub_80A0980
+@080A1464:
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1434
+
+ thumb_func_start sub_80A1470
+sub_80A1470: ; 80A1470
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, =gUnknown_08515964
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06007800
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1470
+
+ thumb_func_start sub_80A1498
+sub_80A1498: ; 80A1498
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08515D8C
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005400
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1498
+
+ thumb_func_start sub_80A14C0
+sub_80A14C0: ; 80A14C0
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ lsls r1, 24
+ lsrs r1, 24
+ subs r0, r1
+ lsls r0, 16
+ movs r2, 0xE0
+ lsls r2, 11
+ ands r2, r0
+ ldr r0, =gUnknown_085161DC
+ lsrs r2, 14
+ adds r2, r0
+ ldr r0, [r2]
+ ldr r2, =gUnknown_085161BC
+ lsls r1, 2
+ adds r1, r2
+ ldr r1, [r1]
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A14C0
+
+ thumb_func_start sub_80A14F8
+sub_80A14F8: ; 80A14F8
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08515D8C
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06007400
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A14F8
+
+ thumb_func_start sub_80A1520
+sub_80A1520: ; 80A1520
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_085164FC
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005540
+ movs r2, 0xC0
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1520
+
+ thumb_func_start sub_80A1548
+sub_80A1548: ; 80A1548
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_0851680C
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005b40
+ movs r2, 0xC0
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1548
+
+ thumb_func_start sub_80A1570
+sub_80A1570: ; 80A1570
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08516B1C
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005b40
+ movs r2, 0xC0
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1570
+
+ thumb_func_start sub_80A1598
+sub_80A1598: ; 80A1598
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08516D2C
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005c00
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1598
+
+ thumb_func_start sub_80A15C0
+sub_80A15C0: ; 80A15C0
+ push {lr}
+ lsls r2, r0, 16
+ lsrs r0, r2, 16
+ movs r1, 0x1
+ ands r0, r1
+ cmp r0, 0
+ bne @080A15D4
+ lsrs r0, r2, 17
+ bl sub_80A1748
+@080A15D4:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A15C0
+
+ thumb_func_start sub_80A15D8
+sub_80A15D8: ; 80A15D8
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r1
+ cmp r0, 0
+ bne @080A15EC
+ lsrs r0, r1, 19
+ bl sub_80A16B0
+@080A15EC:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A15D8
+
+ thumb_func_start sub_80A15F0
+sub_80A15F0: ; 80A15F0
+ push {r4,r5,lr}
+ lsls r4, r0, 16
+ lsrs r0, r4, 16
+ adds r5, r0, 0
+ movs r0, 0x3F
+ ands r0, r5
+ cmp r0, 0x1
+ bne @080A1606
+ lsrs r0, r4, 22
+ bl sub_80A1720
+@080A1606:
+ movs r0, 0x7
+ ands r0, r5
+ cmp r0, 0x1
+ bne @080A1614
+ lsrs r0, r4, 19
+ bl sub_80A16F8
+@080A1614:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A15F0
+
+ thumb_func_start sub_80A161C
+sub_80A161C: ; 80A161C
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xC0
+ lsls r0, 10
+ ands r0, r1
+ cmp r0, 0
+ bne @080A1630
+ lsrs r0, r1, 18
+ bl sub_80A1770
+@080A1630:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A161C
+
+ thumb_func_start sub_80A1634
+sub_80A1634: ; 80A1634
+ push {r4,lr}
+ lsls r4, r0, 16
+ movs r0, 0xE0
+ lsls r0, 11
+ ands r0, r4
+ cmp r0, 0
+ bne @080A1650
+ lsrs r4, 19
+ adds r0, r4, 0
+ bl sub_80A17C0
+ adds r0, r4, 0
+ bl sub_80A17EC
+@080A1650:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1634
+
+ thumb_func_start sub_80A1658
+sub_80A1658: ; 80A1658
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xC0
+ lsls r0, 10
+ ands r0, r1
+ cmp r0, 0
+ bne @080A166C
+ lsrs r0, r1, 18
+ bl sub_80A1818
+@080A166C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1658
+
+ thumb_func_start sub_80A1670
+sub_80A1670: ; 80A1670
+ push {lr}
+ lsls r1, r0, 16
+ movs r0, 0xC0
+ lsls r0, 10
+ ands r0, r1
+ cmp r0, 0
+ bne @080A1684
+ lsrs r0, r1, 18
+ bl sub_80A1884
+@080A1684:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80A1670
+
+ thumb_func_start sub_80A1688
+sub_80A1688: ; 80A1688
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, =gUnknown_08516E3C
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06003e00
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1688
+
+ thumb_func_start sub_80A16B0
+sub_80A16B0: ; 80A16B0
+ push {r4,lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x3
+ bl __umodsi3
+ adds r4, r0, 0
+ lsls r4, 16
+ ldr r0, =gUnknown_08517A44
+ lsrs r4, 14
+ adds r0, r4, r0
+ ldr r0, [r0]
+ ldr r1, =0x06007e00
+ movs r2, 0xC0
+ lsls r2, 1
+ bl sub_80A0980
+ ldr r0, =gUnknown_08517A50
+ adds r4, r0
+ ldr r0, [r4]
+ ldr r1, =0x06007a00
+ movs r2, 0xA0
+ lsls r2, 2
+ bl sub_80A0980
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A16B0
+
+ thumb_func_start sub_80A16F8
+sub_80A16F8: ; 80A16F8
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ ldr r0, =gUnknown_08517BFC
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06007f00
+ movs r2, 0x20
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A16F8
+
+ thumb_func_start sub_80A1720
+sub_80A1720: ; 80A1720
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, =gUnknown_08517C0C
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06007c00
+ movs r2, 0x80
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1720
+
+ thumb_func_start sub_80A1748
+sub_80A1748: ; 80A1748
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, =gUnknown_08518034
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06005200
+ movs r2, 0x80
+ lsls r2, 2
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1748
+
+ thumb_func_start sub_80A1770
+sub_80A1770: ; 80A1770
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x1
+ ands r0, r1
+ ldr r1, =gUnknown_0851829C
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x06007e00
+ movs r2, 0x90
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1770
+
+ thumb_func_start sub_80A1798
+sub_80A1798: ; 80A1798
+ push {lr}
+ lsls r0, 16
+ movs r1, 0xE0
+ lsls r1, 11
+ ands r1, r0
+ ldr r0, =gUnknown_085202C4
+ lsrs r1, 14
+ adds r1, r0
+ ldr r0, [r1]
+ ldr r1, =0x06005e00
+ movs r2, 0xC0
+ lsls r2, 4
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1798
+
+ thumb_func_start sub_80A17C0
+sub_80A17C0: ; 80A17C0
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x3
+ bl __umodsi3
+ lsls r0, 16
+ ldr r1, =gUnknown_08524864
+ lsrs r0, 14
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x060052e0
+ movs r2, 0x80
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A17C0
+
+ thumb_func_start sub_80A17EC
+sub_80A17EC: ; 80A17EC
+ push {lr}
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x3
+ bl __umodsi3
+ lsls r0, 16
+ ldr r1, =gUnknown_08524870
+ lsrs r0, 14
+ adds r0, r1
+ ldr r0, [r0]
+ ldr r1, =0x060050e0
+ movs r2, 0x80
+ lsls r2, 1
+ bl sub_80A0980
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A17EC
+
+ thumb_func_start sub_80A1818
+sub_80A1818: ; 80A1818
+ push {lr}
+ lsls r0, 16
+ ldr r2, =gUnknown_0852487C
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ lsrs r1, 14
+ adds r1, r2
+ ldr r0, [r1]
+ ldr r1, =0x02037814
+ movs r2, 0x10
+ bl CpuSet
+ ldr r0, =0x02037fd4
+ ldrh r2, [r0, 0x4]
+ lsls r2, 21
+ lsrs r2, 27
+ ldrh r3, [r0, 0x6]
+ lsls r3, 17
+ lsrs r3, 17
+ movs r0, 0x80
+ movs r1, 0x10
+ bl pal_fade_1
+ ldr r0, =sub_8149DFC
+ bl get_task_id_by_function
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0xFF
+ beq @080A1862
+ ldr r1, =0x03000f44
+ ldr r0, =sub_80A1670
+ str r0, [r1]
+ ldr r1, =0x03000f3c
+ movs r0, 0x20
+ strh r0, [r1]
+@080A1862:
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1818
+
+ thumb_func_start sub_80A1884
+sub_80A1884: ; 80A1884
+ push {lr}
+ lsls r0, 16
+ ldr r2, =gUnknown_0852487C
+ movs r1, 0xC0
+ lsls r1, 10
+ ands r1, r0
+ lsrs r1, 14
+ adds r1, r2
+ ldr r0, [r1]
+ ldr r1, =0x02037814
+ movs r2, 0x10
+ bl CpuSet
+ ldr r0, =sub_8149DFC
+ bl get_task_id_by_function
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0xFF
+ bne @080A18D6
+ ldr r0, =0x02037fd4
+ ldrh r2, [r0, 0x4]
+ lsls r2, 21
+ lsrs r2, 27
+ ldrh r3, [r0, 0x6]
+ lsls r3, 17
+ lsrs r3, 17
+ movs r0, 0x80
+ movs r1, 0x10
+ bl pal_fade_1
+ ldr r1, =0x03000f3c
+ ldrh r0, [r1]
+ subs r0, 0x1
+ strh r0, [r1]
+ lsls r0, 16
+ lsrs r1, r0, 16
+ cmp r1, 0
+ bne @080A18D6
+ ldr r0, =0x03000f44
+ str r1, [r0]
+@080A18D6:
+ pop {r0}
+ bx r0
+ .align 2, 0
+ .pool
+ thumb_func_end sub_80A1884