#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()