From 7c41903ecb71956ee238948e70fada7c07f5a330 Mon Sep 17 00:00:00 2001 From: Brad Parker Date: Mon, 23 Jan 2017 14:50:31 -0500 Subject: [PATCH] GDI: fix color rendering of RGUI menu --- gfx/drivers/gdi_gfx.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/gfx/drivers/gdi_gfx.c b/gfx/drivers/gdi_gfx.c index 8daeff9a62..f6a07ddedc 100644 --- a/gfx/drivers/gdi_gfx.c +++ b/gfx/drivers/gdi_gfx.c @@ -229,10 +229,21 @@ static bool gdi_gfx_frame(void *data, const void *frame, info->bmiHeader.biCompression = BI_BITFIELDS; - /* map RGB565 color bits, default is 555 */ - masks[0] = 0xF800; - masks[1] = 0x07E0; - masks[2] = 0x001F; + /* default 16-bit format on Windows is XRGB1555 */ + if (frame_to_copy == gdi_menu_frame) + { + /* map RGB444 color bits for RGUI */ + masks[0] = 0xF000; + masks[1] = 0x0F00; + masks[2] = 0x00F0; + } + else + { + /* map RGB565 color bits for core */ + masks[0] = 0xF800; + masks[1] = 0x07E0; + masks[2] = 0x001F; + } } else info->bmiHeader.biCompression = BI_RGB;