diff --git a/Makefile b/Makefile index 154f641..e75dc72 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,7 @@ all: $(EXECUTABLE) ${CRT_OBJ} crt0.o: *.s *.chr -%.s: %.c *.h +%.s: %.c *.h levels/*.h $(CC) -Oi $< --add-source %.o: %.s diff --git a/game.c b/game.c index 1025ad0..aa70174 100644 --- a/game.c +++ b/game.c @@ -74,10 +74,8 @@ extern const unsigned char music_music_data[]; #define MUSIC_STAGE_SELECT 6 /* Palettes */ -const unsigned char palTitle[16]={ 0x0f,0x30,0x14,0x3d,0x0f,0x30,0x29,0x0f,0x0f,0x30,0x27,0x0f,0x0f,0x30,0x0f,0x0f }; -const unsigned char palTitleA[16]={ 0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f }; -const unsigned char palTitleB[16]={ 0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x27,0x0f,0x0f,0x30,0x0f,0x0f }; -const unsigned char palTitleC[16]={ 0x0f,0x30,0x14,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x27,0x0f,0x0f,0x30,0x0f,0x0f }; +const unsigned char palTitle[16]={ 0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f,0x0f,0x30,0x0f,0x0f }; + /* { 0x0f,0x30,0x14,0x0f,0x0f,0x30,0x29,0x0f,0x0f,0x30,0x27,0x0f,0x0f,0x30,0x0f,0x0f }; */ const unsigned char palInkable[16]={ 0x0f,0x10,0x30,0x30,0x0f,0x04,0x14,0x24,0x0f,0x19,0x29,0x3a,0x0f,0x01,0x21,0x31 }; const unsigned char palEndgame[16]={ 0x0f,0x30,0x30,0x30,0x0f,0x24,0x24,0x14,0x0f,0x29,0x29,0x3a,0x0f,0x21,0x21,0x11 }; @@ -88,6 +86,8 @@ const unsigned char palCharacters[8]={ 0x0f,0x04,0x30,0x0f,0x0f,0x19,0x30,0x0f } const unsigned char palCharPaused[8] = {0x0f,0x00,0x2d,0x0f,0x0f,0x00,0x2d,0x0f}; const unsigned char palJudd[]={ 0x0f,0x26,0x27,0x30,0x0f,0x14,0x27,0x30,0x0f,0x2a,0x27,0x30,0x0f,0x26,0x27,0x30 }; + /* v 1 . 0 . 2 */ +const unsigned char versionStr[] = {230,232,241,231,241,233}; const unsigned char victoryMsg[] = "Victory!"; const unsigned char fourSpaces[] = " "; const unsigned char tieMsg[] = "It's a tie!"; @@ -537,8 +537,11 @@ void show_title(void) { vram_adr(NAMETABLE_C); vram_fill(0,1024); + vram_adr(NAMETABLE_A+0x342); + vram_write(versionStr,sizeof(versionStr)); + pal_bright(4); - pal_bg(palTitleA); + pal_bg(palTitle); ppu_on_bg(); WAIT_WITH_SKIP(20); @@ -564,16 +567,17 @@ void show_title(void) { /* Splat splat splat */ WAIT_WITH_SKIP(20); sfx_play(SFX_SPLAT,0); - pal_bg(palTitleB); + pal_col(10,0x27); WAIT_WITH_SKIP(20); sfx_play(SFX_SPLAT,0); - pal_bg(palTitleC); + pal_col(2,0x14); WAIT_WITH_SKIP(20); sfx_play(SFX_SPLAT,0); - pal_bg(palTitle); + pal_col(6,0x29); WAIT_WITH_SKIP(20); music_play(MUSIC_TITLE); + pal_col(3,0x30); pal_col(15,0x30); wait = 10; @@ -600,6 +604,10 @@ void show_title(void) { _skip_title: scroll(0,0); pal_bg(palTitle); + pal_col(10,0x27); + pal_col(2,0x14); + pal_col(6,0x29); + pal_col(3,0x30); music_stop(); diff --git a/levels/splat_title.h b/levels/splat_title.h index d658ca4..e51f570 100644 --- a/levels/splat_title.h +++ b/levels/splat_title.h @@ -30,8 +30,14 @@ const unsigned char splat_title[1024]={ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xdf,0xba,0xbb,0xbc,0xbd,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x5a,0x5b,0x5c, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xca,0xcb,0xcc,0xcd,0xce,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x72,0x02,0x73,0x74, - 0x0,0x30,0x0,0x0,0x55,0x55,0x55,0x5d,0xc,0x0,0x0,0x4c,0x57,0x55,0x55,0xd5,0x0,0x0,0x0,0x4c,0x55,0x55,0x55,0x55,0x0,0x0,0x0,0x0,0x77,0x55,0x55,0xd5,0x0,0x0,0xc0, - 0xfc,0xff,0xff,0xbf,0xaa,0xc0,0xfc,0x3f,0xcf,0xaf,0xaa,0xaa,0xaa,0xcc,0x0,0x80,0xaf,0xaa,0xaa,0xaa,0xaa,0x0,0x0,0x8,0xa,0xa,0xa,0xa,0xa + 0x00,0x30,0x00,0x00,0x55,0x55,0x55,0x5d, + 0x0c,0x00,0x00,0x4c,0x57,0x55,0x55,0xd5, + 0x00,0x00,0x00,0x4c,0x55,0x55,0x55,0x55, + 0x00,0x00,0x00,0x00,0x77,0x55,0x55,0xd5, + 0x00,0x00,0xc0,0xfc,0xff,0xff,0xbf,0xaa, + 0xc0,0xfc,0x3f,0xcf,0xaf,0xaa,0xaa,0xaa, + 0x00,0x00,0x80,0xaf,0xaa,0xaa,0xaa,0xaa, + 0x00,0x00,0x08,0x0a,0x0a,0x0a,0x0a,0x0a, }; diff --git a/splatood.nes b/splatood.nes index a6bf12c..9ede8c7 100644 Binary files a/splatood.nes and b/splatood.nes differ diff --git a/tileset.chr b/tileset.chr index bb3a948..3666fe0 100644 Binary files a/tileset.chr and b/tileset.chr differ