/* INCLUDES ******************************************************************/
-/* We are the Kernel */
+/* Version Data */
+#include <ntverp.h>
+#define _WIN32_WINNT _WIN32_WINNT_WS03
+#define NTDDI_VERSION NTDDI_WS03SP1
#define NTKERNELAPI
-#define _NTSYSTEM_
+#define NOEXTAPI
/* DDK/IFS/NDK Headers */
-#include <ddk/ntifs.h>
-#include <ddk/ntddk.h>
-#include <ddk/wdmguid.h>
-#include <ndk/ntndk.h>
+#define NTKERNELAPI
+#define NOEXTAPI
+#include <ntifs.h>
+#undef _KPROCESS
+#undef _EPROCESS
+#include <wdmguid.h>
+#include <arc/arc.h>
+#include <ntndk.h>
+#undef TEXT
+#define TEXT(s) L##s
+#include <regstr.h>
/* FIXME: Temporary until CC Ros is gone */
#include <ccros.h>
-
-/* ReactOS Headers */
-#include <reactos/version.h>
-#include <reactos/resource.h>
-#include <reactos/bugcodes.h>
-#include <reactos/rossym.h>
+#include <rosldr.h>
/* Disk Dump Driver Header */
#include <diskdump/diskdump.h>
/* SEH support with PSEH */
#include <pseh/pseh.h>
+/* ReactOS Headers */
+#include <reactos/buildno.h>
+#include <reactos/bugcodes.h>
+#define ExRaiseStatus RtlRaiseStatus
+#include <reactos/probe.h>
+#include <reactos/rossym.h>
+
+/* SetupLDR Support */
+#include <arc/setupblk.h>
+
+/* KD Support */
+#include <windbgkd.h>
+#include <wdbgexts.h>
+#include <kddll.h>
+
/* PNP GUIDs */
#include <umpnpmgr/sysguid.h>
/* Internal Headers */
#include "internal/ntoskrnl.h"
#include "config.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 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
+#undef KD_DEBUGGER_ENABLED
+#undef KD_DEBUGGER_NOT_PRESENT
+#define KD_DEBUGGER_ENABLED KdDebuggerEnabled
+#define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
+#define HalDispatchTable _HalDispatchTable
+#undef HALDISPATCH
+#define HALDISPATCH (&HalDispatchTable)