This is an outline of the architecture. Many details are skipped, but hopefully this is useful.
Main | User |-----------\ XVidMode DGA2
Most of the DirectDraw functionality is implemented in a common base
class. Derived classes are responsible for providing display
mode methods (
and internal functions called to create primary and backbuffer
User provides for DirectDraw capabilities based on drawing to a
Wine window. It uses the
implementation for primary and backbuffer surfaces.
XVidMode attempt to use the XFree86 VidMode extension to set the
display resolution to match the parameters to
DGA2 attempt to use the XFree86 DGA 2.x extension to set the
display resolution and direct access to the framebuffer, if the
full-screen-exclusive cooperative level is used. If not, it just