summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-25 05:47:01 +0800
committerjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-06-26 04:52:35 +0800
commit0d46c60b383d5feca05950e57bb05dc392f815cc (patch)
treeb615287761a7a78b267f8c85b8aa35d2dcaa0943
parentcc937d33b4ae33312d543269f78207037f86b4c3 (diff)
thru DisplayYesNoMenuDefaultNo()
-rw-r--r--asm/berry_crush_2.s2
-rw-r--r--asm/cable_club.s2
-rw-r--r--asm/field_effect.s4
-rw-r--r--asm/field_specials.s2
-rw-r--r--asm/link_rfu_3.s4
-rw-r--r--asm/mailbox_pc.s2
-rw-r--r--asm/new_menu_helpers.s310
-rw-r--r--asm/player_pc.s6
-rw-r--r--asm/script_menu.s16
-rw-r--r--asm/shop.s2
-rw-r--r--asm/start_menu.s6
-rw-r--r--data/data_83FECCC.s2
-rw-r--r--include/new_menu_helpers.h7
-rw-r--r--src/new_menu_helpers.c77
14 files changed, 104 insertions, 338 deletions
diff --git a/asm/berry_crush_2.s b/asm/berry_crush_2.s
index 172724d0f..f775bd8dc 100644
--- a/asm/berry_crush_2.s
+++ b/asm/berry_crush_2.s
@@ -2946,7 +2946,7 @@ _0814D1A6:
strb r0, [r5, 0xC]
b _0814D238
_0814D1CA:
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
b _0814D230
_0814D1D0:
bl Menu_ProcessInputNoWrapClearOnChoose
diff --git a/asm/cable_club.s b/asm/cable_club.s
index b9b3a595c..ff11c4cef 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -55,7 +55,7 @@ sub_808078C: @ 808078C
lsrs r4, 24
adds r0, r4, 0
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
ldr r5, _080807E0 @ =gStringVar4
ldr r1, _080807E4 @ =gUnknown_841DF82
adds r0, r5, 0
diff --git a/asm/field_effect.s b/asm/field_effect.s
index 0fa36ce46..5cb8a42ed 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -6185,7 +6185,7 @@ sub_8086358: @ 8086358
movs r1, 0
movs r2, 0
bl ChangeBgY
- bl sub_80F77B8
+ bl Menu_LoadStdPal
movs r0, 0x26
ldrsh r1, [r4, r0]
lsls r0, r1, 4
@@ -6568,7 +6568,7 @@ sub_8086650: @ 8086650
movs r1, 0
movs r2, 0
bl ChangeBgY
- bl sub_80F77B8
+ bl Menu_LoadStdPal
movs r0, 0x26
ldrsh r1, [r4, r0]
lsls r0, r1, 4
diff --git a/asm/field_specials.s b/asm/field_specials.s
index ad1806d2e..4331fbd74 100644
--- a/asm/field_specials.s
+++ b/asm/field_specials.s
@@ -2631,7 +2631,7 @@ _080CB9D2:
lsrs r0, 24
strh r0, [r5, 0x22]
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
ldr r4, _080CBA70 @ =gUnknown_3005360
ldrh r0, [r5, 0xA]
strh r0, [r4, 0xC]
diff --git a/asm/link_rfu_3.s b/asm/link_rfu_3.s
index 6acf4a919..31d1e465b 100644
--- a/asm/link_rfu_3.s
+++ b/asm/link_rfu_3.s
@@ -8578,7 +8578,7 @@ _0811A15E:
negs r0, r0
b _0811A1A4
_0811A168:
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
ldrb r0, [r4]
adds r0, 0x1
strb r0, [r4]
@@ -12967,7 +12967,7 @@ _0811C300:
movs r1, 0x1
movs r2, 0xD0
bl TextWindow_SetStdFrame0_WithPal
- bl sub_80F77B8
+ bl Menu_LoadStdPal
ldr r0, _0811C35C @ =sub_811C1B4
bl SetVBlankCallback
ldr r1, _0811C360 @ =gMain
diff --git a/asm/mailbox_pc.s b/asm/mailbox_pc.s
index aecca0735..e41fb23c1 100644
--- a/asm/mailbox_pc.s
+++ b/asm/mailbox_pc.s
@@ -60,7 +60,7 @@ sub_810EBAC: @ 810EBAC
strb r0, [r4]
ldrb r0, [r4]
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
_0810EBD0:
ldrb r0, [r4]
pop {r4}
diff --git a/asm/new_menu_helpers.s b/asm/new_menu_helpers.s
index b93de1d12..9f698cb52 100644
--- a/asm/new_menu_helpers.s
+++ b/asm/new_menu_helpers.s
@@ -4,314 +4,6 @@
.syntax unified
.text
-/*
- thumb_func_start WindowFunc_ClearStdWindowAndFrame
-WindowFunc_ClearStdWindowAndFrame: @ 80F7684
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r1, 0
- adds r5, r2, 0
- ldr r1, [sp, 0x18]
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsls r5, 24
- lsls r3, 24
- lsls r1, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r4, r2
- lsrs r4, 24
- adds r5, r2
- lsrs r5, 24
- movs r2, 0x80
- lsls r2, 18
- adds r3, r2
- lsrs r3, 24
- str r3, [sp]
- adds r1, r2
- lsrs r1, 24
- str r1, [sp, 0x4]
- movs r1, 0xE
- str r1, [sp, 0x8]
- movs r1, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl FillBgTilemapBufferRect
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end WindowFunc_ClearStdWindowAndFrame
-
- thumb_func_start WindowFunc_ClearDialogWindowAndFrame
-WindowFunc_ClearDialogWindowAndFrame: @ 80F76CC
- push {r4,r5,lr}
- sub sp, 0xC
- adds r4, r1, 0
- adds r5, r2, 0
- ldr r1, [sp, 0x18]
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsls r5, 24
- lsls r3, 24
- lsls r1, 24
- movs r2, 0xFE
- lsls r2, 24
- adds r4, r2
- lsrs r4, 24
- movs r2, 0xFF
- lsls r2, 24
- adds r5, r2
- lsrs r5, 24
- movs r2, 0x80
- lsls r2, 19
- adds r3, r2
- lsrs r3, 24
- str r3, [sp]
- movs r2, 0x80
- lsls r2, 18
- adds r1, r2
- lsrs r1, 24
- str r1, [sp, 0x4]
- movs r1, 0xE
- str r1, [sp, 0x8]
- movs r1, 0
- adds r2, r4, 0
- adds r3, r5, 0
- bl FillBgTilemapBufferRect
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end WindowFunc_ClearDialogWindowAndFrame
-*/
- thumb_func_start sub_80F771C
-sub_80F771C: @ 80F771C
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x20
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- cmp r4, 0x1
- bne _080F7746
- movs r0, 0
- bl CopyBgTilemapBufferToVram
-_080F7746:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80F771C
-
- thumb_func_start sub_80F7750
-sub_80F7750: @ 80F7750
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r2, 0x85
- lsls r2, 2
- movs r3, 0xE
- bl SetWindowBorderStyle
- pop {r0}
- bx r0
- thumb_func_end sub_80F7750
-
- thumb_func_start sub_80F7768
-sub_80F7768: @ 80F7768
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _080F7790 @ =gUnknown_203ADFA
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _080F7798
- ldr r2, _080F7794 @ =gTextFlags
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- movs r1, 0x80
- lsls r1, 2
- movs r0, 0
- bl TextWindow_LoadTilesStdFrame1
- b _080F77A4
- .align 2, 0
-_080F7790: .4byte gUnknown_203ADFA
-_080F7794: .4byte gTextFlags
-_080F7798:
- movs r1, 0x80
- lsls r1, 2
- adds r0, r4, 0
- movs r2, 0xF0
- bl TextWindow_LoadResourcesStdFrame0
-_080F77A4:
- movs r2, 0x80
- lsls r2, 2
- adds r0, r4, 0
- adds r1, r5, 0
- movs r3, 0xF
- bl DrawDialogFrameWithCustomTileAndPalette
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80F7768
-
- thumb_func_start sub_80F77B8
-sub_80F77B8: @ 80F77B8
- push {lr}
- ldr r0, _080F77C8 @ =gTMCaseMainWindowPalette
- movs r1, 0xE0
- movs r2, 0x14
- bl LoadPalette
- pop {r0}
- bx r0
- .align 2, 0
-_080F77C8: .4byte gTMCaseMainWindowPalette
- thumb_func_end sub_80F77B8
-
- thumb_func_start Menu_LoadStdPalAt
-Menu_LoadStdPalAt: @ 80F77CC
- push {lr}
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _080F77E0 @ =gTMCaseMainWindowPalette
- movs r2, 0x14
- bl LoadPalette
- pop {r0}
- bx r0
- .align 2, 0
-_080F77E0: .4byte gTMCaseMainWindowPalette
- thumb_func_end Menu_LoadStdPalAt
-
- thumb_func_start sub_80F77E4
-sub_80F77E4: @ 80F77E4
- ldr r0, _080F77E8 @ =gTMCaseMainWindowPalette
- bx lr
- .align 2, 0
-_080F77E8: .4byte gTMCaseMainWindowPalette
- thumb_func_end sub_80F77E4
-
- thumb_func_start sub_80F77EC
-sub_80F77EC: @ 80F77EC
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0xF
- bls _080F77F8
- movs r1, 0
-_080F77F8:
- ldr r0, _080F7804 @ =gTMCaseMainWindowPalette
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
- pop {r1}
- bx r1
- .align 2, 0
-_080F7804: .4byte gTMCaseMainWindowPalette
- thumb_func_end sub_80F77EC
-
- thumb_func_start DisplayItemMessageOnField
-DisplayItemMessageOnField: @ 80F7808
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x10
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- mov r8, r3
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- lsrs r4, 24
- bl sub_80F6E9C
- bl GetTextSpeedSetting
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 2
- str r4, [sp]
- str r0, [sp, 0x4]
- str r6, [sp, 0x8]
- mov r0, r8
- str r0, [sp, 0xC]
- adds r0, r5, 0
- movs r1, 0
- movs r3, 0xF
- bl DisplayMessageAndContinueTask
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end DisplayItemMessageOnField
-
- thumb_func_start sub_80F7858
-sub_80F7858: @ 80F7858
- push {lr}
- sub sp, 0xC
- ldr r0, _080F787C @ =gUnknown_841F43C
- movs r1, 0x85
- lsls r1, 2
- str r1, [sp]
- movs r1, 0xE
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl CreateYesNoMenu
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_080F787C: .4byte gUnknown_841F43C
- thumb_func_end sub_80F7858
-
- thumb_func_start sub_80F7880
-sub_80F7880: @ 80F7880
- push {lr}
- sub sp, 0xC
- ldr r0, _080F78A4 @ =gUnknown_841F43C
- movs r1, 0x85
- lsls r1, 2
- str r1, [sp]
- movs r1, 0xE
- str r1, [sp, 0x4]
- movs r1, 0x1
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl CreateYesNoMenu
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_080F78A4: .4byte gUnknown_841F43C
- thumb_func_end sub_80F7880
thumb_func_start GetTextSpeedSetting
GetTextSpeedSetting: @ 80F78A8
@@ -463,7 +155,7 @@ sub_80F7998: @ 80F7998
thumb_func_start sub_80F79A4
sub_80F79A4: @ 80F79A4
push {lr}
- bl sub_80F77B8
+ bl Menu_LoadStdPal
movs r1, 0x80
lsls r1, 2
movs r0, 0
diff --git a/asm/player_pc.s b/asm/player_pc.s
index 52218cc67..4d917504a 100644
--- a/asm/player_pc.s
+++ b/asm/player_pc.s
@@ -149,7 +149,7 @@ _080EB77E:
strh r0, [r7, 0x14]
ldrb r0, [r7, 0x14]
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r0, 0x2
movs r1, 0
bl GetMenuCursorDimensionByFont
@@ -464,7 +464,7 @@ _080EBA1E:
lsls r0, 24
lsrs r0, 24
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r0, 0x2
movs r1, 0
bl GetMenuCursorDimensionByFont
@@ -1578,7 +1578,7 @@ sub_80EC2FC: @ 80EC2FC
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
ldr r1, _080EC31C @ =gTasks
lsls r0, r4, 2
adds r0, r4
diff --git a/asm/script_menu.s b/asm/script_menu.s
index 54c3d6691..e6a1cc48f 100644
--- a/asm/script_menu.s
+++ b/asm/script_menu.s
@@ -249,7 +249,7 @@ _0809CB02:
lsrs r5, r0, 24
adds r0, r5, 0
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
mov r2, r10
cmp r2, 0x1E
beq _0809CB32
@@ -636,7 +636,7 @@ _0809CE08:
lsls r0, 24
cmp r0, 0
bne _0809CE26
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
adds r0, r4, 0
movs r1, 0x50
bl CreateTask
@@ -822,7 +822,7 @@ _0809CF08:
lsrs r0, 24
strh r0, [r4, 0x14]
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
ldrb r0, [r4, 0x14]
lsls r5, 27
lsrs r5, 24
@@ -989,7 +989,7 @@ _0809D0B0:
lsrs r6, r0, 24
adds r0, r6, 0
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
ldr r2, _0809D128 @ =gUnknown_8417BD3
movs r0, 0x22
str r0, [sp]
@@ -1050,7 +1050,7 @@ _0809D14C:
lsrs r6, r0, 24
adds r0, r6, 0
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
mov r0, r8
bl FlagGet
lsls r0, 24
@@ -1326,7 +1326,7 @@ _0809D31C:
strb r0, [r1, 0x5]
ldrb r0, [r3, 0x12]
movs r1, 0x1
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r0, 0
bl ScheduleBgCopyTilemapToVram
movs r0, 0x1
@@ -1613,7 +1613,7 @@ _0809D572:
strh r2, [r1, 0x8]
strh r5, [r1, 0xC]
movs r1, 0x1
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r0, 0
bl ScheduleBgCopyTilemapToVram
_0809D5F2:
@@ -1859,7 +1859,7 @@ _0809D7B8:
lsrs r7, r0, 24
adds r0, r7, 0
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r6, 0
mov r5, r9
subs r5, 0x2
diff --git a/asm/shop.s b/asm/shop.s
index bac3c3330..51955f88d 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -49,7 +49,7 @@ _0809AAF8:
strb r0, [r4]
ldrb r0, [r4]
movs r1, 0
- bl sub_80F7750
+ bl SetStdWindowBorderStyle
movs r0, 0x2
movs r1, 0
bl GetMenuCursorDimensionByFont
diff --git a/asm/start_menu.s b/asm/start_menu.s
index a4a6bef7b..4e26dc2db 100644
--- a/asm/start_menu.s
+++ b/asm/start_menu.s
@@ -1347,7 +1347,7 @@ _0806F7D8: .4byte sub_806F7DC
thumb_func_start sub_806F7DC
sub_806F7DC: @ 806F7DC
push {lr}
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
ldr r1, _0806F7F0 @ =gUnknown_3000FA4
ldr r0, _0806F7F4 @ =sub_806F7F8
str r0, [r1]
@@ -1451,7 +1451,7 @@ _0806F8A0: .4byte sub_806F8A4
thumb_func_start sub_806F8A4
sub_806F8A4: @ 806F8A4
push {lr}
- bl sub_80F7858
+ bl DisplayYesNoMenuDefaultYes
ldr r1, _0806F8B8 @ =gUnknown_3000FA4
ldr r0, _0806F8BC @ =sub_806F8DC
str r0, [r1]
@@ -1466,7 +1466,7 @@ _0806F8BC: .4byte sub_806F8DC
thumb_func_start sub_806F8C0
sub_806F8C0: @ 806F8C0
push {lr}
- bl sub_80F7880
+ bl DisplayYesNoMenuDefaultNo
ldr r1, _0806F8D4 @ =gUnknown_3000FA4
ldr r0, _0806F8D8 @ =sub_806F8DC
str r0, [r1]
diff --git a/data/data_83FECCC.s b/data/data_83FECCC.s
index ff2b88a0c..3ec7b231b 100644
--- a/data/data_83FECCC.s
+++ b/data/data_83FECCC.s
@@ -559,7 +559,7 @@ gUnknown_841F428:: @ 841F428
sStandardTextBox_WindowTemplates:: @ 841F42C
.incbin "baserom.gba", 0x41F42C, 0x10
-gUnknown_841F43C:: @ 841F43C
+sYesNo_WindowTemplate:: @ 841F43C
.incbin "baserom.gba", 0x41F43C, 0x8
gUnknown_841F444:: @ 841F444
diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h
index 30728ec09..b817bc643 100644
--- a/include/new_menu_helpers.h
+++ b/include/new_menu_helpers.h
@@ -30,14 +30,19 @@ void CopyRectIntoAltRect(u8 bgId, u16 *dest, u8 left, u8 top, u8 width, u8 heigh
void SetBgRectPal(u8 bgId, u8 left, u8 top, u8 width, u8 height, u8 palette);
void DecompressAndLoadBgGfxUsingHeap(u8 bgId, const void *src, u32 size, u16 offset, u8 mode);
void DecompressAndLoadBgGfxUsingHeap2(u8 bgId, const void *src, u32 size, u16 offset, u8 mode);
+void Menu_LoadStdPal(void);
void Menu_LoadStdPalAt(u16);
void * MallocAndDecompress(const void * src, u32 * size);
u16 sub_80F796C(void);
void ClearStdWindowAndFrame(u8 taskId, bool8 copyNow);
-void sub_80F77B8(void);
void sub_80F6E9C(void);
+void sub_80F771C(bool8 copyToVram);
void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed);
void AddTextPrinterDiffStyle(bool8 allowSkippingDelayWithButtonPress);
void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress);
+void SetStdWindowBorderStyle(u8 windowId, bool8 copyToVram);
+void sub_80F7768(u8 windowId, bool8 copyToVram);
+void DisplayYesNoMenuDefaultYes(void);
+void DisplayYesNoMenuDefaultNo(void);
#endif // GUARD_NEW_MENU_HELPERS_H
diff --git a/src/new_menu_helpers.c b/src/new_menu_helpers.c
index f3f9f65b9..5f7451eb6 100644
--- a/src/new_menu_helpers.c
+++ b/src/new_menu_helpers.c
@@ -13,6 +13,8 @@
#include "field_specials.h"
#include "text_window.h"
#include "script.h"
+#include "graphics.h"
+#include "palette.h"
#define DLG_WINDOW_PALETTE_NUM 15
#define DLG_WINDOW_BASE_TILE_NUM 0x200
@@ -24,6 +26,7 @@ static EWRAM_DATA u16 gUnknown_203AB5C = {0};
static EWRAM_DATA void *gUnknown_203AB60[0x20] = {NULL};
extern const struct WindowTemplate sStandardTextBox_WindowTemplates[];
+extern const struct WindowTemplate sYesNo_WindowTemplate;
EWRAM_DATA u8 sStartMenuWindowId;
static u16 CopyDecompressedTileDataToVram(u8 bgId, const void *src, u16 size, u16 offset, u8 mode);
@@ -323,14 +326,14 @@ void sub_80F6E9C(void)
if (gUnknown_203ADFA == 2)
{
gTextFlags.autoScroll = 1;
- TextWindow_LoadTilesStdFrame1(0, 0x200);
+ TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM);
}
else
{
- sub_80F77B8();
- TextWindow_LoadResourcesStdFrame0(0, 0x200, 0xF0);
+ Menu_LoadStdPal();
+ TextWindow_LoadResourcesStdFrame0(0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10);
}
- TextWindow_SetUserSelectedFrame(0, 0x214, 0xE0);
+ TextWindow_SetUserSelectedFrame(0, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM * 0x10);
}
void DrawDialogueFrame(u8 windowId, bool8 copyToVram)
@@ -459,3 +462,69 @@ static void WindowFunc_ClearDialogWindowAndFrame(u8 bg, u8 tilemapLeft, u8 tilem
{
FillBgTilemapBufferRect(bg, 0, tilemapLeft - 2, tilemapTop - 1, width + 4, height + 2, STD_WINDOW_PALETTE_NUM);
}
+
+void sub_80F771C(bool8 copyToVram)
+{
+ FillBgTilemapBufferRect(0, 0, 0, 0, 0x20, 0x20, 0x11);
+ if (copyToVram == TRUE)
+ CopyBgTilemapBufferToVram(0);
+}
+
+void SetStdWindowBorderStyle(u8 windowId, bool8 copyToVram)
+{
+ SetWindowBorderStyle(windowId, copyToVram, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM);
+}
+
+void sub_80F7768(u8 windowId, bool8 copyToVram)
+{
+ if (gUnknown_203ADFA == 2)
+ {
+ gTextFlags.autoScroll = 1;
+ TextWindow_LoadTilesStdFrame1(0, DLG_WINDOW_BASE_TILE_NUM);
+ }
+ else
+ {
+ TextWindow_LoadResourcesStdFrame0(windowId, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM * 0x10);
+ }
+ DrawDialogFrameWithCustomTileAndPalette(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM);
+}
+
+void Menu_LoadStdPal(void)
+{
+ LoadPalette(gTMCaseMainWindowPalette, STD_WINDOW_PALETTE_NUM * 0x10, 0x14);
+}
+
+void Menu_LoadStdPalAt(u16 offset)
+{
+ LoadPalette(gTMCaseMainWindowPalette, offset, 0x14);
+}
+
+static const u16 *GetTmCaseMainWindowPalette(void)
+{
+ return gTMCaseMainWindowPalette;
+}
+
+static u16 GetStdPalColor(u8 colorNum)
+{
+ if (colorNum > 0xF)
+ colorNum = 0;
+ return gTMCaseMainWindowPalette[colorNum];
+}
+
+void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *string, TaskFunc callback)
+{
+ sub_80F6E9C();
+ DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, bgId, GetTextSpeedSetting(), string, callback);
+ CopyWindowToVram(0, 3);
+}
+
+void DisplayYesNoMenuDefaultYes(void)
+{
+ CreateYesNoMenu(&sYesNo_WindowTemplate, 2, 0, 2, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM, 0);
+}
+
+void DisplayYesNoMenuDefaultNo(void)
+{
+ CreateYesNoMenu(&sYesNo_WindowTemplate, 2, 0, 2, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM, 1);
+}
+