summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bard_music.c61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/bard_music.c b/src/bard_music.c
new file mode 100644
index 000000000..3aaf76a46
--- /dev/null
+++ b/src/bard_music.c
@@ -0,0 +1,61 @@
+
+// Includes
+#include "global.h"
+#include "easy_chat.h"
+
+// Static type declarations
+
+// Static RAM declarations
+
+struct UnkStruct_817C7F4 {
+ u8 unk_00[48];
+};
+
+// Static ROM declarations
+
+// .rodata
+
+extern const struct UnkStruct_817C7F4 gUnknown_085F5494[];
+extern const struct UnkStruct_817C7F4 gUnknown_085FA1D8[];
+extern const struct UnkStruct_817C7F4 *const gUnknown_0860A168[];
+extern const s16 *const gUnknown_0860A320[];
+extern const struct UnkStruct_817C7F4 gUnknown_0860A3AC;
+
+// .text
+
+s16 sub_817C7DC(int x, int y)
+{
+ return gUnknown_0860A320[x][y];
+}
+
+const struct UnkStruct_817C7F4 *sub_817C7F4(u16 word)
+{
+ u32 category;
+ u32 subword;
+ const struct UnkStruct_817C7F4 *ptr;
+
+ if (sub_811EB10(word))
+ {
+ return &gUnknown_0860A3AC;
+ }
+ category = word >> 9;
+ subword = word & 0x1ff;
+ switch (category)
+ {
+ case EC_GROUP_POKEMON:
+ case EC_GROUP_POKEMON_2:
+ ptr = gUnknown_085F5494;
+ break;
+ case EC_GROUP_MOVE_1:
+ case EC_GROUP_MOVE_2:
+ ptr = gUnknown_085FA1D8;
+ break;
+ default:
+ ptr = gUnknown_0860A168[category];
+ break;
+ }
+ ptr += subword;
+ return ptr;
+}
+
+