46 #if defined(SARCH_PC98) 193 TranslatedDescriptor->u.Interrupt.Vector =
Entry;
209 RawDescriptor->Type = CurrentAddress->Type;
218 RawDescriptor->u.Port.Start.HighPart = 0;
219 RawDescriptor->u.Port.Start.LowPart = CurrentAddress->Element[Element].Start;
220 RawDescriptor->u.Port.Length = CurrentAddress->Element[Element].Length;
229 RawDescriptor->Flags = (CurrentAddress->Flags &
IDT_READ_ONLY) ?
232 RawDescriptor->u.Memory.Start.HighPart = 0;
233 RawDescriptor->u.Memory.Start.LowPart = CurrentAddress->Element[Element].Start;
234 RawDescriptor->u.Memory.Length = CurrentAddress->Element[Element].Length;
246 RawDescriptor->u.Port.Start,
248 &TranslatedDescriptor->
u.Port.Start);
259 RawDescriptor->u.Memory.Start,
261 &TranslatedDescriptor->
u.Memory.Start);
277 ULONG i,
j,
k, ListSize,
Count,
Port, Element, CurrentScale, SortScale, ReportType, FlagMatch;
290 #if defined(SARCH_XBOX) 329 if (!(RawList) || !(TranslatedList))
359 RawFull = RawList->
List;
366 for (ReportType = 0; ReportType < 2; ReportType++)
408 if (!CurrentAddress)
break;
411 if (!(CurrentAddress->
Flags & FlagMatch) ||
412 !(CurrentAddress->
Element[Element].Length))
416 CurrentAddress = CurrentAddress->
Next;
434 TranslatedList->
Count++;
454 RawPartialList->
Count++;
455 TranslatedPartialList->Count++;
459 RtlCopyMemory(CurrentTranslated, &TranslatedPartial,
sizeof(TranslatedPartial));
471 RawFull = RawList->List;
472 TranslatedFull = TranslatedList->
List;
475 for (
i = 0;
i < RawList->Count;
i++)
491 SortedRaw = CurrentRaw;
492 SortedTranslated = CurrentTranslated;
501 if ((SortScale < CurrentScale) ||
502 ((SortScale == CurrentScale) &&
511 RtlCopyMemory(&TranslatedPartial, CurrentTranslated,
sizeof(TranslatedPartial));
512 RtlCopyMemory(CurrentTranslated, SortedTranslated,
sizeof(TranslatedPartial));
513 RtlCopyMemory(SortedTranslated, &TranslatedPartial,
sizeof(TranslatedPartial));
624 &KeyValueInformation,
625 sizeof(KeyValueInformation),
VOID NTAPI HalpBuildPartialFromIdt(IN ULONG Entry, IN PCM_PARTIAL_RESOURCE_DESCRIPTOR RawDescriptor, IN PCM_PARTIAL_RESOURCE_DESCRIPTOR TranslatedDescriptor)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
LONG HalpActiveProcessors
BOOLEAN NTAPI HalEnableSystemInterrupt(IN ULONG Vector, IN KIRQL Irql, IN KINTERRUPT_MODE InterruptMode)
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR * PCM_PARTIAL_RESOURCE_DESCRIPTOR
_Must_inspect_result_ _In_ WDFIORESLIST _In_ PIO_RESOURCE_DESCRIPTOR Descriptor
enum _INTERFACE_TYPE INTERFACE_TYPE
PADDRESS_USAGE HalpAddressUsageList
#define OBJ_CASE_INSENSITIVE
CM_FULL_RESOURCE_DESCRIPTOR List[1]
#define UNREFERENCED_PARAMETER(P)
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
_In_ ULONG _In_ PHYSICAL_ADDRESS _Inout_ PULONG AddressSpace
IDTUsage HalpIDTUsage[256]
VOID NTAPI HalpRegisterVector(IN UCHAR Flags, IN ULONG BusVector, IN ULONG SystemVector, IN KIRQL Irql)
struct _HalAddressUsage::@1481 Element[]
#define PRIMARY_VECTOR_BASE
VOID NTAPI HalpBuildAddressMap(VOID)
IDTUsageFlags HalpIDTUsageFlags[256]
#define CM_RESOURCE_MEMORY_READ_WRITE
#define CmResourceTypePort
CM_PARTIAL_RESOURCE_LIST PartialResourceList
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
BOOLEAN HalpGetInfoFromACPI
struct _CM_FULL_RESOURCE_DESCRIPTOR * PCM_FULL_RESOURCE_DESCRIPTOR
#define CM_RESOURCE_MEMORY_READ_ONLY
VOID NTAPI HalpGetNMICrashFlag(VOID)
enum _KINTERRUPT_MODE KINTERRUPT_MODE
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
ADDRESS_USAGE HalpComIoSpace
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
VOID NTAPI HalpEnableInterruptHandler(IN UCHAR Flags, IN ULONG BusVector, IN ULONG SystemVector, IN KIRQL Irql, IN PVOID Handler, IN KINTERRUPT_MODE Mode)
_Must_inspect_result_ _In_ ULONG Flags
NTSTATUS NTAPI HalpMarkAcpiHal(VOID)
#define NT_SUCCESS(StatCode)
#define ExAllocatePoolWithTag(hernya, size, tag)
ULONG NTAPI HalpIs16BitPortDecodeSupported(VOID)
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1]
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn BOOLEAN Physical UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER Handler
BOOLEAN NTAPI HalTranslateBusAddress(IN INTERFACE_TYPE InterfaceType, IN ULONG BusNumber, IN PHYSICAL_ADDRESS BusAddress, IN OUT PULONG AddressSpace, OUT PPHYSICAL_ADDRESS TranslatedAddress)
INTERFACE_TYPE InterfaceType
#define CM_RESOURCE_PORT_MEMORY
FORCEINLINE VOID KeRegisterInterruptHandler(IN ULONG Vector, IN PVOID Handler)
NTSTATUS NTAPI IoReportHalResourceUsage(PUNICODE_STRING HalDescription, PCM_RESOURCE_LIST RawList, PCM_RESOURCE_LIST TranslatedList, ULONG ListSize)
NTSYSAPI ULONGLONG WINAPI RtlConvertUlongToLargeInteger(ULONG)
USHORT HalpComPortIrqMapping[5][2]
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
IN PVOID IN PVOID IN USHORT IN USHORT IN PINTERFACE Interface
#define CM_RESOURCE_PORT_IO
ADDRESS_USAGE HalpDefaultIoSpace
#define CM_RESOURCE_INTERRUPT_LEVEL_SENSITIVE
VOID NTAPI HalpBuildPartialFromAddress(IN INTERFACE_TYPE Interface, IN PADDRESS_USAGE CurrentAddress, IN ULONG Element, IN PCM_PARTIAL_RESOURCE_DESCRIPTOR RawDescriptor, IN PCM_PARTIAL_RESOURCE_DESCRIPTOR TranslatedDescriptor)
#define CmResourceTypeInterrupt
VOID NTAPI HalpReportSerialNumber(VOID)
#define CM_RESOURCE_INTERRUPT_LATCHED
BOOLEAN NTAPI HalpGetDebugPortTable(VOID)
VOID NTAPI HalpGetResourceSortValue(IN PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor, OUT PULONG Scale, OUT PLARGE_INTEGER Value)
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
#define RtlZeroMemory(Destination, Length)
#define InitializeObjectAttributes(p, n, a, r, s)
#define RtlCopyMemory(Destination, Source, Length)
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
struct _HalAddressUsage * Next
#define CmResourceTypeMemory
VOID NTAPI HalpReportResourceUsage(IN PUNICODE_STRING HalName, IN INTERFACE_TYPE InterfaceType)
#define MAXIMUM_IDTVECTOR
struct _LARGE_INTEGER::@2248 u
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID InterfaceType
base of all file and directory entries
VOID NTAPI KeBugCheckEx(_In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
#define RTL_CONSTANT_STRING(s)