Fully functional guest<->host trampolines

This commit is contained in:
2025-10-31 00:45:32 -06:00
parent 55a62a27c9
commit 52cdd7c811
56 changed files with 1683 additions and 1488 deletions

View File

@@ -1,28 +1,34 @@
#include "lmgr.h"
#include "common.h"
#include "context.h"
#include "modules.h"
namespace lmgr {
int WIN_ENTRY lp_checkout(int a, int b, const char* c, const char* d, int e, const char* f, int* out) {
HOST_CONTEXT_GUARD();
DEBUG_LOG("lp_checkout(%d, %d, %s, %s, %d, %s)\n", a, b, c, d, e, f);
*out = 1234;
return 0;
}
int WIN_ENTRY lp_checkin() {
HOST_CONTEXT_GUARD();
DEBUG_LOG("lp_checkin()\n");
return 0;
}
int CDECL lp_checkout(int a, int b, LPCSTR c, LPCSTR d, int e, LPCSTR f, int *out) {
HOST_CONTEXT_GUARD();
DEBUG_LOG("lp_checkout(%d, %d, %s, %s, %d, %s)\n", a, b, c, d, e, f);
*out = 1234;
return 0;
}
int CDECL lp_checkin() {
HOST_CONTEXT_GUARD();
DEBUG_LOG("lp_checkin()\n");
return 0;
}
} // namespace lmgr
#include "lmgr_trampolines.h"
static void *resolveByOrdinal(uint16_t ordinal) {
switch (ordinal) {
case 189:
return (void*)lmgr::lp_checkin;
return (void *)thunk_lmgr_lp_checkin;
case 190:
return (void*)lmgr::lp_checkout;
return (void *)thunk_lmgr_lp_checkout;
}
return 0;
}