[Fwd: (Fwd) Re: FW: Win32 XServer]
Thu Nov 18 04:37:00 GMT 1999
John Fortin wrote:
> > > > 3. Start out with an unaccelerated server (you can base it on
> > > > XF86_SVGA since the framework is all there), that uses
> > > > DirectDraw to draw directly on the video memory surface.
> > >
> > > Well, back buffer, then blit to primary. back buffer is created
> > > in user memory with a constant pointer so I don't have to lock the
> > > backing surface... Only the primary gets locked during the blit.
> > The performance of such a server will not be what you would wish, due
> > to the fact that all the blitting from system memory to video memory
> > will be done in software. Hence the performance hit would be quite
> > large (especially if screen->screen and solid fills are done with
> > DirectX primitives to the framebuffer).
> The biggest problem I had with my initial design using the primary
> surface only was this...
> If I do a context switch, the video memory get cleared, and there was
> not a way to redraw. Restoring the surface does not restore what was on
> the surface... I chose the user-memory/blit method in order to keep the
> display-memory, and let the server "draw" during the while in the
> background. I've asked about this on the Direct-X maillist and
> Hmmm, One thing I don't know though. Will xfree86 itself recover from
> a context switch, and restore
> the surface itself?
More information about the Cygwin-xfree