diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-10-06 12:14:53 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-10-06 12:14:53 +0200 |
| commit | b395cd7ccc0a3b98b82306a35a2d96a9d42c5d7d (patch) | |
| tree | 366ae945bce1592b0a2e47d995da27e95ef1eca0 /src | |
| parent | 8ec6b15dc21b11175cf619790c9492f344f5ab64 (diff) | |
| download | box64-b395cd7ccc0a3b98b82306a35a2d96a9d42c5d7d.tar.gz box64-b395cd7ccc0a3b98b82306a35a2d96a9d42c5d7d.zip | |
[BOX32] More work on various wrapper, and some bug fixes
Diffstat (limited to 'src')
25 files changed, 581 insertions, 145 deletions
diff --git a/src/include/signals.h b/src/include/signals.h index 71d6dafc..cf927503 100644 --- a/src/include/signals.h +++ b/src/include/signals.h @@ -25,7 +25,7 @@ typedef struct x64_sigaction_restorer_s { } x64_sigaction_restorer_t; #ifdef BOX32 -typedef struct i386_sigaction_s { +typedef struct __attribute__((packed)) i386_sigaction_s { union { ptr_t _sa_handler; // sighandler_t ptr_t _sa_sigaction; //void (*_sa_sigaction)(int, siginfo_t *, void *); @@ -35,7 +35,7 @@ typedef struct i386_sigaction_s { ptr_t sa_restorer; //void (*sa_restorer)(void); } i386_sigaction_t; -typedef struct i386_sigaction_restorer_s { +typedef struct __attribute__((packed)) i386_sigaction_restorer_s { union { ptr_t _sa_handler; //sighandler_t ptr_t _sa_sigaction; //void (*_sa_sigaction)(int, siginfo_t *, void *); diff --git a/src/libtools/my_x11_defs.h b/src/libtools/my_x11_defs.h index 071b4f82..bb1f719e 100644 --- a/src/libtools/my_x11_defs.h +++ b/src/libtools/my_x11_defs.h @@ -894,4 +894,30 @@ typedef struct my_XF86VidModeModeInfo_s int* tc_private; } my_XF86VidModeModeInfo_t; +typedef struct my_XColor_s { + unsigned long pixel; + unsigned short red, green, blue; + char flags; + char pad; +} my_XColor_t; + +typedef struct my_XRRProviderInfo_s { + unsigned int capabilities; + int ncrtcs; + XID* crtcs; + int noutputs; + XID* outputs; + char* name; + int nassociatedproviders; + XID* associated_providers; + unsigned int* associated_capability; + int nameLen; +} my_XRRProviderInfo_t; + +typedef struct my_XRRProviderResources_t { + unsigned long timestamp; + int nproviders; + XID* providers; +} my_XRRProviderResources_t; + #endif//MY_X11_DEFS \ No newline at end of file diff --git a/src/libtools/my_x11_defs_32.h b/src/libtools/my_x11_defs_32.h index 98f71ee3..e480de36 100644 --- a/src/libtools/my_x11_defs_32.h +++ b/src/libtools/my_x11_defs_32.h @@ -827,4 +827,30 @@ typedef struct my_XF86VidModeModeInfo_32_s ptr_t tc_private; } my_XF86VidModeModeInfo_32_t; +typedef struct my_XColor_32_s { + ulong_t pixel; + unsigned short red, green, blue; + char flags; + char pad; +} my_XColor_32_t; + +typedef struct my_XRRProviderInfo_32_s { + unsigned int capabilities; + int ncrtcs; + ptr_t crtcs; //XID* + int noutputs; + ptr_t outputs; //XID* + ptr_t name; //char* + int nassociatedproviders; + ptr_t associated_providers; //XID* + ptr_t associated_capability; //unsigned int* + int nameLen; +} my_XRRProviderInfo_32_t; + +typedef struct my_XRRProviderResources_32_t { + ulong_t timestamp; + int nproviders; + ptr_t providers; //XID* +} my_XRRProviderResources_32_t; + #endif//MY_X11_DEFS_32 \ No newline at end of file diff --git a/src/wrapped32/generated/converter32.c b/src/wrapped32/generated/converter32.c index 2f3f606e..06b322e9 100644 --- a/src/wrapped32/generated/converter32.c +++ b/src/wrapped32/generated/converter32.c @@ -688,3 +688,53 @@ void to_struct_pLiiiLLLii(ptr_t d, const struct_pLiiiLLLii_t *src) { *(int*)dest = src->i8; dest += 4; *(int*)dest = src->i9; dest += 4; } + +void from_struct_LiiuL(struct_LiiuL_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->L0 = from_ulong(*(long_t*)src); src += 4; + dest->i1 = *(int*)src; src += 4; + dest->i2 = *(int*)src; src += 4; + dest->u3 = *(uint32_t*)src; src += 4; + dest->L4 = from_ulong(*(long_t*)src); src += 4; +} +void to_struct_LiiuL(ptr_t d, const struct_LiiuL_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ulong_t*)dest = to_ulong(src->L0); dest += 4; + *(int*)dest = src->i1; dest += 4; + *(int*)dest = src->i2; dest += 4; + *(uint32_t*)dest = src->u3; dest += 4; + *(ulong_t*)dest = to_ulong(src->L4); dest += 4; +} + +void from_struct_WWWWWWWWWuip(struct_WWWWWWWWWuip_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->W0 = *(uint16_t*)src; src += 2; + dest->W1 = *(uint16_t*)src; src += 2; + dest->W2 = *(uint16_t*)src; src += 2; + dest->W3 = *(uint16_t*)src; src += 2; + dest->W4 = *(uint16_t*)src; src += 2; + dest->W5 = *(uint16_t*)src; src += 2; + dest->W6 = *(uint16_t*)src; src += 2; + dest->W7 = *(uint16_t*)src; src += 2; + dest->W8 = *(uint16_t*)src; src += 2; + dest->u9 = *(uint32_t*)src; src += 4; + dest->i10 = *(int*)src; src += 4; + dest->p11 = from_ptrv(*(ptr_t*)src); src += 4; +} +void to_struct_WWWWWWWWWuip(ptr_t d, const struct_WWWWWWWWWuip_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(uint16_t*)dest = src->W0; dest += 2; + *(uint16_t*)dest = src->W1; dest += 2; + *(uint16_t*)dest = src->W2; dest += 2; + *(uint16_t*)dest = src->W3; dest += 2; + *(uint16_t*)dest = src->W4; dest += 2; + *(uint16_t*)dest = src->W5; dest += 2; + *(uint16_t*)dest = src->W6; dest += 2; + *(uint16_t*)dest = src->W7; dest += 2; + *(uint16_t*)dest = src->W8; dest += 2; + *(uint32_t*)dest = src->u9; dest += 4; + *(int*)dest = src->i10; dest += 4; + *(ulong_t*)dest = to_ptrv(src->p11); dest += 4; +} diff --git a/src/wrapped32/generated/converter32.h b/src/wrapped32/generated/converter32.h index e040e8ff..ce7aa46d 100644 --- a/src/wrapped32/generated/converter32.h +++ b/src/wrapped32/generated/converter32.h @@ -346,5 +346,31 @@ typedef struct struct_pLiiiLLLii_s { } struct_pLiiiLLLii_t; void from_struct_pLiiiLLLii(struct_pLiiiLLLii_t *dest, ptr_t src); void to_struct_pLiiiLLLii(ptr_t dest, const struct_pLiiiLLLii_t *src); +typedef struct struct_LiiuL_s { + unsigned long L0; + int i1; + int i2; + uint32_t u3; + unsigned long L4; +} struct_LiiuL_t; +void from_struct_LiiuL(struct_LiiuL_t *dest, ptr_t src); +void to_struct_LiiuL(ptr_t dest, const struct_LiiuL_t *src); +typedef struct struct_WWWWWWWWWuip_s { + uint16_t W0; + uint16_t W1; + uint16_t W2; + uint16_t W3; + uint16_t W4; + uint16_t W5; + uint16_t W6; + uint16_t W7; + uint16_t W8; + uint32_t u9; + int i10; + void* p11; + unsigned long L4; +} struct_WWWWWWWWWuip_t; +void from_struct_WWWWWWWWWuip(struct_WWWWWWWWWuip_t *dest, ptr_t src); +void to_struct_WWWWWWWWWuip(ptr_t dest, const struct_WWWWWWWWWuip_t *src); #endif // __CONVERTER_H_ diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt index 19599d02..4ec5ada9 100644 --- a/src/wrapped32/generated/functions_list.txt +++ b/src/wrapped32/generated/functions_list.txt @@ -17,6 +17,7 @@ #() cFi -> cFi #() cFu -> cFu #() cFp -> cFp +#() wFp -> wFp #() iFv -> iFv #() iFi -> iFi #() iFI -> iFI @@ -179,6 +180,7 @@ #() CFpi -> CFpi #() CFpp -> CFpp #() CFXL -> CFXL +#() WFpp -> WFpp #() uFEp -> uFEp #() uFii -> uFii #() uFiS -> uFiS @@ -254,6 +256,7 @@ #() iFXbL_ -> iFXB #() fFpBp_ -> fFpB #() dFpBp_ -> dFpB +#() LFpbL_ -> LFpB #() pFrl_p -> pFBp #() vFBll_l -> vFBl #() iFuBLL_ -> iFuB @@ -268,6 +271,7 @@ #() iFXbiip_ -> iFXB #() iFXbLipi_ -> iFXB #() iFrLL_BLL_ -> iFBB +#() LFXrLiiuL_ -> LFXB #() vFbll_rllll_ -> vFBB #() iFXbiiuuLip_ -> iFXB #() iFpruuipWCCp_ -> iFpB @@ -343,6 +347,7 @@ #() vFppi -> vFppi #() vFppu -> vFppu #() vFppp -> vFppp +#() vFXLi -> vFXLi #() vFXLL -> vFXLL #() vFXLp -> vFXLp #() vFXpi -> vFXpi @@ -425,6 +430,7 @@ #() CFipp -> CFipp #() CFuUu -> CFuUu #() CFuff -> CFuff +#() WFXip -> WFXip #() uFEpu -> uFEpu #() uFEpL -> uFEpL #() uFilp -> uFilp @@ -530,6 +536,7 @@ #() vFXLbpLiL_ -> vFXLB #() iFXLbpLiL_ -> iFXLB #() iFXLbLLii_ -> iFXLB +#() pFXrLiiuL_p -> pFXBp #() iFXLbLWWWcc_ -> iFXLB #() iFirLLLL_BLLLL_ -> iFiBB #() pFppriiiiiiiiilt_ -> pFppB @@ -741,8 +748,8 @@ #() pFppLL -> pFppLL #() pFpppp -> pFpppp #() pFXiii -> pFXiii +#() pFXiip -> pFXiip #() pFXCip -> pFXCip -#() pFXLpi -> pFXLpi #() pFXLpp -> pFXLpp #() pFXppp -> pFXppp #() vFbp_ppp -> vFBppp @@ -771,6 +778,7 @@ #() vFXLbLLLLLLLLLL_L -> vFXLBL #() iFXLbLLLLLLLLLL_L -> iFXLBL #() LFpLpriiiiiiiiilt_ -> LFpLpB +#() iFXipBWWWWWWWWWuip_ -> iFXipB #() iFXLbLWWWcc_bLWWWcc_ -> iFXLBB #() iFXLLbLLLLiiiLLilliLL_ -> iFXLLB #() iFpruuipWCCp_buuipWCCp_i -> iFpBBi @@ -926,7 +934,6 @@ #() LFpLppa -> LFpLppa #() LFXLuuu -> LFXLuuu #() LFXLpuu -> LFXLpuu -#() LFXLpLp -> LFXLpLp #() LFXpppi -> LFXpppi #() pFEppip -> pFEppip #() pFEXipp -> pFEXipp @@ -955,11 +962,13 @@ #() vFbp_ppibup_ -> vFBppiB #() iFEXbpLiL_pp -> iFEXBpp #() iFpppbp_bup_ -> iFpppBB +#() LFXLrLiiuL_Lp -> LFXLBLp +#() pFEXLrLiiuL_i -> pFEXLBi #() iFXbp_iubpLiL_ -> iFXBiuB #() iFXLiubiiiiiLi_ -> iFXLiuB #() LFLbp_bL_bp_bL_ -> LFLBBBB #() vFXLbLLLLLLLLLL_iL -> vFXLBiL -#() iFXiiibpLiiiLLLii_ -> iFXiiiB +#() iFXiiiBpLiiiLLLii_ -> iFXiiiB #() LFpLpriiiiiiiiilt_a -> LFpLpBa #() iFXLpbLWWWcc_bLWWWcc_ -> iFXLpBB #() iFXLpBLWWWcc_BLWWWcc_ -> iFXLpBB @@ -1033,6 +1042,7 @@ #() vFXLiiii -> vFXLiiii #() vFXLiiiL -> vFXLiiiL #() vFXLiipi -> vFXLiipi +#() vFXLpppi -> vFXLpppi #() iFEiippi -> iFEiippi #() iFEuppLp -> iFEuppLp #() iFEpiuuu -> iFEpiuuu @@ -1064,6 +1074,7 @@ #() iFXLpppp -> iFXLpppp #() iFXpIppp -> iFXpIppp #() iFXpuiii -> iFXpuiii +#() iFXpLiWL -> iFXpLiWL #() iFXpLLiL -> iFXpLLiL #() iFXppppi -> iFXppppi #() iFXppppp -> iFXppppp @@ -1162,12 +1173,14 @@ #() iFXLpiipi -> iFXLpiipi #() iFXLppiii -> iFXLppiii #() iFXpiipii -> iFXpiipii +#() iFXpLiWwL -> iFXpLiWwL #() iFXpLuuii -> iFXpLuuii #() uFuippppp -> uFuippppp #() pFEpiiiiu -> pFEpiiiiu #() pFEpLiiii -> pFEpLiiii #() pFEpLiiiI -> pFEpLiiiI #() pFEpLiiil -> pFEpLiiil +#() vFXLLiiibl_ -> vFXLLiiiB #() iFEpppibL_p -> iFEpppiBp #() iFXLibL_ubL_u -> iFXLiBuBu #() vFXLpiibpiip_i -> vFXLpiiBi @@ -1204,6 +1217,7 @@ #() vFffffffff -> vFffffffff #() vFXiLpiiuu -> vFXiLpiiuu #() vFXLiiiLii -> vFXLiiiLii +#() vFXLLLiipi -> vFXLLLiipi #() vFXLppiipi -> vFXLppiipi #() iFEpippppp -> iFEpippppp #() iFEpLiLppp -> iFEpLiLppp @@ -1262,6 +1276,7 @@ #() pFEXLiiuuLi -> pFEXLiiuuLi #() iFXLbL_pppppp -> iFXLBpppppp #() iFXLbL_bL_ppppp -> iFXLBBppppp +#() vFXiLLrLiiuL_iipi -> vFXiLLBiipi #() pFEXbpLiLLLii_uipbLipi_uu -> pFEXBuipBuu #() vFEXLpppippp -> vFEXLpppippp #() vFiiiiiiiiii -> vFiiiiiiiiii @@ -1303,12 +1318,12 @@ #() vFUufffffffff -> vFUufffffffff #() vFpiiiiiiiiuu -> vFpiiiiiiiiuu #() vFpipipiipiiu -> vFpipipiipiiu -#() vFXiLLpiiiipi -> vFXiLLpiiiipi #() iFEXLppiiiiuu -> iFEXLppiiiiuu #() iFEXpLLiiLWpi -> iFEXpLLiiLWpi #() iFuiiiiuuiiip -> iFuiiiiuuiiip #() iFXLLpiiuuiiL -> iFXLLpiiuuiiL #() pFEXpuiipuuii -> pFEXpuiipuuii +#() vFXiLLrLiiuL_iiiipi -> vFXiLLBiiiipi #() iFXLibL_iiiibL_bL_bL_ -> iFXLiBiiiiBBB #() vFuiiiiiiiiuUC -> vFuiiiiiiiiuUC #() vFuiiiiiiiuuip -> vFuiiiiiiiuuip @@ -1318,10 +1333,10 @@ #() vFuuuuuuuuuuuu -> vFuuuuuuuuuuuu #() vFffffffffffff -> vFffffffffffff #() vFXiLLpiiiipii -> vFXiLLpiiiipii -#() vFXiLLpLiiiipi -> vFXiLLpLiiiipi #() iFEXLppiiiiuui -> iFEXLppiiiiuui #() iFXLpppppppppp -> iFXLpppppppppp #() pFEXLiiuuLipii -> pFEXLiiuuLipii +#() vFXiLLrLiiuL_Liiiipi -> vFXiLLBLiiiipi #() iFXLLlliLBL_pBL_BL_Bp_ -> iFXLLlliLBpBBB #() vFuiiiiiiiiiuup -> vFuiiiiiiiiiuup #() vFuuuuuuuuuuuuu -> vFuuuuuuuuuuuuu @@ -1332,6 +1347,7 @@ #() iFXippuuuiipppp -> iFXippuuuiipppp #() uFippuuuulllipp -> uFippuuuulllipp #() LFEXLiiuuuiupLp -> LFEXLiiuuuiupLp +#() iFXLLlliiLBL_pBL_BL_Bp_ -> iFXLLlliiLBpBBB #() vFuffiiffiiffiip -> vFuffiiffiiffiip #() vFuddiiddiiddiip -> vFuddiiddiiddiip #() vFuiiiiiuiiiiilll -> vFuiiiiiuiiiiilll @@ -1494,6 +1510,7 @@ wrappedlibc: - vFip: - vFpi: - vFpu: +- vFpp: - iFip: - futimens - futimes @@ -1882,15 +1899,15 @@ wrappedlibx11: - XESetCloseDisplay - iFpLlp: - XWindowEvent -- iFpppp: - - XCheckIfEvent - iFXLip: - XCheckTypedWindowEvent - iFXLlp: - XCheckWindowEvent - iFXLpi: + - XQueryColors - XSetWMProtocols - iFXppp: + - XCheckIfEvent - XIfEvent - pFXlpp: - XGetVisualInfo @@ -1938,6 +1955,8 @@ wrappedlibxcursor: wrappedlibxext: - vFp: - XdbeFreeVisualInfo +- pFp: + - XSetExtensionErrorHandler - pFXpp: - XdbeGetVisualInfo - iFXLpiiL: @@ -1948,17 +1967,29 @@ wrappedlibxext: - XShmPutImage wrappedlibxfixes: wrappedlibxrandr: +- vFp: + - XRRFreeProviderInfo + - XRRFreeProviderResources - pFXL: + - XRRGetProviderResources - XRRGetScreenResources + - XRRGetScreenResourcesCurrent - pFXpL: - XRRGetCrtcInfo - XRRGetOutputInfo - XRRGetPanning + - XRRGetProviderInfo - iFXpLp: - XRRSetPanning - iFXpLLiiLWpi: - XRRSetCrtcConfig wrappedlibxrender: +- pFXi: + - XRenderFindStandardFormat +- pFXp: + - XRenderFindVisualFormat +- pFXLrLiiuL_i: + - XRenderFindFormat wrappedlibxxf86vm: - iFXipp: - XF86VidModeGetAllModeLines diff --git a/src/wrapped32/generated/wrappedlibctypes32.h b/src/wrapped32/generated/wrappedlibctypes32.h index c712c92d..78cd3c1e 100644 --- a/src/wrapped32/generated/wrappedlibctypes32.h +++ b/src/wrapped32/generated/wrappedlibctypes32.h @@ -36,6 +36,7 @@ typedef void* (*pFriiiiiiiiilt__t)(struct_iiiiiiiiilt_t*); typedef void (*vFip_t)(int32_t, void*); typedef void (*vFpi_t)(void*, int32_t); typedef void (*vFpu_t)(void*, uint32_t); +typedef void (*vFpp_t)(void*, void*); typedef int32_t (*iFip_t)(int32_t, void*); typedef int32_t (*iFup_t)(uint32_t, void*); typedef int32_t (*iFpi_t)(void*, int32_t); diff --git a/src/wrapped32/generated/wrappedlibx11types32.h b/src/wrapped32/generated/wrappedlibx11types32.h index 31bc4cf1..bb7be7d8 100644 --- a/src/wrapped32/generated/wrappedlibx11types32.h +++ b/src/wrapped32/generated/wrappedlibx11types32.h @@ -31,7 +31,6 @@ typedef int32_t (*iFXLp_t)(void*, uintptr_t, void*); typedef uintptr_t (*LFXii_t)(void*, int32_t, int32_t); typedef void* (*pFXip_t)(void*, int32_t, void*); typedef int32_t (*iFpLlp_t)(void*, uintptr_t, intptr_t, void*); -typedef int32_t (*iFpppp_t)(void*, void*, void*, void*); typedef int32_t (*iFXLip_t)(void*, uintptr_t, int32_t, void*); typedef int32_t (*iFXLlp_t)(void*, uintptr_t, intptr_t, void*); typedef int32_t (*iFXLpi_t)(void*, uintptr_t, void*, int32_t); @@ -90,10 +89,11 @@ typedef uintptr_t (*LFXLiiuuuiupLp_t)(void*, uintptr_t, int32_t, int32_t, uint32 GO(XGetPixel, LFXii_t) \ GO(XESetCloseDisplay, pFXip_t) \ GO(XWindowEvent, iFpLlp_t) \ - GO(XCheckIfEvent, iFpppp_t) \ GO(XCheckTypedWindowEvent, iFXLip_t) \ GO(XCheckWindowEvent, iFXLlp_t) \ + GO(XQueryColors, iFXLpi_t) \ GO(XSetWMProtocols, iFXLpi_t) \ + GO(XCheckIfEvent, iFXppp_t) \ GO(XIfEvent, iFXppp_t) \ GO(XGetVisualInfo, pFXlpp_t) \ GO(XmbTextPropertyToTextList, iFXbpLiL_pp_t) \ diff --git a/src/wrapped32/generated/wrappedlibxexttypes32.h b/src/wrapped32/generated/wrappedlibxexttypes32.h index e82da04b..fa6d4f69 100644 --- a/src/wrapped32/generated/wrappedlibxexttypes32.h +++ b/src/wrapped32/generated/wrappedlibxexttypes32.h @@ -12,6 +12,7 @@ #endif typedef void (*vFp_t)(void*); +typedef void* (*pFp_t)(void*); typedef void* (*pFXpp_t)(void*, void*, void*); typedef int32_t (*iFXLpiiL_t)(void*, uintptr_t, void*, int32_t, int32_t, uintptr_t); typedef void* (*pFXbpLiLLLii_uipbLipi_uu_t)(void*, struct_pLiLLLii_t*, uint32_t, int32_t, void*, struct_Lipi_t*, uint32_t, uint32_t); @@ -19,6 +20,7 @@ typedef int32_t (*iFXLppiiiiuui_t)(void*, uintptr_t, void*, void*, int32_t, int3 #define SUPER() ADDED_FUNCTIONS() \ GO(XdbeFreeVisualInfo, vFp_t) \ + GO(XSetExtensionErrorHandler, pFp_t) \ GO(XdbeGetVisualInfo, pFXpp_t) \ GO(XShmGetImage, iFXLpiiL_t) \ GO(XShmCreateImage, pFXbpLiLLLii_uipbLipi_uu_t) \ diff --git a/src/wrapped32/generated/wrappedlibxrandrtypes32.h b/src/wrapped32/generated/wrappedlibxrandrtypes32.h index a186e0e2..d50f7515 100644 --- a/src/wrapped32/generated/wrappedlibxrandrtypes32.h +++ b/src/wrapped32/generated/wrappedlibxrandrtypes32.h @@ -11,16 +11,22 @@ #define ADDED_FUNCTIONS() #endif +typedef void (*vFp_t)(void*); typedef void* (*pFXL_t)(void*, uintptr_t); typedef void* (*pFXpL_t)(void*, void*, uintptr_t); typedef int32_t (*iFXpLp_t)(void*, void*, uintptr_t, void*); typedef int32_t (*iFXpLLiiLWpi_t)(void*, void*, uintptr_t, uintptr_t, int32_t, int32_t, uintptr_t, uint16_t, void*, int32_t); #define SUPER() ADDED_FUNCTIONS() \ + GO(XRRFreeProviderInfo, vFp_t) \ + GO(XRRFreeProviderResources, vFp_t) \ + GO(XRRGetProviderResources, pFXL_t) \ GO(XRRGetScreenResources, pFXL_t) \ + GO(XRRGetScreenResourcesCurrent, pFXL_t) \ GO(XRRGetCrtcInfo, pFXpL_t) \ GO(XRRGetOutputInfo, pFXpL_t) \ GO(XRRGetPanning, pFXpL_t) \ + GO(XRRGetProviderInfo, pFXpL_t) \ GO(XRRSetPanning, iFXpLp_t) \ GO(XRRSetCrtcConfig, iFXpLLiiLWpi_t) diff --git a/src/wrapped32/generated/wrappedlibxrendertypes32.h b/src/wrapped32/generated/wrappedlibxrendertypes32.h index f00ac8d4..04ddf45d 100644 --- a/src/wrapped32/generated/wrappedlibxrendertypes32.h +++ b/src/wrapped32/generated/wrappedlibxrendertypes32.h @@ -11,7 +11,13 @@ #define ADDED_FUNCTIONS() #endif +typedef void* (*pFXi_t)(void*, int32_t); +typedef void* (*pFXp_t)(void*, void*); +typedef void* (*pFXLrLiiuL_i_t)(void*, uintptr_t, struct_LiiuL_t*, int32_t); -#define SUPER() ADDED_FUNCTIONS() +#define SUPER() ADDED_FUNCTIONS() \ + GO(XRenderFindStandardFormat, pFXi_t) \ + GO(XRenderFindVisualFormat, pFXp_t) \ + GO(XRenderFindFormat, pFXLrLiiuL_i_t) #endif // __wrappedlibxrenderTYPES32_H_ diff --git a/src/wrapped32/generated/wrapper32.c b/src/wrapped32/generated/wrapper32.c index d8fd03f0..0483172f 100644 --- a/src/wrapped32/generated/wrapper32.c +++ b/src/wrapped32/generated/wrapper32.c @@ -107,6 +107,7 @@ typedef int8_t (*cFc_t)(int8_t); typedef int8_t (*cFi_t)(int32_t); typedef int8_t (*cFu_t)(uint32_t); typedef int8_t (*cFp_t)(void*); +typedef int16_t (*wFp_t)(void*); typedef int32_t (*iFv_t)(void); typedef int32_t (*iFi_t)(int32_t); typedef int32_t (*iFI_t)(int64_t); @@ -269,6 +270,7 @@ typedef uint8_t (*CFuU_t)(uint32_t, uint64_t); typedef uint8_t (*CFpi_t)(void*, int32_t); typedef uint8_t (*CFpp_t)(void*, void*); typedef uint8_t (*CFXL_t)(void*, uintptr_t); +typedef uint16_t (*WFpp_t)(void*, void*); typedef uint32_t (*uFEp_t)(x64emu_t*, void*); typedef uint32_t (*uFii_t)(int32_t, int32_t); typedef uint32_t (*uFiS_t)(int32_t, void*); @@ -344,6 +346,7 @@ typedef int32_t (*iFHBp__t)(uintptr_t, struct_p_t*); typedef int32_t (*iFXbL__t)(void*, struct_L_t*); typedef float (*fFpBp__t)(void*, struct_p_t*); typedef double (*dFpBp__t)(void*, struct_p_t*); +typedef uintptr_t (*LFpbL__t)(void*, struct_L_t*); typedef void* (*pFrl_p_t)(struct_l_t*, void*); typedef void (*vFBll_l_t)(struct_ll_t*, intptr_t); typedef int32_t (*iFuBLL__t)(uint32_t, struct_LL_t*); @@ -358,6 +361,7 @@ typedef int32_t (*iFbppi_i_t)(struct_ppi_t*, int32_t); typedef int32_t (*iFXbiip__t)(void*, struct_iip_t*); typedef int32_t (*iFXbLipi__t)(void*, struct_Lipi_t*); typedef int32_t (*iFrLL_BLL__t)(struct_LL_t*, struct_LL_t*); +typedef uintptr_t (*LFXrLiiuL__t)(void*, struct_LiiuL_t*); typedef void (*vFbll_rllll__t)(struct_ll_t*, struct_llll_t*); typedef int32_t (*iFXbiiuuLip__t)(void*, struct_iiuuLip_t*); typedef int32_t (*iFpruuipWCCp__t)(void*, struct_uuipWCCp_t*); @@ -433,6 +437,7 @@ typedef void (*vFplp_t)(void*, intptr_t, void*); typedef void (*vFppi_t)(void*, void*, int32_t); typedef void (*vFppu_t)(void*, void*, uint32_t); typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFXLi_t)(void*, uintptr_t, int32_t); typedef void (*vFXLL_t)(void*, uintptr_t, uintptr_t); typedef void (*vFXLp_t)(void*, uintptr_t, void*); typedef void (*vFXpi_t)(void*, void*, int32_t); @@ -515,6 +520,7 @@ typedef int64_t (*IFpIi_t)(void*, int64_t, int32_t); typedef uint8_t (*CFipp_t)(int32_t, void*, void*); typedef uint8_t (*CFuUu_t)(uint32_t, uint64_t, uint32_t); typedef uint8_t (*CFuff_t)(uint32_t, float, float); +typedef uint16_t (*WFXip_t)(void*, int32_t, void*); typedef uint32_t (*uFEpu_t)(x64emu_t*, void*, uint32_t); typedef uint32_t (*uFEpL_t)(x64emu_t*, void*, uintptr_t); typedef uint32_t (*uFilp_t)(int32_t, intptr_t, void*); @@ -620,6 +626,7 @@ typedef int32_t (*iFXbiip_i_t)(void*, struct_iip_t*, int32_t); typedef void (*vFXLbpLiL__t)(void*, uintptr_t, struct_pLiL_t*); typedef int32_t (*iFXLbpLiL__t)(void*, uintptr_t, struct_pLiL_t*); typedef int32_t (*iFXLbLLii__t)(void*, uintptr_t, struct_LLii_t*); +typedef void* (*pFXrLiiuL_p_t)(void*, struct_LiiuL_t*, void*); typedef int32_t (*iFXLbLWWWcc__t)(void*, uintptr_t, struct_LWWWcc_t*); typedef int32_t (*iFirLLLL_BLLLL__t)(int32_t, struct_LLLL_t*, struct_LLLL_t*); typedef void* (*pFppriiiiiiiiilt__t)(void*, void*, struct_iiiiiiiiilt_t*); @@ -831,8 +838,8 @@ typedef void* (*pFpLiS_t)(void*, uintptr_t, int32_t, void*); typedef void* (*pFppLL_t)(void*, void*, uintptr_t, uintptr_t); typedef void* (*pFpppp_t)(void*, void*, void*, void*); typedef void* (*pFXiii_t)(void*, int32_t, int32_t, int32_t); +typedef void* (*pFXiip_t)(void*, int32_t, int32_t, void*); typedef void* (*pFXCip_t)(void*, uint8_t, int32_t, void*); -typedef void* (*pFXLpi_t)(void*, uintptr_t, void*, int32_t); typedef void* (*pFXLpp_t)(void*, uintptr_t, void*, void*); typedef void* (*pFXppp_t)(void*, void*, void*, void*); typedef void (*vFbp_ppp_t)(struct_p_t*, void*, void*, void*); @@ -861,6 +868,7 @@ typedef int32_t (*iFXLubiiiiiLi__t)(void*, uintptr_t, uint32_t, struct_iiiiiLi_t typedef void (*vFXLbLLLLLLLLLL_L_t)(void*, uintptr_t, struct_LLLLLLLLLL_t*, uintptr_t); typedef int32_t (*iFXLbLLLLLLLLLL_L_t)(void*, uintptr_t, struct_LLLLLLLLLL_t*, uintptr_t); typedef uintptr_t (*LFpLpriiiiiiiiilt__t)(void*, uintptr_t, void*, struct_iiiiiiiiilt_t*); +typedef int32_t (*iFXipBWWWWWWWWWuip__t)(void*, int32_t, void*, struct_WWWWWWWWWuip_t*); typedef int32_t (*iFXLbLWWWcc_bLWWWcc__t)(void*, uintptr_t, struct_LWWWcc_t*, struct_LWWWcc_t*); typedef int32_t (*iFXLLbLLLLiiiLLilliLL__t)(void*, uintptr_t, uintptr_t, struct_LLLLiiiLLilliLL_t*); typedef int32_t (*iFpruuipWCCp_buuipWCCp_i_t)(void*, struct_uuipWCCp_t*, struct_uuipWCCp_t*, int32_t); @@ -1016,7 +1024,6 @@ typedef uintptr_t (*LFEppLL_t)(x64emu_t*, void*, void*, uintptr_t, uintptr_t); typedef uintptr_t (*LFpLppa_t)(void*, uintptr_t, void*, void*, void*); typedef uintptr_t (*LFXLuuu_t)(void*, uintptr_t, uint32_t, uint32_t, uint32_t); typedef uintptr_t (*LFXLpuu_t)(void*, uintptr_t, void*, uint32_t, uint32_t); -typedef uintptr_t (*LFXLpLp_t)(void*, uintptr_t, void*, uintptr_t, void*); typedef uintptr_t (*LFXpppi_t)(void*, void*, void*, void*, int32_t); typedef void* (*pFEppip_t)(x64emu_t*, void*, void*, int32_t, void*); typedef void* (*pFEXipp_t)(x64emu_t*, void*, int32_t, void*, void*); @@ -1045,11 +1052,13 @@ typedef int32_t (*iFiiuBp_Bp__t)(int32_t, int32_t, uint32_t, struct_p_t*, struct typedef void (*vFbp_ppibup__t)(struct_p_t*, void*, void*, int32_t, struct_up_t*); typedef int32_t (*iFEXbpLiL_pp_t)(x64emu_t*, void*, struct_pLiL_t*, void*, void*); typedef int32_t (*iFpppbp_bup__t)(void*, void*, void*, struct_p_t*, struct_up_t*); +typedef uintptr_t (*LFXLrLiiuL_Lp_t)(void*, uintptr_t, struct_LiiuL_t*, uintptr_t, void*); +typedef void* (*pFEXLrLiiuL_i_t)(x64emu_t*, void*, uintptr_t, struct_LiiuL_t*, int32_t); typedef int32_t (*iFXbp_iubpLiL__t)(void*, struct_p_t*, int32_t, uint32_t, struct_pLiL_t*); typedef int32_t (*iFXLiubiiiiiLi__t)(void*, uintptr_t, int32_t, uint32_t, struct_iiiiiLi_t*); typedef uintptr_t (*LFLbp_bL_bp_bL__t)(uintptr_t, struct_p_t*, struct_L_t*, struct_p_t*, struct_L_t*); typedef void (*vFXLbLLLLLLLLLL_iL_t)(void*, uintptr_t, struct_LLLLLLLLLL_t*, int32_t, uintptr_t); -typedef int32_t (*iFXiiibpLiiiLLLii__t)(void*, int32_t, int32_t, int32_t, struct_pLiiiLLLii_t*); +typedef int32_t (*iFXiiiBpLiiiLLLii__t)(void*, int32_t, int32_t, int32_t, struct_pLiiiLLLii_t*); typedef uintptr_t (*LFpLpriiiiiiiiilt_a_t)(void*, uintptr_t, void*, struct_iiiiiiiiilt_t*, void*); typedef int32_t (*iFXLpbLWWWcc_bLWWWcc__t)(void*, uintptr_t, void*, struct_LWWWcc_t*, struct_LWWWcc_t*); typedef int32_t (*iFXLpBLWWWcc_BLWWWcc__t)(void*, uintptr_t, void*, struct_LWWWcc_t*, struct_LWWWcc_t*); @@ -1123,6 +1132,7 @@ typedef void (*vFXiLppi_t)(void*, int32_t, uintptr_t, void*, void*, int32_t); typedef void (*vFXLiiii_t)(void*, uintptr_t, int32_t, int32_t, int32_t, int32_t); typedef void (*vFXLiiiL_t)(void*, uintptr_t, int32_t, int32_t, int32_t, uintptr_t); typedef void (*vFXLiipi_t)(void*, uintptr_t, int32_t, int32_t, void*, int32_t); +typedef void (*vFXLpppi_t)(void*, uintptr_t, void*, void*, void*, int32_t); typedef int32_t (*iFEiippi_t)(x64emu_t*, int32_t, int32_t, void*, void*, int32_t); typedef int32_t (*iFEuppLp_t)(x64emu_t*, uint32_t, void*, void*, uintptr_t, void*); typedef int32_t (*iFEpiuuu_t)(x64emu_t*, void*, int32_t, uint32_t, uint32_t, uint32_t); @@ -1154,6 +1164,7 @@ typedef int32_t (*iFXLppii_t)(void*, uintptr_t, void*, void*, int32_t, int32_t); typedef int32_t (*iFXLpppp_t)(void*, uintptr_t, void*, void*, void*, void*); typedef int32_t (*iFXpIppp_t)(void*, void*, int64_t, void*, void*, void*); typedef int32_t (*iFXpuiii_t)(void*, void*, uint32_t, int32_t, int32_t, int32_t); +typedef int32_t (*iFXpLiWL_t)(void*, void*, uintptr_t, int32_t, uint16_t, uintptr_t); typedef int32_t (*iFXpLLiL_t)(void*, void*, uintptr_t, uintptr_t, int32_t, uintptr_t); typedef int32_t (*iFXppppi_t)(void*, void*, void*, void*, void*, int32_t); typedef int32_t (*iFXppppp_t)(void*, void*, void*, void*, void*, void*); @@ -1252,12 +1263,14 @@ typedef int32_t (*iFXLpiiuu_t)(void*, uintptr_t, void*, int32_t, int32_t, uint32 typedef int32_t (*iFXLpiipi_t)(void*, uintptr_t, void*, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFXLppiii_t)(void*, uintptr_t, void*, void*, int32_t, int32_t, int32_t); typedef int32_t (*iFXpiipii_t)(void*, void*, int32_t, int32_t, void*, int32_t, int32_t); +typedef int32_t (*iFXpLiWwL_t)(void*, void*, uintptr_t, int32_t, uint16_t, int16_t, uintptr_t); typedef int32_t (*iFXpLuuii_t)(void*, void*, uintptr_t, uint32_t, uint32_t, int32_t, int32_t); typedef uint32_t (*uFuippppp_t)(uint32_t, int32_t, void*, void*, void*, void*, void*); typedef void* (*pFEpiiiiu_t)(x64emu_t*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t); typedef void* (*pFEpLiiii_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, int32_t, int32_t); typedef void* (*pFEpLiiiI_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, int32_t, int64_t); typedef void* (*pFEpLiiil_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, int32_t, intptr_t); +typedef void (*vFXLLiiibl__t)(void*, uintptr_t, uintptr_t, int32_t, int32_t, int32_t, struct_l_t*); typedef int32_t (*iFEpppibL_p_t)(x64emu_t*, void*, void*, void*, int32_t, struct_L_t*, void*); typedef int32_t (*iFXLibL_ubL_u_t)(void*, uintptr_t, int32_t, struct_L_t*, uint32_t, struct_L_t*, uint32_t); typedef void (*vFXLpiibpiip_i_t)(void*, uintptr_t, void*, int32_t, int32_t, struct_piip_t*, int32_t); @@ -1294,6 +1307,7 @@ typedef void (*vFuuufffff_t)(uint32_t, uint32_t, uint32_t, float, float, float, typedef void (*vFffffffff_t)(float, float, float, float, float, float, float, float); typedef void (*vFXiLpiiuu_t)(void*, int32_t, uintptr_t, void*, int32_t, int32_t, uint32_t, uint32_t); typedef void (*vFXLiiiLii_t)(void*, uintptr_t, int32_t, int32_t, int32_t, uintptr_t, int32_t, int32_t); +typedef void (*vFXLLLiipi_t)(void*, uintptr_t, uintptr_t, uintptr_t, int32_t, int32_t, void*, int32_t); typedef void (*vFXLppiipi_t)(void*, uintptr_t, void*, void*, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFEpippppp_t)(x64emu_t*, void*, int32_t, void*, void*, void*, void*, void*); typedef int32_t (*iFEpLiLppp_t)(x64emu_t*, void*, uintptr_t, int32_t, uintptr_t, void*, void*, void*); @@ -1352,6 +1366,7 @@ typedef void* (*pFEuiiiuuuu_t)(x64emu_t*, uint32_t, int32_t, int32_t, int32_t, u typedef void* (*pFEXLiiuuLi_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, uint32_t, uint32_t, uintptr_t, int32_t); typedef int32_t (*iFXLbL_pppppp_t)(void*, uintptr_t, struct_L_t*, void*, void*, void*, void*, void*, void*); typedef int32_t (*iFXLbL_bL_ppppp_t)(void*, uintptr_t, struct_L_t*, struct_L_t*, void*, void*, void*, void*, void*); +typedef void (*vFXiLLrLiiuL_iipi_t)(void*, int32_t, uintptr_t, uintptr_t, struct_LiiuL_t*, int32_t, int32_t, void*, int32_t); typedef void* (*pFEXbpLiLLLii_uipbLipi_uu_t)(x64emu_t*, void*, struct_pLiLLLii_t*, uint32_t, int32_t, void*, struct_Lipi_t*, uint32_t, uint32_t); typedef void (*vFEXLpppippp_t)(x64emu_t*, void*, uintptr_t, void*, void*, void*, int32_t, void*, void*, void*); typedef void (*vFiiiiiiiiii_t)(int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t); @@ -1393,12 +1408,12 @@ typedef void (*vFuffffffffff_t)(uint32_t, float, float, float, float, float, flo typedef void (*vFUufffffffff_t)(uint64_t, uint32_t, float, float, float, float, float, float, float, float, float); typedef void (*vFpiiiiiiiiuu_t)(void*, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t); typedef void (*vFpipipiipiiu_t)(void*, int32_t, void*, int32_t, void*, int32_t, int32_t, void*, int32_t, int32_t, uint32_t); -typedef void (*vFXiLLpiiiipi_t)(void*, int32_t, uintptr_t, uintptr_t, void*, int32_t, int32_t, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFEXLppiiiiuu_t)(x64emu_t*, void*, uintptr_t, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t); typedef int32_t (*iFEXpLLiiLWpi_t)(x64emu_t*, void*, void*, uintptr_t, uintptr_t, int32_t, int32_t, uintptr_t, uint16_t, void*, int32_t); typedef int32_t (*iFuiiiiuuiiip_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, void*); typedef int32_t (*iFXLLpiiuuiiL_t)(void*, uintptr_t, uintptr_t, void*, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, uintptr_t); typedef void* (*pFEXpuiipuuii_t)(x64emu_t*, void*, void*, uint32_t, int32_t, int32_t, void*, uint32_t, uint32_t, int32_t, int32_t); +typedef void (*vFXiLLrLiiuL_iiiipi_t)(void*, int32_t, uintptr_t, uintptr_t, struct_LiiuL_t*, int32_t, int32_t, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFXLibL_iiiibL_bL_bL__t)(void*, uintptr_t, int32_t, struct_L_t*, int32_t, int32_t, int32_t, int32_t, struct_L_t*, struct_L_t*, struct_L_t*); typedef void (*vFuiiiiiiiiuUC_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint64_t, uint8_t); typedef void (*vFuiiiiiiiuuip_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, void*); @@ -1408,10 +1423,10 @@ typedef void (*vFuuiiiiiiiuup_t)(uint32_t, uint32_t, int32_t, int32_t, int32_t, typedef void (*vFuuuuuuuuuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); typedef void (*vFffffffffffff_t)(float, float, float, float, float, float, float, float, float, float, float, float); typedef void (*vFXiLLpiiiipii_t)(void*, int32_t, uintptr_t, uintptr_t, void*, int32_t, int32_t, int32_t, int32_t, void*, int32_t, int32_t); -typedef void (*vFXiLLpLiiiipi_t)(void*, int32_t, uintptr_t, uintptr_t, void*, uintptr_t, int32_t, int32_t, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFEXLppiiiiuui_t)(x64emu_t*, void*, uintptr_t, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t); typedef int32_t (*iFXLpppppppppp_t)(void*, uintptr_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFEXLiiuuLipii_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, uint32_t, uint32_t, uintptr_t, int32_t, void*, int32_t, int32_t); +typedef void (*vFXiLLrLiiuL_Liiiipi_t)(void*, int32_t, uintptr_t, uintptr_t, struct_LiiuL_t*, uintptr_t, int32_t, int32_t, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFXLLlliLBL_pBL_BL_Bp__t)(void*, uintptr_t, uintptr_t, intptr_t, intptr_t, int32_t, uintptr_t, struct_L_t*, void*, struct_L_t*, struct_L_t*, struct_p_t*); typedef void (*vFuiiiiiiiiiuup_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, void*); typedef void (*vFuuuuuuuuuuuuu_t)(uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); @@ -1422,6 +1437,7 @@ typedef int32_t (*iFddddpppddpppp_t)(double, double, double, double, void*, void typedef int32_t (*iFXippuuuiipppp_t)(void*, int32_t, void*, void*, uint32_t, uint32_t, uint32_t, int32_t, int32_t, void*, void*, void*, void*); typedef uint32_t (*uFippuuuulllipp_t)(int32_t, void*, void*, uint32_t, uint32_t, uint32_t, uint32_t, intptr_t, intptr_t, intptr_t, int32_t, void*, void*); typedef uintptr_t (*LFEXLiiuuuiupLp_t)(x64emu_t*, void*, uintptr_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, int32_t, uint32_t, void*, uintptr_t, void*); +typedef int32_t (*iFXLLlliiLBL_pBL_BL_Bp__t)(void*, uintptr_t, uintptr_t, intptr_t, intptr_t, int32_t, int32_t, uintptr_t, struct_L_t*, void*, struct_L_t*, struct_L_t*, struct_p_t*); typedef void (*vFuffiiffiiffiip_t)(uint32_t, float, float, int32_t, int32_t, float, float, int32_t, int32_t, float, float, int32_t, int32_t, void*); typedef void (*vFuddiiddiiddiip_t)(uint32_t, double, double, int32_t, int32_t, double, double, int32_t, int32_t, double, double, int32_t, int32_t, void*); typedef void (*vFuiiiiiuiiiiilll_t)(uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t, intptr_t, intptr_t, intptr_t); @@ -1464,6 +1480,7 @@ void cFc_32(x64emu_t *emu, uintptr_t fcn) { cFc_t fn = (cFc_t)fcn; R_EAX = fn(fr void cFi_32(x64emu_t *emu, uintptr_t fcn) { cFi_t fn = (cFi_t)fcn; R_EAX = fn(from_ptri(int32_t, R_ESP + 4)); } void cFu_32(x64emu_t *emu, uintptr_t fcn) { cFu_t fn = (cFu_t)fcn; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4)); } void cFp_32(x64emu_t *emu, uintptr_t fcn) { cFp_t fn = (cFp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4)); } +void wFp_32(x64emu_t *emu, uintptr_t fcn) { wFp_t fn = (wFp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4)); } void iFv_32(x64emu_t *emu, uintptr_t fcn) { iFv_t fn = (iFv_t)fcn; R_EAX = fn(); } void iFi_32(x64emu_t *emu, uintptr_t fcn) { iFi_t fn = (iFi_t)fcn; R_EAX = fn(from_ptri(int32_t, R_ESP + 4)); } void iFI_32(x64emu_t *emu, uintptr_t fcn) { iFI_t fn = (iFI_t)fcn; R_EAX = fn(from_ptri(int64_t, R_ESP + 4)); } @@ -1626,6 +1643,7 @@ void CFuU_32(x64emu_t *emu, uintptr_t fcn) { CFuU_t fn = (CFuU_t)fcn; R_EAX = (u void CFpi_32(x64emu_t *emu, uintptr_t fcn) { CFpi_t fn = (CFpi_t)fcn; R_EAX = (unsigned char)fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8)); } void CFpp_32(x64emu_t *emu, uintptr_t fcn) { CFpp_t fn = (CFpp_t)fcn; R_EAX = (unsigned char)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8)); } void CFXL_32(x64emu_t *emu, uintptr_t fcn) { CFXL_t fn = (CFXL_t)fcn; R_EAX = (unsigned char)fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8))); } +void WFpp_32(x64emu_t *emu, uintptr_t fcn) { WFpp_t fn = (WFpp_t)fcn; R_EAX = (unsigned short)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8)); } void uFEp_32(x64emu_t *emu, uintptr_t fcn) { uFEp_t fn = (uFEp_t)fcn; R_EAX = (uint32_t)fn(emu, from_ptriv(R_ESP + 4)); } void uFii_32(x64emu_t *emu, uintptr_t fcn) { uFii_t fn = (uFii_t)fcn; R_EAX = (uint32_t)fn(from_ptri(int32_t, R_ESP + 4), from_ptri(int32_t, R_ESP + 8)); } void uFiS_32(x64emu_t *emu, uintptr_t fcn) { uFiS_t fn = (uFiS_t)fcn; R_EAX = (uint32_t)fn(from_ptri(int32_t, R_ESP + 4), io_convert32(from_ptriv(R_ESP + 8))); } @@ -1701,6 +1719,7 @@ void iFHBp__32(x64emu_t *emu, uintptr_t fcn) { iFHBp__t fn = (iFHBp__t)fcn; stru void iFXbL__32(x64emu_t *emu, uintptr_t fcn) { iFXbL__t fn = (iFXbL__t)fcn; struct_L_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_L(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void fFpBp__32(x64emu_t *emu, uintptr_t fcn) { fFpBp__t fn = (fFpBp__t)fcn; struct_p_t arg_8={0}; float fl = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); fpu_do_push(emu); ST0val = fl; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void dFpBp__32(x64emu_t *emu, uintptr_t fcn) { dFpBp__t fn = (dFpBp__t)fcn; struct_p_t arg_8={0}; double db = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); fpu_do_push(emu); ST0val = db; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void LFpbL__32(x64emu_t *emu, uintptr_t fcn) { LFpbL__t fn = (LFpbL__t)fcn; struct_L_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_L(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void pFrl_p_32(x64emu_t *emu, uintptr_t fcn) { pFrl_p_t fn = (pFrl_p_t)fcn; struct_l_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_l(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = to_ptrv(fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8))); } void vFBll_l_32(x64emu_t *emu, uintptr_t fcn) { vFBll_l_t fn = (vFBll_l_t)fcn; struct_ll_t arg_4={0}; fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_long(from_ptri(long_t, R_ESP + 8))); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFuBLL__32(x64emu_t *emu, uintptr_t fcn) { iFuBLL__t fn = (iFuBLL__t)fcn; struct_LL_t arg_8={0}; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_LL(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } @@ -1715,6 +1734,7 @@ void iFbppi_i_32(x64emu_t *emu, uintptr_t fcn) { iFbppi_i_t fn = (iFbppi_i_t)fcn void iFXbiip__32(x64emu_t *emu, uintptr_t fcn) { iFXbiip__t fn = (iFXbiip__t)fcn; struct_iip_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_iip(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_iip(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFXbLipi__32(x64emu_t *emu, uintptr_t fcn) { iFXbLipi__t fn = (iFXbLipi__t)fcn; struct_Lipi_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_Lipi(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_Lipi(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFrLL_BLL__32(x64emu_t *emu, uintptr_t fcn) { iFrLL_BLL__t fn = (iFrLL_BLL__t)fcn; struct_LL_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_LL(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_LL_t arg_8={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_LL(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void LFXrLiiuL__32(x64emu_t *emu, uintptr_t fcn) { LFXrLiiuL__t fn = (LFXrLiiuL__t)fcn; struct_LiiuL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_LiiuL(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL)); } void vFbll_rllll__32(x64emu_t *emu, uintptr_t fcn) { vFbll_rllll__t fn = (vFbll_rllll__t)fcn; struct_ll_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_ll(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_llll_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_llll(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFXbiiuuLip__32(x64emu_t *emu, uintptr_t fcn) { iFXbiiuuLip__t fn = (iFXbiiuuLip__t)fcn; struct_iiuuLip_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_iiuuLip(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_iiuuLip(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFpruuipWCCp__32(x64emu_t *emu, uintptr_t fcn) { iFpruuipWCCp__t fn = (iFpruuipWCCp__t)fcn; struct_uuipWCCp_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_uuipWCCp(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL); } @@ -1790,6 +1810,7 @@ void vFplp_32(x64emu_t *emu, uintptr_t fcn) { vFplp_t fn = (vFplp_t)fcn; fn(from void vFppi_32(x64emu_t *emu, uintptr_t fcn) { vFppi_t fn = (vFppi_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12)); } void vFppu_32(x64emu_t *emu, uintptr_t fcn) { vFppu_t fn = (vFppu_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12)); } void vFppp_32(x64emu_t *emu, uintptr_t fcn) { vFppp_t fn = (vFppp_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12)); } +void vFXLi_32(x64emu_t *emu, uintptr_t fcn) { vFXLi_t fn = (vFXLi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12)); } void vFXLL_32(x64emu_t *emu, uintptr_t fcn) { vFXLL_t fn = (vFXLL_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12))); } void vFXLp_32(x64emu_t *emu, uintptr_t fcn) { vFXLp_t fn = (vFXLp_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12)); } void vFXpi_32(x64emu_t *emu, uintptr_t fcn) { vFXpi_t fn = (vFXpi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12)); } @@ -1872,6 +1893,7 @@ void IFpIi_32(x64emu_t *emu, uintptr_t fcn) { IFpIi_t fn = (IFpIi_t)fcn; ui64_t void CFipp_32(x64emu_t *emu, uintptr_t fcn) { CFipp_t fn = (CFipp_t)fcn; R_EAX = (unsigned char)fn(from_ptri(int32_t, R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12)); } void CFuUu_32(x64emu_t *emu, uintptr_t fcn) { CFuUu_t fn = (CFuUu_t)fcn; R_EAX = (unsigned char)fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(uint64_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 16)); } void CFuff_32(x64emu_t *emu, uintptr_t fcn) { CFuff_t fn = (CFuff_t)fcn; R_EAX = (unsigned char)fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(float, R_ESP + 8), from_ptri(float, R_ESP + 12)); } +void WFXip_32(x64emu_t *emu, uintptr_t fcn) { WFXip_t fn = (WFXip_t)fcn; R_EAX = (unsigned short)fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } void uFEpu_32(x64emu_t *emu, uintptr_t fcn) { uFEpu_t fn = (uFEpu_t)fcn; R_EAX = (uint32_t)fn(emu, from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8)); } void uFEpL_32(x64emu_t *emu, uintptr_t fcn) { uFEpL_t fn = (uFEpL_t)fcn; R_EAX = (uint32_t)fn(emu, from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8))); } void uFilp_32(x64emu_t *emu, uintptr_t fcn) { uFilp_t fn = (uFilp_t)fcn; R_EAX = (uint32_t)fn(from_ptri(int32_t, R_ESP + 4), from_long(from_ptri(long_t, R_ESP + 8)), from_ptriv(R_ESP + 12)); } @@ -1977,6 +1999,7 @@ void iFXbiip_i_32(x64emu_t *emu, uintptr_t fcn) { iFXbiip_i_t fn = (iFXbiip_i_t) void vFXLbpLiL__32(x64emu_t *emu, uintptr_t fcn) { vFXLbpLiL__t fn = (vFXLbpLiL__t)fcn; struct_pLiL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_pLiL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_pLiL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXLbpLiL__32(x64emu_t *emu, uintptr_t fcn) { iFXLbpLiL__t fn = (iFXLbpLiL__t)fcn; struct_pLiL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_pLiL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_pLiL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXLbLLii__32(x64emu_t *emu, uintptr_t fcn) { iFXLbLLii__t fn = (iFXLbLLii__t)fcn; struct_LLii_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLii(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLii(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } +void pFXrLiiuL_p_32(x64emu_t *emu, uintptr_t fcn) { pFXrLiiuL_p_t fn = (pFXrLiiuL_p_t)fcn; struct_LiiuL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_LiiuL(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12))); } void iFXLbLWWWcc__32(x64emu_t *emu, uintptr_t fcn) { iFXLbLWWWcc__t fn = (iFXLbLWWWcc__t)fcn; struct_LWWWcc_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LWWWcc(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFirLLLL_BLLLL__32(x64emu_t *emu, uintptr_t fcn) { iFirLLLL_BLLLL__t fn = (iFirLLLL_BLLLL__t)fcn; struct_LLLL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_LLLL(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_LLLL_t arg_12={0}; R_EAX = fn(from_ptri(int32_t, R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void pFppriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fcn) { pFppriiiiiiiiilt__t fn = (pFppriiiiiiiiilt__t)fcn; struct_iiiiiiiiilt_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_iiiiiiiiilt(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL)); } @@ -2188,8 +2211,8 @@ void pFpLiS_32(x64emu_t *emu, uintptr_t fcn) { pFpLiS_t fn = (pFpLiS_t)fcn; R_EA void pFppLL_32(x64emu_t *emu, uintptr_t fcn) { pFppLL_t fn = (pFppLL_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)))); } void pFpppp_32(x64emu_t *emu, uintptr_t fcn) { pFpppp_t fn = (pFpppp_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16))); } void pFXiii_32(x64emu_t *emu, uintptr_t fcn) { pFXiii_t fn = (pFXiii_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16))); } +void pFXiip_32(x64emu_t *emu, uintptr_t fcn) { pFXiip_t fn = (pFXiip_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16))); } void pFXCip_32(x64emu_t *emu, uintptr_t fcn) { pFXCip_t fn = (pFXCip_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(uint8_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16))); } -void pFXLpi_32(x64emu_t *emu, uintptr_t fcn) { pFXLpi_t fn = (pFXLpi_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16))); } void pFXLpp_32(x64emu_t *emu, uintptr_t fcn) { pFXLpp_t fn = (pFXLpp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16))); } void pFXppp_32(x64emu_t *emu, uintptr_t fcn) { pFXppp_t fn = (pFXppp_t)fcn; R_EAX = to_ptrv(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16))); } void vFbp_ppp_32(x64emu_t *emu, uintptr_t fcn) { vFbp_ppp_t fn = (vFbp_ppp_t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } @@ -2218,6 +2241,7 @@ void iFXLubiiiiiLi__32(x64emu_t *emu, uintptr_t fcn) { iFXLubiiiiiLi__t fn = (iF void vFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fcn) { vFXLbLLLLLLLLLL_L_t fn = (vFXLbLLLLLLLLLL_L_t)fcn; struct_LLLLLLLLLL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLLLLLLLLL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLLLLLLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fcn) { iFXLbLLLLLLLLLL_L_t fn = (iFXLbLLLLLLLLLL_L_t)fcn; struct_LLLLLLLLLL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLLLLLLLLL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLLLLLLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void LFpLpriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fcn) { LFpLpriiiiiiiiilt__t fn = (LFpLpriiiiiiiiilt__t)fcn; struct_iiiiiiiiilt_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_iiiiiiiiilt(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL)); } +void iFXipBWWWWWWWWWuip__32(x64emu_t *emu, uintptr_t fcn) { iFXipBWWWWWWWWWuip__t fn = (iFXipBWWWWWWWWWuip__t)fcn; struct_WWWWWWWWWuip_t arg_16={0}; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_WWWWWWWWWuip(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iFXLbLWWWcc_bLWWWcc__32(x64emu_t *emu, uintptr_t fcn) { iFXLbLWWWcc_bLWWWcc__t fn = (iFXLbLWWWcc_bLWWWcc__t)fcn; struct_LWWWcc_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LWWWcc(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_LWWWcc_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_LWWWcc(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iFXLLbLLLLiiiLLilliLL__32(x64emu_t *emu, uintptr_t fcn) { iFXLLbLLLLiiiLLilliLL__t fn = (iFXLLbLLLLiiiLLilliLL__t)fcn; struct_LLLLiiiLLilliLL_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_LLLLiiiLLilliLL(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_LLLLiiiLLilliLL(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void iFpruuipWCCp_buuipWCCp_i_32(x64emu_t *emu, uintptr_t fcn) { iFpruuipWCCp_buuipWCCp_i_t fn = (iFpruuipWCCp_buuipWCCp_i_t)fcn; struct_uuipWCCp_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_uuipWCCp(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_uuipWCCp_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_uuipWCCp(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptri(int32_t, R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_uuipWCCp(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } @@ -2373,7 +2397,6 @@ void LFEppLL_32(x64emu_t *emu, uintptr_t fcn) { LFEppLL_t fn = (LFEppLL_t)fcn; R void LFpLppa_32(x64emu_t *emu, uintptr_t fcn) { LFpLppa_t fn = (LFpLppa_t)fcn; R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_locale(from_ptri(ptr_t, R_ESP + 20)))); } void LFXLuuu_32(x64emu_t *emu, uintptr_t fcn) { LFXLuuu_t fn = (LFXLuuu_t)fcn; R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(uint32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20))); } void LFXLpuu_32(x64emu_t *emu, uintptr_t fcn) { LFXLpuu_t fn = (LFXLpuu_t)fcn; R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20))); } -void LFXLpLp_32(x64emu_t *emu, uintptr_t fcn) { LFXLpLp_t fn = (LFXLpLp_t)fcn; R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(R_ESP + 20))); } void LFXpppi_32(x64emu_t *emu, uintptr_t fcn) { LFXpppi_t fn = (LFXpppi_t)fcn; R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20))); } void pFEppip_32(x64emu_t *emu, uintptr_t fcn) { pFEppip_t fn = (pFEppip_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16))); } void pFEXipp_32(x64emu_t *emu, uintptr_t fcn) { pFEXipp_t fn = (pFEXipp_t)fcn; R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16))); } @@ -2402,11 +2425,13 @@ void iFiiuBp_Bp__32(x64emu_t *emu, uintptr_t fcn) { iFiiuBp_Bp__t fn = (iFiiuBp_ void vFbp_ppibup__32(x64emu_t *emu, uintptr_t fcn) { vFbp_ppibup__t fn = (vFbp_ppibup__t)fcn; struct_p_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_p(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); struct_up_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_up(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_up(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void iFEXbpLiL_pp_32(x64emu_t *emu, uintptr_t fcn) { iFEXbpLiL_pp_t fn = (iFEXbpLiL_pp_t)fcn; struct_pLiL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pLiL(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); R_EAX = fn(emu, getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pLiL(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFpppbp_bup__32(x64emu_t *emu, uintptr_t fcn) { iFpppbp_bup__t fn = (iFpppbp_bup__t)fcn; struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_up_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_up(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_up(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } +void LFXLrLiiuL_Lp_32(x64emu_t *emu, uintptr_t fcn) { LFXLrLiiuL_Lp_t fn = (LFXLrLiiuL_Lp_t)fcn; struct_LiiuL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LiiuL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ulong(fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(R_ESP + 20))); } +void pFEXLrLiiuL_i_32(x64emu_t *emu, uintptr_t fcn) { pFEXLrLiiuL_i_t fn = (pFEXLrLiiuL_i_t)fcn; struct_LiiuL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LiiuL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptri(int32_t, R_ESP + 16))); } void iFXbp_iubpLiL__32(x64emu_t *emu, uintptr_t fcn) { iFXbp_iubpLiL__t fn = (iFXbp_iubpLiL__t)fcn; struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_pLiL_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_pLiL(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_pLiL(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void iFXLiubiiiiiLi__32(x64emu_t *emu, uintptr_t fcn) { iFXLiubiiiiiLi__t fn = (iFXLiubiiiiiLi__t)fcn; struct_iiiiiLi_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_iiiiiLi(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_iiiiiLi(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void LFLbp_bL_bp_bL__32(x64emu_t *emu, uintptr_t fcn) { LFLbp_bL_bp_bL__t fn = (LFLbp_bL_bp_bL__t)fcn; struct_p_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_p(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_p_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_p(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_L_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_L(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = to_ulong(fn(from_ulong(from_ptri(ulong_t, R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL)); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void vFXLbLLLLLLLLLL_iL_32(x64emu_t *emu, uintptr_t fcn) { vFXLbLLLLLLLLLL_iL_t fn = (vFXLbLLLLLLLLLL_iL_t)fcn; struct_LLLLLLLLLL_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_LLLLLLLLLL(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptri(int32_t, R_ESP + 16), from_ulong(from_ptri(ulong_t, R_ESP + 20))); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_LLLLLLLLLL(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } -void iFXiiibpLiiiLLLii__32(x64emu_t *emu, uintptr_t fcn) { iFXiiibpLiiiLLLii__t fn = (iFXiiibpLiiiLLLii__t)fcn; struct_pLiiiLLLii_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_pLiiiLLLii(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_pLiiiLLLii(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } +void iFXiiiBpLiiiLLLii__32(x64emu_t *emu, uintptr_t fcn) { iFXiiiBpLiiiLLLii__t fn = (iFXiiiBpLiiiLLLii__t)fcn; struct_pLiiiLLLii_t arg_20={0}; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_pLiiiLLLii(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void LFpLpriiiiiiiiilt_a_32(x64emu_t *emu, uintptr_t fcn) { LFpLpriiiiiiiiilt_a_t fn = (LFpLpriiiiiiiiilt_a_t)fcn; struct_iiiiiiiiilt_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_iiiiiiiiilt(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, from_locale(from_ptri(ptr_t, R_ESP + 20)))); } void iFXLpbLWWWcc_bLWWWcc__32(x64emu_t *emu, uintptr_t fcn) { iFXLpbLWWWcc_bLWWWcc__t fn = (iFXLpbLWWWcc_bLWWWcc__t)fcn; struct_LWWWcc_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_LWWWcc(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_LWWWcc_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_LWWWcc(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void iFXLpBLWWWcc_BLWWWcc__32(x64emu_t *emu, uintptr_t fcn) { iFXLpBLWWWcc_BLWWWcc__t fn = (iFXLpBLWWWcc_BLWWWcc__t)fcn; struct_LWWWcc_t arg_16={0}; struct_LWWWcc_t arg_20={0}; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_LWWWcc(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } @@ -2480,6 +2505,7 @@ void vFXiLppi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLppi_t fn = (vFXiLppi_t)fcn void vFXLiiii_32(x64emu_t *emu, uintptr_t fcn) { vFXLiiii_t fn = (vFXLiiii_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_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)); } void vFXLiiiL_32(x64emu_t *emu, uintptr_t fcn) { vFXLiiiL_t fn = (vFXLiiiL_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_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_ulong(from_ptri(ulong_t, R_ESP + 24))); } void vFXLiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXLiipi_t fn = (vFXLiipi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20), from_ptri(int32_t, R_ESP + 24)); } +void vFXLpppi_32(x64emu_t *emu, uintptr_t fcn) { vFXLpppi_t fn = (vFXLpppi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptri(int32_t, R_ESP + 24)); } void iFEiippi_32(x64emu_t *emu, uintptr_t fcn) { iFEiippi_t fn = (iFEiippi_t)fcn; R_EAX = fn(emu, from_ptri(int32_t, R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20)); } void iFEuppLp_32(x64emu_t *emu, uintptr_t fcn) { iFEuppLp_t fn = (iFEuppLp_t)fcn; R_EAX = fn(emu, from_ptri(uint32_t, R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(R_ESP + 20)); } void iFEpiuuu_32(x64emu_t *emu, uintptr_t fcn) { iFEpiuuu_t fn = (iFEpiuuu_t)fcn; R_EAX = fn(emu, from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20)); } @@ -2511,6 +2537,7 @@ void iFXLppii_32(x64emu_t *emu, uintptr_t fcn) { iFXLppii_t fn = (iFXLppii_t)fcn void iFXLpppp_32(x64emu_t *emu, uintptr_t fcn) { iFXLpppp_t fn = (iFXLpppp_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24)); } void iFXpIppp_32(x64emu_t *emu, uintptr_t fcn) { iFXpIppp_t fn = (iFXpIppp_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int64_t, R_ESP + 12), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24), from_ptriv(R_ESP + 28)); } void iFXpuiii_32(x64emu_t *emu, uintptr_t fcn) { iFXpuiii_t fn = (iFXpuiii_t)fcn; R_EAX = 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)); } +void iFXpLiWL_32(x64emu_t *emu, uintptr_t fcn) { iFXpLiWL_t fn = (iFXpLiWL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptri(int32_t, R_ESP + 16), from_ptri(uint16_t, R_ESP + 20), from_ulong(from_ptri(ulong_t, R_ESP + 24))); } void iFXpLLiL_32(x64emu_t *emu, uintptr_t fcn) { iFXpLLiL_t fn = (iFXpLLiL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ulong(from_ptri(ulong_t, R_ESP + 24))); } void iFXppppi_32(x64emu_t *emu, uintptr_t fcn) { iFXppppi_t fn = (iFXppppi_t)fcn; R_EAX = fn(getDisplay(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_ptri(int32_t, R_ESP + 24)); } void iFXppppp_32(x64emu_t *emu, uintptr_t fcn) { iFXppppp_t fn = (iFXppppp_t)fcn; R_EAX = fn(getDisplay(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)); } @@ -2609,12 +2636,14 @@ void iFXLpiiuu_32(x64emu_t *emu, uintptr_t fcn) { iFXLpiiuu_t fn = (iFXLpiiuu_t) void iFXLpiipi_32(x64emu_t *emu, uintptr_t fcn) { iFXLpiipi_t fn = (iFXLpiipi_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptriv(R_ESP + 24), from_ptri(int32_t, R_ESP + 28)); } void iFXLppiii_32(x64emu_t *emu, uintptr_t fcn) { iFXLppiii_t fn = (iFXLppiii_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28)); } void iFXpiipii_32(x64emu_t *emu, uintptr_t fcn) { iFXpiipii_t fn = (iFXpiipii_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28)); } +void iFXpLiWwL_32(x64emu_t *emu, uintptr_t fcn) { iFXpLiWwL_t fn = (iFXpLiWwL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptri(int32_t, R_ESP + 16), from_ptri(uint16_t, R_ESP + 20), from_ptri(int16_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28))); } void iFXpLuuii_32(x64emu_t *emu, uintptr_t fcn) { iFXpLuuii_t fn = (iFXpLuuii_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptri(uint32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28)); } void uFuippppp_32(x64emu_t *emu, uintptr_t fcn) { uFuippppp_t fn = (uFuippppp_t)fcn; R_EAX = (uint32_t)fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_t, 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)); } void pFEpiiiiu_32(x64emu_t *emu, uintptr_t fcn) { pFEpiiiiu_t fn = (pFEpiiiiu_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ptri(int32_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(uint32_t, R_ESP + 24))); } void pFEpLiiii_32(x64emu_t *emu, uintptr_t fcn) { pFEpLiiii_t fn = (pFEpLiiii_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_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))); } void pFEpLiiiI_32(x64emu_t *emu, uintptr_t fcn) { pFEpLiiiI_t fn = (pFEpLiiiI_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_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(int64_t, R_ESP + 24))); } void pFEpLiiil_32(x64emu_t *emu, uintptr_t fcn) { pFEpLiiil_t fn = (pFEpLiiil_t)fcn; R_EAX = to_ptrv(fn(emu, from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_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_long(from_ptri(long_t, R_ESP + 24)))); } +void vFXLLiiibl__32(x64emu_t *emu, uintptr_t fcn) { vFXLLiiibl__t fn = (vFXLLiiibl__t)fcn; struct_l_t arg_28={0}; if (*(ptr_t*)(from_ptr((R_ESP + 28)))) from_struct_l(&arg_28, *(ptr_t*)(from_ptr((R_ESP + 28)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_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), *(ptr_t*)(from_ptr((R_ESP + 28))) ? &arg_28 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 28)))) to_struct_l(*(ptr_t*)(from_ptr((R_ESP + 28))), &arg_28); } void iFEpppibL_p_32(x64emu_t *emu, uintptr_t fcn) { iFEpppibL_p_t fn = (iFEpppibL_p_t)fcn; struct_L_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_L(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); R_EAX = fn(emu, from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ptriv(R_ESP + 24)); if (*(ptr_t*)(from_ptr((R_ESP + 20)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 20))), &arg_20); } void iFXLibL_ubL_u_32(x64emu_t *emu, uintptr_t fcn) { iFXLibL_ubL_u_t fn = (iFXLibL_ubL_u_t)fcn; struct_L_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_L(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_L_t arg_24={0}; if (*(ptr_t*)(from_ptr((R_ESP + 24)))) from_struct_L(&arg_24, *(ptr_t*)(from_ptr((R_ESP + 24)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, from_ptri(uint32_t, R_ESP + 20), *(ptr_t*)(from_ptr((R_ESP + 24))) ? &arg_24 : NULL, from_ptri(uint32_t, R_ESP + 28)); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 24)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 24))), &arg_24); } void vFXLpiibpiip_i_32(x64emu_t *emu, uintptr_t fcn) { vFXLpiibpiip_i_t fn = (vFXLpiibpiip_i_t)fcn; struct_piip_t arg_24={0}; if (*(ptr_t*)(from_ptr((R_ESP + 24)))) from_struct_piip(&arg_24, *(ptr_t*)(from_ptr((R_ESP + 24)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), *(ptr_t*)(from_ptr((R_ESP + 24))) ? &arg_24 : NULL, from_ptri(int32_t, R_ESP + 28)); if (*(ptr_t*)(from_ptr((R_ESP + 24)))) to_struct_piip(*(ptr_t*)(from_ptr((R_ESP + 24))), &arg_24); } @@ -2651,6 +2680,7 @@ void vFuuufffff_32(x64emu_t *emu, uintptr_t fcn) { vFuuufffff_t fn = (vFuuufffff void vFffffffff_32(x64emu_t *emu, uintptr_t fcn) { vFffffffff_t fn = (vFffffffff_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)); } void vFXiLpiiuu_32(x64emu_t *emu, uintptr_t fcn) { vFXiLpiiuu_t fn = (vFXiLpiiuu_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(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)); } void vFXLiiiLii_32(x64emu_t *emu, uintptr_t fcn) { vFXLiiiLii_t fn = (vFXLiiiLii_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_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_ulong(from_ptri(ulong_t, R_ESP + 24)), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32)); } +void vFXLLLiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXLLLiipi_t fn = (vFXLLLiipi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptriv(R_ESP + 28), from_ptri(int32_t, R_ESP + 32)); } void vFXLppiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXLppiipi_t fn = (vFXLppiipi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptriv(R_ESP + 28), from_ptri(int32_t, R_ESP + 32)); } void iFEpippppp_32(x64emu_t *emu, uintptr_t fcn) { iFEpippppp_t fn = (iFEpippppp_t)fcn; R_EAX = fn(emu, from_ptriv(R_ESP + 4), from_ptri(int32_t, 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)); } void iFEpLiLppp_32(x64emu_t *emu, uintptr_t fcn) { iFEpLiLppp_t fn = (iFEpLiLppp_t)fcn; R_EAX = fn(emu, from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(R_ESP + 20), from_ptriv(R_ESP + 24), from_ptriv(R_ESP + 28)); } @@ -2709,6 +2739,7 @@ void pFEuiiiuuuu_32(x64emu_t *emu, uintptr_t fcn) { pFEuiiiuuuu_t fn = (pFEuiiiu void pFEXLiiuuLi_32(x64emu_t *emu, uintptr_t fcn) { pFEXLiiuuLi_t fn = (pFEXLiiuuLi_t)fcn; R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28)), from_ptri(int32_t, R_ESP + 32))); } void iFXLbL_pppppp_32(x64emu_t *emu, uintptr_t fcn) { iFXLbL_pppppp_t fn = (iFXLbL_pppppp_t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, 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)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFXLbL_bL_ppppp_32(x64emu_t *emu, uintptr_t fcn) { iFXLbL_bL_ppppp_t fn = (iFXLbL_bL_ppppp_t)fcn; struct_L_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_L(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); struct_L_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_L(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, 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)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } +void vFXiLLrLiiuL_iipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLrLiiuL_iipi_t fn = (vFXiLLrLiiuL_iipi_t)fcn; struct_LiiuL_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_LiiuL(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptriv(R_ESP + 32), from_ptri(int32_t, R_ESP + 36)); } void pFEXbpLiLLLii_uipbLipi_uu_32(x64emu_t *emu, uintptr_t fcn) { pFEXbpLiLLLii_uipbLipi_uu_t fn = (pFEXbpLiLLLii_uipbLipi_uu_t)fcn; struct_pLiLLLii_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_pLiLLLii(&arg_8, *(ptr_t*)(from_ptr((R_ESP + 8)))); struct_Lipi_t arg_24={0}; if (*(ptr_t*)(from_ptr((R_ESP + 24)))) from_struct_Lipi(&arg_24, *(ptr_t*)(from_ptr((R_ESP + 24)))); R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20), *(ptr_t*)(from_ptr((R_ESP + 24))) ? &arg_24 : NULL, from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32))); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_pLiLLLii(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); if (*(ptr_t*)(from_ptr((R_ESP + 24)))) to_struct_Lipi(*(ptr_t*)(from_ptr((R_ESP + 24))), &arg_24); } void vFEXLpppippp_32(x64emu_t *emu, uintptr_t fcn) { vFEXLpppippp_t fn = (vFEXLpppippp_t)fcn; fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptriv(R_ESP + 28), from_ptriv(R_ESP + 32), from_ptriv(R_ESP + 36)); } void vFiiiiiiiiii_32(x64emu_t *emu, uintptr_t fcn) { vFiiiiiiiiii_t fn = (vFiiiiiiiiii_t)fcn; fn(from_ptri(int32_t, R_ESP + 4), from_ptri(int32_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(int32_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)); } @@ -2750,12 +2781,12 @@ void vFuffffffffff_32(x64emu_t *emu, uintptr_t fcn) { vFuffffffffff_t fn = (vFuf void vFUufffffffff_32(x64emu_t *emu, uintptr_t fcn) { vFUufffffffff_t fn = (vFUufffffffff_t)fcn; fn(from_ptri(uint64_t, R_ESP + 4), from_ptri(uint32_t, 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)); } void vFpiiiiiiiiuu_32(x64emu_t *emu, uintptr_t fcn) { vFpiiiiiiiiuu_t fn = (vFpiiiiiiiiuu_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(int32_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(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(uint32_t, R_ESP + 44)); } void vFpipipiipiiu_32(x64emu_t *emu, uintptr_t fcn) { vFpipipiipiiu_t fn = (vFpipipiipiiu_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptriv(R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ptri(uint32_t, R_ESP + 44)); } -void vFXiLLpiiiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLpiiiipi_t fn = (vFXiLLpiiiipi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(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(int32_t, R_ESP + 36), from_ptriv(R_ESP + 40), from_ptri(int32_t, R_ESP + 44)); } void iFEXLppiiiiuu_32(x64emu_t *emu, uintptr_t fcn) { iFEXLppiiiiuu_t fn = (iFEXLppiiiiuu_t)fcn; R_EAX = fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(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)); } void iFEXpLLiiLWpi_32(x64emu_t *emu, uintptr_t fcn) { iFEXpLLiiLWpi_t fn = (iFEXpLLiiLWpi_t)fcn; R_EAX = fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20), from_ptri(int32_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28)), from_ptri(uint16_t, R_ESP + 32), from_ptriv(R_ESP + 36), from_ptri(int32_t, R_ESP + 40)); } void iFuiiiiuuiiip_32(x64emu_t *emu, uintptr_t fcn) { iFuiiiiuuiiip_t fn = (iFuiiiiuuiiip_t)fcn; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_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(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_ptriv(R_ESP + 44)); } void iFXLLpiiuuiiL_32(x64emu_t *emu, uintptr_t fcn) { iFXLLpiiuuiiL_t fn = (iFXLLpiiuuiiL_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(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_ulong(from_ptri(ulong_t, R_ESP + 44))); } void pFEXpuiipuuii_32(x64emu_t *emu, uintptr_t fcn) { pFEXpuiipuuii_t fn = (pFEXpuiipuuii_t)fcn; R_EAX = to_ptrv(fn(emu, 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_ptriv(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))); } +void vFXiLLrLiiuL_iiiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLrLiiuL_iiiipi_t fn = (vFXiLLrLiiuL_iiiipi_t)fcn; struct_LiiuL_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_LiiuL(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptriv(R_ESP + 40), from_ptri(int32_t, R_ESP + 44)); } void iFXLibL_iiiibL_bL_bL__32(x64emu_t *emu, uintptr_t fcn) { iFXLibL_iiiibL_bL_bL__t fn = (iFXLibL_iiiibL_bL_bL__t)fcn; struct_L_t arg_16={0}; if (*(ptr_t*)(from_ptr((R_ESP + 16)))) from_struct_L(&arg_16, *(ptr_t*)(from_ptr((R_ESP + 16)))); struct_L_t arg_36={0}; if (*(ptr_t*)(from_ptr((R_ESP + 36)))) from_struct_L(&arg_36, *(ptr_t*)(from_ptr((R_ESP + 36)))); struct_L_t arg_40={0}; if (*(ptr_t*)(from_ptr((R_ESP + 40)))) from_struct_L(&arg_40, *(ptr_t*)(from_ptr((R_ESP + 40)))); struct_L_t arg_44={0}; if (*(ptr_t*)(from_ptr((R_ESP + 44)))) from_struct_L(&arg_44, *(ptr_t*)(from_ptr((R_ESP + 44)))); R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL, 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), *(ptr_t*)(from_ptr((R_ESP + 36))) ? &arg_36 : NULL, *(ptr_t*)(from_ptr((R_ESP + 40))) ? &arg_40 : NULL, *(ptr_t*)(from_ptr((R_ESP + 44))) ? &arg_44 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); if (*(ptr_t*)(from_ptr((R_ESP + 36)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 36))), &arg_36); if (*(ptr_t*)(from_ptr((R_ESP + 40)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 40))), &arg_40); if (*(ptr_t*)(from_ptr((R_ESP + 44)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 44))), &arg_44); } void vFuiiiiiiiiuUC_32(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiiuUC_t fn = (vFuiiiiiiiiuUC_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_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(int32_t, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(uint64_t, R_ESP + 44), from_ptri(uint8_t, R_ESP + 52)); } void vFuiiiiiiiuuip_32(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiuuip_t fn = (vFuiiiiiiiuuip_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_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(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_ptriv(R_ESP + 48)); } @@ -2765,10 +2796,10 @@ void vFuuiiiiiiiuup_32(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiiiiuup_t fn = (vF void vFuuuuuuuuuuuu_32(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuu_t fn = (vFuuuuuuuuuuuu_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(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(uint32_t, R_ESP + 44), from_ptri(uint32_t, R_ESP + 48)); } void vFffffffffffff_32(x64emu_t *emu, uintptr_t fcn) { vFffffffffffff_t fn = (vFffffffffffff_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)); } void vFXiLLpiiiipii_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLpiiiipii_t fn = (vFXiLLpiiiipii_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(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(int32_t, R_ESP + 36), from_ptriv(R_ESP + 40), from_ptri(int32_t, R_ESP + 44), from_ptri(int32_t, R_ESP + 48)); } -void vFXiLLpLiiiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLpLiiiipi_t fn = (vFXiLLpLiiiipi_t)fcn; fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptriv(R_ESP + 20), from_ulong(from_ptri(ulong_t, R_ESP + 24)), from_ptri(int32_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_ptriv(R_ESP + 44), from_ptri(int32_t, R_ESP + 48)); } void iFEXLppiiiiuui_32(x64emu_t *emu, uintptr_t fcn) { iFEXLppiiiiuui_t fn = (iFEXLppiiiiuui_t)fcn; R_EAX = fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12), from_ptriv(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)); } void iFXLpppppppppp_32(x64emu_t *emu, uintptr_t fcn) { iFXLpppppppppp_t fn = (iFXLpppppppppp_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, 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)); } void pFEXLiiuuLipii_32(x64emu_t *emu, uintptr_t fcn) { pFEXLiiuuLipii_t fn = (pFEXLiiuuLipii_t)fcn; R_EAX = to_ptrv(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28)), from_ptri(int32_t, R_ESP + 32), from_ptriv(R_ESP + 36), from_ptri(int32_t, R_ESP + 40), from_ptri(int32_t, R_ESP + 44))); } +void vFXiLLrLiiuL_Liiiipi_32(x64emu_t *emu, uintptr_t fcn) { vFXiLLrLiiuL_Liiiipi_t fn = (vFXiLLrLiiuL_Liiiipi_t)fcn; struct_LiiuL_t arg_20={0}; if (*(ptr_t*)(from_ptr((R_ESP + 20)))) from_struct_LiiuL(&arg_20, *(ptr_t*)(from_ptr((R_ESP + 20)))); fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ulong(from_ptri(ulong_t, R_ESP + 16)), *(ptr_t*)(from_ptr((R_ESP + 20))) ? &arg_20 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 24)), from_ptri(int32_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_ptriv(R_ESP + 44), from_ptri(int32_t, R_ESP + 48)); } void iFXLLlliLBL_pBL_BL_Bp__32(x64emu_t *emu, uintptr_t fcn) { iFXLLlliLBL_pBL_BL_Bp__t fn = (iFXLLlliLBL_pBL_BL_Bp__t)fcn; struct_L_t arg_32={0}; struct_L_t arg_40={0}; struct_L_t arg_44={0}; struct_p_t arg_48={0}; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_long(from_ptri(long_t, R_ESP + 16)), from_long(from_ptri(long_t, R_ESP + 20)), from_ptri(int32_t, R_ESP + 24), from_ulong(from_ptri(ulong_t, R_ESP + 28)), *(ptr_t*)(from_ptr((R_ESP + 32))) ? &arg_32 : NULL, from_ptriv(R_ESP + 36), *(ptr_t*)(from_ptr((R_ESP + 40))) ? &arg_40 : NULL, *(ptr_t*)(from_ptr((R_ESP + 44))) ? &arg_44 : NULL, *(ptr_t*)(from_ptr((R_ESP + 48))) ? &arg_48 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 32)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 32))), &arg_32); if (*(ptr_t*)(from_ptr((R_ESP + 40)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 40))), &arg_40); if (*(ptr_t*)(from_ptr((R_ESP + 44)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 44))), &arg_44); if (*(ptr_t*)(from_ptr((R_ESP + 48)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 48))), &arg_48); } void vFuiiiiiiiiiuup_32(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiiiuup_t fn = (vFuiiiiiiiiiuup_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_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(int32_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(uint32_t, R_ESP + 44), from_ptri(uint32_t, R_ESP + 48), from_ptriv(R_ESP + 52)); } void vFuuuuuuuuuuuuu_32(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuuu_t fn = (vFuuuuuuuuuuuuu_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(uint32_t, R_ESP + 20), from_ptri(uint32_t, R_ESP + 24), from_ptri(uint32_t, R_ESP + 28), from_ptri(uint32_t, R_ESP + 32), from_ptri(uint32_t, R_ESP + 36), from_ptri(uint32_t, R_ESP + 40), from_ptri(uint32_t, R_ESP + 44), from_ptri(uint32_t, R_ESP + 48), from_ptri(uint32_t, R_ESP + 52)); } @@ -2779,6 +2810,7 @@ void iFddddpppddpppp_32(x64emu_t *emu, uintptr_t fcn) { iFddddpppddpppp_t fn = ( void iFXippuuuiipppp_32(x64emu_t *emu, uintptr_t fcn) { iFXippuuuiipppp_t fn = (iFXippuuuiipppp_t)fcn; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(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_ptriv(R_ESP + 40), from_ptriv(R_ESP + 44), from_ptriv(R_ESP + 48), from_ptriv(R_ESP + 52)); } void uFippuuuulllipp_32(x64emu_t *emu, uintptr_t fcn) { uFippuuuulllipp_t fn = (uFippuuuulllipp_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_long(from_ptri(long_t, R_ESP + 32)), from_long(from_ptri(long_t, R_ESP + 36)), from_long(from_ptri(long_t, R_ESP + 40)), from_ptri(int32_t, R_ESP + 44), from_ptriv(R_ESP + 48), from_ptriv(R_ESP + 52)); } void LFEXLiiuuuiupLp_32(x64emu_t *emu, uintptr_t fcn) { LFEXLiiuuuiupLp_t fn = (LFEXLiiuuuiupLp_t)fcn; R_EAX = to_ulong(fn(emu, getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_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(uint32_t, R_ESP + 36), from_ptriv(R_ESP + 40), from_ulong(from_ptri(ulong_t, R_ESP + 44)), from_ptriv(R_ESP + 48))); } +void iFXLLlliiLBL_pBL_BL_Bp__32(x64emu_t *emu, uintptr_t fcn) { iFXLLlliiLBL_pBL_BL_Bp__t fn = (iFXLLlliiLBL_pBL_BL_Bp__t)fcn; struct_L_t arg_36={0}; struct_L_t arg_44={0}; struct_L_t arg_48={0}; struct_p_t arg_52={0}; R_EAX = fn(getDisplay(from_ptriv(R_ESP + 4)), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_long(from_ptri(long_t, R_ESP + 16)), from_long(from_ptri(long_t, R_ESP + 20)), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ulong(from_ptri(ulong_t, R_ESP + 32)), *(ptr_t*)(from_ptr((R_ESP + 36))) ? &arg_36 : NULL, from_ptriv(R_ESP + 40), *(ptr_t*)(from_ptr((R_ESP + 44))) ? &arg_44 : NULL, *(ptr_t*)(from_ptr((R_ESP + 48))) ? &arg_48 : NULL, *(ptr_t*)(from_ptr((R_ESP + 52))) ? &arg_52 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 36)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 36))), &arg_36); if (*(ptr_t*)(from_ptr((R_ESP + 44)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 44))), &arg_44); if (*(ptr_t*)(from_ptr((R_ESP + 48)))) to_struct_L(*(ptr_t*)(from_ptr((R_ESP + 48))), &arg_48); if (*(ptr_t*)(from_ptr((R_ESP + 52)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 52))), &arg_52); } void vFuffiiffiiffiip_32(x64emu_t *emu, uintptr_t fcn) { vFuffiiffiiffiip_t fn = (vFuffiiffiiffiip_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(float, R_ESP + 8), from_ptri(float, R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 20), from_ptri(float, R_ESP + 24), from_ptri(float, R_ESP + 28), from_ptri(int32_t, R_ESP + 32), from_ptri(int32_t, R_ESP + 36), from_ptri(float, R_ESP + 40), from_ptri(float, R_ESP + 44), from_ptri(int32_t, R_ESP + 48), from_ptri(int32_t, R_ESP + 52), from_ptriv(R_ESP + 56)); } void vFuddiiddiiddiip_32(x64emu_t *emu, uintptr_t fcn) { vFuddiiddiiddiip_t fn = (vFuddiiddiiddiip_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(double, R_ESP + 8), from_ptri(double, R_ESP + 16), from_ptri(int32_t, R_ESP + 24), from_ptri(int32_t, R_ESP + 28), from_ptri(double, R_ESP + 32), from_ptri(double, R_ESP + 40), from_ptri(int32_t, R_ESP + 48), from_ptri(int32_t, R_ESP + 52), from_ptri(double, R_ESP + 56), from_ptri(double, R_ESP + 64), from_ptri(int32_t, R_ESP + 72), from_ptri(int32_t, R_ESP + 76), from_ptriv(R_ESP + 80)); } void vFuiiiiiuiiiiilll_32(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiuiiiiilll_t fn = (vFuiiiiiuiiiiilll_t)fcn; fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_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(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(int32_t, R_ESP + 48), from_long(from_ptri(long_t, R_ESP + 52)), from_long(from_ptri(long_t, R_ESP + 56)), from_long(from_ptri(long_t, R_ESP + 60))); } diff --git a/src/wrapped32/generated/wrapper32.h b/src/wrapped32/generated/wrapper32.h index 499f4825..a95e2d6b 100644 --- a/src/wrapped32/generated/wrapper32.h +++ b/src/wrapped32/generated/wrapper32.h @@ -58,6 +58,7 @@ void cFc_32(x64emu_t *emu, uintptr_t fnc); void cFi_32(x64emu_t *emu, uintptr_t fnc); void cFu_32(x64emu_t *emu, uintptr_t fnc); void cFp_32(x64emu_t *emu, uintptr_t fnc); +void wFp_32(x64emu_t *emu, uintptr_t fnc); void iFv_32(x64emu_t *emu, uintptr_t fnc); void iFi_32(x64emu_t *emu, uintptr_t fnc); void iFI_32(x64emu_t *emu, uintptr_t fnc); @@ -220,6 +221,7 @@ void CFuU_32(x64emu_t *emu, uintptr_t fnc); void CFpi_32(x64emu_t *emu, uintptr_t fnc); void CFpp_32(x64emu_t *emu, uintptr_t fnc); void CFXL_32(x64emu_t *emu, uintptr_t fnc); +void WFpp_32(x64emu_t *emu, uintptr_t fnc); void uFEp_32(x64emu_t *emu, uintptr_t fnc); void uFii_32(x64emu_t *emu, uintptr_t fnc); void uFiS_32(x64emu_t *emu, uintptr_t fnc); @@ -295,6 +297,7 @@ void iFHBp__32(x64emu_t *emu, uintptr_t fnc); void iFXbL__32(x64emu_t *emu, uintptr_t fnc); void fFpBp__32(x64emu_t *emu, uintptr_t fnc); void dFpBp__32(x64emu_t *emu, uintptr_t fnc); +void LFpbL__32(x64emu_t *emu, uintptr_t fnc); void pFrl_p_32(x64emu_t *emu, uintptr_t fnc); void vFBll_l_32(x64emu_t *emu, uintptr_t fnc); void iFuBLL__32(x64emu_t *emu, uintptr_t fnc); @@ -309,6 +312,7 @@ void iFbppi_i_32(x64emu_t *emu, uintptr_t fnc); void iFXbiip__32(x64emu_t *emu, uintptr_t fnc); void iFXbLipi__32(x64emu_t *emu, uintptr_t fnc); void iFrLL_BLL__32(x64emu_t *emu, uintptr_t fnc); +void LFXrLiiuL__32(x64emu_t *emu, uintptr_t fnc); void vFbll_rllll__32(x64emu_t *emu, uintptr_t fnc); void iFXbiiuuLip__32(x64emu_t *emu, uintptr_t fnc); void iFpruuipWCCp__32(x64emu_t *emu, uintptr_t fnc); @@ -384,6 +388,7 @@ void vFplp_32(x64emu_t *emu, uintptr_t fnc); void vFppi_32(x64emu_t *emu, uintptr_t fnc); void vFppu_32(x64emu_t *emu, uintptr_t fnc); void vFppp_32(x64emu_t *emu, uintptr_t fnc); +void vFXLi_32(x64emu_t *emu, uintptr_t fnc); void vFXLL_32(x64emu_t *emu, uintptr_t fnc); void vFXLp_32(x64emu_t *emu, uintptr_t fnc); void vFXpi_32(x64emu_t *emu, uintptr_t fnc); @@ -466,6 +471,7 @@ void IFpIi_32(x64emu_t *emu, uintptr_t fnc); void CFipp_32(x64emu_t *emu, uintptr_t fnc); void CFuUu_32(x64emu_t *emu, uintptr_t fnc); void CFuff_32(x64emu_t *emu, uintptr_t fnc); +void WFXip_32(x64emu_t *emu, uintptr_t fnc); void uFEpu_32(x64emu_t *emu, uintptr_t fnc); void uFEpL_32(x64emu_t *emu, uintptr_t fnc); void uFilp_32(x64emu_t *emu, uintptr_t fnc); @@ -571,6 +577,7 @@ void iFXbiip_i_32(x64emu_t *emu, uintptr_t fnc); void vFXLbpLiL__32(x64emu_t *emu, uintptr_t fnc); void iFXLbpLiL__32(x64emu_t *emu, uintptr_t fnc); void iFXLbLLii__32(x64emu_t *emu, uintptr_t fnc); +void pFXrLiiuL_p_32(x64emu_t *emu, uintptr_t fnc); void iFXLbLWWWcc__32(x64emu_t *emu, uintptr_t fnc); void iFirLLLL_BLLLL__32(x64emu_t *emu, uintptr_t fnc); void pFppriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fnc); @@ -782,8 +789,8 @@ void pFpLiS_32(x64emu_t *emu, uintptr_t fnc); void pFppLL_32(x64emu_t *emu, uintptr_t fnc); void pFpppp_32(x64emu_t *emu, uintptr_t fnc); void pFXiii_32(x64emu_t *emu, uintptr_t fnc); +void pFXiip_32(x64emu_t *emu, uintptr_t fnc); void pFXCip_32(x64emu_t *emu, uintptr_t fnc); -void pFXLpi_32(x64emu_t *emu, uintptr_t fnc); void pFXLpp_32(x64emu_t *emu, uintptr_t fnc); void pFXppp_32(x64emu_t *emu, uintptr_t fnc); void vFbp_ppp_32(x64emu_t *emu, uintptr_t fnc); @@ -812,6 +819,7 @@ void iFXLubiiiiiLi__32(x64emu_t *emu, uintptr_t fnc); void vFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fnc); void iFXLbLLLLLLLLLL_L_32(x64emu_t *emu, uintptr_t fnc); void LFpLpriiiiiiiiilt__32(x64emu_t *emu, uintptr_t fnc); +void iFXipBWWWWWWWWWuip__32(x64emu_t *emu, uintptr_t fnc); void iFXLbLWWWcc_bLWWWcc__32(x64emu_t *emu, uintptr_t fnc); void iFXLLbLLLLiiiLLilliLL__32(x64emu_t *emu, uintptr_t fnc); void iFpruuipWCCp_buuipWCCp_i_32(x64emu_t *emu, uintptr_t fnc); @@ -967,7 +975,6 @@ void LFEppLL_32(x64emu_t *emu, uintptr_t fnc); void LFpLppa_32(x64emu_t *emu, uintptr_t fnc); void LFXLuuu_32(x64emu_t *emu, uintptr_t fnc); void LFXLpuu_32(x64emu_t *emu, uintptr_t fnc); -void LFXLpLp_32(x64emu_t *emu, uintptr_t fnc); void LFXpppi_32(x64emu_t *emu, uintptr_t fnc); void pFEppip_32(x64emu_t *emu, uintptr_t fnc); void pFEXipp_32(x64emu_t *emu, uintptr_t fnc); @@ -996,11 +1003,13 @@ void iFiiuBp_Bp__32(x64emu_t *emu, uintptr_t fnc); void vFbp_ppibup__32(x64emu_t *emu, uintptr_t fnc); void iFEXbpLiL_pp_32(x64emu_t *emu, uintptr_t fnc); void iFpppbp_bup__32(x64emu_t *emu, uintptr_t fnc); +void LFXLrLiiuL_Lp_32(x64emu_t *emu, uintptr_t fnc); +void pFEXLrLiiuL_i_32(x64emu_t *emu, uintptr_t fnc); void iFXbp_iubpLiL__32(x64emu_t *emu, uintptr_t fnc); void iFXLiubiiiiiLi__32(x64emu_t *emu, uintptr_t fnc); void LFLbp_bL_bp_bL__32(x64emu_t *emu, uintptr_t fnc); void vFXLbLLLLLLLLLL_iL_32(x64emu_t *emu, uintptr_t fnc); -void iFXiiibpLiiiLLLii__32(x64emu_t *emu, uintptr_t fnc); +void iFXiiiBpLiiiLLLii__32(x64emu_t *emu, uintptr_t fnc); void LFpLpriiiiiiiiilt_a_32(x64emu_t *emu, uintptr_t fnc); void iFXLpbLWWWcc_bLWWWcc__32(x64emu_t *emu, uintptr_t fnc); void iFXLpBLWWWcc_BLWWWcc__32(x64emu_t *emu, uintptr_t fnc); @@ -1074,6 +1083,7 @@ void vFXiLppi_32(x64emu_t *emu, uintptr_t fnc); void vFXLiiii_32(x64emu_t *emu, uintptr_t fnc); void vFXLiiiL_32(x64emu_t *emu, uintptr_t fnc); void vFXLiipi_32(x64emu_t *emu, uintptr_t fnc); +void vFXLpppi_32(x64emu_t *emu, uintptr_t fnc); void iFEiippi_32(x64emu_t *emu, uintptr_t fnc); void iFEuppLp_32(x64emu_t *emu, uintptr_t fnc); void iFEpiuuu_32(x64emu_t *emu, uintptr_t fnc); @@ -1105,6 +1115,7 @@ void iFXLppii_32(x64emu_t *emu, uintptr_t fnc); void iFXLpppp_32(x64emu_t *emu, uintptr_t fnc); void iFXpIppp_32(x64emu_t *emu, uintptr_t fnc); void iFXpuiii_32(x64emu_t *emu, uintptr_t fnc); +void iFXpLiWL_32(x64emu_t *emu, uintptr_t fnc); void iFXpLLiL_32(x64emu_t *emu, uintptr_t fnc); void iFXppppi_32(x64emu_t *emu, uintptr_t fnc); void iFXppppp_32(x64emu_t *emu, uintptr_t fnc); @@ -1203,12 +1214,14 @@ void iFXLpiiuu_32(x64emu_t *emu, uintptr_t fnc); void iFXLpiipi_32(x64emu_t *emu, uintptr_t fnc); void iFXLppiii_32(x64emu_t *emu, uintptr_t fnc); void iFXpiipii_32(x64emu_t *emu, uintptr_t fnc); +void iFXpLiWwL_32(x64emu_t *emu, uintptr_t fnc); void iFXpLuuii_32(x64emu_t *emu, uintptr_t fnc); void uFuippppp_32(x64emu_t *emu, uintptr_t fnc); void pFEpiiiiu_32(x64emu_t *emu, uintptr_t fnc); void pFEpLiiii_32(x64emu_t *emu, uintptr_t fnc); void pFEpLiiiI_32(x64emu_t *emu, uintptr_t fnc); void pFEpLiiil_32(x64emu_t *emu, uintptr_t fnc); +void vFXLLiiibl__32(x64emu_t *emu, uintptr_t fnc); void iFEpppibL_p_32(x64emu_t *emu, uintptr_t fnc); void iFXLibL_ubL_u_32(x64emu_t *emu, uintptr_t fnc); void vFXLpiibpiip_i_32(x64emu_t *emu, uintptr_t fnc); @@ -1245,6 +1258,7 @@ void vFuuufffff_32(x64emu_t *emu, uintptr_t fnc); void vFffffffff_32(x64emu_t *emu, uintptr_t fnc); void vFXiLpiiuu_32(x64emu_t *emu, uintptr_t fnc); void vFXLiiiLii_32(x64emu_t *emu, uintptr_t fnc); +void vFXLLLiipi_32(x64emu_t *emu, uintptr_t fnc); void vFXLppiipi_32(x64emu_t *emu, uintptr_t fnc); void iFEpippppp_32(x64emu_t *emu, uintptr_t fnc); void iFEpLiLppp_32(x64emu_t *emu, uintptr_t fnc); @@ -1303,6 +1317,7 @@ void pFEuiiiuuuu_32(x64emu_t *emu, uintptr_t fnc); void pFEXLiiuuLi_32(x64emu_t *emu, uintptr_t fnc); void iFXLbL_pppppp_32(x64emu_t *emu, uintptr_t fnc); void iFXLbL_bL_ppppp_32(x64emu_t *emu, uintptr_t fnc); +void vFXiLLrLiiuL_iipi_32(x64emu_t *emu, uintptr_t fnc); void pFEXbpLiLLLii_uipbLipi_uu_32(x64emu_t *emu, uintptr_t fnc); void vFEXLpppippp_32(x64emu_t *emu, uintptr_t fnc); void vFiiiiiiiiii_32(x64emu_t *emu, uintptr_t fnc); @@ -1344,12 +1359,12 @@ void vFuffffffffff_32(x64emu_t *emu, uintptr_t fnc); void vFUufffffffff_32(x64emu_t *emu, uintptr_t fnc); void vFpiiiiiiiiuu_32(x64emu_t *emu, uintptr_t fnc); void vFpipipiipiiu_32(x64emu_t *emu, uintptr_t fnc); -void vFXiLLpiiiipi_32(x64emu_t *emu, uintptr_t fnc); void iFEXLppiiiiuu_32(x64emu_t *emu, uintptr_t fnc); void iFEXpLLiiLWpi_32(x64emu_t *emu, uintptr_t fnc); void iFuiiiiuuiiip_32(x64emu_t *emu, uintptr_t fnc); void iFXLLpiiuuiiL_32(x64emu_t *emu, uintptr_t fnc); void pFEXpuiipuuii_32(x64emu_t *emu, uintptr_t fnc); +void vFXiLLrLiiuL_iiiipi_32(x64emu_t *emu, uintptr_t fnc); void iFXLibL_iiiibL_bL_bL__32(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiiiuUC_32(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiiuuip_32(x64emu_t *emu, uintptr_t fnc); @@ -1359,10 +1374,10 @@ void vFuuiiiiiiiuup_32(x64emu_t *emu, uintptr_t fnc); void vFuuuuuuuuuuuu_32(x64emu_t *emu, uintptr_t fnc); void vFffffffffffff_32(x64emu_t *emu, uintptr_t fnc); void vFXiLLpiiiipii_32(x64emu_t *emu, uintptr_t fnc); -void vFXiLLpLiiiipi_32(x64emu_t *emu, uintptr_t fnc); void iFEXLppiiiiuui_32(x64emu_t *emu, uintptr_t fnc); void iFXLpppppppppp_32(x64emu_t *emu, uintptr_t fnc); void pFEXLiiuuLipii_32(x64emu_t *emu, uintptr_t fnc); +void vFXiLLrLiiuL_Liiiipi_32(x64emu_t *emu, uintptr_t fnc); void iFXLLlliLBL_pBL_BL_Bp__32(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiiiiuup_32(x64emu_t *emu, uintptr_t fnc); void vFuuuuuuuuuuuuu_32(x64emu_t *emu, uintptr_t fnc); @@ -1373,6 +1388,7 @@ void iFddddpppddpppp_32(x64emu_t *emu, uintptr_t fnc); void iFXippuuuiipppp_32(x64emu_t *emu, uintptr_t fnc); void uFippuuuulllipp_32(x64emu_t *emu, uintptr_t fnc); void LFEXLiiuuuiupLp_32(x64emu_t *emu, uintptr_t fnc); +void iFXLLlliiLBL_pBL_BL_Bp__32(x64emu_t *emu, uintptr_t fnc); void vFuffiiffiiffiip_32(x64emu_t *emu, uintptr_t fnc); void vFuddiiddiiddiip_32(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiuiiiiilll_32(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped32/wrappedlibc.c b/src/wrapped32/wrappedlibc.c index 5f2b5ea2..779fb225 100755 --- a/src/wrapped32/wrappedlibc.c +++ b/src/wrapped32/wrappedlibc.c @@ -2650,7 +2650,6 @@ static void ctSetup() } #endif -#if 0 EXPORT void my32___register_frame_info(void* a, void* b) { // nothing @@ -2659,7 +2658,7 @@ EXPORT void* my32___deregister_frame_info(void* a) { return NULL; } - +#if 0 EXPORT void* my32____brk_addr = NULL; #endif // longjmp / setjmp diff --git a/src/wrapped32/wrappedlibc_private.h b/src/wrapped32/wrappedlibc_private.h index b60b02a0..e4bd1e58 100755 --- a/src/wrapped32/wrappedlibc_private.h +++ b/src/wrapped32/wrappedlibc_private.h @@ -2164,8 +2164,8 @@ GO(fallocate64, iFiiII) //DATAM(___brk_addr, 4) //DATA(__libc_enable_secure, 4) -//GOM(__register_frame_info, vFpp) //%%,noE faked function -//GOM(__deregister_frame_info, pFp) //%%,noE +GOM(__register_frame_info, vFpp) //%%,noE faked function +GOM(__deregister_frame_info, pFp) //%%,noE //GO(name_to_handle_at, iFipppi) // only glibc 2.14+, so may not be present... diff --git a/src/wrapped32/wrappedlibx11.c b/src/wrapped32/wrappedlibx11.c index 8f9ef6e3..16d06214 100644 --- a/src/wrapped32/wrappedlibx11.c +++ b/src/wrapped32/wrappedlibx11.c @@ -167,7 +167,7 @@ static int my32_error_handler_##A(void* dpy, void* error) { \ static my_XErrorEvent_32_t evt = {0}; \ convert_XErrorEvent_to_32(&evt, error); \ - return (int)RunFunctionFmt(my32_error_handler_fct_##A, "pp", getDisplay(dpy), &evt); \ + return (int)RunFunctionFmt(my32_error_handler_fct_##A, "pp", getDisplay(dpy), &evt); \ } SUPER() #undef GO @@ -197,10 +197,10 @@ static void* reverse_error_handlerFct(library_t* lib, void* fct) // ioerror_handler #define GO(A) \ -static uintptr_t my32_ioerror_handler_fct_##A = 0; \ -static int my32_ioerror_handler_##A(void* dpy) \ -{ \ - return (int)RunFunctionFmt(my32_ioerror_handler_fct_##A, "p", dpy);\ +static uintptr_t my32_ioerror_handler_fct_##A = 0; \ +static int my32_ioerror_handler_##A(void* dpy) \ +{ \ + return (int)RunFunctionFmt(my32_ioerror_handler_fct_##A, "p", getDisplay(dpy)); \ } SUPER() #undef GO @@ -263,10 +263,10 @@ static void* reverse_exterror_handlerFct(library_t* lib, void* fct) #endif // close_display #define GO(A) \ -static uintptr_t my32_close_display_fct_##A = 0; \ -static int my32_close_display_##A(void* dpy, void* codes) \ -{ \ - return (int)RunFunctionFmt(my32_close_display_fct_##A, "pp", dpy, codes);\ +static uintptr_t my32_close_display_fct_##A = 0; \ +static int my32_close_display_##A(void* dpy, void* codes) \ +{ \ + return (int)RunFunctionFmt(my32_close_display_fct_##A, "pp", getDisplay(dpy), codes); \ } SUPER() #undef GO @@ -296,10 +296,10 @@ static void* reverse_close_displayFct(library_t* lib, void* fct) // register_im #define GO(A) \ -static uintptr_t my32_register_im_fct_##A = 0; \ -static void my32_register_im_##A(void* dpy, void* u, void* d) \ -{ \ - RunFunctionFmt(my32_register_im_fct_##A, "ppp", dpy, u, d); \ +static uintptr_t my32_register_im_fct_##A = 0; \ +static void my32_register_im_##A(void* dpy, void* u, void* d) \ +{ \ + RunFunctionFmt(my32_register_im_fct_##A, "ppp", getDisplay(dpy), u, d); \ } SUPER() #undef GO @@ -352,12 +352,12 @@ static void* findXConnectionWatchProcFct(void* fct) #endif // xifevent #define GO(A) \ -static uintptr_t my32_xifevent_fct_##A = 0; \ -static int my32_xifevent_##A(void* dpy, my_XEvent_t* event, void* d) \ -{ \ - static my_XEvent_32_t evt = {0}; \ - convertXEvent(&evt, event); \ - return RunFunctionFmt(my32_xifevent_fct_##A, "ppp", dpy, &evt, d); \ +static uintptr_t my32_xifevent_fct_##A = 0; \ +static int my32_xifevent_##A(void* dpy, my_XEvent_t* event, void* d) \ +{ \ + static my_XEvent_32_t evt = {0}; \ + convertXEvent(&evt, event); \ + return RunFunctionFmt(my32_xifevent_fct_##A, "ppp", getDisplay(dpy), &evt, d); \ } SUPER() #undef GO @@ -1316,13 +1316,17 @@ EXPORT int32_t my32_XIfEvent(x64emu_t* emu, void* d,void* ev, EventHandler h, vo EXPORT int32_t my32_XCheckIfEvent(x64emu_t* emu, void* d,void* ev, EventHandler h, void* arg) { - int32_t ret = my->XCheckIfEvent(d, ev, findxifeventFct(h), arg); + my_XEvent_t event = {0}; + int32_t ret = my->XCheckIfEvent(d, &event, findxifeventFct(h), arg); + convertXEvent(ev, &event); return ret; } #if 0 EXPORT int32_t my32_XPeekIfEvent(x64emu_t* emu, void* d,void* ev, EventHandler h, void* arg) { - int32_t ret = my->XPeekIfEvent(d, ev, findxifeventFct(h), arg); + my_XEvent_t event = {0}; + int32_t ret = my->XPeekIfEvent(d, &event, findxifeventFct(h), arg); + convertXEvent(ev, &event); return ret; } #endif @@ -1749,6 +1753,17 @@ EXPORT XID my32_XCreateWindow(x64emu_t* emu, void* d, XID Window, int x, int y, void convertXEvent(my_XEvent_32_t* dst, my_XEvent_t* src) { + if(!src->type) { + // This is an XErrorEvent, and it's different! + dst->xerror.type = src->xerror.type; + dst->xerror.display = to_ptrv(FindDisplay(src->xerror.display)); + dst->xerror.resourceid = to_ulong(src->xerror.resourceid); + dst->xerror.serial = to_ulong(src->xerror.serial); + dst->xerror.error_code = src->xerror.error_code; + dst->xerror.request_code = src->xerror.request_code; + dst->xerror.minor_code = src->xerror.minor_code; + return; + } // convert the XAnyEvent first, as it's a common set dst->type = src->type; dst->xany.display = to_ptrv(FindDisplay(src->xany.display)); @@ -1957,13 +1972,23 @@ void convertXEvent(my_XEvent_32_t* dst, my_XEvent_t* src) dst->xgeneric.extension = src->xgeneric.extension; dst->xgeneric.evtype = src->xgeneric.evtype; break; - default: printf_log(LOG_INFO, "Warning, unsupported 32bits XEvent type=%d\n", src->type); } } void unconvertXEvent(my_XEvent_t* dst, my_XEvent_32_t* src) { + if(!src->type) { + // This is an XErrorEvent, and it's different! + dst->xerror.type = src->xerror.type; + dst->xerror.display = getDisplay(from_ptrv(src->xerror.display)); + dst->xerror.resourceid = from_ulong(src->xerror.resourceid); + dst->xerror.serial = from_ulong(src->xerror.serial); + dst->xerror.error_code = src->xerror.error_code; + dst->xerror.request_code = src->xerror.request_code; + dst->xerror.minor_code = src->xerror.minor_code; + return; + } // convert the XAnyEvent first, as it's a common set dst->type = src->type; dst->xany.display = getDisplay(from_ptrv(src->xany.display)); @@ -2571,9 +2596,10 @@ EXPORT void* my32_XCreateFontSet(x64emu_t* emu, void* dpy, void* name, ptr_t* mi { void** missing_l = NULL; void* string_l = NULL; - void* ret = my->XCreateFontSet(dpy, name, &missing_l, missing_count, &string_l); + void* ret = my->XCreateFontSet(dpy, name, &missing_l, missing_count, string?(&string_l):NULL); if(string) *string = to_ptrv(string_l); // inplace string list shrink + *missing = to_ptrv(missing_l); if(missing_l && *missing_count) { for(int i=0; i<*missing_count; ++i) ((ptr_t*)missing_l)[i] = to_ptrv(missing_l[i]); @@ -2581,7 +2607,6 @@ EXPORT void* my32_XCreateFontSet(x64emu_t* emu, void* dpy, void* name, ptr_t* mi // put end marker, for expansion if(missing_l) ((ptr_t*)missing_l)[*missing_count] = 0; - *string = to_ptrv(missing_l); return ret; } @@ -2606,7 +2631,7 @@ EXPORT void my32_XFreeStringList(x64emu_t* emu, ptr_t* list) int n = 0; while(list[n]) ++n; // inplace string list expand - for(int i=n-1; i>=0; ++i) + for(int i=n-1; i>=0; --i) ((void**)list)[i] = from_ptrv(list[i]); my->XFreeStringList(list); @@ -2729,6 +2754,17 @@ EXPORT void* my32_XGetVisualInfo(x64emu_t* emu, void* dpy, long mask, my_XVisual return ret; } +EXPORT int my32_XQueryColors(x64emu_t* emu, void* dpy, XID map, my_XColor_32_t* defs, int ncolor) +{ + struct_LWWWcc_t defs_l[ncolor]; + for(int i=0; i<ncolor; ++i) + from_struct_LWWWcc(defs_l+i, to_ptrv(defs+i)); + int ret = my->XQueryColors(dpy, map, defs_l, ncolor); + for(int i=0; i<ncolor; ++i) + to_struct_LWWWcc(to_ptrv(defs+i), defs_l+i); + return ret; +} + #define CUSTOM_INIT \ AddAutomaticBridge(lib->w.bridge, vFp_32, *(void**)dlsym(lib->w.lib, "_XLockMutex_fn"), 0, "_XLockMutex_fn"); \ AddAutomaticBridge(lib->w.bridge, vFp_32, *(void**)dlsym(lib->w.lib, "_XUnlockMutex_fn"), 0, "_XUnlockMutex_fn"); \ diff --git a/src/wrapped32/wrappedlibx11_private.h b/src/wrapped32/wrappedlibx11_private.h index 2603761c..9884c016 100644 --- a/src/wrapped32/wrappedlibx11_private.h +++ b/src/wrapped32/wrappedlibx11_private.h @@ -49,7 +49,7 @@ GO(XChangePointerControl, iFXiiiii) GOM(XChangeProperty, iFEXLLLiipi) GO(XChangeSaveSet, iFXLi) GO(XChangeWindowAttributes, iFXLLbLLLLiiiLLilliLL_) -GOM(XCheckIfEvent, iFEpppp) +GOM(XCheckIfEvent, iFEXppp) //GO(XCheckMaskEvent, iFplp) GOM(XCheckTypedEvent, iFEXip) GOM(XCheckTypedWindowEvent, iFEXLip) @@ -263,7 +263,7 @@ GO(XDisplayHeight, iFXi) GO(XDisplayHeightMM, iFXi) GO(XDisplayKeycodes, iFXpp) GO(XDisplayMotionBufferSize, LFX) -GO(XDisplayName, pFp) +GO(XDisplayName, tFp) GO(XDisplayOfIM, XFp) GO(XDisplayOfOM, XFp) //GOM(XDisplayOfScreen, XFEbpXLiiiiipippLLLiiiil_) @@ -888,7 +888,7 @@ GO(XMapRaised, iFXL) GO(XMapSubwindows, iFXL) GO(XMapWindow, iFXL) //GO(XMaskEvent, iFplp) -GO(XMatchVisualInfo, iFXiiibpLiiiLLLii_) +GO(XMatchVisualInfo, iFXiiiBpLiiiLLLii_) //GOM(XMaxCmapsOfScreen, iFEbpXLiiiiipippLLLiiiil_) GO(XMaxRequestSize, lFX) //GO(_XmbDefaultDrawImageString, @@ -967,7 +967,7 @@ GO(XQueryBestSize, iFXiLuupp) GO(XQueryBestStipple, iFXLuupp) GO(XQueryBestTile, iFXLuupp) GO(XQueryColor, iFXLbLWWWcc_) -GO(XQueryColors, iFXLbLWWWcc_i) +GOM(XQueryColors, iFEXLpi) GOM(XQueryExtension, iFEXpppp) //GOSM(XQueryFont, bpLuuuuuiuibLL_pppii_FEXL) GO(XQueryKeymap, iFXp) diff --git a/src/wrapped32/wrappedlibxcursor_private.h b/src/wrapped32/wrappedlibxcursor_private.h index af22fe9e..528b0ff4 100644 --- a/src/wrapped32/wrappedlibxcursor_private.h +++ b/src/wrapped32/wrappedlibxcursor_private.h @@ -31,16 +31,16 @@ //GO(_XcursorGetDisplayInfo, //GO(XcursorGetTheme, pFp) //GO(XcursorGetThemeCore, iFp) -//GO(XcursorImageCreate, pFii) -//GO(XcursorImageDestroy, vFp) +GO(XcursorImageCreate, pFii) +GO(XcursorImageDestroy, vFp) //GOM(XcursorImageHash, vFEpp) // needs unbridge XImage (first p) -//GO(XcursorImageLoadCursor, LFpp) -//GO(XcursorImagesCreate, pFi) -//GO(XcursorImagesDestroy, vFp) -//GO(XcursorImagesLoadCursor, LFpp) +GO(XcursorImageLoadCursor, LFXp) +GO(XcursorImagesCreate, pFi) +GO(XcursorImagesDestroy, vFp) +GO(XcursorImagesLoadCursor, LFXp) //GO(XcursorImagesLoadCursors, pFpp) //GO(XcursorImagesSetName, vFpp) -//GO(XcursorLibraryLoadCursor, LFpp) +GO(XcursorLibraryLoadCursor, LFXp) //GO(XcursorLibraryLoadCursors, pFpp) //GO(XcursorLibraryLoadImage, pFppi) //GO(XcursorLibraryLoadImages, pFppi) diff --git a/src/wrapped32/wrappedlibxext.c b/src/wrapped32/wrappedlibxext.c index 9d7c913a..16d910f3 100644 --- a/src/wrapped32/wrappedlibxext.c +++ b/src/wrapped32/wrappedlibxext.c @@ -53,6 +53,8 @@ typedef struct my32_XExtensionHooks { #include "wrappercallback32.h" +void* getDisplay(void*); + #define SUPER() \ GO(0) \ GO(1) \ @@ -62,10 +64,10 @@ GO(4) // exterrorhandle ... #define GO(A) \ -static uintptr_t my_exterrorhandle_fct_##A = 0; \ -static int my_exterrorhandle_##A(void* display, void* ext_name, void* reason) \ -{ \ - return RunFunctionFmt(my_exterrorhandle_fct_##A, "ppp", display, ext_name, reason); \ +static uintptr_t my_exterrorhandle_fct_##A = 0; \ +static int my_exterrorhandle_##A(void* display, void* ext_name, void* reason) \ +{ \ + return RunFunctionFmt(my_exterrorhandle_fct_##A, "ppp", getDisplay(display), ext_name, reason); \ } SUPER() #undef GO @@ -368,11 +370,11 @@ EXPORT int32_t my32_XShmGetImage(x64emu_t* emu, void* disp, size_t drawable, voi return r; } -//EXPORT void* my32_XSetExtensionErrorHandler(x64emu_t* emu, void* handler) -//{ -// (void)emu; -// return reverse_exterrorhandleFct(my->XSetExtensionErrorHandler(find_exterrorhandle_Fct(handler))); -//} +EXPORT void* my32_XSetExtensionErrorHandler(x64emu_t* emu, void* handler) +{ + (void)emu; + return reverse_exterrorhandleFct(my->XSetExtensionErrorHandler(find_exterrorhandle_Fct(handler))); +} //EXPORT void* my32_XextAddDisplay(x64emu_t* emu, void* extinfo, void* dpy, void* extname, my32_XExtensionHooks* hooks, int nevents, void* data) //{ diff --git a/src/wrapped32/wrappedlibxext_private.h b/src/wrapped32/wrappedlibxext_private.h index ba6f41fe..1f46c486 100644 --- a/src/wrapped32/wrappedlibxext_private.h +++ b/src/wrapped32/wrappedlibxext_private.h @@ -66,7 +66,7 @@ GO(XSecurityFreeXauth, vFbWWpWpWpWp_) //GO(XSecurityGenerateAuthorization, bWWpWpWpWp_FXbWWpWpWpWp_LbuuLl_bL_) GO(XSecurityQueryExtension, iFXpp) GO(XSecurityRevokeAuthorization, iFXL) -//GOM(XSetExtensionErrorHandler, pFEp) +GOM(XSetExtensionErrorHandler, pFEp) GO(XShapeCombineMask, vFXLiiiLi) GO(XShapeCombineRectangles, vFXLiiipiii) GO(XShapeCombineRegion, vFXLiiipi) diff --git a/src/wrapped32/wrappedlibxrandr.c b/src/wrapped32/wrappedlibxrandr.c index 5b6108a9..48cc411f 100644 --- a/src/wrapped32/wrappedlibxrandr.c +++ b/src/wrapped32/wrappedlibxrandr.c @@ -126,6 +126,13 @@ EXPORT void* my32_XRRGetScreenResources(x64emu_t* emu, void* dpy, XID window) return ret; } +EXPORT void* my32_XRRGetScreenResourcesCurrent(x64emu_t* emu, void* dpy, XID window) +{ + void* ret = my->XRRGetScreenResourcesCurrent(dpy, window); + inplace_XRRScreenResources_shrink(ret); + return ret; +} + EXPORT int my32_XRRSetCrtcConfig(x64emu_t* emu, void* dpy, void* res, XID crtc, unsigned long timestamp, int x, int y, XID mode, uint16_t rotation, XID_32* outputs, int noutputs) { XID outputs_l[noutputs]; @@ -239,6 +246,107 @@ EXPORT void* my32_XRRGetOutputInfo(x64emu_t* emu, void* dpy, void* res, XID wind return ret; } +void inplace_XRRProviderInfo_shrink(void* a) +{ + if(!a) return; + my_XRRProviderInfo_32_t *dst = a; + my_XRRProviderInfo_t* src = a; + + for(int i=0; i<src->ncrtcs; ++i) + ((ulong_t*)src->crtcs)[i] = to_ulong(src->crtcs[i]); + for(int i=0; i<src->noutputs; ++i) + ((ulong_t*)src->outputs)[i] = to_ulong(src->outputs[i]); + for(int i=0; i<src->nassociatedproviders; ++i) + ((ulong_t*)src->associated_providers)[i] = to_ulong(src->associated_providers[i]); + dst->capabilities = src->capabilities; + dst->ncrtcs = src->ncrtcs; + dst->crtcs = to_ptrv(src->crtcs); + dst->noutputs = src->noutputs; + dst->outputs = to_ptrv(src->outputs); + dst->name = to_ptrv(src->name); + dst->nassociatedproviders = src->nassociatedproviders; + dst->associated_providers = to_ptrv(src->associated_providers); + dst->associated_capability = to_ptrv(src->associated_capability); + dst->nameLen = src->nameLen; +} +void inplace_XRRProviderInfo_enlarge(void* a) +{ + if(!a) return; + my_XRRProviderInfo_t *dst = a; + my_XRRProviderInfo_32_t* src = a; + + dst->nameLen = src->nameLen; + dst->associated_capability = from_ptrv(src->associated_capability); + dst->associated_providers = from_ptrv(src->associated_providers); + dst->nassociatedproviders = src->nassociatedproviders; + dst->name = from_ptrv(src->name); + dst->outputs = from_ptrv(src->outputs); + dst->noutputs = src->noutputs; + dst->crtcs = from_ptrv(src->crtcs); + dst->ncrtcs = src->ncrtcs; + dst->capabilities = src->capabilities; + for(int i=dst->ncrtcs-1; i>=0; --i) + dst->crtcs[i] = from_ulong(((ulong_t*)dst->crtcs)[i]); + for(int i=dst->noutputs-1; i>=0; --i) + dst->outputs[i] = from_ulong(((ulong_t*)dst->outputs)[i]); + for(int i=dst->nassociatedproviders-1; i>=0; --i) + dst->associated_providers[i] = from_ulong(((ulong_t*)dst->associated_providers)[i]); +} + +EXPORT void* my32_XRRGetProviderInfo(x64emu_t* emu, void* dpy, void* res, XID provider) +{ + inplace_XRRScreenResources_enlarge(res); + void* ret = my->XRRGetProviderInfo(dpy, res, provider); + inplace_XRRScreenResources_shrink(res); + inplace_XRRProviderInfo_shrink(ret); + return ret; +} + +EXPORT void my32_XRRFreeProviderInfo(x64emu_t* emu, void* r) +{ + inplace_XRRProviderInfo_enlarge(r); + my->XRRFreeProviderInfo(r); +} + +void inplace_XRRProviderResources_shrink(void* a) +{ + if(!a) return; + my_XRRProviderResources_32_t* dst = a; + my_XRRProviderResources_t* src = a; + + for(int i=0; i<src->nproviders; ++i) + ((ulong_t*)src->providers)[i] = to_ulong(src->providers[i]); + dst->timestamp = to_long(src->timestamp); + dst->nproviders = src->nproviders; + dst->providers = to_ptrv(src->providers); +} +void inplace_XRRProviderResources_enlarge(void* a) +{ + if(!a) return; + my_XRRProviderResources_t* dst = a; + my_XRRProviderResources_32_t* src = a; + + dst->timestamp = from_long(src->timestamp); + dst->nproviders = src->nproviders; + dst->providers = from_ptrv(src->providers); + for(int i=dst->nproviders-1; i>=0; --i) + dst->providers[i] = from_ulong(((ulong_t*)dst->providers)[i]); +} + +EXPORT void* my32_XRRGetProviderResources(x64emu_t* emu, void* dpy, XID window) +{ + void* ret = my->XRRGetProviderResources(dpy, window); + inplace_XRRProviderResources_shrink(ret); + return ret; +} + +EXPORT void my32_XRRFreeProviderResources(x64emu_t* emu, void* r) +{ + inplace_XRRProviderResources_enlarge(r); + my->XRRFreeProviderResources(r); +} + + #ifdef ANDROID #define NEEDED_LIBS "libX11.so", "libXext.so", "libXrender.so" #else diff --git a/src/wrapped32/wrappedlibxrandr_private.h b/src/wrapped32/wrappedlibxrandr_private.h index 9c6600f1..28804660 100644 --- a/src/wrapped32/wrappedlibxrandr_private.h +++ b/src/wrapped32/wrappedlibxrandr_private.h @@ -5,69 +5,69 @@ GO(XRRQueryVersion, iFXpp) GO(XRRFreeScreenConfigInfo, vFp) GOM(XRRGetCrtcInfo, pFEXpL) -//GO(XRRListOutputProperties, pFpLp) +//GO(XRRListOutputProperties, bL_FXLp) GO(XRRQueryExtension, iFXpp) -//GO(XRRAllocModeInfo, pFpi) -//GO(XRRGetProviderProperty, iFpLLlliiLppppp) -//GO(XRRListProviderProperties, pFpLp) -//GO(XRRRotations, WFpip) -//GO(XRRSetCrtcTransform, vFpLpppi) -//GO(XRRGetCrtcGammaSize, iFpL) -//GO(XRRConfigRotations, WFpp) -//GO(XRRGetProviderInfo, pFppL) -//GO(XRRConfigureOutputProperty, vFpLLiiip) -//GO(XRRSetOutputPrimary, vFpLL) +//GO(XRRAllocModeInfo, bLuuLuuuuuuupuL_Fpi) +//GO(XRRGetProviderProperty, iFXLLlliiLbL_pbL_bL_bp_) +//GO(XRRListProviderProperties, bL_FXLp) +GO(XRRRotations, WFXip) +GO(XRRSetCrtcTransform, vFXLpppi) +GO(XRRGetCrtcGammaSize, iFXL) +GO(XRRConfigRotations, WFpp) +GOM(XRRGetProviderInfo, pFEXpL) +GO(XRRConfigureOutputProperty, vFXLLiiibl_) +GO(XRRSetOutputPrimary, vFXLL) GO(XRRFreeOutputInfo, vFp) //GO(XRRUpdateConfiguration, iFp) GOM(XRRGetScreenResources, pFEXL) -//GO(XRRConfigSizes, pFpp) -//GO(XRRQueryProviderProperty, pFpLL) -//GO(XRRDeleteOutputProperty, vFpLL) -//GO(XRRDeleteProviderProperty, vFpLL) -//GO(XRRSetScreenConfig, iFppLiWL) -//GO(XRRAllocGamma, pFi) +GO(XRRConfigSizes, pFpp) +//GO(XRRQueryProviderProperty, biiiibl__FXLL) +GO(XRRDeleteOutputProperty, vFXLL) +GO(XRRDeleteProviderProperty, vFXLL) +GO(XRRSetScreenConfig, iFXpLiWL) +//GO(XRRAllocGamma, bippp_Fi) GO(XRRSetScreenSize, vFXLiiii) -//GO(XRRSetScreenConfigAndRate, iFppLiWwL) +GO(XRRSetScreenConfigAndRate, iFXpLiWwL) GO(XRRFreeScreenResources, vFp) GO(XRRGetOutputPrimary, LFXL) -//GO(XRRCreateMode, LFpLp) -//GO(XRRConfigCurrentRate, wFp) -//GO(XRRDestroyMode, vFpL) +//GO(XRRCreateMode, LFXLbLuuLuuuuuuupuL_) +GO(XRRConfigCurrentRate, wFp) +GO(XRRDestroyMode, vFXL) GOM(XRRSetCrtcConfig, iFEXpLLiiLWpi) -//GO(XRRConfigCurrentConfiguration, WFpp) -//GO(XRRSizes, pFpip) -//GO(XRRAddOutputMode, vFpLL) +GO(XRRConfigCurrentConfiguration, WFpp) +GO(XRRSizes, pFXip) +GO(XRRAddOutputMode, vFXLL) GO(XRRFreePanning, vFp) -//GO(XRRFreeProviderResources, vFp) -//GO(XRRChangeProviderProperty, vFpLLLiipi) +GOM(XRRFreeProviderResources, vFEp) +GO(XRRChangeProviderProperty, vFXLLLiipi) GOM(XRRGetPanning, pFEXpL) -//GO(XRRSetProviderOffloadSink, iFpLL) -//GO(XRRGetScreenResourcesCurrent, pFpL) -//GO(XRRConfigTimes, LFpp) -//GO(XRRSetCrtcGamma, vFpLp) -//GO(XRRSetProviderOutputSource, iFpLL) +GO(XRRSetProviderOffloadSink, iFXLL) +GOM(XRRGetScreenResourcesCurrent, pFEXL) +GO(XRRConfigTimes, LFpbL_) +//GO(XRRSetCrtcGamma, vFXLbippp_) +GO(XRRSetProviderOutputSource, iFXLL) GO(XRRGetScreenSizeRange, iFXLpppp) -//GO(XRRRates, pFpiip) -//GO(XRRFreeProviderInfo, vFp) -//GO(XRRConfigRates, pFpip) -//GO(XRRQueryOutputProperty, pFpLL) -//GO(XRRGetOutputProperty, iFpLLlliiLppppp) -//GO(XRRFreeGamma, vFp) -//GO(XRRRootToScreen, iFpL) -//GO(XRRGetScreenInfo, pFpL) +GO(XRRRates, pFXiip) +GOM(XRRFreeProviderInfo, vFEp) +GO(XRRConfigRates, pFpip) +//GO(XRRQueryOutputProperty, biiiibl__FXLL) +GO(XRRGetOutputProperty, iFXLLlliiLBL_pBL_BL_Bp_) +//GO(XRRFreeGamma, vFbippp_) +GO(XRRRootToScreen, iFXL) +GO(XRRGetScreenInfo, pFXL) GO(XRRFreeCrtcInfo, vFp) -//GO(XRRGetProviderResources, pFpL) -//GO(XRRFreeModeInfo, vFp) -//GO(XRRChangeOutputProperty, vFpLLLiipi) -//GO(XRRGetCrtcGamma, pFpL) +GOM(XRRGetProviderResources, pFEXL) +//GO(XRRFreeModeInfo, vFbLuuLuuuuuuupuL_) +GO(XRRChangeOutputProperty, vFXLLLiipi) +//GO(XRRGetCrtcGamma, bippp_FXL) GOM(XRRSetPanning, iFEXpLp) -//GO(XRRSelectInput, vFpLi) -//GO(XRRGetCrtcTransform, iFpLp) -//GO(XRRTimes, LFpip) -//GO(XRRDeleteOutputMode, vFpLL) +GO(XRRSelectInput, vFXLi) +//GO(XRRGetCrtcTransform, iFXLbbiiiiiiiiipipiiiiiiiiipip__) +//GO(XRRTimes, LFXibL_) +GO(XRRDeleteOutputMode, vFXLL) GOM(XRRGetOutputInfo, pFEXpL) -//GO(XRRConfigureProviderProperty, vFpLLiiip) -//GO(XRRAllocateMonitor, pFpi) -//GO(XRRGetMonitors, pFpLip) -//GO(XRRSetMonitor, vFpLp) -//GO(XRRFreeMonitors, vFp) +GO(XRRConfigureProviderProperty, vFXLLiiibl_) +//GO(XRRAllocateMonitor, bLiiiiiiiiibL__FXi) +//GO(XRRGetMonitors, bLiiiiiiiiibL__FXLip) +//GO(XRRSetMonitor, vFXLbLiiiiiiiiibL__) +//GO(XRRFreeMonitors, vFbLiiiiiiiiibL__) diff --git a/src/wrapped32/wrappedlibxrender.c b/src/wrapped32/wrappedlibxrender.c index 970aebc2..e1688640 100644 --- a/src/wrapped32/wrappedlibxrender.c +++ b/src/wrapped32/wrappedlibxrender.c @@ -6,10 +6,18 @@ #include "wrappedlibs.h" + +#include "debug.h" #include "wrapper32.h" #include "bridge.h" #include "librarian/library_private.h" #include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box32context.h" +#include "emu/x64emu_private.h" +#include "converter32.h" #ifdef ANDROID static const char* libxrenderName = "libXrender.so"; @@ -25,4 +33,65 @@ #define NEEDED_LIBS "libX11.so.6" #endif +#include "libtools/my_x11_defs.h" +#include "libtools/my_x11_defs_32.h" + +#include "generated/wrappedlibxrendertypes32.h" + +#include "wrappercallback32.h" + +KHASH_MAP_INIT_INT64(picformat, void*); +static kh_picformat_t* hash_picformat; + +EXPORT void* my32_XRenderFindFormat(x64emu_t* emu, void* dpy, unsigned long mask, void* tmpl, int count) +{ + void* ret = my->XRenderFindFormat(dpy, mask, tmpl, count); + khint_t k = kh_get(picformat, hash_picformat, (uintptr_t)ret); + if(k!=kh_end(hash_picformat)) + return kh_value(hash_picformat, k); + int r; + k = kh_put(picformat, hash_picformat, (uintptr_t)ret, &r); + struct_LiiuL_t* res = box_calloc(1, sizeof(struct_LiiuL_t)); + to_struct_LiiuL(to_ptrv(res), ret); + kh_value(hash_picformat, k) = res; + return res; +} + +EXPORT void* my32_XRenderFindStandardFormat(x64emu_t* emu, void* dpy, int fmt) +{ + void* ret = my->XRenderFindStandardFormat(dpy, fmt); + khint_t k = kh_get(picformat, hash_picformat, (uintptr_t)ret); + if(k!=kh_end(hash_picformat)) + return kh_value(hash_picformat, k); + int r; + k = kh_put(picformat, hash_picformat, (uintptr_t)ret, &r); + struct_LiiuL_t* res = box_calloc(1, sizeof(struct_LiiuL_t)); + to_struct_LiiuL(to_ptrv(res), ret); + kh_value(hash_picformat, k) = res; + return res; +} + +EXPORT void* my32_XRenderFindVisualFormat(x64emu_t* emu, void* dpy, void* visual) +{ + void* ret = my->XRenderFindVisualFormat(dpy, visual); + khint_t k = kh_get(picformat, hash_picformat, (uintptr_t)ret); + if(k!=kh_end(hash_picformat)) + return kh_value(hash_picformat, k); + int r; + k = kh_put(picformat, hash_picformat, (uintptr_t)ret, &r); + struct_LiiuL_t* res = box_calloc(1, sizeof(struct_LiiuL_t)); + to_struct_LiiuL(to_ptrv(res), ret); + kh_value(hash_picformat, k) = res; + return res; +} + +#define CUSTOM_INIT \ + hash_picformat = kh_init(picformat); + +#define CUSTOM_FINI \ + void* p; \ + kh_foreach_value(hash_picformat, p, box_free(p)); \ + kh_destroy(picformat, hash_picformat); \ + hash_picformat = NULL; + #include "wrappedlib_init32.h" diff --git a/src/wrapped32/wrappedlibxrender_private.h b/src/wrapped32/wrappedlibxrender_private.h index 9be44f6c..22125395 100644 --- a/src/wrapped32/wrappedlibxrender_private.h +++ b/src/wrapped32/wrappedlibxrender_private.h @@ -7,22 +7,22 @@ GO(XRenderAddTraps, vFXLiipi) GO(XRenderChangePicture, vFXLLp) GO(XRenderComposite, vFXiLLLiiiiiiuu) GO(XRenderCompositeDoublePoly, vFXiLLpiiiipii) -GO(XRenderCompositeString16, vFXiLLpLiiiipi) -GO(XRenderCompositeString32, vFXiLLpLiiiipi) -GO(XRenderCompositeString8, vFXiLLpLiiiipi) -GO(XRenderCompositeText16, vFXiLLpiiiipi) -GO(XRenderCompositeText32, vFXiLLpiiiipi) -GO(XRenderCompositeText8, vFXiLLpiiiipi) -GO(XRenderCompositeTrapezoids, vFXiLLpiipi) +GO(XRenderCompositeString16, vFXiLLrLiiuL_Liiiipi) +GO(XRenderCompositeString32, vFXiLLrLiiuL_Liiiipi) +GO(XRenderCompositeString8, vFXiLLrLiiuL_Liiiipi) +GO(XRenderCompositeText16, vFXiLLrLiiuL_iiiipi) +GO(XRenderCompositeText32, vFXiLLrLiiuL_iiiipi) +GO(XRenderCompositeText8, vFXiLLrLiiuL_iiiipi) +GO(XRenderCompositeTrapezoids, vFXiLLrLiiuL_iipi) GO(XRenderCompositeTriangles, vFXiLLpiipi) GO(XRenderCompositeTriFan, vFXiLLpiipi) GO(XRenderCompositeTriStrip, vFXiLLpiipi) GO(XRenderCreateAnimCursor, LFXip) GO(XRenderCreateConicalGradient, LFXpppi) GO(XRenderCreateCursor, LFXLuu) -GO(XRenderCreateGlyphSet, LFXp) +GO(XRenderCreateGlyphSet, LFXrLiiuL_) GO(XRenderCreateLinearGradient, LFXpppi) -GO(XRenderCreatePicture, LFXLpLp) +GO(XRenderCreatePicture, LFXLrLiiuL_Lp) GO(XRenderCreateRadialGradient, LFXpppi) GO(XRenderCreateSolidFill, LFXp) //DATAB(XRenderExtensionInfo, sizeof(ptr_t)) @@ -30,9 +30,9 @@ GO(XRenderCreateSolidFill, LFXp) GO(XRenderFillRectangle, vFXiLpiiuu) GO(XRenderFillRectangles, vFXiLppi) //GO(XRenderFindDisplay, pFp) -GO(XRenderFindFormat, pFXLpi) -GO(XRenderFindStandardFormat, pFXi) -GO(XRenderFindVisualFormat, pFXp) +GOM(XRenderFindFormat, pFEXLrLiiuL_i) +GOM(XRenderFindStandardFormat, pFEXi) +GOM(XRenderFindVisualFormat, pFEXp) GO(XRenderFreeGlyphs, vFXLpi) GO(XRenderFreeGlyphSet, vFXL) GO(XRenderFreePicture, vFXL) @@ -40,7 +40,7 @@ GO(XRenderParseColor, iFXpp) GO(XRenderQueryExtension, iFXpp) GO(XRenderQueryFilters, pFXL) GO(XRenderQueryFormats, iFX) -GO(XRenderQueryPictIndexValues, pFXpp) +GO(XRenderQueryPictIndexValues, pFXrLiiuL_p) GO(XRenderQuerySubpixelOrder, iFXi) GO(XRenderQueryVersion, iFXpp) GO(XRenderReferenceGlyphSet, LFXL) diff --git a/src/wrapped32/wrappedlibxxf86vm_private.h b/src/wrapped32/wrappedlibxxf86vm_private.h index 43b47f85..eb906fab 100644 --- a/src/wrapped32/wrappedlibxxf86vm_private.h +++ b/src/wrapped32/wrappedlibxxf86vm_private.h @@ -4,14 +4,14 @@ //GO(XF86VidModeGetViewPort, iFpipp) //GO(XF86VidModeValidateModeLine, iFpip) -//GO(XF86VidModeGetGamma, iFpip) -//GO(XF86VidModeSetGamma, iFpip) +GO(XF86VidModeGetGamma, iFXip) +GO(XF86VidModeSetGamma, iFXip) GO(XF86VidModeSetClientVersion, iFX) GO(XF86VidModeGetGammaRamp, iFXiippp) //GO(XF86VidModeGetMonitor, iFpip) GO(XF86VidModeQueryVersion, iFXpp) GO(XF86VidModeDeleteModeLine, iFXip) -//GO(XF86VidModeGetModeLine, iFpipp) +GO(XF86VidModeGetModeLine, iFXipBWWWWWWWWWuip_) GOM(XF86VidModeGetAllModeLines, iFEXipp) GO(XF86VidModeSetGammaRamp, iFXiippp) //GO(XF86VidModeGetPermissions, iFpip) |