summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-10-31 23:18:56 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2017-10-31 23:18:56 -0400
commit3d2571b0c5bb35d0fb21b555e139653e800ededa (patch)
tree058db7af75ccc6f824f3b327a26ef7bf97b730f9
parent8c73c1450f67e4a0ee41583b1d2c8ccca6eb6925 (diff)
sub_8124A70
-rw-r--r--asm/region_map.s38
-rw-r--r--src/region_map.c27
2 files changed, 23 insertions, 42 deletions
diff --git a/asm/region_map.s b/asm/region_map.s
index ea19702e5..ff3696fc2 100644
--- a/asm/region_map.s
+++ b/asm/region_map.s
@@ -5,44 +5,6 @@
.text
- thumb_func_start sub_8124A70
-sub_8124A70: @ 8124A70
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_085A1D68
- ldr r5, =gUnknown_0203A148
- ldr r1, [r5]
- ldr r4, =0x0000088c
- adds r1, r4
- bl LZ77UnCompWram
- ldr r0, [r5]
- adds r0, r4
- str r0, [sp]
- ldr r1, =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r1
- movs r1, 0xE0
- lsls r1, 1
- orrs r0, r1
- ldr r1, =0x0000ffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 10
- orrs r0, r1
- str r0, [sp, 0x4]
- mov r0, sp
- bl LoadSpriteSheet
- ldr r0, =gUnknown_085A1F10
- bl LoadSpritePalette
- bl sub_8124AD4
- bl sub_8124BE4
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_8124A70
-
thumb_func_start sub_8124AD4
sub_8124AD4: @ 8124AD4
push {r4-r7,lr}
diff --git a/src/region_map.c b/src/region_map.c
index b2cb25a59..07ddd7477 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -46,7 +46,7 @@ EWRAM_DATA struct {
/*0x004*/ u16 unk_004;
/*0x006*/ u16 mapSecId;
/*0x008*/ struct RegionMap regionMap;
- /*0x88c*/ u8 filler_88c[0x1c0];
+ /*0x88c*/ u8 unk_88c[0x1c0];
/*0xa4c*/ u8 unk_a4c[0x28];
} *gUnknown_0203A148 = NULL; // a74
@@ -81,6 +81,8 @@ void sub_81248D4(void);
void sub_81248F4(void func(void));
void sub_8124904(void);
void sub_8124A70(void);
+void sub_8124AD4(void);
+void sub_8124BE4(void);
void sub_8124D14(void);
// .rodata
@@ -106,16 +108,18 @@ extern const struct SpriteTemplate gUnknown_085A1C08;
extern const struct OamData gUnknown_085A1C20;
extern const union AnimCmd *const gUnknown_085A1C30[];
extern const u8 gUnknown_085A1C34[];
-extern const struct BgTemplate gUnknown_085A1EE4[];
-extern const struct WindowTemplate gUnknown_085A1EF0[];
+extern const u16 gUnknown_085A1C38[];
extern const u8 gUnknown_085A1C58[];
extern const u8 gUnknown_085A1C90[];
-extern const u16 gUnknown_085A1C38[];
+extern const u8 gUnknown_085A1D68[];
+extern const struct BgTemplate gUnknown_085A1EE4[];
+extern const struct WindowTemplate gUnknown_085A1EF0[];
extern const struct {
const u8 *const *name;
u16 mapSecId;
u16 flag;
} gUnknown_085A1EDC[];
+extern const struct SpritePalette gUnknown_085A1F10;
// .text
@@ -1459,3 +1463,18 @@ void sub_8124904(void)
gUnknown_03001180 = FALSE;
}
}
+
+
+void sub_8124A70(void)
+{
+ struct SpriteSheet sheet;
+
+ LZ77UnCompWram(gUnknown_085A1D68, gUnknown_0203A148->unk_88c);
+ sheet.data = gUnknown_0203A148->unk_88c;
+ sheet.size = 0x1c0;
+ sheet.tag = 2;
+ LoadSpriteSheet(&sheet);
+ LoadSpritePalette(&gUnknown_085A1F10);
+ sub_8124AD4();
+ sub_8124BE4();
+}