Get rosrtl to compile, add some more stuff missing in headers.
Modified: branches/new_headers/reactos/include/ddk/winddk.h
Modified: branches/new_headers/reactos/include/ndk/pstypes.h
Modified: branches/new_headers/reactos/include/ndk/umtypes.h
Modified: branches/new_headers/reactos/include/ndk/zwtypes.h
Modified: branches/new_headers/reactos/lib/rosrtl/file/sparse.c
Modified: branches/new_headers/reactos/lib/rosrtl/misc/devmode.c
Modified: branches/new_headers/reactos/lib/rosrtl/misc/logfont.c
Modified: branches/new_headers/reactos/lib/rosrtl/recmutex/recmutex.c
Modified: branches/new_headers/reactos/lib/rosrtl/registry/registry.c
Modified: branches/new_headers/reactos/lib/rosrtl/string/append.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/create.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/exit.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/i386/context.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/linearstack.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/priv.c
Modified: branches/new_headers/reactos/lib/rosrtl/thread/stack.c

Modified: branches/new_headers/reactos/include/ddk/winddk.h
--- branches/new_headers/reactos/include/ddk/winddk.h	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/include/ddk/winddk.h	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3863,6 +3863,39 @@
   MaxThreadInfoClass
 } THREADINFOCLASS;
 
+typedef struct _VM_COUNTERS 
+{
+    SIZE_T PeakVirtualSize;
+    SIZE_T VirtualSize;
+    ULONG PageFaultCount;
+    SIZE_T PeakWorkingSetSize;
+    SIZE_T WorkingSetSize;
+    SIZE_T QuotaPeakPagedPoolUsage;
+    SIZE_T QuotaPagedPoolUsage;
+    SIZE_T QuotaPeakNonPagedPoolUsage;
+    SIZE_T QuotaNonPagedPoolUsage;
+    SIZE_T PagefileUsage;
+    SIZE_T PeakPagefileUsage;
+} VM_COUNTERS;
+typedef VM_COUNTERS *PVM_COUNTERS;
+
+typedef struct _VM_COUNTERS_EX 
+{
+    SIZE_T PeakVirtualSize;
+    SIZE_T VirtualSize;
+    ULONG PageFaultCount;
+    SIZE_T PeakWorkingSetSize;
+    SIZE_T WorkingSetSize;
+    SIZE_T QuotaPeakPagedPoolUsage;
+    SIZE_T QuotaPagedPoolUsage;
+    SIZE_T QuotaPeakNonPagedPoolUsage;
+    SIZE_T QuotaNonPagedPoolUsage;
+    SIZE_T PagefileUsage;
+    SIZE_T PeakPagefileUsage;
+    SIZE_T PrivateUsage;
+} VM_COUNTERS_EX;
+typedef VM_COUNTERS_EX *PVM_COUNTERS_EX;
+
 #define ES_SYSTEM_REQUIRED                0x00000001
 #define ES_DISPLAY_REQUIRED               0x00000002
 #define ES_USER_PRESENT                   0x00000004
@@ -4341,6 +4374,32 @@
   ResultPositive = RESULT_POSITIVE
 } INTERLOCKED_RESULT;
 
+#define MAXIMUM_LEADBYTES 12
+
+typedef struct _CPTABLEINFO 
+{
+    USHORT CodePage;                    
+    USHORT MaximumCharacterSize;
+    USHORT DefaultChar;
+    USHORT UniDefaultChar;
+    USHORT TransDefaultChar;
+    USHORT TransUniDefaultChar;
+    USHORT DBCSCodePage;
+    UCHAR  LeadByte[MAXIMUM_LEADBYTES];
+    PUSHORT MultiByteTable;
+    PVOID   WideCharTable;
+    PUSHORT DBCSRanges;
+    PUSHORT DBCSOffsets;
+} CPTABLEINFO, *PCPTABLEINFO;
+
+typedef struct _NLSTABLEINFO 
+{
+    CPTABLEINFO OemTableInfo;
+    CPTABLEINFO AnsiTableInfo;
+    PUSHORT UpperCaseTable;
+    PUSHORT LowerCaseTable;
+} NLSTABLEINFO, *PNLSTABLEINFO;
+
 NTOSAPI
 KIRQL
 DDKAPI

Modified: branches/new_headers/reactos/include/ndk/pstypes.h
--- branches/new_headers/reactos/include/ndk/pstypes.h	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/include/ndk/pstypes.h	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,22 +1,3 @@
-/* $Id: pstypes.h,v 1.1.2.1 2004/10/25 01:24:07 ion Exp $
- *
- *  ReactOS Headers
- *  Copyright (C) 1998-2004 ReactOS Team
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 2 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
 /*
  * PROJECT:         ReactOS Native Headers
  * FILE:            include/ndk/pstypes.h
@@ -57,6 +38,8 @@
 #define THREAD_ALERT 0x4
 #define USER_SHARED_DATA (0x7FFE0000)
 
+struct _ETHREAD;
+
 typedef struct _RTL_USER_PROCESS_PARAMETERS {
 	ULONG  AllocationSize;
 	ULONG  Size;

Modified: branches/new_headers/reactos/include/ndk/umtypes.h
--- branches/new_headers/reactos/include/ndk/umtypes.h	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/include/ndk/umtypes.h	2005-05-08 04:32:40 UTC (rev 15113)
@@ -743,7 +743,41 @@
     };
 } KUSER_SHARED_DATA, *PKUSER_SHARED_DATA;
 
+typedef struct _CPTABLEINFO *PCPTABLEINFO;
+typedef struct _NLSTABLEINFO *PNLSTABLEINFO;
 
+typedef struct _VM_COUNTERS 
+{
+    SIZE_T PeakVirtualSize;
+    SIZE_T VirtualSize;
+    ULONG PageFaultCount;
+    SIZE_T PeakWorkingSetSize;
+    SIZE_T WorkingSetSize;
+    SIZE_T QuotaPeakPagedPoolUsage;
+    SIZE_T QuotaPagedPoolUsage;
+    SIZE_T QuotaPeakNonPagedPoolUsage;
+    SIZE_T QuotaNonPagedPoolUsage;
+    SIZE_T PagefileUsage;
+    SIZE_T PeakPagefileUsage;
+} VM_COUNTERS;
+typedef VM_COUNTERS *PVM_COUNTERS;
 
+typedef struct _VM_COUNTERS_EX 
+{
+    SIZE_T PeakVirtualSize;
+    SIZE_T VirtualSize;
+    ULONG PageFaultCount;
+    SIZE_T PeakWorkingSetSize;
+    SIZE_T WorkingSetSize;
+    SIZE_T QuotaPeakPagedPoolUsage;
+    SIZE_T QuotaPagedPoolUsage;
+    SIZE_T QuotaPeakNonPagedPoolUsage;
+    SIZE_T QuotaNonPagedPoolUsage;
+    SIZE_T PagefileUsage;
+    SIZE_T PeakPagefileUsage;
+    SIZE_T PrivateUsage;
+} VM_COUNTERS_EX;
+typedef VM_COUNTERS_EX *PVM_COUNTERS_EX;
+
 #endif
 

Modified: branches/new_headers/reactos/include/ndk/zwtypes.h
--- branches/new_headers/reactos/include/ndk/zwtypes.h	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/include/ndk/zwtypes.h	2005-05-08 04:32:40 UTC (rev 15113)
@@ -35,34 +35,6 @@
 typedef unsigned short LANGID;
 typedef LANGID *PLANGID;
 
-typedef struct _LDT_ENTRY {
-	WORD LimitLow;
-	WORD BaseLow;
-	union {
-		struct {
-			BYTE BaseMid;
-			BYTE Flags1;
-			BYTE Flags2;
-			BYTE BaseHi;
-		} Bytes;
-		struct {
-			DWORD BaseMid:8;
-			DWORD Type:5;
-			DWORD Dpl:2;
-			DWORD Pres:1;
-			DWORD LimitHi:4;
-			DWORD Sys:1;
-			DWORD Reserved_0:1;
-			DWORD Default_Big:1;
-			DWORD Granularity:1;
-			DWORD BaseHi:8;
-		} Bits;
-	} HighWord;
-} LDT_ENTRY;
-#ifndef _WINBASE_H
-typedef LDT_ENTRY *PLDT_ENTRY,*LPLDT_ENTRY;
-#endif
-
 typedef enum _THREAD_STATE {
 	StateInitialized,
 	StateReady,

Modified: branches/new_headers/reactos/lib/rosrtl/file/sparse.c
--- branches/new_headers/reactos/lib/rosrtl/file/sparse.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/file/sparse.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,7 +1,6 @@
 #include <windows.h>
-#include <ddk/ntifs.h>
-#include <string.h>
-#include <rosrtl/sparse.h>
+#define NTOS_MODE_USER
+#include <ndk/ntndk.h>
 
 /*
  * Utility to convert a file to a sparse file

Modified: branches/new_headers/reactos/lib/rosrtl/misc/devmode.c
--- branches/new_headers/reactos/lib/rosrtl/misc/devmode.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/misc/devmode.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,6 +1,5 @@
 #include <windows.h>
-#include <string.h>
-#include <rosrtl/devmode.h>
+#include <reactos/rosrtl/devmode.h>
 
 #define SIZEOF_DEVMODEA_300 124
 #define SIZEOF_DEVMODEA_400 148

Modified: branches/new_headers/reactos/lib/rosrtl/misc/logfont.c
--- branches/new_headers/reactos/lib/rosrtl/misc/logfont.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/misc/logfont.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,6 +1,5 @@
 #include <windows.h>
-#include <string.h>
-#include <rosrtl/logfont.h>
+#include <reactos/rosrtl/logfont.h>
 
 void
 RosRtlLogFontA2W ( LPLOGFONTW pW, const LOGFONTA *pA )

Modified: branches/new_headers/reactos/lib/rosrtl/recmutex/recmutex.c
--- branches/new_headers/reactos/lib/rosrtl/recmutex/recmutex.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/recmutex/recmutex.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,7 +1,7 @@
-#define NTOS_MODE_USER
-#include <ntos.h>
-#include <rosrtl/recmutex.h>
+#include <ddk/ntddk.h>
 
+#include <reactos/rosrtl/recmutex.h>
+
 VOID RecursiveMutexInit( PRECURSIVE_MUTEX RecMutex ) {
     RtlZeroMemory( RecMutex, sizeof(*RecMutex) );
     KeInitializeSpinLock( &RecMutex->SpinLock );

Modified: branches/new_headers/reactos/lib/rosrtl/registry/registry.c
--- branches/new_headers/reactos/lib/rosrtl/registry/registry.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/registry/registry.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,6 +1,7 @@
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
-#include <rosrtl/string.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/string.h>
 
 /*
  * Utility function to read a value from the registry more easily.

Modified: branches/new_headers/reactos/lib/rosrtl/string/append.c
--- branches/new_headers/reactos/lib/rosrtl/string/append.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/string/append.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,5 +1,6 @@
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
 
 /* 
  * Utility to copy and append two unicode strings.

Modified: branches/new_headers/reactos/lib/rosrtl/thread/create.c
--- branches/new_headers/reactos/lib/rosrtl/thread/create.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/create.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3,15 +3,11 @@
 /*
 */
 
-#include <stdarg.h>
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/thread.h>
 
-#define NDEBUG
-#include <ntdll/ntdll.h>
-
-#include <rosrtl/thread.h>
-
 NTSTATUS STDCALL
 RtlRosCreateUserThread
 (

Modified: branches/new_headers/reactos/lib/rosrtl/thread/exit.c
--- branches/new_headers/reactos/lib/rosrtl/thread/exit.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/exit.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3,14 +3,11 @@
 /*
 */
 
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/thread.h>
 
-#define NDEBUG
-#include <ntdll/ntdll.h>
-
-#include <rosrtl/thread.h>
-
 static VOID NTAPI RtlRosExitUserThread_Stage2
 (
  IN ULONG_PTR Status

Modified: branches/new_headers/reactos/lib/rosrtl/thread/i386/context.c
--- branches/new_headers/reactos/lib/rosrtl/thread/i386/context.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/i386/context.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3,16 +3,11 @@
 /*
 */
 
-#include <string.h>
-
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/thread.h>
 
-#include <napi/i386/segment.h>
-#include <napi/i386/floatsave.h>
-
-#include <rosrtl/thread.h>
-
 NTSTATUS NTAPI
 RtlRosInitializeContext
 (

Modified: branches/new_headers/reactos/lib/rosrtl/thread/linearstack.c
--- branches/new_headers/reactos/lib/rosrtl/thread/linearstack.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/linearstack.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3,11 +3,11 @@
 /*
 */
 
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/thread.h>
 
-#include <rosrtl/thread.h>
-
 NTSTATUS NTAPI RtlpRosValidateLinearUserStack
 (
  IN PVOID StackBase,

Modified: branches/new_headers/reactos/lib/rosrtl/thread/priv.c
--- branches/new_headers/reactos/lib/rosrtl/thread/priv.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/priv.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -1,6 +1,4 @@
 #include <windows.h>
-#include <string.h>
-#include <rosrtl/priv.h>
 
 /*
  * Utility to copy and enable thread privileges

Modified: branches/new_headers/reactos/lib/rosrtl/thread/stack.c
--- branches/new_headers/reactos/lib/rosrtl/thread/stack.c	2005-05-08 04:22:15 UTC (rev 15112)
+++ branches/new_headers/reactos/lib/rosrtl/thread/stack.c	2005-05-08 04:32:40 UTC (rev 15113)
@@ -3,14 +3,14 @@
 /*
 */
 
+#include <windows.h>
 #define NTOS_MODE_USER
-#include <ntos.h>
+#include <ndk/ntndk.h>
+#include <reactos/rosrtl/thread.h>
 
 #define NDEBUG
-#include <ntdll/ntdll.h>
+#include <reactos/debug.h>
 
-#include <rosrtl/thread.h>
-
 NTSTATUS NTAPI RtlRosCreateStack
 (
  IN HANDLE ProcessHandle,