diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2019-04-05 13:11:38 -0400 |
---|---|---|
committer | huderlem <huderlem@gmail.com> | 2019-04-06 08:16:13 -0500 |
commit | 52ccb2c2fedcb3ea33b6e8900d77857698f3ade3 (patch) | |
tree | c8dd14779eba275d4688d287f6c77199ed2b5b09 | |
parent | 92c1318ec41e38d7abd26376063b6f77dead7d4f (diff) |
through sub_80F5BDC
-rw-r--r-- | asm/pokenav.s | 99 | ||||
-rw-r--r-- | src/menu_specialized.c | 41 |
2 files changed, 41 insertions, 99 deletions
diff --git a/asm/pokenav.s b/asm/pokenav.s index 89e9cd163..e2f33ed2c 100644 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -5,105 +5,6 @@ .text - thumb_func_start sub_80F5B38 -sub_80F5B38: @ 80F5B38 - ldr r0, _080F5B48 @ =gPokenavStructPtr - ldr r0, [r0] - ldr r1, _080F5B4C @ =0x00009345 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - bx lr - .align 2, 0 -_080F5B48: .4byte gPokenavStructPtr -_080F5B4C: .4byte 0x00009345 - thumb_func_end sub_80F5B38 - - thumb_func_start sub_80F5B50 -sub_80F5B50: @ 80F5B50 - push {r4,r5,lr} - sub sp, 0xC - ldr r0, _080F5B68 @ =gPokenavStructPtr - ldr r0, [r0] - ldr r1, _080F5B6C @ =0x00009345 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - beq _080F5B70 - cmp r0, 0x1 - beq _080F5BB4 - b _080F5BCC - .align 2, 0 -_080F5B68: .4byte gPokenavStructPtr -_080F5B6C: .4byte 0x00009345 -_080F5B70: - bl ScanlineEffect_Clear - ldr r0, _080F5BA8 @ =gScanlineEffectRegBuffers - movs r2, 0xEF - movs r3, 0xF4 - lsls r3, 3 - adds r1, r0, r3 - adds r0, 0x20 - movs r3, 0xF -_080F5B82: - strh r2, [r0] - strh r2, [r0, 0x2] - strh r2, [r1] - strh r2, [r1, 0x2] - adds r1, 0x4 - adds r0, 0x4 - subs r3, 0x1 - cmp r3, 0 - bge _080F5B82 - ldr r0, _080F5BAC @ =gPokenavStructPtr - ldr r1, [r0] - ldr r5, _080F5BB0 @ =0x00009345 - adds r1, r5 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - b _080F5BCE - .align 2, 0 -_080F5BA8: .4byte gScanlineEffectRegBuffers -_080F5BAC: .4byte gPokenavStructPtr -_080F5BB0: .4byte 0x00009345 -_080F5BB4: - mov r0, sp - ldr r1, _080F5BD8 @ =gUnknown_083E4990 - ldm r1!, {r2,r3,r5} - stm r0!, {r2,r3,r5} - ldr r0, [sp] - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - bl ScanlineEffect_SetParams - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] -_080F5BCC: - movs r0, 0 -_080F5BCE: - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080F5BD8: .4byte gUnknown_083E4990 - thumb_func_end sub_80F5B50 - - thumb_func_start sub_80F5BDC -sub_80F5BDC: @ 80F5BDC - push {lr} - ldr r1, _080F5BEC @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] - bl ScanlineEffect_InitHBlankDmaTransfer - pop {r0} - bx r0 - .align 2, 0 -_080F5BEC: .4byte gScanlineEffect - thumb_func_end sub_80F5BDC - thumb_func_start sub_80F5BF0 sub_80F5BF0: @ 80F5BF0 push {r4-r7,lr} diff --git a/src/menu_specialized.c b/src/menu_specialized.c index c55a51763..a9cb626f8 100644 --- a/src/menu_specialized.c +++ b/src/menu_specialized.c @@ -1,4 +1,5 @@ #include "global.h" +#include "scanline_effect.h" #include "pokenav.h" /* TODO @@ -416,3 +417,43 @@ void sub_80F5A1C(struct UnkPokenav11 *arg0) // } } +void sub_80F5B38(void) +{ + gPokenavStructPtr->unk9345 = 0; +} + +extern const struct ScanlineEffectParams gUnknown_083E4990; + +bool8 sub_80F5B50(void) +{ + s32 i; + struct ScanlineEffectParams params; + + switch (gPokenavStructPtr->unk9345) + { + case 0: + ScanlineEffect_Clear(); + for (i = 0; i < 16; i++) + { + gScanlineEffectRegBuffers[0][16 + 2 * i] = 0xEF; + gScanlineEffectRegBuffers[0][17 + 2 * i] = 0xEF; + gScanlineEffectRegBuffers[1][16 + 2 * i] = 0xEF; + gScanlineEffectRegBuffers[1][17 + 2 * i] = 0xEF; + } + gPokenavStructPtr->unk9345++; + return TRUE; + case 1: + params = gUnknown_083E4990; + ScanlineEffect_SetParams(params); + gPokenavStructPtr->unk9345++; + break; + } + return FALSE; +} + +void sub_80F5BDC(void) +{ + gScanlineEffect.state = 3; + ScanlineEffect_InitHBlankDmaTransfer(); +} + |