diff options
author | Raúl Peñacoba <raul.mikaop.zelda@gmail.com> | 2017-08-25 11:56:56 +0200 |
---|---|---|
committer | Raúl Peñacoba <raul.mikaop.zelda@gmail.com> | 2017-08-25 11:56:56 +0200 |
commit | d844354e116e2051d601bc647d666a981725e08e (patch) | |
tree | db5dc53b872b6991dfa9e5c3ee1f3ababb37d12b | |
parent | 09fcf47bebf471672f66bd61b6e57b0c18e22f38 (diff) |
sub_80EEE54
-rw-r--r-- | asm/pokenav.s | 104 | ||||
-rw-r--r-- | src/pokenav_before.c | 36 |
2 files changed, 36 insertions, 104 deletions
diff --git a/asm/pokenav.s b/asm/pokenav.s index 148a45095..e38c07dc6 100644 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -6,110 +6,6 @@ .text - thumb_func_start sub_80EEE54 -sub_80EEE54: @ 80EEE54 - push {lr} - ldr r1, _080EEE70 @ =gUnknown_083DFEC4 - ldr r0, [r1] - ldr r2, _080EEE74 @ =0x0000d160 - adds r0, r2 - ldrh r0, [r0] - adds r2, r1, 0 - cmp r0, 0x4 - bhi _080EEF02 - lsls r0, 2 - ldr r1, _080EEE78 @ =_080EEE7C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080EEE70: .4byte gUnknown_083DFEC4 -_080EEE74: .4byte 0x0000d160 -_080EEE78: .4byte _080EEE7C - .align 2, 0 -_080EEE7C: - .4byte _080EEE90 - .4byte _080EEEA4 - .4byte _080EEEB8 - .4byte _080EEEC8 - .4byte _080EEEDC -_080EEE90: - ldr r0, _080EEE9C @ =gPokenavHoennMapMisc_Gfx - ldr r1, _080EEEA0 @ =0x0600c000 - bl LZ77UnCompVram - b _080EEF18 - .align 2, 0 -_080EEE9C: .4byte gPokenavHoennMapMisc_Gfx -_080EEEA0: .4byte 0x0600c000 -_080EEEA4: - ldr r0, _080EEEB0 @ =gUnknown_08E99FB0 - ldr r1, _080EEEB4 @ =0x0600d800 - bl LZ77UnCompVram - b _080EEF18 - .align 2, 0 -_080EEEB0: .4byte gUnknown_08E99FB0 -_080EEEB4: .4byte 0x0600d800 -_080EEEB8: - ldr r0, _080EEEC4 @ =gPokenavHoennMap1_Pal - movs r1, 0x10 - movs r2, 0x20 - bl LoadPalette - b _080EEF18 - .align 2, 0 -_080EEEC4: .4byte gPokenavHoennMap1_Pal -_080EEEC8: - movs r0, 0 - bl sub_80EF58C - movs r0, 0x1 - bl sub_80EF58C - movs r0, 0x2 - bl sub_80EF58C - b _080EEF18 -_080EEEDC: - ldr r2, [r2] - movs r3, 0xC3 - lsls r3, 2 - adds r0, r2, r3 - movs r1, 0 - strh r1, [r0] - ldr r0, _080EEF08 @ =REG_BG1HOFS - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - ldr r1, _080EEF0C @ =REG_BG1CNT - ldr r3, _080EEF10 @ =0x00001b0c - adds r0, r3, 0 - strh r0, [r1] - ldr r0, _080EEF14 @ =0x0000d160 - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] -_080EEF02: - movs r0, 0 - b _080EEF28 - .align 2, 0 -_080EEF08: .4byte REG_BG1HOFS -_080EEF0C: .4byte REG_BG1CNT -_080EEF10: .4byte 0x00001b0c -_080EEF14: .4byte 0x0000d160 -_080EEF18: - ldr r0, _080EEF2C @ =gUnknown_083DFEC4 - ldr r1, [r0] - ldr r2, _080EEF30 @ =0x0000d160 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - movs r0, 0x1 -_080EEF28: - pop {r1} - bx r1 - .align 2, 0 -_080EEF2C: .4byte gUnknown_083DFEC4 -_080EEF30: .4byte 0x0000d160 - thumb_func_end sub_80EEE54 - thumb_func_start sub_80EEF34 sub_80EEF34: @ 80EEF34 push {r4,lr} diff --git a/src/pokenav_before.c b/src/pokenav_before.c index 8804e11ba..b027f2a1d 100644 --- a/src/pokenav_before.c +++ b/src/pokenav_before.c @@ -2894,3 +2894,39 @@ void sub_80EEE20() { while (sub_80EEE54()); } } + +extern const u8 gPokenavHoennMapMisc_Gfx[]; +extern const u8 gUnknown_08E99FB0[]; +extern const u16 gPokenavHoennMap1_Pal[]; + +void sub_80EF58C(u32); + +bool8 sub_80EEE54() { + // Here i've used .h struct instead of .c struct + switch (gUnknown_083DFEC4->unkD160) { + case 0: + LZ77UnCompVram(gPokenavHoennMapMisc_Gfx, (void *)VRAM + 0xC000); + break; + case 1: + LZ77UnCompVram(gUnknown_08E99FB0, (void *)VRAM + 0xD800); + break; + case 2: + LoadPalette(gPokenavHoennMap1_Pal, 0x10, 0x20); + break; + case 3: + sub_80EF58C(0); + sub_80EF58C(1); + sub_80EF58C(2); + break; + case 4: + gUnknown_083DFEC4->unk030C = 0; + REG_BG1HOFS = 0; + REG_BG1VOFS = 0; + REG_BG1CNT = 0x1B0C; + gUnknown_083DFEC4->unkD160++; + default: + return 0; + } + gUnknown_083DFEC4->unkD160++; + return 1; +} |