summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/quest_log.s73
-rw-r--r--src/quest_log.c29
2 files changed, 29 insertions, 73 deletions
diff --git a/asm/quest_log.s b/asm/quest_log.s
index 3c4845ae6..655d791c5 100644
--- a/asm/quest_log.s
+++ b/asm/quest_log.s
@@ -5,79 +5,6 @@
.text
- thumb_func_start sub_8113E88
-sub_8113E88: @ 8113E88
- lsls r0, 16
- lsrs r0, 16
- ldr r2, _08113EA4 @ =gUnknown_203B044
- ldrh r3, [r2, 0x2]
- ldr r2, _08113EA8 @ =gUnknown_8456AA0
- adds r0, r2
- ldrb r0, [r0]
- subs r0, 0x4
- muls r0, r3
- adds r0, 0x4
- adds r1, r0
- adds r0, r1, 0
- bx lr
- .align 2, 0
-_08113EA4: .4byte gUnknown_203B044
-_08113EA8: .4byte gUnknown_8456AA0
- thumb_func_end sub_8113E88
-
- thumb_func_start sub_8113EAC
-sub_8113EAC: @ 8113EAC
- push {r4,r5,lr}
- adds r3, r1, 0
- lsls r0, 16
- lsrs r1, r0, 16
- adds r4, r1, 0
- lsls r2, 24
- lsrs r2, 24
- adds r5, r2, 0
- cmp r3, 0
- beq _08113EE0
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _08113ED0
- adds r0, r3, 0
- bl GetSpeciesName
- b _08113F08
-_08113ED0:
- ldr r1, _08113EDC @ =gText_EggNickname
- adds r0, r3, 0
- bl StringCopy
- b _08113F08
- .align 2, 0
-_08113EDC: .4byte gText_EggNickname
-_08113EE0:
- movs r0, 0xCE
- lsls r0, 1
- cmp r4, r0
- beq _08113F00
- movs r0, 0xB
- adds r1, r4, 0
- muls r1, r0
- ldr r0, _08113EFC @ =gSpeciesNames
- adds r1, r0
- adds r0, r2, 0
- bl UnkTextUtil_SetPtrI
- b _08113F08
- .align 2, 0
-_08113EFC: .4byte gSpeciesNames
-_08113F00:
- ldr r1, _08113F10 @ =gText_EggNickname
- adds r0, r5, 0
- bl UnkTextUtil_SetPtrI
-_08113F08:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08113F10: .4byte gText_EggNickname
- thumb_func_end sub_8113EAC
-
thumb_func_start sub_8113F14
sub_8113F14: @ 8113F14
push {r4,lr}
diff --git a/src/quest_log.c b/src/quest_log.c
index 6e2767a1e..82b93898e 100644
--- a/src/quest_log.c
+++ b/src/quest_log.c
@@ -1,5 +1,6 @@
#include "global.h"
#include "constants/species.h"
+#include "data2.h"
#include "malloc.h"
#include "main.h"
#include "task.h"
@@ -9,6 +10,7 @@
#include "menu_helpers.h"
#include "window.h"
#include "text_window.h"
+#include "unk_text_util.h"
#include "event_data.h"
#include "event_scripts.h"
#include "string_util.h"
@@ -3504,3 +3506,30 @@ u16 * sub_8113DE0(u16 a0, u16 * a1)
r5 = (void *)r5 + (r1 * r6 + 4);
return r5;
}
+
+u16 * sub_8113E88(u16 a0, u16 * a1)
+{
+ a1 = (void *)a1 + (gUnknown_203B044.unk_2 * (gUnknown_8456AA0[a0] - 4) + 4);
+ return a1;
+}
+
+// TODO: delete this declaration once data_83FECCC.s is decompiled
+extern const u8 gText_EggNickname[];
+
+void sub_8113EAC(u16 a0, u8 * a1, u8 a2)
+{
+ if (a1 != NULL)
+ {
+ if (a0 != SPECIES_EGG)
+ GetSpeciesName(a1, a0);
+ else
+ StringCopy(a1, gText_EggNickname);
+ }
+ else
+ {
+ if (a0 != SPECIES_EGG)
+ UnkTextUtil_SetPtrI(a2, gSpeciesNames[a0]);
+ else
+ UnkTextUtil_SetPtrI(a2, gText_EggNickname);
+ }
+}