diff options
Diffstat (limited to 'arm9/modules')
-rw-r--r-- | arm9/modules/19/asm/module_19.s | 111 | ||||
-rw-r--r-- | arm9/modules/19/src/module_19.c | 47 |
2 files changed, 47 insertions, 111 deletions
diff --git a/arm9/modules/19/asm/module_19.s b/arm9/modules/19/asm/module_19.s deleted file mode 100644 index cfdf20fa..00000000 --- a/arm9/modules/19/asm/module_19.s +++ /dev/null @@ -1,111 +0,0 @@ - .include "asm/macros.inc" - .include "global.inc" - .section .text - .balign 4, 0 - - thumb_func_start MOD19_02252440 -MOD19_02252440: ; 0x02252440 - push {r4, lr} - sub sp, #0x10 - add r4, r0, #0 - mov r0, #3 - mov r1, #8 - lsl r2, r0, #0xf - bl CreateHeap - mov r0, #0 - bl GXS_SetGraphicsMode - mov r0, #0x80 - bl GX_SetBankForSubBG - mov r0, #1 - lsl r0, r0, #8 - bl GX_SetBankForSubOBJ - ldr r2, _022524E0 ; =0x04001000 - ldr r0, _022524E4 ; =0xFFCFFFEF - ldr r1, [r2] - mov r3, #0 - and r1, r0 - mov r0, #0x10 - orr r0, r1 - str r0, [r2] - ldr r2, _022524E8 ; =0x02252508 - add r0, r4, #0 - mov r1, #4 - bl InitBgFromTemplate - mov r0, #0 - str r0, [sp] - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r0, #8 - str r0, [sp, #0xc] - mov r0, #0xc - mov r1, #0xa - add r2, r4, #0 - mov r3, #4 - bl GfGfxLoader_LoadCharData - mov r0, #0 - str r0, [sp] - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r0, #8 - str r0, [sp, #0xc] - mov r0, #0xc - mov r1, #0xb - add r2, r4, #0 - mov r3, #4 - bl GfGfxLoader_LoadScrnData - mov r0, #0x20 - str r0, [sp] - mov r0, #8 - str r0, [sp, #4] - mov r0, #0xc - add r1, r0, #0 - mov r2, #4 - mov r3, #0 - bl GfGfxLoader_GXLoadPal - ldr r2, _022524E0 ; =0x04001000 - ldr r0, _022524EC ; =0xFFFF1FFF - ldr r1, [r2] - and r0, r1 - str r0, [r2] - ldr r1, [r2] - ldr r0, _022524F0 ; =0xFFFFE0FF - and r1, r0 - lsr r0, r2, #0x12 - orr r0, r1 - str r0, [r2] - add sp, #0x10 - pop {r4, pc} - .align 2, 0 -_022524E0: .word 0x04001000 -_022524E4: .word 0xFFCFFFEF -_022524E8: .word MOD19_02252508 -_022524EC: .word 0xFFFF1FFF -_022524F0: .word 0xFFFFE0FF - thumb_func_end MOD19_02252440 - - thumb_func_start MOD19_022524F4 -MOD19_022524F4: ; 0x022524F4 - push {r3, lr} - mov r1, #4 - bl FreeBgTilemapBuffer - mov r0, #8 - bl DestroyHeap - pop {r3, pc} - thumb_func_end MOD19_022524F4 - - thumb_func_start MOD19_02252504 -MOD19_02252504: ; 0x02252504 - mov r0, #1 - bx lr - thumb_func_end MOD19_02252504 - - .rodata - .global MOD19_02252508 -MOD19_02252508: ; 0x02252508 - .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - .byte 0x01, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - - .data - .bss diff --git a/arm9/modules/19/src/module_19.c b/arm9/modules/19/src/module_19.c new file mode 100644 index 00000000..1fc6197e --- /dev/null +++ b/arm9/modules/19/src/module_19.c @@ -0,0 +1,47 @@ +#include "global.h"
+#include "heap.h"
+#include "gx.h"
+#include "gf_gfx_loader.h"
+#include "bg_window.h"
+#include "graphic/poketch.naix"
+
+const struct BgTemplate MOD19_02252508 = {
+ .x = 0,
+ .y = 0,
+ .bufferSize = 0x800,
+ .baseTile = 0x000,
+ .size = GF_BG_SCR_SIZE_256x256,
+ .colorMode = GF_BG_CLR_4BPP,
+ .screenBase = 12,
+ .charBase = 0,
+ .priority = 0,
+ .areaOver = 0,
+ .mosaic = 0
+};
+
+THUMB_FUNC void MOD19_02252440(struct BgConfig * bgConfig)
+{
+ CreateHeap(3, 8, 0x18000);
+ GXS_SetGraphicsMode(GX_BGMODE_0);
+ GX_SetBankForSubBG(0x80);
+ GX_SetBankForSubOBJ(0x100);
+ GXS_SetOBJVRamModeChar(GX_OBJVRAMMODE_CHAR_1D_32K);
+ InitBgFromTemplate(bgConfig, GF_BG_LYR_SUB_0, &MOD19_02252508, GF_BG_TYPE_TEXT);
+ GfGfxLoader_LoadCharData(NARC_GRAPHIC_POKETCH, NARC_poketch_narc_0010_NCGR_lz, bgConfig, GF_BG_LYR_SUB_0, 0, 0, TRUE, 8);
+ GfGfxLoader_LoadScrnData(NARC_GRAPHIC_POKETCH, NARC_poketch_narc_0011_NSCR_lz, bgConfig, GF_BG_LYR_SUB_0, 0, 0, TRUE, 8);
+ GfGfxLoader_GXLoadPal(NARC_GRAPHIC_POKETCH, NARC_poketch_narc_0012_NCLR, GF_BG_LYR_SUB_0, 0x00, 0x20, 8);
+ GXS_SetVisibleWnd(GX_WNDMASK_NONE);
+ GXS_SetVisiblePlane(GX_PLANEMASK_BG0);
+}
+
+THUMB_FUNC void MOD19_022524F4(struct BgConfig * bgConfig)
+{
+ FreeBgTilemapBuffer(bgConfig, GF_BG_LYR_SUB_0);
+ DestroyHeap(8);
+}
+
+THUMB_FUNC BOOL MOD19_02252504(struct BgConfig * bgConfig)
+{
+#pragma unused(bgConfig)
+ return TRUE;
+}
|