From 34619412bcf486841017586b6db498de69045b80 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Wed, 24 Apr 2013 16:08:18 +0200 Subject: [PATCH] (RARCH_CONSOLE) Get rid of video_stop_func --- driver.c | 3 --- driver.h | 1 - driver_funcs.h | 1 - frontend/menu/rmenu.c | 28 +++++++++++++++++++++++----- gfx/gl.c | 12 +++--------- gfx/null.c | 2 -- gfx/thread_wrapper.c | 2 -- gx/gx_video.c | 29 ++++++++++++----------------- psp1/psp1_video.c | 2 -- vita/vita_video.c | 2 -- xdk/xdk_d3d.cpp | 10 ---------- 11 files changed, 38 insertions(+), 54 deletions(-) diff --git a/driver.c b/driver.c index 75ad10d609..8352bebf69 100644 --- a/driver.c +++ b/driver.c @@ -343,9 +343,6 @@ void global_uninit_drivers(void) { if (driver.video_data) { -#ifdef RARCH_CONSOLE - driver.video->stop(); -#endif driver.video_data = NULL; } diff --git a/driver.h b/driver.h index e5490a0876..b29b1dd5f9 100644 --- a/driver.h +++ b/driver.h @@ -368,7 +368,6 @@ typedef struct video_driver #if defined(HAVE_RMENU) || defined(HAVE_RGUI) void (*start)(void); - void (*stop)(void); void (*restart)(void); #endif diff --git a/driver_funcs.h b/driver_funcs.h index 5fdbda6502..3e57b40cac 100644 --- a/driver_funcs.h +++ b/driver_funcs.h @@ -122,7 +122,6 @@ static inline bool input_key_pressed_func(int key) #define video_free_func() MAKENAME_VIDEO(_free)(driver.video_data) #define video_set_nonblock_state_func(state) MAKENAME_VIDEO(_set_nonblock_state)(driver.video_data, state) #define video_set_rotation_func(rotation) MAKENAME_VIDEO(_set_rotation)(driver.video_data, rotation) -#define video_stop_func() MAKENAME_VIDEO(_stop)() #define video_start_func() MAKENAME_VIDEO(_start)() #define video_set_shader_func(type, path) MAKENAME_VIDEO(_set_shader)(driver.video_data, type, path) #define video_xml_shader_func(path) driver.video->xml_shader(driver.video_data, path) diff --git a/frontend/menu/rmenu.c b/frontend/menu/rmenu.c index 424a95b595..c65f307222 100644 --- a/frontend/menu/rmenu.c +++ b/frontend/menu/rmenu.c @@ -912,6 +912,17 @@ static bool osk_callback_enter_filename_init(void *data) #endif #endif +static void rgui_init_textures(void) +{ +#ifdef HAVE_MENU_PANEL + texture_image_load("D:\\Media\\menuMainRomSelectPanel.png", menu_panel); +#endif + texture_image_load(g_extern.menu_texture_path, menu_texture); + + if (driver.video_poke && driver.video_poke->set_texture_frame) + driver.video_poke->set_texture_frame(driver.video_data, menu_texture->pixels, + true, menu_texture->width, menu_texture->height, 1.0f); +} static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t input) { @@ -939,7 +950,9 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t g_extern.lifecycle_mode_state &= ~(1ULL << MODE_VIDEO_PAL_VSYNC_BLOCK); } + driver.video->restart(); + rgui_init_textures(); } break; case SETTING_PAL60_MODE: @@ -959,6 +972,7 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t } driver.video->restart(); + rgui_init_textures(); } } @@ -968,7 +982,9 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t { g_extern.lifecycle_mode_state &= ~(1ULL << MODE_VIDEO_PAL_TEMPORAL_ENABLE); g_extern.lifecycle_mode_state &= ~(1ULL << MODE_VIDEO_PAL_VSYNC_BLOCK); + driver.video->restart(); + rgui_init_textures(); } } break; @@ -1110,14 +1126,19 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t if ((input & (1ULL << DEVICE_NAV_LEFT)) || (input & (1ULL << DEVICE_NAV_RIGHT)) || (input & (1ULL << DEVICE_NAV_B))) { settings_set(1ULL << S_TRIPLE_BUFFERING); + driver.video->restart(); + rgui_init_textures(); } if (input & (1ULL << DEVICE_NAV_START)) { settings_set(1ULL << S_DEF_TRIPLE_BUFFERING); if (!(g_extern.lifecycle_mode_state & (1ULL << MODE_VIDEO_TRIPLE_BUFFERING_ENABLE))) + { driver.video->restart(); + rgui_init_textures(); + } } break; case SETTING_DEFAULT_VIDEO_ALL: @@ -3162,6 +3183,7 @@ int rgui_iterate(rgui_handle_t *rgui) return -1; } + rgui_handle_t *rgui_init(void) { rgui_handle_t *rgui = (rgui_handle_t*)calloc(1, sizeof(*rgui)); @@ -3171,14 +3193,10 @@ rgui_handle_t *rgui_init(void) menu_texture = (struct texture_image*)calloc(1, sizeof(*menu_texture)); #ifdef HAVE_MENU_PANEL menu_panel = (struct texture_image*)calloc(1, sizeof(*menu_panel)); - texture_image_load("D:\\Media\\menuMainRomSelectPanel.png", menu_panel); #endif - texture_image_load(g_extern.menu_texture_path, menu_texture); + rgui_init_textures(); - if (driver.video_poke && driver.video_poke->set_texture_frame) - driver.video_poke->set_texture_frame(driver.video_data, menu_texture->pixels, - true, menu_texture->width, menu_texture->height, 1.0f); #ifdef HAVE_OSKUTIL oskutil_params *osk = &g_extern.console.misc.oskutil_handle; diff --git a/gfx/gl.c b/gfx/gl.c index 2a4afefc84..1d326e405b 100644 --- a/gfx/gl.c +++ b/gfx/gl.c @@ -2097,13 +2097,6 @@ static void gl_start(void) gl->font_ctx = gl_font_init_first(gl, g_settings.video.font_path, g_settings.video.font_size); } -static void gl_stop(void) -{ - void *data = driver.video_data; - driver.video_data = NULL; - gl_free(data); -} - static void gl_restart(void) { gl_t *gl = (gl_t*)driver.video_data; @@ -2111,7 +2104,9 @@ static void gl_restart(void) if (!gl) return; - gl_stop(); + void *data = driver.video_data; + driver.video_data = NULL; + gl_free(data); #ifdef HAVE_CG gl_cg_invalidate_context(); #endif @@ -2405,7 +2400,6 @@ const video_driver_t video_gl = { #if defined(HAVE_RGUI) || defined(HAVE_RMENU) gl_start, - gl_stop, gl_restart, #endif gl_set_rotation, diff --git a/gfx/null.c b/gfx/null.c index b32b319cf7..970610fa8c 100644 --- a/gfx/null.c +++ b/gfx/null.c @@ -65,7 +65,6 @@ static void null_gfx_free(void *data) #ifdef RARCH_CONSOLE static void null_gfx_start(void) {} static void null_gfx_restart(void) {} -static void null_gfx_stop(void) {} #endif const video_driver_t video_null = { @@ -80,7 +79,6 @@ const video_driver_t video_null = { #ifdef RARCH_CONSOLE null_gfx_start, - null_gfx_stop, null_gfx_restart, #endif }; diff --git a/gfx/thread_wrapper.c b/gfx/thread_wrapper.c index 82b4ebc497..7eaa6f9b9d 100644 --- a/gfx/thread_wrapper.c +++ b/gfx/thread_wrapper.c @@ -706,7 +706,6 @@ static void thread_get_poke_interface(void *data, const video_poke_interface_t * // all stubs for now, might not have to implement them unless we want to port this to consoles static void thread_start(void) {} static void thread_stop(void) {} -static void thread_restart(void) {} #endif static const video_driver_t video_thread = { @@ -721,7 +720,6 @@ static const video_driver_t video_thread = { #if defined(HAVE_RMENU) || defined(HAVE_RGUI) thread_start, thread_stop, - thread_restart, #endif thread_set_rotation, thread_viewport_info, diff --git a/gx/gx_video.c b/gx/gx_video.c index 546cf5f351..a55b30e54d 100644 --- a/gx/gx_video.c +++ b/gx/gx_video.c @@ -416,22 +416,6 @@ static void gx_efb_screenshot(void) #endif -static void gx_stop(void) -{ -#ifdef TAKE_EFB_SCREENSHOT_ON_EXIT - gx_efb_screenshot(); -#endif - GX_DrawDone(); - GX_AbortFrame(); - GX_Flush(); - VIDEO_SetBlack(true); - VIDEO_Flush(); - VIDEO_WaitVSync(); - - for (unsigned i = 0; i < 2; i++) - free(MEM_K1_TO_K0(g_framebuf[i])); -} - static void gx_restart(void) { } @@ -1017,6 +1001,18 @@ static bool gx_focus(void *data) static void gx_free(void *data) { (void)data; +#ifdef TAKE_EFB_SCREENSHOT_ON_EXIT + gx_efb_screenshot(); +#endif + GX_DrawDone(); + GX_AbortFrame(); + GX_Flush(); + VIDEO_SetBlack(true); + VIDEO_Flush(); + VIDEO_WaitVSync(); + + for (unsigned i = 0; i < 2; i++) + free(MEM_K1_TO_K0(g_framebuf[i])); } static void gx_set_rotation(void *data, unsigned orientation) @@ -1093,7 +1089,6 @@ const video_driver_t video_gx = { .set_rotation = gx_set_rotation, .viewport_info = gx_viewport_info, .start = gx_start, - .stop = gx_stop, .restart = gx_restart, .poke_interface = gx_get_poke_interface, }; diff --git a/psp1/psp1_video.c b/psp1/psp1_video.c index 55e0f2b8ee..421f681f7d 100644 --- a/psp1/psp1_video.c +++ b/psp1/psp1_video.c @@ -181,7 +181,6 @@ static void psp_free(void *data) #ifdef RARCH_CONSOLE static void psp_start(void) {} static void psp_restart(void) {} -static void psp_stop(void) {} #endif static void psp_set_rotation(void *data, unsigned rotation) @@ -200,7 +199,6 @@ const video_driver_t video_psp1 = { #ifdef RARCH_CONSOLE psp_start, - psp_stop, psp_restart, NULL, NULL, diff --git a/vita/vita_video.c b/vita/vita_video.c index 756edb972a..fd5fa91fd5 100644 --- a/vita/vita_video.c +++ b/vita/vita_video.c @@ -515,7 +515,6 @@ static void vita_gfx_free(void *data) #ifdef RARCH_CONSOLE static void vita_gfx_start(void) {} static void vita_gfx_restart(void) {} -static void vita_gfx_stop(void) {} #endif const video_driver_t video_vita = { @@ -530,7 +529,6 @@ const video_driver_t video_vita = { #ifdef RARCH_CONSOLE vita_gfx_start, - vita_gfx_stop, vita_gfx_restart, #endif }; diff --git a/xdk/xdk_d3d.cpp b/xdk/xdk_d3d.cpp index 4419e00ec0..0579724a27 100644 --- a/xdk/xdk_d3d.cpp +++ b/xdk/xdk_d3d.cpp @@ -1168,15 +1168,6 @@ static void xdk_d3d_start(void) d3d->font_ctx = d3d_font_init_first(d3d, g_settings.video.font_path, 0 /* font size - fixed/unused */); } -static void xdk_d3d_stop(void) -{ - void *data = driver.video_data; - - xdk_d3d_free(data); - - driver.video_data = NULL; -} - static void xdk_d3d_restart(void) { xdk_d3d_video_t *d3d = (xdk_d3d_video_t*)driver.video_data; @@ -1213,7 +1204,6 @@ const video_driver_t video_xdk_d3d = { xdk_d3d_free, "xdk_d3d", xdk_d3d_start, - xdk_d3d_stop, xdk_d3d_restart, xdk_d3d_set_rotation, NULL, /* viewport_info */