Share via


Differences from Desktop Implementations (Windows CE 5.0)

Send Feedback

The original graphics driver design for Windows CE was created to provide a uniform GDI implementation across a wide variety of simple hardware with a minimal memory footprint. By augmenting the display driver implementation to include DirectDraw, Windows CE supports more sophisticated hardware and applications that can support a wide variety of high-performance functionality. This extends the current implementation to support new hardware and provides applications with the graphical power and flexibility they require.

In Windows CE, DirectDraw is generally a subset of the corresponding version of DirectDraw for Windows. The DirectDraw hardware abstraction layer (DDHAL) for Windows CE was designed as a modified version of the DDHAL for Windows-based desktop platforms.

The following list describes the key differences in the Windows CE implementation:

  • A single 32-bit DDHAL implementation combines the 16-bit and 32-bit implementations for Windows-based desktop platforms.

    This 32-bit implementation is part of a Windows CE–based display driver instead of a separate DLL or part of a display minidriver. Minimal divergence from the original design of DDI for Windows CE is very important. Additionally, it is important that GPE be extended to make supporting DirectDraw much easier.

  • The virtual display driver (VDD) and kernel services functionality specific to Windows-based desktop platforms is omitted.

  • A new entry point is included to allow DirectDraw to initialize the DDHAL for the current display driver.

  • There is no support for palletized primary surfaces.

    Primary surfaces have a 16-bit minimum pixel width.

  • The special functionality of AGP, such as sharing system RAM as video memory, can be supported entirely from within the driver, but there is no help from the middleware.

  • Implementations of Windows CE for hardware platforms that rely heavily on emulated software alpha blending composition might want to differentiate between GDI**surfaces and active, screen, or primary surfaces. These are all the same in a Windows desktop implementation.

  • The driver is responsible for video management.

    DirectDraw does not offer a VIDMEM-style heap management service. GPE-based heap management services can be for video management.

  • Because Windows CE is an exclusively 32-bit operating system, it cannot support the 16-bit functionality of DirectDraw. This functionality can be removed without any notable drawbacks.

  • The DDI for the Windows CE has combined the display driver, port, and miniport into a single device-specific display driver with a new set of initialization routines. This is different than the Windows desktop DDHAL architecture, so a different mechanism of DDHAL initialization is required.

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.