From 7a7265eea0ec266e4ca77226587d566a43bfbdb6 Mon Sep 17 00:00:00 2001 From: kub Date: Tue, 23 Jun 2020 23:36:38 +0200 Subject: [PATCH] SDL UI, fix for CD LED display --- platform/common/plat_sdl.c | 2 +- platform/linux/emu.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/platform/common/plat_sdl.c b/platform/common/plat_sdl.c index bce4b084..bb1ce612 100644 --- a/platform/common/plat_sdl.c +++ b/platform/common/plat_sdl.c @@ -270,7 +270,7 @@ void plat_init(void) if (shadow_size < 320 * 480 * 2) shadow_size = 320 * 480 * 2; - shadow_fb = malloc(shadow_size); + shadow_fb = calloc(1, shadow_size); g_menubg_ptr = calloc(1, shadow_size); if (shadow_fb == NULL || g_menubg_ptr == NULL) { fprintf(stderr, "OOM\n"); diff --git a/platform/linux/emu.c b/platform/linux/emu.c index 005f82a3..597c1308 100644 --- a/platform/linux/emu.c +++ b/platform/linux/emu.c @@ -39,10 +39,11 @@ static void draw_cd_leds(void) int led_reg, pitch, scr_offs, led_offs; led_reg = Pico_mcd->s68k_regs[0]; - pitch = 320; + pitch = g_screen_ppitch; led_offs = 4; scr_offs = pitch * 2 + 4; +#if 0 if (currentConfig.renderer != RT_16BIT) { #define p(x) px[(x) >> 2] // 8-bit modes @@ -52,7 +53,9 @@ static void draw_cd_leds(void) p(pitch*0) = p(pitch*1) = p(pitch*2) = col_g; p(pitch*0 + led_offs) = p(pitch*1 + led_offs) = p(pitch*2 + led_offs) = col_r; #undef p - } else { + } else +#endif + { #define p(x) px[(x)*2 >> 2] = px[((x)*2 >> 2) + 1] // 16-bit modes unsigned int *px = (unsigned int *)((short *)g_screen_ptr + scr_offs); -- 2.39.2