summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-10-26 21:53:00 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-10-26 21:53:00 -0400
commit48f38a888b55a3070601dae4ea7e016eaeb448f8 (patch)
tree862bcd11de1abb9586edf9b9985c715c24eb08e5
parent135da0136fe52c08b5c43c9d33c1dde748506928 (diff)
through sub_80E9E44
-rw-r--r--asm/secret_base.s82
-rw-r--r--include/menu_indicators.h2
-rw-r--r--include/new_menu_helpers.h1
-rw-r--r--src/secret_base.c35
4 files changed, 34 insertions, 86 deletions
diff --git a/asm/secret_base.s b/asm/secret_base.s
index e4b0e11cc..88ffb813f 100644
--- a/asm/secret_base.s
+++ b/asm/secret_base.s
@@ -5,88 +5,6 @@
.text
- thumb_func_start sub_80E9DEC
-sub_80E9DEC: @ 80E9DEC
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x1
- beq _080E9DFC
- movs r0, 0x5
- bl PlaySE
-_080E9DFC:
- pop {r0}
- bx r0
- thumb_func_end sub_80E9DEC
-
- thumb_func_start sub_80E9E00
-sub_80E9E00: @ 80E9E00
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, =gTasks + 0x8
- adds r4, r0
- ldrb r0, [r4, 0xC]
- movs r1, 0
- bl SetStandardWindowBorderStyle
- ldr r0, =gUnknown_03006310
- ldrh r1, [r4, 0x4]
- ldrh r2, [r4, 0x2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xA]
- adds r0, r5, 0
- bl sub_80E9E44
- movs r0, 0
- bl schedule_bg_copy_tilemap_to_vram
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E9E00
-
- thumb_func_start sub_80E9E44
-sub_80E9E44: @ 80E9E44
- push {r4,lr}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r0, =gTasks + 0x8
- adds r4, r0
- movs r1, 0
- ldrsh r0, [r4, r1]
- movs r2, 0x6
- ldrsh r1, [r4, r2]
- subs r0, r1
- str r0, [sp]
- ldr r0, =0x000013f8
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- adds r0, r4, 0x4
- str r0, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0xBC
- movs r2, 0xC
- movs r3, 0x94
- bl AddScrollIndicatorArrowPairParametrized
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x10]
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80E9E44
-
thumb_func_start sub_80E9E90
sub_80E9E90: @ 80E9E90
push {r4-r6,lr}
diff --git a/include/menu_indicators.h b/include/menu_indicators.h
index 5a3b2e5b8..d0baac810 100644
--- a/include/menu_indicators.h
+++ b/include/menu_indicators.h
@@ -6,7 +6,7 @@
// Exported RAM declarations
// Exported ROM declarations
-u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u8, u8, u16 *);
+u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *);
void RemoveScrollIndicatorArrowPair(u8);
#endif //GUARD_MENU_INDICATORS_H
diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h
index f588967bf..42b8c60b1 100644
--- a/include/new_menu_helpers.h
+++ b/include/new_menu_helpers.h
@@ -11,6 +11,7 @@ void sub_81973FC(u8, u8);
u16 AddTextPrinterParametrized(u8 windowId, u8 fontId, const u8 *str, u8 speed, void ( *callback)(u16, struct TextPrinter *), u8 fgColor, u8 bgColor, u8 shadowColor);
void DisplayItemMessageOnField(u8 taskId, const u8 *src, TaskFunc callback);
void sub_8197434(u8 a0, u8 a1);
+void SetStandardWindowBorderStyle(u8 a0, u8 a1);
void sub_8197930(void);
#endif // GUARD_NEW_MENU_HELPERS_H
diff --git a/src/secret_base.c b/src/secret_base.c
index eccc7b899..73bc78826 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -6,11 +6,12 @@
#include "palette.h"
#include "list_menu.h"
#include "window.h"
+#include "menu.h"
#include "new_menu_helpers.h"
+#include "menu_indicators.h"
#include "map_constants.h"
-#include "species.h"
-#include "moves.h"
-#include "items.h"
+#include "songs.h"
+#include "sound.h"
#include "overworld.h"
#include "fieldmap.h"
#include "field_camera.h"
@@ -47,6 +48,7 @@ EWRAM_DATA struct SecretBaseListMenuBuffer *gUnknown_0203A020 = NULL;
void sub_80E9C9C(u8 taskId);
void game_continue(u8 taskId);
void sub_80E9E00(u8 taskId);
+void sub_80E9E44(u8 taskId);
void sub_80E9E90(u8 taskId);
void task_pc_turn_off(u8 taskId);
u8 sub_80EA20C(u8 sbId);
@@ -1023,3 +1025,30 @@ void game_continue(u8 taskId)
gUnknown_03006310.unk_00 = gUnknown_0203A020->items;
gUnknown_03006310.unk_0e = data[3];
}
+
+void sub_80E9DEC(u32 unused, bool8 flag)
+{
+ if (flag != TRUE)
+ {
+ PlaySE(SE_SELECT);
+ }
+}
+
+void sub_80E9E00(u8 taskId)
+{
+ s16 *data;
+
+ data = gTasks[taskId].data;
+ SetStandardWindowBorderStyle(data[6], 0);
+ data[5] = ListMenuInit(&gUnknown_03006310, data[2], data[1]);
+ sub_80E9E44(taskId);
+ schedule_bg_copy_tilemap_to_vram(0);
+}
+
+void sub_80E9E44(u8 taskId)
+{
+ s16 *data;
+
+ data = gTasks[taskId].data;
+ data[8] = AddScrollIndicatorArrowPairParametrized(0x02, 0xbc, 0x0c, 0x94, data[0] - data[3], 0x13f8, 0x13f8, &data[2]);
+}