summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaúl Peñacoba <raul.mikaop.zelda@gmail.com>2017-08-19 13:23:01 +0200
committerRaúl Peñacoba <raul.mikaop.zelda@gmail.com>2017-08-19 13:23:01 +0200
commit0ec479849db4ee6a6323df2da99280d91850632b (patch)
tree53d483e458c6a262693c412bfc9434510b1504c3
parentd543e1a28a781f666c59b1cb53378657084e2587 (diff)
sub_80EDEE4
-rw-r--r--asm/pokenav.s185
-rw-r--r--src/pokenav_before.c62
2 files changed, 62 insertions, 185 deletions
diff --git a/asm/pokenav.s b/asm/pokenav.s
index d673bfaf3..122cdca83 100644
--- a/asm/pokenav.s
+++ b/asm/pokenav.s
@@ -6,191 +6,6 @@
.text
- thumb_func_start sub_80EDEE4
-sub_80EDEE4: @ 80EDEE4
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _080EDF04 @ =0x02000000
- movs r2, 0xC1
- lsls r2, 2
- adds r0, r1, r2
- ldrh r0, [r0]
- adds r4, r1, 0
- cmp r0, 0xA
- bls _080EDEFA
- b _080EE060
-_080EDEFA:
- lsls r0, 2
- ldr r1, _080EDF08 @ =_080EDF0C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080EDF04: .4byte 0x02000000
-_080EDF08: .4byte _080EDF0C
- .align 2, 0
-_080EDF0C:
- .4byte _080EDF38
- .4byte _080EDF50
- .4byte _080EDF80
- .4byte _080EDF98
- .4byte _080EDFB0
- .4byte _080EDFC8
- .4byte _080EDFE0
- .4byte _080EDFF8
- .4byte _080EE01C
- .4byte _080EE030
- .4byte _080EE050
-_080EDF38:
- 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
- b _080EE03C
-_080EDF50:
- ldr r0, _080EDF78 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080EDF5E
- b _080EE060
-_080EDF5E:
- movs r0, 0
- bl SetVBlankCallback
- bl sub_80EED0C
- bl sub_80F3130
- ldr r1, _080EDF7C @ =0x02000000
- movs r0, 0xC1
- lsls r0, 2
- adds r1, r0
- b _080EE042
- .align 2, 0
-_080EDF78: .4byte gPaletteFade
-_080EDF7C: .4byte 0x02000000
-_080EDF80:
- bl sub_80F66E0
- bl sub_80EEE08
- ldr r1, _080EDF94 @ =0x02000000
- movs r2, 0xC1
- lsls r2, 2
- adds r1, r2
- b _080EE042
- .align 2, 0
-_080EDF94: .4byte 0x02000000
-_080EDF98:
- bl sub_80F1080
- lsls r0, 24
- cmp r0, 0
- bne _080EE060
- ldr r1, _080EDFAC @ =0x02000000
- movs r0, 0xC1
- lsls r0, 2
- adds r1, r0
- b _080EE042
- .align 2, 0
-_080EDFAC: .4byte 0x02000000
-_080EDFB0:
- movs r0, 0x5
- bl sub_80EEFBC
- bl sub_80F38B8
- ldr r1, _080EDFDC @ =0x02000000
- movs r2, 0xC1
- lsls r2, 2
- adds r1, r2
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_080EDFC8:
- bl sub_80F38EC
- lsls r0, 24
- cmp r0, 0
- bne _080EE060
- ldr r1, _080EDFDC @ =0x02000000
- movs r0, 0xC1
- lsls r0, 2
- adds r1, r0
- b _080EE042
- .align 2, 0
-_080EDFDC: .4byte 0x02000000
-_080EDFE0:
- bl sub_8055870
- cmp r0, 0
- bne _080EE060
- ldr r1, _080EDFF4 @ =0x02000000
- movs r2, 0xC1
- lsls r2, 2
- adds r1, r2
- b _080EE042
- .align 2, 0
-_080EDFF4: .4byte 0x02000000
-_080EDFF8:
- 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, _080EE018 @ =sub_80EBD18
- bl SetVBlankCallback
- b _080EE03C
- .align 2, 0
-_080EE018: .4byte sub_80EBD18
-_080EE01C:
- movs r0, 0x3
- bl sub_80EED2C
- ldr r1, _080EE02C @ =0x02000000
- movs r0, 0xC1
- lsls r0, 2
- adds r1, r0
- b _080EE042
- .align 2, 0
-_080EE02C: .4byte 0x02000000
-_080EE030:
- ldr r0, _080EE04C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080EE060
-_080EE03C:
- movs r2, 0xC1
- lsls r2, 2
- adds r1, r4, r2
-_080EE042:
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _080EE060
- .align 2, 0
-_080EE04C: .4byte gPaletteFade
-_080EE050:
- bl sub_80F170C
- lsls r0, 24
- cmp r0, 0
- bne _080EE060
- ldr r0, _080EE068 @ =sub_80EE06C
- bl sub_80EBDBC
-_080EE060:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080EE068: .4byte sub_80EE06C
- thumb_func_end sub_80EDEE4
-
thumb_func_start sub_80EE06C
sub_80EE06C: @ 80EE06C
push {r4,r5,lr}
diff --git a/src/pokenav_before.c b/src/pokenav_before.c
index 09a5e8a54..af0933069 100644
--- a/src/pokenav_before.c
+++ b/src/pokenav_before.c
@@ -1926,3 +1926,65 @@ void sub_80EDE70() {
}
}
+
+void sub_80F66E0();
+bool8 sub_80F1080();
+void sub_80EEFBC();
+void sub_80F38B8();
+bool8 sub_80F38EC();
+void sub_80EE06C();
+
+void sub_80EDEE4() {
+ 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:
+ sub_80F66E0();
+ sub_80EEE08();
+ ewram0.var304++;
+ break;
+ case 3:
+ if (sub_80F1080()) return;
+ ewram0.var304++;
+ break;
+ case 4:
+ sub_80EEFBC(0x5);
+ sub_80F38B8();
+ ewram0.var304++;
+ case 5:
+ if (sub_80F38EC()) return;
+ ewram0.var304++;
+ break;
+ case 6:
+ if (sub_8055870()) return;
+ ewram0.var304++;
+ break;
+ case 7:
+ BeginNormalPaletteFade(ewram0.var308, -1, 0x10, 0, 0);
+ SetVBlankCallback(&sub_80EBD18);
+ ewram0.var304++;
+ break;
+ case 8:
+ sub_80EED2C(0x3);
+ ewram0.var304++;
+ break;
+ case 9:
+ if (gPaletteFade.active) return;
+ ewram0.var304++;
+ break;
+ case 0xA:
+ if (sub_80F170C()) return;
+ sub_80EBDBC(&sub_80EE06C);
+ break;
+ }
+
+}