summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm9/arm9.lsf2
-rw-r--r--arm9/asm/scrcmd_asm.s2
-rw-r--r--arm9/asm/unk_020010A8.s1514
-rw-r--r--arm9/asm/unk_02001B80.s48
-rw-r--r--arm9/asm/unk_020023C0.s14
-rw-r--r--arm9/asm/unk_02002C14.s4
-rw-r--r--arm9/asm/unk_02006864.s2
-rw-r--r--arm9/asm/unk_0200CABC.s38
-rw-r--r--arm9/asm/unk_02011744.s36
-rw-r--r--arm9/asm/unk_02012CC8.s16
-rw-r--r--arm9/asm/unk_02016B94.s54
-rw-r--r--arm9/asm/unk_02033F50.s2
-rw-r--r--arm9/asm/unk_02034188.s2
-rw-r--r--arm9/asm/unk_02035068.s22
-rw-r--r--arm9/asm/unk_02048120.s4
-rw-r--r--arm9/asm/unk_020484A8.s2
-rw-r--r--arm9/asm/unk_02050E48.s32
-rw-r--r--arm9/asm/unk_02053750.s12
-rw-r--r--arm9/asm/unk_02057380.s8
-rw-r--r--arm9/asm/unk_0205AD98.s2
-rw-r--r--arm9/asm/unk_0205C598.s2
-rw-r--r--arm9/asm/unk_020625EC.s38
-rw-r--r--arm9/asm/unk_020643C0.s8
-rw-r--r--arm9/asm/unk_020653EC.s50
-rw-r--r--arm9/asm/unk_0206C700.s6
-rw-r--r--arm9/asm/unk_0206F3FC.s16
-rw-r--r--arm9/asm/unk_02072548.s58
-rw-r--r--arm9/asm/unk_02073DA8.s38
-rw-r--r--arm9/asm/unk_0207550C.s14
-rw-r--r--arm9/asm/unk_020772F0.s50
-rw-r--r--arm9/asm/unk_02079C70.s2
-rw-r--r--arm9/asm/unk_0207D5BC.s96
-rw-r--r--arm9/asm/unk_02086414.s14
-rw-r--r--arm9/asm/unk_02089498.s4
-rw-r--r--arm9/asm/unk_02089960.s4
-rw-r--r--arm9/asm/unk_02089D90.s2
-rw-r--r--arm9/asm/unk_02089F24.s4
-rw-r--r--arm9/asm/unk_0208A338.s28
-rw-r--r--arm9/global.inc75
-rw-r--r--arm9/modules/04/asm/thumb_04.s6
-rw-r--r--arm9/modules/05/asm/mod05_021DB44C.s6
-rw-r--r--arm9/modules/05/asm/mod05_021DBA00.s2
-rw-r--r--arm9/modules/05/asm/mod05_021DBABC.s2
-rw-r--r--arm9/modules/05/asm/mod05_021DC0B8.s8
-rw-r--r--arm9/modules/05/asm/mod05_021E1374.s2
-rw-r--r--arm9/modules/05/asm/mod05_021E1AD8.s34
-rw-r--r--arm9/modules/05/asm/mod05_021E2B80.s2
-rw-r--r--arm9/modules/05/asm/mod05_021E2E88.s20
-rw-r--r--arm9/modules/05/asm/mod05_021E3444.s2
-rw-r--r--arm9/modules/05/asm/mod05_021E5FD8.s4
-rw-r--r--arm9/modules/05/asm/mod05_021E8310.s10
-rw-r--r--arm9/modules/05/asm/module_05.s78
-rw-r--r--arm9/modules/05/src/mod05_021E72FC.c2
-rw-r--r--arm9/modules/06/asm/module_06.s208
-rw-r--r--arm9/modules/07/asm/module_07.s14
-rw-r--r--arm9/modules/09/asm/module_09.s234
-rw-r--r--arm9/modules/11/asm/module_11_thumb1.s6
-rw-r--r--arm9/modules/11/asm/module_11_thumb2.s28
-rw-r--r--arm9/modules/12/asm/module_12.s26
-rw-r--r--arm9/modules/14/asm/module_14.s78
-rw-r--r--arm9/modules/15/asm/module_15.s44
-rw-r--r--arm9/modules/16/asm/module_16.s58
-rw-r--r--arm9/modules/17/asm/module_17.s32
-rw-r--r--arm9/modules/18/asm/module_18.s338
-rw-r--r--arm9/modules/20/asm/module_20.s18
-rw-r--r--arm9/modules/21/src/mod21_02254854.c2
-rw-r--r--arm9/modules/24/asm/module_24.s8
-rw-r--r--arm9/modules/27/asm/module_27.s8
-rw-r--r--arm9/modules/36/asm/module_36.s6
-rw-r--r--arm9/modules/38/asm/module_38.s4
-rw-r--r--arm9/modules/43/asm/module_43.s2
-rw-r--r--arm9/modules/47/asm/module_47.s10
-rw-r--r--arm9/modules/49/asm/module_49.s2
-rw-r--r--arm9/modules/51/asm/module_51.s12
-rw-r--r--arm9/modules/52/include/module_52.h24
-rw-r--r--arm9/modules/53/asm/module_53.s14
-rw-r--r--arm9/modules/54/asm/module_54.s12
-rw-r--r--arm9/modules/55/asm/module_55.s46
-rw-r--r--arm9/modules/56/asm/module_56.s114
-rw-r--r--arm9/modules/57/asm/module_57.s26
-rw-r--r--arm9/modules/58/asm/module_58.s16
-rw-r--r--arm9/modules/59/asm/mod59_021D74E0_asm.s18
-rw-r--r--arm9/modules/59/asm/mod59_021D9868.s2
-rw-r--r--arm9/modules/60/asm/module_60.s10
-rw-r--r--arm9/modules/61/asm/module_61.s6
-rw-r--r--arm9/modules/62/asm/module_62.s34
-rw-r--r--arm9/modules/63/asm/mod63_021D74E0.s2
-rw-r--r--arm9/modules/64/asm/module_64.s16
-rw-r--r--arm9/modules/65/asm/module_65.s58
-rw-r--r--arm9/modules/66/asm/module_66.s22
-rw-r--r--arm9/modules/67/asm/module_67.s6
-rw-r--r--arm9/modules/68/asm/module_68.s28
-rw-r--r--arm9/modules/69/asm/module_69.s4
-rw-r--r--arm9/modules/70/asm/module_70.s8
-rw-r--r--arm9/modules/71/asm/module_71.s68
-rw-r--r--arm9/modules/73/asm/module_73.s22
-rw-r--r--arm9/modules/74/asm/module_74.s10
-rw-r--r--arm9/modules/75/asm/module_75.s162
-rw-r--r--arm9/modules/76/asm/module_76.s46
-rw-r--r--arm9/modules/77/asm/module_77.s40
-rw-r--r--arm9/modules/80/asm/module_80.s242
-rw-r--r--arm9/modules/81/asm/module_81.s8
-rw-r--r--arm9/modules/82/asm/module_82.s18
-rw-r--r--arm9/modules/83/asm/module_83.s92
-rw-r--r--arm9/modules/84/asm/module_84_thumb2.s18
-rw-r--r--arm9/modules/85/asm/module_85.s4
-rw-r--r--arm9/modules/86/asm/module_86.s4
-rw-r--r--arm9/src/error_message_reset.c21
-rw-r--r--arm9/src/game_init.c50
-rw-r--r--arm9/src/heap.c2
-rw-r--r--arm9/src/itemtool.c2
-rw-r--r--arm9/src/list_menu.c572
-rw-r--r--arm9/src/main.c71
-rw-r--r--arm9/src/scrcmd.c42
-rw-r--r--arm9/src/script_buffers.c20
-rw-r--r--arm9/src/text.c48
-rw-r--r--arm9/src/text_02054590.c34
-rw-r--r--arm9/src/unk_0200CA44.c10
-rw-r--r--arm9/src/unk_0202E29C.c334
-rw-r--r--arm9/src/unk_0206015C.c2
-rw-r--r--include/GX_layers.h18
-rw-r--r--include/error_message_reset.h4
-rw-r--r--include/font.h6
-rw-r--r--include/heap.h26
-rw-r--r--include/list_menu.h78
-rw-r--r--include/list_menu_cursor.h17
-rw-r--r--include/main.h22
-rw-r--r--include/script_buffers.h5
-rw-r--r--include/text.h79
-rw-r--r--include/text_02054590.h11
-rw-r--r--include/timer3.h12
-rw-r--r--include/unk_0200CA44.h10
-rw-r--r--include/unk_02015E30.h6
-rw-r--r--include/unk_02024E64.h20
-rw-r--r--include/unk_0202D858.h6
-rw-r--r--include/unk_0202F150.h180
-rw-r--r--include/unk_02031480.h40
-rw-r--r--include/unk_0205FA2C.h42
-rw-r--r--include/unk_0206015C.h4
-rw-r--r--include/window.h26
140 files changed, 2921 insertions, 3740 deletions
diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf
index 898904d3..24908839 100644
--- a/arm9/arm9.lsf
+++ b/arm9/arm9.lsf
@@ -6,7 +6,7 @@ Static arm9
{
Address 0x02000000
Object main.o
- Object unk_020010A8.o
+ Object list_menu.o
Object unk_02001B80.o
Object string_util.o
Object unk_020023C0.o
diff --git a/arm9/asm/scrcmd_asm.s b/arm9/asm/scrcmd_asm.s
index c1e91c9f..71187dd6 100644
--- a/arm9/asm/scrcmd_asm.s
+++ b/arm9/asm/scrcmd_asm.s
@@ -3490,7 +3490,7 @@ FUN_0203CBE8: ; 0x0203CBE8
mov r1, #0x1
bl FUN_02039438
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0x1
bl FUN_02039438
diff --git a/arm9/asm/unk_020010A8.s b/arm9/asm/unk_020010A8.s
deleted file mode 100644
index 440ba8e2..00000000
--- a/arm9/asm/unk_020010A8.s
+++ /dev/null
@@ -1,1514 +0,0 @@
- .include "asm/macros.inc"
- .include "global.inc"
-
- .extern gMain
-
- .text
-
- thumb_func_start FUN_020010A8
-FUN_020010A8: ; 0x020010A8
- push {r3-r7, lr}
- add r5, r0, #0x0
- add r6, r1, #0x0
- add r0, r3, #0x0
- mov r1, #0x38
- add r7, r2, #0x0
- str r3, [sp, #0x0]
- bl AllocFromHeap
- add r4, r0, #0x0
- add r3, r5, #0x0
- add r2, r4, #0x0
- ldmia r3!, {r0-r1}
- stmia r2!, {r0-r1}
- ldmia r3!, {r0-r1}
- stmia r2!, {r0-r1}
- ldmia r3!, {r0-r1}
- stmia r2!, {r0-r1}
- ldmia r3!, {r0-r1}
- stmia r2!, {r0-r1}
- ldr r0, [sp, #0x0]
- bl FUN_02013690
- str r0, [r4, #0x28]
- strh r6, [r4, #0x2c]
- add r1, r4, #0x0
- strh r7, [r4, #0x2e]
- mov r0, #0x0
- add r1, #0x30
- strb r0, [r1, #0x0]
- add r1, r4, #0x0
- add r1, #0x31
- strb r0, [r1, #0x0]
- add r1, r4, #0x0
- mov r2, #0xff
- add r1, #0x32
- strb r2, [r1, #0x0]
- add r1, r4, #0x0
- add r1, #0x33
- strb r0, [r1, #0x0]
- add r1, r4, #0x0
- ldr r0, [sp, #0x0]
- add r1, #0x34
- strb r0, [r1, #0x0]
- add r0, r4, #0x0
- ldrb r1, [r4, #0x17]
- add r0, #0x20
- ldrb r2, [r0, #0x0]
- lsl r1, r1, #0x18
- mov r0, #0xf
- lsr r3, r1, #0x1c
- mov r1, #0xf
- bic r2, r0
- and r3, r1
- orr r3, r2
- add r2, r4, #0x0
- add r2, #0x20
- strb r3, [r2, #0x0]
- add r2, r4, #0x0
- add r2, #0x20
- ldrb r2, [r2, #0x0]
- mov r3, #0xf0
- bic r2, r3
- ldrb r3, [r4, #0x18]
- lsl r3, r3, #0x1c
- lsr r3, r3, #0x1c
- lsl r3, r3, #0x1c
- lsr r3, r3, #0x18
- orr r3, r2
- add r2, r4, #0x0
- add r2, #0x20
- strb r3, [r2, #0x0]
- add r2, r4, #0x0
- add r2, #0x21
- ldrb r2, [r2, #0x0]
- bic r2, r0
- ldrb r0, [r4, #0x18]
- lsl r0, r0, #0x18
- lsr r0, r0, #0x1c
- and r0, r1
- add r1, r2, #0x0
- orr r1, r0
- add r0, r4, #0x0
- add r0, #0x21
- strb r1, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x22
- ldrb r0, [r0, #0x0]
- mov r1, #0x3f
- bic r0, r1
- ldrh r1, [r4, #0x1a]
- lsl r1, r1, #0x1d
- lsr r1, r1, #0x1d
- lsl r1, r1, #0x18
- lsr r2, r1, #0x18
- mov r1, #0x3f
- and r1, r2
- orr r1, r0
- add r0, r4, #0x0
- add r0, #0x22
- strb r1, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x24
- ldrb r0, [r0, #0x0]
- mov r1, #0x7f
- bic r0, r1
- ldrh r1, [r4, #0x1a]
- lsl r1, r1, #0x11
- lsr r1, r1, #0x1a
- lsl r1, r1, #0x18
- lsr r2, r1, #0x18
- mov r1, #0x7f
- and r1, r2
- orr r1, r0
- add r0, r4, #0x0
- add r0, #0x24
- strb r1, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x24
- ldrb r1, [r0, #0x0]
- mov r0, #0x80
- bic r1, r0
- add r0, r4, #0x0
- add r0, #0x24
- strb r1, [r0, #0x0]
- ldrh r1, [r4, #0x10]
- ldrh r0, [r4, #0x12]
- cmp r1, r0
- bhs _020011AC
- strh r1, [r4, #0x12]
-_020011AC:
- ldrb r2, [r4, #0x18]
- ldr r0, [r4, #0x28]
- lsl r1, r2, #0x1c
- lsr r1, r1, #0x1c
- lsl r1, r1, #0x18
- lsr r3, r1, #0x18
- ldrb r1, [r4, #0x17]
- lsl r2, r2, #0x18
- lsr r2, r2, #0x1c
- lsl r1, r1, #0x18
- lsr r1, r1, #0x1c
- lsl r1, r1, #0x18
- lsl r2, r2, #0x18
- lsr r1, r1, #0x8
- lsr r2, r2, #0x10
- orr r1, r2
- orr r1, r3
- bl FUN_020136E0
- ldrb r1, [r4, #0x18]
- ldr r0, [r4, #0xc]
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x1c
- bl FUN_02019620
- ldrh r1, [r4, #0x2c]
- ldrh r3, [r4, #0x12]
- add r0, r4, #0x0
- mov r2, #0x0
- bl FUN_02001714
- add r0, r4, #0x0
- bl FUN_020017AC
- add r0, r4, #0x0
- mov r1, #0x1
- bl FUN_02001B64
- ldr r0, [r5, #0xc]
- bl CopyWindowToVram
- add r0, r4, #0x0
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_02001204
-FUN_02001204: ; 0x02001204
- push {r4-r6, lr}
- add r4, r0, #0x0
- add r1, r4, #0x0
- ldr r6, _020012FC ; =gMain
- mov r3, #0x0
- add r1, #0x33
- strb r3, [r1, #0x0]
- ldr r1, [r6, #0x48]
- mov r2, #0x1
- add r5, r1, #0x0
- tst r5, r2
- beq _0200122C
- ldrh r1, [r4, #0x2c]
- ldrh r0, [r4, #0x2e]
- ldr r2, [r4, #0x0]
- add r0, r1, r0
- lsl r0, r0, #0x3
- add r0, r2, r0
- ldr r0, [r0, #0x4]
- pop {r4-r6, pc}
-_0200122C:
- mov r5, #0x2
- tst r1, r5
- beq _02001236
- sub r0, r5, #0x4
- pop {r4-r6, pc}
-_02001236:
- ldr r5, [r6, #0x4c]
- mov r1, #0x40
- tst r1, r5
- beq _02001254
- add r1, r2, #0x0
- bl FUN_02001AA4
- cmp r0, #0x0
- bne _0200124E
- mov r0, #0x1
- add r4, #0x33
- strb r0, [r4, #0x0]
-_0200124E:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
-_02001254:
- mov r1, #0x80
- add r3, r5, #0x0
- tst r3, r1
- beq _02001274
- add r1, r2, #0x0
- add r3, r2, #0x0
- bl FUN_02001AA4
- cmp r0, #0x0
- bne _0200126E
- mov r0, #0x2
- add r4, #0x33
- strb r0, [r4, #0x0]
-_0200126E:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
-_02001274:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x17
- lsr r0, r0, #0x1e
- beq _02001284
- cmp r0, #0x1
- beq _0200128A
- cmp r0, #0x2
- beq _0200129C
-_02001284:
- mov r0, #0x0
- add r1, r0, #0x0
- b _020012AC
-_0200128A:
- mov r0, #0x20
- mov r1, #0x10
- and r0, r5
- and r1, r5
- lsl r0, r0, #0x10
- lsl r1, r1, #0x10
- lsr r0, r0, #0x10
- lsr r1, r1, #0x10
- b _020012AC
-_0200129C:
- lsl r0, r1, #0x2
- add r1, #0x80
- and r0, r5
- and r1, r5
- lsl r0, r0, #0x10
- lsl r1, r1, #0x10
- lsr r0, r0, #0x10
- lsr r1, r1, #0x10
-_020012AC:
- cmp r0, #0x0
- beq _020012D0
- ldrh r2, [r4, #0x12]
- add r0, r4, #0x0
- mov r1, #0x1
- lsl r2, r2, #0x18
- lsr r2, r2, #0x18
- mov r3, #0x0
- bl FUN_02001AA4
- cmp r0, #0x0
- bne _020012CA
- mov r0, #0x3
- add r4, #0x33
- strb r0, [r4, #0x0]
-_020012CA:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
-_020012D0:
- cmp r1, #0x0
- beq _020012F4
- ldrh r2, [r4, #0x12]
- mov r1, #0x1
- add r0, r4, #0x0
- lsl r2, r2, #0x18
- lsr r2, r2, #0x18
- add r3, r1, #0x0
- bl FUN_02001AA4
- cmp r0, #0x0
- bne _020012EE
- mov r0, #0x4
- add r4, #0x33
- strb r0, [r4, #0x0]
-_020012EE:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
-_020012F4:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
- nop
-_020012FC: .word gMain
-
- thumb_func_start FUN_02001300
-FUN_02001300: ; 0x02001300
- push {r4, lr}
- add r4, r0, #0x0
- cmp r1, #0x0
- beq _0200130C
- ldrh r0, [r4, #0x2c]
- strh r0, [r1, #0x0]
-_0200130C:
- cmp r2, #0x0
- beq _02001314
- ldrh r0, [r4, #0x2e]
- strh r0, [r2, #0x0]
-_02001314:
- ldr r0, [r4, #0x28]
- bl FUN_020136C0
- add r0, r4, #0x0
- add r0, #0x34
- ldrb r0, [r0, #0x0]
- add r1, r4, #0x0
- bl FUN_02016A8C
- pop {r4, pc}
-
- thumb_func_start FUN_02001328
-FUN_02001328: ; 0x02001328
- push {r4, lr}
- add r4, r0, #0x0
- ldrb r1, [r4, #0x18]
- ldr r0, [r4, #0xc]
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x1c
- bl FUN_02019620
- ldrh r1, [r4, #0x2c]
- ldrh r3, [r4, #0x12]
- add r0, r4, #0x0
- mov r2, #0x0
- bl FUN_02001714
- add r0, r4, #0x0
- bl FUN_020017AC
- ldr r0, [r4, #0xc]
- bl CopyWindowToVram
- pop {r4, pc}
- .balign 4
-
- thumb_func_start FUN_02001354
-FUN_02001354: ; 0x02001354
- push {r4-r6, lr}
- add r4, r0, #0x0
- add r6, r1, #0x0
- beq _0200136E
- add r5, r4, #0x0
- ldmia r6!, {r0-r1}
- stmia r5!, {r0-r1}
- ldmia r6!, {r0-r1}
- stmia r5!, {r0-r1}
- ldmia r6!, {r0-r1}
- stmia r5!, {r0-r1}
- ldmia r6!, {r0-r1}
- stmia r5!, {r0-r1}
-_0200136E:
- strh r2, [r4, #0x2c]
- add r0, r4, #0x0
- strh r3, [r4, #0x2e]
- mov r3, #0x0
- add r0, #0x30
- strb r3, [r0, #0x0]
- add r0, r4, #0x0
- add r0, #0x31
- add r1, sp, #0x0
- strb r3, [r0, #0x0]
- ldrh r0, [r1, #0x14]
- cmp r0, #0x40
- bne _02001398
- ldrh r1, [r1, #0x10]
- add r0, r4, #0x0
- mov r2, #0x1
- lsl r1, r1, #0x18
- lsr r1, r1, #0x18
- bl FUN_02001AA4
- b _020013AC
-_02001398:
- cmp r0, #0x80
- bne _020013AC
- ldrh r1, [r1, #0x10]
- mov r2, #0x1
- add r0, r4, #0x0
- lsl r1, r1, #0x18
- lsr r1, r1, #0x18
- add r3, r2, #0x0
- bl FUN_02001AA4
-_020013AC:
- ldr r1, [sp, #0x18]
- cmp r1, #0x0
- beq _020013B6
- ldrh r0, [r4, #0x2c]
- strh r0, [r1, #0x0]
-_020013B6:
- ldr r1, [sp, #0x1c]
- cmp r1, #0x0
- beq _020013C0
- ldrh r0, [r4, #0x2e]
- strh r0, [r1, #0x0]
-_020013C0:
- mov r0, #0x0
- mvn r0, r0
- pop {r4-r6, pc}
- .balign 4
-
- thumb_func_start FUN_020013C8
-FUN_020013C8: ; 0x020013C8
- push {r4, lr}
- sub sp, #0x10
- mov r4, #0x0
- str r4, [sp, #0x0]
- add r4, sp, #0x8
- ldrh r4, [r4, #0x10]
- str r4, [sp, #0x4]
- ldr r4, [sp, #0x1c]
- str r4, [sp, #0x8]
- ldr r4, [sp, #0x20]
- str r4, [sp, #0xc]
- bl FUN_02001354
- add sp, #0x10
- pop {r4, pc}
- .balign 4
-
- thumb_func_start FUN_020013E8
-FUN_020013E8: ; 0x020013E8
- push {r3-r6}
- add r4, r0, #0x0
- add r4, #0x20
- ldrb r6, [r4, #0x0]
- mov r4, #0xf
- mov r5, #0xf
- bic r6, r4
- and r1, r5
- orr r6, r1
- add r1, r0, #0x0
- add r1, #0x20
- strb r6, [r1, #0x0]
- add r1, r0, #0x0
- add r1, #0x20
- lsl r2, r2, #0x1c
- ldrb r1, [r1, #0x0]
- mov r6, #0xf0
- lsr r2, r2, #0x18
- bic r1, r6
- orr r2, r1
- add r1, r0, #0x0
- add r1, #0x20
- strb r2, [r1, #0x0]
- add r1, r0, #0x0
- add r1, #0x21
- ldrb r2, [r1, #0x0]
- add r1, r3, #0x0
- and r1, r5
- bic r2, r4
- orr r2, r1
- add r1, r0, #0x0
- add r1, #0x21
- strb r2, [r1, #0x0]
- add r1, r0, #0x0
- add r1, #0x24
- ldrb r2, [r1, #0x0]
- mov r1, #0x80
- add r0, #0x24
- orr r1, r2
- strb r1, [r0, #0x0]
- pop {r3-r6}
- bx lr
-
- thumb_func_start FUN_0200143C
-FUN_0200143C: ; 0x0200143C
- ldrh r2, [r0, #0x2c]
- ldrh r0, [r0, #0x2e]
- add r0, r2, r0
- strh r0, [r1, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_02001448
-FUN_02001448: ; 0x02001448
- cmp r1, #0x0
- beq _02001450
- ldrh r3, [r0, #0x2c]
- strh r3, [r1, #0x0]
-_02001450:
- cmp r2, #0x0
- beq _02001458
- ldrh r0, [r0, #0x2e]
- strh r0, [r2, #0x0]
-_02001458:
- bx lr
- .balign 4
-
- thumb_func_start FUN_0200145C
-FUN_0200145C: ; 0x0200145C
- add r0, #0x33
- ldrb r0, [r0, #0x0]
- bx lr
- .balign 4
-
- thumb_func_start FUN_02001464
-FUN_02001464: ; 0x02001464
- ldr r2, [r0, #0x0]
- lsl r0, r1, #0x3
- add r0, r2, r0
- ldr r0, [r0, #0x4]
- bx lr
- .balign 4
-
- thumb_func_start FUN_02001470
-FUN_02001470: ; 0x02001470
- push {r4, lr}
- add r4, r0, #0x0
- cmp r1, #0x13
- bhi _02001532
- add r0, r1, r1
- add r0, pc
- ldrh r0, [r0, #0x6]
- lsl r0, r0, #0x10
- asr r0, r0, #0x10
- add pc, r0
-_02001484: ; jump table (using 16-bit offset)
- .short _020014AC - _02001484 - 2; case 0
- .short _020014B0 - _02001484 - 2; case 1
- .short _020014B4 - _02001484 - 2; case 2
- .short _020014B8 - _02001484 - 2; case 3
- .short _02001532 - _02001484 - 2; case 4
- .short _020014BC - _02001484 - 2; case 5
- .short _020014C0 - _02001484 - 2; case 6
- .short _020014C4 - _02001484 - 2; case 7
- .short _020014C8 - _02001484 - 2; case 8
- .short _020014D0 - _02001484 - 2; case 9
- .short _020014EA - _02001484 - 2; case 10
- .short _020014F2 - _02001484 - 2; case 11
- .short _020014FA - _02001484 - 2; case 12
- .short _02001502 - _02001484 - 2; case 13
- .short _0200150A - _02001484 - 2; case 14
- .short _02001512 - _02001484 - 2; case 15
- .short _0200151A - _02001484 - 2; case 16
- .short _02001522 - _02001484 - 2; case 17
- .short _0200152A - _02001484 - 2; case 18
- .short _0200152E - _02001484 - 2; case 19
-_020014AC:
- ldr r0, [r4, #0x4]
- pop {r4, pc}
-_020014B0:
- ldr r0, [r4, #0x8]
- pop {r4, pc}
-_020014B4:
- ldrh r0, [r4, #0x10]
- pop {r4, pc}
-_020014B8:
- ldrh r0, [r4, #0x12]
- pop {r4, pc}
-_020014BC:
- ldrb r0, [r4, #0x14]
- pop {r4, pc}
-_020014C0:
- ldrb r0, [r4, #0x15]
- pop {r4, pc}
-_020014C4:
- ldrb r0, [r4, #0x16]
- pop {r4, pc}
-_020014C8:
- ldrb r0, [r4, #0x17]
- lsl r0, r0, #0x1c
- lsr r0, r0, #0x1c
- pop {r4, pc}
-_020014D0:
- ldrh r0, [r4, #0x1a]
- mov r1, #0x1
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- bl FUN_02002E4C
- ldrh r1, [r4, #0x1a]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x1c
- add r0, r1, r0
- pop {r4, pc}
-_020014EA:
- ldrb r0, [r4, #0x17]
- lsl r0, r0, #0x18
- lsr r0, r0, #0x1c
- pop {r4, pc}
-_020014F2:
- ldrb r0, [r4, #0x18]
- lsl r0, r0, #0x1c
- lsr r0, r0, #0x1c
- pop {r4, pc}
-_020014FA:
- ldrb r0, [r4, #0x18]
- lsl r0, r0, #0x18
- lsr r0, r0, #0x1c
- pop {r4, pc}
-_02001502:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x1d
- lsr r0, r0, #0x1d
- pop {r4, pc}
-_0200150A:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x19
- lsr r0, r0, #0x1c
- pop {r4, pc}
-_02001512:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x17
- lsr r0, r0, #0x1e
- pop {r4, pc}
-_0200151A:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- pop {r4, pc}
-_02001522:
- ldrh r0, [r4, #0x1a]
- lsl r0, r0, #0x10
- lsr r0, r0, #0x1f
- pop {r4, pc}
-_0200152A:
- ldr r0, [r4, #0xc]
- pop {r4, pc}
-_0200152E:
- ldr r0, [r4, #0x1c]
- pop {r4, pc}
-_02001532:
- mov r0, #0x0
- mvn r0, r0
- pop {r4, pc}
-
- thumb_func_start FUN_02001538
-FUN_02001538: ; 0x02001538
- cmp r1, #0x13
- bls _0200153E
- b _02001648
-_0200153E:
- add r1, r1, r1
- add r1, pc
- ldrh r1, [r1, #0x6]
- lsl r1, r1, #0x10
- asr r1, r1, #0x10
- add pc, r1
-_0200154A: ; jump table (using 16-bit offset)
- .short _02001572 - _0200154A - 2; case 0
- .short _02001576 - _0200154A - 2; case 1
- .short _0200157A - _0200154A - 2; case 2
- .short _0200157E - _0200154A - 2; case 3
- .short _02001648 - _0200154A - 2; case 4
- .short _02001582 - _0200154A - 2; case 5
- .short _02001586 - _0200154A - 2; case 6
- .short _0200158A - _0200154A - 2; case 7
- .short _0200158E - _0200154A - 2; case 8
- .short _02001648 - _0200154A - 2; case 9
- .short _020015A2 - _0200154A - 2; case 10
- .short _020015B6 - _0200154A - 2; case 11
- .short _020015CA - _0200154A - 2; case 12
- .short _020015DE - _0200154A - 2; case 13
- .short _020015F2 - _0200154A - 2; case 14
- .short _02001606 - _0200154A - 2; case 15
- .short _0200161A - _0200154A - 2; case 16
- .short _0200162E - _0200154A - 2; case 17
- .short _02001642 - _0200154A - 2; case 18
- .short _02001646 - _0200154A - 2; case 19
-_02001572:
- str r2, [r0, #0x4]
- bx lr
-_02001576:
- str r2, [r0, #0x8]
- bx lr
-_0200157A:
- strh r2, [r0, #0x10]
- bx lr
-_0200157E:
- strh r2, [r0, #0x12]
- bx lr
-_02001582:
- strb r2, [r0, #0x14]
- bx lr
-_02001586:
- strb r2, [r0, #0x15]
- bx lr
-_0200158A:
- strb r2, [r0, #0x16]
- bx lr
-_0200158E:
- ldrb r3, [r0, #0x17]
- mov r1, #0xf
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r2, r1, #0x18
- mov r1, #0xf
- and r1, r2
- orr r1, r3
- strb r1, [r0, #0x17]
- bx lr
-_020015A2:
- ldrb r3, [r0, #0x17]
- mov r1, #0xf0
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x18
- orr r1, r3
- strb r1, [r0, #0x17]
- bx lr
-_020015B6:
- ldrb r3, [r0, #0x18]
- mov r1, #0xf
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r2, r1, #0x18
- mov r1, #0xf
- and r1, r2
- orr r1, r3
- strb r1, [r0, #0x18]
- bx lr
-_020015CA:
- ldrb r3, [r0, #0x18]
- mov r1, #0xf0
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x18
- orr r1, r3
- strb r1, [r0, #0x18]
- bx lr
-_020015DE:
- ldrh r3, [r0, #0x1a]
- mov r1, #0x7
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r2, r1, #0x18
- mov r1, #0x7
- and r1, r2
- orr r1, r3
- strh r1, [r0, #0x1a]
- bx lr
-_020015F2:
- ldrh r3, [r0, #0x1a]
- mov r1, #0x78
- bic r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x19
- orr r1, r3
- strh r1, [r0, #0x1a]
- bx lr
-_02001606:
- ldrh r3, [r0, #0x1a]
- ldr r1, _0200164C ; =0xFFFFFE7F
- and r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1e
- lsr r1, r1, #0x17
- orr r1, r3
- strh r1, [r0, #0x1a]
- bx lr
-_0200161A:
- ldrh r3, [r0, #0x1a]
- ldr r1, _02001650 ; =0xFFFF81FF
- and r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1a
- lsr r1, r1, #0x11
- orr r1, r3
- strh r1, [r0, #0x1a]
- bx lr
-_0200162E:
- ldrh r3, [r0, #0x1a]
- ldr r1, _02001654 ; =0xFFFF7FFF
- and r3, r1
- lsl r1, r2, #0x18
- lsr r1, r1, #0x18
- lsl r1, r1, #0x1f
- lsr r1, r1, #0x10
- orr r1, r3
- strh r1, [r0, #0x1a]
- bx lr
-_02001642:
- str r2, [r0, #0xc]
- bx lr
-_02001646:
- str r2, [r0, #0x1c]
-_02001648:
- bx lr
- nop
-_0200164C: .word 0xFFFFFE7F
-_02001650: .word 0xFFFF81FF
-_02001654: .word 0xFFFF7FFF
-
- thumb_func_start FUN_02001658
-FUN_02001658: ; 0x02001658
- str r1, [r0, #0x0]
- bx lr
-
- thumb_func_start FUN_0200165C
-FUN_0200165C: ; 0x0200165C
- push {r4-r6, lr}
- sub sp, #0x18
- add r5, r1, #0x0
- add r6, r0, #0x0
- add r4, r2, #0x0
- cmp r5, #0x0
- beq _02001710
- add r0, #0x24
- ldrb r0, [r0, #0x0]
- lsl r0, r0, #0x18
- lsr r0, r0, #0x1f
- str r3, [sp, #0x0]
- beq _020016CC
- mov r0, #0xff
- str r0, [sp, #0x4]
- add r0, r6, #0x0
- add r0, #0x20
- ldrb r2, [r0, #0x0]
- add r3, r4, #0x0
- lsl r0, r2, #0x18
- lsr r0, r0, #0x1c
- lsl r0, r0, #0x18
- lsr r1, r0, #0x18
- lsl r0, r2, #0x1c
- add r2, r6, #0x0
- add r2, #0x21
- ldrb r2, [r2, #0x0]
- lsr r0, r0, #0x1c
- lsl r0, r0, #0x18
- lsl r2, r2, #0x1c
- lsr r2, r2, #0x1c
- lsl r2, r2, #0x18
- lsr r0, r0, #0x8
- lsr r2, r2, #0x10
- orr r0, r2
- orr r0, r1
- str r0, [sp, #0x8]
- add r0, r6, #0x0
- add r0, #0x22
- ldrb r0, [r0, #0x0]
- add r2, r5, #0x0
- lsl r0, r0, #0x1a
- lsr r0, r0, #0x1a
- str r0, [sp, #0xc]
- mov r0, #0x0
- str r0, [sp, #0x10]
- str r0, [sp, #0x14]
- ldr r0, [r6, #0xc]
- add r6, #0x24
- ldrb r1, [r6, #0x0]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x19
- bl AddTextPrinterParameterized3
- add sp, #0x18
- pop {r4-r6, pc}
-_020016CC:
- mov r0, #0xff
- str r0, [sp, #0x4]
- ldrb r1, [r6, #0x18]
- add r3, r4, #0x0
- lsl r0, r1, #0x1c
- lsr r0, r0, #0x1c
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- ldrb r0, [r6, #0x17]
- lsl r1, r1, #0x18
- lsr r1, r1, #0x1c
- lsl r0, r0, #0x18
- lsr r0, r0, #0x1c
- lsl r0, r0, #0x18
- lsl r1, r1, #0x18
- lsr r0, r0, #0x8
- lsr r1, r1, #0x10
- orr r0, r1
- orr r0, r2
- str r0, [sp, #0x8]
- ldrh r0, [r6, #0x1a]
- add r2, r5, #0x0
- lsl r0, r0, #0x1d
- lsr r0, r0, #0x1d
- str r0, [sp, #0xc]
- mov r0, #0x0
- str r0, [sp, #0x10]
- str r0, [sp, #0x14]
- ldrh r1, [r6, #0x1a]
- ldr r0, [r6, #0xc]
- lsl r1, r1, #0x11
- lsr r1, r1, #0x1a
- bl AddTextPrinterParameterized3
-_02001710:
- add sp, #0x18
- pop {r4-r6, pc}
-
- thumb_func_start FUN_02001714
-FUN_02001714: ; 0x02001714
- push {r4-r7, lr}
- sub sp, #0x14
- add r5, r0, #0x0
- str r3, [sp, #0x0]
- ldrh r0, [r5, #0x1a]
- add r4, r1, #0x0
- mov r1, #0x1
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- add r6, r2, #0x0
- bl FUN_02002E4C
- ldrh r1, [r5, #0x1a]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x1c
- add r0, r1, r0
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- str r0, [sp, #0xc]
- mov r0, #0x0
- str r0, [sp, #0x10]
- ldr r0, [sp, #0x0]
- cmp r0, #0x0
- ble _020017A6
-_02001748:
- ldr r1, [r5, #0x0]
- lsl r0, r4, #0x3
- str r0, [sp, #0x8]
- add r0, r1, r0
- ldr r1, [r0, #0x4]
- mov r0, #0x2
- mvn r0, r0
- cmp r1, r0
- beq _02001760
- ldrb r0, [r5, #0x15]
- str r0, [sp, #0x4]
- b _02001764
-_02001760:
- ldrb r0, [r5, #0x14]
- str r0, [sp, #0x4]
-_02001764:
- ldrb r0, [r5, #0x17]
- lsl r0, r0, #0x1c
- lsr r3, r0, #0x1c
- ldr r0, [sp, #0xc]
- add r2, r0, #0x0
- mul r2, r6
- add r0, r3, r2
- lsl r0, r0, #0x18
- ldr r3, [r5, #0x8]
- lsr r7, r0, #0x18
- cmp r3, #0x0
- beq _02001782
- add r0, r5, #0x0
- add r2, r7, #0x0
- blx r3
-_02001782:
- ldr r2, [r5, #0x0]
- ldr r1, [sp, #0x8]
- add r0, r5, #0x0
- ldr r1, [r2, r1]
- ldr r2, [sp, #0x4]
- add r3, r7, #0x0
- bl FUN_0200165C
- add r0, r4, #0x1
- lsl r0, r0, #0x10
- lsr r4, r0, #0x10
- ldr r0, [sp, #0x10]
- add r6, r6, #0x1
- add r1, r0, #0x1
- ldr r0, [sp, #0x0]
- str r1, [sp, #0x10]
- cmp r1, r0
- blt _02001748
-_020017A6:
- add sp, #0x14
- pop {r4-r7, pc}
- .balign 4
-
- thumb_func_start FUN_020017AC
-FUN_020017AC: ; 0x020017AC
- push {r3-r5, lr}
- add r4, r0, #0x0
- ldrh r0, [r4, #0x1a]
- mov r1, #0x1
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- bl FUN_02002E4C
- ldrh r1, [r4, #0x1a]
- ldrh r5, [r4, #0x2e]
- lsl r2, r1, #0x19
- lsr r2, r2, #0x1c
- add r0, r2, r0
- lsl r0, r0, #0x18
- lsr r3, r0, #0x18
- ldrb r0, [r4, #0x17]
- mul r3, r5
- ldrb r2, [r4, #0x16]
- lsl r0, r0, #0x1c
- lsr r0, r0, #0x1c
- add r0, r0, r3
- lsl r0, r0, #0x18
- lsr r3, r0, #0x18
- lsl r0, r1, #0x10
- lsr r0, r0, #0x1f
- cmp r0, #0x3
- bhi _02001802
- add r0, r0, r0
- add r0, pc
- ldrh r0, [r0, #0x6]
- lsl r0, r0, #0x10
- asr r0, r0, #0x10
- add pc, r0
-_020017F2: ; jump table (using 16-bit offset)
- .short _020017FA - _020017F2 - 2; case 0
- .short _02001802 - _020017F2 - 2; case 1
- .short _02001802 - _020017F2 - 2; case 2
- .short _02001802 - _020017F2 - 2; case 3
-_020017FA:
- ldr r0, [r4, #0x28]
- ldr r1, [r4, #0xc]
- bl FUN_020136F8
-_02001802:
- pop {r3-r5, pc}
-
- thumb_func_start FUN_02001804
-FUN_02001804: ; 0x02001804
- push {r3-r5, lr}
- sub sp, #0x8
- add r4, r0, #0x0
- ldrh r0, [r4, #0x1a]
- add r5, r1, #0x0
- lsl r1, r0, #0x10
- lsr r1, r1, #0x1f
- cmp r1, #0x3
- bhi _02001868
- add r1, r1, r1
- add r1, pc
- ldrh r1, [r1, #0x6]
- lsl r1, r1, #0x10
- asr r1, r1, #0x10
- add pc, r1
-_02001822: ; jump table (using 16-bit offset)
- .short _0200182A - _02001822 - 2; case 0
- .short _02001868 - _02001822 - 2; case 1
- .short _02001868 - _02001822 - 2; case 2
- .short _02001868 - _02001822 - 2; case 3
-_0200182A:
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- mov r1, #0x1
- bl FUN_02002E4C
- ldrh r1, [r4, #0x1a]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x1c
- add r0, r1, r0
- lsl r0, r0, #0x18
- lsr r3, r0, #0x18
- mov r0, #0x8
- str r0, [sp, #0x0]
- mov r0, #0x10
- str r0, [sp, #0x4]
- ldrb r1, [r4, #0x18]
- ldr r0, [r4, #0xc]
- ldrb r2, [r4, #0x16]
- ldrb r4, [r4, #0x17]
- lsl r1, r1, #0x1c
- mul r3, r5
- lsl r4, r4, #0x1c
- lsr r4, r4, #0x1c
- add r3, r4, r3
- lsl r3, r3, #0x10
- lsr r1, r1, #0x1c
- lsr r3, r3, #0x10
- bl FUN_020196F4
-_02001868:
- add sp, #0x8
- pop {r3-r5, pc}
-
- thumb_func_start FUN_0200186C
-FUN_0200186C: ; 0x0200186C
- push {r4-r7}
- ldrh r4, [r0, #0x2e]
- ldrh r3, [r0, #0x2c]
- cmp r1, #0x0
- ldrh r2, [r0, #0x12]
- bne _020018FE
- cmp r2, #0x1
- bne _02001880
- mov r1, #0x0
- b _02001898
-_02001880:
- lsr r7, r2, #0x1f
- lsl r6, r2, #0x1f
- sub r6, r6, r7
- mov r5, #0x1f
- ror r6, r5
- lsr r1, r2, #0x1
- add r5, r7, r6
- add r1, r1, r5
- sub r1, r2, r1
- sub r1, r1, #0x1
- lsl r1, r1, #0x10
- lsr r1, r1, #0x10
-_02001898:
- cmp r3, #0x0
- bne _020018CC
- cmp r4, #0x0
- beq _020018C6
- ldr r2, [r0, #0x0]
- lsl r1, r3, #0x3
- mov r3, #0x2
- add r1, r2, r1
- mvn r3, r3
-_020018AA:
- sub r2, r4, #0x1
- lsl r2, r2, #0x10
- lsr r4, r2, #0x10
- lsl r2, r4, #0x3
- add r2, r1, r2
- ldr r2, [r2, #0x4]
- cmp r2, r3
- beq _020018C2
- strh r4, [r0, #0x2e]
- mov r0, #0x1
- pop {r4-r7}
- bx lr
-_020018C2:
- cmp r4, #0x0
- bne _020018AA
-_020018C6:
- mov r0, #0x0
- pop {r4-r7}
- bx lr
-_020018CC:
- cmp r4, r1
- bls _020018F6
- ldr r5, [r0, #0x0]
- lsl r2, r3, #0x3
- add r2, r5, r2
- mov r5, #0x2
- mvn r5, r5
-_020018DA:
- sub r4, r4, #0x1
- lsl r4, r4, #0x10
- lsr r4, r4, #0x10
- lsl r6, r4, #0x3
- add r6, r2, r6
- ldr r6, [r6, #0x4]
- cmp r6, r5
- beq _020018F2
- strh r4, [r0, #0x2e]
- mov r0, #0x1
- pop {r4-r7}
- bx lr
-_020018F2:
- cmp r4, r1
- bhi _020018DA
-_020018F6:
- strh r1, [r0, #0x2e]
- sub r1, r3, #0x1
- strh r1, [r0, #0x2c]
- b _02001984
-_020018FE:
- cmp r2, #0x1
- bne _02001906
- mov r5, #0x0
- b _0200191A
-_02001906:
- lsr r7, r2, #0x1f
- lsl r6, r2, #0x1f
- sub r6, r6, r7
- mov r5, #0x1f
- ror r6, r5
- lsr r1, r2, #0x1
- add r5, r7, r6
- add r1, r1, r5
- lsl r1, r1, #0x10
- lsr r5, r1, #0x10
-_0200191A:
- ldrh r1, [r0, #0x10]
- sub r1, r1, r2
- cmp r3, r1
- bne _02001954
- sub r2, r2, #0x1
- cmp r4, r2
- bge _0200194E
- ldr r5, [r0, #0x0]
- lsl r1, r3, #0x3
- add r1, r5, r1
- mov r5, #0x2
- mvn r5, r5
-_02001932:
- add r3, r4, #0x1
- lsl r3, r3, #0x10
- lsr r4, r3, #0x10
- lsl r3, r4, #0x3
- add r3, r1, r3
- ldr r3, [r3, #0x4]
- cmp r3, r5
- beq _0200194A
- strh r4, [r0, #0x2e]
- mov r0, #0x1
- pop {r4-r7}
- bx lr
-_0200194A:
- cmp r4, r2
- blt _02001932
-_0200194E:
- mov r0, #0x0
- pop {r4-r7}
- bx lr
-_02001954:
- cmp r4, r5
- bhs _0200197E
- ldr r2, [r0, #0x0]
- lsl r1, r3, #0x3
- mov r6, #0x2
- add r1, r2, r1
- mvn r6, r6
-_02001962:
- add r2, r4, #0x1
- lsl r2, r2, #0x10
- lsr r4, r2, #0x10
- lsl r2, r4, #0x3
- add r2, r1, r2
- ldr r2, [r2, #0x4]
- cmp r2, r6
- beq _0200197A
- strh r4, [r0, #0x2e]
- mov r0, #0x1
- pop {r4-r7}
- bx lr
-_0200197A:
- cmp r4, r5
- blo _02001962
-_0200197E:
- strh r5, [r0, #0x2e]
- add r1, r3, #0x1
- strh r1, [r0, #0x2c]
-_02001984:
- mov r0, #0x2
- pop {r4-r7}
- bx lr
- .balign 4
-
- thumb_func_start FUN_0200198C
-FUN_0200198C: ; 0x0200198C
- push {r3-r7, lr}
- sub sp, #0x8
- add r5, r0, #0x0
- ldrh r0, [r5, #0x12]
- add r4, r1, #0x0
- add r7, r2, #0x0
- cmp r4, r0
- blt _020019B8
- ldrb r1, [r5, #0x18]
- ldr r0, [r5, #0xc]
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x1c
- bl FUN_02019620
- ldrh r1, [r5, #0x2c]
- ldrh r3, [r5, #0x12]
- add r0, r5, #0x0
- mov r2, #0x0
- bl FUN_02001714
- add sp, #0x8
- pop {r3-r7, pc}
-_020019B8:
- ldrh r0, [r5, #0x1a]
- mov r1, #0x1
- lsl r0, r0, #0x11
- lsr r0, r0, #0x1a
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- bl FUN_02002E4C
- ldrh r1, [r5, #0x1a]
- lsl r1, r1, #0x19
- lsr r1, r1, #0x1c
- add r0, r1, r0
- lsl r0, r0, #0x18
- lsr r6, r0, #0x18
- cmp r7, #0x0
- ldrb r0, [r5, #0x18]
- bne _02001A46
- lsl r0, r0, #0x1c
- lsr r7, r0, #0x1c
- add r2, r4, #0x0
- lsl r3, r7, #0x4
- mul r2, r6
- orr r3, r7
- lsl r2, r2, #0x18
- lsl r3, r3, #0x18
- ldr r0, [r5, #0xc]
- mov r1, #0x1
- lsr r2, r2, #0x18
- lsr r3, r3, #0x18
- bl FUN_0201A8C8
- ldrh r1, [r5, #0x2c]
- add r0, r5, #0x0
- mov r2, #0x0
- add r3, r4, #0x0
- bl FUN_02001714
- ldrb r0, [r5, #0x17]
- lsl r0, r0, #0x1c
- lsr r2, r0, #0x1c
- ldrh r0, [r5, #0x12]
- add r1, r0, #0x0
- mul r1, r6
- add r0, r2, r1
- lsl r0, r0, #0x10
- lsr r4, r0, #0x10
- ldr r0, [r5, #0xc]
- bl FUN_0201AB0C
- add r6, r0, #0x0
- ldr r0, [r5, #0xc]
- bl FUN_0201AB10
- lsl r0, r0, #0x3
- lsl r1, r6, #0x13
- sub r0, r0, r4
- lsr r1, r1, #0x10
- lsl r0, r0, #0x10
- str r1, [sp, #0x0]
- lsr r0, r0, #0x10
- str r0, [sp, #0x4]
- ldrb r1, [r5, #0x18]
- ldr r0, [r5, #0xc]
- mov r2, #0x0
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x1c
- add r3, r4, #0x0
- bl FUN_020196F4
- add sp, #0x8
- pop {r3-r7, pc}
-_02001A46:
- lsl r0, r0, #0x1c
- lsr r3, r0, #0x1c
- add r2, r4, #0x0
- mul r2, r6
- lsl r6, r3, #0x4
- orr r3, r6
- lsl r2, r2, #0x18
- lsl r3, r3, #0x18
- ldr r0, [r5, #0xc]
- mov r1, #0x0
- lsr r2, r2, #0x18
- lsr r3, r3, #0x18
- bl FUN_0201A8C8
- ldrh r0, [r5, #0x12]
- ldrh r1, [r5, #0x2c]
- add r3, r4, #0x0
- sub r2, r0, r4
- add r1, r1, r2
- lsl r1, r1, #0x10
- lsl r2, r2, #0x10
- add r0, r5, #0x0
- lsr r1, r1, #0x10
- lsr r2, r2, #0x10
- bl FUN_02001714
- ldr r0, [r5, #0xc]
- bl FUN_0201AB0C
- lsl r0, r0, #0x13
- lsr r0, r0, #0x10
- str r0, [sp, #0x0]
- ldrb r0, [r5, #0x17]
- mov r2, #0x0
- add r3, r2, #0x0
- lsl r0, r0, #0x1c
- lsr r0, r0, #0x1c
- str r0, [sp, #0x4]
- ldrb r1, [r5, #0x18]
- ldr r0, [r5, #0xc]
- lsl r1, r1, #0x1c
- lsr r1, r1, #0x1c
- bl FUN_020196F4
- add sp, #0x8
- pop {r3-r7, pc}
- .balign 4
-
- thumb_func_start FUN_02001AA4
-FUN_02001AA4: ; 0x02001AA4
- push {r3-r7, lr}
- sub sp, #0x10
- str r1, [sp, #0x0]
- str r2, [sp, #0x4]
- add r4, r0, #0x0
- str r3, [sp, #0x8]
- ldrh r0, [r4, #0x2e]
- mov r6, #0x0
- add r5, r6, #0x0
- str r0, [sp, #0xc]
- ldr r0, [sp, #0x4]
- add r7, r6, #0x0
- cmp r0, #0x0
- bls _02001AF6
-_02001AC0:
- ldr r1, [sp, #0x8]
- add r0, r4, #0x0
- bl FUN_0200186C
- orr r5, r0
- cmp r0, #0x2
- bne _02001AEA
- add r0, r6, #0x1
- lsl r0, r0, #0x18
- lsr r6, r0, #0x18
- ldrh r1, [r4, #0x2c]
- ldrh r0, [r4, #0x2e]
- ldr r2, [r4, #0x0]
- add r0, r1, r0
- lsl r0, r0, #0x3
- add r0, r2, r0
- ldr r1, [r0, #0x4]
- mov r0, #0x2
- mvn r0, r0
- cmp r1, r0
- beq _02001AC0
-_02001AEA:
- add r0, r7, #0x1
- lsl r0, r0, #0x18
- lsr r7, r0, #0x18
- ldr r0, [sp, #0x4]
- cmp r7, r0
- blo _02001AC0
-_02001AF6:
- ldr r0, [sp, #0x0]
- cmp r0, #0x0
- beq _02001B5E
- cmp r5, #0x3
- bhi _02001B14
- add r0, r5, r5
- add r0, pc
- ldrh r0, [r0, #0x6]
- lsl r0, r0, #0x10
- asr r0, r0, #0x10
- add pc, r0
-_02001B0C: ; jump table (using 16-bit offset)
- .short _02001B14 - _02001B0C - 2; case 0
- .short _02001B1A - _02001B0C - 2; case 1
- .short _02001B38 - _02001B0C - 2; case 2
- .short _02001B38 - _02001B0C - 2; case 3
-_02001B14:
- add sp, #0x10
- mov r0, #0x1
- pop {r3-r7, pc}
-_02001B1A:
- ldr r1, [sp, #0xc]
- add r0, r4, #0x0
- bl FUN_02001804
- add r0, r4, #0x0
- bl FUN_020017AC
- add r0, r4, #0x0
- mov r1, #0x0
- bl FUN_02001B64
- ldr r0, [r4, #0xc]
- bl CopyWindowToVram
- b _02001B5E
-_02001B38:
- ldr r1, [sp, #0xc]
- add r0, r4, #0x0
- bl FUN_02001804
- ldr r2, [sp, #0x8]
- add r0, r4, #0x0
- add r1, r6, #0x0
- bl FUN_0200198C
- add r0, r4, #0x0
- bl FUN_020017AC
- add r0, r4, #0x0
- mov r1, #0x0
- bl FUN_02001B64
- ldr r0, [r4, #0xc]
- bl CopyWindowToVram
-_02001B5E:
- mov r0, #0x0
- add sp, #0x10
- pop {r3-r7, pc}
-
- thumb_func_start FUN_02001B64
-FUN_02001B64: ; 0x02001B64
- push {r3-r5, lr}
- ldr r3, [r0, #0x4]
- add r2, r1, #0x0
- cmp r3, #0x0
- beq _02001B7E
- ldrh r5, [r0, #0x2c]
- ldrh r4, [r0, #0x2e]
- ldr r1, [r0, #0x0]
- add r4, r5, r4
- lsl r4, r4, #0x3
- add r1, r1, r4
- ldr r1, [r1, #0x4]
- blx r3
-_02001B7E:
- pop {r3-r5, pc}
diff --git a/arm9/asm/unk_02001B80.s b/arm9/asm/unk_02001B80.s
index 4962171d..18e10da6 100644
--- a/arm9/asm/unk_02001B80.s
+++ b/arm9/asm/unk_02001B80.s
@@ -12,14 +12,6 @@ UNK_020ECAC8: ; 0x020ECAC8
.text
- thumb_func_start FUN_02001B80
-FUN_02001B80: ; 0x02001B80
- ldr r3, _02001B88 ; =CopyWindowToVram
- ldr r0, [r0, #0xc]
- bx r3
- nop
-_02001B88: .word CopyWindowToVram
-
thumb_func_start FUN_02001B8C
FUN_02001B8C: ; 0x02001B8C
push {r3-r7, lr}
@@ -41,7 +33,7 @@ FUN_02001B8C: ; 0x02001B8C
ldr r0, [r3, #0x0]
str r0, [r2, #0x0]
ldr r0, [sp, #0x4]
- bl FUN_02013690
+ bl ListMenuCursorNew
str r0, [r4, #0xc]
ldr r0, [sp, #0x24]
str r0, [r4, #0x10]
@@ -57,20 +49,20 @@ FUN_02001B8C: ; 0x02001B8C
strb r6, [r4, #0x17]
strb r7, [r4, #0x18]
ldrb r0, [r5, #0x8]
- bl FUN_02002E4C
+ bl GetFontAttribute
add r6, r0, #0x0
ldrb r0, [r5, #0x8]
mov r1, #0x2
- bl FUN_02002E4C
+ bl GetFontAttribute
add r0, r6, r0
strb r0, [r4, #0x19]
ldrb r0, [r5, #0x8]
mov r1, #0x1
- bl FUN_02002E4C
+ bl GetFontAttribute
add r6, r0, #0x0
ldrb r0, [r5, #0x8]
mov r1, #0x3
- bl FUN_02002E4C
+ bl GetFontAttribute
add r0, r6, r0
strb r0, [r4, #0x1a]
add r0, r4, #0x0
@@ -108,7 +100,7 @@ FUN_02001C34: ; 0x02001C34
add r6, r1, #0x0
add r4, r2, #0x0
mov r1, #0x0
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0x0
str r4, [sp, #0x0]
mov r0, #0x2
@@ -130,10 +122,10 @@ FUN_02001C5C: ; 0x02001C5C
strb r0, [r1, #0x0]
_02001C68:
ldr r0, [r4, #0xc]
- bl FUN_020136C0
+ bl DestroyListMenuCursorObj
ldrb r0, [r4, #0x1c]
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
thumb_func_start FUN_02001C78
@@ -420,7 +412,7 @@ FUN_02001E64: ; 0x02001E64
_02001E7C:
ldrb r0, [r5, #0x8]
mov r1, #0x6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, sp, #0x8
add r7, r0, #0x0
add r0, r5, #0x0
@@ -437,7 +429,7 @@ _02001E7C:
ldrb r2, [r3, #0x1]
ldrb r3, [r3, #0x0]
ldr r0, [r5, #0x4]
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, #0x0
bl FUN_02002080
add r0, r6, #0x0
@@ -631,10 +623,10 @@ FUN_02001FF4: ; 0x02001FF4
add r5, r0, #0x0
ldrb r0, [r5, #0x8]
mov r1, #0x6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0x0
ldr r0, [r5, #0x4]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrb r0, [r5, #0x19]
ldrb r1, [r5, #0x16]
ldrb r7, [r5, #0x17]
@@ -718,7 +710,7 @@ FUN_02002080: ; 0x02002080
ldrb r3, [r3, #0x0]
ldr r0, [r4, #0xc]
ldr r1, [r4, #0x4]
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
_020020AA:
add sp, #0x4
pop {r3-r4, pc}
@@ -772,24 +764,24 @@ CreateYesNoMenu: ; 0x020020EC
add r4, r0, #0x0
mov r0, #0x2
add r1, r5, #0x0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r4, #0x0
mov r2, #0x29
mov r3, #0x0
add r6, r0, #0x0
- bl ListMenu_ItemFromMsgData ; YES
+ bl ListMenuItems_AppendFromMsgData ; YES
mov r3, #0x2a
add r2, r3, #0x0
add r0, r6, #0x0
add r1, r4, #0x0
sub r3, #0x2c
- bl ListMenu_ItemFromMsgData ; NO
+ bl ListMenuItems_AppendFromMsgData ; NO
add r0, r4, #0x0
bl DestroyMsgData
add r0, r5, #0x0
mov r1, #0x1
str r6, [sp, #0x14]
- bl FUN_02018FF4
+ bl AllocWindows
add r1, r0, #0x0
str r1, [sp, #0x18]
mov r0, #0x0
@@ -894,9 +886,9 @@ FUN_020021EC: ; 0x020021EC
bl FUN_02019178
ldr r1, [r5, #0x4]
add r0, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [r5, #0x0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0x0
mov r1, #0x0
bl FUN_02001C5C
@@ -921,7 +913,7 @@ FUN_02002218: ; 0x02002218
mov r2, #0x0
str r3, [sp, #0x14]
add r3, r2, #0x0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add sp, #0x18
pop {r4, pc}
nop
diff --git a/arm9/asm/unk_020023C0.s b/arm9/asm/unk_020023C0.s
index baa1b890..a4223e53 100644
--- a/arm9/asm/unk_020023C0.s
+++ b/arm9/asm/unk_020023C0.s
@@ -193,7 +193,7 @@ _020024F2:
mov r1, #0x1
strb r0, [r4, #0xc]
ldrb r0, [r4, #0x9]
- bl FUN_02002E4C
+ bl GetFontAttribute
ldrb r1, [r4, #0xf]
ldrb r2, [r4, #0xd]
add sp, #0xc
@@ -500,7 +500,7 @@ _0200275C:
bl FUN_02002A00
ldrb r1, [r4, #0x12]
ldr r0, [r4, #0x4]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrb r0, [r4, #0xa]
strb r0, [r4, #0xc]
ldrb r0, [r4, #0xb]
@@ -520,7 +520,7 @@ _02002786:
bl FUN_02002A00
ldrb r0, [r4, #0x9]
mov r1, #0x1
- bl FUN_02002E4C
+ bl GetFontAttribute
ldrb r1, [r4, #0xf]
add r1, r1, r0
add r0, r4, #0x0
@@ -549,7 +549,7 @@ _020027B6:
ldr r0, [r4, #0x4]
mov r1, #0x0
lsr r3, r3, #0x18
- bl FUN_0201A8C8
+ bl ScrollWindow
mov r1, #0x0
b _020027F2
_020027D8:
@@ -560,7 +560,7 @@ _020027D8:
mov r1, #0x0
mov r2, #0x4
lsr r3, r3, #0x18
- bl FUN_0201A8C8
+ bl ScrollWindow
add r0, r4, #0x0
add r0, #0x27
ldrb r0, [r0, #0x0]
@@ -686,7 +686,7 @@ _020028AC:
bl FUN_0201AB18
str r0, [sp, #0x28]
ldr r0, [r5, #0x4]
- bl FUN_0201AB0C
+ bl GetWindowWidth
ldr r1, _020029F8 ; =gTextFlags
ldrh r6, [r1, #0x2]
ldr r1, [sp, #0x28]
@@ -853,7 +853,7 @@ FUN_02002A00: ; 0x02002A00
bl FUN_0201AB18
add r6, r0, #0x0
ldr r0, [r5, #0x4]
- bl FUN_0201AB0C
+ bl GetWindowWidth
ldr r1, _02002A90 ; =gTextFlags
add r7, r6, #0x2
ldrh r4, [r1, #0x2]
diff --git a/arm9/asm/unk_02002C14.s b/arm9/asm/unk_02002C14.s
index c4049d4b..740dca10 100644
--- a/arm9/asm/unk_02002C14.s
+++ b/arm9/asm/unk_02002C14.s
@@ -327,8 +327,8 @@ _02002E2E:
.balign 4
_02002E48: .word UNK_02106FC8
- thumb_func_start FUN_02002E4C
-FUN_02002E4C: ; 0x02002E4C
+ thumb_func_start GetFontAttribute
+GetFontAttribute: ; 0x02002E4C
mov r2, #0x0
cmp r1, #0x7
bhi _02002EAC
diff --git a/arm9/asm/unk_02006864.s b/arm9/asm/unk_02006864.s
index 5528150d..5bd62750 100644
--- a/arm9/asm/unk_02006864.s
+++ b/arm9/asm/unk_02006864.s
@@ -567,7 +567,7 @@ FUN_02006C88: ; 0x02006C88
thumb_func_start UncompressFromNarc
UncompressFromNarc: ; 0x02006C98
- ; BOOL UncompressFromNarc(NarcId narcId, s32 memberNo, BOOL a2, u32 heap_id, BOOL a4)
+ ; void * UncompressFromNarc(NarcId narcId, s32 memberNo, BOOL isCompressed, u32 heap_id, BOOL allocAtEnd)
push {r3-r7, lr}
add r5, r2, #0x0
add r7, r0, #0x0
diff --git a/arm9/asm/unk_0200CABC.s b/arm9/asm/unk_0200CABC.s
index 6d593845..27b27a76 100644
--- a/arm9/asm/unk_0200CABC.s
+++ b/arm9/asm/unk_0200CABC.s
@@ -291,10 +291,10 @@ FUN_0200CCA4: ; 0x0200CCA4
bl FUN_0201AB18
str r0, [sp, #0x18]
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x1c]
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
ldr r1, [sp, #0x1c]
ldr r2, [sp, #0x14]
str r1, [sp, #0x0]
@@ -328,10 +328,10 @@ FUN_0200CCF8: ; 0x0200CCF8
bl FUN_0201AB18
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x14]
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
sub r1, r7, #0x1
lsl r1, r1, #0x18
lsr r1, r1, #0x18
@@ -758,10 +758,10 @@ FUN_0200D06C: ; 0x0200D06C
bl FUN_0201AB18
str r0, [sp, #0x18]
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
str r7, [sp, #0x0]
str r0, [sp, #0x4]
lsl r0, r6, #0x18
@@ -813,10 +813,10 @@ FUN_0200D0E0: ; 0x0200D0E0
bl FUN_0201AB18
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x14]
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
sub r1, r7, #0x1
lsl r1, r1, #0x18
lsr r1, r1, #0x18
@@ -879,7 +879,7 @@ FUN_0200D148: ; 0x0200D148
mov r0, #0x0
str r0, [sp, #0x10]
add r0, sp, #0x1c
- bl FUN_02018A60
+ bl BlitBitmapRect4Bit
add sp, #0x24
pop {r4-r5, pc}
@@ -1098,7 +1098,7 @@ FUN_0200D300: ; 0x0200D300
bl FUN_02017FB4
ldr r1, [sp, #0x14]
add r0, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, sp, #0x20
ldrb r3, [r0, #0x10]
cmp r3, #0x1
@@ -1575,10 +1575,10 @@ FUN_0200D6F8: ; 0x0200D6F8
bl FUN_0201AB18
str r0, [sp, #0x1c]
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
str r7, [sp, #0x0]
str r0, [sp, #0x4]
str r6, [sp, #0x8]
@@ -1604,10 +1604,10 @@ _0200D756:
bl FUN_0201AB18
str r0, [sp, #0x24]
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
str r7, [sp, #0x0]
str r0, [sp, #0x4]
str r6, [sp, #0x8]
@@ -1648,10 +1648,10 @@ FUN_0200D7A0: ; 0x0200D7A0
bl FUN_0201AB18
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r6, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
sub r1, r7, #0x1
lsl r1, r1, #0x18
lsr r1, r1, #0x18
@@ -1681,10 +1681,10 @@ _0200D7FE:
bl FUN_0201AB18
add r6, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0x0
add r0, r5, #0x0
- bl FUN_0201AB10
+ bl GetWindowHeight
sub r1, r6, #0x1
lsl r1, r1, #0x18
lsr r1, r1, #0x18
@@ -1863,7 +1863,7 @@ FUN_0200D980: ; 0x0200D980
bl FUN_0201AB18
str r0, [sp, #0x1c]
ldr r0, [r5, #0x0]
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x20]
cmp r6, #0x2
bne _0200DA8A
diff --git a/arm9/asm/unk_02011744.s b/arm9/asm/unk_02011744.s
index 0f9f871b..98fd8b7e 100644
--- a/arm9/asm/unk_02011744.s
+++ b/arm9/asm/unk_02011744.s
@@ -2407,8 +2407,8 @@ _0201282C: .word sMaxDate
_02012830: .word sMaxTime
_02012834: .word 0xBC19137F
- thumb_func_start ListMenu_ctor
-ListMenu_ctor: ; 0x02012838
+ thumb_func_start ListMenuItems_ctor
+ListMenuItems_ctor: ; 0x02012838
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
@@ -2440,23 +2440,23 @@ _02012862:
_0201286E:
pop {r3-r5, pc}
- thumb_func_start ListMenu_dtor
-ListMenu_dtor: ; 0x02012870
+ thumb_func_start ListMenuItems_dtor
+ListMenuItems_dtor: ; 0x02012870
push {r4, lr}
add r4, r0, #0x0
- bl ListMenu_DestroyMenuStrings
+ bl ListMenuItems_DestroyMenuStrings
add r0, r4, #0x0
bl FreeToHeap
pop {r4, pc}
- thumb_func_start ListMenu_ItemFromMsgData
-ListMenu_ItemFromMsgData: ; 0x02012880
+ thumb_func_start ListMenuItems_AppendFromMsgData
+ListMenuItems_AppendFromMsgData: ; 0x02012880
push {r3-r7, lr}
add r6, r1, #0x0
add r1, sp, #0x0
add r7, r2, #0x0
add r5, r3, #0x0
- bl ListMenu_NewItem
+ bl ListMenuItems_NewItem
add r4, r0, #0x0
beq _0201289E
add r0, r6, #0x0
@@ -2467,14 +2467,14 @@ ListMenu_ItemFromMsgData: ; 0x02012880
_0201289E:
pop {r3-r7, pc}
- thumb_func_start ListMenu_AddItem
-ListMenu_AddItem: ; 0x020128A0
+ thumb_func_start ListMenuItems_AddItem
+ListMenuItems_AddItem: ; 0x020128A0
push {r3-r6, lr}
sub sp, #0x4
add r6, r1, #0x0
add r1, sp, #0x0
add r5, r2, #0x0
- bl ListMenu_NewItem
+ bl ListMenuItems_NewItem
add r4, r0, #0x0
beq _020128BE
ldr r1, [sp, #0x0]
@@ -2487,13 +2487,13 @@ _020128BE:
pop {r3-r6, pc}
.balign 4
- thumb_func_start ListMenu_CopyItem
-ListMenu_CopyItem: ; 0x020128C4
+ thumb_func_start ListMenuItems_CopyItem
+ListMenuItems_CopyItem: ; 0x020128C4
push {r3-r4, lr}
sub sp, #0x4
add r4, r1, #0x0
add r1, sp, #0x0
- bl ListMenu_NewItem
+ bl ListMenuItems_NewItem
cmp r0, #0x0
beq _020128DC
ldr r1, [r4, #0x0]
@@ -2504,8 +2504,8 @@ _020128DC:
add sp, #0x4
pop {r3-r4, pc}
- thumb_func_start ListMenu_NewItem
-ListMenu_NewItem: ; 0x020128E0
+ thumb_func_start ListMenuItems_NewItem
+ListMenuItems_NewItem: ; 0x020128E0
push {r4, lr}
ldr r3, [r0, #0x0]
cmp r3, #0x0
@@ -2541,8 +2541,8 @@ _02012912:
pop {r4, pc}
.balign 4
- thumb_func_start ListMenu_DestroyMenuStrings
-ListMenu_DestroyMenuStrings: ; 0x0201291C
+ thumb_func_start ListMenuItems_DestroyMenuStrings
+ListMenuItems_DestroyMenuStrings: ; 0x0201291C
push {r4-r6, lr}
add r5, r0, #0x0
mov r0, #0x0
diff --git a/arm9/asm/unk_02012CC8.s b/arm9/asm/unk_02012CC8.s
index b77e441c..781d1d6d 100644
--- a/arm9/asm/unk_02012CC8.s
+++ b/arm9/asm/unk_02012CC8.s
@@ -1488,8 +1488,8 @@ _02013688:
strh r0, [r4, #0x0]
pop {r4, pc}
- thumb_func_start FUN_02013690
-FUN_02013690: ; 0x02013690
+ thumb_func_start ListMenuCursorNew
+ListMenuCursorNew: ; 0x02013690
push {r3-r5, lr}
mov r1, #0x8
add r5, r0, #0x0
@@ -1511,8 +1511,8 @@ _020136B2:
_020136B8: .word 0x0001020F
_020136BC: .word UNK_020ED548
- thumb_func_start FUN_020136C0
-FUN_020136C0: ; 0x020136C0
+ thumb_func_start DestroyListMenuCursorObj
+DestroyListMenuCursorObj: ; 0x020136C0
push {r4, lr}
add r4, r0, #0x0
bne _020136CA
@@ -1530,8 +1530,8 @@ _020136D8:
_020136DE:
pop {r4, pc}
- thumb_func_start FUN_020136E0
-FUN_020136E0: ; 0x020136E0
+ thumb_func_start ListMenuCursorSetColor
+ListMenuCursorSetColor: ; 0x020136E0
push {r3-r5, lr}
add r5, r0, #0x0
add r4, r1, #0x0
@@ -1546,8 +1546,8 @@ _020136F4:
pop {r3-r5, pc}
.balign 4
- thumb_func_start FUN_020136F8
-FUN_020136F8: ; 0x020136F8
+ thumb_func_start ListMenuUpdateCursorObj
+ListMenuUpdateCursorObj: ; 0x020136F8
push {r4-r6, lr}
sub sp, #0x10
add r6, r0, #0x0
diff --git a/arm9/asm/unk_02016B94.s b/arm9/asm/unk_02016B94.s
index 3c92650d..0a68dea2 100644
--- a/arm9/asm/unk_02016B94.s
+++ b/arm9/asm/unk_02016B94.s
@@ -2716,7 +2716,7 @@ FUN_02017F18: ; 0x02017F18
bl FUN_02017E84
ldr r0, [sp, #0x0]
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r3-r7, pc}
thumb_func_start FUN_02017F48
@@ -4256,8 +4256,8 @@ _02018A54: .word 0x0400100A
_02018A58: .word 0x0400100C
_02018A5C: .word 0x0400100E
- thumb_func_start FUN_02018A60
-FUN_02018A60: ; 0x02018A60
+ thumb_func_start BlitBitmapRect4Bit
+BlitBitmapRect4Bit: ; 0x02018A60
push {r3-r7, lr}
sub sp, #0x68
str r2, [sp, #0x8]
@@ -4560,8 +4560,8 @@ _02018C92:
_02018C98: .word 0x0000FFFF
_02018C9C: .word 0x00003FE0
- thumb_func_start FUN_02018CA0
-FUN_02018CA0: ; 0x02018CA0
+ thumb_func_start BlitBitmapRect8Bit
+BlitBitmapRect8Bit: ; 0x02018CA0
push {r3-r7, lr}
sub sp, #0x50
str r2, [sp, #0x8]
@@ -5022,8 +5022,8 @@ _02018FEA:
nop
_02018FF0: .word 0x00007FC0
- thumb_func_start FUN_02018FF4
-FUN_02018FF4: ; 0x02018FF4
+ thumb_func_start AllocWindows
+AllocWindows: ; 0x02018FF4
push {r4-r6, lr}
add r5, r1, #0x0
lsl r1, r5, #0x4
@@ -5035,7 +5035,7 @@ FUN_02018FF4: ; 0x02018FF4
_02019006:
lsl r0, r4, #0x4
add r0, r6, r0
- bl FUN_0201901C
+ bl InitWindow
add r0, r4, #0x1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
@@ -5045,8 +5045,8 @@ _02019018:
add r0, r6, #0x0
pop {r4-r6, pc}
- thumb_func_start FUN_0201901C
-FUN_0201901C: ; 0x0201901C
+ thumb_func_start InitWindow
+InitWindow: ; 0x0201901C
mov r3, #0x0
str r3, [r0, #0x0]
mov r1, #0xff
@@ -5886,8 +5886,8 @@ FUN_0201960C: ; 0x0201960C
pop {r4, pc}
.balign 4
- thumb_func_start FUN_02019620
-FUN_02019620: ; 0x02019620
+ thumb_func_start FillWindowPixelBuffer
+FillWindowPixelBuffer: ; 0x02019620
push {r3-r5, lr}
add r4, r0, #0x0
ldrb r2, [r4, #0x4]
@@ -5917,8 +5917,8 @@ _0201963C:
bl MIi_CpuClearFast
pop {r3-r5, pc}
- thumb_func_start FUN_02019658
-FUN_02019658: ; 0x02019658
+ thumb_func_start BlitBitmapRectToWindow
+BlitBitmapRectToWindow: ; 0x02019658
push {r4-r5, lr}
sub sp, #0x1c
add r4, sp, #0x18
@@ -5936,13 +5936,13 @@ FUN_02019658: ; 0x02019658
str r4, [sp, #0x14]
mov r4, #0x0
str r4, [sp, #0x18]
- bl FUN_02019684
+ bl BlitBitmapRect
add sp, #0x1c
pop {r4-r5, pc}
.balign 4
- thumb_func_start FUN_02019684
-FUN_02019684: ; 0x02019684
+ thumb_func_start BlitBitmapRect
+BlitBitmapRect: ; 0x02019684
push {r4-r5, lr}
sub sp, #0x24
str r1, [sp, #0x1c]
@@ -5980,7 +5980,7 @@ FUN_02019684: ; 0x02019684
ldrh r0, [r4, #0x28]
str r0, [sp, #0x10]
add r0, sp, #0x1c
- bl FUN_02018A60
+ bl BlitBitmapRect4Bit
add sp, #0x24
pop {r4-r5, pc}
_020196D6:
@@ -5994,13 +5994,13 @@ _020196D6:
ldrh r0, [r4, #0x28]
str r0, [sp, #0x10]
add r0, sp, #0x1c
- bl FUN_02018CA0
+ bl BlitBitmapRect8Bit
add sp, #0x24
pop {r4-r5, pc}
.balign 4
- thumb_func_start FUN_020196F4
-FUN_020196F4: ; 0x020196F4
+ thumb_func_start FillWindowPixelRect
+FillWindowPixelRect: ; 0x020196F4
push {r3-r5, lr}
sub sp, #0x10
add r5, r1, #0x0
@@ -8422,8 +8422,8 @@ FUN_0201A8BC: ; 0x0201A8BC
nop
_0201A8C4: .word 0x00007FC0
- thumb_func_start FUN_0201A8C8
-FUN_0201A8C8: ; 0x0201A8C8
+ thumb_func_start ScrollWindow
+ScrollWindow: ; 0x0201A8C8
push {r4-r6, lr}
ldrb r6, [r0, #0x4]
mov r5, #0x2c
@@ -8752,13 +8752,13 @@ FUN_0201AB08: ; 0x0201AB08
ldrb r0, [r0, #0x4]
bx lr
- thumb_func_start FUN_0201AB0C
-FUN_0201AB0C: ; 0x0201AB0C
+ thumb_func_start GetWindowWidth
+GetWindowWidth: ; 0x0201AB0C
ldrb r0, [r0, #0x7]
bx lr
- thumb_func_start FUN_0201AB10
-FUN_0201AB10: ; 0x0201AB10
+ thumb_func_start GetWindowHeight
+GetWindowHeight: ; 0x0201AB10
ldrb r0, [r0, #0x8]
bx lr
diff --git a/arm9/asm/unk_02033F50.s b/arm9/asm/unk_02033F50.s
index a5439dfe..ed33e084 100644
--- a/arm9/asm/unk_02033F50.s
+++ b/arm9/asm/unk_02033F50.s
@@ -198,7 +198,7 @@ _02033FA4:
add r0, sp, #0x18
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _0203417C ; =0x000001F7
add r0, sp, #0x18
mov r1, #0x0
diff --git a/arm9/asm/unk_02034188.s b/arm9/asm/unk_02034188.s
index 44144564..08265835 100644
--- a/arm9/asm/unk_02034188.s
+++ b/arm9/asm/unk_02034188.s
@@ -138,7 +138,7 @@ FUN_02034188: ; 0x02034188
add r0, sp, #0x14
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _0203438C ; =0x000001F7
add r0, sp, #0x14
mov r1, #0x0
diff --git a/arm9/asm/unk_02035068.s b/arm9/asm/unk_02035068.s
index f0cdc150..c9df4ca4 100644
--- a/arm9/asm/unk_02035068.s
+++ b/arm9/asm/unk_02035068.s
@@ -639,7 +639,7 @@ FUN_0203549C: ; 0x0203549C
str r0, [sp, #0x18]
ldr r0, [sp, #0x14]
mov r1, #0xb
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r4, #0x24]
mov r5, #0x0
ldr r0, [sp, #0x14]
@@ -684,7 +684,7 @@ _02035526:
ldrb r2, [r2, #0x0]
ldr r0, [r4, #0x24]
add r1, r7, #0x0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldr r0, [sp, #0x20]
bl String_dtor
add r0, r7, #0x0
@@ -698,7 +698,7 @@ _02035594:
ldr r0, [r4, #0x24]
ldr r1, [sp, #0x18]
ldr r2, [r2, r6]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_020355A2:
ldr r0, [sp, #0x1c]
add r0, #0x8c
@@ -902,7 +902,7 @@ FUN_02035718: ; 0x02035718
mov r1, #0x0
bl FUN_02001C5C
ldr r0, [r4, #0x24]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x0
str r0, [r4, #0x20]
pop {r4, pc}
@@ -966,7 +966,7 @@ _0203576C:
add r0, r5, #0x0
add r0, #0x10
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0203589C ; =0x00000143
mov r0, #0x0
mov r1, #0x1a
@@ -1731,7 +1731,7 @@ FUN_02035DC8: ; 0x02035DC8
cmp r1, #0x0
beq _02035DF0
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_02035DF0:
mov r0, #0xc
strh r0, [r4, #0x2a]
@@ -3193,7 +3193,7 @@ FUN_02036A14: ; 0x02036A14
lsl r1, r1, #0x2
ldr r1, [r4, r1]
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0x73
lsl r1, r1, #0x2
add r0, r5, #0x0
@@ -3223,7 +3223,7 @@ FUN_02036A78: ; 0x02036A78
lsl r1, r1, #0x2
ldr r1, [r4, r1]
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0x73
lsl r1, r1, #0x2
add r0, r5, #0x0
@@ -3255,7 +3255,7 @@ FUN_02036AB8: ; 0x02036AB8
ldr r1, [r4, r0]
mov r0, #0xb
ldr r7, [r1, #0x0]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x7e
lsl r0, r0, #0x2
ldr r5, [r4, r0]
@@ -3264,7 +3264,7 @@ FUN_02036AB8: ; 0x02036AB8
bne _02036B0E
mov r0, #0xb
add r1, r5, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0x7a
lsl r1, r1, #0x2
lsl r2, r7, #0x18
@@ -3320,7 +3320,7 @@ _02036B0E:
lsl r1, r1, #0x2
ldr r1, [r4, r1]
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0x0
bl FUN_0204649C
mov r0, #0x72
diff --git a/arm9/asm/unk_02048120.s b/arm9/asm/unk_02048120.s
index 6f303045..7c046e25 100644
--- a/arm9/asm/unk_02048120.s
+++ b/arm9/asm/unk_02048120.s
@@ -209,7 +209,7 @@ _02048298:
add r0, r4, #0x0
add r0, #0xc
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x0]
add r0, r0, #0x1
str r0, [r4, #0x0]
@@ -263,7 +263,7 @@ FUN_020482F4: ; 0x020482F4
add r0, r5, #0x0
add r0, #0xc
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x1c]
ldr r1, [sp, #0x10]
add r2, r6, #0x0
diff --git a/arm9/asm/unk_020484A8.s b/arm9/asm/unk_020484A8.s
index 4750c7ea..929f1efa 100644
--- a/arm9/asm/unk_020484A8.s
+++ b/arm9/asm/unk_020484A8.s
@@ -343,7 +343,7 @@ FUN_02048764: ; 0x02048764
str r0, [r1, #0x30]
add r1, #0x1c
add r0, r1, #0x0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, _020487D4 ; =UNK_020F46B0
bl GX_SetBanks
ldr r2, _020487D8 ; =0x04000304
diff --git a/arm9/asm/unk_02050E48.s b/arm9/asm/unk_02050E48.s
index c8a8a153..fbe0aed9 100644
--- a/arm9/asm/unk_02050E48.s
+++ b/arm9/asm/unk_02050E48.s
@@ -1255,7 +1255,7 @@ _02051836:
bl FUN_02019178
add r0, r5, #0x0
add r0, #0x14
- bl FUN_0201901C
+ bl InitWindow
_02051846:
add r0, r5, #0x0
add r0, #0x54
@@ -1267,7 +1267,7 @@ _02051846:
bl FUN_02019178
add r0, r5, #0x0
add r0, #0x54
- bl FUN_0201901C
+ bl InitWindow
_02051862:
add r0, r5, #0x0
add r0, #0x64
@@ -1279,7 +1279,7 @@ _02051862:
bl FUN_02019178
add r5, #0x64
add r0, r5, #0x0
- bl FUN_0201901C
+ bl InitWindow
_0205187E:
pop {r3-r5, pc}
@@ -1325,15 +1325,15 @@ _0205188E:
str r0, [r4, #0x10]
add r0, r4, #0x0
add r0, #0x14
- bl FUN_0201901C
+ bl InitWindow
add r0, r4, #0x0
add r0, #0x54
- bl FUN_0201901C
+ bl InitWindow
add r0, r4, #0x0
add r0, #0x64
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0xb
- bl FUN_02013690
+ bl ListMenuCursorNew
str r0, [r4, #0x78]
bl FUN_02033534
add r1, r4, #0x0
@@ -1442,7 +1442,7 @@ _020519BA:
ldr r0, [r4, #0x10]
bl String_dtor
ldr r0, [r4, #0x78]
- bl FUN_020136C0
+ bl DestroyListMenuCursorObj
add r0, r4, #0x0
mov r1, #0x1
bl FUN_02051810
@@ -1711,7 +1711,7 @@ FUN_02051B68: ; 0x02051B68
bl FUN_0200CB00
ldr r0, [sp, #0x20]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r7, #0x0
add r6, r7, #0x0
add r4, r7, #0x0
@@ -1769,14 +1769,14 @@ _02051C34:
lsr r0, r0, #0x10
str r0, [sp, #0x4]
ldr r0, [sp, #0x20]
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r3, [sp, #0x14]
add r1, r5, #0x0
ldr r0, [r5, #0x78]
add r1, #0x54
mov r2, #0x0
lsl r3, r3, #0x4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
add r0, r5, #0x0
add r0, #0x54
mov r1, #0x0
@@ -1837,7 +1837,7 @@ FUN_02051C88: ; 0x02051C88
bl FUN_0200CB00
add r0, r7, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r6, #0x0
add r4, r6, #0x0
_02051CE0:
@@ -1880,13 +1880,13 @@ _02051D0A:
str r0, [sp, #0x4]
add r0, r7, #0x0
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r3, [sp, #0x14]
ldr r0, [r5, #0x78]
ldr r1, [r5, #0x7c]
mov r2, #0x0
lsl r3, r3, #0x4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
ldr r0, [r5, #0x7c]
mov r1, #0x0
mov r2, #0x1
@@ -1987,14 +1987,14 @@ _02051DE0:
lsr r1, r1, #0x10
str r1, [sp, #0x4]
mov r1, #0xf
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r3, #0x81
ldrsb r3, [r4, r3]
ldr r0, [r4, #0x78]
ldr r1, [r4, #0x7c]
mov r2, #0x0
lsl r3, r3, #0x4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
ldr r0, [r4, #0x7c]
bl FUN_02019548
mov r0, #0x0
diff --git a/arm9/asm/unk_02053750.s b/arm9/asm/unk_02053750.s
index 6ab54142..4724c308 100644
--- a/arm9/asm/unk_02053750.s
+++ b/arm9/asm/unk_02053750.s
@@ -1291,7 +1291,7 @@ FUN_020540C8: ; 0x020540C8
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_020540E4:
@@ -1408,7 +1408,7 @@ FUN_020541A4: ; 0x020541A4
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_020541C0:
@@ -1481,7 +1481,7 @@ FUN_02054228: ; 0x02054228
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_02054244:
@@ -1581,7 +1581,7 @@ FUN_020542E8: ; 0x020542E8
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_02054304:
@@ -1749,7 +1749,7 @@ FUN_0205442C: ; 0x0205442C
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_02054448:
@@ -1900,7 +1900,7 @@ FUN_0205454C: ; 0x0205454C
bl FUN_0201FFC8
ldr r1, [r4, #0x0]
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x0
str r0, [r4, #0x0]
_02054568:
diff --git a/arm9/asm/unk_02057380.s b/arm9/asm/unk_02057380.s
index c6a25876..ef4050e3 100644
--- a/arm9/asm/unk_02057380.s
+++ b/arm9/asm/unk_02057380.s
@@ -33,10 +33,10 @@ FUN_020573AC: ; 0x020573AC
bl FUN_020583CC
add r1, r0, #0x0
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0xb
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.balign 4
@@ -1035,10 +1035,10 @@ _02057C42:
blt _02057C1A
ldr r1, [r5, #0x10]
mov r0, #0xb
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0xb
add r1, r5, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r3-r7, pc}
thumb_func_start FUN_02057C64
diff --git a/arm9/asm/unk_0205AD98.s b/arm9/asm/unk_0205AD98.s
index bc0fa0dd..54448e61 100644
--- a/arm9/asm/unk_0205AD98.s
+++ b/arm9/asm/unk_0205AD98.s
@@ -212,7 +212,7 @@ _0205AF14:
bl FUN_0205AE50
mov r0, #0x4
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r5, #0x0
bl FUN_0200CAB4
pop {r3-r5, pc}
diff --git a/arm9/asm/unk_0205C598.s b/arm9/asm/unk_0205C598.s
index ac7a6808..d80c26b4 100644
--- a/arm9/asm/unk_0205C598.s
+++ b/arm9/asm/unk_0205C598.s
@@ -723,7 +723,7 @@ FUN_0205CAE0: ; 0x0205CAE0
bl FUN_0201B6C8
add r1, r0, #0x0
mov r0, #0x4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r4, #0x0
bl FUN_0200CAB4
pop {r4, pc}
diff --git a/arm9/asm/unk_020625EC.s b/arm9/asm/unk_020625EC.s
index 2ec122fa..fc235004 100644
--- a/arm9/asm/unk_020625EC.s
+++ b/arm9/asm/unk_020625EC.s
@@ -246,7 +246,7 @@ FUN_02062770: ; 0x02062770
add r4, r0, #0x0
add r0, #0xc0
ldr r0, [r0, #0x0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r1, _020627C8 ; =gMain
ldr r3, [r1, #0x48]
mov r1, #0x2
@@ -467,7 +467,7 @@ _0206290C:
_02062912:
add r0, #0xe4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x0
str r3, [sp, #0x0]
ldrh r0, [r4, #0x1a]
@@ -578,7 +578,7 @@ FUN_020629D8: ; 0x020629D8
_020629EE:
add r0, #0xe4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x0
str r3, [sp, #0x0]
ldrh r0, [r4, #0x1a]
@@ -1173,7 +1173,7 @@ FUN_02062DB0: ; 0x02062DB0
add r4, #0xe4
add r0, r4, #0x0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r3-r4, pc}
.balign 4
@@ -1361,7 +1361,7 @@ FUN_02063028: ; 0x02063028
ldr r1, [r5, #0x0]
add r7, r0, #0x1
add r0, r7, #0x0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0x0
add r1, #0xc4
str r0, [r1, #0x0]
@@ -1385,7 +1385,7 @@ FUN_02063028: ; 0x02063028
add r0, r5, #0x0
add r0, #0xd4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrb r0, [r5, #0x18]
mov r6, #0x0
cmp r0, #0x0
@@ -1397,7 +1397,7 @@ _0206307C:
ldr r0, [r0, #0x0]
ldr r1, [r4, #0x64]
add r2, r6, #0x0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldrb r0, [r5, #0x18]
add r6, r6, #0x1
add r4, r4, #0x4
@@ -1409,7 +1409,7 @@ _02063094:
ldr r0, [r0, #0x0]
ldr r1, [r5, #0x38]
ldr r2, _02063160 ; =0x0000FFFF
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r1, r5, #0x0
ldr r0, _02063164 ; =UNK_020F7C2C
add r1, #0xa0
@@ -1455,7 +1455,7 @@ _02063094:
ldr r2, [sp, #0x18]
add r0, #0xa0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
add r1, r5, #0x0
add r1, #0xc0
str r0, [r1, #0x0]
@@ -1474,7 +1474,7 @@ _02063094:
add r0, r5, #0x0
add r0, #0xe4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x0
str r3, [sp, #0x0]
ldr r0, _02063174 ; =0x0001020F
@@ -1515,11 +1515,11 @@ FUN_02063178: ; 0x02063178
ldr r0, [r0, #0x0]
add r1, #0x22
add r2, #0x24
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0x0
add r0, #0xc4
ldr r0, [r0, #0x0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0x0
add r0, #0xd4
bl FUN_02019570
@@ -1546,16 +1546,16 @@ FUN_020631C8: ; 0x020631C8
push {r3-r5, lr}
mov r1, #0x13
add r5, r0, #0x0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0x0
add r4, r0, #0x0
add r0, r5, #0x0
add r1, #0x2
add r2, sp, #0x0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, r5, #0x0
mov r1, #0x2
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r2, sp, #0x0
ldrh r3, [r2, #0x0]
ldrh r2, [r2, #0x2]
@@ -1579,7 +1579,7 @@ FUN_02063208: ; 0x02063208
add r4, r0, #0x0
add r0, #0xe4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x0
str r3, [sp, #0x0]
ldr r0, _02063234 ; =0x0001020F
@@ -1626,7 +1626,7 @@ FUN_02063264: ; 0x02063264
add r4, r0, #0x0
add r0, #0xe4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x0
str r3, [sp, #0x0]
ldr r0, _020632A0 ; =0x0001020F
@@ -1675,7 +1675,7 @@ FUN_020632A4: ; 0x020632A4
add r0, r4, #0x0
add r0, #0xd4
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x1
str r0, [sp, #0x1c]
mov r0, #0x0
@@ -1901,7 +1901,7 @@ FUN_02063430: ; 0x02063430
add r0, r4, #0x0
add r0, #0xf4
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0x0
str r1, [sp, #0x0]
ldr r0, _020634D8 ; =0x00010200
diff --git a/arm9/asm/unk_020643C0.s b/arm9/asm/unk_020643C0.s
index bc843c82..4a7b92d3 100644
--- a/arm9/asm/unk_020643C0.s
+++ b/arm9/asm/unk_020643C0.s
@@ -292,12 +292,12 @@ _020645F2:
thumb_func_start FUN_02064600
FUN_02064600: ; 0x02064600
- ldr r3, _02064608 ; =FUN_02016A8C
+ ldr r3, _02064608 ; =FreeToHeapExplicit
add r1, r0, #0x0
ldr r0, [r1, #0x8]
bx r3
.balign 4
-_02064608: .word FUN_02016A8C
+_02064608: .word FreeToHeapExplicit
thumb_func_start FUN_0206460C
FUN_0206460C: ; 0x0206460C
@@ -320,13 +320,13 @@ _02064622:
thumb_func_start FUN_02064630
FUN_02064630: ; 0x02064630
- ldr r3, _0206463C ; =FUN_02016A8C
+ ldr r3, _0206463C ; =FreeToHeapExplicit
add r1, r0, #0x0
ldr r0, [r1, #0x8]
ldr r1, [r1, #0xc]
bx r3
nop
-_0206463C: .word FUN_02016A8C
+_0206463C: .word FreeToHeapExplicit
thumb_func_start FUN_02064640
FUN_02064640: ; 0x02064640
diff --git a/arm9/asm/unk_020653EC.s b/arm9/asm/unk_020653EC.s
index 3d43d136..df203337 100644
--- a/arm9/asm/unk_020653EC.s
+++ b/arm9/asm/unk_020653EC.s
@@ -146,7 +146,7 @@ FUN_020654D0: ; 0x020654D0
add r5, r1, #0x0
lsl r0, r0, #0x4
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0x0
mov r0, #0x69
lsl r0, r0, #0x2
@@ -256,7 +256,7 @@ FUN_020655B0: ; 0x020655B0
add r4, r1, #0x0
lsl r0, r0, #0x4
ldr r0, [r4, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r5, r0, #0x0
ldr r0, _02065638 ; =gMain
mov r1, #0x2
@@ -967,16 +967,16 @@ FUN_02065AF4: ; 0x02065AF4
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x65
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrb r0, [r5, #0x1b]
ldr r1, [r5, #0x0]
add r0, r0, #0x1
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r1, #0x59
lsl r1, r1, #0x2
add r7, r5, #0x0
@@ -995,7 +995,7 @@ _02065B7E:
ldr r1, [r2, #0x8]
ldrb r2, [r2, #0x0]
ldr r0, [r5, r0]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r6, #0x1
lsl r0, r0, #0x18
lsr r6, r0, #0x18
@@ -1011,7 +1011,7 @@ _02065B9E:
sub r1, #0x4c
ldr r1, [r5, r1]
ldr r2, _02065CE0 ; =0x0000FFFF
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r6, #0x1
lsl r0, r0, #0x18
mov r1, #0x5
@@ -1110,7 +1110,7 @@ _02065C64:
lsl r3, r3, #0x18
ldrh r2, [r5, r2]
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0x16
lsl r1, r1, #0x4
str r0, [r5, r1]
@@ -1169,7 +1169,7 @@ FUN_02065CFC: ; 0x02065CFC
add r4, r1, #0x0
mov r1, #0x13
add r5, r0, #0x0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
ldr r1, _02065D48 ; =0x0000FFFF
cmp r4, r1
bne _02065D1C
@@ -1177,7 +1177,7 @@ FUN_02065CFC: ; 0x02065CFC
mov r1, #0x1
mov r2, #0xf
mov r3, #0x2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3-r5, pc}
_02065D1C:
mov r1, #0xc
@@ -1191,14 +1191,14 @@ _02065D1C:
mov r1, #0x3
mov r2, #0xf
mov r3, #0x4
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3-r5, pc}
_02065D38:
add r0, r5, #0x0
mov r1, #0x7
mov r2, #0xf
mov r3, #0x8
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3-r5, pc}
nop
_02065D48: .word 0x0000FFFF
@@ -1210,16 +1210,16 @@ FUN_02065D4C: ; 0x02065D4C
mov r1, #0x13
add r4, r0, #0x0
add r6, r2, #0x0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0x0
add r5, r0, #0x0
add r0, r4, #0x0
add r1, #0x2
add r2, sp, #0x0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, r4, #0x0
mov r1, #0x2
- bl FUN_02001470
+ bl ListMenuGetTemplateField
lsl r0, r0, #0x10
lsr r4, r0, #0x10
cmp r6, #0x0
@@ -1280,7 +1280,7 @@ FUN_02065DD8: ; 0x02065DD8
str r2, [sp, #0x4]
ldr r1, [r5, #0x0]
mov r0, #0x4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r1, #0x59
lsl r1, r1, #0x2
str r0, [r5, r1]
@@ -1295,7 +1295,7 @@ FUN_02065DD8: ; 0x02065DD8
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r7, #0x43
ldr r6, _02065ECC ; =UNK_020F7EAC
mov r4, #0x0
@@ -1309,7 +1309,7 @@ _02065E14:
ldr r1, [r5, r7]
ldr r2, [r6, r2]
ldr r3, [r3, #0x4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r4, #0x1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
@@ -1362,7 +1362,7 @@ _02065E14:
ldr r2, [sp, #0x4]
add r0, r5, r0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0x16
lsl r1, r1, #0x4
str r0, [r5, r1]
@@ -1418,11 +1418,11 @@ FUN_02065EF8: ; 0x02065EF8
ldr r0, [r4, r0]
add r1, #0x2
add r2, sp, #0x0
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x59
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x65
lsl r0, r0, #0x2
add r0, r4, r0
@@ -1495,11 +1495,11 @@ FUN_02065F8C: ; 0x02065F8C
ldr r0, [r4, r0]
add r1, #0x2
add r2, sp, #0x0
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x59
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x5d
lsl r0, r0, #0x2
add r0, r4, r0
@@ -2006,7 +2006,7 @@ FUN_02066334: ; 0x02066334
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r3-r4, pc}
.balign 4
@@ -2066,7 +2066,7 @@ _02066426:
add r0, r5, r1
mov r1, #0xff
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x1
bl FUN_02002B60
mov r0, #0x0
diff --git a/arm9/asm/unk_0206C700.s b/arm9/asm/unk_0206C700.s
index 879f7f48..3124976e 100644
--- a/arm9/asm/unk_0206C700.s
+++ b/arm9/asm/unk_0206C700.s
@@ -117,7 +117,7 @@ FUN_0206C700: ; 0x0206C700
str r0, [r4, #0x0]
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4, #0x4]
ldr r0, [sp, #0x18]
str r0, [r4, #0x2c]
@@ -147,7 +147,7 @@ FUN_0206C700: ; 0x0206C700
bl FUN_02019064
ldr r0, [r4, #0x4]
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x4]
mov r1, #0x0
mov r2, #0x1
@@ -2673,7 +2673,7 @@ FUN_0206DD6C: ; 0x0206DD6C
bl FreeToHeap
ldr r0, [r4, #0x4]
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x2c]
bl Options_GetTextFrameDelay
mov r3, #0x0
diff --git a/arm9/asm/unk_0206F3FC.s b/arm9/asm/unk_0206F3FC.s
index b7b79b0e..1a62b92b 100644
--- a/arm9/asm/unk_0206F3FC.s
+++ b/arm9/asm/unk_0206F3FC.s
@@ -781,7 +781,7 @@ _0206F914:
bl FUN_02001C5C
ldr r0, _0206F978 ; =0x000006F8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0x0
mov r1, #0x1d
mov r2, #0x1
@@ -1237,7 +1237,7 @@ FUN_0206FCD4: ; 0x0206FCD4
bl FUN_020178A0
mov r0, #0xc
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.balign 4
@@ -1293,7 +1293,7 @@ FUN_0206FD24: ; 0x0206FD24
bl memcpy
mov r0, #0xc
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0x1a
mov r0, #0x0
lsl r1, r1, #0x4
@@ -3729,7 +3729,7 @@ _02071146:
bl FUN_02072844
mov r0, #0xc
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r5, #0x0
bl FUN_0207295C
mov r1, #0x0
@@ -5223,7 +5223,7 @@ FUN_02071CB4: ; 0x02071CB4
lsl r1, r1, #0x4
add r0, r0, r1
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r6, #0x0
bl FUN_02072B7C
@@ -5645,7 +5645,7 @@ _02072054:
bl FUN_0200D0BC
add r0, r5, r7
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl FUN_0207322C
add r0, r4, #0x0
@@ -5902,7 +5902,7 @@ _02072282:
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl FUN_0207322C
mov r0, #0xb
@@ -6066,7 +6066,7 @@ _020723D6:
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl FUN_0207322C
ldr r0, _02072410 ; =0x000005A4
diff --git a/arm9/asm/unk_02072548.s b/arm9/asm/unk_02072548.s
index 5b3ed0a3..7cbbce8f 100644
--- a/arm9/asm/unk_02072548.s
+++ b/arm9/asm/unk_02072548.s
@@ -453,7 +453,7 @@ FUN_02072844: ; 0x02072844
bl FUN_02019064
ldr r0, [sp, #0x14]
mov r1, #0xc
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _0207294C ; =0x000006F8
mov r6, #0x0
str r0, [r5, r1]
@@ -473,7 +473,7 @@ _02072890:
ldr r1, _02072950 ; =0x000006E8
ldr r0, [r5, r0]
ldr r1, [r3, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r6, #0x1
lsl r0, r0, #0x10
lsr r6, r0, #0x10
@@ -488,7 +488,7 @@ _020728B4:
ldr r1, _02072954 ; =0x000006AC
ldr r0, [r5, r0]
ldr r1, [r3, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
_020728CC:
add r0, r4, #0x1
lsl r0, r0, #0x10
@@ -870,7 +870,7 @@ FUN_02072BBC: ; 0x02072BBC
add r0, r5, r4
mov r2, #0x4
add r3, r1, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, r4
bl FUN_02019220
add sp, #0x8
@@ -1000,7 +1000,7 @@ _02072CBE:
mov r1, #0xa
mov r2, #0x0
mov r3, #0x2
- bl FUN_020196F4
+ bl FillWindowPixelRect
str r5, [sp, #0x0]
mov r0, #0x2
str r0, [sp, #0x4]
@@ -1008,7 +1008,7 @@ _02072CBE:
mov r1, #0x9
mov r2, #0x0
mov r3, #0x3
- bl FUN_020196F4
+ bl FillWindowPixelRect
str r5, [sp, #0x0]
mov r0, #0x1
str r0, [sp, #0x4]
@@ -1016,7 +1016,7 @@ _02072CBE:
mov r1, #0xa
mov r2, #0x0
mov r3, #0x5
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r4, #0x0
bl FUN_02019220
add sp, #0xc
@@ -1042,14 +1042,14 @@ FUN_02072D1C: ; 0x02072D1C
str r0, [sp, #0x4]
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x1
lsl r0, r0, #0x4
add r7, r5, #0x4
str r0, [sp, #0x8]
add r0, r7, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r7, #0x0
str r0, [sp, #0xc]
add r0, r4, #0x2
@@ -1058,7 +1058,7 @@ FUN_02072D1C: ; 0x02072D1C
str r0, [sp, #0x10]
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r7, #0x0
str r0, [sp, #0x14]
add r0, r4, #0x3
@@ -1066,7 +1066,7 @@ FUN_02072D1C: ; 0x02072D1C
ldr r0, [sp, #0x14]
mov r1, #0x0
add r0, r0, r4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r6, #0x0
bl FUN_02072A54
@@ -1179,13 +1179,13 @@ FUN_02072E4C: ; 0x02072E4C
lsl r0, r6, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x1
add r1, r5, #0x4
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02072A54
@@ -1249,13 +1249,13 @@ FUN_02072EE4: ; 0x02072EE4
lsl r0, r6, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x1
add r1, r5, #0x4
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02072A54
@@ -1319,13 +1319,13 @@ FUN_02072F78: ; 0x02072F78
lsl r0, r6, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x1
add r1, r5, #0x4
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02072A54
@@ -1367,13 +1367,13 @@ FUN_02072FDC: ; 0x02072FDC
lsl r0, r6, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x1
add r1, r5, #0x4
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
add r1, r4, #0x0
bl FUN_02072A54
@@ -1463,12 +1463,12 @@ FUN_02073094: ; 0x02073094
add r4, r1, #0x0
add r0, r5, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x7d
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x1
tst r0, r4
beq _020730FE
@@ -1563,7 +1563,7 @@ FUN_02073160: ; 0x02073160
_0207317A:
add r0, r4, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x0
mvn r0, r0
cmp r6, r0
@@ -1634,7 +1634,7 @@ FUN_020731E8: ; 0x020731E8
_02073202:
add r0, r5, r6
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x0
mvn r0, r0
cmp r4, r0
@@ -1763,7 +1763,7 @@ FUN_020732F4: ; 0x020732F4
add r0, r4, r6
mov r1, #0x0
add r7, r2, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r7, #0x0
beq _02073318
cmp r7, #0x1
@@ -1817,7 +1817,7 @@ FUN_02073364: ; 0x02073364
add r0, r4, r7
mov r1, #0x0
add r6, r2, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r6, #0x0
beq _0207338C
cmp r6, #0x1
@@ -1880,7 +1880,7 @@ FUN_020733E4: ; 0x020733E4
add r0, r4, r6
mov r1, #0x0
add r7, r2, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r7, #0x0
ldr r0, _02073440 ; =0x0000069C
bne _0207340E
@@ -1928,7 +1928,7 @@ FUN_02073448: ; 0x02073448
add r0, r4, r7
mov r1, #0x0
add r6, r2, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r6, #0x6
ldr r0, _020734B8 ; =0x0000069C
bhs _02073476
@@ -2046,7 +2046,7 @@ FUN_020734C0: ; 0x020734C0
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r4, #0x0
str r4, [sp, #0x14]
add r7, r5, #0x0
@@ -2158,7 +2158,7 @@ FUN_0207363C: ; 0x0207363C
mov r1, #0xf
mov r2, #0x50
mov r3, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _020736E8 ; =0x0000069C
mov r1, #0xc0
ldr r0, [r5, r0]
diff --git a/arm9/asm/unk_02073DA8.s b/arm9/asm/unk_02073DA8.s
index 6635b399..9cac1662 100644
--- a/arm9/asm/unk_02073DA8.s
+++ b/arm9/asm/unk_02073DA8.s
@@ -46,7 +46,7 @@ FUN_02073DB4: ; 0x02073DB4
bl FUN_02001C5C
ldr r0, _02073DF0 ; =0x000006F8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x95
lsl r0, r0, #0x2
add r0, r4, r0
@@ -69,7 +69,7 @@ FUN_02073DF4: ; 0x02073DF4
bl FUN_020731D4
mov r0, #0x3
mov r1, #0xc
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02073EB0 ; =0x000006F8
str r0, [r5, r1]
mov r0, #0x3
@@ -79,7 +79,7 @@ FUN_02073DF4: ; 0x02073DF4
ldr r0, [r5, r1]
sub r1, #0x40
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x4
bl FUN_02073DA8
ldr r1, _02073EB0 ; =0x000006F8
@@ -87,7 +87,7 @@ FUN_02073DF4: ; 0x02073DF4
ldr r0, [r5, r1]
sub r1, #0x3c
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x9
bl FUN_02073DA8
ldr r1, _02073EB0 ; =0x000006F8
@@ -95,7 +95,7 @@ FUN_02073DF4: ; 0x02073DF4
ldr r0, [r5, r1]
sub r1, #0x28
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldr r0, _02073EB0 ; =0x000006F8
mov r1, #0x0
ldr r0, [r5, r0]
@@ -155,7 +155,7 @@ FUN_02073EB8: ; 0x02073EB8
bl FUN_02001C5C
ldr r0, _02073EE4 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02073EE8 ; =0x000005A4
mov r1, #0x3
ldr r0, [r5, r0]
@@ -186,7 +186,7 @@ FUN_02073EEC: ; 0x02073EEC
bl FUN_02001C5C
ldr r0, _02074048 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _0207404C ; =0x00000B25
ldrb r1, [r5, r0]
mov r0, #0x2c
@@ -316,7 +316,7 @@ _02074018:
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl FUN_0207322C
mov r0, #0xf
@@ -381,7 +381,7 @@ FUN_020740AC: ; 0x020740AC
bl FUN_020731D4
mov r0, #0x3
mov r1, #0xc
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02074168 ; =0x000006F8
str r0, [r5, r1]
mov r0, #0x6
@@ -391,7 +391,7 @@ FUN_020740AC: ; 0x020740AC
ldr r0, [r5, r1]
sub r1, #0x34
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x7
bl FUN_02073DA8
ldr r1, _02074168 ; =0x000006F8
@@ -399,7 +399,7 @@ FUN_020740AC: ; 0x020740AC
ldr r0, [r5, r1]
sub r1, #0x30
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x9
bl FUN_02073DA8
ldr r1, _02074168 ; =0x000006F8
@@ -407,7 +407,7 @@ FUN_020740AC: ; 0x020740AC
ldr r0, [r5, r1]
sub r1, #0x28
ldr r1, [r5, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldr r0, _02074168 ; =0x000006F8
mov r1, #0x0
ldr r0, [r5, r0]
@@ -467,7 +467,7 @@ FUN_02074170: ; 0x02074170
bl FUN_02001C5C
ldr r0, _0207419C ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _020741A0 ; =0x000005A4
mov r1, #0x7
ldr r0, [r5, r0]
@@ -497,7 +497,7 @@ FUN_020741A4: ; 0x020741A4
bl FUN_02001C5C
ldr r0, _020741F0 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0x0
mov r1, #0x2b
mov r2, #0x1
@@ -744,7 +744,7 @@ FUN_020743AC: ; 0x020743AC
bl FUN_02001C5C
ldr r0, _02074414 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02074418 ; =0x000005A4
mov r1, #0x0
ldr r0, [r5, r0]
@@ -1672,7 +1672,7 @@ _02074B6A:
add r1, r7, #0x0
str r0, [r3, #0x0]
mov r0, #0xc
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0x3
lsl r1, r1, #0x8
ldrb r3, [r4, r1]
@@ -2324,7 +2324,7 @@ FUN_02075090: ; 0x02075090
bl FUN_02001C5C
ldr r0, _020750C0 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
@@ -2349,7 +2349,7 @@ FUN_020750C4: ; 0x020750C4
bl FUN_02001C5C
ldr r0, _020750F4 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x1b
str r0, [r4, #0x0]
pop {r3-r5, pc}
@@ -2482,7 +2482,7 @@ _020751E4:
bl FUN_02001C5C
ldr r0, _0207523C ; =0x000006F8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x1b
str r0, [r6, #0x0]
pop {r4-r6, pc}
diff --git a/arm9/asm/unk_0207550C.s b/arm9/asm/unk_0207550C.s
index 14488621..9e2ab9b0 100644
--- a/arm9/asm/unk_0207550C.s
+++ b/arm9/asm/unk_0207550C.s
@@ -1403,7 +1403,7 @@ _020760D4:
lsl r1, r1, #0x4
add r0, r0, r1
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _02076134 ; =0x00000B25
add r0, r5, #0x0
ldrb r1, [r5, r1]
@@ -1672,7 +1672,7 @@ _020762DC:
lsl r1, r1, #0x4
add r0, r0, r1
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _020763E0 ; =0x00000B25
add r0, r4, #0x0
ldrb r1, [r4, r1]
@@ -3174,7 +3174,7 @@ FUN_02076FB0: ; 0x02076FB0
mov r2, #0x2
ldr r1, [r5, r1]
mvn r2, r2
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x0
pop {r3-r7, pc}
_0207701C:
@@ -3182,7 +3182,7 @@ _0207701C:
sub r1, #0x50
ldr r1, [r5, r1]
add r2, r6, #0x0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
mov r0, #0x1
pop {r3-r7, pc}
.balign 4
@@ -3209,7 +3209,7 @@ _02077050:
_02077058:
mov r0, #0x4
mov r1, #0xc
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02077108 ; =0x000006F8
str r0, [r4, r1]
add r0, r4, #0x0
@@ -3328,7 +3328,7 @@ _02077130:
bl FUN_02001C5C
ldr r0, _02077230 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0x0
mov r1, #0x20
mov r2, #0x1
@@ -3353,7 +3353,7 @@ _0207716A:
bl FUN_02001C5C
ldr r0, _02077230 ; =0x000006F8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02077234 ; =0x000005A4
ldr r6, [r5, r0]
add r0, r5, #0x0
diff --git a/arm9/asm/unk_020772F0.s b/arm9/asm/unk_020772F0.s
index a5d7b26d..16a7190f 100644
--- a/arm9/asm/unk_020772F0.s
+++ b/arm9/asm/unk_020772F0.s
@@ -1013,7 +1013,7 @@ _02077594:
ldr r0, _020776B0 ; =0x00000448
mov r1, #0xf
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _020776B0 ; =0x00000448
mov r2, #0x1
add r0, r4, r0
@@ -1509,18 +1509,18 @@ _02077982:
ldr r1, _02077A70 ; =0x000004AC
mov r0, #0x12
ldr r1, [r4, r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [r4, #0x0]
cmp r0, #0x1
bne _020779C2
ldr r1, _02077A74 ; =0x000004B4
mov r0, #0x12
ldr r1, [r4, r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r1, _02077A78 ; =0x000004BC
mov r0, #0x12
ldr r1, [r4, r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_020779C2:
mov r0, #0x16
lsl r0, r0, #0x4
@@ -2250,7 +2250,7 @@ _02077FB0:
bl FUN_020178A0
mov r0, #0x12
add r1, r6, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4-r6, pc}
thumb_func_start FUN_02077FE8
@@ -3359,7 +3359,7 @@ FUN_020788C4: ; 0x020788C4
_020788DE:
add r0, r5, #0x0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0x0
str r1, [sp, #0x0]
ldr r0, _02078908 ; =0x000E0F01
@@ -3524,7 +3524,7 @@ _020789D8:
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x3
str r0, [sp, #0x0]
mov r0, #0x7
@@ -3548,7 +3548,7 @@ _020789D8:
ldr r0, _02078B74 ; =0x00000438
mov r1, #0x1
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r5, #0x0]
cmp r1, #0x5
bne _02078A90
@@ -3581,7 +3581,7 @@ _02078A90:
ldr r0, _02078B78 ; =0x00000448
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0x5e
ldr r0, _02078B78 ; =0x00000448
lsl r2, r2, #0x2
@@ -3640,7 +3640,7 @@ _02078B0E:
bl FUN_02019064
add r0, r7, r6
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r4, #0x1
cmp r4, #0x3
blt _02078B0E
@@ -3661,7 +3661,7 @@ _02078B0E:
ldr r0, _02078B84 ; =0x00000428
mov r1, #0x0
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r4-r7, pc}
.balign 4
@@ -4119,7 +4119,7 @@ _02078EB4:
mov r2, #0x0
ldr r0, [sp, #0x18]
add r3, r2, #0x0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
b _02078F56
_02078F00:
ldr r0, _02078F78 ; =0x0000D004
@@ -4212,7 +4212,7 @@ FUN_02078FA0: ; 0x02078FA0
mov r1, #0x0
add r5, r2, #0x0
add r4, r3, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x0
ldr r3, _0207906C ; =0x000D0E0F
add r0, #0x30
@@ -4266,7 +4266,7 @@ _02079012:
strh r1, [r0, #0x2]
add r0, r6, r7
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
add r1, sp, #0xc
bl CopyU16ArrayToString
@@ -4563,7 +4563,7 @@ _0207924A:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xc
str r0, [sp, #0x0]
mov r2, #0x0
@@ -4599,7 +4599,7 @@ _0207927C:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xc
str r0, [sp, #0x0]
mov r2, #0x0
@@ -4632,7 +4632,7 @@ _020792CA:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xc
str r0, [sp, #0x0]
mov r2, #0x0
@@ -4708,7 +4708,7 @@ _0207936A:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x56
lsl r0, r0, #0x2
ldrh r0, [r4, r0]
@@ -4835,7 +4835,7 @@ _02079470:
lsl r0, r0, #0x2
add r0, r4, r0
mov r1, #0x1
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xc
str r0, [sp, #0x0]
mov r2, #0x0
@@ -5203,7 +5203,7 @@ FUN_0207974C: ; 0x0207974C
add r5, r0, #0x0
str r3, [sp, #0x14]
str r2, [sp, #0x30]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _0207982C ; =UNK_020F9D30
ldr r0, [sp, #0x10]
mov r7, #0x0
@@ -5219,7 +5219,7 @@ _0207976C:
add r1, r4, #0x0
lsr r2, r2, #0x10
mov r3, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0x13
@@ -5229,7 +5229,7 @@ _0207976C:
add r1, r4, #0x0
lsr r2, r2, #0x10
mov r3, #0x26
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0x13
@@ -5239,7 +5239,7 @@ _0207976C:
add r1, r4, #0x0
lsr r2, r2, #0x10
mov r3, #0x4c
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r7, r7, #0x1
add r6, #0x20
cmp r7, #0x6
@@ -5256,7 +5256,7 @@ _020797BA:
add r1, r4, #0x0
lsr r2, r2, #0x10
mov r3, #0x13
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x10
str r0, [sp, #0x0]
mov r0, #0x13
@@ -5266,7 +5266,7 @@ _020797BA:
add r1, r4, #0x0
lsr r2, r2, #0x10
mov r3, #0x39
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r7, r7, #0x1
add r6, #0x20
cmp r7, #0x7
diff --git a/arm9/asm/unk_02079C70.s b/arm9/asm/unk_02079C70.s
index 722c8144..617a122a 100644
--- a/arm9/asm/unk_02079C70.s
+++ b/arm9/asm/unk_02079C70.s
@@ -533,7 +533,7 @@ FUN_0207A08C: ; 0x0207A08C
bl FUN_020178A0
mov r0, #0x13
add r1, r4, #0x0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.balign 4
diff --git a/arm9/asm/unk_0207D5BC.s b/arm9/asm/unk_0207D5BC.s
index 2546b905..5a814a79 100644
--- a/arm9/asm/unk_0207D5BC.s
+++ b/arm9/asm/unk_0207D5BC.s
@@ -82,7 +82,7 @@ _0207D5C4:
bl FUN_02019150
add r0, r4, r6
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x1
lsl r0, r0, #0x10
lsr r5, r0, #0x10
@@ -190,7 +190,7 @@ _0207D692:
mov r0, #0x13
lsl r1, r1, #0x18
lsr r1, r1, #0x18
- bl FUN_02018FF4
+ bl AllocWindows
mov r1, #0x91
lsl r1, r1, #0x2
str r0, [r4, r1]
@@ -300,7 +300,7 @@ FUN_0207D768: ; 0x0207D768
lsl r4, r4, #0x2
add r0, r5, r4
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0x0
add r2, r4, #0x0
str r1, [sp, #0x0]
@@ -371,7 +371,7 @@ FUN_0207D800: ; 0x0207D800
lsl r6, r6, #0x2
add r0, r5, r6
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0x0
add r0, #0x8c
ldr r0, [r5, r0]
@@ -444,7 +444,7 @@ FUN_0207D8A0: ; 0x0207D8A0
lsl r0, r0, #0x2
add r0, r5, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0207D918 ; =0x0000025E
ldrh r2, [r5, r0]
cmp r2, #0x0
@@ -504,7 +504,7 @@ FUN_0207D924: ; 0x0207D924
add r4, r1, #0x0
add r0, r5, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x0
str r0, [sp, #0x0]
ldr r3, _0207D954 ; =0x000F0E00
@@ -581,7 +581,7 @@ _0207D9B4:
lsl r0, r0, #0x18
lsr r5, r0, #0x18
add r0, r6, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #0x1b
lsr r0, r0, #0x18
sub r0, r0, r5
@@ -598,7 +598,7 @@ _0207D9D8:
lsl r0, r0, #0x18
lsr r5, r0, #0x18
add r0, r6, #0x0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #0x1b
lsr r0, r0, #0x18
sub r1, r0, r5
@@ -1151,37 +1151,37 @@ FUN_0207DE3C: ; 0x0207DE3C
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0x93
lsl r1, r1, #0x2
ldr r0, [r4, r1]
@@ -1522,7 +1522,7 @@ FUN_0207E190: ; 0x0207E190
lsl r0, r0, #0x2
ldr r0, [r5, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl FUN_0207B628
add r6, r0, #0x0
@@ -1601,53 +1601,53 @@ FUN_0207E200: ; 0x0207E200
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x60
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x70
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
- bl FUN_0201AB0C
+ bl GetWindowWidth
mov r1, #0x76
str r1, [sp, #0x0]
mov r1, #0x9d
@@ -1875,7 +1875,7 @@ _0207E4C6:
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0207E584 ; =0x00000674
mov r1, #0xa5
ldr r0, [r4, r2]
@@ -1929,7 +1929,7 @@ _0207E4C6:
sub r0, #0x8
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0207E584 ; =0x00000674
mov r1, #0xa3
ldr r0, [r4, r2]
@@ -1991,25 +1991,25 @@ _0207E5BC:
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0x0
bl FUN_0207EA44
@@ -2074,25 +2074,25 @@ _0207E678:
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0x0
bl FUN_0207EA44
@@ -2144,7 +2144,7 @@ FUN_0207E70C: ; 0x0207E70C
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x0
str r0, [sp, #0x0]
ldr r2, _0207E780 ; =0x00000699
@@ -2214,7 +2214,7 @@ _0207E7BC:
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0207E830 ; =0x00000674
mov r1, #0xa5
ldr r0, [r4, r2]
@@ -2278,7 +2278,7 @@ FUN_0207E840: ; 0x0207E840
ldr r0, [r5, r0]
mov r1, #0x0
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0207E994 ; =0x00000674
mov r1, #0xba
ldr r0, [r5, r0]
@@ -2436,13 +2436,13 @@ FUN_0207E9A0: ; 0x0207E9A0
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0207EA34 ; =0x0000069A
mov r1, #0x3
ldrb r0, [r4, r0]
@@ -2659,19 +2659,19 @@ FUN_0207EB64: ; 0x0207EB64
ldr r0, [r5, r0]
mov r1, #0x0
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r5, r0]
mov r1, #0x0
add r0, #0x60
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r0, [r5, r0]
mov r1, #0x0
add r0, #0x70
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0x2
bl GetWazaAttr
@@ -2819,7 +2819,7 @@ FUN_0207ECDC: ; 0x0207ECDC
ldr r0, [r4, r0]
mov r1, #0x0
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0x4
bl FUN_0207EA44
@@ -2862,7 +2862,7 @@ FUN_0207ED30: ; 0x0207ED30
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x91
lsl r0, r0, #0x2
ldr r1, [r4, r0]
@@ -2873,7 +2873,7 @@ FUN_0207ED30: ; 0x0207ED30
lsl r0, r0, #0x4
add r0, r1, r0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _0207EDB0 ; =0x0000068D
add r0, r4, #0x0
ldrb r1, [r4, r1]
@@ -2946,7 +2946,7 @@ _0207EDEE:
_0207EDF6:
add r0, r4, #0x0
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0207EE24 ; =0x00000674
mov r1, #0x9c
ldr r0, [r5, r2]
@@ -2977,7 +2977,7 @@ FUN_0207EE2C: ; 0x0207EE2C
add r4, r1, #0x0
add r0, #0x50
mov r1, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0x0
mov r1, #0xa
bl GetWazaAttr
@@ -3098,7 +3098,7 @@ _0207EF10:
bl FUN_0200D0BC
add r0, r6, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _0207EF64 ; =0x00000674
add r1, r5, #0x0
ldr r0, [r4, r2]
diff --git a/arm9/asm/unk_02086414.s b/arm9/asm/unk_02086414.s
index 7e7745fe..94945259 100644
--- a/arm9/asm/unk_02086414.s
+++ b/arm9/asm/unk_02086414.s
@@ -517,7 +517,7 @@ FUN_02086784: ; 0x02086784
add r0, r5, #0x0
add r4, r2, #0x0
add r6, r3, #0x0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [sp, #0x28]
lsl r2, r4, #0x18
lsl r0, r0, #0x18
@@ -552,7 +552,7 @@ FUN_02086784: ; 0x02086784
bl FUN_0200D0BC
add r0, r5, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0x0
bl CopyWindowToVram
add sp, #0x14
@@ -567,7 +567,7 @@ FUN_020867EC: ; 0x020867EC
str r0, [sp, #0xc]
str r2, [sp, #0x10]
add r6, r3, #0x0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _02086874 ; =0x0000013F
mov r0, #0x0
mov r1, #0x1a
@@ -627,7 +627,7 @@ FUN_02086878: ; 0x02086878
add r6, r1, #0x0
str r2, [sp, #0x14]
add r4, r3, #0x0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [sp, #0x3c]
ldr r3, [sp, #0x38]
lsl r0, r0, #0x18
@@ -658,7 +658,7 @@ FUN_02086878: ; 0x02086878
bl FUN_02019064
mov r0, #0x2
mov r1, #0x47
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x44]
ldr r2, _0208695C ; =0x0000013F
mov r0, #0x0
@@ -675,7 +675,7 @@ _020868DE:
ldr r0, [r5, #0x44]
add r1, r6, #0x0
add r2, r4, #0x0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r6, #0x0
bl String_dtor
add r4, r4, #0x1
@@ -744,7 +744,7 @@ FUN_02086960: ; 0x02086960
mov r1, #0x0
bl FUN_02001C5C
ldr r0, [r4, #0x44]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
pop {r4, pc}
thumb_func_start FUN_0208698C
diff --git a/arm9/asm/unk_02089498.s b/arm9/asm/unk_02089498.s
index b4c7a133..3facd182 100644
--- a/arm9/asm/unk_02089498.s
+++ b/arm9/asm/unk_02089498.s
@@ -360,7 +360,7 @@ FUN_02089734: ; 0x02089734
add r0, r4, #0x0
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #0x8
pop {r4, pc}
nop
@@ -539,7 +539,7 @@ _020898B8:
mov r1, #0xf
add r2, r6, #0x0
add r3, r6, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, #0x0
ldr r2, _02089958 ; =0x000001E2
add r0, #0x1c
diff --git a/arm9/asm/unk_02089960.s b/arm9/asm/unk_02089960.s
index 4502d1f9..9c06a4ab 100644
--- a/arm9/asm/unk_02089960.s
+++ b/arm9/asm/unk_02089960.s
@@ -299,7 +299,7 @@ FUN_02089B80: ; 0x02089B80
add r0, r4, #0x0
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #0x8
pop {r4, pc}
nop
@@ -466,7 +466,7 @@ _02089CE8:
mov r1, #0xf
add r2, r6, #0x0
add r3, r6, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, #0x0
ldr r2, _02089D88 ; =0x000001E2
add r0, #0x20
diff --git a/arm9/asm/unk_02089D90.s b/arm9/asm/unk_02089D90.s
index 92b9e987..e7b88272 100644
--- a/arm9/asm/unk_02089D90.s
+++ b/arm9/asm/unk_02089D90.s
@@ -137,7 +137,7 @@ FUN_02089D90: ; 0x02089D90
add r0, sp, #0xc
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _02089F18 ; =0x000001F7
add r0, sp, #0xc
mov r1, #0x0
diff --git a/arm9/asm/unk_02089F24.s b/arm9/asm/unk_02089F24.s
index b678254c..b5c93a8a 100644
--- a/arm9/asm/unk_02089F24.s
+++ b/arm9/asm/unk_02089F24.s
@@ -141,7 +141,7 @@ FUN_02089F24: ; 0x02089F24
add r0, sp, #0xc
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _0208A0AC ; =0x000001F7
add r0, sp, #0xc
mov r1, #0x0
@@ -310,7 +310,7 @@ _0208A0C8:
add r0, sp, #0xc
mov r1, #0xf
add r3, r2, #0x0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _0208A24C ; =0x000001F7
add r0, sp, #0xc
mov r1, #0x0
diff --git a/arm9/asm/unk_0208A338.s b/arm9/asm/unk_0208A338.s
index 2be81a9f..bafa4c91 100644
--- a/arm9/asm/unk_0208A338.s
+++ b/arm9/asm/unk_0208A338.s
@@ -36,7 +36,7 @@ FUN_0208A338: ; 0x0208A338
bl NewMsgDataFromNarc
str r0, [r4, #0x10]
mov r0, #0x20
- bl FUN_02013690
+ bl ListMenuCursorNew
str r0, [r4, #0x14]
ldr r2, [r4, #0x0]
mov r0, #0x2
@@ -48,13 +48,13 @@ FUN_0208A338: ; 0x0208A338
bl FUN_020853DC
add r0, r4, #0x0
add r0, #0x18
- bl FUN_0201901C
+ bl InitWindow
add r0, r4, #0x0
add r0, #0x28
- bl FUN_0201901C
+ bl InitWindow
add r0, r4, #0x0
add r0, #0x38
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0x0
str r0, [r4, #0x54]
ldr r1, _0208A3C4 ; =FUN_0208A458
@@ -73,7 +73,7 @@ FUN_0208A3C8: ; 0x0208A3C8
ldr r0, [r4, #0x50]
bl FUN_020853A8
ldr r0, [r4, #0x14]
- bl FUN_020136C0
+ bl DestroyListMenuCursorObj
ldr r0, [r4, #0x4]
bl String_dtor
ldr r0, [r4, #0x8]
@@ -102,7 +102,7 @@ FUN_0208A400: ; 0x0208A400
bl FUN_02019178
add r0, r4, #0x0
add r0, #0x18
- bl FUN_0201901C
+ bl InitWindow
_0208A41E:
add r0, r4, #0x0
add r0, #0x28
@@ -114,7 +114,7 @@ _0208A41E:
bl FUN_02019178
add r0, r4, #0x0
add r0, #0x28
- bl FUN_0201901C
+ bl InitWindow
_0208A43A:
add r0, r4, #0x0
add r0, #0x38
@@ -126,7 +126,7 @@ _0208A43A:
bl FUN_02019178
add r4, #0x38
add r0, r4, #0x0
- bl FUN_0201901C
+ bl InitWindow
_0208A456:
pop {r4, pc}
@@ -556,7 +556,7 @@ FUN_0208A77C: ; 0x0208A77C
bl FUN_02019064
add r0, r7, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r6, #0x0
add r4, r6, #0x0
_0208A7D2:
@@ -583,7 +583,7 @@ _0208A7D2:
ldr r0, [r5, #0x14]
add r1, r7, #0x0
add r3, r2, #0x0
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
_0208A808:
str r7, [r5, #0x68]
mov r1, #0x0
@@ -644,7 +644,7 @@ FUN_0208A82C: ; 0x0208A82C
bl FUN_02019064
add r0, r7, #0x0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r6, #0x0
add r4, r6, #0x0
_0208A882:
@@ -671,7 +671,7 @@ _0208A882:
ldr r0, [r5, #0x14]
add r1, r7, #0x0
add r3, r2, #0x0
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
_0208A8B8:
str r7, [r5, #0x68]
mov r1, #0x0
@@ -771,13 +771,13 @@ _0208A954:
lsr r1, r1, #0x10
str r1, [sp, #0x4]
mov r1, #0xf
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r3, [r4, #0x5c]
ldr r0, [r4, #0x14]
ldr r1, [r4, #0x68]
mov r2, #0x0
lsl r3, r3, #0x4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
ldr r0, [r4, #0x68]
bl FUN_02019548
ldr r0, _0208A994 ; =0x000005DC
diff --git a/arm9/global.inc b/arm9/global.inc
index 71b29db9..b3f4dcbb 100644
--- a/arm9/global.inc
+++ b/arm9/global.inc
@@ -188,21 +188,21 @@
.extern FUN_02000EE8
.extern FUN_02000F18
.extern HandleDSLidAction
-.extern FUN_020010A8
-.extern FUN_02001204
-.extern FUN_02001300
-.extern FUN_02001328
-.extern FUN_02001354
-.extern FUN_020013C8
-.extern FUN_020013E8
-.extern FUN_0200143C
-.extern FUN_02001448
-.extern FUN_0200145C
-.extern FUN_02001464
-.extern FUN_02001470
-.extern FUN_02001538
-.extern FUN_02001658
-.extern FUN_02001B80
+.extern ListMenuInit
+.extern ListMenu_ProcessInput
+.extern DestroyListMenu
+.extern RedrawListMenu
+.extern ListMenuTestInputInternal
+.extern ListMenuTestInput
+.extern ListMenuOverrideSetColors
+.extern ListMenuGetCurrentItemArrayId
+.extern ListMenuGetScrollAndRow
+.extern ListMenuGetUnk33
+.extern ListMenuGetValueByArrayId
+.extern ListMenuGetTemplateField
+.extern ListMenuSetTemplateField
+.extern ListMenuGetItemStr
+.extern ListMenuCopyToVram
.extern FUN_02001B8C
.extern FUN_02001C14
.extern FUN_02001C34
@@ -236,7 +236,7 @@
.extern FontFunc
.extern FUN_02002DE0
.extern FUN_02002E14
-.extern FUN_02002E4C
+.extern GetFontAttribute
.extern FUN_02002ED0
.extern FUN_02002EEC
.extern FUN_02002F08
@@ -810,12 +810,12 @@
.extern GF_RTC_GetTimeOfDay
.extern GF_RTC_GetTimeOfDayByHour
.extern FUN_020127C0
-.extern ListMenu_ctor
-.extern ListMenu_dtor
-.extern ListMenu_ItemFromMsgData
-.extern ListMenu_AddItem
-.extern ListMenu_CopyItem
-.extern ListMenu_DestroyMenuStrings
+.extern ListMenuItems_ctor
+.extern ListMenuItems_dtor
+.extern ListMenuItems_AppendFromMsgData
+.extern ListMenuItems_AddItem
+.extern ListMenuItems_CopyItem
+.extern ListMenuItems_DestroyMenuStrings
.extern FUN_02012944
.extern FUN_02012974
.extern FUN_02012988
@@ -882,10 +882,10 @@
.extern FUN_02013628
.extern FUN_0201365C
.extern FUN_02013674
-.extern FUN_02013690
-.extern FUN_020136C0
-.extern FUN_020136E0
-.extern FUN_020136F8
+.extern ListMenuCursorNew
+.extern DestroyListMenuCursorObj
+.extern ListMenuCursorSetColor
+.extern ListMenuUpdateCursorObj
.extern MailMsg_init
.extern MailMsg_init_withBank
.extern MailMsg_init_default
@@ -1029,7 +1029,7 @@
.extern AllocFromHeap
.extern AllocFromHeapAtEnd
.extern FreeToHeap
-.extern FUN_02016A8C
+.extern FreeToHeapExplicit
.extern FUN_02016AF8
.extern FUN_02016B20
.extern FUN_02016B44
@@ -1068,10 +1068,10 @@
.extern FUN_0201886C
.extern FUN_02018878
.extern FUN_02018884
-.extern FUN_02018A60
+.extern BlitBitmapRect4Bit
.extern FUN_02018F4C
-.extern FUN_02018FF4
-.extern FUN_0201901C
+.extern AllocWindows
+.extern InitWindow
.extern FUN_02019048
.extern FUN_02019064
.extern FUN_020190EC
@@ -1098,15 +1098,15 @@
.extern FUN_020195D0
.extern FUN_020195E4
.extern FUN_0201960C
-.extern FUN_02019620
-.extern FUN_02019658
-.extern FUN_02019684
-.extern FUN_020196F4
+.extern FillWindowPixelBuffer
+.extern BlitBitmapRectToWindow
+.extern BlitBitmapRect
+.extern FillWindowPixelRect
.extern FUN_0201974C
-.extern FUN_0201A8C8
+.extern ScrollWindow
.extern FUN_0201AB08
-.extern FUN_0201AB0C
-.extern FUN_0201AB10
+.extern GetWindowWidth
+.extern GetWindowHeight
.extern FUN_0201AB14
.extern FUN_0201AB18
.extern FUN_0201AB1C
@@ -7708,6 +7708,7 @@
.extern MTX_TransApply44
.extern NitroMain
.extern gBacklightTop
+.extern UNK_02016FA4
.extern OS_AllocFromArenaHi
.extern OS_AllocFromArenaLo
.extern OS_AllocFromHeap
diff --git a/arm9/modules/04/asm/thumb_04.s b/arm9/modules/04/asm/thumb_04.s
index 6b6a6f27..12374ec5 100644
--- a/arm9/modules/04/asm/thumb_04.s
+++ b/arm9/modules/04/asm/thumb_04.s
@@ -202,13 +202,13 @@ MOD04_021D7660: ; 0x021D7660
ldr r0, [r2, r1]
sub r1, #0x50
ldr r1, [r2, r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r1, _021D76A0 ; =UNK04_0220FBC0
ldr r0, _021D76A8 ; =0x00001F54
ldr r2, [r1]
ldr r1, [r1, #4]
ldr r0, [r2, r0]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, _021D76A0 ; =UNK04_0220FBC0
mov r1, #0
str r1, [r0, #4]
@@ -3065,7 +3065,7 @@ MOD04_021D8C6C: ; 0x021D8C6C
lsl r0, r0, #8
ldr r0, [r2, r0]
ldr r1, [r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r1, #0
ldr r0, _021D8CBC ; =UNK04_0220FBC8
cmp r4, #0
diff --git a/arm9/modules/05/asm/mod05_021DB44C.s b/arm9/modules/05/asm/mod05_021DB44C.s
index b606312e..039db6a9 100644
--- a/arm9/modules/05/asm/mod05_021DB44C.s
+++ b/arm9/modules/05/asm/mod05_021DB44C.s
@@ -67,7 +67,7 @@ _021DB4BA:
bl MOD05_021DB7A0
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
pop {r4, pc}
@@ -419,7 +419,7 @@ _021DB73E:
_021DB78A:
ldr r1, [sp, #0x14]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #8]
add sp, #0x1fc
add sp, #0x20
@@ -433,7 +433,7 @@ MOD05_021DB7A0: ; 0x021DB7A0
add r4, r0, #0
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
pop {r4, pc}
diff --git a/arm9/modules/05/asm/mod05_021DBA00.s b/arm9/modules/05/asm/mod05_021DBA00.s
index 22e64df5..d0d97f37 100644
--- a/arm9/modules/05/asm/mod05_021DBA00.s
+++ b/arm9/modules/05/asm/mod05_021DBA00.s
@@ -24,7 +24,7 @@ MOD05_021DBA1C: ; 0x021DBA1C
add r4, r0, #0
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
pop {r4, pc}
diff --git a/arm9/modules/05/asm/mod05_021DBABC.s b/arm9/modules/05/asm/mod05_021DBABC.s
index 28a15fb2..0481b9eb 100644
--- a/arm9/modules/05/asm/mod05_021DBABC.s
+++ b/arm9/modules/05/asm/mod05_021DBABC.s
@@ -24,7 +24,7 @@ MOD05_021DBAD8: ; 0x021DBAD8
add r4, r0, #0
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
pop {r4, pc}
diff --git a/arm9/modules/05/asm/mod05_021DC0B8.s b/arm9/modules/05/asm/mod05_021DC0B8.s
index ab06fed1..1714cbec 100644
--- a/arm9/modules/05/asm/mod05_021DC0B8.s
+++ b/arm9/modules/05/asm/mod05_021DC0B8.s
@@ -692,7 +692,7 @@ _021DC5A2:
bl NARC_dtor
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
_021DC5FE:
@@ -1362,7 +1362,7 @@ _021DCAD2:
bl MOD05_021DC880
ldr r1, [r4, #0x10]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4, #0x10]
ldr r0, [r4, #0x1c]
@@ -1390,7 +1390,7 @@ _021DCB14:
cmp r1, #0
beq _021DCB2C
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r1, [r4, #0xc]
ldr r0, _021DCB64 ; =0x00000F58
mov r2, #0
@@ -1414,7 +1414,7 @@ _021DCB3E:
_021DCB4C:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4, #0xc]
_021DCB58:
diff --git a/arm9/modules/05/asm/mod05_021E1374.s b/arm9/modules/05/asm/mod05_021E1374.s
index df43ddb9..a0192db6 100644
--- a/arm9/modules/05/asm/mod05_021E1374.s
+++ b/arm9/modules/05/asm/mod05_021E1374.s
@@ -533,7 +533,7 @@ _021E1770:
bl FUN_0200CAB4
mov r0, #4
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_021E178E:
pop {r4, pc}
.balign 4, 0
diff --git a/arm9/modules/05/asm/mod05_021E1AD8.s b/arm9/modules/05/asm/mod05_021E1AD8.s
index 0b72da2a..c41f4c57 100644
--- a/arm9/modules/05/asm/mod05_021E1AD8.s
+++ b/arm9/modules/05/asm/mod05_021E1AD8.s
@@ -738,7 +738,7 @@ _021E2032:
add r0, r4, r0
mov r1, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0x6d
lsl r1, r1, #2
str r0, [r4, r1]
@@ -1012,13 +1012,13 @@ MOD05_021E2278: ; 0x021E2278
mov r1, #3
mov r2, #0xf
mov r3, #4
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
_021E228E:
mov r1, #1
mov r2, #0xf
mov r3, #2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
.balign 4, 0
@@ -1045,7 +1045,7 @@ _021E22B8:
mov r0, #0x6d
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
mov r0, #0x6d
mov r1, #0xb5
@@ -1054,7 +1054,7 @@ _021E22B8:
ldrh r6, [r5, r1]
ldr r0, [r5, r0]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r0, #0xb5
lsl r0, r0, #2
ldrh r0, [r5, r0]
@@ -1134,7 +1134,7 @@ MOD05_021E2368: ; 0x021E2368
mov r1, #0
ldr r0, [r6, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x1a
lsl r0, r0, #4
ldr r0, [r6, r0]
@@ -1189,7 +1189,7 @@ MOD05_021E23D0: ; 0x021E23D0
add r6, r0, #0
ldr r0, [r5, #0x18]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x8c
ldr r0, [r0]
@@ -1226,7 +1226,7 @@ MOD05_021E2434: ; 0x021E2434
ldr r0, [r4, r1]
add r1, r1, #6
add r1, r4, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldr r0, _021E2460 ; =0x000001BA
ldrh r1, [r4, r0]
add r0, #0xe2
@@ -1259,7 +1259,7 @@ MOD05_021E2464: ; 0x021E2464
add r5, r0, #0
add r0, r4, #0
add r1, r0, #0
- bl FUN_02002E4C
+ bl GetFontAttribute
lsl r1, r0, #3
mov r0, #7
tst r0, r1
@@ -1318,7 +1318,7 @@ _021E2496:
add r0, #8
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r2, #0
add r0, r5, #0
mov r1, #0xf
@@ -1718,7 +1718,7 @@ MOD05_021E27E8: ; 0x021E27E8
add r6, r2, #0
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
str r6, [sp]
mov r0, #0xa
@@ -1750,7 +1750,7 @@ MOD05_021E27E8: ; 0x021E27E8
bl FUN_0200CCA4
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0x7a
mov r0, #0
mov r1, #0x1a
@@ -1807,7 +1807,7 @@ MOD05_021E28A0: ; 0x021E28A0
mov r1, #0xf
mov r2, #0
str r3, [sp, #4]
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r2, #0x7a
mov r0, #0
mov r1, #0x1a
@@ -1878,7 +1878,7 @@ MOD05_021E2950: ; 0x021E2950
add r6, r2, #0
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
str r6, [sp]
mov r0, #0xa
@@ -1936,7 +1936,7 @@ MOD05_021E29C8: ; 0x021E29C8
str r1, [sp, #0xc]
add r0, r1, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021E2A6C ; =0x00000141
mov r0, #0
mov r1, #0x1a
@@ -2007,7 +2007,7 @@ MOD05_021E2A70: ; 0x021E2A70
add r6, r2, #0
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
str r6, [sp]
mov r0, #0xa
@@ -2054,7 +2054,7 @@ MOD05_021E2AD4: ; 0x021E2AD4
str r1, [sp, #0xc]
add r0, r1, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021E2B7C ; =0x00000141
mov r0, #0
mov r1, #0x1a
diff --git a/arm9/modules/05/asm/mod05_021E2B80.s b/arm9/modules/05/asm/mod05_021E2B80.s
index 16e19ae0..8a1f9413 100644
--- a/arm9/modules/05/asm/mod05_021E2B80.s
+++ b/arm9/modules/05/asm/mod05_021E2B80.s
@@ -296,7 +296,7 @@ MOD05_CreateMessageBox: ; 0x021E2D9C
_021E2DC8:
ldr r0, [r4, #0xc]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
pop {r3, r4, r5, pc}
.balign 4, 0
diff --git a/arm9/modules/05/asm/mod05_021E2E88.s b/arm9/modules/05/asm/mod05_021E2E88.s
index 0666b52d..75d92e5b 100644
--- a/arm9/modules/05/asm/mod05_021E2E88.s
+++ b/arm9/modules/05/asm/mod05_021E2E88.s
@@ -146,7 +146,7 @@ _021E2F92:
add r0, r5, #0
add r0, #0x20
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #8
str r2, [sp]
add r0, r5, #0
@@ -159,7 +159,7 @@ _021E2F92:
ldr r1, [r5, #0x34]
add r0, #0x20
ldr r1, [r1, #0x14]
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
ldr r0, [sp, #0x18]
mov r1, #8
add r0, r0, #1
@@ -178,7 +178,7 @@ _021E2F92:
ldr r1, [r1, #0x14]
add r0, #0x20
mov r2, #0x18
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r0, #8
str r0, [sp]
str r0, [sp, #4]
@@ -192,7 +192,7 @@ _021E2F92:
ldr r1, [r1, #0x14]
add r0, #0x20
mov r2, #0x38
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r1, #8
str r1, [sp]
lsl r0, r4, #0x10
@@ -208,7 +208,7 @@ _021E2F92:
add r0, #0x20
mov r2, #0x40
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r1, #8
str r1, [sp]
str r1, [sp, #4]
@@ -223,7 +223,7 @@ _021E2F92:
ldr r1, [r1, #0x14]
add r0, #0x20
mov r2, #0x20
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r1, #8
str r1, [sp]
lsl r0, r4, #0x10
@@ -240,7 +240,7 @@ _021E2F92:
add r0, #0x20
mov r2, #0x30
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
ldr r0, [sp, #0x18]
mov r7, #0
cmp r0, #0
@@ -266,7 +266,7 @@ _021E3078:
ldr r1, [r1, #0x14]
mov r2, #0x10
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r0, #8
str r0, [sp]
str r0, [sp, #4]
@@ -282,7 +282,7 @@ _021E3078:
ldr r1, [r1, #0x14]
mov r2, #0x48
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r0, #8
str r0, [sp]
str r0, [sp, #4]
@@ -299,7 +299,7 @@ _021E3078:
ldr r1, [r1, #0x14]
mov r2, #0x28
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add r0, r7, #1
lsl r0, r0, #0x18
lsr r7, r0, #0x18
diff --git a/arm9/modules/05/asm/mod05_021E3444.s b/arm9/modules/05/asm/mod05_021E3444.s
index 27446591..ea709996 100644
--- a/arm9/modules/05/asm/mod05_021E3444.s
+++ b/arm9/modules/05/asm/mod05_021E3444.s
@@ -1989,7 +1989,7 @@ _021E4370:
ldrb r1, [r1, #0x14]
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
_021E4390:
add sp, #8
pop {r3, r4, r5, pc}
diff --git a/arm9/modules/05/asm/mod05_021E5FD8.s b/arm9/modules/05/asm/mod05_021E5FD8.s
index 8ce2cd0f..ab5f7010 100644
--- a/arm9/modules/05/asm/mod05_021E5FD8.s
+++ b/arm9/modules/05/asm/mod05_021E5FD8.s
@@ -2409,12 +2409,12 @@ _021E72CC:
thumb_func_start MOD05_021E72DC
MOD05_021E72DC: ; 0x021E72DC
- ldr r3, _021E72E4 ; =FUN_02016A8C
+ ldr r3, _021E72E4 ; =FreeToHeapExplicit
add r1, r0, #0
mov r0, #4
bx r3
.balign 4, 0
-_021E72E4: .word FUN_02016A8C
+_021E72E4: .word FreeToHeapExplicit
thumb_func_start MOD05_021E72E8
MOD05_021E72E8: ; 0x021E72E8
diff --git a/arm9/modules/05/asm/mod05_021E8310.s b/arm9/modules/05/asm/mod05_021E8310.s
index 7a66cdcb..5bf27853 100644
--- a/arm9/modules/05/asm/mod05_021E8310.s
+++ b/arm9/modules/05/asm/mod05_021E8310.s
@@ -139,11 +139,11 @@ MOD05_021E8410: ; 0x021E8410
add r5, r0, #0
mov r0, #0
mov r1, #1
- bl FUN_02002E4C
+ bl GetFontAttribute
add r4, r0, #0
mov r0, #0
mov r1, #3
- bl FUN_02002E4C
+ bl GetFontAttribute
add r0, r4, r0
str r0, [sp, #0x14]
mov r4, #0
@@ -204,7 +204,7 @@ _021E846E:
add r6, r0, #0
mov r0, #0
mov r1, #2
- bl FUN_02002E4C
+ bl GetFontAttribute
add r2, r0, #0
mov r0, #0
add r1, r6, #0
@@ -276,10 +276,10 @@ MOD05_021E84F4: ; 0x021E84F4
bl FUN_0200CB00
mov r0, #0
mov r1, #6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0
ldr r0, [r4, #0x10]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl MOD05_021E8410
ldr r0, [r4, #0x10]
diff --git a/arm9/modules/05/asm/module_05.s b/arm9/modules/05/asm/module_05.s
index fe346300..13563cc2 100644
--- a/arm9/modules/05/asm/module_05.s
+++ b/arm9/modules/05/asm/module_05.s
@@ -339,7 +339,7 @@ MOD05_021E88C0: ; 0x021E88C0
bl GX_EngineAToggleLayers
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
thumb_func_start MOD05_021E88E8
@@ -513,7 +513,7 @@ _021E8A42:
bl MOD05_021E37A4
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
_021E8A56:
@@ -695,7 +695,7 @@ _021E8BC2:
bl MOD05_021E37A4
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
_021E8BD6:
@@ -851,7 +851,7 @@ _021E8CE6:
_021E8D00:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -1008,7 +1008,7 @@ _021E8E1C:
_021E8E36:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -1256,7 +1256,7 @@ _021E8FFC:
_021E9010:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -1391,7 +1391,7 @@ _021E910C:
_021E9120:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -1794,7 +1794,7 @@ _021E944E:
bl MOD05_021E37A4
ldr r1, [r7, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x10]
bl FUN_0200621C
_021E948A:
@@ -2151,7 +2151,7 @@ _021E974A:
bl MOD05_021E3A48
ldr r1, [r6, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x10]
bl FUN_0200621C
_021E9786:
@@ -2594,7 +2594,7 @@ _021E9AF0:
bl MOD05_021E3E44
ldr r1, [r7, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x14]
bl FUN_0200621C
add sp, #0x58
@@ -2737,7 +2737,7 @@ _021E9C02:
bl GX_EngineAToggleLayers
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
mov r1, #0x83
lsl r1, r1, #2
str r0, [r4, r1]
@@ -2766,7 +2766,7 @@ _021E9C02:
lsl r0, r0, #2
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x83
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -3183,7 +3183,7 @@ _021E9FA4:
ldr r1, [sp, #0x1c]
mov r0, #4
ldr r1, [r1, #0xc]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x18]
bl FUN_0200621C
add sp, #0x44
@@ -3594,7 +3594,7 @@ _021EA354:
bl MOD05_021E3E44
ldr r1, [r5, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
_021EA382:
@@ -3709,7 +3709,7 @@ _021EA430:
bl GX_EngineAToggleLayers
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
mov r1, #2
lsl r1, r1, #8
str r0, [r4, r1]
@@ -3738,7 +3738,7 @@ _021EA430:
lsl r0, r0, #8
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #2
lsl r0, r0, #8
ldr r0, [r4, r0]
@@ -4116,7 +4116,7 @@ _021EA76C:
ldr r1, [sp, #0x18]
mov r0, #4
ldr r1, [r1, #0xc]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x14]
bl FUN_0200621C
_021EA7DE:
@@ -4472,7 +4472,7 @@ _021EAA98:
bl MOD05_021E3E44
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
_021EAAC6:
@@ -4781,7 +4781,7 @@ _021EAD1A:
bl MOD05_021E3E44
ldr r1, [r6, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x10]
bl FUN_0200621C
_021EAD4C:
@@ -5156,7 +5156,7 @@ _021EB01A:
ldr r1, [sp, #0x14]
mov r0, #4
ldr r1, [r1, #0xc]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [sp, #0x10]
bl FUN_0200621C
_021EB04A:
@@ -5380,7 +5380,7 @@ _021EB18E:
str r0, [r4, #4]
mov r0, #4
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4]
mov r3, #0
str r3, [sp]
@@ -5404,7 +5404,7 @@ _021EB18E:
bl FUN_02017FB4
ldr r0, [r4]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
bl FUN_02019220
ldr r0, [r5]
@@ -5586,7 +5586,7 @@ _021EB394:
strb r1, [r0]
ldr r1, [r5, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
_021EB3F2:
@@ -5797,7 +5797,7 @@ _021EB56C:
_021EB58A:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -6008,7 +6008,7 @@ _021EB720:
_021EB73E:
ldr r1, [r4, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r0, r6, #0
bl FUN_0200621C
mov r0, #1
@@ -6506,7 +6506,7 @@ _021EBB60:
str r0, [r2]
ldr r1, [r5, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x30
mov r0, #1
pop {r3, r4, r5, r6, r7, pc}
@@ -7514,7 +7514,7 @@ _021EC37A:
bl MOD05_021E3E44
ldr r1, [r5, #0xc]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x4c
mov r0, #1
pop {r4, r5, r6, r7, pc}
@@ -15197,7 +15197,7 @@ MOD05_021EFEDC: ; 0x021EFEDC
add r7, r0, #0
add r0, r7, #1
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5]
mov r0, #1
str r0, [sp]
@@ -15238,7 +15238,7 @@ _021EFF2E:
ldr r0, [r5]
ldr r1, [r5, #8]
add r2, r4, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
_021EFF54:
add r4, r4, #1
cmp r4, #0x20
@@ -15248,7 +15248,7 @@ _021EFF54:
ldr r0, [r5]
ldr r1, [r5, #0x3c]
sub r3, #0xd
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r4, _021EFFC0 ; =UNK05_021F8B4C
add r3, sp, #0x14
add r2, r3, #0
@@ -15277,7 +15277,7 @@ _021EFF54:
add r0, r2, #0
add r2, r1, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #4]
add r0, r5, #0
add r0, #0x20
@@ -15298,7 +15298,7 @@ MOD05_021EFFC8: ; 0x021EFFC8
push {r3, r4, r5, r6, r7, lr}
add r5, r0, #0
ldr r0, [r5, #4]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
mov r0, #1
mvn r0, r0
@@ -15366,9 +15366,9 @@ _021F0056:
mov r1, #0
ldr r0, [r5, #4]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r5]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
.balign 4, 0
@@ -19600,11 +19600,11 @@ MOD05_021F21AC: ; 0x021F21AC
add r1, #0xe4
ldr r1, [r1]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add r4, #0xf4
ldr r1, [r4]
mov r0, #4
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
thumb_func_start MOD05_021F21CC
@@ -22552,12 +22552,12 @@ _021F37C2:
thumb_func_start MOD05_021F37D0
MOD05_021F37D0: ; 0x021F37D0
- ldr r3, _021F37D8 ; =FUN_02016A8C
+ ldr r3, _021F37D8 ; =FreeToHeapExplicit
add r1, r0, #0
ldr r0, [r1]
bx r3
.balign 4, 0
-_021F37D8: .word FUN_02016A8C
+_021F37D8: .word FreeToHeapExplicit
thumb_func_start MOD05_021F37DC
MOD05_021F37DC: ; 0x021F37DC
@@ -22588,7 +22588,7 @@ _021F37FC:
bne _021F37F0
ldr r0, [r5]
ldr r1, [r5, #0xc]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_021F380E:
pop {r3, r4, r5, pc}
diff --git a/arm9/modules/05/src/mod05_021E72FC.c b/arm9/modules/05/src/mod05_021E72FC.c
index c24a7bd3..7284224c 100644
--- a/arm9/modules/05/src/mod05_021E72FC.c
+++ b/arm9/modules/05/src/mod05_021E72FC.c
@@ -156,5 +156,5 @@ THUMB_FUNC UnkStruct021E7358 *MOD05_021E74D4(u32 param0)
THUMB_FUNC void MOD05_021E74F8(UnkStruct021E7358 *param0)
{
- FUN_02016A8C(4, param0);
+ FreeToHeapExplicit(4, param0);
}
diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s
index d46e003b..62cd7742 100644
--- a/arm9/modules/06/asm/module_06.s
+++ b/arm9/modules/06/asm/module_06.s
@@ -8427,7 +8427,7 @@ MOD06_0223D63C: ; 0x0223D63C
mov r4, #3
add r0, r4, #0
mov r1, #0xb
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0x84
str r0, [r1]
@@ -8439,7 +8439,7 @@ MOD06_0223D63C: ; 0x0223D63C
ldr r1, [r1]
mov r2, #0xf
mov r3, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r5, #0
add r1, r5, #0
add r0, #0x84
@@ -8448,7 +8448,7 @@ MOD06_0223D63C: ; 0x0223D63C
ldr r1, [r1]
mov r2, #0x10
mov r3, #0xe
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r5, #0
add r1, r5, #0
add r0, #0x84
@@ -8458,7 +8458,7 @@ MOD06_0223D63C: ; 0x0223D63C
ldr r0, [r0]
ldr r1, [r1]
sub r3, #0x13
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
mov r3, #1
str r3, [sp]
mov r1, #0xd
@@ -8478,7 +8478,7 @@ _0223D6B8:
mov r4, #2
add r0, r4, #0
mov r1, #0xb
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0x84
str r0, [r1]
@@ -8490,7 +8490,7 @@ _0223D6B8:
ldr r1, [r1]
mov r2, #0xf
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r5, #0
add r1, r5, #0
add r0, #0x84
@@ -8500,7 +8500,7 @@ _0223D6B8:
ldr r0, [r0]
ldr r1, [r1]
sub r3, #0x13
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
mov r3, #1
str r3, [sp]
mov r1, #0xd
@@ -8618,7 +8618,7 @@ MOD06_0223D7B8: ; 0x0223D7B8
add r0, r4, #0
add r0, #0x84
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r4, #8
add r0, r4, #0
bl FUN_02019178
@@ -9146,7 +9146,7 @@ _0223DC34:
ldrb r0, [r5, r0]
mov r1, #0xb
add r0, r0, #1
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x7c]
mov r0, #0x8b
lsl r0, r0, #2
@@ -9172,7 +9172,7 @@ _0223DC52:
ldr r0, [r5, #0x7c]
ldrh r2, [r2, r4]
add r1, r7, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r7, #0
bl String_dtor
mov r0, #0x8b
@@ -9190,7 +9190,7 @@ _0223DC8E:
ldr r0, [r5, #0x7c]
ldr r1, [r1]
sub r3, #0xa
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, [sp]
bl DestroyMsgData
ldr r4, _0223DCEC ; =0x0224F38C
@@ -9220,7 +9220,7 @@ _0223DC8E:
add r0, r2, #0
add r2, r1, #0
str r5, [sp, #0x20]
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x78]
add sp, #0x24
pop {r4, r5, r6, r7, pc}
@@ -9236,7 +9236,7 @@ MOD06_0223DCF0: ; 0x0223DCF0
mov r1, #0x13
str r0, [sp, #0x10]
add r6, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
cmp r6, #1
beq _0223DD0C
@@ -9246,7 +9246,7 @@ _0223DD0C:
add r0, r4, #0
add r0, #0x18
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #1
mvn r1, r1
cmp r5, r1
@@ -9328,7 +9328,7 @@ _0223DDBA:
ldr r0, [sp, #0x10]
add r1, #2
add r2, sp, #0x14
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0x14
ldrh r0, [r0, #2]
cmp r0, #0
@@ -9348,7 +9348,7 @@ _0223DDE4:
_0223DDF0:
ldr r0, [sp, #0x10]
mov r1, #2
- bl FUN_02001470
+ bl ListMenuGetTemplateField
cmp r0, #7
bls _0223DE16
add r1, sp, #0x14
@@ -9383,7 +9383,7 @@ MOD06_0223DE34: ; 0x0223DE34
add r4, r1, #0
mov r1, #0x13
add r7, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r1, #1
mvn r1, r1
add r5, r0, #0
@@ -9456,7 +9456,7 @@ MOD06_0223DED0: ; 0x0223DED0
bne _0223DF1C
add r0, #0x28
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x28
mov r1, #1
@@ -9491,7 +9491,7 @@ _0223DF1C:
mov r1, #0xf
mov r2, #0
str r3, [sp, #4]
- bl FUN_020196F4
+ bl FillWindowPixelRect
_0223DF30:
mov r0, #0x10
mov r1, #0xb
@@ -9558,14 +9558,14 @@ MOD06_0223DFB4: ; 0x0223DFB4
ldr r0, [r5, #0x78]
mov r1, #0
add r2, #2
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
ldr r0, [r5, #0x78]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
ldr r0, [r5, #0x78]
mov r1, #0
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0
ldrh r2, [r0]
ldrh r0, [r0, #2]
@@ -9595,9 +9595,9 @@ _0223E006:
mov r1, #0
ldr r0, [r5, #0x78]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r5, #0x7c]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
bl MOD06_0223D9C0
add r0, r5, #0
@@ -9637,7 +9637,7 @@ _0223E034:
add r0, r5, #0
add r0, #0x58
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x18
bl FUN_02019570
@@ -9832,7 +9832,7 @@ _0223E214:
add r0, r5, #0
add r0, #0x48
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x48
mov r1, #1
@@ -9934,7 +9934,7 @@ _0223E2C4:
add r0, r4, #0
add r0, #0x58
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0223E380 ; =0x000005DC
bl FUN_020054C8
add r0, r4, #0
@@ -10167,7 +10167,7 @@ MOD06_0223E4E8: ; 0x0223E4E8
add r4, r1, #0
add r0, #0x38
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r4, #0
bne _0223E50A
add r0, r5, #0
@@ -10429,7 +10429,7 @@ _0223E704:
add r0, r5, #0
add r0, #0x58
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -10644,7 +10644,7 @@ _0223E88A:
add r0, r5, #0
add r0, #0x58
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0x23
lsl r2, r2, #4
ldr r1, [r5, r2]
@@ -11388,7 +11388,7 @@ _0223EEB8:
mov r1, #0
add r0, r2, #0
add r2, r1, #0
- bl FUN_020010A8
+ bl ListMenuInit
ldr r1, _0223EF10 ; =0x02252420
ldr r2, [r1]
str r0, [r2, #0x5c]
@@ -11454,15 +11454,15 @@ _0223EF28:
str r0, [r2, #0x7c]
ldr r0, [r1]
add r0, #0x20
- bl FUN_0201901C
+ bl InitWindow
ldr r0, _0223EFF4 ; =0x02252420
ldr r0, [r0]
add r0, #0x30
- bl FUN_0201901C
+ bl InitWindow
ldr r0, _0223EFF4 ; =0x02252420
ldr r0, [r0]
add r0, #0x40
- bl FUN_0201901C
+ bl InitWindow
mov r0, #4
bl ScrStrBufs_new
ldr r1, _0223EFF4 ; =0x02252420
@@ -11619,7 +11619,7 @@ MOD06_0223F0C8: ; 0x0223F0C8
mov r1, #3
add r5, r0, #0
mov r4, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
cmp r0, #0
bls _0223F0F6
add r6, r4, #0
@@ -11633,7 +11633,7 @@ _0223F0DC:
add r0, r5, #0
add r1, r7, #0
add r4, r4, #1
- bl FUN_02001470
+ bl ListMenuGetTemplateField
cmp r4, r0
blo _0223F0DC
_0223F0F6:
@@ -11655,7 +11655,7 @@ MOD06_0223F0F8: ; 0x0223F0F8
cmp r0, #0
beq _0223F11A
add r1, sp, #0xc
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
_0223F11A:
add r0, sp, #0xc
ldrh r1, [r0]
@@ -11665,7 +11665,7 @@ _0223F11A:
lsl r5, r5, #4
ldr r0, [r0]
add r0, #0x20
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, #8
lsl r0, r0, #0x10
@@ -11680,7 +11680,7 @@ _0223F11A:
add r0, #0x20
mov r2, #8
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, sp, #0xc
ldrh r2, [r0]
cmp r2, r4
@@ -11853,7 +11853,7 @@ _0223F2AA:
mov r1, #0xf
ldr r0, [r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0223F330 ; =0x02252420
ldr r0, [r0]
add r0, #0x30
@@ -11977,7 +11977,7 @@ MOD06_0223F3B8: ; 0x0223F3B8
beq _0223F450
mov r0, #0x10
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r4, _0223F454 ; =0x02252420
mov r5, #0
ldr r1, [r4]
@@ -12006,7 +12006,7 @@ _0223F3E0:
mov r2, #0
ldr r0, [r1, #0x64]
ldr r1, [r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r5, r5, #1
cmp r5, #0x10
blt _0223F3E0
@@ -12074,7 +12074,7 @@ _0223F49A:
ldr r0, _0223F518 ; =0x02252420
ldr r0, [r0]
ldr r0, [r0, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
_0223F4A4:
mov r1, #1
mvn r1, r1
@@ -12105,7 +12105,7 @@ _0223F4D8:
add r1, r4, #0
ldr r0, [r4, #0x5c]
add r1, #0x8e
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, r4, #0
add r0, #0x8e
ldrh r5, [r0]
@@ -12160,7 +12160,7 @@ _0223F53C:
mov r2, #8
add r0, #0x20
mov r3, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _0223F580 ; =0x02252420
mov r1, #0
ldr r0, [r0]
@@ -12451,7 +12451,7 @@ MOD06_0223F7C4: ; 0x0223F7C4
cmp r0, #0
beq _0223F7E0
add r1, sp, #0xc
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
_0223F7E0:
add r0, sp, #0xc
ldrh r1, [r0]
@@ -12611,7 +12611,7 @@ _0223F910:
mov r1, #0xf
ldr r0, [r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0223F950 ; =0x02252420
ldr r0, [r0]
add r0, #0x30
@@ -12727,7 +12727,7 @@ _0223FA02:
mov r1, #0xf
ldr r0, [r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0223FA5C ; =0x02252420
add r1, r4, #0
ldr r2, [r0]
@@ -12821,7 +12821,7 @@ MOD06_0223FAB8: ; 0x0223FAB8
beq _0223FB4C
mov r0, #5
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r4, _0223FB50 ; =0x02252420
mov r5, #0
ldr r1, [r4]
@@ -12834,7 +12834,7 @@ _0223FAE6:
ldr r0, [r1, #0x64]
ldr r1, [r1, #0x74]
add r3, r7, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r5, r5, #1
cmp r5, #5
blt _0223FAE6
@@ -12966,13 +12966,13 @@ _0223FBDA:
strb r0, [r2]
ldr r0, [r1]
ldr r0, [r0, #0x5c]
- bl FUN_02001328
+ bl RedrawListMenu
ldr r0, _0223FCF0 ; =0x02252420
mov r1, #3
ldr r0, [r0]
mov r5, #0
ldr r0, [r0, #0x5c]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
cmp r0, #0
bls _0223FC32
ldr r4, _0223FCF0 ; =0x02252420
@@ -12989,13 +12989,13 @@ _0223FC14:
add r1, r7, #0
ldr r0, [r0, #0x5c]
add r5, r5, #1
- bl FUN_02001470
+ bl ListMenuGetTemplateField
cmp r5, r0
blo _0223FC14
_0223FC32:
ldr r0, [sp, #4]
ldr r0, [r0, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
bl FUN_0202DF08
cmp r0, #0xff
@@ -13094,7 +13094,7 @@ MOD06_0223FD08: ; 0x0223FD08
add r0, r4, #0
bl MOD06_0223F9D8
ldr r0, [r4, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, [r4, #0x60]
mov r1, #4
bl FUN_020021AC
@@ -13421,7 +13421,7 @@ MOD06_0223FFD4: ; 0x0223FFD4
mov r0, #0
bl FUN_02031A24
ldr r0, [r4, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, _02240020 ; =0x02252420
ldr r0, [r0]
add r0, #0x94
@@ -13459,7 +13459,7 @@ MOD06_02240030: ; 0x02240030
add r0, r5, #0
bl MOD06_0223F9D8
ldr r0, [r5, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, [r5, #0x60]
mov r1, #4
bl FUN_020021AC
@@ -13681,7 +13681,7 @@ MOD06_02240204: ; 0x02240204
add r0, r4, #0
bl MOD06_0223F9D8
ldr r0, [r4, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, _02240248 ; =0x02252420
ldr r0, [r0]
add r0, #0x94
@@ -13719,7 +13719,7 @@ MOD06_02240258: ; 0x02240258
add r0, r5, #0
bl MOD06_0223F9D8
ldr r0, [r5, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, [r5, #0x60]
mov r1, #4
bl FUN_020021AC
@@ -13778,7 +13778,7 @@ _022402DC:
add r0, r4, #0
bl MOD06_0223F9D8
ldr r0, [r4, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r0, #0xa
bl FUN_020315D8
cmp r0, #0
@@ -13804,7 +13804,7 @@ MOD06_02240310: ; 0x02240310
add r0, r4, #0
bl MOD06_0223F9D8
ldr r0, [r4, #0x5c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r0, _02240354 ; =0x02252420
ldr r0, [r0]
add r0, #0x94
@@ -13843,17 +13843,17 @@ MOD06_02240364: ; 0x02240364
ldr r0, [r0]
mov r1, #0xf
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x20
mov r1, #0
bl FUN_0200CCF8
ldr r0, [r4, #0x64]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r1, #0
ldr r0, [r4, #0x5c]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0
add r0, #0x20
bl FUN_02019570
@@ -14473,7 +14473,7 @@ MOD06_02240864: ; 0x02240864
bne _0224089E
add r0, r5, #0
add r0, #0x54
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [r5, #0x10]
add r1, r5, #0
ldr r0, [r0, #8]
@@ -14577,7 +14577,7 @@ _02240940:
bne _022409D2
add r0, r6, #2
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #8]
mov r3, #1
str r3, [sp]
@@ -14605,7 +14605,7 @@ _02240940:
ldr r1, [r5, #0x68]
mov r2, #0x7b
mov r3, #0xc
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
mov r4, #0
cmp r6, #0
ble _022409C4
@@ -14625,7 +14625,7 @@ _02240998:
ldr r0, [r5, #8]
ldr r1, [r5, #0x20]
add r2, r4, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r4, r4, #1
cmp r4, r6
blt _02240998
@@ -14635,7 +14635,7 @@ _022409C4:
ldr r0, [r5, #8]
ldr r1, [r5, #0x68]
sub r3, #0x74
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_022409D2:
ldr r4, _02240A24 ; =0x0224F704
add r3, sp, #0x14
@@ -14666,7 +14666,7 @@ _022409D2:
add r2, #0x78
ldrh r2, [r2]
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5]
add r5, #0x34
add r0, r5, #0
@@ -14686,7 +14686,7 @@ MOD06_02240A28: ; 0x02240A28
beq _02240A62
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0
add r0, #0x34
mov r1, #1
@@ -14700,7 +14700,7 @@ MOD06_02240A28: ; 0x02240A28
add r0, #0x34
bl FUN_02019178
ldr r0, [r4, #8]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
str r0, [r4]
_02240A62:
@@ -14711,20 +14711,20 @@ MOD06_02240A64: ; 0x02240A64
push {r4, r5, r6, lr}
add r5, r0, #0
ldr r0, [r5]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r2, r5, #0
ldr r0, [r5]
mov r1, #0
add r2, #0x78
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, r5, #0
add r0, #0x80
ldrh r6, [r0]
add r1, r5, #0
ldr r0, [r5]
add r1, #0x80
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, r5, #0
add r0, #0x80
ldrh r0, [r0]
@@ -14792,7 +14792,7 @@ MOD06_02240B04: ; 0x02240B04
mov r0, #3
mov r1, #4
ldr r4, _02240BA8 ; =MOD6_022522E4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0xc]
mov r0, #0xa
str r0, [sp]
@@ -14823,7 +14823,7 @@ _02240B4A:
ldr r1, [r5, #0x68]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, #3
@@ -14855,7 +14855,7 @@ _02240B4A:
add r2, #0x7a
ldrh r2, [r2]
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #4]
add r5, #0x44
add r0, r5, #0
@@ -14873,20 +14873,20 @@ MOD06_02240BB8: ; 0x02240BB8
push {r4, r5, r6, lr}
add r5, r0, #0
ldr r0, [r5, #4]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r2, r5, #0
ldr r0, [r5, #4]
mov r1, #0
add r2, #0x7a
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, r5, #0
add r0, #0x82
ldrh r6, [r0]
add r1, r5, #0
ldr r0, [r5, #4]
add r1, #0x82
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, r5, #0
add r0, #0x82
ldrh r0, [r0]
@@ -14921,7 +14921,7 @@ _02240C1A:
beq _02240C50
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r5, #0
add r0, #0x44
mov r1, #1
@@ -14935,7 +14935,7 @@ _02240C1A:
add r0, #0x44
bl FUN_02019178
ldr r0, [r5, #0xc]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
str r0, [r5, #4]
_02240C50:
@@ -14992,7 +14992,7 @@ MOD06_02240C58: ; 0x02240C58
bl FUN_0200CCA4
ldr r0, [sp, #0x24]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x14]
add r1, r0, #0
add r1, #0x78
@@ -19028,7 +19028,7 @@ MOD06_02242CDC: ; 0x02242CDC
mov r1, #0
add r2, r5, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
add r4, #0x88
str r0, [r4]
add sp, #0x14
@@ -19219,13 +19219,13 @@ MOD06_02242E9C: ; 0x02242E9C
mov r1, #3
mov r2, #0xf
mov r3, #4
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
_02242EB2:
mov r1, #1
mov r2, #0xf
mov r3, #2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
.align 2, 0
@@ -19287,7 +19287,7 @@ MOD06_02242F1C: ; 0x02242F1C
add r4, r0, #0
add r0, #0x88
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #1
mvn r1, r1
cmp r0, r1
@@ -19331,7 +19331,7 @@ _02242F6E:
add r0, r4, #0
add r0, #0x88
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #1
mvn r1, r1
cmp r0, r1
@@ -19439,7 +19439,7 @@ MOD06_02243024: ; 0x02243024
mov r1, #0
ldr r0, [r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r6, #0x74]
mov r1, #0
bl FUN_0200CCF8
@@ -19480,7 +19480,7 @@ MOD06_02243080: ; 0x02243080
add r0, r5, #0
add r0, #0x14
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x54]
ldr r1, [sp, #0xc]
add r2, r4, #0
@@ -40892,7 +40892,7 @@ MOD06_0224D46C: ; 0x0224D46C
bl FUN_0200CCA4
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x64
mov r1, #0xb
bl String_ctor
@@ -41794,7 +41794,7 @@ MOD06_0224DC5C: ; 0x0224DC5C
str r3, [r5, #8]
add r0, r2, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #4]
mov r0, #0x13
str r0, [sp]
@@ -41813,7 +41813,7 @@ MOD06_0224DC5C: ; 0x0224DC5C
bl FUN_02019064
ldr r0, [r5, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #4]
mov r1, #0
mov r2, #1
@@ -41859,7 +41859,7 @@ MOD06_0224DCD8: ; 0x0224DCD8
_0224DCEC:
ldr r0, [r5, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r1, r6, #0
bl StringDup
@@ -42039,7 +42039,7 @@ MOD06_0224DE60: ; 0x0224DE60
beq _0224DED2
add r0, r3, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r6, #4]
mov r0, #0xb
str r0, [sp]
@@ -42077,7 +42077,7 @@ _0224DEA8:
str r0, [r6, #0xc]
ldr r0, [r6, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [r6]
_0224DED2:
@@ -42148,7 +42148,7 @@ MOD06_0224DF1C: ; 0x0224DF1C
bl BufferIntegerAsString
ldr r0, [r5, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r7, #0
add r6, r5, #0
add r4, r7, #0
@@ -42214,7 +42214,7 @@ _0224DFC0:
add r2, #0x14
str r0, [r5, r2]
ldr r0, [sp, #0x14]
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #4]
mov r0, #1
str r0, [sp]
@@ -42332,7 +42332,7 @@ _0224E084:
mov r1, #0
ldr r0, _0224E16C ; =MOD6_022523A0
add r2, r1, #0
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #8]
ldr r0, [r5, #4]
mov r1, #0
@@ -42445,7 +42445,7 @@ _0224E1C0:
mov r1, #0
ldr r0, [r6, #8]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r6, #4]
bl FUN_02019570
ldr r0, [r6, #4]
@@ -42463,7 +42463,7 @@ MOD06_0224E1E4: ; 0x0224E1E4
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, [r5, #8]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0
add r4, r0, #0
mvn r1, r1
@@ -42471,7 +42471,7 @@ MOD06_0224E1E4: ; 0x0224E1E4
bne _0224E22A
ldr r0, [r5, #8]
add r1, sp, #0
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r2, #0x4b
add r0, sp, #0
lsl r2, r2, #2
@@ -42685,7 +42685,7 @@ MOD06_0224E39C: ; 0x0224E39C
ldr r0, [r4, #8]
add r1, sp, #0
mov r2, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0
ldrh r0, [r0]
cmp r0, #0
diff --git a/arm9/modules/07/asm/module_07.s b/arm9/modules/07/asm/module_07.s
index 3cef2d24..1110fa5c 100644
--- a/arm9/modules/07/asm/module_07.s
+++ b/arm9/modules/07/asm/module_07.s
@@ -4858,7 +4858,7 @@ _0221459E:
mov r1, #0xa
mov r2, #0
mov r3, #2
- bl FUN_020196F4
+ bl FillWindowPixelRect
lsl r0, r5, #0x10
lsr r0, r0, #0x10
str r0, [sp]
@@ -4868,7 +4868,7 @@ _0221459E:
mov r1, #9
mov r2, #0
mov r3, #3
- bl FUN_020196F4
+ bl FillWindowPixelRect
lsl r0, r5, #0x10
lsr r0, r0, #0x10
str r0, [sp]
@@ -4878,7 +4878,7 @@ _0221459E:
mov r1, #0xa
mov r2, #0
mov r3, #5
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #0xc
pop {r4, r5, r6, r7, pc}
nop
@@ -4900,19 +4900,19 @@ MOD07_02214600: ; 0x02214600
mov r1, #0
str r2, [sp, #0xc]
str r3, [sp, #0x10]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
add r0, #0x10
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
add r0, #0x20
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
add r0, #0x30
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x28]
ldr r1, [sp, #8]
str r0, [sp]
diff --git a/arm9/modules/09/asm/module_09.s b/arm9/modules/09/asm/module_09.s
index 55a90a71..63e3d1e0 100644
--- a/arm9/modules/09/asm/module_09.s
+++ b/arm9/modules/09/asm/module_09.s
@@ -3922,7 +3922,7 @@ _02213D74:
ldr r0, [r4]
ldrb r1, [r4, r1]
ldr r0, [r0, #0xc]
- bl FUN_02018FF4
+ bl AllocWindows
ldr r1, _02213DDC ; =0x00002070
mov r5, #0
str r0, [r4, r1]
@@ -4150,7 +4150,7 @@ _02213F22:
bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x28]
mov r0, #0
add r1, r6, #0
@@ -4196,7 +4196,7 @@ _02213FA6:
bl NewString_ReadMsgData
add r6, r0, #0
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
str r0, [sp, #0x2c]
mov r0, #0
add r1, r6, #0
@@ -4419,7 +4419,7 @@ _0221415E:
add r0, r0, r5
lsr r1, r1, #0x18
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [sp, #0x14]
add r3, r6, #2
str r0, [sp]
@@ -4432,7 +4432,7 @@ _0221415E:
add r0, r0, r5
add r1, r7, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [sp, #0x14]
ldr r1, [sp, #0x10]
str r0, [sp]
@@ -4447,7 +4447,7 @@ _0221415E:
add r0, r0, r5
lsr r1, r1, #0x18
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _022141D4 ; =0x00002070
ldr r0, [r4, r0]
add r0, r0, r5
@@ -4623,7 +4623,7 @@ MOD09_022142FC: ; 0x022142FC
cmp r0, #2
bne _02214360
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r5, r0, #0
add r0, sp, #0x20
ldrh r0, [r0, #0x10]
@@ -4718,7 +4718,7 @@ MOD09_022143F8: ; 0x022143F8
ldr r0, _02214450 ; =0x00002050
mov r1, #0xf
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02214454 ; =0x00001FA8
add r1, r5, #0
ldr r0, [r4, r0]
@@ -4766,7 +4766,7 @@ MOD09_0221445C: ; 0x0221445C
bl FUN_02002E14
add r6, r0, #0
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r3, r0, #0
mov r0, #6
str r0, [sp]
@@ -4944,7 +4944,7 @@ _022145F4:
ldr r0, [r5, r0]
lsl r4, r6, #4
add r0, r0, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r6, r0, #0
mov r0, #0
ldr r1, [sp, #0x10]
@@ -5070,7 +5070,7 @@ MOD09_02214694: ; 0x02214694
ldr r0, _02214780 ; =0x00002070
ldr r0, [r5, r0]
add r0, r0, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsl r0, r0, #0x18
@@ -5179,7 +5179,7 @@ MOD09_02214790: ; 0x02214790
ldr r0, _0221487C ; =0x00002070
ldr r0, [r5, r0]
add r0, r0, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsl r0, r0, #0x18
@@ -5289,7 +5289,7 @@ MOD09_0221488C: ; 0x0221488C
ldr r0, _0221497C ; =0x00002070
ldr r0, [r5, r0]
add r0, r0, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsl r0, r0, #0x18
@@ -5401,7 +5401,7 @@ MOD09_0221498C: ; 0x0221498C
ldr r0, [r4, r0]
lsl r5, r5, #4
add r0, r0, r5
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsl r0, r0, #0x18
@@ -5513,7 +5513,7 @@ MOD09_02214A8C: ; 0x02214A8C
ldr r0, [r4, r0]
lsl r5, r5, #4
add r0, r0, r5
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsl r0, r0, #0x18
@@ -5602,7 +5602,7 @@ MOD09_02214B8C: ; 0x02214B8C
ldr r0, _02214D14 ; =0x00002070
ldr r0, [r5, r0]
add r0, #0x40
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r1, r0, #3
ldr r0, [sp, #0x14]
ldr r2, [sp, #0x10]
@@ -5843,7 +5843,7 @@ MOD09_02214DE8: ; 0x02214DE8
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r5
lsl r0, r0, #0x10
@@ -5893,7 +5893,7 @@ _02214E42:
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r5
lsl r0, r0, #0x10
@@ -5979,7 +5979,7 @@ MOD09_02214F18: ; 0x02214F18
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r5
lsl r0, r0, #0x10
@@ -6029,7 +6029,7 @@ _02214F72:
lsl r0, r0, #0x10
lsr r5, r0, #0x10
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r5
lsl r0, r0, #0x10
@@ -6166,7 +6166,7 @@ MOD09_022150C8: ; 0x022150C8
lsl r0, r0, #0x10
lsr r6, r0, #0x10
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r1, r0, r6
lsr r0, r1, #0x1f
@@ -6275,7 +6275,7 @@ MOD09_022151A8: ; 0x022151A8
bl FUN_02002E14
str r0, [sp, #0x1c]
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r1, r0, #3
ldr r0, [sp, #0x1c]
ldr r2, [sp, #0x18]
@@ -6461,7 +6461,7 @@ _02215362:
_02215368:
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _022153A8 ; =0x00001FA8
mov r1, #0x3c
ldr r0, [r4, r0]
@@ -6673,7 +6673,7 @@ MOD09_022154FC: ; 0x022154FC
mov r1, #0
lsr r2, r2, #0x10
mov r3, #0x18
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _022155C4 ; =0x00001FA8
mov r1, #0x2c
ldr r0, [r5, r0]
@@ -6748,7 +6748,7 @@ _022155EE:
ldr r0, [sp, #8]
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrh r0, [r6, #8]
cmp r0, #0
beq _0221563E
@@ -6828,7 +6828,7 @@ MOD09_0221567C: ; 0x0221567C
add r0, r0, r4
mov r2, #0x38
mov r3, #0x20
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r2, #0x40
str r2, [sp]
mov r0, #8
@@ -6838,7 +6838,7 @@ MOD09_0221567C: ; 0x0221567C
ldr r0, [r5, r0]
mov r3, #0x18
add r0, r0, r4
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x20
str r0, [sp]
add r0, r5, #0
@@ -6884,22 +6884,22 @@ MOD09_022156FC: ; 0x022156FC
ldr r0, _02215780 ; =0x00002070
mov r1, #0
ldr r0, [r4, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215780 ; =0x00002070
mov r1, #0
ldr r0, [r4, r0]
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215780 ; =0x00002070
mov r1, #0
ldr r0, [r4, r0]
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215780 ; =0x00002070
mov r1, #0
ldr r0, [r4, r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r4]
add r0, r4, #0
ldrb r1, [r1, #0x11]
@@ -7030,7 +7030,7 @@ _02215830:
mov r4, #8
_02215840:
ldr r0, [sp, #0x18]
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r6
sub r0, r0, r7
@@ -7122,7 +7122,7 @@ MOD09_022158EC: ; 0x022158EC
lsl r0, r6, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #1
lsl r0, r0, #4
str r0, [sp, #0x18]
@@ -7131,7 +7131,7 @@ MOD09_022158EC: ; 0x022158EC
ldr r0, [sp, #0x18]
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #2
lsl r0, r0, #4
str r0, [sp, #0x14]
@@ -7140,7 +7140,7 @@ MOD09_022158EC: ; 0x022158EC
ldr r0, [sp, #0x14]
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #3
lsl r0, r0, #4
str r0, [sp, #0x10]
@@ -7149,7 +7149,7 @@ MOD09_022158EC: ; 0x022158EC
ldr r0, [sp, #0x10]
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #4
lsl r0, r0, #4
str r0, [sp, #0xc]
@@ -7158,12 +7158,12 @@ MOD09_022158EC: ; 0x022158EC
ldr r0, [sp, #0xc]
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215A20 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0
str r2, [sp]
str r2, [sp, #4]
@@ -7269,63 +7269,63 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #5
lsl r0, r0, #6
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xe0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xf0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #1
lsl r0, r0, #8
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #0x11
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #0x12
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xd0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
mov r0, #0x15
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
lsl r0, r4, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #0
@@ -7333,7 +7333,7 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #0
@@ -7341,7 +7341,7 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #0
@@ -7349,28 +7349,28 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #5
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #6
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #7
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #0
@@ -7378,7 +7378,7 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #0
@@ -7386,35 +7386,35 @@ MOD09_02215A2C: ; 0x02215A2C
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #4
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #1
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #2
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215C40 ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #3
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0
str r2, [sp]
str r2, [sp, #4]
@@ -7502,68 +7502,68 @@ MOD09_02215C44: ; 0x02215C44
mul r4, r1
add r0, #0x60
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x70
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x80
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x90
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xa0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #1
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
lsl r0, r4, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #2
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #3
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #5
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215D9C ; =0x00002070
ldr r1, [r5, r0]
add r0, r4, #4
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5]
add r2, r5, #0
ldrb r3, [r0, #0x11]
@@ -7652,32 +7652,32 @@ MOD09_02215DA8: ; 0x02215DA8
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02215EC4 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -7785,62 +7785,62 @@ MOD09_02215ED0: ; 0x02215ED0
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x60
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x70
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x90
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xa0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x80
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216090 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0xb0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -7983,27 +7983,27 @@ MOD09_0221609C: ; 0x0221609C
ldr r0, _02216184 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216184 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216184 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216184 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216184 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -8112,37 +8112,37 @@ MOD09_022161B0: ; 0x022161B0
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x40
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x50
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02216304 ; =0x00002070
mov r1, #0
ldr r0, [r5, r0]
add r0, #0x60
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -8275,7 +8275,7 @@ MOD09_02216314: ; 0x02216314
ldr r0, _02216338 ; =0x00002060
mov r1, #0xf
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl MOD09_0221633C
pop {r4, pc}
@@ -11816,7 +11816,7 @@ _0221803C:
lsl r1, r1, #4
add r0, r0, r1
add r1, r7, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
ldr r1, _022180B0 ; =0x00002070
ldr r0, [r5, r1]
add r1, r1, #5
@@ -11839,7 +11839,7 @@ _02218072:
add r0, r1, r0
ldr r2, [sp]
add r1, r7, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
ldr r0, _022180B0 ; =0x00002070
ldr r1, [r5, r0]
ldrb r0, [r6, r4]
@@ -14355,7 +14355,7 @@ _022194C6:
add r1, #0x30
ldrb r1, [r1]
ldr r0, [r0, #0xc]
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #0x2c]
add r0, r5, #0
add r0, #0x30
@@ -14450,7 +14450,7 @@ MOD09_02219560: ; 0x02219560
bl FUN_02002E14
add r7, r0, #0
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsr r3, r0, #1
@@ -14486,7 +14486,7 @@ _022195C4:
ldr r0, [r5, #0x2c]
add r1, r7, #0
add r0, r0, r4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r4, #0x10
cmp r6, #5
@@ -14588,7 +14588,7 @@ MOD09_02219694: ; 0x02219694
add r0, r4, r6
mov r1, #0
str r2, [sp, #0x10]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02219730 ; =0x0000114D
lsl r7, r7, #2
ldrb r1, [r5, r0]
@@ -14626,7 +14626,7 @@ MOD09_02219694: ; 0x02219694
bl FUN_02002E14
add r7, r0, #0
add r0, r4, r6
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsr r3, r0, #1
@@ -14664,7 +14664,7 @@ MOD09_02219738: ; 0x02219738
add r0, r4, r7
mov r1, #0
str r2, [sp, #0x10]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _022197C4 ; =0x0000114D
lsl r6, r6, #2
ldrb r1, [r5, r0]
@@ -14827,7 +14827,7 @@ MOD09_02219884: ; 0x02219884
lsl r0, r0, #4
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x10]
mov r1, #0x1c
ldr r4, [r5, #0x2c]
@@ -14841,7 +14841,7 @@ MOD09_02219884: ; 0x02219884
mov r0, #0x19
lsl r0, r0, #4
add r0, r4, r0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r0, r0, r7
lsr r6, r0, #1
@@ -14962,7 +14962,7 @@ MOD09_022199B4: ; 0x022199B4
lsl r0, r0, #6
add r0, r1, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02219A6C ; =0x0000114D
ldrb r0, [r4, r0]
cmp r0, #3
@@ -15089,7 +15089,7 @@ MOD09_02219A8C: ; 0x02219A8C
bl StringExpandPlaceholders
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -15170,7 +15170,7 @@ _02219B6C:
ldr r0, [r5, #0x2c]
add r1, r7, #0
add r0, r0, r4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r4, #0x10
cmp r6, #4
@@ -15230,7 +15230,7 @@ MOD09_02219BE0: ; 0x02219BE0
add r0, r4, #0
add r0, #0x1c
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl MOD09_02219C08
pop {r4, pc}
@@ -16913,7 +16913,7 @@ _0221A93C:
ldr r1, [sp]
add r2, r7, #0
mov r3, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
ldrb r0, [r4, r5]
ldr r1, [r6, #0x2c]
lsl r0, r0, #4
diff --git a/arm9/modules/11/asm/module_11_thumb1.s b/arm9/modules/11/asm/module_11_thumb1.s
index 32981b60..1bc8e471 100644
--- a/arm9/modules/11/asm/module_11_thumb1.s
+++ b/arm9/modules/11/asm/module_11_thumb1.s
@@ -633,7 +633,7 @@ _0222D99A:
bl FUN_02019064
ldr r0, [r5, #8]
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #8]
mov r1, #0
mov r2, #1
@@ -746,7 +746,7 @@ MOD11_0222DB50: ; 0x0222DB50
str r0, [r4, #4]
mov r0, #5
mov r1, #3
- bl FUN_02018FF4
+ bl AllocWindows
mov r7, #0x73
str r0, [r4, #8]
mov r6, #0
@@ -795,7 +795,7 @@ _0222DC42:
bl FUN_02019064
ldr r0, [r4, #8]
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #8]
mov r1, #0
mov r2, #1
diff --git a/arm9/modules/11/asm/module_11_thumb2.s b/arm9/modules/11/asm/module_11_thumb2.s
index 62996375..3a852eef 100644
--- a/arm9/modules/11/asm/module_11_thumb2.s
+++ b/arm9/modules/11/asm/module_11_thumb2.s
@@ -45,7 +45,7 @@ MOD11_0222F29C: ; 0x0222F29C
str r0, [r5, #4]
mov r0, #5
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #8]
add r0, r5, #0
bl FUN_0206BFF0
@@ -186,7 +186,7 @@ _0222F30E:
bl FUN_02019064
ldr r0, [r5, #8]
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #8]
mov r1, #0
mov r2, #1
@@ -4854,7 +4854,7 @@ _022316CC:
add r4, r0, #0
add r0, r6, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
ldr r0, [sp, #0x28]
str r3, [sp]
@@ -4892,7 +4892,7 @@ _02231708:
add r4, r0, #0
add r0, r6, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
ldr r0, [sp, #0x28]
str r3, [sp]
@@ -4917,7 +4917,7 @@ _0223174C:
bl GetTrainerMessageByIdPair
add r0, r6, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
ldr r0, [sp, #0x28]
str r3, [sp]
@@ -4962,7 +4962,7 @@ MOD11_0223178C: ; 0x0223178C
bl MOD11_022321EC
add r0, r7, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
ldr r0, _022317DC ; =MOD11_0223220C
@@ -5000,7 +5000,7 @@ MOD11_022317E0: ; 0x022317E0
beq _02231814
add r0, r4, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
_02231814:
ldr r1, [sp, #0x28]
mov r0, #2
@@ -23862,7 +23862,7 @@ _0223AC50:
bl FUN_02019064
add r0, r5, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
mov r1, #0
mov r2, #1
@@ -23987,7 +23987,7 @@ _0223ADBA:
mov r2, #0x50
mov r3, #0
add r7, r0, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
str r1, [sp, #0x4c]
add r5, sp, #0xb0
@@ -28099,7 +28099,7 @@ _0223CF5C:
add r0, r6, #0
bl String_dtor
add r0, sp, #0x68
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -62294,7 +62294,7 @@ MOD11_0224D518: ; 0x0224D518
bl MOD11_0222FF6C
add r6, r0, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0
bl FUN_02019548
mov r1, #0x65
@@ -71657,7 +71657,7 @@ _022520D2:
bl MOD11_0222FF6C
add r6, r0, #0
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0
bl FUN_02019548
ldr r0, [r4]
@@ -88280,7 +88280,7 @@ _0225A49C:
cmp r4, #0
bne _0225A4DA
add r0, sp, #0x3c
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -88914,7 +88914,7 @@ MOD11_0225A968: ; 0x0225A968
bl FUN_02019178
_0225A994:
add r0, r4, #0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [r5]
bl MOD11_0222FF68
mov r1, #0
diff --git a/arm9/modules/12/asm/module_12.s b/arm9/modules/12/asm/module_12.s
index f717789a..01de211a 100644
--- a/arm9/modules/12/asm/module_12.s
+++ b/arm9/modules/12/asm/module_12.s
@@ -7568,7 +7568,7 @@ MOD12_02231380: ; 0x02231380
add r6, r6, #1
_022313B0:
add r0, sp, #0x34
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -9540,7 +9540,7 @@ _022322FE:
cmp r4, #0
bne _0223233C
add r0, sp, #0x3c
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -10928,7 +10928,7 @@ MOD12_02232D7C: ; 0x02232D7C
bl FUN_02019178
_02232DA8:
add r0, r4, #0
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -15225,7 +15225,7 @@ MOD12_02234EFC: ; 0x02234EFC
add r4, r0, #0
add r0, #0x34
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, #0x34
add r0, r4, #0
bl CopyWindowToVram
@@ -15275,7 +15275,7 @@ _02234F42:
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r4, [sp, #4]
@@ -25518,7 +25518,7 @@ _02239AF4:
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r4, [sp, #4]
@@ -29905,7 +29905,7 @@ _0223BCF0:
add r6, r6, #1
_0223BD1C:
add r0, sp, #0x38
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -34767,7 +34767,7 @@ _0223E210:
add r0, r5, #0
add r0, #0x78
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r4, [sp, #4]
@@ -35104,7 +35104,7 @@ _0223E49A:
add r0, r5, #0
add r0, #0x88
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r3, [sp, #4]
@@ -43554,7 +43554,7 @@ _02242618:
add r0, r5, #0
add r0, #0x34
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r4, [sp, #4]
@@ -43894,13 +43894,13 @@ _022428E6:
str r0, [sp, #0x14]
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #5
lsl r0, r0, #4
str r0, [sp, #0x18]
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
str r0, [sp]
mov r0, #0
@@ -47014,7 +47014,7 @@ _022440EE:
ldr r0, [r4]
mov r1, #0xff
add r0, #0x34
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
add r0, #0x34
bl CopyWindowToVram
diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s
index 37a18d6d..3a321743 100644
--- a/arm9/modules/14/asm/module_14.s
+++ b/arm9/modules/14/asm/module_14.s
@@ -13820,7 +13820,7 @@ MOD14_021DE1D0: ; 0x021DE1D0
beq _021DE262
mov r0, #0xa
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
beq _021DE250
ldr r0, _021DE270 ; =0x00005984
@@ -19634,7 +19634,7 @@ MOD14_021E0F40: ; 0x021E0F40
beq _021E0FA0
mov r0, #0xa
mov r1, #4
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #4]
cmp r0, #0
beq _021E0F94
@@ -19965,7 +19965,7 @@ _021E11CE:
add r0, #0x30
mov r2, #4
add r3, r1, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
ldr r0, [r5, #4]
add r0, #0x30
bl FUN_02019548
@@ -20058,7 +20058,7 @@ MOD14_021E1284: ; 0x021E1284
ldr r4, [r0, #4]
add r4, #0x30
add r0, r4, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrh r2, [r5, #2]
ldr r1, [r5, #8]
add r0, r4, #0
@@ -20233,19 +20233,19 @@ MOD14_021E13F0: ; 0x021E13F0
beq _021E144E
ldr r0, [r4, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x10]
bl MOD14_021DC408
cmp r0, #0
@@ -20276,19 +20276,19 @@ MOD14_021E1450: ; 0x021E1450
beq _021E14CC
ldr r0, [r4, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x24]
cmp r0, #0
beq _021E148E
@@ -20334,19 +20334,19 @@ MOD14_021E14D0: ; 0x021E14D0
beq _021E153A
ldr r0, [r4, #4]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x10
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0xf
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
mov r1, #0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x24]
cmp r0, #0
beq _021E150E
@@ -20615,7 +20615,7 @@ MOD14_021E1704: ; 0x021E1704
ldr r0, [r5, #4]
mov r1, #0
add r0, #0x30
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrb r0, [r4, #0xf]
cmp r0, #0
bne _021E1742
@@ -20751,7 +20751,7 @@ MOD14_021E1818: ; 0x021E1818
add r6, r0, #0
mov r0, #0xa
mov r1, #2
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r6, #0x18]
cmp r0, #0
beq _021E1848
@@ -20828,7 +20828,7 @@ MOD14_021E189C: ; 0x021E189C
bl MOD14_021E1908
ldr r0, [r5, #0x18]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x10]
ldr r2, [r5, #0x30]
add r1, r4, #0
@@ -20976,7 +20976,7 @@ _021E19E8:
str r0, [sp, #0x14]
add r0, #0x10
str r0, [sp, #0x14]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x10]
mov r6, #0
add r0, #0x21
@@ -21087,7 +21087,7 @@ _021E1AA0:
ldr r1, [r1, #0x14]
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_02019684
+ bl BlitBitmapRect
add sp, #0x1c
pop {r4, r5, pc}
.align 2, 0
@@ -21221,7 +21221,7 @@ MOD14_021E1B9C: ; 0x021E1B9C
mov r1, #0xf
mov r2, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r6, #0x20
ldrb r2, [r6]
add r0, r4, #0
@@ -21631,7 +21631,7 @@ MOD14_021E1EEC: ; 0x021E1EEC
add r7, r0, #0
mov r0, #0xa
mov r1, #3
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r7, #0x10]
cmp r0, #0
beq _021E1F1A
@@ -22259,7 +22259,7 @@ MOD14_021E2394: ; 0x021E2394
add r6, r0, #0
add r0, r4, #0
mov r1, #7
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -22288,7 +22288,7 @@ MOD14_021E23F8: ; 0x021E23F8
ldr r4, [r0, #0x10]
mov r1, #7
add r0, r4, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl FUN_02019548
pop {r4, pc}
@@ -22303,7 +22303,7 @@ MOD14_021E240C: ; 0x021E240C
str r0, [sp, #0xc]
add r0, #0x10
str r0, [sp, #0xc]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r7, #0
bl MOD14_021E2188
mov r6, #0
@@ -22345,7 +22345,7 @@ MOD14_021E2464: ; 0x021E2464
mov r1, #4
add r4, #0x10
add r0, r4, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl FUN_02019548
pop {r4, pc}
@@ -22698,7 +22698,7 @@ MOD14_021E26E4: ; 0x021E26E4
ldr r0, [r5, #0x10]
mov r1, #4
add r0, #0x20
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021E279C ; =0x00004BF8
add r1, r6, #0
ldr r0, [r5, r2]
@@ -24684,7 +24684,7 @@ MOD14_021E355C: ; 0x021E355C
add r0, r4, #0
add r0, #0x88
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x88
bl CopyWindowToVram
@@ -27058,7 +27058,7 @@ _021E47AE:
ldrh r3, [r5, #2]
add r0, r7, #0
mov r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #2
ldrsh r0, [r5, r0]
mov r1, #0
@@ -28653,11 +28653,11 @@ _021E541E:
add r0, r7, #0
add r0, #0x78
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r7, #0
add r0, #0x88
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r7, #0
mov r5, #0
add r4, #0x78
@@ -28797,7 +28797,7 @@ _021E554C:
bl FUN_02019270
add r0, r5, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r7, #8
cmp r6, #2
@@ -28983,7 +28983,7 @@ _021E56B4:
bl FUN_02019270
add r0, r5, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r7, #8
cmp r6, #2
@@ -29032,7 +29032,7 @@ MOD14_021E5718: ; 0x021E5718
add r7, #0x98
add r0, r7, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #8]
bl MOD14_021DC560
cmp r0, #0
@@ -29116,7 +29116,7 @@ MOD14_021E57CC: ; 0x021E57CC
add r4, #0x98
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl FUN_02019548
pop {r4, pc}
@@ -29156,7 +29156,7 @@ _021E581A:
str r0, [sp, #0x14]
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x18]
cmp r0, #1
bne _021E5836
@@ -29299,7 +29299,7 @@ _021E593E:
str r0, [sp, #0x18]
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x1c]
cmp r0, #1
bne _021E595A
@@ -29753,7 +29753,7 @@ MOD14_021E5CFC: ; 0x021E5CFC
add r4, r1, r0
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #8]
bl MOD14_021DC3F0
cmp r0, #0
diff --git a/arm9/modules/15/asm/module_15.s b/arm9/modules/15/asm/module_15.s
index 560be120..cd1cb9eb 100644
--- a/arm9/modules/15/asm/module_15.s
+++ b/arm9/modules/15/asm/module_15.s
@@ -4345,7 +4345,7 @@ MOD15_021D95E8: ; 0x021D95E8
bl NewMsgDataFromNarc
str r0, [r4, #0x48]
mov r0, #0x23
- bl FUN_02013690
+ bl ListMenuCursorNew
str r0, [r4, #0x50]
add r0, r4, #0
pop {r3, r4, r5, r6, r7, pc}
@@ -4359,7 +4359,7 @@ MOD15_021D9634: ; 0x021D9634
ldr r0, [r4, #0x50]
cmp r0, #0
beq _021D9642
- bl FUN_020136C0
+ bl DestroyListMenuCursorObj
_021D9642:
ldr r0, [r4, #0x3c]
cmp r0, #0
@@ -4749,7 +4749,7 @@ MOD15_021D9964: ; 0x021D9964
add r0, r4, #0
add r0, #0xc
mov r1, #0xd
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #4]
bl MOD15_021D86E4
cmp r0, #0
@@ -5135,7 +5135,7 @@ MOD15_021D9C30: ; 0x021D9C30
ldrh r3, [r3, #2]
add r0, r4, #0
mov r1, #0xe
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #0xc
pop {r3, r4, pc}
@@ -5194,7 +5194,7 @@ MOD15_021D9CB4: ; 0x021D9CB4
add r5, r1, #0
add r0, #0x1c
mov r1, #9
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r5, #3
bhi _021D9DB0
add r0, r5, r5
@@ -5462,7 +5462,7 @@ MOD15_021D9ECC: ; 0x021D9ECC
add r4, r1, #0
add r0, #0x2c
mov r1, #9
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x48]
ldr r2, [r5, #0x4c]
mov r1, #9
@@ -5509,7 +5509,7 @@ MOD15_021D9ECC: ; 0x021D9ECC
add r1, #0x2c
mov r2, #0
lsl r3, r4, #4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
add r5, #0x2c
add r0, r5, #0
bl CopyWindowToVram
@@ -5533,13 +5533,13 @@ MOD15_021D9F58: ; 0x021D9F58
add r0, #0x2c
mov r1, #9
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [r5, #0x50]
add r5, #0x2c
add r1, r5, #0
mov r2, #0
lsl r3, r4, #4
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
add sp, #8
pop {r3, r4, r5, pc}
@@ -5650,7 +5650,7 @@ MOD15_021DA044: ; 0x021DA044
bl FUN_02019270
add r0, sp, #0x10
mov r1, #0xe
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _021DA0B0 ; =0x00000183
mov r0, #0x1a
add r2, r4, #0
@@ -6021,7 +6021,7 @@ _021DA31A:
bl FUN_02019064
add r0, sp, #0x28
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
add r1, r5, #0
add r2, r0, #0
@@ -6102,7 +6102,7 @@ _021DA3CC:
add r4, r0, #0
add r0, sp, #0x20
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
bl MOD15_021DB770
add r7, r0, #0
ldr r5, _021DA474 ; =0x00000000
@@ -6215,7 +6215,7 @@ _021DA4C2:
bl FUN_02019064
add r0, r6, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
mov r0, #0xff
@@ -6769,7 +6769,7 @@ MOD15_021DA8E8: ; 0x021DA8E8
add r0, r5, #0
add r0, #0x10
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x10
bl FUN_02019270
@@ -6853,7 +6853,7 @@ MOD15_021DA9D4: ; 0x021DA9D4
add r6, r0, #0
add r0, #0x10
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0
bl MOD15_021DAD78
ldr r0, [r6, #4]
@@ -7291,7 +7291,7 @@ _021DAD1A:
add r0, r5, #0
add r2, r1, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #8
pop {r3, r4, r5, pc}
_021DAD3E:
@@ -7308,7 +7308,7 @@ _021DAD3E:
add r0, #0x10
add r2, r1, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xd0
str r0, [sp]
@@ -7319,7 +7319,7 @@ _021DAD3E:
add r0, r5, #0
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #8
pop {r3, r4, r5, pc}
@@ -7378,7 +7378,7 @@ _021DADD4:
add r0, r5, #0
add r0, #0x20
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -7416,7 +7416,7 @@ _021DADD4:
ldr r1, [r5, #0x2c]
add r0, #0x10
add r3, r2, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r1, #0x60
lsl r2, r7, #0x10
lsl r3, r6, #0x10
@@ -7436,7 +7436,7 @@ _021DADD4:
ldr r1, [r5, #0x2c]
add r0, #0x10
lsr r3, r3, #0x10
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -7680,7 +7680,7 @@ MOD15_021DAFF8: ; 0x021DAFF8
cmp r0, #0
beq _021DB0D4
add r0, sp, #0x10
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [r5, #0xc]
add r1, sp, #0xc
str r0, [sp, #0x10]
diff --git a/arm9/modules/16/asm/module_16.s b/arm9/modules/16/asm/module_16.s
index 26ae4fbf..adc8e5c2 100644
--- a/arm9/modules/16/asm/module_16.s
+++ b/arm9/modules/16/asm/module_16.s
@@ -3518,7 +3518,7 @@ MOD16_021D8F60: ; 0x021D8F60
bl FUN_02019064
add r0, r4, #4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #4
bl CopyWindowToVram
add sp, #0x14
@@ -8433,9 +8433,9 @@ MOD16_021DB388: ; 0x021DB388
add r4, r1, #0
mov r1, #1
add r6, r2, #0
- bl FUN_02018FF4
+ bl AllocWindows
add r7, r0, #0
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -9139,7 +9139,7 @@ MOD16_021DB7F4: ; 0x021DB7F4
str r0, [sp, #0x10]
str r0, [sp, #0x14]
ldr r0, [sp, #0x18]
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
_021DB848:
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
@@ -13350,7 +13350,7 @@ _021DD77E:
ldr r0, [r5]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5]
mov r1, #1
ldr r0, [r0]
@@ -13505,7 +13505,7 @@ _021DD8A8:
ldr r0, [r5]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5]
mov r1, #1
ldr r0, [r0]
@@ -16653,7 +16653,7 @@ MOD16_021DEFF8: ; 0x021DEFF8
ldr r0, [r5]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5]
mov r1, #7
add r0, r0, #4
@@ -16737,7 +16737,7 @@ MOD16_021DF0BC: ; 0x021DF0BC
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
@@ -17058,7 +17058,7 @@ MOD16_021DF350: ; 0x021DF350
mov r1, #0
mov r2, #0x18
mov r3, #8
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r6, #3
bhi _021DF394
add r0, r6, r6
@@ -17135,7 +17135,7 @@ MOD16_021DF3E4: ; 0x021DF3E4
mov r1, #0
mov r2, #0x18
mov r3, #8
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #0x5d
add r1, r5, #0
bl MOD16_021D8270
@@ -17387,7 +17387,7 @@ MOD16_021DF5D0: ; 0x021DF5D0
mov r1, #0
mov r2, #0x58
mov r3, #0x34
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r5, #0x51
add r0, r5, #0
add r1, r6, #0
@@ -17433,7 +17433,7 @@ MOD16_021DF630: ; 0x021DF630
mov r1, #0
mov r2, #0x58
mov r3, #0x4d
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r6, #9
bhi _021DF698
add r0, r6, r6
@@ -17529,7 +17529,7 @@ MOD16_021DF6D8: ; 0x021DF6D8
mov r1, #0
mov r2, #0x58
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r6, #0x11
bhi _021DF774
add r0, r6, r6
@@ -17852,7 +17852,7 @@ _021DF92E:
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
add r0, r0, #4
bl FUN_02019220
@@ -17883,7 +17883,7 @@ MOD16_021DF970: ; 0x021DF970
add r4, r1, #0
add r0, r5, #4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x5e
add r1, r4, #0
bl MOD16_021D8270
@@ -17928,7 +17928,7 @@ MOD16_021DF9C0: ; 0x021DF9C0
ldr r0, [r5]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r4]
add r0, r5, #0
add r2, r6, #0
@@ -26946,7 +26946,7 @@ MOD16_021E3B70: ; 0x021E3B70
add r6, r2, #0
add r0, r0, #4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
str r6, [sp]
ldr r3, _021E3BBC ; =0x000007F8
ldr r0, [r4]
@@ -26985,7 +26985,7 @@ MOD16_021E3BC8: ; 0x021E3BC8
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
mov r1, #1
ldr r0, [r0]
@@ -27335,7 +27335,7 @@ MOD16_021E3E6C: ; 0x021E3E6C
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #2
lsl r0, r0, #0xa
ldr r3, [r5, r0]
@@ -29593,7 +29593,7 @@ MOD16_021E4EE4: ; 0x021E4EE4
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r1, r4, #0
bl MOD16_021E5224
@@ -34307,7 +34307,7 @@ MOD16_021E71A8: ; 0x021E71A8
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r1, r4, #0
bl MOD16_021E753C
@@ -41593,7 +41593,7 @@ MOD16_021EA858: ; 0x021EA858
add r2, r1, #0
add r0, r0, #4
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [r4]
mov r1, #1
ldr r0, [r0]
@@ -41901,7 +41901,7 @@ MOD16_021EAAA4: ; 0x021EAAA4
mov r1, #0
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r1, [sp, #0x38]
ldr r0, [sp, #0xc]
mov r6, #0
@@ -42016,7 +42016,7 @@ _021EABA2:
mov r1, #6
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
str r5, [r4]
add sp, #0xc
pop {r4, r5, r6, r7, pc}
@@ -42049,7 +42049,7 @@ MOD16_021EABC4: ; 0x021EABC4
mov r1, #0
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r5, r6
bge _021EAC18
_021EABFE:
@@ -45513,7 +45513,7 @@ MOD16_021EC574: ; 0x021EC574
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
mov r1, #1
ldr r0, [r0]
@@ -48265,7 +48265,7 @@ MOD16_021EDA3C: ; 0x021EDA3C
ldr r0, [r4]
mov r1, #0
add r0, r0, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4]
mov r1, #1
ldr r0, [r0]
@@ -51457,7 +51457,7 @@ MOD16_021EF318: ; 0x021EF318
add r5, r0, #0
add r0, r1, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
mov r3, #0
str r3, [sp]
@@ -51473,7 +51473,7 @@ MOD16_021EF318: ; 0x021EF318
bl FUN_02019064
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl CopyWindowToVram
add r0, r4, #0
diff --git a/arm9/modules/17/asm/module_17.s b/arm9/modules/17/asm/module_17.s
index 82398e6b..b96d5a98 100644
--- a/arm9/modules/17/asm/module_17.s
+++ b/arm9/modules/17/asm/module_17.s
@@ -2123,7 +2123,7 @@ MOD17_021D83E4: ; 0x021D83E4
str r0, [r5, r1]
mov r0, #0xd
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
ldr r2, _021D84EC ; =0x000006A8
mov r1, #0
str r0, [r5, r2]
@@ -2663,7 +2663,7 @@ _021D88F8:
str r0, [r4, r1]
mov r0, #0xd
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
ldr r1, _021D8994 ; =0x000006A8
mov r2, #0
str r0, [r4, r1]
@@ -4691,7 +4691,7 @@ MOD17_021D9918: ; 0x021D9918
ldr r0, _021D99D4 ; =0x000006A8
mov r1, #0xf
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
lsl r0, r6, #0x18
lsr r0, r0, #0x18
str r0, [sp]
@@ -4753,7 +4753,7 @@ MOD17_021D99E0: ; 0x021D99E0
add r4, r1, #0
ldr r0, [r5, r0]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021D9A5C ; =0x00000151
mov r0, #0
mov r1, #0x1a
@@ -4818,7 +4818,7 @@ _021D9A7E:
ldr r0, _021D9B08 ; =0x000006A8
mov r1, #0xf
ldr r0, [r5, r0]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021D9B0C ; =0x00000151
mov r0, #0
mov r1, #0x1a
@@ -11265,9 +11265,9 @@ _021DC898:
add r7, r0, #0
mov r0, #0xe
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r4, r0, #0
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
ldr r2, [sp, #0x28]
ldr r3, [sp, #0x2c]
@@ -11436,7 +11436,7 @@ _021DC9CC:
lsl r0, r0, #2
ldr r0, [r5, r0]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -11789,9 +11789,9 @@ MOD17_021DCC68: ; 0x021DCC68
mov r0, #0xe
mov r1, #1
add r4, r2, #0
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5]
- bl FUN_0201901C
+ bl InitWindow
lsl r0, r6, #0x18
lsr r0, r0, #0x18
str r0, [sp]
@@ -11817,7 +11817,7 @@ MOD17_021DCC68: ; 0x021DCC68
bl FUN_02019064
ldr r0, [r5]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x34]
cmp r0, #0
beq _021DCCCC
@@ -11860,7 +11860,7 @@ MOD17_021DCCEC: ; 0x021DCCEC
add r5, r0, #0
add r6, r2, #0
add r7, r3, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x28]
add r1, r4, #0
str r0, [sp]
@@ -11896,7 +11896,7 @@ MOD17_021DCD34: ; 0x021DCD34
add r5, r0, #0
add r6, r2, #0
add r7, r3, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x28]
add r1, r4, #0
str r0, [sp]
@@ -12396,7 +12396,7 @@ _021DD0D0:
bl MOD17_021DCC68
ldr r0, [r7, #0x18]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
mov r3, #4
@@ -14242,7 +14242,7 @@ MOD17_021DDF1C: ; 0x021DDF1C
add r4, r0, #0
mov r0, #0xe
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
mov r1, #0x19
lsl r1, r1, #4
str r0, [r4, r1]
@@ -14313,7 +14313,7 @@ MOD17_021DDFAC: ; 0x021DDFAC
lsl r0, r0, #4
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0xc]
cmp r0, #0
bne _021DDFCA
diff --git a/arm9/modules/18/asm/module_18.s b/arm9/modules/18/asm/module_18.s
index d0f6db33..dccb0b7d 100644
--- a/arm9/modules/18/asm/module_18.s
+++ b/arm9/modules/18/asm/module_18.s
@@ -22033,18 +22033,18 @@ MOD18_02244028: ; 0x02244028
ldr r1, [sp, #0x30]
strb r1, [r0, #0x1e]
ldr r0, [sp, #8]
- bl FUN_02013690
+ bl ListMenuCursorNew
ldr r1, [sp, #0xc]
str r0, [r1, #0x10]
ldr r1, _022440C0 ; =0x0008090F
- bl FUN_020136E0
+ bl ListMenuCursorSetColor
ldr r1, [sp, #8]
ldr r0, [sp, #0xc]
strb r1, [r0, #0x1d]
ldr r1, [sp, #0xc]
ldrh r0, [r5, #0x10]
ldrb r1, [r1, #0x1d]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r7, r0, #0
ldrh r0, [r5, #0x10]
mov r6, #0
@@ -22055,7 +22055,7 @@ _02244084:
ldr r1, [r5]
add r0, r7, #0
add r1, r1, r4
- bl ListMenu_CopyItem
+ bl ListMenuItems_CopyItem
ldrh r0, [r5, #0x10]
add r6, r6, #1
add r4, #8
@@ -22075,7 +22075,7 @@ _0224409E:
ldr r2, [sp, #4]
ldr r3, [sp, #8]
add r0, r5, #0
- bl FUN_020010A8
+ bl ListMenuInit
ldr r1, [sp, #0xc]
str r0, [r1, #0xc]
add r0, r1, #0
@@ -22099,7 +22099,7 @@ MOD18_022440C4: ; 0x022440C4
lsr r6, r0, #0x10
ldr r0, [r4, #0xc]
mov r1, #3
- bl FUN_02001470
+ bl ListMenuGetTemplateField
lsl r0, r0, #0x10
lsr r1, r0, #0x10
ldrh r0, [r4, #0x18]
@@ -22118,29 +22118,29 @@ _022440F0:
bhi _0224413A
ldr r0, [r4, #0xc]
mov r1, #7
- bl FUN_02001470
+ bl ListMenuGetTemplateField
str r0, [sp]
ldr r0, [r4, #0xc]
mov r1, #9
- bl FUN_02001470
+ bl ListMenuGetTemplateField
lsl r0, r0, #0x18
lsr r7, r0, #0x18
ldr r0, [r4, #0xc]
mov r1, #8
- bl FUN_02001470
+ bl ListMenuGetTemplateField
str r0, [sp, #4]
sub r0, r6, r5
add r5, r7, #0
mul r5, r0
ldr r0, [r4, #0xc]
mov r1, #0x12
- bl FUN_02001470
+ bl ListMenuGetTemplateField
ldr r3, [sp, #4]
add r1, r0, #0
ldr r0, [r4, #0x10]
ldr r2, [sp]
add r3, r5, r3
- bl FUN_020136F8
+ bl ListMenuUpdateCursorObj
_0224413A:
add sp, #8
pop {r3, r4, r5, r6, r7, pc}
@@ -22159,13 +22159,13 @@ MOD18_02244140: ; 0x02244140
beq _0224418A
ldr r0, [sp, #4]
mov r1, #2
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r7, r0, #0
add r1, sp, #0xc
ldr r0, [sp, #4]
add r1, #2
add r2, sp, #0xc
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
ldrb r0, [r5, #0x1c]
cmp r0, #0
bne _0224416E
@@ -22216,7 +22216,7 @@ _022441BA:
blx r3
ldrb r1, [r5, #0x1d]
add r0, r7, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r4, #0
add r6, r4, #0
str r0, [sp]
@@ -22234,7 +22234,7 @@ _022441DE:
lsl r1, r4, #3
ldr r0, [sp]
add r1, r2, r1
- bl ListMenu_CopyItem
+ bl ListMenuItems_CopyItem
_022441EA:
add r0, sp, #0xc
ldrh r1, [r0, #2]
@@ -22250,7 +22250,7 @@ _022441EA:
add r1, r2, r1
lsl r1, r1, #3
add r1, r3, r1
- bl ListMenu_CopyItem
+ bl ListMenuItems_CopyItem
_0224420A:
add r6, r6, #1
cmp r6, r7
@@ -22312,11 +22312,11 @@ _02244268:
ldr r1, [sp]
str r0, [r5, #8]
ldr r0, [sp, #4]
- bl FUN_02001658
+ bl ListMenuGetItemStr
mov r0, #0
strb r0, [r5, #0x1c]
ldr r0, [sp, #4]
- bl FUN_02001328
+ bl RedrawListMenu
mov r0, #0
add sp, #0x10
mvn r0, r0
@@ -22355,13 +22355,13 @@ _022442B2:
pop {r3, r4, r5, r6, r7, pc}
_022442CA:
ldr r0, [sp, #4]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r1, r5, #0
ldr r0, [sp, #4]
add r1, #0x20
ldrh r6, [r5, #0x20]
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldrh r0, [r5, #0x20]
cmp r6, r0
beq _022442EA
@@ -22397,12 +22397,12 @@ MOD18_02244318: ; 0x02244318
push {r4, lr}
add r4, r0, #0
ldr r0, [r4, #0xc]
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r4]
cmp r0, #0
beq _02244334
ldr r0, [r4, #0x10]
- bl FUN_020136C0
+ bl DestroyListMenuCursorObj
ldr r0, [r4, #8]
bl FreeToHeap
_02244334:
@@ -23187,7 +23187,7 @@ MOD18_0224486C: ; 0x0224486C
bl FUN_020545B8
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x80
str r3, [sp]
mov r2, #4
@@ -23388,7 +23388,7 @@ _02244AF8:
ldr r0, [sp, #0xc]
mov r2, #2
add r3, r1, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
ldr r0, [sp, #0xc]
bl CopyWindowToVram
ldr r0, [r5]
@@ -25548,21 +25548,21 @@ MOD18_02245B1C: ; 0x02245B1C
add r5, r0, #0
ldr r1, [sp, #0x30]
mov r0, #2
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r4, r0, #0
add r1, r5, #0
mov r2, #0x26
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r4, #0
add r1, r5, #0
mov r2, #0x27
mov r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, [sp, #0x30]
mov r1, #1
str r4, [sp, #0x10]
- bl FUN_02018FF4
+ bl AllocWindows
add r1, r0, #0
str r1, [sp, #0x14]
mov r0, #0
@@ -29532,7 +29532,7 @@ MOD18_02247AA8: ; 0x02247AA8
add r5, r0, #0
mov r0, #4
add r1, r0, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x1c]
mov r3, #1
str r3, [sp]
@@ -29569,7 +29569,7 @@ _02247AFA:
ldr r2, [r4]
ldr r3, [r4, #4]
add r1, r7, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, #4
@@ -29593,7 +29593,7 @@ _02247AFA:
strh r1, [r5, #0x3a]
add r0, sp, #0x14
add r2, r1, #0
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x20]
add r5, #0xc
add r0, r5, #0
@@ -29658,7 +29658,7 @@ MOD18_02247BB8: ; 0x02247BB8
add r5, r0, #0
mov r0, #4
add r1, r0, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x1c]
mov r3, #1
str r3, [sp]
@@ -29714,7 +29714,7 @@ _02247C2C:
ldr r0, [r5, #0x1c]
add r1, r6, #0
add r3, r2, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _02247C40
_02247C3E:
sub r4, r4, #1
@@ -29745,7 +29745,7 @@ _02247C40:
strh r1, [r5, #0x3a]
add r2, r1, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x20]
add r5, #0xc
add r0, r5, #0
@@ -29766,7 +29766,7 @@ MOD18_02247C98: ; 0x02247C98
add r5, r1, #0
add r6, r0, #0
ldr r0, [r5, #0x20]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD18_02248FEC
@@ -29831,7 +29831,7 @@ MOD18_02247D1C: ; 0x02247D1C
add r5, r0, #0
mov r0, #4
add r1, r0, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x1c]
mov r3, #1
str r3, [sp]
@@ -29871,7 +29871,7 @@ _02247D6C:
lsl r2, r2, #2
add r2, r4, r2
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, #4
blt _02247D6C
@@ -29898,7 +29898,7 @@ _02247D6C:
strh r1, [r5, #0x3a]
add r2, r1, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x20]
add r5, #0xc
add r0, r5, #0
@@ -29919,7 +29919,7 @@ MOD18_02247DD8: ; 0x02247DD8
add r5, r1, #0
add r6, r0, #0
ldr r0, [r5, #0x20]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD18_02248FEC
@@ -30102,7 +30102,7 @@ MOD18_02247F5C: ; 0x02247F5C
add r5, r1, #0
add r6, r0, #0
ldr r0, [r5, #0x20]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD18_02248FEC
@@ -30159,7 +30159,7 @@ MOD18_02247FC0: ; 0x02247FC0
mov r1, #0
ldr r0, [r4, #0x20]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0
add r0, #0xc
bl FUN_02019570
@@ -30167,7 +30167,7 @@ MOD18_02247FC0: ; 0x02247FC0
add r0, #0xc
bl FUN_02019178
ldr r0, [r4, #0x1c]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
str r0, [r4, #0x1c]
_02247FF8:
@@ -31135,7 +31135,7 @@ MOD18_02248784: ; 0x02248784
mov r1, #0
ldr r0, [r4, #0x1c]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0
add r0, #8
bl FUN_02019570
@@ -31143,7 +31143,7 @@ MOD18_02248784: ; 0x02248784
add r0, #8
bl FUN_02019178
ldr r0, [r4, #0x18]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
str r0, [r4, #0x18]
_022487BC:
@@ -31202,7 +31202,7 @@ MOD18_02248820: ; 0x02248820
add r5, r0, #0
mov r0, #5
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x18]
mov r3, #1
add r1, r5, #0
@@ -31242,7 +31242,7 @@ _02248870:
lsl r2, r2, #2
add r2, r4, r2
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, #4
blt _02248870
@@ -31250,7 +31250,7 @@ _02248870:
add r1, r6, #0
mov r2, #0x30
mov r3, #0x33
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #0
bl DestroyMsgData
ldr r4, _022488EC ; =0x02250528
@@ -31278,7 +31278,7 @@ _02248870:
strh r1, [r5, #0x36]
add r2, r1, #0
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x1c]
add r5, #8
add r0, r5, #0
@@ -31298,13 +31298,13 @@ MOD18_022488F0: ; 0x022488F0
add r5, r1, #0
add r7, r0, #0
ldr r0, [r5, #0x1c]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r1, r5, #0
ldr r0, [r5, #0x1c]
add r1, #0x36
ldrh r6, [r5, #0x36]
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldrh r0, [r5, #0x36]
cmp r6, r0
beq _02248916
@@ -32213,7 +32213,7 @@ MOD18_02248FEC: ; 0x02248FEC
ldr r0, [r5, #0x20]
add r1, #0x3a
ldrh r4, [r5, #0x3a]
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldrh r0, [r5, #0x3a]
cmp r4, r0
beq _02249008
@@ -32943,7 +32943,7 @@ MOD18_02249564: ; 0x02249564
bl MOD18_02249544
mov r0, #7
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r0, #1
str r0, [sp]
@@ -32985,7 +32985,7 @@ _022495BA:
ldr r0, [r5, #0x40]
ldr r2, [r4, #4]
add r1, r7, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r7, #0
bl String_dtor
b _022495EE
@@ -32994,7 +32994,7 @@ _022495E2:
ldr r1, [sp, #0x14]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_022495EE:
add r6, r6, #1
add r4, #8
@@ -33377,7 +33377,7 @@ _02249902:
beq _02249916
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0
str r0, [r4, #0x48]
b _02249936
@@ -33413,7 +33413,7 @@ _02249936:
add r0, #0x10
bl FUN_02019178
ldr r0, [r4, #0x40]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0
bl MOD18_0224CBAC
_02249968:
@@ -33456,7 +33456,7 @@ _02249998:
_022499A2:
add r0, r6, #0
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x44]
lsl r0, r7, #0x18
lsr r0, r0, #0x18
@@ -33498,7 +33498,7 @@ _022499FA:
ldr r1, [sp, #0x14]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r7, r7, #1
add r4, #8
cmp r7, r6
@@ -33530,7 +33530,7 @@ _02249A0E:
add r2, r1, #0
mov r3, #4
str r5, [sp, #0x3c]
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x50]
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
@@ -33552,14 +33552,14 @@ MOD18_02249A64: ; 0x02249A64
beq _02249A8C
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r1, r4, #0
add r1, #0x24
ldrb r1, [r1]
ldr r0, [r4, #0x20]
bl FUN_0201AC68
ldr r0, [r4, #0x44]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
str r0, [r4, #0x50]
_02249A8C:
@@ -33623,7 +33623,7 @@ MOD18_02249AF4: ; 0x02249AF4
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r2, #0x81
add r1, r0, #0
lsl r2, r2, #2
@@ -33730,7 +33730,7 @@ MOD18_02249BA8: ; 0x02249BA8
bl MOD18_0224DB80
add r0, r6, #1
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -33767,7 +33767,7 @@ _02249C18:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, r6
blt _02249C18
@@ -33777,7 +33777,7 @@ _02249C30:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
sub r3, #0x24
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r3, _02249CBC ; =0x02250598
add r2, sp, #0x1c
ldmia r3!, {r0, r1}
@@ -33853,7 +33853,7 @@ MOD18_02249CC8: ; 0x02249CC8
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -33862,7 +33862,7 @@ MOD18_02249CC8: ; 0x02249CC8
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -33957,14 +33957,14 @@ MOD18_02249DB8: ; 0x02249DB8
push {r4, r5, r6, lr}
add r5, r1, #0
ldr r0, [r5, #0x50]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0x93
add r4, r0, #0
lsl r1, r1, #2
ldrh r6, [r5, r1]
ldr r0, [r5, #0x50]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r0, #0x93
lsl r0, r0, #2
ldrh r0, [r5, r0]
@@ -34077,7 +34077,7 @@ MOD18_02249EBC: ; 0x02249EBC
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r2, #0x81
add r1, r0, #0
lsl r2, r2, #2
@@ -34197,7 +34197,7 @@ MOD18_02249F8C: ; 0x02249F8C
bl MOD18_0224DB80
add r0, r6, #1
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -34259,7 +34259,7 @@ _0224A002:
ldr r0, [r5, #0x40]
ldr r1, [r5, #0x68]
add r2, r4, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r4, r4, #1
cmp r4, r6
blt _0224A002
@@ -34269,7 +34269,7 @@ _0224A058:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
sub r3, #0x3e
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r3, _0224A0E0 ; =0x02250598
add r2, sp, #0x20
ldmia r3!, {r0, r1}
@@ -34343,7 +34343,7 @@ MOD18_0224A0EC: ; 0x0224A0EC
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -34352,7 +34352,7 @@ MOD18_0224A0EC: ; 0x0224A0EC
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -34434,14 +34434,14 @@ MOD18_0224A1C0: ; 0x0224A1C0
push {r4, r5, r6, lr}
add r5, r1, #0
ldr r0, [r5, #0x50]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0x93
add r4, r0, #0
lsl r1, r1, #2
ldrh r6, [r5, r1]
ldr r0, [r5, #0x50]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r0, #0x93
lsl r0, r0, #2
ldrh r0, [r5, r0]
@@ -34542,7 +34542,7 @@ MOD18_0224A2B4: ; 0x0224A2B4
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r2, #0x81
add r1, r0, #0
lsl r2, r2, #2
@@ -34646,7 +34646,7 @@ MOD18_0224A360: ; 0x0224A360
bl MOD18_0224DB80
add r0, r6, #1
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -34683,7 +34683,7 @@ _0224A3D0:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, r6
blt _0224A3D0
@@ -34693,7 +34693,7 @@ _0224A3E8:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
sub r3, #0x3e
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r3, _0224A470 ; =0x02250598
add r2, sp, #0x1c
ldmia r3!, {r0, r1}
@@ -34767,7 +34767,7 @@ MOD18_0224A47C: ; 0x0224A47C
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -34776,7 +34776,7 @@ MOD18_0224A47C: ; 0x0224A47C
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -34858,14 +34858,14 @@ MOD18_0224A550: ; 0x0224A550
push {r4, r5, r6, lr}
add r5, r1, #0
ldr r0, [r5, #0x50]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0x93
add r4, r0, #0
lsl r1, r1, #2
ldrh r6, [r5, r1]
ldr r0, [r5, #0x50]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r0, #0x93
lsl r0, r0, #2
ldrh r0, [r5, r0]
@@ -35399,7 +35399,7 @@ MOD18_0224A9B4: ; 0x0224A9B4
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r2, #0x81
add r1, r0, #0
lsl r2, r2, #2
@@ -35431,7 +35431,7 @@ MOD18_0224A9EC: ; 0x0224A9EC
add r4, r1, #0
mov r1, #0x13
add r5, r0, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
ldr r0, [r0, #0xc]
bl ScriptEnvironment_GetSav2Ptr
bl FUN_02026CC4
@@ -35443,14 +35443,14 @@ MOD18_0224A9EC: ; 0x0224A9EC
mov r1, #1
mov r2, #0xf
mov r3, #2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, r4, r5, pc}
_0224AA1A:
mov r1, #2
add r0, r5, #0
mov r2, #0xf
add r3, r1, #0
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, r4, r5, pc}
thumb_func_end MOD18_0224A9EC
@@ -35584,7 +35584,7 @@ MOD18_0224AB08: ; 0x0224AB08
bl MOD18_0224DB80
add r0, r6, #1
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -35621,7 +35621,7 @@ _0224AB78:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, r6
blt _0224AB78
@@ -35630,7 +35630,7 @@ _0224AB90:
ldr r0, [r5, #0x40]
ldr r1, [sp, #0x18]
sub r3, r2, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r3, _0224AC18 ; =0x02250598
add r2, sp, #0x1c
ldmia r3!, {r0, r1}
@@ -35706,7 +35706,7 @@ MOD18_0224AC24: ; 0x0224AC24
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -35715,7 +35715,7 @@ MOD18_0224AC24: ; 0x0224AC24
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -35800,14 +35800,14 @@ MOD18_0224AD04: ; 0x0224AD04
push {r4, r5, r6, lr}
add r5, r1, #0
ldr r0, [r5, #0x50]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0x93
add r4, r0, #0
lsl r1, r1, #2
ldrh r6, [r5, r1]
ldr r0, [r5, #0x50]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
mov r0, #0x93
lsl r0, r0, #2
ldrh r0, [r5, r0]
@@ -36444,7 +36444,7 @@ MOD18_0224B204: ; 0x0224B204
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r0, #1
mvn r0, r0
cmp r4, r0
@@ -36464,7 +36464,7 @@ MOD18_0224B228: ; 0x0224B228
push {r4, lr}
add r4, r1, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
mov r0, #1
mvn r0, r0
cmp r4, r0
@@ -36486,13 +36486,13 @@ MOD18_0224B250: ; 0x0224B250
push {r3, r4, r5, lr}
add r4, r1, #0
ldr r0, [r4, #0x48]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r5, r0, #0
add r1, sp, #0
ldr r0, [r4, #0x48]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -36627,7 +36627,7 @@ _0224B374:
bl MOD18_022498EC
ldr r0, [sp, #0x18]
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
str r2, [sp]
@@ -36675,13 +36675,13 @@ _0224B3D4:
add r1, r7, #0
add r2, r6, #5
mvn r3, r3
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _0224B3F4
_0224B3EA:
add r1, r7, #0
add r2, r6, r4
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_0224B3F4:
ldr r0, [sp, #0x18]
add r4, r4, #1
@@ -36727,7 +36727,7 @@ _0224B42C:
lsr r1, r1, #0x10
lsr r2, r2, #0x10
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x48]
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
@@ -36750,7 +36750,7 @@ MOD18_0224B464: ; 0x0224B464
bl MOD18_022498EC
ldr r0, [sp, #0x1c]
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -36796,13 +36796,13 @@ _0224B4D0:
add r1, r7, #0
add r2, r6, r4
mvn r3, r3
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _0224B4F0
_0224B4E6:
add r1, r7, #0
add r2, r6, r4
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_0224B4F0:
ldr r0, [sp, #0x1c]
add r4, r4, #1
@@ -36848,7 +36848,7 @@ _0224B528:
lsr r1, r1, #0x10
lsr r2, r2, #0x10
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x48]
add sp, #0x40
pop {r3, r4, r5, r6, r7, pc}
@@ -36862,13 +36862,13 @@ MOD18_0224B560: ; 0x0224B560
push {r3, r4, r5, lr}
add r5, r1, #0
ldr r0, [r5, #0x48]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r1, sp, #0
ldr r0, [r5, #0x48]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -36964,7 +36964,7 @@ MOD18_0224B614: ; 0x0224B614
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -36973,7 +36973,7 @@ MOD18_0224B614: ; 0x0224B614
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -37057,7 +37057,7 @@ MOD18_0224B6E0: ; 0x0224B6E0
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -37066,7 +37066,7 @@ MOD18_0224B6E0: ; 0x0224B6E0
ldr r0, [r5, #0x4c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r1, sp, #0
add r2, r0, #0
ldrh r1, [r1, #2]
@@ -38067,7 +38067,7 @@ MOD18_0224BF84: ; 0x0224BF84
ldr r0, [r5, #0x48]
ldrh r4, [r5, r1]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldr r0, _0224BFA4 ; =0x0000024A
ldrh r0, [r5, r0]
cmp r4, r0
@@ -38462,7 +38462,7 @@ _0224C288:
bl MOD18_022498EC
add r0, r4, #0
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -38502,14 +38502,14 @@ _0224C288:
ldr r0, [r5, #0x40]
mov r2, #0xd
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
bl MOD18_0223D658
bl MOD18_0224DBB4
add r1, r0, #0
ldr r0, [r5, #0x40]
mov r2, #0xe
mov r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
bl MOD18_0223D658
bl MOD18_0224DBB4
mov r2, #0xf
@@ -38517,7 +38517,7 @@ _0224C288:
add r3, r2, #0
ldr r0, [r5, #0x40]
sub r3, #0x11
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _0224C396
_0224C31E:
cmp r0, #0
@@ -38532,14 +38532,14 @@ _0224C31E:
ldr r0, [r5, #0x40]
mov r2, #0x10
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
bl MOD18_0223D658
bl MOD18_0224DBB4
add r1, r0, #0
ldr r0, [r5, #0x40]
mov r2, #0x11
mov r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
bl MOD18_0223D658
bl MOD18_0224DBB4
mov r2, #0x12
@@ -38547,7 +38547,7 @@ _0224C31E:
add r3, r2, #0
ldr r0, [r5, #0x40]
sub r3, #0x14
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _0224C396
_0224C36C:
bl MOD18_0223D658
@@ -38556,7 +38556,7 @@ _0224C36C:
ldr r0, [r5, #0x40]
mov r2, #0x1c
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
bl MOD18_0223D658
bl MOD18_0224DBB4
mov r2, #0x16
@@ -38564,7 +38564,7 @@ _0224C36C:
add r3, r2, #0
ldr r0, [r5, #0x40]
sub r3, #0x18
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_0224C396:
bl MOD18_0224DAD8
add r1, sp, #0x14
@@ -38606,7 +38606,7 @@ _0224C396:
lsr r1, r1, #0x10
lsr r2, r2, #0x10
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x48]
mov r0, #0x8b
lsl r0, r0, #2
@@ -38632,17 +38632,17 @@ MOD18_0224C418: ; 0x0224C418
mov r1, #0x13
add r7, r0, #0
add r6, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
cmp r6, #0
beq _0224C434
add r0, r7, #0
- bl FUN_02001B80
+ bl ListMenuCopyToVram
_0224C434:
add r0, r4, #0
add r0, #0x20
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
bl MOD18_0223D658
bl MOD18_0224DBB4
ldr r1, _0224C504 ; =0x00000247
@@ -38746,7 +38746,7 @@ MOD18_0224C510: ; 0x0224C510
mov r1, #0x13
str r0, [sp, #0xc]
str r2, [sp, #0x10]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
ldr r0, [r4, #0xc]
bl ScriptEnvironment_GetSav2Ptr
@@ -38756,12 +38756,12 @@ MOD18_0224C510: ; 0x0224C510
add r0, #0x20
mov r1, #0xf
mov r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x10]
cmp r0, #0
beq _0224C546
ldr r0, [sp, #0xc]
- bl FUN_02001B80
+ bl ListMenuCopyToVram
_0224C546:
mov r0, #1
mvn r0, r0
@@ -39086,7 +39086,7 @@ MOD18_0224C7D4: ; 0x0224C7D4
bl MOD18_022498EC
mov r0, #6
mov r1, #4
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x40]
mov r2, #3
add r1, r5, #0
@@ -39160,7 +39160,7 @@ _0224C87C:
ldr r0, [r5, #0x40]
add r1, r6, #0
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, #5
blt _0224C87C
@@ -39168,7 +39168,7 @@ _0224C87C:
ldr r0, [r5, #0x40]
add r1, r6, #0
sub r3, r2, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #0
bl DestroyMsgData
bl MOD18_0224DAD8
@@ -39228,7 +39228,7 @@ _0224C87C:
lsr r1, r1, #0x10
lsr r2, r2, #0x10
mov r3, #4
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x48]
add r5, #0x10
add r0, r5, #0
@@ -39490,7 +39490,7 @@ _0224CB1A:
add r0, r4, #0
add r0, #0x20
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, #0x20
add r0, r4, #0
bl CopyWindowToVram
@@ -39531,7 +39531,7 @@ MOD18_0224CB34: ; 0x0224CB34
add r0, r5, #0
add r0, #0x30
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x30
bl CopyWindowToVram
@@ -39680,13 +39680,13 @@ _0224CC7E:
pop {r4, r5, r6, pc}
_0224CC8E:
ldr r0, [r4, #0x48]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r5, r0, #0
add r1, sp, #4
ldr r0, [r4, #0x48]
add r1, #2
add r2, sp, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #4
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -39696,7 +39696,7 @@ _0224CC8E:
ldr r0, [r4, #0x48]
ldrh r6, [r4, r1]
add r1, r4, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldr r0, _0224CF54 ; =0x0000024A
ldrh r0, [r4, r0]
cmp r6, r0
@@ -39771,13 +39771,13 @@ _0224CD32:
pop {r4, r5, r6, pc}
_0224CD48:
ldr r0, [r4, #0x48]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r5, r0, #0
add r1, sp, #4
ldr r0, [r4, #0x48]
add r1, #2
add r2, sp, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
mov r0, #0x92
lsl r0, r0, #2
ldrb r0, [r4, r0]
@@ -39792,7 +39792,7 @@ _0224CD48:
ldr r0, [r4, #0x48]
ldrh r6, [r4, r1]
add r1, r4, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldr r0, _0224CF54 ; =0x0000024A
ldrh r0, [r4, r0]
cmp r6, r0
@@ -39916,7 +39916,7 @@ _0224CE68:
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #4
ldrh r1, [r2]
ldrh r2, [r2, #2]
@@ -40138,7 +40138,7 @@ _0224D046:
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
mov r0, #0x92
lsl r0, r0, #2
ldrb r0, [r4, r0]
@@ -40827,7 +40827,7 @@ MOD18_0224D5CC: ; 0x0224D5CC
add r0, r4, #0
add r0, #8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x30]
cmp r0, #0
beq _0224D644
@@ -41332,7 +41332,7 @@ MOD18_0224DA00: ; 0x0224DA00
add r0, r5, #0
add r0, #8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
ldr r3, _0224DAA0 ; =0x022513FC
str r6, [sp]
@@ -41435,7 +41435,7 @@ _0224DB08:
add r0, r4, #0
str r7, [r4, #0x18]
add r0, #8
- bl FUN_0201901C
+ bl InitWindow
ldr r1, [r4, #0x40]
mov r0, #1
bic r1, r0
@@ -41590,7 +41590,7 @@ _0224DC4C:
add r0, r5, #0
add r0, #8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
ldr r2, _0224DCB0 ; =0x000001E2
add r0, #8
@@ -42286,7 +42286,7 @@ MOD18_0224E0CC: ; 0x0224E0CC
add r5, r0, #0
mov r0, #4
add r1, r0, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x24]
mov r2, #3
str r2, [sp]
@@ -42345,7 +42345,7 @@ MOD18_0224E0CC: ; 0x0224E0CC
add r0, r5, #0
add r0, #0x14
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r7, #0
mov r1, #0
bl NewString_ReadMsgData
@@ -42369,7 +42369,7 @@ _0224E186:
ldr r2, [r4]
add r1, r7, #0
add r3, r6, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, r4, #4
cmp r6, #4
@@ -42402,7 +42402,7 @@ _0224E186:
ldr r2, [r5, #0x34]
ldrh r1, [r1]
ldrh r2, [r2]
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x28]
add r0, r5, #4
bl CopyWindowToVram
@@ -42429,7 +42429,7 @@ MOD18_0224E210: ; 0x0224E210
push {r3, r4, r5, lr}
add r5, r0, #0
ldr r0, [r5, #0x28]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD18_0224E73C
@@ -42483,7 +42483,7 @@ MOD18_0224E26C: ; 0x0224E26C
ldr r0, [r4, #0x28]
ldr r1, [r4, #0x30]
ldr r2, [r4, #0x34]
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #4
mov r1, #1
bl FUN_0200CCF8
@@ -42496,7 +42496,7 @@ MOD18_0224E26C: ; 0x0224E26C
add r0, #0x14
bl FUN_02019178
ldr r0, [r4, #0x24]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
pop {r4, pc}
.align 2, 0
thumb_func_end MOD18_0224E26C
@@ -42512,13 +42512,13 @@ MOD18_0224E2B4: ; 0x0224E2B4
add r1, r2, #0
mov r2, #0xf
mov r3, #2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
_0224E2CC:
mov r1, #2
mov r2, #0xf
add r3, r1, #0
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
pop {r3, pc}
thumb_func_end MOD18_0224E2B4
@@ -42639,16 +42639,16 @@ _0224E384:
ldr r0, [r0, #0xc]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
ldr r0, [r5, #0x2c]
mov r1, #2
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r7, r0, #0
ldr r0, [r5, #0x2c]
mov r1, #3
ldr r0, [r0, #0xc]
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r3, r0, #0
add r1, sp, #0
lsl r2, r7, #0x10
@@ -42692,11 +42692,11 @@ MOD18_0224E3F0: ; 0x0224E3F0
add r4, r1, #0
add r5, r0, #0
mov r1, #0x13
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r6, r0, #0
add r0, r5, #0
mov r1, #2
- bl FUN_02001470
+ bl ListMenuGetTemplateField
lsr r1, r4, #1
sub r0, r0, #1
cmp r1, r0
@@ -42741,7 +42741,7 @@ _0224E454:
ldr r0, [sp, #0x20]
mov r1, #4
add r0, r0, #1
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5, #0x28]
mov r2, #3
str r2, [sp]
@@ -42804,7 +42804,7 @@ _0224E454:
add r0, r5, #0
add r0, #0x18
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x24]
mov r1, #9
bl NewString_ReadMsgData
@@ -42899,7 +42899,7 @@ _0224E5B4:
ldr r1, [sp, #0x18]
ldr r2, [sp, #0x14]
add r3, r6, r3
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, [sp, #0x20]
add r4, r4, #1
add r6, r6, #2
@@ -42911,7 +42911,7 @@ _0224E5CE:
ldr r1, [sp, #0x18]
ldr r2, _0224E694 ; =0x00000115
add r3, r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, [sp, #0x18]
bl DestroyMsgData
bl MOD18_0223D678
@@ -43025,7 +43025,7 @@ MOD18_0224E6A8: ; 0x0224E6A8
add r0, #0x18
bl FUN_02019178
ldr r0, [r4, #0x28]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, [r4, #4]
bl FUN_0205EBEC
pop {r4, pc}
@@ -43078,7 +43078,7 @@ MOD18_0224E73C: ; 0x0224E73C
add r1, r5, #0
ldr r0, [r5, #0x28]
add r1, #0x40
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r5, #0x40
ldrh r0, [r5]
cmp r4, r0
diff --git a/arm9/modules/20/asm/module_20.s b/arm9/modules/20/asm/module_20.s
index 67f4c29a..ee93d317 100644
--- a/arm9/modules/20/asm/module_20.s
+++ b/arm9/modules/20/asm/module_20.s
@@ -3279,23 +3279,23 @@ _02253C0E:
cmp r1, #0
beq _02253C22
add r0, r5, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_02253C22:
ldr r1, [r4, #0xc]
cmp r1, #0
beq _02253C2E
add r0, r5, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_02253C2E:
ldr r1, [r4, #4]
cmp r1, #0
beq _02253C3A
add r0, r5, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_02253C3A:
add r0, r5, #0
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
_02253C42:
mov r0, #0
pop {r3, r4, r5, r6, r7, pc}
@@ -3848,7 +3848,7 @@ MOD20_02254014: ; 0x02254014
cmp r1, #0
beq _02254028
ldr r0, [r4, #0x10]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4]
_02254028:
@@ -3856,7 +3856,7 @@ _02254028:
cmp r1, #0
beq _02254038
ldr r0, [r4, #0x10]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0
str r0, [r4, #4]
_02254038:
@@ -4072,7 +4072,7 @@ _02254176:
_02254188:
add r0, r5, #0
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r4, #0
_02254192:
add r0, r4, #0
@@ -4089,10 +4089,10 @@ MOD20_02254198: ; 0x02254198
_022541A2:
ldr r0, [r4, #8]
ldr r1, [r4, #0x14]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, [r4, #8]
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
thumb_func_end MOD20_02254198
diff --git a/arm9/modules/21/src/mod21_02254854.c b/arm9/modules/21/src/mod21_02254854.c
index a9a7599d..1c91afde 100644
--- a/arm9/modules/21/src/mod21_02254854.c
+++ b/arm9/modules/21/src/mod21_02254854.c
@@ -29,7 +29,7 @@ THUMB_FUNC BOOL MOD21_02254854(UnkStruct02254854 **param0, u32 param1, u32 param
UnkStruct02254854 *alloced = (UnkStruct02254854 *)AllocFromHeap(8, sizeof(UnkStruct02254854));
if (alloced != NULL)
{
- if (MOD21_0225489C(alloced, param1, param2, param3) && FUN_0200CA44((void (*)(u32, void *))MOD21_02254930, alloced, (void *)1))
+ if (MOD21_0225489C(alloced, param1, param2, param3) && FUN_0200CA44((void (*)(u32, struct TextPrinter *))MOD21_02254930, (struct TextPrinter *)alloced, 1))
{
*param0 = alloced;
return TRUE;
diff --git a/arm9/modules/24/asm/module_24.s b/arm9/modules/24/asm/module_24.s
index 2888f12d..07a7285c 100644
--- a/arm9/modules/24/asm/module_24.s
+++ b/arm9/modules/24/asm/module_24.s
@@ -662,7 +662,7 @@ MOD24_02254D00: ; 0x02254D00
add r4, r0, #0
mov r0, #8
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4, #0x70]
add r1, r0, #0
beq _02254D3C
@@ -681,7 +681,7 @@ MOD24_02254D00: ; 0x02254D00
bne _02254D38
ldr r0, [r4, #0x70]
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
_02254D38:
mov r0, #1
pop {r4, pc}
@@ -987,7 +987,7 @@ _02254F80:
mov r1, #4
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
asr r1, r5, #3
mov r2, #0x14
asr r0, r6, #3
@@ -1048,7 +1048,7 @@ _02254FF2:
mov r1, #1
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [r7, #0x70]
mov r2, #0x20
ldr r1, [r0, #0xc]
diff --git a/arm9/modules/27/asm/module_27.s b/arm9/modules/27/asm/module_27.s
index 9fa91fb4..7d7fa32a 100644
--- a/arm9/modules/27/asm/module_27.s
+++ b/arm9/modules/27/asm/module_27.s
@@ -389,7 +389,7 @@ MOD27_02254AF0: ; 0x02254AF0
add r7, r6, #0
_02254B36:
add r0, r4, #0
- bl FUN_0201901C
+ bl InitWindow
add r0, r5, #0
add r0, #0x9c
str r7, [r0]
@@ -608,7 +608,7 @@ MOD27_02254CC8: ; 0x02254CC8
add r4, #0x3c
_02254CE8:
add r0, r4, #0
- bl FUN_0201901C
+ bl InitWindow
ldrh r0, [r5, #2]
add r1, r4, #0
mov r2, #6
@@ -834,7 +834,7 @@ MOD27_02254EAC: ; 0x02254EAC
mov r1, #4
add r3, r2, #0
add r5, r0, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r4, #0
beq _02254EE0
lsl r0, r4, #0x10
@@ -846,7 +846,7 @@ MOD27_02254EAC: ; 0x02254EAC
add r0, r5, #0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
_02254EE0:
add r0, r5, #0
bl FUN_02019548
diff --git a/arm9/modules/36/asm/module_36.s b/arm9/modules/36/asm/module_36.s
index fcd3cbc9..6a1e0245 100644
--- a/arm9/modules/36/asm/module_36.s
+++ b/arm9/modules/36/asm/module_36.s
@@ -1108,7 +1108,7 @@ MOD36_0225503C: ; 0x0225503C
add r0, r4, #0
add r0, #0x48
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
_02255082:
add r0, r4, #0
add r0, #0x48
@@ -1205,7 +1205,7 @@ MOD36_0225510C: ; 0x0225510C
mov r1, #1
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r1, [r4, #0x54]
lsl r0, r5, #5
add r0, r1, r0
@@ -1298,7 +1298,7 @@ MOD36_022551E0: ; 0x022551E0
add r0, r4, #0
add r0, #0x48
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, #0x48
add r0, r4, #0
bl FUN_02019548
diff --git a/arm9/modules/38/asm/module_38.s b/arm9/modules/38/asm/module_38.s
index e1d888d4..89e7ff79 100644
--- a/arm9/modules/38/asm/module_38.s
+++ b/arm9/modules/38/asm/module_38.s
@@ -1046,7 +1046,7 @@ MOD38_0225500C: ; 0x0225500C
add r0, r4, #0
mov r1, #4
add r6, r2, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r6, #0x12
bne _02255036
add r0, r5, #0
@@ -1106,7 +1106,7 @@ MOD38_02255084: ; 0x02255084
add r0, r4, #0
mov r1, #4
add r6, r2, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r2, r5, #0
add r0, #0xb8
diff --git a/arm9/modules/43/asm/module_43.s b/arm9/modules/43/asm/module_43.s
index 89b23259..fd20dc17 100644
--- a/arm9/modules/43/asm/module_43.s
+++ b/arm9/modules/43/asm/module_43.s
@@ -654,7 +654,7 @@ MOD43_02254CD0: ; 0x02254CD0
bl FUN_02019064
add r0, sp, #0x14
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
diff --git a/arm9/modules/47/asm/module_47.s b/arm9/modules/47/asm/module_47.s
index abb1ea34..3ec4768c 100644
--- a/arm9/modules/47/asm/module_47.s
+++ b/arm9/modules/47/asm/module_47.s
@@ -1162,7 +1162,7 @@ MOD47_022550FC: ; 0x022550FC
add r4, r0, #0
add r0, #0x20
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #0
@@ -1225,7 +1225,7 @@ MOD47_02255184: ; 0x02255184
add r4, r0, #0
add r0, #0x20
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #1
@@ -1265,7 +1265,7 @@ MOD47_022551D8: ; 0x022551D8
add r4, r0, #0
add r0, #0x20
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #2
@@ -1322,7 +1322,7 @@ MOD47_02255250: ; 0x02255250
add r4, r0, #0
add r0, #0x20
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x58]
ldr r2, [r4, #0x5c]
mov r1, #2
@@ -1386,7 +1386,7 @@ MOD47_022552D8: ; 0x022552D8
add r7, r1, #0
add r0, #0x20
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x58]
ldr r2, [r5, #0x5c]
mov r1, #5
diff --git a/arm9/modules/49/asm/module_49.s b/arm9/modules/49/asm/module_49.s
index bce289da..1de7ea96 100644
--- a/arm9/modules/49/asm/module_49.s
+++ b/arm9/modules/49/asm/module_49.s
@@ -421,7 +421,7 @@ MOD49_02254AD4: ; 0x02254AD4
bl FUN_02019064
add r0, sp, #0x1c
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, sp, #0x1c
bl FUN_02019270
ldr r1, _02254BD4 ; =0x00000197
diff --git a/arm9/modules/51/asm/module_51.s b/arm9/modules/51/asm/module_51.s
index 60bdd016..aa0549bd 100644
--- a/arm9/modules/51/asm/module_51.s
+++ b/arm9/modules/51/asm/module_51.s
@@ -165,7 +165,7 @@ _02254960:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl CopyWindowToVram
ldr r0, [sp, #0x18]
@@ -193,7 +193,7 @@ _02254960:
add r0, r5, #0
add r0, #0x10
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x10
bl CopyWindowToVram
@@ -221,7 +221,7 @@ _02254960:
add r0, r5, #0
add r0, #0x20
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x20
bl CopyWindowToVram
@@ -792,20 +792,20 @@ MOD51_02254E48: ; 0x02254E48
add r7, r5, r0
add r0, r7, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x76
lsl r0, r0, #2
add r0, r5, r0
str r0, [sp, #0x1c]
add r0, r0, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x7a
lsl r0, r0, #2
add r5, r5, r0
add r0, r5, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #2
str r0, [sp]
mov r0, #0xff
diff --git a/arm9/modules/52/include/module_52.h b/arm9/modules/52/include/module_52.h
index 0adedc62..d997f1a6 100644
--- a/arm9/modules/52/include/module_52.h
+++ b/arm9/modules/52/include/module_52.h
@@ -17,20 +17,20 @@ extern const struct Unk21DBE18 MOD52_021D76E8;
extern const struct Unk21DBE18 MOD52_021D76D8;
extern const struct Unk21DBE18 MOD52_021D76C8;
-THUMB_FUNC BOOL MOD52_021D74E0(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC BOOL MOD52_021D74F8(struct UnkStruct_02006234 *param0, u32 *unused);
-THUMB_FUNC BOOL MOD52_021D750C(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D74E0(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D74F8(struct UnkStruct_02006234 *param0, u32 *unused);
+BOOL MOD52_021D750C(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC BOOL MOD52_021D7528(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC BOOL MOD52_021D7540(struct UnkStruct_02006234 *param0, u32 *unused);
-THUMB_FUNC BOOL MOD52_021D7560(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D7528(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D7540(struct UnkStruct_02006234 *param0, u32 *unused);
+BOOL MOD52_021D7560(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC BOOL MOD52_021D757C(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC BOOL MOD52_021D7594(struct UnkStruct_02006234 *param0, u32 *unused);
-THUMB_FUNC BOOL MOD52_021D75E8(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D757C(struct UnkStruct_02006234 *arg1, u32 *arg2);
+BOOL MOD52_021D7594(struct UnkStruct_02006234 *param0, u32 *unused);
+BOOL MOD52_021D75E8(struct UnkStruct_02006234 *arg1, u32 *arg2);
-THUMB_FUNC void MOD52_021D7604(u32 heap_id, struct SaveBlock2 *sav2, BOOL set_trainerid);
-THUMB_FUNC void MOD52_021D7688(u32 param0, struct SaveBlock2 *sav2);
-THUMB_FUNC void MOD52_021D769C(u32 param0, struct SaveBlock2 *sav2);
+void MOD52_021D7604(u32 heap_id, struct SaveBlock2 *sav2, BOOL set_trainerid);
+void MOD52_021D7688(u32 param0, struct SaveBlock2 *sav2);
+void MOD52_021D769C(u32 param0, struct SaveBlock2 *sav2);
#endif // POKEDIAMOND_MODULE_52_H \ No newline at end of file
diff --git a/arm9/modules/53/asm/module_53.s b/arm9/modules/53/asm/module_53.s
index b4fd4d80..f49ce02c 100644
--- a/arm9/modules/53/asm/module_53.s
+++ b/arm9/modules/53/asm/module_53.s
@@ -1325,7 +1325,7 @@ MOD53_021D7FDC: ; 0x021D7FDC
lsl r0, r0, #2
add r0, r7, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #2
str r0, [sp]
mov r0, #0x1e
@@ -1346,7 +1346,7 @@ MOD53_021D7FDC: ; 0x021D7FDC
lsl r0, r0, #2
add r0, r7, r0
mov r1, #2
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x15
str r0, [sp]
mov r0, #6
@@ -1368,7 +1368,7 @@ MOD53_021D7FDC: ; 0x021D7FDC
lsl r0, r0, #2
add r0, r7, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r7, #0x28]
mov r0, #1
mov r2, #0
@@ -1415,7 +1415,7 @@ _021D80A8:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x14]
add r6, #0x14
add r0, r0, #1
@@ -2915,7 +2915,7 @@ _021D8C9C:
mov r1, ip
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add sp, #0x1c
pop {r4, r5, r6, r7, pc}
thumb_func_end MOD53_021D8C58
@@ -3429,7 +3429,7 @@ _021D906C:
add r0, r4, #0
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r6, r6, #1
add r4, #0x10
cmp r6, #5
@@ -3633,7 +3633,7 @@ MOD53_021D91C8: ; 0x021D91C8
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xb6
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/54/asm/module_54.s b/arm9/modules/54/asm/module_54.s
index 904d1c7f..1131a268 100644
--- a/arm9/modules/54/asm/module_54.s
+++ b/arm9/modules/54/asm/module_54.s
@@ -1081,7 +1081,7 @@ MOD54_021D7DB4: ; 0x021D7DB4
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0x1b
@@ -1103,7 +1103,7 @@ MOD54_021D7DB4: ; 0x021D7DB4
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [sp]
mov r0, #0x1a
@@ -1148,7 +1148,7 @@ MOD54_021D7DB4: ; 0x021D7DB4
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xa6
lsl r0, r0, #2
ldr r2, _021D7E94 ; =0x00010300
@@ -1176,7 +1176,7 @@ MOD54_021D7E98: ; 0x021D7E98
add r6, r0, #0
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #1
str r1, [sp]
mov r0, #0x41
@@ -2787,7 +2787,7 @@ MOD54_021D8AF8: ; 0x021D8AF8
_021D8B18:
add r0, r6, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r7, [sp, #0x14]
mov r0, #0
str r0, [sp, #0x20]
@@ -3013,7 +3013,7 @@ MOD54_021D8C90: ; 0x021D8C90
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xba
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/55/asm/module_55.s b/arm9/modules/55/asm/module_55.s
index 0d96ce13..c221c2d0 100644
--- a/arm9/modules/55/asm/module_55.s
+++ b/arm9/modules/55/asm/module_55.s
@@ -1238,7 +1238,7 @@ _021D7F02:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r2, r5, #0
add r2, #0xc0
ldr r0, [r5, #0x10]
@@ -1305,7 +1305,7 @@ _021D7F86:
bl FUN_02019064
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r6, #2
bne _021D7FF4
ldr r0, [r5, #8]
@@ -2618,7 +2618,7 @@ _021D89AE:
add r7, r0, #0
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [sp]
mov r0, #0xff
@@ -2775,7 +2775,7 @@ _021D8AEE:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r2, r5, #0
add r2, #0xc0
ldr r0, [r5, #0x10]
@@ -2834,7 +2834,7 @@ _021D8B6C:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r2, r5, #0
add r2, #0xd0
ldr r0, [r5, #0x10]
@@ -2917,7 +2917,7 @@ _021D8C02:
bl FUN_02019064
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl FUN_02019220
add r6, r6, #1
@@ -3213,7 +3213,7 @@ MOD55_021D8E6C: ; 0x021D8E6C
stmia r2!, {r0, r1}
add r0, r7, #0
mov r1, #0x34
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r4, _021D8FD0 ; =0x021DA3D8
str r0, [r5, #0x14]
mov r6, #0
@@ -3222,7 +3222,7 @@ _021D8EB6:
ldr r1, [r5, #0x10]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, #4
@@ -3241,7 +3241,7 @@ _021D8ECC:
stmia r2!, {r0, r1}
add r0, r7, #0
mov r1, #0x34
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r4, _021D8FD8 ; =0x021DA438
str r0, [r5, #0x14]
mov r6, #0
@@ -3250,7 +3250,7 @@ _021D8EEE:
ldr r1, [r5, #0x10]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, #4
@@ -3306,7 +3306,7 @@ _021D8F1A:
add r0, sp, #0x1c
add r2, r1, #0
mov r3, #0x34
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0xea
lsl r1, r1, #2
str r0, [r5, r1]
@@ -3374,7 +3374,7 @@ _021D9002:
mov r0, #0xea
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
ldr r1, _021D90D0 ; =0x00000418
add r4, r0, #0
add r0, r1, #0
@@ -3382,7 +3382,7 @@ _021D9002:
ldrh r7, [r5, r1]
ldr r0, [r5, r0]
add r1, r5, r1
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
ldr r0, _021D90D0 ; =0x00000418
ldrh r0, [r5, r0]
cmp r7, r0
@@ -3458,9 +3458,9 @@ _021D9098:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r5, #0x14]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r6, #0
add sp, #0xc
pop {r4, r5, r6, r7, pc}
@@ -3605,7 +3605,7 @@ _021D91D6:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #8]
bl Sav2_PlayerData_GetProfileAddr
add r2, r0, #0
@@ -3677,7 +3677,7 @@ _021D9278:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
mov r0, #0
eor r1, r4
@@ -3781,7 +3781,7 @@ _021D9338:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r1, r5, #0
add r1, #0xbc
mov r0, #0
@@ -4164,7 +4164,7 @@ _021D969A:
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x34
bl PlayerProfile_new
str r0, [sp, #0x20]
@@ -4243,7 +4243,7 @@ _021D974E:
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0xc]
ldr r2, [sp, #0x20]
mov r1, #0
@@ -4382,7 +4382,7 @@ _021D987C:
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r2, r4, #0
add r2, #0xc4
ldr r0, [r4, #0x10]
@@ -5397,7 +5397,7 @@ _021DA0D0:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xce
lsl r0, r0, #2
ldr r2, _021DA158 ; =0x000001E2
@@ -5478,7 +5478,7 @@ _021DA17C:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xce
lsl r0, r0, #2
ldr r2, _021DA210 ; =0x000001E2
diff --git a/arm9/modules/56/asm/module_56.s b/arm9/modules/56/asm/module_56.s
index d1046c7b..8626dac2 100644
--- a/arm9/modules/56/asm/module_56.s
+++ b/arm9/modules/56/asm/module_56.s
@@ -1342,7 +1342,7 @@ _022128CE:
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
mov r2, #0x16
add r0, #0xcc
@@ -1450,14 +1450,14 @@ _022129D8:
beq _022129EA
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
_022129EA:
add r0, r4, #0
add r0, #0xb0
ldr r0, [r0]
cmp r0, #0
beq _02212A00
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0
mov r1, #0
add r0, #0xb0
@@ -2479,7 +2479,7 @@ MOD56_02213194: ; 0x02213194
mov r1, #0
ldr r0, [r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r6, #0
mov r1, #0
add r0, #0xb4
@@ -2487,7 +2487,7 @@ MOD56_02213194: ; 0x02213194
add r0, r6, #0
add r0, #0xb0
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r6, #0
mov r1, #0
add r0, #0xb0
@@ -2786,7 +2786,7 @@ _0221344C:
lsl r0, r0, #2
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -3021,7 +3021,7 @@ MOD56_02213624: ; 0x02213624
add r5, r1, #0
mov r1, #0x13
add r7, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
ldr r6, _02213750 ; =0x00010200
cmp r5, #0x20
@@ -3462,7 +3462,7 @@ _02213944:
ldr r0, [r0]
ldr r1, [r5, r7]
sub r2, r2, #1
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r6, r6, #1
_0221395C:
add r4, r4, #1
@@ -3476,7 +3476,7 @@ _0221395C:
ldr r1, [r1]
mov r2, #0x1b
mov r3, #0x20
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r5, #0
add r0, #0xb0
add r5, #0xcc
@@ -3485,7 +3485,7 @@ _0221395C:
ldr r0, [r0]
ldr r1, [r5]
sub r3, #0x30
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #0
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -3498,7 +3498,7 @@ MOD56_02213990: ; 0x02213990
add r5, r0, #0
mov r0, #0x22
mov r1, #0x36
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xb0
str r0, [r1]
@@ -3567,7 +3567,7 @@ _022139D0:
add r2, r1, #0
mov r3, #0x36
str r5, [sp, #0x30]
- bl FUN_020010A8
+ bl ListMenuInit
add r5, #0xb4
str r0, [r5]
add sp, #0x34
@@ -3675,7 +3675,7 @@ _02213AF0:
mov r1, #0
ldr r0, [r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r5, #0
mov r1, #0
add r0, #0xb4
@@ -3683,7 +3683,7 @@ _02213AF0:
add r0, r5, #0
add r0, #0xb0
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
mov r1, #0
add r0, #0xb0
@@ -3712,7 +3712,7 @@ _02213B2C:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
mov r2, #0x16
add r0, #0xcc
@@ -3808,13 +3808,13 @@ _02213C24:
add r0, r5, #0
add r0, #0xb0
ldr r0, [r0]
- bl ListMenu_DestroyMenuStrings
+ bl ListMenuItems_DestroyMenuStrings
add r0, r5, #0
add r0, #0xb4
ldr r0, [r0]
mov r1, #2
add r2, r4, #2
- bl FUN_02001538
+ bl ListMenuSetTemplateField
cmp r4, #3
ble _02213C50
add r0, r5, #0
@@ -3822,7 +3822,7 @@ _02213C24:
ldr r0, [r0]
mov r1, #3
mov r2, #5
- bl FUN_02001538
+ bl ListMenuSetTemplateField
b _02213C5E
_02213C50:
add r0, r5, #0
@@ -3830,7 +3830,7 @@ _02213C50:
ldr r0, [r0]
mov r1, #3
add r2, r4, #2
- bl FUN_02001538
+ bl ListMenuSetTemplateField
_02213C5E:
add r0, r5, #0
bl MOD56_02213938
@@ -3840,7 +3840,7 @@ _02213C5E:
ldr r0, [r0]
add r1, #2
add r2, sp, #0xc
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
cmp r4, #3
blt _02213C84
add r0, sp, #0xc
@@ -3860,11 +3860,11 @@ _02213C84:
ldrh r2, [r3, #2]
ldrh r3, [r3]
ldr r0, [r0]
- bl FUN_020013C8
+ bl ListMenuTestInput
add r0, r5, #0
add r0, #0xb4
ldr r0, [r0]
- bl FUN_02001328
+ bl RedrawListMenu
str r4, [r5, #8]
_02213CA8:
add r0, r5, #0
@@ -3873,7 +3873,7 @@ _02213CA8:
ldr r0, [r0]
add r1, #2
add r2, sp, #0xc
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0xc
ldr r1, [r5, #8]
ldrh r3, [r0]
@@ -3913,11 +3913,11 @@ _02213CF0:
str r1, [sp, #8]
add r0, #0xb4
ldr r0, [r0]
- bl FUN_020013C8
+ bl ListMenuTestInput
add r0, r5, #0
add r0, #0xb4
ldr r0, [r0]
- bl FUN_02001328
+ bl RedrawListMenu
_02213D0C:
add r1, sp, #0xc
ldrh r1, [r1, #2]
@@ -4099,7 +4099,7 @@ _02213E5C:
mov r1, #0
ldr r0, [r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r5, #0
mov r1, #0
add r0, #0xb4
@@ -4107,7 +4107,7 @@ _02213E5C:
add r0, r5, #0
add r0, #0xb0
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
mov r1, #0
add r0, #0xb0
@@ -4139,7 +4139,7 @@ _02213ECE:
add r0, r5, #0
add r0, #0xb4
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
_02213EE8:
mov r0, #1
@@ -5059,7 +5059,7 @@ MOD56_022145D4: ; 0x022145D4
stmia r2!, {r0, r1}
mov r0, #4
mov r1, #0x36
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xb8
ldr r4, _022146C4 ; =0x02216480
@@ -5074,7 +5074,7 @@ _02214602:
ldr r1, [r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, #4
@@ -5134,7 +5134,7 @@ _02214642:
add r0, sp, #0x14
mov r1, #0
mov r3, #0x36
- bl FUN_020010A8
+ bl ListMenuInit
add r1, r5, #0
add r1, #0xbc
str r0, [r1]
@@ -5180,7 +5180,7 @@ _022146EE:
add r0, r5, #0
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD56_02213BF4
@@ -5257,11 +5257,11 @@ _0221476E:
ldr r0, [r0]
mov r1, #0
add r2, r5, r2
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r5, #0
add r0, #0xb8
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
add r1, r4, #0
bl MOD56_02214808
@@ -5298,10 +5298,10 @@ _022147CE:
ldr r0, [r0]
mov r1, #0
add r2, r5, r2
- bl FUN_02001300
+ bl DestroyListMenu
add r5, #0xb8
ldr r0, [r5]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r6, #0
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -5338,7 +5338,7 @@ _02214820:
stmia r2!, {r0, r1}
add r0, r7, #0
mov r1, #0x36
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xb8
mov r6, #0
@@ -5354,7 +5354,7 @@ _0221484C:
ldr r1, [r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, r7
@@ -5425,7 +5425,7 @@ _0221488C:
ldrh r2, [r2, r3]
mov r1, #0
mov r3, #0x36
- bl FUN_020010A8
+ bl ListMenuInit
add r1, r5, #0
add r1, #0xbc
str r0, [r1]
@@ -5463,7 +5463,7 @@ _0221493C:
add r0, r5, #0
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
add r0, r5, #0
bl MOD56_02213BF4
@@ -5521,10 +5521,10 @@ _02214994:
lsl r3, r3, #1
mov r1, #0
add r2, r2, r3
- bl FUN_02001300
+ bl DestroyListMenu
add r5, #0xb8
ldr r0, [r5]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r6, #0
pop {r4, r5, r6, pc}
nop
@@ -5554,7 +5554,7 @@ MOD56_022149D8: ; 0x022149D8
add r0, #0xb4
ldr r0, [r0]
add r1, sp, #0x28
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, sp, #0x28
ldrh r0, [r0]
add r0, r5, r0
@@ -5585,7 +5585,7 @@ MOD56_022149D8: ; 0x022149D8
lsr r0, r0, #0x10
str r0, [sp, #0x1c]
mov r0, #3
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xb8
str r0, [r1]
@@ -5630,7 +5630,7 @@ _02214A7E:
ldr r1, [r1]
ldr r3, [r4, #4]
mov r2, #0x1a
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _02214ADC
_02214A9E:
ldrh r0, [r7, #0x16]
@@ -5652,7 +5652,7 @@ _02214AB2:
ldr r1, [r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _02214ADC
_02214AC8:
add r0, r5, #0
@@ -5663,7 +5663,7 @@ _02214AC8:
ldr r1, [r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_02214ADC:
ldr r0, [sp, #0x24]
add r4, #8
@@ -5717,7 +5717,7 @@ _02214ADC:
add r0, sp, #0x2c
add r2, r1, #0
mov r3, #0x36
- bl FUN_020010A8
+ bl ListMenuInit
add r1, r5, #0
add r1, #0xbc
str r0, [r1]
@@ -5837,7 +5837,7 @@ _02214C1E:
add r0, r4, #0
add r0, #0xbc
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r5, r0, #0
add r0, r4, #0
bl MOD56_02213BF4
@@ -5878,7 +5878,7 @@ _02214C66:
add r0, #0xb4
ldr r0, [r0]
add r1, sp, #0xc
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, sp, #0xc
ldrh r0, [r0]
add r0, r4, r0
@@ -6074,10 +6074,10 @@ _02214DEC:
mov r1, #0
ldr r0, [r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
add r4, #0xb8
ldr r0, [r4]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, [sp]
add sp, #0x10
pop {r3, r4, r5, r6, r7, pc}
@@ -7019,12 +7019,12 @@ _02215532:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0xb4
ldr r0, [r0]
add r1, sp, #0x14
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, sp, #0x14
ldrh r0, [r0]
add r0, r5, r0
@@ -7569,7 +7569,7 @@ MOD56_022159B0: ; 0x022159B0
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
mov r2, #0x16
add r0, #0xcc
@@ -8272,7 +8272,7 @@ _02215F82:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xcf
lsl r0, r0, #2
ldr r2, _02215FF0 ; =0x000001E2
@@ -8388,7 +8388,7 @@ _02216048:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xdb
lsl r0, r0, #2
ldr r2, _022160E0 ; =0x000001D9
diff --git a/arm9/modules/57/asm/module_57.s b/arm9/modules/57/asm/module_57.s
index 39e977cc..463396ab 100644
--- a/arm9/modules/57/asm/module_57.s
+++ b/arm9/modules/57/asm/module_57.s
@@ -2689,7 +2689,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r2, r1, #0
add r3, r1, #0
add r7, r0, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0x88
str r0, [sp]
@@ -2699,7 +2699,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x10
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0x88
str r0, [sp]
@@ -2709,7 +2709,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x20
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0x88
str r0, [sp]
@@ -2719,7 +2719,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x30
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0x88
str r0, [sp]
@@ -2729,7 +2729,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x40
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xe0
str r0, [sp]
@@ -2739,7 +2739,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x50
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xe0
str r0, [sp]
@@ -2749,7 +2749,7 @@ MOD57_021D89F0: ; 0x021D89F0
add r0, #0x60
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _021D8CEC ; =0x0000022D
mov r0, #0
mov r1, #0x1a
@@ -3042,7 +3042,7 @@ MOD57_021D8CF8: ; 0x021D8CF8
add r0, #0x70
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xe0
str r0, [sp]
@@ -3052,7 +3052,7 @@ MOD57_021D8CF8: ; 0x021D8CF8
add r0, #0x80
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xe0
str r0, [sp]
@@ -3062,7 +3062,7 @@ MOD57_021D8CF8: ; 0x021D8CF8
add r0, #0x90
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #0xe0
str r0, [sp]
@@ -3072,7 +3072,7 @@ MOD57_021D8CF8: ; 0x021D8CF8
add r0, #0xa0
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _021D8FAC ; =0x0000022D
mov r0, #0
mov r1, #0x1a
@@ -3455,7 +3455,7 @@ _021D906E:
add r0, #0x50
mov r2, #0xb8
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r2, _021D913C ; =0x0000022D
mov r0, #0
mov r1, #0x1a
@@ -3558,7 +3558,7 @@ _021D9164:
mov r1, #0
mov r2, #0xcd
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r4, #0
bl CopyWindowToVram
add sp, #0x10
diff --git a/arm9/modules/58/asm/module_58.s b/arm9/modules/58/asm/module_58.s
index 93c1c39d..7f3bd998 100644
--- a/arm9/modules/58/asm/module_58.s
+++ b/arm9/modules/58/asm/module_58.s
@@ -1077,7 +1077,7 @@ MOD58_021DA30C: ; 0x021DA30C
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #9
str r0, [sp]
mov r0, #0x18
@@ -1097,7 +1097,7 @@ MOD58_021DA30C: ; 0x021DA30C
lsl r0, r0, #2
add r0, r5, r0
mov r1, #2
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x15
str r0, [sp]
mov r0, #8
@@ -1118,7 +1118,7 @@ MOD58_021DA30C: ; 0x021DA30C
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _021DA4BC ; =0x000E0702
mov r2, #1
str r0, [sp]
@@ -1189,7 +1189,7 @@ _021DA3C2:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r3, #0xe0
@@ -1234,7 +1234,7 @@ _021DA46A:
bl FUN_02019064
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x14]
add r7, #0x14
add r0, r0, #1
@@ -1646,7 +1646,7 @@ _021DA7A4:
lsl r0, r0, #2
add r0, r5, r0
mov r1, #2
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xb1
lsl r0, r0, #2
add r0, r5, r0
@@ -1780,7 +1780,7 @@ _021DA888:
mov r1, ip
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add sp, #0x1c
pop {r4, r5, r6, r7, pc}
thumb_func_end MOD58_021DA844
@@ -2217,7 +2217,7 @@ MOD58_021DAB94: ; 0x021DAB94
lsl r0, r0, #2
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xb5
lsl r0, r0, #2
add r0, r5, r0
diff --git a/arm9/modules/59/asm/mod59_021D74E0_asm.s b/arm9/modules/59/asm/mod59_021D74E0_asm.s
index c86d2c94..a928881a 100644
--- a/arm9/modules/59/asm/mod59_021D74E0_asm.s
+++ b/arm9/modules/59/asm/mod59_021D74E0_asm.s
@@ -883,7 +883,7 @@ _021D7C5E:
add r0, #0x1c
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, #0
ldr r2, _021D7D60 ; =0x000003E2
add r0, #0x1c
@@ -1051,7 +1051,7 @@ _021D7DC4:
bl FUN_02019150
ldr r1, [r5]
add r0, r6, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r7, #0
str r0, [r5, #0x44]
cmp r6, #0
@@ -1061,7 +1061,7 @@ _021D7DDE:
ldr r1, [r5, #0x4c]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r7, r7, #1
add r4, #8
cmp r7, r6
@@ -1096,7 +1096,7 @@ _021D7DF2:
lsl r3, r3, #0x18
add r2, r1, #0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r5, #0x40]
ldr r0, [sp, #0x10]
ldr r2, _021D7EC4 ; =0x000003D9
@@ -1111,7 +1111,7 @@ _021D7DF2:
b _021D7E96
_021D7E4C:
ldr r0, [r5, #0x40]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
mov r1, #0
mvn r1, r1
str r0, [r5, #0x48]
@@ -1133,9 +1133,9 @@ _021D7E66:
mov r1, #0
ldr r0, [r5, #0x40]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, [r5, #0x44]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _021D7EC8 ; =0x000005DC
bl FUN_020054C8
mov r0, #0
@@ -1234,7 +1234,7 @@ _021D7EFA:
add r0, #0x1c
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r1, r5, #0
str r1, [sp]
ldr r0, _021D8048 ; =0x00010200
@@ -1273,7 +1273,7 @@ _021D7F7C:
add r0, #0x1c
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r1, r5, #0
str r1, [sp]
ldr r0, _021D804C ; =0x000F0200
diff --git a/arm9/modules/59/asm/mod59_021D9868.s b/arm9/modules/59/asm/mod59_021D9868.s
index 6d2d6e6b..370d58b1 100644
--- a/arm9/modules/59/asm/mod59_021D9868.s
+++ b/arm9/modules/59/asm/mod59_021D9868.s
@@ -536,7 +536,7 @@ _021D9C9A:
add r0, #0x10
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r5, #0
add r1, r6, #0
add r2, r0, #0
diff --git a/arm9/modules/60/asm/module_60.s b/arm9/modules/60/asm/module_60.s
index 418fa446..fa7752a8 100644
--- a/arm9/modules/60/asm/module_60.s
+++ b/arm9/modules/60/asm/module_60.s
@@ -922,15 +922,15 @@ MOD60_021D7BA4: ; 0x021D7BA4
add r0, r4, #0
add r0, #0x2c
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x3c
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x4c
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x4c
bl FUN_020192B8
@@ -980,7 +980,7 @@ _021D7CF0:
bl FUN_02019570
add r0, r5, r4
add r1, r7, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
bl FUN_020192B8
add r0, r5, r4
@@ -1209,7 +1209,7 @@ MOD60_021D7EA4: ; 0x021D7EA4
mov r1, #0xff
lsr r2, r2, #0x10
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [sp, #0x14]
cmp r0, #5
bne _021D7F26
diff --git a/arm9/modules/61/asm/module_61.s b/arm9/modules/61/asm/module_61.s
index 3afc1e03..54af7ce1 100644
--- a/arm9/modules/61/asm/module_61.s
+++ b/arm9/modules/61/asm/module_61.s
@@ -305,7 +305,7 @@ _021D7702:
add r0, r5, #0
add r0, #0x94
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r5]
mov r0, #0x4c
bl String_ctor
@@ -432,7 +432,7 @@ _021D77F2:
add r0, r5, #0
add r0, #0x94
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r5]
mov r0, #0x4c
bl String_ctor
@@ -1484,7 +1484,7 @@ MOD61_021D7FF4: ; 0x021D7FF4
_021D80BE:
add r0, r5, #0
add r1, r6, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r4, #5
bge _021D80D0
add r0, r5, #0
diff --git a/arm9/modules/62/asm/module_62.s b/arm9/modules/62/asm/module_62.s
index d65fb117..f1eb2a70 100644
--- a/arm9/modules/62/asm/module_62.s
+++ b/arm9/modules/62/asm/module_62.s
@@ -1152,7 +1152,7 @@ MOD62_0222DE00: ; 0x0222DE00
bl NewString_ReadMsgData
str r0, [sp, #0x18]
add r0, sp, #0x1c
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0
str r0, [sp]
str r0, [sp, #4]
@@ -1936,7 +1936,7 @@ _0222E442:
add r0, r4, r0
asr r7, r0, #1
ldr r0, [sp, #0x18]
- bl FUN_0201901C
+ bl InitWindow
lsl r0, r5, #0x18
lsr r0, r0, #0x18
str r0, [sp]
@@ -1957,7 +1957,7 @@ _0222E442:
bl FUN_02019064
add r0, r7, #0
mov r1, #0x35
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r2, #0x67
ldr r1, [sp, #0x1c]
lsl r2, r2, #2
@@ -1990,7 +1990,7 @@ _0222E49A:
ldr r0, [r1, r0]
ldr r2, [r2, #4]
add r1, r4, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r4, #0
bl String_dtor
add r6, r6, #1
@@ -3251,7 +3251,7 @@ MOD62_0222EE78: ; 0x0222EE78
cmp r5, r1
bne _0222EE96
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl CopyWindowToVram
add sp, #0xc
@@ -3268,7 +3268,7 @@ _0222EE96:
add r5, r0, #0
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -3298,7 +3298,7 @@ MOD62_0222EEE0: ; 0x0222EEE0
add r0, r5, #0
add r4, r2, #0
add r6, r3, #0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [sp, #0x28]
lsl r2, r4, #0x18
lsl r0, r0, #0x18
@@ -3331,7 +3331,7 @@ MOD62_0222EEE0: ; 0x0222EEE0
bl FUN_0200D0BC
add r0, r5, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl CopyWindowToVram
add sp, #0x14
@@ -3347,7 +3347,7 @@ MOD62_0222EF44: ; 0x0222EF44
add r0, r5, #0
add r4, r2, #0
add r6, r3, #0
- bl FUN_0201901C
+ bl InitWindow
ldr r0, [sp, #0x28]
lsl r2, r4, #0x18
lsl r0, r0, #0x18
@@ -3377,7 +3377,7 @@ MOD62_0222EF44: ; 0x0222EF44
bl FUN_02019064
add r0, r5, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl CopyWindowToVram
add sp, #0x14
@@ -3552,14 +3552,14 @@ _0222F0E2:
bne _0222F0FE
add r0, r5, #0
mov r1, #0xee
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl CopyWindowToVram
b _0222F152
_0222F0FE:
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x64
mov r1, #0x35
bl String_ctor
@@ -3621,7 +3621,7 @@ MOD62_0222F168: ; 0x0222F168
bne _0222F194
add r0, r5, r4
mov r1, #0xee
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
bl CopyWindowToVram
add sp, #0x14
@@ -3629,7 +3629,7 @@ MOD62_0222F168: ; 0x0222F168
_0222F194:
add r0, r5, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x64
mov r1, #0x35
bl String_ctor
@@ -3693,7 +3693,7 @@ MOD62_0222F208: ; 0x0222F208
cmp r5, r1
bne _0222F226
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl CopyWindowToVram
add sp, #0xc
@@ -3710,7 +3710,7 @@ _0222F226:
add r5, r0, #0
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
str r1, [sp, #4]
@@ -4612,7 +4612,7 @@ MOD62_0222F904: ; 0x0222F904
mov r0, #0x67
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r4, #0xfc
add r0, r4, #0
bl FUN_02019178
diff --git a/arm9/modules/63/asm/mod63_021D74E0.s b/arm9/modules/63/asm/mod63_021D74E0.s
index a323b642..11daacd0 100644
--- a/arm9/modules/63/asm/mod63_021D74E0.s
+++ b/arm9/modules/63/asm/mod63_021D74E0.s
@@ -2064,7 +2064,7 @@ _021D844C:
add r0, #0xac
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add r0, r7, #0
mov r1, #0
add r2, r4, #0
diff --git a/arm9/modules/64/asm/module_64.s b/arm9/modules/64/asm/module_64.s
index 0ade6b6c..ce90e965 100644
--- a/arm9/modules/64/asm/module_64.s
+++ b/arm9/modules/64/asm/module_64.s
@@ -653,14 +653,14 @@ MOD64_021D7A54: ; 0x021D7A54
add r5, r0, #0
add r0, r4, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r1, r5, #0
add r1, #0x98
str r0, [r1]
add r0, r5, #0
add r0, #0x98
ldr r0, [r0]
- bl FUN_0201901C
+ bl InitWindow
mov r0, #0x13
str r0, [sp]
mov r0, #0x17
@@ -683,7 +683,7 @@ MOD64_021D7A54: ; 0x021D7A54
add r0, #0x98
ldr r0, [r0]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _021D7AE8 ; =0x000006A8
mov r1, #1
ldr r0, [r5, r0]
@@ -2318,7 +2318,7 @@ _021D86F8:
add r6, r0, #0
add r0, r5, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
ldr r0, [sp, #0x2c]
str r3, [sp]
@@ -2375,7 +2375,7 @@ _021D8770:
str r0, [r4]
add r0, r5, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
ldr r0, [sp, #0x2c]
str r3, [sp]
@@ -3393,14 +3393,14 @@ MOD64_021D8EF4: ; 0x021D8EF4
_021D8F16:
ldr r0, [sp, #0x18]
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
add r1, r5, #0
add r1, #0x9c
str r0, [r1]
add r0, r5, #0
add r0, #0x9c
ldr r0, [r0]
- bl FUN_0201901C
+ bl InitWindow
cmp r4, #0
beq _021D8F3C
cmp r4, #1
@@ -3511,7 +3511,7 @@ _021D8FEC:
lsl r1, r1, #0x18
add r0, r5, #0
lsr r1, r1, #0x18
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
diff --git a/arm9/modules/65/asm/module_65.s b/arm9/modules/65/asm/module_65.s
index 229a9214..b3f219dc 100644
--- a/arm9/modules/65/asm/module_65.s
+++ b/arm9/modules/65/asm/module_65.s
@@ -335,7 +335,7 @@ _021D7762:
add r0, r5, #0
add r0, #0xc4
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
b _021D7796
_021D7784:
@@ -425,7 +425,7 @@ MOD65_021D7818: ; 0x021D7818
add r5, r0, #0
add r0, #0xc8
ldr r0, [r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
ldr r0, _021D78A4 ; =gMain
ldr r1, [r0, #0x48]
@@ -998,7 +998,7 @@ _021D7C68:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, r7, #1
add r4, #8
add r5, #0x10
@@ -1404,7 +1404,7 @@ _021D7FCA:
add r0, r5, r0
mov r1, #0xff
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #1
bl FUN_02002B60
mov r0, #0
@@ -1542,7 +1542,7 @@ MOD65_021D80C8: ; 0x021D80C8
strb r0, [r5, #0x1c]
ldrb r0, [r5, #0x1c]
ldr r1, [r5]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xcc
str r0, [r1]
@@ -1585,7 +1585,7 @@ _021D80EE:
ldrb r2, [r6, #5]
ldr r0, [r0]
ldr r1, [r5, #0x34]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
cmp r4, #0xff
bne _021D80EE
_021D8142:
@@ -1594,7 +1594,7 @@ _021D8142:
ldr r0, [r0]
ldr r1, [r5, #0x38]
mov r2, #0xff
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r1, r5, #0
ldr r0, _021D8210 ; =0x021DA2E0
add r1, #0x84
@@ -1684,7 +1684,7 @@ _021D81C0:
ldrh r2, [r2]
add r0, #0x84
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
add r1, r5, #0
add r1, #0xc4
str r0, [r1]
@@ -1711,7 +1711,7 @@ MOD65_021D8214: ; 0x021D8214
add r0, #0xe8
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r4, #0
beq _021D823E
add r0, r5, #0
@@ -1725,11 +1725,11 @@ _021D823E:
ldr r0, [r0]
add r1, #0x80
add r2, #0x82
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r5, #0
add r0, #0xcc
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
add r0, #0x80
ldrh r1, [r0]
@@ -1792,7 +1792,7 @@ _021D82A2:
mov r1, #1
mov r2, #2
mov r3, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
b _021D8392
_021D82D2:
mov r0, #0x1e
@@ -1812,7 +1812,7 @@ _021D82D2:
mov r1, #0
mov r2, #4
add r3, r1, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
mov r0, #1
strh r0, [r4, #0x14]
b _021D8392
@@ -1834,7 +1834,7 @@ _021D8302:
mov r1, #1
mov r2, #2
mov r3, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
mov r0, #0
strh r0, [r4, #0x14]
b _021D8392
@@ -1856,7 +1856,7 @@ _021D8330:
mov r1, #0
mov r2, #2
add r3, r1, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
mov r0, #1
strh r0, [r4, #0x14]
b _021D8392
@@ -1881,7 +1881,7 @@ _021D835E:
mov r1, #0
mov r2, #2
add r3, r1, #0
- bl FUN_0201A8C8
+ bl ScrollWindow
mov r0, #0
strh r0, [r4, #0x14]
_021D8392:
@@ -1953,7 +1953,7 @@ _021D83D2:
mov r1, #0
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldrb r1, [r4, #0x1b]
cmp r1, #5
bne _021D8434
@@ -2057,11 +2057,11 @@ _021D84E0: .word 0x00000001
thumb_func_start MOD65_021D84E4
MOD65_021D84E4: ; 0x021D84E4
- ldr r3, _021D84EC ; =FUN_02001470
+ ldr r3, _021D84EC ; =ListMenuGetTemplateField
mov r1, #0x13
bx r3
nop
-_021D84EC: .word FUN_02001470
+_021D84EC: .word ListMenuGetTemplateField
thumb_func_end MOD65_021D84E4
thumb_func_start MOD65_021D84F0
@@ -2072,7 +2072,7 @@ MOD65_021D84F0: ; 0x021D84F0
mov r1, #0x13
add r7, r0, #0
add r6, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
cmp r6, #0
bne _021D850C
@@ -2083,7 +2083,7 @@ _021D850C:
add r0, r7, #0
add r1, #2
add r2, sp, #0x10
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r2, sp, #0x10
ldrh r2, [r2]
mov r0, #7
@@ -2140,7 +2140,7 @@ _021D8578:
add r0, #0xf8
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
cmp r5, #0xff
bne _021D85B4
add r0, r4, #0
@@ -2223,7 +2223,7 @@ MOD65_021D8634: ; 0x021D8634
add r5, r0, #0
ldr r1, [r5]
mov r0, #3
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
add r1, r5, #0
add r1, #0xd0
str r0, [r1]
@@ -2235,7 +2235,7 @@ _021D8648:
ldr r1, [r5, #0x2c]
add r2, r4, #1
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
@@ -2276,7 +2276,7 @@ _021D8648:
add r0, #0xa4
add r2, r1, #0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
add r5, #0xc8
str r0, [r5]
pop {r3, r4, r5, pc}
@@ -2304,11 +2304,11 @@ MOD65_021D86BC: ; 0x021D86BC
ldr r0, [r0]
add r1, sp, #0
add r2, #2
- bl FUN_02001300
+ bl DestroyListMenu
add r0, r4, #0
add r0, #0xd0
ldr r0, [r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0
mov r1, #0
add r0, #0xc8
@@ -3269,7 +3269,7 @@ MOD65_021D8E68: ; 0x021D8E68
add r0, r4, #0
add r0, #0x6c
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x10]
mov r1, #1
ldrb r0, [r0, #0xb]
@@ -3842,7 +3842,7 @@ MOD65_021D92C4: ; 0x021D92C4
add r0, r4, #0
add r0, #0x6c
mov r1, #0xff
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x20]
bl StringSetEmpty
mov r0, #1
diff --git a/arm9/modules/66/asm/module_66.s b/arm9/modules/66/asm/module_66.s
index e0b21bf2..0dda816f 100644
--- a/arm9/modules/66/asm/module_66.s
+++ b/arm9/modules/66/asm/module_66.s
@@ -1350,7 +1350,7 @@ _021D7F44:
bl FUN_0200D6F8
add r0, r7, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -1720,7 +1720,7 @@ MOD66_021D820C: ; 0x021D820C
bl StringSetEmpty
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, #0xa0
ldr r0, [r6]
cmp r0, #0
@@ -1801,7 +1801,7 @@ MOD66_021D82B8: ; 0x021D82B8
bne _021D82DC
add r0, r6, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0
bl CopyWindowToVram
add r0, r6, #0
@@ -1811,7 +1811,7 @@ MOD66_021D82B8: ; 0x021D82B8
_021D82DC:
add r0, r6, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrh r1, [r4, #8]
ldr r0, _021D8378 ; =0x0000FFFF
cmp r1, r0
@@ -2044,7 +2044,7 @@ MOD66_021D8494: ; 0x021D8494
cmp r5, #0
beq _021D84C6
add r0, r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl FUN_02019570
ldrb r1, [r4, #0x15]
@@ -2104,7 +2104,7 @@ MOD66_021D84C8: ; 0x021D84C8
sub r4, r1, r0
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -2212,23 +2212,23 @@ MOD66_021D8554: ; 0x021D8554
add r0, r4, #0
add r0, #0x28
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x38
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x48
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x58
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x68
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x28
bl CopyWindowToVram
diff --git a/arm9/modules/67/asm/module_67.s b/arm9/modules/67/asm/module_67.s
index 4982fa30..f67a1817 100644
--- a/arm9/modules/67/asm/module_67.s
+++ b/arm9/modules/67/asm/module_67.s
@@ -327,7 +327,7 @@ MOD67_021D777C: ; 0x021D777C
bl FUN_020178A0
mov r0, #0x2a
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.align 2, 0
thumb_func_end MOD67_021D777C
@@ -1122,10 +1122,10 @@ _021D7DAC:
_021D7DB4:
add r0, r6, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r1, r6, #0
add r2, r4, #0
diff --git a/arm9/modules/68/asm/module_68.s b/arm9/modules/68/asm/module_68.s
index 5c2c1740..ebb66d25 100644
--- a/arm9/modules/68/asm/module_68.s
+++ b/arm9/modules/68/asm/module_68.s
@@ -320,7 +320,7 @@ MOD68_021D7774: ; 0x021D7774
bl FUN_020178A0
mov r0, #0x24
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.align 2, 0
thumb_func_end MOD68_021D7774
@@ -527,7 +527,7 @@ MOD68_021D7904: ; 0x021D7904
bl FUN_02002E14
add r7, r0, #0
add r0, r5, r4
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r3, r0, #0
mov r1, #0
lsl r3, r3, #3
@@ -555,7 +555,7 @@ MOD68_021D7958: ; 0x021D7958
add r4, r0, #0
add r0, r4, #4
mov r1, #4
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
ldr r3, _021D7974 ; =0x00010204
add r0, r4, #0
@@ -572,7 +572,7 @@ MOD68_021D7978: ; 0x021D7978
add r4, r0, #0
add r0, #0x24
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r3, _021D7994 ; =0x000F0200
add r0, r4, #0
mov r1, #2
@@ -589,7 +589,7 @@ MOD68_021D7998: ; 0x021D7998
add r4, r0, #0
add r0, #0x34
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r3, _021D79B4 ; =0x000F0200
add r0, r4, #0
mov r1, #3
@@ -606,7 +606,7 @@ MOD68_021D79B8: ; 0x021D79B8
add r4, r0, #0
add r0, #0x44
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r3, _021D79D4 ; =0x000F0200
add r0, r4, #0
mov r1, #4
@@ -623,7 +623,7 @@ MOD68_021D79D8: ; 0x021D79D8
add r4, r0, #0
add r0, #0x54
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r3, _021D79F4 ; =0x000F0200
add r0, r4, #0
mov r1, #5
@@ -640,7 +640,7 @@ MOD68_021D79F8: ; 0x021D79F8
add r4, r0, #0
add r0, #0x64
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r3, _021D7A14 ; =0x000F0200
add r0, r4, #0
mov r1, #6
@@ -660,7 +660,7 @@ MOD68_021D7A18: ; 0x021D7A18
add r4, #0x14
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #5
str r0, [sp]
add r0, r5, #0
@@ -752,7 +752,7 @@ MOD68_021D7AE4: ; 0x021D7AE4
add r5, #0xb4
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x7e
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -790,7 +790,7 @@ MOD68_021D7B34: ; 0x021D7B34
add r5, #0x94
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, #0xc4
ldr r0, [r4]
mov r1, #0xa
@@ -826,7 +826,7 @@ MOD68_021D7B80: ; 0x021D7B80
add r5, #0xa4
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x7f
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -871,7 +871,7 @@ MOD68_021D7BDC: ; 0x021D7BDC
add r5, #0x74
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, #0xc4
ldr r0, [r4]
mov r1, #8
@@ -907,7 +907,7 @@ MOD68_021D7C28: ; 0x021D7C28
add r6, #0x84
add r0, r6, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x7f
lsl r0, r0, #2
ldr r0, [r5, r0]
diff --git a/arm9/modules/69/asm/module_69.s b/arm9/modules/69/asm/module_69.s
index 33fafb4f..d88f4eb8 100644
--- a/arm9/modules/69/asm/module_69.s
+++ b/arm9/modules/69/asm/module_69.s
@@ -793,7 +793,7 @@ MOD69_0222DBAC: ; 0x0222DBAC
add r0, r4, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x14
bl FUN_02019548
@@ -2608,7 +2608,7 @@ _0222EAEA:
_0222EB16:
ldr r0, [r4, #0x10]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x10]
bl FUN_02019548
ldr r0, [r4, #0x28]
diff --git a/arm9/modules/70/asm/module_70.s b/arm9/modules/70/asm/module_70.s
index a0966fec..eb5ef973 100644
--- a/arm9/modules/70/asm/module_70.s
+++ b/arm9/modules/70/asm/module_70.s
@@ -1022,11 +1022,11 @@ MOD70_021D7CC0: ; 0x021D7CC0
add r4, r0, #0
add r0, #0x14
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x24
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x14
bl FUN_02019548
@@ -1102,7 +1102,7 @@ MOD70_021D7CE8: ; 0x021D7CE8
bl StringExpandPlaceholders
add r0, r6, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r2, #0xff
@@ -1136,7 +1136,7 @@ MOD70_021D7D98: ; 0x021D7D98
add r0, #0x24
mov r1, #0xf
str r0, [sp, #0xc]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x1c]
cmp r0, #0
beq _021D7DC8
diff --git a/arm9/modules/71/asm/module_71.s b/arm9/modules/71/asm/module_71.s
index ac2559a6..d5c1ec6f 100644
--- a/arm9/modules/71/asm/module_71.s
+++ b/arm9/modules/71/asm/module_71.s
@@ -1750,7 +1750,7 @@ MOD71_0222E438: ; 0x0222E438
lsl r1, r1, #2
ldr r1, [r4, r1]
mov r0, #0x1a
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
mov r0, #0x61
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -2700,7 +2700,7 @@ MOD71_0222EC5C: ; 0x0222EC5C
bl GetMonData
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x20]
ldr r2, [sp, #8]
str r0, [sp]
@@ -2910,7 +2910,7 @@ _0222EE14:
str r0, [sp, #0x30]
add r0, r6, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x61
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -2985,7 +2985,7 @@ _0222EEA6:
lsr r7, r0, #0x10
add r0, r6, r4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x14
mov r1, #0x1a
bl String_ctor
@@ -4313,7 +4313,7 @@ MOD71_0222F954: ; 0x0222F954
mov r0, #0xda
lsl r0, r0, #6
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
mov r0, #1
mvn r0, r0
@@ -4383,10 +4383,10 @@ _0222F9E4:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _0222FA34 ; =0x0000367C
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0
pop {r4, r5, r6, pc}
.align 2, 0
@@ -4412,7 +4412,7 @@ MOD71_0222FA38: ; 0x0222FA38
str r0, [sp]
add r0, r0, #1
mov r1, #0x1a
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _0222FAD0 ; =0x0000367C
str r0, [r5, r1]
mov r0, #0x64
@@ -4438,7 +4438,7 @@ _0222FA60:
add r1, r6, #0
ldr r0, [r5, r0]
add r2, r4, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
_0222FA8A:
add r4, r4, #1
cmp r4, #0x20
@@ -4450,7 +4450,7 @@ _0222FA8A:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0xd
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #0
bl String_dtor
ldr r2, _0222FAD0 ; =0x0000367C
@@ -4909,7 +4909,7 @@ MOD71_0222FDD8: ; 0x0222FDD8
bl MOD71_02230F40
mov r0, #3
mov r1, #0x1a
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _0222FED8 ; =0x0000065C
mov r2, #0x11
str r0, [r4, r1]
@@ -4918,7 +4918,7 @@ MOD71_0222FDD8: ; 0x0222FDD8
lsl r1, r1, #2
ldr r1, [r4, r1]
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _0222FED8 ; =0x0000065C
mov r1, #0x61
lsl r1, r1, #2
@@ -4926,7 +4926,7 @@ MOD71_0222FDD8: ; 0x0222FDD8
ldr r1, [r4, r1]
mov r2, #0x12
mov r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _0222FED8 ; =0x0000065C
mov r1, #0x61
lsl r1, r1, #2
@@ -4934,7 +4934,7 @@ MOD71_0222FDD8: ; 0x0222FDD8
ldr r1, [r4, r1]
mov r2, #0x13
mov r3, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _0222FED8 ; =0x0000065C
ldr r1, [r4, r0]
str r1, [sp, #0x10]
@@ -5024,7 +5024,7 @@ _0222FF10:
bl FUN_02001C5C
ldr r0, _0223000C ; =0x0000065C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r1, _02230010 ; =MOD71_0222F538
ldr r0, _02230014 ; =0x00002214
add sp, #0x10
@@ -5063,7 +5063,7 @@ _0222FF64:
bl FUN_02001C5C
ldr r0, _0223000C ; =0x0000065C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r1, _0223001C ; =MOD71_02230020
ldr r0, _02230014 ; =0x00002214
str r1, [r4, r0]
@@ -5100,7 +5100,7 @@ _0222FFB4:
bl FUN_02001C5C
ldr r0, _0223000C ; =0x0000065C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r1, _02230010 ; =MOD71_0222F538
ldr r0, _02230014 ; =0x00002214
str r1, [r4, r0]
@@ -6155,7 +6155,7 @@ MOD71_02230810: ; 0x02230810
bl MOD71_02230F40
mov r0, #2
mov r1, #0x1a
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02230900 ; =0x0000065C
mov r2, #0x11
str r0, [r4, r1]
@@ -6164,7 +6164,7 @@ MOD71_02230810: ; 0x02230810
lsl r1, r1, #2
ldr r1, [r4, r1]
mov r3, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02230900 ; =0x0000065C
mov r1, #0x61
lsl r1, r1, #2
@@ -6172,7 +6172,7 @@ MOD71_02230810: ; 0x02230810
ldr r1, [r4, r1]
mov r2, #0x13
mov r3, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02230900 ; =0x0000065C
ldr r1, [r4, r0]
sub r0, #0x94
@@ -6259,7 +6259,7 @@ _0223092E:
bl FUN_02001C5C
ldr r0, _022309E4 ; =0x0000065C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add sp, #0x10
mov r0, #3
pop {r4, pc}
@@ -6295,7 +6295,7 @@ _02230982:
bl FUN_02001C5C
ldr r0, _022309E4 ; =0x0000065C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r1, _022309DC ; =MOD71_0222F538
ldr r0, _022309E0 ; =0x00002214
str r1, [r4, r0]
@@ -6627,7 +6627,7 @@ MOD71_02230C48: ; 0x02230C48
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #1
add r1, r5, #0
str r2, [sp]
@@ -6646,7 +6646,7 @@ MOD71_02230C48: ; 0x02230C48
add r0, r5, #0
add r0, #0x10
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x15
str r0, [sp]
mov r0, #5
@@ -6666,7 +6666,7 @@ MOD71_02230C48: ; 0x02230C48
add r0, r5, #0
add r0, #0x60
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
bl Options_GetFrame
lsl r0, r0, #0x18
@@ -6706,7 +6706,7 @@ MOD71_02230C48: ; 0x02230C48
lsl r0, r0, #4
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0xe
@@ -6728,7 +6728,7 @@ MOD71_02230C48: ; 0x02230C48
lsl r0, r0, #4
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0x1b
@@ -6750,7 +6750,7 @@ MOD71_02230C48: ; 0x02230C48
lsl r0, r0, #4
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x11
str r0, [sp]
mov r0, #0xb
@@ -6771,7 +6771,7 @@ MOD71_02230C48: ; 0x02230C48
lsl r0, r0, #6
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0xb
@@ -6792,7 +6792,7 @@ MOD71_02230C48: ; 0x02230C48
lsl r0, r0, #4
add r0, r5, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r4, _02230E80 ; =0x022313F4
mov r7, #0
mov r6, #0x33
@@ -6824,7 +6824,7 @@ _02230DE2:
ldr r0, [sp, #0x18]
mov r1, #0
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, r7, #1
add r6, #0x10
add r4, r4, #4
@@ -6861,7 +6861,7 @@ _02230E2C:
bl FUN_02019064
add r0, r5, r7
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r4, #0xa
cmp r6, #8
@@ -6995,7 +6995,7 @@ _02230F6A:
_02230F76:
add r0, r5, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
ldr r0, _02230FAC ; =0x0001020F
@@ -7127,7 +7127,7 @@ MOD71_02231018: ; 0x02231018
mov r3, #0x1a
str r5, [sp, #0x14]
str r4, [sp, #0x20]
- bl FUN_020010A8
+ bl ListMenuInit
add sp, #0x34
pop {r4, r5, r6, r7, pc}
nop
diff --git a/arm9/modules/73/asm/module_73.s b/arm9/modules/73/asm/module_73.s
index d5105d7e..4a086c51 100644
--- a/arm9/modules/73/asm/module_73.s
+++ b/arm9/modules/73/asm/module_73.s
@@ -4805,7 +4805,7 @@ MOD73_021D9AC8: ; 0x021D9AC8
add r4, r0, #0
ldr r0, [r4, #8]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r4, #0x18]
mov r2, #0
ldr r0, [r4, #8]
@@ -4947,11 +4947,11 @@ MOD73_021D9BE0: ; 0x021D9BE0
add r5, r0, #0
add r0, r4, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #8]
add r0, r4, #0
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r5, #0xc]
mov r0, #0x13
str r0, [sp]
@@ -4984,10 +4984,10 @@ MOD73_021D9BE0: ; 0x021D9BE0
bl FUN_02019064
ldr r0, [r5, #8]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0xc]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r5, #0x10]
mov r1, #4
lsl r0, r0, #0x18
@@ -5924,7 +5924,7 @@ MOD73_021DA2AC: ; 0x021DA2AC
_021DA2FA:
ldr r0, [sp, #0x14]
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4, #8]
ldrh r0, [r5, #2]
mov r2, #2
@@ -5953,7 +5953,7 @@ _021DA2FA:
bl FUN_02019064
ldr r0, [r4, #8]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r4, r4, #4
add r5, #0xc
@@ -6099,7 +6099,7 @@ _021DA446:
mov r1, #0
str r1, [r5, #0x30]
ldr r0, [r5, #8]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
ldr r0, _021DA498 ; =0x0001020F
@@ -6173,7 +6173,7 @@ MOD73_021DA4D4: ; 0x021DA4D4
bl FUN_02018744
ldr r0, [r4, #0xc]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
ldr r0, _021DA54C ; =0x0001020F
@@ -6192,7 +6192,7 @@ MOD73_021DA4D4: ; 0x021DA4D4
bl FUN_0200CCA4
ldr r0, [r4, #0x10]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
ldr r0, _021DA54C ; =0x0001020F
@@ -6494,7 +6494,7 @@ MOD73_021DA770: ; 0x021DA770
ldr r0, [r4, #0x14]
add r6, r1, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r6, #6
bhi _021DA7EC
add r0, r6, r6
diff --git a/arm9/modules/74/asm/module_74.s b/arm9/modules/74/asm/module_74.s
index 1fce128e..0189a34d 100644
--- a/arm9/modules/74/asm/module_74.s
+++ b/arm9/modules/74/asm/module_74.s
@@ -771,7 +771,7 @@ _021D7A9A:
bl FUN_02019150
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, r7, #1
add r4, #8
add r5, #0x10
@@ -790,7 +790,7 @@ _021D7AC0:
bl FUN_02019150
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, r7, #1
add r4, #8
add r5, #0x10
@@ -1343,7 +1343,7 @@ MOD74_021D7F44: ; 0x021D7F44
mov r1, #0
add r5, r2, #0
add r4, r3, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r4, #8
blo _021D7F8C
mov r0, #2
@@ -1637,7 +1637,7 @@ MOD74_021D818C: ; 0x021D818C
add r0, r4, #0
add r0, #0x8c
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #4
str r0, [sp]
mov r1, #0
@@ -1664,7 +1664,7 @@ MOD74_021D81E0: ; 0x021D81E0
add r4, r0, #0
add r0, #0x8c
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x8c
bl FUN_02019570
diff --git a/arm9/modules/75/asm/module_75.s b/arm9/modules/75/asm/module_75.s
index 1a9861c9..82294cbf 100644
--- a/arm9/modules/75/asm/module_75.s
+++ b/arm9/modules/75/asm/module_75.s
@@ -759,7 +759,7 @@ MOD75_021E71BC: ; 0x021E71BC
bl FUN_020178A0
mov r0, #6
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.align 2, 0
thumb_func_end MOD75_021E71BC
@@ -1233,7 +1233,7 @@ MOD75_021E7580: ; 0x021E7580
ldrb r0, [r0, r1]
mov r1, #6
add r0, r0, #3
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r1, #0x16
lsl r1, r1, #4
str r0, [r5, r1]
@@ -1243,7 +1243,7 @@ MOD75_021E7580: ; 0x021E7580
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x23
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldrb r3, [r4, #8]
cmp r3, #3
bne _021E764A
@@ -1280,7 +1280,7 @@ _021E75CE:
ldr r0, [r5, r0]
ldr r1, [r7, r1]
add r2, r6, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldr r0, [sp]
ldrb r1, [r4, #8]
add r0, r0, #4
@@ -1300,7 +1300,7 @@ _021E761A:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x22
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
mov r1, #0x16
lsl r1, r1, #4
ldr r0, [r5, r1]
@@ -1309,7 +1309,7 @@ _021E761A:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x23
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #3
add sp, #8
strb r0, [r4, #9]
@@ -1348,7 +1348,7 @@ _021E7658:
ldr r0, [r5, r0]
ldr r1, [r7, r1]
add r2, r6, #0
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
ldr r0, [sp, #4]
ldrb r3, [r4, #8]
add r0, r0, #4
@@ -1377,7 +1377,7 @@ _021E76A4:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x22
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _021E76E0
_021E76CC:
mov r1, #0x16
@@ -1388,7 +1388,7 @@ _021E76CC:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x2b
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_021E76E0:
mov r1, #0x16
lsl r1, r1, #4
@@ -1398,7 +1398,7 @@ _021E76E0:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x23
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #3
add sp, #8
strb r0, [r4, #9]
@@ -1412,7 +1412,7 @@ _021E76FC:
add r3, r2, #0
ldr r1, [r5, r1]
sub r3, #0x23
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #2
strb r0, [r4, #9]
add sp, #8
@@ -1606,7 +1606,7 @@ _021E784E:
add r1, r3, #0
add r0, sp, #0
mov r3, #6
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0x57
lsl r1, r1, #2
str r0, [r4, r1]
@@ -1624,7 +1624,7 @@ MOD75_021E7870: ; 0x021E7870
add r7, r1, #0
mov r1, #0x13
add r4, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r5, r0, #0
cmp r4, #1
beq _021E78F8
@@ -1693,7 +1693,7 @@ _021E78F8:
add r0, r5, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #1
mvn r1, r1
cmp r7, r1
@@ -1751,7 +1751,7 @@ MOD75_021E797C: ; 0x021E797C
mov r1, #0x13
str r0, [sp]
add r7, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
add r0, #0xc4
ldr r0, [r0]
@@ -1773,14 +1773,14 @@ MOD75_021E797C: ; 0x021E797C
mov r1, #8
mov r2, #0
mov r3, #9
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
b _021E79C6
_021E79BA:
ldr r0, [sp]
mov r1, #1
mov r2, #0
mov r3, #2
- bl FUN_020013E8
+ bl ListMenuOverrideSetColors
_021E79C6:
ldrb r0, [r6, #8]
cmp r0, #7
@@ -1911,11 +1911,11 @@ MOD75_021E7AA4: ; 0x021E7AA4
add r3, #8
add r1, r1, r2
add r2, r3, r2
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x16
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #0x57
mov r1, #0
lsl r0, r0, #2
@@ -1959,7 +1959,7 @@ _021E7B12:
add r0, r4, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x14
bl FUN_02019570
@@ -2019,7 +2019,7 @@ MOD75_021E7B7C: ; 0x021E7B7C
ldr r0, [r5, r0]
add r1, r4, #6
add r2, r4, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
ldr r0, _021E7CD8 ; =gMain
ldr r1, [r0, #0x48]
mov r0, #4
@@ -2038,7 +2038,7 @@ _021E7BC0:
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
mov r0, #0x57
lsl r0, r0, #2
@@ -2046,7 +2046,7 @@ _021E7BC0:
ldr r0, [r5, r0]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0
ldrh r2, [r0]
ldrh r0, [r4, #4]
@@ -2085,7 +2085,7 @@ _021E7BFC:
lsl r1, r1, #0x10
ldr r0, [r5, r0]
lsr r1, r1, #0x10
- bl FUN_02001464
+ bl ListMenuGetValueByArrayId
add r6, r0, #0
mov r0, #0x49
mov r1, #1
@@ -2102,7 +2102,7 @@ _021E7C38:
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_0200145C
+ bl ListMenuGetUnk33
cmp r0, #1
bne _021E7C5E
add r0, r5, #0
@@ -2396,11 +2396,11 @@ MOD75_021E7E60: ; 0x021E7E60
bl MOD75_021E7AA4
add r0, r4, #4
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #4
bl FUN_02019220
add r0, r4, #0
@@ -2830,11 +2830,11 @@ _021E81D2:
add r3, #8
add r1, r1, r2
add r2, r3, r2
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x16
lsl r0, r0, #4
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
_021E8206:
add r0, r5, #0
add r0, #0xc4
@@ -3643,7 +3643,7 @@ MOD75_021E8808: ; 0x021E8808
add r1, r2, r1
lsl r1, r1, #0x10
lsr r1, r1, #0x10
- bl FUN_02001464
+ bl ListMenuGetValueByArrayId
mov r1, #1
mvn r1, r1
cmp r0, r1
@@ -3701,7 +3701,7 @@ MOD75_021E8864: ; 0x021E8864
lsl r0, r0, #2
ldrb r1, [r4, r1]
ldr r0, [r4, r0]
- bl FUN_02001464
+ bl ListMenuGetValueByArrayId
ldr r1, _021E88B8 ; =0x0000047C
str r0, [r4, r1]
add r0, r4, #0
@@ -3709,7 +3709,7 @@ MOD75_021E8864: ; 0x021E8864
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02001328
+ bl RedrawListMenu
add r0, r4, #0
bl MOD75_021E8AAC
pop {r4, pc}
@@ -3744,7 +3744,7 @@ _021E88D0:
ldr r0, [r5, r0]
add r1, r4, #6
add r2, r4, #4
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, r5, #0
bl MOD75_021E87B8
cmp r0, #1
@@ -3776,7 +3776,7 @@ _021E892E:
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
mov r0, #0x57
lsl r0, r0, #2
@@ -3784,7 +3784,7 @@ _021E892E:
ldr r0, [r5, r0]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
add r0, sp, #0
ldrh r2, [r0]
ldrh r0, [r4, #4]
@@ -3816,7 +3816,7 @@ _021E896A:
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_0200145C
+ bl ListMenuGetUnk33
cmp r0, #1
bne _021E899A
add r0, r5, #0
@@ -3900,7 +3900,7 @@ MOD75_021E89F0: ; 0x021E89F0
mov r0, #0x16
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0
bl MOD75_021E7580
_021E8A3C:
@@ -3928,7 +3928,7 @@ MOD75_021E8A48: ; 0x021E8A48
ldr r0, [r5, r0]
add r1, r4, #6
add r2, r4, #4
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x57
mov r1, #0
lsl r0, r0, #2
@@ -4455,7 +4455,7 @@ MOD75_021E8E1C: ; 0x021E8E1C
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
ldr r2, _021E8EA8 ; =0x000003D9
add r0, #0x64
@@ -4567,7 +4567,7 @@ _021E8F3A:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
ldr r2, _021E8FB8 ; =0x000003D9
add r0, #0x64
@@ -4686,7 +4686,7 @@ _021E9046:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
ldr r2, _021E91A8 ; =0x000003D9
add r0, #0x64
@@ -4726,7 +4726,7 @@ _021E908E:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x46
mov r1, #0xfe
lsl r0, r0, #2
@@ -5022,11 +5022,11 @@ MOD75_021E92BC: ; 0x021E92BC
add r3, #8
add r1, r1, r2
add r2, r3, r2
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x16
lsl r0, r0, #4
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r4, #0
bl MOD75_021E7580
add r0, r4, #0
@@ -5102,7 +5102,7 @@ MOD75_021E9394: ; 0x021E9394
_021E93AA:
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
ldr r2, _021E942C ; =0x000003D9
add r0, #0x64
@@ -5473,7 +5473,7 @@ _021E967A:
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E9718 ; =0x00000426
@@ -5608,7 +5608,7 @@ MOD75_021E97A8: ; 0x021E97A8
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02001328
+ bl RedrawListMenu
add r0, r4, #0
bl MOD75_021EB344
add r0, r4, #0
@@ -5633,7 +5633,7 @@ MOD75_021E97E4: ; 0x021E97E4
mov r0, #0x57
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl FUN_02001328
+ bl RedrawListMenu
add r0, r4, #0
bl MOD75_021EB344
add r0, r4, #0
@@ -5711,7 +5711,7 @@ _021E9872:
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
ldr r2, _021E9928 ; =0x000003D9
add r0, #0x64
@@ -5864,7 +5864,7 @@ _021E99C6:
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
ldr r2, _021E9B3C ; =0x000003D9
add r0, #0x64
@@ -6100,7 +6100,7 @@ _021E9BAC:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -6195,7 +6195,7 @@ _021E9C80:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r4, r0]
@@ -6405,7 +6405,7 @@ _021E9E2A:
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl MOD75_021EB660
ldr r1, _021E9EDC ; =0x00000426
@@ -6654,7 +6654,7 @@ _021EA016:
add r0, r4, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
ldr r2, _021EA0C4 ; =0x000003D9
add r0, #0x64
@@ -7055,7 +7055,7 @@ MOD75_021EA328: ; 0x021EA328
ldrh r3, [r3]
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_02001354
+ bl ListMenuTestInputInternal
add r0, r4, #0
add r0, #0xc4
ldr r0, [r0]
@@ -7207,7 +7207,7 @@ MOD75_021EA444: ; 0x021EA444
ldrh r3, [r3]
ldr r0, [r4, r0]
mov r1, #0
- bl FUN_02001354
+ bl ListMenuTestInputInternal
add r0, r4, #0
add r0, #0xc4
ldr r0, [r0]
@@ -7755,7 +7755,7 @@ MOD75_021EA8BC: ; 0x021EA8BC
add r4, r0, #0
add r0, #0x24
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r2, r4, #0
add r2, #0xc4
ldr r6, [r2]
@@ -7898,13 +7898,13 @@ _021EA9A8:
ldr r1, [r1, #0x14]
add r0, #0x54
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add r5, #0x54
add r0, r5, #0
bl FUN_02019220
mov r0, #6
add r1, r7, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x1c
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -7922,7 +7922,7 @@ MOD75_021EA9F8: ; 0x021EA9F8
add r0, r5, #0
add r0, #0x54
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _021EAAA0 ; =0x00000424
mov r4, #0
ldrb r0, [r5, r0]
@@ -7979,7 +7979,7 @@ _021EAA4C:
add r0, r6, #0
ldr r1, [r1, #0x14]
mov r3, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
add r0, r4, #1
lsl r0, r0, #0x18
lsr r4, r0, #0x18
@@ -7993,7 +7993,7 @@ _021EAA8C:
bl FUN_02019220
ldr r1, [sp, #0x18]
mov r0, #6
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -8617,10 +8617,10 @@ MOD75_021EAF70: ; 0x021EAF70
add r0, r5, #4
ldr r1, [r1, #0x14]
mov r2, #0x28
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r0, #6
add r1, r6, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
thumb_func_end MOD75_021EAF70
@@ -8646,7 +8646,7 @@ MOD75_021EAFB0: ; 0x021EAFB0
add r0, r5, #4
add r2, r1, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
str r4, [sp]
mov r0, #0xff
@@ -8692,10 +8692,10 @@ MOD75_021EB004: ; 0x021EB004
add r0, r5, #4
ldr r1, [r1, #0x14]
add r3, r2, #0
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
mov r0, #6
add r1, r6, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
add sp, #0x1c
pop {r3, r4, r5, r6, pc}
.align 2, 0
@@ -8881,7 +8881,7 @@ _021EB180:
_021EB1B0:
add r0, r7, #0
mov r1, #6
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r1, #0x55
lsl r1, r1, #2
mov r4, #0
@@ -8901,7 +8901,7 @@ _021EB1C4:
lsl r1, r1, #2
ldr r0, [r5, r0]
ldr r1, [r3, r1]
- bl ListMenu_AddItem
+ bl ListMenuItems_AddItem
add r0, r4, #1
lsl r0, r0, #0x10
lsr r4, r0, #0x10
@@ -8971,7 +8971,7 @@ _021EB22E:
add r0, r5, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r1, r5, #0
add r1, #0xc4
ldr r1, [r1]
@@ -9001,7 +9001,7 @@ _021EB298:
bl FUN_0200D0BC
add r0, r4, r6
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9112,14 +9112,14 @@ _021EB37A:
mov r0, #0x55
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
add r0, r5, #0
add r0, #0xb4
bl FUN_02019178
add r0, r5, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r1, r5, #0
add r1, #0xc4
ldr r1, [r1]
@@ -9144,7 +9144,7 @@ MOD75_021EB3D8: ; 0x021EB3D8
add r5, r0, #0
add r0, #0x14
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9214,7 +9214,7 @@ MOD75_021EB454: ; 0x021EB454
add r0, r5, #0
add r0, #0x34
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9280,7 +9280,7 @@ MOD75_021EB504: ; 0x021EB504
add r4, #0x94
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9365,7 +9365,7 @@ MOD75_021EB5B0: ; 0x021EB5B0
add r0, r5, #0
add r0, #0x64
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9543,7 +9543,7 @@ MOD75_021EB708: ; 0x021EB708
_021EB722:
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x45
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -9654,7 +9654,7 @@ MOD75_021EB808: ; 0x021EB808
bne _021EB854
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021EB8E4 ; =0x000003F7
add r0, r4, #0
mov r1, #1
@@ -9686,7 +9686,7 @@ _021EB854:
mov r1, #0xf
mov r2, #0
str r3, [sp, #4]
- bl FUN_020196F4
+ bl FillWindowPixelRect
_021EB866:
mov r0, #0x45
lsl r0, r0, #2
@@ -9755,7 +9755,7 @@ MOD75_021EB8E8: ; 0x021EB8E8
add r4, #0xa4
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r2, _021EB9B0 ; =0x000003F7
add r0, r4, #0
mov r1, #1
diff --git a/arm9/modules/76/asm/module_76.s b/arm9/modules/76/asm/module_76.s
index 13ddf00c..baa825fc 100644
--- a/arm9/modules/76/asm/module_76.s
+++ b/arm9/modules/76/asm/module_76.s
@@ -382,7 +382,7 @@ MOD76_021D77E4: ; 0x021D77E4
bl FUN_020178A0
mov r0, #0x43
add r1, r4, #0
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
pop {r4, pc}
.align 2, 0
thumb_func_end MOD76_021D77E4
@@ -467,7 +467,7 @@ _021D78A8:
bl FUN_02019150
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r6, r6, #1
add r4, #8
add r5, #0x10
@@ -478,7 +478,7 @@ _021D78A8:
add r0, r7, #0
add r0, #0xc8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, #0xc8
add r0, r7, #0
mov r1, #0
@@ -596,11 +596,11 @@ _021D799C:
ldr r0, [r5, r0]
add r1, #2
add r2, sp, #0
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
mov r0, #0x41
lsl r0, r0, #2
ldr r0, [r5, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
ldr r2, [r5]
mov r0, #0x41
@@ -609,7 +609,7 @@ _021D799C:
ldr r0, [r5, r0]
add r1, #0x12
add r2, #0x10
- bl FUN_02001448
+ bl ListMenuGetScrollAndRow
ldr r2, [r5]
add r1, sp, #0
ldrh r1, [r1, #2]
@@ -1021,7 +1021,7 @@ _021D7CE8:
add r1, #8
lsl r0, r4, #4
add r0, r1, r0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #0x1b
lsr r0, r0, #0x18
sub r0, r0, r6
@@ -1041,7 +1041,7 @@ _021D7D12:
add r1, #8
lsl r0, r4, #4
add r0, r1, r0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #0x1b
lsr r0, r0, #0x18
sub r1, r0, r6
@@ -1257,7 +1257,7 @@ MOD76_021D7ECC: ; 0x021D7ECC
strb r1, [r5, r0]
ldrb r0, [r5, r0]
mov r1, #0x43
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
mov r1, #0x42
lsl r1, r1, #2
str r0, [r5, r1]
@@ -1287,7 +1287,7 @@ _021D7F0E:
ldr r0, [r5, r0]
add r1, r7, #0
add r3, r2, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _021D7F42
_021D7F2A:
mov r0, #0x42
@@ -1299,7 +1299,7 @@ _021D7F2A:
ldr r0, [r5, r0]
ldr r1, [r1]
sub r3, #0x22
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _021D7F50
_021D7F42:
mov r0, #0x61
@@ -1340,7 +1340,7 @@ _021D7F50:
ldrh r1, [r3, #0x12]
ldrh r2, [r3, #0x10]
mov r3, #0x43
- bl FUN_020010A8
+ bl ListMenuInit
mov r1, #0x41
lsl r1, r1, #2
str r0, [r5, r1]
@@ -1365,11 +1365,11 @@ MOD76_021D7FAC: ; 0x021D7FAC
ldr r0, [r4, r0]
add r1, #0x12
add r2, #0x10
- bl FUN_02001300
+ bl DestroyListMenu
mov r0, #0x42
lsl r0, r0, #2
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
pop {r4, pc}
.align 2, 0
thumb_func_end MOD76_021D7FAC
@@ -1380,7 +1380,7 @@ MOD76_021D7FD0: ; 0x021D7FD0
add r5, r1, #0
mov r1, #0x13
add r6, r2, #0
- bl FUN_02001470
+ bl ListMenuGetTemplateField
add r4, r0, #0
cmp r6, #1
beq _021D7FE8
@@ -1418,19 +1418,19 @@ MOD76_021D800C: ; 0x021D800C
add r4, r1, #0
add r0, #0xa8
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x78
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x88
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
add r0, #0x98
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x4b
lsl r0, r0, #2
ldr r0, [r5, r0]
@@ -1601,7 +1601,7 @@ MOD76_021D81AC: ; 0x021D81AC
add r4, r1, #0
add r0, #0xb8
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #1
mvn r1, r1
cmp r4, r1
@@ -2043,7 +2043,7 @@ MOD76_021D853C: ; 0x021D853C
add r5, r1, #0
add r0, #0xc8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
add r1, r5, #0
bl MOD76_021D8354
@@ -2169,7 +2169,7 @@ MOD76_021D862C: ; 0x021D862C
add r4, r0, #0
add r0, #0xc8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
mov r1, #0
bl MOD76_021D8354
@@ -2217,7 +2217,7 @@ MOD76_021D8688: ; 0x021D8688
add r4, r0, #0
add r0, #0xc8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
mov r1, #0
bl MOD76_021D8354
diff --git a/arm9/modules/77/asm/module_77.s b/arm9/modules/77/asm/module_77.s
index a5eaa94b..4dce464f 100644
--- a/arm9/modules/77/asm/module_77.s
+++ b/arm9/modules/77/asm/module_77.s
@@ -242,7 +242,7 @@ _021D76D6:
_021D76FA:
ldr r0, _021D7988 ; =0x0000C054
ldr r0, [r4, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
sub r0, r7, #1
cmp r6, r0
@@ -358,7 +358,7 @@ _021D77A2:
_021D77DE:
ldr r0, _021D7988 ; =0x0000C054
ldr r0, [r4, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
sub r0, r7, #1
cmp r6, r0
@@ -438,7 +438,7 @@ _021D7838:
_021D7886:
ldr r0, _021D7988 ; =0x0000C054
ldr r0, [r4, r0]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
sub r0, r7, #1
cmp r6, r0
@@ -601,7 +601,7 @@ _021D79D0:
add r0, r4, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D7B7C ; =0x0000C034
ldr r2, _021D7B80 ; =0x000001D9
add r0, r4, r0
@@ -656,7 +656,7 @@ _021D7A4E:
add r0, r4, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D7B84 ; =0x0000C314
ldr r1, [r4, r0]
cmp r1, #0
@@ -1432,7 +1432,7 @@ MOD77_021D7FAC: ; 0x021D7FAC
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D8224 ; =0x0000C014
ldr r2, _021D8214 ; =0x000001E2
add r0, r5, r0
@@ -1565,7 +1565,7 @@ MOD77_021D7FAC: ; 0x021D7FAC
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D8244 ; =0x0000C060
mov r1, #0xc
ldr r0, [r5, r0]
@@ -1671,7 +1671,7 @@ _021D82B0:
mov r1, #0xf
add r2, r4, #0
add r3, r4, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r0, #1
ldr r1, [r5]
lsl r0, r0, #0xa
@@ -1767,7 +1767,7 @@ MOD77_021D8370: ; 0x021D8370
bl FUN_02019150
ldrh r0, [r6, #0x10]
ldr r1, [r5]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _021D8404 ; =0x0000C058
mov r7, #0
str r0, [r5, r1]
@@ -1782,7 +1782,7 @@ _021D8398:
ldr r1, [r5, r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldrh r0, [r6, #0x10]
add r7, r7, #1
add r4, #8
@@ -1812,7 +1812,7 @@ _021D83B2:
lsl r3, r3, #0x18
add r2, r1, #0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
ldr r1, _021D8410 ; =0x0000C054
ldr r2, _021D8414 ; =0x000001D9
str r0, [r5, r1]
@@ -1853,7 +1853,7 @@ MOD77_021D8418: ; 0x021D8418
str r0, [sp, #8]
ldr r1, [r5]
add r0, r6, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _021D84C8 ; =0x0000C058
mov r4, #0
str r0, [r5, r1]
@@ -1865,7 +1865,7 @@ _021D844E:
ldr r0, [r5, r0]
ldr r1, [sp, #8]
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, r6
blo _021D844E
@@ -1902,7 +1902,7 @@ _021D8462:
lsl r3, r3, #0x18
add r2, r1, #0
lsr r3, r3, #0x18
- bl FUN_020010A8
+ bl ListMenuInit
ldr r1, _021D84D0 ; =0x0000C054
ldr r2, _021D84D4 ; =0x000001D9
str r0, [r5, r1]
@@ -1937,10 +1937,10 @@ MOD77_021D84D8: ; 0x021D84D8
mov r1, #0
ldr r0, [r4, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _021D850C ; =0x0000C058
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
pop {r4, pc}
.align 2, 0
_021D8504: .word 0x0000C024
@@ -1978,7 +1978,7 @@ MOD77_021D8510: ; 0x021D8510
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D85CC ; =0x0000C044
ldr r2, _021D85D0 ; =0x000001D9
add r0, r5, r0
@@ -2067,7 +2067,7 @@ MOD77_021D85E0: ; 0x021D85E0
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D8690 ; =0x0000C044
ldr r2, _021D8694 ; =0x000001D9
add r0, r5, r0
@@ -2159,7 +2159,7 @@ MOD77_021D86B4: ; 0x021D86B4
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, _021D8810 ; =0x0000C060
mov r1, #0xe
ldr r0, [r5, r0]
@@ -2245,7 +2245,7 @@ _021D8748:
add r0, r5, r0
mov r1, #0xf
add r3, r2, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
ldr r0, [r5]
add r2, r7, #0
str r0, [sp]
diff --git a/arm9/modules/80/asm/module_80.s b/arm9/modules/80/asm/module_80.s
index f0b34ee0..ea6a3c13 100644
--- a/arm9/modules/80/asm/module_80.s
+++ b/arm9/modules/80/asm/module_80.s
@@ -2951,7 +2951,7 @@ MOD80_0222EC98: ; 0x0222EC98
ldr r0, _0222ED88 ; =0x00000EB8
mov r1, #0
add r0, r7, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #2
str r0, [sp]
mov r3, #0
@@ -2992,7 +2992,7 @@ _0222ECF2:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [sp, #0x14]
add r6, #0x1e
add r0, r0, #1
@@ -3019,7 +3019,7 @@ _0222ECF2:
ldr r0, _0222ED94 ; =0x00000E98
mov r1, #0xf
add r0, r7, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0x1b
@@ -3039,7 +3039,7 @@ _0222ECF2:
ldr r0, _0222ED98 ; =0x00000FB8
mov r1, #0xf
add r0, r7, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x18
pop {r3, r4, r5, r6, r7, pc}
.align 2, 0
@@ -3678,7 +3678,7 @@ MOD80_0222F250: ; 0x0222F250
ldr r0, _0222F2A0 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0222F2A0 ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -3720,7 +3720,7 @@ MOD80_0222F2A8: ; 0x0222F2A8
ldr r0, _0222F2F8 ; =0x00000FB8
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0222F2F8 ; =0x00000FB8
mov r1, #0
add r0, r5, r0
@@ -3761,7 +3761,7 @@ MOD80_0222F300: ; 0x0222F300
add r6, r0, #0
add r0, r5, #0
lsr r1, r1, #0x18
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
str r3, [sp, #4]
@@ -4250,7 +4250,7 @@ MOD80_0222F6EC: ; 0x0222F6EC
ldr r0, [sp, #0x14]
add r0, r0, r1
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xf
str r0, [sp]
mov r0, #0xa
@@ -4303,7 +4303,7 @@ _0222F754:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r4, #8]
ldr r0, [r4, #0xc]
add r7, r7, #1
@@ -4573,7 +4573,7 @@ MOD80_0222F96C: ; 0x0222F96C
bic r3, r1
mov r1, #0x3e
strb r3, [r2, #0xb]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _0222F9FC ; =0x00000FC8
mov r2, #0x36
str r0, [r4, r1]
@@ -4581,14 +4581,14 @@ MOD80_0222F96C: ; 0x0222F96C
ldr r1, _0222FA00 ; =0x00000B34
mov r3, #1
ldr r1, [r4, r1]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _0222F9FC ; =0x00000FC8
ldr r1, _0222FA00 ; =0x00000B34
ldr r0, [r4, r0]
ldr r1, [r4, r1]
mov r2, #0x37
mov r3, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _0222F9FC ; =0x00000FC8
mov r2, #0x1f
ldr r1, [r4, r0]
@@ -4647,7 +4647,7 @@ _0222FA26:
bl FUN_02001C5C
ldr r0, _0222FADC ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _0222FAE0 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -4702,7 +4702,7 @@ _0222FAA4:
bl FUN_02001C5C
ldr r0, _0222FADC ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _0222FAE0 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -4805,7 +4805,7 @@ MOD80_0222FB3C: ; 0x0222FB3C
ldr r0, _0222FBB8 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _0222FBB8 ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -4912,7 +4912,7 @@ MOD80_0222FBC0: ; 0x0222FBC0
_0222FC64:
add r0, r5, #0
add r1, r7, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r4, #1
add r5, #0x10
cmp r4, #5
@@ -5506,7 +5506,7 @@ MOD80_02230128: ; 0x02230128
ldr r0, [sp, #0x14]
add r0, r0, r1
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xf
str r0, [sp]
mov r0, #0xa
@@ -5559,7 +5559,7 @@ _02230190:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, [r4, #8]
ldr r0, [r4, #0xc]
add r7, r7, #1
@@ -5983,7 +5983,7 @@ MOD80_022304F8: ; 0x022304F8
ldr r0, _02230548 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02230548 ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -6061,7 +6061,7 @@ MOD80_022305A8: ; 0x022305A8
add r5, r0, #0
add r7, r2, #0
add r4, r3, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
str r0, [sp]
ldr r0, _02230610 ; =0x000F0200
@@ -6113,7 +6113,7 @@ MOD80_02230614: ; 0x02230614
mov r1, #0
add r6, r0, #0
add r4, r2, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
cmp r5, #0
beq _0223063A
mov r2, #0
@@ -6516,7 +6516,7 @@ MOD80_02230944: ; 0x02230944
ldr r0, [sp, #0x14]
add r0, r0, r1
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0
mov r3, #0xb5
ldr r0, _02230A70 ; =0x000F0D00
@@ -6551,7 +6551,7 @@ MOD80_02230944: ; 0x02230944
ldr r0, [sp, #0x14]
add r0, r0, r1
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r1, _02230A78 ; =0x00000F08
ldr r0, [sp, #0x14]
ldr r4, _02230A7C ; =0x0223719C
@@ -6582,7 +6582,7 @@ _022309D2:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r7, r7, #1
add r6, #0x16
add r4, r4, #4
@@ -6624,7 +6624,7 @@ _02230A20:
ldr r0, [sp, #0x18]
mov r1, #0
add r0, r0, r7
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r5, r5, #1
add r6, #0x10
add r4, r4, #4
@@ -7524,7 +7524,7 @@ MOD80_0223113C: ; 0x0223113C
ldr r0, _022311BC ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #5
str r0, [sp]
mov r0, #0xa
@@ -7543,7 +7543,7 @@ MOD80_0223113C: ; 0x0223113C
ldr r0, _022311C4 ; =0x00000EE8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
add sp, #0x14
pop {r3, r4, pc}
@@ -7626,10 +7626,10 @@ _02231240:
add r1, r2, #6
ldr r0, [r4, r0]
add r2, r2, #4
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _022312B8 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _022312BC ; =0x000005DC
bl FUN_020054C8
mov r0, #6
@@ -7643,10 +7643,10 @@ _02231266:
add r1, r2, #6
ldr r0, [r4, r0]
add r2, r2, #4
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _022312B8 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _022312C0 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
@@ -7747,10 +7747,10 @@ _02231342:
ldr r0, [r4, r0]
add r1, #0xa
add r2, #8
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02231468 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _0223146C ; =0x00000EE8
mov r1, #0
add r0, r4, r0
@@ -7780,10 +7780,10 @@ _0223138C:
ldr r0, [r4, r0]
add r1, #0xa
add r2, #8
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02231468 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02231474 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
@@ -7807,7 +7807,7 @@ _0223138C:
ldr r0, _0223147C ; =0x00000F18
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
ldr r0, _02231480 ; =0x00010200
@@ -7847,7 +7847,7 @@ _0223138C:
ldr r0, _02231488 ; =0x00000F38
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
mov r0, #2
@@ -7913,7 +7913,7 @@ MOD80_02231490: ; 0x02231490
ldr r0, _022314E8 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
add sp, #0x14
pop {r3, r4, pc}
@@ -7980,10 +7980,10 @@ _0223154A:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _022315F4 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _022315F8 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -8005,10 +8005,10 @@ _0223158E:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _022315F4 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _022315F8 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -8025,7 +8025,7 @@ _0223158E:
mov r1, #0
add r0, r5, r0
str r1, [r5, #0x2c]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
mov r0, #2
@@ -8089,7 +8089,7 @@ MOD80_02231614: ; 0x02231614
ldr r0, _0223166C ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
add sp, #0x14
pop {r3, r4, pc}
@@ -8153,10 +8153,10 @@ _022316D0:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02231770 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02231774 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -8178,10 +8178,10 @@ _0223170C:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02231770 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02231774 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -8199,7 +8199,7 @@ _0223170C:
mov r1, #0
add r0, r5, r0
str r1, [r5, #0x2c]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp]
ldr r0, _02231788 ; =0x00010200
@@ -8377,7 +8377,7 @@ MOD80_0223187C: ; 0x0223187C
ldr r0, _022318CC ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _022318CC ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -9121,7 +9121,7 @@ MOD80_02231EA8: ; 0x02231EA8
ldr r0, _02231FDC ; =0x00000EB8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0
mov r1, #0xb5
ldr r0, _02231FE0 ; =0x000F0E00
@@ -9150,7 +9150,7 @@ MOD80_02231EA8: ; 0x02231EA8
ldr r0, _02231FE4 ; =0x00000EC8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02231FE4 ; =0x00000EC8
add r0, r4, r0
bl CopyWindowToVram
@@ -9172,7 +9172,7 @@ MOD80_02231EA8: ; 0x02231EA8
ldr r0, _02231FE8 ; =0x00000E98
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x13
str r0, [sp]
mov r0, #0x1b
@@ -9192,7 +9192,7 @@ MOD80_02231EA8: ; 0x02231EA8
ldr r0, _02231FF0 ; =0x00000FB8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x15
str r0, [sp]
mov r0, #6
@@ -9212,7 +9212,7 @@ MOD80_02231EA8: ; 0x02231EA8
ldr r0, _02231FF8 ; =0x00000EE8
mov r1, #6
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #1
ldr r0, _02231FFC ; =0x00010306
str r3, [sp]
@@ -9823,7 +9823,7 @@ MOD80_02232470: ; 0x02232470
bic r3, r1
mov r1, #0x3e
strb r3, [r2, #0xb]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02232510 ; =0x00000FC8
mov r2, #0x5e
str r0, [r4, r1]
@@ -9831,21 +9831,21 @@ MOD80_02232470: ; 0x02232470
ldr r1, _02232514 ; =0x00000B34
mov r3, #1
ldr r1, [r4, r1]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232510 ; =0x00000FC8
ldr r1, _02232514 ; =0x00000B34
ldr r0, [r4, r0]
ldr r1, [r4, r1]
mov r2, #0x5f
mov r3, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232510 ; =0x00000FC8
ldr r1, _02232514 ; =0x00000B34
ldr r0, [r4, r0]
ldr r1, [r4, r1]
mov r2, #0x60
mov r3, #3
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232510 ; =0x00000FC8
mov r2, #0x1f
ldr r1, [r4, r0]
@@ -9912,7 +9912,7 @@ _02232546:
bl FUN_02001C5C
ldr r0, _02232660 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232664 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -9932,7 +9932,7 @@ _02232574:
bl FUN_02001C5C
ldr r0, _02232660 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232664 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -10016,7 +10016,7 @@ _0223262E:
bl FUN_02001C5C
ldr r0, _02232660 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232664 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -10063,7 +10063,7 @@ MOD80_02232670: ; 0x02232670
bic r3, r1
mov r1, #0x3e
strb r3, [r2, #0xb]
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02232710 ; =0x00000FC8
mov r2, #0x54
str r0, [r4, r1]
@@ -10071,21 +10071,21 @@ MOD80_02232670: ; 0x02232670
ldr r1, _02232714 ; =0x00000B34
mov r3, #1
ldr r1, [r4, r1]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232710 ; =0x00000FC8
ldr r1, _02232714 ; =0x00000B34
ldr r0, [r4, r0]
ldr r1, [r4, r1]
mov r2, #0x55
mov r3, #2
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232710 ; =0x00000FC8
ldr r1, _02232714 ; =0x00000B34
ldr r0, [r4, r0]
ldr r1, [r4, r1]
mov r2, #0x56
mov r3, #3
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
ldr r0, _02232710 ; =0x00000FC8
mov r2, #0x1f
ldr r1, [r4, r0]
@@ -10152,7 +10152,7 @@ _02232746:
bl FUN_02001C5C
ldr r0, _0223283C ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232840 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -10172,7 +10172,7 @@ _02232774:
bl FUN_02001C5C
ldr r0, _0223283C ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232840 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -10239,7 +10239,7 @@ _0223280A:
bl FUN_02001C5C
ldr r0, _0223283C ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02232840 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -10679,7 +10679,7 @@ _02232B62:
add r4, r5, r0
add r0, r4, #0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r4, #0
mov r1, #0
mov r2, #1
@@ -11146,7 +11146,7 @@ _02232F22:
ldr r0, _02232F9C ; =0x00000EC8
mov r1, #0
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [sp]
ldr r0, _02232FA0 ; =0x00010200
@@ -11657,7 +11657,7 @@ MOD80_022332EC: ; 0x022332EC
ldr r0, _02233350 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02233350 ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -11908,7 +11908,7 @@ MOD80_02233500: ; 0x02233500
ldr r0, _022335CC ; =0x00000EB8
mov r1, #0
add r0, r7, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #0
mov r1, #0xb5
ldr r0, _022335D0 ; =0x000F0E00
@@ -11938,7 +11938,7 @@ MOD80_02233500: ; 0x02233500
ldr r0, _022335D4 ; =0x00000E98
mov r1, #0
add r0, r7, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0
str r0, [sp, #0x14]
ldr r0, _022335D8 ; =0x00000F08
@@ -11968,7 +11968,7 @@ _0223357E:
bl FUN_02019064
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
bl CopyWindowToVram
ldr r0, [sp, #0x14]
@@ -12158,7 +12158,7 @@ _02233714:
ldr r0, _02233778 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #5
str r0, [sp]
mov r0, #0xa
@@ -12177,7 +12177,7 @@ _02233714:
ldr r0, _02233780 ; =0x00000EE8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
str r0, [r4, #0x2c]
add sp, #0x14
@@ -12260,10 +12260,10 @@ _022337FA:
add r1, r2, #6
ldr r0, [r4, r0]
add r2, r2, #4
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _0223387C ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r0, #5
str r0, [r4, #0x2c]
ldr r0, _02233880 ; =0x000005DC
@@ -12277,10 +12277,10 @@ _02233820:
add r1, r2, #6
ldr r0, [r4, r0]
add r2, r2, #4
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _0223387C ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233884 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
@@ -12415,10 +12415,10 @@ _02233932:
ldr r0, [r4, r0]
add r1, #0xa
add r2, #8
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233A50 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233A54 ; =0x00000EE8
mov r1, #0
add r0, r4, r0
@@ -12454,10 +12454,10 @@ _0223398C:
ldr r0, [r4, r0]
add r1, #0xa
add r2, #8
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233A50 ; =0x00000FC8
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233A58 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
@@ -12577,7 +12577,7 @@ MOD80_02233A6C: ; 0x02233A6C
ldr r0, _02233AC4 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
add sp, #0x14
pop {r3, r4, pc}
@@ -12644,10 +12644,10 @@ _02233B26:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233BD0 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233BD4 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -12669,10 +12669,10 @@ _02233B6A:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233BD0 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233BD4 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -12752,7 +12752,7 @@ MOD80_02233BE8: ; 0x02233BE8
ldr r0, _02233C40 ; =0x00000ED8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #3
add sp, #0x14
pop {r3, r4, pc}
@@ -12816,10 +12816,10 @@ _02233CA4:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233D70 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233D74 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -12856,10 +12856,10 @@ _02233CFA:
mov r1, #0
ldr r0, [r5, r0]
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02233D70 ; =0x00000FC8
ldr r0, [r5, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
ldr r0, _02233D74 ; =0x00000ED8
mov r1, #0
add r0, r5, r0
@@ -13235,7 +13235,7 @@ MOD80_02233FB4: ; 0x02233FB4
_02233FE0:
add r0, r5, #0
add r1, r7, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r4, #1
add r5, #0x10
cmp r4, #3
@@ -13307,7 +13307,7 @@ MOD80_02234048: ; 0x02234048
_02234074:
add r0, r5, #0
add r1, r7, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r4, #1
add r5, #0x10
cmp r4, #3
@@ -13416,7 +13416,7 @@ _0223415A:
_0223415E:
add r0, r5, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r4, r4, #1
add r5, #0x10
cmp r4, #3
@@ -13680,7 +13680,7 @@ MOD80_02234370: ; 0x02234370
mov r1, #0x3e
str r2, [sp]
add r6, r3, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r5]
mov r4, #0
_02234388:
@@ -13689,7 +13689,7 @@ _02234388:
add r1, r6, #0
add r2, #0x68
add r3, r4, #1
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
cmp r4, #9
blt _02234388
@@ -13718,7 +13718,7 @@ _02234388:
ldrh r1, [r2, #6]
ldrh r2, [r2, #4]
mov r3, #0x3e
- bl FUN_020010A8
+ bl ListMenuInit
add sp, #0x24
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -13791,7 +13791,7 @@ _0223444A:
_02234456:
add r0, r6, #1
mov r1, #0x3e
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, [sp]
str r0, [r1]
mov r0, #0
@@ -13816,7 +13816,7 @@ _02234472:
ldr r1, [sp, #4]
ldr r0, [r0]
add r3, r2, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
b _022344B6
_02234494:
ldrh r1, [r5]
@@ -13833,7 +13833,7 @@ _02234494:
ldr r1, [sp, #4]
ldr r0, [r0]
add r3, r2, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
_022344B6:
ldr r0, [sp, #0x10]
add r5, r5, #2
@@ -13848,7 +13848,7 @@ _022344C2:
ldr r0, [r0]
ldr r1, [sp, #8]
sub r3, #0x77
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r0, r6, #1
add sp, #0x20
pop {r3, r4, r5, r6, r7, pc}
@@ -13867,7 +13867,7 @@ MOD80_022344DC: ; 0x022344DC
mov r1, #0xf
str r2, [sp, #0x10]
str r3, [sp, #0x14]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldrh r1, [r5, #6]
ldrh r0, [r5, #4]
ldr r2, [sp, #0x14]
@@ -13912,7 +13912,7 @@ MOD80_022344DC: ; 0x022344DC
ldrh r2, [r3, r2]
add r0, sp, #0x18
mov r3, #0x3e
- bl FUN_020010A8
+ bl ListMenuInit
add sp, #0x38
pop {r3, r4, r5, r6, r7, pc}
nop
@@ -13929,7 +13929,7 @@ MOD80_02234560: ; 0x02234560
mov r0, #4
mov r1, #0x3e
add r7, r2, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r5, _022345C8 ; =0x02237B64
str r0, [r6]
mov r4, #0
@@ -13938,7 +13938,7 @@ _02234578:
ldr r2, [r5]
ldr r3, [r5, #4]
add r1, r7, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
add r5, #8
cmp r4, #4
@@ -13968,7 +13968,7 @@ _02234578:
add r0, sp, #4
add r2, r1, #0
mov r3, #0x3e
- bl FUN_020010A8
+ bl ListMenuInit
add sp, #0x24
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -13985,7 +13985,7 @@ MOD80_022345D0: ; 0x022345D0
mov r0, #0xd
mov r1, #0x3e
add r7, r2, #0
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r5, _02234638 ; =0x02237494
str r0, [r6]
mov r4, #0
@@ -13994,7 +13994,7 @@ _022345E8:
ldr r2, [r5]
add r1, r7, #0
add r3, r4, #0
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r4, r4, #1
add r5, #8
cmp r4, #0xd
@@ -14024,7 +14024,7 @@ _022345E8:
add r0, sp, #4
add r2, r1, #0
mov r3, #0x3e
- bl FUN_020010A8
+ bl ListMenuInit
add sp, #0x24
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -14089,11 +14089,11 @@ MOD80_02234698: ; 0x02234698
sub sp, #4
add r5, r0, #0
add r4, r1, #0
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r6, r0, #0
add r0, r5, #0
add r1, sp, #0
- bl FUN_0200143C
+ bl ListMenuGetCurrentItemArrayId
add r0, sp, #0
ldrh r1, [r4]
ldrh r0, [r0]
@@ -14449,7 +14449,7 @@ MOD80_02234958: ; 0x02234958
ldr r0, _02234990 ; =0x00000E98
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r3, r4, pc}
nop
@@ -18128,7 +18128,7 @@ MOD80_02236580: ; 0x02236580
ldr r0, _02236628 ; =0x00000EC8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [sp]
mov r0, #0x18
@@ -18149,7 +18149,7 @@ MOD80_02236580: ; 0x02236580
ldr r0, _0223662C ; =0x00000EB8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #1
mov r1, #0xb5
ldr r0, _02236630 ; =0x000F0E00
@@ -18180,7 +18180,7 @@ MOD80_02236580: ; 0x02236580
ldr r0, _02236634 ; =0x00000E98
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r3, r4, pc}
nop
@@ -19051,7 +19051,7 @@ MOD80_02236C70: ; 0x02236C70
ldr r0, _02236CD8 ; =0x00000E98
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02236CD8 ; =0x00000E98
mov r1, #0
add r0, r5, r0
@@ -19206,7 +19206,7 @@ MOD80_02236D8C: ; 0x02236D8C
ldr r0, _02236DFC ; =0x00000EC8
mov r1, #0xf
add r0, r5, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02236DFC ; =0x00000EC8
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 94767f70..63312258 100644
--- a/arm9/modules/81/asm/module_81.s
+++ b/arm9/modules/81/asm/module_81.s
@@ -2229,7 +2229,7 @@ MOD81_02238E44: ; 0x02238E44
add r0, r4, #0
add r0, #0x44
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x20
str r3, [sp]
mov r0, #0x3a
@@ -2527,7 +2527,7 @@ _0223918A:
add r0, r4, #0
add r0, #0x44
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
mov r0, #0xff
@@ -9281,7 +9281,7 @@ MOD81_0223C658: ; 0x0223C658
add r0, r4, #0
add r0, #0x48
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0x20
str r3, [sp]
mov r0, #0x3a
@@ -9640,7 +9640,7 @@ _0223C9D0:
add r0, r4, #0
add r0, #0x48
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #0
str r3, [sp]
mov r0, #0xff
diff --git a/arm9/modules/82/asm/module_82.s b/arm9/modules/82/asm/module_82.s
index b9d0df31..6af5c444 100644
--- a/arm9/modules/82/asm/module_82.s
+++ b/arm9/modules/82/asm/module_82.s
@@ -1744,7 +1744,7 @@ MOD82_0222E35C: ; 0x0222E35C
lsl r0, r0, #6
add r0, r4, r0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xe
str r0, [sp]
mov r0, #4
@@ -1766,7 +1766,7 @@ MOD82_0222E35C: ; 0x0222E35C
lsl r0, r0, #4
add r0, r4, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0xe
str r0, [sp]
mov r0, #4
@@ -1788,7 +1788,7 @@ MOD82_0222E35C: ; 0x0222E35C
lsl r0, r0, #4
add r0, r4, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r2, #1
mov r1, #0xdb
lsl r1, r1, #4
@@ -1810,7 +1810,7 @@ MOD82_0222E35C: ; 0x0222E35C
lsl r0, r0, #4
add r0, r4, r0
mov r1, #6
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #1
ldr r0, _0222E46C ; =0x00010406
str r3, [sp]
@@ -1842,7 +1842,7 @@ MOD82_0222E35C: ; 0x0222E35C
lsl r0, r0, #6
add r0, r4, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add sp, #0x14
pop {r3, r4, pc}
nop
@@ -4037,7 +4037,7 @@ MOD82_0222F4D8: ; 0x0222F4D8
lsl r0, r0, #6
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x36
lsl r0, r0, #6
add r0, r5, r0
@@ -4132,7 +4132,7 @@ MOD82_0222F59C: ; 0x0222F59C
lsl r0, r0, #6
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x36
lsl r0, r0, #6
add r0, r5, r0
@@ -4258,7 +4258,7 @@ MOD82_0222F694: ; 0x0222F694
add r5, r0, #0
add r6, r2, #0
add r7, r3, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #1
str r0, [sp]
add r0, r4, #0
@@ -4375,7 +4375,7 @@ MOD82_0222F740: ; 0x0222F740
lsl r0, r0, #6
add r0, r5, r0
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r0, #0x37
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 7e36aa68..233b529a 100644
--- a/arm9/modules/83/asm/module_83.s
+++ b/arm9/modules/83/asm/module_83.s
@@ -434,10 +434,10 @@ _0222D8B2:
bl FUN_0201AB18
add r7, r0, #0
ldr r0, [sp, #0x1c]
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r5, r0, #0
ldr r0, [sp, #0x1c]
- bl FUN_0201AB10
+ bl GetWindowHeight
str r5, [sp]
str r0, [sp, #4]
mov r0, #0
@@ -901,14 +901,14 @@ MOD83_0222DCA0: ; 0x0222DCA0
add r5, r0, #0
mov r0, #0
mov r1, #2
- bl FUN_02002E4C
+ bl GetFontAttribute
add r2, r0, #0
mov r0, #0
add r1, r5, #0
bl FUN_02002E14
add r4, r0, #0
add r0, r6, #0
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
add r4, #0x20
sub r3, r0, r4
@@ -1601,10 +1601,10 @@ _0222E206:
bl FUN_0201AB18
str r0, [sp, #0x14]
add r0, r5, #0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0
add r0, r5, #0
- bl FUN_0201AB10
+ bl GetWindowHeight
str r7, [sp]
str r0, [sp, #4]
mov r0, #0
@@ -1628,10 +1628,10 @@ _0222E256:
bl FUN_0201AB18
str r0, [sp, #0x1c]
add r0, r5, #0
- bl FUN_0201AB0C
+ bl GetWindowWidth
add r7, r0, #0
add r0, r5, #0
- bl FUN_0201AB10
+ bl GetWindowHeight
str r7, [sp]
str r0, [sp, #4]
mov r0, #1
@@ -1707,7 +1707,7 @@ MOD83_0222E2E4: ; 0x0222E2E4
add r1, #0x5c
lsl r0, r0, #4
add r0, r1, r0
- bl FUN_0201AB10
+ bl GetWindowHeight
add r0, r0, #2
lsl r3, r0, #3
mov r0, #0x42
@@ -1769,7 +1769,7 @@ _0222E362:
sub r0, r0, #1
lsl r4, r0, #3
add r0, r5, #0
- bl FUN_0201AB10
+ bl GetWindowHeight
cmp r7, r4
ble _0222E384
mov r0, #1
@@ -2926,7 +2926,7 @@ MOD83_0222EC78: ; 0x0222EC78
add r1, #0xf8
str r0, [r1]
mov r1, #1
- bl FUN_02002E4C
+ bl GetFontAttribute
add r2, r0, #0
add r0, r5, #0
add r0, #0xf0
@@ -4538,7 +4538,7 @@ MOD83_0222F9DC: ; 0x0222F9DC
ldr r1, _0222F9F4 ; =MOD83_0223B884
mov r0, #0xf
ldr r1, [r1]
- bl FUN_02016A8C
+ bl FreeToHeapExplicit
ldr r0, _0222F9F4 ; =MOD83_0223B884
mov r1, #0
str r1, [r0]
@@ -4609,14 +4609,14 @@ MOD83_0222FA4C: ; 0x0222FA4C
ldr r0, [r7, #0x7c]
cmp r0, #0
beq _0222FA62
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
_0222FA62:
ldr r0, [r7, #0x78]
cmp r0, #0
beq _0222FA70
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
_0222FA70:
add r0, r7, #0
add r0, #0x18
@@ -5812,11 +5812,11 @@ MOD83_022303B0: ; 0x022303B0
ldr r0, [r4, #0x7c]
cmp r0, #0
beq _022303CC
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
_022303CC:
add r0, r7, #0
mov r1, #0x56
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
str r0, [r4, #0x7c]
ldr r2, _0223045C ; =0x00000172
mov r0, #0
@@ -5832,7 +5832,7 @@ _022303EA:
ldr r1, [r4, #0x10]
ldr r2, [r5]
ldr r3, [r5, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r5, #8
cmp r6, r7
@@ -5863,13 +5863,13 @@ _022303FE:
beq _02230436
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
_02230436:
mov r1, #0
add r0, sp, #8
add r2, r1, #0
mov r3, #0x56
- bl FUN_020010A8
+ bl ListMenuInit
str r0, [r4, #0x78]
mov r0, #0
ldr r2, [sp, #0x40]
@@ -5990,10 +5990,10 @@ MOD83_0223050C: ; 0x0223050C
str r0, [r4, #0xc]
mov r0, #1
mov r1, #6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0
add r0, r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r6, [r4, #0x14]
cmp r6, #0
bne _02230554
@@ -6056,10 +6056,10 @@ MOD83_022305A4: ; 0x022305A4
bl CopyU16ArrayToStringN
mov r0, #0
mov r1, #6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0
add r0, r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -6092,7 +6092,7 @@ MOD83_02230604: ; 0x02230604
add r6, r2, #0
bl OverlayManager_GetData
ldr r0, [r0, #0x78]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
mov r0, #1
mvn r0, r0
@@ -8142,7 +8142,7 @@ MOD83_022316F0: ; 0x022316F0
str r3, [sp]
cmp r0, #0
beq _02231708
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
_02231708:
ldr r0, _02231798 ; =0x00002B68
ldr r0, [r5, r0]
@@ -8150,11 +8150,11 @@ _02231708:
beq _02231718
mov r1, #0
add r2, r1, #0
- bl FUN_02001300
+ bl DestroyListMenu
_02231718:
add r0, r7, #0
mov r1, #0x57
- bl ListMenu_ctor
+ bl ListMenuItems_ctor
ldr r1, _02231794 ; =0x00002B6C
ldr r2, _0223179C ; =0x00000172
str r0, [r5, r1]
@@ -8174,7 +8174,7 @@ _0223173A:
ldr r1, [r5, r1]
ldr r2, [r4]
ldr r3, [r4, #4]
- bl ListMenu_ItemFromMsgData
+ bl ListMenuItems_AppendFromMsgData
add r6, r6, #1
add r4, #8
cmp r6, r7
@@ -8205,7 +8205,7 @@ _02231752:
str r0, [sp, #0x10]
add r0, r2, #0
add r2, r1, #0
- bl FUN_020010A8
+ bl ListMenuInit
ldr r1, _02231798 ; =0x00002B68
str r0, [r5, r1]
add sp, #0x24
@@ -8235,10 +8235,10 @@ MOD83_022317A8: ; 0x022317A8
add r6, r0, #0
mov r0, #1
mov r1, #6
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0
add r0, r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r6, #0
add r1, r4, #0
add r2, r7, #0
@@ -8503,14 +8503,14 @@ MOD83_02231A00: ; 0x02231A00
add r4, r0, #0
ldr r0, _02231A40 ; =0x00002B6C
ldr r0, [r4, r0]
- bl ListMenu_dtor
+ bl ListMenuItems_dtor
mov r1, #0
ldr r0, _02231A40 ; =0x00002B6C
add r2, r1, #0
str r1, [r4, r0]
sub r0, r0, #4
ldr r0, [r4, r0]
- bl FUN_02001300
+ bl DestroyListMenu
ldr r0, _02231A44 ; =0x00002B68
mov r1, #0
str r1, [r4, r0]
@@ -9122,10 +9122,10 @@ _02231EBE:
lsl r1, r1, #0x18
lsr r0, r0, #0x18
lsr r1, r1, #0x18
- bl FUN_02002E4C
+ bl GetFontAttribute
add r1, r0, #0
add r0, r6, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x18]
ldr r3, [r4, #0x24]
str r0, [sp, #0x28]
@@ -9249,7 +9249,7 @@ _02231FD2:
add r0, r6, #0
lsl r1, r1, #0x18
lsr r1, r1, #0x18
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x20]
cmp r0, #0
beq _02231FFE
@@ -9529,7 +9529,7 @@ MOD83_02232208: ; 0x02232208
bl OverlayManager_GetData
ldr r1, _02232270 ; =0x00002B68
ldr r0, [r0, r1]
- bl FUN_02001204
+ bl ListMenu_ProcessInput
add r4, r0, #0
mov r0, #1
mvn r0, r0
@@ -10694,7 +10694,7 @@ _02232B94:
ldr r0, _02232D1C ; =0x00002AA8
mov r1, #0
add r0, r4, r0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _02232D1C ; =0x00002AA8
add r0, r4, r0
bl CopyWindowToVram
@@ -11088,7 +11088,7 @@ _02232E7E:
mov r5, #0
ldr r0, [sp, #0x10]
add r1, r5, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, #0
str r0, [sp, #0x14]
cmp r6, #0
@@ -11230,7 +11230,7 @@ MOD83_02232FE4: ; 0x02232FE4
str r0, [r5, r1]
add r0, r4, #0
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r3, #1
str r3, [sp]
ldr r0, _0223307C ; =0x000029A0
@@ -15511,7 +15511,7 @@ _02234F7A:
ldr r0, [r5]
lsl r1, r1, #0x18
lsr r1, r1, #0x18
- bl FUN_02019620
+ bl FillWindowPixelBuffer
_02234F8C:
mov r0, #0
ldr r1, [r5, #0x34]
@@ -18576,7 +18576,7 @@ MOD83_02236804: ; 0x02236804
bl CTRDG_IsPulledOut
cmp r0, #1
beq _02236822
- ldr r0, _02236B3C ; =gBacklightTop + 4
+ ldr r0, _02236B3C ; =UNK_02016FA4
ldr r0, [r0]
cmp r0, #0
beq _02236828
@@ -18966,7 +18966,7 @@ _02236B2E:
str r0, [r5]
b _02236D90
.align 2, 0
-_02236B3C: .word gBacklightTop + 4
+_02236B3C: .word UNK_02016FA4
_02236B40: .word 0x000004A8
_02236B44: .word 0x000004AC
_02236B48: .word 0x0000E880
@@ -23084,7 +23084,7 @@ MOD83_0223894C: ; 0x0223894C
add r1, #0x48
ldrb r1, [r1]
ldr r0, [r5, #0x10]
- bl FUN_02019620
+ bl FillWindowPixelBuffer
_02238976:
mov r0, #0
ldr r1, [r5, #0x4c]
@@ -23133,14 +23133,14 @@ _022389D0:
mov r1, #2
lsl r0, r0, #0x18
lsr r0, r0, #0x18
- bl FUN_02002E4C
+ bl GetFontAttribute
add r2, r0, #0
ldr r0, [r5, #0x40]
add r1, r4, #0
bl FUN_02002E14
add r7, r0, #0
ldr r0, [r5, #0x10]
- bl FUN_0201AB0C
+ bl GetWindowWidth
lsl r0, r0, #3
sub r3, r0, r7
ldr r0, [r5, #0x24]
diff --git a/arm9/modules/84/asm/module_84_thumb2.s b/arm9/modules/84/asm/module_84_thumb2.s
index 66e7a196..82d292c6 100644
--- a/arm9/modules/84/asm/module_84_thumb2.s
+++ b/arm9/modules/84/asm/module_84_thumb2.s
@@ -559,7 +559,7 @@ MOD84_021D84F8: ; 0x021D84F8
str r0, [r4, #0x30]
mov r0, #0x4b
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4, #0x24]
mov r3, #0
lsl r2, r5, #0x18
@@ -577,14 +577,14 @@ MOD84_021D84F8: ; 0x021D84F8
bl FUN_02019064
ldr r0, [r4, #0x24]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, [r4, #0x24]
bl FUN_02019270
ldr r0, [r4, #0x24]
bl CopyWindowToVram
mov r0, #0x4b
mov r1, #1
- bl FUN_02018FF4
+ bl AllocWindows
str r0, [r4, #0x28]
mov r3, #0
lsl r2, r5, #0x18
@@ -712,7 +712,7 @@ _021D864C:
ble _021D86D0
ldr r0, [r5, #0x28]
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
mov r1, #0
str r1, [sp]
mov r0, #0xff
@@ -750,7 +750,7 @@ _021D864C:
ldr r0, [r5, #0x24]
ldr r1, [r1, #0xc]
lsr r3, r3, #0x10
- bl FUN_02019658
+ bl BlitBitmapRectToWindow
_021D86D0:
mov r1, #1
str r1, [r5, #0x18]
@@ -786,7 +786,7 @@ _021D86E0:
ldr r0, [r5, #0x24]
add r2, r1, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
b _021D8754
_021D8718:
add r1, r3, #0
@@ -803,7 +803,7 @@ _021D8718:
ldr r0, [r5, #0x24]
add r2, r1, #0
lsr r3, r3, #0x10
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #0
mov r0, #1
lsl r0, r0, #8
@@ -816,7 +816,7 @@ _021D8718:
ldr r0, [r5, #0x24]
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
_021D8754:
mov r0, #1
str r0, [r5, #0x18]
@@ -880,7 +880,7 @@ MOD84_021D87B0: ; 0x021D87B0
beq _021D87CE
ldr r0, [r5, #0x24]
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r4, _021D8814 ; =0x0001020F
b _021D87D0
_021D87CE:
diff --git a/arm9/modules/85/asm/module_85.s b/arm9/modules/85/asm/module_85.s
index adb49508..a7798340 100644
--- a/arm9/modules/85/asm/module_85.s
+++ b/arm9/modules/85/asm/module_85.s
@@ -847,7 +847,7 @@ MOD85_021D7BEC: ; 0x021D7BEC
add r0, r4, #0
add r0, #8
mov r1, #0xf
- bl FUN_02019620
+ bl FillWindowPixelBuffer
ldr r0, _021D7C40 ; =0x00000408
ldr r2, [r4, #0x18]
ldr r0, [r5, r0]
@@ -884,7 +884,7 @@ MOD85_021D7C44: ; 0x021D7C44
add r0, r5, r4
add r0, #8
mov r1, #0
- bl FUN_02019620
+ bl FillWindowPixelBuffer
add r0, r5, r4
add r0, #8
bl FUN_02019220
diff --git a/arm9/modules/86/asm/module_86.s b/arm9/modules/86/asm/module_86.s
index 08651acb..db86339d 100644
--- a/arm9/modules/86/asm/module_86.s
+++ b/arm9/modules/86/asm/module_86.s
@@ -504,7 +504,7 @@ MOD86_021D78D4: ; 0x021D78D4
add r0, #0x14
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
mov r1, #4
add r0, sp, #8
strb r1, [r0]
@@ -523,7 +523,7 @@ MOD86_021D78D4: ; 0x021D78D4
add r0, r4, #0
add r2, r1, #0
add r3, r1, #0
- bl FUN_020196F4
+ bl FillWindowPixelRect
add sp, #0x10
pop {r4, pc}
.align 2, 0
diff --git a/arm9/src/error_message_reset.c b/arm9/src/error_message_reset.c
index f70fec0f..426ba876 100644
--- a/arm9/src/error_message_reset.c
+++ b/arm9/src/error_message_reset.c
@@ -20,18 +20,17 @@ u32 sErrorMessagePrinterLock;
extern void FUN_0200E3A0(PMLCDTarget, int);
extern u32 *FUN_02016B94(u32 param0);
extern void FUN_02016BBC(const struct GraphicsModes *modes);
-extern void FUN_02016C18(u32 *param0, u32 param1, void *param2, u32 param3);
+extern void FUN_02016C18(u32 *param0, struct Window * param1, const u32 *param2, u32 param3);
extern void FUN_02018744(u32 *param0, u32 param1);
extern void FUN_0200CB00(u32 *param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5);
extern void FUN_02002ED0(u32 param0, u32 param1, u32 param2);
extern void FUN_02017F18(u32 param0, u32 param1, u32 param2, u32 param3);
extern void FUN_02017FE4(u32 param0, u32 param1);
-extern void FUN_02019150(u32 *param0, u32 *param1, const u32 *param2);
-extern void FUN_020196F4(u32 *, u8, u16, u16, u16, u16);
-extern void FUN_0200CCA4(u32 *param0, u32 param1, u32 param2, u32 param3);
+extern void FUN_02019150(u32 *param0, struct Window *param1, const u32 *param2);
+extern void FUN_0200CCA4(struct Window *param0, u32 param1, u32 param2, u32 param3);
extern void FUN_0200E394(u32 param0);
extern void FUN_0200A274(u32 param0, u32 param1, u32 param2);
-extern void FUN_02019178(u32 *param0);
+extern void FUN_02019178(struct Window *param0);
THUMB_FUNC void VBlankHandler()
{
@@ -44,7 +43,7 @@ THUMB_FUNC void PrintErrorMessageAndReset()
{
u32 *ptr;
- u32 buf[4];
+ struct Window buf;
if (sErrorMessagePrinterLock != 1)
{
@@ -97,13 +96,13 @@ THUMB_FUNC void PrintErrorMessageAndReset()
struct String *str = String_ctor(6 << 6, 0);
FUN_0201BD5C();
- FUN_02019150(ptr, buf, UNK_020FF49C);
- FUN_020196F4(buf, 15, 0, 0, 0xd0, 0x90);
- FUN_0200CCA4(buf, 0, 0x1f7, 2);
+ FUN_02019150(ptr, &buf, UNK_020FF49C);
+ FillWindowPixelRect(&buf, 15, 0, 0, 0xd0, 0x90);
+ FUN_0200CCA4(&buf, 0, 0x1f7, 2);
ReadMsgDataIntoString(msg_data, 3, str);
- AddTextPrinterParameterized((u32)buf, 0, (const u16 *)str, 0, 0, 0, NULL); // wtf
+ AddTextPrinterParameterized(&buf, 0, (const u16 *)str, 0, 0, 0, NULL); // wtf
String_dtor(str);
GX_BothDispOn();
@@ -133,7 +132,7 @@ THUMB_FUNC void PrintErrorMessageAndReset()
FUN_0200E3A0(PM_LCD_TOP, 0x7FFF);
FUN_0200E3A0(PM_LCD_BOTTOM, 0x7FFF);
- FUN_02019178(buf);
+ FUN_02019178(&buf);
DestroyMsgData(msg_data);
FreeToHeap(ptr);
diff --git a/arm9/src/game_init.c b/arm9/src/game_init.c
index a7508fab..f52a6659 100644
--- a/arm9/src/game_init.c
+++ b/arm9/src/game_init.c
@@ -203,7 +203,7 @@ void * FUN_020161A4(u32 heap_id, const char * path)
{
if (size != FS_ReadFile(&file, ret, (s32)size))
{
- FUN_02016A8C(heap_id, ret);
+ FreeToHeapExplicit(heap_id, ret);
ret = NULL;
}
}
@@ -344,8 +344,8 @@ void FUN_020163BC(void)
gMain.unk3C = 0;
gMain.unk40 = 0;
gMain.unk44 = 0;
- gMain.unk48 = 0;
- gMain.unk4C = 0;
+ gMain.newKeys = 0;
+ gMain.newAndRepeatedKeys = 0;
gMain.unk50 = 0;
gMain.unk54 = 8;
gMain.unk58 = 15;
@@ -387,9 +387,9 @@ void FUN_02016464(void)
TPData raw, calib;
if (PAD_DetectFold())
{
- gMain.unk48 = 0;
+ gMain.newKeys = 0;
gMain.unk44 = 0;
- gMain.unk4C = 0;
+ gMain.newAndRepeatedKeys = 0;
gMain.unk60 = 0;
gMain.unk62 = 0;
return;
@@ -409,9 +409,9 @@ void FUN_02016464(void)
gMain.unk50 = gMain.unk58;
}
gMain.unk38 = r0;
- gMain.unk48 = gMain.unk3C;
+ gMain.newKeys = gMain.unk3C;
gMain.unk44 = r0;
- gMain.unk4C = gMain.unk40;
+ gMain.newAndRepeatedKeys = gMain.unk40;
FUN_02016568();
if (gMain.unk64 == 0)
{
@@ -453,26 +453,26 @@ void FUN_02016568(void)
case 0: // Normal
break;
case 1: // Start = X
- if (gMain.unk48 & PAD_BUTTON_START)
- gMain.unk48 |= PAD_BUTTON_X;
+ if (gMain.newKeys & PAD_BUTTON_START)
+ gMain.newKeys |= 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;
+ if (gMain.newAndRepeatedKeys & PAD_BUTTON_START)
+ gMain.newAndRepeatedKeys |= PAD_BUTTON_X;
break;
case 2: // Swap X and Y; unused in the retail game
{
u32 r1 = 0;
- if (gMain.unk48 & PAD_BUTTON_X)
+ if (gMain.newKeys & PAD_BUTTON_X)
{
r1 |= PAD_BUTTON_Y;
}
- if (gMain.unk48 & PAD_BUTTON_Y)
+ if (gMain.newKeys & PAD_BUTTON_Y)
{
r1 |= PAD_BUTTON_X;
}
- gMain.unk48 &= 0xF3FF;
- gMain.unk48 |= r1;
+ gMain.newKeys &= 0xF3FF;
+ gMain.newKeys |= r1;
}
{
u32 r1 = 0;
@@ -489,28 +489,28 @@ void FUN_02016568(void)
}
{
u32 r1 = 0;
- if (gMain.unk4C & PAD_BUTTON_X)
+ if (gMain.newAndRepeatedKeys & PAD_BUTTON_X)
{
r1 |= PAD_BUTTON_Y;
}
- if (gMain.unk4C & PAD_BUTTON_Y)
+ if (gMain.newAndRepeatedKeys & PAD_BUTTON_Y)
{
r1 |= PAD_BUTTON_X;
}
- gMain.unk4C &= 0xF3FF;
- gMain.unk4C |= r1;
+ gMain.newAndRepeatedKeys &= 0xF3FF;
+ gMain.newAndRepeatedKeys |= r1;
}
break;
case 3: // L = A
- if (gMain.unk48 & PAD_BUTTON_L)
- gMain.unk48 |= PAD_BUTTON_A;
+ if (gMain.newKeys & PAD_BUTTON_L)
+ gMain.newKeys |= 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;
+ if (gMain.newAndRepeatedKeys & PAD_BUTTON_L)
+ gMain.newAndRepeatedKeys |= PAD_BUTTON_A;
+ gMain.newKeys &= 0xFCFF;
gMain.unk44 &= 0xFCFF;
- gMain.unk4C &= 0xFCFF;
+ gMain.newAndRepeatedKeys &= 0xFCFF;
}
}
diff --git a/arm9/src/heap.c b/arm9/src/heap.c
index 895ce808..f28b4f88 100644
--- a/arm9/src/heap.c
+++ b/arm9/src/heap.c
@@ -309,7 +309,7 @@ void FreeToHeap(void *ptr)
ErrorHandling();
}
-void FUN_02016A8C(u32 param0, void *param1)
+void FreeToHeapExplicit(u32 param0, void *param1)
{
GF_ASSERT (OS_GetProcMode() != OS_PROCMODE_IRQ);
diff --git a/arm9/src/itemtool.c b/arm9/src/itemtool.c
index 6b892d6d..9982ff40 100644
--- a/arm9/src/itemtool.c
+++ b/arm9/src/itemtool.c
@@ -778,7 +778,7 @@ u32 GetItemAttr(u16 item, u32 attr, u32 heap_id)
u32 ret;
struct ItemData * itemData = (struct ItemData *)LoadItemDataOrGfx(item, 0, heap_id);
ret = GetItemAttr_PreloadedItemData(itemData, attr);
- FUN_02016A8C(heap_id, itemData);
+ FreeToHeapExplicit(heap_id, itemData);
return ret;
}
diff --git a/arm9/src/list_menu.c b/arm9/src/list_menu.c
new file mode 100644
index 00000000..5ae5a5b4
--- /dev/null
+++ b/arm9/src/list_menu.c
@@ -0,0 +1,572 @@
+#include "global.h"
+#include "heap.h"
+#include "main.h"
+#include "list_menu.h"
+#include "text.h"
+
+void ListMenuPrintEntries(struct ListMenu * list, u16 startIndex, u16 yOffset, u16 count);
+void ListMenuDrawCursor(struct ListMenu * list);
+BOOL ListMenuChangeSelection(struct ListMenu * list, u8 updateCursorAndCallCallback, u8 count, u8 movingDown);
+void ListMenuCallSelectionChangedCallback(struct ListMenu * list, u8 onInit);
+
+static inline u32 MakeFontColor(u32 fgPal, u32 shdwPal, u32 bgPal)
+{
+ return (u32)(
+ ((u32)(fgPal << 24) >> 8)
+ | ((u32)(shdwPal << 24) >> 16)
+ | ((u32)(bgPal << 24) >> 24)
+ );
+}
+
+THUMB_FUNC struct ListMenu * ListMenuInit(const struct ListMenuTemplate * template, u16 cursorPos, u16 itemsAbove, u32 heap_id)
+{
+ struct ListMenu * list = AllocFromHeap(heap_id, sizeof(struct ListMenu));
+ list->template = *template;
+ list->cursor = ListMenuCursorNew(heap_id);
+ list->cursorPos = cursorPos;
+ list->itemsAbove = itemsAbove;
+ list->unk_30 = 0;
+ list->unk_31 = 0;
+ list->taskId = 0xFF;
+ list->unk_33 = 0;
+ list->heap_id = (u8)heap_id;
+ list->cursorPal = list->template.cursorPal;
+ list->fillValue = list->template.fillValue;
+ list->cursorShadowPal = list->template.cursorShadowPal;
+ list->lettersSpacing = list->template.lettersSpacing;
+ list->fontId = list->template.fontId;
+ list->overrideEnabled = FALSE;
+ if (list->template.totalItems < list->template.maxShowed)
+ list->template.maxShowed = list->template.totalItems;
+ ListMenuCursorSetColor(
+ list->cursor,
+// MakeFontColor(list->template.cursorPal, list->template.cursorShadowPal, list->fillValue)
+ (u32)(
+ ((u32)(list->template.cursorPal << 24) >> 8)
+ | ((u32)(list->template.cursorShadowPal << 24) >> 16)
+ | ((u32)(list->template.fillValue << 24) >> 24)
+ )
+ );
+ FillWindowPixelBuffer(list->template.window, list->template.fillValue);
+ ListMenuPrintEntries(list, list->cursorPos, 0, list->template.maxShowed);
+ ListMenuDrawCursor(list);
+ ListMenuCallSelectionChangedCallback(list, TRUE);
+ CopyWindowToVram(template->window);
+ return list;
+}
+
+THUMB_FUNC s32 ListMenu_ProcessInput(struct ListMenu * list)
+{
+ list->unk_33 = 0;
+
+ if (gMain.newKeys & REG_PAD_KEYINPUT_A_MASK) {
+ return list->template.items[list->cursorPos + list->itemsAbove].index;
+ }
+ else if (gMain.newKeys & REG_PAD_KEYINPUT_B_MASK) {
+ return LIST_CANCEL;
+ }
+ else if (gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_UP_MASK) {
+ if (!ListMenuChangeSelection(list, TRUE, 1, FALSE))
+ list->unk_33 = 1;
+ return LIST_NOTHING_CHOSEN;
+ }
+ else if (gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_DOWN_MASK) {
+ if (!ListMenuChangeSelection(list, TRUE, 1, TRUE))
+ list->unk_33 = 2;
+ return LIST_NOTHING_CHOSEN;
+ }
+ else
+ {
+ u16 rightButton, leftButton;
+ switch (list->template.scrollMultiple)
+ {
+ case LIST_NO_MULTIPLE_SCROLL:
+ default:
+ leftButton = FALSE;
+ rightButton = FALSE;
+ break;
+ case LIST_MULTIPLE_SCROLL_DPAD:
+ leftButton = gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_LEFT_MASK;
+ rightButton = gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_RIGHT_MASK;
+ break;
+ case LIST_MULTIPLE_SCROLL_L_R:
+ leftButton = gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_L_MASK;
+ rightButton = gMain.newAndRepeatedKeys & REG_PAD_KEYINPUT_R_MASK;
+ break;
+ }
+ if (leftButton)
+ {
+ if (!ListMenuChangeSelection(list, TRUE, list->template.maxShowed, FALSE))
+ list->unk_33 = 3;
+ return LIST_NOTHING_CHOSEN;
+ }
+ else if (rightButton)
+ {
+ if (!ListMenuChangeSelection(list, TRUE, list->template.maxShowed, TRUE))
+ list->unk_33 = 4;
+ return LIST_NOTHING_CHOSEN;
+ }
+ else
+ {
+ return LIST_NOTHING_CHOSEN;
+ }
+ }
+}
+
+THUMB_FUNC void DestroyListMenu(struct ListMenu * list, u16 * cursorPos, u16 * itemsAbove)
+{
+ if (cursorPos != NULL)
+ *cursorPos = list->cursorPos;
+ if (itemsAbove != NULL)
+ *itemsAbove = list->itemsAbove;
+ DestroyListMenuCursorObj(list->cursor);
+ FreeToHeapExplicit(list->heap_id, list);
+}
+
+THUMB_FUNC void RedrawListMenu(struct ListMenu * list)
+{
+ FillWindowPixelBuffer(list->template.window, list->template.fillValue);
+ ListMenuPrintEntries(list, list->cursorPos, 0, list->template.maxShowed);
+ ListMenuDrawCursor(list);
+ CopyWindowToVram(list->template.window);
+}
+
+THUMB_FUNC s32 ListMenuTestInputInternal(struct ListMenu * list, const struct ListMenuTemplate * template, u16 cursorPos, u16 itemsAbove, u16 updateFlag, u16 input, u16 *newCursorPos, u16 *newItemsAbove)
+{
+ if (template != NULL)
+ list->template = *template;
+ list->cursorPos = cursorPos;
+ list->itemsAbove = itemsAbove;
+ list->unk_30 = 0;
+ list->unk_31 = 0;
+
+ if (input == REG_PAD_KEYINPUT_UP_MASK)
+ {
+ ListMenuChangeSelection(list, updateFlag, 1, FALSE);
+ }
+ else if (input == REG_PAD_KEYINPUT_DOWN_MASK)
+ {
+ ListMenuChangeSelection(list, updateFlag, 1, TRUE);
+ }
+ if (newCursorPos != NULL)
+ {
+ *newCursorPos = list->cursorPos;
+ }
+ if (newItemsAbove != NULL)
+ {
+ *newItemsAbove = list->itemsAbove;
+ }
+ return -1;
+}
+
+THUMB_FUNC s32 ListMenuTestInput(struct ListMenu * list, const struct ListMenuTemplate * template, u16 cursorPos, u16 itemsAbove, u16 input, u16 *newCursorPos, u16 *newItemsAbove)
+{
+ return ListMenuTestInputInternal(list, template, cursorPos, itemsAbove, FALSE, input, newCursorPos, newItemsAbove);
+}
+
+THUMB_FUNC void ListMenuOverrideSetColors(struct ListMenu * list, u8 cursorPal, u8 fillValue, u8 cursorShadowPal)
+{
+ list->cursorPal = cursorPal;
+ list->fillValue = fillValue;
+ list->cursorShadowPal = cursorShadowPal;
+ list->overrideEnabled = TRUE;
+}
+
+THUMB_FUNC void ListMenuGetCurrentItemArrayId(struct ListMenu * list, u16 * index_p)
+{
+ *index_p = list->cursorPos + list->itemsAbove;
+}
+
+THUMB_FUNC void ListMenuGetScrollAndRow(struct ListMenu * list, u16 * cursorPos_p, u16 * itemsAbove_p)
+{
+ if (cursorPos_p != NULL)
+ *cursorPos_p = list->cursorPos;
+ if (itemsAbove_p != NULL)
+ *itemsAbove_p = list->itemsAbove;
+}
+
+THUMB_FUNC u8 ListMenuGetUnk33(struct ListMenu * list)
+{
+ return list->unk_33;
+}
+
+THUMB_FUNC s32 ListMenuGetValueByArrayId(struct ListMenu * list, s32 index)
+{
+ return list->template.items[index].index;
+}
+
+THUMB_FUNC s32 ListMenuGetTemplateField(struct ListMenu * list, u32 attr)
+{
+ switch (attr)
+ {
+ case 0:
+ return (s32)list->template.moveCursorFunc;
+ case 1:
+ return (s32)list->template.itemPrintFunc;
+ case 2:
+ return (s32)list->template.totalItems;
+ case 3:
+ return (s32)list->template.maxShowed;
+ case 4:
+ break;
+ case 5:
+ return (s32)list->template.header_X;
+ case 6:
+ return (s32)list->template.item_X;
+ case 7:
+ return (s32)list->template.cursor_X;
+ case 8:
+ return (s32)list->template.upText_Y;
+ case 9:
+ return GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding;
+ case 10:
+ return (s32)list->template.cursorPal;
+ case 11:
+ return (s32)list->template.fillValue;
+ case 12:
+ return (s32)list->template.cursorShadowPal;
+ case 13:
+ return (s32)list->template.lettersSpacing;
+ case 14:
+ return (s32)list->template.itemVerticalPadding;
+ case 15:
+ return (s32)list->template.scrollMultiple;
+ case 16:
+ return (s32)list->template.fontId;
+ case 17:
+ return (s32)list->template.cursorKind;
+ case 18:
+ return (s32)list->template.window;
+ case 19:
+ return (s32)list->template.unk_1C;
+ }
+
+ return -1;
+}
+
+THUMB_FUNC void ListMenuSetTemplateField(struct ListMenu * list, u32 attr, s32 value)
+{
+ switch (attr)
+ {
+ case 0:
+ list->template.moveCursorFunc = (LM_MoveCursorFunc_t)value;
+ break;
+ case 1:
+ list->template.itemPrintFunc = (LM_ItemPrintFunc_t)value;
+ break;
+ case 2:
+ list->template.totalItems = (u16)value;
+ break;
+ case 3:
+ list->template.maxShowed = (u16)value;
+ break;
+ case 4:
+ break;
+ case 5:
+ list->template.header_X = (u8)value;
+ break;
+ case 6:
+ list->template.item_X = (u8)value;
+ break;
+ case 7:
+ list->template.cursor_X = (u8)value;
+ break;
+ case 8:
+ list->template.upText_Y = (u8)value;
+ break;
+ case 9:
+ break;
+ case 10:
+ list->template.cursorPal = (u8)value;
+ break;
+ case 11:
+ list->template.fillValue = (u8)value;
+ break;
+ case 12:
+ list->template.cursorShadowPal = (u8)value;
+ break;
+ case 13:
+ list->template.lettersSpacing = (u8)value;
+ break;
+ case 14:
+ list->template.itemVerticalPadding = (u8)value;
+ break;
+ case 15:
+ list->template.scrollMultiple = (u8)value;
+ break;
+ case 16:
+ list->template.fontId = (u8)value;
+ break;
+ case 17:
+ list->template.cursorKind = (u8)value;
+ break;
+ case 18:
+ list->template.window = (struct Window *)value;
+ break;
+ case 19:
+ list->template.unk_1C = (u32)value;
+ break;
+ }
+}
+
+THUMB_FUNC void ListMenuGetItemStr(struct ListMenu * list, struct ListMenuItem * items)
+{
+ list->template.items = items;
+}
+
+THUMB_FUNC void ListMenuPrint(struct ListMenu * list, const u16 * str, u8 x, u8 y)
+{
+ if (str != NULL)
+ {
+ if (list->overrideEnabled)
+ {
+ AddTextPrinterParameterized3(list->template.window, list->fontId, str, x, y, 0xFF, MakeFontColor(list->cursorPal, list->cursorShadowPal, list->fillValue), list->lettersSpacing, 0, NULL);
+ }
+ else
+ {
+ AddTextPrinterParameterized3(list->template.window, list->template.fontId, str, x, y, 0xFF, MakeFontColor(list->template.cursorPal, list->template.cursorShadowPal, list->template.fillValue), list->template.lettersSpacing, 0, NULL);
+ }
+ }
+}
+
+THUMB_FUNC void ListMenuPrintEntries(struct ListMenu * list, u16 startIndex, u16 yOffset, u16 count)
+{
+ s32 i;
+ u8 x, y;
+ u8 yMultiplier = GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding;
+
+ for (i = 0; i < count; i++)
+ {
+ if (list->template.items[startIndex].index != LIST_HEADER)
+ x = list->template.item_X;
+ else
+ x = list->template.header_X;
+ y = (yOffset + i) * yMultiplier + list->template.upText_Y;
+ if (list->template.itemPrintFunc != NULL)
+ list->template.itemPrintFunc(list, list->template.items[startIndex].index, y);
+ ListMenuPrint(list, list->template.items[startIndex].text, x, y);
+ startIndex++;
+ }
+}
+
+THUMB_FUNC void ListMenuDrawCursor(struct ListMenu * list)
+{
+ u8 yMultiplier = GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding;
+ u8 x = list->template.cursor_X;
+ u8 y = list->itemsAbove * yMultiplier + list->template.upText_Y;
+ switch (list->template.cursorKind)
+ {
+ case 0:
+ ListMenuUpdateCursorObj(list->cursor, list->template.window, x, y);
+ break;
+ case 1:
+ case 2: // leftover
+ case 3: // leftover
+ break;
+ }
+}
+
+THUMB_FUNC void ListMenuErasePrintedCursor(struct ListMenu * list, u16 itemsAbove)
+{
+ switch (list->template.cursorKind)
+ {
+ case 0:
+ u8 yMultiplier = GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding;
+ u8 width = 8;
+ u8 height = 16;
+ FillWindowPixelRect(list->template.window,
+ list->template.fillValue,
+ list->template.cursor_X,
+ itemsAbove * yMultiplier + list->template.upText_Y,
+ width,
+ height);
+ break;
+ case 1:
+ case 2: // leftover
+ case 3: // leftover
+ break;
+ }
+}
+
+THUMB_FUNC u8 ListMenuUpdateSelectedRowIndexAndScrollOffset(struct ListMenu *list, u8 movingDown)
+{
+ u32 cursorPos;
+ u16 itemsAbove;
+ u16 newRow;
+
+ itemsAbove = list->itemsAbove;
+ cursorPos = list->cursorPos;
+
+ if (!movingDown)
+ {
+ if (list->template.maxShowed == 1)
+ newRow = 0;
+ else
+ newRow = list->template.maxShowed - ((list->template.maxShowed / 2) + (list->template.maxShowed % 2)) - 1;
+
+ if (cursorPos == 0)
+ {
+ while (itemsAbove != 0)
+ {
+ itemsAbove--;
+ if (list->template.items[cursorPos + itemsAbove].index != LIST_HEADER)
+ {
+ list->itemsAbove = itemsAbove;
+ return 1;
+ }
+ }
+ return 0;
+ }
+ else
+ {
+ while (itemsAbove > newRow)
+ {
+ itemsAbove--;
+ if (list->template.items[cursorPos + itemsAbove].index != LIST_HEADER)
+ {
+ list->itemsAbove = itemsAbove;
+ return 1;
+ }
+ }
+ list->itemsAbove = newRow;
+ list->cursorPos = cursorPos - 1;
+ }
+ }
+ else
+ {
+ if (list->template.maxShowed == 1)
+ newRow = 0;
+ else
+ newRow = ((list->template.maxShowed / 2) + (list->template.maxShowed % 2));
+
+ if (cursorPos == list->template.totalItems - list->template.maxShowed)
+ {
+ while (itemsAbove < list->template.maxShowed - 1)
+ {
+ itemsAbove++;
+ if (list->template.items[cursorPos + itemsAbove].index != LIST_HEADER)
+ {
+ list->itemsAbove = itemsAbove;
+ return 1;
+ }
+ }
+ return 0;
+ }
+ else
+ {
+ while (itemsAbove < newRow)
+ {
+ itemsAbove++;
+ if (list->template.items[cursorPos + itemsAbove].index != LIST_HEADER)
+ {
+ list->itemsAbove = itemsAbove;
+ return 1;
+ }
+ }
+ list->itemsAbove = newRow;
+ list->cursorPos = cursorPos + 1;
+ }
+ }
+ return 2;
+}
+
+THUMB_FUNC void ListMenuScroll(struct ListMenu * list, u8 count, u8 movingDown)
+{
+ if (count >= list->template.maxShowed)
+ {
+ FillWindowPixelBuffer(list->template.window, list->template.fillValue);
+ ListMenuPrintEntries(list, list->cursorPos, 0, list->template.maxShowed);
+ }
+ else
+ {
+ u8 yMultiplier = GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding;
+
+ if (!movingDown)
+ {
+ u16 y, width, height;
+
+ ScrollWindow(list->template.window, 1, count * yMultiplier, (list->template.fillValue << 4) | list->template.fillValue);
+ ListMenuPrintEntries(list, list->cursorPos, 0, count);
+
+ y = (list->template.maxShowed * yMultiplier) + list->template.upText_Y;
+ width = GetWindowWidth(list->template.window);
+ height = GetWindowHeight(list->template.window);
+ FillWindowPixelRect(list->template.window,
+ list->template.fillValue,
+ 0, y, width * 8, height * 8 - y);
+ }
+ else
+ {
+ u32 width;
+
+ ScrollWindow(list->template.window, 0, count * yMultiplier, (list->template.fillValue << 4) | list->template.fillValue);
+ ListMenuPrintEntries(list, list->cursorPos + (list->template.maxShowed - count), list->template.maxShowed - count, count);
+
+ width = GetWindowWidth(list->template.window);
+ FillWindowPixelRect(list->template.window,
+ list->template.fillValue,
+ 0, 0, width * 8, list->template.upText_Y);
+ }
+ }
+}
+
+THUMB_FUNC BOOL ListMenuChangeSelection(struct ListMenu * list, u8 updateCursorAndCallCallback, u8 count, u8 movingDown)
+{
+ u16 oldSelectedRow;
+ u8 selectionChange, i, cursorCount;
+
+ oldSelectedRow = list->itemsAbove;
+ cursorCount = 0;
+ selectionChange = 0;
+ for (i = 0; i < count; i++)
+ {
+ do
+ {
+ u8 ret = ListMenuUpdateSelectedRowIndexAndScrollOffset(list, movingDown);
+
+ selectionChange |= ret;
+ if (ret != 2)
+ break;
+ cursorCount++;
+ }
+ while (list->template.items[list->cursorPos + list->itemsAbove].index == LIST_HEADER);
+ }
+
+ if (updateCursorAndCallCallback)
+ {
+ switch (selectionChange)
+ {
+ case 0:
+ default:
+ return TRUE;
+ case 1:
+ ListMenuErasePrintedCursor(list, oldSelectedRow);
+ ListMenuDrawCursor(list);
+ ListMenuCallSelectionChangedCallback(list, FALSE);
+ CopyWindowToVram(list->template.window);
+ break;
+ case 2:
+ case 3:
+ ListMenuErasePrintedCursor(list, oldSelectedRow);
+ ListMenuScroll(list, cursorCount, movingDown);
+ ListMenuDrawCursor(list);
+ ListMenuCallSelectionChangedCallback(list, FALSE);
+ CopyWindowToVram(list->template.window);
+ break;
+ }
+ }
+ return FALSE;
+}
+
+THUMB_FUNC void ListMenuCallSelectionChangedCallback(struct ListMenu * list, u8 onInit)
+{
+ if (list->template.moveCursorFunc != NULL)
+ {
+ list->template.moveCursorFunc(list, list->template.items[list->cursorPos + list->itemsAbove].index, onInit);
+ }
+}
+
+THUMB_FUNC void ListMenuCopyToVram(struct ListMenu * list)
+{
+ CopyWindowToVram(list->template.window);
+}
diff --git a/arm9/src/main.c b/arm9/src/main.c
index 117535b2..4879cb4c 100644
--- a/arm9/src/main.c
+++ b/arm9/src/main.c
@@ -22,7 +22,9 @@ FS_EXTERN_OVERLAY(MODULE_63);
#define SOFT_RESET_KEY (PAD_BUTTON_L | PAD_BUTTON_R | PAD_BUTTON_START | PAD_BUTTON_SELECT)
-struct Unk2106FA0 gBacklightTop;
+s32 UNK_02016FA4;
+PMBackLightSwitch gBacklightTop;
+struct UnkStruct_02016FA8 UNK_02016FA8;;
extern void InitSystemForTheGame(void);
extern void InitGraphicMemory(void);
@@ -52,6 +54,7 @@ extern u8 SDK_STATIC_BSS_START[];
const int gGameLanguage = GAME_LANGUAGE;
const int gGameVersion = GAME_VERSION;
+__declspec(noreturn)
THUMB_FUNC void NitroMain(void)
{
InitSystemForTheGame();
@@ -68,13 +71,13 @@ THUMB_FUNC void NitroMain(void)
FUN_02002C50(0, 3);
FUN_02002C50(1, 3);
FUN_02002C50(3, 3);
- gBacklightTop.unk18 = -1;
- gBacklightTop.unk20 = SaveBlock2_new();
- InitSoundData(FUN_02029EF8(gBacklightTop.unk20), Sav2_PlayerData_GetOptionsAddr(gBacklightTop.unk20));
+ UNK_02016FA8.unk10 = -1;
+ UNK_02016FA8.unk18 = SaveBlock2_new();
+ InitSoundData(FUN_02029EF8(UNK_02016FA8.unk18), Sav2_PlayerData_GetOptionsAddr(UNK_02016FA8.unk18));
Init_Timer3();
if (FUN_020337E8(3) == 3)
FUN_02034188(3, 0);
- if (FUN_020227FC(gBacklightTop.unk20) == 0)
+ if (FUN_020227FC(UNK_02016FA8.unk18) == 0)
{
FUN_02089D90(0);
}
@@ -84,12 +87,12 @@ THUMB_FUNC void NitroMain(void)
{
case 0:
// Title Demo
- gBacklightTop.unk1C = 0;
+ UNK_02016FA8.unk14 = 0;
RegisterMainOverlay(FS_OVERLAY_ID(MODULE_63), &MOD63_021DBE18);
break;
case 1:
// Reset transition?
- gBacklightTop.unk1C = 1;
+ UNK_02016FA8.unk14 = 1;
RegisterMainOverlay(FS_OVERLAY_ID(MODULE_52), &MOD52_021D76C8);
break;
default:
@@ -102,7 +105,7 @@ THUMB_FUNC void NitroMain(void)
InitializeMainRNG();
FUN_0200A2AC();
FUN_02015E30();
- gBacklightTop.unk4 = 0;
+ UNK_02016FA4 = 0;
for (;;)
{
FUN_02000EE8();
@@ -141,40 +144,40 @@ THUMB_FUNC void NitroMain(void)
THUMB_FUNC void FUN_02000DF4(void)
{
- gBacklightTop.unk8 = (FSOverlayID)-1;
- gBacklightTop.unkC = 0;
- gBacklightTop.unk10 = (FSOverlayID)-1; // overlay invalid
- gBacklightTop.unk14 = NULL;
+ UNK_02016FA8.unk0 = SDK_OVERLAY_INVALID_ID;
+ UNK_02016FA8.unk4 = NULL;
+ UNK_02016FA8.unk8 = SDK_OVERLAY_INVALID_ID; // overlay invalid
+ UNK_02016FA8.unkC = NULL;
}
THUMB_FUNC void Main_RunOverlayManager(void)
{
- if (!gBacklightTop.unkC)
+ if (UNK_02016FA8.unk4 == NULL)
{
- if (gBacklightTop.unk14 == NULL)
+ if (UNK_02016FA8.unkC == NULL)
return;
- if (gBacklightTop.unk10 != SDK_OVERLAY_INVALID_ID)
- HandleLoadOverlay(gBacklightTop.unk10, 0);
- gBacklightTop.unk8 = gBacklightTop.unk10;
- gBacklightTop.unkC = OverlayManager_new(gBacklightTop.unk14, &gBacklightTop.unk18, 0);
- gBacklightTop.unk10 = SDK_OVERLAY_INVALID_ID;
- gBacklightTop.unk14 = NULL;
+ if (UNK_02016FA8.unk8 != SDK_OVERLAY_INVALID_ID)
+ HandleLoadOverlay(UNK_02016FA8.unk8, 0);
+ UNK_02016FA8.unk0 = UNK_02016FA8.unk8;
+ UNK_02016FA8.unk4 = OverlayManager_new(UNK_02016FA8.unkC, &UNK_02016FA8.unk10, 0);
+ UNK_02016FA8.unk8 = SDK_OVERLAY_INVALID_ID;
+ UNK_02016FA8.unkC = NULL;
}
- if (OverlayManager_Run(gBacklightTop.unkC))
+ if (OverlayManager_Run(UNK_02016FA8.unk4))
{
- OverlayManager_delete(gBacklightTop.unkC);
- gBacklightTop.unkC = 0;
- if (gBacklightTop.unk8 != SDK_OVERLAY_INVALID_ID)
- UnloadOverlayByID(gBacklightTop.unk8);
+ OverlayManager_delete(UNK_02016FA8.unk4);
+ UNK_02016FA8.unk4 = NULL;
+ if (UNK_02016FA8.unk0 != SDK_OVERLAY_INVALID_ID)
+ UnloadOverlayByID(UNK_02016FA8.unk0);
}
}
THUMB_FUNC void RegisterMainOverlay(FSOverlayID id, const struct Unk21DBE18 * arg1)
{
- if (gBacklightTop.unk14 != NULL)
+ if (UNK_02016FA8.unkC != NULL)
ErrorHandling();
- gBacklightTop.unk10 = id;
- gBacklightTop.unk14 = arg1;
+ UNK_02016FA8.unk8 = id;
+ UNK_02016FA8.unkC = arg1;
}
THUMB_FUNC void FUN_02000E9C(void)
@@ -215,7 +218,7 @@ THUMB_FUNC void FUN_02000EE8(void)
extern void FUN_0200E3A0(PMLCDTarget, int);
-// No Return
+__declspec(noreturn)
THUMB_FUNC void DoSoftReset(u32 parameter)
{
FUN_0200E3A0(PM_LCD_TOP, 0x7FFF);
@@ -252,7 +255,7 @@ THUMB_FUNC void FUN_02000F4C(u32 arg0, u32 arg1)
{
HandleDSLidAction();
FUN_02016464();
- if (gMain.unk48 & 1)
+ if (gMain.newKeys & 1)
break;
FUN_02000E9C();
}
@@ -289,10 +292,10 @@ THUMB_FUNC void HandleDSLidAction(void)
FUN_0201CE04();
if (CTRDG_IsPulledOut() == TRUE)
{
- gBacklightTop.unk4 = 1;
+ UNK_02016FA4 = 1;
}
{
- int r1 = gBacklightTop.unk4;
+ int r1 = UNK_02016FA4;
while (1)
{
PMWakeUpTrigger trigger = PM_TRIGGER_COVER_OPEN | PM_TRIGGER_CARD;
@@ -306,7 +309,7 @@ THUMB_FUNC void HandleDSLidAction(void)
}
else if (PAD_DetectFold())
{
- r1 = gBacklightTop.unk4 = 1;
+ r1 = UNK_02016FA4 = 1;
}
else
break;
@@ -326,6 +329,6 @@ THUMB_FUNC void HandleDSLidAction(void)
{
PM_GetBackLight(&top, &bottom);
if (top == PM_BACKLIGHT_OFF)
- PM_SetBackLight(PM_LCD_ALL, gBacklightTop.unk0);
+ PM_SetBackLight(PM_LCD_ALL, gBacklightTop);
}
}
diff --git a/arm9/src/scrcmd.c b/arm9/src/scrcmd.c
index fb88da54..00ccd34d 100644
--- a/arm9/src/scrcmd.c
+++ b/arm9/src/scrcmd.c
@@ -676,7 +676,7 @@ THUMB_FUNC BOOL ScrCmd_WaitButtonAB(struct ScriptContext *ctx)
THUMB_FUNC static BOOL FUN_0203A46C(struct ScriptContext *ctx)
{
#pragma unused(ctx)
- if (gMain.unk48 & 0x3) // Mask (A | B) ?
+ if (gMain.newKeys & 0x3) // Mask (A | B) ?
{
return TRUE;
}
@@ -692,7 +692,7 @@ THUMB_FUNC BOOL ScrCmd_WaitButtonABTime(struct ScriptContext *ctx)
THUMB_FUNC static BOOL FUN_0203A4AC(struct ScriptContext *ctx)
{
- if (gMain.unk48 & 0x3) // Mask (A | B) ?
+ if (gMain.newKeys & 0x3) // Mask (A | B) ?
{
return TRUE;
}
@@ -713,27 +713,27 @@ THUMB_FUNC BOOL ScrCmd_WaitButton(struct ScriptContext *ctx)
THUMB_FUNC static BOOL FUN_0203A4E0(struct ScriptContext *ctx)
{
- if (gMain.unk48 & 3)
+ if (gMain.newKeys & 3)
{
return TRUE;
}
- else if (gMain.unk48 & 0x40)
+ else if (gMain.newKeys & 0x40)
{
FUN_02055304(ctx->unk80->unk38, 0);
}
- else if (gMain.unk48 & 0x80)
+ else if (gMain.newKeys & 0x80)
{
FUN_02055304(ctx->unk80->unk38, 1);
}
- else if (gMain.unk48 & 0x20)
+ else if (gMain.newKeys & 0x20)
{
FUN_02055304(ctx->unk80->unk38, 2);
}
- else if (gMain.unk48 & 0x10)
+ else if (gMain.newKeys & 0x10)
{
FUN_02055304(ctx->unk80->unk38, 3);
}
- else if (gMain.unk48 & 0x400)
+ else if (gMain.newKeys & 0x400)
{
FUN_02039460(ctx->unk80);
}
@@ -753,11 +753,11 @@ THUMB_FUNC BOOL ScrCmd_Unk0032(struct ScriptContext *ctx)
THUMB_FUNC static BOOL FUN_0203A570(struct ScriptContext *ctx)
{
#pragma unused(ctx)
- if (gMain.unk48 & 0x3)
+ if (gMain.newKeys & 0x3)
{
return TRUE;
}
- else if (gMain.unk48 & 0xf0)
+ else if (gMain.newKeys & 0xf0)
{
return TRUE;
}
@@ -973,19 +973,19 @@ THUMB_FUNC static BOOL FUN_0203A94C(struct ScriptContext *ctx)
return TRUE;
}
- if (gMain.unk48 & 0x40)
+ if (gMain.newKeys & 0x40)
{
tmp = 0;
}
- else if (gMain.unk48 & 0x80)
+ else if (gMain.newKeys & 0x80)
{
tmp = 1;
}
- else if (gMain.unk48 & 0x20)
+ else if (gMain.newKeys & 0x20)
{
tmp = 2;
}
- else if (gMain.unk48 & 0x10)
+ else if (gMain.newKeys & 0x10)
{
tmp = 3;
}
@@ -999,7 +999,7 @@ THUMB_FUNC static BOOL FUN_0203A94C(struct ScriptContext *ctx)
}
else
{
- if (gMain.unk48 & 0x400)
+ if (gMain.newKeys & 0x400)
{
FUN_0201BD7C(*unk1);
*varPtr = 1;
@@ -1022,24 +1022,24 @@ THUMB_FUNC static BOOL FUN_0203AA0C(struct ScriptContext *ctx)
u16 *unk = GetVarPointer(ctx->unk80, (u16)ctx->data[0]);
u32 tmp = 0xFFFF;
- if (gMain.unk48 & 0x3)
+ if (gMain.newKeys & 0x3)
{
*unk = 0;
return TRUE;
}
- else if (gMain.unk48 & 0x40)
+ else if (gMain.newKeys & 0x40)
{
tmp = 0;
}
- else if (gMain.unk48 & 0x80)
+ else if (gMain.newKeys & 0x80)
{
tmp = 1;
}
- else if (gMain.unk48 & 0x20)
+ else if (gMain.newKeys & 0x20)
{
tmp = 2;
}
- else if (gMain.unk48 & 0x10)
+ else if (gMain.newKeys & 0x10)
{
tmp = 3;
}
@@ -1052,7 +1052,7 @@ THUMB_FUNC static BOOL FUN_0203AA0C(struct ScriptContext *ctx)
}
else
{
- if (gMain.unk48 & 0x400)
+ if (gMain.newKeys & 0x400)
{
*unk = 1;
return TRUE;
diff --git a/arm9/src/script_buffers.c b/arm9/src/script_buffers.c
index e9a55051..939781f4 100644
--- a/arm9/src/script_buffers.c
+++ b/arm9/src/script_buffers.c
@@ -12,6 +12,8 @@
#include "trainer_data.h"
#include "script_buffers.h"
#include "unk_02024E64.h"
+#include "window.h"
+#include "text.h"
#pragma thumb on
@@ -20,9 +22,7 @@ extern void GetECWordIntoStringByIndex(u32 a0, struct String * a1);
extern void StringCat_HandleTrainerName(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);
+extern void * UncompressFromNarc(NarcId narcId, s32 memberNo, BOOL isCompressed, u32 heap_id, BOOL allocAtEnd);
const u16 UNK_020ECE6C[][2] = {
{ 0x0140, 0x0008 },
@@ -803,24 +803,24 @@ void MessagePrinter_delete(struct UnkStruct_0200B870 * a0)
}
}
-void FUN_0200B9A8(struct UnkStruct_0200B870 * a0, int a1, int a2, int a3, int a4)
+void FUN_0200B9A8(struct UnkStruct_0200B870 * a0, int a1, struct Window * 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);
+ BlitBitmapRectToWindow(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)
+void FUN_0200B9EC(struct UnkStruct_0200B870 * string, u32 value, u32 n, enum PrintingMode mode, struct Window *window, int x, int y)
{
ConvertUIntToDecimalString(string->data, value, mode, n);
for (int i = 0; string->data[i] != EOS; i++)
{
- if (string->data[i] >= 0x00A2 && string->data[i] <= 0x00AB)
+ if (string->data[i] >= CHAR_0 && string->data[i] <= CHAR_9)
{
- FUN_02019658(sp30, string->unk_4->unk_14 + (string->data[i] - 0x00A2) * 32, 0, 0, 8, 8, (u16)r5, (u16)r7, 8, 8);
+ BlitBitmapRectToWindow(window, string->unk_4->unk_14 + (string->data[i] - CHAR_0) * 32, 0, 0, 8, 8, (u16)x, (u16)y, 8, 8);
}
else
{
- FUN_020196F4(sp30, (u8)string->unk_28, (u16)r5, (u16)r7, 8, 8);
+ FillWindowPixelRect(window, (u8)string->unk_28, (u16)x, (u16)y, 8, 8);
}
- r5 += 8;
+ x += 8;
}
}
diff --git a/arm9/src/text.c b/arm9/src/text.c
index 3034baab..b21acf88 100644
--- a/arm9/src/text.c
+++ b/arm9/src/text.c
@@ -2,6 +2,9 @@
#include "heap.h"
#include "string16.h"
#include "MI_memory.h"
+#include "filesystem.h"
+#include "script_buffers.h"
+#include "unk_0200CA44.h"
const struct FontInfo *gFonts = NULL;
@@ -12,20 +15,13 @@ u16 UNK_021C5710;
u16 UNK_021C5712;
u8 UNK_021C570C;
-extern u32 FUN_0200CA7C(void (*func)(u32, struct TextPrinter *), struct TextPrinter *printer, u32 param2);
-
extern struct TextPrinter *FUN_0201B6C8(void);
-extern void FUN_0200CAB4(u32 param0);
extern void FUN_0201C1A8(struct TextPrinter *printer);
-extern void CopyWindowToVram(u32 windowId);
extern u32 FontFunc(u8 fontId, struct TextPrinter *printer);
-extern void *FUN_02006BB0(u32 param0, u32 param1, u32 param2, struct TextPrinter **param3, u32 param4);
-
-extern u32 FUN_0201AB0C(u32 windowId);
-extern void FUN_02019658(u32 param0, u32 param1, u32 param2, u32 param3, u32 param4, u32 param5, u32 param6, u32 param7, u32 param8, u32 param9);
+extern void * FUN_02006BB0(NarcId, s32, s32, struct UnkStruct_0200B870_sub **, u32);
THUMB_FUNC void SetFontsPointer(const struct FontInfo *fonts)
@@ -99,11 +95,11 @@ THUMB_FUNC void FUN_0201BD7C(u32 param0)
FUN_0201BCFC(param0);
}
-THUMB_FUNC u16 AddTextPrinterParameterized(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u8 (*callback)(struct TextPrinterTemplate *, u16))
+THUMB_FUNC u16 AddTextPrinterParameterized(struct Window * window, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u8 (*callback)(struct TextPrinterTemplate *, u16))
{
struct TextPrinterTemplate printerTemplate;
- printerTemplate.windowId = windowId;
+ printerTemplate.window = window;
printerTemplate.currentChar = str;
printerTemplate.fontId = fontId;
printerTemplate.x = (u8)x;
@@ -122,11 +118,11 @@ THUMB_FUNC u16 AddTextPrinterParameterized(u32 windowId, u8 fontId, const u16 *s
return AddTextPrinter(&printerTemplate, speed, callback);
}
-THUMB_FUNC u16 AddTextPrinterParameterized2(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u8 (*callback)(struct TextPrinterTemplate *, u16))
+THUMB_FUNC u16 AddTextPrinterParameterized2(struct Window * window, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u8 (*callback)(struct TextPrinterTemplate *, u16))
{
struct TextPrinterTemplate printerTemplate;
- printerTemplate.windowId = windowId;
+ printerTemplate.window = window;
printerTemplate.currentChar = str;
printerTemplate.fontId = fontId;
printerTemplate.x = (u8)x;
@@ -145,13 +141,13 @@ THUMB_FUNC u16 AddTextPrinterParameterized2(u32 windowId, u8 fontId, const u16 *
return AddTextPrinter(&printerTemplate, speed, callback);
}
-THUMB_FUNC u16 AddTextPrinterParameterized3(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u32 letterSpacing, u32 lineSpacing, u8 (*callback)(struct TextPrinterTemplate *, u16))
+THUMB_FUNC u16 AddTextPrinterParameterized3(struct Window * window, u32 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u32 letterSpacing, u32 lineSpacing, u8 (*callback)(struct TextPrinterTemplate *, u16))
{
struct TextPrinterTemplate printerTemplate;
- printerTemplate.windowId = windowId;
+ printerTemplate.window = window;
printerTemplate.currentChar = str;
- printerTemplate.fontId = fontId;
+ printerTemplate.fontId = (u8)fontId;
printerTemplate.x = (u8)x;
printerTemplate.y = (u8)y;
printerTemplate.currentX = (u8)x;
@@ -214,7 +210,7 @@ THUMB_FUNC u16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u32 s
}
if (speed != 0xff)
{
- CopyWindowToVram(printer->printerTemplate.windowId); // CopyWindowToVram?
+ CopyWindowToVram(printer->printerTemplate.window);
}
FUN_0201C238(printer);
FreeToHeap((void *)printer);
@@ -235,7 +231,7 @@ THUMB_FUNC void RunTextPrinter(u32 param0, struct TextPrinter *printer)
switch (temp)
{
case 0:
- CopyWindowToVram(printer->printerTemplate.windowId);
+ CopyWindowToVram(printer->printerTemplate.window);
//fallthrough
case 3:
if (printer->callback == NULL)
@@ -330,12 +326,12 @@ THUMB_FUNC void FUN_0201C1A8(struct TextPrinter *printer)
printer->Unk2C = NULL;
}
-THUMB_FUNC void *FUN_0201C1B0(void)
+THUMB_FUNC u16 *FUN_0201C1B0(void)
{
- void *res = AllocFromHeap(0, sizeof(struct TextPrinter) * 32);
- struct TextPrinter *var;
- void *tmp = FUN_02006BB0(14, 5, 0, &var, 0);
- MIi_CpuCopy32((void *)var->printerTemplate.Unk20, res, sizeof(struct TextPrinter) * 32); //todo Unk20 can't be right here
+ void *res = AllocFromHeap(0, 32 * 24 * sizeof(u16));
+ struct UnkStruct_0200B870_sub * var;
+ void *tmp = FUN_02006BB0(NARC_GRAPHIC_FONT, 5, 0, &var, 0);
+ MIi_CpuCopy32(var->unk_14, res, 32 * 24 * sizeof(u16));
FreeToHeap(tmp);
return res;
}
@@ -343,14 +339,14 @@ THUMB_FUNC void *FUN_0201C1B0(void)
THUMB_FUNC void FUN_0201C1EC(struct TextPrinter *printer, u32 param1, u32 param2, u32 param3)
{
#pragma unused (param1, param2)
- u32 windowId = printer->printerTemplate.windowId;
+ struct Window * window = printer->printerTemplate.window;
if (printer->Unk2C == NULL)
{
printer->Unk2C = FUN_0201C1B0();
}
- u32 r6 = (u32)printer->Unk2C + param3 * (sizeof(struct TextPrinter) * 8);
- u32 r2 = ((FUN_0201AB0C(windowId) - 3) << 0x13) >> 0x10;
- FUN_02019658(windowId, r6, 0, 0, 24, 32, r2, 0, 24, 32);
+ u16 * r6 = printer->Unk2C + param3 * 24 * 8;
+ u16 r2 = (GetWindowWidth(window) - 3) * 8;
+ BlitBitmapRectToWindow(window, r6, 0, 0, 24, 32, r2, 0, 24, 32);
}
THUMB_FUNC void FUN_0201C238(struct TextPrinter *printer)
diff --git a/arm9/src/text_02054590.c b/arm9/src/text_02054590.c
index 470a2fe3..e2765c6f 100644
--- a/arm9/src/text_02054590.c
+++ b/arm9/src/text_02054590.c
@@ -7,18 +7,16 @@ extern void FUN_02002EEC(u32 param0, u32 param1, u32 param2);
extern void FUN_02019064(u32 param0, u32 param1, u32 param2, u8 param3, u32 param4, u8 param5, u32 param6, u32 param7, u32 param8);
-extern void FUN_0200CD68(u32 param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5);
-extern u32 FUN_0201AB08(u32 *param0);
-extern void FUN_0200D0BC(u32 *param0, u32 param1, u32 param2, u32 param3);
-
-extern void FUN_02019620(u32 *param0, u32 param1);
+extern void FUN_0200CD68(void * param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5);
+extern u32 FUN_0201AB08(struct Window *param0);
+extern void FUN_0200D0BC(struct Window *param0, u32 param1, u32 param2, u32 param3);
extern void FUN_02002B60(u8 param0);
extern void FUN_02002B7C(u32 param0);
extern void FUN_02002BB8(u32 param0);
-extern void FUN_0200D300(u32 param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5, u32 param6);
-extern void FUN_0200D6F8(u32 *param0, u32 param1, u32 param2, u32 param3, u8 param4);
+extern void FUN_0200D300(void * param0, u32 param1, u32 param2, u32 param3, u8 param4, u32 param5, u32 param6);
+extern void FUN_0200D6F8(struct Window *param0, u32 param1, u32 param2, u32 param3, u8 param4);
THUMB_FUNC void FUN_02054590(u32 param0, u32 param1)
@@ -43,32 +41,32 @@ THUMB_FUNC void FUN_020545B8(u32 param0, u32 param1, u32 param2)
}
}
-THUMB_FUNC void FUN_02054608(u32 *param0, struct Options *options)
+THUMB_FUNC void FUN_02054608(struct Window *param0, struct Options *options)
{
- FUN_0200CD68(*param0, FUN_0201AB08(param0), 994, 10, (u8)Options_GetFrame(options), 4);
+ FUN_0200CD68(param0->unk_00, FUN_0201AB08(param0), 994, 10, (u8)Options_GetFrame(options), 4);
FUN_0205464C(param0);
FUN_0200D0BC(param0, 0, 994, 10);
}
-THUMB_FUNC void FUN_0205464C(u32 *param0)
+THUMB_FUNC void FUN_0205464C(struct Window *param0)
{
- FUN_02019620(param0, 15);
+ FillWindowPixelBuffer(param0, 15);
}
-THUMB_FUNC u16 FUN_02054658(u8 windowId, const u16 *str, struct Options *options, u8 param3)
+THUMB_FUNC u16 FUN_02054658(struct Window * window, const u16 *str, struct Options *options, u8 param3)
{
FUN_02002B60(param3);
FUN_02002B7C(0);
FUN_02002BB8(0);
- return AddTextPrinterParameterized(windowId, 1, str, 0, 0, (u32)Options_GetTextFrameDelay(options), NULL);
+ return AddTextPrinterParameterized(window, 1, str, 0, 0, (u32)Options_GetTextFrameDelay(options), NULL);
}
-THUMB_FUNC u16 DrawFieldMessage(u8 windowId, const u16 *str, u8 fontId, u32 speed, u8 a4, u32 a5)
+THUMB_FUNC u16 DrawFieldMessage(struct Window * window, const u16 *str, u8 fontId, u32 speed, u8 a4, u32 a5)
{
FUN_02002B60(a4);
FUN_02002B7C(a5);
FUN_02002BB8(0);
- return AddTextPrinterParameterized(windowId, fontId, str, 0, 0, speed, NULL);
+ return AddTextPrinterParameterized(window, fontId, str, 0, 0, speed, NULL);
}
THUMB_FUNC u8 FUN_020546C8(u32 param0) //bool8?
@@ -100,9 +98,9 @@ THUMB_FUNC void FUN_020546E0(u32 param0, u32 param1, u32 param2, u32 param3)
}
}
-THUMB_FUNC void FUN_02054744(u32 *param0, u32 param1, u32 param2)
+THUMB_FUNC void FUN_02054744(struct Window *param0, u32 param1, u32 param2)
{
- FUN_0200D300(*param0, FUN_0201AB08(param0), 0x399, 9, (u8)param1, param2, 4);
- FUN_02019620(param0, 15);
+ FUN_0200D300(param0->unk_00, FUN_0201AB08(param0), 0x399, 9, (u8)param1, param2, 4);
+ FillWindowPixelBuffer(param0, 15);
FUN_0200D6F8(param0, 0, 0x399, 9, (u8)param1);
}
diff --git a/arm9/src/unk_0200CA44.c b/arm9/src/unk_0200CA44.c
index fd703cd3..6ffed8be 100644
--- a/arm9/src/unk_0200CA44.c
+++ b/arm9/src/unk_0200CA44.c
@@ -2,25 +2,25 @@
#include "main.h"
#include "unk_0200CA44.h"
-extern BOOL FUN_0201B60C(void *, void (*)(u32, void *), void *, void *);
+extern BOOL FUN_0201B60C(void *, void (*)(u32, struct TextPrinter *), struct TextPrinter *, u32);
extern void FUN_0201B6A0(s32);
-THUMB_FUNC BOOL FUN_0200CA44(void (*r0)(u32, void *), void * r1, void * r2)
+THUMB_FUNC BOOL FUN_0200CA44(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2)
{
return FUN_0201B60C(gMain.unk18, r0, r1, r2);
}
-THUMB_FUNC BOOL FUN_0200CA60(void (*r0)(u32, void *), void * r1, void * r2)
+THUMB_FUNC BOOL FUN_0200CA60(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2)
{
return FUN_0201B60C(gMain.unk1C, r0, r1, r2);
}
-THUMB_FUNC BOOL FUN_0200CA7C(void (*r0)(u32, void *), void * r1, void * r2)
+THUMB_FUNC BOOL FUN_0200CA7C(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2)
{
return FUN_0201B60C(gMain.unk24, r0, r1, r2);
}
-THUMB_FUNC BOOL FUN_0200CA98(void (*r0)(u32, void *), void * r1, void * r2)
+THUMB_FUNC BOOL FUN_0200CA98(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2)
{
return FUN_0201B60C(gMain.unk20, r0, r1, r2);
}
diff --git a/arm9/src/unk_0202E29C.c b/arm9/src/unk_0202E29C.c
index 5f99ca8f..938107f2 100644
--- a/arm9/src/unk_0202E29C.c
+++ b/arm9/src/unk_0202E29C.c
@@ -17,13 +17,9 @@ struct UnkStruct_0202E29C_const
const struct UnkStruct_0202E29C_const UNK_020EEC40 = { { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF } };
-struct
-{
- u16 unk0;
- u32 unk4;
- struct UnkStruct_0202E29C *unk8;
-
-} UNK_021C59E8;
+u16 UNK_021C59E8;
+struct UnkStruct_0202E29C *UNK_021C59F0;
+u32 UNK_021C59EC;
extern u32 FUN_0202CEEC();
extern u32 FUN_02023AC4();
@@ -59,28 +55,28 @@ extern BOOL FUN_0202D2D0();
THUMB_FUNC void FUN_0202E29C(struct PlayerData *player_data)
{
- if (UNK_021C59E8.unk8 == NULL)
+ if (UNK_021C59F0 == NULL)
{
- UNK_021C59E8.unk8 = AllocFromHeap(0xf, sizeof(struct UnkStruct_0202E29C));
- MI_CpuFill8(UNK_021C59E8.unk8, 0, sizeof(struct UnkStruct_0202E29C));
+ UNK_021C59F0 = AllocFromHeap(0xf, sizeof(struct UnkStruct_0202E29C));
+ MI_CpuFill8(UNK_021C59F0, 0, sizeof(struct UnkStruct_0202E29C));
- UNK_021C59E8.unk8->unkCA4 = AllocFromHeap(0xf, FUN_0202CEEC());
- MI_CpuFill8(UNK_021C59E8.unk8->unkCA4, 0, FUN_0202CEEC());
+ UNK_021C59F0->unkCA4 = AllocFromHeap(0xf, FUN_0202CEEC());
+ MI_CpuFill8(UNK_021C59F0->unkCA4, 0, FUN_0202CEEC());
- UNK_021C59E8.unk8->unkCBC = AllocFromHeap(0xf, FUN_02023AC4());
- MI_CpuFill8(UNK_021C59E8.unk8->unkCBC, 0, FUN_02023AC4());
+ UNK_021C59F0->unkCBC = AllocFromHeap(0xf, FUN_02023AC4());
+ MI_CpuFill8(UNK_021C59F0->unkCBC, 0, FUN_02023AC4());
- UNK_021C59E8.unk8->unkCC0 = 0x333;
- UNK_021C59E8.unk8->unkCB8 = player_data;
+ UNK_021C59F0->unkCC0 = 0x333;
+ UNK_021C59F0->unkCB8 = player_data;
- MailMsg_init(&UNK_021C59E8.unk8->unkCA8);
+ MailMsg_init(&UNK_021C59F0->unkCA8);
FUN_0202E500();
}
}
THUMB_FUNC BOOL FUN_0202E344()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
return TRUE;
}
@@ -142,26 +138,26 @@ THUMB_FUNC void FUN_0202E380(struct UnkStruct_0202E29C_sub *param0, u32 param1)
for (int i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
continue;
}
- if (!FUN_0202E358(UNK_021C59E8.unk8->unk054[i].unk04, param0->unk04, 6))
+ if (!FUN_0202E358(UNK_021C59F0->unk054[i].unk04, param0->unk04, 6))
{
continue;
}
- UNK_021C59E8.unk8->unkC84[i] = 0x96;
+ UNK_021C59F0->unkC84[i] = 0x96;
- MI_CpuCopy8(param0, &UNK_021C59E8.unk8->unk054[i], sizeof(struct UnkStruct_0202E29C_sub));
+ MI_CpuCopy8(param0, &UNK_021C59F0->unk054[i], sizeof(struct UnkStruct_0202E29C_sub));
return;
}
int i;
for (i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
break;
}
@@ -169,9 +165,9 @@ THUMB_FUNC void FUN_0202E380(struct UnkStruct_0202E29C_sub *param0, u32 param1)
if (i < 0x10)
{
- UNK_021C59E8.unk8->unkC84[i] = 0x96;
- MI_CpuCopy8(param0, &UNK_021C59E8.unk8->unk054[i], sizeof(struct UnkStruct_0202E29C_sub));
- UNK_021C59E8.unk8->unkCB4 = 1;
+ UNK_021C59F0->unkC84[i] = 0x96;
+ MI_CpuCopy8(param0, &UNK_021C59F0->unk054[i], sizeof(struct UnkStruct_0202E29C_sub));
+ UNK_021C59F0->unkCB4 = 1;
}
}
@@ -183,19 +179,19 @@ THUMB_FUNC void FUN_0202E470(u32 param0, u32 param1)
OS_Terminate();
}
- UNK_021C59E8.unk4 = 2;
+ UNK_021C59EC = 2;
}
THUMB_FUNC void FUN_0202E488()
{
- UNK_021C59E8.unk4 = 0;
+ UNK_021C59EC = 0;
FUN_02016454(4);
}
THUMB_FUNC void FUN_0202E49C()
{
FUN_02016444(4);
- UNK_021C59E8.unk4 = 1;
+ UNK_021C59EC = 1;
if (FUN_02090DB8(8, FUN_0202E470, 0) != 1)
{
OS_Terminate();
@@ -204,7 +200,7 @@ THUMB_FUNC void FUN_0202E49C()
THUMB_FUNC BOOL FUN_0202E4C8()
{
- if (UNK_021C59E8.unk4 == 2)
+ if (UNK_021C59EC == 2)
{
return TRUE;
}
@@ -214,7 +210,7 @@ THUMB_FUNC BOOL FUN_0202E4C8()
THUMB_FUNC BOOL FUN_0202E4DC()
{
- if (UNK_021C59E8.unk4 != 0)
+ if (UNK_021C59EC != 0)
{
return TRUE;
}
@@ -229,42 +225,42 @@ THUMB_FUNC void FUN_0202E4F0()
THUMB_FUNC void FUN_0202E500()
{
- UNK_021C59E8.unk8->unkCB0 = 0;
- FUN_0202CE64(UNK_021C59E8.unk8->unkCA4 + (32 - (u32)(UNK_021C59E8.unk8->unkCA4) % 32));
+ UNK_021C59F0->unkCB0 = 0;
+ FUN_0202CE64(UNK_021C59F0->unkCA4 + (32 - (u32)(UNK_021C59F0->unkCA4) % 32));
- FUN_0202CB70(UNK_021C59E8.unk8->unkCC0);
+ FUN_0202CB70(UNK_021C59F0->unkCC0);
}
THUMB_FUNC void FUN_0202E538()
{
for (int i = 0; i < 0x10; i++)
{
- UNK_021C59E8.unk8->unkC84[i] = 0;
+ UNK_021C59F0->unkC84[i] = 0;
}
- MI_CpuFill8(UNK_021C59E8.unk8->unk054, 0, 0xC00);
+ MI_CpuFill8(UNK_021C59F0->unk054, 0, 0xC00);
}
THUMB_FUNC void FUN_0202E56C(u32 param0)
{
- UNK_021C59E8.unk8->unkDAD_3 = (u8)param0;
+ UNK_021C59F0->unkDAD_3 = (u8)param0;
}
THUMB_FUNC void FUN_0202E594()
{
- UNK_021C59E8.unk8->unkCB4 = 0;
+ UNK_021C59F0->unkCB4 = 0;
- UNK_021C59E8.unk8->unkDAD_0 = 0;
+ UNK_021C59F0->unkDAD_0 = 0;
- UNK_021C59E8.unk8->unkDAD_2 = 0;
+ UNK_021C59F0->unkDAD_2 = 0;
- UNK_021C59E8.unk8->unkDAA = 0;
+ UNK_021C59F0->unkDAA = 0;
- UNK_021C59E8.unk8->unkDAD_4 = 0;
+ UNK_021C59F0->unkDAD_4 = 0;
- UNK_021C59E8.unk8->unkDAC = 0;
+ UNK_021C59F0->unkDAC = 0;
- UNK_021C59E8.unk8->unkDAB = 0;
+ UNK_021C59F0->unkDAB = 0;
}
THUMB_FUNC BOOL FUN_0202E5F8(u32 param0, u32 param1, u32 param2)
@@ -274,13 +270,13 @@ THUMB_FUNC BOOL FUN_0202E5F8(u32 param0, u32 param1, u32 param2)
FUN_0202E56C(param1);
FUN_0202D2F4();
- if (UNK_021C59E8.unk8->unkDAB == 0)
+ if (UNK_021C59F0->unkDAB == 0)
{
FUN_0202D0A0(FUN_020303BC, 0xe);
- UNK_021C59E8.unk8->unkDAB = 1;
+ UNK_021C59F0->unkDAB = 1;
}
- UNK_021C59E8.unk8->unkDAD_5 = (u8)param2;
+ UNK_021C59F0->unkDAD_5 = (u8)param2;
if (FUN_0202CBD4() == 1 && FUN_0202CBFC() != 0)
{
return TRUE;
@@ -298,10 +294,10 @@ THUMB_FUNC u32 FUN_0202E66C(u32 param0, u32 param1)
FUN_0202E538();
}
- if (UNK_021C59E8.unk8->unkDAB == 0)
+ if (UNK_021C59F0->unkDAB == 0)
{
FUN_0202D0A0(FUN_02030238, 0xe);
- UNK_021C59E8.unk8->unkDAB = 1;
+ UNK_021C59F0->unkDAB = 1;
}
if (FUN_0202CBD4() == 1)
@@ -319,23 +315,23 @@ THUMB_FUNC u32 FUN_0202E66C(u32 param0, u32 param1)
THUMB_FUNC u32 FUN_0202E6F0()
{
- if (UNK_021C59E8.unk8 == NULL)
+ if (UNK_021C59F0 == NULL)
{
return 1;
}
- switch (UNK_021C59E8.unk8->unkDAC)
+ switch (UNK_021C59F0->unkDAC)
{
case 0:
if (FUN_0202D21C() != 0)
{
FUN_0202C770();
- UNK_021C59E8.unk8->unkDAC = 1;
+ UNK_021C59F0->unkDAC = 1;
}
else if (FUN_0202D1E4() == 0)
{
FUN_0202D100();
- UNK_021C59E8.unk8->unkDAC = 2;
+ UNK_021C59F0->unkDAC = 2;
}
break;
@@ -343,7 +339,7 @@ THUMB_FUNC u32 FUN_0202E6F0()
if (FUN_0202D1E4() == 0)
{
FUN_0202D100();
- UNK_021C59E8.unk8->unkDAC = 2;
+ UNK_021C59F0->unkDAC = 2;
}
break;
case 2:
@@ -354,7 +350,7 @@ THUMB_FUNC u32 FUN_0202E6F0()
if (FUN_0202D200() != 0)
{
- UNK_021C59E8.unk8->unkDAC = 1;
+ UNK_021C59F0->unkDAC = 1;
}
break;
}
@@ -364,9 +360,9 @@ THUMB_FUNC u32 FUN_0202E6F0()
THUMB_FUNC BOOL FUN_0202E784()
{
- if (UNK_021C59E8.unk8 != NULL && UNK_021C59E8.unk8->unkDAA == 0)
+ if (UNK_021C59F0 != NULL && UNK_021C59F0->unkDAA == 0)
{
- UNK_021C59E8.unk8->unkDAA = 1;
+ UNK_021C59F0->unkDAA = 1;
FUN_0202D100();
return TRUE;
}
@@ -376,26 +372,26 @@ THUMB_FUNC BOOL FUN_0202E784()
THUMB_FUNC void FUN_0202E7B0(u32 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
if (param0 != 0)
{
- UNK_021C59E8.unk8->unkDAA = 2;
+ UNK_021C59F0->unkDAA = 2;
return;
}
- UNK_021C59E8.unk8->unkDAA = 0;
+ UNK_021C59F0->unkDAA = 0;
FUN_0202E500();
}
}
THUMB_FUNC void FUN_0202E7D8()
{
- FreeToHeap(UNK_021C59E8.unk8->unkCBC);
- FreeToHeap(UNK_021C59E8.unk8->unkCA4);
- FreeToHeap(UNK_021C59E8.unk8);
+ FreeToHeap(UNK_021C59F0->unkCBC);
+ FreeToHeap(UNK_021C59F0->unkCA4);
+ FreeToHeap(UNK_021C59F0);
- UNK_021C59E8.unk8 = NULL;
+ UNK_021C59F0 = NULL;
}
THUMB_FUNC u32 FUN_0202E810()
@@ -408,7 +404,7 @@ THUMB_FUNC u32 FUN_0202E810()
u32 count = 0;
for (int i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] != 0)
+ if (UNK_021C59F0->unkC84[i] != 0)
{
count++;
}
@@ -423,7 +419,7 @@ THUMB_FUNC s32 FUN_0202E844(u32 param0)
u32 count = 0;
for (i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
continue;
}
@@ -442,25 +438,25 @@ THUMB_FUNC s32 FUN_0202E844(u32 param0)
THUMB_FUNC u8 FUN_0202E878()
{
- return UNK_021C59E8.unk8->unkCB4;
+ return UNK_021C59F0->unkCB4;
}
THUMB_FUNC void FUN_0202E88C()
{
- UNK_021C59E8.unk8->unkCB4 = 0;
+ UNK_021C59F0->unkCB4 = 0;
}
THUMB_FUNC s32 FUN_0202E8A0(s32 param0)
{
- if (UNK_021C59E8.unk8->unkC84[param0] != 0)
+ if (UNK_021C59F0->unkC84[param0] != 0)
{
- if (UNK_021C59E8.unk8->unk054[param0].unk50.unk06 == 0)
+ if (UNK_021C59F0->unk054[param0].unk50.unk06 == 0)
{
return 1;
}
else
{
- return UNK_021C59E8.unk8->unk054[param0].unk50.unk06;
+ return UNK_021C59F0->unk054[param0].unk50.unk06;
}
}
@@ -490,7 +486,7 @@ THUMB_FUNC s32 FUN_0202E8F4()
for (int i = 0xf; i >= 0; i--)
{
- if (UNK_021C59E8.unk8->unkC84[i] != 0 && FUN_0202EFE4(UNK_021C59E8.unk8->unk054[i].unk04))
+ if (UNK_021C59F0->unkC84[i] != 0 && FUN_0202EFE4(UNK_021C59F0->unk054[i].unk04))
{
s32 ret2 = FUN_0202E8A0(i);
if (ret2 > 1 && ret2 < 8)
@@ -512,7 +508,7 @@ THUMB_FUNC s32 FUN_0202E950()
for (int i = 0xf; i >= 0; i--)
{
- if (UNK_021C59E8.unk8->unkC84[i] != 0 && FUN_0202EFE4(UNK_021C59E8.unk8->unk054[i].unk04))
+ if (UNK_021C59F0->unkC84[i] != 0 && FUN_0202EFE4(UNK_021C59F0->unk054[i].unk04))
{
return i;
@@ -534,7 +530,7 @@ THUMB_FUNC void FUN_0202E9AC(u32 param0, struct PlayerData *player_data)
u32 count = 0;
for (i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
continue;
}
@@ -561,14 +557,14 @@ THUMB_FUNC u32 FUN_0202E9E8(u32 param0)
if (FUN_0202CBD4() == 1)
{
s32 ret = FUN_02033534();
- UNK_021C59E8.unk8->unkDA8 = (u8)UNK_021C59E8.unk8->unk054[param0].unk36;
+ UNK_021C59F0->unkDA8 = (u8)UNK_021C59F0->unk054[param0].unk36;
if (FUN_0202D8B0(ret) != 0)
{
- FUN_0202C4D8(1, UNK_021C59E8.unk8->unk054[param0].unk04, 0);
+ FUN_0202C4D8(1, UNK_021C59F0->unk054[param0].unk04, 0);
}
else
{
- FUN_0202D034(1, &UNK_021C59E8.unk8->unk054[param0]);
+ FUN_0202D034(1, &UNK_021C59F0->unk054[param0]);
}
return 1;
@@ -581,20 +577,20 @@ THUMB_FUNC void FUN_0202EA54()
{
for (int i = 0; i < 0x10; i++)
{
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
continue;
}
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
continue;
}
- UNK_021C59E8.unk8->unkC84[i]--;
+ UNK_021C59F0->unkC84[i]--;
- if (UNK_021C59E8.unk8->unkC84[i] == 0)
+ if (UNK_021C59F0->unkC84[i] == 0)
{
- UNK_021C59E8.unk8->unkCB4 = 1;
+ UNK_021C59F0->unkCB4 = 1;
}
}
}
@@ -606,48 +602,48 @@ THUMB_FUNC void FUN_0202EA9C()
if (res != 0xf)
{
- struct UnkStruct_0202E29C_sub2 *res = &UNK_021C59E8.unk8->unkCC4;
+ struct UnkStruct_0202E29C_sub2 *res = &UNK_021C59F0->unkCC4;
GF_ASSERT((s32)FUN_02023AC4() <= 0x20);
GF_ASSERT(PlayerProfile_sizeof() == 0x20);
MI_CpuCopy8(player_data, &res->unk08.unk08, PlayerProfile_sizeof());
- MI_CpuCopy8(UNK_021C59E8.unk8->unkCBC, res->unk08.unk28, FUN_02023AC4());
+ MI_CpuCopy8(UNK_021C59F0->unkCBC, res->unk08.unk28, FUN_02023AC4());
res->unk00 = PlayerProfile_GetTrainerID(player_data);
res->unk04 = (u8)FUN_02033534();
res->unk05 = FUN_0203354C();
- MI_CpuCopy8(&UNK_021C59E8.unk8->unkCA8, &res->unk08.unk00, sizeof(struct MailMessage));
+ MI_CpuCopy8(&UNK_021C59F0->unkCA8, &res->unk08.unk00, sizeof(struct MailMessage));
res->unk08.unk4C = (u8)FUN_0202D358();
}
else
{
- struct UnkStruct_0202E29C_sub2 *res = &UNK_021C59E8.unk8->unkCC4;
+ struct UnkStruct_0202E29C_sub2 *res = &UNK_021C59F0->unkCC4;
res->unk00 = PlayerProfile_GetTrainerID(player_data);
res->unk04 = (u8)FUN_02033534();
res->unk05 = FUN_0203354C();
- MI_CpuCopy8(&UNK_021C59E8.unk8->unk000, &res->unk08, sizeof(struct UnkStruct_0202E29C_sub3));
+ MI_CpuCopy8(&UNK_021C59F0->unk000, &res->unk08, sizeof(struct UnkStruct_0202E29C_sub3));
}
- DC_FlushRange(&UNK_021C59E8.unk8->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
- FUN_0202CB7C(&UNK_021C59E8.unk8->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
+ DC_FlushRange(&UNK_021C59F0->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
+ FUN_0202CB7C(&UNK_021C59F0->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
}
THUMB_FUNC void FUN_0202EB7C()
{
- struct UnkStruct_0202E29C_sub2 *r4 = &UNK_021C59E8.unk8->unkCC4;
+ struct UnkStruct_0202E29C_sub2 *r4 = &UNK_021C59F0->unkCC4;
if (r4->unk06 != FUN_0202EDB8())
{
r4->unk06 = (u8)FUN_0202EDB8();
- DC_FlushRange(&UNK_021C59E8.unk8->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
- FUN_0202CB7C(&UNK_021C59E8.unk8->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
+ DC_FlushRange(&UNK_021C59F0->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
+ FUN_0202CB7C(&UNK_021C59F0->unkCC4, sizeof(struct UnkStruct_0202E29C_sub2));
- FUN_0202D240(&UNK_021C59E8.unk8->unkCC4,
+ FUN_0202D240(&UNK_021C59F0->unkCC4,
sizeof(struct UnkStruct_0202E29C_sub2),
- UNK_021C59E8.unk8->unkCC0,
- UNK_021C59E8.unk0);
+ UNK_021C59F0->unkCC0,
+ UNK_021C59E8);
}
}
@@ -657,20 +653,20 @@ THUMB_FUNC void FUN_0202EBD0(u16 param0)
FUN_0202DF54();
FUN_0202EB7C();
- if (FUN_0202D19C() == 0 && FUN_0202EE24() == 0 && UNK_021C59E8.unk8->unkDAD_2)
+ if (FUN_0202D19C() == 0 && FUN_0202EE24() == 0 && UNK_021C59F0->unkDAD_2)
{
- UNK_021C59E8.unk8->unkDAD_0 = 1;
+ UNK_021C59F0->unkDAD_0 = 1;
}
- if (UNK_021C59E8.unk8->unkDA6 == 0xFFFF)
+ if (UNK_021C59F0->unkDA6 == 0xFFFF)
{
- UNK_021C59E8.unk8->unkDA6 = param0;
+ UNK_021C59F0->unkDA6 = param0;
}
- if (UNK_021C59E8.unk8->unkDAD_1 &&
- UNK_021C59E8.unk8->unkDA6 > param0)
+ if (UNK_021C59F0->unkDAD_1 &&
+ UNK_021C59F0->unkDA6 > param0)
{
- UNK_021C59E8.unk8->unkDAD_0 = 1;
+ UNK_021C59F0->unkDAD_0 = 1;
}
if (FUN_0202CBE8() == 25)
@@ -681,24 +677,24 @@ THUMB_FUNC void FUN_0202EBD0(u16 param0)
switch (r5)
{
case 0:
- if (UNK_021C59E8.unk8->unkDAA == 1)
+ if (UNK_021C59F0->unkDAA == 1)
{
FUN_0202E7D8();
return;
}
- else if (UNK_021C59E8.unk8->unkDAA == 2)
+ else if (UNK_021C59F0->unkDAA == 2)
{
- UNK_021C59E8.unk8->unkDAA = 3;
+ UNK_021C59F0->unkDAA = 3;
}
break;
case 1:
- if (UNK_021C59E8.unk8->unkDAA == 1 && FUN_0202D178() != 0)
+ if (UNK_021C59F0->unkDAA == 1 && FUN_0202D178() != 0)
{
return;
}
- if (UNK_021C59E8.unk8->unkDAA == 2 && FUN_0202D178() != 0)
+ if (UNK_021C59F0->unkDAA == 2 && FUN_0202D178() != 0)
{
return;
}
@@ -708,41 +704,41 @@ THUMB_FUNC void FUN_0202EBD0(u16 param0)
case 8:
case 9:
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- UNK_021C59E8.unk8->unkDAD_0 = 1;
+ UNK_021C59F0->unkDAD_0 = 1;
return;
}
break;
case 7:
u16 r0 = FUN_0202CDA4();
- if (UNK_021C59E8.unk8->unkDA9 == 0)
+ if (UNK_021C59F0->unkDA9 == 0)
{
- UNK_021C59E8.unk8->unkDA4 = r0;
- UNK_021C59E8.unk8->unkDA9 = 5;
+ UNK_021C59F0->unkDA4 = r0;
+ UNK_021C59F0->unkDA9 = 5;
}
else
{
- UNK_021C59E8.unk8->unkDA9--;
+ UNK_021C59F0->unkDA9--;
}
- u16 r5 = UNK_021C59E8.unk8->unkDA4;
- if (UNK_021C59E8.unk8->unkDAD_3)
+ u16 r5 = UNK_021C59F0->unkDA4;
+ if (UNK_021C59F0->unkDAD_3)
{
- UNK_021C59E8.unk0++;
+ UNK_021C59E8++;
}
FUN_0202EA9C();
FUN_0202CF84(0,
- UNK_021C59E8.unk0,
+ UNK_021C59E8,
r5,
FUN_0202D858((u16)FUN_02033534()),
FUN_0202EEE8((u16)FUN_02033534()),
- UNK_021C59E8.unk8->unkDAD_5);
+ UNK_021C59F0->unkDAD_5);
- UNK_021C59E8.unk8->unkDA8 = (u8)r5;
+ UNK_021C59F0->unkDA8 = (u8)r5;
break;
}
@@ -750,7 +746,7 @@ THUMB_FUNC void FUN_0202EBD0(u16 param0)
THUMB_FUNC void FUN_0202ED70(u16 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
FUN_0202EBD0(param0);
}
@@ -758,7 +754,7 @@ THUMB_FUNC void FUN_0202ED70(u16 param0)
THUMB_FUNC u32 FUN_0202ED84(u16 param0)
{
- if (UNK_021C59E8.unk8 == NULL)
+ if (UNK_021C59F0 == NULL)
{
return 0;
}
@@ -792,9 +788,9 @@ THUMB_FUNC u32 FUN_0202EDB8()
THUMB_FUNC BOOL FUN_0202EDD8()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- if (UNK_021C59E8.unk8->unkDAA == 3)
+ if (UNK_021C59F0->unkDAA == 3)
{
return TRUE;
}
@@ -805,7 +801,7 @@ THUMB_FUNC BOOL FUN_0202EDD8()
THUMB_FUNC BOOL FUN_0202EDF8()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
return TRUE;
}
@@ -815,7 +811,7 @@ THUMB_FUNC BOOL FUN_0202EDF8()
THUMB_FUNC u32 FUN_0202EE0C()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
return FUN_0202D1C8();
}
@@ -825,7 +821,7 @@ THUMB_FUNC u32 FUN_0202EE0C()
THUMB_FUNC u32 FUN_0202EE24()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
return FUN_0202CB8C() & 0xFFFE;
}
@@ -845,7 +841,7 @@ THUMB_FUNC BOOL FUN_0202EE44()
THUMB_FUNC BOOL FUN_0202EE60()
{
- if (UNK_021C59E8.unk8 != NULL && UNK_021C59E8.unk8->unkDAD_0)
+ if (UNK_021C59F0 != NULL && UNK_021C59F0->unkDAD_0)
{
return TRUE;
}
@@ -855,19 +851,19 @@ THUMB_FUNC BOOL FUN_0202EE60()
THUMB_FUNC void FUN_0202EE84(u32 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- UNK_021C59E8.unk8->unkDAD_2 = (u8)param0;
+ UNK_021C59F0->unkDAD_2 = (u8)param0;
}
}
THUMB_FUNC void FUN_0202EEB0(u32 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- UNK_021C59E8.unk8->unkDAD_1 = (u8)param0;
+ UNK_021C59F0->unkDAD_1 = (u8)param0;
- UNK_021C59E8.unk8->unkDA6 = 0xFFFF;
+ UNK_021C59F0->unkDA6 = 0xFFFF;
}
}
@@ -891,11 +887,11 @@ THUMB_FUNC u32 FUN_0202EEE8(u16 param0)
THUMB_FUNC struct UnkStruct_0202E29C_sub *FUN_0202EF18(u32 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- if (UNK_021C59E8.unk8->unkC84[param0] != 0)
+ if (UNK_021C59F0->unkC84[param0] != 0)
{
- return &UNK_021C59E8.unk8->unk054[param0];
+ return &UNK_021C59F0->unk054[param0];
}
}
@@ -904,11 +900,11 @@ THUMB_FUNC struct UnkStruct_0202E29C_sub *FUN_0202EF18(u32 param0)
THUMB_FUNC struct UnkStruct_0202E29C_sub4 *FUN_0202EF44(s32 param0)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- if (UNK_021C59E8.unk8->unkC84[param0] != 0)
+ if (UNK_021C59F0->unkC84[param0] != 0)
{
- return &UNK_021C59E8.unk8->unk054[param0].unk50;
+ return &UNK_021C59F0->unk054[param0].unk50;
}
}
@@ -917,63 +913,49 @@ THUMB_FUNC struct UnkStruct_0202E29C_sub4 *FUN_0202EF44(s32 param0)
THUMB_FUNC struct PlayerData *FUN_0202EF70()
{
- return UNK_021C59E8.unk8->unkCB8;
+ return UNK_021C59F0->unkCB8;
}
THUMB_FUNC struct PlayerData *FUN_0202EF84(int param0)
{
- if (UNK_021C59E8.unk8->unkC84[param0] == 0)
+ if (UNK_021C59F0->unkC84[param0] == 0)
{
return NULL;
}
- struct UnkStruct_0202E29C_sub4 *r0 = &UNK_021C59E8.unk8->unk054[param0].unk50;
+ struct UnkStruct_0202E29C_sub4 *r0 = &UNK_021C59F0->unk054[param0].unk50;
return &r0->unk10;
}
THUMB_FUNC void FUN_0202EFAC(u8 *param0, s32 param1)
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
GF_ASSERT(param1 < 8);
- MI_CpuCopy8(param0, UNK_021C59E8.unk8->unkC54[param1], 6);
+ MI_CpuCopy8(param0, UNK_021C59F0->unkC54[param1], 6);
}
}
#ifdef NONMATCHING
THUMB_FUNC BOOL FUN_0202EFE4(u8 *param0)
{
-
+ u8 (*ptr)[6] = UNK_021C59F0->unkC54;
for (int i = 0; i < 8; i++)
{
- if (UNK_021C59E8.unk8->unkC54[i][0] != param0[0])
- {
+ if (ptr[i][0] != param0[0])
continue;
- }
-
- if (UNK_021C59E8.unk8->unkC54[i][1] != param0[1])
- {
+ if (ptr[i][1] != param0[1])
continue;
- }
- if (UNK_021C59E8.unk8->unkC54[i][2] != param0[2])
- {
+ if (ptr[i][2] != param0[2])
continue;
- }
- if (UNK_021C59E8.unk8->unkC54[i][3] != param0[3])
- {
+ if (ptr[i][3] != param0[3])
continue;
- }
- if (UNK_021C59E8.unk8->unkC54[i][4] != param0[4])
- {
+ if (ptr[i][4] != param0[4])
continue;
- }
- if (UNK_021C59E8.unk8->unkC54[i][5] != param0[5])
- {
+ if (ptr[i][5] != param0[5])
continue;
- }
-
return TRUE;
}
@@ -1031,9 +1013,9 @@ _0202F026:
THUMB_FUNC u32 FUN_0202F03C()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- return UNK_021C59E8.unk8->unkDAD_4;
+ return UNK_021C59F0->unkDAD_4;
}
return 0;
@@ -1041,29 +1023,29 @@ THUMB_FUNC u32 FUN_0202F03C()
THUMB_FUNC void FUN_0202F05C()
{
- if (UNK_021C59E8.unk8 != NULL)
+ if (UNK_021C59F0 != NULL)
{
- UNK_021C59E8.unk8->unkDAD_4 = 1;
+ UNK_021C59F0->unkDAD_4 = 1;
}
}
THUMB_FUNC void FUN_0202F078(struct MailMessage *mail_message)
{
- MI_CpuCopy8(mail_message, &UNK_021C59E8.unk8->unkCA8, sizeof(struct MailMessage));
+ MI_CpuCopy8(mail_message, &UNK_021C59F0->unkCA8, sizeof(struct MailMessage));
}
THUMB_FUNC void FUN_0202F094(void *param0)
{
- MI_CpuCopy8(param0, UNK_021C59E8.unk8->unkCBC, FUN_02023AC4());
+ MI_CpuCopy8(param0, UNK_021C59F0->unkCBC, FUN_02023AC4());
}
THUMB_FUNC void FUN_0202F0B8()
{
FUN_0202EA9C();
- FUN_0202D240(&UNK_021C59E8.unk8->unkCC4,
+ FUN_0202D240(&UNK_021C59F0->unkCC4,
sizeof(struct UnkStruct_0202E29C_sub2),
- UNK_021C59E8.unk8->unkCC0,
- UNK_021C59E8.unk0);
+ UNK_021C59F0->unkCC0,
+ UNK_021C59E8);
}
THUMB_FUNC u32 FUN_0202F0DC(u8 param0)
@@ -1089,15 +1071,15 @@ THUMB_FUNC BOOL FUN_0202F104()
THUMB_FUNC void FUN_0202F10C(struct UnkStruct_0202E29C_sub3 *param0)
{
- MI_CpuCopy8(param0, &UNK_021C59E8.unk8->unk000, sizeof(struct UnkStruct_0202E29C_sub3));
+ MI_CpuCopy8(param0, &UNK_021C59F0->unk000, sizeof(struct UnkStruct_0202E29C_sub3));
FUN_0202F0B8();
}
THUMB_FUNC u8 *FUN_0202F124(u32 param0)
{
- if (UNK_021C59E8.unk8 != NULL && UNK_021C59E8.unk8->unkC84[param0] != 0)
+ if (UNK_021C59F0 != NULL && UNK_021C59F0->unkC84[param0] != 0)
{
- struct UnkStruct_0202E29C_sub4 *r0 = &UNK_021C59E8.unk8->unk054[param0].unk50;
+ struct UnkStruct_0202E29C_sub4 *r0 = &UNK_021C59F0->unk054[param0].unk50;
return r0->unk08;
}
diff --git a/arm9/src/unk_0206015C.c b/arm9/src/unk_0206015C.c
index 3d295156..a217f52c 100644
--- a/arm9/src/unk_0206015C.c
+++ b/arm9/src/unk_0206015C.c
@@ -111,7 +111,7 @@ THUMB_FUNC BOOL FUN_02060194(struct UnkStruct_0204639C *unkStruct0)
case 5:
unkStruct1->unkE += 1;
- if (unkStruct1->unkE < 0x3c && !(gMain.unk48 & 1))
+ if (unkStruct1->unkE < 0x3c && !(gMain.newKeys & 1))
break;
MOD06_02245198(unkStruct1->unkD, unkStruct1->unk4);
diff --git a/include/GX_layers.h b/include/GX_layers.h
index e94fb4ec..d6afc743 100644
--- a/include/GX_layers.h
+++ b/include/GX_layers.h
@@ -20,14 +20,14 @@ typedef enum {
} GX_LayerToggle;
-THUMB_FUNC void GX_SetBanks(const struct GraphicsBanks *banks);
-THUMB_FUNC void GX_DisableEngineALayers();
-THUMB_FUNC void GX_EngineAToggleLayers(u32 layer_mask, GX_LayerToggle layer_toggle);
-THUMB_FUNC void GX_SetEngineALayers(u32 layer_mask);
-THUMB_FUNC void GX_DisableEngineBLayers();
-THUMB_FUNC void GX_EngineBToggleLayers(u32 layer_mask, GX_LayerToggle layer_toggle);
-THUMB_FUNC void GX_BothDispOn();
-THUMB_FUNC void GX_SwapDisplay();
-THUMB_FUNC u32 GX_GetEngineALayers();
+void GX_SetBanks(const struct GraphicsBanks *banks);
+void GX_DisableEngineALayers();
+void GX_EngineAToggleLayers(u32 layer_mask, GX_LayerToggle layer_toggle);
+void GX_SetEngineALayers(u32 layer_mask);
+void GX_DisableEngineBLayers();
+void GX_EngineBToggleLayers(u32 layer_mask, GX_LayerToggle layer_toggle);
+void GX_BothDispOn();
+void GX_SwapDisplay();
+u32 GX_GetEngineALayers();
#endif //POKEDIAMOND_GX_LAYERS_H
diff --git a/include/error_message_reset.h b/include/error_message_reset.h
index d12cbf33..c3a3dd6a 100644
--- a/include/error_message_reset.h
+++ b/include/error_message_reset.h
@@ -33,7 +33,7 @@ struct GraphicsModes {
};
-THUMB_FUNC void VBlankHandler();
-THUMB_FUNC void PrintErrorMessageAndReset();
+void VBlankHandler();
+void PrintErrorMessageAndReset();
#endif //POKEDIAMOND_ERROR_MESSAGE_RESET_H
diff --git a/include/font.h b/include/font.h
new file mode 100644
index 00000000..e5e64e88
--- /dev/null
+++ b/include/font.h
@@ -0,0 +1,6 @@
+#ifndef POKEDIAMOND_FONT_H
+#define POKEDIAMOND_FONT_H
+
+extern s32 GetFontAttribute(u8 fontId, s32 attr);
+
+#endif // POKEDIAMOND_FONT_H
diff --git a/include/heap.h b/include/heap.h
index 69aedd9e..de1f5f18 100644
--- a/include/heap.h
+++ b/include/heap.h
@@ -17,21 +17,21 @@ struct UnkStruct_020166C8
};
-THUMB_FUNC void FUN_020166C8(u32 *param0, u32 param1, u32 param2, u32 pre_size);
-THUMB_FUNC s32 FUN_020167F4();
-THUMB_FUNC u32 FUN_0201681C(u32 param0, u32 heap_id, u32 param2);
-THUMB_FUNC u32 FUN_02016828(u32 param0, u32 param1, u32 param2);
-THUMB_FUNC u32 FUN_02016834(u32 param0, u32 param1, u32 param2, s32 param3);
-THUMB_FUNC void FUN_020168D0(u32 heap_id);
-THUMB_FUNC u32 *FUN_02016944(void *param0, u32 param1, s32 param2, u32 param3);
-THUMB_FUNC void FUN_02016988();
+void FUN_020166C8(u32 *param0, u32 param1, u32 param2, u32 pre_size);
+s32 FUN_020167F4();
+u32 FUN_0201681C(u32 param0, u32 heap_id, u32 param2);
+u32 FUN_02016828(u32 param0, u32 param1, u32 param2);
+u32 FUN_02016834(u32 param0, u32 param1, u32 param2, s32 param3);
+void FUN_020168D0(u32 heap_id);
+u32 *FUN_02016944(void *param0, u32 param1, s32 param2, u32 param3);
+void FUN_02016988();
void *AllocFromHeap(u32 heap_id, u32 size);
void *AllocFromHeapAtEnd(u32 heap_id, u32 size);
void FreeToHeap(void *ptr);
-void FUN_02016A8C(u32 heap_id, void * ptr);
-THUMB_FUNC u32 FUN_02016AF8(u32 param0);
-THUMB_FUNC void FUN_02016B20(u32 param0, u32 param1, u32 param2);
-THUMB_FUNC void FUN_02016B44(void *ptr, u32 param1);
-THUMB_FUNC u32 FUN_02016B90(u32 param0);
+void FreeToHeapExplicit(u32 heap_id, void * ptr);
+u32 FUN_02016AF8(u32 param0);
+void FUN_02016B20(u32 param0, u32 param1, u32 param2);
+void FUN_02016B44(void *ptr, u32 param1);
+u32 FUN_02016B90(u32 param0);
#endif //POKEDIAMOND_HEAP_H
diff --git a/include/list_menu.h b/include/list_menu.h
new file mode 100644
index 00000000..3f60c6f2
--- /dev/null
+++ b/include/list_menu.h
@@ -0,0 +1,78 @@
+#ifndef POKEDIAMOND_LIST_MENU_H
+#define POKEDIAMOND_LIST_MENU_H
+
+#include "list_menu_cursor.h"
+
+#define LIST_HEADER -3
+#define LIST_CANCEL -2
+#define LIST_NOTHING_CHOSEN -1
+
+#define LIST_NO_MULTIPLE_SCROLL 0
+#define LIST_MULTIPLE_SCROLL_DPAD 1
+#define LIST_MULTIPLE_SCROLL_L_R 2
+
+struct ListMenu;
+
+struct ListMenuItem
+{
+ const u16 * text;
+ s32 index;
+};
+
+// TODO: Document remaining fields.
+// A lot of these are named based on similar fields in gen 3.
+
+typedef void (*LM_MoveCursorFunc_t)(struct ListMenu *list, s32 index, u8 onInit);
+typedef void (*LM_ItemPrintFunc_t)(struct ListMenu *list, s32 index, u8 y);
+
+struct ListMenuTemplate
+{
+ /*0x00*/ struct ListMenuItem * items;
+ /*0x04*/ LM_MoveCursorFunc_t moveCursorFunc;
+ /*0x08*/ LM_ItemPrintFunc_t itemPrintFunc;
+ /*0x0C*/ struct Window * window;
+ /*0x10*/ u16 totalItems;
+ /*0x12*/ u16 maxShowed;
+ /*0x14*/ u8 header_X;
+ /*0x15*/ u8 item_X;
+ /*0x16*/ u8 cursor_X;
+ /*0x17*/ u8 upText_Y:4;
+ u8 cursorPal:4;
+ /*0x18*/ u8 fillValue:4;
+ u8 cursorShadowPal:4;
+ /*0x1A*/ u16 lettersSpacing:3;
+ u16 itemVerticalPadding:4;
+ u16 scrollMultiple:2;
+ u16 fontId:6;
+ u16 cursorKind:1;
+ /*0x1C*/ u32 unk_1C;
+};
+
+struct ListMenu
+{
+ /*0x00*/ struct ListMenuTemplate template;
+ // ListMenuOverride from gen 3
+ /*0x20*/ u8 cursorPal:4;
+ u8 fillValue:4;
+ /*0x21*/ u8 cursorShadowPal:4;
+ u8 unk_21_4:4;
+ /*0x22*/ u8 lettersSpacing:6;
+ /*0x23*/ u8 unk_23;
+ /*0x24*/ u8 fontId:7;
+ u8 overrideEnabled:1;
+ /*0x28*/ struct ListMenuCursor *cursor;
+ /*0x2c*/ u16 cursorPos;
+ /*0x2e*/ u16 itemsAbove;
+ /*0x30*/ u8 unk_30;
+ /*0x31*/ u8 unk_31;
+ /*0x32*/ u8 taskId;
+ /*0x33*/ u8 unk_33;
+ /*0x34*/ u8 heap_id;
+};
+
+struct ListMenu * ListMenuInit(const struct ListMenuTemplate * template, u16 cursorPos, u16 itemsAbove, u32 heap_id);
+s32 ListMenu_ProcessInput(struct ListMenu * list);
+void DestroyListMenu(struct ListMenu * list, u16 * cursorPos, u16 * itemsAbove);
+void RedrawListMenu(struct ListMenu * list);
+
+#endif // POKEDIAMOND_LIST_MENU_H
diff --git a/include/list_menu_cursor.h b/include/list_menu_cursor.h
new file mode 100644
index 00000000..355c63ec
--- /dev/null
+++ b/include/list_menu_cursor.h
@@ -0,0 +1,17 @@
+#ifndef POKEDIAMOND_LIST_MENU_CURSOR_H
+#define POKEDIAMOND_LIST_MENU_CURSOR_H
+
+#include "window.h"
+
+// TODO: Move to its own header, and fill it out
+struct ListMenuCursor
+{
+ // ???
+};
+
+extern struct ListMenuCursor * ListMenuCursorNew(u32 heap_id);
+extern void ListMenuUpdateCursorObj(struct ListMenuCursor *, struct Window *, u8 x, u8 y);
+extern void ListMenuCursorSetColor(struct ListMenuCursor *, u32);
+extern void DestroyListMenuCursorObj(struct ListMenuCursor *);
+
+#endif // POKEDIAMOND_LIST_MENU_CURSOR_H
diff --git a/include/main.h b/include/main.h
index 2e424e09..9227d9a8 100644
--- a/include/main.h
+++ b/include/main.h
@@ -84,8 +84,8 @@ struct Main
u32 unk3C;
u32 unk40;
u32 unk44;
- u32 unk48;
- u32 unk4C;
+ u32 newKeys;
+ u32 newAndRepeatedKeys;
s32 unk50;
s32 unk54;
s32 unk58;
@@ -104,8 +104,22 @@ struct Main
//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...
+extern PMBackLightSwitch gBacklightTop;
+extern s32 UNK_02016FA4;
+
+struct UnkStruct_02016FA8
+{
+ FSOverlayID unk0;
+ struct UnkStruct_02006234 *unk4;
+ FSOverlayID unk8;
+ const struct Unk21DBE18 * unkC;
+ s32 unk10;
+ s32 unk14;
+ struct SaveBlock2 * unk18;
+
+};
+
+extern struct UnkStruct_02016FA8 UNK_02016FA8;
void NitroMain(void);
diff --git a/include/script_buffers.h b/include/script_buffers.h
index d0fff528..51a02e43 100644
--- a/include/script_buffers.h
+++ b/include/script_buffers.h
@@ -4,6 +4,7 @@
#include "pokemon.h"
#include "pokemon_storage_system.h"
#include "trainer_data.h"
+#include "window.h"
struct UnkStruct_0200AA80_sub_sub
{
@@ -105,7 +106,7 @@ void StringExpandPlaceholders(struct ScrStrBufs * mgr, struct String * dest, str
void ScrStrBufs_ResetBuffers(struct ScrStrBufs * mgr);
struct UnkStruct_0200B870 * MessagePrinter_new(u32 r5, u32 r6, u32 sp4, u32 r4);
void MessagePrinter_delete(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);
+void FUN_0200B9A8(struct UnkStruct_0200B870 * a0, int a1, struct Window * a2, int a3, int a4);
+void FUN_0200B9EC(struct UnkStruct_0200B870 * string, u32 value, u32 n, enum PrintingMode mode, struct Window *window, int x, int y);
#endif //POKEDIAMOND_SCRIPT_BUFFERS_H
diff --git a/include/text.h b/include/text.h
index 40f4d03a..57185a05 100644
--- a/include/text.h
+++ b/include/text.h
@@ -2,52 +2,59 @@
#define POKEDIAMOND_TEXT_H
#include "global.h"
+#include "window.h"
+#include "font.h"
+
+#define CHAR_0 0x00A2
+#define CHAR_1 0x00A3
+#define CHAR_2 0x00A4
+#define CHAR_3 0x00A5
+#define CHAR_4 0x00A6
+#define CHAR_5 0x00A7
+#define CHAR_6 0x00A8
+#define CHAR_7 0x00A9
+#define CHAR_8 0x00AA
+#define CHAR_9 0x00AB
struct TextPrinterTemplate
{
- const u16* currentChar;
- u32 windowId;
- u8 padding[1];
- u8 fontId;
- u8 x;
- u8 y;
- u8 currentX;
- u8 currentY;
- u8 letterSpacing;
- u8 lineSpacing;
- u8 unk;
- u8 fgColor;
- u8 bgColor;
- u8 shadowColor;
- union
- {
- struct
- {
- u16 unk2;
- u8 unk3;
- u8 unk4;
- };
- u32 Unk20; //todo this can't be right
- };
+ const u16* currentChar; // 0
+ struct Window * window; // 4
+ u8 padding[1]; // 8
+ u8 fontId; // 9
+ u8 x; // a
+ u8 y; // b
+ u8 currentX; // c
+ u8 currentY; // d
+ u8 letterSpacing; // e
+ u8 lineSpacing; // f
+ u8 unk; // 10
+ u8 fgColor; // 11
+ u8 bgColor; // 12
+ u8 shadowColor; // 13
+ u16 unk2; // 14
+ u8 unk3; // 16
+ u8 unk4; // 17
};
struct TextPrinter
{
struct TextPrinterTemplate printerTemplate;
- u8 (*callback)(struct TextPrinterTemplate *, u16); // 0x10
+ u8 (*callback)(struct TextPrinterTemplate *, u16); // 0x18
u8 subStructFields[7]; // always cast to struct TextPrinterSubStruct... so why bother
- u8 active;
- u8 state; // 0x1C
- u8 textSpeedBottom:7;
+ // 1c
+ u8 active; // 23
+ u8 state; // 0x24
+ u8 textSpeedBottom:7; // 25
u8 textSpeedTop:1;
- u8 delayCounter;
- u8 scrollDistance;
- u8 minLetterSpacing; // 0x20
+ u8 delayCounter; // 26
+ u8 scrollDistance; // 27
+ u8 minLetterSpacing; // 0x28
u8 Unk29; // used to be japanese, not sure about that anymore
u16 Unk2A;
- void *Unk2C;
+ u16 *Unk2C;
};
struct FontInfo
@@ -69,16 +76,16 @@ BOOL FUN_0201BD44(u32 param0);
void FUN_0201BD5C(void);
u8 FUN_0201BD70(u32 param0);
void FUN_0201BD7C(u32 param0);
-u16 AddTextPrinterParameterized(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u8 (*callback)(struct TextPrinterTemplate *, u16));
-u16 AddTextPrinterParameterized2(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u8 (*callback)(struct TextPrinterTemplate *, u16));
-u16 AddTextPrinterParameterized3(u32 windowId, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u32 letterSpacing, u32 lineSpacing, u8 (*callback)(struct TextPrinterTemplate *, u16));
+u16 AddTextPrinterParameterized(struct Window * window, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u8 (*callback)(struct TextPrinterTemplate *, u16));
+u16 AddTextPrinterParameterized2(struct Window * window, u8 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u8 (*callback)(struct TextPrinterTemplate *, u16));
+u16 AddTextPrinterParameterized3(struct Window * window, u32 fontId, const u16 *str, u32 x, u32 y, u32 speed, u32 colors, u32 letterSpacing, u32 lineSpacing, u8 (*callback)(struct TextPrinterTemplate *, u16));
u16 AddTextPrinter(struct TextPrinterTemplate *printerTemplate, u32 speed, u8 (*callback)(struct TextPrinterTemplate *, u16));
void RunTextPrinter(u32 param0, struct TextPrinter *printer);
u32 RenderFont(struct TextPrinter *printer);
void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor);
void DecompressGlyphTile(const u16 *src, u16 *dst);
void FUN_0201C1A8(struct TextPrinter *printer);
-void *FUN_0201C1B0(void);
+u16 *FUN_0201C1B0(void);
void FUN_0201C1EC(struct TextPrinter *printer, u32 param1, u32 param2, u32 param3);
void FUN_0201C238(struct TextPrinter *printer);
diff --git a/include/text_02054590.h b/include/text_02054590.h
index 725bd9b4..b1ee055a 100644
--- a/include/text_02054590.h
+++ b/include/text_02054590.h
@@ -3,15 +3,16 @@
#include "global.h"
#include "options.h"
+#include "window.h"
void FUN_02054590(u32 param0, u32 param1);
void FUN_020545B8(u32 param0, u32 param1, u32 param2);
-void FUN_02054608(u32 *param0, struct Options *options);
-void FUN_0205464C(u32 *param0);
-u16 FUN_02054658(u8 windowId, const u16 *str, struct Options *options, u8 param3);
-u16 DrawFieldMessage(u8 windowId, const u16 *str, u8 fontId, u32 speed, u8 a4, u32 a5);
+void FUN_02054608(struct Window *param0, struct Options *options);
+void FUN_0205464C(struct Window *param0);
+u16 FUN_02054658(struct Window * window, const u16 *str, struct Options *options, u8 param3);
+u16 DrawFieldMessage(struct Window * window, const u16 *str, u8 fontId, u32 speed, u8 a4, u32 a5);
u8 FUN_020546C8(u32 param0);
void FUN_020546E0(u32 param0, u32 param1, u32 param2, u32 param3);
-void FUN_02054744(u32 *param0, u32 param1, u32 param2);
+void FUN_02054744(struct Window *param0, u32 param1, u32 param2);
#endif //POKEDIAMOND_UNK_02054590_H
diff --git a/include/timer3.h b/include/timer3.h
index be6e1da8..3220c7a3 100644
--- a/include/timer3.h
+++ b/include/timer3.h
@@ -10,12 +10,12 @@ struct Timer3Data
vu64 Timer3Counter;
};
-THUMB_FUNC void Init_Timer3();
-THUMB_FUNC void CountUpTimer3();
-THUMB_FUNC u64 internal_GetTimer3Count();
-THUMB_FUNC u64 GetTimer3Count();
-THUMB_FUNC u64 Timer3CountToMilliSeconds(u64 count);
-THUMB_FUNC u64 Timer3CountToSeconds(u64 count);
+void Init_Timer3();
+void CountUpTimer3();
+u64 internal_GetTimer3Count();
+u64 GetTimer3Count();
+u64 Timer3CountToMilliSeconds(u64 count);
+u64 Timer3CountToSeconds(u64 count);
#endif //POKEDIAMOND_TIMER3_H
diff --git a/include/unk_0200CA44.h b/include/unk_0200CA44.h
index 2e479ab8..6dd208c3 100644
--- a/include/unk_0200CA44.h
+++ b/include/unk_0200CA44.h
@@ -1,10 +1,12 @@
#ifndef POKEDIAMOND_UNK_0200CA44_H
#define POKEDIAMOND_UNK_0200CA44_H
-BOOL FUN_0200CA44(void (*r0)(u32, void *), void * r1, void * r2);
-BOOL FUN_0200CA60(void (*r0)(u32, void *), void * r1, void * r2);
-BOOL FUN_0200CA7C(void (*r0)(u32, void *), void * r1, void * r2);
-BOOL FUN_0200CA98(void (*r0)(u32, void *), void * r1, void * r2);
+#include "text.h"
+
+BOOL FUN_0200CA44(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2);
+BOOL FUN_0200CA60(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2);
+BOOL FUN_0200CA7C(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2);
+BOOL FUN_0200CA98(void (*r0)(u32, struct TextPrinter *), struct TextPrinter * r1, u32 r2);
void FUN_0200CAB4(s32 unk1);
#endif //POKEDIAMOND_UNK_0200CA44_H
diff --git a/include/unk_02015E30.h b/include/unk_02015E30.h
index 6a4d6c15..67a7aaaf 100644
--- a/include/unk_02015E30.h
+++ b/include/unk_02015E30.h
@@ -15,8 +15,8 @@ struct UnkStruct_02015E30
u64 unk18;
};
-THUMB_FUNC void FUN_02015E30();
-THUMB_FUNC void FUN_02015E3C(struct IGT *igt);
-THUMB_FUNC void FUN_02015E60();
+void FUN_02015E30();
+void FUN_02015E3C(struct IGT *igt);
+void FUN_02015E60();
#endif //POKEDIAMOND_UNK_02015E30_H
diff --git a/include/unk_02024E64.h b/include/unk_02024E64.h
index ed1bd447..68e7103c 100644
--- a/include/unk_02024E64.h
+++ b/include/unk_02024E64.h
@@ -14,15 +14,15 @@ struct UnkStruct_02024E64 {
u8 unk74A[2]; // might be padding
};
-THUMB_FUNC u32 FUN_02024E64();
-THUMB_FUNC void FUN_02024E6C(struct UnkStruct_02024E64 *param0);
-THUMB_FUNC struct UnkStruct_02024E64 *FUN_02024EB4(struct SaveBlock2 *sav2);
-THUMB_FUNC void *FUN_02024EC0(struct SaveBlock2 *sav2);
-THUMB_FUNC struct UnkStruct_02024E64 *FUN_02024ECC(struct SaveBlock2 *sav2);
-THUMB_FUNC void *FUN_02024ED8(struct SaveBlock2 *sav2);
-THUMB_FUNC u16 *GetRivalNamePtr(struct UnkStruct_02024E64 *unk);
-THUMB_FUNC void RivalsNameToU16Array(struct UnkStruct_02024E64 *unk, struct String *str);
-THUMB_FUNC u16 *FUN_02024F0C(struct UnkStruct_02024E64 *unk);
-THUMB_FUNC void FUN_02024F18(struct UnkStruct_02024E64 *unk, struct String *str);
+u32 FUN_02024E64();
+void FUN_02024E6C(struct UnkStruct_02024E64 *param0);
+struct UnkStruct_02024E64 *FUN_02024EB4(struct SaveBlock2 *sav2);
+void *FUN_02024EC0(struct SaveBlock2 *sav2);
+struct UnkStruct_02024E64 *FUN_02024ECC(struct SaveBlock2 *sav2);
+void *FUN_02024ED8(struct SaveBlock2 *sav2);
+u16 *GetRivalNamePtr(struct UnkStruct_02024E64 *unk);
+void RivalsNameToU16Array(struct UnkStruct_02024E64 *unk, struct String *str);
+u16 *FUN_02024F0C(struct UnkStruct_02024E64 *unk);
+void FUN_02024F18(struct UnkStruct_02024E64 *unk, struct String *str);
#endif
diff --git a/include/unk_0202D858.h b/include/unk_0202D858.h
index 210821d0..b5845998 100644
--- a/include/unk_0202D858.h
+++ b/include/unk_0202D858.h
@@ -3,8 +3,8 @@
#include "global.h"
-THUMB_FUNC u8 FUN_0202D858(u16 param0);
-THUMB_FUNC u8 FUN_0202D884(u16 param0);
-THUMB_FUNC u32 FUN_0202D8B0(int param0);
+u8 FUN_0202D858(u16 param0);
+u8 FUN_0202D884(u16 param0);
+u32 FUN_0202D8B0(int param0);
#endif // POKEDIAMOND_UNK_0202D858_H
diff --git a/include/unk_0202F150.h b/include/unk_0202F150.h
index 8f5cdd3e..b87bbf0c 100644
--- a/include/unk_0202F150.h
+++ b/include/unk_0202F150.h
@@ -87,100 +87,100 @@ struct UnkStruct0202F150
u8 unk68B;
};
-THUMB_FUNC u32 FUN_0202F150(u32 param0, u32 param1);
-THUMB_FUNC void FUN_0202F2F0();
-THUMB_FUNC void FUN_0202F5A4();
-THUMB_FUNC void FUN_0202F820(int param0);
-THUMB_FUNC void FUN_0202F8D4();
-THUMB_FUNC void FUN_0202F910(int param0);
-THUMB_FUNC BOOL FUN_0202F918(u32 param0, u32 param1, u32 param2, u32 param3);
-THUMB_FUNC u32 FUN_0202F950(u32 param0, u32 param1, u32 param2);
-THUMB_FUNC void FUN_0202F984();
-THUMB_FUNC void FUN_0202F9E0(u32 param0);
-THUMB_FUNC void FUN_0202FA10();
-THUMB_FUNC void FUN_0202FA1C();
-THUMB_FUNC u8 FUN_0202FA28();
-THUMB_FUNC u32 FUN_0202FA48();
-THUMB_FUNC void FUN_0202FA5C();
-THUMB_FUNC u32 FUN_0202FB18(u32 param0);
-THUMB_FUNC void FUN_0202FB20();
-THUMB_FUNC void FUN_0202FB58();
-THUMB_FUNC BOOL FUN_0202FB80();
-THUMB_FUNC void FUN_0202FC60();
-THUMB_FUNC void FUN_0202FC80();
-THUMB_FUNC void FUN_0202FCA8();
-THUMB_FUNC void FUN_0202FCCC();
-THUMB_FUNC u32 FUN_0202FE2C(int param0);
-THUMB_FUNC void FUN_0202FEEC();
-THUMB_FUNC void FUN_02030074();
-THUMB_FUNC void FUN_02030238(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_0203026C(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_020303BC(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_020303F4(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_020304D4(u32 param0);
-THUMB_FUNC void FUN_020304F0(u32 param0);
-THUMB_FUNC void FUN_0203050C();
-THUMB_FUNC void FUN_02030674();
-THUMB_FUNC void FUN_020307A8();
-THUMB_FUNC void FUN_020307BC();
-THUMB_FUNC void FUN_020307D0();
-THUMB_FUNC u32 FUN_020307E4(u8 *param0, u32 param1);
-THUMB_FUNC void FUN_0203086C();
-THUMB_FUNC u32 FUN_02030870(u8 *param0);
-THUMB_FUNC u32 FUN_02030930(u8 *param0);
-THUMB_FUNC void FUN_02030A00(u8 *param0);
-THUMB_FUNC u32 FUN_02030A78(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC u32 FUN_02030ADC(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC u32 FUN_02030B3C(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC u32 FUN_02030BC4(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC u32 FUN_02030C4C(u32 param0, u8 *param1);
-THUMB_FUNC int FUN_02030C58();
-THUMB_FUNC void FUN_02030C70(
+u32 FUN_0202F150(u32 param0, u32 param1);
+void FUN_0202F2F0();
+void FUN_0202F5A4();
+void FUN_0202F820(int param0);
+void FUN_0202F8D4();
+void FUN_0202F910(int param0);
+BOOL FUN_0202F918(u32 param0, u32 param1, u32 param2, u32 param3);
+u32 FUN_0202F950(u32 param0, u32 param1, u32 param2);
+void FUN_0202F984();
+void FUN_0202F9E0(u32 param0);
+void FUN_0202FA10();
+void FUN_0202FA1C();
+u8 FUN_0202FA28();
+u32 FUN_0202FA48();
+void FUN_0202FA5C();
+u32 FUN_0202FB18(u32 param0);
+void FUN_0202FB20();
+void FUN_0202FB58();
+BOOL FUN_0202FB80();
+void FUN_0202FC60();
+void FUN_0202FC80();
+void FUN_0202FCA8();
+void FUN_0202FCCC();
+u32 FUN_0202FE2C(int param0);
+void FUN_0202FEEC();
+void FUN_02030074();
+void FUN_02030238(u32 param0, u8 *param1, u32 param2);
+void FUN_0203026C(u32 param0, u8 *param1, u32 param2);
+void FUN_020303BC(u32 param0, u8 *param1, u32 param2);
+void FUN_020303F4(u32 param0, u8 *param1, u32 param2);
+void FUN_020304D4(u32 param0);
+void FUN_020304F0(u32 param0);
+void FUN_0203050C();
+void FUN_02030674();
+void FUN_020307A8();
+void FUN_020307BC();
+void FUN_020307D0();
+u32 FUN_020307E4(u8 *param0, u32 param1);
+void FUN_0203086C();
+u32 FUN_02030870(u8 *param0);
+u32 FUN_02030930(u8 *param0);
+void FUN_02030A00(u8 *param0);
+u32 FUN_02030A78(u32 param0, u8 *param1, u32 param2);
+u32 FUN_02030ADC(u32 param0, u8 *param1, u32 param2);
+u32 FUN_02030B3C(u32 param0, u8 *param1, u32 param2);
+u32 FUN_02030BC4(u32 param0, u8 *param1, u32 param2);
+u32 FUN_02030C4C(u32 param0, u8 *param1);
+int FUN_02030C58();
+void FUN_02030C70(
u32 param0, u32 param1, u32 param2, void *param3, struct UnkStruct0202F150_sub2 *param4);
-THUMB_FUNC void FUN_02030C8C(struct UnkStruct0202F150_sub1 *param0,
+void FUN_02030C8C(struct UnkStruct0202F150_sub1 *param0,
u32 param1,
void *param2,
u32 param3,
struct UnkStruct0202F150_sub2 *param4);
-THUMB_FUNC void FUN_02030DA4();
-THUMB_FUNC void FUN_02030DFC();
-THUMB_FUNC u32 FUN_02030E7C(u16 param0);
-THUMB_FUNC s32 FUN_02030F20();
-THUMB_FUNC BOOL FUN_02030F40();
-THUMB_FUNC void FUN_02030F60(u8 param0);
-THUMB_FUNC u8 FUN_02030F74(u32 param0);
-THUMB_FUNC u32 FUN_02030F88(u32 param0);
-THUMB_FUNC void FUN_02030FA8();
-THUMB_FUNC void FUN_02030FC8();
-THUMB_FUNC u32 FUN_02030FE0();
-THUMB_FUNC void FUN_02031000(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_0203105C(u32 param0, u8 *param1, u32 param2);
-THUMB_FUNC void FUN_02031088();
-THUMB_FUNC void FUN_0203110C(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC void FUN_02031134(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC void FUN_0203115C(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC u16 FUN_02031190();
-THUMB_FUNC u32 FUN_020311D0(u32 param0, u8 *param1);
-THUMB_FUNC u32 FUN_020311DC(u32 param0);
-THUMB_FUNC u32 FUN_020311E8();
-THUMB_FUNC BOOL FUN_020311F0();
-THUMB_FUNC int FUN_02031228(u16 param0);
-THUMB_FUNC int FUN_02031248(u32 param0);
-THUMB_FUNC int FUN_02031258(u32 param0);
-THUMB_FUNC void FUN_02031268(u8 param0);
-THUMB_FUNC u8 FUN_02031280();
-THUMB_FUNC void FUN_0203129C();
-THUMB_FUNC void FUN_020312BC(s64 *param0);
-THUMB_FUNC void FUN_02031354(u32 param0);
-THUMB_FUNC u32 FUN_02031370();
-THUMB_FUNC u32 FUN_02031388();
-THUMB_FUNC void FUN_020313A0(u8 param0);
-THUMB_FUNC void FUN_020313B4(u8 param0, u32 param1);
-THUMB_FUNC u32 FUN_020313CC(u32 param0);
-THUMB_FUNC u32 FUN_020313EC();
-THUMB_FUNC void FUN_02031400(u32 param0);
-THUMB_FUNC u32 FUN_02031438();
-THUMB_FUNC void FUN_02031454();
-THUMB_FUNC void FUN_02031468();
+void FUN_02030DA4();
+void FUN_02030DFC();
+u32 FUN_02030E7C(u16 param0);
+s32 FUN_02030F20();
+BOOL FUN_02030F40();
+void FUN_02030F60(u8 param0);
+u8 FUN_02030F74(u32 param0);
+u32 FUN_02030F88(u32 param0);
+void FUN_02030FA8();
+void FUN_02030FC8();
+u32 FUN_02030FE0();
+void FUN_02031000(u32 param0, u8 *param1, u32 param2);
+void FUN_0203105C(u32 param0, u8 *param1, u32 param2);
+void FUN_02031088();
+void FUN_0203110C(u32 param0, u32 param1, u8 *param2);
+void FUN_02031134(u32 param0, u32 param1, u8 *param2);
+void FUN_0203115C(u32 param0, u32 param1, u8 *param2);
+u16 FUN_02031190();
+u32 FUN_020311D0(u32 param0, u8 *param1);
+u32 FUN_020311DC(u32 param0);
+u32 FUN_020311E8();
+BOOL FUN_020311F0();
+int FUN_02031228(u16 param0);
+int FUN_02031248(u32 param0);
+int FUN_02031258(u32 param0);
+void FUN_02031268(u8 param0);
+u8 FUN_02031280();
+void FUN_0203129C();
+void FUN_020312BC(s64 *param0);
+void FUN_02031354(u32 param0);
+u32 FUN_02031370();
+u32 FUN_02031388();
+void FUN_020313A0(u8 param0);
+void FUN_020313B4(u8 param0, u32 param1);
+u32 FUN_020313CC(u32 param0);
+u32 FUN_020313EC();
+void FUN_02031400(u32 param0);
+u32 FUN_02031438();
+void FUN_02031454();
+void FUN_02031468();
#endif // POKEDIAMOND_UNK_0202F150_H
diff --git a/include/unk_02031480.h b/include/unk_02031480.h
index 975f0796..951a3717 100644
--- a/include/unk_02031480.h
+++ b/include/unk_02031480.h
@@ -6,25 +6,25 @@
#include "heap.h"
#include "unk_0202F150.h"
-THUMB_FUNC void FUN_02031480(u32 heap_id);
-THUMB_FUNC void FUN_020314D0();
-THUMB_FUNC BOOL FUN_020314E8();
-THUMB_FUNC void FUN_020314FC(u8 param0, u32 param1, u8 *param2);
-THUMB_FUNC void FUN_02031560(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC void FUN_02031574(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC void FUN_02031588(u8 param0);
-THUMB_FUNC void FUN_020315A4();
-THUMB_FUNC BOOL FUN_020315D8(u8 param0);
-THUMB_FUNC u8 FUN_020315FC(u8 index);
-THUMB_FUNC void FUN_0203160C(u32 param0, u32 param1, u8 *param2);
-THUMB_FUNC u32 FUN_02031628();
-THUMB_FUNC void FUN_0203162C(u8 param0, u8 param1);
-THUMB_FUNC int FUN_02031640(u32 param0, u8 param1);
-THUMB_FUNC void FUN_02031668();
-THUMB_FUNC void FUN_0203168C();
-THUMB_FUNC BOOL FUN_020316AC(u32 param0, void *param1);
-THUMB_FUNC u8 *FUN_020316E0(int param0);
-THUMB_FUNC void FUN_02031704(u32 param0, u32 param1, void *param2);
-THUMB_FUNC u32 FUN_02031730();
+void FUN_02031480(u32 heap_id);
+void FUN_020314D0();
+BOOL FUN_020314E8();
+void FUN_020314FC(u8 param0, u32 param1, u8 *param2);
+void FUN_02031560(u32 param0, u32 param1, u8 *param2);
+void FUN_02031574(u32 param0, u32 param1, u8 *param2);
+void FUN_02031588(u8 param0);
+void FUN_020315A4();
+BOOL FUN_020315D8(u8 param0);
+u8 FUN_020315FC(u8 index);
+void FUN_0203160C(u32 param0, u32 param1, u8 *param2);
+u32 FUN_02031628();
+void FUN_0203162C(u8 param0, u8 param1);
+int FUN_02031640(u32 param0, u8 param1);
+void FUN_02031668();
+void FUN_0203168C();
+BOOL FUN_020316AC(u32 param0, void *param1);
+u8 *FUN_020316E0(int param0);
+void FUN_02031704(u32 param0, u32 param1, void *param2);
+u32 FUN_02031730();
#endif // POKEDIAMOND_UNK_02031480_H
diff --git a/include/unk_0205FA2C.h b/include/unk_0205FA2C.h
index 19279a6c..418c7077 100644
--- a/include/unk_0205FA2C.h
+++ b/include/unk_0205FA2C.h
@@ -80,16 +80,16 @@ struct UnkCallbackStruct2_0205FA2C
u16 unk14;
};
-THUMB_FUNC u32 FUN_0205FA2C(
+u32 FUN_0205FA2C(
struct UnkCallbackStruct1_0205FA2C *param0, struct UnkSavStruct80 *param1, u32 heap_id);
-THUMB_FUNC u32 FUN_0205FAD8(
+u32 FUN_0205FAD8(
struct UnkCallbackStruct1_0205FA2C *param0, struct UnkSavStruct80 *param1);
-THUMB_FUNC u32 FUN_0205FB34(
+u32 FUN_0205FB34(
struct UnkCallbackStruct1_0205FA2C *param0, struct UnkSavStruct80 *param1, u32 heap_id);
-THUMB_FUNC u32 FUN_0205FBC0(
+u32 FUN_0205FBC0(
struct UnkCallbackStruct1_0205FA2C *param0, struct UnkSavStruct80 *param1);
-THUMB_FUNC int FUN_0205FBE8(struct UnkStruct_0204639C *param0);
-THUMB_FUNC void FUN_0205FC50(struct UnkStruct_0204639C *param0,
+int FUN_0205FBE8(struct UnkStruct_0204639C *param0);
+void FUN_0205FC50(struct UnkStruct_0204639C *param0,
void **param1,
u8 param2,
u8 param3,
@@ -98,24 +98,24 @@ THUMB_FUNC void FUN_0205FC50(struct UnkStruct_0204639C *param0,
u8 param6,
u8 param7);
-THUMB_FUNC u32 FUN_0205FC9C(
+u32 FUN_0205FC9C(
struct UnkCallbackStruct2_0205FA2C *param0, struct UnkSavStruct80 *param1);
-THUMB_FUNC u32 FUN_0205FCC4(
+u32 FUN_0205FCC4(
struct UnkCallbackStruct2_0205FA2C *param0, struct UnkSavStruct80 *param1);
-THUMB_FUNC int FUN_0205FCE8(struct UnkStruct_0204639C *param0);
-THUMB_FUNC void FUN_0205FD38(struct UnkStruct_0204639C *param0, u16 param1, u16 param2, u16 param3);
+int FUN_0205FCE8(struct UnkStruct_0204639C *param0);
+void FUN_0205FD38(struct UnkStruct_0204639C *param0, u16 param1, u16 param2, u16 param3);
-THUMB_FUNC int FUN_0205FD70(struct UnkStruct_0204639C *param0);
-THUMB_FUNC void FUN_0205FDDC(struct UnkStruct_0204639C *param0, u16 param1, u16 param2);
+int FUN_0205FD70(struct UnkStruct_0204639C *param0);
+void FUN_0205FDDC(struct UnkStruct_0204639C *param0, u16 param1, u16 param2);
-THUMB_FUNC u32 FUN_0205FE10(struct SaveBlock2 *sav2);
-THUMB_FUNC u32 FUN_0205FF5C(struct SaveBlock2 *sav2);
-THUMB_FUNC void FUN_02060044(u16 **param0, u32 *param1);
-THUMB_FUNC u32 FUN_02060064(u32 param0);
-THUMB_FUNC u32 FUN_02060070(u32 param0);
-THUMB_FUNC u32 FUN_0206007C(struct SaveBlock2 *sav2);
-THUMB_FUNC u32 FUN_020600A0(struct SaveBlock2 *sav2);
-THUMB_FUNC u32 FUN_020600DC(struct SaveBlock2 *sav2);
-THUMB_FUNC BOOL FUN_02060144(u32 **param0);
+u32 FUN_0205FE10(struct SaveBlock2 *sav2);
+u32 FUN_0205FF5C(struct SaveBlock2 *sav2);
+void FUN_02060044(u16 **param0, u32 *param1);
+u32 FUN_02060064(u32 param0);
+u32 FUN_02060070(u32 param0);
+u32 FUN_0206007C(struct SaveBlock2 *sav2);
+u32 FUN_020600A0(struct SaveBlock2 *sav2);
+u32 FUN_020600DC(struct SaveBlock2 *sav2);
+BOOL FUN_02060144(u32 **param0);
#endif // POKEDIAMOND_UNK_0205FA2C_H
diff --git a/include/unk_0206015C.h b/include/unk_0206015C.h
index e8a312c2..c285fac9 100644
--- a/include/unk_0206015C.h
+++ b/include/unk_0206015C.h
@@ -24,7 +24,7 @@ struct UnkStruct_0204652C
u8 unkE; // some kind of counter?
};
-THUMB_FUNC void FUN_0206015C(struct UnkSavStruct80* savStruct);
-THUMB_FUNC BOOL FUN_02060194(struct UnkStruct_0204639C * unkStruct0);
+void FUN_0206015C(struct UnkSavStruct80* savStruct);
+BOOL FUN_02060194(struct UnkStruct_0204639C * unkStruct0);
#endif //UNK_0206015C_H_GUARD
diff --git a/include/window.h b/include/window.h
new file mode 100644
index 00000000..ed3576fb
--- /dev/null
+++ b/include/window.h
@@ -0,0 +1,26 @@
+#ifndef POKEDIAMOND_WINDOW_H
+#define POKEDIAMOND_WINDOW_H
+
+struct Window
+{
+ u8 * unk_00;
+ u8 unk_04;
+ u8 unk_05;
+ u8 unk_06;
+ u8 width;
+ u8 height;
+ u8 unk_9;
+ u16 unk_A_0:15;
+ u16 unk_A_15:1;
+ void * unk_C;
+};
+
+extern void FillWindowPixelBuffer(struct Window *, u32);
+extern void CopyWindowToVram(struct Window *);
+extern void FillWindowPixelRect(struct Window *, u32 fillValue, u16 x, u16 y, u16 width, u16 height);
+extern void ScrollWindow(struct Window *, u8, u8, u8);
+extern u16 GetWindowWidth(struct Window *);
+extern u16 GetWindowHeight(struct Window *);
+extern void BlitBitmapRectToWindow(struct Window * window, const void * src, u16 srcX, u16 srcY, u16 srcWidth, u16 srcHeight, u16 dstX, u16 dstY, u16 dstWidth, u16 dstHeight);
+
+#endif // POKEDIAMOND_WINDOW_H