about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2025-06-08 10:50:08 +0200
committerptitSeb <sebastien.chev@gmail.com>2025-06-08 10:50:08 +0200
commit7de8687a79ea1e97b61b1a33d6a16e52b36d6a3e (patch)
tree3969bbb737853c0f09f358193ec1faf01550fa58 /src
parent4fc5885d744b8eacb5018ea9ddeaf5b7849a0378 (diff)
downloadbox64-7de8687a79ea1e97b61b1a33d6a16e52b36d6a3e.tar.gz
box64-7de8687a79ea1e97b61b1a33d6a16e52b36d6a3e.zip
[BOX32][WRAPPER] Added 2 more function to 32bits wrapped libxcb.so
Diffstat (limited to 'src')
-rw-r--r--src/wrapped32/generated/functions_list.txt3
-rw-r--r--src/wrapped32/generated/wrappedlibxcbdefs32.h2
-rw-r--r--src/wrapped32/generated/wrappedlibxcbtypes32.h1
-rw-r--r--src/wrapped32/generated/wrappedlibxcbundefs32.h2
-rw-r--r--src/wrapped32/generated/wrapper32.c2
-rw-r--r--src/wrapped32/generated/wrapper32.h1
-rw-r--r--src/wrapped32/wrappedlibxcb.c5
-rw-r--r--src/wrapped32/wrappedlibxcb_private.h4
8 files changed, 18 insertions, 2 deletions
diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt
index 097c8aa9..faf4d6d7 100644
--- a/src/wrapped32/generated/functions_list.txt
+++ b/src/wrapped32/generated/functions_list.txt
@@ -2127,6 +2127,7 @@
 #() vFuuiiiiuuiiiiiii -> vFuuiiiiuuiiiiiii
 #() vFfffffffffffffff -> vFfffffffffffffff
 #() iFpppppppppppppppp -> iFpppppppppppppppp
+#() pFEppnCuuwwWWWWuup -> pFEppnCuuwwWWWWuup
 #() vFuuuuiiiiuuiiiiiii -> vFuuuuiiiiuuiiiiiii
 #() vFXpuiiiiipuiiiiiiii -> vFXpuiiiiipuiiiiiiii
 #() uFippuuuuiiiiuuiiiiiiiipp -> uFippuuuuiiiiuuiiiiiiiipp
@@ -3131,11 +3132,13 @@ wrappedlibxcb:
 - zFnCWp:
 - zFnCuuuuu:
 - zFnCuuuCup:
+- zFpnCuuwwWWWWuup:
 % ZFEpp -> pFEppp
 % zFEnuu -> pFEpnuu
 % zFEnCWp -> pFEpnCWp
 % zFEnCuuuuu -> pFEpnCuuuuu
 % zFEnCuuuCup -> pFEpnCuuuCup
+% zFEpnCuuwwWWWWuup -> pFEppnCuuwwWWWWuup
 wrappedlibxcbres:
 % Z my_xcb_XXX_iterator_t pii
 % z my_xcb_cookie_t u
diff --git a/src/wrapped32/generated/wrappedlibxcbdefs32.h b/src/wrapped32/generated/wrappedlibxcbdefs32.h
index 63160575..e685a2d7 100644
--- a/src/wrapped32/generated/wrappedlibxcbdefs32.h
+++ b/src/wrapped32/generated/wrappedlibxcbdefs32.h
@@ -14,5 +14,7 @@
 #define zFEnCuuuuu_32 pFEpnCuuuuu_32
 #define zFEnCuuuCup pFEpnCuuuCup
 #define zFEnCuuuCup_32 pFEpnCuuuCup_32
+#define zFEpnCuuwwWWWWuup pFEppnCuuwwWWWWuup
+#define zFEpnCuuwwWWWWuup_32 pFEppnCuuwwWWWWuup_32
 
 #endif // __wrappedlibxcbDEFS32_H_
diff --git a/src/wrapped32/generated/wrappedlibxcbtypes32.h b/src/wrapped32/generated/wrappedlibxcbtypes32.h
index 7da67c9a..925d2a3c 100644
--- a/src/wrapped32/generated/wrappedlibxcbtypes32.h
+++ b/src/wrapped32/generated/wrappedlibxcbtypes32.h
@@ -18,6 +18,7 @@ typedef my_xcb_cookie_t (*zFnuu_t)(void*, uint32_t, uint32_t);
 typedef my_xcb_cookie_t (*zFnCWp_t)(void*, uint8_t, uint16_t, void*);
 typedef my_xcb_cookie_t (*zFnCuuuuu_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef my_xcb_cookie_t (*zFnCuuuCup_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*);
+typedef my_xcb_cookie_t (*zFpnCuuwwWWWWuup_t)(void*, void*, uint8_t, uint32_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint32_t, void*);
 
 #define SUPER() ADDED_FUNCTIONS() \
 	GO(xcb_disconnect, vFp_t) \
diff --git a/src/wrapped32/generated/wrappedlibxcbundefs32.h b/src/wrapped32/generated/wrappedlibxcbundefs32.h
index 3ac3f549..060385bb 100644
--- a/src/wrapped32/generated/wrappedlibxcbundefs32.h
+++ b/src/wrapped32/generated/wrappedlibxcbundefs32.h
@@ -14,5 +14,7 @@
 #undef zFEnCuuuuu_32
 #undef zFEnCuuuCup
 #undef zFEnCuuuCup_32
+#undef zFEpnCuuwwWWWWuup
+#undef zFEpnCuuwwWWWWuup_32
 
 #endif // __wrappedlibxcbUNDEFS32_H_
diff --git a/src/wrapped32/generated/wrapper32.c b/src/wrapped32/generated/wrapper32.c
index b04c5a86..b0164497 100644
--- a/src/wrapped32/generated/wrapper32.c
+++ b/src/wrapped32/generated/wrapper32.c
@@ -2221,6 +2221,7 @@ typedef void (*vFuiiiiiuiiiiilll_t)(uint32_t, int32_t, int32_t, int32_t, int32_t
 typedef void (*vFuuiiiiuuiiiiiii_t)(uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFfffffffffffffff_t)(float, float, float, float, float, float, float, float, float, float, float, float, float, float, float);
 typedef int32_t (*iFpppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*);
+typedef void* (*pFEppnCuuwwWWWWuup_t)(x64emu_t*, void*, void*, void*, uint8_t, uint32_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint32_t, void*);
 typedef void (*vFuuuuiiiiuuiiiiiii_t)(uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef void (*vFXpuiiiiipuiiiiiiii_t)(void*, void*, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t);
 typedef uint32_t (*uFippuuuuiiiiuuiiiiiiiipp_t)(int32_t, void*, void*, uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*, void*);
@@ -4380,6 +4381,7 @@ void vFuiiiiiuiiiiilll_32(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiuiiiiilll_t fn
 void vFuuiiiiuuiiiiiii_32(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiuuiiiiiii_t fn = (vFuuiiiiuuiiiiiii_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ptri(int32_t, R_ESP + 44), from_ptri(int32_t, R_ESP + 48), from_ptri(int32_t, R_ESP + 52), from_ptri(int32_t, R_ESP + 56), from_ptri(int32_t, R_ESP + 60)); }
 void vFfffffffffffffff_32(x64emu_t *emu, uintptr_t fcn) { vFfffffffffffffff_t fn = (vFfffffffffffffff_t)fcn; fn(from_ptri(float, R_ESP + 4), from_ptri(float, R_ESP + 8), from_ptri(float, R_ESP + 12), from_ptri(float, R_ESP + 16), from_ptri(float, R_ESP + 20), from_ptri(float, R_ESP + 24), from_ptri(float, R_ESP + 28), from_ptri(float, R_ESP + 32), from_ptri(float, R_ESP + 36), from_ptri(float, R_ESP + 40), from_ptri(float, R_ESP + 44), from_ptri(float, R_ESP + 48), from_ptri(float, R_ESP + 52), from_ptri(float, R_ESP + 56), from_ptri(float, R_ESP + 60)); }
 void iFpppppppppppppppp_32(x64emu_t *emu, uintptr_t fcn) { iFpppppppppppppppp_t fn = (iFpppppppppppppppp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24), from_ptriv(R_ESP + 28), from_ptriv(R_ESP + 32), from_ptriv(R_ESP + 36), from_ptriv(R_ESP + 40), from_ptriv(R_ESP + 44), from_ptriv(R_ESP + 48), from_ptriv(R_ESP + 52), from_ptriv(R_ESP + 56), from_ptriv(R_ESP + 60), from_ptriv(R_ESP + 64)); }
+void pFEppnCuuwwWWWWuup_32(x64emu_t *emu, uintptr_t fcn) { pFEppnCuuwwWWWWuup_t fn = (pFEppnCuuwwWWWWuup_t)fcn; void *aligned_xcb = align_xcb_connection32(from_ptriv(R_ESP + 12)); R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), aligned_xcb, from_ptri(uint8_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(int16_t, R_ESP + 28), from_ptri(int16_t, R_ESP + 32), from_ptri(uint16_t, R_ESP + 36), from_ptri(uint16_t, R_ESP + 40), from_ptri(uint16_t, R_ESP + 44), from_ptri(uint16_t, R_ESP + 48), from_ptri(uint32_t, R_ESP + 52), from_ptri(uint32_t, R_ESP + 56), from_ptriv(R_ESP + 60))); unalign_xcb_connection32(aligned_xcb, from_ptriv(R_ESP + 12)); }
 void vFuuuuiiiiuuiiiiiii_32(x64emu_t *emu, uintptr_t fcn) { vFuuuuiiiiuuiiiiiii_t fn = (vFuuuuiiiiuuiiiiiii_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(int32_t, R_ESP + 44), from_ptri(int32_t, R_ESP + 48), from_ptri(int32_t, R_ESP + 52), from_ptri(int32_t, R_ESP + 56), from_ptri(int32_t, R_ESP + 60), from_ptri(int32_t, R_ESP + 64), from_ptri(int32_t, R_ESP + 68)); }
 void vFXpuiiiiipuiiiiiiii_32(x64emu_t *emu, uintptr_t fcn) { vFXpuiiiiipuiiiiiiii_t fn = (vFXpuiiiiipuiiiiiiii_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptriv(R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(int32_t, R_ESP + 44), from_ptri(int32_t, R_ESP + 48), from_ptri(int32_t, R_ESP + 52), from_ptri(int32_t, R_ESP + 56), from_ptri(int32_t, R_ESP + 60), from_ptri(int32_t, R_ESP + 64), from_ptri(int32_t, R_ESP + 68), from_ptri(int32_t, R_ESP + 72)); }
 void uFippuuuuiiiiuuiiiiiiiipp_32(x64emu_t *emu, uintptr_t fcn) { uFippuuuuiiiiuuiiiiiiiipp_t fn = (uFippuuuuiiiiuuiiiiiiiipp_t)fcn; R_EAX = (uint32_t)fn(from_ptri(int32_t, R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ptri(int32_t, R_ESP + 44), from_ptri(uint32_t, R_ESP + 48), from_ptri(uint32_t, R_ESP + 52), from_ptri(int32_t, R_ESP + 56), from_ptri(int32_t, R_ESP + 60), from_ptri(int32_t, R_ESP + 64), from_ptri(int32_t, R_ESP + 68), from_ptri(int32_t, R_ESP + 72), from_ptri(int32_t, R_ESP + 76), from_ptri(int32_t, R_ESP + 80), from_ptri(int32_t, R_ESP + 84), from_ptriv(R_ESP + 88), from_ptriv(R_ESP + 92)); }
diff --git a/src/wrapped32/generated/wrapper32.h b/src/wrapped32/generated/wrapper32.h
index 4fb245c9..c8a62455 100644
--- a/src/wrapped32/generated/wrapper32.h
+++ b/src/wrapped32/generated/wrapper32.h
@@ -2168,6 +2168,7 @@ void vFuiiiiiuiiiiilll_32(x64emu_t *emu, uintptr_t fnc);
 void vFuuiiiiuuiiiiiii_32(x64emu_t *emu, uintptr_t fnc);
 void vFfffffffffffffff_32(x64emu_t *emu, uintptr_t fnc);
 void iFpppppppppppppppp_32(x64emu_t *emu, uintptr_t fnc);
+void pFEppnCuuwwWWWWuup_32(x64emu_t *emu, uintptr_t fnc);
 void vFuuuuiiiiuuiiiiiii_32(x64emu_t *emu, uintptr_t fnc);
 void vFXpuiiiiipuiiiiiiii_32(x64emu_t *emu, uintptr_t fnc);
 void uFippuuuuiiiiuuiiiiiiiipp_32(x64emu_t *emu, uintptr_t fnc);
diff --git a/src/wrapped32/wrappedlibxcb.c b/src/wrapped32/wrappedlibxcb.c
index 47bc12e1..eab07c01 100644
--- a/src/wrapped32/wrappedlibxcb.c
+++ b/src/wrapped32/wrappedlibxcb.c
@@ -43,6 +43,7 @@ typedef my_xcb_cookie_t (*zFppp_t)(void*, void*, void*);
 typedef my_xcb_cookie_t (*zFpCWp_t)(void*, uint8_t, uint16_t, void*);
 typedef my_xcb_cookie_t (*zFpCuuuuu_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
 typedef my_xcb_cookie_t (*zFpCuuuCup_t)(void*, uint8_t, uint32_t, uint32_t, uint32_t, uint8_t, uint32_t, void*);
+typedef my_xcb_cookie_t (*zFpCuuwwWWWWuup_t)(void*, uint8_t, uint32_t, uint32_t, int16_t, int16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint32_t, uint32_t, void*);
 typedef my_xcb_XXX_iterator_t (*ZFp_t)(void*);
 
 #define ADDED_FUNCTIONS()       				\
@@ -51,6 +52,8 @@ GO(xcb_delete_property, zFppp_t)                \
 GO(xcb_get_property, zFpCuuuuu_t)               \
 GO(xcb_intern_atom, zFpCWp_t)                   \
 GO(xcb_setup_roots_iterator, ZFp_t)             \
+GO(xcb_create_window, zFpCuuwwWWWWuup_t)        \
+GO(xcb_create_window_checked, zFpCuuwwWWWWuup_t)\
 
 #include "generated/wrappedlibxcbtypes32.h"
 
@@ -79,6 +82,8 @@ SUPER(xcb_change_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_
 SUPER(xcb_delete_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, void* w, void* p), c, w, p)
 SUPER(xcb_get_property, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t _del, uint32_t w, uint32_t p, uint32_t type, uint32_t off, uint32_t len), c, _del, w, p, type, off, len)
 SUPER(xcb_intern_atom, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t only, uint16_t len, void* name), c, only, len, name)
+SUPER(xcb_create_window, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t depth, uint32_t w, uint32_t p, int16_t x, int16_t y, uint16_t width, uint16_t height, uint16_t bw, uint16_t cl, uint32_t vid, uint32_t mask, void* list), c, depth, w, p, x, y, width, height, bw, cl, vid, mask, list)
+SUPER(xcb_create_window_checked, (x64emu_t* emu, my_xcb_cookie_t* ret, void* c, uint8_t depth, uint32_t w, uint32_t p, int16_t x, int16_t y, uint16_t width, uint16_t height, uint16_t bw, uint16_t cl, uint32_t vid, uint32_t mask, void* list), c, depth, w, p, x, y, width, height, bw, cl, vid, mask, list)
 
 #undef SUPER
 
diff --git a/src/wrapped32/wrappedlibxcb_private.h b/src/wrapped32/wrappedlibxcb_private.h
index 121d806f..5c7a1519 100644
--- a/src/wrapped32/wrappedlibxcb_private.h
+++ b/src/wrapped32/wrappedlibxcb_private.h
@@ -152,10 +152,10 @@ GO(xcb_create_gc_value_list_unpack, iFpup)
 //GOS(xcb_create_glyph_cursor_checked, pFpnuuuWWWWWWWW)
 //GOS(xcb_create_pixmap, pFpnCuuWW)
 //GOS(xcb_create_pixmap_checked, pFpnCuuWW)
-//GOS(xcb_create_window, pFpnCuuwwWWWWuup)
+GOS(xcb_create_window, zFEpnCuuwwWWWWuup)    //%%
 //GOS(xcb_create_window_aux, pFpnCuuwwWWWWuup)
 //GOS(xcb_create_window_aux_checked, pFpnCuuwwWWWWuup)
-//GOS(xcb_create_window_checked, pFpnCuuwwWWWWuup)
+GOS(xcb_create_window_checked, zFEpnCuuwwWWWWuup)    //%%
 GO(xcb_create_window_sizeof, iFp)
 GO(xcb_create_window_value_list, pFp)
 GO(xcb_create_window_value_list_serialize, iFbp_up)