[NTOSKRNL]
[reactos.git] / reactos / ntoskrnl / include / ntoskrnl.h
index 8f2b361..4261d02 100644 (file)
@@ -8,71 +8,94 @@
 
 /* INCLUDES ******************************************************************/
 
-/* Tells the WDK that we don't want to import */
-#define NTKERNELAPI
+/* ARM Bringup Hack */
+#ifdef _M_ARM
+#define DbgPrint DbgPrintEarly
+#endif
+
+/* WDK hacks */
+#ifdef _M_AMD64
+#define IoAllocateAdapterChannel _IoAllocateAdapterChannel
+#define KeGetCurrentThread _KeGetCurrentThread
+#endif
+
+/* Version Data */
+#undef __MSVCRT__
+#include <psdk/ntverp.h>
 
 /* DDK/IFS/NDK Headers */
+#define _REALLY_GET_CALLERS_CALLER
+#include <excpt.h>
+#include <ntdef.h>
 #include <ntifs.h>
 #include <wdmguid.h>
 #include <arc/arc.h>
+#undef NTHALAPI
+#define NTHALAPI __declspec(dllimport)
 #include <ntndk.h>
 #undef TEXT
 #define TEXT(s) L##s
 #include <regstr.h>
 
-/* FIXME: Temporary until CC Ros is gone */
-#include <ccros.h>
+/* FIXME: Temporary until Winldr is used */
 #include <rosldr.h>
 
-/* Disk Dump Driver Header */
-#include <diskdump/diskdump.h>
-
 /* C Headers */
+#include <stdlib.h>
 #include <stdio.h>
 #include <ctype.h>
 #include <malloc.h>
 #include <wchar.h>
 
 /* SEH support with PSEH */
-#include <pseh/pseh.h>
+#include <pseh/pseh2.h>
 
 /* ReactOS Headers */
-#include <reactos/version.h>
-#include <reactos/resource.h>
+#include <reactos/buildno.h>
 #include <reactos/bugcodes.h>
-#include <reactos/rossym.h>
-#define ExRaiseStatus RtlRaiseStatus
-#include <reactos/probe.h>
 
 /* SetupLDR Support */
 #include <arc/setupblk.h>
 
+/* KD Support */
+#define NOEXTAPI
+#include <windbgkd.h>
+#include <wdbgexts.h>
+#include <kddll.h>
+#ifndef _WINKD_
+#include <reactos/rossym.h>
+#endif
+
 /* PNP GUIDs */
 #include <umpnpmgr/sysguid.h>
 
-/* Helper Header */
-#include <reactos/helper.h>
-
 /* Internal Headers */
 #include "internal/ntoskrnl.h"
 #include "config.h"
 
+#include <reactos/probe.h>
+#include "internal/probe.h"
+#include "resource.h"
+
 //
 // Define the internal versions of external and public global data
 //
 #define IoFileObjectType                _IoFileObjectType
 #define PsThreadType                    _PsThreadType
+#define PsProcessType                   _PsProcessType
 #define ExEventObjectType               _ExEventObjectType
 #define ExSemaphoreObjectType           _ExSemaphoreObjectType
 #define KdDebuggerEnabled               _KdDebuggerEnabled
 #define KdDebuggerNotPresent            _KdDebuggerNotPresent
+#define NlsOemLeadByteInfo              _NlsOemLeadByteInfo
+extern PUSHORT _NlsOemLeadByteInfo;
 #define FsRtlLegalAnsiCharacterArray    _FsRtlLegalAnsiCharacterArray
 #undef LEGAL_ANSI_CHARACTER_ARRAY
 #undef NLS_MB_CODE_PAGE_TAG
 #undef NLS_OEM_LEAD_BYTE_INFO
 #define LEGAL_ANSI_CHARACTER_ARRAY      FsRtlLegalAnsiCharacterArray
 #define NLS_MB_CODE_PAGE_TAG            NlsMbOemCodePageTag
-#define NLS_OEM_LEAD_BYTE_INFO          NlsOemLeadByteInfo
+#define NLS_OEM_LEAD_BYTE_INFO          _NlsOemLeadByteInfo
 #undef KD_DEBUGGER_ENABLED
 #undef KD_DEBUGGER_NOT_PRESENT
 #define KD_DEBUGGER_ENABLED             KdDebuggerEnabled
 #define HalDispatchTable                _HalDispatchTable
 #undef HALDISPATCH
 #define HALDISPATCH                     (&HalDispatchTable)
+#define ExRaiseStatus RtlRaiseStatus