eXDI hardware debugging support in DeviceEmulator

Windows Embedded CE 6.0 Platform Builder 6.0 SP1 is now available at http://www.microsoft.com/downloads/details.aspx?FamilyId=BF0DC0E3-8575-4860-A8E3-290ADF242678&displaylang=en.

The service pack adds eXDI hardware-level debugging into the Platform Builder 6.0 debugger, which is great news!  Even better, is that the eXDI driver for the DeviceEmulator shipped as sample source code.  Check out %ProgramFiles%\Microsoft Platform Builder\6.00\cepb\EXDI2\SAMPLEDRIVER\KdStubDe.  This is an updated version of the eXDI driver I demoed at PDC last year using PB 5.0.

The DEComInterfaces.idl declares the COM interface to the DeviceEmulator, and lurking inside it is IDeviceEmulatorDebugger.  The KdStubDe translates eXDI method calls into IDeviceEmulatorDebugger calls, giving you the ability to debug OS images even if no KITL/KdStub is present, and to debug all of the code in the image, including interrupt handlers and boot code.

Please do take time to read the README.TXT to get familiar with the limitations of DeviceEmulatorEXDI... there are a few gotchas where the emulator's implementation makes hardware-level debugging a bit challenging.  ;-)