mirror of
https://github.com/pret/pokediamond.git
synced 2026-10-04 08:21:17 -04:00
Merge pull request #342 from remicalixte/unk_0208A998
Decompile unk_0208A998.s to error_message_reset.c
This commit is contained in:
+1
-1
@@ -317,7 +317,7 @@ Static arm9
|
||||
Object unk_0208A258.o
|
||||
Object unk_0208A300.o
|
||||
Object unk_0208A338.o
|
||||
Object unk_0208A998.o
|
||||
Object error_message_reset.o
|
||||
### Third-party libraries ###
|
||||
Object unk_0208AC14.o
|
||||
Object custom_allocator.o
|
||||
|
||||
@@ -1,294 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "global.inc"
|
||||
|
||||
.extern gMain
|
||||
|
||||
.section .rodata
|
||||
|
||||
.global UNK_020FF49C
|
||||
UNK_020FF49C: ; 0x020FF49C
|
||||
.byte 0x00, 0x03, 0x03, 0x1A, 0x12, 0x01, 0x23, 0x00
|
||||
|
||||
.global UNK_020FF4A4
|
||||
UNK_020FF4A4: ; 0x020FF4A4
|
||||
.byte 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.global UNK_020FF4AC
|
||||
UNK_020FF4AC: ; 0x020FF4AC
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.global UNK_020FF4BC
|
||||
UNK_020FF4BC: ; 0x020FF4BC
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x06, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.global UNK_020FF4D8
|
||||
UNK_020FF4D8: ; 0x020FF4D8
|
||||
.byte 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.section .bss
|
||||
|
||||
.global sErrorMessagePrinterLock
|
||||
sErrorMessagePrinterLock: ; 0x021C8C58
|
||||
.space 0x4
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start FUN_0208A998
|
||||
FUN_0208A998: ; 0x0208A998
|
||||
ldr r3, _0208A9AC ; =0x027E0000
|
||||
ldr r1, _0208A9B0 ; =0x00003FF8
|
||||
mov r0, #0x1
|
||||
ldr r2, [r3, r1]
|
||||
orr r0, r2
|
||||
str r0, [r3, r1]
|
||||
ldr r3, _0208A9B4 ; =MI_WaitDma
|
||||
mov r0, #0x3
|
||||
bx r3
|
||||
nop
|
||||
_0208A9AC: .word 0x027E0000
|
||||
_0208A9B0: .word 0x00003FF8
|
||||
_0208A9B4: .word MI_WaitDma
|
||||
|
||||
thumb_func_start PrintErrorMessageAndReset
|
||||
PrintErrorMessageAndReset: ; 0x0208A9B8
|
||||
push {r4-r7, lr}
|
||||
sub sp, #0x24
|
||||
ldr r0, _0208ABC8 ; =sErrorMessagePrinterLock
|
||||
ldr r1, [r0, #0x0]
|
||||
cmp r1, #0x1
|
||||
bne _0208A9C6
|
||||
b _0208ABC4
|
||||
_0208A9C6:
|
||||
mov r1, #0x1
|
||||
str r1, [r0, #0x0]
|
||||
mov r0, #0x0
|
||||
bl OS_GetInitArenaHi
|
||||
add r1, r0, #0x0
|
||||
mov r0, #0x0
|
||||
bl OS_SetArenaHi
|
||||
mov r0, #0x0
|
||||
bl OS_GetInitArenaLo
|
||||
add r1, r0, #0x0
|
||||
mov r0, #0x0
|
||||
bl OS_SetArenaLo
|
||||
mov r1, #0x1
|
||||
ldr r0, _0208ABCC ; =UNK_020FF4A4
|
||||
add r2, r1, #0x0
|
||||
mov r3, #0x0
|
||||
bl FUN_020166C8
|
||||
mov r0, #0x0
|
||||
add r1, r0, #0x0
|
||||
bl FUN_0200E3A0
|
||||
mov r0, #0x1
|
||||
mov r1, #0x0
|
||||
bl FUN_0200E3A0
|
||||
mov r0, #0x1
|
||||
bl OS_DisableIrqMask
|
||||
ldr r1, _0208ABD0 ; =FUN_0208A998
|
||||
mov r0, #0x1
|
||||
bl OS_SetIrqFunction
|
||||
mov r0, #0x1
|
||||
bl OS_EnableIrqMask
|
||||
mov r0, #0x0
|
||||
add r1, r0, #0x0
|
||||
bl Main_SetVBlankIntrCB
|
||||
mov r0, #0x0
|
||||
add r1, r0, #0x0
|
||||
bl FUN_02015F34
|
||||
bl FUN_0201E6D8
|
||||
bl FUN_0201E740
|
||||
mov r2, #0x1
|
||||
lsl r2, r2, #0x1a
|
||||
ldr r1, [r2, #0x0]
|
||||
ldr r0, _0208ABD4 ; =0xFFFFE0FF
|
||||
and r1, r0
|
||||
str r1, [r2, #0x0]
|
||||
ldr r2, _0208ABD8 ; =0x04001000
|
||||
ldr r1, [r2, #0x0]
|
||||
and r0, r1
|
||||
str r0, [r2, #0x0]
|
||||
mov r0, #0x4
|
||||
mov r1, #0x8
|
||||
bl FUN_0201669C
|
||||
ldr r0, _0208ABDC ; =gMain + 0x60
|
||||
mov r1, #0x0
|
||||
strb r1, [r0, #0x5]
|
||||
bl FUN_0201E7A0
|
||||
ldr r3, _0208ABE0 ; =0x04000050
|
||||
mov r0, #0x0
|
||||
strh r0, [r3, #0x0]
|
||||
ldr r2, _0208ABE4 ; =0x04001050
|
||||
sub r3, #0x50
|
||||
strh r0, [r2, #0x0]
|
||||
ldr r1, [r3, #0x0]
|
||||
ldr r0, _0208ABE8 ; =0xFFFF1FFF
|
||||
sub r2, #0x50
|
||||
and r1, r0
|
||||
str r1, [r3, #0x0]
|
||||
ldr r1, [r2, #0x0]
|
||||
and r0, r1
|
||||
str r0, [r2, #0x0]
|
||||
ldr r0, _0208ABEC ; =UNK_020FF4D8
|
||||
bl FUN_0201E66C
|
||||
mov r0, #0x0
|
||||
bl FUN_02016B94
|
||||
str r0, [sp, #0x10]
|
||||
ldr r0, _0208ABF0 ; =UNK_020FF4AC
|
||||
bl FUN_02016BBC
|
||||
mov r1, #0x0
|
||||
ldr r0, [sp, #0x10]
|
||||
ldr r2, _0208ABF4 ; =UNK_020FF4BC
|
||||
add r3, r1, #0x0
|
||||
bl FUN_02016C18
|
||||
ldr r0, [sp, #0x10]
|
||||
mov r1, #0x0
|
||||
bl FUN_02018744
|
||||
mov r1, #0x0
|
||||
str r1, [sp, #0x0]
|
||||
ldr r0, [sp, #0x10]
|
||||
ldr r2, _0208ABF8 ; =0x000001F7
|
||||
mov r3, #0x2
|
||||
str r1, [sp, #0x4]
|
||||
bl FUN_0200CB00
|
||||
mov r0, #0x0
|
||||
mov r1, #0x20
|
||||
add r2, r0, #0x0
|
||||
bl FUN_02002ED0
|
||||
mov r0, #0x0
|
||||
mov r1, #0x20
|
||||
add r2, r0, #0x0
|
||||
add r3, r0, #0x0
|
||||
bl FUN_02017F18
|
||||
ldr r1, _0208ABFC ; =0x00006C21
|
||||
mov r0, #0x0
|
||||
bl FUN_02017FE4
|
||||
ldr r1, _0208ABFC ; =0x00006C21
|
||||
mov r0, #0x4
|
||||
bl FUN_02017FE4
|
||||
mov r0, #0x1
|
||||
mov r1, #0x1a
|
||||
mov r2, #0xc8
|
||||
mov r3, #0x0
|
||||
bl NewMsgDataFromNarc
|
||||
str r0, [sp, #0xc]
|
||||
mov r0, #0x6
|
||||
lsl r0, r0, #0x6
|
||||
mov r1, #0x0
|
||||
bl String_ctor
|
||||
add r4, r0, #0x0
|
||||
bl FUN_0201BD5C
|
||||
ldr r0, [sp, #0x10]
|
||||
ldr r2, _0208AC00 ; =UNK_020FF49C
|
||||
add r1, sp, #0x14
|
||||
bl FUN_02019150
|
||||
mov r0, #0xd0
|
||||
str r0, [sp, #0x0]
|
||||
mov r0, #0x90
|
||||
mov r2, #0x0
|
||||
str r0, [sp, #0x4]
|
||||
add r0, sp, #0x14
|
||||
mov r1, #0xf
|
||||
add r3, r2, #0x0
|
||||
bl FUN_020196F4
|
||||
ldr r2, _0208ABF8 ; =0x000001F7
|
||||
add r0, sp, #0x14
|
||||
mov r1, #0x0
|
||||
mov r3, #0x2
|
||||
bl FUN_0200CCA4
|
||||
ldr r0, [sp, #0xc]
|
||||
mov r1, #0x3
|
||||
add r2, r4, #0x0
|
||||
bl ReadMsgDataIntoString
|
||||
mov r1, #0x0
|
||||
str r1, [sp, #0x0]
|
||||
str r1, [sp, #0x4]
|
||||
add r0, sp, #0x14
|
||||
add r2, r4, #0x0
|
||||
add r3, r1, #0x0
|
||||
str r1, [sp, #0x8]
|
||||
bl AddTextPrinterParameterized
|
||||
add r0, r4, #0x0
|
||||
bl String_dtor
|
||||
bl FUN_0201E788
|
||||
mov r0, #0x0
|
||||
bl FUN_0200E394
|
||||
mov r0, #0x1
|
||||
bl FUN_0200E394
|
||||
mov r0, #0x0
|
||||
mov r1, #0x3f
|
||||
mov r2, #0x3
|
||||
bl FUN_0200A274
|
||||
bl FUN_02032DAC
|
||||
mov r4, #0x1
|
||||
_0208AB58:
|
||||
bl HandleDSLidAction
|
||||
bl FUN_0202FB80
|
||||
bl FUN_02033678
|
||||
cmp r0, #0x0
|
||||
bne _0208AB72
|
||||
add r0, r4, #0x0
|
||||
add r1, r4, #0x0
|
||||
bl OS_WaitIrq
|
||||
b _0208AB58
|
||||
_0208AB72:
|
||||
ldr r5, _0208AC04 ; =0x04000130
|
||||
ldr r4, _0208AC08 ; =0x027FFFA8
|
||||
ldr r7, _0208AC0C ; =0x00002FFF
|
||||
mov r6, #0x1
|
||||
_0208AB7A:
|
||||
bl HandleDSLidAction
|
||||
ldrh r1, [r5, #0x0]
|
||||
ldrh r0, [r4, #0x0]
|
||||
orr r1, r0
|
||||
ldr r0, _0208AC0C ; =0x00002FFF
|
||||
eor r0, r1
|
||||
and r0, r7
|
||||
lsl r0, r0, #0x10
|
||||
lsr r0, r0, #0x10
|
||||
tst r0, r6
|
||||
bne _0208AB9C
|
||||
mov r0, #0x1
|
||||
add r1, r0, #0x0
|
||||
bl OS_WaitIrq
|
||||
b _0208AB7A
|
||||
_0208AB9C:
|
||||
ldr r1, _0208AC10 ; =0x00007FFF
|
||||
mov r0, #0x0
|
||||
bl FUN_0200E3A0
|
||||
ldr r1, _0208AC10 ; =0x00007FFF
|
||||
mov r0, #0x1
|
||||
bl FUN_0200E3A0
|
||||
add r0, sp, #0x14
|
||||
bl FUN_02019178
|
||||
ldr r0, [sp, #0xc]
|
||||
bl DestroyMsgData
|
||||
ldr r0, [sp, #0x10]
|
||||
bl FreeToHeap
|
||||
mov r0, #0x0
|
||||
bl OS_ResetSystem
|
||||
_0208ABC4:
|
||||
add sp, #0x24
|
||||
pop {r4-r7, pc}
|
||||
.balign 4
|
||||
_0208ABC8: .word sErrorMessagePrinterLock
|
||||
_0208ABCC: .word UNK_020FF4A4
|
||||
_0208ABD0: .word FUN_0208A998
|
||||
_0208ABD4: .word 0xFFFFE0FF
|
||||
_0208ABD8: .word 0x04001000
|
||||
_0208ABDC: .word gMain + 0x60
|
||||
_0208ABE0: .word 0x04000050
|
||||
_0208ABE4: .word 0x04001050
|
||||
_0208ABE8: .word 0xFFFF1FFF
|
||||
_0208ABEC: .word UNK_020FF4D8
|
||||
_0208ABF0: .word UNK_020FF4AC
|
||||
_0208ABF4: .word UNK_020FF4BC
|
||||
_0208ABF8: .word 0x000001F7
|
||||
_0208ABFC: .word 0x00006C21
|
||||
_0208AC00: .word UNK_020FF49C
|
||||
_0208AC04: .word 0x04000130
|
||||
_0208AC08: .word 0x027FFFA8
|
||||
_0208AC0C: .word 0x00002FFF
|
||||
_0208AC10: .word 0x00007FFF
|
||||
+1
-1
@@ -5478,7 +5478,6 @@
|
||||
.extern FUN_0208A330
|
||||
.extern FUN_0208A334
|
||||
.extern FUN_0208A338
|
||||
.extern PrintErrorMessageAndReset
|
||||
.extern FUN_0208AC14
|
||||
.extern FUN_0208AC58
|
||||
.extern FUN_0208ACEC
|
||||
@@ -8518,3 +8517,4 @@
|
||||
.extern CARDi_InitCommon
|
||||
.extern MonNotFaintedOrEgg
|
||||
.extern CountAlivePokemon
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
#include "global.h"
|
||||
#include "error_handling.h"
|
||||
#include "error_message_reset.h"
|
||||
|
||||
extern u32 FUN_02031810(void);
|
||||
extern void PrintErrorMessageAndReset(void);
|
||||
|
||||
THUMB_FUNC void ErrorHandling(void)
|
||||
{
|
||||
|
||||
@@ -0,0 +1,146 @@
|
||||
#include "error_message_reset.h"
|
||||
|
||||
const u32 UNK_020FF49C[2] = { 0x1a030300, 0x00230112 };
|
||||
|
||||
const u32 UNK_020FF4A4[2] = { 0x00020000, 0x00000000 };
|
||||
|
||||
const struct GraphicsModes UNK_020FF4AC = { mode1 : 1 };
|
||||
|
||||
const u32 UNK_020FF4BC[7] = { 0x00, 0x00, 0x0800, 0x00, 0x06000001, 0x0100, 0x00 };
|
||||
|
||||
const struct GraphicsBanks UNK_020FF4D8 = { bg : 3 };
|
||||
|
||||
u32 sErrorMessagePrinterLock;
|
||||
|
||||
extern void FUN_0200E3A0(PMLCDTarget, int);
|
||||
extern void FUN_0201E6D8();
|
||||
extern void FUN_0201E7A0();
|
||||
extern void FUN_0201E66C(const struct GraphicsBanks *banks);
|
||||
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_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_0201E788();
|
||||
extern void FUN_0200E394(u32 param0);
|
||||
extern void FUN_0200A274(u32 param0, u32 param1, u32 param2);
|
||||
extern BOOL FUN_02032DAC(void);
|
||||
extern BOOL FUN_0202FB80(void);
|
||||
extern BOOL FUN_02033678(void);
|
||||
extern void FUN_02019178(u32 *param0);
|
||||
extern void FUN_0201E740();
|
||||
|
||||
THUMB_FUNC void VBlankHandler()
|
||||
{
|
||||
*(vu32 *)HW_INTR_CHECK_BUF |= 1;
|
||||
|
||||
MI_WaitDma(3);
|
||||
}
|
||||
|
||||
THUMB_FUNC void PrintErrorMessageAndReset()
|
||||
{
|
||||
|
||||
u32 *ptr;
|
||||
u32 buf[4];
|
||||
|
||||
if (sErrorMessagePrinterLock != 1)
|
||||
{
|
||||
sErrorMessagePrinterLock = 1;
|
||||
OS_SetArenaHi(OS_ARENA_MAIN, OS_GetInitArenaHi(OS_ARENA_MAIN));
|
||||
OS_SetArenaLo(OS_ARENA_MAIN, OS_GetInitArenaLo(OS_ARENA_MAIN));
|
||||
|
||||
FUN_020166C8((u32 *)UNK_020FF4A4, 1, 1, 0);
|
||||
FUN_0200E3A0(PM_LCD_TOP, 0);
|
||||
FUN_0200E3A0(PM_LCD_BOTTOM, 0);
|
||||
|
||||
OS_DisableIrqMask(1);
|
||||
OS_SetIrqFunction(1, &VBlankHandler);
|
||||
OS_EnableIrqMask(1);
|
||||
|
||||
Main_SetVBlankIntrCB(NULL, NULL);
|
||||
|
||||
FUN_02015F34(NULL, NULL);
|
||||
FUN_0201E6D8();
|
||||
FUN_0201E740();
|
||||
|
||||
reg_GX_DISPCNT &= 0xFFFFE0FF;
|
||||
reg_GXS_DB_DISPCNT &= 0xFFFFE0FF;
|
||||
|
||||
FUN_0201669C(4, 8);
|
||||
|
||||
gMain.unk65 = 0;
|
||||
FUN_0201E7A0();
|
||||
|
||||
reg_G2_BLDCNT = 0;
|
||||
reg_G2S_DB_BLDCNT = 0;
|
||||
reg_GX_DISPCNT &= 0xFFFF1FFF;
|
||||
reg_GXS_DB_DISPCNT &= 0xFFFF1FFF;
|
||||
|
||||
FUN_0201E66C(&UNK_020FF4D8);
|
||||
ptr = FUN_02016B94(0);
|
||||
FUN_02016BBC(&UNK_020FF4AC);
|
||||
|
||||
FUN_02016C18(ptr, 0, UNK_020FF4BC, 0);
|
||||
FUN_02018744(ptr, 0);
|
||||
|
||||
FUN_0200CB00(ptr, 0, 503, 2, 0, 0);
|
||||
|
||||
FUN_02002ED0(0, 0x20, 0);
|
||||
FUN_02017F18(0, 0x20, 0, 0);
|
||||
FUN_02017FE4(0, 0x6C21);
|
||||
FUN_02017FE4(4, 0x6C21);
|
||||
|
||||
struct MsgData *msg_data = NewMsgDataFromNarc(1, NARC_MSGDATA_MSG, 0xc8, 0);
|
||||
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);
|
||||
|
||||
ReadMsgDataIntoString(msg_data, 3, str);
|
||||
|
||||
AddTextPrinterParameterized((u32)buf, 0, (const u16 *)str, 0, 0, 0, NULL); // wtf
|
||||
|
||||
String_dtor(str);
|
||||
FUN_0201E788();
|
||||
FUN_0200E394(0);
|
||||
FUN_0200E394(1);
|
||||
FUN_0200A274(0, 0x3f, 3);
|
||||
FUN_02032DAC();
|
||||
|
||||
lid:
|
||||
HandleDSLidAction();
|
||||
FUN_0202FB80();
|
||||
if (!FUN_02033678())
|
||||
{
|
||||
OS_WaitIrq(1, 1);
|
||||
goto lid;
|
||||
}
|
||||
|
||||
|
||||
lid2:
|
||||
HandleDSLidAction();
|
||||
if (!((u16)(((reg_PAD_KEYINPUT | *(vu16 *)HW_BUTTON_XY_BUF) ^ 0x2FFF) & 0x2FFF) & 1))
|
||||
{
|
||||
OS_WaitIrq(1, 1);
|
||||
goto lid2;
|
||||
}
|
||||
|
||||
FUN_0200E3A0(PM_LCD_TOP, 0x7FFF);
|
||||
FUN_0200E3A0(PM_LCD_BOTTOM, 0x7FFF);
|
||||
|
||||
FUN_02019178(buf);
|
||||
|
||||
DestroyMsgData(msg_data);
|
||||
FreeToHeap(ptr);
|
||||
|
||||
OS_ResetSystem(0);
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -1,11 +1,11 @@
|
||||
#include "heap.h"
|
||||
#include "error_message_reset.h"
|
||||
|
||||
extern void *tempName_NNS_FndCreateExpHeapEx(void *param0, u32 param1, u32 param2);
|
||||
extern void *tempName_NNS_FndAllocFromExpHeapEx(void *param0, u32 param1, s32 param2);
|
||||
extern void thunk_FUN_020adc8c();
|
||||
extern void FUN_020ADDF0(void *ptr1, void *ptr2);
|
||||
extern u32 FUN_02031810(void);
|
||||
extern void PrintErrorMessageAndReset(void);
|
||||
extern u32 FUN_020ADDC8(void *param0);
|
||||
extern void FUN_020AE82C(u32 param0, void *param1, u32 param2);
|
||||
extern u32 FUN_020ADDC0(void *param0);
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
#ifndef POKEDIAMOND_ERROR_MESSAGE_RESET_H
|
||||
#define POKEDIAMOND_ERROR_MESSAGE_RESET_H
|
||||
|
||||
#include "global.h"
|
||||
#include "heap.h"
|
||||
#include "SPI_pm.h"
|
||||
#include "game_init.h"
|
||||
#include "msgdata.h"
|
||||
#include "text.h"
|
||||
|
||||
|
||||
|
||||
struct GraphicsBanks
|
||||
{
|
||||
s32 bg;
|
||||
s32 bgextpltt;
|
||||
s32 subbg;
|
||||
s32 subbgextpltt;
|
||||
s32 obj;
|
||||
s32 objextpltt;
|
||||
s32 subobj;
|
||||
s32 subobjextpltt;
|
||||
s32 tex;
|
||||
s32 pltt;
|
||||
};
|
||||
|
||||
|
||||
struct GraphicsModes {
|
||||
u32 mode1;
|
||||
u32 mode2;
|
||||
u32 mode3;
|
||||
u32 mode4;
|
||||
};
|
||||
|
||||
|
||||
THUMB_FUNC void VBlankHandler();
|
||||
THUMB_FUNC void PrintErrorMessageAndReset();
|
||||
|
||||
#endif //POKEDIAMOND_ERROR_MESSAGE_RESET_H
|
||||
Reference in New Issue
Block a user