summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/slot_machine.s102
-rw-r--r--include/graphics.h7
-rw-r--r--ld_script.txt1
-rw-r--r--src/field/slot_machine.c79
4 files changed, 80 insertions, 109 deletions
diff --git a/data/slot_machine.s b/data/slot_machine.s
deleted file mode 100644
index 23d2b8a74..000000000
--- a/data/slot_machine.s
+++ /dev/null
@@ -1,102 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gUnknown_083EDD1C:: @ 83EDD1C
- .4byte gUnknown_08E95A18 + 148
- .4byte gUnknown_08E95A18 + 150
- .4byte gUnknown_08E95A18 + 152
- .4byte gUnknown_08E95A18 + 154
- .4byte gUnknown_08E95A18 + 156
-
-gUnknown_083EDD30:: @ 83EDD30
- .byte 0x4A, 0x4B, 0x4C, 0x4E, 0x4D
-
-gUnknown_083EDD35:: @ 83EDD35
- .byte 0, 0, 1, 2, 3, 4
-
-gUnknown_083EDD3B:: @ 83EDD3B
- .byte 1, 2, 2
-
- .align 1
-Unknown_83EDD3E:
- .ifdef SAPPHIRE
- .incbin "graphics/unknown/sapphire_83EDD96.gbapal"
- .else
- .incbin "graphics/unknown/ruby_83EDD3E.gbapal"
- .endif
-
- .align 1
-Unknown_83EDD5E:
- .ifdef SAPPHIRE
- .incbin "graphics/unknown/sapphire_83EDDB6.gbapal"
- .else
- .incbin "graphics/unknown/ruby_83EDD5E.gbapal"
- .endif
-
- .align 1
-Unknown_83EDD7E:
- .ifdef SAPPHIRE
- .incbin "graphics/unknown/sapphire_83EDDD6.gbapal"
- .else
- .incbin "graphics/unknown/ruby_83EDD7E.gbapal"
- .endif
-
- .align 2
-gUnknown_083EDDA0:: @ 83EDDA0
- .4byte Unknown_83EDD3E
- .4byte Unknown_83EDD5E
- .4byte Unknown_83EDD7E
-
- .align 2
-gUnknown_083EDDAC:: @ 83EDDAC
- .4byte gUnknown_08E95A18 + 32
-
- .align 1
-Palette_83EDDB0:
- .incbin "graphics/slot_machine/83EDDB0.gbapal"
-
- .align 1
-Palette_83EDDD0:
- .incbin "graphics/slot_machine/83EDDD0.gbapal"
-
- .align 1
-Palette_83EDDF0:
- .incbin "graphics/slot_machine/83EDDF0.gbapal"
-
- .align 2
-gUnknown_083EDE10:: @ 83EDE10
- .4byte Palette_83EDDB0
- .4byte Palette_83EDDD0
- .4byte Palette_83EDDF0
- .4byte gSlotMachineSpritePalette6
-
- .align 2
-gUnknown_083EDE20:: @ 83EDE20
- .4byte gSlotMachineSpritePalette6
-
- .align 1
-gPalette_83EDE24:: @ 83EDE24
- .incbin "graphics/slot_machine/83EDE24_pal.bin"
-
- .align 2
-gSlotMachineSpritePalettes:: @ 83EDE44
- obj_pal gSlotMachineSpritePalette0, 0
- obj_pal gSlotMachineSpritePalette1, 1
- obj_pal gSlotMachineSpritePalette2, 2
- obj_pal gSlotMachineSpritePalette3, 3
- obj_pal gSlotMachineSpritePalette4, 4
- obj_pal gSlotMachineSpritePalette5, 5
- obj_pal gSlotMachineSpritePalette6, 6
- obj_pal gSlotMachineSpritePalette4, 7
- null_obj_pal
-
- .align 2
-gUnknown_083EDE8C:: @ 83EDE8C
- .incbin "graphics/slot_machine/reel_time.4bpp.lz"
-
- .align 2
-gReelTimeWindowTilemap:: @ 83EEFE0
- .incbin "graphics/slot_machine/reel_time_window_map.bin"
diff --git a/include/graphics.h b/include/graphics.h
index 5f19b09cb..1d66172ca 100644
--- a/include/graphics.h
+++ b/include/graphics.h
@@ -2690,5 +2690,12 @@ extern const u8 gSlotMachineNumber7Tiles[];
extern const u8 gSlotMachineNumber8Tiles[];
extern const u8 gSlotMachineNumber9Tiles[];
extern const u8 gUnknownPalette_08E997E8[];
+extern const u16 gSlotMachineSpritePalette0[];
+extern const u16 gSlotMachineSpritePalette1[];
+extern const u16 gSlotMachineSpritePalette2[];
+extern const u16 gSlotMachineSpritePalette3[];
+extern const u16 gSlotMachineSpritePalette4[];
+extern const u16 gSlotMachineSpritePalette5[];
+extern const u16 gSlotMachineSpritePalette6[];
#endif // GUARD_GRAPHICS_H
diff --git a/ld_script.txt b/ld_script.txt
index c02c6873e..058f6aaca 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -550,7 +550,6 @@ SECTIONS {
data/cute_sketch.o(.rodata);
src/field/decoration.o(.rodata);
src/field/slot_machine.o(.rodata);
- data/slot_machine.o(.rodata);
src/scene/contest_painting.o(.rodata);
src/battle/battle_ai.o(.rodata);
src/field/trader.o(.rodata);
diff --git a/src/field/slot_machine.c b/src/field/slot_machine.c
index 4aa6af742..e1687b3d1 100644
--- a/src/field/slot_machine.c
+++ b/src/field/slot_machine.c
@@ -2244,8 +2244,8 @@ void sub_8103CC8(struct Task *task, u8 taskId)
}
extern const u16 *const gUnknown_083EDD08[];
-extern const u16 *const gUnknown_083EDD1C[];
-extern const u8 gUnknown_083EDD30[];
+const u16 *const gUnknown_083EDD1C[];
+const u8 gUnknown_083EDD30[];
static void sub_8103D00(u8 a0)
{
@@ -2257,8 +2257,8 @@ static void sub_8103D28(u8 a0)
LoadPalette(gUnknown_083EDD1C[a0], gUnknown_083EDD30[a0], 2);
}
-extern const u8 gUnknown_083EDD3B[];
-extern const u8 gUnknown_083EDD35[][2];
+const u8 gUnknown_083EDD35[][2];
+const u8 gUnknown_083EDD3B[];
static void sub_8103D50(u8 a0)
{
@@ -2369,8 +2369,8 @@ static void sub_8103F70(void)
sub_8103FE8(taskId);
}
-extern const u16 *const gUnknown_083EDDA0[];
-extern const u16 *const gUnknown_083EDDAC;
+const u16 *const gUnknown_083EDDA0[];
+const u16 *const gUnknown_083EDDAC;
static bool8 sub_8103FA0(void)
{
@@ -5409,3 +5409,70 @@ const u16 *const gUnknown_083EDD08[] = {
UnknownPalette_83EDCE8 + 14
};
+const u16 *const gUnknown_083EDD1C[] = {
+ gUnknown_08E95A18 + 74,
+ gUnknown_08E95A18 + 75,
+ gUnknown_08E95A18 + 76,
+ gUnknown_08E95A18 + 77,
+ gUnknown_08E95A18 + 78
+};
+
+const u8 gUnknown_083EDD30[] = {
+ 0x4a, 0x4b, 0x4c, 0x4e, 0x4d
+};
+
+const u8 gUnknown_083EDD35[][2] = {
+ {0, 0},
+ {1, 2},
+ {3, 4}
+};
+const u8 gUnknown_083EDD3B[] = {1, 2, 2};
+
+#ifdef SAPPHIRE
+const u16 Unknown_83EDD3E[] = INCBIN_U16("graphics/unknown/sapphire_83EDD96.gbapal");
+const u16 Unknown_83EDD5E[] = INCBIN_U16("graphics/unknown/sapphire_83EDDB6.gbapal");
+const u16 Unknown_83EDD7E[] = INCBIN_U16("graphics/unknown/sapphire_83EDDD6.gbapal");
+#elif defined (RUBY)
+const u16 Unknown_83EDD3E[] = INCBIN_U16("graphics/unknown/ruby_83EDD3E.gbapal");
+const u16 Unknown_83EDD5E[] = INCBIN_U16("graphics/unknown/ruby_83EDD5E.gbapal");
+const u16 Unknown_83EDD7E[] = INCBIN_U16("graphics/unknown/ruby_83EDD7E.gbapal");
+#endif // RS
+
+const u16 *const gUnknown_083EDDA0[] = {
+ Unknown_83EDD3E,
+ Unknown_83EDD5E,
+ Unknown_83EDD7E
+};
+
+const u16 *const gUnknown_083EDDAC = gUnknown_08E95A18 + 16;
+
+const u16 Palette_83EDDB0[] = INCBIN_U16("graphics/slot_machine/83EDDB0.gbapal");
+const u16 Palette_83EDDD0[] = INCBIN_U16("graphics/slot_machine/83EDDD0.gbapal");
+const u16 Palette_83EDDF0[] = INCBIN_U16("graphics/slot_machine/83EDDF0.gbapal");
+
+const u16 *const gUnknown_083EDE10[] = {
+ Palette_83EDDB0,
+ Palette_83EDDD0,
+ Palette_83EDDF0,
+ gSlotMachineSpritePalette6
+};
+
+const u16 *const gUnknown_083EDE20 = gSlotMachineSpritePalette6;
+
+const u16 gPalette_83EDE24[] = INCBIN_U16("graphics/slot_machine/83EDE24_pal.bin");
+
+const struct SpritePalette gSlotMachineSpritePalettes[] = {
+ {gSlotMachineSpritePalette0, 0},
+ {gSlotMachineSpritePalette1, 1},
+ {gSlotMachineSpritePalette2, 2},
+ {gSlotMachineSpritePalette3, 3},
+ {gSlotMachineSpritePalette4, 4},
+ {gSlotMachineSpritePalette5, 5},
+ {gSlotMachineSpritePalette6, 6},
+ {gSlotMachineSpritePalette4, 7},
+ {}
+};
+
+const u8 gUnknown_083EDE8C[] = INCBIN_U8("graphics/slot_machine/reel_time.4bpp.lz");
+
+const u16 gReelTimeWindowTilemap[] = INCBIN_U16("graphics/slot_machine/reel_time_window_map.bin");