diff --git a/gfx/drivers/caca_gfx.c b/gfx/drivers/caca_gfx.c
index 4ac19e03cc..815fcb09af 100644
--- a/gfx/drivers/caca_gfx.c
+++ b/gfx/drivers/caca_gfx.c
@@ -15,13 +15,18 @@
* If not, see .
*/
-#include
#include
+#include
+
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
+#include "../common/caca_common.h"
+
#include "../../driver.h"
#include "../../verbosity.h"
-#include "../../menu/menu_driver.h"
-#include "../common/caca_common.h"
static caca_canvas_t *caca_cv = NULL;
static caca_dither_t *caca_dither = NULL;
diff --git a/gfx/drivers/ctr_gfx.c b/gfx/drivers/ctr_gfx.c
index dd0debe44d..ca90959423 100644
--- a/gfx/drivers/ctr_gfx.c
+++ b/gfx/drivers/ctr_gfx.c
@@ -26,11 +26,13 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../../ctr/gpu_old.h"
#include "ctr_gu.h"
-#include "../../menu/menu_driver.h"
-
#include "../../configuration.h"
#include "../../command.h"
#include "../../driver.h"
diff --git a/gfx/drivers/dispmanx_gfx.c b/gfx/drivers/dispmanx_gfx.c
index 1c27cd26f9..fe3698a47a 100644
--- a/gfx/drivers/dispmanx_gfx.c
+++ b/gfx/drivers/dispmanx_gfx.c
@@ -21,6 +21,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../../configuration.h"
#include "../../driver.h"
#include "../../retroarch.h"
@@ -476,6 +480,10 @@ static bool dispmanx_gfx_frame(void *data, const void *frame, unsigned width,
dispmanx_surface_free(_dispvars, &_dispvars->menu_surface);
}
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
/* Update main surface: locate free page, blit and flip. */
dispmanx_surface_update(_dispvars, frame, _dispvars->main_surface);
return true;
diff --git a/gfx/drivers/drm_gfx.c b/gfx/drivers/drm_gfx.c
index 62c22f8b55..c3c1e6b021 100644
--- a/gfx/drivers/drm_gfx.c
+++ b/gfx/drivers/drm_gfx.c
@@ -28,6 +28,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../font_driver.h"
#include "../video_context_driver.h"
#include "../../retroarch.h"
@@ -779,6 +783,10 @@ static bool drm_gfx_frame(void *data, const void *frame, unsigned width,
drm_plane_setup(_drmvars->main_surface);
}
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
/* Update main surface: locate free page, blit and flip. */
drm_surface_update(_drmvars, frame, _drmvars->main_surface);
return true;
diff --git a/gfx/drivers/exynos_gfx.c b/gfx/drivers/exynos_gfx.c
index 00f0fae394..03b38b86d0 100644
--- a/gfx/drivers/exynos_gfx.c
+++ b/gfx/drivers/exynos_gfx.c
@@ -35,6 +35,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../common/drm_common.h"
#include "../font_driver.h"
#include "../../configuration.h"
@@ -1315,6 +1319,9 @@ static bool exynos_gfx_frame(void *data, const void *frame, unsigned width,
{
if (exynos_blend_menu(vid->data, vid->menu_rotation) != 0)
goto fail;
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
}
if (msg)
diff --git a/gfx/drivers/gdi_gfx.c b/gfx/drivers/gdi_gfx.c
index 560146c7df..90af988ec4 100644
--- a/gfx/drivers/gdi_gfx.c
+++ b/gfx/drivers/gdi_gfx.c
@@ -17,10 +17,17 @@
#include
+#ifdef HAVE_CONFIG_H
+#include "../../config.h"
+#endif
+
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../../driver.h"
#include "../../configuration.h"
#include "../../verbosity.h"
-#include "../../menu/menu_driver.h"
#include "../common/gdi_common.h"
#if defined(_WIN32) && !defined(_XBOX)
diff --git a/gfx/drivers/gx_gfx.c b/gfx/drivers/gx_gfx.c
index 9b9439cf5f..b131268973 100644
--- a/gfx/drivers/gx_gfx.c
+++ b/gfx/drivers/gx_gfx.c
@@ -27,6 +27,11 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#include "../../menu/menu_display.h"
+#endif
+
#ifdef HW_RVL
#include "../../memory/wii/mem2_manager.h"
#endif
@@ -36,8 +41,6 @@
#include "../../configuration.h"
#include "../../driver.h"
#include "../../runloop.h"
-#include "../../menu/menu_driver.h"
-#include "../../menu/menu_display.h"
extern syssram* __SYS_LockSram(void);
extern u32 __SYS_UnlockSram(u32 write);
@@ -1500,12 +1503,9 @@ static bool gx_frame(void *data, const void *frame,
if (gx->menu_texture_enable && gx->menu_data)
{
- size_t fb_pitch;
- unsigned fb_width, fb_height;
-
- fb_width = menu_display_get_width();
- fb_height = menu_display_get_height();
- fb_pitch = menu_display_get_framebuffer_pitch();
+ unsigned fb_width = menu_display_get_width();
+ unsigned fb_height = menu_display_get_height();
+ size_t fb_pitch = menu_display_get_framebuffer_pitch();
convert_texture16(
gx->menu_data,
@@ -1518,6 +1518,10 @@ static bool gx_frame(void *data, const void *frame,
fb_width * fb_pitch);
}
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
GX_InvalidateTexAll();
GX_SetCurrentMtx(GX_PNMTX0);
diff --git a/gfx/drivers/omap_gfx.c b/gfx/drivers/omap_gfx.c
index 1344865ea3..fbc25df83b 100644
--- a/gfx/drivers/omap_gfx.c
+++ b/gfx/drivers/omap_gfx.c
@@ -25,12 +25,16 @@
#include
#include
+#include
+#include
+
#ifdef HAVE_CONFIG_H
#include "../../config.h"
#endif
-#include
-#include
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
#include
#include
@@ -1008,10 +1012,16 @@ static bool omap_gfx_frame(void *data, const void *frame, unsigned width,
omapfb_prepare(vid->omap);
omapfb_blit_frame(vid->omap, frame, vid->height, pitch);
+
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if (vid->menu.active)
omapfb_blit_frame(vid->omap, vid->menu.frame,
vid->menu.scaler.out_height,
vid->menu.scaler.out_stride);
+
if (msg)
omap_render_msg(vid, msg);
diff --git a/gfx/drivers/psp1_gfx.c b/gfx/drivers/psp1_gfx.c
index 2fbd141fcd..1185064407 100644
--- a/gfx/drivers/psp1_gfx.c
+++ b/gfx/drivers/psp1_gfx.c
@@ -28,6 +28,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../../defines/psp_defines.h"
#include "../../runloop.h"
@@ -561,6 +565,10 @@ static bool psp_frame(void *data, const void *frame,
performance_counter_stop(&psp_frame_run);
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if(psp->menu.active)
{
sceGuSendList(GU_TAIL, psp->menu.dList, &(psp->menu.context_storage));
diff --git a/gfx/drivers/sdl_gfx.c b/gfx/drivers/sdl_gfx.c
index 787c8d8c58..e79fd926a9 100644
--- a/gfx/drivers/sdl_gfx.c
+++ b/gfx/drivers/sdl_gfx.c
@@ -27,6 +27,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#ifdef HAVE_X11
#include "../common/x11_common.h"
#endif
@@ -358,6 +362,10 @@ static bool sdl_gfx_frame(void *data, const void *frame, unsigned width,
pitch);
performance_counter_stop(&sdl_scale);
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if (vid->menu.active)
SDL_BlitSurface(vid->menu.frame, NULL, vid->screen, NULL);
diff --git a/gfx/drivers/sunxi_gfx.c b/gfx/drivers/sunxi_gfx.c
index c01cb7919b..3c290fa22c 100644
--- a/gfx/drivers/sunxi_gfx.c
+++ b/gfx/drivers/sunxi_gfx.c
@@ -28,6 +28,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../../retroarch.h"
#include "../../runloop.h"
#include "../font_driver.h"
@@ -779,6 +783,10 @@ static bool sunxi_gfx_frame(void *data, const void *frame, unsigned width,
sunxi_setup_scale(_dispvars, width, height, pitch);
}
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if (_dispvars->menu_active)
{
ioctl(_dispvars->sunxi_disp->fd_fb, FBIO_WAITFORVSYNC, 0);
diff --git a/gfx/drivers/vg.c b/gfx/drivers/vg.c
index 7791b9b5e3..008e754114 100644
--- a/gfx/drivers/vg.c
+++ b/gfx/drivers/vg.c
@@ -31,6 +31,10 @@
#include "../../config.h"
#endif
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "../video_context_driver.h"
#include "../../retroarch.h"
#include "../../runloop.h"
@@ -417,6 +421,10 @@ static bool vg_frame(void *data, const void *frame,
vg_copy_frame(vg, frame, frame_width, frame_height, pitch);
performance_counter_stop(&vg_image);
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
vgDrawImage(vg->mImage);
#if 0
diff --git a/gfx/drivers/vita2d_gfx.c b/gfx/drivers/vita2d_gfx.c
index e1747e354d..f16d669dcc 100644
--- a/gfx/drivers/vita2d_gfx.c
+++ b/gfx/drivers/vita2d_gfx.c
@@ -217,7 +217,9 @@ static bool vita2d_gfx_frame(void *data, const void *frame,
if (vita->menu.active)
{
+#ifdef HAVE_MENU
menu_driver_frame(video_info);
+#endif
if(vita->menu.texture){
if (vita->fullscreen)
diff --git a/gfx/drivers/wiiu_gfx.c b/gfx/drivers/wiiu_gfx.c
index 928993e1e7..c1fb356e5f 100644
--- a/gfx/drivers/wiiu_gfx.c
+++ b/gfx/drivers/wiiu_gfx.c
@@ -13,14 +13,23 @@
* If not, see .
*/
+#include
+#include
+#include
+
#include "../../driver.h"
#include "../../configuration.h"
#include "../../verbosity.h"
#include "performance_counters.h"
-#include
-#include
-#include
+#ifdef HAVE_CONFIG_H
+#include "../../config.h"
+#endif
+
+#ifdef HAVE_MENU
+#include "../../menu/menu_driver.h"
+#endif
+
#include "gx2.h"
#include "system/memory.h"
#include "system/wiiu.h"
@@ -668,6 +677,10 @@ static bool wiiu_gfx_frame(void* data, const void* frame,
GX2DrawEx(GX2_PRIMITIVE_MODE_QUADS, 4, 0, 1);
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if (wiiu->menu.enable)
{
GX2SetAttribBuffer(0, 4 * sizeof(*wiiu->menu.position), sizeof(*wiiu->menu.position), wiiu->menu.position);
diff --git a/gfx/drivers/xenon360_gfx.c b/gfx/drivers/xenon360_gfx.c
index 97efef1224..da74eac58b 100644
--- a/gfx/drivers/xenon360_gfx.c
+++ b/gfx/drivers/xenon360_gfx.c
@@ -230,6 +230,10 @@ static bool xenon360_gfx_frame(void *data, const void *frame, unsigned width, un
Xe_SetShader(vid->gl_device, SHADER_TYPE_PIXEL, vid->g_pPixelTexturedShader, 0);
Xe_SetShader(vid->gl_device, SHADER_TYPE_VERTEX, vid->g_pVertexShader, 0);
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
// Draw
Xe_DrawPrimitive(vid->gl_device, XE_PRIMTYPE_TRIANGLELIST, 0, 1);
diff --git a/gfx/drivers/xshm_gfx.c b/gfx/drivers/xshm_gfx.c
index 1a5704aee5..31bf833df0 100644
--- a/gfx/drivers/xshm_gfx.c
+++ b/gfx/drivers/xshm_gfx.c
@@ -104,6 +104,10 @@ static bool xshm_gfx_frame(void *data, const void *frame, unsigned width,
memcpy((uint8_t*)xshm->shmInfo.shmaddr + sizeof(uint32_t)*xshm->width*y,
(uint8_t*)frame + pitch*y, pitch);
}
+
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
XShmPutImage(xshm->display, xshm->wndw, xshm->gc, xshm->image,
0, 0, 0, 0, xshm->width, xshm->height, False);
diff --git a/gfx/drivers/xvideo.c b/gfx/drivers/xvideo.c
index 782771bda1..ca862d0f60 100644
--- a/gfx/drivers/xvideo.c
+++ b/gfx/drivers/xvideo.c
@@ -30,6 +30,14 @@
#include
+#ifdef HAVE_CONFIG_H
+#include "../../config.h"
+#endif
+
+#ifdef HAVE_MENU
+#include ".././menu/menu_driver.h"
+#endif
+
#include "../../configuration.h"
#include "../../frontend/frontend_driver.h"
#include "../../verbosity.h"
@@ -802,6 +810,10 @@ static bool xv_frame(void *data, const void *frame, unsigned width,
xv->vp.full_width = target.width;
xv->vp.full_height = target.height;
+#ifdef HAVE_MENU
+ menu_driver_frame(video_info);
+#endif
+
if (msg)
xv_render_msg(xv, msg, width << 1, height << 1);