diff --git a/intl/msg_hash_us.h b/intl/msg_hash_us.h index 1eea3def49..1d3499f685 100644 --- a/intl/msg_hash_us.h +++ b/intl/msg_hash_us.h @@ -4486,6 +4486,34 @@ MSG_HASH( MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_VOLCANIC_RED, "Volcanic Red" ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIME, + "Lime Green" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PIKACHU_YELLOW, + "Pikachu Yellow" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GAMECUBE_PURPLE, + "Gamecube Purple" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FAMICOM_RED, + "Famicom Red" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FLAMING_HOT, + "Flaming Hot" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ICE_COLD, + "Ice Cold" + ) +MSG_HASH( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_TEST, + "Test" + ) MSG_HASH( MENU_ENUM_LABEL_VALUE_XMB_RIBBON_ENABLE, "Menu Shader Pipeline" diff --git a/menu/drivers/xmb.c b/menu/drivers/xmb.c index 13db26a010..6006f6180c 100644 --- a/menu/drivers/xmb.c +++ b/menu/drivers/xmb.c @@ -467,6 +467,55 @@ float gradient_sunbeam[16] = { 0.1, 0.0, 0.1, 1.00, }; +float gradient_lime_green[16] = { + 209/255.0, 255/255.0, 82/255.0, 1.0, + 146/255.0, 232/255.0, 66/255.0, 1.0, + 82/255.0, 101/255.0, 35/255.0, 1.0, + 63/255.0, 95/255.0, 30/255.0, 1.0, +}; + +float gradient_pikachu_yellow[16] = { + 63/255.0, 63/255.0, 1/255.0, 1.0, + 174/255.0, 174/255.0, 1/255.0, 1.0, + 191/255.0, 194/255.0, 1/255.0, 1.0, + 254/255.0, 221/255.0, 3/255.0, 1.0, +}; + +float gradient_gamecube_purple[16] = { + 40/255.0, 20/255.0, 91/255.0, 1.0, + 160/255.0, 140/255.0, 211/255.0, 1.0, + 107/255.0, 92/255.0, 177/255.0, 1.0, + 84/255.0, 71/255.0, 132/255.0, 1.0, +}; + +float gradient_famicom_red[16] = { + 255/255.0, 191/255.0, 171/255.0, 1.0, + 119/255.0, 49/255.0, 28/255.0, 1.0, + 148/255.0, 10/255.0, 36/255.0, 1.0, + 206/255.0, 126/255.0, 110/255.0, 1.0, +}; + +float gradient_flaming_hot[16] = { + 231/255.0, 53/255.0, 53/255.0, 1.0, + 242/255.0, 138/255.0, 97/255.0, 1.0, + 236/255.0, 97/255.0, 76/255.0, 1.0, + 255/255.0, 125/255.0, 3/255.0, 1.0, +}; + +float gradient_ice_cold[16] = { + 66/255.0, 183/255.0, 229/255.0, 1.0, + 29/255.0, 164/255.0, 255/255.0, 1.0, + 176/255.0, 255/255.0, 247/255.0, 1.0, + 174/255.0, 240/255.0, 255/255.0, 1.0, +}; + +float gradient_test[16] = { + 255/255.0, 0/255.0, 0/255.0, 1.0, + 0/255.0, 0/255.0, 255/255.0, 1.0, + 0/255.0, 255/255.0, 0/255.0, 1.0, + 32/255.0, 32/255.0, 32/255.0, 1.0, +}; + static void xmb_calculate_visible_range(const xmb_handle_t *xmb, unsigned height, size_t list_size, unsigned current, unsigned *first, unsigned *last); @@ -601,7 +650,21 @@ static float *xmb_gradient_ident(video_frame_info_t *video_info) case XMB_THEME_MORNING_BLUE: return &gradient_morning_blue[0]; case XMB_THEME_SUNBEAM: - return &gradient_sunbeam[0]; + return &gradient_sunbeam[0]; + case XMB_THEME_LIME: + return &gradient_lime_green[0]; + case XMB_THEME_TEST: + return &gradient_test[0]; + case XMB_THEME_PIKACHU_YELLOW: + return &gradient_pikachu_yellow[0]; + case XMB_THEME_GAMECUBE_PURPLE: + return &gradient_gamecube_purple[0]; + case XMB_THEME_FAMICOM_RED: + return &gradient_famicom_red[0]; + case XMB_THEME_FLAMING_HOT: + return &gradient_flaming_hot[0]; + case XMB_THEME_ICE_COLD: + return &gradient_ice_cold[0]; case XMB_THEME_LEGACY_RED: default: break; diff --git a/menu/menu_defines.h b/menu/menu_defines.h index e4683408c0..e78fe65a5a 100644 --- a/menu/menu_defines.h +++ b/menu/menu_defines.h @@ -219,6 +219,13 @@ enum xmb_color_theme XMB_THEME_WALLPAPER, XMB_THEME_MORNING_BLUE, XMB_THEME_SUNBEAM, + XMB_THEME_LIME, + XMB_THEME_PIKACHU_YELLOW, + XMB_THEME_GAMECUBE_PURPLE, + XMB_THEME_FAMICOM_RED, + XMB_THEME_FLAMING_HOT, + XMB_THEME_ICE_COLD, + XMB_THEME_TEST, XMB_THEME_LAST }; diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 11a6bb3141..b651993b17 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -4192,6 +4192,48 @@ static void setting_get_string_representation_uint_xmb_menu_color_theme( MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_SUNBEAM), len); break; + case XMB_THEME_LIME: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIME), + len); + break; + case XMB_THEME_TEST: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_TEST), + len); + break; + case XMB_THEME_PIKACHU_YELLOW: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PIKACHU_YELLOW), + len); + break; + case XMB_THEME_GAMECUBE_PURPLE: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GAMECUBE_PURPLE), + len); + break; + case XMB_THEME_FAMICOM_RED: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FAMICOM_RED), + len); + break; + case XMB_THEME_FLAMING_HOT: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FLAMING_HOT), + len); + break; + case XMB_THEME_ICE_COLD: + strlcpy(s, + msg_hash_to_str( + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ICE_COLD), + len); + break; } } #endif diff --git a/msg_hash.h b/msg_hash.h index dab4a9654a..5fc52edf75 100644 --- a/msg_hash.h +++ b/msg_hash.h @@ -546,6 +546,7 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_GOLDEN, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_ELECTRIC_BLUE, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_APPLE_GREEN, + MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LIME_GREEN, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_VOLCANIC_RED, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_LAGOON, MENU_ENUM_LABEL_VALUE_RGUI_MENU_COLOR_THEME_BROGRAMMER, @@ -598,6 +599,13 @@ enum msg_hash_enums MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PLAIN, MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_MORNING_BLUE, MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_SUNBEAM, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_LIME, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_PIKACHU_YELLOW, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_GAMECUBE_PURPLE, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FAMICOM_RED, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_FLAMING_HOT, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_ICE_COLD, + MENU_ENUM_LABEL_VALUE_XMB_MENU_COLOR_THEME_TEST, MENU_LABEL(SHADER_PIPELINE_RIBBON_SIMPLIFIED), MENU_LABEL(SHADER_PIPELINE_RIBBON),