Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

395 lines
7.9 KiB

#pragma warning(disable:4163)
#if !defined(_X86AMD64_)
#define _X86AMD64_
#endif
#include "bootx86.h"
#if defined(ROUND_UP)
#undef ROUND_UP
#endif
#include "cmp.h"
#include "..\amd64\amd64prv.h"
include(BASE_INC_PATH\bldrthnk.h)
SD(PHYSICAL_ADDRESS)
FD(QuadPart,ULONGLONG)
SE()
SD(PROFILE_PARAMETER_BLOCK)
FD(Status,USHORT)
FD(DockingState,USHORT)
FD(Capabilities,USHORT)
FD(DockID,ULONG)
FD(SerialNumber,ULONG)
SE()
SD(UNICODE_STRING)
FD(Length,USHORT)
FD(MaximumLength,USHORT)
FD(Buffer,PWSTR)
SE()
SD(LIST_ENTRY)
FD(Flink,PLIST_ENTRY)
FD(Blink,PLIST_ENTRY)
SE()
SD64(EPROCESS)
SE()
SD64(ETHREAD)
SE()
SD64(KTHREAD)
SE()
SD64(KPRCB)
SE()
SD64(KGDTENTRY64)
SE()
SD64(KIDTENTRY64)
SE()
SD64(KTSS64)
FD(Rsp0,ULONG64)
FD(Rsp1,ULONG64)
FD(Rsp2,ULONG64)
FD(Ist,ULONG64)
SE()
SD(MEMORY_ALLOCATION_DESCRIPTOR)
FD(ListEntry,LIST_ENTRY)
FD(MemoryType,TYPE_OF_MEMORY)
FD(BasePage,ULONG)
FD(PageCount,ULONG)
SE()
SD(LDR_DATA_TABLE_ENTRY)
FD(InLoadOrderLinks,LIST_ENTRY)
FD(InMemoryOrderLinks,LIST_ENTRY)
FD(InInitializationOrderLinks,LIST_ENTRY)
FD(DllBase,PVOID)
FD(EntryPoint,PVOID)
FD(SizeOfImage,ULONG)
FD(FullDllName,UNICODE_STRING)
FD(BaseDllName,UNICODE_STRING)
FD(Flags,ULONG)
FD(LoadCount,USHORT)
FD(TlsIndex,USHORT)
SE()
SD(BOOT_DRIVER_LIST_ENTRY)
FD(Link,LIST_ENTRY)
FD(FilePath,UNICODE_STRING)
FD(RegistryPath,UNICODE_STRING)
FD(LdrEntry,PLDR_DATA_TABLE_ENTRY)
SE()
SD(NLS_DATA_BLOCK)
FD(AnsiCodePageData,PVOID)
FD(OemCodePageData,PVOID)
FD(UnicodeCaseTableData,PVOID)
SE()
SD(CONFIGURATION_COMPONENT)
FD(Class,CONFIGURATION_CLASS)
FD(Type,CONFIGURATION_TYPE)
FD(Flags,ULONG)
FD(Version,USHORT)
FD(Revision,USHORT)
FD(Key,ULONG)
FD(AffinityMask,ULONG)
FD(ConfigurationDataLength,ULONG)
FD(IdentifierLength,ULONG)
FD(Identifier,PCHAR)
SE()
SD(CONFIGURATION_COMPONENT_DATA)
FD(Parent,PCONFIGURATION_COMPONENT_DATA)
FD(Child,PCONFIGURATION_COMPONENT_DATA)
FD(Sibling,PCONFIGURATION_COMPONENT_DATA)
FD(ComponentEntry,CONFIGURATION_COMPONENT)
FD(ConfigurationData,PVOID)
SE()
SD(BOOT_DRIVER_NODE)
FD(ListEntry,BOOT_DRIVER_LIST_ENTRY)
FD(Group,UNICODE_STRING)
FD(Name,UNICODE_STRING)
FD(Tag,ULONG)
FD(ErrorControl,ULONG)
SE()
SD(ARC_DISK_SIGNATURE)
FD(ListEntry,LIST_ENTRY)
FD(Signature,ULONG)
FDC(ArcName,PCHAR)
FD(CheckSum,ULONG)
FD(ValidPartitionTable,BOOLEAN)
FD(xInt13,BOOLEAN)
SE()
SD(ARC_DISK_INFORMATION)
FD(DiskSignatures,LIST_ENTRY)
SE()
SD(DETECTED_DEVICE_REGISTRY)
FD(Next,PDETECTED_DEVICE_REGISTRY)
FD(KeyName,PCHAR)
FD(ValueName,PCHAR)
FD(ValueType,ULONG)
FD(Buffer,PVOID)
FD(BufferSize,ULONG)
SE()
SD(DETECTED_DEVICE_FILE)
FD(Next,PDETECTED_DEVICE_FILE)
FD(Filename,PCHAR)
FD(FileType,HwFileType)
FD(ConfigName,PCHAR)
FD(RegistryValueList,PDETECTED_DEVICE_REGISTRY)
FD(DiskDescription,PCHAR)
FD(DiskTagfile,PCHAR)
FD(Directory,PCHAR)
SE()
SD(DETECTED_DEVICE)
FD(Next,PDETECTED_DEVICE)
FD(IdString,PCHAR)
FD(Ordinal,ULONG)
FD(Description,PCHAR)
FD(ThirdPartyOptionSelected,BOOLEAN)
FD(FileTypeBits,ULONG)
FD(Files,PDETECTED_DEVICE_FILE)
FD(BaseDllName,PCHAR)
FD(MigratedDriver,BOOLEAN)
SE()
SD(PNP_HARDWARE_ID)
FD(Next,PPNP_HARDWARE_ID)
FD(Id,PCHAR)
FD(DriverName,PCHAR)
FD(ClassGuid,PCHAR)
SE()
SD(SETUP_LOADER_BLOCK_SCALARS)
FD(SetupOperation,ULONG)
FD(AsULong,ULONG)
SE()
SD(SETUP_LOADER_BLOCK)
FD(ArcSetupDeviceName,PCHAR)
FD(VideoDevice,DETECTED_DEVICE)
FD(KeyboardDevices,PDETECTED_DEVICE)
FD(ComputerDevice,DETECTED_DEVICE)
FD(ScsiDevices,PDETECTED_DEVICE)
FD(ScalarValues,SETUP_LOADER_BLOCK_SCALARS)
FDC(IniFile,PCHAR)
FD(IniFileLength,ULONG)
FDC(WinntSifFile,PCHAR)
FD(WinntSifFileLength,ULONG)
FDC(MigrateInfFile,PCHAR)
FD(MigrateInfFileLength,ULONG)
FDC(UnsupDriversInfFile,PCHAR)
FD(UnsupDriversInfFileLength,ULONG)
FD(BootFontFile,PVOID)
FD(BootFontFileLength,ULONG)
FD(Monitor,PMONITOR_CONFIGURATION_DATA)
FD(MonitorId,PCHAR)
FD(BootBusExtenders,PDETECTED_DEVICE)
FD(BusExtenders,PDETECTED_DEVICE)
FD(InputDevicesSupport,PDETECTED_DEVICE)
FD(HardwareIdDatabase,PPNP_HARDWARE_ID)
FD(ComputerName,WCHAR)
FD(IpAddress,ULONG)
FD(SubnetMask,ULONG)
FD(ServerIpAddress,ULONG)
FD(DefaultRouter,ULONG)
FD(DnsNameServer,ULONG)
FD(NetbootCardHardwareId,WCHAR)
FD(NetbootCardDriverName,WCHAR)
FD(NetbootCardServiceName,WCHAR)
FDC(NetbootCardRegistry,PCHAR)
FD(NetbootCardRegistryLength,ULONG)
FDC(NetbootCardInfo,PCHAR)
FD(NetbootCardInfoLength,ULONG)
FD(Flags,ULONG)
FD(MachineDirectoryPath,PCHAR)
FD(NetBootSifPath,PCHAR)
FD(NetBootSecret,PVOID)
FD(NetBootIMirrorFilePath,WCHAR)
FDC(ASRPnPSifFile,PCHAR)
FD(ASRPnPSifFileLength,ULONG)
FD(NetBootAdministratorPassword,WCHAR)
SE()
SD(I386_LOADER_BLOCK)
FD(CommonDataArea,PVOID)
FD(MachineType,ULONG)
FD(VirtualBias,ULONG)
SE()
SD(LOADER_PARAMETER_EXTENSION)
FD(Size,ULONG)
FD(Profile,PROFILE_PARAMETER_BLOCK)
FD(MajorVersion,ULONG)
FD(MinorVersion,ULONG)
FD(InfFileImage,PVOID)
FD(InfFileSize,ULONG)
FD(TriageDumpBlock,PVOID)
FD(LoaderPagesSpanned,ULONG)
FD(HeadlessLoaderBlock,PHEADLESS_LOADER_BLOCK)
FD(SMBiosEPSHeader,PVOID)
FD(DrvDBImage,PVOID)
FD(DrvDBSize,ULONG)
FD(FirmwareDescriptorListHead,LIST_ENTRY)
SE()
SD(LOADER_PARAMETER_BLOCK)
FD(LoadOrderListHead,LIST_ENTRY)
FD(MemoryDescriptorListHead,LIST_ENTRY)
FD(BootDriverListHead,LIST_ENTRY)
FD(KernelStack,ULONG_PTR)
FD(Prcb,ULONG_PTR)
FD(Process,ULONG_PTR)
FD(Thread,ULONG_PTR)
FD(RegistryLength,ULONG)
FDC(RegistryBase,PVOID)
FD(ConfigurationRoot,PCONFIGURATION_COMPONENT_DATA)
FDC(ArcBootDeviceName,PCHAR)
FDC(ArcHalDeviceName,PCHAR)
FDC(NtBootPathName,PCHAR)
FDC(NtHalPathName,PCHAR)
FDC(LoadOptions,PCHAR)
FD(NlsData,PNLS_DATA_BLOCK)
FD(ArcDiskInformation,PARC_DISK_INFORMATION)
FDC(OemFontFile,PVOID)
FD(SetupLoaderBlock,PSETUP_LOADER_BLOCK)
FD(Extension,PLOADER_PARAMETER_EXTENSION)
SE()
SD(CM_PRD_GENERIC)
FD(Start,PHYSICAL_ADDRESS)
FD(Length,ULONG)
SE()
SD(CM_PRD_PORT)
FD(Start,PHYSICAL_ADDRESS)
FD(Length,ULONG)
SE()
SD(CM_PRD_INTERRUPT)
FD(Level,ULONG)
FD(Vector,ULONG)
FD(Affinity,KAFFINITY)
SE()
SD(CM_PRD_MEMORY)
FD(Start,PHYSICAL_ADDRESS)
FD(Length,ULONG)
SE()
SD(CM_PRD_DMA)
FD(Channel,ULONG)
FD(Port,ULONG)
SE()
SD(CM_PRD_DEVICEPRIVATE)
FD(Data,ULONG)
SE()
SD(CM_PRD_BUSNUMBER)
FD(Start,ULONG)
FD(Length,ULONG)
FD(Reserved,ULONG)
SE()
SD(CM_PRD_DEVICESPECIFICDATA)
FD(DataSize,ULONG)
FD(Reserved1,ULONG)
FD(Reserved2,ULONG)
SE()
SD(CM_PARTIAL_RESOURCE_DESCRIPTOR)
FD(Type,UCHAR)
FD(ShareDisposition,UCHAR)
FD(Flags,USHORT)
FD(u,CM_PRD_INTERRUPT)
SE()
SD(CM_PARTIAL_RESOURCE_LIST)
FD(Version,USHORT)
FD(Revision,USHORT)
FD(Count,ULONG)
FD(PartialDescriptors,CM_PARTIAL_RESOURCE_DESCRIPTOR)
SE()
SD(LARGE_INTEGER)
FD(LowPart,ULONG)
FD(HighPart,LONG)
SE()
SD(PO_HIBER_PERF)
FD(IoTicks,ULONGLONG)
FD(InitTicks,ULONGLONG)
FD(CopyTicks,ULONGLONG)
FD(StartCount,ULONGLONG)
FD(ElapsedTime,ULONG)
FD(IoTime,ULONG)
FD(CopyTime,ULONG)
FD(InitTime,ULONG)
FD(PagesWritten,ULONG)
FD(PagesProcessed,ULONG)
FD(BytesCopied,ULONG)
FD(DumpCount,ULONG)
FD(FileRuns,ULONG)
SE()
SD(PO_MEMORY_IMAGE)
FD(Signature, ULONG)
FD(Version, ULONG)
FD(CheckSum, ULONG)
FD(LengthSelf, ULONG)
FD(PageSelf, PFN_NUMBER)
FD(PageSize, ULONG)
FD(ImageType, ULONG)
FD(SystemTime, LARGE_INTEGER)
FD(InterruptTime, ULONGLONG)
FD(FeatureFlags, ULONG)
FD(HiberFlags, UCHAR)
FD(spare, UCHAR)
FD(NoHiberPtes, ULONG)
FD(HiberVa, ULONG_PTR)
FD(HiberPte, PHYSICAL_ADDRESS)
FD(NoFreePages, ULONG)
FD(FreeMapCheck, ULONG)
FD(WakeCheck, ULONG)
FD(TotalPages, PFN_NUMBER)
FD(FirstTablePage, PFN_NUMBER)
FD(LastFilePage, PFN_NUMBER)
FD(PerfInfo, PO_HIBER_PERF)
SE()
SD(PO_MEMORY_RANGE_ARRAY_RANGE)
FD(PageNo, PFN_NUMBER)
FD(StartPage, PFN_NUMBER)
FD(EndPage, PFN_NUMBER)
FD(CheckSum, ULONG)
SE()
SD(PO_MEMORY_RANGE_ARRAY_LINK)
FD(Next, PPO_MEMORY_RANGE_ARRAY);
FD(NextTable, PFN_NUMBER)
FD(CheckSum, ULONG)
FD(EntryCount, ULONG)
SE()
DD()