summaryrefslogtreecommitdiff
path: root/asm/fieldmap.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/fieldmap.s')
-rw-r--r--asm/fieldmap.s2400
1 files changed, 0 insertions, 2400 deletions
diff --git a/asm/fieldmap.s b/asm/fieldmap.s
deleted file mode 100644
index a8b2d36ee..000000000
--- a/asm/fieldmap.s
+++ /dev/null
@@ -1,2400 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start mapconnection_get_mapheader
-mapconnection_get_mapheader: @ 80589C4
- push {lr}
- ldrb r2, [r0, 0x8]
- ldrb r1, [r0, 0x9]
- adds r0, r2, 0
- bl get_mapheader_by_bank_and_number
- pop {r1}
- bx r1
- thumb_func_end mapconnection_get_mapheader
-
- thumb_func_start not_trainer_hill_battle_pyramid
-not_trainer_hill_battle_pyramid: @ 80589D4
- push {lr}
- ldr r0, _080589E4 @ =gMapHeader
- bl sub_8058A00
- bl mapheader_run_script_with_tag_x1
- pop {r0}
- bx r0
- .align 2, 0
-_080589E4: .4byte gMapHeader
- thumb_func_end not_trainer_hill_battle_pyramid
-
- thumb_func_start sub_80589E8
-sub_80589E8: @ 80589E8
- push {lr}
- ldr r0, _080589FC @ =gMapHeader
- bl sub_8058A00
- bl sub_80591C4
- bl mapheader_run_script_with_tag_x1
- pop {r0}
- bx r0
- .align 2, 0
-_080589FC: .4byte gMapHeader
- thumb_func_end sub_80589E8
-
- thumb_func_start sub_8058A00
-sub_8058A00: @ 8058A00
- push {r4-r6,lr}
- sub sp, 0x4
- adds r6, r0, 0
- ldr r5, [r6]
- ldr r0, _08058A58 @ =0x03ff03ff
- str r0, [sp]
- ldr r4, _08058A5C @ =gUnknown_2031DFC
- ldr r2, _08058A60 @ =0x01001400
- mov r0, sp
- adds r1, r4, 0
- bl CpuFastSet
- ldr r2, _08058A64 @ =gUnknown_3005040
- str r4, [r2, 0x8]
- ldr r1, [r5]
- adds r1, 0xF
- str r1, [r2]
- ldr r0, [r5, 0x4]
- adds r0, 0xE
- str r0, [r2, 0x4]
- muls r1, r0
- movs r0, 0xA0
- lsls r0, 6
- cmp r1, r0
- ble _08058A3E
- ldr r0, _08058A68 @ =gUnknown_8352F18 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/fieldmap.c"
- ldr r2, _08058A6C @ =gUnknown_8352F4C "VMap.Xsize * VMap.Ysize <= VIRTUAL_MAP_SIZE"
- movs r1, 0x9E
- movs r3, 0x1
- bl AGBAssert
-_08058A3E:
- ldr r0, [r5, 0xC]
- ldrh r1, [r5]
- ldrh r2, [r5, 0x4]
- bl map_copy_with_padding
- adds r0, r6, 0
- bl mapheader_copy_mapdata_of_adjacent_maps
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08058A58: .4byte 0x03ff03ff
-_08058A5C: .4byte gUnknown_2031DFC
-_08058A60: .4byte 0x01001400
-_08058A64: .4byte gUnknown_3005040
-_08058A68: .4byte gUnknown_8352F18
-_08058A6C: .4byte gUnknown_8352F4C
- thumb_func_end sub_8058A00
-
- thumb_func_start map_copy_with_padding
-map_copy_with_padding: @ 8058A70
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- lsls r2, 16
- lsrs r2, 16
- ldr r0, _08058AC4 @ =gUnknown_3005040
- ldr r4, [r0, 0x8]
- ldr r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 1
- adds r0, 0xE
- adds r4, r0
- cmp r2, 0
- beq _08058AB8
- mov r0, r8
- lsls r6, r0, 1
- adds r5, r2, 0
- movs r0, 0x1E
- adds r0, r6
- mov r9, r0
-_08058AA4:
- adds r0, r7, 0
- adds r1, r4, 0
- mov r2, r8
- bl CpuSet
- add r4, r9
- adds r7, r6
- subs r5, 0x1
- cmp r5, 0
- bne _08058AA4
-_08058AB8:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058AC4: .4byte gUnknown_3005040
- thumb_func_end map_copy_with_padding
-
- thumb_func_start mapheader_copy_mapdata_of_adjacent_maps
-mapheader_copy_mapdata_of_adjacent_maps: @ 8058AC8
- push {r4-r7,lr}
- adds r6, r0, 0
- ldr r2, _08058B00 @ =gUnknown_2036E24
- ldr r0, _08058B04 @ =gUnknown_8352EEC
- ldr r0, [r0]
- str r0, [r2]
- ldr r0, [r6, 0xC]
- cmp r0, 0
- beq _08058B4C
- ldr r1, [r0]
- ldr r5, [r0, 0x4]
- cmp r1, 0
- ble _08058B4C
- adds r4, r2, 0
- adds r7, r1, 0
-_08058AE6:
- adds r0, r5, 0
- bl mapconnection_get_mapheader
- adds r1, r0, 0
- ldr r2, [r5, 0x4]
- ldrb r0, [r5]
- cmp r0, 0x2
- beq _08058B1E
- cmp r0, 0x2
- bgt _08058B08
- cmp r0, 0x1
- beq _08058B12
- b _08058B44
- .align 2, 0
-_08058B00: .4byte gUnknown_2036E24
-_08058B04: .4byte gUnknown_8352EEC
-_08058B08:
- cmp r0, 0x3
- beq _08058B2A
- cmp r0, 0x4
- beq _08058B36
- b _08058B44
-_08058B12:
- adds r0, r6, 0
- bl fillSouthConnection
- ldrb r0, [r4]
- movs r1, 0x1
- b _08058B40
-_08058B1E:
- adds r0, r6, 0
- bl fillNorthConnection
- ldrb r0, [r4]
- movs r1, 0x2
- b _08058B40
-_08058B2A:
- adds r0, r6, 0
- bl fillWestConnection
- ldrb r0, [r4]
- movs r1, 0x4
- b _08058B40
-_08058B36:
- adds r0, r6, 0
- bl fillEastConnection
- ldrb r0, [r4]
- movs r1, 0x8
-_08058B40:
- orrs r0, r1
- strb r0, [r4]
-_08058B44:
- subs r7, 0x1
- adds r5, 0xC
- cmp r7, 0
- bne _08058AE6
-_08058B4C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end mapheader_copy_mapdata_of_adjacent_maps
-
- thumb_func_start sub_8058B54
-sub_8058B54: @ 8058B54
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r5, [sp, 0x18]
- ldr r4, [r2]
- ldr r7, [r4]
- adds r2, r7, 0
- muls r2, r5
- adds r2, r3
- lsls r2, 1
- ldr r3, [r4, 0xC]
- adds r6, r3, r2
- ldr r3, _08058BB0 @ =gUnknown_3005040
- ldr r2, [r3]
- muls r1, r2
- adds r1, r0
- lsls r1, 1
- ldr r0, [r3, 0x8]
- adds r5, r0, r1
- ldr r0, [sp, 0x20]
- cmp r0, 0
- ble _08058BA6
- adds r4, r0, 0
- ldr r3, _08058BB4 @ =0x001fffff
- mov r8, r3
-_08058B86:
- adds r0, r6, 0
- adds r1, r5, 0
- ldr r2, [sp, 0x1C]
- mov r3, r8
- ands r2, r3
- bl CpuSet
- ldr r0, _08058BB0 @ =gUnknown_3005040
- ldr r0, [r0]
- lsls r0, 1
- adds r5, r0
- lsls r0, r7, 1
- adds r6, r0
- subs r4, 0x1
- cmp r4, 0
- bne _08058B86
-_08058BA6:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058BB0: .4byte gUnknown_3005040
-_08058BB4: .4byte 0x001fffff
- thumb_func_end sub_8058B54
-
- thumb_func_start fillSouthConnection
-fillSouthConnection: @ 8058BB8
- push {r4-r7,lr}
- sub sp, 0xC
- adds r3, r0, 0
- adds r5, r1, 0
- cmp r5, 0
- beq _08058C12
- ldr r0, [r5]
- ldr r4, [r0]
- adds r2, 0x7
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- adds r7, r0, 0x7
- cmp r2, 0
- bge _08058BEC
- negs r6, r2
- adds r2, r4
- ldr r0, _08058BE8 @ =gUnknown_3005040
- ldr r3, [r0]
- cmp r2, r3
- bge _08058BE2
- adds r3, r2, 0
-_08058BE2:
- movs r2, 0
- b _08058BFC
- .align 2, 0
-_08058BE8: .4byte gUnknown_3005040
-_08058BEC:
- movs r6, 0
- adds r0, r2, r4
- ldr r1, _08058C1C @ =gUnknown_3005040
- ldr r1, [r1]
- subs r3, r1, r2
- cmp r0, r1
- bge _08058BFC
- adds r3, r4, 0
-_08058BFC:
- movs r0, 0
- str r0, [sp]
- str r3, [sp, 0x4]
- movs r0, 0x7
- str r0, [sp, 0x8]
- adds r0, r2, 0
- adds r1, r7, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl sub_8058B54
-_08058C12:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058C1C: .4byte gUnknown_3005040
- thumb_func_end fillSouthConnection
-
- thumb_func_start fillNorthConnection
-fillNorthConnection: @ 8058C20
- push {r4-r7,lr}
- sub sp, 0xC
- adds r5, r1, 0
- cmp r5, 0
- beq _08058C74
- ldr r0, [r5]
- ldr r4, [r0]
- ldr r0, [r0, 0x4]
- adds r2, 0x7
- subs r7, r0, 0x7
- cmp r2, 0
- bge _08058C50
- negs r6, r2
- adds r2, r4
- ldr r0, _08058C4C @ =gUnknown_3005040
- ldr r3, [r0]
- cmp r2, r3
- bge _08058C46
- adds r3, r2, 0
-_08058C46:
- movs r2, 0
- b _08058C60
- .align 2, 0
-_08058C4C: .4byte gUnknown_3005040
-_08058C50:
- movs r6, 0
- adds r0, r2, r4
- ldr r1, _08058C7C @ =gUnknown_3005040
- ldr r1, [r1]
- subs r3, r1, r2
- cmp r0, r1
- bge _08058C60
- adds r3, r4, 0
-_08058C60:
- str r7, [sp]
- str r3, [sp, 0x4]
- movs r0, 0x7
- str r0, [sp, 0x8]
- adds r0, r2, 0
- movs r1, 0
- adds r2, r5, 0
- adds r3, r6, 0
- bl sub_8058B54
-_08058C74:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058C7C: .4byte gUnknown_3005040
- thumb_func_end fillNorthConnection
-
- thumb_func_start fillWestConnection
-fillWestConnection: @ 8058C80
- push {r4-r7,lr}
- sub sp, 0xC
- adds r5, r1, 0
- cmp r5, 0
- beq _08058CD4
- ldr r0, [r5]
- ldr r1, [r0]
- ldr r4, [r0, 0x4]
- adds r2, 0x7
- subs r7, r1, 0x7
- cmp r2, 0
- bge _08058CB0
- negs r6, r2
- adds r1, r2, r4
- ldr r0, _08058CAC @ =gUnknown_3005040
- ldr r3, [r0, 0x4]
- cmp r1, r3
- bge _08058CA6
- adds r3, r1, 0
-_08058CA6:
- movs r2, 0
- b _08058CC0
- .align 2, 0
-_08058CAC: .4byte gUnknown_3005040
-_08058CB0:
- movs r6, 0
- adds r0, r2, r4
- ldr r1, _08058CDC @ =gUnknown_3005040
- ldr r1, [r1, 0x4]
- subs r3, r1, r2
- cmp r0, r1
- bge _08058CC0
- adds r3, r4, 0
-_08058CC0:
- str r6, [sp]
- movs r0, 0x7
- str r0, [sp, 0x4]
- str r3, [sp, 0x8]
- movs r0, 0
- adds r1, r2, 0
- adds r2, r5, 0
- adds r3, r7, 0
- bl sub_8058B54
-_08058CD4:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058CDC: .4byte gUnknown_3005040
- thumb_func_end fillWestConnection
-
- thumb_func_start fillEastConnection
-fillEastConnection: @ 8058CE0
- push {r4-r7,lr}
- sub sp, 0xC
- adds r3, r0, 0
- adds r5, r1, 0
- cmp r5, 0
- beq _08058D38
- ldr r0, [r5]
- ldr r4, [r0, 0x4]
- ldr r0, [r3]
- ldr r0, [r0]
- adds r7, r0, 0x7
- adds r2, 0x7
- cmp r2, 0
- bge _08058D14
- negs r6, r2
- adds r1, r2, r4
- ldr r0, _08058D10 @ =gUnknown_3005040
- ldr r3, [r0, 0x4]
- cmp r1, r3
- bge _08058D0A
- adds r3, r1, 0
-_08058D0A:
- movs r2, 0
- b _08058D24
- .align 2, 0
-_08058D10: .4byte gUnknown_3005040
-_08058D14:
- movs r6, 0
- adds r0, r2, r4
- ldr r1, _08058D40 @ =gUnknown_3005040
- ldr r1, [r1, 0x4]
- subs r3, r1, r2
- cmp r0, r1
- bge _08058D24
- adds r3, r4, 0
-_08058D24:
- str r6, [sp]
- movs r0, 0x8
- str r0, [sp, 0x4]
- str r3, [sp, 0x8]
- adds r0, r7, 0
- adds r1, r2, 0
- adds r2, r5, 0
- movs r3, 0
- bl sub_8058B54
-_08058D38:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08058D40: .4byte gUnknown_3005040
- thumb_func_end fillEastConnection
-
- thumb_func_start MapGridGetZCoordAt
-MapGridGetZCoordAt: @ 8058D44
- push {r4-r7,lr}
- adds r2, r0, 0
- adds r7, r1, 0
- cmp r2, 0
- blt _08058D74
- ldr r1, _08058D70 @ =gUnknown_3005040
- ldr r3, [r1]
- cmp r2, r3
- bge _08058D74
- cmp r7, 0
- blt _08058D74
- ldr r0, [r1, 0x4]
- cmp r7, r0
- bge _08058D74
- adds r0, r3, 0
- muls r0, r7
- adds r0, r2, r0
- ldr r1, [r1, 0x8]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _08058DA8
- .align 2, 0
-_08058D70: .4byte gUnknown_3005040
-_08058D74:
- ldr r0, _08058DB4 @ =gMapHeader
- ldr r6, [r0]
- subs r0, r2, 0x7
- ldrb r5, [r6, 0x18]
- lsls r1, r5, 3
- adds r0, r1
- adds r1, r5, 0
- bl __modsi3
- adds r4, r0, 0
- subs r0, r7, 0x7
- ldrb r1, [r6, 0x19]
- lsls r2, r1, 3
- adds r0, r2
- bl __modsi3
- muls r0, r5
- adds r4, r0
- ldr r0, [r6, 0x8]
- lsls r4, 1
- adds r4, r0
- ldrh r1, [r4]
- movs r2, 0xC0
- lsls r2, 4
- adds r0, r2, 0
- orrs r1, r0
-_08058DA8:
- ldr r0, _08058DB8 @ =0x000003ff
- cmp r1, r0
- beq _08058DBC
- lsrs r0, r1, 12
- b _08058DBE
- .align 2, 0
-_08058DB4: .4byte gMapHeader
-_08058DB8: .4byte 0x000003ff
-_08058DBC:
- movs r0, 0
-_08058DBE:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end MapGridGetZCoordAt
-
- thumb_func_start sub_8058DC4
-sub_8058DC4: @ 8058DC4
- push {r4-r7,lr}
- adds r2, r0, 0
- adds r7, r1, 0
- cmp r2, 0
- blt _08058DF4
- ldr r1, _08058DF0 @ =gUnknown_3005040
- ldr r3, [r1]
- cmp r2, r3
- bge _08058DF4
- cmp r7, 0
- blt _08058DF4
- ldr r0, [r1, 0x4]
- cmp r7, r0
- bge _08058DF4
- adds r0, r3, 0
- muls r0, r7
- adds r0, r2, r0
- ldr r1, [r1, 0x8]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _08058E28
- .align 2, 0
-_08058DF0: .4byte gUnknown_3005040
-_08058DF4:
- ldr r0, _08058E38 @ =gMapHeader
- ldr r6, [r0]
- subs r0, r2, 0x7
- ldrb r5, [r6, 0x18]
- lsls r1, r5, 3
- adds r0, r1
- adds r1, r5, 0
- bl __modsi3
- adds r4, r0, 0
- subs r0, r7, 0x7
- ldrb r1, [r6, 0x19]
- lsls r2, r1, 3
- adds r0, r2
- bl __modsi3
- muls r0, r5
- adds r4, r0
- ldr r0, [r6, 0x8]
- lsls r4, 1
- adds r4, r0
- ldrh r1, [r4]
- movs r2, 0xC0
- lsls r2, 4
- adds r0, r2, 0
- orrs r1, r0
-_08058E28:
- ldr r0, _08058E3C @ =0x000003ff
- cmp r1, r0
- beq _08058E40
- movs r0, 0xC0
- lsls r0, 4
- ands r1, r0
- lsrs r0, r1, 10
- b _08058E42
- .align 2, 0
-_08058E38: .4byte gMapHeader
-_08058E3C: .4byte 0x000003ff
-_08058E40:
- movs r0, 0x1
-_08058E42:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8058DC4
-
- thumb_func_start sub_8058E48
-sub_8058E48: @ 8058E48
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r8, r0
- mov r9, r1
- cmp r0, 0
- blt _08058E80
- ldr r1, _08058E7C @ =gUnknown_3005040
- ldr r2, [r1]
- cmp r8, r2
- bge _08058E80
- mov r0, r9
- cmp r0, 0
- blt _08058E80
- ldr r0, [r1, 0x4]
- cmp r9, r0
- bge _08058E80
- mov r0, r9
- muls r0, r2
- add r0, r8
- ldr r1, [r1, 0x8]
- lsls r0, 1
- adds r0, r1
- ldrh r7, [r0]
- b _08058EBA
- .align 2, 0
-_08058E7C: .4byte gUnknown_3005040
-_08058E80:
- ldr r0, _08058EC8 @ =gMapHeader
- ldr r6, [r0]
- mov r0, r8
- subs r0, 0x7
- ldrb r5, [r6, 0x18]
- lsls r1, r5, 3
- adds r0, r1
- adds r1, r5, 0
- bl __modsi3
- adds r4, r0, 0
- mov r0, r9
- subs r0, 0x7
- ldrb r1, [r6, 0x19]
- lsls r2, r1, 3
- adds r0, r2
- bl __modsi3
- muls r0, r5
- adds r4, r0
- ldr r0, [r6, 0x8]
- lsls r4, 1
- adds r4, r0
- ldrh r1, [r4]
- movs r2, 0xC0
- lsls r2, 4
- adds r0, r2, 0
- adds r7, r0, 0
- orrs r7, r1
-_08058EBA:
- ldr r0, _08058ECC @ =0x000003ff
- cmp r7, r0
- beq _08058ED0
- ands r7, r0
- adds r0, r7, 0
- b _08058F0A
- .align 2, 0
-_08058EC8: .4byte gMapHeader
-_08058ECC: .4byte 0x000003ff
-_08058ED0:
- ldr r0, _08058F18 @ =gMapHeader
- ldr r6, [r0]
- mov r0, r8
- subs r0, 0x7
- ldrb r5, [r6, 0x18]
- lsls r1, r5, 3
- adds r0, r1
- adds r1, r5, 0
- bl __modsi3
- adds r4, r0, 0
- mov r0, r9
- subs r0, 0x7
- ldrb r1, [r6, 0x19]
- lsls r2, r1, 3
- adds r0, r2
- bl __modsi3
- muls r0, r5
- adds r4, r0
- ldr r0, [r6, 0x8]
- lsls r4, 1
- adds r4, r0
- ldrh r0, [r4]
- movs r2, 0xC0
- lsls r2, 4
- adds r1, r2, 0
- orrs r0, r1
- ands r0, r7
-_08058F0A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08058F18: .4byte gMapHeader
- thumb_func_end sub_8058E48
-
- thumb_func_start sub_8058F1C
-sub_8058F1C: @ 8058F1C
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- lsrs r3, r1, 24
- cmp r3, 0x7
- bhi _08058F3A
- ldr r1, _08058F40 @ =gUnknown_8352EF0
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- ands r2, r0
- ldr r0, _08058F44 @ =gUnknown_8352F10
- adds r0, r3, r0
- ldrb r0, [r0]
- lsrs r2, r0
-_08058F3A:
- adds r0, r2, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08058F40: .4byte gUnknown_8352EF0
-_08058F44: .4byte gUnknown_8352F10
- thumb_func_end sub_8058F1C
-
- thumb_func_start sub_8058F48
-sub_8058F48: @ 8058F48
- push {r4,lr}
- adds r4, r2, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl sub_8058E48
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _08058F74 @ =gMapHeader
- ldr r0, [r0]
- adds r2, r4, 0
- bl sub_8059080
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08058F74: .4byte gMapHeader
- thumb_func_end sub_8058F48
-
- thumb_func_start MapGridGetMetatileBehaviorAt
-MapGridGetMetatileBehaviorAt: @ 8058F78
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- movs r2, 0
- bl sub_8058F48
- pop {r1}
- bx r1
- thumb_func_end MapGridGetMetatileBehaviorAt
-
- thumb_func_start sub_8058F8C
-sub_8058F8C: @ 8058F8C
- push {lr}
- lsls r0, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- movs r2, 0x6
- bl sub_8058F48
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_8058F8C
-
- thumb_func_start MapGridSetMetatileIdAt
-MapGridSetMetatileIdAt: @ 8058FA4
- push {r4,r5,lr}
- adds r3, r0, 0
- lsls r2, 16
- lsrs r5, r2, 16
- cmp r3, 0
- blt _08058FDC
- ldr r2, _08058FE4 @ =gUnknown_3005040
- ldr r4, [r2]
- cmp r3, r4
- bge _08058FDC
- cmp r1, 0
- blt _08058FDC
- ldr r0, [r2, 0x4]
- cmp r1, r0
- bge _08058FDC
- muls r1, r4
- adds r1, r3, r1
- ldr r0, [r2, 0x8]
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- movs r2, 0xF0
- lsls r2, 8
- ands r2, r0
- ldr r0, _08058FE8 @ =0x00000fff
- ands r0, r5
- orrs r2, r0
- strh r2, [r1]
-_08058FDC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08058FE4: .4byte gUnknown_3005040
-_08058FE8: .4byte 0x00000fff
- thumb_func_end MapGridSetMetatileIdAt
-
- thumb_func_start MapGridSetMetatileEntryAt
-MapGridSetMetatileEntryAt: @ 8058FEC
- push {r4,r5,lr}
- adds r3, r0, 0
- lsls r2, 16
- lsrs r5, r2, 16
- cmp r3, 0
- blt _08059018
- ldr r2, _08059020 @ =gUnknown_3005040
- ldr r4, [r2]
- cmp r3, r4
- bge _08059018
- cmp r1, 0
- blt _08059018
- ldr r0, [r2, 0x4]
- cmp r1, r0
- bge _08059018
- adds r0, r4, 0
- muls r0, r1
- adds r0, r3, r0
- ldr r1, [r2, 0x8]
- lsls r0, 1
- adds r0, r1
- strh r5, [r0]
-_08059018:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08059020: .4byte gUnknown_3005040
- thumb_func_end MapGridSetMetatileEntryAt
-
- thumb_func_start sub_8059024
-sub_8059024: @ 8059024
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r3, r1, 0
- adds r5, r2, 0
- cmp r4, 0
- blt _08059076
- ldr r2, _08059060 @ =gUnknown_3005040
- ldr r1, [r2]
- cmp r4, r1
- bge _08059076
- cmp r3, 0
- blt _08059076
- ldr r0, [r2, 0x4]
- cmp r3, r0
- bge _08059076
- cmp r5, 0
- beq _08059064
- adds r0, r1, 0
- muls r0, r3
- adds r0, r4, r0
- ldr r1, [r2, 0x8]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- movs r3, 0xC0
- lsls r3, 4
- adds r2, r3, 0
- orrs r1, r2
- strh r1, [r0]
- b _08059076
- .align 2, 0
-_08059060: .4byte gUnknown_3005040
-_08059064:
- muls r1, r3
- adds r1, r4, r1
- ldr r0, [r2, 0x8]
- lsls r1, 1
- adds r1, r0
- ldrh r2, [r1]
- ldr r0, _0805907C @ =0x0000f3ff
- ands r0, r2
- strh r0, [r1]
-_08059076:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805907C: .4byte 0x0000f3ff
- thumb_func_end sub_8059024
-
- thumb_func_start sub_8059080
-sub_8059080: @ 8059080
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r3, r1, 16
- adds r5, r3, 0
- lsls r2, 24
- lsrs r2, 24
- adds r6, r2, 0
- ldr r0, _080590A4 @ =0x0000027f
- cmp r3, r0
- bhi _080590A8
- ldr r0, [r4, 0x10]
- ldr r1, [r0, 0x14]
- lsls r0, r3, 2
- adds r0, r1
- ldr r0, [r0]
- adds r1, r2, 0
- b _080590C8
- .align 2, 0
-_080590A4: .4byte 0x0000027f
-_080590A8:
- ldr r0, _080590B4 @ =0x000003ff
- cmp r3, r0
- bls _080590B8
- movs r0, 0xFF
- b _080590CC
- .align 2, 0
-_080590B4: .4byte 0x000003ff
-_080590B8:
- ldr r0, [r4, 0x14]
- ldr r1, [r0, 0x14]
- lsls r0, r5, 2
- adds r0, r1
- ldr r1, _080590D4 @ =0xfffff600
- adds r0, r1
- ldr r0, [r0]
- adds r1, r6, 0
-_080590C8:
- bl sub_8058F1C
-_080590CC:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080590D4: .4byte 0xfffff600
- thumb_func_end sub_8059080
-
- thumb_func_start sub_80590D8
-sub_80590D8: @ 80590D8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _08059144 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, _08059148 @ =0x00000898
- adds r4, r0, r1
- ldr r0, _0805914C @ =gUnknown_3005040
- ldr r0, [r0]
- mov r8, r0
- ldr r0, _08059150 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r2, 0
- ldrsh r6, [r0, r2]
- movs r1, 0x2
- ldrsh r0, [r0, r1]
- adds r1, r0, 0
- adds r1, 0xE
- cmp r0, r1
- bge _08059138
- mov r12, r1
- ldr r2, _08059154 @ =gUnknown_2031DFC
- mov r9, r2
- lsls r7, r6, 1
-_0805910A:
- adds r1, r6, 0
- adds r3, r1, 0
- adds r3, 0xF
- adds r5, r0, 0x1
- cmp r1, r3
- bge _08059132
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- lsls r0, 1
- add r0, r9
- adds r2, r7, r0
- subs r1, r3, r1
-_08059124:
- ldrh r0, [r2]
- strh r0, [r4]
- adds r4, 0x2
- adds r2, 0x2
- subs r1, 0x1
- cmp r1, 0
- bne _08059124
-_08059132:
- adds r0, r5, 0
- cmp r0, r12
- blt _0805910A
-_08059138:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08059144: .4byte gSaveBlock2Ptr
-_08059148: .4byte 0x00000898
-_0805914C: .4byte gUnknown_3005040
-_08059150: .4byte gSaveBlock1Ptr
-_08059154: .4byte gUnknown_2031DFC
- thumb_func_end sub_80590D8
-
- thumb_func_start sub_8059158
-sub_8059158: @ 8059158
- push {r4,lr}
- movs r2, 0
- movs r1, 0
- ldr r0, _08059184 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r4, _08059188 @ =0x00000898
- adds r3, r0, r4
- ldr r4, _0805918C @ =0x000001ff
-_08059168:
- lsls r0, r1, 1
- adds r0, r3, r0
- ldrh r0, [r0]
- orrs r2, r0
- adds r0, r1, 0x1
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, r4
- bls _08059168
- cmp r2, 0
- beq _08059190
- movs r0, 0
- b _08059192
- .align 2, 0
-_08059184: .4byte gSaveBlock2Ptr
-_08059188: .4byte 0x00000898
-_0805918C: .4byte 0x000001ff
-_08059190:
- movs r0, 0x1
-_08059192:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8059158
-
- thumb_func_start sub_8059198
-sub_8059198: @ 8059198
- push {lr}
- sub sp, 0x4
- mov r1, sp
- movs r0, 0
- strh r0, [r1]
- ldr r0, _080591B8 @ =gSaveBlock2Ptr
- ldr r1, [r0]
- ldr r0, _080591BC @ =0x00000898
- adds r1, r0
- ldr r2, _080591C0 @ =0x01000100
- mov r0, sp
- bl CpuSet
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080591B8: .4byte gSaveBlock2Ptr
-_080591BC: .4byte 0x00000898
-_080591C0: .4byte 0x01000100
- thumb_func_end sub_8059198
-
- thumb_func_start sub_80591C4
-sub_80591C4: @ 80591C4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _0805923C @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r1, _08059240 @ =0x00000898
- adds r4, r0, r1
- bl sub_8059158
- cmp r0, 0
- bne _08059230
- ldr r0, _08059244 @ =gUnknown_3005040
- ldr r0, [r0]
- mov r8, r0
- ldr r0, _08059248 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r2, 0
- ldrsh r6, [r0, r2]
- movs r1, 0x2
- ldrsh r0, [r0, r1]
- adds r1, r0, 0
- adds r1, 0xE
- cmp r0, r1
- bge _0805922C
- mov r12, r1
- ldr r2, _0805924C @ =gUnknown_2031DFC
- mov r9, r2
- lsls r7, r6, 1
-_080591FE:
- adds r1, r6, 0
- adds r3, r1, 0
- adds r3, 0xF
- adds r5, r0, 0x1
- cmp r1, r3
- bge _08059226
- mov r2, r8
- muls r2, r0
- adds r0, r2, 0
- lsls r0, 1
- add r0, r9
- adds r2, r7, r0
- subs r1, r3, r1
-_08059218:
- ldrh r0, [r4]
- strh r0, [r2]
- adds r4, 0x2
- adds r2, 0x2
- subs r1, 0x1
- cmp r1, 0
- bne _08059218
-_08059226:
- adds r0, r5, 0
- cmp r0, r12
- blt _080591FE
-_0805922C:
- bl sub_8059198
-_08059230:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805923C: .4byte gSaveBlock2Ptr
-_08059240: .4byte 0x00000898
-_08059244: .4byte gUnknown_3005040
-_08059248: .4byte gSaveBlock1Ptr
-_0805924C: .4byte gUnknown_2031DFC
- thumb_func_end sub_80591C4
-
- thumb_func_start sub_8059250
-sub_8059250: @ 8059250
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r1, r0, 24
- adds r2, r1, 0
- ldr r0, _0805929C @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r3, _080592A0 @ =0x00000898
- adds r3, r0, r3
- str r3, [sp, 0x4]
- ldr r0, _080592A4 @ =gUnknown_3005040
- ldr r0, [r0]
- str r0, [sp]
- movs r4, 0
- mov r9, r4
- mov r8, r4
- ldr r0, _080592A8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r3, 0
- ldrsh r6, [r0, r3]
- str r6, [sp, 0x8]
- movs r4, 0x2
- ldrsh r5, [r0, r4]
- movs r7, 0xF
- movs r6, 0xE
- mov r12, r6
- cmp r1, 0x2
- beq _080592B6
- cmp r1, 0x2
- bgt _080592AC
- cmp r1, 0x1
- beq _080592BE
- b _080592D6
- .align 2, 0
-_0805929C: .4byte gSaveBlock2Ptr
-_080592A0: .4byte 0x00000898
-_080592A4: .4byte gUnknown_3005040
-_080592A8: .4byte gSaveBlock1Ptr
-_080592AC:
- cmp r2, 0x3
- beq _080592C8
- cmp r2, 0x4
- beq _080592D0
- b _080592D6
-_080592B6:
- adds r5, 0x1
- movs r0, 0xD
- mov r12, r0
- b _080592D6
-_080592BE:
- movs r1, 0x1
- mov r8, r1
- movs r3, 0xD
- mov r12, r3
- b _080592D6
-_080592C8:
- ldr r4, [sp, 0x8]
- adds r4, 0x1
- str r4, [sp, 0x8]
- b _080592D4
-_080592D0:
- movs r6, 0x1
- mov r9, r6
-_080592D4:
- movs r7, 0xE
-_080592D6:
- movs r1, 0
- cmp r1, r12
- bge _0805931A
- ldr r0, _08059330 @ =gUnknown_2031DFC
- mov r10, r0
-_080592E0:
- adds r4, r1, 0x1
- cmp r7, 0
- beq _08059314
- adds r0, r1, r5
- ldr r3, [sp]
- adds r2, r3, 0
- muls r2, r0
- add r1, r8
- lsls r0, r1, 4
- subs r0, r1
- add r0, r9
- ldr r6, [sp, 0x8]
- adds r2, r6, r2
- adds r3, r7, 0
- lsls r2, 1
- add r2, r10
- lsls r0, 1
- ldr r6, [sp, 0x4]
- adds r1, r0, r6
-_08059306:
- ldrh r0, [r1]
- strh r0, [r2]
- adds r1, 0x2
- adds r2, 0x2
- subs r3, 0x1
- cmp r3, 0
- bne _08059306
-_08059314:
- adds r1, r4, 0
- cmp r1, r12
- blt _080592E0
-_0805931A:
- bl sub_8059198
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08059330: .4byte gUnknown_2031DFC
- thumb_func_end sub_8059250
-
- thumb_func_start sub_8059334
-sub_8059334: @ 8059334
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- mov r8, r1
- cmp r7, 0
- blt _08059374
- ldr r1, _0805936C @ =gUnknown_3005040
- ldr r2, [r1]
- cmp r7, r2
- bge _08059374
- mov r0, r8
- cmp r0, 0
- blt _08059374
- ldr r0, [r1, 0x4]
- cmp r8, r0
- bge _08059374
- mov r0, r8
- muls r0, r2
- adds r0, r7, r0
- ldr r1, [r1, 0x8]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- ldr r0, _08059370 @ =0x000003ff
- cmp r1, r0
- beq _08059422
- b _080593B0
- .align 2, 0
-_0805936C: .4byte gUnknown_3005040
-_08059370: .4byte 0x000003ff
-_08059374:
- ldr r0, _080593CC @ =gMapHeader
- ldr r6, [r0]
- subs r0, r7, 0x7
- ldrb r5, [r6, 0x18]
- lsls r1, r5, 3
- adds r0, r1
- adds r1, r5, 0
- bl __modsi3
- adds r4, r0, 0
- mov r0, r8
- subs r0, 0x7
- ldrb r1, [r6, 0x19]
- lsls r2, r1, 3
- adds r0, r2
- bl __modsi3
- muls r0, r5
- adds r4, r0
- ldr r0, [r6, 0x8]
- lsls r4, 1
- adds r4, r0
- ldrh r1, [r4]
- movs r2, 0xC0
- lsls r2, 4
- adds r0, r2, 0
- orrs r0, r1
- ldr r1, _080593D0 @ =0x000003ff
- cmp r0, r1
- beq _08059422
-_080593B0:
- ldr r1, _080593D4 @ =gUnknown_3005040
- ldr r0, [r1]
- subs r0, 0x8
- cmp r7, r0
- blt _080593DC
- ldr r0, _080593D8 @ =gUnknown_2036E24
- ldrb r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08059422
- movs r0, 0x4
- b _08059432
- .align 2, 0
-_080593CC: .4byte gMapHeader
-_080593D0: .4byte 0x000003ff
-_080593D4: .4byte gUnknown_3005040
-_080593D8: .4byte gUnknown_2036E24
-_080593DC:
- cmp r7, 0x6
- bgt _080593F4
- ldr r0, _080593F0 @ =gUnknown_2036E24
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08059422
- movs r0, 0x3
- b _08059432
- .align 2, 0
-_080593F0: .4byte gUnknown_2036E24
-_080593F4:
- ldr r0, [r1, 0x4]
- subs r0, 0x7
- cmp r8, r0
- blt _08059410
- ldr r0, _0805940C @ =gUnknown_2036E24
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08059422
- movs r0, 0x1
- b _08059432
- .align 2, 0
-_0805940C: .4byte gUnknown_2036E24
-_08059410:
- mov r0, r8
- cmp r0, 0x6
- bgt _08059430
- ldr r0, _08059428 @ =gUnknown_2036E24
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0805942C
-_08059422:
- movs r0, 0x1
- negs r0, r0
- b _08059432
- .align 2, 0
-_08059428: .4byte gUnknown_2036E24
-_0805942C:
- movs r0, 0x2
- b _08059432
-_08059430:
- movs r0, 0
-_08059432:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8059334
-
- thumb_func_start GetPostCameraMoveMapBorderId
-GetPostCameraMoveMapBorderId: @ 805943C
- push {r4,lr}
- adds r3, r1, 0
- ldr r1, _08059460 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- movs r4, 0
- ldrsh r2, [r1, r4]
- adds r0, 0x7
- adds r2, r0
- movs r0, 0x2
- ldrsh r1, [r1, r0]
- adds r3, 0x7
- adds r1, r3
- adds r0, r2, 0
- bl sub_8059334
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08059460: .4byte gSaveBlock1Ptr
- thumb_func_end GetPostCameraMoveMapBorderId
-
- thumb_func_start CanCameraMoveInDirection
-CanCameraMoveInDirection: @ 8059464
- push {r4,r5,lr}
- ldr r1, _0805949C @ =gSaveBlock1Ptr
- ldr r4, [r1]
- movs r1, 0
- ldrsh r3, [r4, r1]
- ldr r2, _080594A0 @ =gUnknown_826D2D8
- lsls r0, 3
- adds r1, r0, r2
- ldr r1, [r1]
- adds r1, 0x7
- adds r3, r1
- movs r5, 0x2
- ldrsh r1, [r4, r5]
- adds r2, 0x4
- adds r0, r2
- ldr r0, [r0]
- adds r0, 0x7
- adds r1, r0
- adds r0, r3, 0
- bl sub_8059334
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _080594A4
- movs r0, 0x1
- b _080594A6
- .align 2, 0
-_0805949C: .4byte gSaveBlock1Ptr
-_080594A0: .4byte gUnknown_826D2D8
-_080594A4:
- movs r0, 0
-_080594A6:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end CanCameraMoveInDirection
-
- thumb_func_start sub_80594AC
-sub_80594AC: @ 80594AC
- push {r4-r7,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- adds r7, r3, 0
- bl mapconnection_get_mapheader
- adds r3, r0, 0
- cmp r4, 0x2
- beq _08059514
- cmp r4, 0x2
- bgt _080594CA
- cmp r4, 0x1
- beq _08059500
- b _08059526
-_080594CA:
- cmp r4, 0x3
- beq _080594E8
- cmp r4, 0x4
- bne _08059526
- ldr r0, _080594E4 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- negs r0, r6
- strh r0, [r1]
- ldr r2, [r5, 0x4]
- ldrh r0, [r1, 0x2]
- subs r0, r2
- b _08059524
- .align 2, 0
-_080594E4: .4byte gSaveBlock1Ptr
-_080594E8:
- ldr r0, _080594FC @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, [r3]
- ldr r0, [r0]
- strh r0, [r1]
- ldr r2, [r5, 0x4]
- ldrh r0, [r1, 0x2]
- subs r0, r2
- b _08059524
- .align 2, 0
-_080594FC: .4byte gSaveBlock1Ptr
-_08059500:
- ldr r0, _08059510 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r2, [r5, 0x4]
- ldrh r0, [r1]
- subs r0, r2
- strh r0, [r1]
- negs r0, r7
- b _08059524
- .align 2, 0
-_08059510: .4byte gSaveBlock1Ptr
-_08059514:
- ldr r0, _0805952C @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r2, [r5, 0x4]
- ldrh r0, [r1]
- subs r0, r2
- strh r0, [r1]
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
-_08059524:
- strh r0, [r1, 0x2]
-_08059526:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0805952C: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80594AC
-
- thumb_func_start CameraMove
-CameraMove: @ 8059530
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r10, r0
- mov r9, r1
- ldr r1, _08059570 @ =gUnknown_2036E18
- ldrb r0, [r1]
- movs r1, 0x2
- negs r1, r1
- ands r1, r0
- ldr r2, _08059570 @ =gUnknown_2036E18
- strb r1, [r2]
- mov r0, r10
- mov r1, r9
- bl GetPostCameraMoveMapBorderId
- adds r7, r0, 0
- adds r0, r7, 0x1
- cmp r0, 0x1
- bhi _08059578
- ldr r0, _08059574 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldrh r0, [r1]
- add r0, r10
- strh r0, [r1]
- ldrh r0, [r1, 0x2]
- add r0, r9
- strh r0, [r1, 0x2]
- b _080595E2
- .align 2, 0
-_08059570: .4byte gUnknown_2036E18
-_08059574: .4byte gSaveBlock1Ptr
-_08059578:
- bl sub_80590D8
- ldr r1, _080595F8 @ =gSaveBlock1Ptr
- ldr r0, [r1]
- movs r2, 0
- ldrsh r5, [r0, r2]
- movs r1, 0x2
- ldrsh r6, [r0, r1]
- lsls r2, r7, 24
- lsrs r2, 24
- mov r8, r2
- mov r0, r8
- adds r1, r5, 0
- adds r2, r6, 0
- bl sub_8059600
- adds r4, r0, 0
- adds r1, r7, 0
- mov r2, r10
- mov r3, r9
- bl sub_80594AC
- ldrb r0, [r4, 0x8]
- ldrb r1, [r4, 0x9]
- bl sub_8055864
- ldr r1, _080595FC @ =gUnknown_2036E18
- ldrb r0, [r1]
- movs r1, 0x1
- orrs r0, r1
- ldr r2, _080595FC @ =gUnknown_2036E18
- strb r0, [r2]
- ldr r0, _080595F8 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r2, 0
- ldrsh r0, [r1, r2]
- subs r5, r0
- ldr r0, _080595FC @ =gUnknown_2036E18
- str r5, [r0, 0x4]
- movs r2, 0x2
- ldrsh r0, [r1, r2]
- subs r6, r0
- ldr r0, _080595FC @ =gUnknown_2036E18
- str r6, [r0, 0x8]
- ldrh r0, [r1]
- add r0, r10
- strh r0, [r1]
- ldrh r0, [r1, 0x2]
- add r0, r9
- strh r0, [r1, 0x2]
- mov r0, r8
- bl sub_8059250
-_080595E2:
- ldr r0, _080595FC @ =gUnknown_2036E18
- ldrb r0, [r0]
- lsls r0, 31
- lsrs r0, 31
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080595F8: .4byte gSaveBlock1Ptr
-_080595FC: .4byte gUnknown_2036E18
- thumb_func_end CameraMove
-
- thumb_func_start sub_8059600
-sub_8059600: @ 8059600
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r1
- mov r8, r2
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _0805963C @ =gMapHeader
- ldr r0, [r0, 0xC]
- ldr r7, [r0]
- ldr r4, [r0, 0x4]
- movs r5, 0
- cmp r5, r7
- bge _08059648
-_0805961E:
- ldrb r0, [r4]
- cmp r0, r6
- bne _08059640
- adds r0, r6, 0
- mov r1, r9
- mov r2, r8
- adds r3, r4, 0
- bl sub_8059658
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08059640
- adds r0, r4, 0
- b _0805964A
- .align 2, 0
-_0805963C: .4byte gMapHeader
-_08059640:
- adds r5, 0x1
- adds r4, 0xC
- cmp r5, r7
- blt _0805961E
-_08059648:
- movs r0, 0
-_0805964A:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8059600
-
- thumb_func_start sub_8059658
-sub_8059658: @ 8059658
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r1, 0
- mov r8, r2
- adds r5, r3, 0
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- adds r0, r5, 0
- bl mapconnection_get_mapheader
- adds r2, r0, 0
- cmp r4, 0x1
- blt _080596B0
- cmp r4, 0x2
- bgt _08059690
- ldr r0, _0805968C @ =gMapHeader
- ldr r0, [r0]
- ldr r1, [r0]
- ldr r0, [r2]
- ldr r2, [r0]
- ldr r3, [r5, 0x4]
- adds r0, r7, 0
- b _080596A2
- .align 2, 0
-_0805968C: .4byte gMapHeader
-_08059690:
- cmp r6, 0x4
- bgt _080596B0
- ldr r0, _080596AC @ =gMapHeader
- ldr r0, [r0]
- ldr r1, [r0, 0x4]
- ldr r0, [r2]
- ldr r2, [r0, 0x4]
- ldr r3, [r5, 0x4]
- mov r0, r8
-_080596A2:
- bl sub_80596BC
- lsls r0, 24
- lsrs r0, 24
- b _080596B2
- .align 2, 0
-_080596AC: .4byte gMapHeader
-_080596B0:
- movs r0, 0
-_080596B2:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8059658
-
- thumb_func_start sub_80596BC
-sub_80596BC: @ 80596BC
- push {r4,lr}
- adds r4, r0, 0
- adds r0, r2, 0
- adds r2, r3, 0
- cmp r3, 0
- bge _080596CA
- movs r3, 0
-_080596CA:
- adds r2, r0, r2
- cmp r2, r1
- bge _080596D2
- adds r1, r2, 0
-_080596D2:
- cmp r3, r4
- bgt _080596DE
- cmp r4, r1
- bgt _080596DE
- movs r0, 0x1
- b _080596E0
-_080596DE:
- movs r0, 0
-_080596E0:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80596BC
-
- thumb_func_start sub_80596E8
-sub_80596E8: @ 80596E8
- push {lr}
- cmp r0, 0
- blt _080596F6
- cmp r0, r1
- bge _080596F6
- movs r0, 0x1
- b _080596F8
-_080596F6:
- movs r0, 0
-_080596F8:
- pop {r1}
- bx r1
- thumb_func_end sub_80596E8
-
- thumb_func_start sub_80596FC
-sub_80596FC: @ 80596FC
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- bl mapconnection_get_mapheader
- adds r1, r0, 0
- ldrb r0, [r4]
- cmp r0, 0x1
- blt _08059734
- cmp r0, 0x2
- bgt _08059722
- ldr r0, [r4, 0x4]
- subs r0, r5, r0
- ldr r1, [r1]
- ldr r1, [r1]
- bl sub_80596E8
- b _08059736
-_08059722:
- cmp r0, 0x4
- bgt _08059734
- ldr r0, [r4, 0x4]
- subs r0, r6, r0
- ldr r1, [r1]
- ldr r1, [r1, 0x4]
- bl sub_80596E8
- b _08059736
-_08059734:
- movs r0, 0
-_08059736:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80596FC
-
- thumb_func_start sub_805973C
-sub_805973C: @ 805973C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _0805975C @ =gMapHeader
- ldr r0, [r2, 0xC]
- cmp r0, 0
- bne _08059764
- b _080597DA
- .align 2, 0
-_0805975C: .4byte gMapHeader
-_08059760:
- adds r0, r4, 0
- b _080597DC
-_08059764:
- ldr r7, [r0]
- ldr r4, [r0, 0x4]
- movs r6, 0
- cmp r6, r7
- bge _080597DA
- lsls r0, r1, 16
- asrs r5, r0, 16
- mov r9, r2
- mov r1, r8
- lsls r0, r1, 16
- asrs r0, 16
- mov r10, r0
-_0805977C:
- ldrb r1, [r4]
- adds r3, r1, 0
- subs r0, r1, 0x5
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _080597D2
- cmp r1, 0x2
- bne _08059792
- cmp r5, 0x6
- bgt _080597D2
-_08059792:
- cmp r1, 0x1
- bne _080597A2
- mov r2, r9
- ldr r0, [r2]
- ldr r0, [r0, 0x4]
- adds r0, 0x7
- cmp r5, r0
- blt _080597D2
-_080597A2:
- mov r0, r8
- lsls r2, r0, 16
- cmp r1, 0x3
- bne _080597B0
- mov r1, r10
- cmp r1, 0x6
- bgt _080597D2
-_080597B0:
- cmp r3, 0x4
- bne _080597C2
- asrs r1, r2, 16
- mov r3, r9
- ldr r0, [r3]
- ldr r0, [r0]
- adds r0, 0x7
- cmp r1, r0
- blt _080597D2
-_080597C2:
- asrs r1, r2, 16
- subs r1, 0x7
- adds r0, r4, 0
- subs r2, r5, 0x7
- bl sub_80596FC
- cmp r0, 0x1
- beq _08059760
-_080597D2:
- adds r6, 0x1
- adds r4, 0xC
- cmp r6, r7
- blt _0805977C
-_080597DA:
- movs r0, 0
-_080597DC:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_805973C
-
- thumb_func_start sub_80597EC
-sub_80597EC: @ 80597EC
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _08059804 @ =gSaveBlock1Ptr
- ldr r2, [r2]
- subs r0, 0x7
- strh r0, [r2]
- subs r1, 0x7
- strh r1, [r2, 0x2]
- bx lr
- .align 2, 0
-_08059804: .4byte gSaveBlock1Ptr
- thumb_func_end sub_80597EC
-
- thumb_func_start sav1_camera_get_focus_coords
-sav1_camera_get_focus_coords: @ 8059808
- ldr r2, _0805981C @ =gSaveBlock1Ptr
- ldr r3, [r2]
- ldrh r2, [r3]
- adds r2, 0x7
- strh r2, [r0]
- ldrh r0, [r3, 0x2]
- adds r0, 0x7
- strh r0, [r1]
- bx lr
- .align 2, 0
-_0805981C: .4byte gSaveBlock1Ptr
- thumb_func_end sav1_camera_get_focus_coords
-
- thumb_func_start SetCameraCoords
-SetCameraCoords: @ 8059820
- ldr r2, _0805982C @ =gSaveBlock1Ptr
- ldr r2, [r2]
- strh r0, [r2]
- strh r1, [r2, 0x2]
- bx lr
- .align 2, 0
-_0805982C: .4byte gSaveBlock1Ptr
- thumb_func_end SetCameraCoords
-
- thumb_func_start GetCameraCoords
-GetCameraCoords: @ 8059830
- ldr r2, _08059840 @ =gSaveBlock1Ptr
- ldr r3, [r2]
- ldrh r2, [r3]
- strh r2, [r0]
- ldrh r0, [r3, 0x2]
- strh r0, [r1]
- bx lr
- .align 2, 0
-_08059840: .4byte gSaveBlock1Ptr
- thumb_func_end GetCameraCoords
-
- thumb_func_start copy_tileset_patterns_to_vram
-copy_tileset_patterns_to_vram: @ 8059844
- push {r4-r7,lr}
- sub sp, 0x4
- adds r3, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r6, r4, 0
- lsls r2, 16
- lsrs r5, r2, 16
- adds r7, r5, 0
- cmp r3, 0
- beq _08059880
- ldrb r0, [r3]
- cmp r0, 0
- bne _08059870
- ldr r1, [r3, 0x4]
- lsls r2, r4, 21
- lsrs r2, 16
- movs r0, 0x2
- adds r3, r5, 0
- bl LoadBgTiles
- b _08059880
-_08059870:
- ldr r1, [r3, 0x4]
- lsls r2, r6, 5
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- adds r3, r7, 0
- bl sub_80F68F0
-_08059880:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end copy_tileset_patterns_to_vram
-
- thumb_func_start copy_tileset_patterns_to_vram2
-copy_tileset_patterns_to_vram2: @ 8059888
- push {r4-r7,lr}
- sub sp, 0x4
- adds r3, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r6, r4, 0
- lsls r2, 16
- lsrs r5, r2, 16
- adds r7, r5, 0
- cmp r3, 0
- beq _080598C4
- ldrb r0, [r3]
- cmp r0, 0
- bne _080598B4
- ldr r1, [r3, 0x4]
- lsls r2, r4, 21
- lsrs r2, 16
- movs r0, 0x2
- adds r3, r5, 0
- bl LoadBgTiles
- b _080598C4
-_080598B4:
- ldr r1, [r3, 0x4]
- lsls r2, r6, 5
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- adds r3, r7, 0
- bl sub_80F69E8
-_080598C4:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end copy_tileset_patterns_to_vram2
-
- thumb_func_start sub_80598CC
-sub_80598CC: @ 80598CC
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r4, r0, 16
- lsls r1, 16
- lsrs r5, r1, 16
- ldr r0, _080598EC @ =gUnknown_2036E28
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080598F0
- cmp r0, 0x1
- ble _0805993A
- cmp r0, 0x2
- beq _08059904
- cmp r0, 0x3
- beq _08059918
- b _0805993A
- .align 2, 0
-_080598EC: .4byte gUnknown_2036E28
-_080598F0:
- lsls r4, 1
- ldr r0, _08059900 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- adds r1, r5, 0
- bl TintPalette_GrayScale
- b _0805992C
- .align 2, 0
-_08059900: .4byte gPlttBufferUnfaded
-_08059904:
- lsls r4, 1
- ldr r0, _08059914 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- adds r1, r5, 0
- bl TintPalette_SepiaTone
- b _0805992C
- .align 2, 0
-_08059914: .4byte gPlttBufferUnfaded
-_08059918:
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_8111F38
- lsls r4, 1
- ldr r0, _08059940 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- adds r1, r5, 0
- bl TintPalette_GrayScale
-_0805992C:
- ldr r0, _08059940 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- ldr r1, _08059944 @ =gPlttBufferFaded
- adds r1, r4, r1
- adds r2, r5, 0
- bl CpuSet
-_0805993A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08059940: .4byte gPlttBufferUnfaded
-_08059944: .4byte gPlttBufferFaded
- thumb_func_end sub_80598CC
-
- thumb_func_start sub_8059948
-sub_8059948: @ 8059948
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- ldr r0, _08059968 @ =gUnknown_2036E28
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0805996C
- cmp r0, 0x1
- ble _080599B8
- cmp r0, 0x2
- beq _08059980
- cmp r0, 0x3
- beq _08059994
- b _080599B8
- .align 2, 0
-_08059968: .4byte gUnknown_2036E28
-_0805996C:
- lsls r4, 5
- ldr r0, _0805997C @ =gPlttBufferUnfaded
- adds r0, r4, r0
- lsls r1, r6, 4
- bl TintPalette_GrayScale
- b _080599AA
- .align 2, 0
-_0805997C: .4byte gPlttBufferUnfaded
-_08059980:
- lsls r4, 5
- ldr r0, _08059990 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- lsls r1, r6, 4
- bl TintPalette_SepiaTone
- b _080599AA
- .align 2, 0
-_08059990: .4byte gPlttBufferUnfaded
-_08059994:
- lsls r0, r4, 4
- lsls r5, r6, 4
- adds r1, r5, 0
- bl sub_8111F38
- lsls r4, 5
- ldr r0, _080599C0 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- adds r1, r5, 0
- bl TintPalette_GrayScale
-_080599AA:
- ldr r0, _080599C0 @ =gPlttBufferUnfaded
- adds r0, r4, r0
- ldr r1, _080599C4 @ =gPlttBufferFaded
- adds r1, r4, r1
- lsls r2, r6, 3
- bl CpuFastSet
-_080599B8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080599C0: .4byte gPlttBufferUnfaded
-_080599C4: .4byte gPlttBufferFaded
- thumb_func_end sub_8059948
-
- thumb_func_start apply_map_tileset_palette
-apply_map_tileset_palette: @ 80599C8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- mov r8, r5
- lsls r6, r2, 16
- lsrs r7, r6, 16
- adds r2, r7, 0
- movs r1, 0
- mov r0, sp
- strh r1, [r0]
- cmp r4, 0
- beq _08059A46
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _08059A1C
- mov r0, sp
- adds r1, r5, 0
- movs r2, 0x2
- bl LoadPalette
- ldr r0, [r4, 0x8]
- adds r0, 0x2
- adds r5, 0x1
- lsls r5, 16
- lsrs r5, 16
- subs r4, r7, 0x2
- lsls r2, r4, 16
- lsrs r2, 16
- adds r1, r5, 0
- bl LoadPalette
- lsls r4, 15
- lsrs r4, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_80598CC
- b _08059A46
-_08059A1C:
- cmp r0, 0x1
- bne _08059A36
- ldr r0, [r4, 0x8]
- adds r0, 0xE0
- adds r1, r5, 0
- adds r2, r7, 0
- bl LoadPalette
- lsrs r1, r6, 17
- adds r0, r5, 0
- bl sub_80598CC
- b _08059A46
-_08059A36:
- ldr r0, [r4, 0x8]
- mov r1, r8
- bl LoadCompressedPalette
- lsrs r1, r6, 17
- mov r0, r8
- bl sub_80598CC
-_08059A46:
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end apply_map_tileset_palette
-
- thumb_func_start sub_8059A54
-sub_8059A54: @ 8059A54
- push {lr}
- ldr r0, [r0, 0x10]
- movs r1, 0xA0
- lsls r1, 2
- movs r2, 0
- bl copy_tileset_patterns_to_vram
- pop {r0}
- bx r0
- thumb_func_end sub_8059A54
-
- thumb_func_start sub_8059A68
-sub_8059A68: @ 8059A68
- push {lr}
- ldr r0, [r0, 0x14]
- movs r1, 0xC0
- lsls r1, 1
- movs r2, 0xA0
- lsls r2, 2
- bl copy_tileset_patterns_to_vram
- pop {r0}
- bx r0
- thumb_func_end sub_8059A68
-
- thumb_func_start copy_map_tileset2_to_vram_2
-copy_map_tileset2_to_vram_2: @ 8059A7C
- push {lr}
- ldr r0, [r0, 0x14]
- movs r1, 0xC0
- lsls r1, 1
- movs r2, 0xA0
- lsls r2, 2
- bl copy_tileset_patterns_to_vram2
- pop {r0}
- bx r0
- thumb_func_end copy_map_tileset2_to_vram_2
-
- thumb_func_start sub_8059A90
-sub_8059A90: @ 8059A90
- push {lr}
- ldr r0, [r0, 0x10]
- movs r1, 0
- movs r2, 0xE0
- bl apply_map_tileset_palette
- pop {r0}
- bx r0
- thumb_func_end sub_8059A90
-
- thumb_func_start sub_8059AA0
-sub_8059AA0: @ 8059AA0
- push {lr}
- ldr r0, [r0, 0x14]
- movs r1, 0x70
- movs r2, 0xC0
- bl apply_map_tileset_palette
- pop {r0}
- bx r0
- thumb_func_end sub_8059AA0
-
- thumb_func_start copy_map_tileset1_tileset2_to_vram
-copy_map_tileset1_tileset2_to_vram: @ 8059AB0
- push {r4,r5,lr}
- adds r5, r0, 0
- cmp r5, 0
- beq _08059AD2
- ldr r0, [r5, 0x10]
- movs r4, 0xA0
- lsls r4, 2
- adds r1, r4, 0
- movs r2, 0
- bl copy_tileset_patterns_to_vram2
- ldr r0, [r5, 0x14]
- movs r1, 0xC0
- lsls r1, 1
- adds r2, r4, 0
- bl copy_tileset_patterns_to_vram2
-_08059AD2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end copy_map_tileset1_tileset2_to_vram
-
- thumb_func_start apply_map_tileset1_tileset2_palette
-apply_map_tileset1_tileset2_palette: @ 8059AD8
- push {r4,lr}
- adds r4, r0, 0
- cmp r4, 0
- beq _08059AEA
- bl sub_8059A90
- adds r0, r4, 0
- bl sub_8059AA0
-_08059AEA:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end apply_map_tileset1_tileset2_palette
-
- .align 2, 0 @ Don't pad with nop.