diff options
| author | Yang Liu <numbksco@gmail.com> | 2023-05-28 19:14:56 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-28 13:14:56 +0200 |
| commit | eb687748c5f6cb39b5f3d70721f3e96a3c04549d (patch) | |
| tree | 383faf5cb60c3b3f5d1a231c8d085afd7d242ac4 /src | |
| parent | 4b81cfcb479bac540e2dd936889edca0e5a7506e (diff) | |
| download | box64-eb687748c5f6cb39b5f3d70721f3e96a3c04549d.tar.gz box64-eb687748c5f6cb39b5f3d70721f3e96a3c04549d.zip | |
[WRAPPER] Added some wayland function wrappers (#807)
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 1 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 1 | ||||
| -rw-r--r-- | src/wrapped/wrappedwaylandclient_private.h | 26 |
4 files changed, 18 insertions, 13 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 274f91b8..848db48d 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -1616,6 +1616,7 @@ #() pFpuuuu #() pFpuuup #() pFpupii +#() pFpuppu #() pFpuppp #() pFpUdii #() pFpfffi diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index e61365a1..cb716efb 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -1652,6 +1652,7 @@ typedef void* (*pFpuuWW_t)(void*, uint32_t, uint32_t, uint16_t, uint16_t); typedef void* (*pFpuuuu_t)(void*, uint32_t, uint32_t, uint32_t, uint32_t); typedef void* (*pFpuuup_t)(void*, uint32_t, uint32_t, uint32_t, void*); typedef void* (*pFpupii_t)(void*, uint32_t, void*, int32_t, int32_t); +typedef void* (*pFpuppu_t)(void*, uint32_t, void*, void*, uint32_t); typedef void* (*pFpuppp_t)(void*, uint32_t, void*, void*, void*); typedef void* (*pFpUdii_t)(void*, uint64_t, double, int32_t, int32_t); typedef void* (*pFpfffi_t)(void*, float, float, float, int32_t); @@ -4454,6 +4455,7 @@ void pFpuuWW(x64emu_t *emu, uintptr_t fcn) { pFpuuWW_t fn = (pFpuuWW_t)fcn; R_RA void pFpuuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuuu_t fn = (pFpuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (uint32_t)R_R8); } void pFpuuup(x64emu_t *emu, uintptr_t fcn) { pFpuuup_t fn = (pFpuuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX, (uint32_t)R_RCX, (void*)R_R8); } void pFpupii(x64emu_t *emu, uintptr_t fcn) { pFpupii_t fn = (pFpupii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (int32_t)R_RCX, (int32_t)R_R8); } +void pFpuppu(x64emu_t *emu, uintptr_t fcn) { pFpuppu_t fn = (pFpuppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint32_t)R_R8); } void pFpuppp(x64emu_t *emu, uintptr_t fcn) { pFpuppp_t fn = (pFpuppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFpUdii(x64emu_t *emu, uintptr_t fcn) { pFpUdii_t fn = (pFpUdii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, emu->xmm[0].d[0], (int32_t)R_RDX, (int32_t)R_RCX); } void pFpfffi(x64emu_t *emu, uintptr_t fcn) { pFpfffi_t fn = (pFpfffi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], (int32_t)R_RSI); } @@ -7014,6 +7016,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpuuuu) return 1; if (fun == &pFpuuup) return 1; if (fun == &pFpupii) return 1; + if (fun == &pFpuppu) return 1; if (fun == &pFpuppp) return 1; if (fun == &pFpUdii) return 2; if (fun == &pFpfffi) return 4; diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 33431229..6eb93f70 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -1653,6 +1653,7 @@ void pFpuuWW(x64emu_t *emu, uintptr_t fnc); void pFpuuuu(x64emu_t *emu, uintptr_t fnc); void pFpuuup(x64emu_t *emu, uintptr_t fnc); void pFpupii(x64emu_t *emu, uintptr_t fnc); +void pFpuppu(x64emu_t *emu, uintptr_t fnc); void pFpuppp(x64emu_t *emu, uintptr_t fnc); void pFpUdii(x64emu_t *emu, uintptr_t fnc); void pFpfffi(x64emu_t *emu, uintptr_t fnc); diff --git a/src/wrapped/wrappedwaylandclient_private.h b/src/wrapped/wrappedwaylandclient_private.h index fc2aeef7..1d54f28c 100644 --- a/src/wrapped/wrappedwaylandclient_private.h +++ b/src/wrapped/wrappedwaylandclient_private.h @@ -28,11 +28,11 @@ GO(wl_display_get_fd, iFp) //GO(wl_display_get_protocol_error, //DATA(wl_display_interface, GO(wl_display_prepare_read, iFp) -//GO(wl_display_prepare_read_queue, +GO(wl_display_prepare_read_queue, iFpp) GO(wl_display_read_events, iFp) GO(wl_display_roundtrip, iFp) //GO(wl_display_roundtrip_queue, -//GO(wl_event_queue_destroy, +GO(wl_event_queue_destroy, vFp) //DATA(wl_keyboard_interface, //GO(wl_list_empty, //GO(wl_list_init, @@ -44,28 +44,28 @@ GO(wl_display_roundtrip, iFp) //DATA(wl_output_interface, //DATA(wl_pointer_interface, //GO(wl_proxy_add_dispatcher, -//GO(wl_proxy_add_listener, +GO(wl_proxy_add_listener, iFppp) GO(wl_proxy_create, pFpp) -//GO(wl_proxy_create_wrapper, +GO(wl_proxy_create_wrapper, pFp) GO(wl_proxy_destroy, vFp) //GO(wl_proxy_get_class, -//GO(wl_proxy_get_id, -//GO(wl_proxy_get_listener, +GO(wl_proxy_get_id, uFp) +GO(wl_proxy_get_listener, pFp) //GO(wl_proxy_get_tag, -//GO(wl_proxy_get_user_data, -//GO(wl_proxy_get_version, +GO(wl_proxy_get_user_data, pFp) +GO(wl_proxy_get_version, uFp) //GO(wl_proxy_marshal, //GO(wl_proxy_marshal_array, -//GO(wl_proxy_marshal_array_constructor, -//GO(wl_proxy_marshal_array_constructor_versioned, +GO(wl_proxy_marshal_array_constructor, pFpupp) +GO(wl_proxy_marshal_array_constructor_versioned, pFpuppu) //GO(wl_proxy_marshal_array_flags, //GO(wl_proxy_marshal_constructor, //GO(wl_proxy_marshal_constructor_versioned, //GO(wl_proxy_marshal_flags, -//GO(wl_proxy_set_queue, +GO(wl_proxy_set_queue, vFpp) //GO(wl_proxy_set_tag, -//GO(wl_proxy_set_user_data, -//GO(wl_proxy_wrapper_destroy, +GO(wl_proxy_set_user_data, vFpp) +GO(wl_proxy_wrapper_destroy, vFp) DATA(wl_region_interface, 40) DATA(wl_registry_interface, 40) DATA(wl_seat_interface, 40) |