From 50cfe8341dd239857d0d1a0c87dbb08849de51d0 Mon Sep 17 00:00:00 2001 From: tgsm Date: Wed, 30 Jun 2021 21:47:57 -0500 Subject: Name unk_02034188 -> wfc_user_info_warning --- arm9/arm9.lsf | 2 +- arm9/src/main.c | 2 +- arm9/src/unk_02034188.c | 151 --------------------------------------- arm9/src/wfc_user_info_warning.c | 151 +++++++++++++++++++++++++++++++++++++++ include/unk_02034188.h | 6 -- include/wfc_user_info_warning.h | 6 ++ 6 files changed, 159 insertions(+), 159 deletions(-) delete mode 100644 arm9/src/unk_02034188.c create mode 100644 arm9/src/wfc_user_info_warning.c delete mode 100644 include/unk_02034188.h create mode 100644 include/wfc_user_info_warning.h diff --git a/arm9/arm9.lsf b/arm9/arm9.lsf index 0f29630c..8b49cc27 100644 --- a/arm9/arm9.lsf +++ b/arm9/arm9.lsf @@ -139,7 +139,7 @@ Static arm9 Object unk_02033874.o Object unk_02033B68.o Object unk_02033F50.o - Object unk_02034188.o + Object wfc_user_info_warning.o Object unk_020343A8.o Object map_header.o Object unk_02034A28.o diff --git a/arm9/src/main.c b/arm9/src/main.c index 11d22cfe..d1a60190 100644 --- a/arm9/src/main.c +++ b/arm9/src/main.c @@ -14,7 +14,7 @@ #include "timer3.h" #include "unk_02031734.h" #include "unk_0202F150.h" -#include "unk_02034188.h" +#include "wfc_user_info_warning.h" #include "module_52.h" #include "font.h" diff --git a/arm9/src/unk_02034188.c b/arm9/src/unk_02034188.c deleted file mode 100644 index 1872a8cc..00000000 --- a/arm9/src/unk_02034188.c +++ /dev/null @@ -1,151 +0,0 @@ -#include "global.h" -#include "bg_window.h" -#include "filesystem.h" -#include "game_init.h" -#include "GX_layers.h" -#include "main.h" -#include "msgdata.h" -#include "msgdata/msg.naix" -#include "PAD_pad.h" -#include "string16.h" -#include "text.h" -#include "unk_02034188.h" - -extern void FUN_02002ED0(enum GFBgLayer layer, u32 base_addr, u32 heap_id); -extern void FUN_0200A274(fx32 brightness, fx32, u32); -extern void FUN_0200CB00(struct BgConfig* bg_config, enum GFBgLayer layer, u32 num_tiles, u32, u8, u32 heap_id); -extern void FUN_0200CCA4(struct Window* window, BOOL copy_to_vram, u16 fill_value, u32 palette_num); -extern void FUN_0200E394(BOOL set_brightness_on_bottom_screen); -extern void FUN_0200E3A0(BOOL set_brightness_on_bottom_screen, s32); - -static const struct WindowTemplate sWFCWarningMsgWindowTemplate = { - .bgId = GF_BG_LYR_MAIN_0, - .tilemapLeft = 3, - .tilemapTop = 3, - .width = 26, - .height = 18, - .paletteNum = 0x01, - .baseTile = 0x23, -}; - -static const struct GraphicsModes sWFCWarningMsgGraphicsModes = { - .dispMode = GX_DISPMODE_GRAPHICS, - .bgMode = GX_BGMODE_0, - .subMode = GX_BGMODE_0, - ._2d3dMode = GX_BG0_AS_2D, -}; - -static const struct BgTemplate sWFCWarningMsgBgTemplate = { - .x = 0, - .y = 0, - .bufferSize = 0x800, - .baseTile = 0, - .size = GF_BG_SCR_SIZE_256x256, - .colorMode = GX_BG_COLORMODE_16, - .screenBase = GX_BG_SCRBASE_0x0000, - .charBase = GX_BG_CHARBASE_0x18000, - .bgExtPltt = GX_BG_EXTPLTT_01, - .priority = 1, - .areaOver = GX_BG_AREAOVER_XLU, - .unk17 = 0, - .mosaic = FALSE, -}; - -static const struct GraphicsBanks sWFCWarningMsgGraphicsBanks = { - .bg = 3, - .bgextpltt = 0, - .subbg = 0, - .subbgextpltt = 0, - .obj = 0, - .objextpltt = 0, - .subobj = 0, - .subobjextpltt = 0, - .tex = 0, - .texpltt = 0, -}; - -THUMB_FUNC void ShowWFCUserInfoWarning(u32 heap_id, u32 a1) -{ -#pragma unused(a1) - struct Window window; - - FUN_0200E3A0(PM_LCD_TOP, 0); - FUN_0200E3A0(PM_LCD_BOTTOM, 0); - - FUN_02015EF4(); - Main_SetVBlankIntrCB(NULL, NULL); - FUN_02015F34(NULL, NULL); - - GX_DisableEngineALayers(); - GX_DisableEngineBLayers(); - reg_GX_DISPCNT &= ~REG_GX_DISPCNT_DISPLAY_MASK; - reg_GXS_DB_DISPCNT &= ~REG_GX_DISPCNT_DISPLAY_MASK; - - SetKeyRepeatTimers(4, 8); - - gMain.unk65 = 0; - - GX_SwapDisplay(); - reg_G2_BLDCNT = 0; - reg_G2S_DB_BLDCNT = 0; - reg_GX_DISPCNT &= ~(REG_GX_DISPCNT_OW_MASK | REG_GX_DISPCNT_W1_MASK | REG_GX_DISPCNT_W0_MASK); - reg_GXS_DB_DISPCNT &= ~(REG_GXS_DB_DISPCNT_OW_MASK | REG_GXS_DB_DISPCNT_W1_MASK | REG_GXS_DB_DISPCNT_W0_MASK); - GX_SetBanks(&sWFCWarningMsgGraphicsBanks); - - struct BgConfig* bg_config = BgConfig_Alloc(heap_id); - - SetBothScreensModesAndDisable(&sWFCWarningMsgGraphicsModes); - - InitBgFromTemplate(bg_config, 0, &sWFCWarningMsgBgTemplate, 0); - BgClearTilemapBufferAndCommit(bg_config, 0); - FUN_0200CB00(bg_config, GF_BG_LYR_MAIN_0, 0x01F7, 2, 0, heap_id); - FUN_02002ED0(GF_BG_LYR_MAIN_0, 0x20, heap_id); - BG_ClearCharDataRange(GF_BG_LYR_MAIN_0, 0x20, 0, heap_id); - BG_SetMaskColor(GF_BG_LYR_MAIN_0, 0x6C21); - BG_SetMaskColor(GF_BG_LYR_SUB_0, 0x6C21); - - struct MsgData* warning_messages_data = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, NARC_msg_narc_0613_bin, heap_id); - struct String* warning_message = String_ctor(384, heap_id); - FUN_0201BD5C(); - AddWindow(bg_config, &window, &sWFCWarningMsgWindowTemplate); - FillWindowPixelRect(&window, 0xF, 0, 0, 208, 144); - FUN_0200CCA4(&window, FALSE, 0x01F7, 2); - - ReadMsgDataIntoString(warning_messages_data, 15, warning_message); - AddTextPrinterParameterized(&window, 0, warning_message, 0, 0, 0, 0); - String_dtor(warning_message); - - GX_BothDispOn(); - FUN_0200E394(0); - FUN_0200E394(1); - FUN_0200A274(0, 0x3F, 3); - - while (TRUE) - { - u16 pressed_buttons = PAD_Read(); - - HandleDSLidAction(); - - if (pressed_buttons & PAD_BUTTON_A) - { - break; - } - - OS_WaitIrq(TRUE, OS_IE_V_BLANK); - } - - RemoveWindow(&window); - DestroyMsgData(warning_messages_data); - - ToggleBgLayer(GF_BG_LYR_MAIN_0, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_MAIN_1, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_MAIN_2, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_MAIN_3, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_SUB_0, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_SUB_1, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_SUB_2, GX_LAYER_TOGGLE_OFF); - ToggleBgLayer(GF_BG_LYR_SUB_3, GX_LAYER_TOGGLE_OFF); - - FreeBgTilemapBuffer(bg_config, 0); - FreeToHeap(bg_config); -} diff --git a/arm9/src/wfc_user_info_warning.c b/arm9/src/wfc_user_info_warning.c new file mode 100644 index 00000000..d9edd94c --- /dev/null +++ b/arm9/src/wfc_user_info_warning.c @@ -0,0 +1,151 @@ +#include "global.h" +#include "bg_window.h" +#include "filesystem.h" +#include "game_init.h" +#include "GX_layers.h" +#include "main.h" +#include "msgdata.h" +#include "msgdata/msg.naix" +#include "PAD_pad.h" +#include "string16.h" +#include "text.h" +#include "wfc_user_info_warning.h" + +extern void FUN_02002ED0(enum GFBgLayer layer, u32 base_addr, u32 heap_id); +extern void FUN_0200A274(fx32 brightness, fx32, u32); +extern void FUN_0200CB00(struct BgConfig* bg_config, enum GFBgLayer layer, u32 num_tiles, u32, u8, u32 heap_id); +extern void FUN_0200CCA4(struct Window* window, BOOL copy_to_vram, u16 fill_value, u32 palette_num); +extern void FUN_0200E394(BOOL set_brightness_on_bottom_screen); +extern void FUN_0200E3A0(BOOL set_brightness_on_bottom_screen, s32); + +static const struct WindowTemplate sWFCWarningMsgWindowTemplate = { + .bgId = GF_BG_LYR_MAIN_0, + .tilemapLeft = 3, + .tilemapTop = 3, + .width = 26, + .height = 18, + .paletteNum = 0x01, + .baseTile = 0x23, +}; + +static const struct GraphicsModes sWFCWarningMsgGraphicsModes = { + .dispMode = GX_DISPMODE_GRAPHICS, + .bgMode = GX_BGMODE_0, + .subMode = GX_BGMODE_0, + ._2d3dMode = GX_BG0_AS_2D, +}; + +static const struct BgTemplate sWFCWarningMsgBgTemplate = { + .x = 0, + .y = 0, + .bufferSize = 0x800, + .baseTile = 0, + .size = GF_BG_SCR_SIZE_256x256, + .colorMode = GX_BG_COLORMODE_16, + .screenBase = GX_BG_SCRBASE_0x0000, + .charBase = GX_BG_CHARBASE_0x18000, + .bgExtPltt = GX_BG_EXTPLTT_01, + .priority = 1, + .areaOver = GX_BG_AREAOVER_XLU, + .unk17 = 0, + .mosaic = FALSE, +}; + +static const struct GraphicsBanks sWFCWarningMsgGraphicsBanks = { + .bg = 3, + .bgextpltt = 0, + .subbg = 0, + .subbgextpltt = 0, + .obj = 0, + .objextpltt = 0, + .subobj = 0, + .subobjextpltt = 0, + .tex = 0, + .texpltt = 0, +}; + +THUMB_FUNC void ShowWFCUserInfoWarning(u32 heap_id, u32 a1) +{ +#pragma unused(a1) + struct Window window; + + FUN_0200E3A0(PM_LCD_TOP, 0); + FUN_0200E3A0(PM_LCD_BOTTOM, 0); + + FUN_02015EF4(); + Main_SetVBlankIntrCB(NULL, NULL); + FUN_02015F34(NULL, NULL); + + GX_DisableEngineALayers(); + GX_DisableEngineBLayers(); + reg_GX_DISPCNT &= ~REG_GX_DISPCNT_DISPLAY_MASK; + reg_GXS_DB_DISPCNT &= ~REG_GX_DISPCNT_DISPLAY_MASK; + + SetKeyRepeatTimers(4, 8); + + gMain.unk65 = 0; + + GX_SwapDisplay(); + reg_G2_BLDCNT = 0; + reg_G2S_DB_BLDCNT = 0; + reg_GX_DISPCNT &= ~(REG_GX_DISPCNT_OW_MASK | REG_GX_DISPCNT_W1_MASK | REG_GX_DISPCNT_W0_MASK); + reg_GXS_DB_DISPCNT &= ~(REG_GXS_DB_DISPCNT_OW_MASK | REG_GXS_DB_DISPCNT_W1_MASK | REG_GXS_DB_DISPCNT_W0_MASK); + GX_SetBanks(&sWFCWarningMsgGraphicsBanks); + + struct BgConfig* bg_config = BgConfig_Alloc(heap_id); + + SetBothScreensModesAndDisable(&sWFCWarningMsgGraphicsModes); + + InitBgFromTemplate(bg_config, 0, &sWFCWarningMsgBgTemplate, 0); + BgClearTilemapBufferAndCommit(bg_config, 0); + FUN_0200CB00(bg_config, GF_BG_LYR_MAIN_0, 0x01F7, 2, 0, heap_id); + FUN_02002ED0(GF_BG_LYR_MAIN_0, 0x20, heap_id); + BG_ClearCharDataRange(GF_BG_LYR_MAIN_0, 0x20, 0, heap_id); + BG_SetMaskColor(GF_BG_LYR_MAIN_0, 0x6C21); + BG_SetMaskColor(GF_BG_LYR_SUB_0, 0x6C21); + + struct MsgData* warning_messages_data = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, NARC_msg_narc_0613_bin, heap_id); + struct String* warning_message = String_ctor(384, heap_id); + FUN_0201BD5C(); + AddWindow(bg_config, &window, &sWFCWarningMsgWindowTemplate); + FillWindowPixelRect(&window, 0xF, 0, 0, 208, 144); + FUN_0200CCA4(&window, FALSE, 0x01F7, 2); + + ReadMsgDataIntoString(warning_messages_data, 15, warning_message); + AddTextPrinterParameterized(&window, 0, warning_message, 0, 0, 0, 0); + String_dtor(warning_message); + + GX_BothDispOn(); + FUN_0200E394(0); + FUN_0200E394(1); + FUN_0200A274(0, 0x3F, 3); + + while (TRUE) + { + u16 pressed_buttons = PAD_Read(); + + HandleDSLidAction(); + + if (pressed_buttons & PAD_BUTTON_A) + { + break; + } + + OS_WaitIrq(TRUE, OS_IE_V_BLANK); + } + + RemoveWindow(&window); + DestroyMsgData(warning_messages_data); + + ToggleBgLayer(GF_BG_LYR_MAIN_0, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_MAIN_1, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_MAIN_2, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_MAIN_3, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_SUB_0, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_SUB_1, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_SUB_2, GX_LAYER_TOGGLE_OFF); + ToggleBgLayer(GF_BG_LYR_SUB_3, GX_LAYER_TOGGLE_OFF); + + FreeBgTilemapBuffer(bg_config, 0); + FreeToHeap(bg_config); +} diff --git a/include/unk_02034188.h b/include/unk_02034188.h deleted file mode 100644 index 02ade1f0..00000000 --- a/include/unk_02034188.h +++ /dev/null @@ -1,6 +0,0 @@ -#ifndef POKEDIAMOND_UNK_02034188_H -#define POKEDIAMOND_UNK_02034188_H - -void ShowWFCUserInfoWarning(u32 heap_id, u32 a1); - -#endif diff --git a/include/wfc_user_info_warning.h b/include/wfc_user_info_warning.h new file mode 100644 index 00000000..2ddb8890 --- /dev/null +++ b/include/wfc_user_info_warning.h @@ -0,0 +1,6 @@ +#ifndef POKEDIAMOND_WFC_USER_INFO_WARNING_H +#define POKEDIAMOND_WFC_USER_INFO_WARNING_H + +void ShowWFCUserInfoWarning(u32 heap_id, u32 a1); + +#endif -- cgit v1.2.3