summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorred031000 <rubenru09@aol.com>2020-08-22 21:06:37 +0100
committerGitHub <noreply@github.com>2020-08-22 21:06:37 +0100
commit7a6abfe3982d516b39a13a8fd934dbfe8211cfe6 (patch)
tree0c7a403f7b9680519acb5a0b086ce84e165e503b
parent4ed13afd18de6f0b94d35e83023094efcfec73f5 (diff)
parentdd904623a1ff019bfa6d88b1e178d87676d31320 (diff)
Merge pull request #266 from PikalaxALT/pikalax_work
Decompile code related to input handling, initialization/runtime, and script string placeholders
-rw-r--r--arm9/arm9.lsf4
-rw-r--r--arm9/asm/scrcmd.s19
-rw-r--r--arm9/asm/scrcmd_12.s56
-rw-r--r--arm9/asm/scrcmd_3.s2
-rw-r--r--arm9/asm/scrcmd_4.s80
-rw-r--r--arm9/asm/scrcmd_9.s6
-rw-r--r--arm9/asm/unk_020023C0.s12
-rw-r--r--arm9/asm/unk_02006864.s1
-rw-r--r--arm9/asm/unk_0200AA80.s2098
-rw-r--r--arm9/asm/unk_02013724.s4
-rw-r--r--arm9/asm/unk_020139D8.s4
-rw-r--r--arm9/asm/unk_02015EA0.s1099
-rw-r--r--arm9/asm/unk_0201CC08.s6
-rw-r--r--arm9/asm/unk_0201E66C.s6
-rw-r--r--arm9/asm/unk_020208B8.s42
-rw-r--r--arm9/asm/unk_020286F8.s340
-rw-r--r--arm9/asm/unk_02031734.s6
-rw-r--r--arm9/asm/unk_02033F50.s14
-rw-r--r--arm9/asm/unk_02034188.s8
-rw-r--r--arm9/asm/unk_02035068.s14
-rw-r--r--arm9/asm/unk_020377F0.s6
-rw-r--r--arm9/asm/unk_02038C78.s6
-rw-r--r--arm9/asm/unk_02048120.s6
-rw-r--r--arm9/asm/unk_020484A8.s6
-rw-r--r--arm9/asm/unk_02048904.s6
-rw-r--r--arm9/asm/unk_02050E48.s14
-rw-r--r--arm9/asm/unk_020520AC.s12
-rw-r--r--arm9/asm/unk_0205363C.s2
-rw-r--r--arm9/asm/unk_02060CCC.s92
-rw-r--r--arm9/asm/unk_020625EC.s10
-rw-r--r--arm9/asm/unk_020653EC.s6
-rw-r--r--arm9/asm/unk_0206C700.s40
-rw-r--r--arm9/asm/unk_0206E2F0.s22
-rw-r--r--arm9/asm/unk_0206F3FC.s42
-rw-r--r--arm9/asm/unk_02072548.s10
-rw-r--r--arm9/asm/unk_02073DA8.s6
-rw-r--r--arm9/asm/unk_0207550C.s68
-rw-r--r--arm9/asm/unk_020772F0.s38
-rw-r--r--arm9/asm/unk_02079C70.s16
-rw-r--r--arm9/asm/unk_0207D5BC.s12
-rw-r--r--arm9/asm/unk_0207F95C.s6
-rw-r--r--arm9/asm/unk_0207FD00.s58
-rw-r--r--arm9/asm/unk_02080C38.s12
-rw-r--r--arm9/asm/unk_020859C0.s2
-rw-r--r--arm9/asm/unk_02086084.s4
-rw-r--r--arm9/asm/unk_02086414.s6
-rw-r--r--arm9/asm/unk_02087D00.s4
-rw-r--r--arm9/asm/unk_02088D1C.s7
-rw-r--r--arm9/asm/unk_02089498.s6
-rw-r--r--arm9/asm/unk_02089960.s4
-rw-r--r--arm9/asm/unk_02089D90.s8
-rw-r--r--arm9/asm/unk_02089F24.s14
-rw-r--r--arm9/asm/unk_0208A338.s4
-rw-r--r--arm9/asm/unk_0208A998.s8
-rw-r--r--arm9/global.inc128
-rw-r--r--arm9/lib/include/OS_interrupt.h24
-rw-r--r--arm9/lib/include/PAD_pad.h6
-rw-r--r--arm9/lib/include/mmap.h28
-rw-r--r--arm9/lib/include/registers.h28
-rw-r--r--arm9/lib/include/tp.h37
-rw-r--r--arm9/modules/05/asm/mod05_021D74E0.s6
-rw-r--r--arm9/modules/05/asm/mod05_021E1374.s2
-rw-r--r--arm9/modules/05/asm/mod05_021E1AD8.s18
-rw-r--r--arm9/modules/05/asm/module_05.s62
-rw-r--r--arm9/modules/06/asm/module_06.s156
-rw-r--r--arm9/modules/07/asm/module_07.s22
-rw-r--r--arm9/modules/09/asm/module_09.s102
-rw-r--r--arm9/modules/11/asm/module_11_thumb1.s10
-rw-r--r--arm9/modules/11/asm/module_11_thumb2.s70
-rw-r--r--arm9/modules/12/asm/module_12.s184
-rw-r--r--arm9/modules/14/asm/module_14.s34
-rw-r--r--arm9/modules/15/asm/module_15.s10
-rw-r--r--arm9/modules/16/asm/module_16.s48
-rw-r--r--arm9/modules/17/asm/module_17.s74
-rw-r--r--arm9/modules/18/asm/module_18.s194
-rw-r--r--arm9/modules/51/asm/module_51.s8
-rw-r--r--arm9/modules/53/asm/module_53.s24
-rw-r--r--arm9/modules/54/asm/module_54.s30
-rw-r--r--arm9/modules/55/asm/module_55.s48
-rw-r--r--arm9/modules/56/asm/module_56.s28
-rw-r--r--arm9/modules/57/asm/module_57.s76
-rw-r--r--arm9/modules/58/asm/module_58.s22
-rw-r--r--arm9/modules/59/asm/module_59.s26
-rw-r--r--arm9/modules/60/asm/module_60.s6
-rw-r--r--arm9/modules/61/asm/module_61.s6
-rw-r--r--arm9/modules/62/asm/module_62.s8
-rw-r--r--arm9/modules/63/asm/mod63_021D74E0.s14
-rw-r--r--arm9/modules/63/asm/mod63_021D8890.s18
-rw-r--r--arm9/modules/64/asm/module_64.s4
-rw-r--r--arm9/modules/65/asm/module_65.s32
-rw-r--r--arm9/modules/66/asm/module_66.s10
-rw-r--r--arm9/modules/67/asm/module_67.s64
-rw-r--r--arm9/modules/68/asm/module_68.s20
-rw-r--r--arm9/modules/69/asm/module_69.s22
-rw-r--r--arm9/modules/70/asm/module_70.s18
-rw-r--r--arm9/modules/71/asm/module_71.s44
-rw-r--r--arm9/modules/73/asm/module_73.s50
-rw-r--r--arm9/modules/74/asm/module_74.s26
-rw-r--r--arm9/modules/75/asm/module_75.s106
-rw-r--r--arm9/modules/76/asm/module_76.s46
-rw-r--r--arm9/modules/77/asm/module_77.s36
-rw-r--r--arm9/modules/78/asm/module_78.s2
-rw-r--r--arm9/modules/80/asm/module_80.s30
-rw-r--r--arm9/modules/81/asm/module_81.s22
-rw-r--r--arm9/modules/82/asm/module_82.s20
-rw-r--r--arm9/modules/83/asm/module_83.s138
-rw-r--r--arm9/modules/84/asm/module_84_thumb1.s6
-rw-r--r--arm9/modules/85/asm/module_85.s10
-rw-r--r--arm9/modules/86/asm/module_86.s16
-rw-r--r--arm9/src/game_init.c532
-rw-r--r--arm9/src/main.c20
-rw-r--r--arm9/src/poke_overlay.c2
-rw-r--r--arm9/src/script_buffers.c826
-rw-r--r--arm9/src/unk_0200CA44.c2
-rw-r--r--arm9/src/unk_020286F8.c150
-rw-r--r--include/MWC_string.h2
-rw-r--r--include/game_init.h34
-rw-r--r--include/main.h65
-rw-r--r--include/player_data.h2
-rw-r--r--include/save_block_2.h1
-rw-r--r--include/script_buffers.h113
-rw-r--r--include/unk_0201B4E8.h7
-rw-r--r--include/unk_020286F8.h35
123 files changed, 3375 insertions, 5079 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index ee9448ae..60a43ce5 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -27,7 +27,7 @@ Static arm9
Object unk_02008DEC.o
Object unk_02009EAC.o
Object msgdata.o
- Object unk_0200AA80.o
+ Object script_buffers.o
Object unk_0200BA78.o
Object unk_0200BB14.o
Object unk_0200CA44.o
@@ -47,7 +47,7 @@ Static arm9
Object unk_02015CC0.o
Object unk_02015D14.o
Object unk_02015E30.o
- Object unk_02015EA0.o
+ Object game_init.o
Object unk_020166C8.o
Object unk_02016B94.o
Object unk_0201B1A8.o
diff --git a/arm9/asm/scrcmd.s b/arm9/asm/scrcmd.s
index 876bd329..62f32eeb 100644
--- a/arm9/asm/scrcmd.s
+++ b/arm9/asm/scrcmd.s
@@ -6,7 +6,6 @@
.extern UNK_020F34FC
.extern UNK_020F3538
.extern gMain
- .extern gUnk021C4918
.section .bss
@@ -1170,7 +1169,7 @@ FUN_0203A210: ; 0x0203A210
mov r3, #0x1
bl MOD05_021E2CBC
add r0, r6, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r1, _0203A284 ; =FUN_0203A2F0
add r0, r5, #0x0
bl SetupNativeScript
@@ -5171,8 +5170,8 @@ FUN_0203C200: ; 0x0203C200
.balign 4
_0203C274: .word FUN_0203BB90
- thumb_func_start FUN_0203C278
-FUN_0203C278: ; 0x0203C278
+ thumb_func_start ScrCmd_monstoragepc
+ScrCmd_monstoragepc: ; 0x0203C278
push {r3-r5, lr}
add r5, r0, #0x0
add r0, #0x80
@@ -5198,7 +5197,7 @@ FUN_0203C278: ; 0x0203C278
add r0, #0x80
ldr r0, [r0, #0x0]
ldr r1, [r4, #0x0]
- bl FUN_02037D60
+ bl LaunchStoragePCInterface
ldr r1, _0203C2C0 ; =FUN_0203BBBC
add r0, r5, #0x0
bl SetupNativeScript
@@ -11112,13 +11111,13 @@ FUN_0203F234: ; 0x0203F234
add r1, r0, #0x0
ldr r0, [r4, #0x0]
bl GetVarPointer
- ldr r1, _0203F250 ; =gUnk021C4918
+ ldr r1, _0203F250 ; =gMain + 0x60
ldrb r1, [r1, #0x6]
strh r1, [r0, #0x0]
mov r0, #0x1
pop {r4, pc}
.balign 4
-_0203F250: .word gUnk021C4918
+_0203F250: .word gMain + 0x60
thumb_func_start FUN_0203F254
FUN_0203F254: ; 0x0203F254
@@ -11187,7 +11186,7 @@ FUN_0203F2AC: ; 0x0203F2AC
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B6D0
+ bl BufferContestBackgroundName
mov r0, #0x1
pop {r4-r6, pc}
.balign 4
@@ -12175,7 +12174,7 @@ FUN_0203FA58: ; 0x0203FA58
bl VarGet
add r7, r0, #0x0
mov r0, #0x20
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0x0
ldr r2, _0203FB48 ; =0x00000147
mov r0, #0x0
@@ -12227,7 +12226,7 @@ _0203FB26:
add r0, r5, #0x0
bl DestroyMsgData
add r0, r4, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x0
add sp, #0x10
pop {r3-r7, pc}
diff --git a/arm9/asm/scrcmd_12.s b/arm9/asm/scrcmd_12.s
index 059262cf..524c0006 100644
--- a/arm9/asm/scrcmd_12.s
+++ b/arm9/asm/scrcmd_12.s
@@ -326,7 +326,7 @@ FUN_02042F48: ; 0x02042F48
add r2, r0, #0x0
ldr r0, [r4, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
pop {r4, pc}
.balign 4
@@ -694,13 +694,13 @@ FUN_02043274: ; 0x02043274
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r7, #0x4
bl FUN_020690E4
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x1
- bl FUN_0200ACA4
+ bl BufferBoxMonSpeciesNameWithArticle
pop {r3-r7, pc}
.balign 4
@@ -740,13 +740,13 @@ FUN_020432C8: ; 0x020432C8
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r7, #0x4
bl FUN_020690E4
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x1
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
pop {r3-r7, pc}
.balign 4
@@ -812,11 +812,11 @@ FUN_02043358: ; 0x02043358
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x4]
mov r1, #0x1
add r2, r7, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
pop {r3-r7, pc}
thumb_func_start FUN_02043394
@@ -840,7 +840,7 @@ FUN_02043394: ; 0x02043394
mov r0, #0x5
strh r0, [r6, #0x0]
ldr r0, [r5, #0x4]
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
thumb_func_start FUN_020433C4
@@ -880,7 +880,7 @@ FUN_020433DC: ; 0x020433DC
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r7, #0x0
mov r1, #0x20
bl FUN_02023AF4
@@ -892,7 +892,7 @@ FUN_020433DC: ; 0x020433DC
ldr r0, [r5, #0x4]
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
add sp, #0x8
@@ -953,11 +953,11 @@ FUN_0204346C: ; 0x0204346C
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x4]
mov r1, #0x1
add r2, r7, #0x0
- bl FUN_0200B350
+ bl BufferDecorationName
pop {r3-r7, pc}
thumb_func_start FUN_020434A4
@@ -1058,17 +1058,17 @@ FUN_02043538: ; 0x02043538
_02043558:
ldr r0, [r5, #0x4]
mov r1, #0x1
- bl FUN_0200B534
+ bl BufferSealName
b _02043574
_02043562:
ldr r0, [r5, #0x4]
mov r1, #0x1
- bl FUN_0200B660
+ bl BufferFashionName
b _02043574
_0204356C:
ldr r0, [r5, #0x4]
mov r1, #0x1
- bl FUN_0200B6D0
+ bl BufferContestBackgroundName
_02043574:
mov r0, #0x53
lsl r0, r0, #0x2
@@ -1081,7 +1081,7 @@ _02043574:
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
pop {r4-r6, pc}
.balign 4
@@ -1155,11 +1155,11 @@ FUN_020435F8: ; 0x020435F8
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x4]
ldr r2, _02043630 ; =0x000001C6
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
nop
_02043630: .word 0x000001C6
@@ -1183,7 +1183,7 @@ FUN_02043634: ; 0x02043634
ldr r0, [r5, #0x4]
mov r1, #0x0
add r2, #0x7a
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
thumb_func_start FUN_02043660
@@ -1247,12 +1247,12 @@ FUN_020436B8: ; 0x020436B8
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r2, #0x71
ldr r0, [r5, #0x4]
mov r1, #0x1
lsl r2, r2, #0x2
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
thumb_func_start FUN_020436F0
@@ -1274,7 +1274,7 @@ FUN_020436F0: ; 0x020436F0
ldr r0, [r5, #0x4]
mov r1, #0x0
add r2, #0x78
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
thumb_func_start FUN_0204371C
@@ -1338,11 +1338,11 @@ FUN_02043774: ; 0x02043774
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x4]
ldr r2, _020437AC ; =0x000001C7
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
nop
_020437AC: .word 0x000001C7
@@ -1366,7 +1366,7 @@ FUN_020437B0: ; 0x020437B0
ldr r0, [r5, #0x4]
mov r1, #0x0
add r2, #0x7b
- bl FUN_0200AE38
+ bl BufferItemName
pop {r4-r6, pc}
thumb_func_start FUN_020437DC
@@ -1419,11 +1419,11 @@ FUN_02043818: ; 0x02043818
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x4]
ldr r2, [r7, #0x0]
mov r1, #0x1
- bl FUN_0200B02C
+ bl BufferPoketchAppName
pop {r3-r7, pc}
thumb_func_start FUN_02043850
@@ -1445,5 +1445,5 @@ FUN_02043850: ; 0x02043850
add r2, r0, #0x0
ldr r0, [r5, #0x4]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
pop {r4-r6, pc}
diff --git a/arm9/asm/scrcmd_3.s b/arm9/asm/scrcmd_3.s
index 475edde8..3de355ea 100644
--- a/arm9/asm/scrcmd_3.s
+++ b/arm9/asm/scrcmd_3.s
@@ -370,7 +370,7 @@ FUN_02040170: ; 0x02040170
str r3, [sp, #0x4]
ldr r0, [r4, #0x0]
add r2, r6, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x0
add sp, #0x8
pop {r4-r6, pc}
diff --git a/arm9/asm/scrcmd_4.s b/arm9/asm/scrcmd_4.s
index aede6782..b3af2c5c 100644
--- a/arm9/asm/scrcmd_4.s
+++ b/arm9/asm/scrcmd_4.s
@@ -25,7 +25,7 @@ FUN_020406CC: ; 0x020406CC
add r2, r0, #0x0
ldr r0, [r4, #0x0]
add r1, r5, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -45,7 +45,7 @@ FUN_02040700: ; 0x02040700
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
ldr r2, [r4, #0xc]
- bl FUN_0200ABE4
+ bl BufferRivalsName
mov r0, #0x0
pop {r3-r5, pc}
@@ -64,7 +64,7 @@ FUN_02040724: ; 0x02040724
ldrb r1, [r2, #0x0]
ldr r0, [r0, #0x0]
ldr r2, [r4, #0xc]
- bl FUN_0200AC0C
+ bl BufferFriendsName
mov r0, #0x0
pop {r3-r5, pc}
@@ -96,7 +96,7 @@ FUN_02040748: ; 0x02040748
add r2, r0, #0x0
ldr r0, [r7, #0x0]
add r1, r4, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -123,7 +123,7 @@ FUN_02040790: ; 0x02040790
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -150,7 +150,7 @@ FUN_020407C8: ; 0x020407C8
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AEE0
+ bl BufferPocketName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -178,7 +178,7 @@ FUN_02040800: ; 0x02040800
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -205,7 +205,7 @@ FUN_0204083C: ; 0x0204083C
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -239,7 +239,7 @@ FUN_02040874: ; 0x02040874
ldr r0, [r6, #0x0]
add r1, r4, #0x0
add r2, r5, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x0
add sp, #0x8
pop {r4-r6, pc}
@@ -285,7 +285,7 @@ _02040904:
ldr r0, [r7, #0x0]
ldr r2, [sp, #0x8]
add r1, r6, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x0
add sp, #0xc
pop {r4-r7, pc}
@@ -319,7 +319,7 @@ FUN_0204091C: ; 0x0204091C
add r2, r0, #0x0
ldr r0, [r7, #0x0]
add r1, r4, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -361,7 +361,7 @@ FUN_02040964: ; 0x02040964
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0x0
pop {r3-r7, pc}
@@ -387,7 +387,7 @@ FUN_020409C0: ; 0x020409C0
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B02C
+ bl BufferPoketchAppName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -414,7 +414,7 @@ FUN_020409F8: ; 0x020409F8
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B064
+ bl BufferTrainerClassName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -449,7 +449,7 @@ FUN_02040A30: ; 0x02040A30
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r5, #0x0
- bl FUN_0200B09C
+ bl BufferTrainerClassNameWithArticle
mov r0, #0x0
pop {r3-r7, pc}
@@ -493,7 +493,7 @@ FUN_02040A7C: ; 0x02040A7C
ldr r3, [sp, #0x8]
add r1, r4, #0x0
add r2, r6, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r6, #0x0
bl String_dtor
mov r0, #0x0
@@ -551,7 +551,7 @@ FUN_02040B0C: ; 0x02040B0C
add r1, r5, #0x0
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x0
@@ -588,7 +588,7 @@ FUN_02040B5C: ; 0x02040B5C
add r1, r5, #0x0
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x0
@@ -625,7 +625,7 @@ FUN_02040BAC: ; 0x02040BAC
add r1, r5, #0x0
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x0
@@ -654,7 +654,7 @@ FUN_02040BFC: ; 0x02040BFC
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B350
+ bl BufferDecorationName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -681,7 +681,7 @@ FUN_02040C34: ; 0x02040C34
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B1D4
+ bl BufferUndergroundTrapName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -708,7 +708,7 @@ FUN_02040C6C: ; 0x02040C6C
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B164
+ bl BufferUndergroundItemName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -749,7 +749,7 @@ FUN_02040CA4: ; 0x02040CA4
add r1, r6, #0x0
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x0
@@ -806,7 +806,7 @@ _02040D5C:
add r1, r6, #0x0
add r2, r5, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r5, #0x0
bl String_dtor
mov r0, #0x0
@@ -836,7 +836,7 @@ FUN_02040D7C: ; 0x02040D7C
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AE04
+ bl BufferNatureName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -863,7 +863,7 @@ FUN_02040DB4: ; 0x02040DB4
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B660
+ bl BufferFashionName
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -902,7 +902,7 @@ FUN_02040DEC: ; 0x02040DEC
str r0, [sp, #0x4]
ldr r0, [r7, #0x0]
add r2, r4, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x0
@@ -952,7 +952,7 @@ FUN_02040E4C: ; 0x02040E4C
lsr r2, r0, #0x10
ldr r0, [r7, #0x0]
add r1, r5, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -984,7 +984,7 @@ FUN_02040EB4: ; 0x02040EB4
lsr r2, r0, #0x10
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl GetRibbonNameOrDesc
+ bl BufferRibbonNameOrDesc
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1014,7 +1014,7 @@ FUN_02040EF8: ; 0x02040EF8
ldr r0, [r6, #0x0]
add r1, r4, #0x0
lsr r2, r2, #0x10
- bl FUN_0200B534
+ bl BufferSealName
mov r0, #0x0
pop {r4-r6, pc}
@@ -1040,7 +1040,7 @@ FUN_02040F34: ; 0x02040F34
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AE70
+ bl BufferItemNameWithIndefArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1067,7 +1067,7 @@ FUN_02040F6C: ; 0x02040F6C
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1094,7 +1094,7 @@ FUN_02040FA4: ; 0x02040FA4
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B388
+ bl BufferDecorationNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1121,7 +1121,7 @@ FUN_02040FDC: ; 0x02040FDC
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B20C
+ bl BufferUndergroundTrapNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1148,7 +1148,7 @@ FUN_02041014: ; 0x02041014
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B19C
+ bl BufferUndergroundItemNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1182,7 +1182,7 @@ FUN_0204104C: ; 0x0204104C
str r0, [r5, #0x8]
ldr r0, [r6, #0x0]
add r2, r7, #0x0
- bl FUN_0200ACC0
+ bl BufferSpeciesNameWithArticle
mov r0, #0x0
pop {r3-r7, pc}
.balign 4
@@ -1208,7 +1208,7 @@ FUN_02041094: ; 0x02041094
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200ACC0
+ bl BufferSpeciesNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
@@ -1234,7 +1234,7 @@ FUN_020410C8: ; 0x020410C8
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B698
+ bl BufferFashionNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1261,7 +1261,7 @@ FUN_02041100: ; 0x02041100
add r2, r0, #0x0
ldr r0, [r6, #0x0]
add r1, r4, #0x0
- bl FUN_0200B09C
+ bl BufferTrainerClassNameWithArticle
mov r0, #0x0
pop {r4-r6, pc}
.balign 4
@@ -1291,7 +1291,7 @@ FUN_02041138: ; 0x02041138
ldr r0, [r6, #0x0]
add r1, r4, #0x0
lsr r2, r2, #0x10
- bl FUN_0200B568
+ bl BufferSealNamePlural
mov r0, #0x0
pop {r4-r6, pc}
diff --git a/arm9/asm/scrcmd_9.s b/arm9/asm/scrcmd_9.s
index 5c723f9a..1741c29b 100644
--- a/arm9/asm/scrcmd_9.s
+++ b/arm9/asm/scrcmd_9.s
@@ -536,7 +536,7 @@ FUN_0204224C: ; 0x0204224C
str r0, [sp, #0x4]
add r0, r5, #0x0
add r2, r4, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
add sp, #0xc
@@ -554,7 +554,7 @@ FUN_02042288: ; 0x02042288
add r2, r0, #0x0
add r0, r4, #0x0
mov r1, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
pop {r4, pc}
.balign 4
@@ -568,7 +568,7 @@ FUN_020422A8: ; 0x020422A8
add r2, r0, #0x0
add r0, r4, #0x0
mov r1, #0x0
- bl FUN_0200B02C
+ bl BufferPoketchAppName
pop {r4, pc}
thumb_func_start FUN_020422C0
diff --git a/arm9/asm/unk_020023C0.s b/arm9/asm/unk_020023C0.s
index 110db7ea..a84fda87 100644
--- a/arm9/asm/unk_020023C0.s
+++ b/arm9/asm/unk_020023C0.s
@@ -3,7 +3,7 @@
.section .bss
- .extern UNK_021C48F8
+ .extern gMain
.extern gMain
.global gTextFlags
@@ -57,7 +57,7 @@ _020023F0:
lsr r0, r0, #0x1f
bne _02002414
_02002402:
- ldr r0, _0200265C ; =UNK_021C48F8
+ ldr r0, _0200265C ; =gMain + 0x40
ldrh r0, [r0, #0x22]
cmp r0, #0x0
beq _02002432
@@ -111,7 +111,7 @@ _02002432:
mov r1, #0x3
tst r1, r2
bne _02002478
- ldr r1, _0200265C ; =UNK_021C48F8
+ ldr r1, _0200265C ; =gMain + 0x40
ldrh r1, [r1, #0x20]
cmp r1, #0x0
beq _02002486
@@ -375,7 +375,7 @@ _0200264E:
b _020026CA
.balign 4
_02002658: .word gMain
-_0200265C: .word UNK_021C48F8
+_0200265C: .word gMain + 0x40
_02002660: .word gTextFlags
_02002664: .word 0x0000F0FD
_02002668: .word 0x000025BD
@@ -915,7 +915,7 @@ FUN_02002A94: ; 0x02002A94
mov r0, #0x3
tst r0, r1
bne _02002AB2
- ldr r0, _02002AD0 ; =UNK_021C48F8
+ ldr r0, _02002AD0 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0x0
beq _02002AC6
@@ -939,7 +939,7 @@ _02002AC6:
pop {r3, pc}
nop
_02002ACC: .word gMain
-_02002AD0: .word UNK_021C48F8
+_02002AD0: .word gMain + 0x40
_02002AD4: .word gTextFlags
_02002AD8: .word 0x000005DC
diff --git a/arm9/asm/unk_02006864.s b/arm9/asm/unk_02006864.s
index cffea043..5528150d 100644
--- a/arm9/asm/unk_02006864.s
+++ b/arm9/asm/unk_02006864.s
@@ -567,6 +567,7 @@ FUN_02006C88: ; 0x02006C88
thumb_func_start UncompressFromNarc
UncompressFromNarc: ; 0x02006C98
+ ; BOOL UncompressFromNarc(NarcId narcId, s32 memberNo, BOOL a2, u32 heap_id, BOOL a4)
push {r3-r7, lr}
add r5, r2, #0x0
add r7, r0, #0x0
diff --git a/arm9/asm/unk_0200AA80.s b/arm9/asm/unk_0200AA80.s
deleted file mode 100644
index aa06782f..00000000
--- a/arm9/asm/unk_0200AA80.s
+++ /dev/null
@@ -1,2098 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .rodata
-
- .global UNK_020ECE64
-UNK_020ECE64: ; 0x020ECE64
- .short 0x017E ; Locations
- .short 0x0180 ; Gifts/trades
- .short 0x017F ; Events
-
- .balign 4
- .global UNK_020ECE6C
-UNK_020ECE6C: ; 0x020ECE6C
- .short 0x0140, 0x0008
- .short 0x0160, 0x0010
- .short 0x01A0, 0x0010
- .short 0x01E0, 0x0010
- .short 0x0220, 0x0010
- .short 0x0260, 0x0010
- .short 0x02A0, 0x0010
-
- .text
-
- thumb_func_start FUN_0200AA80
-FUN_0200AA80: ; 0x0200AA80
- ldr r3, _0200AA8C ; =FUN_0200AA90
- add r2, r0, #0x0
- mov r0, #0x8
- mov r1, #0x20
- bx r3
- nop
-_0200AA8C: .word FUN_0200AA90
-
- thumb_func_start FUN_0200AA90
-FUN_0200AA90: ; 0x0200AA90
- push {r3-r7, lr}
- sub sp, #0x8
- add r7, r0, #0x0
- str r1, [sp, #0x0]
- str r2, [sp, #0x4]
- bne _0200AAA0
- bl ErrorHandling
-_0200AAA0:
- ldr r0, [sp, #0x0]
- cmp r0, #0x0
- bne _0200AAAA
- bl ErrorHandling
-_0200AAAA:
- ldr r0, [sp, #0x4]
- mov r1, #0x10
- bl AllocFromHeapAtEnd
- add r4, r0, #0x0
- beq _0200AB10
- ldr r0, [sp, #0x4]
- str r7, [r4, #0x0]
- str r0, [r4, #0x4]
- ldr r0, [sp, #0x0]
- ldr r1, [sp, #0x4]
- bl String_ctor
- str r0, [r4, #0xc]
- cmp r0, #0x0
- beq _0200AB10
- ldr r0, [sp, #0x4]
- lsl r1, r7, #0x3
- bl AllocFromHeapAtEnd
- str r0, [r4, #0x8]
- cmp r0, #0x0
- beq _0200AB10
- mov r6, #0x0
- cmp r7, #0x0
- bls _0200AB06
- add r5, r6, #0x0
-_0200AAE0:
- add r0, r0, r5
- bl FUN_0200AB6C
- ldr r0, [sp, #0x0]
- ldr r1, [sp, #0x4]
- bl String_ctor
- ldr r1, [r4, #0x8]
- add r1, r1, r5
- str r0, [r1, #0x4]
- ldr r0, [r4, #0x8]
- add r1, r0, r5
- ldr r1, [r1, #0x4]
- cmp r1, #0x0
- beq _0200AB06
- add r6, r6, #0x1
- add r5, #0x8
- cmp r6, r7
- blo _0200AAE0
-_0200AB06:
- cmp r6, r7
- bne _0200AB10
- add sp, #0x8
- add r0, r4, #0x0
- pop {r3-r7, pc}
-_0200AB10:
- mov r0, #0x0
- add sp, #0x8
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200AB18
-FUN_0200AB18: ; 0x0200AB18
- push {r4-r6, lr}
- add r5, r0, #0x0
- ldr r0, [r5, #0x0]
- cmp r0, #0x0
- bne _0200AB26
- bl ErrorHandling
-_0200AB26:
- ldr r0, [r5, #0x8]
- cmp r0, #0x0
- beq _0200AB54
- ldr r0, [r5, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- bls _0200AB4E
- add r4, r6, #0x0
-_0200AB36:
- ldr r0, [r5, #0x8]
- add r0, r0, r4
- ldr r0, [r0, #0x4]
- cmp r0, #0x0
- beq _0200AB4E
- bl String_dtor
- ldr r0, [r5, #0x0]
- add r6, r6, #0x1
- add r4, #0x8
- cmp r6, r0
- blo _0200AB36
-_0200AB4E:
- ldr r0, [r5, #0x8]
- bl FreeToHeap
-_0200AB54:
- ldr r0, [r5, #0xc]
- cmp r0, #0x0
- beq _0200AB5E
- bl String_dtor
-_0200AB5E:
- mov r0, #0x0
- str r0, [r5, #0x0]
- add r0, r5, #0x0
- bl FreeToHeap
- pop {r4-r6, pc}
- .balign 4
-
- thumb_func_start FUN_0200AB6C
-FUN_0200AB6C: ; 0x0200AB6C
- bx lr
- .balign 4
-
- thumb_func_start FUN_0200AB70
-FUN_0200AB70: ; 0x0200AB70
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r0, [r5, #0x0]
- add r6, r1, #0x0
- add r7, r2, #0x0
- add r4, r3, #0x0
- cmp r6, r0
- blo _0200AB84
- bl ErrorHandling
-_0200AB84:
- ldr r0, [r5, #0x0]
- cmp r6, r0
- bhs _0200ABB2
- cmp r4, #0x0
- beq _0200ABA4
- ldrb r0, [r4, #0x0]
- ldr r3, [r5, #0x8]
- lsl r2, r6, #0x3
- strb r0, [r3, r2]
- ldrb r0, [r4, #0x1]
- add r1, r3, r2
- strb r0, [r1, #0x1]
- ldrb r0, [r4, #0x2]
- strb r0, [r1, #0x2]
- ldrb r0, [r4, #0x3]
- strb r0, [r1, #0x3]
-_0200ABA4:
- ldr r1, [r5, #0x8]
- lsl r0, r6, #0x3
- add r0, r1, r0
- ldr r0, [r0, #0x4]
- add r1, r7, #0x0
- bl StringCopy
-_0200ABB2:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200ABB4
-FUN_0200ABB4: ; 0x0200ABB4
- push {r3, lr}
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3, pc}
- .balign 4
-
- thumb_func_start FUN_0200ABC0
-FUN_0200ABC0: ; 0x0200ABC0
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r4, r1, #0x0
- bl PlayerProfile_GetNamePtr
- add r1, r0, #0x0
- ldr r0, [r5, #0xc]
- bl CopyU16ArrayToString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200ABE4
-FUN_0200ABE4: ; 0x0200ABE4
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r4, r1, #0x0
- bl FUN_02024EC0
- bl FUN_02024EE8
- add r1, r0, #0x0
- ldr r0, [r5, #0xc]
- bl CopyU16ArrayToString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200AC0C
-FUN_0200AC0C: ; 0x0200AC0C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r6, r1, #0x0
- bl Sav2_PlayerData_GetProfileAddr
- add r7, r0, #0x0
- ldr r2, _0200AC5C ; =0x000001F1
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r4, r0, #0x0
- add r0, r7, #0x0
- bl PlayerProfile_GetTrainerGender
- cmp r0, #0x0
- bne _0200AC3E
- ldr r2, [r5, #0xc]
- add r0, r4, #0x0
- mov r1, #0x1
- bl ReadMsgDataIntoString
- b _0200AC48
-_0200AC3E:
- ldr r2, [r5, #0xc]
- add r0, r4, #0x0
- mov r1, #0x0
- bl ReadMsgDataIntoString
-_0200AC48:
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r6, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r4, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
- .balign 4
-_0200AC5C: .word 0x000001F1
-
- thumb_func_start FUN_0200AC60
-FUN_0200AC60: ; 0x0200AC60
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r7, r2, #0x0
- add r6, r1, #0x0
- ldr r2, _0200ACA0 ; =0x0000016A
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r4, r0, #0x0
- add r0, r7, #0x0
- mov r1, #0x5
- mov r2, #0x0
- bl GetBoxMonData
- add r1, r0, #0x0
- ldr r2, [r5, #0xc]
- add r0, r4, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r6, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r4, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
- nop
-_0200ACA0: .word 0x0000016A
-
- thumb_func_start FUN_0200ACA4
-FUN_0200ACA4: ; 0x0200ACA4
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r4, r1, #0x0
- add r0, r2, #0x0
- mov r1, #0x5
- mov r2, #0x0
- bl GetBoxMonData
- add r2, r0, #0x0
- add r0, r5, #0x0
- add r1, r4, #0x0
- bl FUN_0200ACC0
- pop {r3-r5, pc}
-
- thumb_func_start FUN_0200ACC0
-FUN_0200ACC0: ; 0x0200ACC0
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200ACF4 ; =0x0000016B
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- add r7, r0, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
- nop
-_0200ACF4: .word 0x0000016B
-
- thumb_func_start FUN_0200ACF8
-FUN_0200ACF8: ; 0x0200ACF8
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r4, r1, #0x0
- ldr r2, [r5, #0xc]
- mov r1, #0x76
- bl GetBoxMonData
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200AD18
-FUN_0200AD18: ; 0x0200AD18
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r4, r1, #0x0
- ldr r2, [r5, #0xc]
- mov r1, #0x90
- bl GetBoxMonData
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200AD38
-FUN_0200AD38: ; 0x0200AD38
- push {r3-r5, lr}
- add r5, r0, #0x0
- ldr r0, [sp, #0x14]
- add r4, r1, #0x0
- str r0, [sp, #0x0]
- add r1, r2, #0x0
- add r2, r3, #0x0
- ldr r0, [r5, #0xc]
- ldr r3, [sp, #0x10]
- bl String16_FormatInteger
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
-
- thumb_func_start FUN_0200AD5C
-FUN_0200AD5C: ; 0x0200AD5C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x93
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AD90
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AD90:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start GetRibbonNameOrDesc
-GetRibbonNameOrDesc: ; 0x0200AD94
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x79
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200ADC8
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200ADC8:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200ADCC
-FUN_0200ADCC: ; 0x0200ADCC
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x8a
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AE00
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AE00:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200AE04
-FUN_0200AE04: ; 0x0200AE04
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xbe
- bl NewMsgDataFromNarc
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- add r7, r0, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200AE38
-FUN_0200AE38: ; 0x0200AE38
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x56
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AE6C
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AE6C:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200AE70
-FUN_0200AE70: ; 0x0200AE70
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200AEA4 ; =0x0000015A
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AEA2
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AEA2:
- pop {r3-r7, pc}
- .balign 4
-_0200AEA4: .word 0x0000015A
-
- thumb_func_start FUN_0200AEA8
-FUN_0200AEA8: ; 0x0200AEA8
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200AEDC ; =0x0000015B
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AEDA
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AEDA:
- pop {r3-r7, pc}
- .balign 4
-_0200AEDC: .word 0x0000015B
-
- thumb_func_start FUN_0200AEE0
-FUN_0200AEE0: ; 0x0200AEE0
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200AF14 ; =0x0000015D
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AF12
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AF12:
- pop {r3-r7, pc}
- .balign 4
-_0200AF14: .word 0x0000015D
-
- thumb_func_start FUN_0200AF18
-FUN_0200AF18: ; 0x0200AF18
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200AF4C ; =0x00000235
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AF4A
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AF4A:
- pop {r3-r7, pc}
- .balign 4
-_0200AF4C: .word 0x00000235
-
- thumb_func_start FUN_0200AF50
-FUN_0200AF50: ; 0x0200AF50
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200AF84 ; =0x000001EF
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AF82
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AF82:
- pop {r3-r7, pc}
- .balign 4
-_0200AF84: .word 0x000001EF
-
- thumb_func_start FUN_0200AF88
-FUN_0200AF88: ; 0x0200AF88
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xcd
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AFBA
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AFBA:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200AFBC
-FUN_0200AFBC: ; 0x0200AFBC
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x89
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200AFF0
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200AFF0:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start GetLandmarkName
-GetLandmarkName: ; 0x0200AFF4
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B028 ; =0x0000017E
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B026
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B026:
- pop {r3-r7, pc}
- .balign 4
-_0200B028: .word 0x0000017E
-
- thumb_func_start FUN_0200B02C
-FUN_0200B02C: ; 0x0200B02C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B060 ; =0x00000196
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B05E
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B05E:
- pop {r3-r7, pc}
- .balign 4
-_0200B060: .word 0x00000196
-
- thumb_func_start FUN_0200B064
-FUN_0200B064: ; 0x0200B064
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x23
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x4
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B098
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B098:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B09C
-FUN_0200B09C: ; 0x0200B09C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B0D0 ; =0x00000231
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B0CE
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B0CE:
- pop {r3-r7, pc}
- .balign 4
-_0200B0D0: .word 0x00000231
-
- thumb_func_start FUN_0200B0D4
-FUN_0200B0D4: ; 0x0200B0D4
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r4, r2, #0x0
- mov r2, #0x23
- add r6, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x4
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B108
- ldrb r1, [r4, #0x1]
- ldr r2, [r5, #0xc]
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r6, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B108:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B10C
-FUN_0200B10C: ; 0x0200B10C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B140 ; =0x0000022F
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B13E
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B13E:
- pop {r3-r7, pc}
- .balign 4
-_0200B140: .word 0x0000022F
-
- thumb_func_start FUN_0200B144
-FUN_0200B144: ; 0x0200B144
- push {r3-r5, lr}
- add r5, r0, #0x0
- ldr r0, [r5, #0xc]
- add r2, #0x14
- add r4, r1, #0x0
- add r1, r2, #0x0
- bl CopyU16ArrayToString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200B164
-FUN_0200B164: ; 0x0200B164
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B198 ; =0x00000239
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B196
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B196:
- pop {r3-r7, pc}
- .balign 4
-_0200B198: .word 0x00000239
-
- thumb_func_start FUN_0200B19C
-FUN_0200B19C: ; 0x0200B19C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B1D0 ; =0x0000023A
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B1CE
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B1CE:
- pop {r3-r7, pc}
- .balign 4
-_0200B1D0: .word 0x0000023A
-
- thumb_func_start FUN_0200B1D4
-FUN_0200B1D4: ; 0x0200B1D4
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B208 ; =0x0000023B
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B206
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B206:
- pop {r3-r7, pc}
- .balign 4
-_0200B208: .word 0x0000023B
-
- thumb_func_start FUN_0200B20C
-FUN_0200B20C: ; 0x0200B20C
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x8f
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B240
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B240:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B244
-FUN_0200B244: ; 0x0200B244
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xc2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B276
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B276:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B278
-FUN_0200B278: ; 0x0200B278
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xbf
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B2AA
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B2AA:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B2AC
-FUN_0200B2AC: ; 0x0200B2AC
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xbf
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B2DE
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B2DE:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B2E0
-FUN_0200B2E0: ; 0x0200B2E0
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B314 ; =0x0000023E
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B312
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B312:
- pop {r3-r7, pc}
- .balign 4
-_0200B314: .word 0x0000023E
-
- thumb_func_start FUN_0200B318
-FUN_0200B318: ; 0x0200B318
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B34C ; =0x0000023D
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B34A
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B34A:
- pop {r3-r7, pc}
- .balign 4
-_0200B34C: .word 0x0000023D
-
- thumb_func_start FUN_0200B350
-FUN_0200B350: ; 0x0200B350
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B384 ; =0x00000237
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B382
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B382:
- pop {r3-r7, pc}
- .balign 4
-_0200B384: .word 0x00000237
-
- thumb_func_start FUN_0200B388
-FUN_0200B388: ; 0x0200B388
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x8e
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B3BC
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B3BC:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B3C0
-FUN_0200B3C0: ; 0x0200B3C0
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r6, r1, #0x0
- add r4, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xc7
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- cmp r4, #0x0
- beq _0200B3E0
- cmp r4, #0x1
- beq _0200B3EA
- b _0200B3F4
-_0200B3E0:
- ldr r2, [r5, #0xc]
- mov r1, #0x44
- bl ReadMsgDataIntoString
- b _0200B3FA
-_0200B3EA:
- ldr r2, [r5, #0xc]
- mov r1, #0x45
- bl ReadMsgDataIntoString
- b _0200B3FA
-_0200B3F4:
- ldr r0, [r5, #0xc]
- bl StringSetEmpty
-_0200B3FA:
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r6, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B410
-FUN_0200B410: ; 0x0200B410
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r4, r1, #0x0
- ldr r2, [r5, #0xc]
- add r1, r3, #0x0
- bl PCStorage_GetBoxName
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_0200B430
-FUN_0200B430: ; 0x0200B430
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B464 ; =0x0000014B
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B462
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B462:
- pop {r3-r7, pc}
- .balign 4
-_0200B464: .word 0x0000014B
-
- thumb_func_start FUN_0200B468
-FUN_0200B468: ; 0x0200B468
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B49C ; =0x00000226
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B49A
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B49A:
- pop {r3-r7, pc}
- .balign 4
-_0200B49C: .word 0x00000226
-
- thumb_func_start FUN_0200B4A0
-FUN_0200B4A0: ; 0x0200B4A0
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x99
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B4D4
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B4D4:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B4D8
-FUN_0200B4D8: ; 0x0200B4D8
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r0, r2, #0x0
- add r6, r1, #0x0
- add r4, r3, #0x0
- bl FUN_02088D40
- add r2, r0, #0x0
- beq _0200B516
- cmp r4, #0x0
- beq _0200B516
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B516
- ldr r2, [r5, #0xc]
- add r1, r4, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r6, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B516:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B518
-FUN_0200B518: ; 0x0200B518
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r4, r1, #0x0
- ldr r1, [r5, #0xc]
- add r0, r2, #0x0
- bl FUN_02013A58
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- pop {r3-r5, pc}
-
- thumb_func_start FUN_0200B534
-FUN_0200B534: ; 0x0200B534
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xa
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B566
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B566:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B568
-FUN_0200B568: ; 0x0200B568
- push {r3-r7, lr}
- add r5, r0, #0x0
- ldr r3, [r5, #0x4]
- add r4, r1, #0x0
- add r6, r2, #0x0
- mov r0, #0x1
- mov r1, #0x1a
- mov r2, #0xb
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B59A
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B59A:
- pop {r3-r7, pc}
-
- thumb_func_start FUN_0200B59C
-FUN_0200B59C: ; 0x0200B59C
- push {r3-r7, lr}
- add r4, r2, #0x0
- add r5, r0, #0x0
- add r0, r4, #0x0
- add r7, r1, #0x0
- bl FUN_02015CC0
- add r6, r0, #0x0
- add r0, r4, #0x0
- bl FUN_02015CE0
- add r4, r0, #0x0
- ldr r2, _0200B620 ; =UNK_020ECE64
- lsl r3, r6, #0x1
- ldrh r2, [r2, r3]
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r6, r0, #0x0
- beq _0200B61E
- bl MsgDataGetCount
- cmp r4, r0
- bhs _0200B5EE
- ldr r2, [r5, #0xc]
- add r0, r6, #0x0
- add r1, r4, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r7, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r6, #0x0
- bl DestroyMsgData
- pop {r3-r7, pc}
-_0200B5EE:
- add r0, r6, #0x0
- bl DestroyMsgData
- ldr r2, _0200B624 ; =0x0000017E
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r4, r0, #0x0
- beq _0200B61E
- ldr r2, [r5, #0xc]
- mov r1, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r7, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r4, #0x0
- bl DestroyMsgData
-_0200B61E:
- pop {r3-r7, pc}
- .balign 4
-_0200B620: .word UNK_020ECE64
-_0200B624: .word 0x0000017E
-
- thumb_func_start FUN_0200B628
-FUN_0200B628: ; 0x0200B628
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B65C ; =0x0000019E
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B65A
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B65A:
- pop {r3-r7, pc}
- .balign 4
-_0200B65C: .word 0x0000019E
-
- thumb_func_start FUN_0200B660
-FUN_0200B660: ; 0x0200B660
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B694 ; =0x00000152
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B692
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B692:
- pop {r3-r7, pc}
- .balign 4
-_0200B694: .word 0x00000152
-
- thumb_func_start FUN_0200B698
-FUN_0200B698: ; 0x0200B698
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- add r4, r1, #0x0
- ldr r2, _0200B6CC ; =0x00000153
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B6CA
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B6CA:
- pop {r3-r7, pc}
- .balign 4
-_0200B6CC: .word 0x00000153
-
- thumb_func_start FUN_0200B6D0
-FUN_0200B6D0: ; 0x0200B6D0
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r2, #0x0
- mov r2, #0x55
- add r4, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r7, r0, #0x0
- beq _0200B704
- ldr r2, [r5, #0xc]
- add r1, r6, #0x0
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r7, #0x0
- bl DestroyMsgData
-_0200B704:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B708
-FUN_0200B708: ; 0x0200B708
- push {r4-r7, lr}
- sub sp, #0x14
- str r0, [sp, #0x8]
- add r5, r2, #0x0
- add r0, r1, #0x0
- str r3, [sp, #0xc]
- bl FUN_0202881C
- add r6, r0, #0x0
- add r1, r5, #0x0
- bl FUN_020287F8
- str r0, [sp, #0x10]
- add r0, r6, #0x0
- add r1, r5, #0x0
- bl FUN_02028804
- add r7, r0, #0x0
- mov r0, #0x40
- mov r1, #0x4
- bl String_ctor
- add r4, r0, #0x0
- ldr r2, [sp, #0x28]
- add r0, r6, #0x0
- add r1, r5, #0x0
- bl FUN_020287A8
- add r1, r0, #0x0
- add r0, r4, #0x0
- bl CopyU16ArrayToString
- mov r0, #0x1
- str r0, [sp, #0x0]
- ldr r0, [sp, #0x8]
- ldr r1, [sp, #0xc]
- ldr r3, [sp, #0x10]
- add r2, r4, #0x0
- str r7, [sp, #0x4]
- bl FUN_0200ABB4
- add r0, r4, #0x0
- bl String_dtor
- add sp, #0x14
- pop {r4-r7, pc}
-
- thumb_func_start FUN_0200B764
-FUN_0200B764: ; 0x0200B764
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r4, r2, #0x0
- mov r2, #0x5b
- add r7, r1, #0x0
- ldr r3, [r5, #0x4]
- mov r0, #0x1
- mov r1, #0x1a
- lsl r2, r2, #0x2
- bl NewMsgDataFromNarc
- add r6, r0, #0x0
- beq _0200B7A4
- cmp r4, #0x1
- blo _0200B786
- cmp r4, #0xc
- bls _0200B788
-_0200B786:
- mov r4, #0x1
-_0200B788:
- ldr r2, [r5, #0xc]
- add r0, r6, #0x0
- sub r1, r4, #0x1
- bl ReadMsgDataIntoString
- ldr r2, [r5, #0xc]
- add r0, r5, #0x0
- add r1, r7, #0x0
- mov r3, #0x0
- bl FUN_0200AB70
- add r0, r6, #0x0
- bl DestroyMsgData
-_0200B7A4:
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0200B7A8
-FUN_0200B7A8: ; 0x0200B7A8
- ldr r2, [r0, #0x8]
- lsl r0, r1, #0x3
- add r0, r2, r0
- ldr r3, _0200B7B4 ; =StrUpperFirstChar
- ldr r0, [r0, #0x4]
- bx r3
- .balign 4
-_0200B7B4: .word StrUpperFirstChar
-
- thumb_func_start StringExpandPlaceholders
-StringExpandPlaceholders: ; 0x0200B7B8
- push {r3-r7, lr}
- add r7, r0, #0x0
- add r6, r1, #0x0
- add r0, r2, #0x0
- bl String_c_str
- add r5, r0, #0x0
- add r0, r6, #0x0
- bl StringSetEmpty
- ldrh r1, [r5, #0x0]
- ldr r0, _0200B844 ; =0x0000FFFF
- cmp r1, r0
- beq _0200B840
-_0200B7D4:
- ldr r0, _0200B848 ; =0x0000FFFE
- cmp r1, r0
- bne _0200B82E
- add r0, r5, #0x0
- bl MsgArray_ControlCodeIsStrVar
- cmp r0, #0x0
- beq _0200B810
- add r0, r5, #0x0
- mov r1, #0x0
- bl MsgArray_ControlCodeGetField
- add r4, r0, #0x0
- ldr r0, [r7, #0x0]
- cmp r4, r0
- blo _0200B7F8
- bl ErrorHandling
-_0200B7F8:
- ldr r2, [r7, #0x8]
- lsl r1, r4, #0x3
- add r1, r2, r1
- ldr r1, [r1, #0x4]
- add r0, r6, #0x0
- bl FUN_02022048
- add r0, r5, #0x0
- bl MsgArray_SkipControlCode
- add r5, r0, #0x0
- b _0200B838
-_0200B810:
- add r0, r5, #0x0
- add r4, r5, #0x0
- bl MsgArray_SkipControlCode
- add r5, r0, #0x0
- cmp r4, r5
- bhs _0200B838
-_0200B81E:
- ldrh r1, [r4, #0x0]
- add r0, r6, #0x0
- add r4, r4, #0x2
- bl StrAddChar
- cmp r4, r5
- blo _0200B81E
- b _0200B838
-_0200B82E:
- ldrh r1, [r5, #0x0]
- add r0, r6, #0x0
- add r5, r5, #0x2
- bl StrAddChar
-_0200B838:
- ldrh r1, [r5, #0x0]
- ldr r0, _0200B844 ; =0x0000FFFF
- cmp r1, r0
- bne _0200B7D4
-_0200B840:
- pop {r3-r7, pc}
- nop
-_0200B844: .word 0x0000FFFF
-_0200B848: .word 0x0000FFFE
-
- thumb_func_start FUN_0200B84C
-FUN_0200B84C: ; 0x0200B84C
- push {r4-r6, lr}
- add r5, r0, #0x0
- ldr r0, [r5, #0x0]
- mov r6, #0x0
- cmp r0, #0x0
- bls _0200B86E
- add r4, r6, #0x0
-_0200B85A:
- ldr r0, [r5, #0x8]
- add r0, r0, r4
- ldr r0, [r0, #0x4]
- bl StringSetEmpty
- ldr r0, [r5, #0x0]
- add r6, r6, #0x1
- add r4, #0x8
- cmp r6, r0
- blo _0200B85A
-_0200B86E:
- pop {r4-r6, pc}
-
- thumb_func_start FUN_0200B870
-FUN_0200B870: ; 0x0200B870
- push {r4-r7, lr}
- sub sp, #0x2c
- add r4, r3, #0x0
- add r5, r0, #0x0
- add r6, r1, #0x0
- add r0, r4, #0x0
- mov r1, #0x2c
- str r2, [sp, #0x4]
- bl AllocFromHeap
- str r0, [sp, #0x8]
- cmp r0, #0x0
- beq _0200B98A
- ldr r3, [sp, #0x8]
- mov r0, #0xe
- mov r1, #0x4
- mov r2, #0x1
- add r3, r3, #0x4
- str r4, [sp, #0x0]
- bl FUN_02006BB0
- ldr r1, [sp, #0x8]
- mov r3, #0x0
- str r0, [r1, #0x0]
- add r0, r1, #0x0
- ldr r0, [r0, #0x4]
- ldr r4, [r0, #0x14]
- ldr r0, [r0, #0x10]
- cmp r0, #0x0
- bls _0200B984
- ldr r0, [sp, #0x4]
- ldr r1, [sp, #0x4]
- lsl r0, r0, #0x4
- orr r1, r0
- str r1, [sp, #0xc]
- add r1, r0, #0x0
- orr r1, r5
- str r1, [sp, #0x10]
- orr r0, r6
- str r0, [sp, #0x14]
- ldr r1, [sp, #0x4]
- lsl r0, r5, #0x4
- orr r1, r0
- str r1, [sp, #0x18]
- add r1, r5, #0x0
- orr r1, r0
- str r1, [sp, #0x1c]
- orr r0, r6
- lsl r2, r6, #0x4
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- str r0, [sp, #0x20]
- ldr r0, [sp, #0x1c]
- ldr r1, [sp, #0x4]
- add r7, r2, #0x0
- orr r7, r1
- add r1, r2, #0x0
- orr r1, r5
- lsl r1, r1, #0x18
- lsr r1, r1, #0x18
- orr r2, r6
- str r1, [sp, #0x28]
- lsl r1, r7, #0x18
- lsl r0, r0, #0x18
- lsr r7, r0, #0x18
- ldr r0, [sp, #0x18]
- lsl r2, r2, #0x18
- lsr r2, r2, #0x18
- lsr r1, r1, #0x18
- lsl r0, r0, #0x18
- mov r12, r2
- str r1, [sp, #0x24]
- lsr r6, r0, #0x18
- ldr r0, [sp, #0x14]
- ldr r1, [sp, #0x10]
- ldr r2, [sp, #0xc]
- lsl r0, r0, #0x18
- lsl r1, r1, #0x18
- lsl r2, r2, #0x18
- lsr r0, r0, #0x18
- lsr r1, r1, #0x18
- lsr r2, r2, #0x18
-_0200B914:
- ldrb r5, [r4, r3]
- cmp r5, #0x12
- bgt _0200B93C
- bge _0200B962
- cmp r5, #0x10
- bgt _0200B936
- bge _0200B95A
- cmp r5, #0x2
- bgt _0200B978
- cmp r5, #0x0
- blt _0200B978
- beq _0200B94E
- cmp r5, #0x1
- beq _0200B952
- cmp r5, #0x2
- beq _0200B956
- b _0200B978
-_0200B936:
- cmp r5, #0x11
- beq _0200B95E
- b _0200B978
-_0200B93C:
- cmp r5, #0x21
- bgt _0200B948
- bge _0200B96E
- cmp r5, #0x20
- beq _0200B968
- b _0200B978
-_0200B948:
- cmp r5, #0x22
- beq _0200B974
- b _0200B978
-_0200B94E:
- strb r2, [r4, r3]
- b _0200B978
-_0200B952:
- strb r1, [r4, r3]
- b _0200B978
-_0200B956:
- strb r0, [r4, r3]
- b _0200B978
-_0200B95A:
- strb r6, [r4, r3]
- b _0200B978
-_0200B95E:
- strb r7, [r4, r3]
- b _0200B978
-_0200B962:
- ldr r5, [sp, #0x20]
- strb r5, [r4, r3]
- b _0200B978
-_0200B968:
- ldr r5, [sp, #0x24]
- strb r5, [r4, r3]
- b _0200B978
-_0200B96E:
- ldr r5, [sp, #0x28]
- strb r5, [r4, r3]
- b _0200B978
-_0200B974:
- mov r5, r12
- strb r5, [r4, r3]
-_0200B978:
- ldr r5, [sp, #0x8]
- add r3, r3, #0x1
- ldr r5, [r5, #0x4]
- ldr r5, [r5, #0x10]
- cmp r3, r5
- blo _0200B914
-_0200B984:
- ldr r1, [sp, #0x4]
- ldr r0, [sp, #0x8]
- str r1, [r0, #0x28]
-_0200B98A:
- ldr r0, [sp, #0x8]
- add sp, #0x2c
- pop {r4-r7, pc}
-
- thumb_func_start FUN_0200B990
-FUN_0200B990: ; 0x0200B990
- push {r4, lr}
- add r4, r0, #0x0
- beq _0200B9A6
- ldr r0, [r4, #0x0]
- cmp r0, #0x0
- beq _0200B9A0
- bl FreeToHeap
-_0200B9A0:
- add r0, r4, #0x0
- bl FreeToHeap
-_0200B9A6:
- pop {r4, pc}
-
- thumb_func_start FUN_0200B9A8
-FUN_0200B9A8: ; 0x0200B9A8
- push {r3-r5, lr}
- sub sp, #0x18
- add r4, r0, #0x0
- ldr r0, _0200B9E4 ; =UNK_020ECE6C + 2
- lsl r5, r1, #0x2
- ldrh r1, [r0, r5]
- lsl r3, r3, #0x10
- mov r0, #0x8
- str r1, [sp, #0x0]
- str r0, [sp, #0x4]
- lsr r3, r3, #0x10
- str r3, [sp, #0x8]
- ldr r3, [sp, #0x28]
- lsl r3, r3, #0x10
- lsr r3, r3, #0x10
- str r3, [sp, #0xc]
- str r1, [sp, #0x10]
- str r0, [sp, #0x14]
- ldr r1, [r4, #0x4]
- add r0, r2, #0x0
- ldr r2, [r1, #0x14]
- ldr r1, _0200B9E8 ; =UNK_020ECE6C
- ldrh r1, [r1, r5]
- add r1, r2, r1
- mov r2, #0x0
- add r3, r2, #0x0
- bl FUN_02019658
- add sp, #0x18
- pop {r3-r5, pc}
- .balign 4
-_0200B9E4: .word UNK_020ECE6C + 2
-_0200B9E8: .word UNK_020ECE6C
-
- thumb_func_start FUN_0200B9EC
-FUN_0200B9EC: ; 0x0200B9EC
- push {r3-r7, lr}
- sub sp, #0x18
- add r6, r0, #0x0
- ldr r0, [sp, #0x30]
- add r4, r2, #0x0
- str r0, [sp, #0x30]
- add r0, r6, #0x0
- add r2, r3, #0x0
- add r0, #0x8
- add r3, r4, #0x0
- ldr r5, [sp, #0x34]
- ldr r7, [sp, #0x38]
- bl ConvertUIntToDecimalString
- ldrh r1, [r6, #0x8]
- ldr r0, _0200BA74 ; =0x0000FFFF
- cmp r1, r0
- beq _0200BA6E
- lsl r0, r7, #0x10
- add r4, r6, #0x0
- lsr r7, r0, #0x10
-_0200BA16:
- ldrh r2, [r4, #0x8]
- cmp r2, #0xa2
- blo _0200BA4A
- cmp r2, #0xab
- bhi _0200BA4A
- mov r0, #0x8
- str r0, [sp, #0x0]
- str r0, [sp, #0x4]
- lsl r0, r5, #0x10
- lsr r0, r0, #0x10
- str r0, [sp, #0x8]
- str r7, [sp, #0xc]
- mov r0, #0x8
- str r0, [sp, #0x10]
- str r0, [sp, #0x14]
- ldr r1, [r6, #0x4]
- sub r2, #0xa2
- ldr r1, [r1, #0x14]
- lsl r2, r2, #0x5
- add r1, r1, r2
- mov r2, #0x0
- ldr r0, [sp, #0x30]
- add r3, r2, #0x0
- bl FUN_02019658
- b _0200BA62
-_0200BA4A:
- mov r0, #0x8
- str r0, [sp, #0x0]
- str r0, [sp, #0x4]
- ldr r1, [r6, #0x28]
- lsl r2, r5, #0x10
- lsl r1, r1, #0x18
- ldr r0, [sp, #0x30]
- lsr r1, r1, #0x18
- lsr r2, r2, #0x10
- add r3, r7, #0x0
- bl FUN_020196F4
-_0200BA62:
- add r4, r4, #0x2
- ldrh r1, [r4, #0x8]
- ldr r0, _0200BA74 ; =0x0000FFFF
- add r5, #0x8
- cmp r1, r0
- bne _0200BA16
-_0200BA6E:
- add sp, #0x18
- pop {r3-r7, pc}
- nop
-_0200BA74: .word 0x0000FFFF
diff --git a/arm9/asm/unk_02013724.s b/arm9/asm/unk_02013724.s
index 1cbd1070..b36fa660 100644
--- a/arm9/asm/unk_02013724.s
+++ b/arm9/asm/unk_02013724.s
@@ -135,7 +135,7 @@ FUN_020137D4: ; 0x020137D4
str r0, [sp, #0x0]
add r0, r1, #0x0
str r1, [sp, #0x4]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r5, [sp, #0x0]
ldr r7, _02013838 ; =0x0000FFFF
add r6, r0, #0x0
@@ -172,7 +172,7 @@ _02013800:
add r0, r5, #0x0
bl DestroyMsgData
add r0, r6, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0x0
add sp, #0x8
pop {r3-r7, pc}
diff --git a/arm9/asm/unk_020139D8.s b/arm9/asm/unk_020139D8.s
index 45d3119d..afc8a077 100644
--- a/arm9/asm/unk_020139D8.s
+++ b/arm9/asm/unk_020139D8.s
@@ -66,8 +66,8 @@ UNK_020ED5C0: ; 0x020ED5C0
.global UNK_020ED5D6
UNK_020ED5D6: ; 0x020ED5D6
- .byte 0xF0, 0x01, 0xD4, 0x01, 0x12, 0x00, 0x7C, 0x00, 0x26, 0x00, 0x26, 0x00, 0x6B, 0x00, 0x68, 0x00
- .byte 0x2F, 0x00, 0x20, 0x00, 0x17, 0x00
+ .short 0x01F0, 0x01D4, 0x0012, 0x007C, 0x0026, 0x0026, 0x006B, 0x0068
+ .short 0x002F, 0x0020, 0x0017
.global UNK_020ED5EC
UNK_020ED5EC: ; 0x020ED5EC
diff --git a/arm9/asm/unk_02015EA0.s b/arm9/asm/unk_02015EA0.s
deleted file mode 100644
index 047d2a6b..00000000
--- a/arm9/asm/unk_02015EA0.s
+++ /dev/null
@@ -1,1099 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .rodata
-
- .global UNK_020EDB10
-UNK_020EDB10: ; 0x020EDB10
- .byte 0x00, 0xD0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00
- .byte 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD8, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00
-
- .section .bss
-
- .global gMain
-gMain: ; 0x021C48B8
- .space 0x40
-
- .global UNK_021C48F8
-UNK_021C48F8: ; 0x021C48F8
- .space 0x20
-
- .global gUnk021C4918
-gUnk021C4918: ; 0x021C4918
- .space 0x10
-
- .global UNK_021C4928
-UNK_021C4928: ; 0x021C4928
- .space 0x4
-
- .global UNK_021C492C
-UNK_021C492C: ; 0x021C492C
- .space 0x3f4
-
- .global UNK_021C4D20
-UNK_021C4D20: ; 0x021C4D20
- .space 0x8
-
- .text
-
- thumb_func_start FUN_02015EA0
-FUN_02015EA0: ; 0x02015EA0
- push {r3, lr}
- ldr r3, _02015EC8 ; =0x027E0000
- ldr r1, _02015ECC ; =0x00003FF8
- mov r0, #0x1
- ldr r2, [r3, r1]
- orr r0, r2
- str r0, [r3, r1]
- mov r0, #0x3
- bl MI_WaitDma
- ldr r0, _02015ED0 ; =gMain
- ldr r0, [r0, #0x1c]
- bl FUN_0201B5CC
- ldr r0, _02015ED0 ; =gMain
- ldr r1, [r0, #0x30]
- add r1, r1, #0x1
- str r1, [r0, #0x30]
- pop {r3, pc}
- nop
-_02015EC8: .word 0x027E0000
-_02015ECC: .word 0x00003FF8
-_02015ED0: .word gMain
-
- thumb_func_start FUN_02015ED4
-FUN_02015ED4: ; 0x02015ED4
- ldr r3, _02015EE8 ; =0x027E0000
- ldr r1, _02015EEC ; =0x00003FF8
- mov r0, #0x1
- ldr r2, [r3, r1]
- orr r0, r2
- str r0, [r3, r1]
- ldr r3, _02015EF0 ; =MI_WaitDma
- mov r0, #0x3
- bx r3
- nop
-_02015EE8: .word 0x027E0000
-_02015EEC: .word 0x00003FF8
-_02015EF0: .word MI_WaitDma
-
- thumb_func_start FUN_02015EF4
-FUN_02015EF4: ; 0x02015EF4
- push {r3, lr}
- mov r0, #0x1
- bl OS_DisableIrqMask
- ldr r1, _02015F0C ; =FUN_02015ED4
- mov r0, #0x1
- bl OS_SetIrqFunction
- mov r0, #0x1
- bl OS_EnableIrqMask
- pop {r3, pc}
- .balign 4
-_02015F0C: .word FUN_02015ED4
-
- thumb_func_start FUN_02015F10
-FUN_02015F10: ; 0x02015F10
- ldr r2, _02015F18 ; =gMain
- str r0, [r2, #0x0]
- str r1, [r2, #0x4]
- bx lr
- .balign 4
-_02015F18: .word gMain
-
- thumb_func_start FUN_02015F1C
-FUN_02015F1C: ; 0x02015F1C
- push {r3, lr}
- mov r0, #0x0
- bl FUN_02015F80
- ldr r0, _02015F30 ; =gMain
- mov r1, #0x0
- str r1, [r0, #0x8]
- str r1, [r0, #0xc]
- pop {r3, pc}
- nop
-_02015F30: .word gMain
-
- thumb_func_start FUN_02015F34
-FUN_02015F34: ; 0x02015F34
- push {r3, lr}
- cmp r0, #0x0
- bne _02015F4C
- mov r0, #0x0
- bl FUN_02015F80
- ldr r0, _02015F68 ; =gMain
- mov r1, #0x0
- str r1, [r0, #0x8]
- str r1, [r0, #0xc]
- mov r0, #0x1
- pop {r3, pc}
-_02015F4C:
- ldr r2, _02015F68 ; =gMain
- ldr r3, [r2, #0x8]
- cmp r3, #0x0
- bne _02015F62
- str r1, [r2, #0xc]
- str r0, [r2, #0x8]
- mov r0, #0x1
- bl FUN_02015F80
- mov r0, #0x1
- pop {r3, pc}
-_02015F62:
- mov r0, #0x0
- pop {r3, pc}
- nop
-_02015F68: .word gMain
-
- thumb_func_start FUN_02015F6C
-FUN_02015F6C: ; 0x02015F6C
- push {r3, lr}
- ldr r0, _02015F7C ; =gMain
- ldr r1, [r0, #0x8]
- cmp r1, #0x0
- beq _02015F7A
- ldr r0, [r0, #0xc]
- blx r1
-_02015F7A:
- pop {r3, pc}
- .balign 4
-_02015F7C: .word gMain
-
- thumb_func_start FUN_02015F80
-FUN_02015F80: ; 0x02015F80
- push {r3, lr}
- ldr r2, _02015FC0 ; =0x04000208
- ldrh r1, [r2, #0x0]
- mov r1, #0x0
- strh r1, [r2, #0x0]
- cmp r0, #0x0
- bne _02015F9E
- ldr r0, [r2, #0x8]
- mov r0, #0x2
- bl OS_DisableIrqMask
- mov r0, #0x0
- bl GX_HBlankIntr
- b _02015FB4
-_02015F9E:
- ldr r0, [r2, #0x8]
- ldr r1, _02015FC4 ; =FUN_02015F6C
- mov r0, #0x2
- bl OS_SetIrqFunction
- mov r0, #0x2
- bl OS_EnableIrqMask
- mov r0, #0x1
- bl GX_HBlankIntr
-_02015FB4:
- ldr r1, _02015FC0 ; =0x04000208
- ldrh r0, [r1, #0x0]
- mov r0, #0x1
- strh r0, [r1, #0x0]
- pop {r3, pc}
- nop
-_02015FC0: .word 0x04000208
-_02015FC4: .word FUN_02015F6C
-
- thumb_func_start FUN_02015FC8
-FUN_02015FC8: ; 0x02015FC8
- push {r3, lr}
- sub sp, #0x30
- add r0, sp, #0x10
- bl OS_GetLowEntropyData
- add r0, sp, #0x0
- add r1, sp, #0x10
- mov r2, #0x20
- bl MATH_CalcMD5
- mov r3, #0x0
- add r1, r3, #0x0
- add r2, sp, #0x0
-_02015FE2:
- ldrb r0, [r2, #0x0]
- add r1, r1, #0x1
- add r2, r2, #0x1
- add r3, r3, r0
- cmp r1, #0x10
- blo _02015FE2
- lsl r0, r3, #0x18
- lsr r3, r0, #0x18
- mov r0, #0x3
- tst r0, r3
- beq _02016002
- mov r0, #0x3
-_02015FFA:
- add r3, r3, #0x1
- add r1, r3, #0x0
- tst r1, r0
- bne _02015FFA
-_02016002:
- ldr r0, _02016010 ; =UNK_020EDB10
- mov r1, #0x4
- mov r2, #0x5c
- bl FUN_020166C8
- add sp, #0x30
- pop {r3, pc}
- .balign 4
-_02016010: .word UNK_020EDB10
-
- thumb_func_start InitSystemForTheGame
-InitSystemForTheGame: ; 0x02016014
- push {r3-r5, lr}
- bl OS_Init
- bl FX_Init
- ldr r2, _02016124 ; =0x04000304
- ldr r0, _02016128 ; =0xFFFFFDF1
- ldrh r1, [r2, #0x0]
- and r1, r0
- ldr r0, _0201612C ; =0x0000020E
- orr r0, r1
- strh r0, [r2, #0x0]
- bl GX_Init
- bl OS_InitTick
- bl FUN_02015FC8
- mov r0, #0xa0
- bl FUN_0201B578
- add r1, r0, #0x0
- mov r0, #0x0
- mov r2, #0x4
- bl OS_AllocFromArenaLo
- add r1, r0, #0x0
- mov r0, #0xa0
- bl FUN_0201B580
- ldr r1, _02016130 ; =gMain
- str r0, [r1, #0x18]
- mov r0, #0x10
- bl FUN_0201B578
- add r1, r0, #0x0
- mov r0, #0x0
- mov r2, #0x4
- bl OS_AllocFromArenaLo
- add r1, r0, #0x0
- mov r0, #0x10
- bl FUN_0201B580
- ldr r1, _02016130 ; =gMain
- str r0, [r1, #0x1c]
- mov r0, #0x20
- bl FUN_0201B578
- add r1, r0, #0x0
- mov r0, #0x0
- mov r2, #0x4
- bl OS_AllocFromArenaLo
- add r1, r0, #0x0
- mov r0, #0x20
- bl FUN_0201B580
- ldr r1, _02016130 ; =gMain
- str r0, [r1, #0x20]
- mov r0, #0x4
- bl FUN_0201B578
- add r1, r0, #0x0
- mov r0, #0x0
- mov r2, #0x4
- bl OS_AllocFromArenaLo
- add r1, r0, #0x0
- mov r0, #0x4
- bl FUN_0201B580
- ldr r1, _02016130 ; =gMain
- str r0, [r1, #0x24]
- bl GX_DispOff
- ldr r2, _02016134 ; =0x04001000
- ldr r0, _02016138 ; =0xFFFEFFFF
- ldr r1, [r2, #0x0]
- and r0, r1
- str r0, [r2, #0x0]
- ldr r2, _02016124 ; =0x04000304
- ldrh r1, [r2, #0x0]
- lsr r0, r2, #0xb
- orr r0, r1
- strh r0, [r2, #0x0]
- ldr r1, _0201613C ; =FUN_02015EA0
- mov r0, #0x1
- bl OS_SetIrqFunction
- mov r0, #0x1
- bl OS_EnableIrqMask
- mov r0, #0x1
- lsl r0, r0, #0x12
- bl OS_EnableIrqMask
- ldr r1, _02016140 ; =0x04000208
- ldrh r0, [r1, #0x0]
- mov r0, #0x1
- strh r0, [r1, #0x0]
- bl GX_VBlankIntr
- mov r0, #0x1
- bl FS_Init
- bl FUN_02022450
- mov r0, #0x0
- add r1, r0, #0x0
- bl FS_TryLoadTable
- add r4, r0, #0x0
- mov r0, #0x0
- add r1, r4, #0x0
- mov r2, #0x4
- bl OS_AllocFromArenaLo
- add r5, r0, #0x0
- bne _02016108
- bl ErrorHandling
-_02016108:
- add r0, r5, #0x0
- add r1, r4, #0x0
- bl FS_TryLoadTable
- ldr r0, _02016130 ; =gMain
- mov r1, #0x0
- str r1, [r0, #0x0]
- str r1, [r0, #0x8]
- str r1, [r0, #0x10]
- str r1, [r0, #0x14]
- str r1, [r0, #0x2c]
- ldr r0, _02016144 ; =gUnk021C4918
- strb r1, [r0, #0x5]
- pop {r3-r5, pc}
- .balign 4
-_02016124: .word 0x04000304
-_02016128: .word 0xFFFFFDF1
-_0201612C: .word 0x0000020E
-_02016130: .word gMain
-_02016134: .word 0x04001000
-_02016138: .word 0xFFFEFFFF
-_0201613C: .word FUN_02015EA0
-_02016140: .word 0x04000208
-_02016144: .word gUnk021C4918
-
- thumb_func_start InitGraphicMemory
-InitGraphicMemory: ; 0x02016148
- push {r3, lr}
- ldr r0, _02016198 ; =0x000001FF
- bl GX_SetBankForLCDC
- mov r1, #0x1a
- mov r2, #0x29
- mov r0, #0x0
- lsl r1, r1, #0x16
- lsl r2, r2, #0xe
- bl MIi_CpuClearFast
- bl GX_DisableBankForLCDC
- mov r1, #0x7
- mov r2, #0x1
- mov r0, #0xc0
- lsl r1, r1, #0x18
- lsl r2, r2, #0xa
- bl MIi_CpuClearFast
- mov r2, #0x1
- ldr r1, _0201619C ; =0x07000400
- mov r0, #0xc0
- lsl r2, r2, #0xa
- bl MIi_CpuClearFast
- mov r1, #0x5
- mov r2, #0x1
- mov r0, #0x0
- lsl r1, r1, #0x18
- lsl r2, r2, #0xa
- bl MIi_CpuClearFast
- mov r2, #0x1
- ldr r1, _020161A0 ; =0x05000400
- mov r0, #0x0
- lsl r2, r2, #0xa
- bl MIi_CpuClearFast
- pop {r3, pc}
- .balign 4
-_02016198: .word 0x000001FF
-_0201619C: .word 0x07000400
-_020161A0: .word 0x05000400
-
- thumb_func_start FUN_020161A4
-FUN_020161A4: ; 0x020161A4
- push {r4-r6, lr}
- sub sp, #0x48
- add r6, r0, #0x0
- add r4, r1, #0x0
- add r0, sp, #0x0
- bl FS_InitFile
- add r0, sp, #0x0
- add r1, r4, #0x0
- bl FS_OpenFile
- cmp r0, #0x0
- beq _020161F0
- ldr r1, [sp, #0x28]
- ldr r0, [sp, #0x24]
- sub r5, r1, r0
- add r0, r6, #0x0
- add r1, r5, #0x0
- bl AllocFromHeap
- add r4, r0, #0x0
- beq _020161E8
- add r0, sp, #0x0
- add r1, r4, #0x0
- add r2, r5, #0x0
- bl FS_ReadFile
- cmp r5, r0
- beq _020161E8
- add r0, r6, #0x0
- add r1, r4, #0x0
- bl FUN_02016A8C
- mov r4, #0x0
-_020161E8:
- add r0, sp, #0x0
- bl FS_CloseFile
- b _020161F2
-_020161F0:
- mov r4, #0x0
-_020161F2:
- add r0, r4, #0x0
- add sp, #0x48
- pop {r4-r6, pc}
-
- thumb_func_start FUN_020161F8
-FUN_020161F8: ; 0x020161F8
- push {r3-r5, lr}
- sub sp, #0x48
- add r5, r0, #0x0
- add r0, sp, #0x0
- add r4, r1, #0x0
- bl FS_InitFile
- add r0, sp, #0x0
- add r1, r5, #0x0
- bl FS_OpenFile
- cmp r0, #0x0
- beq _0201622A
- ldr r1, [sp, #0x28]
- ldr r0, [sp, #0x24]
- sub r2, r1, r0
- ldr r1, [r4, #0x0]
- cmp r1, #0x0
- beq _02016224
- add r0, sp, #0x0
- bl FS_ReadFile
-_02016224:
- add r0, sp, #0x0
- bl FS_CloseFile
-_0201622A:
- add sp, #0x48
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_02016230
-FUN_02016230: ; 0x02016230
- push {r3-r7, lr}
- sub sp, #0x8
- str r0, [sp, #0x0]
- bl strlen
- lsl r0, r0, #0x10
- lsr r3, r0, #0x10
- lsr r2, r3, #0x1f
- lsl r1, r3, #0x1e
- sub r1, r1, r2
- mov r0, #0x1e
- ror r1, r0
- add r0, r2, r1
- beq _02016258
- lsr r0, r3, #0x2
- add r0, r0, #0x1
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- str r0, [sp, #0x4]
- b _0201625E
-_02016258:
- lsl r0, r3, #0xe
- lsr r0, r0, #0x10
- str r0, [sp, #0x4]
-_0201625E:
- ldr r0, [sp, #0x4]
- mov r7, #0x0
- mov r12, r7
- cmp r0, #0x0
- ble _0201629A
- add r6, r7, #0x0
- add r4, r7, #0x0
-_0201626C:
- ldr r2, [sp, #0x0]
- mov r1, #0x0
- add r0, r1, #0x0
- add r2, r2, r6
- add r3, r1, #0x0
-_02016276:
- ldrsb r5, [r2, r4]
- cmp r5, #0x0
- beq _0201628A
- lsl r5, r3
- add r0, r0, #0x1
- orr r1, r5
- add r2, r2, #0x1
- add r3, #0x8
- cmp r0, #0x4
- blt _02016276
-_0201628A:
- mov r0, r12
- eor r7, r1
- add r1, r0, #0x1
- ldr r0, [sp, #0x4]
- add r6, r6, #0x4
- mov r12, r1
- cmp r1, r0
- blt _0201626C
-_0201629A:
- add r0, r7, #0x0
- add sp, #0x8
- pop {r3-r7, pc}
-
- thumb_func_start FUN_020162A0
-FUN_020162A0: ; 0x020162A0
- ldr r3, _020162C4 ; =UNK_021C4928
- mov r2, #0x0
-_020162A4:
- ldr r1, [r3, #0x4]
- cmp r0, r1
- bne _020162B4
- ldr r1, [r3, #0x0]
- cmp r1, #0x0
- beq _020162B4
- add r0, r2, #0x0
- bx lr
-_020162B4:
- add r2, r2, #0x1
- add r3, #0x8
- cmp r2, #0x80
- blt _020162A4
- mov r0, #0x0
- mvn r0, r0
- bx lr
- nop
-_020162C4: .word UNK_021C4928
-
- thumb_func_start FUN_020162C8
-FUN_020162C8: ; 0x020162C8
- push {r3-r4}
- ldr r3, _020162F4 ; =UNK_021C4928
- mov r4, #0x0
-_020162CE:
- ldr r2, [r3, #0x0]
- cmp r2, #0x0
- bne _020162E4
- ldr r2, _020162F4 ; =UNK_021C4928
- lsl r3, r4, #0x3
- str r0, [r2, r3]
- ldr r0, _020162F8 ; =UNK_021C492C
- str r1, [r0, r3]
- add r0, r4, #0x0
- pop {r3-r4}
- bx lr
-_020162E4:
- add r4, r4, #0x1
- add r3, #0x8
- cmp r4, #0x80
- blt _020162CE
- mov r0, #0x0
- mvn r0, r0
- pop {r3-r4}
- bx lr
- .balign 4
-_020162F4: .word UNK_021C4928
-_020162F8: .word UNK_021C492C
-
- thumb_func_start FUN_020162FC
-FUN_020162FC: ; 0x020162FC
- push {r3-r7, lr}
- mov r6, #0x0
- ldr r5, _02016320 ; =UNK_021C4D20
- mov r4, #0x7f
- sub r7, r6, #0x1
-_02016306:
- ldr r0, [r5, #0x0]
- cmp r0, #0x0
- beq _02016314
- bl FreeToHeap
- str r6, [r5, #0x0]
- str r6, [r5, #0x4]
-_02016314:
- sub r4, r4, #0x1
- sub r5, #0x8
- cmp r4, r7
- bgt _02016306
- pop {r3-r7, pc}
- nop
-_02016320: .word UNK_021C4D20
-
- thumb_func_start FUN_02016324
-FUN_02016324: ; 0x02016324
- push {r3-r7, lr}
- sub sp, #0x68
- add r2, r0, #0x0
- mov r5, #0x0
- ldrsb r0, [r2, r5]
- add r4, r1, #0x0
- cmp r0, #0x21
- add r0, sp, #0x0
- bne _02016340
- add r1, r2, #0x1
- bl strcpy
- mov r5, #0x1
- b _02016346
-_02016340:
- add r1, r2, #0x0
- bl strcpy
-_02016346:
- add r0, sp, #0x0
- bl FUN_02016230
- add r7, r0, #0x0
- bl FUN_020162A0
- cmp r0, #0x0
- blt _02016362
- cmp r5, #0x0
- bne _02016362
- lsl r1, r0, #0x3
- ldr r0, _020163B8 ; =UNK_021C4928
- ldr r4, [r0, r1]
- b _020163B2
-_02016362:
- add r0, sp, #0x20
- bl FS_InitFile
- add r0, sp, #0x20
- add r1, sp, #0x0
- bl FS_OpenFile
- cmp r0, #0x0
- beq _020163B0
- ldr r1, [sp, #0x48]
- ldr r0, [sp, #0x44]
- sub r6, r1, r0
- add r0, r4, #0x0
- add r1, r6, #0x0
- bl AllocFromHeap
- add r4, r0, #0x0
- beq _0201639C
- add r0, sp, #0x20
- add r1, r4, #0x0
- add r2, r6, #0x0
- bl FS_ReadFile
- cmp r6, r0
- beq _0201639C
- add r0, r4, #0x0
- bl FreeToHeap
- mov r4, #0x0
-_0201639C:
- add r0, sp, #0x20
- bl FS_CloseFile
- cmp r5, #0x0
- bne _020163B2
- add r0, r4, #0x0
- add r1, r7, #0x0
- bl FUN_020162C8
- b _020163B2
-_020163B0:
- mov r4, #0x0
-_020163B2:
- add r0, r4, #0x0
- add sp, #0x68
- pop {r3-r7, pc}
- .balign 4
-_020163B8: .word UNK_021C4928
-
- thumb_func_start FUN_020163BC
-FUN_020163BC: ; 0x020163BC
- push {r3, lr}
- sub sp, #0x8
- ldr r0, _0201641C ; =gMain
- mov r2, #0x0
- str r2, [r0, #0x34]
- str r2, [r0, #0x38]
- str r2, [r0, #0x3c]
- str r2, [r0, #0x40]
- str r2, [r0, #0x44]
- str r2, [r0, #0x48]
- str r2, [r0, #0x4c]
- str r2, [r0, #0x50]
- mov r1, #0x8
- str r1, [r0, #0x54]
- mov r1, #0xf
- str r1, [r0, #0x58]
- ldr r0, _02016420 ; =UNK_021C48F8
- strh r2, [r0, #0x1c]
- strh r2, [r0, #0x1e]
- strh r2, [r0, #0x20]
- strh r2, [r0, #0x22]
- ldr r0, _02016424 ; =gUnk021C4918
- strb r2, [r0, #0x4]
- bl TP_Init
- add r0, sp, #0x0
- bl TP_GetUserInfo
- cmp r0, #0x1
- add r0, sp, #0x0
- bne _02016402
- bl TP_SetCalibrateParam
- add sp, #0x8
- pop {r3, pc}
-_02016402:
- ldr r1, _02016428 ; =0x000002AE
- strh r1, [r0, #0x0]
- ldr r1, _0201642C ; =0x0000058C
- strh r1, [r0, #0x2]
- ldr r1, _02016430 ; =0x00000E25
- strh r1, [r0, #0x4]
- ldr r1, _02016434 ; =0x00001208
- strh r1, [r0, #0x6]
- add r0, sp, #0x0
- bl TP_SetCalibrateParam
- add sp, #0x8
- pop {r3, pc}
- .balign 4
-_0201641C: .word gMain
-_02016420: .word UNK_021C48F8
-_02016424: .word gUnk021C4918
-_02016428: .word 0x000002AE
-_0201642C: .word 0x0000058C
-_02016430: .word 0x00000E25
-_02016434: .word 0x00001208
-
- thumb_func_start FUN_02016438
-FUN_02016438: ; 0x02016438
- ldr r1, _02016440 ; =gUnk021C4918
- strb r0, [r1, #0x6]
- bx lr
- nop
-_02016440: .word gUnk021C4918
-
- thumb_func_start FUN_02016444
-FUN_02016444: ; 0x02016444
- ldr r1, _02016450 ; =gUnk021C4918
- ldrb r2, [r1, #0x7]
- orr r0, r2
- strb r0, [r1, #0x7]
- bx lr
- nop
-_02016450: .word gUnk021C4918
-
- thumb_func_start FUN_02016454
-FUN_02016454: ; 0x02016454
- ldr r1, _02016460 ; =gUnk021C4918
- mvn r0, r0
- ldrb r2, [r1, #0x7]
- and r0, r2
- strb r0, [r1, #0x7]
- bx lr
- .balign 4
-_02016460: .word gUnk021C4918
-
- thumb_func_start FUN_02016464
-FUN_02016464: ; 0x02016464
- push {r4, lr}
- sub sp, #0x10
- ldr r2, _02016550 ; =0x027FFFA8
- mov r0, #0x2
- ldrh r1, [r2, #0x0]
- lsl r0, r0, #0xe
- and r0, r1
- asr r0, r0, #0xf
- beq _0201648A
- ldr r0, _02016554 ; =gMain
- mov r1, #0x0
- str r1, [r0, #0x48]
- str r1, [r0, #0x44]
- str r1, [r0, #0x4c]
- ldr r0, _02016558 ; =UNK_021C48F8
- add sp, #0x10
- strh r1, [r0, #0x20]
- strh r1, [r0, #0x22]
- pop {r4, pc}
-_0201648A:
- ldr r0, _0201655C ; =0x04000130
- ldrh r1, [r0, #0x0]
- ldrh r0, [r2, #0x0]
- orr r1, r0
- ldr r0, _02016560 ; =0x00002FFF
- eor r1, r0
- and r0, r1
- ldr r1, _02016554 ; =gMain
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- ldr r2, [r1, #0x38]
- add r3, r0, #0x0
- eor r3, r2
- and r3, r0
- str r3, [r1, #0x3c]
- str r3, [r1, #0x40]
- cmp r0, #0x0
- beq _020164C2
- cmp r2, r0
- bne _020164C2
- ldr r2, [r1, #0x50]
- sub r2, r2, #0x1
- str r2, [r1, #0x50]
- bne _020164C8
- str r0, [r1, #0x40]
- ldr r2, [r1, #0x54]
- str r2, [r1, #0x50]
- b _020164C8
-_020164C2:
- ldr r1, _02016554 ; =gMain
- ldr r2, [r1, #0x58]
- str r2, [r1, #0x50]
-_020164C8:
- ldr r1, _02016554 ; =gMain
- str r0, [r1, #0x38]
- ldr r2, [r1, #0x3c]
- str r2, [r1, #0x48]
- str r0, [r1, #0x44]
- ldr r0, [r1, #0x40]
- str r0, [r1, #0x4c]
- bl FUN_02016568
- ldr r0, _02016564 ; =gUnk021C4918
- ldrb r0, [r0, #0x4]
- cmp r0, #0x0
- bne _020164F4
- add r4, sp, #0x8
-_020164E4:
- bl TP_RequestSamplingAsync
- add r0, r4, #0x0
- bl TP_WaitRawResult
- cmp r0, #0x0
- bne _020164E4
- b _020164FA
-_020164F4:
- add r0, sp, #0x8
- bl TP_GetLatestRawPointInAuto
-_020164FA:
- add r0, sp, #0x0
- add r1, sp, #0x8
- bl TP_GetCalibratedPoint
- add r1, sp, #0x0
- ldrh r3, [r1, #0x6]
- cmp r3, #0x0
- bne _02016516
- ldrh r2, [r1, #0x0]
- ldr r0, _02016558 ; =UNK_021C48F8
- strh r2, [r0, #0x1c]
- ldrh r1, [r1, #0x2]
- strh r1, [r0, #0x1e]
- b _0201653A
-_02016516:
- ldr r0, _02016558 ; =UNK_021C48F8
- ldrh r2, [r0, #0x22]
- cmp r2, #0x0
- beq _02016536
- cmp r3, #0x1
- beq _0201652A
- cmp r3, #0x2
- beq _02016530
- cmp r3, #0x3
- b _0201653A
-_0201652A:
- ldrh r1, [r1, #0x2]
- strh r1, [r0, #0x1e]
- b _0201653A
-_02016530:
- ldrh r1, [r1, #0x0]
- strh r1, [r0, #0x1c]
- b _0201653A
-_02016536:
- mov r0, #0x0
- strh r0, [r1, #0x4]
-_0201653A:
- add r0, sp, #0x0
- ldrh r2, [r0, #0x4]
- ldr r0, _02016558 ; =UNK_021C48F8
- ldrh r1, [r0, #0x22]
- eor r1, r2
- and r1, r2
- strh r1, [r0, #0x20]
- strh r2, [r0, #0x22]
- add sp, #0x10
- pop {r4, pc}
- nop
-_02016550: .word 0x027FFFA8
-_02016554: .word gMain
-_02016558: .word UNK_021C48F8
-_0201655C: .word 0x04000130
-_02016560: .word 0x00002FFF
-_02016564: .word gUnk021C4918
-
- thumb_func_start FUN_02016568
-FUN_02016568: ; 0x02016568
- ldr r0, _02016690 ; =gMain
- ldr r1, [r0, #0x34]
- cmp r1, #0x3
- bls _02016572
- b _0201668C
-_02016572:
- add r1, r1, r1
- add r1, pc
- ldrh r1, [r1, #0x6]
- lsl r1, r1, #0x10
- asr r1, r1, #0x10
- add pc, r1
-_0201657E: ; jump table (using 16-bit offset)
- .short _0201668C - _0201657E - 2; case 0
- .short _02016586 - _0201657E - 2; case 1
- .short _020165BC - _0201657E - 2; case 2
- .short _02016642 - _0201657E - 2; case 3
-_02016586:
- ldr r2, [r0, #0x48]
- mov r1, #0x8
- add r3, r2, #0x0
- tst r3, r1
- beq _02016596
- lsl r1, r1, #0x7
- orr r1, r2
- str r1, [r0, #0x48]
-_02016596:
- ldr r1, _02016690 ; =gMain
- mov r0, #0x8
- ldr r2, [r1, #0x44]
- add r3, r2, #0x0
- tst r3, r0
- beq _020165A8
- lsl r0, r0, #0x7
- orr r0, r2
- str r0, [r1, #0x44]
-_020165A8:
- ldr r1, _02016690 ; =gMain
- mov r0, #0x8
- ldr r2, [r1, #0x4c]
- add r3, r2, #0x0
- tst r3, r0
- beq _0201668C
- lsl r0, r0, #0x7
- orr r0, r2
- str r0, [r1, #0x4c]
- bx lr
-_020165BC:
- ldr r3, [r0, #0x48]
- mov r0, #0x1
- lsl r0, r0, #0xa
- add r2, r3, #0x0
- mov r1, #0x0
- tst r2, r0
- beq _020165CE
- lsl r0, r0, #0x1
- orr r1, r0
-_020165CE:
- mov r0, #0x2
- lsl r0, r0, #0xa
- add r2, r3, #0x0
- tst r2, r0
- beq _020165DC
- lsr r0, r0, #0x1
- orr r1, r0
-_020165DC:
- ldr r2, _02016690 ; =gMain
- ldr r0, _02016694 ; =0x0000F3FF
- ldr r3, [r2, #0x48]
- and r0, r3
- orr r0, r1
- str r0, [r2, #0x48]
- ldr r3, [r2, #0x44]
- mov r1, #0x1
- lsl r1, r1, #0xa
- add r2, r3, #0x0
- mov r0, #0x0
- tst r2, r1
- beq _020165FA
- lsl r1, r1, #0x1
- orr r0, r1
-_020165FA:
- mov r1, #0x2
- lsl r1, r1, #0xa
- add r2, r3, #0x0
- tst r2, r1
- beq _02016608
- lsr r1, r1, #0x1
- orr r0, r1
-_02016608:
- ldr r2, _02016690 ; =gMain
- ldr r1, _02016694 ; =0x0000F3FF
- ldr r3, [r2, #0x44]
- and r1, r3
- orr r0, r1
- str r0, [r2, #0x44]
- ldr r3, [r2, #0x4c]
- mov r1, #0x1
- lsl r1, r1, #0xa
- add r2, r3, #0x0
- mov r0, #0x0
- tst r2, r1
- beq _02016626
- lsl r1, r1, #0x1
- orr r0, r1
-_02016626:
- mov r1, #0x2
- lsl r1, r1, #0xa
- add r2, r3, #0x0
- tst r2, r1
- beq _02016634
- lsr r1, r1, #0x1
- orr r0, r1
-_02016634:
- ldr r2, _02016690 ; =gMain
- ldr r1, _02016694 ; =0x0000F3FF
- ldr r3, [r2, #0x4c]
- and r1, r3
- orr r0, r1
- str r0, [r2, #0x4c]
- bx lr
-_02016642:
- mov r1, #0x2
- ldr r2, [r0, #0x48]
- lsl r1, r1, #0x8
- tst r1, r2
- beq _02016652
- mov r1, #0x1
- orr r1, r2
- str r1, [r0, #0x48]
-_02016652:
- ldr r1, _02016690 ; =gMain
- mov r0, #0x2
- ldr r2, [r1, #0x44]
- lsl r0, r0, #0x8
- tst r0, r2
- beq _02016664
- mov r0, #0x1
- orr r0, r2
- str r0, [r1, #0x44]
-_02016664:
- ldr r1, _02016690 ; =gMain
- mov r0, #0x2
- ldr r2, [r1, #0x4c]
- lsl r0, r0, #0x8
- tst r0, r2
- beq _02016676
- mov r0, #0x1
- orr r0, r2
- str r0, [r1, #0x4c]
-_02016676:
- ldr r1, _02016690 ; =gMain
- ldr r0, _02016698 ; =0x0000FCFF
- ldr r2, [r1, #0x48]
- and r2, r0
- str r2, [r1, #0x48]
- ldr r2, [r1, #0x44]
- and r2, r0
- str r2, [r1, #0x44]
- ldr r2, [r1, #0x4c]
- and r0, r2
- str r0, [r1, #0x4c]
-_0201668C:
- bx lr
- nop
-_02016690: .word gMain
-_02016694: .word 0x0000F3FF
-_02016698: .word 0x0000FCFF
-
- thumb_func_start FUN_0201669C
-FUN_0201669C: ; 0x0201669C
- ldr r2, _020166A4 ; =gMain
- str r0, [r2, #0x54]
- str r1, [r2, #0x58]
- bx lr
- .balign 4
-_020166A4: .word gMain
-
- thumb_func_start FUN_020166A8
-FUN_020166A8: ; 0x020166A8
- ldr r1, _020166B4 ; =gUnk021C4918
- ldrb r2, [r1, #0x8]
- orr r0, r2
- strb r0, [r1, #0x8]
- bx lr
- nop
-_020166B4: .word gUnk021C4918
-
- thumb_func_start FUN_020166B8
-FUN_020166B8: ; 0x020166B8
- ldr r1, _020166C4 ; =gUnk021C4918
- mvn r0, r0
- ldrb r2, [r1, #0x8]
- and r0, r2
- strb r0, [r1, #0x8]
- bx lr
- .balign 4
-_020166C4: .word gUnk021C4918
diff --git a/arm9/asm/unk_0201CC08.s b/arm9/asm/unk_0201CC08.s
index 4c198931..c35c4b23 100644
--- a/arm9/asm/unk_0201CC08.s
+++ b/arm9/asm/unk_0201CC08.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .bss
@@ -88,7 +88,7 @@ FUN_0201CC78: ; 0x0201CC78
push {r4, lr}
ldr r4, _0201CC9C ; =UNK_021C5978
strh r0, [r4, #0x18]
- ldr r0, _0201CCA0 ; =gUnk021C4918
+ ldr r0, _0201CCA0 ; =gMain + 0x60
strb r1, [r0, #0x4]
ldr r0, _0201CCA4 ; =UNK_021C5938
ldr r1, [sp, #0xc]
@@ -103,7 +103,7 @@ FUN_0201CC78: ; 0x0201CC78
pop {r4, pc}
nop
_0201CC9C: .word UNK_021C5978
-_0201CCA0: .word gUnk021C4918
+_0201CCA0: .word gMain + 0x60
_0201CCA4: .word UNK_021C5938
_0201CCA8: .word UNK_021C5944
diff --git a/arm9/asm/unk_0201E66C.s b/arm9/asm/unk_0201E66C.s
index 84e97898..5f5dcb68 100644
--- a/arm9/asm/unk_0201E66C.s
+++ b/arm9/asm/unk_0201E66C.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .bss
@@ -167,7 +167,7 @@ _0201E79C: .word 0x04001000
thumb_func_start FUN_0201E7A0
FUN_0201E7A0: ; 0x0201E7A0
- ldr r0, _0201E7C0 ; =gUnk021C4918
+ ldr r0, _0201E7C0 ; =gMain + 0x60
ldr r2, _0201E7C4 ; =0x04000304
ldrb r0, [r0, #0x5]
cmp r0, #0x0
@@ -184,7 +184,7 @@ _0201E7B4:
strh r0, [r2, #0x0]
bx lr
nop
-_0201E7C0: .word gUnk021C4918
+_0201E7C0: .word gMain + 0x60
_0201E7C4: .word 0x04000304
_0201E7C8: .word 0xFFFF7FFF
diff --git a/arm9/asm/unk_020208B8.s b/arm9/asm/unk_020208B8.s
index ce42a526..11027cff 100644
--- a/arm9/asm/unk_020208B8.s
+++ b/arm9/asm/unk_020208B8.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern UNK_021C48F8
+ .extern gMain
.text
@@ -118,7 +118,7 @@ _02020960:
thumb_func_start FUN_02020968
FUN_02020968: ; 0x02020968
push {r3, lr}
- ldr r2, _02020984 ; =UNK_021C48F8
+ ldr r2, _02020984 ; =gMain + 0x40
ldrh r1, [r2, #0x22]
cmp r1, #0x0
beq _0202097C
@@ -131,12 +131,12 @@ _0202097C:
mvn r0, r0
pop {r3, pc}
nop
-_02020984: .word UNK_021C48F8
+_02020984: .word gMain + 0x40
thumb_func_start FUN_02020988
FUN_02020988: ; 0x02020988
push {r3, lr}
- ldr r2, _020209A4 ; =UNK_021C48F8
+ ldr r2, _020209A4 ; =gMain + 0x40
ldrh r1, [r2, #0x20]
cmp r1, #0x0
beq _0202099C
@@ -149,12 +149,12 @@ _0202099C:
mvn r0, r0
pop {r3, pc}
nop
-_020209A4: .word UNK_021C48F8
+_020209A4: .word gMain + 0x40
thumb_func_start FUN_020209A8
FUN_020209A8: ; 0x020209A8
push {r3-r7, lr}
- ldr r7, _020209F0 ; =UNK_021C48F8
+ ldr r7, _020209F0 ; =gMain + 0x40
add r5, r0, #0x0
ldrh r0, [r7, #0x22]
cmp r0, #0x0
@@ -192,12 +192,12 @@ _020209EA:
mvn r0, r0
pop {r3-r7, pc}
.balign 4
-_020209F0: .word UNK_021C48F8
+_020209F0: .word gMain + 0x40
thumb_func_start FUN_020209F4
FUN_020209F4: ; 0x020209F4
push {r3-r7, lr}
- ldr r7, _02020A3C ; =UNK_021C48F8
+ ldr r7, _02020A3C ; =gMain + 0x40
add r5, r0, #0x0
ldrh r0, [r7, #0x20]
cmp r0, #0x0
@@ -235,12 +235,12 @@ _02020A36:
mvn r0, r0
pop {r3-r7, pc}
.balign 4
-_02020A3C: .word UNK_021C48F8
+_02020A3C: .word gMain + 0x40
thumb_func_start FUN_02020A40
FUN_02020A40: ; 0x02020A40
push {r3, lr}
- ldr r2, _02020A68 ; =UNK_021C48F8
+ ldr r2, _02020A68 ; =gMain + 0x40
ldrh r1, [r2, #0x22]
cmp r1, #0x0
beq _02020A62
@@ -259,12 +259,12 @@ _02020A62:
mov r0, #0x0
pop {r3, pc}
nop
-_02020A68: .word UNK_021C48F8
+_02020A68: .word gMain + 0x40
thumb_func_start FUN_02020A6C
FUN_02020A6C: ; 0x02020A6C
push {r3, lr}
- ldr r2, _02020A94 ; =UNK_021C48F8
+ ldr r2, _02020A94 ; =gMain + 0x40
ldrh r1, [r2, #0x20]
cmp r1, #0x0
beq _02020A8E
@@ -283,27 +283,27 @@ _02020A8E:
mov r0, #0x0
pop {r3, pc}
nop
-_02020A94: .word UNK_021C48F8
+_02020A94: .word gMain + 0x40
thumb_func_start FUN_02020A98
FUN_02020A98: ; 0x02020A98
- ldr r0, _02020AA0 ; =UNK_021C48F8
+ ldr r0, _02020AA0 ; =gMain + 0x40
ldrh r0, [r0, #0x22]
bx lr
nop
-_02020AA0: .word UNK_021C48F8
+_02020AA0: .word gMain + 0x40
thumb_func_start FUN_02020AA4
FUN_02020AA4: ; 0x02020AA4
- ldr r0, _02020AAC ; =UNK_021C48F8
+ ldr r0, _02020AAC ; =gMain + 0x40
ldrh r0, [r0, #0x20]
bx lr
nop
-_02020AAC: .word UNK_021C48F8
+_02020AAC: .word gMain + 0x40
thumb_func_start FUN_02020AB0
FUN_02020AB0: ; 0x02020AB0
- ldr r2, _02020AC8 ; =UNK_021C48F8
+ ldr r2, _02020AC8 ; =gMain + 0x40
ldrh r3, [r2, #0x22]
cmp r3, #0x0
beq _02020AC4
@@ -317,11 +317,11 @@ _02020AC4:
mov r0, #0x0
bx lr
.balign 4
-_02020AC8: .word UNK_021C48F8
+_02020AC8: .word gMain + 0x40
thumb_func_start FUN_02020ACC
FUN_02020ACC: ; 0x02020ACC
- ldr r2, _02020AE4 ; =UNK_021C48F8
+ ldr r2, _02020AE4 ; =gMain + 0x40
ldrh r3, [r2, #0x20]
cmp r3, #0x0
beq _02020AE0
@@ -335,7 +335,7 @@ _02020AE0:
mov r0, #0x0
bx lr
.balign 4
-_02020AE4: .word UNK_021C48F8
+_02020AE4: .word gMain + 0x40
thumb_func_start FUN_02020AE8
FUN_02020AE8: ; 0x02020AE8
diff --git a/arm9/asm/unk_020286F8.s b/arm9/asm/unk_020286F8.s
deleted file mode 100644
index 2d75f824..00000000
--- a/arm9/asm/unk_020286F8.s
+++ /dev/null
@@ -1,340 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .section .bss
-
- .global UNK_021C59D0
-UNK_021C59D0: ; 0x021C59D0
- .space 0x4
-
- .text
-
- thumb_func_start FUN_020286F8
-FUN_020286F8: ; 0x020286F8
- mov r0, #0x42
- lsl r0, r0, #0x2
- bx lr
- .balign 4
-
- thumb_func_start FUN_02028700
-FUN_02028700: ; 0x02028700
- push {r4-r5}
- add r5, r2, #0x0
- mov r3, #0x2c
- add r2, r1, #0x0
- mul r2, r3
- mul r5, r3
- add r4, r0, r2
- add r3, r0, r5
- mov r2, #0x5
-_02028712:
- ldmia r4!, {r0-r1}
- stmia r3!, {r0-r1}
- sub r2, r2, #0x1
- bne _02028712
- ldr r0, [r4, #0x0]
- str r0, [r3, #0x0]
- pop {r4-r5}
- bx lr
- .balign 4
-
- thumb_func_start FUN_02028724
-FUN_02028724: ; 0x02028724
- push {r4, lr}
- add r4, r0, #0x0
- mov r2, #0x42
- mov r0, #0x0
- add r1, r4, #0x0
- lsl r2, r2, #0x2
- bl MIi_CpuClearFast
- ldr r0, _0202874C ; =0x0000FFFF
- mov r1, #0x0
- add r2, r4, #0x0
-_0202873A:
- strh r0, [r2, #0x0]
- strh r0, [r2, #0x10]
- add r1, r1, #0x1
- add r2, #0x2c
- cmp r1, #0x6
- blt _0202873A
- ldr r0, _02028750 ; =UNK_021C59D0
- str r4, [r0, #0x0]
- pop {r4, pc}
- .balign 4
-_0202874C: .word 0x0000FFFF
-_02028750: .word UNK_021C59D0
-
- thumb_func_start FUN_02028754
-FUN_02028754: ; 0x02028754
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r1, #0x0
- mov r7, #0x0
-_0202875C:
- mov r4, #0x0
- cmp r6, #0x0
- bls _02028770
-_02028762:
- ldr r0, [r5, #0x28]
- bl PRandom
- add r4, r4, #0x1
- str r0, [r5, #0x28]
- cmp r4, r6
- blo _02028762
-_02028770:
- add r7, r7, #0x1
- add r5, #0x2c
- cmp r7, #0x6
- blo _0202875C
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_0202877C
-FUN_0202877C: ; 0x0202877C
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- ldr r0, [r0, #0x24]
- bx lr
- .balign 4
-
- thumb_func_start FUN_02028788
-FUN_02028788: ; 0x02028788
- push {r3-r5, lr}
- add r5, r0, #0x0
- mov r0, #0x2c
- add r4, r1, #0x0
- mul r4, r0
- add r0, r5, r4
- str r2, [r0, #0x24]
- add r0, r2, #0x0
- bl PRandom
- add r1, r5, r4
- str r0, [r1, #0x28]
- pop {r3-r5, pc}
- .balign 4
-
- thumb_func_start FUN_020287A4
-FUN_020287A4: ; 0x020287A4
- ldr r0, [r0, #0x54]
- bx lr
-
- thumb_func_start FUN_020287A8
-FUN_020287A8: ; 0x020287A8
- cmp r2, #0x0
- bne _020287B4
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- bx lr
-_020287B4:
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- add r0, #0x10
- bx lr
- .balign 4
-
- thumb_func_start FUN_020287C0
-FUN_020287C0: ; 0x020287C0
- push {r4, lr}
- add r4, r0, #0x0
- cmp r2, #0x0
- bne _020287D8
- mov r2, #0x2c
- mul r2, r1
- add r1, r4, r2
- add r0, r3, #0x0
- mov r2, #0x8
- bl CopyStringToU16Array
- pop {r4, pc}
-_020287D8:
- mov r2, #0x2c
- mul r2, r1
- add r1, r4, r2
- add r0, r3, #0x0
- add r1, #0x10
- mov r2, #0x8
- bl CopyStringToU16Array
- pop {r4, pc}
- .balign 4
-
- thumb_func_start FUN_020287EC
-FUN_020287EC: ; 0x020287EC
- mov r3, #0x2c
- mul r3, r1
- add r0, r0, r3
- add r0, #0x20
- strb r2, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_020287F8
-FUN_020287F8: ; 0x020287F8
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- add r0, #0x20
- ldrb r0, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_02028804
-FUN_02028804: ; 0x02028804
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- add r0, #0x21
- ldrb r0, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_02028810
-FUN_02028810: ; 0x02028810
- mov r3, #0x2c
- mul r3, r1
- add r0, r0, r3
- add r0, #0x21
- strb r2, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_0202881C
-FUN_0202881C: ; 0x0202881C
- ldr r3, _02028824 ; =SavArray_get
- mov r1, #0x11
- bx r3
- nop
-_02028824: .word SavArray_get
-
- thumb_func_start FUN_02028828
-FUN_02028828: ; 0x02028828
- push {r3, lr}
- mov r2, #0x2c
- mul r2, r1
- add r0, r0, r2
- bl FUN_0202888C
- cmp r0, #0x0
- bne _0202883C
- mov r0, #0x1
- pop {r3, pc}
-_0202883C:
- mov r0, #0x0
- pop {r3, pc}
-
- thumb_func_start FUN_02028840
-FUN_02028840: ; 0x02028840
- mov r2, #0x2c
- add r3, r0, #0x0
- mul r2, r1
- add r1, r3, r2
- ldr r3, _02028850 ; =FUN_020288AC
- add r0, #0x2c
- bx r3
- nop
-_02028850: .word FUN_020288AC
-
- thumb_func_start FUN_02028854
-FUN_02028854: ; 0x02028854
- push {r3-r7, lr}
- add r6, r1, #0x0
- ldrh r1, [r6, #0x0]
- add r5, r0, #0x0
- ldr r0, _02028888 ; =0x0000FFFF
- cmp r1, r0
- bne _02028866
- mov r0, #0x0
- pop {r3-r7, pc}
-_02028866:
- mov r4, #0x0
- mov r7, #0x8
-_0202886A:
- add r0, r6, #0x0
- add r1, r5, #0x0
- add r2, r7, #0x0
- bl StringNotEqualN
- cmp r0, #0x0
- bne _0202887C
- mov r0, #0x1
- pop {r3-r7, pc}
-_0202887C:
- add r4, r4, #0x1
- add r5, #0x2c
- cmp r4, #0x6
- blt _0202886A
- mov r0, #0x0
- pop {r3-r7, pc}
- .balign 4
-_02028888: .word 0x0000FFFF
-
- thumb_func_start FUN_0202888C
-FUN_0202888C: ; 0x0202888C
- ldrh r2, [r0, #0x0]
- ldr r1, _020288A8 ; =0x0000FFFF
- cmp r2, r1
- bne _02028898
- mov r0, #0x1
- bx lr
-_02028898:
- ldrh r0, [r0, #0x10]
- cmp r0, r1
- bne _020288A2
- mov r0, #0x1
- bx lr
-_020288A2:
- mov r0, #0x0
- bx lr
- nop
-_020288A8: .word 0x0000FFFF
-
- thumb_func_start FUN_020288AC
-FUN_020288AC: ; 0x020288AC
- push {r3-r5, lr}
- add r5, r0, #0x0
- add r4, r1, #0x0
- add r0, #0x10
- add r1, #0x10
- mov r2, #0x8
- bl StringNotEqualN
- cmp r0, #0x0
- beq _020288C4
- mov r0, #0x0
- pop {r3-r5, pc}
-_020288C4:
- add r0, r5, #0x0
- add r1, r4, #0x0
- mov r2, #0x8
- bl StringNotEqualN
- cmp r0, #0x0
- beq _020288D6
- mov r0, #0x0
- pop {r3-r5, pc}
-_020288D6:
- add r0, r5, #0x0
- add r0, #0x20
- ldrb r1, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x20
- ldrb r0, [r0, #0x0]
- cmp r1, r0
- beq _020288EA
- mov r0, #0x0
- pop {r3-r5, pc}
-_020288EA:
- add r0, r5, #0x0
- add r0, #0x21
- ldrb r1, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x21
- ldrb r0, [r0, #0x0]
- cmp r1, r0
- beq _020288FE
- mov r0, #0x0
- pop {r3-r5, pc}
-_020288FE:
- ldr r1, [r5, #0x24]
- ldr r0, [r4, #0x24]
- cmp r1, r0
- bne _0202890A
- mov r0, #0x1
- pop {r3-r5, pc}
-_0202890A:
- mov r0, #0x0
- pop {r3-r5, pc}
- .balign 4
diff --git a/arm9/asm/unk_02031734.s b/arm9/asm/unk_02031734.s
index e28c8c38..5a054d51 100644
--- a/arm9/asm/unk_02031734.s
+++ b/arm9/asm/unk_02031734.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
.global UNK_020EEC48
UNK_020EEC48: ; 0x020EEC48
@@ -4062,7 +4062,7 @@ _02033622:
ldr r0, [r0, #0x0]
ldr r0, [r0, #0x28]
bl FUN_0202287C
- ldr r1, _02033674 ; =gUnk021C4918
+ ldr r1, _02033674 ; =gMain + 0x60
mov r0, #0x1
strb r0, [r1, #0x4]
ldr r1, _02033670 ; =UNK_021C5A00
@@ -4092,7 +4092,7 @@ _0203366C:
pop {r3, pc}
nop
_02033670: .word UNK_021C5A00
-_02033674: .word gUnk021C4918
+_02033674: .word gMain + 0x60
thumb_func_start FUN_02033678
FUN_02033678: ; 0x02033678
diff --git a/arm9/asm/unk_02033F50.s b/arm9/asm/unk_02033F50.s
index d514a9d6..cf84285f 100644
--- a/arm9/asm/unk_02033F50.s
+++ b/arm9/asm/unk_02033F50.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
@@ -92,7 +92,7 @@ _02033FA4:
bl OS_EnableIrqMask
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -111,7 +111,7 @@ _02033FA4:
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _02034160 ; =gUnk021C4918
+ ldr r0, _02034160 ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -184,7 +184,7 @@ _02033FA4:
str r0, [sp, #0x14]
bl FUN_0201BD5C
add r0, r4, #0x0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0x0
ldr r2, _02034184 ; =UNK_020EEC9C
add r0, r6, #0x0
@@ -212,7 +212,7 @@ _02033FA4:
add r0, r4, #0x0
mov r1, #0x0
mov r3, #0x5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x10]
ldr r2, [sp, #0x14]
add r1, r5, #0x0
@@ -245,7 +245,7 @@ _02033FA4:
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r4, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0x0
bl FreeToHeap
add sp, #0x28
@@ -254,7 +254,7 @@ _02033FA4:
_02034154: .word FUN_02033F50
_02034158: .word 0xFFFFE0FF
_0203415C: .word 0x04001000
-_02034160: .word gUnk021C4918
+_02034160: .word gMain + 0x60
_02034164: .word 0x04000050
_02034168: .word 0x04001050
_0203416C: .word 0xFFFF1FFF
diff --git a/arm9/asm/unk_02034188.s b/arm9/asm/unk_02034188.s
index f84f094a..d8b35c57 100644
--- a/arm9/asm/unk_02034188.s
+++ b/arm9/asm/unk_02034188.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
@@ -40,7 +40,7 @@ FUN_02034188: ; 0x02034188
bl FUN_02015EF4
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -59,7 +59,7 @@ FUN_02034188: ; 0x02034188
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _02034370 ; =gUnk021C4918
+ ldr r0, _02034370 ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -226,7 +226,7 @@ _02034308:
nop
_02034368: .word 0xFFFFE0FF
_0203436C: .word 0x04001000
-_02034370: .word gUnk021C4918
+_02034370: .word gMain + 0x60
_02034374: .word 0x04000050
_02034378: .word 0x04001050
_0203437C: .word 0xFFFF1FFF
diff --git a/arm9/asm/unk_02035068.s b/arm9/asm/unk_02035068.s
index 3b3dccfc..da71c049 100644
--- a/arm9/asm/unk_02035068.s
+++ b/arm9/asm/unk_02035068.s
@@ -653,7 +653,7 @@ _02035526:
cmp r3, #0x3
bne _02035594
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0x0
mov r0, #0x8
mov r1, #0xb
@@ -674,7 +674,7 @@ _02035526:
add r2, r0, #0x0
add r0, r6, #0x0
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r2, [sp, #0x20]
add r0, r6, #0x0
add r1, r7, #0x0
@@ -690,7 +690,7 @@ _02035526:
add r0, r7, #0x0
bl String_dtor
add r0, r6, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
b _020355A2
_02035594:
ldr r2, _02035664 ; =UNK_020F2ACC
@@ -996,7 +996,7 @@ _020357D6:
add r0, r7, #0x0
bl String_dtor
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r7, r0, #0x0
mov r0, #0x20
mov r1, #0xb
@@ -1019,7 +1019,7 @@ _020357D6:
ldrh r2, [r2, #0x0]
add r0, r7, #0x0
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _0203584C
_02035834:
add r0, r4, #0x0
@@ -1031,7 +1031,7 @@ _02035834:
str r0, [sp, #0x4]
add r0, r7, #0x0
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
_0203584C:
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x14]
@@ -1053,7 +1053,7 @@ _0203584C:
ldr r0, [sp, #0x14]
bl String_dtor
add r0, r7, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0x1c]
bl DestroyMsgData
add r5, #0x10
diff --git a/arm9/asm/unk_020377F0.s b/arm9/asm/unk_020377F0.s
index ca4520b6..26f6442d 100644
--- a/arm9/asm/unk_020377F0.s
+++ b/arm9/asm/unk_020377F0.s
@@ -123,7 +123,7 @@ UNK_020F2CE4: ; 0x020F2CE4
.balign 4
.global UNK_020F2CF4
UNK_020F2CF4: ; 0x020F2CF4
- .word MOD14_021D74E0, MOD14_021D754C, MOD14_021D75B8, SDK_OVERLAY_MODULE_14_ID
+ .word StoragePC_Overlay_Init, StoragePC_Overlay_Run, StoragePC_Overlay_Teardown, SDK_OVERLAY_MODULE_14_ID
.balign 4
.global UNK_020F2D04
@@ -900,8 +900,8 @@ FUN_02037D5C: ; 0x02037D5C
ldrb r0, [r0, #0x16]
bx lr
- thumb_func_start FUN_02037D60
-FUN_02037D60: ; 0x02037D60
+ thumb_func_start LaunchStoragePCInterface
+LaunchStoragePCInterface: ; 0x02037D60
ldr r3, _02037D68 ; =FUN_020373D4
add r2, r1, #0x0
ldr r1, _02037D6C ; =UNK_020F2CF4
diff --git a/arm9/asm/unk_02038C78.s b/arm9/asm/unk_02038C78.s
index acb9fd0b..667b0c58 100644
--- a/arm9/asm/unk_02038C78.s
+++ b/arm9/asm/unk_02038C78.s
@@ -320,7 +320,7 @@ gScriptCmdTable: ; 0x020F355C
.word FUN_0203BFEC
.word FUN_0203C118
.word FUN_0203C12C
- .word FUN_0203C278
+ .word ScrCmd_monstoragepc
.word FUN_0203C2C4
.word FUN_0203C2E0
.word FUN_0203C2F0
@@ -1001,7 +1001,7 @@ _02038D68:
mov r0, #0x8
mov r1, #0x40
mov r2, #0xb
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r4, #0x40]
mov r0, #0x1
lsl r0, r0, #0xa
@@ -1056,7 +1056,7 @@ _02038DD2:
add r0, #0xa4
ldr r5, [r0, #0x0]
ldr r0, [r4, #0x40]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x44]
bl String_dtor
ldr r0, [r4, #0x48]
diff --git a/arm9/asm/unk_02048120.s b/arm9/asm/unk_02048120.s
index d94329c4..f28f76eb 100644
--- a/arm9/asm/unk_02048120.s
+++ b/arm9/asm/unk_02048120.s
@@ -88,7 +88,7 @@ _0204817A:
bl NewMsgDataFromNarc
str r0, [r4, #0x1c]
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x20]
add r1, r4, #0x0
ldr r0, [r4, #0x8]
@@ -101,7 +101,7 @@ _0204817A:
add r2, r0, #0x0
ldr r0, [r4, #0x20]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x1c]
ldr r1, [r0, #0x0]
ldr r0, _0204820C ; =0x0000019E
@@ -223,7 +223,7 @@ _020482B2:
add r0, #0xc
bl FUN_02019178
ldr r0, [r4, #0x20]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x1c]
bl DestroyMsgData
ldr r0, [r4, #0x8]
diff --git a/arm9/asm/unk_020484A8.s b/arm9/asm/unk_020484A8.s
index 48f457be..db9ea9af 100644
--- a/arm9/asm/unk_020484A8.s
+++ b/arm9/asm/unk_020484A8.s
@@ -466,14 +466,14 @@ FUN_02048864: ; 0x02048864
cmp r6, #0x2
bne _020488AC
mov r0, #0x4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0x0
ldr r0, [r5, #0xc]
bl Sav2_PlayerData_GetProfileAddr
add r2, r0, #0x0
add r0, r6, #0x0
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0x0
add r1, r7, #0x0
mov r2, #0x10
@@ -481,7 +481,7 @@ FUN_02048864: ; 0x02048864
bl ReadMsgData_ExpandPlaceholders
str r0, [r4, #0x2c]
add r0, r6, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
b _020488B4
_020488AC:
mov r1, #0x12
diff --git a/arm9/asm/unk_02048904.s b/arm9/asm/unk_02048904.s
index 4f852dbe..4ca21350 100644
--- a/arm9/asm/unk_02048904.s
+++ b/arm9/asm/unk_02048904.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
@@ -146,11 +146,11 @@ _020489EA:
ldr r0, [r0, #0x0]
lsl r0, r0, #0x10
lsr r1, r0, #0x1c
- ldr r0, _020489F8 ; =gUnk021C4918
+ ldr r0, _020489F8 ; =gMain + 0x60
strb r1, [r0, #0x5]
pop {r4, pc}
.balign 4
-_020489F8: .word gUnk021C4918
+_020489F8: .word gMain + 0x60
thumb_func_start FUN_020489FC
FUN_020489FC: ; 0x020489FC
diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s
index 51c42247..5746b23f 100644
--- a/arm9/asm/unk_02050E48.s
+++ b/arm9/asm/unk_02050E48.s
@@ -783,7 +783,7 @@ _0205142C:
ldr r0, [r4, #0x28]
ldr r2, [r4, #0x74]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0xe
@@ -962,7 +962,7 @@ _020515BA:
add r2, r0, #0x0
ldr r0, [r4, #0x28]
mov r1, #0x1
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r0, [r4, #0x2c]
ldr r2, [r4, #0xc]
mov r1, #0x12
@@ -1307,7 +1307,7 @@ _0205188E:
str r5, [r4, #0x24]
str r6, [r4, #0x8]
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x28]
mov r0, #0x0
mov r1, #0x1a
@@ -1436,7 +1436,7 @@ _020519BA:
ldr r0, [r4, #0x2c]
bl DestroyMsgData
ldr r0, [r4, #0x28]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0xc]
bl String_dtor
ldr r0, [r4, #0x10]
@@ -2124,7 +2124,7 @@ _02051EE2: ; jump table (using 16-bit offset)
.short _02052028 - _02051EE2 - 2; case 7
_02051EF2:
mov r0, #0x4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x18]
mov r0, #0x0
mov r1, #0x1a
@@ -2150,7 +2150,7 @@ _02051EF2:
add r2, r0, #0x0
ldr r0, [r4, #0x18]
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4, #0x18]
ldr r1, [r4, #0x4]
ldr r2, [r4, #0x0]
@@ -2194,7 +2194,7 @@ _02051F7C:
ldr r0, [r4, #0x1c]
bl DestroyMsgData
ldr r0, [r4, #0x18]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x0]
bl String_dtor
ldr r0, [r4, #0x4]
diff --git a/arm9/asm/unk_020520AC.s b/arm9/asm/unk_020520AC.s
index 4ae557da..48a4f8ec 100644
--- a/arm9/asm/unk_020520AC.s
+++ b/arm9/asm/unk_020520AC.s
@@ -1336,14 +1336,14 @@ _020529B0:
ldr r0, [sp, #0x0]
mov r1, #0x3
add r2, r4, #0x0
- bl FUN_0200B4A0
+ bl BufferCountryName
cmp r5, #0x0
beq _020529CC
ldr r0, [sp, #0x0]
mov r1, #0x4
add r2, r4, #0x0
add r3, r5, #0x0
- bl FUN_0200B4D8
+ bl BufferCityName
_020529CC:
cmp r7, r4
beq _020529E4
@@ -1698,7 +1698,7 @@ _02052C46:
add r2, r0, #0x0
add r0, r6, #0x0
mov r1, #0x0
- bl FUN_0200B064
+ bl BufferTrainerClassName
mov r0, #0xa6
pop {r4-r6, pc}
_02052C78:
@@ -1814,11 +1814,11 @@ _02052D3C:
add r0, r5, #0x0
mov r1, #0x0
add r2, r4, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r2, [sp, #0x8]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0x0
bl FUN_02023A70
add r4, r0, #0x0
@@ -1887,7 +1887,7 @@ _02052DBA:
add r2, r6, #0x0
mov r3, #0x0
str r4, [sp, #0x4]
- bl FUN_0200ABB4
+ bl BufferString
add r0, r6, #0x0
bl FreeToHeap
add r0, r7, #0x0
diff --git a/arm9/asm/unk_0205363C.s b/arm9/asm/unk_0205363C.s
index 5dc182e1..3b13ed24 100644
--- a/arm9/asm/unk_0205363C.s
+++ b/arm9/asm/unk_0205363C.s
@@ -61,7 +61,7 @@ _02053654:
ldr r2, [r2, #0x4]
add r0, r7, #0x0
add r1, r4, #0x0
- bl FUN_0200B064
+ bl BufferTrainerClassName
add r4, r4, #0x1
add r5, r5, #0x4
cmp r4, #0x4
diff --git a/arm9/asm/unk_02060CCC.s b/arm9/asm/unk_02060CCC.s
index eaf86357..0f319d3c 100644
--- a/arm9/asm/unk_02060CCC.s
+++ b/arm9/asm/unk_02060CCC.s
@@ -276,7 +276,7 @@ FUN_02060D90: ; 0x02060D90
str r0, [sp, #0x4]
add r0, r5, #0x0
add r2, r4, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
add sp, #0xc
@@ -736,7 +736,7 @@ FUN_020610F8: ; 0x020610F8
ldrh r2, [r4, #0x22]
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -745,7 +745,7 @@ FUN_020610F8: ; 0x020610F8
ldrh r2, [r4, #0x4]
add r0, r5, #0x0
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r0, [r4, #0x9]
add r2, r4, #0x0
mov r1, #0x4
@@ -776,7 +776,7 @@ _02061166:
ldrh r2, [r4, #0x22]
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -785,7 +785,7 @@ _02061166:
ldrh r2, [r4, #0x4]
add r0, r5, #0x0
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x1
add sp, #0x8
pop {r4-r6, pc}
@@ -810,7 +810,7 @@ FUN_020611A8: ; 0x020611A8
ldrh r2, [r4, #0x4]
add r0, r5, #0x0
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x0]
cmp r0, #0x1
bne _020611E0
@@ -886,7 +886,7 @@ FUN_0206123C: ; 0x0206123C
ldrh r2, [r4, #0x6]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
ldrb r0, [r4, #0x3]
mov r1, #0x2
str r0, [sp, #0x0]
@@ -1056,7 +1056,7 @@ FUN_0206139C: ; 0x0206139C
ldrh r2, [r4, #0x2]
add r0, r5, #0x0
mov r1, #0x0
- bl GetLandmarkName
+ bl BufferLandmarkName
add r0, r5, #0x0
mov r1, #0x1
add r2, r6, #0x0
@@ -1064,7 +1064,7 @@ FUN_0206139C: ; 0x0206139C
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0xa
pop {r4-r6, pc}
@@ -1108,7 +1108,7 @@ FUN_02061404: ; 0x02061404
ldrh r2, [r4, #0x6]
add r0, r5, #0x0
mov r1, #0x1
- bl GetLandmarkName
+ bl BufferLandmarkName
add r0, r5, #0x0
mov r1, #0x0
add r2, r6, #0x0
@@ -1262,7 +1262,7 @@ FUN_02061534: ; 0x02061534
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200B164
+ bl BufferUndergroundItemName
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -1271,7 +1271,7 @@ FUN_02061534: ; 0x02061534
add r0, r5, #0x0
mov r1, #0x2
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x18
add sp, #0x8
pop {r4-r6, pc}
@@ -1338,7 +1338,7 @@ FUN_020615B0: ; 0x020615B0
ldrb r2, [r4, #0x5]
add r0, r5, #0x0
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x1a
add sp, #0x8
pop {r4-r6, pc}
@@ -1409,7 +1409,7 @@ FUN_02061648: ; 0x02061648
ldrh r2, [r4, #0x6]
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x1d
add sp, #0x8
pop {r4-r6, pc}
@@ -1482,7 +1482,7 @@ FUN_020616E8: ; 0x020616E8
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -1491,7 +1491,7 @@ FUN_020616E8: ; 0x020616E8
ldrh r2, [r4, #0x4]
add r0, r5, #0x0
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x1e
add sp, #0x8
pop {r4-r6, pc}
@@ -1512,7 +1512,7 @@ FUN_02061728: ; 0x02061728
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x1f
pop {r4-r6, pc}
.balign 4
@@ -1544,7 +1544,7 @@ FUN_02061750: ; 0x02061750
add r0, r5, #0x0
add r2, r4, #0x0
mov r3, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
mov r0, #0x5
@@ -1598,7 +1598,7 @@ FUN_020617D8: ; 0x020617D8
ldrb r2, [r4, #0x6]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200B534
+ bl BufferSealName
ldrb r0, [r4, #0x3]
mov r1, #0x2
str r0, [sp, #0x0]
@@ -1672,7 +1672,7 @@ _02061884:
add r0, r5, #0x0
mov r1, #0x1
add r2, r4, #0x4
- bl FUN_0200ABC0
+ bl BufferPlayersName
pop {r4-r6, pc}
.balign 4
@@ -1794,7 +1794,7 @@ FUN_0206193C: ; 0x0206193C
add r0, r5, #0x0
mov r1, #0x2
mov r3, #0x4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r0, [r4, #0x7]
cmp r0, #0x0
bne _0206198A
@@ -1896,7 +1896,7 @@ FUN_020619F0: ; 0x020619F0
add r0, r5, #0x0
mov r1, #0x2
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0x0
mov r1, #0xa
bl _u32_div_f
@@ -1907,7 +1907,7 @@ FUN_020619F0: ; 0x020619F0
add r0, r5, #0x0
mov r1, #0x3
str r3, [sp, #0x4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x2
add sp, #0x8
pop {r4-r6, pc}
@@ -1967,7 +1967,7 @@ FUN_02061AB0: ; 0x02061AB0
ldr r2, [r4, #0x8]
add r0, r5, #0x0
mov r3, #0xa
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -1976,7 +1976,7 @@ FUN_02061AB0: ; 0x02061AB0
add r0, r5, #0x0
mov r1, #0x2
mov r3, #0x6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -1985,7 +1985,7 @@ FUN_02061AB0: ; 0x02061AB0
add r0, r5, #0x0
mov r1, #0x3
mov r3, #0x6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x3
add sp, #0x8
pop {r4-r6, pc}
@@ -2021,7 +2021,7 @@ FUN_02061B24: ; 0x02061B24
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200B1D4
+ bl BufferUndergroundTrapName
mov r0, #0x0
str r0, [sp, #0x0]
mov r0, #0x1
@@ -2030,7 +2030,7 @@ FUN_02061B24: ; 0x02061B24
add r0, r5, #0x0
mov r1, #0x2
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x7
add sp, #0x8
pop {r4-r6, pc}
@@ -2073,7 +2073,7 @@ FUN_02061B80: ; 0x02061B80
ldrh r2, [r4, #0x0]
add r0, r5, #0x0
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x8
add sp, #0x8
pop {r4-r6, pc}
@@ -2134,7 +2134,7 @@ FUN_02061C00: ; 0x02061C00
ldrh r2, [r4, #0x2]
add r0, r5, #0x0
mov r3, #0x4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0x0
mov r1, #0x1
add r2, r6, #0x0
@@ -2315,7 +2315,7 @@ FUN_02061D74: ; 0x02061D74
ldr r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200B02C
+ bl BufferPoketchAppName
ldrh r2, [r4, #0x4]
add r0, r5, #0x0
mov r1, #0x2
@@ -2378,13 +2378,13 @@ FUN_02061DE4: ; 0x02061DE4
add r2, r0, #0x0
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_0200B2AC
+ bl BufferContestMessage2
ldrb r0, [r4, #0x7]
bl FUN_02083268
add r2, r0, #0x0
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200B278
+ bl BufferContestMessage
mov r0, #0x0
str r0, [sp, #0x0]
mov r3, #0x1
@@ -2392,7 +2392,7 @@ FUN_02061DE4: ; 0x02061DE4
ldrb r2, [r4, #0x9]
add r0, r5, #0x0
mov r1, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0x0
mov r1, #0x4
add r2, r6, #0x0
@@ -2557,7 +2557,7 @@ FUN_02061F60: ; 0x02061F60
add r0, r5, #0x0
mov r1, #0x1
add r2, r4, #0x0
- bl FUN_0200B628
+ bl BufferPoffinName
ldrh r2, [r6, #0x2]
add r0, r5, #0x0
mov r1, #0x2
@@ -2648,7 +2648,7 @@ FUN_02061FF8: ; 0x02061FF8
ldrb r2, [r4, #0x1e]
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_0200AE04
+ bl BufferNatureName
ldrh r2, [r4, #0x24]
add r0, r5, #0x0
mov r1, #0x5
@@ -2670,7 +2670,7 @@ _02062050:
ldrb r2, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x3
- bl FUN_0200B660
+ bl BufferFashionName
add sp, #0x8
mov r0, #0x2c
pop {r4-r6, pc}
@@ -2678,7 +2678,7 @@ _02062062:
ldrh r2, [r4, #0x22]
add r0, r5, #0x0
mov r1, #0x3
- bl FUN_0200AE38
+ bl BufferItemName
add sp, #0x8
mov r0, #0x2e
pop {r4-r6, pc}
@@ -2795,7 +2795,7 @@ _0206211E:
ldr r0, [sp, #0x8]
mov r1, #0x2
add r2, r4, #0x0
- bl FUN_0200AF18
+ bl BufferTypeName
mov r0, #0x0
add sp, #0x10
pop {r3-r7, pc}
@@ -2842,7 +2842,7 @@ _0206218C:
add r2, r0, #0x0
add r0, r7, #0x0
mov r1, #0x0
- bl GetLandmarkName
+ bl BufferLandmarkName
cmp r4, #0xb
bhi _0206222C
add r0, r4, r4
@@ -2953,7 +2953,7 @@ FUN_02062240: ; 0x02062240
add r2, r0, #0x0
add r0, r4, #0x0
mov r1, #0x0
- bl GetLandmarkName
+ bl BufferLandmarkName
add r2, sp, #0x0
ldrh r2, [r2, #0x0]
add r0, r4, #0x0
@@ -3037,11 +3037,11 @@ _02062304:
add r0, r6, #0x0
mov r1, #0x0
add r2, r5, #0x0
- bl FUN_0200AF18
+ bl BufferTypeName
add r0, r6, #0x0
mov r1, #0x1
add r2, r4, #0x0
- bl FUN_0200AF18
+ bl BufferTypeName
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02062290
@@ -3180,7 +3180,7 @@ FUN_020623F4: ; 0x020623F4
add r2, r0, #0x0
add r0, r5, #0x0
mov r1, #0x0
- bl GetLandmarkName
+ bl BufferLandmarkName
add r0, r6, #0x0
add r1, r4, #0x0
bl FUN_02025238
@@ -3291,7 +3291,7 @@ _020624C6:
ldrh r2, [r2, #0x0]
add r0, r6, #0x0
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x2a
add sp, #0xc
pop {r3-r6, pc}
@@ -3388,7 +3388,7 @@ _0206257A:
mov r1, #0x0
add r2, r4, #0x0
add r3, r6, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0x0
bl String_dtor
add r0, r5, #0x0
diff --git a/arm9/asm/unk_020625EC.s b/arm9/asm/unk_020625EC.s
index 92829a69..9809241c 100644
--- a/arm9/asm/unk_020625EC.s
+++ b/arm9/asm/unk_020625EC.s
@@ -926,7 +926,7 @@ FUN_02062C80: ; 0x02062C80
ldr r2, [r5, #0x0]
mov r0, #0x2
mov r1, #0x4c
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r5, #0x30]
ldr r1, [r5, #0x0]
mov r0, #0x4c
@@ -1052,7 +1052,7 @@ _02062D84:
ldr r0, [r6, #0x34]
bl String_dtor
ldr r0, [r6, #0x30]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #0x2c]
bl DestroyMsgData
pop {r4-r6, pc}
@@ -1720,7 +1720,7 @@ _02063318:
ldr r2, [sp, #0x1c]
mov r1, #0x0
mov r3, #0x1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x1
str r0, [sp, #0x0]
mov r0, #0x2
@@ -1730,7 +1730,7 @@ _02063318:
ldr r2, [r2, #0x8]
mov r1, #0x1
mov r3, #0x2
- bl FUN_0200ABB4
+ bl BufferString
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x44]
@@ -1756,7 +1756,7 @@ _02063318:
ldrh r3, [r3, #0x4]
mov r1, #0x0
add r2, r5, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x14]
ldr r0, [r4, #0x30]
ldrh r2, [r2, #0x6]
diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s
index 22b20ee4..dd82a0eb 100644
--- a/arm9/asm/unk_020653EC.s
+++ b/arm9/asm/unk_020653EC.s
@@ -1862,7 +1862,7 @@ FUN_02066270: ; 0x02066270
ldr r2, [r6, #0x0]
mov r0, #0x1
mov r1, #0x80
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
mov r1, #0x11
lsl r1, r1, #0x4
str r0, [r6, r1]
@@ -1932,7 +1932,7 @@ _020662F0:
mov r0, #0x11
lsl r0, r0, #0x4
ldr r0, [r6, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x43
lsl r0, r0, #0x2
ldr r0, [r6, r0]
@@ -2091,7 +2091,7 @@ _02066426:
ldr r2, [r2, #0x24]
mov r1, #0x0
mov r3, #0x2
- bl FUN_0200ABB4
+ bl BufferString
mov r2, #0x11
lsl r2, r2, #0x4
lsl r3, r4, #0x2
diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s
index a11f74e3..956f6263 100644
--- a/arm9/asm/unk_0206C700.s
+++ b/arm9/asm/unk_0206C700.s
@@ -177,7 +177,7 @@ FUN_0206C700: ; 0x0206C700
bl NewMsgDataFromNarc
str r0, [r4, #0x8]
add r0, r5, #0x0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0xc]
mov r0, #0x5
lsl r0, r0, #0x6
@@ -294,7 +294,7 @@ FUN_0206C92C: ; 0x0206C92C
bl FUN_0200E3A0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4, #0x4]
mov r1, #0x1
bl FUN_020191A4
@@ -323,7 +323,7 @@ FUN_0206C92C: ; 0x0206C92C
ldr r0, [r4, #0x8]
bl DestroyMsgData
ldr r0, [r4, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x10]
bl FreeToHeap
ldr r0, [r4, #0x3c]
@@ -643,7 +643,7 @@ _0206CBE4:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, [r4, #0x7c]
mov r0, #0x2
tst r0, r1
@@ -1050,13 +1050,13 @@ _0206CF7E:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [r4, #0x28]
bl FUN_020690E4
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r1, _0206D1D8 ; =0x00000396
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -1168,12 +1168,12 @@ _0206D0AC:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r2, sp, #0xc
ldrh r2, [r2, #0x0]
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
add r0, r4, #0x0
mov r1, #0x4
bl FUN_0206DD6C
@@ -1195,13 +1195,13 @@ _0206D0E8:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r2, r4, #0x0
add r2, #0x6c
ldrh r2, [r2, #0x0]
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r1, _0206D1E0 ; =0x000004A9
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -1226,7 +1226,7 @@ _0206D12C:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _0206D1E4 ; =0x000004AA
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -1511,7 +1511,7 @@ _0206D398:
ldrh r2, [r2, #0x0]
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r1, _0206D548 ; =0x000004AD
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -1565,13 +1565,13 @@ _0206D406:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r2, r4, #0x0
add r2, #0x6c
ldrh r2, [r2, #0x0]
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r1, _0206D550 ; =0x000004AE
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -1645,7 +1645,7 @@ _0206D4A6:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r1, r4, #0x0
add r1, #0x6e
ldrb r1, [r1, #0x0]
@@ -1656,7 +1656,7 @@ _0206D4A6:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x4b
add r0, r4, #0x0
lsl r1, r1, #0x4
@@ -1701,13 +1701,13 @@ _0206D51E:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r2, r4, #0x0
add r2, #0x6c
ldrh r2, [r2, #0x0]
ldr r0, [r4, #0xc]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r1, _0206D55C ; =0x000004B2
b _0206D560
.balign 4
@@ -1966,7 +1966,7 @@ _0206D748:
add r2, r0, #0x0
ldr r0, [r4, #0xc]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _0206D81C ; =0x00000397
add r0, r4, #0x0
bl FUN_0206DD6C
@@ -2513,7 +2513,7 @@ _0206DA26:
bl FUN_0201E6E4
ldr r0, _0206DC44 ; =FUN_0206DD08
add r1, r5, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add sp, #0xb8
pop {r4-r6, pc}
.balign 4
diff --git a/arm9/asm/unk_0206E2F0.s b/arm9/asm/unk_0206E2F0.s
index 8694a11b..6741fd51 100644
--- a/arm9/asm/unk_0206E2F0.s
+++ b/arm9/asm/unk_0206E2F0.s
@@ -188,7 +188,7 @@ FUN_0206E3F8: ; 0x0206E3F8
bl NewMsgDataFromNarc
add r6, r0, #0x0
add r0, r4, #0x0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0x0
cmp r5, #0x0
bne _0206E428
@@ -215,7 +215,7 @@ _0206E428:
str r0, [sp, #0x4]
add r0, r4, #0x0
mov r3, #0x4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _0206E4FA
_0206E454:
add r2, r1, #0x2 ; ITEM_SEAL_CASE
@@ -234,7 +234,7 @@ _0206E454:
str r0, [sp, #0x4]
add r0, r4, #0x0
mov r3, #0x4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _0206E4FA
_0206E47E:
add r2, r1, #0x3 ; ITEM_FASHION_CASE
@@ -253,7 +253,7 @@ _0206E47E:
str r0, [sp, #0x4]
add r0, r4, #0x0
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r7, #0x0
bl FUN_0206E3D8
add r2, r0, #0x0
@@ -263,7 +263,7 @@ _0206E47E:
add r0, r4, #0x0
mov r3, #0x2
str r1, [sp, #0x4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _0206E4FA
_0206E4C0:
add r1, #0xc ; ITEM_COIN_CASE
@@ -282,10 +282,10 @@ _0206E4C0:
str r0, [sp, #0x4]
add r0, r4, #0x0
mov r3, #0x5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _0206E4FA
_0206E4EA:
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0x0
bl DestroyMsgData
add sp, #0xc
@@ -299,7 +299,7 @@ _0206E4FA:
add r0, r5, #0x0
bl String_dtor
add r0, r4, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0x0
bl DestroyMsgData
mov r0, #0x1
@@ -351,7 +351,7 @@ _0206E56A:
bl NewMsgDataFromNarc
add r7, r0, #0x0
add r0, r4, #0x0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0x0
add r0, r7, #0x0
mov r1, #0x24
@@ -360,7 +360,7 @@ _0206E56A:
ldr r2, [sp, #0x0]
add r0, r4, #0x0
mov r1, #0x0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0x0
add r1, r5, #0x0
add r2, r6, #0x0
@@ -368,7 +368,7 @@ _0206E56A:
add r0, r6, #0x0
bl String_dtor
add r0, r4, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r7, #0x0
bl DestroyMsgData
pop {r3-r7, pc}
diff --git a/arm9/asm/unk_0206F3FC.s b/arm9/asm/unk_0206F3FC.s
index 7a1729d2..3e7aed0c 100644
--- a/arm9/asm/unk_0206F3FC.s
+++ b/arm9/asm/unk_0206F3FC.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern UNK_021C48F8
+ .extern gMain
.extern gMain
.section .rodata
@@ -119,7 +119,7 @@ FUN_0206F3FC: ; 0x0206F3FC
add r4, r0, #0x0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -290,7 +290,7 @@ _0206F564:
_0206F582:
ldr r0, _0206F5A8 ; =FUN_0206FB58
add r1, r4, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02033F20
mov r0, #0x1
add sp, #0xc
@@ -964,7 +964,7 @@ FUN_0206FAA4: ; 0x0206FAA4
add r6, r0, #0x0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0x0
bl FUN_02073A2C
add r0, r6, #0x0
@@ -1009,7 +1009,7 @@ _0206FAFC:
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r6, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _0206FB54 ; =0x00000B34
ldr r0, [r6, r0]
cmp r0, #0x0
@@ -1442,7 +1442,7 @@ _0206FEC2:
ldr r1, _0206FF64 ; =0x00000698
str r0, [r6, r1]
mov r0, #0xc
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0x6a
lsl r1, r1, #0x4
add r7, r1, #0x0
@@ -4397,7 +4397,7 @@ _02071630:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -4688,7 +4688,7 @@ _02071886:
strh r1, [r0, #0x0]
add r0, sp, #0x4
str r0, [sp, #0x0]
- ldr r3, _020718C8 ; =UNK_021C48F8
+ ldr r3, _020718C8 ; =gMain + 0x40
ldr r0, [r5, #0x0]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -4707,7 +4707,7 @@ _020718BA:
.balign 4
_020718C0: .word UNK_020F94B8
_020718C4: .word 0x0000FFFE
-_020718C8: .word UNK_021C48F8
+_020718C8: .word gMain + 0x40
thumb_func_start FUN_020718CC
FUN_020718CC: ; 0x020718CC
@@ -5047,7 +5047,7 @@ _02071B34:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0x0
str r0, [sp, #0x0]
mov r1, #0x1
@@ -5058,7 +5058,7 @@ _02071B34:
ldrh r2, [r4, r2]
ldr r0, [r4, r0]
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -5570,7 +5570,7 @@ _02071FA0:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
ldr r0, [r5, r2]
@@ -5578,7 +5578,7 @@ _02071FA0:
ldr r2, [r5, r2]
mov r1, #0x1
ldrh r2, [r2, #0x24]
- bl FUN_0200AE38
+ bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
@@ -5603,7 +5603,7 @@ _02071FF2:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, _02072078 ; =0x00000B25
mov r3, #0x6a
ldrb r4, [r5, r2]
@@ -5615,7 +5615,7 @@ _02071FF2:
add r3, #0x6c
ldrh r2, [r2, r3]
mov r1, #0x1
- bl FUN_0200AE70
+ bl BufferItemNameWithIndefArticle
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
@@ -5879,13 +5879,13 @@ _02072246:
ldr r0, [r5, r0]
mov r1, #0x1
add r2, r4, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x2
add r2, r6, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
@@ -5998,7 +5998,7 @@ FUN_0207230C: ; 0x0207230C
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
ldr r0, [r5, r2]
@@ -6006,7 +6006,7 @@ FUN_0207230C: ; 0x0207230C
ldr r2, [r5, r2]
mov r1, #0x1
ldrh r2, [r2, #0x24]
- bl FUN_0200AE38
+ bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
@@ -6036,13 +6036,13 @@ _02072388:
ldr r0, [r5, r0]
mov r1, #0x1
add r2, r4, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x6a
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x2
add r2, r6, #0x0
- bl FUN_0200AE38
+ bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
diff --git a/arm9/asm/unk_02072548.s b/arm9/asm/unk_02072548.s
index 99ab8a55..f6f09ad1 100644
--- a/arm9/asm/unk_02072548.s
+++ b/arm9/asm/unk_02072548.s
@@ -406,7 +406,7 @@ FUN_020727FC: ; 0x020727FC
ldr r0, [r5, r0]
mov r1, #0x0
add r2, r7, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x6a
add r4, #0xf
lsl r1, r1, #0x4
@@ -596,7 +596,7 @@ _0207297E:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r5, r1]
@@ -657,7 +657,7 @@ FUN_02072A00: ; 0x02072A00
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
mov r1, #0x2c
lsl r2, r2, #0x4
@@ -2090,7 +2090,7 @@ _0207356C:
mov r1, #0x0
sub r2, r3, r2
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x6a
ldr r1, _02073638 ; =0x000006A4
lsl r0, r0, #0x4
@@ -2180,7 +2180,7 @@ _0207366E:
ldr r0, [r5, r0]
mov r1, #0x0
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x6a
ldr r1, _020736F0 ; =0x000006A4
lsl r0, r0, #0x4
diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s
index 8eed46de..8b8442a3 100644
--- a/arm9/asm/unk_02073DA8.s
+++ b/arm9/asm/unk_02073DA8.s
@@ -214,7 +214,7 @@ FUN_02073EEC: ; 0x02073EEC
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
@@ -260,7 +260,7 @@ _02073F66:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, _0207404C ; =0x00000B25
mov r3, #0x6a
ldrb r6, [r5, r2]
@@ -272,7 +272,7 @@ _02073F66:
add r3, #0x6c
ldrh r2, [r2, r3]
mov r1, #0x1
- bl FUN_0200AE38
+ bl BufferItemName
mov r2, #0x6a
lsl r2, r2, #0x4
add r1, r2, #0x4
diff --git a/arm9/asm/unk_0207550C.s b/arm9/asm/unk_0207550C.s
index 4750d078..9b71148c 100644
--- a/arm9/asm/unk_0207550C.s
+++ b/arm9/asm/unk_0207550C.s
@@ -372,7 +372,7 @@ FUN_020757F4: ; 0x020757F4
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r6, #0x0
bl FUN_0207550C
cmp r0, #0x1b
@@ -553,7 +553,7 @@ _0207598C:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x0
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -575,7 +575,7 @@ _020759BE:
mov r1, #0x1
ldr r0, [r4, r0]
add r2, r1, #0x0
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -597,7 +597,7 @@ _020759F0:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x2
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -619,7 +619,7 @@ _02075A22:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x3
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -641,7 +641,7 @@ _02075A54:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x4
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -663,7 +663,7 @@ _02075A86:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x5
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -686,7 +686,7 @@ _02075AB8:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x0
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -709,7 +709,7 @@ _02075AEC:
mov r1, #0x1
ldr r0, [r4, r0]
add r2, r1, #0x0
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -732,7 +732,7 @@ _02075B20:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x2
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -755,7 +755,7 @@ _02075B54:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x3
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -784,7 +784,7 @@ _02075B98:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x4
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -807,7 +807,7 @@ _02075BCA:
ldr r0, [r4, r0]
mov r1, #0x1
mov r2, #0x5
- bl FUN_0200AF50
+ bl BufferStatName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -829,7 +829,7 @@ _02075BFE:
ldr r0, [r4, r0]
mov r1, #0x0
add r2, r5, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -1287,7 +1287,7 @@ _02075FDA:
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0x0
mov r3, #0x6a
str r0, [sp, #0x0]
@@ -1304,7 +1304,7 @@ _02075FDA:
ldrh r2, [r2, r3]
mov r3, #0x3
sub r2, r4, r2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r5, r1]
@@ -1587,7 +1587,7 @@ _02076212:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -1878,7 +1878,7 @@ FUN_0207640C: ; 0x0207640C
lsl r0, r0, #0x4
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0x0
mov r3, #0x6a
str r0, [sp, #0x0]
@@ -1894,7 +1894,7 @@ FUN_0207640C: ; 0x0207640C
add r3, #0x6a
ldrh r2, [r2, r3]
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r5, r1]
@@ -2089,7 +2089,7 @@ _020766BA:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
ldr r0, [r4, r2]
@@ -2097,7 +2097,7 @@ _020766BA:
ldr r2, [r4, r2]
mov r1, #0x1
ldrh r2, [r2, #0x26]
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, _02076880 ; =0x0000069C
mov r1, #0x34
ldr r0, [r4, r0]
@@ -2136,7 +2136,7 @@ _02076724:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
ldr r0, [r4, r2]
@@ -2144,7 +2144,7 @@ _02076724:
ldr r2, [r4, r2]
mov r1, #0x1
ldrh r2, [r2, #0x26]
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, _02076880 ; =0x0000069C
mov r1, #0xc2
ldr r0, [r4, r0]
@@ -2216,7 +2216,7 @@ _020767A4:
ldr r2, [r4, r2]
mov r1, #0x1
ldrh r2, [r2, #0x26]
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r4, r1]
@@ -2315,7 +2315,7 @@ FUN_02076890: ; 0x02076890
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _02076944 ; =0x000005A4
ldr r2, [r4, r0]
add r1, r2, #0x0
@@ -2327,7 +2327,7 @@ FUN_02076890: ; 0x02076890
ldrh r2, [r2, #0x26]
ldr r0, [r4, r0]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
add r0, r4, #0x0
bl FUN_020769A4
pop {r3-r5, pc}
@@ -2341,7 +2341,7 @@ _020768E6:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, _02076948 ; =0x0000069C
mov r1, #0x3c
ldr r0, [r4, r0]
@@ -2599,7 +2599,7 @@ FUN_02076AF8: ; 0x02076AF8
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r2, #0x6a
lsl r2, r2, #0x4
ldr r0, [r4, r2]
@@ -2607,7 +2607,7 @@ FUN_02076AF8: ; 0x02076AF8
ldr r2, [r4, r2]
mov r1, #0x1
ldrh r2, [r2, #0x26]
- bl FUN_0200AD5C
+ bl BufferMoveName
cmp r5, #0xfd
bhi _02076B5A
bhs _02076BB2
@@ -2783,7 +2783,7 @@ FUN_02076C94: ; 0x02076C94
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _02076D2C ; =0x000005A4
ldr r2, [r4, r0]
add r1, r2, #0x0
@@ -2795,7 +2795,7 @@ FUN_02076C94: ; 0x02076C94
ldrh r2, [r2, #0x26]
ldr r0, [r4, r0]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
add r0, r4, #0x0
bl FUN_02076E28
pop {r3-r5, pc}
@@ -2809,7 +2809,7 @@ _02076CDC:
lsl r0, r0, #0x4
ldr r0, [r4, r0]
mov r1, #0x1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, _02076D34 ; =0x0000069C
mov r1, #0x3c
ldr r0, [r4, r0]
@@ -2874,7 +2874,7 @@ FUN_02076D3C: ; 0x02076D3C
ldr r2, [r5, r2]
mov r1, #0x1
ldrh r2, [r2, #0x26]
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r5, r1]
@@ -3156,7 +3156,7 @@ FUN_02076FB0: ; 0x02076FB0
ldr r0, [r5, r0]
mov r1, #0x0
add r2, r4, #0x0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r1, #0x6a
lsl r1, r1, #0x4
ldr r0, [r5, r1]
diff --git a/arm9/asm/unk_020772F0.s b/arm9/asm/unk_020772F0.s
index 863b9270..7ada0ae4 100644
--- a/arm9/asm/unk_020772F0.s
+++ b/arm9/asm/unk_020772F0.s
@@ -1,8 +1,8 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern UNK_021C48F8
- .extern gUnk021C4918
+ .extern gMain
+ .extern gMain
.extern gMain
.section .rodata
@@ -387,7 +387,7 @@ _020772FC:
_020772FE:
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -422,7 +422,7 @@ _020772FE:
lsl r1, r1, #0x4
str r0, [r4, r1]
mov r0, #0x12
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r2, #0x5a
lsl r2, r2, #0x2
str r0, [r4, r2]
@@ -470,7 +470,7 @@ _020772FE:
bl FUN_02002C50
ldr r0, _020774A0 ; =FUN_02077AE8
mov r1, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0x0
add r1, r6, #0x0
bl FUN_02077CD4
@@ -518,7 +518,7 @@ _020772FE:
bl FUN_0200E1D0
mov r0, #0x1
bl FUN_02077C84
- ldr r0, _020774A8 ; =gUnk021C4918
+ ldr r0, _020774A8 ; =gMain + 0x60
mov r1, #0x1
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -563,7 +563,7 @@ _02077498: .word 0xFFFFE0FF
_0207749C: .word 0x04001000
_020774A0: .word FUN_02077AE8
_020774A4: .word 0x000004C4
-_020774A8: .word gUnk021C4918
+_020774A8: .word gMain + 0x60
_020774AC: .word 0x000004B8
_020774B0: .word UNK_021C5C54
_020774B4: .word 0x000005C4
@@ -1251,15 +1251,15 @@ _02077A0C:
mov r0, #0x5a
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0x10]
bl OverlayManager_FreeData
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x12
bl FUN_020168D0
- ldr r0, _02077A80 ; =gUnk021C4918
+ ldr r0, _02077A80 ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -1272,7 +1272,7 @@ _02077A70: .word 0x000004AC
_02077A74: .word 0x000004B4
_02077A78: .word 0x000004BC
_02077A7C: .word 0xFFFF1FFF
-_02077A80: .word gUnk021C4918
+_02077A80: .word gMain + 0x60
thumb_func_start FUN_02077A84
FUN_02077A84: ; 0x02077A84
@@ -1670,7 +1670,7 @@ _02077D88:
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
add r0, r5, #0x0
bl FreeToHeap
_02077DCE:
@@ -1797,7 +1797,7 @@ FUN_02077E90: ; 0x02077E90
ldr r2, [r4, #0x48]
mov r1, #0x1
add r3, r6, #0x0
- bl FUN_0200B410
+ bl BufferBoxName
ldr r0, [sp, #0x10]
cmp r6, r0
beq _02077EF4
@@ -1807,7 +1807,7 @@ FUN_02077E90: ; 0x02077E90
ldr r2, [r4, #0x48]
ldr r3, [sp, #0x10]
mov r1, #0x2
- bl FUN_0200B410
+ bl BufferBoxName
ldr r0, [r4, #0x44]
add r0, r0, #0x2
str r0, [r4, #0x44]
@@ -1819,7 +1819,7 @@ _02077EF4:
ldr r2, [r4, #0x48]
mov r1, #0x2
add r3, r6, #0x0
- bl FUN_0200B410
+ bl BufferBoxName
_02077F04:
mov r0, #0x56
lsl r0, r0, #0x2
@@ -1850,7 +1850,7 @@ _02077F1A:
lsl r0, r0, #0x2
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
add r0, r6, #0x0
bl FreeToHeap
b _02077F7E
@@ -1875,7 +1875,7 @@ _02077F50:
ldr r0, [r5, r0]
add r2, r7, #0x0
add r3, r1, #0x0
- bl FUN_0200ABB4
+ bl BufferString
_02077F7E:
mov r1, #0x5a
lsl r1, r1, #0x2
@@ -5126,7 +5126,7 @@ FUN_02079930: ; 0x02079930
mov r0, #0x4
mov r12, r0
_02079944:
- ldr r2, _020799E0 ; =UNK_021C48F8
+ ldr r2, _020799E0 ; =gMain + 0x40
ldrh r0, [r2, #0x20]
cmp r0, #0x0
beq _020799DA
@@ -5211,5 +5211,5 @@ _020799DA:
mov r0, #0x0
pop {r3-r7, pc}
nop
-_020799E0: .word UNK_021C48F8
+_020799E0: .word gMain + 0x40
_020799E4: .word UNK_020FA264
diff --git a/arm9/asm/unk_02079C70.s b/arm9/asm/unk_02079C70.s
index c49c2d67..c701f1a8 100644
--- a/arm9/asm/unk_02079C70.s
+++ b/arm9/asm/unk_02079C70.s
@@ -59,7 +59,7 @@ FUN_02079C7C: ; 0x02079C7C
add r4, r0, #0x0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -156,7 +156,7 @@ FUN_02079C7C: ; 0x02079C7C
bl FUN_0207F098
ldr r0, _02079DB0 ; =FUN_02079F24
add r1, r5, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r1, #0x0
mov r0, #0x3d
@@ -318,7 +318,7 @@ FUN_02079ECC: ; 0x02079ECC
add r5, r0, #0x0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r5, #0x0
bl FUN_0207F068
add r0, r5, #0x0
@@ -669,7 +669,7 @@ FUN_0207A1A0: ; 0x0207A1A0
lsl r1, r1, #0x4
str r0, [r4, r1]
mov r0, #0x13
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0207A258 ; =0x0000067C
str r0, [r4, r1]
mov r0, #0xc
@@ -745,7 +745,7 @@ FUN_0207A264: ; 0x0207A264
bl FUN_0200B990
ldr r0, _0207A2D0 ; =0x0000067C
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x25
lsl r0, r0, #0x4
ldr r0, [r4, r0]
@@ -1863,7 +1863,7 @@ FUN_0207AB0C: ; 0x0207AB0C
mov r1, #0x0
ldr r0, [r7, r0]
add r2, r4, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r2, _0207AEB0 ; =0x0000067C
mov r1, #0x25
ldr r0, [r7, r2]
@@ -1882,7 +1882,7 @@ FUN_0207AB0C: ; 0x0207AB0C
mov r1, #0x0
ldr r0, [r7, r0]
add r2, r4, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, _0207AEB0 ; =0x0000067C
mov r1, #0x95
ldr r0, [r7, r2]
@@ -1901,7 +1901,7 @@ FUN_0207AB0C: ; 0x0207AB0C
mov r1, #0x0
ldr r0, [r7, r0]
add r2, r4, #0x0
- bl FUN_0200AD18
+ bl BufferBoxMonOTName
ldr r2, _0207AEB0 ; =0x0000067C
mov r1, #0x96
ldr r0, [r7, r2]
diff --git a/arm9/asm/unk_0207D5BC.s b/arm9/asm/unk_0207D5BC.s
index 3163b4c6..ca5fef37 100644
--- a/arm9/asm/unk_0207D5BC.s
+++ b/arm9/asm/unk_0207D5BC.s
@@ -404,7 +404,7 @@ FUN_0207D800: ; 0x0207D800
lsl r2, r2, #0x19
ldr r0, [r5, r0]
lsr r2, r2, #0x19
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _0207D898 ; =0x0000067C
add r2, r4, #0x0
ldr r0, [r5, r1]
@@ -452,7 +452,7 @@ FUN_0207D8A0: ; 0x0207D8A0
ldr r0, _0207D91C ; =0x0000067C
mov r1, #0x0
ldr r0, [r5, r0]
- bl FUN_0200AE38
+ bl BufferItemName
ldr r0, _0207D920 ; =0x00000674
mov r1, #0x5
ldr r0, [r5, r0]
@@ -666,7 +666,7 @@ FUN_0207DA48: ; 0x0207DA48
ldr r0, _0207DA90 ; =0x0000067C
add r3, r7, #0x0
ldr r0, [r5, r0]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _0207DA90 ; =0x0000067C
add r2, r4, #0x0
ldr r0, [r5, r1]
@@ -1756,7 +1756,7 @@ FUN_0207E200: ; 0x0207E200
ldrb r2, [r4, r2]
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_0200ADCC
+ bl BufferAbilityName
ldr r0, _0207E498 ; =0x00000674
mov r1, #0x7d
ldr r0, [r4, r0]
@@ -2293,7 +2293,7 @@ FUN_0207E840: ; 0x0207E840
add r2, #0x1d
ldrb r2, [r5, r2]
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _0207E998 ; =0x0000067C
add r2, r4, #0x0
ldr r0, [r5, r1]
@@ -2380,7 +2380,7 @@ FUN_0207E840: ; 0x0207E840
add r2, r3, r2
add r2, r2, #0x1
mov r3, #0x3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _0207E998 ; =0x0000067C
add r2, r6, #0x0
ldr r0, [r5, r1]
diff --git a/arm9/asm/unk_0207F95C.s b/arm9/asm/unk_0207F95C.s
index d53dcbdf..cface8d1 100644
--- a/arm9/asm/unk_0207F95C.s
+++ b/arm9/asm/unk_0207F95C.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern UNK_021C48F8
+ .extern gMain
.section .rodata
.global UNK_020FB6F8
@@ -274,7 +274,7 @@ _0207FADA:
strh r1, [r0, #0x0]
add r0, sp, #0x4
str r0, [sp, #0x0]
- ldr r3, _0207FB24 ; =UNK_021C48F8
+ ldr r3, _0207FB24 ; =gMain + 0x40
ldr r0, [r5, #0x0]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -294,7 +294,7 @@ _0207FB12:
_0207FB18: .word 0x0000068F
_0207FB1C: .word UNK_0210613C
_0207FB20: .word 0x0000FFFE
-_0207FB24: .word UNK_021C48F8
+_0207FB24: .word gMain + 0x40
thumb_func_start FUN_0207FB28
FUN_0207FB28: ; 0x0207FB28
diff --git a/arm9/asm/unk_0207FD00.s b/arm9/asm/unk_0207FD00.s
index 496486d7..38a42358 100644
--- a/arm9/asm/unk_0207FD00.s
+++ b/arm9/asm/unk_0207FD00.s
@@ -37,7 +37,7 @@ FUN_0207FD00: ; 0x0207FD00
ldr r2, [r4, #0x0]
mov r0, #0x9
mov r1, #0x20
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r4, #0x8]
str r5, [r4, #0xc]
str r6, [r4, #0x10]
@@ -459,7 +459,7 @@ _020800C0:
bl FreeToHeap
_020800CA:
ldr r0, [r4, #0x8]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x4]
bl DestroyMsgData
add r0, r4, #0x0
@@ -519,7 +519,7 @@ FUN_02080108: ; 0x02080108
str r0, [sp, #0x4]
ldr r0, [r5, #0x8]
mov r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x95
mov r2, #0x0
@@ -527,7 +527,7 @@ FUN_02080108: ; 0x02080108
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x1
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [r5, #0xc]
mov r1, #0x96
mov r2, #0x0
@@ -540,7 +540,7 @@ FUN_02080108: ; 0x02080108
mov r1, #0x2
ldr r0, [r5, #0x8]
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x9b
mov r2, #0x0
@@ -553,7 +553,7 @@ FUN_02080108: ; 0x02080108
mov r1, #0x3
ldr r0, [r5, #0x8]
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x98
mov r2, #0x0
@@ -561,7 +561,7 @@ FUN_02080108: ; 0x02080108
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
ldr r0, [r5, #0xc]
mov r1, #0x91
mov r2, #0x0
@@ -573,7 +573,7 @@ FUN_02080108: ; 0x02080108
str r0, [sp, #0x4]
ldr r0, [r5, #0x8]
mov r1, #0x5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x92
mov r2, #0x0
@@ -581,7 +581,7 @@ FUN_02080108: ; 0x02080108
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x6
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [r5, #0xc]
mov r1, #0x93
mov r2, #0x0
@@ -594,7 +594,7 @@ FUN_02080108: ; 0x02080108
ldr r0, [r5, #0x8]
mov r1, #0x7
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x97
mov r2, #0x0
@@ -602,7 +602,7 @@ FUN_02080108: ; 0x02080108
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x8
- bl FUN_0200B59C
+ bl BufferLocationName
ldr r0, [r5, #0x8]
ldr r1, [r5, #0x20]
add r2, r4, #0x0
@@ -643,7 +643,7 @@ FUN_02080228: ; 0x02080228
str r0, [sp, #0x4]
ldr r0, [r4, #0x8]
mov r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
mov r1, #0x95
mov r2, #0x0
@@ -651,7 +651,7 @@ FUN_02080228: ; 0x02080228
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x1
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [r4, #0xc]
mov r1, #0x96
mov r2, #0x0
@@ -664,7 +664,7 @@ FUN_02080228: ; 0x02080228
mov r1, #0x2
ldr r0, [r4, #0x8]
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
mov r1, #0x9b
mov r2, #0x0
@@ -677,7 +677,7 @@ FUN_02080228: ; 0x02080228
mov r1, #0x3
ldr r0, [r4, #0x8]
add r3, r1, #0x0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
mov r1, #0x79
mov r2, #0x0
@@ -714,7 +714,7 @@ _020802F8:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
b _0208036E
_0208030C:
mov r0, #0x1
@@ -723,7 +723,7 @@ _0208030C:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
b _0208036E
_02080320:
mov r0, #0x1
@@ -732,7 +732,7 @@ _02080320:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
b _0208036E
_02080334:
mov r0, #0x1
@@ -741,7 +741,7 @@ _02080334:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
b _0208036E
_02080348:
mov r0, #0x1
@@ -750,7 +750,7 @@ _02080348:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
b _0208036E
_0208035C:
mov r0, #0x1
@@ -759,7 +759,7 @@ _0208035C:
add r2, r0, #0x0
ldr r0, [r4, #0x8]
mov r1, #0x4
- bl FUN_0200B59C
+ bl BufferLocationName
_0208036E:
ldr r0, [r4, #0x8]
ldr r1, [r4, #0x20]
@@ -805,7 +805,7 @@ FUN_02080384: ; 0x02080384
str r0, [sp, #0x4]
ldr r0, [r5, #0x8]
mov r1, #0x5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x92
mov r2, #0x0
@@ -813,7 +813,7 @@ FUN_02080384: ; 0x02080384
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x6
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [r5, #0xc]
mov r1, #0x93
mov r2, #0x0
@@ -826,7 +826,7 @@ FUN_02080384: ; 0x02080384
ldr r0, [r5, #0x8]
mov r1, #0x7
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x97
mov r2, #0x0
@@ -834,7 +834,7 @@ FUN_02080384: ; 0x02080384
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x8
- bl FUN_0200B59C
+ bl BufferLocationName
b _02080478
_02080418:
mov r1, #0x94
@@ -847,7 +847,7 @@ _02080418:
str r0, [sp, #0x4]
ldr r0, [r5, #0x8]
mov r1, #0x5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x95
mov r2, #0x0
@@ -855,7 +855,7 @@ _02080418:
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x6
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [r5, #0xc]
mov r1, #0x96
mov r2, #0x0
@@ -868,7 +868,7 @@ _02080418:
ldr r0, [r5, #0x8]
mov r1, #0x7
mov r3, #0x2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0xc]
mov r1, #0x98
mov r2, #0x0
@@ -876,7 +876,7 @@ _02080418:
add r2, r0, #0x0
ldr r0, [r5, #0x8]
mov r1, #0x8
- bl FUN_0200B59C
+ bl BufferLocationName
_02080478:
ldr r0, [r5, #0x8]
ldr r1, [r5, #0x20]
diff --git a/arm9/asm/unk_02080C38.s b/arm9/asm/unk_02080C38.s
index 51dec0d5..b41f5319 100644
--- a/arm9/asm/unk_02080C38.s
+++ b/arm9/asm/unk_02080C38.s
@@ -2643,7 +2643,7 @@ FUN_0208201C: ; 0x0208201C
add r2, #0xd0
ldrh r2, [r2, #0x0]
add r1, r3, #0x0
- bl FUN_0200B244
+ bl BufferContestJudgeName
pop {r3-r5, pc}
thumb_func_start FUN_02082034
@@ -2670,7 +2670,7 @@ FUN_02082034: ; 0x02082034
ldrb r3, [r4, r3]
ldr r2, [r2, #0x0]
add r1, r6, #0x0
- bl FUN_0200ABB4
+ bl BufferString
add sp, #0x8
pop {r4-r6, pc}
.balign 4
@@ -2689,7 +2689,7 @@ FUN_0208206C: ; 0x0208206C
add r2, r0, #0x0
add r0, r4, #0x0
add r1, r6, #0x0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
pop {r4-r6, pc}
.balign 4
@@ -2710,7 +2710,7 @@ FUN_02082090: ; 0x02082090
add r2, r0, #0x0
add r0, r5, #0x0
add r1, r4, #0x0
- bl FUN_0200B278
+ bl BufferContestMessage
pop {r3-r5, pc}
.balign 4
@@ -2728,7 +2728,7 @@ FUN_020820B8: ; 0x020820B8
add r2, r0, #0x0
add r0, r5, #0x0
add r1, r4, #0x0
- bl FUN_0200B2AC
+ bl BufferContestMessage2
pop {r3-r5, pc}
.balign 4
_020820D8: .word 0x0000011F
@@ -3041,7 +3041,7 @@ _020822D6:
add r2, r0, #0x0
add r0, r4, #0x0
add r1, r5, #0x0
- bl GetRibbonNameOrDesc
+ bl BufferRibbonNameOrDesc
pop {r3-r5, pc}
.balign 4
_020822EC: .word 0x0000011F
diff --git a/arm9/asm/unk_020859C0.s b/arm9/asm/unk_020859C0.s
index efd11044..1a38e392 100644
--- a/arm9/asm/unk_020859C0.s
+++ b/arm9/asm/unk_020859C0.s
@@ -285,7 +285,7 @@ _02085A9A:
bl MOD62_022300E4
ldr r0, _02085BAC ; =MOD62_022310CC
add r1, r4, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0x0
bl MOD62_0222DD1C
mov r1, #0x0
diff --git a/arm9/asm/unk_02086084.s b/arm9/asm/unk_02086084.s
index 9e58b5cc..6ef3d150 100644
--- a/arm9/asm/unk_02086084.s
+++ b/arm9/asm/unk_02086084.s
@@ -17,7 +17,7 @@ FUN_02086084: ; 0x02086084
add r5, r0, #0x0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
mov r2, #0x1
mov r0, #0x3
@@ -95,7 +95,7 @@ FUN_02086084: ; 0x02086084
bl FUN_0200541C
ldr r0, _02086164 ; =FUN_02086664
add r1, r4, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x1
pop {r3-r5, pc}
nop
diff --git a/arm9/asm/unk_02086414.s b/arm9/asm/unk_02086414.s
index 05e25ce3..09d66fb6 100644
--- a/arm9/asm/unk_02086414.s
+++ b/arm9/asm/unk_02086414.s
@@ -575,7 +575,7 @@ FUN_020867EC: ; 0x020867EC
bl NewMsgDataFromNarc
add r7, r0, #0x0
mov r0, #0x47
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r5, r0, #0x0
add r0, r7, #0x0
add r1, r4, #0x0
@@ -590,7 +590,7 @@ FUN_020867EC: ; 0x020867EC
add r2, r0, #0x0
add r0, r5, #0x0
mov r1, #0x0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r2, [sp, #0x14]
add r0, r5, #0x0
add r1, r4, #0x0
@@ -611,7 +611,7 @@ FUN_020867EC: ; 0x020867EC
ldr r0, [sp, #0x14]
bl String_dtor
add r0, r5, #0x0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0x0
add sp, #0x18
pop {r3-r7, pc}
diff --git a/arm9/asm/unk_02087D00.s b/arm9/asm/unk_02087D00.s
index bf502fa3..49d4676c 100644
--- a/arm9/asm/unk_02087D00.s
+++ b/arm9/asm/unk_02087D00.s
@@ -77,7 +77,7 @@ FUN_02087D00: ; 0x02087D00
mov r0, #0x1
mov r1, #0x20
add r2, r5, #0x0
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [sp, #0x4]
mov r6, #0x0
_02087D60:
@@ -157,7 +157,7 @@ _02087DEE:
cmp r6, #0x64
blo _02087D60
ldr r0, [sp, #0x4]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0x0
bl FreeToHeap
ldr r0, [sp, #0x0]
diff --git a/arm9/asm/unk_02088D1C.s b/arm9/asm/unk_02088D1C.s
index 87b75f0d..a7a41701 100644
--- a/arm9/asm/unk_02088D1C.s
+++ b/arm9/asm/unk_02088D1C.s
@@ -95,8 +95,7 @@ UNK_020FD894: ; 0x020FD894
UNK_020FD8C8: ; 0x020FD8C8
.byte 0x00, 0x12
.short 0x0264
- .word UNK_020FD9AC
- .word 0x00000082
+ .word UNK_020FD9AC, 0x00000082
.byte 0x09, 0x00
.short 0x0252
.word UNK_020FD7D0, 0x00000018
@@ -197,8 +196,8 @@ _02088D2E:
nop
_02088D3C: .word UNK_020FD8C8
- thumb_func_start FUN_02088D40
-FUN_02088D40: ; 0x02088D40
+ thumb_func_start GetCityNamesMsgdataIdByCountry
+GetCityNamesMsgdataIdByCountry: ; 0x02088D40
push {r3, lr}
bl FUN_02088D20
bl FUN_02088D4C
diff --git a/arm9/asm/unk_02089498.s b/arm9/asm/unk_02089498.s
index 3962942c..82d06472 100644
--- a/arm9/asm/unk_02089498.s
+++ b/arm9/asm/unk_02089498.s
@@ -101,7 +101,7 @@ _020894FC:
bl FUN_0200E3A0
add r0, r6, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -126,7 +126,7 @@ _020894FC:
bl FUN_02089734
ldr r0, _020895EC ; =FUN_02089610
add r1, r4, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r0, #0x6
mov r1, #0x1
@@ -176,7 +176,7 @@ _020895BC:
bl FUN_020896E0
add r0, r6, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r6, #0x1
_020895DA:
add r0, r6, #0x0
diff --git a/arm9/asm/unk_02089960.s b/arm9/asm/unk_02089960.s
index 2154cdf9..575eade7 100644
--- a/arm9/asm/unk_02089960.s
+++ b/arm9/asm/unk_02089960.s
@@ -83,7 +83,7 @@ _020899B8:
bl FUN_0200E3A0
add r0, r4, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -123,7 +123,7 @@ _02089A20:
bl FUN_02089B2C
add r0, r4, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r4, #0x1
_02089A34:
add r0, r4, #0x0
diff --git a/arm9/asm/unk_02089D90.s b/arm9/asm/unk_02089D90.s
index b4a6a662..b8c341df 100644
--- a/arm9/asm/unk_02089D90.s
+++ b/arm9/asm/unk_02089D90.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
@@ -39,7 +39,7 @@ FUN_02089D90: ; 0x02089D90
bl FUN_0200E3A0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -58,7 +58,7 @@ FUN_02089D90: ; 0x02089D90
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _02089EFC ; =gUnk021C4918
+ ldr r0, _02089EFC ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -176,7 +176,7 @@ _02089EE4:
nop
_02089EF4: .word 0xFFFFE0FF
_02089EF8: .word 0x04001000
-_02089EFC: .word gUnk021C4918
+_02089EFC: .word gMain + 0x60
_02089F00: .word 0x04000050
_02089F04: .word 0x04001050
_02089F08: .word 0xFFFF1FFF
diff --git a/arm9/asm/unk_02089F24.s b/arm9/asm/unk_02089F24.s
index 8dfe9755..5c84eabc 100644
--- a/arm9/asm/unk_02089F24.s
+++ b/arm9/asm/unk_02089F24.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.extern UNK_020FF3E4
.extern UNK_020FF3EC
.extern UNK_020FF3FC
@@ -43,7 +43,7 @@ FUN_02089F24: ; 0x02089F24
bl FUN_0200E3A0
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -62,7 +62,7 @@ FUN_02089F24: ; 0x02089F24
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _0208A090 ; =gUnk021C4918
+ ldr r0, _0208A090 ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -180,7 +180,7 @@ _0208A078:
nop
_0208A088: .word 0xFFFFE0FF
_0208A08C: .word 0x04001000
-_0208A090: .word gUnk021C4918
+_0208A090: .word gMain + 0x60
_0208A094: .word 0x04000050
_0208A098: .word 0x04001050
_0208A09C: .word 0xFFFF1FFF
@@ -212,7 +212,7 @@ _0208A0C8:
bl FUN_02015EF4
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -231,7 +231,7 @@ _0208A0C8:
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _0208A230 ; =gUnk021C4918
+ ldr r0, _0208A230 ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -350,7 +350,7 @@ _0208A21A:
.balign 4
_0208A228: .word 0xFFFFE0FF
_0208A22C: .word 0x04001000
-_0208A230: .word gUnk021C4918
+_0208A230: .word gMain + 0x60
_0208A234: .word 0x04000050
_0208A238: .word 0x04001050
_0208A23C: .word 0xFFFF1FFF
diff --git a/arm9/asm/unk_0208A338.s b/arm9/asm/unk_0208A338.s
index d55eaa28..9764dd11 100644
--- a/arm9/asm/unk_0208A338.s
+++ b/arm9/asm/unk_0208A338.s
@@ -27,7 +27,7 @@ FUN_0208A338: ; 0x0208A338
bl String_ctor
str r0, [r4, #0x8]
mov r0, #0x20
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0xc]
ldr r2, _0208A3C0 ; =0x00000171
mov r0, #0x1
@@ -79,7 +79,7 @@ FUN_0208A3C8: ; 0x0208A3C8
ldr r0, [r4, #0x8]
bl String_dtor
ldr r0, [r4, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x10]
bl DestroyMsgData
add r0, r4, #0x0
diff --git a/arm9/asm/unk_0208A998.s b/arm9/asm/unk_0208A998.s
index 4b3a5510..14a02753 100644
--- a/arm9/asm/unk_0208A998.s
+++ b/arm9/asm/unk_0208A998.s
@@ -1,7 +1,7 @@
.include "asm/macros.inc"
.include "global.inc"
- .extern gUnk021C4918
+ .extern gMain
.section .rodata
@@ -94,7 +94,7 @@ _0208A9C6:
bl OS_EnableIrqMask
mov r0, #0x0
add r1, r0, #0x0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x0
add r1, r0, #0x0
bl FUN_02015F34
@@ -113,7 +113,7 @@ _0208A9C6:
mov r0, #0x4
mov r1, #0x8
bl FUN_0201669C
- ldr r0, _0208ABDC ; =gUnk021C4918
+ ldr r0, _0208ABDC ; =gMain + 0x60
mov r1, #0x0
strb r1, [r0, #0x5]
bl FUN_0201E7A0
@@ -278,7 +278,7 @@ _0208ABCC: .word UNK_020FF4A4
_0208ABD0: .word FUN_0208A998
_0208ABD4: .word 0xFFFFE0FF
_0208ABD8: .word 0x04001000
-_0208ABDC: .word gUnk021C4918
+_0208ABDC: .word gMain + 0x60
_0208ABE0: .word 0x04000050
_0208ABE4: .word 0x04001050
_0208ABE8: .word 0xFFFF1FFF
diff --git a/arm9/global.inc b/arm9/global.inc
index a6708fd8..64c64dc1 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -537,65 +537,65 @@
.extern ReadMsgData_ExpandPlaceholders
.extern GetMoveName
.extern GetSpeciesName
-.extern FUN_0200AA80
-.extern FUN_0200AA90
-.extern FUN_0200AB18
-.extern FUN_0200ABB4
-.extern FUN_0200ABC0
-.extern FUN_0200ABE4
-.extern FUN_0200AC0C
-.extern FUN_0200AC60
-.extern FUN_0200ACA4
-.extern FUN_0200ACC0
-.extern FUN_0200ACF8
-.extern FUN_0200AD18
-.extern FUN_0200AD38
-.extern FUN_0200AD5C
-.extern GetRibbonNameOrDesc
-.extern FUN_0200ADCC
-.extern FUN_0200AE04
-.extern FUN_0200AE38
-.extern FUN_0200AE70
-.extern FUN_0200AEA8
-.extern FUN_0200AEE0
-.extern FUN_0200AF18
-.extern FUN_0200AF50
-.extern FUN_0200AF88
-.extern FUN_0200AFBC
-.extern GetLandmarkName
-.extern FUN_0200B02C
-.extern FUN_0200B064
-.extern FUN_0200B09C
-.extern FUN_0200B0D4
+.extern ScrStrBufs_new
+.extern ScrStrBufs_new_custom
+.extern ScrStrBufs_delete
+.extern BufferString
+.extern BufferPlayersName
+.extern BufferRivalsName
+.extern BufferFriendsName
+.extern BufferBoxMonSpeciesName
+.extern BufferBoxMonSpeciesNameWithArticle
+.extern BufferSpeciesNameWithArticle
+.extern BufferBoxMonNickname
+.extern BufferBoxMonOTName
+.extern BufferIntegerAsString
+.extern BufferMoveName
+.extern BufferRibbonNameOrDesc
+.extern BufferAbilityName
+.extern BufferNatureName
+.extern BufferItemName
+.extern BufferItemNameWithIndefArticle
+.extern BufferItemNamePlural
+.extern BufferPocketName
+.extern BufferTypeName
+.extern BufferStatName
+.extern BufferStatusName
+.extern BufferFlavorDislikeText
+.extern BufferLandmarkName
+.extern BufferPoketchAppName
+.extern BufferTrainerClassName
+.extern BufferTrainerClassNameWithArticle
+.extern BufferTrainerClassName2
.extern FUN_0200B10C
.extern FUN_0200B144
-.extern FUN_0200B164
-.extern FUN_0200B19C
-.extern FUN_0200B1D4
-.extern FUN_0200B20C
-.extern FUN_0200B244
-.extern FUN_0200B278
-.extern FUN_0200B2AC
-.extern FUN_0200B2E0
-.extern FUN_0200B318
-.extern FUN_0200B350
-.extern FUN_0200B388
-.extern FUN_0200B3C0
-.extern FUN_0200B410
-.extern FUN_0200B430
-.extern FUN_0200B468
-.extern FUN_0200B4A0
-.extern FUN_0200B4D8
+.extern BufferUndergroundItemName
+.extern BufferUndergroundItemNameWithArticle
+.extern BufferUndergroundTrapName
+.extern BufferUndergroundTrapNameWithArticle
+.extern BufferContestJudgeName
+.extern BufferContestMessage
+.extern BufferContestMessage2
+.extern BufferInterviewQuestion
+.extern BufferInterviewAnswer
+.extern BufferDecorationName
+.extern BufferDecorationNameWithArticle
+.extern BufferGenderSymbol
+.extern BufferBoxName
+.extern BufferGymName
+.extern BufferTimeOfDayName
+.extern BufferCountryName
+.extern BufferCityName
.extern FUN_0200B518
-.extern FUN_0200B534
-.extern FUN_0200B568
-.extern FUN_0200B59C
-.extern FUN_0200B628
-.extern FUN_0200B660
-.extern FUN_0200B698
-.extern FUN_0200B6D0
+.extern BufferSealName
+.extern BufferSealNamePlural
+.extern BufferLocationName
+.extern BufferPoffinName
+.extern BufferFashionName
+.extern BufferFashionNameWithArticle
+.extern BufferContestBackgroundName
.extern FUN_0200B708
-.extern FUN_0200B764
+.extern BufferMonthNameAbbr
.extern FUN_0200B7A8
.extern StringExpandPlaceholders
.extern FUN_0200B84C
@@ -1007,7 +1007,7 @@
.extern FUN_02015E3C
.extern FUN_02015E60
.extern FUN_02015EF4
-.extern FUN_02015F10
+.extern Main_SetVBlankIntrCB
.extern FUN_02015F1C
.extern FUN_02015F34
.extern FUN_020161A4
@@ -2638,7 +2638,7 @@
.extern FUN_02037C00
.extern FUN_02037CF0
.extern FUN_02037D5C
-.extern FUN_02037D60
+.extern LaunchStoragePCInterface
.extern FUN_02037E18
.extern FUN_02037E80
.extern FUN_02037E90
@@ -2853,7 +2853,7 @@
.extern FUN_0203C174
.extern FUN_0203C1AC
.extern FUN_0203C200
-.extern FUN_0203C278
+.extern ScrCmd_monstoragepc
.extern FUN_0203C2C4
.extern FUN_0203C2E0
.extern FUN_0203C2F0
@@ -5443,7 +5443,7 @@
.extern FUN_02088B48
.extern FUN_02088D1C
.extern FUN_02088D20
-.extern FUN_02088D40
+.extern GetCityNamesMsgdataIdByCountry
.extern FUN_02088D4C
.extern FUN_02088D68
.extern FUN_02088D84
@@ -7161,9 +7161,9 @@
.extern MOD13_0221A7EC
.extern MOD13_0221A8A4
.extern MOD13_02223494
-.extern MOD14_021D74E0
-.extern MOD14_021D754C
-.extern MOD14_021D75B8
+.extern StoragePC_Overlay_Init
+.extern StoragePC_Overlay_Run
+.extern StoragePC_Overlay_Teardown
.extern MOD15_021D74E0
.extern MOD15_021D7558
.extern MOD15_021D7608
@@ -8162,7 +8162,7 @@
.extern UNK_020FD6D4
.extern UNK_021064B8
.extern UNK_021064C0
-.extern UNK_021C48F8
+.extern gMain
.extern UNK_021C8ECC
.extern UNK_021C8ED0
.extern UNK_021C8ED4
@@ -8209,8 +8209,6 @@
.extern UNK_02105BB8
.extern UNK_021064BC
.extern UNK_021064C4
-.extern gMain
-.extern gUnk021C4918
.extern UNK_021CED20
.extern UNK_021CED98
.extern UNK_021CEDD4
diff --git a/arm9/lib/include/OS_interrupt.h b/arm9/lib/include/OS_interrupt.h
index 893e6d65..08417872 100644
--- a/arm9/lib/include/OS_interrupt.h
+++ b/arm9/lib/include/OS_interrupt.h
@@ -4,6 +4,11 @@
#include "consts.h"
#include "nitro/OS_interrupt_shared.h"
+#define REG_OS_IME_IME_SHIFT 0
+
+#define OS_IME_DISABLE (0UL << REG_OS_IME_IME_SHIFT)
+#define OS_IME_ENABLE (1UL << REG_OS_IME_IME_SHIFT)
+
#define OS_IE_V_COUNT (1UL << REG_OS_IE_VE_SHIFT)
#define OS_IE_TIMER0 (1UL << REG_OS_IE_T0_SHIFT)
#define OS_IE_TIMER1 (1UL << REG_OS_IE_T1_SHIFT)
@@ -22,4 +27,23 @@ OSIrqMask OS_DisableIrqMask(OSIrqMask mask);
OSIrqMask OS_ResetRequestIrqMask(OSIrqMask mask);
void OS_SetIrqStackChecker(void);
+static inline BOOL OS_DisableIrq(void)
+{
+ u16 prep = reg_OS_IME;
+ reg_OS_IME = OS_IME_DISABLE;
+ return (BOOL)prep;
+}
+
+static inline BOOL OS_EnableIrq(void)
+{
+ u16 prep = reg_OS_IME;
+ reg_OS_IME = OS_IME_ENABLE;
+ return (BOOL)prep;
+}
+
+static inline OSIrqMask OS_GetIrqMask(void)
+{
+ return reg_OS_IE;
+}
+
#endif //POKEDIAMOND_ARM9_OS_INTERRUPT_H
diff --git a/arm9/lib/include/PAD_pad.h b/arm9/lib/include/PAD_pad.h
index 0cb8a6f0..327d306d 100644
--- a/arm9/lib/include/PAD_pad.h
+++ b/arm9/lib/include/PAD_pad.h
@@ -30,6 +30,12 @@
#define PAD_BUTTON_Y 0x0800 // Y
#define PAD_BUTTON_DEBUG 0x2000 // Debug button
+static inline u16 PAD_Read(void)
+{
+ return (u16)(((reg_PAD_KEYINPUT | *(vu16 *)HW_BUTTON_XY_BUF) ^
+ (PAD_PLUS_KEY_MASK | PAD_BUTTON_MASK)) & (PAD_PLUS_KEY_MASK | PAD_BUTTON_MASK));
+}
+
static inline BOOL PAD_DetectFold(void)
{
return (BOOL)((*(vu16 *)HW_BUTTON_XY_BUF & PAD_DETECT_FOLD_MASK) >> 15);
diff --git a/arm9/lib/include/mmap.h b/arm9/lib/include/mmap.h
index 8b30ffc8..81d47a7e 100644
--- a/arm9/lib/include/mmap.h
+++ b/arm9/lib/include/mmap.h
@@ -56,4 +56,32 @@ extern u32 SDK_AUTOLOAD_DTCM_START[];
#define OSi_WRAM_MAIN_ARENA_HI_DEFAULT (HW_WRAM)
#define OSi_WRAM_MAIN_ARENA_LO_DEFAULT (HW_WRAM)
+#define HW_BG_PLTT 0x05000000
+#define HW_BG_PLTT_END 0x05000200
+#define HW_BG_PLTT_SIZE (HW_BG_PLTT_END-HW_BG_PLTT)
+#define HW_OBJ_PLTT 0x05000200
+#define HW_OBJ_PLTT_END 0x05000400
+#define HW_OBJ_PLTT_SIZE (HW_OBJ_PLTT_END-HW_OBJ_PLTT)
+#define HW_PLTT HW_BG_PLTT
+#define HW_PLTT_END HW_OBJ_PLTT_END
+#define HW_PLTT_SIZE (HW_PLTT_END-HW_PLTT)
+#define HW_DB_BG_PLTT 0x05000400
+#define HW_DB_BG_PLTT_END 0x05000600
+#define HW_DB_BG_PLTT_SIZE (HW_DB_BG_PLTT_END-HW_DB_BG_PLTT)
+#define HW_DB_OBJ_PLTT 0x05000600
+#define HW_DB_OBJ_PLTT_END 0x05000800
+#define HW_DB_OBJ_PLTT_SIZE (HW_DB_OBJ_PLTT_END-HW_DB_OBJ_PLTT)
+#define HW_DB_PLTT HW_DB_BG_PLTT
+#define HW_DB_PLTT_END HW_DB_OBJ_PLTT_END
+#define HW_DB_PLTT_SIZE (HW_DB_PLTT_END-HW_DB_PLTT)
+#define HW_LCDC_VRAM 0x6800000
+#define HW_LCDC_VRAM_END 0x68a4000
+#define HW_LCDC_VRAM_SIZE (HW_LCDC_VRAM_END - HW_LCDC_VRAM)
+#define HW_OAM 0x07000000
+#define HW_OAM_END 0x07000400
+#define HW_OAM_SIZE (HW_OAM_END-HW_OAM)
+#define HW_DB_OAM 0x07000400
+#define HW_DB_OAM_END 0x07000800
+#define HW_DB_OAM_SIZE (HW_DB_OAM_END-HW_DB_OAM)
+
#endif //POKEDIAMOND_ARM9_MMAP_H \ No newline at end of file
diff --git a/arm9/lib/include/registers.h b/arm9/lib/include/registers.h
index b2915f8c..ae5b7adc 100644
--- a/arm9/lib/include/registers.h
+++ b/arm9/lib/include/registers.h
@@ -485,4 +485,32 @@
((u32)(a) << REG_PAD_KEYCNT_A_SHIFT))
#endif
+#define REG_GX_POWCNT_GE_SHIFT 3
+#define REG_GX_POWCNT_GE_SIZE 1
+#define REG_GX_POWCNT_GE_MASK 0x0008
+
+#define REG_GX_POWCNT_RE_SHIFT 2
+#define REG_GX_POWCNT_RE_SIZE 1
+#define REG_GX_POWCNT_RE_MASK 0x0004
+
+#define REG_GX_POWCNT_E2DG_SHIFT 1
+#define REG_GX_POWCNT_E2DG_SIZE 1
+#define REG_GX_POWCNT_E2DG_MASK 0x0002
+
+#define REG_GX_POWCNT_LCD_SHIFT 0
+#define REG_GX_POWCNT_LCD_SIZE 1
+#define REG_GX_POWCNT_LCD_MASK 0x0001
+
+#define REG_GX_POWCNT_LCDB_SHIFT 8
+#define REG_GX_POWCNT_LCDB_SIZE 1
+#define REG_GX_POWCNT_LCDB_MASK 0x0100
+
+#define REG_GX_POWCNT_E2DGB_SHIFT 9
+#define REG_GX_POWCNT_E2DGB_SIZE 1
+#define REG_GX_POWCNT_E2DGB_MASK 0x0200
+
+#define REG_GX_POWCNT_DSEL_SHIFT 15
+#define REG_GX_POWCNT_DSEL_SIZE 1
+#define REG_GX_POWCNT_DSEL_MASK 0x8000
+
#endif //POKEDIAMOND_ARM9_REGISTERS_H
diff --git a/arm9/lib/include/tp.h b/arm9/lib/include/tp.h
new file mode 100644
index 00000000..d2687545
--- /dev/null
+++ b/arm9/lib/include/tp.h
@@ -0,0 +1,37 @@
+#ifndef NITRO_TP_H_
+#define NITRO_TP_H_
+
+// Touch panel input structure
+typedef struct
+{
+ u16 x; // x coordinate ( 0 - 4095 )
+ u16 y; // y coordinate ( 0 - 4095 )
+ u16 touch; // Touch yes/no
+ u16 validity; // Valid yes/no
+}
+TPData;
+
+typedef struct NvTpData
+{
+ s16 x0; // X origin coordinate
+ s16 y0; // Y origin coordinate
+ s16 xDotSize; // X dot size
+ s16 yDotSize; // Y dot size
+}
+TPCalibrateParam;
+
+void TP_Init(void);
+void TP_SetCalibrateParam(const TPCalibrateParam *param);
+BOOL TP_GetUserInfo(TPCalibrateParam *calibrate);
+void TP_RequestSamplingAsync(void);
+u32 TP_WaitRawResult(TPData *result);
+void TP_GetLatestRawPointInAuto(TPData *result);
+void TP_GetCalibratedPoint(TPData *disp, const TPData *raw);
+
+static inline u32 TP_RequestRawSampling(TPData *result)
+{
+ TP_RequestSamplingAsync();
+ return TP_WaitRawResult(result);
+}
+
+#endif //NITRO_TP_H_
diff --git a/arm9/modules/05/asm/mod05_021D74E0.s b/arm9/modules/05/asm/mod05_021D74E0.s
index ad9d0939..24743c4b 100644
--- a/arm9/modules/05/asm/mod05_021D74E0.s
+++ b/arm9/modules/05/asm/mod05_021D74E0.s
@@ -44,7 +44,7 @@ _021D7524: ; jump table
_021D752C:
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
ldr r1, _021D7670 ; =0x04000050
add r0, r6, #0
@@ -353,7 +353,7 @@ _021D7806:
bl MOD05_021D7F9C
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4, #8]
bl FreeToHeap
ldr r0, [r4, #4]
@@ -1146,7 +1146,7 @@ MOD05_021D7E4C: ; 0x021D7E4C
bl MOD05_021F38B8
ldr r0, _021D7EE4 ; =MOD05_021D74E0
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r3, r4, r5, pc}
nop
_021D7EE4: .word MOD05_021D74E0
diff --git a/arm9/modules/05/asm/mod05_021E1374.s b/arm9/modules/05/asm/mod05_021E1374.s
index 75c42499..e3bb69a4 100644
--- a/arm9/modules/05/asm/mod05_021E1374.s
+++ b/arm9/modules/05/asm/mod05_021E1374.s
@@ -187,7 +187,7 @@ _021E14DC:
ldr r0, [r4, r0]
mov r1, #0
add r2, r5, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
mov r1, #8
bl MOD05_021E1514
diff --git a/arm9/modules/05/asm/mod05_021E1AD8.s b/arm9/modules/05/asm/mod05_021E1AD8.s
index 3beaf558..3dc5d0bb 100644
--- a/arm9/modules/05/asm/mod05_021E1AD8.s
+++ b/arm9/modules/05/asm/mod05_021E1AD8.s
@@ -1816,7 +1816,7 @@ MOD05_021E28A0: ; 0x021E28A0
bl NewMsgDataFromNarc
str r0, [sp, #0xc]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #0x10
mov r1, #4
@@ -1836,7 +1836,7 @@ MOD05_021E28A0: ; 0x021E28A0
add r0, r6, #0
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x10]
add r0, r6, #0
add r1, r4, #0
@@ -1861,7 +1861,7 @@ MOD05_021E28A0: ; 0x021E28A0
add r0, r4, #0
bl String_dtor
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0xc]
bl DestroyMsgData
add r0, r5, #0
@@ -1944,7 +1944,7 @@ MOD05_021E29C8: ; 0x021E29C8
bl NewMsgDataFromNarc
add r7, r0, #0
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r5, r0, #0
mov r0, #0x10
mov r1, #4
@@ -1964,7 +1964,7 @@ MOD05_021E29C8: ; 0x021E29C8
add r0, r5, #0
mov r1, #0
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x10]
add r0, r5, #0
add r1, r4, #0
@@ -1988,7 +1988,7 @@ MOD05_021E29C8: ; 0x021E29C8
add r0, r4, #0
bl String_dtor
add r0, r5, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r7, #0
bl DestroyMsgData
ldr r0, [sp, #0xc]
@@ -2062,7 +2062,7 @@ MOD05_021E2AD4: ; 0x021E2AD4
bl NewMsgDataFromNarc
add r7, r0, #0
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r5, r0, #0
mov r0, #0x10
mov r1, #4
@@ -2084,7 +2084,7 @@ MOD05_021E2AD4: ; 0x021E2AD4
add r0, r5, #0
mov r1, #0
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x10]
add r0, r5, #0
add r1, r4, #0
@@ -2108,7 +2108,7 @@ MOD05_021E2AD4: ; 0x021E2AD4
add r0, r4, #0
bl String_dtor
add r0, r5, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r7, #0
bl DestroyMsgData
ldr r0, [sp, #0xc]
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index f48dc799..a993374a 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -6353,11 +6353,11 @@ MOD05_021E835C: ; 0x021E835C
ldr r2, [r4, #4]
mov r1, #0
add r5, r0, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r2, [r4, #8]
add r0, r5, #0
mov r1, #1
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4, #8]
bl PlayerProfile_CountBadges
add r2, r0, #0
@@ -6367,7 +6367,7 @@ MOD05_021E835C: ; 0x021E835C
str r3, [sp, #4]
add r0, r5, #0
mov r1, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r4]
cmp r2, #0x64
blt _021E839A
@@ -6389,7 +6389,7 @@ _021E83A8:
str r0, [sp, #4]
add r0, r5, #0
mov r1, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
bl GetIGTHours
add r2, r0, #0
@@ -6413,7 +6413,7 @@ _021E83D6:
str r0, [sp, #4]
add r0, r5, #0
mov r1, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
bl GetIGTMinutes
mov r3, #2
@@ -6423,7 +6423,7 @@ _021E83D6:
str r0, [sp, #4]
add r0, r5, #0
mov r1, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, pc}
@@ -6630,7 +6630,7 @@ MOD05_021E8588: ; 0x021E8588
ldr r0, [r6, #8]
str r0, [r4, #0xc]
add r0, r5, #0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x14]
ldr r2, _021E85E0 ; =0x000001E3
mov r0, #1
@@ -6664,7 +6664,7 @@ MOD05_021E85E4: ; 0x021E85E4
ldr r0, [r4, #0x18]
bl DestroyMsgData
ldr r0, [r4, #0x14]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
bl FreeToHeap
pop {r4, pc}
@@ -14590,7 +14590,7 @@ MOD05_021EC668: ; 0x021EC668
add r0, r7, #0
mov r1, #0
add r2, r5, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r5, #0
mov r1, #5
mov r2, #0
@@ -14753,11 +14753,11 @@ MOD05_021EC7D4: ; 0x021EC7D4
add r2, r4, #0
mov r3, #3
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r1, #0
add r2, r6, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
lsl r0, r4, #0x18
lsr r0, r0, #0x18
add sp, #8
@@ -14779,7 +14779,7 @@ MOD05_021EC810: ; 0x021EC810
add r0, r5, #0
mov r1, #0
add r2, r6, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r1, r4, #1
mov r0, #0x64
mul r0, r1
@@ -14792,7 +14792,7 @@ MOD05_021EC810: ; 0x021EC810
add r2, r4, #0
mov r3, #5
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
add sp, #8
pop {r4, r5, r6, pc}
@@ -16416,11 +16416,11 @@ MOD05_021ED4E0: ; 0x021ED4E0
ldr r2, [sp]
add r0, r4, #0
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, [sp]
add r0, r4, #0
mov r1, #2
- bl FUN_0200AD18
+ bl BufferBoxMonOTName
_021ED50E:
ldr r0, [sp, #4]
mov r1, #5
@@ -16431,7 +16431,7 @@ _021ED50E:
ldr r2, [sp, #4]
add r0, r4, #0
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
_021ED526:
add sp, #8
pop {r4, pc}
@@ -16457,7 +16457,7 @@ MOD05_021ED52C: ; 0x021ED52C
ldr r0, [sp, #0x2c]
add r1, r4, #0
add r2, r5, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [sp, #0xc]
bl FUN_02023C84
add r1, r0, #0
@@ -16472,7 +16472,7 @@ MOD05_021ED52C: ; 0x021ED52C
ldr r0, [sp, #0x2c]
add r1, r7, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r1, #0x6f
mov r2, #0
@@ -16503,7 +16503,7 @@ _021ED5B4:
ldr r0, [sp, #0x2c]
ldr r1, [sp, #8]
add r2, r4, #0
- bl FUN_0200B3C0
+ bl BufferGenderSymbol
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
@@ -16518,7 +16518,7 @@ MOD05_021ED5C4: ; 0x021ED5C4
add r2, r0, #0
add r0, r5, #0
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
mov r1, #5
mov r2, #0
@@ -21629,7 +21629,7 @@ _021EFCC4:
add r2, r0, #0
ldr r0, [r6, #0x38]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0
mov r1, #0x21
bl MOD05_021F01EC
@@ -21819,7 +21819,7 @@ _021EFE4C:
add r2, r0, #0
ldr r0, [r4, #0x38]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0
mov r1, #0x23
bl MOD05_021F01EC
@@ -22021,7 +22021,7 @@ _021EFFE6:
add r2, r0, #0
ldr r0, [r5, #0x38]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x23
bl MOD05_021F01EC
@@ -22049,7 +22049,7 @@ _021F000E:
ldr r0, [r5, #0x38]
mov r1, #0
add r2, r6, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0
bl FreeToHeap
add r0, r5, #0
@@ -22149,7 +22149,7 @@ _021F0104:
add r2, r0, #0
ldr r0, [r5, #0x38]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x23
bl MOD05_021F01EC
@@ -22316,7 +22316,7 @@ MOD05_021F0254: ; 0x021F0254
add r4, r0, #0
bl MI_CpuFill8
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x38]
ldr r2, _021F028C ; =0x00000251
mov r0, #0
@@ -22343,7 +22343,7 @@ MOD05_021F0290: ; 0x021F0290
ldr r0, [r4, #0x3c]
bl DestroyMsgData
ldr r0, [r4, #0x38]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0xc]
bl String_dtor
ldr r0, [r4, #8]
@@ -29680,7 +29680,7 @@ MOD05_021F3AE0: ; 0x021F3AE0
ldr r0, [r5]
add r1, r6, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
mov r1, #0xa
bl _u32_div_f
@@ -29691,7 +29691,7 @@ MOD05_021F3AE0: ; 0x021F3AE0
str r3, [sp, #4]
ldr r0, [r5]
add r1, r7, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
@@ -34800,7 +34800,7 @@ MOD05_021F60C4: ; 0x021F60C4
mov r0, #8
mov r1, #0x40
mov r2, #4
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r4, #0x34]
pop {r4, pc}
@@ -34809,7 +34809,7 @@ MOD05_021F60FC: ; 0x021F60FC
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x34]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x2c]
bl String_dtor
ldr r0, [r4, #0x30]
diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s
index 4b2128f2..5d47188a 100644
--- a/arm9/modules/06/asm/module_06.s
+++ b/arm9/modules/06/asm/module_06.s
@@ -8410,7 +8410,7 @@ MOD06_0223D618: ; 0x0223D618
add r1, #0x88
str r0, [r1]
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, #0x8c
str r0, [r4]
pop {r4, pc}
@@ -8657,7 +8657,7 @@ _0223D804:
add r0, r4, #0
add r0, #0x8c
ldr r0, [r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x23
lsl r0, r0, #4
ldr r0, [r4, r0]
@@ -9412,7 +9412,7 @@ MOD06_0223DE34: ; 0x0223DE34
ldr r2, [sp, #0x10]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -9516,7 +9516,7 @@ _0223DF30:
ldr r0, [r0]
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -9858,7 +9858,7 @@ _0223E214:
mov r1, #0
add r2, r4, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -10107,7 +10107,7 @@ _0223E450:
ldrsh r2, [r4, r2]
ldr r0, [r0]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0
str r0, [sp]
mov r0, #1
@@ -10123,7 +10123,7 @@ _0223E450:
mul r2, r3
mov r1, #2
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
add r0, #0x88
ldr r0, [r0]
@@ -10198,7 +10198,7 @@ _0223E50A:
ldrsh r2, [r5, r2]
ldr r0, [r0]
mov r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -10238,7 +10238,7 @@ _0223E50A:
mul r2, r3
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -10341,7 +10341,7 @@ _0223E63A:
ldrh r2, [r5, r2]
ldr r0, [r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
b _0223E67C
_0223E66C:
add r0, r5, #0
@@ -10350,7 +10350,7 @@ _0223E66C:
ldrh r2, [r5, r2]
ldr r0, [r0]
mov r1, #0
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
_0223E67C:
ldr r0, _0223E794 ; =0x00000242
mov r1, #5
@@ -10362,7 +10362,7 @@ _0223E67C:
add r0, #0x8c
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AEE0
+ bl BufferPocketName
b _0223E704
_0223E698:
cmp r0, #1
@@ -10394,7 +10394,7 @@ _0223E6B8:
add r0, #0x8c
ldr r0, [r0]
mov r1, #0
- bl FUN_0200B534
+ bl BufferSealName
b _0223E6F6
_0223E6DC:
add r0, r1, #1
@@ -10407,7 +10407,7 @@ _0223E6DC:
add r0, #0x8c
ldr r0, [r0]
mov r1, #0
- bl FUN_0200B568
+ bl BufferSealNamePlural
_0223E6F6:
add r0, r5, #0
add r0, #0x88
@@ -10759,7 +10759,7 @@ MOD06_0223E9BC: ; 0x0223E9BC
ldr r0, [r4]
add r1, r5, #0
add r2, r3, #0
- bl FUN_0200AE38
+ bl BufferItemName
pop {r3, r4, r5, pc}
_0223E9DA:
cmp r0, #1
@@ -10768,7 +10768,7 @@ _0223E9DA:
ldr r0, [r4]
add r1, r5, #0
add r2, r3, #0
- bl FUN_0200B350
+ bl BufferDecorationName
pop {r3, r4, r5, pc}
_0223E9EC:
lsl r0, r3, #0x18
@@ -10778,7 +10778,7 @@ _0223E9EC:
add r2, r0, #0
ldr r0, [r4]
add r1, r5, #0
- bl FUN_0200B534
+ bl BufferSealName
pop {r3, r4, r5, pc}
nop
_0223EA04: .word 0x00000241
@@ -11464,17 +11464,17 @@ _0223EF28:
add r0, #0x40
bl FUN_0201901C
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0223EFF4 ; =0x02252420
ldr r1, [r1]
str r0, [r1, #0x50]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0223EFF4 ; =0x02252420
ldr r1, [r1]
str r0, [r1, #0x54]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0223EFF4 ; =0x02252420
ldr r2, [r1]
str r0, [r2, #0x58]
@@ -11532,7 +11532,7 @@ _0223F004:
ldr r0, [r0, #0x50]
cmp r0, #0
beq _0223F034
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _0223F08C ; =0x02252420
mov r1, #0
ldr r0, [r0]
@@ -11543,7 +11543,7 @@ _0223F034:
ldr r0, [r0, #0x54]
cmp r0, #0
beq _0223F04A
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _0223F08C ; =0x02252420
mov r1, #0
ldr r0, [r0]
@@ -11554,7 +11554,7 @@ _0223F04A:
ldr r0, [r0, #0x58]
cmp r0, #0
beq _0223F060
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _0223F08C ; =0x02252420
mov r1, #0
ldr r0, [r0]
@@ -11701,13 +11701,13 @@ _0223F11A:
ldr r0, [r0, #0x50]
mov r1, #0
add r2, r2, #1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223F26C ; =0x02252420
mov r1, #1
ldr r2, [r0]
ldr r0, [r2, #0x50]
ldr r2, [r2, #0x7c]
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, _0223F26C ; =0x02252420
mov r1, #0x31
ldr r2, [r0]
@@ -11746,7 +11746,7 @@ _0223F11A:
ldr r0, [r0]
mov r3, #5
ldr r0, [r0, #0x50]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223F26C ; =0x02252420
mov r1, #0x33
ldr r2, [r0]
@@ -11783,7 +11783,7 @@ _0223F21C:
ldr r0, [r0]
add r2, r2, #1
ldr r0, [r0, #0x50]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223F26C ; =0x02252420
mov r1, #0x32
ldr r2, [r0]
@@ -11919,7 +11919,7 @@ MOD06_0223F344: ; 0x0223F344
ldr r2, [r0]
ldr r0, [r2, #0x54]
ldr r2, [r2, #0x78]
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, _0223F3B4 ; =0x02252420
ldr r0, [r0]
ldr r0, [r0, #0x78]
@@ -11935,7 +11935,7 @@ MOD06_0223F344: ; 0x0223F344
lsr r2, r2, #0x10
ldr r0, [r0, #0x54]
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223F3B4 ; =0x02252420
mov r1, #0x30
ldr r2, [r0]
@@ -11992,7 +11992,7 @@ _0223F3E0:
ldr r0, [r0, #0x50]
add r2, r5, #1
add r3, r6, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r4]
mov r1, #0x32
ldr r0, [r2, #0x74]
@@ -12193,7 +12193,7 @@ MOD06_0223F584: ; 0x0223F584
ldr r2, [r2]
mov r1, #1
ldr r2, [r2, #0x7c]
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl MOD06_02240750
cmp r0, #2
bgt _0223F5B8
@@ -12469,7 +12469,7 @@ _0223F7E0:
mov r1, #0
ldr r0, [r0]
ldr r0, [r0, #0x50]
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, _0223F898 ; =0x02252420
mov r1, #0x34
ldr r2, [r0]
@@ -12506,7 +12506,7 @@ _0223F7E0:
mov r3, #5
ldr r0, [r0]
ldr r0, [r0, #0x50]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223F898 ; =0x02252420
mov r1, #0x33
ldr r2, [r0]
@@ -12722,7 +12722,7 @@ _0223FA02:
ldr r0, [r0]
mov r3, #2
ldr r0, [r0, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0223FA5C ; =0x02252420
mov r1, #0xf
ldr r0, [r0]
@@ -12778,7 +12778,7 @@ _0223FA6E:
beq _0223FA8C
ldr r0, [r4, #0x58]
mov r1, #1
- bl FUN_0200ABC0
+ bl BufferPlayersName
_0223FA8C:
add r4, #0x91
ldrb r0, [r4]
@@ -13900,7 +13900,7 @@ MOD06_022403E0: ; 0x022403E0
add r2, r0, #0
ldr r0, [r4, #0x58]
mov r1, #1
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #0x2b
mov r1, #1
bl MOD06_0223EDC4
@@ -13930,7 +13930,7 @@ MOD06_02240418: ; 0x02240418
ldr r2, [r2]
mov r1, #1
ldr r2, [r2, #0x7c]
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #4
mov r1, #1
bl MOD06_0223EDC4
@@ -14206,7 +14206,7 @@ MOD06_02240668: ; 0x02240668
ldr r2, [r2]
mov r1, #1
ldr r2, [r2, #0x7c]
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #5
mov r1, #1
bl MOD06_0223EDC4
@@ -14550,7 +14550,7 @@ MOD06_022408F8: ; 0x022408F8
ldr r0, [r4, #0x64]
ldr r2, [r4, #0x1c]
add r3, r1, #0
- bl FUN_0200ABB4
+ bl BufferString
add sp, #8
pop {r4, pc}
.align 2, 0
@@ -15086,7 +15086,7 @@ _02240D74:
add r0, r5, #0
mov r1, #0
mov r3, #1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _02240E8C
_02240D86:
mov r0, #0
@@ -15096,7 +15096,7 @@ _02240D86:
add r0, r5, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _02240E8C
_02240D9A:
cmp r2, #0
@@ -15111,7 +15111,7 @@ _02240DA2:
add r0, r5, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _02240E8C
_02240DB6:
cmp r2, #0
@@ -15147,7 +15147,7 @@ _02240DE4:
add r0, r5, #0
mov r1, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r6, #0
mov r1, #0xc
bl _s32_div_f
@@ -15161,7 +15161,7 @@ _02240DE4:
add r0, r5, #0
mov r1, #1
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
cmp r6, #0
bne _02240E2E
mov r4, #0x52
@@ -15202,7 +15202,7 @@ _02240E5E:
add r0, r5, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
cmp r6, #0
bne _02240E80
mov r4, #0x52
@@ -15338,7 +15338,7 @@ _02240F70:
add r2, r0, #0
ldr r0, [r4, #0x64]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
mov r1, #0x6b
bl MOD06_02240864
@@ -15363,7 +15363,7 @@ _02240FAA:
add r2, r0, #0
ldr r0, [r4, #0x64]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
mov r1, #0x79
bl MOD06_02240864
@@ -15551,7 +15551,7 @@ _0224113A:
mov r1, #0
bl MOD06_022408D4
ldr r0, [r4, #0x64]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x68]
bl DestroyMsgData
ldr r0, [r4, #0x14]
@@ -15594,7 +15594,7 @@ MOD06_02241188: ; 0x02241188
add r5, #0xac
str r0, [r5]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x64]
mov r0, #0
mov r1, #0x1a
@@ -18946,7 +18946,7 @@ MOD06_02242C78: ; 0x02242C78
bl NewMsgDataFromNarc
str r0, [r5, #0x54]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r5, #0x58]
add r0, r5, #0
str r4, [r5]
@@ -19455,7 +19455,7 @@ _02243060:
cmp r4, #0xc
blt _02243060
ldr r0, [r6, #0x58]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #0x54]
bl DestroyMsgData
pop {r4, r5, r6, pc}
@@ -21804,14 +21804,14 @@ MOD06_02244210: ; 0x02244210
mov r0, #0x13
mov r1, #0xe
mov r2, #4
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
mov r1, #0
str r1, [sp]
mov r3, #1
add r2, r7, #0
str r0, [sp, #0x14]
str r3, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r4, #0
_02244264:
add r0, r4, #0
@@ -21835,7 +21835,7 @@ _02244264:
ldr r0, [sp, #0x14]
ldr r3, [sp, #8]
add r1, r1, #1
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r5]
add r0, r0, #1
strb r0, [r5]
@@ -39953,7 +39953,7 @@ MOD06_0224CDA0: ; 0x0224CDA0
MOD06_0224CDB8: ; 0x0224CDB8
cmp r1, #0
beq _0224CE2A
- ldr r1, _0224CE2C ; =gUnk021C4918
+ ldr r1, _0224CE2C ; =gMain + 0x60
ldrb r1, [r1, #6]
cmp r1, #5
bhi _0224CE2A
@@ -40017,7 +40017,7 @@ _0224CE1C:
_0224CE2A:
bx lr
.align 2, 0
-_0224CE2C: .word gUnk021C4918
+_0224CE2C: .word gMain + 0x60
thumb_func_start MOD06_0224CE30
MOD06_0224CE30: ; 0x0224CE30
@@ -40861,7 +40861,7 @@ MOD06_0224D46C: ; 0x0224D46C
bl NewMsgDataFromNarc
str r0, [r4, #0x10]
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x14]
mov r2, #3
str r2, [sp]
@@ -40906,7 +40906,7 @@ MOD06_0224D46C: ; 0x0224D46C
add r2, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4, #0x14]
add r1, r6, #0
add r2, r5, #0
@@ -41037,7 +41037,7 @@ _0224D60C:
ldr r2, [sp, #0x28]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x14]
ldr r2, [sp, #0x2c]
add r1, r6, #0
@@ -41099,7 +41099,7 @@ MOD06_0224D6A4: ; 0x0224D6A4
ldr r0, [r4, #0x10]
bl DestroyMsgData
ldr r0, [r4, #0x14]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
bl FreeToHeap
pop {r4, pc}
@@ -41915,7 +41915,7 @@ MOD06_0224DD50: ; 0x0224DD50
add r0, r7, #0
add r4, r1, #0
add r5, r3, #0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #0xc8
add r1, r7, #0
@@ -41934,7 +41934,7 @@ MOD06_0224DD50: ; 0x0224DD50
add r0, r6, #0
mov r1, #0
add r2, #0x95
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -41943,11 +41943,11 @@ MOD06_0224DD50: ; 0x0224DD50
ldr r2, [r2, #8]
add r0, r6, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r5, r4]
add r0, r6, #0
mov r1, #2
- bl FUN_0200B660
+ bl BufferFashionName
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x10]
add r0, r6, #0
@@ -41957,7 +41957,7 @@ MOD06_0224DD50: ; 0x0224DD50
add r2, r7, #0
bl MOD06_0224DCD8
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0xc]
bl String_dtor
ldr r0, [sp, #0x10]
@@ -41975,7 +41975,7 @@ MOD06_0224DDD8: ; 0x0224DDD8
add r0, r7, #0
add r4, r1, #0
add r5, r3, #0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #0xc8
add r1, r7, #0
@@ -41994,7 +41994,7 @@ MOD06_0224DDD8: ; 0x0224DDD8
add r0, r6, #0
mov r1, #0
add r2, #0x95
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -42003,11 +42003,11 @@ MOD06_0224DDD8: ; 0x0224DDD8
ldr r2, [r2, #8]
add r0, r6, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r5, r4]
add r0, r6, #0
mov r1, #2
- bl FUN_0200B660
+ bl BufferFashionName
ldr r1, [sp, #0xc]
ldr r2, [sp, #0x10]
add r0, r6, #0
@@ -42017,7 +42017,7 @@ MOD06_0224DDD8: ; 0x0224DDD8
add r2, r7, #0
bl MOD06_0224DCD8
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0xc]
bl String_dtor
ldr r0, [sp, #0x10]
@@ -42057,7 +42057,7 @@ MOD06_0224DE60: ; 0x0224DE60
mov r3, #1
bl FUN_02019064
ldr r0, [sp, #0x14]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r6, #8]
mov r4, #0
add r5, r6, #0
@@ -42104,7 +42104,7 @@ _0224DEE6:
ldr r0, [r6, #0xc]
bl String_dtor
ldr r0, [r6, #8]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #4]
bl FUN_02019570
ldr r0, [r6, #4]
@@ -42130,14 +42130,14 @@ MOD06_0224DF1C: ; 0x0224DF1C
mov r1, #0
add r2, r6, #0
add r7, r3, #0
- bl FUN_0200AE38
+ bl BufferItemName
mov r1, #1
str r1, [sp]
str r1, [sp, #4]
ldr r0, [r5, #8]
add r2, r4, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
@@ -42145,7 +42145,7 @@ MOD06_0224DF1C: ; 0x0224DF1C
mov r1, #2
add r2, r7, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #4]
mov r1, #0xf
bl FUN_02019620
@@ -42232,7 +42232,7 @@ _0224DFC0:
mov r3, #0x11
bl FUN_02019064
ldr r0, [sp, #0x14]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0x49
lsl r1, r1, #2
str r0, [r5, r1]
@@ -42259,7 +42259,7 @@ _0224E034:
ldr r0, [r5, r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200B660
+ bl BufferFashionName
mov r0, #0x49
mov r1, #0x4a
lsl r0, r0, #2
@@ -42309,7 +42309,7 @@ _0224E084:
mov r0, #0x49
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x4a
lsl r0, r0, #2
ldr r0, [r5, r0]
diff --git a/arm9/modules/07/asm/module_07.s b/arm9/modules/07/asm/module_07.s
index 2b139a82..2659dd5c 100644
--- a/arm9/modules/07/asm/module_07.s
+++ b/arm9/modules/07/asm/module_07.s
@@ -124,7 +124,7 @@ MOD07_02211F34: ; 0x02211F34
mov r0, #0
strh r0, [r1]
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -253,7 +253,7 @@ _0221202E:
bl FUN_02079A70
ldr r0, _02212078 ; =MOD07_02212D68
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #1
pop {r4, pc}
_02212068:
@@ -301,7 +301,7 @@ _022120B8:
bl FUN_02079A70
ldr r0, _022120F8 ; =MOD07_02212D68
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r1, _022120F4 ; =0x00000B82
mov r0, #0
strb r0, [r4, r1]
@@ -359,7 +359,7 @@ _02212132:
bl FUN_02079A70
ldr r0, _02212170 ; =MOD07_02212D68
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r1, _0221216C ; =0x00000B82
mov r0, #0
strb r0, [r4, r1]
@@ -1617,7 +1617,7 @@ MOD07_02212B64: ; 0x02212B64
_02212B76:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4]
add r0, #0x28
ldrb r0, [r0]
@@ -4507,7 +4507,7 @@ _022142BE:
add r2, r0, #0
ldr r0, [sp, #0x14]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x20]
add r1, r6, #0
@@ -4621,7 +4621,7 @@ MOD07_0221437C: ; 0x0221437C
ldrb r2, [r3, r2]
ldr r0, [sp, #0x10]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x10]
ldr r1, [sp, #0x28]
add r2, r7, #0
@@ -4678,7 +4678,7 @@ MOD07_022143FC: ; 0x022143FC
ldr r0, [sp, #0x18]
ldrh r2, [r3, r2]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x18]
ldr r2, [sp, #0x20]
add r1, r4, #0
@@ -4742,7 +4742,7 @@ MOD07_022143FC: ; 0x022143FC
ldrh r2, [r3, r2]
ldr r0, [sp, #0x18]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x18]
add r1, r4, #0
add r2, r5, #0
@@ -4976,7 +4976,7 @@ MOD07_0221469C: ; 0x0221469C
str r0, [sp, #0xc]
ldr r0, [r6]
ldr r0, [r0, #0x24]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, [r6]
str r0, [sp, #8]
ldr r1, [r1, #0x24]
@@ -5010,7 +5010,7 @@ _022146F6:
ldr r0, [sp, #0xc]
bl FUN_0200B990
ldr r0, [sp, #8]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
diff --git a/arm9/modules/09/asm/module_09.s b/arm9/modules/09/asm/module_09.s
index 4ff7de8f..59100716 100644
--- a/arm9/modules/09/asm/module_09.s
+++ b/arm9/modules/09/asm/module_09.s
@@ -2373,7 +2373,7 @@ MOD09_02213138: ; 0x02213138
str r0, [r4, r1]
ldr r0, [r4]
ldr r0, [r0, #0xc]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _02213188 ; =0x00001FAC
str r0, [r4, r1]
ldr r1, [r4]
@@ -2402,7 +2402,7 @@ MOD09_02213190: ; 0x02213190
bl FUN_0200B990
ldr r0, _022131C0 ; =0x00001FAC
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _022131C4 ; =0x00001FB0
ldr r0, [r4, r0]
bl String_dtor
@@ -3500,7 +3500,7 @@ _02213A30:
ldr r0, _02213B74 ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _02213B74 ; =0x00001FAC
add r2, r6, #0
ldr r0, [r5, r1]
@@ -3535,7 +3535,7 @@ _02213A82:
ldr r0, _02213B74 ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _02213B74 ; =0x00001FAC
add r2, r6, #0
ldr r0, [r5, r1]
@@ -3584,7 +3584,7 @@ _02213AD4:
ldr r0, _02213B74 ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _02213B74 ; =0x00001FAC
add r2, r6, #0
ldr r0, [r5, r1]
@@ -3616,7 +3616,7 @@ _02213B24:
ldr r0, _02213B74 ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _02213B74 ; =0x00001FAC
add r2, r7, #0
ldr r0, [r5, r1]
@@ -4088,7 +4088,7 @@ MOD09_02213E84: ; 0x02213E84
ldr r0, _02214020 ; =0x00001FAC
mov r1, #0
ldr r0, [r6, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _02214020 ; =0x00001FAC
ldr r1, [sp, #0x1c]
ldr r0, [r6, r0]
@@ -4481,7 +4481,7 @@ MOD09_022141D8: ; 0x022141D8
ldrh r2, [r2, #0x1c]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200ADCC
+ bl BufferAbilityName
ldr r0, _02214254 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
@@ -4551,7 +4551,7 @@ _02214284:
ldrh r2, [r5, #0x1a]
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
ldr r0, _022142F0 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
@@ -4612,7 +4612,7 @@ MOD09_022142FC: ; 0x022142FC
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, _0221439C ; =0x00001FAC
ldr r2, [sp, #0x18]
ldr r0, [r5, r0]
@@ -4849,7 +4849,7 @@ MOD09_022144C0: ; 0x022144C0
lsl r2, r2, #0x19
ldr r0, [r5, r0]
lsr r2, r2, #0x19
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0221468C ; =0x00001FAC
ldr r1, [sp, #0x1c]
ldr r0, [r5, r0]
@@ -4921,7 +4921,7 @@ MOD09_022144C0: ; 0x022144C0
sub r2, r2, r3
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
b _022145F4
_022145E0:
mov r0, #1
@@ -4932,7 +4932,7 @@ _022145E0:
ldr r0, [r5, r0]
add r2, r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
_022145F4:
ldr r0, _0221468C ; =0x00001FAC
ldr r1, [sp, #0x10]
@@ -5053,7 +5053,7 @@ MOD09_02214694: ; 0x02214694
ldrh r2, [r2, #0xa]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214788 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
@@ -5162,7 +5162,7 @@ MOD09_02214790: ; 0x02214790
ldrh r2, [r2, #0xc]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214884 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
@@ -5272,7 +5272,7 @@ MOD09_0221488C: ; 0x0221488C
ldrh r2, [r2, #0xe]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214984 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
@@ -5384,7 +5384,7 @@ MOD09_0221498C: ; 0x0221498C
ldrh r2, [r2, #0x10]
ldr r0, [r4, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214A84 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
@@ -5496,7 +5496,7 @@ MOD09_02214A8C: ; 0x02214A8C
ldrh r2, [r2, #0x12]
ldr r0, [r4, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214B84 ; =0x00001FAC
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
@@ -5643,7 +5643,7 @@ MOD09_02214B8C: ; 0x02214B8C
ldrh r2, [r7, #0x10]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214D20 ; =0x00001FAC
ldr r1, [sp, #0x1c]
ldr r0, [r5, r0]
@@ -5689,7 +5689,7 @@ MOD09_02214B8C: ; 0x02214B8C
ldrh r2, [r7, #0x12]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214D20 ; =0x00001FAC
ldr r1, [sp, #0x24]
ldr r0, [r5, r0]
@@ -5880,7 +5880,7 @@ _02214E42:
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214ECC ; =0x00001FAC
ldr r2, [sp, #0x14]
ldr r0, [r5, r0]
@@ -6016,7 +6016,7 @@ _02214F72:
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02214FFC ; =0x00001FAC
ldr r2, [sp, #0x14]
ldr r0, [r5, r0]
@@ -6311,7 +6311,7 @@ MOD09_022151A8: ; 0x022151A8
ldr r2, [sp, #0x10]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _022152D8 ; =0x00001FAC
ldr r1, [sp, #0x24]
ldr r0, [r5, r0]
@@ -6355,7 +6355,7 @@ MOD09_022151A8: ; 0x022151A8
ldr r2, [sp, #0x14]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _022152D8 ; =0x00001FAC
ldr r1, [sp, #0x2c]
ldr r0, [r5, r0]
@@ -6560,7 +6560,7 @@ MOD09_022153B0: ; 0x022153B0
ldrb r2, [r2, #3]
ldr r0, [r5, r0]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _022154F8 ; =0x00001FAC
ldr r2, [sp, #0x20]
ldr r0, [r5, r0]
@@ -6596,7 +6596,7 @@ MOD09_022153B0: ; 0x022153B0
ldrb r2, [r2, #2]
ldr r0, [r5, r0]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _022154F8 ; =0x00001FAC
ldr r2, [sp, #0x24]
ldr r0, [r5, r0]
@@ -6688,7 +6688,7 @@ MOD09_022154FC: ; 0x022154FC
ldrb r2, [r2, #2]
ldr r0, [r5, r0]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _022155C8 ; =0x00001FAC
ldr r1, [sp, #0x14]
ldr r0, [r5, r0]
@@ -6972,7 +6972,7 @@ MOD09_02215784: ; 0x02215784
ldr r0, _022158DC ; =0x00001FAC
mov r1, #0
ldr r0, [r4, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _022158DC ; =0x00001FAC
ldr r1, [sp, #0x10]
ldr r0, [r4, r0]
@@ -8433,7 +8433,7 @@ _02216444:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8458,7 +8458,7 @@ _0221648E:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -8474,7 +8474,7 @@ _0221648E:
ldr r0, [r5, r0]
sub r2, r2, r3
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8517,7 +8517,7 @@ _02216512:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8540,7 +8540,7 @@ _0221654A:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8563,7 +8563,7 @@ _02216580:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8586,7 +8586,7 @@ _022165B6:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8609,7 +8609,7 @@ _022165EC:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8632,7 +8632,7 @@ _02216622:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8655,7 +8655,7 @@ _02216658:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8676,7 +8676,7 @@ _0221668E:
ldr r0, _022166CC ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, _022166CC ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -8718,12 +8718,12 @@ MOD09_022166D0: ; 0x022166D0
ldr r0, _0221672C ; =0x00001FAC
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _0221672C ; =0x00001FAC
ldr r2, _02216730 ; =0x00000175
ldr r0, [r5, r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r1, _0221672C ; =0x00001FAC
add r2, r4, #0
ldr r0, [r5, r1]
@@ -13351,11 +13351,11 @@ _02218C68:
add r2, r0, #0
ldr r0, [r5, #0x14]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [r5, #0x14]
ldr r2, _02218E3C ; =0x00000175
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r4, #0
@@ -13416,7 +13416,7 @@ _02218D22:
ldr r0, [r5, #0x14]
ldr r2, [r4, #4]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r6, #0
@@ -14099,7 +14099,7 @@ MOD09_022192A4: ; 0x022192A4
str r0, [r4, #0xc]
ldr r0, [r4]
ldr r0, [r0, #0xc]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x14]
ldr r1, [r4]
mov r0, #2
@@ -14119,7 +14119,7 @@ MOD09_022192E4: ; 0x022192E4
ldr r0, [r4, #0xc]
bl FUN_0200B990
ldr r0, [r4, #0x14]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x18]
bl String_dtor
pop {r4, pc}
@@ -14615,7 +14615,7 @@ MOD09_02219694: ; 0x02219694
add r2, r2, r7
ldrh r2, [r2, #0x3c]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
@@ -14695,7 +14695,7 @@ MOD09_02219738: ; 0x02219738
add r2, r2, r6
ldrh r2, [r2, #0x3e]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
@@ -14878,7 +14878,7 @@ MOD09_02219884: ; 0x02219884
ldrb r2, [r2, r3]
mov r3, #2
add r2, r2, #1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
ldr r2, [sp, #0x14]
@@ -14916,7 +14916,7 @@ MOD09_02219884: ; 0x02219884
ldrb r2, [r2]
mov r3, #2
add r2, r2, #1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r7, #0
@@ -15082,7 +15082,7 @@ MOD09_02219A8C: ; 0x02219A8C
add r2, r2, r3
ldrh r2, [r2, #0x3c]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
ldr r0, [r5, #0x14]
ldr r1, [r5, #0x18]
add r2, r7, #0
diff --git a/arm9/modules/11/asm/module_11_thumb1.s b/arm9/modules/11/asm/module_11_thumb1.s
index c24d5e86..891ecf6a 100644
--- a/arm9/modules/11/asm/module_11_thumb1.s
+++ b/arm9/modules/11/asm/module_11_thumb1.s
@@ -319,7 +319,7 @@ MOD11_0222D840: ; 0x0222D840
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x67
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -611,7 +611,7 @@ _0222D99A:
bl FUN_0201E74C
ldr r0, _0222DB4C ; =MOD11_0222F01C
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, _0222DB38 ; =0x000023FB
mov r3, #2
ldrb r1, [r5, r0]
@@ -902,7 +902,7 @@ _0222DC42:
bl NewMsgDataFromNarc
str r0, [r4, #0x10]
mov r0, #5
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x14]
mov r0, #5
lsl r0, r0, #6
@@ -1307,7 +1307,7 @@ _0222E10A:
ldr r0, [r4, #0x10]
bl DestroyMsgData
ldr r0, [r4, #0x14]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x71
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -1631,7 +1631,7 @@ _0222E2F0:
bl FUN_0201E74C
ldr r0, _0222E46C ; =MOD11_0222F01C
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add sp, #0x9c
pop {r4, r5, r6, r7, pc}
.align 2, 0
diff --git a/arm9/modules/11/asm/module_11_thumb2.s b/arm9/modules/11/asm/module_11_thumb2.s
index a87f7d23..9c5b85ce 100644
--- a/arm9/modules/11/asm/module_11_thumb2.s
+++ b/arm9/modules/11/asm/module_11_thumb2.s
@@ -222,7 +222,7 @@ _0222F30E:
bl DestroyMsgData
ldr r0, _0222F4D8 ; =MOD11_0222F0D4
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x10
str r0, [sp]
mov r3, #0
@@ -799,7 +799,7 @@ MOD11_0222F93C: ; 0x0222F93C
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_0200E3A0
@@ -6055,25 +6055,25 @@ MOD11_022320C8: ; 0x022320C8
add r2, r0, #0
ldr r0, [r5, #0x14]
add r1, r4, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
pop {r3, r4, r5, pc}
.align 2, 0
thumb_func_start MOD11_022320EC
MOD11_022320EC: ; 0x022320EC
- ldr r3, _022320F4 ; =FUN_0200AD5C
+ ldr r3, _022320F4 ; =BufferMoveName
ldr r0, [r0, #0x14]
bx r3
nop
-_022320F4: .word FUN_0200AD5C
+_022320F4: .word BufferMoveName
thumb_func_start MOD11_022320F8
MOD11_022320F8: ; 0x022320F8
- ldr r3, _02232100 ; =FUN_0200AE38
+ ldr r3, _02232100 ; =BufferItemName
ldr r0, [r0, #0x14]
bx r3
nop
-_02232100: .word FUN_0200AE38
+_02232100: .word BufferItemName
thumb_func_start MOD11_02232104
MOD11_02232104: ; 0x02232104
@@ -6085,7 +6085,7 @@ MOD11_02232104: ; 0x02232104
str r3, [sp, #4]
ldr r0, [r0, #0x14]
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, pc}
@@ -6099,7 +6099,7 @@ MOD11_0223211C: ; 0x0223211C
str r4, [sp]
str r4, [sp, #4]
ldr r0, [r0, #0x14]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r4, pc}
_02232134:
@@ -6108,42 +6108,42 @@ _02232134:
str r3, [sp, #4]
ldr r0, [r0, #0x14]
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r4, pc}
.align 2, 0
thumb_func_start MOD11_02232148
MOD11_02232148: ; 0x02232148
- ldr r3, _02232150 ; =FUN_0200AF18
+ ldr r3, _02232150 ; =BufferTypeName
ldr r0, [r0, #0x14]
bx r3
nop
-_02232150: .word FUN_0200AF18
+_02232150: .word BufferTypeName
thumb_func_start MOD11_02232154
MOD11_02232154: ; 0x02232154
- ldr r3, _0223215C ; =FUN_0200ADCC
+ ldr r3, _0223215C ; =BufferAbilityName
ldr r0, [r0, #0x14]
bx r3
nop
-_0223215C: .word FUN_0200ADCC
+_0223215C: .word BufferAbilityName
thumb_func_start MOD11_02232160
MOD11_02232160: ; 0x02232160
- ldr r3, _02232168 ; =FUN_0200AF50
+ ldr r3, _02232168 ; =BufferStatName
ldr r0, [r0, #0x14]
bx r3
nop
-_02232168: .word FUN_0200AF50
+_02232168: .word BufferStatName
thumb_func_start MOD11_0223216C
MOD11_0223216C: ; 0x0223216C
- ldr r3, _02232174 ; =FUN_0200AF88
+ ldr r3, _02232174 ; =BufferStatusName
ldr r0, [r0, #0x14]
bx r3
nop
-_02232174: .word FUN_0200AF88
+_02232174: .word BufferStatusName
thumb_func_start MOD11_02232178
MOD11_02232178: ; 0x02232178
@@ -6160,7 +6160,7 @@ MOD11_02232178: ; 0x02232178
add r2, r0, #0
ldr r0, [r5, #0x14]
add r1, r4, #0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
pop {r3, r4, r5, pc}
.align 2, 0
@@ -6171,11 +6171,11 @@ MOD11_0223219C: ; 0x0223219C
thumb_func_start MOD11_022321A0
MOD11_022321A0: ; 0x022321A0
- ldr r3, _022321A8 ; =FUN_0200AFBC
+ ldr r3, _022321A8 ; =BufferFlavorDislikeText
ldr r0, [r0, #0x14]
bx r3
nop
-_022321A8: .word FUN_0200AFBC
+_022321A8: .word BufferFlavorDislikeText
thumb_func_start MOD11_022321AC
MOD11_022321AC: ; 0x022321AC
@@ -6187,7 +6187,7 @@ MOD11_022321AC: ; 0x022321AC
add r2, r0, #0
ldr r0, [r5, #0x14]
add r1, r4, #0
- bl FUN_0200B0D4
+ bl BufferTrainerClassName2
pop {r3, r4, r5, pc}
thumb_func_start MOD11_022321C4
@@ -6210,7 +6210,7 @@ MOD11_022321DC: ; 0x022321DC
add r3, r2, #0
ldr r0, [r4, #0x14]
ldr r2, [r4, #0x64]
- bl FUN_0200B410
+ bl BufferBoxName
pop {r4, pc}
thumb_func_start MOD11_022321EC
@@ -28079,7 +28079,7 @@ _0223CF5C:
add r2, r0, #0
ldr r0, [sp, #0x24]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [sp, #0x18]
mov r1, #0xa0
mov r2, #0
@@ -28091,7 +28091,7 @@ _0223CF5C:
ldr r0, [sp, #0x24]
mov r3, #3
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x20]
add r2, r6, #0
@@ -82469,7 +82469,7 @@ MOD11_022574F0: ; 0x022574F0
add r2, r0, #0
add r0, r4, #0
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x1c]
add r0, r4, #0
@@ -83168,7 +83168,7 @@ _02257B1E:
add r0, r7, #0
mov r1, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x18]
add r0, r7, #0
add r1, r6, #0
@@ -86990,7 +86990,7 @@ MOD11_022599CC: ; 0x022599CC
ldrh r2, [r5, #0x18]
add r0, r4, #0
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
@@ -87086,7 +87086,7 @@ MOD11_02259AB0: ; 0x02259AB0
ldrh r2, [r5, #0x18]
add r0, r4, #0
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
@@ -87183,7 +87183,7 @@ MOD11_02259B94: ; 0x02259B94
ldrh r2, [r5, #0x18]
add r0, r4, #0
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldr r2, [sp, #0x1c]
add r0, r4, #0
add r1, r6, #0
@@ -87344,7 +87344,7 @@ _02259D2A:
add r2, r0, #0
ldr r0, [sp, #0x1c]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x28]
ldr r2, [sp, #0x24]
@@ -88781,7 +88781,7 @@ _0225A876:
ldr r0, [sp, #0x24]
mov r1, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #1
str r0, [sp]
mov r0, #0
@@ -88790,7 +88790,7 @@ _0225A876:
ldr r0, [sp, #0x24]
mov r1, #1
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x24]
ldr r1, [sp, #0x30]
ldr r2, [sp, #0x2c]
@@ -90807,7 +90807,7 @@ MOD11_0225B824: ; 0x0225B824
mov r1, #1
bl FUN_02003204
add r4, r0, #0
- ldr r0, _0225B8AC ; =UNK_021C48F8
+ ldr r0, _0225B8AC ; =gMain + 0x40
ldrh r0, [r0, #0x22]
cmp r0, #0
beq _0225B888
@@ -90849,7 +90849,7 @@ _0225B888:
_0225B8A8:
pop {r3, r4, r5, r6, r7, pc}
nop
-_0225B8AC: .word UNK_021C48F8
+_0225B8AC: .word gMain + 0x40
thumb_func_start MOD11_0225B8B0
MOD11_0225B8B0: ; 0x0225B8B0
diff --git a/arm9/modules/12/asm/module_12.s b/arm9/modules/12/asm/module_12.s
index 5d8f7ae6..215acf37 100644
--- a/arm9/modules/12/asm/module_12.s
+++ b/arm9/modules/12/asm/module_12.s
@@ -10,7 +10,7 @@ MOD12_0222D5C0: ; 0x0222D5C0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -187,7 +187,7 @@ MOD12_0222D5C0: ; 0x0222D5C0
bl FUN_02011744
str r0, [r4, #0x60]
mov r0, #0x15
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x54]
mov r0, #0x1e
lsl r0, r0, #4
@@ -272,7 +272,7 @@ _0222D7BC:
bl FUN_020833D4
ldr r0, _0222D898 ; =MOD12_0222DAE4
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #1
add sp, #0x14
pop {r4, r5, r6, r7, pc}
@@ -498,7 +498,7 @@ MOD12_0222D9B0: ; 0x0222D9B0
ldr r0, [r4, #0x58]
bl String_dtor
ldr r0, [r4, #0x54]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x44]
bl DestroyMsgData
ldr r0, [r4, #0x48]
@@ -518,7 +518,7 @@ MOD12_0222D9B0: ; 0x0222D9B0
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
mov r0, #0x15
bl FUN_020168D0
@@ -3145,7 +3145,7 @@ MOD12_0222EF04: ; 0x0222EF04
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -3286,7 +3286,7 @@ MOD12_0222EF04: ; 0x0222EF04
bl NewMsgDataFromNarc
str r0, [r5, #0x44]
mov r0, #0x16
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r5, #0x48]
mov r0, #5
lsl r0, r0, #6
@@ -3376,7 +3376,7 @@ MOD12_0222EF04: ; 0x0222EF04
bl FUN_020833D4
ldr r0, _0222F194 ; =MOD12_0222F458
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, _0222F198 ; =0x00000605
bl FUN_020054C8
mov r0, #1
@@ -3667,7 +3667,7 @@ _0222F3AE:
ldr r0, [r4, #0x50]
bl FUN_02002FEC
ldr r0, [r4, #0x48]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x4c]
bl String_dtor
ldr r0, [r4, #0x44]
@@ -3683,7 +3683,7 @@ _0222F3AE:
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
mov r0, #0x16
bl FUN_020168D0
@@ -4985,7 +4985,7 @@ MOD12_0222FE4C: ; 0x0222FE4C
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -5156,7 +5156,7 @@ MOD12_0222FE4C: ; 0x0222FE4C
add r1, #0x98
str r0, [r1]
mov r0, #0x17
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r1, r5, #0
add r1, #0x9c
str r0, [r1]
@@ -5243,7 +5243,7 @@ MOD12_0222FE4C: ; 0x0222FE4C
bl FUN_020054C8
ldr r0, _02230124 ; =MOD12_022303C0
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #1
add sp, #0xc
pop {r4, r5, pc}
@@ -5511,7 +5511,7 @@ _02230296:
add r0, r4, #0
add r0, #0x9c
ldr r0, [r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
add r0, #0x98
ldr r0, [r0]
@@ -5527,7 +5527,7 @@ _02230296:
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
mov r0, #0x17
bl FUN_020168D0
@@ -14734,7 +14734,7 @@ _02234AC4:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234AE2:
@@ -14746,7 +14746,7 @@ _02234AE2:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234AFC:
@@ -14758,14 +14758,14 @@ _02234AFC:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234B16:
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234B24:
@@ -14775,7 +14775,7 @@ _02234B24:
str r3, [sp, #4]
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234B38:
@@ -14787,7 +14787,7 @@ _02234B38:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234B50:
@@ -14799,7 +14799,7 @@ _02234B50:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrb r0, [r5, #1]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -14808,7 +14808,7 @@ _02234B50:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234B80:
@@ -14820,11 +14820,11 @@ _02234B80:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234BA4:
@@ -14836,7 +14836,7 @@ _02234BA4:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0
mov r1, #1
str r0, [sp]
@@ -14844,7 +14844,7 @@ _02234BA4:
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234BD0:
@@ -14856,7 +14856,7 @@ _02234BD0:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrb r2, [r5, #5]
ldr r3, [r4, #0xc]
ldr r0, [r4, #0x54]
@@ -14865,7 +14865,7 @@ _02234BD0:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #1
- bl FUN_0200B244
+ bl BufferContestJudgeName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234BFE:
@@ -14877,7 +14877,7 @@ _02234BFE:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -14886,7 +14886,7 @@ _02234BFE:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234C2E:
@@ -14898,11 +14898,11 @@ _02234C2E:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234C52:
@@ -14914,7 +14914,7 @@ _02234C52:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0
mov r1, #1
str r0, [sp]
@@ -14922,7 +14922,7 @@ _02234C52:
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234C7E:
@@ -14934,7 +14934,7 @@ _02234C7E:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -14943,14 +14943,14 @@ _02234C7E:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234CAE:
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -14959,14 +14959,14 @@ _02234CAE:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234CD2:
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldrb r0, [r5, #1]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -14975,14 +14975,14 @@ _02234CD2:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234CF6:
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
mov r0, #0
mov r1, #1
str r0, [sp]
@@ -14990,14 +14990,14 @@ _02234CF6:
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234D16:
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15006,7 +15006,7 @@ _02234D16:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234D3A:
@@ -15016,7 +15016,7 @@ _02234D3A:
str r3, [sp, #4]
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15025,7 +15025,7 @@ _02234D3A:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234D64:
@@ -15035,7 +15035,7 @@ _02234D64:
str r3, [sp, #4]
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r0, [r5, #1]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15044,7 +15044,7 @@ _02234D64:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234D8E:
@@ -15054,11 +15054,11 @@ _02234D8E:
str r3, [sp, #4]
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234DAC:
@@ -15068,7 +15068,7 @@ _02234DAC:
str r3, [sp, #4]
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15077,7 +15077,7 @@ _02234DAC:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234DD6:
@@ -15089,7 +15089,7 @@ _02234DD6:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
ldrb r0, [r5]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15098,7 +15098,7 @@ _02234DD6:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234E04:
@@ -15110,7 +15110,7 @@ _02234E04:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
ldrb r0, [r5, #1]
ldr r1, [r4, #0xc]
lsl r0, r0, #2
@@ -15119,7 +15119,7 @@ _02234E04:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234E32:
@@ -15131,11 +15131,11 @@ _02234E32:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234E54:
@@ -15147,7 +15147,7 @@ _02234E54:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
mov r0, #0
mov r1, #1
str r0, [sp]
@@ -15155,7 +15155,7 @@ _02234E54:
ldrb r2, [r5, #4]
ldr r0, [r4, #0x54]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234E7E:
@@ -15167,7 +15167,7 @@ _02234E7E:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldrb r2, [r5, #5]
ldr r3, [r4, #0xc]
ldr r0, [r4, #0x54]
@@ -15176,11 +15176,11 @@ _02234E7E:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #1
- bl FUN_0200B244
+ bl BufferContestJudgeName
ldrh r2, [r5, #2]
ldr r0, [r4, #0x54]
mov r1, #2
- bl FUN_0200AD5C
+ bl BufferMoveName
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
_02234EB6:
@@ -15192,7 +15192,7 @@ _02234EB6:
add r2, #0xd0
ldrh r2, [r2]
mov r1, #0
- bl FUN_0200B244
+ bl BufferContestJudgeName
mov r5, #0
_02234ECC:
add r0, r6, r5
@@ -15206,7 +15206,7 @@ _02234ECC:
add r2, r0, #0
ldr r0, [r4, #0x54]
add r1, r5, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r5, r5, #1
cmp r5, #4
blt _02234ECC
@@ -25464,7 +25464,7 @@ _02239A82:
ldr r0, [r5, #0x48]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r6]
ldr r1, [r5, #0xc]
lsl r0, r0, #2
@@ -25473,7 +25473,7 @@ _02239A82:
add r2, r0, #0
ldr r0, [r5, #0x48]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_02239AC8:
@@ -28412,7 +28412,7 @@ _0223B14C:
mov r0, #1
tst r0, r1
bne _0223B174
- ldr r0, _0223B34C ; =UNK_021C48F8
+ ldr r0, _0223B34C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _0223B186
@@ -28665,7 +28665,7 @@ _0223B340:
.align 2, 0
_0223B344: .word 0x00000171
_0223B348: .word gMain
-_0223B34C: .word UNK_021C48F8
+_0223B34C: .word gMain + 0x40
_0223B350: .word 0x000006ED
_0223B354: .word MOD12_02245F84
_0223B358: .word MOD12_02245F8C
@@ -34579,7 +34579,7 @@ _0223E09E:
add r2, r0, #0
ldr r0, [r4]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_0223E0BA:
@@ -34596,7 +34596,7 @@ _0223E0BA:
add r2, r0, #0
ldr r0, [r4]
mov r1, #0
- bl FUN_0200B278
+ bl BufferContestMessage
add sp, #8
pop {r4, r5, r6, pc}
_0223E0DE:
@@ -34607,7 +34607,7 @@ _0223E0DE:
add r4, #0x9c
ldrb r2, [r5, #4]
ldr r0, [r4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r4, r5, r6, pc}
_0223E0F4:
@@ -34629,7 +34629,7 @@ _0223E0F4:
ldr r0, [r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r5]
ldr r1, [r4, #0x14]
lsl r0, r0, #2
@@ -34639,7 +34639,7 @@ _0223E0F4:
add r2, r0, #0
ldr r0, [r4]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_0223E138:
@@ -34653,7 +34653,7 @@ _0223E138:
add r0, #0x9c
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #0
mov r1, #1
str r0, [sp]
@@ -34662,7 +34662,7 @@ _0223E138:
ldrb r2, [r5, #4]
ldr r0, [r4]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r4, r5, r6, pc}
_0223E16A:
@@ -34680,7 +34680,7 @@ _0223E16A:
add r0, #0x9c
ldr r0, [r0]
mov r1, #0
- bl FUN_0200B278
+ bl BufferContestMessage
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -34690,7 +34690,7 @@ _0223E16A:
ldrb r2, [r5, #4]
ldr r0, [r0]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r6, [r5]
ldr r3, [r4]
mov r0, #1
@@ -34708,7 +34708,7 @@ _0223E16A:
ldrb r3, [r6, r3]
ldr r0, [r0]
ldr r2, [r2]
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r5]
ldr r1, [r4, #0x14]
lsl r0, r0, #2
@@ -34718,7 +34718,7 @@ _0223E16A:
add r2, r0, #0
ldr r0, [r4]
mov r1, #3
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_0223E1E4:
@@ -41072,7 +41072,7 @@ MOD12_02241210: ; 0x02241210
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -41227,7 +41227,7 @@ MOD12_02241210: ; 0x02241210
add r1, #0xc4
str r0, [r1]
mov r0, #0x18
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r1, r5, #0
add r1, #0xc8
str r0, [r1]
@@ -41293,7 +41293,7 @@ MOD12_02241210: ; 0x02241210
bl FUN_020833D4
ldr r0, _02241484 ; =MOD12_02241754
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, _02241488 ; =MOD12_02241814
add r1, r5, #0
mov r2, #0xa
@@ -41546,7 +41546,7 @@ _022415D4:
add r0, r4, #0
add r0, #0xc8
ldr r0, [r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
add r0, #0xc4
ldr r0, [r0]
@@ -41574,7 +41574,7 @@ _022415D4:
str r0, [r2]
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
mov r0, #0x18
bl FUN_020168D0
@@ -43433,7 +43433,7 @@ _0224252E:
add r2, r0, #0
ldr r0, [r4]
mov r1, #0
- bl FUN_0200B278
+ bl BufferContestMessage
add sp, #8
pop {r4, r5, r6, pc}
_02242552:
@@ -43455,7 +43455,7 @@ _02242552:
ldr r0, [r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r5]
ldr r1, [r4, #0x10]
lsl r0, r0, #2
@@ -43465,7 +43465,7 @@ _02242552:
add r2, r0, #0
ldr r0, [r4]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_02242596:
@@ -43477,7 +43477,7 @@ _02242596:
add r0, #0xc8
ldrb r2, [r5, #4]
ldr r0, [r0]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldrb r6, [r5]
ldr r3, [r4]
mov r1, #1
@@ -43495,7 +43495,7 @@ _02242596:
ldrb r3, [r6, r3]
ldr r0, [r0]
ldr r2, [r2]
- bl FUN_0200ABB4
+ bl BufferString
ldrb r0, [r5]
ldr r1, [r4, #0x10]
lsl r0, r0, #2
@@ -43505,7 +43505,7 @@ _02242596:
add r2, r0, #0
ldr r0, [r4]
mov r1, #2
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add sp, #8
pop {r4, r5, r6, pc}
_022425EC:
diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s
index 0f186c44..7b1720cb 100644
--- a/arm9/modules/14/asm/module_14.s
+++ b/arm9/modules/14/asm/module_14.s
@@ -3,8 +3,8 @@
.section .text
.balign 4, 0
- thumb_func_start MOD14_021D74E0
-MOD14_021D74E0: ; 0x021D74E0
+ thumb_func_start StoragePC_Overlay_Init
+StoragePC_Overlay_Init: ; 0x021D74E0
push {r3, r4, r5, lr}
mov r2, #1
add r5, r0, #0
@@ -53,8 +53,8 @@ _021D7544:
.align 2, 0
_021D7548: .word MOD14_021D7680
- thumb_func_start MOD14_021D754C
-MOD14_021D754C: ; 0x021D754C
+ thumb_func_start StoragePC_Overlay_Run
+StoragePC_Overlay_Run: ; 0x021D754C
push {r4, lr}
bl OverlayManager_GetData
mov r1, #0x6b
@@ -107,8 +107,8 @@ _021D75AA:
nop
_021D75B4: .word gMain
- thumb_func_start MOD14_021D75B8
-MOD14_021D75B8: ; 0x021D75B8
+ thumb_func_start StoragePC_Overlay_Teardown
+StoragePC_Overlay_Teardown: ; 0x021D75B8
push {r4, lr}
bl OverlayManager_GetData
mov r1, #0x49
@@ -2355,7 +2355,7 @@ _021D8828:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
mov r1, #0
bl MOD14_021DBA44
@@ -2645,7 +2645,7 @@ _021D8A92:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r4, #0
mov r1, #0x19
bl MOD14_021DBA44
@@ -2659,7 +2659,7 @@ _021D8AB0:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r4, #0
mov r1, #0x19
bl MOD14_021DBA44
@@ -4962,7 +4962,7 @@ _021D9D86:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD14_021D9F80
add r0, r4, #0
@@ -5942,7 +5942,7 @@ _021DA566:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r4, #0
mov r1, #0x10
bl MOD14_021DBA44
@@ -6048,7 +6048,7 @@ _021DA648:
ldr r0, [r4, r0]
ldr r2, [r2, #4]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r4, #0
mov r1, #0
bl MOD14_021E5D98
@@ -6270,7 +6270,7 @@ _021DA81E:
ldr r0, [r4, r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r4, #0
mov r1, #0x1a
bl MOD14_021DBA44
@@ -7572,7 +7572,7 @@ MOD14_021DB220: ; 0x021DB220
lsl r1, r1, #2
str r0, [r5, r1]
mov r0, #9
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0x67
lsl r1, r1, #2
str r0, [r5, r1]
@@ -7702,7 +7702,7 @@ _021DB3BE:
mov r0, #0x67
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -10493,7 +10493,7 @@ _021DC79C:
mov r0, #0
add r1, r0, #0
mov r5, #1
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -10783,7 +10783,7 @@ MOD14_021DCA38: ; 0x021DCA38
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4]
bl FUN_0200CAB4
ldr r0, [r4, #4]
diff --git a/arm9/modules/15/asm/module_15.s b/arm9/modules/15/asm/module_15.s
index bd0ca04e..712980c4 100644
--- a/arm9/modules/15/asm/module_15.s
+++ b/arm9/modules/15/asm/module_15.s
@@ -2588,7 +2588,7 @@ MOD15_021D87F8: ; 0x021D87F8
beq _021D8878
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
str r5, [r4, #0x18]
str r6, [r4, #0x1c]
@@ -2647,7 +2647,7 @@ MOD15_021D8888: ; 0x021D8888
beq _021D88CE
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r4, #0
add r5, r6, #0
_021D889A:
@@ -5212,7 +5212,7 @@ _021D9CDC:
mov r0, #2
mov r1, #0x3c
mov r2, #0
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
add r5, r0, #0
mov r0, #0x4b
lsl r0, r0, #2
@@ -5222,7 +5222,7 @@ _021D9CDC:
add r6, r0, #0
add r0, r5, #0
add r2, r1, #0
- bl FUN_0200AEE0
+ bl BufferPocketName
ldr r0, [r4, #4]
bl MOD15_021D86E8
add r1, r0, #0
@@ -5248,7 +5248,7 @@ _021D9CDC:
add r0, r6, #0
bl String_dtor
add r0, r5, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
b _021D9DB0
_021D9D40:
ldr r0, [r4, #0x48]
diff --git a/arm9/modules/16/asm/module_16.s b/arm9/modules/16/asm/module_16.s
index 515f1d08..c3c739e5 100644
--- a/arm9/modules/16/asm/module_16.s
+++ b/arm9/modules/16/asm/module_16.s
@@ -38,7 +38,7 @@ _021D750E:
add r5, r0, #0
ldr r0, _021D7584 ; =MOD16_021D7650
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201CC08
mov r0, #4
@@ -157,7 +157,7 @@ MOD16_021D7614: ; 0x021D7614
bl OverlayManager_GetData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201CD04
cmp r0, #1
beq _021D7630
@@ -5718,7 +5718,7 @@ _021D9F88: .word FUN_02024CC4
thumb_func_start MOD16_021D9F8C
MOD16_021D9F8C: ; 0x021D9F8C
- ldr r1, _021D9FAC ; =UNK_021C48F8
+ ldr r1, _021D9FAC ; =gMain + 0x40
ldrh r1, [r1, #0x22]
cmp r1, #0
beq _021D9F9C
@@ -5737,7 +5737,7 @@ _021D9F9C:
_021D9FAA:
bx lr
.align 2, 0
-_021D9FAC: .word UNK_021C48F8
+_021D9FAC: .word gMain + 0x40
_021D9FB0: .word 0x00001758
_021D9FB4: .word gMain
thumb_func_end MOD16_021D9F8C
@@ -14617,7 +14617,7 @@ MOD16_021DE108: ; 0x021DE108
beq _021DE12E
b _021DE1D6
_021DE122:
- ldr r0, _021DE1DC ; =UNK_021C48F8
+ ldr r0, _021DE1DC ; =gMain + 0x40
ldrh r1, [r0, #0x1c]
str r1, [r4, #0x14]
ldrh r0, [r0, #0x1e]
@@ -14706,7 +14706,7 @@ _021DE1A2:
mov r0, #0
str r0, [r4, #0xc]
_021DE1C6:
- ldr r0, _021DE1DC ; =UNK_021C48F8
+ ldr r0, _021DE1DC ; =gMain + 0x40
ldrh r1, [r0, #0x1c]
str r1, [r4, #0x14]
ldrh r0, [r0, #0x1e]
@@ -14720,7 +14720,7 @@ _021DE1D6:
str r0, [r4, #0x20]
pop {r4, r5, r6, pc}
.align 2, 0
-_021DE1DC: .word UNK_021C48F8
+_021DE1DC: .word gMain + 0x40
thumb_func_end MOD16_021DE108
thumb_func_start MOD16_021DE1E0
@@ -15553,7 +15553,7 @@ MOD16_021DE8A0: ; 0x021DE8A0
mov r0, #0x83
lsl r0, r0, #2
str r0, [sp]
- ldr r3, _021DE8CC ; =UNK_021C48F8
+ ldr r3, _021DE8CC ; =gMain + 0x40
ldr r0, [r4, #0x14]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -15569,7 +15569,7 @@ MOD16_021DE8A0: ; 0x021DE8A0
add sp, #4
pop {r3, r4, pc}
.align 2, 0
-_021DE8CC: .word UNK_021C48F8
+_021DE8CC: .word gMain + 0x40
thumb_func_end MOD16_021DE8A0
thumb_func_start MOD16_021DE8D0
@@ -28665,7 +28665,7 @@ MOD16_021E482C: ; 0x021E482C
MOD16_021E4850: ; 0x021E4850
push {r3, r4, r5, lr}
add r5, r0, #0
- ldr r0, _021E48B4 ; =UNK_021C48F8
+ ldr r0, _021E48B4 ; =gMain + 0x40
add r4, r1, #0
ldrh r0, [r0, #0x22]
cmp r0, #0
@@ -28712,7 +28712,7 @@ _021E48A0:
_021E48B2:
pop {r3, r4, r5, pc}
.align 2, 0
-_021E48B4: .word UNK_021C48F8
+_021E48B4: .word gMain + 0x40
_021E48B8: .word gMain
thumb_func_end MOD16_021E4850
@@ -28726,7 +28726,7 @@ MOD16_021E48BC: ; 0x021E48BC
add r4, r1, #0
cmp r3, #0
beq _021E492E
- ldr r0, _021E4934 ; =UNK_021C48F8
+ ldr r0, _021E4934 ; =gMain + 0x40
ldrh r1, [r0, #0x22]
cmp r1, #0
beq _021E492A
@@ -28782,7 +28782,7 @@ _021E492E:
bl MOD16_021E4850
pop {r3, r4, r5, pc}
.align 2, 0
-_021E4934: .word UNK_021C48F8
+_021E4934: .word gMain + 0x40
thumb_func_end MOD16_021E48BC
thumb_func_start MOD16_021E4938
@@ -28795,7 +28795,7 @@ MOD16_021E4938: ; 0x021E4938
bl FUN_020054C8
mov r0, #1
str r0, [r4, #0x20]
- ldr r0, _021E4964 ; =UNK_021C48F8
+ ldr r0, _021E4964 ; =gMain + 0x40
ldr r1, [r4]
ldrh r2, [r0, #0x1c]
sub r1, r2, r1
@@ -28808,7 +28808,7 @@ _021E495C:
pop {r4, pc}
nop
_021E4960: .word 0x000005DD
-_021E4964: .word UNK_021C48F8
+_021E4964: .word gMain + 0x40
thumb_func_end MOD16_021E4938
thumb_func_start MOD16_021E4968
@@ -43280,7 +43280,7 @@ _021EB50A:
add r0, r4, #0
bl MOD16_021EC000
_021EB516:
- ldr r0, _021EB564 ; =UNK_021C48F8
+ ldr r0, _021EB564 ; =gMain + 0x40
ldrh r0, [r0, #0x1c]
str r0, [r4, #0x38]
mov r0, #1
@@ -43295,7 +43295,7 @@ _021EB522:
_021EB52E:
mov r0, #1
str r0, [r4, #0x4c]
- ldr r0, _021EB564 ; =UNK_021C48F8
+ ldr r0, _021EB564 ; =gMain + 0x40
ldrh r1, [r0, #0x1c]
str r1, [r4, #0x54]
ldrh r0, [r0, #0x1e]
@@ -43320,7 +43320,7 @@ _021EB55C:
str r0, [r4, #0x20]
pop {r4, pc}
nop
-_021EB564: .word UNK_021C48F8
+_021EB564: .word gMain + 0x40
thumb_func_end MOD16_021EB4F8
thumb_func_start MOD16_021EB568
@@ -43338,7 +43338,7 @@ _021EB57A:
ldr r0, [r4, #0x30]
cmp r0, #1
bne _021EB638
- ldr r1, _021EB63C ; =UNK_021C48F8
+ ldr r1, _021EB63C ; =gMain + 0x40
ldr r0, [r4, #0x38]
ldrh r2, [r1, #0x1c]
sub r2, r2, r0
@@ -43376,7 +43376,7 @@ _021EB5BA:
bl MOD16_021EBC98
add r0, r4, #0
bl MOD16_021EBCC4
- ldr r0, _021EB63C ; =UNK_021C48F8
+ ldr r0, _021EB63C ; =gMain + 0x40
ldrh r1, [r0, #0x1c]
str r1, [r4, #0x54]
ldrh r0, [r0, #0x1e]
@@ -43396,7 +43396,7 @@ _021EB5DE:
bl MOD16_021EC0C0
b _021EB632
_021EB5F8:
- ldr r1, _021EB63C ; =UNK_021C48F8
+ ldr r1, _021EB63C ; =gMain + 0x40
ldrh r0, [r1, #0x1e]
cmp r0, #0x83
bhs _021EB626
@@ -43430,7 +43430,7 @@ _021EB632:
_021EB638:
pop {r4, pc}
nop
-_021EB63C: .word UNK_021C48F8
+_021EB63C: .word gMain + 0x40
_021EB640: .word 0x000005F7
_021EB644: .word 0xFFFFFA00
thumb_func_end MOD16_021EB568
@@ -44176,7 +44176,7 @@ MOD16_021EBC30: ; 0x021EBC30
add r5, r0, #0
mov r0, #0
str r0, [sp]
- ldr r3, _021EBC94 ; =UNK_021C48F8
+ ldr r3, _021EBC94 ; =gMain + 0x40
ldr r0, [r5, #0x54]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -44225,7 +44225,7 @@ _021EBC90:
add sp, #4
pop {r3, r4, r5, r6, pc}
.align 2, 0
-_021EBC94: .word UNK_021C48F8
+_021EBC94: .word gMain + 0x40
thumb_func_end MOD16_021EBC30
thumb_func_start MOD16_021EBC98
diff --git a/arm9/modules/17/asm/module_17.s b/arm9/modules/17/asm/module_17.s
index 5c020257..be4096d7 100644
--- a/arm9/modules/17/asm/module_17.s
+++ b/arm9/modules/17/asm/module_17.s
@@ -87,7 +87,7 @@ _021D756E:
add r1, sp, #8
add r2, sp, #4
bl MOD17_021D7600
- ldr r0, _021D75D8 ; =UNK_021C48F8
+ ldr r0, _021D75D8 ; =gMain + 0x40
ldr r1, [sp, #8]
ldrh r2, [r0, #0x1c]
sub r1, r2, r1
@@ -140,7 +140,7 @@ _021D75D2:
add sp, #0xc
pop {r4, r5, r6, r7, pc}
.align 2, 0
-_021D75D8: .word UNK_021C48F8
+_021D75D8: .word gMain + 0x40
thumb_func_end MOD17_021D7554
thumb_func_start MOD17_021D75DC
@@ -411,19 +411,19 @@ MOD17_021D7794: ; 0x021D7794
bl MOD17_021D7D08
bl MOD17_021D7D28
bl MOD17_021D7DB0
- ldr r0, _021D77B0 ; =gUnk021C4918
+ ldr r0, _021D77B0 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #5]
bl FUN_0201E7A0
pop {r3, pc}
nop
-_021D77B0: .word gUnk021C4918
+_021D77B0: .word gMain + 0x60
thumb_func_end MOD17_021D7794
thumb_func_start MOD17_021D77B4
MOD17_021D77B4: ; 0x021D77B4
push {r3, lr}
- ldr r0, _021D77D0 ; =gUnk021C4918
+ ldr r0, _021D77D0 ; =gMain + 0x60
mov r1, #0
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -432,7 +432,7 @@ MOD17_021D77B4: ; 0x021D77B4
bl GX_ResetBankForTex
pop {r3, pc}
nop
-_021D77D0: .word gUnk021C4918
+_021D77D0: .word gMain + 0x60
thumb_func_end MOD17_021D77B4
thumb_func_start MOD17_021D77D4
@@ -2058,7 +2058,7 @@ MOD17_021D83E4: ; 0x021D83E4
bl memset
ldr r0, _021D84DC ; =MOD17_021D8FC8
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
add r0, r4, #0
bl OverlayManager_GetField18
@@ -2242,7 +2242,7 @@ _021D85AA:
ldr r1, [r0, #0x48]
mov r0, #3
and r1, r0
- ldr r0, _021D872C ; =UNK_021C48F8
+ ldr r0, _021D872C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
orr r0, r1
bne _021D85BC
@@ -2424,7 +2424,7 @@ _021D871C: .word 0x00000554
_021D8720: .word 0x00000151
_021D8724: .word 0x000006CC
_021D8728: .word gMain
-_021D872C: .word UNK_021C48F8
+_021D872C: .word gMain + 0x40
_021D8730: .word 0x0000069C
_021D8734: .word 0x0000048C
thumb_func_end MOD17_021D84F0
@@ -2501,7 +2501,7 @@ _021D8780:
bl MOD17_021D8D94
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201CD04
cmp r0, #1
@@ -2548,7 +2548,7 @@ MOD17_021D8818: ; 0x021D8818
bl memset
ldr r0, _021D8980 ; =MOD17_021D8FC8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
add r0, r5, #0
bl OverlayManager_GetField18
@@ -3109,7 +3109,7 @@ MOD17_021D8C9C: ; 0x021D8C9C
bl MOD17_021D8D94
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201CD04
cmp r0, #1
@@ -4956,7 +4956,7 @@ MOD17_021D9B74: ; 0x021D9B74
add r4, r0, #0
bl MOD17_021D9918
mov r0, #0xd
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _021D9B98 ; =0x000006D4
str r0, [r4, r1]
add sp, #8
@@ -4984,7 +4984,7 @@ MOD17_021D9BA4: ; 0x021D9BA4
ldr r3, _021D9BC0 ; =0x000006D4
ldr r0, [r0, r3]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, pc}
nop
@@ -5006,7 +5006,7 @@ MOD17_021D9BCC: ; 0x021D9BCC
bl MOD17_021D9B30
ldr r0, _021D9BE4 ; =0x000006D4
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _021D9BE4 ; =0x000006D4
mov r1, #0
str r1, [r4, r0]
@@ -7839,7 +7839,7 @@ _021DAF60: .word MOD17_021DAFA0
thumb_func_start MOD17_021DAF64
MOD17_021DAF64: ; 0x021DAF64
push {r4, lr}
- ldr r1, _021DAF9C ; =UNK_021C48F8
+ ldr r1, _021DAF9C ; =gMain + 0x40
add r4, r0, #0
ldrh r2, [r1, #0x20]
cmp r2, #0
@@ -7861,7 +7861,7 @@ _021DAF82:
ldr r1, [r4, #8]
blx r1
_021DAF8C:
- ldr r0, _021DAF9C ; =UNK_021C48F8
+ ldr r0, _021DAF9C ; =gMain + 0x40
ldrh r1, [r0, #0x1c]
strh r1, [r4, #0x14]
ldrh r1, [r0, #0x1e]
@@ -7870,7 +7870,7 @@ _021DAF8C:
strb r0, [r4, #0x18]
pop {r4, pc}
.align 2, 0
-_021DAF9C: .word UNK_021C48F8
+_021DAF9C: .word gMain + 0x40
thumb_func_end MOD17_021DAF64
thumb_func_start MOD17_021DAFA0
@@ -8397,7 +8397,7 @@ MOD17_021DB3A4: ; 0x021DB3A4
ldr r0, [r2, #0x10]
cmp r0, #0
beq _021DB3C8
- ldr r3, _021DB3CC ; =UNK_021C48F8
+ ldr r3, _021DB3CC ; =gMain + 0x40
ldr r1, _021DB3D0 ; =0x0000FFFF
ldrh r4, [r3, #0x1c]
cmp r4, r1
@@ -8412,7 +8412,7 @@ MOD17_021DB3A4: ; 0x021DB3A4
_021DB3C8:
pop {r4, pc}
nop
-_021DB3CC: .word UNK_021C48F8
+_021DB3CC: .word gMain + 0x40
_021DB3D0: .word 0x0000FFFF
thumb_func_end MOD17_021DB3A4
@@ -8449,7 +8449,7 @@ MOD17_021DB404: ; 0x021DB404
ldr r0, [r4, #0x10]
cmp r0, #0
beq _021DB49E
- ldr r1, _021DB4A4 ; =UNK_021C48F8
+ ldr r1, _021DB4A4 ; =gMain + 0x40
ldrh r2, [r1, #0x1c]
ldr r1, _021DB4A8 ; =0x0000FFFF
cmp r2, r1
@@ -8462,7 +8462,7 @@ MOD17_021DB404: ; 0x021DB404
add r1, sp, #0x10
add r2, sp, #0xc
bl MOD17_021DBC08
- ldr r0, _021DB4A4 ; =UNK_021C48F8
+ ldr r0, _021DB4A4 ; =gMain + 0x40
ldr r1, [r4, #0x14]
ldrh r2, [r0, #0x1c]
ldr r3, [sp, #0xc]
@@ -8522,7 +8522,7 @@ _021DB49E:
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
-_021DB4A4: .word UNK_021C48F8
+_021DB4A4: .word gMain + 0x40
_021DB4A8: .word 0x0000FFFF
thumb_func_end MOD17_021DB404
@@ -9089,7 +9089,7 @@ _021DB89A:
asr r2, r2, #1
sub r0, r0, r2
str r0, [sp]
- ldr r0, _021DB8F4 ; =UNK_021C48F8
+ ldr r0, _021DB8F4 ; =gMain + 0x40
str r1, [sp, #4]
ldrh r2, [r0, #0x1c]
mov r3, #0
@@ -9112,7 +9112,7 @@ _021DB8EE:
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
-_021DB8F4: .word UNK_021C48F8
+_021DB8F4: .word gMain + 0x40
thumb_func_end MOD17_021DB880
thumb_func_start MOD17_021DB8F8
@@ -13798,7 +13798,7 @@ MOD17_021DDB58: ; 0x021DDB58
bl memset
ldr r0, _021DDC28 ; =MOD17_021DDD40
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
add r0, r5, #0
bl OverlayManager_GetField18
@@ -13821,7 +13821,7 @@ _021DDBBC:
ldr r0, [r5, #8]
str r0, [r4, #0xc]
bl MOD17_021D7794
- ldr r0, _021DDC2C ; =gUnk021C4918
+ ldr r0, _021DDC2C ; =gMain + 0x60
mov r1, #0
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -13864,7 +13864,7 @@ _021DDC02:
pop {r3, r4, r5, pc}
.align 2, 0
_021DDC28: .word MOD17_021DDD40
-_021DDC2C: .word gUnk021C4918
+_021DDC2C: .word gMain + 0x60
thumb_func_end MOD17_021DDB58
thumb_func_start MOD17_021DDC30
@@ -13985,7 +13985,7 @@ MOD17_021DDCF4: ; 0x021DDCF4
bl MOD17_021D77B4
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
add r0, r5, #0
bl OverlayManager_FreeData
@@ -14347,7 +14347,7 @@ MOD17_021DDFDC: ; 0x021DDFDC
bl ErrorHandling
_021DDFF8:
mov r0, #0xd
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #0x63
lsl r0, r0, #2
@@ -14445,7 +14445,7 @@ _021DDFF8:
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -14467,7 +14467,7 @@ MOD17_021DE0F4: ; 0x021DE0F4
bl FUN_02027C58
add r6, r0, #0
mov r0, #0xd
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r7, r0, #0
mov r0, #0xc8
mov r1, #0xd
@@ -14478,13 +14478,13 @@ MOD17_021DE0F4: ; 0x021DE0F4
add r2, r0, #0
add r0, r7, #0
mov r1, #0
- bl FUN_0200B2AC
+ bl BufferContestMessage2
add r0, r6, #0
bl FUN_02083268
add r2, r0, #0
add r0, r7, #0
mov r1, #1
- bl FUN_0200B278
+ bl BufferContestMessage
ldr r0, [r5, #4]
bl FUN_02027B44
add r6, r0, #0
@@ -14499,7 +14499,7 @@ MOD17_021DE0F4: ; 0x021DE0F4
mov r1, #3
add r2, r4, #0
add r3, r6, #0
- bl FUN_0200ABB4
+ bl BufferString
mov r0, #0xd
bl AllocMonZeroed
add r6, r0, #0
@@ -14511,7 +14511,7 @@ MOD17_021DE0F4: ; 0x021DE0F4
add r2, r0, #0
add r0, r7, #0
mov r1, #4
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r6, #0
bl FreeToHeap
ldr r2, _021DE24C ; =0x00000151
@@ -14593,7 +14593,7 @@ _021DE1A0:
ldr r0, [sp, #0x10]
bl DestroyMsgData
add r0, r7, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x14
pop {r4, r5, r6, r7, pc}
nop
diff --git a/arm9/modules/18/asm/module_18.s b/arm9/modules/18/asm/module_18.s
index a37cfb8a..09b24dc9 100644
--- a/arm9/modules/18/asm/module_18.s
+++ b/arm9/modules/18/asm/module_18.s
@@ -1756,7 +1756,7 @@ MOD18_0223A3D4: ; 0x0223A3D4
ldr r0, [r0]
str r4, [r0, #4]
ldr r0, _0223A4D0 ; =MOD18_0223C6CC
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl MOD18_0223D638
add r1, r4, #0
bl MOD18_0224DBB0
@@ -1974,7 +1974,7 @@ _0223A5F8:
bl FUN_0201E08C
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, _0223A648 ; =0x02251380
ldr r0, [r0]
ldr r0, [r0, #4]
@@ -2247,7 +2247,7 @@ _0223A844:
bl FUN_0201BD70
cmp r0, #0
bne _0223A922
- ldr r0, _0223AB08 ; =UNK_021C48F8
+ ldr r0, _0223AB08 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _0223A86C
@@ -2326,7 +2326,7 @@ _0223A8E4:
ldr r0, [r4, #0x4c]
sub r0, r0, #1
str r0, [r4, #0x4c]
- ldr r0, _0223AB08 ; =UNK_021C48F8
+ ldr r0, _0223AB08 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _0223A924
@@ -2380,7 +2380,7 @@ _0223A958:
bl FUN_0201BD70
cmp r0, #0
bne _0223AA5A
- ldr r0, _0223AB08 ; =UNK_021C48F8
+ ldr r0, _0223AB08 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _0223A98A
@@ -2558,7 +2558,7 @@ _0223AAF2:
.align 2, 0
_0223AB00: .word 0x00000621
_0223AB04: .word MOD18_02251380
-_0223AB08: .word UNK_021C48F8
+_0223AB08: .word gMain + 0x40
_0223AB0C: .word gMain
_0223AB10: .word 0x000005E3
_0223AB14: .word 0x000003D9
@@ -2665,7 +2665,7 @@ _0223ABDC:
bl FUN_0201BD70
cmp r0, #0
bne _0223AC10
- ldr r0, _0223AC1C ; =UNK_021C48F8
+ ldr r0, _0223AC1C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _0223AC04
@@ -2685,7 +2685,7 @@ _0223AC10:
.align 2, 0
_0223AC14: .word MOD18_02251380
_0223AC18: .word 0x000006A1
-_0223AC1C: .word UNK_021C48F8
+_0223AC1C: .word gMain + 0x40
_0223AC20: .word gMain
thumb_func_end MOD18_0223A64C
@@ -5595,7 +5595,7 @@ MOD18_0223C1F0: ; 0x0223C1F0
mov r1, #0
strb r1, [r2, r0]
_0223C216:
- ldr r1, _0223C340 ; =UNK_021C48F8
+ ldr r1, _0223C340 ; =gMain + 0x40
ldrh r0, [r1, #0x20]
cmp r0, #0
beq _0223C29A
@@ -5673,7 +5673,7 @@ _0223C29A:
bl FUN_020054C8
_0223C2AC:
ldr r0, _0223C338 ; =0x02251380
- ldr r2, _0223C340 ; =UNK_021C48F8
+ ldr r2, _0223C340 ; =gMain + 0x40
ldr r3, [r0]
ldr r4, _0223C33C ; =0x000009E5
ldr r0, [r3, #4]
@@ -5741,7 +5741,7 @@ _0223C332:
.align 2, 0
_0223C338: .word MOD18_02251380
_0223C33C: .word 0x000009E5
-_0223C340: .word UNK_021C48F8
+_0223C340: .word gMain + 0x40
_0223C344: .word 0x000009E4
_0223C348: .word 0x000009E7
_0223C34C: .word 0x000009E8
@@ -7704,7 +7704,7 @@ _0223D212:
cmp r1, #0
beq _0223D26E
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r5, r0, #0
mov r0, #0x64
mov r1, #4
@@ -7717,7 +7717,7 @@ _0223D212:
ldr r2, _0223D294 ; =0x000004CC
mov r1, #2
ldrb r2, [r3, r2]
- bl FUN_0200B19C
+ bl BufferUndergroundItemNameWithArticle
add r0, r5, #0
mov r1, #2
bl FUN_0200B7A8
@@ -7752,7 +7752,7 @@ _0223D280:
cmp r5, #0
beq _0223D28A
add r0, r5, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_0223D28A:
add r0, r7, #0
pop {r3, r4, r5, r6, r7, pc}
@@ -8319,7 +8319,7 @@ MOD18_0223D6D8: ; 0x0223D6D8
cmp r6, #0
beq _0223D73E
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0
mov r0, #0x64
mov r1, #4
@@ -8328,11 +8328,11 @@ MOD18_0223D6D8: ; 0x0223D6D8
add r0, r4, #0
mov r1, #0
add r2, r5, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0
mov r1, #1
add r2, r6, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl MOD18_0223D638
bl MOD18_0224DBB4
ldr r1, [sp]
@@ -8345,7 +8345,7 @@ MOD18_0223D6D8: ; 0x0223D6D8
add r0, r7, #0
bl String_dtor
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
@@ -8366,7 +8366,7 @@ MOD18_0223D744: ; 0x0223D744
cmp r5, #0
beq _0223D79C
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0
mov r0, #0x64
mov r1, #4
@@ -8375,7 +8375,7 @@ MOD18_0223D744: ; 0x0223D744
add r0, r4, #0
add r1, r7, #0
add r2, r5, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl MOD18_0223D638
bl MOD18_0224DBB4
ldr r1, [sp]
@@ -8388,7 +8388,7 @@ MOD18_0223D744: ; 0x0223D744
add r0, r6, #0
bl String_dtor
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #8
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
@@ -8588,7 +8588,7 @@ MOD18_0223D8F4: ; 0x0223D8F4
mov r0, #0
pop {r3, pc}
_0223D912:
- ldr r1, _0223D9DC ; =UNK_021C48F8
+ ldr r1, _0223D9DC ; =gMain + 0x40
ldrh r1, [r1, #0x20]
cmp r1, #0
beq _0223D9BA
@@ -8625,7 +8625,7 @@ _0223D950:
pop {r3, pc}
_0223D962:
ldr r3, _0223D9D4 ; =0x02251388
- ldr r2, _0223D9DC ; =UNK_021C48F8
+ ldr r2, _0223D9DC ; =gMain + 0x40
ldr r3, [r3]
ldrh r1, [r2, #0x1c]
ldr r3, [r3, #0xc]
@@ -8644,7 +8644,7 @@ _0223D962:
strh r1, [r0]
ldr r1, [sp, #4]
strh r1, [r0, #2]
- ldr r1, _0223D9DC ; =UNK_021C48F8
+ ldr r1, _0223D9DC ; =gMain + 0x40
ldr r0, _0223D9D4 ; =0x02251388
ldrh r3, [r1, #0x1c]
ldr r2, [r0]
@@ -8682,7 +8682,7 @@ _0223D9CC:
nop
_0223D9D4: .word MOD18_02251388
_0223D9D8: .word 0x00000146
-_0223D9DC: .word UNK_021C48F8
+_0223D9DC: .word gMain + 0x40
thumb_func_end MOD18_0223D8F4
thumb_func_start MOD18_0223D9E0
@@ -10136,7 +10136,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
add r1, #0xdc
str r0, [r1]
mov r0, #0xb
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #0x64
mov r1, #0xb
@@ -10147,7 +10147,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
add r2, r0, #0
add r0, r6, #0
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl MOD18_0223D638
bl MOD18_0224DBB4
mov r1, #0x73
@@ -10164,7 +10164,7 @@ MOD18_0223E4D4: ; 0x0223E4D4
add r0, r7, #0
bl String_dtor
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_0223E54E:
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -14808,7 +14808,7 @@ _0224079E:
add sp, #0x1c
pop {r3, r4, pc}
_022407DE:
- ldr r1, _02240894 ; =UNK_021C48F8
+ ldr r1, _02240894 ; =gMain + 0x40
ldrh r0, [r1, #0x22]
cmp r0, #0
beq _02240816
@@ -14892,7 +14892,7 @@ _02240884: .word MOD18_022513A0
_02240888: .word 0x00000B3B
_0224088C: .word MOD18_022500A8
_02240890: .word 0x00000661
-_02240894: .word UNK_021C48F8
+_02240894: .word gMain + 0x40
thumb_func_end MOD18_02240658
thumb_func_start MOD18_02240898
@@ -18413,7 +18413,7 @@ _022423E6:
mov r0, #1
pop {r4, r5, r6, r7, pc}
_022423F4:
- ldr r0, _02242580 ; =UNK_021C48F8
+ ldr r0, _02242580 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _022424C4
@@ -18429,14 +18429,14 @@ _0224240A:
ldr r0, [r0]
cmp r0, #0
bne _022424B6
- ldr r0, _02242580 ; =UNK_021C48F8
+ ldr r0, _02242580 ; =gMain + 0x40
ldrh r0, [r0, #0x1e]
lsl r1, r0, #0xc
ldr r0, [r4, #0x48]
sub r0, r1, r0
str r0, [sp, #0xc]
asr r7, r0, #0x1f
- ldr r0, _02242580 ; =UNK_021C48F8
+ ldr r0, _02242580 ; =gMain + 0x40
ldrh r0, [r0, #0x1c]
lsl r1, r0, #0xc
ldr r0, [r4, #0x44]
@@ -18611,7 +18611,7 @@ _02242570:
add sp, #0x14
pop {r4, r5, r6, r7, pc}
.align 2, 0
-_02242580: .word UNK_021C48F8
+_02242580: .word gMain + 0x40
_02242584: .word 0x00000000
_02242588: .word MOD18_022500C0
_0224258C: .word 0x00000626
@@ -19324,7 +19324,7 @@ _02242B0E:
str r2, [r4, r0]
b _02242E6C
_02242B22:
- ldr r1, _02242D78 ; =UNK_021C48F8
+ ldr r1, _02242D78 ; =gMain + 0x40
ldrh r2, [r1, #0x20]
cmp r2, #0
beq _02242BD2
@@ -19612,7 +19612,7 @@ _02242D68: .word MOD18_022513A0
_02242D6C: .word 0x0000065E
_02242D70: .word 0x0000065D
_02242D74: .word 0x00000B3B
-_02242D78: .word UNK_021C48F8
+_02242D78: .word gMain + 0x40
_02242D7C: .word 0x00000627
_02242D80: .word 0x0000062A
_02242D84:
@@ -32895,7 +32895,7 @@ MOD18_022494C8: ; 0x022494C8
bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x70]
ldr r0, _02249538 ; =MOD18_02249684
ldr r2, _0224953C ; =0x00002710
@@ -34234,7 +34234,7 @@ _0224A002:
add r2, r0, #0
ldr r0, [r5, #0x70]
mov r1, #2
- bl FUN_0200B164
+ bl BufferUndergroundItemName
add r0, r4, #0
add r1, r5, #0
blx r7
@@ -34246,7 +34246,7 @@ _0224A002:
ldr r0, [r5, #0x70]
mov r1, #6
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
bl MOD18_0223D638
bl MOD18_0224DBB4
ldr r2, [r5, #0x6c]
@@ -35184,7 +35184,7 @@ MOD18_0224A7C8: ; 0x0224A7C8
bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x70]
bl FUN_0204F7E4
bl MOD18_0223D648
@@ -35283,7 +35283,7 @@ _0224A8C0:
ldr r0, [r5, #0x6c]
bl String_dtor
ldr r0, [r5, #0x70]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
bl MOD18_0223D648
bl MOD18_0224DD94
bl MOD18_0223D638
@@ -35947,7 +35947,7 @@ _0224AE48:
ldr r0, [r5, #0x70]
cmp r0, #0
beq _0224AE52
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_0224AE52:
ldr r0, [r5, #4]
cmp r0, #0
@@ -36091,7 +36091,7 @@ MOD18_0224AF28: ; 0x0224AF28
bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x70]
add r0, r4, #0
bl MOD18_0224AA4C
@@ -37370,7 +37370,7 @@ MOD18_0224B980: ; 0x0224B980
ldr r0, [r4, #0x6c]
bl String_dtor
ldr r0, [r4, #0x70]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x7f
lsl r0, r0, #2
ldr r1, [r4, r0]
@@ -37836,7 +37836,7 @@ MOD18_0224BD54: ; 0x0224BD54
bl String_ctor
str r0, [r4, #0x6c]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x70]
mov r0, #4
bl FUN_0205EB38
@@ -38668,7 +38668,7 @@ _0224C434:
ldrb r2, [r3, r2]
ldr r0, [r4, #0x70]
mov r1, #2
- bl FUN_0200B164
+ bl BufferUndergroundItemName
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
@@ -38678,7 +38678,7 @@ _0224C434:
ldr r0, [r4, #0x70]
mov r1, #6
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
bl MOD18_0223D658
bl MOD18_0224DBB4
ldr r2, [r4, #0x68]
@@ -38977,7 +38977,7 @@ _0224C6C4:
ldr r0, [r4, #0x70]
mov r1, #2
add r2, r5, #0
- bl FUN_0200B164
+ bl BufferUndergroundItemName
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
@@ -38985,7 +38985,7 @@ _0224C6C4:
mov r1, #6
add r2, r7, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
bl MOD18_0223D658
bl MOD18_0224DBB4
ldr r2, [r4, #0x68]
@@ -39374,7 +39374,7 @@ MOD18_0224CA34: ; 0x0224CA34
ldr r0, [r4, #0x6c]
bl String_dtor
ldr r0, [r4, #0x70]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
bl FreeToHeap
pop {r4, pc}
@@ -40368,7 +40368,7 @@ MOD18_0224D1F8: ; 0x0224D1F8
bl String_ctor
str r0, [r6, #0x6c]
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r6, #0x70]
ldr r0, _0224D2DC ; =0x00000246
mov r1, #0
@@ -40506,7 +40506,7 @@ MOD18_0224D364: ; 0x0224D364
str r1, [sp, #0xc]
add r5, r2, #0
str r3, [sp, #0x10]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [sp, #0x1c]
mov r0, #0x1e
mov r1, #4
@@ -40596,7 +40596,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0x1c]
mov r1, #6
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0xc]
mov r1, #5
add r2, r4, #0
@@ -40618,7 +40618,7 @@ MOD18_0224D364: ; 0x0224D364
ldr r0, [sp, #0x1c]
mov r1, #0
add r2, r5, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [sp, #0xc]
mov r1, #4
add r2, r4, #0
@@ -40690,7 +40690,7 @@ _0224D500:
mov r1, #6
ldr r0, [sp, #0x1c]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0xc]
mov r1, #0xd
add r2, r4, #0
@@ -40721,7 +40721,7 @@ _0224D500:
ldr r0, [sp, #0x18]
bl String_dtor
ldr r0, [sp, #0x1c]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -41074,7 +41074,7 @@ MOD18_0224D814: ; 0x0224D814
mov r0, #4
add r5, r2, #0
str r3, [sp, #0x14]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r7, r0, #0
mov r0, #0x28
mov r1, #4
@@ -41087,7 +41087,7 @@ MOD18_0224D814: ; 0x0224D814
add r0, r7, #0
mov r1, #1
add r2, r5, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [sp, #0x10]
mov r1, #0xc
add r2, r4, #0
@@ -41129,7 +41129,7 @@ MOD18_0224D814: ; 0x0224D814
str r0, [sp, #4]
add r0, r7, #0
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x10]
mov r1, #0xe
add r2, r4, #0
@@ -41175,7 +41175,7 @@ _0224D8FA:
ldr r2, [sp, #0x24]
add r0, r7, #0
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [sp, #0x10]
mov r1, #0x10
add r2, r4, #0
@@ -41208,7 +41208,7 @@ _0224D8FA:
str r0, [sp, #4]
add r0, r7, #0
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x10]
mov r1, #0x11
add r2, r4, #0
@@ -41277,7 +41277,7 @@ _0224D9DE:
add r0, r6, #0
bl String_dtor
add r0, r7, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x28
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end MOD18_0224D814
@@ -41421,7 +41421,7 @@ _0224DB08:
bl String_ctor
str r0, [r4, #4]
add r0, r5, #0
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x28]
ldr r0, [sp]
ldr r2, [sp]
@@ -41460,7 +41460,7 @@ MOD18_0224DB5C: ; 0x0224DB5C
ldr r0, [r4, #4]
bl String_dtor
ldr r0, [r4, #0x28]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x24]
bl DestroyMsgData
add r0, r4, #0
@@ -41776,7 +41776,7 @@ MOD18_0224DDA0: ; 0x0224DDA0
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #1
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41791,7 +41791,7 @@ MOD18_0224DDB8: ; 0x0224DDB8
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41806,7 +41806,7 @@ MOD18_0224DDD0: ; 0x0224DDD0
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #2
- bl FUN_0200B19C
+ bl BufferUndergroundItemNameWithArticle
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41821,7 +41821,7 @@ MOD18_0224DDE8: ; 0x0224DDE8
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #3
- bl FUN_0200B1D4
+ bl BufferUndergroundTrapName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41836,7 +41836,7 @@ MOD18_0224DE00: ; 0x0224DE00
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #5
- bl FUN_0200B2E0
+ bl BufferInterviewQuestion
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41851,7 +41851,7 @@ MOD18_0224DE18: ; 0x0224DE18
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #5
- bl FUN_0200B318
+ bl BufferInterviewAnswer
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41864,7 +41864,7 @@ MOD18_0224DE30: ; 0x0224DE30
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B318
+ bl BufferInterviewAnswer
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41879,7 +41879,7 @@ MOD18_0224DE44: ; 0x0224DE44
ldr r0, [r4, #0x28]
add r2, r1, #0
mov r1, #2
- bl FUN_0200B350
+ bl BufferDecorationName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41897,7 +41897,7 @@ MOD18_0224DE5C: ; 0x0224DE5C
mov r3, #1
str r3, [sp, #4]
ldr r0, [r4, #0x28]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41919,7 +41919,7 @@ MOD18_0224DE7C: ; 0x0224DE7C
ldr r0, [r4, #0x28]
mov r1, #6
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41940,7 +41940,7 @@ MOD18_0224DEA4: ; 0x0224DEA4
str r0, [sp, #4]
ldr r0, [r4, #0x28]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41963,7 +41963,7 @@ MOD18_0224DEC8: ; 0x0224DEC8
mov r1, #6
ldr r0, [r4, #0x28]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41978,7 +41978,7 @@ MOD18_0224DEF0: ; 0x0224DEF0
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B164
+ bl BufferUndergroundItemName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -41991,7 +41991,7 @@ MOD18_0224DF04: ; 0x0224DF04
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B1D4
+ bl BufferUndergroundTrapName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -42004,7 +42004,7 @@ MOD18_0224DF18: ; 0x0224DF18
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B350
+ bl BufferDecorationName
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -42017,7 +42017,7 @@ MOD18_0224DF2C: ; 0x0224DF2C
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B19C
+ bl BufferUndergroundItemNameWithArticle
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -42030,7 +42030,7 @@ MOD18_0224DF40: ; 0x0224DF40
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x28]
- bl FUN_0200B20C
+ bl BufferUndergroundTrapNameWithArticle
ldr r1, [r4, #0x40]
mov r0, #2
orr r0, r1
@@ -42828,7 +42828,7 @@ _0224E454:
str r1, [sp, #8]
bl AddTextPrinterParameterized
mov r0, #4
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #1
str r1, [sp]
add r2, r5, #0
@@ -42838,7 +42838,7 @@ _0224E454:
mov r1, #0
mov r3, #2
add r6, r0, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #1
str r1, [sp]
add r2, r5, #0
@@ -42847,7 +42847,7 @@ _0224E454:
ldrb r2, [r2]
add r0, r6, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x2c]
add r0, r6, #0
add r1, r4, #0
@@ -42864,7 +42864,7 @@ _0224E454:
str r1, [sp, #8]
bl AddTextPrinterParameterized
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0x28]
bl String_dtor
ldr r0, [sp, #0x2c]
@@ -45740,7 +45740,7 @@ MOD18_0224FC18: ; 0x0224FC18
add r5, r1, #0
str r0, [sp]
add r0, #0x88
- ldr r1, _0224FCD4 ; =UNK_021C48F8
+ ldr r1, _0224FCD4 ; =gMain + 0x40
ldr r6, [r0]
ldrh r0, [r1, #0x1c]
ldrh r1, [r1, #0x1e]
@@ -45825,7 +45825,7 @@ _0224FCCE:
add sp, #0x24
pop {r4, r5, r6, r7, pc}
nop
-_0224FCD4: .word UNK_021C48F8
+_0224FCD4: .word gMain + 0x40
thumb_func_end MOD18_0224FC18
thumb_func_start MOD18_0224FCD8
@@ -45834,7 +45834,7 @@ MOD18_0224FCD8: ; 0x0224FCD8
sub sp, #0x1c
add r4, r1, #0
add r0, #0x88
- ldr r1, _0224FD6C ; =UNK_021C48F8
+ ldr r1, _0224FD6C ; =gMain + 0x40
ldr r5, [r0]
ldrh r0, [r1, #0x1c]
add r6, r2, #0
@@ -45902,7 +45902,7 @@ _0224FD66:
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
nop
-_0224FD6C: .word UNK_021C48F8
+_0224FD6C: .word gMain + 0x40
thumb_func_end MOD18_0224FCD8
thumb_func_start MOD18_0224FD70
@@ -45910,7 +45910,7 @@ MOD18_0224FD70: ; 0x0224FD70
push {r3, r4, r5, lr}
add r3, r0, #0
mov r0, #0
- ldr r4, _0224FDD0 ; =UNK_021C48F8
+ ldr r4, _0224FDD0 ; =gMain + 0x40
str r0, [r2]
ldrh r5, [r4, #0x20]
cmp r5, #0
@@ -45959,7 +45959,7 @@ _0224FDC0:
_0224FDCE:
pop {r3, r4, r5, pc}
.align 2, 0
-_0224FDD0: .word UNK_021C48F8
+_0224FDD0: .word gMain + 0x40
_0224FDD4: .word gMain
_0224FDD8: .word 0x000004F8
thumb_func_end MOD18_0224FD70
@@ -45969,7 +45969,7 @@ MOD18_0224FDDC: ; 0x0224FDDC
push {r3, r4, r5, lr}
add r3, r0, #0
mov r0, #0
- ldr r4, _0224FE40 ; =UNK_021C48F8
+ ldr r4, _0224FE40 ; =gMain + 0x40
str r0, [r2]
ldrh r5, [r4, #0x20]
cmp r5, #0
@@ -46020,7 +46020,7 @@ _0224FE30:
_0224FE3E:
pop {r3, r4, r5, pc}
.align 2, 0
-_0224FE40: .word UNK_021C48F8
+_0224FE40: .word gMain + 0x40
_0224FE44: .word gMain
_0224FE48: .word 0x000004F8
thumb_func_end MOD18_0224FDDC
@@ -46030,7 +46030,7 @@ MOD18_0224FE4C: ; 0x0224FE4C
push {r4, lr}
add r3, r0, #0
mov r0, #0
- ldr r4, _0224FE88 ; =UNK_021C48F8
+ ldr r4, _0224FE88 ; =gMain + 0x40
str r0, [r2]
ldrh r4, [r4, #0x20]
cmp r4, #0
@@ -46058,7 +46058,7 @@ _0224FE80:
str r0, [r3, r1]
pop {r4, pc}
nop
-_0224FE88: .word UNK_021C48F8
+_0224FE88: .word gMain + 0x40
_0224FE8C: .word gMain
_0224FE90: .word 0x000004F8
thumb_func_end MOD18_0224FE4C
@@ -46068,7 +46068,7 @@ MOD18_0224FE94: ; 0x0224FE94
push {r3, r4, r5, lr}
add r3, r0, #0
mov r0, #0
- ldr r4, _0224FEF4 ; =UNK_021C48F8
+ ldr r4, _0224FEF4 ; =gMain + 0x40
str r0, [r2]
ldrh r5, [r4, #0x20]
cmp r5, #0
@@ -46117,7 +46117,7 @@ _0224FEE4:
_0224FEF2:
pop {r3, r4, r5, pc}
.align 2, 0
-_0224FEF4: .word UNK_021C48F8
+_0224FEF4: .word gMain + 0x40
_0224FEF8: .word gMain
_0224FEFC: .word 0x000004F8
thumb_func_end MOD18_0224FE94
diff --git a/arm9/modules/51/asm/module_51.s b/arm9/modules/51/asm/module_51.s
index 736ecfdf..c28270a3 100644
--- a/arm9/modules/51/asm/module_51.s
+++ b/arm9/modules/51/asm/module_51.s
@@ -104,7 +104,7 @@ MOD51_022548F0: ; 0x022548F0
sub r1, #0xa
mov r0, #4
strh r2, [r4, r1]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r2, #9
str r0, [r4, #0x18]
mov r0, #0
@@ -347,7 +347,7 @@ _02254AEC:
ldr r0, [r6, #0x1c]
bl DestroyMsgData
ldr r0, [r6, #0x18]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x72
lsl r0, r0, #2
add r0, r6, r0
@@ -1554,7 +1554,7 @@ _02255478:
ldr r2, [sp, #0x28]
add r0, r7, #0
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
b _022554CA
_0225548C:
cmp r4, #2
@@ -1579,7 +1579,7 @@ _0225548C:
add r0, r7, #0
add r2, r4, #0
add r3, r1, #0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0
bl String_dtor
_022554CA:
diff --git a/arm9/modules/53/asm/module_53.s b/arm9/modules/53/asm/module_53.s
index 5b38d781..d128782b 100644
--- a/arm9/modules/53/asm/module_53.s
+++ b/arm9/modules/53/asm/module_53.s
@@ -20,7 +20,7 @@ _021D74F4:
_021D74F6:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -50,7 +50,7 @@ _021D74F6:
bl FUN_02016B94
str r0, [r4]
mov r0, #0x27
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0xc]
ldr r2, _021D7644 ; =0x00000176
mov r0, #0
@@ -91,7 +91,7 @@ _021D74F6:
bl FUN_0201CC24
ldr r0, _021D7648 ; =MOD53_021D78A8
ldr r1, [r4]
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD53_021D79F8
bl MOD53_021D7C54
@@ -322,7 +322,7 @@ _021D7794:
bl FUN_02028AD4
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x17
lsl r0, r0, #4
ldr r0, [r6, r0]
@@ -363,7 +363,7 @@ _021D77D8:
ldr r0, [r6, #0x10]
bl DestroyMsgData
ldr r0, [r6, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r7]
add r0, r0, #1
str r0, [r7]
@@ -415,7 +415,7 @@ _021D786E:
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x27
bl FUN_020168D0
mov r0, #2
@@ -1716,7 +1716,7 @@ _021D8316:
bl FUN_02031190
lsl r1, r0, #2
ldr r0, [sp]
- ldr r2, _021D83D0 ; =UNK_021C48F8
+ ldr r2, _021D83D0 ; =gMain + 0x40
add r1, r0, r1
mov r0, #0x76
lsl r0, r0, #2
@@ -1774,7 +1774,7 @@ _021D83C0: .word 0x0000438B
_021D83C4: .word 0x00004377
_021D83C8: .word 0x000005E5
_021D83CC: .word MOD53_021D94F0
-_021D83D0: .word UNK_021C48F8
+_021D83D0: .word gMain + 0x40
_021D83D4: .word 0x00004378
_021D83D8: .word 0x00004380
thumb_func_end MOD53_021D81B0
@@ -2428,7 +2428,7 @@ _021D88EA:
add r2, r0, #0
ldr r0, [r5, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r6, #2
bl MOD53_021D9440
@@ -2479,7 +2479,7 @@ MOD53_021D896C: ; 0x021D896C
add r2, r0, #0
ldr r0, [r5, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #3
mov r2, #1
@@ -2779,7 +2779,7 @@ _021D8BB0:
add r2, r0, #0
ldr r0, [r4, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #0x32
lsl r0, r0, #4
str r6, [r4, r0]
@@ -2800,7 +2800,7 @@ _021D8BE0:
add r2, r0, #0
ldr r0, [r4, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl FUN_02031190
cmp r6, r0
beq _021D8C4A
diff --git a/arm9/modules/54/asm/module_54.s b/arm9/modules/54/asm/module_54.s
index 5dd265c7..2c2aad31 100644
--- a/arm9/modules/54/asm/module_54.s
+++ b/arm9/modules/54/asm/module_54.s
@@ -20,7 +20,7 @@ _021D74F4:
_021D74F6:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -57,7 +57,7 @@ _021D74F6:
ldr r0, _021D763C ; =0x00004A38
str r1, [r4, r0]
mov r0, #0x33
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x24]
ldr r2, _021D7640 ; =0x000001E2
mov r0, #0
@@ -90,7 +90,7 @@ _021D74F6:
bl MOD54_021D7AA0
ldr r0, _021D7644 ; =MOD54_021D784C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD54_021D799C
bl MOD54_021D7B8C
@@ -317,7 +317,7 @@ _021D776C:
ldr r0, [r6, #0x28]
bl DestroyMsgData
ldr r0, [r6, #0x24]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0
bl MOD54_021D7A34
ldr r0, [sp]
@@ -331,7 +331,7 @@ _021D776C:
bl FUN_02052B74
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x33
bl FUN_020168D0
mov r0, #1
@@ -1968,7 +1968,7 @@ MOD54_021D84D4: ; 0x021D84D4
push {r3, r4, r5, lr}
add r5, r0, #0
add r4, r1, #0
- ldr r0, _021D8514 ; =gUnk021C4918
+ ldr r0, _021D8514 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #8]
mov r0, #0x33
@@ -1993,7 +1993,7 @@ MOD54_021D84D4: ; 0x021D84D4
add r0, r4, #0
pop {r3, r4, r5, pc}
nop
-_021D8514: .word gUnk021C4918
+_021D8514: .word gMain + 0x60
thumb_func_end MOD54_021D84D4
thumb_func_start MOD54_021D8518
@@ -2035,7 +2035,7 @@ _021D852A:
str r1, [r5, #0xc]
lsl r0, r0, #4
str r1, [r5, r0]
- ldr r0, _021D8580 ; =gUnk021C4918
+ ldr r0, _021D8580 ; =gMain + 0x60
strb r1, [r0, #8]
ldr r0, _021D8584 ; =0x00004A40
strb r1, [r5, r0]
@@ -2044,7 +2044,7 @@ _021D8576:
pop {r3, r4, r5, pc}
nop
_021D857C: .word 0x00000658
-_021D8580: .word gUnk021C4918
+_021D8580: .word gMain + 0x60
_021D8584: .word 0x00004A40
thumb_func_end MOD54_021D8518
@@ -2210,7 +2210,7 @@ _021D869C:
add r2, r0, #0
ldr r0, [r5, #0x24]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
_021D86BE:
mov r0, #0x32
mov r1, #0
@@ -2246,7 +2246,7 @@ _021D86F6:
add r2, r0, #0
ldr r0, [r5, #0x24]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x10
mov r2, #0
@@ -2579,7 +2579,7 @@ _021D896C:
add r2, r0, #0
ldr r0, [r5, #0x24]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl FUN_02031190
cmp r6, r0
beq _021D89BE
@@ -2639,7 +2639,7 @@ _021D89EA:
add r2, r0, #0
ldr r0, [r5, #0x24]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #1
bl MOD54_021D8F40
@@ -2668,7 +2668,7 @@ _021D8A2E:
add r2, r0, #0
ldr r0, [r5, #0x24]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
bl FUN_02031190
cmp r6, r0
beq _021D8A7E
@@ -2815,7 +2815,7 @@ _021D8B2A:
ldr r0, [r0, #0x24]
mov r1, #0
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x14]
ldr r1, [sp, #0x14]
ldr r0, [r0, #0x24]
diff --git a/arm9/modules/55/asm/module_55.s b/arm9/modules/55/asm/module_55.s
index d6b9b522..78542890 100644
--- a/arm9/modules/55/asm/module_55.s
+++ b/arm9/modules/55/asm/module_55.s
@@ -27,7 +27,7 @@ MOD55_021D7504: ; 0x021D7504
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -54,7 +54,7 @@ MOD55_021D7504: ; 0x021D7504
bl MOD55_021D7AE0
ldr r0, _021D7568 ; =MOD55_021D77D0
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD55_021D74E0
pop {r4, pc}
@@ -327,7 +327,7 @@ MOD55_021D778C: ; 0x021D778C
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD55_021D7720
add r0, r4, #0
@@ -562,7 +562,7 @@ MOD55_021D7994: ; 0x021D7994
push {r3, r4, r5, r6, r7, lr}
add r6, r0, #0
mov r0, #0x34
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r6, #0xc]
ldr r2, _021D7A34 ; =0x00000251
mov r0, #0
@@ -642,7 +642,7 @@ MOD55_021D7A38: ; 0x021D7A38
ldr r0, [r6, #0x10]
bl DestroyMsgData
ldr r0, [r6, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r4, #0
add r5, r6, #0
_021D7A4C:
@@ -1313,7 +1313,7 @@ _021D7F86:
add r2, r0, #0
ldr r0, [r5, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r2, r5, #0
add r2, #0xb8
ldr r0, [r5, #0x10]
@@ -1986,7 +1986,7 @@ MOD55_021D84C8: ; 0x021D84C8
ldr r0, [r5, #0xc]
mov r1, #0
add r2, r4, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r1, [sp]
add r0, r5, #0
add r2, r7, #0
@@ -3330,7 +3330,7 @@ _021D8F1A:
ldr r0, [r5, #0xc]
mov r1, #0
add r2, r4, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0xc
bl MOD55_021DA0A4
@@ -3526,7 +3526,7 @@ MOD55_021D90D8: ; 0x021D90D8
ldr r0, [r5, #0xc]
mov r1, #0
add r2, r6, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x1f
bl MOD55_021DA15C
@@ -3611,7 +3611,7 @@ _021D91D6:
add r2, r0, #0
ldr r0, [r5, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r2, r5, #0
add r2, #0xb8
ldr r0, [r5, #0x10]
@@ -3859,7 +3859,7 @@ MOD55_021D93F8: ; 0x021D93F8
str r1, [sp, #4]
ldr r0, [r5, #0xc]
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, _021D9470 ; =0x00002710
add r0, r4, #0
add r1, r6, #0
@@ -3875,7 +3875,7 @@ MOD55_021D93F8: ; 0x021D93F8
str r0, [sp, #4]
ldr r0, [r5, #0xc]
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, _021D9470 ; =0x00002710
add r0, r4, #0
add r1, r6, #0
@@ -3889,7 +3889,7 @@ MOD55_021D93F8: ; 0x021D93F8
ldr r0, [r5, #0xc]
mov r1, #3
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r4, r5, r6, pc}
nop
@@ -4177,7 +4177,7 @@ _021D969A:
ldr r0, [r4, #0xc]
ldr r2, [sp, #0x20]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r2, r4, #0
add r2, #0xb8
ldr r0, [r4, #0x10]
@@ -4247,7 +4247,7 @@ _021D974E:
ldr r0, [r4, #0xc]
ldr r2, [sp, #0x20]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r2, r4, #0
add r2, #0xb8
ldr r0, [r4, #0x10]
@@ -4417,7 +4417,7 @@ _021D987C:
ldr r0, [r4, #0xc]
mov r1, #0
add r2, r5, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
bl FreeToHeap
add r2, r4, #0
@@ -4490,7 +4490,7 @@ _021D987C:
ldr r0, [r4, #0xc]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r2, r4, #0
add r2, #0xb8
ldr r0, [r4, #0x10]
@@ -4539,7 +4539,7 @@ _021D987C:
ldr r0, [r4, #0xc]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r2, r4, #0
add r2, #0xb8
ldr r0, [r4, #0x10]
@@ -4619,7 +4619,7 @@ _021D9A64:
mov r1, #0
add r2, r5, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
cmp r5, #1
ldr r0, [r4, #0x10]
bne _021D9ADC
@@ -4701,7 +4701,7 @@ _021D9AE8:
mov r1, #2
ldr r0, [r4, #0xc]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
mov r2, #4
@@ -4713,7 +4713,7 @@ _021D9AE8:
ldr r0, [r4, #0xc]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
mov r2, #5
@@ -4721,7 +4721,7 @@ _021D9AE8:
add r2, r0, #0
ldr r0, [r4, #0xc]
mov r1, #1
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
ldr r0, [sp, #0x1c]
ldr r1, [sp, #0x18]
mov r2, #6
@@ -4733,7 +4733,7 @@ _021D9AE8:
mov r1, #2
ldr r0, [r4, #0xc]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r2, r4, #0
add r2, #0xb8
ldr r0, [r4, #0x10]
@@ -5221,7 +5221,7 @@ MOD55_021D9F8C: ; 0x021D9F8C
ldr r0, [r5, #0xc]
mov r1, #0
add r2, r4, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x1c
bl MOD55_021DA0A4
diff --git a/arm9/modules/56/asm/module_56.s b/arm9/modules/56/asm/module_56.s
index 5bf21ef0..48a760dd 100644
--- a/arm9/modules/56/asm/module_56.s
+++ b/arm9/modules/56/asm/module_56.s
@@ -251,7 +251,7 @@ MOD56_02211FD4: ; 0x02211FD4
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -274,7 +274,7 @@ MOD56_02211FD4: ; 0x02211FD4
add r1, #0xc0
str r0, [r1]
mov r0, #0x36
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r1, r4, #0
add r1, #0xc8
str r0, [r1]
@@ -304,7 +304,7 @@ MOD56_02211FD4: ; 0x02211FD4
bl MOD56_0221257C
ldr r0, _02212080 ; =MOD56_0221228C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl MOD56_0221269C
add r0, r4, #0
bl MOD56_022126E0
@@ -485,7 +485,7 @@ MOD56_022121C4: ; 0x022121C4
add r6, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0xb
lsl r0, r0, #6
ldr r0, [r6, r0]
@@ -528,7 +528,7 @@ _022121EC:
bl DestroyMsgData
add r6, #0xc8
ldr r0, [r6]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_end MOD56_022121C4
@@ -2190,7 +2190,7 @@ _02212FAC:
ldr r0, [r0]
mov r1, #0
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r4, #0
add r1, r6, #0
bl MOD56_02215FF4
@@ -7111,7 +7111,7 @@ _02215532:
ldr r0, [r0]
mov r1, #0
add r2, r6, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0
bl FreeToHeap
add r0, r5, #0
@@ -7189,7 +7189,7 @@ _02215532:
ldr r0, [r0]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r2, #0x56
add r0, #0xcc
@@ -7235,7 +7235,7 @@ _02215532:
ldr r0, [r0]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r2, #0x56
add r0, #0xcc
@@ -7313,7 +7313,7 @@ _02215532:
mov r1, #0
add r2, r6, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
cmp r6, #1
bne _02215810
add r0, r5, #0
@@ -7404,7 +7404,7 @@ _02215822:
mov r1, #2
ldr r0, [r0]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5]
add r1, r4, #0
mov r2, #4
@@ -7418,7 +7418,7 @@ _02215822:
ldr r0, [r0]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5]
add r1, r4, #0
mov r2, #5
@@ -7428,7 +7428,7 @@ _02215822:
add r0, #0xc8
ldr r0, [r0]
mov r1, #1
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
add r0, r5, #0
mov r2, #0x56
add r0, #0xcc
@@ -8443,7 +8443,7 @@ MOD56_022160E4: ; 0x022160E4
ldr r0, [r5]
mov r1, #0
add r2, r4, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0
bl FreeToHeap
_0221611C:
diff --git a/arm9/modules/57/asm/module_57.s b/arm9/modules/57/asm/module_57.s
index 9bf62714..6f58ea67 100644
--- a/arm9/modules/57/asm/module_57.s
+++ b/arm9/modules/57/asm/module_57.s
@@ -10,7 +10,7 @@ MOD57_021D74E0: ; 0x021D74E0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_02015F34
@@ -221,7 +221,7 @@ _021D76A8:
bl MOD57_021D8588
ldr r0, _021D7710 ; =MOD57_021D848C
mov r1, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02033F20
mov r0, #1
mov r1, #0x2a
@@ -559,7 +559,7 @@ MOD57_021D7944: ; 0x021D7944
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x19
bl FUN_020168D0
mov r0, #1
@@ -1599,7 +1599,7 @@ MOD57_021D81F8: ; 0x021D81F8
ldr r0, _021D82A8 ; =0x000030D4
sub r1, r6, #1
str r1, [r5, r0]
- ldr r1, _021D82AC ; =UNK_021C48F8
+ ldr r1, _021D82AC ; =gMain + 0x40
add r4, r6, #0
ldrh r1, [r1, #0x20]
cmp r1, #0
@@ -1634,7 +1634,7 @@ _021D8214:
add r4, r6, #0
b _021D8288
_021D8248:
- ldr r0, _021D82AC ; =UNK_021C48F8
+ ldr r0, _021D82AC ; =gMain + 0x40
ldrh r0, [r0, #0x22]
cmp r0, #0
beq _021D8282
@@ -1686,7 +1686,7 @@ _021D82A2:
pop {r4, r5, r6, pc}
nop
_021D82A8: .word 0x000030D4
-_021D82AC: .word UNK_021C48F8
+_021D82AC: .word gMain + 0x40
_021D82B0: .word MOD57_021D9754
_021D82B4: .word 0x00003318
_021D82B8: .word gMain
@@ -1696,7 +1696,7 @@ _021D82B8: .word gMain
MOD57_021D82BC: ; 0x021D82BC
push {r4, r5, r6, lr}
add r5, r0, #0
- ldr r0, _021D83BC ; =UNK_021C48F8
+ ldr r0, _021D83BC ; =gMain + 0x40
ldr r6, _021D83C0 ; =0x0000FFFF
ldrh r3, [r0, #0x1c]
mov r4, #0
@@ -1745,7 +1745,7 @@ _021D8312:
blt _021D8358
cmp r2, #0x28
bgt _021D8358
- ldr r0, _021D83BC ; =UNK_021C48F8
+ ldr r0, _021D83BC ; =gMain + 0x40
ldrh r1, [r0, #0x1e]
ldr r0, _021D83CC ; =0x000030E0
ldr r0, [r5, r0]
@@ -1778,7 +1778,7 @@ _021D834C:
_021D8358:
cmp r2, #0x28
bgt _021D8398
- ldr r0, _021D83BC ; =UNK_021C48F8
+ ldr r0, _021D83BC ; =gMain + 0x40
ldrh r1, [r0, #0x1e]
ldr r0, _021D83CC ; =0x000030E0
ldr r0, [r5, r0]
@@ -1820,7 +1820,7 @@ _021D8398:
lsr r1, r1, #0x18
bl MOD57_021D84AC
_021D83AC:
- ldr r1, _021D83BC ; =UNK_021C48F8
+ ldr r1, _021D83BC ; =gMain + 0x40
ldr r0, _021D83C4 ; =0x000030DC
ldrh r2, [r1, #0x1c]
str r2, [r5, r0]
@@ -1829,7 +1829,7 @@ _021D83AC:
str r1, [r5, r0]
pop {r4, r5, r6, pc}
.align 2, 0
-_021D83BC: .word UNK_021C48F8
+_021D83BC: .word gMain + 0x40
_021D83C0: .word 0x0000FFFF
_021D83C4: .word 0x000030DC
_021D83C8: .word 0x00003302
@@ -2567,7 +2567,7 @@ MOD57_021D890C: ; 0x021D890C
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021D8950 ; =UNK_021C48F8
+ ldr r3, _021D8950 ; =gMain + 0x40
add r0, r5, #0
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -2585,7 +2585,7 @@ _021D894C:
add sp, #8
pop {r3, r4, r5, pc}
.align 2, 0
-_021D8950: .word UNK_021C48F8
+_021D8950: .word gMain + 0x40
thumb_func_end MOD57_021D890C
thumb_func_start MOD57_021D8954
@@ -2607,7 +2607,7 @@ MOD57_021D8954: ; 0x021D8954
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021D8998 ; =UNK_021C48F8
+ ldr r3, _021D8998 ; =gMain + 0x40
add r0, r5, #0
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -2625,7 +2625,7 @@ _021D8994:
add sp, #8
pop {r3, r4, r5, pc}
.align 2, 0
-_021D8998: .word UNK_021C48F8
+_021D8998: .word gMain + 0x40
thumb_func_end MOD57_021D8954
thumb_func_start MOD57_021D899C
@@ -2802,7 +2802,7 @@ _021D8AE0:
mov r0, #6
mov r1, #0x20
mov r2, #0x19
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
mov r2, #0
str r5, [sp]
add r4, r0, #0
@@ -2835,7 +2835,7 @@ _021D8AE0:
add r0, r4, #0
mov r1, #5
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0xe
@@ -2904,7 +2904,7 @@ _021D8BA4:
add r0, r4, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r6, #0x18]
bl GetIGTMinutes
mov r3, #2
@@ -2913,7 +2913,7 @@ _021D8BA4:
mov r1, #1
add r0, r4, #0
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0x10
@@ -2927,7 +2927,7 @@ _021D8C02:
add r0, r4, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r3, #2
add r2, r6, #0
str r3, [sp]
@@ -2936,7 +2936,7 @@ _021D8C02:
add r2, #0x2e
ldrb r2, [r2]
add r0, r4, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0xf
@@ -2971,13 +2971,13 @@ _021D8C32:
ldrb r2, [r2]
add r0, r4, #0
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r2, r6, #0
add r2, #0x30
ldrb r2, [r2]
add r0, r4, #0
mov r1, #3
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
mov r3, #2
str r3, [sp]
mov r0, #1
@@ -2986,7 +2986,7 @@ _021D8C32:
ldrb r2, [r6]
add r0, r4, #0
mov r1, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
mov r1, #0x11
@@ -3014,7 +3014,7 @@ _021D8C32:
ldr r0, [sp, #0x10]
bl String_dtor
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r5, #0
bl String_dtor
ldr r0, [sp, #0x14]
@@ -3116,7 +3116,7 @@ _021D8D72:
mov r0, #5
mov r1, #0x20
mov r2, #0x19
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
ldr r1, [sp, #0x10]
add r4, r0, #0
add r1, #0x33
@@ -3131,13 +3131,13 @@ _021D8D72:
add r3, r1, #0
add r2, #0x32
ldrb r2, [r2]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x10]
add r0, r4, #0
add r2, #0x33
ldrb r2, [r2]
mov r1, #3
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
mov r3, #2
ldr r2, [sp, #0x10]
str r3, [sp]
@@ -3147,7 +3147,7 @@ _021D8D72:
ldrb r2, [r2]
add r0, r4, #0
mov r1, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #1
str r0, [sp]
str r0, [sp, #4]
@@ -3156,7 +3156,7 @@ _021D8D72:
ldrh r2, [r2, #0x2c]
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r3, #2
ldr r2, [sp, #0x10]
str r3, [sp]
@@ -3165,7 +3165,7 @@ _021D8D72:
add r2, #0x35
ldrb r2, [r2]
add r0, r4, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [sp, #0x14]
add r0, r7, #0
mov r1, #0x11
@@ -3187,7 +3187,7 @@ _021D8E3C:
ldr r2, [sp, #0x14]
add r0, r4, #0
add r3, r1, #0
- bl FUN_0200ABB4
+ bl BufferString
mov r3, #0
str r3, [sp]
mov r0, #2
@@ -3195,7 +3195,7 @@ _021D8E3C:
ldr r2, [sp, #0x14]
add r0, r4, #0
mov r1, #1
- bl FUN_0200ABB4
+ bl BufferString
add r0, r7, #0
mov r1, #0x14
add r2, r5, #0
@@ -3331,7 +3331,7 @@ _021D8E74:
ldr r0, [sp, #0x14]
bl String_dtor
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r5, #0
bl String_dtor
add r0, r7, #0
@@ -3473,7 +3473,7 @@ _021D906E:
mov r0, #2
mov r1, #0x20
mov r2, #0x19
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
add r6, r0, #0
ldr r0, [r5, #0x18]
bl GetIGTHours
@@ -3484,7 +3484,7 @@ _021D906E:
add r0, r6, #0
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x18]
bl GetIGTMinutes
mov r3, #2
@@ -3493,7 +3493,7 @@ _021D906E:
mov r1, #1
add r0, r6, #0
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [sp, #0x10]
ldr r2, [sp, #0x14]
mov r1, #0x10
@@ -3525,7 +3525,7 @@ _021D906E:
ldr r0, [sp, #0x14]
bl String_dtor
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
nop
diff --git a/arm9/modules/58/asm/module_58.s b/arm9/modules/58/asm/module_58.s
index 5f477c7b..ddcbedd9 100644
--- a/arm9/modules/58/asm/module_58.s
+++ b/arm9/modules/58/asm/module_58.s
@@ -26,7 +26,7 @@ _021D9A36:
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -56,7 +56,7 @@ _021D9A36:
bl FUN_02016B94
str r0, [r4]
mov r0, #0x27
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x10]
ldr r2, _021D9B78 ; =0x00000176
mov r0, #0
@@ -101,7 +101,7 @@ _021D9A36:
bl FUN_0201CC24
ldr r0, _021D9B80 ; =MOD58_021D9CB4
ldr r1, [r4]
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #2
mov r1, #0x27
bl FUN_02002C50
@@ -217,7 +217,7 @@ MOD58_021D9BF0: ; 0x021D9BF0
bl MOD58_021DAC18
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x5e
lsl r0, r0, #2
ldr r0, [r6, r0]
@@ -260,7 +260,7 @@ _021D9C40:
ldr r0, [r6, #0x14]
bl DestroyMsgData
ldr r0, [r6, #0x10]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0
bl MOD58_021D9EA0
ldr r0, [sp]
@@ -272,7 +272,7 @@ _021D9C40:
strh r0, [r2]
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x27
bl FUN_020168D0
mov r0, #1
@@ -2320,7 +2320,7 @@ _021DAC6E:
thumb_func_start MOD58_021DAC7C
MOD58_021DAC7C: ; 0x021DAC7C
push {r3, r4, r5, lr}
- ldr r1, _021DAD28 ; =UNK_021C48F8
+ ldr r1, _021DAD28 ; =gMain + 0x40
add r4, r0, #0
ldrh r0, [r1, #0x1c]
ldr r3, _021DAD2C ; =0x0000FFFF
@@ -2353,7 +2353,7 @@ _021DACB0:
blt _021DACE6
cmp r3, #0x28
bgt _021DACE6
- ldr r0, _021DAD28 ; =UNK_021C48F8
+ ldr r0, _021DAD28 ; =gMain + 0x40
ldrh r2, [r0, #0x1e]
ldr r0, _021DAD34 ; =0x00005CAC
ldr r1, [r4, r0]
@@ -2378,7 +2378,7 @@ _021DACD4:
_021DACE6:
cmp r3, #0x28
bgt _021DAD16
- ldr r0, _021DAD28 ; =UNK_021C48F8
+ ldr r0, _021DAD28 ; =gMain + 0x40
ldrh r2, [r0, #0x1e]
ldr r0, _021DAD34 ; =0x00005CAC
ldr r1, [r4, r0]
@@ -2402,7 +2402,7 @@ _021DAD02:
add r0, r4, r0
bl MOD58_021DAD3C
_021DAD16:
- ldr r1, _021DAD28 ; =UNK_021C48F8
+ ldr r1, _021DAD28 ; =gMain + 0x40
ldr r0, _021DAD30 ; =0x00005CA8
ldrh r2, [r1, #0x1c]
str r2, [r4, r0]
@@ -2411,7 +2411,7 @@ _021DAD16:
str r1, [r4, r0]
pop {r3, r4, r5, pc}
nop
-_021DAD28: .word UNK_021C48F8
+_021DAD28: .word gMain + 0x40
_021DAD2C: .word 0x0000FFFF
_021DAD30: .word 0x00005CA8
_021DAD34: .word 0x00005CAC
diff --git a/arm9/modules/59/asm/module_59.s b/arm9/modules/59/asm/module_59.s
index 8e652086..9182c632 100644
--- a/arm9/modules/59/asm/module_59.s
+++ b/arm9/modules/59/asm/module_59.s
@@ -101,7 +101,7 @@ _021D7592:
bl FUN_0200E3A0
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0
add r1, r0, #0
bl FUN_02015F34
@@ -128,7 +128,7 @@ _021D7592:
bl MOD59_021D7A4C
ldr r0, _021D76BC ; =MOD59_021D7724
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r0, #1
str r0, [r5]
@@ -180,7 +180,7 @@ _021D7642:
bl MOD59_021D7A5C
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r6, #1
b _021D76AC
_021D7668:
@@ -195,7 +195,7 @@ _021D7668:
bl MOD59_021D7A5C
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #4
str r0, [r5]
b _021D76AC
@@ -275,7 +275,7 @@ _021D772C: .word FUN_0201AB60
thumb_func_start MOD59_021D7730
MOD59_021D7730: ; 0x021D7730
push {r3, r4}
- ldr r2, _021D7788 ; =UNK_021C48F8
+ ldr r2, _021D7788 ; =gMain + 0x40
mov r0, #0
ldrh r1, [r2, #0x20]
cmp r1, #0
@@ -324,7 +324,7 @@ _021D7784:
pop {r3, r4}
bx lr
.align 2, 0
-_021D7788: .word UNK_021C48F8
+_021D7788: .word gMain + 0x40
thumb_func_end MOD59_021D7730
thumb_func_start MOD59_021D778C
@@ -610,7 +610,7 @@ MOD59_021D79F8: ; 0x021D79F8
bl FUN_020142EC
str r0, [r4, #0x60]
ldr r0, [r4]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x64]
mov r0, #0
str r0, [r4, #0x50]
@@ -626,7 +626,7 @@ MOD59_021D7A34: ; 0x021D7A34
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0x64]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x60]
bl FUN_020143D0
ldr r0, [r4, #0x4c]
@@ -982,7 +982,7 @@ _021D7C5E:
ldr r2, [r2, #0x18]
ldr r3, [r3]
add r1, r4, #0
- bl FUN_0200ABB4
+ bl BufferString
mov r1, #1
str r1, [sp]
mov r0, #2
@@ -991,7 +991,7 @@ _021D7C5E:
ldr r0, [r5, #0x64]
ldr r2, [r2, #0x18]
add r3, r4, #0
- bl FUN_0200ABB4
+ bl BufferString
ldr r0, [r5, #0x64]
ldr r1, [r5, #0x5c]
add r2, r6, #0
@@ -4471,7 +4471,7 @@ _021D98C6:
bl FUN_0200E3A0
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0
add r1, r0, #0
bl FUN_02015F34
@@ -4496,7 +4496,7 @@ _021D98C6:
bl MOD59_021D9C48
ldr r0, _021D99F0 ; =MOD59_021D9A14
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r0, #0x3c
str r0, [r4, #0x24]
@@ -4586,7 +4586,7 @@ _021D99C0:
bl MOD59_021D9BD0
add r0, r6, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r6, #1
_021D99E2:
add r0, r6, #0
diff --git a/arm9/modules/60/asm/module_60.s b/arm9/modules/60/asm/module_60.s
index 6c2094b1..28028e5f 100644
--- a/arm9/modules/60/asm/module_60.s
+++ b/arm9/modules/60/asm/module_60.s
@@ -436,7 +436,7 @@ MOD60_021D7834: ; 0x021D7834
_021D7848:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -482,7 +482,7 @@ _021D78A2:
bl FUN_02033F20
ldr r0, _021D78E4 ; =MOD60_021D77D4
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
str r0, [r4, #8]
mov r0, #1
@@ -549,7 +549,7 @@ _021D7928:
_021D7946:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
diff --git a/arm9/modules/61/asm/module_61.s b/arm9/modules/61/asm/module_61.s
index ac07287d..e82b9e44 100644
--- a/arm9/modules/61/asm/module_61.s
+++ b/arm9/modules/61/asm/module_61.s
@@ -555,7 +555,7 @@ _021D78EE: ; jump table
_021D78FA:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -590,7 +590,7 @@ _021D7940:
_021D794E:
ldr r0, _021D7A5C ; =MOD61_021D7A6C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x10
mov r1, #1
bl FUN_0201E6E4
@@ -680,7 +680,7 @@ _021D79FC:
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E6D8
bl FUN_0201E740
mov r2, #1
diff --git a/arm9/modules/62/asm/module_62.s b/arm9/modules/62/asm/module_62.s
index b02c4ff1..79190f60 100644
--- a/arm9/modules/62/asm/module_62.s
+++ b/arm9/modules/62/asm/module_62.s
@@ -39,7 +39,7 @@ MOD62_0222D5F8: ; 0x0222D5F8
beq _0222D64C
cmp r2, #1
bne _0222D628
- ldr r3, _0222D650 ; =UNK_021C48F8
+ ldr r3, _0222D650 ; =gMain + 0x40
mov r1, #0x1c
mov r2, #0x1e
ldrsh r1, [r3, r1]
@@ -74,7 +74,7 @@ _0222D628:
_0222D64C:
pop {r3, r4, r5, pc}
nop
-_0222D650: .word UNK_021C48F8
+_0222D650: .word gMain + 0x40
thumb_func_end MOD62_0222D5F8
thumb_func_start MOD62_0222D654
@@ -7320,7 +7320,7 @@ MOD62_02230F3C: ; 0x02230F3C
push {r3, lr}
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -7345,7 +7345,7 @@ MOD62_02230F70: ; 0x02230F70
push {r3, lr}
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
pop {r3, pc}
thumb_func_end MOD62_02230F70
diff --git a/arm9/modules/63/asm/mod63_021D74E0.s b/arm9/modules/63/asm/mod63_021D74E0.s
index 09884c1e..df0624f9 100644
--- a/arm9/modules/63/asm/mod63_021D74E0.s
+++ b/arm9/modules/63/asm/mod63_021D74E0.s
@@ -19,7 +19,7 @@ MOD63_021D74E0: ; 0x021D74E0
ldr r1, _021D758C ; =0x04000050
strh r0, [r1]
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_02015F34
@@ -68,7 +68,7 @@ MOD63_021D74E0: ; 0x021D74E0
bl MOD63_021D7880
ldr r0, _021D7598 ; =MOD63_021D782C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r0, #1
pop {r4, pc}
@@ -355,7 +355,7 @@ MOD63_021D77B4: ; 0x021D77B4
mov r0, #0
add r1, r0, #0
ldr r4, [r6]
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0
bl MOD63_021D78B0
add r0, r6, #0
@@ -1028,7 +1028,7 @@ _021D7C52:
mov r0, #0x10
orr r0, r1
strh r0, [r2]
- ldr r0, _021D7D70 ; =gUnk021C4918
+ ldr r0, _021D7D70 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -1043,7 +1043,7 @@ _021D7D60: .word 0x04000060
_021D7D64: .word 0xFFFFCFFF
_021D7D68: .word 0x00007FFF
_021D7D6C: .word 0x0000010E
-_021D7D70: .word gUnk021C4918
+_021D7D70: .word gMain + 0x60
thumb_func_end MOD63_021D7C18
thumb_func_start MOD63_021D7D74
@@ -1853,7 +1853,7 @@ MOD63_021D8360: ; 0x021D8360
ldr r0, _021D83A0 ; =0x0000CFDF
and r0, r1
strh r0, [r2]
- ldr r0, _021D83A4 ; =gUnk021C4918
+ ldr r0, _021D83A4 ; =gMain + 0x60
strb r3, [r0, #5]
bl FUN_0201E7A0
mov r0, #1
@@ -1861,7 +1861,7 @@ MOD63_021D8360: ; 0x021D8360
.align 2, 0
_021D839C: .word 0x04000050
_021D83A0: .word 0x0000CFDF
-_021D83A4: .word gUnk021C4918
+_021D83A4: .word gMain + 0x60
thumb_func_end MOD63_021D8360
thumb_func_start MOD63_021D83A8
diff --git a/arm9/modules/63/asm/mod63_021D8890.s b/arm9/modules/63/asm/mod63_021D8890.s
index 7940564f..9c8b1d22 100644
--- a/arm9/modules/63/asm/mod63_021D8890.s
+++ b/arm9/modules/63/asm/mod63_021D8890.s
@@ -574,7 +574,7 @@ MOD63_021D8D10: ; 0x021D8D10
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_02015F34
@@ -604,7 +604,7 @@ MOD63_021D8D10: ; 0x021D8D10
str r1, [r4, #8]
lsl r0, r0, #2
strb r1, [r4, r0]
- ldr r0, _021D8D94 ; =gUnk021C4918
+ ldr r0, _021D8D94 ; =gMain + 0x60
strb r1, [r0, #5]
bl FUN_0201E7A0
bl GetLCRNGSeed
@@ -615,7 +615,7 @@ MOD63_021D8D10: ; 0x021D8D10
pop {r4, pc}
.align 2, 0
_021D8D90: .word 0x00007FFF
-_021D8D94: .word gUnk021C4918
+_021D8D94: .word gMain + 0x60
thumb_func_end MOD63_021D8D10
thumb_func_start MOD63_021D8D98
@@ -826,7 +826,7 @@ MOD63_021D8F0C: ; 0x021D8F0C
str r0, [r4, #0x2c]
ldr r0, _021D8F34 ; =MOD63_021D8CA8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #1
strb r0, [r4, #0x1a]
pop {r4, pc}
@@ -1192,7 +1192,7 @@ MOD63_021D9234: ; 0x021D9234
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldrb r0, [r4, #0x1a]
cmp r0, #0
beq _021D9286
@@ -1544,7 +1544,7 @@ MOD63_021D9498: ; 0x021D9498
ldr r0, [r5, #0xc]
mov r1, #1
str r0, [r5, #0x40]
- ldr r0, _021D9588 ; =gUnk021C4918
+ ldr r0, _021D9588 ; =gMain + 0x60
strb r1, [r0, #5]
bl FUN_0201E7A0
ldr r6, _021D958C ; =MOD63_021DBDE8
@@ -1595,7 +1595,7 @@ _021D950C:
bl FUN_020B8390
ldr r0, _021D95A4 ; =MOD63_021D8CB0
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x10
mov r1, #1
mov r2, #2
@@ -1606,7 +1606,7 @@ _021D950C:
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
nop
-_021D9588: .word gUnk021C4918
+_021D9588: .word gMain + 0x60
_021D958C: .word MOD63_021DBDE8
_021D9590: .word MOD63_021DBAD0
_021D9594: .word 0x00004210
@@ -1728,7 +1728,7 @@ _021D965E:
_021D9690:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r4, r5, r6, pc}
nop
_021D969C: .word 0xFFFF1FFF
diff --git a/arm9/modules/64/asm/module_64.s b/arm9/modules/64/asm/module_64.s
index e979f20e..1dee0562 100644
--- a/arm9/modules/64/asm/module_64.s
+++ b/arm9/modules/64/asm/module_64.s
@@ -47,7 +47,7 @@ _021D7504:
bl FUN_0201C24C
ldr r0, _021D763C ; =MOD64_021D77A4
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201CC08
mov r0, #4
@@ -245,7 +245,7 @@ MOD64_021D76F4: ; 0x021D76F4
add r6, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4, #0x54]
lsl r0, r0, #0x10
lsr r0, r0, #0x10
diff --git a/arm9/modules/65/asm/module_65.s b/arm9/modules/65/asm/module_65.s
index d6b9d89f..af08a5f3 100644
--- a/arm9/modules/65/asm/module_65.s
+++ b/arm9/modules/65/asm/module_65.s
@@ -112,7 +112,7 @@ _021D7596: ; jump table
_021D75A4:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -220,7 +220,7 @@ _021D7684:
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E6D8
bl FUN_0201E740
mov r2, #1
@@ -653,7 +653,7 @@ _021D79D2:
bl MOD65_021D8280
ldr r0, _021D79FC ; =MOD65_021D76DC
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
str r0, [r4, #8]
mov r0, #1
@@ -1051,7 +1051,7 @@ MOD65_021D7CC8: ; 0x021D7CC8
ldr r2, [r5]
mov r0, #2
mov r1, #0x40
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r5, #0x30]
ldr r1, [r5]
mov r0, #0x40
@@ -1142,7 +1142,7 @@ _021D7D94:
ldr r0, [r6, #0x34]
bl String_dtor
ldr r0, [r6, #0x30]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #0x28]
bl FUN_02014564
ldr r0, [r6, #0x2c]
@@ -1566,7 +1566,7 @@ _021D80EE:
ldr r0, [r5, #0x30]
add r1, r7, #0
add r3, r7, #0
- bl FUN_0200ABB4
+ bl BufferString
mov r0, #2
str r0, [sp]
mov r0, #1
@@ -1575,7 +1575,7 @@ _021D80EE:
ldr r0, [r5, #0x30]
mov r1, #1
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x30]
ldr r1, [r5, #0x34]
ldr r2, [r5, #0x3c]
@@ -2179,7 +2179,7 @@ _021D85D4:
str r0, [sp, #4]
ldr r0, [r4, #0x30]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x40]
@@ -2354,7 +2354,7 @@ MOD65_021D8718: ; 0x021D8718
str r3, [sp, #4]
ldr r0, [r4, #0x30]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x44]
@@ -2391,7 +2391,7 @@ MOD65_021D8764: ; 0x021D8764
str r3, [sp, #4]
ldr r0, [r4, #0x30]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
ldr r0, [r4, #0x30]
ldr r1, [r4, #0x34]
ldr r2, [r4, #0x48]
@@ -2769,7 +2769,7 @@ _021D8A78: ; jump table
_021D8A88:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -2805,7 +2805,7 @@ _021D8ACE:
_021D8ADE:
ldr r0, _021D8BB8 ; =MOD65_021D8C88
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
b _021D8BA4
_021D8AE8:
ldr r1, [r4, #4]
@@ -2881,7 +2881,7 @@ _021D8B68:
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E6D8
bl FUN_0201E740
mov r2, #1
@@ -3316,7 +3316,7 @@ MOD65_021D8EC4: ; 0x021D8EC4
ldr r2, [r6]
mov r0, #1
mov r1, #0x40
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r6, #0x1c]
ldr r1, [r6]
mov r0, #0x40
@@ -3354,7 +3354,7 @@ _021D8F10:
ldr r0, [r6, #0x20]
bl String_dtor
ldr r0, [r6, #0x1c]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #0x18]
bl DestroyMsgData
pop {r4, r5, r6, pc}
@@ -3852,7 +3852,7 @@ MOD65_021D92C4: ; 0x021D92C4
ldr r0, [r4, #0x1c]
ldr r2, [r4, #0x3c]
mov r1, #0
- bl FUN_0200ABB4
+ bl BufferString
add r2, r4, #0
add r2, #0x39
ldrb r2, [r2]
diff --git a/arm9/modules/66/asm/module_66.s b/arm9/modules/66/asm/module_66.s
index 2967b0c9..8f27daeb 100644
--- a/arm9/modules/66/asm/module_66.s
+++ b/arm9/modules/66/asm/module_66.s
@@ -191,7 +191,7 @@ MOD66_021D7628: ; 0x021D7628
_021D763C:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -285,7 +285,7 @@ _021D76E4:
_021D7710:
ldr r0, _021D7748 ; =MOD66_021D75C8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldrb r1, [r4]
mov r0, #0x24
add r2, r1, #0
@@ -325,7 +325,7 @@ MOD66_021D7750: ; 0x021D7750
bl FUN_0201E74C
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
add r0, r5, #0
bl MOD66_021D91F4
@@ -1402,7 +1402,7 @@ _021D7FCE:
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021D7FF8 ; =UNK_021C48F8
+ ldr r3, _021D7FF8 ; =gMain + 0x40
ldr r0, [r5, #0x28]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -1418,7 +1418,7 @@ _021D7FEE:
pop {r4, r5, r6, pc}
.align 2, 0
_021D7FF4: .word MOD66_021D9720
-_021D7FF8: .word UNK_021C48F8
+_021D7FF8: .word gMain + 0x40
thumb_func_end MOD66_021D7FA4
thumb_func_start MOD66_021D7FFC
diff --git a/arm9/modules/67/asm/module_67.s b/arm9/modules/67/asm/module_67.s
index 4c85f4ff..997d785e 100644
--- a/arm9/modules/67/asm/module_67.s
+++ b/arm9/modules/67/asm/module_67.s
@@ -9,7 +9,7 @@ MOD67_021D74E0: ; 0x021D74E0
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -79,7 +79,7 @@ MOD67_021D74E0: ; 0x021D74E0
bl MOD67_021D7B84
ldr r0, _021D75CC ; =MOD67_021D7660
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
bl FUN_02033E74
mov r0, #0x10
@@ -153,7 +153,7 @@ MOD67_021D7624: ; 0x021D7624
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD67_021D7D84
ldr r0, [r4]
@@ -441,7 +441,7 @@ MOD67_021D7880: ; 0x021D7880
bl NewMsgDataFromNarc
str r0, [r4, #0x50]
mov r0, #0x2a
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x54]
mov r0, #0x80
mov r1, #0x2a
@@ -459,7 +459,7 @@ MOD67_021D78AC: ; 0x021D78AC
ldr r0, [r4, #0x50]
bl DestroyMsgData
ldr r0, [r4, #0x54]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x58]
bl String_dtor
pop {r4, pc}
@@ -1188,7 +1188,7 @@ _021D7E32:
ldr r0, [r5, #0x54]
mov r1, #0
lsr r2, r2, #0x1c
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -1198,7 +1198,7 @@ _021D7E32:
lsl r2, r2, #0xd
lsr r2, r2, #0x1b
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r4, #0
@@ -1252,7 +1252,7 @@ _021D7E32:
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r4, #0
@@ -1711,7 +1711,7 @@ _021D822A:
ldr r0, [r4, #0x54]
ldr r2, [r4, #0x4c]
mov r1, #1
- bl FUN_0200ABE4
+ bl BufferRivalsName
ldr r0, [r4, #0x54]
ldr r1, [r4, #0x58]
add r2, r6, #0
@@ -1778,7 +1778,7 @@ _021D82F2:
add r2, r0, #0
ldr r0, [r4, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r4, #0x54]
ldr r1, [r4, #0x58]
add r2, r5, #0
@@ -2257,7 +2257,7 @@ MOD67_021D8688: ; 0x021D8688
ldrh r2, [r4, #2]
ldr r0, [r5, #0x54]
mov r1, #0
- bl FUN_0200B430
+ bl BufferGymName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2298,7 +2298,7 @@ MOD67_021D86DC: ; 0x021D86DC
ldrh r2, [r4, #2]
ldr r0, [r5, #0x54]
mov r1, #0
- bl FUN_0200B430
+ bl BufferGymName
ldrh r2, [r4, #4]
ldr r0, [r5, #0x54]
mov r1, #1
@@ -2427,7 +2427,7 @@ MOD67_021D87E4: ; 0x021D87E4
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2482,7 +2482,7 @@ _021D886E:
ldr r0, [r5, #0x54]
mov r1, #0
add r2, r4, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2532,7 +2532,7 @@ _021D88D2:
ldr r0, [r5, #0x54]
ldr r2, [sp, #0x10]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
@@ -2635,7 +2635,7 @@ MOD67_021D898C: ; 0x021D898C
ldrh r2, [r4, #6]
ldr r0, [r5, #0x54]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2678,7 +2678,7 @@ MOD67_021D89E0: ; 0x021D89E0
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2721,7 +2721,7 @@ MOD67_021D8A3C: ; 0x021D8A3C
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2764,7 +2764,7 @@ MOD67_021D8A98: ; 0x021D8A98
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2807,7 +2807,7 @@ MOD67_021D8AF4: ; 0x021D8AF4
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2850,7 +2850,7 @@ MOD67_021D8B50: ; 0x021D8B50
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2893,7 +2893,7 @@ MOD67_021D8BAC: ; 0x021D8BAC
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2936,7 +2936,7 @@ MOD67_021D8C08: ; 0x021D8C08
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -2979,7 +2979,7 @@ MOD67_021D8C64: ; 0x021D8C64
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -3022,7 +3022,7 @@ MOD67_021D8CC0: ; 0x021D8CC0
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -3065,7 +3065,7 @@ MOD67_021D8D1C: ; 0x021D8D1C
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -3108,7 +3108,7 @@ MOD67_021D8D78: ; 0x021D8D78
add r2, r0, #0
ldr r0, [r5, #0x54]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
@@ -3313,7 +3313,7 @@ MOD67_021D8F00: ; 0x021D8F00
add r2, r0, #0
ldr r0, [r5, #0x54]
ldr r1, [sp, #0xc]
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
add r0, r6, #0
bl FreeToHeap
add sp, #0x10
@@ -3380,7 +3380,7 @@ _021D8F9A:
mov r1, #1
lsl r2, r2, #0x1a
lsr r2, r2, #0x1c
- bl FUN_0200B468
+ bl BufferTimeOfDayName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
@@ -3465,7 +3465,7 @@ _021D9046:
mov r1, #1
lsl r2, r2, #0x1a
lsr r2, r2, #0x1c
- bl FUN_0200B468
+ bl BufferTimeOfDayName
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r6, #0
@@ -3512,7 +3512,7 @@ MOD67_021D9098: ; 0x021D9098
ldr r1, [sp, #8]
add r2, r4, #0
add r3, r7, #0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r4, #0
bl String_dtor
add sp, #0xc
@@ -4192,7 +4192,7 @@ MOD67_021D95EC: ; 0x021D95EC
ldr r0, [r5, #0x54]
lsl r2, r2, #0x1c
lsr r2, r2, #0x1c
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x54]
ldr r1, [r5, #0x58]
add r2, r7, #0
diff --git a/arm9/modules/68/asm/module_68.s b/arm9/modules/68/asm/module_68.s
index ff21b695..c201069e 100644
--- a/arm9/modules/68/asm/module_68.s
+++ b/arm9/modules/68/asm/module_68.s
@@ -9,7 +9,7 @@ MOD68_021D74E0: ; 0x021D74E0
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -89,7 +89,7 @@ MOD68_021D74E0: ; 0x021D74E0
bl MOD68_021D8294
ldr r0, _021D75D4 ; =MOD68_021D7680
add r1, r5, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02033F20
mov r0, #0x10
mov r1, #1
@@ -171,7 +171,7 @@ MOD68_021D762C: ; 0x021D762C
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x24
bl FUN_020168D0
ldr r0, _021D767C ; =0x04000050
@@ -446,7 +446,7 @@ MOD68_021D7870: ; 0x021D7870
add r1, #0xcc
str r0, [r1]
mov r0, #0x24
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, #0xc8
str r0, [r4]
pop {r4, pc}
@@ -467,7 +467,7 @@ MOD68_021D78A8: ; 0x021D78A8
bl FUN_0200B990
add r4, #0xc8
ldr r0, [r4]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
pop {r4, pc}
thumb_func_end MOD68_021D78A8
@@ -693,7 +693,7 @@ MOD68_021D7A18: ; 0x021D7A18
ldr r0, [r0]
mov r1, #0
add r2, r2, #1
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r0, #0xc8
ldr r0, [r0]
@@ -945,7 +945,7 @@ MOD68_021D7C28: ; 0x021D7C28
add r0, #0xc8
ldr r0, [r0]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r7, #0
mov r1, #0xa
bl _u32_div_f
@@ -958,7 +958,7 @@ MOD68_021D7C28: ; 0x021D7C28
add r0, #0xc8
ldr r0, [r0]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r5, #0xc8
ldr r0, [r5]
ldr r2, [sp, #0x10]
@@ -1183,7 +1183,7 @@ _021D7E50:
mov r0, #2
tst r0, r1
bne _021D7E60
- ldr r0, _021D7E74 ; =UNK_021C48F8
+ ldr r0, _021D7E74 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021D7E6C
@@ -1198,7 +1198,7 @@ _021D7E6C:
pop {r4, pc}
.align 2, 0
_021D7E70: .word gMain
-_021D7E74: .word UNK_021C48F8
+_021D7E74: .word gMain + 0x40
thumb_func_end MOD68_021D7D9C
thumb_func_start MOD68_021D7E78
diff --git a/arm9/modules/69/asm/module_69.s b/arm9/modules/69/asm/module_69.s
index 74cfe028..0e218fd3 100644
--- a/arm9/modules/69/asm/module_69.s
+++ b/arm9/modules/69/asm/module_69.s
@@ -9,7 +9,7 @@ HOF_OverlayInit: ; 0x0222D5C0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #3
mov r1, #0x3f
lsl r2, r0, #0x10
@@ -43,7 +43,7 @@ HOF_OverlayInit: ; 0x0222D5C0
ldr r1, _0222D718 ; =0x00001B58
str r0, [r4, r1]
mov r0, #0x3f
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0222D71C ; =0x00001B50
str r0, [r4, r1]
mov r0, #0
@@ -200,7 +200,7 @@ _0222D762:
bl MOD69_0222DD18
ldr r0, _0222D7E4 ; =0x00001B50
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _0222D7E8 ; =0x00001B54
ldr r0, [r4, r0]
bl String_dtor
@@ -2358,7 +2358,7 @@ HOF_MonGetUIStrings: ; 0x0222E8FC
add r2, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r0, [r4, #0x24]
bl CalcMonLevel
add r2, r0, #0
@@ -2368,7 +2368,7 @@ HOF_MonGetUIStrings: ; 0x0222E8FC
str r1, [sp, #4]
ldr r0, [r4, #0x14]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x24]
bl GetMonGender
cmp r0, #0
@@ -2422,7 +2422,7 @@ _0222E982:
add r2, r0, #0
ldr r0, [r5, #0x14]
mov r1, #0
- bl GetLandmarkName
+ bl BufferLandmarkName
_0222E996:
ldr r0, [r5, #0x20]
ldr r2, [r5, #0x18]
@@ -2503,7 +2503,7 @@ _0222EA2E:
add r2, r0, #0
ldr r0, [r4, #0x14]
mov r1, #0
- bl FUN_0200AD18
+ bl BufferBoxMonOTName
ldr r0, [r4, #0x20]
ldr r2, [r4, #0x18]
mov r1, #4
@@ -2669,7 +2669,7 @@ MOD69_0222EB4C: ; 0x0222EB4C
ldr r0, [r4, r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4, #0xc]
ldr r0, [r0]
bl PlayerProfile_GetTrainerID_VisibleHalf
@@ -2681,7 +2681,7 @@ MOD69_0222EB4C: ; 0x0222EB4C
str r1, [sp, #4]
ldr r0, [r4, r0]
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
ldr r0, [r0, #8]
bl GetIGTHours
@@ -2694,7 +2694,7 @@ MOD69_0222EB4C: ; 0x0222EB4C
mov r1, #2
ldr r0, [r4, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0xc]
ldr r0, [r0, #8]
bl GetIGTMinutes
@@ -2706,7 +2706,7 @@ MOD69_0222EB4C: ; 0x0222EB4C
ldr r0, _0222EC5C ; =0x00001B50
mov r1, #3
ldr r0, [r4, r0]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, _0222EC50 ; =0x00001B5C
mov r1, #0xd
ldr r0, [r4, r2]
diff --git a/arm9/modules/70/asm/module_70.s b/arm9/modules/70/asm/module_70.s
index f18bda67..61998dcd 100644
--- a/arm9/modules/70/asm/module_70.s
+++ b/arm9/modules/70/asm/module_70.s
@@ -450,7 +450,7 @@ MOD70_021D77CC: ; 0x021D77CC
lsl r1, r1, #2
str r0, [r4, r1]
mov r0, #0x3d
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0x63
lsl r1, r1, #2
str r0, [r4, r1]
@@ -475,7 +475,7 @@ MOD70_021D77CC: ; 0x021D77CC
str r0, [r4, r1]
ldr r0, _021D789C ; =MOD70_021D790C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
_021D788C:
add r0, r4, #0
add sp, #0x14
@@ -493,7 +493,7 @@ MOD70_021D78A0: ; 0x021D78A0
beq _021D790A
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x66
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -509,7 +509,7 @@ MOD70_021D78A0: ; 0x021D78A0
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x62
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -1053,7 +1053,7 @@ MOD70_021D7CE8: ; 0x021D7CE8
ldr r2, [r4]
mov r3, #4
add r6, #0x14
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0
str r0, [sp]
mov r1, #1
@@ -1066,13 +1066,13 @@ MOD70_021D7CE8: ; 0x021D7CE8
add r2, r3, r2
ldr r0, [r5, r0]
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r5, r0]
ldr r2, [r4, #8]
mov r1, #2
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
mov r0, #0
str r0, [sp]
mov r0, #1
@@ -1083,7 +1083,7 @@ MOD70_021D7CE8: ; 0x021D7CE8
ldr r2, [r4, #0xc]
mov r1, #3
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r2, #6
lsl r2, r2, #6
ldr r0, [r5, r2]
@@ -1247,7 +1247,7 @@ _021D7E68:
ldr r0, [r5, r0]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r2, #0x63
lsl r2, r2, #2
add r1, r2, #0
diff --git a/arm9/modules/71/asm/module_71.s b/arm9/modules/71/asm/module_71.s
index 6337fcb9..b61bff20 100644
--- a/arm9/modules/71/asm/module_71.s
+++ b/arm9/modules/71/asm/module_71.s
@@ -10,7 +10,7 @@ MOD71_0222D5C0: ; 0x0222D5C0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -45,17 +45,17 @@ MOD71_0222D5C0: ; 0x0222D5C0
mov r0, #0xc
mov r1, #0x16
mov r2, #0x1a
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
mov r1, #0x5e
lsl r1, r1, #2
str r0, [r4, r1]
mov r0, #0x1a
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0x5f
lsl r1, r1, #2
str r0, [r4, r1]
mov r0, #0x1a
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r2, #6
lsl r2, r2, #6
str r0, [r4, r2]
@@ -94,7 +94,7 @@ MOD71_0222D5C0: ; 0x0222D5C0
bl MOD71_0222E900
ldr r0, _0222D73C ; =MOD71_0222E4DC
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl MOD71_0222EA38
add r0, r4, #0
bl MOD71_0222EA68
@@ -366,7 +366,7 @@ MOD71_0222D820: ; 0x0222D820
bl FUN_020200A0
ldr r0, _0222D938 ; =MOD71_0222E4DC
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add sp, #8
pop {r4, pc}
nop
@@ -655,7 +655,7 @@ _0222DB70:
add r2, r0, #0
add r0, r7, #0
add r1, r4, r6
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r5, #0
add r4, r4, #1
bl GetPartyCount
@@ -1758,15 +1758,15 @@ MOD71_0222E438: ; 0x0222E438
mov r0, #6
lsl r0, r0, #6
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x5f
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x5e
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x63
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -1775,7 +1775,7 @@ MOD71_0222E438: ; 0x0222E438
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x1a
bl FUN_020168D0
mov r0, #1
@@ -4285,7 +4285,7 @@ _0222F910:
ldr r0, _0222F94C ; =0x00003674
mov r1, #0
ldr r0, [r4, r0]
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0
mov r1, #0x23
bl MOD71_0222F84C
@@ -4334,7 +4334,7 @@ _0222F976:
ldr r0, _0222FA18 ; =0x00003674
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r5, #0
mov r1, #0x23
bl MOD71_0222F84C
@@ -4361,7 +4361,7 @@ _0222F9A0:
mov r1, #0
ldr r0, [r5, r0]
add r2, r6, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0
bl FreeToHeap
add r0, r5, #0
@@ -4509,7 +4509,7 @@ _0222FB08:
ldr r0, _0222FB40 ; =0x00003674
mov r1, #0
ldr r0, [r4, r0]
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r4, #0
mov r1, #0x23
bl MOD71_0222F84C
@@ -4660,7 +4660,7 @@ _0222FC2C:
bl DestroyMsgData
ldr r0, _0222FCEC ; =0x00003674
ldr r0, [r6, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0x13
bl FUN_02031588
mov r3, #0x5e
@@ -4695,7 +4695,7 @@ _0222FC70:
ldr r0, _0222FCEC ; =0x00003674
mov r1, #0
ldr r0, [r6, r0]
- bl FUN_0200ABC0
+ bl BufferPlayersName
add r0, r6, #0
mov r1, #0x21
bl MOD71_0222F84C
@@ -4779,7 +4779,7 @@ MOD71_0222FD08: ; 0x0222FD08
pop {r3, r4, pc}
_0222FD48:
mov r0, #0x1a
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0222FD88 ; =0x00003674
ldr r2, _0222FD8C ; =0x00000251
str r0, [r4, r1]
@@ -4882,7 +4882,7 @@ MOD71_0222FDD8: ; 0x0222FDD8
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r1, #0
str r1, [sp]
mov r0, #0x20
@@ -5701,7 +5701,7 @@ MOD71_022304AC: ; 0x022304AC
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r1, r4, #0
ldr r0, _02230538 ; =0x0000221C
add r1, #0x8c
@@ -5715,7 +5715,7 @@ MOD71_022304AC: ; 0x022304AC
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r3, #0x5f
lsl r3, r3, #2
ldr r0, [r4, r3]
@@ -6128,7 +6128,7 @@ MOD71_02230810: ; 0x02230810
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r1, #0
str r1, [sp]
mov r0, #0x20
diff --git a/arm9/modules/73/asm/module_73.s b/arm9/modules/73/asm/module_73.s
index d46ff721..20e8b507 100644
--- a/arm9/modules/73/asm/module_73.s
+++ b/arm9/modules/73/asm/module_73.s
@@ -67,7 +67,7 @@ _021D7536:
str r1, [r5, r0]
ldr r0, _021D7584 ; =MOD73_021D74E0
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
ldr r1, _021D7588 ; =0x0000049F
mov r0, #0xc
@@ -189,7 +189,7 @@ MOD73_021D7640: ; 0x021D7640
bl MOD73_021D8E90
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201C29C
ldr r2, _021D7688 ; =0x000015E8
@@ -1055,7 +1055,7 @@ _021D7D94:
sub r0, r0, #1
str r0, [r4, #0x1c]
bmi _021D7DAE
- ldr r0, _021D7F50 ; =UNK_021C48F8
+ ldr r0, _021D7F50 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _021D7DAE
@@ -1101,7 +1101,7 @@ _021D7DF4:
ldr r0, [r4, #0x1c]
sub r0, r0, #1
str r0, [r4, #0x1c]
- ldr r0, _021D7F50 ; =UNK_021C48F8
+ ldr r0, _021D7F50 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _021D7E14
@@ -1214,7 +1214,7 @@ _021D7ED6:
ldr r0, [r4, #0x1c]
sub r0, r0, #1
str r0, [r4, #0x1c]
- ldr r0, _021D7F50 ; =UNK_021C48F8
+ ldr r0, _021D7F50 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _021D7EF4
@@ -1271,7 +1271,7 @@ _021D7F3E:
_021D7F44: .word 0x0000063C
_021D7F48: .word 0x00001410
_021D7F4C: .word 0x000006C3
-_021D7F50: .word UNK_021C48F8
+_021D7F50: .word gMain + 0x40
_021D7F54: .word gMain
_021D7F58: .word 0x0000152C
_021D7F5C: .word 0x00001420
@@ -2230,7 +2230,7 @@ MOD73_021D8630: ; 0x021D8630
bl MOD73_021DAFA8
add r0, r4, #0
bl MOD73_021D8BDC
- ldr r0, _021D8758 ; =gUnk021C4918
+ ldr r0, _021D8758 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -2245,7 +2245,7 @@ _021D8748: .word 0x0000058C
_021D874C: .word 0x0000061C
_021D8750: .word 0x00000A84
_021D8754: .word 0x00000B04
-_021D8758: .word gUnk021C4918
+_021D8758: .word gMain + 0x60
thumb_func_end MOD73_021D8630
thumb_func_start MOD73_021D875C
@@ -2299,7 +2299,7 @@ MOD73_021D875C: ; 0x021D875C
bl MOD73_021D8BD0
add r0, r4, #0
bl MOD73_021D8D18
- ldr r0, _021D880C ; =gUnk021C4918
+ ldr r0, _021D880C ; =gMain + 0x60
mov r1, #0
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -2313,7 +2313,7 @@ _021D87FC: .word 0x00000598
_021D8800: .word 0x0000061C
_021D8804: .word 0x00000A84
_021D8808: .word 0x00000B04
-_021D880C: .word gUnk021C4918
+_021D880C: .word gMain + 0x60
thumb_func_end MOD73_021D875C
thumb_func_start MOD73_021D8810
@@ -2831,7 +2831,7 @@ MOD73_021D8BDC: ; 0x021D8BDC
ldr r2, [r5]
mov r0, #4
mov r1, #0x40
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
ldr r1, _021D8CE8 ; =0x00001578
str r0, [r5, r1]
ldr r1, [r5]
@@ -3016,7 +3016,7 @@ _021D8D92:
bl String_dtor
ldr r0, _021D8DEC ; =0x00001578
ldr r0, [r6, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, _021D8DF0 ; =0x00001574
ldr r0, [r6, r0]
bl DestroyMsgData
@@ -4904,7 +4904,7 @@ _021D9B02:
mov r2, #0x4d
lsl r2, r2, #2
ldr r2, [r3, r2]
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r2, [r5, #0x18]
ldr r0, [r2, #4]
ldr r1, [r2, #8]
@@ -6246,7 +6246,7 @@ MOD73_021DA550: ; 0x021DA550
ldrb r2, [r2]
ldr r0, [r0, #4]
mov r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r3, #2
str r3, [sp]
mov r1, #1
@@ -6256,7 +6256,7 @@ MOD73_021DA550: ; 0x021DA550
add r2, #0x67
ldrb r2, [r2]
ldr r0, [r0, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #2
str r1, [sp]
mov r0, #1
@@ -6267,7 +6267,7 @@ MOD73_021DA550: ; 0x021DA550
ldrb r2, [r2]
ldr r0, [r0, #4]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r4, #0x1c]
ldr r0, [r2, #4]
ldr r1, [r2, #8]
@@ -6306,7 +6306,7 @@ MOD73_021DA550: ; 0x021DA550
ldr r0, [r0, #4]
ldr r2, [r2, #0x58]
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x24]
ldr r0, [r0, #0x58]
cmp r0, #1
@@ -6356,7 +6356,7 @@ _021DA61A:
ldr r0, [r0, #4]
ldr r2, [r2, #0x5c]
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x24]
ldr r0, [r0, #0x5c]
cmp r0, #1
@@ -6404,7 +6404,7 @@ MOD73_021DA6BC: ; 0x021DA6BC
ldrb r2, [r2]
ldr r0, [r0, #4]
mov r1, #3
- bl FUN_0200B628
+ bl BufferPoffinName
mov r3, #2
str r3, [sp]
mov r1, #1
@@ -6414,7 +6414,7 @@ MOD73_021DA6BC: ; 0x021DA6BC
add r2, #0x65
ldrb r2, [r2]
ldr r0, [r0, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r1, #2
str r1, [sp]
mov r0, #1
@@ -6423,7 +6423,7 @@ MOD73_021DA6BC: ; 0x021DA6BC
ldr r2, [r4, #0x20]
ldr r0, [r0, #4]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r2, [r4, #0x1c]
ldr r0, [r2, #4]
ldr r1, [r2, #8]
@@ -6523,7 +6523,7 @@ _021DA79E:
ldr r0, [r0, #4]
ldr r2, [r2, r3]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r2, [r4, #0x1c]
ldr r0, [r2, #4]
ldr r1, [r2, #8]
@@ -8110,7 +8110,7 @@ MOD73_021DB318: ; 0x021DB318
push {r4, lr}
sub sp, #8
add r4, r0, #0
- ldr r0, _021DB364 ; =UNK_021C48F8
+ ldr r0, _021DB364 ; =gMain + 0x40
ldrh r1, [r0, #0x22]
cmp r1, #0
beq _021DB33C
@@ -8140,13 +8140,13 @@ _021DB33C:
str r0, [r4, #8]
ldr r0, [r4, #4]
str r0, [r4, #0xc]
- ldr r0, _021DB364 ; =UNK_021C48F8
+ ldr r0, _021DB364 ; =gMain + 0x40
ldrh r0, [r0, #0x22]
str r0, [r4, #0x14]
add sp, #8
pop {r4, pc}
.align 2, 0
-_021DB364: .word UNK_021C48F8
+_021DB364: .word gMain + 0x40
thumb_func_end MOD73_021DB318
thumb_func_start MOD73_021DB368
diff --git a/arm9/modules/74/asm/module_74.s b/arm9/modules/74/asm/module_74.s
index 1aca7c52..4daaf396 100644
--- a/arm9/modules/74/asm/module_74.s
+++ b/arm9/modules/74/asm/module_74.s
@@ -188,7 +188,7 @@ _021D763A: ; jump table
_021D7644:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -240,7 +240,7 @@ _021D76B6:
_021D76C2:
ldr r0, _021D76E4 ; =MOD74_021D7784
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
str r0, [r4, #4]
mov r0, #1
@@ -287,7 +287,7 @@ _021D770E:
_021D7722:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -850,7 +850,7 @@ MOD74_021D7B20: ; 0x021D7B20
ldr r2, [r5]
mov r0, #2
mov r1, #0x4c
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
str r0, [r5, #0x2c]
ldr r1, [r5]
mov r0, #0x4c
@@ -936,7 +936,7 @@ _021D7BEC:
ldr r0, [r6, #0x30]
bl String_dtor
ldr r0, [r6, #0x2c]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r6, #0x28]
bl DestroyMsgData
pop {r4, r5, r6, pc}
@@ -992,7 +992,7 @@ MOD74_021D7C10: ; 0x021D7C10
mov r1, #0
add r2, r7, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x2c]
ldr r1, [r5, #0x30]
ldr r2, [r5, #0x5c]
@@ -1037,7 +1037,7 @@ MOD74_021D7C10: ; 0x021D7C10
ldr r2, [sp, #0x10]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r5, #0x2c]
ldr r1, [r5, #0x30]
ldr r2, [r5, #0x5c]
@@ -1203,7 +1203,7 @@ _021D7E04:
str r0, [sp, #4]
ldr r0, [r4, #0x2c]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x60]
@@ -1452,7 +1452,7 @@ MOD74_021D8008: ; 0x021D8008
ldrb r2, [r2]
ldr r0, [r4, #0x2c]
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #2
str r0, [sp]
mov r1, #1
@@ -1461,7 +1461,7 @@ MOD74_021D8008: ; 0x021D8008
ldrb r2, [r2, #1]
ldr r0, [r4, #0x2c]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x38]
@@ -1562,7 +1562,7 @@ _021D8108:
ldr r0, [r4, #0x2c]
bne _021D813C
mov r1, #0
- bl FUN_0200B4A0
+ bl BufferCountryName
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x44]
@@ -1582,12 +1582,12 @@ _021D8108:
b _021D8172
_021D813C:
mov r1, #0
- bl FUN_0200B4A0
+ bl BufferCountryName
ldrb r2, [r5, #5]
ldrb r3, [r5, #6]
ldr r0, [r4, #0x2c]
mov r1, #1
- bl FUN_0200B4D8
+ bl BufferCityName
ldr r0, [r4, #0x2c]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x40]
diff --git a/arm9/modules/75/asm/module_75.s b/arm9/modules/75/asm/module_75.s
index f2852678..f6d498ce 100644
--- a/arm9/modules/75/asm/module_75.s
+++ b/arm9/modules/75/asm/module_75.s
@@ -10,7 +10,7 @@ MOD75_021E6BA0: ; 0x021E6BA0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -175,7 +175,7 @@ MOD75_021E6BA0: ; 0x021E6BA0
_021E6D3A:
ldr r0, _021E6D68 ; =MOD75_021E700C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r1, #0
mov r0, #0x33
add r2, r1, #0
@@ -450,7 +450,7 @@ MOD75_021E6F00: ; 0x021E6F00
mov r0, #0x46
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r4, #0xd4
ldr r0, [r4]
bl NARC_dtor
@@ -458,7 +458,7 @@ MOD75_021E6F00: ; 0x021E6F00
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #6
bl FUN_020168D0
mov r0, #1
@@ -951,7 +951,7 @@ MOD75_021E737C: ; 0x021E737C
lsl r1, r1, #4
str r0, [r4, r1]
mov r0, #6
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r2, #0x46
lsl r2, r2, #2
str r0, [r4, r2]
@@ -3040,7 +3040,7 @@ MOD75_021E8374: ; 0x021E8374
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021E83C8 ; =UNK_021C48F8
+ ldr r3, _021E83C8 ; =gMain + 0x40
ldr r0, [r5]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -3060,7 +3060,7 @@ _021E83B6:
_021E83BC: .word 0x00000424
_021E83C0: .word MOD75_021EC628
_021E83C4: .word 0x0000FFFE
-_021E83C8: .word UNK_021C48F8
+_021E83C8: .word gMain + 0x40
thumb_func_end MOD75_021E8374
thumb_func_start MOD75_021E83CC
@@ -3084,7 +3084,7 @@ MOD75_021E83CC: ; 0x021E83CC
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021E8420 ; =UNK_021C48F8
+ ldr r3, _021E8420 ; =gMain + 0x40
ldr r0, [r5]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -3104,7 +3104,7 @@ _021E840E:
_021E8414: .word 0x00000424
_021E8418: .word MOD75_021EC628
_021E841C: .word 0x0000FFFE
-_021E8420: .word UNK_021C48F8
+_021E8420: .word gMain + 0x40
thumb_func_end MOD75_021E83CC
thumb_func_start MOD75_021E8424
@@ -3598,7 +3598,7 @@ MOD75_021E87B8: ; 0x021E87B8
strh r1, [r0]
add r0, sp, #4
str r0, [sp]
- ldr r3, _021E8804 ; =UNK_021C48F8
+ ldr r3, _021E8804 ; =gMain + 0x40
ldr r0, [r4]
ldrh r2, [r3, #0x1c]
ldrh r3, [r3, #0x1e]
@@ -3620,7 +3620,7 @@ _021E87F4:
nop
_021E87FC: .word MOD75_021EC3F4
_021E8800: .word 0x0000FFFE
-_021E8804: .word UNK_021C48F8
+_021E8804: .word gMain + 0x40
thumb_func_end MOD75_021E87B8
thumb_func_start MOD75_021E8808
@@ -4493,7 +4493,7 @@ MOD75_021E8EB0: ; 0x021E8EB0
mov r0, #3
tst r0, r1
bne _021E8ED2
- ldr r0, _021E8F0C ; =UNK_021C48F8
+ ldr r0, _021E8F0C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E8F00
@@ -4525,7 +4525,7 @@ _021E8F00:
.align 2, 0
_021E8F04: .word 0x00000426
_021E8F08: .word gMain
-_021E8F0C: .word UNK_021C48F8
+_021E8F0C: .word gMain + 0x40
thumb_func_end MOD75_021E8EB0
thumb_func_start MOD75_021E8F10
@@ -4659,7 +4659,7 @@ _021E8FFA:
ldr r0, [r4, r0]
mov r1, #0
add r2, r5, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
add r0, r5, #0
bl MoveIsHM
cmp r0, #1
@@ -4712,7 +4712,7 @@ _021E9070:
mov r0, #3
tst r0, r1
bne _021E908E
- ldr r0, _021E91B4 ; =UNK_021C48F8
+ ldr r0, _021E91B4 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E9132
@@ -4851,7 +4851,7 @@ _021E91A4: .word 0x00000483
_021E91A8: .word 0x000003D9
_021E91AC: .word 0x00000426
_021E91B0: .word gMain
-_021E91B4: .word UNK_021C48F8
+_021E91B4: .word gMain + 0x40
thumb_func_end MOD75_021E8FD8
thumb_func_start MOD75_021E91B8
@@ -4866,13 +4866,13 @@ MOD75_021E91B8: ; 0x021E91B8
ldr r0, [r4, r0]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #0x46
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #1
add r2, r5, #0
- bl FUN_0200AE38
+ bl BufferItemName
cmp r5, #0x44
bne _021E9200
mov r0, #0x45
@@ -5128,7 +5128,7 @@ _021E93D2:
mov r0, #3
tst r0, r1
bne _021E93F0
- ldr r0, _021E9438 ; =UNK_021C48F8
+ ldr r0, _021E9438 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E9422
@@ -5164,7 +5164,7 @@ _021E9428: .word 0x00000483
_021E942C: .word 0x000003D9
_021E9430: .word 0x00000426
_021E9434: .word gMain
-_021E9438: .word UNK_021C48F8
+_021E9438: .word gMain + 0x40
thumb_func_end MOD75_021E9394
thumb_func_start MOD75_021E943C
@@ -5435,7 +5435,7 @@ _021E9636:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
b _021E967A
_021E9664:
add r2, r5, #0
@@ -5447,7 +5447,7 @@ _021E9664:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
_021E967A:
mov r0, #0
str r0, [sp]
@@ -5459,7 +5459,7 @@ _021E967A:
ldrsh r2, [r5, r2]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -5564,7 +5564,7 @@ MOD75_021E9750: ; 0x021E9750
mov r0, #3
tst r0, r1
bne _021E9772
- ldr r0, _021E97A0 ; =UNK_021C48F8
+ ldr r0, _021E97A0 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E9794
@@ -5589,7 +5589,7 @@ _021E9794:
.align 2, 0
_021E9798: .word 0x00000426
_021E979C: .word gMain
-_021E97A0: .word UNK_021C48F8
+_021E97A0: .word gMain + 0x40
_021E97A4: .word 0x00000479
thumb_func_end MOD75_021E9750
@@ -5727,7 +5727,7 @@ _021E9872:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -5796,7 +5796,7 @@ MOD75_021E9930: ; 0x021E9930
mov r0, #3
tst r0, r1
bne _021E9952
- ldr r0, _021E997C ; =UNK_021C48F8
+ ldr r0, _021E997C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E9970
@@ -5819,7 +5819,7 @@ _021E9970:
.align 2, 0
_021E9974: .word 0x00000426
_021E9978: .word gMain
-_021E997C: .word UNK_021C48F8
+_021E997C: .word gMain + 0x40
thumb_func_end MOD75_021E9930
thumb_func_start MOD75_021E9980
@@ -5880,7 +5880,7 @@ _021E99C6:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
add r0, r5, #0
mov r1, #2
bl MOD75_021EC090
@@ -5976,7 +5976,7 @@ _021E9A6E:
ldr r0, [r5, r0]
mul r2, r3
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -6120,7 +6120,7 @@ _021E9BAC:
ldr r0, [r4, r0]
mul r2, r3
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -6215,7 +6215,7 @@ _021E9C80:
ldr r0, [r4, r0]
mul r2, r3
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -6364,7 +6364,7 @@ _021E9DE6:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
b _021E9E2A
_021E9E14:
add r2, r5, #0
@@ -6376,7 +6376,7 @@ _021E9E14:
ldrh r2, [r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AE38
+ bl BufferItemName
_021E9E2A:
mov r0, #0
str r0, [sp]
@@ -6391,7 +6391,7 @@ _021E9E2A:
ldr r0, [r5, r0]
mul r2, r3
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -6547,7 +6547,7 @@ MOD75_021E9F74: ; 0x021E9F74
mov r0, #3
tst r0, r1
bne _021E9F96
- ldr r0, _021E9FD4 ; =UNK_021C48F8
+ ldr r0, _021E9FD4 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021E9FC8
@@ -6579,7 +6579,7 @@ _021E9FC8:
.align 2, 0
_021E9FCC: .word 0x00000426
_021E9FD0: .word gMain
-_021E9FD4: .word UNK_021C48F8
+_021E9FD4: .word gMain + 0x40
_021E9FD8: .word 0x00000479
thumb_func_end MOD75_021E9F74
@@ -6790,7 +6790,7 @@ MOD75_021EA148: ; 0x021EA148
add r0, r1, #2
str r2, [r5, r0]
add r0, r1, #0
- ldr r2, _021EA2C0 ; =UNK_021C48F8
+ ldr r2, _021EA2C0 ; =gMain + 0x40
add r0, #0xc
ldrh r3, [r2, #0x1c]
add r1, #0xe
@@ -6812,7 +6812,7 @@ _021EA18A:
mov r3, #0x50
ldr r1, _021EA2C4 ; =0x0000049E
str r3, [sp]
- ldr r4, _021EA2C0 ; =UNK_021C48F8
+ ldr r4, _021EA2C0 ; =gMain + 0x40
ldrh r0, [r5, r1]
add r1, r1, #2
ldrh r1, [r5, r1]
@@ -6937,7 +6937,7 @@ _021EA274:
ldr r0, _021EA2D4 ; =0x00000494
str r1, [r5, r0]
_021EA298:
- ldr r1, _021EA2C0 ; =UNK_021C48F8
+ ldr r1, _021EA2C0 ; =gMain + 0x40
ldr r0, _021EA2C4 ; =0x0000049E
ldrh r2, [r1, #0x1c]
strh r2, [r5, r0]
@@ -6959,7 +6959,7 @@ _021EA2B6:
pop {r3, r4, r5, r6, r7, pc}
nop
_021EA2BC: .word 0x00000492
-_021EA2C0: .word UNK_021C48F8
+_021EA2C0: .word gMain + 0x40
_021EA2C4: .word 0x0000049E
_021EA2C8: .word 0x0000049A
_021EA2CC: .word 0x000001F6
@@ -8015,7 +8015,7 @@ MOD75_021EAAA8: ; 0x021EAAA8
lsl r0, r0, #2
ldr r0, [r5, r0]
add r1, r4, #0
- bl FUN_0200AE38
+ bl BufferItemName
pop {r3, r4, r5, pc}
thumb_func_end MOD75_021EAAA8
@@ -8033,7 +8033,7 @@ MOD75_021EAAC8: ; 0x021EAAC8
lsl r0, r0, #2
ldr r0, [r5, r0]
add r1, r4, #0
- bl FUN_0200AEA8
+ bl BufferItemNamePlural
pop {r3, r4, r5, pc}
thumb_func_end MOD75_021EAAC8
@@ -8210,7 +8210,7 @@ MOD75_021EAB44: ; 0x021EAB44
mov r1, #0
add r2, r7, #0
mov r3, #2
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -8265,7 +8265,7 @@ _021EACC6:
ldr r0, [r5, r0]
add r2, r7, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -8319,7 +8319,7 @@ _021EAD3C:
ldr r0, [r5, r0]
add r2, r7, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -8446,7 +8446,7 @@ _021EAE2E:
ldr r0, [r5, r0]
ldr r2, [sp, #0x10]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r2, #1
lsl r0, r0, #2
@@ -9298,7 +9298,7 @@ MOD75_021EB504: ; 0x021EB504
ldr r0, [r5, r0]
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -9412,7 +9412,7 @@ _021EB616:
ldrsh r2, [r5, r2]
ldr r0, [r5, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -9560,7 +9560,7 @@ _021EB722:
ldrsh r2, [r5, r2]
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -9602,7 +9602,7 @@ _021EB722:
mul r2, r3
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -9707,7 +9707,7 @@ _021EB866:
ldr r0, [r5, r0]
mov r1, #0
mov r3, #6
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -9799,7 +9799,7 @@ MOD75_021EB8E8: ; 0x021EB8E8
ldr r0, [r5, r0]
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
diff --git a/arm9/modules/76/asm/module_76.s b/arm9/modules/76/asm/module_76.s
index c062f14a..12b6e9fc 100644
--- a/arm9/modules/76/asm/module_76.s
+++ b/arm9/modules/76/asm/module_76.s
@@ -55,7 +55,7 @@ MOD76_021D74E0: ; 0x021D74E0
bl MOD76_021D8CD4
ldr r0, _021D7564 ; =MOD76_021D76E8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #1
pop {r3, r4, r5, pc}
.align 2, 0
@@ -177,7 +177,7 @@ MOD76_021D7638: ; 0x021D7638
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -214,7 +214,7 @@ MOD76_021D7638: ; 0x021D7638
bl MOD76_021D7BE0
ldr r0, _021D76B4 ; =MOD76_021D76E8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r4, pc}
.align 2, 0
_021D76AC: .word 0xFFFFE0FF
@@ -238,7 +238,7 @@ MOD76_021D76B8: ; 0x021D76B8
bl FUN_0201C29C
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r4, pc}
.align 2, 0
thumb_func_end MOD76_021D76B8
@@ -519,7 +519,7 @@ MOD76_021D7900: ; 0x021D7900
add r1, #0xf8
str r0, [r1]
mov r0, #0x43
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r1, r4, #0
add r1, #0xfc
str r0, [r1]
@@ -545,7 +545,7 @@ MOD76_021D7938: ; 0x021D7938
add r0, r4, #0
add r0, #0xfc
ldr r0, [r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #1
lsl r0, r0, #8
ldr r0, [r4, r0]
@@ -1090,7 +1090,7 @@ MOD76_021D7D60: ; 0x021D7D60
add r0, #0xfc
ldr r0, [r0]
add r3, r7, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r1, #1
add r0, #0xfc
@@ -1836,7 +1836,7 @@ _021D8382:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
b _021D84D8
_021D839A:
bl MOD76_021D8514
@@ -1845,7 +1845,7 @@ _021D839A:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D83AE:
ldr r0, [r4]
@@ -1856,7 +1856,7 @@ _021D83AE:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
b _021D84D8
_021D83C6:
ldr r0, [r4]
@@ -1867,7 +1867,7 @@ _021D83C6:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD76_021D8514
add r2, r0, #0
@@ -1875,7 +1875,7 @@ _021D83C6:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D83F2:
ldr r0, [r4]
@@ -1886,7 +1886,7 @@ _021D83F2:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD76_021D8514
add r2, r0, #0
@@ -1894,7 +1894,7 @@ _021D83F2:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D841E:
ldr r0, [r4]
@@ -1905,7 +1905,7 @@ _021D841E:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD76_021D8524
add r2, r0, #0
@@ -1913,7 +1913,7 @@ _021D841E:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D844A:
ldr r0, [r4]
@@ -1924,7 +1924,7 @@ _021D844A:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD76_021D8514
add r2, r0, #0
@@ -1932,7 +1932,7 @@ _021D844A:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D8476:
bl MOD76_021D8514
@@ -1941,7 +1941,7 @@ _021D8476:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D848A:
ldr r0, [r4]
@@ -1952,7 +1952,7 @@ _021D848A:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
add r0, r4, #0
bl MOD76_021D8514
add r2, r0, #0
@@ -1960,7 +1960,7 @@ _021D848A:
add r0, #0xfc
ldr r0, [r0]
mov r1, #1
- bl FUN_0200AD5C
+ bl BufferMoveName
b _021D84D8
_021D84B6:
ldr r2, [r4]
@@ -1968,7 +1968,7 @@ _021D84B6:
ldr r0, [r0]
ldr r2, [r2, #4]
mov r1, #2
- bl FUN_0200ABC0
+ bl BufferPlayersName
b _021D84D8
_021D84C6:
bl MOD76_021D8524
@@ -1977,7 +1977,7 @@ _021D84C6:
add r0, #0xfc
ldr r0, [r0]
mov r1, #0
- bl FUN_0200AD5C
+ bl BufferMoveName
_021D84D8:
ldr r1, [r4]
add r0, r4, #0
diff --git a/arm9/modules/77/asm/module_77.s b/arm9/modules/77/asm/module_77.s
index 7219a909..1c074133 100644
--- a/arm9/modules/77/asm/module_77.s
+++ b/arm9/modules/77/asm/module_77.s
@@ -9,7 +9,7 @@ MOD77_021D74E0: ; 0x021D74E0
add r4, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_02015F34
@@ -84,7 +84,7 @@ _021D7540:
ldr r2, [r5]
mov r0, #8
mov r1, #0x40
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
ldr r1, _021D75F8 ; =0x0000C070
str r0, [r5, r1]
ldr r0, [r5]
@@ -94,7 +94,7 @@ _021D7540:
mov r0, #0
add r1, #0x1c
str r0, [r5, r1]
- ldr r0, _021D7600 ; =gUnk021C4918
+ ldr r0, _021D7600 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -117,7 +117,7 @@ _021D75F0: .word 0x0000C324
_021D75F4: .word 0x0000C010
_021D75F8: .word 0x0000C070
_021D75FC: .word 0x0000C2CC
-_021D7600: .word gUnk021C4918
+_021D7600: .word gMain + 0x60
thumb_func_end MOD77_021D74E0
thumb_func_start MOD77_021D7604
@@ -820,19 +820,19 @@ MOD77_021D7BAC: ; 0x021D7BAC
bl FUN_0201EB70
ldr r0, _021D7C18 ; =0x0000C070
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
bl FUN_0201B398
ldr r0, _021D7C1C ; =0x0000C010
ldr r0, [r4, r0]
bl FreeToHeap
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0
bl OverlayManager_FreeData
add r0, r5, #0
bl FUN_020168D0
- ldr r0, _021D7C20 ; =gUnk021C4918
+ ldr r0, _021D7C20 ; =gMain + 0x60
mov r1, #0
strb r1, [r0, #5]
mov r0, #1
@@ -841,7 +841,7 @@ MOD77_021D7BAC: ; 0x021D7BAC
_021D7C14: .word 0x0000C2CC
_021D7C18: .word 0x0000C070
_021D7C1C: .word 0x0000C010
-_021D7C20: .word gUnk021C4918
+_021D7C20: .word gMain + 0x60
thumb_func_end MOD77_021D7BAC
thumb_func_start MOD77_021D7C24
@@ -1127,7 +1127,7 @@ MOD77_021D7E24: ; 0x021D7E24
ldr r0, _021D7F2C ; =0x0000C2F8
mov r1, #0
str r1, [r4, r0]
- ldr r1, _021D7F30 ; =UNK_021C48F8
+ ldr r1, _021D7F30 ; =gMain + 0x40
ldrh r2, [r1, #0x20]
cmp r2, #0
beq _021D7E86
@@ -1160,7 +1160,7 @@ _021D7E54:
str r2, [r4, r1]
sub r1, r0, #4
str r2, [r4, r1]
- ldr r2, _021D7F30 ; =UNK_021C48F8
+ ldr r2, _021D7F30 ; =gMain + 0x40
add r1, r0, #4
ldrh r3, [r2, #0x1c]
str r3, [r4, r1]
@@ -1172,7 +1172,7 @@ _021D7E54:
mov r1, #4
str r1, [r4, r0]
_021D7E86:
- ldr r0, _021D7F30 ; =UNK_021C48F8
+ ldr r0, _021D7F30 ; =gMain + 0x40
ldrh r0, [r0, #0x22]
cmp r0, #0
beq _021D7F02
@@ -1227,7 +1227,7 @@ _021D7EBA:
add r0, #0x14
str r2, [r4, r0]
add r0, r1, #0
- ldr r2, _021D7F30 ; =UNK_021C48F8
+ ldr r2, _021D7F30 ; =gMain + 0x40
add r0, #8
ldrh r3, [r2, #0x1c]
add r1, #0xc
@@ -1260,7 +1260,7 @@ _021D7F10:
pop {r4, pc}
nop
_021D7F2C: .word 0x0000C2F8
-_021D7F30: .word UNK_021C48F8
+_021D7F30: .word gMain + 0x40
_021D7F34: .word 0x0000C2FC
_021D7F38: .word 0x0000C310
thumb_func_end MOD77_021D7E24
@@ -1269,7 +1269,7 @@ _021D7F38: .word 0x0000C310
MOD77_021D7F3C: ; 0x021D7F3C
push {r3, r4, r5, r6, r7, lr}
mov lr, r0
- ldr r0, _021D7FA4 ; =UNK_021C48F8
+ ldr r0, _021D7FA4 ; =gMain + 0x40
mov ip, r1
ldrh r5, [r0, #0x1c]
mov r1, #0
@@ -1298,7 +1298,7 @@ _021D7F6C:
add r0, r3, #0
and r0, r1
str r0, [r6]
- ldr r0, _021D7FA4 ; =UNK_021C48F8
+ ldr r0, _021D7FA4 ; =gMain + 0x40
ldrh r3, [r0, #0x1e]
ldr r0, _021D7FA8 ; =0x0000FFFF
cmp r3, r0
@@ -1324,7 +1324,7 @@ _021D7F94:
str r1, [r0]
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
-_021D7FA4: .word UNK_021C48F8
+_021D7FA4: .word gMain + 0x40
_021D7FA8: .word 0x0000FFFF
thumb_func_end MOD77_021D7F3C
@@ -1990,7 +1990,7 @@ MOD77_021D8510: ; 0x021D8510
ldr r0, [r5, r0]
ldr r2, [r5, r2]
mov r1, #0
- bl FUN_0200B4A0
+ bl BufferCountryName
ldr r3, _021D85D8 ; =0x0000C314
ldr r0, _021D85D4 ; =0x0000C070
ldr r2, [r5, r3]
@@ -1998,7 +1998,7 @@ MOD77_021D8510: ; 0x021D8510
ldr r0, [r5, r0]
ldr r3, [r5, r3]
mov r1, #1
- bl FUN_0200B4D8
+ bl BufferCityName
ldr r0, _021D85DC ; =0x0000C060
mov r1, #0xd
ldr r0, [r5, r0]
diff --git a/arm9/modules/78/asm/module_78.s b/arm9/modules/78/asm/module_78.s
index 60412019..6a0d80b3 100644
--- a/arm9/modules/78/asm/module_78.s
+++ b/arm9/modules/78/asm/module_78.s
@@ -269,7 +269,7 @@ MOD78_021D7708: ; 0x021D7708
push {r3, lr}
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
diff --git a/arm9/modules/80/asm/module_80.s b/arm9/modules/80/asm/module_80.s
index d8d72189..ca96ae65 100644
--- a/arm9/modules/80/asm/module_80.s
+++ b/arm9/modules/80/asm/module_80.s
@@ -1373,7 +1373,7 @@ MOD80_0222DFD0: ; 0x0222DFD0
_0222DFE4:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -1417,7 +1417,7 @@ _0222DFE4:
mov r0, #0xb
mov r1, #0x40
mov r2, #0x3e
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
mov r1, #0xb3
lsl r1, r1, #4
str r0, [r4, r1]
@@ -1675,7 +1675,7 @@ MOD80_0222E25C: ; 0x0222E25C
mov r0, #0xb3
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
bl MOD80_0222E398
bl FUN_0202E4F0
@@ -1687,7 +1687,7 @@ MOD80_0222E25C: ; 0x0222E25C
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x3e
bl FUN_020168D0
mov r0, #1
@@ -2347,7 +2347,7 @@ MOD80_0222E7C8: ; 0x0222E7C8
bl MOD80_0222E614
ldr r0, _0222E7EC ; =MOD80_0222E2E0
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r4, pc}
nop
_0222E7EC: .word MOD80_0222E2E0
@@ -4789,7 +4789,7 @@ MOD80_0222FB3C: ; 0x0222FB3C
lsl r0, r0, #4
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200AC60
+ bl BufferBoxMonSpeciesName
ldr r0, _0222FBB4 ; =0x00000B34
add r1, r6, #0
ldr r0, [r5, r0]
@@ -4889,7 +4889,7 @@ MOD80_0222FBC0: ; 0x0222FBC0
add r0, r7, #0
add r2, r4, #0
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r7, #0
add r1, r5, #0
mov r2, #0x66
@@ -5633,7 +5633,7 @@ MOD80_0223022C: ; 0x0223022C
lsl r0, r0, #4
ldr r0, [r5, r0]
mov r1, #8
- bl FUN_0200B4A0
+ bl BufferCountryName
_02230268:
ldr r2, _022302B8 ; =0x0000011F
ldrb r3, [r4, r2]
@@ -5645,7 +5645,7 @@ _02230268:
ldrb r2, [r4, r2]
ldr r0, [r5, r0]
mov r1, #9
- bl FUN_0200B4D8
+ bl BufferCityName
_02230280:
mov r1, #0xb3
lsl r1, r1, #4
@@ -9485,7 +9485,7 @@ _022321B8:
lsl r0, r0, #4
ldr r0, [r5, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _02232378 ; =0x00000F0F
mov r3, #0
str r0, [sp]
@@ -9622,7 +9622,7 @@ _022322BC:
ldr r0, [r5, r0]
mov r1, #0
add r2, r4, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, _02232378 ; =0x00000F0F
mov r3, #0
str r0, [sp]
@@ -13395,7 +13395,7 @@ MOD80_022340DC: ; 0x022340DC
ldr r2, [sp, #0x10]
add r0, r5, #0
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
add r1, r4, #0
mov r2, #0x66
@@ -15256,7 +15256,7 @@ _02234F38:
lsl r0, r0, #4
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #2
str r0, [r4, #0x28]
mov r0, #0x22
@@ -15302,7 +15302,7 @@ _02234FA4:
lsl r0, r0, #4
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
mov r0, #3
str r0, [r4, #0x28]
mov r0, #0x22
@@ -19256,7 +19256,7 @@ _02236E16:
ldr r0, [r5, r0]
mov r1, #0
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02236E44 ; =0x00000E98
mov r1, #1
add r0, r5, r0
diff --git a/arm9/modules/81/asm/module_81.s b/arm9/modules/81/asm/module_81.s
index d21611f4..3db42aa1 100644
--- a/arm9/modules/81/asm/module_81.s
+++ b/arm9/modules/81/asm/module_81.s
@@ -55,7 +55,7 @@ _02237E84:
bl NewMsgDataFromNarc
str r0, [r4, #0x10]
mov r0, #0x39
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0xc]
ldr r2, [r4]
ldr r0, [r2, #0x10]
@@ -70,17 +70,17 @@ _02237ECC:
ldr r0, [r4, #0xc]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, [r4]
ldr r0, [r4, #0xc]
ldr r2, [r2, #4]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r2, [r4]
ldr r0, [r4, #0xc]
ldr r2, [r2, #8]
mov r1, #2
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r4]
ldr r0, [r0, #4]
bl MOD81_02237FE8
@@ -92,13 +92,13 @@ _02237EFE:
ldr r0, [r4, #0xc]
ldr r2, [r2]
mov r1, #0
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
b _02237F22
_02237F0A:
ldr r0, [r4, #0xc]
ldr r2, [r2, #4]
mov r1, #1
- bl FUN_0200ACF8
+ bl BufferBoxMonNickname
ldr r0, [r4]
ldr r0, [r0, #4]
bl MOD81_02237FE8
@@ -151,7 +151,7 @@ _02237F22:
add r1, r1, #2
str r0, [r4, r1]
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -224,7 +224,7 @@ MOD81_02238004: ; 0x02238004
bl FUN_0200CAB4
bl FUN_02033ED0
ldr r0, [r4, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x10]
bl DestroyMsgData
ldr r0, [r4, #0x14]
@@ -5496,7 +5496,7 @@ MOD81_0223A8C8: ; 0x0223A8C8
beq _0223A8F6
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD81_0223ABC0
add r0, r4, #0
@@ -7029,7 +7029,7 @@ MOD81_0223B4E8: ; 0x0223B4E8
bl MOD81_0223B9A0
ldr r0, _0223B520 ; =MOD81_0223BCA8
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
_0223B51C:
add r0, r4, #0
pop {r3, r4, r5, pc}
@@ -7044,7 +7044,7 @@ MOD81_0223B524: ; 0x0223B524
beq _0223B552
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD81_0223B7D0
add r0, r4, #0
diff --git a/arm9/modules/82/asm/module_82.s b/arm9/modules/82/asm/module_82.s
index cc15c1dc..4e09a3ed 100644
--- a/arm9/modules/82/asm/module_82.s
+++ b/arm9/modules/82/asm/module_82.s
@@ -623,7 +623,7 @@ MOD82_0222DA34: ; 0x0222DA34
_0222DA48:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -667,7 +667,7 @@ _0222DA48:
mov r0, #0xb
mov r1, #0x20
mov r2, #0x44
- bl FUN_0200AA90
+ bl ScrStrBufs_new_custom
ldr r1, _0222DB64 ; =0x00000B78
ldr r2, _0222DB68 ; =0x0000024E
str r0, [r4, r1]
@@ -875,7 +875,7 @@ MOD82_0222DC50: ; 0x0222DC50
bl DestroyMsgData
ldr r0, _0222DCC0 ; =0x00000B78
ldr r0, [r4, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r4, #0
bl MOD82_0222DD20
bl FUN_0202E4F0
@@ -885,7 +885,7 @@ MOD82_0222DC50: ; 0x0222DC50
bl OverlayManager_FreeData
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x44
bl FUN_020168D0
mov r0, #1
@@ -1314,7 +1314,7 @@ MOD82_0222DFD4: ; 0x0222DFD4
bl MOD82_0222DE80
ldr r0, _0222DFF8 ; =MOD82_0222DCC4
mov r1, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r4, pc}
nop
_0222DFF8: .word MOD82_0222DCC4
@@ -2679,7 +2679,7 @@ MOD82_0222EAA4: ; 0x0222EAA4
ldr r0, [r4, r0]
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r3, #2
str r3, [sp]
mov r1, #1
@@ -2687,7 +2687,7 @@ MOD82_0222EAA4: ; 0x0222EAA4
ldr r0, _0222EB00 ; =0x00000B78
ldr r2, [r4, #0x3c]
ldr r0, [r4, r0]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0222EB04 ; =0x00000F0F
mov r2, #1
str r0, [sp]
@@ -3397,7 +3397,7 @@ MOD82_0222F048: ; 0x0222F048
ldr r0, [r4, r0]
mov r1, #0
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r3, #2
str r3, [sp]
mov r1, #1
@@ -3405,7 +3405,7 @@ MOD82_0222F048: ; 0x0222F048
ldr r0, _0222F09C ; =0x00000B78
ldr r2, [r4, #0x3c]
ldr r0, [r4, r0]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _0222F0A0 ; =0x00000F0F
mov r2, #1
str r0, [sp]
@@ -4427,7 +4427,7 @@ _0222F7D2:
mov r1, #0
ldr r0, [r5, r0]
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x36
lsl r0, r0, #6
add r0, r5, r0
diff --git a/arm9/modules/83/asm/module_83.s b/arm9/modules/83/asm/module_83.s
index bb52eeb3..d16c0493 100644
--- a/arm9/modules/83/asm/module_83.s
+++ b/arm9/modules/83/asm/module_83.s
@@ -952,7 +952,7 @@ _0222DD12:
mov r1, #1
str r1, [sp, #4]
mov r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #8
pop {r3, pc}
.align 2, 0
@@ -973,7 +973,7 @@ MOD83_0222DD24: ; 0x0222DD24
bl NewMsgDataFromNarc
str r0, [sp, #0x24]
mov r0, #0x51
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [sp, #0x28]
ldr r0, [sp, #0x10]
ldr r0, [r0, #0xc]
@@ -1041,7 +1041,7 @@ _0222DDB8:
ldr r0, [sp, #0x28]
ldr r2, [r2, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
mov r0, #0x10
str r0, [sp]
str r0, [sp, #4]
@@ -1066,7 +1066,7 @@ _0222DDB8:
str r3, [sp]
mov r1, #1
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x11
str r0, [sp]
mov r0, #0x20
@@ -1084,7 +1084,7 @@ _0222DDB8:
str r3, [sp, #4]
ldr r0, [sp, #0x28]
ldr r2, [r2, #0x50]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x13
str r0, [sp]
mov r0, #0x30
@@ -1138,7 +1138,7 @@ _0222DE76:
add r0, #0xcc
str r2, [r0]
ldr r0, [sp, #0x28]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0x24]
bl DestroyMsgData
mov r0, #1
@@ -1855,7 +1855,7 @@ _0222E3FE:
bl FreeToHeap
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r3, r4, r5, r6, r7, pc}
thumb_func_end MOD83_0222E3B8
@@ -2099,7 +2099,7 @@ _0222E616:
bl MOD83_0222DBD0
ldr r0, _0222E7A0 ; =MOD83_0222E464
ldr r1, [r4]
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r4, #0
bl MOD83_0222E0DC
ldr r1, [r4, #0x54]
@@ -2871,7 +2871,7 @@ MOD83_0222EC78: ; 0x0222EC78
sub sp, #0x20
add r5, r0, #0
ldr r0, [r5]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0
mov r0, #1
str r0, [sp]
@@ -2902,7 +2902,7 @@ MOD83_0222EC78: ; 0x0222EC78
ldr r2, [r5, #0x10]
add r0, r4, #0
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x10]
bl PlayerProfile_GetTrainerID_VisibleHalf
add r2, r0, #0
@@ -2912,7 +2912,7 @@ MOD83_0222EC78: ; 0x0222EC78
add r0, r4, #0
mov r3, #5
str r1, [sp, #4]
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x42
str r0, [sp]
add r1, r5, #0
@@ -2957,7 +2957,7 @@ MOD83_0222EC78: ; 0x0222EC78
add r0, r4, #0
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #2
str r0, [sp]
mov r1, #1
@@ -2965,7 +2965,7 @@ MOD83_0222EC78: ; 0x0222EC78
ldr r2, [sp, #0x18]
add r0, r4, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add r0, r5, #0
mov r1, #1
add r0, #0xfc
@@ -2979,7 +2979,7 @@ MOD83_0222EC78: ; 0x0222EC78
add r3, r2, #0
bl MOD83_02238A38
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x20
pop {r3, r4, r5, pc}
nop
@@ -3347,7 +3347,7 @@ MOD83_0222F074: ; 0x0222F074
bl NewMsgDataFromNarc
add r6, r0, #0
ldr r0, [r5]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #0xc6
mov r2, #7
lsl r1, r1, #6
@@ -3443,7 +3443,7 @@ MOD83_0222F074: ; 0x0222F074
lsl r1, r1, #2
str r0, [r4, r1]
ldr r0, [sp]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0
bl DestroyMsgData
ldr r0, _0222F1A8 ; =0x00003174
@@ -5986,7 +5986,7 @@ MOD83_0223050C: ; 0x0223050C
bl NewMsgDataFromNarc
str r0, [r4, #0x10]
mov r0, #0x56
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0xc]
mov r0, #1
mov r1, #6
@@ -6030,7 +6030,7 @@ _0223057A:
ldr r0, [r4, #0x10]
bl DestroyMsgData
ldr r0, [r4, #0xc]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
mov r0, #0xff
str r0, [r4, #0x68]
add sp, #0x10
@@ -6311,7 +6311,7 @@ _022307C8:
mov r1, #0
bl FUN_02018744
mov r0, #0x56
- bl FUN_0200AA80
+ bl ScrStrBufs_new
mov r1, #2
str r1, [sp]
mov r1, #1
@@ -6321,7 +6321,7 @@ _022307C8:
ldr r2, [r5, r2]
mov r3, #5
add r6, r0, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #0x1f
ldr r1, _02230844 ; =0x00002624
str r0, [sp]
@@ -6349,7 +6349,7 @@ _022307C8:
add r3, r2, #0
bl MOD83_02238A38
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x5c
pop {r3, r4, r5, r6, pc}
nop
@@ -6426,7 +6426,7 @@ MOD83_0223089C: ; 0x0223089C
bl NewMsgDataFromNarc
add r7, r0, #0
mov r0, #0x56
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r1, r7, #0
add r2, r5, #0
mov r3, #0x56
@@ -6442,7 +6442,7 @@ MOD83_0223089C: ; 0x0223089C
ldr r0, [sp, #4]
str r0, [r4, #0x74]
ldr r0, [sp, #8]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r7, #0
bl DestroyMsgData
b _02230918
@@ -8231,7 +8231,7 @@ MOD83_022317A8: ; 0x022317A8
bl NewMsgDataFromNarc
add r4, r0, #0
mov r0, #0x57
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
mov r0, #1
mov r1, #6
@@ -8263,7 +8263,7 @@ MOD83_022317A8: ; 0x022317A8
add r0, r4, #0
bl DestroyMsgData
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -8670,12 +8670,12 @@ MOD83_02231B1C: ; 0x02231B1C
ldr r0, [r4, r0]
mov r1, #0
mov r3, #4
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r0, _02231B80 ; =0x000029A0
ldr r2, [sp, #0xc]
ldr r0, [r4, r0]
mov r1, #1
- bl FUN_0200B764
+ bl BufferMonthNameAbbr
mov r1, #2
str r1, [sp]
mov r0, #1
@@ -8684,7 +8684,7 @@ MOD83_02231B1C: ; 0x02231B1C
ldr r2, [sp, #0x10]
ldr r0, [r4, r0]
add r3, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #1
add sp, #0x18
pop {r4, pc}
@@ -8785,7 +8785,7 @@ _02231C2C:
ldr r0, _02231C54 ; =0x000029A0
ldr r0, [r3, r0]
mov r3, #3
- bl FUN_0200AD38
+ bl BufferIntegerAsString
add sp, #0x10
mov r0, #1
pop {r4, r5, r6, pc}
@@ -8975,7 +8975,7 @@ MOD83_02231D9C: ; 0x02231D9C
ldr r0, [r0, r1]
mov r1, #0
add r2, r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
mov r0, #1
add sp, #8
pop {r3, pc}
@@ -9028,7 +9028,7 @@ MOD83_02231DF0: ; 0x02231DF0
ldr r1, _02231F70 ; =0x000029A4
str r0, [r5, r1]
ldr r0, [r5]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _02231F74 ; =0x000029A0
str r0, [r5, r1]
ldr r1, _02231F78 ; =0x00002B64
@@ -9186,7 +9186,7 @@ _02231F2E:
bl DestroyMsgData
ldr r0, _02231F74 ; =0x000029A0
ldr r0, [r5, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [sp, #0x14]
cmp r0, #0
bne _02231F64
@@ -9261,7 +9261,7 @@ _02231FD2:
ldr r1, _02232090 ; =0x000029A4
str r0, [r5, r1]
mov r0, #0x57
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _02232094 ; =0x000029A0
str r0, [r5, r1]
_02231FFE:
@@ -9302,7 +9302,7 @@ _02231FFE:
bl DestroyMsgData
ldr r0, _02232094 ; =0x000029A0
ldr r0, [r5, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_02232054:
ldr r0, _022320A0 ; =0x00002B70
add r0, r5, r0
@@ -11077,7 +11077,7 @@ _02232E7E:
bl MOD83_02232DB4
str r0, [sp, #0x34]
mov r0, #0x57
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0
ldr r2, _02232FD8 ; =0x00000172
mov r0, #1
@@ -11104,7 +11104,7 @@ _02232EE6:
add r0, r4, #0
mov r1, #0
add r2, r7, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r1, [sp, #0x1c]
add r0, r4, #0
mov r2, #0x35
@@ -11156,7 +11156,7 @@ _02232F4A:
mov r1, #0
lsr r2, r2, #0x10
mov r3, #5
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, [sp, #0x1c]
add r0, r4, #0
mov r2, #0x36
@@ -11196,7 +11196,7 @@ _02232FB8:
ldr r0, [sp, #0x1c]
bl DestroyMsgData
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r6, #0
add sp, #0x48
pop {r3, r4, r5, r6, r7, pc}
@@ -11225,7 +11225,7 @@ MOD83_02232FE4: ; 0x02232FE4
ldr r1, _02233078 ; =0x000029A4
str r0, [r5, r1]
mov r0, #0x57
- bl FUN_0200AA80
+ bl ScrStrBufs_new
ldr r1, _0223307C ; =0x000029A0
str r0, [r5, r1]
add r0, r4, #0
@@ -11239,7 +11239,7 @@ MOD83_02232FE4: ; 0x02232FE4
ldr r0, [r5, r0]
ldr r2, [r5, r2]
mov r1, #0
- bl FUN_0200AD38
+ bl BufferIntegerAsString
ldr r1, _0223307C ; =0x000029A0
mov r2, #0x38
ldr r0, [r5, r1]
@@ -11268,7 +11268,7 @@ MOD83_02232FE4: ; 0x02232FE4
bl DestroyMsgData
ldr r0, _0223307C ; =0x000029A0
ldr r0, [r5, r0]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add sp, #0x10
pop {r4, r5, r6, pc}
.align 2, 0
@@ -15528,7 +15528,7 @@ _02234F8C:
cmp r7, #0
bne _02234FB2
mov r0, #0x4e
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r7, r0, #0
_02234FB2:
ldr r1, [sp, #0x14]
@@ -15560,7 +15560,7 @@ _02234FB2:
cmp r0, #0
bne _02234FF8
add r0, r7, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_02234FF8:
ldr r0, [sp, #0x14]
bl DestroyMsgData
@@ -16268,7 +16268,7 @@ _02235512:
str r0, [sp, #0x20]
ldr r0, [sp, #0x1c]
bl MOD83_TranslateAgbSpecies
- ldr r2, _0223563C ; =gUnk021C4918
+ ldr r2, _0223563C ; =gMain + 0x60
ldr r1, [sp, #0x20]
ldrb r2, [r2, #6]
bl MOD83_02235350
@@ -16365,7 +16365,7 @@ _02235602:
nop
_02235634: .word 0x0000E880
_02235638: .word 0x0000E884
-_0223563C: .word gUnk021C4918
+_0223563C: .word gMain + 0x60
_02235640: .word MOD83_022354AC
_02235644: .word 0x00012604
thumb_func_end MOD83_022354F0
@@ -17527,7 +17527,7 @@ _02235F48:
bl FUN_0201E66C
ldr r0, [r4, #0x20]
bl MOD83_02235E68
- ldr r0, _02235FB8 ; =gUnk021C4918
+ ldr r0, _02235FB8 ; =gMain + 0x60
mov r1, #1
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -17567,7 +17567,7 @@ _02235F48:
pop {r3, r4, r5, pc}
.align 2, 0
_02235FB4: .word MOD83_0223A59C
-_02235FB8: .word gUnk021C4918
+_02235FB8: .word gMain + 0x60
thumb_func_end MOD83_02235F3C
thumb_func_start MOD83_02235FBC
@@ -17819,7 +17819,7 @@ _02236148:
ldr r0, _02236288 ; =0x00000414
str r7, [sp]
ldr r0, [r4, r0]
- ldr r3, _0223628C ; =gUnk021C4918
+ ldr r3, _0223628C ; =gMain + 0x60
str r0, [sp, #4]
ldrb r3, [r3, #6]
ldr r0, [sp, #0x14]
@@ -17906,7 +17906,7 @@ _02236148:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_02236288: .word 0x00000414
-_0223628C: .word gUnk021C4918
+_0223628C: .word gMain + 0x60
_02236290: .word MOD83_0223B280
_02236294: .word 0x000003D2
thumb_func_end MOD83_022360C8
@@ -17994,7 +17994,7 @@ MOD83_02236330: ; 0x02236330
add r6, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r7, #0x6a
mov r4, #0
add r5, r6, #0
@@ -18091,7 +18091,7 @@ _022363E2:
ldr r0, _02236448 ; =0x0000E88C
ldr r0, [r6, r0]
bl FUN_020145A8
- ldr r0, _0223644C ; =gUnk021C4918
+ ldr r0, _0223644C ; =gMain + 0x60
mov r1, #0
strb r1, [r0, #5]
bl FUN_0201E7A0
@@ -18113,7 +18113,7 @@ _0223643C: .word 0x00000478
_02236440: .word 0x00000488
_02236444: .word 0x00000498
_02236448: .word 0x0000E88C
-_0223644C: .word gUnk021C4918
+_0223644C: .word gMain + 0x60
thumb_func_end MOD83_02236330
thumb_func_start MOD83_02236450
@@ -18158,7 +18158,7 @@ MOD83_02236484: ; 0x02236484
mov r2, #8
bl FUN_02015D88
mov r0, #0x4e
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r4, r0, #0
mov r0, #8
mov r1, #0x4e
@@ -18173,7 +18173,7 @@ MOD83_02236484: ; 0x02236484
add r0, r4, #0
add r2, r6, #0
mov r3, #0
- bl FUN_0200ABB4
+ bl BufferString
add r0, r5, #0
bl MOD83_0223600C
ldr r0, [r5]
@@ -18194,7 +18194,7 @@ MOD83_02236484: ; 0x02236484
add r0, r6, #0
bl String_dtor
add r0, r4, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
add r0, r5, #0
bl MOD83_02236450
add sp, #0x18
@@ -18476,7 +18476,7 @@ _02236712:
mov r0, #1
pop {r3, r4, r5, pc}
_02236730:
- ldr r0, _0223675C ; =UNK_021C48F8
+ ldr r0, _0223675C ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _02236740
@@ -18497,7 +18497,7 @@ _02236750:
.align 2, 0
_02236754: .word 0x000005DC
_02236758: .word 0x00000474
-_0223675C: .word UNK_021C48F8
+_0223675C: .word gMain + 0x40
_02236760: .word gMain
thumb_func_end MOD83_022366D0
@@ -18668,7 +18668,7 @@ _022368BA:
bl MOD83_022357CC
ldr r0, _02236B4C ; =MOD83_0223650C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x10
mov r1, #0
bl FUN_0201E6E4
@@ -18792,7 +18792,7 @@ _022369BC:
str r0, [r5]
b _02236D90
_022369CE:
- ldr r0, _02236B54 ; =UNK_021C48F8
+ ldr r0, _02236B54 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _022369DE
@@ -18895,7 +18895,7 @@ _02236A88:
bl MOD83_022354F0
ldr r0, _02236B4C ; =MOD83_0223650C
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0x10
mov r1, #1
bl FUN_0201E6E4
@@ -18972,7 +18972,7 @@ _02236B44: .word 0x000004AC
_02236B48: .word 0x0000E880
_02236B4C: .word MOD83_0223650C
_02236B50: .word 0x0000E88C
-_02236B54: .word UNK_021C48F8
+_02236B54: .word gMain + 0x40
_02236B58: .word gMain
_02236B5C: .word 0x00000498
_02236B60: .word 0x0000E898
@@ -19222,7 +19222,7 @@ _02236D36:
bl FUN_020166B8
b _02236D90
_02236D54:
- ldr r0, _02236DC8 ; =UNK_021C48F8
+ ldr r0, _02236DC8 ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
bne _02236D64
@@ -19270,7 +19270,7 @@ _02236DB8: .word 0x0000E890
_02236DBC: .word 0x0000E898
_02236DC0: .word 0x0000061B
_02236DC4: .word 0x0000042C
-_02236DC8: .word UNK_021C48F8
+_02236DC8: .word gMain + 0x40
_02236DCC: .word gMain
thumb_func_end MOD83_02236804
@@ -22458,7 +22458,7 @@ _022384AE:
ldr r1, _022385F0 ; =0x00000182
cmp r0, r1
bne _022384FE
- ldr r0, _022385F4 ; =gUnk021C4918
+ ldr r0, _022385F4 ; =gMain + 0x60
ldrb r0, [r0, #6]
cmp r0, #5
bhi _022384DE
@@ -22598,7 +22598,7 @@ _0223853E:
pop {r3, r4, r5, r6, r7, pc}
nop
_022385F0: .word 0x00000182
-_022385F4: .word gUnk021C4918
+_022385F4: .word gMain + 0x60
_022385F8: .word gGameLanguage
thumb_func_end MigrateBoxMon
@@ -23101,7 +23101,7 @@ _02238976:
cmp r6, #0
bne _0223899C
ldr r0, [r4, #4]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
add r6, r0, #0
_0223899C:
ldr r1, [sp, #0x10]
@@ -23165,7 +23165,7 @@ _02238A12:
cmp r0, #0
bne _02238A24
add r0, r6, #0
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
_02238A24:
ldr r0, [sp, #0x10]
bl DestroyMsgData
@@ -23564,7 +23564,7 @@ _02238D1A:
_02238D22:
ldr r0, _02238D34 ; =MOD83_02238F00
mov r1, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add sp, #0x38
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -23789,7 +23789,7 @@ _02238EB0:
bl FUN_0201E08C
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
_02238EE8: .word MOD83_0223BE30
diff --git a/arm9/modules/84/asm/module_84_thumb1.s b/arm9/modules/84/asm/module_84_thumb1.s
index 0a2c3e1b..405c33ef 100644
--- a/arm9/modules/84/asm/module_84_thumb1.s
+++ b/arm9/modules/84/asm/module_84_thumb1.s
@@ -36,7 +36,7 @@ _021D74FC:
_021D7516:
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -142,7 +142,7 @@ _021D7516:
str r0, [r4, r1]
ldr r0, _021D769C ; =MOD84_021D7950
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
_021D7618:
ldr r0, [r5]
add r0, r0, #1
@@ -234,7 +234,7 @@ _021D76CA:
bl OS_RestoreInterrupts
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
ldr r0, [r4]
add r0, r0, #1
str r0, [r4]
diff --git a/arm9/modules/85/asm/module_85.s b/arm9/modules/85/asm/module_85.s
index e7e4e431..2fe33d18 100644
--- a/arm9/modules/85/asm/module_85.s
+++ b/arm9/modules/85/asm/module_85.s
@@ -10,7 +10,7 @@ MOD85_021D74E0: ; 0x021D74E0
add r5, r0, #0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_02015F1C
bl FUN_0201E6D8
bl FUN_0201E740
@@ -172,7 +172,7 @@ MOD85_021D7644: ; 0x021D7644
mov r0, #0
ldr r4, [r6, #4]
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r6, #0
add r1, r4, #0
bl MOD85_021D769C
@@ -346,7 +346,7 @@ MOD85_021D76FC: ; 0x021D76FC
bl G2x_SetBlendAlpha_
ldr r0, _021D77D8 ; =MOD85_021D80DC
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
_021D77CC: .word 0x0000043C
@@ -783,7 +783,7 @@ MOD85_021D7B28: ; 0x021D7B28
ldr r1, _021D7BA4 ; =0x00000408
str r0, [r5, r1]
mov r0, #0x4f
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #4]
ldr r0, _021D7BB0 ; =0x0000043C
add r1, r4, #0
@@ -822,7 +822,7 @@ MOD85_021D7BB8: ; 0x021D7BB8
ldr r0, [r5, r0]
bl DestroyMsgData
ldr r0, [r4, #4]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x18]
bl String_dtor
pop {r4, r5, r6, pc}
diff --git a/arm9/modules/86/asm/module_86.s b/arm9/modules/86/asm/module_86.s
index 28089fba..e3a93e0f 100644
--- a/arm9/modules/86/asm/module_86.s
+++ b/arm9/modules/86/asm/module_86.s
@@ -39,7 +39,7 @@ MOD86_021D74E0: ; 0x021D74E0
bl FUN_0200E3A0
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
mov r0, #0
add r1, r0, #0
bl FUN_02015F34
@@ -64,7 +64,7 @@ MOD86_021D74E0: ; 0x021D74E0
bl MOD86_021D78D4
ldr r0, _021D7588 ; =MOD86_021D76E0
add r1, r4, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
bl FUN_0201E788
mov r0, #1
pop {r3, r4, r5, pc}
@@ -184,7 +184,7 @@ _021D765C:
and r0, r1
cmp r0, #2
beq _021D7678
- ldr r0, _021D76AC ; =UNK_021C48F8
+ ldr r0, _021D76AC ; =gMain + 0x40
ldrh r0, [r0, #0x20]
cmp r0, #0
beq _021D76A0
@@ -214,7 +214,7 @@ _021D76A0:
pop {r3, r4, r5, r6, pc}
nop
_021D76A8: .word gMain
-_021D76AC: .word UNK_021C48F8
+_021D76AC: .word gMain + 0x40
thumb_func_end MOD86_021D758C
thumb_func_start MOD86_021D76B0
@@ -229,7 +229,7 @@ MOD86_021D76B0: ; 0x021D76B0
bl MOD86_021D7858
mov r0, #0
add r1, r0, #0
- bl FUN_02015F10
+ bl Main_SetVBlankIntrCB
add r0, r5, #0
bl OverlayManager_FreeData
add r0, r4, #0
@@ -484,7 +484,7 @@ MOD86_021D78D4: ; 0x021D78D4
bl NewMsgDataFromNarc
str r0, [r4, #0x34]
ldr r0, [r4]
- bl FUN_0200AA80
+ bl ScrStrBufs_new
str r0, [r4, #0x38]
mov r1, #0
add r0, sp, #8
@@ -540,7 +540,7 @@ MOD86_021D7964: ; 0x021D7964
add r0, #0x14
bl FUN_02019178
ldr r0, [r4, #0x38]
- bl FUN_0200AB18
+ bl ScrStrBufs_delete
ldr r0, [r4, #0x34]
bl DestroyMsgData
pop {r4, pc}
@@ -812,7 +812,7 @@ MOD86_021D7B80: ; 0x021D7B80
ldr r0, [r5, #0x38]
ldr r2, [r5, #0xc]
mov r1, #0
- bl FUN_0200ABC0
+ bl BufferPlayersName
ldr r0, [r5, #0x38]
add r1, r4, #0
add r2, r6, #0
diff --git a/arm9/src/game_init.c b/arm9/src/game_init.c
new file mode 100644
index 00000000..327c66c6
--- /dev/null
+++ b/arm9/src/game_init.c
@@ -0,0 +1,532 @@
+#include "global.h"
+#include "gx.h"
+#include "math.h"
+#include "main.h"
+#include "FS_rom.h"
+#include "PAD_pad.h"
+#include "heap.h"
+#include "MWC_string.h"
+#include "tp.h"
+#include "unk_0201B4E8.h"
+#include "game_init.h"
+#include "registers.h"
+
+#pragma thumb on
+
+extern void FUN_020166C8(const u32 (*)[2], int, int, int);
+extern void FUN_02022450(void);
+
+typedef volatile struct
+{
+ u8 sys_and_irq_stack[0x3F80];
+ u8 svc_stack[0x40];
+ u8 reserved[0x38];
+ u32 intr_check;
+ void * intr_vector;
+}
+OS_DTCM;
+
+#define DTCM (*(OS_DTCM *)HW_DTCM)
+
+static struct {
+ void * contents;
+ u32 name_hash;
+} UNK_021C4928[128];
+
+struct Main gMain;
+
+void Main_HBlankIntr(BOOL);
+void FUN_0201B5CC(void *);
+
+void FUN_02015EA0(void)
+{
+ DTCM.intr_check |= 1;
+ MI_WaitDma(3);
+ FUN_0201B5CC(gMain.unk1C);
+ gMain.unk30++;
+}
+
+void FUN_02015ED4(void)
+{
+ DTCM.intr_check |= 1;
+ MI_WaitDma(3);
+}
+
+void FUN_02015EF4(void)
+{
+ OS_DisableIrqMask(1);
+ OS_SetIrqFunction(1, FUN_02015ED4);
+ OS_EnableIrqMask(1);
+}
+
+void Main_SetVBlankIntrCB(void (*a0)(void *), void * a1)
+{
+ gMain.vBlankIntr = a0;
+ gMain.vBlankIntrArg = a1;
+}
+
+void FUN_02015F1C(void)
+{
+ Main_HBlankIntr(FALSE);
+ gMain.hBlankIntr = NULL;
+ gMain.hBlankIntrArg = NULL;
+}
+
+BOOL FUN_02015F34(void (*a0)(void *), void * a1)
+{
+ if (a0 == 0)
+ {
+ Main_HBlankIntr(FALSE);
+ gMain.hBlankIntr = NULL;
+ gMain.hBlankIntrArg = NULL;
+ return TRUE;
+ }
+ else if (gMain.hBlankIntr == NULL)
+ {
+ gMain.hBlankIntrArg = a1;
+ gMain.hBlankIntr = a0;
+ Main_HBlankIntr(TRUE);
+ return TRUE;
+ }
+ else
+ {
+ return FALSE;
+ }
+}
+
+void FUN_02015F6C(void)
+{
+ if (gMain.hBlankIntr != NULL)
+ gMain.hBlankIntr(gMain.hBlankIntrArg);
+}
+
+void Main_HBlankIntr(BOOL a0)
+{
+ (void)OS_DisableIrq();
+ if (!a0)
+ {
+ (void)OS_GetIrqMask();
+ OS_DisableIrqMask(2);
+ GX_HBlankIntr(FALSE);
+ }
+ else
+ {
+ (void)OS_GetIrqMask();
+ OS_SetIrqFunction(2, FUN_02015F6C);
+ OS_EnableIrqMask(2);
+ GX_HBlankIntr(TRUE);
+ }
+ (void)OS_EnableIrq();
+}
+
+const u32 UNK_020EDB10[][2] = {
+ { 0x0000D000, 0x00000000 },
+ { 0x00021000, 0x00000000 },
+ { 0x00001000, 0x00000000 },
+ { 0x0010D800, 0x00000000 }
+};
+
+void FUN_02015FC8(void)
+{
+ u32 data[8];
+ u8 digest[16];
+ OS_GetLowEntropyData(data);
+ MATH_CalcMD5(digest, data, 32);
+ u32 csum = 0, i;
+ for (i = 0; i < sizeof(digest); i++)
+ {
+ csum += digest[i];
+ }
+ csum = (csum << 24) >> 24;
+ while (csum & 3)
+ {
+ csum++;
+ }
+ FUN_020166C8(UNK_020EDB10, 4, 92, (int)csum);
+}
+
+void InitSystemForTheGame(void)
+{
+ OS_Init();
+ FX_Init();
+ reg_GX_POWCNT = (REGType16v)((reg_GX_POWCNT & ~(REG_GX_POWCNT_GE_MASK | REG_GX_POWCNT_RE_MASK | REG_GX_POWCNT_E2DG_MASK | REG_GX_POWCNT_E2DGB_MASK)) | (REG_GX_POWCNT_GE_MASK | REG_GX_POWCNT_RE_MASK | REG_GX_POWCNT_E2DG_MASK | REG_GX_POWCNT_E2DGB_MASK));
+ GX_Init();
+ OS_InitTick();
+ FUN_02015FC8();
+ gMain.unk18 = FUN_0201B580(0xa0, OS_AllocFromArenaLo(OS_ARENA_MAIN, FUN_0201B578(0xa0), 4));
+ gMain.unk1C = FUN_0201B580(0x10, OS_AllocFromArenaLo(OS_ARENA_MAIN, FUN_0201B578(0x10), 4));
+ gMain.unk20 = FUN_0201B580(0x20, OS_AllocFromArenaLo(OS_ARENA_MAIN, FUN_0201B578(0x20), 4));
+ gMain.unk24 = FUN_0201B580(0x04, OS_AllocFromArenaLo(OS_ARENA_MAIN, FUN_0201B578(0x04), 4));
+ GX_DispOff();
+ reg_GXS_DB_DISPCNT &= ~0x10000;
+ reg_GX_POWCNT |= REG_GX_POWCNT_DSEL_MASK;
+ OS_SetIrqFunction(1, FUN_02015EA0);
+ OS_EnableIrqMask(1);
+ OS_EnableIrqMask(0x40000);
+ (void)OS_EnableIrq();
+ GX_VBlankIntr(TRUE);
+ FS_Init(1);
+ FUN_02022450();
+ u32 size = FS_TryLoadTable(NULL, 0);
+ void * table = OS_AllocFromArenaLo(OS_ARENA_MAIN, size, 4);
+ GF_ASSERT(table != NULL);
+ FS_TryLoadTable(table, size);
+ gMain.vBlankIntr = NULL;
+ gMain.hBlankIntr = NULL;
+ gMain.unk10 = 0;
+ gMain.unk14 = 0;
+ gMain.unk2C = 0;
+ gMain.unk65 = 0;
+}
+
+void InitGraphicMemory(void)
+{
+ GX_SetBankForLCDC(0x1FF);
+ MIi_CpuClearFast(0, (void *)HW_LCDC_VRAM, HW_LCDC_VRAM_SIZE);
+ GX_DisableBankForLCDC();
+ MIi_CpuClearFast(0xC0, (void *)HW_OAM, HW_OAM_SIZE);
+ MIi_CpuClearFast(0xC0, (void *)HW_DB_OAM, HW_DB_OAM_SIZE);
+ MIi_CpuClearFast(0, (void *)HW_PLTT, HW_PLTT_SIZE);
+ MIi_CpuClearFast(0, (void *)HW_DB_PLTT, HW_DB_PLTT_SIZE);
+}
+
+void * FUN_020161A4(u32 heap_id, const char * path)
+{
+ void * ret;
+
+ FSFile file;
+ FS_InitFile(&file);
+ if (FS_OpenFile(&file, path))
+ {
+ u32 size = file.prop.file.bottom - file.prop.file.top;
+ ret = AllocFromHeap(heap_id, size);
+ if (ret != NULL)
+ {
+ if (size != FS_ReadFile(&file, ret, (s32)size))
+ {
+ FUN_02016A8C(heap_id, ret);
+ ret = NULL;
+ }
+ }
+ FS_CloseFile(&file);
+ }
+ else
+ ret = NULL;
+ return ret;
+}
+
+void FUN_020161F8(const char * path, void ** ptr)
+{
+ FSFile file;
+ FS_InitFile(&file);
+ if (FS_OpenFile(&file, path))
+ {
+ u32 size = file.prop.file.bottom - file.prop.file.top;
+ if (*ptr != NULL)
+ FS_ReadFile(&file, *ptr, (s32)size);
+ FS_CloseFile(&file);
+ }
+}
+
+u32 FUN_02016230(const s8 * str)
+{
+ u16 len = (u16)strlen(str);
+ u16 sp4;
+ if ((len % 4) != 0)
+ sp4 = (u16)((len / 4) + 1);
+ else
+ sp4 = (u16)(len / 4);
+ u32 r7 = 0;
+ s32 i, j;
+ for (i = 0; i < sp4; i++)
+ {
+ u32 r1 = 0;
+ for (j = 0; j < 4; j++)
+ {
+ int r5 = str[4 * i + j];
+ if (r5 == 0)
+ break;
+ r1 |= r5 << (8 * j);
+ }
+ r7 ^= r1;
+ }
+ return r7;
+}
+
+int FUN_020162A0(u32 a0)
+{
+ for (int i = 0; i < 128; i++)
+ {
+ if (UNK_021C4928[i].name_hash == a0 && UNK_021C4928[i].contents != NULL)
+ return i;
+ }
+ return -1;
+}
+
+int FUN_020162C8(void * a0, u32 a1)
+{
+ for (int i = 0; i < 128; i++)
+ {
+ if (UNK_021C4928[i].contents == NULL)
+ {
+ UNK_021C4928[i].contents = a0;
+ UNK_021C4928[i].name_hash = a1;
+ return i;
+ }
+ }
+ return -1;
+}
+
+void FUN_020162FC(void)
+{
+ for (int i = 127; i > -1; i--)
+ {
+ if (UNK_021C4928[i].contents != NULL)
+ {
+ FreeToHeap(UNK_021C4928[i].contents);
+ UNK_021C4928[i].contents = NULL;
+ UNK_021C4928[i].name_hash = 0;
+ }
+ }
+}
+
+void * FUN_02016324(const s8 * str, u32 heap_id)
+{
+ s8 sp0[32];
+ FSFile file;
+ void * ret;
+ int r5 = 0;
+
+ if (str[0] == '!')
+ {
+ strcpy(sp0, str + 1);
+ r5 = 1;
+ }
+ else
+ {
+ strcpy(sp0, str);
+ }
+ u32 r7 = FUN_02016230(sp0);
+ s32 r0 = FUN_020162A0(r7);
+ if (r0 >= 0 && r5 == 0)
+ {
+ ret = UNK_021C4928[r0].contents;
+ }
+ else
+ {
+ FS_InitFile(&file);
+ if (FS_OpenFile(&file, (const char *)sp0))
+ {
+ u32 size = file.prop.file.bottom - file.prop.file.top;
+ ret = AllocFromHeap(heap_id, size);
+ if (ret != NULL)
+ {
+ if (size != FS_ReadFile(&file, ret, (s32)size))
+ {
+ FreeToHeap(ret);
+ ret = NULL;
+ }
+ }
+ FS_CloseFile(&file);
+ if (r5 == 0)
+ FUN_020162C8(ret, r7);
+ }
+ else
+ ret = NULL;
+ }
+ return ret;
+}
+
+void FUN_020163BC(void)
+{
+ TPCalibrateParam tp;
+ gMain.unk34 = 0;
+ gMain.unk38 = 0;
+ gMain.unk3C = 0;
+ gMain.unk40 = 0;
+ gMain.unk44 = 0;
+ gMain.unk48 = 0;
+ gMain.unk4C = 0;
+ gMain.unk50 = 0;
+ gMain.unk54 = 8;
+ gMain.unk58 = 15;
+ gMain.unk5C = 0;
+ gMain.unk5E = 0;
+ gMain.unk60 = 0;
+ gMain.unk62 = 0;
+ gMain.unk64 = 0;
+ TP_Init();
+ if (TP_GetUserInfo(&tp) == TRUE)
+ TP_SetCalibrateParam(&tp);
+ else
+ {
+ tp.x0 = 686;
+ tp.y0 = 1420;
+ tp.xDotSize = 3621;
+ tp.yDotSize = 4616;
+ TP_SetCalibrateParam(&tp);
+ }
+}
+
+void FUN_02016438(u8 a0)
+{
+ gMain.unk66 = a0;
+}
+
+void FUN_02016444(u8 a0)
+{
+ gMain.unk67 |= a0;
+}
+
+void FUN_02016454(u8 a0)
+{
+ gMain.unk67 &= ~a0;
+}
+
+void FUN_02016464(void)
+{
+ TPData raw, calib;
+ if (PAD_DetectFold())
+ {
+ gMain.unk48 = 0;
+ gMain.unk44 = 0;
+ gMain.unk4C = 0;
+ gMain.unk60 = 0;
+ gMain.unk62 = 0;
+ return;
+ }
+ u32 r0 = PAD_Read();
+ gMain.unk40 = gMain.unk3C = (r0 ^ gMain.unk38) & r0;
+ if (r0 != 0 && gMain.unk38 == r0)
+ {
+ if (--gMain.unk50 == 0)
+ {
+ gMain.unk40 = r0;
+ gMain.unk50 = gMain.unk54;
+ }
+ }
+ else
+ {
+ gMain.unk50 = gMain.unk58;
+ }
+ gMain.unk38 = r0;
+ gMain.unk48 = gMain.unk3C;
+ gMain.unk44 = r0;
+ gMain.unk4C = gMain.unk40;
+ FUN_02016568();
+ if (gMain.unk64 == 0)
+ {
+ while (TP_RequestRawSampling(&raw))
+ ;
+ }
+ else
+ TP_GetLatestRawPointInAuto(&raw);
+ TP_GetCalibratedPoint(&calib, &raw);
+ if (calib.validity == 0)
+ {
+ gMain.unk5C = calib.x;
+ gMain.unk5E = calib.y;
+ }
+ else if (gMain.unk62)
+ {
+ switch (calib.validity)
+ {
+ case 1:
+ gMain.unk5E = calib.y;
+ break;
+ case 2:
+ gMain.unk5C = calib.x;
+ break;
+ case 3:
+ break;
+ }
+ }
+ else
+ calib.touch = 0;
+ gMain.unk60 = (u16)((gMain.unk62 ^ calib.touch) & calib.touch);
+ gMain.unk62 = calib.touch;
+}
+
+void FUN_02016568(void)
+{
+ switch (gMain.unk34)
+ {
+ case 0: // Normal
+ break;
+ case 1: // Start = X
+ if (gMain.unk48 & PAD_BUTTON_START)
+ gMain.unk48 |= PAD_BUTTON_X;
+ if (gMain.unk44 & PAD_BUTTON_START)
+ gMain.unk44 |= PAD_BUTTON_X;
+ if (gMain.unk4C & PAD_BUTTON_START)
+ gMain.unk4C |= PAD_BUTTON_X;
+ break;
+ case 2: // Swap X and Y; unused in the retail game
+ {
+ u32 r1 = 0;
+ if (gMain.unk48 & PAD_BUTTON_X)
+ {
+ r1 |= PAD_BUTTON_Y;
+ }
+ if (gMain.unk48 & PAD_BUTTON_Y)
+ {
+ r1 |= PAD_BUTTON_X;
+ }
+ gMain.unk48 &= 0xF3FF;
+ gMain.unk48 |= r1;
+ }
+ {
+ u32 r1 = 0;
+ if (gMain.unk44 & PAD_BUTTON_X)
+ {
+ r1 |= PAD_BUTTON_Y;
+ }
+ if (gMain.unk44 & PAD_BUTTON_Y)
+ {
+ r1 |= PAD_BUTTON_X;
+ }
+ gMain.unk44 &= 0xF3FF;
+ gMain.unk44 |= r1;
+ }
+ {
+ u32 r1 = 0;
+ if (gMain.unk4C & PAD_BUTTON_X)
+ {
+ r1 |= PAD_BUTTON_Y;
+ }
+ if (gMain.unk4C & PAD_BUTTON_Y)
+ {
+ r1 |= PAD_BUTTON_X;
+ }
+ gMain.unk4C &= 0xF3FF;
+ gMain.unk4C |= r1;
+ }
+ break;
+ case 3: // L = A
+ if (gMain.unk48 & PAD_BUTTON_L)
+ gMain.unk48 |= PAD_BUTTON_A;
+ if (gMain.unk44 & PAD_BUTTON_L)
+ gMain.unk44 |= PAD_BUTTON_A;
+ if (gMain.unk4C & PAD_BUTTON_L)
+ gMain.unk4C |= PAD_BUTTON_A;
+ gMain.unk48 &= 0xFCFF;
+ gMain.unk44 &= 0xFCFF;
+ gMain.unk4C &= 0xFCFF;
+ }
+}
+
+void FUN_0201669C(int x, int y)
+{
+ gMain.unk54 = x;
+ gMain.unk58 = y;
+}
+
+void FUN_020166A8(u8 a0)
+{
+ gMain.unk68 |= a0;
+}
+
+void FUN_020166B8(u8 a0)
+{
+ gMain.unk68 &= ~a0;
+}
diff --git a/arm9/src/main.c b/arm9/src/main.c
index 06673b65..e1c8fb38 100644
--- a/arm9/src/main.c
+++ b/arm9/src/main.c
@@ -5,6 +5,7 @@
#include "CTRDG_common.h"
#include "PAD_pad.h"
#include "main.h"
+#include "game_init.h"
#include "poke_overlay.h"
#include "player_data.h"
#include "sound.h"
@@ -22,12 +23,9 @@ extern void OverlayManager_delete(int);
extern BOOL FUN_02033678(void);
extern u32 FUN_020335B8(void);
extern BOOL FUN_0202FB80(void);
-extern void FUN_02016464(void);
-extern void FUN_02016438(s32);
extern void InitSystemForTheGame(void);
extern void InitGraphicMemory(void);
-extern void FUN_020163BC(void);
extern void FUN_02022294(void);
extern void FUN_0201259C(void);
extern void FUN_02002C14(void);
@@ -41,7 +39,7 @@ extern int FUN_020227FC(struct SaveBlock2 *);
extern void FUN_02089D90(int);
extern void FUN_0200A2AC(void);
extern void FUN_02015E30(void);
-extern void FUN_0201B5CC(int);
+extern void FUN_0201B5CC(void *);
extern void FUN_020125D4(void);
extern void FUN_02015E60(void);
extern void FUN_020222C4(void);
@@ -112,7 +110,7 @@ THUMB_FUNC void NitroMain(void)
FUN_02000EE8();
HandleDSLidAction();
FUN_02016464();
- if ((gMain.unk38 & SOFT_RESET_KEY) == SOFT_RESET_KEY && !gUnk021C4918.unk8) // soft reset?
+ if ((gMain.unk38 & SOFT_RESET_KEY) == SOFT_RESET_KEY && !gMain.unk68) // soft reset?
{
DoSoftReset(0); // soft reset?
}
@@ -136,8 +134,8 @@ THUMB_FUNC void NitroMain(void)
gMain.unk30 = 0;
FUN_0200A318();
FUN_0200E2D8();
- if (gMain.unk0)
- gMain.unk0(gMain.unk4);
+ if (gMain.vBlankIntr)
+ gMain.vBlankIntr(gMain.vBlankIntrArg);
DoSoundUpdateFrame();
FUN_0201B5CC(gMain.unk20);
}
@@ -187,8 +185,8 @@ THUMB_FUNC void FUN_02000E9C(void)
OS_WaitIrq(TRUE, OS_IE_V_BLANK);
gMain.unk2C++;
gMain.unk30 = 0;
- if (gMain.unk0 != NULL)
- gMain.unk0(gMain.unk4);
+ if (gMain.vBlankIntr != NULL)
+ gMain.vBlankIntr(gMain.vBlankIntrArg);
}
THUMB_FUNC void FUN_02000EC8(u32 parameter)
@@ -289,7 +287,7 @@ THUMB_FUNC void HandleDSLidAction(void)
PMBackLightSwitch top, bottom;
if (PAD_DetectFold())
{
- if (!gUnk021C4918.unk7)
+ if (!gMain.unk67)
{
FUN_0201CE04();
if (CTRDG_IsPulledOut() == TRUE)
@@ -301,7 +299,7 @@ THUMB_FUNC void HandleDSLidAction(void)
while (1)
{
PMWakeUpTrigger trigger = PM_TRIGGER_COVER_OPEN | PM_TRIGGER_CARD;
- if (gUnk021C4918.unk6 && !r1)
+ if (gMain.unk66 && !r1)
trigger |= PM_TRIGGER_CARTRIDGE;
PM_GoSleepMode(trigger, PM_PAD_LOGIC_OR, 0);
if (CARD_IsPulledOut())
diff --git a/arm9/src/poke_overlay.c b/arm9/src/poke_overlay.c
index 237cdc26..4dd98670 100644
--- a/arm9/src/poke_overlay.c
+++ b/arm9/src/poke_overlay.c
@@ -40,7 +40,7 @@ THUMB_FUNC s32 GetOverlayLoadDestination(FSOverlayID id)
end = (u8 *)HW_ITCM_END;
if (info.header.ram_address <= end && info.header.ram_address >= start)
return OVERLAY_LOAD_ITCM;
- start = (u8 *)SDK_AUTOLOAD_DTCM_START;
+ start = (u8 *)HW_DTCM;
end = start + HW_DTCM_SIZE;
if (info.header.ram_address <= end && info.header.ram_address >= start)
return OVERLAY_LOAD_DTCM;
diff --git a/arm9/src/script_buffers.c b/arm9/src/script_buffers.c
new file mode 100644
index 00000000..c29feed3
--- /dev/null
+++ b/arm9/src/script_buffers.c
@@ -0,0 +1,826 @@
+#include "global.h"
+#include "heap.h"
+#include "string16.h"
+#include "player_data.h"
+#include "msgdata.h"
+#include "pokemon.h"
+#include "pokemon_storage_system.h"
+#include "unk_02015CC0.h"
+#include "unk_020286F8.h"
+#include "filesystem.h"
+#include "unk_0201B8B8.h"
+#include "script_buffers.h"
+
+#pragma thumb on
+
+extern void * FUN_02024EC0(struct SaveBlock2 * sav2);
+extern u16 * FUN_02024EE8(void *);
+extern u32 GetCityNamesMsgdataIdByCountry(u32);
+extern void FUN_02013A58(u32 a0, struct String * a1);
+extern void FUN_02022048(struct String * dest, const struct String * src);
+extern void StrAddChar(struct String * str, u16 val);
+extern void * FUN_02006BB0(NarcId, s32, s32, struct UnkStruct_0200B870_sub **, u32);
+extern BOOL UncompressFromNarc(NarcId narcId, s32 memberNo, BOOL a2, u32 heap_id, BOOL a4);
+extern void FUN_02019658(int, u8 *, u16, u16, u16, u16, u16, u16, u16, u16);
+extern void FUN_020196F4(int, u8, u16, u16, u16, u16);
+
+const u16 UNK_020ECE6C[][2] = {
+ { 0x0140, 0x0008 },
+ { 0x0160, 0x0010 },
+ { 0x01A0, 0x0010 },
+ { 0x01E0, 0x0010 },
+ { 0x0220, 0x0010 },
+ { 0x0260, 0x0010 },
+ { 0x02A0, 0x0010 },
+};
+
+const u16 UNK_020ECE64[] = {
+ 382,
+ 384,
+ 383,
+ 0
+};
+
+struct ScrStrBufs * ScrStrBufs_new(u32 heap_id)
+{
+ return ScrStrBufs_new_custom(8, 32, heap_id);
+}
+
+struct ScrStrBufs * ScrStrBufs_new_custom(u32 nstr, u32 strlen, u32 heap_id)
+{
+ GF_ASSERT(nstr != 0);
+ GF_ASSERT(strlen != 0);
+ struct ScrStrBufs * r4 = AllocFromHeapAtEnd(heap_id, sizeof(struct ScrStrBufs));
+ if (r4 != NULL)
+ {
+ r4->count = nstr;
+ r4->heap_id = heap_id;
+ r4->tmpbuf = String_ctor(strlen, heap_id);
+ if (r4->tmpbuf != NULL)
+ {
+ r4->array = AllocFromHeapAtEnd(heap_id, nstr * sizeof(struct UnkStruct_0200AA80_sub));
+ if (r4->array != NULL)
+ {
+ int i;
+ for (i = 0; i < nstr; i++)
+ {
+ ScrStrBufs_InitSub(&r4->array[i]);
+ r4->array[i].msg = String_ctor(strlen, heap_id);
+ if (r4->array[i].msg == NULL)
+ break;
+ }
+ if (i == nstr)
+ return r4;
+ }
+ }
+ }
+ return NULL;
+}
+
+void ScrStrBufs_delete(struct ScrStrBufs * ptr)
+{
+ GF_ASSERT(ptr->count != 0);
+ if (ptr->array != NULL)
+ {
+ int i;
+ for (i = 0; i < ptr->count; i++)
+ {
+ if (ptr->array[i].msg == NULL)
+ break;
+ String_dtor(ptr->array[i].msg);
+ }
+ FreeToHeap(ptr->array);
+ }
+ if (ptr->tmpbuf != NULL)
+ String_dtor(ptr->tmpbuf);
+ ptr->count = 0;
+ FreeToHeap(ptr);
+}
+
+void ScrStrBufs_InitSub(struct UnkStruct_0200AA80_sub * sub)
+{
+#pragma unused(sub)
+}
+
+void SetStringAsPlaceholder(struct ScrStrBufs * mgr, u32 idx, struct String * str, struct UnkStruct_0200AA80_sub_sub * a3)
+{
+ GF_ASSERT(idx < mgr->count);
+ if (idx < mgr->count)
+ {
+ if (a3 != NULL)
+ {
+ mgr->array[idx].attrs = *a3;
+ }
+ StringCopy(mgr->array[idx].msg, str);
+ }
+}
+
+void BufferString(struct ScrStrBufs * mgr, u32 idx, struct String * str, u32 a3, u32 a4, u32 a5)
+{
+#pragma unused(a3,a4,a5)
+ SetStringAsPlaceholder(mgr, idx, str, NULL);
+}
+
+void BufferPlayersName(struct ScrStrBufs * mgr, u32 idx, struct PlayerData * data)
+{
+ u16 * name = PlayerProfile_GetNamePtr(data);
+ CopyU16ArrayToString(mgr->tmpbuf, name);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferRivalsName(struct ScrStrBufs * mgr, u32 idx, struct SaveBlock2 * sav2)
+{
+ u16 * name = FUN_02024EE8(FUN_02024EC0(sav2));
+ CopyU16ArrayToString(mgr->tmpbuf, name);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferFriendsName(struct ScrStrBufs * mgr, u32 idx, struct SaveBlock2 * sav2)
+{
+ struct PlayerData * data = Sav2_PlayerData_GetProfileAddr(sav2);
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 497, mgr->heap_id);
+ if (PlayerProfile_GetTrainerGender(data) == 0)
+ {
+ ReadMsgDataIntoString(msgData, 1, mgr->tmpbuf);
+ }
+ else
+ {
+ ReadMsgDataIntoString(msgData, 0, mgr->tmpbuf);
+ }
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+}
+
+void BufferBoxMonSpeciesName(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 362, mgr->heap_id);
+ ReadMsgDataIntoString(msgData, GetBoxMonData(mon, MON_DATA_SPECIES, NULL), mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+}
+
+void BufferBoxMonSpeciesNameWithArticle(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon)
+{
+ BufferSpeciesNameWithArticle(mgr, idx, GetBoxMonData(mon, MON_DATA_SPECIES, NULL));
+}
+
+void BufferSpeciesNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 species)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 363, mgr->heap_id);
+ ReadMsgDataIntoString(msgData, species, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+}
+
+void BufferBoxMonNickname(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon)
+{
+ GetBoxMonData(mon, MON_DATA_NICKNAME_3, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferBoxMonOTName(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon)
+{
+ GetBoxMonData(mon, MON_DATA_OT_NAME_2, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferIntegerAsString(struct ScrStrBufs * mgr, u32 idx, int num, u32 ndigits, int strConvMode, BOOL whichCharset)
+{
+ String16_FormatInteger(mgr->tmpbuf, num, ndigits, strConvMode, whichCharset);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferMoveName(struct ScrStrBufs * mgr, u32 idx, u32 move)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 588, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, move, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferRibbonNameOrDesc(struct ScrStrBufs * mgr, u32 idx, u32 ribbon)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 484, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, ribbon, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferAbilityName(struct ScrStrBufs * mgr, u32 idx, u32 ability)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 552, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, ability, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferNatureName(struct ScrStrBufs * mgr, u32 idx, u32 nature)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 190, mgr->heap_id);
+ ReadMsgDataIntoString(msgData, nature, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+}
+
+void BufferItemName(struct ScrStrBufs * mgr, u32 idx, u32 item)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 344, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, item, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferItemNameWithIndefArticle(struct ScrStrBufs * mgr, u32 idx, u32 item)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 346, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, item, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferItemNamePlural(struct ScrStrBufs * mgr, u32 idx, u32 item)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 347, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, item, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferPocketName(struct ScrStrBufs * mgr, u32 idx, u32 pocket)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 349, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, pocket, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferTypeName(struct ScrStrBufs * mgr, u32 idx, u32 type)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 565, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, type, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferStatName(struct ScrStrBufs * mgr, u32 idx, u32 stat)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 495, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, stat, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferStatusName(struct ScrStrBufs * mgr, u32 idx, u32 status)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 205, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, status, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferFlavorDislikeText(struct ScrStrBufs * mgr, u32 idx, u32 flavor)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 548, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, flavor, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferLandmarkName(struct ScrStrBufs * mgr, u32 idx, u32 landmark)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 382, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, landmark, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferPoketchAppName(struct ScrStrBufs * mgr, u32 idx, u32 app)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 406, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, app, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferTrainerClassName(struct ScrStrBufs * mgr, u32 idx, u32 trclass)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 560, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, trclass, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferTrainerClassNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 trclass)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 561, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, trclass, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferTrainerClassName2(struct ScrStrBufs * mgr, u32 idx, struct Trainer * tr)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 560, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, tr->unk1, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void FUN_0200B10C(struct ScrStrBufs * mgr, u32 idx, u32 msgno)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 559, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, msgno, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void FUN_0200B144(struct ScrStrBufs * mgr, u32 idx, void * unk_struct)
+{
+ CopyU16ArrayToString(mgr->tmpbuf, (u16 *)((char *)unk_struct + 20));
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferUndergroundItemName(struct ScrStrBufs * mgr, u32 idx, u32 item)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 569, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, item, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferUndergroundItemNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 item)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 570, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, item, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferUndergroundTrapName(struct ScrStrBufs * mgr, u32 idx, u32 trap)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 571, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, trap, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferUndergroundTrapNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 trap)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 572, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, trap, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferContestJudgeName(struct ScrStrBufs * mgr, u32 idx, u32 judge)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 194, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, judge, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferContestMessage(struct ScrStrBufs * mgr, u32 idx, u32 msg)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 191, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, msg, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferContestMessage2(struct ScrStrBufs * mgr, u32 idx, u32 msg)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 191, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, msg, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferInterviewQuestion(struct ScrStrBufs * mgr, u32 idx, u32 question)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 574, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, question, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferInterviewAnswer(struct ScrStrBufs * mgr, u32 idx, u32 answer)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 573, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, answer, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferDecorationName(struct ScrStrBufs * mgr, u32 idx, u32 decor)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 567, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, decor, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferDecorationNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 decor)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 568, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, decor, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferGenderSymbol(struct ScrStrBufs * mgr, u32 idx, u32 gender)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 199, mgr->heap_id);
+ switch (gender)
+ {
+ case 0:
+ ReadMsgDataIntoString(msgData, 68, mgr->tmpbuf);
+ break;
+ case 1:
+ ReadMsgDataIntoString(msgData, 69, mgr->tmpbuf);
+ break;
+ default:
+ StringSetEmpty(mgr->tmpbuf);
+ break;
+ }
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+}
+
+void BufferBoxName(struct ScrStrBufs * mgr, u32 idx, struct PCStorage * pc, int boxno)
+{
+ PCStorage_GetBoxName(pc, boxno, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferGymName(struct ScrStrBufs * mgr, u32 idx, u32 gym)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 331, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, gym, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferTimeOfDayName(struct ScrStrBufs * mgr, u32 idx, u32 time)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 550, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, time, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferCountryName(struct ScrStrBufs * mgr, u32 idx, u32 country)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 612, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, country, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferCityName(struct ScrStrBufs * mgr, u32 idx, u32 a2, u32 a3)
+{
+ u32 r2 = GetCityNamesMsgdataIdByCountry(a2);
+ if (r2 != 0 && a3 != 0)
+ {
+ struct MsgData *msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, (int)r2, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, a3, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+ }
+}
+
+void FUN_0200B518(struct ScrStrBufs * mgr, u32 idx, u32 a2)
+{
+ FUN_02013A58(a2, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+}
+
+void BufferSealName(struct ScrStrBufs * mgr, u32 idx, u32 seal)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 10, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, seal, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferSealNamePlural(struct ScrStrBufs * mgr, u32 idx, u32 seal)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 11, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, seal, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferLocationName(struct ScrStrBufs * mgr, u32 idx, u16 a2)
+{
+ u32 r6 = (u32)FUN_02015CC0(a2);
+ u32 r4 = (u32)FUN_02015CE0(a2);
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, UNK_020ECE64[r6], mgr->heap_id);
+ if (msgData != NULL)
+ {
+ if (r4 < MsgDataGetCount(msgData))
+ {
+ ReadMsgDataIntoString(msgData, r4, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ return;
+ }
+ // Location is invalid.
+ // Fallback: Mystery Zone
+ DestroyMsgData(msgData);
+ msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 382, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, 0, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+ }
+}
+
+void BufferPoffinName(struct ScrStrBufs * mgr, u32 idx, u32 poffin)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 414, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, poffin, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferFashionName(struct ScrStrBufs * mgr, u32 idx, u32 fashion)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 338, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, fashion, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferFashionNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 fashion)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 339, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, fashion, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void BufferContestBackgroundName(struct ScrStrBufs * mgr, u32 idx, u32 bg)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 340, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ ReadMsgDataIntoString(msgData, bg, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void FUN_0200B708(struct ScrStrBufs * mgr, struct SaveBlock2 * sav2, u32 r5, u32 idx, u32 sp28)
+{
+ void * r6 = FUN_0202881C(sav2);
+ u8 sp10 = FUN_020287F8(r6, r5);
+ u8 r7 = FUN_02028804(r6, r5);
+ struct String * r4 = String_ctor(64, 4);
+ CopyU16ArrayToString(r4, FUN_020287A8(r6, r5, sp28));
+ BufferString(mgr, idx, r4, sp10, 1, r7);
+ String_dtor(r4);
+}
+
+void BufferMonthNameAbbr(struct ScrStrBufs * mgr, u32 idx, u32 month)
+{
+ struct MsgData * msgData = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 364, mgr->heap_id);
+ if (msgData != NULL)
+ {
+ if (month < 1 || month > 12)
+ month = 1;
+ ReadMsgDataIntoString(msgData, month - 1, mgr->tmpbuf);
+ SetStringAsPlaceholder(mgr, idx, mgr->tmpbuf, NULL);
+ DestroyMsgData(msgData);
+ }
+}
+
+void FUN_0200B7A8(struct ScrStrBufs * mgr, u32 idx)
+{
+ StrUpperFirstChar(mgr->array[idx].msg);
+}
+
+void StringExpandPlaceholders(struct ScrStrBufs * mgr, struct String * dest, struct String * src)
+{
+ const u16 * cstr = String_c_str(src);
+ StringSetEmpty(dest);
+ while (*cstr != EOS)
+ {
+ if (*cstr == 0xFFFE)
+ {
+ if (MsgArray_ControlCodeIsStrVar(cstr))
+ {
+ u32 idx = MsgArray_ControlCodeGetField(cstr, 0);
+ GF_ASSERT(idx < mgr->count);
+ FUN_02022048(dest, mgr->array[idx].msg);
+ cstr = MsgArray_SkipControlCode(cstr);
+ }
+ else
+ {
+ const u16 * before = cstr;
+ cstr = MsgArray_SkipControlCode(cstr);
+ while (before < cstr)
+ StrAddChar(dest, *before++);
+ }
+ }
+ else
+ StrAddChar(dest, *cstr++);
+ }
+}
+
+void FUN_0200B84C(struct ScrStrBufs * mgr)
+{
+ for (int i = 0; i < mgr->count; i++)
+ StringSetEmpty(mgr->array[i].msg);
+}
+
+struct UnkStruct_0200B870 * FUN_0200B870(u32 r5, u32 r6, u32 sp4, u32 r4)
+{
+ struct UnkStruct_0200B870 * sp8 = AllocFromHeap(r4, sizeof(struct UnkStruct_0200B870));
+ if (sp8 != NULL)
+ {
+ sp8->unk_0 = FUN_02006BB0(NARC_GRAPHIC_FONT, 4, 1, &sp8->unk_4, r4);
+ int i;
+ u8 * ptr = sp8->unk_4->unk_14;
+ for (i = 0; i < sp8->unk_4->unk_10; i++)
+ {
+ switch (ptr[i])
+ {
+ case 0x00:
+ ptr[i] = (u8)((sp4 << 4) | sp4);
+ break;
+ case 0x01:
+ ptr[i] = (u8)((sp4 << 4) | r5);
+ break;
+ case 0x02:
+ ptr[i] = (u8)((sp4 << 4) | r6);
+ break;
+ case 0x10:
+ ptr[i] = (u8)((r5 << 4) | sp4);
+ break;
+ case 0x11:
+ ptr[i] = (u8)((r5 << 4) | r5);
+ break;
+ case 0x12:
+ ptr[i] = (u8)((r5 << 4) | r6);
+ break;
+ case 0x20:
+ ptr[i] = (u8)((r6 << 4) | sp4);
+ break;
+ case 0x21:
+ ptr[i] = (u8)((r6 << 4) | r5);
+ break;
+ case 0x22:
+ ptr[i] = (u8)((r6 << 4) | r6);
+ break;
+ }
+ }
+ sp8->unk_28 = sp4;
+ }
+ return sp8;
+}
+
+void FUN_0200B990(struct UnkStruct_0200B870 * a0)
+{
+ if (a0 != NULL)
+ {
+ if (a0->unk_0 != NULL)
+ FreeToHeap(a0->unk_0);
+ FreeToHeap(a0);
+ }
+}
+
+void FUN_0200B9A8(struct UnkStruct_0200B870 * a0, int a1, int a2, int a3, int a4)
+{
+ FUN_02019658(a2, a0->unk_4->unk_14 + UNK_020ECE6C[a1][0], 0, 0, UNK_020ECE6C[a1][1], 8, (u16)a3, (u16)a4, UNK_020ECE6C[a1][1], 8);
+}
+
+void FUN_0200B9EC(struct UnkStruct_0200B870 * string, u32 value, u32 n, enum PrintingMode mode, int sp30, int r5, int r7)
+{
+ ConvertUIntToDecimalString(string->data, value, mode, n);
+ for (int i = 0; string->data[i] != EOS; i++)
+ {
+ if (string->data[i] >= 0x00A2 && string->data[i] <= 0x00AB)
+ {
+ FUN_02019658(sp30, string->unk_4->unk_14 + (string->data[i] - 0x00A2) * 32, 0, 0, 8, 8, (u16)r5, (u16)r7, 8, 8);
+ }
+ else
+ {
+ FUN_020196F4(sp30, (u8)string->unk_28, (u16)r5, (u16)r7, 8, 8);
+ }
+ r5 += 8;
+ }
+}
diff --git a/arm9/src/unk_0200CA44.c b/arm9/src/unk_0200CA44.c
index 86dac59d..fc4656b2 100644
--- a/arm9/src/unk_0200CA44.c
+++ b/arm9/src/unk_0200CA44.c
@@ -2,7 +2,7 @@
#include "main.h"
#include "unk_0200CA44.h"
-extern void FUN_0201B60C(s32, void (*)(void *, void *), void *, void *);
+extern void FUN_0201B60C(void *, void (*)(void *, void *), void *, void *);
extern void FUN_0201B6A0(s32);
THUMB_FUNC void FUN_0200CA44(void (*r0)(void *, void *), void * r1, void * r2)
diff --git a/arm9/src/unk_020286F8.c b/arm9/src/unk_020286F8.c
new file mode 100644
index 00000000..f54d1e2e
--- /dev/null
+++ b/arm9/src/unk_020286F8.c
@@ -0,0 +1,150 @@
+#include "global.h"
+#include "save_block_2.h"
+#include "MI_memory.h"
+#include "string_util.h"
+#include "math_util.h"
+#include "string16.h"
+#include "unk_020286F8.h"
+
+#pragma thumb on
+
+struct UnkSaveStruct_020286F8 * UNK_021C59D0;
+
+u32 FUN_020286F8(void)
+{
+ return 6 * sizeof(struct UnkSaveStruct_020286F8);
+}
+
+void FUN_02028700(struct UnkSaveStruct_020286F8 * ptr, int a, int b)
+{
+ ptr[b] = ptr[a];
+}
+
+void FUN_02028724(struct UnkSaveStruct_020286F8 * ptr)
+{
+ MI_CpuClearFast(ptr, 6 * sizeof(struct UnkSaveStruct_020286F8));
+ for (int i = 0; i < 6; i++)
+ {
+ ptr[i].unk_0[0] = EOS;
+ ptr[i].unk_10[0] = EOS;
+ }
+ UNK_021C59D0 = ptr;
+}
+
+void FUN_02028754(struct UnkSaveStruct_020286F8 * ptr, u32 n)
+{
+ u32 i, j;
+ for (i = 0; i < 6; i++)
+ {
+ for (j = 0; j < n; j++)
+ {
+ ptr[i].unk_28 = PRandom(ptr[i].unk_28);
+ }
+ }
+}
+
+u32 FUN_0202877C(struct UnkSaveStruct_020286F8 * ptr, u32 i)
+{
+ return ptr[i].unk_24;
+}
+
+void FUN_02028788(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j)
+{
+ ptr[i].unk_24 = j;
+ ptr[i].unk_28 = PRandom(j);
+}
+
+u32 FUN_020287A4(struct UnkSaveStruct_020286F8 * ptr)
+{
+ return ptr[1].unk_28;
+}
+
+u16 * FUN_020287A8(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j)
+{
+ if (j == 0)
+ return ptr[i].unk_0;
+ else
+ return ptr[i].unk_10;
+}
+
+void FUN_020287C0(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j, struct String * k)
+{
+ if (j == 0)
+ CopyStringToU16Array(k, ptr[i].unk_0, 8);
+ else
+ CopyStringToU16Array(k, ptr[i].unk_10, 8);
+}
+
+void FUN_020287EC(struct UnkSaveStruct_020286F8 * ptr, u32 i, u8 j)
+{
+ ptr[i].unk_20 = j;
+}
+
+u8 FUN_020287F8(struct UnkSaveStruct_020286F8 * ptr, u32 i)
+{
+ return ptr[i].unk_20;
+}
+
+u8 FUN_02028804(struct UnkSaveStruct_020286F8 * ptr, u32 i)
+{
+ return ptr[i].unk_21;
+}
+
+
+void FUN_02028810(struct UnkSaveStruct_020286F8 * ptr, u32 i, u8 j)
+{
+ ptr[i].unk_21 = j;
+}
+
+struct UnkSaveStruct_020286F8 * FUN_0202881C(struct SaveBlock2 * sav2)
+{
+ return (struct UnkSaveStruct_020286F8 *)SavArray_get(sav2, 17);
+}
+
+BOOL FUN_0202888C(struct UnkSaveStruct_020286F8 * ptr);
+
+BOOL FUN_02028828(struct UnkSaveStruct_020286F8 * ptr, u32 i)
+{
+ return !FUN_0202888C(&ptr[i]);
+}
+
+BOOL FUN_020288AC(struct UnkSaveStruct_020286F8 * ptr, struct UnkSaveStruct_020286F8 * ptr2);
+
+BOOL FUN_02028840(struct UnkSaveStruct_020286F8 * ptr, int i)
+{
+ return FUN_020288AC(&ptr[1], &ptr[i]);
+}
+
+BOOL FUN_02028854(struct UnkSaveStruct_020286F8 * ptr, const u16 * str)
+{
+ if (str[0] == EOS)
+ return FALSE;
+ for (int i = 0; i < 6; i++)
+ {
+ if (!StringNotEqualN(str, ptr[i].unk_0, 8))
+ return TRUE;
+ }
+ return FALSE;
+}
+
+BOOL FUN_0202888C(struct UnkSaveStruct_020286F8 * ptr)
+{
+ if (ptr->unk_0[0] == EOS)
+ return TRUE;
+ if (ptr->unk_10[0] == EOS)
+ return TRUE;
+ return FALSE;
+}
+
+BOOL FUN_020288AC(struct UnkSaveStruct_020286F8 * ptr, struct UnkSaveStruct_020286F8 * ptr2)
+{
+ if (StringNotEqualN(ptr->unk_10, ptr2->unk_10, 8))
+ return FALSE;
+ if (StringNotEqualN(ptr->unk_0, ptr2->unk_0, 8))
+ return FALSE;
+ if (ptr->unk_20 != ptr2->unk_20)
+ return FALSE;
+ if (ptr->unk_21 != ptr2->unk_21)
+ return FALSE;
+ return ptr->unk_24 == ptr2->unk_24;
+}
diff --git a/include/MWC_string.h b/include/MWC_string.h
index 79639239..8e30b47e 100644
--- a/include/MWC_string.h
+++ b/include/MWC_string.h
@@ -5,5 +5,7 @@
void * memset(void *, int, u32);
void * memcpy(void *, const void *, u32);
+u32 strlen(const s8 *);
+void strcpy(s8 * dest, const s8 * src);
#endif //GUARD_MWC_STRING_H
diff --git a/include/game_init.h b/include/game_init.h
new file mode 100644
index 00000000..7a6e34fb
--- /dev/null
+++ b/include/game_init.h
@@ -0,0 +1,34 @@
+#ifndef POKEDIAMOND_GAME_INIT_H
+#define POKEDIAMOND_GAME_INIT_H
+
+#include "main.h"
+
+void FUN_02015EA0(void);
+void FUN_02015ED4(void);
+void FUN_02015EF4(void);
+void Main_SetVBlankIntrCB(void (*a0)(void *), void * a1);
+void FUN_02015F1C(void);
+BOOL FUN_02015F34(void (*a0)(void *), void * a1);
+void FUN_02015F6C(void);
+void Main_HBlankIntr(BOOL a0);
+void FUN_02015FC8(void);
+void InitSystemForTheGame(void);
+void InitGraphicMemory(void);
+void * FUN_020161A4(u32 heap_id, const char * path);
+void FUN_020161F8(const char * path, void ** ptr);
+u32 FUN_02016230(const s8 * str);
+int FUN_020162A0(u32 a0);
+int FUN_020162C8(void * a0, u32 a1);
+void FUN_020162FC(void);
+void * FUN_02016324(const s8 * str, u32 heap_id);
+void FUN_020163BC(void);
+void FUN_02016438(u8 a0);
+void FUN_02016444(u8 a0);
+void FUN_02016454(u8 a0);
+void FUN_02016464(void);
+void FUN_02016568(void);
+void FUN_0201669C(int x, int y);
+void FUN_020166A8(u8 a0);
+void FUN_020166B8(u8 a0);
+
+#endif //POKEDIAMOND_GAME_INIT_H
diff --git a/include/main.h b/include/main.h
index fa31953c..499861a8 100644
--- a/include/main.h
+++ b/include/main.h
@@ -54,29 +54,6 @@ struct Unk21C4828
u32 unk8;
};
-struct Unk21C48B8
-{
- void (*unk0)(s32);
- s32 unk4;
- s32 unk8;
- s32 unkC;
- s32 unk10;
- s32 unk14;
- s32 unk18;
- s32 unk1C;
- s32 unk20;
- s32 unk24;
- s32 unk28;
- u32 unk2C;
- s32 unk30;
- s32 unk34;
- s32 unk38;
- u8 filler3C[0xC];
- s32 unk48;
- u8 filler4C[0x20];
- s32 unk6C;
-};
-
struct UnkStruct_021C4918 {
s32 unk0;
u8 unk4;
@@ -87,14 +64,52 @@ struct UnkStruct_021C4918 {
u8 padding[3];
};
-extern struct UnkStruct_021C4918 gUnk021C4918;
+struct Main
+{
+ void (*vBlankIntr)(void *);
+ void * vBlankIntrArg;
+ void (*hBlankIntr)(void *);
+ void * hBlankIntrArg;
+ s32 unk10;
+ s32 unk14;
+ void * unk18;
+ void * unk1C;
+ void * unk20;
+ void * unk24;
+ s32 unk28;
+ u32 unk2C;
+ s32 unk30;
+ u32 unk34;
+ u32 unk38;
+ u32 unk3C;
+ u32 unk40;
+ u32 unk44;
+ u32 unk48;
+ u32 unk4C;
+ s32 unk50;
+ s32 unk54;
+ s32 unk58;
+ u16 unk5C;
+ u16 unk5E;
+ u16 unk60;
+ u16 unk62;
+ u8 unk64;
+ u8 unk65;
+ u8 unk66;
+ u8 unk67;
+ u8 unk68;
+ u8 padding_69[3];
+ s32 unk6C;
+};
+
+//extern struct UnkStruct_021C4918 gMain + 0x60;
extern struct Unk2106FA0 gBacklightTop;
extern struct Unk2106FA0 gBacklightTop_2; // same as the first one, it's referenced twice in the constant pool...
void NitroMain(void);
-extern struct Unk21C48B8 gMain;
+extern struct Main gMain;
void FUN_02000DF4(void);
void Main_RunOverlayManager(void);
diff --git a/include/player_data.h b/include/player_data.h
index b4c7ce41..3c78de8f 100644
--- a/include/player_data.h
+++ b/include/player_data.h
@@ -38,5 +38,7 @@ u32 PlayerProfile_GetTrainerID(struct PlayerData *);
u32 PlayerProfile_GetTrainerGender(struct PlayerData *);
u32 Sav2_PlayerData_sizeof(void);
void Sav2_PlayerData_init(struct PlayerDataSav *);
+u16 * PlayerProfile_GetNamePtr(struct PlayerData * data);
+struct PlayerData * Sav2_PlayerData_GetProfileAddr(struct SaveBlock2 * sav2);
#endif //POKEDIAMOND_PLAYER_DATA_H
diff --git a/include/save_block_2.h b/include/save_block_2.h
index f54e556e..a4514c96 100644
--- a/include/save_block_2.h
+++ b/include/save_block_2.h
@@ -78,7 +78,6 @@ struct SaveBlock2
/* 0x2047C */ struct UnkSavSub_2047C unk_2047C;
/* 0x204A0 */ u32 unk_204A0;
/* 0x204A4 */ u32 unk_204A4;
- // TODO: finish this struct
}; // size: 0x204A8
typedef u32 (*SAVSIZEFN)(void);
diff --git a/include/script_buffers.h b/include/script_buffers.h
new file mode 100644
index 00000000..76d4eb71
--- /dev/null
+++ b/include/script_buffers.h
@@ -0,0 +1,113 @@
+#ifndef POKEDIAMOND_SCRIPT_BUFFERS_H
+#define POKEDIAMOND_SCRIPT_BUFFERS_H
+
+struct UnkStruct_0200AA80_sub_sub
+{
+ u8 data[4];
+};
+
+struct UnkStruct_0200AA80_sub
+{
+ struct UnkStruct_0200AA80_sub_sub attrs;
+ struct String * msg;
+};
+
+struct ScrStrBufs
+{
+ u32 count;
+ u32 heap_id;
+ struct UnkStruct_0200AA80_sub * array;
+ struct String * tmpbuf;
+};
+
+struct Trainer
+{
+ u8 unk0;
+ u8 unk1;
+};
+
+struct UnkStruct_0200B870_sub
+{
+ u8 filler_00[16];
+ u32 unk_10;
+ u8 * unk_14;
+};
+
+struct UnkStruct_0200B870
+{
+ void * unk_0;
+ struct UnkStruct_0200B870_sub * unk_4;
+ u16 data[16];
+ u32 unk_28;
+};
+
+struct ScrStrBufs * ScrStrBufs_new(u32 heap_id);
+struct ScrStrBufs * ScrStrBufs_new_custom(u32 nstr, u32 strlen, u32 heap_id);
+void ScrStrBufs_delete(struct ScrStrBufs * ptr);
+void ScrStrBufs_InitSub(struct UnkStruct_0200AA80_sub * sub);
+void SetStringAsPlaceholder(struct ScrStrBufs * mgr, u32 idx, struct String * str, struct UnkStruct_0200AA80_sub_sub * a3);
+void BufferString(struct ScrStrBufs * mgr, u32 idx, struct String * str, u32 a3, u32 a4, u32 a5);
+void BufferPlayersName(struct ScrStrBufs * mgr, u32 idx, struct PlayerData * data);
+void BufferRivalsName(struct ScrStrBufs * mgr, u32 idx, struct SaveBlock2 * sav2);
+void BufferFriendsName(struct ScrStrBufs * mgr, u32 idx, struct SaveBlock2 * sav2);
+void BufferBoxMonSpeciesName(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon);
+void BufferBoxMonSpeciesNameWithArticle(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon);
+void BufferSpeciesNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 species);
+void BufferBoxMonNickname(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon);
+void BufferBoxMonOTName(struct ScrStrBufs * mgr, u32 idx, struct BoxPokemon * mon);
+void BufferIntegerAsString(struct ScrStrBufs * mgr, u32 idx, int num, u32 ndigits, int strConvMode, BOOL whichCharset);
+void BufferMoveName(struct ScrStrBufs * mgr, u32 idx, u32 move);
+void BufferRibbonNameOrDesc(struct ScrStrBufs * mgr, u32 idx, u32 ribbon);
+void BufferAbilityName(struct ScrStrBufs * mgr, u32 idx, u32 ability);
+void BufferNatureName(struct ScrStrBufs * mgr, u32 idx, u32 nature);
+void BufferItemName(struct ScrStrBufs * mgr, u32 idx, u32 item);
+void BufferItemNameWithIndefArticle(struct ScrStrBufs * mgr, u32 idx, u32 item);
+void BufferItemNamePlural(struct ScrStrBufs * mgr, u32 idx, u32 item);
+void BufferPocketName(struct ScrStrBufs * mgr, u32 idx, u32 pocket);
+void BufferTypeName(struct ScrStrBufs * mgr, u32 idx, u32 type);
+void BufferStatName(struct ScrStrBufs * mgr, u32 idx, u32 stat);
+void BufferStatusName(struct ScrStrBufs * mgr, u32 idx, u32 status);
+void BufferFlavorDislikeText(struct ScrStrBufs * mgr, u32 idx, u32 flavor);
+void BufferLandmarkName(struct ScrStrBufs * mgr, u32 idx, u32 landmark);
+void BufferPoketchAppName(struct ScrStrBufs * mgr, u32 idx, u32 app);
+void BufferTrainerClassName(struct ScrStrBufs * mgr, u32 idx, u32 trclass);
+void BufferTrainerClassNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 trclass);
+void BufferTrainerClassName2(struct ScrStrBufs * mgr, u32 idx, struct Trainer * tr);
+void FUN_0200B10C(struct ScrStrBufs * mgr, u32 idx, u32 msgno);
+void FUN_0200B144(struct ScrStrBufs * mgr, u32 idx, void * unk_struct);
+void BufferUndergroundItemName(struct ScrStrBufs * mgr, u32 idx, u32 item);
+void BufferUndergroundItemNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 item);
+void BufferUndergroundTrapName(struct ScrStrBufs * mgr, u32 idx, u32 trap);
+void BufferUndergroundTrapNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 trap);
+void BufferContestJudgeName(struct ScrStrBufs * mgr, u32 idx, u32 judge);
+void BufferContestMessage(struct ScrStrBufs * mgr, u32 idx, u32 msg);
+void BufferContestMessage2(struct ScrStrBufs * mgr, u32 idx, u32 msg);
+void BufferInterviewQuestion(struct ScrStrBufs * mgr, u32 idx, u32 question);
+void BufferInterviewAnswer(struct ScrStrBufs * mgr, u32 idx, u32 answer);
+void BufferDecorationName(struct ScrStrBufs * mgr, u32 idx, u32 decor);
+void BufferDecorationNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 decor);
+void BufferGenderSymbol(struct ScrStrBufs * mgr, u32 idx, u32 gender);
+void BufferBoxName(struct ScrStrBufs * mgr, u32 idx, struct PCStorage * pc, int boxno);
+void BufferGymName(struct ScrStrBufs * mgr, u32 idx, u32 gym);
+void BufferTimeOfDayName(struct ScrStrBufs * mgr, u32 idx, u32 time);
+void BufferCountryName(struct ScrStrBufs * mgr, u32 idx, u32 country);
+void BufferCityName(struct ScrStrBufs * mgr, u32 idx, u32 a2, u32 a3);
+void FUN_0200B518(struct ScrStrBufs * mgr, u32 idx, u32 a2);
+void BufferSealName(struct ScrStrBufs * mgr, u32 idx, u32 seal);
+void BufferSealNamePlural(struct ScrStrBufs * mgr, u32 idx, u32 seal);
+void BufferLocationName(struct ScrStrBufs * mgr, u32 idx, u16 a2);
+void BufferPoffinName(struct ScrStrBufs * mgr, u32 idx, u32 poffin);
+void BufferFashionName(struct ScrStrBufs * mgr, u32 idx, u32 fashion);
+void BufferFashionNameWithArticle(struct ScrStrBufs * mgr, u32 idx, u32 fashion);
+void BufferContestBackgroundName(struct ScrStrBufs * mgr, u32 idx, u32 bg);
+void FUN_0200B708(struct ScrStrBufs * mgr, struct SaveBlock2 * sav2, u32 r5, u32 idx, u32 sp28);
+void BufferMonthNameAbbr(struct ScrStrBufs * mgr, u32 idx, u32 month);
+void FUN_0200B7A8(struct ScrStrBufs * mgr, u32 idx);
+void StringExpandPlaceholders(struct ScrStrBufs * mgr, struct String * dest, struct String * src);
+void FUN_0200B84C(struct ScrStrBufs * mgr);
+struct UnkStruct_0200B870 * FUN_0200B870(u32 r5, u32 r6, u32 sp4, u32 r4);
+void FUN_0200B990(struct UnkStruct_0200B870 * a0);
+void FUN_0200B9A8(struct UnkStruct_0200B870 * a0, int a1, int a2, int a3, int a4);
+void FUN_0200B9EC(struct UnkStruct_0200B870 * string, u32 value, u32 n, enum PrintingMode mode, int sp30, int r5, int r7);
+
+#endif //POKEDIAMOND_SCRIPT_BUFFERS_H
diff --git a/include/unk_0201B4E8.h b/include/unk_0201B4E8.h
new file mode 100644
index 00000000..d29b198c
--- /dev/null
+++ b/include/unk_0201B4E8.h
@@ -0,0 +1,7 @@
+#ifndef POKEDIAMOND_UNK_0201B4E8_H
+#define POKEDIAMOND_UNK_0201B4E8_H
+
+void * FUN_0201B580(u32, void *);
+u32 FUN_0201B578(u32);
+
+#endif //POKEDIAMOND_UNK_0201B4E8_H
diff --git a/include/unk_020286F8.h b/include/unk_020286F8.h
new file mode 100644
index 00000000..3d81753a
--- /dev/null
+++ b/include/unk_020286F8.h
@@ -0,0 +1,35 @@
+#ifndef POKEDIAMOND_UNK_020286F8_H
+#define POKEDIAMOND_UNK_020286F8_H
+
+struct UnkSaveStruct_020286F8
+{
+ u16 unk_0[8];
+ u16 unk_10[8];
+ u8 unk_20;
+ u8 unk_21;
+ u8 filler_22[2];
+ u32 unk_24;
+ u32 unk_28;
+};
+
+u32 FUN_020286F8(void);
+void FUN_02028700(struct UnkSaveStruct_020286F8 * ptr, int a, int b);
+void FUN_02028724(struct UnkSaveStruct_020286F8 * ptr);
+void FUN_02028754(struct UnkSaveStruct_020286F8 * ptr, u32 n);
+u32 FUN_0202877C(struct UnkSaveStruct_020286F8 * ptr, u32 i);
+void FUN_02028788(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j);
+u32 FUN_020287A4(struct UnkSaveStruct_020286F8 * ptr);
+u16 * FUN_020287A8(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j);
+void FUN_020287C0(struct UnkSaveStruct_020286F8 * ptr, u32 i, u32 j, struct String * k);
+void FUN_020287EC(struct UnkSaveStruct_020286F8 * ptr, u32 i, u8 j);
+u8 FUN_020287F8(struct UnkSaveStruct_020286F8 * ptr, u32 i);
+u8 FUN_02028804(struct UnkSaveStruct_020286F8 * ptr, u32 i);
+void FUN_02028810(struct UnkSaveStruct_020286F8 * ptr, u32 i, u8 j);
+struct UnkSaveStruct_020286F8 * FUN_0202881C(struct SaveBlock2 * sav2);
+BOOL FUN_02028828(struct UnkSaveStruct_020286F8 * ptr, u32 i);
+BOOL FUN_02028840(struct UnkSaveStruct_020286F8 * ptr, int i);
+BOOL FUN_02028854(struct UnkSaveStruct_020286F8 * ptr, const u16 * str);
+BOOL FUN_0202888C(struct UnkSaveStruct_020286F8 * ptr);
+BOOL FUN_020288AC(struct UnkSaveStruct_020286F8 * ptr, struct UnkSaveStruct_020286F8 * ptr2);
+
+#endif //POKEDIAMOND_UNK_020286F8_H