Difference between revisions of "Techwiki:Hal"

From ReactOS Wiki
Jump to: navigation, search
Line 13: Line 13:
 
| [http://msdn.microsoft.com/en-us/library/aa490134.aspx ExTryToAcquireFastMutex] || 0x03 || - || 0x03
 
| [http://msdn.microsoft.com/en-us/library/aa490134.aspx ExTryToAcquireFastMutex] || 0x03 || - || 0x03
 
|-
 
|-
| HalAcquireDisplayOwnership || 0x14 || 0x01 ||  
+
| HalAcquireDisplayOwnership || 0x14 || 0x01 || 0x15
 
|-
 
|-
| HalAdjustResourceList || 0x15 || 0x02 ||  
+
| HalAdjustResourceList || 0x15 || 0x02 || 0x16
 
|-
 
|-
| HalAllProcessorsStarted || 0x16 || 0x03 ||  
+
| HalAllProcessorsStarted || 0x16 || 0x03 || 0x17
 
|-
 
|-
| HalAllocateAdapterChannel || 0x17 || 0x04 ||  
+
| HalAllocateAdapterChannel || 0x17 || 0x04 || 0x18
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490170.aspx HalAllocateCommonBuffer] || 0x18 || 0x05 ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490170.aspx HalAllocateCommonBuffer] || 0x18 || 0x05 || 0x19
 
|-
 
|-
| HalAllocateCrashDumpRegisters || 0x19 || 0x06 ||  
+
| HalAllocateCrashDumpRegisters || 0x19 || 0x06 || 0x1A
 
|-
 
|-
| HalAssignSlotResources || 0x1A || 0x07 ||  
+
| HalAllocateHardwareCounters || - || - || 0x1B
 
|-
 
|-
| HalBeginSystemInterrupt || 0x1B || - ||  
+
| HalAssignSlotResources || 0x1A || 0x07 || 0x1C
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/mcheck/halbugchecksystem.htm HalBugCheckSystem] || - || - ||  
+
| HalBeginSystemInterrupt || 0x1B || - || 0x1D
 
|-
 
|-
| HalCalibratePerformanceCounter || 0x1C || 0x08 ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/mcheck/halbugchecksystem.htm HalBugCheckSystem] || - || - || 0x1E
 +
|-
 +
| HalCalibratePerformanceCounter || 0x1C || 0x08 || 0x1F
 
|-
 
|-
 
| HalCallBios || - || 0x09 ||  
 
| HalCallBios || - || 0x09 ||  
Line 37: Line 39:
 
| HalClearSoftwareInterrupt || 0x04 || 0x0A || 0x04
 
| HalClearSoftwareInterrupt || 0x04 || 0x0A || 0x04
 
|-
 
|-
| HalConvertDeviceIdtToIrql || - || - ||  
+
| HalConvertDeviceIdtToIrql || - || - || 0x20
 
|-
 
|-
| HalDisableInterrupt || - || - ||  
+
| HalDisableInterrupt || - || - || 0x21
 
|-
 
|-
 
| HalDisableSystemInterrupt || 0x1D || 0x0B ||  
 
| HalDisableSystemInterrupt || 0x1D || 0x0B ||  
 
|-
 
|-
| HalDisplayString || 0x1E || 0x0C ||  
+
| HalDisplayString || 0x1E || 0x0C || 0x22
 
|-
 
|-
| HalEnableInterrupt || - || - ||  
+
| HalEnableInterrupt || - || - || 0x23
 
|-
 
|-
 
| HalEnableSystemInterrupt || 0x1F || 0x0D ||  
 
| HalEnableSystemInterrupt || 0x1F || 0x0D ||  
 
|-
 
|-
| HalEndSystemInterrupt || 0x20 || - ||  
+
| HalEndSystemInterrupt || 0x20 || - || 0x24
 
|-
 
|-
| HalEnumerateEnvironmentVariablesEx || - || - ||  
+
| HalEnumerateEnvironmentVariablesEx || - || - || 0x25
 
|-
 
|-
 
| HalEnumerateProcessors || - || - ||  
 
| HalEnumerateProcessors || - || - ||  
 
|-
 
|-
| HalFlushCommonBuffer || 0x21 || 0x0E ||  
+
| HalFlushCommonBuffer || 0x21 || 0x0E || 0x26
 +
|-
 +
| [http://msdn.microsoft.com/en-us/library/aa490201.aspx HalFreeCommonBuffer] || 0x22 || 0c0F || 0x27
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490201.aspx HalFreeCommonBuffer] || 0x22 || 0c0F ||  
+
| HalFreeHardwareCounters || - || - || 0x28
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490205.aspx HalGetAdapter] || 0x23 || 0x10 ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490205.aspx HalGetAdapter] || 0x23 || 0x10 || 0x29
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490175.aspx HalGetBusData] || 0x24 || 0x11 ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490175.aspx HalGetBusData] || 0x24 || 0x11 || 0x2A
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490182.aspx HalGetBusDataByOffset] || 0x25 || 0x12 ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490182.aspx HalGetBusDataByOffset] || 0x25 || 0x12 || 0x2B
 
|-
 
|-
| HalGetEnvironmentVariable || 0x26 || 0x13 ||  
+
| HalGetEnvironmentVariable || 0x26 || 0x13 || 0x2C
 
|-
 
|-
| HalGetEnvironmentVariableEx || - || - ||  
+
| HalGetEnvironmentVariableEx || - || - || 0x2D
 
|-
 
|-
| HalGetInterruptTargetInformation || - || - ||  
+
| HalGetInterruptTargetInformation || - || - || 0x2E
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490447.aspx HalGetInterruptVector] || 0x27 || 0x14 ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490447.aspx HalGetInterruptVector] || 0x27 || 0x14 || 0x2F
 
|-
 
|-
 
| HalGetMessageRoutingInfo || - || - ||  
 
| HalGetMessageRoutingInfo || - || - ||  
Line 149: Line 153:
 
| HalStopProfileInterrupt || 0x3C || 0x2E ||  
 
| HalStopProfileInterrupt || 0x3C || 0x2E ||  
 
|-
 
|-
| HalSystemVectorDispatchEntry || 0x06 || 0x2F ||  
+
| HalSystemVectorDispatchEntry || 0x06 || 0x2F || 0x07
 
|-
 
|-
 
| [http://msdn.microsoft.com/en-us/library/aa490197.aspx HalTranslateBusAddress] || 0x3D || 0x30 ||  
 
| [http://msdn.microsoft.com/en-us/library/aa490197.aspx HalTranslateBusAddress] || 0x3D || 0x30 ||  
Line 173: Line 177:
 
| KeFlushWriteBuffer || 0x48 || 0x3A ||  
 
| KeFlushWriteBuffer || 0x48 || 0x3A ||  
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms801649.aspx KeAcquireInStackQueuedSpinLock] || 7 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms801649.aspx KeAcquireInStackQueuedSpinLock] || 0x07 || - || 0x08
 
|-
 
|-
| KeAcquireInStackQueuedSpinLockRaiseToSynch || 0x08 || - ||  
+
| KeAcquireInStackQueuedSpinLockRaiseToSynch || 0x08 || - || 0x09
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms796301.aspx KeAcquireQueuedSpinLock] || 0x09 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms796301.aspx KeAcquireQueuedSpinLock] || 0x09 || - || 0x0A
 
|-
 
|-
| KeAcquireQueuedSpinLockRaiseToSynch || 0x0A || - ||  
+
| KeAcquireQueuedSpinLockRaiseToSynch || 0x0A || - || 0x0B
 
|-
 
|-
 
| [http://msdn.microsoft.com/en-us/library/ms801656.aspx KeAcquireSpinLock] || 0x47 || - ||  
 
| [http://msdn.microsoft.com/en-us/library/ms801656.aspx KeAcquireSpinLock] || 0x47 || - ||  
 
|-
 
|-
| KeAcquireSpinLockRaiseToSynch || 0x0B || - ||  
+
| KeAcquireSpinLockRaiseToSynch || 0x0B || - || 0x0C
 
|-
 
|-
 
| [http://msdn.microsoft.com/en-us/library/ms801636.aspx KeGetCurrentIrql] || 0x49 || - ||  
 
| [http://msdn.microsoft.com/en-us/library/ms801636.aspx KeGetCurrentIrql] || 0x49 || - ||  
Line 199: Line 203:
 
| [http://msdn.microsoft.com/en-us/library/ms801909.aspx KeReleaseSpinLock] || 0x4F || - ||  
 
| [http://msdn.microsoft.com/en-us/library/ms801909.aspx KeReleaseSpinLock] || 0x4F || - ||  
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms801646.aspx KeReleaseInStackQueuedSpinLock] || 0x0C || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms801646.aspx KeReleaseInStackQueuedSpinLock] || 0x0C || - || 0x0D
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms796244.aspx KeReleaseQueuedSpinLock] || 0x0D || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms796244.aspx KeReleaseQueuedSpinLock] || 0x0D || - || 0x0E
 
|-
 
|-
 
| [http://www.osronline.com/DDKx/kmarch/k105_66nm.htm KeStallExecutionProcessor] || 0x50 || 0x3C ||  
 
| [http://www.osronline.com/DDKx/kmarch/k105_66nm.htm KeStallExecutionProcessor] || 0x50 || 0x3C ||  
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms796225.aspx KeTryToAcquireQueuedSpinLock] || 0x0E || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms796225.aspx KeTryToAcquireQueuedSpinLock] || 0x0E || - || 0x0F
 
|-
 
|-
| KeTryToAcquireQueuedSpinLockRaiseToSynch || 0x0F || - ||  
+
| KeTryToAcquireQueuedSpinLockRaiseToSynch || 0x0F || - || 0x10
 
|-
 
|-
| KfAcquireSpinLock || 0x10 || - ||  
+
| KfAcquireSpinLock || 0x10 || - || 0x11
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms801638.aspx KfLowerIrql] || 0x11 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms801638.aspx KfLowerIrql] || 0x11 || - || 0x12
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms801898.aspx KfRaiseIrql] || 0x12 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms801898.aspx KfRaiseIrql] || 0x12 || - || 0x13
 
|-
 
|-
| KfReleaseSpinLock || 0x13 || - ||  
+
| KfReleaseSpinLock || 0x13 || - || 0x14
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490154.aspx READ_PORT_BUFFER_UCHAR] || 0x51 || - || 0x065
+
| [http://msdn.microsoft.com/en-us/library/aa490154.aspx READ_PORT_BUFFER_UCHAR] || 0x51 || - || 0x65
 
|-
 
|-
 
| [http://msdn.microsoft.com/en-us/library/aa490445.aspx READ_PORT_BUFFER_ULONG] || 0x52 || - || 0x66
 
| [http://msdn.microsoft.com/en-us/library/aa490445.aspx READ_PORT_BUFFER_ULONG] || 0x52 || - || 0x66

Revision as of 19:58, 29 December 2009

Exports

Export X86(2K3) AMD64(2K3) X86(Win7)
ExAcquireFastMutex 0x01 - 0x01
ExReleaseFastMutex 0x02 - 0x02
ExTryToAcquireFastMutex 0x03 - 0x03
HalAcquireDisplayOwnership 0x14 0x01 0x15
HalAdjustResourceList 0x15 0x02 0x16
HalAllProcessorsStarted 0x16 0x03 0x17
HalAllocateAdapterChannel 0x17 0x04 0x18
HalAllocateCommonBuffer 0x18 0x05 0x19
HalAllocateCrashDumpRegisters 0x19 0x06 0x1A
HalAllocateHardwareCounters - - 0x1B
HalAssignSlotResources 0x1A 0x07 0x1C
HalBeginSystemInterrupt 0x1B - 0x1D
HalBugCheckSystem - - 0x1E
HalCalibratePerformanceCounter 0x1C 0x08 0x1F
HalCallBios - 0x09
HalClearSoftwareInterrupt 0x04 0x0A 0x04
HalConvertDeviceIdtToIrql - - 0x20
HalDisableInterrupt - - 0x21
HalDisableSystemInterrupt 0x1D 0x0B
HalDisplayString 0x1E 0x0C 0x22
HalEnableInterrupt - - 0x23
HalEnableSystemInterrupt 0x1F 0x0D
HalEndSystemInterrupt 0x20 - 0x24
HalEnumerateEnvironmentVariablesEx - - 0x25
HalEnumerateProcessors - -
HalFlushCommonBuffer 0x21 0x0E 0x26
HalFreeCommonBuffer 0x22 0c0F 0x27
HalFreeHardwareCounters - - 0x28
HalGetAdapter 0x23 0x10 0x29
HalGetBusData 0x24 0x11 0x2A
HalGetBusDataByOffset 0x25 0x12 0x2B
HalGetEnvironmentVariable 0x26 0x13 0x2C
HalGetEnvironmentVariableEx - - 0x2D
HalGetInterruptTargetInformation - - 0x2E
HalGetInterruptVector 0x27 0x14 0x2F
HalGetMessageRoutingInfo - -
HalGetProcessorIdByNtNumber - -
HalGetVectorInput - -
HalHandleMcheck - 0x15
HalHandleNMI 0x28 0x16
HalInitSystem 0x29 0x17
HalInitializeBios - -
HalInitializeOnResume - -
HalInitializeProcessor 0x2A 0x18
HalIsHyperThreadingEnabled - 0x19
HalMakeBeep 0x2B 0x1A
HalProcessorIdle 0x2C 0x1B
HalQueryDisplayParameters 0x2D 0x1C
HalQueryEnvironmentVariableInfoEx - -
HalQueryMaximumProcessorCount - -
HalQueryRealTimeClock 0x2E 0x1D
HalReadDmaCounter 0x2F 0x1E
HalRegisterDynamicProcessor - -
HalRegisterErrataCallbacks - -
HalReportResourceUsage 0x30 0x1F
HalRequestClockInterrupt - - 0x05
HalRequestIpi 0x31 0x20
HalRequestSoftwareInterrupt 0x05 0x21 0x06
HalReturnToFirmware 0x32 0x22
HalSendNMI - 0x23
HalSendSoftwareInterrupt - 0x24
HalSetBusData 0x33 0x25
HalSetBusDataByOffset 0x34 0x26
HalSetDisplayParameters 0x35 0x27
HalSetEnvironmentVariable 0x36 0x28
HalSetEnvironmentVariableEx - -
HalSetProfileInterval 0x37 0x29
HalSetRealTimeClock 0x38 0x2A
HalSetTimeIncrement 0x39 0x2B
HalStartDynamicProcessor - -
HalStartNextProcessor 0x3A 0x2C
HalStartProfileInterrupt 0x3B 0x2D
HalStopProfileInterrupt 0x3C 0x2E
HalSystemVectorDispatchEntry 0x06 0x2F 0x07
HalTranslateBusAddress 0x3D 0x30
IoAssignDriveLetters 0x03E 0x31
IoFlushAdapterBuffers 0x3F 0x32
IoFreeAdapterChannel 0x40 0x33
IoFreeMapRegisters 0x41 0x34
IoMapTransfer 0x42 0x35
IoReadPartitionTable 0x43 0x36
IoSetPartitionInformation 0x44 0x37
IoWritePartitionTable 0x45 0x38
KdComPortInUse DATA 0x46 0x39
KeFlushWriteBuffer 0x48 0x3A
KeAcquireInStackQueuedSpinLock 0x07 - 0x08
KeAcquireInStackQueuedSpinLockRaiseToSynch 0x08 - 0x09
KeAcquireQueuedSpinLock 0x09 - 0x0A
KeAcquireQueuedSpinLockRaiseToSynch 0x0A - 0x0B
KeAcquireSpinLock 0x47 -
KeAcquireSpinLockRaiseToSynch 0x0B - 0x0C
KeGetCurrentIrql 0x49 -
KeLowerIrql 0x4A -
KeQueryPerformanceCounter 0x4B 0x3B
KeRaiseIrql 0x4C -
KeRaiseIrqlToDpcLevel 0x4D -
KeRaiseIrqlToSynchLevel 0x4E -
KeReleaseSpinLock 0x4F -
KeReleaseInStackQueuedSpinLock 0x0C - 0x0D
KeReleaseQueuedSpinLock 0x0D - 0x0E
KeStallExecutionProcessor 0x50 0x3C
KeTryToAcquireQueuedSpinLock 0x0E - 0x0F
KeTryToAcquireQueuedSpinLockRaiseToSynch 0x0F - 0x10
KfAcquireSpinLock 0x10 - 0x11
KfLowerIrql 0x11 - 0x12
KfRaiseIrql 0x12 - 0x13
KfReleaseSpinLock 0x13 - 0x14
READ_PORT_BUFFER_UCHAR 0x51 - 0x65
READ_PORT_BUFFER_ULONG 0x52 - 0x66
READ_PORT_BUFFER_USHORT 0x53 - 0x67
READ_PORT_UCHAR 0x54 - 0x68
READ_PORT_ULONG 0x55 - 0x69
READ_PORT_USHORT 0x56 - 0x6A
WRITE_PORT_BUFFER_UCHAR 0x57 - 0x6B
WRITE_PORT_BUFFER_ULONG 0x58 - 0x6C
WRITE_PORT_BUFFER_USHORT 0x59 - 0x6D
WRITE_PORT_UCHAR 0x5A - 0x6E
WRITE_PORT_ULONG 0x5B - 0x6F
WRITE_PORT_USHORT 0x5C - 0x70
x86BiosAllocateBuffer - - 0x71
x86BiosCall - - 0x72
x86BiosExecuteInterrupt - 0x3D
x86BiosFreeBuffer - - 0x73
x86BiosInitializeBiosEx - 0x3E
x86BiosTranslateAddress - 0x3F
x86BiosReadMemory - - 0x74
x86BiosWriteMemory - - 0x75