From 6fd50c1cdb5d0a3dc6fd7d146ba8e7a27ec70c41 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 15 Mar 2015 17:51:27 +0100 Subject: [PATCH] (D3D) Cleanups --- gfx/d3d/d3d.cpp | 46 +++++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 21 deletions(-) diff --git a/gfx/d3d/d3d.cpp b/gfx/d3d/d3d.cpp index e6faaad595..2861fef34a 100644 --- a/gfx/d3d/d3d.cpp +++ b/gfx/d3d/d3d.cpp @@ -74,8 +74,8 @@ static bool d3d_init_chain(d3d_video_t *d3d, const video_info_t *video_info); #ifdef HAVE_OVERLAY -static void d3d_free_overlays(void *data); -static void d3d_free_overlay(void *data, overlay_t *overlay); +static void d3d_free_overlays(d3d_video_t *d3d); +static void d3d_free_overlay(d3d_video_t *d3d, overlay_t *overlay); #endif #ifdef _XBOX @@ -163,9 +163,10 @@ static void d3d_deinit_chain(d3d_video_t *d3d) #endif } -static void d3d_deinitialize(void *data) +static void d3d_deinitialize(d3d_video_t *d3d) { - d3d_video_t *d3d = (d3d_video_t*)data; + if (!d3d) + return; if (d3d->font_ctx && d3d->font_ctx->deinit) d3d->font_ctx->deinit(d3d); @@ -224,11 +225,13 @@ static bool d3d_init_base(void *data, const video_info_t *info) return true; } -static bool d3d_initialize(void *data, const video_info_t *info) +static bool d3d_initialize(d3d_video_t *d3d, const video_info_t *info) { - d3d_video_t *d3d = (d3d_video_t*)data; bool ret = true; + if (!d3d) + return false; + if (!d3d->g_pD3D) ret = d3d_init_base(d3d, info); else if (d3d->needs_restore) @@ -937,6 +940,7 @@ static bool d3d_init_imports(d3d_video_t *d3d) static bool d3d_init_chain(d3d_video_t *d3d, const video_info_t *video_info) { + unsigned current_width, current_height, out_width, out_height; unsigned i = 0; LPDIRECT3DDEVICE d3dr = (LPDIRECT3DDEVICE)d3d->dev; @@ -975,10 +979,10 @@ static bool d3d_init_chain(d3d_video_t *d3d, const video_info_t *video_info) return false; } - unsigned current_width = link_info.tex_w; - unsigned current_height = link_info.tex_h; - unsigned out_width = 0; - unsigned out_height = 0; + current_width = link_info.tex_w; + current_height = link_info.tex_h; + out_width = 0; + out_height = 0; for (i = 1; i < d3d->shader.passes; i++) { @@ -1046,15 +1050,16 @@ extern struct texture_image *menu_texture; #endif #ifdef _XBOX1 -static bool texture_image_render(void *data, +static bool texture_image_render(d3d_video_t *d3d, struct texture_image *out_img, int x, int y, int w, int h, bool force_fullscreen) { float fX, fY; void *verts = NULL; - d3d_video_t *d3d = (d3d_video_t*)data; LPDIRECT3DDEVICE d3dr = (LPDIRECT3DDEVICE)d3d->dev; + if (!d3d) + return false; if (!out_img->pixels || !out_img->vertex_buf) return false; @@ -1114,9 +1119,10 @@ static bool texture_image_render(void *data, #endif #ifdef HAVE_MENU -static void d3d_draw_texture(void *data) +static void d3d_draw_texture(d3d_video_t *d3d) { - d3d_video_t *d3d = (d3d_video_t*)data; + if (!d3d) + return; #if defined(HAVE_RMENU) menu_texture->x = 0; @@ -1284,7 +1290,7 @@ static bool d3d_init_luts(d3d_video_t *d3d) #endif #ifdef HAVE_OVERLAY -static void d3d_overlay_render(void *data, overlay_t *overlay) +static void d3d_overlay_render(d3d_video_t *d3d, overlay_t *overlay) { void *verts; unsigned i; @@ -1295,8 +1301,9 @@ static void d3d_overlay_render(void *data, overlay_t *overlay) float r, g, b, a; } vert[4]; float overlay_width, overlay_height; - d3d_video_t *d3d = (d3d_video_t*)data; + if (!d3d) + return; if (!overlay || !overlay->tex) return; @@ -1405,10 +1412,8 @@ static void d3d_overlay_render(void *data, overlay_t *overlay) d3d_set_viewport(d3d->dev, &d3d->final_viewport); } -static void d3d_free_overlay(void *data, overlay_t *overlay) +static void d3d_free_overlay(d3d_video_t *d3d, overlay_t *overlay) { - d3d_video_t *d3d = (d3d_video_t*)data; - if (!d3d) return; @@ -1416,10 +1421,9 @@ static void d3d_free_overlay(void *data, overlay_t *overlay) d3d_vertex_buffer_free(overlay->vert_buf); } -static void d3d_free_overlays(void *data) +static void d3d_free_overlays(d3d_video_t *d3d) { unsigned i; - d3d_video_t *d3d = (d3d_video_t*)data; if (!d3d) return;