tags:

views:

175

answers:

3

Where can one find the DirectX HAL specification?

Taking this diagram to be correct

alt text

Then all GPU vendors have to write their device drivers such that they speak to the HAL.

Where is the HAL specified? How does MSFT adjust or update the HAL? When does the HAL change? If the HAL changes does the world break or the sky fall?

A: 

Videos Drivers on Vista+ are written against WDDM. See MSDN. I'm not absolutely sure whether I understand you correctly, but I think the WDDM specification/guidelines/API is what you're looking for.

Alexander Gessler
A: 

GPU vendors write to the device driver model (WDDM in Vista and Windows 7). They must conform to this model to be used by DirectX.

The WDDM is available in the Windows Device Driver Kit.

Michael
+2  A: 

As far as I know, there is no "DirectX HAL", HAL is just HAL. HAL is a kernel-mode abstraction layer that WDDM uses. In turn, the DirectX API talks to the WDDM driver (written by nVidia, ATi, etc), and instantiates a HAL device.

For software to talk to HAL, it needs to run in privileged mode (i.e. be a driver). If you're curious, this is where HAL is specified: http://msdn.microsoft.com/en-us/library/aa490448.aspx

HAL (usually) changes when new versions of Windows are released. And yes, the sky does sometimes fall. Remember when no XP drivers worked on Vista? This was caused either by WDDM changing, or by HAL changing. Or, most likely, both.

David Titarenco