Hi, I need to create a virtual DMA_ADAPTER structure so that my driver can run under WinXP 64-bit. I am able to do so and my audio driver works perfectly. The problem is that when I run Verifier, Verifier hooks in to my virtual structure but since I made my own what Verifier expects there is not there and it causes failures. Since I have no way of knowing what the WinXP 64-bit DMA_ADAPTER structure contains (besides the documented fields) I have no way of creating those other fields for Verifier to hook into. Does anyone know of a way I can resolve this? Why am I doing this...I am sure this will be the next question...so I will answer it now: I a driver that is called by PortCls.sys (WavePCI model). The driver sits over a virtual bus which sits over the USB bus. Now under 32-bit, when my virtual driver calls the NewMasterDmaChannel() function my bus driver forwards the IRP to the lower drivers which eventually return a result from HalGetDmaAdapter() which has a valid DMA adapter. But, in XP 64-bit, the return is NULL because apparently no HalGetDmaAdapter() function exists. So, what I have done in the bus driver is to intercept that request and create my own fake DMA_ADAPTER structure. And it works great....until Verifier wants to hook into it. Verifier is the only component of the OS that wants to interact with it... For this reason...I need to know how the 64-bit OS creates the DMA_ADAPTER...or I need an equivalent of HalGetDmaAdapter(). Thank you in advance for your time...