Update DDK so generic HAL can build
Modified: branches/new_headers/reactos/hal/hal/hal.c
Modified: branches/new_headers/reactos/include/ddk/winddk.h
Modified: branches/new_headers/reactos/include/reactos/buildno.h

Modified: branches/new_headers/reactos/hal/hal/hal.c
--- branches/new_headers/reactos/hal/hal/hal.c	2005-05-08 01:47:30 UTC (rev 15104)
+++ branches/new_headers/reactos/hal/hal/hal.c	2005-05-08 02:08:57 UTC (rev 15105)
@@ -12,6 +12,8 @@
 /* INCLUDES ******************************************************************/
 
 #include <ddk/ntddk.h>
+#include <ndk/haltypes.h>
+#include <ndk/kdtypes.h>
 #include <roscfg.h>
 
 #define NDEBUG
@@ -758,7 +760,7 @@
   return (KIRQL)0;
 }
 
-
+#undef KeLowerIrql
 VOID
 STDCALL
 KeLowerIrql(
@@ -782,7 +784,7 @@
   return Value;
 }
 
-
+#undef KeRaiseIrql
 VOID
 STDCALL
 KeRaiseIrql(

Modified: branches/new_headers/reactos/include/ddk/winddk.h
--- branches/new_headers/reactos/include/ddk/winddk.h	2005-05-08 01:47:30 UTC (rev 15104)
+++ branches/new_headers/reactos/include/ddk/winddk.h	2005-05-08 02:08:57 UTC (rev 15105)
@@ -169,6 +169,9 @@
 typedef struct _HAL_PRIVATE_DISPATCH_TABLE *PHAL_PRIVATE_DISPATCH_TABLE;
 typedef struct _DRIVE_LAYOUT_INFORMATION *PDRIVE_LAYOUT_INFORMATION;
 typedef struct _DRIVE_LAYOUT_INFORMATION_EX *PDRIVE_LAYOUT_INFORMATION_EX;
+typedef struct _BUS_HANDLER *PBUS_HANDLER;
+typedef struct _PEB *PPEB;
+typedef struct _DEVICE_HANDLER_OBJECT *PDEVICE_HANDLER_OBJECT;
 typedef struct _NAMED_PIPE_CREATE_PARAMETERS *PNAMED_PIPE_CREATE_PARAMETERS;
 typedef struct _MAILSLOT_CREATE_PARAMETERS *PMAILSLOT_CREATE_PARAMETERS;
 typedef struct _FILE_GET_QUOTA_INFORMATION *PFILE_GET_QUOTA_INFORMATION;
@@ -328,7 +331,6 @@
 extern NTOSAPI POBJECT_TYPE SeTokenObjectType;
 
 extern NTOSAPI CCHAR KeNumberProcessors;
-extern NTOSAPI PHAL_DISPATCH_TABLE HalDispatchTable;
 extern NTOSAPI PHAL_PRIVATE_DISPATCH_TABLE HalPrivateDispatchTable;
 
 
@@ -3893,8 +3895,208 @@
   IN PVOID  Argument1,
   IN PVOID  Argument2);
 
+typedef enum _HAL_QUERY_INFORMATION_CLASS 
+{
+    HalInstalledBusInformation,
+    HalProfileSourceInformation,
+    HalInformationClassUnused1,
+    HalPowerInformation,
+    HalProcessorSpeedInformation,
+    HalCallbackInformation,
+    HalMapRegisterInformation,
+    HalMcaLogInformation,
+    HalFrameBufferCachingInformation,
+    HalDisplayBiosInformation,
+    HalProcessorFeatureInformation,
+    HalNumaTopologyInterface,
+    HalErrorInformation,
+    HalCmcLogInformation,
+    HalCpeLogInformation,
+    HalQueryMcaInterface,
+    HalQueryAMLIIllegalIOPortAddresses,
+    HalQueryMaxHotPlugMemoryAddress,
+    HalPartitionIpiInterface,
+    HalPlatformInformation,
+    HalQueryProfileSourceList
+} HAL_QUERY_INFORMATION_CLASS, *PHAL_QUERY_INFORMATION_CLASS;
 
+typedef enum _HAL_SET_INFORMATION_CLASS
+ {
+    HalProfileSourceInterval,
+    HalProfileSourceInterruptHandler,
+    HalMcaRegisterDriver,
+    HalKernelErrorHandler,
+    HalCmcRegisterDriver,
+    HalCpeRegisterDriver,
+    HalMcaLog,
+    HalCmcLog,
+    HalCpeLog,
+    HalGenerateCmcInterrupt
+} HAL_SET_INFORMATION_CLASS, *PHAL_SET_INFORMATION_CLASS;
 
+/* Function Type Defintions for Dispatch Functions */
+
+typedef
+VOID
+(*PDEVICE_CONTROL_COMPLETION)(
+    IN struct _DEVICE_CONTROL_CONTEXT     *ControlContext
+    );
+
+typedef struct _DEVICE_CONTROL_CONTEXT {
+    NTSTATUS                Status;
+    PDEVICE_HANDLER_OBJECT  DeviceHandler;
+    PDEVICE_OBJECT          DeviceObject;
+    ULONG                   ControlCode;
+    PVOID                   Buffer;
+    PULONG                  BufferLength;
+    PVOID                   Context;
+} DEVICE_CONTROL_CONTEXT, *PDEVICE_CONTROL_CONTEXT;
+
+typedef struct _PM_DISPATCH_TABLE {
+    ULONG   Signature;
+    ULONG   Version;
+    PVOID   Function[1];
+} PM_DISPATCH_TABLE, *PPM_DISPATCH_TABLE;
+
+typedef NTSTATUS STDCALL
+(*pHalDeviceControl)(IN PDEVICE_HANDLER_OBJECT DeviceHandler,
+		     IN PDEVICE_OBJECT DeviceObject,
+		     IN ULONG ControlCode,
+		     IN OUT PVOID Buffer OPTIONAL,
+		     IN OUT PULONG BufferLength OPTIONAL,
+		     IN PVOID Context,
+		     IN PDEVICE_CONTROL_COMPLETION CompletionRoutine);
+
+typedef VOID FASTCALL
+(*pHalExamineMBR)(IN PDEVICE_OBJECT DeviceObject,
+		  IN ULONG SectorSize,
+		  IN ULONG MBRTypeIdentifier,
+		  OUT PVOID *Buffer);
+
+typedef VOID FASTCALL
+(*pHalIoAssignDriveLetters)(IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
+			    IN PSTRING NtDeviceName,
+			    OUT PUCHAR NtSystemPath,
+			    OUT PSTRING NtSystemPathString);
+
+typedef NTSTATUS FASTCALL
+(*pHalIoReadPartitionTable)(IN PDEVICE_OBJECT DeviceObject,
+			    IN ULONG SectorSize,
+			    IN BOOLEAN ReturnRecognizedPartitions,
+			    OUT PDRIVE_LAYOUT_INFORMATION *PartitionBuffer);
+
+typedef NTSTATUS FASTCALL
+(*pHalIoSetPartitionInformation)(IN PDEVICE_OBJECT DeviceObject,
+				 IN ULONG SectorSize,
+				 IN ULONG PartitionNumber,
+				 IN ULONG PartitionType);
+
+typedef NTSTATUS FASTCALL
+(*pHalIoWritePartitionTable)(IN PDEVICE_OBJECT DeviceObject,
+			     IN ULONG SectorSize,
+			     IN ULONG SectorsPerTrack,
+			     IN ULONG NumberOfHeads,
+			     IN PDRIVE_LAYOUT_INFORMATION PartitionBuffer);
+
+typedef PBUS_HANDLER FASTCALL
+(*pHalHandlerForBus)(IN INTERFACE_TYPE InterfaceType,
+		     IN ULONG BusNumber);
+
+typedef VOID FASTCALL
+(*pHalReferenceBusHandler)(IN PBUS_HANDLER BusHandler);
+
+typedef NTSTATUS STDCALL
+(*pHalQuerySystemInformation)(IN HAL_QUERY_INFORMATION_CLASS InformationClass,
+			      IN ULONG BufferSize,
+			      IN OUT PVOID Buffer,
+			      OUT PULONG ReturnedLength);
+
+
+typedef NTSTATUS STDCALL
+(*pHalSetSystemInformation)(IN HAL_SET_INFORMATION_CLASS InformationClass,
+			    IN ULONG BufferSize,
+			    IN PVOID Buffer);
+
+
+typedef NTSTATUS STDCALL
+(*pHalQueryBusSlots)(IN PBUS_HANDLER BusHandler,
+		     IN ULONG BufferSize,
+		     OUT PULONG SlotNumbers,
+		     OUT PULONG ReturnedLength);
+
+typedef NTSTATUS STDCALL
+(*pHalInitPnpDriver)(VOID);
+ 
+typedef NTSTATUS STDCALL
+(*pHalInitPowerManagement)(IN PPM_DISPATCH_TABLE  PmDriverDispatchTable,
+    			   OUT PPM_DISPATCH_TABLE *PmHalDispatchTable);
+
+typedef struct _DMA_ADAPTER * STDCALL
+(*pHalGetDmaAdapter)(IN PVOID Context,
+    		     IN struct _DEVICE_DESCRIPTION *DeviceDescriptor,
+    		     OUT PULONG NumberOfMapRegisters);
+		     
+typedef NTSTATUS STDCALL 
+(*pHalGetInterruptTranslator)(IN INTERFACE_TYPE ParentInterfaceType,
+			      IN ULONG ParentBusNumber,
+			      IN INTERFACE_TYPE BridgeInterfaceType,
+			      IN USHORT Size,
+			      IN USHORT Version,
+			      OUT PTRANSLATOR_INTERFACE Translator,
+			      OUT PULONG BridgeBusNumber);
+
+typedef NTSTATUS STDCALL (*pHalStartMirroring)(VOID);
+
+typedef NTSTATUS STDCALL (*pHalEndMirroring)(IN ULONG PassNumber);
+
+typedef NTSTATUS STDCALL
+(*pHalMirrorPhysicalMemory)(IN PHYSICAL_ADDRESS PhysicalAddress,
+    IN LARGE_INTEGER NumberOfBytes);
+
+typedef NTSTATUS STDCALL
+(*pHalMirrorVerify)(IN PHYSICAL_ADDRESS PhysicalAddress,
+    IN LARGE_INTEGER NumberOfBytes);
+
+typedef VOID STDCALL
+(*pHalEndOfBoot)(VOID);
+
+typedef BOOLEAN STDCALL
+(*PHAL_RESET_DISPLAY_PARAMETERS)(ULONG Columns, ULONG Rows);
+           
+typedef struct {
+    ULONG                           Version;
+    pHalQuerySystemInformation      HalQuerySystemInformation;
+    pHalSetSystemInformation        HalSetSystemInformation;
+    pHalQueryBusSlots               HalQueryBusSlots;
+    ULONG                           Spare1;
+    pHalExamineMBR                  HalExamineMBR;
+    pHalIoAssignDriveLetters        HalIoAssignDriveLetters;
+    pHalIoReadPartitionTable        HalIoReadPartitionTable;
+    pHalIoSetPartitionInformation   HalIoSetPartitionInformation;
+    pHalIoWritePartitionTable       HalIoWritePartitionTable;
+
+    pHalHandlerForBus               HalReferenceHandlerForBus;
+    pHalReferenceBusHandler         HalReferenceBusHandler;
+    pHalReferenceBusHandler         HalDereferenceBusHandler;
+
+    pHalInitPnpDriver               HalInitPnpDriver;
+    pHalInitPowerManagement         HalInitPowerManagement;
+
+    pHalGetDmaAdapter               HalGetDmaAdapter;
+    pHalGetInterruptTranslator      HalGetInterruptTranslator;
+
+    pHalStartMirroring              HalStartMirroring;
+    pHalEndMirroring                HalEndMirroring;
+    pHalMirrorPhysicalMemory        HalMirrorPhysicalMemory;
+    pHalEndOfBoot                   HalEndOfBoot;
+    pHalMirrorVerify                HalMirrorVerify;
+
+} HAL_DISPATCH, *PHAL_DISPATCH;
+
+
+extern  HAL_DISPATCH   HalDispatchTable;
+#define HALDISPATCH     HalDispatchTable
+
 /*
 ** Storage structures
 */

Modified: branches/new_headers/reactos/include/reactos/buildno.h
--- branches/new_headers/reactos/include/reactos/buildno.h	2005-05-08 01:47:30 UTC (rev 15104)
+++ branches/new_headers/reactos/include/reactos/buildno.h	2005-05-08 02:08:57 UTC (rev 15105)
@@ -1,9 +1,9 @@
 /* Do not edit - Machine generated */
 #ifndef _INC_REACTOS_BUILDNO
 #define _INC_REACTOS_BUILDNO
-#define KERNEL_VERSION_BUILD	20050507
-#define KERNEL_VERSION_BUILD_STR	"20050507-r15066"
-#define KERNEL_VERSION_BUILD_RC	"20050507-r15066\0"
+#define KERNEL_VERSION_BUILD	20050508
+#define KERNEL_VERSION_BUILD_STR	"20050508-r15096"
+#define KERNEL_VERSION_BUILD_RC	"20050508-r15096\0"
 #define KERNEL_RELEASE_RC	"0.3-SVN\0"
 #define KERNEL_RELEASE_STR	"0.3-SVN"
 #define KERNEL_VERSION_RC	"0.3-SVN\0"