mirror of
https://github.com/libretro/RetroArch
synced 2025-02-26 06:40:39 +00:00
(video_driver_frame) Cache frame before converting 0RGB1555 (#9629)
* (video_driver_frame) Don't convert 0RGB1555 when menu is active Fixes the color cycling that happens when the menu is up and the core's internal pixel format is 0RGB1555. This happened because video_driver_scaler would keep converting from 0RGB1555 to RGB565, even when the core was paused. * Update retroarch.c * Update retroarch.c
This commit is contained in:
parent
c78a0da045
commit
a723a833a8
14
retroarch.c
14
retroarch.c
@ -19637,8 +19637,14 @@ static void video_driver_frame(const void *data, unsigned width,
|
||||
if (!video_driver_active)
|
||||
return;
|
||||
|
||||
if (data)
|
||||
frame_cache_data = data;
|
||||
frame_cache_width = width;
|
||||
frame_cache_height = height;
|
||||
frame_cache_pitch = pitch;
|
||||
|
||||
if (
|
||||
video_driver_scaler_ptr
|
||||
video_driver_scaler_ptr
|
||||
&& data
|
||||
&& (video_driver_pix_fmt == RETRO_PIXEL_FORMAT_0RGB1555)
|
||||
&& (data != RETRO_HW_FRAME_BUFFER_VALID)
|
||||
@ -19652,12 +19658,6 @@ static void video_driver_frame(const void *data, unsigned width,
|
||||
pitch = video_driver_scaler_ptr->scaler->out_stride;
|
||||
}
|
||||
|
||||
if (data)
|
||||
frame_cache_data = data;
|
||||
frame_cache_width = width;
|
||||
frame_cache_height = height;
|
||||
frame_cache_pitch = pitch;
|
||||
|
||||
video_driver_build_info(&video_info);
|
||||
|
||||
/* Get the amount of frames per seconds. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user