diff options
48 files changed, 310 insertions, 516 deletions
diff --git a/arm9/asm/unk_020010A8.s b/arm9/asm/unk_020010A8.s index d7a2c9f0..e814dda2 100644 --- a/arm9/asm/unk_020010A8.s +++ b/arm9/asm/unk_020010A8.s @@ -2,363 +2,14 @@ .include "global.inc" .extern gMain - .extern FUN_0200165C + .extern ListMenuPrint + .extern ListMenuPrintEntries + .extern ListMenuDrawCursor + .extern ListMenuErasePrintedCursor + .extern ListMenuUpdateSelectedRowIndexAndScrollOffset .text - thumb_func_start ListMenuPrintEntries -ListMenuPrintEntries: ; 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 ListMenuDrawCursor -ListMenuDrawCursor: ; 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} @@ -388,7 +39,7 @@ _020019B8: lsr r0, r0, #0x1a lsl r0, r0, #0x18 lsr r0, r0, #0x18 - bl FUN_02002E4C + bl GetFontAttribute ldrh r1, [r5, #0x1a] lsl r1, r1, #0x19 lsr r1, r1, #0x1c @@ -444,7 +95,7 @@ _020019B8: lsl r1, r1, #0x1c lsr r1, r1, #0x1c add r3, r4, #0x0 - bl FUN_020196F4 + bl FillWindowPixelRect add sp, #0x8 pop {r3-r7, pc} _02001A46: @@ -487,7 +138,7 @@ _02001A46: ldr r0, [r5, #0xc] lsl r1, r1, #0x1c lsr r1, r1, #0x1c - bl FUN_020196F4 + bl FillWindowPixelRect add sp, #0x8 pop {r3-r7, pc} .balign 4 @@ -511,7 +162,7 @@ ListMenuChangeSelection: ; 0x02001AA4 _02001AC0: ldr r1, [sp, #0x8] add r0, r4, #0x0 - bl FUN_0200186C + bl ListMenuUpdateSelectedRowIndexAndScrollOffset orr r5, r0 cmp r0, #0x2 bne _02001AEA @@ -560,7 +211,7 @@ _02001B14: _02001B1A: ldr r1, [sp, #0xc] add r0, r4, #0x0 - bl FUN_02001804 + bl ListMenuErasePrintedCursor add r0, r4, #0x0 bl ListMenuDrawCursor add r0, r4, #0x0 @@ -572,7 +223,7 @@ _02001B1A: _02001B38: ldr r1, [sp, #0xc] add r0, r4, #0x0 - bl FUN_02001804 + bl ListMenuErasePrintedCursor ldr r2, [sp, #0x8] add r0, r4, #0x0 add r1, r6, #0x0 diff --git a/arm9/asm/unk_02001B80.s b/arm9/asm/unk_02001B80.s index 65ba52af..c2e1a245 100644 --- a/arm9/asm/unk_02001B80.s +++ b/arm9/asm/unk_02001B80.s @@ -57,20 +57,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 +108,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 @@ -420,7 +420,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 +437,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,7 +631,7 @@ 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 FillWindowPixelBuffer @@ -718,7 +718,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} diff --git a/arm9/asm/unk_020023C0.s b/arm9/asm/unk_020023C0.s index 54d01d03..5b9bf77a 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 @@ -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 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_02012CC8.s b/arm9/asm/unk_02012CC8.s index 92e460b6..c3ed22aa 100644 --- a/arm9/asm/unk_02012CC8.s +++ b/arm9/asm/unk_02012CC8.s @@ -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 a050d569..9a6e152f 100644 --- a/arm9/asm/unk_02016B94.s +++ b/arm9/asm/unk_02016B94.s @@ -5999,8 +5999,8 @@ _020196D6: 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 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_02050E48.s b/arm9/asm/unk_02050E48.s index 95b46dc5..70ba73b0 100644 --- a/arm9/asm/unk_02050E48.s +++ b/arm9/asm/unk_02050E48.s @@ -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 @@ -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_020653EC.s b/arm9/asm/unk_020653EC.s index 5e09d0a6..003e1330 100644 --- a/arm9/asm/unk_020653EC.s +++ b/arm9/asm/unk_020653EC.s @@ -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_02072548.s b/arm9/asm/unk_02072548.s index 901eea03..03f7c540 100644 --- a/arm9/asm/unk_02072548.s +++ b/arm9/asm/unk_02072548.s @@ -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 @@ -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_020772F0.s b/arm9/asm/unk_020772F0.s index 6ed83b14..7a074186 100644 --- a/arm9/asm/unk_020772F0.s +++ b/arm9/asm/unk_020772F0.s @@ -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_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 f1e7c357..3b40567c 100644 --- a/arm9/asm/unk_0208A338.s +++ b/arm9/asm/unk_0208A338.s @@ -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 @@ -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 8c0a01db..1debdc23 100644 --- a/arm9/global.inc +++ b/arm9/global.inc @@ -201,7 +201,7 @@ .extern FUN_02001464 .extern ListMenuGetTemplateField .extern ListMenuSetTemplateField -.extern ListMenuPrint +.extern ListMenuGetItemStr .extern FUN_02001B80 .extern FUN_02001B8C .extern FUN_02001C14 @@ -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 @@ -885,7 +885,7 @@ .extern FUN_02013690 .extern DestroyListMenuCursorObj .extern CreateListMenuCursorObj -.extern FUN_020136F8 +.extern ListMenuUpdateCursorObj .extern MailMsg_init .extern MailMsg_init_withBank .extern MailMsg_init_default @@ -1101,7 +1101,7 @@ .extern FillWindowPixelBuffer .extern FUN_02019658 .extern FUN_02019684 -.extern FUN_020196F4 +.extern FillWindowPixelRect .extern FUN_0201974C .extern FUN_0201A8C8 .extern FUN_0201AB08 diff --git a/arm9/modules/05/asm/mod05_021E1AD8.s b/arm9/modules/05/asm/mod05_021E1AD8.s index d9ec58bf..36e4432a 100644 --- a/arm9/modules/05/asm/mod05_021E1AD8.s +++ b/arm9/modules/05/asm/mod05_021E1AD8.s @@ -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 @@ -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 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_021E8310.s b/arm9/modules/05/asm/mod05_021E8310.s index 08407e83..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,7 +276,7 @@ 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 FillWindowPixelBuffer diff --git a/arm9/modules/06/asm/module_06.s b/arm9/modules/06/asm/module_06.s index fbe98b2b..fcf63fe5 100644 --- a/arm9/modules/06/asm/module_06.s +++ b/arm9/modules/06/asm/module_06.s @@ -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 @@ -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 @@ -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] diff --git a/arm9/modules/07/asm/module_07.s b/arm9/modules/07/asm/module_07.s index 48e34649..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 diff --git a/arm9/modules/09/asm/module_09.s b/arm9/modules/09/asm/module_09.s index ade67f55..9b2367ba 100644 --- a/arm9/modules/09/asm/module_09.s +++ b/arm9/modules/09/asm/module_09.s @@ -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 @@ -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] @@ -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 diff --git a/arm9/modules/11/asm/module_11_thumb2.s b/arm9/modules/11/asm/module_11_thumb2.s index 6f66fe90..962280d6 100644 --- a/arm9/modules/11/asm/module_11_thumb2.s +++ b/arm9/modules/11/asm/module_11_thumb2.s @@ -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 diff --git a/arm9/modules/14/asm/module_14.s b/arm9/modules/14/asm/module_14.s index 9399db6e..8f54eb98 100644 --- a/arm9/modules/14/asm/module_14.s +++ b/arm9/modules/14/asm/module_14.s @@ -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 @@ -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 diff --git a/arm9/modules/15/asm/module_15.s b/arm9/modules/15/asm/module_15.s index 0b2abaab..fbf19499 100644 --- a/arm9/modules/15/asm/module_15.s +++ b/arm9/modules/15/asm/module_15.s @@ -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} @@ -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} @@ -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} diff --git a/arm9/modules/16/asm/module_16.s b/arm9/modules/16/asm/module_16.s index 68e9336c..0b9a1de7 100644 --- a/arm9/modules/16/asm/module_16.s +++ b/arm9/modules/16/asm/module_16.s @@ -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 @@ -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: diff --git a/arm9/modules/18/asm/module_18.s b/arm9/modules/18/asm/module_18.s index 6f55f226..7810113c 100644 --- a/arm9/modules/18/asm/module_18.s +++ b/arm9/modules/18/asm/module_18.s @@ -22140,7 +22140,7 @@ _022440F0: 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} @@ -22312,7 +22312,7 @@ _02244268: ldr r1, [sp] str r0, [r5, #8] ldr r0, [sp, #4] - bl ListMenuPrint + bl ListMenuGetItemStr mov r0, #0 strb r0, [r5, #0x1c] ldr r0, [sp, #4] diff --git a/arm9/modules/24/asm/module_24.s b/arm9/modules/24/asm/module_24.s index 19ece474..a069571e 100644 --- a/arm9/modules/24/asm/module_24.s +++ b/arm9/modules/24/asm/module_24.s @@ -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..0dac7728 100644 --- a/arm9/modules/27/asm/module_27.s +++ b/arm9/modules/27/asm/module_27.s @@ -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 2bbabb41..6a1e0245 100644 --- a/arm9/modules/36/asm/module_36.s +++ b/arm9/modules/36/asm/module_36.s @@ -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 diff --git a/arm9/modules/53/asm/module_53.s b/arm9/modules/53/asm/module_53.s index 42385e75..93468fe6 100644 --- a/arm9/modules/53/asm/module_53.s +++ b/arm9/modules/53/asm/module_53.s @@ -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 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/59/asm/mod59_021D74E0_asm.s b/arm9/modules/59/asm/mod59_021D74E0_asm.s index dbad5e9c..d89153a3 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 @@ -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 c01c83ff..fa7752a8 100644 --- a/arm9/modules/60/asm/module_60.s +++ b/arm9/modules/60/asm/module_60.s @@ -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/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/65/asm/module_65.s b/arm9/modules/65/asm/module_65.s index 44e0d1a2..dca4005b 100644 --- a/arm9/modules/65/asm/module_65.s +++ b/arm9/modules/65/asm/module_65.s @@ -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 @@ -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 @@ -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 @@ -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 diff --git a/arm9/modules/75/asm/module_75.s b/arm9/modules/75/asm/module_75.s index 32ceb777..51a9bfa5 100644 --- a/arm9/modules/75/asm/module_75.s +++ b/arm9/modules/75/asm/module_75.s @@ -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 @@ -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 diff --git a/arm9/modules/77/asm/module_77.s b/arm9/modules/77/asm/module_77.s index 01cab9b7..838cf1c8 100644 --- a/arm9/modules/77/asm/module_77.s +++ b/arm9/modules/77/asm/module_77.s @@ -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 @@ -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/83/asm/module_83.s b/arm9/modules/83/asm/module_83.s index 8551901e..36b862f4 100644 --- a/arm9/modules/83/asm/module_83.s +++ b/arm9/modules/83/asm/module_83.s @@ -901,7 +901,7 @@ 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 @@ -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 @@ -5990,7 +5990,7 @@ 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 FillWindowPixelBuffer @@ -6056,7 +6056,7 @@ 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 FillWindowPixelBuffer @@ -8235,7 +8235,7 @@ 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 FillWindowPixelBuffer @@ -9122,7 +9122,7 @@ _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 FillWindowPixelBuffer @@ -23133,7 +23133,7 @@ _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 diff --git a/arm9/modules/84/asm/module_84_thumb2.s b/arm9/modules/84/asm/module_84_thumb2.s index 969429f0..a843354a 100644 --- a/arm9/modules/84/asm/module_84_thumb2.s +++ b/arm9/modules/84/asm/module_84_thumb2.s @@ -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] 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..6bff812a 100644 --- a/arm9/src/error_message_reset.c +++ b/arm9/src/error_message_reset.c @@ -27,7 +27,7 @@ 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 FillWindowPixelRect(u32 *, u8, u16, u16, u16, u16); extern void FUN_0200CCA4(u32 *param0, u32 param1, u32 param2, u32 param3); extern void FUN_0200E394(u32 param0); extern void FUN_0200A274(u32 param0, u32 param1, u32 param2); @@ -98,7 +98,7 @@ THUMB_FUNC void PrintErrorMessageAndReset() FUN_0201BD5C(); FUN_02019150(ptr, buf, UNK_020FF49C); - FUN_020196F4(buf, 15, 0, 0, 0xd0, 0x90); + FillWindowPixelRect(buf, 15, 0, 0, 0xd0, 0x90); FUN_0200CCA4(buf, 0, 0x1f7, 2); ReadMsgDataIntoString(msg_data, 3, str); diff --git a/arm9/src/list_menu.c b/arm9/src/list_menu.c index 8dec327d..f54db302 100644 --- a/arm9/src/list_menu.c +++ b/arm9/src/list_menu.c @@ -4,6 +4,7 @@ #include "list_menu.h" extern void * FUN_02013690(u32 heap_id); +extern void * ListMenuUpdateCursorObj(struct ListMenuCursor *, struct Window *, u8 x, u8 y); extern void CreateListMenuCursorObj(void *, u32); extern void DestroyListMenuCursorObj(void *); extern void FillWindowPixelBuffer(struct Window *, u32); @@ -12,7 +13,8 @@ void ListMenuDrawCursor(struct ListMenu *); BOOL ListMenuChangeSelection(struct ListMenu *, u8, u8, s32); void ListMenuCallSelectionChangedCallback(struct ListMenu *, BOOL); extern void CopyWindowToVram(struct Window *); -extern s32 FUN_02002E4C(u8 fontId, s32 attr); +extern s32 GetFontAttribute(u8 fontId, s32 attr); +extern void FillWindowPixelRect(struct Window *, u32 fillValue, u16 x, u16 y, u16 width, u16 height); static inline u32 MakeFontColor(u32 fgPal, u32 shdwPal, u32 bgPal) { @@ -223,7 +225,7 @@ THUMB_FUNC s32 ListMenuGetTemplateField(struct ListMenu * list, u32 attr) case 8: return (s32)list->template.upText_Y; case 9: - return FUN_02002E4C(list->template.fontId, 1) + list->template.itemVerticalPadding; + return GetFontAttribute(list->template.fontId, 1) + list->template.itemVerticalPadding; case 10: return (s32)list->template.cursorPal; case 11: @@ -239,7 +241,7 @@ THUMB_FUNC s32 ListMenuGetTemplateField(struct ListMenu * list, u32 attr) case 16: return (s32)list->template.fontId; case 17: - return (s32)list->template.unk_1B_7; + return (s32)list->template.cursorKind; case 18: return (s32)list->template.window; case 19: @@ -303,7 +305,7 @@ THUMB_FUNC void ListMenuSetTemplateField(struct ListMenu * list, u32 attr, s32 v list->template.fontId = (u8)value; break; case 17: - list->template.unk_1B_7 = (u8)value; + list->template.cursorKind = (u8)value; break; case 18: list->template.window = (struct Window *)value; @@ -314,12 +316,12 @@ THUMB_FUNC void ListMenuSetTemplateField(struct ListMenu * list, u32 attr, s32 v } } -THUMB_FUNC void ListMenuPrint(struct ListMenu * list, struct ListMenuItem * items) +THUMB_FUNC void ListMenuGetItemStr(struct ListMenu * list, struct ListMenuItem * items) { list->template.items = items; } -THUMB_FUNC void FUN_0200165C(struct ListMenu * list, const u16 * str, u8 x, u8 y) +THUMB_FUNC void ListMenuPrint(struct ListMenu * list, const u16 * str, u8 x, u8 y) { if (str != NULL) { @@ -333,3 +335,144 @@ THUMB_FUNC void FUN_0200165C(struct ListMenu * list, const u16 * str, u8 x, u8 y } } } + +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; +} diff --git a/arm9/src/script_buffers.c b/arm9/src/script_buffers.c index e9a55051..55ceca6a 100644 --- a/arm9/src/script_buffers.c +++ b/arm9/src/script_buffers.c @@ -22,7 +22,7 @@ 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 FillWindowPixelRect(int, u8, u16, u16, u16, u16); const u16 UNK_020ECE6C[][2] = { { 0x0140, 0x0008 }, @@ -819,7 +819,7 @@ void FUN_0200B9EC(struct UnkStruct_0200B870 * string, u32 value, u32 n, enum Pri } else { - FUN_020196F4(sp30, (u8)string->unk_28, (u16)r5, (u16)r7, 8, 8); + FillWindowPixelRect(sp30, (u8)string->unk_28, (u16)r5, (u16)r7, 8, 8); } r5 += 8; } diff --git a/include/list_menu.h b/include/list_menu.h index 0be1a32a..966a942a 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -29,7 +29,7 @@ struct ListMenuItem // A lot of these are named based on similar fields in gen 3. typedef void (*LM_MOVECURSORFUNC)(s32, u8, struct ListMenu *); -typedef void (*LM_ITEMPRINTFUNC)(struct Window *, s32, u8); +typedef void (*LM_ITEMPRINTFUNC)(struct ListMenu *, s32, u8); struct ListMenuTemplate { @@ -50,7 +50,7 @@ struct ListMenuTemplate u16 itemVerticalPadding:4; u16 scrollMultiple:2; u16 fontId:6; - u16 unk_1B_7:1; + u16 cursorKind:1; /*0x1C*/ u32 unk_1C; }; |