diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-10-05 09:54:44 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-10-05 09:54:44 +0200 |
| commit | c29be5b945fe01b8ce70e9c7ed784d1cf92dcbe6 (patch) | |
| tree | 881984a8089031c4f9624e5b3dab358f68333156 /src | |
| parent | 21b60db107dce0da9ffaeab018271840e01abc5c (diff) | |
| download | box64-c29be5b945fe01b8ce70e9c7ed784d1cf92dcbe6.tar.gz box64-c29be5b945fe01b8ce70e9c7ed784d1cf92dcbe6.zip | |
[BOX32][WRAPEPR] Reworked 32bits libfontconfig with new wrapperhelper
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped32/generated/converter32.c | 28 | ||||
| -rw-r--r-- | src/wrapped32/generated/converter32.h | 13 | ||||
| -rw-r--r-- | src/wrapped32/generated/functions_list.txt | 13 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.c | 26 | ||||
| -rw-r--r-- | src/wrapped32/generated/wrapper32.h | 13 | ||||
| -rw-r--r-- | src/wrapped32/wrappedfontconfig_private.h | 336 |
6 files changed, 256 insertions, 173 deletions
diff --git a/src/wrapped32/generated/converter32.c b/src/wrapped32/generated/converter32.c index d70acf86..6b2558bc 100644 --- a/src/wrapped32/generated/converter32.c +++ b/src/wrapped32/generated/converter32.c @@ -383,4 +383,30 @@ void to_struct_WWpWpWpWp(ptr_t d, const struct_WWpWpWpWp_t *src) *(ptr_t*)dest = to_ptrv(src->p6); dest += 4; *(uint16_t*)dest = src->W7; dest += 2; *(ptr_t*)dest = to_ptrv(src->p8); dest += 4; -} \ No newline at end of file +} + +void from_struct_pi(struct_pi_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; + dest->i1 = *(int*)src; src += 4; +} +void to_struct_pi(ptr_t d, const struct_pi_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ptr_t*)dest = to_ptrv(src->p0); dest += 4; + *(int*)dest = src->i1; dest += 4; +} + +void from_struct_ppi(struct_ppi_t *dest, ptr_t s) { + uint8_t* src = (uint8_t*)from_ptrv(s); + dest->p0 = from_ptrv(*(ptr_t*)src); src += 4; + dest->p1 = from_ptrv(*(ptr_t*)src); src += 4; + dest->i2 = *(int*)src; src += 4; +} +void to_struct_ppi(ptr_t d, const struct_ppi_t *src) { + if (!src) return; + uint8_t* dest = (uint8_t*)from_ptrv(d); + *(ptr_t*)dest = to_ptrv(src->p0); dest += 4; + *(ptr_t*)dest = to_ptrv(src->p1); dest += 4; + *(int*)dest = src->i2; dest += 4; +} diff --git a/src/wrapped32/generated/converter32.h b/src/wrapped32/generated/converter32.h index c2344c65..93aee38d 100644 --- a/src/wrapped32/generated/converter32.h +++ b/src/wrapped32/generated/converter32.h @@ -193,5 +193,18 @@ typedef struct struct_WWpWpWpWp_s { } struct_WWpWpWpWp_t; void from_struct_WWpWpWpWp(struct_WWpWpWpWp_t *dest, ptr_t src); void to_struct_WWpWpWpWp(ptr_t dest, const struct_WWpWpWpWp_t *src); +typedef struct struct_pi_s { + void* p0; + int i1; +} struct_pi_t; +void from_struct_pi(struct_pi_t *dest, ptr_t src); +void to_struct_pi(ptr_t dest, const struct_pi_t *src); +typedef struct struct_ppi_s { + void* p0; + void* p1; + int i2; +} struct_ppi_t; +void from_struct_ppi(struct_ppi_t *dest, ptr_t src); +void to_struct_ppi(ptr_t dest, const struct_ppi_t *src); #endif // __CONVERTER_H_ diff --git a/src/wrapped32/generated/functions_list.txt b/src/wrapped32/generated/functions_list.txt index 01e665cd..d8d45c49 100644 --- a/src/wrapped32/generated/functions_list.txt +++ b/src/wrapped32/generated/functions_list.txt @@ -244,8 +244,10 @@ #() iFprll_ -> iFpB #() iFpbup_ -> iFpB #() iFprLL_ -> iFpB +#() iFbpi_i -> iFBi #() iFBll_p -> iFBp #() iFSBliu_ -> iFSB +#() iFbppi_i -> iFBi #() iFXbLipi_ -> iFXB #() iFrLL_BLL_ -> iFBB #() vFbll_rllll_ -> vFBB @@ -316,6 +318,7 @@ #() vFpuf -> vFpuf #() vFpud -> vFpud #() vFpup -> vFpup +#() vFpdd -> vFpdd #() vFplp -> vFplp #() vFppi -> vFppi #() vFppu -> vFppu @@ -369,6 +372,7 @@ #() iFpLp -> iFpLp #() iFppi -> iFppi #() iFppu -> iFppu +#() iFppd -> iFppd #() iFppL -> iFppL #() iFppp -> iFppp #() iFppa -> iFppa @@ -401,7 +405,9 @@ #() uFuup -> uFuup #() uFupp -> uFupp #() uFpuU -> uFpuU +#() uFpup -> uFpup #() uFppu -> uFppu +#() uFppp -> uFppp #() fFuii -> fFuii #() fFfff -> fFfff #() fFffp -> fFffp @@ -441,6 +447,7 @@ #() pFpii -> pFpii #() pFpiu -> pFpiu #() pFpiL -> pFpiL +#() pFpip -> pFpip #() pFpiS -> pFpiS #() pFpII -> pFpII #() pFpup -> pFpup @@ -608,6 +615,7 @@ #() iFuupi -> iFuupi #() iFpiiL -> iFpiiL #() iFpipp -> iFpipp +#() iFpupi -> iFpupi #() iFpupp -> iFpupp #() iFppii -> iFppii #() iFppiU -> iFppiU @@ -615,6 +623,7 @@ #() iFppui -> iFppui #() iFppLi -> iFppLi #() iFpppi -> iFpppi +#() iFpppu -> iFpppu #() iFpppL -> iFpppL #() iFpppp -> iFpppp #() iFSpiL -> iFSpiL @@ -661,6 +670,7 @@ #() pFlfff -> pFlfff #() pFpiLL -> pFpiLL #() pFpuii -> pFpuii +#() pFpupp -> pFpupp #() pFpLiS -> pFpLiS #() pFppLL -> pFppLL #() pFpppp -> pFpppp @@ -672,7 +682,7 @@ #() iFppbp_p -> iFppBp #() iFBp_pui -> iFBpui #() IFpBp_ii -> IFpBii -#() uFppiBp_ -> uFppiB +#() uFppibp_ -> uFppiB #() UFpBp_ii -> UFpBii #() lFiibl_L -> lFiiBL #() LFpbp_Lp -> LFpBLp @@ -803,6 +813,7 @@ #() iFuiuup -> iFuiuup #() iFpippp -> iFpippp #() iFpCCCC -> iFpCCCC +#() iFpuipp -> iFpuipp #() iFpLuLi -> iFpLuLi #() iFppiUi -> iFppiUi #() iFpppip -> iFpppip diff --git a/src/wrapped32/generated/wrapper32.c b/src/wrapped32/generated/wrapper32.c index 1240e782..b1dd9109 100644 --- a/src/wrapped32/generated/wrapper32.c +++ b/src/wrapped32/generated/wrapper32.c @@ -334,8 +334,10 @@ typedef int32_t (*iFuBLL__t)(uint32_t, struct_LL_t*); typedef int32_t (*iFprll__t)(void*, struct_ll_t*); typedef int32_t (*iFpbup__t)(void*, struct_up_t*); typedef int32_t (*iFprLL__t)(void*, struct_LL_t*); +typedef int32_t (*iFbpi_i_t)(struct_pi_t*, int32_t); typedef int32_t (*iFBll_p_t)(struct_ll_t*, void*); typedef int32_t (*iFSBliu__t)(void*, struct_liu_t*); +typedef int32_t (*iFbppi_i_t)(struct_ppi_t*, int32_t); typedef int32_t (*iFXbLipi__t)(void*, struct_Lipi_t*); typedef int32_t (*iFrLL_BLL__t)(struct_LL_t*, struct_LL_t*); typedef void (*vFbll_rllll__t)(struct_ll_t*, struct_llll_t*); @@ -406,6 +408,7 @@ typedef void (*vFpuU_t)(void*, uint32_t, uint64_t); typedef void (*vFpuf_t)(void*, uint32_t, float); typedef void (*vFpud_t)(void*, uint32_t, double); typedef void (*vFpup_t)(void*, uint32_t, void*); +typedef void (*vFpdd_t)(void*, double, double); typedef void (*vFplp_t)(void*, intptr_t, void*); typedef void (*vFppi_t)(void*, void*, int32_t); typedef void (*vFppu_t)(void*, void*, uint32_t); @@ -459,6 +462,7 @@ typedef int32_t (*iFpLu_t)(void*, uintptr_t, uint32_t); typedef int32_t (*iFpLp_t)(void*, uintptr_t, void*); typedef int32_t (*iFppi_t)(void*, void*, int32_t); typedef int32_t (*iFppu_t)(void*, void*, uint32_t); +typedef int32_t (*iFppd_t)(void*, void*, double); typedef int32_t (*iFppL_t)(void*, void*, uintptr_t); typedef int32_t (*iFppp_t)(void*, void*, void*); typedef int32_t (*iFppa_t)(void*, void*, void*); @@ -491,7 +495,9 @@ typedef uint32_t (*uFuuu_t)(uint32_t, uint32_t, uint32_t); typedef uint32_t (*uFuup_t)(uint32_t, uint32_t, void*); typedef uint32_t (*uFupp_t)(uint32_t, void*, void*); typedef uint32_t (*uFpuU_t)(void*, uint32_t, uint64_t); +typedef uint32_t (*uFpup_t)(void*, uint32_t, void*); typedef uint32_t (*uFppu_t)(void*, void*, uint32_t); +typedef uint32_t (*uFppp_t)(void*, void*, void*); typedef float (*fFuii_t)(uint32_t, int32_t, int32_t); typedef float (*fFfff_t)(float, float, float); typedef float (*fFffp_t)(float, float, void*); @@ -531,6 +537,7 @@ typedef void* (*pFpcU_t)(void*, int8_t, uint64_t); typedef void* (*pFpii_t)(void*, int32_t, int32_t); typedef void* (*pFpiu_t)(void*, int32_t, uint32_t); typedef void* (*pFpiL_t)(void*, int32_t, uintptr_t); +typedef void* (*pFpip_t)(void*, int32_t, void*); typedef void* (*pFpiS_t)(void*, int32_t, void*); typedef void* (*pFpII_t)(void*, int64_t, int64_t); typedef void* (*pFpup_t)(void*, uint32_t, void*); @@ -698,6 +705,7 @@ typedef int32_t (*iFuiup_t)(uint32_t, int32_t, uint32_t, void*); typedef int32_t (*iFuupi_t)(uint32_t, uint32_t, void*, int32_t); typedef int32_t (*iFpiiL_t)(void*, int32_t, int32_t, uintptr_t); typedef int32_t (*iFpipp_t)(void*, int32_t, void*, void*); +typedef int32_t (*iFpupi_t)(void*, uint32_t, void*, int32_t); typedef int32_t (*iFpupp_t)(void*, uint32_t, void*, void*); typedef int32_t (*iFppii_t)(void*, void*, int32_t, int32_t); typedef int32_t (*iFppiU_t)(void*, void*, int32_t, uint64_t); @@ -705,6 +713,7 @@ typedef int32_t (*iFppip_t)(void*, void*, int32_t, void*); typedef int32_t (*iFppui_t)(void*, void*, uint32_t, int32_t); typedef int32_t (*iFppLi_t)(void*, void*, uintptr_t, int32_t); typedef int32_t (*iFpppi_t)(void*, void*, void*, int32_t); +typedef int32_t (*iFpppu_t)(void*, void*, void*, uint32_t); typedef int32_t (*iFpppL_t)(void*, void*, void*, uintptr_t); typedef int32_t (*iFpppp_t)(void*, void*, void*, void*); typedef int32_t (*iFSpiL_t)(void*, void*, int32_t, uintptr_t); @@ -751,6 +760,7 @@ typedef void* (*pFullu_t)(uint32_t, intptr_t, intptr_t, uint32_t); typedef void* (*pFlfff_t)(intptr_t, float, float, float); typedef void* (*pFpiLL_t)(void*, int32_t, uintptr_t, uintptr_t); typedef void* (*pFpuii_t)(void*, uint32_t, int32_t, int32_t); +typedef void* (*pFpupp_t)(void*, uint32_t, void*, void*); 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*); @@ -762,7 +772,7 @@ typedef void (*vFXLLbL__t)(void*, uintptr_t, uintptr_t, struct_L_t*); typedef int32_t (*iFppbp_p_t)(void*, void*, struct_p_t*, void*); typedef int32_t (*iFBp_pui_t)(struct_p_t*, void*, uint32_t, int32_t); typedef int64_t (*IFpBp_ii_t)(void*, struct_p_t*, int32_t, int32_t); -typedef uint32_t (*uFppiBp__t)(void*, void*, int32_t, struct_p_t*); +typedef uint32_t (*uFppibp__t)(void*, void*, int32_t, struct_p_t*); typedef uint64_t (*UFpBp_ii_t)(void*, struct_p_t*, int32_t, int32_t); typedef intptr_t (*lFiibl_L_t)(int32_t, int32_t, struct_l_t*, uintptr_t); typedef uintptr_t (*LFpbp_Lp_t)(void*, struct_p_t*, uintptr_t, void*); @@ -893,6 +903,7 @@ typedef int32_t (*iFippLi_t)(int32_t, void*, void*, uintptr_t, int32_t); typedef int32_t (*iFuiuup_t)(uint32_t, int32_t, uint32_t, uint32_t, void*); typedef int32_t (*iFpippp_t)(void*, int32_t, void*, void*, void*); typedef int32_t (*iFpCCCC_t)(void*, uint8_t, uint8_t, uint8_t, uint8_t); +typedef int32_t (*iFpuipp_t)(void*, uint32_t, int32_t, void*, void*); typedef int32_t (*iFpLuLi_t)(void*, uintptr_t, uint32_t, uintptr_t, int32_t); typedef int32_t (*iFppiUi_t)(void*, void*, int32_t, uint64_t, int32_t); typedef int32_t (*iFpppip_t)(void*, void*, void*, int32_t, void*); @@ -1503,8 +1514,10 @@ void iFuBLL__32(x64emu_t *emu, uintptr_t fcn) { iFuBLL__t fn = (iFuBLL__t)fcn; s void iFprll__32(x64emu_t *emu, uintptr_t fcn) { iFprll__t fn = (iFprll__t)fcn; struct_ll_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_ll(&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); } void iFpbup__32(x64emu_t *emu, uintptr_t fcn) { iFpbup__t fn = (iFpbup__t)fcn; struct_up_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_up(&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); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_up(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void iFprLL__32(x64emu_t *emu, uintptr_t fcn) { iFprLL__t fn = (iFprLL__t)fcn; struct_LL_t arg_8={0}; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) from_struct_LL(&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); } +void iFbpi_i_32(x64emu_t *emu, uintptr_t fcn) { iFbpi_i_t fn = (iFbpi_i_t)fcn; struct_pi_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_pi(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(int32_t, R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_pi(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFBll_p_32(x64emu_t *emu, uintptr_t fcn) { iFBll_p_t fn = (iFBll_p_t)fcn; struct_ll_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ll(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void iFSBliu__32(x64emu_t *emu, uintptr_t fcn) { iFSBliu__t fn = (iFSBliu__t)fcn; struct_liu_t arg_8={0}; R_EAX = fn(io_convert32(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_liu(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } +void iFbppi_i_32(x64emu_t *emu, uintptr_t fcn) { iFbppi_i_t fn = (iFbppi_i_t)fcn; struct_ppi_t arg_4={0}; if (*(ptr_t*)(from_ptr((R_ESP + 4)))) from_struct_ppi(&arg_4, *(ptr_t*)(from_ptr((R_ESP + 4)))); R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptri(int32_t, R_ESP + 8)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_ppi(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } 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 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); } @@ -1575,6 +1588,7 @@ void vFpuU_32(x64emu_t *emu, uintptr_t fcn) { vFpuU_t fn = (vFpuU_t)fcn; fn(from void vFpuf_32(x64emu_t *emu, uintptr_t fcn) { vFpuf_t fn = (vFpuf_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(float, R_ESP + 12)); } void vFpud_32(x64emu_t *emu, uintptr_t fcn) { vFpud_t fn = (vFpud_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(double, R_ESP + 12)); } void vFpup_32(x64emu_t *emu, uintptr_t fcn) { vFpup_t fn = (vFpup_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } +void vFpdd_32(x64emu_t *emu, uintptr_t fcn) { vFpdd_t fn = (vFpdd_t)fcn; fn(from_ptriv(R_ESP + 4), from_ptri(double, R_ESP + 8), from_ptri(double, R_ESP + 16)); } void vFplp_32(x64emu_t *emu, uintptr_t fcn) { vFplp_t fn = (vFplp_t)fcn; fn(from_ptriv(R_ESP + 4), from_long(from_ptri(long_t, R_ESP + 8)), from_ptriv(R_ESP + 12)); } 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)); } @@ -1628,6 +1642,7 @@ void iFpLu_32(x64emu_t *emu, uintptr_t fcn) { iFpLu_t fn = (iFpLu_t)fcn; R_EAX = void iFpLp_32(x64emu_t *emu, uintptr_t fcn) { iFpLp_t fn = (iFpLp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptriv(R_ESP + 12)); } void iFppi_32(x64emu_t *emu, uintptr_t fcn) { iFppi_t fn = (iFppi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12)); } void iFppu_32(x64emu_t *emu, uintptr_t fcn) { iFppu_t fn = (iFppu_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12)); } +void iFppd_32(x64emu_t *emu, uintptr_t fcn) { iFppd_t fn = (iFppd_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(double, R_ESP + 12)); } void iFppL_32(x64emu_t *emu, uintptr_t fcn) { iFppL_t fn = (iFppL_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12))); } void iFppp_32(x64emu_t *emu, uintptr_t fcn) { iFppp_t fn = (iFppp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12)); } void iFppa_32(x64emu_t *emu, uintptr_t fcn) { iFppa_t fn = (iFppa_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_locale(from_ptri(ptr_t, R_ESP + 12))); } @@ -1660,7 +1675,9 @@ void uFuuu_32(x64emu_t *emu, uintptr_t fcn) { uFuuu_t fn = (uFuuu_t)fcn; R_EAX = void uFuup_32(x64emu_t *emu, uintptr_t fcn) { uFuup_t fn = (uFuup_t)fcn; R_EAX = (uint32_t)fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } void uFupp_32(x64emu_t *emu, uintptr_t fcn) { uFupp_t fn = (uFupp_t)fcn; R_EAX = (uint32_t)fn(from_ptri(uint32_t, R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12)); } void uFpuU_32(x64emu_t *emu, uintptr_t fcn) { uFpuU_t fn = (uFpuU_t)fcn; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(uint64_t, R_ESP + 12)); } +void uFpup_32(x64emu_t *emu, uintptr_t fcn) { uFpup_t fn = (uFpup_t)fcn; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12)); } void uFppu_32(x64emu_t *emu, uintptr_t fcn) { uFppu_t fn = (uFppu_t)fcn; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12)); } +void uFppp_32(x64emu_t *emu, uintptr_t fcn) { uFppp_t fn = (uFppp_t)fcn; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12)); } void fFuii_32(x64emu_t *emu, uintptr_t fcn) { fFuii_t fn = (fFuii_t)fcn; float fl = fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12)); fpu_do_push(emu); ST0val = fl; } void fFfff_32(x64emu_t *emu, uintptr_t fcn) { fFfff_t fn = (fFfff_t)fcn; float fl = fn(from_ptri(float, R_ESP + 4), from_ptri(float, R_ESP + 8), from_ptri(float, R_ESP + 12)); fpu_do_push(emu); ST0val = fl; } void fFffp_32(x64emu_t *emu, uintptr_t fcn) { fFffp_t fn = (fFffp_t)fcn; float fl = fn(from_ptri(float, R_ESP + 4), from_ptri(float, R_ESP + 8), from_ptriv(R_ESP + 12)); fpu_do_push(emu); ST0val = fl; } @@ -1700,6 +1717,7 @@ void pFpcU_32(x64emu_t *emu, uintptr_t fcn) { pFpcU_t fn = (pFpcU_t)fcn; R_EAX = void pFpii_32(x64emu_t *emu, uintptr_t fcn) { pFpii_t fn = (pFpii_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12))); } void pFpiu_32(x64emu_t *emu, uintptr_t fcn) { pFpiu_t fn = (pFpiu_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(uint32_t, R_ESP + 12))); } void pFpiL_32(x64emu_t *emu, uintptr_t fcn) { pFpiL_t fn = (pFpiL_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ulong(from_ptri(ulong_t, R_ESP + 12)))); } +void pFpip_32(x64emu_t *emu, uintptr_t fcn) { pFpip_t fn = (pFpip_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12))); } void pFpiS_32(x64emu_t *emu, uintptr_t fcn) { pFpiS_t fn = (pFpiS_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), io_convert32(from_ptriv(R_ESP + 12)))); } void pFpII_32(x64emu_t *emu, uintptr_t fcn) { pFpII_t fn = (pFpII_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(int64_t, R_ESP + 8), from_ptri(int64_t, R_ESP + 16))); } void pFpup_32(x64emu_t *emu, uintptr_t fcn) { pFpup_t fn = (pFpup_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12))); } @@ -1867,6 +1885,7 @@ void iFuiup_32(x64emu_t *emu, uintptr_t fcn) { iFuiup_t fn = (iFuiup_t)fcn; R_EA void iFuupi_32(x64emu_t *emu, uintptr_t fcn) { iFuupi_t fn = (iFuupi_t)fcn; R_EAX = fn(from_ptri(uint32_t, R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } void iFpiiL_32(x64emu_t *emu, uintptr_t fcn) { iFpiiL_t fn = (iFpiiL_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16))); } void iFpipp_32(x64emu_t *emu, uintptr_t fcn) { iFpipp_t fn = (iFpipp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(int32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); } +void iFpupi_32(x64emu_t *emu, uintptr_t fcn) { iFpupi_t fn = (iFpupi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } void iFpupp_32(x64emu_t *emu, uintptr_t fcn) { iFpupp_t fn = (iFpupp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); } void iFppii_32(x64emu_t *emu, uintptr_t fcn) { iFppii_t fn = (iFppii_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } void iFppiU_32(x64emu_t *emu, uintptr_t fcn) { iFppiU_t fn = (iFppiU_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(uint64_t, R_ESP + 16)); } @@ -1874,6 +1893,7 @@ void iFppip_32(x64emu_t *emu, uintptr_t fcn) { iFppip_t fn = (iFppip_t)fcn; R_EA void iFppui_32(x64emu_t *emu, uintptr_t fcn) { iFppui_t fn = (iFppui_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } void iFppLi_32(x64emu_t *emu, uintptr_t fcn) { iFppLi_t fn = (iFppLi_t)fcn; R_EAX = fn(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)); } void iFpppi_32(x64emu_t *emu, uintptr_t fcn) { iFpppi_t fn = (iFpppi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); } +void iFpppu_32(x64emu_t *emu, uintptr_t fcn) { iFpppu_t fn = (iFpppu_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(uint32_t, R_ESP + 16)); } void iFpppL_32(x64emu_t *emu, uintptr_t fcn) { iFpppL_t fn = (iFpppL_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16))); } void iFpppp_32(x64emu_t *emu, uintptr_t fcn) { iFpppp_t fn = (iFpppp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16)); } void iFSpiL_32(x64emu_t *emu, uintptr_t fcn) { iFSpiL_t fn = (iFSpiL_t)fcn; R_EAX = fn(io_convert32(from_ptriv(R_ESP + 4)), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16))); } @@ -1920,6 +1940,7 @@ void pFullu_32(x64emu_t *emu, uintptr_t fcn) { pFullu_t fn = (pFullu_t)fcn; R_EA void pFlfff_32(x64emu_t *emu, uintptr_t fcn) { pFlfff_t fn = (pFlfff_t)fcn; R_EAX = to_ptrv(fn(from_long(from_ptri(long_t, R_ESP + 4)), from_ptri(float, R_ESP + 8), from_ptri(float, R_ESP + 12), from_ptri(float, R_ESP + 16))); } void pFpiLL_32(x64emu_t *emu, uintptr_t fcn) { pFpiLL_t fn = (pFpiLL_t)fcn; R_EAX = to_ptrv(fn(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)))); } void pFpuii_32(x64emu_t *emu, uintptr_t fcn) { pFpuii_t fn = (pFpuii_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16))); } +void pFpupp_32(x64emu_t *emu, uintptr_t fcn) { pFpupp_t fn = (pFpupp_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptriv(R_ESP + 12), from_ptriv(R_ESP + 16))); } void pFpLiS_32(x64emu_t *emu, uintptr_t fcn) { pFpLiS_t fn = (pFpLiS_t)fcn; R_EAX = to_ptrv(fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(int32_t, R_ESP + 12), io_convert32(from_ptriv(R_ESP + 16)))); } 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))); } @@ -1931,7 +1952,7 @@ void vFXLLbL__32(x64emu_t *emu, uintptr_t fcn) { vFXLLbL__t fn = (vFXLLbL__t)fcn void iFppbp_p_32(x64emu_t *emu, uintptr_t fcn) { iFppbp_p_t fn = (iFppbp_p_t)fcn; struct_p_t arg_12={0}; if (*(ptr_t*)(from_ptr((R_ESP + 12)))) from_struct_p(&arg_12, *(ptr_t*)(from_ptr((R_ESP + 12)))); R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), *(ptr_t*)(from_ptr((R_ESP + 12))) ? &arg_12 : NULL, from_ptriv(R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 12)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void iFBp_pui_32(x64emu_t *emu, uintptr_t fcn) { iFBp_pui_t fn = (iFBp_pui_t)fcn; struct_p_t arg_4={0}; R_EAX = fn(*(ptr_t*)(from_ptr((R_ESP + 4))) ? &arg_4 : NULL, from_ptriv(R_ESP + 8), from_ptri(uint32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); if (*(ptr_t*)(from_ptr((R_ESP + 4)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 4))), &arg_4); } void IFpBp_ii_32(x64emu_t *emu, uintptr_t fcn) { IFpBp_ii_t fn = (IFpBp_ii_t)fcn; struct_p_t arg_8={0}; ui64_t r; r.i = fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); R_EAX = r.d[0]; R_EDX = r.d[1]; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } -void uFppiBp__32(x64emu_t *emu, uintptr_t fcn) { uFppiBp__t fn = (uFppiBp__t)fcn; struct_p_t arg_16={0}; R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } +void uFppibp__32(x64emu_t *emu, uintptr_t fcn) { uFppibp__t fn = (uFppibp__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)))); R_EAX = (uint32_t)fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), *(ptr_t*)(from_ptr((R_ESP + 16))) ? &arg_16 : NULL); if (*(ptr_t*)(from_ptr((R_ESP + 16)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 16))), &arg_16); } void UFpBp_ii_32(x64emu_t *emu, uintptr_t fcn) { UFpBp_ii_t fn = (UFpBp_ii_t)fcn; struct_p_t arg_8={0}; ui64_t r; r.u = (uint64_t)fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ptri(int32_t, R_ESP + 12), from_ptri(int32_t, R_ESP + 16)); R_EAX = r.d[0]; R_EDX = r.d[1]; if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } void lFiibl_L_32(x64emu_t *emu, uintptr_t fcn) { lFiibl_L_t fn = (lFiibl_L_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 = to_long(fn(from_ptri(int32_t, R_ESP + 4), from_ptri(int32_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_l(*(ptr_t*)(from_ptr((R_ESP + 12))), &arg_12); } void LFpbp_Lp_32(x64emu_t *emu, uintptr_t fcn) { LFpbp_Lp_t fn = (LFpbp_Lp_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)))); R_EAX = to_ulong(fn(from_ptriv(R_ESP + 4), *(ptr_t*)(from_ptr((R_ESP + 8))) ? &arg_8 : NULL, from_ulong(from_ptri(ulong_t, R_ESP + 12)), from_ptriv(R_ESP + 16))); if (*(ptr_t*)(from_ptr((R_ESP + 8)))) to_struct_p(*(ptr_t*)(from_ptr((R_ESP + 8))), &arg_8); } @@ -2062,6 +2083,7 @@ void iFippLi_32(x64emu_t *emu, uintptr_t fcn) { iFippLi_t fn = (iFippLi_t)fcn; R void iFuiuup_32(x64emu_t *emu, uintptr_t fcn) { iFuiuup_t fn = (iFuiuup_t)fcn; R_EAX = fn(from_ptri(uint32_t, 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_ptriv(R_ESP + 20)); } void iFpippp_32(x64emu_t *emu, uintptr_t fcn) { iFpippp_t fn = (iFpippp_t)fcn; R_EAX = fn(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)); } void iFpCCCC_32(x64emu_t *emu, uintptr_t fcn) { iFpCCCC_t fn = (iFpCCCC_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint8_t, R_ESP + 8), from_ptri(uint8_t, R_ESP + 12), from_ptri(uint8_t, R_ESP + 16), from_ptri(uint8_t, R_ESP + 20)); } +void iFpuipp_32(x64emu_t *emu, uintptr_t fcn) { iFpuipp_t fn = (iFpuipp_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptri(uint32_t, R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptriv(R_ESP + 16), from_ptriv(R_ESP + 20)); } void iFpLuLi_32(x64emu_t *emu, uintptr_t fcn) { iFpLuLi_t fn = (iFpLuLi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ulong(from_ptri(ulong_t, R_ESP + 8)), from_ptri(uint32_t, R_ESP + 12), from_ulong(from_ptri(ulong_t, R_ESP + 16)), from_ptri(int32_t, R_ESP + 20)); } void iFppiUi_32(x64emu_t *emu, uintptr_t fcn) { iFppiUi_t fn = (iFppiUi_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptri(int32_t, R_ESP + 12), from_ptri(uint64_t, R_ESP + 16), from_ptri(int32_t, R_ESP + 24)); } void iFpppip_32(x64emu_t *emu, uintptr_t fcn) { iFpppip_t fn = (iFpppip_t)fcn; R_EAX = fn(from_ptriv(R_ESP + 4), from_ptriv(R_ESP + 8), from_ptriv(R_ESP + 12), from_ptri(int32_t, R_ESP + 16), from_ptriv(R_ESP + 20)); } diff --git a/src/wrapped32/generated/wrapper32.h b/src/wrapped32/generated/wrapper32.h index 90c2a2a4..c4122a9a 100644 --- a/src/wrapped32/generated/wrapper32.h +++ b/src/wrapped32/generated/wrapper32.h @@ -285,8 +285,10 @@ void iFuBLL__32(x64emu_t *emu, uintptr_t fnc); void iFprll__32(x64emu_t *emu, uintptr_t fnc); void iFpbup__32(x64emu_t *emu, uintptr_t fnc); void iFprLL__32(x64emu_t *emu, uintptr_t fnc); +void iFbpi_i_32(x64emu_t *emu, uintptr_t fnc); void iFBll_p_32(x64emu_t *emu, uintptr_t fnc); void iFSBliu__32(x64emu_t *emu, uintptr_t fnc); +void iFbppi_i_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 vFbll_rllll__32(x64emu_t *emu, uintptr_t fnc); @@ -357,6 +359,7 @@ void vFpuU_32(x64emu_t *emu, uintptr_t fnc); void vFpuf_32(x64emu_t *emu, uintptr_t fnc); void vFpud_32(x64emu_t *emu, uintptr_t fnc); void vFpup_32(x64emu_t *emu, uintptr_t fnc); +void vFpdd_32(x64emu_t *emu, uintptr_t fnc); 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); @@ -410,6 +413,7 @@ void iFpLu_32(x64emu_t *emu, uintptr_t fnc); void iFpLp_32(x64emu_t *emu, uintptr_t fnc); void iFppi_32(x64emu_t *emu, uintptr_t fnc); void iFppu_32(x64emu_t *emu, uintptr_t fnc); +void iFppd_32(x64emu_t *emu, uintptr_t fnc); void iFppL_32(x64emu_t *emu, uintptr_t fnc); void iFppp_32(x64emu_t *emu, uintptr_t fnc); void iFppa_32(x64emu_t *emu, uintptr_t fnc); @@ -442,7 +446,9 @@ void uFuuu_32(x64emu_t *emu, uintptr_t fnc); void uFuup_32(x64emu_t *emu, uintptr_t fnc); void uFupp_32(x64emu_t *emu, uintptr_t fnc); void uFpuU_32(x64emu_t *emu, uintptr_t fnc); +void uFpup_32(x64emu_t *emu, uintptr_t fnc); void uFppu_32(x64emu_t *emu, uintptr_t fnc); +void uFppp_32(x64emu_t *emu, uintptr_t fnc); void fFuii_32(x64emu_t *emu, uintptr_t fnc); void fFfff_32(x64emu_t *emu, uintptr_t fnc); void fFffp_32(x64emu_t *emu, uintptr_t fnc); @@ -482,6 +488,7 @@ void pFpcU_32(x64emu_t *emu, uintptr_t fnc); void pFpii_32(x64emu_t *emu, uintptr_t fnc); void pFpiu_32(x64emu_t *emu, uintptr_t fnc); void pFpiL_32(x64emu_t *emu, uintptr_t fnc); +void pFpip_32(x64emu_t *emu, uintptr_t fnc); void pFpiS_32(x64emu_t *emu, uintptr_t fnc); void pFpII_32(x64emu_t *emu, uintptr_t fnc); void pFpup_32(x64emu_t *emu, uintptr_t fnc); @@ -649,6 +656,7 @@ void iFuiup_32(x64emu_t *emu, uintptr_t fnc); void iFuupi_32(x64emu_t *emu, uintptr_t fnc); void iFpiiL_32(x64emu_t *emu, uintptr_t fnc); void iFpipp_32(x64emu_t *emu, uintptr_t fnc); +void iFpupi_32(x64emu_t *emu, uintptr_t fnc); void iFpupp_32(x64emu_t *emu, uintptr_t fnc); void iFppii_32(x64emu_t *emu, uintptr_t fnc); void iFppiU_32(x64emu_t *emu, uintptr_t fnc); @@ -656,6 +664,7 @@ void iFppip_32(x64emu_t *emu, uintptr_t fnc); void iFppui_32(x64emu_t *emu, uintptr_t fnc); void iFppLi_32(x64emu_t *emu, uintptr_t fnc); void iFpppi_32(x64emu_t *emu, uintptr_t fnc); +void iFpppu_32(x64emu_t *emu, uintptr_t fnc); void iFpppL_32(x64emu_t *emu, uintptr_t fnc); void iFpppp_32(x64emu_t *emu, uintptr_t fnc); void iFSpiL_32(x64emu_t *emu, uintptr_t fnc); @@ -702,6 +711,7 @@ void pFullu_32(x64emu_t *emu, uintptr_t fnc); void pFlfff_32(x64emu_t *emu, uintptr_t fnc); void pFpiLL_32(x64emu_t *emu, uintptr_t fnc); void pFpuii_32(x64emu_t *emu, uintptr_t fnc); +void pFpupp_32(x64emu_t *emu, uintptr_t fnc); 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); @@ -713,7 +723,7 @@ void vFXLLbL__32(x64emu_t *emu, uintptr_t fnc); void iFppbp_p_32(x64emu_t *emu, uintptr_t fnc); void iFBp_pui_32(x64emu_t *emu, uintptr_t fnc); void IFpBp_ii_32(x64emu_t *emu, uintptr_t fnc); -void uFppiBp__32(x64emu_t *emu, uintptr_t fnc); +void uFppibp__32(x64emu_t *emu, uintptr_t fnc); void UFpBp_ii_32(x64emu_t *emu, uintptr_t fnc); void lFiibl_L_32(x64emu_t *emu, uintptr_t fnc); void LFpbp_Lp_32(x64emu_t *emu, uintptr_t fnc); @@ -844,6 +854,7 @@ void iFippLi_32(x64emu_t *emu, uintptr_t fnc); void iFuiuup_32(x64emu_t *emu, uintptr_t fnc); void iFpippp_32(x64emu_t *emu, uintptr_t fnc); void iFpCCCC_32(x64emu_t *emu, uintptr_t fnc); +void iFpuipp_32(x64emu_t *emu, uintptr_t fnc); void iFpLuLi_32(x64emu_t *emu, uintptr_t fnc); void iFppiUi_32(x64emu_t *emu, uintptr_t fnc); void iFpppip_32(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped32/wrappedfontconfig_private.h b/src/wrapped32/wrappedfontconfig_private.h index f833ac19..36821094 100644 --- a/src/wrapped32/wrappedfontconfig_private.h +++ b/src/wrapped32/wrappedfontconfig_private.h @@ -4,201 +4,201 @@ // FcValue is a typedef with int+union, with biggest part is a double => so 3 "u32" on the stack -//GO(FcAtomicCreate, pFp) -//GO(FcAtomicDeleteNew, vFp) -//GO(FcAtomicDestroy, vFp) -//GO(FcAtomicLock, iFp) -//GO(FcAtomicNewFile, pFp) -//GO(FcAtomicOrigFile, pFp) -//GO(FcAtomicReplaceOrig, iFp) -//GO(FcAtomicUnlock, vFp) -//GO(FcBlanksAdd, iFpu) -//GO(FcBlanksCreate, pFv) -//GO(FcBlanksDestroy, vFp) -//GO(FcBlanksIsMember, iFpu) -//GO(FcCacheCopySet, pFp) -//GO(FcCacheDir, pFp) -//GO(FcCacheNumFont, iFp) -//GO(FcCacheNumSubdir, iFp) -//GO(FcCacheSubdir, pFpi) -//GO(FcCharSetAddChar, iFpu) -//GO(FcCharSetCopy, pFp) -//GO(FcCharSetCount, uFp) -//GO(FcCharSetCoverage, uFpup) -//GO(FcCharSetCreate, pFv) -//GO(FcCharSetDestroy, vFp) -//GO(FcCharSetEqual, iFpp) -//GO(FcCharSetFirstPage, uFppp) // second p is a fixed sized array -//GO(FcCharSetHasChar, iFpu) -//GO(FcCharSetIntersect, pFpp) -//GO(FcCharSetIntersectCount, uFpp) -//GO(FcCharSetIsSubset, iFpp) -//GO(FcCharSetMerge, iFppp) -//GO(FcCharSetNew, pFv) -//GO(FcCharSetNextPage, uFppp) -//GO(FcCharSetSubtract, pFpp) -//GO(FcCharSetSubtractCount, uFpp) -//GO(FcCharSetUnion, pFpp) -//GO(FcConfigAppFontAddDir, iFpp) -//GO(FcConfigAppFontAddFile, iFpp) -//GO(FcConfigAppFontClear, vFp) -//GO(FcConfigBuildFonts, iFp) -//GO(FcConfigCreate, pFv) -//GO(FcConfigDestroy, vFp) -//GO(FcConfigEnableHome, iFi) -//GO(FcConfigFilename, pFp) -//GO(FcConfigGetBlanks, pFp) -//GO(FcConfigGetCache, pFp) -//GO(FcConfigGetCacheDirs, pFp) -//GO(FcConfigGetConfigDirs, pFp) -//GO(FcConfigGetConfigFiles, pFp) +GO(FcAtomicCreate, pFp) +GO(FcAtomicDeleteNew, vFp) +GO(FcAtomicDestroy, vFp) +GO(FcAtomicLock, iFp) +GO(FcAtomicNewFile, pFp) +GO(FcAtomicOrigFile, pFp) +GO(FcAtomicReplaceOrig, iFp) +GO(FcAtomicUnlock, vFp) +GO(FcBlanksAdd, iFpu) +GO(FcBlanksCreate, pFv) +GO(FcBlanksDestroy, vFp) +GO(FcBlanksIsMember, iFpu) +GO(FcCacheCopySet, pFp) //GO(FcCacheCopySet, biibp__Fp) +GO(FcCacheDir, pFp) +GO(FcCacheNumFont, iFp) +GO(FcCacheNumSubdir, iFp) +GO(FcCacheSubdir, pFpi) +GO(FcCharSetAddChar, iFpu) +GO(FcCharSetCopy, pFp) +GO(FcCharSetCount, uFp) +GO(FcCharSetCoverage, uFpup) +GO(FcCharSetCreate, pFv) +GO(FcCharSetDestroy, vFp) +GO(FcCharSetEqual, iFpp) +GO(FcCharSetFirstPage, uFppp) // second p is a fixed sized array +GO(FcCharSetHasChar, iFpu) +GO(FcCharSetIntersect, pFpp) +GO(FcCharSetIntersectCount, uFpp) +GO(FcCharSetIsSubset, iFpp) +GO(FcCharSetMerge, iFppp) +GO(FcCharSetNew, pFv) +GO(FcCharSetNextPage, uFppp) +GO(FcCharSetSubtract, pFpp) +GO(FcCharSetSubtractCount, uFpp) +GO(FcCharSetUnion, pFpp) +GO(FcConfigAppFontAddDir, iFpp) +GO(FcConfigAppFontAddFile, iFpp) +GO(FcConfigAppFontClear, vFp) +GO(FcConfigBuildFonts, iFp) +GO(FcConfigCreate, pFv) +GO(FcConfigDestroy, vFp) +GO(FcConfigEnableHome, iFi) +GO(FcConfigFilename, pFp) +GO(FcConfigGetBlanks, pFp) +GO(FcConfigGetCache, pFp) +GO(FcConfigGetCacheDirs, pFp) +GO(FcConfigGetConfigDirs, pFp) +GO(FcConfigGetConfigFiles, pFp) GO(FcConfigGetCurrent, pFv) // need wrapping for FcConfig? -//GO(FcConfigGetFontDirs, pFp) -//GO(FcConfigGetFonts, pFpu) -//GO(FcConfigGetRescanInterval, iFp) +GO(FcConfigGetFontDirs, pFp) +//GO(FcConfigGetFonts, biibp__Fpu) +GO(FcConfigGetRescanInterval, iFp) //GO(FcConfigGetRescanInverval, -//GO(FcConfigGetSysRoot, pFp) -//GO(FcConfigHome, pFv) -//GO(FcConfigParseAndLoad, iFppi) -//GO(FcConfigReference, pFp) -//GO(FcConfigSetCurrent, iFp) -//GO(FcConfigSetRescanInterval, iFpi) +GO(FcConfigGetSysRoot, pFp) +GO(FcConfigHome, pFv) +GO(FcConfigParseAndLoad, iFppi) +GO(FcConfigReference, pFp) +GO(FcConfigSetCurrent, iFp) +GO(FcConfigSetRescanInterval, iFpi) //GO(FcConfigSetRescanInverval, GO(FcConfigSubstitute, iFppu) // might need wrapping, 1st arg is FcConfig -//GO(FcConfigSubstituteWithPat, iFpppu) -//GO(FcConfigUptoDate, iFp) +GO(FcConfigSubstituteWithPat, iFpppu) +GO(FcConfigUptoDate, iFp) GO(FcDefaultSubstitute, vFp) -//GO(FcDirCacheLoad, pFppp) +GO(FcDirCacheLoad, pFppbp_) //GO(FcDirCacheLoadFile, pFpp) -//GO(FcDirCacheRead, pFpip) -//GO(FcDirCacheUnlink, iFpp) -//GO(FcDirCacheUnload, vFp) -//GO(FcDirCacheValid, iFp) -//GO(FcDirSave, iFppp) -//GO(FcDirScan, iFpppppi) -//GO(FcFileIsDir, iFp) -//GO(FcFileScan, iFpppppi) -//GO(FcFini, vFv) -GO(FcFontList, pFppp) // need wrapping of returned FcFontSet? +GO(FcDirCacheRead, pFpip) +GO(FcDirCacheUnlink, iFpp) +GO(FcDirCacheUnload, vFp) +GO(FcDirCacheValid, iFp) +//GO(FcDirSave, iFbiibp__pp) +//GO(FcDirScan, iFbiibp__ppppi) +GO(FcFileIsDir, iFp) +//GO(FcFileScan, iFbiibp__ppppi) +GO(FcFini, vFv) +GO(FcFontList, pFppp) // need wrapping of returned FcFontSet? GO(FcFontList, biibp__Fppbiibp__) GO(FcFontMatch, pFppp) -//GO(FcFontRenderPrepare, pFppp) -//GO(FcFontSetAdd, iFpp) -//GO(FcFontSetCreate, pFv) -GO(FcFontSetDestroy, vFp) -//GO(FcFontSetList, pFppipp) -//GO(FcFontSetMatch, pFppipp) -//GO(FcFontSetPrint, vFp) -//GO(FcFontSetSort, pFppipipp) -//GO(FcFontSetSortDestroy, vFp) -//GO(FcFontSort, pFppipp) +GO(FcFontRenderPrepare, pFppp) +//GO(FcFontSetAdd, iFbiibp__p) +//GO(FcFontSetCreate, biibp__Fv) +GO(FcFontSetDestroy, vFp) //GO(FcFontSetDestroy, vFbiibp__) +//GO(FcFontSetList, biibp__Fpbbiibp___ipbiibp__) +//GO(FcFontSetMatch, pFpbbiibp___ipp) +//GO(FcFontSetPrint, vFbiibp__) +//GO(FcFontSetSort, biibp__Fpbbiibp___ipibp_p) +//GO(FcFontSetSortDestroy, vFbiibp__) +//GO(FcFontSort, biibp__Fppibp_p) //GO(FcFreeTypeCharIndex, uFpu) //GO(FcFreeTypeCharSet, //GO(FcFreeTypeCharSetAndSpacing, -//GO(FcFreeTypeQuery, pFpupp) +GO(FcFreeTypeQuery, pFpupp) //GO(FcFreeTypeQueryFace, pFppip) -//GO(FcGetLangs, pFv) +GO(FcGetLangs, pFv) GO(FcGetVersion, iFv) GO(FcInit, iFv) GO(FcInitBringUptoDate, iFv) -//GO(FcInitLoadConfig, pFv) -//GO(FcInitLoadConfigAndFonts, pFv) +GO(FcInitLoadConfig, pFv) +GO(FcInitLoadConfigAndFonts, pFv) GO(FcInitReinitialize, iFv) -//GO(FcLangGetCharSet, pFp) -//GO(FcLangSetAdd, iFpp) -//GO(FcLangSetCompare, uFpp) -//GO(FcLangSetContains, iFpp) -//GO(FcLangSetCopy, pFp) -//GO(FcLangSetCreate, pFv) -//GO(FcLangSetDestroy, vFp) -//GO(FcLangSetEqual, iFpp) -//GO(FcLangSetGetLangs, pFp) -//GO(FcLangSetHash, uFp) -//GO(FcLangSetHasLang, uFpp) -//GO(FcMatrixCopy, pFp) -//GO(FcMatrixEqual, iFpp) -//GO(FcMatrixMultiply, vFppp) -//GO(FcMatrixRotate, vFpdd) -//GO(FcMatrixScale, vFpdd) -//GO(FcMatrixShear, vFpdd) -//GO(FcNameConstant, iFpp) -//GO(FcNameGetConstant, pFp) -//GO(FcNameGetObjectType, pFp) -//GO(FcNameParse, pFp) -//GO(FcNameRegisterConstants, iFpi) -//GO(FcNameRegisterObjectTypes, iFpi) -//GO(FcNameUnparse, pFp) -//GO(FcNameUnregisterConstants, iFpi) -//GO(FcNameUnregisterObjectTypes, iFpi) -GO(FcObjectSetAdd, iFpp) -//GOM(FcObjectSetBuild, pFEpV) -GO(FcObjectSetCreate, pFv) -GO(FcObjectSetDestroy, vFp) -//GOM(FcObjectSetVaBuild, pFEpA) +GO(FcLangGetCharSet, pFp) +GO(FcLangSetAdd, iFpp) +GO(FcLangSetCompare, uFpp) +GO(FcLangSetContains, iFpp) +GO(FcLangSetCopy, pFp) +GO(FcLangSetCreate, pFv) +GO(FcLangSetDestroy, vFp) +GO(FcLangSetEqual, iFpp) +GO(FcLangSetGetLangs, pFp) +GO(FcLangSetHash, uFp) +GO(FcLangSetHasLang, uFpp) +GO(FcMatrixCopy, pFp) +GO(FcMatrixEqual, iFpp) +GO(FcMatrixMultiply, vFppp) +GO(FcMatrixRotate, vFpdd) +GO(FcMatrixScale, vFpdd) +GO(FcMatrixShear, vFpdd) +GO(FcNameConstant, iFpp) +//GO(FcNameGetConstant, bppi_Fp) +//GO(FcNameGetObjectType, bpi_Fp) +GO(FcNameParse, pFp) +GO(FcNameRegisterConstants, iFbppi_i) +GO(FcNameRegisterObjectTypes, iFbpi_i) +GO(FcNameUnparse, pFp) +GO(FcNameUnregisterConstants, iFbppi_i) +GO(FcNameUnregisterObjectTypes, iFbpi_i) +GO(FcObjectSetAdd, iFpp) //GO(FcObjectSetAdd, iFbiibp__p) +//GOM(FcObjectSetBuild, biibp__FEpV) +GO(FcObjectSetCreate, pFv) //GO(FcObjectSetCreate, biibp__Fv) +GO(FcObjectSetDestroy, vFp) //GO(FcObjectSetDestroy, vFbiibp__) +//GOM(FcObjectSetVaBuild, biibp__FEpp) GOM(FcPatternAdd, iFppiUi) //%noE //need M for the iU that is a an FcValue -//GO(FcPatternAddBool, iFppi) -//GO(FcPatternAddCharSet, iFppp) -//GO(FcPatternAddDouble, iFppd) +GO(FcPatternAddBool, iFppi) +GO(FcPatternAddCharSet, iFppp) +GO(FcPatternAddDouble, iFppd) //GO(FcPatternAddFTFace, iFppp) -//GO(FcPatternAddInteger, iFppi) -//GO(FcPatternAddLangSet, iFppp) -//GO(FcPatternAddMatrix, iFppp) -//GO(FcPatternAddString, iFppp) +GO(FcPatternAddInteger, iFppi) +GO(FcPatternAddLangSet, iFppp) +GO(FcPatternAddMatrix, iFppp) +GO(FcPatternAddString, iFppp) //GO(FcPatternAddWeak, iFppiLi) //GOM(FcPatternBuild, pFEpV) GO(FcPatternCreate, pFv) -//GO(FcPatternDel, iFpp) +GO(FcPatternDel, iFpp) GO(FcPatternDestroy, vFp) -//GO(FcPatternDuplicate, pFp) -//GO(FcPatternEqual, iFpp) -//GO(FcPatternEqualSubset, iFppp) -//GO(FcPatternFilter, pFpp) -//GO(FcPatternFormat, pFpp) +GO(FcPatternDuplicate, pFp) +GO(FcPatternEqual, iFpp) +//GO(FcPatternEqualSubset, iFppbiibp__) +//GO(FcPatternFilter, pFpbiibp__) +GO(FcPatternFormat, pFpp) //GO(FcPatternGet, uFppip) GO(FcPatternGetBool, uFppip) -//GO(FcPatternGetCharSet, uFppip) -//GO(FcPatternGetDouble, uFppip) +GO(FcPatternGetCharSet, uFppibp_) +GO(FcPatternGetDouble, uFppip) //GO(FcPatternGetFTFace, iFppip) -//GO(FcPatternGetInteger, uFppip) -//GO(FcPatternGetLangSet, uFppip) -//GO(FcPatternGetMatrix, uFppip) -GO(FcPatternGetString, uFppiBp_) -//GO(FcPatternHash, uFp) -//GO(FcPatternPrint, vFp) -//GO(FcPatternReference, vFp) -//GO(FcPatternRemove, iFppi) -//GOM(FcPatternVaBuild, pFEpA) -//GO(FcStrBasename, pFp) -//GO(FcStrCmp, iFpp) -//GO(FcStrCmpIgnoreCase, iFpp) -//GO(FcStrCopy, pFp) -//GO(FcStrCopyFilename, pFp) -//GO(FcStrDirname, pFp) -//GO(FcStrDowncase, pFp) -//GO(FcStrFree, vFp) -//GO(FcStrListCreate, pFp) -//GO(FcStrListDone, vFp) -//GO(FcStrListFirst, vFp) -//GO(FcStrListNext, pFp) -//GO(FcStrPlus, pFpp) -//GO(FcStrSetAdd, iFpp) -//GO(FcStrSetAddFilename, iFpp) -//GO(FcStrSetCreate, pFv) -//GO(FcStrSetDel, iFpp) -//GO(FcStrSetDestroy, vFp) -//GO(FcStrSetEqual, iFpp) -//GO(FcStrSetMember, iFpp) -//GO(FcStrStr, pFpp) -//GO(FcStrStrIgnoreCase, pFpp) -//GO(FcUcs4ToUtf8, iFup) -//GO(FcUtf16Len, iFpuipp) -//GO(FcUtf16ToUcs4, iFpupi) -//GO(FcUtf8Len, iFpipp) -//GO(FcUtf8ToUcs4, iFppi) +GO(FcPatternGetInteger, uFppip) +GO(FcPatternGetLangSet, uFppibp_) +GO(FcPatternGetMatrix, uFppibp_) +GO(FcPatternGetString, uFppibp_) +GO(FcPatternHash, uFp) +GO(FcPatternPrint, vFp) +GO(FcPatternReference, vFp) +GO(FcPatternRemove, iFppi) +//GOM(FcPatternVaBuild, pFEpp) +GO(FcStrBasename, pFp) +GO(FcStrCmp, iFpp) +GO(FcStrCmpIgnoreCase, iFpp) +GO(FcStrCopy, pFp) +GO(FcStrCopyFilename, pFp) +GO(FcStrDirname, pFp) +GO(FcStrDowncase, pFp) +GO(FcStrFree, vFp) +GO(FcStrListCreate, pFp) +GO(FcStrListDone, vFp) +GO(FcStrListFirst, vFp) +GO(FcStrListNext, pFp) +GO(FcStrPlus, pFpp) +GO(FcStrSetAdd, iFpp) +GO(FcStrSetAddFilename, iFpp) +GO(FcStrSetCreate, pFv) +GO(FcStrSetDel, iFpp) +GO(FcStrSetDestroy, vFp) +GO(FcStrSetEqual, iFpp) +GO(FcStrSetMember, iFpp) +GO(FcStrStr, pFpp) +GO(FcStrStrIgnoreCase, pFpp) +GO(FcUcs4ToUtf8, iFup) +GO(FcUtf16Len, iFpuipp) +GO(FcUtf16ToUcs4, iFpupi) +GO(FcUtf8Len, iFpipp) +GO(FcUtf8ToUcs4, iFppi) //GO(FcValueDestroy, //GO(FcValueEqual, //GO(FcValuePrint, //GO(FcValueSave, -//GO(FcWeightFromOpenTypeDouble, dFd) -//GO(FcWeightToOpenTypeDouble, dFd) +GO(FcWeightFromOpenTypeDouble, dFd) +GO(FcWeightToOpenTypeDouble, dFd) //GO(_fini, //GO(_init, |