about summary refs log tree commit diff stats
path: root/src/include
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-10-10 09:46:32 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-10-10 09:46:32 +0200
commitfd73a2bc8bc830054a4fcc418c630f4ad648be21 (patch)
treeb6c9fa16d1dade8ecb494fc149dae43401c62bed /src/include
parent21b5f90a33f8e38ecdd3ca9dc3b167a7b8fba30c (diff)
downloadbox64-fd73a2bc8bc830054a4fcc418c630f4ad648be21.tar.gz
box64-fd73a2bc8bc830054a4fcc418c630f4ad648be21.zip
[BOX32] Morewrapped SDL2 function, and improved handling of SDL_PixelFormat
Diffstat (limited to 'src/include')
-rw-r--r--src/include/sdl2align32.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/include/sdl2align32.h b/src/include/sdl2align32.h
index dd93d85e..91f54ea2 100644
--- a/src/include/sdl2align32.h
+++ b/src/include/sdl2align32.h
@@ -838,6 +838,13 @@ typedef struct my_SDL2_PixelFormat_32_s {
     ptr_t next;
 } my_SDL2_PixelFormat_32_t;
 
+// used to mirror the pixelformat on x86 side, as the one in native side is a global static used by SDL2 and so cannot be inplace shrinked
+typedef struct my_SDL2_PixelFormat_32_ext_s {
+    my_SDL2_PixelFormat_32_t fmt;
+    my_SDL2_PixelFormat_t*   ref;
+    struct my_SDL2_PixelFormat_32_ext_s* next;
+} my_SDL2_PixelFormat_32_ext_t;
+
 typedef struct my_SDL2_Rect_32_s {
     int x, y;
     int w, h;
@@ -890,9 +897,11 @@ void inplace_SDL2_Event_enlarge(void* e);
 
 void inplace_SDL2_Palette_to_32(void* a);
 void inplace_SDL2_PixelFormat_to_32(void* a);
+void* replace_SDL2_PixelFormat_to_32_ext(void* a);
 void inplace_SDL2_Surface_to_32(void* a);
 void inplace_SDL2_Palette_to_64(void* a);
 void inplace_SDL2_PixelFormat_to_64(void* a);
+void* replace_SDL2_PixelFormat_to_64_ext(void* a);
 void inplace_SDL2_Surface_to_64(void* a);
 
 void inplace_SDL2_RWops_to_32(void* a);