diff options
| author | Yang Liu <liuyang22@iscas.ac.cn> | 2025-09-02 17:34:06 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-09-02 11:34:06 +0200 |
| commit | 994ce41adc2efb811d890dfd28c1d37841630b01 (patch) | |
| tree | 391bbbd6996e268448681523bda913b85291cdc7 /src | |
| parent | d8905272818e6355bcebc578c28bd7ac4a0a5975 (diff) | |
| download | box64-994ce41adc2efb811d890dfd28c1d37841630b01.tar.gz box64-994ce41adc2efb811d890dfd28c1d37841630b01.zip | |
[WRAPPER] Wrapped a bunch of symbols (#2997)
Diffstat (limited to 'src')
| -rw-r--r-- | src/emu/x64printer.c | 48 | ||||
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 28 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedlibdrmtypes.h | 4 | ||||
| -rw-r--r-- | src/wrapped/generated/wrappedpulsetypes.h | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 86 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 25 | ||||
| -rw-r--r-- | src/wrapped/wrappeddecor0_private.h | 114 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibasound_private.h | 30 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibbsd_private.h | 4 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibdrm.c | 92 | ||||
| -rw-r--r-- | src/wrapped/wrappedlibdrm_private.h | 295 | ||||
| -rw-r--r-- | src/wrapped/wrappedpulse.c | 31 | ||||
| -rw-r--r-- | src/wrapped/wrappedpulse_private.h | 1 |
13 files changed, 530 insertions, 229 deletions
diff --git a/src/emu/x64printer.c b/src/emu/x64printer.c index a226af06..d186aa0d 100644 --- a/src/emu/x64printer.c +++ b/src/emu/x64printer.c @@ -363,6 +363,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint64_t)R_RSI); } else if (w == iFil) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (intptr_t)R_RSI); + } else if (w == iFiL) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uintptr_t)R_RSI); } else if (w == iFip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI); } else if (w == iFWW) { @@ -961,8 +963,16 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX); } else if (w == iFiuu) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); + } else if (w == iFiuL) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); } else if (w == iFiup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); + } else if (w == iFiUU) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); + } else if (w == iFiUp) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); + } else if (w == iFidd) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIf ", %" PRIf ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } else if (w == iFill) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi64 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } else if (w == iFilp) { @@ -1373,6 +1383,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIf ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, emu->xmm[0].d[0]); } else if (w == pFiip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX); + } else if (w == pFiuu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); } else if (w == pFiup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); } else if (w == pFiLL) { @@ -1921,8 +1933,14 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu16 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint16_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); } else if (w == iFiuwp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIi16 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (int16_t)R_RDX, (void*)R_RCX); + } else if (w == iFiuii) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); + } else if (w == iFiuuU) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); } else if (w == iFiuup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); + } else if (w == iFiupu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); } else if (w == iFiupp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } else if (w == iFilli) { @@ -1939,6 +1957,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); } else if (w == iFipuU) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); + } else if (w == iFipup) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); } else if (w == iFipLi) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIu64 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX); } else if (w == iFipLu) { @@ -2063,6 +2083,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); } else if (w == iFpuuu) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); + } else if (w == iFpuuU) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); } else if (w == iFpuul) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIi64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (intptr_t)R_RCX); } else if (w == iFpuuL) { @@ -3077,6 +3099,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } else if (w == iFiiiip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); + } else if (w == iFiiiui) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8); } else if (w == iFiiipu) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); } else if (w == iFiiipp) { @@ -3087,14 +3111,20 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } else if (w == iFiuuuu) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); + } else if (w == iFiuuuU) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint64_t)R_R8); } else if (w == iFiuuup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); } else if (w == iFiuUip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu64 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } else if (w == iFillLL) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi64 ", %" PRIi64 ", %" PRIu64 ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8); + } else if (w == iFiLLpp) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu64 ", %" PRIu64 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } else if (w == iFipiii) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); + } else if (w == iFipiip) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } else if (w == iFipipi) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8); } else if (w == iFipipu) { @@ -4069,6 +4099,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu16 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint16_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9); } else if (w == iFiuuuup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); + } else if (w == iFiuuupu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (uint32_t)R_R9); + } else if (w == iFiuuUpU) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu64 ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9); } else if (w == iFiuuppp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } else if (w == iFiuUuUu) { @@ -4897,6 +4931,10 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu64 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } else if (w == iFEpppppp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); + } else if (w == iFiippppp) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); + } else if (w == iFiuuuuii) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); } else if (w == iFiupuuup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); } else if (w == iFiupuppp) { @@ -5429,6 +5467,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } else if (w == iFiiupiupi) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIi32 ", %" PRIu32 ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); + } else if (w == iFiipppppp) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } else if (w == iFiuuCCuup) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu8 ", %" PRIu8 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } else if (w == iFiuuuupip) { @@ -5789,6 +5829,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); } else if (w == iFEppPPPPPP) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); + } else if (w == iFiuuuppppu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); } else if (w == iFipiipippi) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); } else if (w == iFuiiuuiiip) { @@ -6003,6 +6045,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } else if (w == iFEpppppppip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); + } else if (w == iFiuuupppppu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(uint32_t*)(R_RSP + 32)); } else if (w == iFuiiiuuiiip) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIu32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } else if (w == iFpiiLiiipip) { @@ -6283,6 +6327,8 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIu32 ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIu32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ", %" PRIi32 ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40), *(int32_t*)(R_RSP + 48), *(int32_t*)(R_RSP + 56)); } else if (w == vFppppppppppppp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); + } else if (w == iFiuuuuiiuuuuuu) { + snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIi32 ", %" PRIi32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ", %" PRIu32 ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48), *(uint32_t*)(R_RSP + 56)); } else if (w == iFddddpppddpppp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIf ", %" PRIf ", %" PRIf ", %" PRIf ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIf ", %" PRIf ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[4].d[0], emu->xmm[5].d[0], (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } else if (w == iFpippuuuiipppp) { @@ -6390,8 +6436,6 @@ void x64Print(x64emu_t* emu, char* buff, size_t buffsz, const char* func, int ti } else if (w == iFpppppppppppppppppppppppppppppppppp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56), *(void**)(R_RSP + 64), *(void**)(R_RSP + 72), *(void**)(R_RSP + 80), *(void**)(R_RSP + 88), *(void**)(R_RSP + 96), *(void**)(R_RSP + 104), *(void**)(R_RSP + 112), *(void**)(R_RSP + 120), *(void**)(R_RSP + 128), *(void**)(R_RSP + 136), *(void**)(R_RSP + 144), *(void**)(R_RSP + 152), *(void**)(R_RSP + 160), *(void**)(R_RSP + 168), *(void**)(R_RSP + 176), *(void**)(R_RSP + 184), *(void**)(R_RSP + 192), *(void**)(R_RSP + 200), *(void**)(R_RSP + 208), *(void**)(R_RSP + 216), *(void**)(R_RSP + 224)); #if defined(NOALIGN) - } else if (w == iFipiip) { - snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIi32 ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } else if (w == iFipipp) { snprintf(buff, buffsz, "%04d|%p: Calling %s(%" PRIi32 ", %" PRIp ", %" PRIi32 ", %" PRIp ", %" PRIp ")", tid, *(void**)(R_RSP), func, (int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); #endif diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 140feef3..4a291c2b 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -202,6 +202,7 @@ #() iFiu #() iFiU #() iFil +#() iFiL #() iFip #() iFiS #() iFWW @@ -534,7 +535,11 @@ #() iFiCC #() iFiui #() iFiuu +#() iFiuL #() iFiup +#() iFiUU +#() iFiUp +#() iFidd #() iFill #() iFilp #() iFiLi @@ -615,6 +620,7 @@ #() iFppp #() iFpOi #() iFpOu +#() iFpSi #() iFpSu #() iFpSp #() iFpHH @@ -773,6 +779,7 @@ #() pFiiu #() pFiid #() pFiip +#() pFiuu #() pFiup #() pFiLL #() pFipi @@ -1079,7 +1086,10 @@ #() iFiIIu #() iFiWii #() iFiuwp +#() iFiuii +#() iFiuuU #() iFiuup +#() iFiupu #() iFiupp #() iFilli #() iFiLpL @@ -1088,6 +1098,7 @@ #() iFipWp #() iFipui #() iFipuU +#() iFipup #() iFipLi #() iFipLu #() iFipLp @@ -1151,6 +1162,7 @@ #() iFpuWp #() iFpuui #() iFpuuu +#() iFpuuU #() iFpuul #() iFpuuL #() iFpuup @@ -1709,15 +1721,19 @@ #() iFEpppV #() iFEpppA #() iFiiiip +#() iFiiiui #() iFiiipu #() iFiiipp #() iFiiupp #() iFiippp #() iFiuuuu +#() iFiuuuU #() iFiuuup #() iFiuUip #() iFillLL +#() iFiLLpp #() iFipiii +#() iFipiip #() iFipipi #() iFipipu #() iFipuip @@ -2237,6 +2253,8 @@ #() iFiippiu #() iFiWiipi #() iFiuuuup +#() iFiuuupu +#() iFiuuUpU #() iFiuuppp #() iFiuUuUu #() iFilpppp @@ -2675,6 +2693,8 @@ #() iFEpppLpp #() iFEpppppL #() iFEpppppp +#() iFiippppp +#() iFiuuuuii #() iFiupuuup #() iFiupuppp #() iFipupupi @@ -2958,6 +2978,7 @@ #() iFEpppppuu #() iFEppppppp #() iFiiupiupi +#() iFiipppppp #() iFiuuCCuup #() iFiuuuupip #() iFipippppp @@ -3152,6 +3173,7 @@ #() iFEpppppupp #() iFEppppppuu #() iFEppPPPPPP +#() iFiuuuppppu #() iFipiipippi #() iFuiiuuiiip #() iFuiiupiiup @@ -3269,6 +3291,7 @@ #() iFEpupppLppL #() iFEppppppipp #() iFEpppppppip +#() iFiuuupppppu #() iFuiiiuuiiip #() iFpiiLiiipip #() iFpiLLiiipip @@ -3422,6 +3445,7 @@ #() vFppuuppiiiiuii #() vFppuupppuiiiii #() vFppppppppppppp +#() iFiuuuuiiuuuuuu #() iFddddpppddpppp #() iFpippuuuiipppp #() iFpLLlliiLppppp @@ -3481,7 +3505,6 @@ #() vFpppppppppppppppppppppppp #() pFpupuupppppppppppppppppppp #() iFpppppppppppppppppppppppppppppppppp -#defined(NOALIGN) iFipiip #defined(NOALIGN) iFipipp #!defined(NOALIGN) iFELp #!defined(NOALIGN) iFEppu @@ -4938,6 +4961,8 @@ wrappedlibdl: wrappedlibdrm: - vFpV: - drmMsg +- iFip: + - drmHandleEvent wrappedlibdrmamdgpu: wrappedlibegl: - pFp: @@ -5737,6 +5762,7 @@ wrappedpulse: - pa_context_set_subscribe_callback - pa_mainloop_api_once - pa_mainloop_set_poll_func + - pa_operation_set_state_callback - pa_stream_set_buffer_attr_callback - pa_stream_set_event_callback - pa_stream_set_latency_update_callback diff --git a/src/wrapped/generated/wrappedlibdrmtypes.h b/src/wrapped/generated/wrappedlibdrmtypes.h index 101f4106..5f38e85f 100644 --- a/src/wrapped/generated/wrappedlibdrmtypes.h +++ b/src/wrapped/generated/wrappedlibdrmtypes.h @@ -12,8 +12,10 @@ #endif typedef void (*vFpV_t)(void*, ...); +typedef int32_t (*iFip_t)(int32_t, void*); #define SUPER() ADDED_FUNCTIONS() \ - GO(drmMsg, vFpV_t) + GO(drmMsg, vFpV_t) \ + GO(drmHandleEvent, iFip_t) #endif // __wrappedlibdrmTYPES_H_ diff --git a/src/wrapped/generated/wrappedpulsetypes.h b/src/wrapped/generated/wrappedpulsetypes.h index 85e688e4..a8c8e4b1 100644 --- a/src/wrapped/generated/wrappedpulsetypes.h +++ b/src/wrapped/generated/wrappedpulsetypes.h @@ -46,6 +46,7 @@ typedef void* (*pFpiuCppp_t)(void*, int32_t, uint32_t, uint8_t, void*, void*, vo GO(pa_context_set_subscribe_callback, vFppp_t) \ GO(pa_mainloop_api_once, vFppp_t) \ GO(pa_mainloop_set_poll_func, vFppp_t) \ + GO(pa_operation_set_state_callback, vFppp_t) \ GO(pa_stream_set_buffer_attr_callback, vFppp_t) \ GO(pa_stream_set_event_callback, vFppp_t) \ GO(pa_stream_set_latency_update_callback, vFppp_t) \ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index cf94ae33..d1c7bdc9 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -247,6 +247,7 @@ typedef int32_t (*iFiC_t)(int32_t, uint8_t); typedef int32_t (*iFiu_t)(int32_t, uint32_t); typedef int32_t (*iFiU_t)(int32_t, uint64_t); typedef int32_t (*iFil_t)(int32_t, intptr_t); +typedef int32_t (*iFiL_t)(int32_t, uintptr_t); typedef int32_t (*iFip_t)(int32_t, void*); typedef int32_t (*iFiS_t)(int32_t, void*); typedef int32_t (*iFWW_t)(uint16_t, uint16_t); @@ -568,7 +569,11 @@ typedef int32_t (*iFiII_t)(int32_t, int64_t, int64_t); typedef int32_t (*iFiCC_t)(int32_t, uint8_t, uint8_t); typedef int32_t (*iFiui_t)(int32_t, uint32_t, int32_t); typedef int32_t (*iFiuu_t)(int32_t, uint32_t, uint32_t); +typedef int32_t (*iFiuL_t)(int32_t, uint32_t, uintptr_t); typedef int32_t (*iFiup_t)(int32_t, uint32_t, void*); +typedef int32_t (*iFiUU_t)(int32_t, uint64_t, uint64_t); +typedef int32_t (*iFiUp_t)(int32_t, uint64_t, void*); +typedef int32_t (*iFidd_t)(int32_t, double, double); typedef int32_t (*iFill_t)(int32_t, intptr_t, intptr_t); typedef int32_t (*iFilp_t)(int32_t, intptr_t, void*); typedef int32_t (*iFiLi_t)(int32_t, uintptr_t, int32_t); @@ -649,6 +654,7 @@ typedef int32_t (*iFppL_t)(void*, void*, uintptr_t); typedef int32_t (*iFppp_t)(void*, void*, void*); typedef int32_t (*iFpOi_t)(void*, int32_t, int32_t); typedef int32_t (*iFpOu_t)(void*, int32_t, uint32_t); +typedef int32_t (*iFpSi_t)(void*, void*, int32_t); typedef int32_t (*iFpSu_t)(void*, void*, uint32_t); typedef int32_t (*iFpSp_t)(void*, void*, void*); typedef int32_t (*iFpHH_t)(void*, unsigned __int128, unsigned __int128); @@ -804,6 +810,7 @@ typedef void* (*pFiii_t)(int32_t, int32_t, int32_t); typedef void* (*pFiiu_t)(int32_t, int32_t, uint32_t); typedef void* (*pFiid_t)(int32_t, int32_t, double); typedef void* (*pFiip_t)(int32_t, int32_t, void*); +typedef void* (*pFiuu_t)(int32_t, uint32_t, uint32_t); typedef void* (*pFiup_t)(int32_t, uint32_t, void*); typedef void* (*pFiLL_t)(int32_t, uintptr_t, uintptr_t); typedef void* (*pFipi_t)(int32_t, void*, int32_t); @@ -1109,7 +1116,10 @@ typedef int32_t (*iFiIIi_t)(int32_t, int64_t, int64_t, int32_t); typedef int32_t (*iFiIIu_t)(int32_t, int64_t, int64_t, uint32_t); typedef int32_t (*iFiWii_t)(int32_t, uint16_t, int32_t, int32_t); typedef int32_t (*iFiuwp_t)(int32_t, uint32_t, int16_t, void*); +typedef int32_t (*iFiuii_t)(int32_t, uint32_t, int32_t, int32_t); +typedef int32_t (*iFiuuU_t)(int32_t, uint32_t, uint32_t, uint64_t); typedef int32_t (*iFiuup_t)(int32_t, uint32_t, uint32_t, void*); +typedef int32_t (*iFiupu_t)(int32_t, uint32_t, void*, uint32_t); typedef int32_t (*iFiupp_t)(int32_t, uint32_t, void*, void*); typedef int32_t (*iFilli_t)(int32_t, intptr_t, intptr_t, int32_t); typedef int32_t (*iFiLpL_t)(int32_t, uintptr_t, void*, uintptr_t); @@ -1118,6 +1128,7 @@ typedef int32_t (*iFipip_t)(int32_t, void*, int32_t, void*); typedef int32_t (*iFipWp_t)(int32_t, void*, uint16_t, void*); typedef int32_t (*iFipui_t)(int32_t, void*, uint32_t, int32_t); typedef int32_t (*iFipuU_t)(int32_t, void*, uint32_t, uint64_t); +typedef int32_t (*iFipup_t)(int32_t, void*, uint32_t, void*); typedef int32_t (*iFipLi_t)(int32_t, void*, uintptr_t, int32_t); typedef int32_t (*iFipLu_t)(int32_t, void*, uintptr_t, uint32_t); typedef int32_t (*iFipLp_t)(int32_t, void*, uintptr_t, void*); @@ -1181,6 +1192,7 @@ typedef int32_t (*iFpuip_t)(void*, uint32_t, int32_t, void*); typedef int32_t (*iFpuWp_t)(void*, uint32_t, uint16_t, void*); typedef int32_t (*iFpuui_t)(void*, uint32_t, uint32_t, int32_t); typedef int32_t (*iFpuuu_t)(void*, uint32_t, uint32_t, uint32_t); +typedef int32_t (*iFpuuU_t)(void*, uint32_t, uint32_t, uint64_t); typedef int32_t (*iFpuul_t)(void*, uint32_t, uint32_t, intptr_t); typedef int32_t (*iFpuuL_t)(void*, uint32_t, uint32_t, uintptr_t); typedef int32_t (*iFpuup_t)(void*, uint32_t, uint32_t, void*); @@ -1737,15 +1749,19 @@ typedef int32_t (*iFEpppp_t)(x64emu_t*, void*, void*, void*, void*); typedef int32_t (*iFEpppV_t)(x64emu_t*, void*, void*, void*, void*); typedef int32_t (*iFEpppA_t)(x64emu_t*, void*, void*, void*, void*); typedef int32_t (*iFiiiip_t)(int32_t, int32_t, int32_t, int32_t, void*); +typedef int32_t (*iFiiiui_t)(int32_t, int32_t, int32_t, uint32_t, int32_t); typedef int32_t (*iFiiipu_t)(int32_t, int32_t, int32_t, void*, uint32_t); typedef int32_t (*iFiiipp_t)(int32_t, int32_t, int32_t, void*, void*); typedef int32_t (*iFiiupp_t)(int32_t, int32_t, uint32_t, void*, void*); typedef int32_t (*iFiippp_t)(int32_t, int32_t, void*, void*, void*); typedef int32_t (*iFiuuuu_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t); +typedef int32_t (*iFiuuuU_t)(int32_t, uint32_t, uint32_t, uint32_t, uint64_t); typedef int32_t (*iFiuuup_t)(int32_t, uint32_t, uint32_t, uint32_t, void*); typedef int32_t (*iFiuUip_t)(int32_t, uint32_t, uint64_t, int32_t, void*); typedef int32_t (*iFillLL_t)(int32_t, intptr_t, intptr_t, uintptr_t, uintptr_t); +typedef int32_t (*iFiLLpp_t)(int32_t, uintptr_t, uintptr_t, void*, void*); typedef int32_t (*iFipiii_t)(int32_t, void*, int32_t, int32_t, int32_t); +typedef int32_t (*iFipiip_t)(int32_t, void*, int32_t, int32_t, void*); typedef int32_t (*iFipipi_t)(int32_t, void*, int32_t, void*, int32_t); typedef int32_t (*iFipipu_t)(int32_t, void*, int32_t, void*, uint32_t); typedef int32_t (*iFipuip_t)(int32_t, void*, uint32_t, int32_t, void*); @@ -2265,6 +2281,8 @@ typedef int32_t (*iFiiiuwp_t)(int32_t, int32_t, int32_t, uint32_t, int16_t, void typedef int32_t (*iFiippiu_t)(int32_t, int32_t, void*, void*, int32_t, uint32_t); typedef int32_t (*iFiWiipi_t)(int32_t, uint16_t, int32_t, int32_t, void*, int32_t); typedef int32_t (*iFiuuuup_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t, void*); +typedef int32_t (*iFiuuupu_t)(int32_t, uint32_t, uint32_t, uint32_t, void*, uint32_t); +typedef int32_t (*iFiuuUpU_t)(int32_t, uint32_t, uint32_t, uint64_t, void*, uint64_t); typedef int32_t (*iFiuuppp_t)(int32_t, uint32_t, uint32_t, void*, void*, void*); typedef int32_t (*iFiuUuUu_t)(int32_t, uint32_t, uint64_t, uint32_t, uint64_t, uint32_t); typedef int32_t (*iFilpppp_t)(int32_t, intptr_t, void*, void*, void*, void*); @@ -2702,6 +2720,8 @@ typedef int32_t (*iFEppLpIu_t)(x64emu_t*, void*, void*, uintptr_t, void*, int64_ typedef int32_t (*iFEpppLpp_t)(x64emu_t*, void*, void*, void*, uintptr_t, void*, void*); typedef int32_t (*iFEpppppL_t)(x64emu_t*, void*, void*, void*, void*, void*, uintptr_t); typedef int32_t (*iFEpppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*); +typedef int32_t (*iFiippppp_t)(int32_t, int32_t, void*, void*, void*, void*, void*); +typedef int32_t (*iFiuuuuii_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t); typedef int32_t (*iFiupuuup_t)(int32_t, uint32_t, void*, uint32_t, uint32_t, uint32_t, void*); typedef int32_t (*iFiupuppp_t)(int32_t, uint32_t, void*, uint32_t, void*, void*, void*); typedef int32_t (*iFipupupi_t)(int32_t, void*, uint32_t, void*, uint32_t, void*, int32_t); @@ -2985,6 +3005,7 @@ typedef int32_t (*iFEppppLpp_t)(x64emu_t*, void*, void*, void*, void*, uintptr_t typedef int32_t (*iFEpppppuu_t)(x64emu_t*, void*, void*, void*, void*, void*, uint32_t, uint32_t); typedef int32_t (*iFEppppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*); typedef int32_t (*iFiiupiupi_t)(int32_t, int32_t, uint32_t, void*, int32_t, uint32_t, void*, int32_t); +typedef int32_t (*iFiipppppp_t)(int32_t, int32_t, void*, void*, void*, void*, void*, void*); typedef int32_t (*iFiuuCCuup_t)(int32_t, uint32_t, uint32_t, uint8_t, uint8_t, uint32_t, uint32_t, void*); typedef int32_t (*iFiuuuupip_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t, void*, int32_t, void*); typedef int32_t (*iFipippppp_t)(int32_t, void*, int32_t, void*, void*, void*, void*, void*); @@ -3178,6 +3199,7 @@ typedef int32_t (*iFEppplPPPP_t)(x64emu_t*, void*, void*, void*, intptr_t, void* typedef int32_t (*iFEpppppupp_t)(x64emu_t*, void*, void*, void*, void*, void*, uint32_t, void*, void*); typedef int32_t (*iFEppppppuu_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, uint32_t, uint32_t); typedef int32_t (*iFEppPPPPPP_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef int32_t (*iFiuuuppppu_t)(int32_t, uint32_t, uint32_t, uint32_t, void*, void*, void*, void*, uint32_t); typedef int32_t (*iFipiipippi_t)(int32_t, void*, int32_t, int32_t, void*, int32_t, void*, void*, int32_t); typedef int32_t (*iFuiiuuiiip_t)(uint32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, void*); typedef int32_t (*iFuiiupiiup_t)(uint32_t, int32_t, int32_t, uint32_t, void*, int32_t, int32_t, uint32_t, void*); @@ -3295,6 +3317,7 @@ typedef int32_t (*iFEpiiiiippp_t)(x64emu_t*, void*, int32_t, int32_t, int32_t, i typedef int32_t (*iFEpupppLppL_t)(x64emu_t*, void*, uint32_t, void*, void*, void*, uintptr_t, void*, void*, uintptr_t); typedef int32_t (*iFEppppppipp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, int32_t, void*, void*); typedef int32_t (*iFEpppppppip_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, int32_t, void*); +typedef int32_t (*iFiuuupppppu_t)(int32_t, uint32_t, uint32_t, uint32_t, void*, void*, void*, void*, void*, uint32_t); typedef int32_t (*iFuiiiuuiiip_t)(uint32_t, int32_t, int32_t, int32_t, uint32_t, uint32_t, int32_t, int32_t, int32_t, void*); typedef int32_t (*iFpiiLiiipip_t)(void*, int32_t, int32_t, uintptr_t, int32_t, int32_t, int32_t, void*, int32_t, void*); typedef int32_t (*iFpiLLiiipip_t)(void*, int32_t, uintptr_t, uintptr_t, int32_t, int32_t, int32_t, void*, int32_t, void*); @@ -3448,6 +3471,7 @@ typedef void (*vFppiiiiiiuiuii_t)(void*, void*, int32_t, int32_t, int32_t, int32 typedef void (*vFppuuppiiiiuii_t)(void*, void*, uint32_t, uint32_t, void*, void*, int32_t, int32_t, int32_t, int32_t, uint32_t, int32_t, int32_t); typedef void (*vFppuupppuiiiii_t)(void*, void*, uint32_t, uint32_t, void*, void*, void*, uint32_t, int32_t, int32_t, int32_t, int32_t, int32_t); typedef void (*vFppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef int32_t (*iFiuuuuiiuuuuuu_t)(int32_t, uint32_t, uint32_t, uint32_t, uint32_t, int32_t, int32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t); typedef int32_t (*iFddddpppddpppp_t)(double, double, double, double, void*, void*, void*, double, double, void*, void*, void*, void*); typedef int32_t (*iFpippuuuiipppp_t)(void*, int32_t, void*, void*, uint32_t, uint32_t, uint32_t, int32_t, int32_t, void*, void*, void*, void*); typedef int32_t (*iFpLLlliiLppppp_t)(void*, uintptr_t, uintptr_t, intptr_t, intptr_t, int32_t, int32_t, uintptr_t, void*, void*, void*, void*, void*); @@ -3563,7 +3587,6 @@ typedef void (*vFppippDpDc_t)(void*, void*, int32_t, void*, void*, double, void* #endif #if defined(NOALIGN) -typedef int32_t (*iFipiip_t)(int32_t, void*, int32_t, int32_t, void*); typedef int32_t (*iFipipp_t)(int32_t, void*, int32_t, void*, void*); #endif @@ -3787,6 +3810,7 @@ void iFiC(x64emu_t *emu, uintptr_t fcn) { iFiC_t fn = (iFiC_t)fcn; R_RAX=(uint32 void iFiu(x64emu_t *emu, uintptr_t fcn) { iFiu_t fn = (iFiu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI); } void iFiU(x64emu_t *emu, uintptr_t fcn) { iFiU_t fn = (iFiU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint64_t)R_RSI); } void iFil(x64emu_t *emu, uintptr_t fcn) { iFil_t fn = (iFil_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI); } +void iFiL(x64emu_t *emu, uintptr_t fcn) { iFiL_t fn = (iFiL_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI); } void iFip(x64emu_t *emu, uintptr_t fcn) { iFip_t fn = (iFip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI); } void iFiS(x64emu_t *emu, uintptr_t fcn) { iFiS_t fn = (iFiS_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, io_convert((void*)R_RSI)); } void iFWW(x64emu_t *emu, uintptr_t fcn) { iFWW_t fn = (iFWW_t)fcn; R_RAX=(uint32_t)fn((uint16_t)R_RDI, (uint16_t)R_RSI); } @@ -4108,7 +4132,11 @@ void iFiII(x64emu_t *emu, uintptr_t fcn) { iFiII_t fn = (iFiII_t)fcn; R_RAX=(uin void iFiCC(x64emu_t *emu, uintptr_t fcn) { iFiCC_t fn = (iFiCC_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX); } void iFiui(x64emu_t *emu, uintptr_t fcn) { iFiui_t fn = (iFiui_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX); } void iFiuu(x64emu_t *emu, uintptr_t fcn) { iFiuu_t fn = (iFiuu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); } +void iFiuL(x64emu_t *emu, uintptr_t fcn) { iFiuL_t fn = (iFiuL_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); } void iFiup(x64emu_t *emu, uintptr_t fcn) { iFiup_t fn = (iFiup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); } +void iFiUU(x64emu_t *emu, uintptr_t fcn) { iFiUU_t fn = (iFiUU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } +void iFiUp(x64emu_t *emu, uintptr_t fcn) { iFiUp_t fn = (iFiUp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } +void iFidd(x64emu_t *emu, uintptr_t fcn) { iFidd_t fn = (iFidd_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } void iFill(x64emu_t *emu, uintptr_t fcn) { iFill_t fn = (iFill_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void iFilp(x64emu_t *emu, uintptr_t fcn) { iFilp_t fn = (iFilp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI, (void*)R_RDX); } void iFiLi(x64emu_t *emu, uintptr_t fcn) { iFiLi_t fn = (iFiLi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI, (int32_t)R_RDX); } @@ -4189,6 +4217,7 @@ void iFppL(x64emu_t *emu, uintptr_t fcn) { iFppL_t fn = (iFppL_t)fcn; R_RAX=(uin void iFppp(x64emu_t *emu, uintptr_t fcn) { iFppp_t fn = (iFppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void iFpOi(x64emu_t *emu, uintptr_t fcn) { iFpOi_t fn = (iFpOi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, of_convert((int32_t)R_RSI), (int32_t)R_RDX); } void iFpOu(x64emu_t *emu, uintptr_t fcn) { iFpOu_t fn = (iFpOu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, of_convert((int32_t)R_RSI), (uint32_t)R_RDX); } +void iFpSi(x64emu_t *emu, uintptr_t fcn) { iFpSi_t fn = (iFpSi_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, io_convert((void*)R_RSI), (int32_t)R_RDX); } void iFpSu(x64emu_t *emu, uintptr_t fcn) { iFpSu_t fn = (iFpSu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, io_convert((void*)R_RSI), (uint32_t)R_RDX); } void iFpSp(x64emu_t *emu, uintptr_t fcn) { iFpSp_t fn = (iFpSp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, io_convert((void*)R_RSI), (void*)R_RDX); } void iFpHH(x64emu_t *emu, uintptr_t fcn) { iFpHH_t fn = (iFpHH_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (unsigned __int128)R_RSI + ((unsigned __int128)R_RDX << 64), (unsigned __int128)R_RCX + ((unsigned __int128)R_R8 << 64)); } @@ -4344,6 +4373,7 @@ void pFiii(x64emu_t *emu, uintptr_t fcn) { pFiii_t fn = (pFiii_t)fcn; R_RAX=(uin void pFiiu(x64emu_t *emu, uintptr_t fcn) { pFiiu_t fn = (pFiiu_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX); } void pFiid(x64emu_t *emu, uintptr_t fcn) { pFiid_t fn = (pFiid_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, emu->xmm[0].d[0]); } void pFiip(x64emu_t *emu, uintptr_t fcn) { pFiip_t fn = (pFiip_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX); } +void pFiuu(x64emu_t *emu, uintptr_t fcn) { pFiuu_t fn = (pFiuu_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); } void pFiup(x64emu_t *emu, uintptr_t fcn) { pFiup_t fn = (pFiup_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); } void pFiLL(x64emu_t *emu, uintptr_t fcn) { pFiLL_t fn = (pFiLL_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX); } void pFipi(x64emu_t *emu, uintptr_t fcn) { pFipi_t fn = (pFipi_t)fcn; R_RAX=(uintptr_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX); } @@ -4649,7 +4679,10 @@ void iFiIIi(x64emu_t *emu, uintptr_t fcn) { iFiIIi_t fn = (iFiIIi_t)fcn; R_RAX=( void iFiIIu(x64emu_t *emu, uintptr_t fcn) { iFiIIu_t fn = (iFiIIu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint32_t)R_RCX); } void iFiWii(x64emu_t *emu, uintptr_t fcn) { iFiWii_t fn = (iFiWii_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint16_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); } void iFiuwp(x64emu_t *emu, uintptr_t fcn) { iFiuwp_t fn = (iFiuwp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (int16_t)R_RDX, (void*)R_RCX); } +void iFiuii(x64emu_t *emu, uintptr_t fcn) { iFiuii_t fn = (iFiuii_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX); } +void iFiuuU(x64emu_t *emu, uintptr_t fcn) { iFiuuU_t fn = (iFiuuU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); } void iFiuup(x64emu_t *emu, uintptr_t fcn) { iFiuup_t fn = (iFiuup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); } +void iFiupu(x64emu_t *emu, uintptr_t fcn) { iFiupu_t fn = (iFiupu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX); } void iFiupp(x64emu_t *emu, uintptr_t fcn) { iFiupp_t fn = (iFiupp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFilli(x64emu_t *emu, uintptr_t fcn) { iFilli_t fn = (iFilli_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (int32_t)R_RCX); } void iFiLpL(x64emu_t *emu, uintptr_t fcn) { iFiLpL_t fn = (iFiLpL_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } @@ -4658,6 +4691,7 @@ void iFipip(x64emu_t *emu, uintptr_t fcn) { iFipip_t fn = (iFipip_t)fcn; R_RAX=( void iFipWp(x64emu_t *emu, uintptr_t fcn) { iFipWp_t fn = (iFipWp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); } void iFipui(x64emu_t *emu, uintptr_t fcn) { iFipui_t fn = (iFipui_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); } void iFipuU(x64emu_t *emu, uintptr_t fcn) { iFipuU_t fn = (iFipuU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); } +void iFipup(x64emu_t *emu, uintptr_t fcn) { iFipup_t fn = (iFipup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); } void iFipLi(x64emu_t *emu, uintptr_t fcn) { iFipLi_t fn = (iFipLi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int32_t)R_RCX); } void iFipLu(x64emu_t *emu, uintptr_t fcn) { iFipLu_t fn = (iFipLu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uint32_t)R_RCX); } void iFipLp(x64emu_t *emu, uintptr_t fcn) { iFipLp_t fn = (iFipLp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } @@ -4721,6 +4755,7 @@ void iFpuip(x64emu_t *emu, uintptr_t fcn) { iFpuip_t fn = (iFpuip_t)fcn; R_RAX=( void iFpuWp(x64emu_t *emu, uintptr_t fcn) { iFpuWp_t fn = (iFpuWp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); } void iFpuui(x64emu_t *emu, uintptr_t fcn) { iFpuui_t fn = (iFpuui_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX); } void iFpuuu(x64emu_t *emu, uintptr_t fcn) { iFpuuu_t fn = (iFpuuu_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX); } +void iFpuuU(x64emu_t *emu, uintptr_t fcn) { iFpuuU_t fn = (iFpuuU_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX); } void iFpuul(x64emu_t *emu, uintptr_t fcn) { iFpuul_t fn = (iFpuul_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (intptr_t)R_RCX); } void iFpuuL(x64emu_t *emu, uintptr_t fcn) { iFpuuL_t fn = (iFpuuL_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uintptr_t)R_RCX); } void iFpuup(x64emu_t *emu, uintptr_t fcn) { iFpuup_t fn = (iFpuup_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX); } @@ -5277,15 +5312,19 @@ void iFEpppp(x64emu_t *emu, uintptr_t fcn) { iFEpppp_t fn = (iFEpppp_t)fcn; R_RA void iFEpppV(x64emu_t *emu, uintptr_t fcn) { iFEpppV_t fn = (iFEpppV_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } void iFEpppA(x64emu_t *emu, uintptr_t fcn) { iFEpppA_t fn = (iFEpppA_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiip_t fn = (iFiiiip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } +void iFiiiui(x64emu_t *emu, uintptr_t fcn) { iFiiiui_t fn = (iFiiiui_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (int32_t)R_R8); } void iFiiipu(x64emu_t *emu, uintptr_t fcn) { iFiiipu_t fn = (iFiiipu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); } void iFiiipp(x64emu_t *emu, uintptr_t fcn) { iFiiipp_t fn = (iFiiipp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFiiupp(x64emu_t *emu, uintptr_t fcn) { iFiiupp_t fn = (iFiiupp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFiippp(x64emu_t *emu, uintptr_t fcn) { iFiippp_t fn = (iFiippp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFiuuuu(x64emu_t *emu, uintptr_t fcn) { iFiuuuu_t fn = (iFiuuuu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); } +void iFiuuuU(x64emu_t *emu, uintptr_t fcn) { iFiuuuU_t fn = (iFiuuuU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint64_t)R_R8); } void iFiuuup(x64emu_t *emu, uintptr_t fcn) { iFiuuup_t fn = (iFiuuup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); } void iFiuUip(x64emu_t *emu, uintptr_t fcn) { iFiuUip_t fn = (iFiuUip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } void iFillLL(x64emu_t *emu, uintptr_t fcn) { iFillLL_t fn = (iFillLL_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8); } +void iFiLLpp(x64emu_t *emu, uintptr_t fcn) { iFiLLpp_t fn = (iFiLLpp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFipiii(x64emu_t *emu, uintptr_t fcn) { iFipiii_t fn = (iFipiii_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); } +void iFipiip(x64emu_t *emu, uintptr_t fcn) { iFipiip_t fn = (iFipiip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } void iFipipi(x64emu_t *emu, uintptr_t fcn) { iFipipi_t fn = (iFipipi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8); } void iFipipu(x64emu_t *emu, uintptr_t fcn) { iFipipu_t fn = (iFipipu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8); } void iFipuip(x64emu_t *emu, uintptr_t fcn) { iFipuip_t fn = (iFipuip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } @@ -5805,6 +5844,8 @@ void iFiiiuwp(x64emu_t *emu, uintptr_t fcn) { iFiiiuwp_t fn = (iFiiiuwp_t)fcn; R void iFiippiu(x64emu_t *emu, uintptr_t fcn) { iFiippiu_t fn = (iFiippiu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int32_t)R_R8, (uint32_t)R_R9); } void iFiWiipi(x64emu_t *emu, uintptr_t fcn) { iFiWiipi_t fn = (iFiWiipi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint16_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9); } void iFiuuuup(x64emu_t *emu, uintptr_t fcn) { iFiuuuup_t fn = (iFiuuuup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9); } +void iFiuuupu(x64emu_t *emu, uintptr_t fcn) { iFiuuupu_t fn = (iFiuuupu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (uint32_t)R_R9); } +void iFiuuUpU(x64emu_t *emu, uintptr_t fcn) { iFiuuUpU_t fn = (iFiuuUpU_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9); } void iFiuuppp(x64emu_t *emu, uintptr_t fcn) { iFiuuppp_t fn = (iFiuuppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFiuUuUu(x64emu_t *emu, uintptr_t fcn) { iFiuUuUu_t fn = (iFiuUuUu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX, (uint32_t)R_RCX, (uint64_t)R_R8, (uint32_t)R_R9); } void iFilpppp(x64emu_t *emu, uintptr_t fcn) { iFilpppp_t fn = (iFilpppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } @@ -6242,6 +6283,8 @@ void iFEppLpIu(x64emu_t *emu, uintptr_t fcn) { iFEppLpIu_t fn = (iFEppLpIu_t)fcn void iFEpppLpp(x64emu_t *emu, uintptr_t fcn) { iFEpppLpp_t fn = (iFEpppLpp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFEpppppL(x64emu_t *emu, uintptr_t fcn) { iFEpppppL_t fn = (iFEpppppL_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } void iFEpppppp(x64emu_t *emu, uintptr_t fcn) { iFEpppppp_t fn = (iFEpppppp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void iFiippppp(x64emu_t *emu, uintptr_t fcn) { iFiippppp_t fn = (iFiippppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void iFiuuuuii(x64emu_t *emu, uintptr_t fcn) { iFiuuuuii_t fn = (iFiuuuuii_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8)); } void iFiupuuup(x64emu_t *emu, uintptr_t fcn) { iFiupuuup_t fn = (iFiupuuup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8)); } void iFiupuppp(x64emu_t *emu, uintptr_t fcn) { iFiupuppp_t fn = (iFiupuppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFipupupi(x64emu_t *emu, uintptr_t fcn) { iFipupupi_t fn = (iFipupupi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8)); } @@ -6525,6 +6568,7 @@ void iFEppppLpp(x64emu_t *emu, uintptr_t fcn) { iFEppppLpp_t fn = (iFEppppLpp_t) void iFEpppppuu(x64emu_t *emu, uintptr_t fcn) { iFEpppppuu_t fn = (iFEpppppuu_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8)); } void iFEppppppp(x64emu_t *emu, uintptr_t fcn) { iFEppppppp_t fn = (iFEppppppp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFiiupiupi(x64emu_t *emu, uintptr_t fcn) { iFiiupiupi_t fn = (iFiiupiupi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (uint32_t)R_RDX, (void*)R_RCX, (int32_t)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8), *(int32_t*)(R_RSP + 16)); } +void iFiipppppp(x64emu_t *emu, uintptr_t fcn) { iFiipppppp_t fn = (iFiipppppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFiuuCCuup(x64emu_t *emu, uintptr_t fcn) { iFiuuCCuup_t fn = (iFiuuCCuup_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFiuuuupip(x64emu_t *emu, uintptr_t fcn) { iFiuuuupip_t fn = (iFiuuuupip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFipippppp(x64emu_t *emu, uintptr_t fcn) { iFipippppp_t fn = (iFipippppp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } @@ -6718,6 +6762,7 @@ void iFEppplPPPP(x64emu_t *emu, uintptr_t fcn) { iFEppplPPPP_t fn = (iFEppplPPPP void iFEpppppupp(x64emu_t *emu, uintptr_t fcn) { iFEpppppupp_t fn = (iFEpppppupp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFEppppppuu(x64emu_t *emu, uintptr_t fcn) { iFEppppppuu_t fn = (iFEppppppuu_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uint32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16)); } void iFEppPPPPPP(x64emu_t *emu, uintptr_t fcn) { iFEppPPPPPP_t fn = (iFEppPPPPPP_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); } +void iFiuuuppppu(x64emu_t *emu, uintptr_t fcn) { iFiuuuppppu_t fn = (iFiuuuppppu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uint32_t*)(R_RSP + 24)); } void iFipiipippi(x64emu_t *emu, uintptr_t fcn) { iFipiipippi_t fn = (iFipiipippi_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24)); } void iFuiiuuiiip(x64emu_t *emu, uintptr_t fcn) { iFuiiuuiiip_t fn = (iFuiiuuiiip_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFuiiupiiup(x64emu_t *emu, uintptr_t fcn) { iFuiiupiiup_t fn = (iFuiiupiiup_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } @@ -6835,6 +6880,7 @@ void iFEpiiiiippp(x64emu_t *emu, uintptr_t fcn) { iFEpiiiiippp_t fn = (iFEpiiiii void iFEpupppLppL(x64emu_t *emu, uintptr_t fcn) { iFEpupppLppL_t fn = (iFEpupppLppL_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); } void iFEppppppipp(x64emu_t *emu, uintptr_t fcn) { iFEppppppipp_t fn = (iFEppppppipp_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFEpppppppip(x64emu_t *emu, uintptr_t fcn) { iFEpppppppip_t fn = (iFEpppppppip_t)fcn; R_RAX=(uint32_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } +void iFiuuupppppu(x64emu_t *emu, uintptr_t fcn) { iFiuuupppppu_t fn = (iFiuuupppppu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(uint32_t*)(R_RSP + 32)); } void iFuiiiuuiiip(x64emu_t *emu, uintptr_t fcn) { iFuiiiuuiiip_t fn = (iFuiiiuuiiip_t)fcn; R_RAX=(uint32_t)fn((uint32_t)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } void iFpiiLiiipip(x64emu_t *emu, uintptr_t fcn) { iFpiiLiiipip_t fn = (iFpiiLiiipip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (int32_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } void iFpiLLiiipip(x64emu_t *emu, uintptr_t fcn) { iFpiLLiiipip_t fn = (iFpiLLiiipip_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (int32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } @@ -6988,6 +7034,7 @@ void vFppiiiiiiuiuii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiiiuiuii_t fn = (vFp void vFppuuppiiiiuii(x64emu_t *emu, uintptr_t fcn) { vFppuuppiiiiuii_t fn = (vFppuuppiiiiuii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(int32_t*)(R_RSP + 48), *(int32_t*)(R_RSP + 56)); } void vFppuupppuiiiii(x64emu_t *emu, uintptr_t fcn) { vFppuupppuiiiii_t fn = (vFppuupppuiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(int32_t*)(R_RSP + 32), *(int32_t*)(R_RSP + 40), *(int32_t*)(R_RSP + 48), *(int32_t*)(R_RSP + 56)); } void vFppppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFppppppppppppp_t fn = (vFppppppppppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); } +void iFiuuuuiiuuuuuu(x64emu_t *emu, uintptr_t fcn) { iFiuuuuiiuuuuuu_t fn = (iFiuuuuiiuuuuuu_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(uint32_t*)(R_RSP + 16), *(uint32_t*)(R_RSP + 24), *(uint32_t*)(R_RSP + 32), *(uint32_t*)(R_RSP + 40), *(uint32_t*)(R_RSP + 48), *(uint32_t*)(R_RSP + 56)); } void iFddddpppddpppp(x64emu_t *emu, uintptr_t fcn) { iFddddpppddpppp_t fn = (iFddddpppddpppp_t)fcn; R_RAX=(uint32_t)fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[4].d[0], emu->xmm[5].d[0], (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFpippuuuiipppp(x64emu_t *emu, uintptr_t fcn) { iFpippuuuiipppp_t fn = (iFpippuuuiipppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8, (uint32_t)R_R9, *(uint32_t*)(R_RSP + 8), *(int32_t*)(R_RSP + 16), *(int32_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); } void iFpLLlliiLppppp(x64emu_t *emu, uintptr_t fcn) { iFpLLlliiLppppp_t fn = (iFpLLlliiLppppp_t)fcn; R_RAX=(uint32_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8, (int32_t)R_R9, *(int32_t*)(R_RSP + 8), *(uintptr_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); } @@ -7129,7 +7176,6 @@ void vFppippDpDc(x64emu_t *emu, uintptr_t fcn) { vFppippDpDc_t fn = (vFppippDpDc #endif #if defined(NOALIGN) -void iFipiip(x64emu_t *emu, uintptr_t fcn) { iFipiip_t fn = (iFipiip_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (int32_t)R_RCX, (void*)R_R8); } void iFipipp(x64emu_t *emu, uintptr_t fcn) { iFipipp_t fn = (iFipipp_t)fcn; R_RAX=(uint32_t)fn((int32_t)R_RDI, (void*)R_RSI, (int32_t)R_RDX, (void*)R_RCX, (void*)R_R8); } #endif @@ -7321,6 +7367,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiu) return 1; if (fun == &iFiU) return 1; if (fun == &iFil) return 1; + if (fun == &iFiL) return 1; if (fun == &iFip) return 1; if (fun == &iFWW) return 1; if (fun == &iFui) return 1; @@ -7570,7 +7617,11 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiCC) return 1; if (fun == &iFiui) return 1; if (fun == &iFiuu) return 1; + if (fun == &iFiuL) return 1; if (fun == &iFiup) return 1; + if (fun == &iFiUU) return 1; + if (fun == &iFiUp) return 1; + if (fun == &iFidd) return 3; if (fun == &iFill) return 1; if (fun == &iFilp) return 1; if (fun == &iFiLi) return 1; @@ -7756,6 +7807,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFiiu) return 1; if (fun == &pFiid) return 2; if (fun == &pFiip) return 1; + if (fun == &pFiuu) return 1; if (fun == &pFiup) return 1; if (fun == &pFiLL) return 1; if (fun == &pFipi) return 1; @@ -7988,7 +8040,10 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiIIu) return 1; if (fun == &iFiWii) return 1; if (fun == &iFiuwp) return 1; + if (fun == &iFiuii) return 1; + if (fun == &iFiuuU) return 1; if (fun == &iFiuup) return 1; + if (fun == &iFiupu) return 1; if (fun == &iFiupp) return 1; if (fun == &iFilli) return 1; if (fun == &iFiLpL) return 1; @@ -7997,6 +8052,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFipWp) return 1; if (fun == &iFipui) return 1; if (fun == &iFipuU) return 1; + if (fun == &iFipup) return 1; if (fun == &iFipLi) return 1; if (fun == &iFipLu) return 1; if (fun == &iFipLp) return 1; @@ -8058,6 +8114,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpuWp) return 1; if (fun == &iFpuui) return 1; if (fun == &iFpuuu) return 1; + if (fun == &iFpuuU) return 1; if (fun == &iFpuul) return 1; if (fun == &iFpuuL) return 1; if (fun == &iFpuup) return 1; @@ -8493,15 +8550,19 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFppppL) return 1; if (fun == &vFppppp) return 1; if (fun == &iFiiiip) return 1; + if (fun == &iFiiiui) return 1; if (fun == &iFiiipu) return 1; if (fun == &iFiiipp) return 1; if (fun == &iFiiupp) return 1; if (fun == &iFiippp) return 1; if (fun == &iFiuuuu) return 1; + if (fun == &iFiuuuU) return 1; if (fun == &iFiuuup) return 1; if (fun == &iFiuUip) return 1; if (fun == &iFillLL) return 1; + if (fun == &iFiLLpp) return 1; if (fun == &iFipiii) return 1; + if (fun == &iFipiip) return 1; if (fun == &iFipipi) return 1; if (fun == &iFipipu) return 1; if (fun == &iFipuip) return 1; @@ -8927,6 +8988,8 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiippiu) return 1; if (fun == &iFiWiipi) return 1; if (fun == &iFiuuuup) return 1; + if (fun == &iFiuuupu) return 1; + if (fun == &iFiuuUpU) return 1; if (fun == &iFiuuppp) return 1; if (fun == &iFiuUuUu) return 1; if (fun == &iFilpppp) return 1; @@ -9217,7 +9280,6 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpiLLdduudd) return 5; if (fun == &lFpLppdddddd) return 7; #if defined(NOALIGN) - if (fun == &iFipiip) return 1; if (fun == &iFipipp) return 1; #endif #if !defined(STATICBUILD) @@ -9385,6 +9447,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiu) return 49; if (fun == &iFiU) return 17; if (fun == &iFil) return 17; + if (fun == &iFiL) return 17; if (fun == &iFip) return 17; if (fun == &iFWW) return 1; if (fun == &iFui) return 49; @@ -9634,7 +9697,11 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiCC) return 17; if (fun == &iFiui) return 113; if (fun == &iFiuu) return 113; + if (fun == &iFiuL) return 49; if (fun == &iFiup) return 49; + if (fun == &iFiUU) return 17; + if (fun == &iFiUp) return 17; + if (fun == &iFidd) return 19; if (fun == &iFill) return 17; if (fun == &iFilp) return 17; if (fun == &iFiLi) return 81; @@ -9820,6 +9887,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFiiu) return 113; if (fun == &pFiid) return 50; if (fun == &pFiip) return 49; + if (fun == &pFiuu) return 113; if (fun == &pFiup) return 49; if (fun == &pFiLL) return 17; if (fun == &pFipi) return 81; @@ -10052,7 +10120,10 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiIIu) return 145; if (fun == &iFiWii) return 209; if (fun == &iFiuwp) return 113; + if (fun == &iFiuii) return 241; + if (fun == &iFiuuU) return 113; if (fun == &iFiuup) return 113; + if (fun == &iFiupu) return 177; if (fun == &iFiupp) return 49; if (fun == &iFilli) return 145; if (fun == &iFiLpL) return 17; @@ -10061,6 +10132,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFipWp) return 17; if (fun == &iFipui) return 209; if (fun == &iFipuU) return 81; + if (fun == &iFipup) return 81; if (fun == &iFipLi) return 145; if (fun == &iFipLu) return 145; if (fun == &iFipLp) return 17; @@ -10122,6 +10194,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpuWp) return 33; if (fun == &iFpuui) return 225; if (fun == &iFpuuu) return 225; + if (fun == &iFpuuU) return 97; if (fun == &iFpuul) return 97; if (fun == &iFpuuL) return 97; if (fun == &iFpuup) return 97; @@ -10557,15 +10630,19 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFppppL) return 1; if (fun == &vFppppp) return 1; if (fun == &iFiiiip) return 241; + if (fun == &iFiiiui) return 497; if (fun == &iFiiipu) return 369; if (fun == &iFiiipp) return 113; if (fun == &iFiiupp) return 113; if (fun == &iFiippp) return 49; if (fun == &iFiuuuu) return 497; + if (fun == &iFiuuuU) return 241; if (fun == &iFiuuup) return 241; if (fun == &iFiuUip) return 177; if (fun == &iFillLL) return 17; + if (fun == &iFiLLpp) return 17; if (fun == &iFipiii) return 465; + if (fun == &iFipiip) return 209; if (fun == &iFipipi) return 337; if (fun == &iFipipu) return 337; if (fun == &iFipuip) return 209; @@ -10991,6 +11068,8 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFiippiu) return 817; if (fun == &iFiWiipi) return 721; if (fun == &iFiuuuup) return 497; + if (fun == &iFiuuupu) return 753; + if (fun == &iFiuuUpU) return 113; if (fun == &iFiuuppp) return 113; if (fun == &iFiuUuUu) return 689; if (fun == &iFilpppp) return 17; @@ -11281,7 +11360,6 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpiLLdduudd) return 805; if (fun == &lFpLppdddddd) return 7; #if defined(NOALIGN) - if (fun == &iFipiip) return 209; if (fun == &iFipipp) return 81; #endif #if !defined(STATICBUILD) diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index aa372381..cda7f2f5 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -239,6 +239,7 @@ void iFiC(x64emu_t *emu, uintptr_t fnc); void iFiu(x64emu_t *emu, uintptr_t fnc); void iFiU(x64emu_t *emu, uintptr_t fnc); void iFil(x64emu_t *emu, uintptr_t fnc); +void iFiL(x64emu_t *emu, uintptr_t fnc); void iFip(x64emu_t *emu, uintptr_t fnc); void iFiS(x64emu_t *emu, uintptr_t fnc); void iFWW(x64emu_t *emu, uintptr_t fnc); @@ -571,7 +572,11 @@ void iFiII(x64emu_t *emu, uintptr_t fnc); void iFiCC(x64emu_t *emu, uintptr_t fnc); void iFiui(x64emu_t *emu, uintptr_t fnc); void iFiuu(x64emu_t *emu, uintptr_t fnc); +void iFiuL(x64emu_t *emu, uintptr_t fnc); void iFiup(x64emu_t *emu, uintptr_t fnc); +void iFiUU(x64emu_t *emu, uintptr_t fnc); +void iFiUp(x64emu_t *emu, uintptr_t fnc); +void iFidd(x64emu_t *emu, uintptr_t fnc); void iFill(x64emu_t *emu, uintptr_t fnc); void iFilp(x64emu_t *emu, uintptr_t fnc); void iFiLi(x64emu_t *emu, uintptr_t fnc); @@ -652,6 +657,7 @@ void iFppL(x64emu_t *emu, uintptr_t fnc); void iFppp(x64emu_t *emu, uintptr_t fnc); void iFpOi(x64emu_t *emu, uintptr_t fnc); void iFpOu(x64emu_t *emu, uintptr_t fnc); +void iFpSi(x64emu_t *emu, uintptr_t fnc); void iFpSu(x64emu_t *emu, uintptr_t fnc); void iFpSp(x64emu_t *emu, uintptr_t fnc); void iFpHH(x64emu_t *emu, uintptr_t fnc); @@ -810,6 +816,7 @@ void pFiii(x64emu_t *emu, uintptr_t fnc); void pFiiu(x64emu_t *emu, uintptr_t fnc); void pFiid(x64emu_t *emu, uintptr_t fnc); void pFiip(x64emu_t *emu, uintptr_t fnc); +void pFiuu(x64emu_t *emu, uintptr_t fnc); void pFiup(x64emu_t *emu, uintptr_t fnc); void pFiLL(x64emu_t *emu, uintptr_t fnc); void pFipi(x64emu_t *emu, uintptr_t fnc); @@ -1116,7 +1123,10 @@ void iFiIIi(x64emu_t *emu, uintptr_t fnc); void iFiIIu(x64emu_t *emu, uintptr_t fnc); void iFiWii(x64emu_t *emu, uintptr_t fnc); void iFiuwp(x64emu_t *emu, uintptr_t fnc); +void iFiuii(x64emu_t *emu, uintptr_t fnc); +void iFiuuU(x64emu_t *emu, uintptr_t fnc); void iFiuup(x64emu_t *emu, uintptr_t fnc); +void iFiupu(x64emu_t *emu, uintptr_t fnc); void iFiupp(x64emu_t *emu, uintptr_t fnc); void iFilli(x64emu_t *emu, uintptr_t fnc); void iFiLpL(x64emu_t *emu, uintptr_t fnc); @@ -1125,6 +1135,7 @@ void iFipip(x64emu_t *emu, uintptr_t fnc); void iFipWp(x64emu_t *emu, uintptr_t fnc); void iFipui(x64emu_t *emu, uintptr_t fnc); void iFipuU(x64emu_t *emu, uintptr_t fnc); +void iFipup(x64emu_t *emu, uintptr_t fnc); void iFipLi(x64emu_t *emu, uintptr_t fnc); void iFipLu(x64emu_t *emu, uintptr_t fnc); void iFipLp(x64emu_t *emu, uintptr_t fnc); @@ -1188,6 +1199,7 @@ void iFpuip(x64emu_t *emu, uintptr_t fnc); void iFpuWp(x64emu_t *emu, uintptr_t fnc); void iFpuui(x64emu_t *emu, uintptr_t fnc); void iFpuuu(x64emu_t *emu, uintptr_t fnc); +void iFpuuU(x64emu_t *emu, uintptr_t fnc); void iFpuul(x64emu_t *emu, uintptr_t fnc); void iFpuuL(x64emu_t *emu, uintptr_t fnc); void iFpuup(x64emu_t *emu, uintptr_t fnc); @@ -1746,15 +1758,19 @@ void iFEpppp(x64emu_t *emu, uintptr_t fnc); void iFEpppV(x64emu_t *emu, uintptr_t fnc); void iFEpppA(x64emu_t *emu, uintptr_t fnc); void iFiiiip(x64emu_t *emu, uintptr_t fnc); +void iFiiiui(x64emu_t *emu, uintptr_t fnc); void iFiiipu(x64emu_t *emu, uintptr_t fnc); void iFiiipp(x64emu_t *emu, uintptr_t fnc); void iFiiupp(x64emu_t *emu, uintptr_t fnc); void iFiippp(x64emu_t *emu, uintptr_t fnc); void iFiuuuu(x64emu_t *emu, uintptr_t fnc); +void iFiuuuU(x64emu_t *emu, uintptr_t fnc); void iFiuuup(x64emu_t *emu, uintptr_t fnc); void iFiuUip(x64emu_t *emu, uintptr_t fnc); void iFillLL(x64emu_t *emu, uintptr_t fnc); +void iFiLLpp(x64emu_t *emu, uintptr_t fnc); void iFipiii(x64emu_t *emu, uintptr_t fnc); +void iFipiip(x64emu_t *emu, uintptr_t fnc); void iFipipi(x64emu_t *emu, uintptr_t fnc); void iFipipu(x64emu_t *emu, uintptr_t fnc); void iFipuip(x64emu_t *emu, uintptr_t fnc); @@ -2274,6 +2290,8 @@ void iFiiiuwp(x64emu_t *emu, uintptr_t fnc); void iFiippiu(x64emu_t *emu, uintptr_t fnc); void iFiWiipi(x64emu_t *emu, uintptr_t fnc); void iFiuuuup(x64emu_t *emu, uintptr_t fnc); +void iFiuuupu(x64emu_t *emu, uintptr_t fnc); +void iFiuuUpU(x64emu_t *emu, uintptr_t fnc); void iFiuuppp(x64emu_t *emu, uintptr_t fnc); void iFiuUuUu(x64emu_t *emu, uintptr_t fnc); void iFilpppp(x64emu_t *emu, uintptr_t fnc); @@ -2712,6 +2730,8 @@ void iFEppLpIu(x64emu_t *emu, uintptr_t fnc); void iFEpppLpp(x64emu_t *emu, uintptr_t fnc); void iFEpppppL(x64emu_t *emu, uintptr_t fnc); void iFEpppppp(x64emu_t *emu, uintptr_t fnc); +void iFiippppp(x64emu_t *emu, uintptr_t fnc); +void iFiuuuuii(x64emu_t *emu, uintptr_t fnc); void iFiupuuup(x64emu_t *emu, uintptr_t fnc); void iFiupuppp(x64emu_t *emu, uintptr_t fnc); void iFipupupi(x64emu_t *emu, uintptr_t fnc); @@ -2995,6 +3015,7 @@ void iFEppppLpp(x64emu_t *emu, uintptr_t fnc); void iFEpppppuu(x64emu_t *emu, uintptr_t fnc); void iFEppppppp(x64emu_t *emu, uintptr_t fnc); void iFiiupiupi(x64emu_t *emu, uintptr_t fnc); +void iFiipppppp(x64emu_t *emu, uintptr_t fnc); void iFiuuCCuup(x64emu_t *emu, uintptr_t fnc); void iFiuuuupip(x64emu_t *emu, uintptr_t fnc); void iFipippppp(x64emu_t *emu, uintptr_t fnc); @@ -3189,6 +3210,7 @@ void iFEppplPPPP(x64emu_t *emu, uintptr_t fnc); void iFEpppppupp(x64emu_t *emu, uintptr_t fnc); void iFEppppppuu(x64emu_t *emu, uintptr_t fnc); void iFEppPPPPPP(x64emu_t *emu, uintptr_t fnc); +void iFiuuuppppu(x64emu_t *emu, uintptr_t fnc); void iFipiipippi(x64emu_t *emu, uintptr_t fnc); void iFuiiuuiiip(x64emu_t *emu, uintptr_t fnc); void iFuiiupiiup(x64emu_t *emu, uintptr_t fnc); @@ -3306,6 +3328,7 @@ void iFEpiiiiippp(x64emu_t *emu, uintptr_t fnc); void iFEpupppLppL(x64emu_t *emu, uintptr_t fnc); void iFEppppppipp(x64emu_t *emu, uintptr_t fnc); void iFEpppppppip(x64emu_t *emu, uintptr_t fnc); +void iFiuuupppppu(x64emu_t *emu, uintptr_t fnc); void iFuiiiuuiiip(x64emu_t *emu, uintptr_t fnc); void iFpiiLiiipip(x64emu_t *emu, uintptr_t fnc); void iFpiLLiiipip(x64emu_t *emu, uintptr_t fnc); @@ -3459,6 +3482,7 @@ void vFppiiiiiiuiuii(x64emu_t *emu, uintptr_t fnc); void vFppuuppiiiiuii(x64emu_t *emu, uintptr_t fnc); void vFppuupppuiiiii(x64emu_t *emu, uintptr_t fnc); void vFppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void iFiuuuuiiuuuuuu(x64emu_t *emu, uintptr_t fnc); void iFddddpppddpppp(x64emu_t *emu, uintptr_t fnc); void iFpippuuuiipppp(x64emu_t *emu, uintptr_t fnc); void iFpLLlliiLppppp(x64emu_t *emu, uintptr_t fnc); @@ -3520,7 +3544,6 @@ void pFpupuupppppppppppppppppppp(x64emu_t *emu, uintptr_t fnc); void iFpppppppppppppppppppppppppppppppppp(x64emu_t *emu, uintptr_t fnc); #if defined(NOALIGN) -void iFipiip(x64emu_t *emu, uintptr_t fnc); void iFipipp(x64emu_t *emu, uintptr_t fnc); #endif diff --git a/src/wrapped/wrappeddecor0_private.h b/src/wrapped/wrappeddecor0_private.h index 517d1f47..84ae70b5 100644 --- a/src/wrapped/wrappeddecor0_private.h +++ b/src/wrapped/wrappeddecor0_private.h @@ -1,60 +1,60 @@ #if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) -#error Meh.... +#error Meh... #endif -//GO(libdecor_configuration_get_content_size, -//GO(libdecor_configuration_get_window_state, -//GO(libdecor_decorate, -//GO(libdecor_dispatch, -//GO(libdecor_frame_close, -//GO(libdecor_frame_commit, -//GO(libdecor_frame_dismiss_popup, -//GO(libdecor_frame_get_capabilities, -//GO(libdecor_frame_get_content_height, -//GO(libdecor_frame_get_content_width, -//GO(libdecor_frame_get_max_content_size, -//GO(libdecor_frame_get_min_content_size, -//GO(libdecor_frame_get_title, -//GO(libdecor_frame_get_window_state, -//GO(libdecor_frame_get_wl_surface, -//GO(libdecor_frame_get_xdg_surface, -//GO(libdecor_frame_get_xdg_toplevel, -//GO(libdecor_frame_has_capability, -//GO(libdecor_frame_is_floating, -//GO(libdecor_frame_is_visible, -//GO(libdecor_frame_map, -//GO(libdecor_frame_move, -//GO(libdecor_frame_popup_grab, -//GO(libdecor_frame_popup_ungrab, -//GO(libdecor_frame_ref, -//GO(libdecor_frame_resize, -//GO(libdecor_frame_set_app_id, -//GO(libdecor_frame_set_capabilities, -//GO(libdecor_frame_set_fullscreen, -//GO(libdecor_frame_set_max_content_size, -//GO(libdecor_frame_set_maximized, -//GO(libdecor_frame_set_min_content_size, -//GO(libdecor_frame_set_minimized, -//GO(libdecor_frame_set_parent, -//GO(libdecor_frame_set_title, -//GO(libdecor_frame_set_visibility, -//GO(libdecor_frame_show_window_menu, -//GO(libdecor_frame_toplevel_commit, -//GO(libdecor_frame_translate_coordinate, -//GO(libdecor_frame_unref, -//GO(libdecor_frame_unset_capabilities, -//GO(libdecor_frame_unset_fullscreen, -//GO(libdecor_frame_unset_maximized, -//GO(libdecor_get_fd, -//GO(libdecor_get_wl_display, -//GO(libdecor_new, -//GO(libdecor_notify_plugin_error, -//GO(libdecor_notify_plugin_ready, -//GO(libdecor_plugin_init, -//GO(libdecor_plugin_release, -//GO(libdecor_state_free, -//GO(libdecor_state_get_content_height, -//GO(libdecor_state_get_content_width, -//GO(libdecor_state_get_window_state, -//GO(libdecor_state_new, -//GO(libdecor_unref, +GO(libdecor_configuration_get_content_size, iFpppp) +GO(libdecor_configuration_get_window_state, iFpp) +GO(libdecor_decorate, pFpppp) +GO(libdecor_dispatch, iFpi) +GO(libdecor_frame_close, vFp) +GO(libdecor_frame_commit, vFppp) +//GO(libdecor_frame_dismiss_popup, +//GO(libdecor_frame_get_capabilities, +//GO(libdecor_frame_get_content_height, +//GO(libdecor_frame_get_content_width, +GO(libdecor_frame_get_max_content_size, vFppp) +GO(libdecor_frame_get_min_content_size, vFppp) +GO(libdecor_frame_get_title, pFp) +//GO(libdecor_frame_get_window_state, +//GO(libdecor_frame_get_wl_surface, +GO(libdecor_frame_get_xdg_surface, pFp) +GO(libdecor_frame_get_xdg_toplevel, pFp) +GO(libdecor_frame_has_capability, iFpu) +GO(libdecor_frame_is_floating, iFp) +GO(libdecor_frame_is_visible, iFp) +GO(libdecor_frame_map, vFp) +GO(libdecor_frame_move, vFppu) +GO(libdecor_frame_popup_grab, vFpp) +GO(libdecor_frame_popup_ungrab, vFpp) +GO(libdecor_frame_ref, vFp) +GO(libdecor_frame_resize, vFppuu) +GO(libdecor_frame_set_app_id, vFpp) +GO(libdecor_frame_set_capabilities, vFpu) +GO(libdecor_frame_set_fullscreen, vFpp) +GO(libdecor_frame_set_max_content_size, vFpii) +GO(libdecor_frame_set_maximized, vFp) +GO(libdecor_frame_set_min_content_size, vFpii) +GO(libdecor_frame_set_minimized, vFp) +GO(libdecor_frame_set_parent, vFpp) +GO(libdecor_frame_set_title, vFpp) +GO(libdecor_frame_set_visibility, vFpi) +GO(libdecor_frame_show_window_menu, vFppuii) +//GO(libdecor_frame_toplevel_commit, +GO(libdecor_frame_translate_coordinate, vFpiipp) +GO(libdecor_frame_unref, vFp) +GO(libdecor_frame_unset_capabilities, vFpu) +GO(libdecor_frame_unset_fullscreen, vFp) +GO(libdecor_frame_unset_maximized, vFp) +GO(libdecor_get_fd, iFp) +//GO(libdecor_get_wl_display, +GO(libdecor_new, pFpp) +//GO(libdecor_notify_plugin_error, +//GO(libdecor_notify_plugin_ready, +//GO(libdecor_plugin_init, +//GO(libdecor_plugin_release, +GO(libdecor_state_free, vFp) +//GO(libdecor_state_get_content_height, +//GO(libdecor_state_get_content_width, +//GO(libdecor_state_get_window_state, +GO(libdecor_state_new, pFii) +GO(libdecor_unref, vFp) diff --git a/src/wrapped/wrappedlibasound_private.h b/src/wrapped/wrappedlibasound_private.h index d748fd02..5c59aa50 100644 --- a/src/wrapped/wrappedlibasound_private.h +++ b/src/wrapped/wrappedlibasound_private.h @@ -4,7 +4,7 @@ DATAB(alsa_lisp_nil, 4) DATAB(alsa_lisp_t, 4) -DATAB(snd_config, 4) +DATAB(snd_config, 8) DATAB(_snd_config_hook_load_dlsym_config_hook_001, 4) DATAB(_snd_config_hook_load_for_all_cards_dlsym_config_hook_001, 4) DATAB(__snd_ctl_hw_open_dlsym_control_001, 4) @@ -72,20 +72,20 @@ GO(snd_shm_area_share, pFp) GO(snd_shm_area_destroy, iFp) GO(snd_user_file, iFpp) GO(snd_input_stdio_open, iFppp) -GO(snd_input_stdio_attach, iFppi) +GO(snd_input_stdio_attach, iFpSi) GO(snd_input_buffer_open, iFppl) GO(snd_input_close, iFp) -//GOM(snd_input_scanf, iFppV) +//GOM(snd_input_scanf, iFEppV) GO(snd_input_gets, pFppL) GO(snd_input_getc, iFp) GO(snd_input_ungetc, iFpi) GO(snd_output_stdio_open, iFppp) -GO(snd_output_stdio_attach, iFppi) +GO(snd_output_stdio_attach, iFpSi) GO(snd_output_buffer_open, iFp) GO(snd_output_buffer_string, LFpp) GO(snd_output_close, iFp) -//GOM(snd_output_printf, iFppV) -//GOM(snd_output_vprintf, iFppA) +//GOM(snd_output_printf, iFEppV) +//GOM(snd_output_vprintf, iFEppA) GO(snd_output_puts, iFpp) GO(snd_output_putc, iFpi) GO(snd_output_flush, iFp) @@ -100,7 +100,7 @@ GO(snd_config_update_r, iFppp) GO(snd_config_update_free, iFp) GO(snd_config_update_free_global, iFv) GO(snd_config_search, iFppp) -//GOM(snd_config_searchv, iFppV) +//GOM(snd_config_searchv, iFEppV) GO(snd_config_search_definition, iFpppp) GO(snd_config_expand, iFppppp) GO(snd_config_evaluate, iFpppp) @@ -152,6 +152,7 @@ GO(snd_device_name_hint, iFipp) GO(snd_names_list, iFpp) GO(snd_names_list_free, vFp) GO(snd_pcm_format_mask_sizeof, LFv) +GO(snd_pcm_free_chmaps, vFp) GO(snd_pcm_subformat_mask_sizeof, LFv) GO(snd_pcm_status_sizeof, LFv) GOM(snd_async_add_pcm_handler, iFEpppp) @@ -408,6 +409,7 @@ GO(snd_pcm_poll_descriptors, iFppu) GO(snd_pcm_poll_descriptors_count, iFp) GO(snd_pcm_poll_descriptors_revents, iFppup) GO(snd_pcm_prepare, iFp) +GO(snd_pcm_query_chmaps, pFp) GO(snd_pcm_readi, lFppL) GO(snd_pcm_readn, lFppL) GO(snd_pcm_recover, iFpii) @@ -561,7 +563,7 @@ GO(snd_timer_query_status, iFpp) GO(snd_timer_open, iFppi) GO(snd_timer_open_lconf, iFppip) GO(snd_timer_close, iFp) -//GOM(snd_async_add_timer_handler, iFpppp) +//GOM(snd_async_add_timer_handler, iFEpppp) GO(snd_async_handler_get_timer, pFp) GO(snd_timer_poll_descriptors_count, iFp) GO(snd_timer_poll_descriptors, iFppu) @@ -678,7 +680,7 @@ GO(snd_ctl_open, iFppi) GO(snd_ctl_open_lconf, iFppip) GO(snd_ctl_close, iFp) GO(snd_ctl_nonblock, iFpi) -//GOM(snd_async_add_ctl_handler, iFpppp) +//GOM(snd_async_add_ctl_handler, iFEpppp) GO(snd_async_handler_get_ctl, pFp) GO(snd_ctl_poll_descriptors_count, iFp) GO(snd_ctl_poll_descriptors, iFppu) @@ -861,11 +863,11 @@ GO(snd_hctl_poll_descriptors_count, iFp) GO(snd_hctl_poll_descriptors, iFppu) GO(snd_hctl_poll_descriptors_revents, iFppup) GO(snd_hctl_get_count, uFp) -//GOM(snd_hctl_set_compare, iFpp) +//GOM(snd_hctl_set_compare, iFEpp) GO(snd_hctl_first_elem, pFp) GO(snd_hctl_last_elem, pFp) GO(snd_hctl_find_elem, pFpp) -//GOM(snd_hctl_set_callback, vFpp) +//GOM(snd_hctl_set_callback, vFEpp) GO(snd_hctl_set_callback_private, vFpp) GO(snd_hctl_get_callback_private, pFp) GO(snd_hctl_load, iFp) @@ -890,7 +892,7 @@ GO(snd_hctl_elem_get_device, uFp) GO(snd_hctl_elem_get_subdevice, uFp) GO(snd_hctl_elem_get_name, pFp) GO(snd_hctl_elem_get_index, uFp) -//GOM(snd_hctl_elem_set_callback, vFpp) +//GOM(snd_hctl_elem_set_callback, vFEpp) GO(snd_hctl_elem_get_callback_private, pFp) GO(snd_hctl_elem_set_callback_private, vFpp) GO(snd_sctl_build, iFppppi) @@ -914,7 +916,7 @@ GO(snd_mixer_load, iFp) GO(snd_mixer_free, vFp) GO(snd_mixer_wait, iFpi) GOM(snd_mixer_set_compare, iFEpp) -//GOM(snd_mixer_set_callback, vFpp) +//GOM(snd_mixer_set_callback, vFEpp) GO(snd_mixer_get_callback_private, pFp) GO(snd_mixer_set_callback_private, vFpp) GO(snd_mixer_get_count, uFp) @@ -1277,4 +1279,4 @@ GO(snd_seq_parse_address, iFppp) GO(snd_hwdep_info_get_iface, uFp) DATAM(snd_lib_error, 8) -GO(superdummy_error_handler, vFpipipV) // dummy to have the bridge definition +GO(superdummy_error_handler, vFpipipV) diff --git a/src/wrapped/wrappedlibbsd_private.h b/src/wrapped/wrappedlibbsd_private.h index bded8d13..06a7ef9c 100644 --- a/src/wrapped/wrappedlibbsd_private.h +++ b/src/wrapped/wrappedlibbsd_private.h @@ -108,5 +108,5 @@ GO(setprogname, vFp) //GO(vis, //GO(vwarnc, //GO(warnc, -//GO(wcslcat, -//GO(wcslcpy, +GO(wcslcat, LFppL) +GO(wcslcpy, LFppL) diff --git a/src/wrapped/wrappedlibdrm.c b/src/wrapped/wrappedlibdrm.c index 73005e57..005c3ee9 100644 --- a/src/wrapped/wrappedlibdrm.c +++ b/src/wrapped/wrappedlibdrm.c @@ -28,6 +28,81 @@ const char* libdrmName = "libdrm.so.2"; #include "wrappercallback.h" + +#define SUPER() \ + GO(0) \ + GO(1) \ + GO(2) \ + GO(3) \ + GO(4) \ + GO(5) \ + GO(6) \ + GO(7) \ + GO(8) \ + GO(9) \ + GO(10) \ + GO(11) \ + GO(12) \ + GO(13) \ + GO(14) \ + GO(15) + +// vblank_handler +#define GO(A) \ + static uintptr_t my_vblank_handler_fct_##A = 0; \ + static void my_vblank_handler_##A(int fd, unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec, void* user_data) \ + { \ + RunFunctionFmt(my_vblank_handler_fct_##A, "iuuup", fd, sequence, tv_sec, tv_usec, user_data); \ + } +SUPER() +#undef GO +static void* find_vblank_handlerFct(void* fct) +{ + if (!fct) return fct; + if (GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); +#define GO(A) \ + if (my_vblank_handler_fct_##A == (uintptr_t)fct) return my_vblank_handler_##A; + SUPER() +#undef GO +#define GO(A) \ + if (my_vblank_handler_fct_##A == 0) { \ + my_vblank_handler_fct_##A = (uintptr_t)fct; \ + return my_vblank_handler_##A; \ + } + SUPER() +#undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject vblank_handler callback\n"); + return NULL; +} + +// page_flip_handler +#define GO(A) \ + static uintptr_t my_page_flip_handler_fct_##A = 0; \ + static void my_page_flip_handler_##A(int fd, unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec, void* user_data) \ + { \ + RunFunctionFmt(my_page_flip_handler_fct_##A, "iuuup", fd, sequence, tv_sec, tv_usec, user_data); \ + } +SUPER() +#undef GO +static void* find_page_flip_handlerFct(void* fct) +{ + if (!fct) return fct; + if (GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); +#define GO(A) \ + if (my_page_flip_handler_fct_##A == (uintptr_t)fct) return my_page_flip_handler_##A; + SUPER() +#undef GO +#define GO(A) \ + if (my_page_flip_handler_fct_##A == 0) { \ + my_page_flip_handler_fct_##A = (uintptr_t)fct; \ + return my_page_flip_handler_##A; \ + } + SUPER() +#undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject page_flip_handler callback\n"); + return NULL; +} + EXPORT void my_drmMsg(x64emu_t* emu, void* fmt, void* b) { myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); PREPARE_VALIST; @@ -38,4 +113,21 @@ EXPORT void my_drmMsg(x64emu_t* emu, void* fmt, void* b) { free(buf); } +typedef struct drmEventContext_s { + int version; + void (*vblank_handler)(int fd, unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec, void* user_data); + void (*page_flip_handler)(int fd, unsigned int sequence, unsigned int tv_sec, unsigned int tv_usec, void* user_data); +} drmEventContext_t, *drmEventContextPtr_t; + + +EXPORT void my_drmHandleEvent(x64emu_t* emu, int fd, drmEventContextPtr_t evctx) +{ + drmEventContext_t ctx = { 0 }; + ctx.version = evctx->version; + ctx.vblank_handler = find_vblank_handlerFct(evctx->vblank_handler); + ctx.page_flip_handler = find_page_flip_handlerFct(evctx->page_flip_handler); + my->drmHandleEvent(fd, &ctx); +} + + #include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedlibdrm_private.h b/src/wrapped/wrappedlibdrm_private.h index 47df162d..c310e58e 100644 --- a/src/wrapped/wrappedlibdrm_private.h +++ b/src/wrapped/wrappedlibdrm_private.h @@ -1,183 +1,184 @@ #if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) -#error Meh.... +#error Meh... #endif -//GO(drmAddBufs, -//GO(drmAddContextPrivateMapping, -//GO(drmAddContextTag, -//GO(drmAddMap, -//GO(drmAgpAcquire, -//GO(drmAgpAlloc, -//GO(drmAgpBase, -//GO(drmAgpBind, -//GO(drmAgpDeviceId, -//GO(drmAgpEnable, -//GO(drmAgpFree, -//GO(drmAgpGetMode, -//GO(drmAgpMemoryAvail, -//GO(drmAgpMemoryUsed, -//GO(drmAgpRelease, -//GO(drmAgpSize, -//GO(drmAgpUnbind, -//GO(drmAgpVendorId, -//GO(drmAgpVersionMajor, -//GO(drmAgpVersionMinor, +GO(drmAddBufs, iFiiiui) +GO(drmAddContextPrivateMapping, iFiuu) +GO(drmAddContextTag, iFiup) +GO(drmAddMap, iFiuuuup) +GO(drmAgpAcquire, iFi) +GO(drmAgpAlloc, iFiLLpp) +GO(drmAgpBase, LFi) +GO(drmAgpBind, iFiuL) +GO(drmAgpDeviceId, uFi) +GO(drmAgpEnable, iFiL) +GO(drmAgpFree, iFiu) +GO(drmAgpGetMode, LFi) +GO(drmAgpMemoryAvail, LFi) +GO(drmAgpMemoryUsed, LFi) +GO(drmAgpRelease, iFi) +GO(drmAgpSize, LFi) +GO(drmAgpUnbind, iFiu) +GO(drmAgpVendorId, uFi) +GO(drmAgpVersionMajor, iFi) +GO(drmAgpVersionMinor, iFi) GO(drmAuthMagic, iFiu) -//GO(drmAvailable, -//GO(drmCheckModesettingSupported, -//GO(drmClose, -//GO(drmCloseOnce, -//GO(drmCommandNone, +GO(drmAvailable, iFv) +GO(drmCheckModesettingSupported, iFp) +GO(drmClose, iFi) +GO(drmCloseOnce, vFi) +GO(drmCommandNone, iFiL) GO(drmCommandRead, iFiLpL) GO(drmCommandWrite, iFiLpL) GO(drmCommandWriteRead, iFiLpL) -//GO(drmCreateContext, -//GO(drmCreateDrawable, -//GO(drmCrtcGetSequence, -//GO(drmCrtcQueueSequence, -//GO(drmCtlInstHandler, -//GO(drmCtlUninstHandler, -//GO(drmDelContextTag, -//GO(drmDestroyContext, -//GO(drmDestroyDrawable, -//GO(drmDevicesEqual, -//GO(drmDMA, -//GO(drmDropMaster, -//GO(drmError, -//GO(drmFinish, -//GO(drmFree, -//GO(drmFreeBufs, -//GO(drmFreeBusid, -//GO(drmFreeDevice, +GO(drmCreateContext, iFip) +GO(drmCreateDrawable, iFip) +GO(drmCrtcGetSequence, iFiupp) +GO(drmCrtcQueueSequence, iFiuuUpU) +GO(drmCtlInstHandler, iFii) +GO(drmCtlUninstHandler, iFi) +GO(drmDelContextTag, iFiu) +GO(drmDestroyContext, iFiu) +GO(drmDestroyDrawable, iFiu) +GO(drmDevicesEqual, iFpp) +GO(drmDMA, iFip) +GO(drmDropMaster, iFi) +GO(drmError, iFip) +GO(drmFinish, iFiiu) +GO(drmFree, vFp) +GO(drmFreeBufs, iFiip) +GO(drmFreeBusid, vFp) +GO(drmFreeDevice, vFp) GO(drmFreeDevices, vFpi) -//GO(drmFreeReservedContextList, +GO(drmFreeReservedContextList, vFp) GO(drmFreeVersion, vFp) -//GO(drmGetBufInfo, -//GO(drmGetBusid, -//GO(drmGetCap, -//GO(drmGetClient, -//GO(drmGetContextFlags, -//GO(drmGetContextPrivateMapping, -//GO(drmGetContextTag, -//GO(drmGetDevice, -//GO(drmGetDevice2, +GO(drmGetBufInfo, pFi) +GO(drmGetBusid, pFi) +GO(drmGetCap, iFiUp) +GO(drmGetClient, iFiippppp) +GO(drmGetContextFlags, iFiup) +GO(drmGetContextPrivateMapping, iFiup) +GO(drmGetContextTag, pFiu) +GO(drmGetDevice, iFip) +GO(drmGetDevice2, iFiup) GO(drmGetDeviceNameFromFd, pFi) -//GO(drmGetDeviceNameFromFd2, +GO(drmGetDeviceNameFromFd2, pFi) GO(drmGetDevices, iFpi) GO(drmGetDevices2, iFupi) -//GO(drmGetEntry, -//GO(drmGetHashTable, -//GO(drmGetInterruptFromBusID, -//GO(drmGetLibVersion, -//GO(drmGetLock, +//GOM(drmGetEntry, pFEi) +GO(drmGetHashTable, pFv) +GO(drmGetInterruptFromBusID, iFiiii) +GO(drmGetLibVersion, pFi) +GO(drmGetLock, iFiuu) GO(drmGetMagic, iFip) -//GO(drmGetMap, +GO(drmGetMap, iFiipppppp) GO(drmGetNodeTypeFromFd, iFi) GO(drmGetPrimaryDeviceNameFromFd, pFi) -//GO(drmGetRenderDeviceNameFromFd, -//GO(drmGetReservedContextList, -//GO(drmGetStats, +GO(drmGetRenderDeviceNameFromFd, pFi) +GO(drmGetReservedContextList, pFip) +GO(drmGetStats, iFip) GO(drmGetVersion, pFi) -GO(drmHandleEvent, iFip) //warning, p is *drmHandleEvent that needs wrapping, plenty of function pointer there +GOM(drmHandleEvent, iFEip) GO(drmHashCreate, pFv) GO(drmHashDelete, iFpL) GO(drmHashDestroy, iFp) GO(drmHashFirst, iFppp) -GO(drmHashInsert, iFpLL) +GO(drmHashInsert, iFpLp) GO(drmHashLookup, iFpLp) GO(drmHashNext, iFppp) GO(drmIoctl, iFiLp) -//GO(drmIsMaster, -//GO(drmMalloc, -//GO(drmMap, -//GO(drmMapBufs, -//GO(drmMarkBufs, +GO(drmIsMaster, iFi) +GO(drmMalloc, pFi) +GO(drmMap, iFiuup) +GO(drmMapBufs, pFi) +GO(drmMarkBufs, iFidd) GO(drmModeAddFB, iFiuuCCuup) -//GO(drmModeAddFB2, -//GO(drmModeAddFB2WithModifiers, -//GO(drmModeAtomicAddProperty, -//GO(drmModeAtomicAlloc, -//GO(drmModeAtomicCommit, -//GO(drmModeAtomicDuplicate, -//GO(drmModeAtomicFree, -//GO(drmModeAtomicGetCursor, -//GO(drmModeAtomicMerge, -//GO(drmModeAtomicSetCursor, -//GO(drmModeAttachMode, -//GO(drmModeConnectorSetProperty, -//GO(drmModeCreateLease, -//GO(drmModeCreatePropertyBlob, -//GO(drmModeCrtcGetGamma, -//GO(drmModeCrtcSetGamma, -//GO(drmModeDestroyPropertyBlob, -//GO(drmModeDetachMode, -//GO(drmModeDirtyFB, +GO(drmModeAddFB2, iFiuuuppppu) +GO(drmModeAddFB2WithModifiers, iFiuuupppppu) +GO(drmModeAtomicAddProperty, iFpuuU) +GO(drmModeAtomicAlloc, pFv) +GO(drmModeAtomicCommit, iFipup) +GO(drmModeAtomicDuplicate, pFp) +GO(drmModeAtomicFree, vFp) +GO(drmModeAtomicGetCursor, iFp) +GO(drmModeAtomicMerge, iFpp) +GO(drmModeAtomicSetCursor, vFpi) +GO(drmModeAttachMode, iFiup) +GO(drmModeConnectorSetProperty, iFiuuU) +GO(drmModeCreateLease, iFipiip) +GO(drmModeCreatePropertyBlob, iFipLp) +GO(drmModeCrtcGetGamma, iFiuuppp) +GO(drmModeCrtcSetGamma, iFiuuppp) +GO(drmModeDestroyPropertyBlob, iFiu) +GO(drmModeDetachMode, iFiup) +GO(drmModeDirtyFB, iFiupu) GO(drmModeFreeConnector, vFp) GO(drmModeFreeCrtc, vFp) GO(drmModeFreeEncoder, vFp) -//GO(drmModeFreeFB, -//GO(drmModeFreeModeInfo, -//GO(drmModeFreeObjectProperties, -//GO(drmModeFreePlane, -//GO(drmModeFreePlaneResources, -//GO(drmModeFreeProperty, -//GO(drmModeFreePropertyBlob, +GO(drmModeFreeFB, vFp) +GO(drmModeFreeModeInfo, vFp) +GO(drmModeFreeObjectProperties, vFp) +GO(drmModeFreePlane, vFp) +GO(drmModeFreePlaneResources, vFp) +GO(drmModeFreeProperty, vFp) +GO(drmModeFreePropertyBlob, vFp) GO(drmModeFreeResources, vFp) GO(drmModeGetConnector, pFiu) -//GO(drmModeGetConnectorCurrent, +GO(drmModeGetConnectorCurrent, pFiu) +GO(drmModeGetConnectorTypeName, pFu) GO(drmModeGetCrtc, pFiu) GO(drmModeGetEncoder, pFiu) -//GO(drmModeGetFB, -//GO(drmModeGetLease, -//GO(drmModeGetPlane, -//GO(drmModeGetPlaneResources, -//GO(drmModeGetProperty, -//GO(drmModeGetPropertyBlob, +GO(drmModeGetFB, pFiu) +//GOM(drmModeGetLease, pFEi) +GO(drmModeGetPlane, pFiu) +GO(drmModeGetPlaneResources, pFi) +GO(drmModeGetProperty, pFiu) +GO(drmModeGetPropertyBlob, pFiu) GO(drmModeGetResources, pFi) -//GO(drmModeListLessees, -//GO(drmModeMoveCursor, -//GO(drmModeObjectGetProperties, -//GO(drmModeObjectSetProperty, +//GOM(drmModeListLessees, pFEi) +GO(drmModeMoveCursor, iFiuii) +GO(drmModeObjectGetProperties, pFiuu) +GO(drmModeObjectSetProperty, iFiuuuU) GO(drmModePageFlip, iFiuuup) -//GO(drmModePageFlipTarget, -//GO(drmModeRevokeLease, +GO(drmModePageFlipTarget, iFiuuupu) +GO(drmModeRevokeLease, iFiu) GO(drmModeRmFB, iFiu) GO(drmModeSetCrtc, iFiuuuupip) -//GO(drmModeSetCursor, -//GO(drmModeSetCursor2, -//GO(drmModeSetPlane, +GO(drmModeSetCursor, iFiuuuu) +GO(drmModeSetCursor2, iFiuuuuii) +GO(drmModeSetPlane, iFiuuuuiiuuuuuu) GOM(drmMsg, vFEpV) -//GO(drmOpen, -//GO(drmOpenControl, -//GO(drmOpenOnce, -//GO(drmOpenOnceWithType, -//GO(drmOpenRender, -//GO(drmOpenWithType, +GO(drmOpen, iFpp) +GO(drmOpenControl, iFi) +GO(drmOpenOnce, iFppp) +GO(drmOpenOnceWithType, iFppi) +GO(drmOpenRender, iFi) +GO(drmOpenWithType, iFppi) GO(drmPrimeFDToHandle, iFiip) GO(drmPrimeHandleToFD, iFiuup) -//GO(drmRandom, -//GO(drmRandomCreate, -//GO(drmRandomDestroy, -//GO(drmRandomDouble, -//GO(drmRmMap, -//GO(drmScatterGatherAlloc, -//GO(drmScatterGatherFree, -//GO(drmSetBusid, -//GO(drmSetClientCap, -//GO(drmSetContextFlags, -//GO(drmSetInterfaceVersion, -//GO(drmSetMaster, -//GO(drmSetServerInfo, -//GO(drmSLCreate, -//GO(drmSLDelete, -//GO(drmSLDestroy, -//GO(drmSLDump, -//GO(drmSLFirst, -//GO(drmSLInsert, -//GO(drmSLLookup, -//GO(drmSLLookupNeighbors, -//GO(drmSLNext, -//GO(drmSwitchToContext, +GO(drmRandom, LFp) +GO(drmRandomCreate, pFL) +GO(drmRandomDestroy, iFp) +GO(drmRandomDouble, dFp) +GO(drmRmMap, iFiu) +GO(drmScatterGatherAlloc, iFiLp) +GO(drmScatterGatherFree, iFiu) +GO(drmSetBusid, iFip) +GO(drmSetClientCap, iFiUU) +GO(drmSetContextFlags, iFiuu) +GO(drmSetInterfaceVersion, iFip) +GO(drmSetMaster, iFi) +//GOM(drmSetServerInfo, vFEp) +GO(drmSLCreate, pFv) +GO(drmSLDelete, iFpL) +GO(drmSLDestroy, iFp) +GO(drmSLDump, vFp) +GO(drmSLFirst, iFppp) +GO(drmSLInsert, iFpLp) +GO(drmSLLookup, iFpLp) +GO(drmSLLookupNeighbors, iFpLpppp) +GO(drmSLNext, iFppp) +GO(drmSwitchToContext, iFiu) GO(drmSyncobjCreate, iFiup) GO(drmSyncobjDestroy, iFiu) GO(drmSyncobjExportSyncFile, iFiup) @@ -192,8 +193,8 @@ GO(drmSyncobjTimelineSignal, iFippu) GO(drmSyncobjTimelineWait, iFippuIup) GO(drmSyncobjTransfer, iFiuUuUu) GO(drmSyncobjWait, iFipuIup) -//GO(drmUnlock, -//GO(drmUnmap, -//GO(drmUnmapBufs, -//GO(drmUpdateDrawableInfo, -//GO(drmWaitVBlank, +GO(drmUnlock, iFiu) +GO(drmUnmap, iFpu) +GO(drmUnmapBufs, iFp) +GO(drmUpdateDrawableInfo, iFiuuup) +GO(drmWaitVBlank, iFip) diff --git a/src/wrapped/wrappedpulse.c b/src/wrapped/wrappedpulse.c index 9ee53f95..1a02b27e 100644 --- a/src/wrapped/wrappedpulse.c +++ b/src/wrapped/wrappedpulse.c @@ -534,6 +534,29 @@ static void* find_subscribe_context_Fct(void* fct) return NULL; } +// operation_state +#define GO(A) \ +static uintptr_t my_operation_state_fct_##A = 0; \ +static void my_operation_state_##A(void* o, void* data) \ +{ \ + RunFunctionFmt(my_operation_state_fct_##A, "pp", o, data); \ +} +SUPER() +#undef GO +static void* find_operation_state_Fct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_operation_state_fct_##A == (uintptr_t)fct) return my_operation_state_##A; + SUPER() + #undef GO + #define GO(A) if(my_operation_state_fct_##A == 0) {my_operation_state_fct_##A = (uintptr_t)fct; return my_operation_state_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for pulse audio operation_state callback\n"); + return NULL; +} + // stream_state #define GO(A) \ static uintptr_t my_stream_state_fct_##A = 0; \ @@ -1375,6 +1398,14 @@ EXPORT void* my_pa_context_get_source_info_by_name(x64emu_t* emu, void* context, return my->pa_context_get_source_info_by_name(context, name, find_module_info_Fct(cb), data); } +// Operation functions + +EXPORT void my_pa_operation_set_state_callback(x64emu_t* emu, void* stream, void* cb, void* data) +{ + my->pa_operation_set_state_callback(stream, find_operation_state_Fct(cb), data); +} + + // Stream functions EXPORT void* my_pa_stream_drain(x64emu_t* emu, void* stream, void* cb, void* data) diff --git a/src/wrapped/wrappedpulse_private.h b/src/wrapped/wrappedpulse_private.h index 032e1256..132e70df 100644 --- a/src/wrapped/wrappedpulse_private.h +++ b/src/wrapped/wrappedpulse_private.h @@ -164,6 +164,7 @@ GO(pa_msleep, iFL) GO(pa_operation_cancel, vFp) GO(pa_operation_get_state, uFp) GO(pa_operation_ref, pFp) +GOM(pa_operation_set_state_callback, vFEppp) GO(pa_operation_unref, vFp) GO(pa_parse_sample_format, iFp) GO(pa_path_get_filename, pFp) |