336 lines
6.2 KiB
Plaintext
336 lines
6.2 KiB
Plaintext
|
|
||
|
#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)
|
||
|
FD(IoMapBase,USHORT)
|
||
|
FD(IoMap,UCHAR)
|
||
|
FD(IoMapEnd,ULONG)
|
||
|
SE()
|
||
|
|
||
|
SD64(KPCR)
|
||
|
FD(IdtBase,PKIDTENTRY64)
|
||
|
FD(GdtBase,PKGDTENTRY64)
|
||
|
FD(TssBase,PKTSS64)
|
||
|
FD(Prcb,KPRCB)
|
||
|
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)
|
||
|
FD(ArcSetupDeviceName,PCHAR)
|
||
|
FD(VideoDevice,DETECTED_DEVICE)
|
||
|
FD(KeyboardDevices,PDETECTED_DEVICE)
|
||
|
FD(ComputerDevice,DETECTED_DEVICE)
|
||
|
FD(ScsiDevices,PDETECTED_DEVICE)
|
||
|
FD(ScalarValues,ULONG)
|
||
|
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(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)
|
||
|
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(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()
|
||
|
|
||
|
|
||
|
DD()
|
||
|
|