summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xdata/decoration.s44
-rwxr-xr-xinclude/decoration.h8
-rw-r--r--ld_script.txt1
-rwxr-xr-xsrc/decoration.c32
4 files changed, 37 insertions, 48 deletions
diff --git a/data/decoration.s b/data/decoration.s
deleted file mode 100755
index 9a228dcaa..000000000
--- a/data/decoration.s
+++ /dev/null
@@ -1,44 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gUnknown_083ECA5C:: @ 83ECA5C
- obj_pal gUnknown_083EC98C, 0x0008
-
- .align 2
-gUnknown_083ECA64:: @ 83ECA64
- obj_pal Unknown_3EC9AC, 0x0008
-
- .align 2
-gOamData_83ECA6C:: @ 83ECA6C
- .2byte 0x0000
- .2byte 0x4000
- .2byte 0x0400
-
- .align 2
-gSpriteAnim_83ECA74:: @ 83ECA74
- obj_image_anim_frame 0, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83ECA7C:: @ 83ECA7C
- .4byte gSpriteAnim_83ECA74
-
- .align 2
-gSpriteImageTable_83ECA80:: @ 83ECA80
- obj_frame_tiles gSpriteImage_83EC9DC, 0x80
-
- .align 2
-gSpriteTemplate_83ECA88:: @ 83ECA88
- spr_template 0xFFFF, 8, gOamData_83ECA6C, gSpriteAnimTable_83ECA7C, gSpriteImageTable_83ECA80, gDummySpriteAffineAnimTable, sub_8101698
-
- .align 2
-gUnknown_083ECAA0:: @ 83ECAA0
- .4byte sub_8101848
- .4byte sub_80FED3C
-
-@ XXX: what is this?
- .align 2
- .4byte 0x2000000
diff --git a/include/decoration.h b/include/decoration.h
index 761e49e70..9aab819ab 100755
--- a/include/decoration.h
+++ b/include/decoration.h
@@ -235,7 +235,7 @@ extern u8 gUnknown_020391A9;
extern u8 gUnknown_020391AA;
extern u8 gUnknown_02039234;
extern void (*gUnknown_0300485C)(void);
-const struct YesNoFuncTable gUnknown_083EC96C[];
+extern const struct YesNoFuncTable gUnknown_083EC96C[];
extern struct UnkStruct_020391B4 gUnknown_020391B4[16];
extern const u16 gUnknown_083EC654[3];
@@ -334,13 +334,15 @@ void sub_8101700(u8);
void sub_81017A0(u8);
void sub_8109D04(u8);
-void sub_81000C4(u8);
-void sub_810026C(u8);
+void sub_80FED3C(u8);
void sub_80FFAB0(u8);
void sub_80FFB08(u8);
+void sub_81000C4(u8);
+void sub_810026C(u8);
void sub_8100F88(u8);
void sub_8100FB4(u8);
void sub_810153C(u8);
void sub_8101590(u8);
+void sub_8101848(u8);
#endif // GUARD_DECORATION_H
diff --git a/ld_script.txt b/ld_script.txt
index e363bc462..cb18b6d2e 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -435,7 +435,6 @@ SECTIONS {
data/region_map.o(.rodata);
data/cute_sketch.o(.rodata);
src/decoration.o(.rodata);
- data/decoration.o(.rodata);
data/slot_machine.o(.rodata);
src/contest_painting.o(.rodata);
src/battle_ai.o(.rodata);
diff --git a/src/decoration.c b/src/decoration.c
index 1796c1c2c..7595477a3 100755
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -1508,6 +1508,38 @@ const u16 Unknown_3EC9AC[] = INCBIN_U16("graphics/unknown/83EC9AC.gbapal");
const struct YesNoFuncTable gUnknown_083EC9CC = {.yesFunc = sub_810153C, .noFunc = sub_8100EEC};
const struct YesNoFuncTable gUnknown_083EC9D4 = {.yesFunc = sub_8101590, .noFunc = sub_8100EEC};
const u32 gSpriteImage_83EC9DC[] = INCBIN_U32("graphics/unknown_sprites/83EC9DC.4bpp");
+const struct SpritePalette gUnknown_083ECA5C = {.data = gUnknown_083EC98C, .tag = 8};
+const struct SpritePalette gUnknown_083ECA64 = {.data = Unknown_3EC9AC, .tag = 8};
+const struct OamData gOamData_83ECA6C = {
+ .size = 1, .priority = 1
+};
+
+const union AnimCmd gSpriteAnim_83ECA74[] = {
+ ANIMCMD_FRAME(.imageValue = 0, .duration = 0),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_83ECA7C[] = {
+ gSpriteAnim_83ECA74
+};
+
+const struct SpriteFrameImage gSpriteImageTable_83ECA80[] = {
+ obj_frame_tiles(gSpriteImage_83EC9DC)
+};
+
+const struct SpriteTemplate gSpriteTemplate_83ECA88 = {
+ .tileTag = 0xffff,
+ .paletteTag = 8,
+ .oam = &gOamData_83ECA6C,
+ .anims = gSpriteAnimTable_83ECA7C,
+ .images = gSpriteImageTable_83ECA80,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_8101698
+};
+
+const struct YesNoFuncTable gUnknown_083ECAA0 = {.yesFunc = sub_8101848, .noFunc = sub_80FED3C};
+
+u8 *const unref_label_083ECAA8[] = {ewram};
// text