pokeemerald/src/wallclock.c

84 lines
2.1 KiB
C
Raw Normal View History

2017-11-25 00:00:26 +01:00
#include "global.h"
#include "main.h"
#include "palette.h"
#include "gpu_regs.h"
#include "bg.h"
#include "rtc.h"
#include "clock.h"
#include "wallclock.h"
#include "event_data.h"
#include "graphics.h"
#include "text.h"
#include "window.h"
#include "text_window.h"
#include "menu.h"
#include "unknown_task.h"
#include "task.h"
#include "decompress.h"
// static types
// static declarations
// rodata
extern const u16 gUnknown_085B21D4[];
extern const struct BgTemplate gUnknown_085B21FC[];
extern const struct WindowTemplate gUnknown_085B21DC[];
extern const struct CompressedSpriteSheet gUnknown_085B2208;
extern const struct SpritePalette gUnknown_085B2218;
// text
void sub_81347B4(void)
{
LoadOam();
ProcessSpriteCopyRequests();
TransferPlttBuffer();
}
void LoadWallClockGraphics(void)
{
SetVBlankCallback(NULL);
SetGpuReg(REG_OFFSET_DISPCNT, 0x0000);
SetGpuReg(REG_OFFSET_BG3CNT, 0x0000);
SetGpuReg(REG_OFFSET_BG2CNT, 0x0000);
SetGpuReg(REG_OFFSET_BG1CNT, 0x0000);
SetGpuReg(REG_OFFSET_BG0CNT, 0x0000);
ChangeBgX(0, 0, 0);
ChangeBgY(0, 0, 0);
ChangeBgX(1, 0, 0);
ChangeBgY(1, 0, 0);
ChangeBgX(2, 0, 0);
ChangeBgY(2, 0, 0);
ChangeBgX(3, 0, 0);
ChangeBgY(3, 0, 0);
DmaFillLarge16(3, 0, (void *)VRAM, VRAM_SIZE, 0x1000);
DmaClear32(3, (void *)OAM, OAM_SIZE);
DmaClear16(3, (void *)PLTT, PLTT_SIZE);
LZ77UnCompVram(gUnknown_08DCC05C, (void *)VRAM);
if (gSpecialVar_0x8004 == 0)
{
LoadPalette(gUnknown_08DCC01C, 0x00, 0x20);
}
else
{
LoadPalette(gUnknown_08DCC03C, 0x00, 0x20);
}
LoadPalette(GetOverworldTextboxPalettePtr(), 0xe0, 0x20);
LoadPalette(gUnknown_085B21D4, 0xc0, 0x08);
ResetBgsAndClearDma3BusyFlags(0);
InitBgsFromTemplates(0, gUnknown_085B21FC, 3);
InitWindows(gUnknown_085B21DC);
DeactivateAllTextPrinters();
sub_809882C(0, 0x250, 0xd0);
clear_scheduled_bg_copies_to_vram();
remove_some_task();
ResetTasks();
ResetSpriteData();
ResetPaletteFade();
FreeAllSpritePalettes();
LoadCompressedObjectPic(&gUnknown_085B2208);
LoadSpritePalettes(&gUnknown_085B2218);
}