diff options
author | Raúl Peñacoba <raul.mikaop.zelda@gmail.com> | 2017-08-15 15:47:33 +0200 |
---|---|---|
committer | Raúl Peñacoba <raul.mikaop.zelda@gmail.com> | 2017-08-15 15:47:33 +0200 |
commit | db70cd9ff371c6504571d69e52420d1409a163c4 (patch) | |
tree | 6bbb3609edd2e6e997c9d57ac01583ae0dbcaab6 | |
parent | cbe6de0e2a25252ac64313e9a0d032d406b90baf (diff) |
sub_80ED4D8
-rw-r--r-- | asm/pokenav.s | 152 | ||||
-rw-r--r-- | src/pokenav_before.c | 52 |
2 files changed, 52 insertions, 152 deletions
diff --git a/asm/pokenav.s b/asm/pokenav.s index 89489621d..3127141fc 100644 --- a/asm/pokenav.s +++ b/asm/pokenav.s @@ -6,158 +6,6 @@ .text - thumb_func_start sub_80ED4D8 -sub_80ED4D8: @ 80ED4D8 - push {r4,lr} - sub sp, 0x4 - ldr r1, _080ED4F8 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r0, r1, r2 - ldrh r0, [r0] - adds r4, r1, 0 - cmp r0, 0x8 - bls _080ED4EE - b _080ED60E -_080ED4EE: - lsls r0, 2 - ldr r1, _080ED4FC @ =_080ED500 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080ED4F8: .4byte 0x02000000 -_080ED4FC: .4byte _080ED500 - .align 2, 0 -_080ED500: - .4byte _080ED524 - .4byte _080ED542 - .4byte _080ED564 - .4byte _080ED57C - .4byte _080ED582 - .4byte _080ED594 - .4byte _080ED5A4 - .4byte _080ED5E0 - .4byte _080ED5FC -_080ED524: - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r3, 0x10 - bl BeginNormalPaletteFade - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED5EE -_080ED542: - ldr r0, _080ED560 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED60E - movs r0, 0 - bl SetVBlankCallback - bl sub_80EED0C - bl sub_80F3130 - b _080ED5E6 - .align 2, 0 -_080ED560: .4byte gPaletteFade -_080ED564: - bl sub_8055870 - cmp r0, 0 - bne _080ED60E - ldr r1, _080ED578 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - b _080ED5EE - .align 2, 0 -_080ED578: .4byte 0x02000000 -_080ED57C: - bl sub_80F4CF0 - b _080ED5E6 -_080ED582: - bl sub_80EFF34 - ldr r1, _080ED5A0 @ =0x02000000 - movs r2, 0xC1 - lsls r2, 2 - adds r1, r2 - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080ED594: - bl sub_80EFF68 - lsls r0, 24 - cmp r0, 0 - bne _080ED60E - b _080ED5E6 - .align 2, 0 -_080ED5A0: .4byte 0x02000000 -_080ED5A4: - bl sub_80F35B4 - movs r0, 0x2 - bl sub_80EEFBC - ldr r4, _080ED5D8 @ =0x02000000 - movs r1, 0xC2 - lsls r1, 2 - adds r0, r4, r1 - ldr r0, [r0] - movs r1, 0x1 - negs r1, r1 - movs r2, 0 - str r2, [sp] - movs r2, 0x10 - movs r3, 0 - bl BeginNormalPaletteFade - ldr r0, _080ED5DC @ =sub_80EBD4C - bl SetVBlankCallback - movs r2, 0xC1 - lsls r2, 2 - adds r1, r4, r2 - b _080ED5EE - .align 2, 0 -_080ED5D8: .4byte 0x02000000 -_080ED5DC: .4byte sub_80EBD4C -_080ED5E0: - movs r0, 0x2 - bl sub_80EED2C -_080ED5E6: - ldr r1, _080ED5F8 @ =0x02000000 - movs r0, 0xC1 - lsls r0, 2 - adds r1, r0 -_080ED5EE: - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] - b _080ED60E - .align 2, 0 -_080ED5F8: .4byte 0x02000000 -_080ED5FC: - ldr r0, _080ED618 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080ED60E - ldr r0, _080ED61C @ =sub_80ED858 - bl sub_80EBDBC -_080ED60E: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080ED618: .4byte gPaletteFade -_080ED61C: .4byte sub_80ED858 - thumb_func_end sub_80ED4D8 - thumb_func_start sub_80ED620 sub_80ED620: @ 80ED620 push {r4,lr} diff --git a/src/pokenav_before.c b/src/pokenav_before.c index 5f705100f..769fa60b9 100644 --- a/src/pokenav_before.c +++ b/src/pokenav_before.c @@ -1165,3 +1165,55 @@ void sub_80ED3D0() { sub_80EBDBC(&sub_80ED31C); } } + +void sub_80F4CF0(); +void sub_80EFF34(); +bool8 sub_80EFF68(); +void sub_80F35B4(); +void sub_80ED858(); + +void sub_80ED4D8() { + switch (ewram0.var304) { + case 0: + BeginNormalPaletteFade(ewram0.var308, -1, 0, 0x10, 0); + ewram0.var304++; + break; + case 1: + if (gPaletteFade.active) return; + SetVBlankCallback(NULL); + sub_80EED0C(); + sub_80F3130(); + ewram0.var304++; + break; + case 2: + if (sub_8055870()) return; + ewram0.var304++; + break; + case 3: + sub_80F4CF0(); + ewram0.var304++; + break; + case 4: + sub_80EFF34(); + ewram0.var304++; + case 5: + if (sub_80EFF68()) return; + ewram0.var304++; + break; + case 6: + sub_80F35B4(); + sub_80EEFBC(0x2); + BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0); + SetVBlankCallback(sub_80EBD4C); + ewram0.var304++; + break; + case 7: + sub_80EED2C(0x2); + ewram0.var304++; + break; + case 8: + if (gPaletteFade.active) return; + sub_80EBDBC(&sub_80ED858); + break; + } +} |