From d078682a3cc3953eb123f9b7c3bd5f9f971ca45d Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 14 Feb 2016 05:31:33 +0100 Subject: [PATCH] Add RARCH_DISPLAY_CTL_GET_CURRENT_SOFTWARE_FRAMEBUFFER --- dynamic.c | 3 ++- gfx/video_driver.c | 18 +++++++----------- gfx/video_driver.h | 6 ++---- 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/dynamic.c b/dynamic.c index daded27148..ff41b824f8 100644 --- a/dynamic.c +++ b/dynamic.c @@ -1209,7 +1209,8 @@ bool rarch_environment_cb(unsigned cmd, void *data) } case RETRO_ENVIRONMENT_GET_CURRENT_SOFTWARE_FRAMEBUFFER: - return video_driver_get_current_software_framebuffer( + return video_driver_ctl( + RARCH_DISPLAY_CTL_GET_CURRENT_SOFTWARE_FRAMEBUFFER, (struct retro_framebuffer*)data); /* Private extensions for internal use, not part of libretro API. */ diff --git a/gfx/video_driver.c b/gfx/video_driver.c index e4aa5a4996..681f075727 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -338,17 +338,6 @@ uintptr_t video_driver_get_current_framebuffer(void) return video_driver_poke->get_current_framebuffer(video_driver_data); } -bool video_driver_get_current_software_framebuffer( - struct retro_framebuffer *framebuffer) -{ - if ( - !video_driver_poke || - !video_driver_poke->get_current_software_framebuffer) - return false; - return video_driver_poke->get_current_software_framebuffer( - video_driver_data, framebuffer); -} - retro_proc_address_t video_driver_get_proc_address(const char *sym) { if (!video_driver_poke || !video_driver_poke->get_proc_address) @@ -1732,6 +1721,13 @@ bool video_driver_ctl(enum rarch_display_ctl_state state, void *data) free(video_driver_record_gpu_buffer); video_driver_record_gpu_buffer = NULL; break; + case RARCH_DISPLAY_CTL_GET_CURRENT_SOFTWARE_FRAMEBUFFER: + if ( + !video_driver_poke || + !video_driver_poke->get_current_software_framebuffer) + return false; + return video_driver_poke->get_current_software_framebuffer( + video_driver_data, (struct retro_framebuffer *)data); case RARCH_DISPLAY_CTL_NONE: default: break; diff --git a/gfx/video_driver.h b/gfx/video_driver.h index 1ab70dffa8..be738ee734 100644 --- a/gfx/video_driver.h +++ b/gfx/video_driver.h @@ -155,7 +155,8 @@ enum rarch_display_ctl_state RARCH_DISPLAY_CTL_HAS_GPU_RECORD, RARCH_DISPLAY_CTL_GPU_RECORD_GET, RARCH_DISPLAY_CTL_GPU_RECORD_INIT, - RARCH_DISPLAY_CTL_GPU_RECORD_DEINIT + RARCH_DISPLAY_CTL_GPU_RECORD_DEINIT, + RARCH_DISPLAY_CTL_GET_CURRENT_SOFTWARE_FRAMEBUFFER }; typedef struct video_info @@ -380,9 +381,6 @@ void *video_driver_get_ptr(bool force_nonthreaded_data); **/ uintptr_t video_driver_get_current_framebuffer(void); -bool video_driver_get_current_software_framebuffer( - struct retro_framebuffer *framebuffer); - retro_proc_address_t video_driver_get_proc_address(const char *sym); bool video_driver_set_shader(enum rarch_shader_type type,