diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-07-09 15:26:49 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-07-09 15:26:49 +0200 |
| commit | 102744665c2e683158c7855b30a4ea80cd3ae7ee (patch) | |
| tree | 6125a3d65774fab110c60003a9891752fa17df19 /src | |
| parent | dd885a694e73260f06c2b562e9717725ca50da48 (diff) | |
| download | box64-102744665c2e683158c7855b30a4ea80cd3ae7ee.tar.gz box64-102744665c2e683158c7855b30a4ea80cd3ae7ee.zip | |
Added some cairo functions (for #42)
Diffstat (limited to 'src')
| -rw-r--r-- | src/wrapped/generated/functions_list.txt | 3 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.c | 8 | ||||
| -rw-r--r-- | src/wrapped/generated/wrapper.h | 3 | ||||
| -rwxr-xr-x | src/wrapped/wrappedcairo_private.h | 130 |
4 files changed, 79 insertions, 65 deletions
diff --git a/src/wrapped/generated/functions_list.txt b/src/wrapped/generated/functions_list.txt index d74cbec3..01e1cb36 100644 --- a/src/wrapped/generated/functions_list.txt +++ b/src/wrapped/generated/functions_list.txt @@ -533,6 +533,7 @@ #() iFipii #() iFipui #() iFipup +#() iFipLi #() iFipLp #() iFippi #() iFippu @@ -836,6 +837,7 @@ #() uFpplip #() uFppppp #() UFuiiii +#() lFipLli #() lFipLLi #() LFLpppp #() LFpLLLp @@ -1305,6 +1307,7 @@ #() iFEppppppppp #() iFiiiiiiiiip #() iFpuupiuiipp +#() iFpddpippppp #() iFppuuiiiiii #() iFppuuiiuupi #() iFpppiiipipi diff --git a/src/wrapped/generated/wrapper.c b/src/wrapped/generated/wrapper.c index 5e5c10e0..34890fd6 100644 --- a/src/wrapped/generated/wrapper.c +++ b/src/wrapped/generated/wrapper.c @@ -567,6 +567,7 @@ typedef int64_t (*iFiLwp_t)(int64_t, uintptr_t, int16_t, void*); typedef int64_t (*iFipii_t)(int64_t, void*, int64_t, int64_t); typedef int64_t (*iFipui_t)(int64_t, void*, uint64_t, int64_t); typedef int64_t (*iFipup_t)(int64_t, void*, uint64_t, void*); +typedef int64_t (*iFipLi_t)(int64_t, void*, uintptr_t, int64_t); typedef int64_t (*iFipLp_t)(int64_t, void*, uintptr_t, void*); typedef int64_t (*iFippi_t)(int64_t, void*, void*, int64_t); typedef int64_t (*iFippu_t)(int64_t, void*, void*, uint64_t); @@ -870,6 +871,7 @@ typedef uint64_t (*uFppipp_t)(void*, void*, int64_t, void*, void*); typedef uint64_t (*uFpplip_t)(void*, void*, intptr_t, int64_t, void*); 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 (*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 (*LFLpppp_t)(uintptr_t, void*, void*, void*, void*); typedef uintptr_t (*LFpLLLp_t)(void*, uintptr_t, uintptr_t, uintptr_t, void*); @@ -1339,6 +1341,7 @@ typedef void (*vFpppppppppp_t)(void*, void*, void*, void*, void*, void*, void*, typedef int64_t (*iFEppppppppp_t)(x64emu_t*, void*, void*, void*, void*, void*, void*, void*, void*, void*); typedef int64_t (*iFiiiiiiiiip_t)(int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, int64_t, void*); typedef int64_t (*iFpuupiuiipp_t)(void*, uint64_t, uint64_t, void*, int64_t, uint64_t, int64_t, int64_t, void*, void*); +typedef int64_t (*iFpddpippppp_t)(void*, double, double, void*, int64_t, void*, void*, void*, void*, 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); @@ -1964,6 +1967,7 @@ void iFiLwp(x64emu_t *emu, uintptr_t fcn) { iFiLwp_t fn = (iFiLwp_t)fcn; R_RAX=( void iFipii(x64emu_t *emu, uintptr_t fcn) { iFipii_t fn = (iFipii_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (int64_t)R_RDX, (int64_t)R_RCX); } void iFipui(x64emu_t *emu, uintptr_t fcn) { iFipui_t fn = (iFipui_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (int64_t)R_RCX); } void iFipup(x64emu_t *emu, uintptr_t fcn) { iFipup_t fn = (iFipup_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uint64_t)R_RDX, (void*)R_RCX); } +void iFipLi(x64emu_t *emu, uintptr_t fcn) { iFipLi_t fn = (iFipLi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (int64_t)R_RCX); } void iFipLp(x64emu_t *emu, uintptr_t fcn) { iFipLp_t fn = (iFipLp_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (uintptr_t)R_RDX, (void*)R_RCX); } void iFippi(x64emu_t *emu, uintptr_t fcn) { iFippi_t fn = (iFippi_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (int64_t)R_RCX); } void iFippu(x64emu_t *emu, uintptr_t fcn) { iFippu_t fn = (iFippu_t)fcn; R_RAX=(int64_t)fn((int64_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (uint64_t)R_RCX); } @@ -2267,6 +2271,7 @@ void uFppipp(x64emu_t *emu, uintptr_t fcn) { uFppipp_t fn = (uFppipp_t)fcn; R_RA 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 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 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 LFLpppp(x64emu_t *emu, uintptr_t fcn) { LFLpppp_t fn = (LFLpppp_t)fcn; R_RAX=(uintptr_t)fn((uintptr_t)R_RDI, (void*)R_RSI, (void*)R_RDX, (void*)R_RCX, (void*)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); } @@ -2736,6 +2741,7 @@ void vFpppppppppp(x64emu_t *emu, uintptr_t fcn) { vFpppppppppp_t fn = (vFppppppp void iFEppppppppp(x64emu_t *emu, uintptr_t fcn) { iFEppppppppp_t fn = (iFEppppppppp_t)fcn; R_RAX=(int64_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**)(R_RSP + 16), *(void**)(R_RSP + 24)); } void iFiiiiiiiiip(x64emu_t *emu, uintptr_t fcn) { iFiiiiiiiiip_t fn = (iFiiiiiiiiip_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), *(void**)(R_RSP + 32)); } void iFpuupiuiipp(x64emu_t *emu, uintptr_t fcn) { iFpuupiuiipp_t fn = (iFpuupiuiipp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX, (void*)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**)(R_RSP + 32)); } +void iFpddpippppp(x64emu_t *emu, uintptr_t fcn) { iFpddpippppp_t fn = (iFpddpippppp_t)fcn; R_RAX=(int64_t)fn((void*)R_RDI, emu->xmm[0].d[0], emu->xmm[1].d[0], (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 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)); } @@ -3294,6 +3300,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &iFipii) return 1; if (fun == &iFipui) return 1; if (fun == &iFipup) return 1; + if (fun == &iFipLi) return 1; if (fun == &iFipLp) return 1; if (fun == &iFippi) return 1; if (fun == &iFippu) return 1; @@ -3562,6 +3569,7 @@ int isSimpleWrapper(wrapper_t fun) { if (fun == &uFpplip) return 1; if (fun == &uFppppp) return 1; if (fun == &UFuiiii) return 1; + if (fun == &lFipLli) return 1; if (fun == &lFipLLi) return 1; if (fun == &LFLpppp) return 1; if (fun == &LFpLLLp) return 1; diff --git a/src/wrapped/generated/wrapper.h b/src/wrapped/generated/wrapper.h index 3f6f875f..b01e424b 100644 --- a/src/wrapped/generated/wrapper.h +++ b/src/wrapped/generated/wrapper.h @@ -563,6 +563,7 @@ void iFiLwp(x64emu_t *emu, uintptr_t fnc); void iFipii(x64emu_t *emu, uintptr_t fnc); void iFipui(x64emu_t *emu, uintptr_t fnc); void iFipup(x64emu_t *emu, uintptr_t fnc); +void iFipLi(x64emu_t *emu, uintptr_t fnc); void iFipLp(x64emu_t *emu, uintptr_t fnc); void iFippi(x64emu_t *emu, uintptr_t fnc); void iFippu(x64emu_t *emu, uintptr_t fnc); @@ -866,6 +867,7 @@ void uFppipp(x64emu_t *emu, uintptr_t fnc); void uFpplip(x64emu_t *emu, uintptr_t fnc); void uFppppp(x64emu_t *emu, uintptr_t fnc); void UFuiiii(x64emu_t *emu, uintptr_t fnc); +void lFipLli(x64emu_t *emu, uintptr_t fnc); void lFipLLi(x64emu_t *emu, uintptr_t fnc); void LFLpppp(x64emu_t *emu, uintptr_t fnc); void LFpLLLp(x64emu_t *emu, uintptr_t fnc); @@ -1335,6 +1337,7 @@ void vFpppppppppp(x64emu_t *emu, uintptr_t fnc); void iFEppppppppp(x64emu_t *emu, uintptr_t fnc); void iFiiiiiiiiip(x64emu_t *emu, uintptr_t fnc); void iFpuupiuiipp(x64emu_t *emu, uintptr_t fnc); +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); diff --git a/src/wrapped/wrappedcairo_private.h b/src/wrapped/wrappedcairo_private.h index acf299bc..7e484d1d 100755 --- a/src/wrapped/wrappedcairo_private.h +++ b/src/wrapped/wrappedcairo_private.h @@ -17,37 +17,37 @@ GO(cairo_create, pFp) GO(cairo_curve_to, vFpdddddd) //GO(cairo_debug_reset_static_data, GO(cairo_destroy, vFp) -//GO(cairo_device_acquire, -//GO(cairo_device_destroy, -//GO(cairo_device_finish, -//GO(cairo_device_flush, -//GO(cairo_device_get_reference_count, -//GO(cairo_device_get_type, -//GO(cairo_device_get_user_data, -//GO(cairo_device_observer_elapsed, -//GO(cairo_device_observer_fill_elapsed, -//GO(cairo_device_observer_glyphs_elapsed, -//GO(cairo_device_observer_mask_elapsed, -//GO(cairo_device_observer_paint_elapsed, -//GO(cairo_device_observer_print, -//GO(cairo_device_observer_stroke_elapsed, -//GO(cairo_device_reference, -//GO(cairo_device_release, -//GO(cairo_device_set_user_data, -//GO(cairo_device_status, +GO(cairo_device_acquire, iFp) +GO(cairo_device_destroy, vFp) +GO(cairo_device_finish, vFp) +GO(cairo_device_flush, vFp) +GO(cairo_device_get_reference_count, uFp) +GO(cairo_device_get_type, iFp) +GO(cairo_device_get_user_data, pFpp) +GO(cairo_device_observer_elapsed, dFp) +GO(cairo_device_observer_fill_elapsed, dFp) +GO(cairo_device_observer_glyphs_elapsed, dFp) +GO(cairo_device_observer_mask_elapsed, dFp) +GO(cairo_device_observer_paint_elapsed, dFp) +//GOM(cairo_device_observer_print, iFEppp) +GO(cairo_device_observer_stroke_elapsed, dFp) +GO(cairo_device_reference, pFp) +GO(cairo_device_release, vFp) +//GOM(cairo_device_set_user_data, iFEpppp) +GO(cairo_device_status, iFp) GO(cairo_device_to_user, vFppp) GO(cairo_device_to_user_distance, vFppp) GO(cairo_fill, vFp) GO(cairo_fill_extents, vFppppp) GO(cairo_fill_preserve, vFp) GO(cairo_font_extents, vFpp) -//GO(cairo_font_face_destroy, -//GO(cairo_font_face_get_reference_count, -//GO(cairo_font_face_get_type, -//GO(cairo_font_face_get_user_data, -//GO(cairo_font_face_reference, -//GO(cairo_font_face_set_user_data, -//GO(cairo_font_face_status, +GO(cairo_font_face_destroy, vFp) +GO(cairo_font_face_get_reference_count, uFp) +GO(cairo_font_face_get_type, iFp) +GO(cairo_font_face_get_user_data, pFpp) +GO(cairo_font_face_reference, pFp) +//GOM(cairo_font_face_set_user_data, iFpppp) +GO(cairo_font_face_status, iFp) GO(cairo_font_options_copy, pFp) GO(cairo_font_options_create, pFv) GO(cairo_font_options_destroy, vFp) @@ -210,29 +210,29 @@ GO(cairo_push_group_with_content, vFpi) GO(cairo_rectangle, vFpdddd) GO(cairo_rectangle_list_destroy, vFp) GO(cairo_reference, pFp) -//GO(cairo_region_contains_point, -//GO(cairo_region_contains_rectangle, -//GO(cairo_region_copy, -//GO(cairo_region_create, -//GO(cairo_region_create_rectangle, -//GO(cairo_region_create_rectangles, -//GO(cairo_region_destroy, -//GO(cairo_region_equal, -//GO(cairo_region_get_extents, -//GO(cairo_region_get_rectangle, -//GO(cairo_region_intersect, -//GO(cairo_region_intersect_rectangle, -//GO(cairo_region_is_empty, -//GO(cairo_region_num_rectangles, -//GO(cairo_region_reference, -//GO(cairo_region_status, -//GO(cairo_region_subtract, -//GO(cairo_region_subtract_rectangle, -//GO(cairo_region_translate, -//GO(cairo_region_union, -//GO(cairo_region_union_rectangle, -//GO(cairo_region_xor, -//GO(cairo_region_xor_rectangle, +GO(cairo_region_contains_point, iFpii) +GO(cairo_region_contains_rectangle, iFpp) +GO(cairo_region_copy, pFp) +GO(cairo_region_create, pFv) +GO(cairo_region_create_rectangle, pFp) +GO(cairo_region_create_rectangles, pFpi) +GO(cairo_region_destroy, vFp) +GO(cairo_region_equal, iFpp) +GO(cairo_region_get_extents, vFpp) +GO(cairo_region_get_rectangle, vFpip) +GO(cairo_region_intersect, iFpp) +GO(cairo_region_intersect_rectangle, iFpp) +GO(cairo_region_is_empty, iFp) +GO(cairo_region_num_rectangles, iFp) +GO(cairo_region_reference, pFp) +GO(cairo_region_status, iFp) +GO(cairo_region_subtract, iFpp) +GO(cairo_region_subtract_rectangle, iFpp) +GO(cairo_region_translate, vFpii) +GO(cairo_region_union, iFpp) +GO(cairo_region_union_rectangle, iFpp) +GO(cairo_region_xor, iFpp) +GO(cairo_region_xor_rectangle, iFpp) GO(cairo_rel_curve_to, vFpdddddd) GO(cairo_rel_line_to, vFpdd) GO(cairo_rel_move_to, vFpdd) @@ -241,23 +241,23 @@ GO(cairo_restore, vFp) GO(cairo_rotate, vFpd) GO(cairo_save, vFp) GO(cairo_scale, vFpdd) -//GO(cairo_scaled_font_create, -//GO(cairo_scaled_font_destroy, -//GO(cairo_scaled_font_extents, -//GO(cairo_scaled_font_get_ctm, -//GO(cairo_scaled_font_get_font_face, -//GO(cairo_scaled_font_get_font_matrix, -//GO(cairo_scaled_font_get_font_options, -//GO(cairo_scaled_font_get_reference_count, -//GO(cairo_scaled_font_get_scale_matrix, -//GO(cairo_scaled_font_get_type, -//GO(cairo_scaled_font_get_user_data, -//GO(cairo_scaled_font_glyph_extents, -//GO(cairo_scaled_font_reference, -//GO(cairo_scaled_font_set_user_data, -//GO(cairo_scaled_font_status, -//GO(cairo_scaled_font_text_extents, -//GO(cairo_scaled_font_text_to_glyphs, +GO(cairo_scaled_font_create, pFpppp) +GO(cairo_scaled_font_destroy, vFp) +GO(cairo_scaled_font_extents, vFpp) +GO(cairo_scaled_font_get_ctm, vFpp) +GO(cairo_scaled_font_get_font_face, pFp) +GO(cairo_scaled_font_get_font_matrix, vFpp) +GO(cairo_scaled_font_get_font_options, vFpp) +GO(cairo_scaled_font_get_reference_count, uFp) +GO(cairo_scaled_font_get_scale_matrix, vFpp) +GO(cairo_scaled_font_get_type, iFp) +GO(cairo_scaled_font_get_user_data, pFpp) +GO(cairo_scaled_font_glyph_extents, vFppip) +GO(cairo_scaled_font_reference, pFp) +//GOM(cairo_scaled_font_set_user_data, iFEpppp) +GO(cairo_scaled_font_status, iFp) +GO(cairo_scaled_font_text_extents, vFppp) +GO(cairo_scaled_font_text_to_glyphs, iFpddpippppp) //GO(cairo_script_create, //GO(cairo_script_create_for_stream, //GO(cairo_script_from_recording_surface, |