summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorPikalaxALT <PikalaxALT@users.noreply.github.com>2019-01-03 21:05:13 -0500
committerGitHub <noreply@github.com>2019-01-03 21:05:13 -0500
commit3a4f44ef36c1f0eb6a25bd86234cb94ef73a0c59 (patch)
tree3fdb692dd75014069d0ec086568844b570098bf2 /asm
parent84e22a9ecf52bb73993feadce91524355f1bb70f (diff)
parent1de4e55185f4f3e6e5f59541236abc10b69d51aa (diff)
Merge pull request #36 from PikalaxALT/trainer_tower
Trainer tower (phase 1)
Diffstat (limited to 'asm')
-rw-r--r--asm/region_map.s4
-rw-r--r--asm/trainer_tower.s1146
2 files changed, 2 insertions, 1148 deletions
diff --git a/asm/region_map.s b/asm/region_map.s
index f860c6065..168ca47c3 100644
--- a/asm/region_map.s
+++ b/asm/region_map.s
@@ -9706,11 +9706,11 @@ sub_80C4D78: @ 80C4D78
bl sub_80C4D40
cmp r0, 0x1
bne _080C4DA4
- ldr r1, _080C4DA0 @ =gUnknown_83EF22E
+ ldr r1, _080C4DA0 @ =gMapSecName_CeladonDept
b _080C4DAC
.align 2, 0
_080C4D9C: .4byte 0xffa80000
-_080C4DA0: .4byte gUnknown_83EF22E
+_080C4DA0: .4byte gMapSecName_CeladonDept
_080C4DA4:
ldr r0, _080C4DB8 @ =gUnknown_83F1CAC
lsls r1, r5, 2
diff --git a/asm/trainer_tower.s b/asm/trainer_tower.s
index 5b65927d5..c1da74a98 100644
--- a/asm/trainer_tower.s
+++ b/asm/trainer_tower.s
@@ -5,1152 +5,6 @@
.text
- thumb_func_start sub_815D7BC
-sub_815D7BC: @ 815D7BC
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r0, 0x1E
- bl TryCopySpecialSaveSection
- cmp r0, 0x1
- bne _0815D804
- ldr r2, _0815D800 @ =0x00000f88
- adds r0, r5, 0
- adds r1, r4, 0
- bl memcpy
- movs r0, 0x1F
- adds r1, r4, 0
- bl TryCopySpecialSaveSection
- cmp r0, 0x1
- bne _0815D804
- ldr r1, _0815D800 @ =0x00000f88
- adds r0, r5, r1
- movs r2, 0xF8
- lsls r2, 4
- adds r1, r4, 0
- bl memcpy
- adds r0, r5, 0
- bl sub_815D6B4
- cmp r0, 0
- beq _0815D804
- movs r0, 0x1
- b _0815D806
- .align 2, 0
-_0815D800: .4byte 0x00000f88
-_0815D804:
- movs r0, 0
-_0815D806:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_815D7BC
-
- thumb_func_start sub_815D80C
-sub_815D80C: @ 815D80C
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r0, 0x80
- lsls r0, 5
- bl AllocZeroed
- adds r5, r0, 0
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_815D7BC
- adds r4, r0, 0
- adds r0, r5, 0
- bl Free
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_815D80C
-
- thumb_func_start sub_815D834
-sub_815D834: @ 815D834
- movs r0, 0
- bx lr
- thumb_func_end sub_815D834
-
- thumb_func_start sub_815D838
-sub_815D838: @ 815D838
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r2, 0
- ldr r0, _0815D8C0 @ =gUnknown_8479D38
- mov r10, r0
- movs r1, 0xFA
- lsls r1, 2
- adds r5, r1, 0
-_0815D84E:
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r1, r0, 0
- add r1, r10
- mov r8, r1
- mov r1, r10
- adds r1, 0x8
- adds r7, r0, r1
- ldr r1, _0815D8C4 @ =gUnknown_8479D48
- adds r6, r0, r1
- movs r4, 0
- adds r2, 0x1
- mov r9, r2
-_0815D86A:
- mov r0, r8
- adds r1, r0, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _0815D87C
- ldrb r1, [r1]
- adds r0, r5, r1
- bl FlagSet
-_0815D87C:
- adds r1, r7, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _0815D88C
- ldrb r1, [r1]
- adds r0, r5, r1
- bl FlagSet
-_0815D88C:
- adds r1, r6, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _0815D89C
- ldrb r1, [r1]
- adds r0, r5, r1
- bl FlagSet
-_0815D89C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _0815D86A
- mov r1, r9
- lsls r0, r1, 24
- lsrs r2, r0, 24
- cmp r2, 0xE
- bls _0815D84E
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0815D8C0: .4byte gUnknown_8479D38
-_0815D8C4: .4byte gUnknown_8479D48
- thumb_func_end sub_815D838
-
- thumb_func_start sub_815D8C8
-sub_815D8C8: @ 815D8C8
- push {r4,lr}
- ldr r4, _0815D8F0 @ =0x00004023
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _0815D8F4 @ =0x000005db
- cmp r1, r0
- bhi _0815D8E8
- adds r1, 0x1
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl VarSet
-_0815D8E8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815D8F0: .4byte 0x00004023
-_0815D8F4: .4byte 0x000005db
- thumb_func_end sub_815D8C8
-
- thumb_func_start sub_815D8F8
-sub_815D8F8: @ 815D8F8
- push {r4-r6,lr}
- movs r4, 0xFF
- movs r2, 0
- ldr r6, _0815D95C @ =gUnknown_8479D34
- ldr r0, _0815D960 @ =gSaveBlock1Ptr
- ldr r3, [r0]
- movs r5, 0x4
- ldrsb r5, [r3, r5]
-_0815D908:
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r1, r0, r6
- movs r0, 0
- ldrsb r0, [r1, r0]
- cmp r0, r5
- bne _0815D928
- ldrb r1, [r1, 0x1]
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x5
- ldrsb r0, [r3, r0]
- cmp r1, r0
- bne _0815D928
- adds r4, r2, 0
-_0815D928:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xE
- bls _0815D908
- cmp r4, 0xFF
- beq _0815D956
- ldr r4, _0815D964 @ =0x00004023
- adds r0, r4, 0
- bl VarGet
- lsls r0, 16
- ldr r1, _0815D968 @ =0x05db0000
- cmp r0, r1
- bls _0815D956
- adds r0, r4, 0
- movs r1, 0
- bl VarSet
- bl sub_815D838
- bl sub_815D96C
-_0815D956:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815D95C: .4byte gUnknown_8479D34
-_0815D960: .4byte gSaveBlock1Ptr
-_0815D964: .4byte 0x00004023
-_0815D968: .4byte 0x05db0000
- thumb_func_end sub_815D8F8
-
- thumb_func_start sub_815D96C
-sub_815D96C: @ 815D96C
- push {r4-r6,lr}
- movs r6, 0
-_0815D970:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x59
- bls _0815D994
- lsls r0, r6, 3
- subs r0, r6
- lsls r0, 2
- ldr r1, _0815D990 @ =gUnknown_8479D38
- b _0815D9B0
- .align 2, 0
-_0815D990: .4byte gUnknown_8479D38
-_0815D994:
- cmp r0, 0x3B
- bls _0815D9A8
- lsls r0, r6, 3
- subs r0, r6
- lsls r0, 2
- ldr r1, _0815D9A4 @ =gUnknown_8479D40
- b _0815D9B0
- .align 2, 0
-_0815D9A4: .4byte gUnknown_8479D40
-_0815D9A8:
- lsls r0, r6, 3
- subs r0, r6
- lsls r0, 2
- ldr r1, _0815D9E4 @ =gUnknown_8479D48
-_0815D9B0:
- adds r5, r0, r1
- movs r4, 0
- adds r6, 0x1
-_0815D9B6:
- adds r1, r5, r4
- ldrb r0, [r1]
- cmp r0, 0xFF
- beq _0815D9CC
- movs r2, 0xFA
- lsls r2, 2
- adds r0, r2, 0
- ldrb r1, [r1]
- adds r0, r1
- bl FlagClear
-_0815D9CC:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x7
- bls _0815D9B6
- lsls r0, r6, 24
- lsrs r6, r0, 24
- cmp r6, 0xE
- bls _0815D970
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815D9E4: .4byte gUnknown_8479D48
- thumb_func_end sub_815D96C
-
- thumb_func_start sub_815D9E8
-sub_815D9E8: @ 815D9E8
- push {lr}
- bl sub_815DC8C
- ldr r1, _0815DA08 @ =gUnknown_847A230
- ldr r0, _0815DA0C @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- bl _call_via_r0
- bl sub_815DD2C
- pop {r0}
- bx r0
- .align 2, 0
-_0815DA08: .4byte gUnknown_847A230
-_0815DA0C: .4byte gSpecialVar_0x8004
- thumb_func_end sub_815D9E8
-
- thumb_func_start sub_815DA10
-sub_815DA10: @ 815DA10
- ldr r1, _0815DA20 @ =gFacilityClassToTrainerClass
- ldr r0, _0815DA24 @ =gUnknown_203F45C
- ldr r0, [r0]
- adds r0, 0x3D
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_0815DA20: .4byte gFacilityClassToTrainerClass
-_0815DA24: .4byte gUnknown_203F45C
- thumb_func_end sub_815DA10
-
- thumb_func_start sub_815DA28
-sub_815DA28: @ 815DA28
- push {lr}
- ldr r1, _0815DA38 @ =gUnknown_203F45C
- ldr r1, [r1]
- movs r2, 0xB
- bl StringCopyN
- pop {r0}
- bx r0
- .align 2, 0
-_0815DA38: .4byte gUnknown_203F45C
- thumb_func_end sub_815DA28
-
- thumb_func_start sub_815DA3C
-sub_815DA3C: @ 815DA3C
- ldr r1, _0815DA4C @ =gFacilityClassToPicIndex
- ldr r0, _0815DA50 @ =gUnknown_203F45C
- ldr r0, [r0]
- adds r0, 0x3D
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_0815DA4C: .4byte gFacilityClassToPicIndex
-_0815DA50: .4byte gUnknown_203F45C
- thumb_func_end sub_815DA3C
-
- thumb_func_start sub_815DA54
-sub_815DA54: @ 815DA54
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- bl sub_815DC8C
- ldr r5, _0815DBC4 @ =gUnknown_203F45C
- movs r0, 0x40
- bl AllocZeroed
- str r0, [r5]
- ldr r0, _0815DBC8 @ =0x00004001
- bl VarGet
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- ldr r0, [r5]
- ldr r1, _0815DBCC @ =gUnknown_203F458
- ldr r1, [r1]
- ldrb r3, [r1]
- lsls r2, r3, 5
- subs r2, r3
- lsls r2, 5
- adds r2, 0xC
- adds r1, r2
- mov r2, r10
- lsls r6, r2, 2
- adds r4, r6, r2
- lsls r4, 3
- add r4, r10
- lsls r4, 3
- adds r2, r4, 0x4
- adds r1, r2
- movs r2, 0xB
- bl StringCopyN
- movs r0, 0
- mov r9, r0
- str r6, [sp]
- mov r12, r4
- mov r1, r10
- adds r1, 0x1
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r1
- lsls r5, r0, 3
-_0815DAB8:
- ldr r0, _0815DBC4 @ =gUnknown_203F45C
- ldr r0, [r0]
- mov r8, r0
- mov r1, r9
- lsls r4, r1, 1
- mov r2, r8
- adds r2, 0xC
- adds r2, r4
- ldr r0, _0815DBCC @ =gUnknown_203F458
- ldr r3, [r0]
- ldrb r1, [r3]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 5
- add r0, r12
- adds r7, r3, 0
- adds r7, 0x2A
- adds r0, r7, r0
- ldrh r0, [r0]
- strh r0, [r2]
- mov r2, r8
- adds r2, 0x18
- adds r2, r4
- ldrb r1, [r3]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 5
- add r0, r12
- adds r6, r3, 0
- adds r6, 0x36
- adds r0, r6, r0
- ldrh r0, [r0]
- strh r0, [r2]
- ldrb r1, [r3]
- lsls r0, r1, 5
- subs r0, r1
- lsls r2, r0, 5
- adds r0, r3, r2
- ldrb r0, [r0, 0xE]
- cmp r0, 0x1
- bne _0815DB2E
- mov r1, r8
- adds r1, 0x24
- adds r1, r4
- adds r0, r5, r2
- adds r0, r7, r0
- ldrh r0, [r0]
- strh r0, [r1]
- mov r2, r8
- adds r2, 0x30
- adds r2, r4
- ldrb r1, [r3]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 5
- adds r0, r5, r0
- adds r0, r6, r0
- ldrh r0, [r0]
- strh r0, [r2]
-_0815DB2E:
- movs r2, 0x2
- add r12, r2
- adds r5, 0x2
- movs r0, 0x1
- add r9, r0
- mov r1, r9
- cmp r1, 0x5
- ble _0815DAB8
- ldr r2, _0815DBC4 @ =gUnknown_203F45C
- ldr r3, [r2]
- ldr r0, _0815DBCC @ =gUnknown_203F458
- ldr r1, [r0]
- ldrb r2, [r1]
- lsls r0, r2, 5
- subs r0, r2
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1, 0xE]
- adds r3, 0x3C
- strb r0, [r3]
- ldr r1, _0815DBC4 @ =gUnknown_203F45C
- ldr r4, [r1]
- ldr r2, _0815DBCC @ =gUnknown_203F458
- ldr r3, [r2]
- ldr r1, [sp]
- add r1, r10
- lsls r1, 3
- add r1, r10
- lsls r1, 3
- ldrb r2, [r3]
- lsls r0, r2, 5
- subs r0, r2
- lsls r0, 5
- adds r0, r1, r0
- adds r3, r0
- ldrb r0, [r3, 0x1B]
- adds r4, 0x3D
- strb r0, [r4]
- ldr r0, _0815DBC4 @ =gUnknown_203F45C
- ldr r4, [r0]
- ldr r2, _0815DBCC @ =gUnknown_203F458
- ldr r3, [r2]
- ldrb r2, [r3]
- lsls r0, r2, 5
- subs r0, r2
- lsls r0, 5
- adds r1, r0
- adds r3, r1
- ldrb r0, [r3, 0x1C]
- adds r4, 0x3E
- strb r0, [r4]
- ldr r0, _0815DBD0 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r2, _0815DBD4 @ =0x00003d34
- adds r1, r0, r2
- ldr r2, [r1]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 2
- ldr r2, _0815DBD8 @ =0x00003d38
- adds r1, r2
- adds r0, r1
- bl SetVBlankCounter1Ptr
- bl sub_815DD2C
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DBC4: .4byte gUnknown_203F45C
-_0815DBC8: .4byte 0x00004001
-_0815DBCC: .4byte gUnknown_203F458
-_0815DBD0: .4byte gSaveBlock1Ptr
-_0815DBD4: .4byte 0x00003d34
-_0815DBD8: .4byte 0x00003d38
- thumb_func_end sub_815DA54
-
- thumb_func_start sub_815DBDC
-sub_815DBDC: @ 815DBDC
- push {r4,lr}
- ldr r4, _0815DBF0 @ =gUnknown_203F45C
- ldr r0, [r4]
- bl Free
- movs r0, 0
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DBF0: .4byte gUnknown_203F45C
- thumb_func_end sub_815DBDC
-
- thumb_func_start sub_815DBF4
-sub_815DBF4: @ 815DBF4
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- ldr r0, _0815DC28 @ =0x00004003
- adds r1, r4, 0
- bl VarSet
- ldr r5, _0815DC2C @ =gUnknown_203F45C
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x3C
- ldrb r0, [r0]
- adds r1, 0x3D
- ldrb r1, [r1]
- bl sub_815E068
- cmp r4, 0
- bne _0815DC30
- ldr r0, [r5]
- adds r0, 0xC
- adds r1, r6, 0
- bl sub_815DEFC
- b _0815DC3A
- .align 2, 0
-_0815DC28: .4byte 0x00004003
-_0815DC2C: .4byte gUnknown_203F45C
-_0815DC30:
- ldr r0, [r5]
- adds r0, 0x24
- adds r1, r6, 0
- bl sub_815DEFC
-_0815DC3A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_815DBF4
-
- thumb_func_start sub_815DC40
-sub_815DC40: @ 815DC40
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- ldr r0, _0815DC74 @ =0x00004003
- adds r1, r4, 0
- bl VarSet
- ldr r5, _0815DC78 @ =gUnknown_203F45C
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x3C
- ldrb r0, [r0]
- adds r1, 0x3D
- ldrb r1, [r1]
- bl sub_815E068
- cmp r4, 0
- bne _0815DC7C
- ldr r0, [r5]
- adds r0, 0x18
- adds r1, r6, 0
- bl sub_815DEFC
- b _0815DC86
- .align 2, 0
-_0815DC74: .4byte 0x00004003
-_0815DC78: .4byte gUnknown_203F45C
-_0815DC7C:
- ldr r0, [r5]
- adds r0, 0x30
- adds r1, r6, 0
- bl sub_815DEFC
-_0815DC86:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_815DC40
-
- thumb_func_start sub_815DC8C
-sub_815DC8C: @ 815DC8C
- push {r4-r7,lr}
- ldr r0, _0815DCBC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _0815DCC0 @ =0x00003d34
- adds r0, r1
- ldr r5, [r0]
- ldr r4, _0815DCC4 @ =gUnknown_203F458
- ldr r0, _0815DCC8 @ =0x00001f0c
- bl AllocZeroed
- str r0, [r4]
- ldr r1, _0815DCCC @ =gMapHeader
- ldrb r1, [r1, 0x12]
- subs r1, 0x2A
- strb r1, [r0]
- bl sub_815D834
- cmp r0, 0x1
- bne _0815DCD0
- ldr r0, [r4]
- adds r0, 0x4
- bl sub_815D80C
- b _0815DD18
- .align 2, 0
-_0815DCBC: .4byte gSaveBlock1Ptr
-_0815DCC0: .4byte 0x00003d34
-_0815DCC4: .4byte gUnknown_203F458
-_0815DCC8: .4byte 0x00001f0c
-_0815DCCC: .4byte gMapHeader
-_0815DCD0:
- ldr r0, [r4]
- ldr r1, _0815DD20 @ =gUnknown_84827AC
- adds r0, 0x4
- movs r2, 0x8
- bl memcpy
- lsls r1, r5, 5
- ldr r0, _0815DD24 @ =gUnknown_84827B4
- adds r7, r1, r0
- movs r5, 0
- movs r4, 0x7
-_0815DCE6:
- ldr r6, _0815DD28 @ =gUnknown_203F458
- ldr r0, [r6]
- adds r0, r5, r0
- adds r0, 0xC
- ldm r7!, {r1}
- movs r2, 0xF8
- lsls r2, 2
- bl memcpy
- movs r0, 0xF8
- lsls r0, 2
- adds r5, r0
- subs r4, 0x1
- cmp r4, 0
- bge _0815DCE6
- ldr r0, [r6]
- adds r0, 0xC
- movs r1, 0xF8
- lsls r1, 5
- bl CalcByteArraySum
- ldr r1, [r6]
- str r0, [r1, 0x8]
- bl sub_815EC0C
-_0815DD18:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DD20: .4byte gUnknown_84827AC
-_0815DD24: .4byte gUnknown_84827B4
-_0815DD28: .4byte gUnknown_203F458
- thumb_func_end sub_815DC8C
-
- thumb_func_start sub_815DD2C
-sub_815DD2C: @ 815DD2C
- push {r4,lr}
- ldr r4, _0815DD40 @ =gUnknown_203F458
- ldr r0, [r4]
- bl Free
- movs r0, 0
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DD40: .4byte gUnknown_203F458
- thumb_func_end sub_815DD2C
-
- thumb_func_start sub_815DD44
-sub_815DD44: @ 815DD44
- push {r4,lr}
- ldr r0, _0815DD68 @ =gMapHeader
- ldrh r0, [r0, 0x12]
- ldr r1, _0815DD6C @ =0xfffffed7
- adds r0, r1
- ldr r1, _0815DD70 @ =gUnknown_203F458
- ldr r4, [r1]
- ldrb r1, [r4, 0x4]
- cmp r0, r1
- ble _0815DD78
- ldr r0, _0815DD74 @ =gSpecialVar_Result
- movs r1, 0x3
- strh r1, [r0]
- movs r0, 0x99
- lsls r0, 1
- bl sub_8055D40
- b _0815DDA2
- .align 2, 0
-_0815DD68: .4byte gMapHeader
-_0815DD6C: .4byte 0xfffffed7
-_0815DD70: .4byte gUnknown_203F458
-_0815DD74: .4byte gSpecialVar_Result
-_0815DD78:
- ldr r3, _0815DDA8 @ =gSpecialVar_Result
- ldrb r1, [r4]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 5
- adds r0, r4, r0
- ldrb r0, [r0, 0xE]
- strh r0, [r3]
- ldr r2, _0815DDAC @ =gUnknown_847A284
- ldrb r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- ldrh r3, [r3]
- adds r0, r3
- lsls r0, 1
- adds r0, r2
- ldrh r0, [r0]
- bl sub_8055D40
- bl sub_815DDB0
-_0815DDA2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DDA8: .4byte gSpecialVar_Result
-_0815DDAC: .4byte gUnknown_847A284
- thumb_func_end sub_815DD44
-
- thumb_func_start sub_815DDB0
-sub_815DDB0: @ 815DDB0
- push {r4-r6,lr}
- ldr r0, _0815DDD0 @ =gUnknown_203F458
- ldr r2, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 5
- adds r2, r0
- ldrb r0, [r2, 0xE]
- cmp r0, 0x1
- beq _0815DE18
- cmp r0, 0x1
- bgt _0815DDD4
- cmp r0, 0
- beq _0815DDDA
- b _0815DEF0
- .align 2, 0
-_0815DDD0: .4byte gUnknown_203F458
-_0815DDD4:
- cmp r0, 0x2
- beq _0815DE64
- b _0815DEF0
-_0815DDDA:
- ldrb r2, [r2, 0x1B]
- movs r3, 0
- ldr r0, _0815DE04 @ =gUnknown_8479ED8
- ldrb r1, [r0, 0x1]
- adds r6, r0, 0
- cmp r1, r2
- beq _0815DDF8
- adds r1, r6, 0
-_0815DDEA:
- adds r1, 0x4
- adds r3, 0x1
- cmp r3, 0x52
- bhi _0815DDF8
- ldrb r0, [r1, 0x1]
- cmp r0, r2
- bne _0815DDEA
-_0815DDF8:
- cmp r3, 0x53
- beq _0815DE08
- lsls r0, r3, 2
- adds r0, r6
- ldrb r1, [r0]
- b _0815DE0A
- .align 2, 0
-_0815DE04: .4byte gUnknown_8479ED8
-_0815DE08:
- movs r1, 0x12
-_0815DE0A:
- ldr r0, _0815DE14 @ =0x00004011
- bl VarSet
- b _0815DEF0
- .align 2, 0
-_0815DE14: .4byte 0x00004011
-_0815DE18:
- ldrb r2, [r2, 0x1B]
- movs r3, 0
- ldr r0, _0815DE44 @ =gUnknown_847A024
- ldrb r1, [r0, 0x2]
- adds r4, r0, 0
- cmp r1, r2
- beq _0815DE36
- adds r1, r4, 0
-_0815DE28:
- adds r1, 0x8
- adds r3, 0x1
- cmp r3, 0x9
- bhi _0815DE36
- ldrb r0, [r1, 0x2]
- cmp r0, r2
- bne _0815DE28
-_0815DE36:
- cmp r3, 0xA
- beq _0815DE48
- lsls r0, r3, 3
- adds r0, r4
- ldrb r1, [r0]
- ldrb r4, [r0, 0x1]
- b _0815DE4C
- .align 2, 0
-_0815DE44: .4byte gUnknown_847A024
-_0815DE48:
- movs r1, 0x12
- movs r4, 0x12
-_0815DE4C:
- ldr r0, _0815DE5C @ =0x00004010
- bl VarSet
- ldr r0, _0815DE60 @ =0x00004013
- adds r1, r4, 0
- bl VarSet
- b _0815DEF0
- .align 2, 0
-_0815DE5C: .4byte 0x00004010
-_0815DE60: .4byte 0x00004013
-_0815DE64:
- movs r4, 0
- ldr r6, _0815DEAC @ =gUnknown_8479ED8
-_0815DE68:
- ldr r0, _0815DEB0 @ =gUnknown_203F458
- ldr r3, [r0]
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r4
- lsls r1, 3
- ldrb r2, [r3]
- lsls r0, r2, 5
- subs r0, r2
- lsls r0, 5
- adds r1, r0
- adds r3, r1
- ldrb r2, [r3, 0x1B]
- movs r3, 0
- ldr r1, _0815DEAC @ =gUnknown_8479ED8
- ldrb r0, [r1, 0x1]
- adds r5, r4, 0x1
- cmp r0, r2
- beq _0815DE9E
-_0815DE90:
- adds r1, 0x4
- adds r3, 0x1
- cmp r3, 0x52
- bhi _0815DE9E
- ldrb r0, [r1, 0x1]
- cmp r0, r2
- bne _0815DE90
-_0815DE9E:
- cmp r3, 0x53
- beq _0815DEB4
- lsls r0, r3, 2
- adds r0, r6
- ldrb r1, [r0]
- b _0815DEB6
- .align 2, 0
-_0815DEAC: .4byte gUnknown_8479ED8
-_0815DEB0: .4byte gUnknown_203F458
-_0815DEB4:
- movs r1, 0x12
-_0815DEB6:
- cmp r4, 0x1
- beq _0815DED8
- cmp r4, 0x1
- bgt _0815DEC4
- cmp r4, 0
- beq _0815DECA
- b _0815DEEA
-_0815DEC4:
- cmp r4, 0x2
- beq _0815DEE4
- b _0815DEEA
-_0815DECA:
- ldr r0, _0815DED4 @ =0x00004012
- bl VarSet
- b _0815DEEA
- .align 2, 0
-_0815DED4: .4byte 0x00004012
-_0815DED8:
- ldr r0, _0815DEE0 @ =0x00004010
- bl VarSet
- b _0815DEEA
- .align 2, 0
-_0815DEE0: .4byte 0x00004010
-_0815DEE4:
- ldr r0, _0815DEF8 @ =0x00004011
- bl VarSet
-_0815DEEA:
- adds r4, r5, 0
- cmp r4, 0x2
- ble _0815DE68
-_0815DEF0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815DEF8: .4byte 0x00004011
- thumb_func_end sub_815DDB0
-
- thumb_func_start sub_815DEFC
-sub_815DEFC: @ 815DEFC
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x3
- movs r3, 0x2
- bl ConvertEasyChatWordsToString
- movs r2, 0x1
- negs r2, r2
- movs r0, 0x2
- adds r1, r4, 0
- bl GetStringWidth
- cmp r0, 0xC4
- bls _0815DF4E
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x2
- movs r3, 0x3
- bl ConvertEasyChatWordsToString
- ldrb r0, [r4]
- movs r1, 0x1
- cmp r0, 0xFE
- beq _0815DF40
-_0815DF32:
- adds r0, r4, r1
- ldrb r0, [r0]
- adds r1, 0x1
- cmp r0, 0xFE
- bne _0815DF32
- b _0815DF40
-_0815DF3E:
- adds r1, 0x1
-_0815DF40:
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0xFE
- bne _0815DF3E
- adds r1, r4, r1
- movs r0, 0xFA
- strb r0, [r1]
-_0815DF4E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_815DEFC
-
- thumb_func_start sub_815DF54
-sub_815DF54: @ 815DF54
- push {r4,r5,lr}
- ldr r0, _0815DF90 @ =gSpecialVar_0x8006
- ldrh r4, [r0]
- ldr r2, _0815DF94 @ =gUnknown_203F458
- ldr r3, [r2]
- ldrb r1, [r3]
- lsls r0, r1, 5
- subs r0, r1
- lsls r1, r0, 5
- adds r0, r3, r1
- ldrb r5, [r0, 0xE]
- cmp r5, 0x1
- beq _0815DF7C
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- adds r0, r3, r0
-_0815DF7C:
- ldrb r1, [r0, 0x1B]
- ldr r0, _0815DF98 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r0, 0x3
- beq _0815DFD4
- cmp r0, 0x3
- bgt _0815DF9C
- cmp r0, 0x2
- beq _0815DFA6
- b _0815E05C
- .align 2, 0
-_0815DF90: .4byte gSpecialVar_0x8006
-_0815DF94: .4byte gUnknown_203F458
-_0815DF98: .4byte gSpecialVar_0x8005
-_0815DF9C:
- cmp r0, 0x4
- beq _0815E000
- cmp r0, 0x5
- beq _0815E038
- b _0815E05C
-_0815DFA6:
- adds r0, r5, 0
- bl sub_815E068
- ldr r0, _0815DFD0 @ =gUnknown_203F458
- ldr r0, [r0]
- ldrb r2, [r0]
- lsls r1, r2, 5
- subs r1, r2
- lsls r1, 5
- adds r1, 0xC
- adds r0, r1
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r4
- lsls r1, 3
- adds r1, 0x4
- adds r0, r1
- adds r0, 0xE
- b _0815E026
- .align 2, 0
-_0815DFD0: .4byte gUnknown_203F458
-_0815DFD4:
- adds r0, r5, 0
- bl sub_815E068
- ldr r0, _0815DFFC @ =gUnknown_203F458
- ldr r0, [r0]
- ldrb r2, [r0]
- lsls r1, r2, 5
- subs r1, r2
- lsls r1, 5
- adds r1, 0xC
- adds r0, r1
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r4
- lsls r1, 3
- adds r1, 0x4
- adds r0, r1
- adds r0, 0x1A
- b _0815E026
- .align 2, 0
-_0815DFFC: .4byte gUnknown_203F458
-_0815E000:
- adds r0, r5, 0
- bl sub_815E068
- ldr r0, _0815E030 @ =gUnknown_203F458
- ldr r0, [r0]
- ldrb r2, [r0]
- lsls r1, r2, 5
- subs r1, r2
- lsls r1, 5
- adds r1, 0xC
- adds r0, r1
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r4
- lsls r1, 3
- adds r1, 0x4
- adds r0, r1
- adds r0, 0x26
-_0815E026:
- ldr r1, _0815E034 @ =gStringVar4
- bl sub_815DEFC
- b _0815E05C
- .align 2, 0
-_0815E030: .4byte gUnknown_203F458
-_0815E034: .4byte gStringVar4
-_0815E038:
- ldr r0, [r2]
- ldrb r2, [r0]
- lsls r1, r2, 5
- subs r1, r2
- lsls r1, 5
- adds r1, 0xC
- adds r0, r1
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r4
- lsls r1, 3
- adds r1, 0x4
- adds r0, r1
- adds r0, 0x32
- ldr r1, _0815E064 @ =gStringVar4
- bl sub_815DEFC
-_0815E05C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0815E064: .4byte gStringVar4
- thumb_func_end sub_815DF54
-
thumb_func_start sub_815E068
sub_815E068: @ 815E068
push {r4,r5,lr}