diff --git a/frontend/menu/rmenu.c b/frontend/menu/rmenu.c index 6c70034220..b9073693f4 100644 --- a/frontend/menu/rmenu.c +++ b/frontend/menu/rmenu.c @@ -3423,32 +3423,22 @@ bool menu_iterate(void) g_extern.frame_count++; - if ((g_extern.lifecycle_mode_state & (1ULL << MODE_MENU_LOW_RAM_MODE_ENABLE))) + if (!(g_extern.lifecycle_mode_state & (1ULL << MODE_MENU_LOW_RAM_MODE_ENABLE))) { -#if defined(HAVE_OPENGL) - glClear(GL_COLOR_BUFFER_BIT); -#elif defined(HAVE_D3D8) || defined(HAVE_D3D9) - xdk_d3d_video_t *d3d = (xdk_d3d_video_t*)driver.video_data; - LPDIRECT3DDEVICE d3dr = (LPDIRECT3DDEVICE)d3d->d3d_render_device; - d3dr->Clear(0, NULL, D3DCLEAR_TARGET, 0xff000000, 1.0f, 0); -#endif - } - else - { - // draw last frame for loading messages if (driver.video_poke && driver.video_poke->set_texture_enable) { driver.video_poke->set_texture_frame(driver.video_data, menu_texture->pixels, true, menu_texture->width, menu_texture->height, 1.0f); driver.video_poke->set_texture_enable(driver.video_data, true); } - - rarch_render_cached_frame(); - - if (driver.video_poke && driver.video_poke->set_texture_enable) - driver.video_poke->set_texture_enable(driver.video_data, false); } + // draw last frame for loading messages + rarch_render_cached_frame(); + + if (driver.video_poke && driver.video_poke->set_texture_enable) + driver.video_poke->set_texture_enable(driver.video_data, false); + //first button input frame uint64_t input_state_first_frame = 0; uint64_t input_state = 0; diff --git a/gfx/gl.c b/gfx/gl.c index 1752bd6c69..34cfe8190a 100644 --- a/gfx/gl.c +++ b/gfx/gl.c @@ -1339,6 +1339,13 @@ static bool gl_frame(void *data, const void *frame, unsigned width, unsigned hei uint64_t lifecycle_mode_state = g_extern.lifecycle_mode_state; (void)lifecycle_mode_state; +#ifdef __CELLOS_LV2__ + /* FIXME - check if it makes sense for all other platforms to do a glClear + * at start of gl_frame as well - if so, we can drop this ifdef and make + * it implicit */ + glClear(GL_COLOR_BUFFER_BIT); +#endif + gl_shader_use_func(gl, 1); #ifdef IOS // Apparently the viewport is lost each frame, thanks apple.