mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 19:33:16 +00:00
[WINE] Header improvement
Add some sdk/ddk headers that contain wine specific definitions.
This commit is contained in:
parent
dfc05a68a5
commit
2d43fd458c
4 changed files with 318 additions and 3 deletions
12
sdk/include/wine/ddk/ntddk.h
Normal file
12
sdk/include/wine/ddk/ntddk.h
Normal file
|
@ -0,0 +1,12 @@
|
|||
|
||||
|
||||
#pragma once
|
||||
|
||||
void WINAPI RtlUpperString(STRING*, const STRING*);
|
||||
LONG WINAPI RtlCompareString(const STRING*,const STRING*,BOOLEAN);
|
||||
|
||||
typedef struct _PROCESS_ACCESS_TOKEN
|
||||
{
|
||||
HANDLE Token;
|
||||
HANDLE Thread;
|
||||
} PROCESS_ACCESS_TOKEN, *PPROCESS_ACCESS_TOKEN;
|
141
sdk/include/wine/ddk/wdm.h
Normal file
141
sdk/include/wine/ddk/wdm.h
Normal file
|
@ -0,0 +1,141 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
typedef struct _KSYSTEM_TIME {
|
||||
ULONG LowPart;
|
||||
LONG High1Time;
|
||||
LONG High2Time;
|
||||
} KSYSTEM_TIME, *PKSYSTEM_TIME;
|
||||
|
||||
#define PROCESSOR_FEATURE_MAX 64
|
||||
|
||||
typedef enum _ALTERNATIVE_ARCHITECTURE_TYPE
|
||||
{
|
||||
StandardDesign,
|
||||
NEC98x86,
|
||||
EndAlternatives
|
||||
} ALTERNATIVE_ARCHITECTURE_TYPE;
|
||||
|
||||
typedef enum _NT_PRODUCT_TYPE {
|
||||
NtProductWinNt = 1,
|
||||
NtProductLanManNt,
|
||||
NtProductServer
|
||||
} NT_PRODUCT_TYPE, *PNT_PRODUCT_TYPE;
|
||||
|
||||
typedef struct _KUSER_SHARED_DATA {
|
||||
ULONG TickCountLowDeprecated; /* 0x000 */
|
||||
ULONG TickCountMultiplier; /* 0x004 */
|
||||
volatile KSYSTEM_TIME InterruptTime; /* 0x008 */
|
||||
volatile KSYSTEM_TIME SystemTime; /* 0x014 */
|
||||
volatile KSYSTEM_TIME TimeZoneBias; /* 0x020 */
|
||||
USHORT ImageNumberLow; /* 0x02c */
|
||||
USHORT ImageNumberHigh; /* 0x02e */
|
||||
WCHAR NtSystemRoot[260]; /* 0x030 */
|
||||
ULONG MaxStackTraceDepth; /* 0x238 */
|
||||
ULONG CryptoExponent; /* 0x23c */
|
||||
ULONG TimeZoneId; /* 0x240 */
|
||||
ULONG LargePageMinimum; /* 0x244 */
|
||||
ULONG AitSamplingValue; /* 0x248 */
|
||||
ULONG AppCompatFlag; /* 0x24c */
|
||||
ULONGLONG RNGSeedVersion; /* 0x250 */
|
||||
ULONG GlobalValidationRunLevel; /* 0x258 */
|
||||
volatile ULONG TimeZoneBiasStamp; /* 0x25c */
|
||||
ULONG NtBuildNumber; /* 0x260 */
|
||||
NT_PRODUCT_TYPE NtProductType; /* 0x264 */
|
||||
BOOLEAN ProductTypeIsValid; /* 0x268 */
|
||||
USHORT NativeProcessorArchitecture; /* 0x26a */
|
||||
ULONG NtMajorVersion; /* 0x26c */
|
||||
ULONG NtMinorVersion; /* 0x270 */
|
||||
BOOLEAN ProcessorFeatures[PROCESSOR_FEATURE_MAX]; /* 0x274 */
|
||||
ULONG Reserved1; /* 0x2b4 */
|
||||
ULONG Reserved3; /* 0x2b8 */
|
||||
volatile ULONG TimeSlip; /* 0x2bc */
|
||||
ALTERNATIVE_ARCHITECTURE_TYPE AlternativeArchitecture; /* 0x2c0 */
|
||||
ULONG BootId; /* 0x2c4 */
|
||||
LARGE_INTEGER SystemExpirationDate; /* 0x2c8 */
|
||||
ULONG SuiteMask; /* 0x2d0 */
|
||||
BOOLEAN KdDebuggerEnabled; /* 0x2d4 */
|
||||
UCHAR NXSupportPolicy; /* 0x2d5 */
|
||||
USHORT CyclesPerYield; /* 0x2d6 */
|
||||
volatile ULONG ActiveConsoleId; /* 0x2d8 */
|
||||
volatile ULONG DismountCount; /* 0x2dc */
|
||||
ULONG ComPlusPackage; /* 0x2e0 */
|
||||
ULONG LastSystemRITEventTickCount; /* 0x2e4 */
|
||||
ULONG NumberOfPhysicalPages; /* 0x2e8 */
|
||||
BOOLEAN SafeBootMode; /* 0x2ec */
|
||||
UCHAR VirtualizationFlags; /* 0x2ed */
|
||||
union {
|
||||
ULONG SharedDataFlags; /* 0x2f0 */
|
||||
struct {
|
||||
ULONG DbgErrorPortPresent : 1;
|
||||
ULONG DbgElevationEnabed : 1;
|
||||
ULONG DbgVirtEnabled : 1;
|
||||
ULONG DbgInstallerDetectEnabled : 1;
|
||||
ULONG DbgLkgEnabled : 1;
|
||||
ULONG DbgDynProcessorEnabled : 1;
|
||||
ULONG DbgConsoleBrokerEnabled : 1;
|
||||
ULONG DbgSecureBootEnabled : 1;
|
||||
ULONG DbgMultiSessionSku : 1;
|
||||
ULONG DbgMultiUsersInSessionSku : 1;
|
||||
ULONG DbgStateSeparationEnabled : 1;
|
||||
ULONG SpareBits : 21;
|
||||
} DUMMYSTRUCTNAME2;
|
||||
} DUMMYUNIONNAME2;
|
||||
ULONG DataFlagsPad[1]; /* 0x2f4 */
|
||||
ULONGLONG TestRetInstruction; /* 0x2f8 */
|
||||
LONGLONG QpcFrequency; /* 0x300 */
|
||||
ULONG SystemCall; /* 0x308 */
|
||||
union {
|
||||
ULONG AllFlags; /* 0x30c */
|
||||
struct {
|
||||
ULONG Win32Process : 1;
|
||||
ULONG Sgx2Enclave : 1;
|
||||
ULONG VbsBasicEnclave : 1;
|
||||
ULONG SpareBits : 29;
|
||||
} DUMMYSTRUCTNAME;
|
||||
} UserCetAvailableEnvironments;
|
||||
ULONGLONG SystemCallPad[2]; /* 0x310 */
|
||||
union {
|
||||
volatile KSYSTEM_TIME TickCount; /* 0x320 */
|
||||
volatile ULONG64 TickCountQuad;
|
||||
} DUMMYUNIONNAME;
|
||||
ULONG Cookie; /* 0x330 */
|
||||
ULONG CookiePad[1]; /* 0x334 */
|
||||
LONGLONG ConsoleSessionForegroundProcessId; /* 0x338 */
|
||||
ULONGLONG TimeUpdateLock; /* 0x340 */
|
||||
ULONGLONG BaselineSystemTimeQpc; /* 0x348 */
|
||||
ULONGLONG BaselineInterruptTimeQpc; /* 0x350 */
|
||||
ULONGLONG QpcSystemTimeIncrement; /* 0x358 */
|
||||
ULONGLONG QpcInterruptTimeIncrement; /* 0x360 */
|
||||
UCHAR QpcSystemTimeIncrementShift; /* 0x368 */
|
||||
UCHAR QpcInterruptTimeIncrementShift; /* 0x369 */
|
||||
USHORT UnparkedProcessorCount; /* 0x36a */
|
||||
ULONG EnclaveFeatureMask[4]; /* 0x36c */
|
||||
ULONG TelemetryCoverageRound; /* 0x37c */
|
||||
USHORT UserModeGlobalLogger[16]; /* 0x380 */
|
||||
ULONG ImageFileExecutionOptions; /* 0x3a0 */
|
||||
ULONG LangGenerationCount; /* 0x3a4 */
|
||||
ULONG ActiveProcessorAffinity; /* 0x3a8 */
|
||||
volatile ULONGLONG InterruptTimeBias; /* 0x3b0 */
|
||||
volatile ULONGLONG QpcBias; /* 0x3b8 */
|
||||
ULONG ActiveProcessorCount; /* 0x3c0 */
|
||||
volatile UCHAR ActiveGroupCount; /* 0x3c4 */
|
||||
union {
|
||||
USHORT QpcData; /* 0x3c6 */
|
||||
struct {
|
||||
UCHAR volatile QpcBypassEnabled;
|
||||
UCHAR QpcShift;
|
||||
} DUMMYSTRUCTNAME;
|
||||
} DUMMYUNIONNAME3;
|
||||
LARGE_INTEGER TimeZoneBiasEffectiveStart; /* 0x3c8 */
|
||||
LARGE_INTEGER TimeZoneBiasEffectiveEnd; /* 0x3d0 */
|
||||
XSTATE_CONFIGURATION XState; /* 0x3d8 */
|
||||
} KSHARED_USER_DATA, *PKSHARED_USER_DATA;
|
||||
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_ENABLED 0x01
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_USE_HV_PAGE 0x02
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_DISABLE_32BIT 0x04
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_USE_MFENCE 0x10
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_USE_LFENCE 0x20
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_A73_ERRATA 0x40
|
||||
#define SHARED_GLOBAL_FLAGS_QPC_BYPASS_USE_RDTSCP 0x80
|
164
sdk/include/wine/winnt.h
Normal file
164
sdk/include/wine/winnt.h
Normal file
|
@ -0,0 +1,164 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <psdk/winnt.h>
|
||||
|
||||
#define CONTEXT_i386 0x10000
|
||||
#define CONTEXT_i486 0x10000
|
||||
|
||||
#define CONTEXT_I386_CONTROL (CONTEXT_i386 | 0x0001) /* SS:SP, CS:IP, FLAGS, BP */
|
||||
#define CONTEXT_I386_INTEGER (CONTEXT_i386 | 0x0002) /* AX, BX, CX, DX, SI, DI */
|
||||
#define CONTEXT_I386_SEGMENTS (CONTEXT_i386 | 0x0004) /* DS, ES, FS, GS */
|
||||
#define CONTEXT_I386_FLOATING_POINT (CONTEXT_i386 | 0x0008) /* 387 state */
|
||||
#define CONTEXT_I386_DEBUG_REGISTERS (CONTEXT_i386 | 0x0010) /* DB 0-3,6,7 */
|
||||
#define CONTEXT_I386_EXTENDED_REGISTERS (CONTEXT_i386 | 0x0020)
|
||||
#define CONTEXT_I386_XSTATE (CONTEXT_i386 | 0x0040)
|
||||
#define CONTEXT_I386_FULL (CONTEXT_I386_CONTROL | CONTEXT_I386_INTEGER | CONTEXT_I386_SEGMENTS)
|
||||
#define CONTEXT_I386_ALL (CONTEXT_I386_FULL | CONTEXT_I386_FLOATING_POINT | CONTEXT_I386_DEBUG_REGISTERS | CONTEXT_I386_EXTENDED_REGISTERS)
|
||||
|
||||
typedef WOW64_FLOATING_SAVE_AREA I386_FLOATING_SAVE_AREA;
|
||||
#ifdef _M_IX86
|
||||
typedef CONTEXT I386_CONTEXT;
|
||||
#else
|
||||
typedef WOW64_CONTEXT I386_CONTEXT;
|
||||
#endif
|
||||
|
||||
#define CONTEXT_AMD64 0x100000
|
||||
|
||||
#define CONTEXT_AMD64_CONTROL (CONTEXT_AMD64 | 0x0001)
|
||||
#define CONTEXT_AMD64_INTEGER (CONTEXT_AMD64 | 0x0002)
|
||||
#define CONTEXT_AMD64_SEGMENTS (CONTEXT_AMD64 | 0x0004)
|
||||
#define CONTEXT_AMD64_FLOATING_POINT (CONTEXT_AMD64 | 0x0008)
|
||||
#define CONTEXT_AMD64_DEBUG_REGISTERS (CONTEXT_AMD64 | 0x0010)
|
||||
#define CONTEXT_AMD64_XSTATE (CONTEXT_AMD64 | 0x0040)
|
||||
#define CONTEXT_AMD64_FULL (CONTEXT_AMD64_CONTROL | CONTEXT_AMD64_INTEGER | CONTEXT_AMD64_FLOATING_POINT)
|
||||
#define CONTEXT_AMD64_ALL (CONTEXT_AMD64_CONTROL | CONTEXT_AMD64_INTEGER | CONTEXT_AMD64_SEGMENTS | CONTEXT_AMD64_FLOATING_POINT | CONTEXT_AMD64_DEBUG_REGISTERS)
|
||||
|
||||
typedef struct DECLSPEC_ALIGN(16) _AMD64_CONTEXT {
|
||||
DWORD64 P1Home; /* 000 */
|
||||
DWORD64 P2Home; /* 008 */
|
||||
DWORD64 P3Home; /* 010 */
|
||||
DWORD64 P4Home; /* 018 */
|
||||
DWORD64 P5Home; /* 020 */
|
||||
DWORD64 P6Home; /* 028 */
|
||||
|
||||
/* Control flags */
|
||||
DWORD ContextFlags; /* 030 */
|
||||
DWORD MxCsr; /* 034 */
|
||||
|
||||
/* Segment */
|
||||
WORD SegCs; /* 038 */
|
||||
WORD SegDs; /* 03a */
|
||||
WORD SegEs; /* 03c */
|
||||
WORD SegFs; /* 03e */
|
||||
WORD SegGs; /* 040 */
|
||||
WORD SegSs; /* 042 */
|
||||
DWORD EFlags; /* 044 */
|
||||
|
||||
/* Debug */
|
||||
DWORD64 Dr0; /* 048 */
|
||||
DWORD64 Dr1; /* 050 */
|
||||
DWORD64 Dr2; /* 058 */
|
||||
DWORD64 Dr3; /* 060 */
|
||||
DWORD64 Dr6; /* 068 */
|
||||
DWORD64 Dr7; /* 070 */
|
||||
|
||||
/* Integer */
|
||||
DWORD64 Rax; /* 078 */
|
||||
DWORD64 Rcx; /* 080 */
|
||||
DWORD64 Rdx; /* 088 */
|
||||
DWORD64 Rbx; /* 090 */
|
||||
DWORD64 Rsp; /* 098 */
|
||||
DWORD64 Rbp; /* 0a0 */
|
||||
DWORD64 Rsi; /* 0a8 */
|
||||
DWORD64 Rdi; /* 0b0 */
|
||||
DWORD64 R8; /* 0b8 */
|
||||
DWORD64 R9; /* 0c0 */
|
||||
DWORD64 R10; /* 0c8 */
|
||||
DWORD64 R11; /* 0d0 */
|
||||
DWORD64 R12; /* 0d8 */
|
||||
DWORD64 R13; /* 0e0 */
|
||||
DWORD64 R14; /* 0e8 */
|
||||
DWORD64 R15; /* 0f0 */
|
||||
|
||||
/* Counter */
|
||||
DWORD64 Rip; /* 0f8 */
|
||||
|
||||
/* Floating point */
|
||||
union {
|
||||
XMM_SAVE_AREA32 FltSave; /* 100 */
|
||||
struct {
|
||||
M128A Header[2]; /* 100 */
|
||||
M128A Legacy[8]; /* 120 */
|
||||
M128A Xmm0; /* 1a0 */
|
||||
M128A Xmm1; /* 1b0 */
|
||||
M128A Xmm2; /* 1c0 */
|
||||
M128A Xmm3; /* 1d0 */
|
||||
M128A Xmm4; /* 1e0 */
|
||||
M128A Xmm5; /* 1f0 */
|
||||
M128A Xmm6; /* 200 */
|
||||
M128A Xmm7; /* 210 */
|
||||
M128A Xmm8; /* 220 */
|
||||
M128A Xmm9; /* 230 */
|
||||
M128A Xmm10; /* 240 */
|
||||
M128A Xmm11; /* 250 */
|
||||
M128A Xmm12; /* 260 */
|
||||
M128A Xmm13; /* 270 */
|
||||
M128A Xmm14; /* 280 */
|
||||
M128A Xmm15; /* 290 */
|
||||
} DUMMYSTRUCTNAME;
|
||||
} DUMMYUNIONNAME;
|
||||
|
||||
/* Vector */
|
||||
M128A VectorRegister[26]; /* 300 */
|
||||
DWORD64 VectorControl; /* 4a0 */
|
||||
|
||||
/* Debug control */
|
||||
DWORD64 DebugControl; /* 4a8 */
|
||||
DWORD64 LastBranchToRip; /* 4b0 */
|
||||
DWORD64 LastBranchFromRip; /* 4b8 */
|
||||
DWORD64 LastExceptionToRip; /* 4c0 */
|
||||
DWORD64 LastExceptionFromRip; /* 4c8 */
|
||||
} AMD64_CONTEXT;
|
||||
|
||||
typedef struct _YMMCONTEXT
|
||||
{
|
||||
M128A Ymm0;
|
||||
M128A Ymm1;
|
||||
M128A Ymm2;
|
||||
M128A Ymm3;
|
||||
M128A Ymm4;
|
||||
M128A Ymm5;
|
||||
M128A Ymm6;
|
||||
M128A Ymm7;
|
||||
M128A Ymm8;
|
||||
M128A Ymm9;
|
||||
M128A Ymm10;
|
||||
M128A Ymm11;
|
||||
M128A Ymm12;
|
||||
M128A Ymm13;
|
||||
M128A Ymm14;
|
||||
M128A Ymm15;
|
||||
}
|
||||
YMMCONTEXT, *PYMMCONTEXT;
|
||||
|
||||
typedef struct _XSTATE
|
||||
{
|
||||
ULONG64 Mask;
|
||||
ULONG64 CompactionMask;
|
||||
ULONG64 Reserved[6];
|
||||
YMMCONTEXT YmmContext;
|
||||
} XSTATE, *PXSTATE;
|
||||
|
||||
#define CONTEXT_UNWOUND_TO_CALL 0x20000000
|
||||
|
||||
#define CONTEXT_EXCEPTION_ACTIVE 0x8000000
|
||||
#define CONTEXT_SERVICE_ACTIVE 0x10000000
|
||||
#define CONTEXT_EXCEPTION_REQUEST 0x40000000
|
||||
#define CONTEXT_EXCEPTION_REPORTING 0x80000000
|
||||
|
||||
// HACK!
|
||||
#ifdef __ROS_LONG64__
|
||||
#define ReadAcquire(x) ReadAcquire((volatile long*)(x))
|
||||
#define WriteRelease(x, y) WriteRelease((volatile long*)(x), (y))
|
||||
#endif
|
|
@ -4818,9 +4818,7 @@ NTSYSAPI NTSTATUS WINAPI NtSignalAndWaitForSingleObject(HANDLE,HANDLE,BOOLEAN,c
|
|||
NTSYSAPI NTSTATUS WINAPI NtShutdownSystem(SHUTDOWN_ACTION);
|
||||
NTSYSAPI NTSTATUS WINAPI NtStartProfile(HANDLE);
|
||||
NTSYSAPI NTSTATUS WINAPI NtStopProfile(HANDLE);
|
||||
#ifndef __REACTOS__
|
||||
NTSYSAPI NTSTATUS WINAPI NtSuspendProcess(HANDLE);
|
||||
#endif
|
||||
/* NTSYSAPI */ NTSTATUS WINAPI NtSuspendProcess(HANDLE);
|
||||
NTSYSAPI NTSTATUS WINAPI NtSuspendThread(HANDLE,PULONG);
|
||||
NTSYSAPI NTSTATUS WINAPI NtSystemDebugControl(SYSDBG_COMMAND,PVOID,ULONG,PVOID,ULONG,PULONG);
|
||||
NTSYSAPI NTSTATUS WINAPI NtTerminateJobObject(HANDLE,NTSTATUS);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue