mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
Changes for compiling with w32api * include/ddk/haltypes.h: Move ... * include/ntos/haltypes.h: ... here. * include/ddk/obtypes.h: Move ... * include/ntos/obtypes.h: ... here. * include/ddk/i386/tss.h: Move ... * include/ntos/tss.h: ... here. * include/errors.h, include/windows.h: #include_next <windows.h>. * include/ntos.h: Include "ntos/haltypes.h", "ntos/obtypes.h", and "ntos/tss.h". * include/ddk/defines.h (EXPORTED, IMPORTED): Move to include/ntos/types.h. * include/ddk/exfuncs.h, include/ddk/mmtypes.h, include/ntos/except.h, include/ntos/file.h, include/ole32/guiddef.h, include/win32k/color.h, lib/msafd/include/debug.h, lib/user32/include/debug.h, lib/ws2_32/include/debug.h, lib/ws2help/debug.h, ntoskrnl/include/internal/debug.h, ntoskrnl/ke/i386/bthread.S, ntoskrnl/rtl/error.c: Don't define macros if previously defined. * include/ddk/halfuncs.h: Include <ntos/haltypes.h>. * include/ddk/iotypes.h: Include <ntos/obtypes.h>. * include/ddk/ketypes.h (MB_FLAGS_*, LOADER_MODULE, ADDRESS_RANGE, LOADER_PARAMETER_BLOCK): Move to include/ntos/types.h. * include/ddk/ntddk.h: #include_next <ddk/ntddk.h>. * include/ddk/ntifs.h: #include_next <ddk/ntifs.h>. * include/napi/shared_data.h (SharedUserData): Undefine before defining. * include/ntos/rtl.h (RtlUpcaseUnicodeString): Correct prototype. * include/ntos/zwtypes.h (THREAD_STATE): Add. * lib/ntdll/rtl/unicode.c (RtlUpcaseUnicodeString): Match new prototype. * ntoskrnl/rtl/unicode.c (RtlUpcaseUnicodeString): Ditto. * lib/string/Makefile: Include Makefile.$(ARCH). Don't include makefile.$(ARCH). * ntoskrnl/ex/sysinfo.c, ntoskrnl/include/internal/ntoskrnl.h, * ntoskrnl/include/internal/ob.h, ntoskrnl/ob/handle.c: Include <ntos.h>. * ntoskrnl/ke/i386/syscall.S: Don't include <ddk/defines.h>. (KernelMode, UserMode): Define. * ntoskrnl/ke/i386/stkswitch.S, ntoskrnl/ke/i386/tskswitch.S, ntoskrnl/ke/i386/v86m_sup.S: Include <ntos/tss.h> svn path=/trunk/; revision=4789
This commit is contained in:
parent
91987ce5dc
commit
2d947f6f92
49 changed files with 294 additions and 873 deletions
|
@ -1,3 +1,44 @@
|
||||||
|
2003-05-28 Casper S. Hornstrup <chorns@users.sourceforge.net>
|
||||||
|
|
||||||
|
Changes for compiling with w32api
|
||||||
|
|
||||||
|
* include/ddk/haltypes.h: Move ...
|
||||||
|
* include/ntos/haltypes.h: ... here.
|
||||||
|
* include/ddk/obtypes.h: Move ...
|
||||||
|
* include/ntos/obtypes.h: ... here.
|
||||||
|
* include/ddk/i386/tss.h: Move ...
|
||||||
|
* include/ntos/tss.h: ... here.
|
||||||
|
* include/errors.h, include/windows.h: #include_next <windows.h>.
|
||||||
|
* include/ntos.h: Include "ntos/haltypes.h", "ntos/obtypes.h", and
|
||||||
|
"ntos/tss.h".
|
||||||
|
* include/ddk/defines.h (EXPORTED, IMPORTED): Move to
|
||||||
|
include/ntos/types.h.
|
||||||
|
* include/ddk/exfuncs.h, include/ddk/mmtypes.h, include/ntos/except.h,
|
||||||
|
include/ntos/file.h, include/ole32/guiddef.h, include/win32k/color.h,
|
||||||
|
lib/msafd/include/debug.h, lib/user32/include/debug.h,
|
||||||
|
lib/ws2_32/include/debug.h, lib/ws2help/debug.h,
|
||||||
|
ntoskrnl/include/internal/debug.h, ntoskrnl/ke/i386/bthread.S,
|
||||||
|
ntoskrnl/rtl/error.c: Don't define macros if previously defined.
|
||||||
|
* include/ddk/halfuncs.h: Include <ntos/haltypes.h>.
|
||||||
|
* include/ddk/iotypes.h: Include <ntos/obtypes.h>.
|
||||||
|
* include/ddk/ketypes.h (MB_FLAGS_*, LOADER_MODULE, ADDRESS_RANGE,
|
||||||
|
LOADER_PARAMETER_BLOCK): Move to include/ntos/types.h.
|
||||||
|
* include/ddk/ntddk.h: #include_next <ddk/ntddk.h>.
|
||||||
|
* include/ddk/ntifs.h: #include_next <ddk/ntifs.h>.
|
||||||
|
* include/napi/shared_data.h (SharedUserData): Undefine before defining.
|
||||||
|
* include/ntos/rtl.h (RtlUpcaseUnicodeString): Correct prototype.
|
||||||
|
* include/ntos/zwtypes.h (THREAD_STATE): Add.
|
||||||
|
* lib/ntdll/rtl/unicode.c (RtlUpcaseUnicodeString): Match new prototype.
|
||||||
|
* ntoskrnl/rtl/unicode.c (RtlUpcaseUnicodeString): Ditto.
|
||||||
|
* lib/string/Makefile: Include Makefile.$(ARCH). Don't include
|
||||||
|
makefile.$(ARCH).
|
||||||
|
* ntoskrnl/ex/sysinfo.c, ntoskrnl/include/internal/ntoskrnl.h,
|
||||||
|
* ntoskrnl/include/internal/ob.h, ntoskrnl/ob/handle.c: Include <ntos.h>.
|
||||||
|
* ntoskrnl/ke/i386/syscall.S: Don't include <ddk/defines.h>.
|
||||||
|
(KernelMode, UserMode): Define.
|
||||||
|
* ntoskrnl/ke/i386/stkswitch.S, ntoskrnl/ke/i386/tskswitch.S,
|
||||||
|
ntoskrnl/ke/i386/v86m_sup.S: Include <ntos/tss.h>
|
||||||
|
|
||||||
2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
|
2003-05-25 Casper S. Hornstrup <chorns@users.sourceforge.net>
|
||||||
|
|
||||||
* Makefile: Fix typo.
|
* Makefile: Fix typo.
|
||||||
|
|
|
@ -2,4 +2,4 @@
|
||||||
#include <reactos/resource.h>
|
#include <reactos/resource.h>
|
||||||
#include "resource.h"
|
#include "resource.h"
|
||||||
|
|
||||||
IDI_ICON ICON DISCARDABLE "ICON.ICO"
|
IDI_ICON ICON DISCARDABLE "icon.ico"
|
||||||
|
|
|
@ -5,14 +5,13 @@
|
||||||
|
|
||||||
#ifndef __ASM__
|
#ifndef __ASM__
|
||||||
|
|
||||||
|
#ifndef _WIN32_WINNT
|
||||||
#define _WIN32_WINNT 0x0400
|
#define _WIN32_WINNT 0x0400
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <ddk/kedef.h>
|
#include <ddk/kedef.h>
|
||||||
#include <ddk/iodef.h>
|
#include <ddk/iodef.h>
|
||||||
|
|
||||||
#define EXPORTED __declspec(dllexport)
|
|
||||||
#define IMPORTED __declspec(dllimport)
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PURPOSE: Number of a thread priority levels
|
* PURPOSE: Number of a thread priority levels
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -801,8 +801,10 @@ InterlockedIncrement (
|
||||||
PLONG Addend
|
PLONG Addend
|
||||||
);
|
);
|
||||||
|
|
||||||
|
#ifndef InterlockedExchangePointer
|
||||||
#define InterlockedExchangePointer(__T__, __V__) \
|
#define InterlockedExchangePointer(__T__, __V__) \
|
||||||
(PVOID)InterlockedExchange((PLONG)(__T__), (LONG)(__V__))
|
(PVOID)InterlockedExchange((PLONG)(__T__), (LONG)(__V__))
|
||||||
|
#endif
|
||||||
|
|
||||||
/*---*/
|
/*---*/
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
#ifndef __INCLUDE_DDK_HALFUNCS_H
|
#ifndef __INCLUDE_DDK_HALFUNCS_H
|
||||||
#define __INCLUDE_DDK_HALFUNCS_H
|
#define __INCLUDE_DDK_HALFUNCS_H
|
||||||
/* $Id: halfuncs.h,v 1.4 2003/02/26 14:11:41 ekohl Exp $ */
|
/* $Id: halfuncs.h,v 1.5 2003/05/28 18:09:09 chorns Exp $ */
|
||||||
|
|
||||||
|
#include <ntos/haltypes.h>
|
||||||
|
|
||||||
VOID STDCALL
|
VOID STDCALL
|
||||||
HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters);
|
HalAcquireDisplayOwnership(IN PHAL_RESET_DISPLAY_PARAMETERS ResetDisplayParameters);
|
||||||
|
|
|
@ -1,483 +0,0 @@
|
||||||
/* $Id: haltypes.h,v 1.10 2003/04/27 18:08:56 ekohl Exp $
|
|
||||||
*
|
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
|
||||||
* PROJECT: ReactOS kernel
|
|
||||||
* FILE: include/ddk/haltypes.h
|
|
||||||
* PURPOSE: HAL provided defintions for device drivers
|
|
||||||
* PROGRAMMER: David Welch (welch@mcmail.com)
|
|
||||||
* REVISION HISTORY:
|
|
||||||
* 23/06/98: Taken from linux system.h
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef __INCLUDE_DDK_HALTYPES_H
|
|
||||||
#define __INCLUDE_DDK_HALTYPES_H
|
|
||||||
|
|
||||||
|
|
||||||
/* HalReturnToFirmware */
|
|
||||||
#define FIRMWARE_HALT 1
|
|
||||||
#define FIRMWARE_REBOOT 3
|
|
||||||
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
DEVICE_DESCRIPTION_VERSION,
|
|
||||||
DEVICE_DESCRIPTION_VERSION1,
|
|
||||||
};
|
|
||||||
|
|
||||||
typedef ULONG DMA_WIDTH;
|
|
||||||
typedef ULONG DMA_SPEED;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Types for HalGetBusData
|
|
||||||
*/
|
|
||||||
typedef enum _BUS_DATA_TYPE
|
|
||||||
{
|
|
||||||
ConfigurationSpaceUndefined = -1,
|
|
||||||
Cmos,
|
|
||||||
EisaConfiguration,
|
|
||||||
Pos,
|
|
||||||
CbusConfiguration,
|
|
||||||
PCIConfiguration,
|
|
||||||
VMEConfiguration,
|
|
||||||
NuBusConfiguration,
|
|
||||||
PCMCIAConfiguration,
|
|
||||||
MPIConfiguration,
|
|
||||||
MPSAConfiguration,
|
|
||||||
PNPISAConfiguration,
|
|
||||||
MaximumBusDataType,
|
|
||||||
} BUS_DATA_TYPE, *PBUS_DATA_TYPE;
|
|
||||||
|
|
||||||
typedef struct _DEVICE_DESCRIPTION
|
|
||||||
{
|
|
||||||
ULONG Version;
|
|
||||||
BOOLEAN Master;
|
|
||||||
BOOLEAN ScatterGather;
|
|
||||||
BOOLEAN DemandMode;
|
|
||||||
BOOLEAN AutoInitialize;
|
|
||||||
BOOLEAN Dma32BitAddress;
|
|
||||||
BOOLEAN IgnoreCount;
|
|
||||||
BOOLEAN Reserved1;
|
|
||||||
BOOLEAN Reserved2;
|
|
||||||
ULONG BusNumber;
|
|
||||||
ULONG DmaChannel;
|
|
||||||
INTERFACE_TYPE InterfaceType;
|
|
||||||
DMA_WIDTH DmaWidth;
|
|
||||||
DMA_SPEED DmaSpeed;
|
|
||||||
ULONG MaximumLength;
|
|
||||||
ULONG DmaPort;
|
|
||||||
} DEVICE_DESCRIPTION, *PDEVICE_DESCRIPTION;
|
|
||||||
|
|
||||||
|
|
||||||
/* PCI bus definitions */
|
|
||||||
|
|
||||||
#define PCI_TYPE0_ADDRESSES 6
|
|
||||||
#define PCI_TYPE1_ADDRESSES 2
|
|
||||||
#define PCI_TYPE2_ADDRESSES 5
|
|
||||||
|
|
||||||
typedef struct _PCI_COMMON_CONFIG
|
|
||||||
{
|
|
||||||
USHORT VendorID; /* read-only */
|
|
||||||
USHORT DeviceID; /* read-only */
|
|
||||||
USHORT Command;
|
|
||||||
USHORT Status;
|
|
||||||
UCHAR RevisionID; /* read-only */
|
|
||||||
UCHAR ProgIf; /* read-only */
|
|
||||||
UCHAR SubClass; /* read-only */
|
|
||||||
UCHAR BaseClass; /* read-only */
|
|
||||||
UCHAR CacheLineSize; /* read-only */
|
|
||||||
UCHAR LatencyTimer; /* read-only */
|
|
||||||
UCHAR HeaderType; /* read-only */
|
|
||||||
UCHAR BIST;
|
|
||||||
union
|
|
||||||
{
|
|
||||||
struct _PCI_HEADER_TYPE_0
|
|
||||||
{
|
|
||||||
ULONG BaseAddresses[PCI_TYPE0_ADDRESSES];
|
|
||||||
ULONG CIS;
|
|
||||||
USHORT SubVendorID;
|
|
||||||
USHORT SubSystemID;
|
|
||||||
ULONG ROMBaseAddress;
|
|
||||||
ULONG Reserved2[2];
|
|
||||||
|
|
||||||
UCHAR InterruptLine;
|
|
||||||
UCHAR InterruptPin; /* read-only */
|
|
||||||
UCHAR MinimumGrant; /* read-only */
|
|
||||||
UCHAR MaximumLatency; /* read-only */
|
|
||||||
} type0;
|
|
||||||
|
|
||||||
/* PCI to PCI Bridge */
|
|
||||||
struct _PCI_HEADER_TYPE_1
|
|
||||||
{
|
|
||||||
ULONG BaseAddresses[PCI_TYPE1_ADDRESSES];
|
|
||||||
UCHAR PrimaryBus;
|
|
||||||
UCHAR SecondaryBus;
|
|
||||||
UCHAR SubordinateBus;
|
|
||||||
UCHAR SecondaryLatency;
|
|
||||||
UCHAR IOBase;
|
|
||||||
UCHAR IOLimit;
|
|
||||||
USHORT SecondaryStatus;
|
|
||||||
USHORT MemoryBase;
|
|
||||||
USHORT MemoryLimit;
|
|
||||||
USHORT PrefetchBase;
|
|
||||||
USHORT PrefetchLimit;
|
|
||||||
ULONG PrefetchBaseUpper32;
|
|
||||||
ULONG PrefetchLimitUpper32;
|
|
||||||
USHORT IOBaseUpper16;
|
|
||||||
USHORT IOLimitUpper16;
|
|
||||||
UCHAR CapabilitiesPtr;
|
|
||||||
UCHAR Reserved1[3];
|
|
||||||
ULONG ROMBaseAddress;
|
|
||||||
UCHAR InterruptLine;
|
|
||||||
UCHAR InterruptPin;
|
|
||||||
USHORT BridgeControl;
|
|
||||||
} type1;
|
|
||||||
|
|
||||||
/* PCI to CARDBUS Bridge */
|
|
||||||
struct _PCI_HEADER_TYPE_2
|
|
||||||
{
|
|
||||||
ULONG SocketRegistersBaseAddress;
|
|
||||||
UCHAR CapabilitiesPtr;
|
|
||||||
UCHAR Reserved;
|
|
||||||
USHORT SecondaryStatus;
|
|
||||||
UCHAR PrimaryBus;
|
|
||||||
UCHAR SecondaryBus;
|
|
||||||
UCHAR SubordinateBus;
|
|
||||||
UCHAR SecondaryLatency;
|
|
||||||
struct
|
|
||||||
{
|
|
||||||
ULONG Base;
|
|
||||||
ULONG Limit;
|
|
||||||
} Range[PCI_TYPE2_ADDRESSES-1];
|
|
||||||
UCHAR InterruptLine;
|
|
||||||
UCHAR InterruptPin;
|
|
||||||
USHORT BridgeControl;
|
|
||||||
} type2;
|
|
||||||
} u;
|
|
||||||
UCHAR DeviceSpecific[192];
|
|
||||||
} PCI_COMMON_CONFIG, *PPCI_COMMON_CONFIG;
|
|
||||||
|
|
||||||
#define PCI_COMMON_HDR_LENGTH (FIELD_OFFSET (PCI_COMMON_CONFIG, DeviceSpecific))
|
|
||||||
|
|
||||||
#define PCI_MAX_DEVICES 32
|
|
||||||
#define PCI_MAX_FUNCTION 8
|
|
||||||
|
|
||||||
#define PCI_INVALID_VENDORID 0xFFFF
|
|
||||||
|
|
||||||
|
|
||||||
/* Bit encodings for PCI_COMMON_CONFIG.HeaderType */
|
|
||||||
|
|
||||||
#define PCI_MULTIFUNCTION 0x80
|
|
||||||
#define PCI_DEVICE_TYPE 0x00
|
|
||||||
#define PCI_BRIDGE_TYPE 0x01
|
|
||||||
|
|
||||||
|
|
||||||
/* Bit encodings for PCI_COMMON_CONFIG.Command */
|
|
||||||
|
|
||||||
#define PCI_ENABLE_IO_SPACE 0x0001
|
|
||||||
#define PCI_ENABLE_MEMORY_SPACE 0x0002
|
|
||||||
#define PCI_ENABLE_BUS_MASTER 0x0004
|
|
||||||
#define PCI_ENABLE_SPECIAL_CYCLES 0x0008
|
|
||||||
#define PCI_ENABLE_WRITE_AND_INVALIDATE 0x0010
|
|
||||||
#define PCI_ENABLE_VGA_COMPATIBLE_PALETTE 0x0020
|
|
||||||
#define PCI_ENABLE_PARITY 0x0040
|
|
||||||
#define PCI_ENABLE_WAIT_CYCLE 0x0080
|
|
||||||
#define PCI_ENABLE_SERR 0x0100
|
|
||||||
#define PCI_ENABLE_FAST_BACK_TO_BACK 0x0200
|
|
||||||
|
|
||||||
|
|
||||||
/* Bit encodings for PCI_COMMON_CONFIG.Status */
|
|
||||||
|
|
||||||
#define PCI_STATUS_FAST_BACK_TO_BACK 0x0080
|
|
||||||
#define PCI_STATUS_DATA_PARITY_DETECTED 0x0100
|
|
||||||
#define PCI_STATUS_DEVSEL 0x0600 /* 2 bits wide */
|
|
||||||
#define PCI_STATUS_SIGNALED_TARGET_ABORT 0x0800
|
|
||||||
#define PCI_STATUS_RECEIVED_TARGET_ABORT 0x1000
|
|
||||||
#define PCI_STATUS_RECEIVED_MASTER_ABORT 0x2000
|
|
||||||
#define PCI_STATUS_SIGNALED_SYSTEM_ERROR 0x4000
|
|
||||||
#define PCI_STATUS_DETECTED_PARITY_ERROR 0x8000
|
|
||||||
|
|
||||||
|
|
||||||
/* PCI device classes */
|
|
||||||
|
|
||||||
#define PCI_CLASS_PRE_20 0x00
|
|
||||||
#define PCI_CLASS_MASS_STORAGE_CTLR 0x01
|
|
||||||
#define PCI_CLASS_NETWORK_CTLR 0x02
|
|
||||||
#define PCI_CLASS_DISPLAY_CTLR 0x03
|
|
||||||
#define PCI_CLASS_MULTIMEDIA_DEV 0x04
|
|
||||||
#define PCI_CLASS_MEMORY_CTLR 0x05
|
|
||||||
#define PCI_CLASS_BRIDGE_DEV 0x06
|
|
||||||
#define PCI_CLASS_SIMPLE_COMMS_CTLR 0x07
|
|
||||||
#define PCI_CLASS_BASE_SYSTEM_DEV 0x08
|
|
||||||
#define PCI_CLASS_INPUT_DEV 0x09
|
|
||||||
#define PCI_CLASS_DOCKING_STATION 0x0a
|
|
||||||
#define PCI_CLASS_PROCESSOR 0x0b
|
|
||||||
#define PCI_CLASS_SERIAL_BUS_CTLR 0x0c
|
|
||||||
|
|
||||||
|
|
||||||
/* PCI device subclasses for class 1 (mass storage controllers)*/
|
|
||||||
|
|
||||||
#define PCI_SUBCLASS_MSC_SCSI_BUS_CTLR 0x00
|
|
||||||
#define PCI_SUBCLASS_MSC_IDE_CTLR 0x01
|
|
||||||
#define PCI_SUBCLASS_MSC_FLOPPY_CTLR 0x02
|
|
||||||
#define PCI_SUBCLASS_MSC_IPI_CTLR 0x03
|
|
||||||
#define PCI_SUBCLASS_MSC_RAID_CTLR 0x04
|
|
||||||
#define PCI_SUBCLASS_MSC_OTHER 0x80
|
|
||||||
|
|
||||||
|
|
||||||
/* Bit encodes for PCI_COMMON_CONFIG.u.type0.BaseAddresses */
|
|
||||||
|
|
||||||
#define PCI_ADDRESS_IO_SPACE 0x00000001
|
|
||||||
#define PCI_ADDRESS_MEMORY_TYPE_MASK 0x00000006
|
|
||||||
#define PCI_ADDRESS_MEMORY_PREFETCHABLE 0x00000008
|
|
||||||
|
|
||||||
#define PCI_ADDRESS_IO_ADDRESS_MASK 0xfffffffc
|
|
||||||
#define PCI_ADDRESS_MEMORY_ADDRESS_MASK 0xfffffff0
|
|
||||||
#define PCI_ADDRESS_ROM_ADDRESS_MASK 0xfffff800
|
|
||||||
|
|
||||||
#define PCI_TYPE_32BIT 0
|
|
||||||
#define PCI_TYPE_20BIT 2
|
|
||||||
#define PCI_TYPE_64BIT 4
|
|
||||||
|
|
||||||
|
|
||||||
/* Bit encodes for PCI_COMMON_CONFIG.u.type0.ROMBaseAddresses */
|
|
||||||
|
|
||||||
#define PCI_ROMADDRESS_ENABLED 0x00000001
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct _PCI_SLOT_NUMBER
|
|
||||||
{
|
|
||||||
union
|
|
||||||
{
|
|
||||||
struct
|
|
||||||
{
|
|
||||||
ULONG DeviceNumber:5;
|
|
||||||
ULONG FunctionNumber:3;
|
|
||||||
ULONG Reserved:24;
|
|
||||||
} bits;
|
|
||||||
ULONG AsULONG;
|
|
||||||
} u;
|
|
||||||
} PCI_SLOT_NUMBER, *PPCI_SLOT_NUMBER;
|
|
||||||
|
|
||||||
|
|
||||||
/* Hal dispatch table */
|
|
||||||
|
|
||||||
typedef enum _HAL_QUERY_INFORMATION_CLASS
|
|
||||||
{
|
|
||||||
HalInstalledBusInformation,
|
|
||||||
HalProfileSourceInformation,
|
|
||||||
HalSystemDockInformation,
|
|
||||||
HalPowerInformation,
|
|
||||||
HalProcessorSpeedInformation,
|
|
||||||
HalCallbackInformation,
|
|
||||||
HalMapRegisterInformation,
|
|
||||||
HalMcaLogInformation,
|
|
||||||
HalFrameBufferCachingInformation,
|
|
||||||
HalDisplayBiosInformation
|
|
||||||
/* information levels >= 0x8000000 reserved for OEM use */
|
|
||||||
} HAL_QUERY_INFORMATION_CLASS, *PHAL_QUERY_INFORMATION_CLASS;
|
|
||||||
|
|
||||||
|
|
||||||
typedef enum _HAL_SET_INFORMATION_CLASS
|
|
||||||
{
|
|
||||||
HalProfileSourceInterval,
|
|
||||||
HalProfileSourceInterruptHandler,
|
|
||||||
HalMcaRegisterDriver
|
|
||||||
} HAL_SET_INFORMATION_CLASS, *PHAL_SET_INFORMATION_CLASS;
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct _BUS_HANDLER *PBUS_HANDLER;
|
|
||||||
typedef struct _DEVICE_HANDLER_OBJECT *PDEVICE_HANDLER_OBJECT;
|
|
||||||
|
|
||||||
|
|
||||||
typedef BOOLEAN STDCALL_FUNC
|
|
||||||
(*PHAL_RESET_DISPLAY_PARAMETERS)(ULONG Columns, ULONG Rows);
|
|
||||||
|
|
||||||
typedef NTSTATUS STDCALL_FUNC
|
|
||||||
(*pHalQuerySystemInformation)(IN HAL_QUERY_INFORMATION_CLASS InformationClass,
|
|
||||||
IN ULONG BufferSize,
|
|
||||||
IN OUT PVOID Buffer,
|
|
||||||
OUT PULONG ReturnedLength);
|
|
||||||
|
|
||||||
|
|
||||||
typedef NTSTATUS STDCALL_FUNC
|
|
||||||
(*pHalSetSystemInformation)(IN HAL_SET_INFORMATION_CLASS InformationClass,
|
|
||||||
IN ULONG BufferSize,
|
|
||||||
IN PVOID Buffer);
|
|
||||||
|
|
||||||
|
|
||||||
typedef NTSTATUS STDCALL_FUNC
|
|
||||||
(*pHalQueryBusSlots)(IN PBUS_HANDLER BusHandler,
|
|
||||||
IN ULONG BufferSize,
|
|
||||||
OUT PULONG SlotNumbers,
|
|
||||||
OUT PULONG ReturnedLength);
|
|
||||||
|
|
||||||
|
|
||||||
/* Control codes of HalDeviceControl function */
|
|
||||||
#define BCTL_EJECT 0x0001
|
|
||||||
#define BCTL_QUERY_DEVICE_ID 0x0002
|
|
||||||
#define BCTL_QUERY_DEVICE_UNIQUE_ID 0x0003
|
|
||||||
#define BCTL_QUERY_DEVICE_CAPABILITIES 0x0004
|
|
||||||
#define BCTL_QUERY_DEVICE_RESOURCES 0x0005
|
|
||||||
#define BCTL_QUERY_DEVICE_RESOURCE_REQUIREMENTS 0x0006
|
|
||||||
#define BCTL_QUERY_EJECT 0x0007
|
|
||||||
#define BCTL_SET_LOCK 0x0008
|
|
||||||
#define BCTL_SET_POWER 0x0009
|
|
||||||
#define BCTL_SET_RESUME 0x000A
|
|
||||||
#define BCTL_SET_DEVICE_RESOURCES 0x000B
|
|
||||||
|
|
||||||
/* Defines for BCTL structures */
|
|
||||||
typedef struct
|
|
||||||
{
|
|
||||||
BOOLEAN PowerSupported;
|
|
||||||
BOOLEAN ResumeSupported;
|
|
||||||
BOOLEAN LockSupported;
|
|
||||||
BOOLEAN EjectSupported;
|
|
||||||
BOOLEAN Removable;
|
|
||||||
} BCTL_DEVICE_CAPABILITIES, *PBCTL_DEVICE_CAPABILITIES;
|
|
||||||
|
|
||||||
|
|
||||||
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 VOID STDCALL_FUNC
|
|
||||||
(*PDEVICE_CONTROL_COMPLETION)(IN PDEVICE_CONTROL_CONTEXT ControlContext);
|
|
||||||
|
|
||||||
|
|
||||||
typedef NTSTATUS STDCALL_FUNC
|
|
||||||
(*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 PLOADER_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 struct _HAL_DISPATCH
|
|
||||||
{
|
|
||||||
ULONG Version;
|
|
||||||
pHalQuerySystemInformation HalQuerySystemInformation;
|
|
||||||
pHalSetSystemInformation HalSetSystemInformation;
|
|
||||||
pHalQueryBusSlots HalQueryBusSlots;
|
|
||||||
pHalDeviceControl HalDeviceControl;
|
|
||||||
pHalExamineMBR HalExamineMBR;
|
|
||||||
pHalIoAssignDriveLetters HalIoAssignDriveLetters;
|
|
||||||
pHalIoReadPartitionTable HalIoReadPartitionTable;
|
|
||||||
pHalIoSetPartitionInformation HalIoSetPartitionInformation;
|
|
||||||
pHalIoWritePartitionTable HalIoWritePartitionTable;
|
|
||||||
pHalHandlerForBus HalReferenceHandlerForBus;
|
|
||||||
pHalReferenceBusHandler HalReferenceBusHandler;
|
|
||||||
pHalReferenceBusHandler HalDereferenceBusHandler;
|
|
||||||
} HAL_DISPATCH, *PHAL_DISPATCH;
|
|
||||||
|
|
||||||
#ifdef __NTOSKRNL__
|
|
||||||
extern HAL_DISPATCH EXPORTED HalDispatchTable;
|
|
||||||
#define HALDISPATCH (&HalDispatchTable)
|
|
||||||
#else
|
|
||||||
extern PHAL_DISPATCH IMPORTED HalDispatchTable;
|
|
||||||
#define HALDISPATCH ((PHAL_DISPATCH)&HalDispatchTable)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HAL_DISPATCH_VERSION 1
|
|
||||||
#define HalDispatchTableVersion HALDISPATCH->Version
|
|
||||||
#define HalQuerySystemInformation HALDISPATCH->HalQuerySystemInformation
|
|
||||||
#define HalSetSystemInformation HALDISPATCH->HalSetSystemInformation
|
|
||||||
#define HalQueryBusSlots HALDISPATCH->HalQueryBusSlots
|
|
||||||
#define HalDeviceControl HALDISPATCH->HalDeviceControl
|
|
||||||
#define HalExamineMBR HALDISPATCH->HalExamineMBR
|
|
||||||
#define HalIoAssignDriveLetters HALDISPATCH->HalIoAssignDriveLetters
|
|
||||||
#define HalIoReadPartitionTable HALDISPATCH->HalIoReadPartitionTable
|
|
||||||
#define HalIoSetPartitionInformation HALDISPATCH->HalIoSetPartitionInformation
|
|
||||||
#define HalIoWritePartitionTable HALDISPATCH->HalIoWritePartitionTable
|
|
||||||
#define HalReferenceHandlerForBus HALDISPATCH->HalReferenceHandlerForBus
|
|
||||||
#define HalReferenceBusHandler HALDISPATCH->HalReferenceBusHandler
|
|
||||||
#define HalDereferenceBusHandler HALDISPATCH->HalDereferenceBusHandler
|
|
||||||
|
|
||||||
|
|
||||||
/* Hal private dispatch table */
|
|
||||||
|
|
||||||
typedef struct _HAL_PRIVATE_DISPATCH
|
|
||||||
{
|
|
||||||
ULONG Version;
|
|
||||||
} HAL_PRIVATE_DISPATCH, *PHAL_PRIVATE_DISPATCH;
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __NTOSKRNL__
|
|
||||||
extern HAL_PRIVATE_DISPATCH EXPORTED HalPrivateDispatchTable;
|
|
||||||
#else
|
|
||||||
extern PHAL_PRIVATE_DISPATCH IMPORTED HalPrivateDispatchTable;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define HAL_PRIVATE_DISPATCH_VERSION 1
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Kernel debugger section
|
|
||||||
*/
|
|
||||||
|
|
||||||
typedef struct _KD_PORT_INFORMATION
|
|
||||||
{
|
|
||||||
ULONG ComPort;
|
|
||||||
ULONG BaudRate;
|
|
||||||
ULONG BaseAddress;
|
|
||||||
} KD_PORT_INFORMATION, *PKD_PORT_INFORMATION;
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __NTHAL__
|
|
||||||
extern ULONG EXPORTED KdComPortInUse;
|
|
||||||
#else
|
|
||||||
extern ULONG IMPORTED KdComPortInUse;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* __INCLUDE_DDK_HALTYPES_H */
|
|
||||||
|
|
||||||
/* EOF */
|
|
|
@ -1,57 +0,0 @@
|
||||||
/*
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef __INCLUDE_DDK_I386_TSS_H
|
|
||||||
#define __INCLUDE_DDK_I386_TSS_H
|
|
||||||
|
|
||||||
#define KTSS_ESP0 (0x4)
|
|
||||||
|
|
||||||
#ifndef __ASM__
|
|
||||||
|
|
||||||
typedef struct _KTSS
|
|
||||||
{
|
|
||||||
USHORT PreviousTask;
|
|
||||||
USHORT Reserved1;
|
|
||||||
ULONG Esp0;
|
|
||||||
USHORT Ss0;
|
|
||||||
USHORT Reserved2;
|
|
||||||
ULONG Esp1;
|
|
||||||
USHORT Ss1;
|
|
||||||
USHORT Reserved3;
|
|
||||||
ULONG Esp2;
|
|
||||||
USHORT Ss2;
|
|
||||||
USHORT Reserved4;
|
|
||||||
ULONG Cr3;
|
|
||||||
ULONG Eip;
|
|
||||||
ULONG Eflags;
|
|
||||||
ULONG Eax;
|
|
||||||
ULONG Ecx;
|
|
||||||
ULONG Edx;
|
|
||||||
ULONG Ebx;
|
|
||||||
ULONG Esp;
|
|
||||||
ULONG Ebp;
|
|
||||||
ULONG Esi;
|
|
||||||
ULONG Edi;
|
|
||||||
USHORT Es;
|
|
||||||
USHORT Reserved5;
|
|
||||||
USHORT Cs;
|
|
||||||
USHORT Reserved6;
|
|
||||||
USHORT Ss;
|
|
||||||
USHORT Reserved7;
|
|
||||||
USHORT Ds;
|
|
||||||
USHORT Reserved8;
|
|
||||||
USHORT Fs;
|
|
||||||
USHORT Reserved9;
|
|
||||||
USHORT Gs;
|
|
||||||
USHORT Reserved10;
|
|
||||||
USHORT Ldt;
|
|
||||||
USHORT Reserved11;
|
|
||||||
USHORT Trap;
|
|
||||||
USHORT IoMapBase;
|
|
||||||
UCHAR IoBitmap[1];
|
|
||||||
} KTSS __attribute__((packed));
|
|
||||||
|
|
||||||
#endif /* not __ASM__ */
|
|
||||||
|
|
||||||
#endif /* __INCLUDE_DDK_I386_TSS_H */
|
|
|
@ -1,10 +1,11 @@
|
||||||
/* $Id: iotypes.h,v 1.47 2003/04/27 18:08:56 ekohl Exp $
|
/* $Id: iotypes.h,v 1.48 2003/05/28 18:09:09 chorns Exp $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __INCLUDE_DDK_IOTYPES_H
|
#ifndef __INCLUDE_DDK_IOTYPES_H
|
||||||
#define __INCLUDE_DDK_IOTYPES_H
|
#define __INCLUDE_DDK_IOTYPES_H
|
||||||
|
|
||||||
|
#include <ntos/obtypes.h>
|
||||||
#include <ntos/disk.h>
|
#include <ntos/disk.h>
|
||||||
#include <ntos/file.h>
|
#include <ntos/file.h>
|
||||||
|
|
||||||
|
|
|
@ -3,54 +3,6 @@
|
||||||
#ifndef __INCLUDE_DDK_KETYPES_H
|
#ifndef __INCLUDE_DDK_KETYPES_H
|
||||||
#define __INCLUDE_DDK_KETYPES_H
|
#define __INCLUDE_DDK_KETYPES_H
|
||||||
|
|
||||||
#define MB_FLAGS_MEM_INFO (0x1)
|
|
||||||
#define MB_FLAGS_BOOT_DEVICE (0x2)
|
|
||||||
#define MB_FLAGS_COMMAND_LINE (0x4)
|
|
||||||
#define MB_FLAGS_MODULE_INFO (0x8)
|
|
||||||
#define MB_FLAGS_AOUT_SYMS (0x10)
|
|
||||||
#define MB_FLAGS_ELF_SYMS (0x20)
|
|
||||||
#define MB_FLAGS_MMAP_INFO (0x40)
|
|
||||||
#define MB_FLAGS_DRIVES_INFO (0x80)
|
|
||||||
#define MB_FLAGS_CONFIG_TABLE (0x100)
|
|
||||||
#define MB_FLAGS_BOOT_LOADER_NAME (0x200)
|
|
||||||
#define MB_FLAGS_APM_TABLE (0x400)
|
|
||||||
#define MB_FLAGS_GRAPHICS_TABLE (0x800)
|
|
||||||
|
|
||||||
typedef struct _LOADER_MODULE
|
|
||||||
{
|
|
||||||
ULONG ModStart;
|
|
||||||
ULONG ModEnd;
|
|
||||||
ULONG String;
|
|
||||||
ULONG Reserved;
|
|
||||||
} LOADER_MODULE, *PLOADER_MODULE;
|
|
||||||
|
|
||||||
typedef struct _ADDRESS_RANGE
|
|
||||||
{
|
|
||||||
ULONG BaseAddrLow;
|
|
||||||
ULONG BaseAddrHigh;
|
|
||||||
ULONG LengthLow;
|
|
||||||
ULONG LengthHigh;
|
|
||||||
ULONG Type;
|
|
||||||
} ADDRESS_RANGE, *PADDRESS_RANGE;
|
|
||||||
|
|
||||||
typedef struct _LOADER_PARAMETER_BLOCK
|
|
||||||
{
|
|
||||||
ULONG Flags;
|
|
||||||
ULONG MemLower;
|
|
||||||
ULONG MemHigher;
|
|
||||||
ULONG BootDevice;
|
|
||||||
ULONG CommandLine;
|
|
||||||
ULONG ModsCount;
|
|
||||||
ULONG ModsAddr;
|
|
||||||
UCHAR Syms[12];
|
|
||||||
ULONG MmapLength;
|
|
||||||
ULONG MmapAddr;
|
|
||||||
ULONG DrivesCount;
|
|
||||||
ULONG DrivesAddr;
|
|
||||||
ULONG ConfigTable;
|
|
||||||
ULONG BootLoaderName;
|
|
||||||
} LOADER_PARAMETER_BLOCK, *PLOADER_PARAMETER_BLOCK;
|
|
||||||
|
|
||||||
#ifdef __NTOSKRNL__
|
#ifdef __NTOSKRNL__
|
||||||
extern CHAR EXPORTED KeNumberProcessors;
|
extern CHAR EXPORTED KeNumberProcessors;
|
||||||
extern LOADER_PARAMETER_BLOCK EXPORTED KeLoaderBlock;
|
extern LOADER_PARAMETER_BLOCK EXPORTED KeLoaderBlock;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: mmtypes.h,v 1.14 2002/10/01 19:27:19 chorns Exp $ */
|
/* $Id: mmtypes.h,v 1.15 2003/05/28 18:09:09 chorns Exp $ */
|
||||||
|
|
||||||
#ifndef _INCLUDE_DDK_MMTYPES_H
|
#ifndef _INCLUDE_DDK_MMTYPES_H
|
||||||
#define _INCLUDE_DDK_MMTYPES_H
|
#define _INCLUDE_DDK_MMTYPES_H
|
||||||
|
@ -19,7 +19,9 @@
|
||||||
/*
|
/*
|
||||||
* PURPOSE: Returns the byte offset of a field within a structure
|
* PURPOSE: Returns the byte offset of a field within a structure
|
||||||
*/
|
*/
|
||||||
|
#ifndef FIELD_OFFSET
|
||||||
#define FIELD_OFFSET(Type,Field) (LONG)(&(((Type *)(0))->Field))
|
#define FIELD_OFFSET(Type,Field) (LONG)(&(((Type *)(0))->Field))
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PURPOSE: Returns the base address structure if the caller knows the
|
* PURPOSE: Returns the base address structure if the caller knows the
|
||||||
|
@ -29,7 +31,9 @@
|
||||||
* Type = Type of the whole structure
|
* Type = Type of the whole structure
|
||||||
* Field = Name of the field whose address is none
|
* Field = Name of the field whose address is none
|
||||||
*/
|
*/
|
||||||
|
#ifndef CONTAINING_RECORD
|
||||||
#define CONTAINING_RECORD(Address,Type,Field) (Type *)(((LONG)Address) - FIELD_OFFSET(Type,Field))
|
#define CONTAINING_RECORD(Address,Type,Field) (Type *)(((LONG)Address) - FIELD_OFFSET(Type,Field))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#define MDL_MAPPED_TO_SYSTEM_VA (0x1)
|
#define MDL_MAPPED_TO_SYSTEM_VA (0x1)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: ntddk.h,v 1.34 2003/02/15 18:43:20 ekohl Exp $
|
/* $Id: ntddk.h,v 1.35 2003/05/28 18:09:09 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -9,6 +9,12 @@
|
||||||
* 15/05/98: Created
|
* 15/05/98: Created
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#ifdef __USE_W32API
|
||||||
|
|
||||||
|
#include_next <ddk/ntddk.h>
|
||||||
|
|
||||||
|
#else /* __USE_W32API */
|
||||||
|
|
||||||
#ifndef __NTDDK_H
|
#ifndef __NTDDK_H
|
||||||
#define __NTDDK_H
|
#define __NTDDK_H
|
||||||
|
|
||||||
|
@ -50,7 +56,6 @@ extern "C"
|
||||||
#include <ddk/ketypes.h>
|
#include <ddk/ketypes.h>
|
||||||
#include <ntos/security.h>
|
#include <ntos/security.h>
|
||||||
#include <ddk/setypes.h>
|
#include <ddk/setypes.h>
|
||||||
#include <ddk/obtypes.h>
|
|
||||||
#include <ddk/mmtypes.h>
|
#include <ddk/mmtypes.h>
|
||||||
#include <ddk/potypes.h>
|
#include <ddk/potypes.h>
|
||||||
#include <ddk/pnptypes.h>
|
#include <ddk/pnptypes.h>
|
||||||
|
@ -61,7 +66,6 @@ extern "C"
|
||||||
#include <ntos/zwtypes.h>
|
#include <ntos/zwtypes.h>
|
||||||
#include <ddk/ioctrl.h>
|
#include <ddk/ioctrl.h>
|
||||||
#include <ntos/rtltypes.h>
|
#include <ntos/rtltypes.h>
|
||||||
#include <ddk/haltypes.h>
|
|
||||||
#include <napi/shared_data.h>
|
#include <napi/shared_data.h>
|
||||||
|
|
||||||
#include <ntos/zw.h>
|
#include <ntos/zw.h>
|
||||||
|
@ -88,3 +92,4 @@ extern "C"
|
||||||
|
|
||||||
#endif /* __NTDDK_H */
|
#endif /* __NTDDK_H */
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
#ifdef __USE_W32API
|
||||||
|
|
||||||
|
#include_next <ddk/ntifs.h>
|
||||||
|
|
||||||
|
#else /* __USE_W32API */
|
||||||
|
|
||||||
#ifndef __INCLUDE_DDK_NTIFS_H
|
#ifndef __INCLUDE_DDK_NTIFS_H
|
||||||
#define __INCLUDE_DDK_NTIFS_H
|
#define __INCLUDE_DDK_NTIFS_H
|
||||||
|
|
||||||
|
@ -15,3 +21,5 @@ CcRosReleaseFileCache (PFILE_OBJECT FileObject);
|
||||||
#include <ddk/fsfuncs.h>
|
#include <ddk/fsfuncs.h>
|
||||||
|
|
||||||
#endif /* __INCLUDE_DDK_NTIFS_H */
|
#endif /* __INCLUDE_DDK_NTIFS_H */
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
|
@ -1,204 +0,0 @@
|
||||||
#ifndef _INCLUDE_DDK_OBTYPES_H
|
|
||||||
#define _INCLUDE_DDK_OBTYPES_H
|
|
||||||
/* $Id: obtypes.h,v 1.20 2003/02/15 18:43:20 ekohl Exp $ */
|
|
||||||
struct _DIRECTORY_OBJECT;
|
|
||||||
struct _OBJECT_ATTRIBUTES;
|
|
||||||
|
|
||||||
typedef ULONG ACCESS_STATE, *PACCESS_STATE;
|
|
||||||
|
|
||||||
typedef struct _OBJECT_HANDLE_INFORMATION {
|
|
||||||
ULONG HandleAttributes;
|
|
||||||
ACCESS_MASK GrantedAccess;
|
|
||||||
} OBJECT_HANDLE_INFORMATION, *POBJECT_HANDLE_INFORMATION;
|
|
||||||
|
|
||||||
typedef struct _OBJECT_TYPE
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
* PURPOSE: Tag to be used when allocating objects of this type
|
|
||||||
*/
|
|
||||||
ULONG Tag;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Name of the type
|
|
||||||
*/
|
|
||||||
UNICODE_STRING TypeName;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Total number of objects of this type
|
|
||||||
*/
|
|
||||||
ULONG TotalObjects;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Total number of handles of this type
|
|
||||||
*/
|
|
||||||
ULONG TotalHandles;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Maximum objects of this type
|
|
||||||
*/
|
|
||||||
ULONG MaxObjects;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Maximum handles of this type
|
|
||||||
*/
|
|
||||||
ULONG MaxHandles;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Paged pool charge
|
|
||||||
*/
|
|
||||||
ULONG PagedPoolCharge;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Nonpaged pool charge
|
|
||||||
*/
|
|
||||||
ULONG NonpagedPoolCharge;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Mapping of generic access rights
|
|
||||||
*/
|
|
||||||
PGENERIC_MAPPING Mapping;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Dumps the object
|
|
||||||
* NOTE: To be defined
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*Dump)(VOID);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Opens the object
|
|
||||||
* NOTE: To be defined
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*Open)(VOID);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Called to close an object if OkayToClose returns true
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*Close)(PVOID ObjectBody,
|
|
||||||
ULONG HandleCount);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Called to delete an object when the last reference is removed
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*Delete)(PVOID ObjectBody);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Called when an open attempts to open a file apparently
|
|
||||||
* residing within the object
|
|
||||||
* RETURNS
|
|
||||||
* STATUS_SUCCESS NextObject was found
|
|
||||||
* STATUS_UNSUCCESSFUL NextObject not found
|
|
||||||
* STATUS_REPARSE Path changed, restart parsing the path
|
|
||||||
*/
|
|
||||||
NTSTATUS STDCALL_FUNC (*Parse)(PVOID ParsedObject,
|
|
||||||
PVOID *NextObject,
|
|
||||||
PUNICODE_STRING FullPath,
|
|
||||||
PWSTR *Path,
|
|
||||||
ULONG Attributes);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Called to set, query, delete or assign a security-descriptor
|
|
||||||
* to the object
|
|
||||||
* RETURNS
|
|
||||||
* STATUS_SUCCESS NextObject was found
|
|
||||||
*/
|
|
||||||
NTSTATUS STDCALL_FUNC (*Security)(PVOID ObjectBody,
|
|
||||||
SECURITY_OPERATION_CODE OperationCode,
|
|
||||||
SECURITY_INFORMATION SecurityInformation,
|
|
||||||
PSECURITY_DESCRIPTOR SecurityDescriptor,
|
|
||||||
PULONG BufferLength);
|
|
||||||
|
|
||||||
/*
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*QueryName)(VOID);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Called when a process asks to close the object
|
|
||||||
*/
|
|
||||||
VOID STDCALL_FUNC (*OkayToClose)(VOID);
|
|
||||||
|
|
||||||
NTSTATUS STDCALL_FUNC (*Create)(PVOID ObjectBody,
|
|
||||||
PVOID Parent,
|
|
||||||
PWSTR RemainingPath,
|
|
||||||
struct _OBJECT_ATTRIBUTES* ObjectAttributes);
|
|
||||||
|
|
||||||
VOID STDCALL_FUNC (*DuplicationNotify)(PEPROCESS DuplicateTo,
|
|
||||||
PEPROCESS DuplicateFrom,
|
|
||||||
PVOID Object);
|
|
||||||
} OBJECT_TYPE, *POBJECT_TYPE;
|
|
||||||
|
|
||||||
|
|
||||||
typedef struct _OBJECT_HEADER
|
|
||||||
/*
|
|
||||||
* PURPOSE: Header for every object managed by the object manager
|
|
||||||
*/
|
|
||||||
{
|
|
||||||
UNICODE_STRING Name;
|
|
||||||
LIST_ENTRY Entry;
|
|
||||||
LONG RefCount;
|
|
||||||
LONG HandleCount;
|
|
||||||
BOOLEAN CloseInProcess;
|
|
||||||
BOOLEAN Permanent;
|
|
||||||
struct _DIRECTORY_OBJECT* Parent;
|
|
||||||
POBJECT_TYPE ObjectType;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Object type
|
|
||||||
* NOTE: This overlaps the first member of the object body
|
|
||||||
*/
|
|
||||||
CSHORT Type;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PURPOSE: Object size
|
|
||||||
* NOTE: This overlaps the second member of the object body
|
|
||||||
*/
|
|
||||||
CSHORT Size;
|
|
||||||
|
|
||||||
|
|
||||||
} OBJECT_HEADER, *POBJECT_HEADER;
|
|
||||||
|
|
||||||
typedef struct _OBJECT_ATTRIBUTES
|
|
||||||
{
|
|
||||||
ULONG Length;
|
|
||||||
HANDLE RootDirectory;
|
|
||||||
PUNICODE_STRING ObjectName;
|
|
||||||
ULONG Attributes;
|
|
||||||
SECURITY_DESCRIPTOR *SecurityDescriptor;
|
|
||||||
SECURITY_QUALITY_OF_SERVICE *SecurityQualityOfService;
|
|
||||||
} OBJECT_ATTRIBUTES, *POBJECT_ATTRIBUTES;
|
|
||||||
|
|
||||||
typedef struct _HANDLE_TABLE
|
|
||||||
{
|
|
||||||
LIST_ENTRY ListHead;
|
|
||||||
KSPIN_LOCK ListLock;
|
|
||||||
} HANDLE_TABLE, *PHANDLE_TABLE;
|
|
||||||
|
|
||||||
extern POBJECT_TYPE ObDirectoryType;
|
|
||||||
|
|
||||||
#if 0
|
|
||||||
#define OBJECT_TYPE_0 0
|
|
||||||
#define OBJECT_TYPE_1 1
|
|
||||||
#define OBJECT_TYPE_DIRECTORY 2
|
|
||||||
#define OBJECT_TYPE_SYMBOLICLINK 3
|
|
||||||
#define OBJECT_TYPE_TOKEN 4
|
|
||||||
#define OBJECT_TYPE_PROCESS 5
|
|
||||||
#define OBJECT_TYPE_THREAD 6
|
|
||||||
#define OBJECT_TYPE_EVENT 7
|
|
||||||
#define OBJECT_TYPE_8 8
|
|
||||||
#define OBJECT_TYPE_MUTANT 9
|
|
||||||
#define OBJECT_TYPE_SEMAPHORE 10
|
|
||||||
#define OBJECT_TYPE_TIMER 11
|
|
||||||
#define OBJECT_TYPE_12 12
|
|
||||||
#define OBJECT_TYPE_WINDOWSTATION 13
|
|
||||||
#define OBJECT_TYPE_DESKTOP 14
|
|
||||||
#define OBJECT_TYPE_SECTION 15
|
|
||||||
#define OBJECT_TYPE_KEY 16
|
|
||||||
#define OBJECT_TYPE_PORT 17
|
|
||||||
#define OBJECT_TYPE_18 18
|
|
||||||
#define OBJECT_TYPE_19 19
|
|
||||||
#define OBJECT_TYPE_20 20
|
|
||||||
#define OBJECT_TYPE_21 21
|
|
||||||
#define OBJECT_TYPE_IOCOMPLETION 22
|
|
||||||
#define OBJECT_TYPE_FILE 23
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* ndef _INCLUDE_DDK_OBTYPES_H */
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
#include <ntos/ps.h>
|
#include <ntos/ps.h>
|
||||||
|
|
||||||
#include <ddk/i386/tss.h>
|
#include <ntos/tss.h>
|
||||||
#include <napi/teb.h>
|
#include <napi/teb.h>
|
||||||
|
|
||||||
#ifndef TLS_MINIMUM_AVAILABLE
|
#ifndef TLS_MINIMUM_AVAILABLE
|
||||||
|
|
|
@ -31,6 +31,12 @@
|
||||||
#ifndef _GNU_H_WINDOWS32_ERROR
|
#ifndef _GNU_H_WINDOWS32_ERROR
|
||||||
#define _GNU_H_WINDOWS32_ERROR
|
#define _GNU_H_WINDOWS32_ERROR
|
||||||
|
|
||||||
|
#ifdef __USE_W32API
|
||||||
|
|
||||||
|
#include_next <windows.h>
|
||||||
|
|
||||||
|
#else /* !__USE_W32API */
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
@ -1165,4 +1171,6 @@ extern "C" {
|
||||||
}
|
}
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#endif /* !__USE_W32API */
|
||||||
|
|
||||||
#endif /* _GNU_H_WINDOWS32_ERROR */
|
#endif /* _GNU_H_WINDOWS32_ERROR */
|
||||||
|
|
|
@ -59,6 +59,9 @@ typedef struct _KUSER_SHARED_DATA
|
||||||
|
|
||||||
#if defined(__NTOSKRNL__) || defined(__NTDRIVER__) || defined(__NTHAL__)
|
#if defined(__NTOSKRNL__) || defined(__NTDRIVER__) || defined(__NTHAL__)
|
||||||
#define KI_USER_SHARED_DATA (0xFFDF0000)
|
#define KI_USER_SHARED_DATA (0xFFDF0000)
|
||||||
|
#ifdef SharedUserData
|
||||||
|
#undef SharedUserData
|
||||||
|
#endif
|
||||||
#define SharedUserData ((KUSER_SHARED_DATA * const)KI_USER_SHARED_DATA)
|
#define SharedUserData ((KUSER_SHARED_DATA * const)KI_USER_SHARED_DATA)
|
||||||
#else
|
#else
|
||||||
#ifndef __USE_W32API
|
#ifndef __USE_W32API
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#ifndef _NTOS_H
|
#ifndef _NTOS_H
|
||||||
#define _NTOS_H
|
#define _NTOS_H
|
||||||
/* $Id: ntos.h,v 1.8 2002/11/24 18:24:51 robd Exp $ */
|
/* $Id: ntos.h,v 1.9 2003/05/28 18:09:09 chorns Exp $ */
|
||||||
|
|
||||||
#if defined(NTOS_MODE_USER)
|
#if defined(NTOS_MODE_USER)
|
||||||
// include windows.h before ntddk.h to get user mode prototype for InterlockedXxx functions
|
// include windows.h before ntddk.h to get user mode prototype for InterlockedXxx functions
|
||||||
|
@ -80,6 +80,9 @@
|
||||||
#include "ntos/rtl.h"
|
#include "ntos/rtl.h"
|
||||||
#include "ntos/zwtypes.h"
|
#include "ntos/zwtypes.h"
|
||||||
#include "ntos/zw.h"
|
#include "ntos/zw.h"
|
||||||
|
#include "ntos/haltypes.h"
|
||||||
|
#include "ntos/obtypes.h"
|
||||||
|
#include "ntos/tss.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* ndef _NTOS_H */
|
#endif /* ndef _NTOS_H */
|
||||||
|
|
|
@ -17,11 +17,6 @@
|
||||||
#define CONSOLE_INPUT_MODE_VALID (0x0f)
|
#define CONSOLE_INPUT_MODE_VALID (0x0f)
|
||||||
#define CONSOLE_OUTPUT_MODE_VALID (0x03)
|
#define CONSOLE_OUTPUT_MODE_VALID (0x03)
|
||||||
|
|
||||||
typedef struct _CONSOLE_FONT_INFO {
|
|
||||||
DWORD nFont;
|
|
||||||
COORD dwFontSize;
|
|
||||||
} CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
|
|
||||||
|
|
||||||
typedef struct _CONSOLE_SELECTION_INFO {
|
typedef struct _CONSOLE_SELECTION_INFO {
|
||||||
DWORD dwFlags;
|
DWORD dwFlags;
|
||||||
COORD dwSelectionAnchor;
|
COORD dwSelectionAnchor;
|
||||||
|
@ -30,6 +25,11 @@ typedef struct _CONSOLE_SELECTION_INFO {
|
||||||
|
|
||||||
#ifndef __USE_W32API
|
#ifndef __USE_W32API
|
||||||
|
|
||||||
|
typedef struct _CONSOLE_FONT_INFO {
|
||||||
|
DWORD nFont;
|
||||||
|
COORD dwFontSize;
|
||||||
|
} CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
|
||||||
|
|
||||||
/* GetConsoleMode */
|
/* GetConsoleMode */
|
||||||
#define ENABLE_LINE_INPUT (0x02)
|
#define ENABLE_LINE_INPUT (0x02)
|
||||||
#define ENABLE_ECHO_INPUT (0x04)
|
#define ENABLE_ECHO_INPUT (0x04)
|
||||||
|
|
|
@ -57,7 +57,9 @@ typedef struct _EXCEPTION_RECORD {
|
||||||
/* ExceptionFlags */
|
/* ExceptionFlags */
|
||||||
#ifndef _GNU_H_WINDOWS32_DEFINES
|
#ifndef _GNU_H_WINDOWS32_DEFINES
|
||||||
#ifdef __NTOSKRNL__
|
#ifdef __NTOSKRNL__
|
||||||
|
#ifndef EXCEPTION_NONCONTINUABLE
|
||||||
#define EXCEPTION_NONCONTINUABLE 0x01
|
#define EXCEPTION_NONCONTINUABLE 0x01
|
||||||
|
#endif
|
||||||
#endif /* __NTOSKRNL__ */
|
#endif /* __NTOSKRNL__ */
|
||||||
#endif /* _GNU_H_WINDOWS32_DEFINES */
|
#endif /* _GNU_H_WINDOWS32_DEFINES */
|
||||||
#define EXCEPTION_UNWINDING 0x02
|
#define EXCEPTION_UNWINDING 0x02
|
||||||
|
|
|
@ -92,8 +92,6 @@
|
||||||
#define FILE_FILE_COMPRESSION (0x00000010)
|
#define FILE_FILE_COMPRESSION (0x00000010)
|
||||||
#define FILE_VOLUME_IS_COMPRESSED (0x00008000)
|
#define FILE_VOLUME_IS_COMPRESSED (0x00008000)
|
||||||
|
|
||||||
#endif /* !__USE_W32API */
|
|
||||||
|
|
||||||
#define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF)
|
#define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x1FF)
|
||||||
|
|
||||||
#define FILE_GENERIC_READ (STANDARD_RIGHTS_READ |\
|
#define FILE_GENERIC_READ (STANDARD_RIGHTS_READ |\
|
||||||
|
@ -110,10 +108,11 @@
|
||||||
FILE_APPEND_DATA |\
|
FILE_APPEND_DATA |\
|
||||||
SYNCHRONIZE)
|
SYNCHRONIZE)
|
||||||
|
|
||||||
|
|
||||||
#define FILE_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
|
#define FILE_GENERIC_EXECUTE (STANDARD_RIGHTS_EXECUTE |\
|
||||||
FILE_READ_ATTRIBUTES |\
|
FILE_READ_ATTRIBUTES |\
|
||||||
FILE_EXECUTE |\
|
FILE_EXECUTE |\
|
||||||
SYNCHRONIZE)
|
SYNCHRONIZE)
|
||||||
|
|
||||||
|
#endif /* !__USE_W32API */
|
||||||
|
|
||||||
#endif /* __INCLUDE_FILE_H */
|
#endif /* __INCLUDE_FILE_H */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: rtl.h,v 1.9 2003/05/16 17:33:51 ekohl Exp $
|
/* $Id: rtl.h,v 1.10 2003/05/28 18:09:09 chorns Exp $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1927,7 +1927,7 @@ NTSTATUS
|
||||||
STDCALL
|
STDCALL
|
||||||
RtlUpcaseUnicodeString (
|
RtlUpcaseUnicodeString (
|
||||||
IN OUT PUNICODE_STRING DestinationString,
|
IN OUT PUNICODE_STRING DestinationString,
|
||||||
IN PUNICODE_STRING SourceString,
|
IN PCUNICODE_STRING SourceString,
|
||||||
IN BOOLEAN AllocateDestinationString
|
IN BOOLEAN AllocateDestinationString
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: rtltypes.h,v 1.7 2003/05/16 17:33:51 ekohl Exp $
|
/* $Id: rtltypes.h,v 1.8 2003/05/28 18:09:09 chorns Exp $
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -123,12 +123,6 @@ typedef struct _RTL_SPLAY_LINKS
|
||||||
struct _RTL_SPLAY_LINKS *RightChild;
|
struct _RTL_SPLAY_LINKS *RightChild;
|
||||||
} RTL_SPLAY_LINKS, *PRTL_SPLAY_LINKS;
|
} RTL_SPLAY_LINKS, *PRTL_SPLAY_LINKS;
|
||||||
|
|
||||||
#else /* __USE_W32API */
|
|
||||||
|
|
||||||
#include <ddk/ntifs.h>
|
|
||||||
|
|
||||||
#endif /* __USE_W32API */
|
|
||||||
|
|
||||||
typedef struct _USER_STACK
|
typedef struct _USER_STACK
|
||||||
{
|
{
|
||||||
PVOID FixedStackBase;
|
PVOID FixedStackBase;
|
||||||
|
@ -138,6 +132,12 @@ typedef struct _USER_STACK
|
||||||
PVOID ExpandableStackBottom;
|
PVOID ExpandableStackBottom;
|
||||||
} USER_STACK, *PUSER_STACK;
|
} USER_STACK, *PUSER_STACK;
|
||||||
|
|
||||||
|
#else /* __USE_W32API */
|
||||||
|
|
||||||
|
#include <ddk/ntifs.h>
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
typedef struct _RTL_HEAP_DEFINITION
|
typedef struct _RTL_HEAP_DEFINITION
|
||||||
{
|
{
|
||||||
ULONG Length;
|
ULONG Length;
|
||||||
|
|
|
@ -14,6 +14,9 @@
|
||||||
#ifndef __INCLUDE_TYPES_H
|
#ifndef __INCLUDE_TYPES_H
|
||||||
#define __INCLUDE_TYPES_H
|
#define __INCLUDE_TYPES_H
|
||||||
|
|
||||||
|
#define EXPORTED __declspec(dllexport)
|
||||||
|
#define IMPORTED __declspec(dllimport)
|
||||||
|
|
||||||
#include <basetsd.h>
|
#include <basetsd.h>
|
||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
|
@ -193,6 +196,8 @@ typedef struct _UNICODE_STRING
|
||||||
PWSTR Buffer;
|
PWSTR Buffer;
|
||||||
} UNICODE_STRING, *PUNICODE_STRING;
|
} UNICODE_STRING, *PUNICODE_STRING;
|
||||||
|
|
||||||
|
typedef const UNICODE_STRING* PCUNICODE_STRING;
|
||||||
|
|
||||||
typedef struct _FLOATING_SAVE_AREA
|
typedef struct _FLOATING_SAVE_AREA
|
||||||
{
|
{
|
||||||
DWORD ControlWord;
|
DWORD ControlWord;
|
||||||
|
@ -464,4 +469,52 @@ typedef LPTHREAD_START_ROUTINE PTHREAD_START_ROUTINE;
|
||||||
|
|
||||||
#endif /* __USE_W32API */
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
|
typedef struct _ADDRESS_RANGE
|
||||||
|
{
|
||||||
|
ULONG BaseAddrLow;
|
||||||
|
ULONG BaseAddrHigh;
|
||||||
|
ULONG LengthLow;
|
||||||
|
ULONG LengthHigh;
|
||||||
|
ULONG Type;
|
||||||
|
} ADDRESS_RANGE, *PADDRESS_RANGE;
|
||||||
|
|
||||||
|
#define MB_FLAGS_MEM_INFO (0x1)
|
||||||
|
#define MB_FLAGS_BOOT_DEVICE (0x2)
|
||||||
|
#define MB_FLAGS_COMMAND_LINE (0x4)
|
||||||
|
#define MB_FLAGS_MODULE_INFO (0x8)
|
||||||
|
#define MB_FLAGS_AOUT_SYMS (0x10)
|
||||||
|
#define MB_FLAGS_ELF_SYMS (0x20)
|
||||||
|
#define MB_FLAGS_MMAP_INFO (0x40)
|
||||||
|
#define MB_FLAGS_DRIVES_INFO (0x80)
|
||||||
|
#define MB_FLAGS_CONFIG_TABLE (0x100)
|
||||||
|
#define MB_FLAGS_BOOT_LOADER_NAME (0x200)
|
||||||
|
#define MB_FLAGS_APM_TABLE (0x400)
|
||||||
|
#define MB_FLAGS_GRAPHICS_TABLE (0x800)
|
||||||
|
|
||||||
|
typedef struct _LOADER_MODULE
|
||||||
|
{
|
||||||
|
ULONG ModStart;
|
||||||
|
ULONG ModEnd;
|
||||||
|
ULONG String;
|
||||||
|
ULONG Reserved;
|
||||||
|
} LOADER_MODULE, *PLOADER_MODULE;
|
||||||
|
|
||||||
|
typedef struct _LOADER_PARAMETER_BLOCK
|
||||||
|
{
|
||||||
|
ULONG Flags;
|
||||||
|
ULONG MemLower;
|
||||||
|
ULONG MemHigher;
|
||||||
|
ULONG BootDevice;
|
||||||
|
ULONG CommandLine;
|
||||||
|
ULONG ModsCount;
|
||||||
|
ULONG ModsAddr;
|
||||||
|
UCHAR Syms[12];
|
||||||
|
ULONG MmapLength;
|
||||||
|
ULONG MmapAddr;
|
||||||
|
ULONG DrivesCount;
|
||||||
|
ULONG DrivesAddr;
|
||||||
|
ULONG ConfigTable;
|
||||||
|
ULONG BootLoaderName;
|
||||||
|
} LOADER_PARAMETER_BLOCK, *PLOADER_PARAMETER_BLOCK;
|
||||||
|
|
||||||
#endif /* __INCLUDE_TYPES_H */
|
#endif /* __INCLUDE_TYPES_H */
|
||||||
|
|
|
@ -3,6 +3,17 @@
|
||||||
|
|
||||||
#ifndef __USE_W32API
|
#ifndef __USE_W32API
|
||||||
|
|
||||||
|
typedef enum _THREAD_STATE {
|
||||||
|
StateInitialized,
|
||||||
|
StateReady,
|
||||||
|
StateRunning,
|
||||||
|
StateStandby,
|
||||||
|
StateTerminated,
|
||||||
|
StateWait,
|
||||||
|
StateTransition,
|
||||||
|
StateUnknown
|
||||||
|
} THREAD_STATE;
|
||||||
|
|
||||||
typedef enum _DEBUG_CONTROL_CODE
|
typedef enum _DEBUG_CONTROL_CODE
|
||||||
{
|
{
|
||||||
DebugGetTraceInformation = 1,
|
DebugGetTraceInformation = 1,
|
||||||
|
@ -1225,21 +1236,24 @@ struct _SYSTEM_PATH_INFORMATION
|
||||||
|
|
||||||
// SystemProcessInformation (5)
|
// SystemProcessInformation (5)
|
||||||
|
|
||||||
typedef struct _SYSTEM_THREADS
|
#ifndef __USE_W32API
|
||||||
{
|
|
||||||
TIME KernelTime;
|
typedef struct _SYSTEM_THREADS {
|
||||||
TIME UserTime;
|
LARGE_INTEGER KernelTime;
|
||||||
TIME CreateTime;
|
LARGE_INTEGER UserTime;
|
||||||
ULONG WaitTime;
|
LARGE_INTEGER CreateTime;
|
||||||
PVOID StartAddress;
|
ULONG WaitTime;
|
||||||
CLIENT_ID ClientId;
|
PVOID StartAddress;
|
||||||
KPRIORITY Priority;
|
CLIENT_ID ClientId;
|
||||||
KPRIORITY BasePriority;
|
KPRIORITY Priority;
|
||||||
ULONG ContextSwitchCount;
|
KPRIORITY BasePriority;
|
||||||
ULONG State;
|
ULONG ContextSwitchCount;
|
||||||
KWAIT_REASON WaitReason;
|
THREAD_STATE State;
|
||||||
|
KWAIT_REASON WaitReason;
|
||||||
} SYSTEM_THREADS, *PSYSTEM_THREADS;
|
} SYSTEM_THREADS, *PSYSTEM_THREADS;
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
typedef struct _SYSTEM_PROCESSES_NT4
|
typedef struct _SYSTEM_PROCESSES_NT4
|
||||||
{
|
{
|
||||||
SIZE_T NextEntryDelta;
|
SIZE_T NextEntryDelta;
|
||||||
|
@ -1277,9 +1291,13 @@ typedef struct _SYSTEM_PROCESSES_NT5
|
||||||
SYSTEM_THREADS Threads[ANYSIZE_ARRAY];
|
SYSTEM_THREADS Threads[ANYSIZE_ARRAY];
|
||||||
} SYSTEM_PROCESSES_NT5, *PSYSTEM_PROCESSES_NT5;
|
} SYSTEM_PROCESSES_NT5, *PSYSTEM_PROCESSES_NT5;
|
||||||
|
|
||||||
|
#ifndef __USE_W32API
|
||||||
|
|
||||||
/* Not sure. What version are we emulating? */
|
/* Not sure. What version are we emulating? */
|
||||||
typedef SYSTEM_PROCESSES_NT5 SYSTEM_PROCESSES, *PSYSTEM_PROCESSES;
|
typedef SYSTEM_PROCESSES_NT5 SYSTEM_PROCESSES, *PSYSTEM_PROCESSES;
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
// SystemCallCountInformation (6)
|
// SystemCallCountInformation (6)
|
||||||
typedef
|
typedef
|
||||||
struct _SYSTEM_SDT_INFORMATION
|
struct _SYSTEM_SDT_INFORMATION
|
||||||
|
|
|
@ -68,19 +68,26 @@ Cambridge, MA 02139, USA.
|
||||||
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
|
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8) \
|
||||||
const GUID name
|
const GUID name
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef DEFINE_OLEGUID
|
||||||
#define DEFINE_OLEGUID(name, l, w1, w2) DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46)
|
#define DEFINE_OLEGUID(name, l, w1, w2) DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
// IID section
|
// IID section
|
||||||
typedef GUID IID;
|
typedef GUID IID;
|
||||||
typedef IID* LPIID;
|
typedef IID* LPIID;
|
||||||
|
#ifndef IsEqualIID
|
||||||
#define IsEqualIID(riid1, riid2) IsEqualGUID(riid1, riid2)
|
#define IsEqualIID(riid1, riid2) IsEqualGUID(riid1, riid2)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
// CLSID section
|
// CLSID section
|
||||||
typedef GUID CLSID;
|
typedef GUID CLSID;
|
||||||
typedef CLSID* LPCLSID;
|
typedef CLSID* LPCLSID;
|
||||||
|
#ifndef IsEqualCLSID
|
||||||
#define IsEqualCLSID(rclsid1, rclsid2) IsEqualGUID(rclsid1, rclsid2)
|
#define IsEqualCLSID(rclsid1, rclsid2) IsEqualGUID(rclsid1, rclsid2)
|
||||||
|
#endif
|
||||||
|
|
||||||
// FMTID
|
// FMTID
|
||||||
typedef GUID FMTID;
|
typedef GUID FMTID;
|
||||||
|
@ -161,8 +168,12 @@ typedef FMTID* LPFMTID;
|
||||||
|
|
||||||
|
|
||||||
// compare functions for IID CLSID
|
// compare functions for IID CLSID
|
||||||
|
#ifndef IsEqualIID
|
||||||
#define IsEqualIID(riid1, riid2) IsEqualGUID(riid1, riid2)
|
#define IsEqualIID(riid1, riid2) IsEqualGUID(riid1, riid2)
|
||||||
|
#endif
|
||||||
|
#ifndef IsEqualCLSID
|
||||||
#define IsEqualCLSID(rclsid1, rclsid2) IsEqualGUID(rclsid1, rclsid2)
|
#define IsEqualCLSID(rclsid1, rclsid2) IsEqualGUID(rclsid1, rclsid2)
|
||||||
|
#endif
|
||||||
|
|
||||||
// c++ helper functions
|
// c++ helper functions
|
||||||
#if !defined _SYS_GUID_OPERATOR_EQ_ && !defined _NO_SYS_GUID_OPERATOR_EQ_
|
#if !defined _SYS_GUID_OPERATOR_EQ_ && !defined _NO_SYS_GUID_OPERATOR_EQ_
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
#ifndef __WIN32K_COLOR_H
|
#ifndef __WIN32K_COLOR_H
|
||||||
#define __WIN32K_COLOR_H
|
#define __WIN32K_COLOR_H
|
||||||
|
|
||||||
|
#ifndef CLR_INVALID
|
||||||
#define CLR_INVALID 0xffffffff
|
#define CLR_INVALID 0xffffffff
|
||||||
|
#endif
|
||||||
#define PC_SYS_USED 0x80 // palentry is used (both system and logical)
|
#define PC_SYS_USED 0x80 // palentry is used (both system and logical)
|
||||||
#define PC_SYS_RESERVED 0x40 // system palentry is not to be mapped to
|
#define PC_SYS_RESERVED 0x40 // system palentry is not to be mapped to
|
||||||
#define PC_SYS_MAPPED 0x10 // logical palentry is a direct alias for system palentry
|
#define PC_SYS_MAPPED 0x10 // logical palentry is a direct alias for system palentry
|
||||||
|
|
|
@ -32,6 +32,12 @@
|
||||||
#ifndef _GNU_H_WINDOWS_H
|
#ifndef _GNU_H_WINDOWS_H
|
||||||
#define _GNU_H_WINDOWS_H
|
#define _GNU_H_WINDOWS_H
|
||||||
|
|
||||||
|
#ifdef __USE_W32API
|
||||||
|
|
||||||
|
#include_next <windows.h>
|
||||||
|
|
||||||
|
#else /* __USE_W32API */
|
||||||
|
|
||||||
#ifndef max
|
#ifndef max
|
||||||
#define max(a,b) (((a) > (b)) ? (a) : (b))
|
#define max(a,b) (((a) > (b)) ? (a) : (b))
|
||||||
#endif
|
#endif
|
||||||
|
@ -165,4 +171,6 @@
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#endif /* !__USE_W32API */
|
||||||
|
|
||||||
#endif /* _GNU_H_WINDOWS_H */
|
#endif /* _GNU_H_WINDOWS_H */
|
||||||
|
|
|
@ -48,7 +48,9 @@ extern DWORD DebugTraceLevel;
|
||||||
|
|
||||||
#endif /* DBG */
|
#endif /* DBG */
|
||||||
|
|
||||||
|
#ifdef assert
|
||||||
|
#undef assert
|
||||||
|
#endif
|
||||||
#define assert(x) ASSERT(x)
|
#define assert(x) ASSERT(x)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: unicode.c,v 1.27 2003/05/21 16:11:02 ekohl Exp $
|
/* $Id: unicode.c,v 1.28 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -1451,7 +1451,7 @@ NTSTATUS
|
||||||
STDCALL
|
STDCALL
|
||||||
RtlUpcaseUnicodeString(
|
RtlUpcaseUnicodeString(
|
||||||
IN OUT PUNICODE_STRING DestinationString,
|
IN OUT PUNICODE_STRING DestinationString,
|
||||||
IN PUNICODE_STRING SourceString,
|
IN PCUNICODE_STRING SourceString,
|
||||||
IN BOOLEAN AllocateDestinationString)
|
IN BOOLEAN AllocateDestinationString)
|
||||||
{
|
{
|
||||||
ULONG i;
|
ULONG i;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# $Id: Makefile,v 1.1 2003/05/27 18:56:15 hbirr Exp $
|
# $Id: Makefile,v 1.2 2003/05/28 18:09:10 chorns Exp $
|
||||||
|
|
||||||
PATH_TO_TOP = ../..
|
PATH_TO_TOP = ../..
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ TARGET_NAME = string
|
||||||
|
|
||||||
include $(PATH_TO_TOP)/config
|
include $(PATH_TO_TOP)/config
|
||||||
|
|
||||||
include makefile.$(ARCH)
|
include Makefile.$(ARCH)
|
||||||
|
|
||||||
TARGET_CFLAGS = -Wall -Werror
|
TARGET_CFLAGS = -Wall -Werror
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,10 @@
|
||||||
#define DEBUG_WINDOW 0x00000400
|
#define DEBUG_WINDOW 0x00000400
|
||||||
#define DEBUG_ULTRA 0xFFFFFFFF
|
#define DEBUG_ULTRA 0xFFFFFFFF
|
||||||
|
|
||||||
|
#ifdef ASSERT
|
||||||
|
#undef ASSERT
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef DBG
|
#ifdef DBG
|
||||||
|
|
||||||
extern DWORD DebugTraceLevel;
|
extern DWORD DebugTraceLevel;
|
||||||
|
@ -31,10 +35,6 @@ extern DWORD DebugTraceLevel;
|
||||||
DbgPrint _x_; \
|
DbgPrint _x_; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ASSERT
|
|
||||||
#undef ASSERT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef NASSERT
|
#ifdef NASSERT
|
||||||
#define ASSERT(x)
|
#define ASSERT(x)
|
||||||
#else /* NASSERT */
|
#else /* NASSERT */
|
||||||
|
@ -52,7 +52,9 @@ extern DWORD DebugTraceLevel;
|
||||||
|
|
||||||
#endif /* DBG */
|
#endif /* DBG */
|
||||||
|
|
||||||
|
#ifdef assert
|
||||||
|
#undef assert
|
||||||
|
#endif
|
||||||
#define assert(x) ASSERT(x)
|
#define assert(x) ASSERT(x)
|
||||||
#define assert_irql(x) ASSERT_IRQL(x)
|
#define assert_irql(x) ASSERT_IRQL(x)
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,10 @@
|
||||||
#define DEBUG_CHECK 0x00000100
|
#define DEBUG_CHECK 0x00000100
|
||||||
#define DEBUG_ULTRA 0xFFFFFFFF
|
#define DEBUG_ULTRA 0xFFFFFFFF
|
||||||
|
|
||||||
|
#ifdef ASSERT
|
||||||
|
#undef ASSERT
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef DBG
|
#ifdef DBG
|
||||||
|
|
||||||
extern DWORD DebugTraceLevel;
|
extern DWORD DebugTraceLevel;
|
||||||
|
@ -29,10 +33,6 @@ extern DWORD DebugTraceLevel;
|
||||||
DbgPrint _x_; \
|
DbgPrint _x_; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ASSERT
|
|
||||||
#undef ASSERT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef NASSERT
|
#ifdef NASSERT
|
||||||
#define ASSERT(x)
|
#define ASSERT(x)
|
||||||
#else /* NASSERT */
|
#else /* NASSERT */
|
||||||
|
|
|
@ -17,6 +17,10 @@
|
||||||
|
|
||||||
#define DEBUG_ULTRA 0xFFFFFFFF
|
#define DEBUG_ULTRA 0xFFFFFFFF
|
||||||
|
|
||||||
|
#ifdef ASSERT
|
||||||
|
#undef ASSERT
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef DBG
|
#ifdef DBG
|
||||||
|
|
||||||
extern DWORD DebugTraceLevel;
|
extern DWORD DebugTraceLevel;
|
||||||
|
@ -28,10 +32,6 @@ extern DWORD DebugTraceLevel;
|
||||||
DbgPrint _x_; \
|
DbgPrint _x_; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef ASSERT
|
|
||||||
#undef ASSERT
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef NASSERT
|
#ifdef NASSERT
|
||||||
#define ASSERT(x)
|
#define ASSERT(x)
|
||||||
#else /* NASSERT */
|
#else /* NASSERT */
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: sysinfo.c,v 1.20 2003/03/29 12:55:48 chorns Exp $
|
/* $Id: sysinfo.c,v 1.21 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -14,10 +14,8 @@
|
||||||
|
|
||||||
/* INCLUDES *****************************************************************/
|
/* INCLUDES *****************************************************************/
|
||||||
|
|
||||||
#include <ddk/ntddk.h>
|
#define NTOS_MODE_KERNEL
|
||||||
#include <ddk/exfuncs.h>
|
#include <ntos.h>
|
||||||
#include <ddk/halfuncs.h>
|
|
||||||
#include <ddk/iofuncs.h>
|
|
||||||
#include <internal/ex.h>
|
#include <internal/ex.h>
|
||||||
#include <internal/ldr.h>
|
#include <internal/ldr.h>
|
||||||
#include <internal/safe.h>
|
#include <internal/safe.h>
|
||||||
|
|
|
@ -29,6 +29,9 @@
|
||||||
|
|
||||||
/* Assert only on "checked" version */
|
/* Assert only on "checked" version */
|
||||||
#ifndef NASSERT
|
#ifndef NASSERT
|
||||||
|
#ifdef assert
|
||||||
|
#undef assert
|
||||||
|
#endif
|
||||||
#define assert(x) if (!(x)) {DbgPrint("Assertion "#x" failed at %s:%d\n", __FILE__,__LINE__); KeBugCheck(0); }
|
#define assert(x) if (!(x)) {DbgPrint("Assertion "#x" failed at %s:%d\n", __FILE__,__LINE__); KeBugCheck(0); }
|
||||||
|
|
||||||
#define assertmsg(_c_, _m_) \
|
#define assertmsg(_c_, _m_) \
|
||||||
|
@ -40,6 +43,9 @@
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
#ifdef assert
|
||||||
|
#undef assert
|
||||||
|
#endif
|
||||||
#define assert(x)
|
#define assert(x)
|
||||||
#define assertmsg(_c_, _m_)
|
#define assertmsg(_c_, _m_)
|
||||||
|
|
||||||
|
@ -51,6 +57,9 @@
|
||||||
#else /* DBG */
|
#else /* DBG */
|
||||||
|
|
||||||
#define CPRINT(args...)
|
#define CPRINT(args...)
|
||||||
|
#ifdef assert
|
||||||
|
#undef assert
|
||||||
|
#endif
|
||||||
#define assert(x)
|
#define assert(x)
|
||||||
#define assertmsg(_c_, _m_)
|
#define assertmsg(_c_, _m_)
|
||||||
|
|
||||||
|
|
|
@ -65,6 +65,8 @@ typedef struct _KPCR
|
||||||
struct _KTHREAD* CurrentThread; /* 124 */
|
struct _KTHREAD* CurrentThread; /* 124 */
|
||||||
} __attribute__((packed)) KPCR, *PKPCR;
|
} __attribute__((packed)) KPCR, *PKPCR;
|
||||||
|
|
||||||
|
#ifndef __USE_W32API
|
||||||
|
|
||||||
static inline PKPCR KeGetCurrentKPCR(VOID)
|
static inline PKPCR KeGetCurrentKPCR(VOID)
|
||||||
{
|
{
|
||||||
ULONG value;
|
ULONG value;
|
||||||
|
@ -76,6 +78,8 @@ static inline PKPCR KeGetCurrentKPCR(VOID)
|
||||||
return((PKPCR)value);
|
return((PKPCR)value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
Ki386ContextSwitch(struct _KTHREAD* NewThread,
|
Ki386ContextSwitch(struct _KTHREAD* NewThread,
|
||||||
struct _KTHREAD* OldThread);
|
struct _KTHREAD* OldThread);
|
||||||
|
|
|
@ -153,10 +153,13 @@ typedef struct _MADDRESS_SPACE
|
||||||
} MADDRESS_SPACE, *PMADDRESS_SPACE;
|
} MADDRESS_SPACE, *PMADDRESS_SPACE;
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef __USE_W32API
|
||||||
/* VARIABLES */
|
/* VARIABLES */
|
||||||
|
|
||||||
extern PVOID MmSystemRangeStart;
|
extern PVOID MmSystemRangeStart;
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
|
|
||||||
/* FUNCTIONS */
|
/* FUNCTIONS */
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,8 @@
|
||||||
|
|
||||||
#ifndef __ASM__
|
#ifndef __ASM__
|
||||||
|
|
||||||
#include <ddk/ntddk.h>
|
#define NTOS_MODE_KERNEL
|
||||||
|
#include <ntos.h>
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,8 @@
|
||||||
#ifndef __INCLUDE_INTERNAL_OBJMGR_H
|
#ifndef __INCLUDE_INTERNAL_OBJMGR_H
|
||||||
#define __INCLUDE_INTERNAL_OBJMGR_H
|
#define __INCLUDE_INTERNAL_OBJMGR_H
|
||||||
|
|
||||||
#include <ddk/types.h>
|
#define NTOS_MODE_KERNEL
|
||||||
|
#include <ntos.h>
|
||||||
|
|
||||||
struct _EPROCESS;
|
struct _EPROCESS;
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: ps.h,v 1.44 2003/03/19 23:12:41 gdalsnes Exp $
|
/* $Id: ps.h,v 1.45 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* FILE: ntoskrnl/ke/kthread.c
|
* FILE: ntoskrnl/ke/kthread.c
|
||||||
* PURPOSE: Process manager definitions
|
* PURPOSE: Process manager definitions
|
||||||
|
@ -50,6 +50,8 @@ extern HANDLE SystemProcessHandle;
|
||||||
extern LCID PsDefaultThreadLocaleId;
|
extern LCID PsDefaultThreadLocaleId;
|
||||||
extern LCID PsDefaultSystemLocaleId;
|
extern LCID PsDefaultSystemLocaleId;
|
||||||
|
|
||||||
|
#ifndef __USE_W32API
|
||||||
|
|
||||||
typedef struct _KAPC_STATE
|
typedef struct _KAPC_STATE
|
||||||
{
|
{
|
||||||
LIST_ENTRY ApcListHead[2];
|
LIST_ENTRY ApcListHead[2];
|
||||||
|
@ -59,6 +61,8 @@ typedef struct _KAPC_STATE
|
||||||
USHORT UserApcPending;
|
USHORT UserApcPending;
|
||||||
} __attribute__((packed)) KAPC_STATE, *PKAPC_STATE;
|
} __attribute__((packed)) KAPC_STATE, *PKAPC_STATE;
|
||||||
|
|
||||||
|
#endif /* __USE_W32API */
|
||||||
|
|
||||||
typedef struct _KTHREAD
|
typedef struct _KTHREAD
|
||||||
{
|
{
|
||||||
/* For waiting on thread exit */
|
/* For waiting on thread exit */
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: bthread.S,v 1.7 2002/09/17 23:41:44 dwelch Exp $
|
/* $Id: bthread.S,v 1.8 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -34,12 +34,24 @@
|
||||||
|
|
||||||
/* Values for contextflags */
|
/* Values for contextflags */
|
||||||
#define CONTEXT_i386 0x10000
|
#define CONTEXT_i386 0x10000
|
||||||
|
#ifndef CONTEXT_CONTROL
|
||||||
#define CONTEXT_CONTROL (CONTEXT_i386 | 1)
|
#define CONTEXT_CONTROL (CONTEXT_i386 | 1)
|
||||||
|
#endif
|
||||||
|
#ifndef CONTEXT_INTEGER
|
||||||
#define CONTEXT_INTEGER (CONTEXT_i386 | 2)
|
#define CONTEXT_INTEGER (CONTEXT_i386 | 2)
|
||||||
|
#endif
|
||||||
|
#ifndef CONTEXT_SEGMENTS
|
||||||
#define CONTEXT_SEGMENTS (CONTEXT_i386 | 4)
|
#define CONTEXT_SEGMENTS (CONTEXT_i386 | 4)
|
||||||
|
#endif
|
||||||
|
#ifndef CONTEXT_FLOATING_POINT
|
||||||
#define CONTEXT_FLOATING_POINT (CONTEXT_i386 | 8)
|
#define CONTEXT_FLOATING_POINT (CONTEXT_i386 | 8)
|
||||||
|
#endif
|
||||||
|
#ifndef CONTEXT_DEBUG_REGISTERS
|
||||||
#define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386 | 0x10)
|
#define CONTEXT_DEBUG_REGISTERS (CONTEXT_i386 | 0x10)
|
||||||
|
#endif
|
||||||
|
#ifndef CONTEXT_FULL
|
||||||
#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS)
|
#define CONTEXT_FULL (CONTEXT_CONTROL | CONTEXT_INTEGER | CONTEXT_SEGMENTS)
|
||||||
|
#endif
|
||||||
|
|
||||||
/* FUNCTIONS *****************************************************************/
|
/* FUNCTIONS *****************************************************************/
|
||||||
|
|
||||||
|
|
|
@ -181,8 +181,9 @@ KiKernelTrapHandler(PKTRAP_FRAME Tf, ULONG ExceptionNr, PVOID Cr2)
|
||||||
Er.NumberParameters = 0;
|
Er.NumberParameters = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Er.ExceptionFlags = (STATUS_SINGLE_STEP == (NTSTATUS) Er.ExceptionCode || STATUS_BREAKPOINT == (NTSTATUS) Er.ExceptionCode ?
|
Er.ExceptionFlags = ((NTSTATUS) STATUS_SINGLE_STEP == (NTSTATUS) Er.ExceptionCode
|
||||||
0 : EXCEPTION_NONCONTINUABLE);
|
|| (NTSTATUS) STATUS_BREAKPOINT == (NTSTATUS) Er.ExceptionCode ?
|
||||||
|
0 : EXCEPTION_NONCONTINUABLE);
|
||||||
|
|
||||||
KiDispatchException(&Er, 0, Tf, KernelMode, TRUE);
|
KiDispatchException(&Er, 0, Tf, KernelMode, TRUE);
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
|
|
||||||
#include <internal/i386/segment.h>
|
#include <internal/i386/segment.h>
|
||||||
#include <internal/ps.h>
|
#include <internal/ps.h>
|
||||||
#include <ddk/i386/tss.h>
|
#include <ntos/tss.h>
|
||||||
|
|
||||||
/* FUNCTIONS ****************************************************************/
|
/* FUNCTIONS ****************************************************************/
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: syscall.S,v 1.9 2002/09/08 10:23:30 chorns Exp $
|
/* $Id: syscall.S,v 1.10 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* FILE: ntoskrnl/hal/x86/syscall.s
|
* FILE: ntoskrnl/hal/x86/syscall.s
|
||||||
* PURPOSE: 2E trap handler
|
* PURPOSE: 2E trap handler
|
||||||
|
@ -28,7 +28,9 @@
|
||||||
#include <ddk/status.h>
|
#include <ddk/status.h>
|
||||||
#include <internal/i386/segment.h>
|
#include <internal/i386/segment.h>
|
||||||
#include <internal/ps.h>
|
#include <internal/ps.h>
|
||||||
#include <ddk/defines.h>
|
|
||||||
|
#define KernelMode (0)
|
||||||
|
#define UserMode (1)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
*
|
*
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
|
|
||||||
#include <internal/i386/segment.h>
|
#include <internal/i386/segment.h>
|
||||||
#include <internal/ps.h>
|
#include <internal/ps.h>
|
||||||
#include <ddk/i386/tss.h>
|
#include <ntos/tss.h>
|
||||||
#include <internal/ntoskrnl.h>
|
#include <internal/ntoskrnl.h>
|
||||||
|
|
||||||
/* FUNCTIONS ****************************************************************/
|
/* FUNCTIONS ****************************************************************/
|
||||||
|
|
|
@ -25,7 +25,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <internal/v86m.h>
|
#include <internal/v86m.h>
|
||||||
#include <ddk/i386/tss.h>
|
#include <ntos/tss.h>
|
||||||
#include <internal/trap.h>
|
#include <internal/trap.h>
|
||||||
#include <internal/ps.h>
|
#include <internal/ps.h>
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: handle.c,v 1.44 2003/04/18 09:37:01 gvg Exp $
|
/* $Id: handle.c,v 1.45 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -29,7 +29,8 @@
|
||||||
|
|
||||||
/* INCLUDES ****************************************************************/
|
/* INCLUDES ****************************************************************/
|
||||||
|
|
||||||
#include <ddk/ntddk.h>
|
#define NTOS_MODE_KERNEL
|
||||||
|
#include <ntos.h>
|
||||||
#include <internal/ob.h>
|
#include <internal/ob.h>
|
||||||
#include <internal/ps.h>
|
#include <internal/ps.h>
|
||||||
#include <internal/pool.h>
|
#include <internal/pool.h>
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: error.c,v 1.7 2002/12/08 16:23:32 robd Exp $
|
/* $Id: error.c,v 1.8 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -25,8 +25,12 @@
|
||||||
#define NDEBUG
|
#define NDEBUG
|
||||||
#include <internal/debug.h>
|
#include <internal/debug.h>
|
||||||
|
|
||||||
|
#ifndef HIWORD
|
||||||
#define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
|
#define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
|
||||||
|
#endif
|
||||||
|
#ifndef LOWORD
|
||||||
#define LOWORD(l) ((WORD)(l))
|
#define LOWORD(l) ((WORD)(l))
|
||||||
|
#endif
|
||||||
|
|
||||||
/* TYPES *******************************************************************/
|
/* TYPES *******************************************************************/
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $Id: unicode.c,v 1.27 2003/05/20 14:38:05 ekohl Exp $
|
/* $Id: unicode.c,v 1.28 2003/05/28 18:09:10 chorns Exp $
|
||||||
*
|
*
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
* COPYRIGHT: See COPYING in the top level directory
|
||||||
* PROJECT: ReactOS kernel
|
* PROJECT: ReactOS kernel
|
||||||
|
@ -1295,7 +1295,7 @@ RtlUnicodeStringToOemString(IN OUT POEM_STRING DestinationString,
|
||||||
|
|
||||||
NTSTATUS STDCALL
|
NTSTATUS STDCALL
|
||||||
RtlUpcaseUnicodeString(IN OUT PUNICODE_STRING DestinationString,
|
RtlUpcaseUnicodeString(IN OUT PUNICODE_STRING DestinationString,
|
||||||
IN PUNICODE_STRING SourceString,
|
IN PCUNICODE_STRING SourceString,
|
||||||
IN BOOLEAN AllocateDestinationString)
|
IN BOOLEAN AllocateDestinationString)
|
||||||
{
|
{
|
||||||
ULONG i;
|
ULONG i;
|
||||||
|
|
Loading…
Reference in a new issue