Difference between revisions of "Techwiki:Hal"

From ReactOS Wiki
Jump to: navigation, search
Line 7: Line 7:
 
! X86(Win7)
 
! X86(Win7)
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms797107.aspx ExAcquireFastMutex] || 0x01 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms797107.aspx ExAcquireFastMutex] || 0x01 || - || 0x01
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms797102.aspx ExReleaseFastMutex] || 0x02 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms797102.aspx ExReleaseFastMutex] || 0x02 || - || 0x02
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490134.aspx ExTryToAcquireFastMutex] || 0x03 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490134.aspx ExTryToAcquireFastMutex] || 0x03 || - || 0x03
 
|-
 
|-
 
| HalAcquireDisplayOwnership || 0x14 || 0x01 ||  
 
| HalAcquireDisplayOwnership || 0x14 || 0x01 ||  
Line 35: Line 35:
 
| HalCallBios || - || 0x09 ||  
 
| HalCallBios || - || 0x09 ||  
 
|-
 
|-
| HalClearSoftwareInterrupt || 0x04 || 0x0A ||  
+
| HalClearSoftwareInterrupt || 0x04 || 0x0A || 0x04
 
|-
 
|-
 
| HalConvertDeviceIdtToIrql || - || - ||  
 
| HalConvertDeviceIdtToIrql || - || - ||  
Line 112: Line 112:
 
|-
 
|-
 
| HalReportResourceUsage || 0x30 || 0x1F ||  
 
| HalReportResourceUsage || 0x30 || 0x1F ||  
 +
|-
 +
| HalRequestClockInterrupt || - || - || 0x05
 
|-
 
|-
 
| HalRequestIpi || 0x31 || 0x20 ||  
 
| HalRequestIpi || 0x31 || 0x20 ||  
 
|-
 
|-
| HalRequestSoftwareInterrupt || 0x05 || 0x21 ||  
+
| HalRequestSoftwareInterrupt || 0x05 || 0x21 || 0x06
 
|-
 
|-
 
| [http://msdn.microsoft.com/en-us/library/bb510367.aspx HalReturnToFirmware] || 0x32 || 0x22 ||  
 
| [http://msdn.microsoft.com/en-us/library/bb510367.aspx HalReturnToFirmware] || 0x32 || 0x22 ||  
Line 215: Line 217:
 
| KfReleaseSpinLock || 0x13 || - ||  
 
| KfReleaseSpinLock || 0x13 || - ||  
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490154.aspx READ_PORT_BUFFER_UCHAR] || 0x51 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490154.aspx READ_PORT_BUFFER_UCHAR] || 0x51 || - || 0x065
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490445.aspx READ_PORT_BUFFER_ULONG] || 0x52 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490445.aspx READ_PORT_BUFFER_ULONG] || 0x52 || - || 0x66
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490184.aspx READ_PORT_BUFFER_USHORT] || 0x53 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490184.aspx READ_PORT_BUFFER_USHORT] || 0x53 || - || 0x67
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490446.aspx READ_PORT_UCHAR] || 0x54 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490446.aspx READ_PORT_UCHAR] || 0x54 || - || 0x68
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490156.aspx READ_PORT_ULONG] || 0x55 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490156.aspx READ_PORT_ULONG] || 0x55 || - || 0x69
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490214.aspx READ_PORT_USHORT] || 0x56 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490214.aspx READ_PORT_USHORT] || 0x56 || - || 0x6A
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490168.aspx WRITE_PORT_BUFFER_UCHAR] || 0x57 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490168.aspx WRITE_PORT_BUFFER_UCHAR] || 0x57 || - || 0x6B
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490191.aspx WRITE_PORT_BUFFER_ULONG] || 0x58 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490191.aspx WRITE_PORT_BUFFER_ULONG] || 0x58 || - || 0x6C
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms920103.aspx WRITE_PORT_BUFFER_USHORT] || 0x59 || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms920103.aspx WRITE_PORT_BUFFER_USHORT] || 0x59 || - || 0x6D
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms920105.aspx WRITE_PORT_UCHAR] || 0x5A || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms920105.aspx WRITE_PORT_UCHAR] || 0x5A || - || 0x6E
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/aa490180.aspx WRITE_PORT_ULONG] || 0x5B || - ||  
+
| [http://msdn.microsoft.com/en-us/library/aa490180.aspx WRITE_PORT_ULONG] || 0x5B || - || 0x6F
 
|-
 
|-
| [http://msdn.microsoft.com/en-us/library/ms920112.aspx WRITE_PORT_USHORT] || 0x5C || - ||  
+
| [http://msdn.microsoft.com/en-us/library/ms920112.aspx WRITE_PORT_USHORT] || 0x5C || - || 0x70
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/allocatebuffer.htm x86BiosAllocateBuffer] || - || - ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/allocatebuffer.htm x86BiosAllocateBuffer] || - || - || 0x71
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/call.htm x86BiosCall] || - || - ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/call.htm x86BiosCall] || - || - || 0x72
 
|-
 
|-
 
| x86BiosExecuteInterrupt || - || 0x3D ||  
 
| x86BiosExecuteInterrupt || - || 0x3D ||  
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/freebuffer.htm x86BiosFreeBuffer] || - || - ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/freebuffer.htm x86BiosFreeBuffer] || - || - || 0x73
 
|-
 
|-
 
| x86BiosInitializeBiosEx || - || 0x3E ||  
 
| x86BiosInitializeBiosEx || - || 0x3E ||  
Line 251: Line 253:
 
| x86BiosTranslateAddress || - || 0x3F ||  
 
| x86BiosTranslateAddress || - || 0x3F ||  
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/readmemory.htm x86BiosReadMemory] || - || - ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/readmemory.htm x86BiosReadMemory] || - || - || 0x74
 
|-
 
|-
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/writememory.htm x86BiosWriteMemory] || - || - ||  
+
| [http://www.geoffchappell.com/viewer.htm?doc=studies/windows/km/hal/api/x86bios/writememory.htm x86BiosWriteMemory] || - || - || 0x75
 
|}
 
|}

Revision as of 19:45, 29 December 2009

Exports

Export X86(2K3) AMD64(2K3) X86(Win7)
ExAcquireFastMutex 0x01 - 0x01
ExReleaseFastMutex 0x02 - 0x02
ExTryToAcquireFastMutex 0x03 - 0x03
HalAcquireDisplayOwnership 0x14 0x01
HalAdjustResourceList 0x15 0x02
HalAllProcessorsStarted 0x16 0x03
HalAllocateAdapterChannel 0x17 0x04
HalAllocateCommonBuffer 0x18 0x05
HalAllocateCrashDumpRegisters 0x19 0x06
HalAssignSlotResources 0x1A 0x07
HalBeginSystemInterrupt 0x1B -
HalBugCheckSystem - -
HalCalibratePerformanceCounter 0x1C 0x08
HalCallBios - 0x09
HalClearSoftwareInterrupt 0x04 0x0A 0x04
HalConvertDeviceIdtToIrql - -
HalDisableInterrupt - -
HalDisableSystemInterrupt 0x1D 0x0B
HalDisplayString 0x1E 0x0C
HalEnableInterrupt - -
HalEnableSystemInterrupt 0x1F 0x0D
HalEndSystemInterrupt 0x20 -
HalEnumerateEnvironmentVariablesEx - -
HalEnumerateProcessors - -
HalFlushCommonBuffer 0x21 0x0E
HalFreeCommonBuffer 0x22 0c0F
HalGetAdapter 0x23 0x10
HalGetBusData 0x24 0x11
HalGetBusDataByOffset 0x25 0x12
HalGetEnvironmentVariable 0x26 0x13
HalGetEnvironmentVariableEx - -
HalGetInterruptTargetInformation - -
HalGetInterruptVector 0x27 0x14
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
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 7 -
KeAcquireInStackQueuedSpinLockRaiseToSynch 0x08 -
KeAcquireQueuedSpinLock 0x09 -
KeAcquireQueuedSpinLockRaiseToSynch 0x0A -
KeAcquireSpinLock 0x47 -
KeAcquireSpinLockRaiseToSynch 0x0B -
KeGetCurrentIrql 0x49 -
KeLowerIrql 0x4A -
KeQueryPerformanceCounter 0x4B 0x3B
KeRaiseIrql 0x4C -
KeRaiseIrqlToDpcLevel 0x4D -
KeRaiseIrqlToSynchLevel 0x4E -
KeReleaseSpinLock 0x4F -
KeReleaseInStackQueuedSpinLock 0x0C -
KeReleaseQueuedSpinLock 0x0D -
KeStallExecutionProcessor 0x50 0x3C
KeTryToAcquireQueuedSpinLock 0x0E -
KeTryToAcquireQueuedSpinLockRaiseToSynch 0x0F -
KfAcquireSpinLock 0x10 -
KfLowerIrql 0x11 -
KfRaiseIrql 0x12 -
KfReleaseSpinLock 0x13 -
READ_PORT_BUFFER_UCHAR 0x51 - 0x065
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