Commit 515b5f2a39555ce4238c2383e5cc59170628d8ad

Wouter Wijsman 2021-12-22T12:04:10

Fix build errors in PSP port

diff --git a/src/render/psp/SDL_render_psp.c b/src/render/psp/SDL_render_psp.c
index dfde199..c50d214 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 a37e8b2..a5c86ec 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, &current_mode);
 
-    SDL_AddVideoDisplay(&display);
+    SDL_AddVideoDisplay(&display, SDL_FALSE);
     return 1;
 }