Static decl/def; gfx dump
@@ -26,8 +26,8 @@ sub_80F558C: @ 80F558C
|
|||||||
bx r0
|
bx r0
|
||||||
thumb_func_end sub_80F558C
|
thumb_func_end sub_80F558C
|
||||||
|
|
||||||
thumb_func_start sub_80F55A0
|
thumb_func_start CB2_SaveClearScreen_Init
|
||||||
sub_80F55A0: @ 80F55A0
|
CB2_SaveClearScreen_Init: @ 80F55A0
|
||||||
push {r4,lr}
|
push {r4,lr}
|
||||||
ldr r4, _080F55D0 @ =gUnknown_203AB54
|
ldr r4, _080F55D0 @ =gUnknown_203AB54
|
||||||
movs r0, 0x4
|
movs r0, 0x4
|
||||||
@@ -52,7 +52,7 @@ sub_80F55A0: @ 80F55A0
|
|||||||
_080F55D0: .4byte gUnknown_203AB54
|
_080F55D0: .4byte gUnknown_203AB54
|
||||||
_080F55D4: .4byte sub_80F55DC
|
_080F55D4: .4byte sub_80F55DC
|
||||||
_080F55D8: .4byte sub_80F5574
|
_080F55D8: .4byte sub_80F5574
|
||||||
thumb_func_end sub_80F55A0
|
thumb_func_end CB2_SaveClearScreen_Init
|
||||||
|
|
||||||
thumb_func_start sub_80F55DC
|
thumb_func_start sub_80F55DC
|
||||||
sub_80F55DC: @ 80F55DC
|
sub_80F55DC: @ 80F55DC
|
||||||
|
|||||||
@@ -16352,34 +16352,34 @@ gUnknown_8EAAB98:: @ 8EAAB98
|
|||||||
gUnknown_8EAB30C:: @ 8EAB30C
|
gUnknown_8EAB30C:: @ 8EAB30C
|
||||||
.incbin "baserom.gba", 0xEAB30C, 0x3B8
|
.incbin "baserom.gba", 0xEAB30C, 0x3B8
|
||||||
|
|
||||||
|
@ title_screen
|
||||||
gUnknown_8EAB6C4:: @ 8EAB6C4
|
gUnknown_8EAB6C4:: @ 8EAB6C4
|
||||||
.incbin "baserom.gba", 0xEAB6C4, 0x200 @UNKNOWN
|
.incbin "graphics/title_screen/unk_8eab6c4.gbapal"
|
||||||
|
|
||||||
gUnknown_8EAB8C4:: @ 8EAB8C4
|
gUnknown_8EAB8C4:: @ 8EAB8C4
|
||||||
.incbin "baserom.gba", 0xEAB8C4, 0x1ACC
|
.incbin "graphics/title_screen/unk_8eab8c4.8bpp.lz"
|
||||||
|
|
||||||
gUnknown_8EAD390:: @ 8EAD390
|
gUnknown_8EAD390:: @ 8EAD390
|
||||||
.incbin "baserom.gba", 0xEAD390, 0x258
|
.incbin "graphics/title_screen/unk_8ead390.bin.lz"
|
||||||
|
|
||||||
gUnknown_8EAD5E8:: @ 8EAD5E8
|
gUnknown_8EAD5E8:: @ 8EAD5E8
|
||||||
.incbin "baserom.gba", 0xEAD5E8, 0x20 @UNKNOWN
|
.incbin "graphics/title_screen/unk_8ead5e8.gbapal"
|
||||||
|
|
||||||
gUnknown_8EAD608:: @ 8EAD608
|
gUnknown_8EAD608:: @ 8EAD608
|
||||||
.incbin "baserom.gba", 0xEAD608, 0x8DC
|
.incbin "graphics/title_screen/unk_8ead608.4bpp.lz"
|
||||||
|
|
||||||
gUnknown_8EADEE4:: @ 8EADEE4
|
gUnknown_8EADEE4:: @ 8EADEE4
|
||||||
.incbin "baserom.gba", 0xEADEE4, 0x1B0
|
.incbin "graphics/title_screen/unk_8eadee4.bin.lz"
|
||||||
|
|
||||||
gUnknown_8EAE094:: @ 8EAE094
|
gUnknown_8EAE094:: @ 8EAE094
|
||||||
.incbin "baserom.gba", 0xEAE094, 0x20 @UNKNOWN
|
.incbin "graphics/title_screen/unk_8eae094.gbapal"
|
||||||
|
|
||||||
gUnknown_8EAE0B4:: @ 8EAE0B4
|
gUnknown_8EAE0B4:: @ 8EAE0B4
|
||||||
.incbin "baserom.gba", 0xEAE0B4, 0x2C0
|
.incbin "graphics/title_screen/unk_8eae0b4.4bpp.lz"
|
||||||
|
|
||||||
gUnknown_8EAE374:: @ 8EAE374
|
gUnknown_8EAE374:: @ 8EAE374
|
||||||
.incbin "baserom.gba", 0xEAE374, 0x114
|
.incbin "graphics/title_screen/unk_8eae374.bin.lz"
|
||||||
|
|
||||||
@ title_screen
|
|
||||||
gUnknown_8EAE488:: @ 8EAE488
|
gUnknown_8EAE488:: @ 8EAE488
|
||||||
.incbin "graphics/title_screen/unk_8eae488.gbapal"
|
.incbin "graphics/title_screen/unk_8eae488.gbapal"
|
||||||
|
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 188 B After Width: | Height: | Size: 188 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
82 205 180
|
||||||
|
0 0 0
|
||||||
|
255 255 189
|
||||||
|
255 246 139
|
||||||
|
255 213 65
|
||||||
|
255 172 0
|
||||||
|
197 164 49
|
||||||
|
115 180 139
|
||||||
|
98 189 156
|
||||||
|
90 197 164
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
82 205 180
|
||||||
|
Before Width: | Height: | Size: 539 B After Width: | Height: | Size: 539 B |
@@ -0,0 +1,259 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
256
|
||||||
|
0 255 41
|
||||||
|
0 0 0
|
||||||
|
255 238 16
|
||||||
|
246 222 41
|
||||||
|
246 238 246
|
||||||
|
255 246 24
|
||||||
|
246 246 41
|
||||||
|
246 246 246
|
||||||
|
246 255 255
|
||||||
|
255 246 255
|
||||||
|
32 0 255
|
||||||
|
106 65 156
|
||||||
|
32 0 238
|
||||||
|
246 222 24
|
||||||
|
246 222 32
|
||||||
|
255 238 41
|
||||||
|
255 238 49
|
||||||
|
255 255 16
|
||||||
|
255 255 24
|
||||||
|
255 255 246
|
||||||
|
255 255 255
|
||||||
|
123 106 156
|
||||||
|
24 41 32
|
||||||
|
32 32 74
|
||||||
|
32 0 230
|
||||||
|
115 82 164
|
||||||
|
16 0 246
|
||||||
|
106 82 172
|
||||||
|
246 238 32
|
||||||
|
255 230 24
|
||||||
|
246 230 41
|
||||||
|
246 238 41
|
||||||
|
246 230 49
|
||||||
|
246 238 49
|
||||||
|
255 246 32
|
||||||
|
255 246 41
|
||||||
|
255 255 32
|
||||||
|
255 255 41
|
||||||
|
32 24 32
|
||||||
|
32 32 41
|
||||||
|
197 156 41
|
||||||
|
197 164 41
|
||||||
|
156 156 156
|
||||||
|
164 164 156
|
||||||
|
172 172 172
|
||||||
|
180 189 180
|
||||||
|
41 0 230
|
||||||
|
189 189 189
|
||||||
|
197 189 189
|
||||||
|
197 197 197
|
||||||
|
205 205 213
|
||||||
|
8 8 197
|
||||||
|
246 230 24
|
||||||
|
246 230 32
|
||||||
|
255 238 24
|
||||||
|
255 238 32
|
||||||
|
32 32 32
|
||||||
|
32 41 32
|
||||||
|
41 32 32
|
||||||
|
41 41 32
|
||||||
|
49 32 32
|
||||||
|
49 41 32
|
||||||
|
41 32 41
|
||||||
|
49 32 41
|
||||||
|
24 41 41
|
||||||
|
32 32 90
|
||||||
|
16 24 106
|
||||||
|
24 32 98
|
||||||
|
41 32 82
|
||||||
|
41 32 98
|
||||||
|
41 41 82
|
||||||
|
41 41 98
|
||||||
|
0 0 115
|
||||||
|
8 8 131
|
||||||
|
32 24 115
|
||||||
|
32 24 131
|
||||||
|
32 41 115
|
||||||
|
41 41 115
|
||||||
|
32 41 131
|
||||||
|
41 41 131
|
||||||
|
57 41 41
|
||||||
|
57 41 49
|
||||||
|
57 49 41
|
||||||
|
57 57 57
|
||||||
|
65 41 41
|
||||||
|
74 41 41
|
||||||
|
65 57 57
|
||||||
|
74 57 57
|
||||||
|
57 74 74
|
||||||
|
65 65 74
|
||||||
|
82 74 82
|
||||||
|
82 57 131
|
||||||
|
82 90 82
|
||||||
|
90 90 90
|
||||||
|
90 98 98
|
||||||
|
98 98 106
|
||||||
|
115 106 106
|
||||||
|
131 98 115
|
||||||
|
139 98 106
|
||||||
|
139 115 98
|
||||||
|
180 139 57
|
||||||
|
172 131 65
|
||||||
|
156 115 90
|
||||||
|
156 131 82
|
||||||
|
115 82 139
|
||||||
|
123 82 131
|
||||||
|
115 98 131
|
||||||
|
131 98 123
|
||||||
|
115 123 123
|
||||||
|
123 123 131
|
||||||
|
139 131 139
|
||||||
|
148 123 131
|
||||||
|
205 172 24
|
||||||
|
213 172 16
|
||||||
|
205 164 32
|
||||||
|
213 172 32
|
||||||
|
222 189 24
|
||||||
|
230 189 16
|
||||||
|
213 189 32
|
||||||
|
222 189 32
|
||||||
|
230 205 24
|
||||||
|
230 205 32
|
||||||
|
230 213 32
|
||||||
|
238 222 32
|
||||||
|
180 148 57
|
||||||
|
189 156 49
|
||||||
|
180 148 74
|
||||||
|
180 172 90
|
||||||
|
156 148 123
|
||||||
|
139 148 139
|
||||||
|
164 148 115
|
||||||
|
172 156 106
|
||||||
|
197 156 49
|
||||||
|
205 180 49
|
||||||
|
197 172 90
|
||||||
|
205 189 82
|
||||||
|
222 205 49
|
||||||
|
230 222 49
|
||||||
|
205 205 74
|
||||||
|
222 213 65
|
||||||
|
49 0 230
|
||||||
|
213 213 213
|
||||||
|
222 230 230
|
||||||
|
222 230 230
|
||||||
|
255 0 246
|
||||||
|
255 0 255
|
||||||
|
16 8 197
|
||||||
|
16 16 189
|
||||||
|
32 16 164
|
||||||
|
41 16 164
|
||||||
|
32 16 180
|
||||||
|
41 16 189
|
||||||
|
8 8 205
|
||||||
|
8 16 205
|
||||||
|
24 8 213
|
||||||
|
24 16 205
|
||||||
|
41 8 213
|
||||||
|
41 16 213
|
||||||
|
49 8 213
|
||||||
|
57 16 213
|
||||||
|
16 8 230
|
||||||
|
24 8 230
|
||||||
|
24 16 230
|
||||||
|
24 24 230
|
||||||
|
8 8 246
|
||||||
|
8 16 246
|
||||||
|
16 8 246
|
||||||
|
16 16 246
|
||||||
|
32 8 230
|
||||||
|
32 16 230
|
||||||
|
32 8 238
|
||||||
|
32 8 246
|
||||||
|
41 8 230
|
||||||
|
41 16 230
|
||||||
|
49 16 230
|
||||||
|
49 8 238
|
||||||
|
32 32 156
|
||||||
|
24 32 172
|
||||||
|
41 41 156
|
||||||
|
41 32 164
|
||||||
|
74 49 180
|
||||||
|
82 49 172
|
||||||
|
82 65 164
|
||||||
|
90 74 164
|
||||||
|
24 32 189
|
||||||
|
57 41 189
|
||||||
|
41 32 213
|
||||||
|
57 32 213
|
||||||
|
74 41 189
|
||||||
|
90 57 189
|
||||||
|
74 49 197
|
||||||
|
74 41 205
|
||||||
|
49 49 49
|
||||||
|
197 197 197
|
||||||
|
189 189 189
|
||||||
|
156 156 156
|
||||||
|
172 172 172
|
||||||
|
139 139 139
|
||||||
|
115 115 115
|
||||||
|
255 255 255
|
||||||
|
16 16 16
|
||||||
|
98 98 98
|
||||||
|
246 246 246
|
||||||
|
82 82 82
|
||||||
|
230 230 230
|
||||||
|
213 213 213
|
||||||
|
0 0 0
|
||||||
|
255 255 255
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
0 0 0
|
||||||
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
0 0 255
|
||||||
|
0 0 0
|
||||||
|
82 205 180
|
||||||
|
255 0 255
|
||||||
|
255 0 255
|
||||||
|
255 0 255
|
||||||
|
32 0 0
|
||||||
|
49 0 0
|
||||||
|
65 0 0
|
||||||
|
90 0 0
|
||||||
|
123 32 0
|
||||||
|
156 32 0
|
||||||
|
180 49 0
|
||||||
|
205 65 0
|
||||||
|
222 90 0
|
||||||
|
230 123 0
|
||||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
255 255 139
|
||||||
|
0 0 0
|
||||||
|
123 123 123
|
||||||
|
197 197 197
|
||||||
|
222 222 222
|
||||||
|
255 255 255
|
||||||
|
0 0 0
|
||||||
|
123 123 123
|
||||||
|
197 197 197
|
||||||
|
222 222 222
|
||||||
|
255 255 255
|
||||||
|
65 180 164
|
||||||
|
139 0 0
|
||||||
|
172 24 0
|
||||||
|
213 57 0
|
||||||
|
255 90 0
|
||||||
|
After Width: | Height: | Size: 597 B |
@@ -0,0 +1,19 @@
|
|||||||
|
JASC-PAL
|
||||||
|
0100
|
||||||
|
16
|
||||||
|
82 205 180
|
||||||
|
189 197 205
|
||||||
|
164 164 172
|
||||||
|
123 131 131
|
||||||
|
213 213 222
|
||||||
|
255 246 74
|
||||||
|
255 213 32
|
||||||
|
164 131 24
|
||||||
|
246 164 24
|
||||||
|
131 90 16
|
||||||
|
106 98 90
|
||||||
|
65 57 41
|
||||||
|
230 82 16
|
||||||
|
205 41 0
|
||||||
|
139 8 8
|
||||||
|
246 246 246
|
||||||
|
Before Width: | Height: | Size: 148 B After Width: | Height: | Size: 148 B |
@@ -22,6 +22,7 @@ TEXTWINDOWGFXDIR := graphics/text_window
|
|||||||
TEACHYTVGFXDIR := graphics/teachy_tv
|
TEACHYTVGFXDIR := graphics/teachy_tv
|
||||||
SSANNEGFXDIR := graphics/ss_anne
|
SSANNEGFXDIR := graphics/ss_anne
|
||||||
ITEMPCGFXDIR := graphics/item_pc
|
ITEMPCGFXDIR := graphics/item_pc
|
||||||
|
TITLESCREENGFXDIR := graphics/title_screen
|
||||||
|
|
||||||
types := normal fight flying poison ground rock bug ghost steel mystery fire water grass electric psychic ice dragon dark
|
types := normal fight flying poison ground rock bug ghost steel mystery fire water grass electric psychic ice dragon dark
|
||||||
contest_types := cool beauty cute smart tough
|
contest_types := cool beauty cute smart tough
|
||||||
@@ -486,3 +487,6 @@ $(SSANNEGFXDIR)/unk_8479A38.4bpp: %.4bpp: %.png
|
|||||||
|
|
||||||
$(ITEMPCGFXDIR)/unk_8E85090.4bpp: %.4bpp: %.png
|
$(ITEMPCGFXDIR)/unk_8E85090.4bpp: %.4bpp: %.png
|
||||||
$(GFX) $< $@ -num_tiles 82
|
$(GFX) $< $@ -num_tiles 82
|
||||||
|
|
||||||
|
$(TITLESCREENGFXDIR)/unk_8ead608.4bpp: %.4bpp: %.png
|
||||||
|
$(GFX) $< $@ -num_tiles 135
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#ifndef GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
#ifndef GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
||||||
#define GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
#define GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
||||||
|
|
||||||
void sub_80F55A0(void);
|
void CB2_SaveClearScreen_Init(void);
|
||||||
|
|
||||||
#endif //GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
#endif //GUARD_CLEAR_SAVE_DATA_SCREEN_H
|
||||||
|
|||||||
@@ -38,51 +38,51 @@ enum TitleScreenScene
|
|||||||
#define TITLE_SPECIES SPECIES_VENUSAUR
|
#define TITLE_SPECIES SPECIES_VENUSAUR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
EWRAM_DATA u8 gUnknown_2037F30 = 0;
|
static EWRAM_DATA u8 sTitleScreenTimerTaskId = 0;
|
||||||
|
|
||||||
void sub_8078B34(void);
|
static void ResetGpuRegs(void);
|
||||||
void sub_8078B9C(void);
|
static void CB2_TitleScreenRun(void);
|
||||||
void sub_8078BB4(void);
|
static void VBlankCB(void);
|
||||||
void sub_8078BEC(u8 taskId);
|
static void Task_TitleScreenTimer(u8 taskId);
|
||||||
void sub_8078C24(u8 taskId);
|
static void Task_TitleScreenMain(u8 taskId);
|
||||||
void sub_8078C90(s16 * data, u8 a1);
|
static void SetTitleScreenScene(s16 * data, u8 a1);
|
||||||
void sub_8078C9C(s16 * data);
|
static void SetTitleScreenScene_Init(s16 * data);
|
||||||
void sub_8078D24(s16 * data);
|
static void SetTitleScreenScene_FlashSprite(s16 * data);
|
||||||
void sub_8078DA4(s16 * data);
|
static void SetTitleScreenScene_FadeIn(s16 * data);
|
||||||
void sub_8078FC4(s16 * data);
|
static void SetTitleScreenScene_Run(s16 * data);
|
||||||
void sub_80790A0(void);
|
static void SetGpuRegsForTitleScreenRun(void);
|
||||||
void sub_80790CC(s16 * data);
|
static void SetTitleScreenScene_Restart(s16 * data);
|
||||||
void sub_80791C0(s16 * data);
|
static void SetTitleScreenScene_Cry(s16 * data);
|
||||||
void sub_80792C8(u8 taskId);
|
static void Task_TitleScreen_SlideWin0(u8 taskId);
|
||||||
void sub_807941C(u8 taskId);
|
static void Task_TitleScreen_PaletteSomething(u8 taskId);
|
||||||
void sub_8079528(void);
|
static void SignalEndTitleScreenPaletteSomethingTask(void);
|
||||||
void sub_8079550(s16 a0);
|
static void UpdateScanlineEffectRegBuffer(s16 a0);
|
||||||
void sub_8079620(void);
|
static void ScheduleStopScanlineEffect(void);
|
||||||
void sub_8079648(void);
|
static void LoadMainTitleScreenPalsAndResetBgs(void);
|
||||||
void sub_80796CC(void);
|
static void CB2_FadeOutTransitionToSaveClearScreen(void);
|
||||||
void sub_80796E8(void);
|
static void CB2_FadeOutTransitionToBerryFix(void);
|
||||||
void sub_8079708(void);
|
static void LoadSpriteGfxAndPals(void);
|
||||||
void sub_8079840(u8 taskId);
|
static void Task_FlameOrLeafSpawner(u8 taskId);
|
||||||
void sub_807999C(u8 taskId, u8 field, u16 seed);
|
static void TitleScreen_srand(u8 taskId, u8 field, u16 seed);
|
||||||
u16 sub_80799B4(u8 taskId, u8 field);
|
static u16 TitleScreen_rand(u8 taskId, u8 field);
|
||||||
u32 sub_80799F0(void);
|
static u32 CreateBlankSprite(void);
|
||||||
void sub_8079A10(bool32 a0);
|
static void sub_8079A10(bool32 a0);
|
||||||
u8 sub_8079A40(void);
|
static u8 CreateSlashSprite(void);
|
||||||
void sub_8079A88(u8 spriteId);
|
static void ScheduleHideSlashSprite(u8 spriteId);
|
||||||
bool32 sub_8079AA8(u8 spriteId);
|
static bool32 IsSlashSpriteHidden(u8 spriteId);
|
||||||
void sub_8079AD8(struct Sprite * sprite);
|
static void SpriteCallback_Slash(struct Sprite * sprite);
|
||||||
|
|
||||||
// bg3
|
// bg3
|
||||||
const u8 gUnknown_83BF58C[] = INCBIN_U8("data/graphics/title_screen/unk_83BF58C.4bpp.lz");
|
static const u8 gUnknown_83BF58C[] = INCBIN_U8("data/graphics/title_screen/unk_83BF58C.4bpp.lz");
|
||||||
const u8 gUnknown_83BF5A8[] = INCBIN_U8("data/graphics/title_screen/unk_83BF5A8.bin.lz");
|
static const u8 gUnknown_83BF5A8[] = INCBIN_U8("data/graphics/title_screen/unk_83BF5A8.bin.lz");
|
||||||
|
|
||||||
//sprites
|
//sprites
|
||||||
const u8 gUnknown_83BF64C[] = INCBIN_U8("data/graphics/title_screen/unk_83bf64c.4bpp.lz");
|
static const u8 gUnknown_83BF64C[] = INCBIN_U8("data/graphics/title_screen/unk_83bf64c.4bpp.lz");
|
||||||
const u16 gUnknown_83BF77C[] = INCBIN_U16("data/graphics/title_screen/unk_83bf77c.gbapal");
|
static const u16 gUnknown_83BF77C[] = INCBIN_U16("data/graphics/title_screen/unk_83bf77c.gbapal");
|
||||||
const u8 gUnknown_83BF79C[] = INCBIN_U8("data/graphics/title_screen/unk_83bf79c.4bpp.lz");
|
static const u8 gUnknown_83BF79C[] = INCBIN_U8("data/graphics/title_screen/unk_83bf79c.4bpp.lz");
|
||||||
const u8 gUnknown_83BFA14[] = INCBIN_U8("data/graphics/title_screen/unk_83bfa14.4bpp.lz");
|
static const u8 gUnknown_83BFA14[] = INCBIN_U8("data/graphics/title_screen/unk_83bfa14.4bpp.lz");
|
||||||
|
|
||||||
const struct OamData gOamData_83BFAB4 = {
|
static const struct OamData gOamData_83BFAB4 = {
|
||||||
.objMode = ST_OAM_OBJ_NORMAL,
|
.objMode = ST_OAM_OBJ_NORMAL,
|
||||||
.shape = ST_OAM_SQUARE,
|
.shape = ST_OAM_SQUARE,
|
||||||
.size = ST_OAM_SIZE_1,
|
.size = ST_OAM_SIZE_1,
|
||||||
@@ -91,7 +91,7 @@ const struct OamData gOamData_83BFAB4 = {
|
|||||||
.paletteNum = 0
|
.paletteNum = 0
|
||||||
};
|
};
|
||||||
|
|
||||||
const union AnimCmd gSpriteAnims_83BFABC[] = {
|
static const union AnimCmd gSpriteAnims_83BFABC[] = {
|
||||||
ANIMCMD_FRAME(0x00, 3),
|
ANIMCMD_FRAME(0x00, 3),
|
||||||
ANIMCMD_FRAME(0x04, 6),
|
ANIMCMD_FRAME(0x04, 6),
|
||||||
ANIMCMD_FRAME(0x08, 6),
|
ANIMCMD_FRAME(0x08, 6),
|
||||||
@@ -105,7 +105,7 @@ const union AnimCmd gSpriteAnims_83BFABC[] = {
|
|||||||
ANIMCMD_END
|
ANIMCMD_END
|
||||||
};
|
};
|
||||||
|
|
||||||
const union AnimCmd gSpriteAnims_83BFAE8[] = {
|
static const union AnimCmd gSpriteAnims_83BFAE8[] = {
|
||||||
ANIMCMD_FRAME(0x18, 6),
|
ANIMCMD_FRAME(0x18, 6),
|
||||||
ANIMCMD_FRAME(0x1c, 6),
|
ANIMCMD_FRAME(0x1c, 6),
|
||||||
ANIMCMD_FRAME(0x20, 6),
|
ANIMCMD_FRAME(0x20, 6),
|
||||||
@@ -113,12 +113,12 @@ const union AnimCmd gSpriteAnims_83BFAE8[] = {
|
|||||||
ANIMCMD_END
|
ANIMCMD_END
|
||||||
};
|
};
|
||||||
|
|
||||||
const union AnimCmd *const gSpriteAnimTable_83BFAFC[] = {
|
static const union AnimCmd *const gSpriteAnimTable_83BFAFC[] = {
|
||||||
gSpriteAnims_83BFABC,
|
gSpriteAnims_83BFABC,
|
||||||
gSpriteAnims_83BFAE8
|
gSpriteAnims_83BFAE8
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gUnknown_83BFB04 = {
|
static const struct SpriteTemplate sSpriteTemplate_FlameOrLeaf_State1 = {
|
||||||
.tileTag = 0,
|
.tileTag = 0,
|
||||||
.paletteTag = 0,
|
.paletteTag = 0,
|
||||||
.oam = &gOamData_83BFAB4,
|
.oam = &gOamData_83BFAB4,
|
||||||
@@ -128,7 +128,7 @@ const struct SpriteTemplate gUnknown_83BFB04 = {
|
|||||||
.callback = SpriteCallbackDummy
|
.callback = SpriteCallbackDummy
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gUnknown_83BFB1C = {
|
static const struct SpriteTemplate sSpriteTemplate_FlameOrLeaf_State0 = {
|
||||||
.tileTag = 1,
|
.tileTag = 1,
|
||||||
.paletteTag = 0,
|
.paletteTag = 0,
|
||||||
.oam = &gOamData_83BFAB4,
|
.oam = &gOamData_83BFAB4,
|
||||||
@@ -138,7 +138,7 @@ const struct SpriteTemplate gUnknown_83BFB1C = {
|
|||||||
.callback = SpriteCallbackDummy
|
.callback = SpriteCallbackDummy
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct OamData gOamData_83BFB34 = {
|
static const struct OamData gOamData_83BFB34 = {
|
||||||
.objMode = ST_OAM_OBJ_NORMAL,
|
.objMode = ST_OAM_OBJ_NORMAL,
|
||||||
.shape = ST_OAM_V_RECTANGLE,
|
.shape = ST_OAM_V_RECTANGLE,
|
||||||
.size = ST_OAM_SIZE_3,
|
.size = ST_OAM_SIZE_3,
|
||||||
@@ -147,7 +147,7 @@ const struct OamData gOamData_83BFB34 = {
|
|||||||
.paletteNum = 0
|
.paletteNum = 0
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gUnknown_83BFB3C = {
|
static const struct SpriteTemplate sUnknownEmptySprite = {
|
||||||
.tileTag = 2,
|
.tileTag = 2,
|
||||||
.paletteTag = 2,
|
.paletteTag = 2,
|
||||||
.oam = &gOamData_83BFB34,
|
.oam = &gOamData_83BFB34,
|
||||||
@@ -157,7 +157,7 @@ const struct SpriteTemplate gUnknown_83BFB3C = {
|
|||||||
.callback = SpriteCallbackDummy
|
.callback = SpriteCallbackDummy
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct OamData gOamData_83BFB54 = {
|
static const struct OamData gOamData_83BFB54 = {
|
||||||
.objMode = ST_OAM_OBJ_WINDOW,
|
.objMode = ST_OAM_OBJ_WINDOW,
|
||||||
.shape = ST_OAM_SQUARE,
|
.shape = ST_OAM_SQUARE,
|
||||||
.size = ST_OAM_SIZE_3,
|
.size = ST_OAM_SIZE_3,
|
||||||
@@ -166,7 +166,7 @@ const struct OamData gOamData_83BFB54 = {
|
|||||||
.paletteNum = 0
|
.paletteNum = 0
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpriteTemplate gUnknown_83BFB5C = {
|
static const struct SpriteTemplate sSlashSpriteTemplate = {
|
||||||
.tileTag = 3,
|
.tileTag = 3,
|
||||||
.paletteTag = 2,
|
.paletteTag = 2,
|
||||||
.oam = &gOamData_83BFB54,
|
.oam = &gOamData_83BFB54,
|
||||||
@@ -176,7 +176,7 @@ const struct SpriteTemplate gUnknown_83BFB5C = {
|
|||||||
.callback = SpriteCallbackDummy
|
.callback = SpriteCallbackDummy
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct BgTemplate gUnknown_83BFB74[] = {
|
static const struct BgTemplate gUnknown_83BFB74[] = {
|
||||||
{
|
{
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.charBaseIndex = 0,
|
.charBaseIndex = 0,
|
||||||
@@ -212,29 +212,29 @@ const struct BgTemplate gUnknown_83BFB74[] = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
void (*const gUnknown_83BFB84[])(s16 * data) = {
|
static void (*const gUnknown_83BFB84[])(s16 * data) = {
|
||||||
sub_8078C9C,
|
SetTitleScreenScene_Init,
|
||||||
sub_8078D24,
|
SetTitleScreenScene_FlashSprite,
|
||||||
sub_8078DA4,
|
SetTitleScreenScene_FadeIn,
|
||||||
sub_8078FC4,
|
SetTitleScreenScene_Run,
|
||||||
sub_80790CC,
|
SetTitleScreenScene_Restart,
|
||||||
sub_80791C0
|
SetTitleScreenScene_Cry
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct CompressedSpriteSheet gUnknown_83BFB9C[] = {
|
static const struct CompressedSpriteSheet gUnknown_83BFB9C[] = {
|
||||||
{(const void *)gUnknown_83BF79C, 0x500, 0},
|
{(const void *)gUnknown_83BF79C, 0x500, 0},
|
||||||
{(const void *)gUnknown_83BFA14, 0x500, 1},
|
{(const void *)gUnknown_83BFA14, 0x500, 1},
|
||||||
{(const void *)gUnknown_8EAE4A8, 0x400, 2},
|
{(const void *)gUnknown_8EAE4A8, 0x400, 2},
|
||||||
{(const void *)gUnknown_83BF64C, 0x800, 3}
|
{(const void *)gUnknown_83BF64C, 0x800, 3}
|
||||||
};
|
};
|
||||||
|
|
||||||
const struct SpritePalette gUnknown_83BFBBC[] = {
|
static const struct SpritePalette gUnknown_83BFBBC[] = {
|
||||||
{gUnknown_83BF77C, 0},
|
{gUnknown_83BF77C, 0},
|
||||||
{gUnknown_8EAE488, 2},
|
{gUnknown_8EAE488, 2},
|
||||||
{}
|
{}
|
||||||
};
|
};
|
||||||
|
|
||||||
const u8 gUnknown_83BFBD4[] = {
|
static const u8 gUnknown_83BFBD4[] = {
|
||||||
0x04, 0x10, 0x1a, 0x20, 0x30, 0xc8, 0xd8, 0xe0, 0xe8, 0x3c, 0x4c, 0x5c, 0x6c, 0x80, 0x90
|
0x04, 0x10, 0x1a, 0x20, 0x30, 0xc8, 0xd8, 0xe0, 0xe8, 0x3c, 0x4c, 0x5c, 0x6c, 0x80, 0x90
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -253,14 +253,14 @@ void CB2_InitTitleScreen(void)
|
|||||||
ResetSpriteData();
|
ResetSpriteData();
|
||||||
FreeAllSpritePalettes();
|
FreeAllSpritePalettes();
|
||||||
ResetPaletteFade();
|
ResetPaletteFade();
|
||||||
sub_8078B34();
|
ResetGpuRegs();
|
||||||
DmaFill16(3, 0, (void *)VRAM, VRAM_SIZE);
|
DmaFill16(3, 0, (void *)VRAM, VRAM_SIZE);
|
||||||
DmaFill32(3, 0, (void *)OAM, OAM_SIZE);
|
DmaFill32(3, 0, (void *)OAM, OAM_SIZE);
|
||||||
DmaFill16(3, 0, (void *)PLTT, PLTT_SIZE);
|
DmaFill16(3, 0, (void *)PLTT, PLTT_SIZE);
|
||||||
ResetBgsAndClearDma3BusyFlags(FALSE);
|
ResetBgsAndClearDma3BusyFlags(FALSE);
|
||||||
InitBgsFromTemplates(0, gUnknown_83BFB74, NELEMS(gUnknown_83BFB74));
|
InitBgsFromTemplates(0, gUnknown_83BFB74, NELEMS(gUnknown_83BFB74));
|
||||||
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJ_1D_MAP | DISPCNT_OBJ_ON);
|
||||||
gUnknown_2037F30 = 0xFF;
|
sTitleScreenTimerTaskId = 0xFF;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
LoadPalette(gUnknown_8EAB6C4, 0, 0x1A0);
|
LoadPalette(gUnknown_8EAB6C4, 0, 0x1A0);
|
||||||
@@ -275,16 +275,16 @@ void CB2_InitTitleScreen(void)
|
|||||||
LoadPalette(gUnknown_8EAE094, 0xE0, 0x20);
|
LoadPalette(gUnknown_8EAE094, 0xE0, 0x20);
|
||||||
DecompressAndCopyTileDataToVram(3, gUnknown_83BF58C, 0, 0, 0);
|
DecompressAndCopyTileDataToVram(3, gUnknown_83BF58C, 0, 0, 0);
|
||||||
DecompressAndCopyTileDataToVram(3, gUnknown_83BF5A8, 0, 0, 1);
|
DecompressAndCopyTileDataToVram(3, gUnknown_83BF5A8, 0, 0, 1);
|
||||||
sub_8079708();
|
LoadSpriteGfxAndPals();
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (!FreeTempTileDataBuffersIfPossible())
|
if (!FreeTempTileDataBuffersIfPossible())
|
||||||
{
|
{
|
||||||
BlendPalettes(0x0000FFFF, 0x10, RGB_BLACK);
|
BlendPalettes(0x0000FFFF, 0x10, RGB_BLACK);
|
||||||
CreateTask(sub_8078C24, 4);
|
CreateTask(Task_TitleScreenMain, 4);
|
||||||
gUnknown_2037F30 = CreateTask(sub_8078BEC, 2);
|
sTitleScreenTimerTaskId = CreateTask(Task_TitleScreenTimer, 2);
|
||||||
SetVBlankCallback(sub_8078BB4);
|
SetVBlankCallback(VBlankCB);
|
||||||
SetMainCallback2(sub_8078B9C);
|
SetMainCallback2(CB2_TitleScreenRun);
|
||||||
m4aSongNumStart(BGM_FRLG_TITLE);
|
m4aSongNumStart(BGM_FRLG_TITLE);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
@@ -292,7 +292,7 @@ void CB2_InitTitleScreen(void)
|
|||||||
gMain.state++;
|
gMain.state++;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078B34(void)
|
static void ResetGpuRegs(void)
|
||||||
{
|
{
|
||||||
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
SetGpuReg(REG_OFFSET_DISPCNT, 0);
|
||||||
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
||||||
@@ -308,7 +308,7 @@ void sub_8078B34(void)
|
|||||||
SetGpuReg(REG_OFFSET_BG3VOFS, 0);
|
SetGpuReg(REG_OFFSET_BG3VOFS, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078B9C(void)
|
static void CB2_TitleScreenRun(void)
|
||||||
{
|
{
|
||||||
RunTasks();
|
RunTasks();
|
||||||
AnimateSprites();
|
AnimateSprites();
|
||||||
@@ -316,39 +316,39 @@ void sub_8078B9C(void)
|
|||||||
UpdatePaletteFade();
|
UpdatePaletteFade();
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078BB4(void)
|
static void VBlankCB(void)
|
||||||
{
|
{
|
||||||
LoadOam();
|
LoadOam();
|
||||||
ProcessSpriteCopyRequests();
|
ProcessSpriteCopyRequests();
|
||||||
TransferPlttBuffer();
|
TransferPlttBuffer();
|
||||||
ScanlineEffect_InitHBlankDmaTransfer();
|
ScanlineEffect_InitHBlankDmaTransfer();
|
||||||
|
|
||||||
if (gUnknown_2037F30 != 0xFF)
|
if (sTitleScreenTimerTaskId != 0xFF)
|
||||||
gTasks[gUnknown_2037F30].data[0]++;
|
gTasks[sTitleScreenTimerTaskId].data[0]++;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078BEC(u8 taskId)
|
static void Task_TitleScreenTimer(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
if (data[0] >= 2700)
|
if (data[0] >= 2700)
|
||||||
{
|
{
|
||||||
gUnknown_2037F30 = 0xFF;
|
sTitleScreenTimerTaskId = 0xFF;
|
||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078C24(u8 taskId)
|
static void Task_TitleScreenMain(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
if (JOY_NEW(A_BUTTON | B_BUTTON | START_BUTTON)
|
if (JOY_NEW(A_BUTTON | B_BUTTON | START_BUTTON)
|
||||||
&& data[0] != 3 && data[0] != 4 && data[0] != 5)
|
&& data[0] != 3 && data[0] != 4 && data[0] != 5)
|
||||||
{
|
{
|
||||||
sub_8079620();
|
ScheduleStopScanlineEffect();
|
||||||
sub_8079648();
|
LoadMainTitleScreenPalsAndResetBgs();
|
||||||
sub_8079A10(data[5]);
|
sub_8079A10(data[5]);
|
||||||
sub_8078C90(data, TITLESCREENSCENE_RUN);
|
SetTitleScreenScene(data, TITLESCREENSCENE_RUN);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -356,13 +356,13 @@ void sub_8078C24(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078C90(s16 * data, u8 a1)
|
static void SetTitleScreenScene(s16 * data, u8 a1)
|
||||||
{
|
{
|
||||||
data[1] = 0;
|
data[1] = 0;
|
||||||
data[0] = a1;
|
data[0] = a1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078C9C(s16 * data)
|
static void SetTitleScreenScene_Init(s16 * data)
|
||||||
{
|
{
|
||||||
struct ScanlineEffectParams params;
|
struct ScanlineEffectParams params;
|
||||||
|
|
||||||
@@ -381,10 +381,10 @@ void sub_8078C9C(s16 * data)
|
|||||||
|
|
||||||
ScanlineEffect_SetParams(params);
|
ScanlineEffect_SetParams(params);
|
||||||
|
|
||||||
sub_8078C90(data, TITLESCREENSCENE_FLASHSPRITE);
|
SetTitleScreenScene(data, TITLESCREENSCENE_FLASHSPRITE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078D24(s16 * data)
|
static void SetTitleScreenScene_FlashSprite(s16 * data)
|
||||||
{
|
{
|
||||||
switch (data[1])
|
switch (data[1])
|
||||||
{
|
{
|
||||||
@@ -392,12 +392,12 @@ void sub_8078D24(s16 * data)
|
|||||||
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_EFFECT_LIGHTEN);
|
SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_TGT1_BG1 | BLDCNT_EFFECT_LIGHTEN);
|
||||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||||
data[2] = 0x80;
|
data[2] = 0x80;
|
||||||
sub_8079550(0x80);
|
UpdateScanlineEffectRegBuffer(data[2]);
|
||||||
data[1]++;
|
data[1]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
data[2] -= 4;
|
data[2] -= 4;
|
||||||
sub_8079550(data[2]);
|
UpdateScanlineEffectRegBuffer(data[2]);
|
||||||
if (data[2] < 0)
|
if (data[2] < 0)
|
||||||
{
|
{
|
||||||
gScanlineEffect.state = 3;
|
gScanlineEffect.state = 3;
|
||||||
@@ -407,11 +407,11 @@ void sub_8078D24(s16 * data)
|
|||||||
case 2:
|
case 2:
|
||||||
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
SetGpuReg(REG_OFFSET_BLDCNT, 0);
|
||||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||||
sub_8078C90(data, TITLESCREENSCENE_FADEIN);
|
SetTitleScreenScene(data, TITLESCREENSCENE_FADEIN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8078DA4(s16 * data)
|
static void SetTitleScreenScene_FadeIn(s16 * data)
|
||||||
{
|
{
|
||||||
u32 r4;
|
u32 r4;
|
||||||
switch (data[1])
|
switch (data[1])
|
||||||
@@ -440,7 +440,7 @@ void sub_8078DA4(s16 * data)
|
|||||||
data[2]++;
|
data[2]++;
|
||||||
if (data[2] > 36)
|
if (data[2] > 36)
|
||||||
{
|
{
|
||||||
CreateTask(sub_80792C8, 3);
|
CreateTask(Task_TitleScreen_SlideWin0, 3);
|
||||||
sub_80717A8(0x2000, -4, 0x01, 0x10, RGB(30, 30, 31), 0, 0);
|
sub_80717A8(0x2000, -4, 0x01, 0x10, RGB(30, 30, 31), 0, 0);
|
||||||
data[2] = 0;
|
data[2] = 0;
|
||||||
data[1]++;
|
data[1]++;
|
||||||
@@ -482,7 +482,7 @@ void sub_8078DA4(s16 * data)
|
|||||||
if (!sub_807185C(0))
|
if (!sub_807185C(0))
|
||||||
{
|
{
|
||||||
data[5] = 1;
|
data[5] = 1;
|
||||||
r4 = (0x10000 << sub_80799F0()) | 0x00001FFF;
|
r4 = (0x10000 << CreateBlankSprite()) | 0x00001FFF;
|
||||||
BlendPalettes(r4, 0x10, RGB(30, 30, 31));
|
BlendPalettes(r4, 0x10, RGB(30, 30, 31));
|
||||||
BeginNormalPaletteFade(r4, 1, 0x10, 0x00, RGB(30, 30, 31));
|
BeginNormalPaletteFade(r4, 1, 0x10, 0x00, RGB(30, 30, 31));
|
||||||
ShowBg(0);
|
ShowBg(0);
|
||||||
@@ -494,7 +494,7 @@ void sub_8078DA4(s16 * data)
|
|||||||
case 9:
|
case 9:
|
||||||
if (!sub_807185C(0) && !gPaletteFade.active)
|
if (!sub_807185C(0) && !gPaletteFade.active)
|
||||||
{
|
{
|
||||||
sub_8078C90(data, TITLESCREENSCENE_RUN);
|
SetTitleScreenScene(data, TITLESCREENSCENE_RUN);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -503,45 +503,45 @@ void sub_8078DA4(s16 * data)
|
|||||||
#define KEYSTROKE_DELSAVE (B_BUTTON | SELECT_BUTTON | DPAD_UP)
|
#define KEYSTROKE_DELSAVE (B_BUTTON | SELECT_BUTTON | DPAD_UP)
|
||||||
#define KEYSTROKE_BERRY_FIX (B_BUTTON | SELECT_BUTTON)
|
#define KEYSTROKE_BERRY_FIX (B_BUTTON | SELECT_BUTTON)
|
||||||
|
|
||||||
void sub_8078FC4(s16 * data)
|
static void SetTitleScreenScene_Run(s16 * data)
|
||||||
{
|
{
|
||||||
switch (data[1])
|
switch (data[1])
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
HelpSystem_SetSomeVariable2(1);
|
HelpSystem_SetSomeVariable2(1);
|
||||||
CreateTask(sub_807941C, 0);
|
CreateTask(Task_TitleScreen_PaletteSomething, 0);
|
||||||
CreateTask(sub_8079840, 5);
|
CreateTask(Task_FlameOrLeafSpawner, 5);
|
||||||
sub_80790A0();
|
SetGpuRegsForTitleScreenRun();
|
||||||
data[6] = sub_8079A40();
|
data[6] = CreateSlashSprite();
|
||||||
sub_812B484();
|
sub_812B484();
|
||||||
data[1]++;
|
data[1]++;
|
||||||
// fallthrough
|
// fallthrough
|
||||||
case 1:
|
case 1:
|
||||||
if (JOY_HELD(KEYSTROKE_DELSAVE) == KEYSTROKE_DELSAVE)
|
if (JOY_HELD(KEYSTROKE_DELSAVE) == KEYSTROKE_DELSAVE)
|
||||||
{
|
{
|
||||||
sub_8079A88(data[6]);
|
ScheduleHideSlashSprite(data[6]);
|
||||||
DestroyTask(FindTaskIdByFunc(sub_8078C24));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreenMain));
|
||||||
SetMainCallback2(sub_80796CC);
|
SetMainCallback2(CB2_FadeOutTransitionToSaveClearScreen);
|
||||||
}
|
}
|
||||||
else if (JOY_HELD(KEYSTROKE_BERRY_FIX) == KEYSTROKE_BERRY_FIX)
|
else if (JOY_HELD(KEYSTROKE_BERRY_FIX) == KEYSTROKE_BERRY_FIX)
|
||||||
{
|
{
|
||||||
sub_8079A88(data[6]);
|
ScheduleHideSlashSprite(data[6]);
|
||||||
DestroyTask(FindTaskIdByFunc(sub_8078C24));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreenMain));
|
||||||
SetMainCallback2(sub_80796E8);
|
SetMainCallback2(CB2_FadeOutTransitionToBerryFix);
|
||||||
}
|
}
|
||||||
else if (JOY_NEW(A_BUTTON | START_BUTTON))
|
else if (JOY_NEW(A_BUTTON | START_BUTTON))
|
||||||
{
|
{
|
||||||
sub_8078C90(data, TITLESCREENSCENE_CRY);
|
SetTitleScreenScene(data, TITLESCREENSCENE_CRY);
|
||||||
}
|
}
|
||||||
else if (!FuncIsActiveTask(sub_8078BEC))
|
else if (!FuncIsActiveTask(Task_TitleScreenTimer))
|
||||||
{
|
{
|
||||||
sub_8078C90(data, TITLESCREENSCEEN_RESTART);
|
SetTitleScreenScene(data, TITLESCREENSCEEN_RESTART);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80790A0(void)
|
static void SetGpuRegsForTitleScreenRun(void)
|
||||||
{
|
{
|
||||||
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJWIN_ON);
|
SetGpuRegBits(REG_OFFSET_DISPCNT, DISPCNT_OBJWIN_ON);
|
||||||
SetGpuReg(REG_OFFSET_WINOUT, WIN_RANGE(0x3F, 0x1F));
|
SetGpuReg(REG_OFFSET_WINOUT, WIN_RANGE(0x3F, 0x1F));
|
||||||
@@ -549,27 +549,27 @@ void sub_80790A0(void)
|
|||||||
SetGpuReg(REG_OFFSET_BLDY, 13);
|
SetGpuReg(REG_OFFSET_BLDY, 13);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80790CC(s16 * data)
|
static void SetTitleScreenScene_Restart(s16 * data)
|
||||||
{
|
{
|
||||||
switch (data[1])
|
switch (data[1])
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
sub_8079A88(data[6]);
|
ScheduleHideSlashSprite(data[6]);
|
||||||
data[1]++;
|
data[1]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
if (!gPaletteFade.active && !sub_8079AA8(data[6]))
|
if (!gPaletteFade.active && !IsSlashSpriteHidden(data[6]))
|
||||||
{
|
{
|
||||||
FadeOutMapMusic(10);
|
FadeOutMapMusic(10);
|
||||||
BeginNormalPaletteFade(0xFFFFFFFF, 3, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(0xFFFFFFFF, 3, 0, 0x10, RGB_BLACK);
|
||||||
sub_8079528();
|
SignalEndTitleScreenPaletteSomethingTask();
|
||||||
data[1]++;
|
data[1]++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (IsNotWaitingForBGMStop() && !gPaletteFade.active)
|
if (IsNotWaitingForBGMStop() && !gPaletteFade.active)
|
||||||
{
|
{
|
||||||
DestroyTask(FindTaskIdByFunc(sub_807941C));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreen_PaletteSomething));
|
||||||
data[2] = 0;
|
data[2] = 0;
|
||||||
data[1]++;
|
data[1]++;
|
||||||
}
|
}
|
||||||
@@ -578,19 +578,19 @@ void sub_80790CC(s16 * data)
|
|||||||
data[2]++;
|
data[2]++;
|
||||||
if (data[2] >= 20)
|
if (data[2] >= 20)
|
||||||
{
|
{
|
||||||
DestroyTask(FindTaskIdByFunc(sub_807941C));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreen_PaletteSomething));
|
||||||
data[1]++;
|
data[1]++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
sub_812B478();
|
sub_812B478();
|
||||||
DestroyTask(FindTaskIdByFunc(sub_8078C24));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreenMain));
|
||||||
SetMainCallback2(sub_80EC864);
|
SetMainCallback2(sub_80EC864);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80791C0(s16 * data)
|
static void SetTitleScreenScene_Cry(s16 * data)
|
||||||
{
|
{
|
||||||
switch (data[1])
|
switch (data[1])
|
||||||
{
|
{
|
||||||
@@ -598,7 +598,7 @@ void sub_80791C0(s16 * data)
|
|||||||
if (!gPaletteFade.active)
|
if (!gPaletteFade.active)
|
||||||
{
|
{
|
||||||
PlayCry1(TITLE_SPECIES, 0);
|
PlayCry1(TITLE_SPECIES, 0);
|
||||||
sub_8079A88(data[6]);
|
ScheduleHideSlashSprite(data[6]);
|
||||||
data[2] = 0;
|
data[2] = 0;
|
||||||
data[1]++;
|
data[1]++;
|
||||||
}
|
}
|
||||||
@@ -606,10 +606,10 @@ void sub_80791C0(s16 * data)
|
|||||||
case 1:
|
case 1:
|
||||||
if (data[2] < 90)
|
if (data[2] < 90)
|
||||||
data[2]++;
|
data[2]++;
|
||||||
else if (!sub_8079AA8(data[6]))
|
else if (!IsSlashSpriteHidden(data[6]))
|
||||||
{
|
{
|
||||||
BeginNormalPaletteFade(0x0FFFFFFF, 0, 0, 0x10, RGB_WHITE);
|
BeginNormalPaletteFade(0x0FFFFFFF, 0, 0, 0x10, RGB_WHITE);
|
||||||
sub_8079528();
|
SignalEndTitleScreenPaletteSomethingTask();
|
||||||
FadeOutBGM(4);
|
FadeOutBGM(4);
|
||||||
data[1]++;
|
data[1]++;
|
||||||
}
|
}
|
||||||
@@ -627,13 +627,13 @@ void sub_80791C0(s16 * data)
|
|||||||
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
SetPokemonCryStereo(gSaveBlock2Ptr->optionsSound);
|
||||||
InitHeap(gHeap, HEAP_SIZE);
|
InitHeap(gHeap, HEAP_SIZE);
|
||||||
SetMainCallback2(sub_800C300);
|
SetMainCallback2(sub_800C300);
|
||||||
DestroyTask(FindTaskIdByFunc(sub_8078C24));
|
DestroyTask(FindTaskIdByFunc(Task_TitleScreenMain));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80792C8(u8 taskId)
|
static void Task_TitleScreen_SlideWin0(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
|
|
||||||
@@ -692,7 +692,7 @@ void sub_80792C8(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_807941C(u8 taskId)
|
static void Task_TitleScreen_PaletteSomething(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
s32 i;
|
s32 i;
|
||||||
@@ -736,13 +736,13 @@ void sub_807941C(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079528(void)
|
static void SignalEndTitleScreenPaletteSomethingTask(void)
|
||||||
{
|
{
|
||||||
u8 taskId = FindTaskIdByFunc(sub_807941C);
|
u8 taskId = FindTaskIdByFunc(Task_TitleScreen_PaletteSomething);
|
||||||
gTasks[taskId].data[15] = TRUE;
|
gTasks[taskId].data[15] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079550(s16 a0)
|
static void UpdateScanlineEffectRegBuffer(s16 a0)
|
||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
@@ -778,7 +778,7 @@ void sub_8079550(s16 a0)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079620(void)
|
static void ScheduleStopScanlineEffect(void)
|
||||||
{
|
{
|
||||||
if (gScanlineEffect.state)
|
if (gScanlineEffect.state)
|
||||||
gScanlineEffect.state = 3;
|
gScanlineEffect.state = 3;
|
||||||
@@ -786,11 +786,11 @@ void sub_8079620(void)
|
|||||||
SetGpuReg(REG_OFFSET_BLDY, 0);
|
SetGpuReg(REG_OFFSET_BLDY, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079648(void)
|
static void LoadMainTitleScreenPalsAndResetBgs(void)
|
||||||
{
|
{
|
||||||
u8 taskId;
|
u8 taskId;
|
||||||
|
|
||||||
taskId = FindTaskIdByFunc(sub_80792C8);
|
taskId = FindTaskIdByFunc(Task_TitleScreen_SlideWin0);
|
||||||
if (taskId != 0xFF)
|
if (taskId != 0xFF)
|
||||||
DestroyTask(taskId);
|
DestroyTask(taskId);
|
||||||
|
|
||||||
@@ -808,13 +808,13 @@ void sub_8079648(void)
|
|||||||
ShowBg(3);
|
ShowBg(3);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80796CC(void)
|
static void CB2_FadeOutTransitionToSaveClearScreen(void)
|
||||||
{
|
{
|
||||||
if (!UpdatePaletteFade())
|
if (!UpdatePaletteFade())
|
||||||
SetMainCallback2(sub_80F55A0);
|
SetMainCallback2(CB2_SaveClearScreen_Init);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_80796E8(void)
|
static void CB2_FadeOutTransitionToBerryFix(void)
|
||||||
{
|
{
|
||||||
if (!UpdatePaletteFade())
|
if (!UpdatePaletteFade())
|
||||||
{
|
{
|
||||||
@@ -823,7 +823,7 @@ void sub_80796E8(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079708(void)
|
static void LoadSpriteGfxAndPals(void)
|
||||||
{
|
{
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
@@ -832,7 +832,7 @@ void sub_8079708(void)
|
|||||||
LoadSpritePalettes(gUnknown_83BFBBC);
|
LoadSpritePalettes(gUnknown_83BFBBC);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079730(struct Sprite * sprite)
|
static void SpriteCallback_TitleScreenFlameOrLeaf(struct Sprite * sprite)
|
||||||
{
|
{
|
||||||
s16 * data = sprite->data;
|
s16 * data = sprite->data;
|
||||||
sprite->data[0] -= data[1];
|
sprite->data[0] -= data[1];
|
||||||
@@ -876,16 +876,16 @@ void sub_8079730(struct Sprite * sprite)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
bool32 sub_80797AC(s32 x, s32 y, s32 xspeed, s32 yspeed, bool32 templateId)
|
static bool32 CreateFlameOrLeafSprite(s32 x, s32 y, s32 xspeed, s32 yspeed, bool32 templateId)
|
||||||
{
|
{
|
||||||
u8 spriteId;
|
u8 spriteId;
|
||||||
if (templateId)
|
if (templateId)
|
||||||
{
|
{
|
||||||
spriteId = CreateSprite(&gUnknown_83BFB04, x, y, 0);
|
spriteId = CreateSprite(&sSpriteTemplate_FlameOrLeaf_State1, x, y, 0);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
spriteId = CreateSprite(&gUnknown_83BFB1C, x, y, 0);
|
spriteId = CreateSprite(&sSpriteTemplate_FlameOrLeaf_State0, x, y, 0);
|
||||||
}
|
}
|
||||||
if (spriteId != MAX_SPRITES)
|
if (spriteId != MAX_SPRITES)
|
||||||
{
|
{
|
||||||
@@ -896,13 +896,13 @@ bool32 sub_80797AC(s32 x, s32 y, s32 xspeed, s32 yspeed, bool32 templateId)
|
|||||||
gSprites[spriteId].data[4] = 0;
|
gSprites[spriteId].data[4] = 0;
|
||||||
gSprites[spriteId].data[5] = (xspeed * yspeed) % 16;
|
gSprites[spriteId].data[5] = (xspeed * yspeed) % 16;
|
||||||
gSprites[spriteId].data[6] = templateId;
|
gSprites[spriteId].data[6] = templateId;
|
||||||
gSprites[spriteId].callback = sub_8079730;
|
gSprites[spriteId].callback = SpriteCallback_TitleScreenFlameOrLeaf;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079840(u8 taskId)
|
static void Task_FlameOrLeafSpawner(u8 taskId)
|
||||||
{
|
{
|
||||||
s16 * data = gTasks[taskId].data;
|
s16 * data = gTasks[taskId].data;
|
||||||
s32 x, y, xspeed, yspeed, templateId;
|
s32 x, y, xspeed, yspeed, templateId;
|
||||||
@@ -911,7 +911,7 @@ void sub_8079840(u8 taskId)
|
|||||||
switch (data[0])
|
switch (data[0])
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
sub_807999C(taskId, 3, 0x7878);
|
TitleScreen_srand(taskId, 3, 30840);
|
||||||
data[0]++;
|
data[0]++;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
@@ -919,30 +919,30 @@ void sub_8079840(u8 taskId)
|
|||||||
if (data[1] >= data[2])
|
if (data[1] >= data[2])
|
||||||
{
|
{
|
||||||
data[1] = 0;
|
data[1] = 0;
|
||||||
sub_80799B4(taskId, 3);
|
TitleScreen_rand(taskId, 3);
|
||||||
data[2] = 18;
|
data[2] = 18;
|
||||||
xspeed = (sub_80799B4(taskId, 3) % 4) - 2;
|
xspeed = (TitleScreen_rand(taskId, 3) % 4) - 2;
|
||||||
yspeed = (sub_80799B4(taskId, 3) % 8) - 16;
|
yspeed = (TitleScreen_rand(taskId, 3) % 8) - 16;
|
||||||
y = (sub_80799B4(taskId, 3) % 3) + 0x74;
|
y = (TitleScreen_rand(taskId, 3) % 3) + 0x74;
|
||||||
x = sub_80799B4(taskId, 3) % 240;
|
x = TitleScreen_rand(taskId, 3) % 240;
|
||||||
sub_80797AC(
|
CreateFlameOrLeafSprite(
|
||||||
x,
|
x,
|
||||||
y,
|
y,
|
||||||
xspeed,
|
xspeed,
|
||||||
yspeed,
|
yspeed,
|
||||||
(sub_80799B4(taskId, 3) % 16) < 8 ? 0 : 1
|
(TitleScreen_rand(taskId, 3) % 16) < 8 ? 0 : 1
|
||||||
);
|
);
|
||||||
for (i = 0; i < 15; i++)
|
for (i = 0; i < 15; i++)
|
||||||
{
|
{
|
||||||
sub_80797AC(
|
CreateFlameOrLeafSprite(
|
||||||
data[5] + gUnknown_83BFBD4[i],
|
data[5] + gUnknown_83BFBD4[i],
|
||||||
y,
|
y,
|
||||||
xspeed,
|
xspeed,
|
||||||
yspeed,
|
yspeed,
|
||||||
1
|
1
|
||||||
);
|
);
|
||||||
xspeed = (sub_80799B4(taskId, 3) % 4) - 2;
|
xspeed = (TitleScreen_rand(taskId, 3) % 4) - 2;
|
||||||
yspeed = (sub_80799B4(taskId, 3) % 8) - 16;
|
yspeed = (TitleScreen_rand(taskId, 3) % 8) - 16;
|
||||||
}
|
}
|
||||||
data[5]++;
|
data[5]++;
|
||||||
if (data[5] > 3)
|
if (data[5] > 3)
|
||||||
@@ -951,12 +951,12 @@ void sub_8079840(u8 taskId)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_807999C(u8 taskId, u8 field, u16 seed)
|
static void TitleScreen_srand(u8 taskId, u8 field, u16 seed)
|
||||||
{
|
{
|
||||||
SetWordTaskArg(taskId, field, seed);
|
SetWordTaskArg(taskId, field, seed);
|
||||||
}
|
}
|
||||||
|
|
||||||
u16 sub_80799B4(u8 taskId, u8 field)
|
static u16 TitleScreen_rand(u8 taskId, u8 field)
|
||||||
{
|
{
|
||||||
u32 rngval;
|
u32 rngval;
|
||||||
|
|
||||||
@@ -966,13 +966,13 @@ u16 sub_80799B4(u8 taskId, u8 field)
|
|||||||
return rngval >> 16;
|
return rngval >> 16;
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 sub_80799F0(void)
|
static u32 CreateBlankSprite(void)
|
||||||
{
|
{
|
||||||
CreateSprite(&gUnknown_83BFB3C, 0x18, 0x90, 0);
|
CreateSprite(&sUnknownEmptySprite, 0x18, 0x90, 0);
|
||||||
return IndexOfSpritePaletteTag(2);
|
return IndexOfSpritePaletteTag(2);
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079A10(bool32 mode)
|
static void sub_8079A10(bool32 mode)
|
||||||
{
|
{
|
||||||
u32 palIdx;
|
u32 palIdx;
|
||||||
|
|
||||||
@@ -982,27 +982,27 @@ void sub_8079A10(bool32 mode)
|
|||||||
LoadPalette(gUnknown_8EAE488, palIdx * 16 + 0x100, 0x20);
|
LoadPalette(gUnknown_8EAE488, palIdx * 16 + 0x100, 0x20);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
sub_80799F0();
|
CreateBlankSprite();
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 sub_8079A40(void)
|
static u8 CreateSlashSprite(void)
|
||||||
{
|
{
|
||||||
u8 spriteId = CreateSprite(&gUnknown_83BFB5C, -0x20, 0x1B, 1);
|
u8 spriteId = CreateSprite(&sSlashSpriteTemplate, -0x20, 0x1B, 1);
|
||||||
if (spriteId != MAX_SPRITES)
|
if (spriteId != MAX_SPRITES)
|
||||||
{
|
{
|
||||||
gSprites[spriteId].callback = sub_8079AD8;
|
gSprites[spriteId].callback = SpriteCallback_Slash;
|
||||||
gSprites[spriteId].data[1] = 540;
|
gSprites[spriteId].data[1] = 540;
|
||||||
}
|
}
|
||||||
return spriteId;
|
return spriteId;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079A88(u8 spriteId)
|
static void ScheduleHideSlashSprite(u8 spriteId)
|
||||||
{
|
{
|
||||||
if (spriteId != MAX_SPRITES)
|
if (spriteId != MAX_SPRITES)
|
||||||
gSprites[spriteId].data[2] = TRUE;
|
gSprites[spriteId].data[2] = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool32 sub_8079AA8(u8 spriteId)
|
static bool32 IsSlashSpriteHidden(u8 spriteId)
|
||||||
{
|
{
|
||||||
if (spriteId != MAX_SPRITES)
|
if (spriteId != MAX_SPRITES)
|
||||||
return gSprites[spriteId].data[0] ^ 2 ? TRUE : FALSE;
|
return gSprites[spriteId].data[0] ^ 2 ? TRUE : FALSE;
|
||||||
@@ -1010,7 +1010,7 @@ bool32 sub_8079AA8(u8 spriteId)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void sub_8079AD8(struct Sprite * sprite)
|
static void SpriteCallback_Slash(struct Sprite * sprite)
|
||||||
{
|
{
|
||||||
switch (sprite->data[0])
|
switch (sprite->data[0])
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -769,9 +769,10 @@ gUnknown_2037F24: @ 2037F24
|
|||||||
gUnknown_2037F28: @ 2037F28
|
gUnknown_2037F28: @ 2037F28
|
||||||
.space 0x8
|
.space 0x8
|
||||||
|
|
||||||
gUnknown_2037F30: @ 2037F30
|
.align 2
|
||||||
.space 0x4
|
.include "src/title_screen.o"
|
||||||
|
|
||||||
|
.align 2
|
||||||
gUnknown_2037F34: @ 2037F34
|
gUnknown_2037F34: @ 2037F34
|
||||||
.space 0x200
|
.space 0x200
|
||||||
|
|
||||||
|
|||||||