diff options
Diffstat (limited to 'src')
60 files changed, 18022 insertions, 39 deletions
diff --git a/src/include/globalsymbols.h b/src/include/globalsymbols.h index 8af78d05..5368521e 100755 --- a/src/include/globalsymbols.h +++ b/src/include/globalsymbols.h @@ -2,11 +2,11 @@ #define _GLOBAL_SYMBOLS_H_ //GTK stuff -//void my_checkGlobalGdkDisplay(); -//void my_setGlobalGThreadsInit(); +void my_checkGlobalGdkDisplay(); +void my_setGlobalGThreadsInit(); //void** my_GetGTKDisplay(); -//void** my_GetGthreadsGotInitialized(); // defined in wrappedgthread2 +void** my_GetGthreadsGotInitialized(); // defined in wrappedgthread2 // NCurse / TInfo void my_checkGlobalTInfo(); diff --git a/src/include/gtkclass.h b/src/include/gtkclass.h new file mode 100755 index 00000000..889bf24e --- /dev/null +++ b/src/include/gtkclass.h @@ -0,0 +1,316 @@ +#ifndef __GTKCLASS_H__ +#define __GTKCLASS_H__ + +#include <stdint.h> +#include <stddef.h> + +#include "globalsymbols.h" + +typedef struct box64context_s box64context_t; +typedef struct bridge_s bridge_t; + +typedef struct my_GObjectClass_s +{ + int g_type_class; + void* construct_properties; + void* (*constructor) (int type, uint32_t n_construct_properties, void* construct_properties); + void (*set_property) (void* object, uint32_t property_id, void* value, void* pspec); + void (*get_property) (void* object, uint32_t property_id, void* value, void* pspec); + void (*dispose) (void* object); + void (*finalize) (void* object); + void (*dispatch_properties_changed) (void* object, uint32_t n_pspecs, void* pspecs); + void (*notify) (void* object, void* pspec); + void (*constructed) (void* object); + uint32_t flags; + void* pdummy[6]; +} my_GObjectClass_t; + + +typedef struct my_GtkObjectClass_s +{ + my_GObjectClass_t parent_class; + void (*set_arg) (void* object, void* arg, uint32_t arg_id); + void (*get_arg) (void* object, void* arg, uint32_t arg_id); + void (*destroy) (void* object); +} my_GtkObjectClass_t; + +typedef struct my_GtkWidgetClass_s +{ + my_GtkObjectClass_t parent_class; + uint32_t activate_signal; + uint32_t set_scroll_adjustments_signal; + void (*dispatch_child_properties_changed) (void* widget, uint32_t n_pspecs, void* pspecs); + void (* show) (void* widget); + void (* show_all) (void* widget); + void (* hide) (void* widget); + void (* hide_all) (void* widget); + void (* map) (void* widget); + void (* unmap) (void* widget); + void (* realize) (void* widget); + void (* unrealize) (void* widget); + void (* size_request) (void* widget, void* requisition); + void (* size_allocate) (void* widget, void* allocation); + void (* state_changed) (void* widget, int previous_state); + void (* parent_set) (void* widget, void* previous_parent); + void (* hierarchy_changed) (void* widget, void* previous_toplevel); + void (* style_set) (void* widget, void* previous_style); + void (* direction_changed) (void* widget, int previous_direction); + void (* grab_notify) (void* widget, int was_grabbed); + void (* child_notify) (void* widget, void* pspec); + int (* mnemonic_activate) (void* widget, int group_cycling); + void (* grab_focus) (void* widget); + int (* focus) (void* widget, int direction); + int (* event) (void* widget, void* event); + int (* button_press_event) (void* widget, void* event); + int (* button_release_event) (void* widget, void* event); + int (* scroll_event) (void* widget, void* event); + int (* motion_notify_event) (void* widget, void* event); + int (* delete_event) (void* widget, void* event); + int (* destroy_event) (void* widget, void* event); + int (* expose_event) (void* widget, void* event); + int (* key_press_event) (void* widget, void* event); + int (* key_release_event) (void* widget, void* event); + int (* enter_notify_event) (void* widget, void* event); + int (* leave_notify_event) (void* widget, void* event); + int (* configure_event) (void* widget, void* event); + int (* focus_in_event) (void* widget, void* event); + int (* focus_out_event) (void* widget, void* event); + int (* map_event) (void* widget, void* event); + int (* unmap_event) (void* widget, void* event); + int (* property_notify_event) (void* widget, void* event); + int (* selection_clear_event) (void* widget, void* event); + int (* selection_request_event) (void* widget, void* event); + int (* selection_notify_event) (void* widget, void* event); + int (* proximity_in_event) (void* widget, void* event); + int (* proximity_out_event) (void* widget, void* event); + int (* visibility_notify_event) (void* widget, void* event); + int (* client_event) (void* widget, void* event); + int (* no_expose_event) (void* widget, void* event); + int (* window_state_event) (void* widget, void* event); + void (* selection_get) (void* widget, void* selection_data, uint32_t info, uint32_t time_); + void (* selection_received) (void* widget, void* selection_data, uint32_t time_); + void (* drag_begin) (void* widget, void* context); + void (* drag_end) (void* widget, void* context); + void (* drag_data_get) (void* widget, void* context, void* selection_data, uint32_t info, uint32_t time_); + void (* drag_data_delete) (void* widget, void* context); + void (* drag_leave) (void* widget, void* context,uint32_t time_); + int (* drag_motion) (void* widget, void* context, int32_t x, int32_t y, uint32_t time_); + int (* drag_drop) (void* widget, void* context, int32_t x, int32_t y, uint32_t time_); + void (* drag_data_received) (void* widget, void* context, int32_t x, int32_t y, void* selection_data, uint32_t info, uint32_t time_); + int (* popup_menu) (void* widget); + int (* show_help) (void* widget, int help_type); + void*(*get_accessible) (void* widget); + void (*screen_changed) (void* widget, void* previous_screen); + int (*can_activate_accel) (void* widget, uint32_t signal_id); + int (*grab_broken_event) (void* widget, void* event); + void (* composited_changed) (void* widget); + int (* query_tooltip) (void* widget, int32_t x, int32_t y, int keyboard_tooltip, void* tooltip); + void (*_gtk_reserved5) (void); + void (*_gtk_reserved6) (void); + void (*_gtk_reserved7) (void); +} my_GtkWidgetClass_t; + +typedef struct my_GtkContainerClass_s +{ + my_GtkWidgetClass_t parent_class; + void (*add) (void* container, void* widget); + void (*remove) (void* container, void* widget); + void (*check_resize) (void* container); + void (*forall) (void* container, int include_internals, void* callback, void* callback_data); + void (*set_focus_child) (void* container, void* widget); + int (*child_type) (void* container); + void* (*composite_name) (void* container, void* child); + void (*set_child_property) (void* container, void* child, uint32_t property_id, void* value, void* pspec); + void (*get_child_property) (void* container, void* child, uint32_t property_id, void* value, void* pspec); + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +} my_GtkContainerClass_t; + +typedef struct my_GtkActionClass_s +{ + my_GObjectClass_t parent_class; + void (* activate) (void* action); + int menu_item_type; + int toolbar_item_type; + void* (* create_menu_item) (void* action); + void* (* create_tool_item) (void* action); + void (* connect_proxy) (void* action, void* proxy); + void (* disconnect_proxy) (void* action, void* proxy); + void* (* create_menu) (void* action); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +} my_GtkActionClass_t; + +typedef struct my_GtkMiscClass_s +{ + my_GtkWidgetClass_t parent_class; +} my_GtkMiscClass_t; + +typedef struct my_GtkLabelClass_s +{ + my_GtkMiscClass_t parent_class; + void (* move_cursor) (void* label, int step, int count, int extend_selection); + void (* copy_clipboard) (void* label); + void (* populate_popup) (void* label, void* menu); + int (*activate_link) (void* label, void* uri); + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); +} my_GtkLabelClass_t; + +typedef struct my_GtkTreeViewClass_s +{ + my_GtkContainerClass_t parent_class; + void (* set_scroll_adjustments) (void* tree_view, void* hadjustment, void* vadjustment); + void (* row_activated) (void* tree_view, void* path, void* column); + int (* test_expand_row) (void* tree_view, void* iter, void* path); + int (* test_collapse_row) (void* tree_view, void* iter, void* path); + void (* row_expanded) (void* tree_view, void* iter, void* path); + void (* row_collapsed) (void* tree_view, void* iter, void* path); + void (* columns_changed) (void* tree_view); + void (* cursor_changed) (void* tree_view); + int (* move_cursor) (void* tree_view, int step, int count); + int (* select_all) (void* tree_view); + int (* unselect_all) (void* tree_view); + int (* select_cursor_row) (void* tree_view, int start_editing); + int (* toggle_cursor_row) (void* tree_view); + int (* expand_collapse_cursor_row) (void* tree_view, int logical, int expand, int open_all); + int (* select_cursor_parent) (void* tree_view); + int (* start_interactive_search) (void* tree_view); + void (*_gtk_reserved0) (void); + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +} my_GtkTreeViewClass_t; + +typedef struct my_GtkBinClass_s +{ + my_GtkContainerClass_t parent_class; + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +} my_GtkBinClass_t; + +typedef struct my_GtkWindowClass_s { + my_GtkBinClass_t parent_class; + void (* set_focus) (void* window, void* focus); + int (* frame_event) (void* window, void* event); + void (* activate_focus) (void* window); + void (* activate_default) (void* window); + void (* move_focus) (void* window, int direction); + void (*keys_changed) (void* window); + void (*_gtk_reserved1) (void); + void (*_gtk_reserved2) (void); + void (*_gtk_reserved3) (void); + void (*_gtk_reserved4) (void); +} my_GtkWindowClass_t; + +typedef struct my_MetaFramesClass_s +{ + my_GtkWindowClass_t parent_class; + +} my_MetaFramesClass_t; + +typedef struct my_GtkTableClass_s +{ + my_GtkContainerClass_t parent_class; +} my_GtkTableClass_t; + +// GTypeValueTable +typedef struct my_GTypeValueTable_s { + void (*value_init) (void* value); + void (*value_free) (void* value); + void (*value_copy) (void* src_value, void* dest_value); + void* (*value_peek_pointer) (void* value); + void* collect_format; + void* (*collect_value) (void* value, uint32_t n_collect_values, void* collect_values, uint32_t collect_flags); + void* lcopy_format; + void* (*lcopy_value) (void* value, uint32_t n_collect_values, void* collect_values, uint32_t collect_flags); +} my_GTypeValueTable_t; + +// GTypeInfo +typedef void (*GBaseInitFunc) (void* g_class); +typedef void (*GBaseFinalizeFunc) (void* g_class); +typedef void (*GClassInitFunc) (void* g_class, void* class_data); +typedef void (*GClassFinalizeFunc) (void* g_class, void* class_data); +typedef void (*GInstanceInitFunc) (void* instance, void* g_class); + +typedef struct my_GTypeInfo_s { + uint16_t class_size; + GBaseInitFunc base_init; + GBaseFinalizeFunc base_finalize; + GClassInitFunc class_init; + GClassFinalizeFunc class_finalize; + void* class_data; + uint16_t instance_size; + uint16_t n_preallocs; + GInstanceInitFunc instance_init; + my_GTypeValueTable_t* value_table; +} my_GTypeInfo_t; + +// GtkTypeInfo +typedef GBaseInitFunc GtkClassInitFunc; +typedef GInstanceInitFunc GtkObjectInitFunc; + +typedef struct my_GtkTypeInfo_s { + void* type_name; + uint32_t object_size; + uint32_t class_size; + GtkClassInitFunc class_init_func; + GtkObjectInitFunc object_init_func; + void* reserved_1; + void* reserved_2; + GtkClassInitFunc base_class_init_func; +} my_GtkTypeInfo_t ; + +my_GTypeValueTable_t* findFreeGTypeValueTable(my_GTypeValueTable_t* fcts); +my_GTypeInfo_t* findFreeGTypeInfo(my_GTypeInfo_t* fcts, int parent); +my_GtkTypeInfo_t* findFreeGtkTypeInfo(my_GtkTypeInfo_t* fcts, int parent); + +void InitGTKClass(bridge_t *bridge); +void FiniGTKClass(); + +#define GTKCLASSES() \ +GTKCLASS(GObject) \ +GTKCLASS(GtkObject) \ +GTKCLASS(GtkWidget) \ +GTKCLASS(GtkContainer) \ +GTKCLASS(GtkAction) \ +GTKCLASS(GtkLabel) \ +GTKCLASS(GtkMisc) \ +GTKCLASS(GtkTreeView) \ +GTKCLASS(GtkBin) \ +GTKCLASS(GtkWindow) \ +GTKCLASS(GtkTable) \ +GTKCLASS(MetaFrames) \ + +#define GTKCLASS(A) void Set##A##ID(int id); +GTKCLASSES() +#undef GTKCLASS + +void SetGTypeName(void* f); +void AutoBridgeGtk(void*(*ref)(int), void(*unref)(void*)); + +void* wrapCopyGTKClass(void* cl, int type); +void* unwrapCopyGTKClass(void* klass, int type); + +typedef struct my_signal_s { + uint64_t sign; // signature + void* data; + uintptr_t c_handler; + uintptr_t destroy; +} my_signal_t; +// some random sign to identify a my_signal_t +#define SIGN 0xFB3405EB4510AA00LL + +my_signal_t* new_mysignal(void* f, void* data, void* destroy); +void my_signal_delete(my_signal_t* sig); +int my_signal_is_valid(void* sig); +int my_signal_cb(void* a, void* b, void* c, void* d); + +#endif //__GTKCLASS_H__ \ No newline at end of file diff --git a/src/include/myalign.h b/src/include/myalign.h index 17ab57fa..0ad36a93 100755 --- a/src/include/myalign.h +++ b/src/include/myalign.h @@ -30,10 +30,10 @@ typedef struct { #define CONVERT_VALIST(A) \ va_list sysv_varargs; \ - sysv_varargs->gp_offset=A->gp_offset; \ - sysv_varargs->fp_offset=A->fp_offset; \ - sysv_varargs->reg_save_area=A->reg_save_area; \ - sysv_varargs->overflow_arg_area=A->overflow_arg_area; + sysv_varargs->gp_offset=(A)->gp_offset; \ + sysv_varargs->fp_offset=(A)->fp_offset; \ + sysv_varargs->reg_save_area=(A)->reg_save_area; \ + sysv_varargs->overflow_arg_area=(A)->overflow_arg_area; #define CREATE_VALIST_FROM_VAARG(STACK, SCRATCH, N) \ va_list sysv_varargs; \ @@ -70,11 +70,11 @@ typedef struct va_list { #define CONVERT_VALIST(A) \ va_list sysv_varargs; \ - sysv_varargs.__gr_offs=-(6*8)+A->gp_offset; \ - sysv_varargs.__vr_offs=-(8*16)+(A->fp_offset-X64_VA_MAX_REG); \ - sysv_varargs.__stack=A->overflow_arg_area; \ - sysv_varargs.__gr_top=A->reg_save_area + X64_VA_MAX_REG; \ - sysv_varargs.__vr_top=A->reg_save_area + X64_VA_MAX_XMM; + sysv_varargs.__gr_offs=-(6*8)+(A)->gp_offset; \ + sysv_varargs.__vr_offs=-(8*16)+((A)->fp_offset-X64_VA_MAX_REG); \ + sysv_varargs.__stack=(A)->overflow_arg_area; \ + sysv_varargs.__gr_top=(A)->reg_save_area + X64_VA_MAX_REG; \ + sysv_varargs.__vr_top=(A)->reg_save_area + X64_VA_MAX_XMM; #define CREATE_VALIST_FROM_VAARG(STACK, SCRATCH, N) \ va_list sysv_varargs; \ diff --git a/src/librarian/globalsymbols.c b/src/librarian/globalsymbols.c index a5ca89c1..dfc163f3 100755 --- a/src/librarian/globalsymbols.c +++ b/src/librarian/globalsymbols.c @@ -24,7 +24,6 @@ // *********** GTK ***************** -#if 0 EXPORT void* gdk_display = NULL; // in case it's used... void my_checkGlobalGdkDisplay() @@ -38,7 +37,7 @@ void my_setGlobalGThreadsInit() int val = 1; uintptr_t globoffs, globend; if (GetGlobalNoWeakSymbolStartEnd(my_context->maplib, "g_threads_got_initialized", &globoffs, &globend, -1, NULL)) { - printf_log(LOG_DEBUG, "Global g_threads_got_initialized workaround, @%p <= %p\n", (void*)globoffs, (void*)val); + printf_log(LOG_DEBUG, "Global g_threads_got_initialized workaround, @%p <= %d\n", (void*)globoffs, val); memcpy((void*)globoffs, &val, sizeof(val)); } } @@ -50,14 +49,13 @@ void** my_GetGTKDisplay() return &gdk_display; char* name = getGDKX11LibName(); - library_t * lib = GetLibInternal(name?name:"libgtk-1.2.so.0"); + library_t * lib = GetLibInternal(name?name:"libgdk-x11-2.0.so.0"); if(!lib) return &gdk_display; // mmm, that will crash later probably void* s = dlsym(GetHandle(lib), "gdk_display"); gdk_display = *(void**)s; return s; } -#endif // **************** NCurses **************** EXPORT int COLS; EXPORT int LINES; diff --git a/src/librarian/librarian.c b/src/librarian/librarian.c index 03bcae0a..852aeefd 100755 --- a/src/librarian/librarian.c +++ b/src/librarian/librarian.c @@ -451,8 +451,8 @@ static int GetGlobalSymbolStartEnd_internal(lib_t *maplib, const char* name, uin // nope, not found return 0; } -//void** my_GetGTKDisplay(); -//void** my_GetGthreadsGotInitialized(); +void** my_GetGTKDisplay(); +void** my_GetGthreadsGotInitialized(); int GetGlobalSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, uintptr_t* end, elfheader_t* self, int version, const char* vername) { if(GetGlobalSymbolStartEnd_internal(maplib, name, start, end, self, version, vername)) { @@ -470,18 +470,18 @@ int GetGlobalSymbolStartEnd(lib_t *maplib, const char* name, uintptr_t* start, u return 1; } // some special case symbol, defined inside box64 itself - //if(!strcmp(name, "gdk_display")) { - // *start = (uintptr_t)my_GetGTKDisplay(); - // *end = *start+sizeof(void*); - // printf_log(LOG_INFO, "Using global gdk_display for gdk-x11 (%p:%p)\n", start, *(void**)start); - // return 1; - //} - //if(!strcmp(name, "g_threads_got_initialized")) { - // *start = (uintptr_t)my_GetGthreadsGotInitialized(); - // *end = *start+sizeof(int); - // printf_log(LOG_INFO, "Using global g_threads_got_initialized for gthread2 (%p:%p)\n", start, *(void**)start); - // return 1; - //} + if(!strcmp(name, "gdk_display")) { + *start = (uintptr_t)my_GetGTKDisplay(); + *end = *start+sizeof(void*); + printf_log(LOG_INFO, "Using global gdk_display for gdk-x11 (%p:%p)\n", start, *(void**)start); + return 1; + } + if(!strcmp(name, "g_threads_got_initialized")) { + *start = (uintptr_t)my_GetGthreadsGotInitialized(); + *end = *start+sizeof(int); + printf_log(LOG_INFO, "Using global g_threads_got_initialized for gthread2 (%p:%p)\n", start, *(void**)start); + return 1; + } // not found... return 0; } diff --git a/src/library_list.h b/src/library_list.h index 771cdde4..70478d56 100755 --- a/src/library_list.h +++ b/src/library_list.h @@ -99,21 +99,22 @@ GO("libresolv.so.2", libresolv) GO("libpulse-simple.so.0", pulsesimple) GO("libpulse.so.0", pulse) //GO("libsndfile.so.1", libsndfile) -//GO("libgtk-x11-2.0.so.0", gtkx112) -//GO("libgdk-x11-2.0.so.0", gdkx112) +GO("libgtk-x11-2.0.so.0", gtkx112) +GO("libgdk-x11-2.0.so.0", gdkx112) //GO("libgtk-3.so.0", gtk3) //GO("libgdk-3.so.0", gdk3) -//GO("libgdk_pixbuf-2.0.so.0", gdkpixbuf2) -//GO("libgio-2.0.so.0", gio2) -//GO("libgmodule-2.0.so.0", gmodule2) -//GO("libgobject-2.0.so.0", gobject2) -//GO("libglib-2.0.so.0", glib2) -//GO("libgthread-2.0.so.0", gthread2) +GO("libgdk_pixbuf-2.0.so.0", gdkpixbuf2) +GO("libgconf-2.so.4", gconf2) +GO("libgio-2.0.so.0", gio2) +GO("libgmodule-2.0.so.0", gmodule2) +GO("libgobject-2.0.so.0", gobject2) +GO("libglib-2.0.so.0", glib2) +GO("libgthread-2.0.so.0", gthread2) //GO("libgstreamer-0.10.so.0", gstreamer010) //GO("libgstinterfaces-0.10.so.0", gstinterfaces010) //GO("libdbusmenu-gtk.so.4", dbusmenugtk) //GO("libdbusmenu-glib.so.4", dbusmenuglib) -//GO("libdbus-glib-1.so.2", dbusglib1) +GO("libdbus-glib-1.so.2", dbusglib1) //GO("libgudev-1.0.so.0", gudev1) //GO("libappindicator.so.1", appindicator) GO("libatk-1.0.so.0", atk) diff --git a/src/tools/gtkclass.c b/src/tools/gtkclass.c new file mode 100755 index 00000000..5e17cd14 --- /dev/null +++ b/src/tools/gtkclass.c @@ -0,0 +1,1132 @@ +#define _GNU_SOURCE +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "callback.h" +#include "box64context.h" +#include "librarian.h" +#include "gtkclass.h" +#include "library.h" +#include "custommem.h" +#include "khash.h" + +static bridge_t* my_bridge = NULL; +static const char* (*g_type_name)(int) = NULL; +#define GTKCLASS(A) static int my_##A = -1; +GTKCLASSES() +#undef GTKCLASS + +KHASH_SET_INIT_INT(signalmap) +static kh_signalmap_t *my_signalmap = NULL; + +// ---- Defining the multiple functions now ----- +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) \ +GO(4) \ +GO(5) \ +GO(6) \ +GO(7) + +#define WRAPPED(A, NAME, RET, DEF, N, ...) \ +static uintptr_t my_##NAME##_fct_##A = 0; \ +static RET my_##NAME##_##A DEF \ +{ \ + printf_log(LOG_DEBUG, "Calling " #NAME "_" #A " wrapper\n"); \ + return (RET)RunFunction(my_context, my_##NAME##_fct_##A, N, __VA_ARGS__);\ +} + +#define FIND(A, NAME) \ +static void* find_##NAME##_##A(void* fct) \ +{ \ + if(!fct) return fct; \ + void* tmp = GetNativeFnc((uintptr_t)fct); \ + if(tmp) return tmp; \ + if(my_##NAME##_##A##_fct_0 == (uintptr_t)fct) return my_##NAME##_##A##_0; \ + if(my_##NAME##_##A##_fct_1 == (uintptr_t)fct) return my_##NAME##_##A##_1; \ + if(my_##NAME##_##A##_fct_2 == (uintptr_t)fct) return my_##NAME##_##A##_2; \ + if(my_##NAME##_##A##_fct_3 == (uintptr_t)fct) return my_##NAME##_##A##_3; \ + if(my_##NAME##_##A##_fct_4 == (uintptr_t)fct) return my_##NAME##_##A##_4; \ + if(my_##NAME##_##A##_fct_5 == (uintptr_t)fct) return my_##NAME##_##A##_5; \ + if(my_##NAME##_##A##_fct_6 == (uintptr_t)fct) return my_##NAME##_##A##_6; \ + if(my_##NAME##_##A##_fct_7 == (uintptr_t)fct) return my_##NAME##_##A##_7; \ + if(my_##NAME##_##A##_fct_0 == 0) {my_##NAME##_##A##_fct_0 = (uintptr_t)fct; return my_##NAME##_##A##_0; } \ + if(my_##NAME##_##A##_fct_1 == 0) {my_##NAME##_##A##_fct_1 = (uintptr_t)fct; return my_##NAME##_##A##_1; } \ + if(my_##NAME##_##A##_fct_2 == 0) {my_##NAME##_##A##_fct_2 = (uintptr_t)fct; return my_##NAME##_##A##_2; } \ + if(my_##NAME##_##A##_fct_3 == 0) {my_##NAME##_##A##_fct_3 = (uintptr_t)fct; return my_##NAME##_##A##_3; } \ + if(my_##NAME##_##A##_fct_4 == 0) {my_##NAME##_##A##_fct_4 = (uintptr_t)fct; return my_##NAME##_##A##_4; } \ + if(my_##NAME##_##A##_fct_5 == 0) {my_##NAME##_##A##_fct_5 = (uintptr_t)fct; return my_##NAME##_##A##_5; } \ + if(my_##NAME##_##A##_fct_6 == 0) {my_##NAME##_##A##_fct_6 = (uintptr_t)fct; return my_##NAME##_##A##_6; } \ + if(my_##NAME##_##A##_fct_7 == 0) {my_##NAME##_##A##_fct_7 = (uintptr_t)fct; return my_##NAME##_##A##_7; } \ + printf_log(LOG_NONE, "Warning, no more slot for " #NAME " gtkclass callback\n"); \ + return NULL; \ +} + +#define REVERSE(A, NAME) \ +static void* reverse_##NAME##_##A(wrapper_t W, void* fct) \ +{ \ + if(!fct) return fct; \ + if((void*)my_##NAME##_##A##_0 == fct) return (void*)my_##NAME##_##A##_fct_0;\ + if((void*)my_##NAME##_##A##_1 == fct) return (void*)my_##NAME##_##A##_fct_1;\ + if((void*)my_##NAME##_##A##_2 == fct) return (void*)my_##NAME##_##A##_fct_2;\ + if((void*)my_##NAME##_##A##_3 == fct) return (void*)my_##NAME##_##A##_fct_3;\ + if((void*)my_##NAME##_##A##_4 == fct) return (void*)my_##NAME##_##A##_fct_4;\ + if((void*)my_##NAME##_##A##_5 == fct) return (void*)my_##NAME##_##A##_fct_5;\ + if((void*)my_##NAME##_##A##_6 == fct) return (void*)my_##NAME##_##A##_fct_6;\ + if((void*)my_##NAME##_##A##_7 == fct) return (void*)my_##NAME##_##A##_fct_7;\ + Dl_info info; \ + if(dladdr(fct, &info)) \ + return (void*)AddCheckBridge(my_bridge, W, fct, 0, NULL); \ + return fct; \ +} + +#define AUTOBRIDGE(A, NAME) \ +static void autobridge_##NAME##_##A(wrapper_t W, void* fct) \ +{ \ + if(!fct) \ + return; \ + Dl_info info; \ + if(dladdr(fct, &info)) \ + AddAutomaticBridge(thread_get_emu(), my_bridge, W, fct, 0); \ +} + +#define WRAPPER(A, NAME, RET, DEF, N, ...) \ +WRAPPED(0, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(1, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(2, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(3, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(4, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(5, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(6, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +WRAPPED(7, NAME##_##A, RET, DEF, N, __VA_ARGS__) \ +FIND(A, NAME) \ +REVERSE(A, NAME) \ +AUTOBRIDGE(A, NAME) + +// ----- GObjectClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GObject, constructor, void*, (int type, uint32_t n_construct_properties, void* construct_properties), 3, type, n_construct_properties, construct_properties); +WRAPPER(GObject, set_property, void, (void* object, uint32_t property_id, void* value, void* pspec), 4, object, property_id, value, pspec); +WRAPPER(GObject, get_property, void, (void* object, uint32_t property_id, void* value, void* pspec), 4, object, property_id, value, pspec); +WRAPPER(GObject, dispose, void, (void* object), 1, object); +WRAPPER(GObject, finalize, void, (void* object), 1, object); +WRAPPER(GObject, dispatch_properties_changed, void*, (int type, uint32_t n_pspecs, void* pspecs), 3, type, n_pspecs, pspecs); +WRAPPER(GObject, notify, void*, (int type, void* pspecs), 2, type, pspecs); +WRAPPER(GObject, constructed, void, (void* object), 1, object); + +#define SUPERGO() \ + GO(constructor, pFiup); \ + GO(set_property, vFpupp); \ + GO(get_property, vFpupp); \ + GO(dispose, vFp); \ + GO(finalize, vFp); \ + GO(dispatch_properties_changed, vFpup); \ + GO(notify, vFpp); \ + GO(constructed, vFp); + +// wrap (so bridge all calls, just in case) +static void wrapGObjectClass(my_GObjectClass_t* class) +{ + #define GO(A, W) class->A = reverse_##A##_GObject (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGObjectClass(my_GObjectClass_t* class) +{ + #define GO(A, W) class->A = find_##A##_GObject (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGObjectClass(my_GObjectClass_t* class) +{ + #define GO(A, W) autobridge_##A##_GObject (W, class->A) + SUPERGO() + #undef GO +} +#undef SUPERGO + +// ----- GtkObjectClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkObject, set_arg, void, (void* object, void* arg, uint32_t arg_id), 3, object, arg, arg_id); +WRAPPER(GtkObject, get_arg, void, (void* object, void* arg, uint32_t arg_id), 3, object, arg, arg_id); +WRAPPER(GtkObject, destroy, void, (void* object), 1, object); + +#define SUPERGO() \ + GO(set_arg, vFppu); \ + GO(get_arg, vFppu); \ + GO(destroy, vFp); +// wrap (so bridge all calls, just in case) +static void wrapGtkObjectClass(my_GtkObjectClass_t* class) +{ + wrapGObjectClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkObject (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkObjectClass(my_GtkObjectClass_t* class) +{ + unwrapGObjectClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkObject (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkObjectClass(my_GtkObjectClass_t* class) +{ + bridgeGObjectClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkObject (W, class->A) + SUPERGO() + #undef GO +} + +#undef SUPERGO + +// ----- GtkWidgetClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkWidget, dispatch_child_properties_changed, void, (void* widget, uint32_t n_pspecs, void* pspecs), 3, widget, n_pspecs, pspecs); +WRAPPER(GtkWidget, show, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, show_all, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, hide, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, hide_all, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, map, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, unmap, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, realize, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, unrealize, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, size_request, void, (void* widget, void* requisition), 2, widget, requisition); +WRAPPER(GtkWidget, size_allocate, void, (void* widget, void* allocation), 2, widget, allocation); +WRAPPER(GtkWidget, state_changed, void, (void* widget, int previous_state), 2, widget, previous_state); +WRAPPER(GtkWidget, parent_set, void, (void* widget, void* previous_parent), 2, widget, previous_parent); +WRAPPER(GtkWidget, hierarchy_changed, void, (void* widget, void* previous_toplevel), 2, widget, previous_toplevel); +WRAPPER(GtkWidget, style_set, void, (void* widget, void* previous_style), 2, widget, previous_style); +WRAPPER(GtkWidget, direction_changed, void, (void* widget, int previous_direction), 2, widget, previous_direction); +WRAPPER(GtkWidget, grab_notify, void, (void* widget, int was_grabbed), 2, widget, was_grabbed); +WRAPPER(GtkWidget, child_notify, void, (void* widget, void* pspec), 2, widget, pspec); +WRAPPER(GtkWidget, mnemonic_activate, int, (void* widget, int group_cycling), 2, widget, group_cycling); +WRAPPER(GtkWidget, grab_focus, void, (void* widget), 1, widget); +WRAPPER(GtkWidget, focus, int, (void* widget, int direction), 2, widget, direction); +WRAPPER(GtkWidget, event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, button_press_event,int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, button_release_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, scroll_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, motion_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, delete_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, destroy_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, expose_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, key_press_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, key_release_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, enter_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, leave_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, configure_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, focus_in_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, focus_out_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, map_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, unmap_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, property_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, selection_clear_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, selection_request_event,int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, selection_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, proximity_in_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, proximity_out_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, visibility_notify_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, client_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, no_expose_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, window_state_event, int, (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, selection_get, void, (void* widget, void* selection_data, uint32_t info, uint32_t time_), 4, widget, selection_data, info, time_); +WRAPPER(GtkWidget, selection_received, void, (void* widget, void* selection_data, uint32_t time_), 3, widget, selection_data, time_); +WRAPPER(GtkWidget, drag_begin, void, (void* widget, void* context), 2, widget, context); +WRAPPER(GtkWidget, drag_end, void, (void* widget, void* context), 2, widget, context); +WRAPPER(GtkWidget, drag_data_get, void, (void* widget, void* context, void* selection_data, uint32_t info, uint32_t time_), 5, widget, context, selection_data, info, time_); +WRAPPER(GtkWidget, drag_data_delete, void, (void* widget, void* context), 2, widget, context); +WRAPPER(GtkWidget, drag_leave, void, (void* widget, void* context, uint32_t time_), 3, widget, context, time_); +WRAPPER(GtkWidget, drag_motion, int, (void* widget, void* context, int32_t x, int32_t y, uint32_t time_), 5, widget, context, x, y, time_); +WRAPPER(GtkWidget, drag_drop, int, (void* widget, void* context, int32_t x, int32_t y, uint32_t time_), 5, widget, context, x, y, time_); +WRAPPER(GtkWidget, drag_data_received, void, (void* widget, void* context, int32_t x, int32_t y, void* selection_data, uint32_t info, uint32_t time_), 7, widget, context, x, y, selection_data, info, time_); +WRAPPER(GtkWidget, popup_menu, int , (void* widget), 1, widget); +WRAPPER(GtkWidget, show_help, int , (void* widget, int help_type), 2, widget, help_type); +WRAPPER(GtkWidget, get_accessible, void*, (void* widget), 1, widget); +WRAPPER(GtkWidget, screen_changed, void , (void* widget, void* previous_screen), 2, widget, previous_screen); +WRAPPER(GtkWidget, can_activate_accel, int , (void* widget, uint32_t signal_id), 2, widget, signal_id); +WRAPPER(GtkWidget, grab_broken_event, int , (void* widget, void* event), 2, widget, event); +WRAPPER(GtkWidget, composited_changed, void , (void* widget), 1, widget); +WRAPPER(GtkWidget, query_tooltip, int , (void* widget, int32_t x, int32_t y, int keyboard_tooltip, void* tooltip), 5, widget, x, y, keyboard_tooltip, tooltip); + +#define SUPERGO() \ + GO(dispatch_child_properties_changed, vFpup); \ + GO(show, vFp); \ + GO(show_all, vFp); \ + GO(hide, vFp); \ + GO(hide_all, vFp); \ + GO(map, vFp); \ + GO(unmap, vFp); \ + GO(realize, vFp); \ + GO(unrealize, vFp); \ + GO(size_request, vFpp); \ + GO(size_allocate, vFpp); \ + GO(state_changed, vFpi); \ + GO(parent_set, vFpp); \ + GO(hierarchy_changed, vFpp); \ + GO(style_set, vFpp); \ + GO(direction_changed, vFpi); \ + GO(grab_notify, vFpi); \ + GO(child_notify, vFpp); \ + GO(mnemonic_activate, iFpi); \ + GO(grab_focus, vFp); \ + GO(focus, iFpi); \ + GO(event, iFpp); \ + GO(button_press_event, iFpp); \ + GO(button_release_event, iFpp); \ + GO(scroll_event, iFpp); \ + GO(motion_notify_event, iFpp); \ + GO(delete_event, iFpp); \ + GO(destroy_event, iFpp); \ + GO(expose_event, iFpp); \ + GO(key_press_event, iFpp); \ + GO(key_release_event, iFpp); \ + GO(enter_notify_event, iFpp); \ + GO(leave_notify_event, iFpp); \ + GO(configure_event, iFpp); \ + GO(focus_in_event, iFpp); \ + GO(focus_out_event, iFpp); \ + GO(map_event, iFpp); \ + GO(unmap_event, iFpp); \ + GO(property_notify_event, iFpp); \ + GO(selection_clear_event, iFpp); \ + GO(selection_request_event, iFpp); \ + GO(selection_notify_event, iFpp); \ + GO(proximity_in_event, iFpp); \ + GO(proximity_out_event, iFpp); \ + GO(visibility_notify_event, iFpp); \ + GO(client_event, iFpp); \ + GO(no_expose_event, iFpp); \ + GO(window_state_event, iFpp); \ + GO(selection_get, vFppuu); \ + GO(selection_received, vFppu); \ + GO(drag_begin, vFpp); \ + GO(drag_end, vFpp); \ + GO(drag_data_get, vFpppuu); \ + GO(drag_data_delete, vFpp); \ + GO(drag_leave, vFppu); \ + GO(drag_motion, iFppiiu); \ + GO(drag_drop, iFppiiu); \ + GO(drag_data_received, vFppiipuu); \ + GO(popup_menu, iFp); \ + GO(show_help, iFpi); \ + GO(get_accessible, pFp); \ + GO(screen_changed, vFpp); \ + GO(can_activate_accel, iFpu); \ + GO(grab_broken_event, iFpp); \ + GO(composited_changed, vFp); \ + GO(query_tooltip, iFpiiip); + +// wrap (so bridge all calls, just in case) +static void wrapGtkWidgetClass(my_GtkWidgetClass_t* class) +{ + wrapGtkObjectClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkWidget (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkWidgetClass(my_GtkWidgetClass_t* class) +{ + unwrapGtkObjectClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkWidget (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkWidgetClass(my_GtkWidgetClass_t* class) +{ + bridgeGtkObjectClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkWidget (W, class->A) + SUPERGO() + #undef GO +} + +#undef SUPERGO + +// ----- GtkContainerClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkContainer, add, void, (void* container, void* widget), 2, container, widget); +WRAPPER(GtkContainer, remove, void, (void* container, void* widget), 2, container, widget); +WRAPPER(GtkContainer, check_resize, void, (void* container), 1, container); +WRAPPER(GtkContainer, forall, void, (void* container, int include_internals, void* callback, void* callback_data), 4, container, include_internals, AddCheckBridge(my_bridge, vFpp, callback, 0, NULL), callback_data); +WRAPPER(GtkContainer, set_focus_child, void, (void* container, void* widget), 2, container, widget); +WRAPPER(GtkContainer, child_type, int, (void* container), 1, container); +WRAPPER(GtkContainer, composite_name, void*, (void* container, void* child), 2, container, child); +WRAPPER(GtkContainer, set_child_property, void, (void* container, void* child, uint32_t property_id, void* value, void* pspec), 5, container, child, property_id, value, pspec); +WRAPPER(GtkContainer, get_child_property, void, (void* container, void* child, uint32_t property_id, void* value, void* pspec), 5, container, child, property_id, value, pspec); + +#define SUPERGO() \ + GO(add, vFpp); \ + GO(remove, vFpp); \ + GO(check_resize, vFp); \ + GO(forall, vFpipp); \ + GO(set_focus_child, vFpp); \ + GO(child_type, iFp); \ + GO(composite_name, pFpp); \ + GO(set_child_property, vFppupp);\ + GO(get_child_property, vFppupp); + +// wrap (so bridge all calls, just in case) +static void wrapGtkContainerClass(my_GtkContainerClass_t* class) +{ + wrapGtkWidgetClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkContainer (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkContainerClass(my_GtkContainerClass_t* class) +{ + unwrapGtkWidgetClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkContainer (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkContainerClass(my_GtkContainerClass_t* class) +{ + bridgeGtkWidgetClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkContainer (W, class->A) + SUPERGO() + #undef GO +} + +#undef SUPERGO + +// ----- GtkActionClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkAction, activate, void, (void* action), 1, action); +WRAPPER(GtkAction, create_menu_item, void*, (void* action), 1, action); +WRAPPER(GtkAction, create_tool_item, void*, (void* action), 1, action); +WRAPPER(GtkAction, connect_proxy, void , (void* action, void* proxy), 2, action, proxy); +WRAPPER(GtkAction, disconnect_proxy, void , (void* action, void* proxy), 2, action, proxy); +WRAPPER(GtkAction, create_menu, void*, (void* action), 1, action); + +#define SUPERGO() \ + GO(activate, vFp); \ + GO(create_menu_item, pFp); \ + GO(create_tool_item, pFp); \ + GO(connect_proxy, vFpp); \ + GO(disconnect_proxy, vFpp); \ + GO(create_menu, pFp); \ + +// wrap (so bridge all calls, just in case) +static void wrapGtkActionClass(my_GtkActionClass_t* class) +{ + wrapGObjectClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkAction (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkActionClass(my_GtkActionClass_t* class) +{ + unwrapGObjectClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkAction (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkActionClass(my_GtkActionClass_t* class) +{ + bridgeGObjectClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkAction (W, class->A) + SUPERGO() + #undef GO +} +#undef SUPERGO + +// ----- GtkMiscClass ------ + +// wrap (so bridge all calls, just in case) +static void wrapGtkMiscClass(my_GtkMiscClass_t* class) +{ + wrapGtkWidgetClass(&class->parent_class); +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkMiscClass(my_GtkMiscClass_t* class) +{ + unwrapGtkWidgetClass(&class->parent_class); +} +// autobridge +static void bridgeGtkMiscClass(my_GtkMiscClass_t* class) +{ + bridgeGtkWidgetClass(&class->parent_class); +} + + +// ----- GtkLabelClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkMisc, move_cursor, void, (void* label, int step, int count, int extend_selection), 4, label, step, count, extend_selection); +WRAPPER(GtkMisc, copy_clipboard, void, (void* label), 1, label); +WRAPPER(GtkMisc, populate_popup, void, (void* label, void* menu), 2, label, menu); +WRAPPER(GtkMisc, activate_link, int, (void* label, void* uri), 2, label, uri); + +#define SUPERGO() \ + GO(move_cursor, vFpiii); \ + GO(copy_clipboard, vFp); \ + GO(populate_popup, vFpp); \ + GO(activate_link, iFpp); \ + +// wrap (so bridge all calls, just in case) +static void wrapGtkLabelClass(my_GtkLabelClass_t* class) +{ + wrapGtkMiscClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkMisc (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkLabelClass(my_GtkLabelClass_t* class) +{ + unwrapGtkMiscClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkMisc (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkLabelClass(my_GtkLabelClass_t* class) +{ + bridgeGtkMiscClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkMisc (W, class->A) + SUPERGO() + #undef GO +} +#undef SUPERGO + +// ----- GtkTreeViewClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkTreeView, set_scroll_adjustments, void, (void* tree_view, void* hadjustment, void* vadjustment), 3, tree_view, hadjustment, vadjustment); +WRAPPER(GtkTreeView, row_activated, void, (void* tree_view, void* path, void* column), 3, tree_view, path, column); +WRAPPER(GtkTreeView, test_expand_row, int, (void* tree_view, void* iter, void* path), 3, tree_view, iter, path); +WRAPPER(GtkTreeView, test_collapse_row, int, (void* tree_view, void* iter, void* path), 3, tree_view, iter, path); +WRAPPER(GtkTreeView, row_expanded, void, (void* tree_view, void* iter, void* path), 3, tree_view, iter, path); +WRAPPER(GtkTreeView, row_collapsed, void, (void* tree_view, void* iter, void* path), 3, tree_view, iter, path); +WRAPPER(GtkTreeView, columns_changed, void, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, cursor_changed, void, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, move_cursor, int, (void* tree_view, int step, int count), 3, tree_view, step, count); +WRAPPER(GtkTreeView, select_all, int, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, unselect_all, int, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, select_cursor_row, int, (void* tree_view, int start_editing), 2, tree_view, start_editing); +WRAPPER(GtkTreeView, toggle_cursor_row, int, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, expand_collapse_cursor_row, int, (void* tree_view, int logical, int expand, int open_all), 4, tree_view, logical, expand, open_all); +WRAPPER(GtkTreeView, select_cursor_parent, int, (void* tree_view), 1, tree_view); +WRAPPER(GtkTreeView, start_interactive_search, int, (void* tree_view), 1, tree_view); + +#define SUPERGO() \ + GO(set_scroll_adjustments, vFppp); \ + GO(row_activated, vFppp); \ + GO(test_expand_row, iFppp); \ + GO(test_collapse_row, iFppp); \ + GO(row_expanded, vFppp); \ + GO(row_collapsed, vFppp); \ + GO(columns_changed, vFp); \ + GO(cursor_changed, vFp); \ + GO(move_cursor, iFppp); \ + GO(select_all, iFp); \ + GO(unselect_all, iFp); \ + GO(select_cursor_row, iFpi); \ + GO(toggle_cursor_row, iFp); \ + GO(expand_collapse_cursor_row, iFpiii); \ + GO(select_cursor_parent, iFp); \ + GO(start_interactive_search, iFp); \ + +// wrap (so bridge all calls, just in case) +static void wrapGtkTreeViewClass(my_GtkTreeViewClass_t* class) +{ + wrapGtkContainerClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkTreeView (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkTreeViewClass(my_GtkTreeViewClass_t* class) +{ + unwrapGtkContainerClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkTreeView (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkTreeViewClass(my_GtkTreeViewClass_t* class) +{ + bridgeGtkContainerClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkTreeView (W, class->A) + SUPERGO() + #undef GO +} + +#undef SUPERGO + +// ----- GtkBinClass ------ + +// wrap (so bridge all calls, just in case) +static void wrapGtkBinClass(my_GtkBinClass_t* class) +{ + wrapGtkContainerClass(&class->parent_class); +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkBinClass(my_GtkBinClass_t* class) +{ + unwrapGtkContainerClass(&class->parent_class); +} +// autobridge +static void bridgeGtkBinClass(my_GtkBinClass_t* class) +{ + bridgeGtkContainerClass(&class->parent_class); +} + +// ----- GtkWindowClass ------ +// wrapper x64 -> natives of callbacks +WRAPPER(GtkWindow, set_focus, void, (void* window, void* focus), 2, window, focus); +WRAPPER(GtkWindow, frame_event, int, (void* window, void* event), 2, window, event); +WRAPPER(GtkWindow, activate_focus, void, (void* window), 1, window); +WRAPPER(GtkWindow, activate_default, void, (void* window), 1, window); +WRAPPER(GtkWindow, move_focus, void, (void* window, int direction), 2, window, direction); +WRAPPER(GtkWindow, keys_changed, void, (void* window), 1, window); + +#define SUPERGO() \ + GO(set_focus, vFpp); \ + GO(frame_event, iFpp); \ + GO(activate_focus, vFp); \ + GO(activate_default, vFp); \ + GO(move_focus, vFpi); \ + GO(keys_changed, vFp); \ + + +// wrap (so bridge all calls, just in case) +static void wrapGtkWindowClass(my_GtkWindowClass_t* class) +{ + wrapGtkBinClass(&class->parent_class); + #define GO(A, W) class->A = reverse_##A##_GtkWindow (W, class->A) + SUPERGO() + #undef GO +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkWindowClass(my_GtkWindowClass_t* class) +{ + unwrapGtkBinClass(&class->parent_class); + #define GO(A, W) class->A = find_##A##_GtkWindow (class->A) + SUPERGO() + #undef GO +} +// autobridge +static void bridgeGtkWindowClass(my_GtkWindowClass_t* class) +{ + bridgeGtkBinClass(&class->parent_class); + #define GO(A, W) autobridge_##A##_GtkWindow (W, class->A) + SUPERGO() + #undef GO +} + +// ----- GtkTableClass ------ + +// wrap (so bridge all calls, just in case) +static void wrapGtkTableClass(my_GtkTableClass_t* class) +{ + wrapGtkContainerClass(&class->parent_class); +} +// unwrap (and use callback if not a native call anymore) +static void unwrapGtkTableClass(my_GtkTableClass_t* class) +{ + unwrapGtkContainerClass(&class->parent_class); +} +// autobridge +static void bridgeGtkTableClass(my_GtkTableClass_t* class) +{ + bridgeGtkContainerClass(&class->parent_class); +} + +// ----- MetaFramesClass ------ + +// wrap (so bridge all calls, just in case) +static void wrapMetaFramesClass(my_MetaFramesClass_t* class) +{ + wrapGtkWindowClass(&class->parent_class); +} +// unwrap (and use callback if not a native call anymore) +static void unwrapMetaFramesClass(my_MetaFramesClass_t* class) +{ + unwrapGtkWindowClass(&class->parent_class); +} +// autobridge +static void bridgeMetaFramesClass(my_MetaFramesClass_t* class) +{ + bridgeGtkWindowClass(&class->parent_class); +} + +#undef SUPERGO + +// No more wrap/unwrap +#undef WRAPPER +#undef FIND +#undef REVERSE +#undef WRAPPED + +// g_type_class_peek_parent +static void wrapGTKClass(void* cl, int type) +{ + #define GTKCLASS(A) \ + if(type==my_##A) \ + wrap##A##Class((my_##A##Class_t*)cl); \ + else + + GTKCLASSES() + { + if(my_MetaFrames==-1 && !strcmp(g_type_name(type), "MetaFrames")) { + my_MetaFrames = type; + wrapMetaFramesClass((my_MetaFramesClass_t*)cl); + } else + printf_log(LOG_NONE, "Warning, Custom Class initializer with unknown class type %d (%s)\n", type, g_type_name(type)); + } + #undef GTKCLASS +} + +static void unwrapGTKClass(void* cl, int type) +{ + #define GTKCLASS(A) \ + if(type==my_##A) \ + unwrap##A##Class((my_##A##Class_t*)cl); \ + else + + GTKCLASSES() + {} // else no warning, one is enough... + #undef GTKCLASS +} + +static void bridgeGTKClass(void* cl, int type) +{ + #define GTKCLASS(A) \ + if(type==my_##A) \ + bridge##A##Class((my_##A##Class_t*)cl); \ + else + + GTKCLASSES() + { + printf_log(LOG_NONE, "Warning, AutoBridge GTK Class with unknown class type %d (%s)\n", type, g_type_name(type)); + } + #undef GTKCLASS +} + + +typedef union my_GClassAll_s { + #define GTKCLASS(A) my_##A##Class_t A; + GTKCLASSES() + #undef GTKCLASS +} my_GClassAll_t; + +#define GO(A) \ +static void* my_gclassall_ref_##A = NULL; \ +static my_GClassAll_t my_gclassall_##A; + +SUPER() +#undef GO + +void* unwrapCopyGTKClass(void* klass, int type) +{ + if(!klass) return klass; + #define GO(A) if(klass == my_gclassall_ref_##A) return &my_gclassall_##A; + SUPER() + #undef GO + // check if class is the exact type we know + int sz = 0; + #define GTKCLASS(A) if(type==my_##A) sz = sizeof(my_##A##Class_t); else + GTKCLASSES() + { + printf_log(LOG_NONE, "Warning, unwrapCopyGTKClass called with unknown class type %d (%s)\n", type, g_type_name(type)); + return klass; + } + #undef GTKCLASS + my_GClassAll_t *newklass = NULL; + #define GO(A) if(!newklass && !my_gclassall_ref_##A) {my_gclassall_ref_##A = klass; newklass = &my_gclassall_##A;} + SUPER() + #undef GO + if(!newklass) { + printf_log(LOG_NONE, "Warning: no more slot for unwrapCopyGTKClass\n"); + return klass; + } + memcpy(newklass, klass, sz); + unwrapGTKClass(newklass, type); + return newklass; +} + +// gtk_type_class + +#define GO(A) \ +static void* my_gclassallu_ref_##A = NULL; \ +static my_GClassAll_t my_gclassallu_##A; + +SUPER() +#undef GO +void* wrapCopyGTKClass(void* klass, int type) +{ + if(!klass) return klass; + #define GO(A) if(klass == my_gclassallu_ref_##A) return &my_gclassallu_##A; + SUPER() + #undef GO + // check if class is the exact type we know + int sz = 0; + #define GTKCLASS(A) if(type==my_##A) sz = sizeof(my_##A##Class_t); else + GTKCLASSES() + { + printf_log(LOG_NONE, "Warning, wrapCopyGTKClass called with unknown class type 0x%x (%s)\n", type, g_type_name(type)); + return klass; + } + #undef GTKCLASS + my_GClassAll_t *newklass = NULL; + #define GO(A) if(!newklass && !my_gclassallu_ref_##A) {my_gclassallu_ref_##A = klass; newklass = &my_gclassallu_##A;} + SUPER() + #undef GO + if(!newklass) { + printf_log(LOG_NONE, "Warning: no more slot for wrapCopyGTKClass\n"); + return klass; + } + memcpy(newklass, klass, sz); + wrapGTKClass(newklass, type); + return newklass; +} + +// ---- GTypeValueTable ---- + +// First the structure GTypeInfo statics, with paired x64 source pointer +#define GO(A) \ +static my_GTypeValueTable_t my_gtypevaluetable_##A = {0}; \ +static my_GTypeValueTable_t *ref_gtypevaluetable_##A = NULL; +SUPER() +#undef GO +// Then the static functions callback that may be used with the structure +#define GO(A) \ +static uintptr_t fct_funcs_value_init_##A = 0; \ +static void my_funcs_value_init_##A(void* value) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_value_init_" #A " wrapper\n"); \ + RunFunction(my_context, fct_funcs_value_init_##A, 1, value); \ +} \ +static uintptr_t fct_funcs_value_free_##A = 0; \ +static void my_funcs_value_free_##A(void* value) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_value_free_" #A " wrapper\n"); \ + RunFunction(my_context, fct_funcs_value_free_##A, 1, value); \ +} \ +static uintptr_t fct_funcs_value_copy_##A = 0; \ +static void my_funcs_value_copy_##A(void* source, void* dest) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_value_copy_" #A " wrapper\n"); \ + RunFunction(my_context, fct_funcs_value_copy_##A, 2, source, dest); \ +} \ +static uintptr_t fct_funcs_value_peek_pointer_##A = 0; \ +static void* my_funcs_value_peek_pointer_##A(void* value) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_value_peek_pointer_" #A " wrapper\n"); \ + return (void*)RunFunction(my_context, fct_funcs_value_peek_pointer_##A, 1, value); \ +} \ +static uintptr_t fct_funcs_collect_value_##A = 0; \ +static void* my_funcs_collect_value_##A(void* value, uint32_t n, void* collect, uint32_t flags) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_collect_value_" #A " wrapper\n"); \ + return (void*)RunFunction(my_context, fct_funcs_collect_value_##A, 4, value, n, collect, flags); \ +} \ +static uintptr_t fct_funcs_lcopy_value_##A = 0; \ +static void* my_funcs_lcopy_value_##A(void* value, uint32_t n, void* collect, uint32_t flags) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_lcopy_value_" #A " wrapper\n"); \ + return (void*)RunFunction(my_context, fct_funcs_lcopy_value_##A, 4, value, n, collect, flags); \ +} +SUPER() +#undef GO +// And now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +my_GTypeValueTable_t* findFreeGTypeValueTable(my_GTypeValueTable_t* fcts) +{ + if(!fcts) return fcts; + #define GO(A) if(ref_gtypevaluetable_##A == fcts) return &my_gtypevaluetable_##A; + SUPER() + #undef GO + #define GO(A) if(ref_gtypevaluetable_##A == 0) { \ + ref_gtypevaluetable_##A = fcts; \ + my_gtypevaluetable_##A.value_init = (fcts->value_init)?((GetNativeFnc((uintptr_t)fcts->value_init))?GetNativeFnc((uintptr_t)fcts->value_init):my_funcs_value_init_##A):NULL; \ + fct_funcs_value_init_##A = (uintptr_t)fcts->value_init; \ + my_gtypevaluetable_##A.value_free = (fcts->value_free)?((GetNativeFnc((uintptr_t)fcts->value_free))?GetNativeFnc((uintptr_t)fcts->value_free):my_funcs_value_free_##A):NULL; \ + fct_funcs_value_free_##A = (uintptr_t)fcts->value_free; \ + my_gtypevaluetable_##A.value_copy = (fcts->value_copy)?((GetNativeFnc((uintptr_t)fcts->value_copy))?GetNativeFnc((uintptr_t)fcts->value_copy):my_funcs_value_copy_##A):NULL; \ + fct_funcs_value_copy_##A = (uintptr_t)fcts->value_copy; \ + my_gtypevaluetable_##A.value_peek_pointer = (fcts->value_peek_pointer)?((GetNativeFnc((uintptr_t)fcts->value_peek_pointer))?GetNativeFnc((uintptr_t)fcts->value_peek_pointer):my_funcs_value_peek_pointer_##A):NULL; \ + fct_funcs_value_peek_pointer_##A = (uintptr_t)fcts->value_peek_pointer; \ + my_gtypevaluetable_##A.collect_format = fcts->collect_format; \ + my_gtypevaluetable_##A.collect_value = (fcts->collect_value)?((GetNativeFnc((uintptr_t)fcts->collect_value))?GetNativeFnc((uintptr_t)fcts->collect_value):my_funcs_collect_value_##A):NULL; \ + fct_funcs_collect_value_##A = (uintptr_t)fcts->collect_value; \ + my_gtypevaluetable_##A.lcopy_format = fcts->lcopy_format; \ + my_gtypevaluetable_##A.lcopy_value = (fcts->lcopy_value)?((GetNativeFnc((uintptr_t)fcts->lcopy_value))?GetNativeFnc((uintptr_t)fcts->lcopy_value):my_funcs_lcopy_value_##A):NULL; \ + fct_funcs_lcopy_value_##A = (uintptr_t)fcts->lcopy_value; \ + return &my_gtypevaluetable_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for GTypeValueTable callback\n"); + return NULL; +} + + +// ---- GTypeInfo ---- + +// First the structure my_GTypeInfo_t statics, with paired x64 source pointer +#define GO(A) \ +static my_GTypeInfo_t my_gtypeinfo_##A = {0}; \ +static my_GTypeInfo_t ref_gtypeinfo_##A = {0}; \ +static int used_gtypeinfo_##A = 0; +SUPER() +#undef GO +// Then the static functions callback that may be used with the structure +#define GO(A) \ +static int fct_parent_##A = 0 ; \ +static uintptr_t fct_funcs_base_init_##A = 0; \ +static int my_funcs_base_init_##A(void* g_class) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_base_init_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_funcs_base_init_##A, 1, g_class); \ +} \ +static uintptr_t fct_funcs_base_finalize_##A = 0; \ +static int my_funcs_base_finalize_##A(void* g_class) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_base_finalize_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_funcs_base_finalize_##A, 1, g_class); \ +} \ +static uintptr_t fct_funcs_class_init_##A = 0; \ +static int my_funcs_class_init_##A(void* g_class, void* data) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_class_init_" #A " wrapper\n"); \ + wrapGTKClass(g_class, fct_parent_##A); \ + int ret = (int)RunFunction(my_context, fct_funcs_class_init_##A, 2, g_class, data); \ + unwrapGTKClass(g_class, fct_parent_##A); \ + return ret; \ +} \ +static uintptr_t fct_funcs_class_finalize_##A = 0; \ +static int my_funcs_class_finalize_##A(void* g_class, void* data) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_class_finalize_" #A " wrapper\n"); \ + wrapGTKClass(g_class, fct_parent_##A); \ + int ret = (int)RunFunction(my_context, fct_funcs_class_finalize_##A, 2, g_class, data); \ + unwrapGTKClass(g_class, fct_parent_##A); \ + return ret; \ +} \ +static uintptr_t fct_funcs_instance_init_##A = 0; \ +static int my_funcs_instance_init_##A(void* instance, void* data) { \ + printf_log(LOG_DEBUG, "Calling fct_funcs_instance_init_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_funcs_instance_init_##A, 2, instance, data); \ +} + +SUPER() +#undef GO +// And now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +my_GTypeInfo_t* findFreeGTypeInfo(my_GTypeInfo_t* fcts, int parent) +{ + if(!fcts) return NULL; + #define GO(A) if(used_gtypeinfo_##A==0 && memcmp(&ref_gtypeinfo_##A, fcts, sizeof(my_GTypeInfo_t))==0) return &my_gtypeinfo_##A; + SUPER() + #undef GO + #define GO(A) if(used_gtypeinfo_##A == 0) { \ + memcpy(&ref_gtypeinfo_##A, fcts, sizeof(my_GTypeInfo_t)); \ + fct_parent_##A = parent; \ + my_gtypeinfo_##A.class_size = fcts->class_size; \ + my_gtypeinfo_##A.base_init = (fcts->base_init)?((GetNativeFnc((uintptr_t)fcts->base_init))?GetNativeFnc((uintptr_t)fcts->base_init):my_funcs_base_init_##A):NULL; \ + fct_funcs_base_init_##A = (uintptr_t)fcts->base_init; \ + my_gtypeinfo_##A.base_finalize = (fcts->base_finalize)?((GetNativeFnc((uintptr_t)fcts->base_finalize))?GetNativeFnc((uintptr_t)fcts->base_finalize):my_funcs_base_finalize_##A):NULL; \ + fct_funcs_base_finalize_##A = (uintptr_t)fcts->base_finalize; \ + my_gtypeinfo_##A.class_init = (fcts->class_init)?((GetNativeFnc((uintptr_t)fcts->class_init))?GetNativeFnc((uintptr_t)fcts->class_init):my_funcs_class_init_##A):NULL; \ + fct_funcs_class_init_##A = (uintptr_t)fcts->class_init; \ + my_gtypeinfo_##A.class_finalize = (fcts->class_finalize)?((GetNativeFnc((uintptr_t)fcts->class_finalize))?GetNativeFnc((uintptr_t)fcts->class_finalize):my_funcs_class_finalize_##A):NULL; \ + fct_funcs_class_finalize_##A = (uintptr_t)fcts->class_finalize; \ + my_gtypeinfo_##A.class_data = fcts->class_data; \ + my_gtypeinfo_##A.instance_size = fcts->instance_size; \ + my_gtypeinfo_##A.n_preallocs = fcts->n_preallocs; \ + my_gtypeinfo_##A.instance_init = (fcts->instance_init)?((GetNativeFnc((uintptr_t)fcts->instance_init))?GetNativeFnc((uintptr_t)fcts->instance_init):my_funcs_instance_init_##A):NULL; \ + fct_funcs_instance_init_##A = (uintptr_t)fcts->instance_init; \ + my_gtypeinfo_##A.value_table = findFreeGTypeValueTable(fcts->value_table); \ + return &my_gtypeinfo_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for GTypeInfo callback\n"); + return NULL; +} + +// ---- GtkTypeInfo ---- + +// First the structure my_GtkTypeInfo_t statics, with paired x64 source pointer +#define GO(A) \ +static my_GtkTypeInfo_t my_gtktypeinfo_##A = {0}; \ +static my_GtkTypeInfo_t ref_gtktypeinfo_##A = {0}; \ +static int used_gtktypeinfo_##A = 0; +SUPER() +#undef GO +// Then the static functions callback that may be used with the structure +#define GO(A) \ +static int fct_gtk_parent_##A = 0 ; \ +static uintptr_t fct_gtk_class_init_##A = 0; \ +static int my_gtk_class_init_##A(void* g_class) { \ + printf_log(LOG_DEBUG, "Calling fct_gtk_class_init_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_gtk_class_init_##A, 1, g_class); \ +} \ +static uintptr_t fct_gtk_object_init_##A = 0; \ +static int my_gtk_object_init_##A(void* object, void* data) { \ + printf_log(LOG_DEBUG, "Calling fct_gtk_object_init_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_gtk_object_init_##A, 2, object, data); \ +} \ +static uintptr_t fct_gtk_base_class_init_##A = 0; \ +static int my_gtk_base_class_init_##A(void* instance, void* data) { \ + printf_log(LOG_DEBUG, "Calling fct_gtk_base_class_init_" #A " wrapper\n"); \ + return (int)RunFunction(my_context, fct_gtk_base_class_init_##A, 2, instance, data); \ +} + +SUPER() +#undef GO +// And now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +my_GtkTypeInfo_t* findFreeGtkTypeInfo(my_GtkTypeInfo_t* fcts, int parent) +{ + if(!fcts) return NULL; + #define GO(A) if(used_gtktypeinfo_##A && memcmp(&ref_gtktypeinfo_##A, fcts, sizeof(my_GtkTypeInfo_t))==0) return &my_gtktypeinfo_##A; + SUPER() + #undef GO + #define GO(A) if(used_gtktypeinfo_##A == 0) { \ + memcpy(&ref_gtktypeinfo_##A, fcts, sizeof(my_GtkTypeInfo_t)); \ + fct_gtk_parent_##A = parent; \ + my_gtktypeinfo_##A.type_name = fcts->type_name; \ + my_gtktypeinfo_##A.object_size = fcts->object_size; \ + my_gtktypeinfo_##A.class_size = fcts->class_size; \ + my_gtktypeinfo_##A.class_init_func = (fcts->class_init_func)?((GetNativeFnc((uintptr_t)fcts->class_init_func))?GetNativeFnc((uintptr_t)fcts->class_init_func):my_gtk_class_init_##A):NULL; \ + fct_gtk_class_init_##A = (uintptr_t)fcts->class_init_func; \ + my_gtktypeinfo_##A.object_init_func = (fcts->object_init_func)?((GetNativeFnc((uintptr_t)fcts->object_init_func))?GetNativeFnc((uintptr_t)fcts->object_init_func):my_gtk_object_init_##A):NULL; \ + fct_gtk_object_init_##A = (uintptr_t)fcts->object_init_func; \ + my_gtktypeinfo_##A.reserved_1 = fcts->reserved_1; \ + my_gtktypeinfo_##A.reserved_2 = fcts->reserved_2; \ + my_gtktypeinfo_##A.base_class_init_func = (fcts->base_class_init_func)?((GetNativeFnc((uintptr_t)fcts->base_class_init_func))?GetNativeFnc((uintptr_t)fcts->base_class_init_func):my_gtk_base_class_init_##A):NULL; \ + fct_gtk_base_class_init_##A = (uintptr_t)fcts->base_class_init_func; \ + return &my_gtktypeinfo_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for GtkTypeInfo callback\n"); + return NULL; +} + +#undef SUPER + +void InitGTKClass(bridge_t *bridge) +{ + my_bridge = bridge; + my_signalmap = kh_init(signalmap); +} + +void FiniGTKClass() +{ + if(my_signalmap) { + /*khint_t k; + kh_foreach_key(my_signalmap, k, + my_signal_t* p = (my_signal_t*)(uintptr_t)k; + free(p); + );*/ // lets assume all signals data is freed by gtk already + kh_destroy(signalmap, my_signalmap); + my_signalmap = NULL; + } +} + +#define GTKCLASS(A) \ +void Set##A##ID(int id) \ +{ \ + my_##A = id; \ +} +GTKCLASSES() +#undef GTKCLASS + +void AutoBridgeGtk(void*(*ref)(int), void(*unref)(void*)) +{ + void* p; + #define GTKCLASS(A) \ + if(my_##A && my_##A!=-1) { \ + p = ref(my_##A); \ + bridgeGTKClass(p, my_##A); \ + unref(p); \ + } + GTKCLASSES() + #undef GTKCLASS +} + +void SetGTypeName(void* f) +{ + g_type_name = f; +} + +my_signal_t* new_mysignal(void* f, void* data, void* destroy) +{ + my_signal_t* sig = (my_signal_t*)calloc(1, sizeof(my_signal_t)); + sig->sign = SIGN; + sig->c_handler = (uintptr_t)f; + sig->destroy = (uintptr_t)destroy; + sig->data = data; + int ret; + kh_put(signalmap, my_signalmap, (uintptr_t)sig, &ret); + return sig; +} +void my_signal_delete(my_signal_t* sig) +{ + khint_t k = kh_get(signalmap, my_signalmap, (uintptr_t)sig); + if(k!=kh_end(my_signalmap)) { + kh_del(signalmap, my_signalmap, k); + } else { + printf_log(LOG_NONE, "Warning, my_signal_delete called with an unrefereced signal!\n"); + } + uintptr_t d = sig->destroy; + if(d) { + RunFunction(my_context, d, 1, sig->data); + } + printf_log(LOG_DEBUG, "gtk Data deleted, sig=%p, data=%p, destroy=%p\n", sig, sig->data, (void*)d); + free(sig); +} +int my_signal_is_valid(void* sig) +{ + khint_t k = kh_get(signalmap, my_signalmap, (uintptr_t)sig); + if(k!=kh_end(my_signalmap)) { + /*if(((my_signal_t*)c)->sign == SIGN) + return 1; + else + printf_log(LOG_NONE, "Warning, incohrent my_signal_t structure referenced\n");*/ + return 1; + } + return 0; +} + +int my_signal_cb(void* a, void* b, void* c, void* d) +{ + // signal can have many signature... so first job is to find the data! + // hopefully, no callback have more than 4 arguments... + my_signal_t* sig = NULL; + int i = 0; + if(my_signal_is_valid(a)) { + sig = (my_signal_t*)a; + i = 1; + } + if(!sig && my_signal_is_valid(b)) { + sig = (my_signal_t*)b; + i = 2; + } + if(!sig && my_signal_is_valid(c)) { + sig = (my_signal_t*)c; + i = 3; + } + if(!sig && my_signal_is_valid(d)) { + sig = (my_signal_t*)d; + i = 4; + } + printf_log(LOG_DEBUG, "gtk Signal called, sig=%p, NArgs=%d\n", sig, i); + switch(i) { + case 1: return (int)RunFunction(my_context, sig->c_handler, 1, sig->data); + case 2: return (int)RunFunction(my_context, sig->c_handler, 2, a, sig->data); + case 3: return (int)RunFunction(my_context, sig->c_handler, 3, a, b, sig->data); + case 4: return (int)RunFunction(my_context, sig->c_handler, 4, a, b, c, sig->data); + } + printf_log(LOG_NONE, "Warning, Gtk signal callback but no data found!"); + return 0; +} diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index 22dddfd4..62102793 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -6,6 +6,7 @@ #() vFf #() vFd #() vFl +#() vFL #() vFp #() vFS #() cFv @@ -19,6 +20,8 @@ #() iFw #() iFi #() iFI +#() iFC +#() iFW #() iFu #() iFU #() iFf @@ -29,10 +32,13 @@ #() iFp #() iFO #() iFS +#() IFv +#() IFi #() IFI #() IFf #() IFd #() IFp +#() CFC #() CFp #() WFi #() WFW @@ -62,13 +68,18 @@ #() lFl #() lFp #() LFv +#() LFu #() LFL #() LFp #() pFE #() pFv +#() pFw #() pFi +#() pFI +#() pFC #() pFW #() pFu +#() pFU #() pFd #() pFl #() pFL @@ -101,8 +112,13 @@ #() vFlp #() vFLL #() vFLp +#() vFpc #() vFpi +#() vFpI +#() vFpC +#() vFpW #() vFpu +#() vFpU #() vFpf #() vFpd #() vFpl @@ -146,6 +162,7 @@ #() IFpi #() IFpu #() IFpd +#() CFip #() CFui #() CFpi #() CFpu @@ -167,6 +184,7 @@ #() UFuu #() UFUp #() UFpp +#() fFEp #() fFif #() fFfi #() fFff @@ -180,6 +198,7 @@ #() dFdp #() dFll #() dFpi +#() dFpd #() dFpp #() DFDi #() DFDD @@ -196,20 +215,28 @@ #() LFpi #() LFpL #() LFpp +#() pFEi #() pFEp #() pFii #() pFiu #() pFip +#() pFiV #() pFui +#() pFuC #() pFuu #() pFup +#() pFuV +#() pFUi #() pFdd #() pFlp #() pFLL +#() pFLp #() pFpi #() pFpC #() pFpu #() pFpU +#() pFpd +#() pFpl #() pFpL #() pFpp #() pFpV @@ -251,12 +278,15 @@ #() vFull #() vFulp #() vFupu +#() vFupp #() vFfff #() vFfpp #() vFddd #() vFdpp +#() vFLpL #() vFLpp #() vFpii +#() vFpiC #() vFpiu #() vFpif #() vFpid @@ -265,6 +295,7 @@ #() vFpuI #() vFpuu #() vFpup +#() vFpff #() vFpdd #() vFpll #() vFpLi @@ -276,6 +307,7 @@ #() vFppl #() vFppL #() vFppp +#() vFppV #() iFEiw #() iFEip #() iFEWW @@ -305,6 +337,7 @@ #() iFipL #() iFipp #() iFipO +#() iFCiW #() iFuwp #() iFuui #() iFuuu @@ -324,6 +357,7 @@ #() iFpiu #() iFpiL #() iFpip +#() iFpIi #() iFpui #() iFpuu #() iFpuU @@ -354,6 +388,7 @@ #() IFiIi #() IFpIi #() IFppi +#() IFppu #() IFSIi #() uFEpW #() uFEpu @@ -376,6 +411,7 @@ #() uFppu #() uFppp #() UFppi +#() UFppu #() fFull #() fFfff #() fFffp @@ -383,6 +419,7 @@ #() fFppp #() dFddd #() dFddp +#() dFpdd #() dFppi #() dFppp #() DFppp @@ -394,6 +431,7 @@ #() lFlpi #() lFpli #() lFpLu +#() lFpLp #() lFppi #() lFppL #() lFppp @@ -410,16 +448,26 @@ #() LFppL #() LFSpL #() pFEip +#() pFEup #() pFEpi +#() pFEpu #() pFEpp +#() pFEpV +#() pFEpA #() pFiii +#() pFiiu #() pFiip +#() pFiIp +#() pFiup #() pFipi #() pFipL #() pFipp #() pFIpi +#() pFCiW #() pFWWW #() pFuii +#() pFuui +#() pFuuu #() pFupi #() pFupL #() pFUpi @@ -428,6 +476,7 @@ #() pFDip #() pFpii #() pFpiu +#() pFpid #() pFpil #() pFpiL #() pFpip @@ -438,11 +487,16 @@ #() pFpuL #() pFpup #() pFpUp +#() pFpdu +#() pFplC +#() pFplu +#() pFpll #() pFplp #() pFpLu #() pFpLL #() pFpLp #() pFppi +#() pFppC #() pFppu #() pFppf #() pFppl @@ -450,6 +504,7 @@ #() pFppp #() pFpOM #() pFSpl +#() vFEiip #() vFEipp #() vFEipV #() vFEipA @@ -457,6 +512,8 @@ #() vFEpip #() vFEpup #() vFEppp +#() vFEppV +#() vFEppA #() vFiiii #() vFiiip #() vFiIII @@ -517,28 +574,46 @@ #() vFffff #() vFdddd #() vFpiii +#() vFpiiu #() vFpiip +#() vFpiuu #() vFpiuL #() vFpiup +#() vFpifi #() vFpipi #() vFpipp +#() vFpCiW +#() vFpuip +#() vFpuui #() vFpuuu +#() vFpuup #() vFpudd #() vFpupp #() vFpdii +#() vFpddi #() vFpddd #() vFpLLL #() vFppii +#() vFppiu #() vFppid +#() vFppiL #() vFppip #() vFppui #() vFppuu #() vFppup +#() vFppfi +#() vFppdu #() vFppdd +#() vFppdp +#() vFpplp #() vFpppi +#() vFpppI #() vFpppu +#() vFpppU +#() vFpppd #() vFpppL #() vFpppp +#() vFpppV #() cFpiii #() iFEiip #() iFEiiN @@ -580,6 +655,7 @@ #() iFippL #() iFippp #() iFipON +#() iFuipu #() iFuipp #() iFuuff #() iFuupi @@ -602,6 +678,7 @@ #() iFpipu #() iFpipp #() iFpipV +#() iFpIip #() iFpCCC #() iFpWWu #() iFpuwp @@ -612,6 +689,7 @@ #() iFpuup #() iFpuLL #() iFpuLp +#() iFpupi #() iFpupu #() iFpupL #() iFpupp @@ -648,8 +726,12 @@ #() IFEpIi #() IFpIip #() IFppip +#() IFpppp #() IFSIii +#() uFEipp +#() uFEupp #() uFEpup +#() uFEppp #() uFifff #() uFuuuu #() uFpipu @@ -658,10 +740,13 @@ #() uFpuip #() uFpuuu #() uFppiu +#() uFppLp #() uFpppi #() uFpppp #() UFpipp #() UFppip +#() UFpppp +#() dFpppp #() lFEpip #() lFEppL #() lFEppp @@ -682,6 +767,7 @@ #() lFppip #() lFpppL #() LFippL +#() LFippp #() LFpuuu #() LFpLLp #() LFpLpp @@ -689,21 +775,29 @@ #() LFppip #() LFppLL #() LFppLp +#() LFpppi #() LFpppp #() pFEipp +#() pFEipV +#() pFEipA #() pFEupp #() pFEpii #() pFEpip #() pFEppi #() pFEppp +#() pFEppV #() pFiiii #() pFiiiu +#() pFiiuu #() pFiiup +#() pFipii +#() pFipip #() pFippi #() pFippu #() pFuiii #() pFulli #() pFullu +#() pFffff #() pFdipp #() pFdddd #() pFDipp @@ -713,35 +807,49 @@ #() pFpiuu #() pFpiLL #() pFpipi +#() pFpipd #() pFpipp +#() pFpipV #() pFpCWp #() pFpCuW #() pFpCuu #() pFpuii +#() pFpuip #() pFpuWp #() pFpuuC #() pFpuuu #() pFpuup #() pFpupi +#() pFpupu +#() pFplpl #() pFplpp #() pFpLip #() pFpLpL #() pFppii +#() pFppiu #() pFppiL #() pFppip #() pFppuW #() pFppuu #() pFppuL #() pFppup +#() pFppdd #() pFppLL +#() pFppLp #() pFpppi #() pFpppu #() pFpppL #() pFpppp #() pFSppi #() vFEiipV +#() vFEippp #() vFEpuup +#() vFEpuuV +#() vFEpupp +#() vFEpupA #() vFEpLLp +#() vFEppip +#() vFEppup #() vFEpppp #() vFiiiii #() vFiiiiu @@ -811,25 +919,42 @@ #() vFfffff #() vFddddp #() vFpiiii +#() vFpiiiu +#() vFpiiff #() vFpiipp #() vFpipii +#() vFpipiu +#() vFpuiip #() vFpuipp +#() vFpuipV +#() vFpuuuu #() vFpuddd +#() vFpffff #() vFpddii #() vFpdddd +#() vFpddpp #() vFpliil #() vFppiii +#() vFppiiu #() vFppiip #() vFppiup +#() vFppiff +#() vFppipi #() vFppipp #() vFppWui #() vFppuui +#() vFppupi +#() vFppupp #() vFpppii #() vFpppip +#() vFpppuu #() vFppppi #() vFppppu +#() vFppppL #() vFppppp +#() iFEiipp #() iFEiipV +#() iFEippi #() iFEippp #() iFEpiii #() iFEpipi @@ -874,6 +999,8 @@ #() iFpiuwp #() iFpipii #() iFpipiL +#() iFpipip +#() iFpippi #() iFpippW #() iFpippp #() iFpCCCC @@ -882,9 +1009,11 @@ #() iFpuuup #() iFpuuLL #() iFpuupp +#() iFpuppp #() iFplluu #() iFpLiLi #() iFpLlpp +#() iFppiiu #() iFppiip #() iFppiup #() iFppiLi @@ -895,20 +1024,27 @@ #() iFppupi #() iFppupp #() iFppllp +#() iFpplpp +#() iFppLip #() iFppLpi #() iFppLpL #() iFppLpp #() iFpppii #() iFpppiL #() iFpppip +#() iFpppui #() iFpppLi #() iFpppLp #() iFppppi #() iFppppL #() iFppppp #() IFppIII +#() uFEippp +#() uFEpipp #() uFEppuu +#() uFEpppp #() uFiuuuu +#() uFipipp #() uFuiiiu #() uFpCCCC #() uFpuuuu @@ -916,12 +1052,15 @@ #() uFppipp #() uFppupp #() uFpplip +#() uFppLpp #() uFppppu #() uFppppp #() UFuiiii #() lFipili #() lFipLli #() lFipLLi +#() LFEpppp +#() LFpuppi #() LFpLLLp #() LFpLppL #() LFpLppp @@ -938,13 +1077,17 @@ #() pFEpppi #() pFEpppu #() pFEpppp +#() pFiiiii #() pFipipL +#() pFipppu #() pFuiiiu #() pFuiipp #() pFpiiii +#() pFpiiip #() pFpiiuu #() pFpiipi #() pFpiipp +#() pFpiCCC #() pFpiuuu #() pFpippi #() pFpippp @@ -957,22 +1100,31 @@ #() pFpuuWW #() pFpuuup #() pFpdddd +#() pFplppp #() pFppiii #() pFppiip +#() pFppiup #() pFppipi #() pFppipp #() pFppuuu #() pFppuup +#() pFppddi #() pFppLLp +#() pFpppii #() pFpppip +#() pFpppui #() pFpppuu #() pFpppup #() pFpppLi #() pFppppi #() pFppppp #() vFEiiipp +#() vFEpiLpp +#() vFEpippp #() vFEpuipp #() vFEpLLpp +#() vFEppipV +#() vFEppupp #() vFEppppp #() vFiiiiii #() vFiiiuil @@ -1030,32 +1182,46 @@ #() vFffffff #() vFdddddd #() vFpiiiii +#() vFpiiipp #() vFpiiuuu #() vFpiippp #() vFpipipV #() vFpipppi +#() vFpuiiiu +#() vFpuiipp #() vFpudddd #() vFpdddii #() vFpddddd #() vFppiiii #() vFppiiip +#() vFppiiui #() vFppiipi +#() vFppiipp #() vFppilpp #() vFppippi #() vFppippp +#() vFppuuuu #() vFppupii +#() vFppuppp +#() vFppdidd #() vFpplppi #() vFpplppp #() vFppLppi #() vFppLppp #() vFpppiii #() vFpppiip +#() vFpppiff #() vFpppipu +#() vFpppuii #() vFppppii #() vFpppppi +#() vFpppppu +#() vFpppppL #() vFpppppp #() cFppLppi #() iFEiippi +#() iFEiippp +#() iFEipppi #() iFElpppp #() iFEpiipp #() iFEpiipV @@ -1078,9 +1244,11 @@ #() iFLppipp #() iFpiiiii #() iFpiiipp +#() iFpiippu #() iFpiippp #() iFpiuuup #() iFpiuupp +#() iFpipipi #() iFpippip #() iFpipppL #() iFpipppp @@ -1088,16 +1256,24 @@ #() iFpuiCpp #() iFpuippp #() iFpupuui +#() iFppiiip #() iFppiiuu #() iFppiipi +#() iFppiipp #() iFppipii #() iFppipiL +#() iFppipip +#() iFppIipp #() iFppIppp #() iFppuiii #() iFppuiiL +#() iFppuipp #() iFppuIII #() iFppuupp #() iFppupip +#() iFppuppp +#() iFppUipp +#() iFppdidd #() iFpplppi #() iFppLupp #() iFppLpLp @@ -1113,8 +1289,11 @@ #() iFpppppi #() iFpppppL #() iFpppppp +#() uFEiippp +#() uFEiuppp #() uFpippup #() uFpuippp +#() uFppippp #() uFpppppi #() uFpppppp #() UFpippup @@ -1123,7 +1302,9 @@ #() lFipLipu #() lFipLipp #() lFipLpLL +#() LFEupppp #() LFpipipi +#() LFpLippp #() LFSpLiip #() pFEpippp #() pFEpuipp @@ -1146,13 +1327,21 @@ #() pFpCuuup #() pFpuuwwu #() pFpuuuuu +#() pFplpppp #() pFppiiii +#() pFppiipp #() pFppiCCC #() pFppippi #() pFppippp +#() pFpppiii +#() pFpppiui +#() pFppppii +#() pFpppppi #() pFpppppu #() pFpppppp #() pFSpiiii +#() vFEpipppp +#() vFEpuipuV #() vFEpppppp #() vFiiiiiip #() vFiiiiuup @@ -1199,10 +1388,17 @@ #() vFlipuiip #() vFpiiiipp #() vFpiiliip +#() vFpiipCpp #() vFpipipii +#() vFpipppii #() vFpddiidd #() vFpdddddd +#() vFppiiiii +#() vFppiiiip #() vFppiiipi +#() vFppiipii +#() vFppiipuu +#() vFppiippp #() vFppilppi #() vFppipiip #() vFppipipp @@ -1212,9 +1408,17 @@ #() vFpppiiii #() vFpppiipi #() vFpppiipp +#() vFpppippi #() vFpppuuuu +#() vFppppiii +#() vFppppiip #() vFppppipi +#() vFpppppip +#() vFppppppi +#() vFppppppp +#() iFEpupppp #() iFEpLiLpV +#() iFEppuppp #() iFEppLpIi #() iFEpppiiu #() iFEpppppL @@ -1246,10 +1450,12 @@ #() iFppiuppi #() iFppipiip #() iFppipipi +#() iFppipipp #() iFppippip #() iFppipppi #() iFppipppp #() iFppuipiL +#() iFppLiipp #() iFpppiiii #() iFpppiiuu #() iFpppiiup @@ -1261,12 +1467,18 @@ #() iFppppiii #() iFppppdpi #() iFpppppip +#() iFpppppup +#() iFppppppi #() iFppppppp +#() uFEiipppp +#() uFEpiippp #() uFuippppp #() uFppiuppp +#() LFEpppppu #() pFEpLiiii #() pFEpLiiiI #() pFEpLiiil +#() pFEppuipp #() pFEppppip #() pFEpppppi #() pFifffppp @@ -1278,12 +1490,36 @@ #() pFpCpWWup #() pFpuuuwwu #() pFpuupwwC +#() pFplppppp +#() pFppiiipp #() pFppiiCCC +#() pFppiippp +#() pFppipipp #() pFppuuppp +#() pFppLiiip +#() pFppLipip +#() pFpppccci +#() pFpppiiii +#() pFpppiipp +#() pFpppIIIi +#() pFpppCCCi +#() pFpppuuui #() pFpppuupp +#() pFpppUUUi +#() pFpppfffi +#() pFpppdddi +#() pFpppllli +#() pFpppLLLi #() pFppppuuu #() pFpppppuu +#() pFppppppi #() pFppppppp +#() vFEiippppV +#() vFEiupippp +#() vFEippippp +#() vFEppipppp +#() vFEpppuipV +#() vFEpppppuu #() vFiiiiuuip #() vFilipufip #() vFuiiiiiii @@ -1307,14 +1543,20 @@ #() vFulllplip #() vFffffffff #() vFlipuiuip +#() vFpiiiiiii +#() vFpiiiipii #() vFpippiiuu #() vFpippiipi +#() vFppiiiiii #() vFppiiipii #() vFppipipii +#() vFppipppui #() vFppippppi +#() vFppippppp #() vFpplppppi #() vFpplppppp #() vFppppiipi +#() iFEipupupi #() iFEpippppp #() iFEpuuLppp #() iFEppppipp @@ -1325,10 +1567,12 @@ #() iFullfpppp #() iFpWCuWCuu #() iFpWWipppp +#() iFpuiipppp #() iFpuippLpp #() iFpuuiiiii #() iFpupppWWu #() iFpupppppp +#() iFppiiiiiu #() iFppIIIppp #() iFpppiiipi #() iFpppiippp @@ -1337,12 +1581,24 @@ #() iFppppiipi #() iFppppppii #() iFpppppppp +#() uFEipipppp +#() uFEpiupppp +#() uFEppipppp +#() uFEppppppp #() uFuipppppp #() uFppuppppp +#() LFEpiupppp +#() pFEppLiiip +#() pFEpppuipV +#() pFEpppppiV +#() pFEppppppi #() pFEppppppp +#() pFiipppppp #() pFuiiiuuuu #() pFuupupipp +#() pFpiiiiiuu #() pFpipiiiip +#() pFpipppppp #() pFpCCuuwwC #() pFpCuwwWWu #() pFpCuuuCup @@ -1350,8 +1606,12 @@ #() pFpuuWWCuu #() pFpuuuupup #() pFpdwwWWui +#() pFplpppppp +#() pFppiiiiii #() pFpppuuLLu #() pFpppppupp +#() vFEppiipppp +#() vFEpppiippp #() vFiiiiiiiii #() vFiiiiillli #() vFuiiiiiiii @@ -1373,12 +1633,19 @@ #() vFlipuiuiip #() vFpipiuiipp #() vFpipppiipi +#() vFppiiiiiii +#() vFppiiiiipi #() vFppiiipiii +#() vFppiipiiii +#() vFppipppiii +#() vFppipppiip #() vFppuuiiiii #() vFpplpppppi +#() vFpppiiiiii #() vFppppipiip #() vFpppppippp #() iFEpiiiiipi +#() iFEpppipppp #() iFEppplPPPP #() iFEppPPPPPP #() iFiiiiiiiip @@ -1390,14 +1657,19 @@ #() iFpuuuuuuuu #() iFppiiiiiii #() iFppiuiippL +#() iFppLpiippp #() iFpppiiipip #() iFpppiiuuii #() iFpppiipiiu #() iFppppppppu #() iFppppppppp +#() uFEipippppp #() uFppppppppp +#() LFEppppppii #() pFEppiiuuLi #() pFEppuippuu +#() pFEpppppiiV +#() pFEpppppppi #() pFpiiiiuuuu #() pFpCuWCCuuu #() pFpuuwwWWww @@ -1405,7 +1677,12 @@ #() pFppiiiiiip #() pFppiiuuuLL #() pFppipppppp +#() pFpppiiiiii +#() pFpppiipppp #() pFpppppiipp +#() vFEiippppppp +#() vFEpippppppp +#() vFEpppiipppp #() vFiiiiiiiiiu #() vFuiiiiiiiii #() vFuiiiiiiill @@ -1423,6 +1700,12 @@ #() vFuffiiffiip #() vFuddiiddiip #() vFffffffffff +#() vFppiiiiiiii +#() vFppiiiiipip +#() vFppiipppiip +#() vFppiippppii +#() vFppipppiiii +#() vFppuuuuiiuu #() vFppdddddddd #() vFpppppppppp #() iFEpupppLppL @@ -1434,8 +1717,12 @@ #() iFppuuiiiiii #() iFppuuiiuupi #() iFpppiiipipi +#() iFpppLLipppp #() iFppppiiuuii #() uFpppppppppp +#() pFEiippppppp +#() pFEpiiiiiipp +#() pFEpippppppp #() pFpCuWCCuuCW #() pFpuwwWWuCuu #() pFpuuuwwwwWW @@ -1457,12 +1744,27 @@ #() vFuffffffffff #() vFpipipiipiii #() vFpipppiiiipi +#() vFppiiiiiiiii +#() vFppiiiiipiii +#() vFppiiiiddddi +#() vFppiipppiiii +#() vFppipppiiiii +#() vFppipppuiiii +#() vFppppppppppp +#() iFEpppipppppp #() iFEppppiiiiuu #() iFiiiiiiiiiip #() iFppppiiuuiiL +#() uFEpiiupppiuV +#() uFEpiippppiup +#() uFEpiippppiuA +#() uFEppppppippp #() uFppppppppppp +#() pFEpipppppppi #() pFEppiiLpppip #() pFEppuiipuuii +#() pFpppppppiipp +#() pFppppppppppp #() vFuiiiillliilp #() vFuuiiiiiiiiui #() vFuuiiiiiiiuip @@ -1471,7 +1773,12 @@ #() vFffffffffffff #() vFpipppiiiipii #() vFpippppiiiipi +#() vFppiiiiddddii #() vFppiiuuuiupup +#() vFppiipppiiiii +#() vFpppiiiiiiiii +#() vFpppppppppppp +#() iFEpppippppppp #() iFEppppiiiiuui #() iFpipllipppppp #() iFpipppppppppp @@ -1483,9 +1790,14 @@ #() pFpuuuWWWWWWWW #() pFppiiuuuiupLp #() pFpppppppppppp +#() vFEpppppppiippp #() vFuiiiiiiiiiuup #() vFuuuuuuuuuuuuu #() vFuffffffffffff +#() vFpippppppppppp +#() vFppiiiiiiiiiii +#() vFppiipppiiiiii +#() vFppppppppppppp #() iFddddpppddpppp #() iFpippuuuiipppp #() iFpupiiiipppppp @@ -1495,20 +1807,35 @@ #() pFppppppppppppp #() vFuffiiffiiffiip #() vFuddiiddiiddiip +#() vFppiipppiiiiiii +#() iFpipppppppppppp #() vFuuiiiiuuiiiiiii #() vFfffffffffffffff +#() vFpppippppppppppp +#() vFppppppppppppppp +#() pFpuiippppppppppp +#() pFppipppppppppppp #() pFppppppppppppppp +#() vFpppppppppppppppp #() iFpppppppppppppppp #() pFpuuWWWWWWwwCCCuu +#() pFppipipipipipipip #() pFpppppppppppppppp +#() vFppiiiiddddiiiiiuu +#() pFppippipipipipipip #() vFppuiiiiipuiiiiiiii +#() vFpppipppppppppppppp +#() pFippppppppppppppppp +#() vFpiiiiiiiiiiiiiiiiii #() pFiiiippppppppppppppp #() pFpippppppppppppppppp #() pFipppppppppppppppppppppp #defined(HAVE_LD80BITS) DFD +#defined(HAVE_LD80BITS) vFppippDDC #!defined(HAVE_LD80BITS) KFK #!defined(HAVE_LD80BITS) KFKK #!defined(HAVE_LD80BITS) KFKp +#!defined(HAVE_LD80BITS) vFppippKKC #defined(NOALIGN) iFipiip #!defined(NOALIGN) iFEppu #!defined(NOALIGN) iFEiiip @@ -1599,6 +1926,18 @@ wrappeddbus: - iFpppppp: - dbus_connection_set_timeout_functions - dbus_connection_set_watch_functions +wrappeddbusglib1: +- vFppp: + - dbus_g_type_collection_value_iterate + - dbus_g_type_map_value_iterate +- vFpppp: + - dbus_g_proxy_disconnect_signal +- vFppppp: + - dbus_g_proxy_connect_signal +- pFpppppiV: + - dbus_g_proxy_begin_call +- pFpppppiiV: + - dbus_g_proxy_begin_call_with_timeout wrappedexpat: - vFpp: - XML_SetCharacterDataHandler @@ -1615,14 +1954,350 @@ wrappedfreetype: - FT_Open_Face - iFpuuLppp: - FTC_Manager_New +wrappedgconf2: +wrappedgdkpixbuf2: +- pFpiiiiiipp: + - gdk_pixbuf_new_from_data +wrappedgdkx112: +- vFpp: + - gdk_init +- iFpp: + - gdk_init_check +- vFppp: + - gdk_event_handler_set + - gdk_window_add_filter + - gdk_window_remove_filter +- iFiipp: + - gdk_input_add +- iFiippp: + - gdk_input_add_full +wrappedgio2: +- vFppp: + - g_simple_async_result_set_op_res_gpointer +- vFippp: + - g_bus_get +- vFppip: + - g_simple_async_result_run_in_thread +- vFpppp: + - g_dbus_connection_close + - g_dbus_connection_flush + - g_simple_async_report_gerror_in_idle + - g_simple_async_report_take_gerror_in_idle +- uFpppp: + - g_dbus_connection_add_filter +- LFpppp: + - g_cancellable_connect +- pFpppp: + - g_simple_async_result_new + - g_simple_async_result_new_from_error + - g_simple_async_result_new_take_error +- vFpippp: + - g_async_initable_init_async +- vFpipppp: + - g_dbus_connection_new_for_address +- vFiippppV: + - g_async_initable_new_async +- vFiupippp: + - g_async_initable_newv_async +- vFippippp: + - g_async_initable_new_valist_async +- vFppipppp: + - g_dbus_connection_new +- vFpppuipV: + - g_simple_async_report_error_in_idle +- uFipipppp: + - g_bus_watch_name +- uFppipppp: + - g_bus_own_name_on_connection + - g_bus_watch_name_on_connection +- uFppppppp: + - g_dbus_connection_register_object +- pFpppuipV: + - g_simple_async_result_new_error +- vFppiipppp: + - g_dbus_connection_send_message_with_reply +- vFpppiippp: + - g_dbus_proxy_call +- uFipippppp: + - g_bus_own_name +- vFiippppppp: + - g_dbus_proxy_new_for_bus +- vFpippppppp: + - g_dbus_proxy_new +- vFpppiipppp: + - g_dbus_proxy_call_with_unix_fd_list +- pFiippppppp: + - g_dbus_object_manager_client_new_for_bus_sync +- uFppppppippp: + - g_dbus_connection_signal_subscribe +- vFpppppppiippp: + - g_dbus_connection_call +wrappedglib2: +- vFp: + - g_atexit +- pFp: + - g_completion_new + - g_main_context_get_poll_func + - g_private_new + - g_ptr_array_new_with_free_func + - g_set_print_handler + - g_set_printerr_handler +- vFpp: + - g_array_set_clear_func + - g_array_sort + - g_completion_set_compare + - g_list_free_full + - g_main_context_set_poll_func + - g_ptr_array_set_free_func + - g_ptr_array_sort + - g_source_set_funcs + - g_thread_foreach +- vFpV: + - g_print + - g_printerr +- iFpp: + - g_source_remove_by_funcs_user_data + - g_vprintf +- iFpV: + - g_printf +- uFpp: + - g_idle_add + - g_printf_string_upper_bound +- pFup: + - g_ptr_array_new_full +- pFpu: + - g_source_new +- pFpp: + - g_hash_table_new + - g_list_sort + - g_log_set_default_handler + - g_slist_sort + - g_strdup_vprintf +- pFpV: + - g_build_filename + - g_markup_printf_escaped + - g_strdup_printf + - g_variant_new +- pFpA: + - g_markup_vprintf_escaped + - g_variant_new_parsed_va +- vFppp: + - g_array_sort_with_data + - g_hash_table_foreach + - g_ptr_array_foreach + - g_ptr_array_sort_with_data + - g_static_private_set +- vFppV: + - g_variant_get +- iFppp: + - g_vasprintf + - g_vfprintf + - g_vsprintf +- iFppV: + - g_fprintf + - g_sprintf +- uFipp: + - g_child_watch_add +- uFupp: + - g_timeout_add + - g_timeout_add_seconds +- uFppp: + - g_hash_table_foreach_remove + - g_hash_table_foreach_steal +- pFppp: + - g_hash_table_find + - g_list_find_custom + - g_list_sort_with_data + - g_queue_find_custom + - g_slist_find_custom + - g_slist_foreach + - g_slist_insert_sorted + - g_slist_sort_with_data + - g_variant_new_va +- pFppV: + - g_build_path +- vFpupp: + - g_datalist_id_set_data_full +- vFpppp: + - g_source_set_callback +- iFpLpp: + - g_vsnprintf +- iFpLpV: + - g_snprintf +- uFippp: + - g_idle_add_full +- uFpipp: + - g_io_add_watch + - g_log_set_handler +- pFpupp: + - g_datalist_id_dup_data +- pFppip: + - g_thread_create +- pFpppp: + - g_hash_table_new_full + - g_slist_insert_sorted_with_data +- vFpiLpp: + - g_qsort_with_data +- vFppipV: + - g_set_error +- uFiippp: + - g_child_watch_add_full +- uFiuppp: + - g_timeout_add_full + - g_timeout_add_seconds_full +- iFpupppp: + - g_datalist_id_replace_data +- uFpiippp: + - g_io_add_watch_full +- pFppuipp: + - g_variant_new_from_data +- pFppLiiip: + - g_thread_create_full +- iFpppipppp: + - g_spawn_async +- iFpppipppppp: + - g_spawn_sync +- iFpppippppppp: + - g_spawn_async_with_pipes +wrappedgmodule2: wrappedgnutls: - vFp: - gnutls_global_set_log_function - vFpp: - gnutls_transport_set_pull_function - gnutls_transport_set_push_function +wrappedgobject2: +- pFp: + - g_type_class_peek_parent +- iFpp: + - g_param_type_register_static +- pFpp: + - g_value_array_sort +- vFiip: + - g_type_add_interface_static + - g_value_register_transform_func +- vFppV: + - g_object_get + - g_object_set +- vFppA: + - g_object_get_valist + - g_object_set_valist +- iFppp: + - g_boxed_type_register_static +- pFipV: + - g_object_new +- pFipA: + - g_object_new_valist +- pFppp: + - g_value_array_sort_with_data +- pFppV: + - g_object_connect +- vFpuuV: + - g_signal_emit +- vFpupp: + - g_param_spec_set_qdata_full +- vFpupA: + - g_signal_emit_valist +- vFpppp: + - g_object_set_data_full +- iFippi: + - g_type_register_static +- iFipppi: + - g_type_register_fundamental +- LFupppp: + - g_signal_add_emission_hook +- LFpppppu: + - g_signal_connect_data +- iFipupupi: + - g_type_register_static_simple +- uFpiupppp: + - g_signal_handlers_block_matched + - g_signal_handlers_disconnect_matched + - g_signal_handlers_unblock_matched +- LFpiupppp: + - g_signal_handler_find +- uFpiiupppiuV: + - g_signal_new +- uFpiippppiup: + - g_signal_newv +- uFpiippppiuA: + - g_signal_new_valist wrappedgssapi: wrappedgssapikrb5: +wrappedgthread2: +- vFp: + - g_thread_init + - g_thread_init_with_errorcheck_mutexes +wrappedgtkx112: +- fFp: + - gtk_spin_button_get_value_as_float +- pFi: + - gtk_type_class +- vFpp: + - gtk_builder_connect_signals + - gtk_init +- iFpp: + - gtk_init_check + - gtk_type_unique +- pFpi: + - gtk_type_check_object_cast +- vFppp: + - gtk_builder_connect_signals_full + - gtk_clipboard_request_text + - gtk_container_forall + - gtk_container_foreach + - gtk_menu_attach_to_widget + - gtk_tree_model_foreach +- vFppV: + - gtk_dialog_add_buttons + - gtk_message_dialog_format_secondary_markup + - gtk_message_dialog_format_secondary_text +- uFupp: + - gtk_timeout_add +- vFppup: + - gtk_action_group_add_actions +- vFpppp: + - gtk_clipboard_request_contents + - gtk_object_set_data_full + - gtk_stock_set_translate_func + - gtk_tree_sortable_set_default_sort_func + - gtk_tree_view_set_search_equal_func +- iFpppp: + - gtk_text_iter_backward_find_char + - gtk_text_iter_forward_find_char +- LFpppp: + - gtk_signal_connect +- vFpippp: + - gtk_tree_sortable_set_sort_func +- vFppupp: + - gtk_action_group_add_actions_full +- vFppppp: + - gtk_cell_layout_set_cell_data_func +- vFpuipuV: + - gtk_binding_entry_add_signal +- iFppuppp: + - gtk_clipboard_set_with_data + - gtk_clipboard_set_with_owner +- iFpppppp: + - gtk_init_with_args +- uFiipppp: + - gtk_input_add_full +- vFpppppuu: + - gtk_menu_popup +- pFppppppi: + - gtk_toolbar_insert_stock +- pFppppppp: + - gtk_toolbar_append_item + - gtk_toolbar_prepend_item +- LFppppppii: + - gtk_signal_connect_full +- pFpppppppi: + - gtk_toolbar_insert_item +- pFpippppppp: + - gtk_toolbar_append_element + - gtk_toolbar_prepend_element +- pFpipppppppi: + - gtk_toolbar_insert_element wrappedkrb5: - iFppppppipp: - krb5_get_init_creds_password diff --git a/src/wrapped/generated/wrappeddbusglib1defs.h b/src/wrapped/generated/wrappeddbusglib1defs.h new file mode 100644 index 00000000..b6f33501 --- /dev/null +++ b/src/wrapped/generated/wrappeddbusglib1defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappeddbusglib1DEFS_H_ +#define __wrappeddbusglib1DEFS_H_ + + +#endif // __wrappeddbusglib1DEFS_H_ diff --git a/src/wrapped/generated/wrappeddbusglib1types.h b/src/wrapped/generated/wrappeddbusglib1types.h new file mode 100644 index 00000000..a68250f8 --- /dev/null +++ b/src/wrapped/generated/wrappeddbusglib1types.h @@ -0,0 +1,28 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappeddbusglib1TYPES_H_ +#define __wrappeddbusglib1TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef void (*vFppppp_t)(void*, void*, void*, void*, void*); +typedef void* (*pFpppppiV_t)(void*, void*, void*, void*, void*, int64_t, ...); +typedef void* (*pFpppppiiV_t)(void*, void*, void*, void*, void*, int64_t, int64_t, ...); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(dbus_g_type_collection_value_iterate, vFppp_t) \ + GO(dbus_g_type_map_value_iterate, vFppp_t) \ + GO(dbus_g_proxy_disconnect_signal, vFpppp_t) \ + GO(dbus_g_proxy_connect_signal, vFppppp_t) \ + GO(dbus_g_proxy_begin_call, pFpppppiV_t) \ + GO(dbus_g_proxy_begin_call_with_timeout, pFpppppiiV_t) + +#endif // __wrappeddbusglib1TYPES_H_ diff --git a/src/wrapped/generated/wrappeddbusglib1undefs.h b/src/wrapped/generated/wrappeddbusglib1undefs.h new file mode 100644 index 00000000..9bcc6397 --- /dev/null +++ b/src/wrapped/generated/wrappeddbusglib1undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappeddbusglib1UNDEFS_H_ +#define __wrappeddbusglib1UNDEFS_H_ + + +#endif // __wrappeddbusglib1UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgconf2defs.h b/src/wrapped/generated/wrappedgconf2defs.h new file mode 100644 index 00000000..36aa7782 --- /dev/null +++ b/src/wrapped/generated/wrappedgconf2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgconf2DEFS_H_ +#define __wrappedgconf2DEFS_H_ + + +#endif // __wrappedgconf2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgconf2types.h b/src/wrapped/generated/wrappedgconf2types.h new file mode 100644 index 00000000..981180b4 --- /dev/null +++ b/src/wrapped/generated/wrappedgconf2types.h @@ -0,0 +1,17 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgconf2TYPES_H_ +#define __wrappedgconf2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + + +#define SUPER() ADDED_FUNCTIONS() + +#endif // __wrappedgconf2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgconf2undefs.h b/src/wrapped/generated/wrappedgconf2undefs.h new file mode 100644 index 00000000..120b3118 --- /dev/null +++ b/src/wrapped/generated/wrappedgconf2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgconf2UNDEFS_H_ +#define __wrappedgconf2UNDEFS_H_ + + +#endif // __wrappedgconf2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgdkpixbuf2defs.h b/src/wrapped/generated/wrappedgdkpixbuf2defs.h new file mode 100644 index 00000000..db073b61 --- /dev/null +++ b/src/wrapped/generated/wrappedgdkpixbuf2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkpixbuf2DEFS_H_ +#define __wrappedgdkpixbuf2DEFS_H_ + + +#endif // __wrappedgdkpixbuf2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgdkpixbuf2types.h b/src/wrapped/generated/wrappedgdkpixbuf2types.h new file mode 100644 index 00000000..8a7f8294 --- /dev/null +++ b/src/wrapped/generated/wrappedgdkpixbuf2types.h @@ -0,0 +1,19 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkpixbuf2TYPES_H_ +#define __wrappedgdkpixbuf2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void* (*pFpiiiiiipp_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*, void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(gdk_pixbuf_new_from_data, pFpiiiiiipp_t) + +#endif // __wrappedgdkpixbuf2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgdkpixbuf2undefs.h b/src/wrapped/generated/wrappedgdkpixbuf2undefs.h new file mode 100644 index 00000000..3f6cff3c --- /dev/null +++ b/src/wrapped/generated/wrappedgdkpixbuf2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkpixbuf2UNDEFS_H_ +#define __wrappedgdkpixbuf2UNDEFS_H_ + + +#endif // __wrappedgdkpixbuf2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgdkx112defs.h b/src/wrapped/generated/wrappedgdkx112defs.h new file mode 100644 index 00000000..a7461b5c --- /dev/null +++ b/src/wrapped/generated/wrappedgdkx112defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkx112DEFS_H_ +#define __wrappedgdkx112DEFS_H_ + + +#endif // __wrappedgdkx112DEFS_H_ diff --git a/src/wrapped/generated/wrappedgdkx112types.h b/src/wrapped/generated/wrappedgdkx112types.h new file mode 100644 index 00000000..0a8efd60 --- /dev/null +++ b/src/wrapped/generated/wrappedgdkx112types.h @@ -0,0 +1,29 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkx112TYPES_H_ +#define __wrappedgdkx112TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void (*vFpp_t)(void*, void*); +typedef int64_t (*iFpp_t)(void*, void*); +typedef void (*vFppp_t)(void*, void*, void*); +typedef int64_t (*iFiipp_t)(int64_t, int64_t, void*, void*); +typedef int64_t (*iFiippp_t)(int64_t, int64_t, void*, void*, void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(gdk_init, vFpp_t) \ + GO(gdk_init_check, iFpp_t) \ + GO(gdk_event_handler_set, vFppp_t) \ + GO(gdk_window_add_filter, vFppp_t) \ + GO(gdk_window_remove_filter, vFppp_t) \ + GO(gdk_input_add, iFiipp_t) \ + GO(gdk_input_add_full, iFiippp_t) + +#endif // __wrappedgdkx112TYPES_H_ diff --git a/src/wrapped/generated/wrappedgdkx112undefs.h b/src/wrapped/generated/wrappedgdkx112undefs.h new file mode 100644 index 00000000..892a0c40 --- /dev/null +++ b/src/wrapped/generated/wrappedgdkx112undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgdkx112UNDEFS_H_ +#define __wrappedgdkx112UNDEFS_H_ + + +#endif // __wrappedgdkx112UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgio2defs.h b/src/wrapped/generated/wrappedgio2defs.h new file mode 100644 index 00000000..d461adbd --- /dev/null +++ b/src/wrapped/generated/wrappedgio2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgio2DEFS_H_ +#define __wrappedgio2DEFS_H_ + + +#endif // __wrappedgio2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgio2types.h b/src/wrapped/generated/wrappedgio2types.h new file mode 100644 index 00000000..ae5562f6 --- /dev/null +++ b/src/wrapped/generated/wrappedgio2types.h @@ -0,0 +1,77 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgio2TYPES_H_ +#define __wrappedgio2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFippp_t)(int64_t, void*, void*, void*); +typedef void (*vFppip_t)(void*, void*, int64_t, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef uint64_t (*uFpppp_t)(void*, void*, void*, void*); +typedef uintptr_t (*LFpppp_t)(void*, void*, void*, void*); +typedef void* (*pFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpippp_t)(void*, int64_t, void*, void*, void*); +typedef void (*vFpipppp_t)(void*, int64_t, void*, void*, void*, void*); +typedef void (*vFiippppV_t)(int64_t, int64_t, void*, void*, void*, void*, ...); +typedef void (*vFiupippp_t)(int64_t, uint64_t, void*, int64_t, void*, void*, void*); +typedef void (*vFippippp_t)(int64_t, void*, void*, int64_t, void*, void*, void*); +typedef void (*vFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*); +typedef void (*vFpppuipV_t)(void*, void*, void*, uint64_t, int64_t, void*, ...); +typedef uint64_t (*uFipipppp_t)(int64_t, void*, int64_t, void*, void*, void*, void*); +typedef uint64_t (*uFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*); +typedef uint64_t (*uFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpppuipV_t)(void*, void*, void*, uint64_t, int64_t, void*, ...); +typedef void (*vFppiipppp_t)(void*, void*, int64_t, int64_t, void*, void*, void*, void*); +typedef void (*vFpppiippp_t)(void*, void*, void*, int64_t, int64_t, void*, void*, void*); +typedef uint64_t (*uFipippppp_t)(int64_t, void*, int64_t, void*, void*, void*, void*, void*); +typedef void (*vFiippppppp_t)(int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFpippppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFpppiipppp_t)(void*, void*, void*, int64_t, int64_t, void*, void*, void*, void*); +typedef void* (*pFiippppppp_t)(int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFppppppippp_t)(void*, void*, void*, void*, void*, void*, int64_t, void*, void*, void*); +typedef void (*vFpppppppiippp_t)(void*, void*, void*, void*, void*, void*, void*, int64_t, int64_t, void*, void*, void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(g_simple_async_result_set_op_res_gpointer, vFppp_t) \ + GO(g_bus_get, vFippp_t) \ + GO(g_simple_async_result_run_in_thread, vFppip_t) \ + GO(g_dbus_connection_close, vFpppp_t) \ + GO(g_dbus_connection_flush, vFpppp_t) \ + GO(g_simple_async_report_gerror_in_idle, vFpppp_t) \ + GO(g_simple_async_report_take_gerror_in_idle, vFpppp_t) \ + GO(g_dbus_connection_add_filter, uFpppp_t) \ + GO(g_cancellable_connect, LFpppp_t) \ + GO(g_simple_async_result_new, pFpppp_t) \ + GO(g_simple_async_result_new_from_error, pFpppp_t) \ + GO(g_simple_async_result_new_take_error, pFpppp_t) \ + GO(g_async_initable_init_async, vFpippp_t) \ + GO(g_dbus_connection_new_for_address, vFpipppp_t) \ + GO(g_async_initable_new_async, vFiippppV_t) \ + GO(g_async_initable_newv_async, vFiupippp_t) \ + GO(g_async_initable_new_valist_async, vFippippp_t) \ + GO(g_dbus_connection_new, vFppipppp_t) \ + GO(g_simple_async_report_error_in_idle, vFpppuipV_t) \ + GO(g_bus_watch_name, uFipipppp_t) \ + GO(g_bus_own_name_on_connection, uFppipppp_t) \ + GO(g_bus_watch_name_on_connection, uFppipppp_t) \ + GO(g_dbus_connection_register_object, uFppppppp_t) \ + GO(g_simple_async_result_new_error, pFpppuipV_t) \ + GO(g_dbus_connection_send_message_with_reply, vFppiipppp_t) \ + GO(g_dbus_proxy_call, vFpppiippp_t) \ + GO(g_bus_own_name, uFipippppp_t) \ + GO(g_dbus_proxy_new_for_bus, vFiippppppp_t) \ + GO(g_dbus_proxy_new, vFpippppppp_t) \ + GO(g_dbus_proxy_call_with_unix_fd_list, vFpppiipppp_t) \ + GO(g_dbus_object_manager_client_new_for_bus_sync, pFiippppppp_t) \ + GO(g_dbus_connection_signal_subscribe, uFppppppippp_t) \ + GO(g_dbus_connection_call, vFpppppppiippp_t) + +#endif // __wrappedgio2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgio2undefs.h b/src/wrapped/generated/wrappedgio2undefs.h new file mode 100644 index 00000000..8787b573 --- /dev/null +++ b/src/wrapped/generated/wrappedgio2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgio2UNDEFS_H_ +#define __wrappedgio2UNDEFS_H_ + + +#endif // __wrappedgio2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedglib2defs.h b/src/wrapped/generated/wrappedglib2defs.h new file mode 100644 index 00000000..ee8161f1 --- /dev/null +++ b/src/wrapped/generated/wrappedglib2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedglib2DEFS_H_ +#define __wrappedglib2DEFS_H_ + + +#endif // __wrappedglib2DEFS_H_ diff --git a/src/wrapped/generated/wrappedglib2types.h b/src/wrapped/generated/wrappedglib2types.h new file mode 100644 index 00000000..8ed095bc --- /dev/null +++ b/src/wrapped/generated/wrappedglib2types.h @@ -0,0 +1,143 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedglib2TYPES_H_ +#define __wrappedglib2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void (*vFp_t)(void*); +typedef void* (*pFp_t)(void*); +typedef void (*vFpp_t)(void*, void*); +typedef void (*vFpV_t)(void*, ...); +typedef int64_t (*iFpp_t)(void*, void*); +typedef int64_t (*iFpV_t)(void*, ...); +typedef uint64_t (*uFpp_t)(void*, void*); +typedef void* (*pFup_t)(uint64_t, void*); +typedef void* (*pFpu_t)(void*, uint64_t); +typedef void* (*pFpp_t)(void*, void*); +typedef void* (*pFpV_t)(void*, ...); +typedef void* (*pFpA_t)(void*, va_list); +typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFppV_t)(void*, void*, ...); +typedef int64_t (*iFppp_t)(void*, void*, void*); +typedef int64_t (*iFppV_t)(void*, void*, ...); +typedef uint64_t (*uFipp_t)(int64_t, void*, void*); +typedef uint64_t (*uFupp_t)(uint64_t, void*, void*); +typedef uint64_t (*uFppp_t)(void*, void*, void*); +typedef void* (*pFppp_t)(void*, void*, void*); +typedef void* (*pFppV_t)(void*, void*, ...); +typedef void (*vFpupp_t)(void*, uint64_t, void*, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef int64_t (*iFpLpp_t)(void*, uintptr_t, void*, void*); +typedef int64_t (*iFpLpV_t)(void*, uintptr_t, void*, ...); +typedef uint64_t (*uFippp_t)(int64_t, void*, void*, void*); +typedef uint64_t (*uFpipp_t)(void*, int64_t, void*, void*); +typedef void* (*pFpupp_t)(void*, uint64_t, void*, void*); +typedef void* (*pFppip_t)(void*, void*, int64_t, void*); +typedef void* (*pFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpiLpp_t)(void*, int64_t, uintptr_t, void*, void*); +typedef void (*vFppipV_t)(void*, void*, int64_t, void*, ...); +typedef uint64_t (*uFiippp_t)(int64_t, int64_t, void*, void*, void*); +typedef uint64_t (*uFiuppp_t)(int64_t, uint64_t, void*, void*, void*); +typedef int64_t (*iFpupppp_t)(void*, uint64_t, void*, void*, void*, void*); +typedef uint64_t (*uFpiippp_t)(void*, int64_t, int64_t, void*, void*, void*); +typedef void* (*pFppuipp_t)(void*, void*, uint64_t, int64_t, void*, void*); +typedef void* (*pFppLiiip_t)(void*, void*, uintptr_t, int64_t, int64_t, int64_t, void*); +typedef int64_t (*iFpppipppp_t)(void*, void*, void*, int64_t, void*, void*, void*, void*); +typedef int64_t (*iFpppipppppp_t)(void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*); +typedef int64_t (*iFpppippppppp_t)(void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(g_atexit, vFp_t) \ + GO(g_completion_new, pFp_t) \ + GO(g_main_context_get_poll_func, pFp_t) \ + GO(g_private_new, pFp_t) \ + GO(g_ptr_array_new_with_free_func, pFp_t) \ + GO(g_set_print_handler, pFp_t) \ + GO(g_set_printerr_handler, pFp_t) \ + GO(g_array_set_clear_func, vFpp_t) \ + GO(g_array_sort, vFpp_t) \ + GO(g_completion_set_compare, vFpp_t) \ + GO(g_list_free_full, vFpp_t) \ + GO(g_main_context_set_poll_func, vFpp_t) \ + GO(g_ptr_array_set_free_func, vFpp_t) \ + GO(g_ptr_array_sort, vFpp_t) \ + GO(g_source_set_funcs, vFpp_t) \ + GO(g_thread_foreach, vFpp_t) \ + GO(g_print, vFpV_t) \ + GO(g_printerr, vFpV_t) \ + GO(g_source_remove_by_funcs_user_data, iFpp_t) \ + GO(g_vprintf, iFpp_t) \ + GO(g_printf, iFpV_t) \ + GO(g_idle_add, uFpp_t) \ + GO(g_printf_string_upper_bound, uFpp_t) \ + GO(g_ptr_array_new_full, pFup_t) \ + GO(g_source_new, pFpu_t) \ + GO(g_hash_table_new, pFpp_t) \ + GO(g_list_sort, pFpp_t) \ + GO(g_log_set_default_handler, pFpp_t) \ + GO(g_slist_sort, pFpp_t) \ + GO(g_strdup_vprintf, pFpp_t) \ + GO(g_build_filename, pFpV_t) \ + GO(g_markup_printf_escaped, pFpV_t) \ + GO(g_strdup_printf, pFpV_t) \ + GO(g_variant_new, pFpV_t) \ + GO(g_markup_vprintf_escaped, pFpA_t) \ + GO(g_variant_new_parsed_va, pFpA_t) \ + GO(g_array_sort_with_data, vFppp_t) \ + GO(g_hash_table_foreach, vFppp_t) \ + GO(g_ptr_array_foreach, vFppp_t) \ + GO(g_ptr_array_sort_with_data, vFppp_t) \ + GO(g_static_private_set, vFppp_t) \ + GO(g_variant_get, vFppV_t) \ + GO(g_vasprintf, iFppp_t) \ + GO(g_vfprintf, iFppp_t) \ + GO(g_vsprintf, iFppp_t) \ + GO(g_fprintf, iFppV_t) \ + GO(g_sprintf, iFppV_t) \ + GO(g_child_watch_add, uFipp_t) \ + GO(g_timeout_add, uFupp_t) \ + GO(g_timeout_add_seconds, uFupp_t) \ + GO(g_hash_table_foreach_remove, uFppp_t) \ + GO(g_hash_table_foreach_steal, uFppp_t) \ + GO(g_hash_table_find, pFppp_t) \ + GO(g_list_find_custom, pFppp_t) \ + GO(g_list_sort_with_data, pFppp_t) \ + GO(g_queue_find_custom, pFppp_t) \ + GO(g_slist_find_custom, pFppp_t) \ + GO(g_slist_foreach, pFppp_t) \ + GO(g_slist_insert_sorted, pFppp_t) \ + GO(g_slist_sort_with_data, pFppp_t) \ + GO(g_variant_new_va, pFppp_t) \ + GO(g_build_path, pFppV_t) \ + GO(g_datalist_id_set_data_full, vFpupp_t) \ + GO(g_source_set_callback, vFpppp_t) \ + GO(g_vsnprintf, iFpLpp_t) \ + GO(g_snprintf, iFpLpV_t) \ + GO(g_idle_add_full, uFippp_t) \ + GO(g_io_add_watch, uFpipp_t) \ + GO(g_log_set_handler, uFpipp_t) \ + GO(g_datalist_id_dup_data, pFpupp_t) \ + GO(g_thread_create, pFppip_t) \ + GO(g_hash_table_new_full, pFpppp_t) \ + GO(g_slist_insert_sorted_with_data, pFpppp_t) \ + GO(g_qsort_with_data, vFpiLpp_t) \ + GO(g_set_error, vFppipV_t) \ + GO(g_child_watch_add_full, uFiippp_t) \ + GO(g_timeout_add_full, uFiuppp_t) \ + GO(g_timeout_add_seconds_full, uFiuppp_t) \ + GO(g_datalist_id_replace_data, iFpupppp_t) \ + GO(g_io_add_watch_full, uFpiippp_t) \ + GO(g_variant_new_from_data, pFppuipp_t) \ + GO(g_thread_create_full, pFppLiiip_t) \ + GO(g_spawn_async, iFpppipppp_t) \ + GO(g_spawn_sync, iFpppipppppp_t) \ + GO(g_spawn_async_with_pipes, iFpppippppppp_t) + +#endif // __wrappedglib2TYPES_H_ diff --git a/src/wrapped/generated/wrappedglib2undefs.h b/src/wrapped/generated/wrappedglib2undefs.h new file mode 100644 index 00000000..2ab9768c --- /dev/null +++ b/src/wrapped/generated/wrappedglib2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedglib2UNDEFS_H_ +#define __wrappedglib2UNDEFS_H_ + + +#endif // __wrappedglib2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgmodule2defs.h b/src/wrapped/generated/wrappedgmodule2defs.h new file mode 100644 index 00000000..48d1b235 --- /dev/null +++ b/src/wrapped/generated/wrappedgmodule2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgmodule2DEFS_H_ +#define __wrappedgmodule2DEFS_H_ + + +#endif // __wrappedgmodule2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgmodule2types.h b/src/wrapped/generated/wrappedgmodule2types.h new file mode 100644 index 00000000..829efcba --- /dev/null +++ b/src/wrapped/generated/wrappedgmodule2types.h @@ -0,0 +1,17 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgmodule2TYPES_H_ +#define __wrappedgmodule2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + + +#define SUPER() ADDED_FUNCTIONS() + +#endif // __wrappedgmodule2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgmodule2undefs.h b/src/wrapped/generated/wrappedgmodule2undefs.h new file mode 100644 index 00000000..fc17a814 --- /dev/null +++ b/src/wrapped/generated/wrappedgmodule2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgmodule2UNDEFS_H_ +#define __wrappedgmodule2UNDEFS_H_ + + +#endif // __wrappedgmodule2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgobject2defs.h b/src/wrapped/generated/wrappedgobject2defs.h new file mode 100644 index 00000000..03df51ab --- /dev/null +++ b/src/wrapped/generated/wrappedgobject2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgobject2DEFS_H_ +#define __wrappedgobject2DEFS_H_ + + +#endif // __wrappedgobject2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgobject2types.h b/src/wrapped/generated/wrappedgobject2types.h new file mode 100644 index 00000000..966bd36a --- /dev/null +++ b/src/wrapped/generated/wrappedgobject2types.h @@ -0,0 +1,72 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgobject2TYPES_H_ +#define __wrappedgobject2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void* (*pFp_t)(void*); +typedef int64_t (*iFpp_t)(void*, void*); +typedef void* (*pFpp_t)(void*, void*); +typedef void (*vFiip_t)(int64_t, int64_t, void*); +typedef void (*vFppV_t)(void*, void*, ...); +typedef void (*vFppA_t)(void*, void*, va_list); +typedef int64_t (*iFppp_t)(void*, void*, void*); +typedef void* (*pFipV_t)(int64_t, void*, ...); +typedef void* (*pFipA_t)(int64_t, void*, va_list); +typedef void* (*pFppp_t)(void*, void*, void*); +typedef void* (*pFppV_t)(void*, void*, ...); +typedef void (*vFpuuV_t)(void*, uint64_t, uint64_t, ...); +typedef void (*vFpupp_t)(void*, uint64_t, void*, void*); +typedef void (*vFpupA_t)(void*, uint64_t, void*, va_list); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef int64_t (*iFippi_t)(int64_t, void*, void*, int64_t); +typedef int64_t (*iFipppi_t)(int64_t, void*, void*, void*, int64_t); +typedef uintptr_t (*LFupppp_t)(uint64_t, void*, void*, void*, void*); +typedef uintptr_t (*LFpppppu_t)(void*, void*, void*, void*, void*, uint64_t); +typedef int64_t (*iFipupupi_t)(int64_t, void*, uint64_t, void*, uint64_t, void*, int64_t); +typedef uint64_t (*uFpiupppp_t)(void*, int64_t, uint64_t, void*, void*, void*, void*); +typedef uintptr_t (*LFpiupppp_t)(void*, int64_t, uint64_t, void*, void*, void*, void*); +typedef uint64_t (*uFpiiupppiuV_t)(void*, int64_t, int64_t, uint64_t, void*, void*, void*, int64_t, uint64_t, ...); +typedef uint64_t (*uFpiippppiup_t)(void*, int64_t, int64_t, void*, void*, void*, void*, int64_t, uint64_t, void*); +typedef uint64_t (*uFpiippppiuA_t)(void*, int64_t, int64_t, void*, void*, void*, void*, int64_t, uint64_t, va_list); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(g_type_class_peek_parent, pFp_t) \ + GO(g_param_type_register_static, iFpp_t) \ + GO(g_value_array_sort, pFpp_t) \ + GO(g_type_add_interface_static, vFiip_t) \ + GO(g_value_register_transform_func, vFiip_t) \ + GO(g_object_get, vFppV_t) \ + GO(g_object_set, vFppV_t) \ + GO(g_object_get_valist, vFppA_t) \ + GO(g_object_set_valist, vFppA_t) \ + GO(g_boxed_type_register_static, iFppp_t) \ + GO(g_object_new, pFipV_t) \ + GO(g_object_new_valist, pFipA_t) \ + GO(g_value_array_sort_with_data, pFppp_t) \ + GO(g_object_connect, pFppV_t) \ + GO(g_signal_emit, vFpuuV_t) \ + GO(g_param_spec_set_qdata_full, vFpupp_t) \ + GO(g_signal_emit_valist, vFpupA_t) \ + GO(g_object_set_data_full, vFpppp_t) \ + GO(g_type_register_static, iFippi_t) \ + GO(g_type_register_fundamental, iFipppi_t) \ + GO(g_signal_add_emission_hook, LFupppp_t) \ + GO(g_signal_connect_data, LFpppppu_t) \ + GO(g_type_register_static_simple, iFipupupi_t) \ + GO(g_signal_handlers_block_matched, uFpiupppp_t) \ + GO(g_signal_handlers_disconnect_matched, uFpiupppp_t) \ + GO(g_signal_handlers_unblock_matched, uFpiupppp_t) \ + GO(g_signal_handler_find, LFpiupppp_t) \ + GO(g_signal_new, uFpiiupppiuV_t) \ + GO(g_signal_newv, uFpiippppiup_t) \ + GO(g_signal_new_valist, uFpiippppiuA_t) + +#endif // __wrappedgobject2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgobject2undefs.h b/src/wrapped/generated/wrappedgobject2undefs.h new file mode 100644 index 00000000..d8a16b31 --- /dev/null +++ b/src/wrapped/generated/wrappedgobject2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgobject2UNDEFS_H_ +#define __wrappedgobject2UNDEFS_H_ + + +#endif // __wrappedgobject2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgthread2defs.h b/src/wrapped/generated/wrappedgthread2defs.h new file mode 100644 index 00000000..464bd999 --- /dev/null +++ b/src/wrapped/generated/wrappedgthread2defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgthread2DEFS_H_ +#define __wrappedgthread2DEFS_H_ + + +#endif // __wrappedgthread2DEFS_H_ diff --git a/src/wrapped/generated/wrappedgthread2types.h b/src/wrapped/generated/wrappedgthread2types.h new file mode 100644 index 00000000..64c2026f --- /dev/null +++ b/src/wrapped/generated/wrappedgthread2types.h @@ -0,0 +1,20 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgthread2TYPES_H_ +#define __wrappedgthread2TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef void (*vFp_t)(void*); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(g_thread_init, vFp_t) \ + GO(g_thread_init_with_errorcheck_mutexes, vFp_t) + +#endif // __wrappedgthread2TYPES_H_ diff --git a/src/wrapped/generated/wrappedgthread2undefs.h b/src/wrapped/generated/wrappedgthread2undefs.h new file mode 100644 index 00000000..8e8db721 --- /dev/null +++ b/src/wrapped/generated/wrappedgthread2undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgthread2UNDEFS_H_ +#define __wrappedgthread2UNDEFS_H_ + + +#endif // __wrappedgthread2UNDEFS_H_ diff --git a/src/wrapped/generated/wrappedgtkx112defs.h b/src/wrapped/generated/wrappedgtkx112defs.h new file mode 100644 index 00000000..08fd8815 --- /dev/null +++ b/src/wrapped/generated/wrappedgtkx112defs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgtkx112DEFS_H_ +#define __wrappedgtkx112DEFS_H_ + + +#endif // __wrappedgtkx112DEFS_H_ diff --git a/src/wrapped/generated/wrappedgtkx112types.h b/src/wrapped/generated/wrappedgtkx112types.h new file mode 100644 index 00000000..854862aa --- /dev/null +++ b/src/wrapped/generated/wrappedgtkx112types.h @@ -0,0 +1,86 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgtkx112TYPES_H_ +#define __wrappedgtkx112TYPES_H_ + +#ifndef LIBNAME +#error You should only #include this file inside a wrapped*.c file +#endif +#ifndef ADDED_FUNCTIONS +#define ADDED_FUNCTIONS() +#endif + +typedef float (*fFp_t)(void*); +typedef void* (*pFi_t)(int64_t); +typedef void (*vFpp_t)(void*, void*); +typedef int64_t (*iFpp_t)(void*, void*); +typedef void* (*pFpi_t)(void*, int64_t); +typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFppV_t)(void*, void*, ...); +typedef uint64_t (*uFupp_t)(uint64_t, void*, void*); +typedef void (*vFppup_t)(void*, void*, uint64_t, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef int64_t (*iFpppp_t)(void*, void*, void*, void*); +typedef uintptr_t (*LFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpippp_t)(void*, int64_t, void*, void*, void*); +typedef void (*vFppupp_t)(void*, void*, uint64_t, void*, void*); +typedef void (*vFppppp_t)(void*, void*, void*, void*, void*); +typedef void (*vFpuipuV_t)(void*, uint64_t, int64_t, void*, uint64_t, ...); +typedef int64_t (*iFppuppp_t)(void*, void*, uint64_t, void*, void*, void*); +typedef int64_t (*iFpppppp_t)(void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFiipppp_t)(int64_t, int64_t, void*, void*, void*, void*); +typedef void (*vFpppppuu_t)(void*, void*, void*, void*, void*, uint64_t, uint64_t); +typedef void* (*pFppppppi_t)(void*, void*, void*, void*, void*, void*, int64_t); +typedef void* (*pFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef uintptr_t (*LFppppppii_t)(void*, void*, void*, void*, void*, void*, int64_t, int64_t); +typedef void* (*pFpppppppi_t)(void*, void*, void*, void*, void*, void*, void*, int64_t); +typedef void* (*pFpippppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpipppppppi_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*, int64_t); + +#define SUPER() ADDED_FUNCTIONS() \ + GO(gtk_spin_button_get_value_as_float, fFp_t) \ + GO(gtk_type_class, pFi_t) \ + GO(gtk_builder_connect_signals, vFpp_t) \ + GO(gtk_init, vFpp_t) \ + GO(gtk_init_check, iFpp_t) \ + GO(gtk_type_unique, iFpp_t) \ + GO(gtk_type_check_object_cast, pFpi_t) \ + GO(gtk_builder_connect_signals_full, vFppp_t) \ + GO(gtk_clipboard_request_text, vFppp_t) \ + GO(gtk_container_forall, vFppp_t) \ + GO(gtk_container_foreach, vFppp_t) \ + GO(gtk_menu_attach_to_widget, vFppp_t) \ + GO(gtk_tree_model_foreach, vFppp_t) \ + GO(gtk_dialog_add_buttons, vFppV_t) \ + GO(gtk_message_dialog_format_secondary_markup, vFppV_t) \ + GO(gtk_message_dialog_format_secondary_text, vFppV_t) \ + GO(gtk_timeout_add, uFupp_t) \ + GO(gtk_action_group_add_actions, vFppup_t) \ + GO(gtk_clipboard_request_contents, vFpppp_t) \ + GO(gtk_object_set_data_full, vFpppp_t) \ + GO(gtk_stock_set_translate_func, vFpppp_t) \ + GO(gtk_tree_sortable_set_default_sort_func, vFpppp_t) \ + GO(gtk_tree_view_set_search_equal_func, vFpppp_t) \ + GO(gtk_text_iter_backward_find_char, iFpppp_t) \ + GO(gtk_text_iter_forward_find_char, iFpppp_t) \ + GO(gtk_signal_connect, LFpppp_t) \ + GO(gtk_tree_sortable_set_sort_func, vFpippp_t) \ + GO(gtk_action_group_add_actions_full, vFppupp_t) \ + GO(gtk_cell_layout_set_cell_data_func, vFppppp_t) \ + GO(gtk_binding_entry_add_signal, vFpuipuV_t) \ + GO(gtk_clipboard_set_with_data, iFppuppp_t) \ + GO(gtk_clipboard_set_with_owner, iFppuppp_t) \ + GO(gtk_init_with_args, iFpppppp_t) \ + GO(gtk_input_add_full, uFiipppp_t) \ + GO(gtk_menu_popup, vFpppppuu_t) \ + GO(gtk_toolbar_insert_stock, pFppppppi_t) \ + GO(gtk_toolbar_append_item, pFppppppp_t) \ + GO(gtk_toolbar_prepend_item, pFppppppp_t) \ + GO(gtk_signal_connect_full, LFppppppii_t) \ + GO(gtk_toolbar_insert_item, pFpppppppi_t) \ + GO(gtk_toolbar_append_element, pFpippppppp_t) \ + GO(gtk_toolbar_prepend_element, pFpippppppp_t) \ + GO(gtk_toolbar_insert_element, pFpipppppppi_t) + +#endif // __wrappedgtkx112TYPES_H_ diff --git a/src/wrapped/generated/wrappedgtkx112undefs.h b/src/wrapped/generated/wrappedgtkx112undefs.h new file mode 100644 index 00000000..5ae58ea9 --- /dev/null +++ b/src/wrapped/generated/wrappedgtkx112undefs.h @@ -0,0 +1,8 @@ +/******************************************************************* + * File automatically generated by rebuild_wrappers.py (v2.1.0.16) * + *******************************************************************/ +#ifndef __wrappedgtkx112UNDEFS_H_ +#define __wrappedgtkx112UNDEFS_H_ + + +#endif // __wrappedgtkx112UNDEFS_H_ diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 60359ed8..22a2c6bb 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -40,6 +40,7 @@ typedef void (*vFU_t)(uint64_t); typedef void (*vFf_t)(float); typedef void (*vFd_t)(double); typedef void (*vFl_t)(intptr_t); +typedef void (*vFL_t)(uintptr_t); typedef void (*vFp_t)(void*); typedef void (*vFS_t)(void*); typedef int8_t (*cFv_t)(void); @@ -53,6 +54,8 @@ typedef int64_t (*iFv_t)(void); typedef int64_t (*iFw_t)(int16_t); typedef int64_t (*iFi_t)(int64_t); typedef int64_t (*iFI_t)(int64_t); +typedef int64_t (*iFC_t)(uint8_t); +typedef int64_t (*iFW_t)(uint16_t); typedef int64_t (*iFu_t)(uint64_t); typedef int64_t (*iFU_t)(uint64_t); typedef int64_t (*iFf_t)(float); @@ -63,10 +66,13 @@ typedef int64_t (*iFL_t)(uintptr_t); typedef int64_t (*iFp_t)(void*); typedef int64_t (*iFO_t)(int32_t); typedef int64_t (*iFS_t)(void*); +typedef int64_t (*IFv_t)(void); +typedef int64_t (*IFi_t)(int64_t); typedef int64_t (*IFI_t)(int64_t); typedef int64_t (*IFf_t)(float); typedef int64_t (*IFd_t)(double); typedef int64_t (*IFp_t)(void*); +typedef uint8_t (*CFC_t)(uint8_t); typedef uint8_t (*CFp_t)(void*); typedef uint16_t (*WFi_t)(int64_t); typedef uint16_t (*WFW_t)(uint16_t); @@ -96,13 +102,18 @@ typedef intptr_t (*lFi_t)(int64_t); typedef intptr_t (*lFl_t)(intptr_t); typedef intptr_t (*lFp_t)(void*); typedef uintptr_t (*LFv_t)(void); +typedef uintptr_t (*LFu_t)(uint64_t); typedef uintptr_t (*LFL_t)(uintptr_t); typedef uintptr_t (*LFp_t)(void*); typedef void* (*pFE_t)(x64emu_t*); typedef void* (*pFv_t)(void); +typedef void* (*pFw_t)(int16_t); typedef void* (*pFi_t)(int64_t); +typedef void* (*pFI_t)(int64_t); +typedef void* (*pFC_t)(uint8_t); typedef void* (*pFW_t)(uint16_t); typedef void* (*pFu_t)(uint64_t); +typedef void* (*pFU_t)(uint64_t); typedef void* (*pFd_t)(double); typedef void* (*pFl_t)(intptr_t); typedef void* (*pFL_t)(uintptr_t); @@ -135,8 +146,13 @@ typedef void (*vFdd_t)(double, double); typedef void (*vFlp_t)(intptr_t, void*); typedef void (*vFLL_t)(uintptr_t, uintptr_t); typedef void (*vFLp_t)(uintptr_t, void*); +typedef void (*vFpc_t)(void*, int8_t); typedef void (*vFpi_t)(void*, int64_t); +typedef void (*vFpI_t)(void*, int64_t); +typedef void (*vFpC_t)(void*, uint8_t); +typedef void (*vFpW_t)(void*, uint16_t); typedef void (*vFpu_t)(void*, uint64_t); +typedef void (*vFpU_t)(void*, uint64_t); typedef void (*vFpf_t)(void*, float); typedef void (*vFpd_t)(void*, double); typedef void (*vFpl_t)(void*, intptr_t); @@ -180,6 +196,7 @@ typedef int64_t (*IFEp_t)(x64emu_t*, void*); typedef int64_t (*IFpi_t)(void*, int64_t); typedef int64_t (*IFpu_t)(void*, uint64_t); typedef int64_t (*IFpd_t)(void*, double); +typedef uint8_t (*CFip_t)(int64_t, void*); typedef uint8_t (*CFui_t)(uint64_t, int64_t); typedef uint8_t (*CFpi_t)(void*, int64_t); typedef uint8_t (*CFpu_t)(void*, uint64_t); @@ -201,6 +218,7 @@ typedef uint64_t (*UFEp_t)(x64emu_t*, void*); typedef uint64_t (*UFuu_t)(uint64_t, uint64_t); typedef uint64_t (*UFUp_t)(uint64_t, void*); typedef uint64_t (*UFpp_t)(void*, void*); +typedef float (*fFEp_t)(x64emu_t*, void*); typedef float (*fFif_t)(int64_t, float); typedef float (*fFfi_t)(float, int64_t); typedef float (*fFff_t)(float, float); @@ -214,6 +232,7 @@ typedef double (*dFdD_t)(double, long double); typedef double (*dFdp_t)(double, void*); typedef double (*dFll_t)(intptr_t, intptr_t); typedef double (*dFpi_t)(void*, int64_t); +typedef double (*dFpd_t)(void*, double); typedef double (*dFpp_t)(void*, void*); typedef long double (*DFDi_t)(long double, int64_t); typedef long double (*DFDD_t)(long double, long double); @@ -230,20 +249,28 @@ typedef uintptr_t (*LFLi_t)(uintptr_t, int64_t); typedef uintptr_t (*LFpi_t)(void*, int64_t); typedef uintptr_t (*LFpL_t)(void*, uintptr_t); typedef uintptr_t (*LFpp_t)(void*, void*); +typedef void* (*pFEi_t)(x64emu_t*, int64_t); typedef void* (*pFEp_t)(x64emu_t*, void*); typedef void* (*pFii_t)(int64_t, int64_t); typedef void* (*pFiu_t)(int64_t, uint64_t); typedef void* (*pFip_t)(int64_t, void*); +typedef void* (*pFiV_t)(int64_t, void*); typedef void* (*pFui_t)(uint64_t, int64_t); +typedef void* (*pFuC_t)(uint64_t, uint8_t); typedef void* (*pFuu_t)(uint64_t, uint64_t); typedef void* (*pFup_t)(uint64_t, void*); +typedef void* (*pFuV_t)(uint64_t, void*); +typedef void* (*pFUi_t)(uint64_t, int64_t); typedef void* (*pFdd_t)(double, double); typedef void* (*pFlp_t)(intptr_t, void*); typedef void* (*pFLL_t)(uintptr_t, uintptr_t); +typedef void* (*pFLp_t)(uintptr_t, void*); typedef void* (*pFpi_t)(void*, int64_t); typedef void* (*pFpC_t)(void*, uint8_t); typedef void* (*pFpu_t)(void*, uint64_t); typedef void* (*pFpU_t)(void*, uint64_t); +typedef void* (*pFpd_t)(void*, double); +typedef void* (*pFpl_t)(void*, intptr_t); typedef void* (*pFpL_t)(void*, uintptr_t); typedef void* (*pFpp_t)(void*, void*); typedef void* (*pFpV_t)(void*, void*); @@ -285,12 +312,15 @@ typedef void (*vFudd_t)(uint64_t, double, double); typedef void (*vFull_t)(uint64_t, intptr_t, intptr_t); typedef void (*vFulp_t)(uint64_t, intptr_t, void*); typedef void (*vFupu_t)(uint64_t, void*, uint64_t); +typedef void (*vFupp_t)(uint64_t, void*, void*); typedef void (*vFfff_t)(float, float, float); typedef void (*vFfpp_t)(float, void*, void*); typedef void (*vFddd_t)(double, double, double); typedef void (*vFdpp_t)(double, void*, void*); +typedef void (*vFLpL_t)(uintptr_t, void*, uintptr_t); typedef void (*vFLpp_t)(uintptr_t, void*, void*); typedef void (*vFpii_t)(void*, int64_t, int64_t); +typedef void (*vFpiC_t)(void*, int64_t, uint8_t); typedef void (*vFpiu_t)(void*, int64_t, uint64_t); typedef void (*vFpif_t)(void*, int64_t, float); typedef void (*vFpid_t)(void*, int64_t, double); @@ -299,6 +329,7 @@ typedef void (*vFpui_t)(void*, uint64_t, int64_t); typedef void (*vFpuI_t)(void*, uint64_t, int64_t); typedef void (*vFpuu_t)(void*, uint64_t, uint64_t); typedef void (*vFpup_t)(void*, uint64_t, void*); +typedef void (*vFpff_t)(void*, float, float); typedef void (*vFpdd_t)(void*, double, double); typedef void (*vFpll_t)(void*, intptr_t, intptr_t); typedef void (*vFpLi_t)(void*, uintptr_t, int64_t); @@ -310,6 +341,7 @@ typedef void (*vFppd_t)(void*, void*, double); typedef void (*vFppl_t)(void*, void*, intptr_t); typedef void (*vFppL_t)(void*, void*, uintptr_t); typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFppV_t)(void*, void*, void*); typedef int64_t (*iFEiw_t)(x64emu_t*, int64_t, int16_t); typedef int64_t (*iFEip_t)(x64emu_t*, int64_t, void*); typedef int64_t (*iFEWW_t)(x64emu_t*, uint16_t, uint16_t); @@ -339,6 +371,7 @@ typedef int64_t (*iFipu_t)(int64_t, void*, uint64_t); typedef int64_t (*iFipL_t)(int64_t, void*, uintptr_t); typedef int64_t (*iFipp_t)(int64_t, void*, void*); typedef int64_t (*iFipO_t)(int64_t, void*, int32_t); +typedef int64_t (*iFCiW_t)(uint8_t, int64_t, uint16_t); typedef int64_t (*iFuwp_t)(uint64_t, int16_t, void*); typedef int64_t (*iFuui_t)(uint64_t, uint64_t, int64_t); typedef int64_t (*iFuuu_t)(uint64_t, uint64_t, uint64_t); @@ -358,6 +391,7 @@ typedef int64_t (*iFpii_t)(void*, int64_t, int64_t); typedef int64_t (*iFpiu_t)(void*, int64_t, uint64_t); typedef int64_t (*iFpiL_t)(void*, int64_t, uintptr_t); typedef int64_t (*iFpip_t)(void*, int64_t, void*); +typedef int64_t (*iFpIi_t)(void*, int64_t, int64_t); typedef int64_t (*iFpui_t)(void*, uint64_t, int64_t); typedef int64_t (*iFpuu_t)(void*, uint64_t, uint64_t); typedef int64_t (*iFpuU_t)(void*, uint64_t, uint64_t); @@ -388,6 +422,7 @@ typedef int64_t (*iFSpL_t)(void*, void*, uintptr_t); typedef int64_t (*IFiIi_t)(int64_t, int64_t, int64_t); typedef int64_t (*IFpIi_t)(void*, int64_t, int64_t); typedef int64_t (*IFppi_t)(void*, void*, int64_t); +typedef int64_t (*IFppu_t)(void*, void*, uint64_t); typedef int64_t (*IFSIi_t)(void*, int64_t, int64_t); typedef uint64_t (*uFEpW_t)(x64emu_t*, void*, uint16_t); typedef uint64_t (*uFEpu_t)(x64emu_t*, void*, uint64_t); @@ -410,6 +445,7 @@ typedef uint64_t (*uFppi_t)(void*, void*, int64_t); typedef uint64_t (*uFppu_t)(void*, void*, uint64_t); typedef uint64_t (*uFppp_t)(void*, void*, void*); typedef uint64_t (*UFppi_t)(void*, void*, int64_t); +typedef uint64_t (*UFppu_t)(void*, void*, uint64_t); typedef float (*fFull_t)(uint64_t, intptr_t, intptr_t); typedef float (*fFfff_t)(float, float, float); typedef float (*fFffp_t)(float, float, void*); @@ -417,6 +453,7 @@ typedef float (*fFppL_t)(void*, void*, uintptr_t); typedef float (*fFppp_t)(void*, void*, void*); typedef double (*dFddd_t)(double, double, double); typedef double (*dFddp_t)(double, double, void*); +typedef double (*dFpdd_t)(void*, double, double); typedef double (*dFppi_t)(void*, void*, int64_t); typedef double (*dFppp_t)(void*, void*, void*); typedef long double (*DFppp_t)(void*, void*, void*); @@ -428,6 +465,7 @@ typedef intptr_t (*lFlll_t)(intptr_t, intptr_t, intptr_t); typedef intptr_t (*lFlpi_t)(intptr_t, void*, int64_t); typedef intptr_t (*lFpli_t)(void*, intptr_t, int64_t); typedef intptr_t (*lFpLu_t)(void*, uintptr_t, uint64_t); +typedef intptr_t (*lFpLp_t)(void*, uintptr_t, void*); typedef intptr_t (*lFppi_t)(void*, void*, int64_t); typedef intptr_t (*lFppL_t)(void*, void*, uintptr_t); typedef intptr_t (*lFppp_t)(void*, void*, void*); @@ -444,16 +482,26 @@ typedef uintptr_t (*LFppi_t)(void*, void*, int64_t); typedef uintptr_t (*LFppL_t)(void*, void*, uintptr_t); typedef uintptr_t (*LFSpL_t)(void*, void*, uintptr_t); typedef void* (*pFEip_t)(x64emu_t*, int64_t, void*); +typedef void* (*pFEup_t)(x64emu_t*, uint64_t, void*); typedef void* (*pFEpi_t)(x64emu_t*, void*, int64_t); +typedef void* (*pFEpu_t)(x64emu_t*, void*, uint64_t); typedef void* (*pFEpp_t)(x64emu_t*, void*, void*); +typedef void* (*pFEpV_t)(x64emu_t*, void*, void*); +typedef void* (*pFEpA_t)(x64emu_t*, void*, void*); typedef void* (*pFiii_t)(int64_t, int64_t, int64_t); +typedef void* (*pFiiu_t)(int64_t, int64_t, uint64_t); typedef void* (*pFiip_t)(int64_t, int64_t, void*); +typedef void* (*pFiIp_t)(int64_t, int64_t, void*); +typedef void* (*pFiup_t)(int64_t, uint64_t, void*); typedef void* (*pFipi_t)(int64_t, void*, int64_t); typedef void* (*pFipL_t)(int64_t, void*, uintptr_t); typedef void* (*pFipp_t)(int64_t, void*, void*); typedef void* (*pFIpi_t)(int64_t, void*, int64_t); +typedef void* (*pFCiW_t)(uint8_t, int64_t, uint16_t); typedef void* (*pFWWW_t)(uint16_t, uint16_t, uint16_t); typedef void* (*pFuii_t)(uint64_t, int64_t, int64_t); +typedef void* (*pFuui_t)(uint64_t, uint64_t, int64_t); +typedef void* (*pFuuu_t)(uint64_t, uint64_t, uint64_t); typedef void* (*pFupi_t)(uint64_t, void*, int64_t); typedef void* (*pFupL_t)(uint64_t, void*, uintptr_t); typedef void* (*pFUpi_t)(uint64_t, void*, int64_t); @@ -462,6 +510,7 @@ typedef void* (*pFddd_t)(double, double, double); typedef void* (*pFDip_t)(long double, int64_t, void*); typedef void* (*pFpii_t)(void*, int64_t, int64_t); typedef void* (*pFpiu_t)(void*, int64_t, uint64_t); +typedef void* (*pFpid_t)(void*, int64_t, double); typedef void* (*pFpil_t)(void*, int64_t, intptr_t); typedef void* (*pFpiL_t)(void*, int64_t, uintptr_t); typedef void* (*pFpip_t)(void*, int64_t, void*); @@ -472,11 +521,16 @@ typedef void* (*pFpuu_t)(void*, uint64_t, uint64_t); typedef void* (*pFpuL_t)(void*, uint64_t, uintptr_t); typedef void* (*pFpup_t)(void*, uint64_t, void*); typedef void* (*pFpUp_t)(void*, uint64_t, void*); +typedef void* (*pFpdu_t)(void*, double, uint64_t); +typedef void* (*pFplC_t)(void*, intptr_t, uint8_t); +typedef void* (*pFplu_t)(void*, intptr_t, uint64_t); +typedef void* (*pFpll_t)(void*, intptr_t, intptr_t); typedef void* (*pFplp_t)(void*, intptr_t, void*); typedef void* (*pFpLu_t)(void*, uintptr_t, uint64_t); typedef void* (*pFpLL_t)(void*, uintptr_t, uintptr_t); typedef void* (*pFpLp_t)(void*, uintptr_t, void*); typedef void* (*pFppi_t)(void*, void*, int64_t); +typedef void* (*pFppC_t)(void*, void*, uint8_t); typedef void* (*pFppu_t)(void*, void*, uint64_t); typedef void* (*pFppf_t)(void*, void*, float); typedef void* (*pFppl_t)(void*, void*, intptr_t); @@ -484,6 +538,7 @@ typedef void* (*pFppL_t)(void*, void*, uintptr_t); typedef void* (*pFppp_t)(void*, void*, void*); typedef void* (*pFpOM_t)(void*, int32_t, ...); typedef void* (*pFSpl_t)(void*, void*, intptr_t); +typedef void (*vFEiip_t)(x64emu_t*, int64_t, int64_t, void*); typedef void (*vFEipp_t)(x64emu_t*, int64_t, void*, void*); typedef void (*vFEipV_t)(x64emu_t*, int64_t, void*, void*); typedef void (*vFEipA_t)(x64emu_t*, int64_t, void*, void*); @@ -491,6 +546,8 @@ typedef void (*vFEpii_t)(x64emu_t*, void*, int64_t, int64_t); typedef void (*vFEpip_t)(x64emu_t*, void*, int64_t, void*); typedef void (*vFEpup_t)(x64emu_t*, void*, uint64_t, void*); typedef void (*vFEppp_t)(x64emu_t*, void*, void*, void*); +typedef void (*vFEppV_t)(x64emu_t*, void*, void*, void*); +typedef void (*vFEppA_t)(x64emu_t*, void*, void*, void*); typedef void (*vFiiii_t)(int64_t, int64_t, int64_t, int64_t); typedef void (*vFiiip_t)(int64_t, int64_t, int64_t, void*); typedef void (*vFiIII_t)(int64_t, int64_t, int64_t, int64_t); @@ -551,28 +608,46 @@ typedef void (*vFUUpi_t)(uint64_t, uint64_t, void*, int64_t); typedef void (*vFffff_t)(float, float, float, float); typedef void (*vFdddd_t)(double, double, double, double); typedef void (*vFpiii_t)(void*, int64_t, int64_t, int64_t); +typedef void (*vFpiiu_t)(void*, int64_t, int64_t, uint64_t); typedef void (*vFpiip_t)(void*, int64_t, int64_t, void*); +typedef void (*vFpiuu_t)(void*, int64_t, uint64_t, uint64_t); typedef void (*vFpiuL_t)(void*, int64_t, uint64_t, uintptr_t); typedef void (*vFpiup_t)(void*, int64_t, uint64_t, void*); +typedef void (*vFpifi_t)(void*, int64_t, float, int64_t); typedef void (*vFpipi_t)(void*, int64_t, void*, int64_t); typedef void (*vFpipp_t)(void*, int64_t, void*, void*); +typedef void (*vFpCiW_t)(void*, uint8_t, int64_t, uint16_t); +typedef void (*vFpuip_t)(void*, uint64_t, int64_t, void*); +typedef void (*vFpuui_t)(void*, uint64_t, uint64_t, int64_t); typedef void (*vFpuuu_t)(void*, uint64_t, uint64_t, uint64_t); +typedef void (*vFpuup_t)(void*, uint64_t, uint64_t, void*); typedef void (*vFpudd_t)(void*, uint64_t, double, double); typedef void (*vFpupp_t)(void*, uint64_t, void*, void*); typedef void (*vFpdii_t)(void*, double, int64_t, int64_t); +typedef void (*vFpddi_t)(void*, double, double, int64_t); typedef void (*vFpddd_t)(void*, double, double, double); typedef void (*vFpLLL_t)(void*, uintptr_t, uintptr_t, uintptr_t); typedef void (*vFppii_t)(void*, void*, int64_t, int64_t); +typedef void (*vFppiu_t)(void*, void*, int64_t, uint64_t); typedef void (*vFppid_t)(void*, void*, int64_t, double); +typedef void (*vFppiL_t)(void*, void*, int64_t, uintptr_t); typedef void (*vFppip_t)(void*, void*, int64_t, void*); typedef void (*vFppui_t)(void*, void*, uint64_t, int64_t); typedef void (*vFppuu_t)(void*, void*, uint64_t, uint64_t); typedef void (*vFppup_t)(void*, void*, uint64_t, void*); +typedef void (*vFppfi_t)(void*, void*, float, int64_t); +typedef void (*vFppdu_t)(void*, void*, double, uint64_t); typedef void (*vFppdd_t)(void*, void*, double, double); +typedef void (*vFppdp_t)(void*, void*, double, void*); +typedef void (*vFpplp_t)(void*, void*, intptr_t, void*); typedef void (*vFpppi_t)(void*, void*, void*, int64_t); +typedef void (*vFpppI_t)(void*, void*, void*, int64_t); typedef void (*vFpppu_t)(void*, void*, void*, uint64_t); +typedef void (*vFpppU_t)(void*, void*, void*, uint64_t); +typedef void (*vFpppd_t)(void*, void*, void*, double); typedef void (*vFpppL_t)(void*, void*, void*, uintptr_t); typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpppV_t)(void*, void*, void*, void*); typedef int8_t (*cFpiii_t)(void*, int64_t, int64_t, int64_t); typedef int64_t (*iFEiip_t)(x64emu_t*, int64_t, int64_t, void*); typedef int64_t (*iFEiiN_t)(x64emu_t*, int64_t, int64_t, ...); @@ -614,6 +689,7 @@ typedef int64_t (*iFippi_t)(int64_t, void*, void*, int64_t); typedef int64_t (*iFippL_t)(int64_t, void*, void*, uintptr_t); typedef int64_t (*iFippp_t)(int64_t, void*, void*, void*); typedef int64_t (*iFipON_t)(int64_t, void*, int32_t, ...); +typedef int64_t (*iFuipu_t)(uint64_t, int64_t, void*, uint64_t); typedef int64_t (*iFuipp_t)(uint64_t, int64_t, void*, void*); typedef int64_t (*iFuuff_t)(uint64_t, uint64_t, float, float); typedef int64_t (*iFuupi_t)(uint64_t, uint64_t, void*, int64_t); @@ -636,6 +712,7 @@ typedef int64_t (*iFpipC_t)(void*, int64_t, void*, uint8_t); typedef int64_t (*iFpipu_t)(void*, int64_t, void*, uint64_t); typedef int64_t (*iFpipp_t)(void*, int64_t, void*, void*); typedef int64_t (*iFpipV_t)(void*, int64_t, void*, void*); +typedef int64_t (*iFpIip_t)(void*, int64_t, int64_t, void*); typedef int64_t (*iFpCCC_t)(void*, uint8_t, uint8_t, uint8_t); typedef int64_t (*iFpWWu_t)(void*, uint16_t, uint16_t, uint64_t); typedef int64_t (*iFpuwp_t)(void*, uint64_t, int16_t, void*); @@ -646,6 +723,7 @@ typedef int64_t (*iFpuuu_t)(void*, uint64_t, uint64_t, uint64_t); typedef int64_t (*iFpuup_t)(void*, uint64_t, uint64_t, void*); typedef int64_t (*iFpuLL_t)(void*, uint64_t, uintptr_t, uintptr_t); typedef int64_t (*iFpuLp_t)(void*, uint64_t, uintptr_t, void*); +typedef int64_t (*iFpupi_t)(void*, uint64_t, void*, int64_t); typedef int64_t (*iFpupu_t)(void*, uint64_t, void*, uint64_t); typedef int64_t (*iFpupL_t)(void*, uint64_t, void*, uintptr_t); typedef int64_t (*iFpupp_t)(void*, uint64_t, void*, void*); @@ -682,8 +760,12 @@ typedef int64_t (*iFpppp_t)(void*, void*, void*, void*); typedef int64_t (*IFEpIi_t)(x64emu_t*, void*, int64_t, int64_t); typedef int64_t (*IFpIip_t)(void*, int64_t, int64_t, void*); typedef int64_t (*IFppip_t)(void*, void*, int64_t, void*); +typedef int64_t (*IFpppp_t)(void*, void*, void*, void*); typedef int64_t (*IFSIii_t)(void*, int64_t, int64_t, int64_t); +typedef uint64_t (*uFEipp_t)(x64emu_t*, int64_t, void*, void*); +typedef uint64_t (*uFEupp_t)(x64emu_t*, uint64_t, void*, void*); typedef uint64_t (*uFEpup_t)(x64emu_t*, void*, uint64_t, void*); +typedef uint64_t (*uFEppp_t)(x64emu_t*, void*, void*, void*); typedef uint64_t (*uFifff_t)(int64_t, float, float, float); typedef uint64_t (*uFuuuu_t)(uint64_t, uint64_t, uint64_t, uint64_t); typedef uint64_t (*uFpipu_t)(void*, int64_t, void*, uint64_t); @@ -692,10 +774,13 @@ typedef uint64_t (*uFpCCC_t)(void*, uint8_t, uint8_t, uint8_t); typedef uint64_t (*uFpuip_t)(void*, uint64_t, int64_t, void*); typedef uint64_t (*uFpuuu_t)(void*, uint64_t, uint64_t, uint64_t); typedef uint64_t (*uFppiu_t)(void*, void*, int64_t, uint64_t); +typedef uint64_t (*uFppLp_t)(void*, void*, uintptr_t, void*); typedef uint64_t (*uFpppi_t)(void*, void*, void*, int64_t); typedef uint64_t (*uFpppp_t)(void*, void*, void*, void*); typedef uint64_t (*UFpipp_t)(void*, int64_t, void*, void*); typedef uint64_t (*UFppip_t)(void*, void*, int64_t, void*); +typedef uint64_t (*UFpppp_t)(void*, void*, void*, void*); +typedef double (*dFpppp_t)(void*, void*, void*, void*); typedef intptr_t (*lFEpip_t)(x64emu_t*, void*, int64_t, void*); typedef intptr_t (*lFEppL_t)(x64emu_t*, void*, void*, uintptr_t); typedef intptr_t (*lFEppp_t)(x64emu_t*, void*, void*, void*); @@ -716,6 +801,7 @@ typedef intptr_t (*lFppii_t)(void*, void*, int64_t, int64_t); typedef intptr_t (*lFppip_t)(void*, void*, int64_t, void*); typedef intptr_t (*lFpppL_t)(void*, void*, void*, uintptr_t); typedef uintptr_t (*LFippL_t)(int64_t, void*, void*, uintptr_t); +typedef uintptr_t (*LFippp_t)(int64_t, void*, void*, void*); typedef uintptr_t (*LFpuuu_t)(void*, uint64_t, uint64_t, uint64_t); typedef uintptr_t (*LFpLLp_t)(void*, uintptr_t, uintptr_t, void*); typedef uintptr_t (*LFpLpp_t)(void*, uintptr_t, void*, void*); @@ -723,21 +809,29 @@ typedef uintptr_t (*LFppii_t)(void*, void*, int64_t, int64_t); typedef uintptr_t (*LFppip_t)(void*, void*, int64_t, void*); typedef uintptr_t (*LFppLL_t)(void*, void*, uintptr_t, uintptr_t); typedef uintptr_t (*LFppLp_t)(void*, void*, uintptr_t, void*); +typedef uintptr_t (*LFpppi_t)(void*, void*, void*, int64_t); typedef uintptr_t (*LFpppp_t)(void*, void*, void*, void*); typedef void* (*pFEipp_t)(x64emu_t*, int64_t, void*, void*); +typedef void* (*pFEipV_t)(x64emu_t*, int64_t, void*, void*); +typedef void* (*pFEipA_t)(x64emu_t*, int64_t, void*, void*); typedef void* (*pFEupp_t)(x64emu_t*, uint64_t, void*, void*); typedef void* (*pFEpii_t)(x64emu_t*, void*, int64_t, int64_t); typedef void* (*pFEpip_t)(x64emu_t*, void*, int64_t, void*); typedef void* (*pFEppi_t)(x64emu_t*, void*, void*, int64_t); typedef void* (*pFEppp_t)(x64emu_t*, void*, void*, void*); +typedef void* (*pFEppV_t)(x64emu_t*, void*, void*, void*); typedef void* (*pFiiii_t)(int64_t, int64_t, int64_t, int64_t); typedef void* (*pFiiiu_t)(int64_t, int64_t, int64_t, uint64_t); +typedef void* (*pFiiuu_t)(int64_t, int64_t, uint64_t, uint64_t); typedef void* (*pFiiup_t)(int64_t, int64_t, uint64_t, void*); +typedef void* (*pFipii_t)(int64_t, void*, int64_t, int64_t); +typedef void* (*pFipip_t)(int64_t, void*, int64_t, void*); typedef void* (*pFippi_t)(int64_t, void*, void*, int64_t); typedef void* (*pFippu_t)(int64_t, void*, void*, uint64_t); typedef void* (*pFuiii_t)(uint64_t, int64_t, int64_t, int64_t); typedef void* (*pFulli_t)(uint64_t, intptr_t, intptr_t, int64_t); typedef void* (*pFullu_t)(uint64_t, intptr_t, intptr_t, uint64_t); +typedef void* (*pFffff_t)(float, float, float, float); typedef void* (*pFdipp_t)(double, int64_t, void*, void*); typedef void* (*pFdddd_t)(double, double, double, double); typedef void* (*pFDipp_t)(long double, int64_t, void*, void*); @@ -747,35 +841,49 @@ typedef void* (*pFpiip_t)(void*, int64_t, int64_t, void*); typedef void* (*pFpiuu_t)(void*, int64_t, uint64_t, uint64_t); typedef void* (*pFpiLL_t)(void*, int64_t, uintptr_t, uintptr_t); typedef void* (*pFpipi_t)(void*, int64_t, void*, int64_t); +typedef void* (*pFpipd_t)(void*, int64_t, void*, double); typedef void* (*pFpipp_t)(void*, int64_t, void*, void*); +typedef void* (*pFpipV_t)(void*, int64_t, void*, void*); typedef void* (*pFpCWp_t)(void*, uint8_t, uint16_t, void*); typedef void* (*pFpCuW_t)(void*, uint8_t, uint64_t, uint16_t); typedef void* (*pFpCuu_t)(void*, uint8_t, uint64_t, uint64_t); typedef void* (*pFpuii_t)(void*, uint64_t, int64_t, int64_t); +typedef void* (*pFpuip_t)(void*, uint64_t, int64_t, void*); typedef void* (*pFpuWp_t)(void*, uint64_t, uint16_t, void*); typedef void* (*pFpuuC_t)(void*, uint64_t, uint64_t, uint8_t); typedef void* (*pFpuuu_t)(void*, uint64_t, uint64_t, uint64_t); typedef void* (*pFpuup_t)(void*, uint64_t, uint64_t, void*); typedef void* (*pFpupi_t)(void*, uint64_t, void*, int64_t); +typedef void* (*pFpupu_t)(void*, uint64_t, void*, uint64_t); +typedef void* (*pFplpl_t)(void*, intptr_t, void*, intptr_t); typedef void* (*pFplpp_t)(void*, intptr_t, void*, void*); typedef void* (*pFpLip_t)(void*, uintptr_t, int64_t, void*); typedef void* (*pFpLpL_t)(void*, uintptr_t, void*, uintptr_t); typedef void* (*pFppii_t)(void*, void*, int64_t, int64_t); +typedef void* (*pFppiu_t)(void*, void*, int64_t, uint64_t); typedef void* (*pFppiL_t)(void*, void*, int64_t, uintptr_t); typedef void* (*pFppip_t)(void*, void*, int64_t, void*); typedef void* (*pFppuW_t)(void*, void*, uint64_t, uint16_t); typedef void* (*pFppuu_t)(void*, void*, uint64_t, uint64_t); typedef void* (*pFppuL_t)(void*, void*, uint64_t, uintptr_t); typedef void* (*pFppup_t)(void*, void*, uint64_t, void*); +typedef void* (*pFppdd_t)(void*, void*, double, double); typedef void* (*pFppLL_t)(void*, void*, uintptr_t, uintptr_t); +typedef void* (*pFppLp_t)(void*, void*, uintptr_t, void*); typedef void* (*pFpppi_t)(void*, void*, void*, int64_t); typedef void* (*pFpppu_t)(void*, void*, void*, uint64_t); typedef void* (*pFpppL_t)(void*, void*, void*, uintptr_t); typedef void* (*pFpppp_t)(void*, void*, void*, void*); typedef void* (*pFSppi_t)(void*, void*, void*, int64_t); typedef void (*vFEiipV_t)(x64emu_t*, int64_t, int64_t, void*, void*); +typedef void (*vFEippp_t)(x64emu_t*, int64_t, void*, void*, void*); typedef void (*vFEpuup_t)(x64emu_t*, void*, uint64_t, uint64_t, void*); +typedef void (*vFEpuuV_t)(x64emu_t*, void*, uint64_t, uint64_t, void*); +typedef void (*vFEpupp_t)(x64emu_t*, void*, uint64_t, void*, void*); +typedef void (*vFEpupA_t)(x64emu_t*, void*, uint64_t, void*, void*); typedef void (*vFEpLLp_t)(x64emu_t*, void*, uintptr_t, uintptr_t, void*); +typedef void (*vFEppip_t)(x64emu_t*, void*, void*, int64_t, void*); +typedef void (*vFEppup_t)(x64emu_t*, void*, void*, uint64_t, void*); typedef void (*vFEpppp_t)(x64emu_t*, void*, void*, void*, void*); typedef void (*vFiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFiiiiu_t)(int64_t, int64_t, int64_t, int64_t, uint64_t); @@ -845,25 +953,42 @@ typedef void (*vFUUppp_t)(uint64_t, uint64_t, void*, void*, void*); typedef void (*vFfffff_t)(float, float, float, float, float); typedef void (*vFddddp_t)(double, double, double, double, void*); typedef void (*vFpiiii_t)(void*, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpiiiu_t)(void*, int64_t, int64_t, int64_t, uint64_t); +typedef void (*vFpiiff_t)(void*, int64_t, int64_t, float, float); typedef void (*vFpiipp_t)(void*, int64_t, int64_t, void*, void*); typedef void (*vFpipii_t)(void*, int64_t, void*, int64_t, int64_t); +typedef void (*vFpipiu_t)(void*, int64_t, void*, int64_t, uint64_t); +typedef void (*vFpuiip_t)(void*, uint64_t, int64_t, int64_t, void*); typedef void (*vFpuipp_t)(void*, uint64_t, int64_t, void*, void*); +typedef void (*vFpuipV_t)(void*, uint64_t, int64_t, void*, void*); +typedef void (*vFpuuuu_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t); typedef void (*vFpuddd_t)(void*, uint64_t, double, double, double); +typedef void (*vFpffff_t)(void*, float, float, float, float); typedef void (*vFpddii_t)(void*, double, double, int64_t, int64_t); typedef void (*vFpdddd_t)(void*, double, double, double, double); +typedef void (*vFpddpp_t)(void*, double, double, void*, void*); typedef void (*vFpliil_t)(void*, intptr_t, int64_t, int64_t, intptr_t); typedef void (*vFppiii_t)(void*, void*, int64_t, int64_t, int64_t); +typedef void (*vFppiiu_t)(void*, void*, int64_t, int64_t, uint64_t); typedef void (*vFppiip_t)(void*, void*, int64_t, int64_t, void*); typedef void (*vFppiup_t)(void*, void*, int64_t, uint64_t, void*); +typedef void (*vFppiff_t)(void*, void*, int64_t, float, float); +typedef void (*vFppipi_t)(void*, void*, int64_t, void*, int64_t); typedef void (*vFppipp_t)(void*, void*, int64_t, void*, void*); typedef void (*vFppWui_t)(void*, void*, uint16_t, uint64_t, int64_t); typedef void (*vFppuui_t)(void*, void*, uint64_t, uint64_t, int64_t); +typedef void (*vFppupi_t)(void*, void*, uint64_t, void*, int64_t); +typedef void (*vFppupp_t)(void*, void*, uint64_t, void*, void*); typedef void (*vFpppii_t)(void*, void*, void*, int64_t, int64_t); typedef void (*vFpppip_t)(void*, void*, void*, int64_t, void*); +typedef void (*vFpppuu_t)(void*, void*, void*, uint64_t, uint64_t); typedef void (*vFppppi_t)(void*, void*, void*, void*, int64_t); typedef void (*vFppppu_t)(void*, void*, void*, void*, uint64_t); +typedef void (*vFppppL_t)(void*, void*, void*, void*, uintptr_t); typedef void (*vFppppp_t)(void*, void*, void*, void*, void*); +typedef int64_t (*iFEiipp_t)(x64emu_t*, int64_t, int64_t, void*, void*); typedef int64_t (*iFEiipV_t)(x64emu_t*, int64_t, int64_t, void*, void*); +typedef int64_t (*iFEippi_t)(x64emu_t*, int64_t, void*, void*, int64_t); typedef int64_t (*iFEippp_t)(x64emu_t*, int64_t, void*, void*, void*); typedef int64_t (*iFEpiii_t)(x64emu_t*, void*, int64_t, int64_t, int64_t); typedef int64_t (*iFEpipi_t)(x64emu_t*, void*, int64_t, void*, int64_t); @@ -908,6 +1033,8 @@ typedef int64_t (*iFpiipp_t)(void*, int64_t, int64_t, void*, void*); typedef int64_t (*iFpiuwp_t)(void*, int64_t, uint64_t, int16_t, void*); typedef int64_t (*iFpipii_t)(void*, int64_t, void*, int64_t, int64_t); typedef int64_t (*iFpipiL_t)(void*, int64_t, void*, int64_t, uintptr_t); +typedef int64_t (*iFpipip_t)(void*, int64_t, void*, int64_t, void*); +typedef int64_t (*iFpippi_t)(void*, int64_t, void*, void*, int64_t); typedef int64_t (*iFpippW_t)(void*, int64_t, void*, void*, uint16_t); typedef int64_t (*iFpippp_t)(void*, int64_t, void*, void*, void*); typedef int64_t (*iFpCCCC_t)(void*, uint8_t, uint8_t, uint8_t, uint8_t); @@ -916,9 +1043,11 @@ typedef int64_t (*iFpuuui_t)(void*, uint64_t, uint64_t, uint64_t, int64_t); typedef int64_t (*iFpuuup_t)(void*, uint64_t, uint64_t, uint64_t, void*); typedef int64_t (*iFpuuLL_t)(void*, uint64_t, uint64_t, uintptr_t, uintptr_t); typedef int64_t (*iFpuupp_t)(void*, uint64_t, uint64_t, void*, void*); +typedef int64_t (*iFpuppp_t)(void*, uint64_t, void*, void*, void*); typedef int64_t (*iFplluu_t)(void*, intptr_t, intptr_t, uint64_t, uint64_t); typedef int64_t (*iFpLiLi_t)(void*, uintptr_t, int64_t, uintptr_t, int64_t); typedef int64_t (*iFpLlpp_t)(void*, uintptr_t, intptr_t, void*, void*); +typedef int64_t (*iFppiiu_t)(void*, void*, int64_t, int64_t, uint64_t); typedef int64_t (*iFppiip_t)(void*, void*, int64_t, int64_t, void*); typedef int64_t (*iFppiup_t)(void*, void*, int64_t, uint64_t, void*); typedef int64_t (*iFppiLi_t)(void*, void*, int64_t, uintptr_t, int64_t); @@ -929,20 +1058,27 @@ typedef int64_t (*iFppuip_t)(void*, void*, uint64_t, int64_t, void*); typedef int64_t (*iFppupi_t)(void*, void*, uint64_t, void*, int64_t); typedef int64_t (*iFppupp_t)(void*, void*, uint64_t, void*, void*); typedef int64_t (*iFppllp_t)(void*, void*, intptr_t, intptr_t, void*); +typedef int64_t (*iFpplpp_t)(void*, void*, intptr_t, void*, void*); +typedef int64_t (*iFppLip_t)(void*, void*, uintptr_t, int64_t, void*); typedef int64_t (*iFppLpi_t)(void*, void*, uintptr_t, void*, int64_t); typedef int64_t (*iFppLpL_t)(void*, void*, uintptr_t, void*, uintptr_t); typedef int64_t (*iFppLpp_t)(void*, void*, uintptr_t, void*, void*); typedef int64_t (*iFpppii_t)(void*, void*, void*, int64_t, int64_t); typedef int64_t (*iFpppiL_t)(void*, void*, void*, int64_t, uintptr_t); typedef int64_t (*iFpppip_t)(void*, void*, void*, int64_t, void*); +typedef int64_t (*iFpppui_t)(void*, void*, void*, uint64_t, int64_t); typedef int64_t (*iFpppLi_t)(void*, void*, void*, uintptr_t, int64_t); typedef int64_t (*iFpppLp_t)(void*, void*, void*, uintptr_t, void*); typedef int64_t (*iFppppi_t)(void*, void*, void*, void*, int64_t); typedef int64_t (*iFppppL_t)(void*, void*, void*, void*, uintptr_t); typedef int64_t (*iFppppp_t)(void*, void*, void*, void*, void*); typedef int64_t (*IFppIII_t)(void*, void*, int64_t, int64_t, int64_t); +typedef uint64_t (*uFEippp_t)(x64emu_t*, int64_t, void*, void*, void*); +typedef uint64_t (*uFEpipp_t)(x64emu_t*, void*, int64_t, void*, void*); typedef uint64_t (*uFEppuu_t)(x64emu_t*, void*, void*, uint64_t, uint64_t); +typedef uint64_t (*uFEpppp_t)(x64emu_t*, void*, void*, void*, void*); typedef uint64_t (*uFiuuuu_t)(int64_t, uint64_t, uint64_t, uint64_t, uint64_t); +typedef uint64_t (*uFipipp_t)(int64_t, void*, int64_t, void*, void*); typedef uint64_t (*uFuiiiu_t)(uint64_t, int64_t, int64_t, int64_t, uint64_t); typedef uint64_t (*uFpCCCC_t)(void*, uint8_t, uint8_t, uint8_t, uint8_t); typedef uint64_t (*uFpuuuu_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t); @@ -950,12 +1086,15 @@ typedef uint64_t (*uFppiip_t)(void*, void*, int64_t, int64_t, void*); typedef uint64_t (*uFppipp_t)(void*, void*, int64_t, void*, void*); typedef uint64_t (*uFppupp_t)(void*, void*, uint64_t, void*, void*); typedef uint64_t (*uFpplip_t)(void*, void*, intptr_t, int64_t, void*); +typedef uint64_t (*uFppLpp_t)(void*, void*, uintptr_t, void*, void*); typedef uint64_t (*uFppppu_t)(void*, void*, void*, void*, uint64_t); typedef uint64_t (*uFppppp_t)(void*, void*, void*, void*, void*); typedef uint64_t (*UFuiiii_t)(uint64_t, int64_t, int64_t, int64_t, int64_t); typedef intptr_t (*lFipili_t)(int64_t, void*, int64_t, intptr_t, int64_t); typedef intptr_t (*lFipLli_t)(int64_t, void*, uintptr_t, intptr_t, int64_t); typedef intptr_t (*lFipLLi_t)(int64_t, void*, uintptr_t, uintptr_t, int64_t); +typedef uintptr_t (*LFEpppp_t)(x64emu_t*, void*, void*, void*, void*); +typedef uintptr_t (*LFpuppi_t)(void*, uint64_t, void*, void*, int64_t); typedef uintptr_t (*LFpLLLp_t)(void*, uintptr_t, uintptr_t, uintptr_t, void*); typedef uintptr_t (*LFpLppL_t)(void*, uintptr_t, void*, void*, uintptr_t); typedef uintptr_t (*LFpLppp_t)(void*, uintptr_t, void*, void*, void*); @@ -972,13 +1111,17 @@ typedef void* (*pFEppLp_t)(x64emu_t*, void*, void*, uintptr_t, void*); typedef void* (*pFEpppi_t)(x64emu_t*, void*, void*, void*, int64_t); typedef void* (*pFEpppu_t)(x64emu_t*, void*, void*, void*, uint64_t); typedef void* (*pFEpppp_t)(x64emu_t*, void*, void*, void*, void*); +typedef void* (*pFiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFipipL_t)(int64_t, void*, int64_t, void*, uintptr_t); +typedef void* (*pFipppu_t)(int64_t, void*, void*, void*, uint64_t); typedef void* (*pFuiiiu_t)(uint64_t, int64_t, int64_t, int64_t, uint64_t); typedef void* (*pFuiipp_t)(uint64_t, int64_t, int64_t, void*, void*); typedef void* (*pFpiiii_t)(void*, int64_t, int64_t, int64_t, int64_t); +typedef void* (*pFpiiip_t)(void*, int64_t, int64_t, int64_t, void*); typedef void* (*pFpiiuu_t)(void*, int64_t, int64_t, uint64_t, uint64_t); typedef void* (*pFpiipi_t)(void*, int64_t, int64_t, void*, int64_t); typedef void* (*pFpiipp_t)(void*, int64_t, int64_t, void*, void*); +typedef void* (*pFpiCCC_t)(void*, int64_t, uint8_t, uint8_t, uint8_t); typedef void* (*pFpiuuu_t)(void*, int64_t, uint64_t, uint64_t, uint64_t); typedef void* (*pFpippi_t)(void*, int64_t, void*, void*, int64_t); typedef void* (*pFpippp_t)(void*, int64_t, void*, void*, void*); @@ -991,22 +1134,31 @@ typedef void* (*pFpuuip_t)(void*, uint64_t, uint64_t, int64_t, void*); typedef void* (*pFpuuWW_t)(void*, uint64_t, uint64_t, uint16_t, uint16_t); typedef void* (*pFpuuup_t)(void*, uint64_t, uint64_t, uint64_t, void*); typedef void* (*pFpdddd_t)(void*, double, double, double, double); +typedef void* (*pFplppp_t)(void*, intptr_t, void*, void*, void*); typedef void* (*pFppiii_t)(void*, void*, int64_t, int64_t, int64_t); typedef void* (*pFppiip_t)(void*, void*, int64_t, int64_t, void*); +typedef void* (*pFppiup_t)(void*, void*, int64_t, uint64_t, void*); typedef void* (*pFppipi_t)(void*, void*, int64_t, void*, int64_t); typedef void* (*pFppipp_t)(void*, void*, int64_t, void*, void*); typedef void* (*pFppuuu_t)(void*, void*, uint64_t, uint64_t, uint64_t); typedef void* (*pFppuup_t)(void*, void*, uint64_t, uint64_t, void*); +typedef void* (*pFppddi_t)(void*, void*, double, double, int64_t); typedef void* (*pFppLLp_t)(void*, void*, uintptr_t, uintptr_t, void*); +typedef void* (*pFpppii_t)(void*, void*, void*, int64_t, int64_t); typedef void* (*pFpppip_t)(void*, void*, void*, int64_t, void*); +typedef void* (*pFpppui_t)(void*, void*, void*, uint64_t, int64_t); typedef void* (*pFpppuu_t)(void*, void*, void*, uint64_t, uint64_t); typedef void* (*pFpppup_t)(void*, void*, void*, uint64_t, void*); typedef void* (*pFpppLi_t)(void*, void*, void*, uintptr_t, int64_t); typedef void* (*pFppppi_t)(void*, void*, void*, void*, int64_t); typedef void* (*pFppppp_t)(void*, void*, void*, void*, void*); typedef void (*vFEiiipp_t)(x64emu_t*, int64_t, int64_t, int64_t, void*, void*); +typedef void (*vFEpiLpp_t)(x64emu_t*, void*, int64_t, uintptr_t, void*, void*); +typedef void (*vFEpippp_t)(x64emu_t*, void*, int64_t, void*, void*, void*); typedef void (*vFEpuipp_t)(x64emu_t*, void*, uint64_t, int64_t, void*, void*); typedef void (*vFEpLLpp_t)(x64emu_t*, void*, uintptr_t, uintptr_t, void*, void*); +typedef void (*vFEppipV_t)(x64emu_t*, void*, void*, int64_t, void*, void*); +typedef void (*vFEppupp_t)(x64emu_t*, void*, void*, uint64_t, void*, void*); typedef void (*vFEppppp_t)(x64emu_t*, void*, void*, void*, void*, void*); typedef void (*vFiiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFiiiuil_t)(int64_t, int64_t, int64_t, uint64_t, int64_t, intptr_t); @@ -1064,32 +1216,46 @@ typedef void (*vFuppppp_t)(uint64_t, void*, void*, void*, void*, void*); typedef void (*vFffffff_t)(float, float, float, float, float, float); typedef void (*vFdddddd_t)(double, double, double, double, double, double); typedef void (*vFpiiiii_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpiiipp_t)(void*, int64_t, int64_t, int64_t, void*, void*); typedef void (*vFpiiuuu_t)(void*, int64_t, int64_t, uint64_t, uint64_t, uint64_t); typedef void (*vFpiippp_t)(void*, int64_t, int64_t, void*, void*, void*); typedef void (*vFpipipV_t)(void*, int64_t, void*, int64_t, void*, void*); typedef void (*vFpipppi_t)(void*, int64_t, void*, void*, void*, int64_t); +typedef void (*vFpuiiiu_t)(void*, uint64_t, int64_t, int64_t, int64_t, uint64_t); +typedef void (*vFpuiipp_t)(void*, uint64_t, int64_t, int64_t, void*, void*); typedef void (*vFpudddd_t)(void*, uint64_t, double, double, double, double); typedef void (*vFpdddii_t)(void*, double, double, double, int64_t, int64_t); typedef void (*vFpddddd_t)(void*, double, double, double, double, double); typedef void (*vFppiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t); typedef void (*vFppiiip_t)(void*, void*, int64_t, int64_t, int64_t, void*); +typedef void (*vFppiiui_t)(void*, void*, int64_t, int64_t, uint64_t, int64_t); typedef void (*vFppiipi_t)(void*, void*, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiipp_t)(void*, void*, int64_t, int64_t, void*, void*); typedef void (*vFppilpp_t)(void*, void*, int64_t, intptr_t, void*, void*); typedef void (*vFppippi_t)(void*, void*, int64_t, void*, void*, int64_t); typedef void (*vFppippp_t)(void*, void*, int64_t, void*, void*, void*); +typedef void (*vFppuuuu_t)(void*, void*, uint64_t, uint64_t, uint64_t, uint64_t); typedef void (*vFppupii_t)(void*, void*, uint64_t, void*, int64_t, int64_t); +typedef void (*vFppuppp_t)(void*, void*, uint64_t, void*, void*, void*); +typedef void (*vFppdidd_t)(void*, void*, double, int64_t, double, double); typedef void (*vFpplppi_t)(void*, void*, intptr_t, void*, void*, int64_t); typedef void (*vFpplppp_t)(void*, void*, intptr_t, void*, void*, void*); typedef void (*vFppLppi_t)(void*, void*, uintptr_t, void*, void*, int64_t); typedef void (*vFppLppp_t)(void*, void*, uintptr_t, void*, void*, void*); typedef void (*vFpppiii_t)(void*, void*, void*, int64_t, int64_t, int64_t); typedef void (*vFpppiip_t)(void*, void*, void*, int64_t, int64_t, void*); +typedef void (*vFpppiff_t)(void*, void*, void*, int64_t, float, float); typedef void (*vFpppipu_t)(void*, void*, void*, int64_t, void*, uint64_t); +typedef void (*vFpppuii_t)(void*, void*, void*, uint64_t, int64_t, int64_t); typedef void (*vFppppii_t)(void*, void*, void*, void*, int64_t, int64_t); typedef void (*vFpppppi_t)(void*, void*, void*, void*, void*, int64_t); +typedef void (*vFpppppu_t)(void*, void*, void*, void*, void*, uint64_t); +typedef void (*vFpppppL_t)(void*, void*, void*, void*, void*, uintptr_t); typedef void (*vFpppppp_t)(void*, void*, void*, void*, void*, void*); typedef int8_t (*cFppLppi_t)(void*, void*, uintptr_t, void*, void*, int64_t); typedef int64_t (*iFEiippi_t)(x64emu_t*, int64_t, int64_t, void*, void*, int64_t); +typedef int64_t (*iFEiippp_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*); +typedef int64_t (*iFEipppi_t)(x64emu_t*, int64_t, void*, void*, void*, int64_t); typedef int64_t (*iFElpppp_t)(x64emu_t*, intptr_t, void*, void*, void*, void*); typedef int64_t (*iFEpiipp_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*); typedef int64_t (*iFEpiipV_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*); @@ -1112,9 +1278,11 @@ typedef int64_t (*iFlpippp_t)(intptr_t, void*, int64_t, void*, void*, void*); typedef int64_t (*iFLppipp_t)(uintptr_t, void*, void*, int64_t, void*, void*); typedef int64_t (*iFpiiiii_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFpiiipp_t)(void*, int64_t, int64_t, int64_t, void*, void*); +typedef int64_t (*iFpiippu_t)(void*, int64_t, int64_t, void*, void*, uint64_t); typedef int64_t (*iFpiippp_t)(void*, int64_t, int64_t, void*, void*, void*); typedef int64_t (*iFpiuuup_t)(void*, int64_t, uint64_t, uint64_t, uint64_t, void*); typedef int64_t (*iFpiuupp_t)(void*, int64_t, uint64_t, uint64_t, void*, void*); +typedef int64_t (*iFpipipi_t)(void*, int64_t, void*, int64_t, void*, int64_t); typedef int64_t (*iFpippip_t)(void*, int64_t, void*, void*, int64_t, void*); typedef int64_t (*iFpipppL_t)(void*, int64_t, void*, void*, void*, uintptr_t); typedef int64_t (*iFpipppp_t)(void*, int64_t, void*, void*, void*, void*); @@ -1122,16 +1290,24 @@ typedef int64_t (*iFpWpppp_t)(void*, uint16_t, void*, void*, void*, void*); typedef int64_t (*iFpuiCpp_t)(void*, uint64_t, int64_t, uint8_t, void*, void*); typedef int64_t (*iFpuippp_t)(void*, uint64_t, int64_t, void*, void*, void*); typedef int64_t (*iFpupuui_t)(void*, uint64_t, void*, uint64_t, uint64_t, int64_t); +typedef int64_t (*iFppiiip_t)(void*, void*, int64_t, int64_t, int64_t, void*); typedef int64_t (*iFppiiuu_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t); typedef int64_t (*iFppiipi_t)(void*, void*, int64_t, int64_t, void*, int64_t); +typedef int64_t (*iFppiipp_t)(void*, void*, int64_t, int64_t, void*, void*); typedef int64_t (*iFppipii_t)(void*, void*, int64_t, void*, int64_t, int64_t); typedef int64_t (*iFppipiL_t)(void*, void*, int64_t, void*, int64_t, uintptr_t); +typedef int64_t (*iFppipip_t)(void*, void*, int64_t, void*, int64_t, void*); +typedef int64_t (*iFppIipp_t)(void*, void*, int64_t, int64_t, void*, void*); typedef int64_t (*iFppIppp_t)(void*, void*, int64_t, void*, void*, void*); typedef int64_t (*iFppuiii_t)(void*, void*, uint64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFppuiiL_t)(void*, void*, uint64_t, int64_t, int64_t, uintptr_t); +typedef int64_t (*iFppuipp_t)(void*, void*, uint64_t, int64_t, void*, void*); typedef int64_t (*iFppuIII_t)(void*, void*, uint64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFppuupp_t)(void*, void*, uint64_t, uint64_t, void*, void*); typedef int64_t (*iFppupip_t)(void*, void*, uint64_t, void*, int64_t, void*); +typedef int64_t (*iFppuppp_t)(void*, void*, uint64_t, void*, void*, void*); +typedef int64_t (*iFppUipp_t)(void*, void*, uint64_t, int64_t, void*, void*); +typedef int64_t (*iFppdidd_t)(void*, void*, double, int64_t, double, double); typedef int64_t (*iFpplppi_t)(void*, void*, intptr_t, void*, void*, int64_t); typedef int64_t (*iFppLupp_t)(void*, void*, uintptr_t, uint64_t, void*, void*); typedef int64_t (*iFppLpLp_t)(void*, void*, uintptr_t, void*, uintptr_t, void*); @@ -1147,8 +1323,11 @@ typedef int64_t (*iFppppup_t)(void*, void*, void*, void*, uint64_t, void*); typedef int64_t (*iFpppppi_t)(void*, void*, void*, void*, void*, int64_t); typedef int64_t (*iFpppppL_t)(void*, void*, void*, void*, void*, uintptr_t); typedef int64_t (*iFpppppp_t)(void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFEiippp_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*); +typedef uint64_t (*uFEiuppp_t)(x64emu_t*, int64_t, uint64_t, void*, void*, void*); typedef uint64_t (*uFpippup_t)(void*, int64_t, void*, void*, uint64_t, void*); typedef uint64_t (*uFpuippp_t)(void*, uint64_t, int64_t, void*, void*, void*); +typedef uint64_t (*uFppippp_t)(void*, void*, int64_t, void*, void*, void*); typedef uint64_t (*uFpppppi_t)(void*, void*, void*, void*, void*, int64_t); typedef uint64_t (*uFpppppp_t)(void*, void*, void*, void*, void*, void*); typedef uint64_t (*UFpippup_t)(void*, int64_t, void*, void*, uint64_t, void*); @@ -1157,7 +1336,9 @@ typedef intptr_t (*lFipipLu_t)(int64_t, void*, int64_t, void*, uintptr_t, uint64 typedef intptr_t (*lFipLipu_t)(int64_t, void*, uintptr_t, int64_t, void*, uint64_t); typedef intptr_t (*lFipLipp_t)(int64_t, void*, uintptr_t, int64_t, void*, void*); typedef intptr_t (*lFipLpLL_t)(int64_t, void*, uintptr_t, void*, uintptr_t, uintptr_t); +typedef uintptr_t (*LFEupppp_t)(x64emu_t*, uint64_t, void*, void*, void*, void*); typedef uintptr_t (*LFpipipi_t)(void*, int64_t, void*, int64_t, void*, int64_t); +typedef uintptr_t (*LFpLippp_t)(void*, uintptr_t, int64_t, void*, void*, void*); typedef uintptr_t (*LFSpLiip_t)(void*, void*, uintptr_t, int64_t, int64_t, void*); typedef void* (*pFEpippp_t)(x64emu_t*, void*, int64_t, void*, void*, void*); typedef void* (*pFEpuipp_t)(x64emu_t*, void*, uint64_t, int64_t, void*, void*); @@ -1180,13 +1361,21 @@ typedef void* (*pFpCuuWW_t)(void*, uint8_t, uint64_t, uint64_t, uint16_t, uint16 typedef void* (*pFpCuuup_t)(void*, uint8_t, uint64_t, uint64_t, uint64_t, void*); typedef void* (*pFpuuwwu_t)(void*, uint64_t, uint64_t, int16_t, int16_t, uint64_t); typedef void* (*pFpuuuuu_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t); +typedef void* (*pFplpppp_t)(void*, intptr_t, void*, void*, void*, void*); typedef void* (*pFppiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void* (*pFppiipp_t)(void*, void*, int64_t, int64_t, void*, void*); typedef void* (*pFppiCCC_t)(void*, void*, int64_t, uint8_t, uint8_t, uint8_t); typedef void* (*pFppippi_t)(void*, void*, int64_t, void*, void*, int64_t); typedef void* (*pFppippp_t)(void*, void*, int64_t, void*, void*, void*); +typedef void* (*pFpppiii_t)(void*, void*, void*, int64_t, int64_t, int64_t); +typedef void* (*pFpppiui_t)(void*, void*, void*, int64_t, uint64_t, int64_t); +typedef void* (*pFppppii_t)(void*, void*, void*, void*, int64_t, int64_t); +typedef void* (*pFpppppi_t)(void*, void*, void*, void*, void*, int64_t); typedef void* (*pFpppppu_t)(void*, void*, void*, void*, void*, uint64_t); typedef void* (*pFpppppp_t)(void*, void*, void*, void*, void*, void*); typedef void* (*pFSpiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFEpipppp_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*); +typedef void (*vFEpuipuV_t)(x64emu_t*, void*, uint64_t, int64_t, void*, uint64_t, void*); typedef void (*vFEpppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*); typedef void (*vFiiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*); typedef void (*vFiiiiuup_t)(int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, void*); @@ -1233,10 +1422,17 @@ typedef void (*vFulpiill_t)(uint64_t, intptr_t, void*, int64_t, int64_t, intptr_ typedef void (*vFlipuiip_t)(intptr_t, int64_t, void*, uint64_t, int64_t, int64_t, void*); typedef void (*vFpiiiipp_t)(void*, int64_t, int64_t, int64_t, int64_t, void*, void*); typedef void (*vFpiiliip_t)(void*, int64_t, int64_t, intptr_t, int64_t, int64_t, void*); +typedef void (*vFpiipCpp_t)(void*, int64_t, int64_t, void*, uint8_t, void*, void*); typedef void (*vFpipipii_t)(void*, int64_t, void*, int64_t, void*, int64_t, int64_t); +typedef void (*vFpipppii_t)(void*, int64_t, void*, void*, void*, int64_t, int64_t); typedef void (*vFpddiidd_t)(void*, double, double, int64_t, int64_t, double, double); typedef void (*vFpdddddd_t)(void*, double, double, double, double, double, double); +typedef void (*vFppiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppiiiip_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, void*); typedef void (*vFppiiipi_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiipii_t)(void*, void*, int64_t, int64_t, void*, int64_t, int64_t); +typedef void (*vFppiipuu_t)(void*, void*, int64_t, int64_t, void*, uint64_t, uint64_t); +typedef void (*vFppiippp_t)(void*, void*, int64_t, int64_t, void*, void*, void*); typedef void (*vFppilppi_t)(void*, void*, int64_t, intptr_t, void*, void*, int64_t); typedef void (*vFppipiip_t)(void*, void*, int64_t, void*, int64_t, int64_t, void*); typedef void (*vFppipipp_t)(void*, void*, int64_t, void*, int64_t, void*, void*); @@ -1246,9 +1442,17 @@ typedef void (*vFppLpppp_t)(void*, void*, uintptr_t, void*, void*, void*, void*) typedef void (*vFpppiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t); typedef void (*vFpppiipi_t)(void*, void*, void*, int64_t, int64_t, void*, int64_t); typedef void (*vFpppiipp_t)(void*, void*, void*, int64_t, int64_t, void*, void*); +typedef void (*vFpppippi_t)(void*, void*, void*, int64_t, void*, void*, int64_t); typedef void (*vFpppuuuu_t)(void*, void*, void*, uint64_t, uint64_t, uint64_t, uint64_t); +typedef void (*vFppppiii_t)(void*, void*, void*, void*, int64_t, int64_t, int64_t); +typedef void (*vFppppiip_t)(void*, void*, void*, void*, int64_t, int64_t, void*); typedef void (*vFppppipi_t)(void*, void*, void*, void*, int64_t, void*, int64_t); +typedef void (*vFpppppip_t)(void*, void*, void*, void*, void*, int64_t, void*); +typedef void (*vFppppppi_t)(void*, void*, void*, void*, void*, void*, int64_t); +typedef void (*vFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef int64_t (*iFEpupppp_t)(x64emu_t*, void*, uint64_t, void*, void*, void*, void*); typedef int64_t (*iFEpLiLpV_t)(x64emu_t*, void*, uintptr_t, int64_t, uintptr_t, void*, void*); +typedef int64_t (*iFEppuppp_t)(x64emu_t*, void*, void*, uint64_t, void*, void*, void*); typedef int64_t (*iFEppLpIi_t)(x64emu_t*, void*, void*, uintptr_t, void*, int64_t, int64_t); typedef int64_t (*iFEpppiiu_t)(x64emu_t*, void*, void*, void*, int64_t, int64_t, uint64_t); typedef int64_t (*iFEpppppL_t)(x64emu_t*, void*, void*, void*, void*, void*, uintptr_t); @@ -1280,10 +1484,12 @@ typedef int64_t (*iFppiipiL_t)(void*, void*, int64_t, int64_t, void*, int64_t, u typedef int64_t (*iFppiuppi_t)(void*, void*, int64_t, uint64_t, void*, void*, int64_t); typedef int64_t (*iFppipiip_t)(void*, void*, int64_t, void*, int64_t, int64_t, void*); typedef int64_t (*iFppipipi_t)(void*, void*, int64_t, void*, int64_t, void*, int64_t); +typedef int64_t (*iFppipipp_t)(void*, void*, int64_t, void*, int64_t, void*, void*); typedef int64_t (*iFppippip_t)(void*, void*, int64_t, void*, void*, int64_t, void*); typedef int64_t (*iFppipppi_t)(void*, void*, int64_t, void*, void*, void*, int64_t); typedef int64_t (*iFppipppp_t)(void*, void*, int64_t, void*, void*, void*, void*); typedef int64_t (*iFppuipiL_t)(void*, void*, uint64_t, int64_t, void*, int64_t, uintptr_t); +typedef int64_t (*iFppLiipp_t)(void*, void*, uintptr_t, int64_t, int64_t, void*, void*); typedef int64_t (*iFpppiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFpppiiuu_t)(void*, void*, void*, int64_t, int64_t, uint64_t, uint64_t); typedef int64_t (*iFpppiiup_t)(void*, void*, void*, int64_t, int64_t, uint64_t, void*); @@ -1295,12 +1501,18 @@ typedef int64_t (*iFpppuiii_t)(void*, void*, void*, uint64_t, int64_t, int64_t, typedef int64_t (*iFppppiii_t)(void*, void*, void*, void*, int64_t, int64_t, int64_t); typedef int64_t (*iFppppdpi_t)(void*, void*, void*, void*, double, void*, int64_t); typedef int64_t (*iFpppppip_t)(void*, void*, void*, void*, void*, int64_t, void*); +typedef int64_t (*iFpppppup_t)(void*, void*, void*, void*, void*, uint64_t, void*); +typedef int64_t (*iFppppppi_t)(void*, void*, void*, void*, void*, void*, int64_t); typedef int64_t (*iFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFEiipppp_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*, void*); +typedef uint64_t (*uFEpiippp_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*, void*); typedef uint64_t (*uFuippppp_t)(uint64_t, int64_t, void*, void*, void*, void*, void*); typedef uint64_t (*uFppiuppp_t)(void*, void*, int64_t, uint64_t, void*, void*, void*); +typedef uintptr_t (*LFEpppppu_t)(x64emu_t*, void*, void*, void*, void*, void*, uint64_t); typedef void* (*pFEpLiiii_t)(x64emu_t*, void*, uintptr_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFEpLiiiI_t)(x64emu_t*, void*, uintptr_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFEpLiiil_t)(x64emu_t*, void*, uintptr_t, int64_t, int64_t, int64_t, intptr_t); +typedef void* (*pFEppuipp_t)(x64emu_t*, void*, void*, uint64_t, int64_t, void*, void*); typedef void* (*pFEppppip_t)(x64emu_t*, void*, void*, void*, void*, int64_t, void*); typedef void* (*pFEpppppi_t)(x64emu_t*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFifffppp_t)(int64_t, float, float, float, void*, void*, void*); @@ -1312,12 +1524,36 @@ typedef void* (*pFpCuuuuu_t)(void*, uint8_t, uint64_t, uint64_t, uint64_t, uint6 typedef void* (*pFpCpWWup_t)(void*, uint8_t, void*, uint16_t, uint16_t, uint64_t, void*); typedef void* (*pFpuuuwwu_t)(void*, uint64_t, uint64_t, uint64_t, int16_t, int16_t, uint64_t); typedef void* (*pFpuupwwC_t)(void*, uint64_t, uint64_t, void*, int16_t, int16_t, uint8_t); +typedef void* (*pFplppppp_t)(void*, intptr_t, void*, void*, void*, void*, void*); +typedef void* (*pFppiiipp_t)(void*, void*, int64_t, int64_t, int64_t, void*, void*); typedef void* (*pFppiiCCC_t)(void*, void*, int64_t, int64_t, uint8_t, uint8_t, uint8_t); +typedef void* (*pFppiippp_t)(void*, void*, int64_t, int64_t, void*, void*, void*); +typedef void* (*pFppipipp_t)(void*, void*, int64_t, void*, int64_t, void*, void*); typedef void* (*pFppuuppp_t)(void*, void*, uint64_t, uint64_t, void*, void*, void*); +typedef void* (*pFppLiiip_t)(void*, void*, uintptr_t, int64_t, int64_t, int64_t, void*); +typedef void* (*pFppLipip_t)(void*, void*, uintptr_t, int64_t, void*, int64_t, void*); +typedef void* (*pFpppccci_t)(void*, void*, void*, int8_t, int8_t, int8_t, int64_t); +typedef void* (*pFpppiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void* (*pFpppiipp_t)(void*, void*, void*, int64_t, int64_t, void*, void*); +typedef void* (*pFpppIIIi_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void* (*pFpppCCCi_t)(void*, void*, void*, uint8_t, uint8_t, uint8_t, int64_t); +typedef void* (*pFpppuuui_t)(void*, void*, void*, uint64_t, uint64_t, uint64_t, int64_t); typedef void* (*pFpppuupp_t)(void*, void*, void*, uint64_t, uint64_t, void*, void*); +typedef void* (*pFpppUUUi_t)(void*, void*, void*, uint64_t, uint64_t, uint64_t, int64_t); +typedef void* (*pFpppfffi_t)(void*, void*, void*, float, float, float, int64_t); +typedef void* (*pFpppdddi_t)(void*, void*, void*, double, double, double, int64_t); +typedef void* (*pFpppllli_t)(void*, void*, void*, intptr_t, intptr_t, intptr_t, int64_t); +typedef void* (*pFpppLLLi_t)(void*, void*, void*, uintptr_t, uintptr_t, uintptr_t, int64_t); typedef void* (*pFppppuuu_t)(void*, void*, void*, void*, uint64_t, uint64_t, uint64_t); typedef void* (*pFpppppuu_t)(void*, void*, void*, void*, void*, uint64_t, uint64_t); +typedef void* (*pFppppppi_t)(void*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFEiippppV_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*, void*, void*); +typedef void (*vFEiupippp_t)(x64emu_t*, int64_t, uint64_t, void*, int64_t, void*, void*, void*); +typedef void (*vFEippippp_t)(x64emu_t*, int64_t, void*, void*, int64_t, void*, void*, void*); +typedef void (*vFEppipppp_t)(x64emu_t*, void*, void*, int64_t, void*, void*, void*, void*); +typedef void (*vFEpppuipV_t)(x64emu_t*, void*, void*, void*, uint64_t, int64_t, void*, void*); +typedef void (*vFEpppppuu_t)(x64emu_t*, void*, void*, void*, void*, void*, uint64_t, uint64_t); typedef void (*vFiiiiuuip_t)(int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, int64_t, void*); typedef void (*vFilipufip_t)(int64_t, intptr_t, int64_t, void*, uint64_t, float, int64_t, void*); typedef void (*vFuiiiiiii_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); @@ -1341,14 +1577,20 @@ typedef void (*vFuuuuufff_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, f typedef void (*vFulllplip_t)(uint64_t, intptr_t, intptr_t, intptr_t, void*, intptr_t, int64_t, void*); typedef void (*vFffffffff_t)(float, float, float, float, float, float, float, float); typedef void (*vFlipuiuip_t)(intptr_t, int64_t, void*, uint64_t, int64_t, uint64_t, int64_t, void*); +typedef void (*vFpiiiiiii_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpiiiipii_t)(void*, int64_t, int64_t, int64_t, int64_t, void*, int64_t, int64_t); typedef void (*vFpippiiuu_t)(void*, int64_t, void*, void*, int64_t, int64_t, uint64_t, uint64_t); typedef void (*vFpippiipi_t)(void*, int64_t, void*, void*, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFppiiipii_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t, int64_t); typedef void (*vFppipipii_t)(void*, void*, int64_t, void*, int64_t, void*, int64_t, int64_t); +typedef void (*vFppipppui_t)(void*, void*, int64_t, void*, void*, void*, uint64_t, int64_t); typedef void (*vFppippppi_t)(void*, void*, int64_t, void*, void*, void*, void*, int64_t); +typedef void (*vFppippppp_t)(void*, void*, int64_t, void*, void*, void*, void*, void*); typedef void (*vFpplppppi_t)(void*, void*, intptr_t, void*, void*, void*, void*, int64_t); typedef void (*vFpplppppp_t)(void*, void*, intptr_t, void*, void*, void*, void*, void*); typedef void (*vFppppiipi_t)(void*, void*, void*, void*, int64_t, int64_t, void*, int64_t); +typedef int64_t (*iFEipupupi_t)(x64emu_t*, int64_t, void*, uint64_t, void*, uint64_t, void*, int64_t); typedef int64_t (*iFEpippppp_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*, void*); typedef int64_t (*iFEpuuLppp_t)(x64emu_t*, void*, uint64_t, uint64_t, uintptr_t, void*, void*, void*); typedef int64_t (*iFEppppipp_t)(x64emu_t*, void*, void*, void*, void*, int64_t, void*, void*); @@ -1359,10 +1601,12 @@ typedef int64_t (*iFuuuuuuuu_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t typedef int64_t (*iFullfpppp_t)(uint64_t, intptr_t, intptr_t, float, void*, void*, void*, void*); typedef int64_t (*iFpWCuWCuu_t)(void*, uint16_t, uint8_t, uint64_t, uint16_t, uint8_t, uint64_t, uint64_t); typedef int64_t (*iFpWWipppp_t)(void*, uint16_t, uint16_t, int64_t, void*, void*, void*, void*); +typedef int64_t (*iFpuiipppp_t)(void*, uint64_t, int64_t, int64_t, void*, void*, void*, void*); typedef int64_t (*iFpuippLpp_t)(void*, uint64_t, int64_t, void*, void*, uintptr_t, void*, void*); typedef int64_t (*iFpuuiiiii_t)(void*, uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFpupppWWu_t)(void*, uint64_t, void*, void*, void*, uint16_t, uint16_t, uint64_t); typedef int64_t (*iFpupppppp_t)(void*, uint64_t, void*, void*, void*, void*, void*, void*); +typedef int64_t (*iFppiiiiiu_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t); typedef int64_t (*iFppIIIppp_t)(void*, void*, int64_t, int64_t, int64_t, void*, void*, void*); typedef int64_t (*iFpppiiipi_t)(void*, void*, void*, int64_t, int64_t, int64_t, void*, int64_t); typedef int64_t (*iFpppiippp_t)(void*, void*, void*, int64_t, int64_t, void*, void*, void*); @@ -1371,12 +1615,24 @@ typedef int64_t (*iFpppipppp_t)(void*, void*, void*, int64_t, void*, void*, void typedef int64_t (*iFppppiipi_t)(void*, void*, void*, void*, int64_t, int64_t, void*, int64_t); typedef int64_t (*iFppppppii_t)(void*, void*, void*, void*, void*, void*, int64_t, int64_t); typedef int64_t (*iFpppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFEipipppp_t)(x64emu_t*, int64_t, void*, int64_t, void*, void*, void*, void*); +typedef uint64_t (*uFEpiupppp_t)(x64emu_t*, void*, int64_t, uint64_t, void*, void*, void*, void*); +typedef uint64_t (*uFEppipppp_t)(x64emu_t*, void*, void*, int64_t, void*, void*, void*, void*); +typedef uint64_t (*uFEppppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*); typedef uint64_t (*uFuipppppp_t)(uint64_t, int64_t, void*, void*, void*, void*, void*, void*); typedef uint64_t (*uFppuppppp_t)(void*, void*, uint64_t, void*, void*, void*, void*, void*); +typedef uintptr_t (*LFEpiupppp_t)(x64emu_t*, void*, int64_t, uint64_t, void*, void*, void*, void*); +typedef void* (*pFEppLiiip_t)(x64emu_t*, void*, void*, uintptr_t, int64_t, int64_t, int64_t, void*); +typedef void* (*pFEpppuipV_t)(x64emu_t*, void*, void*, void*, uint64_t, int64_t, void*, void*); +typedef void* (*pFEpppppiV_t)(x64emu_t*, void*, void*, void*, void*, void*, int64_t, void*); +typedef void* (*pFEppppppi_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFEppppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFiipppppp_t)(int64_t, int64_t, void*, void*, void*, void*, void*, void*); typedef void* (*pFuiiiuuuu_t)(uint64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, uint64_t, uint64_t); typedef void* (*pFuupupipp_t)(uint64_t, uint64_t, void*, uint64_t, void*, int64_t, void*, void*); +typedef void* (*pFpiiiiiuu_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t); typedef void* (*pFpipiiiip_t)(void*, int64_t, void*, int64_t, int64_t, int64_t, int64_t, void*); +typedef void* (*pFpipppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*); typedef void* (*pFpCCuuwwC_t)(void*, uint8_t, uint8_t, uint64_t, uint64_t, int16_t, int16_t, uint8_t); typedef void* (*pFpCuwwWWu_t)(void*, uint8_t, uint64_t, int16_t, int16_t, uint16_t, uint16_t, uint64_t); typedef void* (*pFpCuuuCup_t)(void*, uint8_t, uint64_t, uint64_t, uint64_t, uint8_t, uint64_t, void*); @@ -1384,8 +1640,12 @@ typedef void* (*pFpWWiCpup_t)(void*, uint16_t, uint16_t, int64_t, uint8_t, void* typedef void* (*pFpuuWWCuu_t)(void*, uint64_t, uint64_t, uint16_t, uint16_t, uint8_t, uint64_t, uint64_t); typedef void* (*pFpuuuupup_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t, void*, uint64_t, void*); typedef void* (*pFpdwwWWui_t)(void*, double, int16_t, int16_t, uint16_t, uint16_t, uint64_t, int64_t); +typedef void* (*pFplpppppp_t)(void*, intptr_t, void*, void*, void*, void*, void*, void*); +typedef void* (*pFppiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFpppuuLLu_t)(void*, void*, void*, uint64_t, uint64_t, uintptr_t, uintptr_t, uint64_t); typedef void* (*pFpppppupp_t)(void*, void*, void*, void*, void*, uint64_t, void*, void*); +typedef void (*vFEppiipppp_t)(x64emu_t*, void*, void*, int64_t, int64_t, void*, void*, void*, void*); +typedef void (*vFEpppiippp_t)(x64emu_t*, void*, void*, void*, int64_t, int64_t, void*, void*, void*); typedef void (*vFiiiiiiiii_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFiiiiillli_t)(int64_t, int64_t, int64_t, int64_t, int64_t, intptr_t, intptr_t, intptr_t, int64_t); typedef void (*vFuiiiiiiii_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); @@ -1407,12 +1667,19 @@ typedef void (*vFddddddddd_t)(double, double, double, double, double, double, do typedef void (*vFlipuiuiip_t)(intptr_t, int64_t, void*, uint64_t, int64_t, uint64_t, int64_t, int64_t, void*); typedef void (*vFpipiuiipp_t)(void*, int64_t, void*, int64_t, uint64_t, int64_t, int64_t, void*, void*); typedef void (*vFpipppiipi_t)(void*, int64_t, void*, void*, void*, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppiiiiipi_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, void*, int64_t); typedef void (*vFppiiipiii_t)(void*, void*, int64_t, int64_t, int64_t, void*, int64_t, int64_t, int64_t); +typedef void (*vFppiipiiii_t)(void*, void*, int64_t, int64_t, void*, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppipppiii_t)(void*, void*, int64_t, void*, void*, void*, int64_t, int64_t, int64_t); +typedef void (*vFppipppiip_t)(void*, void*, int64_t, void*, void*, void*, int64_t, int64_t, void*); typedef void (*vFppuuiiiii_t)(void*, void*, uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFpplpppppi_t)(void*, void*, intptr_t, void*, void*, void*, void*, void*, int64_t); +typedef void (*vFpppiiiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFppppipiip_t)(void*, void*, void*, void*, int64_t, void*, int64_t, int64_t, void*); typedef void (*vFpppppippp_t)(void*, void*, void*, void*, void*, int64_t, void*, void*, void*); typedef int64_t (*iFEpiiiiipi_t)(x64emu_t*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, void*, int64_t); +typedef int64_t (*iFEpppipppp_t)(x64emu_t*, void*, void*, void*, int64_t, void*, void*, void*, void*); typedef int64_t (*iFEppplPPPP_t)(x64emu_t*, void*, void*, void*, intptr_t, void*, void*, void*, void*); typedef int64_t (*iFEppPPPPPP_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFiiiiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*); @@ -1424,14 +1691,19 @@ typedef int64_t (*iFpipLpiiip_t)(void*, int64_t, void*, uintptr_t, void*, int64_ typedef int64_t (*iFpuuuuuuuu_t)(void*, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t); typedef int64_t (*iFppiiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFppiuiippL_t)(void*, void*, int64_t, uint64_t, int64_t, int64_t, void*, void*, uintptr_t); +typedef int64_t (*iFppLpiippp_t)(void*, void*, uintptr_t, void*, int64_t, int64_t, void*, void*, void*); typedef int64_t (*iFpppiiipip_t)(void*, void*, void*, int64_t, int64_t, int64_t, void*, int64_t, void*); typedef int64_t (*iFpppiiuuii_t)(void*, void*, void*, int64_t, int64_t, uint64_t, uint64_t, int64_t, int64_t); typedef int64_t (*iFpppiipiiu_t)(void*, void*, void*, int64_t, int64_t, void*, int64_t, int64_t, uint64_t); typedef int64_t (*iFppppppppu_t)(void*, void*, void*, void*, void*, void*, void*, void*, uint64_t); typedef int64_t (*iFppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef uint64_t (*uFEipippppp_t)(x64emu_t*, int64_t, void*, int64_t, void*, void*, void*, void*, void*); typedef uint64_t (*uFppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef uintptr_t (*LFEppppppii_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, int64_t, int64_t); typedef void* (*pFEppiiuuLi_t)(x64emu_t*, void*, void*, int64_t, int64_t, uint64_t, uint64_t, uintptr_t, int64_t); typedef void* (*pFEppuippuu_t)(x64emu_t*, void*, void*, uint64_t, int64_t, void*, void*, uint64_t, uint64_t); +typedef void* (*pFEpppppiiV_t)(x64emu_t*, void*, void*, void*, void*, void*, int64_t, int64_t, void*); +typedef void* (*pFEpppppppi_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFpiiiiuuuu_t)(void*, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, uint64_t, uint64_t); typedef void* (*pFpCuWCCuuu_t)(void*, uint8_t, uint64_t, uint16_t, uint8_t, uint8_t, uint64_t, uint64_t, uint64_t); typedef void* (*pFpuuwwWWww_t)(void*, uint64_t, uint64_t, int16_t, int16_t, uint16_t, uint16_t, int16_t, int16_t); @@ -1439,7 +1711,12 @@ typedef void* (*pFpupuuuuup_t)(void*, uint64_t, void*, uint64_t, uint64_t, uint6 typedef void* (*pFppiiiiiip_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*); typedef void* (*pFppiiuuuLL_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t, uint64_t, uintptr_t, uintptr_t); typedef void* (*pFppipppppp_t)(void*, void*, int64_t, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpppiiiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void* (*pFpppiipppp_t)(void*, void*, void*, int64_t, int64_t, void*, void*, void*, void*); typedef void* (*pFpppppiipp_t)(void*, void*, void*, void*, void*, int64_t, int64_t, void*, void*); +typedef void (*vFEiippppppp_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFEpippppppp_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFEpppiipppp_t)(x64emu_t*, void*, void*, void*, int64_t, int64_t, void*, void*, void*, void*); typedef void (*vFiiiiiiiiiu_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t); typedef void (*vFuiiiiiiiii_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFuiiiiiiill_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, intptr_t, intptr_t); @@ -1457,6 +1734,12 @@ typedef void (*vFuuuuuuuuuu_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, typedef void (*vFuffiiffiip_t)(uint64_t, float, float, int64_t, int64_t, float, float, int64_t, int64_t, void*); typedef void (*vFuddiiddiip_t)(uint64_t, double, double, int64_t, int64_t, double, double, int64_t, int64_t, void*); typedef void (*vFffffffffff_t)(float, float, float, float, float, float, float, float, float, float); +typedef void (*vFppiiiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppiiiiipip_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, void*, int64_t, void*); +typedef void (*vFppiipppiip_t)(void*, void*, int64_t, int64_t, void*, void*, void*, int64_t, int64_t, void*); +typedef void (*vFppiippppii_t)(void*, void*, int64_t, int64_t, void*, void*, void*, void*, int64_t, int64_t); +typedef void (*vFppipppiiii_t)(void*, void*, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppuuuuiiuu_t)(void*, void*, uint64_t, uint64_t, uint64_t, uint64_t, int64_t, int64_t, uint64_t, uint64_t); typedef void (*vFppdddddddd_t)(void*, void*, double, double, double, double, double, double, double, double); typedef void (*vFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFEpupppLppL_t)(x64emu_t*, void*, uint64_t, void*, void*, void*, uintptr_t, void*, void*, uintptr_t); @@ -1468,8 +1751,12 @@ typedef int64_t (*iFpddpippppp_t)(void*, double, double, void*, int64_t, void*, typedef int64_t (*iFppuuiiiiii_t)(void*, void*, uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef int64_t (*iFppuuiiuupi_t)(void*, void*, uint64_t, uint64_t, int64_t, int64_t, uint64_t, uint64_t, void*, int64_t); typedef int64_t (*iFpppiiipipi_t)(void*, void*, void*, int64_t, int64_t, int64_t, void*, int64_t, void*, int64_t); +typedef int64_t (*iFpppLLipppp_t)(void*, void*, void*, uintptr_t, uintptr_t, int64_t, void*, void*, void*, void*); typedef int64_t (*iFppppiiuuii_t)(void*, void*, void*, void*, int64_t, int64_t, uint64_t, uint64_t, int64_t, int64_t); typedef uint64_t (*uFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFEiippppppp_t)(x64emu_t*, int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFEpiiiiiipp_t)(x64emu_t*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*, void*); +typedef void* (*pFEpippppppp_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFpCuWCCuuCW_t)(void*, uint8_t, uint64_t, uint16_t, uint8_t, uint8_t, uint64_t, uint64_t, uint8_t, uint16_t); typedef void* (*pFpuwwWWuCuu_t)(void*, uint64_t, int16_t, int16_t, uint16_t, uint16_t, uint64_t, uint8_t, uint64_t, uint64_t); typedef void* (*pFpuuuwwwwWW_t)(void*, uint64_t, uint64_t, uint64_t, int16_t, int16_t, int16_t, int16_t, uint16_t, uint16_t); @@ -1491,12 +1778,27 @@ typedef void (*vFuuddiiddiip_t)(uint64_t, uint64_t, double, double, int64_t, int typedef void (*vFuffffffffff_t)(uint64_t, float, float, float, float, float, float, float, float, float, float); typedef void (*vFpipipiipiii_t)(void*, int64_t, void*, int64_t, void*, int64_t, int64_t, void*, int64_t, int64_t, int64_t); typedef void (*vFpipppiiiipi_t)(void*, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiiiiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppiiiiipiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, void*, int64_t, int64_t, int64_t); +typedef void (*vFppiiiiddddi_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, double, double, double, double, int64_t); +typedef void (*vFppiipppiiii_t)(void*, void*, int64_t, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppipppiiiii_t)(void*, void*, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppipppuiiii_t)(void*, void*, int64_t, void*, void*, void*, uint64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef int64_t (*iFEpppipppppp_t)(x64emu_t*, void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFEppppiiiiuu_t)(x64emu_t*, void*, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t); typedef int64_t (*iFiiiiiiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*); typedef int64_t (*iFppppiiuuiiL_t)(void*, void*, void*, void*, int64_t, int64_t, uint64_t, uint64_t, int64_t, int64_t, uintptr_t); +typedef uint64_t (*uFEpiiupppiuV_t)(x64emu_t*, void*, int64_t, int64_t, uint64_t, void*, void*, void*, int64_t, uint64_t, void*); +typedef uint64_t (*uFEpiippppiup_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*, void*, void*, int64_t, uint64_t, void*); +typedef uint64_t (*uFEpiippppiuA_t)(x64emu_t*, void*, int64_t, int64_t, void*, void*, void*, void*, int64_t, uint64_t, void*); +typedef uint64_t (*uFEppppppippp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, int64_t, void*, void*, void*); typedef uint64_t (*uFppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFEpipppppppi_t)(x64emu_t*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*, int64_t); typedef void* (*pFEppiiLpppip_t)(x64emu_t*, void*, void*, int64_t, int64_t, uintptr_t, void*, void*, void*, int64_t, void*); typedef void* (*pFEppuiipuuii_t)(x64emu_t*, void*, void*, uint64_t, int64_t, int64_t, void*, uint64_t, uint64_t, int64_t, int64_t); +typedef void* (*pFpppppppiipp_t)(void*, void*, void*, void*, void*, void*, void*, int64_t, int64_t, void*, void*); +typedef void* (*pFppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void (*vFuiiiillliilp_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, intptr_t, intptr_t, intptr_t, int64_t, int64_t, intptr_t, void*); typedef void (*vFuuiiiiiiiiui_t)(uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, int64_t); typedef void (*vFuuiiiiiiiuip_t)(uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, int64_t, void*); @@ -1505,7 +1807,12 @@ typedef void (*vFuuuuuuuuuuuu_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_ typedef void (*vFffffffffffff_t)(float, float, float, float, float, float, float, float, float, float, float, float); typedef void (*vFpipppiiiipii_t)(void*, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, void*, int64_t, int64_t); typedef void (*vFpippppiiiipi_t)(void*, int64_t, void*, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, void*, int64_t); +typedef void (*vFppiiiiddddii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, double, double, double, double, int64_t, int64_t); typedef void (*vFppiiuuuiupup_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t, uint64_t, int64_t, uint64_t, void*, uint64_t, void*); +typedef void (*vFppiipppiiiii_t)(void*, void*, int64_t, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpppiiiiiiiii_t)(void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef int64_t (*iFEpppippppppp_t)(x64emu_t*, void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFEppppiiiiuui_t)(x64emu_t*, void*, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, int64_t); typedef int64_t (*iFpipllipppppp_t)(void*, int64_t, void*, intptr_t, intptr_t, int64_t, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFpipppppppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); @@ -1517,9 +1824,14 @@ typedef void* (*pFpCuuWWwwCCup_t)(void*, uint8_t, uint64_t, uint64_t, uint16_t, typedef void* (*pFpuuuWWWWWWWW_t)(void*, uint64_t, uint64_t, uint64_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t); typedef void* (*pFppiiuuuiupLp_t)(void*, void*, int64_t, int64_t, uint64_t, uint64_t, uint64_t, int64_t, uint64_t, void*, uintptr_t, void*); typedef void* (*pFpppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFEpppppppiippp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, int64_t, int64_t, void*, void*, void*); typedef void (*vFuiiiiiiiiiuup_t)(uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, void*); typedef void (*vFuuuuuuuuuuuuu_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t); typedef void (*vFuffffffffffff_t)(uint64_t, float, float, float, float, float, float, float, float, float, float, float, float); +typedef void (*vFpippppppppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFppiiiiiiiiiii_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppiipppiiiiii_t)(void*, void*, int64_t, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFddddpppddpppp_t)(double, double, double, double, void*, void*, void*, double, double, void*, void*, void*, void*); typedef int64_t (*iFpippuuuiipppp_t)(void*, int64_t, void*, void*, uint64_t, uint64_t, uint64_t, int64_t, int64_t, void*, void*, void*, void*); typedef int64_t (*iFpupiiiipppppp_t)(void*, uint64_t, void*, int64_t, int64_t, int64_t, int64_t, void*, void*, void*, void*, void*, void*); @@ -1529,25 +1841,40 @@ typedef void* (*pFpuupppwwwwWWC_t)(void*, uint64_t, uint64_t, void*, void*, void typedef void* (*pFppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void (*vFuffiiffiiffiip_t)(uint64_t, float, float, int64_t, int64_t, float, float, int64_t, int64_t, float, float, int64_t, int64_t, void*); typedef void (*vFuddiiddiiddiip_t)(uint64_t, double, double, int64_t, int64_t, double, double, int64_t, int64_t, double, double, int64_t, int64_t, void*); +typedef void (*vFppiipppiiiiiii_t)(void*, void*, int64_t, int64_t, void*, void*, void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef int64_t (*iFpipppppppppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void (*vFuuiiiiuuiiiiiii_t)(uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void (*vFfffffffffffffff_t)(float, float, float, float, float, float, float, float, float, float, float, float, float, float, float); +typedef void (*vFpppippppppppppp_t)(void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpuiippppppppppp_t)(void*, uint64_t, int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFppipppppppppppp_t)(void*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFpppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFpppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFpuuWWWWWWwwCCCuu_t)(void*, uint64_t, uint64_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, int16_t, int16_t, uint8_t, uint8_t, uint8_t, uint64_t, uint64_t); +typedef void* (*pFppipipipipipipip_t)(void*, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*); typedef void* (*pFpppppppppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFppiiiiddddiiiiiuu_t)(void*, void*, int64_t, int64_t, int64_t, int64_t, double, double, double, double, int64_t, int64_t, int64_t, int64_t, int64_t, uint64_t, uint64_t); +typedef void* (*pFppippipipipipipip_t)(void*, void*, int64_t, void*, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*, int64_t, void*); typedef void (*vFppuiiiiipuiiiiiiii_t)(void*, void*, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*, uint64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); +typedef void (*vFpppipppppppppppppp_t)(void*, void*, void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFippppppppppppppppp_t)(int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFpiiiiiiiiiiiiiiiiii_t)(void*, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t); typedef void* (*pFiiiippppppppppppppp_t)(int64_t, int64_t, int64_t, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFpippppppppppppppppp_t)(void*, int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef void* (*pFipppppppppppppppppppppp_t)(int64_t, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*, void*); #if defined(HAVE_LD80BITS) typedef long double (*DFD_t)(long double); +typedef void (*vFppippDDC_t)(void*, void*, int64_t, void*, void*, long double, long double, uint8_t); #endif #if !defined(HAVE_LD80BITS) typedef double (*KFK_t)(double); typedef double (*KFKK_t)(double, double); typedef double (*KFKp_t)(double, void*); +typedef void (*vFppippKKC_t)(void*, void*, int64_t, void*, void*, double, double, uint8_t); #endif #if defined(NOALIGN) @@ -1569,6 +1896,7 @@ void vFU(x64emu_t *emu, uintptr_t fcn) { vFU_t fn = (vFU_t)fcn; fn((uint64_t)R_R void vFf(x64emu_t *emu, uintptr_t fcn) { vFf_t fn = (vFf_t)fcn; fn(emu->xmm[0].f[0]); } void vFd(x64emu_t *emu, uintptr_t fcn) { vFd_t fn = (vFd_t)fcn; fn(emu->xmm[0].d[0]); } void vFl(x64emu_t *emu, uintptr_t fcn) { vFl_t fn = (vFl_t)fcn; fn((intptr_t)R_RDI); } +void vFL(x64emu_t *emu, uintptr_t fcn) { vFL_t fn = (vFL_t)fcn; fn((uintptr_t)R_RDI); } void vFp(x64emu_t *emu, uintptr_t fcn) { vFp_t fn = (vFp_t)fcn; fn((void*)R_RDI); } void vFS(x64emu_t *emu, uintptr_t fcn) { vFS_t fn = (vFS_t)fcn; fn(io_convert((void*)R_RDI)); } void cFv(x64emu_t *emu, uintptr_t fcn) { cFv_t fn = (cFv_t)fcn; R_RAX=fn(); } @@ -1582,6 +1910,8 @@ void iFv(x64emu_t *emu, uintptr_t fcn) { iFv_t fn = (iFv_t)fcn; R_RAX=(int64_t)f void iFw(x64emu_t *emu, uintptr_t fcn) { iFw_t fn = (iFw_t)fcn; R_RAX=(int64_t)fn((int16_t)R_RDI); } void iFi(x64emu_t *emu, uintptr_t fcn) { iFi_t fn = (iFi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI); } void iFI(x64emu_t *emu, uintptr_t fcn) { iFI_t fn = (iFI_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI); } +void iFC(x64emu_t *emu, uintptr_t fcn) { iFC_t fn = (iFC_t)fcn; R_RAX=(int64_t)fn((uint8_t)R_RDI); } +void iFW(x64emu_t *emu, uintptr_t fcn) { iFW_t fn = (iFW_t)fcn; R_RAX=(int64_t)fn((uint16_t)R_RDI); } void iFu(x64emu_t *emu, uintptr_t fcn) { iFu_t fn = (iFu_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI); } void iFU(x64emu_t *emu, uintptr_t fcn) { iFU_t fn = (iFU_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI); } void iFf(x64emu_t *emu, uintptr_t fcn) { iFf_t fn = (iFf_t)fcn; R_RAX=(int64_t)fn(emu->xmm[0].f[0]); } @@ -1592,10 +1922,13 @@ void iFL(x64emu_t *emu, uintptr_t fcn) { iFL_t fn = (iFL_t)fcn; R_RAX=(int64_t)f void iFp(x64emu_t *emu, uintptr_t fcn) { iFp_t fn = (iFp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI); } void iFO(x64emu_t *emu, uintptr_t fcn) { iFO_t fn = (iFO_t)fcn; R_RAX=(int64_t)fn(of_convert((int32_t)R_RDI)); } void iFS(x64emu_t *emu, uintptr_t fcn) { iFS_t fn = (iFS_t)fcn; R_RAX=(int64_t)fn(io_convert((void*)R_RDI)); } +void IFv(x64emu_t *emu, uintptr_t fcn) { IFv_t fn = (IFv_t)fcn; R_RAX=(int64_t)fn(); } +void IFi(x64emu_t *emu, uintptr_t fcn) { IFi_t fn = (IFi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI); } void IFI(x64emu_t *emu, uintptr_t fcn) { IFI_t fn = (IFI_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI); } void IFf(x64emu_t *emu, uintptr_t fcn) { IFf_t fn = (IFf_t)fcn; R_RAX=(int64_t)fn(emu->xmm[0].f[0]); } void IFd(x64emu_t *emu, uintptr_t fcn) { IFd_t fn = (IFd_t)fcn; R_RAX=(int64_t)fn(emu->xmm[0].d[0]); } void IFp(x64emu_t *emu, uintptr_t fcn) { IFp_t fn = (IFp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI); } +void CFC(x64emu_t *emu, uintptr_t fcn) { CFC_t fn = (CFC_t)fcn; R_RAX=(unsigned char)fn((uint8_t)R_RDI); } void CFp(x64emu_t *emu, uintptr_t fcn) { CFp_t fn = (CFp_t)fcn; R_RAX=(unsigned char)fn((void*)R_RDI); } void WFi(x64emu_t *emu, uintptr_t fcn) { WFi_t fn = (WFi_t)fcn; R_RAX=(unsigned short)fn((int64_t)R_RDI); } void WFW(x64emu_t *emu, uintptr_t fcn) { WFW_t fn = (WFW_t)fcn; R_RAX=(unsigned short)fn((uint16_t)R_RDI); } @@ -1625,13 +1958,18 @@ void lFi(x64emu_t *emu, uintptr_t fcn) { lFi_t fn = (lFi_t)fcn; R_RAX=(intptr_t) void lFl(x64emu_t *emu, uintptr_t fcn) { lFl_t fn = (lFl_t)fcn; R_RAX=(intptr_t)fn((intptr_t)R_RDI); } void lFp(x64emu_t *emu, uintptr_t fcn) { lFp_t fn = (lFp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI); } void LFv(x64emu_t *emu, uintptr_t fcn) { LFv_t fn = (LFv_t)fcn; R_RAX=(uintptr_t)fn(); } +void LFu(x64emu_t *emu, uintptr_t fcn) { LFu_t fn = (LFu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI); } void LFL(x64emu_t *emu, uintptr_t fcn) { LFL_t fn = (LFL_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI); } void LFp(x64emu_t *emu, uintptr_t fcn) { LFp_t fn = (LFp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI); } void pFE(x64emu_t *emu, uintptr_t fcn) { pFE_t fn = (pFE_t)fcn; R_RAX=(uintptr_t)fn(emu); } void pFv(x64emu_t *emu, uintptr_t fcn) { pFv_t fn = (pFv_t)fcn; R_RAX=(uintptr_t)fn(); } +void pFw(x64emu_t *emu, uintptr_t fcn) { pFw_t fn = (pFw_t)fcn; R_RAX=(uintptr_t)fn((int16_t)R_RDI); } void pFi(x64emu_t *emu, uintptr_t fcn) { pFi_t fn = (pFi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI); } +void pFI(x64emu_t *emu, uintptr_t fcn) { pFI_t fn = (pFI_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI); } +void pFC(x64emu_t *emu, uintptr_t fcn) { pFC_t fn = (pFC_t)fcn; R_RAX=(uintptr_t)fn((uint8_t)R_RDI); } void pFW(x64emu_t *emu, uintptr_t fcn) { pFW_t fn = (pFW_t)fcn; R_RAX=(uintptr_t)fn((uint16_t)R_RDI); } void pFu(x64emu_t *emu, uintptr_t fcn) { pFu_t fn = (pFu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI); } +void pFU(x64emu_t *emu, uintptr_t fcn) { pFU_t fn = (pFU_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI); } void pFd(x64emu_t *emu, uintptr_t fcn) { pFd_t fn = (pFd_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].d[0]); } void pFl(x64emu_t *emu, uintptr_t fcn) { pFl_t fn = (pFl_t)fcn; R_RAX=(uintptr_t)fn((intptr_t)R_RDI); } void pFL(x64emu_t *emu, uintptr_t fcn) { pFL_t fn = (pFL_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI); } @@ -1664,8 +2002,13 @@ void vFdd(x64emu_t *emu, uintptr_t fcn) { vFdd_t fn = (vFdd_t)fcn; fn(emu->xmm[0 void vFlp(x64emu_t *emu, uintptr_t fcn) { vFlp_t fn = (vFlp_t)fcn; fn((intptr_t)R_RDI, (void*)R_RSI); } void vFLL(x64emu_t *emu, uintptr_t fcn) { vFLL_t fn = (vFLL_t)fcn; fn((uintptr_t)R_RDI, (uintptr_t)R_RSI); } void vFLp(x64emu_t *emu, uintptr_t fcn) { vFLp_t fn = (vFLp_t)fcn; fn((uintptr_t)R_RDI, (void*)R_RSI); } +void vFpc(x64emu_t *emu, uintptr_t fcn) { vFpc_t fn = (vFpc_t)fcn; fn((void*)R_RDI, (int8_t)R_RSI); } void vFpi(x64emu_t *emu, uintptr_t fcn) { vFpi_t fn = (vFpi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI); } +void vFpI(x64emu_t *emu, uintptr_t fcn) { vFpI_t fn = (vFpI_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI); } +void vFpC(x64emu_t *emu, uintptr_t fcn) { vFpC_t fn = (vFpC_t)fcn; fn((void*)R_RDI, (uint8_t)R_RSI); } +void vFpW(x64emu_t *emu, uintptr_t fcn) { vFpW_t fn = (vFpW_t)fcn; fn((void*)R_RDI, (uint16_t)R_RSI); } void vFpu(x64emu_t *emu, uintptr_t fcn) { vFpu_t fn = (vFpu_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI); } +void vFpU(x64emu_t *emu, uintptr_t fcn) { vFpU_t fn = (vFpU_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI); } void vFpf(x64emu_t *emu, uintptr_t fcn) { vFpf_t fn = (vFpf_t)fcn; fn((void*)R_RDI, emu->xmm[0].f[0]); } void vFpd(x64emu_t *emu, uintptr_t fcn) { vFpd_t fn = (vFpd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0]); } void vFpl(x64emu_t *emu, uintptr_t fcn) { vFpl_t fn = (vFpl_t)fcn; fn((void*)R_RDI, (intptr_t)R_RSI); } @@ -1709,6 +2052,7 @@ void IFEp(x64emu_t *emu, uintptr_t fcn) { IFEp_t fn = (IFEp_t)fcn; R_RAX=(int64_ void IFpi(x64emu_t *emu, uintptr_t fcn) { IFpi_t fn = (IFpi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI); } void IFpu(x64emu_t *emu, uintptr_t fcn) { IFpu_t fn = (IFpu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI); } void IFpd(x64emu_t *emu, uintptr_t fcn) { IFpd_t fn = (IFpd_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, emu->xmm[0].d[0]); } +void CFip(x64emu_t *emu, uintptr_t fcn) { CFip_t fn = (CFip_t)fcn; R_RAX=(unsigned char)fn((int64_t)R_RDI, (void*)R_RSI); } void CFui(x64emu_t *emu, uintptr_t fcn) { CFui_t fn = (CFui_t)fcn; R_RAX=(unsigned char)fn((uint64_t)R_RDI, (int64_t)R_RSI); } void CFpi(x64emu_t *emu, uintptr_t fcn) { CFpi_t fn = (CFpi_t)fcn; R_RAX=(unsigned char)fn((void*)R_RDI, (int64_t)R_RSI); } void CFpu(x64emu_t *emu, uintptr_t fcn) { CFpu_t fn = (CFpu_t)fcn; R_RAX=(unsigned char)fn((void*)R_RDI, (uint64_t)R_RSI); } @@ -1730,6 +2074,7 @@ void UFEp(x64emu_t *emu, uintptr_t fcn) { UFEp_t fn = (UFEp_t)fcn; R_RAX=fn(emu, void UFuu(x64emu_t *emu, uintptr_t fcn) { UFuu_t fn = (UFuu_t)fcn; R_RAX=fn((uint64_t)R_RDI, (uint64_t)R_RSI); } void UFUp(x64emu_t *emu, uintptr_t fcn) { UFUp_t fn = (UFUp_t)fcn; R_RAX=fn((uint64_t)R_RDI, (void*)R_RSI); } void UFpp(x64emu_t *emu, uintptr_t fcn) { UFpp_t fn = (UFpp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI); } +void fFEp(x64emu_t *emu, uintptr_t fcn) { fFEp_t fn = (fFEp_t)fcn; emu->xmm[0].f[0]=fn(emu, (void*)R_RDI); } void fFif(x64emu_t *emu, uintptr_t fcn) { fFif_t fn = (fFif_t)fcn; emu->xmm[0].f[0]=fn((int64_t)R_RDI, emu->xmm[0].f[0]); } void fFfi(x64emu_t *emu, uintptr_t fcn) { fFfi_t fn = (fFfi_t)fcn; emu->xmm[0].f[0]=fn(emu->xmm[0].f[0], (int64_t)R_RDI); } void fFff(x64emu_t *emu, uintptr_t fcn) { fFff_t fn = (fFff_t)fcn; emu->xmm[0].f[0]=fn(emu->xmm[0].f[0], emu->xmm[1].f[0]); } @@ -1743,6 +2088,7 @@ void dFdD(x64emu_t *emu, uintptr_t fcn) { dFdD_t fn = (dFdD_t)fcn; emu->xmm[0].d void dFdp(x64emu_t *emu, uintptr_t fcn) { dFdp_t fn = (dFdp_t)fcn; emu->xmm[0].d[0]=fn(emu->xmm[0].d[0], (void*)R_RDI); } void dFll(x64emu_t *emu, uintptr_t fcn) { dFll_t fn = (dFll_t)fcn; emu->xmm[0].d[0]=fn((intptr_t)R_RDI, (intptr_t)R_RSI); } void dFpi(x64emu_t *emu, uintptr_t fcn) { dFpi_t fn = (dFpi_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (int64_t)R_RSI); } +void dFpd(x64emu_t *emu, uintptr_t fcn) { dFpd_t fn = (dFpd_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, emu->xmm[0].d[0]); } void dFpp(x64emu_t *emu, uintptr_t fcn) { dFpp_t fn = (dFpp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI); } void DFDi(x64emu_t *emu, uintptr_t fcn) { DFDi_t fn = (DFDi_t)fcn; long double ld=fn(LD2localLD((void*)(R_RSP + 8)), (int64_t)R_RDI); fpu_do_push(emu); ST0val = ld; } void DFDD(x64emu_t *emu, uintptr_t fcn) { DFDD_t fn = (DFDD_t)fcn; long double ld=fn(LD2localLD((void*)(R_RSP + 8)), LD2localLD((void*)(R_RSP + 24))); fpu_do_push(emu); ST0val = ld; } @@ -1759,20 +2105,28 @@ void LFLi(x64emu_t *emu, uintptr_t fcn) { LFLi_t fn = (LFLi_t)fcn; R_RAX=(uintpt void LFpi(x64emu_t *emu, uintptr_t fcn) { LFpi_t fn = (LFpi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI); } void LFpL(x64emu_t *emu, uintptr_t fcn) { LFpL_t fn = (LFpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI); } void LFpp(x64emu_t *emu, uintptr_t fcn) { LFpp_t fn = (LFpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI); } +void pFEi(x64emu_t *emu, uintptr_t fcn) { pFEi_t fn = (pFEi_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI); } void pFEp(x64emu_t *emu, uintptr_t fcn) { pFEp_t fn = (pFEp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI); } void pFii(x64emu_t *emu, uintptr_t fcn) { pFii_t fn = (pFii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI); } void pFiu(x64emu_t *emu, uintptr_t fcn) { pFiu_t fn = (pFiu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (uint64_t)R_RSI); } void pFip(x64emu_t *emu, uintptr_t fcn) { pFip_t fn = (pFip_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI); } +void pFiV(x64emu_t *emu, uintptr_t fcn) { pFiV_t fn = (pFiV_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)(R_RSP + 8)); } void pFui(x64emu_t *emu, uintptr_t fcn) { pFui_t fn = (pFui_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI); } +void pFuC(x64emu_t *emu, uintptr_t fcn) { pFuC_t fn = (pFuC_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (uint8_t)R_RSI); } void pFuu(x64emu_t *emu, uintptr_t fcn) { pFuu_t fn = (pFuu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI); } void pFup(x64emu_t *emu, uintptr_t fcn) { pFup_t fn = (pFup_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)R_RSI); } +void pFuV(x64emu_t *emu, uintptr_t fcn) { pFuV_t fn = (pFuV_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)(R_RSP + 8)); } +void pFUi(x64emu_t *emu, uintptr_t fcn) { pFUi_t fn = (pFUi_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI); } void pFdd(x64emu_t *emu, uintptr_t fcn) { pFdd_t fn = (pFdd_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].d[0], emu->xmm[1].d[0]); } void pFlp(x64emu_t *emu, uintptr_t fcn) { pFlp_t fn = (pFlp_t)fcn; R_RAX=(uintptr_t)fn((intptr_t)R_RDI, (void*)R_RSI); } void pFLL(x64emu_t *emu, uintptr_t fcn) { pFLL_t fn = (pFLL_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (uintptr_t)R_RSI); } +void pFLp(x64emu_t *emu, uintptr_t fcn) { pFLp_t fn = (pFLp_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (void*)R_RSI); } void pFpi(x64emu_t *emu, uintptr_t fcn) { pFpi_t fn = (pFpi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI); } void pFpC(x64emu_t *emu, uintptr_t fcn) { pFpC_t fn = (pFpC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI); } void pFpu(x64emu_t *emu, uintptr_t fcn) { pFpu_t fn = (pFpu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI); } void pFpU(x64emu_t *emu, uintptr_t fcn) { pFpU_t fn = (pFpU_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI); } +void pFpd(x64emu_t *emu, uintptr_t fcn) { pFpd_t fn = (pFpd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0]); } +void pFpl(x64emu_t *emu, uintptr_t fcn) { pFpl_t fn = (pFpl_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI); } void pFpL(x64emu_t *emu, uintptr_t fcn) { pFpL_t fn = (pFpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI); } void pFpp(x64emu_t *emu, uintptr_t fcn) { pFpp_t fn = (pFpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI); } void pFpV(x64emu_t *emu, uintptr_t fcn) { pFpV_t fn = (pFpV_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)(R_RSP + 8)); } @@ -1814,12 +2168,15 @@ void vFudd(x64emu_t *emu, uintptr_t fcn) { vFudd_t fn = (vFudd_t)fcn; fn((uint64 void vFull(x64emu_t *emu, uintptr_t fcn) { vFull_t fn = (vFull_t)fcn; fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void vFulp(x64emu_t *emu, uintptr_t fcn) { vFulp_t fn = (vFulp_t)fcn; fn((uint64_t)R_RDI, (intptr_t)R_RSI, (void*)R_RDX); } void vFupu(x64emu_t *emu, uintptr_t fcn) { vFupu_t fn = (vFupu_t)fcn; fn((uint64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } +void vFupp(x64emu_t *emu, uintptr_t fcn) { vFupp_t fn = (vFupp_t)fcn; fn((uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void vFfff(x64emu_t *emu, uintptr_t fcn) { vFfff_t fn = (vFfff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); } void vFfpp(x64emu_t *emu, uintptr_t fcn) { vFfpp_t fn = (vFfpp_t)fcn; fn(emu->xmm[0].f[0], (void*)R_RDI, (void*)R_RSI); } void vFddd(x64emu_t *emu, uintptr_t fcn) { vFddd_t fn = (vFddd_t)fcn; fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); } void vFdpp(x64emu_t *emu, uintptr_t fcn) { vFdpp_t fn = (vFdpp_t)fcn; fn(emu->xmm[0].d[0], (void*)R_RDI, (void*)R_RSI); } +void vFLpL(x64emu_t *emu, uintptr_t fcn) { vFLpL_t fn = (vFLpL_t)fcn; fn((uintptr_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void vFLpp(x64emu_t *emu, uintptr_t fcn) { vFLpp_t fn = (vFLpp_t)fcn; fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void vFpii(x64emu_t *emu, uintptr_t fcn) { vFpii_t fn = (vFpii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } +void vFpiC(x64emu_t *emu, uintptr_t fcn) { vFpiC_t fn = (vFpiC_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (uint8_t)R_RDX); } void vFpiu(x64emu_t *emu, uintptr_t fcn) { vFpiu_t fn = (vFpiu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX); } void vFpif(x64emu_t *emu, uintptr_t fcn) { vFpif_t fn = (vFpif_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, emu->xmm[0].f[0]); } void vFpid(x64emu_t *emu, uintptr_t fcn) { vFpid_t fn = (vFpid_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, emu->xmm[0].d[0]); } @@ -1828,6 +2185,7 @@ void vFpui(x64emu_t *emu, uintptr_t fcn) { vFpui_t fn = (vFpui_t)fcn; fn((void*) void vFpuI(x64emu_t *emu, uintptr_t fcn) { vFpuI_t fn = (vFpuI_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX); } void vFpuu(x64emu_t *emu, uintptr_t fcn) { vFpuu_t fn = (vFpuu_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } void vFpup(x64emu_t *emu, uintptr_t fcn) { vFpup_t fn = (vFpup_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } +void vFpff(x64emu_t *emu, uintptr_t fcn) { vFpff_t fn = (vFpff_t)fcn; fn((void*)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0]); } void vFpdd(x64emu_t *emu, uintptr_t fcn) { vFpdd_t fn = (vFpdd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } void vFpll(x64emu_t *emu, uintptr_t fcn) { vFpll_t fn = (vFpll_t)fcn; fn((void*)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void vFpLi(x64emu_t *emu, uintptr_t fcn) { vFpLi_t fn = (vFpLi_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX); } @@ -1839,6 +2197,7 @@ void vFppd(x64emu_t *emu, uintptr_t fcn) { vFppd_t fn = (vFppd_t)fcn; fn((void*) void vFppl(x64emu_t *emu, uintptr_t fcn) { vFppl_t fn = (vFppl_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX); } void vFppL(x64emu_t *emu, uintptr_t fcn) { vFppL_t fn = (vFppL_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void vFppp(x64emu_t *emu, uintptr_t fcn) { vFppp_t fn = (vFppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } +void vFppV(x64emu_t *emu, uintptr_t fcn) { vFppV_t fn = (vFppV_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } void iFEiw(x64emu_t *emu, uintptr_t fcn) { iFEiw_t fn = (iFEiw_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int16_t)R_RSI); } void iFEip(x64emu_t *emu, uintptr_t fcn) { iFEip_t fn = (iFEip_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI); } void iFEWW(x64emu_t *emu, uintptr_t fcn) { iFEWW_t fn = (iFEWW_t)fcn; R_RAX=(int64_t)fn(emu, (uint16_t)R_RDI, (uint16_t)R_RSI); } @@ -1868,6 +2227,7 @@ void iFipu(x64emu_t *emu, uintptr_t fcn) { iFipu_t fn = (iFipu_t)fcn; R_RAX=(int void iFipL(x64emu_t *emu, uintptr_t fcn) { iFipL_t fn = (iFipL_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void iFipp(x64emu_t *emu, uintptr_t fcn) { iFipp_t fn = (iFipp_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void iFipO(x64emu_t *emu, uintptr_t fcn) { iFipO_t fn = (iFipO_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, of_convert((int32_t)R_RDX)); } +void iFCiW(x64emu_t *emu, uintptr_t fcn) { iFCiW_t fn = (iFCiW_t)fcn; R_RAX=(int64_t)fn((uint8_t)R_RDI, (int64_t)R_RSI, (uint16_t)R_RDX); } void iFuwp(x64emu_t *emu, uintptr_t fcn) { iFuwp_t fn = (iFuwp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (int16_t)R_RSI, (void*)R_RDX); } void iFuui(x64emu_t *emu, uintptr_t fcn) { iFuui_t fn = (iFuui_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX); } void iFuuu(x64emu_t *emu, uintptr_t fcn) { iFuuu_t fn = (iFuuu_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } @@ -1887,6 +2247,7 @@ void iFpii(x64emu_t *emu, uintptr_t fcn) { iFpii_t fn = (iFpii_t)fcn; R_RAX=(int void iFpiu(x64emu_t *emu, uintptr_t fcn) { iFpiu_t fn = (iFpiu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX); } void iFpiL(x64emu_t *emu, uintptr_t fcn) { iFpiL_t fn = (iFpiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (uintptr_t)R_RDX); } void iFpip(x64emu_t *emu, uintptr_t fcn) { iFpip_t fn = (iFpip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } +void iFpIi(x64emu_t *emu, uintptr_t fcn) { iFpIi_t fn = (iFpIi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void iFpui(x64emu_t *emu, uintptr_t fcn) { iFpui_t fn = (iFpui_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX); } void iFpuu(x64emu_t *emu, uintptr_t fcn) { iFpuu_t fn = (iFpuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } void iFpuU(x64emu_t *emu, uintptr_t fcn) { iFpuU_t fn = (iFpuU_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } @@ -1917,6 +2278,7 @@ void iFSpL(x64emu_t *emu, uintptr_t fcn) { iFSpL_t fn = (iFSpL_t)fcn; R_RAX=(int void IFiIi(x64emu_t *emu, uintptr_t fcn) { IFiIi_t fn = (IFiIi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void IFpIi(x64emu_t *emu, uintptr_t fcn) { IFpIi_t fn = (IFpIi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void IFppi(x64emu_t *emu, uintptr_t fcn) { IFppi_t fn = (IFppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } +void IFppu(x64emu_t *emu, uintptr_t fcn) { IFppu_t fn = (IFppu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } void IFSIi(x64emu_t *emu, uintptr_t fcn) { IFSIi_t fn = (IFSIi_t)fcn; R_RAX=(int64_t)fn(io_convert((void*)R_RDI), (int64_t)R_RSI, (int64_t)R_RDX); } void uFEpW(x64emu_t *emu, uintptr_t fcn) { uFEpW_t fn = (uFEpW_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (uint16_t)R_RSI); } void uFEpu(x64emu_t *emu, uintptr_t fcn) { uFEpu_t fn = (uFEpu_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI); } @@ -1939,6 +2301,7 @@ void uFppi(x64emu_t *emu, uintptr_t fcn) { uFppi_t fn = (uFppi_t)fcn; R_RAX=(uin void uFppu(x64emu_t *emu, uintptr_t fcn) { uFppu_t fn = (uFppu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } void uFppp(x64emu_t *emu, uintptr_t fcn) { uFppp_t fn = (uFppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void UFppi(x64emu_t *emu, uintptr_t fcn) { UFppi_t fn = (UFppi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } +void UFppu(x64emu_t *emu, uintptr_t fcn) { UFppu_t fn = (UFppu_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } void fFull(x64emu_t *emu, uintptr_t fcn) { fFull_t fn = (fFull_t)fcn; emu->xmm[0].f[0]=fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void fFfff(x64emu_t *emu, uintptr_t fcn) { fFfff_t fn = (fFfff_t)fcn; emu->xmm[0].f[0]=fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); } void fFffp(x64emu_t *emu, uintptr_t fcn) { fFffp_t fn = (fFffp_t)fcn; emu->xmm[0].f[0]=fn(emu->xmm[0].f[0], emu->xmm[1].f[0], (void*)R_RDI); } @@ -1946,6 +2309,7 @@ void fFppL(x64emu_t *emu, uintptr_t fcn) { fFppL_t fn = (fFppL_t)fcn; emu->xmm[0 void fFppp(x64emu_t *emu, uintptr_t fcn) { fFppp_t fn = (fFppp_t)fcn; emu->xmm[0].f[0]=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void dFddd(x64emu_t *emu, uintptr_t fcn) { dFddd_t fn = (dFddd_t)fcn; emu->xmm[0].d[0]=fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); } void dFddp(x64emu_t *emu, uintptr_t fcn) { dFddp_t fn = (dFddp_t)fcn; emu->xmm[0].d[0]=fn(emu->xmm[0].d[0], emu->xmm[1].d[0], (void*)R_RDI); } +void dFpdd(x64emu_t *emu, uintptr_t fcn) { dFpdd_t fn = (dFpdd_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } void dFppi(x64emu_t *emu, uintptr_t fcn) { dFppi_t fn = (dFppi_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void dFppp(x64emu_t *emu, uintptr_t fcn) { dFppp_t fn = (dFppp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void DFppp(x64emu_t *emu, uintptr_t fcn) { DFppp_t fn = (DFppp_t)fcn; long double ld=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); fpu_do_push(emu); ST0val = ld; } @@ -1957,6 +2321,7 @@ void lFlll(x64emu_t *emu, uintptr_t fcn) { lFlll_t fn = (lFlll_t)fcn; R_RAX=(int void lFlpi(x64emu_t *emu, uintptr_t fcn) { lFlpi_t fn = (lFlpi_t)fcn; R_RAX=(intptr_t)fn((intptr_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void lFpli(x64emu_t *emu, uintptr_t fcn) { lFpli_t fn = (lFpli_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (int64_t)R_RDX); } void lFpLu(x64emu_t *emu, uintptr_t fcn) { lFpLu_t fn = (lFpLu_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uint64_t)R_RDX); } +void lFpLp(x64emu_t *emu, uintptr_t fcn) { lFpLp_t fn = (lFpLp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX); } void lFppi(x64emu_t *emu, uintptr_t fcn) { lFppi_t fn = (lFppi_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void lFppL(x64emu_t *emu, uintptr_t fcn) { lFppL_t fn = (lFppL_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void lFppp(x64emu_t *emu, uintptr_t fcn) { lFppp_t fn = (lFppp_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } @@ -1973,16 +2338,26 @@ void LFppi(x64emu_t *emu, uintptr_t fcn) { LFppi_t fn = (LFppi_t)fcn; R_RAX=(uin void LFppL(x64emu_t *emu, uintptr_t fcn) { LFppL_t fn = (LFppL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void LFSpL(x64emu_t *emu, uintptr_t fcn) { LFSpL_t fn = (LFSpL_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (uintptr_t)R_RDX); } void pFEip(x64emu_t *emu, uintptr_t fcn) { pFEip_t fn = (pFEip_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI); } +void pFEup(x64emu_t *emu, uintptr_t fcn) { pFEup_t fn = (pFEup_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI); } void pFEpi(x64emu_t *emu, uintptr_t fcn) { pFEpi_t fn = (pFEpi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI); } +void pFEpu(x64emu_t *emu, uintptr_t fcn) { pFEpu_t fn = (pFEpu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI); } void pFEpp(x64emu_t *emu, uintptr_t fcn) { pFEpp_t fn = (pFEpp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI); } +void pFEpV(x64emu_t *emu, uintptr_t fcn) { pFEpV_t fn = (pFEpV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)(R_RSP + 8)); } +void pFEpA(x64emu_t *emu, uintptr_t fcn) { pFEpA_t fn = (pFEpA_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI); } void pFiii(x64emu_t *emu, uintptr_t fcn) { pFiii_t fn = (pFiii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } +void pFiiu(x64emu_t *emu, uintptr_t fcn) { pFiiu_t fn = (pFiiu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX); } void pFiip(x64emu_t *emu, uintptr_t fcn) { pFiip_t fn = (pFiip_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } +void pFiIp(x64emu_t *emu, uintptr_t fcn) { pFiIp_t fn = (pFiIp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } +void pFiup(x64emu_t *emu, uintptr_t fcn) { pFiup_t fn = (pFiup_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } void pFipi(x64emu_t *emu, uintptr_t fcn) { pFipi_t fn = (pFipi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void pFipL(x64emu_t *emu, uintptr_t fcn) { pFipL_t fn = (pFipL_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void pFipp(x64emu_t *emu, uintptr_t fcn) { pFipp_t fn = (pFipp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void pFIpi(x64emu_t *emu, uintptr_t fcn) { pFIpi_t fn = (pFIpi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } +void pFCiW(x64emu_t *emu, uintptr_t fcn) { pFCiW_t fn = (pFCiW_t)fcn; R_RAX=(uintptr_t)fn((uint8_t)R_RDI, (int64_t)R_RSI, (uint16_t)R_RDX); } void pFWWW(x64emu_t *emu, uintptr_t fcn) { pFWWW_t fn = (pFWWW_t)fcn; R_RAX=(uintptr_t)fn((uint16_t)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX); } void pFuii(x64emu_t *emu, uintptr_t fcn) { pFuii_t fn = (pFuii_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } +void pFuui(x64emu_t *emu, uintptr_t fcn) { pFuui_t fn = (pFuui_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX); } +void pFuuu(x64emu_t *emu, uintptr_t fcn) { pFuuu_t fn = (pFuuu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); } void pFupi(x64emu_t *emu, uintptr_t fcn) { pFupi_t fn = (pFupi_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void pFupL(x64emu_t *emu, uintptr_t fcn) { pFupL_t fn = (pFupL_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void pFUpi(x64emu_t *emu, uintptr_t fcn) { pFUpi_t fn = (pFUpi_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } @@ -1991,6 +2366,7 @@ void pFddd(x64emu_t *emu, uintptr_t fcn) { pFddd_t fn = (pFddd_t)fcn; R_RAX=(uin void pFDip(x64emu_t *emu, uintptr_t fcn) { pFDip_t fn = (pFDip_t)fcn; R_RAX=(uintptr_t)fn(LD2localLD((void*)(R_RSP + 8)), (int64_t)R_RDI, (void*)R_RSI); } void pFpii(x64emu_t *emu, uintptr_t fcn) { pFpii_t fn = (pFpii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void pFpiu(x64emu_t *emu, uintptr_t fcn) { pFpiu_t fn = (pFpiu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX); } +void pFpid(x64emu_t *emu, uintptr_t fcn) { pFpid_t fn = (pFpid_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, emu->xmm[0].d[0]); } void pFpil(x64emu_t *emu, uintptr_t fcn) { pFpil_t fn = (pFpil_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (intptr_t)R_RDX); } void pFpiL(x64emu_t *emu, uintptr_t fcn) { pFpiL_t fn = (pFpiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uintptr_t)R_RDX); } void pFpip(x64emu_t *emu, uintptr_t fcn) { pFpip_t fn = (pFpip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } @@ -2001,11 +2377,16 @@ void pFpuu(x64emu_t *emu, uintptr_t fcn) { pFpuu_t fn = (pFpuu_t)fcn; R_RAX=(uin void pFpuL(x64emu_t *emu, uintptr_t fcn) { pFpuL_t fn = (pFpuL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uintptr_t)R_RDX); } void pFpup(x64emu_t *emu, uintptr_t fcn) { pFpup_t fn = (pFpup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } void pFpUp(x64emu_t *emu, uintptr_t fcn) { pFpUp_t fn = (pFpUp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } +void pFpdu(x64emu_t *emu, uintptr_t fcn) { pFpdu_t fn = (pFpdu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], (uint64_t)R_RSI); } +void pFplC(x64emu_t *emu, uintptr_t fcn) { pFplC_t fn = (pFplC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (uint8_t)R_RDX); } +void pFplu(x64emu_t *emu, uintptr_t fcn) { pFplu_t fn = (pFplu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (uint64_t)R_RDX); } +void pFpll(x64emu_t *emu, uintptr_t fcn) { pFpll_t fn = (pFpll_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX); } void pFplp(x64emu_t *emu, uintptr_t fcn) { pFplp_t fn = (pFplp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX); } void pFpLu(x64emu_t *emu, uintptr_t fcn) { pFpLu_t fn = (pFpLu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uint64_t)R_RDX); } void pFpLL(x64emu_t *emu, uintptr_t fcn) { pFpLL_t fn = (pFpLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX); } void pFpLp(x64emu_t *emu, uintptr_t fcn) { pFpLp_t fn = (pFpLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX); } void pFppi(x64emu_t *emu, uintptr_t fcn) { pFppi_t fn = (pFppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } +void pFppC(x64emu_t *emu, uintptr_t fcn) { pFppC_t fn = (pFppC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint8_t)R_RDX); } void pFppu(x64emu_t *emu, uintptr_t fcn) { pFppu_t fn = (pFppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX); } void pFppf(x64emu_t *emu, uintptr_t fcn) { pFppf_t fn = (pFppf_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].f[0]); } void pFppl(x64emu_t *emu, uintptr_t fcn) { pFppl_t fn = (pFppl_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX); } @@ -2013,6 +2394,7 @@ void pFppL(x64emu_t *emu, uintptr_t fcn) { pFppL_t fn = (pFppL_t)fcn; R_RAX=(uin void pFppp(x64emu_t *emu, uintptr_t fcn) { pFppp_t fn = (pFppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void pFpOM(x64emu_t *emu, uintptr_t fcn) { pFpOM_t fn = (pFpOM_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, of_convert((int32_t)R_RSI), (void*)R_RDX, (void*)R_RCX); } void pFSpl(x64emu_t *emu, uintptr_t fcn) { pFSpl_t fn = (pFSpl_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (intptr_t)R_RDX); } +void vFEiip(x64emu_t *emu, uintptr_t fcn) { vFEiip_t fn = (vFEiip_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void vFEipp(x64emu_t *emu, uintptr_t fcn) { vFEipp_t fn = (vFEipp_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void vFEipV(x64emu_t *emu, uintptr_t fcn) { vFEipV_t fn = (vFEipV_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } void vFEipA(x64emu_t *emu, uintptr_t fcn) { vFEipA_t fn = (vFEipA_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } @@ -2020,6 +2402,8 @@ void vFEpii(x64emu_t *emu, uintptr_t fcn) { vFEpii_t fn = (vFEpii_t)fcn; fn(emu, void vFEpip(x64emu_t *emu, uintptr_t fcn) { vFEpip_t fn = (vFEpip_t)fcn; fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void vFEpup(x64emu_t *emu, uintptr_t fcn) { vFEpup_t fn = (vFEpup_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } void vFEppp(x64emu_t *emu, uintptr_t fcn) { vFEppp_t fn = (vFEppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } +void vFEppV(x64emu_t *emu, uintptr_t fcn) { vFEppV_t fn = (vFEppV_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } +void vFEppA(x64emu_t *emu, uintptr_t fcn) { vFEppA_t fn = (vFEppA_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void vFiiii(x64emu_t *emu, uintptr_t fcn) { vFiiii_t fn = (vFiiii_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void vFiiip(x64emu_t *emu, uintptr_t fcn) { vFiiip_t fn = (vFiiip_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void vFiIII(x64emu_t *emu, uintptr_t fcn) { vFiIII_t fn = (vFiIII_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } @@ -2080,28 +2464,46 @@ void vFUUpi(x64emu_t *emu, uintptr_t fcn) { vFUUpi_t fn = (vFUUpi_t)fcn; fn((uin void vFffff(x64emu_t *emu, uintptr_t fcn) { vFffff_t fn = (vFffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0]); } void vFdddd(x64emu_t *emu, uintptr_t fcn) { vFdddd_t fn = (vFdddd_t)fcn; fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } void vFpiii(x64emu_t *emu, uintptr_t fcn) { vFpiii_t fn = (vFpiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void vFpiiu(x64emu_t *emu, uintptr_t fcn) { vFpiiu_t fn = (vFpiiu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); } void vFpiip(x64emu_t *emu, uintptr_t fcn) { vFpiip_t fn = (vFpiip_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void vFpiuu(x64emu_t *emu, uintptr_t fcn) { vFpiuu_t fn = (vFpiuu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void vFpiuL(x64emu_t *emu, uintptr_t fcn) { vFpiuL_t fn = (vFpiuL_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uintptr_t)R_RCX); } void vFpiup(x64emu_t *emu, uintptr_t fcn) { vFpiup_t fn = (vFpiup_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void vFpifi(x64emu_t *emu, uintptr_t fcn) { vFpifi_t fn = (vFpifi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, emu->xmm[0].f[0], (int64_t)R_RDX); } void vFpipi(x64emu_t *emu, uintptr_t fcn) { vFpipi_t fn = (vFpipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void vFpipp(x64emu_t *emu, uintptr_t fcn) { vFpipp_t fn = (vFpipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void vFpCiW(x64emu_t *emu, uintptr_t fcn) { vFpCiW_t fn = (vFpCiW_t)fcn; fn((void*)R_RDI, (uint8_t)R_RSI, (int64_t)R_RDX, (uint16_t)R_RCX); } +void vFpuip(x64emu_t *emu, uintptr_t fcn) { vFpuip_t fn = (vFpuip_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void vFpuui(x64emu_t *emu, uintptr_t fcn) { vFpuui_t fn = (vFpuui_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX); } void vFpuuu(x64emu_t *emu, uintptr_t fcn) { vFpuuu_t fn = (vFpuuu_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } +void vFpuup(x64emu_t *emu, uintptr_t fcn) { vFpuup_t fn = (vFpuup_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } void vFpudd(x64emu_t *emu, uintptr_t fcn) { vFpudd_t fn = (vFpudd_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } void vFpupp(x64emu_t *emu, uintptr_t fcn) { vFpupp_t fn = (vFpupp_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void vFpdii(x64emu_t *emu, uintptr_t fcn) { vFpdii_t fn = (vFpdii_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], (int64_t)R_RSI, (int64_t)R_RDX); } +void vFpddi(x64emu_t *emu, uintptr_t fcn) { vFpddi_t fn = (vFpddi_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI); } void vFpddd(x64emu_t *emu, uintptr_t fcn) { vFpddd_t fn = (vFpddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); } void vFpLLL(x64emu_t *emu, uintptr_t fcn) { vFpLLL_t fn = (vFpLLL_t)fcn; fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); } void vFppii(x64emu_t *emu, uintptr_t fcn) { vFppii_t fn = (vFppii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void vFppiu(x64emu_t *emu, uintptr_t fcn) { vFppiu_t fn = (vFppiu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); } void vFppid(x64emu_t *emu, uintptr_t fcn) { vFppid_t fn = (vFppid_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, emu->xmm[0].d[0]); } +void vFppiL(x64emu_t *emu, uintptr_t fcn) { vFppiL_t fn = (vFppiL_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX); } void vFppip(x64emu_t *emu, uintptr_t fcn) { vFppip_t fn = (vFppip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void vFppui(x64emu_t *emu, uintptr_t fcn) { vFppui_t fn = (vFppui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX); } void vFppuu(x64emu_t *emu, uintptr_t fcn) { vFppuu_t fn = (vFppuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void vFppup(x64emu_t *emu, uintptr_t fcn) { vFppup_t fn = (vFppup_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void vFppfi(x64emu_t *emu, uintptr_t fcn) { vFppfi_t fn = (vFppfi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].f[0], (int64_t)R_RDX); } +void vFppdu(x64emu_t *emu, uintptr_t fcn) { vFppdu_t fn = (vFppdu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (uint64_t)R_RDX); } void vFppdd(x64emu_t *emu, uintptr_t fcn) { vFppdd_t fn = (vFppdd_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } +void vFppdp(x64emu_t *emu, uintptr_t fcn) { vFppdp_t fn = (vFppdp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (void*)R_RDX); } +void vFpplp(x64emu_t *emu, uintptr_t fcn) { vFpplp_t fn = (vFpplp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX); } void vFpppi(x64emu_t *emu, uintptr_t fcn) { vFpppi_t fn = (vFpppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } +void vFpppI(x64emu_t *emu, uintptr_t fcn) { vFpppI_t fn = (vFpppI_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void vFpppu(x64emu_t *emu, uintptr_t fcn) { vFpppu_t fn = (vFpppu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } +void vFpppU(x64emu_t *emu, uintptr_t fcn) { vFpppU_t fn = (vFpppU_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } +void vFpppd(x64emu_t *emu, uintptr_t fcn) { vFpppd_t fn = (vFpppd_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[0].d[0]); } void vFpppL(x64emu_t *emu, uintptr_t fcn) { vFpppL_t fn = (vFpppL_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void vFpppp(x64emu_t *emu, uintptr_t fcn) { vFpppp_t fn = (vFpppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void vFpppV(x64emu_t *emu, uintptr_t fcn) { vFpppV_t fn = (vFpppV_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } void cFpiii(x64emu_t *emu, uintptr_t fcn) { cFpiii_t fn = (cFpiii_t)fcn; R_RAX=fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void iFEiip(x64emu_t *emu, uintptr_t fcn) { iFEiip_t fn = (iFEiip_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void iFEiiN(x64emu_t *emu, uintptr_t fcn) { iFEiiN_t fn = (iFEiiN_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } @@ -2143,6 +2545,7 @@ void iFippi(x64emu_t *emu, uintptr_t fcn) { iFippi_t fn = (iFippi_t)fcn; R_RAX=( void iFippL(x64emu_t *emu, uintptr_t fcn) { iFippL_t fn = (iFippL_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void iFippp(x64emu_t *emu, uintptr_t fcn) { iFippp_t fn = (iFippp_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFipON(x64emu_t *emu, uintptr_t fcn) { iFipON_t fn = (iFipON_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, of_convert((int32_t)R_RDX), (void*)R_RCX); } +void iFuipu(x64emu_t *emu, uintptr_t fcn) { iFuipu_t fn = (iFuipu_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void iFuipp(x64emu_t *emu, uintptr_t fcn) { iFuipp_t fn = (iFuipp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFuuff(x64emu_t *emu, uintptr_t fcn) { iFuuff_t fn = (iFuuff_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, emu->xmm[0].f[0], emu->xmm[1].f[0]); } void iFuupi(x64emu_t *emu, uintptr_t fcn) { iFuupi_t fn = (iFuupi_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } @@ -2165,6 +2568,7 @@ void iFpipC(x64emu_t *emu, uintptr_t fcn) { iFpipC_t fn = (iFpipC_t)fcn; R_RAX=( void iFpipu(x64emu_t *emu, uintptr_t fcn) { iFpipu_t fn = (iFpipu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void iFpipp(x64emu_t *emu, uintptr_t fcn) { iFpipp_t fn = (iFpipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFpipV(x64emu_t *emu, uintptr_t fcn) { iFpipV_t fn = (iFpipV_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } +void iFpIip(x64emu_t *emu, uintptr_t fcn) { iFpIip_t fn = (iFpIip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void iFpCCC(x64emu_t *emu, uintptr_t fcn) { iFpCCC_t fn = (iFpCCC_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX); } void iFpWWu(x64emu_t *emu, uintptr_t fcn) { iFpWWu_t fn = (iFpWWu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX, (uint64_t)R_RCX); } void iFpuwp(x64emu_t *emu, uintptr_t fcn) { iFpuwp_t fn = (iFpuwp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int16_t)R_RDX, (void*)R_RCX); } @@ -2175,6 +2579,7 @@ void iFpuuu(x64emu_t *emu, uintptr_t fcn) { iFpuuu_t fn = (iFpuuu_t)fcn; R_RAX=( void iFpuup(x64emu_t *emu, uintptr_t fcn) { iFpuup_t fn = (iFpuup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } void iFpuLL(x64emu_t *emu, uintptr_t fcn) { iFpuLL_t fn = (iFpuLL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); } void iFpuLp(x64emu_t *emu, uintptr_t fcn) { iFpuLp_t fn = (iFpuLp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } +void iFpupi(x64emu_t *emu, uintptr_t fcn) { iFpupi_t fn = (iFpupi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void iFpupu(x64emu_t *emu, uintptr_t fcn) { iFpupu_t fn = (iFpupu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void iFpupL(x64emu_t *emu, uintptr_t fcn) { iFpupL_t fn = (iFpupL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void iFpupp(x64emu_t *emu, uintptr_t fcn) { iFpupp_t fn = (iFpupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } @@ -2211,8 +2616,12 @@ void iFpppp(x64emu_t *emu, uintptr_t fcn) { iFpppp_t fn = (iFpppp_t)fcn; R_RAX=( void IFEpIi(x64emu_t *emu, uintptr_t fcn) { IFEpIi_t fn = (IFEpIi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void IFpIip(x64emu_t *emu, uintptr_t fcn) { IFpIip_t fn = (IFpIip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void IFppip(x64emu_t *emu, uintptr_t fcn) { IFppip_t fn = (IFppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void IFpppp(x64emu_t *emu, uintptr_t fcn) { IFpppp_t fn = (IFpppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void IFSIii(x64emu_t *emu, uintptr_t fcn) { IFSIii_t fn = (IFSIii_t)fcn; R_RAX=(int64_t)fn(io_convert((void*)R_RDI), (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void uFEipp(x64emu_t *emu, uintptr_t fcn) { uFEipp_t fn = (uFEipp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } +void uFEupp(x64emu_t *emu, uintptr_t fcn) { uFEupp_t fn = (uFEupp_t)fcn; R_RAX=(uint64_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void uFEpup(x64emu_t *emu, uintptr_t fcn) { uFEpup_t fn = (uFEpup_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX); } +void uFEppp(x64emu_t *emu, uintptr_t fcn) { uFEppp_t fn = (uFEppp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } void uFifff(x64emu_t *emu, uintptr_t fcn) { uFifff_t fn = (uFifff_t)fcn; R_RAX=(uint64_t)fn((int64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0]); } void uFuuuu(x64emu_t *emu, uintptr_t fcn) { uFuuuu_t fn = (uFuuuu_t)fcn; R_RAX=(uint64_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void uFpipu(x64emu_t *emu, uintptr_t fcn) { uFpipu_t fn = (uFpipu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } @@ -2221,10 +2630,13 @@ void uFpCCC(x64emu_t *emu, uintptr_t fcn) { uFpCCC_t fn = (uFpCCC_t)fcn; R_RAX=( void uFpuip(x64emu_t *emu, uintptr_t fcn) { uFpuip_t fn = (uFpuip_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void uFpuuu(x64emu_t *emu, uintptr_t fcn) { uFpuuu_t fn = (uFpuuu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void uFppiu(x64emu_t *emu, uintptr_t fcn) { uFppiu_t fn = (uFppiu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); } +void uFppLp(x64emu_t *emu, uintptr_t fcn) { uFppLp_t fn = (uFppLp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } void uFpppi(x64emu_t *emu, uintptr_t fcn) { uFpppi_t fn = (uFpppi_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void uFpppp(x64emu_t *emu, uintptr_t fcn) { uFpppp_t fn = (uFpppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void UFpipp(x64emu_t *emu, uintptr_t fcn) { UFpipp_t fn = (UFpipp_t)fcn; R_RAX=fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void UFppip(x64emu_t *emu, uintptr_t fcn) { UFppip_t fn = (UFppip_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void UFpppp(x64emu_t *emu, uintptr_t fcn) { UFpppp_t fn = (UFpppp_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void dFpppp(x64emu_t *emu, uintptr_t fcn) { dFpppp_t fn = (dFpppp_t)fcn; emu->xmm[0].d[0]=fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void lFEpip(x64emu_t *emu, uintptr_t fcn) { lFEpip_t fn = (lFEpip_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void lFEppL(x64emu_t *emu, uintptr_t fcn) { lFEppL_t fn = (lFEppL_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX); } void lFEppp(x64emu_t *emu, uintptr_t fcn) { lFEppp_t fn = (lFEppp_t)fcn; R_RAX=(intptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } @@ -2245,6 +2657,7 @@ void lFppii(x64emu_t *emu, uintptr_t fcn) { lFppii_t fn = (lFppii_t)fcn; R_RAX=( void lFppip(x64emu_t *emu, uintptr_t fcn) { lFppip_t fn = (lFppip_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void lFpppL(x64emu_t *emu, uintptr_t fcn) { lFpppL_t fn = (lFpppL_t)fcn; R_RAX=(intptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void LFippL(x64emu_t *emu, uintptr_t fcn) { LFippL_t fn = (LFippL_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } +void LFippp(x64emu_t *emu, uintptr_t fcn) { LFippp_t fn = (LFippp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void LFpuuu(x64emu_t *emu, uintptr_t fcn) { LFpuuu_t fn = (LFpuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void LFpLLp(x64emu_t *emu, uintptr_t fcn) { LFpLLp_t fn = (LFpLLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } void LFpLpp(x64emu_t *emu, uintptr_t fcn) { LFpLpp_t fn = (LFpLpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } @@ -2252,21 +2665,29 @@ void LFppii(x64emu_t *emu, uintptr_t fcn) { LFppii_t fn = (LFppii_t)fcn; R_RAX=( void LFppip(x64emu_t *emu, uintptr_t fcn) { LFppip_t fn = (LFppip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void LFppLL(x64emu_t *emu, uintptr_t fcn) { LFppLL_t fn = (LFppLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); } void LFppLp(x64emu_t *emu, uintptr_t fcn) { LFppLp_t fn = (LFppLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } +void LFpppi(x64emu_t *emu, uintptr_t fcn) { LFpppi_t fn = (LFpppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void LFpppp(x64emu_t *emu, uintptr_t fcn) { LFpppp_t fn = (LFpppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void pFEipp(x64emu_t *emu, uintptr_t fcn) { pFEipp_t fn = (pFEipp_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } +void pFEipV(x64emu_t *emu, uintptr_t fcn) { pFEipV_t fn = (pFEipV_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } +void pFEipA(x64emu_t *emu, uintptr_t fcn) { pFEipA_t fn = (pFEipA_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void pFEupp(x64emu_t *emu, uintptr_t fcn) { pFEupp_t fn = (pFEupp_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void pFEpii(x64emu_t *emu, uintptr_t fcn) { pFEpii_t fn = (pFEpii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX); } void pFEpip(x64emu_t *emu, uintptr_t fcn) { pFEpip_t fn = (pFEpip_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX); } void pFEppi(x64emu_t *emu, uintptr_t fcn) { pFEppi_t fn = (pFEppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX); } void pFEppp(x64emu_t *emu, uintptr_t fcn) { pFEppp_t fn = (pFEppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX); } +void pFEppV(x64emu_t *emu, uintptr_t fcn) { pFEppV_t fn = (pFEppV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)(R_RSP + 8)); } void pFiiii(x64emu_t *emu, uintptr_t fcn) { pFiiii_t fn = (pFiiii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void pFiiiu(x64emu_t *emu, uintptr_t fcn) { pFiiiu_t fn = (pFiiiu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); } +void pFiiuu(x64emu_t *emu, uintptr_t fcn) { pFiiuu_t fn = (pFiiuu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void pFiiup(x64emu_t *emu, uintptr_t fcn) { pFiiup_t fn = (pFiiup_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void pFipii(x64emu_t *emu, uintptr_t fcn) { pFipii_t fn = (pFipii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void pFipip(x64emu_t *emu, uintptr_t fcn) { pFipip_t fn = (pFipip_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void pFippi(x64emu_t *emu, uintptr_t fcn) { pFippi_t fn = (pFippi_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void pFippu(x64emu_t *emu, uintptr_t fcn) { pFippu_t fn = (pFippu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void pFuiii(x64emu_t *emu, uintptr_t fcn) { pFuiii_t fn = (pFuiii_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void pFulli(x64emu_t *emu, uintptr_t fcn) { pFulli_t fn = (pFulli_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (int64_t)R_RCX); } void pFullu(x64emu_t *emu, uintptr_t fcn) { pFullu_t fn = (pFullu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (uint64_t)R_RCX); } +void pFffff(x64emu_t *emu, uintptr_t fcn) { pFffff_t fn = (pFffff_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0]); } void pFdipp(x64emu_t *emu, uintptr_t fcn) { pFdipp_t fn = (pFdipp_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].d[0], (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } void pFdddd(x64emu_t *emu, uintptr_t fcn) { pFdddd_t fn = (pFdddd_t)fcn; R_RAX=(uintptr_t)fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } void pFDipp(x64emu_t *emu, uintptr_t fcn) { pFDipp_t fn = (pFDipp_t)fcn; R_RAX=(uintptr_t)fn(LD2localLD((void*)(R_RSP + 8)), (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX); } @@ -2276,35 +2697,49 @@ void pFpiip(x64emu_t *emu, uintptr_t fcn) { pFpiip_t fn = (pFpiip_t)fcn; R_RAX=( void pFpiuu(x64emu_t *emu, uintptr_t fcn) { pFpiuu_t fn = (pFpiuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void pFpiLL(x64emu_t *emu, uintptr_t fcn) { pFpiLL_t fn = (pFpiLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); } void pFpipi(x64emu_t *emu, uintptr_t fcn) { pFpipi_t fn = (pFpipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } +void pFpipd(x64emu_t *emu, uintptr_t fcn) { pFpipd_t fn = (pFpipd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, emu->xmm[0].d[0]); } void pFpipp(x64emu_t *emu, uintptr_t fcn) { pFpipp_t fn = (pFpipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void pFpipV(x64emu_t *emu, uintptr_t fcn) { pFpipV_t fn = (pFpipV_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } void pFpCWp(x64emu_t *emu, uintptr_t fcn) { pFpCWp_t fn = (pFpCWp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); } void pFpCuW(x64emu_t *emu, uintptr_t fcn) { pFpCuW_t fn = (pFpCuW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX); } void pFpCuu(x64emu_t *emu, uintptr_t fcn) { pFpCuu_t fn = (pFpCuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void pFpuii(x64emu_t *emu, uintptr_t fcn) { pFpuii_t fn = (pFpuii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void pFpuip(x64emu_t *emu, uintptr_t fcn) { pFpuip_t fn = (pFpuip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void pFpuWp(x64emu_t *emu, uintptr_t fcn) { pFpuWp_t fn = (pFpuWp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint16_t)R_RDX, (void*)R_RCX); } void pFpuuC(x64emu_t *emu, uintptr_t fcn) { pFpuuC_t fn = (pFpuuC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint8_t)R_RCX); } void pFpuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuu_t fn = (pFpuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void pFpuup(x64emu_t *emu, uintptr_t fcn) { pFpuup_t fn = (pFpuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } void pFpupi(x64emu_t *emu, uintptr_t fcn) { pFpupi_t fn = (pFpupi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } +void pFpupu(x64emu_t *emu, uintptr_t fcn) { pFpupu_t fn = (pFpupu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } +void pFplpl(x64emu_t *emu, uintptr_t fcn) { pFplpl_t fn = (pFplpl_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (intptr_t)R_RCX); } void pFplpp(x64emu_t *emu, uintptr_t fcn) { pFplpp_t fn = (pFplpp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void pFpLip(x64emu_t *emu, uintptr_t fcn) { pFpLip_t fn = (pFpLip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void pFpLpL(x64emu_t *emu, uintptr_t fcn) { pFpLpL_t fn = (pFpLpL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void pFppii(x64emu_t *emu, uintptr_t fcn) { pFppii_t fn = (pFppii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } +void pFppiu(x64emu_t *emu, uintptr_t fcn) { pFppiu_t fn = (pFppiu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX); } void pFppiL(x64emu_t *emu, uintptr_t fcn) { pFppiL_t fn = (pFppiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX); } void pFppip(x64emu_t *emu, uintptr_t fcn) { pFppip_t fn = (pFppip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } void pFppuW(x64emu_t *emu, uintptr_t fcn) { pFppuW_t fn = (pFppuW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX); } void pFppuu(x64emu_t *emu, uintptr_t fcn) { pFppuu_t fn = (pFppuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } void pFppuL(x64emu_t *emu, uintptr_t fcn) { pFppuL_t fn = (pFppuL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uintptr_t)R_RCX); } void pFppup(x64emu_t *emu, uintptr_t fcn) { pFppup_t fn = (pFppup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void pFppdd(x64emu_t *emu, uintptr_t fcn) { pFppdd_t fn = (pFppdd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0]); } void pFppLL(x64emu_t *emu, uintptr_t fcn) { pFppLL_t fn = (pFppLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX); } +void pFppLp(x64emu_t *emu, uintptr_t fcn) { pFppLp_t fn = (pFppLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } void pFpppi(x64emu_t *emu, uintptr_t fcn) { pFpppi_t fn = (pFpppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void pFpppu(x64emu_t *emu, uintptr_t fcn) { pFpppu_t fn = (pFpppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void pFpppL(x64emu_t *emu, uintptr_t fcn) { pFpppL_t fn = (pFpppL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX); } void pFpppp(x64emu_t *emu, uintptr_t fcn) { pFpppp_t fn = (pFpppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void pFSppi(x64emu_t *emu, uintptr_t fcn) { pFSppi_t fn = (pFSppi_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void vFEiipV(x64emu_t *emu, uintptr_t fcn) { vFEiipV_t fn = (vFEiipV_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } +void vFEippp(x64emu_t *emu, uintptr_t fcn) { vFEippp_t fn = (vFEippp_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void vFEpuup(x64emu_t *emu, uintptr_t fcn) { vFEpuup_t fn = (vFEpuup_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void vFEpuuV(x64emu_t *emu, uintptr_t fcn) { vFEpuuV_t fn = (vFEpuuV_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)(R_RSP + 8)); } +void vFEpupp(x64emu_t *emu, uintptr_t fcn) { vFEpupp_t fn = (vFEpupp_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void vFEpupA(x64emu_t *emu, uintptr_t fcn) { vFEpupA_t fn = (vFEpupA_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void vFEpLLp(x64emu_t *emu, uintptr_t fcn) { vFEpLLp_t fn = (vFEpLLp_t)fcn; fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } +void vFEppip(x64emu_t *emu, uintptr_t fcn) { vFEppip_t fn = (vFEppip_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX); } +void vFEppup(x64emu_t *emu, uintptr_t fcn) { vFEppup_t fn = (vFEppup_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } void vFEpppp(x64emu_t *emu, uintptr_t fcn) { vFEpppp_t fn = (vFEpppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void vFiiiii(x64emu_t *emu, uintptr_t fcn) { vFiiiii_t fn = (vFiiiii_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void vFiiiiu(x64emu_t *emu, uintptr_t fcn) { vFiiiiu_t fn = (vFiiiiu_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } @@ -2374,25 +2809,42 @@ void vFUUppp(x64emu_t *emu, uintptr_t fcn) { vFUUppp_t fn = (vFUUppp_t)fcn; fn(( void vFfffff(x64emu_t *emu, uintptr_t fcn) { vFfffff_t fn = (vFfffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0]); } void vFddddp(x64emu_t *emu, uintptr_t fcn) { vFddddp_t fn = (vFddddp_t)fcn; 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 vFpiiii(x64emu_t *emu, uintptr_t fcn) { vFpiiii_t fn = (vFpiiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } +void vFpiiiu(x64emu_t *emu, uintptr_t fcn) { vFpiiiu_t fn = (vFpiiiu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } +void vFpiiff(x64emu_t *emu, uintptr_t fcn) { vFpiiff_t fn = (vFpiiff_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[0].f[0], emu->xmm[1].f[0]); } void vFpiipp(x64emu_t *emu, uintptr_t fcn) { vFpiipp_t fn = (vFpiipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFpipii(x64emu_t *emu, uintptr_t fcn) { vFpipii_t fn = (vFpipii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } +void vFpipiu(x64emu_t *emu, uintptr_t fcn) { vFpipiu_t fn = (vFpipiu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } +void vFpuiip(x64emu_t *emu, uintptr_t fcn) { vFpuiip_t fn = (vFpuiip_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void vFpuipp(x64emu_t *emu, uintptr_t fcn) { vFpuipp_t fn = (vFpuipp_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void vFpuipV(x64emu_t *emu, uintptr_t fcn) { vFpuipV_t fn = (vFpuipV_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); } +void vFpuuuu(x64emu_t *emu, uintptr_t fcn) { vFpuuuu_t fn = (vFpuuuu_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void vFpuddd(x64emu_t *emu, uintptr_t fcn) { vFpuddd_t fn = (vFpuddd_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0]); } +void vFpffff(x64emu_t *emu, uintptr_t fcn) { vFpffff_t fn = (vFpffff_t)fcn; fn((void*)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0]); } void vFpddii(x64emu_t *emu, uintptr_t fcn) { vFpddii_t fn = (vFpddii_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI, (int64_t)R_RDX); } void vFpdddd(x64emu_t *emu, uintptr_t fcn) { vFpdddd_t fn = (vFpdddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } +void vFpddpp(x64emu_t *emu, uintptr_t fcn) { vFpddpp_t fn = (vFpddpp_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (void*)R_RSI, (void*)R_RDX); } void vFpliil(x64emu_t *emu, uintptr_t fcn) { vFpliil_t fn = (vFpliil_t)fcn; fn((void*)R_RDI, (intptr_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (intptr_t)R_R8); } void vFppiii(x64emu_t *emu, uintptr_t fcn) { vFppiii_t fn = (vFppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } +void vFppiiu(x64emu_t *emu, uintptr_t fcn) { vFppiiu_t fn = (vFppiiu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } void vFppiip(x64emu_t *emu, uintptr_t fcn) { vFppiip_t fn = (vFppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void vFppiup(x64emu_t *emu, uintptr_t fcn) { vFppiup_t fn = (vFppiup_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } +void vFppiff(x64emu_t *emu, uintptr_t fcn) { vFppiff_t fn = (vFppiff_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, emu->xmm[0].f[0], emu->xmm[1].f[0]); } +void vFppipi(x64emu_t *emu, uintptr_t fcn) { vFppipi_t fn = (vFppipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void vFppipp(x64emu_t *emu, uintptr_t fcn) { vFppipp_t fn = (vFppipp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFppWui(x64emu_t *emu, uintptr_t fcn) { vFppWui_t fn = (vFppWui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint16_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8); } void vFppuui(x64emu_t *emu, uintptr_t fcn) { vFppuui_t fn = (vFppuui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8); } +void vFppupi(x64emu_t *emu, uintptr_t fcn) { vFppupi_t fn = (vFppupi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } +void vFppupp(x64emu_t *emu, uintptr_t fcn) { vFppupp_t fn = (vFppupp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFpppii(x64emu_t *emu, uintptr_t fcn) { vFpppii_t fn = (vFpppii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void vFpppip(x64emu_t *emu, uintptr_t fcn) { vFpppip_t fn = (vFpppip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void vFpppuu(x64emu_t *emu, uintptr_t fcn) { vFpppuu_t fn = (vFpppuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void vFppppi(x64emu_t *emu, uintptr_t fcn) { vFppppi_t fn = (vFppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void vFppppu(x64emu_t *emu, uintptr_t fcn) { vFppppu_t fn = (vFppppu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8); } +void vFppppL(x64emu_t *emu, uintptr_t fcn) { vFppppL_t fn = (vFppppL_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } void vFppppp(x64emu_t *emu, uintptr_t fcn) { vFppppp_t fn = (vFppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } +void iFEiipp(x64emu_t *emu, uintptr_t fcn) { iFEiipp_t fn = (iFEiipp_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFEiipV(x64emu_t *emu, uintptr_t fcn) { iFEiipV_t fn = (iFEiipV_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)(R_RSP + 8)); } +void iFEippi(x64emu_t *emu, uintptr_t fcn) { iFEippi_t fn = (iFEippi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void iFEippp(x64emu_t *emu, uintptr_t fcn) { iFEippp_t fn = (iFEippp_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void iFEpiii(x64emu_t *emu, uintptr_t fcn) { iFEpiii_t fn = (iFEpiii_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void iFEpipi(x64emu_t *emu, uintptr_t fcn) { iFEpipi_t fn = (iFEpipi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } @@ -2437,6 +2889,8 @@ void iFpiipp(x64emu_t *emu, uintptr_t fcn) { iFpiipp_t fn = (iFpiipp_t)fcn; R_RA void iFpiuwp(x64emu_t *emu, uintptr_t fcn) { iFpiuwp_t fn = (iFpiuwp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (int16_t)R_RCX, (void*)R_R8); } void iFpipii(x64emu_t *emu, uintptr_t fcn) { iFpipii_t fn = (iFpipii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void iFpipiL(x64emu_t *emu, uintptr_t fcn) { iFpipiL_t fn = (iFpipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uintptr_t)R_R8); } +void iFpipip(x64emu_t *emu, uintptr_t fcn) { iFpipip_t fn = (iFpipip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void iFpippi(x64emu_t *emu, uintptr_t fcn) { iFpippi_t fn = (iFpippi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void iFpippW(x64emu_t *emu, uintptr_t fcn) { iFpippW_t fn = (iFpippW_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint16_t)R_R8); } void iFpippp(x64emu_t *emu, uintptr_t fcn) { iFpippp_t fn = (iFpippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFpCCCC(x64emu_t *emu, uintptr_t fcn) { iFpCCCC_t fn = (iFpCCCC_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8); } @@ -2445,9 +2899,11 @@ void iFpuuui(x64emu_t *emu, uintptr_t fcn) { iFpuuui_t fn = (iFpuuui_t)fcn; R_RA void iFpuuup(x64emu_t *emu, uintptr_t fcn) { iFpuuup_t fn = (iFpuuup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } void iFpuuLL(x64emu_t *emu, uintptr_t fcn) { iFpuuLL_t fn = (iFpuuLL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8); } void iFpuupp(x64emu_t *emu, uintptr_t fcn) { iFpuupp_t fn = (iFpuupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void iFpuppp(x64emu_t *emu, uintptr_t fcn) { iFpuppp_t fn = (iFpuppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFplluu(x64emu_t *emu, uintptr_t fcn) { iFplluu_t fn = (iFplluu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void iFpLiLi(x64emu_t *emu, uintptr_t fcn) { iFpLiLi_t fn = (iFpLiLi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX, (int64_t)R_R8); } void iFpLlpp(x64emu_t *emu, uintptr_t fcn) { iFpLlpp_t fn = (iFpLlpp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void iFppiiu(x64emu_t *emu, uintptr_t fcn) { iFppiiu_t fn = (iFppiiu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } void iFppiip(x64emu_t *emu, uintptr_t fcn) { iFppiip_t fn = (iFppiip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void iFppiup(x64emu_t *emu, uintptr_t fcn) { iFppiup_t fn = (iFppiup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } void iFppiLi(x64emu_t *emu, uintptr_t fcn) { iFppiLi_t fn = (iFppiLi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX, (int64_t)R_R8); } @@ -2458,20 +2914,27 @@ void iFppuip(x64emu_t *emu, uintptr_t fcn) { iFppuip_t fn = (iFppuip_t)fcn; R_RA void iFppupi(x64emu_t *emu, uintptr_t fcn) { iFppupi_t fn = (iFppupi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void iFppupp(x64emu_t *emu, uintptr_t fcn) { iFppupp_t fn = (iFppupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFppllp(x64emu_t *emu, uintptr_t fcn) { iFppllp_t fn = (iFppllp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8); } +void iFpplpp(x64emu_t *emu, uintptr_t fcn) { iFpplpp_t fn = (iFpplpp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void iFppLip(x64emu_t *emu, uintptr_t fcn) { iFppLip_t fn = (iFppLip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void iFppLpi(x64emu_t *emu, uintptr_t fcn) { iFppLpi_t fn = (iFppLpi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void iFppLpL(x64emu_t *emu, uintptr_t fcn) { iFppLpL_t fn = (iFppLpL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } void iFppLpp(x64emu_t *emu, uintptr_t fcn) { iFppLpp_t fn = (iFppLpp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFpppii(x64emu_t *emu, uintptr_t fcn) { iFpppii_t fn = (iFpppii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void iFpppiL(x64emu_t *emu, uintptr_t fcn) { iFpppiL_t fn = (iFpppiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uintptr_t)R_R8); } void iFpppip(x64emu_t *emu, uintptr_t fcn) { iFpppip_t fn = (iFpppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void iFpppui(x64emu_t *emu, uintptr_t fcn) { iFpppui_t fn = (iFpppui_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8); } void iFpppLi(x64emu_t *emu, uintptr_t fcn) { iFpppLi_t fn = (iFpppLi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (int64_t)R_R8); } void iFpppLp(x64emu_t *emu, uintptr_t fcn) { iFpppLp_t fn = (iFpppLp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); } void iFppppi(x64emu_t *emu, uintptr_t fcn) { iFppppi_t fn = (iFppppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void iFppppL(x64emu_t *emu, uintptr_t fcn) { iFppppL_t fn = (iFppppL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } void iFppppp(x64emu_t *emu, uintptr_t fcn) { iFppppp_t fn = (iFppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void IFppIII(x64emu_t *emu, uintptr_t fcn) { IFppIII_t fn = (IFppIII_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } +void uFEippp(x64emu_t *emu, uintptr_t fcn) { uFEippp_t fn = (uFEippp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void uFEpipp(x64emu_t *emu, uintptr_t fcn) { uFEpipp_t fn = (uFEpipp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX); } void uFEppuu(x64emu_t *emu, uintptr_t fcn) { uFEppuu_t fn = (uFEppuu_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX); } +void uFEpppp(x64emu_t *emu, uintptr_t fcn) { uFEpppp_t fn = (uFEpppp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } void uFiuuuu(x64emu_t *emu, uintptr_t fcn) { uFiuuuu_t fn = (uFiuuuu_t)fcn; R_RAX=(uint64_t)fn((int64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } +void uFipipp(x64emu_t *emu, uintptr_t fcn) { uFipipp_t fn = (uFipipp_t)fcn; R_RAX=(uint64_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void uFuiiiu(x64emu_t *emu, uintptr_t fcn) { uFuiiiu_t fn = (uFuiiiu_t)fcn; R_RAX=(uint64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } void uFpCCCC(x64emu_t *emu, uintptr_t fcn) { uFpCCCC_t fn = (uFpCCCC_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8); } void uFpuuuu(x64emu_t *emu, uintptr_t fcn) { uFpuuuu_t fn = (uFpuuuu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } @@ -2479,12 +2942,15 @@ void uFppiip(x64emu_t *emu, uintptr_t fcn) { uFppiip_t fn = (uFppiip_t)fcn; R_RA void uFppipp(x64emu_t *emu, uintptr_t fcn) { uFppipp_t fn = (uFppipp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void uFppupp(x64emu_t *emu, uintptr_t fcn) { uFppupp_t fn = (uFppupp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void uFpplip(x64emu_t *emu, uintptr_t fcn) { uFpplip_t fn = (uFpplip_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void uFppLpp(x64emu_t *emu, uintptr_t fcn) { uFppLpp_t fn = (uFppLpp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void uFppppu(x64emu_t *emu, uintptr_t fcn) { uFppppu_t fn = (uFppppu_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8); } void uFppppp(x64emu_t *emu, uintptr_t fcn) { uFppppp_t fn = (uFppppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void UFuiiii(x64emu_t *emu, uintptr_t fcn) { UFuiiii_t fn = (UFuiiii_t)fcn; R_RAX=fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void lFipili(x64emu_t *emu, uintptr_t fcn) { lFipili_t fn = (lFipili_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (int64_t)R_R8); } void lFipLli(x64emu_t *emu, uintptr_t fcn) { lFipLli_t fn = (lFipLli_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (intptr_t)R_RCX, (int64_t)R_R8); } void lFipLLi(x64emu_t *emu, uintptr_t fcn) { lFipLLi_t fn = (lFipLLi_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (int64_t)R_R8); } +void LFEpppp(x64emu_t *emu, uintptr_t fcn) { LFEpppp_t fn = (LFEpppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void LFpuppi(x64emu_t *emu, uintptr_t fcn) { LFpuppi_t fn = (LFpuppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void LFpLLLp(x64emu_t *emu, uintptr_t fcn) { LFpLLLp_t fn = (LFpLLLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); } void LFpLppL(x64emu_t *emu, uintptr_t fcn) { LFpLppL_t fn = (LFpLppL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } void LFpLppp(x64emu_t *emu, uintptr_t fcn) { LFpLppp_t fn = (LFpLppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } @@ -2501,13 +2967,17 @@ void pFEppLp(x64emu_t *emu, uintptr_t fcn) { pFEppLp_t fn = (pFEppLp_t)fcn; R_RA void pFEpppi(x64emu_t *emu, uintptr_t fcn) { pFEpppi_t fn = (pFEpppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void pFEpppu(x64emu_t *emu, uintptr_t fcn) { pFEpppu_t fn = (pFEpppu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } void pFEpppp(x64emu_t *emu, uintptr_t fcn) { pFEpppp_t fn = (pFEpppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } +void pFiiiii(x64emu_t *emu, uintptr_t fcn) { pFiiiii_t fn = (pFiiiii_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void pFipipL(x64emu_t *emu, uintptr_t fcn) { pFipipL_t fn = (pFipipL_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8); } +void pFipppu(x64emu_t *emu, uintptr_t fcn) { pFipppu_t fn = (pFipppu_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8); } void pFuiiiu(x64emu_t *emu, uintptr_t fcn) { pFuiiiu_t fn = (pFuiiiu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8); } void pFuiipp(x64emu_t *emu, uintptr_t fcn) { pFuiipp_t fn = (pFuiipp_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFpiiii(x64emu_t *emu, uintptr_t fcn) { pFpiiii_t fn = (pFpiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } +void pFpiiip(x64emu_t *emu, uintptr_t fcn) { pFpiiip_t fn = (pFpiiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } void pFpiiuu(x64emu_t *emu, uintptr_t fcn) { pFpiiuu_t fn = (pFpiiuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void pFpiipi(x64emu_t *emu, uintptr_t fcn) { pFpiipi_t fn = (pFpiipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void pFpiipp(x64emu_t *emu, uintptr_t fcn) { pFpiipp_t fn = (pFpiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void pFpiCCC(x64emu_t *emu, uintptr_t fcn) { pFpiCCC_t fn = (pFpiCCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint8_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8); } void pFpiuuu(x64emu_t *emu, uintptr_t fcn) { pFpiuuu_t fn = (pFpiuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void pFpippi(x64emu_t *emu, uintptr_t fcn) { pFpippi_t fn = (pFpippi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void pFpippp(x64emu_t *emu, uintptr_t fcn) { pFpippp_t fn = (pFpippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } @@ -2520,22 +2990,31 @@ void pFpuuip(x64emu_t *emu, uintptr_t fcn) { pFpuuip_t fn = (pFpuuip_t)fcn; R_RA void pFpuuWW(x64emu_t *emu, uintptr_t fcn) { pFpuuWW_t fn = (pFpuuWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint16_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, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } void pFpdddd(x64emu_t *emu, uintptr_t fcn) { pFpdddd_t fn = (pFpdddd_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } +void pFplppp(x64emu_t *emu, uintptr_t fcn) { pFplppp_t fn = (pFplppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFppiii(x64emu_t *emu, uintptr_t fcn) { pFppiii_t fn = (pFppiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void pFppiip(x64emu_t *emu, uintptr_t fcn) { pFppiip_t fn = (pFppiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void pFppiup(x64emu_t *emu, uintptr_t fcn) { pFppiup_t fn = (pFppiup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } void pFppipi(x64emu_t *emu, uintptr_t fcn) { pFppipi_t fn = (pFppipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void pFppipp(x64emu_t *emu, uintptr_t fcn) { pFppipp_t fn = (pFppipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFppuuu(x64emu_t *emu, uintptr_t fcn) { pFppuuu_t fn = (pFppuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void pFppuup(x64emu_t *emu, uintptr_t fcn) { pFppuup_t fn = (pFppuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } +void pFppddi(x64emu_t *emu, uintptr_t fcn) { pFppddi_t fn = (pFppddi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RDX); } void pFppLLp(x64emu_t *emu, uintptr_t fcn) { pFppLLp_t fn = (pFppLLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8); } +void pFpppii(x64emu_t *emu, uintptr_t fcn) { pFpppii_t fn = (pFpppii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8); } void pFpppip(x64emu_t *emu, uintptr_t fcn) { pFpppip_t fn = (pFpppip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8); } +void pFpppui(x64emu_t *emu, uintptr_t fcn) { pFpppui_t fn = (pFpppui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8); } void pFpppuu(x64emu_t *emu, uintptr_t fcn) { pFpppuu_t fn = (pFpppuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8); } void pFpppup(x64emu_t *emu, uintptr_t fcn) { pFpppup_t fn = (pFpppup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (void*)R_R8); } void pFpppLi(x64emu_t *emu, uintptr_t fcn) { pFpppLi_t fn = (pFpppLi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (int64_t)R_R8); } void pFppppi(x64emu_t *emu, uintptr_t fcn) { pFppppi_t fn = (pFppppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void pFppppp(x64emu_t *emu, uintptr_t fcn) { pFppppp_t fn = (pFppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFEiiipp(x64emu_t *emu, uintptr_t fcn) { vFEiiipp_t fn = (vFEiiipp_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void vFEpiLpp(x64emu_t *emu, uintptr_t fcn) { vFEpiLpp_t fn = (vFEpiLpp_t)fcn; fn(emu, (void*)R_RDI, (int64_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void vFEpippp(x64emu_t *emu, uintptr_t fcn) { vFEpippp_t fn = (vFEpippp_t)fcn; fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFEpuipp(x64emu_t *emu, uintptr_t fcn) { vFEpuipp_t fn = (vFEpuipp_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFEpLLpp(x64emu_t *emu, uintptr_t fcn) { vFEpLLpp_t fn = (vFEpLLpp_t)fcn; fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8); } +void vFEppipV(x64emu_t *emu, uintptr_t fcn) { vFEppipV_t fn = (vFEppipV_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); } +void vFEppupp(x64emu_t *emu, uintptr_t fcn) { vFEppupp_t fn = (vFEppupp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFEppppp(x64emu_t *emu, uintptr_t fcn) { vFEppppp_t fn = (vFEppppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void vFiiiiii(x64emu_t *emu, uintptr_t fcn) { vFiiiiii_t fn = (vFiiiiii_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void vFiiiuil(x64emu_t *emu, uintptr_t fcn) { vFiiiuil_t fn = (vFiiiuil_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (intptr_t)R_R9); } @@ -2593,32 +3072,46 @@ void vFuppppp(x64emu_t *emu, uintptr_t fcn) { vFuppppp_t fn = (vFuppppp_t)fcn; f void vFffffff(x64emu_t *emu, uintptr_t fcn) { vFffffff_t fn = (vFffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0]); } void vFdddddd(x64emu_t *emu, uintptr_t fcn) { vFdddddd_t fn = (vFdddddd_t)fcn; fn(emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0]); } void vFpiiiii(x64emu_t *emu, uintptr_t fcn) { vFpiiiii_t fn = (vFpiiiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void vFpiiipp(x64emu_t *emu, uintptr_t fcn) { vFpiiipp_t fn = (vFpiiipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void vFpiiuuu(x64emu_t *emu, uintptr_t fcn) { vFpiiuuu_t fn = (vFpiiuuu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); } void vFpiippp(x64emu_t *emu, uintptr_t fcn) { vFpiippp_t fn = (vFpiippp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void vFpipipV(x64emu_t *emu, uintptr_t fcn) { vFpipipV_t fn = (vFpipipV_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)(R_RSP + 8)); } void vFpipppi(x64emu_t *emu, uintptr_t fcn) { vFpipppi_t fn = (vFpipppi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } +void vFpuiiiu(x64emu_t *emu, uintptr_t fcn) { vFpuiiiu_t fn = (vFpuiiiu_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9); } +void vFpuiipp(x64emu_t *emu, uintptr_t fcn) { vFpuiipp_t fn = (vFpuiipp_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void vFpudddd(x64emu_t *emu, uintptr_t fcn) { vFpudddd_t fn = (vFpudddd_t)fcn; fn((void*)R_RDI, (uint64_t)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0]); } void vFpdddii(x64emu_t *emu, uintptr_t fcn) { vFpdddii_t fn = (vFpdddii_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], (int64_t)R_RSI, (int64_t)R_RDX); } void vFpddddd(x64emu_t *emu, uintptr_t fcn) { vFpddddd_t fn = (vFpddddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0]); } void vFppiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiii_t fn = (vFppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void vFppiiip(x64emu_t *emu, uintptr_t fcn) { vFppiiip_t fn = (vFppiiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } +void vFppiiui(x64emu_t *emu, uintptr_t fcn) { vFppiiui_t fn = (vFppiiui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9); } void vFppiipi(x64emu_t *emu, uintptr_t fcn) { vFppiipi_t fn = (vFppiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); } +void vFppiipp(x64emu_t *emu, uintptr_t fcn) { vFppiipp_t fn = (vFppiipp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void vFppilpp(x64emu_t *emu, uintptr_t fcn) { vFppilpp_t fn = (vFppilpp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8, (void*)R_R9); } void vFppippi(x64emu_t *emu, uintptr_t fcn) { vFppippi_t fn = (vFppippi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void vFppippp(x64emu_t *emu, uintptr_t fcn) { vFppippp_t fn = (vFppippp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void vFppuuuu(x64emu_t *emu, uintptr_t fcn) { vFppuuuu_t fn = (vFppuuuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); } void vFppupii(x64emu_t *emu, uintptr_t fcn) { vFppupii_t fn = (vFppupii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void vFppuppp(x64emu_t *emu, uintptr_t fcn) { vFppuppp_t fn = (vFppuppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void vFppdidd(x64emu_t *emu, uintptr_t fcn) { vFppdidd_t fn = (vFppdidd_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (int64_t)R_RDX, emu->xmm[1].d[0], emu->xmm[2].d[0]); } void vFpplppi(x64emu_t *emu, uintptr_t fcn) { vFpplppi_t fn = (vFpplppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void vFpplppp(x64emu_t *emu, uintptr_t fcn) { vFpplppp_t fn = (vFpplppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void vFppLppi(x64emu_t *emu, uintptr_t fcn) { vFppLppi_t fn = (vFppLppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void vFppLppp(x64emu_t *emu, uintptr_t fcn) { vFppLppp_t fn = (vFppLppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void vFpppiii(x64emu_t *emu, uintptr_t fcn) { vFpppiii_t fn = (vFpppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void vFpppiip(x64emu_t *emu, uintptr_t fcn) { vFpppiip_t fn = (vFpppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } +void vFpppiff(x64emu_t *emu, uintptr_t fcn) { vFpppiff_t fn = (vFpppiff_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, emu->xmm[0].f[0], emu->xmm[1].f[0]); } void vFpppipu(x64emu_t *emu, uintptr_t fcn) { vFpppipu_t fn = (vFpppipu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9); } +void vFpppuii(x64emu_t *emu, uintptr_t fcn) { vFpppuii_t fn = (vFpppuii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void vFppppii(x64emu_t *emu, uintptr_t fcn) { vFppppii_t fn = (vFppppii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void vFpppppi(x64emu_t *emu, uintptr_t fcn) { vFpppppi_t fn = (vFpppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } +void vFpppppu(x64emu_t *emu, uintptr_t fcn) { vFpppppu_t fn = (vFpppppu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9); } +void vFpppppL(x64emu_t *emu, uintptr_t fcn) { vFpppppL_t fn = (vFpppppL_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } void vFpppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppp_t fn = (vFpppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void cFppLppi(x64emu_t *emu, uintptr_t fcn) { cFppLppi_t fn = (cFppLppi_t)fcn; R_RAX=fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void iFEiippi(x64emu_t *emu, uintptr_t fcn) { iFEiippi_t fn = (iFEiippi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } +void iFEiippp(x64emu_t *emu, uintptr_t fcn) { iFEiippp_t fn = (iFEiippp_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } +void iFEipppi(x64emu_t *emu, uintptr_t fcn) { iFEipppi_t fn = (iFEipppi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8); } void iFElpppp(x64emu_t *emu, uintptr_t fcn) { iFElpppp_t fn = (iFElpppp_t)fcn; R_RAX=(int64_t)fn(emu, (intptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFEpiipp(x64emu_t *emu, uintptr_t fcn) { iFEpiipp_t fn = (iFEpiipp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } void iFEpiipV(x64emu_t *emu, uintptr_t fcn) { iFEpiipV_t fn = (iFEpiipV_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)(R_RSP + 8)); } @@ -2641,9 +3134,11 @@ void iFlpippp(x64emu_t *emu, uintptr_t fcn) { iFlpippp_t fn = (iFlpippp_t)fcn; R void iFLppipp(x64emu_t *emu, uintptr_t fcn) { iFLppipp_t fn = (iFLppipp_t)fcn; R_RAX=(int64_t)fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFpiiiii(x64emu_t *emu, uintptr_t fcn) { iFpiiiii_t fn = (iFpiiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void iFpiiipp(x64emu_t *emu, uintptr_t fcn) { iFpiiipp_t fn = (iFpiiipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } +void iFpiippu(x64emu_t *emu, uintptr_t fcn) { iFpiippu_t fn = (iFpiippu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9); } void iFpiippp(x64emu_t *emu, uintptr_t fcn) { iFpiippp_t fn = (iFpiippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFpiuuup(x64emu_t *emu, uintptr_t fcn) { iFpiuuup_t fn = (iFpiuuup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (void*)R_R9); } void iFpiuupp(x64emu_t *emu, uintptr_t fcn) { iFpiuupp_t fn = (iFpiuupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9); } +void iFpipipi(x64emu_t *emu, uintptr_t fcn) { iFpipipi_t fn = (iFpipipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); } void iFpippip(x64emu_t *emu, uintptr_t fcn) { iFpippip_t fn = (iFpippip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); } void iFpipppL(x64emu_t *emu, uintptr_t fcn) { iFpipppL_t fn = (iFpipppL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } void iFpipppp(x64emu_t *emu, uintptr_t fcn) { iFpipppp_t fn = (iFpipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } @@ -2651,16 +3146,24 @@ void iFpWpppp(x64emu_t *emu, uintptr_t fcn) { iFpWpppp_t fn = (iFpWpppp_t)fcn; R void iFpuiCpp(x64emu_t *emu, uintptr_t fcn) { iFpuiCpp_t fn = (iFpuiCpp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (uint8_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFpuippp(x64emu_t *emu, uintptr_t fcn) { iFpuippp_t fn = (iFpuippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFpupuui(x64emu_t *emu, uintptr_t fcn) { iFpupuui_t fn = (iFpupuui_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9); } +void iFppiiip(x64emu_t *emu, uintptr_t fcn) { iFppiiip_t fn = (iFppiiip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } void iFppiiuu(x64emu_t *emu, uintptr_t fcn) { iFppiiuu_t fn = (iFppiiuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); } void iFppiipi(x64emu_t *emu, uintptr_t fcn) { iFppiipi_t fn = (iFppiipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); } +void iFppiipp(x64emu_t *emu, uintptr_t fcn) { iFppiipp_t fn = (iFppiipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppipii(x64emu_t *emu, uintptr_t fcn) { iFppipii_t fn = (iFppipii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void iFppipiL(x64emu_t *emu, uintptr_t fcn) { iFppipiL_t fn = (iFppipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (uintptr_t)R_R9); } +void iFppipip(x64emu_t *emu, uintptr_t fcn) { iFppipip_t fn = (iFppipip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); } +void iFppIipp(x64emu_t *emu, uintptr_t fcn) { iFppIipp_t fn = (iFppIipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppIppp(x64emu_t *emu, uintptr_t fcn) { iFppIppp_t fn = (iFppIppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppuiii(x64emu_t *emu, uintptr_t fcn) { iFppuiii_t fn = (iFppuiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void iFppuiiL(x64emu_t *emu, uintptr_t fcn) { iFppuiiL_t fn = (iFppuiiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uintptr_t)R_R9); } +void iFppuipp(x64emu_t *emu, uintptr_t fcn) { iFppuipp_t fn = (iFppuipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppuIII(x64emu_t *emu, uintptr_t fcn) { iFppuIII_t fn = (iFppuIII_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void iFppuupp(x64emu_t *emu, uintptr_t fcn) { iFppuupp_t fn = (iFppuupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppupip(x64emu_t *emu, uintptr_t fcn) { iFppupip_t fn = (iFppupip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); } +void iFppuppp(x64emu_t *emu, uintptr_t fcn) { iFppuppp_t fn = (iFppuppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void iFppUipp(x64emu_t *emu, uintptr_t fcn) { iFppUipp_t fn = (iFppUipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } +void iFppdidd(x64emu_t *emu, uintptr_t fcn) { iFppdidd_t fn = (iFppdidd_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], (int64_t)R_RDX, emu->xmm[1].d[0], emu->xmm[2].d[0]); } void iFpplppi(x64emu_t *emu, uintptr_t fcn) { iFpplppi_t fn = (iFpplppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void iFppLupp(x64emu_t *emu, uintptr_t fcn) { iFppLupp_t fn = (iFppLupp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void iFppLpLp(x64emu_t *emu, uintptr_t fcn) { iFppLpLp_t fn = (iFppLpLp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (void*)R_R9); } @@ -2676,8 +3179,11 @@ void iFppppup(x64emu_t *emu, uintptr_t fcn) { iFppppup_t fn = (iFppppup_t)fcn; R void iFpppppi(x64emu_t *emu, uintptr_t fcn) { iFpppppi_t fn = (iFpppppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void iFpppppL(x64emu_t *emu, uintptr_t fcn) { iFpppppL_t fn = (iFpppppL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } void iFpppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppp_t fn = (iFpppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void uFEiippp(x64emu_t *emu, uintptr_t fcn) { uFEiippp_t fn = (uFEiippp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } +void uFEiuppp(x64emu_t *emu, uintptr_t fcn) { uFEiuppp_t fn = (uFEiuppp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void uFpippup(x64emu_t *emu, uintptr_t fcn) { uFpippup_t fn = (uFpippup_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)R_R9); } void uFpuippp(x64emu_t *emu, uintptr_t fcn) { uFpuippp_t fn = (uFpuippp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void uFppippp(x64emu_t *emu, uintptr_t fcn) { uFppippp_t fn = (uFppippp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void uFpppppi(x64emu_t *emu, uintptr_t fcn) { uFpppppi_t fn = (uFpppppi_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void uFpppppp(x64emu_t *emu, uintptr_t fcn) { uFpppppp_t fn = (uFpppppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void UFpippup(x64emu_t *emu, uintptr_t fcn) { UFpippup_t fn = (UFpippup_t)fcn; R_RAX=fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)R_R9); } @@ -2686,7 +3192,9 @@ void lFipipLu(x64emu_t *emu, uintptr_t fcn) { lFipipLu_t fn = (lFipipLu_t)fcn; R void lFipLipu(x64emu_t *emu, uintptr_t fcn) { lFipLipu_t fn = (lFipLipu_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9); } void lFipLipp(x64emu_t *emu, uintptr_t fcn) { lFipLipp_t fn = (lFipLipp_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void lFipLpLL(x64emu_t *emu, uintptr_t fcn) { lFipLpLL_t fn = (lFipLpLL_t)fcn; R_RAX=(intptr_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9); } +void LFEupppp(x64emu_t *emu, uintptr_t fcn) { LFEupppp_t fn = (LFEupppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (uint64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void LFpipipi(x64emu_t *emu, uintptr_t fcn) { LFpipipi_t fn = (LFpipipi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9); } +void LFpLippp(x64emu_t *emu, uintptr_t fcn) { LFpLippp_t fn = (LFpLippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void LFSpLiip(x64emu_t *emu, uintptr_t fcn) { LFSpLiip_t fn = (LFSpLiip_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } void pFEpippp(x64emu_t *emu, uintptr_t fcn) { pFEpippp_t fn = (pFEpippp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8); } void pFEpuipp(x64emu_t *emu, uintptr_t fcn) { pFEpuipp_t fn = (pFEpuipp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8); } @@ -2709,13 +3217,21 @@ void pFpCuuWW(x64emu_t *emu, uintptr_t fcn) { pFpCuuWW_t fn = (pFpCuuWW_t)fcn; R void pFpCuuup(x64emu_t *emu, uintptr_t fcn) { pFpCuuup_t fn = (pFpCuuup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (void*)R_R9); } void pFpuuwwu(x64emu_t *emu, uintptr_t fcn) { pFpuuwwu_t fn = (pFpuuwwu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint64_t)R_R9); } void pFpuuuuu(x64emu_t *emu, uintptr_t fcn) { pFpuuuuu_t fn = (pFpuuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9); } +void pFplpppp(x64emu_t *emu, uintptr_t fcn) { pFplpppp_t fn = (pFplpppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void pFppiiii(x64emu_t *emu, uintptr_t fcn) { pFppiiii_t fn = (pFppiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void pFppiipp(x64emu_t *emu, uintptr_t fcn) { pFppiipp_t fn = (pFppiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void pFppiCCC(x64emu_t *emu, uintptr_t fcn) { pFppiCCC_t fn = (pFppiCCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9); } void pFppippi(x64emu_t *emu, uintptr_t fcn) { pFppippi_t fn = (pFppippi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void pFppippp(x64emu_t *emu, uintptr_t fcn) { pFppippp_t fn = (pFppippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void pFpppiii(x64emu_t *emu, uintptr_t fcn) { pFpppiii_t fn = (pFpppiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void pFpppiui(x64emu_t *emu, uintptr_t fcn) { pFpppiui_t fn = (pFpppiui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9); } +void pFppppii(x64emu_t *emu, uintptr_t fcn) { pFppppii_t fn = (pFppppii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void pFpppppi(x64emu_t *emu, uintptr_t fcn) { pFpppppi_t fn = (pFpppppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void pFpppppu(x64emu_t *emu, uintptr_t fcn) { pFpppppu_t fn = (pFpppppu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9); } void pFpppppp(x64emu_t *emu, uintptr_t fcn) { pFpppppp_t fn = (pFpppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void pFSpiiii(x64emu_t *emu, uintptr_t fcn) { pFSpiiii_t fn = (pFSpiiii_t)fcn; R_RAX=(uintptr_t)fn(io_convert((void*)R_RDI), (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } +void vFEpipppp(x64emu_t *emu, uintptr_t fcn) { vFEpipppp_t fn = (vFEpipppp_t)fcn; fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void vFEpuipuV(x64emu_t *emu, uintptr_t fcn) { vFEpuipuV_t fn = (vFEpuipuV_t)fcn; fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)(R_RSP + 8)); } void vFEpppppp(x64emu_t *emu, uintptr_t fcn) { vFEpppppp_t fn = (vFEpppppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void vFiiiiiip(x64emu_t *emu, uintptr_t fcn) { vFiiiiiip_t fn = (vFiiiiiip_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFiiiiuup(x64emu_t *emu, uintptr_t fcn) { vFiiiiuup_t fn = (vFiiiiuup_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8)); } @@ -2762,10 +3278,17 @@ void vFulpiill(x64emu_t *emu, uintptr_t fcn) { vFulpiill_t fn = (vFulpiill_t)fcn void vFlipuiip(x64emu_t *emu, uintptr_t fcn) { vFlipuiip_t fn = (vFlipuiip_t)fcn; fn((intptr_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFpiiiipp(x64emu_t *emu, uintptr_t fcn) { vFpiiiipp_t fn = (vFpiiiipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFpiiliip(x64emu_t *emu, uintptr_t fcn) { vFpiiliip_t fn = (vFpiiliip_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void vFpiipCpp(x64emu_t *emu, uintptr_t fcn) { vFpiipCpp_t fn = (vFpiipCpp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (uint8_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFpipipii(x64emu_t *emu, uintptr_t fcn) { vFpipipii_t fn = (vFpipipii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFpipppii(x64emu_t *emu, uintptr_t fcn) { vFpipppii_t fn = (vFpipppii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } void vFpddiidd(x64emu_t *emu, uintptr_t fcn) { vFpddiidd_t fn = (vFpddiidd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].d[0], emu->xmm[3].d[0]); } void vFpdddddd(x64emu_t *emu, uintptr_t fcn) { vFpdddddd_t fn = (vFpdddddd_t)fcn; fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0]); } +void vFppiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiii_t fn = (vFppiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFppiiiip(x64emu_t *emu, uintptr_t fcn) { vFppiiiip_t fn = (vFppiiiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFppiiipi(x64emu_t *emu, uintptr_t fcn) { vFppiiipi_t fn = (vFppiiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFppiipii(x64emu_t *emu, uintptr_t fcn) { vFppiipii_t fn = (vFppiipii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFppiipuu(x64emu_t *emu, uintptr_t fcn) { vFppiipuu_t fn = (vFppiipuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } +void vFppiippp(x64emu_t *emu, uintptr_t fcn) { vFppiippp_t fn = (vFppiippp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void vFppilppi(x64emu_t *emu, uintptr_t fcn) { vFppilppi_t fn = (vFppilppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void vFppipiip(x64emu_t *emu, uintptr_t fcn) { vFppipiip_t fn = (vFppipiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFppipipp(x64emu_t *emu, uintptr_t fcn) { vFppipipp_t fn = (vFppipipp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } @@ -2775,9 +3298,17 @@ void vFppLpppp(x64emu_t *emu, uintptr_t fcn) { vFppLpppp_t fn = (vFppLpppp_t)fcn void vFpppiiii(x64emu_t *emu, uintptr_t fcn) { vFpppiiii_t fn = (vFpppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } void vFpppiipi(x64emu_t *emu, uintptr_t fcn) { vFpppiipi_t fn = (vFpppiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void vFpppiipp(x64emu_t *emu, uintptr_t fcn) { vFpppiipp_t fn = (vFpppiipp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFpppippi(x64emu_t *emu, uintptr_t fcn) { vFpppippi_t fn = (vFpppippi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void vFpppuuuu(x64emu_t *emu, uintptr_t fcn) { vFpppuuuu_t fn = (vFpppuuuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } +void vFppppiii(x64emu_t *emu, uintptr_t fcn) { vFppppiii_t fn = (vFppppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFppppiip(x64emu_t *emu, uintptr_t fcn) { vFppppiip_t fn = (vFppppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFppppipi(x64emu_t *emu, uintptr_t fcn) { vFppppipi_t fn = (vFppppipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFpppppip(x64emu_t *emu, uintptr_t fcn) { vFpppppip_t fn = (vFpppppip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void vFppppppi(x64emu_t *emu, uintptr_t fcn) { vFppppppi_t fn = (vFppppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } +void vFppppppp(x64emu_t *emu, uintptr_t fcn) { vFppppppp_t fn = (vFppppppp_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 iFEpupppp(x64emu_t *emu, uintptr_t fcn) { iFEpupppp_t fn = (iFEpupppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFEpLiLpV(x64emu_t *emu, uintptr_t fcn) { iFEpLiLpV_t fn = (iFEpLiLpV_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)(R_RSP + 8)); } +void iFEppuppp(x64emu_t *emu, uintptr_t fcn) { iFEppuppp_t fn = (iFEppuppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void iFEppLpIi(x64emu_t *emu, uintptr_t fcn) { iFEppLpIi_t fn = (iFEppLpIi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void iFEpppiiu(x64emu_t *emu, uintptr_t fcn) { iFEpppiiu_t fn = (iFEpppiiu_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9); } void iFEpppppL(x64emu_t *emu, uintptr_t fcn) { iFEpppppL_t fn = (iFEpppppL_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9); } @@ -2809,10 +3340,12 @@ void iFppiipiL(x64emu_t *emu, uintptr_t fcn) { iFppiipiL_t fn = (iFppiipiL_t)fcn void iFppiuppi(x64emu_t *emu, uintptr_t fcn) { iFppiuppi_t fn = (iFppiuppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void iFppipiip(x64emu_t *emu, uintptr_t fcn) { iFppipiip_t fn = (iFppipiip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void iFppipipi(x64emu_t *emu, uintptr_t fcn) { iFppipipi_t fn = (iFppipipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } +void iFppipipp(x64emu_t *emu, uintptr_t fcn) { iFppipipp_t fn = (iFppipipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFppippip(x64emu_t *emu, uintptr_t fcn) { iFppippip_t fn = (iFppippip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } void iFppipppi(x64emu_t *emu, uintptr_t fcn) { iFppipppi_t fn = (iFppipppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void iFppipppp(x64emu_t *emu, uintptr_t fcn) { iFppipppp_t fn = (iFppipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFppuipiL(x64emu_t *emu, uintptr_t fcn) { iFppuipiL_t fn = (iFppuipiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(uintptr_t*)(R_RSP + 8)); } +void iFppLiipp(x64emu_t *emu, uintptr_t fcn) { iFppLiipp_t fn = (iFppLiipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFpppiiii(x64emu_t *emu, uintptr_t fcn) { iFpppiiii_t fn = (iFpppiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } void iFpppiiuu(x64emu_t *emu, uintptr_t fcn) { iFpppiiuu_t fn = (iFpppiiuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } void iFpppiiup(x64emu_t *emu, uintptr_t fcn) { iFpppiiup_t fn = (iFpppiiup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8)); } @@ -2824,12 +3357,18 @@ void iFpppuiii(x64emu_t *emu, uintptr_t fcn) { iFpppuiii_t fn = (iFpppuiii_t)fcn void iFppppiii(x64emu_t *emu, uintptr_t fcn) { iFppppiii_t fn = (iFppppiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } void iFppppdpi(x64emu_t *emu, uintptr_t fcn) { iFppppdpi_t fn = (iFppppdpi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, emu->xmm[0].d[0], (void*)R_R8, (int64_t)R_R9); } void iFpppppip(x64emu_t *emu, uintptr_t fcn) { iFpppppip_t fn = (iFpppppip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void iFpppppup(x64emu_t *emu, uintptr_t fcn) { iFpppppup_t fn = (iFpppppup_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8)); } +void iFppppppi(x64emu_t *emu, uintptr_t fcn) { iFppppppi_t fn = (iFppppppi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void iFppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppp_t fn = (iFppppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void uFEiipppp(x64emu_t *emu, uintptr_t fcn) { uFEiipppp_t fn = (uFEiipppp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } +void uFEpiippp(x64emu_t *emu, uintptr_t fcn) { uFEpiippp_t fn = (uFEpiippp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9); } void uFuippppp(x64emu_t *emu, uintptr_t fcn) { uFuippppp_t fn = (uFuippppp_t)fcn; R_RAX=(uint64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void uFppiuppp(x64emu_t *emu, uintptr_t fcn) { uFppiuppp_t fn = (uFppiuppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void LFEpppppu(x64emu_t *emu, uintptr_t fcn) { LFEpppppu_t fn = (LFEpppppu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9); } void pFEpLiiii(x64emu_t *emu, uintptr_t fcn) { pFEpLiiii_t fn = (pFEpLiiii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void pFEpLiiiI(x64emu_t *emu, uintptr_t fcn) { pFEpLiiiI_t fn = (pFEpLiiiI_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9); } void pFEpLiiil(x64emu_t *emu, uintptr_t fcn) { pFEpLiiil_t fn = (pFEpLiiil_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (uintptr_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (intptr_t)R_R9); } +void pFEppuipp(x64emu_t *emu, uintptr_t fcn) { pFEppuipp_t fn = (pFEppuipp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9); } void pFEppppip(x64emu_t *emu, uintptr_t fcn) { pFEppppip_t fn = (pFEppppip_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9); } void pFEpppppi(x64emu_t *emu, uintptr_t fcn) { pFEpppppi_t fn = (pFEpppppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9); } void pFifffppp(x64emu_t *emu, uintptr_t fcn) { pFifffppp_t fn = (pFifffppp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], (void*)R_RSI, (void*)R_RDX, (void*)R_RCX); } @@ -2841,12 +3380,36 @@ void pFpCuuuuu(x64emu_t *emu, uintptr_t fcn) { pFpCuuuuu_t fn = (pFpCuuuuu_t)fcn void pFpCpWWup(x64emu_t *emu, uintptr_t fcn) { pFpCpWWup_t fn = (pFpCpWWup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (void*)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8)); } void pFpuuuwwu(x64emu_t *emu, uintptr_t fcn) { pFpuuuwwu_t fn = (pFpuuuwwu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(uint64_t*)(R_RSP + 8)); } void pFpuupwwC(x64emu_t *emu, uintptr_t fcn) { pFpuupwwC_t fn = (pFpuupwwC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(uint8_t*)(R_RSP + 8)); } +void pFplppppp(x64emu_t *emu, uintptr_t fcn) { pFplppppp_t fn = (pFplppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFppiiipp(x64emu_t *emu, uintptr_t fcn) { pFppiiipp_t fn = (pFppiiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void pFppiiCCC(x64emu_t *emu, uintptr_t fcn) { pFppiiCCC_t fn = (pFppiiCCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint8_t*)(R_RSP + 8)); } +void pFppiippp(x64emu_t *emu, uintptr_t fcn) { pFppiippp_t fn = (pFppiippp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFppipipp(x64emu_t *emu, uintptr_t fcn) { pFppipipp_t fn = (pFppipipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void pFppuuppp(x64emu_t *emu, uintptr_t fcn) { pFppuuppp_t fn = (pFppuuppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFppLiiip(x64emu_t *emu, uintptr_t fcn) { pFppLiiip_t fn = (pFppLiiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void pFppLipip(x64emu_t *emu, uintptr_t fcn) { pFppLipip_t fn = (pFppLipip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void pFpppccci(x64emu_t *emu, uintptr_t fcn) { pFpppccci_t fn = (pFpppccci_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int8_t)R_RCX, (int8_t)R_R8, (int8_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppiiii(x64emu_t *emu, uintptr_t fcn) { pFpppiiii_t fn = (pFpppiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppiipp(x64emu_t *emu, uintptr_t fcn) { pFpppiipp_t fn = (pFpppiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFpppIIIi(x64emu_t *emu, uintptr_t fcn) { pFpppIIIi_t fn = (pFpppIIIi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppCCCi(x64emu_t *emu, uintptr_t fcn) { pFpppCCCi_t fn = (pFpppCCCi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint8_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppuuui(x64emu_t *emu, uintptr_t fcn) { pFpppuuui_t fn = (pFpppuuui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8)); } void pFpppuupp(x64emu_t *emu, uintptr_t fcn) { pFpppuupp_t fn = (pFpppuupp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFpppUUUi(x64emu_t *emu, uintptr_t fcn) { pFpppUUUi_t fn = (pFpppUUUi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppfffi(x64emu_t *emu, uintptr_t fcn) { pFpppfffi_t fn = (pFpppfffi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], (int64_t)R_RCX); } +void pFpppdddi(x64emu_t *emu, uintptr_t fcn) { pFpppdddi_t fn = (pFpppdddi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], (int64_t)R_RCX); } +void pFpppllli(x64emu_t *emu, uintptr_t fcn) { pFpppllli_t fn = (pFpppllli_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8, (intptr_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFpppLLLi(x64emu_t *emu, uintptr_t fcn) { pFpppLLLi_t fn = (pFpppLLLi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (uintptr_t)R_R9, *(int64_t*)(R_RSP + 8)); } void pFppppuuu(x64emu_t *emu, uintptr_t fcn) { pFppppuuu_t fn = (pFppppuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } void pFpppppuu(x64emu_t *emu, uintptr_t fcn) { pFpppppuu_t fn = (pFpppppuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } +void pFppppppi(x64emu_t *emu, uintptr_t fcn) { pFppppppi_t fn = (pFppppppi_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void pFppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppp_t fn = (pFppppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFEiippppV(x64emu_t *emu, uintptr_t fcn) { vFEiippppV_t fn = (vFEiippppV_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, (void*)(R_RSP + 8)); } +void vFEiupippp(x64emu_t *emu, uintptr_t fcn) { vFEiupippp_t fn = (vFEiupippp_t)fcn; fn(emu, (int64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFEippippp(x64emu_t *emu, uintptr_t fcn) { vFEippippp_t fn = (vFEippippp_t)fcn; fn(emu, (int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFEppipppp(x64emu_t *emu, uintptr_t fcn) { vFEppipppp_t fn = (vFEppipppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void vFEpppuipV(x64emu_t *emu, uintptr_t fcn) { vFEpppuipV_t fn = (vFEpppuipV_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, (void*)(R_RSP + 8)); } +void vFEpppppuu(x64emu_t *emu, uintptr_t fcn) { vFEpppppuu_t fn = (vFEpppppuu_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8)); } void vFiiiiuuip(x64emu_t *emu, uintptr_t fcn) { vFiiiiuuip_t fn = (vFiiiiuuip_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFilipufip(x64emu_t *emu, uintptr_t fcn) { vFilipufip_t fn = (vFilipufip_t)fcn; fn((int64_t)R_RDI, (intptr_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (uint64_t)R_R8, emu->xmm[0].f[0], (int64_t)R_R9, *(void**)(R_RSP + 8)); } void vFuiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiii_t fn = (vFuiiiiiii_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } @@ -2870,14 +3433,20 @@ void vFuuuuufff(x64emu_t *emu, uintptr_t fcn) { vFuuuuufff_t fn = (vFuuuuufff_t) void vFulllplip(x64emu_t *emu, uintptr_t fcn) { vFulllplip_t fn = (vFulllplip_t)fcn; fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, (intptr_t)R_RCX, (void*)R_R8, (intptr_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffff_t fn = (vFffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0]); } void vFlipuiuip(x64emu_t *emu, uintptr_t fcn) { vFlipuiuip_t fn = (vFlipuiuip_t)fcn; fn((intptr_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void vFpiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFpiiiiiii_t fn = (vFpiiiiiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void vFpiiiipii(x64emu_t *emu, uintptr_t fcn) { vFpiiiipii_t fn = (vFpiiiipii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFpippiiuu(x64emu_t *emu, uintptr_t fcn) { vFpippiiuu_t fn = (vFpippiiuu_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void vFpippiipi(x64emu_t *emu, uintptr_t fcn) { vFpippiipi_t fn = (vFpippiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void vFppiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiii_t fn = (vFppiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFppiiipii(x64emu_t *emu, uintptr_t fcn) { vFppiiipii_t fn = (vFppiiipii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFppipipii(x64emu_t *emu, uintptr_t fcn) { vFppipipii_t fn = (vFppipipii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void vFppipppui(x64emu_t *emu, uintptr_t fcn) { vFppipppui_t fn = (vFppipppui_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFppippppi(x64emu_t *emu, uintptr_t fcn) { vFppippppi_t fn = (vFppippppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void vFppippppp(x64emu_t *emu, uintptr_t fcn) { vFppippppp_t fn = (vFppippppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFpplppppi(x64emu_t *emu, uintptr_t fcn) { vFpplppppi_t fn = (vFpplppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFpplppppp(x64emu_t *emu, uintptr_t fcn) { vFpplppppp_t fn = (vFpplppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFppppiipi(x64emu_t *emu, uintptr_t fcn) { vFppppiipi_t fn = (vFppppiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void iFEipupupi(x64emu_t *emu, uintptr_t fcn) { iFEipupupi_t fn = (iFEipupupi_t)fcn; R_RAX=(int64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void iFEpippppp(x64emu_t *emu, uintptr_t fcn) { iFEpippppp_t fn = (iFEpippppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFEpuuLppp(x64emu_t *emu, uintptr_t fcn) { iFEpuuLppp_t fn = (iFEpuuLppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uintptr_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFEppppipp(x64emu_t *emu, uintptr_t fcn) { iFEppppipp_t fn = (iFEppppipp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } @@ -2888,10 +3457,12 @@ void iFuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { iFuuuuuuuu_t fn = (iFuuuuuuuu_t) void iFullfpppp(x64emu_t *emu, uintptr_t fcn) { iFullfpppp_t fn = (iFullfpppp_t)fcn; R_RAX=(int64_t)fn((uint64_t)R_RDI, (intptr_t)R_RSI, (intptr_t)R_RDX, emu->xmm[0].f[0], (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } void iFpWCuWCuu(x64emu_t *emu, uintptr_t fcn) { iFpWCuWCuu_t fn = (iFpWCuWCuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint16_t)R_RSI, (uint8_t)R_RDX, (uint64_t)R_RCX, (uint16_t)R_R8, (uint8_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void iFpWWipppp(x64emu_t *emu, uintptr_t fcn) { iFpWWipppp_t fn = (iFpWWipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint16_t)R_RSI, (uint16_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void iFpuiipppp(x64emu_t *emu, uintptr_t fcn) { iFpuiipppp_t fn = (iFpuiipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFpuippLpp(x64emu_t *emu, uintptr_t fcn) { iFpuippLpp_t fn = (iFpuippLpp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (uintptr_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFpuuiiiii(x64emu_t *emu, uintptr_t fcn) { iFpuuiiiii_t fn = (iFpuuiiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void iFpupppWWu(x64emu_t *emu, uintptr_t fcn) { iFpupppWWu_t fn = (iFpupppWWu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void iFpupppppp(x64emu_t *emu, uintptr_t fcn) { iFpupppppp_t fn = (iFpupppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void iFppiiiiiu(x64emu_t *emu, uintptr_t fcn) { iFppiiiiiu_t fn = (iFppiiiiiu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void iFppIIIppp(x64emu_t *emu, uintptr_t fcn) { iFppIIIppp_t fn = (iFppIIIppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFpppiiipi(x64emu_t *emu, uintptr_t fcn) { iFpppiiipi_t fn = (iFpppiiipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void iFpppiippp(x64emu_t *emu, uintptr_t fcn) { iFpppiippp_t fn = (iFpppiippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } @@ -2900,12 +3471,24 @@ void iFpppipppp(x64emu_t *emu, uintptr_t fcn) { iFpppipppp_t fn = (iFpppipppp_t) void iFppppiipi(x64emu_t *emu, uintptr_t fcn) { iFppppiipi_t fn = (iFppppiipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void iFppppppii(x64emu_t *emu, uintptr_t fcn) { iFppppppii_t fn = (iFppppppii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void iFpppppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppppp_t fn = (iFpppppppp_t)fcn; R_RAX=(int64_t)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 uFEipipppp(x64emu_t *emu, uintptr_t fcn) { uFEipipppp_t fn = (uFEipipppp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void uFEpiupppp(x64emu_t *emu, uintptr_t fcn) { uFEpiupppp_t fn = (uFEpiupppp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void uFEppipppp(x64emu_t *emu, uintptr_t fcn) { uFEppipppp_t fn = (uFEppipppp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void uFEppppppp(x64emu_t *emu, uintptr_t fcn) { uFEppppppp_t fn = (uFEppppppp_t)fcn; R_RAX=(uint64_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 uFuipppppp(x64emu_t *emu, uintptr_t fcn) { uFuipppppp_t fn = (uFuipppppp_t)fcn; R_RAX=(uint64_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void uFppuppppp(x64emu_t *emu, uintptr_t fcn) { uFppuppppp_t fn = (uFppuppppp_t)fcn; R_RAX=(uint64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void LFEpiupppp(x64emu_t *emu, uintptr_t fcn) { LFEpiupppp_t fn = (LFEpiupppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (uint64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8)); } +void pFEppLiiip(x64emu_t *emu, uintptr_t fcn) { pFEppLiiip_t fn = (pFEppLiiip_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8)); } +void pFEpppuipV(x64emu_t *emu, uintptr_t fcn) { pFEpppuipV_t fn = (pFEpppuipV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, (void*)(R_RSP + 8)); } +void pFEpppppiV(x64emu_t *emu, uintptr_t fcn) { pFEpppppiV_t fn = (pFEpppppiV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, (void*)(R_RSP + 8)); } +void pFEppppppi(x64emu_t *emu, uintptr_t fcn) { pFEppppppi_t fn = (pFEppppppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8)); } void pFEppppppp(x64emu_t *emu, uintptr_t fcn) { pFEppppppp_t fn = (pFEppppppp_t)fcn; R_RAX=(uintptr_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 pFiipppppp(x64emu_t *emu, uintptr_t fcn) { pFiipppppp_t fn = (pFiipppppp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void pFuiiiuuuu(x64emu_t *emu, uintptr_t fcn) { pFuiiiuuuu_t fn = (pFuiiiuuuu_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void pFuupupipp(x64emu_t *emu, uintptr_t fcn) { pFuupupipp_t fn = (pFuupupipp_t)fcn; R_RAX=(uintptr_t)fn((uint64_t)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void pFpiiiiiuu(x64emu_t *emu, uintptr_t fcn) { pFpiiiiiuu_t fn = (pFpiiiiiuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void pFpipiiiip(x64emu_t *emu, uintptr_t fcn) { pFpipiiiip_t fn = (pFpipiiiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void pFpipppppp(x64emu_t *emu, uintptr_t fcn) { pFpipppppp_t fn = (pFpipppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void pFpCCuuwwC(x64emu_t *emu, uintptr_t fcn) { pFpCCuuwwC_t fn = (pFpCCuuwwC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (int16_t)R_R9, *(int16_t*)(R_RSP + 8), *(uint8_t*)(R_RSP + 16)); } void pFpCuwwWWu(x64emu_t *emu, uintptr_t fcn) { pFpCuwwWWu_t fn = (pFpCuwwWWu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void pFpCuuuCup(x64emu_t *emu, uintptr_t fcn) { pFpCuuuCup_t fn = (pFpCuuuCup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint8_t)R_R9, *(uint64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } @@ -2913,8 +3496,12 @@ void pFpWWiCpup(x64emu_t *emu, uintptr_t fcn) { pFpWWiCpup_t fn = (pFpWWiCpup_t) void pFpuuWWCuu(x64emu_t *emu, uintptr_t fcn) { pFpuuWWCuu_t fn = (pFpuuWWCuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8, (uint8_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void pFpuuuupup(x64emu_t *emu, uintptr_t fcn) { pFpuuuupup_t fn = (pFpuuuupup_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void pFpdwwWWui(x64emu_t *emu, uintptr_t fcn) { pFpdwwWWui_t fn = (pFpdwwWWui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, emu->xmm[0].d[0], (int16_t)R_RSI, (int16_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8)); } +void pFplpppppp(x64emu_t *emu, uintptr_t fcn) { pFplpppppp_t fn = (pFplpppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (intptr_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void pFppiiiiii(x64emu_t *emu, uintptr_t fcn) { pFppiiiiii_t fn = (pFppiiiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void pFpppuuLLu(x64emu_t *emu, uintptr_t fcn) { pFpppuuLLu_t fn = (pFpppuuLLu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uintptr_t)R_R9, *(uintptr_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } void pFpppppupp(x64emu_t *emu, uintptr_t fcn) { pFpppppupp_t fn = (pFpppppupp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (uint64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void vFEppiipppp(x64emu_t *emu, uintptr_t fcn) { vFEppiipppp_t fn = (vFEppiipppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void vFEpppiippp(x64emu_t *emu, uintptr_t fcn) { vFEpppiippp_t fn = (vFEpppiippp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFiiiiiiiii_t fn = (vFiiiiiiiii_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void vFiiiiillli(x64emu_t *emu, uintptr_t fcn) { vFiiiiillli_t fn = (vFiiiiillli_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (intptr_t)R_R9, *(intptr_t*)(R_RSP + 8), *(intptr_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void vFuiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiii_t fn = (vFuiiiiiiii_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } @@ -2936,12 +3523,19 @@ void vFddddddddd(x64emu_t *emu, uintptr_t fcn) { vFddddddddd_t fn = (vFddddddddd void vFlipuiuiip(x64emu_t *emu, uintptr_t fcn) { vFlipuiuiip_t fn = (vFlipuiuiip_t)fcn; fn((intptr_t)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void vFpipiuiipp(x64emu_t *emu, uintptr_t fcn) { vFpipiuiipp_t fn = (vFpipiuiipp_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void vFpipppiipi(x64emu_t *emu, uintptr_t fcn) { vFpipppiipi_t fn = (vFpipppiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFppiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiiii_t fn = (vFppiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFppiiiiipi(x64emu_t *emu, uintptr_t fcn) { vFppiiiiipi_t fn = (vFppiiiiipi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void vFppiiipiii(x64emu_t *emu, uintptr_t fcn) { vFppiiipiii_t fn = (vFppiiipiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFppiipiiii(x64emu_t *emu, uintptr_t fcn) { vFppiipiiii_t fn = (vFppiipiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFppipppiii(x64emu_t *emu, uintptr_t fcn) { vFppipppiii_t fn = (vFppipppiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFppipppiip(x64emu_t *emu, uintptr_t fcn) { vFppipppiip_t fn = (vFppipppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void vFppuuiiiii(x64emu_t *emu, uintptr_t fcn) { vFppuuiiiii_t fn = (vFppuuiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void vFpplpppppi(x64emu_t *emu, uintptr_t fcn) { vFpplpppppi_t fn = (vFpplpppppi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (intptr_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void vFpppiiiiii(x64emu_t *emu, uintptr_t fcn) { vFpppiiiiii_t fn = (vFpppiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void vFppppipiip(x64emu_t *emu, uintptr_t fcn) { vFppppipiip_t fn = (vFppppipiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void vFpppppippp(x64emu_t *emu, uintptr_t fcn) { vFpppppippp_t fn = (vFpppppippp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFEpiiiiipi(x64emu_t *emu, uintptr_t fcn) { iFEpiiiiipi_t fn = (iFEpiiiiipi_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } +void iFEpppipppp(x64emu_t *emu, uintptr_t fcn) { iFEpppipppp_t fn = (iFEpppipppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void iFEppplPPPP(x64emu_t *emu, uintptr_t fcn) { iFEppplPPPP_t fn = (iFEppplPPPP_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (intptr_t)R_RCX, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32)); } void iFEppPPPPPP(x64emu_t *emu, uintptr_t fcn) { iFEppPPPPPP_t fn = (iFEppPPPPPP_t)fcn; R_RAX=(int64_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 iFiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiip_t fn = (iFiiiiiiiip_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } @@ -2953,14 +3547,19 @@ void iFpipLpiiip(x64emu_t *emu, uintptr_t fcn) { iFpipLpiiip_t fn = (iFpipLpiiip void iFpuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { iFpuuuuuuuu_t fn = (iFpuuuuuuuu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24)); } void iFppiiiiiii(x64emu_t *emu, uintptr_t fcn) { iFppiiiiiii_t fn = (iFppiiiiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void iFppiuiippL(x64emu_t *emu, uintptr_t fcn) { iFppiuiippL_t fn = (iFppiuiippL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); } +void iFppLpiippp(x64emu_t *emu, uintptr_t fcn) { iFppLpiippp_t fn = (iFppLpiippp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFpppiiipip(x64emu_t *emu, uintptr_t fcn) { iFpppiiipip_t fn = (iFpppiiipip_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFpppiiuuii(x64emu_t *emu, uintptr_t fcn) { iFpppiiuuii_t fn = (iFpppiiuuii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } void iFpppiipiiu(x64emu_t *emu, uintptr_t fcn) { iFpppiipiiu_t fn = (iFpppiipiiu_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24)); } void iFppppppppu(x64emu_t *emu, uintptr_t fcn) { iFppppppppu_t fn = (iFppppppppu_t)fcn; R_RAX=(int64_t)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), *(uint64_t*)(R_RSP + 24)); } void iFppppppppp(x64emu_t *emu, uintptr_t fcn) { iFppppppppp_t fn = (iFppppppppp_t)fcn; R_RAX=(int64_t)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 uFEipippppp(x64emu_t *emu, uintptr_t fcn) { uFEipippppp_t fn = (uFEipippppp_t)fcn; R_RAX=(uint64_t)fn(emu, (int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16)); } void uFppppppppp(x64emu_t *emu, uintptr_t fcn) { uFppppppppp_t fn = (uFppppppppp_t)fcn; R_RAX=(uint64_t)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 LFEppppppii(x64emu_t *emu, uintptr_t fcn) { LFEppppppii_t fn = (LFEppppppii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void pFEppiiuuLi(x64emu_t *emu, uintptr_t fcn) { pFEppiiuuLi_t fn = (pFEppiiuuLi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uintptr_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void pFEppuippuu(x64emu_t *emu, uintptr_t fcn) { pFEppuippuu_t fn = (pFEppuippuu_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16)); } +void pFEpppppiiV(x64emu_t *emu, uintptr_t fcn) { pFEpppppiiV_t fn = (pFEpppppiiV_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), (void*)(R_RSP + 16)); } +void pFEpppppppi(x64emu_t *emu, uintptr_t fcn) { pFEpppppppi_t fn = (pFEpppppppi_t)fcn; R_RAX=(uintptr_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), *(int64_t*)(R_RSP + 16)); } void pFpiiiiuuuu(x64emu_t *emu, uintptr_t fcn) { pFpiiiiuuuu_t fn = (pFpiiiiuuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24)); } void pFpCuWCCuuu(x64emu_t *emu, uintptr_t fcn) { pFpCuWCCuuu_t fn = (pFpCuWCCuuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24)); } void pFpuuwwWWww(x64emu_t *emu, uintptr_t fcn) { pFpuuwwWWww_t fn = (pFpuuwwWWww_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (int16_t)R_RCX, (int16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(int16_t*)(R_RSP + 16), *(int16_t*)(R_RSP + 24)); } @@ -2968,7 +3567,12 @@ void pFpupuuuuup(x64emu_t *emu, uintptr_t fcn) { pFpupuuuuup_t fn = (pFpupuuuuup void pFppiiiiiip(x64emu_t *emu, uintptr_t fcn) { pFppiiiiiip_t fn = (pFppiiiiiip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24)); } void pFppiiuuuLL(x64emu_t *emu, uintptr_t fcn) { pFppiiuuuLL_t fn = (pFppiiuuuLL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uintptr_t*)(R_RSP + 16), *(uintptr_t*)(R_RSP + 24)); } void pFppipppppp(x64emu_t *emu, uintptr_t fcn) { pFppipppppp_t fn = (pFppipppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } +void pFpppiiiiii(x64emu_t *emu, uintptr_t fcn) { pFpppiiiiii_t fn = (pFpppiiiiii_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24)); } +void pFpppiipppp(x64emu_t *emu, uintptr_t fcn) { pFpppiipppp_t fn = (pFpppiipppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void pFpppppiipp(x64emu_t *emu, uintptr_t fcn) { pFpppppiipp_t fn = (pFpppppiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } +void vFEiippppppp(x64emu_t *emu, uintptr_t fcn) { vFEiippppppp_t fn = (vFEiippppppp_t)fcn; fn(emu, (int64_t)R_RDI, (int64_t)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 vFEpippppppp(x64emu_t *emu, uintptr_t fcn) { vFEpippppppp_t fn = (vFEpippppppp_t)fcn; fn(emu, (void*)R_RDI, (int64_t)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 vFEpppiipppp(x64emu_t *emu, uintptr_t fcn) { vFEpppiipppp_t fn = (vFEpppiipppp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void vFiiiiiiiiiu(x64emu_t *emu, uintptr_t fcn) { vFiiiiiiiiiu_t fn = (vFiiiiiiiiiu_t)fcn; fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32)); } void vFuiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiii_t fn = (vFuiiiiiiiii_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } void vFuiiiiiiill(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiill_t fn = (vFuiiiiiiill_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(intptr_t*)(R_RSP + 24), *(intptr_t*)(R_RSP + 32)); } @@ -2986,6 +3590,12 @@ void vFuuuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuu_t fn = (vFuuuuuuu void vFuffiiffiip(x64emu_t *emu, uintptr_t fcn) { vFuffiiffiip_t fn = (vFuffiiffiip_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].f[0], emu->xmm[3].f[0], (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } void vFuddiiddiip(x64emu_t *emu, uintptr_t fcn) { vFuddiiddiip_t fn = (vFuddiiddiip_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].d[0], emu->xmm[3].d[0], (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9); } void vFffffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffffff_t fn = (vFffffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16)); } +void vFppiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiiiii_t fn = (vFppiiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } +void vFppiiiiipip(x64emu_t *emu, uintptr_t fcn) { vFppiiiiipip_t fn = (vFppiiiiipip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } +void vFppiipppiip(x64emu_t *emu, uintptr_t fcn) { vFppiipppiip_t fn = (vFppiipppiip_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } +void vFppiippppii(x64emu_t *emu, uintptr_t fcn) { vFppiippppii_t fn = (vFppiippppii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } +void vFppipppiiii(x64emu_t *emu, uintptr_t fcn) { vFppipppiiii_t fn = (vFppipppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } +void vFppuuuuiiuu(x64emu_t *emu, uintptr_t fcn) { vFppuuuuiiuu_t fn = (vFppuuuuiiuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32)); } void vFppdddddddd(x64emu_t *emu, uintptr_t fcn) { vFppdddddddd_t fn = (vFppdddddddd_t)fcn; fn((void*)R_RDI, (void*)R_RSI, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], emu->xmm[4].d[0], emu->xmm[5].d[0], emu->xmm[6].d[0], emu->xmm[7].d[0]); } void vFpppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppppp_t fn = (vFpppppppppp_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 iFEpupppLppL(x64emu_t *emu, uintptr_t fcn) { iFEpupppLppL_t fn = (iFEpupppLppL_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (uint64_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)); } @@ -2997,8 +3607,12 @@ void iFpddpippppp(x64emu_t *emu, uintptr_t fcn) { iFpddpippppp_t fn = (iFpddpipp void iFppuuiiiiii(x64emu_t *emu, uintptr_t fcn) { iFppuuiiiiii_t fn = (iFppuuiiiiii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } void iFppuuiiuupi(x64emu_t *emu, uintptr_t fcn) { iFppuuiiuupi_t fn = (iFppuuiiuupi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } void iFpppiiipipi(x64emu_t *emu, uintptr_t fcn) { iFpppiiipipi_t fn = (iFpppiiipipi_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } +void iFpppLLipppp(x64emu_t *emu, uintptr_t fcn) { iFpppLLipppp_t fn = (iFpppLLipppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (uintptr_t)R_RCX, (uintptr_t)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32)); } void iFppppiiuuii(x64emu_t *emu, uintptr_t fcn) { iFppppiiuuii_t fn = (iFppppiiuuii_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } void uFpppppppppp(x64emu_t *emu, uintptr_t fcn) { uFpppppppppp_t fn = (uFpppppppppp_t)fcn; R_RAX=(uint64_t)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 pFEiippppppp(x64emu_t *emu, uintptr_t fcn) { pFEiippppppp_t fn = (pFEiippppppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (int64_t)R_RDI, (int64_t)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 pFEpiiiiiipp(x64emu_t *emu, uintptr_t fcn) { pFEpiiiiiipp_t fn = (pFEpiiiiiipp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24)); } +void pFEpippppppp(x64emu_t *emu, uintptr_t fcn) { pFEpippppppp_t fn = (pFEpippppppp_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)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 pFpCuWCCuuCW(x64emu_t *emu, uintptr_t fcn) { pFpCuWCCuuCW_t fn = (pFpCuWCCuuCW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint8_t)R_R8, (uint8_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(uint8_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32)); } void pFpuwwWWuCuu(x64emu_t *emu, uintptr_t fcn) { pFpuwwWWuCuu_t fn = (pFpuwwWWuCuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int16_t)R_RDX, (int16_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint8_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32)); } void pFpuuuwwwwWW(x64emu_t *emu, uintptr_t fcn) { pFpuuuwwwwWW_t fn = (pFpuuuwwwwWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (int16_t)R_R8, (int16_t)R_R9, *(int16_t*)(R_RSP + 8), *(int16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32)); } @@ -3020,12 +3634,27 @@ void vFuuddiiddiip(x64emu_t *emu, uintptr_t fcn) { vFuuddiiddiip_t fn = (vFuuddi void vFuffffffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffffffff_t fn = (vFuffffffffff_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16)); } void vFpipipiipiii(x64emu_t *emu, uintptr_t fcn) { vFpipipiipiii_t fn = (vFpipipiipiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } void vFpipppiiiipi(x64emu_t *emu, uintptr_t fcn) { vFpipppiiiipi_t fn = (vFpipppiiiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiiiiii_t fn = (vFppiiiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppiiiiipiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiipiii_t fn = (vFppiiiiipiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppiiiiddddi(x64emu_t *emu, uintptr_t fcn) { vFppiiiiddddi_t fn = (vFppiiiiddddi_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], *(int64_t*)(R_RSP + 8)); } +void vFppiipppiiii(x64emu_t *emu, uintptr_t fcn) { vFppiipppiiii_t fn = (vFppiipppiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppipppiiiii(x64emu_t *emu, uintptr_t fcn) { vFppipppiiiii_t fn = (vFppipppiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppipppuiiii(x64emu_t *emu, uintptr_t fcn) { vFppipppuiiii_t fn = (vFppipppuiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } +void vFppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFppppppppppp_t fn = (vFppppppppppp_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 iFEpppipppppp(x64emu_t *emu, uintptr_t fcn) { iFEpppipppppp_t fn = (iFEpppipppppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)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 iFEppppiiiiuu(x64emu_t *emu, uintptr_t fcn) { iFEppppiiiiuu_t fn = (iFEppppiiiiuu_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32)); } void iFiiiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiiiip_t fn = (iFiiiiiiiiiip_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(void**)(R_RSP + 40)); } void iFppppiiuuiiL(x64emu_t *emu, uintptr_t fcn) { iFppppiiuuiiL_t fn = (iFppppiiuuiiL_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(uintptr_t*)(R_RSP + 40)); } +void uFEpiiupppiuV(x64emu_t *emu, uintptr_t fcn) { uFEpiiupppiuV_t fn = (uFEpiiupppiuV_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (uint64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), (void*)(R_RSP + 32)); } +void uFEpiippppiup(x64emu_t *emu, uintptr_t fcn) { uFEpiippppiup_t fn = (uFEpiippppiup_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } +void uFEpiippppiuA(x64emu_t *emu, uintptr_t fcn) { uFEpiippppiuA_t fn = (uFEpiippppiuA_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } +void uFEppppppippp(x64emu_t *emu, uintptr_t fcn) { uFEppppppippp_t fn = (uFEppppppippp_t)fcn; R_RAX=(uint64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(void**)(R_RSP + 24), *(void**)(R_RSP + 32)); } void uFppppppppppp(x64emu_t *emu, uintptr_t fcn) { uFppppppppppp_t fn = (uFppppppppppp_t)fcn; R_RAX=(uint64_t)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 pFEpipppppppi(x64emu_t *emu, uintptr_t fcn) { pFEpipppppppi_t fn = (pFEpipppppppi_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (int64_t)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), *(int64_t*)(R_RSP + 32)); } void pFEppiiLpppip(x64emu_t *emu, uintptr_t fcn) { pFEppiiLpppip_t fn = (pFEppiiLpppip_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uintptr_t)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32)); } void pFEppuiipuuii(x64emu_t *emu, uintptr_t fcn) { pFEppuiipuuii_t fn = (pFEppuiipuuii_t)fcn; R_RAX=(uintptr_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (void*)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32)); } +void pFpppppppiipp(x64emu_t *emu, uintptr_t fcn) { pFpppppppiipp_t fn = (pFpppppppiipp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40)); } +void pFppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppppppp_t fn = (pFppppppppppp_t)fcn; R_RAX=(uintptr_t)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 vFuiiiillliilp(x64emu_t *emu, uintptr_t fcn) { vFuiiiillliilp_t fn = (vFuiiiillliilp_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (intptr_t)R_R9, *(intptr_t*)(R_RSP + 8), *(intptr_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(intptr_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); } void vFuuiiiiiiiiui(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiiiiiui_t fn = (vFuuiiiiiiiiui_t)fcn; fn((uint64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(uint64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48)); } void vFuuiiiiiiiuip(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiiiiuip_t fn = (vFuuiiiiiiiuip_t)fcn; fn((uint64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); } @@ -3034,7 +3663,12 @@ void vFuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuu_t fn = (vFuuu void vFffffffffffff(x64emu_t *emu, uintptr_t fcn) { vFffffffffffff_t fn = (vFffffffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16), *(float*)(R_RSP + 24), *(float*)(R_RSP + 32)); } void vFpipppiiiipii(x64emu_t *emu, uintptr_t fcn) { vFpipppiiiipii_t fn = (vFpipppiiiipii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48)); } void vFpippppiiiipi(x64emu_t *emu, uintptr_t fcn) { vFpippppiiiipi_t fn = (vFpippppiiiipi_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(void**)(R_RSP + 40), *(int64_t*)(R_RSP + 48)); } +void vFppiiiiddddii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiddddii_t fn = (vFppiiiiddddii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16)); } void vFppiiuuuiupup(x64emu_t *emu, uintptr_t fcn) { vFppiiuuuiupup_t fn = (vFppiiuuuiupup_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(uint64_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); } +void vFppiipppiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiipppiiiii_t fn = (vFppiipppiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48)); } +void vFpppiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFpppiiiiiiiii_t fn = (vFpppiiiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48)); } +void vFpppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppppppp_t fn = (vFpppppppppppp_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 iFEpppippppppp(x64emu_t *emu, uintptr_t fcn) { iFEpppippppppp_t fn = (iFEpppippppppp_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)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 iFEppppiiiiuui(x64emu_t *emu, uintptr_t fcn) { iFEppppiiiiuui_t fn = (iFEppppiiiiuui_t)fcn; R_RAX=(int64_t)fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40)); } void iFpipllipppppp(x64emu_t *emu, uintptr_t fcn) { iFpipllipppppp_t fn = (iFpipllipppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (intptr_t)R_RCX, (intptr_t)R_R8, (int64_t)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 iFpipppppppppp(x64emu_t *emu, uintptr_t fcn) { iFpipppppppppp_t fn = (iFpipppppppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)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)); } @@ -3046,9 +3680,14 @@ void pFpCuuWWwwCCup(x64emu_t *emu, uintptr_t fcn) { pFpCuuWWwwCCup_t fn = (pFpCu void pFpuuuWWWWWWWW(x64emu_t *emu, uintptr_t fcn) { pFpuuuWWWWWWWW_t fn = (pFpuuuWWWWWWWW_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(uint16_t*)(R_RSP + 32), *(uint16_t*)(R_RSP + 40), *(uint16_t*)(R_RSP + 48)); } void pFppiiuuuiupLp(x64emu_t *emu, uintptr_t fcn) { pFppiiuuuiupLp_t fn = (pFppiiuuuiupLp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(uintptr_t*)(R_RSP + 40), *(void**)(R_RSP + 48)); } void pFpppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFpppppppppppp_t fn = (pFpppppppppppp_t)fcn; R_RAX=(uintptr_t)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 vFEpppppppiippp(x64emu_t *emu, uintptr_t fcn) { vFEpppppppiippp_t fn = (vFEpppppppiippp_t)fcn; fn(emu, (void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48)); } void vFuiiiiiiiiiuup(x64emu_t *emu, uintptr_t fcn) { vFuiiiiiiiiiuup_t fn = (vFuiiiiiiiiiuup_t)fcn; fn((uint64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(uint64_t*)(R_RSP + 40), *(uint64_t*)(R_RSP + 48), *(void**)(R_RSP + 56)); } void vFuuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fcn) { vFuuuuuuuuuuuuu_t fn = (vFuuuuuuuuuuuuu_t)fcn; fn((uint64_t)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint64_t)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(uint64_t*)(R_RSP + 24), *(uint64_t*)(R_RSP + 32), *(uint64_t*)(R_RSP + 40), *(uint64_t*)(R_RSP + 48), *(uint64_t*)(R_RSP + 56)); } void vFuffffffffffff(x64emu_t *emu, uintptr_t fcn) { vFuffffffffffff_t fn = (vFuffffffffffff_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16), *(float*)(R_RSP + 24), *(float*)(R_RSP + 32)); } +void vFpippppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpippppppppppp_t fn = (vFpippppppppppp_t)fcn; fn((void*)R_RDI, (int64_t)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 vFppiiiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiiiiiiiiiii_t fn = (vFppiiiiiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_t*)(R_RSP + 56)); } +void vFppiipppiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiipppiiiiii_t fn = (vFppiipppiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_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 iFddddpppddpppp(x64emu_t *emu, uintptr_t fcn) { iFddddpppddpppp_t fn = (iFddddpppddpppp_t)fcn; R_RAX=(int64_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=(int64_t)fn((void*)R_RDI, (int64_t)R_RSI, (void*)R_RDX, (void*)R_RCX, (uint64_t)R_R8, (uint64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(void**)(R_RSP + 40), *(void**)(R_RSP + 48), *(void**)(R_RSP + 56)); } void iFpupiiiipppppp(x64emu_t *emu, uintptr_t fcn) { iFpupiiiipppppp_t fn = (iFpupiiiipppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (void*)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(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)); } @@ -3058,25 +3697,40 @@ void pFpuupppwwwwWWC(x64emu_t *emu, uintptr_t fcn) { pFpuupppwwwwWWC_t fn = (pFp void pFppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppppppppp_t fn = (pFppppppppppppp_t)fcn; R_RAX=(uintptr_t)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 vFuffiiffiiffiip(x64emu_t *emu, uintptr_t fcn) { vFuffiiffiiffiip_t fn = (vFuffiiffiiffiip_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].f[0], emu->xmm[3].f[0], (int64_t)R_RCX, (int64_t)R_R8, emu->xmm[4].f[0], emu->xmm[5].f[0], (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } void vFuddiiddiiddiip(x64emu_t *emu, uintptr_t fcn) { vFuddiiddiiddiip_t fn = (vFuddiiddiiddiip_t)fcn; fn((uint64_t)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (int64_t)R_RSI, (int64_t)R_RDX, emu->xmm[2].d[0], emu->xmm[3].d[0], (int64_t)R_RCX, (int64_t)R_R8, emu->xmm[4].d[0], emu->xmm[5].d[0], (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16)); } +void vFppiipppiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppiipppiiiiiii_t fn = (vFppiipppiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (void*)R_R8, (void*)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_t*)(R_RSP + 56), *(int64_t*)(R_RSP + 64)); } +void iFpipppppppppppp(x64emu_t *emu, uintptr_t fcn) { iFpipppppppppppp_t fn = (iFpipppppppppppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (int64_t)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 vFuuiiiiuuiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFuuiiiiuuiiiiiii_t fn = (vFuuiiiiuuiiiiiii_t)fcn; fn((uint64_t)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(uint64_t*)(R_RSP + 8), *(uint64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_t*)(R_RSP + 56), *(int64_t*)(R_RSP + 64), *(int64_t*)(R_RSP + 72)); } void vFfffffffffffffff(x64emu_t *emu, uintptr_t fcn) { vFfffffffffffffff_t fn = (vFfffffffffffffff_t)fcn; fn(emu->xmm[0].f[0], emu->xmm[1].f[0], emu->xmm[2].f[0], emu->xmm[3].f[0], emu->xmm[4].f[0], emu->xmm[5].f[0], emu->xmm[6].f[0], emu->xmm[7].f[0], *(float*)(R_RSP + 8), *(float*)(R_RSP + 16), *(float*)(R_RSP + 24), *(float*)(R_RSP + 32), *(float*)(R_RSP + 40), *(float*)(R_RSP + 48), *(float*)(R_RSP + 56)); } +void vFpppippppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppippppppppppp_t fn = (vFpppippppppppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)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 vFppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFppppppppppppppp_t fn = (vFppppppppppppppp_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**)(R_RSP + 64), *(void**)(R_RSP + 72)); } +void pFpuiippppppppppp(x64emu_t *emu, uintptr_t fcn) { pFpuiippppppppppp_t fn = (pFpuiippppppppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (int64_t)R_RDX, (int64_t)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 pFppipppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFppipppppppppppp_t fn = (pFppipppppppppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)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 pFppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFppppppppppppppp_t fn = (pFppppppppppppppp_t)fcn; R_RAX=(uintptr_t)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**)(R_RSP + 64), *(void**)(R_RSP + 72)); } +void vFpppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppppppppppp_t fn = (vFpppppppppppppppp_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**)(R_RSP + 64), *(void**)(R_RSP + 72), *(void**)(R_RSP + 80)); } void iFpppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { iFpppppppppppppppp_t fn = (iFpppppppppppppppp_t)fcn; R_RAX=(int64_t)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**)(R_RSP + 64), *(void**)(R_RSP + 72), *(void**)(R_RSP + 80)); } void pFpuuWWWWWWwwCCCuu(x64emu_t *emu, uintptr_t fcn) { pFpuuWWWWWWwwCCCuu_t fn = (pFpuuWWWWWWwwCCCuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (uint16_t)R_RCX, (uint16_t)R_R8, (uint16_t)R_R9, *(uint16_t*)(R_RSP + 8), *(uint16_t*)(R_RSP + 16), *(uint16_t*)(R_RSP + 24), *(int16_t*)(R_RSP + 32), *(int16_t*)(R_RSP + 40), *(uint8_t*)(R_RSP + 48), *(uint8_t*)(R_RSP + 56), *(uint8_t*)(R_RSP + 64), *(uint64_t*)(R_RSP + 72), *(uint64_t*)(R_RSP + 80)); } +void pFppipipipipipipip(x64emu_t *emu, uintptr_t fcn) { pFppipipipipipipip_t fn = (pFppipipipipipipip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (int64_t)R_R8, (void*)R_R9, *(int64_t*)(R_RSP + 8), *(void**)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(void**)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(void**)(R_RSP + 48), *(int64_t*)(R_RSP + 56), *(void**)(R_RSP + 64), *(int64_t*)(R_RSP + 72), *(void**)(R_RSP + 80)); } void pFpppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFpppppppppppppppp_t fn = (pFpppppppppppppppp_t)fcn; R_RAX=(uintptr_t)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**)(R_RSP + 64), *(void**)(R_RSP + 72), *(void**)(R_RSP + 80)); } +void vFppiiiiddddiiiiiuu(x64emu_t *emu, uintptr_t fcn) { vFppiiiiddddiiiiiuu_t fn = (vFppiiiiddddiiiiiuu_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, emu->xmm[0].d[0], emu->xmm[1].d[0], emu->xmm[2].d[0], emu->xmm[3].d[0], *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(uint64_t*)(R_RSP + 48), *(uint64_t*)(R_RSP + 56)); } +void pFppippipipipipipip(x64emu_t *emu, uintptr_t fcn) { pFppippipipipipipip_t fn = (pFppippipipipipipip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, (int64_t)R_R9, *(void**)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(void**)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(void**)(R_RSP + 56), *(int64_t*)(R_RSP + 64), *(void**)(R_RSP + 72), *(int64_t*)(R_RSP + 80), *(void**)(R_RSP + 88)); } void vFppuiiiiipuiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFppuiiiiipuiiiiiiii_t fn = (vFppuiiiiipuiiiiiiii_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(void**)(R_RSP + 24), *(uint64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_t*)(R_RSP + 56), *(int64_t*)(R_RSP + 64), *(int64_t*)(R_RSP + 72), *(int64_t*)(R_RSP + 80), *(int64_t*)(R_RSP + 88), *(int64_t*)(R_RSP + 96)); } +void vFpppipppppppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppipppppppppppppp_t fn = (vFpppipppppppppppppp_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)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 pFippppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFippppppppppppppppp_t fn = (pFippppppppppppppppp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)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 vFpiiiiiiiiiiiiiiiiii(x64emu_t *emu, uintptr_t fcn) { vFpiiiiiiiiiiiiiiiiii_t fn = (vFpiiiiiiiiiiiiiiiiii_t)fcn; fn((void*)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX, (int64_t)R_R8, (int64_t)R_R9, *(int64_t*)(R_RSP + 8), *(int64_t*)(R_RSP + 16), *(int64_t*)(R_RSP + 24), *(int64_t*)(R_RSP + 32), *(int64_t*)(R_RSP + 40), *(int64_t*)(R_RSP + 48), *(int64_t*)(R_RSP + 56), *(int64_t*)(R_RSP + 64), *(int64_t*)(R_RSP + 72), *(int64_t*)(R_RSP + 80), *(int64_t*)(R_RSP + 88), *(int64_t*)(R_RSP + 96), *(int64_t*)(R_RSP + 104)); } void pFiiiippppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFiiiippppppppppppppp_t fn = (pFiiiippppppppppppppp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)R_RDI, (int64_t)R_RSI, (int64_t)R_RDX, (int64_t)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 pFpippppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFpippppppppppppppppp_t fn = (pFpippppppppppppppppp_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int64_t)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 pFipppppppppppppppppppppp(x64emu_t *emu, uintptr_t fcn) { pFipppppppppppppppppppppp_t fn = (pFipppppppppppppppppppppp_t)fcn; R_RAX=(uintptr_t)fn((int64_t)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)); } #if defined(HAVE_LD80BITS) void DFD(x64emu_t *emu, uintptr_t fcn) { DFD_t fn = (DFD_t)fcn; long double ld=fn(LD2localLD((void*)(R_RSP + 8))); fpu_do_push(emu); ST0val = ld; } +void vFppippDDC(x64emu_t *emu, uintptr_t fcn) { vFppippDDC_t fn = (vFppippDDC_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, LD2localLD((void*)(R_RSP + 8)), LD2localLD((void*)(R_RSP + 24)), (uint8_t)R_R9); } #endif #if !defined(HAVE_LD80BITS) void KFK(x64emu_t *emu, uintptr_t fcn) { KFK_t fn = (KFK_t)fcn; double db=fn(FromLD((void*)(R_RSP + 8))); fpu_do_push(emu); ST0val = db; } void KFKK(x64emu_t *emu, uintptr_t fcn) { KFKK_t fn = (KFKK_t)fcn; double db=fn(FromLD((void*)(R_RSP + 8)), FromLD((void*)(R_RSP + 24))); fpu_do_push(emu); ST0val = db; } void KFKp(x64emu_t *emu, uintptr_t fcn) { KFKp_t fn = (KFKp_t)fcn; double db=fn(FromLD((void*)(R_RSP + 8)), (void*)R_RDI); fpu_do_push(emu); ST0val = db; } +void vFppippKKC(x64emu_t *emu, uintptr_t fcn) { vFppippKKC_t fn = (vFppippKKC_t)fcn; fn((void*)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (void*)R_RCX, (void*)R_R8, FromLD((void*)(R_RSP + 8)), FromLD((void*)(R_RSP + 24)), (uint8_t)R_R9); } #endif #if defined(NOALIGN) @@ -3109,6 +3763,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFf) return 2; if (fun == &vFd) return 2; if (fun == &vFl) return 1; + if (fun == &vFL) return 1; if (fun == &vFp) return 1; if (fun == &cFv) return 1; if (fun == &cFi) return 1; @@ -3120,6 +3775,8 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFw) return 1; if (fun == &iFi) return 1; if (fun == &iFI) return 1; + if (fun == &iFC) return 1; + if (fun == &iFW) return 1; if (fun == &iFu) return 1; if (fun == &iFU) return 1; if (fun == &iFf) return 2; @@ -3127,10 +3784,13 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFl) return 1; if (fun == &iFL) return 1; if (fun == &iFp) return 1; + if (fun == &IFv) return 1; + if (fun == &IFi) return 1; if (fun == &IFI) return 1; if (fun == &IFf) return 2; if (fun == &IFd) return 2; if (fun == &IFp) return 1; + if (fun == &CFC) return 1; if (fun == &CFp) return 1; if (fun == &WFi) return 1; if (fun == &WFW) return 1; @@ -3158,12 +3818,17 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &lFl) return 1; if (fun == &lFp) return 1; if (fun == &LFv) return 1; + if (fun == &LFu) return 1; if (fun == &LFL) return 1; if (fun == &LFp) return 1; if (fun == &pFv) return 1; + if (fun == &pFw) return 1; if (fun == &pFi) return 1; + if (fun == &pFI) return 1; + if (fun == &pFC) return 1; if (fun == &pFW) return 1; if (fun == &pFu) return 1; + if (fun == &pFU) return 1; if (fun == &pFd) return 2; if (fun == &pFl) return 1; if (fun == &pFL) return 1; @@ -3192,8 +3857,13 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFlp) return 1; if (fun == &vFLL) return 1; if (fun == &vFLp) return 1; + if (fun == &vFpc) return 1; if (fun == &vFpi) return 1; + if (fun == &vFpI) return 1; + if (fun == &vFpC) return 1; + if (fun == &vFpW) return 1; if (fun == &vFpu) return 1; + if (fun == &vFpU) return 1; if (fun == &vFpf) return 2; if (fun == &vFpd) return 2; if (fun == &vFpl) return 1; @@ -3229,6 +3899,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &IFpi) return 1; if (fun == &IFpu) return 1; if (fun == &IFpd) return 2; + if (fun == &CFip) return 1; if (fun == &CFui) return 1; if (fun == &CFpi) return 1; if (fun == &CFpu) return 1; @@ -3259,6 +3930,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &dFdp) return -2; if (fun == &dFll) return -1; if (fun == &dFpi) return -1; + if (fun == &dFpd) return -2; if (fun == &dFpp) return -1; if (fun == &lFii) return 1; if (fun == &lFll) return 1; @@ -3274,15 +3946,20 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFiu) return 1; if (fun == &pFip) return 1; if (fun == &pFui) return 1; + if (fun == &pFuC) return 1; if (fun == &pFuu) return 1; if (fun == &pFup) return 1; + if (fun == &pFUi) return 1; if (fun == &pFdd) return 3; if (fun == &pFlp) return 1; if (fun == &pFLL) return 1; + if (fun == &pFLp) return 1; if (fun == &pFpi) return 1; if (fun == &pFpC) return 1; if (fun == &pFpu) return 1; if (fun == &pFpU) return 1; + if (fun == &pFpd) return 2; + if (fun == &pFpl) return 1; if (fun == &pFpL) return 1; if (fun == &pFpp) return 1; if (fun == &vFiii) return 1; @@ -3316,12 +3993,15 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFull) return 1; if (fun == &vFulp) return 1; if (fun == &vFupu) return 1; + if (fun == &vFupp) return 1; if (fun == &vFfff) return 4; if (fun == &vFfpp) return 2; if (fun == &vFddd) return 4; if (fun == &vFdpp) return 2; + if (fun == &vFLpL) return 1; if (fun == &vFLpp) return 1; if (fun == &vFpii) return 1; + if (fun == &vFpiC) return 1; if (fun == &vFpiu) return 1; if (fun == &vFpif) return 2; if (fun == &vFpid) return 2; @@ -3330,6 +4010,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFpuI) return 1; if (fun == &vFpuu) return 1; if (fun == &vFpup) return 1; + if (fun == &vFpff) return 3; if (fun == &vFpdd) return 3; if (fun == &vFpll) return 1; if (fun == &vFpLi) return 1; @@ -3356,6 +4037,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFipu) return 1; if (fun == &iFipL) return 1; if (fun == &iFipp) return 1; + if (fun == &iFCiW) return 1; if (fun == &iFuwp) return 1; if (fun == &iFuui) return 1; if (fun == &iFuuu) return 1; @@ -3375,6 +4057,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpiu) return 1; if (fun == &iFpiL) return 1; if (fun == &iFpip) return 1; + if (fun == &iFpIi) return 1; if (fun == &iFpui) return 1; if (fun == &iFpuu) return 1; if (fun == &iFpuU) return 1; @@ -3404,6 +4087,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &IFiIi) return 1; if (fun == &IFpIi) return 1; if (fun == &IFppi) return 1; + if (fun == &IFppu) return 1; if (fun == &uFipu) return 1; if (fun == &uFuip) return 1; if (fun == &uFuuu) return 1; @@ -3421,6 +4105,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &uFppu) return 1; if (fun == &uFppp) return 1; if (fun == &UFppi) return 1; + if (fun == &UFppu) return 1; if (fun == &fFull) return -1; if (fun == &fFfff) return -4; if (fun == &fFffp) return -3; @@ -3428,6 +4113,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &fFppp) return -1; if (fun == &dFddd) return -4; if (fun == &dFddp) return -3; + if (fun == &dFpdd) return -3; if (fun == &dFppi) return -1; if (fun == &dFppp) return -1; if (fun == &lFili) return 1; @@ -3438,6 +4124,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &lFlpi) return 1; if (fun == &lFpli) return 1; if (fun == &lFpLu) return 1; + if (fun == &lFpLp) return 1; if (fun == &lFppi) return 1; if (fun == &lFppL) return 1; if (fun == &lFppp) return 1; @@ -3452,13 +4139,19 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &LFppi) return 1; if (fun == &LFppL) return 1; if (fun == &pFiii) return 1; + if (fun == &pFiiu) return 1; if (fun == &pFiip) return 1; + if (fun == &pFiIp) return 1; + if (fun == &pFiup) return 1; if (fun == &pFipi) return 1; if (fun == &pFipL) return 1; if (fun == &pFipp) return 1; if (fun == &pFIpi) return 1; + if (fun == &pFCiW) return 1; if (fun == &pFWWW) return 1; if (fun == &pFuii) return 1; + if (fun == &pFuui) return 1; + if (fun == &pFuuu) return 1; if (fun == &pFupi) return 1; if (fun == &pFupL) return 1; if (fun == &pFUpi) return 1; @@ -3466,6 +4159,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFddd) return 4; if (fun == &pFpii) return 1; if (fun == &pFpiu) return 1; + if (fun == &pFpid) return 2; if (fun == &pFpil) return 1; if (fun == &pFpiL) return 1; if (fun == &pFpip) return 1; @@ -3476,11 +4170,16 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpuL) return 1; if (fun == &pFpup) return 1; if (fun == &pFpUp) return 1; + if (fun == &pFpdu) return 2; + if (fun == &pFplC) return 1; + if (fun == &pFplu) return 1; + if (fun == &pFpll) return 1; if (fun == &pFplp) return 1; if (fun == &pFpLu) return 1; if (fun == &pFpLL) return 1; if (fun == &pFpLp) return 1; if (fun == &pFppi) return 1; + if (fun == &pFppC) return 1; if (fun == &pFppu) return 1; if (fun == &pFppf) return 2; if (fun == &pFppl) return 1; @@ -3545,26 +4244,43 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFffff) return 5; if (fun == &vFdddd) return 5; if (fun == &vFpiii) return 1; + if (fun == &vFpiiu) return 1; if (fun == &vFpiip) return 1; + if (fun == &vFpiuu) return 1; if (fun == &vFpiuL) return 1; if (fun == &vFpiup) return 1; + if (fun == &vFpifi) return 2; if (fun == &vFpipi) return 1; if (fun == &vFpipp) return 1; + if (fun == &vFpCiW) return 1; + if (fun == &vFpuip) return 1; + if (fun == &vFpuui) return 1; if (fun == &vFpuuu) return 1; + if (fun == &vFpuup) return 1; if (fun == &vFpudd) return 3; if (fun == &vFpupp) return 1; if (fun == &vFpdii) return 2; + if (fun == &vFpddi) return 3; if (fun == &vFpddd) return 4; if (fun == &vFpLLL) return 1; if (fun == &vFppii) return 1; + if (fun == &vFppiu) return 1; if (fun == &vFppid) return 2; + if (fun == &vFppiL) return 1; if (fun == &vFppip) return 1; if (fun == &vFppui) return 1; if (fun == &vFppuu) return 1; if (fun == &vFppup) return 1; + if (fun == &vFppfi) return 2; + if (fun == &vFppdu) return 2; if (fun == &vFppdd) return 3; + if (fun == &vFppdp) return 2; + if (fun == &vFpplp) return 1; if (fun == &vFpppi) return 1; + if (fun == &vFpppI) return 1; if (fun == &vFpppu) return 1; + if (fun == &vFpppU) return 1; + if (fun == &vFpppd) return 2; if (fun == &vFpppL) return 1; if (fun == &vFpppp) return 1; if (fun == &cFpiii) return 1; @@ -3591,6 +4307,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFippi) return 1; if (fun == &iFippL) return 1; if (fun == &iFippp) return 1; + if (fun == &iFuipu) return 1; if (fun == &iFuipp) return 1; if (fun == &iFuuff) return 3; if (fun == &iFuupi) return 1; @@ -3612,6 +4329,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpipC) return 1; if (fun == &iFpipu) return 1; if (fun == &iFpipp) return 1; + if (fun == &iFpIip) return 1; if (fun == &iFpCCC) return 1; if (fun == &iFpWWu) return 1; if (fun == &iFpuwp) return 1; @@ -3622,6 +4340,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpuup) return 1; if (fun == &iFpuLL) return 1; if (fun == &iFpuLp) return 1; + if (fun == &iFpupi) return 1; if (fun == &iFpupu) return 1; if (fun == &iFpupL) return 1; if (fun == &iFpupp) return 1; @@ -3655,6 +4374,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpppp) return 1; if (fun == &IFpIip) return 1; if (fun == &IFppip) return 1; + if (fun == &IFpppp) return 1; if (fun == &uFifff) return 4; if (fun == &uFuuuu) return 1; if (fun == &uFpipu) return 1; @@ -3663,10 +4383,13 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &uFpuip) return 1; if (fun == &uFpuuu) return 1; if (fun == &uFppiu) return 1; + if (fun == &uFppLp) return 1; if (fun == &uFpppi) return 1; if (fun == &uFpppp) return 1; if (fun == &UFpipp) return 1; if (fun == &UFppip) return 1; + if (fun == &UFpppp) return 1; + if (fun == &dFpppp) return -1; if (fun == &lFiiLu) return 1; if (fun == &lFiipL) return 1; if (fun == &lFipil) return 1; @@ -3684,6 +4407,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &lFppip) return 1; if (fun == &lFpppL) return 1; if (fun == &LFippL) return 1; + if (fun == &LFippp) return 1; if (fun == &LFpuuu) return 1; if (fun == &LFpLLp) return 1; if (fun == &LFpLpp) return 1; @@ -3691,15 +4415,20 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &LFppip) return 1; if (fun == &LFppLL) return 1; if (fun == &LFppLp) return 1; + if (fun == &LFpppi) return 1; if (fun == &LFpppp) return 1; if (fun == &pFiiii) return 1; if (fun == &pFiiiu) return 1; + if (fun == &pFiiuu) return 1; if (fun == &pFiiup) return 1; + if (fun == &pFipii) return 1; + if (fun == &pFipip) return 1; if (fun == &pFippi) return 1; if (fun == &pFippu) return 1; if (fun == &pFuiii) return 1; if (fun == &pFulli) return 1; if (fun == &pFullu) return 1; + if (fun == &pFffff) return 5; if (fun == &pFdipp) return 2; if (fun == &pFdddd) return 5; if (fun == &pFlfff) return 4; @@ -3708,27 +4437,34 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpiuu) return 1; if (fun == &pFpiLL) return 1; if (fun == &pFpipi) return 1; + if (fun == &pFpipd) return 2; if (fun == &pFpipp) return 1; if (fun == &pFpCWp) return 1; if (fun == &pFpCuW) return 1; if (fun == &pFpCuu) return 1; if (fun == &pFpuii) return 1; + if (fun == &pFpuip) return 1; if (fun == &pFpuWp) return 1; if (fun == &pFpuuC) return 1; if (fun == &pFpuuu) return 1; if (fun == &pFpuup) return 1; if (fun == &pFpupi) return 1; + if (fun == &pFpupu) return 1; + if (fun == &pFplpl) return 1; if (fun == &pFplpp) return 1; if (fun == &pFpLip) return 1; if (fun == &pFpLpL) return 1; if (fun == &pFppii) return 1; + if (fun == &pFppiu) return 1; if (fun == &pFppiL) return 1; if (fun == &pFppip) return 1; if (fun == &pFppuW) return 1; if (fun == &pFppuu) return 1; if (fun == &pFppuL) return 1; if (fun == &pFppup) return 1; + if (fun == &pFppdd) return 3; if (fun == &pFppLL) return 1; + if (fun == &pFppLp) return 1; if (fun == &pFpppi) return 1; if (fun == &pFpppu) return 1; if (fun == &pFpppL) return 1; @@ -3801,23 +4537,37 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFfffff) return 6; if (fun == &vFddddp) return 5; if (fun == &vFpiiii) return 1; + if (fun == &vFpiiiu) return 1; + if (fun == &vFpiiff) return 3; if (fun == &vFpiipp) return 1; if (fun == &vFpipii) return 1; + if (fun == &vFpipiu) return 1; + if (fun == &vFpuiip) return 1; if (fun == &vFpuipp) return 1; + if (fun == &vFpuuuu) return 1; if (fun == &vFpuddd) return 4; + if (fun == &vFpffff) return 5; if (fun == &vFpddii) return 3; if (fun == &vFpdddd) return 5; + if (fun == &vFpddpp) return 3; if (fun == &vFpliil) return 1; if (fun == &vFppiii) return 1; + if (fun == &vFppiiu) return 1; if (fun == &vFppiip) return 1; if (fun == &vFppiup) return 1; + if (fun == &vFppiff) return 3; + if (fun == &vFppipi) return 1; if (fun == &vFppipp) return 1; if (fun == &vFppWui) return 1; if (fun == &vFppuui) return 1; + if (fun == &vFppupi) return 1; + if (fun == &vFppupp) return 1; if (fun == &vFpppii) return 1; if (fun == &vFpppip) return 1; + if (fun == &vFpppuu) return 1; if (fun == &vFppppi) return 1; if (fun == &vFppppu) return 1; + if (fun == &vFppppL) return 1; if (fun == &vFppppp) return 1; if (fun == &iFiiipu) return 1; if (fun == &iFiiipp) return 1; @@ -3848,6 +4598,8 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpiuwp) return 1; if (fun == &iFpipii) return 1; if (fun == &iFpipiL) return 1; + if (fun == &iFpipip) return 1; + if (fun == &iFpippi) return 1; if (fun == &iFpippW) return 1; if (fun == &iFpippp) return 1; if (fun == &iFpCCCC) return 1; @@ -3856,9 +4608,11 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpuuup) return 1; if (fun == &iFpuuLL) return 1; if (fun == &iFpuupp) return 1; + if (fun == &iFpuppp) return 1; if (fun == &iFplluu) return 1; if (fun == &iFpLiLi) return 1; if (fun == &iFpLlpp) return 1; + if (fun == &iFppiiu) return 1; if (fun == &iFppiip) return 1; if (fun == &iFppiup) return 1; if (fun == &iFppiLi) return 1; @@ -3869,12 +4623,15 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFppupi) return 1; if (fun == &iFppupp) return 1; if (fun == &iFppllp) return 1; + if (fun == &iFpplpp) return 1; + if (fun == &iFppLip) return 1; if (fun == &iFppLpi) return 1; if (fun == &iFppLpL) return 1; if (fun == &iFppLpp) return 1; if (fun == &iFpppii) return 1; if (fun == &iFpppiL) return 1; if (fun == &iFpppip) return 1; + if (fun == &iFpppui) return 1; if (fun == &iFpppLi) return 1; if (fun == &iFpppLp) return 1; if (fun == &iFppppi) return 1; @@ -3882,6 +4639,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFppppp) return 1; if (fun == &IFppIII) return 1; if (fun == &uFiuuuu) return 1; + if (fun == &uFipipp) return 1; if (fun == &uFuiiiu) return 1; if (fun == &uFpCCCC) return 1; if (fun == &uFpuuuu) return 1; @@ -3889,25 +4647,31 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &uFppipp) return 1; if (fun == &uFppupp) return 1; if (fun == &uFpplip) return 1; + if (fun == &uFppLpp) return 1; if (fun == &uFppppu) return 1; if (fun == &uFppppp) return 1; if (fun == &UFuiiii) return 1; if (fun == &lFipili) return 1; if (fun == &lFipLli) return 1; if (fun == &lFipLLi) return 1; + if (fun == &LFpuppi) return 1; if (fun == &LFpLLLp) return 1; if (fun == &LFpLppL) return 1; if (fun == &LFpLppp) return 1; if (fun == &LFppLLp) return 1; if (fun == &LFpppii) return 1; if (fun == &LFppppp) return 1; + if (fun == &pFiiiii) return 1; if (fun == &pFipipL) return 1; + if (fun == &pFipppu) return 1; if (fun == &pFuiiiu) return 1; if (fun == &pFuiipp) return 1; if (fun == &pFpiiii) return 1; + if (fun == &pFpiiip) return 1; if (fun == &pFpiiuu) return 1; if (fun == &pFpiipi) return 1; if (fun == &pFpiipp) return 1; + if (fun == &pFpiCCC) return 1; if (fun == &pFpiuuu) return 1; if (fun == &pFpippi) return 1; if (fun == &pFpippp) return 1; @@ -3920,14 +4684,19 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpuuWW) return 1; if (fun == &pFpuuup) return 1; if (fun == &pFpdddd) return 5; + if (fun == &pFplppp) return 1; if (fun == &pFppiii) return 1; if (fun == &pFppiip) return 1; + if (fun == &pFppiup) return 1; if (fun == &pFppipi) return 1; if (fun == &pFppipp) return 1; if (fun == &pFppuuu) return 1; if (fun == &pFppuup) return 1; + if (fun == &pFppddi) return 3; if (fun == &pFppLLp) return 1; + if (fun == &pFpppii) return 1; if (fun == &pFpppip) return 1; + if (fun == &pFpppui) return 1; if (fun == &pFpppuu) return 1; if (fun == &pFpppup) return 1; if (fun == &pFpppLi) return 1; @@ -3989,28 +4758,40 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFffffff) return 7; if (fun == &vFdddddd) return 7; if (fun == &vFpiiiii) return 1; + if (fun == &vFpiiipp) return 1; if (fun == &vFpiiuuu) return 1; if (fun == &vFpiippp) return 1; if (fun == &vFpipppi) return 1; + if (fun == &vFpuiiiu) return 1; + if (fun == &vFpuiipp) return 1; if (fun == &vFpudddd) return 5; if (fun == &vFpdddii) return 4; if (fun == &vFpddddd) return 6; if (fun == &vFppiiii) return 1; if (fun == &vFppiiip) return 1; + if (fun == &vFppiiui) return 1; if (fun == &vFppiipi) return 1; + if (fun == &vFppiipp) return 1; if (fun == &vFppilpp) return 1; if (fun == &vFppippi) return 1; if (fun == &vFppippp) return 1; + if (fun == &vFppuuuu) return 1; if (fun == &vFppupii) return 1; + if (fun == &vFppuppp) return 1; + if (fun == &vFppdidd) return 4; if (fun == &vFpplppi) return 1; if (fun == &vFpplppp) return 1; if (fun == &vFppLppi) return 1; if (fun == &vFppLppp) return 1; if (fun == &vFpppiii) return 1; if (fun == &vFpppiip) return 1; + if (fun == &vFpppiff) return 3; if (fun == &vFpppipu) return 1; + if (fun == &vFpppuii) return 1; if (fun == &vFppppii) return 1; if (fun == &vFpppppi) return 1; + if (fun == &vFpppppu) return 1; + if (fun == &vFpppppL) return 1; if (fun == &vFpppppp) return 1; if (fun == &cFppLppi) return 1; if (fun == &iFiiiiii) return 1; @@ -4027,9 +4808,11 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFLppipp) return 1; if (fun == &iFpiiiii) return 1; if (fun == &iFpiiipp) return 1; + if (fun == &iFpiippu) return 1; if (fun == &iFpiippp) return 1; if (fun == &iFpiuuup) return 1; if (fun == &iFpiuupp) return 1; + if (fun == &iFpipipi) return 1; if (fun == &iFpippip) return 1; if (fun == &iFpipppL) return 1; if (fun == &iFpipppp) return 1; @@ -4037,16 +4820,24 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpuiCpp) return 1; if (fun == &iFpuippp) return 1; if (fun == &iFpupuui) return 1; + if (fun == &iFppiiip) return 1; if (fun == &iFppiiuu) return 1; if (fun == &iFppiipi) return 1; + if (fun == &iFppiipp) return 1; if (fun == &iFppipii) return 1; if (fun == &iFppipiL) return 1; + if (fun == &iFppipip) return 1; + if (fun == &iFppIipp) return 1; if (fun == &iFppIppp) return 1; if (fun == &iFppuiii) return 1; if (fun == &iFppuiiL) return 1; + if (fun == &iFppuipp) return 1; if (fun == &iFppuIII) return 1; if (fun == &iFppuupp) return 1; if (fun == &iFppupip) return 1; + if (fun == &iFppuppp) return 1; + if (fun == &iFppUipp) return 1; + if (fun == &iFppdidd) return 4; if (fun == &iFpplppi) return 1; if (fun == &iFppLupp) return 1; if (fun == &iFppLpLp) return 1; @@ -4064,6 +4855,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFpppppp) return 1; if (fun == &uFpippup) return 1; if (fun == &uFpuippp) return 1; + if (fun == &uFppippp) return 1; if (fun == &uFpppppi) return 1; if (fun == &uFpppppp) return 1; if (fun == &UFpippup) return 1; @@ -4072,6 +4864,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &lFipLipp) return 1; if (fun == &lFipLpLL) return 1; if (fun == &LFpipipi) return 1; + if (fun == &LFpLippp) return 1; if (fun == &pFiiiiii) return 1; if (fun == &pFiCiiCi) return 1; if (fun == &pFdddddd) return 7; @@ -4084,10 +4877,16 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &pFpCuuup) return 1; if (fun == &pFpuuwwu) return 1; if (fun == &pFpuuuuu) return 1; + if (fun == &pFplpppp) return 1; if (fun == &pFppiiii) return 1; + if (fun == &pFppiipp) return 1; if (fun == &pFppiCCC) return 1; if (fun == &pFppippi) return 1; if (fun == &pFppippp) return 1; + if (fun == &pFpppiii) return 1; + if (fun == &pFpppiui) return 1; + if (fun == &pFppppii) return 1; + if (fun == &pFpppppi) return 1; if (fun == &pFpppppu) return 1; if (fun == &pFpppppp) return 1; if (fun == &vFiiffffp) return 5; @@ -4104,6 +4903,8 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &vFpdddddd) return 7; if (fun == &iFppppdpi) return 2; if (fun == &pFifffppp) return 4; + if (fun == &pFpppfffi) return 4; + if (fun == &pFpppdddi) return 4; if (fun == &vFuuuuufff) return 4; if (fun == &vFffffffff) return 9; if (fun == &vFuffffffff) return 9; diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 30f0638e..2ef7b0e4 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -39,6 +39,7 @@ void vFU(x64emu_t *emu, uintptr_t fnc); void vFf(x64emu_t *emu, uintptr_t fnc); void vFd(x64emu_t *emu, uintptr_t fnc); void vFl(x64emu_t *emu, uintptr_t fnc); +void vFL(x64emu_t *emu, uintptr_t fnc); void vFp(x64emu_t *emu, uintptr_t fnc); void vFS(x64emu_t *emu, uintptr_t fnc); void cFv(x64emu_t *emu, uintptr_t fnc); @@ -52,6 +53,8 @@ void iFv(x64emu_t *emu, uintptr_t fnc); void iFw(x64emu_t *emu, uintptr_t fnc); void iFi(x64emu_t *emu, uintptr_t fnc); void iFI(x64emu_t *emu, uintptr_t fnc); +void iFC(x64emu_t *emu, uintptr_t fnc); +void iFW(x64emu_t *emu, uintptr_t fnc); void iFu(x64emu_t *emu, uintptr_t fnc); void iFU(x64emu_t *emu, uintptr_t fnc); void iFf(x64emu_t *emu, uintptr_t fnc); @@ -62,10 +65,13 @@ void iFL(x64emu_t *emu, uintptr_t fnc); void iFp(x64emu_t *emu, uintptr_t fnc); void iFO(x64emu_t *emu, uintptr_t fnc); void iFS(x64emu_t *emu, uintptr_t fnc); +void IFv(x64emu_t *emu, uintptr_t fnc); +void IFi(x64emu_t *emu, uintptr_t fnc); void IFI(x64emu_t *emu, uintptr_t fnc); void IFf(x64emu_t *emu, uintptr_t fnc); void IFd(x64emu_t *emu, uintptr_t fnc); void IFp(x64emu_t *emu, uintptr_t fnc); +void CFC(x64emu_t *emu, uintptr_t fnc); void CFp(x64emu_t *emu, uintptr_t fnc); void WFi(x64emu_t *emu, uintptr_t fnc); void WFW(x64emu_t *emu, uintptr_t fnc); @@ -95,13 +101,18 @@ void lFi(x64emu_t *emu, uintptr_t fnc); void lFl(x64emu_t *emu, uintptr_t fnc); void lFp(x64emu_t *emu, uintptr_t fnc); void LFv(x64emu_t *emu, uintptr_t fnc); +void LFu(x64emu_t *emu, uintptr_t fnc); void LFL(x64emu_t *emu, uintptr_t fnc); void LFp(x64emu_t *emu, uintptr_t fnc); void pFE(x64emu_t *emu, uintptr_t fnc); void pFv(x64emu_t *emu, uintptr_t fnc); +void pFw(x64emu_t *emu, uintptr_t fnc); void pFi(x64emu_t *emu, uintptr_t fnc); +void pFI(x64emu_t *emu, uintptr_t fnc); +void pFC(x64emu_t *emu, uintptr_t fnc); void pFW(x64emu_t *emu, uintptr_t fnc); void pFu(x64emu_t *emu, uintptr_t fnc); +void pFU(x64emu_t *emu, uintptr_t fnc); void pFd(x64emu_t *emu, uintptr_t fnc); void pFl(x64emu_t *emu, uintptr_t fnc); void pFL(x64emu_t *emu, uintptr_t fnc); @@ -134,8 +145,13 @@ void vFdd(x64emu_t *emu, uintptr_t fnc); void vFlp(x64emu_t *emu, uintptr_t fnc); void vFLL(x64emu_t *emu, uintptr_t fnc); void vFLp(x64emu_t *emu, uintptr_t fnc); +void vFpc(x64emu_t *emu, uintptr_t fnc); void vFpi(x64emu_t *emu, uintptr_t fnc); +void vFpI(x64emu_t *emu, uintptr_t fnc); +void vFpC(x64emu_t *emu, uintptr_t fnc); +void vFpW(x64emu_t *emu, uintptr_t fnc); void vFpu(x64emu_t *emu, uintptr_t fnc); +void vFpU(x64emu_t *emu, uintptr_t fnc); void vFpf(x64emu_t *emu, uintptr_t fnc); void vFpd(x64emu_t *emu, uintptr_t fnc); void vFpl(x64emu_t *emu, uintptr_t fnc); @@ -179,6 +195,7 @@ void IFEp(x64emu_t *emu, uintptr_t fnc); void IFpi(x64emu_t *emu, uintptr_t fnc); void IFpu(x64emu_t *emu, uintptr_t fnc); void IFpd(x64emu_t *emu, uintptr_t fnc); +void CFip(x64emu_t *emu, uintptr_t fnc); void CFui(x64emu_t *emu, uintptr_t fnc); void CFpi(x64emu_t *emu, uintptr_t fnc); void CFpu(x64emu_t *emu, uintptr_t fnc); @@ -200,6 +217,7 @@ void UFEp(x64emu_t *emu, uintptr_t fnc); void UFuu(x64emu_t *emu, uintptr_t fnc); void UFUp(x64emu_t *emu, uintptr_t fnc); void UFpp(x64emu_t *emu, uintptr_t fnc); +void fFEp(x64emu_t *emu, uintptr_t fnc); void fFif(x64emu_t *emu, uintptr_t fnc); void fFfi(x64emu_t *emu, uintptr_t fnc); void fFff(x64emu_t *emu, uintptr_t fnc); @@ -213,6 +231,7 @@ void dFdD(x64emu_t *emu, uintptr_t fnc); void dFdp(x64emu_t *emu, uintptr_t fnc); void dFll(x64emu_t *emu, uintptr_t fnc); void dFpi(x64emu_t *emu, uintptr_t fnc); +void dFpd(x64emu_t *emu, uintptr_t fnc); void dFpp(x64emu_t *emu, uintptr_t fnc); void DFDi(x64emu_t *emu, uintptr_t fnc); void DFDD(x64emu_t *emu, uintptr_t fnc); @@ -229,20 +248,28 @@ void LFLi(x64emu_t *emu, uintptr_t fnc); void LFpi(x64emu_t *emu, uintptr_t fnc); void LFpL(x64emu_t *emu, uintptr_t fnc); void LFpp(x64emu_t *emu, uintptr_t fnc); +void pFEi(x64emu_t *emu, uintptr_t fnc); void pFEp(x64emu_t *emu, uintptr_t fnc); void pFii(x64emu_t *emu, uintptr_t fnc); void pFiu(x64emu_t *emu, uintptr_t fnc); void pFip(x64emu_t *emu, uintptr_t fnc); +void pFiV(x64emu_t *emu, uintptr_t fnc); void pFui(x64emu_t *emu, uintptr_t fnc); +void pFuC(x64emu_t *emu, uintptr_t fnc); void pFuu(x64emu_t *emu, uintptr_t fnc); void pFup(x64emu_t *emu, uintptr_t fnc); +void pFuV(x64emu_t *emu, uintptr_t fnc); +void pFUi(x64emu_t *emu, uintptr_t fnc); void pFdd(x64emu_t *emu, uintptr_t fnc); void pFlp(x64emu_t *emu, uintptr_t fnc); void pFLL(x64emu_t *emu, uintptr_t fnc); +void pFLp(x64emu_t *emu, uintptr_t fnc); void pFpi(x64emu_t *emu, uintptr_t fnc); void pFpC(x64emu_t *emu, uintptr_t fnc); void pFpu(x64emu_t *emu, uintptr_t fnc); void pFpU(x64emu_t *emu, uintptr_t fnc); +void pFpd(x64emu_t *emu, uintptr_t fnc); +void pFpl(x64emu_t *emu, uintptr_t fnc); void pFpL(x64emu_t *emu, uintptr_t fnc); void pFpp(x64emu_t *emu, uintptr_t fnc); void pFpV(x64emu_t *emu, uintptr_t fnc); @@ -284,12 +311,15 @@ void vFudd(x64emu_t *emu, uintptr_t fnc); void vFull(x64emu_t *emu, uintptr_t fnc); void vFulp(x64emu_t *emu, uintptr_t fnc); void vFupu(x64emu_t *emu, uintptr_t fnc); +void vFupp(x64emu_t *emu, uintptr_t fnc); void vFfff(x64emu_t *emu, uintptr_t fnc); void vFfpp(x64emu_t *emu, uintptr_t fnc); void vFddd(x64emu_t *emu, uintptr_t fnc); void vFdpp(x64emu_t *emu, uintptr_t fnc); +void vFLpL(x64emu_t *emu, uintptr_t fnc); void vFLpp(x64emu_t *emu, uintptr_t fnc); void vFpii(x64emu_t *emu, uintptr_t fnc); +void vFpiC(x64emu_t *emu, uintptr_t fnc); void vFpiu(x64emu_t *emu, uintptr_t fnc); void vFpif(x64emu_t *emu, uintptr_t fnc); void vFpid(x64emu_t *emu, uintptr_t fnc); @@ -298,6 +328,7 @@ void vFpui(x64emu_t *emu, uintptr_t fnc); void vFpuI(x64emu_t *emu, uintptr_t fnc); void vFpuu(x64emu_t *emu, uintptr_t fnc); void vFpup(x64emu_t *emu, uintptr_t fnc); +void vFpff(x64emu_t *emu, uintptr_t fnc); void vFpdd(x64emu_t *emu, uintptr_t fnc); void vFpll(x64emu_t *emu, uintptr_t fnc); void vFpLi(x64emu_t *emu, uintptr_t fnc); @@ -309,6 +340,7 @@ void vFppd(x64emu_t *emu, uintptr_t fnc); void vFppl(x64emu_t *emu, uintptr_t fnc); void vFppL(x64emu_t *emu, uintptr_t fnc); void vFppp(x64emu_t *emu, uintptr_t fnc); +void vFppV(x64emu_t *emu, uintptr_t fnc); void iFEiw(x64emu_t *emu, uintptr_t fnc); void iFEip(x64emu_t *emu, uintptr_t fnc); void iFEWW(x64emu_t *emu, uintptr_t fnc); @@ -338,6 +370,7 @@ void iFipu(x64emu_t *emu, uintptr_t fnc); void iFipL(x64emu_t *emu, uintptr_t fnc); void iFipp(x64emu_t *emu, uintptr_t fnc); void iFipO(x64emu_t *emu, uintptr_t fnc); +void iFCiW(x64emu_t *emu, uintptr_t fnc); void iFuwp(x64emu_t *emu, uintptr_t fnc); void iFuui(x64emu_t *emu, uintptr_t fnc); void iFuuu(x64emu_t *emu, uintptr_t fnc); @@ -357,6 +390,7 @@ void iFpii(x64emu_t *emu, uintptr_t fnc); void iFpiu(x64emu_t *emu, uintptr_t fnc); void iFpiL(x64emu_t *emu, uintptr_t fnc); void iFpip(x64emu_t *emu, uintptr_t fnc); +void iFpIi(x64emu_t *emu, uintptr_t fnc); void iFpui(x64emu_t *emu, uintptr_t fnc); void iFpuu(x64emu_t *emu, uintptr_t fnc); void iFpuU(x64emu_t *emu, uintptr_t fnc); @@ -387,6 +421,7 @@ void iFSpL(x64emu_t *emu, uintptr_t fnc); void IFiIi(x64emu_t *emu, uintptr_t fnc); void IFpIi(x64emu_t *emu, uintptr_t fnc); void IFppi(x64emu_t *emu, uintptr_t fnc); +void IFppu(x64emu_t *emu, uintptr_t fnc); void IFSIi(x64emu_t *emu, uintptr_t fnc); void uFEpW(x64emu_t *emu, uintptr_t fnc); void uFEpu(x64emu_t *emu, uintptr_t fnc); @@ -409,6 +444,7 @@ void uFppi(x64emu_t *emu, uintptr_t fnc); void uFppu(x64emu_t *emu, uintptr_t fnc); void uFppp(x64emu_t *emu, uintptr_t fnc); void UFppi(x64emu_t *emu, uintptr_t fnc); +void UFppu(x64emu_t *emu, uintptr_t fnc); void fFull(x64emu_t *emu, uintptr_t fnc); void fFfff(x64emu_t *emu, uintptr_t fnc); void fFffp(x64emu_t *emu, uintptr_t fnc); @@ -416,6 +452,7 @@ void fFppL(x64emu_t *emu, uintptr_t fnc); void fFppp(x64emu_t *emu, uintptr_t fnc); void dFddd(x64emu_t *emu, uintptr_t fnc); void dFddp(x64emu_t *emu, uintptr_t fnc); +void dFpdd(x64emu_t *emu, uintptr_t fnc); void dFppi(x64emu_t *emu, uintptr_t fnc); void dFppp(x64emu_t *emu, uintptr_t fnc); void DFppp(x64emu_t *emu, uintptr_t fnc); @@ -427,6 +464,7 @@ void lFlll(x64emu_t *emu, uintptr_t fnc); void lFlpi(x64emu_t *emu, uintptr_t fnc); void lFpli(x64emu_t *emu, uintptr_t fnc); void lFpLu(x64emu_t *emu, uintptr_t fnc); +void lFpLp(x64emu_t *emu, uintptr_t fnc); void lFppi(x64emu_t *emu, uintptr_t fnc); void lFppL(x64emu_t *emu, uintptr_t fnc); void lFppp(x64emu_t *emu, uintptr_t fnc); @@ -443,16 +481,26 @@ void LFppi(x64emu_t *emu, uintptr_t fnc); void LFppL(x64emu_t *emu, uintptr_t fnc); void LFSpL(x64emu_t *emu, uintptr_t fnc); void pFEip(x64emu_t *emu, uintptr_t fnc); +void pFEup(x64emu_t *emu, uintptr_t fnc); void pFEpi(x64emu_t *emu, uintptr_t fnc); +void pFEpu(x64emu_t *emu, uintptr_t fnc); void pFEpp(x64emu_t *emu, uintptr_t fnc); +void pFEpV(x64emu_t *emu, uintptr_t fnc); +void pFEpA(x64emu_t *emu, uintptr_t fnc); void pFiii(x64emu_t *emu, uintptr_t fnc); +void pFiiu(x64emu_t *emu, uintptr_t fnc); void pFiip(x64emu_t *emu, uintptr_t fnc); +void pFiIp(x64emu_t *emu, uintptr_t fnc); +void pFiup(x64emu_t *emu, uintptr_t fnc); void pFipi(x64emu_t *emu, uintptr_t fnc); void pFipL(x64emu_t *emu, uintptr_t fnc); void pFipp(x64emu_t *emu, uintptr_t fnc); void pFIpi(x64emu_t *emu, uintptr_t fnc); +void pFCiW(x64emu_t *emu, uintptr_t fnc); void pFWWW(x64emu_t *emu, uintptr_t fnc); void pFuii(x64emu_t *emu, uintptr_t fnc); +void pFuui(x64emu_t *emu, uintptr_t fnc); +void pFuuu(x64emu_t *emu, uintptr_t fnc); void pFupi(x64emu_t *emu, uintptr_t fnc); void pFupL(x64emu_t *emu, uintptr_t fnc); void pFUpi(x64emu_t *emu, uintptr_t fnc); @@ -461,6 +509,7 @@ void pFddd(x64emu_t *emu, uintptr_t fnc); void pFDip(x64emu_t *emu, uintptr_t fnc); void pFpii(x64emu_t *emu, uintptr_t fnc); void pFpiu(x64emu_t *emu, uintptr_t fnc); +void pFpid(x64emu_t *emu, uintptr_t fnc); void pFpil(x64emu_t *emu, uintptr_t fnc); void pFpiL(x64emu_t *emu, uintptr_t fnc); void pFpip(x64emu_t *emu, uintptr_t fnc); @@ -471,11 +520,16 @@ void pFpuu(x64emu_t *emu, uintptr_t fnc); void pFpuL(x64emu_t *emu, uintptr_t fnc); void pFpup(x64emu_t *emu, uintptr_t fnc); void pFpUp(x64emu_t *emu, uintptr_t fnc); +void pFpdu(x64emu_t *emu, uintptr_t fnc); +void pFplC(x64emu_t *emu, uintptr_t fnc); +void pFplu(x64emu_t *emu, uintptr_t fnc); +void pFpll(x64emu_t *emu, uintptr_t fnc); void pFplp(x64emu_t *emu, uintptr_t fnc); void pFpLu(x64emu_t *emu, uintptr_t fnc); void pFpLL(x64emu_t *emu, uintptr_t fnc); void pFpLp(x64emu_t *emu, uintptr_t fnc); void pFppi(x64emu_t *emu, uintptr_t fnc); +void pFppC(x64emu_t *emu, uintptr_t fnc); void pFppu(x64emu_t *emu, uintptr_t fnc); void pFppf(x64emu_t *emu, uintptr_t fnc); void pFppl(x64emu_t *emu, uintptr_t fnc); @@ -483,6 +537,7 @@ void pFppL(x64emu_t *emu, uintptr_t fnc); void pFppp(x64emu_t *emu, uintptr_t fnc); void pFpOM(x64emu_t *emu, uintptr_t fnc); void pFSpl(x64emu_t *emu, uintptr_t fnc); +void vFEiip(x64emu_t *emu, uintptr_t fnc); void vFEipp(x64emu_t *emu, uintptr_t fnc); void vFEipV(x64emu_t *emu, uintptr_t fnc); void vFEipA(x64emu_t *emu, uintptr_t fnc); @@ -490,6 +545,8 @@ void vFEpii(x64emu_t *emu, uintptr_t fnc); void vFEpip(x64emu_t *emu, uintptr_t fnc); void vFEpup(x64emu_t *emu, uintptr_t fnc); void vFEppp(x64emu_t *emu, uintptr_t fnc); +void vFEppV(x64emu_t *emu, uintptr_t fnc); +void vFEppA(x64emu_t *emu, uintptr_t fnc); void vFiiii(x64emu_t *emu, uintptr_t fnc); void vFiiip(x64emu_t *emu, uintptr_t fnc); void vFiIII(x64emu_t *emu, uintptr_t fnc); @@ -550,28 +607,46 @@ void vFUUpi(x64emu_t *emu, uintptr_t fnc); void vFffff(x64emu_t *emu, uintptr_t fnc); void vFdddd(x64emu_t *emu, uintptr_t fnc); void vFpiii(x64emu_t *emu, uintptr_t fnc); +void vFpiiu(x64emu_t *emu, uintptr_t fnc); void vFpiip(x64emu_t *emu, uintptr_t fnc); +void vFpiuu(x64emu_t *emu, uintptr_t fnc); void vFpiuL(x64emu_t *emu, uintptr_t fnc); void vFpiup(x64emu_t *emu, uintptr_t fnc); +void vFpifi(x64emu_t *emu, uintptr_t fnc); void vFpipi(x64emu_t *emu, uintptr_t fnc); void vFpipp(x64emu_t *emu, uintptr_t fnc); +void vFpCiW(x64emu_t *emu, uintptr_t fnc); +void vFpuip(x64emu_t *emu, uintptr_t fnc); +void vFpuui(x64emu_t *emu, uintptr_t fnc); void vFpuuu(x64emu_t *emu, uintptr_t fnc); +void vFpuup(x64emu_t *emu, uintptr_t fnc); void vFpudd(x64emu_t *emu, uintptr_t fnc); void vFpupp(x64emu_t *emu, uintptr_t fnc); void vFpdii(x64emu_t *emu, uintptr_t fnc); +void vFpddi(x64emu_t *emu, uintptr_t fnc); void vFpddd(x64emu_t *emu, uintptr_t fnc); void vFpLLL(x64emu_t *emu, uintptr_t fnc); void vFppii(x64emu_t *emu, uintptr_t fnc); +void vFppiu(x64emu_t *emu, uintptr_t fnc); void vFppid(x64emu_t *emu, uintptr_t fnc); +void vFppiL(x64emu_t *emu, uintptr_t fnc); void vFppip(x64emu_t *emu, uintptr_t fnc); void vFppui(x64emu_t *emu, uintptr_t fnc); void vFppuu(x64emu_t *emu, uintptr_t fnc); void vFppup(x64emu_t *emu, uintptr_t fnc); +void vFppfi(x64emu_t *emu, uintptr_t fnc); +void vFppdu(x64emu_t *emu, uintptr_t fnc); void vFppdd(x64emu_t *emu, uintptr_t fnc); +void vFppdp(x64emu_t *emu, uintptr_t fnc); +void vFpplp(x64emu_t *emu, uintptr_t fnc); void vFpppi(x64emu_t *emu, uintptr_t fnc); +void vFpppI(x64emu_t *emu, uintptr_t fnc); void vFpppu(x64emu_t *emu, uintptr_t fnc); +void vFpppU(x64emu_t *emu, uintptr_t fnc); +void vFpppd(x64emu_t *emu, uintptr_t fnc); void vFpppL(x64emu_t *emu, uintptr_t fnc); void vFpppp(x64emu_t *emu, uintptr_t fnc); +void vFpppV(x64emu_t *emu, uintptr_t fnc); void cFpiii(x64emu_t *emu, uintptr_t fnc); void iFEiip(x64emu_t *emu, uintptr_t fnc); void iFEiiN(x64emu_t *emu, uintptr_t fnc); @@ -613,6 +688,7 @@ void iFippi(x64emu_t *emu, uintptr_t fnc); void iFippL(x64emu_t *emu, uintptr_t fnc); void iFippp(x64emu_t *emu, uintptr_t fnc); void iFipON(x64emu_t *emu, uintptr_t fnc); +void iFuipu(x64emu_t *emu, uintptr_t fnc); void iFuipp(x64emu_t *emu, uintptr_t fnc); void iFuuff(x64emu_t *emu, uintptr_t fnc); void iFuupi(x64emu_t *emu, uintptr_t fnc); @@ -635,6 +711,7 @@ void iFpipC(x64emu_t *emu, uintptr_t fnc); void iFpipu(x64emu_t *emu, uintptr_t fnc); void iFpipp(x64emu_t *emu, uintptr_t fnc); void iFpipV(x64emu_t *emu, uintptr_t fnc); +void iFpIip(x64emu_t *emu, uintptr_t fnc); void iFpCCC(x64emu_t *emu, uintptr_t fnc); void iFpWWu(x64emu_t *emu, uintptr_t fnc); void iFpuwp(x64emu_t *emu, uintptr_t fnc); @@ -645,6 +722,7 @@ void iFpuuu(x64emu_t *emu, uintptr_t fnc); void iFpuup(x64emu_t *emu, uintptr_t fnc); void iFpuLL(x64emu_t *emu, uintptr_t fnc); void iFpuLp(x64emu_t *emu, uintptr_t fnc); +void iFpupi(x64emu_t *emu, uintptr_t fnc); void iFpupu(x64emu_t *emu, uintptr_t fnc); void iFpupL(x64emu_t *emu, uintptr_t fnc); void iFpupp(x64emu_t *emu, uintptr_t fnc); @@ -681,8 +759,12 @@ void iFpppp(x64emu_t *emu, uintptr_t fnc); void IFEpIi(x64emu_t *emu, uintptr_t fnc); void IFpIip(x64emu_t *emu, uintptr_t fnc); void IFppip(x64emu_t *emu, uintptr_t fnc); +void IFpppp(x64emu_t *emu, uintptr_t fnc); void IFSIii(x64emu_t *emu, uintptr_t fnc); +void uFEipp(x64emu_t *emu, uintptr_t fnc); +void uFEupp(x64emu_t *emu, uintptr_t fnc); void uFEpup(x64emu_t *emu, uintptr_t fnc); +void uFEppp(x64emu_t *emu, uintptr_t fnc); void uFifff(x64emu_t *emu, uintptr_t fnc); void uFuuuu(x64emu_t *emu, uintptr_t fnc); void uFpipu(x64emu_t *emu, uintptr_t fnc); @@ -691,10 +773,13 @@ void uFpCCC(x64emu_t *emu, uintptr_t fnc); void uFpuip(x64emu_t *emu, uintptr_t fnc); void uFpuuu(x64emu_t *emu, uintptr_t fnc); void uFppiu(x64emu_t *emu, uintptr_t fnc); +void uFppLp(x64emu_t *emu, uintptr_t fnc); void uFpppi(x64emu_t *emu, uintptr_t fnc); void uFpppp(x64emu_t *emu, uintptr_t fnc); void UFpipp(x64emu_t *emu, uintptr_t fnc); void UFppip(x64emu_t *emu, uintptr_t fnc); +void UFpppp(x64emu_t *emu, uintptr_t fnc); +void dFpppp(x64emu_t *emu, uintptr_t fnc); void lFEpip(x64emu_t *emu, uintptr_t fnc); void lFEppL(x64emu_t *emu, uintptr_t fnc); void lFEppp(x64emu_t *emu, uintptr_t fnc); @@ -715,6 +800,7 @@ void lFppii(x64emu_t *emu, uintptr_t fnc); void lFppip(x64emu_t *emu, uintptr_t fnc); void lFpppL(x64emu_t *emu, uintptr_t fnc); void LFippL(x64emu_t *emu, uintptr_t fnc); +void LFippp(x64emu_t *emu, uintptr_t fnc); void LFpuuu(x64emu_t *emu, uintptr_t fnc); void LFpLLp(x64emu_t *emu, uintptr_t fnc); void LFpLpp(x64emu_t *emu, uintptr_t fnc); @@ -722,21 +808,29 @@ void LFppii(x64emu_t *emu, uintptr_t fnc); void LFppip(x64emu_t *emu, uintptr_t fnc); void LFppLL(x64emu_t *emu, uintptr_t fnc); void LFppLp(x64emu_t *emu, uintptr_t fnc); +void LFpppi(x64emu_t *emu, uintptr_t fnc); void LFpppp(x64emu_t *emu, uintptr_t fnc); void pFEipp(x64emu_t *emu, uintptr_t fnc); +void pFEipV(x64emu_t *emu, uintptr_t fnc); +void pFEipA(x64emu_t *emu, uintptr_t fnc); void pFEupp(x64emu_t *emu, uintptr_t fnc); void pFEpii(x64emu_t *emu, uintptr_t fnc); void pFEpip(x64emu_t *emu, uintptr_t fnc); void pFEppi(x64emu_t *emu, uintptr_t fnc); void pFEppp(x64emu_t *emu, uintptr_t fnc); +void pFEppV(x64emu_t *emu, uintptr_t fnc); void pFiiii(x64emu_t *emu, uintptr_t fnc); void pFiiiu(x64emu_t *emu, uintptr_t fnc); +void pFiiuu(x64emu_t *emu, uintptr_t fnc); void pFiiup(x64emu_t *emu, uintptr_t fnc); +void pFipii(x64emu_t *emu, uintptr_t fnc); +void pFipip(x64emu_t *emu, uintptr_t fnc); void pFippi(x64emu_t *emu, uintptr_t fnc); void pFippu(x64emu_t *emu, uintptr_t fnc); void pFuiii(x64emu_t *emu, uintptr_t fnc); void pFulli(x64emu_t *emu, uintptr_t fnc); void pFullu(x64emu_t *emu, uintptr_t fnc); +void pFffff(x64emu_t *emu, uintptr_t fnc); void pFdipp(x64emu_t *emu, uintptr_t fnc); void pFdddd(x64emu_t *emu, uintptr_t fnc); void pFDipp(x64emu_t *emu, uintptr_t fnc); @@ -746,35 +840,49 @@ void pFpiip(x64emu_t *emu, uintptr_t fnc); void pFpiuu(x64emu_t *emu, uintptr_t fnc); void pFpiLL(x64emu_t *emu, uintptr_t fnc); void pFpipi(x64emu_t *emu, uintptr_t fnc); +void pFpipd(x64emu_t *emu, uintptr_t fnc); void pFpipp(x64emu_t *emu, uintptr_t fnc); +void pFpipV(x64emu_t *emu, uintptr_t fnc); void pFpCWp(x64emu_t *emu, uintptr_t fnc); void pFpCuW(x64emu_t *emu, uintptr_t fnc); void pFpCuu(x64emu_t *emu, uintptr_t fnc); void pFpuii(x64emu_t *emu, uintptr_t fnc); +void pFpuip(x64emu_t *emu, uintptr_t fnc); void pFpuWp(x64emu_t *emu, uintptr_t fnc); void pFpuuC(x64emu_t *emu, uintptr_t fnc); void pFpuuu(x64emu_t *emu, uintptr_t fnc); void pFpuup(x64emu_t *emu, uintptr_t fnc); void pFpupi(x64emu_t *emu, uintptr_t fnc); +void pFpupu(x64emu_t *emu, uintptr_t fnc); +void pFplpl(x64emu_t *emu, uintptr_t fnc); void pFplpp(x64emu_t *emu, uintptr_t fnc); void pFpLip(x64emu_t *emu, uintptr_t fnc); void pFpLpL(x64emu_t *emu, uintptr_t fnc); void pFppii(x64emu_t *emu, uintptr_t fnc); +void pFppiu(x64emu_t *emu, uintptr_t fnc); void pFppiL(x64emu_t *emu, uintptr_t fnc); void pFppip(x64emu_t *emu, uintptr_t fnc); void pFppuW(x64emu_t *emu, uintptr_t fnc); void pFppuu(x64emu_t *emu, uintptr_t fnc); void pFppuL(x64emu_t *emu, uintptr_t fnc); void pFppup(x64emu_t *emu, uintptr_t fnc); +void pFppdd(x64emu_t *emu, uintptr_t fnc); void pFppLL(x64emu_t *emu, uintptr_t fnc); +void pFppLp(x64emu_t *emu, uintptr_t fnc); void pFpppi(x64emu_t *emu, uintptr_t fnc); void pFpppu(x64emu_t *emu, uintptr_t fnc); void pFpppL(x64emu_t *emu, uintptr_t fnc); void pFpppp(x64emu_t *emu, uintptr_t fnc); void pFSppi(x64emu_t *emu, uintptr_t fnc); void vFEiipV(x64emu_t *emu, uintptr_t fnc); +void vFEippp(x64emu_t *emu, uintptr_t fnc); void vFEpuup(x64emu_t *emu, uintptr_t fnc); +void vFEpuuV(x64emu_t *emu, uintptr_t fnc); +void vFEpupp(x64emu_t *emu, uintptr_t fnc); +void vFEpupA(x64emu_t *emu, uintptr_t fnc); void vFEpLLp(x64emu_t *emu, uintptr_t fnc); +void vFEppip(x64emu_t *emu, uintptr_t fnc); +void vFEppup(x64emu_t *emu, uintptr_t fnc); void vFEpppp(x64emu_t *emu, uintptr_t fnc); void vFiiiii(x64emu_t *emu, uintptr_t fnc); void vFiiiiu(x64emu_t *emu, uintptr_t fnc); @@ -844,25 +952,42 @@ void vFUUppp(x64emu_t *emu, uintptr_t fnc); void vFfffff(x64emu_t *emu, uintptr_t fnc); void vFddddp(x64emu_t *emu, uintptr_t fnc); void vFpiiii(x64emu_t *emu, uintptr_t fnc); +void vFpiiiu(x64emu_t *emu, uintptr_t fnc); +void vFpiiff(x64emu_t *emu, uintptr_t fnc); void vFpiipp(x64emu_t *emu, uintptr_t fnc); void vFpipii(x64emu_t *emu, uintptr_t fnc); +void vFpipiu(x64emu_t *emu, uintptr_t fnc); +void vFpuiip(x64emu_t *emu, uintptr_t fnc); void vFpuipp(x64emu_t *emu, uintptr_t fnc); +void vFpuipV(x64emu_t *emu, uintptr_t fnc); +void vFpuuuu(x64emu_t *emu, uintptr_t fnc); void vFpuddd(x64emu_t *emu, uintptr_t fnc); +void vFpffff(x64emu_t *emu, uintptr_t fnc); void vFpddii(x64emu_t *emu, uintptr_t fnc); void vFpdddd(x64emu_t *emu, uintptr_t fnc); +void vFpddpp(x64emu_t *emu, uintptr_t fnc); void vFpliil(x64emu_t *emu, uintptr_t fnc); void vFppiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiu(x64emu_t *emu, uintptr_t fnc); void vFppiip(x64emu_t *emu, uintptr_t fnc); void vFppiup(x64emu_t *emu, uintptr_t fnc); +void vFppiff(x64emu_t *emu, uintptr_t fnc); +void vFppipi(x64emu_t *emu, uintptr_t fnc); void vFppipp(x64emu_t *emu, uintptr_t fnc); void vFppWui(x64emu_t *emu, uintptr_t fnc); void vFppuui(x64emu_t *emu, uintptr_t fnc); +void vFppupi(x64emu_t *emu, uintptr_t fnc); +void vFppupp(x64emu_t *emu, uintptr_t fnc); void vFpppii(x64emu_t *emu, uintptr_t fnc); void vFpppip(x64emu_t *emu, uintptr_t fnc); +void vFpppuu(x64emu_t *emu, uintptr_t fnc); void vFppppi(x64emu_t *emu, uintptr_t fnc); void vFppppu(x64emu_t *emu, uintptr_t fnc); +void vFppppL(x64emu_t *emu, uintptr_t fnc); void vFppppp(x64emu_t *emu, uintptr_t fnc); +void iFEiipp(x64emu_t *emu, uintptr_t fnc); void iFEiipV(x64emu_t *emu, uintptr_t fnc); +void iFEippi(x64emu_t *emu, uintptr_t fnc); void iFEippp(x64emu_t *emu, uintptr_t fnc); void iFEpiii(x64emu_t *emu, uintptr_t fnc); void iFEpipi(x64emu_t *emu, uintptr_t fnc); @@ -907,6 +1032,8 @@ void iFpiipp(x64emu_t *emu, uintptr_t fnc); void iFpiuwp(x64emu_t *emu, uintptr_t fnc); void iFpipii(x64emu_t *emu, uintptr_t fnc); void iFpipiL(x64emu_t *emu, uintptr_t fnc); +void iFpipip(x64emu_t *emu, uintptr_t fnc); +void iFpippi(x64emu_t *emu, uintptr_t fnc); void iFpippW(x64emu_t *emu, uintptr_t fnc); void iFpippp(x64emu_t *emu, uintptr_t fnc); void iFpCCCC(x64emu_t *emu, uintptr_t fnc); @@ -915,9 +1042,11 @@ void iFpuuui(x64emu_t *emu, uintptr_t fnc); void iFpuuup(x64emu_t *emu, uintptr_t fnc); void iFpuuLL(x64emu_t *emu, uintptr_t fnc); void iFpuupp(x64emu_t *emu, uintptr_t fnc); +void iFpuppp(x64emu_t *emu, uintptr_t fnc); void iFplluu(x64emu_t *emu, uintptr_t fnc); void iFpLiLi(x64emu_t *emu, uintptr_t fnc); void iFpLlpp(x64emu_t *emu, uintptr_t fnc); +void iFppiiu(x64emu_t *emu, uintptr_t fnc); void iFppiip(x64emu_t *emu, uintptr_t fnc); void iFppiup(x64emu_t *emu, uintptr_t fnc); void iFppiLi(x64emu_t *emu, uintptr_t fnc); @@ -928,20 +1057,27 @@ void iFppuip(x64emu_t *emu, uintptr_t fnc); void iFppupi(x64emu_t *emu, uintptr_t fnc); void iFppupp(x64emu_t *emu, uintptr_t fnc); void iFppllp(x64emu_t *emu, uintptr_t fnc); +void iFpplpp(x64emu_t *emu, uintptr_t fnc); +void iFppLip(x64emu_t *emu, uintptr_t fnc); void iFppLpi(x64emu_t *emu, uintptr_t fnc); void iFppLpL(x64emu_t *emu, uintptr_t fnc); void iFppLpp(x64emu_t *emu, uintptr_t fnc); void iFpppii(x64emu_t *emu, uintptr_t fnc); void iFpppiL(x64emu_t *emu, uintptr_t fnc); void iFpppip(x64emu_t *emu, uintptr_t fnc); +void iFpppui(x64emu_t *emu, uintptr_t fnc); void iFpppLi(x64emu_t *emu, uintptr_t fnc); void iFpppLp(x64emu_t *emu, uintptr_t fnc); void iFppppi(x64emu_t *emu, uintptr_t fnc); void iFppppL(x64emu_t *emu, uintptr_t fnc); void iFppppp(x64emu_t *emu, uintptr_t fnc); void IFppIII(x64emu_t *emu, uintptr_t fnc); +void uFEippp(x64emu_t *emu, uintptr_t fnc); +void uFEpipp(x64emu_t *emu, uintptr_t fnc); void uFEppuu(x64emu_t *emu, uintptr_t fnc); +void uFEpppp(x64emu_t *emu, uintptr_t fnc); void uFiuuuu(x64emu_t *emu, uintptr_t fnc); +void uFipipp(x64emu_t *emu, uintptr_t fnc); void uFuiiiu(x64emu_t *emu, uintptr_t fnc); void uFpCCCC(x64emu_t *emu, uintptr_t fnc); void uFpuuuu(x64emu_t *emu, uintptr_t fnc); @@ -949,12 +1085,15 @@ void uFppiip(x64emu_t *emu, uintptr_t fnc); void uFppipp(x64emu_t *emu, uintptr_t fnc); void uFppupp(x64emu_t *emu, uintptr_t fnc); void uFpplip(x64emu_t *emu, uintptr_t fnc); +void uFppLpp(x64emu_t *emu, uintptr_t fnc); void uFppppu(x64emu_t *emu, uintptr_t fnc); void uFppppp(x64emu_t *emu, uintptr_t fnc); void UFuiiii(x64emu_t *emu, uintptr_t fnc); void lFipili(x64emu_t *emu, uintptr_t fnc); void lFipLli(x64emu_t *emu, uintptr_t fnc); void lFipLLi(x64emu_t *emu, uintptr_t fnc); +void LFEpppp(x64emu_t *emu, uintptr_t fnc); +void LFpuppi(x64emu_t *emu, uintptr_t fnc); void LFpLLLp(x64emu_t *emu, uintptr_t fnc); void LFpLppL(x64emu_t *emu, uintptr_t fnc); void LFpLppp(x64emu_t *emu, uintptr_t fnc); @@ -971,13 +1110,17 @@ void pFEppLp(x64emu_t *emu, uintptr_t fnc); void pFEpppi(x64emu_t *emu, uintptr_t fnc); void pFEpppu(x64emu_t *emu, uintptr_t fnc); void pFEpppp(x64emu_t *emu, uintptr_t fnc); +void pFiiiii(x64emu_t *emu, uintptr_t fnc); void pFipipL(x64emu_t *emu, uintptr_t fnc); +void pFipppu(x64emu_t *emu, uintptr_t fnc); void pFuiiiu(x64emu_t *emu, uintptr_t fnc); void pFuiipp(x64emu_t *emu, uintptr_t fnc); void pFpiiii(x64emu_t *emu, uintptr_t fnc); +void pFpiiip(x64emu_t *emu, uintptr_t fnc); void pFpiiuu(x64emu_t *emu, uintptr_t fnc); void pFpiipi(x64emu_t *emu, uintptr_t fnc); void pFpiipp(x64emu_t *emu, uintptr_t fnc); +void pFpiCCC(x64emu_t *emu, uintptr_t fnc); void pFpiuuu(x64emu_t *emu, uintptr_t fnc); void pFpippi(x64emu_t *emu, uintptr_t fnc); void pFpippp(x64emu_t *emu, uintptr_t fnc); @@ -990,22 +1133,31 @@ void pFpuuip(x64emu_t *emu, uintptr_t fnc); void pFpuuWW(x64emu_t *emu, uintptr_t fnc); void pFpuuup(x64emu_t *emu, uintptr_t fnc); void pFpdddd(x64emu_t *emu, uintptr_t fnc); +void pFplppp(x64emu_t *emu, uintptr_t fnc); void pFppiii(x64emu_t *emu, uintptr_t fnc); void pFppiip(x64emu_t *emu, uintptr_t fnc); +void pFppiup(x64emu_t *emu, uintptr_t fnc); void pFppipi(x64emu_t *emu, uintptr_t fnc); void pFppipp(x64emu_t *emu, uintptr_t fnc); void pFppuuu(x64emu_t *emu, uintptr_t fnc); void pFppuup(x64emu_t *emu, uintptr_t fnc); +void pFppddi(x64emu_t *emu, uintptr_t fnc); void pFppLLp(x64emu_t *emu, uintptr_t fnc); +void pFpppii(x64emu_t *emu, uintptr_t fnc); void pFpppip(x64emu_t *emu, uintptr_t fnc); +void pFpppui(x64emu_t *emu, uintptr_t fnc); void pFpppuu(x64emu_t *emu, uintptr_t fnc); void pFpppup(x64emu_t *emu, uintptr_t fnc); void pFpppLi(x64emu_t *emu, uintptr_t fnc); void pFppppi(x64emu_t *emu, uintptr_t fnc); void pFppppp(x64emu_t *emu, uintptr_t fnc); void vFEiiipp(x64emu_t *emu, uintptr_t fnc); +void vFEpiLpp(x64emu_t *emu, uintptr_t fnc); +void vFEpippp(x64emu_t *emu, uintptr_t fnc); void vFEpuipp(x64emu_t *emu, uintptr_t fnc); void vFEpLLpp(x64emu_t *emu, uintptr_t fnc); +void vFEppipV(x64emu_t *emu, uintptr_t fnc); +void vFEppupp(x64emu_t *emu, uintptr_t fnc); void vFEppppp(x64emu_t *emu, uintptr_t fnc); void vFiiiiii(x64emu_t *emu, uintptr_t fnc); void vFiiiuil(x64emu_t *emu, uintptr_t fnc); @@ -1063,32 +1215,46 @@ void vFuppppp(x64emu_t *emu, uintptr_t fnc); void vFffffff(x64emu_t *emu, uintptr_t fnc); void vFdddddd(x64emu_t *emu, uintptr_t fnc); void vFpiiiii(x64emu_t *emu, uintptr_t fnc); +void vFpiiipp(x64emu_t *emu, uintptr_t fnc); void vFpiiuuu(x64emu_t *emu, uintptr_t fnc); void vFpiippp(x64emu_t *emu, uintptr_t fnc); void vFpipipV(x64emu_t *emu, uintptr_t fnc); void vFpipppi(x64emu_t *emu, uintptr_t fnc); +void vFpuiiiu(x64emu_t *emu, uintptr_t fnc); +void vFpuiipp(x64emu_t *emu, uintptr_t fnc); void vFpudddd(x64emu_t *emu, uintptr_t fnc); void vFpdddii(x64emu_t *emu, uintptr_t fnc); void vFpddddd(x64emu_t *emu, uintptr_t fnc); void vFppiiii(x64emu_t *emu, uintptr_t fnc); void vFppiiip(x64emu_t *emu, uintptr_t fnc); +void vFppiiui(x64emu_t *emu, uintptr_t fnc); void vFppiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiipp(x64emu_t *emu, uintptr_t fnc); void vFppilpp(x64emu_t *emu, uintptr_t fnc); void vFppippi(x64emu_t *emu, uintptr_t fnc); void vFppippp(x64emu_t *emu, uintptr_t fnc); +void vFppuuuu(x64emu_t *emu, uintptr_t fnc); void vFppupii(x64emu_t *emu, uintptr_t fnc); +void vFppuppp(x64emu_t *emu, uintptr_t fnc); +void vFppdidd(x64emu_t *emu, uintptr_t fnc); void vFpplppi(x64emu_t *emu, uintptr_t fnc); void vFpplppp(x64emu_t *emu, uintptr_t fnc); void vFppLppi(x64emu_t *emu, uintptr_t fnc); void vFppLppp(x64emu_t *emu, uintptr_t fnc); void vFpppiii(x64emu_t *emu, uintptr_t fnc); void vFpppiip(x64emu_t *emu, uintptr_t fnc); +void vFpppiff(x64emu_t *emu, uintptr_t fnc); void vFpppipu(x64emu_t *emu, uintptr_t fnc); +void vFpppuii(x64emu_t *emu, uintptr_t fnc); void vFppppii(x64emu_t *emu, uintptr_t fnc); void vFpppppi(x64emu_t *emu, uintptr_t fnc); +void vFpppppu(x64emu_t *emu, uintptr_t fnc); +void vFpppppL(x64emu_t *emu, uintptr_t fnc); void vFpppppp(x64emu_t *emu, uintptr_t fnc); void cFppLppi(x64emu_t *emu, uintptr_t fnc); void iFEiippi(x64emu_t *emu, uintptr_t fnc); +void iFEiippp(x64emu_t *emu, uintptr_t fnc); +void iFEipppi(x64emu_t *emu, uintptr_t fnc); void iFElpppp(x64emu_t *emu, uintptr_t fnc); void iFEpiipp(x64emu_t *emu, uintptr_t fnc); void iFEpiipV(x64emu_t *emu, uintptr_t fnc); @@ -1111,9 +1277,11 @@ void iFlpippp(x64emu_t *emu, uintptr_t fnc); void iFLppipp(x64emu_t *emu, uintptr_t fnc); void iFpiiiii(x64emu_t *emu, uintptr_t fnc); void iFpiiipp(x64emu_t *emu, uintptr_t fnc); +void iFpiippu(x64emu_t *emu, uintptr_t fnc); void iFpiippp(x64emu_t *emu, uintptr_t fnc); void iFpiuuup(x64emu_t *emu, uintptr_t fnc); void iFpiuupp(x64emu_t *emu, uintptr_t fnc); +void iFpipipi(x64emu_t *emu, uintptr_t fnc); void iFpippip(x64emu_t *emu, uintptr_t fnc); void iFpipppL(x64emu_t *emu, uintptr_t fnc); void iFpipppp(x64emu_t *emu, uintptr_t fnc); @@ -1121,16 +1289,24 @@ void iFpWpppp(x64emu_t *emu, uintptr_t fnc); void iFpuiCpp(x64emu_t *emu, uintptr_t fnc); void iFpuippp(x64emu_t *emu, uintptr_t fnc); void iFpupuui(x64emu_t *emu, uintptr_t fnc); +void iFppiiip(x64emu_t *emu, uintptr_t fnc); void iFppiiuu(x64emu_t *emu, uintptr_t fnc); void iFppiipi(x64emu_t *emu, uintptr_t fnc); +void iFppiipp(x64emu_t *emu, uintptr_t fnc); void iFppipii(x64emu_t *emu, uintptr_t fnc); void iFppipiL(x64emu_t *emu, uintptr_t fnc); +void iFppipip(x64emu_t *emu, uintptr_t fnc); +void iFppIipp(x64emu_t *emu, uintptr_t fnc); void iFppIppp(x64emu_t *emu, uintptr_t fnc); void iFppuiii(x64emu_t *emu, uintptr_t fnc); void iFppuiiL(x64emu_t *emu, uintptr_t fnc); +void iFppuipp(x64emu_t *emu, uintptr_t fnc); void iFppuIII(x64emu_t *emu, uintptr_t fnc); void iFppuupp(x64emu_t *emu, uintptr_t fnc); void iFppupip(x64emu_t *emu, uintptr_t fnc); +void iFppuppp(x64emu_t *emu, uintptr_t fnc); +void iFppUipp(x64emu_t *emu, uintptr_t fnc); +void iFppdidd(x64emu_t *emu, uintptr_t fnc); void iFpplppi(x64emu_t *emu, uintptr_t fnc); void iFppLupp(x64emu_t *emu, uintptr_t fnc); void iFppLpLp(x64emu_t *emu, uintptr_t fnc); @@ -1146,8 +1322,11 @@ void iFppppup(x64emu_t *emu, uintptr_t fnc); void iFpppppi(x64emu_t *emu, uintptr_t fnc); void iFpppppL(x64emu_t *emu, uintptr_t fnc); void iFpppppp(x64emu_t *emu, uintptr_t fnc); +void uFEiippp(x64emu_t *emu, uintptr_t fnc); +void uFEiuppp(x64emu_t *emu, uintptr_t fnc); void uFpippup(x64emu_t *emu, uintptr_t fnc); void uFpuippp(x64emu_t *emu, uintptr_t fnc); +void uFppippp(x64emu_t *emu, uintptr_t fnc); void uFpppppi(x64emu_t *emu, uintptr_t fnc); void uFpppppp(x64emu_t *emu, uintptr_t fnc); void UFpippup(x64emu_t *emu, uintptr_t fnc); @@ -1156,7 +1335,9 @@ void lFipipLu(x64emu_t *emu, uintptr_t fnc); void lFipLipu(x64emu_t *emu, uintptr_t fnc); void lFipLipp(x64emu_t *emu, uintptr_t fnc); void lFipLpLL(x64emu_t *emu, uintptr_t fnc); +void LFEupppp(x64emu_t *emu, uintptr_t fnc); void LFpipipi(x64emu_t *emu, uintptr_t fnc); +void LFpLippp(x64emu_t *emu, uintptr_t fnc); void LFSpLiip(x64emu_t *emu, uintptr_t fnc); void pFEpippp(x64emu_t *emu, uintptr_t fnc); void pFEpuipp(x64emu_t *emu, uintptr_t fnc); @@ -1179,13 +1360,21 @@ void pFpCuuWW(x64emu_t *emu, uintptr_t fnc); void pFpCuuup(x64emu_t *emu, uintptr_t fnc); void pFpuuwwu(x64emu_t *emu, uintptr_t fnc); void pFpuuuuu(x64emu_t *emu, uintptr_t fnc); +void pFplpppp(x64emu_t *emu, uintptr_t fnc); void pFppiiii(x64emu_t *emu, uintptr_t fnc); +void pFppiipp(x64emu_t *emu, uintptr_t fnc); void pFppiCCC(x64emu_t *emu, uintptr_t fnc); void pFppippi(x64emu_t *emu, uintptr_t fnc); void pFppippp(x64emu_t *emu, uintptr_t fnc); +void pFpppiii(x64emu_t *emu, uintptr_t fnc); +void pFpppiui(x64emu_t *emu, uintptr_t fnc); +void pFppppii(x64emu_t *emu, uintptr_t fnc); +void pFpppppi(x64emu_t *emu, uintptr_t fnc); void pFpppppu(x64emu_t *emu, uintptr_t fnc); void pFpppppp(x64emu_t *emu, uintptr_t fnc); void pFSpiiii(x64emu_t *emu, uintptr_t fnc); +void vFEpipppp(x64emu_t *emu, uintptr_t fnc); +void vFEpuipuV(x64emu_t *emu, uintptr_t fnc); void vFEpppppp(x64emu_t *emu, uintptr_t fnc); void vFiiiiiip(x64emu_t *emu, uintptr_t fnc); void vFiiiiuup(x64emu_t *emu, uintptr_t fnc); @@ -1232,10 +1421,17 @@ void vFulpiill(x64emu_t *emu, uintptr_t fnc); void vFlipuiip(x64emu_t *emu, uintptr_t fnc); void vFpiiiipp(x64emu_t *emu, uintptr_t fnc); void vFpiiliip(x64emu_t *emu, uintptr_t fnc); +void vFpiipCpp(x64emu_t *emu, uintptr_t fnc); void vFpipipii(x64emu_t *emu, uintptr_t fnc); +void vFpipppii(x64emu_t *emu, uintptr_t fnc); void vFpddiidd(x64emu_t *emu, uintptr_t fnc); void vFpdddddd(x64emu_t *emu, uintptr_t fnc); +void vFppiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiiip(x64emu_t *emu, uintptr_t fnc); void vFppiiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiipii(x64emu_t *emu, uintptr_t fnc); +void vFppiipuu(x64emu_t *emu, uintptr_t fnc); +void vFppiippp(x64emu_t *emu, uintptr_t fnc); void vFppilppi(x64emu_t *emu, uintptr_t fnc); void vFppipiip(x64emu_t *emu, uintptr_t fnc); void vFppipipp(x64emu_t *emu, uintptr_t fnc); @@ -1245,9 +1441,17 @@ void vFppLpppp(x64emu_t *emu, uintptr_t fnc); void vFpppiiii(x64emu_t *emu, uintptr_t fnc); void vFpppiipi(x64emu_t *emu, uintptr_t fnc); void vFpppiipp(x64emu_t *emu, uintptr_t fnc); +void vFpppippi(x64emu_t *emu, uintptr_t fnc); void vFpppuuuu(x64emu_t *emu, uintptr_t fnc); +void vFppppiii(x64emu_t *emu, uintptr_t fnc); +void vFppppiip(x64emu_t *emu, uintptr_t fnc); void vFppppipi(x64emu_t *emu, uintptr_t fnc); +void vFpppppip(x64emu_t *emu, uintptr_t fnc); +void vFppppppi(x64emu_t *emu, uintptr_t fnc); +void vFppppppp(x64emu_t *emu, uintptr_t fnc); +void iFEpupppp(x64emu_t *emu, uintptr_t fnc); void iFEpLiLpV(x64emu_t *emu, uintptr_t fnc); +void iFEppuppp(x64emu_t *emu, uintptr_t fnc); void iFEppLpIi(x64emu_t *emu, uintptr_t fnc); void iFEpppiiu(x64emu_t *emu, uintptr_t fnc); void iFEpppppL(x64emu_t *emu, uintptr_t fnc); @@ -1279,10 +1483,12 @@ void iFppiipiL(x64emu_t *emu, uintptr_t fnc); void iFppiuppi(x64emu_t *emu, uintptr_t fnc); void iFppipiip(x64emu_t *emu, uintptr_t fnc); void iFppipipi(x64emu_t *emu, uintptr_t fnc); +void iFppipipp(x64emu_t *emu, uintptr_t fnc); void iFppippip(x64emu_t *emu, uintptr_t fnc); void iFppipppi(x64emu_t *emu, uintptr_t fnc); void iFppipppp(x64emu_t *emu, uintptr_t fnc); void iFppuipiL(x64emu_t *emu, uintptr_t fnc); +void iFppLiipp(x64emu_t *emu, uintptr_t fnc); void iFpppiiii(x64emu_t *emu, uintptr_t fnc); void iFpppiiuu(x64emu_t *emu, uintptr_t fnc); void iFpppiiup(x64emu_t *emu, uintptr_t fnc); @@ -1294,12 +1500,18 @@ void iFpppuiii(x64emu_t *emu, uintptr_t fnc); void iFppppiii(x64emu_t *emu, uintptr_t fnc); void iFppppdpi(x64emu_t *emu, uintptr_t fnc); void iFpppppip(x64emu_t *emu, uintptr_t fnc); +void iFpppppup(x64emu_t *emu, uintptr_t fnc); +void iFppppppi(x64emu_t *emu, uintptr_t fnc); void iFppppppp(x64emu_t *emu, uintptr_t fnc); +void uFEiipppp(x64emu_t *emu, uintptr_t fnc); +void uFEpiippp(x64emu_t *emu, uintptr_t fnc); void uFuippppp(x64emu_t *emu, uintptr_t fnc); void uFppiuppp(x64emu_t *emu, uintptr_t fnc); +void LFEpppppu(x64emu_t *emu, uintptr_t fnc); void pFEpLiiii(x64emu_t *emu, uintptr_t fnc); void pFEpLiiiI(x64emu_t *emu, uintptr_t fnc); void pFEpLiiil(x64emu_t *emu, uintptr_t fnc); +void pFEppuipp(x64emu_t *emu, uintptr_t fnc); void pFEppppip(x64emu_t *emu, uintptr_t fnc); void pFEpppppi(x64emu_t *emu, uintptr_t fnc); void pFifffppp(x64emu_t *emu, uintptr_t fnc); @@ -1311,12 +1523,36 @@ void pFpCuuuuu(x64emu_t *emu, uintptr_t fnc); void pFpCpWWup(x64emu_t *emu, uintptr_t fnc); void pFpuuuwwu(x64emu_t *emu, uintptr_t fnc); void pFpuupwwC(x64emu_t *emu, uintptr_t fnc); +void pFplppppp(x64emu_t *emu, uintptr_t fnc); +void pFppiiipp(x64emu_t *emu, uintptr_t fnc); void pFppiiCCC(x64emu_t *emu, uintptr_t fnc); +void pFppiippp(x64emu_t *emu, uintptr_t fnc); +void pFppipipp(x64emu_t *emu, uintptr_t fnc); void pFppuuppp(x64emu_t *emu, uintptr_t fnc); +void pFppLiiip(x64emu_t *emu, uintptr_t fnc); +void pFppLipip(x64emu_t *emu, uintptr_t fnc); +void pFpppccci(x64emu_t *emu, uintptr_t fnc); +void pFpppiiii(x64emu_t *emu, uintptr_t fnc); +void pFpppiipp(x64emu_t *emu, uintptr_t fnc); +void pFpppIIIi(x64emu_t *emu, uintptr_t fnc); +void pFpppCCCi(x64emu_t *emu, uintptr_t fnc); +void pFpppuuui(x64emu_t *emu, uintptr_t fnc); void pFpppuupp(x64emu_t *emu, uintptr_t fnc); +void pFpppUUUi(x64emu_t *emu, uintptr_t fnc); +void pFpppfffi(x64emu_t *emu, uintptr_t fnc); +void pFpppdddi(x64emu_t *emu, uintptr_t fnc); +void pFpppllli(x64emu_t *emu, uintptr_t fnc); +void pFpppLLLi(x64emu_t *emu, uintptr_t fnc); void pFppppuuu(x64emu_t *emu, uintptr_t fnc); void pFpppppuu(x64emu_t *emu, uintptr_t fnc); +void pFppppppi(x64emu_t *emu, uintptr_t fnc); void pFppppppp(x64emu_t *emu, uintptr_t fnc); +void vFEiippppV(x64emu_t *emu, uintptr_t fnc); +void vFEiupippp(x64emu_t *emu, uintptr_t fnc); +void vFEippippp(x64emu_t *emu, uintptr_t fnc); +void vFEppipppp(x64emu_t *emu, uintptr_t fnc); +void vFEpppuipV(x64emu_t *emu, uintptr_t fnc); +void vFEpppppuu(x64emu_t *emu, uintptr_t fnc); void vFiiiiuuip(x64emu_t *emu, uintptr_t fnc); void vFilipufip(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiii(x64emu_t *emu, uintptr_t fnc); @@ -1340,14 +1576,20 @@ void vFuuuuufff(x64emu_t *emu, uintptr_t fnc); void vFulllplip(x64emu_t *emu, uintptr_t fnc); void vFffffffff(x64emu_t *emu, uintptr_t fnc); void vFlipuiuip(x64emu_t *emu, uintptr_t fnc); +void vFpiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFpiiiipii(x64emu_t *emu, uintptr_t fnc); void vFpippiiuu(x64emu_t *emu, uintptr_t fnc); void vFpippiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiii(x64emu_t *emu, uintptr_t fnc); void vFppiiipii(x64emu_t *emu, uintptr_t fnc); void vFppipipii(x64emu_t *emu, uintptr_t fnc); +void vFppipppui(x64emu_t *emu, uintptr_t fnc); void vFppippppi(x64emu_t *emu, uintptr_t fnc); +void vFppippppp(x64emu_t *emu, uintptr_t fnc); void vFpplppppi(x64emu_t *emu, uintptr_t fnc); void vFpplppppp(x64emu_t *emu, uintptr_t fnc); void vFppppiipi(x64emu_t *emu, uintptr_t fnc); +void iFEipupupi(x64emu_t *emu, uintptr_t fnc); void iFEpippppp(x64emu_t *emu, uintptr_t fnc); void iFEpuuLppp(x64emu_t *emu, uintptr_t fnc); void iFEppppipp(x64emu_t *emu, uintptr_t fnc); @@ -1358,10 +1600,12 @@ void iFuuuuuuuu(x64emu_t *emu, uintptr_t fnc); void iFullfpppp(x64emu_t *emu, uintptr_t fnc); void iFpWCuWCuu(x64emu_t *emu, uintptr_t fnc); void iFpWWipppp(x64emu_t *emu, uintptr_t fnc); +void iFpuiipppp(x64emu_t *emu, uintptr_t fnc); void iFpuippLpp(x64emu_t *emu, uintptr_t fnc); void iFpuuiiiii(x64emu_t *emu, uintptr_t fnc); void iFpupppWWu(x64emu_t *emu, uintptr_t fnc); void iFpupppppp(x64emu_t *emu, uintptr_t fnc); +void iFppiiiiiu(x64emu_t *emu, uintptr_t fnc); void iFppIIIppp(x64emu_t *emu, uintptr_t fnc); void iFpppiiipi(x64emu_t *emu, uintptr_t fnc); void iFpppiippp(x64emu_t *emu, uintptr_t fnc); @@ -1370,12 +1614,24 @@ void iFpppipppp(x64emu_t *emu, uintptr_t fnc); void iFppppiipi(x64emu_t *emu, uintptr_t fnc); void iFppppppii(x64emu_t *emu, uintptr_t fnc); void iFpppppppp(x64emu_t *emu, uintptr_t fnc); +void uFEipipppp(x64emu_t *emu, uintptr_t fnc); +void uFEpiupppp(x64emu_t *emu, uintptr_t fnc); +void uFEppipppp(x64emu_t *emu, uintptr_t fnc); +void uFEppppppp(x64emu_t *emu, uintptr_t fnc); void uFuipppppp(x64emu_t *emu, uintptr_t fnc); void uFppuppppp(x64emu_t *emu, uintptr_t fnc); +void LFEpiupppp(x64emu_t *emu, uintptr_t fnc); +void pFEppLiiip(x64emu_t *emu, uintptr_t fnc); +void pFEpppuipV(x64emu_t *emu, uintptr_t fnc); +void pFEpppppiV(x64emu_t *emu, uintptr_t fnc); +void pFEppppppi(x64emu_t *emu, uintptr_t fnc); void pFEppppppp(x64emu_t *emu, uintptr_t fnc); +void pFiipppppp(x64emu_t *emu, uintptr_t fnc); void pFuiiiuuuu(x64emu_t *emu, uintptr_t fnc); void pFuupupipp(x64emu_t *emu, uintptr_t fnc); +void pFpiiiiiuu(x64emu_t *emu, uintptr_t fnc); void pFpipiiiip(x64emu_t *emu, uintptr_t fnc); +void pFpipppppp(x64emu_t *emu, uintptr_t fnc); void pFpCCuuwwC(x64emu_t *emu, uintptr_t fnc); void pFpCuwwWWu(x64emu_t *emu, uintptr_t fnc); void pFpCuuuCup(x64emu_t *emu, uintptr_t fnc); @@ -1383,8 +1639,12 @@ void pFpWWiCpup(x64emu_t *emu, uintptr_t fnc); void pFpuuWWCuu(x64emu_t *emu, uintptr_t fnc); void pFpuuuupup(x64emu_t *emu, uintptr_t fnc); void pFpdwwWWui(x64emu_t *emu, uintptr_t fnc); +void pFplpppppp(x64emu_t *emu, uintptr_t fnc); +void pFppiiiiii(x64emu_t *emu, uintptr_t fnc); void pFpppuuLLu(x64emu_t *emu, uintptr_t fnc); void pFpppppupp(x64emu_t *emu, uintptr_t fnc); +void vFEppiipppp(x64emu_t *emu, uintptr_t fnc); +void vFEpppiippp(x64emu_t *emu, uintptr_t fnc); void vFiiiiiiiii(x64emu_t *emu, uintptr_t fnc); void vFiiiiillli(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiii(x64emu_t *emu, uintptr_t fnc); @@ -1406,12 +1666,19 @@ void vFddddddddd(x64emu_t *emu, uintptr_t fnc); void vFlipuiuiip(x64emu_t *emu, uintptr_t fnc); void vFpipiuiipp(x64emu_t *emu, uintptr_t fnc); void vFpipppiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiipi(x64emu_t *emu, uintptr_t fnc); void vFppiiipiii(x64emu_t *emu, uintptr_t fnc); +void vFppiipiiii(x64emu_t *emu, uintptr_t fnc); +void vFppipppiii(x64emu_t *emu, uintptr_t fnc); +void vFppipppiip(x64emu_t *emu, uintptr_t fnc); void vFppuuiiiii(x64emu_t *emu, uintptr_t fnc); void vFpplpppppi(x64emu_t *emu, uintptr_t fnc); +void vFpppiiiiii(x64emu_t *emu, uintptr_t fnc); void vFppppipiip(x64emu_t *emu, uintptr_t fnc); void vFpppppippp(x64emu_t *emu, uintptr_t fnc); void iFEpiiiiipi(x64emu_t *emu, uintptr_t fnc); +void iFEpppipppp(x64emu_t *emu, uintptr_t fnc); void iFEppplPPPP(x64emu_t *emu, uintptr_t fnc); void iFEppPPPPPP(x64emu_t *emu, uintptr_t fnc); void iFiiiiiiiip(x64emu_t *emu, uintptr_t fnc); @@ -1423,14 +1690,19 @@ void iFpipLpiiip(x64emu_t *emu, uintptr_t fnc); void iFpuuuuuuuu(x64emu_t *emu, uintptr_t fnc); void iFppiiiiiii(x64emu_t *emu, uintptr_t fnc); void iFppiuiippL(x64emu_t *emu, uintptr_t fnc); +void iFppLpiippp(x64emu_t *emu, uintptr_t fnc); void iFpppiiipip(x64emu_t *emu, uintptr_t fnc); void iFpppiiuuii(x64emu_t *emu, uintptr_t fnc); void iFpppiipiiu(x64emu_t *emu, uintptr_t fnc); void iFppppppppu(x64emu_t *emu, uintptr_t fnc); void iFppppppppp(x64emu_t *emu, uintptr_t fnc); +void uFEipippppp(x64emu_t *emu, uintptr_t fnc); void uFppppppppp(x64emu_t *emu, uintptr_t fnc); +void LFEppppppii(x64emu_t *emu, uintptr_t fnc); void pFEppiiuuLi(x64emu_t *emu, uintptr_t fnc); void pFEppuippuu(x64emu_t *emu, uintptr_t fnc); +void pFEpppppiiV(x64emu_t *emu, uintptr_t fnc); +void pFEpppppppi(x64emu_t *emu, uintptr_t fnc); void pFpiiiiuuuu(x64emu_t *emu, uintptr_t fnc); void pFpCuWCCuuu(x64emu_t *emu, uintptr_t fnc); void pFpuuwwWWww(x64emu_t *emu, uintptr_t fnc); @@ -1438,7 +1710,12 @@ void pFpupuuuuup(x64emu_t *emu, uintptr_t fnc); void pFppiiiiiip(x64emu_t *emu, uintptr_t fnc); void pFppiiuuuLL(x64emu_t *emu, uintptr_t fnc); void pFppipppppp(x64emu_t *emu, uintptr_t fnc); +void pFpppiiiiii(x64emu_t *emu, uintptr_t fnc); +void pFpppiipppp(x64emu_t *emu, uintptr_t fnc); void pFpppppiipp(x64emu_t *emu, uintptr_t fnc); +void vFEiippppppp(x64emu_t *emu, uintptr_t fnc); +void vFEpippppppp(x64emu_t *emu, uintptr_t fnc); +void vFEpppiipppp(x64emu_t *emu, uintptr_t fnc); void vFiiiiiiiiiu(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiiii(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiill(x64emu_t *emu, uintptr_t fnc); @@ -1456,6 +1733,12 @@ void vFuuuuuuuuuu(x64emu_t *emu, uintptr_t fnc); void vFuffiiffiip(x64emu_t *emu, uintptr_t fnc); void vFuddiiddiip(x64emu_t *emu, uintptr_t fnc); void vFffffffffff(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiipip(x64emu_t *emu, uintptr_t fnc); +void vFppiipppiip(x64emu_t *emu, uintptr_t fnc); +void vFppiippppii(x64emu_t *emu, uintptr_t fnc); +void vFppipppiiii(x64emu_t *emu, uintptr_t fnc); +void vFppuuuuiiuu(x64emu_t *emu, uintptr_t fnc); void vFppdddddddd(x64emu_t *emu, uintptr_t fnc); void vFpppppppppp(x64emu_t *emu, uintptr_t fnc); void iFEpupppLppL(x64emu_t *emu, uintptr_t fnc); @@ -1467,8 +1750,12 @@ void iFpddpippppp(x64emu_t *emu, uintptr_t fnc); void iFppuuiiiiii(x64emu_t *emu, uintptr_t fnc); void iFppuuiiuupi(x64emu_t *emu, uintptr_t fnc); void iFpppiiipipi(x64emu_t *emu, uintptr_t fnc); +void iFpppLLipppp(x64emu_t *emu, uintptr_t fnc); void iFppppiiuuii(x64emu_t *emu, uintptr_t fnc); void uFpppppppppp(x64emu_t *emu, uintptr_t fnc); +void pFEiippppppp(x64emu_t *emu, uintptr_t fnc); +void pFEpiiiiiipp(x64emu_t *emu, uintptr_t fnc); +void pFEpippppppp(x64emu_t *emu, uintptr_t fnc); void pFpCuWCCuuCW(x64emu_t *emu, uintptr_t fnc); void pFpuwwWWuCuu(x64emu_t *emu, uintptr_t fnc); void pFpuuuwwwwWW(x64emu_t *emu, uintptr_t fnc); @@ -1490,12 +1777,27 @@ void vFuuddiiddiip(x64emu_t *emu, uintptr_t fnc); void vFuffffffffff(x64emu_t *emu, uintptr_t fnc); void vFpipipiipiii(x64emu_t *emu, uintptr_t fnc); void vFpipppiiiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiipiii(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiddddi(x64emu_t *emu, uintptr_t fnc); +void vFppiipppiiii(x64emu_t *emu, uintptr_t fnc); +void vFppipppiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppipppuiiii(x64emu_t *emu, uintptr_t fnc); +void vFppppppppppp(x64emu_t *emu, uintptr_t fnc); +void iFEpppipppppp(x64emu_t *emu, uintptr_t fnc); void iFEppppiiiiuu(x64emu_t *emu, uintptr_t fnc); void iFiiiiiiiiiip(x64emu_t *emu, uintptr_t fnc); void iFppppiiuuiiL(x64emu_t *emu, uintptr_t fnc); +void uFEpiiupppiuV(x64emu_t *emu, uintptr_t fnc); +void uFEpiippppiup(x64emu_t *emu, uintptr_t fnc); +void uFEpiippppiuA(x64emu_t *emu, uintptr_t fnc); +void uFEppppppippp(x64emu_t *emu, uintptr_t fnc); void uFppppppppppp(x64emu_t *emu, uintptr_t fnc); +void pFEpipppppppi(x64emu_t *emu, uintptr_t fnc); void pFEppiiLpppip(x64emu_t *emu, uintptr_t fnc); void pFEppuiipuuii(x64emu_t *emu, uintptr_t fnc); +void pFpppppppiipp(x64emu_t *emu, uintptr_t fnc); +void pFppppppppppp(x64emu_t *emu, uintptr_t fnc); void vFuiiiillliilp(x64emu_t *emu, uintptr_t fnc); void vFuuiiiiiiiiui(x64emu_t *emu, uintptr_t fnc); void vFuuiiiiiiiuip(x64emu_t *emu, uintptr_t fnc); @@ -1504,7 +1806,12 @@ void vFuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fnc); void vFffffffffffff(x64emu_t *emu, uintptr_t fnc); void vFpipppiiiipii(x64emu_t *emu, uintptr_t fnc); void vFpippppiiiipi(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiddddii(x64emu_t *emu, uintptr_t fnc); void vFppiiuuuiupup(x64emu_t *emu, uintptr_t fnc); +void vFppiipppiiiii(x64emu_t *emu, uintptr_t fnc); +void vFpppiiiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFpppppppppppp(x64emu_t *emu, uintptr_t fnc); +void iFEpppippppppp(x64emu_t *emu, uintptr_t fnc); void iFEppppiiiiuui(x64emu_t *emu, uintptr_t fnc); void iFpipllipppppp(x64emu_t *emu, uintptr_t fnc); void iFpipppppppppp(x64emu_t *emu, uintptr_t fnc); @@ -1516,9 +1823,14 @@ void pFpCuuWWwwCCup(x64emu_t *emu, uintptr_t fnc); void pFpuuuWWWWWWWW(x64emu_t *emu, uintptr_t fnc); void pFppiiuuuiupLp(x64emu_t *emu, uintptr_t fnc); void pFpppppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFEpppppppiippp(x64emu_t *emu, uintptr_t fnc); void vFuiiiiiiiiiuup(x64emu_t *emu, uintptr_t fnc); void vFuuuuuuuuuuuuu(x64emu_t *emu, uintptr_t fnc); void vFuffffffffffff(x64emu_t *emu, uintptr_t fnc); +void vFpippppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppiipppiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFppppppppppppp(x64emu_t *emu, uintptr_t fnc); void iFddddpppddpppp(x64emu_t *emu, uintptr_t fnc); void iFpippuuuiipppp(x64emu_t *emu, uintptr_t fnc); void iFpupiiiipppppp(x64emu_t *emu, uintptr_t fnc); @@ -1528,25 +1840,40 @@ void pFpuupppwwwwWWC(x64emu_t *emu, uintptr_t fnc); void pFppppppppppppp(x64emu_t *emu, uintptr_t fnc); void vFuffiiffiiffiip(x64emu_t *emu, uintptr_t fnc); void vFuddiiddiiddiip(x64emu_t *emu, uintptr_t fnc); +void vFppiipppiiiiiii(x64emu_t *emu, uintptr_t fnc); +void iFpipppppppppppp(x64emu_t *emu, uintptr_t fnc); void vFuuiiiiuuiiiiiii(x64emu_t *emu, uintptr_t fnc); void vFfffffffffffffff(x64emu_t *emu, uintptr_t fnc); +void vFpppippppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFppppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void pFpuiippppppppppp(x64emu_t *emu, uintptr_t fnc); +void pFppipppppppppppp(x64emu_t *emu, uintptr_t fnc); void pFppppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFpppppppppppppppp(x64emu_t *emu, uintptr_t fnc); void iFpppppppppppppppp(x64emu_t *emu, uintptr_t fnc); void pFpuuWWWWWWwwCCCuu(x64emu_t *emu, uintptr_t fnc); +void pFppipipipipipipip(x64emu_t *emu, uintptr_t fnc); void pFpppppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFppiiiiddddiiiiiuu(x64emu_t *emu, uintptr_t fnc); +void pFppippipipipipipip(x64emu_t *emu, uintptr_t fnc); void vFppuiiiiipuiiiiiiii(x64emu_t *emu, uintptr_t fnc); +void vFpppipppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void pFippppppppppppppppp(x64emu_t *emu, uintptr_t fnc); +void vFpiiiiiiiiiiiiiiiiii(x64emu_t *emu, uintptr_t fnc); void pFiiiippppppppppppppp(x64emu_t *emu, uintptr_t fnc); void pFpippppppppppppppppp(x64emu_t *emu, uintptr_t fnc); void pFipppppppppppppppppppppp(x64emu_t *emu, uintptr_t fnc); #if defined(HAVE_LD80BITS) void DFD(x64emu_t *emu, uintptr_t fnc); +void vFppippDDC(x64emu_t *emu, uintptr_t fnc); #endif #if !defined(HAVE_LD80BITS) void KFK(x64emu_t *emu, uintptr_t fnc); void KFKK(x64emu_t *emu, uintptr_t fnc); void KFKp(x64emu_t *emu, uintptr_t fnc); +void vFppippKKC(x64emu_t *emu, uintptr_t fnc); #endif #if defined(NOALIGN) diff --git a/src/wrapped/wrappeddbusglib1.c b/src/wrapped/wrappeddbusglib1.c new file mode 100755 index 00000000..840a4469 --- /dev/null +++ b/src/wrapped/wrappeddbusglib1.c @@ -0,0 +1,287 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "callback.h" + +const char* dbusglib1Name = "libdbus-glib-1.so.2"; +#define LIBNAME dbusglib1 + +typedef void (*vFppp_t)(void*, void*, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef void (*vFppppp_t)(void*, void*, void*, void*, void*); +typedef void*(*pFpppppiV_t)(void*, void*, void*, void*, void*, int, ...); +typedef void*(*pFpppppiiV_t)(void*, void*, void*, void*, void*, int, int, ...); + +#define SUPER() \ + GO(dbus_g_type_collection_value_iterate, vFppp_t) \ + GO(dbus_g_type_map_value_iterate, vFppp_t) \ + GO(dbus_g_proxy_begin_call, pFpppppiV_t) \ + GO(dbus_g_proxy_begin_call_with_timeout, pFpppppiiV_t) \ + GO(dbus_g_proxy_connect_signal, vFppppp_t) \ + GO(dbus_g_proxy_disconnect_signal, vFpppp_t) + +typedef struct dbusglib1_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} dbusglib1_my_t; + +static void* getDBusGLib1My(library_t* lib) +{ + dbusglib1_my_t* my = (dbusglib1_my_t*)calloc(1, sizeof(dbusglib1_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +static void freeDBusGLib1My(void* lib) +{ + //dbusglib1_my_t *my = (dbusglib1_my_t *)lib; +} + +#define SUPER() \ + GO(0) \ + GO(1) \ + GO(2) \ + GO(3) + +// GDestroyNotify +#define GO(A) \ +static uintptr_t my_GDestroyNotify_fct_##A = 0; \ +static void my_GDestroyNotify_##A(void* data) \ +{ \ + RunFunction(my_context, my_GDestroyNotify_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findGDestroyNotifyFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDestroyNotify_fct_##A == (uintptr_t)fct) return my_GDestroyNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDestroyNotify_fct_##A == 0) {my_GDestroyNotify_fct_##A = (uintptr_t)fct; return my_GDestroyNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 GDestroyNotify callback\n"); + return NULL; +} + +// GClosureNotify +#define GO(A) \ +static uintptr_t my_GClosureNotify_fct_##A = 0; \ +static void my_GClosureNotify_##A(void* data, void* closure) \ +{ \ + RunFunction(my_context, my_GClosureNotify_fct_##A, 2, data, closure);\ +} +SUPER() +#undef GO +static void* findGClosureNotifyFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GClosureNotify_fct_##A == (uintptr_t)fct) return my_GClosureNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_GClosureNotify_fct_##A == 0) {my_GClosureNotify_fct_##A = (uintptr_t)fct; return my_GClosureNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 GClosureNotify callback\n"); + return NULL; +} + +// DBusGProxyCallNotify +#define GO(A) \ +static uintptr_t my_DBusGProxyCallNotify_fct_##A = 0; \ +static void my_DBusGProxyCallNotify_##A(void* proxy, void* call_id, void* data) \ +{ \ + RunFunction(my_context, my_DBusGProxyCallNotify_fct_##A, 3, proxy, call_id, data);\ +} +SUPER() +#undef GO +static void* findDBusGProxyCallNotifyFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_DBusGProxyCallNotify_fct_##A == (uintptr_t)fct) return my_DBusGProxyCallNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_DBusGProxyCallNotify_fct_##A == 0) {my_DBusGProxyCallNotify_fct_##A = (uintptr_t)fct; return my_DBusGProxyCallNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 DBusGProxyCallNotify callback\n"); + return NULL; +} + +// GCallback +#define GO(A) \ +static uintptr_t my_GCallback_fct_##A = 0; \ +static void my_GCallback_##A(void* a, void* b, void* c, void* d) \ +{ \ + RunFunction(my_context, my_GCallback_fct_##A, 4, a, b, c, d);\ +} +SUPER() +#undef GO +static void* findGCallbackFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCallback_fct_##A == (uintptr_t)fct) return my_GCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCallback_fct_##A == 0) {my_GCallback_fct_##A = (uintptr_t)fct; return my_GCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 GCallback callback\n"); + return NULL; +} + +// DBusGTypeSpecializedCollectionIterator +#define GO(A) \ +static uintptr_t my_DBusGTypeSpecializedCollectionIterator_fct_##A = 0; \ +static void my_DBusGTypeSpecializedCollectionIterator_##A(void* a, void* b) \ +{ \ + RunFunction(my_context, my_DBusGTypeSpecializedCollectionIterator_fct_##A, 2, a, b); \ +} +SUPER() +#undef GO +static void* findDBusGTypeSpecializedCollectionIteratorFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_DBusGTypeSpecializedCollectionIterator_fct_##A == (uintptr_t)fct) return my_DBusGTypeSpecializedCollectionIterator_##A; + SUPER() + #undef GO + #define GO(A) if(my_DBusGTypeSpecializedCollectionIterator_fct_##A == 0) {my_DBusGTypeSpecializedCollectionIterator_fct_##A = (uintptr_t)fct; return my_DBusGTypeSpecializedCollectionIterator_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 DBusGTypeSpecializedCollectionIterator callback\n"); + return NULL; +} +// DBusGTypeSpecializedMapIterator +#define GO(A) \ +static uintptr_t my_DBusGTypeSpecializedMapIterator_fct_##A = 0; \ +static void my_DBusGTypeSpecializedMapIterator_##A(void* a, void* b, void* c) \ +{ \ + RunFunction(my_context, my_DBusGTypeSpecializedMapIterator_fct_##A, 3, a, b, c); \ +} +SUPER() +#undef GO +static void* findDBusGTypeSpecializedMapIteratorFct(void* fct) +{ + if(!fct) return NULL; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_DBusGTypeSpecializedMapIterator_fct_##A == (uintptr_t)fct) return my_DBusGTypeSpecializedMapIterator_##A; + SUPER() + #undef GO + #define GO(A) if(my_DBusGTypeSpecializedMapIterator_fct_##A == 0) {my_DBusGTypeSpecializedMapIterator_fct_##A = (uintptr_t)fct; return my_DBusGTypeSpecializedMapIterator_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for dbus-glib1 DBusGTypeSpecializedCollectionIterator callback\n"); + return NULL; +} +#undef SUPER + +EXPORT void my_dbus_g_type_collection_value_iterate(x64emu_t* emu, void* value, void* cb, void* data) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + my->dbus_g_type_collection_value_iterate(value, findDBusGTypeSpecializedCollectionIteratorFct(cb), data); +} + +EXPORT void my_dbus_g_type_map_value_iterate(x64emu_t* emu, void* value, void* cb, void* data) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + my->dbus_g_type_map_value_iterate(value, findDBusGTypeSpecializedMapIteratorFct(cb), data); +} + +EXPORT void* my_dbus_g_proxy_begin_call(x64emu_t* emu, void* proxy, void* method, void* notify, void* data, void* destroy, int first, int64_t* next) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + int narg = 0; + if(first) + while(next[narg]) ++narg; + void* n = findDBusGProxyCallNotifyFct(notify); + void* d = findGDestroyNotifyFct(destroy); + switch (narg) { + case 0: return my->dbus_g_proxy_begin_call(proxy, method, n, data, d, first, 0); // just in case + case 1: return my->dbus_g_proxy_begin_call(proxy, method, n, data, d, first, next[0], 0); + case 2: return my->dbus_g_proxy_begin_call(proxy, method, n, data, d, first, next[0], next[1], 0); + default: printf_log(LOG_NONE, "Warning, no dbus-glib1 dbus_g_proxy_begin_call wrapper for %d args\n", narg); + } + return NULL; // faillure +} + +EXPORT void* my_dbus_g_proxy_begin_call_with_timeout(x64emu_t* emu, void* proxy, void* method, void* notify, void* data, void* destroy, int timeout, int first, int64_t* next) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + int narg = 0; + if(first) + while(next[narg]) ++narg; + void* n = findDBusGProxyCallNotifyFct(notify); + void* d = findGDestroyNotifyFct(destroy); + switch (narg) { + case 0: return my->dbus_g_proxy_begin_call_with_timeout(proxy, method, n, data, d, timeout, first, 0); // just in case + case 1: return my->dbus_g_proxy_begin_call_with_timeout(proxy, method, n, data, d, timeout, first, next[0], 0); + case 2: return my->dbus_g_proxy_begin_call_with_timeout(proxy, method, n, data, d, timeout, first, next[0], next[1], 0); + default: printf_log(LOG_NONE, "Warning, no dbus-glib1 dbus_g_proxy_begin_call_with_timeout wrapper for %d args\n", narg); + } + return NULL; // faillure +} + +EXPORT void my_dbus_g_proxy_connect_signal(x64emu_t* emu, void* proxy, void* name, void* handler, void* data, void* free_fnc) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + my->dbus_g_proxy_connect_signal(proxy, name, findGCallbackFct(handler), data, findGClosureNotifyFct(free_fnc)); +} + +EXPORT void my_dbus_g_proxy_disconnect_signal(x64emu_t* emu, void* proxy, void* name, void* handler, void* data) +{ + library_t * lib = GetLibInternal(dbusglib1Name); + dbusglib1_my_t *my = (dbusglib1_my_t*)lib->priv.w.p2; + + my->dbus_g_proxy_disconnect_signal(proxy, name, findGCallbackFct(handler), data); +} + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + lib->priv.w.p2 = getDBusGLib1My(lib); + +#define CUSTOM_FINI \ + freeDBusGLib1My(lib->priv.w.p2);\ + free(lib->priv.w.p2); + + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappeddbusglib1_private.h b/src/wrapped/wrappeddbusglib1_private.h new file mode 100755 index 00000000..9485f428 --- /dev/null +++ b/src/wrapped/wrappeddbusglib1_private.h @@ -0,0 +1,94 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error Meh.... +#endif + +GO(dbus_connection_get_g_connection, pFp) +GO(dbus_connection_get_g_type, iFv) +GO(dbus_connection_setup_with_g_main, vFpp) +GO(dbus_g_bus_get, pFip) +GO(dbus_g_bus_get_private, pFipp) +GO(dbus_g_connection_flush, vFp) +GO(dbus_g_connection_get_connection, pFp) +GO(dbus_g_connection_get_g_type, iFv) +GO(dbus_g_connection_lookup_g_object, pFpp) +GO(dbus_g_connection_open, pFpp) +GO(dbus_g_connection_ref, pFp) +GO(dbus_g_connection_register_g_object, vFppp) +GO(dbus_g_connection_unref, vFp) +GO(dbus_g_connection_unregister_g_object, vFpp) +GO(dbus_g_error_domain_register, vFppi) +GO(dbus_g_error_get_name, pFp) +GO(dbus_g_error_has_name, iFpp) +GO(dbus_g_error_quark, pFv) +//GO(dbus_glib_internal_do_not_use_run_tests, +GO(dbus_g_message_get_g_type, iFv) +//GO(dbus_g_message_get_message, +//GO(dbus_g_message_ref, +//GO(dbus_g_message_unref, +GO(dbus_g_method_get_reply, pFp) +GO(dbus_g_method_get_sender, pFp) +//GO(dbus_g_method_return, vFppppppppppp) //vaarg +GO(dbus_g_method_return_error, vFpp) +GO(dbus_g_method_send_reply, vFpp) +GO(dbus_g_object_path_get_g_type, iFv) +//GO(dbus_g_object_register_marshaller, vFpipppppppp) //vaarg, should remap with dbus_g_object_register_marshaller_array +GO(dbus_g_object_register_marshaller_array, vFpiup) +GO(dbus_g_object_type_install_info, vFip) // p is DBusGObjectInfo *, that struct contains a GCallback... should wrap? +GO(dbus_g_object_type_register_shadow_property, vFipp) +//GO(dbus_g_proxy_add_signal, vFppipppppppp) //vaarg +GOM(dbus_g_proxy_begin_call, pFEpppppiV) +GOM(dbus_g_proxy_begin_call_with_timeout, pFEpppppiiV) +//GO(dbus_g_proxy_call, iFpppippppppppppppp) //vaarg +//GO(dbus_g_proxy_call_no_reply, vFppipppppppppppp) //vaarg +//GO(dbus_g_proxy_call_with_timeout, iFppipipppppppppppp) //vaarg +GO(dbus_g_proxy_cancel_call, vFpp) +GOM(dbus_g_proxy_connect_signal, vFEppppp) +GOM(dbus_g_proxy_disconnect_signal, vFEpppp) +//GO(dbus_g_proxy_end_call, iFpppippppppppppppppp) //vaarg +GO(dbus_g_proxy_get_bus_name, pFp) +GO(dbus_g_proxy_get_interface, pFp) +GO(dbus_g_proxy_get_path, pFp) +GO(dbus_g_proxy_get_type, iFv) +GO(dbus_g_proxy_new_for_name, pFpppp) +GO(dbus_g_proxy_new_for_name_owner, pFppppp) +GO(dbus_g_proxy_new_for_peer, pFppp) +GO(dbus_g_proxy_new_from_proxy, pFppp) +GO(dbus_g_proxy_send, vFppp) +GO(dbus_g_proxy_set_default_timeout, vFpi) +GO(dbus_g_proxy_set_interface, vFpp) +GO(dbus_g_signature_get_g_type, iFv) +GO(dbus_g_thread_init, vFv) +GO(dbus_g_type_collection_get_fixed, iFppp) +//GO(dbus_g_type_collection_peek_vtable, +GOM(dbus_g_type_collection_value_iterate, vFEppp) +GO(dbus_g_type_get_collection, iFpi) +GO(dbus_g_type_get_collection_specialization, iFi) +GO(dbus_g_type_get_map, iFpii) +GO(dbus_g_type_get_map_key_specialization, iFi) +GO(dbus_g_type_get_map_value_specialization, iFi) +//GO(dbus_g_type_get_struct, iFpippppppppppp) //vaarg, should wrap and use dbus_g_type_get_structv +GO(dbus_g_type_get_struct_member_type, iFiu) +GO(dbus_g_type_get_struct_size, uFi) +GO(dbus_g_type_get_structv, iFpup) +GO(dbus_g_type_is_collection, iFi) +GO(dbus_g_type_is_map, iFi) +GO(dbus_g_type_is_struct, iFi) +//GO(dbus_g_type_map_peek_vtable, +GOM(dbus_g_type_map_value_iterate, vFEppp) +//GO(dbus_g_type_register_collection, +//GO(dbus_g_type_register_map, +//GO(dbus_g_type_register_struct, +GO(dbus_g_type_specialized_collection_append, vFpp) +GO(dbus_g_type_specialized_collection_end_append, vFp) +GO(dbus_g_type_specialized_construct, pFi) +GO(dbus_g_type_specialized_init, vFv) +GO(dbus_g_type_specialized_init_append, vFpp) +GO(dbus_g_type_specialized_map_append, vFppp) +//GO(dbus_g_type_struct_get, iFpuppppppppppp) //vaarg +GO(dbus_g_type_struct_get_member, iFpup) +//GO(dbus_g_type_struct_peek_vtable, +//GO(dbus_g_type_struct_set, iFpupppppppppppp) //vaarg +GO(dbus_g_type_struct_set_member, iFpup) +GO(dbus_message_get_g_type, iFv) +GO(dbus_server_setup_with_g_main, vFpp) +GO(dbus_set_g_error, vFpp) diff --git a/src/wrapped/wrappedgconf2.c b/src/wrapped/wrappedgconf2.c new file mode 100644 index 00000000..59f47d98 --- /dev/null +++ b/src/wrapped/wrappedgconf2.c @@ -0,0 +1,31 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "myalign.h" +#include "gtkclass.h" + +const char* gconf2Name = "libgconf-2.so.4"; +#define LIBNAME gconf2 + + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappedgconf2_private.h b/src/wrapped/wrappedgconf2_private.h new file mode 100644 index 00000000..7b2cbac0 --- /dev/null +++ b/src/wrapped/wrappedgconf2_private.h @@ -0,0 +1,321 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(gconf_address_backend, +//GO(gconf_address_flags, +//GO(gconf_address_list_free, +//GO(gconf_address_list_get_persistent_name, +//GO(gconf_address_resource, +//GO(gconf_backend_file, +//GO(gconf_backend_ref, +//GO(gconf_backend_resolve_address, +//GO(gconf_backend_unref, +//GO(gconf_blow_away_locks, +//GO(gconf_change_set_check_value, +//GO(gconf_change_set_clear, +//GO(gconf_change_set_foreach, +//GO(gconf_change_set_get_type, +//GO(gconf_change_set_get_user_data, +//GO(gconf_change_set_new, +//GO(gconf_change_set_ref, +//GO(gconf_change_set_remove, +//GO(gconf_change_set_set, +//GO(gconf_change_set_set_bool, +//GO(gconf_change_set_set_float, +//GO(gconf_change_set_set_int, +//GO(gconf_change_set_set_list, +//GO(gconf_change_set_set_nocopy, +//GO(gconf_change_set_set_pair, +//GO(gconf_change_set_set_schema, +//GO(gconf_change_set_set_string, +//GO(gconf_change_set_set_user_data, +//GO(gconf_change_set_size, +//GO(gconf_change_set_unref, +//GO(gconf_change_set_unset, +//GO(gconf_clear_cache, +//GO(gconf_client_add_dir, +//GO(gconf_client_all_dirs, +//GO(gconf_client_all_entries, +//GO(gconf_client_change_set_from_current, +//GO(gconf_client_change_set_from_currentv, +//GO(gconf_client_clear_cache, +//GO(gconf_client_commit_change_set, +//GO(gconf_client_dir_exists, +//GO(gconf_client_error, +//GO(gconf_client_error_handling_mode_get_type, +//GO(gconf_client_get, +//GO(gconf_client_get_bool, +//GO(gconf_client_get_default, +//GO(gconf_client_get_default_from_schema, +//GO(gconf_client_get_entry, +//GO(gconf_client_get_float, +//GO(gconf_client_get_for_engine, +//GO(gconf_client_get_int, +//GO(gconf_client_get_list, +//GO(gconf_client_get_pair, +//GO(gconf_client_get_schema, +//GO(gconf_client_get_string, +//GO(gconf_client_get_type, +//GO(gconf_client_get_without_default, +//GO(gconf_client_key_is_writable, +//GO(gconf_client_notify, +//GO(gconf_client_notify_add, +//GO(gconf_client_notify_remove, +//GO(gconf_client_preload, +//GO(gconf_client_preload_type_get_type, +//GO(gconf_client_recursive_unset, +//GO(gconf_client_remove_dir, +//GO(gconf_client_reverse_change_set, +//GO(gconf_client_set, +//GO(gconf_client_set_bool, +//GO(gconf_client_set_error_handling, +//GO(gconf_client_set_float, +//GO(gconf_client_set_global_default_error_handler, +//GO(gconf_client_set_int, +//GO(gconf_client_set_list, +//GO(gconf_client_set_pair, +//GO(gconf_client_set_schema, +//GO(gconf_client_set_string, +//GO(gconf_client_suggest_sync, +//GO(gconf_client_unreturned_error, +//GO(gconf_client_unset, +//GO(gconf_client_value_changed, +//GO(gconf_compose_errors, +//GO(gconf_concat_dir_and_key, +//GO(gconf_current_locale, +//GO(gconf_dbus_utils_append_entries, +//GO(gconf_dbus_utils_append_entry_values, +//GO(gconf_dbus_utils_append_value, +//GO(gconf_dbus_utils_get_entries, +//GO(gconf_dbus_utils_get_entry_values, +//GO(gconf_dbus_utils_get_value, +//GO(gconf_debug_shutdown, +//GO(gconf_double_to_string, +//GO(gconf_engine_all_dirs, +//GO(gconf_engine_all_entries, +//GO(gconf_engine_associate_schema, +//GO(gconf_engine_change_set_from_current, +//GO(gconf_engine_change_set_from_currentv, +//GO(gconf_engine_commit_change_set, +//GO(gconf_engine_dir_exists, +//GO(gconf_engine_get, +//GO(gconf_engine_get_bool, +//GO(gconf_engine_get_default, +//GO(gconf_engine_get_default_from_schema, +//GO(gconf_engine_get_entry, +//GO(gconf_engine_get_float, +//GO(gconf_engine_get_for_address, +//GO(gconf_engine_get_for_addresses, +//GO(gconf_engine_get_full, +//GO(gconf_engine_get_fuller, +//GO(gconf_engine_get_int, +//GO(gconf_engine_get_list, +//GO(gconf_engine_get_local, +//GO(gconf_engine_get_local_for_addresses, +//GO(gconf_engine_get_pair, +//GO(gconf_engine_get_schema, +//GO(gconf_engine_get_string, +//GO(gconf_engine_get_user_data, +//GO(gconf_engine_get_with_locale, +//GO(gconf_engine_get_without_default, +//GO(gconf_engine_key_is_writable, +//GO(gconf_engine_notify_add, +//GO(gconf_engine_notify_remove, +//GO(gconf_engine_pop_owner_usage, +//GO(gconf_engine_push_owner_usage, +//GO(gconf_engine_recursive_unset, +//GO(gconf_engine_ref, +//GO(gconf_engine_remove_dir, +//GO(gconf_engine_reverse_change_set, +//GO(gconf_engine_set, +//GO(gconf_engine_set_bool, +//GO(gconf_engine_set_float, +//GO(gconf_engine_set_int, +//GO(gconf_engine_set_list, +//GO(gconf_engine_set_owner, +//GO(gconf_engine_set_pair, +//GO(gconf_engine_set_schema, +//GO(gconf_engine_set_string, +//GO(gconf_engine_set_user_data, +//GO(gconf_engine_suggest_sync, +//GO(gconf_engine_unref, +//GO(gconf_engine_unset, +//GO(gconf_entry_copy, +//GO(gconf_entry_equal, +//GO(gconf_entry_free, +//GO(gconf_entry_get_is_default, +//GO(gconf_entry_get_is_writable, +//GO(gconf_entry_get_key, +//GO(gconf_entry_get_schema_name, +//GO(gconf_entry_get_type, +//GO(gconf_entry_get_value, +//GO(gconf_entry_new, +//GO(gconf_entry_new_nocopy, +//GO(gconf_entry_ref, +//GO(gconf_entry_set_is_default, +//GO(gconf_entry_set_is_writable, +//GO(gconf_entry_set_schema_name, +//GO(gconf_entry_set_value, +//GO(gconf_entry_set_value_nocopy, +//GO(gconf_entry_steal_value, +//GO(gconf_entry_unref, +//GO(gconf_enum_to_string, +//GO(gconf_error_get_type, +//GO(gconf_error_new, +//GO(gconf_error_quark, +//GO(gconf_escape_key, +//GO(gconf_get_backend, +//GO(gconf_get_daemon_ior, +//GO(gconf_in_daemon_mode, +//GO(gconf_init, +//GO(_gconf_init_i18n, +//GO(gconf_is_initialized, +//GO(gconf_key_check, +//GO(gconf_key_directory, +//GO(gconf_key_is_below, +//GO(gconf_key_key, +//GO(gconf_listeners_add, +//GO(gconf_listeners_count, +//GO(gconf_listeners_foreach, +//GO(gconf_listeners_free, +//GO(gconf_listeners_get_data, +//GO(gconf_listeners_new, +//GO(gconf_listeners_notify, +//GO(gconf_listeners_remove, +//GO(gconf_listeners_remove_if, +//GO(gconf_load_source_path, +//GO(gconf_locale_cache_expire, +//GO(gconf_locale_cache_free, +//GO(gconf_locale_cache_get_list, +//GO(gconf_locale_cache_new, +//GO(gconf_locale_list_ref, +//GO(gconf_locale_list_unref, +//GO(gconf_log, +//DATAB(gconf_log_debug_messages, +//GO(gconf_marshal_VOID__STRING_POINTER, +//GO(gconf_meta_info_free, +//GO(gconf_meta_info_get_mod_user, +//GO(gconf_meta_info_get_schema, +//GO(gconf_meta_info_mod_time, +//GO(gconf_meta_info_new, +//GO(gconf_meta_info_set_mod_time, +//GO(gconf_meta_info_set_mod_user, +//GO(gconf_meta_info_set_schema, +//DATAB(gconf_options, +//GO(gconf_persistent_name_get_address_list, +//GO(gconf_ping_daemon, +//GO(gconf_postinit, +//GO(gconf_preinit, +//GO(gconf_quote_string, +//GO(gconf_resolve_address, +//GO(gconf_schema_copy, +//GO(gconf_schema_free, +//GO(gconf_schema_get_car_type, +//GO(gconf_schema_get_cdr_type, +//GO(gconf_schema_get_default_value, +//GO(gconf_schema_get_gettext_domain, +//GO(gconf_schema_get_list_type, +//GO(gconf_schema_get_locale, +//GO(gconf_schema_get_long_desc, +//GO(gconf_schema_get_owner, +//GO(gconf_schema_get_short_desc, +//GO(gconf_schema_get_type, +//GO(gconf_schema_new, +//GO(gconf_schema_set_car_type, +//GO(gconf_schema_set_cdr_type, +//GO(gconf_schema_set_default_value, +//GO(gconf_schema_set_default_value_nocopy, +//GO(gconf_schema_set_gettext_domain, +//GO(gconf_schema_set_list_type, +//GO(gconf_schema_set_locale, +//GO(gconf_schema_set_long_desc, +//GO(gconf_schema_set_owner, +//GO(gconf_schema_set_short_desc, +//GO(gconf_schema_set_type, +//GO(gconf_schema_steal_default_value, +//GO(gconf_schema_validate, +//GO(gconf_set_daemon_ior, +//GO(gconf_set_daemon_mode, +//GO(gconf_set_error, +//GO(gconf_shutdown_daemon, +//GO(gconf_source_free, +//GO(gconf_sources_add_listener, +//GO(gconf_sources_all_dirs, +//GO(gconf_sources_all_entries, +//GO(gconf_sources_clear_cache, +//GO(gconf_sources_clear_cache_for_sources, +//GO(gconf_sources_dir_exists, +//GO(gconf_sources_free, +//GO(gconf_sources_is_affected, +//GO(gconf_sources_new_from_addresses, +//GO(gconf_sources_new_from_source, +//GO(gconf_sources_query_default_value, +//GO(gconf_sources_query_metainfo, +//GO(gconf_sources_query_value, +//GO(gconf_sources_recursive_unset, +//GO(gconf_sources_remove_dir, +//GO(gconf_sources_remove_listener, +//GO(gconf_sources_set_notify_func, +//GO(gconf_sources_set_schema, +//GO(gconf_sources_set_value, +//GO(gconf_sources_sync_all, +//GO(gconf_sources_unset_value, +//GO(gconf_spawn_daemon, +//GO(gconf_split_locale, +//GO(gconf_string_to_double, +//GO(gconf_string_to_enum, +//GO(gconf_string_to_gulong, +//GO(gconf_synchronous_sync, +//GO(gconf_unescape_key, +//GO(gconf_unique_key, +//GO(gconf_unquote_string, +//GO(gconf_unquote_string_inplace, +//GO(gconf_unset_flags_get_type, +//GO(gconf_use_local_locks, +//GO(gconf_valid_key, +//GO(gconf_value_compare, +//GO(gconf_value_copy, +//GO(gconf_value_decode, +//GO(gconf_value_encode, +//GO(gconf_value_free, +//GO(gconf_value_get_bool, +//GO(gconf_value_get_car, +//GO(gconf_value_get_cdr, +//GO(gconf_value_get_float, +//GO(gconf_value_get_int, +//GO(gconf_value_get_list, +//GO(gconf_value_get_list_type, +//GO(gconf_value_get_schema, +//GO(gconf_value_get_string, +//GO(gconf_value_get_type, +//GO(gconf_value_list_from_primitive_list, +//GO(gconf_value_list_to_primitive_list_destructive, +//GO(gconf_value_new, +//GO(gconf_value_new_from_string, +//GO(gconf_value_new_list_from_string, +//GO(gconf_value_new_pair_from_string, +//GO(gconf_value_pair_from_primitive_pair, +//GO(gconf_value_pair_to_primitive_pair_destructive, +//GO(gconf_value_set_bool, +//GO(gconf_value_set_car, +//GO(gconf_value_set_car_nocopy, +//GO(gconf_value_set_cdr, +//GO(gconf_value_set_cdr_nocopy, +//GO(gconf_value_set_float, +//GO(gconf_value_set_int, +//GO(gconf_value_set_list, +//GO(gconf_value_set_list_nocopy, +//GO(gconf_value_set_list_type, +//GO(gconf_value_set_schema, +//GO(gconf_value_set_schema_nocopy, +//GO(gconf_value_set_string, +//GO(gconf_value_set_string_nocopy, +//GO(gconf_value_steal_list, +//GO(gconf_value_steal_schema, +//GO(gconf_value_steal_string, +//GO(gconf_value_to_string, +//GO(gconf_value_type_from_string, +//GO(gconf_value_type_get_type, +//GO(gconf_value_type_to_string, +//GO(gconf_value_validate, diff --git a/src/wrapped/wrappedgdkpixbuf2.c b/src/wrapped/wrappedgdkpixbuf2.c new file mode 100755 index 00000000..fec5adcd --- /dev/null +++ b/src/wrapped/wrappedgdkpixbuf2.c @@ -0,0 +1,101 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" + +const char* gdkpixbuf2Name = "libgdk_pixbuf-2.0.so.0"; +#define LIBNAME gdkpixbuf2 + +typedef void* (*pFpiiiiiipp_t)(void*, int32_t, int32_t, int32_t, int32_t, int32_t, int32_t, void*, void*); + +#define SUPER() \ + GO(gdk_pixbuf_new_from_data, pFpiiiiiipp_t) + +typedef struct gdkpixbuf2_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gdkpixbuf2_my_t; + +void* getGdkpixbuf2My(library_t* lib) +{ + gdkpixbuf2_my_t* my = (gdkpixbuf2_my_t*)calloc(1, sizeof(gdkpixbuf2_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGdkpixbuf2My(void* lib) +{ + //gdkpixbuf2_my_t *my = (gdkpixbuf2_my_t *)lib; +} + +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) + +// destroy_pixbuf +#define GO(A) \ +static uintptr_t my_destroy_pixbuf_fct_##A = 0; \ +static void my_destroy_pixbuf_##A(void* pixels, void* data) \ +{ \ + RunFunction(my_context, my_destroy_pixbuf_fct_##A, 2, pixels, data); \ +} +SUPER() +#undef GO +static void* finddestroy_pixbufFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_destroy_pixbuf_fct_##A == (uintptr_t)fct) return my_destroy_pixbuf_##A; + SUPER() + #undef GO + #define GO(A) if(my_destroy_pixbuf_fct_##A == 0) {my_destroy_pixbuf_fct_##A = (uintptr_t)fct; return my_destroy_pixbuf_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gdk-pixbuf2 destroy_pixbuf callback\n"); + return NULL; +} + +#undef SUPER + +EXPORT void* my_gdk_pixbuf_new_from_data(x64emu_t* emu, void* data, int32_t colorspace, int32_t has_alpha, int32_t bpp, int32_t w, int32_t h, int32_t stride, void* destroy_func, void* destroy_data) +{ + library_t * lib = GetLibInternal(gdkpixbuf2Name); + gdkpixbuf2_my_t *my = (gdkpixbuf2_my_t*)lib->priv.w.p2; + + return my->gdk_pixbuf_new_from_data(data, colorspace, has_alpha, bpp, w, h, stride, finddestroy_pixbufFct(destroy_func), destroy_data); +} + + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + lib->priv.w.p2 = getGdkpixbuf2My(lib); + +#define CUSTOM_FINI \ + freeGdkpixbuf2My(lib->priv.w.p2); \ + free(lib->priv.w.p2); + +#include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedgdkpixbuf2_private.h b/src/wrapped/wrappedgdkpixbuf2_private.h new file mode 100755 index 00000000..3429a16e --- /dev/null +++ b/src/wrapped/wrappedgdkpixbuf2_private.h @@ -0,0 +1,121 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +GO(gdk_colorspace_get_type, iFv) +GO(gdk_interp_type_get_type, iFv) +GO(gdk_pixbuf_add_alpha, pFpiCCC) +GO(gdk_pixbuf_alpha_mode_get_type, iFv) +//GO(gdk_pixbuf_animation_get_height, +//GO(gdk_pixbuf_animation_get_iter, +//GO(gdk_pixbuf_animation_get_static_image, +//GO(gdk_pixbuf_animation_get_type, +//GO(gdk_pixbuf_animation_get_width, +//GO(gdk_pixbuf_animation_is_static_image, +//GO(gdk_pixbuf_animation_iter_advance, +//GO(gdk_pixbuf_animation_iter_get_delay_time, +//GO(gdk_pixbuf_animation_iter_get_pixbuf, +//GO(gdk_pixbuf_animation_iter_get_type, +//GO(gdk_pixbuf_animation_iter_on_currently_loading_frame, +//GO(gdk_pixbuf_animation_new_from_file, +//GO(gdk_pixbuf_animation_new_from_resource, +//GO(gdk_pixbuf_animation_new_from_stream, +//GO(gdk_pixbuf_animation_new_from_stream_async, +//GO(gdk_pixbuf_animation_new_from_stream_finish, +//GO(gdk_pixbuf_animation_ref, +//GO(gdk_pixbuf_animation_unref, +GO(gdk_pixbuf_apply_embedded_orientation, pFp) +GO(gdk_pixbuf_composite, vFppiiiiddddii) +GO(gdk_pixbuf_composite_color, vFppiiiiddddiiiiiuu) +GO(gdk_pixbuf_composite_color_simple, pFpiiiiiuu) +GO(gdk_pixbuf_copy, pFp) +GO(gdk_pixbuf_copy_area, vFpiiiipii) +GO(gdk_pixbuf_error_get_type, iFv) +GO(gdk_pixbuf_error_quark, pFv) +GO(gdk_pixbuf_fill, vFpu) +GO(gdk_pixbuf_flip, pFpi) +GO(gdk_pixbuf_format_copy, pFp) +GO(gdk_pixbuf_format_free, vFp) +GO(gdk_pixbuf_format_get_description, pFp) +GO(gdk_pixbuf_format_get_extensions, pFp) +GO(gdk_pixbuf_format_get_license, pFp) +GO(gdk_pixbuf_format_get_mime_types, pFp) +GO(gdk_pixbuf_format_get_name, pFp) +GO(gdk_pixbuf_format_get_type, iFv) +GO(gdk_pixbuf_format_is_disabled, iFp) +GO(gdk_pixbuf_format_is_scalable, iFp) +GO(gdk_pixbuf_format_is_writable, iFp) +GO(gdk_pixbuf_format_set_disabled, vFpi) +GO(gdk_pixbuf_from_pixdata, pFpip) +GO(gdk_pixbuf_get_bits_per_sample, iFp) +GO(gdk_pixbuf_get_byte_length, uFp) +GO(gdk_pixbuf_get_colorspace, uFp) +GO(gdk_pixbuf_get_file_info, pFppp) +GO(gdk_pixbuf_get_formats, pFv) +GO(gdk_pixbuf_get_has_alpha, iFp) +GO(gdk_pixbuf_get_height, iFp) +GO(gdk_pixbuf_get_n_channels, iFp) +GO(gdk_pixbuf_get_option, pFpp) +GO(gdk_pixbuf_get_pixels, pFp) +GO(gdk_pixbuf_get_pixels_with_length, pFpp) +GO(gdk_pixbuf_get_rowstride, iFp) +GO(gdk_pixbuf_gettext, pFp) +GO(gdk_pixbuf_get_type, iFv) +GO(gdk_pixbuf_get_width, iFp) +GO(gdk_pixbuf_loader_close, iFpp) +GO(gdk_pixbuf_loader_get_animation, pFp) +GO(gdk_pixbuf_loader_get_format, pFp) +GO(gdk_pixbuf_loader_get_pixbuf, pFp) +GO(gdk_pixbuf_loader_get_type, iFv) +GO(gdk_pixbuf_loader_new, pFv) +GO(gdk_pixbuf_loader_new_with_mime_type, pFpp) +GO(gdk_pixbuf_loader_new_with_type, pFpp) +GO(gdk_pixbuf_loader_set_size, vFpii) +GO(gdk_pixbuf_loader_write, iFppLp) +GO(gdk_pixbuf_loader_write_bytes, iFppp) +GO(gdk_pixbuf_new, pFiiiii) +GOM(gdk_pixbuf_new_from_data, pFEpiiiiiipp) +GO(gdk_pixbuf_new_from_file, pFpp) +GO(gdk_pixbuf_new_from_file_at_scale, pFpiiip) +GO(gdk_pixbuf_new_from_file_at_size, pFpiip) +GO(gdk_pixbuf_new_from_inline, pFipip) +GO(gdk_pixbuf_new_from_resource, pFpp) +GO(gdk_pixbuf_new_from_resource_at_scale, pFpiiip) +GO(gdk_pixbuf_new_from_stream, pFppp) +//GO(gdk_pixbuf_new_from_stream_async, +//GO(gdk_pixbuf_new_from_stream_at_scale, +//GO(gdk_pixbuf_new_from_stream_at_scale_async, +//GO(gdk_pixbuf_new_from_stream_finish, +GO(gdk_pixbuf_new_from_xpm_data, pFp) +GO(gdk_pixbuf_new_subpixbuf, pFpiiii) +//GO(gdk_pixbuf_non_anim_get_type, +//GO(gdk_pixbuf_non_anim_new, +GO(gdk_pixbuf_ref, pFp) +GO(gdk_pixbuf_rotate_simple, pFpi) +//GO(gdk_pixbuf_rotation_get_type, +GO(gdk_pixbuf_saturate_and_pixelate, vFppfi) +//GO(gdk_pixbuf_save, iFpppppppppppppp) //vaarg, wrap with gdk_pixbuf_save? +//GO(gdk_pixbuf_save_to_buffer, iFpppppppppppppp) //vaarg, wrap with gdk_pixbuf_save_to_bufferv ? +GO(gdk_pixbuf_save_to_bufferv, iFppppppp) +//GOM(gdk_pixbuf_save_to_callback, iFEpppppV) //wrap with gdk_pixbuf_save_to_callbackv +//GOM(gdk_pixbuf_save_to_callbackv, iFEppppppp) +//GO(gdk_pixbuf_save_to_stream, iFpppppppppppppp) //vaarg, but gdk_pixbuf_save_to_streamv is fairly recent +//GOM(gdk_pixbuf_save_to_stream_async, vFEppppppppppppppp) //vaarg, and gdk_pixbuf_save_to_streamv_async is fairly recent +GO(gdk_pixbuf_save_to_stream_finish, iFpp) +GO(gdk_pixbuf_savev, iFpppppp) +GO(gdk_pixbuf_scale, vFppiiiiddddi) +GO(gdk_pixbuf_scaled_anim_get_type, iFv) +GO(gdk_pixbuf_scaled_anim_iter_get_type, iFv) +GO(gdk_pixbuf_scale_simple, pFpiii) +GO(gdk_pixbuf_set_option, pFppp) +//GO(gdk_pixbuf_simple_anim_add_frame, +//GO(gdk_pixbuf_simple_anim_get_loop, +//GO(gdk_pixbuf_simple_anim_get_type, +//GO(gdk_pixbuf_simple_anim_iter_get_type, +//GO(gdk_pixbuf_simple_anim_new, +//GO(gdk_pixbuf_simple_anim_set_loop, +GO(gdk_pixbuf_unref, vFp) +GO(gdk_pixdata_deserialize, iFpupp) +GO(gdk_pixdata_from_pixbuf, pFppi) +GO(gdk_pixdata_serialize, pFpp) +GO(gdk_pixdata_to_csource, pFppi) diff --git a/src/wrapped/wrappedgdkx112.c b/src/wrapped/wrappedgdkx112.c new file mode 100755 index 00000000..abb87ca3 --- /dev/null +++ b/src/wrapped/wrappedgdkx112.c @@ -0,0 +1,193 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "gtkclass.h" + +const char* gdkx112Name = "libgdk-x11-2.0.so.0"; +#define LIBNAME gdkx112 + +static char* libname = NULL; + +char* getGDKX11LibName() {return libname;} + +typedef int (*iFpp_t) (void*, void*); +typedef void (*vFpp_t) (void*, void*); +typedef void (*vFppp_t) (void*, void*, void*); +typedef int (*iFiippp_t) (int, int, void*, void*, void*); + +#define SUPER() \ + GO(gdk_event_handler_set, vFppp_t) \ + GO(gdk_input_add_full, iFiippp_t) \ + GO(gdk_init, vFpp_t) \ + GO(gdk_init_check, iFpp_t) \ + GO(gdk_window_add_filter, vFppp_t) \ + GO(gdk_window_remove_filter, vFppp_t) + +typedef struct gdkx112_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gdkx112_my_t; + +void* getGdkX112My(library_t* lib) +{ + gdkx112_my_t* my = (gdkx112_my_t*)calloc(1, sizeof(gdkx112_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGdkX112My(void* lib) +{ + //gdkx112_my_t *my = (gdkx112_my_t *)lib; +} + +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) + +// GdkFilterFunc +#define GO(A) \ +static uintptr_t my_filter_fct_##A = 0; \ +static int my_filter_##A(void* xevent, void* event, void* data) \ +{ \ + return (int)RunFunction(my_context, my_filter_fct_##A, 3, xevent, event, data);\ +} +SUPER() +#undef GO +static void* findFilterFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_filter_fct_##A == (uintptr_t)fct) return my_filter_##A; + SUPER() + #undef GO + #define GO(A) if(my_filter_fct_##A == 0) {my_filter_fct_##A = (uintptr_t)fct; return my_filter_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GdkFilterFunc callback\n"); + return NULL; +} + + +static void my_event_handler(void* event, my_signal_t* sig) +{ + RunFunction(my_context, sig->c_handler, 2, event, sig->data); +} + +EXPORT void my_gdk_event_handler_set(x64emu_t* emu, void* func, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + if(!func) + return my->gdk_event_handler_set(func, data, notify); + + my_signal_t* sig = new_mysignal(func, data, notify); + my->gdk_event_handler_set(my_event_handler, sig, my_signal_delete); +} + + +static void my_input_function(my_signal_t* sig, int source, int condition) +{ + RunFunction(my_context, sig->c_handler, 3, sig->data, source, condition); +} + +EXPORT int my_gdk_input_add(x64emu_t* emu, int source, int condition, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + if(!f) + return my->gdk_input_add_full(source, condition, f, data, NULL); + + my_signal_t* sig = new_mysignal(f, data, NULL); + return my->gdk_input_add_full(source, condition, my_input_function, sig, my_signal_delete); +} + +EXPORT int my_gdk_input_add_full(x64emu_t* emu, int source, int condition, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + if(!f) + return my->gdk_input_add_full(source, condition, f, data, notify); + + my_signal_t* sig = new_mysignal(f, data, notify); + return my->gdk_input_add_full(source, condition, my_input_function, sig, my_signal_delete); +} + +EXPORT void my_gdk_init(x64emu_t* emu, void* argc, void* argv) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + my->gdk_init(argc, argv); + my_checkGlobalGdkDisplay(); +} + +EXPORT int my_gdk_init_check(x64emu_t* emu, void* argc, void* argv) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + int ret = my->gdk_init_check(argc, argv); + my_checkGlobalGdkDisplay(); + return ret; +} + +EXPORT void my_gdk_window_add_filter(x64emu_t* emu, void* window, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + my->gdk_window_add_filter(window, findFilterFct(f), data); +} + +EXPORT void my_gdk_window_remove_filter(x64emu_t* emu, void* window, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gdkx112_my_t *my = (gdkx112_my_t*)lib->priv.w.p2; + + my->gdk_window_remove_filter(window, findFilterFct(f), data); +} + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + libname = lib->name; \ + lib->priv.w.p2 = getGdkX112My(lib); \ + lib->priv.w.needed = 3; \ + lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \ + lib->priv.w.neededlibs[0] = strdup("libgobject-2.0.so.0"); \ + lib->priv.w.neededlibs[1] = strdup("libgio-2.0.so.0"); \ + lib->priv.w.neededlibs[2] = strdup("libgdk_pixbuf-2.0.so.0"); + +#define CUSTOM_FINI \ + freeGdkX112My(lib->priv.w.p2); \ + free(lib->priv.w.p2); + + +#include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedgdkx112_private.h b/src/wrapped/wrappedgdkx112_private.h new file mode 100755 index 00000000..3b2a4660 --- /dev/null +++ b/src/wrapped/wrappedgdkx112_private.h @@ -0,0 +1,792 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GOM(gdk_add_client_message_filter, vFpBp) +//GO(gdk_add_option_entries_libgtk_only, +//GO(gdk_app_launch_context_get_type, +//GO(gdk_app_launch_context_new, +//GO(gdk_app_launch_context_set_desktop, +//GO(gdk_app_launch_context_set_display, +//GO(gdk_app_launch_context_set_icon, +//GO(gdk_app_launch_context_set_icon_name, +//GO(gdk_app_launch_context_set_screen, +//GO(gdk_app_launch_context_set_timestamp, +GO(gdk_atom_intern, pFpi) +GO(gdk_atom_intern_static_string, pFp) +GO(gdk_atom_name, pFp) +GO(gdk_axis_use_get_type, iFv) +GO(gdk_beep, vFv) +GO(gdk_bitmap_create_from_data, pFppii) +GO(gdk_byte_order_get_type, iFv) +GO(gdk_cairo_create, pFp) +GO(gdk_cairo_rectangle, vFpp) +GO(gdk_cairo_region, vFpp) +GO(gdk_cairo_reset_clip, vFpp) +GO(gdk_cairo_set_source_color, vFpp) +GO(gdk_cairo_set_source_pixbuf, vFppdd) +GO(gdk_cairo_set_source_pixmap, vFppdd) +GO(gdk_cairo_set_source_window, vFppdd) +//GO(gdk_cap_style_get_type, +//GO(gdk_char_height, +//GO(gdk_char_measure, +//GO(gdk_char_width, +//GO(gdk_char_width_wc, +GO(gdk_color_alloc, iFpp) +GO(gdk_color_black, iFpp) +GO(gdk_color_change, iFpp) +GO(gdk_color_copy, pFp) +GO(gdk_color_equal, iFpp) +GO(gdk_color_free, vFp) +GO(gdk_color_get_type, iFv) +GO(gdk_color_hash, uFp) +GO(gdk_colormap_alloc_color, iFppii) +GO(gdk_colormap_alloc_colors, iFppiiip) +GO(gdk_colormap_change, vFpi) +GO(gdk_colormap_free_colors, vFppi) +GO(gdk_colormap_get_screen, pFp) +GO(gdk_colormap_get_system, pFv) +GO(gdk_colormap_get_system_size, iFv) +GO(gdk_colormap_get_type, iFv) +GO(gdk_colormap_get_visual, pFp) +GO(gdk_colormap_new, pFpi) +GO(gdk_colormap_query_color, vFpLp) +GO(gdk_colormap_ref, pFp) +GO(gdk_colormap_unref, vFp) +GO(gdk_color_parse, iFpp) +GO(gdk_colors_alloc, iFpipipi) +GO(gdk_colors_free, vFppiL) +GO(gdk_colors_store, vFppi) +GO(gdk_color_to_string, pFp) +GO(gdk_color_white, iFpp) +GO(gdk_crossing_mode_get_type, iFv) +GO(gdk_cursor_get_cursor_type, iFp) +GO(gdk_cursor_get_display, pFp) +GO(gdk_cursor_get_image, pFp) +GO(gdk_cursor_get_type, iFv) +GO(gdk_cursor_new, pFi) +GO(gdk_cursor_new_for_display, pFpi) +GO(gdk_cursor_new_from_name, pFpp) +GO(gdk_cursor_new_from_pixbuf, pFppii) +GO(gdk_cursor_new_from_pixmap, pFppppii) +GO(gdk_cursor_ref, pFp) +GO(gdk_cursor_type_get_type, iFv) +GO(gdk_cursor_unref, vFp) +GO(gdk_device_free_history, vFpi) +GO(gdk_device_get_axis, iFppip) +GO(gdk_device_get_axis_use, iFpu) +GO(gdk_device_get_core_pointer, pFv) +GO(gdk_device_get_has_cursor, iFp) +GO(gdk_device_get_history, iFppuupp) +GO(gdk_device_get_key, vFpupp) +GO(gdk_device_get_mode, iFp) +GO(gdk_device_get_name, pFp) +GO(gdk_device_get_n_axes, iFp) +GO(gdk_device_get_n_keys, iFp) +GO(gdk_device_get_source, iFp) +GO(gdk_device_get_state, vFpppp) +GO(gdk_device_get_type, iFv) +GO(gdk_device_set_axis_use, vFpui) +GO(gdk_device_set_key, vFpuui) +GO(gdk_device_set_mode, iFpi) +GO(gdk_device_set_source, vFpi) +GO(gdk_devices_list, pFv) +//GOM(gdk_display_add_client_message_filter, vFEpppp) +GO(gdk_display_beep, vFp) +GO(gdk_display_close, vFp) +GO(gdk_display_flush, vFp) +GO(gdk_display_get_core_pointer, pFp) +GO(gdk_display_get_default, pFv) +GO(gdk_display_get_default_cursor_size, uFp) +GO(gdk_display_get_default_group, pFp) +GO(gdk_display_get_default_screen, pFp) +GO(gdk_display_get_event, pFp) +GO(gdk_display_get_maximal_cursor_size, vFppp) +GO(gdk_display_get_name, pFp) +GO(gdk_display_get_n_screens, iFp) +GO(gdk_display_get_pointer, vFppppp) +GO(gdk_display_get_screen, pFpi) +GO(gdk_display_get_type, iFv) +GO(gdk_display_get_window_at_pointer, pFppp) +GO(gdk_display_is_closed, iFp) +GO(gdk_display_keyboard_ungrab, vFpu) +GO(gdk_display_list_devices, pFp) +GO(gdk_display_manager_get, pFv) +GO(gdk_display_manager_get_default_display, pFp) +GO(gdk_display_manager_get_type, iFv) +GO(gdk_display_manager_list_displays, pFp) +GO(gdk_display_manager_set_default_display, vFpp) +GO(gdk_display_open, pFp) +//GO(gdk_display_open_default_libgtk_only, +GO(gdk_display_peek_event, pFp) +GO(gdk_display_pointer_is_grabbed, iFp) +GO(gdk_display_pointer_ungrab, vFpu) +GO(gdk_display_put_event, vFpp) +GO(gdk_display_request_selection_notification, iFpp) +GO(gdk_display_set_double_click_distance, vFpu) +GO(gdk_display_set_double_click_time, vFpu) +//GOM(gdk_display_set_pointer_hooks, pFEpp) // GdkDisplayPointerHooks needs wrapping +GO(gdk_display_store_clipboard, vFppupi) +GO(gdk_display_supports_clipboard_persistence, iFp) +GO(gdk_display_supports_composite, iFp) +GO(gdk_display_supports_cursor_alpha, iFp) +GO(gdk_display_supports_cursor_color, iFp) +GO(gdk_display_supports_input_shapes, iFp) +GO(gdk_display_supports_selection_notification, iFp) +GO(gdk_display_supports_shapes, iFp) +GO(gdk_display_sync, vFp) +GO(gdk_display_warp_pointer, vFppii) +GO(gdk_drag_abort, vFpu) +GO(gdk_drag_action_get_type, iFv) +GO(gdk_drag_begin, pFpp) +GO(gdk_drag_context_get_actions, iFp) +GO(gdk_drag_context_get_dest_window, pFp) +GO(gdk_drag_context_get_protocol, iFp) +GO(gdk_drag_context_get_selected_action, iFp) +GO(gdk_drag_context_get_source_window, pFp) +GO(gdk_drag_context_get_suggested_action, iFp) +GO(gdk_drag_context_get_type, iFv) +GO(gdk_drag_context_list_targets, pFp) +GO(gdk_drag_context_new, pFv) +GO(gdk_drag_context_ref, vFp) +GO(gdk_drag_context_unref, vFp) +GO(gdk_drag_drop, vFpu) +GO(gdk_drag_drop_succeeded, iFp) +GO(gdk_drag_find_window, vFppiipp) +GO(gdk_drag_find_window_for_screen, vFpppiipp) +GO(gdk_drag_get_protocol, pFpp) +GO(gdk_drag_get_protocol_for_display, pFppp) +GO(gdk_drag_get_selection, pFp) +GO(gdk_drag_motion, iFppiiiiiu) +GO(gdk_drag_protocol_get_type, iFv) +GO(gdk_drag_status, vFpiu) +GO(gdk_drawable_copy_to_image, pFppiiiiii) +GO(gdk_drawable_get_clip_region, pFp) +GO(gdk_drawable_get_colormap, pFp) +GO(gdk_drawable_get_data, pFpp) +GO(gdk_drawable_get_depth, iFp) +GO(gdk_drawable_get_display, pFp) +GO(gdk_drawable_get_image, pFpiiii) +GO(gdk_drawable_get_screen, pFp) +GO(gdk_drawable_get_size, vFppp) +GO(gdk_drawable_get_type, iFv) +GO(gdk_drawable_get_visible_region, pFp) +GO(gdk_drawable_get_visual, pFp) +GO(gdk_drawable_ref, pFp) +GO(gdk_drawable_set_colormap, vFpp) +//GOM(gdk_drawable_set_data, vFEpppB) +GO(gdk_drawable_unref, vFp) +GO(gdk_draw_arc, vFppiiiiiii) +GO(gdk_draw_drawable, vFpppiiiiii) +GO(gdk_draw_glyphs, vFpppiip) +GO(gdk_draw_glyphs_transformed, vFppppiip) +GO(gdk_draw_gray_image, vFppiiiiipi) +GO(gdk_draw_image, vFpppiiiiii) +GO(gdk_draw_indexed_image, vFppiiiiipip) +GO(gdk_draw_layout, vFppiip) +GO(gdk_draw_layout_line, vFppiip) +GO(gdk_draw_layout_line_with_colors, vFppiippp) +GO(gdk_draw_layout_with_colors, vFppiippp) +GO(gdk_draw_line, vFppiiii) +GO(gdk_draw_lines, vFpppi) +GO(gdk_draw_pixbuf, vFpppiiiiiiiii) +GO(gdk_draw_point, vFppii) +GO(gdk_draw_points, vFpppi) +GO(gdk_draw_polygon, vFppipi) +GO(gdk_draw_rectangle, vFppiiiii) +GO(gdk_draw_rgb_32_image, vFppiiiiipi) +GO(gdk_draw_rgb_32_image_dithalign, vFppiiiiipiii) +GO(gdk_draw_rgb_image, vFppiiiiipi) +GO(gdk_draw_rgb_image_dithalign, vFppiiiiipiii) +GO(gdk_draw_segments, vFpppi) +GO(gdk_draw_string, vFpppiip) +GO(gdk_draw_text, vFpppiipi) +GO(gdk_draw_text_wc, vFpppiipi) +GO(gdk_draw_trapezoids, vFpppi) +GO(gdk_drop_finish, vFpiu) +GO(gdk_drop_reply, vFpiu) +GO(gdk_error_trap_pop, iFv) +GO(gdk_error_trap_push, vFv) +GO(gdk_event_copy, pFp) +GO(gdk_event_free, vFp) +GO(gdk_event_get, pFv) +GO(gdk_event_get_axis, iFpip) +GO(gdk_event_get_coords, iFppp) +GO(gdk_event_get_graphics_expose, pFp) +GO(gdk_event_get_root_coords, iFppp) +GO(gdk_event_get_screen, pFp) +GO(gdk_event_get_state, iFpp) +GO(gdk_event_get_time, uFp) +GO(gdk_event_get_type, iFv) +GOM(gdk_event_handler_set, vFEppp) +GO(gdk_event_mask_get_type, iFv) +GO(gdk_event_new, pFi) +GO(gdk_event_peek, pFv) +GO(gdk_event_put, vFp) +GO(gdk_event_request_motions, vFp) +GO(gdk_event_send_client_message, iFpp) +GO(gdk_event_send_client_message_for_display, iFppp) +GO(gdk_event_send_clientmessage_toall, vFp) +GO(gdk_event_set_screen, vFpp) +GO(gdk_events_pending, iFv) +//GO(gdk_event_type_get_type, +GO(gdk_exit, vFi) +//GO(gdk_extension_mode_get_type, +//GO(gdk_fill_get_type, +//GO(gdk_fill_rule_get_type, +//GO(gdk_filter_return_get_type, +GO(gdk_flush, vFv) +//GO(gdk_font_equal, +//GO(gdk_font_from_description, +//GO(gdk_font_from_description_for_display, +//GO(gdk_font_get_display, +GO(gdk_font_get_type, iFv) +//GO(gdk_font_id, +//GO(gdk_font_load, +//GO(gdk_font_load_for_display, +//GO(gdk_font_ref, +//GO(gdk_fontset_load, +//GO(gdk_fontset_load_for_display, +//GO(gdk_font_type_get_type, +//GO(gdk_font_unref, +GO(gdk_free_compound_text, vFp) +GO(gdk_free_text_list, vFp) +GO(gdk_function_get_type, iFv) +GO(gdk_gc_copy, vFpp) +GO(gdk_gc_get_colormap, pFp) +GO(gdk_gc_get_screen, pFp) +GO(gdk_gc_get_type, iFv) +GO(gdk_gc_get_values, vFpp) +GO(gdk_gc_new, pFp) +GO(gdk_gc_new_with_values, pFppu) +GO(gdk_gc_offset, vFpii) +GO(gdk_gc_ref, pFp) +GO(gdk_gc_set_background, vFpp) +GO(gdk_gc_set_clip_mask, vFpp) +GO(gdk_gc_set_clip_origin, vFpii) +GO(gdk_gc_set_clip_rectangle, vFpp) +GO(gdk_gc_set_clip_region, vFpp) +GO(gdk_gc_set_colormap, vFpp) +GO(gdk_gc_set_dashes, vFpipi) +GO(gdk_gc_set_exposures, vFpi) +GO(gdk_gc_set_fill, vFpi) +GO(gdk_gc_set_font, vFpp) +GO(gdk_gc_set_foreground, vFpp) +GO(gdk_gc_set_function,vFpi) +GO(gdk_gc_set_line_attributes, vFpiiii) +GO(gdk_gc_set_rgb_bg_color, vFpp) +GO(gdk_gc_set_rgb_fg_color, vFpp) +GO(gdk_gc_set_stipple, vFpp) +GO(gdk_gc_set_subwindow, vFpi) +GO(gdk_gc_set_tile, vFpp) +GO(gdk_gc_set_ts_origin, vFpii) +GO(gdk_gc_set_values, vFppu) +GO(gdk_gc_unref, vFp) +GO(gdk_gc_values_mask_get_type, iFv) +GO(gdk_get_default_root_window, pFv) +GO(gdk_get_display, pFv) +GO(gdk_get_display_arg_name, pFv) +GO(gdk_get_program_class, pFv) +GO(gdk_get_show_events, iFv) +GO(gdk_get_use_xshm, iFv) +GO(gdk_grab_status_get_type, iFv) +GO(gdk_gravity_get_type, iFv) +GO(gdk_image_get, pFpiiii) +GO(gdk_image_get_bits_per_pixel, WFp) +GO(gdk_image_get_byte_order, iFp) +GO(gdk_image_get_bytes_per_line, WFp) +GO(gdk_image_get_bytes_per_pixel, WFp) +GO(gdk_image_get_colormap, pFp) +GO(gdk_image_get_depth, WFp) +GO(gdk_image_get_height, iFp) +GO(gdk_image_get_image_type, iFp) +GO(gdk_image_get_pixel, uFpii) +GO(gdk_image_get_pixels, pFp) +GO(gdk_image_get_type, iFv) +GO(gdk_image_get_visual, pFp) +GO(gdk_image_get_width, iFp) +GO(gdk_image_new, pFipii) +GO(gdk_image_new_bitmap, pFppii) +GO(gdk_image_put_pixel, vFpiiu) +GO(gdk_image_ref, pFp) +GO(gdk_image_set_colormap, vFpp) +GO(gdk_image_type_get_type, iFv) +GO(gdk_image_unref, vFp) +GOM(gdk_init, vFEpp) +GOM(gdk_init_check, iFEpp) +GOM(gdk_input_add, iFEiipp) +GOM(gdk_input_add_full, iFEiippp) +GO(gdk_input_condition_get_type, iFv) +GO(gdk_input_mode_get_type, iFv) +GO(gdk_input_remove, vFi) +GO(gdk_input_set_extension_events, vFpii) +GO(gdk_input_source_get_type, iFv) +GO(gdk_join_style_get_type, iFv) +GO(gdk_keyboard_grab, iFpiu) +//GO(gdk_keyboard_grab_info_libgtk_only, +GO(gdk_keyboard_ungrab, vFu) +GO(gdk_keymap_add_virtual_modifiers, vFpp) +GO(gdk_keymap_get_caps_lock_state, iFp) +GO(gdk_keymap_get_default, pFv) +GO(gdk_keymap_get_direction, iFp) +GO(gdk_keymap_get_entries_for_keycode, iFpuppp) +GO(gdk_keymap_get_entries_for_keyval, iFpupp) +GO(gdk_keymap_get_for_display, pFp) +GO(gdk_keymap_get_type, iFv) +GO(gdk_keymap_have_bidi_layouts, iFp) +GO(gdk_keymap_lookup_key, uFpp) +GO(gdk_keymap_map_virtual_modifiers, iFpp) +GO(gdk_keymap_translate_keyboard_state, iFpuiipppp) +GO(gdk_keyval_convert_case, vFupp) +GO(gdk_keyval_from_name, uFp) +GO(gdk_keyval_is_lower, iFu) +GO(gdk_keyval_is_upper, iFu) +GO(gdk_keyval_name, pFu) +GO(gdk_keyval_to_lower, uFu) +GO(gdk_keyval_to_unicode, uFu) +GO(gdk_keyval_to_upper, uFu) +GO(gdk_line_style_get_type, iFv) +GO(gdk_list_visuals, pFv) +//GO(gdk_mbstowcs, +GO(gdk_modifier_type_get_type, iFv) +GO(gdk_net_wm_supports, iFp) +GO(gdk_notify_startup_complete, vFv) +GO(gdk_notify_startup_complete_with_id, vFp) +GO(gdk_notify_type_get_type, iFv) +GO(gdk_offscreen_window_get_embedder, pFp) +GO(gdk_offscreen_window_get_pixmap, pFp) +GO(gdk_offscreen_window_get_type, iFv) +GO(gdk_offscreen_window_set_embedder, vFpp) +GO(gdk_overlap_type_get_type, iFv) +GO(gdk_owner_change_get_type, iFv) +GO(gdk_pango_attr_emboss_color_new, pFp) +GO(gdk_pango_attr_embossed_new, pFi) +GO(gdk_pango_attr_stipple_new, pFp) +GO(gdk_pango_context_get, pFv) +GO(gdk_pango_context_get_for_screen, pFp) +GO(gdk_pango_context_set_colormap, vFpp) +GO(gdk_pango_layout_get_clip_region, pFpiipi) +GO(gdk_pango_layout_line_get_clip_region, pFpiipi) +GO(gdk_pango_renderer_get_default, pFp) +GO(gdk_pango_renderer_get_type, iFv) +GO(gdk_pango_renderer_new, pFp) +GO(gdk_pango_renderer_set_drawable, vFpp) +GO(gdk_pango_renderer_set_gc, vFpp) +GO(gdk_pango_renderer_set_override_color, vFpip) +GO(gdk_pango_renderer_set_stipple, vFpip) +GO(gdk_parse_args, vFpp) +GO(gdk_pixbuf_get_from_drawable, pFpppiiiiii) +GO(gdk_pixbuf_get_from_image, pFpppiiiiii) +GO(gdk_pixbuf_render_pixmap_and_mask, vFpppi) +GO(gdk_pixbuf_render_pixmap_and_mask_for_colormap, vFppppi) +GO(gdk_pixbuf_render_threshold_alpha, vFppiiiiiii) +GO(gdk_pixbuf_render_to_drawable, vFpppiiiiiiiii) +GO(gdk_pixbuf_render_to_drawable_alpha, vFppiiiiiiiiiii) +GO(gdk_pixmap_colormap_create_from_xpm, pFppppp) +GO(gdk_pixmap_colormap_create_from_xpm_d, pFppppp) +GO(gdk_pixmap_create_from_data, pFppiiipp) +GO(gdk_pixmap_create_from_xpm, pFpppp) +GO(gdk_pixmap_create_from_xpm_d, pFpppp) +GO(gdk_pixmap_foreign_new, pFp) +GO(gdk_pixmap_foreign_new_for_display, pFpp) +GO(gdk_pixmap_foreign_new_for_screen, pFppiii) +GO(gdk_pixmap_get_size, vFppp) +GO(gdk_pixmap_get_type, iFv) +GO(gdk_pixmap_impl_x11_get_type, iFv) +GO(gdk_pixmap_lookup, pFp) +GO(gdk_pixmap_lookup_for_display, pFpp) +GO(gdk_pixmap_new, pFpiii) +GO(gdk_pointer_grab, iFpiippu) +//GO(gdk_pointer_grab_info_libgtk_only, +GO(gdk_pointer_is_grabbed, iFv) +GO(gdk_pointer_ungrab, vFu) +//GO(gdk_pre_parse_libgtk_only, +GO(gdk_property_change, vFpppiipi) +GO(gdk_property_delete, vFpp) +GO(gdk_property_get, iFpppLLipppp) +GO(gdk_property_state_get_type, iFv) +GO(gdk_prop_mode_get_type, iFv) +GO(gdk_query_depths, vFpp) +GO(gdk_query_visual_types, vFpp) +GO(gdk_rectangle_get_type, iFv) +GO(gdk_rectangle_intersect, iFppp) +GO(gdk_rectangle_union, vFppp) +GO(gdk_region_copy, pFp) +GO(gdk_region_destroy, vFpp) +GO(gdk_region_empty, iFp) +GO(gdk_region_equal, iFpp) +GO(gdk_region_get_clipbox, vFpp) +GO(gdk_region_get_rectangles, vFppp) +GO(gdk_region_intersect, vFpp) +GO(gdk_region_new, pFv) +GO(gdk_region_offset, vFpii) +GO(gdk_region_point_in, iFpii) +GO(gdk_region_polygon, pFpii) +GO(gdk_region_rectangle, pFp) +GO(gdk_region_rect_equal, iFpp) +GO(gdk_region_rect_in, iFpp) +GO(gdk_region_shrink, vFpii) +//GOM(gdk_region_spans_intersect_foreach, vFppiiBp) +GO(gdk_region_subtract, vFpp) +GO(gdk_region_union, vFpp) +GO(gdk_region_union_with_rect, vFpp) +GO(gdk_region_xor, vFpp) +GO(gdk_rgb_cmap_free, vFp) +GO(gdk_rgb_cmap_new, pFpi) +GO(gdk_rgb_colormap_ditherable, iFp) +GO(gdk_rgb_ditherable, iFv) +GO(gdk_rgb_dither_get_type, iFv) +GO(gdk_rgb_find_color, vFpp) +GO(gdk_rgb_gc_set_background, vFpu) +GO(gdk_rgb_gc_set_foreground, vFpu) +GO(gdk_rgb_get_colormap, pFv) +GO(gdk_rgb_get_visual, pFv) +GO(gdk_rgb_init, vFv) +GO(gdk_rgb_set_install, vFi) +GO(gdk_rgb_set_min_colors, vFi) +GO(gdk_rgb_set_verbose, vFi) +GO(gdk_rgb_xpixel_from_rgb, LFu) +GO(gdk_screen_broadcast_client_message, vFpp) +GO(gdk_screen_get_active_window, pFp) +GO(gdk_screen_get_default, pFv) +GO(gdk_screen_get_default_colormap, pFp) +GO(gdk_screen_get_display, pFp) +GO(gdk_screen_get_font_options, pFp) +GO(gdk_screen_get_height, iFp) +GO(gdk_screen_get_height_mm, iFp) +GO(gdk_screen_get_monitor_at_point, iFpii) +GO(gdk_screen_get_monitor_at_window, iFpp) +GO(gdk_screen_get_monitor_geometry, vFpip) +GO(gdk_screen_get_monitor_height_mm, iFpi) +GO(gdk_screen_get_monitor_plug_name, pFpi) +GO(gdk_screen_get_monitor_width_mm, iFpi) +GO(gdk_screen_get_n_monitors, iFp) +GO(gdk_screen_get_number, iFp) +GO(gdk_screen_get_primary_monitor, iFp) +GO(gdk_screen_get_resolution, dFp) +GO(gdk_screen_get_rgba_colormap, pFp) +GO(gdk_screen_get_rgba_visual, pFp) +GO(gdk_screen_get_rgb_colormap, pFp) +GO(gdk_screen_get_rgb_visual, pFp) +GO(gdk_screen_get_root_window, pFp) +GO(gdk_screen_get_setting, iFppp) +GO(gdk_screen_get_system_colormap, pFp) +GO(gdk_screen_get_system_visual, pFp) +GO(gdk_screen_get_toplevel_windows, pFp) +GO(gdk_screen_get_type, iFv) +GO(gdk_screen_get_width, iFp) +GO(gdk_screen_get_width_mm, iFp) +GO(gdk_screen_get_window_stack, pFp) +GO(gdk_screen_height, iFv) +GO(gdk_screen_height_mm, iFv) +GO(gdk_screen_is_composited, iFp) +GO(gdk_screen_list_visuals, pFp) +GO(gdk_screen_make_display_name, pFp) +GO(gdk_screen_set_default_colormap, vFpp) +GO(gdk_screen_set_font_options, vFpp) +GO(gdk_screen_set_resolution, vFpd) +GO(gdk_screen_width, iFv) +GO(gdk_screen_width_mm, iFv) +GO(gdk_scroll_direction_get_type, iFv) +GO(gdk_selection_convert, vFpppu) +GO(gdk_selection_owner_get, pFp) +GO(gdk_selection_owner_get_for_display, pFpp) +GO(gdk_selection_owner_set, iFppui) +GO(gdk_selection_owner_set_for_display, iFpppui) +GO(gdk_selection_property_get, iFpppp) +GO(gdk_selection_send_notify, vFppppu) +GO(gdk_selection_send_notify_for_display, vFpppppu) +GO(gdk_set_double_click_time, vFu) +GO(gdk_set_locale, pFv) +//GOM(gdk_set_pointer_hooks, BFEB) +GO(gdk_set_program_class, vFp) +GO(gdk_set_show_events, vFi) +GO(gdk_set_sm_client_id, vFp) +GO(gdk_setting_action_get_type, iFv) +GO(gdk_setting_get, iFpp) +GO(gdk_set_use_xshm, vFi) +GO(gdk_spawn_command_line_on_screen, iFppp) +//GOM(gdk_spawn_on_screen, iFEppppipppp) +//GOM(gdk_spawn_on_screen_with_pipes, iFEppppippppppp) +GO(gdk_status_get_type, iFv) +//GO(gdk_string_extents, +//GO(gdk_string_height, +//GO(gdk_string_measure, +GO(gdk_string_to_compound_text, iFppppp) +GO(gdk_string_to_compound_text_for_display, iFpppppp) +//GO(gdk_string_width, +//GO(gdk_subwindow_mode_get_type, +//GO(gdk_synthesize_window_state, +//GO(gdk_test_render_sync, +//GO(gdk_test_simulate_button, +//GO(gdk_test_simulate_key, +//GO(gdk_text_extents, +//GO(gdk_text_extents_wc, +//GO(gdk_text_height, +//GO(gdk_text_measure, +GO(gdk_text_property_to_text_list, iFpipip) +GO(gdk_text_property_to_text_list_for_display, iFppipip) +GO(gdk_text_property_to_utf8_list, iFpipip) +//GO(gdk_text_property_to_utf8_list_for_display, +//GO(gdk_text_width, +//GO(gdk_text_width_wc, +//GOM(gdk_threads_add_idle, uFEpp) +//GOM(gdk_threads_add_idle_full, uFEippp) +//GOM(gdk_threads_add_timeout, uFEupp) +//GOM(gdk_threads_add_timeout_full, uFEiuppp) +//GOM(gdk_threads_add_timeout_seconds, uFEupp) +//GOM(gdk_threads_add_timeout_seconds_full, uFEiuppp) +GO(gdk_threads_enter, vFv) +GO(gdk_threads_init, vFv) +GO(gdk_threads_leave, vFv) +//GOM(gdk_threads_set_lock_functions, vFEpp) +GO(gdk_unicode_to_keyval, uFu) +GO(gdk_utf8_to_compound_text, iFppppp) +GO(gdk_utf8_to_compound_text_for_display, iFpppppp) +GO(gdk_utf8_to_string_target, pFp) +GO(gdk_visibility_state_get_type, iFv) +GO(gdk_visual_get_best, pFv) +GO(gdk_visual_get_best_depth, iFv) +GO(gdk_visual_get_best_type, iFv) +GO(gdk_visual_get_best_with_both, pFii) +GO(gdk_visual_get_best_with_depth, pFi) +GO(gdk_visual_get_best_with_type, pFi) +GO(gdk_visual_get_bits_per_rgb, iFp) +GO(gdk_visual_get_blue_pixel_details, vFpppp) +GO(gdk_visual_get_byte_order, iFp) +GO(gdk_visual_get_colormap_size, iFp) +GO(gdk_visual_get_depth, iFp) +GO(gdk_visual_get_green_pixel_details, vFpppp) +GO(gdk_visual_get_red_pixel_details, vFpppp) +GO(gdk_visual_get_screen, pFp) +GO(gdk_visual_get_system, pFv) +GO(gdk_visual_get_type, iFv) +GO(gdk_visual_get_visual_type, iFp) +GO(gdk_visual_type_get_type, iFv) +//GO(gdk_wcstombs, +GOM(gdk_window_add_filter, vFEppp) +GO(gdk_window_at_pointer, pFpp) +//GO(gdk_window_attributes_type_get_type, +GO(gdk_window_beep, vFp) +GO(gdk_window_begin_move_drag, vFpiiiu) +GO(gdk_window_begin_paint_rect, vFpp) +GO(gdk_window_begin_paint_region, vFpp) +GO(gdk_window_begin_resize_drag, vFpuiiiu) +GO(gdk_window_class_get_type, iFv) +GO(gdk_window_clear, vFp) +GO(gdk_window_clear_area, vFpiiii) +GO(gdk_window_clear_area_e, vFpiiii) +GO(gdk_window_configure_finished, vFp) +GO(gdk_window_constrain_size, vFpuiipp) +GO(gdk_window_coords_from_parent, vFpddpp) +GO(gdk_window_coords_to_parent, vFpddpp) +GO(gdk_window_create_similar_surface, pFpiii) +GO(gdk_window_deiconify, vFp) +GO(gdk_window_destroy, vFp) +//GO(gdk_window_destroy_notify, +//GO(gdk_window_edge_get_type, +GO(gdk_window_enable_synchronized_configure, vFp) +GO(gdk_window_end_paint, vFp) +GO(gdk_window_ensure_native, iFp) +GO(gdk_window_flush, vFp) +GO(gdk_window_focus, vFpu) +GO(gdk_window_foreign_new, pFp) +GO(gdk_window_foreign_new_for_display, pFpp) +//GO(gdk_window_freeze_toplevel_updates_libgtk_only, +GO(gdk_window_freeze_updates, vFp) +GO(gdk_window_fullscreen, vFp) +GO(gdk_window_geometry_changed, vFp) +GO(gdk_window_get_accept_focus, iFp) +GO(gdk_window_get_background_pattern, pFp) +GO(gdk_window_get_children, pFp) +GO(gdk_window_get_composited, iFp) +GO(gdk_window_get_cursor, pFp) +GO(gdk_window_get_decorations, iFpp) +GO(gdk_window_get_deskrelative_origin, iFppp) +GO(gdk_window_get_display, pFp) +GO(gdk_window_get_effective_parent, pFp) +GO(gdk_window_get_effective_toplevel, pFp) +GO(gdk_window_get_events, vFpi) +GO(gdk_window_get_focus_on_map, iFp) +GO(gdk_window_get_frame_extents, vFpp) +GO(gdk_window_get_geometry, vFpppppp) +GO(gdk_window_get_group, pFp) +GO(gdk_window_get_height, iFp) +GO(gdk_window_get_internal_paint_info, vFpppp) +GO(gdk_window_get_modal_hint, iFp) +GO(gdk_window_get_origin, iFppp) +GO(gdk_window_get_parent, pFp) +GO(gdk_window_get_pointer, pFpppp) +GO(gdk_window_get_position, vFppp) +GO(gdk_window_get_root_coords, vFpiipp) +GO(gdk_window_get_root_origin, vFppp) +GO(gdk_window_get_screen, pFp) +GO(gdk_window_get_state, iFp) +GO(gdk_window_get_toplevel, pFp) +GO(gdk_window_get_toplevels, pFp) +GO(gdk_window_get_type_hint, iFp) +GO(gdk_window_get_update_area, pFp) +GO(gdk_window_get_user_data, vFpp) +GO(gdk_window_get_visual, pFp) +GO(gdk_window_get_width, iFp) +GO(gdk_window_get_window_type, iFp) +GO(gdk_window_has_native, iFp) +GO(gdk_window_hide, vFp) +GO(gdk_window_hints_get_type, iFv) +GO(gdk_window_iconify, vFp) +GO(gdk_window_impl_get_type, iFv) +GO(gdk_window_impl_x11_get_type, iFv) +GO(gdk_window_input_shape_combine_mask, vFppii) +GO(gdk_window_input_shape_combine_region, vFppii) +//GOM(gdk_window_invalidate_maybe_recurse, vFEppBp) +GO(gdk_window_invalidate_rect, vFppi) +GO(gdk_window_invalidate_region, vFppi) +GO(gdk_window_is_destroyed, iFp) +GO(gdk_window_is_input_only, iFp) +GO(gdk_window_is_shaped, iFp) +GO(gdk_window_is_viewable, iFp) +GO(gdk_window_is_visible, iFp) +GO(gdk_window_lookup, pFp) +GO(gdk_window_lookup_for_display, pFpp) +GO(gdk_window_lower, vFp) +GO(gdk_window_maximize, vFp) +GO(gdk_window_merge_child_input_shapes, vFp) +GO(gdk_window_merge_child_shapes, vFp) +GO(gdk_window_move, vFpii) +GO(gdk_window_move_region, vFppii) +GO(gdk_window_move_resize, vFpiiii) +GO(gdk_window_new, pFppi) +GO(gdk_window_object_get_type, iFv) +GO(gdk_window_peek_children, pFp) +GO(gdk_window_process_all_updates, vFv) +GO(gdk_window_process_updates, vFpi) +GO(gdk_window_raise, vFp) +GO(gdk_window_redirect_to_drawable, vFppiiiiii) +GO(gdk_window_register_dnd, vFp) +GOM(gdk_window_remove_filter, vFEppp) +GO(gdk_window_remove_redirection, vFp) +GO(gdk_window_reparent, vFppii) +GO(gdk_window_resize, vFpii) +GO(gdk_window_restack, vFppi) +GO(gdk_window_scroll, vFpii) +GO(gdk_window_set_accept_focus, vFpi) +GO(gdk_window_set_background, vFpp) +GO(gdk_window_set_back_pixmap, vFppi) +GO(gdk_window_set_child_input_shapes, vFp) +GO(gdk_window_set_child_shapes, vFp) +GO(gdk_window_set_composited, vFpi) +GO(gdk_window_set_cursor, vFpp) +GO(gdk_window_set_debug_updates, vFi) +GO(gdk_window_set_decorations, vFpp) +GO(gdk_window_set_events, vFpp) +GO(gdk_window_set_focus_on_map, vFpi) +GO(gdk_window_set_functions, vFpu) +GO(gdk_window_set_geometry_hints, vFppi) +GO(gdk_window_set_group, vFpp) +GO(gdk_window_set_hints, vFpiiiiiii) +GO(gdk_window_set_icon, vFpppp) +GO(gdk_window_set_icon_list, vFpp) +GO(gdk_window_set_icon_name, vFpp) +GO(gdk_window_set_keep_above, vFpi) +GO(gdk_window_set_keep_below, vFpi) +GO(gdk_window_set_modal_hint, iFp) +GO(gdk_window_set_opacity, vFpi) +GO(gdk_window_set_override_redirect, vFpi) +GO(gdk_window_set_role, vFpp) +GO(gdk_window_set_skip_pager_hint, vFpi) +GO(gdk_window_set_skip_taskbar_hint, vFpi) +GO(gdk_window_set_startup_id, vFpp) +GO(gdk_window_set_static_gravities, iFpi) +GO(gdk_window_set_title, vFpp) +GO(gdk_window_set_transient_for, vFpp) +GO(gdk_window_set_type_hint, vFpi) +GO(gdk_window_set_urgency_hint, vFpi) +GO(gdk_window_set_user_data, vFpp) +GO(gdk_window_shape_combine_mask, vFppii) +GO(gdk_window_shape_combine_region, vFppii) +GO(gdk_window_show, vFp) +GO(gdk_window_show_unraised, vFp) +GO(gdk_window_state_get_type, iFv) +GO(gdk_window_stick, vFp) +//GO(gdk_window_thaw_toplevel_updates_libgtk_only, +GO(gdk_window_thaw_updates, vFp) +GO(gdk_window_type_get_type, iFv) +GO(gdk_window_type_hint_get_type, iFv) +GO(gdk_window_unfullscreen, vFp) +GO(gdk_window_unmaximize, vFp) +GO(gdk_window_unstick, vFp) +GO(gdk_window_withdraw, vFp) +GO(gdk_wm_decoration_get_type, iFv) +GO(gdk_wm_function_get_type, iFv) +GO(gdk_x11_atom_to_xatom, pFp) +GO(gdk_x11_atom_to_xatom_for_display, pFpp) +GO(gdk_x11_colormap_foreign_new, pFpp) +GO(gdk_x11_colormap_get_xcolormap, pFp) +GO(gdk_x11_colormap_get_xdisplay, pFp) +GO(gdk_x11_cursor_get_xcursor, pFp) +GO(gdk_x11_cursor_get_xdisplay, pFp) +GO(gdk_x11_display_broadcast_startup_message, vFppppppppppppp) //vaarg after 2 p +GO(gdk_x11_display_get_startup_notification_id, pFp) +GO(gdk_x11_display_get_user_time, uFp) +GO(gdk_x11_display_get_xdisplay, pFp) +GO(gdk_x11_display_grab, vFp) +GO(gdk_x11_display_set_cursor_theme, vFppi) +//GO(gdk_x11_display_string_to_compound_text, +//GO(gdk_x11_display_text_property_to_text_list, +GO(gdk_x11_display_ungrab, vFp) +//GO(gdk_x11_display_utf8_to_compound_text, +GO(gdk_x11_drawable_get_xdisplay, pFp) +GO(gdk_x11_drawable_get_xid, pFp) +GO(gdk_x11_font_get_name, pFp) +GO(gdk_x11_font_get_xdisplay, pFp) +GO(gdk_x11_font_get_xfont, pFp) +//GO(gdk_x11_free_compound_text, +//GO(gdk_x11_free_text_list, +GO(gdk_x11_gc_get_xdisplay, pFp) +GO(gdk_x11_gc_get_xgc, pFp) +GO(gdk_x11_get_default_root_xwindow, pFv) +GO(gdk_x11_get_default_screen, iFv) +GO(gdk_x11_get_default_xdisplay, pFv) +GO(gdk_x11_get_server_time, uFp) +GO(gdk_x11_get_xatom_by_name, pFp) +GO(gdk_x11_get_xatom_by_name_for_display, pFpp) +GO(gdk_x11_get_xatom_name, pFp) +GO(gdk_x11_get_xatom_name_for_display, pFpp) +GO(gdk_x11_grab_server, vFv) +GO(gdk_x11_image_get_xdisplay, pFp) +GO(gdk_x11_image_get_ximage, pFp) +GO(gdk_x11_lookup_xdisplay, pFp) +GO(gdk_x11_pixmap_get_drawable_impl, pFp) +GO(gdk_x11_register_standard_event_type, vFpii) +GO(gdk_x11_screen_get_monitor_output, pFpi) +GO(gdk_x11_screen_get_screen_number, iFp) +GO(gdk_x11_screen_get_window_manager_name, pFp) +GO(gdk_x11_screen_get_xscreen, pFp) +GO(gdk_x11_screen_lookup_visual, pFpp) +GO(gdk_x11_screen_supports_net_wm_hint, iFpp) +GO(gdk_x11_set_sm_client_id, vFp) +GO(gdk_x11_ungrab_server, vFv) +GO(gdk_x11_visual_get_xvisual, pFp) +GO(gdk_x11_window_foreign_new_for_display, pFpp) +GO(gdk_x11_window_get_drawable_impl, pFp) +GO(gdk_x11_window_lookup_for_display, pFpp) +GO(gdk_x11_window_move_to_current_desktop, vFp) +GO(gdk_x11_window_set_user_time, vFpu) +GO(gdk_x11_xatom_to_atom, pFp) +GO(gdk_x11_xatom_to_atom_for_display, pFpp) +GO(gdkx_colormap_get, pFu) +GO(gdk_xid_table_lookup, pFp) +GO(gdk_xid_table_lookup_for_display, pFpp) +GO(gdkx_visual_get, pFp) + +//GLOB(gdk_display, sizeof(void*)) +DATA(gdk_threads_lock, sizeof(void*)) +DATA(gdk_threads_unlock, sizeof(void*)) + +GO(dummy_set_child_property, vFppupp) // to get vFppupp for gtkclass.c + +// from gdk-1.2 +GO2(gdk_pixmap_ref, pFp, g_object_ref) +GO2(gdk_pixmap_unref, vFp, g_object_unref) +GO2(gdk_bitmap_ref, pFp, g_object_ref) +GO2(gdk_bitmap_unref, vFp, g_object_unref) \ No newline at end of file diff --git a/src/wrapped/wrappedgio2.c b/src/wrapped/wrappedgio2.c new file mode 100755 index 00000000..52697769 --- /dev/null +++ b/src/wrapped/wrappedgio2.c @@ -0,0 +1,739 @@ +#define _GNU_SOURCE +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <dlfcn.h> +#include <stdarg.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "myalign.h" + +const char* gio2Name = "libgio-2.0.so.0"; +#define LIBNAME gio2 + +static char* libname = NULL; + +typedef void (*vFppp_t) (void*, void*, void*); +typedef void (*vFppip_t) (void*, void*, int, void*); +typedef void (*vFippp_t) (int, void*, void*, void*); +typedef void* (*pFpppp_t) (void*, void*, void*, void*); +typedef void (*vFpppp_t) (void*, void*, void*, void*); +typedef uint32_t(*uFpppp_t) (void*, void*, void*, void*); +typedef unsigned long (*LFpppp_t) (void*, void*, void*, void*); +typedef void (*vFpippp_t) (void*, int, void*, void*, void*); +typedef void (*vFpipppp_t) (void*, int, void*, void*, void*, void*); +typedef void* (*vFippippp_t) (int, void*, void*, int, void*, void*, void*); +typedef void* (*vFipAippp_t) (int, void*, va_list, int, void*, void*, void*); +typedef uint32_t(*uFipipppp_t) (int, void*, int, void*, void*, void*, void*); +typedef uint32_t(*uFppipppp_t) (void*, void*, int, void*, void*, void*, void*); +typedef void (*vFppipppp_t) (void*, void*, int, void*, void*, void*, void*); +typedef void (*vFiupippp_t) (int, uint32_t, void*, int, void*, void*, void*); +typedef void (*vFpppuipV_t) (void*, void*, void*, uint32_t, int, void*, ...); +typedef void* (*pFpppuipV_t) (void*, void*, void*, uint32_t, int, void*, ...); +typedef uint32_t(*uFppppppp_t) (void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFppiipppp_t) (void*, void*, int, int, void*, void*, void*, void*); +typedef void (*vFpppiippp_t) (void*, void*, void*, int, int, void*, void*, void*); +typedef uint32_t(*uFipippppp_t) (int, void*, int, void*, void*, void*, void*, void*); +typedef void (*vFpppiipppp_t) (void*, void*, void*, int, int, void*, void*, void*, void*); +typedef void (*vFiippppppp_t) (int, int, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFiippppppp_t) (int, int, void*, void*, void*, void*, void*, void*, void*); +typedef void (*vFpippppppp_t) (void*, int, void*, void*, void*, void*, void*, void*, void*); +typedef uint32_t(*uFppppppippp_t) (void*, void*, void*, void*, void*, void*, int, void*, void*, void*); +typedef void (*vFpppppppiippp_t) (void*, void*, void*, void*, void*, void*, void*, int, int, void*, void*, void*); + +#define SUPER() \ + GO(g_dbus_proxy_new, vFpippppppp_t) \ + GO(g_dbus_proxy_new_for_bus, vFiippppppp_t) \ + GO(g_dbus_proxy_call, vFpppiippp_t) \ + GO(g_dbus_proxy_call_with_unix_fd_list, vFpppiipppp_t) \ + GO(g_dbus_object_manager_client_new_for_bus_sync, pFiippppppp_t) \ + GO(g_simple_async_result_new, pFpppp_t) \ + GO(g_simple_async_result_new_error, pFpppuipV_t)\ + GO(g_simple_async_result_new_from_error, pFpppp_t) \ + GO(g_simple_async_result_new_take_error, pFpppp_t) \ + GO(g_simple_async_result_set_op_res_gpointer, vFppp_t) \ + GO(g_simple_async_result_run_in_thread, vFppip_t) \ + GO(g_simple_async_report_error_in_idle, vFpppuipV_t) \ + GO(g_simple_async_report_gerror_in_idle, vFpppp_t) \ + GO(g_simple_async_report_take_gerror_in_idle, vFpppp_t) \ + GO(g_cancellable_connect, LFpppp_t) \ + GO(g_async_initable_init_async, vFpippp_t) \ + GO(g_async_initable_new_valist_async, vFipAippp_t) \ + GO(g_async_initable_newv_async, vFiupippp_t) \ + GO(g_bus_get, vFippp_t) \ + GO(g_dbus_connection_new, vFppipppp_t) \ + GO(g_dbus_connection_new_for_address, vFpipppp_t) \ + GO(g_dbus_connection_close, vFpppp_t) \ + GO(g_dbus_connection_flush, vFpppp_t) \ + GO(g_dbus_connection_call, vFpppppppiippp_t) \ + GO(g_dbus_connection_signal_subscribe, uFppppppippp_t) \ + GO(g_dbus_connection_send_message_with_reply, vFppiipppp_t) \ + GO(g_dbus_connection_add_filter, uFpppp_t) \ + GO(g_dbus_connection_register_object, uFppppppp_t) \ + GO(g_bus_watch_name, uFipipppp_t) \ + GO(g_bus_watch_name_on_connection, uFppipppp_t) \ + GO(g_bus_own_name, uFipippppp_t) \ + GO(g_bus_own_name_on_connection, uFppipppp_t) + + +typedef struct gio2_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gio2_my_t; + +void* getGio2My(library_t* lib) +{ + gio2_my_t* my = (gio2_my_t*)calloc(1, sizeof(gio2_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGio2My(void* lib) +{ + //gio2_my_t *my = (gio2_my_t *)lib; +} + + +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) + +// GAsyncReadyCallback +#define GO(A) \ +static uintptr_t my_GAsyncReadyCallback_fct_##A = 0; \ +static void my_GAsyncReadyCallback_##A(void* source, void* res, void* data) \ +{ \ + RunFunction(my_context, my_GAsyncReadyCallback_fct_##A, 3, source, res, data);\ +} +SUPER() +#undef GO +static void* findGAsyncReadyCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GAsyncReadyCallback_fct_##A == (uintptr_t)fct) return my_GAsyncReadyCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GAsyncReadyCallback_fct_##A == 0) {my_GAsyncReadyCallback_fct_##A = (uintptr_t)fct; return my_GAsyncReadyCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GAsyncReadyCallback callback\n"); + return NULL; +} + +// GDestroyNotify +#define GO(A) \ +static uintptr_t my_GDestroyNotify_fct_##A = 0; \ +static void my_GDestroyNotify_##A(void* data) \ +{ \ + RunFunction(my_context, my_GDestroyNotify_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findGDestroyNotifyFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDestroyNotify_fct_##A == (uintptr_t)fct) return my_GDestroyNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDestroyNotify_fct_##A == 0) {my_GDestroyNotify_fct_##A = (uintptr_t)fct; return my_GDestroyNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GDestroyNotify callback\n"); + return NULL; +} + +// GDBusProxyTypeFunc +#define GO(A) \ +static uintptr_t my_GDBusProxyTypeFunc_fct_##A = 0; \ +static int my_GDBusProxyTypeFunc_##A(void* manager, void* path, void* name, void* data) \ +{ \ + return (int)RunFunction(my_context, my_GDBusProxyTypeFunc_fct_##A, 4, manager, path, name, data);\ +} +SUPER() +#undef GO +static void* findGDBusProxyTypeFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDBusProxyTypeFunc_fct_##A == (uintptr_t)fct) return my_GDBusProxyTypeFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDBusProxyTypeFunc_fct_##A == 0) {my_GDBusProxyTypeFunc_fct_##A = (uintptr_t)fct; return my_GDBusProxyTypeFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GDBusProxyTypeFunc callback\n"); + return NULL; +} + +// GSimpleAsyncThreadFunc +#define GO(A) \ +static uintptr_t my_GSimpleAsyncThreadFunc_fct_##A = 0; \ +static void my_GSimpleAsyncThreadFunc_##A(void* res, void* object, void* cancellable) \ +{ \ + RunFunction(my_context, my_GSimpleAsyncThreadFunc_fct_##A, 3, res, object, cancellable);\ +} +SUPER() +#undef GO +static void* findGSimpleAsyncThreadFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GSimpleAsyncThreadFunc_fct_##A == (uintptr_t)fct) return my_GSimpleAsyncThreadFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GSimpleAsyncThreadFunc_fct_##A == 0) {my_GSimpleAsyncThreadFunc_fct_##A = (uintptr_t)fct; return my_GSimpleAsyncThreadFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GSimpleAsyncThreadFunc callback\n"); + return NULL; +} + +// GCallback +#define GO(A) \ +static uintptr_t my_GCallback_fct_##A = 0; \ +static void my_GCallback_##A(void* a, void* b, void* c, void* d) \ +{ \ + RunFunction(my_context, my_GCallback_fct_##A, 4, a, b, c, d);\ +} +SUPER() +#undef GO +static void* findGCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCallback_fct_##A == (uintptr_t)fct) return my_GCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCallback_fct_##A == 0) {my_GCallback_fct_##A = (uintptr_t)fct; return my_GCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GCallback callback\n"); + return NULL; +} + +// GDBusSignalCallback +#define GO(A) \ +static uintptr_t my_GDBusSignalCallback_fct_##A = 0; \ +static void my_GDBusSignalCallback_##A(void* connection, void* sender, void* object, void* interface, void* signal, void* param, void* data) \ +{ \ + RunFunction(my_context, my_GDBusSignalCallback_fct_##A, 7, connection, sender, object, interface, signal, param, data);\ +} +SUPER() +#undef GO +static void* findGDBusSignalCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDBusSignalCallback_fct_##A == (uintptr_t)fct) return my_GDBusSignalCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDBusSignalCallback_fct_##A == 0) {my_GDBusSignalCallback_fct_##A = (uintptr_t)fct; return my_GDBusSignalCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GDBusSignalCallback callback\n"); + return NULL; +} + +// GDBusMessageFilterFunction +#define GO(A) \ +static uintptr_t my_GDBusMessageFilterFunction_fct_##A = 0; \ +static void my_GDBusMessageFilterFunction_##A(void* connection, void* message, int incoming, void* data) \ +{ \ + RunFunction(my_context, my_GDBusMessageFilterFunction_fct_##A, 4, connection, message, incoming, data);\ +} +SUPER() +#undef GO +static void* findGDBusMessageFilterFunctionFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDBusMessageFilterFunction_fct_##A == (uintptr_t)fct) return my_GDBusMessageFilterFunction_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDBusMessageFilterFunction_fct_##A == 0) {my_GDBusMessageFilterFunction_fct_##A = (uintptr_t)fct; return my_GDBusMessageFilterFunction_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GDBusMessageFilterFunction callback\n"); + return NULL; +} + +// GBusNameAppearedCallback +#define GO(A) \ +static uintptr_t my_GBusNameAppearedCallback_fct_##A = 0; \ +static void my_GBusNameAppearedCallback_##A(void* connection, void* name, void* owner, void* data) \ +{ \ + RunFunction(my_context, my_GBusNameAppearedCallback_fct_##A, 4, connection, name, owner, data); \ +} +SUPER() +#undef GO +static void* findGBusNameAppearedCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GBusNameAppearedCallback_fct_##A == (uintptr_t)fct) return my_GBusNameAppearedCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GBusNameAppearedCallback_fct_##A == 0) {my_GBusNameAppearedCallback_fct_##A = (uintptr_t)fct; return my_GBusNameAppearedCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GBusNameAppearedCallback callback\n"); + return NULL; +} + +// GBusNameVanishedCallback +#define GO(A) \ +static uintptr_t my_GBusNameVanishedCallback_fct_##A = 0; \ +static void my_GBusNameVanishedCallback_##A(void* connection, void* name, void* data) \ +{ \ + RunFunction(my_context, my_GBusNameVanishedCallback_fct_##A, 3, connection, name, data);\ +} +SUPER() +#undef GO +static void* findGBusNameVanishedCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GBusNameVanishedCallback_fct_##A == (uintptr_t)fct) return my_GBusNameVanishedCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GBusNameVanishedCallback_fct_##A == 0) {my_GBusNameVanishedCallback_fct_##A = (uintptr_t)fct; return my_GBusNameVanishedCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GBusNameVanishedCallback callback\n"); + return NULL; +} + +// GBusAcquiredCallback +#define GO(A) \ +static uintptr_t my_GBusAcquiredCallback_fct_##A = 0; \ +static void my_GBusAcquiredCallback_##A(void* connection, void* name, void* data) \ +{ \ + RunFunction(my_context, my_GBusAcquiredCallback_fct_##A, 3, connection, name, data);\ +} +SUPER() +#undef GO +static void* findGBusAcquiredCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GBusAcquiredCallback_fct_##A == (uintptr_t)fct) return my_GBusAcquiredCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GBusAcquiredCallback_fct_##A == 0) {my_GBusAcquiredCallback_fct_##A = (uintptr_t)fct; return my_GBusAcquiredCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GBusAcquiredCallback callback\n"); + return NULL; +} + +// GBusNameAcquiredCallback +#define GO(A) \ +static uintptr_t my_GBusNameAcquiredCallback_fct_##A = 0; \ +static void my_GBusNameAcquiredCallback_##A(void* connection, void* name, void* data) \ +{ \ + RunFunction(my_context, my_GBusNameAcquiredCallback_fct_##A, 3, connection, name, data);\ +} +SUPER() +#undef GO +static void* findGBusNameAcquiredCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GBusNameAcquiredCallback_fct_##A == (uintptr_t)fct) return my_GBusNameAcquiredCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GBusNameAcquiredCallback_fct_##A == 0) {my_GBusNameAcquiredCallback_fct_##A = (uintptr_t)fct; return my_GBusNameAcquiredCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GBusNameAcquiredCallback callback\n"); + return NULL; +} + +// GBusNameLostCallback +#define GO(A) \ +static uintptr_t my_GBusNameLostCallback_fct_##A = 0; \ +static void my_GBusNameLostCallback_##A(void* connection, void* name, void* data) \ +{ \ + RunFunction(my_context, my_GBusNameLostCallback_fct_##A, 3, connection, name, data);\ +} +SUPER() +#undef GO +static void* findGBusNameLostCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GBusNameLostCallback_fct_##A == (uintptr_t)fct) return my_GBusNameLostCallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_GBusNameLostCallback_fct_##A == 0) {my_GBusNameLostCallback_fct_##A = (uintptr_t)fct; return my_GBusNameLostCallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GBusNameLostCallback callback\n"); + return NULL; +} + +// GDBusInterfaceVTable.... +// First the structure GDBusInterfaceVTable statics, with paired x64 source pointer +typedef struct my_GDBusInterfaceVTable_s { + void (*method_call) (void* connection, void* sender, void* object_path, void* interface_name, void* method_name, void* invocation, void* user_data); + void* (*get_property) (void* connection, void* sender, void* object_path, void* interface_name, void* error, void* user_data); + int (*set_property) (void* connection, void* sender, void* object_path, void* interface_name, void* value, void* error, void* user_data); +} my_GDBusInterfaceVTable_t; + +#define GO(A) \ +static my_GDBusInterfaceVTable_t my_GDBusInterfaceVTable_##A = {0}; \ +static my_GDBusInterfaceVTable_t *ref_GDBusInterfaceVTable_##A = NULL; +SUPER() +#undef GO +// then the static functions callback that may be used with the structure, but dispatch also have a callback... +#define GO(A) \ +static uintptr_t fct_funcs_method_call_##A = 0; \ +static void my_funcs_method_call_##A(void* connection, void* sender, void* object_path, void* interface_name, void* method_name, void* invocation, void* user_data) { \ + RunFunction(my_context, fct_funcs_method_call_##A, 8, connection, sender, object_path, interface_name, method_name, invocation, user_data); \ +} \ +static uintptr_t fct_funcs_get_property_##A = 0; \ +static void* my_funcs_get_property_##A(void* connection, void* sender, void* object_path, void* interface_name, void* error, void* user_data) { \ + return (void*)RunFunction(my_context, fct_funcs_get_property_##A, 7, connection, sender, object_path, interface_name, error, user_data); \ +} \ +static uintptr_t fct_funcs_set_property_##A = 0; \ +static int my_funcs_set_property_##A(void* connection, void* sender, void* object_path, void* interface_name, void* value, void* error, void* user_data) { \ + return (int)RunFunction(my_context, fct_funcs_set_property_##A, 8, connection, sender, object_path, interface_name, value, error, user_data); \ +} + +SUPER() +#undef GO +// and now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +static my_GDBusInterfaceVTable_t* findFreeGDBusInterfaceVTable(my_GDBusInterfaceVTable_t* fcts) +{ + if(!fcts) return fcts; + #define GO(A) if(ref_GDBusInterfaceVTable_##A == fcts) return &my_GDBusInterfaceVTable_##A; + SUPER() + #undef GO + #define GO(A) if(ref_GDBusInterfaceVTable_##A == 0) { \ + ref_GDBusInterfaceVTable_##A = fcts; \ + my_GDBusInterfaceVTable_##A.method_call = (fcts->method_call)?((GetNativeFnc((uintptr_t)fcts->method_call))?GetNativeFnc((uintptr_t)fcts->method_call):my_funcs_method_call_##A):NULL; \ + fct_funcs_method_call_##A = (uintptr_t)fcts->method_call; \ + my_GDBusInterfaceVTable_##A.get_property = (fcts->get_property)?((GetNativeFnc((uintptr_t)fcts->get_property))?GetNativeFnc((uintptr_t)fcts->get_property):my_funcs_get_property_##A):NULL; \ + fct_funcs_get_property_##A = (uintptr_t)fcts->get_property; \ + my_GDBusInterfaceVTable_##A.set_property = (fcts->set_property)?((GetNativeFnc((uintptr_t)fcts->set_property))?GetNativeFnc((uintptr_t)fcts->set_property):my_funcs_set_property_##A):NULL; \ + fct_funcs_set_property_##A = (uintptr_t)fcts->set_property; \ + return &my_GDBusInterfaceVTable_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gio2 GDBusInterfaceVTable callback\n"); + return NULL; +} +#undef SUPER + +EXPORT void my_g_dbus_proxy_new(x64emu_t* emu, void* connection, int flags, void* info, void* name, void* path, void* interface, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_proxy_new(connection, flags, info, name, path, interface, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_proxy_new_for_bus(x64emu_t* emu, int bus_type, int flags, void* info, void* name, void* path, void* interface, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_proxy_new_for_bus(bus_type, flags, info, name, path, interface, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_proxy_call(x64emu_t* emu, void* proxy, void* name, void* param, int flags, int timeout, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_proxy_call(proxy, name, param, flags, timeout, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_proxy_call_with_unix_fd_list(x64emu_t* emu, void* proxy, void* name, void* param, int flags, int timeout, void* fd_list, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_proxy_call_with_unix_fd_list(proxy, name, param, flags, timeout, fd_list, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void* my_g_dbus_object_manager_client_new_for_bus_sync(x64emu_t* emu, int bus, int flags, void* name, void* path, void* cb, void* data, void* destroy, void* cancellable, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_dbus_object_manager_client_new_for_bus_sync(bus, flags, name, path, findGDBusProxyTypeFuncFct(cb), data, findGDestroyNotifyFct(destroy), cancellable, error); +} + +EXPORT void* my_g_simple_async_result_new(x64emu_t* emu, void* source, void* cb, void* data, void* tag) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_simple_async_result_new(source, findGAsyncReadyCallbackFct(cb), data, tag); +} + +EXPORT void* my_g_simple_async_result_new_error(x64emu_t* emu, void* source, void* cb, void* data, uint32_t domain, int code, void* fmt, va_list b) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + char* tmp; + int dummy = vasprintf(&tmp, fmt, b); + (void)dummy; + void* ret = my->g_simple_async_result_new_error(source, findGAsyncReadyCallbackFct(cb), data, domain, code, tmp); + free(tmp); + return ret; +} + +EXPORT void* my_g_simple_async_result_new_from_error(x64emu_t* emu, void* source, void* cb, void* data, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_simple_async_result_new_from_error(source, findGAsyncReadyCallbackFct(cb), data, error); +} + +EXPORT void* my_g_simple_async_result_new_take_error(x64emu_t* emu, void* source, void* cb, void* data, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_simple_async_result_new_take_error(source, findGAsyncReadyCallbackFct(cb), data, error); +} + +EXPORT void my_g_simple_async_result_set_op_res_gpointer(x64emu_t* emu, void* simple, void* op, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_simple_async_result_set_op_res_gpointer(simple, op, findGDestroyNotifyFct(notify)); +} + +EXPORT void my_g_simple_async_result_run_in_thread(x64emu_t* emu, void* simple, void* fnc, int priority, void* cancellable) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_simple_async_result_run_in_thread(simple, findGSimpleAsyncThreadFuncFct(fnc), priority, cancellable); +} + +EXPORT void my_g_simple_async_report_error_in_idle(x64emu_t* emu, void* object, void* cb, void* data, uint32_t domain, int code, void* fmt, va_list b) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + char* tmp; + int dummy = vasprintf(&tmp, fmt, b); + (void)dummy; + my->g_simple_async_report_error_in_idle(object, findGAsyncReadyCallbackFct(cb), data, domain, code, tmp); + free(tmp); +} + +EXPORT void my_g_simple_async_report_gerror_in_idle(x64emu_t* emu, void* object, void* cb, void* data, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_simple_async_report_gerror_in_idle(object, findGAsyncReadyCallbackFct(cb), data, error); +} + +EXPORT void my_g_simple_async_report_take_gerror_in_idle(x64emu_t* emu, void* object, void* cb, void* data, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_simple_async_report_take_gerror_in_idle(object, findGAsyncReadyCallbackFct(cb), data, error); +} + +EXPORT unsigned long my_g_cancellable_connect(x64emu_t* emu, void* cancellable, void* cb, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_cancellable_connect(cancellable, findGCallbackFct(cb), data, findGDestroyNotifyFct(notify)); +} + +EXPORT void my_g_async_initable_init_async(x64emu_t* emu, void* initable, int priority, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_async_initable_init_async(initable, priority, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_async_initable_new_valist_async(x64emu_t* emu, int type, void* first, x64_va_list_t var_args, int priority, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + CONVERT_VALIST(var_args); + my->g_async_initable_new_valist_async(type, first, VARARGS, priority, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_async_initable_new_async(x64emu_t* emu, int type, int priority, void* cancellable, void* cb, void* data, void* first, uintptr_t* V) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + CREATE_VALIST_FROM_VAARG(V, emu->scratch, 6); + my->g_async_initable_new_valist_async(type, first, VARARGS, priority, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_async_initable_newv_async(x64emu_t* emu, int type, uint32_t n, void* params, int priority, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_async_initable_newv_async(type, n, params, priority, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_bus_get(x64emu_t* emu, int type, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_bus_get(type, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_connection_new(x64emu_t* emu, void* stream, void* guid, int flags, void* observer, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_new(stream, guid, flags, observer, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_connection_new_for_address(x64emu_t* emu, void* address, int flags, void* observer, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_new_for_address(address, flags, observer, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_connection_close(x64emu_t* emu, void* connection, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_close(connection, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_connection_flush(x64emu_t* emu, void* connection, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_flush(connection, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT void my_g_dbus_connection_call(x64emu_t* emu, void* connection, void* bus, void* object, void* interface, void* method, void* param, void* reply, int flags, int timeout, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_call(connection, bus, object, interface, method, param, reply, flags, timeout, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT uint32_t my_g_dbus_connection_signal_subscribe(x64emu_t* emu, void* connection, void* sender, void* interface, void* member, void* object, void* arg0, int flags, void* cb, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_dbus_connection_signal_subscribe(connection, sender, interface, member, object, arg0, flags, findGDBusSignalCallbackFct(cb), data, findGDestroyNotifyFct(notify)); +} + +EXPORT void my_g_dbus_connection_send_message_with_reply(x64emu_t* emu, void* connection, void* message, int flags, int timeout, void* serial, void* cancellable, void* cb, void* data) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + my->g_dbus_connection_send_message_with_reply(connection, message, flags, timeout, serial, cancellable, findGAsyncReadyCallbackFct(cb), data); +} + +EXPORT uint32_t my_g_dbus_connection_add_filter(x64emu_t* emu, void* connection, void* cb, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_dbus_connection_add_filter(connection, findGDBusMessageFilterFunctionFct(cb), data, findGDestroyNotifyFct(notify)); +} + +EXPORT uint32_t my_g_dbus_connection_register_object(x64emu_t* emu, void* connection, void* object, void* info, my_GDBusInterfaceVTable_t* vtable, void* data, void* notify, void* error) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + + return my->g_dbus_connection_register_object(connection, object, info, findFreeGDBusInterfaceVTable(vtable), data, findGDestroyNotifyFct(notify), error); +} + +EXPORT uint32_t my_g_bus_watch_name(x64emu_t* emu, int type, void* name, int flags, void* appeared, void* vanished, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + // note that a mecanism with a new callback, cleaned with notify, is also possible here + return my->g_bus_watch_name(type, name, flags, findGBusNameAppearedCallbackFct(appeared), findGBusNameVanishedCallbackFct(vanished), data, findGDestroyNotifyFct(notify)); +} + +EXPORT uint32_t my_g_bus_watch_name_on_connection(x64emu_t* emu, void* connection, void* name, int flags, void* appeared, void* vanished, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + // note that a mecanism with a new callback, cleaned with notify, is also possible here + return my->g_bus_watch_name_on_connection(connection, name, flags, findGBusNameAppearedCallbackFct(appeared), findGBusNameVanishedCallbackFct(vanished), data, findGDestroyNotifyFct(notify)); +} + +EXPORT uint32_t my_g_bus_own_name(x64emu_t* emu, int type, void* name, int flags, void* bus_acquired, void* name_acquired, void* name_lost, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + // note that a mecanism with a new callback, cleaned with notify, is also possible here + return my->g_bus_own_name(type, name, flags, findGBusAcquiredCallbackFct(bus_acquired), findGBusNameAcquiredCallbackFct(name_acquired), findGBusNameLostCallbackFct(name_lost), data, findGDestroyNotifyFct(notify)); +} + +EXPORT uint32_t my_g_bus_own_name_on_connection(x64emu_t* emu, void* connection, void* name, int flags, void* name_acquired, void* name_lost, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gio2_my_t *my = (gio2_my_t*)lib->priv.w.p2; + // note that a mecanism with a new callback, cleaned with notify, is also possible here + return my->g_bus_own_name_on_connection(connection, name, flags, findGBusNameAcquiredCallbackFct(name_acquired), findGBusNameLostCallbackFct(name_lost), data, findGDestroyNotifyFct(notify)); +} + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + libname = lib->name; \ + lib->priv.w.p2 = getGio2My(lib); \ + lib->priv.w.needed = 1; \ + lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \ + lib->priv.w.neededlibs[0] = strdup("libgmodule-2.0.so.0"); + +#define CUSTOM_FINI \ + freeGio2My(lib->priv.w.p2); \ + free(lib->priv.w.p2); + +#include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedgio2_private.h b/src/wrapped/wrappedgio2_private.h new file mode 100755 index 00000000..957b95e7 --- /dev/null +++ b/src/wrapped/wrappedgio2_private.h @@ -0,0 +1,1889 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(_fini, +//GO(g_action_activate, +//GO(g_action_change_state, +//GO(g_action_get_enabled, +//GO(g_action_get_name, +//GO(g_action_get_parameter_type, +//GO(g_action_get_state, +//GO(g_action_get_state_hint, +//GO(g_action_get_state_type, +//GO(g_action_get_type, +//GO(g_action_group_action_added, +//GO(g_action_group_action_enabled_changed, +//GO(g_action_group_action_removed, +//GO(g_action_group_action_state_changed, +//GO(g_action_group_activate_action, +//GO(g_action_group_change_action_state, +//GO(g_action_group_get_action_enabled, +//GO(g_action_group_get_action_parameter_type, +//GO(g_action_group_get_action_state, +//GO(g_action_group_get_action_state_hint, +//GO(g_action_group_get_action_state_type, +//GO(g_action_group_get_type, +//GO(g_action_group_has_action, +//GO(g_action_group_list_actions, +//GO(g_action_group_query_action, +//GO(g_action_map_add_action, +//GO(g_action_map_add_action_entries, +//GO(g_action_map_get_type, +//GO(g_action_map_lookup_action, +//GO(g_action_map_remove_action, +//GO(g_action_name_is_valid, +//GO(g_action_parse_detailed_name, +//GO(g_action_print_detailed_name, +GO(g_app_info_add_supports_type, iFppp) +GO(g_app_info_can_delete, iFp) +GO(g_app_info_can_remove_supports_type, iFp) +GO(g_app_info_create_flags_get_type, iFv) +GO(g_app_info_create_from_commandline, pFppup) +GO(g_app_info_delete, iFp) +GO(g_app_info_dup, pFp) +GO(g_app_info_equal, iFpp) +GO(g_app_info_get_all, pFv) +GO(g_app_info_get_all_for_type, pFp) +GO(g_app_info_get_commandline, pFp) +GO(g_app_info_get_default_for_type, pFpp) +GO(g_app_info_get_default_for_uri_scheme, pFp) +GO(g_app_info_get_description, pFp) +GO(g_app_info_get_display_name, pFp) +GO(g_app_info_get_executable, pFp) +GO(g_app_info_get_fallback_for_type, pFp) +GO(g_app_info_get_icon, pFp) +GO(g_app_info_get_id, pFp) +GO(g_app_info_get_name, pFp) +GO(g_app_info_get_recommended_for_type, pFp) +GO(g_app_info_get_supported_types, pFp) +GO(g_app_info_get_type, iFv) +GO(g_app_info_launch, iFpppp) +GO(g_app_info_launch_default_for_uri, iFppp) +GO(g_app_info_launch_uris, iFpppp) +//GO(g_app_info_monitor_get, +GO(g_app_info_monitor_get_type, iFv) +GO(g_app_info_remove_supports_type, iFppp) +GO(g_app_info_reset_type_associations, vFp) +GO(g_app_info_set_as_default_for_extension, iFppp) +GO(g_app_info_set_as_default_for_type, iFppp) +GO(g_app_info_set_as_last_used_for_type, iFppp) +GO(g_app_info_should_show, iFp) +GO(g_app_info_supports_files, iFp) +GO(g_app_info_supports_uris, iFp) +//GO(g_app_launch_context_get_display, +//GO(g_app_launch_context_get_environment, +//GO(g_app_launch_context_get_startup_notify_id, +GO(g_app_launch_context_get_type, iFv) +//GO(g_app_launch_context_launch_failed, +//GO(g_app_launch_context_new, +//GO(g_app_launch_context_setenv, +//GO(g_app_launch_context_unsetenv, +//GO(g_application_activate, +//GO(g_application_add_main_option, +//GO(g_application_add_main_option_entries, +//GO(g_application_add_option_group, +//GO(g_application_command_line_create_file_for_arg, +//GO(g_application_command_line_get_arguments, +//GO(g_application_command_line_get_cwd, +//GO(g_application_command_line_getenv, +//GO(g_application_command_line_get_environ, +//GO(g_application_command_line_get_exit_status, +//GO(g_application_command_line_get_is_remote, +//GO(g_application_command_line_get_options_dict, +//GO(g_application_command_line_get_platform_data, +//GO(g_application_command_line_get_stdin, +//GO(g_application_command_line_get_type, +//GO(g_application_command_line_print, +//GO(g_application_command_line_printerr, +//GO(g_application_command_line_set_exit_status, +//GO(g_application_flags_get_type, +//GO(g_application_get_application_id, +//GO(g_application_get_dbus_connection, +//GO(g_application_get_dbus_object_path, +//GO(g_application_get_default, +//GO(g_application_get_flags, +//GO(g_application_get_inactivity_timeout, +//GO(g_application_get_is_registered, +//GO(g_application_get_is_remote, +//GO(g_application_get_resource_base_path, +//GO(g_application_get_type, +//GO(g_application_hold, +//GO(g_application_id_is_valid, +//GO(g_application_mark_busy, +//GO(g_application_new, +//GO(g_application_open, +//GO(g_application_quit, +//GO(g_application_register, +//GO(g_application_release, +//GO(g_application_run, +//GO(g_application_send_notification, +//GO(g_application_set_action_group, +//GO(g_application_set_application_id, +//GO(g_application_set_default, +//GO(g_application_set_flags, +//GO(g_application_set_inactivity_timeout, +//GO(g_application_set_resource_base_path, +//GO(g_application_unmark_busy, +//GO(g_application_withdraw_notification, +//GO(g_ask_password_flags_get_type, +GO(g_async_initable_get_type, iFv) +GOM(g_async_initable_init_async, vFEpippp) +GO(g_async_initable_init_finish, iFppp) +GOM(g_async_initable_new_async, vFEiippppV) +GO(g_async_initable_new_finish, pFppp) +GOM(g_async_initable_new_valist_async, vFEippippp) +GOM(g_async_initable_newv_async, vFEiupippp) +//GO(g_async_result_get_source_object, +//GO(g_async_result_get_type, +//GO(g_async_result_get_user_data, +//GO(g_async_result_is_tagged, +//GO(g_async_result_legacy_propagate_error, +//GO(g_buffered_input_stream_fill, +//GO(g_buffered_input_stream_fill_async, +//GO(g_buffered_input_stream_fill_finish, +//GO(g_buffered_input_stream_get_available, +//GO(g_buffered_input_stream_get_buffer_size, +//GO(g_buffered_input_stream_get_type, +//GO(g_buffered_input_stream_new, +//GO(g_buffered_input_stream_new_sized, +//GO(g_buffered_input_stream_peek, +//GO(g_buffered_input_stream_peek_buffer, +//GO(g_buffered_input_stream_read_byte, +//GO(g_buffered_input_stream_set_buffer_size, +//GO(g_buffered_output_stream_get_auto_grow, +//GO(g_buffered_output_stream_get_buffer_size, +//GO(g_buffered_output_stream_get_type, +//GO(g_buffered_output_stream_new, +//GO(g_buffered_output_stream_new_sized, +//GO(g_buffered_output_stream_set_auto_grow, +//GO(g_buffered_output_stream_set_buffer_size, +GOM(g_bus_get, vFEippp) +GO(g_bus_get_finish, pFpp) +GO(g_bus_get_sync, pFipp) +GO(g_bus_name_owner_flags_get_type, iFv) +GO(g_bus_name_watcher_flags_get_type, iFv) +GOM(g_bus_own_name, uFEipippppp) +GOM(g_bus_own_name_on_connection, uFEppipppp) +GO(g_bus_own_name_on_connection_with_closures, uFppipp) +GO(g_bus_own_name_with_closures, uFppippp) +GO(g_bus_type_get_type, iFv) +GO(g_bus_unown_name, vFu) +GO(g_bus_unwatch_name, vFu) +GOM(g_bus_watch_name, uFEipipppp) +GOM(g_bus_watch_name_on_connection, uFEppipppp) +GO(g_bus_watch_name_on_connection_with_closures, uFppipp) // mmm closure, wrapped or unwrapped? +GO(g_bus_watch_name_with_closures, uFipipp) +//GO(g_bytes_icon_get_bytes, +//GO(g_bytes_icon_get_type, +//GO(g_bytes_icon_new, +GO(g_cancellable_cancel, vFp) +GOM(g_cancellable_connect, LFEpppp) +GO(g_cancellable_disconnect, vFpL) +GO(g_cancellable_get_current, pFv) +GO(g_cancellable_get_fd, iFp) +GO(g_cancellable_get_type, iFv) +GO(g_cancellable_is_cancelled, iFp) +GO(g_cancellable_make_pollfd, iFpp) +GO(g_cancellable_new, pFv) +GO(g_cancellable_pop_current, vFp) +GO(g_cancellable_push_current, vFp) +GO(g_cancellable_release_fd, vFp) +GO(g_cancellable_reset, vFp) +GO(g_cancellable_set_error_if_cancelled, iFpp) +GO(g_cancellable_source_new, pFp) +//GO(g_charset_converter_get_num_fallbacks, +GO(g_charset_converter_get_type, iFv) +//GO(g_charset_converter_get_use_fallback, +//GO(g_charset_converter_new, +//GO(g_charset_converter_set_use_fallback, +GO(g_content_type_can_be_executable, iFp) +GO(g_content_type_equals, iFpp) +GO(g_content_type_from_mime_type, pFp) +GO(g_content_type_get_description, pFp) +GO(g_content_type_get_generic_icon_name, pFp) +GO(g_content_type_get_icon, pFp) +GO(g_content_type_get_mime_type, pFp) +GO(g_content_type_get_symbolic_icon, pFp) +GO(g_content_type_guess, pFppLp) +GO(g_content_type_guess_for_tree, pFp) +GO(g_content_type_is_a, iFpp) +GO(g_content_type_is_unknown, iFp) +GO(g_content_types_get_registered, pFv) +//GO(g_converter_convert, +//GO(g_converter_flags_get_type, +//GO(g_converter_get_type, +//GO(g_converter_input_stream_get_converter, +//GO(g_converter_input_stream_get_type, +//GO(g_converter_input_stream_new, +//GO(g_converter_output_stream_get_converter, +//GO(g_converter_output_stream_get_type, +//GO(g_converter_output_stream_new, +//GO(g_converter_reset, +//GO(g_converter_result_get_type, +//GO(g_credentials_get_native, +//GO(g_credentials_get_type, +//GO(g_credentials_get_unix_pid, +//GO(g_credentials_get_unix_user, +//GO(g_credentials_is_same_user, +//GO(g_credentials_new, +//GO(g_credentials_set_native, +//GO(g_credentials_set_unix_user, +//GO(g_credentials_to_string, +//GO(g_credentials_type_get_type, +//GO(g_data_input_stream_get_byte_order, +//GO(g_data_input_stream_get_newline_type, +//GO(g_data_input_stream_get_type, +//GO(g_data_input_stream_new, +//GO(g_data_input_stream_read_byte, +//GO(g_data_input_stream_read_int16, +//GO(g_data_input_stream_read_int32, +//GO(g_data_input_stream_read_int64, +//GO(g_data_input_stream_read_line, +//GO(g_data_input_stream_read_line_async, +//GO(g_data_input_stream_read_line_finish, +//GO(g_data_input_stream_read_line_finish_utf8, +//GO(g_data_input_stream_read_line_utf8, +//GO(g_data_input_stream_read_uint16, +//GO(g_data_input_stream_read_uint32, +//GO(g_data_input_stream_read_uint64, +//GO(g_data_input_stream_read_until, +//GO(g_data_input_stream_read_until_async, +//GO(g_data_input_stream_read_until_finish, +//GO(g_data_input_stream_read_upto, +//GO(g_data_input_stream_read_upto_async, +//GO(g_data_input_stream_read_upto_finish, +//GO(g_data_input_stream_set_byte_order, +//GO(g_data_input_stream_set_newline_type, +//GO(g_data_output_stream_get_byte_order, +//GO(g_data_output_stream_get_type, +//GO(g_data_output_stream_new, +//GO(g_data_output_stream_put_byte, +//GO(g_data_output_stream_put_int16, +//GO(g_data_output_stream_put_int32, +//GO(g_data_output_stream_put_int64, +//GO(g_data_output_stream_put_string, +//GO(g_data_output_stream_put_uint16, +//GO(g_data_output_stream_put_uint32, +//GO(g_data_output_stream_put_uint64, +//GO(g_data_output_stream_set_byte_order, +//GO(g_data_stream_byte_order_get_type, +//GO(g_data_stream_newline_type_get_type, +//GO(g_dbus_action_group_get, +//GO(g_dbus_action_group_get_type, +//GO(g_dbus_address_escape_value, +//GO(g_dbus_address_get_for_bus_sync, +//GO(g_dbus_address_get_stream, +//GO(g_dbus_address_get_stream_finish, +//GO(g_dbus_address_get_stream_sync, +GO(g_dbus_annotation_info_get_type, iFv) +GO(g_dbus_annotation_info_lookup, pFpp) +GO(g_dbus_annotation_info_ref, pFp) +GO(g_dbus_annotation_info_unref, vFp) +GO(g_dbus_arg_info_get_type, iFv) +GO(g_dbus_arg_info_ref, pFp) +GO(g_dbus_arg_info_unref, vFp) +//GO(g_dbus_auth_observer_allow_mechanism, +//GO(g_dbus_auth_observer_authorize_authenticated_peer, +//GO(g_dbus_auth_observer_get_type, +//GO(g_dbus_auth_observer_new, +GO(g_dbus_call_flags_get_type, iFv) +GO(g_dbus_capability_flags_get_type, iFv) +GOM(g_dbus_connection_add_filter, uFEpppp) +GOM(g_dbus_connection_call, vFEpppppppiippp) +GO(g_dbus_connection_call_finish, pFppp) +GO(g_dbus_connection_call_sync, pFpppppppiipp) +//GO(g_dbus_connection_call_with_unix_fd_list, +//GO(g_dbus_connection_call_with_unix_fd_list_finish, +//GO(g_dbus_connection_call_with_unix_fd_list_sync, +GOM(g_dbus_connection_close, vFEpppp) +GO(g_dbus_connection_close_finish, iFppp) +GO(g_dbus_connection_close_sync, iFppp) +GO(g_dbus_connection_emit_signal, iFppppppp) +//GO(g_dbus_connection_export_action_group, +//GO(g_dbus_connection_export_menu_model, +GO(g_dbus_connection_flags_get_type, iFv) +GOM(g_dbus_connection_flush, vFEpppp) +GO(g_dbus_connection_flush_finish, iFppp) +GO(g_dbus_connection_flush_sync, iFppp) +GO(g_dbus_connection_get_capabilities, iFp) +GO(g_dbus_connection_get_exit_on_close, iFp) +GO(g_dbus_connection_get_guid, pFp) +GO(g_dbus_connection_get_last_serial, uFp) +GO(g_dbus_connection_get_peer_credentials, pFp) +GO(g_dbus_connection_get_stream, pFp) +GO(g_dbus_connection_get_type, iFv) +GO(g_dbus_connection_get_unique_name, pFp) +GO(g_dbus_connection_is_closed, iFp) +GOM(g_dbus_connection_new, vFEppipppp) +GO(g_dbus_connection_new_finish, pFpp) +GOM(g_dbus_connection_new_for_address, vFEpipppp) +GO(g_dbus_connection_new_for_address_finish, pFpp) +GO(g_dbus_connection_new_for_address_sync, pFpippp) +GO(g_dbus_connection_new_sync, pFppippp) +GOM(g_dbus_connection_register_object, uFEppppppp) +//GOM(g_dbus_connection_register_subtree, uFEppppppp) // vtable need wrapping +GO(g_dbus_connection_remove_filter, vFpu) +GO(g_dbus_connection_send_message, iFppipp) //TODO: there is an argument as "volatile".. does that change anything??? +GOM(g_dbus_connection_send_message_with_reply, vFEppiipppp) //TODO: same volatile argument... +GO(g_dbus_connection_send_message_with_reply_finish, pFppp) +GO(g_dbus_connection_send_message_with_reply_sync, pFppiippp) //TODO: same volatile +GO(g_dbus_connection_set_exit_on_close, vFpi) +GOM(g_dbus_connection_signal_subscribe, uFEppppppippp) +GO(g_dbus_connection_signal_unsubscribe, vFpu) +GO(g_dbus_connection_start_message_processing, vFp) +//GO(g_dbus_connection_unexport_action_group, +//GO(g_dbus_connection_unexport_menu_model, +GO(g_dbus_connection_unregister_object, iFpu) +GO(g_dbus_connection_unregister_subtree, iFpu) +//GO(g_dbus_error_encode_gerror, +//GO(g_dbus_error_get_remote_error, +//GO(g_dbus_error_get_type, +//GO(g_dbus_error_is_remote_error, +//GO(g_dbus_error_new_for_dbus_error, +//GO(g_dbus_error_quark, +//GO(g_dbus_error_register_error, +//GO(g_dbus_error_register_error_domain, +//GO(g_dbus_error_set_dbus_error, +//GO(g_dbus_error_set_dbus_error_valist, +//GO(g_dbus_error_strip_remote_error, +//GO(g_dbus_error_unregister_error, +GO(g_dbus_generate_guid, pFv) +GO(g_dbus_gvalue_to_gvariant, pFpp) +GO(g_dbus_gvariant_to_gvalue, vFpp) +//GO(g_dbus_interface_dup_object, +//GO(g_dbus_interface_get_info, +//GO(g_dbus_interface_get_object, +//GO(g_dbus_interface_get_type, +GO(g_dbus_interface_info_cache_build, vFp) +GO(g_dbus_interface_info_cache_release, vFp) +GO(g_dbus_interface_info_generate_xml, vFpup) +GO(g_dbus_interface_info_get_type, iFv) +GO(g_dbus_interface_info_lookup_method, pFpp) +GO(g_dbus_interface_info_lookup_property, pFpp) +GO(g_dbus_interface_info_lookup_signal, pFpp) +GO(g_dbus_interface_info_ref, pFp) +GO(g_dbus_interface_info_unref, vFp) +//GO(g_dbus_interface_set_object, +//GO(g_dbus_interface_skeleton_export, +//GO(g_dbus_interface_skeleton_flags_get_type, +//GO(g_dbus_interface_skeleton_flush, +//GO(g_dbus_interface_skeleton_get_connection, +//GO(g_dbus_interface_skeleton_get_connections, +//GO(g_dbus_interface_skeleton_get_flags, +//GO(g_dbus_interface_skeleton_get_info, +//GO(g_dbus_interface_skeleton_get_object_path, +//GO(g_dbus_interface_skeleton_get_properties, +//GO(g_dbus_interface_skeleton_get_type, +//GO(g_dbus_interface_skeleton_get_vtable, +//GO(g_dbus_interface_skeleton_has_connection, +//GO(g_dbus_interface_skeleton_set_flags, +//GO(g_dbus_interface_skeleton_unexport, +//GO(g_dbus_interface_skeleton_unexport_from_connection, +GO(g_dbus_is_address, iFp) +GO(g_dbus_is_guid, iFp) +GO(g_dbus_is_interface_name, iFp) +GO(g_dbus_is_member_name, iFp) +GO(g_dbus_is_name, iFp) +GO(g_dbus_is_supported_address, iFpp) +GO(g_dbus_is_unique_name, iFp) +GO(g_dbus_menu_model_get, pFppp) +GO(g_dbus_menu_model_get_type, iFv) +GO(g_dbus_message_byte_order_get_type, iFv) +GO(g_dbus_message_bytes_needed, lFpLp) +GO(g_dbus_message_copy, pFpp) +GO(g_dbus_message_flags_get_type, iFv) +GO(g_dbus_message_get_arg0, pFp) +GO(g_dbus_message_get_body, pFp) +GO(g_dbus_message_get_byte_order, iFp) +GO(g_dbus_message_get_destination, pFp) +GO(g_dbus_message_get_error_name, pFp) +GO(g_dbus_message_get_flags, iFp) +GO(g_dbus_message_get_header, pFpi) +GO(g_dbus_message_get_header_fields, pFp) +GO(g_dbus_message_get_interface, pFp) +GO(g_dbus_message_get_locked, iFp) +GO(g_dbus_message_get_member, pFp) +GO(g_dbus_message_get_message_type, iFp) +GO(g_dbus_message_get_num_unix_fds, uFp) +GO(g_dbus_message_get_path, pFp) +GO(g_dbus_message_get_reply_serial, uFp) +GO(g_dbus_message_get_sender, pFp) +GO(g_dbus_message_get_serial, uFp) +GO(g_dbus_message_get_signature, pFp) +GO(g_dbus_message_get_type, iFv) +GO(g_dbus_message_get_unix_fd_list, pFp) +GO(g_dbus_message_header_field_get_type, iFv) +GO(g_dbus_message_lock, vFp) +GO(g_dbus_message_new, pFv) +GO(g_dbus_message_new_from_blob, pFpLip) +GO(g_dbus_message_new_method_call, pFpppp) +//GO2(g_dbus_message_new_method_error, pFpppV, g_dbus_message_new_method_error_valist) +GO(g_dbus_message_new_method_error_literal, pFppp) +//GO(g_dbus_message_new_method_error_valist, pFpppp) +GO(g_dbus_message_new_method_reply, pFp) +GO(g_dbus_message_new_signal, pFppp) +GO(g_dbus_message_print, pFpu) +GO(g_dbus_message_set_body, vFpp) +GO(g_dbus_message_set_byte_order, iFp) +GO(g_dbus_message_set_destination, vFpp) +GO(g_dbus_message_set_error_name, vFpp) +GO(g_dbus_message_set_flags, vFpi) +GO(g_dbus_message_set_header, vFpip) +GO(g_dbus_message_set_interface, vFpp) +GO(g_dbus_message_set_member, vFpp) +GO(g_dbus_message_set_message_type, vFpi) +GO(g_dbus_message_set_num_unix_fds, vFpu) +GO(g_dbus_message_set_path, vFpp) +GO(g_dbus_message_set_reply_serial, vFpu) +GO(g_dbus_message_set_sender, vFpp) +GO(g_dbus_message_set_serial, vFpu) +GO(g_dbus_message_set_signature, vFpp) +GO(g_dbus_message_set_unix_fd_list, vFpp) +GO(g_dbus_message_to_blob, pFppip) +GO(g_dbus_message_to_gerror, iFpp) +GO(g_dbus_message_type_get_type, iFv) +GO(g_dbus_method_info_get_type, iFv) +GO(g_dbus_method_info_ref, pFp) +GO(g_dbus_method_info_unref, vFp) +GO(g_dbus_method_invocation_get_connection, pFp) +GO(g_dbus_method_invocation_get_interface_name, pFp) +GO(g_dbus_method_invocation_get_message, pFp) +GO(g_dbus_method_invocation_get_method_info, pFp) +GO(g_dbus_method_invocation_get_method_name, pFp) +GO(g_dbus_method_invocation_get_object_path, pFp) +GO(g_dbus_method_invocation_get_parameters, pFp) +GO(g_dbus_method_invocation_get_property_info, pFp) +GO(g_dbus_method_invocation_get_sender, pFp) +GO(g_dbus_method_invocation_get_type, iFv) +GO(g_dbus_method_invocation_get_user_data, pFp) +GO(g_dbus_method_invocation_return_dbus_error, vFppp) +//GO2(g_dbus_method_invocation_return_error, vFpuipV, g_dbus_method_invocation_return_error_valist) +GO(g_dbus_method_invocation_return_error_literal, vFpuip) +//GO(g_dbus_method_invocation_return_error_valist, vFpuipp) +GO(g_dbus_method_invocation_return_gerror, vFpp) +GO(g_dbus_method_invocation_return_value, vFpp) +GO(g_dbus_method_invocation_return_value_with_unix_fd_list, vFppp) +GO(g_dbus_method_invocation_take_error, vFpp) +GO(g_dbus_node_info_generate_xml, vFpup) +GO(g_dbus_node_info_get_type, iFv) +GO(g_dbus_node_info_lookup_interface, pFpp) +GO(g_dbus_node_info_new_for_xml, pFpp) +GO(g_dbus_node_info_ref, pFp) +GO(g_dbus_node_info_unref, vFp) +GO(g_dbus_object_get_interface, pFpp) +GO(g_dbus_object_get_interfaces, pFp) +GO(g_dbus_object_get_object_path, pFp) +GO(g_dbus_object_get_type, iFv) +GO(g_dbus_object_manager_client_flags_get_type, iFv) +GO(g_dbus_object_manager_client_get_connection, pFp) +GO(g_dbus_object_manager_client_get_flags, iFp) +GO(g_dbus_object_manager_client_get_name, pFp) +GO(g_dbus_object_manager_client_get_name_owner, pFp) +GO(g_dbus_object_manager_client_get_type, iFv) +//GOM(g_dbus_object_manager_client_new, +GO(g_dbus_object_manager_client_new_finish, pFpp) +//GOM(g_dbus_object_manager_client_new_for_bus, +GO(g_dbus_object_manager_client_new_for_bus_finish, pFpp) +GOM(g_dbus_object_manager_client_new_for_bus_sync, pFEiippppppp) +//GOM(g_dbus_object_manager_client_new_sync, +//GOM(g_dbus_object_manager_get_interface, pFEppp) //struct GDBusObjectManagerIface is full of callbacks +GO(g_dbus_object_manager_get_object, pFpp) +GO(g_dbus_object_manager_get_object_path, pFp) +GO(g_dbus_object_manager_get_objects, pFp) +//GO(g_dbus_object_manager_get_type, +//GO(g_dbus_object_manager_server_export, +//GO(g_dbus_object_manager_server_export_uniquely, +//GO(g_dbus_object_manager_server_get_connection, +//GO(g_dbus_object_manager_server_get_type, +//GO(g_dbus_object_manager_server_is_exported, +//GO(g_dbus_object_manager_server_new, +//GO(g_dbus_object_manager_server_set_connection, +//GO(g_dbus_object_manager_server_unexport, +//GO(g_dbus_object_proxy_get_connection, +//GO(g_dbus_object_proxy_get_type, +//GO(g_dbus_object_proxy_new, +//GO(g_dbus_object_skeleton_add_interface, +//GO(g_dbus_object_skeleton_flush, +//GO(g_dbus_object_skeleton_get_type, +//GO(g_dbus_object_skeleton_new, +//GO(g_dbus_object_skeleton_remove_interface, +//GO(g_dbus_object_skeleton_remove_interface_by_name, +//GO(g_dbus_object_skeleton_set_object_path, +//GO(g_dbus_property_info_flags_get_type, +GO(g_dbus_property_info_get_type, iFv) +GO(g_dbus_property_info_ref, pFp) +GO(g_dbus_property_info_unref, vFp) +GOM(g_dbus_proxy_call, vFEpppiippp) +GO(g_dbus_proxy_call_finish, pFppp) +GO(g_dbus_proxy_call_sync, pFpppiipp) +GOM(g_dbus_proxy_call_with_unix_fd_list, vFEpppiipppp) +GO(g_dbus_proxy_call_with_unix_fd_list_finish, pFpppp) +GO(g_dbus_proxy_call_with_unix_fd_list_sync, pFpppiipppp) +GO(g_dbus_proxy_flags_get_type, iFv) +GO(g_dbus_proxy_get_cached_property, pFpp) +GO(g_dbus_proxy_get_cached_property_names, pFp) +GO(g_dbus_proxy_get_connection, pFp) +GO(g_dbus_proxy_get_default_timeout, iFp) +GO(g_dbus_proxy_get_flags, iFp) +GO(g_dbus_proxy_get_interface_info, pFp) +GO(g_dbus_proxy_get_interface_name, pFp) +GO(g_dbus_proxy_get_name, pFp) +GO(g_dbus_proxy_get_name_owner, pFp) +GO(g_dbus_proxy_get_object_path, pFp) +GO(g_dbus_proxy_get_type, iFv) +GOM(g_dbus_proxy_new, vFEpippppppp) +GO(g_dbus_proxy_new_finish, pFpp) +GOM(g_dbus_proxy_new_for_bus, vFEiippppppp) +GO(g_dbus_proxy_new_for_bus_finish, pFpp) +GO(g_dbus_proxy_new_for_bus_sync, pFiipppppp) +GO(g_dbus_proxy_new_sync, pFpipppppp) +GO(g_dbus_proxy_set_cached_property, vFppp) +GO(g_dbus_proxy_set_default_timeout, vFpi) +GO(g_dbus_proxy_set_interface_info, vFpp) +//GO(g_dbus_send_message_flags_get_type, +//GO(g_dbus_server_flags_get_type, +//GO(g_dbus_server_get_client_address, +//GO(g_dbus_server_get_flags, +//GO(g_dbus_server_get_guid, +//GO(g_dbus_server_get_type, +//GO(g_dbus_server_is_active, +//GO(g_dbus_server_new_sync, +//GO(g_dbus_server_start, +//GO(g_dbus_server_stop, +//GO(g_dbus_signal_flags_get_type, +GO(g_dbus_signal_info_get_type, iFv) +GO(g_dbus_signal_info_ref, pFp) +GO(g_dbus_signal_info_unref, vFp) +GO(g_dbus_subtree_flags_get_type, iFv) +//GO(g_desktop_app_info_get_action_name, +//GO(g_desktop_app_info_get_boolean, +GO(g_desktop_app_info_get_categories, pFp) +GO(g_desktop_app_info_get_filename, pFp) +GO(g_desktop_app_info_get_generic_name, pFp) +//GO(g_desktop_app_info_get_implementations, +GO(g_desktop_app_info_get_is_hidden, iFp) +GO(g_desktop_app_info_get_keywords, pFp) +GO(g_desktop_app_info_get_nodisplay, iFp) +GO(g_desktop_app_info_get_show_in, iFpp) +//GO(g_desktop_app_info_get_startup_wm_class, +//GO(g_desktop_app_info_get_string, +GO(g_desktop_app_info_get_type, iFv) +//GO(g_desktop_app_info_has_key, +//GO(g_desktop_app_info_launch_action, +//GO(g_desktop_app_info_launch_uris_as_manager, +//GO(g_desktop_app_info_list_actions, +//GO(g_desktop_app_info_lookup_get_default_for_uri_scheme, +GO(g_desktop_app_info_lookup_get_type, iFv) +GO(g_desktop_app_info_new, pFp) +GO(g_desktop_app_info_new_from_filename, pFp) +GO(g_desktop_app_info_new_from_keyfile, pFp) +//GO(g_desktop_app_info_search, +GO(g_desktop_app_info_set_desktop_env, vFp) +//GO(g_drive_can_eject, +//GO(g_drive_can_poll_for_media, +//GO(g_drive_can_start, +//GO(g_drive_can_start_degraded, +//GO(g_drive_can_stop, +//GO(g_drive_eject, +//GO(g_drive_eject_finish, +//GO(g_drive_eject_with_operation, +//GO(g_drive_eject_with_operation_finish, +//GO(g_drive_enumerate_identifiers, +//GO(g_drive_get_icon, +//GO(g_drive_get_identifier, +//GO(g_drive_get_name, +//GO(g_drive_get_sort_key, +//GO(g_drive_get_start_stop_type, +//GO(g_drive_get_symbolic_icon, +//GO(g_drive_get_type, +//GO(g_drive_get_volumes, +//GO(g_drive_has_media, +//GO(g_drive_has_volumes, +//GO(g_drive_is_media_check_automatic, +//GO(g_drive_is_media_removable, +//GO(g_drive_poll_for_media, +//GO(g_drive_poll_for_media_finish, +//GO(g_drive_start, +//GO(g_drive_start_finish, +//GO(g_drive_start_flags_get_type, +//GO(g_drive_start_stop_type_get_type, +//GO(g_drive_stop, +//GO(g_drive_stop_finish, +//GO(g_emblemed_icon_add_emblem, +//GO(g_emblemed_icon_clear_emblems, +//GO(g_emblemed_icon_get_emblems, +//GO(g_emblemed_icon_get_icon, +//GO(g_emblemed_icon_get_type, +//GO(g_emblemed_icon_new, +//GO(g_emblem_get_icon, +//GO(g_emblem_get_origin, +//GO(g_emblem_get_type, +//GO(g_emblem_new, +//GO(g_emblem_new_with_origin, +//GO(g_emblem_origin_get_type, +GO(g_file_append_to, pFpipp) +//GOM(g_file_append_to_async, vFEpiipBp) +GO(g_file_append_to_finish, pFppp) +//GO(g_file_attribute_info_flags_get_type, +//GO(g_file_attribute_info_list_add, +//GO(g_file_attribute_info_list_dup, +//GO(g_file_attribute_info_list_get_type, +//GO(g_file_attribute_info_list_lookup, +//GO(g_file_attribute_info_list_new, +//GO(g_file_attribute_info_list_ref, +//GO(g_file_attribute_info_list_unref, +//GO(g_file_attribute_matcher_enumerate_namespace, +//GO(g_file_attribute_matcher_enumerate_next, +//GO(g_file_attribute_matcher_get_type, +//GO(g_file_attribute_matcher_matches, +//GO(g_file_attribute_matcher_matches_only, +//GO(g_file_attribute_matcher_new, +//GO(g_file_attribute_matcher_ref, +//GO(g_file_attribute_matcher_subtract, +//GO(g_file_attribute_matcher_to_string, +//GO(g_file_attribute_matcher_unref, +//GO(g_file_attribute_status_get_type, +//GO(g_file_attribute_type_get_type, +//GOM(g_file_copy, iFEppipBpp) +//GOM(g_file_copy_async, vFEppiipBpBp) +GO(g_file_copy_attributes, iFppipp) +GO(g_file_copy_finish, iFppp) +GO(g_file_copy_flags_get_type, iFv) +GO(g_file_create, pFpipp) +//GOM(g_file_create_async, vFEpiipBp) +GO(g_file_create_finish, pFppp) +GO(g_file_create_flags_get_type, iFv) +GO(g_file_create_readwrite, pFpipp) +//GOM(g_file_create_readwrite_async, vFEpiipBp) +GO(g_file_create_readwrite_finish, pFppp) +GO(g_file_delete, iFppp) +//GOM(g_file_delete_async, vFEpipBp) +GO(g_file_delete_finish, pFppp) +//GO(g_file_descriptor_based_get_fd, +//GO(g_file_descriptor_based_get_type, +GO(g_file_dup, pFp) +//GOM(g_file_eject_mountable, vFEpipBp) +GO(g_file_eject_mountable_finish, iFppp) +//GOM(g_file_eject_mountable_with_operation, vFpippBp) +GO(g_file_eject_mountable_with_operation_finish, iFppp) +GO(g_file_enumerate_children, pFppipp) +//GOM(g_file_enumerate_children_async, vFppiipBp) +GO(g_file_enumerate_children_finish, pFppp) +//GO(g_file_enumerator_close, +//GO(g_file_enumerator_close_async, +//GO(g_file_enumerator_close_finish, +//GO(g_file_enumerator_get_child, +//GO(g_file_enumerator_get_container, +//GO(g_file_enumerator_get_type, +//GO(g_file_enumerator_has_pending, +//GO(g_file_enumerator_is_closed, +//GO(g_file_enumerator_next_file, +//GO(g_file_enumerator_next_files_async, +//GO(g_file_enumerator_next_files_finish, +//GO(g_file_enumerator_set_pending, +GO(g_file_equal, iFpp) +GO(g_file_find_enclosing_mount, pFppp) +//GOM(g_file_find_enclosing_mount_async, vFEpipBp) +GO(g_file_find_enclosing_mount_finish, pFppp) +GO(g_file_get_basename, pFp) +GO(g_file_get_child, pFpp) +GO(g_file_get_child_for_display_name, pFppp) +GO(g_file_get_parent, pFp) +GO(g_file_get_parse_name, pFp) +GO(g_file_get_path, pFp) +GO(g_file_get_relative_path, pFpp) +GO(g_file_get_type, iFv) +GO(g_file_get_uri, pFp) +GO(g_file_get_uri_scheme, pFp) +GO(g_file_hash, uFp) +GO(g_file_has_parent, iFpp) +GO(g_file_has_prefix, iFpp) +GO(g_file_has_uri_scheme, iFpp) +GO(g_file_icon_get_file, pFp) +GO(g_file_icon_get_type, iFv) +GO(g_file_icon_new, pFp) +//GO(g_file_info_clear_status, +//GO(g_file_info_copy_into, +//GO(g_file_info_dup, +//GO(g_file_info_get_attribute_as_string, +//GO(g_file_info_get_attribute_boolean, +//GO(g_file_info_get_attribute_byte_string, +//GO(g_file_info_get_attribute_data, +//GO(g_file_info_get_attribute_int32, +//GO(g_file_info_get_attribute_int64, +//GO(g_file_info_get_attribute_object, +//GO(g_file_info_get_attribute_status, +//GO(g_file_info_get_attribute_string, +//GO(g_file_info_get_attribute_stringv, +//GO(g_file_info_get_attribute_type, +//GO(g_file_info_get_attribute_uint32, +//GO(g_file_info_get_attribute_uint64, +//GO(g_file_info_get_content_type, +//GO(g_file_info_get_deletion_date, +//GO(g_file_info_get_display_name, +//GO(g_file_info_get_edit_name, +//GO(g_file_info_get_etag, +//GO(g_file_info_get_file_type, +//GO(g_file_info_get_icon, +//GO(g_file_info_get_is_backup, +//GO(g_file_info_get_is_hidden, +//GO(g_file_info_get_is_symlink, +//GO(g_file_info_get_modification_time, +//GO(g_file_info_get_name, +//GO(g_file_info_get_size, +//GO(g_file_info_get_sort_order, +//GO(g_file_info_get_symbolic_icon, +//GO(g_file_info_get_symlink_target, +//GO(g_file_info_get_type, +//GO(g_file_info_has_attribute, +//GO(g_file_info_has_namespace, +//GO(g_file_info_list_attributes, +//GO(g_file_info_new, +//GO(g_file_info_remove_attribute, +//GO(g_file_info_set_attribute, +//GO(g_file_info_set_attribute_boolean, +//GO(g_file_info_set_attribute_byte_string, +//GO(g_file_info_set_attribute_int32, +//GO(g_file_info_set_attribute_int64, +//GO(g_file_info_set_attribute_mask, +//GO(g_file_info_set_attribute_object, +//GO(g_file_info_set_attribute_status, +//GO(g_file_info_set_attribute_string, +//GO(g_file_info_set_attribute_stringv, +//GO(g_file_info_set_attribute_uint32, +//GO(g_file_info_set_attribute_uint64, +//GO(g_file_info_set_content_type, +//GO(g_file_info_set_display_name, +//GO(g_file_info_set_edit_name, +//GO(g_file_info_set_file_type, +//GO(g_file_info_set_icon, +//GO(g_file_info_set_is_hidden, +//GO(g_file_info_set_is_symlink, +//GO(g_file_info_set_modification_time, +//GO(g_file_info_set_name, +//GO(g_file_info_set_size, +//GO(g_file_info_set_sort_order, +//GO(g_file_info_set_symbolic_icon, +//GO(g_file_info_set_symlink_target, +//GO(g_file_info_unset_attribute_mask, +//GO(g_file_input_stream_get_type, +//GO(g_file_input_stream_query_info, +//GO(g_file_input_stream_query_info_async, +//GO(g_file_input_stream_query_info_finish, +//GO(g_file_io_stream_get_etag, +//GO(g_file_io_stream_get_type, +//GO(g_file_io_stream_query_info, +//GO(g_file_io_stream_query_info_async, +//GO(g_file_io_stream_query_info_finish, +GO(g_file_is_native, iFpp) +GO(g_file_load_bytes, pFpppp) //sice 2.56+ +//GOM(g_file_load_bytes_async, vFEppBp) //since 2.56+ +GO(g_file_load_bytes_finish, pFpppp) //since 2.56+ +GO(g_file_load_contents, iFpppppp) +//GOM(g_file_load_contents_async, vFEppBp) +GO(g_file_load_contents_finish, iFpppppp) +//GOM(g_file_load_partial_contents_async, vFppBBp) +GO(g_file_load_partial_contents_finish, iFpppppp) +GO(g_file_make_directory, iFppp) +//GOM(g_file_make_directory_async, vFEpipBp) +GO(g_file_make_directory_finish, iFppp) +GO(g_file_make_directory_with_parents, iFppp) +GO(g_file_make_symbolic_link, iFpppp) +//GOM(g_file_measure_disk_usage, iFEpipBppppp) +//GOM(g_file_measure_disk_usage_async, vFEpiipBpBp) +GO(g_file_measure_disk_usage_finish, iFpppppp) +//GO(g_file_measure_flags_get_type, +GO(g_file_monitor, pFpipp) +//GO(g_file_monitor_cancel, +GO(g_file_monitor_directory, pFpipp) +//GO(g_file_monitor_emit_event, +//GO(g_file_monitor_event_get_type, +GO(g_file_monitor_file, pFpipp) +//GO(g_file_monitor_flags_get_type, +//GO(g_file_monitor_get_type, +//GO(g_file_monitor_is_cancelled, +//GO(g_file_monitor_set_rate_limit, +//GOM(g_file_mount_enclosing_volume, vFEpippBp) +GO(g_file_mount_enclosing_volume_finish, iFppp) +//GOM(g_file_mount_mountable, vFEpippBp) +GO(g_file_mount_mountable_finish, pFppp) +//GOM(g_file_move, iFEppipBpp) +//GO(g_filename_completer_get_completions, +//GO(g_filename_completer_get_completion_suffix, +//GO(g_filename_completer_get_type, +//GO(g_filename_completer_new, +//GO(g_filename_completer_set_dirs_only, +GO(g_file_new_build_filename, pFppppppppppp) // vaarg, since v2.56+ +GO(g_file_new_for_commandline_arg, pFp) +GO(g_file_new_for_commandline_arg_and_cwd, pFpp) +GO(g_file_new_for_path, pFp) +GO(g_file_new_for_uri, pFp) +GO(g_file_new_tmp, pFppp) +GO(g_file_open_readwrite, pFppp) +//GOM(g_file_open_readwrite_async, vFEpipBp) +GO(g_file_open_readwrite_finish, pFppp) +//GO(g_file_output_stream_get_etag, +//GO(g_file_output_stream_get_type, +//GO(g_file_output_stream_query_info, +//GO(g_file_output_stream_query_info_async, +//GO(g_file_output_stream_query_info_finish, +GO(g_file_parse_name, pFp) +GO(g_file_peek_path , pFp) // sice 2.56+ +//GOM(g_file_poll_mountable, vFEppBp) +GO(g_file_poll_mountable_finish, iFppp) +GO(g_file_query_default_handler, pFppp) +//GOMg_file_query_default_handler_async, vFEpipBp) //since 2.60+ +GO(g_file_query_default_handler_finish, pFppp) //since 2.60+ +GO(g_file_query_exists, iFpp) +GO(g_file_query_filesystem_info, pFpppp) +//GOM(g_file_query_filesystem_info_async, vFEppipBp) +GO(g_file_query_filesystem_info_finish, pFppp) +GO(g_file_query_file_type, iFpip) +GO(g_file_query_info, pFppipp) +//GOM(g_file_query_info_async, vFEppiipBp) +GO(g_file_query_info_finish, pFppp) +//GO(g_file_query_info_flags_get_type, +GO(g_file_query_settable_attributes, pFppp) +GO(g_file_query_writable_namespaces, pFppp) +GO(g_file_read, pFppp) +//GOM(g_file_read_async, vFEpipBp) +GO(g_file_read_finish, pFppp) +GO(g_file_replace, pFppiipp) +//GOM(g_file_replace_async, vFEppiiipBp) +GO(g_file_replace_contents, iFppLpiippp) +//GOM(g_file_replace_contents_async, vFEppLpuupBp) +//GOM(g_file_replace_contents_bytes_async, vFEpppiipBp) +GO(g_file_replace_contents_finish, iFpppp) +//GO(g_file_replace_finish, +GO(g_file_replace_readwrite, pFppiipp) +//GOM(g_file_replace_readwrite_async, vFEppiiipBp) +GO(g_file_replace_readwrite_finish, pFppp) +GO(g_file_resolve_relative_path, pFpp) +GO(g_file_set_attribute, iFppipipp) +GO(g_file_set_attribute_byte_string, iFpppipp) +GO(g_file_set_attribute_int32, iFppiipp) +GO(g_file_set_attribute_int64, iFppIipp) +//GOM(g_file_set_attributes_async, vFEppiipBp) +GO(g_file_set_attributes_finish, iFpppp) +GO(g_file_set_attributes_from_info, iFppipp) +GO(g_file_set_attribute_string, iFpppipp) +GO(g_file_set_attribute_uint32, iFppuipp) +GO(g_file_set_attribute_uint64, iFppUipp) +GO(g_file_set_display_name, pFpppp) +//GOM(g_file_set_display_name_async, vFEppipBp) +GO(g_file_set_display_name_finish, pFppp) +//GOM(g_file_start_mountable, vFEpippBp) +GO(g_file_start_mountable_finish, iFppp) +//GOM(g_file_stop_mountable, vFpippBp) +GO(g_file_stop_mountable_finish, iFppp) +GO(g_file_supports_thread_contexts, iFp) +//GO(g_filesystem_preview_type_get_type, +GO(g_file_trash, iFppp) +//GOM(g_file_trash_async, vFEpipBp) +GO(g_file_trash_finish, pFppp) +GO(g_file_type_get_type, iFv) +//GOM(g_file_unmount_mountable, vFEpipBp) +GO(g_file_unmount_mountable_finish, iFppp) +//GOM(g_file_unmount_mountable_with_operation, vFEpippBp) +GO(g_file_unmount_mountable_with_operation_finish, iFppp) +//GO(g_filter_input_stream_get_base_stream, +//GO(g_filter_input_stream_get_close_base_stream, +//GO(g_filter_input_stream_get_type, +//GO(g_filter_input_stream_set_close_base_stream, +//GO(g_filter_output_stream_get_base_stream, +//GO(g_filter_output_stream_get_close_base_stream, +//GO(g_filter_output_stream_get_type, +//GO(g_filter_output_stream_set_close_base_stream, +GO(g_icon_deserialize, pFp) +GO(g_icon_equal, iFpp) +//GO(g_icon_get_type, +GO(g_icon_hash, uFp) +GO(g_icon_new_for_string, pFpp) +GO(g_icon_serialize, pFp) +GO(g_icon_to_string, pFp) +//GO(g_inet_address_equal, +//GO(g_inet_address_get_family, +//GO(g_inet_address_get_is_any, +//GO(g_inet_address_get_is_link_local, +//GO(g_inet_address_get_is_loopback, +//GO(g_inet_address_get_is_mc_global, +//GO(g_inet_address_get_is_mc_link_local, +//GO(g_inet_address_get_is_mc_node_local, +//GO(g_inet_address_get_is_mc_org_local, +//GO(g_inet_address_get_is_mc_site_local, +//GO(g_inet_address_get_is_multicast, +//GO(g_inet_address_get_is_site_local, +//GO(g_inet_address_get_native_size, +//GO(g_inet_address_get_type, +//GO(g_inet_address_mask_equal, +//GO(g_inet_address_mask_get_address, +//GO(g_inet_address_mask_get_family, +//GO(g_inet_address_mask_get_length, +//GO(g_inet_address_mask_get_type, +//GO(g_inet_address_mask_matches, +//GO(g_inet_address_mask_new, +//GO(g_inet_address_mask_new_from_string, +//GO(g_inet_address_mask_to_string, +//GO(g_inet_address_new_any, +//GO(g_inet_address_new_from_bytes, +//GO(g_inet_address_new_from_string, +//GO(g_inet_address_new_loopback, +//GO(g_inet_address_to_bytes, +//GO(g_inet_address_to_string, +//GO(g_inet_socket_address_get_address, +//GO(g_inet_socket_address_get_flowinfo, +//GO(g_inet_socket_address_get_port, +//GO(g_inet_socket_address_get_scope_id, +//GO(g_inet_socket_address_get_type, +//GO(g_inet_socket_address_new, +//GO(g_inet_socket_address_new_from_string, +GO(g_initable_get_type, iFv) +GO(g_initable_init, iFppp) +//GO(g_initable_new, pFippppppppppppppp) // vaarg, should vrap with g_initable_new_valist +GO(g_initable_newv, pFpippp) +//GO(g_initable_new_valist, pFipppp) +//GO(g_input_stream_clear_pending, +//GO(g_input_stream_close, +//GO(g_input_stream_close_async, +//GO(g_input_stream_close_finish, +//GO(g_input_stream_get_type, +//GO(g_input_stream_has_pending, +//GO(g_input_stream_is_closed, +//GO(g_input_stream_read, +//GO(g_input_stream_read_all, +//GO(g_input_stream_read_async, +//GO(g_input_stream_read_bytes, +//GO(g_input_stream_read_bytes_async, +//GO(g_input_stream_read_bytes_finish, +//GO(g_input_stream_read_finish, +//GO(g_input_stream_set_pending, +//GO(g_input_stream_skip, +//GO(g_input_stream_skip_async, +//GO(g_input_stream_skip_finish, +//GO(g_io_error_enum_get_type, +//GO(g_io_error_from_errno, +//GO(g_io_error_quark, +//GO(g_io_extension_get_name, +//GO(g_io_extension_get_priority, +//GO(g_io_extension_get_type, +//GO(g_io_extension_point_get_extension_by_name, +//GO(g_io_extension_point_get_extensions, +//GO(g_io_extension_point_get_required_type, +//GO(g_io_extension_point_implement, +//GO(g_io_extension_point_lookup, +//GO(g_io_extension_point_register, +//GO(g_io_extension_point_set_required_type, +//GO(g_io_extension_ref_class, +//GO(g_io_module_get_type, +//GO(g_io_module_new, +//GO(g_io_module_scope_block, +//GO(g_io_module_scope_flags_get_type, +//GO(g_io_module_scope_free, +//GO(g_io_module_scope_new, +//GO(g_io_modules_load_all_in_directory, +//GO(g_io_modules_load_all_in_directory_with_scope, +//GO(g_io_modules_scan_all_in_directory, +//GO(g_io_modules_scan_all_in_directory_with_scope, +//GO(g_io_scheduler_cancel_all_jobs, +//GO(g_io_scheduler_job_send_to_mainloop, +//GO(g_io_scheduler_job_send_to_mainloop_async, +//GO(g_io_scheduler_push_job, +//GO(g_io_stream_clear_pending, +//GO(g_io_stream_close, +//GO(g_io_stream_close_async, +//GO(g_io_stream_close_finish, +//GO(g_io_stream_get_input_stream, +//GO(g_io_stream_get_output_stream, +//GO(g_io_stream_get_type, +//GO(g_io_stream_has_pending, +//GO(g_io_stream_is_closed, +//GO(g_io_stream_set_pending, +//GO(g_io_stream_splice_async, +//GO(g_io_stream_splice_finish, +//GO(g_io_stream_splice_flags_get_type, +//GO(g_keyfile_settings_backend_new, +//GO(g_loadable_icon_get_type, +//GO(g_loadable_icon_load, +//GO(g_loadable_icon_load_async, +//GO(g_loadable_icon_load_finish, +//GO(g_local_directory_monitor_get_type, +//GO(g_local_file_monitor_get_type, +//GO(g_memory_input_stream_add_bytes, +//GO(g_memory_input_stream_add_data, +//GO(g_memory_input_stream_get_type, +//GO(g_memory_input_stream_new, +//GO(g_memory_input_stream_new_from_bytes, +//GO(g_memory_input_stream_new_from_data, +//GO(g_memory_output_stream_get_data, +//GO(g_memory_output_stream_get_data_size, +//GO(g_memory_output_stream_get_size, +//GO(g_memory_output_stream_get_type, +//GO(g_memory_output_stream_new, +//GO(g_memory_output_stream_new_resizable, +//GO(g_memory_output_stream_steal_as_bytes, +//GO(g_memory_output_stream_steal_data, +//GO(g_memory_settings_backend_new, +//GO(g_menu_append, +//GO(g_menu_append_item, +//GO(g_menu_append_section, +//GO(g_menu_append_submenu, +//GO(g_menu_attribute_iter_get_name, +//GO(g_menu_attribute_iter_get_next, +//GO(g_menu_attribute_iter_get_type, +//GO(g_menu_attribute_iter_get_value, +//GO(g_menu_attribute_iter_next, +//GO(g_menu_freeze, +//GO(g_menu_get_type, +//GO(g_menu_insert, +//GO(g_menu_insert_item, +//GO(g_menu_insert_section, +//GO(g_menu_insert_submenu, +//GO(g_menu_item_get_attribute, +//GO(g_menu_item_get_attribute_value, +//GO(g_menu_item_get_link, +//GO(g_menu_item_get_type, +//GO(g_menu_item_new, +//GO(g_menu_item_new_from_model, +//GO(g_menu_item_new_section, +//GO(g_menu_item_new_submenu, +//GO(g_menu_item_set_action_and_target, +//GO(g_menu_item_set_action_and_target_value, +//GO(g_menu_item_set_attribute, +//GO(g_menu_item_set_attribute_value, +//GO(g_menu_item_set_detailed_action, +//GO(g_menu_item_set_icon, +//GO(g_menu_item_set_label, +//GO(g_menu_item_set_link, +//GO(g_menu_item_set_section, +//GO(g_menu_item_set_submenu, +//GO(g_menu_link_iter_get_name, +//GO(g_menu_link_iter_get_next, +//GO(g_menu_link_iter_get_type, +//GO(g_menu_link_iter_get_value, +//GO(g_menu_link_iter_next, +//GO(g_menu_model_get_item_attribute, +//GO(g_menu_model_get_item_attribute_value, +//GO(g_menu_model_get_item_link, +//GO(g_menu_model_get_n_items, +//GO(g_menu_model_get_type, +//GO(g_menu_model_is_mutable, +//GO(g_menu_model_items_changed, +//GO(g_menu_model_iterate_item_attributes, +//GO(g_menu_model_iterate_item_links, +//GO(g_menu_new, +//GO(g_menu_prepend, +//GO(g_menu_prepend_item, +//GO(g_menu_prepend_section, +//GO(g_menu_prepend_submenu, +//GO(g_menu_remove, +//GO(g_menu_remove_all, +//GO(g_mount_can_eject, +//GO(g_mount_can_unmount, +//GO(g_mount_eject, +//GO(g_mount_eject_finish, +//GO(g_mount_eject_with_operation, +//GO(g_mount_eject_with_operation_finish, +//GO(g_mount_get_default_location, +//GO(g_mount_get_drive, +//GO(g_mount_get_icon, +//GO(g_mount_get_name, +//GO(g_mount_get_root, +//GO(g_mount_get_sort_key, +//GO(g_mount_get_symbolic_icon, +//GO(g_mount_get_type, +//GO(g_mount_get_uuid, +//GO(g_mount_get_volume, +//GO(g_mount_guess_content_type, +//GO(g_mount_guess_content_type_finish, +//GO(g_mount_guess_content_type_sync, +//GO(g_mount_is_shadowed, +//GO(g_mount_mount_flags_get_type, +//GO(g_mount_operation_get_anonymous, +//GO(g_mount_operation_get_choice, +//GO(g_mount_operation_get_domain, +//GO(g_mount_operation_get_password, +//GO(g_mount_operation_get_password_save, +//GO(g_mount_operation_get_type, +//GO(g_mount_operation_get_username, +//GO(g_mount_operation_new, +//GO(g_mount_operation_reply, +//GO(g_mount_operation_result_get_type, +//GO(g_mount_operation_set_anonymous, +//GO(g_mount_operation_set_choice, +//GO(g_mount_operation_set_domain, +//GO(g_mount_operation_set_password, +//GO(g_mount_operation_set_password_save, +//GO(g_mount_operation_set_username, +//GO(g_mount_remount, +//GO(g_mount_remount_finish, +//GO(g_mount_shadow, +//GO(g_mount_unmount, +//GO(g_mount_unmount_finish, +//GO(g_mount_unmount_flags_get_type, +//GO(g_mount_unmount_with_operation, +//GO(g_mount_unmount_with_operation_finish, +//GO(g_mount_unshadow, +//GO(g_native_volume_monitor_get_type, +//GO(g_network_address_get_hostname, +//GO(g_network_address_get_port, +//GO(g_network_address_get_scheme, +//GO(g_network_address_get_type, +//GO(g_network_address_new, +//GO(g_network_address_parse, +//GO(g_network_address_parse_uri, +//GO(g_networking_init, +//GO(g_network_monitor_base_add_network, +//GO(g_network_monitor_base_get_type, +//GO(g_network_monitor_base_remove_network, +//GO(g_network_monitor_base_set_networks, +//GO(g_network_monitor_can_reach, +//GO(g_network_monitor_can_reach_async, +//GO(g_network_monitor_can_reach_finish, +//GO(g_network_monitor_get_default, +//GO(g_network_monitor_get_network_available, +//GO(g_network_monitor_get_type, +//GO(g_network_service_get_domain, +//GO(g_network_service_get_protocol, +//GO(g_network_service_get_scheme, +//GO(g_network_service_get_service, +//GO(g_network_service_get_type, +//GO(g_network_service_new, +//GO(g_network_service_set_scheme, +//GO(g_notification_add_button, +//GO(g_notification_add_button_with_target, +//GO(g_notification_add_button_with_target_value, +//GO(g_notification_get_type, +//GO(g_notification_new, +//GO(g_notification_priority_get_type, +//GO(g_notification_set_body, +//GO(g_notification_set_default_action, +//GO(g_notification_set_default_action_and_target, +//GO(g_notification_set_default_action_and_target_value, +//GO(g_notification_set_icon, +//GO(g_notification_set_priority, +//GO(g_notification_set_title, +//GO(g_notification_set_urgent, +//GO(g_null_settings_backend_new, +//GO(g_output_stream_clear_pending, +//GO(g_output_stream_close, +//GO(g_output_stream_close_async, +//GO(g_output_stream_close_finish, +//GO(g_output_stream_flush, +//GO(g_output_stream_flush_async, +//GO(g_output_stream_flush_finish, +//GO(g_output_stream_get_type, +//GO(g_output_stream_has_pending, +//GO(g_output_stream_is_closed, +//GO(g_output_stream_is_closing, +//GO(g_output_stream_printf, +//GO(g_output_stream_set_pending, +//GO(g_output_stream_splice, +//GO(g_output_stream_splice_async, +//GO(g_output_stream_splice_finish, +//GO(g_output_stream_splice_flags_get_type, +//GO(g_output_stream_vprintf, +//GO(g_output_stream_write, +//GO(g_output_stream_write_all, +//GO(g_output_stream_write_async, +//GO(g_output_stream_write_bytes, +//GO(g_output_stream_write_bytes_async, +//GO(g_output_stream_write_bytes_finish, +//GO(g_output_stream_write_finish, +//GO(g_password_save_get_type, +//GO(g_permission_acquire, +//GO(g_permission_acquire_async, +//GO(g_permission_acquire_finish, +//GO(g_permission_get_allowed, +//GO(g_permission_get_can_acquire, +//GO(g_permission_get_can_release, +//GO(g_permission_get_type, +//GO(g_permission_impl_update, +//GO(g_permission_release, +//GO(g_permission_release_async, +//GO(g_permission_release_finish, +//GO(g_pollable_input_stream_can_poll, +//GO(g_pollable_input_stream_create_source, +//GO(g_pollable_input_stream_get_type, +//GO(g_pollable_input_stream_is_readable, +//GO(g_pollable_input_stream_read_nonblocking, +//GO(g_pollable_output_stream_can_poll, +//GO(g_pollable_output_stream_create_source, +//GO(g_pollable_output_stream_get_type, +//GO(g_pollable_output_stream_is_writable, +//GO(g_pollable_output_stream_write_nonblocking, +//GO(g_pollable_source_new, +//GO(g_pollable_source_new_full, +//GO(g_pollable_stream_read, +//GO(g_pollable_stream_write, +//GO(g_pollable_stream_write_all, +//GO(g_property_action_get_type, +//GO(g_property_action_new, +//GO(g_proxy_address_enumerator_get_type, +//GO(g_proxy_address_get_destination_hostname, +//GO(g_proxy_address_get_destination_port, +//GO(g_proxy_address_get_destination_protocol, +//GO(g_proxy_address_get_password, +//GO(g_proxy_address_get_protocol, +//GO(g_proxy_address_get_type, +//GO(g_proxy_address_get_uri, +//GO(g_proxy_address_get_username, +//GO(g_proxy_address_new, +//GO(g_proxy_connect, +//GO(g_proxy_connect_async, +//GO(g_proxy_connect_finish, +//GO(g_proxy_get_default_for_protocol, +//GO(g_proxy_get_type, +//GO(g_proxy_resolver_get_default, +//GO(g_proxy_resolver_get_type, +//GO(g_proxy_resolver_is_supported, +//GO(g_proxy_resolver_lookup, +//GO(g_proxy_resolver_lookup_async, +//GO(g_proxy_resolver_lookup_finish, +//GO(g_proxy_supports_hostname, +//GO(g_remote_action_group_activate_action_full, +//GO(g_remote_action_group_change_action_state_full, +//GO(g_remote_action_group_get_type, +//GO(g_resolver_error_get_type, +//GO(g_resolver_error_quark, +//GO(g_resolver_free_addresses, +//GO(g_resolver_free_targets, +//GO(g_resolver_get_default, +//GO(g_resolver_get_type, +//GO(g_resolver_lookup_by_address, +//GO(g_resolver_lookup_by_address_async, +//GO(g_resolver_lookup_by_address_finish, +//GO(g_resolver_lookup_by_name, +//GO(g_resolver_lookup_by_name_async, +//GO(g_resolver_lookup_by_name_finish, +//GO(g_resolver_lookup_records, +//GO(g_resolver_lookup_records_async, +//GO(g_resolver_lookup_records_finish, +//GO(g_resolver_lookup_service, +//GO(g_resolver_lookup_service_async, +//GO(g_resolver_lookup_service_finish, +//GO(g_resolver_record_type_get_type, +//GO(g_resolver_set_default, +//GO(g_resource_enumerate_children, +//GO(g_resource_error_get_type, +//GO(g_resource_error_quark, +//GO(g_resource_flags_get_type, +//GO(g_resource_get_info, +//GO(g_resource_get_type, +//GO(g_resource_load, +//GO(g_resource_lookup_data, +//GO(g_resource_lookup_flags_get_type, +//GO(g_resource_new_from_data, +//GO(g_resource_open_stream, +//GO(g_resource_ref, +//GO(g_resources_enumerate_children, +//GO(g_resources_get_info, +//GO(g_resources_lookup_data, +//GO(g_resources_open_stream, +//GO(g_resources_register, +//GO(g_resources_unregister, +//GO(g_resource_unref, +//GO(g_seekable_can_seek, +//GO(g_seekable_can_truncate, +//GO(g_seekable_get_type, +//GO(g_seekable_seek, +//GO(g_seekable_tell, +//GO(g_seekable_truncate, +//GO(g_settings_apply, +//GO(g_settings_backend_changed, +//GO(g_settings_backend_changed_tree, +//GO(g_settings_backend_flatten_tree, +//GO(g_settings_backend_get_default, +//GO(g_settings_backend_get_type, +//GO(g_settings_backend_keys_changed, +//GO(g_settings_backend_path_changed, +//GO(g_settings_backend_path_writable_changed, +//GO(g_settings_backend_writable_changed, +//GO(g_settings_bind, +//GO(g_settings_bind_flags_get_type, +//GO(g_settings_bind_with_mapping, +//GO(g_settings_bind_writable, +//GO(g_settings_create_action, +//GO(g_settings_delay, +//GO(g_settings_get, +//GO(g_settings_get_boolean, +//GO(g_settings_get_child, +//GO(g_settings_get_default_value, +//GO(g_settings_get_double, +//GO(g_settings_get_enum, +//GO(g_settings_get_flags, +//GO(g_settings_get_has_unapplied, +//GO(g_settings_get_int, +//GO(g_settings_get_mapped, +//GO(g_settings_get_range, +//GO(g_settings_get_string, +//GO(g_settings_get_strv, +//GO(g_settings_get_type, +//GO(g_settings_get_uint, +//GO(g_settings_get_user_value, +//GO(g_settings_get_value, +//GO(g_settings_is_writable, +//GO(g_settings_list_children, +//GO(g_settings_list_keys, +//GO(g_settings_list_relocatable_schemas, +//GO(g_settings_list_schemas, +//GO(g_settings_new, +//GO(g_settings_new_full, +//GO(g_settings_new_with_backend, +//GO(g_settings_new_with_backend_and_path, +//GO(g_settings_new_with_path, +//GO(g_settings_range_check, +//GO(g_settings_reset, +//GO(g_settings_revert, +//GO(g_settings_schema_get_id, +//GO(g_settings_schema_get_key, +//GO(g_settings_schema_get_path, +//GO(g_settings_schema_get_type, +//GO(g_settings_schema_has_key, +//GO(g_settings_schema_key_get_default_value, +//GO(g_settings_schema_key_get_description, +//GO(g_settings_schema_key_get_range, +//GO(g_settings_schema_key_get_summary, +//GO(g_settings_schema_key_get_type, +//GO(g_settings_schema_key_get_value_type, +//GO(g_settings_schema_key_range_check, +//GO(g_settings_schema_key_ref, +//GO(g_settings_schema_key_unref, +//GO(g_settings_schema_ref, +//GO(g_settings_schema_source_get_default, +//GO(g_settings_schema_source_get_type, +//GO(g_settings_schema_source_list_schemas, +//GO(g_settings_schema_source_lookup, +//GO(g_settings_schema_source_new_from_directory, +//GO(g_settings_schema_source_ref, +//GO(g_settings_schema_source_unref, +//GO(g_settings_schema_unref, +//GO(g_settings_set, +//GO(g_settings_set_boolean, +//GO(g_settings_set_double, +//GO(g_settings_set_enum, +//GO(g_settings_set_flags, +//GO(g_settings_set_int, +//GO(g_settings_set_string, +//GO(g_settings_set_strv, +//GO(g_settings_set_uint, +//GO(g_settings_set_value, +//GO(g_settings_sync, +//GO(g_settings_unbind, +//GO(g_simple_action_get_type, +//GO(g_simple_action_group_add_entries, +//GO(g_simple_action_group_get_type, +//GO(g_simple_action_group_insert, +//GO(g_simple_action_group_lookup, +//GO(g_simple_action_group_new, +//GO(g_simple_action_group_remove, +//GO(g_simple_action_new, +//GO(g_simple_action_new_stateful, +//GO(g_simple_action_set_enabled, +//GO(g_simple_action_set_state, +GOM(g_simple_async_report_error_in_idle, vFEpppuipV) +GOM(g_simple_async_report_gerror_in_idle, vFEpppp) +GOM(g_simple_async_report_take_gerror_in_idle, vFEpppp) +GO(g_simple_async_result_complete, vFp) +GO(g_simple_async_result_complete_in_idle, vFp) +GO(g_simple_async_result_get_op_res_gboolean, iFp) +GO(g_simple_async_result_get_op_res_gpointer, pFp) +GO(g_simple_async_result_get_op_res_gssize, lFp) +GO(g_simple_async_result_get_source_tag, pFp) +GO(g_simple_async_result_get_type, iFv) +GO(g_simple_async_result_is_valid, iFppp) +GOM(g_simple_async_result_new, pFEpppp) +GOM(g_simple_async_result_new_error, pFEpppuipV) +GOM(g_simple_async_result_new_from_error, pFEpppp) +GOM(g_simple_async_result_new_take_error, pFEpppp) +GO(g_simple_async_result_propagate_error, iFpp) +GOM(g_simple_async_result_run_in_thread, vFEppip) +GO(g_simple_async_result_set_check_cancellable, vFpp) +GO2(g_simple_async_result_set_error, vFpuipV, g_simple_async_result_set_error_va) // should align? +GO(g_simple_async_result_set_error_va, vFpuipp) +GO(g_simple_async_result_set_from_error, vFpp) +GO(g_simple_async_result_set_handle_cancellation, vFpi) +GO(g_simple_async_result_set_op_res_gboolean, vFpi) +GOM(g_simple_async_result_set_op_res_gpointer, vFEppp) +GO(g_simple_async_result_set_op_res_gssize, vFpl) +GO(g_simple_async_result_take_error, vFpp) +GO(g_simple_permission_get_type, iFv) +//GO(g_simple_permission_new, +GO(g_simple_proxy_resolver_get_type, iFv) +//GO(g_simple_proxy_resolver_new, +//GO(g_simple_proxy_resolver_set_default_proxy, +//GO(g_simple_proxy_resolver_set_ignore_hosts, +//GO(g_simple_proxy_resolver_set_uri_proxy, +//GO(g_socket_accept, +//GO(g_socket_address_enumerator_get_type, +//GO(g_socket_address_enumerator_next, +//GO(g_socket_address_enumerator_next_async, +//GO(g_socket_address_enumerator_next_finish, +//GO(g_socket_address_get_family, +//GO(g_socket_address_get_native_size, +//GO(g_socket_address_get_type, +//GO(g_socket_address_new_from_native, +//GO(g_socket_address_to_native, +//GO(g_socket_bind, +//GO(g_socket_check_connect_result, +//GO(g_socket_client_add_application_proxy, +//GO(g_socket_client_connect, +//GO(g_socket_client_connect_async, +//GO(g_socket_client_connect_finish, +//GO(g_socket_client_connect_to_host, +//GO(g_socket_client_connect_to_host_async, +//GO(g_socket_client_connect_to_host_finish, +//GO(g_socket_client_connect_to_service, +//GO(g_socket_client_connect_to_service_async, +//GO(g_socket_client_connect_to_service_finish, +//GO(g_socket_client_connect_to_uri, +//GO(g_socket_client_connect_to_uri_async, +//GO(g_socket_client_connect_to_uri_finish, +//GO(g_socket_client_event_get_type, +//GO(g_socket_client_get_enable_proxy, +//GO(g_socket_client_get_family, +//GO(g_socket_client_get_local_address, +//GO(g_socket_client_get_protocol, +//GO(g_socket_client_get_proxy_resolver, +//GO(g_socket_client_get_socket_type, +//GO(g_socket_client_get_timeout, +//GO(g_socket_client_get_tls, +//GO(g_socket_client_get_tls_validation_flags, +//GO(g_socket_client_get_type, +//GO(g_socket_client_new, +//GO(g_socket_client_set_enable_proxy, +//GO(g_socket_client_set_family, +//GO(g_socket_client_set_local_address, +//GO(g_socket_client_set_protocol, +//GO(g_socket_client_set_proxy_resolver, +//GO(g_socket_client_set_socket_type, +//GO(g_socket_client_set_timeout, +//GO(g_socket_client_set_tls, +//GO(g_socket_client_set_tls_validation_flags, +//GO(g_socket_close, +//GO(g_socket_condition_check, +//GO(g_socket_condition_timed_wait, +//GO(g_socket_condition_wait, +//GO(g_socket_connect, +//GO(g_socket_connectable_enumerate, +//GO(g_socket_connectable_get_type, +//GO(g_socket_connectable_proxy_enumerate, +//GO(g_socket_connection_connect, +//GO(g_socket_connection_connect_async, +//GO(g_socket_connection_connect_finish, +//GO(g_socket_connection_factory_create_connection, +//GO(g_socket_connection_factory_lookup_type, +//GO(g_socket_connection_factory_register_type, +//GO(g_socket_connection_get_local_address, +//GO(g_socket_connection_get_remote_address, +//GO(g_socket_connection_get_socket, +//GO(g_socket_connection_get_type, +//GO(g_socket_connection_is_connected, +//GO(g_socket_control_message_deserialize, +//GO(g_socket_control_message_get_level, +//GO(g_socket_control_message_get_msg_type, +//GO(g_socket_control_message_get_size, +//GO(g_socket_control_message_get_type, +//GO(g_socket_control_message_serialize, +//GO(g_socket_create_source, +//GO(g_socket_family_get_type, +//GO(g_socket_get_available_bytes, +//GO(g_socket_get_blocking, +//GO(g_socket_get_broadcast, +//GO(g_socket_get_credentials, +//GO(g_socket_get_family, +//GO(g_socket_get_fd, +//GO(g_socket_get_keepalive, +//GO(g_socket_get_listen_backlog, +//GO(g_socket_get_local_address, +//GO(g_socket_get_multicast_loopback, +//GO(g_socket_get_multicast_ttl, +//GO(g_socket_get_option, +//GO(g_socket_get_protocol, +//GO(g_socket_get_remote_address, +//GO(g_socket_get_socket_type, +//GO(g_socket_get_timeout, +//GO(g_socket_get_ttl, +//GO(g_socket_get_type, +//GO(g_socket_is_closed, +//GO(g_socket_is_connected, +//GO(g_socket_join_multicast_group, +//GO(g_socket_leave_multicast_group, +//GO(g_socket_listen, +//GO(g_socket_listener_accept, +//GO(g_socket_listener_accept_async, +//GO(g_socket_listener_accept_finish, +//GO(g_socket_listener_accept_socket, +//GO(g_socket_listener_accept_socket_async, +//GO(g_socket_listener_accept_socket_finish, +//GO(g_socket_listener_add_address, +//GO(g_socket_listener_add_any_inet_port, +//GO(g_socket_listener_add_inet_port, +//GO(g_socket_listener_add_socket, +//GO(g_socket_listener_close, +//GO(g_socket_listener_get_type, +//GO(g_socket_listener_new, +//GO(g_socket_listener_set_backlog, +//GO(g_socket_msg_flags_get_type, +//GO(g_socket_new, +//GO(g_socket_new_from_fd, +//GO(g_socket_protocol_get_type, +//GO(g_socket_receive, +//GO(g_socket_receive_from, +//GO(g_socket_receive_message, +//GO(g_socket_receive_with_blocking, +//GO(g_socket_send, +//GO(g_socket_send_message, +//GO(g_socket_send_to, +//GO(g_socket_send_with_blocking, +//GO(g_socket_service_get_type, +//GO(g_socket_service_is_active, +//GO(g_socket_service_new, +//GO(g_socket_service_start, +//GO(g_socket_service_stop, +//GO(g_socket_set_blocking, +//GO(g_socket_set_broadcast, +//GO(g_socket_set_keepalive, +//GO(g_socket_set_listen_backlog, +//GO(g_socket_set_multicast_loopback, +//GO(g_socket_set_multicast_ttl, +//GO(g_socket_set_option, +//GO(g_socket_set_timeout, +//GO(g_socket_set_ttl, +//GO(g_socket_shutdown, +//GO(g_socket_speaks_ipv4, +//GO(g_socket_type_get_type, +//GO(g_srv_target_copy, +//GO(g_srv_target_free, +//GO(g_srv_target_get_hostname, +//GO(g_srv_target_get_port, +//GO(g_srv_target_get_priority, +//GO(g_srv_target_get_type, +//GO(g_srv_target_get_weight, +//GO(g_srv_target_list_sort, +//GO(g_srv_target_new, +//GO(g_static_resource_fini, +//GO(g_static_resource_get_resource, +//GO(g_static_resource_init, +//GO(g_subprocess_communicate, +//GO(g_subprocess_communicate_async, +//GO(g_subprocess_communicate_finish, +//GO(g_subprocess_communicate_utf8, +//GO(g_subprocess_communicate_utf8_async, +//GO(g_subprocess_communicate_utf8_finish, +//GO(g_subprocess_flags_get_type, +//GO(g_subprocess_force_exit, +//GO(g_subprocess_get_exit_status, +//GO(g_subprocess_get_identifier, +//GO(g_subprocess_get_if_exited, +//GO(g_subprocess_get_if_signaled, +//GO(g_subprocess_get_status, +//GO(g_subprocess_get_stderr_pipe, +//GO(g_subprocess_get_stdin_pipe, +//GO(g_subprocess_get_stdout_pipe, +//GO(g_subprocess_get_successful, +//GO(g_subprocess_get_term_sig, +//GO(g_subprocess_get_type, +//GO(g_subprocess_launcher_getenv, +//GO(g_subprocess_launcher_get_type, +//GO(g_subprocess_launcher_new, +//GO(g_subprocess_launcher_set_child_setup, +//GO(g_subprocess_launcher_set_cwd, +//GO(g_subprocess_launcher_setenv, +//GO(g_subprocess_launcher_set_environ, +//GO(g_subprocess_launcher_set_flags, +//GO(g_subprocess_launcher_set_stderr_file_path, +//GO(g_subprocess_launcher_set_stdin_file_path, +//GO(g_subprocess_launcher_set_stdout_file_path, +//GO(g_subprocess_launcher_spawn, +//GO(g_subprocess_launcher_spawnv, +//GO(g_subprocess_launcher_take_fd, +//GO(g_subprocess_launcher_take_stderr_fd, +//GO(g_subprocess_launcher_take_stdin_fd, +//GO(g_subprocess_launcher_take_stdout_fd, +//GO(g_subprocess_launcher_unsetenv, +//GO(g_subprocess_new, +//GO(g_subprocess_newv, +//GO(g_subprocess_send_signal, +//GO(g_subprocess_wait, +//GO(g_subprocess_wait_async, +//GO(g_subprocess_wait_check, +//GO(g_subprocess_wait_check_async, +//GO(g_subprocess_wait_check_finish, +//GO(g_subprocess_wait_finish, +//GO(g_task_attach_source, +//GO(g_task_get_cancellable, +//GO(g_task_get_check_cancellable, +//GO(g_task_get_context, +//GO(g_task_get_priority, +//GO(g_task_get_return_on_cancel, +//GO(g_task_get_source_object, +//GO(g_task_get_source_tag, +//GO(g_task_get_task_data, +//GO(g_task_get_type, +//GO(g_task_had_error, +//GO(g_task_is_valid, +//GO(g_task_new, +//GO(g_task_propagate_boolean, +//GO(g_task_propagate_int, +//GO(g_task_propagate_pointer, +//GO(g_task_report_error, +//GO(g_task_report_new_error, +//GO(g_task_return_boolean, +//GO(g_task_return_error, +//GO(g_task_return_error_if_cancelled, +//GO(g_task_return_int, +//GO(g_task_return_new_error, +//GO(g_task_return_pointer, +//GO(g_task_run_in_thread, +//GO(g_task_run_in_thread_sync, +//GO(g_task_set_check_cancellable, +//GO(g_task_set_priority, +//GO(g_task_set_return_on_cancel, +//GO(g_task_set_source_tag, +//GO(g_task_set_task_data, +//GO(g_tcp_connection_get_graceful_disconnect, +//GO(g_tcp_connection_get_type, +//GO(g_tcp_connection_set_graceful_disconnect, +//GO(g_tcp_wrapper_connection_get_base_io_stream, +//GO(g_tcp_wrapper_connection_get_type, +//GO(g_tcp_wrapper_connection_new, +//GO(g_test_dbus_add_service_dir, +//GO(g_test_dbus_down, +//GO(g_test_dbus_flags_get_type, +//GO(g_test_dbus_get_bus_address, +//GO(g_test_dbus_get_flags, +//GO(g_test_dbus_get_type, +//GO(g_test_dbus_new, +//GO(g_test_dbus_stop, +//GO(g_test_dbus_unset, +//GO(g_test_dbus_up, +GO(g_themed_icon_append_name, vFpp) +GO(g_themed_icon_get_names, pFp) +GO(g_themed_icon_get_type, iFv) +GO(g_themed_icon_new, pFp) +GO(g_themed_icon_new_from_names, pFpi) +GO(g_themed_icon_new_with_default_fallbacks, pFp) +GO(g_themed_icon_prepend_name, vFpp) +//GO(g_threaded_resolver_get_type, +//GO(g_threaded_socket_service_get_type, +//GO(g_threaded_socket_service_new, +//GO(g_tls_authentication_mode_get_type, +//GO(g_tls_backend_get_certificate_type, +//GO(g_tls_backend_get_client_connection_type, +//GO(g_tls_backend_get_default, +//GO(g_tls_backend_get_default_database, +//GO(g_tls_backend_get_file_database_type, +//GO(g_tls_backend_get_server_connection_type, +//GO(g_tls_backend_get_type, +//GO(g_tls_backend_supports_tls, +//GO(g_tls_certificate_flags_get_type, +//GO(g_tls_certificate_get_issuer, +//GO(g_tls_certificate_get_type, +//GO(g_tls_certificate_is_same, +//GO(g_tls_certificate_list_new_from_file, +//GO(g_tls_certificate_new_from_file, +//GO(g_tls_certificate_new_from_files, +//GO(g_tls_certificate_new_from_pem, +//GO(g_tls_certificate_request_flags_get_type, +//GO(g_tls_certificate_verify, +//GO(g_tls_client_connection_get_accepted_cas, +//GO(g_tls_client_connection_get_server_identity, +//GO(g_tls_client_connection_get_type, +//GO(g_tls_client_connection_get_use_ssl3, +//GO(g_tls_client_connection_get_validation_flags, +//GO(g_tls_client_connection_new, +//GO(g_tls_client_connection_set_server_identity, +//GO(g_tls_client_connection_set_use_ssl3, +//GO(g_tls_client_connection_set_validation_flags, +//GO(g_tls_connection_emit_accept_certificate, +//GO(g_tls_connection_get_certificate, +//GO(g_tls_connection_get_database, +//GO(g_tls_connection_get_interaction, +//GO(g_tls_connection_get_peer_certificate, +//GO(g_tls_connection_get_peer_certificate_errors, +//GO(g_tls_connection_get_rehandshake_mode, +//GO(g_tls_connection_get_require_close_notify, +//GO(g_tls_connection_get_type, +//GO(g_tls_connection_get_use_system_certdb, +//GO(g_tls_connection_handshake, +//GO(g_tls_connection_handshake_async, +//GO(g_tls_connection_handshake_finish, +//GO(g_tls_connection_set_certificate, +//GO(g_tls_connection_set_database, +//GO(g_tls_connection_set_interaction, +//GO(g_tls_connection_set_rehandshake_mode, +//GO(g_tls_connection_set_require_close_notify, +//GO(g_tls_connection_set_use_system_certdb, +//GO(g_tls_database_create_certificate_handle, +//GO(g_tls_database_get_type, +//GO(g_tls_database_lookup_certificate_for_handle, +//GO(g_tls_database_lookup_certificate_for_handle_async, +//GO(g_tls_database_lookup_certificate_for_handle_finish, +//GO(g_tls_database_lookup_certificate_issuer, +//GO(g_tls_database_lookup_certificate_issuer_async, +//GO(g_tls_database_lookup_certificate_issuer_finish, +//GO(g_tls_database_lookup_certificates_issued_by, +//GO(g_tls_database_lookup_certificates_issued_by_async, +//GO(g_tls_database_lookup_certificates_issued_by_finish, +//GO(g_tls_database_lookup_flags_get_type, +//GO(g_tls_database_verify_chain, +//GO(g_tls_database_verify_chain_async, +//GO(g_tls_database_verify_chain_finish, +//GO(g_tls_database_verify_flags_get_type, +//GO(g_tls_error_get_type, +//GO(g_tls_error_quark, +//GO(g_tls_file_database_get_type, +//GO(g_tls_file_database_new, +//GO(g_tls_interaction_ask_password, +//GO(g_tls_interaction_ask_password_async, +//GO(g_tls_interaction_ask_password_finish, +//GO(g_tls_interaction_get_type, +//GO(g_tls_interaction_invoke_ask_password, +//GO(g_tls_interaction_invoke_request_certificate, +//GO(g_tls_interaction_request_certificate, +//GO(g_tls_interaction_request_certificate_async, +//GO(g_tls_interaction_request_certificate_finish, +//GO(g_tls_interaction_result_get_type, +//GO(g_tls_password_flags_get_type, +//GO(g_tls_password_get_description, +//GO(g_tls_password_get_flags, +//GO(g_tls_password_get_type, +//GO(g_tls_password_get_value, +//GO(g_tls_password_get_warning, +//GO(g_tls_password_new, +//GO(g_tls_password_set_description, +//GO(g_tls_password_set_flags, +//GO(g_tls_password_set_value, +//GO(g_tls_password_set_value_full, +//GO(g_tls_password_set_warning, +//GO(g_tls_rehandshake_mode_get_type, +//GO(g_tls_server_connection_get_type, +//GO(g_tls_server_connection_new, +//GO(g_unix_connection_get_type, +//GO(g_unix_connection_receive_credentials, +//GO(g_unix_connection_receive_credentials_async, +//GO(g_unix_connection_receive_credentials_finish, +//GO(g_unix_connection_receive_fd, +//GO(g_unix_connection_send_credentials, +//GO(g_unix_connection_send_credentials_async, +//GO(g_unix_connection_send_credentials_finish, +//GO(g_unix_connection_send_fd, +//GO(g_unix_credentials_message_get_credentials, +//GO(g_unix_credentials_message_get_type, +//GO(g_unix_credentials_message_is_supported, +//GO(g_unix_credentials_message_new, +//GO(g_unix_credentials_message_new_with_credentials, +//GO(g_unix_fd_list_append, +//GO(g_unix_fd_list_get, +//GO(g_unix_fd_list_get_length, +GO(g_unix_fd_list_get_type, iFv) +//GO(g_unix_fd_list_new, +//GO(g_unix_fd_list_new_from_array, +//GO(g_unix_fd_list_peek_fds, +//GO(g_unix_fd_list_steal_fds, +//GO(g_unix_fd_message_append_fd, +//GO(g_unix_fd_message_get_fd_list, +//GO(g_unix_fd_message_get_type, +//GO(g_unix_fd_message_new, +//GO(g_unix_fd_message_new_with_fd_list, +//GO(g_unix_fd_message_steal_fds, +//GO(g_unix_input_stream_get_close_fd, +//GO(g_unix_input_stream_get_fd, +//GO(g_unix_input_stream_get_type, +//GO(g_unix_input_stream_new, +//GO(g_unix_input_stream_set_close_fd, +//GO(g_unix_is_mount_path_system_internal, +//GO(g_unix_mount_at, +//GO(g_unix_mount_compare, +//GO(g_unix_mount_free, +//GO(g_unix_mount_get_device_path, +//GO(g_unix_mount_get_fs_type, +//GO(g_unix_mount_get_mount_path, +//GO(g_unix_mount_guess_can_eject, +//GO(g_unix_mount_guess_icon, +//GO(g_unix_mount_guess_name, +//GO(g_unix_mount_guess_should_display, +//GO(g_unix_mount_guess_symbolic_icon, +//GO(g_unix_mount_is_readonly, +//GO(g_unix_mount_is_system_internal, +//GO(g_unix_mount_monitor_get_type, +//GO(g_unix_mount_monitor_new, +//GO(g_unix_mount_monitor_set_rate_limit, +//GO(g_unix_mount_point_compare, +//GO(g_unix_mount_point_free, +//GO(g_unix_mount_point_get_device_path, +//GO(g_unix_mount_point_get_fs_type, +//GO(g_unix_mount_point_get_mount_path, +//GO(g_unix_mount_point_get_options, +//GO(g_unix_mount_point_guess_can_eject, +//GO(g_unix_mount_point_guess_icon, +//GO(g_unix_mount_point_guess_name, +//GO(g_unix_mount_point_guess_symbolic_icon, +//GO(g_unix_mount_point_is_loopback, +//GO(g_unix_mount_point_is_readonly, +//GO(g_unix_mount_point_is_user_mountable, +//GO(g_unix_mount_points_changed_since, +//GO(g_unix_mount_points_get, +//GO(g_unix_mounts_changed_since, +//GO(g_unix_mounts_get, +//GO(g_unix_output_stream_get_close_fd, +//GO(g_unix_output_stream_get_fd, +//GO(g_unix_output_stream_get_type, +//GO(g_unix_output_stream_new, +//GO(g_unix_output_stream_set_close_fd, +//GO(g_unix_socket_address_abstract_names_supported, +//GO(g_unix_socket_address_get_address_type, +//GO(g_unix_socket_address_get_is_abstract, +//GO(g_unix_socket_address_get_path, +//GO(g_unix_socket_address_get_path_len, +//GO(g_unix_socket_address_get_type, +//GO(g_unix_socket_address_new, +//GO(g_unix_socket_address_new_abstract, +//GO(g_unix_socket_address_new_with_type, +//GO(g_unix_socket_address_type_get_type, +//GO(g_vfs_get_default, +//GO(g_vfs_get_file_for_path, +//GO(g_vfs_get_file_for_uri, +//GO(g_vfs_get_local, +//GO(g_vfs_get_supported_uri_schemes, +//GO(g_vfs_get_type, +//GO(g_vfs_is_active, +//GO(g_vfs_parse_name, +//GO(g_volume_can_eject, +//GO(g_volume_can_mount, +//GO(g_volume_eject, +//GO(g_volume_eject_finish, +//GO(g_volume_eject_with_operation, +//GO(g_volume_eject_with_operation_finish, +//GO(g_volume_enumerate_identifiers, +//GO(g_volume_get_activation_root, +//GO(g_volume_get_drive, +//GO(g_volume_get_icon, +//GO(g_volume_get_identifier, +//GO(g_volume_get_mount, +//GO(g_volume_get_name, +//GO(g_volume_get_sort_key, +//GO(g_volume_get_symbolic_icon, +//GO(g_volume_get_type, +//GO(g_volume_get_uuid, +//GO(g_volume_monitor_adopt_orphan_mount, +//GO(g_volume_monitor_get, +//GO(g_volume_monitor_get_connected_drives, +//GO(g_volume_monitor_get_mount_for_uuid, +//GO(g_volume_monitor_get_mounts, +//GO(g_volume_monitor_get_type, +//GO(g_volume_monitor_get_volume_for_uuid, +//GO(g_volume_monitor_get_volumes, +//GO(g_volume_mount, +//GO(g_volume_mount_finish, +//GO(g_volume_should_automount, +//GO(g_zlib_compressor_format_get_type, +//GO(g_zlib_compressor_get_file_info, +//GO(g_zlib_compressor_get_type, +//GO(g_zlib_compressor_new, +//GO(g_zlib_compressor_set_file_info, +//GO(g_zlib_decompressor_get_file_info, +//GO(g_zlib_decompressor_get_type, +//GO(g_zlib_decompressor_new, +//GO(_init, diff --git a/src/wrapped/wrappedglib2.c b/src/wrapped/wrappedglib2.c new file mode 100755 index 00000000..e288c8f7 --- /dev/null +++ b/src/wrapped/wrappedglib2.c @@ -0,0 +1,1367 @@ +#define _GNU_SOURCE +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "myalign.h" +#include "gtkclass.h" +#include "threads.h" + +const char* glib2Name = "libglib-2.0.so.0"; +#define LIBNAME glib2 +static library_t* my_lib = NULL; + +static char* libname = NULL; + +typedef void (*vFp_t)(void*); +typedef void* (*pFp_t)(void*); +typedef void (*vFpp_t)(void*, void*); +typedef void* (*pFup_t)(uint32_t, void*); +typedef int (*iFpp_t)(void*, void*); +typedef int (*iFpA_t)(void*, va_list); +typedef size_t(*LFpA_t)(void*, va_list); +typedef void* (*pFpp_t)(void*, void*); +typedef void* (*pFpA_t)(void*, va_list); +typedef void* (*pFpu_t)(void*, uint32_t); +typedef uint32_t (*uFpp_t)(void*, void*); +typedef int (*iFppp_t)(void*, void*, void*); +typedef int (*iFppA_t)(void*, void*, va_list); +typedef uint32_t (*uFipp_t)(int, void*, void*); +typedef uint32_t (*uFppp_t)(void*, void*, void*); +typedef void (*vFppp_t)(void*, void*, void*); +typedef uint32_t (*uFupp_t)(uint32_t, void*, void*); +typedef void* (*pFppp_t)(void*, void*, void*); +typedef void (*vFppip_t)(void*, void*, int, void*); +typedef void* (*pFppip_t)(void*, void*, int, void*); +typedef uint32_t (*uFpipp_t)(void*, int, void*, void*); +typedef uint32_t (*uFuppp_t)(uint32_t, void*, void*, void*); +typedef uint32_t (*uFippp_t)(int, void*, void*, void*); +typedef uint32_t (*uFiuppp_t)(int, uint32_t, void*, void*, void*); +typedef void (*vFpiLpp_t)(void*, int, unsigned long, void*, void*); +typedef void* (*pFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpupp_t)(void*, uint32_t, void*, void*); +typedef int (*iFpLpp_t)(void*, unsigned long, void*, void*); +typedef int (*iFpLpA_t)(void*, unsigned long, void*, va_list); +typedef void* (*pFpupp_t)(void*, uint32_t, void*, void*); +typedef uint32_t (*uFiippp_t)(int, int, void*, void*, void*); +typedef uint32_t (*uFpiippp_t)(void*, int, int, void*, void*, void*); +typedef int (*iFpupppp_t)(void*, uint32_t, void*, void*, void*, void*); +typedef void* (*pFppuipp_t)(void*, void*, uint32_t, int32_t, void*, void*); +typedef void* (*pFppLiiip_t)(void*, void*, unsigned long, int, int, int, void*); +typedef int (*iFpppipppp_t)(void*, void*, void*, int, void*, void*, void*, void*); +typedef int (*iFpppipppppp_t)(void*, void*, void*, int, void*, void*, void*, void*, void*, void*); +typedef int (*iFpppippppppp_t)(void*, void*, void*, int, void*, void*, void*, void*, void*, void*, void*); + +#define SUPER() \ + GO(g_list_free_full, vFpp_t) \ + GO(g_markup_vprintf_escaped, pFpA_t) \ + GO(g_build_filenamev, pFp_t) \ + GO(g_timeout_add_full, uFiuppp_t) \ + GO(g_datalist_id_set_data_full, vFpupp_t) \ + GO(g_datalist_id_dup_data, pFpupp_t) \ + GO(g_datalist_id_replace_data, iFpupppp_t) \ + GO(g_variant_new_from_data, pFppuipp_t) \ + GO(g_variant_new_parsed_va, pFpp_t) \ + GO(g_variant_get_va, vFpppp_t) \ + GO(g_strdup_vprintf, pFpA_t) \ + GO(g_vprintf, iFpA_t) \ + GO(g_vfprintf, iFppA_t) \ + GO(g_vsprintf, iFppA_t) \ + GO(g_vsnprintf, iFpLpA_t) \ + GO(g_vasprintf, iFppA_t) \ + GO(g_printf_string_upper_bound, LFpA_t) \ + GO(g_source_new, pFpu_t) \ + GO(g_source_set_funcs, vFpp_t) \ + GO(g_source_remove_by_funcs_user_data, iFpp_t) \ + GO(g_main_context_get_poll_func, pFp_t) \ + GO(g_main_context_set_poll_func, vFpp_t) \ + GO(g_print, vFp_t) \ + GO(g_printerr, vFp_t) \ + GO(g_idle_add_full, uFippp_t) \ + GO(g_hash_table_new, pFpp_t) \ + GO(g_hash_table_new_full, pFpppp_t) \ + GO(g_hash_table_foreach, vFppp_t) \ + GO(g_hash_table_foreach_remove, uFppp_t) \ + GO(g_hash_table_foreach_steal, uFppp_t) \ + GO(g_hash_table_find, pFppp_t) \ + GO(g_spawn_async_with_pipes, iFpppippppppp_t)\ + GO(g_spawn_async, iFpppipppp_t) \ + GO(g_spawn_sync, iFpppipppppp_t) \ + GO(g_child_watch_add, uFipp_t) \ + GO(g_child_watch_add_full, uFiippp_t) \ + GO(g_private_new, pFp_t) \ + GO(g_static_private_set, vFppp_t) \ + GO(g_ptr_array_new_with_free_func, pFp_t) \ + GO(g_ptr_array_new_full, pFup_t) \ + GO(g_ptr_array_set_free_func, vFpp_t) \ + GO(g_ptr_array_sort, vFpp_t) \ + GO(g_ptr_array_sort_with_data, vFppp_t) \ + GO(g_ptr_array_foreach, vFppp_t) \ + GO(g_qsort_with_data, vFpiLpp_t) \ + GO(g_thread_create, pFppip_t) \ + GO(g_thread_create_full, pFppLiiip_t) \ + GO(g_thread_foreach, vFpp_t) \ + GO(g_array_sort, vFpp_t) \ + GO(g_array_sort_with_data, vFppp_t) \ + GO(g_array_set_clear_func, vFpp_t) \ + GO(g_source_set_callback, vFpppp_t) \ + GO(g_slist_insert_sorted, pFppp_t) \ + GO(g_slist_insert_sorted_with_data, pFpppp_t) \ + GO(g_slist_foreach, pFppp_t) \ + GO(g_slist_find_custom, pFppp_t) \ + GO(g_idle_add, uFpp_t) \ + GO(g_variant_new_va, pFppp_t) \ + GO(g_completion_new, pFp_t) \ + GO(g_completion_set_compare, vFpp_t) \ + GO(g_log_set_default_handler, pFpp_t) \ + GO(g_io_add_watch, uFpipp_t) \ + GO(g_io_add_watch_full, uFpiippp_t) \ + GO(g_set_print_handler, pFp_t) \ + GO(g_set_printerr_handler, pFp_t) \ + GO(g_slist_sort, pFpp_t) \ + GO(g_slist_sort_with_data, pFppp_t) \ + GO(g_build_pathv, pFpp_t) \ + GO(g_list_sort, pFpp_t) \ + GO(g_list_sort_with_data, pFppp_t) \ + GO(g_queue_find_custom, pFppp_t) \ + GO(g_list_find_custom, pFppp_t) \ + GO(g_timeout_add_seconds, uFupp_t) \ + GO(g_timeout_add_seconds_full, uFiuppp_t) \ + GO(g_log_set_handler, uFpipp_t) \ + GO(g_set_error_literal, vFppip_t) \ + + +typedef struct glib2_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} glib2_my_t; + +void* getGlib2My(library_t* lib) +{ + glib2_my_t* my = (glib2_my_t*)calloc(1, sizeof(glib2_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGlib2My(void* lib) +{ + //glib2_my_t *my = (glib2_my_t *)lib; +} + +EXPORT void* my_g_markup_vprintf_escaped(x64emu_t *emu, void* fmt, void* b) { + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + // need to align on arm + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + return my->g_markup_vprintf_escaped(fmt, VARARGS); +} + +EXPORT void* my_g_build_filename(x64emu_t* emu, void* first, void** b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + int i = 0; + while (b[i++]); + void* array[i+1]; // +1 for 1st (NULL terminal already included) + array[0] = first; + memcpy(array+1, b, sizeof(void*)*i); + void* ret = my->g_build_filenamev(array); + return ret; +} + +static int my_timeout_cb(my_signal_t* sig) +{ + return (int)RunFunction(my_context, sig->c_handler, 1, sig->data); +} +EXPORT uint32_t my_g_timeout_add(x64emu_t* emu, uint32_t interval, void* func, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my_signal_t *sig = new_mysignal(func, data, NULL); + return my->g_timeout_add_full(0, interval, my_timeout_cb, sig, my_signal_delete); +} +typedef int (*GSourceFunc) (void* user_data); + +typedef struct my_GSourceFuncs_s { + int (*prepare) (void* source, int* timeout_); + int (*check) (void* source); + int (*dispatch) (void* source, GSourceFunc callback,void* user_data); + void (*finalize) (void* source); +} my_GSourceFuncs_t; + +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) \ +GO(4) \ +GO(5) \ +GO(6) \ +GO(7) + +// GCopyFct +/*#define GO(A) \ +static uintptr_t my_copy_fct_##A = 0; \ +static void* my_copy_##A(void* data) \ +{ \ + return (void*)RunFunction(my_context, my_copy_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findCopyFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_copy_fct_##A == (uintptr_t)fct) return my_copy_##A; + SUPER() + #undef GO + #define GO(A) if(my_copy_fct_##A == 0) {my_copy_fct_##A = (uintptr_t)fct; return my_copy_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 Copy callback\n"); + return NULL; +}*/ +// GFreeFct +#define GO(A) \ +static uintptr_t my_free_fct_##A = 0; \ +static void my_free_##A(void* data) \ +{ \ + RunFunction(my_context, my_free_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findFreeFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_free_fct_##A == (uintptr_t)fct) return my_free_##A; + SUPER() + #undef GO + #define GO(A) if(my_free_fct_##A == 0) {my_free_fct_##A = (uintptr_t)fct; return my_free_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 Free callback\n"); + return NULL; +} +// GDuplicateFct +#define GO(A) \ +static uintptr_t my_duplicate_fct_##A = 0; \ +static void* my_duplicate_##A(void* data) \ +{ \ + return (void*)RunFunction(my_context, my_duplicate_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findDuplicateFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_duplicate_fct_##A == (uintptr_t)fct) return my_duplicate_##A; + SUPER() + #undef GO + #define GO(A) if(my_duplicate_fct_##A == 0) {my_duplicate_fct_##A = (uintptr_t)fct; return my_duplicate_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 Duplicate callback\n"); + return NULL; +} +// GSourceFuncs.... +// g_source_new callback. First the structure GSourceFuncs statics, with paired x64 source pointer +#define GO(A) \ +static my_GSourceFuncs_t my_gsourcefuncs_##A = {0}; \ +static my_GSourceFuncs_t *ref_gsourcefuncs_##A = NULL; +SUPER() +#undef GO +// then the static functions callback that may be used with the structure, but dispatch also have a callback... +#define GO(A) \ +static uintptr_t fct_funcs_prepare_##A = 0; \ +static int my_funcs_prepare_##A(void* source, int timeout_) { \ + return (int)RunFunction(my_context, fct_funcs_prepare_##A, 2, source, timeout_); \ +} \ +static uintptr_t fct_funcs_check_##A = 0; \ +static int my_funcs_check_##A(void* source) { \ + return (int)RunFunction(my_context, fct_funcs_check_##A, 1, source); \ +} \ +static uintptr_t fct_funcs_dispatch_cb_##A = 0; \ +static int my_funcs_dispatch_cb_##A(void* a, void* b, void* c, void* d) { \ + return (int)RunFunction(my_context, fct_funcs_dispatch_cb_##A, 4, a, b, c, d); \ +} \ +static uintptr_t fct_funcs_dispatch_##A = 0; \ +static int my_funcs_dispatch_##A(void* source, void* cb, void* data) { \ + uintptr_t old = fct_funcs_dispatch_cb_##A; \ + fct_funcs_dispatch_cb_##A = (uintptr_t)cb; \ + return (int)RunFunction(my_context, fct_funcs_dispatch_##A, 3, source, cb?my_funcs_dispatch_cb_##A:NULL, data); \ + fct_funcs_dispatch_cb_##A = old; \ +} \ +static uintptr_t fct_funcs_finalize_##A = 0; \ +static int my_funcs_finalize_##A(void* source) { \ + return (int)RunFunction(my_context, fct_funcs_finalize_##A, 1, source); \ +} +SUPER() +#undef GO +// and now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +static my_GSourceFuncs_t* findFreeGSourceFuncs(my_GSourceFuncs_t* fcts) +{ + if(!fcts) return fcts; + #define GO(A) if(ref_gsourcefuncs_##A == fcts) return &my_gsourcefuncs_##A; + SUPER() + #undef GO + #define GO(A) if(ref_gsourcefuncs_##A == 0) { \ + ref_gsourcefuncs_##A = fcts; \ + my_gsourcefuncs_##A.prepare = (fcts->prepare)?((GetNativeFnc((uintptr_t)fcts->prepare))?GetNativeFnc((uintptr_t)fcts->prepare):my_funcs_prepare_##A):NULL; \ + fct_funcs_prepare_##A = (uintptr_t)fcts->prepare; \ + my_gsourcefuncs_##A.check = (fcts->check)?((GetNativeFnc((uintptr_t)fcts->check))?GetNativeFnc((uintptr_t)fcts->check):my_funcs_check_##A):NULL; \ + fct_funcs_check_##A = (uintptr_t)fcts->check; \ + my_gsourcefuncs_##A.dispatch = (fcts->dispatch)?((GetNativeFnc((uintptr_t)fcts->dispatch))?GetNativeFnc((uintptr_t)fcts->dispatch):my_funcs_dispatch_##A):NULL; \ + fct_funcs_dispatch_##A = (uintptr_t)fcts->dispatch; \ + my_gsourcefuncs_##A.finalize = (fcts->finalize)?((GetNativeFnc((uintptr_t)fcts->finalize))?GetNativeFnc((uintptr_t)fcts->finalize):my_funcs_finalize_##A):NULL; \ + fct_funcs_finalize_##A = (uintptr_t)fcts->finalize; \ + return &my_gsourcefuncs_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GSourceFuncs callback\n"); + return NULL; +} + +// PollFunc ... +#define GO(A) \ +static uintptr_t my_poll_fct_##A = 0; \ +static int my_poll_##A(void* ufds, uint32_t nfsd, int32_t timeout_) \ +{ \ + return RunFunction(my_context, my_poll_fct_##A, 3, ufds, nfsd, timeout_);\ +} +SUPER() +#undef GO +static void* findPollFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_poll_fct_##A == (uintptr_t)fct) return my_poll_##A; + SUPER() + #undef GO + #define GO(A) if(my_poll_fct_##A == 0) {my_poll_fct_##A = (uintptr_t)fct; return my_poll_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 Poll callback\n"); + return NULL; +} + +static void* reversePollFct(void* fct) +{ + if(!fct) return fct; + #define GO(A) if((uintptr_t)fct == my_poll_fct_##A) return (void*)my_poll_fct_##A; + SUPER() + #undef GO + return NULL; +} + +// GHashFunc ... +#define GO(A) \ +static uintptr_t my_hashfunc_fct_##A = 0; \ +static uint32_t my_hashfunc_##A(void* key) \ +{ \ + return (uint32_t)RunFunction(my_context, my_hashfunc_fct_##A, 1, key);\ +} +SUPER() +#undef GO +static void* findHashFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_hashfunc_fct_##A == (uintptr_t)fct) return my_hashfunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_hashfunc_fct_##A == 0) {my_hashfunc_fct_##A = (uintptr_t)fct; return my_hashfunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GHashFunc callback\n"); + return NULL; +} +// GEqualFunc ... +#define GO(A) \ +static uintptr_t my_equalfunc_fct_##A = 0; \ +static int my_equalfunc_##A(void* a, void* b) \ +{ \ + return RunFunction(my_context, my_equalfunc_fct_##A, 2, a, b);\ +} +SUPER() +#undef GO +static void* findEqualFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_equalfunc_fct_##A == (uintptr_t)fct) return my_equalfunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_equalfunc_fct_##A == 0) {my_equalfunc_fct_##A = (uintptr_t)fct; return my_equalfunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GEqualFunc callback\n"); + return NULL; +} +// GDestroyFunc ... +#define GO(A) \ +static uintptr_t my_destroyfunc_fct_##A = 0; \ +static int my_destroyfunc_##A(void* a, void* b) \ +{ \ + return RunFunction(my_context, my_destroyfunc_fct_##A, 2, a, b);\ +} +SUPER() +#undef GO +static void* findDestroyFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_destroyfunc_fct_##A == (uintptr_t)fct) return my_destroyfunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_destroyfunc_fct_##A == 0) {my_destroyfunc_fct_##A = (uintptr_t)fct; return my_destroyfunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GDestroyNotify callback\n"); + return NULL; +} +// GSpawnChildSetupFunc ... +#define GO(A) \ +static uintptr_t my_spwnchildsetup_fct_##A = 0; \ +static void my_spwnchildsetup_##A(void* data) \ +{ \ + RunFunction(my_context, my_spwnchildsetup_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findSpawnChildSetupFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_spwnchildsetup_fct_##A == (uintptr_t)fct) return my_spwnchildsetup_##A; + SUPER() + #undef GO + #define GO(A) if(my_spwnchildsetup_fct_##A == 0) {my_spwnchildsetup_fct_##A = (uintptr_t)fct; return my_spwnchildsetup_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GSpawnChildSetup callback\n"); + return NULL; +} +// GSourceFunc ... +#define GO(A) \ +static uintptr_t my_GSourceFunc_fct_##A = 0; \ +static void my_GSourceFunc_##A(void* a, void* b, void* c, void* d) \ +{ \ + RunFunction(my_context, my_GSourceFunc_fct_##A, 4, a, b, c, d);\ +} +SUPER() +#undef GO +static void* findGSourceFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GSourceFunc_fct_##A == (uintptr_t)fct) return my_GSourceFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GSourceFunc_fct_##A == 0) {my_GSourceFunc_fct_##A = (uintptr_t)fct; return my_GSourceFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GSourceFunc callback\n"); + return NULL; +} +// GCompareFunc ... +#define GO(A) \ +static uintptr_t my_GCompareFunc_fct_##A = 0; \ +static int my_GCompareFunc_##A(void* a, void* b) \ +{ \ + return (int)RunFunction(my_context, my_GCompareFunc_fct_##A, 2, a, b);\ +} +SUPER() +#undef GO +static void* findGCompareFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCompareFunc_fct_##A == (uintptr_t)fct) return my_GCompareFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCompareFunc_fct_##A == 0) {my_GCompareFunc_fct_##A = (uintptr_t)fct; return my_GCompareFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GCompareFunc callback\n"); + return NULL; +} +// GCompareDataFunc ... +#define GO(A) \ +static uintptr_t my_GCompareDataFunc_fct_##A = 0; \ +static int my_GCompareDataFunc_##A(void* a, void* b, void* data) \ +{ \ + return (int)RunFunction(my_context, my_GCompareDataFunc_fct_##A, 3, a, b, data);\ +} +SUPER() +#undef GO +static void* findGCompareDataFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCompareDataFunc_fct_##A == (uintptr_t)fct) return my_GCompareDataFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCompareDataFunc_fct_##A == 0) {my_GCompareDataFunc_fct_##A = (uintptr_t)fct; return my_GCompareDataFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GCompareDataFunc callback\n"); + return NULL; +} +// GCompletionFunc ... +#define GO(A) \ +static uintptr_t my_GCompletionFunc_fct_##A = 0; \ +static void* my_GCompletionFunc_##A(void* a) \ +{ \ + return (void*)RunFunction(my_context, my_GCompletionFunc_fct_##A, 1, a);\ +} +SUPER() +#undef GO +static void* findGCompletionFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCompletionFunc_fct_##A == (uintptr_t)fct) return my_GCompletionFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCompletionFunc_fct_##A == 0) {my_GCompletionFunc_fct_##A = (uintptr_t)fct; return my_GCompletionFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GCompletionFunc callback\n"); + return NULL; +} +// GCompletionStrncmpFunc ... +#define GO(A) \ +static uintptr_t my_GCompletionStrncmpFunc_fct_##A = 0; \ +static int my_GCompletionStrncmpFunc_##A(void* a, void* b, unsigned long n) \ +{ \ + return (int)RunFunction(my_context, my_GCompletionStrncmpFunc_fct_##A, 3, a, b, n); \ +} +SUPER() +#undef GO +static void* findGCompletionStrncmpFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GCompletionStrncmpFunc_fct_##A == (uintptr_t)fct) return my_GCompletionStrncmpFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GCompletionStrncmpFunc_fct_##A == 0) {my_GCompletionStrncmpFunc_fct_##A = (uintptr_t)fct; return my_GCompletionStrncmpFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GCompletionStrncmpFunc callback\n"); + return NULL; +} +// GIOFunc ... +#define GO(A) \ +static uintptr_t my_GIOFunc_fct_##A = 0; \ +static int my_GIOFunc_##A(void* a, int b, void* c) \ +{ \ + return (int)RunFunction(my_context, my_GIOFunc_fct_##A, 3, a, b, c); \ +} +SUPER() +#undef GO +static void* findGIOFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GIOFunc_fct_##A == (uintptr_t)fct) return my_GIOFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GIOFunc_fct_##A == 0) {my_GIOFunc_fct_##A = (uintptr_t)fct; return my_GIOFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GIOFunc callback\n"); + return NULL; +} +// GDestroyNotify ... +#define GO(A) \ +static uintptr_t my_GDestroyNotify_fct_##A = 0; \ +static void my_GDestroyNotify_##A(void* a) \ +{ \ + RunFunction(my_context, my_GDestroyNotify_fct_##A, 1, a); \ +} +SUPER() +#undef GO +static void* findGDestroyNotifyFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDestroyNotify_fct_##A == (uintptr_t)fct) return my_GDestroyNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDestroyNotify_fct_##A == 0) {my_GDestroyNotify_fct_##A = (uintptr_t)fct; return my_GDestroyNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GDestroyNotify callback\n"); + return NULL; +} +// GFunc ... +#define GO(A) \ +static uintptr_t my_GFunc_fct_##A = 0; \ +static void my_GFunc_##A(void* a, void* b) \ +{ \ + RunFunction(my_context, my_GFunc_fct_##A, 2, a, b); \ +} +SUPER() +#undef GO +static void* findGFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GFunc_fct_##A == (uintptr_t)fct) return my_GFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GFunc_fct_##A == 0) {my_GFunc_fct_##A = (uintptr_t)fct; return my_GFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GFunc callback\n"); + return NULL; +} +// GHFunc ... +#define GO(A) \ +static uintptr_t my_GHFunc_fct_##A = 0; \ +static void my_GHFunc_##A(void* a, void* b, void* c) \ +{ \ + RunFunction(my_context, my_GHFunc_fct_##A, 3, a, b, c); \ +} +SUPER() +#undef GO +static void* findGHFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GHFunc_fct_##A == (uintptr_t)fct) return my_GHFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GHFunc_fct_##A == 0) {my_GHFunc_fct_##A = (uintptr_t)fct; return my_GHFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GHFunc callback\n"); + return NULL; +} +// GHRFunc ... +#define GO(A) \ +static uintptr_t my_GHRFunc_fct_##A = 0; \ +static int my_GHRFunc_##A(void* a, void* b, void* c) \ +{ \ + return RunFunction(my_context, my_GHRFunc_fct_##A, 3, a, b, c); \ +} +SUPER() +#undef GO +static void* findGHRFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GHRFunc_fct_##A == (uintptr_t)fct) return my_GHRFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GHRFunc_fct_##A == 0) {my_GHRFunc_fct_##A = (uintptr_t)fct; return my_GHRFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GHRFunc callback\n"); + return NULL; +} +// GChildWatchFunc ... +#define GO(A) \ +static uintptr_t my_GChildWatchFunc_fct_##A = 0; \ +static void my_GChildWatchFunc_##A(int a, int b, void* c) \ +{ \ + RunFunction(my_context, my_GChildWatchFunc_fct_##A, 3, a, b, c); \ +} +SUPER() +#undef GO +static void* findGChildWatchFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GChildWatchFunc_fct_##A == (uintptr_t)fct) return my_GChildWatchFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GChildWatchFunc_fct_##A == 0) {my_GChildWatchFunc_fct_##A = (uintptr_t)fct; return my_GChildWatchFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GChildWatchFunc callback\n"); + return NULL; +} +// GLogFunc ... +#define GO(A) \ +static uintptr_t my_GLogFunc_fct_##A = 0; \ +static void my_GLogFunc_##A(void* a, int b, void* c, void* d) \ +{ \ + RunFunction(my_context, my_GLogFunc_fct_##A, 4, a, b, c, d); \ +} +SUPER() +#undef GO +static void* findGLogFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GLogFunc_fct_##A == (uintptr_t)fct) return my_GLogFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GLogFunc_fct_##A == 0) {my_GLogFunc_fct_##A = (uintptr_t)fct; return my_GLogFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GLogFunc callback\n"); + return NULL; +} +static void* reverseGLogFuncFct(void* fct) +{ + if(!fct) return fct; + #define GO(A) if((uintptr_t)fct == my_GLogFunc_fct_##A) return (void*)my_GLogFunc_fct_##A; + SUPER() + #undef GO + return NULL; +} +// GPrintFunc ... +#define GO(A) \ +static uintptr_t my_GPrintFunc_fct_##A = 0; \ +static void my_GPrintFunc_##A(void* a) \ +{ \ + RunFunction(my_context, my_GPrintFunc_fct_##A, 1, a); \ +} +SUPER() +#undef GO +static void* findGPrintFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GPrintFunc_fct_##A == (uintptr_t)fct) return my_GPrintFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GPrintFunc_fct_##A == 0) {my_GPrintFunc_fct_##A = (uintptr_t)fct; return my_GPrintFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for glib2 GPrintFunc callback\n"); + return NULL; +} +static void* reverseGPrintFuncFct(void* fct) +{ + if(!fct) return fct; + #define GO(A) if((uintptr_t)fct == my_GPrintFunc_fct_##A) return (void*)my_GPrintFunc_fct_##A; + SUPER() + #undef GO + return NULL; +} + +#undef SUPER + +EXPORT void my_g_list_free_full(x64emu_t* emu, void* list, void* free_func) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + my->g_list_free_full(list, findFreeFct(free_func)); +} + +EXPORT void* my_g_markup_printf_escaped(x64emu_t *emu, void* fmt, void* b) { + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + // need to align on arm + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + return my->g_markup_vprintf_escaped(fmt, VARARGS); +} + + +EXPORT void my_g_datalist_id_set_data_full(x64emu_t* emu, void* datalist, uint32_t key, void* data, void* freecb) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + void* fc = findFreeFct(freecb); + my->g_datalist_id_set_data_full(datalist, key, data, fc); +} + +EXPORT void* my_g_datalist_id_dup_data(x64emu_t* emu, void* datalist, uint32_t key, void* dupcb, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + void* cc = findDuplicateFct(dupcb); + return my->g_datalist_id_dup_data(datalist, key, cc, data); +} + +EXPORT int my_g_datalist_id_replace_data(x64emu_t* emu, void* datalist, uint32_t key, void* oldval, void* newval, void* oldfree, void* newfree) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + void* oldfc = findFreeFct(oldfree); + void* newfc = findFreeFct(newfree); + return my->g_datalist_id_replace_data(datalist, key, oldval, newval, oldfc, newfc); +} + +EXPORT void* my_g_variant_new_from_data(x64emu_t* emu, void* type, void* data, uint32_t size, int trusted, void* freecb, void* datacb) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + void* fc = findFreeFct(freecb); + return my->g_variant_new_from_data(type, data, size, trusted, fc, datacb); +} + +EXPORT void* my_g_variant_new_parsed_va(x64emu_t* emu, void* fmt, x64_va_list_t b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + CONVERT_VALIST(b); + return my->g_variant_new_parsed_va(fmt, &VARARGS); +} + +EXPORT void my_g_variant_get(x64emu_t* emu, void* value, void* fmt, uint64_t* V) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + CREATE_VALIST_FROM_VAARG(V, emu->scratch, 2); + my->g_variant_get_va(value, fmt, NULL, &VARARGS); +} + +EXPORT void* my_g_strdup_vprintf(x64emu_t* emu, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + return my->g_strdup_vprintf(fmt, VARARGS); +} + +EXPORT int my_g_vprintf(x64emu_t* emu, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + return my->g_vprintf(fmt, VARARGS); +} + +EXPORT int my_g_vfprintf(x64emu_t* emu, void* F, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2); + PREPARE_VALIST; + return my->g_vfprintf(F, fmt, VARARGS); +} + +EXPORT int my_g_vsprintf(x64emu_t* emu, void* s, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2); + PREPARE_VALIST; + return my->g_vsprintf(s, fmt, VARARGS); +} + +EXPORT int my_g_vsnprintf(x64emu_t* emu, void* s, unsigned long n, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 3); + PREPARE_VALIST; + return my->g_vsnprintf(s, n, fmt, VARARGS); +} + +EXPORT int my_g_vasprintf(x64emu_t* emu, void* s, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2); + PREPARE_VALIST; + return my->g_vasprintf(s, fmt, VARARGS); +} + +EXPORT uint32_t my_g_printf_string_upper_bound(x64emu_t* emu, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + return my->g_printf_string_upper_bound(fmt, VARARGS); +} + +EXPORT void my_g_print(x64emu_t* emu, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + char* buf = NULL; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + int ret = vasprintf(&buf, fmt, VARARGS); + (void)ret; + my->g_print(buf); + free(buf); +} + +EXPORT void my_g_printerr(x64emu_t* emu, void* fmt, void* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + char* buf = NULL; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 1); + PREPARE_VALIST; + int ret = vasprintf(&buf, fmt, VARARGS); + (void)ret; + my->g_printerr(buf); + free(buf); +} + +EXPORT void* my_g_source_new(x64emu_t* emu, my_GSourceFuncs_t* source_funcs, uint32_t struct_size) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_source_new(findFreeGSourceFuncs(source_funcs), struct_size); +} + +EXPORT void my_g_source_set_funcs(x64emu_t* emu, void* source, my_GSourceFuncs_t* source_funcs) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_source_set_funcs(source, findFreeGSourceFuncs(source_funcs)); +} + + +EXPORT int my_g_source_remove_by_funcs_user_data(x64emu_t* emu, my_GSourceFuncs_t* source_funcs, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_source_remove_by_funcs_user_data(findFreeGSourceFuncs(source_funcs), data); +} + +EXPORT void* my_g_main_context_get_poll_func(x64emu_t* emu, void* context) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + void* ret = my->g_main_context_get_poll_func(context); + if(!ret) return ret; + void* r = reversePollFct(ret); + if(r) return r; + // needs to bridge.... + return (void*)AddCheckBridge(my_lib->priv.w.bridge, iFpui, ret, 0, NULL); +} + +EXPORT void my_g_main_context_set_poll_func(x64emu_t* emu, void* context, void* func) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_main_context_set_poll_func(context, findPollFct(func)); +} + +EXPORT uint32_t my_g_idle_add_full(x64emu_t* emu, int priority, void* f, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + if(!f) + return my->g_idle_add_full(priority, f, data, notify); + + my_signal_t *sig = new_mysignal(f, data, notify); + printf_log(LOG_DEBUG, "glib2 Idle CB with priority %d created for %p, sig=%p\n", priority, f, sig); + return my->g_idle_add_full(priority, my_timeout_cb, sig, my_signal_delete); +} + +EXPORT void* my_g_hash_table_new(x64emu_t* emu, void* hash, void* equal) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_hash_table_new(findHashFct(hash), findEqualFct(equal)); +} + +EXPORT void* my_g_hash_table_new_full(x64emu_t* emu, void* hash, void* equal, void* destroy_key, void* destroy_val) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_hash_table_new_full(findHashFct(hash), findEqualFct(equal), findDestroyFct(destroy_key), findDestroyFct(destroy_val)); +} + +EXPORT void my_g_hash_table_foreach(x64emu_t* emu, void* table, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_hash_table_foreach(table, findGHFuncFct(f), data); +} + +EXPORT uint32_t my_g_hash_table_foreach_remove(x64emu_t* emu, void* table, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_hash_table_foreach_remove(table, findGHRFuncFct(f), data); +} +EXPORT uint32_t my_g_hash_table_foreach_steal(x64emu_t* emu, void* table, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_hash_table_foreach_steal(table, findGHRFuncFct(f), data); +} +EXPORT void* my_g_hash_table_find(x64emu_t* emu, void* table, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_hash_table_find(table, findGHRFuncFct(f), data); +} + +EXPORT int my_g_spawn_async_with_pipes(x64emu_t* emu, void* dir, void* argv, void* envp, int flags, void* f, void* data, void* child, void* input, void* output, void* err, void* error) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_spawn_async_with_pipes(dir, argv, envp, flags, findSpawnChildSetupFct(f), data, child, input, output, err, error); +} + +EXPORT int my_g_spawn_async(x64emu_t* emu, void* dir, void* argv, void* envp, int flags, void* f, void* data, void* child, void* error) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_spawn_async(dir, argv, envp, flags, findSpawnChildSetupFct(f), data, child, error); +} + +EXPORT int my_g_spawn_sync(x64emu_t* emu, void* dir, void* argv, void* envp, int flags, void* f, void* data, void* input, void* output, void* status, void* error) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_spawn_sync(dir, argv, envp, flags, findSpawnChildSetupFct(f), data, input, output, status, error); +} + +EXPORT uint32_t my_g_child_watch_add(x64emu_t* emu, int pid, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_child_watch_add(pid, findGChildWatchFuncFct(f), data); +} + +EXPORT uint32_t my_g_child_watch_add_full(x64emu_t* emu, int priority, int pid, void* f, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_idle_add_full(priority, findGChildWatchFuncFct(f), data, findGDestroyNotifyFct(notify)); +} + +EXPORT void* my_g_private_new(x64emu_t* emu, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_private_new(findFreeFct(notify)); +} + +EXPORT void my_g_static_private_set(x64emu_t* emu, void* private, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_static_private_set(private, data, findFreeFct(notify)); +} + +EXPORT void* my_g_ptr_array_new_with_free_func(x64emu_t* emu, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_ptr_array_new_with_free_func(findFreeFct(notify)); +} + +EXPORT void* my_g_ptr_array_new_full(x64emu_t* emu, uint32_t size, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_ptr_array_new_full(size, findFreeFct(notify)); +} + +EXPORT void my_g_ptr_array_set_free_func(x64emu_t* emu, void* array, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_ptr_array_set_free_func(array, findFreeFct(notify)); +} + +EXPORT void my_g_ptr_array_sort(x64emu_t* emu, void* array, void* comp) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_ptr_array_sort(array, findGCompareFuncFct(comp)); +} + +EXPORT void my_g_ptr_array_sort_with_data(x64emu_t* emu, void* array, void* comp, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_ptr_array_sort_with_data(array, findGCompareDataFuncFct(comp), data); +} + +EXPORT void my_g_qsort_with_data(x64emu_t* emu, void* pbase, int total, unsigned long size, void* comp, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_qsort_with_data(pbase, total, size, findGCompareDataFuncFct(comp), data); +} + +EXPORT void my_g_ptr_array_foreach(x64emu_t* emu, void* array, void* func, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_ptr_array_foreach(array, findGFuncFct(func), data); +} + +EXPORT void* my_g_thread_create(x64emu_t* emu, void* func, void* data, int joinable, void* error) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + void* et = NULL; + return my->g_thread_create(my_prepare_thread(emu, func, data, 0, &et), et, joinable, error); +} + +EXPORT void* my_g_thread_create_full(x64emu_t* emu, void* func, void* data, unsigned long stack, int joinable, int bound, int priority, void* error) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + void* et = NULL; + return my->g_thread_create_full(my_prepare_thread(emu, func, data, stack, &et), et, stack, joinable, bound, priority, error); +} + +EXPORT void my_g_thread_foreach(x64emu_t* emu, void* func, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_thread_foreach(findGFuncFct(func), data); +} + +EXPORT void my_g_array_sort(x64emu_t* emu, void* array, void* comp) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_array_sort(array, findGCompareFuncFct(comp)); +} + +EXPORT void my_g_array_sort_with_data(x64emu_t* emu, void* array, void* comp, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_array_sort_with_data(array, findGCompareDataFuncFct(comp), data); +} + +EXPORT void my_g_array_set_clear_func(x64emu_t* emu, void* array, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_array_set_clear_func(array, findFreeFct(notify)); +} + +EXPORT void my_g_source_set_callback(x64emu_t* emu, void* source, void* func, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_source_set_callback(source, findGSourceFuncFct(func), data, findFreeFct(notify)); +} + +EXPORT void* my_g_slist_insert_sorted(x64emu_t* emu, void* list, void* d, void* comp) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_slist_insert_sorted(list, d, findGCompareFuncFct(comp)); +} +EXPORT void* my_g_slist_insert_sorted_with_data(x64emu_t* emu, void* list, void* d, void* comp, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_slist_insert_sorted_with_data(list, d, findGCompareDataFuncFct(comp), data); +} + +EXPORT void my_g_slist_foreach(x64emu_t* emu, void* list, void* func, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_slist_foreach(list, findGFuncFct(func), data); +} + +EXPORT void* my_g_slist_find_custom(x64emu_t* emu, void* list, void* data, void* comp) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_slist_find_custom(list, data, findGCompareFuncFct(comp)); +} + +EXPORT uint32_t my_g_idle_add(x64emu_t* emu, void* func, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_idle_add(findGSourceFuncFct(func), data); +} + +EXPORT void* my_g_variant_new_va(x64emu_t* emu, char* fmt, void* endptr, x64_va_list_t* b) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + CONVERT_VALIST(*b); + va_list* aligned = &VARARGS; + return my->g_variant_new_va(fmt, endptr, &aligned); +} + +EXPORT void* my_g_variant_new(x64emu_t* emu, char* fmt, uint64_t* V) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + CREATE_VALIST_FROM_VAARG(V, emu->scratch, 1); + return my->g_variant_new_va(fmt, NULL, &VARARGS); +} + +EXPORT void* my_g_completion_new(x64emu_t* emu, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_completion_new(findGCompletionFct(f)); +} + +EXPORT void my_g_completion_set_compare(x64emu_t *emu, void* cmp, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + my->g_completion_set_compare(cmp, findGCompletionStrncmpFuncFct(f)); +} + +EXPORT void* my_g_log_set_default_handler(x64emu_t *emu, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return reverseGLogFuncFct(my->g_log_set_default_handler(findGLogFuncFct(f), data)); +} + +EXPORT uint32_t my_g_io_add_watch_full(x64emu_t* emu, void* channel, int priority, int cond, void* f, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_io_add_watch_full(channel, priority, cond, findGIOFuncFct(f), data, findDestroyFct(notify)); +} + +EXPORT uint32_t my_g_io_add_watch(x64emu_t* emu, void* channel, int cond, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_io_add_watch(channel, cond, findGIOFuncFct(f), data); +} + +EXPORT void* my_g_set_print_handler(x64emu_t *emu, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return reverseGPrintFuncFct(my->g_set_print_handler(findGPrintFuncFct(f))); +} + +EXPORT void* my_g_set_printerr_handler(x64emu_t *emu, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return reverseGPrintFuncFct(my->g_set_printerr_handler(findGPrintFuncFct(f))); +} + +EXPORT void* my_g_slist_sort(x64emu_t *emu, void* list, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_slist_sort(list, findGCompareFuncFct(f)); +} + +EXPORT void* my_g_slist_sort_with_data(x64emu_t *emu, void* list, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_slist_sort_with_data(list, findGCompareDataFuncFct(f), data); +} + +EXPORT void* my_g_build_path(x64emu_t *emu, void* sep, void* first, void** data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + int n = (first)?1:0; + void* p = n?data[0]:NULL; + while(p) { + p = data[n++]; + } + ++n; // final NULL + void** args = (void**)malloc(n *sizeof(void*)); + args[0] = first; + for(int i=1; i<n; ++i) + args[i] = data[i-1]; + p = my->g_build_pathv(sep, args); + free(args); + return p; +} + +EXPORT void* my_g_list_sort(x64emu_t *emu, void* list, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_list_sort(list, findGCompareFuncFct(f)); +} + +EXPORT void* my_g_list_sort_with_data(x64emu_t *emu, void* list, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_list_sort_with_data(list, findGCompareDataFuncFct(f), data); +} + +EXPORT void* my_g_queue_find_custom(x64emu_t *emu, void* queue, void* data, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_queue_find_custom(queue, data, findGCompareFuncFct(f)); +} + +EXPORT void* my_g_list_find_custom(x64emu_t *emu, void* list, void* data, void* f) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_list_find_custom(list, data, findGCompareFuncFct(f)); +} + +EXPORT uint32_t my_g_timeout_add_full(x64emu_t *emu, int priority, uint32_t interval, void* f, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_timeout_add_full(priority, interval, findGSourceFuncFct(f), data, findDestroyFct(notify)); +} + +EXPORT uint32_t my_g_timeout_add_seconds(x64emu_t *emu, uint32_t interval, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_timeout_add_seconds(interval, findGSourceFuncFct(f), data); +} + +EXPORT uint32_t my_g_timeout_add_seconds_full(x64emu_t *emu, int priority, uint32_t interval, void* f, void* data, void* notify) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_timeout_add_seconds_full(priority, interval, findGSourceFuncFct(f), data, findDestroyFct(notify)); +} + +EXPORT uint32_t my_g_log_set_handler(x64emu_t *emu, void* domain, int level, void* f, void* data) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + + return my->g_log_set_handler(domain, level, findGLogFuncFct(f), data); +} + +EXPORT void my_g_set_error(x64emu_t *emu, void* err, void* domain, int code, void* fmt, uintptr_t* stack) +{ + glib2_my_t *my = (glib2_my_t*)my_lib->priv.w.p2; + char buf[1000]; + myStackAlign(emu, fmt, stack, emu->scratch, R_EAX, 4); + PREPARE_VALIST; + vsnprintf(buf, sizeof(buf), fmt, VARARGS); + my->g_set_error_literal(err, domain, code, buf); +} + + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + libname = lib->name;\ + my_lib = lib; \ + lib->priv.w.p2 = getGlib2My(lib); + +#define CUSTOM_FINI \ + freeGlib2My(lib->priv.w.p2);\ + free(lib->priv.w.p2); \ + my_lib = NULL; + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappedglib2_private.h b/src/wrapped/wrappedglib2_private.h new file mode 100755 index 00000000..f2ddf805 --- /dev/null +++ b/src/wrapped/wrappedglib2_private.h @@ -0,0 +1,1619 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(__aeabi_d2lz, +//GO(__aeabi_d2ulz, +//GO(_fini, +GO(g_access, iFpi) +GO(g_allocator_free, vFp) +GO(g_allocator_new, pFpu) +GO(g_array_append_vals, pFppu) +GO(g_array_free, pFpi) +GO(g_array_get_element_size, uFp) +GO(g_array_insert_vals, pFpupu) +GO(g_array_new, pFiiu) +GO(g_array_prepend_vals, pFppu) +GO(g_array_ref, pFp) +GO(g_array_remove_index, pFpu) +GO(g_array_remove_index_fast, pFpu) +GO(g_array_remove_range, pFpuu) +GOM(g_array_set_clear_func, vFEpp) +GO(g_array_set_size, pFpu) +GO(g_array_sized_new, pFiiuu) +GOM(g_array_sort, vFEpp) +GOM(g_array_sort_with_data, vFEppp) +GO(g_array_unref, vFp) +GO(g_ascii_digit_value, iFC) +GO(g_ascii_dtostr, pFpid) +GO(g_ascii_formatd, pFpipd) +GO(g_ascii_strcasecmp, iFpp) +GO(g_ascii_strdown, pFpi) +GO(g_ascii_strncasecmp, iFppu) +GO(g_ascii_strtod, dFpp) +GO(g_ascii_strtoll, IFppu) +GO(g_ascii_strtoull, UFppu) +GO(g_ascii_strup, pFpi) +GO(g_ascii_tolower, CFC) +GO(g_ascii_toupper, CFC) +GO(g_ascii_xdigit_value, iFC) +GO(g_assertion_message, vFppipp) +#ifdef HAVE_LD80BITS +GO(g_assertion_message_cmpnum, vFppippDDC) +#else +GO(g_assertion_message_cmpnum, vFppippKKC) +#endif +GO(g_assertion_message_cmpstr, vFppippppp) +GO(g_assertion_message_error, vFppipppui) +GO(g_assertion_message_expr, vFppipp) +GO(g_assert_warning, vFppipp) +GO(g_async_queue_length, iFp) +//GO(g_async_queue_length_unlocked, +GO(g_async_queue_lock, vFp) +GO(g_async_queue_new, pFv) +//GO(g_async_queue_new_full, +GO(g_async_queue_pop, pFp) +//GO(g_async_queue_pop_unlocked, +GO(g_async_queue_push, vFpp) +//GO(g_async_queue_push_sorted, +//GO(g_async_queue_push_sorted_unlocked, +GO(g_async_queue_push_unlocked, vFpp) +GO(g_async_queue_ref, vFp) +//GO(g_async_queue_ref_unlocked, +//GO(g_async_queue_sort, +//GO(g_async_queue_sort_unlocked, +//GO(g_async_queue_timed_pop, +//GO(g_async_queue_timed_pop_unlocked, +GO(g_async_queue_timeout_pop, pFpU) +GO(g_async_queue_timeout_pop_unlocked, pFpU) +GO(g_async_queue_try_pop, pFp) +GO(g_async_queue_try_pop_unlocked, pFp) +GO(g_async_queue_unlock, vFp) +GO(g_async_queue_unref, vFp) +GO(g_async_queue_unref_and_unlock, vFp) +GO2(g_atexit, vFEp, my_atexit) +//GO(g_atomic_int_add, +//GO(g_atomic_int_and, +//GO(g_atomic_int_compare_and_exchange, +//GO(g_atomic_int_dec_and_test, +//GO(g_atomic_int_exchange_and_add, +//GO(g_atomic_int_get, +//GO(g_atomic_int_inc, +//GO(g_atomic_int_or, +//GO(g_atomic_int_set, +//GO(g_atomic_int_xor, +//GO(g_atomic_pointer_add, +//GO(g_atomic_pointer_and, +//GO(g_atomic_pointer_compare_and_exchange, +//GO(g_atomic_pointer_get, +//GO(g_atomic_pointer_or, +//GO(g_atomic_pointer_set, +//GO(g_atomic_pointer_xor, +GO(g_base64_decode, pFpp) +GO(g_base64_decode_inplace, pFpp) +GO(g_base64_decode_step, LFpLppp) +GO(g_base64_encode, pFpL) +GO(g_base64_encode_close, LFippp) +GO(g_base64_encode_step, LFpLippp) +GO(g_basename, pFp) +//GO(g_bit_lock, +GO(g_bit_nth_lsf, iFii) +GO(g_bit_nth_msf, iFii) +GO(g_bit_storage, iFi) +//GO(g_bit_trylock, +//GO(g_bit_unlock, +//GO(g_blow_chunks, +//GO(g_bookmark_file_add_application, +//GO(g_bookmark_file_add_group, +//GO(g_bookmark_file_error_quark, +//GO(g_bookmark_file_free, +//GO(g_bookmark_file_get_added, +//GO(g_bookmark_file_get_app_info, +//GO(g_bookmark_file_get_applications, +//GO(g_bookmark_file_get_description, +//GO(g_bookmark_file_get_groups, +//GO(g_bookmark_file_get_icon, +//GO(g_bookmark_file_get_is_private, +//GO(g_bookmark_file_get_mime_type, +//GO(g_bookmark_file_get_modified, +//GO(g_bookmark_file_get_size, +//GO(g_bookmark_file_get_title, +//GO(g_bookmark_file_get_uris, +//GO(g_bookmark_file_get_visited, +//GO(g_bookmark_file_has_application, +//GO(g_bookmark_file_has_group, +//GO(g_bookmark_file_has_item, +//GO(g_bookmark_file_load_from_data, +//GO(g_bookmark_file_load_from_data_dirs, +//GO(g_bookmark_file_load_from_file, +//GO(g_bookmark_file_move_item, +//GO(g_bookmark_file_new, +//GO(g_bookmark_file_remove_application, +//GO(g_bookmark_file_remove_group, +//GO(g_bookmark_file_remove_item, +//GO(g_bookmark_file_set_added, +//GO(g_bookmark_file_set_app_info, +//GO(g_bookmark_file_set_description, +//GO(g_bookmark_file_set_groups, +//GO(g_bookmark_file_set_icon, +//GO(g_bookmark_file_set_is_private, +//GO(g_bookmark_file_set_mime_type, +//GO(g_bookmark_file_set_modified, +//GO(g_bookmark_file_set_title, +//GO(g_bookmark_file_set_visited, +//GO(g_bookmark_file_to_data, +//GO(g_bookmark_file_to_file, +GOM(g_build_filename, pFEpV) +GO(g_build_filenamev, pFp) +GOM(g_build_path, pFEppV) // wrap using g_build_pathv +GO(g_build_pathv, pFpp) +GO(g_byte_array_append, pFppu) +GO(g_byte_array_free, pFpi) +GO(g_byte_array_free_to_bytes, pFp) +GO(g_byte_array_new, pFv) +GO(g_byte_array_new_take, pFpL) +GO(g_byte_array_prepend, pFppu) +GO(g_byte_array_ref, pFp) +GO(g_byte_array_remove_index, pFpu) +GO(g_byte_array_remove_index_fast, pFpu) +GO(g_byte_array_remove_range, pFpuu) +GO(g_byte_array_set_size, pFpu) +GO(g_byte_array_sized_new, pFu) +//GOM(g_byte_array_sort, vFpB) +//GOM(g_byte_array_sort_with_data, vFpBp) +GO(g_byte_array_unref, vFp) +GO(g_bytes_compare, iFpp) +GO(g_bytes_equal, iFpp) +GO(g_bytes_get_data, pFpL) +GO(g_bytes_get_size, LFp) +GO(g_bytes_hash, uFp) +GO(g_bytes_new, pFpL) +GO(g_bytes_new_from_bytes, pFpLL) +GO(g_bytes_new_static, pFpL) +GO(g_bytes_new_take, pFpL) +//GOM(g_bytes_new_with_free_func, pFppLBp) +GO(g_bytes_ref, pFp) +GO(g_bytes_unref, vFp) +GO(g_bytes_unref_to_array, pFp) +GO(g_bytes_unref_to_data, pFpp) +//GO(g_cache_destroy, +//GO(g_cache_insert, +//GO(g_cache_key_foreach, +//GO(g_cache_new, +//GO(g_cache_remove, +//GO(g_cache_value_foreach, +GO(g_chdir, iFp) +//GO(g_checksum_copy, +//GO(g_checksum_free, +//GO(g_checksum_get_digest, +//GO(g_checksum_get_string, +//GO(g_checksum_new, +//GO(g_checksum_reset, +//GO(g_checksum_type_get_length, +//GO(g_checksum_update, +GOM(g_child_watch_add, uFEipp) +GOM(g_child_watch_add_full, uFEiippp) +GO(g_child_watch_source_new, pFi) +GO(g_chmod, iFpi) +GO(g_clear_error, vFp) +//GOM(g_clear_pointer, vFEpp) +GO(g_close, iFip) +GO(g_completion_add_items, vFpp) +GO(g_completion_clear_items, vFp) +GO(g_completion_complete, pFppp) +GO(g_completion_complete_utf8, pFppp) +GO(g_completion_free, vFp) +GOM(g_completion_new, pFEp) +GO(g_completion_remove_items, vFpp) +GOM(g_completion_set_compare, vFEpp) +//GO(g_compute_checksum_for_bytes, +//GO(g_compute_checksum_for_data, +//GO(g_compute_checksum_for_string, +//GO(g_compute_hmac_for_data, +//GO(g_compute_hmac_for_string, +//GO(g_cond_broadcast, +GO(g_cond_clear, vFp) +GO(g_cond_free, vFp) +GO(g_cond_init, vFp) +GO(g_cond_new, pFv) +//GO(g_cond_signal, +//GO(g_cond_timed_wait, +GO(g_cond_wait, vFpp) +//GO(g_cond_wait_until, +GO(g_convert, pFplppppp) +//GO(g_convert_error_quark, +GO(g_convert_with_fallback, pFplpppppp) +GO(g_convert_with_iconv, pFplpppp) +GO(g_creat, iFpi) +GO(g_datalist_clear, vFp) +//GOM(g_datalist_foreach, vFEppp) +GO(g_datalist_get_data, pFpp) +GO(g_datalist_get_flags, uFp) +GOM(g_datalist_id_dup_data, pFEpupp) +GO(g_datalist_id_get_data, pFpu) +GO(g_datalist_id_remove_no_notify, pFpu) +GOM(g_datalist_id_replace_data, iFEpupppp) +GOM(g_datalist_id_set_data_full, vFEpupp) +GO(g_datalist_init, vFp) +GO(g_datalist_set_flags, vFpu) +GO(g_datalist_unset_flags, vFpu) +//GO(g_dataset_destroy, +//GO(g_dataset_foreach, +//GO(g_dataset_id_get_data, +//GO(g_dataset_id_remove_no_notify, +//GO(g_dataset_id_set_data_full, +GO(g_date_add_days, vFpu) +GO(g_date_add_months, vFpu) +GO(g_date_add_years, vFpu) +GO(g_date_clamp, vFppp) +GO(g_date_clear, vFpu) +GO(g_date_compare, iFpp) +GO(g_date_days_between, iFpp) +GO(g_date_free, vFp) +GO(g_date_get_day, CFp) +GO(g_date_get_day_of_year, uFp) +GO(g_date_get_days_in_month, CFip) +GO(g_date_get_iso8601_week_of_year, uFp) +GO(g_date_get_julian, uFp) +GO(g_date_get_monday_week_of_year, uFp) +GO(g_date_get_monday_weeks_in_year, CFp) +GO(g_date_get_month, iFp) +GO(g_date_get_sunday_week_of_year, uFp) +GO(g_date_get_sunday_weeks_in_year, CFp) +GO(g_date_get_weekday, iFp) +GO(g_date_get_year, WFp) +GO(g_date_is_first_of_month, iFp) +GO(g_date_is_last_of_month, iFp) +GO(g_date_is_leap_year, iFp) +GO(g_date_new, pFv) +GO(g_date_new_dmy, pFCiW) +GO(g_date_new_julian, pFu) +GO(g_date_order, vFpp) +GO(g_date_set_day, vFpC) +GO(g_date_set_dmy, vFpCiW) +GO(g_date_set_julian, vFpu) +GO(g_date_set_month, vFpi) +GO(g_date_set_parse, vFpp) +GO(g_date_set_time, vFpi) +//GO(g_date_set_time_t, +GO(g_date_set_time_val, vFpp) +GO(g_date_set_year, vFpW) +GO(g_date_strftime, LFpLpp) +GO(g_date_subtract_days, vFpu) +GO(g_date_subtract_months, vFpu) +GO(g_date_subtract_years, vFpu) +//GO(g_date_time_add, +//GO(g_date_time_add_days, +//GO(g_date_time_add_full, +//GO(g_date_time_add_hours, +//GO(g_date_time_add_minutes, +//GO(g_date_time_add_months, +//GO(g_date_time_add_seconds, +//GO(g_date_time_add_weeks, +//GO(g_date_time_add_years, +//GO(g_date_time_compare, +//GO(g_date_time_difference, +//GO(g_date_time_equal, +//GO(g_date_time_format, +//GO(g_date_time_get_day_of_month, +//GO(g_date_time_get_day_of_week, +//GO(g_date_time_get_day_of_year, +//GO(g_date_time_get_hour, +//GO(g_date_time_get_microsecond, +//GO(g_date_time_get_minute, +//GO(g_date_time_get_month, +//GO(g_date_time_get_second, +//GO(g_date_time_get_seconds, +//GO(g_date_time_get_timezone_abbreviation, +//GO(g_date_time_get_utc_offset, +//GO(g_date_time_get_week_numbering_year, +//GO(g_date_time_get_week_of_year, +//GO(g_date_time_get_year, +//GO(g_date_time_get_ymd, +//GO(g_date_time_hash, +//GO(g_date_time_is_daylight_savings, +//GO(g_date_time_new, +//GO(g_date_time_new_from_timeval_local, +//GO(g_date_time_new_from_timeval_utc, +//GO(g_date_time_new_from_unix_local, +//GO(g_date_time_new_from_unix_utc, +//GO(g_date_time_new_local, +//GO(g_date_time_new_now, +//GO(g_date_time_new_now_local, +//GO(g_date_time_new_now_utc, +//GO(g_date_time_new_utc, +//GO(g_date_time_ref, +//GO(g_date_time_to_local, +//GO(g_date_time_to_timeval, +//GO(g_date_time_to_timezone, +//GO(g_date_time_to_unix, +//GO(g_date_time_to_utc, +//GO(g_date_time_unref, +GO(g_date_to_struct_tm, vFpp) +GO(g_date_valid, iFp) +GO(g_date_valid_day, iFC) +GO(g_date_valid_dmy, iFCiW) +GO(g_date_valid_julian, iFu) +GO(g_date_valid_month, iFi) +GO(g_date_valid_weekday, iFi) +GO(g_date_valid_year, iFW) +GO(g_dcgettext, pFppi) +GO(g_dgettext, pFpp) +GO(g_dir_close, vFp) +GO(g_direct_equal, iFpp) +GO(g_direct_hash, uFp) +GO(g_dir_make_tmp, pFpp) +GO(g_dir_open, pFp) +GO(g_dir_read_name, pFp) +GO(g_dir_rewind, vFp) +GO(g_dngettext, pFpppL) +GO(g_double_equal, iFpp) +GO(g_double_hash, uFp) +GO(g_dpgettext, pFppL) +GO(g_dpgettext2, pFppp) +GO(g_environ_getenv, pFpp) // should wrap? +GO(g_environ_setenv, pFpppi) +GO(g_environ_unsetenv, pFpp) +GO(g_error_copy, pFp) +GO(g_error_free, vFp) +GO(g_error_matches, iFppi) +GO2(g_error_new, pFpipV, g_error_new_valist) +GO(g_error_new_literal, pFpip) +GO(g_error_new_valist, pFpipp) +GO(g_file_error_from_errno, iFi) +GO(g_file_error_quark, pFv) +GO(g_file_get_contents, iFpppp) +GO(g_filename_display_basename, pFp) +GO(g_filename_display_name, pFp) +GO(g_filename_from_uri, pFppp) +GO(g_filename_from_utf8, pFpippp) +GO(g_filename_to_uri, pFppp) +GO(g_filename_to_utf8, pFpippp) +GO(g_file_open_tmp, iFppp) +GO(g_file_read_link, pFpp) +GO(g_file_set_contents, iFppip) +GO(g_file_test, iFpi) +GO(g_find_program_in_path, pFp) // need wrap? +GO(g_fopen, pFpp) +GO(g_format_size, pFU) +GO(g_format_size_for_display, pFI) +GO(g_format_size_full, pFUi) +GO2(g_fprintf, iFEppV, my_g_vfprintf) +GO(g_free, vFp) +GO(g_freopen, pFppp) +GO(g_get_application_name, pFv) +GO(g_get_charset, iFp) +GO(g_get_codeset, pFv) +GO(g_get_current_dir, pFv) +GO(g_get_current_time, vFp) +GO(g_getenv, pFp) // should wrap? +GO(g_get_environ, pFv) +GO(g_get_filename_charsets, iFp) +GO(g_get_home_dir, pFv) +GO(g_get_host_name, pFv) +GO(g_get_language_names, pFv) +GO(g_get_locale_variants, pFp) +GO(g_get_monotonic_time, IFv) +//GO(g_get_num_processors, +GO(g_get_prgname, pFv) +GO(g_get_real_name, pFv) +GO(g_get_real_time, IFv) +GO(g_get_system_config_dirs, pFv) +GO(g_get_system_data_dirs, pFv) +GO(g_get_tmp_dir, pFv) +GO(g_get_user_cache_dir, pFv) +GO(g_get_user_config_dir, pFv) +GO(g_get_user_data_dir, pFv) +GO(g_get_user_name, pFv) +GO(g_get_user_runtime_dir, pFv) +GO(g_get_user_special_dir, pFi) +GO(g_hash_table_add, iFpp) +GO(g_hash_table_contains, iFpp) +GO(g_hash_table_destroy, vFp) +GOM(g_hash_table_find, pFEppp) +GOM(g_hash_table_foreach, vFEppp) +GOM(g_hash_table_foreach_remove, uFEppp) +GOM(g_hash_table_foreach_steal, uFEppp) +GO(g_hash_table_get_keys, pFp) +GO(g_hash_table_get_keys_as_array, pFpp) +GO(g_hash_table_get_values, pFp) +GO(g_hash_table_insert, iFppp) +GO(g_hash_table_iter_get_hash_table, pFp) +GO(g_hash_table_iter_init, vFpp) +GO(g_hash_table_iter_next, iFppp) +GO(g_hash_table_iter_remove, vFp) +GO(g_hash_table_iter_replace, vFpp) +GO(g_hash_table_iter_steal, vFp) +GO(g_hash_table_lookup, pFpp) +GO(g_hash_table_lookup_extended, iFpppp) +GOM(g_hash_table_new, pFEpp) +GOM(g_hash_table_new_full, pFEpppp) +GO(g_hash_table_ref, pFp) +GO(g_hash_table_remove, iFpp) +GO(g_hash_table_remove_all, vFp) +GO(g_hash_table_replace, iFppp) +GO(g_hash_table_size, uFp) +GO(g_hash_table_steal, iFpp) +GO(g_hash_table_steal_all, vFp) +GO(g_hash_table_unref, vFp) +//GO(g_hmac_copy, +//GO(g_hmac_get_digest, +//GO(g_hmac_get_string, +//GO(g_hmac_new, +//GO(g_hmac_ref, +//GO(g_hmac_unref, +//GO(g_hmac_update, +//GO(g_hook_alloc, +//GO(g_hook_compare_ids, +//GO(g_hook_destroy, +//GO(g_hook_destroy_link, +//GO(g_hook_find, +//GO(g_hook_find_data, +//GO(g_hook_find_func, +//GO(g_hook_find_func_data, +//GO(g_hook_first_valid, +//GO(g_hook_free, +//GO(g_hook_get, +//GO(g_hook_insert_before, +//GO(g_hook_insert_sorted, +//GO(g_hook_list_clear, +//GO(g_hook_list_init, +//GO(g_hook_list_invoke, +//GO(g_hook_list_invoke_check, +//GO(g_hook_list_marshal, +//GO(g_hook_list_marshal_check, +//GO(g_hook_next_valid, +//GO(g_hook_prepend, +//GO(g_hook_ref, +//GO(g_hook_unref, +//GO(g_hostname_is_ascii_encoded, +//GO(g_hostname_is_ip_address, +//GO(g_hostname_is_non_ascii, +//GO(g_hostname_to_ascii, +//GO(g_hostname_to_unicode, +GO(g_iconv, LFppppp) +GO(g_iconv_close, iFp) +GO(g_iconv_open, pFpp) +GOM(g_idle_add, uFEpp) +GOM(g_idle_add_full, uFEippp) +GO(g_idle_remove_by_data, iFp) +GO(g_idle_source_new, pFv) +GO(g_int64_equal, iFpp) +GO(g_int64_hash, uFp) +GO(g_int_equal, iFpp) +GO(g_intern_static_string, pFp) +GO(g_intern_string, pFp) +GO(g_int_hash, uFp) +GOM(g_io_add_watch, uFEpipp) +GOM(g_io_add_watch_full, uFEpiippp) +GO(g_io_channel_close, vFp) +GO(g_io_channel_error_from_errno, iFi) +GO(g_io_channel_error_quark, pFv) +GO(g_io_channel_flush, iFpp) +GO(g_io_channel_get_buffer_condition, iFp) +GO(g_io_channel_get_buffered, iFp) +GO(g_io_channel_get_buffer_size, iFp) +GO(g_io_channel_get_close_on_unref, iFp) +GO(g_io_channel_get_encoding, pFp) +GO(g_io_channel_get_flags, iFp) +GO(g_io_channel_get_line_term, pFpp) +GO(g_io_channel_init, vFp) +GO(g_io_channel_new_file, pFppp) +GO(g_io_channel_read, iFppLp) +GO(g_io_channel_read_chars, iFpplpp) +GO(g_io_channel_read_line, iFppppp) +GO(g_io_channel_read_line_string, iFpppp) +GO(g_io_channel_read_to_end, iFpppp) +GO(g_io_channel_read_unichar, iFppp) +GO(g_io_channel_ref, pFp) +GO(g_io_channel_seek, iFpIi) +GO(g_io_channel_seek_position, iFpIip) +GO(g_io_channel_set_buffered, vFpi) +GO(g_io_channel_set_buffer_size, vFpL) +GO(g_io_channel_set_close_on_unref, vFpi) +GO(g_io_channel_set_encoding, iFppp) +GO(g_io_channel_set_flags, iFpip) +GO(g_io_channel_set_line_term, vFppi) +GO(g_io_channel_shutdown, iFpip) +GO(g_io_channel_unix_get_fd, iFp) +GO(g_io_channel_unix_new, pFi) +GO(g_io_channel_unref, vFp) +GO(g_io_channel_write, iFppLp) +GO(g_io_channel_write_chars, iFpplpp) +GO(g_io_channel_write_unichar, iFpup) +GO(g_io_create_watch, pFpp) +GO(g_key_file_error_quark, pFv) +GO(g_key_file_free, vFp) +GO(g_key_file_get_boolean, iFpppp) +GO(g_key_file_get_boolean_list, pFppppp) +GO(g_key_file_get_comment, pFpppp) +GO(g_key_file_get_double, dFpppp) +GO(g_key_file_get_double_list, pFppppp) +GO(g_key_file_get_groups, pFpp) +GO(g_key_file_get_int64, IFpppp) +GO(g_key_file_get_integer, iFpppp) +GO(g_key_file_get_integer_list, pFppppp) +GO(g_key_file_get_keys, pFpppp) +GO(g_key_file_get_locale_string, pFppppp) +GO(g_key_file_get_locale_string_list, pFpppppp) +GO(g_key_file_get_start_group, pFp) +GO(g_key_file_get_string, pFpppp) +GO(g_key_file_get_string_list, pFppppp) +GO(g_key_file_get_uint64, UFpppp) +GO(g_key_file_get_value, pFpppp) +GO(g_key_file_has_group, iFpp) +GO(g_key_file_has_key, iFpppp) +GO(g_key_file_load_from_data, iFppLip) +GO(g_key_file_load_from_data_dirs, iFpppip) +GO(g_key_file_load_from_dirs, iFppppip) +GO(g_key_file_load_from_file, iFppip) +GO(g_key_file_new, pFv) +GO(g_key_file_ref, pFp) +GO(g_key_file_remove_comment, iFpppp) +GO(g_key_file_remove_group, iFppp) +GO(g_key_file_remove_key, iFpppp) +GO(g_key_file_save_to_file, iFppp) +GO(g_key_file_set_boolean, vFpppi) +GO(g_key_file_set_boolean_list, vFppppL) +GO(g_key_file_set_comment, iFppppp) +GO(g_key_file_set_double, vFpppd) +GO(g_key_file_set_double_list, vFppppL) +GO(g_key_file_set_int64, vFpppI) +GO(g_key_file_set_integer, vFpppi) +GO(g_key_file_set_integer_list, vFppppL) +GO(g_key_file_set_list_separator, vFpC) +GO(g_key_file_set_locale_string, vFppppp) +GO(g_key_file_set_locale_string_list, vFpppppL) +GO(g_key_file_set_string, vFpppp) +GO(g_key_file_set_string_list, vFppppL) +GO(g_key_file_set_uint64, vFpppU) +GO(g_key_file_set_value, vFpppp) +GO(g_key_file_to_data, pFppp) +GO(g_key_file_unref, vFp) +GO(glib_check_version, pFuuu) +//GO(glib_gettext, +//GO(glib_pgettext, +//GO(glib__private__, +GO(g_list_alloc, pFv) +GO(g_list_append, pFpp) +GO(g_list_concat, pFpp) +GO(g_list_copy, pFp) +//GOM(g_list_copy_deep, pFEpBp) +GO(g_list_delete_link, pFpp) +GO(g_listenv, pFv) +GO(g_list_find, pFpp) +GOM(g_list_find_custom, pFEppp) +GO(g_list_first, pFp) +//GOM(g_list_foreach, vFEpBp) +GO(g_list_free, vFp) +GO(g_list_free_1, vFp) +GOM(g_list_free_full, vFEpp) +GO(g_list_index, iFpp) +GO(g_list_insert, pFppi) +GO(g_list_insert_before, pFppp) +//GOM(g_list_insert_sorted, pFEppB) +//GO(g_list_insert_sorted_with_data, pFEppBp) +GO(g_list_last, pFp) +GO(g_list_length, uFp) +GO(g_list_nth, pFpu) +GO(g_list_nth_data, pFpu) +GO(g_list_nth_prev, pFpu) +//GO(g_list_pop_allocator, +GO(g_list_position, iFpp) +GO(g_list_prepend, pFpp) +//GO(g_list_push_allocator, +GO(g_list_remove, pFpp) +GO(g_list_remove_all, pFpp) +GO(g_list_remove_link, pFpp) +GO(g_list_reverse, pFp) +GOM(g_list_sort, pFEpp) +GOM(g_list_sort_with_data, pFEppp) +GO(g_locale_from_utf8, pFplppp) +GO(g_locale_to_utf8, pFplppp) +GO2(g_log, vFpppV, g_logv) +GO(g_log_default_handler, vFpipp) +GO(g_log_remove_handler, vFpu) +GO(g_log_set_always_fatal, iFi) +GOM(g_log_set_default_handler, pFEpp) +GO(g_log_set_fatal_mask, iFpi) +GOM(g_log_set_handler, uFEpipp) +GO(g_logv, vFpppp) // need align? +GO(g_lstat, iFpp) +GO(g_main_context_acquire, iFp) +GO(g_main_context_add_poll, vFppi) +GO(g_main_context_check, iFpipi) +GO(g_main_context_default, pFv) +GO(g_main_context_dispatch, vFp) +//GOM(g_main_context_find_source_by_funcs_user_data, pFEppp) // 2nd is a GSourceFuncs structures with callbacks.. +GO(g_main_context_find_source_by_id, pFpu) +GO(g_main_context_find_source_by_user_data, pFpp) +GOM(g_main_context_get_poll_func, pFEp) +GO(g_main_context_get_thread_default, pFv) +//GOM(g_main_context_invoke, vFppp) // 2nd is GSourceFuncs +//GOM(g_main_context_invoke_full, vFpippB) // 3rd is GSourceFuncs +GO(g_main_context_is_owner, iFp) +GO(g_main_context_iteration, iFpi) +GO(g_main_context_new, pFv) +GO(g_main_context_pending, iFp) +GO(g_main_context_pop_thread_default, vFp) +GO(g_main_context_prepare, iFpp) +GO(g_main_context_push_thread_default, vFp) +GO(g_main_context_query, iFpippi) +GO(g_main_context_ref, pFp) +GO(g_main_context_ref_thread_default, pFv) +GO(g_main_context_release, vFp) +GO(g_main_context_remove_poll, vFpp) +GOM(g_main_context_set_poll_func, vFEpp) +GO(g_main_context_unref, vFp) +GO(g_main_context_wait, iFppp) +GO(g_main_context_wakeup, vFp) +GO(g_main_current_source, pFv) +GO(g_main_depth, iFv) +GO(g_main_loop_get_context, pFp) +GO(g_main_loop_is_running, iFp) +GO(g_main_loop_new, pFpi) +GO(g_main_loop_quit, vFp) +GO(g_main_loop_ref, pFp) +GO(g_main_loop_run, vFp) +GO(g_main_loop_unref, vFp) +GO(g_malloc, pFL) +GO(g_malloc0, pFL) +GO(g_malloc0_n, pFLL) +GO(g_malloc_n, pFLL) +GO(g_mapped_file_free, vFp) +GO(g_mapped_file_get_bytes, pFp) +GO(g_mapped_file_get_contents, pFp) +GO(g_mapped_file_get_length, uFp) +GO(g_mapped_file_new, pFppp) +GO(g_mapped_file_new_from_fd, pFiip) +GO(g_mapped_file_ref, pFp) +GO(g_mapped_file_unref, vFp) +//GO(g_markup_collect_attributes, +//GO(g_markup_error_quark, +GO(g_markup_escape_text, pFpl) +//GO(g_markup_parse_context_end_parse, +//GO(g_markup_parse_context_free, +//GO(g_markup_parse_context_get_element, +//GO(g_markup_parse_context_get_element_stack, +//GO(g_markup_parse_context_get_position, +//GO(g_markup_parse_context_get_user_data, +//GO(g_markup_parse_context_new, +//GO(g_markup_parse_context_parse, +//GO(g_markup_parse_context_pop, +//GO(g_markup_parse_context_push, +//GO(g_markup_parse_context_ref, +//GO(g_markup_parse_context_unref, +GOM(g_markup_printf_escaped, pFEpV) +GOM(g_markup_vprintf_escaped, pFEpA) +GO(g_match_info_expand_references, pFppp) +GO(g_match_info_fetch, pFpi) +GO(g_match_info_fetch_all, pFp) +GO(g_match_info_fetch_named, pFpp) +GO(g_match_info_fetch_named_pos, iFpppp) +GO(g_match_info_fetch_pos, iFpipp) +GO(g_match_info_free, vFp) +GO(g_match_info_get_match_count, iFp) +GO(g_match_info_get_regex, pFp) +GO(g_match_info_get_string, pFp) +GO(g_match_info_is_partial_match, iFp) +GO(g_match_info_matches, iFp) +GO(g_match_info_next, iFpp) +GO(g_match_info_ref, pFp) +GO(g_match_info_unref, vFp) +//GO(g_mem_chunk_alloc, +//GO(g_mem_chunk_alloc0, +//GO(g_mem_chunk_clean, +//GO(g_mem_chunk_destroy, +//GO(g_mem_chunk_free, +//GO(g_mem_chunk_info, +//GO(g_mem_chunk_new, +//GO(g_mem_chunk_print, +//GO(g_mem_chunk_reset, +GO(g_memdup, pFpu) +GO(g_mem_is_system_malloc, iFv) +GO(g_mem_profile, vFv) +//GOM(g_mem_set_vtable, vFEp) // VMemTable needs wrapping +GO(g_mkdir, iFpi) +GO(g_mkdir_with_parents, iFpi) +GO(g_mkdtemp, pFp) +GO(g_mkdtemp_full, pFpi) +GO(g_mkstemp, iFp) +GO(g_mkstemp_full, iFpii) +GO(g_mutex_clear, vFp) +GO(g_mutex_free, vFp) +GO(g_mutex_init, vFp) +GO(g_mutex_lock, vFp) +GO(g_mutex_new, pFv) +GO(g_mutex_trylock, iFp) +GO(g_mutex_unlock, vFp) +//GO(g_node_child_index, +//GO(g_node_child_position, +//GO(g_node_children_foreach, +//GO(g_node_copy, +//GO(g_node_copy_deep, +//GO(g_node_depth, +//GO(g_node_destroy, +//GO(g_node_find, +//GO(g_node_find_child, +//GO(g_node_first_sibling, +//GO(g_node_get_root, +//GO(g_node_insert, +//GO(g_node_insert_after, +//GO(g_node_insert_before, +//GO(g_node_is_ancestor, +//GO(g_node_last_child, +//GO(g_node_last_sibling, +//GO(g_node_max_height, +//GO(g_node_n_children, +//GO(g_node_new, +//GO(g_node_n_nodes, +//GO(g_node_nth_child, +//GO(g_node_pop_allocator, +//GO(g_node_prepend, +//GO(g_node_push_allocator, +//GO(g_node_reverse_children, +//GO(g_node_traverse, +//GO(g_node_unlink, +GO(g_nullify_pointer, vFp) +//GO(g_once_impl, +GO(g_once_init_enter, iFp) +//GO(g_once_init_enter_impl, +GO(g_once_init_leave, vFpL) +GO(g_on_error_query, vFp) +GO(g_on_error_stack_trace, vFp) +GO(g_open, iFpii) +GO(g_option_context_add_group, vFpp) +GO(g_option_context_add_main_entries, vFppp) +GO(g_option_context_free, vFp) +GO(g_option_context_get_description, pFp) +GO(g_option_context_get_help, pFpip) +GO(g_option_context_get_help_enabled, iFp) +GO(g_option_context_get_ignore_unknown_options, iFp) +GO(g_option_context_get_main_group, pFp) +GO(g_option_context_get_strict_posix, iFp) // 2.44+ +GO(g_option_context_get_summary, pFp) +GO(g_option_context_new, pFp) +GO(g_option_context_parse, iFpppp) +GO(g_option_context_parse_strv, iFppp) +GO(g_option_context_set_description, vFpp) +GO(g_option_context_set_help_enabled, vFpi) +GO(g_option_context_set_ignore_unknown_options, vFpi) +GO(g_option_context_set_main_group, vFpp) +GO(g_option_context_set_strict_posix, vFpi) // 2.44+ +GO(g_option_context_set_summary, vFpp) +//GOM(g_option_context_set_translate_func, vFEpBpB) +GO(g_option_context_set_translation_domain, vFpp) +//GO(g_option_error_quark, +GO(g_option_group_add_entries, vFpp) +GO(g_option_group_free, vFp) +//GOM(g_option_group_new, pFEppppB) +GO(g_option_group_ref, pFp) // 2.44+ +//GOM(g_option_group_set_error_hook, vFEpB) +//GOM(g_option_group_set_parse_hooks, vFEpBB) +//GOM(g_option_group_set_translate_func, vFEpBpB) +GO(g_option_group_set_translation_domain, vFpp) +GO(g_option_group_unref, vFp) // 2.44+ +GO(g_parse_debug_string, uFppi) +GO(g_path_get_basename, pFp) +GO(g_path_get_dirname, pFp) +GO(g_path_is_absolute, iFp) +GO(g_path_skip_root, pFp) +GO(g_pattern_match, iFpupp) +GO(g_pattern_match_simple, iFpp) +GO(g_pattern_match_string, iFpp) +GO(g_pattern_spec_equal, iFpp) +GO(g_pattern_spec_free, vFp) +GO(g_pattern_spec_new, pFp) +//GO(g_pointer_bit_lock, +//GO(g_pointer_bit_trylock, +//GO(g_pointer_bit_unlock, +GO(g_poll, iFpui) +//GO(g_prefix_error, vFpppppppppp) //vaarg, should align? +GOM(g_print, vFEpV) +GOM(g_printerr, vFEpV) +GO2(g_printf, iFEpV, my_g_vprintf) +GOM(g_printf_string_upper_bound, uFEpp) +GO(g_private_get, pFp) +GOM(g_private_new, pFEp) +GO(g_private_replace, vFpp) +GO(g_private_set, vFpp) +GO(g_propagate_error, vFpp) +//GO(g_propagate_prefixed_error, vFpppppppppppp) //vaarg, should align? +GO(g_ptr_array_add, vFpp) +GOM(g_ptr_array_foreach, vFEppp) +GO(g_ptr_array_free, pFpi) +GO(g_ptr_array_insert, vFpip) +GO(g_ptr_array_new, pFv) +GOM(g_ptr_array_new_full, pFEup) +GOM(g_ptr_array_new_with_free_func, pFEp) +GO(g_ptr_array_ref, pFp) +GO(g_ptr_array_remove, vFpp) +GO(g_ptr_array_remove_fast, iFpp) +GO(g_ptr_array_remove_index, pFpu) +GO(g_ptr_array_remove_index_fast, pFpu) +GO(g_ptr_array_remove_range, pFpuu) +GOM(g_ptr_array_set_free_func, vFEpp) +GO(g_ptr_array_set_size, vFpi) +GO(g_ptr_array_sized_new, pFu) +GOM(g_ptr_array_sort, vFEpp) +GOM(g_ptr_array_sort_with_data, vFEppp) +GO(g_ptr_array_unref, vFp) +GOM(g_qsort_with_data, vFEpiLpp) +GO(g_quark_from_static_string, uFp) +GO(g_quark_from_string, uFp) +GO(g_quark_to_string, pFu) +GO(g_quark_try_string, uFp) +GO(g_queue_clear, vFp) +//GOM(g_queue_clear_full, vFEpB) // 2.60+ +GO(g_queue_copy, pFp) +GO(g_queue_delete_link, vFpp) +GO(g_queue_find, pFpp) +GOM(g_queue_find_custom, pFEppp) +//GOM(g_queue_foreach, vFEpBp) +GO(g_queue_free, vFp) +//GOM(g_queue_free_full, vFEpB) +GO(g_queue_get_length, uFp) +GO(g_queue_index, iFpp) +GO(g_queue_init, vFp) +GO(g_queue_insert_after, vFppp) +GO(g_queue_insert_after_link, vFppp) // 2.62+ +GO(g_queue_insert_before, vFppp) +GO(g_queue_insert_before_link, vFppp) // 2.62+ +//GOM(g_queue_insert_sorted, vFEppBp) +GO(g_queue_is_empty, iFp) +GO(g_queue_link_index, iFpp) +GO(g_queue_new, pFv) +GO(g_queue_peek_head, pFp) +GO(g_queue_peek_head_link, pFp) +GO(g_queue_peek_nth, pFpu) +GO(g_queue_peek_nth_link, pFpu) +GO(g_queue_peek_tail, pFp) +GO(g_queue_peek_tail_link, pFp) +GO(g_queue_pop_head, pFp) +GO(g_queue_pop_head_link, pFp) +GO(g_queue_pop_nth, pFpu) +GO(g_queue_pop_nth_link, pFpu) +GO(g_queue_pop_tail, pFp) +GO(g_queue_pop_tail_link, pFp) +GO(g_queue_push_head, vFpp) +GO(g_queue_push_head_link, vFpp) +GO(g_queue_push_nth, vFppi) +GO(g_queue_push_nth_link, vFpip) +GO(g_queue_push_tail, vFpp) +GO(g_queue_push_tail_link, vFpp) +GO(g_queue_remove, iFpp) +GO(g_queue_remove_all, iFpp) +GO(g_queue_reverse, pFp) +//GOM(g_queue_sort, vFEpBp) +GO(g_queue_unlink, vFpp) +GO(g_rand_copy, pFp) +GO(g_rand_double, dFv) +GO(g_rand_double_range, dFdd) +GO(g_rand_free, vFp) +GO(g_rand_int, uFp) +GO(g_rand_int_range, uFpuu) +GO(g_rand_new, pFv) +GO(g_rand_new_with_seed, pFu) +GO(g_rand_new_with_seed_array, pFpu) +GO(g_random_double, dFp) +GO(g_random_double_range, dFpdd) +GO(g_random_int, iFii) +GO(g_random_int_range, iFii) +GO(g_random_set_seed, vFu) +GO(g_rand_set_seed, vFpu) +GO(g_rand_set_seed_array, vFppu) +GO(g_realloc, pFpL) +GO(g_realloc_n, pFpLL) +//GO(g_rec_mutex_clear, +//GO(g_rec_mutex_init, +//GO(g_rec_mutex_lock, +//GO(g_rec_mutex_trylock, +//GO(g_rec_mutex_unlock, +GO(g_regex_check_replacement, iFppp) +//GO(g_regex_error_quark, +GO(g_regex_escape_nul, pFpi) +GO(g_regex_escape_string, pFpi) +GO(g_regex_get_capture_count, iFp) +GO(g_regex_get_compile_flags, iFp) +GO(g_regex_get_has_cr_or_lf, iFp) +GO(g_regex_get_match_flags, iFp) +GO(g_regex_get_max_backref, iFp) +GO(g_regex_get_max_lookbehind, iFp) +GO(g_regex_get_pattern, pFp) +GO(g_regex_get_string_number, iFpp) +GO(g_regex_match, iFppip) +GO(g_regex_match_all, iFppip) +GO(g_regex_match_all_full, iFppLiipp) +GO(g_regex_match_full, iFppLiipp) +GO(g_regex_match_simple, iFppii) +GO(g_regex_new, pFpiip) +GO(g_regex_ref, pFp) +GO(g_regex_replace, pFppLipip) +//GOM(g_regex_replace_eval, pFEppLiiBpp) +GO(g_regex_replace_literal, pFppLipip) +GO(g_regex_split, pFppi) +GO(g_regex_split_full, pFppLiiip) +GO(g_regex_split_simple, pFppii) +GO(g_regex_unref, vFp) +//GO(g_relation_count, +//GO(g_relation_delete, +//GO(g_relation_destroy, +//GO(g_relation_exists, +//GO(g_relation_index, +//GO(g_relation_insert, +//GO(g_relation_new, +//GO(g_relation_print, +//GO(g_relation_select, +//GO(g_reload_user_special_dirs_cache, +GO(g_remove, iFp) +GO(g_rename, iFpp) +GO(g_return_if_fail_warning, vFppp) +GO(g_rmdir, iFp) +//GO(g_rw_lock_clear, +//GO(g_rw_lock_init, +//GO(g_rw_lock_reader_lock, +//GO(g_rw_lock_reader_trylock, +//GO(g_rw_lock_reader_unlock, +//GO(g_rw_lock_writer_lock, +//GO(g_rw_lock_writer_trylock, +//GO(g_rw_lock_writer_unlock, +//GO(g_scanner_cur_line, +//GO(g_scanner_cur_position, +//GO(g_scanner_cur_token, +//GO(g_scanner_cur_value, +//GO(g_scanner_destroy, +//GO(g_scanner_eof, +//GO(g_scanner_error, +//GO(g_scanner_get_next_token, +//GO(g_scanner_input_file, +//GO(g_scanner_input_text, +//GO(g_scanner_lookup_symbol, +//GO(g_scanner_new, +//GO(g_scanner_peek_next_token, +//GO(g_scanner_scope_add_symbol, +//GO(g_scanner_scope_foreach_symbol, +//GO(g_scanner_scope_lookup_symbol, +//GO(g_scanner_scope_remove_symbol, +//GO(g_scanner_set_scope, +//GO(g_scanner_sync_file_offset, +//GO(g_scanner_unexp_token, +//GO(g_scanner_warn, +//GO(g_sequence_append, +//GO(g_sequence_foreach, +//GO(g_sequence_foreach_range, +//GO(g_sequence_free, +//GO(g_sequence_get, +//GO(g_sequence_get_begin_iter, +//GO(g_sequence_get_end_iter, +//GO(g_sequence_get_iter_at_pos, +//GO(g_sequence_get_length, +//GO(g_sequence_insert_before, +//GO(g_sequence_insert_sorted, +//GO(g_sequence_insert_sorted_iter, +//GO(g_sequence_iter_compare, +//GO(g_sequence_iter_get_position, +//GO(g_sequence_iter_get_sequence, +//GO(g_sequence_iter_is_begin, +//GO(g_sequence_iter_is_end, +//GO(g_sequence_iter_move, +//GO(g_sequence_iter_next, +//GO(g_sequence_iter_prev, +//GO(g_sequence_lookup, +//GO(g_sequence_lookup_iter, +//GO(g_sequence_move, +//GO(g_sequence_move_range, +//GO(g_sequence_new, +//GO(g_sequence_prepend, +//GO(g_sequence_range_get_midpoint, +//GO(g_sequence_remove, +//GO(g_sequence_remove_range, +//GO(g_sequence_search, +//GO(g_sequence_search_iter, +//GO(g_sequence_set, +//GO(g_sequence_sort, +//GO(g_sequence_sort_changed, +//GO(g_sequence_sort_changed_iter, +//GO(g_sequence_sort_iter, +//GO(g_sequence_swap, +GO(g_set_application_name, vFp) +GO(g_setenv, iFppi) +GOM(g_set_error, vFEppipV) +GO(g_set_error_literal, vFppip) +GO(g_set_prgname, vFp) +GOM(g_set_printerr_handler, pFEp) +GOM(g_set_print_handler, pFEp) +//GO(g_shell_error_quark, +GO(g_shell_parse_argv, iFpppp) +GO(g_shell_quote, pFp) +GO(g_shell_unquote, pFpp) +GO(g_slice_alloc, pFL) +GO(g_slice_alloc0, pFL) +GO(g_slice_copy, pFLp) +GO(g_slice_free1, vFLp) +GO(g_slice_free_chain_with_offset, vFLpL) +GO(g_slice_get_config, IFi) +GO(g_slice_get_config_state, pFiIp) +GO(g_slice_set_config, vFiI) +GO(g_slist_alloc, pFv) +GO(g_slist_append, pFpp) +GO(g_slist_concat, pFpp) +GO(g_slist_copy, pFp) +//GOM(g_slist_copy_deep, pFEppp) +GO(g_slist_delete_link, pFpp) +GO(g_slist_find, pFpp) +GOM(g_slist_find_custom, pFEppp) +GOM(g_slist_foreach, pFEppp) +GO(g_slist_free, vFp) +GO(g_slist_free_1, vFp) +//GOM(g_slist_free_full, vFEpp) +GO(g_slist_index, iFpp) +GO(g_slist_insert, pFppi) +GO(g_slist_insert_before, pFppp) +GOM(g_slist_insert_sorted, pFEppp) +GOM(g_slist_insert_sorted_with_data, pFEpppp) +GO(g_slist_last, pFp) +GO(g_slist_length, uFp) +GO(g_slist_nth, pFpu) +GO(g_slist_nth_data, pFpu) +//GO(g_slist_pop_allocator, +GO(g_slist_position, iFpp) +GO(g_slist_prepend, pFpp) +//GO(g_slist_push_allocator, +GO(g_slist_remove, pFpp) +GO(g_slist_remove_all, pFpp) +GO(g_slist_remove_link, pFpp) +GO(g_slist_reverse, pFp) +GOM(g_slist_sort, pFEpp) +GOM(g_slist_sort_with_data, pFEppp) +GO2(g_snprintf, iFEpLpV, my_g_vsnprintf) +GO(g_source_add_child_source, vFpp) +GO(g_source_add_poll, vFpp) +GO(g_source_add_unix_fd, pFpii) +GO(g_source_attach, uFpp) +GO(g_source_destroy, vFp) +GO(g_source_get_can_recurse, iFp) +GO(g_source_get_context, pFp) +GO(g_source_get_current_time, vFpp) +GO(g_source_get_id, uFp) +GO(g_source_get_name, pFp) +GO(g_source_get_priority, iFp) +GO(g_source_get_ready_time, IFp) +GO(g_source_get_time, IFp) +GO(g_source_is_destroyed, iFp) +GO(g_source_modify_unix_fd, vFppi) +GOM(g_source_new, pFEpu) +GO(g_source_query_unix_fd, iFpp) +GO(g_source_ref, pFp) +GO(g_source_remove, iFu) +GOM(g_source_remove_by_funcs_user_data, iFEpp) +GO(g_source_remove_by_user_data, iFp) +GO(g_source_remove_child_source, vFpp) +GO(g_source_remove_poll, vFpp) +GO(g_source_remove_unix_fd, vFpp) +GOM(g_source_set_callback, vFEpppp) +//GOM(g_source_set_callback_indirect, vFEppB) +GO(g_source_set_can_recurse, vFpi) +GOM(g_source_set_funcs, vFEpp) +GO(g_source_set_name, vFpp) +GO(g_source_set_name_by_id, vFup) +GO(g_source_set_priority, vFpi) +GO(g_source_set_ready_time, vFpI) +GO(g_source_unref, vFp) +GO(g_spaced_primes_closest, uFu) +GOM(g_spawn_async, iFEpppipppp) +GOM(g_spawn_async_with_pipes, iFEpppippppppp) +GO(g_spawn_check_exit_status, iFip) +GO(g_spawn_close_pid, vFp) +GO(g_spawn_command_line_async, iFpp) +GO(g_spawn_command_line_sync, iFppppp) +GO(g_spawn_error_quark, pFv) +GO(g_spawn_exit_error_quark, pFv) +GOM(g_spawn_sync, iFEpppipppppp) +GO2(g_sprintf, iFEppV, my_g_vsprintf) +GO(g_stat, iFpp) +GO(g_static_mutex_free, vFp) +GO(g_static_mutex_get_mutex_impl, pFp) +GO(g_static_mutex_init, vFp) +GO(g_static_private_free, vFp) +GO(g_static_private_get, pFp) +GO(g_static_private_init, vFp) +GOM(g_static_private_set, vFEppp) +GO(g_static_rec_mutex_free, vFp) +GO(g_static_rec_mutex_init, vFp) +GO(g_static_rec_mutex_lock, vFp) +GO(g_static_rec_mutex_lock_full, vFpu) +GO(g_static_rec_mutex_trylock, iFp) +GO(g_static_rec_mutex_unlock, vFp) +GO(g_static_rec_mutex_unlock_full, uFp) +GO(g_static_rw_lock_free, vFp) +GO(g_static_rw_lock_init, vFp) +GO(g_static_rw_lock_reader_lock, vFp) +GO(g_static_rw_lock_reader_trylock, iFp) +GO(g_static_rw_lock_reader_unlock, vFp) +GO(g_static_rw_lock_writer_lock, vFp) +GO(g_static_rw_lock_writer_trylock, iFp) +GO(g_static_rw_lock_writer_unlock, vFp) +GO(g_stpcpy, pFpp) +GO(g_strcanon, pFppC) +GO(g_strcasecmp, iFpp) +GO(g_strchomp, pFp) +GO(g_strchug, pFp) +GO(g_strcmp0, iFpp) +GO(g_strcompress, pFp) +//GO(g_strconcat, pFppppppppppppp) //vaarg, no va_list equivalent... +GO(g_strdelimit, pFppC) +GO(g_strdown, pFp) +GO(g_strdup, pFp) +GO2(g_strdup_printf, pFEpV, my_g_strdup_vprintf) +GO(g_strdupv, pFp) +GOM(g_strdup_vprintf, pFEpp) +GO(g_str_equal, iFpp) +GO(g_strerror, pFi) +GO(g_strescape, pFpp) +GO(g_strfreev, vFp) +GO(g_str_hash, uFp) +GO(g_str_has_prefix, iFpp) +GO(g_str_has_suffix, iFpp) +GO(g_string_append, pFpp) +GO(g_string_append_c, pFpC) +GO(g_string_append_len, pFppl) +GO2(g_string_append_printf, vFppV, g_string_append_vprintf) // need align? +GO(g_string_append_unichar, pFpu) +GO(g_string_append_uri_escaped, pFpppi) +GO(g_string_append_vprintf, vFppp) +GO(g_string_ascii_down, pFp) +GO(g_string_ascii_up, pFp) +GO(g_string_assign, pFpp) +GO(g_string_chunk_clear, vFp) +GO(g_string_chunk_free, vFp) +GO(g_string_chunk_insert, pFpp) +GO(g_string_chunk_insert_const, pFpp) +GO(g_string_chunk_insert_len, pFppl) +GO(g_string_chunk_new, pFL) +GO(g_string_down, pFp) +GO(g_string_equal, iFpp) +GO(g_string_erase, pFpll) +GO(g_string_free, pFpi) +GO(g_string_free_to_bytes, pFp) +GO(g_string_hash, uFp) +GO(g_string_insert, pFplp) +GO(g_string_insert_c, pFplC) +GO(g_string_insert_len, pFplpl) +GO(g_string_insert_unichar, pFplu) +GO(g_string_new, pFp) +GO(g_string_new_len, pFpl) +GO(g_string_overwrite, pFplp) +GO(g_string_overwrite_len, pFplpl) +GO(g_string_prepend, pFpp) +GO(g_string_prepend_c, pFpC) +GO(g_string_prepend_len, pFppl) +GO(g_string_prepend_unichar, pFpu) +GO2(g_string_printf, vFppV, g_string_vprintf) // need align? +GO(g_string_set_size, pFpL) +GO(g_string_sized_new, pFL) +GO(g_string_truncate, pFpL) +GO(g_string_up, pFp) +GO(g_string_vprintf, vFppp) +GO(g_strip_context, pFpp) +GO(g_str_is_ascii, iFp) +GO2(g_strjoin, pFpV, g_strjoinv) +GO(g_strjoinv, pFpp) // no need to align, ony string pointers here +GO(g_strlcat, uFppu) +GO(g_strlcpy, uFppu) +GO(g_str_match_string, iFppi) +GO(g_strncasecmp, iFppu) +GO(g_strndup, pFpu) +GO(g_strnfill, pFuC) +GO(g_strreverse, pFp) +GO(g_strrstr, pFpp) +GO(g_strrstr_len, pFpip) +GO(g_strsignal, pFi) +GO(g_strsplit, pFppi) +GO(g_strsplit_set, pFppi) +GO(g_strstr_len, pFpip) +GO(g_str_to_ascii, pFpp) +GO(g_strtod, dFpp) +GO(g_str_tokenize_and_fold, pFppp) +GO(g_strup, pFp) +GO(g_strv_length, uFp) +//GO(g_test_add_data_func, +//GO(g_test_add_data_func_full, +//GO(g_test_add_func, +//GO(g_test_add_vtable, +//GO(g_test_assert_expected_messages_internal, +//GO(g_test_bug, +//GO(g_test_bug_base, +//GO(g_test_build_filename, +//GO(g_test_create_case, +//GO(g_test_create_suite, +//GO(g_test_expect_message, +//GO(g_test_fail, +//GO(g_test_failed, +//GO(g_test_get_dir, +//GO(g_test_get_filename, +//GO(g_test_get_root, +//GO(g_test_incomplete, +//GO(g_test_init, +//GO(g_test_log_buffer_free, +//GO(g_test_log_buffer_new, +//GO(g_test_log_buffer_pop, +//GO(g_test_log_buffer_push, +//GO(g_test_log_msg_free, +//GO(g_test_log_set_fatal_handler, +//GO(g_test_log_type_name, +//GO(g_test_maximized_result, +//GO(g_test_message, +//GO(g_test_minimized_result, +//GO(g_test_queue_destroy, +//GO(g_test_queue_free, +//GO(g_test_rand_double, +//GO(g_test_rand_double_range, +//GO(g_test_rand_int, +//GO(g_test_rand_int_range, +//GO(g_test_run, +//GO(g_test_run_suite, +//GO(g_test_set_nonfatal_assertions, +//GO(g_test_skip, +//GO(g_test_subprocess, +//GO(g_test_suite_add, +//GO(g_test_suite_add_suite, +//GO(g_test_timer_elapsed, +//GO(g_test_timer_last, +//GO(g_test_timer_start, +//GO(g_test_trap_assertions, +//GO(g_test_trap_fork, +//GO(g_test_trap_has_passed, +//GO(g_test_trap_reached_timeout, +//GO(g_test_trap_subprocess, +GOM(g_thread_create, pFEppip) +GOM(g_thread_create_full, pFEppLiiip) +//GO(g_thread_error_quark, +GO(g_thread_exit, vFp) +GOM(g_thread_foreach, vFEpp) +//GO(g_thread_get_initialized, +//GO(g_thread_init_glib, +GO(g_thread_join, pFp) +//GO(g_thread_new, +//GO(g_thread_pool_free, +//GO(g_thread_pool_get_max_idle_time, +//GO(g_thread_pool_get_max_threads, +//GO(g_thread_pool_get_max_unused_threads, +//GO(g_thread_pool_get_num_threads, +//GO(g_thread_pool_get_num_unused_threads, +//GO(g_thread_pool_new, +//GO(g_thread_pool_push, +//GO(g_thread_pool_set_max_idle_time, +//GO(g_thread_pool_set_max_threads, +//GO(g_thread_pool_set_max_unused_threads, +//GO(g_thread_pool_set_sort_function, +//GO(g_thread_pool_stop_unused_threads, +//GO(g_thread_pool_unprocessed, +GO(g_thread_ref, pFp) +GO(g_thread_self, pFv) +GO(g_thread_set_priority, vFpi) +//GO(g_thread_try_new, +GO(g_thread_unref, vFp) +GO(g_thread_yield, vFv) +GOM(g_timeout_add, uFEupp) +GOM(g_timeout_add_full, uFEiuppp) +GOM(g_timeout_add_seconds, uFEupp) +GOM(g_timeout_add_seconds_full, uFEiuppp) +GO(g_timeout_source_new, pFu) +GO(g_timeout_source_new_seconds, pFu) +//GO(g_timer_continue, +//GO(g_timer_destroy, +//GO(g_timer_elapsed, +//GO(g_timer_new, +//GO(g_timer_reset, +//GO(g_timer_start, +//GO(g_timer_stop, +GO(g_time_val_add, vFpl) +GO(g_time_val_from_iso8601, iFpp) +GO(g_time_val_to_iso8601, pFp) +//GO(g_time_zone_adjust_time, +//GO(g_time_zone_find_interval, +//GO(g_time_zone_get_abbreviation, +//GO(g_time_zone_get_offset, +//GO(g_time_zone_is_dst, +//GO(g_time_zone_new, +//GO(g_time_zone_new_local, +//GO(g_time_zone_new_utc, +//GO(g_time_zone_ref, +//GO(g_time_zone_unref, +GO(g_trash_stack_height, uFp) +GO(g_trash_stack_peek, pFp) +GO(g_trash_stack_pop, pFp) +GO(g_trash_stack_push, vFpp) +//GO(g_tree_destroy, +//GO(g_tree_foreach, +//GO(g_tree_height, +//GO(g_tree_insert, +//GO(g_tree_lookup, +//GO(g_tree_lookup_extended, +//GO(g_tree_new, +//GO(g_tree_new_full, +//GO(g_tree_new_with_data, +//GO(g_tree_nnodes, +//GO(g_tree_ref, +//GO(g_tree_remove, +//GO(g_tree_replace, +//GO(g_tree_search, +//GO(g_tree_steal, +//GO(g_tree_traverse, +//GO(g_tree_unref, +GO(g_try_malloc, pFL) +GO(g_try_malloc0, pFL) +GO(g_try_malloc0_n, pFLL) +GO(g_try_malloc_n, pFLL) +GO(g_try_realloc, pFpL) +GO(g_try_realloc_n, pFpLL) +//GO(g_tuples_destroy, +//GO(g_tuples_index, +GO(g_ucs4_to_utf16, pFplppp) +GO(g_ucs4_to_utf8, pFplppp) +GO(g_unichar_break_type, iFu) +GO(g_unichar_combining_class, iFu) +GO(g_unichar_compose, iFuup) +GO(g_unichar_decompose, iFupp) +GO(g_unichar_digit_value, iFu) +GO(g_unichar_fully_decompose, iFuipu) +GO(g_unichar_get_mirror_char, iFup) +GO(g_unichar_get_script, iFu) +GO(g_unichar_isalnum, iFu) +GO(g_unichar_isalpha, iFu) +GO(g_unichar_iscntrl, iFu) +GO(g_unichar_isdefined, iFu) +GO(g_unichar_isdigit, iFu) +GO(g_unichar_isgraph, iFu) +GO(g_unichar_islower, iFu) +GO(g_unichar_ismark, iFu) +GO(g_unichar_isprint, iFu) +GO(g_unichar_ispunct, iFu) +GO(g_unichar_isspace, iFu) +GO(g_unichar_istitle, iFu) +GO(g_unichar_isupper, iFu) +GO(g_unichar_iswide, iFu) +GO(g_unichar_iswide_cjk, iFu) +GO(g_unichar_isxdigit, iFu) +GO(g_unichar_iszerowidth, iFu) +GO(g_unichar_tolower, uFu) +GO(g_unichar_totitle, uFu) +GO(g_unichar_toupper, uFu) +GO(g_unichar_to_utf8, iFup) +GO(g_unichar_type, iFu) +GO(g_unichar_validate, iFu) +GO(g_unichar_xdigit_value, iFu) +GO(g_unicode_canonical_decomposition, pFup) +GO(g_unicode_canonical_ordering, vFpu) +GO(g_unicode_script_from_iso15924, iFu) +GO(g_unicode_script_to_iso15924, uFi) +//GO(g_unix_error_quark, +//GO(g_unix_fd_add, +//GO(g_unix_fd_add_full, +//GO(g_unix_fd_source_new, +//GO(g_unix_open_pipe, +//GO(g_unix_set_fd_nonblocking, +//GO(g_unix_signal_add, +//GO(g_unix_signal_add_full, +//GO(g_unix_signal_source_new, +GO(g_unlink, iFp) +GO(g_unsetenv, vFp) +GO(g_uri_escape_string, pFppi) +GO(g_uri_list_extract_uris, pFp) +GO(g_uri_parse_scheme, pFp) +GO(g_uri_unescape_segment, pFppp) +GO(g_uri_unescape_string, pFpp) +GO(g_usleep, vFL) +GO(g_utf16_to_ucs4, pFplppp) +GO(g_utf16_to_utf8, pFplppp) +GO(g_utf8_casefold, pFpi) +GO(g_utf8_collate, iFpp) +GO(g_utf8_collate_key, pFpi) +GO(g_utf8_collate_key_for_filename, pFpi) +GO(g_utf8_find_next_char, pFpp) +GO(g_utf8_find_prev_char, pFpp) +GO(g_utf8_get_char, uFp) +GO(g_utf8_get_char_validated, uFpi) +GO(g_utf8_normalize, pFpii) +GO(g_utf8_offset_to_pointer, pFpl) +GO(g_utf8_pointer_to_offset, lFpp) +GO(g_utf8_prev_char, pFp) +GO(g_utf8_strchr, pFpiu) +GO(g_utf8_strdown, pFpi) +GO(g_utf8_strlen, lFpi) +GO(g_utf8_strncpy, pFppu) +GO(g_utf8_strrchr, pFpiu) +GO(g_utf8_strreverse, pFpi) +GO(g_utf8_strup, pFpi) +GO(g_utf8_substring, pFpll) +GO(g_utf8_to_ucs4, pFplppp) +GO(g_utf8_to_ucs4_fast, pFplp) +GO(g_utf8_to_utf16, pFplppp) +GO(g_utf8_validate, iFplp) +GO(g_utime, iFpp) +//GO(g_variant_builder_add, vFppppppppppp) // vaarg +//GO(g_variant_builder_add_parsed, vFppppppppppp) //vaarg +GO(g_variant_builder_add_value, vFpp) +GO(g_variant_builder_clear, vFp) +GO(g_variant_builder_close, vFp) +GO(g_variant_builder_end, pFp) +GO(g_variant_builder_init, vFpp) +GO(g_variant_builder_new, pFp) +GO(g_variant_builder_open, vFpp) +GO(g_variant_builder_ref, pFp) +GO(g_variant_builder_unref, vFp) +GO(g_variant_byteswap, pFp) +GO(g_variant_check_format_string, iFppi) +GO(g_variant_classify, iFp) +GO(g_variant_compare, iFpp) +GO(g_variant_dict_clear, vFp) +GO(g_variant_dict_contains, iFpp) +GO(g_variant_dict_end, pFp) +GO(g_variant_dict_init, vFpp) +//GO(g_variant_dict_insert, vFpppppppppppppp) //vaarg +GO(g_variant_dict_insert_value, vFppp) +//GO(g_variant_dict_lookup, iFppppppppppppp) //vaarg +GO(g_variant_dict_lookup_value, pFppp) +GO(g_variant_dict_new, pFp) +GO(g_variant_dict_ref, pFp) +GO(g_variant_dict_remove, iFpp) +GO(g_variant_dict_unref, vFp) +GO(g_variant_dup_bytestring, pFpp) +GO(g_variant_dup_bytestring_array, pFpp) +GO(g_variant_dup_objv, pFpp) +GO(g_variant_dup_string, pFpp) +GO(g_variant_dup_strv, pFpp) +GO(g_variant_equal, iFpp) +//GO(g_variant_format_string_scan, +//GO(g_variant_format_string_scan_type, +GOM(g_variant_get, vFEppV) +GO(g_variant_get_boolean, iFp) +GO(g_variant_get_byte, CFp) +GO(g_variant_get_bytestring, pFp) +GO(g_variant_get_bytestring_array, pFpp) +//GO(g_variant_get_child, vFpuppppppppppp) //vaarg here +GO(g_variant_get_child_value, pFpu) +GO(g_variant_get_data, pFp) +GO(g_variant_get_data_as_bytes, pFp) +GO(g_variant_get_double, dFp) +GO(g_variant_get_fixed_array, pFppu) +GO(g_variant_get_handle, iFp) +GO(g_variant_get_int16, wFp) +GO(g_variant_get_int32, iFp) +GO(g_variant_get_int64, IFp) +GO(g_variant_get_maybe, pFp) +GO(g_variant_get_normal_form, pFp) +GO(g_variant_get_objv, pFpp) +GO(g_variant_get_size, uFp) +GO(g_variant_get_string, pFpp) +GO(g_variant_get_strv, pFpp) +GO(g_variant_get_type, pFp) +GO(g_variant_get_type_string, pFp) +GO(g_variant_get_uint16, WFp) +GO(g_variant_get_uint32, uFp) +GO(g_variant_get_uint64, UFp) +GO(g_variant_get_va, vFpppp) // no need to GOM, it's a "scanf" type of function, so using only pointer in va_list +GO(g_variant_get_variant, pFp) +GO(g_variant_hash, uFp) +GO(g_variant_is_container, iFp) +GO(g_variant_is_floating, iFp) +GO(g_variant_is_normal_form, iFp) +GO(g_variant_is_object_path, iFp) +GO(g_variant_is_of_type, iFpp) +GO(g_variant_is_signature, iFp) +GO(g_variant_iter_copy, pFp) +GO(g_variant_iter_free, vFp) +GO(g_variant_iter_init, uFpp) +//GO(g_variant_iter_loop, iFpppppppppppp) // vaarg +GO(g_variant_iter_n_children, uFp) +GO(g_variant_iter_new, pFp) +//GO(g_variant_iter_next, iFpppppppppppp) // vaarg here +GO(g_variant_iter_next_value, pFp) +//GO(g_variant_lookup, iFpppppppppppp) // vaarg +GO(g_variant_lookup_value, pFppp) +GO(g_variant_n_children, uFp) +GOM(g_variant_new, pFEpV) +GO(g_variant_new_array, pFppu) +GO(g_variant_new_boolean, pFi) +GO(g_variant_new_byte, pFC) +GO(g_variant_new_bytestring, pFp) +GO(g_variant_new_bytestring_array, pFpi) +GO(g_variant_new_dict_entry, pFpp) +GO(g_variant_new_double, pFd) +GO(g_variant_new_fixed_array, pFppuu) +GO(g_variant_new_from_bytes, pFppi) +GOM(g_variant_new_from_data, pFEppuipp) +GO(g_variant_new_handle, pFi) +GO(g_variant_new_int16, pFw) +GO(g_variant_new_int32, pFi) +GO(g_variant_new_int64, pFI) +GO(g_variant_new_maybe, pFpp) +GO(g_variant_new_object_path, pFp) +GO(g_variant_new_objv, pFpi) +//GO2(g_variant_new_parsed, pFEpV, my_g_variant_new_parsed_va) +GOM(g_variant_new_parsed_va, pFEpA) +//GO(g_variant_new_printf, // needs alignment..... +GO(g_variant_new_signature, pFp) +GO(g_variant_new_string, pFp) +GO(g_variant_new_strv, pFpi) +GO(g_variant_new_take_string, pFp) +GO(g_variant_new_tuple, pFpu) +GO(g_variant_new_uint16, pFW) +GO(g_variant_new_uint32, pFu) +GO(g_variant_new_uint64, pFU) +GOM(g_variant_new_va, pFEppp) +GO(g_variant_new_variant, pFp) +GO(g_variant_parse, pFppppp) +GO(g_variant_parse_error_print_context, pFpp) +//GO(g_variant_parse_error_quark, +//GO(g_variant_parser_get_error_quark, +GO(g_variant_print, pFpi) +GO(g_variant_print_string, pFppi) +GO(g_variant_ref, pFp) +GO(g_variant_ref_sink, pFp) +//GO(g_variant_serialised_byteswap, +//GO(g_variant_serialised_get_child, +//GO(g_variant_serialised_is_normal, +//GO(g_variant_serialised_n_children, +//GO(g_variant_serialiser_is_object_path, +//GO(g_variant_serialiser_is_signature, +//GO(g_variant_serialiser_is_string, +//GO(g_variant_serialiser_needed_size, +//GO(g_variant_serialiser_serialise, +GO(g_variant_store, vFp) +GO(g_variant_take_ref, pFp) +GO(g_variant_type_checked_, pFp) +//GO(g_variant_type_copy, +//GO(g_variant_type_dup_string, +//GO(g_variant_type_element, +//GO(g_variant_type_equal, +//GO(g_variant_type_first, +//GO(g_variant_type_free, +//GO(g_variant_type_get_string_length, +//GO(g_variant_type_hash, +//GO(g_variant_type_info_assert_no_infos, +//GO(g_variant_type_info_element, +//GO(g_variant_type_info_get, +//GO(g_variant_type_info_get_type_string, +//GO(g_variant_type_info_member_info, +//GO(g_variant_type_info_n_members, +//GO(g_variant_type_info_query, +//GO(g_variant_type_info_query_element, +//GO(g_variant_type_info_ref, +//GO(g_variant_type_info_unref, +//GO(g_variant_type_is_array, +//GO(g_variant_type_is_basic, +//GO(g_variant_type_is_container, +//GO(g_variant_type_is_definite, +//GO(g_variant_type_is_dict_entry, +//GO(g_variant_type_is_maybe, +//GO(g_variant_type_is_subtype_of, +//GO(g_variant_type_is_tuple, +//GO(g_variant_type_is_variant, +//GO(g_variant_type_key, +//GO(g_variant_type_new, +//GO(g_variant_type_new_array, +//GO(g_variant_type_new_dict_entry, +//GO(g_variant_type_new_maybe, +//GO(g_variant_type_new_tuple, +//GO(g_variant_type_next, +//GO(g_variant_type_n_items, +//GO(g_variant_type_peek_string, +//GO(g_variant_type_string_is_valid, +//GO(g_variant_type_string_scan, +//GO(g_variant_type_value, +GO(g_variant_unref, vFp) +GOM(g_vasprintf, iFEppp) +GOM(g_vfprintf, iFEppp) +GOM(g_vprintf, iFEpp) +GOM(g_vsnprintf, iFEpLpp) +GOM(g_vsprintf, iFEppp) +GO(g_warn_message, vFppipp) +//GO(_init, + +DATA(g_ascii_table, sizeof(void*)) +DATA(g_utf8_skip, sizeof(void*)) +//GLOB(g_threads_got_initialized, sizeof(void*)) +DATA(glib_major_version, sizeof(void*)) +DATA(glib_minor_version, sizeof(void*)) +DATA(glib_micro_version, sizeof(void*)) diff --git a/src/wrapped/wrappedgmodule2.c b/src/wrapped/wrappedgmodule2.c new file mode 100755 index 00000000..fb68612e --- /dev/null +++ b/src/wrapped/wrappedgmodule2.c @@ -0,0 +1,27 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" + +const char* gmodule2Name = "libgmodule-2.0.so.0"; +#define LIBNAME gmodule2 + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + lib->priv.w.needed = 1; \ + lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \ + lib->priv.w.neededlibs[0] = strdup("libglib-2.0.so.0"); + +#include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedgmodule2_private.h b/src/wrapped/wrappedgmodule2_private.h new file mode 100755 index 00000000..45beba45 --- /dev/null +++ b/src/wrapped/wrappedgmodule2_private.h @@ -0,0 +1,14 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(_fini, +GO(g_module_build_path, pFpp) +GO(g_module_close, iFp) +GO(g_module_error, pFv) +GO(g_module_make_resident, vFp) +GO(g_module_name, pFp) +GO(g_module_open, pFpi) +GO(g_module_supported, iFv) +GO(g_module_symbol, iFppp) +//GO(_init, diff --git a/src/wrapped/wrappedgobject2.c b/src/wrapped/wrappedgobject2.c new file mode 100755 index 00000000..4b1ba6d0 --- /dev/null +++ b/src/wrapped/wrappedgobject2.c @@ -0,0 +1,799 @@ +#define _GNU_SOURCE +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "gtkclass.h" +#include "myalign.h" + +const char* gobject2Name = "libgobject-2.0.so.0"; +#define LIBNAME gobject2 +library_t *my_lib = NULL; + +typedef int (*iFv_t)(void); +typedef void*(*pFi_t)(int); + +#define ADDED_FUNCTIONS() \ + GO(g_object_get_type, iFv_t) \ + GO(g_type_name, pFi_t) + +#include "generated/wrappedgobject2types.h" + +typedef struct gobject2_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gobject2_my_t; + +static void addGObject2Alternate(library_t* lib); + +void* getGobject2My(library_t* lib) +{ + gobject2_my_t* my = (gobject2_my_t*)calloc(1, sizeof(gobject2_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + addGObject2Alternate(lib); + return my; +} +#undef SUPER + +void freeGobject2My(void* lib) +{ + //gobject2_my_t *my = (gobject2_my_t *)lib; +} + +static int signal_cb(void* a, void* b, void* c, void* d) +{ + // signal can have many signature... so first job is to find the data! + // hopefully, no callback have more than 4 arguments... + my_signal_t* sig = NULL; + int i = 0; + if(my_signal_is_valid(a)) { + sig = (my_signal_t*)a; + i = 1; + } + if(!sig && my_signal_is_valid(b)) { + sig = (my_signal_t*)b; + i = 2; + } + if(!sig && my_signal_is_valid(c)) { + sig = (my_signal_t*)c; + i = 3; + } + if(!sig && my_signal_is_valid(d)) { + sig = (my_signal_t*)d; + i = 4; + } + printf_log(LOG_DEBUG, "gobject2 Signal called, sig=%p, handler=%p, NArgs=%d\n", sig, (void*)sig->c_handler, i); + switch(i) { + case 1: return (int)RunFunction(my_context, sig->c_handler, 1, sig->data); + case 2: return (int)RunFunction(my_context, sig->c_handler, 2, a, sig->data); + case 3: return (int)RunFunction(my_context, sig->c_handler, 3, a, b, sig->data); + case 4: return (int)RunFunction(my_context, sig->c_handler, 4, a, b, c, sig->data); + } + printf_log(LOG_NONE, "Warning, GObject2 signal callback but no data found!"); + return 0; +} +static int signal_cb_swapped(my_signal_t* sig, void* b, void* c, void* d) +{ + // data is in front here... + printf_log(LOG_DEBUG, "gobject2 swaped4 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 4, sig->data, b, c, d); +} +static int signal_cb_5(void* a, void* b, void* c, void* d, my_signal_t* sig) +{ + printf_log(LOG_DEBUG, "gobject2 5 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 5, a, b, c, d, sig->data); +} +static int signal_cb_swapped_5(my_signal_t* sig, void* b, void* c, void* d, void* e) +{ + // data is in front here... + printf_log(LOG_DEBUG, "gobject2 swaped5 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 5, sig->data, b, c, d, e); +} +static int signal_cb_6(void* a, void* b, void* c, void* d, void* e, my_signal_t* sig) +{ + printf_log(LOG_DEBUG, "gobject2 6 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 6, a, b, c, d, e, sig->data); +} +static int signal_cb_swapped_6(my_signal_t* sig, void* b, void* c, void* d, void* e, void* f) +{ + // data is in front here... + printf_log(LOG_DEBUG, "gobject2 swaped6 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 6, sig->data, b, c, d, e, f); +} +static int signal_cb_8(void* a, void* b, void* c, void* d, void* e, void* f, void* g, my_signal_t* sig) +{ + printf_log(LOG_DEBUG, "gobject2 8 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 8, a, b, c, d, e, f, g, sig->data); +} +static int signal_cb_swapped_8(my_signal_t* sig, void* b, void* c, void* d, void* e, void* f, void* g, void* h) +{ + // data is in front here... + printf_log(LOG_DEBUG, "gobject2 swaped8 Signal called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 8, sig->data, b, c, d, e, f, g, h); +} + +static void signal_delete(my_signal_t* sig, void* b) +{ + uintptr_t d = sig->destroy; + if(d) { + RunFunction(my_context, d, 2, sig->data, b); + } + printf_log(LOG_DEBUG, "gobject2 Signal deleted, sig=%p, destroy=%p\n", sig, (void*)d); + free(sig); +} + +static void addGObject2Alternate(library_t* lib) +{ + #define GO(A, W) AddAutomaticBridge(thread_get_emu(), lib->priv.w.bridge, W, dlsym(lib->priv.w.lib, #A), 0) + GO(g_cclosure_marshal_VOID__VOID, vFppuppp); + GO(g_cclosure_marshal_VOID__BOOLEAN, vFppuppp); + GO(g_cclosure_marshal_VOID__UCHAR, vFppuppp); + GO(g_cclosure_marshal_VOID__INT, vFppuppp); + GO(g_cclosure_marshal_VOID__UINT, vFppuppp); + GO(g_cclosure_marshal_VOID__LONG, vFppuppp); + GO(g_cclosure_marshal_VOID__ULONG, vFppuppp); + GO(g_cclosure_marshal_VOID__ENUM, vFppuppp); + GO(g_cclosure_marshal_VOID__FLAGS, vFppuppp); + GO(g_cclosure_marshal_VOID__FLOAT, vFppuppp); + GO(g_cclosure_marshal_VOID__DOUBLE, vFppuppp); + GO(g_cclosure_marshal_VOID__STRING, vFppuppp); + GO(g_cclosure_marshal_VOID__PARAM, vFppuppp); + GO(g_cclosure_marshal_VOID__BOXED, vFppuppp); + GO(g_cclosure_marshal_VOID__POINTER, vFppuppp); + GO(g_cclosure_marshal_VOID__OBJECT, vFppuppp); + GO(g_cclosure_marshal_VOID__VARIANT, vFppuppp); + GO(g_cclosure_marshal_STRING__OBJECT_POINTER, vFppuppp); + GO(g_cclosure_marshal_VOID__UINT_POINTER, vFppuppp); + GO(g_cclosure_marshal_BOOLEAN__FLAGS, vFppuppp); + GO(g_cclosure_marshal_BOOLEAN__BOXED_BOXED, vFppuppp); + GO(g_cclosure_marshal_generic_va, vFpppppip); + GO(g_cclosure_marshal_VOID__VOIDv, vFpppppip); + GO(g_cclosure_marshal_VOID__BOOLEANv, vFpppppip); + GO(g_cclosure_marshal_VOID__CHARv, vFpppppip); + GO(g_cclosure_marshal_VOID__UCHARv, vFpppppip); + GO(g_cclosure_marshal_VOID__INTv, vFpppppip); + GO(g_cclosure_marshal_VOID__UINTv, vFpppppip); + GO(g_cclosure_marshal_VOID__LONGv, vFpppppip); + GO(g_cclosure_marshal_VOID__ULONGv, vFpppppip); + GO(g_cclosure_marshal_VOID__ENUMv, vFpppppip); + GO(g_cclosure_marshal_VOID__FLAGSv, vFpppppip); + GO(g_cclosure_marshal_VOID__FLOATv, vFpppppip); + GO(g_cclosure_marshal_VOID__DOUBLEv, vFpppppip); + GO(g_cclosure_marshal_VOID__STRINGv, vFpppppip); + GO(g_cclosure_marshal_VOID__PARAMv, vFpppppip); + GO(g_cclosure_marshal_VOID__BOXEDv, vFpppppip); + GO(g_cclosure_marshal_VOID__POINTERv, vFpppppip); + GO(g_cclosure_marshal_VOID__OBJECTv, vFpppppip); + GO(g_cclosure_marshal_VOID__VARIANTv, vFpppppip); + GO(g_cclosure_marshal_STRING__OBJECT_POINTERv, vFpppppip); + GO(g_cclosure_marshal_VOID__UINT_POINTERv, vFpppppip); + GO(g_cclosure_marshal_BOOLEAN__FLAGSv, vFpppppip); + GO(g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv, vFpppppip); + #undef GO + #define GO(A, W) AddAutomaticBridge(thread_get_emu(), lib->priv.w.bridge, W, A, 0) + GO(signal_cb, iFpppp); + GO(signal_cb_swapped, iFpppp); + GO(signal_cb_5, iFppppp); + GO(signal_cb_swapped_5, iFppppp); + GO(signal_cb_6, iFpppppp); + GO(signal_cb_swapped_6, iFpppppp); + GO(signal_cb_8, iFpppppppp); + GO(signal_cb_swapped_8, iFpppppppp); + GO(signal_delete, vFpp); + #undef GO +} + +EXPORT uintptr_t my_g_signal_connect_data(x64emu_t* emu, void* instance, void* detailed, void* c_handler, void* data, void* closure, uint32_t flags) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + //TODO: get the type of instance to be more precise below + + my_signal_t *sig = new_mysignal(c_handler, data, closure); + uintptr_t ret = 0; + #define GO(A, B) if(strcmp((const char*)detailed, A)==0) ret = my->g_signal_connect_data(instance, detailed, (flags&2)?((void*)signal_cb_swapped_##B):((void*)signal_cb_##B), sig, signal_delete, flags); + GO("query-tooltip", 6) // GtkWidget + else GO("selection-get", 5) //GtkWidget + else GO("drag-data-get", 5) //GtkWidget + else GO("drag-data-received", 8) //GtkWidget + else GO("drag-drop", 6) //GtkWidget + else GO("drag-motion", 6) //GtkWidget + else GO("expand-collapse-cursor-row", 5) //GtkTreeView + else + ret = my->g_signal_connect_data(instance, detailed, (flags&2)?((void*)signal_cb_swapped):((void*)signal_cb), sig, signal_delete, flags); + #undef GO + printf_log(LOG_DEBUG, "Connecting gobject2 %p signal \"%s\" with sig=%p to %p, flags=%d\n", instance, (char*)detailed, sig, c_handler, flags); + return ret; +} + + +EXPORT void* my_g_object_connect(x64emu_t* emu, void* object, void* signal_spec, void** b) +{ + //gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + char* spec = (char*)signal_spec; + while(spec) { + // loop on each triplet... + if(strstr(spec, "signal::")==spec) { + my_g_signal_connect_data(emu, object, spec+strlen("signal::"), b[0], b[1], NULL, 0); + b+=2; + spec = (char*)*(b++); + } else if(strstr(spec, "swapped_signal::")==spec || strstr(spec, "swapped-signal::")==spec) { + my_g_signal_connect_data(emu, object, spec+strlen("swapped_signal::"), b[0], b[1], NULL, 2); + b+=2; + spec = (char*)*(b++); + } else if(strstr(spec, "signal_after::")==spec || strstr(spec, "signal-after::")==spec) { + my_g_signal_connect_data(emu, object, spec+strlen("signal_after::"), b[0], b[1], NULL, 1); + b+=2; + spec = (char*)*(b++); + } else if(strstr(spec, "swapped_signal_after::")==spec || strstr(spec, "swapped-signal-after::")==spec) { + my_g_signal_connect_data(emu, object, spec+strlen("swapped_signal_after::"), b[0], b[1], NULL, 1|2); + b+=2; + spec = (char*)*(b++); + } else { + printf_log(LOG_NONE, "Warning, don't know how to handle signal spec \"%s\" in g_object_connect\n", spec); + spec = NULL; + } + } + return object; +} + + +#define SUPER() \ +GO(0) \ +GO(1) \ +GO(2) \ +GO(3) \ +GO(4) \ +GO(5) \ +GO(6) \ +GO(7) + +#define GO(A) \ +static uintptr_t my_copy_fct_##A = 0; \ +static void* my_copy_##A(void* data) \ +{ \ + return (void*)RunFunction(my_context, my_copy_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findCopyFct(void* fct) +{ + if(!fct) return fct; + #define GO(A) if(my_copy_fct_##A == (uintptr_t)fct) return my_copy_##A; + SUPER() + #undef GO + #define GO(A) if(my_copy_fct_##A == 0) {my_copy_fct_##A = (uintptr_t)fct; return my_copy_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject Boxed Copy callback\n"); + return NULL; +} + +#define GO(A) \ +static uintptr_t my_free_fct_##A = 0; \ +static void my_free_##A(void* data) \ +{ \ + RunFunction(my_context, my_free_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findFreeFct(void* fct) +{ + if(!fct) return fct; + #define GO(A) if(my_free_fct_##A == (uintptr_t)fct) return my_free_##A; + SUPER() + #undef GO + #define GO(A) if(my_free_fct_##A == 0) {my_free_fct_##A = (uintptr_t)fct; return my_free_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject Boxed Free callback\n"); + return NULL; +} +// GSignalAccumulator +#define GO(A) \ +static uintptr_t my_accumulator_fct_##A = 0; \ +static int my_accumulator_##A(void* ihint, void* return_accu, void* handler_return, void* data) \ +{ \ + return RunFunction(my_context, my_accumulator_fct_##A, 4, ihint, return_accu, handler_return, data);\ +} +SUPER() +#undef GO +static void* findAccumulatorFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_accumulator_fct_##A == (uintptr_t)fct) return my_accumulator_##A; + SUPER() + #undef GO + #define GO(A) if(my_accumulator_fct_##A == 0) {my_accumulator_fct_##A = (uintptr_t)fct; return my_accumulator_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject Signal Accumulator callback\n"); + return NULL; +} + +// GClosureMarshal +#define GO(A) \ +static uintptr_t my_marshal_fct_##A = 0; \ +static void my_marshal_##A(void* closure, void* return_value, uint32_t n, void* values, void* hint, void* data) \ +{ \ + RunFunction(my_context, my_marshal_fct_##A, 6, closure, return_value, n, values, hint, data); \ +} +SUPER() +#undef GO +static void* findMarshalFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_marshal_fct_##A == (uintptr_t)fct) return my_marshal_##A; + SUPER() + #undef GO + #define GO(A) if(my_marshal_fct_##A == 0) {AddAutomaticBridge(thread_get_emu(), my_lib->priv.w.bridge, vFppuppp, my_marshal_##A, 0); my_marshal_fct_##A = (uintptr_t)fct; return my_marshal_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject Closure Marshal callback\n"); + return NULL; +} + +// GValueTransform +#define GO(A) \ +static uintptr_t my_valuetransform_fct_##A = 0; \ +static void my_valuetransform_##A(void* src, void* dst) \ +{ \ + RunFunction(my_context, my_valuetransform_fct_##A, 2, src, dst);\ +} +SUPER() +#undef GO +static void* findValueTransformFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_valuetransform_fct_##A == (uintptr_t)fct) return my_valuetransform_##A; + SUPER() + #undef GO + #define GO(A) if(my_valuetransform_fct_##A == 0) {my_valuetransform_fct_##A = (uintptr_t)fct; return my_valuetransform_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject Value Transform callback\n"); + return NULL; +} +// GParamSpecTypeInfo.... +// First the structure GParamSpecTypeInfo statics, with paired x64 source pointer +typedef struct my_GParamSpecTypeInfo_s { + /* type system portion */ + uint16_t instance_size; + uint16_t n_preallocs; + void (*instance_init) (void* pspec); + int value_type; + void (*finalize) (void* pspec); + void (*value_set_default)(void* pspec, void* value); + int (*value_validate) (void* pspec, void* value); + int (*values_cmp) (void* pspec, void* value1, void* value2); +} my_GParamSpecTypeInfo_t; + +#define GO(A) \ +static my_GParamSpecTypeInfo_t my_GParamSpecTypeInfo_##A = {0}; \ +static my_GParamSpecTypeInfo_t *ref_GParamSpecTypeInfo_##A = NULL; +SUPER() +#undef GO +// then the static functions callback that may be used with the structure, but dispatch also have a callback... +#define GO(A) \ +static uintptr_t fct_funcs_instance_init_##A = 0; \ +static void my_funcs_instance_init_##A(void* pspec) { \ + RunFunction(my_context, fct_funcs_instance_init_##A, 1, pspec); \ +} \ +static uintptr_t fct_funcs_finalize_##A = 0; \ +static void my_funcs_finalize_##A(void* pspec) { \ + RunFunction(my_context, fct_funcs_finalize_##A, 1, pspec); \ +} \ +static uintptr_t fct_funcs_value_set_default_##A = 0; \ +static void my_funcs_value_set_default_##A(void* pspec, void* value) { \ + RunFunction(my_context, fct_funcs_value_set_default_##A, 2, pspec, value); \ +} \ +static uintptr_t fct_funcs_value_validate_##A = 0; \ +static int my_funcs_value_validate_##A(void* pspec, void* value) { \ + return (int)RunFunction(my_context, fct_funcs_value_validate_##A, 2, pspec, value); \ +} \ +static uintptr_t fct_funcs_values_cmp_##A = 0; \ +static int my_funcs_values_cmp_##A(void* pspec, void* value1, void* value2) { \ + return (int)RunFunction(my_context, fct_funcs_values_cmp_##A, 3, pspec, value1, value2); \ +} + +SUPER() +#undef GO +// and now the get slot / assign... Taking into account that the desired callback may already be a wrapped one (so unwrapping it) +static my_GParamSpecTypeInfo_t* findFreeGParamSpecTypeInfo(my_GParamSpecTypeInfo_t* fcts) +{ + if(!fcts) return fcts; + #define GO(A) if(ref_GParamSpecTypeInfo_##A == fcts) return &my_GParamSpecTypeInfo_##A; + SUPER() + #undef GO + #define GO(A) if(ref_GParamSpecTypeInfo_##A == 0) { \ + ref_GParamSpecTypeInfo_##A = fcts; \ + my_GParamSpecTypeInfo_##A.instance_init = (fcts->instance_init)?((GetNativeFnc((uintptr_t)fcts->instance_init))?GetNativeFnc((uintptr_t)fcts->instance_init):my_funcs_instance_init_##A):NULL; \ + fct_funcs_instance_init_##A = (uintptr_t)fcts->instance_init; \ + my_GParamSpecTypeInfo_##A.finalize = (fcts->finalize)?((GetNativeFnc((uintptr_t)fcts->finalize))?GetNativeFnc((uintptr_t)fcts->finalize):my_funcs_finalize_##A):NULL; \ + fct_funcs_finalize_##A = (uintptr_t)fcts->finalize; \ + my_GParamSpecTypeInfo_##A.value_set_default = (fcts->value_set_default)?((GetNativeFnc((uintptr_t)fcts->value_set_default))?GetNativeFnc((uintptr_t)fcts->value_set_default):my_funcs_value_set_default_##A):NULL; \ + fct_funcs_value_set_default_##A = (uintptr_t)fcts->value_set_default; \ + my_GParamSpecTypeInfo_##A.value_validate = (fcts->value_validate)?((GetNativeFnc((uintptr_t)fcts->value_validate))?GetNativeFnc((uintptr_t)fcts->value_validate):my_funcs_value_validate_##A):NULL; \ + fct_funcs_value_validate_##A = (uintptr_t)fcts->value_validate; \ + my_GParamSpecTypeInfo_##A.values_cmp = (fcts->values_cmp)?((GetNativeFnc((uintptr_t)fcts->values_cmp))?GetNativeFnc((uintptr_t)fcts->values_cmp):my_funcs_values_cmp_##A):NULL; \ + fct_funcs_values_cmp_##A = (uintptr_t)fcts->values_cmp; \ + return &my_GParamSpecTypeInfo_##A; \ + } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject2 GParamSpecTypeInfo callback\n"); + return NULL; +} + +// GInterfaceInitFunc +#define GO(A) \ +static uintptr_t my_GInterfaceInitFunc_fct_##A = 0; \ +static void my_GInterfaceInitFunc_##A(void* src, void* dst) \ +{ \ + RunFunction(my_context, my_GInterfaceInitFunc_fct_##A, 2, src, dst);\ +} +SUPER() +#undef GO +static void* findGInterfaceInitFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GInterfaceInitFunc_fct_##A == (uintptr_t)fct) return my_GInterfaceInitFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GInterfaceInitFunc_fct_##A == 0) {my_GInterfaceInitFunc_fct_##A = (uintptr_t)fct; return my_GInterfaceInitFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject GInterfaceInitFunc callback\n"); + return NULL; +} +// GInterfaceFinalizeFunc +#define GO(A) \ +static uintptr_t my_GInterfaceFinalizeFunc_fct_##A = 0; \ +static void my_GInterfaceFinalizeFunc_##A(void* src, void* dst) \ +{ \ + RunFunction(my_context, my_GInterfaceFinalizeFunc_fct_##A, 2, src, dst);\ +} +SUPER() +#undef GO +static void* findGInterfaceFinalizeFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GInterfaceFinalizeFunc_fct_##A == (uintptr_t)fct) return my_GInterfaceFinalizeFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GInterfaceFinalizeFunc_fct_##A == 0) {my_GInterfaceFinalizeFunc_fct_##A = (uintptr_t)fct; return my_GInterfaceFinalizeFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject GInterfaceFinalizeFunc callback\n"); + return NULL; +} +// compare +#define GO(A) \ +static uintptr_t my_compare_fct_##A = 0; \ +static int my_compare_##A(void* a, void* b, void* data) \ +{ \ + return RunFunction(my_context, my_compare_fct_##A, 3, a, b, data); \ +} +SUPER() +#undef GO +static void* findcompareFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_compare_fct_##A == (uintptr_t)fct) return my_compare_##A; + SUPER() + #undef GO + #define GO(A) if(my_compare_fct_##A == 0) {my_compare_fct_##A = (uintptr_t)fct; return my_compare_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gobject compare callback\n"); + return NULL; +} +#undef SUPER + +EXPORT int my_g_boxed_type_register_static(x64emu_t* emu, void* name, void* boxed_copy, void* boxed_free) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + void* bc = findCopyFct(boxed_copy); + void* bf = findFreeFct(boxed_free); + return my->g_boxed_type_register_static(name, bc, bf); +} + +EXPORT uint32_t my_g_signal_new(x64emu_t* emu, void* name, int itype, int flags, uint32_t offset, void* acc, void* accu_data, void* marsh, int rtype, uint32_t n, void** b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + printf_log(LOG_DEBUG, "g_signal_new for \"%s\", with offset=%d and %d args\n", (const char*)name, offset, n); + + void* cb_acc = findAccumulatorFct(acc); + void* cb_marsh = findMarshalFct(marsh); + switch(n) { + case 0: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n); + case 1: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0]); + case 2: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1]); + case 3: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2]); + case 4: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2], b[3]); + case 5: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2], b[3], b[4]); + case 6: return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2], b[3], b[4], b[5]); + case 15:return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7], b[8], b[9], b[10], b[11], b[12], b[13], b[14]); + } + printf_log(LOG_NONE, "Warning, gobject g_signal_new called with too many parameters (%d)\n", n); + return my->g_signal_new(name, itype, flags, offset, cb_acc, accu_data, cb_marsh, rtype, n, b[0], b[1], b[2]); +} + +EXPORT uint32_t my_g_signal_newv(x64emu_t* emu, void* name, int itype, int flags, void* closure, void* acc, void* accu_data, void* marsh, int rtype, uint32_t n, void* types) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + printf_log(LOG_DEBUG, "g_signal_newv for \"%s\", with %d args\n", (const char*)name, n); + + return my->g_signal_newv(name, itype, flags, closure, findAccumulatorFct(acc), accu_data, findMarshalFct(marsh), rtype, n, types); +} + +EXPORT uint32_t my_g_signal_new_valist(x64emu_t* emu, void* name, int itype, int flags, void* closure, void* acc, void* accu_data, void* marsh, int rtype, uint32_t n, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + printf_log(LOG_DEBUG, "g_signal_new_valist for \"%s\", with %d args\n", (const char*)name, n); + CONVERT_VALIST(b); + return my->g_signal_new_valist(name, itype, flags, closure, findAccumulatorFct(acc), accu_data, findMarshalFct(marsh), rtype, n, VARARGS); +} + +EXPORT uint32_t my_g_signal_handlers_block_matched(x64emu_t* emu, void* instance, int mask, uint32_t signal, void* detail, void* closure, void* fnc, void* data) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + // NOTE that I have no idea of the fnc signature!... + if (fnc) printf_log(LOG_INFO, "Warning, gobject g_signal_handlers_block_matched called with non null function \n"); + fnc = findMarshalFct(fnc); //... just in case + return my->g_signal_handlers_block_matched(instance, mask, signal, detail, closure, fnc, data); +} + +EXPORT uint32_t my_g_signal_handlers_unblock_matched(x64emu_t* emu, void* instance, int mask, uint32_t signal, void* detail, void* closure, void* fnc, void* data) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + // NOTE that I have no idea of the fnc signature!... + if (fnc) printf_log(LOG_INFO, "Warning, gobject g_signal_handlers_unblock_matched called with non null function \n"); + fnc = findMarshalFct(fnc); //... just in case + return my->g_signal_handlers_unblock_matched(instance, mask, signal, detail, closure, fnc, data); +} + +EXPORT uint32_t my_g_signal_handlers_disconnect_matched(x64emu_t* emu, void* instance, int mask, uint32_t signal, void* detail, void* closure, void* fnc, void* data) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + // NOTE that I have no idea of the fnc signature!... + if (fnc) printf_log(LOG_INFO, "Warning, gobject g_signal_handlers_disconnect_matched called with non null function \n"); + fnc = findMarshalFct(fnc); //... just in case + return my->g_signal_handlers_disconnect_matched(instance, mask, signal, detail, closure, fnc, data); +} + +EXPORT unsigned long my_g_signal_handler_find(x64emu_t* emu, void* instance, int mask, uint32_t signal, void* detail, void* closure, void* fnc, void* data) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + // NOTE that I have no idea of the fnc signature!... + if (fnc) printf_log(LOG_INFO, "Warning, gobject g_signal_handler_find called with non null function \n"); + fnc = findMarshalFct(fnc); //... just in case + return my->g_signal_handler_find(instance, mask, signal, detail, closure, fnc, data); +} + +EXPORT void* my_g_object_new(x64emu_t* emu, int type, void* first, void* b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + if(first) { + CREATE_VALIST_FROM_VAARG(b, emu->scratch, 2); + return my->g_object_new_valist(type, first, VARARGS); + } + return my->g_object_new(type, first); +} + +EXPORT void* my_g_object_new_valist(x64emu_t* emu, int type, void* first, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CONVERT_VALIST(b); + return my->g_object_new_valist(type, first, VARARGS); +} + +EXPORT int my_g_type_register_static(x64emu_t* emu, int parent, void* name, my_GTypeInfo_t* info, int flags) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + return my->g_type_register_static(parent, name, findFreeGTypeInfo(info, parent), flags); +} + +EXPORT int my_g_type_register_fundamental(x64emu_t* emu, int parent, void* name, my_GTypeInfo_t* info, void* finfo, int flags) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + return my->g_type_register_fundamental(parent, name, findFreeGTypeInfo(info, parent), finfo, flags); +} + +EXPORT void my_g_value_register_transform_func(x64emu_t* emu, int src, int dst, void* f) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + my->g_value_register_transform_func(src, dst, findValueTransformFct(f)); +} + +static int my_signal_emission_hook(void* ihint, uint32_t n, void* values, my_signal_t* sig) +{ + printf_log(LOG_DEBUG, "gobject2 Signal Emission Hook called, sig=%p\n", sig); + return (int)RunFunction(my_context, sig->c_handler, 4, ihint, n, values, sig->data); +} +EXPORT unsigned long my_g_signal_add_emission_hook(x64emu_t* emu, uint32_t signal, void* detail, void* f, void* data, void* notify) +{ + // there can be many signals connected, so something "light" is needed here + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + if(!f) + return my->g_signal_add_emission_hook(signal, detail, f, data, notify); + my_signal_t* sig = new_mysignal(f, data, notify); + printf_log(LOG_DEBUG, "gobject2 Signal Emission Hook for signal %d created for %p, sig=%p\n", signal, f, sig); + return my->g_signal_add_emission_hook(signal, detail, my_signal_emission_hook, sig, my_signal_delete); +} + +EXPORT int my_g_type_register_static_simple(x64emu_t* emu, int parent, void* name, uint32_t class_size, void* class_init, uint32_t instance_size, void* instance_init, int flags) +{ + //gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + my_GTypeInfo_t info = {0}; + info.class_size = class_size; + info.class_init = class_init; + info.instance_size = instance_size; + info.instance_init = instance_init; + + return my_g_type_register_static(emu, parent, name, &info, flags); +} + +typedef struct my_GInterfaceInfo_s { + void* interface_init; + void* interface_finalize; + void* data; +} my_GInterfaceInfo_t; + +EXPORT void my_g_type_add_interface_static(x64emu_t* emu, int instance_type, int interface_type, my_GInterfaceInfo_t* info) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + my_GInterfaceInfo_t i = {0}; + i.interface_init = findGInterfaceInitFuncFct(info->interface_init); + i.interface_finalize = findGInterfaceFinalizeFuncFct(info->interface_finalize); + i.data = info->data; + my->g_type_add_interface_static(instance_type, interface_type, &i); +} + +EXPORT void my_g_param_spec_set_qdata_full(x64emu_t* emu, void* pspec, uint32_t quark, void* data, void* notify) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + my->g_param_spec_set_qdata_full(pspec, quark, data, findFreeFct(notify)); +} + +EXPORT int my_g_param_type_register_static(x64emu_t* emu, void* name, void* pspec_info) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + return my->g_param_type_register_static(name, findFreeGParamSpecTypeInfo(pspec_info)); +} + +EXPORT void* my_g_value_array_sort(x64emu_t* emu, void* array, void* comp) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + return my->g_value_array_sort(array, findcompareFct(comp)); +} + +EXPORT void* my_g_value_array_sort_with_data(x64emu_t* emu, void* array, void* comp, void* data) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + return my->g_value_array_sort_with_data(array, findcompareFct(comp), data); +} + +EXPORT void my_g_object_set_data_full(x64emu_t* emu, void* object, void* key, void* data, void* notify) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + my->g_object_set_data_full(object, key, data, findFreeFct(notify)); +} + +EXPORT void* my_g_type_class_peek_parent(x64emu_t* emu, void* object) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + + void* klass = my->g_type_class_peek_parent(object); + int type = klass?*(int*)klass:0; + return wrapCopyGTKClass(klass, type); +} + +EXPORT void my_g_signal_emit_valist(x64emu_t* emu, void* inst, uint32_t id, void* quark, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CONVERT_VALIST(b); + my->g_signal_emit_valist(inst, id, quark, VARARGS); +} + +EXPORT void my_g_signal_emit(x64emu_t* emu, void* inst, uint32_t id, void* quark, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CREATE_VALIST_FROM_VAARG(b, emu->scratch, 3); + my->g_signal_emit_valist(inst, id, quark, VARARGS); +} + +EXPORT void my_g_object_get_valist(x64emu_t* emu, void* a1, void* a2, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CONVERT_VALIST(b); + my->g_object_get_valist(a1, a2, VARARGS); +} + +EXPORT void my_g_object_get(x64emu_t* emu, void* a1, void* a2, uintptr_t* b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CREATE_VALIST_FROM_VAARG(b, emu->scratch, 2); + my->g_object_get_valist(a1, a2, VARARGS); +} + + +EXPORT void my_g_object_set_valist(x64emu_t* emu, void* a1, void* a2, x64_va_list_t b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CONVERT_VALIST(b); + my->g_object_set_valist(a1, a2, VARARGS); +} + +EXPORT void my_g_object_set(x64emu_t* emu, void* a1, void* a2, uintptr_t* b) +{ + gobject2_my_t *my = (gobject2_my_t*)my_lib->priv.w.p2; + CREATE_VALIST_FROM_VAARG(b, emu->scratch, 2); + my->g_object_set_valist(a1, a2, VARARGS); +} + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + InitGTKClass(lib->priv.w.bridge); \ + lib->priv.w.p2 = getGobject2My(lib); \ + my_lib = lib; \ + SetGObjectID(((gobject2_my_t*)lib->priv.w.p2)->g_object_get_type()); \ + SetGTypeName(((gobject2_my_t*)lib->priv.w.p2)->g_type_name); \ + lib->priv.w.needed = 1; \ + lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \ + lib->priv.w.neededlibs[0] = strdup("libglib-2.0.so.0"); + +#define CUSTOM_FINI \ + FiniGTKClass(); \ + freeGobject2My(lib->priv.w.p2); \ + free(lib->priv.w.p2); \ + my_lib = NULL; + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappedgobject2_private.h b/src/wrapped/wrappedgobject2_private.h new file mode 100755 index 00000000..d2597f92 --- /dev/null +++ b/src/wrapped/wrappedgobject2_private.h @@ -0,0 +1,444 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(__aeabi_f2lz, +//GO(__aeabi_f2ulz, +//GO(_fini, +GO(g_array_get_type, iFv) +GO(g_binding_flags_get_type, iFv) +//GO(g_binding_get_flags, +//GO(g_binding_get_source, +//GO(g_binding_get_source_property, +//GO(g_binding_get_target, +//GO(g_binding_get_target_property, +GO(g_binding_get_type, iFv) +//GO(g_binding_unbind, +GO(g_boxed_copy, pFip) +GO(g_boxed_free, vFip) +GOM(g_boxed_type_register_static, iFEppp) +GO(g_byte_array_get_type, iFv) +GO(g_bytes_get_type, iFv) +DATA(g_cclosure_marshal_BOOLEAN__BOXED_BOXED, sizeof(void*)) // set all cclosure_marshal as data, so they can be used "as-is" in cclosure parameter (not-wrapped) +DATA(g_cclosure_marshal_BOOLEAN__BOXED_BOXEDv, sizeof(void*)) +DATA(g_cclosure_marshal_BOOLEAN__FLAGS, sizeof(void*)) +DATA(g_cclosure_marshal_BOOLEAN__FLAGSv, sizeof(void*)) +DATA(g_cclosure_marshal_generic, sizeof(void*)) +DATA(g_cclosure_marshal_generic_va, sizeof(void*)) +DATA(g_cclosure_marshal_STRING__OBJECT_POINTER, sizeof(void*)) +DATA(g_cclosure_marshal_STRING__OBJECT_POINTERv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__BOOLEAN, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__BOOLEANv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__BOXED, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__BOXEDv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__CHAR, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__CHARv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__DOUBLE, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__DOUBLEv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__ENUM, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__ENUMv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__FLAGS, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__FLAGSv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__FLOAT, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__FLOATv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__INT, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__INTv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__LONG, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__LONGv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__OBJECT, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__OBJECTv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__PARAM, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__PARAMv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__POINTER, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__POINTERv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__STRING, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__STRINGv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UCHAR, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UCHARv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UINT, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UINT_POINTER, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UINT_POINTERv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__UINTv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__ULONG, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__ULONGv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__VARIANT, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__VARIANTv, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__VOID, sizeof(void*)) +DATA(g_cclosure_marshal_VOID__VOIDv, sizeof(void*)) +//GO(g_cclosure_new, +//GO(g_cclosure_new_object, +//GO(g_cclosure_new_object_swap, +//GO(g_cclosure_new_swap, +//GO(g_checksum_get_type, +GO(g_clear_object, vFp) +//GO(g_closure_add_finalize_notifier, +//GO(g_closure_add_invalidate_notifier, +//GO(g_closure_add_marshal_guards, +//GO(g_closure_get_type, +//GO(g_closure_invalidate, +//GO(g_closure_invoke, +//GO(g_closure_new_object, +//GO(g_closure_new_simple, +//GO(g_closure_ref, +//GO(g_closure_remove_finalize_notifier, +//GO(g_closure_remove_invalidate_notifier, +//GO(g_closure_set_marshal, +//GO(g_closure_set_meta_marshal, +//GO(g_closure_sink, +//GO(g_closure_unref, +GO(g_date_get_type, iFv) +GO(g_date_time_get_type, iFv) +GO(g_enum_complete_type_info, vFipp) +GO(g_enum_get_value, pFpi) +GO(g_enum_get_value_by_name, pFpp) +GO(g_enum_get_value_by_nick, pFpp) +GO(g_enum_register_static, iFpp) +GO(g_error_get_type, iFv) +GO(g_flags_complete_type_info, vFipp) +GO(g_flags_get_first_value, pFpi) +GO(g_flags_get_value_by_name, pFpp) +GO(g_flags_get_value_by_nick, pFpp) +GO(g_flags_register_static, iFpp) +GO(g_gstring_get_type, iFv) +GO(g_gtype_get_type, iFv) +GO(g_hash_table_get_type, iFv) +GO(g_initially_unowned_get_type, iFv) +GO(g_io_channel_get_type, iFv) +GO(g_io_condition_get_type, iFv) +GO(g_key_file_get_type, iFv) +GO(g_main_context_get_type, iFv) +GO(g_main_loop_get_type, iFv) +GO(g_mapped_file_get_type, iFv) +GO(g_markup_parse_context_get_type, iFv) +GO(g_match_info_get_type, iFv) +//GOM(g_object_add_toggle_ref, vFEpBp) +GO(g_object_add_weak_pointer, vFpp) +//GO(g_object_bind_property, +//GO(g_object_bind_property_full, +//GO(g_object_bind_property_with_closures, +GO(g_object_class_find_property, pFpp) +GO(g_object_class_install_properties, vFpup) +GO(g_object_class_install_property, vFpup) +GO(g_object_class_list_properties, pFpp) +GO(g_object_class_override_property, vFpup) +//GO(g_object_compat_control, +GOM(g_object_connect, pFEppV) +GO(g_object_disconnect, vFpppppppppppppppp) // caarg +//GOM(g_object_dup_data, pFEppBp) +//GOM(g_object_dup_qdata, pFEppBp) +GO(g_object_force_floating, vFp) +GO(g_object_freeze_notify, vFp) +GOM(g_object_get, vFEppV) +GO(g_object_get_data, pFpp) +GO(g_object_get_property, vFppp) +GO(g_object_get_qdata, pFpp) +GO(g_object_get_type, iFv) +GOM(g_object_get_valist, vFEppA) +GO(g_object_interface_find_property, pFpp) +GO(g_object_interface_install_property, vFpp) +GO(g_object_interface_list_properties, pFpp) +GO(g_object_is_floating, iFp) +GOM(g_object_new, pFEipV) +GO(g_object_newv, pFiup) +GOM(g_object_new_valist, pFEipA) +GO(g_object_notify, vFpp) +GO(g_object_notify_by_pspec, vFpp) +GO(g_object_ref, pFp) +GO(g_object_ref_sink, pFp) +//GOM(g_object_remove_toggle_ref, vFEpBp) +GO(g_object_remove_weak_pointer, vFpp) +//GOM(g_object_replace_data, iFEppppBB) +//GOM(g_object_replace_qdata, iFEppppBB) +GO(g_object_run_dispose, vFp) +GOM(g_object_set, vFEppV) +GO(g_object_set_data, vFppp) +GOM(g_object_set_data_full, vFEpppp) +GO(g_object_set_property, vFppp) +GO(g_object_set_qdata, vFppp) +//GOM(g_object_set_qdata_full, vFEpppB) +GOM(g_object_set_valist, vFEppA) +GO(g_object_steal_data, pFpp) +GO(g_object_steal_qdata, pFpp) +GO(g_object_thaw_notify, vFp) +GO(g_object_unref, vFp) +GO(g_object_watch_closure, vFpp) +//GOM(g_object_weak_ref, vFpBp) +GO(g_object_weak_unref, vFpp) +GO(g_param_spec_boolean, pFpppii) +GO(g_param_spec_boxed, pFpppii) +GO(g_param_spec_char, pFpppccci) +GO(g_param_spec_double, pFpppdddi) +GO(g_param_spec_enum, pFpppiii) +GO(g_param_spec_flags, pFpppiui) +GO(g_param_spec_float, pFpppfffi) +GO(g_param_spec_get_blurb, pFp) +GO(g_param_spec_get_default_value, pFp) +GO(g_param_spec_get_name, pFp) +GO(g_param_spec_get_nick, pFp) +GO(g_param_spec_get_qdata, pFpu) +GO(g_param_spec_get_redirect_target, pFp) +GO(g_param_spec_gtype, pFpppii) +GO(g_param_spec_int, pFpppiiii) +GO(g_param_spec_int64, pFpppIIIi) +GO(g_param_spec_internal, pFipppu) +GO(g_param_spec_long, pFpppllli) +GO(g_param_spec_object, pFpppii) +GO(g_param_spec_override, pFpp) +GO(g_param_spec_param, pFpppii) +GO(g_param_spec_pointer, pFpppi) +GO(g_param_spec_pool_insert, vFppi) +GO(g_param_spec_pool_list, pFpip) +GO(g_param_spec_pool_list_owned, pFpi) +GO(g_param_spec_pool_lookup, pFppii) +GO(g_param_spec_pool_new, pFi) +GO(g_param_spec_pool_remove, vFpp) +GO(g_param_spec_ref, pFp) +GO(g_param_spec_ref_sink, pFp) +GO(g_param_spec_set_qdata, vFpup) +GOM(g_param_spec_set_qdata_full, vFEpupp) +GO(g_param_spec_sink, vFp) +GO(g_param_spec_steal_qdata, pFpu) +GO(g_param_spec_string, pFppppi) +GO(g_param_spec_uchar, pFpppCCCi) +GO(g_param_spec_uint, pFpppuuui) +GO(g_param_spec_uint64, pFpppUUUi) +GO(g_param_spec_ulong, pFpppLLLi) +GO(g_param_spec_unichar, pFpppui) +GO(g_param_spec_unref, vFp) +GO(g_param_spec_value_array, pFppppi) +GO(g_param_spec_variant, pFpppppi) +GOM(g_param_type_register_static, iFEpp) +GO(g_param_value_convert, iFpppi) +GO(g_param_value_defaults, iFpp) +GO(g_param_values_cmp, iFppp) +GO(g_param_value_set_default, vFpp) +GO(g_param_value_validate, iFpp) +//GO(g_pointer_type_register_static, +//GO(g_pollfd_get_type, +//GO(g_ptr_array_get_type, +//GO(g_regex_get_type, +GO(g_signal_accumulator_first_wins, iFpppp) +GO(g_signal_accumulator_true_handled, iFpppp) +GOM(g_signal_add_emission_hook, LFEupppp) +GO(g_signal_chain_from_overridden, vFpp) +//GO(g_signal_chain_from_overridden_handler, vFpppppppppp) //vaarg +GO(g_signal_connect_closure, LFpppi) +GO(g_signal_connect_closure_by_id, LFpuppi) +GOM(g_signal_connect_data, LFEpppppu) +//GOM(g_signal_connect_object, LFEppBpi) +GOM(g_signal_emit, vFEpuuV) +GO(g_signal_emit_by_name, vFppppppppppp) //vaarg +GO(g_signal_emitv, vFpuup) +GOM(g_signal_emit_valist, vFEpupA) // va_list here +GO(g_signal_get_invocation_hint, pFp) +GO(g_signal_handler_block, vFpL) +GO(g_signal_handler_disconnect, vFpL) +GOM(g_signal_handler_find, LFEpiupppp) +GO(g_signal_handler_is_connected, iFpL) +GOM(g_signal_handlers_block_matched, uFEpiupppp) +//GO(g_signal_handlers_destroy, +GOM(g_signal_handlers_disconnect_matched, uFEpiupppp) +GOM(g_signal_handlers_unblock_matched, uFEpiupppp) +GO(g_signal_handler_unblock, vFpL) +GO(g_signal_has_handler_pending, iFpupi) +GO(g_signal_list_ids, pFip) +GO(g_signal_lookup, uFpi) +GO(g_signal_name, pFu) +GOM(g_signal_new, uFEpiiupppiuV) +//GOM(g_signal_new_class_handler, uFEpiupppppnV) +GOM(g_signal_newv, uFEpiippppiup) +GOM(g_signal_new_valist, uFEpiippppiuA) +GO(g_signal_override_class_closure, vFuip) +//GOM(g_signal_override_class_handler, vFEppB) +GO(g_signal_parse_name, iFpippi) +GO(g_signal_query, vFup) +GO(g_signal_remove_emission_hook, vFpL) +//GOM(g_signal_set_va_marshaller, vFEuiB) +GO(g_signal_stop_emission, vFpup) +GO(g_signal_stop_emission_by_name, vFpp) +GO(g_signal_type_cclosure_new, pFiu) //should wrap? +GO(g_source_get_type, iFv) +//GO(g_source_set_closure, +//GO(g_source_set_dummy_callback, +GO(g_strdup_value_contents, pFp) +GO(g_strv_get_type, iFv) +GO(g_thread_get_type, iFv) +GO(g_time_zone_get_type, iFv) +//GOM(g_type_add_class_cache_func, vFEpB) +GO(g_type_add_class_private, vFpiu) +//GO(g_type_add_instance_private, +//GOM(g_type_add_interface_check, vFEpB) +//GOM(g_type_add_interface_dynamic, vFEiip) +GOM(g_type_add_interface_static, vFEiip) +GO(g_type_check_class_cast, pFpi) +GO(g_type_check_class_is_a, iFpi) +GO(g_type_check_instance, iFp) +GO(g_type_check_instance_cast, pFpi) +GO(g_type_check_instance_is_a, iFpi) +GO(g_type_check_instance_is_fundamentally_a, iFpi) +GO(g_type_check_is_value_type, iFpi) +GO(g_type_check_value, iFp) +GO(g_type_check_value_holds, iFpi) +GO(g_type_children, pFip) +GO(g_type_class_add_private, vFpu) +GO(g_type_class_adjust_private_offset, vFpp) +GO(g_type_class_get_instance_private_offset, iFp) +GO(g_type_class_get_private, pFpi) +GO(g_type_class_peek, pFi) +GOM(g_type_class_peek_parent, pFEp) +GO(g_type_class_peek_static, pFi) +GO(g_type_class_ref, pFp) +GO(g_type_class_unref, vFp) +GO(g_type_class_unref_uncached, vFp) +GO(g_type_create_instance, pFi) +GO(g_type_default_interface_peek, pFi) +GO(g_type_default_interface_ref, pFi) +GO(g_type_default_interface_unref, vFp) +GO(g_type_depth, uFi) +GO(g_type_ensure, vFi) +GO(g_type_free_instance, vFp) +GO(g_type_from_name, iFp) +GO(g_type_fundamental, iFi) +GO(g_type_fundamental_next, iFv) +//GOM(g_type_get_plugin, pFEi) // GTypePugin is a stuct with callback +GO(g_type_get_qdata, pFip) +GO(g_type_get_type_registration_serial, uFv) +GO(g_type_init, vFv) +GO(g_type_init_with_debug_flags, vFi) +GO(g_type_instance_get_private, pFpi) +GO(g_type_interface_add_prerequisite, vFii) +//GOM(g_type_interface_get_plugin, pFEii) // return GTypePlugin* +GO(g_type_interface_peek, pFpi) +GO(g_type_interface_peek_parent, pFp) +GO(g_type_interface_prerequisites, pFip) +GO(g_type_interfaces, pFip) +GO(g_type_is_a, iFii) +//GO(g_type_module_add_interface, +//GO(g_type_module_get_type, +//GO(g_type_module_register_enum, +//GO(g_type_module_register_flags, +//GO(g_type_module_register_type, +//GO(g_type_module_set_name, +//GO(g_type_module_unuse, +//GO(g_type_module_use, +GO(g_type_name, pFi) +//GO(g_type_name_from_class, +//GO(g_type_name_from_instance, +GO(g_type_next_base, iFii) +GO(g_type_parent, iFi) +//GO(g_type_plugin_complete_interface_info, +//GO(g_type_plugin_complete_type_info, +//GO(g_type_plugin_get_type, +//GO(g_type_plugin_unuse, +//GO(g_type_plugin_use, +GO(g_type_qname, pFi) +GO(g_type_query, vFip) +//GOM(type_register_dynamic, iFEpippi) +GOM(g_type_register_fundamental, iFEipppi) +GOM(g_type_register_static, iFEippi) +GOM(g_type_register_static_simple, iFEipupupi) +//GOM(g_type_remove_class_cache_func, vFEpB) +//GOM(g_type_remove_interface_check, vFEpB) +GO(g_type_set_qdata, vFipp) +GO(g_type_test_flags, iFiu) +//GOM(g_type_value_table_peek, pFEi) //need to bridge GTypeValueTable +GO(g_value_array_append, pFpp) //TODO: does GValueArray needs alignement? +GO(g_value_array_copy, pFp) +GO(g_value_array_free, vFp) +GO(g_value_array_get_nth, pFpu) +GO(g_value_array_get_type, iFv) +GO(g_value_array_insert, pFpup) +GO(g_value_array_new, pFu) +GO(g_value_array_prepend, pFpp) +GO(g_value_array_remove, pFpu) +GOM(g_value_array_sort, pFEpp) // TODO: need to use a CompareFunct with GValue alignment work +GOM(g_value_array_sort_with_data, pFEppp) //TODO: same here +GO(g_value_copy, vFpp) +GO(g_value_dup_boxed, pFp) +GO(g_value_dup_object, pFp) +GO(g_value_dup_param, pFp) +GO(g_value_dup_string, pFp) +GO(g_value_dup_variant, pFp) +GO(g_value_fits_pointer, iFp) +GO(g_value_get_boolean, iFp) +GO(g_value_get_boxed, pFp) +GO(g_value_get_char, CFp) +GO(g_value_get_double, dFp) +GO(g_value_get_enum, iFp) +GO(g_value_get_flags, uFp) +GO(g_value_get_float, fFp) +GO(g_value_get_gtype, iFp) +GO(g_value_get_int, iFp) +GO(g_value_get_int64, IFp) +GO(g_value_get_long, lFp) +GO(g_value_get_object, pFp) +GO(g_value_get_param, pFp) +GO(g_value_get_pointer, pFp) +GO(g_value_get_schar, cFp) +GO(g_value_get_string, pFp) +GO(g_value_get_type, iFv) +GO(g_value_get_uchar, CFp) +GO(g_value_get_uint, uFp) +GO(g_value_get_uint64, UFp) +GO(g_value_get_ulong, LFp) +GO(g_value_get_variant, pFp) +GO(g_value_init, pFpi) +GO(g_value_init_from_instance, vFpp) +GO(g_value_peek_pointer, pFp) +GOM(g_value_register_transform_func, vFEiip) +GO(g_value_reset, pFp) +GO(g_value_set_boolean, vFpi) +GO(g_value_set_boxed, vFpp) +GO(g_value_set_boxed_take_ownership, vFpp) +GO(g_value_set_char, vFpC) +GO(g_value_set_double, vFpd) +GO(g_value_set_enum, vFpi) +GO(g_value_set_flags, vFpu) +GO(g_value_set_float, vFpf) +GO(g_value_set_gtype, vFpi) +GO(g_value_set_instance, vFpp) +GO(g_value_set_int, vFpi) +GO(g_value_set_int64, vFpI) +GO(g_value_set_long, vFpl) +GO(g_value_set_object, vFpp) +GO(g_value_set_object_take_ownership, vFpp) +GO(g_value_set_param, vFpp) +GO(g_value_set_param_take_ownership, vFpp) +GO(g_value_set_pointer, vFpp) +GO(g_value_set_schar, vFpc) +GO(g_value_set_static_boxed, vFpp) +GO(g_value_set_static_string, vFpp) +GO(g_value_set_string, vFpp) +GO(g_value_set_string_take_ownership, vFpp) +GO(g_value_set_uchar, vFpC) +GO(g_value_set_uint, vFpu) +GO(g_value_set_uint64, vFpU) +GO(g_value_set_ulong, vFpL) +GO(g_value_set_variant, vFpp) +GO(g_value_take_boxed, vFpp) +GO(g_value_take_object, vFpp) +GO(g_value_take_param, vFpp) +GO(g_value_take_string, vFpp) +GO(g_value_take_variant, vFpp) +GO(g_value_transform, iFpp) +GO(g_value_type_compatible, iFii) +GO(g_value_type_transformable, iFii) +GO(g_value_unset, vFp) +//GO(g_variant_builder_get_type, +//GO(g_variant_dict_get_type, +//GO(g_variant_get_gtype, +//GO(g_variant_type_get_gtype, +//GO(g_weak_ref_clear, +//GO(g_weak_ref_get, +//GO(g_weak_ref_init, +//GO(g_weak_ref_set, +//GO(_init, + +// to have some wrapper created for gtkclass.c +GO(dummy_set_property, vFpupp) +GO(dummy_drag_data_get, vFpppuu) +GO(dummy_drag_motion, iFppiiu) +GO(dummy_drag_data_received, vFppiipuu) +GO(dummy_childprop, vFppupp) +GO(dummy_marshal, vFppuppp) +GO(dummy_marshalv, vFpppppip) diff --git a/src/wrapped/wrappedgthread2.c b/src/wrapped/wrappedgthread2.c new file mode 100755 index 00000000..b992e0b4 --- /dev/null +++ b/src/wrapped/wrappedgthread2.c @@ -0,0 +1,141 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#define _GNU_SOURCE /* See feature_test_macros(7) */ +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "myalign.h" +#include "gtkclass.h" + +const char* gthread2Name = "libgthread-2.0.so.0"; +#define LIBNAME gthread2 + +typedef void (*vFp_t)(void*); + +#define SUPER() \ + GO(g_thread_init, vFp_t) \ + GO(g_thread_init_with_errorcheck_mutexes, vFp_t) + +typedef struct gthread2_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO +} gthread2_my_t; + +void* getGthread2My(library_t* lib) +{ + gthread2_my_t* my = (gthread2_my_t*)calloc(1, sizeof(gthread2_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + return my; +} +#undef SUPER + +void freeGthread2My(void* lib) +{ + //gthread2_my_t *my = (gthread2_my_t *)lib; +} + +EXPORT int g_threads_got_initialized; + +typedef struct my_GThreadFunctions_s +{ + void* (*mutex_new) (void); + void (*mutex_lock) (void *mutex); + int (*mutex_trylock) (void *mutex); + void (*mutex_unlock) (void *mutex); + void (*mutex_free) (void *mutex); + void* (*cond_new) (void); + void (*cond_signal) (void *cond); + void (*cond_broadcast) (void *cond); + void (*cond_wait) (void *cond, void *mutex); + int (*cond_timed_wait) (void *cond, void *mutex, void *end_time); + void (*cond_free) (void *cond); + void* (*private_new) (void* destructor); //GDestroyNotify + void* (*private_get) (void *private_key); + void (*private_set) (void *private_key, void* data); + void (*thread_create) (void* func, void* data, unsigned long stack_size, int joinable, int bound, int priority, void* thread, void **error); //GThreadFunc + void (*thread_yield) (void); + void (*thread_join) (void* thread); + void (*thread_exit) (void); + void (*thread_set_priority) (void* thread, int priority); + void (*thread_self) (void* thread); + int (*thread_equal) (void* thread1, void* thread2); +} my_GThreadFunctions_t; + +EXPORT void my_g_thread_init(x64emu_t* emu, my_GThreadFunctions_t* vtable) +{ + if(g_threads_got_initialized) { + // no need to do it twice + my_setGlobalGThreadsInit(); + return; + } + + library_t * lib = GetLibInternal(gthread2Name); + gthread2_my_t *my = (gthread2_my_t*)lib->priv.w.p2; + + if(!vtable) + return my->g_thread_init(NULL); + + printf_log(LOG_INFO, "Warning, vtable not NULL in g_thread_init not supported yet!\n"); + + my->g_thread_init(vtable); + + if(g_threads_got_initialized) + my_setGlobalGThreadsInit(); +} + +EXPORT void my_g_thread_init_with_errorcheck_mutexes(x64emu_t* emu, my_GThreadFunctions_t* vtable) +{ + if(g_threads_got_initialized) { + // no need to do it twice + my_setGlobalGThreadsInit(); + return; + } + + library_t * lib = GetLibInternal(gthread2Name); + gthread2_my_t *my = (gthread2_my_t*)lib->priv.w.p2; + + if(vtable) + printf_log(LOG_NONE, "Warning, vtable is not NULL in g_thread_init_with_errorcheck_mutexes call!\n"); + + my->g_thread_init_with_errorcheck_mutexes(vtable); // will certainly crash here... + + if(g_threads_got_initialized) + my_setGlobalGThreadsInit(); +} + +void** my_GetGthreadsGotInitialized() +{ + return (void**)&g_threads_got_initialized; +} + + + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + lib->priv.w.p2 = getGthread2My(lib); + +#define CUSTOM_FINI \ + freeGthread2My(lib->priv.w.p2); \ + free(lib->priv.w.p2); + +#include "wrappedlib_init.h" + diff --git a/src/wrapped/wrappedgthread2_private.h b/src/wrapped/wrappedgthread2_private.h new file mode 100755 index 00000000..fd8c61cc --- /dev/null +++ b/src/wrapped/wrappedgthread2_private.h @@ -0,0 +1,6 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +GOM(g_thread_init, vFEp) +GOM(g_thread_init_with_errorcheck_mutexes, vFEp) diff --git a/src/wrapped/wrappedgtkx112.c b/src/wrapped/wrappedgtkx112.c new file mode 100755 index 00000000..a574de6c --- /dev/null +++ b/src/wrapped/wrappedgtkx112.c @@ -0,0 +1,1144 @@ +#define _GNU_SOURCE +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <dlfcn.h> + +#include "wrappedlibs.h" + +#include "debug.h" +#include "wrapper.h" +#include "bridge.h" +#include "librarian/library_private.h" +#include "x64emu.h" +#include "emu/x64emu_private.h" +#include "callback.h" +#include "librarian.h" +#include "box64context.h" +#include "emu/x64emu_private.h" +#include "myalign.h" +#include "gtkclass.h" + +const char* gtkx112Name = "libgtk-x11-2.0.so.0"; +static char* libname = NULL; +#define LIBNAME gtkx112 + +typedef int (*iFv_t)(void); +typedef void* (*pFi_t)(int); +typedef void (*vFp_t)(void*); +typedef int (*iFp_t)(void*); +typedef void* (*pFp_t)(void*); +typedef double (*dFp_t)(void*); +typedef int (*iFip_t)(int, void*); +typedef int (*iFpp_t)(void*, void*); +typedef void* (*pFpp_t)(void*, void*); +typedef void* (*pFpi_t)(void*, int); +typedef void (*vFpp_t)(void*, void*); +typedef void* (*pFppi_t)(void*, void*, int32_t); +typedef int32_t (*iFppp_t)(void*, void*, void*); +typedef void (*vFppp_t)(void*, void*, void*); +typedef uint32_t (*uFupp_t)(uint32_t, void*, void*); +typedef void (*vFpipV_t)(void*, int, void*, ...); +typedef int (*iFpppp_t)(void*, void*, void*, void*); +typedef void (*vFpppp_t)(void*, void*, void*, void*); +typedef void (*vFppup_t)(void*, void*, uint32_t, void*); +typedef unsigned long (*LFppppi_t)(void*, void*, void*, void*, int); +typedef void (*vFpippp_t)(void*, int, void*, void*, void*); +typedef void (*vFppppp_t)(void*, void*, void*, void*, void*); +typedef void (*vFpuipp_t)(void*, uint32_t, int, void*, void*); +typedef void (*vFppupp_t)(void*, void*, uint32_t, void*, void*); +typedef uint32_t (*uFiipppp_t)(int, int, void*, void*, void*, void*); +typedef unsigned long (*LFpppppi_t)(void*, void*, void*, void*, void*, int); +typedef int (*iFpppppp_t)(void*, void*, void*, void*, void*, void*); +typedef void (*vFpuipuV_t)(void*, uint32_t, int, void*, uint32_t, ...); +typedef int (*iFppuppp_t)(void*, void*, uint32_t, void*, void*, void*); +typedef void* (*pFppppppi_t)(void*, void*, void*, void*, void*, void*, int); +typedef void* (*pFppppppp_t)(void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpppppppi_t)(void*, void*, void*, void*, void*, void*, void*, int); +typedef void (*vFpppppuu_t)(void*, void*, void*, void*, void*, uint32_t, uint32_t); +typedef unsigned long (*LFppppppii_t)(void*, void*, void*, void*, void*, void*, int32_t, int32_t); +typedef void* (*pFpippppppp_t)(void*, int, void*, void*, void*, void*, void*, void*, void*); +typedef void* (*pFpipppppppi_t)(void*, int, void*, void*, void*, void*, void*, void*, void*, int); + +#define SUPER() \ + GO(gtk_object_get_type, iFv_t) \ + GO(gtk_object_set_data_full, vFpppp_t) \ + GO(g_type_check_instance_cast, pFpi_t) \ + GO(gtk_bin_get_type, iFv_t) \ + GO(gtk_widget_get_type, iFv_t) \ + GO(gtk_button_get_type, iFv_t) \ + GO(gtk_container_get_type, iFv_t) \ + GO(gtk_misc_get_type, iFv_t) \ + GO(gtk_label_get_type, iFv_t) \ + GO(gtk_tree_view_get_type, iFv_t) \ + GO(gtk_window_get_type, iFv_t) \ + GO(gtk_table_get_type, iFv_t) \ + GO(gtk_type_class, pFi_t) \ + GO(gtk_button_get_label, pFp_t) \ + GO(gtk_signal_connect_full, LFppppppii_t) \ + GO(gtk_dialog_add_button, pFppi_t) \ + GO(gtk_message_dialog_format_secondary_text, vFpp_t) \ + GO(gtk_message_dialog_format_secondary_markup, vFpp_t) \ + GO(gtk_init, vFpp_t) \ + GO(gtk_init_check, iFpp_t) \ + GO(gtk_init_with_args, iFpppppp_t) \ + GO(gtk_menu_attach_to_widget, vFppp_t) \ + GO(gtk_menu_popup, vFpppppuu_t) \ + GO(gtk_timeout_add, uFupp_t) \ + GO(gtk_clipboard_set_with_data, iFppuppp_t) \ + GO(gtk_clipboard_set_with_owner, iFppuppp_t)\ + GO(gtk_stock_set_translate_func, vFpppp_t) \ + GO(gtk_container_forall, vFppp_t) \ + GO(gtk_tree_view_set_search_equal_func, vFpppp_t) \ + GO(gtk_text_iter_backward_find_char, iFpppp_t) \ + GO(gtk_text_iter_forward_find_char, iFpppp_t) \ + GO(gtk_toolbar_append_item, pFppppppp_t) \ + GO(gtk_toolbar_prepend_item, pFppppppp_t) \ + GO(gtk_toolbar_insert_item, pFpppppppi_t) \ + GO(gtk_toolbar_append_element, pFpippppppp_t) \ + GO(gtk_toolbar_prepend_element, pFpippppppp_t) \ + GO(gtk_toolbar_insert_element, pFpipppppppi_t) \ + GO(gtk_toolbar_insert_stock, pFppppppi_t) \ + GO(gtk_tree_sortable_set_sort_func, vFpippp_t) \ + GO(gtk_tree_sortable_set_default_sort_func, vFpppp_t)\ + GO(gtk_type_unique, iFip_t) \ + GO(gtk_spin_button_get_value, dFp_t) \ + GO(gtk_builder_connect_signals_full, vFppp_t) \ + GO(gtk_action_get_type, iFv_t) \ + GO(gtk_binding_entry_add_signall, vFpuipp_t)\ + GO(gtk_binding_entry_add_signal, vFpuipuV_t)\ + GO(gtk_container_foreach, vFppp_t) \ + GO(gtk_cell_layout_set_cell_data_func, vFppppp_t) \ + GO(g_module_close, iFp_t) \ + GO(g_module_open, pFpi_t) \ + GO(g_module_supported, iFv_t) \ + GO(g_module_symbol, iFppp_t) \ + GO(g_log, vFpipV_t) \ + GO(g_type_class_ref, pFi_t) \ + GO(g_type_class_unref, vFp_t) \ + GO(g_signal_connect_object, LFppppi_t) \ + GO(g_signal_connect_data, LFpppppi_t) \ + GO(gtk_action_group_add_actions, vFppup_t) \ + GO(gtk_action_group_add_actions_full, vFppupp_t) \ + GO(gtk_tree_model_foreach, vFppp_t) \ + GO(gtk_clipboard_request_text, vFppp_t) \ + GO(gtk_clipboard_request_contents, vFpppp_t)\ + GO(gtk_input_add_full, uFiipppp_t) \ + + + +typedef struct gtkx112_my_s { + // functions + #define GO(A, B) B A; + SUPER() + #undef GO + int gtk1; +} gtkx112_my_t; + +void* getGtkx112My(library_t* lib) +{ + gtkx112_my_t* my = (gtkx112_my_t*)calloc(1, sizeof(gtkx112_my_t)); + #define GO(A, W) my->A = (W)dlsym(lib->priv.w.lib, #A); + SUPER() + #undef GO + if(strcmp(lib->name, "libgtk-1.2.so.0")==0) + my->gtk1 = 1; + return my; +} +#undef SUPER + +void freeGtkx112My(void* lib) +{ + //gtkx112_my_t *my = (gtkx112_my_t *)lib; +} + +static box64context_t* context = NULL; + +EXPORT uintptr_t my_gtk_signal_connect_full(x64emu_t* emu, void* object, void* name, void* c_handler, void* unsupported, void* data, void* closure, uint32_t signal, int after) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + if(!context) + context = emu->context; + + my_signal_t *sig = new_mysignal(c_handler, data, closure); + uintptr_t ret = my->gtk_signal_connect_full(object, name, my_signal_cb, NULL, sig, my_signal_delete, signal, after); + printf_log(LOG_DEBUG, "Connecting gtk signal \"%s\" with cb=%p\n", (char*)name, sig); + return ret; +} + +// this is quite ineficient, but GCallback is often used, so create a large pool here... +#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) \ +GO(16) \ +GO(17) \ +GO(18) \ +GO(19) \ +GO(20) \ +GO(21) \ +GO(22) \ +GO(23) \ +GO(24) \ +GO(25) \ +GO(26) \ +GO(27) \ +GO(28) \ +GO(29) \ +GO(30) \ +GO(31) \ +GO(32) \ +GO(33) \ +GO(34) \ +GO(35) \ +GO(36) \ +GO(37) \ +GO(38) \ +GO(39) \ + +// GtkMenuDetachFunc +#define GO(A) \ +static uintptr_t my_menudetach_fct_##A = 0; \ +static void my_menudetach_##A(void* widget, void* menu) \ +{ \ + RunFunction(my_context, my_menudetach_fct_##A, 2, widget, menu);\ +} +SUPER() +#undef GO +static void* findMenuDetachFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_menudetach_fct_##A == (uintptr_t)fct) return my_menudetach_##A; + SUPER() + #undef GO + #define GO(A) if(my_menudetach_fct_##A == 0) {my_menudetach_fct_##A = (uintptr_t)fct; return my_menudetach_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GMenuDetachFunc callback\n"); + return NULL; +} + +// GtkMenuPositionFunc +#define GO(A) \ +static uintptr_t my_menuposition_fct_##A = 0; \ +static void my_menuposition_##A(void* menu, void* x, void* y, void* push_in, void* data) \ +{ \ + RunFunction(my_context, my_menuposition_fct_##A, 5, menu, x, y, push_in, data);\ +} +SUPER() +#undef GO +static void* findMenuPositionFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_menuposition_fct_##A == (uintptr_t)fct) return my_menuposition_##A; + SUPER() + #undef GO + #define GO(A) if(my_menuposition_fct_##A == 0) {my_menuposition_fct_##A = (uintptr_t)fct; return my_menuposition_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkMenuPositionFunc callback\n"); + return NULL; +} + +// GtkFunction +#define GO(A) \ +static uintptr_t my_gtkfunction_fct_##A = 0; \ +static int my_gtkfunction_##A(void* data) \ +{ \ + return RunFunction(my_context, my_gtkfunction_fct_##A, 1, data);\ +} +SUPER() +#undef GO +static void* findGtkFunctionFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_gtkfunction_fct_##A == (uintptr_t)fct) return my_gtkfunction_##A; + SUPER() + #undef GO + #define GO(A) if(my_gtkfunction_fct_##A == 0) {my_gtkfunction_fct_##A = (uintptr_t)fct; return my_gtkfunction_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkFunction callback\n"); + return NULL; +} + +// GtkClipboardGetFunc +#define GO(A) \ +static uintptr_t my_clipboardget_fct_##A = 0; \ +static void my_clipboardget_##A(void* clipboard, void* selection, uint32_t info, void* data) \ +{ \ + RunFunction(my_context, my_clipboardget_fct_##A, 4, clipboard, selection, info, data);\ +} +SUPER() +#undef GO +static void* findClipboadGetFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_clipboardget_fct_##A == (uintptr_t)fct) return my_clipboardget_##A; + SUPER() + #undef GO + #define GO(A) if(my_clipboardget_fct_##A == 0) {my_clipboardget_fct_##A = (uintptr_t)fct; return my_clipboardget_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkClipboardGetFunc callback\n"); + return NULL; +} + +// GtkClipboardClearFunc +#define GO(A) \ +static uintptr_t my_clipboardclear_fct_##A = 0; \ +static void my_clipboardclear_##A(void* clipboard, void* data) \ +{ \ + RunFunction(my_context, my_clipboardclear_fct_##A, 2, clipboard, data);\ +} +SUPER() +#undef GO +static void* findClipboadClearFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_clipboardclear_fct_##A == (uintptr_t)fct) return my_clipboardclear_##A; + SUPER() + #undef GO + #define GO(A) if(my_clipboardclear_fct_##A == 0) {my_clipboardclear_fct_##A = (uintptr_t)fct; return my_clipboardclear_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkClipboardClearFunc callback\n"); + return NULL; +} + +// GtkCallback +#define GO(A) \ +static uintptr_t my_gtkcallback_fct_##A = 0; \ +static void my_gtkcallback_##A(void* widget, void* data) \ +{ \ + RunFunction(my_context, my_gtkcallback_fct_##A, 2, widget, data);\ +} +SUPER() +#undef GO +static void* findGtkCallbackFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_gtkcallback_fct_##A == (uintptr_t)fct) return my_gtkcallback_##A; + SUPER() + #undef GO + #define GO(A) if(my_gtkcallback_fct_##A == 0) {my_gtkcallback_fct_##A = (uintptr_t)fct; return my_gtkcallback_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkCallback callback\n"); + return NULL; +} + +// GtkTextCharPredicate +#define GO(A) \ +static uintptr_t my_textcharpredicate_fct_##A = 0; \ +static int my_textcharpredicate_##A(uint32_t ch, void* data) \ +{ \ + return (int)RunFunction(my_context, my_textcharpredicate_fct_##A, 2, ch, data);\ +} +SUPER() +#undef GO +static void* findGtkTextCharPredicateFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_textcharpredicate_fct_##A == (uintptr_t)fct) return my_textcharpredicate_##A; + SUPER() + #undef GO + #define GO(A) if(my_textcharpredicate_fct_##A == 0) {my_textcharpredicate_fct_##A = (uintptr_t)fct; return my_textcharpredicate_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkTextCharPredicate callback\n"); + return NULL; +} + +// Toolbar +#define GO(A) \ +static uintptr_t my_toolbar_fct_##A = 0; \ +static void my_toolbar_##A(void* widget, void* data) \ +{ \ + RunFunction(my_context, my_toolbar_fct_##A, 2, widget, data);\ +} +SUPER() +#undef GO +static void* findToolbarFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_toolbar_fct_##A == (uintptr_t)fct) return my_toolbar_##A; + SUPER() + #undef GO + #define GO(A) if(my_toolbar_fct_##A == 0) {my_toolbar_fct_##A = (uintptr_t)fct; return my_toolbar_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 Toolbar callback\n"); + return NULL; +} + +// Builder +#define GO(A) \ +static uintptr_t my_builderconnect_fct_##A = 0; \ +static void my_builderconnect_##A(void* builder, void* object, void* signal, void* handler, void* connect, int flags, void* data) \ +{ \ + RunFunction(my_context, my_builderconnect_fct_##A, 7, builder, object, signal, handler, connect, flags, data);\ +} +SUPER() +#undef GO +static void* findBuilderConnectFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_builderconnect_fct_##A == (uintptr_t)fct) return my_builderconnect_##A; + SUPER() + #undef GO + #define GO(A) if(my_builderconnect_fct_##A == 0) {my_builderconnect_fct_##A = (uintptr_t)fct; return my_builderconnect_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 BuilderConnect callback\n"); + return NULL; +} + +// GtkCellLayoutDataFunc +#define GO(A) \ +static uintptr_t my_GtkCellLayoutDataFunc_fct_##A = 0; \ +static void my_GtkCellLayoutDataFunc_##A(void* layout, void* cell, void* tree, void* iter, void* data) \ +{ \ + RunFunction(my_context, my_GtkCellLayoutDataFunc_fct_##A, 5, layout, cell, tree, iter, data);\ +} +SUPER() +#undef GO +static void* findGtkCellLayoutDataFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkCellLayoutDataFunc_fct_##A == (uintptr_t)fct) return my_GtkCellLayoutDataFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkCellLayoutDataFunc_fct_##A == 0) {my_GtkCellLayoutDataFunc_fct_##A = (uintptr_t)fct; return my_GtkCellLayoutDataFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkCellLayoutDataFunc callback\n"); + return NULL; +} + +// GDestroyNotify +#define GO(A) \ +static uintptr_t my_GDestroyNotify_fct_##A = 0; \ +static void my_GDestroyNotify_##A(void* data) \ +{ \ + RunFunction(my_context, my_GDestroyNotify_fct_##A, 1, data); \ +} +SUPER() +#undef GO +static void* findGDestroyNotifyFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GDestroyNotify_fct_##A == (uintptr_t)fct) return my_GDestroyNotify_##A; + SUPER() + #undef GO + #define GO(A) if(my_GDestroyNotify_fct_##A == 0) {my_GDestroyNotify_fct_##A = (uintptr_t)fct; return my_GDestroyNotify_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GDestroyNotify callback\n"); + return NULL; +} + +// GtkTreeModelForeachFunc +#define GO(A) \ +static uintptr_t my_GtkTreeModelForeachFunc_fct_##A = 0; \ +static int my_GtkTreeModelForeachFunc_##A(void* model, void* path, void* iter, void* data) \ +{ \ + return (int)RunFunction(my_context, my_GtkTreeModelForeachFunc_fct_##A, 4, model, path, iter, data); \ +} +SUPER() +#undef GO +static void* findGtkTreeModelForeachFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkTreeModelForeachFunc_fct_##A == (uintptr_t)fct) return my_GtkTreeModelForeachFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkTreeModelForeachFunc_fct_##A == 0) {my_GtkTreeModelForeachFunc_fct_##A = (uintptr_t)fct; return my_GtkTreeModelForeachFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkTreeModelForeachFunc callback\n"); + return NULL; +} + +// GtkClipboardReceivedFunc +#define GO(A) \ +static uintptr_t my_GtkClipboardReceivedFunc_fct_##A = 0; \ +static void my_GtkClipboardReceivedFunc_##A(void* clipboard, void* sel, void* data) \ +{ \ + RunFunction(my_context, my_GtkClipboardReceivedFunc_fct_##A, 3, clipboard, sel, data); \ +} +SUPER() +#undef GO +static void* findGtkClipboardReceivedFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkClipboardReceivedFunc_fct_##A == (uintptr_t)fct) return my_GtkClipboardReceivedFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkClipboardReceivedFunc_fct_##A == 0) {my_GtkClipboardReceivedFunc_fct_##A = (uintptr_t)fct; return my_GtkClipboardReceivedFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkClipboardReceivedFunc callback\n"); + return NULL; +} + +// GtkClipboardTextReceivedFunc +#define GO(A) \ +static uintptr_t my_GtkClipboardTextReceivedFunc_fct_##A = 0; \ +static void my_GtkClipboardTextReceivedFunc_##A(void* clipboard, void* text, void* data) \ +{ \ + RunFunction(my_context, my_GtkClipboardTextReceivedFunc_fct_##A, 3, clipboard, text, data); \ +} +SUPER() +#undef GO +static void* findGtkClipboardTextReceivedFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkClipboardTextReceivedFunc_fct_##A == (uintptr_t)fct) return my_GtkClipboardTextReceivedFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkClipboardTextReceivedFunc_fct_##A == 0) {my_GtkClipboardTextReceivedFunc_fct_##A = (uintptr_t)fct; return my_GtkClipboardTextReceivedFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkClipboardTextReceivedFunc callback\n"); + return NULL; +} + +// GtkTreeViewSearchEqualFunc +#define GO(A) \ +static uintptr_t my_GtkTreeViewSearchEqualFunc_fct_##A = 0; \ +static int my_GtkTreeViewSearchEqualFunc_##A(void* model, int column, void* key, void* iter, void* data) \ +{ \ + return RunFunction(my_context, my_GtkTreeViewSearchEqualFunc_fct_##A, 5, model, column, key, iter, data); \ +} +SUPER() +#undef GO +static void* findGtkTreeViewSearchEqualFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkTreeViewSearchEqualFunc_fct_##A == (uintptr_t)fct) return my_GtkTreeViewSearchEqualFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkTreeViewSearchEqualFunc_fct_##A == 0) {my_GtkTreeViewSearchEqualFunc_fct_##A = (uintptr_t)fct; return my_GtkTreeViewSearchEqualFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkTreeViewSearchEqualFunc callback\n"); + return NULL; +} + +// GtkTreeIterCompareFunc +#define GO(A) \ +static uintptr_t my_GtkTreeIterCompareFunc_fct_##A = 0; \ +static int my_GtkTreeIterCompareFunc_##A(void* model, void* a, void* b, void* data) \ +{ \ + return RunFunction(my_context, my_GtkTreeIterCompareFunc_fct_##A, 4, model, a, b, data); \ +} +SUPER() +#undef GO +static void* findGtkTreeIterCompareFuncFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkTreeIterCompareFunc_fct_##A == (uintptr_t)fct) return my_GtkTreeIterCompareFunc_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkTreeIterCompareFunc_fct_##A == 0) {my_GtkTreeIterCompareFunc_fct_##A = (uintptr_t)fct; return my_GtkTreeIterCompareFunc_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkTreeIterCompareFunc callback\n"); + return NULL; +} + +// GdkInputFunction +#define GO(A) \ +static uintptr_t my_GdkInputFunction_fct_##A = 0; \ +static void my_GdkInputFunction_##A(void* data, int source, int cond) \ +{ \ + RunFunction(my_context, my_GdkInputFunction_fct_##A, 3, data, source, cond); \ +} +SUPER() +#undef GO +static void* findGdkInputFunctionFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GdkInputFunction_fct_##A == (uintptr_t)fct) return my_GdkInputFunction_##A; + SUPER() + #undef GO + #define GO(A) if(my_GdkInputFunction_fct_##A == 0) {my_GdkInputFunction_fct_##A = (uintptr_t)fct; return my_GdkInputFunction_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GdkInputFunction callback\n"); + return NULL; +} + +// GtkCallbackMarshal +#define GO(A) \ +static uintptr_t my_GtkCallbackMarshal_fct_##A = 0; \ +static void my_GtkCallbackMarshal_##A(void* obj, void* data, uint32_t n, void* args)\ +{ \ + RunFunction(my_context, my_GtkCallbackMarshal_fct_##A, 4, obj, data, n, args); \ +} +SUPER() +#undef GO +static void* findGtkCallbackMarshalFct(void* fct) +{ + if(!fct) return fct; + if(GetNativeFnc((uintptr_t)fct)) return GetNativeFnc((uintptr_t)fct); + #define GO(A) if(my_GtkCallbackMarshal_fct_##A == (uintptr_t)fct) return my_GtkCallbackMarshal_##A; + SUPER() + #undef GO + #define GO(A) if(my_GtkCallbackMarshal_fct_##A == 0) {my_GtkCallbackMarshal_fct_##A = (uintptr_t)fct; return my_GtkCallbackMarshal_##A; } + SUPER() + #undef GO + printf_log(LOG_NONE, "Warning, no more slot for gtk-2 GtkCallbackMarshal callback\n"); + return NULL; +} + +#undef SUPER + +EXPORT void my_gtk_dialog_add_buttons(x64emu_t* emu, void* dialog, void* first, uintptr_t* b) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + void* btn = first; + while(btn) { + int id = (int)*(b++); + my->gtk_dialog_add_button(dialog, btn, id); + btn = (void*)*(b++); + } +} + +EXPORT void my_gtk_message_dialog_format_secondary_text(x64emu_t* emu, void* dialog, void* fmt, void* b) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + char* buf = NULL; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2); + PREPARE_VALIST; + int ret = vasprintf(&buf, fmt, VARARGS); + (void)ret; + // pre-bake the fmt/vaarg, because there is no "va_list" version of this function + my->gtk_message_dialog_format_secondary_text(dialog, buf); + free(buf); +} + +EXPORT void my_gtk_message_dialog_format_secondary_markup(x64emu_t* emu, void* dialog, void* fmt, void* b) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + char* buf = NULL; + myStackAlign(emu, (const char*)fmt, b, emu->scratch, R_EAX, 2); + PREPARE_VALIST; + int ret = vasprintf(&buf, fmt, VARARGS); + (void)ret; + // pre-bake the fmt/vaarg, because there is no "va_list" version of this function + my->gtk_message_dialog_format_secondary_markup(dialog, buf); + free(buf); +} +EXPORT void* my_gtk_type_class(x64emu_t* emu, int type) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + void* class = my->gtk_type_class(type); + return wrapCopyGTKClass(class, type); +} + +EXPORT void my_gtk_init(x64emu_t* emu, void* argc, void* argv) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_init(argc, argv); + my_checkGlobalGdkDisplay(); + AutoBridgeGtk(my->g_type_class_ref, my->g_type_class_unref); +} + +EXPORT int my_gtk_init_check(x64emu_t* emu, void* argc, void* argv) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + int ret = my->gtk_init_check(argc, argv); + my_checkGlobalGdkDisplay(); + AutoBridgeGtk(my->g_type_class_ref, my->g_type_class_unref); + return ret; +} + +EXPORT int my_gtk_init_with_args(x64emu_t* emu, void* argc, void* argv, void* param, void* entries, void* trans, void* error) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + int ret = my->gtk_init_with_args(argc, argv, param, entries, trans, error); + my_checkGlobalGdkDisplay(); + AutoBridgeGtk(my->g_type_class_ref, my->g_type_class_unref); + return ret; +} + +EXPORT void my_gtk_menu_attach_to_widget(x64emu_t* emu, void* menu, void* widget, void* f) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_menu_attach_to_widget(menu, widget, findMenuDetachFct(f)); +} + +EXPORT void my_gtk_menu_popup(x64emu_t* emu, void* menu, void* shell, void* item, void* f, void* data, uint32_t button, uint32_t time_) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_menu_popup(menu, shell, item, findMenuPositionFct(f), data, button, time_); +} + +EXPORT uint32_t my_gtk_timeout_add(x64emu_t* emu, uint32_t interval, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_timeout_add(interval, findGtkFunctionFct(f), data); +} + +EXPORT int my_gtk_clipboard_set_with_data(x64emu_t* emu, void* clipboard, void* target, uint32_t n, void* f_get, void* f_clear, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_clipboard_set_with_data(clipboard, target, n, findClipboadGetFct(f_get), findClipboadClearFct(f_clear), data); +} + +EXPORT int my_gtk_clipboard_set_with_owner(x64emu_t* emu, void* clipboard, void* target, uint32_t n, void* f_get, void* f_clear, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_clipboard_set_with_owner(clipboard, target, n, findClipboadGetFct(f_get), findClipboadClearFct(f_clear), data); +} + +static void* my_translate_func(void* path, my_signal_t* sig) +{ + return (void*)RunFunction(my_context, sig->c_handler, 2, path, sig->data); +} + +EXPORT void my_gtk_stock_set_translate_func(x64emu_t* emu, void* domain, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my_signal_t *sig = new_mysignal(f, data, notify); + my->gtk_stock_set_translate_func(domain, my_translate_func, sig, my_signal_delete); +} + +EXPORT void my_gtk_container_forall(x64emu_t* emu, void* container, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_container_forall(container, findGtkCallbackFct(f), data); +} + +EXPORT void my_gtk_tree_view_set_search_equal_func(x64emu_t* emu, void* tree_view, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_tree_view_set_search_equal_func(tree_view, findGtkTreeViewSearchEqualFuncFct(f), data, findGDestroyNotifyFct(notify)); +} + +EXPORT int my_gtk_text_iter_backward_find_char(x64emu_t* emu, void* iter, void* f, void* data, void* limit) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_text_iter_backward_find_char(iter, findGtkTextCharPredicateFct(f), data, limit); +} + +EXPORT int my_gtk_text_iter_forward_find_char(x64emu_t* emu, void* iter, void* f, void* data, void* limit) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_text_iter_forward_find_char(iter, findGtkTextCharPredicateFct(f), data, limit); +} + +EXPORT void* my_gtk_toolbar_append_item(x64emu_t* emu, void* toolbar, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_append_item(toolbar, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data); +} + +EXPORT void* my_gtk_toolbar_prepend_item(x64emu_t* emu, void* toolbar, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_prepend_item(toolbar, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data); +} + +EXPORT void* my_gtk_toolbar_insert_item(x64emu_t* emu, void* toolbar, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data, int position) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_insert_item(toolbar, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data, position); +} + +EXPORT void* my_gtk_toolbar_append_element(x64emu_t* emu, void* toolbar, int type, void* widget, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_append_element(toolbar, type, widget, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data); +} + +EXPORT void* my_gtk_toolbar_prepend_element(x64emu_t* emu, void* toolbar, int type, void* widget, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_prepend_element(toolbar, type, widget, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data); +} + +EXPORT void* my_gtk_toolbar_insert_element(x64emu_t* emu, void* toolbar, int type, void* widget, void* text, void* tooltip_text, void* tooltip_private, void* icon, void* f, void* data, int position) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_insert_element(toolbar, type, widget, text, tooltip_text, tooltip_private, icon, findToolbarFct(f), data, position); +} + +EXPORT void* my_gtk_toolbar_insert_stock(x64emu_t* emu, void* toolbar, void* stock_id, void* tooltip_text, void* tooltip_private, void* f, void* data, int position) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_toolbar_insert_stock(toolbar, stock_id, tooltip_text, tooltip_private, findToolbarFct(f), data, position); +} + +EXPORT void my_gtk_tree_sortable_set_sort_func(x64emu_t* emu, void* sortable, int id, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_tree_sortable_set_sort_func(sortable, id, findGtkTreeIterCompareFuncFct(f), data, findGDestroyNotifyFct(notify)); +} + +EXPORT void my_gtk_tree_sortable_set_default_sort_func(x64emu_t* emu, void* sortable, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_tree_sortable_set_default_sort_func(sortable, findGtkTreeIterCompareFuncFct(f), data, findGDestroyNotifyFct(notify)); +} + +EXPORT int my_gtk_type_unique(x64emu_t* emu, int parent, my_GtkTypeInfo_t* gtkinfo) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_type_unique(parent, findFreeGtkTypeInfo(gtkinfo, parent)); +} + +EXPORT unsigned long my_gtk_signal_connect(x64emu_t* emu, void* object, void* name, void* func, void* data) +{ + return my_gtk_signal_connect_full(emu, object, name, func, NULL, data, NULL, 0, 0); +} + +EXPORT void my_gtk_object_set_data_full(x64emu_t* emu, void* object, void* key, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_object_set_data_full(object, key, data, findGDestroyNotifyFct(notify)); +} + +EXPORT float my_gtk_spin_button_get_value_as_float(x64emu_t* emu, void* spinner) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_spin_button_get_value(spinner); +} + +static int gtk1Type(gtkx112_my_t *my, int type) +{ + if (type==21) + return my->gtk_object_get_type(); + return type; // other changes needed? +} + +typedef struct dummy_gtk1_button_s { + int type; + int dummy[14]; + void* label; +} dummy_gtk1_button_t; + +EXPORT void* my_gtk_type_check_object_cast(x64emu_t* emu, void* obj, int type) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + if(my->gtk1 && type==my->gtk_bin_get_type()) + { + // check if obj is a button... + if(my->g_type_check_instance_cast(obj, my->gtk_button_get_type())) + { + // make some bad casting of button from gtkv2 to button from gtkv1, the "bin" sized changed, and is shorter now! + // shogo launcher acces label from button directly from the cast (+0x3c) + static dummy_gtk1_button_t dummy = {0}; + dummy.type = my->gtk_button_get_type(); + void **p = my->g_type_check_instance_cast(obj, my->gtk_bin_get_type()); + // style is 0x06 + dummy.label = p[0x11]; + return &dummy; + } + } + + return my->g_type_check_instance_cast(obj, gtk1Type(my, type)); +} + +EXPORT void my_gtk_builder_connect_signals_full(x64emu_t* emu, void* builder, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_builder_connect_signals_full(builder, findBuilderConnectFct(f), data); +} + +typedef struct my_GSList_s { + void* data; + struct my_GSList_s *next; +} my_GSList_t; + +static int regs_abi[] = {_DI, _SI, _DX, _CX, _R8, _R9}; +#define NEXT5(A, N) (N+5<6)?((void*)emu->regs[regs_abi[5+N]].q[0]):A[5+N-6] +EXPORT void my_gtk_binding_entry_add_signal(x64emu_t* emu, void* binding, uint32_t keyval, int mod, void* name, uint32_t n, void** st) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + if(!n) { + my->gtk_binding_entry_add_signal(binding, keyval, mod, name, 0); + return; + } + // build the list + my_GSList_t *list = calloc(n, sizeof(my_GSList_t)); + for(uint32_t i=0; i<n; ++i) { + list[i].data = NEXT5(st, i); + list[i].next = (i==(n-1))?NULL:&list[i+1]; + } + + my->gtk_binding_entry_add_signall(binding, keyval, mod, name, list); + + free(list); +} + +EXPORT void my_gtk_container_foreach(x64emu_t* emu, void* container, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_container_foreach(container, findGtkCallbackFct(f), data); +} + +EXPORT void my_gtk_cell_layout_set_cell_data_func(x64emu_t* emu, void* layout, void* cell, void* f, void* data, void* notify) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_cell_layout_set_cell_data_func(layout, cell, findGtkCellLayoutDataFuncFct(f), data, findGDestroyNotifyFct(notify)); +} + +typedef struct my_ConnectArgs_s +{ + gtkx112_my_t *my; + x64emu_t* emu; + void* module; + void* data; +} my_ConnectArgs_t; +// defined in wrappedgobject2.c +uintptr_t my_g_signal_connect_data(x64emu_t* emu, void* instance, void* detailed, void* c_handler, void* data, void* closure, uint32_t flags); + +static void my_gtk_builder_connect_signals_custom(void* builder, + void* object, + char* signal_name, + char* handler_name, + void* connect_object, + int flags, + my_ConnectArgs_t* args) +{ + /* Only error out for missing GModule support if we've not + * found the symbols explicitly added with gtk_builder_add_callback_symbol() + */ + void* func = NULL; + printf_log(LOG_DEBUG, "signal \"%s\" from \"%s\" connection, connect_object=%p\n", signal_name, handler_name, connect_object); + + uintptr_t offs = 0; + uintptr_t end = 0; + GetGlobalSymbolStartEnd(my_context->maplib, handler_name, &offs, &end, NULL, -1, NULL); + if(!offs) { + if (args->module == NULL) + args->my->g_log("Gtk", 1<<2 ,"gtk_builder_connect_signals() requires working GModule"); + if (!args->my->g_module_symbol(args->module, handler_name, (void*)&func)) + { + args->my->g_log("Gtk", 1<<4, "Could not find signal handler '%s'. Did you compile with -rdynamic?", handler_name); + return; + } + if (connect_object) + args->my->g_signal_connect_object(object, signal_name, func, connect_object, flags); + else + args->my->g_signal_connect_data(object, signal_name, func, args->data, NULL, flags); + } else { + if(connect_object) { + printf_log(LOG_NONE, "Error: connect custom signal to object unsupported\n"); + } else + my_g_signal_connect_data(args->emu, object, signal_name, (void*)offs, args->data, NULL, flags); + } +} + +EXPORT void my_gtk_builder_connect_signals(x64emu_t* emu, void* builder, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my_ConnectArgs_t args; + + args.my = my; + args.emu = emu; + args.data = data; + if (my->g_module_supported()) + args.module = my->g_module_open(NULL, 1); + my->gtk_builder_connect_signals_full(builder, my_gtk_builder_connect_signals_custom, &args); + if (args.module) + my->g_module_close(args.module); +} + +typedef struct my_GtkActionEntry_s { + const char* name; + const char* stock_id; + const char* label; + const char* accelerator; + const char* tooltip; + void* callback; +} my_GtkActionEntry_t; + +EXPORT void my_gtk_action_group_add_actions(x64emu_t* emu, void* action_group, my_GtkActionEntry_t* entries, uint32_t n, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my_GtkActionEntry_t myentries[n]; + memcpy(myentries, entries, n*sizeof(my_GtkActionEntry_t)); + for(uint32_t i=0; i<n; ++i) + myentries[i].callback = findGtkCallbackFct(entries[i].callback); + my->gtk_action_group_add_actions(action_group, myentries, n, data); +} + +EXPORT void my_gtk_action_group_add_actions_full(x64emu_t* emu, void* action_group, my_GtkActionEntry_t* entries, uint32_t n, void* data, void* destroy) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my_GtkActionEntry_t myentries[n]; + memcpy(myentries, entries, n*sizeof(my_GtkActionEntry_t)); + for(uint32_t i=0; i<n; ++i) + myentries[i].callback = findGtkCallbackFct(entries[i].callback); + my->gtk_action_group_add_actions_full(action_group, myentries, n, data, findGDestroyNotifyFct(destroy)); +} + +EXPORT void my_gtk_tree_model_foreach(x64emu_t* emu, void* model, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_tree_model_foreach(model, findGtkTreeModelForeachFuncFct(f), data); +} + +EXPORT void my_gtk_clipboard_request_contents(x64emu_t* emu, void* clipboard, void* target, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_clipboard_request_contents(clipboard, target, findGtkClipboardReceivedFuncFct(f), data); +} + + +EXPORT void my_gtk_clipboard_request_text(x64emu_t* emu, void* clipboard, void* f, void* data) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + my->gtk_clipboard_request_text(clipboard, findGtkClipboardTextReceivedFuncFct(f), data); +} + +EXPORT uint32_t my_gtk_input_add_full(x64emu_t* emu, int source, int condition, void* func, void* marshal, void* data, void* destroy) +{ + library_t * lib = GetLibInternal(libname); + gtkx112_my_t *my = (gtkx112_my_t*)lib->priv.w.p2; + + return my->gtk_input_add_full(source, condition, findGdkInputFunctionFct(func), findGtkCallbackMarshalFct(marshal), data, findGDestroyNotifyFct(destroy)); +} + +#define PRE_INIT \ + if(box64_nogtk) \ + return -1; + +#define CUSTOM_INIT \ + libname = lib->name; \ + lib->priv.w.p2 = getGtkx112My(lib); \ + SetGtkObjectID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_object_get_type()); \ + SetGtkWidgetID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_widget_get_type()); \ + SetGtkContainerID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_container_get_type());\ + SetGtkActionID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_action_get_type()); \ + SetGtkMiscID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_misc_get_type()); \ + SetGtkLabelID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_label_get_type()); \ + SetGtkTreeViewID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_tree_view_get_type());\ + SetGtkBinID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_bin_get_type()); \ + SetGtkWindowID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_window_get_type()); \ + SetGtkTableID(((gtkx112_my_t*)lib->priv.w.p2)->gtk_table_get_type()); \ + lib->priv.w.needed = 2; \ + lib->priv.w.neededlibs = (char**)calloc(lib->priv.w.needed, sizeof(char*)); \ + lib->priv.w.neededlibs[0] = strdup("libgdk-x11-2.0.so.0"); \ + lib->priv.w.neededlibs[1] = strdup("libpangocairo-1.0.so.0"); + +#define CUSTOM_FINI \ + freeGtkx112My(lib->priv.w.p2); \ + free(lib->priv.w.p2); + +#include "wrappedlib_init.h" diff --git a/src/wrapped/wrappedgtkx112_private.h b/src/wrapped/wrappedgtkx112_private.h new file mode 100755 index 00000000..74ef3a54 --- /dev/null +++ b/src/wrapped/wrappedgtkx112_private.h @@ -0,0 +1,3936 @@ +#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA)) +#error meh! +#endif + +//GO(gtk_about_dialog_get_artists, +//GO(gtk_about_dialog_get_authors, +//GO(gtk_about_dialog_get_comments, +//GO(gtk_about_dialog_get_copyright, +//GO(gtk_about_dialog_get_documenters, +//GO(gtk_about_dialog_get_license, +//GO(gtk_about_dialog_get_logo, +//GO(gtk_about_dialog_get_logo_icon_name, +//GO(gtk_about_dialog_get_name, +//GO(gtk_about_dialog_get_program_name, +//GO(gtk_about_dialog_get_translator_credits, +GO(gtk_about_dialog_get_type, iFv) +//GO(gtk_about_dialog_get_version, +//GO(gtk_about_dialog_get_website, +//GO(gtk_about_dialog_get_website_label, +//GO(gtk_about_dialog_get_wrap_license, +//GO(gtk_about_dialog_new, +//GO(gtk_about_dialog_set_artists, +//GO(gtk_about_dialog_set_authors, +//GO(gtk_about_dialog_set_comments, +//GO(gtk_about_dialog_set_copyright, +//GO(gtk_about_dialog_set_documenters, +//GO(gtk_about_dialog_set_email_hook, +//GO(gtk_about_dialog_set_license, +//GO(gtk_about_dialog_set_logo, +//GO(gtk_about_dialog_set_logo_icon_name, +//GO(gtk_about_dialog_set_name, +//GO(gtk_about_dialog_set_program_name, +//GO(gtk_about_dialog_set_translator_credits, +//GO(gtk_about_dialog_set_url_hook, +//GO(gtk_about_dialog_set_version, +//GO(gtk_about_dialog_set_website, +//GO(gtk_about_dialog_set_website_label, +//GO(gtk_about_dialog_set_wrap_license, +GO(gtk_accelerator_get_default_mod_mask, uFv) +GO(gtk_accelerator_get_label, pFui) +GO(gtk_accelerator_name, pFui) +GO(gtk_accelerator_parse, vFppp) +GO(gtk_accelerator_set_default_mod_mask, vFu) +GO(gtk_accelerator_valid, iFui) +GO(gtk_accel_flags_get_type, iFv) +GO(gtk_accel_group_activate, iFpppui) +GO(gtk_accel_group_connect, vFpuiip) // Closure probably needs wrapping when not null +GO(gtk_accel_group_connect_by_path, vFppp) +GO(gtk_accel_group_disconnect, iFpp) +GO(gtk_accel_group_disconnect_key, iFpui) +//GOM(gtk_accel_group_find, pFEppp) +GO(gtk_accel_group_from_accel_closure, pFp) +GO(gtk_accel_group_get_is_locked, iFp) +GO(gtk_accel_group_get_modifier_mask, iFp) +GO(gtk_accel_group_get_type, iFv) +GO(gtk_accel_group_lock, vFp) +GO(gtk_accel_group_new, pFv) +GO(gtk_accel_group_query, pFpuip) +GO(gtk_accel_groups_activate, iFpui) +GO(gtk_accel_groups_from_object, pFp) +GO(gtk_accel_group_unlock, vFp) +//GO(gtk_accel_label_get_accel_widget, +//GO(gtk_accel_label_get_accel_width, +GO(gtk_accel_label_get_type, iFv) +//GO(gtk_accel_label_new, +//GO(gtk_accel_label_refetch, +//GO(gtk_accel_label_set_accel_closure, +//GO(gtk_accel_label_set_accel_widget, +//GO(gtk_accel_map_add_entry, +//GO(gtk_accel_map_add_filter, +//GO(gtk_accel_map_change_entry, +//GO(gtk_accel_map_foreach, +//GO(gtk_accel_map_foreach_unfiltered, +//GO(gtk_accel_map_get, +GO(gtk_accel_map_get_type, iFv) +//GO(gtk_accel_map_load, +//GO(gtk_accel_map_load_fd, +//GO(gtk_accel_map_load_scanner, +//GO(gtk_accel_map_lock_path, +//GO(gtk_accel_map_lookup_entry, +//GO(gtk_accel_map_save, +//GO(gtk_accel_map_save_fd, +//GO(gtk_accel_map_unlock_path, +//GO(gtk_accessible_connect_widget_destroyed, +GO(gtk_accessible_get_type, iFv) +//GO(gtk_accessible_get_widget, +//GO(gtk_accessible_set_widget, +GO(gtk_action_activate, vFp) +GO(gtk_action_block_activate, vFp) +GO(gtk_action_block_activate_from, vFpp) +GO(gtk_action_connect_accelerator, vFp) +GO(gtk_action_connect_proxy, vFpp) +GO(gtk_action_create_icon, pFpi) +GO(gtk_action_create_menu, pFp) +GO(gtk_action_create_menu_item, pFp) +GO(gtk_action_create_tool_item, pFp) +GO(gtk_action_disconnect_accelerator, vFp) +GO(gtk_action_disconnect_proxy, vFpp) +GO(gtk_action_get_accel_closure, pFp) +GO(gtk_action_get_accel_path, pFp) +GO(gtk_action_get_always_show_image, iFp) +GO(gtk_action_get_gicon, pFp) +GO(gtk_action_get_icon_name, pFp) +GO(gtk_action_get_is_important, iFp) +GO(gtk_action_get_label, pFp) +GO(gtk_action_get_name, pFp) +GO(gtk_action_get_proxies, pFp) +GO(gtk_action_get_sensitive, iFp) +GO(gtk_action_get_short_label, pFp) +GO(gtk_action_get_stock_id, pFp) +GO(gtk_action_get_tooltip, pFp) +GO(gtk_action_get_type, iFv) +GO(gtk_action_get_visible, iFp) +GO(gtk_action_get_visible_horizontal, iFp) +GO(gtk_action_get_visible_vertical, iFp) +GO(gtk_action_group_add_action, vFpp) +GOM(gtk_action_group_add_actions, vFEppup) +GOM(gtk_action_group_add_actions_full, vFEppupp) +GO(gtk_action_group_add_action_with_accel, vFppp) +//GOM(gtk_action_group_add_radio_actions, vFppuiBp) +//GOM(gtk_action_group_add_radio_actions_full, vFppuiBpB) +GO(gtk_action_group_add_toggle_actions, vFppup) +//GOM(gtk_action_group_add_toggle_actions_full, vFEppupB) +GO(gtk_action_group_get_action, pFpp) +GO(gtk_action_group_get_name, pFp) +GO(gtk_action_group_get_sensitive, iFp) +GO(gtk_action_group_get_type, iFv) +GO(gtk_action_group_get_visible, iFp) +GO(gtk_action_group_list_actions, pFp) +GO(gtk_action_group_new, pFp) +GO(gtk_action_group_remove_action, vFpp) +GO(gtk_action_group_set_sensitive, vFpi) +//GOM(gtk_action_group_set_translate_func, vFEpBpB) +GO(gtk_action_group_set_translation_domain, vFpp) +GO(gtk_action_group_set_visible, vFpi) +GO(gtk_action_group_translate_string, pFpp) +GO(gtk_action_is_sensitive, iFp) +GO(gtk_action_is_visible, iFp) +GO(gtk_action_new, pFpppp) +GO(gtk_action_set_accel_group, vFpp) +GO(gtk_action_set_accel_path, vFpp) +GO(gtk_action_set_always_show_image, vFpi) +GO(gtk_action_set_gicon, vFpp) +GO(gtk_action_set_icon_name, vFpp) +GO(gtk_action_set_is_important, vFpi) +GO(gtk_action_set_label, vFpp) +GO(gtk_action_set_sensitive, vFpi) +GO(gtk_action_set_short_label, vFpp) +GO(gtk_action_set_stock_id, vFpp) +GO(gtk_action_set_tooltip, vFpp) +GO(gtk_action_set_visible, vFpi) +GO(gtk_action_set_visible_horizontal, vFpi) +GO(gtk_action_set_visible_vertical, vFpi) +GO(gtk_action_unblock_activate, vFp) +GO(gtk_action_unblock_activate_from, vFpp) +//GO(gtk_activatable_do_set_related_action, +//GO(gtk_activatable_get_related_action, +GO(gtk_activatable_get_type, iFv) +//GO(gtk_activatable_get_use_action_appearance, +//GO(gtk_activatable_set_related_action, +//GO(gtk_activatable_set_use_action_appearance, +//GO(gtk_activatable_sync_action_properties, +GO(gtk_adjustment_changed, vFp) +GO(gtk_adjustment_clamp_page, vFpdd) +GO(gtk_adjustment_configure, vFpdddddd) +GO(gtk_adjustment_get_lower, dFp) +GO(gtk_adjustment_get_page_increment, dFp) +GO(gtk_adjustment_get_page_size, dFp) +GO(gtk_adjustment_get_step_increment, dFp) +GO(gtk_adjustment_get_type, iFv) +GO(gtk_adjustment_get_upper, dFp) +GO(gtk_adjustment_get_value, dFp) +GO(gtk_adjustment_new, pFdddddd) +GO(gtk_adjustment_set_lower, vFpd) +GO(gtk_adjustment_set_page_increment, vFp) +GO(gtk_adjustment_set_page_size, vFpd) +GO(gtk_adjustment_set_step_increment, vFpd) +GO(gtk_adjustment_set_upper, vFpd) +GO(gtk_adjustment_set_value, vFpd) +GO(gtk_adjustment_value_changed, vFp) +GO(gtk_alignment_get_padding, vFppppp) +GO(gtk_alignment_get_type, iFv) +GO(gtk_alignment_new, pFffff) +GO(gtk_alignment_set, vFpffff) +GO(gtk_alignment_set_padding, vFpuuuu) +GO(gtk_alternative_dialog_button_order, iFp) +GO(gtk_anchor_type_get_type, iFv) +GO(gtk_arg_flags_get_type, iFv) +GO(gtk_arrow_get_type, iFv) +GO(gtk_arrow_new, pFii) +GO(gtk_arrow_placement_get_type, iFv) +GO(gtk_arrow_set, vFpii) +GO(gtk_arrow_type_get_type, iFv) +GO(gtk_aspect_frame_get_type, iFv) +//GO(gtk_aspect_frame_new, +//GO(gtk_aspect_frame_set, +//GO(gtk_assistant_add_action_widget, +//GO(gtk_assistant_append_page, +//GO(gtk_assistant_commit, +//GO(gtk_assistant_get_current_page, +//GO(gtk_assistant_get_n_pages, +//GO(gtk_assistant_get_nth_page, +//GO(gtk_assistant_get_page_complete, +//GO(gtk_assistant_get_page_header_image, +//GO(gtk_assistant_get_page_side_image, +//GO(gtk_assistant_get_page_title, +//GO(gtk_assistant_get_page_type, +GO(gtk_assistant_get_type, iFv) +//GO(gtk_assistant_insert_page, +//GO(gtk_assistant_new, +GO(gtk_assistant_page_type_get_type, iFv) +//GO(gtk_assistant_prepend_page, +//GO(gtk_assistant_remove_action_widget, +//GO(gtk_assistant_set_current_page, +//GO(gtk_assistant_set_forward_page_func, +//GO(gtk_assistant_set_page_complete, +//GO(gtk_assistant_set_page_header_image, +//GO(gtk_assistant_set_page_side_image, +//GO(gtk_assistant_set_page_title, +//GO(gtk_assistant_set_page_type, +//GO(gtk_assistant_update_buttons_state, +GO(gtk_attach_options_get_type, iFv) +GOM(gtk_binding_entry_add_signal, vFEpuipuV) //vaarg +GO(gtk_binding_entry_add_signall, vFpuipp) +GO(gtk_binding_entry_clear, vFpui) +GO(gtk_binding_entry_remove, vFpui) +GO(gtk_binding_entry_skip, vFpui) +GO(gtk_binding_parse_binding, uFp) +GO(gtk_bindings_activate, iFpui) +GO(gtk_bindings_activate_event, iFpp) +GO(gtk_binding_set_activate, iFpuip) +GO(gtk_binding_set_add_path, vFpipi) +GO(gtk_binding_set_by_class, pFp) +GO(gtk_binding_set_find, pFp) +GO(gtk_binding_set_new, pFp) +GO(gtk_bin_get_child, pFp) +GO(gtk_bin_get_type, iFv) +GO(gtk_border_copy, pFp) +GO(gtk_border_free, vFp) +GO(gtk_border_get_type, iFv) +GO(gtk_border_new, pFv) +GO(gtk_box_get_homogeneous, iFp) +GO(gtk_box_get_spacing, iFp) +GO(gtk_box_get_type, iFv) +GO(gtk_box_pack_end, vFppiiu) +GO(gtk_box_pack_end_defaults, vFpp) +GO(gtk_box_pack_start, vFppiiu) +GO(gtk_box_pack_start_defaults, vFpp) +GO(gtk_box_query_child_packing, vFpppppp) +GO(gtk_box_reorder_child, vFppi) +GO(gtk_box_set_child_packing, vFppiiui) +GO(gtk_box_set_homogeneous, vFpi) +GO(gtk_box_set_spacing, vFpi) +GO(gtk_buildable_add_child, vFpppp) +GO(gtk_buildable_construct_child, pFppp) +GO(gtk_buildable_custom_finished, vFppppp) +GO(gtk_buildable_custom_tag_end, vFppppp) +GO(gtk_buildable_custom_tag_start, iFpppppp) +GO(gtk_buildable_get_internal_child, pFppp) +GO(gtk_buildable_get_name, pFp) +GO(gtk_buildable_get_type, iFv) +GO(gtk_buildable_parser_finished, vFpp) +GO(gtk_buildable_set_buildable_property, vFpppp) +GO(gtk_buildable_set_name, vFpp) +GO(gtk_builder_add_from_file, uFppp) +GO(gtk_builder_add_from_string, iFppLp) +GO(gtk_builder_add_objects_from_file, uFpppp) +GO(gtk_builder_add_objects_from_string, uFppLpp) +GOM(gtk_builder_connect_signals, vFEpp) +GOM(gtk_builder_connect_signals_full, vFEppp) +GO(gtk_builder_error_get_type, iFv) +GO(gtk_builder_error_quark, pFv) +GO(gtk_builder_get_object, pFpp) +GO(gtk_builder_get_objects, pFp) +GO(gtk_builder_get_translation_domain, pFp) +GO(gtk_builder_get_type, iFv) +GO(gtk_builder_get_type_from_name, iFpp) +GO(gtk_builder_new, pFv) +GO(gtk_builder_set_translation_domain, vFpp) +GO(gtk_builder_value_from_string, iFppppp) +GO(gtk_builder_value_from_string_type, iFpippp) +GO(gtk_button_action_get_type, iFv) +GO(gtk_button_box_get_child_ipadding, vFppp) +GO(gtk_button_box_get_child_secondary, iFpp) +GO(gtk_button_box_get_child_size, vFppp) +GO(gtk_button_box_get_layout, iFp) +GO(gtk_button_box_get_type, iFv) +GO(gtk_button_box_set_child_ipadding, vFpii) +GO(gtk_button_box_set_child_secondary, vFppi) +GO(gtk_button_box_set_child_size, vFpii) +GO(gtk_button_box_set_layout, vFpi) +GO(gtk_button_box_style_get_type, iFv) +//GO(gtk_button_clicked, +//GO(gtk_button_enter, +GO(gtk_button_get_alignment, vFppp) +GO(gtk_button_get_event_window, pFp) +GO(gtk_button_get_focus_on_click, iFp) +GO(gtk_button_get_image, pFp) +GO(gtk_button_get_image_position, iFp) +GO(gtk_button_get_label, pFp) +GO(gtk_button_get_relief, iFp) +GO(gtk_button_get_type, iFv) +GO(gtk_button_get_use_stock, iFp) +GO(gtk_button_get_use_underline, iFp) +GO(gtk_button_leave, vFp) +GO(gtk_button_new, pFv) +GO(gtk_button_new_from_stock, pFp) +GO(gtk_button_new_with_label, pFp) +GO(gtk_button_new_with_mnemonic, pFp) +GO(gtk_button_pressed, vFp) +GO(gtk_button_released, vFp) +GO(gtk_button_set_alignment, vFpff) +GO(gtk_button_set_focus_on_click, vFpi) +GO(gtk_button_set_image, vFpp) +GO(gtk_button_set_image_position, vFpi) +GO(gtk_button_set_label, vFpp) +GO(gtk_button_set_relief, vFpi) +GO(gtk_button_set_use_stock, vFpi) +GO(gtk_button_set_use_underline, vFpi) +GO(gtk_buttons_type_get_type, iFv) +//GO(gtk_calendar_clear_marks, +//GO(gtk_calendar_display_options, +GO(gtk_calendar_display_options_get_type, iFv) +//GO(gtk_calendar_freeze, +//GO(gtk_calendar_get_date, +//GO(gtk_calendar_get_detail_height_rows, +//GO(gtk_calendar_get_detail_width_chars, +//GO(gtk_calendar_get_display_options, +GO(gtk_calendar_get_type, iFv) +//GO(gtk_calendar_mark_day, +//GO(gtk_calendar_new, +//GO(gtk_calendar_select_day, +//GO(gtk_calendar_select_month, +//GO(gtk_calendar_set_detail_func, +//GO(gtk_calendar_set_detail_height_rows, +//GO(gtk_calendar_set_detail_width_chars, +//GO(gtk_calendar_set_display_options, +//GO(gtk_calendar_thaw, +//GO(gtk_calendar_unmark_day, +//GO(gtk_cell_editable_editing_done, +GO(gtk_cell_editable_get_type, iFv) +//GO(gtk_cell_editable_remove_widget, +//GO(gtk_cell_editable_start_editing, +GO(gtk_cell_layout_add_attribute, vFpppi) +GO(gtk_cell_layout_clear, vFp) +GO(gtk_cell_layout_clear_attributes, vFpp) +GO(gtk_cell_layout_get_cells, pFp) +GO(gtk_cell_layout_get_type, iFv) +GO(gtk_cell_layout_pack_end, vFppi) +GO(gtk_cell_layout_pack_start, vFppi) +GO(gtk_cell_layout_reorder, vFppi) +//GO(gtk_cell_layout_set_attributes, vFpppppppppp) // vaarg +GOM(gtk_cell_layout_set_cell_data_func, vFEppppp) +GO(gtk_cell_renderer_accel_get_type, iFv) +GO(gtk_cell_renderer_accel_mode_get_type, iFv) +GO(gtk_cell_renderer_accel_new, pFv) +GO(gtk_cell_renderer_activate, iFppppppi) +GO(gtk_cell_renderer_combo_get_type, iFv) +GO(gtk_cell_renderer_combo_new, pFv) +GO(gtk_cell_renderer_editing_canceled, vFp) +GO(gtk_cell_renderer_get_alignment, vFppp) +GO(gtk_cell_renderer_get_fixed_size, vFppp) +GO(gtk_cell_renderer_get_padding, vFppp) +GO(gtk_cell_renderer_get_sensitive, iFp) +GO(gtk_cell_renderer_get_size, vFppppppp) +GO(gtk_cell_renderer_get_type, iFv) +GO(gtk_cell_renderer_get_visible, iFp) +GO(gtk_cell_renderer_mode_get_type, iFv) +GO(gtk_cell_renderer_pixbuf_get_type, iFv) +GO(gtk_cell_renderer_pixbuf_new, pFv) +GO(gtk_cell_renderer_progress_get_type, iFv) +GO(gtk_cell_renderer_progress_new, pFv) +GO(gtk_cell_renderer_render, vFppppppi) +GO(gtk_cell_renderer_set_alignment, vFpff) +GO(gtk_cell_renderer_set_fixed_size, vFpii) +GO(gtk_cell_renderer_set_padding, vFpii) +GO(gtk_cell_renderer_set_sensitive, vFpi) +GO(gtk_cell_renderer_set_visible, vFpi) +GO(gtk_cell_renderer_spin_get_type, iFv) +GO(gtk_cell_renderer_spinner_get_type, iFv) +GO(gtk_cell_renderer_spinner_new, pFv) +GO(gtk_cell_renderer_spin_new, pFv) +GO(gtk_cell_renderer_start_editing, pFppppppi) +GO(gtk_cell_renderer_state_get_type, iFv) +GO(gtk_cell_renderer_stop_editing, vFpi) +GO(gtk_cell_renderer_text_get_type, iFv) +GO(gtk_cell_renderer_text_new, pFv) +GO(gtk_cell_renderer_text_set_fixed_height_from_font, vFpi) +GO(gtk_cell_renderer_toggle_get_activatable, iFp) +GO(gtk_cell_renderer_toggle_get_active, iFp) +GO(gtk_cell_renderer_toggle_get_radio, iFp) +GO(gtk_cell_renderer_toggle_get_type, iFv) +GO(gtk_cell_renderer_toggle_new, pFv) +GO(gtk_cell_renderer_toggle_set_activatable, vFpi) +GO(gtk_cell_renderer_toggle_set_active, vFpi) +GO(gtk_cell_renderer_toggle_set_radio, vFpi) +GO(gtk_cell_type_get_type, iFv) +//GO(gtk_cell_view_get_cell_renderers, +//GO(gtk_cell_view_get_displayed_row, +//GO(gtk_cell_view_get_model, +//GO(gtk_cell_view_get_size_of_row, +GO(gtk_cell_view_get_type, iFv) +//GO(gtk_cell_view_new, +//GO(gtk_cell_view_new_with_markup, +//GO(gtk_cell_view_new_with_pixbuf, +//GO(gtk_cell_view_new_with_text, +//GO(gtk_cell_view_set_background_color, +//GO(gtk_cell_view_set_displayed_row, +//GO(gtk_cell_view_set_model, +GO(gtk_check_button_get_type, iFv) +GO(gtk_check_button_new, pFv) +GO(gtk_check_button_new_with_label, pFp) +GO(gtk_check_button_new_with_mnemonic, pFp) +GO(gtk_check_menu_item_get_active, iFp) +GO(gtk_check_menu_item_get_draw_as_radio, iFp) +GO(gtk_check_menu_item_get_inconsistent, iFp) +GO(gtk_check_menu_item_get_type, iFv) +GO(gtk_check_menu_item_new, pFv) +GO(gtk_check_menu_item_new_with_label, pFp) +GO(gtk_check_menu_item_new_with_mnemonic, pFp) +GO(gtk_check_menu_item_set_active, vFpi) +GO(gtk_check_menu_item_set_draw_as_radio, vFpi) +GO(gtk_check_menu_item_set_inconsistent, vFpi) +GO(gtk_check_menu_item_set_show_toggle, vFpi) +GO(gtk_check_menu_item_toggled, vFp) +GO(gtk_check_version, pFuuu) +GO(gtk_clipboard_clear, vFp) +GO(gtk_clipboard_get, pFp) +GO(gtk_clipboard_get_display, pFp) +GO(gtk_clipboard_get_for_display, pFpp) +GO(gtk_clipboard_get_owner, pFp) +GO(gtk_clipboard_get_type, iFv) +GOM(gtk_clipboard_request_contents, vFEpppp) +//GOM(gtk_clipboard_request_image, vFEppp) +//GOM(gtk_clipboard_request_rich_text, vFEpppp) +//GOM(gtk_clipboard_request_targets, vFEppp) +GOM(gtk_clipboard_request_text, vFEppp) +//GOM(gtk_clipboard_request_uris, vFEppp) +GO(gtk_clipboard_set_can_store, vFppp) +GO(gtk_clipboard_set_image, vFpp) +GO(gtk_clipboard_set_text, vFppi) +GOM(gtk_clipboard_set_with_data, iFEppuppp) +GOM(gtk_clipboard_set_with_owner, iFEppuppp) +GO(gtk_clipboard_store, vFp) +GO(gtk_clipboard_wait_for_contents, pFpp) +GO(gtk_clipboard_wait_for_image, pFp) +GO(gtk_clipboard_wait_for_rich_text, pFpppp) +GO(gtk_clipboard_wait_for_targets, iFppp) +GO(gtk_clipboard_wait_for_text, pFp) +GO(gtk_clipboard_wait_for_uris, pFp) +GO(gtk_clipboard_wait_is_image_available, iFp) +GO(gtk_clipboard_wait_is_rich_text_available, iFpp) +GO(gtk_clipboard_wait_is_target_available, iFpp) +GO(gtk_clipboard_wait_is_text_available, iFp) +GO(gtk_clipboard_wait_is_uris_available, iFp) +GO(gtk_clist_append, iFpp) +GO(gtk_clist_clear, vFp) +GO(gtk_clist_columns_autosize, iFp) +GO(gtk_clist_column_title_active, vFpi) +GO(gtk_clist_column_title_passive, vFpi) +GO(gtk_clist_column_titles_active, vFp) +GO(gtk_clist_column_titles_hide, vFp) +GO(gtk_clist_column_titles_passive, vFp) +GO(gtk_clist_column_titles_show, vFp) +GO(gtk_clist_drag_pos_get_type, iFv) +GO(gtk_clist_find_row_from_data, iFpp) +GO(gtk_clist_freeze, vFp) +GO(gtk_clist_get_cell_style, pFpii) +GO(gtk_clist_get_cell_type, iFpii) +GO(gtk_clist_get_column_title, pFpi) +GO(gtk_clist_get_column_widget, pFpi) +GO(gtk_clist_get_hadjustment, pFp) +GO(gtk_clist_get_pixmap, iFpiipp) +GO(gtk_clist_get_pixtext, iFpiipppp) +GO(gtk_clist_get_row_data, pFpi) +GO(gtk_clist_get_row_style, pFpi) +GO(gtk_clist_get_selectable, iFpi) +GO(gtk_clist_get_selection_info, iFpiipp) +GO(gtk_clist_get_text, iFpiip) +GO(gtk_clist_get_type, iFv) +GO(gtk_clist_get_vadjustment, pFp) +GO(gtk_clist_insert, iFpip) +GO(gtk_clist_moveto, vFpiiff) +GO(gtk_clist_new, pFi) +GO(gtk_clist_new_with_titles, pFip) +GO(gtk_clist_optimal_column_width, iFpi) +GO(gtk_clist_prepend, iFpp) +GO(gtk_clist_remove, vFpi) +GO(gtk_clist_row_is_visible, iFpi) +GO(gtk_clist_row_move, vFpii) +GO(gtk_clist_select_all, vFp) +GO(gtk_clist_select_row, vFpii) +GO(gtk_clist_set_auto_sort, vFpi) +GO(gtk_clist_set_background, vFpip) +GO(gtk_clist_set_button_actions, vFpiC) +GO(gtk_clist_set_cell_style, vFpiip) +GO(gtk_clist_set_column_auto_resize, iFpi) +GO(gtk_clist_set_column_justification, vFpii) +GO(gtk_clist_set_column_max_width, vFpii) +GO(gtk_clist_set_column_min_width, vFpii) +GO(gtk_clist_set_column_resizeable, vFpii) +GO(gtk_clist_set_column_title, vFpip) +GO(gtk_clist_set_column_visibility, vFpii) +GO(gtk_clist_set_column_widget, vFpip) +GO(gtk_clist_set_column_width, vFpii) +//GOM(gtk_clist_set_compare_func, vFEpp) +GO(gtk_clist_set_foreground, vFpip) +GO(gtk_clist_set_hadjustment, vFpp) +GO(gtk_clist_set_pixmap, vFpiipp) +GO(gtk_clist_set_pixtext, vFpiipCpp) +GO(gtk_clist_set_reorderable, vFpi) +GO(gtk_clist_set_row_data, vFpip) +//GOM(gtk_clist_set_row_data_full, vFpipp) +GO(gtk_clist_set_row_height, vFpu) +GO(gtk_clist_set_row_style, vFpip) +GO(gtk_clist_set_selectable, vFpii) +GO(gtk_clist_set_selection_mode, vFpi) +GO(gtk_clist_set_shadow_type, vFpi) +GO(gtk_clist_set_shift, vFpiiii) +GO(gtk_clist_set_sort_column, vFpi) +GO(gtk_clist_set_sort_type, vFpi) +GO(gtk_clist_set_text, vFpiip) +GO(gtk_clist_set_use_drag_icons, vFpi) +GO(gtk_clist_set_vadjustment, vFpp) +GO(gtk_clist_sort, vFp) +GO(gtk_clist_swap_rows, vFpii) +GO(gtk_clist_thaw, vFp) +GO(gtk_clist_undo_selection, vFp) +GO(gtk_clist_unselect_all, vFp) +GO(gtk_clist_unselect_row, vFpii) +GO(gtk_color_button_get_alpha, WFp) +GO(gtk_color_button_get_color, vFpp) +GO(gtk_color_button_get_title, pFp) +GO(gtk_color_button_get_type, iFv) +GO(gtk_color_button_get_use_alpha, iFp) +GO(gtk_color_button_new, pFv) +GO(gtk_color_button_new_with_color, pFp) +GO(gtk_color_button_set_alpha, vFpW) +GO(gtk_color_button_set_color, vFpp) +GO(gtk_color_button_set_title, vFpp) +GO(gtk_color_button_set_use_alpha, vFpi) +GO(gtk_color_selection_dialog_get_color_selection, pFp) +GO(gtk_color_selection_dialog_get_type, iFv) +GO(gtk_color_selection_dialog_new, pFp) +GO(gtk_color_selection_get_color, vFpp) +GO(gtk_color_selection_get_current_alpha, WFp) +GO(gtk_color_selection_get_current_color, vFpp) +GO(gtk_color_selection_get_has_opacity_control, iFp) +GO(gtk_color_selection_get_has_palette, iFp) +GO(gtk_color_selection_get_previous_alpha, WFp) +GO(gtk_color_selection_get_previous_color, vFpp) +GO(gtk_color_selection_get_type, iFv) +GO(gtk_color_selection_is_adjusting, iFp) +GO(gtk_color_selection_new, pFv) +GO(gtk_color_selection_palette_from_string, iFppp) +GO(gtk_color_selection_palette_to_string, pFpi) +//GOM(gtk_color_selection_set_change_palette_hook, pFEp) +//GOM(gtk_color_selection_set_change_palette_with_screen_hook, pFEp) +GO(gtk_color_selection_set_color, vFpp) +GO(gtk_color_selection_set_current_alpha, vFpW) +GO(gtk_color_selection_set_current_color, vFpp) +GO(gtk_color_selection_set_has_opacity_control, vFpi) +GO(gtk_color_selection_set_has_palette, vFpi) +GO(gtk_color_selection_set_previous_alpha, vFpW) +GO(gtk_color_selection_set_previous_color, vFpp) +GO(gtk_color_selection_set_update_policy, vFpi) +GO(gtk_combo_box_append_text, vFpp) +GO(gtk_combo_box_entry_get_text_column, iFp) +GO(gtk_combo_box_entry_get_type, iFv) +GO(gtk_combo_box_entry_new, pFv) +GO(gtk_combo_box_entry_new_text, pFv) +GO(gtk_combo_box_entry_new_with_model, pFpi) +GO(gtk_combo_box_entry_set_text_column, vFpi) +GO(gtk_combo_box_get_active, iFp) +GO(gtk_combo_box_get_active_iter, iFpp) +GO(gtk_combo_box_get_active_text, pFp) +GO(gtk_combo_box_get_add_tearoffs, iFp) +GO(gtk_combo_box_get_button_sensitivity, iFp) +GO(gtk_combo_box_get_column_span_column, iFp) +GO(gtk_combo_box_get_entry_text_column, iFp) +GO(gtk_combo_box_get_focus_on_click, iFp) +GO(gtk_combo_box_get_has_entry, iFp) +GO(gtk_combo_box_get_model, pFp) +GO(gtk_combo_box_get_popup_accessible, pFp) +//GOM(gtk_combo_box_get_row_separator_func, pFEp) +GO(gtk_combo_box_get_row_span_column, iFp) +GO(gtk_combo_box_get_title, pFp) +GO(gtk_combo_box_get_type, iFv) +GO(gtk_combo_box_get_wrap_width, iFp) +GO(gtk_combo_box_insert_text, vFpip) +GO(gtk_combo_box_new, pFv) +GO(gtk_combo_box_new_text, pFv) +GO(gtk_combo_box_new_with_entry, pFv) +GO(gtk_combo_box_new_with_model, pFp) +GO(gtk_combo_box_new_with_model_and_entry, pFp) +GO(gtk_combo_box_popdown, vFp) +GO(gtk_combo_box_popup, vFp) +GO(gtk_combo_box_prepend_text, vFpp) +GO(gtk_combo_box_remove_text, vFpi) +GO(gtk_combo_box_set_active, vFpi) +GO(gtk_combo_box_set_active_iter, vFpp) +GO(gtk_combo_box_set_add_tearoffs, vFpi) +GO(gtk_combo_box_set_button_sensitivity, vFpi) +GO(gtk_combo_box_set_column_span_column, vFpi) +GO(gtk_combo_box_set_entry_text_column, vFpi) +GO(gtk_combo_box_set_focus_on_click, vFpi) +GO(gtk_combo_box_set_model, vFpp) +//GOM(gtk_combo_box_set_row_separator_func, vFEpppp) +GO(gtk_combo_box_set_row_span_column, vFpi) +GO(gtk_combo_box_set_title, vFpp) +GO(gtk_combo_box_set_wrap_width, vFpi) +//GO(gtk_combo_box_text_append_text, +//GO(gtk_combo_box_text_get_active_text, +GO(gtk_combo_box_text_get_type, iFv) +//GO(gtk_combo_box_text_insert_text, +//GO(gtk_combo_box_text_new, +//GO(gtk_combo_box_text_new_with_entry, +//GO(gtk_combo_box_text_prepend_text, +//GO(gtk_combo_box_text_remove, +GO(gtk_combo_disable_activate, vFp) +GO(gtk_combo_get_type, iFv) +GO(gtk_combo_new, pFv) +GO(gtk_combo_set_case_sensitive, vFpi) +GO(gtk_combo_set_item_string, vFppp) +GO(gtk_combo_set_popdown_strings, vFpp) +GO(gtk_combo_set_use_arrows, vFpi) +GO(gtk_combo_set_use_arrows_always, vFpi) +GO(gtk_combo_set_value_in_list, vFpii) +GO(gtk_container_add, vFpp) +//GO(gtk_container_add_with_properties, vFpppppppppppp) //vaarg +GO(gtk_container_check_resize, vFp) +//GO2(gtk_container_child_get, vFpppV, gtk_container_child_get_valist) +GO(gtk_container_child_get_property, vFpppp) +//GO(gtk_container_child_get_valist, vFpppA) +//GO2(gtk_container_child_set, vFpppV, gtk_container_child_set_valist) +GO(gtk_container_child_set_property, vFpppp) +//GO(gtk_container_child_set_valist, vFpppA) +GO(gtk_container_child_type, iFp) +GO(gtk_container_class_find_child_property, pFpp) +GO(gtk_container_class_install_child_property, vFpup) +GO(gtk_container_class_list_child_properties, pFpp) +GOM(gtk_container_forall, vFEppp) +GOM(gtk_container_foreach, vFEppp) +//GOM(gtk_container_foreach_full, vFEppppp) +GO(gtk_container_get_border_width, uFp) +GO(gtk_container_get_children, pFp) +GO(gtk_container_get_focus_chain, iFpp) +GO(gtk_container_get_focus_child, pFp) +GO(gtk_container_get_focus_hadjustment, pFp) +GO(gtk_container_get_focus_vadjustment, pFp) +GO(gtk_container_get_resize_mode, iFp) +GO(gtk_container_get_type, iFv) +GO(gtk_container_propagate_expose, vFppp) +GO(gtk_container_remove, vFpp) +GO(gtk_container_resize_children, vFp) +GO(gtk_container_set_border_width, vFpu) +GO(gtk_container_set_focus_chain, vFpp) +GO(gtk_container_set_focus_child, vFpp) +GO(gtk_container_set_focus_hadjustment, vFpp) +GO(gtk_container_set_focus_vadjustment, vFpp) +GO(gtk_container_set_reallocate_redraws, vFpp) +GO(gtk_container_set_resize_mode, vFpi) +GO(gtk_container_unset_focus_chain, vFp) +GO(gtk_corner_type_get_type, iFv) +//GO(gtk_ctree_collapse, +//GO(gtk_ctree_collapse_recursive, +//GO(gtk_ctree_collapse_to_depth, +//GO(gtk_ctree_expand, +GO(gtk_ctree_expander_style_get_type, iFv) +//GO(gtk_ctree_expand_recursive, +//GO(gtk_ctree_expand_to_depth, +GO(gtk_ctree_expansion_type_get_type, iFv) +//GO(gtk_ctree_export_to_gnode, +//GO(gtk_ctree_find, +//GO(gtk_ctree_find_all_by_row_data, +//GO(gtk_ctree_find_all_by_row_data_custom, +//GO(gtk_ctree_find_by_row_data, +//GO(gtk_ctree_find_by_row_data_custom, +//GO(gtk_ctree_find_node_ptr, +//GO(gtk_ctree_get_node_info, +GO(gtk_ctree_get_type, iFv) +//GO(gtk_ctree_insert_gnode, +//GO(gtk_ctree_insert_node, +//GO(gtk_ctree_is_ancestor, +//GO(gtk_ctree_is_hot_spot, +//GO(gtk_ctree_is_viewable, +//GO(gtk_ctree_last, +GO(gtk_ctree_line_style_get_type, iFv) +//GO(gtk_ctree_move, +//GO(gtk_ctree_new, +//GO(gtk_ctree_new_with_titles, +//GO(gtk_ctree_node_get_cell_style, +//GO(gtk_ctree_node_get_cell_type, +//GO(gtk_ctree_node_get_pixmap, +//GO(gtk_ctree_node_get_pixtext, +//GO(gtk_ctree_node_get_row_data, +//GO(gtk_ctree_node_get_row_style, +//GO(gtk_ctree_node_get_selectable, +//GO(gtk_ctree_node_get_text, +GO(gtk_ctree_node_get_type, iFv) +//GO(gtk_ctree_node_is_visible, +//GO(gtk_ctree_node_moveto, +//GO(gtk_ctree_node_nth, +//GO(gtk_ctree_node_set_background, +//GO(gtk_ctree_node_set_cell_style, +//GO(gtk_ctree_node_set_foreground, +//GO(gtk_ctree_node_set_pixmap, +//GO(gtk_ctree_node_set_pixtext, +//GO(gtk_ctree_node_set_row_data, +//GO(gtk_ctree_node_set_row_data_full, +//GO(gtk_ctree_node_set_row_style, +//GO(gtk_ctree_node_set_selectable, +//GO(gtk_ctree_node_set_shift, +//GO(gtk_ctree_node_set_text, +GO(gtk_ctree_pos_get_type, iFv) +//GO(gtk_ctree_post_recursive, +//GO(gtk_ctree_post_recursive_to_depth, +//GO(gtk_ctree_pre_recursive, +//GO(gtk_ctree_pre_recursive_to_depth, +//GO(gtk_ctree_real_select_recursive, +//GO(gtk_ctree_remove_node, +//GO(gtk_ctree_select, +//GO(gtk_ctree_select_recursive, +//GO(gtk_ctree_set_drag_compare_func, +//GO(gtk_ctree_set_expander_style, +//GO(gtk_ctree_set_indent, +//GO(gtk_ctree_set_line_style, +//GO(gtk_ctree_set_node_info, +//GO(gtk_ctree_set_show_stub, +//GO(gtk_ctree_set_spacing, +//GO(gtk_ctree_sort_node, +//GO(gtk_ctree_sort_recursive, +//GO(gtk_ctree_toggle_expansion, +//GO(gtk_ctree_toggle_expansion_recursive, +//GO(gtk_ctree_unselect, +//GO(gtk_ctree_unselect_recursive, +GO(gtk_curve_get_type, iFv) +GO(gtk_curve_get_vector, vFpip) +GO(gtk_curve_new, pFv) +GO(gtk_curve_reset, vFp) +GO(gtk_curve_set_curve_type, vFpi) +GO(gtk_curve_set_gamma, vFpf) +GO(gtk_curve_set_range, vFpffff) +GO(gtk_curve_set_vector, vFpip) +GO(gtk_curve_type_get_type, iFv) +GO(gtk_custom_paper_unix_dialog_get_type, iFv) +GO(gtk_debug_flag_get_type, iFv) +GO(gtk_decorated_window_calculate_frame_size, vFp) +GO(gtk_decorated_window_init, vFp) +GO(gtk_decorated_window_move_resize_window, vFpiiii) +GO(gtk_decorated_window_set_title, vFpp) +GO(gtk_delete_type_get_type, iFv) +GO(gtk_dest_defaults_get_type, iFv) +GO(gtk_dialog_add_action_widget, vFppi) +GO(gtk_dialog_add_button, pFppi) +GOM(gtk_dialog_add_buttons, vFEppV) +GO(gtk_dialog_flags_get_type, iFv) +GO(gtk_dialog_get_action_area, pFp) +GO(gtk_dialog_get_content_area, pFp) +GO(gtk_dialog_get_has_separator, iFp) +GO(gtk_dialog_get_response_for_widget, iFpp) +GO(gtk_dialog_get_type, iFv) +GO(gtk_dialog_get_widget_for_response, pFpi) +GO(gtk_dialog_new, pFv) +GO(gtk_dialog_new_with_buttons, pFppipppppppppppp) //vaarg +GO(gtk_dialog_response, vFpi) +GO(gtk_dialog_run, iFp) +GO(gtk_dialog_set_alternative_button_order, vFpiiiiiiiiiiiiiiiiii) // vaarg, should wrap using gtk_dialog_set_alternative_button_order_from_array +GO(gtk_dialog_set_alternative_button_order_from_array, vFpip) +GO(gtk_dialog_set_default_response, vFpi) +GO(gtk_dialog_set_has_separator, vFpi) +GO(gtk_dialog_set_response_sensitive, vFpii) +GO(gtk_direction_type_get_type, iFv) +GO(gtk_disable_setlocale, vFv) +GO(gtk_drag_begin, pFppiip) +GO(gtk_drag_check_threshold, iFpiiii) +GO(gtk_drag_dest_add_image_targets, vFp) +GO(gtk_drag_dest_add_text_targets, vFp) +GO(gtk_drag_dest_add_uri_targets, vFp) +GO(gtk_drag_dest_find_target, pFppp) +GO(gtk_drag_dest_get_target_list, pFp) +GO(gtk_drag_dest_get_track_motion, iFp) +GO(gtk_drag_dest_set, vFpipii) +GO(gtk_drag_dest_set_proxy, vFppii) +GO(gtk_drag_dest_set_target_list, vFpp) +GO(gtk_drag_dest_set_track_motion, vFpi) +GO(gtk_drag_dest_unset, vFp) +GO(gtk_drag_finish, vFpiiu) +GO(gtk_drag_get_data, vFpppu) +GO(gtk_drag_get_source_widget, pFp) +GO(gtk_drag_highlight, vFp) +GO(gtk_drag_result_get_type, iFv) +GO(gtk_drag_set_default_icon, vFpppii) +GO(gtk_drag_set_icon_default, vFp) +GO(gtk_drag_set_icon_name, vFppii) +GO(gtk_drag_set_icon_pixbuf, vFppii) +GO(gtk_drag_set_icon_pixmap, vFppppii) +GO(gtk_drag_set_icon_stock, vFppii) +GO(gtk_drag_set_icon_widget, vFppii) +GO(gtk_drag_source_add_image_targets, vFp) +GO(gtk_drag_source_add_text_targets, vFp) +GO(gtk_drag_source_add_uri_targets, vFp) +GO(gtk_drag_source_get_target_list, pFp) +GO(gtk_drag_source_set, vFpipii) +GO(gtk_drag_source_set_icon, vFpppp) +GO(gtk_drag_source_set_icon_name, vFpp) +GO(gtk_drag_source_set_icon_pixbuf, vFpp) +GO(gtk_drag_source_set_icon_stock, vFpp) +GO(gtk_drag_source_set_target_list, vFpp) +GO(gtk_drag_source_unset, vFp) +GO(gtk_drag_unhighlight, vFp) +GO(gtk_draw_arrow, vFppiiiiiiii) +GO(gtk_draw_box, vFppiiiiii) +GO(gtk_draw_box_gap, vFppiiiiiiiii) +GO(gtk_draw_check, vFppiiiiii) +GO(gtk_draw_diamond, vFppiiiiii) +GO(gtk_draw_expander, vFppiiii) +GO(gtk_draw_extension, vFppiiiiiii) +GO(gtk_draw_flat_box, vFppiiiiii) +GO(gtk_draw_focus, vFppiiii) +GO(gtk_draw_handle, vFppiiiiiii) +GO(gtk_draw_hline, vFppiiii) +GO(gtk_drawing_area_get_type, iFv) +GO(gtk_drawing_area_new, pFv) +GO(gtk_drawing_area_size, vFpii) +GO(gtk_draw_insertion_cursor, vFppppiii) +GO(gtk_draw_layout, vFppiiiip) +GO(gtk_draw_option, vFppiiiiii) +GO(gtk_draw_polygon, vFppiipii) +GO(gtk_draw_resize_grip, vFppiiiiii) +GO(gtk_draw_shadow, vFppiiiiii) +GO(gtk_draw_shadow_gap, vFppiiiiiiiii) +GO(gtk_draw_slider, vFppiiiiiii) +GO(gtk_draw_string, vFppiiip) +GO(gtk_draw_tab, vFppiiiiii) +GO(gtk_draw_vline, vFppiiii) +GO(gtk_editable_copy_clipboard, vFp) +GO(gtk_editable_cut_clipboard, vFp) +GO(gtk_editable_delete_selection, vFp) +GO(gtk_editable_delete_text, vFpii) +GO(gtk_editable_get_chars, pFpii) +GO(gtk_editable_get_editable, iFp) +GO(gtk_editable_get_position, iFp) +GO(gtk_editable_get_selection_bounds, iFppp) +GO(gtk_editable_get_type, iFv) +GO(gtk_editable_insert_text, vFppip) +GO(gtk_editable_paste_clipboard, vFp) +GO(gtk_editable_select_region, vFpii) +GO(gtk_editable_set_editable, vFpi) +GO(gtk_editable_set_position, vFpi) +GO(gtk_entry_append_text, vFpp) +//GO(gtk_entry_buffer_delete_text, +//GO(gtk_entry_buffer_emit_deleted_text, +//GO(gtk_entry_buffer_emit_inserted_text, +//GO(gtk_entry_buffer_get_bytes, +//GO(gtk_entry_buffer_get_length, +//GO(gtk_entry_buffer_get_max_length, +//GO(gtk_entry_buffer_get_text, +GO(gtk_entry_buffer_get_type, iFv) +//GO(gtk_entry_buffer_insert_text, +//GO(gtk_entry_buffer_new, +//GO(gtk_entry_buffer_set_max_length, +//GO(gtk_entry_buffer_set_text, +//GO(gtk_entry_completion_complete, +//GO(gtk_entry_completion_delete_action, +//GO(gtk_entry_completion_get_completion_prefix, +//GO(gtk_entry_completion_get_entry, +//GO(gtk_entry_completion_get_inline_completion, +//GO(gtk_entry_completion_get_inline_selection, +//GO(gtk_entry_completion_get_minimum_key_length, +//GO(gtk_entry_completion_get_model, +//GO(gtk_entry_completion_get_popup_completion, +//GO(gtk_entry_completion_get_popup_set_width, +//GO(gtk_entry_completion_get_popup_single_match, +//GO(gtk_entry_completion_get_text_column, +GO(gtk_entry_completion_get_type, iFv) +//GO(gtk_entry_completion_insert_action_markup, +//GO(gtk_entry_completion_insert_action_text, +//GO(gtk_entry_completion_insert_prefix, +//GO(gtk_entry_completion_new, +//GO(gtk_entry_completion_set_inline_completion, +//GO(gtk_entry_completion_set_inline_selection, +//GO(gtk_entry_completion_set_match_func, +//GO(gtk_entry_completion_set_minimum_key_length, +//GO(gtk_entry_completion_set_model, +//GO(gtk_entry_completion_set_popup_completion, +//GO(gtk_entry_completion_set_popup_set_width, +//GO(gtk_entry_completion_set_popup_single_match, +//GO(gtk_entry_completion_set_text_column, +GO(gtk_entry_get_activates_default, iFp) +GO(gtk_entry_get_alignment, fFp) +//GO(gtk_entry_get_buffer, +//GO(gtk_entry_get_completion, +//GO(gtk_entry_get_current_icon_drag_source, +//GO(gtk_entry_get_cursor_hadjustment, +GO(gtk_entry_get_has_frame, iFp) +//GO(gtk_entry_get_icon_activatable, +//GO(gtk_entry_get_icon_at_pos, +//GO(gtk_entry_get_icon_gicon, +//GO(gtk_entry_get_icon_name, +//GO(gtk_entry_get_icon_pixbuf, +//GO(gtk_entry_get_icon_sensitive, +//GO(gtk_entry_get_icon_stock, +//GO(gtk_entry_get_icon_storage_type, +//GO(gtk_entry_get_icon_tooltip_markup, +//GO(gtk_entry_get_icon_tooltip_text, +//GO(gtk_entry_get_icon_window, +GO(gtk_entry_get_inner_border, pFp) +//GO(gtk_entry_get_invisible_char, +GO(gtk_entry_get_layout, pFp) +GO(gtk_entry_get_layout_offsets, vFppp) +//GO(gtk_entry_get_max_length, +GO(gtk_entry_get_overwrite_mode, iFp) +//GO(gtk_entry_get_progress_fraction, +//GO(gtk_entry_get_progress_pulse_step, +GO(gtk_entry_get_text, pFp) +GO(gtk_entry_get_text_length, WFp) +//GO(gtk_entry_get_text_window, +GO(gtk_entry_get_type, iFv) +//GO(gtk_entry_get_visibility, +GO(gtk_entry_get_width_chars, iFp) +GO(gtk_entry_icon_position_get_type, iFv) +//GO(gtk_entry_im_context_filter_keypress, +//GO(gtk_entry_layout_index_to_text_index, +GO(gtk_entry_new, pFv) +GO(gtk_entry_new_with_buffer, pFp) +GO(gtk_entry_new_with_max_length, pFi) +GO(gtk_entry_prepend_text, vFpp) +//GO(gtk_entry_progress_pulse, +//GO(gtk_entry_reset_im_context, +GO(gtk_entry_select_region, vFpii) +GO(gtk_entry_set_activates_default, vFpi) +GO(gtk_entry_set_alignment, vFpf) +GO(gtk_entry_set_buffer, vFpp) +//GO(gtk_entry_set_completion, +//GO(gtk_entry_set_cursor_hadjustment, +GO(gtk_entry_set_editable, vFpi) +GO(gtk_entry_set_has_frame, vFpi) +//GO(gtk_entry_set_icon_activatable, +//GO(gtk_entry_set_icon_drag_source, +//GO(gtk_entry_set_icon_from_gicon, +//GO(gtk_entry_set_icon_from_icon_name, +//GO(gtk_entry_set_icon_from_pixbuf, +//GO(gtk_entry_set_icon_from_stock, +//GO(gtk_entry_set_icon_sensitive, +//GO(gtk_entry_set_icon_tooltip_markup, +//GO(gtk_entry_set_icon_tooltip_text, +GO(gtk_entry_set_inner_border, vFpp) +GO(gtk_entry_set_invisible_char, vFp) +GO(gtk_entry_set_max_length, vFpi) +GO(gtk_entry_set_overwrite_mode, vFpi) +GO(gtk_entry_set_position, vFpi) +//GO(gtk_entry_set_progress_fraction, +//GO(gtk_entry_set_progress_pulse_step, +GO(gtk_entry_set_text, vFpp) +GO(gtk_entry_set_visibility, vFpi) +GO(gtk_entry_set_width_chars, uFp) +//GO(gtk_entry_text_index_to_layout_index, +//GO(gtk_entry_unset_invisible_char, +//GO(gtk_enumerate_printers, +GO(gtk_event_box_get_above_child, iFp) +GO(gtk_event_box_get_type, iFv) +GO(gtk_event_box_get_visible_window, iFp) +GO(gtk_event_box_new, pFv) +GO(gtk_event_box_set_above_child, vFpi) +GO(gtk_event_box_set_visible_window, vFpi) +GO(gtk_events_pending, iFv) +GO(gtk_exit, vFi) +GO(gtk_expander_get_expanded, iFp) +GO(gtk_expander_get_label, pFp) +GO(gtk_expander_get_label_fill, iFp) +GO(gtk_expander_get_label_widget, pFp) +GO(gtk_expander_get_spacing, iFp) +GO(gtk_expander_get_type, iFv) +GO(gtk_expander_get_use_markup, iFp) +GO(gtk_expander_get_use_underline, iFp) +GO(gtk_expander_new, pFp) +GO(gtk_expander_new_with_mnemonic, pFp) +GO(gtk_expander_set_expanded, vFpi) +GO(gtk_expander_set_label, vFpp) +GO(gtk_expander_set_label_fill, vFpi) +GO(gtk_expander_set_label_widget, vFpp) +GO(gtk_expander_set_spacing, vFpi) +GO(gtk_expander_set_use_markup, vFpi) +GO(gtk_expander_set_use_underline, vFpi) +GO(gtk_expander_style_get_type, iFv) +GO(gtk_false, iFv) +GO(gtk_file_chooser_action_get_type, iFv) +GO(gtk_file_chooser_add_filter, vFpp) +GO(gtk_file_chooser_add_shortcut_folder, iFppp) +GO(gtk_file_chooser_add_shortcut_folder_uri, iFppp) +GO(gtk_file_chooser_button_get_focus_on_click, iFp) +GO(gtk_file_chooser_button_get_title, pFp) +GO(gtk_file_chooser_button_get_type, iFv) +GO(gtk_file_chooser_button_get_width_chars, iFp) +GO(gtk_file_chooser_button_new, pFpi) +GO(gtk_file_chooser_button_new_with_backend, pFpip) +GO(gtk_file_chooser_button_new_with_dialog, pFp) +GO(gtk_file_chooser_button_set_focus_on_click, vFpi) +GO(gtk_file_chooser_button_set_title, vFpp) +GO(gtk_file_chooser_button_set_width_chars, vFpi) +GO(gtk_file_chooser_confirmation_get_type, iFv) +GO(gtk_file_chooser_dialog_get_type, iFv) +GO(gtk_file_chooser_dialog_new, pFppipipipipipipip) // vaargs (so pFppipV) with additionnal buttons, end with a NULL +GO(gtk_file_chooser_dialog_new_with_backend, pFppippipipipipipip) // same but pFppippV +GO(gtk_file_chooser_error_get_type, iFv) +GO(gtk_file_chooser_error_quark, pFv) +GO(gtk_file_chooser_get_action, iFp) +GO(gtk_file_chooser_get_create_folders, iFp) +GO(gtk_file_chooser_get_current_folder, pFp) +GO(gtk_file_chooser_get_current_folder_file, pFp) +GO(gtk_file_chooser_get_current_folder_uri, pFp) +GO(gtk_file_chooser_get_do_overwrite_confirmation, iFp) +GO(gtk_file_chooser_get_extra_widget, pFp) +GO(gtk_file_chooser_get_file, pFp) +GO(gtk_file_chooser_get_filename, pFp) +GO(gtk_file_chooser_get_filenames, pFp) +GO(gtk_file_chooser_get_files, pFp) +GO(gtk_file_chooser_get_filter, pFp) +GO(gtk_file_chooser_get_local_only, iFp) +GO(gtk_file_chooser_get_preview_file, pFp) +GO(gtk_file_chooser_get_preview_filename, pFp) +GO(gtk_file_chooser_get_preview_uri, pFp) +GO(gtk_file_chooser_get_preview_widget, pFp) +GO(gtk_file_chooser_get_preview_widget_active, iFp) +GO(gtk_file_chooser_get_select_multiple, iFp) +GO(gtk_file_chooser_get_show_hidden, iFp) +GO(gtk_file_chooser_get_type, iFv) +GO(gtk_file_chooser_get_uri, pFp) +GO(gtk_file_chooser_get_uris, pFp) +GO(gtk_file_chooser_get_use_preview_label, iFp) +GO(gtk_file_chooser_list_filters, pFp) +GO(gtk_file_chooser_list_shortcut_folders, pFp) +GO(gtk_file_chooser_list_shortcut_folder_uris, pFp) +GO(gtk_file_chooser_remove_filter, vFpp) +GO(gtk_file_chooser_remove_shortcut_folder, iFppp) +GO(gtk_file_chooser_remove_shortcut_folder_uri, iFppp) +GO(gtk_file_chooser_select_all, vFp) +GO(gtk_file_chooser_select_file, iFppp) +GO(gtk_file_chooser_select_filename, iFpp) +GO(gtk_file_chooser_select_uri, iFpp) +GO(gtk_file_chooser_set_action, vFpi) +GO(gtk_file_chooser_set_create_folders, vFpi) +GO(gtk_file_chooser_set_current_folder, iFpp) +GO(gtk_file_chooser_set_current_folder_file, iFppp) +GO(gtk_file_chooser_set_current_folder_uri, iFpp) +GO(gtk_file_chooser_set_current_name, vFpp) +GO(gtk_file_chooser_set_do_overwrite_confirmation, vFpi) +GO(gtk_file_chooser_set_extra_widget, vFpp) +GO(gtk_file_chooser_set_file, iFppp) +GO(gtk_file_chooser_set_filename, iFpp) +GO(gtk_file_chooser_set_filter, vFpp) +GO(gtk_file_chooser_set_local_only, vFpi) +GO(gtk_file_chooser_set_preview_widget, vFpp) +GO(gtk_file_chooser_set_preview_widget_active, vFpi) +GO(gtk_file_chooser_set_select_multiple, vFpi) +GO(gtk_file_chooser_set_show_hidden, vFpi) +GO(gtk_file_chooser_set_uri, vFpp) +GO(gtk_file_chooser_set_use_preview_label, vFpi) +GO(gtk_file_chooser_unselect_all, vFp) +GO(gtk_file_chooser_unselect_file, vFpp) +GO(gtk_file_chooser_unselect_filename, vFpp) +GO(gtk_file_chooser_unselect_uri, vFpp) +GO(gtk_file_chooser_widget_get_type, iFv) +GO(gtk_file_chooser_widget_new, pFi) +GO(gtk_file_chooser_widget_new_with_backend, pFip) +//GOM(gtk_file_filter_add_custom, vFEppppp) +//GO(gtk_file_filter_add_mime_type, vFpp) +GO(gtk_file_filter_add_pattern, vFpp) +GO(gtk_file_filter_add_pixbuf_formats, vFp) +GO(gtk_file_filter_filter, iFpp) +GO(gtk_file_filter_flags_get_type, iFv) +GO(gtk_file_filter_get_name, pFp) +GO(gtk_file_filter_get_needed, iFp) +GO(gtk_file_filter_get_type, iFv) +GO(gtk_file_filter_new, pFv) +GO(gtk_file_filter_set_name, vFpp) +GO(gtk_file_selection_complete, vFpp) +GO(gtk_file_selection_get_filename, pFp) +GO(gtk_file_selection_get_selections, pFp) +GO(gtk_file_selection_get_select_multiple, iFp) +GO(gtk_file_selection_get_type, iFv) +GO(gtk_file_selection_hide_fileop_buttons, vFp) +GO(gtk_file_selection_new, pFp) +GO(gtk_file_selection_set_filename, vFpp) +GO(gtk_file_selection_set_select_multiple, vFpi) +GO(gtk_file_selection_show_fileop_buttons, vFp) +GO(gtk_fixed_get_has_window, iFp) +GO(gtk_fixed_get_type, iFv) +GO(gtk_fixed_move, vFppii) +GO(gtk_fixed_new, pFv) +GO(gtk_fixed_put, vFppii) +GO(gtk_fixed_set_has_window, vFpi) +GO(gtk_font_button_get_font_name, pFp) +GO(gtk_font_button_get_show_size, iFp) +GO(gtk_font_button_get_show_style, iFp) +GO(gtk_font_button_get_title, pFp) +GO(gtk_font_button_get_type, iFv) +GO(gtk_font_button_get_use_font, iFp) +GO(gtk_font_button_get_use_size, iFp) +GO(gtk_font_button_new, pFv) +GO(gtk_font_button_new_with_font, pFp) +GO(gtk_font_button_set_font_name, iFpp) +GO(gtk_font_button_set_show_size, vFpi) +GO(gtk_font_button_set_show_style, vFpi) +GO(gtk_font_button_set_title, vFpp) +GO(gtk_font_button_set_use_font, vFpi) +GO(gtk_font_button_set_use_size, vFpi) +GO(gtk_font_selection_dialog_get_apply_button, pFp) +GO(gtk_font_selection_dialog_get_cancel_button, pFp) +GO(gtk_font_selection_dialog_get_font, pFp) +GO(gtk_font_selection_dialog_get_font_name, pFp) +GO(gtk_font_selection_dialog_get_font_selection, pFp) +GO(gtk_font_selection_dialog_get_ok_button, pFp) +GO(gtk_font_selection_dialog_get_preview_text, pFp) +GO(gtk_font_selection_dialog_get_type, iFv) +GO(gtk_font_selection_dialog_new, pFp) +GO(gtk_font_selection_dialog_set_font_name, vFpp) +GO(gtk_font_selection_dialog_set_preview_text, vFpp) +GO(gtk_font_selection_get_face, pFp) +GO(gtk_font_selection_get_face_list, pFp) +GO(gtk_font_selection_get_family, pFp) +GO(gtk_font_selection_get_family_list, pFp) +GO(gtk_font_selection_get_font, pFp) +GO(gtk_font_selection_get_font_name, pFp) +GO(gtk_font_selection_get_preview_entry, pFp) +GO(gtk_font_selection_get_preview_text, pFp) +GO(gtk_font_selection_get_size, iFp) +GO(gtk_font_selection_get_size_entry, pFp) +GO(gtk_font_selection_get_size_list, pFp) +GO(gtk_font_selection_get_type, iFv) +GO(gtk_font_selection_new, pFv) +GO(gtk_font_selection_set_font_name, iFpp) +GO(gtk_font_selection_set_preview_text, vFpp) +GO(gtk_frame_get_label, pFp) +GO(gtk_frame_get_label_align, vFppp) +GO(gtk_frame_get_label_widget, pFp) +GO(gtk_frame_get_shadow_type, iFp) +GO(gtk_frame_get_type, iFv) +GO(gtk_frame_new, pFp) +GO(gtk_frame_set_label, vFpp) +GO(gtk_frame_set_label_align, vFpff) +GO(gtk_frame_set_label_widget, vFpp) +GO(gtk_frame_set_shadow_type, vFpi) +GO(gtk_gamma_curve_get_type, iFv) +GO(gtk_gamma_curve_new, pFv) +GO(gtk_gc_get, pFippu) +GO(gtk_gc_release, vFp) +GO(gtk_get_current_event, pFv) +GO(gtk_get_current_event_state, iFp) +GO(gtk_get_current_event_time, uFv) +GO(gtk_get_default_language, pFv) +GO(gtk_get_event_widget, pFp) +GO(gtk_get_option_group, pFi) +GO(gtk_grab_add, vFp) +GO(gtk_grab_get_current, pFv) +GO(gtk_grab_remove, vFp) +GO(gtk_handle_box_get_child_detached, iFp) +GO(gtk_handle_box_get_handle_position, iFp) +GO(gtk_handle_box_get_shadow_type, iFp) +GO(gtk_handle_box_get_snap_edge, iFp) +GO(gtk_handle_box_get_type, iFv) +GO(gtk_handle_box_new, pFv) +GO(gtk_handle_box_set_handle_position, vFpi) +GO(gtk_handle_box_set_shadow_type, vFpi) +GO(gtk_handle_box_set_snap_edge, vFpi) +GO(gtk_hbox_get_type, iFv) +GO(gtk_hbox_new, pFii) +GO(gtk_hbutton_box_get_layout_default, iFv) +GO(gtk_hbutton_box_get_spacing_default, iFv) +GO(gtk_hbutton_box_get_type, iFv) +GO(gtk_hbutton_box_new, pFv) +GO(gtk_hbutton_box_set_layout_default, vFi) +GO(gtk_hbutton_box_set_spacing_default, vFi) +GO(gtk_hpaned_get_type, iFv) +//GO(gtk_hpaned_new, +GO(gtk_hruler_get_type, iFv) +//GO(gtk_hruler_new, +GO(gtk_hscale_get_type, iFv) +GO(gtk_hscale_new, pFp) +GO(gtk_hscale_new_with_range, pFddd) +GO(gtk_hscrollbar_get_type, iFv) +GO(gtk_hscrollbar_new, pFp) +GO(gtk_hseparator_get_type, iFv) +GO(gtk_hseparator_new, pFv) +//GO(gtk_hsv_get_color, +//GO(gtk_hsv_get_metrics, +GO(gtk_hsv_get_type, iFv) +//GO(gtk_hsv_is_adjusting, +//GO(gtk_hsv_new, +//GO(gtk_hsv_set_color, +//GO(gtk_hsv_set_metrics, +//GO(gtk_hsv_to_rgb, +GO(gtk_icon_factory_add, vFppp) +GO(gtk_icon_factory_add_default, vFp) +GO(gtk_icon_factory_get_type, iFv) +GO(gtk_icon_factory_lookup, pFpp) +GO(gtk_icon_factory_lookup_default, pFp) +GO(gtk_icon_factory_new, pFv) +GO(gtk_icon_factory_remove_default, vFp) +GO(gtk_icon_info_copy, pFp) +GO(gtk_icon_info_free, vFp) +GO(gtk_icon_info_get_attach_points, iFppp) +GO(gtk_icon_info_get_base_size, iFp) +GO(gtk_icon_info_get_builtin_pixbuf, pFp) +GO(gtk_icon_info_get_display_name, pFp) +GO(gtk_icon_info_get_embedded_rect, iFpp) +GO(gtk_icon_info_get_filename, pFp) +GO(gtk_icon_info_get_type, iFv) +GO(gtk_icon_info_load_icon, pFpp) +GO(gtk_icon_info_new_for_pixbuf, pFpp) +GO(gtk_icon_info_set_raw_coordinates, vFpp) +GO(gtk_icon_lookup_flags_get_type, iFv) +GO(gtk_icon_set_add_source, vFpp) +GO(gtk_icon_set_copy, pFp) +GO(gtk_icon_set_get_sizes, vFppp) +GO(gtk_icon_set_get_type, iFv) +GO(gtk_icon_set_new, pFv) +GO(gtk_icon_set_new_from_pixbuf, pFp) +GO(gtk_icon_set_ref, pFp) +GO(gtk_icon_set_render_icon, pFppipipp) +GO(gtk_icon_set_unref, vFp) +GO(gtk_icon_size_from_name, iFp) +GO(gtk_icon_size_get_name, pFi) +GO(gtk_icon_size_get_type, iFv) +GO(gtk_icon_size_lookup, iFipp) +GO(gtk_icon_size_lookup_for_settings, iFpipp) +GO(gtk_icon_size_register, iFpii) +GO(gtk_icon_size_register_alias, vFpi) +GO(gtk_icon_source_copy, pFp) +GO(gtk_icon_source_free, vFp) +GO(gtk_icon_source_get_direction, iFp) +GO(gtk_icon_source_get_direction_wildcarded, iFp) +GO(gtk_icon_source_get_filename, pFp) +GO(gtk_icon_source_get_icon_name, pFp) +GO(gtk_icon_source_get_pixbuf, pFp) +GO(gtk_icon_source_get_size, iFp) +GO(gtk_icon_source_get_size_wildcarded, iFp) +GO(gtk_icon_source_get_state, iFp) +GO(gtk_icon_source_get_state_wildcarded, iFp) +GO(gtk_icon_source_get_type, iFv) +GO(gtk_icon_source_new, pFv) +GO(gtk_icon_source_set_direction, vFpi) +GO(gtk_icon_source_set_direction_wildcarded, vFpi) +GO(gtk_icon_source_set_filename, vFpp) +GO(gtk_icon_source_set_icon_name, vFpp) +GO(gtk_icon_source_set_pixbuf, vFpp) +GO(gtk_icon_source_set_size, vFpi) +GO(gtk_icon_source_set_size_wildcarded, vFpi) +GO(gtk_icon_source_set_state, vFpi) +GO(gtk_icon_source_set_state_wildcarded, vFpi) +GO(gtk_icon_theme_add_builtin_icon, vFpip) +GO(gtk_icon_theme_append_search_path, vFpp) +GO(gtk_icon_theme_choose_icon, pFppiu) +GO(gtk_icon_theme_error_get_type, iFv) +//GO(gtk_icon_theme_error_quark, +GO(gtk_icon_theme_get_default, pFv) +GO(gtk_icon_theme_get_example_icon_name, pFp) +GO(gtk_icon_theme_get_for_screen, pFp) +GO(gtk_icon_theme_get_icon_sizes, pFpp) +GO(gtk_icon_theme_get_search_path, vFppp) +GO(gtk_icon_theme_get_type, iFv) +GO(gtk_icon_theme_has_icon, iFpp) +GO(gtk_icon_theme_list_contexts, pFp) +GO(gtk_icon_theme_list_icons, pFpp) +GO(gtk_icon_theme_load_icon, pFppiup) +GO(gtk_icon_theme_lookup_by_gicon, pFppiu) +GO(gtk_icon_theme_lookup_icon, pFppiu) +GO(gtk_icon_theme_new, pFv) +//GO(gtk_icon_theme_prepend_search_path, +GO(gtk_icon_theme_rescan_if_needed, iFp) +GO(gtk_icon_theme_set_custom_theme, vFpp) +GO(gtk_icon_theme_set_screen, vFpp) +GO(gtk_icon_theme_set_search_path, vFppi) +GO(gtk_icon_view_convert_widget_to_bin_window_coords, vFpiipp) +GO(gtk_icon_view_create_drag_icon, pFpp) +GO(gtk_icon_view_drop_position_get_type, iFv) +GO(gtk_icon_view_enable_model_drag_dest, vFppii) +GO(gtk_icon_view_enable_model_drag_source, vFpipii) +GO(gtk_icon_view_get_columns, iFp) +GO(gtk_icon_view_get_column_spacing, iFp) +GO(gtk_icon_view_get_cursor, iFppp) +GO(gtk_icon_view_get_dest_item_at_pos, iFpiipp) +GO(gtk_icon_view_get_drag_dest_item, vFppp) +GO(gtk_icon_view_get_item_at_pos, iFpiipp) +GO(gtk_icon_view_get_item_column, iFpp) +GO(gtk_icon_view_get_item_orientation, iFp) +GO(gtk_icon_view_get_item_padding, iFp) +GO(gtk_icon_view_get_item_row, iFpp) +GO(gtk_icon_view_get_item_width, iFp) +GO(gtk_icon_view_get_margin, iFp) +GO(gtk_icon_view_get_markup_column, iFp) +GO(gtk_icon_view_get_model, pFp) +GO(gtk_icon_view_get_orientation, iFp) +GO(gtk_icon_view_get_path_at_pos, pFpii) +GO(gtk_icon_view_get_pixbuf_column, iFp) +GO(gtk_icon_view_get_reorderable, iFp) +GO(gtk_icon_view_get_row_spacing, iFp) +GO(gtk_icon_view_get_selected_items, pFp) +GO(gtk_icon_view_get_selection_mode, iFp) +GO(gtk_icon_view_get_spacing, iFp) +GO(gtk_icon_view_get_text_column, iFp) +GO(gtk_icon_view_get_tooltip_column, iFp) +GO(gtk_icon_view_get_tooltip_context, iFpppippp) +GO(gtk_icon_view_get_type, iFv) +GO(gtk_icon_view_get_visible_range, iFppp) +GO(gtk_icon_view_item_activated, vFpp) +GO(gtk_icon_view_new, pFv) +GO(gtk_icon_view_new_with_model, pFp) +GO(gtk_icon_view_path_is_selected, iFpp) +GO(gtk_icon_view_scroll_to_path, vFppiff) +GO(gtk_icon_view_select_all, vFp) +//GOM(gtk_icon_view_selected_foreach, vFpBp) +GO(gtk_icon_view_select_path, vFpp) +GO(gtk_icon_view_set_columns, vFpi) +GO(gtk_icon_view_set_column_spacing, vFpi) +GO(gtk_icon_view_set_cursor, vFpppi) +GO(gtk_icon_view_set_drag_dest_item, vFppi) +GO(gtk_icon_view_set_item_orientation, vFpi) +GO(gtk_icon_view_set_item_padding, vFpi) +GO(gtk_icon_view_set_item_width, vFpi) +GO(gtk_icon_view_set_margin, vFpi) +GO(gtk_icon_view_set_markup_column, vFpi) +GO(gtk_icon_view_set_model, vFpp) +GO(gtk_icon_view_set_orientation, vFpi) +GO(gtk_icon_view_set_pixbuf_column, vFpi) +GO(gtk_icon_view_set_reorderable, vFpi) +GO(gtk_icon_view_set_row_spacing, vFpi) +GO(gtk_icon_view_set_selection_mode, vFpi) +GO(gtk_icon_view_set_spacing, vFpi) +GO(gtk_icon_view_set_text_column, vFpi) +GO(gtk_icon_view_set_tooltip_cell, vFpppp) +GO(gtk_icon_view_set_tooltip_column, vFpi) +GO(gtk_icon_view_set_tooltip_item, vFppp) +GO(gtk_icon_view_unselect_all, vFp) +GO(gtk_icon_view_unselect_path, vFpp) +GO(gtk_icon_view_unset_model_drag_dest, vFp) +GO(gtk_icon_view_unset_model_drag_source, vFp) +GO(gtk_identifier_get_type, iFv) +//GOM(gtk_idle_add, uFEBp) +//GOM(gtk_idle_add_full, uFEiBppB) +//GOM(gtk_idle_add_priority, uFEiBp) +GO(gtk_idle_remove, vFu) +GO(gtk_idle_remove_by_data, vFp) +GO(gtk_image_clear, vFp) +GO(gtk_image_get, vFppp) +GO(gtk_image_get_animation, pFp) +GO(gtk_image_get_gicon, vFppp) +GO(gtk_image_get_icon_name, vFppp) +GO(gtk_image_get_icon_set, vFppp) +GO(gtk_image_get_image, vFppp) +GO(gtk_image_get_pixbuf, pFp) +GO(gtk_image_get_pixel_size, iFp) +GO(gtk_image_get_pixmap, vFppp) +GO(gtk_image_get_stock, vFppp) +GO(gtk_image_get_storage_type, iFp) +GO(gtk_image_get_type, iFv) +GO(gtk_image_menu_item_get_always_show_image, iFp) +GO(gtk_image_menu_item_get_image, pFp) +GO(gtk_image_menu_item_get_type, iFv) +GO(gtk_image_menu_item_get_use_stock, iFp) +GO(gtk_image_menu_item_new, pFv) +GO(gtk_image_menu_item_new_from_stock, pFpp) +GO(gtk_image_menu_item_new_with_label, pFp) +GO(gtk_image_menu_item_new_with_mnemonic, pFp) +GO(gtk_image_menu_item_set_accel_group, vFpp) +GO(gtk_image_menu_item_set_always_show_image, vFpi) +GO(gtk_image_menu_item_set_image, vFpp) +GO(gtk_image_menu_item_set_use_stock, vFpi) +GO(gtk_image_new, pFv) +GO(gtk_image_new_from_animation, pFp) +GO(gtk_image_new_from_file, pFp) +GO(gtk_image_new_from_gicon, pFpi) +GO(gtk_image_new_from_icon_name, pFpi) +GO(gtk_image_new_from_icon_set, pFpi) +GO(gtk_image_new_from_image, pFpp) +GO(gtk_image_new_from_pixbuf, pFp) +GO(gtk_image_new_from_pixmap, pFpp) +GO(gtk_image_new_from_stock, pFpi) +GO(gtk_image_set, vFppp) +GO(gtk_image_set_from_animation, vFpp) +GO(gtk_image_set_from_file, vFppp) +GO(gtk_image_set_from_gicon, vFppi) +GO(gtk_image_set_from_icon_name, vFppi) +GO(gtk_image_set_from_icon_set, vFppi) +GO(gtk_image_set_from_image, vFppp) +GO(gtk_image_set_from_pixbuf, vFpp) +GO(gtk_image_set_from_pixmap, vFppp) +GO(gtk_image_set_from_stock, vFppi) +GO(gtk_image_set_pixel_size, vFpi) +GO(gtk_image_type_get_type, iFv) +GO(gtk_im_context_delete_surrounding, iFpii) +GO(gtk_im_context_filter_keypress, iFpp) +GO(gtk_im_context_focus_in, vFp) +GO(gtk_im_context_focus_out, vFp) +GO(gtk_im_context_get_preedit_string, vFpppp) +GO(gtk_im_context_get_surrounding, iFppp) +GO(gtk_im_context_get_type, iFv) +GO(gtk_im_context_reset, vFp) +GO(gtk_im_context_set_client_window, vFpp) +GO(gtk_im_context_set_cursor_location, vFpp) +GO(gtk_im_context_set_surrounding, vFppii) +GO(gtk_im_context_set_use_preedit, vFpi) +GO(gtk_im_context_simple_add_table, vFppii) +GO(gtk_im_context_simple_get_type, iFv) +GO(gtk_im_context_simple_new, pFv) +GO(gtk_im_multicontext_append_menuitems, vFpp) +GO(gtk_im_multicontext_get_context_id, pFp) +GO(gtk_im_multicontext_get_type, iFv) +GO(gtk_im_multicontext_new, pFv) +GO(gtk_im_multicontext_set_context_id, vFpp) +GO(gtk_im_preedit_style_get_type, iFv) +GO(gtk_im_status_style_get_type, iFv) +//GO(gtk_info_bar_add_action_widget, +//GO(gtk_info_bar_add_button, +//GO(gtk_info_bar_add_buttons, +//GO(gtk_info_bar_get_action_area, +//GO(gtk_info_bar_get_content_area, +//GO(gtk_info_bar_get_message_type, +GO(gtk_info_bar_get_type, iFv) +//GO(gtk_info_bar_new, +//GO(gtk_info_bar_new_with_buttons, +//GO(gtk_info_bar_response, +//GO(gtk_info_bar_set_default_response, +//GO(gtk_info_bar_set_message_type, +//GO(gtk_info_bar_set_response_sensitive, +GOM(gtk_init, vFEpp) +//GO(gtk_init_add, +GOM(gtk_init_check, iFEpp) +GOM(gtk_init_with_args, iFEpppppp) +GOM(gtk_input_add_full, uFEiipppp) +GO(gtk_input_dialog_get_type, iFv) +GO(gtk_input_dialog_new, pFv) +GO(gtk_input_remove, vFu) +//GO(gtk_invisible_get_screen, +GO(gtk_invisible_get_type, iFv) +//GO(gtk_invisible_new, +//GO(gtk_invisible_new_for_screen, +//GO(gtk_invisible_set_screen, +//GO(gtk_item_deselect, +//GO(gtk_item_factories_path_delete, +//GO(gtk_item_factory_add_foreign, +//GO(gtk_item_factory_construct, +//GO(gtk_item_factory_create_item, +//GO(gtk_item_factory_create_items, +//GO(gtk_item_factory_create_items_ac, +//GO(gtk_item_factory_create_menu_entries, +//GO(gtk_item_factory_delete_entries, +//GO(gtk_item_factory_delete_entry, +//GO(gtk_item_factory_delete_item, +//GO(gtk_item_factory_from_path, +//GO(gtk_item_factory_from_widget, +//GO(gtk_item_factory_get_item, +//GO(gtk_item_factory_get_item_by_action, +GO(gtk_item_factory_get_type, iFv) +//GO(gtk_item_factory_get_widget, +//GO(gtk_item_factory_get_widget_by_action, +//GO(gtk_item_factory_new, +//GO(gtk_item_factory_path_from_widget, +//GO(gtk_item_factory_popup, +//GO(gtk_item_factory_popup_data, +//GO(gtk_item_factory_popup_data_from_widget, +//GO(gtk_item_factory_popup_with_data, +//GO(gtk_item_factory_set_translate_func, +GO(gtk_item_get_type, iFv) +//GO(gtk_item_select, +//GO(gtk_item_toggle, +GO(gtk_justification_get_type, iFv) +//GOM(gtk_key_snooper_install, uFEBp) +GO(gtk_key_snooper_remove, vFu) +GO(gtk_label_get, vFpp) +GO(gtk_label_get_angle, dFp) +GO(gtk_label_get_attributes, pFp) +GO(gtk_label_get_current_uri, pFp) +GO(gtk_label_get_ellipsize, iFp) +GO(gtk_label_get_justify, iFp) +GO(gtk_label_get_label, pFp) +GO(gtk_label_get_layout, pFp) +GO(gtk_label_get_layout_offsets, vFppp) +GO(gtk_label_get_line_wrap, iFp) +GO(gtk_label_get_line_wrap_mode, iFp) +GO(gtk_label_get_max_width_chars, iFp) +GO(gtk_label_get_mnemonic_keyval, uFp) +GO(gtk_label_get_mnemonic_widget, pFp) +GO(gtk_label_get_selectable, iFp) +GO(gtk_label_get_selection_bounds, iFppp) +GO(gtk_label_get_single_line_mode, iFp) +GO(gtk_label_get_text, pFp) +GO(gtk_label_get_track_visited_links, iFp) +GO(gtk_label_get_type, iFv) +GO(gtk_label_get_use_markup, iFp) +GO(gtk_label_get_use_underline, iFp) +GO(gtk_label_get_width_chars, iFp) +GO(gtk_label_new, pFp) +GO(gtk_label_new_with_mnemonic, pFp) +GO(gtk_label_parse_uline, uFpp) +GO(gtk_label_select_region, vFpii) +GO(gtk_label_set_angle, vFpd) +GO(gtk_label_set_attributes, vFpp) +GO(gtk_label_set_ellipsize, vFpi) +GO(gtk_label_set_justify, vFpi) +GO(gtk_label_set_label, vFpp) +GO(gtk_label_set_line_wrap, vFpi) +GO(gtk_label_set_line_wrap_mode, vFpi) +GO(gtk_label_set_markup, vFpp) +GO(gtk_label_set_markup_with_mnemonic, vFpp) +GO(gtk_label_set_max_width_chars, vFpi) +GO(gtk_label_set_mnemonic_widget, vFpp) +GO(gtk_label_set_pattern, vFpp) +GO(gtk_label_set_selectable, vFpi) +GO(gtk_label_set_single_line_mode, vFpi) +GO(gtk_label_set_text, vFpp) +GO(gtk_label_set_text_with_mnemonic, vFpp) +GO(gtk_label_set_track_visited_links, vFpi) +GO(gtk_label_set_use_markup, vFpi) +GO(gtk_label_set_use_underline, vFpi) +GO(gtk_label_set_width_chars, vFpi) +//GO(gtk_layout_freeze, +//GO(gtk_layout_get_bin_window, +//GO(gtk_layout_get_hadjustment, +//GO(gtk_layout_get_size, +GO(gtk_layout_get_type, iFv) +//GO(gtk_layout_get_vadjustment, +//GO(gtk_layout_move, +GO(gtk_layout_new, pFpp) +//GO(gtk_layout_put, +//GO(gtk_layout_set_hadjustment, +//GO(gtk_layout_set_size, +//GO(gtk_layout_set_vadjustment, +//GO(gtk_layout_thaw, +GO(gtk_link_button_get_type, iFv) +//GO(gtk_link_button_get_uri, +//GO(gtk_link_button_get_visited, +//GO(gtk_link_button_new, +//GO(gtk_link_button_new_with_label, +//GO(gtk_link_button_set_uri, +//GO(gtk_link_button_set_uri_hook, +//GO(gtk_link_button_set_visited, +GO(gtk_list_append_items, vFpp) +GO(gtk_list_child_position, iFpp) +GO(gtk_list_clear_items, vFpii) +GO(gtk_list_end_drag_selection, vFp) +GO(gtk_list_end_selection, vFp) +GO(gtk_list_extend_selection, vFpifi) +GO(gtk_list_get_type, iFv) +GO(gtk_list_insert_items, vFppi) +GO(gtk_list_item_deselect, vFp) +GO(gtk_list_item_get_type, iFv) +GO(gtk_list_item_new, pFv) +GO(gtk_list_item_new_with_label, pFp) +GO(gtk_list_item_select, vFp) +GO(gtk_list_new, pFv) +GO(gtk_list_prepend_items, vFpp) +GO(gtk_list_remove_items, vFpp) +GO(gtk_list_remove_items_no_unref, vFpp) +GO(gtk_list_scroll_horizontal, vFpif) +GO(gtk_list_scroll_vertical, vFpif) +GO(gtk_list_select_all, vFp) +GO(gtk_list_select_child, vFpp) +GO(gtk_list_select_item, vFpi) +GO(gtk_list_set_selection_mode, vFpi) +GO(gtk_list_start_selection, vFp) +GO(gtk_list_store_append, vFpp) +GO(gtk_list_store_clear, vFp) +GO(gtk_list_store_get_type, iFv) +GO(gtk_list_store_insert, vFppi) +GO(gtk_list_store_insert_after, vFppp) +GO(gtk_list_store_insert_before, vFppp) +//GOM(gtk_list_store_insert_with_values, vFppiV) // wrap with gtk_list_store_insert_with_valuesv +GO(gtk_list_store_insert_with_valuesv, vFppippi) //TODO: check if GValues need alignement +GO(gtk_list_store_iter_is_valid, iFpp) +GO(gtk_list_store_move_after, vFppp) +GO(gtk_list_store_move_before, vFppp) +GO2(gtk_list_store_new, pFiV, gtk_list_store_newv) +GO(gtk_list_store_newv, pFip) +GO(gtk_list_store_prepend, vFpp) +GO(gtk_list_store_remove, iFpp) +GO(gtk_list_store_reorder, vFpp) +GO2(gtk_list_store_set, vFppV, gtk_list_store_set_valist) +GO(gtk_list_store_set_column_types, vFpip) +GO(gtk_list_store_set_valist, vFppp) +GO(gtk_list_store_set_value, vFppip) +GO(gtk_list_store_set_valuesv, vFppppi) //TODO: check if GValues need alignement +GO(gtk_list_store_swap, vFppp) +GO(gtk_list_toggle_add_mode, vFp) +GO(gtk_list_toggle_focus_row, vFp) +GO(gtk_list_toggle_row, vFpp) +GO(gtk_list_undo_selection, vFp) +GO(gtk_list_unselect_all, vFp) +GO(gtk_list_unselect_child, vFpp) +GO(gtk_list_unselect_item, vFpi) +GO(gtk_main, vFv) +GO(gtk_main_do_event, vFp) +GO(gtk_main_iteration, iFv) +GO(gtk_main_iteration_do, iFi) +GO(gtk_main_level, uFv) +GO(gtk_main_quit, vFv) +//GO(gtk_marshal_BOOLEAN__POINTER, +//GO(gtk_marshal_BOOLEAN__POINTER_INT_INT, +//GO(gtk_marshal_BOOLEAN__POINTER_INT_INT_UINT, +//GO(gtk_marshal_BOOLEAN__POINTER_POINTER_INT_INT, +//GO(gtk_marshal_BOOLEAN__POINTER_STRING_STRING_POINTER, +//GO(gtk_marshal_BOOLEAN__VOID, +//GO(gtk_marshal_ENUM__ENUM, +//GO(gtk_marshal_INT__POINTER, +//GO(gtk_marshal_INT__POINTER_CHAR_CHAR, +//GO(gtk_marshal_VOID__ENUM_FLOAT, +//GO(gtk_marshal_VOID__ENUM_FLOAT_BOOLEAN, +//GO(gtk_marshal_VOID__INT_INT, +//GO(gtk_marshal_VOID__INT_INT_POINTER, +//GO(gtk_marshal_VOID__POINTER_INT, +//GO(gtk_marshal_VOID__POINTER_INT_INT_POINTER_UINT_UINT, +//GO(gtk_marshal_VOID__POINTER_POINTER, +//GO(gtk_marshal_VOID__POINTER_POINTER_POINTER, +//GO(gtk_marshal_VOID__POINTER_POINTER_UINT_UINT, +//GO(gtk_marshal_VOID__POINTER_STRING_STRING, +//GO(gtk_marshal_VOID__POINTER_UINT, +//GO(gtk_marshal_VOID__POINTER_UINT_ENUM, +//GO(gtk_marshal_VOID__POINTER_UINT_UINT, +//GO(gtk_marshal_VOID__STRING_INT_POINTER, +//GO(gtk_marshal_VOID__UINT_POINTER_UINT_ENUM_ENUM_POINTER, +//GO(gtk_marshal_VOID__UINT_POINTER_UINT_UINT_ENUM, +//GO(gtk_marshal_VOID__UINT_STRING, +GO(gtk_match_type_get_type, iFv) +GO(gtk_menu_attach, vFppuuuu) +GOM(gtk_menu_attach_to_widget, vFEppp) +GO(gtk_menu_bar_get_child_pack_direction, iFp) +GO(gtk_menu_bar_get_pack_direction, iFp) +GO(gtk_menu_bar_get_type, iFv) +GO(gtk_menu_bar_new, pFv) +GO(gtk_menu_bar_set_child_pack_direction, vFpi) +GO(gtk_menu_bar_set_pack_direction, vFpi) +GO(gtk_menu_detach, vFp) +GO(gtk_menu_direction_type_get_type, iFv) +GO(gtk_menu_get_accel_group, pFp) +GO(gtk_menu_get_accel_path, pFp) +GO(gtk_menu_get_active, pFp) +GO(gtk_menu_get_attach_widget, pFp) +GO(gtk_menu_get_for_attach_widget, pFp) +GO(gtk_menu_get_monitor, iFp) +GO(gtk_menu_get_reserve_toggle_size, iFp) +GO(gtk_menu_get_tearoff_state, iFp) +GO(gtk_menu_get_title, pFp) +GO(gtk_menu_get_type, iFv) +GO(gtk_menu_item_activate, vFp) +GO(gtk_menu_item_deselect, vFp) +GO(gtk_menu_item_get_accel_path, pFp) +GO(gtk_menu_item_get_label, pFp) +GO(gtk_menu_item_get_right_justified, iFp) +GO(gtk_menu_item_get_submenu, pFp) +GO(gtk_menu_item_get_type, iFv) +GO(gtk_menu_item_get_use_underline, vFpi) +GO(gtk_menu_item_new, pFv) +GO(gtk_menu_item_new_with_label, pFp) +GO(gtk_menu_item_new_with_mnemonic, pFp) +GO(gtk_menu_item_remove_submenu, pFp) +GO(gtk_menu_item_select, vFp) +GO(gtk_menu_item_set_accel_path, vFpp) +GO(gtk_menu_item_set_label, vFpp) +GO(gtk_menu_item_set_right_justified, vFpi) +GO(gtk_menu_item_set_submenu, vFpp) +GO(gtk_menu_item_set_use_underline, vFpi) +GO(gtk_menu_item_toggle_size_allocate, vFpi) +GO(gtk_menu_item_toggle_size_request, vFpp) +GO(gtk_menu_new, pFv) +GO(gtk_menu_popdown, vFp) +GOM(gtk_menu_popup, vFEpppppuu) +GO(gtk_menu_reorder_child, vFppi) +GO(gtk_menu_reposition, vFp) +GO(gtk_menu_set_accel_group, vFpp) +GO(gtk_menu_set_accel_path, vFpp) +GO(gtk_menu_set_active, vFpu) +GO(gtk_menu_set_monitor, vFpi) +GO(gtk_menu_set_reserve_toggle_size, vFpi) +GO(gtk_menu_set_screen, vFpp) +GO(gtk_menu_set_tearoff_state, vFpi) +GO(gtk_menu_set_title, vFpp) +//GO(gtk_menu_shell_activate_item, +GO(gtk_menu_shell_append, vFpp) +//GO(gtk_menu_shell_cancel, +//GO(gtk_menu_shell_deactivate, +//GO(gtk_menu_shell_deselect, +//GO(gtk_menu_shell_get_take_focus, +GO(gtk_menu_shell_get_type, iFv) +GO(gtk_menu_shell_insert, vFppi) +GO(gtk_menu_shell_prepend, vFpp) +GO(gtk_menu_shell_select_first, vFpi) +GO(gtk_menu_shell_select_item, vFpp) +//GO(gtk_menu_shell_set_take_focus, +GO(gtk_menu_tool_button_get_menu, pFp) +GO(gtk_menu_tool_button_get_type, iFv) +GO(gtk_menu_tool_button_new, pFpp) +GO(gtk_menu_tool_button_new_from_stock, pFp) +GO(gtk_menu_tool_button_set_arrow_tooltip, vFpppp) +GO(gtk_menu_tool_button_set_arrow_tooltip_markup, vFpp) +GO(gtk_menu_tool_button_set_arrow_tooltip_text, vFpp) +GO(gtk_menu_tool_button_set_menu, vFpp) +GOM(gtk_message_dialog_format_secondary_markup, vFEppV) +GOM(gtk_message_dialog_format_secondary_text, vFEppV) +GO(gtk_message_dialog_get_image, pFp) +GO(gtk_message_dialog_get_message_area, pFp) +GO(gtk_message_dialog_get_type, iFv) +GO(gtk_message_dialog_new, pFpuiippppppppppp) // vaarg :( +GO(gtk_message_dialog_new_with_markup, pFpuiippppppppppp) // vaarg +GO(gtk_message_dialog_set_image, vFpp) +GO(gtk_message_dialog_set_markup, vFpp) +GO(gtk_message_type_get_type, iFv) +GO(gtk_metric_type_get_type, iFv) +GO(gtk_misc_get_alignment, vFppp) +GO(gtk_misc_get_padding, vFppp) +GO(gtk_misc_get_type, iFv) +GO(gtk_misc_set_alignment, vFpff) +GO(gtk_misc_set_padding, vFpii) +GO(gtk_mount_operation_get_parent, pFp) +GO(gtk_mount_operation_get_screen, pFp) +GO(gtk_mount_operation_get_type, iFv) +GO(gtk_mount_operation_is_showing, iFp) +GO(gtk_mount_operation_new, pFp) +GO(gtk_mount_operation_set_parent, vFpp) +GO(gtk_mount_operation_set_screen, vFpp) +GO(gtk_movement_step_get_type, iFv) +GO(gtk_notebook_append_page, iFppp) +GO(gtk_notebook_append_page_menu, iFpppp) +GO(gtk_notebook_get_action_widget, pFpi) +GO(gtk_notebook_get_current_page, iFp) +GO(gtk_notebook_get_group, pFp) +GO(gtk_notebook_get_group_id, iFp) +GO(gtk_notebook_get_group_name, pFp) +GO(gtk_notebook_get_menu_label, pFpp) +GO(gtk_notebook_get_menu_label_text, pFpp) +GO(gtk_notebook_get_n_pages, iFp) +GO(gtk_notebook_get_nth_page, pFpi) +GO(gtk_notebook_get_scrollable, iFp) +GO(gtk_notebook_get_show_border, iFp) +GO(gtk_notebook_get_show_tabs, iFp) +GO(gtk_notebook_get_tab_detachable, iFpp) +GO(gtk_notebook_get_tab_hborder, WFp) +GO(gtk_notebook_get_tab_label, pFpp) +GO(gtk_notebook_get_tab_label_text, pFpp) +GO(gtk_notebook_get_tab_pos, iFp) +GO(gtk_notebook_get_tab_reorderable, iFpp) +GO(gtk_notebook_get_tab_vborder, WFp) +GO(gtk_notebook_get_type, iFv) +GO(gtk_notebook_insert_page, iFpppi) +GO(gtk_notebook_insert_page_menu, iFppppi) +GO(gtk_notebook_new, pFv) +GO(gtk_notebook_next_page, vFp) +GO(gtk_notebook_page_num, iFpp) +GO(gtk_notebook_popup_disable, vFp) +GO(gtk_notebook_popup_enable, vFp) +GO(gtk_notebook_prepend_page, iFppp) +GO(gtk_notebook_prepend_page_menu, iFpppp) +GO(gtk_notebook_prev_page, vFp) +GO(gtk_notebook_query_tab_label_packing, vFppppp) +GO(gtk_notebook_remove_page, vFpi) +GO(gtk_notebook_reorder_child, vFppi) +GO(gtk_notebook_set_action_widget, vFppi) +GO(gtk_notebook_set_current_page, vFpi) +GO(gtk_notebook_set_group, vFpp) +GO(gtk_notebook_set_group_id, vFpi) +GO(gtk_notebook_set_group_name, vFpp) +GO(gtk_notebook_set_homogeneous_tabs, vFpi) +GO(gtk_notebook_set_menu_label, vFppp) +GO(gtk_notebook_set_menu_label_text, vFppp) +GO(gtk_notebook_set_scrollable, vFpi) +GO(gtk_notebook_set_show_border, vFpi) +GO(gtk_notebook_set_show_tabs, vFpi) +GO(gtk_notebook_set_tab_border, vFpu) +GO(gtk_notebook_set_tab_detachable, vFppi) +GO(gtk_notebook_set_tab_hborder, vFpu) +GO(gtk_notebook_set_tab_label, vFppp) +GO(gtk_notebook_set_tab_label_packing, vFppiii) +GO(gtk_notebook_set_tab_label_text, vFppp) +GO(gtk_notebook_set_tab_pos, vFpi) +GO(gtk_notebook_set_tab_reorderable, vFppi) +GO(gtk_notebook_set_tab_vborder, vFpu) +//GOM(gtk_notebook_set_window_creation_hook, pFEppp) +GO(gtk_notebook_tab_get_type, iFv) +GO(gtk_number_up_layout_get_type, iFv) +GO(gtk_object_add_arg_type, vFpiuu) +GO(gtk_object_destroy, vFp) +GO(gtk_object_flags_get_type, iFv) +GO(gtk_object_get, vFppppppppppp) // vaarg +GO(gtk_object_get_data, pFpp) +GO(gtk_object_get_data_by_id, pFpp) +GO(gtk_object_get_type, iFv) +GO(gtk_object_get_user_data, pFp) +GO(gtk_object_new, pFppppppppppp) //vaarg +GO(gtk_object_ref, pFp) +GO(gtk_object_remove_data, vFpp) +GO(gtk_object_remove_data_by_id, vFpp) +GO(gtk_object_remove_no_notify, vFpp) +GO(gtk_object_remove_no_notify_by_id, vFpp) +GO(gtk_object_set, vFppppppppppp) //vaarg +GO(gtk_object_set_data, vFppp) +GO(gtk_object_set_data_by_id, vFppp) +//GOM(gtk_object_set_data_by_id_full, vFEpppp) +GOM(gtk_object_set_data_full, vFEpppp) +GO(gtk_object_set_user_data, vFpp) +GO(gtk_object_sink, vFp) +GO(gtk_object_unref, vFp) +//GOM(gtk_object_weakref, vFEppp) +//GOM(gtk_object_weakunref, vFEppp) +GO(gtk_offscreen_window_get_pixbuf, pFp) +GO(gtk_offscreen_window_get_pixmap, pFp) +GO(gtk_offscreen_window_get_type, iFv) +GO(gtk_offscreen_window_new, pFv) +GO(gtk_old_editable_changed, vFp) +GO(gtk_old_editable_claim_selection, vFpiu) +GO(gtk_old_editable_get_type, iFv) +GO(gtk_option_menu_get_history, iFp) +GO(gtk_option_menu_get_menu, pFp) +GO(gtk_option_menu_get_type, iFv) +GO(gtk_option_menu_new, pFv) +GO(gtk_option_menu_remove_menu, vFp) +GO(gtk_option_menu_set_history, vFpu) +GO(gtk_option_menu_set_menu, vFpp) +GO(gtk_orientable_get_orientation, iFp) +GO(gtk_orientable_get_type, iFv) +GO(gtk_orientable_set_orientation, vFpi) +GO(gtk_orientation_get_type, iFv) +GO(gtk_pack_direction_get_type, iFv) +GO(gtk_pack_type_get_type, iFv) +GO(gtk_page_orientation_get_type, iFv) +GO(gtk_page_set_get_type, iFv) +//GO(gtk_page_setup_copy, +//GO(gtk_page_setup_get_bottom_margin, +//GO(gtk_page_setup_get_left_margin, +//GO(gtk_page_setup_get_orientation, +//GO(gtk_page_setup_get_page_height, +//GO(gtk_page_setup_get_page_width, +//GO(gtk_page_setup_get_paper_height, +//GO(gtk_page_setup_get_paper_size, +//GO(gtk_page_setup_get_paper_width, +//GO(gtk_page_setup_get_right_margin, +//GO(gtk_page_setup_get_top_margin, +GO(gtk_page_setup_get_type, iFv) +//GO(gtk_page_setup_load_file, +//GO(gtk_page_setup_load_key_file, +//GO(gtk_page_setup_new, +//GO(gtk_page_setup_new_from_file, +//GO(gtk_page_setup_new_from_key_file, +//GO(gtk_page_setup_set_bottom_margin, +//GO(gtk_page_setup_set_left_margin, +//GO(gtk_page_setup_set_orientation, +//GO(gtk_page_setup_set_paper_size, +//GO(gtk_page_setup_set_paper_size_and_default_margins, +//GO(gtk_page_setup_set_right_margin, +//GO(gtk_page_setup_set_top_margin, +//GO(gtk_page_setup_to_file, +//GO(gtk_page_setup_to_key_file, +//GO(gtk_page_setup_unix_dialog_get_page_setup, +//GO(gtk_page_setup_unix_dialog_get_print_settings, +GO(gtk_page_setup_unix_dialog_get_type, iFv) +//GO(gtk_page_setup_unix_dialog_new, +//GO(gtk_page_setup_unix_dialog_set_page_setup, +//GO(gtk_page_setup_unix_dialog_set_print_settings, +GO(gtk_paint_arrow, vFppiipppiiiiii) +GO(gtk_paint_box, vFppiipppiiii) +GO(gtk_paint_box_gap, vFppiipppiiiiiii) +GO(gtk_paint_check, vFppiipppiiii) +GO(gtk_paint_diamond, vFppiipppiiii) +GO(gtk_paint_expander, vFppipppiii) +GO(gtk_paint_extension, vFppiipppiiiii) +GO(gtk_paint_flat_box, vFppiipppiiii) +GO(gtk_paint_focus, vFppipppiiii) +GO(gtk_paint_handle, vFppiipppiiiii) +GO(gtk_paint_hline, vFppipppiii) +GO(gtk_paint_layout, vFppiipppiip) +GO(gtk_paint_option, vFppiipppiiii) +GO(gtk_paint_polygon, vFppiippppii) +GO(gtk_paint_resize_grip, vFppipppiiiii) +GO(gtk_paint_shadow, vFppiipppiiii) +GO(gtk_paint_shadow_gap, vFppiipppiiiiiii) +GO(gtk_paint_slider, vFppiipppiiiii) +GO(gtk_paint_spinner, vFppipppuiiii) +GO(gtk_paint_string, vFppipppiip) +GO(gtk_paint_tab, vFppiipppiiii) +GO(gtk_paint_vline, vFppipppiii) +GO(gtk_paned_add1, vFpp) +GO(gtk_paned_add2, vFpp) +GO(gtk_paned_compute_position, vFpiii) +GO(gtk_paned_get_child1, pFp) +GO(gtk_paned_get_child2, pFp) +GO(gtk_paned_get_handle_window, pFp) +GO(gtk_paned_get_position, pFp) +GO(gtk_paned_get_type, iFv) +GO(gtk_paned_pack1, vFppii) +GO(gtk_paned_pack2, vFppii) +GO(gtk_paned_set_position, vFpi) +GO(gtk_paper_size_copy, pFp) +GO(gtk_paper_size_free, vFp) +GO(gtk_paper_size_get_default, pFv) +GO(gtk_paper_size_get_default_bottom_margin, dFpi) +GO(gtk_paper_size_get_default_left_margin, dFpi) +GO(gtk_paper_size_get_default_right_margin, dFpi) +GO(gtk_paper_size_get_default_top_margin, dFpi) +GO(gtk_paper_size_get_display_name, pFp) +GO(gtk_paper_size_get_height, dFpi) +GO(gtk_paper_size_get_name, pFp) +GO(gtk_paper_size_get_paper_sizes, pFi) +GO(gtk_paper_size_get_ppd_name, pFp) +GO(gtk_paper_size_get_type, iFv) +GO(gtk_paper_size_get_width, dFpi) +GO(gtk_paper_size_is_custom, iFp) +GO(gtk_paper_size_is_equal, iFpp) +GO(gtk_paper_size_new, pFp) +GO(gtk_paper_size_new_custom, pFppddi) +GO(gtk_paper_size_new_from_key_file, pFppp) +GO(gtk_paper_size_new_from_ppd, pFppdd) +GO(gtk_paper_size_set_size, vFpddi) +GO(gtk_paper_size_to_key_file, vFppp) +GO(gtk_parse_args, iFpp) +GO(gtk_path_bar_get_type, iFv) +GO(gtk_path_priority_type_get_type, iFv) +GO(gtk_path_type_get_type, iFv) +GO(gtk_pixmap_get, vFppp) +GO(gtk_pixmap_get_type, iFv) +GO(gtk_pixmap_new, pFpp) +GO(gtk_pixmap_set, vFppp) +GO(gtk_pixmap_set_build_insensitive, vFpi) +GO(gtk_plug_construct, vFpp) +GO(gtk_plug_construct_for_display, vFppp) +GO(gtk_plug_get_embedded, iFp) +GO(gtk_plug_get_id, pFp) +GO(gtk_plug_get_socket_window, pFp) +GO(gtk_plug_get_type, iFv) +GO(gtk_plug_new, pFp) +GO(gtk_plug_new_for_display, pFpp) +GO(gtk_policy_type_get_type, iFv) +GO(gtk_position_type_get_type, iFv) +//GO(gtk_preview_draw_row, +//GO(gtk_preview_get_cmap, +//GO(gtk_preview_get_info, +GO(gtk_preview_get_type, iFv) +//GO(gtk_preview_get_visual, +//GO(gtk_preview_new, +//GO(gtk_preview_put, +//GO(gtk_preview_reset, +//GO(gtk_preview_set_color_cube, +//GO(gtk_preview_set_dither, +//GO(gtk_preview_set_expand, +//GO(gtk_preview_set_gamma, +//GO(gtk_preview_set_install_cmap, +//GO(gtk_preview_set_reserved, +//GO(gtk_preview_size, +GO(gtk_preview_type_get_type, iFv) +//GO(gtk_preview_uninit, +//GO(gtk_print_backend_add_printer, +//GO(gtk_print_backend_destroy, +//GO(gtk_print_backend_error_quark, +//GO(gtk_print_backend_find_printer, +//GO(gtk_print_backend_get_printer_list, +GO(gtk_print_backend_get_type, iFv) +//GO(gtk_print_backend_load_modules, +//GO(gtk_print_backend_printer_list_is_done, +//GO(gtk_print_backend_print_stream, +//GO(gtk_print_backend_remove_printer, +//GO(gtk_print_backend_set_list_done, +//GO(gtk_print_backend_set_password, +GO(gtk_print_capabilities_get_type, iFv) +//GO(gtk_print_context_create_pango_context, +//GO(gtk_print_context_create_pango_layout, +//GO(gtk_print_context_get_cairo_context, +//GO(gtk_print_context_get_dpi_x, +//GO(gtk_print_context_get_dpi_y, +//GO(gtk_print_context_get_hard_margins, +//GO(gtk_print_context_get_height, +//GO(gtk_print_context_get_page_setup, +//GO(gtk_print_context_get_pango_fontmap, +GO(gtk_print_context_get_type, iFv) +//GO(gtk_print_context_get_width, +//GO(gtk_print_context_set_cairo_context, +GO(gtk_print_duplex_get_type, iFv) +//GO(gtk_printer_accepts_pdf, +//GO(gtk_printer_accepts_ps, +//GO(gtk_printer_compare, +//GO(gtk_printer_get_backend, +//GO(gtk_printer_get_capabilities, +//GO(gtk_printer_get_default_page_size, +//GO(gtk_printer_get_description, +//GO(gtk_printer_get_hard_margins, +//GO(gtk_printer_get_icon_name, +//GO(gtk_printer_get_job_count, +//GO(gtk_printer_get_location, +//GO(gtk_printer_get_name, +//GO(gtk_printer_get_state_message, +GO(gtk_printer_get_type, iFv) +//GO(gtk_printer_has_details, +//GO(gtk_printer_is_accepting_jobs, +//GO(gtk_printer_is_active, +//GO(gtk_printer_is_default, +//GO(gtk_printer_is_new, +//GO(gtk_printer_is_paused, +//GO(gtk_printer_is_virtual, +//GO(gtk_printer_list_papers, +//GO(gtk_printer_new, +//GO(gtk_printer_option_allocate_choices, +//GO(gtk_printer_option_choices_from_array, +//GO(gtk_printer_option_clear_has_conflict, +//GO(gtk_printer_option_get_activates_default, +GO(gtk_printer_option_get_type, iFv) +//GO(gtk_printer_option_has_choice, +//GO(gtk_printer_option_new, +//GO(gtk_printer_option_set, +//GO(gtk_printer_option_set_activates_default, +//GO(gtk_printer_option_set_add, +//GO(gtk_printer_option_set_boolean, +//GO(gtk_printer_option_set_clear_conflicts, +//GO(gtk_printer_option_set_foreach, +//GO(gtk_printer_option_set_foreach_in_group, +//GO(gtk_printer_option_set_get_groups, +GO(gtk_printer_option_set_get_type, iFv) +//GO(gtk_printer_option_set_has_conflict, +//GO(gtk_printer_option_set_lookup, +//GO(gtk_printer_option_set_new, +//GO(gtk_printer_option_set_remove, +//GO(gtk_printer_option_widget_get_external_label, +GO(gtk_printer_option_widget_get_type, iFv) +//GO(gtk_printer_option_widget_get_value, +//GO(gtk_printer_option_widget_has_external_label, +//GO(gtk_printer_option_widget_new, +//GO(gtk_printer_option_widget_set_source, +//GO(gtk_printer_request_details, +GO(gtk_print_error_get_type, iFv) +//GO(gtk_print_error_quark, +//GO(gtk_printer_set_accepts_pdf, +//GO(gtk_printer_set_accepts_ps, +//GO(gtk_printer_set_description, +//GO(gtk_printer_set_has_details, +//GO(gtk_printer_set_icon_name, +//GO(gtk_printer_set_is_accepting_jobs, +//GO(gtk_printer_set_is_active, +//GO(gtk_printer_set_is_default, +//GO(gtk_printer_set_is_new, +//GO(gtk_printer_set_is_paused, +//GO(gtk_printer_set_job_count, +//GO(gtk_printer_set_location, +//GO(gtk_printer_set_state_message, +//GO(gtk_print_job_get_printer, +//GO(gtk_print_job_get_settings, +//GO(gtk_print_job_get_status, +//GO(gtk_print_job_get_surface, +//GO(gtk_print_job_get_title, +//GO(gtk_print_job_get_track_print_status, +GO(gtk_print_job_get_type, iFv) +//GO(gtk_print_job_new, +//GO(gtk_print_job_send, +//GO(gtk_print_job_set_source_file, +//GO(gtk_print_job_set_status, +//GO(gtk_print_job_set_track_print_status, +GO(gtk_print_operation_action_get_type, iFv) +//GO(gtk_print_operation_cancel, +//GO(gtk_print_operation_draw_page_finish, +//GO(gtk_print_operation_get_default_page_setup, +//GO(gtk_print_operation_get_embed_page_setup, +//GO(gtk_print_operation_get_error, +//GO(gtk_print_operation_get_has_selection, +//GO(gtk_print_operation_get_n_pages_to_print, +//GO(gtk_print_operation_get_print_settings, +//GO(gtk_print_operation_get_status, +//GO(gtk_print_operation_get_status_string, +//GO(gtk_print_operation_get_support_selection, +GO(gtk_print_operation_get_type, iFv) +//GO(gtk_print_operation_is_finished, +//GO(gtk_print_operation_new, +//GO(gtk_print_operation_preview_end_preview, +GO(gtk_print_operation_preview_get_type, iFv) +//GO(gtk_print_operation_preview_is_selected, +//GO(gtk_print_operation_preview_render_page, +GO(gtk_print_operation_result_get_type, iFv) +//GO(gtk_print_operation_run, +//GO(gtk_print_operation_set_allow_async, +//GO(gtk_print_operation_set_current_page, +//GO(gtk_print_operation_set_custom_tab_label, +//GO(gtk_print_operation_set_default_page_setup, +//GO(gtk_print_operation_set_defer_drawing, +//GO(gtk_print_operation_set_embed_page_setup, +//GO(gtk_print_operation_set_export_filename, +//GO(gtk_print_operation_set_has_selection, +//GO(gtk_print_operation_set_job_name, +//GO(gtk_print_operation_set_n_pages, +//GO(gtk_print_operation_set_print_settings, +//GO(gtk_print_operation_set_show_progress, +//GO(gtk_print_operation_set_support_selection, +//GO(gtk_print_operation_set_track_print_status, +//GO(gtk_print_operation_set_unit, +//GO(gtk_print_operation_set_use_full_page, +GO(gtk_print_pages_get_type, iFv) +GO(gtk_print_quality_get_type, iFv) +//GO(gtk_print_run_page_setup_dialog, +//GO(gtk_print_run_page_setup_dialog_async, +//GO(gtk_print_settings_copy, +//GO(gtk_print_settings_foreach, +//GO(gtk_print_settings_get, +//GO(gtk_print_settings_get_bool, +//GO(gtk_print_settings_get_collate, +//GO(gtk_print_settings_get_default_source, +//GO(gtk_print_settings_get_dither, +//GO(gtk_print_settings_get_double, +//GO(gtk_print_settings_get_double_with_default, +//GO(gtk_print_settings_get_duplex, +//GO(gtk_print_settings_get_finishings, +//GO(gtk_print_settings_get_int, +//GO(gtk_print_settings_get_int_with_default, +//GO(gtk_print_settings_get_length, +//GO(gtk_print_settings_get_media_type, +//GO(gtk_print_settings_get_n_copies, +//GO(gtk_print_settings_get_number_up, +//GO(gtk_print_settings_get_number_up_layout, +//GO(gtk_print_settings_get_orientation, +//GO(gtk_print_settings_get_output_bin, +//GO(gtk_print_settings_get_page_ranges, +//GO(gtk_print_settings_get_page_set, +//GO(gtk_print_settings_get_paper_height, +//GO(gtk_print_settings_get_paper_size, +//GO(gtk_print_settings_get_paper_width, +//GO(gtk_print_settings_get_printer, +//GO(gtk_print_settings_get_printer_lpi, +//GO(gtk_print_settings_get_print_pages, +//GO(gtk_print_settings_get_quality, +//GO(gtk_print_settings_get_resolution, +//GO(gtk_print_settings_get_resolution_x, +//GO(gtk_print_settings_get_resolution_y, +//GO(gtk_print_settings_get_reverse, +//GO(gtk_print_settings_get_scale, +GO(gtk_print_settings_get_type, iFv) +//GO(gtk_print_settings_get_use_color, +//GO(gtk_print_settings_has_key, +//GO(gtk_print_settings_load_file, +//GO(gtk_print_settings_load_key_file, +//GO(gtk_print_settings_new, +//GO(gtk_print_settings_new_from_file, +//GO(gtk_print_settings_new_from_key_file, +//GO(gtk_print_settings_set, +//GO(gtk_print_settings_set_bool, +//GO(gtk_print_settings_set_collate, +//GO(gtk_print_settings_set_default_source, +//GO(gtk_print_settings_set_dither, +//GO(gtk_print_settings_set_double, +//GO(gtk_print_settings_set_duplex, +//GO(gtk_print_settings_set_finishings, +//GO(gtk_print_settings_set_int, +//GO(gtk_print_settings_set_length, +//GO(gtk_print_settings_set_media_type, +//GO(gtk_print_settings_set_n_copies, +//GO(gtk_print_settings_set_number_up, +//GO(gtk_print_settings_set_number_up_layout, +//GO(gtk_print_settings_set_orientation, +//GO(gtk_print_settings_set_output_bin, +//GO(gtk_print_settings_set_page_ranges, +//GO(gtk_print_settings_set_page_set, +//GO(gtk_print_settings_set_paper_height, +//GO(gtk_print_settings_set_paper_size, +//GO(gtk_print_settings_set_paper_width, +//GO(gtk_print_settings_set_printer, +//GO(gtk_print_settings_set_printer_lpi, +//GO(gtk_print_settings_set_print_pages, +//GO(gtk_print_settings_set_quality, +//GO(gtk_print_settings_set_resolution, +//GO(gtk_print_settings_set_resolution_xy, +//GO(gtk_print_settings_set_reverse, +//GO(gtk_print_settings_set_scale, +//GO(gtk_print_settings_set_use_color, +//GO(gtk_print_settings_to_file, +//GO(gtk_print_settings_to_key_file, +//GO(gtk_print_settings_unset, +GO(gtk_print_status_get_type, iFv) +//GO(gtk_print_unix_dialog_add_custom_tab, +//GO(gtk_print_unix_dialog_get_current_page, +//GO(gtk_print_unix_dialog_get_embed_page_setup, +//GO(gtk_print_unix_dialog_get_has_selection, +//GO(gtk_print_unix_dialog_get_manual_capabilities, +//GO(gtk_print_unix_dialog_get_page_setup, +//GO(gtk_print_unix_dialog_get_page_setup_set, +//GO(gtk_print_unix_dialog_get_selected_printer, +//GO(gtk_print_unix_dialog_get_settings, +//GO(gtk_print_unix_dialog_get_support_selection, +GO(gtk_print_unix_dialog_get_type, iFv) +//GO(gtk_print_unix_dialog_new, +//GO(gtk_print_unix_dialog_set_current_page, +//GO(gtk_print_unix_dialog_set_embed_page_setup, +//GO(gtk_print_unix_dialog_set_has_selection, +//GO(gtk_print_unix_dialog_set_manual_capabilities, +//GO(gtk_print_unix_dialog_set_page_setup, +//GO(gtk_print_unix_dialog_set_settings, +//GO(gtk_print_unix_dialog_set_support_selection, +GO(gtk_private_flags_get_type, iFv) +GO(gtk_progress_bar_get_ellipsize, iFp) +GO(gtk_progress_bar_get_fraction, dFp) +GO(gtk_progress_bar_get_orientation, iFp) +GO(gtk_progress_bar_get_pulse_step, fFp) +GO(gtk_progress_bar_get_text, pFp) +GO(gtk_progress_bar_get_type, iFv) +GO(gtk_progress_bar_new, pFv) +GO(gtk_progress_bar_new_with_adjustment, pFp) +GO(gtk_progress_bar_orientation_get_type, iFv) +GO(gtk_progress_bar_pulse, vFp) +GO(gtk_progress_bar_set_activity_blocks, vFpu) +GO(gtk_progress_bar_set_activity_step, vFpu) +GO(gtk_progress_bar_set_bar_style, vFpi) +GO(gtk_progress_bar_set_discrete_blocks, vFpu) +GO(gtk_progress_bar_set_ellipsize, vFpi) +GO(gtk_progress_bar_set_fraction, vFpd) +GO(gtk_progress_bar_set_orientation, vFpi) +GO(gtk_progress_bar_set_pulse_step, vFpd) +GO(gtk_progress_bar_set_text, vFpp) +GO(gtk_progress_bar_style_get_type, iFv) +GO(gtk_progress_bar_update, vFpd) +GO(gtk_progress_configure, vFpddd) +GO(gtk_progress_get_current_percentage, dFp) +GO(gtk_progress_get_current_text, pFp) +GO(gtk_progress_get_percentage_from_value, dFpd) +GO(gtk_progress_get_text_from_value, pFpd) +GO(gtk_progress_get_type, iFv) +GO(gtk_progress_get_value, dFp) +GO(gtk_progress_set_activity_mode, vFpi) +GO(gtk_progress_set_adjustment, vFpp) +GO(gtk_progress_set_format_string, vFpp) +GO(gtk_progress_set_percentage, vFpd) +GO(gtk_progress_set_show_text, vFpi) +GO(gtk_progress_set_text_alignment, vFpff) +GO(gtk_progress_set_value, vFpd) +GO(gtk_propagate_event, vFpp) +//GOM(gtk_quit_add, iFEuBp) +GO(gtk_quit_add_destroy, vFup) +//GOM(gtk_quit_add_full, uFuBppB) +GO(gtk_quit_remove, vFu) +GO(gtk_quit_remove_by_data, vFp) +GO(gtk_radio_action_get_current_value, iFp) +GO(gtk_radio_action_get_group, pFp) +GO(gtk_radio_action_get_type, iFv) +GO(gtk_radio_action_new, pFppppi) +GO(gtk_radio_action_set_current_value, vFpi) +GO(gtk_radio_action_set_group, vFpp) +GO(gtk_radio_button_get_group, pFp) +GO(gtk_radio_button_get_type, iFv) +GO(gtk_radio_button_new, pFp) +GO(gtk_radio_button_new_from_widget, pFp) +GO(gtk_radio_button_new_with_label, pFpp) +GO(gtk_radio_button_new_with_label_from_widget, pFpp) +GO(gtk_radio_button_new_with_mnemonic, pFpp) +GO(gtk_radio_button_new_with_mnemonic_from_widget, pFpp) +GO(gtk_radio_button_set_group, vFpp) +GO(gtk_radio_menu_item_get_group, pFp) +GO(gtk_radio_menu_item_get_type, iFv) +GO(gtk_radio_menu_item_new, pFp) +GO(gtk_radio_menu_item_new_from_widget, pFp) +GO(gtk_radio_menu_item_new_with_label, pFpp) +GO(gtk_radio_menu_item_new_with_label_from_widget, pFpp) +GO(gtk_radio_menu_item_new_with_mnemonic, pFpp) +GO(gtk_radio_menu_item_new_with_mnemonic_from_widget, pFpp) +GO(gtk_radio_menu_item_set_group, vFpp) +GO(gtk_radio_tool_button_get_group, pFp) +GO(gtk_radio_tool_button_get_type, iFv) +GO(gtk_radio_tool_button_new, pFp) +GO(gtk_radio_tool_button_new_from_stock, pFpp) +GO(gtk_radio_tool_button_new_from_widget, pFp) +GO(gtk_radio_tool_button_new_with_stock_from_widget, pFpp) +GO(gtk_radio_tool_button_set_group, vFpp) +GO(gtk_range_get_adjustment, pFp) +GO(gtk_range_get_fill_level, dFp) +GO(gtk_range_get_flippable, iFp) +GO(gtk_range_get_inverted, iFp) +GO(gtk_range_get_lower_stepper_sensitivity, iFp) +GO(gtk_range_get_min_slider_size, iFp) +GO(gtk_range_get_range_rect, vFpp) +GO(gtk_range_get_restrict_to_fill_level, iFp) +GO(gtk_range_get_round_digits, iFp) +GO(gtk_range_get_show_fill_level, iFp) +GO(gtk_range_get_slider_range, vFppp) +GO(gtk_range_get_slider_size_fixed, iFp) +GO(gtk_range_get_type, iFv) +GO(gtk_range_get_update_policy, iFp) +GO(gtk_range_get_upper_stepper_sensitivity, iFp) +GO(gtk_range_get_value, dFp) +GO(gtk_range_set_adjustment, vFpp) +GO(gtk_range_set_fill_level, vFpd) +GO(gtk_range_set_flippable, vFpi) +GO(gtk_range_set_increments, vFpdd) +GO(gtk_range_set_inverted, vFpi) +GO(gtk_range_set_lower_stepper_sensitivity, vFpi) +GO(gtk_range_set_min_slider_size, vFpi) +GO(gtk_range_set_range, vFpdd) +GO(gtk_range_set_restrict_to_fill_level, vFpi) +GO(gtk_range_set_round_digits, vFpi) +GO(gtk_range_set_show_fill_level, vFpi) +GO(gtk_range_set_slider_size_fixed, vFpi) +GO(gtk_range_set_update_policy, vFpi) +GO(gtk_range_set_upper_stepper_sensitivity, vFpi) +GO(gtk_range_set_value, vFpd) +GO(gtk_rc_add_class_style, vFpp) +GO(gtk_rc_add_default_file, vFp) +GO(gtk_rc_add_widget_class_style, vFpp) +GO(gtk_rc_add_widget_name_style, vFpp) +GO(gtk_rc_find_module_in_path, pFp) +GO(gtk_rc_find_pixmap_in_path, pFppp) +GO(gtk_rc_flags_get_type, iFv) +GO(gtk_rc_get_default_files, pFv) +GO(gtk_rc_get_im_module_file, pFv) +GO(gtk_rc_get_im_module_path, pFv) +GO(gtk_rc_get_module_dir, pFv) +GO(gtk_rc_get_style, pFp) +GO(gtk_rc_get_style_by_paths, pFpppi) +GO(gtk_rc_get_theme_dir, pFv) +GO(gtk_rc_parse, vFp) +GO(gtk_rc_parse_color, uFpp) +GO(gtk_rc_parse_color_full, uFppp) +GO(gtk_rc_parse_priority, iFpp) +GO(gtk_rc_parse_state, uFpp) +GO(gtk_rc_parse_string, vFp) +GO(gtk_rc_property_parse_border, iFppp) +GO(gtk_rc_property_parse_color, iFppp) +GO(gtk_rc_property_parse_enum, iFppp) +GO(gtk_rc_property_parse_flags, iFppp) +GO(gtk_rc_property_parse_requisition, iFppp) +GO(gtk_rc_reparse_all, iFv) +GO(gtk_rc_reparse_all_for_settings, iFpi) +GO(gtk_rc_reset_styles, vFp) +GO(gtk_rc_scanner_new, pFv) +GO(gtk_rc_set_default_files, vFp) +GO(gtk_rc_style_copy, pFp) +GO(gtk_rc_style_get_type, iFv) +GO(gtk_rc_style_new, pFv) +GO(gtk_rc_style_ref, vFp) +GO(gtk_rc_style_unref, vFp) +GO(gtk_rc_token_type_get_type, iFv) +//GO(gtk_recent_action_get_show_numbers, +GO(gtk_recent_action_get_type, iFv) +//GO(gtk_recent_action_new, +//GO(gtk_recent_action_new_for_manager, +//GO(gtk_recent_action_set_show_numbers, +//GO(gtk_recent_chooser_add_filter, +GO(gtk_recent_chooser_dialog_get_type, iFv) +//GO(gtk_recent_chooser_dialog_new, +//GO(gtk_recent_chooser_dialog_new_for_manager, +GO(gtk_recent_chooser_error_get_type, iFv) +//GO(gtk_recent_chooser_error_quark, +//GO(gtk_recent_chooser_get_current_item, +//GO(gtk_recent_chooser_get_current_uri, +//GO(gtk_recent_chooser_get_filter, +//GO(gtk_recent_chooser_get_items, +//GO(gtk_recent_chooser_get_limit, +//GO(gtk_recent_chooser_get_local_only, +//GO(gtk_recent_chooser_get_select_multiple, +//GO(gtk_recent_chooser_get_show_icons, +//GO(gtk_recent_chooser_get_show_not_found, +//GO(gtk_recent_chooser_get_show_numbers, +//GO(gtk_recent_chooser_get_show_private, +//GO(gtk_recent_chooser_get_show_tips, +//GO(gtk_recent_chooser_get_sort_type, +GO(gtk_recent_chooser_get_type, iFv) +//GO(gtk_recent_chooser_get_uris, +//GO(gtk_recent_chooser_list_filters, +//GO(gtk_recent_chooser_menu_get_show_numbers, +GO(gtk_recent_chooser_menu_get_type, iFv) +//GO(gtk_recent_chooser_menu_new, +//GO(gtk_recent_chooser_menu_new_for_manager, +//GO(gtk_recent_chooser_menu_set_show_numbers, +//GO(gtk_recent_chooser_remove_filter, +//GO(gtk_recent_chooser_select_all, +//GO(gtk_recent_chooser_select_uri, +//GO(gtk_recent_chooser_set_current_uri, +//GO(gtk_recent_chooser_set_filter, +//GO(gtk_recent_chooser_set_limit, +//GO(gtk_recent_chooser_set_local_only, +//GO(gtk_recent_chooser_set_select_multiple, +//GO(gtk_recent_chooser_set_show_icons, +//GO(gtk_recent_chooser_set_show_not_found, +//GO(gtk_recent_chooser_set_show_numbers, +//GO(gtk_recent_chooser_set_show_private, +//GO(gtk_recent_chooser_set_show_tips, +//GO(gtk_recent_chooser_set_sort_func, +//GO(gtk_recent_chooser_set_sort_type, +//GO(gtk_recent_chooser_unselect_all, +//GO(gtk_recent_chooser_unselect_uri, +GO(gtk_recent_chooser_widget_get_type, iFv) +//GO(gtk_recent_chooser_widget_new, +//GO(gtk_recent_chooser_widget_new_for_manager, +GO(gtk_recent_filter_add_age, vFpi) +GO(gtk_recent_filter_add_application, vFpp) +//GOM(gtk_recent_filter_add_custom, vFEpippp) +GO(gtk_recent_filter_add_group, vFpp) +GO(gtk_recent_filter_add_mime_type, vFpp) +GO(gtk_recent_filter_add_pattern, vFpp) +GO(gtk_recent_filter_add_pixbuf_formats, vFp) +GO(gtk_recent_filter_filter, iFpp) +GO(gtk_recent_filter_flags_get_type, iFv) +GO(gtk_recent_filter_get_name, pFp) +GO(gtk_recent_filter_get_needed, iFp) +GO(gtk_recent_filter_get_type, iFv) +GO(gtk_recent_filter_new, pFv) +GO(gtk_recent_filter_set_name, vFpp) +GO(gtk_recent_info_exists, iFp) +GO(gtk_recent_info_get_added, uFp) +GO(gtk_recent_info_get_age, iFp) +GO(gtk_recent_info_get_application_info, iFppppp) +GO(gtk_recent_info_get_applications, pFpp) +GO(gtk_recent_info_get_description, pFp) +GO(gtk_recent_info_get_display_name, pFp) +GO(gtk_recent_info_get_groups, pFpp) +GO(gtk_recent_info_get_icon, pFpi) +GO(gtk_recent_info_get_mime_type, pFp) +GO(gtk_recent_info_get_modified, lFp) +GO(gtk_recent_info_get_private_hint, iFp) +GO(gtk_recent_info_get_short_name, pFp) +GO(gtk_recent_info_get_type, iFv) +GO(gtk_recent_info_get_uri, pFp) +GO(gtk_recent_info_get_uri_display, pFp) +GO(gtk_recent_info_get_visited, lFp) +GO(gtk_recent_info_has_application, iFpp) +GO(gtk_recent_info_has_group, iFpp) +GO(gtk_recent_info_is_local, iFp) +GO(gtk_recent_info_last_application, pFp) +GO(gtk_recent_info_match, iFpp) +GO(gtk_recent_info_ref, pFp) +GO(gtk_recent_info_unref, vFp) +GO(gtk_recent_manager_add_full, iFppp) +GO(gtk_recent_manager_add_item, iFpp) +GO(gtk_recent_manager_error_get_type, iFv) +GO(gtk_recent_manager_error_quark, pFv) +GO(gtk_recent_manager_get_default, pFv) +GO(gtk_recent_manager_get_for_screen, pFp) +GO(gtk_recent_manager_get_items, pFp) +GO(gtk_recent_manager_get_limit, iFp) +GO(gtk_recent_manager_get_type, iFv) +GO(gtk_recent_manager_has_item, iFpp) +GO(gtk_recent_manager_lookup_item, pFppp) +GO(gtk_recent_manager_move_item, iFpppp) +GO(gtk_recent_manager_new, pFv) +GO(gtk_recent_manager_purge_items, iFpp) +GO(gtk_recent_manager_remove_item, iFppp) +GO(gtk_recent_manager_set_limit, vFpi) +GO(gtk_recent_manager_set_screen, vFpp) +GO(gtk_recent_sort_type_get_type, iFv) +GO(gtk_relief_style_get_type, iFv) +GO(gtk_requisition_copy, pFp) +GO(gtk_requisition_free, vFp) +GO(gtk_requisition_get_type, iFv) +GO(gtk_resize_mode_get_type, iFv) +GO(gtk_response_type_get_type, iFv) +//GO(gtk_rgb_to_hsv, +//GO(gtk_ruler_draw_pos, +//GO(gtk_ruler_draw_ticks, +//GO(gtk_ruler_get_metric, +//GO(gtk_ruler_get_range, +GO(gtk_ruler_get_type, iFv) +//GO(gtk_ruler_set_metric, +//GO(gtk_ruler_set_range, +//GO(gtk_scale_add_mark, +//GO(gtk_scale_button_get_adjustment, +//GO(gtk_scale_button_get_minus_button, +//GO(gtk_scale_button_get_orientation, +//GO(gtk_scale_button_get_plus_button, +//GO(gtk_scale_button_get_popup, +GO(gtk_scale_button_get_type, iFv) +//GO(gtk_scale_button_get_value, +//GO(gtk_scale_button_new, +//GO(gtk_scale_button_set_adjustment, +//GO(gtk_scale_button_set_icons, +//GO(gtk_scale_button_set_orientation, +//GO(gtk_scale_button_set_value, +//GO(gtk_scale_clear_marks, +//GO(gtk_scale_get_digits, +//GO(gtk_scale_get_draw_value, +//GO(gtk_scale_get_layout, +//GO(gtk_scale_get_layout_offsets, +GO(gtk_scale_get_type, iFv) +//GO(gtk_scale_get_value_pos, +//GO(gtk_scale_set_digits, +//GO(gtk_scale_set_draw_value, +//GO(gtk_scale_set_value_pos, +GO(gtk_scrollbar_get_type, iFv) +GO(gtk_scrolled_window_add_with_viewport, vFpp) +GO(gtk_scrolled_window_get_hadjustment, pFp) +GO(gtk_scrolled_window_get_hscrollbar, pFp) +GO(gtk_scrolled_window_get_placement, iFp) +GO(gtk_scrolled_window_get_policy, vFppp) +GO(gtk_scrolled_window_get_shadow_type, iFp) +GO(gtk_scrolled_window_get_type, iFv) +GO(gtk_scrolled_window_get_vadjustment, pFp) +GO(gtk_scrolled_window_get_vscrollbar, pFp) +GO(gtk_scrolled_window_new, pFpp) +GO(gtk_scrolled_window_set_hadjustment, vFpp) +GO(gtk_scrolled_window_set_placement, vFpi) +GO(gtk_scrolled_window_set_policy, vFpii) +GO(gtk_scrolled_window_set_shadow_type, vFpi) +GO(gtk_scrolled_window_set_vadjustment, vFpp) +GO(gtk_scrolled_window_unset_placement, vFp) +GO(gtk_scroll_step_get_type, iFv) +GO(gtk_scroll_type_get_type, iFv) +GO(gtk_selection_add_target, vFpppu) +GO(gtk_selection_add_targets, vFpppu) +GO(gtk_selection_clear, iFpp) +GO(gtk_selection_clear_targets, vFpp) +GO(gtk_selection_convert, iFpppu) +GO(gtk_selection_data_copy, pFp) +GO(gtk_selection_data_free, vFp) +GO(gtk_selection_data_get_data, pFp) +GO(gtk_selection_data_get_data_type, iFp) +GO(gtk_selection_data_get_display, pFp) +GO(gtk_selection_data_get_format, iFp) +GO(gtk_selection_data_get_length, iFp) +GO(gtk_selection_data_get_pixbuf, pFp) +GO(gtk_selection_data_get_selection, pFp) +GO(gtk_selection_data_get_target, pFp) +GO(gtk_selection_data_get_targets, iFppp) +GO(gtk_selection_data_get_text, pFp) +GO(gtk_selection_data_get_type, iFv) +GO(gtk_selection_data_get_uris, pFp) +GO(gtk_selection_data_set, vFppipi) +GO(gtk_selection_data_set_pixbuf, iFpp) +GO(gtk_selection_data_set_text, iFppi) +GO(gtk_selection_data_set_uris, iFpp) +GO(gtk_selection_data_targets_include_image, iFpi) +GO(gtk_selection_data_targets_include_rich_text, iFpp) +GO(gtk_selection_data_targets_include_text, iFp) +GO(gtk_selection_data_targets_include_uri, iFp) +GO(gtk_selection_mode_get_type, iFv) +GO(gtk_selection_owner_set, iFppu) +GO(gtk_selection_owner_set_for_display, iFpppu) +GO(gtk_selection_remove_all, vFp) +GO(gtk_sensitivity_type_get_type, iFv) +GO(gtk_separator_get_type, iFv) +GO(gtk_separator_menu_item_get_type, iFv) +GO(gtk_separator_menu_item_new, pFv) +GO(gtk_separator_tool_item_get_draw, iFp) +GO(gtk_separator_tool_item_get_type, iFv) +GO(gtk_separator_tool_item_new, pFv) +GO(gtk_separator_tool_item_set_draw, vFpi) +GO(gtk_set_locale, pFv) +GO(gtk_settings_get_default, pFv) +GO(gtk_settings_get_for_screen, pFp) +GO(gtk_settings_get_type, iFv) +GO(gtk_settings_install_property, vFp) +//GOM(gtk_settings_install_property_parser, vFEpB) +GO(gtk_settings_set_double_property, vFppdp) +GO(gtk_settings_set_long_property, vFpplp) +GO(gtk_settings_set_property_value, vFppp) //TODO: GtkSettingsValue needs alignment too! +GO(gtk_settings_set_string_property, vFpppp) +GO(gtk_shadow_type_get_type, iFv) +//GO(gtk_show_about_dialog, +GO(gtk_show_uri, iFppup) +GO(gtk_side_type_get_type, iFv) +//GO(gtk_signal_compat_matched, +GOM(gtk_signal_connect_full, LFEppppppii) +//GO(gtk_signal_connect_object_while_alive, +//GO(gtk_signal_connect_while_alive, +//GO(gtk_signal_emit, +//GO(gtk_signal_emit_by_name, +//GO(gtk_signal_emit_stop_by_name, +//GO(gtk_signal_emitv, +//GO(gtk_signal_emitv_by_name, +//GO(gtk_signal_new, +//GO(gtk_signal_newv, +GO(gtk_signal_run_type_get_type, iFv) +//GO(gtk_size_group_add_widget, +//GO(gtk_size_group_get_ignore_hidden, +//GO(gtk_size_group_get_mode, +GO(gtk_size_group_get_type, iFv) +//GO(gtk_size_group_get_widgets, +GO(gtk_size_group_mode_get_type, iFv) +//GO(gtk_size_group_new, +//GO(gtk_size_group_remove_widget, +//GO(gtk_size_group_set_ignore_hidden, +//GO(gtk_size_group_set_mode, +GO(gtk_socket_add_id, vFpp) +GO(gtk_socket_get_id, pFp) +GO(gtk_socket_get_plug_window, pFp) +GO(gtk_socket_get_type, iFv) +GO(gtk_socket_new, pFv) +GO(gtk_socket_steal, vFpp) +GO(gtk_sort_type_get_type, iFv) +GO(gtk_spin_button_configure, vFppdu) +GO(gtk_spin_button_get_adjustment, pFp) +GO(gtk_spin_button_get_digits, uFp) +GO(gtk_spin_button_get_increments, vFppp) +GO(gtk_spin_button_get_numeric, iFp) +GO(gtk_spin_button_get_range, vFppp) +GO(gtk_spin_button_get_snap_to_ticks, iFp) +GO(gtk_spin_button_get_type, iFv) +GO(gtk_spin_button_get_update_policy, iFp) +GO(gtk_spin_button_get_value, dFp) +GO(gtk_spin_button_get_value_as_int, iFp) +GO(gtk_spin_button_get_wrap, iFp) +GO(gtk_spin_button_new, pFpdu) +GO(gtk_spin_button_new_with_range, pFddd) +GO(gtk_spin_button_set_adjustment, vFpp) +GO(gtk_spin_button_set_digits, vFpu) +GO(gtk_spin_button_set_increments, vFpdd) +GO(gtk_spin_button_set_numeric, vFpi) +GO(gtk_spin_button_set_range, vFpdd) +GO(gtk_spin_button_set_snap_to_ticks, vFpi) +GO(gtk_spin_button_set_update_policy, vFpi) +GO(gtk_spin_button_set_value, vFpd) +GO(gtk_spin_button_set_wrap, vFpi) +GO(gtk_spin_button_spin, vFpid) +GO(gtk_spin_button_update, vFp) +GO(gtk_spin_button_update_policy_get_type, iFv) +GO(gtk_spinner_get_type, iFv) +GO(gtk_spinner_new, pFv) +GO(gtk_spinner_start, vFp) +GO(gtk_spinner_stop, vFp) +GO(gtk_spin_type_get_type, iFv) +GO(gtk_state_type_get_type, iFv) +GO(gtk_statusbar_get_context_id, uFpp) +GO(gtk_statusbar_get_has_resize_grip, iFp) +GO(gtk_statusbar_get_message_area, pFp) +GO(gtk_statusbar_get_type, iFv) +GO(gtk_statusbar_new, pFv) +GO(gtk_statusbar_pop, vFpu) +GO(gtk_statusbar_push, uFpup) +GO(gtk_statusbar_remove, vFpuu) +GO(gtk_statusbar_remove_all, vFpu) +GO(gtk_statusbar_set_has_resize_grip, vFpi) +GO(gtk_status_icon_get_blinking, iFp) +GO(gtk_status_icon_get_geometry, iFpppp) +GO(gtk_status_icon_get_gicon, pFp) +GO(gtk_status_icon_get_has_tooltip, iFp) +GO(gtk_status_icon_get_icon_name, pFp) +GO(gtk_status_icon_get_pixbuf, pFp) +GO(gtk_status_icon_get_screen, pFp) +GO(gtk_status_icon_get_size, iFp) +GO(gtk_status_icon_get_stock, pFp) +GO(gtk_status_icon_get_storage_type, iFp) +GO(gtk_status_icon_get_title, pFp) +GO(gtk_status_icon_get_tooltip_markup, pFp) +GO(gtk_status_icon_get_tooltip_text, pFp) +GO(gtk_status_icon_get_type, iFv) +GO(gtk_status_icon_get_visible, iFp) +GO(gtk_status_icon_get_x11_window_id, uFp) +GO(gtk_status_icon_is_embedded, iFp) +GO(gtk_status_icon_new, pFv) +GO(gtk_status_icon_new_from_file, pFp) +GO(gtk_status_icon_new_from_gicon, pFp) +GO(gtk_status_icon_new_from_icon_name, pFp) +GO(gtk_status_icon_new_from_pixbuf, pFp) +GO(gtk_status_icon_new_from_stock, pFp) +GO(gtk_status_icon_position_menu, vFppppp) +GO(gtk_status_icon_set_blinking, vFpi) +GO(gtk_status_icon_set_from_file, vFpp) +GO(gtk_status_icon_set_from_gicon, vFpp) +GO(gtk_status_icon_set_from_icon_name, vFpp) +GO(gtk_status_icon_set_from_pixbuf, vFpp) +GO(gtk_status_icon_set_from_stock, vFpp) +GO(gtk_status_icon_set_has_tooltip, vFpi) +GO(gtk_status_icon_set_name, vFpp) +GO(gtk_status_icon_set_screen, vFpp) +GO(gtk_status_icon_set_title, vFpp) +GO(gtk_status_icon_set_tooltip, vFpp) +GO(gtk_status_icon_set_tooltip_markup, vFpp) +GO(gtk_status_icon_set_tooltip_text, vFpp) +GO(gtk_status_icon_set_visible, vFpi) +GO(gtk_stock_add, vFpu) +GO(gtk_stock_add_static, vFpu) +GO(gtk_stock_item_copy, pFp) +GO(gtk_stock_item_free, vFp) +GO(gtk_stock_list_ids, pFv) +GO(gtk_stock_lookup, iFpp) +GOM(gtk_stock_set_translate_func, vFEpppp) +GO(gtk_style_apply_default_background, vFppiipiiii) +GO(gtk_style_attach, pFpp) +GO(gtk_style_copy, pFp) +GO(gtk_style_detach, vFp) +GO(gtk_style_get, vFpippppppppppp) //vaarg, wrap with gtk_style_get_valist? +GO(gtk_style_get_font, pFp) +GO(gtk_style_get_style_property, vFpipp) +GO(gtk_style_get_type, iFv) +//GO(gtk_style_get_valist, vFpipp) +GO(gtk_style_lookup_color, iFppp) +GO(gtk_style_lookup_icon_set, pFpp) +GO(gtk_style_new, pFv) +GO(gtk_style_ref, pFp) +GO(gtk_style_render_icon, pFppiiipp) +GO(gtk_style_set_background, vFppi) +GO(gtk_style_set_font, vFpp) +GO(gtk_style_unref, vFp) +GO(gtk_submenu_direction_get_type, iFv) +GO(gtk_submenu_placement_get_type, iFv) +GO(gtk_table_attach, vFppuuuuiiuu) +GO(gtk_table_attach_defaults, vFppuuuu) +GO(gtk_table_get_col_spacing, uFpu) +GO(gtk_table_get_default_col_spacing, uFp) +GO(gtk_table_get_default_row_spacing, uFp) +GO(gtk_table_get_homogeneous, iFp) +GO(gtk_table_get_row_spacing, uFpu) +GO(gtk_table_get_size, vFppp) +GO(gtk_table_get_type, iFv) +GO(gtk_table_new, pFuui) +GO(gtk_table_resize, vFpuu) +GO(gtk_table_set_col_spacing, vFpuu) +GO(gtk_table_set_col_spacings, vFpu) +GO(gtk_table_set_homogeneous, vFpi) +GO(gtk_table_set_row_spacing, vFpuu) +GO(gtk_table_set_row_spacings, vFpu) +GO(gtk_target_flags_get_type, iFv) +GO(gtk_target_list_add, vFppuu) +GO(gtk_target_list_add_image_targets, vFpui) +GO(gtk_target_list_add_rich_text_targets, vFpuip) +GO(gtk_target_list_add_table, vFppu) +GO(gtk_target_list_add_text_targets, vFpu) +GO(gtk_target_list_add_uri_targets, vFpu) +GO(gtk_target_list_find, iFppp) +GO(gtk_target_list_get_type, iFv) +GO(gtk_target_list_new, pFpu) +GO(gtk_target_list_ref, pFp) +GO(gtk_target_list_remove, iFppp) +GO(gtk_target_list_unref, vFp) +GO(gtk_targets_include_image, iFpii) +GO(gtk_targets_include_rich_text, iFpip) +GO(gtk_targets_include_text, iFpi) +GO(gtk_targets_include_uri, iFpi) +GO(gtk_target_table_free, vFpi) +GO(gtk_target_table_new_from_list, pFpp) +GO(gtk_tearoff_menu_item_get_type, iFv) +GO(gtk_tearoff_menu_item_new, pFv) +//GO(gtk_test_create_simple_window, +//GO(gtk_test_create_widget, +//GO(gtk_test_display_button_window, +//GO(gtk_test_find_label, +//GO(gtk_test_find_sibling, +//GO(gtk_test_find_widget, +//GO(gtk_test_init, +//GO(gtk_test_list_all_types, +//GO(gtk_test_register_all_types, +//GO(gtk_test_slider_get_value, +//GO(gtk_test_slider_set_perc, +//GO(gtk_test_spin_button_click, +//GO(gtk_test_text_get, +//GO(gtk_test_text_set, +//GO(gtk_test_widget_click, +//GO(gtk_test_widget_send_key, +GO(gtk_text_anchored_child_set_layout, vFpp) +GO(gtk_text_attributes_copy, pFp) +GO(gtk_text_attributes_copy_values, vFpp) +GO(gtk_text_attributes_get_type, iFv) +GO(gtk_text_attributes_new, pFv) +GO(gtk_text_attributes_ref, pFp) +GO(gtk_text_attributes_unref, vFp) +GO(gtk_text_backward_delete, iFpu) +GO(gtk_text_buffer_add_mark, vFpp) +GO(gtk_text_buffer_add_selection_clipboard, vFpp) +GO(gtk_text_buffer_apply_tag, vFpppp) +GO(gtk_text_buffer_apply_tag_by_name, vFpp) +GO(gtk_text_buffer_backspace, iFppii) +GO(gtk_text_buffer_begin_user_action, vFp) +GO(gtk_text_buffer_copy_clipboard, vFpp) +GO(gtk_text_buffer_create_child_anchor, pFpp) +GO(gtk_text_buffer_create_mark, pFpppi) +GO(gtk_text_buffer_create_tag, pFppppppppppppppp) //vaarg after 3 p +GO(gtk_text_buffer_cut_clipboard, vFppi) +GO(gtk_text_buffer_delete, vFppp) +GO(gtk_text_buffer_delete_interactive, iFpppi) +GO(gtk_text_buffer_delete_mark, vFpp) +GO(gtk_text_buffer_delete_mark_by_name, vFpp) +GO(gtk_text_buffer_delete_selection, iFpii) +GO(gtk_text_buffer_deserialize, iFpppppup) +GO(gtk_text_buffer_deserialize_get_can_create_tags, iFpp) +GO(gtk_text_buffer_deserialize_set_can_create_tags, vFppi) +GO(gtk_text_buffer_end_user_action, vFp) +GO(gtk_text_buffer_get_bounds, vFppp) +GO(gtk_text_buffer_get_char_count, iFp) +GO(gtk_text_buffer_get_copy_target_list, pFp) +GO(gtk_text_buffer_get_deserialize_formats, pFpp) +GO(gtk_text_buffer_get_end_iter, vFpp) +GO(gtk_text_buffer_get_has_selection, iFp) +GO(gtk_text_buffer_get_insert, pFp) +GO(gtk_text_buffer_get_iter_at_child_anchor, vFppp) +GO(gtk_text_buffer_get_iter_at_line, vFppi) +GO(gtk_text_buffer_get_iter_at_line_index, vFppii) +GO(gtk_text_buffer_get_iter_at_line_offset, vFppii) +GO(gtk_text_buffer_get_iter_at_mark, vFppp) +GO(gtk_text_buffer_get_iter_at_offset, vFppi) +GO(gtk_text_buffer_get_line_count, iFp) +GO(gtk_text_buffer_get_mark, pFpp) +GO(gtk_text_buffer_get_modified, iFp) +GO(gtk_text_buffer_get_paste_target_list, pFp) +GO(gtk_text_buffer_get_selection_bound, pFp) +GO(gtk_text_buffer_get_selection_bounds, iFppp) +GO(gtk_text_buffer_get_serialize_formats, pFpp) +GO(gtk_text_buffer_get_slice, pFpppi) +GO(gtk_text_buffer_get_start_iter, vFpp) +GO(gtk_text_buffer_get_tag_table, pFp) +GO(gtk_text_buffer_get_text, pFpppi) +GO(gtk_text_buffer_get_type, iFv) +GO(gtk_text_buffer_insert, vFpppi) +GO(gtk_text_buffer_insert_at_cursor, vFppi) +GO(gtk_text_buffer_insert_child_anchor, vFppp) +GO(gtk_text_buffer_insert_interactive, iFpppii) +GO(gtk_text_buffer_insert_interactive_at_cursor, iFppii) +GO(gtk_text_buffer_insert_pixbuf, vFppp) +GO(gtk_text_buffer_insert_range, vFpppp) +GO(gtk_text_buffer_insert_range_interactive, iFppppi) +GO(gtk_text_buffer_insert_with_tags, vFpppipppppppppppppp) +GO(gtk_text_buffer_insert_with_tags_by_name, vFpppippppppppppp) +GO(gtk_text_buffer_move_mark, vFppp) +GO(gtk_text_buffer_move_mark_by_name, vFppp) +GO(gtk_text_buffer_new, pFp) +GO(gtk_text_buffer_paste_clipboard, vFpppi) +GO(gtk_text_buffer_place_cursor, vFpp) +//GOM(gtk_text_buffer_register_deserialize_format, pFEppBpB) +GO(gtk_text_buffer_register_deserialize_tagset, pFpp) +//GOM(gtk_text_buffer_register_serialize_format, pFppBpB) +GO(gtk_text_buffer_register_serialize_tagset, pFpp) +GO(gtk_text_buffer_remove_all_tags, vFppp) +GO(gtk_text_buffer_remove_selection_clipboard, vFpp) +GO(gtk_text_buffer_remove_tag, vFpppp) +GO(gtk_text_buffer_remove_tag_by_name, vFpppp) +GO(gtk_text_buffer_select_range, vFppp) +GO(gtk_text_buffer_serialize, pFpppppp) +GO(gtk_text_buffer_set_modified, vFpi) +GO(gtk_text_buffer_set_text, vFppi) +GO(gtk_text_buffer_target_info_get_type, iFv) +GO(gtk_text_buffer_unregister_deserialize_format, vFpp) +GO(gtk_text_buffer_unregister_serialize_format, vFpp) +GO(gtk_text_byte_begins_utf8_char, iFp) +GO(gtk_text_child_anchor_get_deleted, iFp) +GO(gtk_text_child_anchor_get_type, iFv) +GO(gtk_text_child_anchor_get_widgets, pFp) +GO(gtk_text_child_anchor_new, pFv) +GO(gtk_text_child_anchor_queue_resize, vFpp) +GO(gtk_text_child_anchor_register_child, vFppp) +GO(gtk_text_child_anchor_unregister_child, vFpp) +GO(gtk_text_direction_get_type, iFv) +GO(gtk_text_forward_delete, iFpu) +GO(gtk_text_freeze, vFp) +GO(gtk_text_get_length, uFp) +GO(gtk_text_get_point, uFp) +GO(gtk_text_get_type, iFv) +GO(gtk_text_insert, vFpppppi) +GO(gtk_text_iter_backward_char, iFp) +GO(gtk_text_iter_backward_chars, iFpi) +GO(gtk_text_iter_backward_cursor_position, iFp) +GO(gtk_text_iter_backward_cursor_positions, iFpi) +GOM(gtk_text_iter_backward_find_char, iFEpppp) +GO(gtk_text_iter_backward_line, iFp) +GO(gtk_text_iter_backward_lines, iFpi) +GO(gtk_text_iter_backward_search, iFppuppp) +GO(gtk_text_iter_backward_sentence_start, iFp) +GO(gtk_text_iter_backward_sentence_starts, iFpi) +GO(gtk_text_iter_backward_to_tag_toggle, iFpp) +GO(gtk_text_iter_backward_visible_cursor_position, iFp) +GO(gtk_text_iter_backward_visible_cursor_positions, iFpi) +GO(gtk_text_iter_backward_visible_line, iFp) +GO(gtk_text_iter_backward_visible_lines, iFpi) +GO(gtk_text_iter_backward_visible_word_start, iFp) +GO(gtk_text_iter_backward_visible_word_starts, iFpi) +GO(gtk_text_iter_backward_word_start, iFp) +GO(gtk_text_iter_backward_word_starts, iFpi) +GO(gtk_text_iter_begins_tag, iFpp) +GO(gtk_text_iter_can_insert, iFpi) +GO(gtk_text_iter_compare, iFpp) +GO(gtk_text_iter_copy, pFp) +GO(gtk_text_iter_editable, iFpi) +GO(gtk_text_iter_ends_line, iFp) +GO(gtk_text_iter_ends_sentence, iFp) +GO(gtk_text_iter_ends_tag, iFpp) +GO(gtk_text_iter_ends_word, iFp) +GO(gtk_text_iter_equal, iFpp) +GO(gtk_text_iter_forward_char, iFp) +GO(gtk_text_iter_forward_chars, iFpi) +GO(gtk_text_iter_forward_cursor_position, iFp) +GO(gtk_text_iter_forward_cursor_positions, iFpi) +GOM(gtk_text_iter_forward_find_char, iFEpppp) +GO(gtk_text_iter_forward_line, iFp) +GO(gtk_text_iter_forward_lines, iFpi) +GO(gtk_text_iter_forward_search, iFppuppp) +GO(gtk_text_iter_forward_sentence_end, iFp) +GO(gtk_text_iter_forward_sentence_ends, iFpi) +GO(gtk_text_iter_forward_to_end, iFp) +GO(gtk_text_iter_forward_to_line_end, iFp) +GO(gtk_text_iter_forward_to_tag_toggle, iFpp) +GO(gtk_text_iter_forward_visible_cursor_position, iFp) +GO(gtk_text_iter_forward_visible_cursor_positions, iFpi) +GO(gtk_text_iter_forward_visible_line, iFp) +GO(gtk_text_iter_forward_visible_lines, iFpi) +GO(gtk_text_iter_forward_visible_word_end, iFp) +GO(gtk_text_iter_forward_visible_word_ends, iFpi) +GO(gtk_text_iter_forward_word_end, iFp) +GO(gtk_text_iter_forward_word_ends, iFpi) +GO(gtk_text_iter_free, vFp) +GO(gtk_text_iter_get_attributes, iFpp) +GO(gtk_text_iter_get_buffer, pFp) +GO(gtk_text_iter_get_bytes_in_line, iFp) +GO(gtk_text_iter_get_char, uFp) +GO(gtk_text_iter_get_chars_in_line, iFp) +GO(gtk_text_iter_get_child_anchor, pFp) +GO(gtk_text_iter_get_language, pFp) +GO(gtk_text_iter_get_line, iFp) +GO(gtk_text_iter_get_line_index, iFp) +GO(gtk_text_iter_get_line_offset, iFp) +GO(gtk_text_iter_get_marks, pFp) +GO(gtk_text_iter_get_offset, iFp) +GO(gtk_text_iter_get_pixbuf, pFp) +GO(gtk_text_iter_get_slice, pFpp) +GO(gtk_text_iter_get_tags, pFp) +GO(gtk_text_iter_get_text, pFpp) +GO(gtk_text_iter_get_toggled_tags, pFpi) +GO(gtk_text_iter_get_type, iFv) +GO(gtk_text_iter_get_visible_line_index, iFp) +GO(gtk_text_iter_get_visible_line_offset, iFp) +GO(gtk_text_iter_get_visible_slice, pFpp) +GO(gtk_text_iter_get_visible_text, pFpp) +GO(gtk_text_iter_has_tag, iFpp) +GO(gtk_text_iter_in_range, iFppp) +GO(gtk_text_iter_inside_sentence, iFp) +GO(gtk_text_iter_inside_word, iFp) +GO(gtk_text_iter_is_cursor_position, iFp) +GO(gtk_text_iter_is_end, iFp) +GO(gtk_text_iter_is_start, iFp) +GO(gtk_text_iter_order, vFpp) +GO(gtk_text_iter_set_line, vFpi) +GO(gtk_text_iter_set_line_index, vFpi) +GO(gtk_text_iter_set_line_offset, vFpi) +GO(gtk_text_iter_set_offset, vFpi) +GO(gtk_text_iter_set_visible_line_index, vFpi) +GO(gtk_text_iter_set_visible_line_offset, vFpi) +GO(gtk_text_iter_starts_line, iFp) +GO(gtk_text_iter_starts_sentence, iFp) +GO(gtk_text_iter_starts_word, iFp) +GO(gtk_text_iter_toggles_tag, iFpp) +//GO(gtk_text_layout_changed, +//GO(gtk_text_layout_clamp_iter_to_vrange, +//GO(gtk_text_layout_cursors_changed, +//GO(gtk_text_layout_default_style_changed, +//GO(gtk_text_layout_draw, +//GO(gtk_text_layout_free_line_data, +//GO(gtk_text_layout_free_line_display, +//GO(gtk_text_layout_get_buffer, +//GO(gtk_text_layout_get_cursor_locations, +//GO(gtk_text_layout_get_cursor_visible, +//GO(gtk_text_layout_get_iter_at_line, +//GO(gtk_text_layout_get_iter_at_pixel, +//GO(gtk_text_layout_get_iter_at_position, +//GO(gtk_text_layout_get_iter_location, +//GO(gtk_text_layout_get_line_at_y, +//GO(gtk_text_layout_get_line_display, +//GO(gtk_text_layout_get_lines, +//GO(gtk_text_layout_get_line_yrange, +//GO(gtk_text_layout_get_size, +GO(gtk_text_layout_get_type, iFv) +//GO(gtk_text_layout_invalidate, +//GO(gtk_text_layout_invalidate_cursors, +//GO(gtk_text_layout_is_valid, +//GO(gtk_text_layout_iter_starts_line, +//GO(gtk_text_layout_move_iter_to_line_end, +//GO(gtk_text_layout_move_iter_to_next_line, +//GO(gtk_text_layout_move_iter_to_previous_line, +//GO(gtk_text_layout_move_iter_to_x, +//GO(gtk_text_layout_move_iter_visually, +//GO(gtk_text_layout_new, +//GO(gtk_text_layout_set_buffer, +//GO(gtk_text_layout_set_contexts, +//GO(gtk_text_layout_set_cursor_direction, +//GO(gtk_text_layout_set_cursor_visible, +//GO(gtk_text_layout_set_default_style, +//GO(gtk_text_layout_set_keyboard_direction, +//GO(gtk_text_layout_set_overwrite_mode, +//GO(gtk_text_layout_set_preedit_string, +//GO(gtk_text_layout_set_screen_width, +//GO(gtk_text_layout_spew, +//GO(gtk_text_layout_validate, +//GO(gtk_text_layout_validate_yrange, +//GO(gtk_text_layout_wrap, +//GO(gtk_text_layout_wrap_loop_end, +//GO(gtk_text_layout_wrap_loop_start, +//GO(gtk_text_line_segment_split, +GO(gtk_text_mark_get_buffer, pFp) +GO(gtk_text_mark_get_deleted, iFp) +GO(gtk_text_mark_get_left_gravity, iFp) +GO(gtk_text_mark_get_name, pFp) +GO(gtk_text_mark_get_type, iFv) +GO(gtk_text_mark_get_visible, iFp) +GO(gtk_text_mark_new, pFpi) +GO(gtk_text_mark_set_visible, vFpi) +GO(gtk_text_new, pFpp) +GO(gtk_text_search_flags_get_type, iFv) +GO(gtk_text_set_adjustments, vFppp) +GO(gtk_text_set_editable, vFpi) +GO(gtk_text_set_line_wrap, vFpi) +GO(gtk_text_set_point, vFpu) +GO(gtk_text_set_word_wrap, vFpi) +GO(gtk_text_tag_event, iFpppp) +GO(gtk_text_tag_get_priority, iFp) +GO(gtk_text_tag_get_type, iFv) +GO(gtk_text_tag_new, pFp) +GO(gtk_text_tag_set_priority, vFpi) +GO(gtk_text_tag_table_add, vFpp) +//GOM(gtk_text_tag_table_foreach, vFEpBp) +GO(gtk_text_tag_table_get_size, iFp) +GO(gtk_text_tag_table_get_type, iFv) +GO(gtk_text_tag_table_lookup, pFpp) +GO(gtk_text_tag_table_new, pFv) +GO(gtk_text_tag_table_remove, vFpp) +GO(gtk_text_thaw, vFp) +GO(gtk_text_view_add_child_at_anchor, vFppp) +GO(gtk_text_view_add_child_in_window, vFppiii) +GO(gtk_text_view_backward_display_line, iFpp) +GO(gtk_text_view_backward_display_line_start, iFpp) +GO(gtk_text_view_buffer_to_window_coords, vFpiiipp) +GO(gtk_text_view_forward_display_line, iFpp) +GO(gtk_text_view_forward_display_line_end, iFpp) +GO(gtk_text_view_get_accepts_tab, iFp) +GO(gtk_text_view_get_border_window_size, iFpi) +GO(gtk_text_view_get_buffer, pFp) +GO(gtk_text_view_get_cursor_visible, iFp) +GO(gtk_text_view_get_default_attributes, pFp) +GO(gtk_text_view_get_editable, iFp) +GO(gtk_text_view_get_hadjustment, pFp) +GO(gtk_text_view_get_indent, iFp) +GO(gtk_text_view_get_iter_at_location, vFppii) +GO(gtk_text_view_get_iter_at_position, vFpppii) +GO(gtk_text_view_get_iter_location, vFppp) +GO(gtk_text_view_get_justification, iFp) +GO(gtk_text_view_get_left_margin, iFp) +GO(gtk_text_view_get_line_at_y, vFppip) +GO(gtk_text_view_get_line_yrange, vFpppp) +GO(gtk_text_view_get_overwrite, iFp) +GO(gtk_text_view_get_pixels_above_lines, iFp) +GO(gtk_text_view_get_pixels_below_lines, iFp) +GO(gtk_text_view_get_pixels_inside_wrap, iFp) +GO(gtk_text_view_get_right_margin, iFp) +GO(gtk_text_view_get_tabs, pFp) +GO(gtk_text_view_get_type, iFv) +GO(gtk_text_view_get_vadjustment, pFp) +GO(gtk_text_view_get_visible_rect, vFpp) +GO(gtk_text_view_get_window, pFpi) +GO(gtk_text_view_get_window_type, iFpp) +GO(gtk_text_view_get_wrap_mode, iFp) +GO(gtk_text_view_im_context_filter_keypress, iFpp) +GO(gtk_text_view_move_child, vFppii) +GO(gtk_text_view_move_mark_onscreen, iFpp) +GO(gtk_text_view_move_visually, iFppi) +GO(gtk_text_view_new, pFv) +GO(gtk_text_view_new_with_buffer, pFp) +GO(gtk_text_view_place_cursor_onscreen, iFp) +GO(gtk_text_view_reset_im_context, vFp) +GO(gtk_text_view_scroll_mark_onscreen, vFpp) +GO(gtk_text_view_scroll_to_iter, iFppdidd) +GO(gtk_text_view_scroll_to_mark, vFppdidd) +GO(gtk_text_view_set_accepts_tab, vFpi) +GO(gtk_text_view_set_border_window_size, vFpii) +GO(gtk_text_view_set_buffer, vFpp) +GO(gtk_text_view_set_cursor_visible, vFpi) +GO(gtk_text_view_set_editable, vFpi) +GO(gtk_text_view_set_indent, vFpi) +GO(gtk_text_view_set_justification, vFpi) +GO(gtk_text_view_set_left_margin, vFpi) +GO(gtk_text_view_set_overwrite, vFpi) +GO(gtk_text_view_set_pixels_above_lines, vFpi) +GO(gtk_text_view_set_pixels_below_lines, vFpi) +GO(gtk_text_view_set_pixels_inside_wrap, vFpi) +GO(gtk_text_view_set_right_margin, vFpi) +GO(gtk_text_view_set_tabs, vFpp) +GO(gtk_text_view_set_wrap_mode, vFpi) +GO(gtk_text_view_starts_display_line, iFpp) +GO(gtk_text_view_window_to_buffer_coords, vFpiiipp) +GO(gtk_text_window_type_get_type, iFv) +//GO(gtk_theme_engine_create_rc_style, +//GO(gtk_theme_engine_get, +GO(gtk_theme_engine_get_type, iFv) +GOM(gtk_timeout_add, uFEupp) +//GOM(gtk_timeout_add_full, uFuBppB) +GO(gtk_timeout_remove, vFu) +GO(gtk_tips_query_get_type, iFv) +//GO(gtk_tips_query_new, +//GO(gtk_tips_query_set_caller, +//GO(gtk_tips_query_set_labels, +//GO(gtk_tips_query_start_query, +//GO(gtk_tips_query_stop_query, +//GO(gtk_toggle_action_get_active, +//GO(gtk_toggle_action_get_draw_as_radio, +GO(gtk_toggle_action_get_type, iFv) +//GO(gtk_toggle_action_new, +//GO(gtk_toggle_action_set_active, +//GO(gtk_toggle_action_set_draw_as_radio, +//GO(gtk_toggle_action_toggled, +GO(gtk_toggle_button_get_active, iFp) +GO(gtk_toggle_button_get_inconsistent, iFp) +GO(gtk_toggle_button_get_mode, iFp) +GO(gtk_toggle_button_get_type, iFv) +GO(gtk_toggle_button_new, pFv) +GO(gtk_toggle_button_new_with_label, pFp) +GO(gtk_toggle_button_new_with_mnemonic, pFp) +GO(gtk_toggle_button_set_active, vFpi) +GO(gtk_toggle_button_set_inconsistent, vFpi) +GO(gtk_toggle_button_set_mode, vFpi) +GO(gtk_toggle_button_toggled, vFp) +GO(gtk_toggle_tool_button_get_active, iFp) +GO(gtk_toggle_tool_button_get_type, iFv) +GO(gtk_toggle_tool_button_new, pFv) +GO(gtk_toggle_tool_button_new_from_stock, pFp) +GO(gtk_toggle_tool_button_set_active, vFpi) +GOM(gtk_toolbar_append_element, pFEpippppppp) +GOM(gtk_toolbar_append_item, pFEppppppp) +GO(gtk_toolbar_append_space, vFp) +GO(gtk_toolbar_append_widget, vFpppp) +GO(gtk_toolbar_child_type_get_type, iFv) +GO(gtk_toolbar_get_drop_index, iFpii) +GO(gtk_toolbar_get_icon_size, iFp) +GO(gtk_toolbar_get_item_index, iFpp) +GO(gtk_toolbar_get_n_items, iFp) +GO(gtk_toolbar_get_nth_item, pFpi) +GO(gtk_toolbar_get_orientation, iFp) +GO(gtk_toolbar_get_relief_style, iFp) +GO(gtk_toolbar_get_show_arrow, iFp) +GO(gtk_toolbar_get_style, iFp) +GO(gtk_toolbar_get_tooltips, iFp) +GO(gtk_toolbar_get_type, iFv) +GO(gtk_toolbar_insert, vFppi) +GOM(gtk_toolbar_insert_element, pFEpipppppppi) +GOM(gtk_toolbar_insert_item, pFEpppppppi) +GO(gtk_toolbar_insert_space, vFpi) +GOM(gtk_toolbar_insert_stock, pFEppppppi) +GO(gtk_toolbar_insert_widget, vFppppi) +GO(gtk_toolbar_new, pFv) +GOM(gtk_toolbar_prepend_element, pFEpippppppp) +GOM(gtk_toolbar_prepend_item, pFEppppppp) +GO(gtk_toolbar_prepend_space, vFp) +GO(gtk_toolbar_prepend_widget, vFpppp) +GO(gtk_toolbar_remove_space, vFpi) +GO(gtk_toolbar_set_drop_highlight_item, vFppi) +GO(gtk_toolbar_set_icon_size, vFpi) +GO(gtk_toolbar_set_orientation, vFpi) +GO(gtk_toolbar_set_show_arrow, vFpi) +GO(gtk_toolbar_set_style, vFpi) +GO(gtk_toolbar_set_tooltips, vFpi) +GO(gtk_toolbar_space_style_get_type, iFv) +GO(gtk_toolbar_style_get_type, iFv) +GO(gtk_toolbar_unset_icon_size, vFp) +GO(gtk_toolbar_unset_style, vFp) +GO(gtk_tool_button_get_icon_name, pFp) +GO(gtk_tool_button_get_icon_widget, pFp) +GO(gtk_tool_button_get_label, pFp) +GO(gtk_tool_button_get_label_widget, pFp) +GO(gtk_tool_button_get_stock_id, pFp) +GO(gtk_tool_button_get_type, iFv) +GO(gtk_tool_button_get_use_underline, iFp) +GO(gtk_tool_button_new, pFpp) +GO(gtk_tool_button_new_from_stock, pFp) +GO(gtk_tool_button_set_icon_name, vFpp) +GO(gtk_tool_button_set_icon_widget, vFpp) +GO(gtk_tool_button_set_label, vFpp) +GO(gtk_tool_button_set_label_widget, vFpp) +GO(gtk_tool_button_set_stock_id, vFpp) +GO(gtk_tool_button_set_use_underline, vFpi) +//GO(gtk_tool_item_get_ellipsize_mode, +//GO(gtk_tool_item_get_expand, +//GO(gtk_tool_item_get_homogeneous, +//GO(gtk_tool_item_get_icon_size, +//GO(gtk_tool_item_get_is_important, +//GO(gtk_tool_item_get_orientation, +//GO(gtk_tool_item_get_proxy_menu_item, +//GO(gtk_tool_item_get_relief_style, +//GO(gtk_tool_item_get_text_alignment, +//GO(gtk_tool_item_get_text_orientation, +//GO(gtk_tool_item_get_text_size_group, +//GO(gtk_tool_item_get_toolbar_style, +GO(gtk_tool_item_get_type, iFv) +//GO(gtk_tool_item_get_use_drag_window, +//GO(gtk_tool_item_get_visible_horizontal, +//GO(gtk_tool_item_get_visible_vertical, +//GO(gtk_tool_item_group_get_collapsed, +//GO(gtk_tool_item_group_get_drop_item, +//GO(gtk_tool_item_group_get_ellipsize, +//GO(gtk_tool_item_group_get_header_relief, +//GO(gtk_tool_item_group_get_item_position, +//GO(gtk_tool_item_group_get_label, +//GO(gtk_tool_item_group_get_label_widget, +//GO(gtk_tool_item_group_get_n_items, +//GO(gtk_tool_item_group_get_nth_item, +GO(gtk_tool_item_group_get_type, iFv) +//GO(gtk_tool_item_group_insert, +//GO(gtk_tool_item_group_new, +//GO(gtk_tool_item_group_set_collapsed, +//GO(gtk_tool_item_group_set_ellipsize, +//GO(gtk_tool_item_group_set_header_relief, +//GO(gtk_tool_item_group_set_item_position, +//GO(gtk_tool_item_group_set_label, +//GO(gtk_tool_item_group_set_label_widget, +//GO(gtk_tool_item_new, +//GO(gtk_tool_item_rebuild_menu, +//GO(gtk_tool_item_retrieve_proxy_menu_item, +//GO(gtk_tool_item_set_expand, +//GO(gtk_tool_item_set_homogeneous, +//GO(gtk_tool_item_set_is_important, +//GO(gtk_tool_item_set_proxy_menu_item, +//GO(gtk_tool_item_set_tooltip, +//GO(gtk_tool_item_set_tooltip_markup, +//GO(gtk_tool_item_set_tooltip_text, +//GO(gtk_tool_item_set_use_drag_window, +//GO(gtk_tool_item_set_visible_horizontal, +//GO(gtk_tool_item_set_visible_vertical, +//GO(gtk_tool_item_toolbar_reconfigured, +//GO(gtk_tool_palette_add_drag_dest, +GO(gtk_tool_palette_drag_targets_get_type, iFv) +//GO(gtk_tool_palette_get_drag_item, +//GO(gtk_tool_palette_get_drag_target_group, +//GO(gtk_tool_palette_get_drag_target_item, +//GO(gtk_tool_palette_get_drop_group, +//GO(gtk_tool_palette_get_drop_item, +//GO(gtk_tool_palette_get_exclusive, +//GO(gtk_tool_palette_get_expand, +//GO(gtk_tool_palette_get_group_position, +//GO(gtk_tool_palette_get_hadjustment, +//GO(gtk_tool_palette_get_icon_size, +//GO(gtk_tool_palette_get_style, +GO(gtk_tool_palette_get_type, iFv) +//GO(gtk_tool_palette_get_vadjustment, +//GO(gtk_tool_palette_new, +//GO(gtk_tool_palette_set_drag_source, +//GO(gtk_tool_palette_set_exclusive, +//GO(gtk_tool_palette_set_expand, +//GO(gtk_tool_palette_set_group_position, +//GO(gtk_tool_palette_set_icon_size, +//GO(gtk_tool_palette_set_style, +//GO(gtk_tool_palette_unset_icon_size, +//GO(gtk_tool_palette_unset_style, +//GO(gtk_tool_shell_get_ellipsize_mode, +//GO(gtk_tool_shell_get_icon_size, +//GO(gtk_tool_shell_get_orientation, +//GO(gtk_tool_shell_get_relief_style, +//GO(gtk_tool_shell_get_style, +//GO(gtk_tool_shell_get_text_alignment, +//GO(gtk_tool_shell_get_text_orientation, +//GO(gtk_tool_shell_get_text_size_group, +GO(gtk_tool_shell_get_type, iFv) +//GO(gtk_tool_shell_rebuild_menu, +GO(gtk_tooltip_get_type, iFv) +GO(gtk_tooltips_data_get, pFp) +GO(gtk_tooltips_disable, vFp) +GO(gtk_tooltips_enable, vFp) +//GO(gtk_tooltip_set_custom, +//GO(gtk_tooltip_set_icon, +//GO(gtk_tooltip_set_icon_from_gicon, +//GO(gtk_tooltip_set_icon_from_icon_name, +//GO(gtk_tooltip_set_icon_from_stock, +//GO(gtk_tooltip_set_markup, +//GO(gtk_tooltip_set_text, +//GO(gtk_tooltip_set_tip_area, +GO(gtk_tooltips_force_window, vFp) +GO(gtk_tooltips_get_info_from_tip_window, iFppp) +GO(gtk_tooltips_get_type, iFv) +GO(gtk_tooltips_new, pFv) +GO(gtk_tooltips_set_delay, vFpu) +GO(gtk_tooltips_set_tip, vFpppp) +//GO(gtk_tooltip_trigger_tooltip_query, +GO(gtk_tray_icon_get_type, iFv) +//GO(gtk_tree_append, +//GO(gtk_tree_child_position, +//GO(gtk_tree_clear_items, +//GO(gtk_tree_drag_dest_drag_data_received, +GO(gtk_tree_drag_dest_get_type, iFv) +//GO(gtk_tree_drag_dest_row_drop_possible, +//GO(gtk_tree_drag_source_drag_data_delete, +//GO(gtk_tree_drag_source_drag_data_get, +GO(gtk_tree_drag_source_get_type, iFv) +//GO(gtk_tree_drag_source_row_draggable, +//GO(gtk_tree_get_row_drag_data, +GO(gtk_tree_get_type, iFv) +//GO(gtk_tree_insert, +//GO(gtk_tree_item_collapse, +//GO(gtk_tree_item_deselect, +//GO(gtk_tree_item_expand, +GO(gtk_tree_item_get_type, iFv) +//GO(gtk_tree_item_new, +//GO(gtk_tree_item_new_with_label, +//GO(gtk_tree_item_remove_subtree, +//GO(gtk_tree_item_select, +//GO(gtk_tree_item_set_subtree, +GO(gtk_tree_iter_copy, pFp) +GO(gtk_tree_iter_free, vFp) +GO(gtk_tree_iter_get_type, iFv) +//GO(gtk_tree_model_filter_clear_cache, +//GO(gtk_tree_model_filter_convert_child_iter_to_iter, +//GO(gtk_tree_model_filter_convert_child_path_to_path, +//GO(gtk_tree_model_filter_convert_iter_to_child_iter, +//GO(gtk_tree_model_filter_convert_path_to_child_path, +//GO(gtk_tree_model_filter_get_model, +GO(gtk_tree_model_filter_get_type, iFv) +//GO(gtk_tree_model_filter_new, +//GO(gtk_tree_model_filter_refilter, +//GO(gtk_tree_model_filter_set_modify_func, +//GO(gtk_tree_model_filter_set_visible_column, +//GO(gtk_tree_model_filter_set_visible_func, +GO(gtk_tree_model_flags_get_type, iFv) +GOM(gtk_tree_model_foreach, vFEppp) +//GO2(gtk_tree_model_get, vFppV, gtk_tree_model_get_valist) +GO(gtk_tree_model_get_column_type, iFpi) +GO(gtk_tree_model_get_flags, iFp) +GO(gtk_tree_model_get_iter, iFppp) +GO(gtk_tree_model_get_iter_first, iFpp) +GO(gtk_tree_model_get_iter_from_string, iFppp) +GO(gtk_tree_model_get_n_columns, iFp) +GO(gtk_tree_model_get_path, pFpp) +GO(gtk_tree_model_get_string_from_iter, pFpp) +GO(gtk_tree_model_get_type, iFv) +//GO(gtk_tree_model_get_valist, vFppp) +GO(gtk_tree_model_get_value, vFppip) +GO(gtk_tree_model_iter_children, iFppp) +GO(gtk_tree_model_iter_has_child, iFpp) +GO(gtk_tree_model_iter_n_children, iFpp) +GO(gtk_tree_model_iter_next, iFpp) +GO(gtk_tree_model_iter_nth_child, iFpppi) +GO(gtk_tree_model_iter_parent, iFppp) +GO(gtk_tree_model_ref_node, vFpp) +GO(gtk_tree_model_row_changed, vFppp) +GO(gtk_tree_model_row_deleted, vFpp) +GO(gtk_tree_model_row_has_child_toggled, vFppp) +GO(gtk_tree_model_row_inserted, vFppp) +GO(gtk_tree_model_rows_reordered, vFpppp) +//GO(gtk_tree_model_sort_clear_cache, +//GO(gtk_tree_model_sort_convert_child_iter_to_iter, +//GO(gtk_tree_model_sort_convert_child_path_to_path, +//GO(gtk_tree_model_sort_convert_iter_to_child_iter, +//GO(gtk_tree_model_sort_convert_path_to_child_path, +//GO(gtk_tree_model_sort_get_model, +GO(gtk_tree_model_sort_get_type, iFv) +//GO(gtk_tree_model_sort_iter_is_valid, +//GO(gtk_tree_model_sort_new_with_model, +//GO(gtk_tree_model_sort_reset_default_sort_func, +GO(gtk_tree_model_unref_node, vFpp) +//GO(gtk_tree_new, +GO(gtk_tree_path_append_index, vFpi) +GO(gtk_tree_path_compare, iFpp) +GO(gtk_tree_path_copy, pFp) +GO(gtk_tree_path_down, vFp) +GO(gtk_tree_path_free, vFp) +GO(gtk_tree_path_get_depth, iFp) +GO(gtk_tree_path_get_indices, pFp) +GO(gtk_tree_path_get_indices_with_depth, pFpp) +GO(gtk_tree_path_get_type, iFv) +GO(gtk_tree_path_is_ancestor, iFpp) +GO(gtk_tree_path_is_descendant, iFpp) +GO(gtk_tree_path_new, pFv) +GO(gtk_tree_path_new_first, pFv) +GO(gtk_tree_path_new_from_indices, pFippppppppppppppppp) // vaarg +GO(gtk_tree_path_new_from_string, pFp) +GO(gtk_tree_path_next, vFp) +GO(gtk_tree_path_prepend_index, vFpi) +GO(gtk_tree_path_prev, vFp) +GO(gtk_tree_path_to_string, pFp) +GO(gtk_tree_path_up, iFp) +//GO(gtk_tree_prepend, +//GO(gtk_tree_remove_item, +//GO(gtk_tree_remove_items, +GO(gtk_tree_row_reference_copy, pFp) +GO(gtk_tree_row_reference_deleted, vFpp) +GO(gtk_tree_row_reference_free, vFp) +GO(gtk_tree_row_reference_get_model, pFp) +GO(gtk_tree_row_reference_get_path, pFp) +GO(gtk_tree_row_reference_get_type, iFv) +GO(gtk_tree_row_reference_inserted, vFpp) +GO(gtk_tree_row_reference_new, pFpp) +GO(gtk_tree_row_reference_new_proxy, pFppp) +GO(gtk_tree_row_reference_reordered, vFpppp) +GO(gtk_tree_row_reference_valid, iFp) +//GO(gtk_tree_select_child, +GO(gtk_tree_selection_count_selected_rows, iFp) +GO(gtk_tree_selection_get_mode, iFp) +GO(gtk_tree_selection_get_selected, iFppp) +GO(gtk_tree_selection_get_selected_rows, pFpp) +//GOM(gtk_tree_selection_get_select_function, BFEp) +GO(gtk_tree_selection_get_tree_view, pFp) +GO(gtk_tree_selection_get_type, iFv) +//GOM(gtk_tree_selection_get_user_data, pFEp) +GO(gtk_tree_selection_iter_is_selected, iFpp) +GO(gtk_tree_selection_path_is_selected, iFpp) +GO(gtk_tree_selection_select_all, vFp) +//GOM(gtk_tree_selection_selected_foreach, vFEpBp) +GO(gtk_tree_selection_select_iter, vFpp) +GO(gtk_tree_selection_select_path, vFpp) +GO(gtk_tree_selection_select_range, vFppp) +GO(gtk_tree_selection_set_mode, vFpi) +//GOM(gtk_tree_selection_set_select_function, vFEpBpB) +GO(gtk_tree_selection_unselect_all, vFp) +GO(gtk_tree_selection_unselect_iter, vFpp) +GO(gtk_tree_selection_unselect_path, vFpp) +GO(gtk_tree_selection_unselect_range, vFppp) +//GO(gtk_tree_select_item, +//GO(gtk_tree_set_row_drag_data, +//GO(gtk_tree_set_selection_mode, +//GO(gtk_tree_set_view_lines, +//GO(gtk_tree_set_view_mode, +GO(gtk_tree_sortable_get_sort_column_id, iFppp) +GO(gtk_tree_sortable_get_type, iFv) +GO(gtk_tree_sortable_has_default_sort_func, iFp) +GOM(gtk_tree_sortable_set_default_sort_func, vFEpppp) +GO(gtk_tree_sortable_set_sort_column_id, vFpii) +GOM(gtk_tree_sortable_set_sort_func, vFEpippp) +GO(gtk_tree_sortable_sort_column_changed, vFp) +GO(gtk_tree_store_append, vFppp) +GO(gtk_tree_store_clear, vFp) +GO(gtk_tree_store_get_type, iFv) +GO(gtk_tree_store_insert, vFpppi) +GO(gtk_tree_store_insert_after, vFpppp) +GO(gtk_tree_store_insert_before, vFpppp) +//GO(gtk_tree_store_insert_with_values, vFEpppiV) +GO(gtk_tree_store_insert_with_valuesv, vFpppippi) // TODO: Check if GValues need alignments? +GO(gtk_tree_store_is_ancestor, iFppp) +GO(gtk_tree_store_iter_depth, iFpp) +GO(gtk_tree_store_iter_is_valid, iFpp) +GO(gtk_tree_store_move_after, vFppp) +GO(gtk_tree_store_move_before, vFppp) +GO2(gtk_tree_store_new, pFuV, gtk_tree_store_newv) +GO(gtk_tree_store_newv, pFup) +GO(gtk_tree_store_prepend, vFppp) +GO(gtk_tree_store_remove, iFpp) +GO(gtk_tree_store_reorder, vFppp) +//GO2(gtk_tree_store_set, vFppV, gtk_tree_store_set_valist) +GO(gtk_tree_store_set_column_types, vFpup) +//GO(gtk_tree_store_set_valist, vFppp) +GO(gtk_tree_store_set_value, vFppip) +GO(gtk_tree_store_set_valuesv, vFppppi) // TODO: Check if GValues need alignments? +GO(gtk_tree_store_swap, vFppp) +//GO(gtk_tree_unselect_child, +//GO(gtk_tree_unselect_item, +GO(gtk_tree_view_append_column, iFpp) +GO(gtk_tree_view_collapse_all, vFp) +GO(gtk_tree_view_collapse_row, iFpp) +GO(gtk_tree_view_column_add_attribute, vFpppi) +GO(gtk_tree_view_column_cell_get_position, iFpppp) +GO(gtk_tree_view_column_cell_get_size, vFpppppp) +GO(gtk_tree_view_column_cell_is_visible, iFp) +GO(gtk_tree_view_column_cell_set_cell_data, vFpppii) +GO(gtk_tree_view_column_clear, vFp) +GO(gtk_tree_view_column_clear_attributes, vFpp) +GO(gtk_tree_view_column_clicked, vFp) +GO(gtk_tree_view_column_focus_cell, vFpp) +GO(gtk_tree_view_column_get_alignment, fFp) +GO(gtk_tree_view_column_get_cell_renderers, pFp) +GO(gtk_tree_view_column_get_clickable, iFp) +GO(gtk_tree_view_column_get_expand, iFp) +GO(gtk_tree_view_column_get_fixed_width, iFp) +GO(gtk_tree_view_column_get_max_width, iFp) +GO(gtk_tree_view_column_get_min_width, iFp) +GO(gtk_tree_view_column_get_reorderable, iFp) +GO(gtk_tree_view_column_get_resizable, iFp) +GO(gtk_tree_view_column_get_sizing, iFp) +GO(gtk_tree_view_column_get_sort_column_id, iFp) +GO(gtk_tree_view_column_get_sort_indicator, iFp) +GO(gtk_tree_view_column_get_sort_order, iFp) +GO(gtk_tree_view_column_get_spacing, iFp) +GO(gtk_tree_view_column_get_title, pFp) +GO(gtk_tree_view_column_get_tree_view, pFp) +GO(gtk_tree_view_column_get_type, iFv) +GO(gtk_tree_view_column_get_visible, iFp) +GO(gtk_tree_view_column_get_widget, pFp) +GO(gtk_tree_view_column_get_width, iFp) +GO(gtk_tree_view_column_new, pFv) +GO(gtk_tree_view_column_new_with_attributes, pFppppppppppppp) //vaarg +GO(gtk_tree_view_column_pack_end, vFppi) +GO(gtk_tree_view_column_pack_start, vFppi) +GO(gtk_tree_view_column_queue_resize, vFp) +GO(gtk_tree_view_columns_autosize, vFp) +GO(gtk_tree_view_column_set_alignment, vFpf) +GO(gtk_tree_view_column_set_attributes, vFpppppppppppp) //vaarg +//GOM(gtk_tree_view_column_set_cell_data_func, vFEppBpB) +GO(gtk_tree_view_column_set_clickable, vFpi) +GO(gtk_tree_view_column_set_expand, vFpi) +GO(gtk_tree_view_column_set_fixed_width, vFpi) +GO(gtk_tree_view_column_set_max_width, vFpi) +GO(gtk_tree_view_column_set_min_width, vFpi) +GO(gtk_tree_view_column_set_reorderable, vFpi) +GO(gtk_tree_view_column_set_resizable, vFpi) +GO(gtk_tree_view_column_set_sizing, vFpi) +GO(gtk_tree_view_column_set_sort_column_id, iFp) +GO(gtk_tree_view_column_set_sort_indicator, vFpi) +GO(gtk_tree_view_column_set_sort_order, vFpi) +GO(gtk_tree_view_column_set_spacing, vFpi) +GO(gtk_tree_view_column_set_title, vFpp) +GO(gtk_tree_view_column_set_visible, vFpi) +GO(gtk_tree_view_column_set_widget, vFpp) +GO(gtk_tree_view_column_sizing_get_type, iFv) +GO(gtk_tree_view_convert_bin_window_to_tree_coords, vFpiipp) +GO(gtk_tree_view_convert_bin_window_to_widget_coords, vFpiipp) +GO(gtk_tree_view_convert_tree_to_bin_window_coords, vFpiipp) +GO(gtk_tree_view_convert_tree_to_widget_coords, vFpiipp) +GO(gtk_tree_view_convert_widget_to_bin_window_coords, vFpiipp) +GO(gtk_tree_view_convert_widget_to_tree_coords, vFpiipp) +GO(gtk_tree_view_create_row_drag_icon, pFpp) +GO(gtk_tree_view_drop_position_get_type, iFv) +GO(gtk_tree_view_enable_model_drag_dest, vFppiu) +GO(gtk_tree_view_enable_model_drag_source, vFpipiu) +GO(gtk_tree_view_expand_all, vFp) +GO(gtk_tree_view_expand_row, iFppi) +GO(gtk_tree_view_expand_to_path, vFpp) +GO(gtk_tree_view_get_background_area, vFpppp) +GO(gtk_tree_view_get_bin_window, pFp) +GO(gtk_tree_view_get_cell_area, vFpppp) +GO(gtk_tree_view_get_column, pFpi) +GO(gtk_tree_view_get_columns, pFp) +GO(gtk_tree_view_get_cursor, vFppp) +GO(gtk_tree_view_get_dest_row_at_pos, iFpiipp) +GO(gtk_tree_view_get_drag_dest_row, vFppp) +GO(gtk_tree_view_get_enable_search, iFp) +GO(gtk_tree_view_get_enable_tree_lines, iFp) +GO(gtk_tree_view_get_expander_column, pFp) +GO(gtk_tree_view_get_fixed_height_mode, iFp) +GO(gtk_tree_view_get_grid_lines, iFp) +GO(gtk_tree_view_get_hadjustment, pFp) +GO(gtk_tree_view_get_headers_clickable, iFp) +GO(gtk_tree_view_get_headers_visible, iFp) +GO(gtk_tree_view_get_hover_expand, iFp) +GO(gtk_tree_view_get_hover_selection, iFp) +GO(gtk_tree_view_get_level_indentation, iFp) +GO(gtk_tree_view_get_model, pFp) +GO(gtk_tree_view_get_path_at_pos, iFpiipppp) +GO(gtk_tree_view_get_reorderable, iFp) +//GOM(gtk_tree_view_get_row_separator_func, BFEp) +GO(gtk_tree_view_get_rubber_banding, iFp) +GO(gtk_tree_view_get_rules_hint, iFp) +GO(gtk_tree_view_get_search_column, iFp) +GO(gtk_tree_view_get_search_entry, pFp) +//GOM(gtk_tree_view_get_search_equal_func, BFEp) +//GOM(gtk_tree_view_get_search_position_func, BFEp) +GO(gtk_tree_view_get_selection, pFp) +GO(gtk_tree_view_get_show_expanders, iFp) +GO(gtk_tree_view_get_tooltip_column, iFp) +GO(gtk_tree_view_get_tooltip_context, iFpppippp) +GO(gtk_tree_view_get_type, iFv) +GO(gtk_tree_view_get_vadjustment, pFp) +GO(gtk_tree_view_get_visible_range, iFppp) +GO(gtk_tree_view_get_visible_rect, vFpp) +GO(gtk_tree_view_grid_lines_get_type, iFv) +GO(gtk_tree_view_insert_column, iFppi) +GO(gtk_tree_view_insert_column_with_attributes, iFpipppppppppppp) //vaarg +//GOM(gtk_tree_view_insert_column_with_data_func, iFpippBpB) +GO(gtk_tree_view_is_rubber_banding_active, iFp) +//GOM(gtk_tree_view_map_expanded_rows, vFEpBp) +GO(gtk_tree_view_mode_get_type, iFv) +GO(gtk_tree_view_move_column_after, vFppp) +GO(gtk_tree_view_new, pFv) +GO(gtk_tree_view_new_with_model, pFp) +GO(gtk_tree_view_remove_column, iFpp) +GO(gtk_tree_view_row_activated, vFp) +GO(gtk_tree_view_row_expanded, iFpp) +GO(gtk_tree_view_scroll_to_cell, vFpppiff) +GO(gtk_tree_view_scroll_to_point, vFpii) +//GOM(gtk_tree_view_set_column_drag_function, vFEpBpB) +GO(gtk_tree_view_set_cursor, vFpppi) +GO(gtk_tree_view_set_cursor_on_cell, vFppppi) +//GOM(gtk_tree_view_set_destroy_count_func, vFEpBpB) +GO(gtk_tree_view_set_drag_dest_row, vFppi) +GO(gtk_tree_view_set_enable_search, vFpi) +GO(gtk_tree_view_set_enable_tree_lines, vFpi) +GO(gtk_tree_view_set_expander_column, vFpp) +GO(gtk_tree_view_set_fixed_height_mode, vFpi) +GO(gtk_tree_view_set_grid_lines, vFpi) +GO(gtk_tree_view_set_hadjustment, vFpp) +GO(gtk_tree_view_set_headers_clickable, vFpi) +GO(gtk_tree_view_set_headers_visible, vFpi) +GO(gtk_tree_view_set_hover_expand, vFpi) +GO(gtk_tree_view_set_hover_selection, vFpi) +GO(gtk_tree_view_set_level_indentation, vFpi) +GO(gtk_tree_view_set_model, vFpp) +GO(gtk_tree_view_set_reorderable, vFpi) +//GOM(gtk_tree_view_set_row_separator_func, vFEpBpB) +GO(gtk_tree_view_set_rubber_banding, vFpi) +GO(gtk_tree_view_set_rules_hint, vFpi) +GO(gtk_tree_view_set_search_column, vFpi) +GO(gtk_tree_view_set_search_entry, vFpp) +GOM(gtk_tree_view_set_search_equal_func, vFEpppp) +//GOM(gtk_tree_view_set_search_position_func, vFEpBpB) +GO(gtk_tree_view_set_show_expanders, vFpi) +GO(gtk_tree_view_set_tooltip_cell, vFppppp) +GO(gtk_tree_view_set_tooltip_column, vFpi) +GO(gtk_tree_view_set_tooltip_row, vFppp) +GO(gtk_tree_view_set_vadjustment, vFpp) +GO(gtk_tree_view_tree_to_widget_coords, vFpiipp) +GO(gtk_tree_view_unset_rows_drag_dest, vFp) +GO(gtk_tree_view_unset_rows_drag_source, vFp) +GO(gtk_tree_view_widget_to_tree_coords, vFpiipp) +GO(gtk_true, iFv) +GOM(gtk_type_class, pFEi) +GO(gtk_type_enum_find_value, pFip) +GO(gtk_type_enum_get_values, pFi) +GO(gtk_type_flags_find_value, pFip) +GO(gtk_type_flags_get_values, pFi) +GO(gtk_type_init, vFi) +GO(gtk_type_new, pFi) +GOM(gtk_type_unique, iFEpp) +GO(gtk_ui_manager_add_ui, vFpipppii) +GO(gtk_ui_manager_add_ui_from_file, uFppp) +GO(gtk_ui_manager_add_ui_from_string, uFppLp) +GO(gtk_ui_manager_ensure_update, vFp) +GO(gtk_ui_manager_get_accel_group, pFp) +GO(gtk_ui_manager_get_action, pFpp) +GO(gtk_ui_manager_get_action_groups, pFp) +GO(gtk_ui_manager_get_add_tearoffs, iFp) +GO(gtk_ui_manager_get_toplevels, pFpi) +GO(gtk_ui_manager_get_type, iFv) +GO(gtk_ui_manager_get_ui, pFp) +GO(gtk_ui_manager_get_widget, pFpp) +GO(gtk_ui_manager_insert_action_group, vFppi) +GO(gtk_ui_manager_item_type_get_type, iFv) +GO(gtk_ui_manager_new, pFv) +GO(gtk_ui_manager_new_merge_id, uFp) +GO(gtk_ui_manager_remove_action_group, vFpp) +GO(gtk_ui_manager_remove_ui, vFpu) +GO(gtk_ui_manager_set_add_tearoffs, vFpi) +GO(gtk_unit_get_type, iFv) +GO(gtk_update_type_get_type, iFv) +GO(gtk_vbox_get_type, iFv) +GO(gtk_vbox_new, pFii) +//GO(gtk_vbutton_box_get_layout_default, +//GO(gtk_vbutton_box_get_spacing_default, +GO(gtk_vbutton_box_get_type, iFv) +//GO(gtk_vbutton_box_new, +//GO(gtk_vbutton_box_set_layout_default, +//GO(gtk_vbutton_box_set_spacing_default, +GO(gtk_viewport_get_bin_window, pFp) +GO(gtk_viewport_get_hadjustment, pFp) +GO(gtk_viewport_get_shadow_type, iFp) +GO(gtk_viewport_get_type, iFv) +GO(gtk_viewport_get_vadjustment, pFp) +GO(gtk_viewport_get_view_window, pFp) +GO(gtk_viewport_new, pFpp) +GO(gtk_viewport_set_hadjustment, vFpp) +GO(gtk_viewport_set_shadow_type, vFpi) +GO(gtk_viewport_set_vadjustment, vFpp) +GO(gtk_visibility_get_type, iFv) +GO(gtk_volume_button_get_type, iFv) +GO(gtk_volume_button_new, pFv) +GO(gtk_vpaned_get_type, iFv) +GO(gtk_vpaned_new, pFv) +GO(gtk_vruler_get_type, iFv) +GO(gtk_vruler_new, pFv) +GO(gtk_vscale_get_type, iFv) +GO(gtk_vscale_new, pFp) +GO(gtk_vscale_new_with_range, pFddd) +GO(gtk_vscrollbar_get_type, iFv) +GO(gtk_vscrollbar_new, pFp) +GO(gtk_vseparator_get_type, iFv) +GO(gtk_vseparator_new, pFv) +GO(gtk_widget_activate, iFp) +GO(gtk_widget_add_accelerator, vFpppuii) +GO(gtk_widget_add_events, vFpi) +GO(gtk_widget_add_mnemonic_label, vFpp) +GO(gtk_widget_can_activate_accel, iFpu) +GO(gtk_widget_child_focus, iFpi) +GO(gtk_widget_child_notify, vFp) +GO(gtk_widget_class_find_style_property, pFpp) +GO(gtk_widget_class_install_style_property, vFpp) +//GOM(gtk_widget_class_install_style_property_parser, vFEppB) +GO(gtk_widget_class_list_style_properties, pFpp) +GO(gtk_widget_class_path, vFpppp) +GO(gtk_widget_create_pango_context, pFp) +GO(gtk_widget_create_pango_layout, pFpp) +GO(gtk_widget_destroy, vFp) +GO(gtk_widget_destroyed, vFpp) +GO(gtk_widget_draw, vFpp) +GO(gtk_widget_ensure_style, vFp) +GO(gtk_widget_error_bell, vFp) +GO(gtk_widget_event, iFpp) +GO(gtk_widget_flags_get_type, iFv) +GO(gtk_widget_freeze_child_notify, vFp) +GO(gtk_widget_get_accessible, pFp) +GO(gtk_widget_get_action, pFp) +GO(gtk_widget_get_allocation, vFpp) +GO(gtk_widget_get_ancestor, pFpi) +GO(gtk_widget_get_app_paintable, iFp) +GO(gtk_widget_get_can_default, iFp) +GO(gtk_widget_get_can_focus, iFp) +GO(gtk_widget_get_child_requisition, vFpp) +GO(gtk_widget_get_child_visible, iFp) +GO(gtk_widget_get_clipboard, pFpp) +GO(gtk_widget_get_colormap, pFp) +GO(gtk_widget_get_composite_name, pFp) +GO(gtk_widget_get_default_colormap, pFv) +GO(gtk_widget_get_default_direction, iFv) +GO(gtk_widget_get_default_style, pFv) +GO(gtk_widget_get_default_visual, pFv) +GO(gtk_widget_get_direction, iFp) +GO(gtk_widget_get_display, pFp) +GO(gtk_widget_get_double_buffered, iFp) +GO(gtk_widget_get_events, iFp) +GO(gtk_widget_get_extension_events, iFp) +GO(gtk_widget_get_has_tooltip, iFp) +GO(gtk_widget_get_has_window, iFp) +GO(gtk_widget_get_mapped, iFp) +GO(gtk_widget_get_modifier_style, pFp) +GO(gtk_widget_get_name, pFp) +GO(gtk_widget_get_no_show_all, iFp) +GO(gtk_widget_get_pango_context, pFp) +GO(gtk_widget_get_parent, pFp) +GO(gtk_widget_get_parent_window, pFp) +GO(gtk_widget_get_pointer, vFppp) +GO(gtk_widget_get_realized, iFp) +GO(gtk_widget_get_receives_default, iFp) +GO(gtk_widget_get_requisition, vFpp) +GO(gtk_widget_get_root_window, pFp) +GO(gtk_widget_get_screen, pFp) +GO(gtk_widget_get_sensitive, iFp) +GO(gtk_widget_get_settings, pFp) +GO(gtk_widget_get_size_request, vFppp) +GO(gtk_widget_get_snapshot, pFpp) +GO(gtk_widget_get_state, iFp) +GO(gtk_widget_get_style, pFp) +GO(gtk_widget_get_tooltip_markup, pFp) +GO(gtk_widget_get_tooltip_text, pFp) +GO(gtk_widget_get_tooltip_window, pFp) +GO(gtk_widget_get_toplevel, pFp) +GO(gtk_widget_get_type, iFv) +GO(gtk_widget_get_visible, iFp) +GO(gtk_widget_get_visual, pFp) +GO(gtk_widget_get_window, pFp) +GO(gtk_widget_grab_default, vFp) +GO(gtk_widget_grab_focus, vFp) +GO(gtk_widget_has_default, iFp) +GO(gtk_widget_has_focus, iFp) +GO(gtk_widget_has_grab, iFp) +GO(gtk_widget_has_rc_style, iFp) +GO(gtk_widget_has_screen, iFp) +GO(gtk_widget_help_type_get_type, iFv) +GO(gtk_widget_hide, vFp) +GO(gtk_widget_hide_all, vFp) +GO(gtk_widget_hide_on_delete, iFp) +GO(gtk_widget_input_shape_combine_mask, vFppii) +GO(gtk_widget_intersect, iFppp) +GO(gtk_widget_is_ancestor, iFpp) +GO(gtk_widget_is_composited, iFp) +GO(gtk_widget_is_drawable, iFp) +GO(gtk_widget_is_focus, iFp) +GO(gtk_widget_is_sensitive, iFp) +GO(gtk_widget_is_toplevel, iFp) +GO(gtk_widget_keynav_failed, iFpi) +GO(gtk_widget_list_accel_closures, pFp) +GO(gtk_widget_list_mnemonic_labels, pFp) +GO(gtk_widget_map, vFp) +GO(gtk_widget_mnemonic_activate, iFpi) +GO(gtk_widget_modify_base, vFpip) +GO(gtk_widget_modify_bg, vFpip) +GO(gtk_widget_modify_cursor, vFppp) +GO(gtk_widget_modify_fg, vFpip) +GO(gtk_widget_modify_font, vFpp) +GO(gtk_widget_modify_style, vFpp) +GO(gtk_widget_modify_text, vFpip) +GO(gtk_widget_new, pFppppppppppppp) //vaarg +GO(gtk_widget_path, vFpppp) +GO(gtk_widget_pop_colormap, vFv) +GO(gtk_widget_pop_composite_child, vFv) +GO(gtk_widget_push_colormap, vFp) +GO(gtk_widget_push_composite_child, vFv) +GO(gtk_widget_queue_clear, vFp) +GO(gtk_widget_queue_clear_area, vFpiiii) +GO(gtk_widget_queue_draw, vFp) +GO(gtk_widget_queue_draw_area, vFpiiii) +GO(gtk_widget_queue_resize, vFp) +GO(gtk_widget_queue_resize_no_redraw, vFp) +GO(gtk_widget_realize, vFp) +GO(gtk_widget_ref, pFp) +GO(gtk_widget_region_intersect, pFpp) +GO(gtk_widget_remove_accelerator, iFppui) +GO(gtk_widget_remove_mnemonic_label, vFpp) +GO(gtk_widget_render_icon, pFppip) +GO(gtk_widget_reparent, vFpp) +GO(gtk_widget_reset_rc_styles, vFp) +GO(gtk_widget_reset_shapes, vFp) +GO(gtk_widget_send_expose, iFpp) +GO(gtk_widget_send_focus_change, iFpp) +GO(gtk_widget_set, vFppppppppppppppp) //vaarg +GO(gtk_widget_set_accel_path, vFppp) +GO(gtk_widget_set_allocation, vFpp) +GO(gtk_widget_set_app_paintable, vFpi) +GO(gtk_widget_set_can_default, vFpi) +GO(gtk_widget_set_can_focus, vFpi) +GO(gtk_widget_set_child_visible, vFpi) +GO(gtk_widget_set_colormap, vFpp) +GO(gtk_widget_set_composite_name, vFpp) +GO(gtk_widget_set_default_colormap, vFp) +GO(gtk_widget_set_default_direction, vFi) +GO(gtk_widget_set_direction, vFpi) +GO(gtk_widget_set_double_buffered, vFpi) +GO(gtk_widget_set_events, vFpi) +GO(gtk_widget_set_extension_events, vFpi) +GO(gtk_widget_set_has_tooltip, vFpi) +GO(gtk_widget_set_has_window, vFpi) +GO(gtk_widget_set_mapped, vFpi) +GO(gtk_widget_set_name, vFpp) +GO(gtk_widget_set_no_show_all, vFpi) +GO(gtk_widget_set_parent, vFpp) +GO(gtk_widget_set_parent_window, vFpp) +GO(gtk_widget_set_realized, vFpi) +GO(gtk_widget_set_receives_default, vFpi) +GO(gtk_widget_set_redraw_on_allocate, vFpi) +GO(gtk_widget_set_scroll_adjustments, iFppp) +GO(gtk_widget_set_sensitive, vFpi) +GO(gtk_widget_set_size_request, vFpii) +GO(gtk_widget_set_state, vFpi) +GO(gtk_widget_set_style, vFpp) +GO(gtk_widget_set_tooltip_markup, vFpp) +GO(gtk_widget_set_tooltip_text, vFpp) +GO(gtk_widget_set_tooltip_window, vFpp) +GO(gtk_widget_set_uposition, vFpii) +GO(gtk_widget_set_usize, vFpii) +GO(gtk_widget_set_visible, vFpi) +GO(gtk_widget_set_window, vFpp) +GO(gtk_widget_shape_combine_mask, vFppii) +GO(gtk_widget_show, vFp) +GO(gtk_widget_show_all, vFp) +GO(gtk_widget_show_now, vFp) +GO(gtk_widget_size_allocate, vFpppuii) +GO(gtk_widget_size_request, vFpp) +GO(gtk_widget_style_attach, vFp) +//GO2(gtk_widget_style_get, vFppV, gtk_widget_style_get_valist) +GO(gtk_widget_style_get_property, vFppp) +//GO(gtk_widget_style_get_valist, vFppp) +GO(gtk_widget_thaw_child_notify, vFp) +GO(gtk_widget_translate_coordinates, iFppiipp) +GO(gtk_widget_trigger_tooltip_query, vFp) +GO(gtk_widget_unmap, vFp) +GO(gtk_widget_unparent, vFp) +GO(gtk_widget_unrealize, vFp) +GO(gtk_widget_unref, vFp) +GO(gtk_window_activate_default, iFp) +GO(gtk_window_activate_focus, iFp) +GO(gtk_window_activate_key, iFpp) +GO(gtk_window_add_accel_group, vFpp) +GO(gtk_window_add_embedded_xid, vFpu) +GO(gtk_window_add_mnemonic, vFpup) +GO(gtk_window_begin_move_drag, vFpiiiu) +GO(gtk_window_begin_resize_drag, vFpuiiiu) +GO(gtk_window_deiconify, vFp) +GO(gtk_window_fullscreen, vFp) +GO(gtk_window_get_accept_focus, iFp) +GO(gtk_window_get_decorated, iFp) +GO(gtk_window_get_default_icon_list, pFv) +GO(gtk_window_get_default_icon_name, pFv) +GO(gtk_window_get_default_size, vFppp) +GO(gtk_window_get_default_widget, pFp) +GO(gtk_window_get_deletable, iFp) +GO(gtk_window_get_destroy_with_parent, iFp) +GO(gtk_window_get_focus, pFp) +GO(gtk_window_get_focus_on_map, iFp) +GO(gtk_window_get_frame_dimensions, vFppppp) +GO(gtk_window_get_gravity, iFp) +GO(gtk_window_get_group, pFp) +GO(gtk_window_get_has_frame, iFp) +GO(gtk_window_get_icon, pFp) +GO(gtk_window_get_icon_list, pFp) +GO(gtk_window_get_icon_name, pFp) +GO(gtk_window_get_mnemonic_modifier, iFp) +GO(gtk_window_get_mnemonics_visible, iFp) +GO(gtk_window_get_modal, iFp) +GO(gtk_window_get_opacity, dFp) +GO(gtk_window_get_position, vFppp) +GO(gtk_window_get_resizable, iFp) +GO(gtk_window_get_role, pFp) +GO(gtk_window_get_screen, pFp) +GO(gtk_window_get_size, vFppp) +GO(gtk_window_get_skip_pager_hint, iFp) +GO(gtk_window_get_skip_taskbar_hint, iFp) +GO(gtk_window_get_title, pFp) +GO(gtk_window_get_transient_for, pFp) +GO(gtk_window_get_type, iFv) +GO(gtk_window_get_type_hint, iFp) +GO(gtk_window_get_urgency_hint, iFp) +GO(gtk_window_get_window_type, uFp) +GO(gtk_window_group_add_window, vFpp) +GO(gtk_window_group_get_current_grab, pFp) +GO(gtk_window_group_get_type, iFv) +GO(gtk_window_group_list_windows, pFp) +GO(gtk_window_group_new, pFv) +GO(gtk_window_group_remove_window, vFpp) +GO(gtk_window_has_group, iFp) +GO(gtk_window_has_toplevel_focus, iFp) +GO(gtk_window_iconify, vFp) +GO(gtk_window_is_active, iFp) +GO(gtk_window_list_toplevels, pFv) +GO(gtk_window_maximize, vFp) +GO(gtk_window_mnemonic_activate, iFpui) +GO(gtk_window_move, vFpii) +GO(gtk_window_new, pFi) +GO(gtk_window_parse_geometry, iFpp) +GO(gtk_window_position_get_type, iFv) +GO(gtk_window_present, vFp) +GO(gtk_window_present_with_time, vFpu) +GO(gtk_window_propagate_key_event, iFpp) +GO(gtk_window_remove_accel_group, vFpp) +GO(gtk_window_remove_embedded_xid, vFpu) +GO(gtk_window_remove_mnemonic, vFpup) +GO(gtk_window_reshow_with_initial_size, vFp) +GO(gtk_window_resize, vFpii) +GO(gtk_window_set_accept_focus, vFpi) +GO(gtk_window_set_auto_startup_notification, vFi) +GO(gtk_window_set_decorated, vFpi) +GO(gtk_window_set_default, vFpp) +GO(gtk_window_set_default_icon, vFp) +GO(gtk_window_set_default_icon_from_file, iFpp) +GO(gtk_window_set_default_icon_list, vFp) +GO(gtk_window_set_default_icon_name, vFp) +GO(gtk_window_set_default_size, vFpii) +GO(gtk_window_set_deletable, vFpi) +GO(gtk_window_set_destroy_with_parent, vFpi) +GO(gtk_window_set_focus, vFpp) +GO(gtk_window_set_focus_on_map, vFpi) +GO(gtk_window_set_frame_dimensions, vFpiiii) +GO(gtk_window_set_geometry_hints, vFpppi) +GO(gtk_window_set_gravity, vFpi) +GO(gtk_window_set_has_frame, vFpi) +GO(gtk_window_set_icon, vFpp) +GO(gtk_window_set_icon_from_file, iFppp) +GO(gtk_window_set_icon_list, vFpp) +GO(gtk_window_set_icon_name, vFpp) +GO(gtk_window_set_keep_above, vFpi) +GO(gtk_window_set_keep_below, vFpi) +GO(gtk_window_set_mnemonic_modifier, vFpi) +GO(gtk_window_set_mnemonics_visible, vFpi) +GO(gtk_window_set_modal, vFpi) +GO(gtk_window_set_opacity, vFpd) +GO(gtk_window_set_policy, vFpiii) +GO(gtk_window_set_position, vFpi) +GO(gtk_window_set_resizable, vFpi) +GO(gtk_window_set_role, vFpp) +GO(gtk_window_set_screen, vFpp) +GO(gtk_window_set_skip_pager_hint, vFpi) +GO(gtk_window_set_skip_taskbar_hint, vFpi) +GO(gtk_window_set_startup_id, vFpp) +GO(gtk_window_set_title, vFpp) +GO(gtk_window_set_transient_for, vFpp) +GO(gtk_window_set_type_hint, vFpi) +GO(gtk_window_set_urgency_hint, vFpi) +GO(gtk_window_set_wmclass, vFppp) +GO(gtk_window_stick, vFp) +GO(gtk_window_type_get_type, iFv) +GO(gtk_window_unfullscreen, vFp) +GO(gtk_window_unmaximize, vFp) +GO(gtk_window_unstick, vFp) +GO(gtk_wrap_mode_get_type, iFv) + +// from gtk-1.2 +GOM(gtk_signal_connect, LFEpppp) +GO2(gtk_type_is_a, iFii, g_type_is_a) +GOM(gtk_type_check_object_cast, pFEpi) +GOM(gtk_spin_button_get_value_as_float, fFEp) \ No newline at end of file |