From b5a97f1d555ff26518d4f2deba342e38f142cb72 Mon Sep 17 00:00:00 2001 From: TRIFORCE89 <2404662+TRIFORCE89@users.noreply.github.com> Date: Fri, 16 Jul 2021 12:01:05 -0400 Subject: [PATCH] Multiple Revisions Changes: - Double check against TheWolfBunny & nensondubois - improved commenting - nensondubois' revised Alley Way SGB palette - nensondubois' revised Tetris Attack SGB palette - Collection of SaGa palette - Donkey Kong '94 ending palette - SGB Super Mario Land palette for Arne's Unnamed Graphics Hack rather than 1-A - Wide-Boy palette option - Donkey Kong Land DMGesque menu palette option - Game & Watch palette option - Demo Vision palette option - remove unused palette additions (Superball, Squidlit) - update Dream Land GB with TheWolfBunny's version --- GBGameCore.mm | 31 ++++--- gbcpalettes.h | 224 +++++++++++++++++++++++++++++--------------------- 2 files changed, 151 insertions(+), 104 deletions(-) diff --git a/GBGameCore.mm b/GBGameCore.mm index 17431f9..71870db 100644 --- a/GBGameCore.mm +++ b/GBGameCore.mm @@ -351,20 +351,25 @@ const int GBMap[] = {gambatte::InputGetter::UP, gambatte::InputGetter::DOWN, gam Option(@"Game Boy Light", @"palette"), SeparatorItem(), Label(@"Monochrome Palettes"), - Option(@"SGB Greenscale", @"palette"), Option(@"SGB Grayscale", @"palette"), + Option(@"SGB Greenscale", @"palette"), Option(@"GBC Grayscale", @"palette"), SeparatorItem(), Label(@"Virtual Console"), Option(@"VC Greenscale", @"palette"), Option(@"VC Grayscale", @"palette"), SeparatorItem(), + Label(@"Lateral Thinking"), + Option(@"Game & Watch", @"palette"), + Option(@"Virtual Boy", @"palette"), + Option(@"WonderSwan", @"palette"), + SeparatorItem(), Label(@"Extra Palettes"), - Option(@"Analogue", @"palette"), - Option(@"GB Studio", @"palette"), + Option(@"Demo Vision", @"palette"), + Option(@"Wide-Boy", @"palette"), + Option(@"Portable Power", @"palette"), Option(@"Pocket Tales", @"palette"), - Option(@"VirtualBoy", @"palette"), - Option(@"WonderSwan", @"palette") + Option(@"GB Studio", @"palette") ]; // Deep mutable copy @@ -535,17 +540,19 @@ const int GBMap[] = {gambatte::InputGetter::UP, gambatte::InputGetter::DOWN, gam @"Dot Matrix" : @"GB - DMG", @"Game Boy Pocket" : @"GB - MGB", @"Game Boy Light" : @"GB - Light", - @"SGB Greenscale" : @"SGB - 4H", @"SGB Grayscale" : @"SGB - 2H", - @"GBC Grayscale" : @"GBC - Grayscale", - @"VirtualBoy" : @"VirtualBoy", + @"SGB Greenscale" : @"SGB - 4H", + @"GBC Grayscale" : @"GBC - Gray", @"VC Greenscale" : @"VC - Green", @"VC Grayscale" : @"VC - Gray", - @"Analogue" : @"Analogue", - @"GB Studio" : @"GB Studio", + @"Game & Watch" : @"GW Classic LCD", + @"Virtual Boy" : @"Virtual Boy", + @"WonderSwan" : @"WonderSwan", + @"Demo Vision" : @"Demo Vision", + @"Wide-Boy" : @"Wide-Boy", + @"Portable Power" : @"Portable Power", @"Pocket Tales" : @"Pocket Tales", - @"VirtualBoy" : @"VirtualBoy", - @"WonderSwan" : @"WonderSwan" + @"GB Studio" : @"GB Studio" }; palette = paletteNames[palette]; diff --git a/gbcpalettes.h b/gbcpalettes.h index f32a485..7418d41 100644 --- a/gbcpalettes.h +++ b/gbcpalettes.h @@ -59,7 +59,7 @@ static const unsigned short p006[] = { PACK15_4(0xFFFFFF, 0xFF9C00, 0xFF0000, 0x000000) }; -static const unsigned short p007[] = { // Orange | A + Down +static const unsigned short p007[] = { // Orange | Down + A PACK15_4(0xFFFFFF, 0xFFFF00, 0xFF0000, 0x000000), PACK15_4(0xFFFFFF, 0xFFFF00, 0xFF0000, 0x000000), PACK15_4(0xFFFFFF, 0xFFFF00, 0xFF0000, 0x000000) @@ -77,13 +77,13 @@ static const unsigned short p012[] = { // Brown | Up PACK15_4(0xFFFFFF, 0xFFAD63, 0x843100, 0x000000) }; -static const unsigned short p013[] = { // Inverted | B + Right +static const unsigned short p013[] = { // Reverse | Right + B PACK15_4(0x000000, 0x008484, 0xFFDE00, 0xFFFFFF), PACK15_4(0x000000, 0x008484, 0xFFDE00, 0xFFFFFF), PACK15_4(0x000000, 0x008484, 0xFFDE00, 0xFFFFFF) }; -static const unsigned short p016[] = { // Grayscale | B + Left +static const unsigned short p016[] = { // Gray | Left + B PACK15_4(0xFFFFFF, 0xA5A5A5, 0x525252, 0x000000), PACK15_4(0xFFFFFF, 0xA5A5A5, 0x525252, 0x000000), PACK15_4(0xFFFFFF, 0xA5A5A5, 0x525252, 0x000000) @@ -209,13 +209,13 @@ static const unsigned short p312[] = { PACK15_4(0xFFFFFF, 0x7BFF31, 0x008400, 0x000000) }; -static const unsigned short p319[] = { // Dark Brown | B + Up +static const unsigned short p319[] = { // Dark Brown | Up + B PACK15_4(0xFFE6C5, 0xCE9C84, 0x846B29, 0x5A3108), PACK15_4(0xFFFFFF, 0xFFAD63, 0x843100, 0x000000), PACK15_4(0xFFFFFF, 0xFFAD63, 0x843100, 0x000000) }; -static const unsigned short p31C[] = { // Dark Green (GBC Default) | A + Right +static const unsigned short p31C[] = { // Dark Green (GBC Default) | Right + A PACK15_4(0xFFFFFF, 0x7BFF31, 0x0063C5, 0x000000), PACK15_4(0xFFFFFF, 0xFF8484, 0x943A3A, 0x000000), PACK15_4(0xFFFFFF, 0xFF8484, 0x943A3A, 0x000000) @@ -287,7 +287,7 @@ static const unsigned short p50C[] = { PACK15_4(0xFFFFFF, 0x5ABDFF, 0xFF0000, 0x0000FF) }; -static const unsigned short p50D[] = { // Dark Blue | A + Left +static const unsigned short p50D[] = { // Dark Blue | Left + A PACK15_4(0xFFFFFF, 0x8C8CDE, 0x52528C, 0x000000), PACK15_4(0xFFFFFF, 0xFF8484, 0x943A3A, 0x000000), PACK15_4(0xFFFFFF, 0xFFAD63, 0x843100, 0x000000) @@ -305,7 +305,7 @@ static const unsigned short p50F[] = { PACK15_4(0xFFFFFF, 0x7BFF31, 0x008400, 0x000000) }; -static const unsigned short p510[] = { // Red | A + Up +static const unsigned short p510[] = { // Red | Up + A PACK15_4(0xFFFFFF, 0xFF8484, 0x943A3A, 0x000000), PACK15_4(0xFFFFFF, 0x7BFF31, 0x008400, 0x000000), PACK15_4(0xFFFFFF, 0x63A5FF, 0x0000FF, 0x000000) @@ -341,7 +341,7 @@ static const unsigned short p518[] = { // Blue | Left PACK15_4(0xFFFFFF, 0x7BFF31, 0x008400, 0x000000) }; -static const unsigned short p51A[] = { // Yellow | B + Down +static const unsigned short p51A[] = { // Yellow | Down + B PACK15_4(0xFFFFFF, 0xFFFF00, 0x7B4A00, 0x000000), PACK15_4(0xFFFFFF, 0x63A5FF, 0x0000FF, 0x000000), PACK15_4(0xFFFFFF, 0x7BFF31, 0x008400, 0x000000) @@ -354,249 +354,261 @@ static const unsigned short p51C[] = { }; // Super Game Boy Palettes -static const unsigned short sgb1A[] = { // 1-A (SGB Default) +static const unsigned short sgb1A[] = { // 1-A (SGB Default | 7047-0470-4704) PACK15_4(0xF8E8C8, 0xD89048, 0xA82820, 0x301850), PACK15_4(0xF8E8C8, 0xD89048, 0xA82820, 0x301850), PACK15_4(0xF8E8C8, 0xD89048, 0xA82820, 0x301850) }; -static const unsigned short sgb1B[] = { +static const unsigned short sgb1B[] = { // 7057-0570-5705 PACK15_4(0xD8D8C0, 0xC8B070, 0xB05010, 0x000000), PACK15_4(0xD8D8C0, 0xC8B070, 0xB05010, 0x000000), PACK15_4(0xD8D8C0, 0xC8B070, 0xB05010, 0x000000) }; -static const unsigned short sgb1C[] = { +static const unsigned short sgb1C[] = { // 7067-0670-6706 PACK15_4(0xF8C0F8, 0xE89850, 0x983860, 0x383898), PACK15_4(0xF8C0F8, 0xE89850, 0x983860, 0x383898), PACK15_4(0xF8C0F8, 0xE89850, 0x983860, 0x383898) }; -static const unsigned short sgb1D[] = { +static const unsigned short sgb1D[] = { // 7077-0770-7707 PACK15_4(0xF8F8A8, 0xC08048, 0xF80000, 0x501800), PACK15_4(0xF8F8A8, 0xC08048, 0xF80000, 0x501800), PACK15_4(0xF8F8A8, 0xC08048, 0xF80000, 0x501800) }; -static const unsigned short sgb1E[] = { +static const unsigned short sgb1E[] = { // 7087-0870-8708 PACK15_4(0xF8D8B0, 0x78C078, 0x688840, 0x583820), PACK15_4(0xF8D8B0, 0x78C078, 0x688840, 0x583820), PACK15_4(0xF8D8B0, 0x78C078, 0x688840, 0x583820) }; -static const unsigned short sgb1F[] = { +static const unsigned short sgb1F[] = { // 7097-0970-9709 PACK15_4(0xD8E8F8, 0xE08850, 0xA80000, 0x004010), PACK15_4(0xD8E8F8, 0xE08850, 0xA80000, 0x004010), PACK15_4(0xD8E8F8, 0xE08850, 0xA80000, 0x004010) }; -static const unsigned short sgb1G[] = { +static const unsigned short sgb1G[] = { // 7107-1071-0710 PACK15_4(0x000050, 0x00A0E8, 0x787800, 0xF8F858), PACK15_4(0x000050, 0x00A0E8, 0x787800, 0xF8F858), PACK15_4(0x000050, 0x00A0E8, 0x787800, 0xF8F858) }; -static const unsigned short sgb1H[] = { // 1-H (SGB Brownscale) +static const unsigned short sgb1H[] = { // 7117-1171-1711 PACK15_4(0xF8E8E0, 0xF8B888, 0x804000, 0x301800), PACK15_4(0xF8E8E0, 0xF8B888, 0x804000, 0x301800), PACK15_4(0xF8E8E0, 0xF8B888, 0x804000, 0x301800) }; -static const unsigned short sgb2A[] = { +static const unsigned short sgb2A[] = { // 7127-1271-2712 PACK15_4(0xF0C8A0, 0xC08848, 0x287800, 0x000000), PACK15_4(0xF0C8A0, 0xC08848, 0x287800, 0x000000), PACK15_4(0xF0C8A0, 0xC08848, 0x287800, 0x000000) }; -static const unsigned short sgb2B[] = { +static const unsigned short sgb2B[] = { // 7137-1371-3713 PACK15_4(0xF8F8F8, 0xF8E850, 0xF83000, 0x500058), PACK15_4(0xF8F8F8, 0xF8E850, 0xF83000, 0x500058), PACK15_4(0xF8F8F8, 0xF8E850, 0xF83000, 0x500058) }; -static const unsigned short sgb2C[] = { +static const unsigned short sgb2C[] = { // 7147-1471-4714 PACK15_4(0xF8C0F8, 0xE88888, 0x7830E8, 0x282898), PACK15_4(0xF8C0F8, 0xE88888, 0x7830E8, 0x282898), PACK15_4(0xF8C0F8, 0xE88888, 0x7830E8, 0x282898) }; -static const unsigned short sgb2D[] = { +static const unsigned short sgb2D[] = { // 7157-1571-5715 PACK15_4(0xF8F8A0, 0x00F800, 0xF83000, 0x000050), PACK15_4(0xF8F8A0, 0x00F800, 0xF83000, 0x000050), PACK15_4(0xF8F8A0, 0x00F800, 0xF83000, 0x000050) }; -static const unsigned short sgb2E[] = { +static const unsigned short sgb2E[] = { // 7167-1671-6716 PACK15_4(0xF8C880, 0x90B0E0, 0x281060, 0x100810), PACK15_4(0xF8C880, 0x90B0E0, 0x281060, 0x100810), PACK15_4(0xF8C880, 0x90B0E0, 0x281060, 0x100810) }; -static const unsigned short sgb2F[] = { +static const unsigned short sgb2F[] = { // 7177-1771-7717 PACK15_4(0xD0F8F8, 0xF89050, 0xA00000, 0x180000), PACK15_4(0xD0F8F8, 0xF89050, 0xA00000, 0x180000), PACK15_4(0xD0F8F8, 0xF89050, 0xA00000, 0x180000) }; -static const unsigned short sgb2G[] = { +static const unsigned short sgb2G[] = { // 7187-1871-8718 PACK15_4(0x68B838, 0xE05040, 0xE0B880, 0x001800), PACK15_4(0x68B838, 0xE05040, 0xE0B880, 0x001800), PACK15_4(0x68B838, 0xE05040, 0xE0B880, 0x001800) }; -static const unsigned short sgb2H[] = { // 2-H (SGB Grayscale) +static const unsigned short sgb2H[] = { // 2-H (SGB Grayscale | 7197-1971-9719) PACK15_4(0xF8F8F8, 0xB8B8B8, 0x707070, 0x000000), PACK15_4(0xF8F8F8, 0xB8B8B8, 0x707070, 0x000000), PACK15_4(0xF8F8F8, 0xB8B8B8, 0x707070, 0x000000) }; -static const unsigned short sgb3A[] = { +static const unsigned short sgb3A[] = { // 7207-2072-0720 PACK15_4(0xF8D098, 0x70C0C0, 0xF86028, 0x304860), PACK15_4(0xF8D098, 0x70C0C0, 0xF86028, 0x304860), PACK15_4(0xF8D098, 0x70C0C0, 0xF86028, 0x304860) }; -static const unsigned short sgb3B[] = { +static const unsigned short sgb3B[] = { // 7217-2172-1721 PACK15_4(0xD8D8C0, 0xE08020, 0x005000, 0x001010), PACK15_4(0xD8D8C0, 0xE08020, 0x005000, 0x001010), PACK15_4(0xD8D8C0, 0xE08020, 0x005000, 0x001010) }; -static const unsigned short sgb3C[] = { +static const unsigned short sgb3C[] = { // 7227-2272-2722 PACK15_4(0xE0A8C8, 0xF8F878, 0x00B8F8, 0x202058), PACK15_4(0xE0A8C8, 0xF8F878, 0x00B8F8, 0x202058), PACK15_4(0xE0A8C8, 0xF8F878, 0x00B8F8, 0x202058) }; -static const unsigned short sgb3D[] = { +static const unsigned short sgb3D[] = { // 7237-2372-3723 PACK15_4(0xF0F8B8, 0xE0A878, 0x08C800, 0x000000), PACK15_4(0xF0F8B8, 0xE0A878, 0x08C800, 0x000000), PACK15_4(0xF0F8B8, 0xE0A878, 0x08C800, 0x000000) }; -static const unsigned short sgb3E[] = { +static const unsigned short sgb3E[] = { // 7247-2472-4724 PACK15_4(0xF8F8C0, 0xE0B068, 0xB07820, 0x504870), PACK15_4(0xF8F8C0, 0xE0B068, 0xB07820, 0x504870), PACK15_4(0xF8F8C0, 0xE0B068, 0xB07820, 0x504870) }; -static const unsigned short sgb3F[] = { +static const unsigned short sgb3F[] = { // 7257-2572-5725 PACK15_4(0x7878C8, 0xF868F8, 0xF8D000, 0x404040), PACK15_4(0x7878C8, 0xF868F8, 0xF8D000, 0x404040), PACK15_4(0x7878C8, 0xF868F8, 0xF8D000, 0x404040) }; -static const unsigned short sgb3G[] = { +static const unsigned short sgb3G[] = { // 7267-2672-6726 PACK15_4(0x60D850, 0xF8F8F8, 0xC83038, 0x380000), PACK15_4(0x60D850, 0xF8F8F8, 0xC83038, 0x380000), PACK15_4(0x60D850, 0xF8F8F8, 0xC83038, 0x380000) }; -static const unsigned short sgb3H[] = { // 3-H (SGB Vivid Greenscale) +static const unsigned short sgb3H[] = { // 7277-2772-7727 PACK15_4(0xE0F8A0, 0x78C838, 0x488818, 0x081800), PACK15_4(0xE0F8A0, 0x78C838, 0x488818, 0x081800), PACK15_4(0xE0F8A0, 0x78C838, 0x488818, 0x081800) }; -static const unsigned short sgb4A[] = { +static const unsigned short sgb4A[] = { // 7287-2872-8728 PACK15_4(0xF0A868, 0x78A8F8, 0xD000D0, 0x000078), PACK15_4(0xF0A868, 0x78A8F8, 0xD000D0, 0x000078), PACK15_4(0xF0A868, 0x78A8F8, 0xD000D0, 0x000078) }; -static const unsigned short sgb4B[] = { +static const unsigned short sgb4B[] = { // 7297-2972-9729 PACK15_4(0xF0E8F0, 0xE8A060, 0x407838, 0x180808), PACK15_4(0xF0E8F0, 0xE8A060, 0x407838, 0x180808), PACK15_4(0xF0E8F0, 0xE8A060, 0x407838, 0x180808) }; -static const unsigned short sgb4C[] = { +static const unsigned short sgb4C[] = { // 7307-3073-0730 PACK15_4(0xF8E0E0, 0xD8A0D0, 0x98A0E0, 0x080000), PACK15_4(0xF8E0E0, 0xD8A0D0, 0x98A0E0, 0x080000), PACK15_4(0xF8E0E0, 0xD8A0D0, 0x98A0E0, 0x080000) }; -static const unsigned short sgb4D[] = { +static const unsigned short sgb4D[] = { // 7317-3173-1731 PACK15_4(0xF8F8B8, 0x90C8C8, 0x486878, 0x082048), PACK15_4(0xF8F8B8, 0x90C8C8, 0x486878, 0x082048), PACK15_4(0xF8F8B8, 0x90C8C8, 0x486878, 0x082048) }; -static const unsigned short sgb4E[] = { +static const unsigned short sgb4E[] = { // 7327-3273-2732 PACK15_4(0xF8D8A8, 0xE0A878, 0x785888, 0x002030), PACK15_4(0xF8D8A8, 0xE0A878, 0x785888, 0x002030), PACK15_4(0xF8D8A8, 0xE0A878, 0x785888, 0x002030) }; -static const unsigned short sgb4F[] = { +static const unsigned short sgb4F[] = { // 7337-3373-3733 PACK15_4(0xB8D0D0, 0xD880D8, 0x8000A0, 0x380000), PACK15_4(0xB8D0D0, 0xD880D8, 0x8000A0, 0x380000), PACK15_4(0xB8D0D0, 0xD880D8, 0x8000A0, 0x380000) }; -static const unsigned short sgb4G[] = { +static const unsigned short sgb4G[] = { // 7347-3473-4734 PACK15_4(0xB0E018, 0xB82058, 0x281000, 0x008060), PACK15_4(0xB0E018, 0xB82058, 0x281000, 0x008060), PACK15_4(0xB0E018, 0xB82058, 0x281000, 0x008060) }; -static const unsigned short sgb4H[] = { // 4-H (SGB DMG-esque) +static const unsigned short sgb4H[] = { // 4-H (SGB Greenscale | RGB208 | 7357-3573-5735) PACK15_4(0xF8F8C8, 0xB8C058, 0x808840, 0x405028), PACK15_4(0xF8F8C8, 0xB8C058, 0x808840, 0x405028), PACK15_4(0xF8F8C8, 0xB8C058, 0x808840, 0x405028) }; // Virtual Console -static const unsigned short vcGreen[] = { +static const unsigned short vcGreen[] = { // DMG_COLOR PACK15_4(0xBDFF21, 0x9CEF29, 0x5A8C42, 0x4A4A4A), PACK15_4(0xBDFF21, 0x9CEF29, 0x5A8C42, 0x4A4A4A), PACK15_4(0xBDFF21, 0x9CEF29, 0x5A8C42, 0x4A4A4A) }; static const unsigned short vcGreenAlt[] = { // inspired by Dream Land GB (Super Smash Bros. Ultimate) - PACK15_4(0xFBFB7C, 0xE0F03E, 0x99B41F, 0x5D5D1F), - PACK15_4(0xFBFB7C, 0xE0F03E, 0x99B41F, 0x5D5D1F), - PACK15_4(0xFBFB7C, 0xE0F03E, 0x99B41F, 0x5D5D1F) + PACK15_4(0xF6FF70, 0xB9D03A, 0x788B1D, 0x48530E), + PACK15_4(0xF6FF70, 0xB9D03A, 0x788B1D, 0x48530E), + PACK15_4(0xF6FF70, 0xB9D03A, 0x788B1D, 0x48530E) }; -static const unsigned short vcGray[] = { +static const unsigned short vcGray[] = { // DMG_COLOR_GRAY PACK15_4(0xCECEAD, 0xA5A58C, 0x6B6B52, 0x292919), PACK15_4(0xCECEAD, 0xA5A58C, 0x6B6B52, 0x292919), PACK15_4(0xCECEAD, 0xA5A58C, 0x6B6B52, 0x292919) }; -static const unsigned short vcGrayAlt[] = { // Kirby's Dream Collection +static const unsigned short vcGrayAlt[] = { // DMG_COLOR_COLOR (Kirby's Dream Collection) PACK15_4(0xBDBD9C, 0x8C8C73, 0x5A5A4A, 0x313119), PACK15_4(0xBDBD9C, 0x8C8C73, 0x5A5A4A, 0x313119), PACK15_4(0xBDBD9C, 0x8C8C73, 0x5A5A4A, 0x313119) }; -// Special Palettes - -static const unsigned short twb799510[] = { // Squidlit - PACK15_4(0x9CBE0C, 0x6E870A, 0x2C6234, 0x0C360C), - PACK15_4(0x9CBE0C, 0x6E870A, 0x2C6234, 0x0C360C), - PACK15_4(0x9CBE0C, 0x6E870A, 0x2C6234, 0x0C360C) +static const unsigned short vcSaGa[] = { // Collection of SaGa: Final Fantasy Legend + PACK15_4(0xB2C0A8, 0x769A67, 0x345D51, 0x041820), + PACK15_4(0xB2C0A8, 0x769A67, 0x345D51, 0x041820), + PACK15_4(0xB2C0A8, 0x769A67, 0x345D51, 0x041820) }; -static const unsigned short twbAMA[] = { // Superball Ivory (Super Mario Maker 2) - PACK15_4(0xEEF0BC, 0xBCBC8A, 0x828250, 0x646432), - PACK15_4(0xEEF0BC, 0xBCBC8A, 0x828250, 0x646432), - PACK15_4(0xEEF0BC, 0xBCBC8A, 0x828250, 0x646432) +// Gunpei Yokoi Palettes +static const unsigned short pDemoVision[] = { // Demo Vision + PACK15_4(0xD9E09C, 0xA7BE03, 0x5C7114, 0x0F4B0E), + PACK15_4(0xD9E09C, 0xA7BE03, 0x5C7114, 0x0F4B0E), + PACK15_4(0xD9E09C, 0xA7BE03, 0x5C7114, 0x0F4B0E) }; -static const unsigned short twbSWJ[] = { // WonderSwan Monochrome (because Gunpei Yokoi) +static const unsigned short twbGW[] = { // Game & Watch Classic LCD + PACK15_4(0xC6CBAD, 0x979B84, 0x545F51, 0x22231E), + PACK15_4(0xC6CBAD, 0x979B84, 0x545F51, 0x22231E), + PACK15_4(0xC6CBAD, 0x979B84, 0x545F51, 0x22231E) +}; + +static const unsigned short twbSWJ[] = { // WonderSwan Monochrome PACK15_4(0xFEFEFE, 0xC2C2C2, 0x686868, 0x1D1D1D), PACK15_4(0xFEFEFE, 0xC2C2C2, 0x686868, 0x1D1D1D), PACK15_4(0xFEFEFE, 0xC2C2C2, 0x686868, 0x1D1D1D) }; -static const unsigned short twbVUE[] = { // VirtualBoy +static const unsigned short twbVUE[] = { // Virtual Boy PACK15_4(0xFF0000, 0xAA0000, 0x550000, 0x000000), PACK15_4(0xFF0000, 0xAA0000, 0x550000, 0x000000), PACK15_4(0xFF0000, 0xAA0000, 0x550000, 0x000000) }; +static const unsigned short twbWB[] = { // Giga Kiwi DMG (Wide-Boy / Kiosk) + PACK15_4(0xD0E040, 0xA0A830, 0x607028, 0x384828), + PACK15_4(0xD0E040, 0xA0A830, 0x607028, 0x384828), + PACK15_4(0xD0E040, 0xA0A830, 0x607028, 0x384828) +}; + +// Additional Super Game Boy Enhanced Palettes static const unsigned short sgbACR[] = { // Conker's Pocket Tales (TheWolfBunny) PACK15_4(0xD0D860, 0x88A000, 0x385000, 0x000000), PACK15_4(0xD0D860, 0x88A000, 0x385000, 0x000000), @@ -615,7 +627,25 @@ static const unsigned short sgbAPS[] = { // Pokémon Yellow