Browse Source

fix PSP texure artifacts

stdgregwar 4 years ago
parent
commit
0b7b0977fc
1 changed files with 2 additions and 2 deletions
  1. 2 2
      src/render/psp/SDL_render_psp.c

+ 2 - 2
src/render/psp/SDL_render_psp.c

@@ -259,6 +259,7 @@ TextureSwizzle(PSP_TextureData *psp_texture)
     psp_texture->data = data;
     psp_texture->swizzled = SDL_TRUE;
 
+    sceKernelDcacheWritebackRange(psp_texture->data, psp_texture->size);
     return 1;
 }
 int TextureUnswizzle(PSP_TextureData *psp_texture)
@@ -291,8 +292,6 @@ int TextureUnswizzle(PSP_TextureData *psp_texture)
     if(!data)
         return 0;
 
-    sceKernelDcacheWritebackAll();
-
     ydst = (unsigned char *)data;
 
     for(blocky = 0; blocky < heightblocks; ++blocky)
@@ -326,6 +325,7 @@ int TextureUnswizzle(PSP_TextureData *psp_texture)
 
     psp_texture->swizzled = SDL_FALSE;
 
+    sceKernelDcacheWritebackRange(psp_texture->data, psp_texture->size);
     return 1;
 }