2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Kernel
4 * FILE: ntoskrnl/include/ntoskrnl.h
5 * PURPOSE: Main Kernel Header
6 * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
9 /* INCLUDES ******************************************************************/
11 /* ARM Bringup Hack */
13 #define DbgPrint DbgPrintEarly
18 #include <psdk/ntverp.h>
20 /* DDK/IFS/NDK Headers */
21 #define _REALLY_GET_CALLERS_CALLER
28 #define NTHALAPI __declspec(dllimport)
34 /* FIXME: Temporary until Winldr is used */
44 /* SEH support with PSEH */
45 #include <pseh/pseh2.h>
48 #include <reactos/buildno.h>
49 #include <reactos/bugcodes.h>
51 /* SetupLDR Support */
52 #include <arc/setupblk.h>
60 #include <reactos/rossym.h>
64 #include <umpnpmgr/sysguid.h>
66 /* Internal Headers */
67 #include "internal/ntoskrnl.h"
70 #include <reactos/probe.h>
71 #include "internal/probe.h"
75 // Define the internal versions of external and public global data
77 #define IoFileObjectType _IoFileObjectType
78 #define PsThreadType _PsThreadType
79 #define PsProcessType _PsProcessType
80 #define ExEventObjectType _ExEventObjectType
81 #define ExSemaphoreObjectType _ExSemaphoreObjectType
82 #define KdDebuggerEnabled _KdDebuggerEnabled
83 #define KdDebuggerNotPresent _KdDebuggerNotPresent
84 #define NlsOemLeadByteInfo _NlsOemLeadByteInfo
85 extern PUSHORT _NlsOemLeadByteInfo
;
86 #define FsRtlLegalAnsiCharacterArray _FsRtlLegalAnsiCharacterArray
87 #undef LEGAL_ANSI_CHARACTER_ARRAY
88 #undef NLS_MB_CODE_PAGE_TAG
89 #undef NLS_OEM_LEAD_BYTE_INFO
90 #define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
91 #define NLS_MB_CODE_PAGE_TAG NlsMbOemCodePageTag
92 #define NLS_OEM_LEAD_BYTE_INFO _NlsOemLeadByteInfo
93 #undef KD_DEBUGGER_ENABLED
94 #undef KD_DEBUGGER_NOT_PRESENT
95 #define KD_DEBUGGER_ENABLED KdDebuggerEnabled
96 #define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
97 #define HalDispatchTable _HalDispatchTable
99 #define HALDISPATCH (&HalDispatchTable)
100 #define ExRaiseStatus RtlRaiseStatus