mirror of
https://github.com/decompals/wibo.git
synced 2025-12-13 15:16:27 +00:00
Experimental 64-bit host support
This commit is contained in:
@@ -15,14 +15,20 @@ constexpr DWORD INIT_ONCE_ASYNC = 0x00000002UL;
|
||||
constexpr DWORD INIT_ONCE_INIT_FAILED = 0x00000004UL;
|
||||
constexpr DWORD INIT_ONCE_CTX_RESERVED_BITS = 2;
|
||||
|
||||
constexpr DWORD CRITICAL_SECTION_NO_DEBUG_INFO = 0x01000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_NO_DEBUG_INFO = 0x01000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_DYNAMIC_SPIN = 0x02000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_STATIC_INIT = 0x04000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_RESOURCE_TYPE = 0x08000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_FORCE_DEBUG_INFO = 0x10000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_ALL_FLAG_BITS = 0xff000000UL;
|
||||
constexpr DWORD RTL_CRITICAL_SECTION_FLAG_RESERVED = 0xe0000000UL;
|
||||
|
||||
struct RTL_CRITICAL_SECTION;
|
||||
|
||||
struct RTL_CRITICAL_SECTION_DEBUG {
|
||||
WORD Type;
|
||||
WORD CreatorBackTraceIndex;
|
||||
RTL_CRITICAL_SECTION *CriticalSection;
|
||||
GUEST_PTR CriticalSection;
|
||||
LIST_ENTRY ProcessLocksList;
|
||||
DWORD EntryCount;
|
||||
DWORD ContentionCount;
|
||||
@@ -33,7 +39,7 @@ struct RTL_CRITICAL_SECTION_DEBUG {
|
||||
};
|
||||
|
||||
struct RTL_CRITICAL_SECTION {
|
||||
RTL_CRITICAL_SECTION_DEBUG *DebugInfo;
|
||||
GUEST_PTR DebugInfo;
|
||||
LONG LockCount;
|
||||
LONG RecursionCount;
|
||||
HANDLE OwningThread;
|
||||
@@ -47,7 +53,7 @@ using PCRITICAL_SECTION = RTL_CRITICAL_SECTION *;
|
||||
using PRTL_CRITICAL_SECTION_DEBUG = RTL_CRITICAL_SECTION_DEBUG *;
|
||||
|
||||
union RTL_RUN_ONCE {
|
||||
PVOID Ptr;
|
||||
GUEST_PTR Ptr;
|
||||
};
|
||||
|
||||
using PRTL_RUN_ONCE = RTL_RUN_ONCE *;
|
||||
@@ -55,17 +61,17 @@ using INIT_ONCE = RTL_RUN_ONCE;
|
||||
using PINIT_ONCE = INIT_ONCE *;
|
||||
using LPINIT_ONCE = INIT_ONCE *;
|
||||
|
||||
constexpr INIT_ONCE INIT_ONCE_STATIC_INIT{nullptr};
|
||||
constexpr INIT_ONCE INIT_ONCE_STATIC_INIT{GUEST_NULL};
|
||||
|
||||
union RTL_SRWLOCK {
|
||||
PVOID Ptr;
|
||||
GUEST_PTR Ptr;
|
||||
};
|
||||
|
||||
using SRWLOCK = RTL_SRWLOCK;
|
||||
using PSRWLOCK = SRWLOCK *;
|
||||
using PRTL_SRWLOCK = SRWLOCK *;
|
||||
|
||||
constexpr SRWLOCK SRWLOCK_INIT{nullptr};
|
||||
constexpr SRWLOCK SRWLOCK_INIT{GUEST_NULL};
|
||||
|
||||
namespace kernel32 {
|
||||
|
||||
@@ -92,7 +98,7 @@ BOOL WINAPI InitializeCriticalSectionAndSpinCount(LPCRITICAL_SECTION lpCriticalS
|
||||
void WINAPI DeleteCriticalSection(LPCRITICAL_SECTION lpCriticalSection);
|
||||
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION lpCriticalSection);
|
||||
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION lpCriticalSection);
|
||||
BOOL WINAPI InitOnceBeginInitialize(LPINIT_ONCE lpInitOnce, DWORD dwFlags, PBOOL fPending, LPVOID *lpContext);
|
||||
BOOL WINAPI InitOnceBeginInitialize(LPINIT_ONCE lpInitOnce, DWORD dwFlags, PBOOL fPending, GUEST_PTR *lpContext);
|
||||
BOOL WINAPI InitOnceComplete(LPINIT_ONCE lpInitOnce, DWORD dwFlags, LPVOID lpContext);
|
||||
void WINAPI AcquireSRWLockShared(PSRWLOCK SRWLock);
|
||||
void WINAPI ReleaseSRWLockShared(PSRWLOCK SRWLock);
|
||||
|
||||
Reference in New Issue
Block a user