From 515b5f2a39555ce4238c2383e5cc59170628d8ad Mon Sep 17 00:00:00 2001 From: Wouter Wijsman Date: Wed, 22 Dec 2021 12:04:10 +0100 Subject: [PATCH] Fix build errors in PSP port --- src/render/psp/SDL_render_psp.c | 14 +++++++++++--- src/video/psp/SDL_pspvideo.c | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/render/psp/SDL_render_psp.c b/src/render/psp/SDL_render_psp.c index dfde19914..c50d214ca 100644 --- a/src/render/psp/SDL_render_psp.c +++ b/src/render/psp/SDL_render_psp.c @@ -1201,10 +1201,18 @@ PSP_RunCommandQueue(SDL_Renderer * renderer, SDL_RenderCommand *cmd, void *verti sceGuEnable(GU_TEXTURE_2D); } else { const VertTCV *verts = (VertTCV *) (gpumem + cmd->data.draw.first); + const Uint8 a = cmd->data.draw.a; + const Uint8 r = cmd->data.draw.r; + const Uint8 g = cmd->data.draw.g; + const Uint8 b = cmd->data.draw.b; + PSP_BlendState state = { + .color = GU_RGBA(r,g,b,a), + .texture = NULL, + .mode = cmd->data.draw.blend, + .shadeModel = GU_FLAT + }; TextureActivate(cmd->data.draw.texture); - /* Need to force refresh of blending mode, probably something to FIXME */ - PSP_SetBlendMode(renderer, SDL_BLENDMODE_INVALID); - PSP_SetBlendMode(renderer, cmd->data.draw.blend); + PSP_SetBlendState(renderer, &state); sceGuDrawArray(GU_TRIANGLES, GU_TEXTURE_32BITF|GU_COLOR_8888|GU_VERTEX_32BITF|GU_TRANSFORM_2D, count, 0, verts); } break; diff --git a/src/video/psp/SDL_pspvideo.c b/src/video/psp/SDL_pspvideo.c index a37e8b25d..a5c86ecc3 100644 --- a/src/video/psp/SDL_pspvideo.c +++ b/src/video/psp/SDL_pspvideo.c @@ -173,7 +173,7 @@ PSP_VideoInit(_THIS) display.current_mode = current_mode; SDL_AddDisplayMode(&display, ¤t_mode); - SDL_AddVideoDisplay(&display); + SDL_AddVideoDisplay(&display, SDL_FALSE); return 1; }