diff options
Diffstat (limited to 'src/include/bridge.h')
| -rwxr-xr-x | src/include/bridge.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/include/bridge.h b/src/include/bridge.h new file mode 100755 index 00000000..dfe402f9 --- /dev/null +++ b/src/include/bridge.h @@ -0,0 +1,25 @@ +#ifndef __BRIDGE_H_ +#define __BRIDGE_H_ +#include <stdint.h> + +typedef struct x64emu_s x64emu_t; +typedef struct bridge_s bridge_t; +typedef struct box64context_s box64context_t; +typedef void (*wrapper_t)(x64emu_t* emu, uintptr_t fnc); + +bridge_t *NewBridge(); +void FreeBridge(bridge_t** bridge); + +uintptr_t AddBridge(bridge_t* bridge, wrapper_t w, void* fnc, int N); +uintptr_t CheckBridged(bridge_t* bridge, void* fnc); +uintptr_t AddCheckBridge(bridge_t* bridge, wrapper_t w, void* fnc, int N); +uintptr_t AddAutomaticBridge(x64emu_t* emu, bridge_t* bridge, wrapper_t w, void* fnc, int N); +void* GetNativeFnc(uintptr_t fnc); +void* GetNativeFncOrFnc(uintptr_t fnc); + +int hasAlternate(void* addr); +void* getAlternate(void* addr); +void addAlternate(void* addr, void* alt); +void cleanAlternate(); + +#endif //__BRIDGE_H_ \ No newline at end of file |