@@ -33,10 +33,20 @@ constexpr std::array<std::array<u16, 16 * 5>, 2> letterPalettes = {{
3333 }
3434}};
3535
36- constexpr u16 fontPal[] = {
37- 0x0000 , 0xEF7B , 0xD6B5 , 0xC631 , // Gray
38- 0x0000 , 0xC631 , 0xF39C , 0xFFFF // White
39- };
36+ constexpr std::array<std::array<u16 , 16 >, 2 > fontPal = {{
37+ {
38+ 0xFFFF , 0xDEF7 , 0xC631 , 0x8000 , // Black
39+ 0x0000 , 0xEF7B , 0xD6B5 , 0xC631 , // Gray
40+ 0x39CE , 0xC631 , 0xF39C , 0xFFFF , // White on gray
41+ 0x32AD , 0xC2D1 , 0xDF57 , 0xFFFF , // White on green
42+ },
43+ {
44+ 0xFFFF , 0xDEF7 , 0xC631 , 0x8000 , // Black
45+ 0x0000 , 0xEF7B , 0xD6B5 , 0xC631 , // Gray
46+ 0x39CE , 0xC631 , 0xF39C , 0xFFFF , // White on gray
47+ 0x1DFD , 0xB63D , 0xD6DE , 0xFFFF , // White on orange
48+ }
49+ }};
4050
4151void initGraphics (bool altPalette) {
4252 videoSetMode (MODE_5_2D);
@@ -64,7 +74,6 @@ void initGraphics(bool altPalette) {
6474
6575 oamInit (&oamMain, SpriteMapping_Bmp_1D_128, false );
6676 oamInit (&oamSub, SpriteMapping_Bmp_1D_128, false );
67- setSpritePalettes (altPalette);
6877
6978 constexpr int tileSize = 32 * 32 / 2 ;
7079 for (int i = 0 ; i < letterTilesTilesLen / tileSize; i++) {
@@ -81,12 +90,17 @@ void initGraphics(bool altPalette) {
8190 Sprite::update (true );
8291
8392 mainFont = std::move (Font (main_nftr, main_nftr_size));
84- tonccpy (BG_PALETTE_SUB + MAIN_FONT_GRAY, fontPal, sizeof (fontPal));
93+
94+ setPalettes (altPalette);
8595}
8696
87- void setSpritePalettes (bool altPalette) {
97+ void setPalettes (bool altPalette) {
98+ // Sprites
8899 tonccpy (SPRITE_PALETTE, letterPalettes[altPalette].data (), letterPalettes[altPalette].size () * sizeof (u16 ));
89100 tonccpy (SPRITE_PALETTE_SUB, letterPalettes[altPalette].data (), letterPalettes[altPalette].size () * sizeof (u16 ));
101+
102+ // Fonts
103+ tonccpy (BG_PALETTE_SUB + 0xF0 , fontPal[altPalette].data (), fontPal[altPalette].size () * sizeof (u16 ));
90104}
91105
92106void flipSprites (Sprite *letterSprites, int count, std::vector<TilePalette> newPalettes, FlipOptions option) {
0 commit comments