Around 9 o'clock on Sep 24, Steve Kirkendall wrote:

> What's the motivation for implementing the emulated visuals in the
> server?  Do some video cards have special hardware for doing the
> conversion?

It's a bit more efficient to do the emulation in the server; a client-side 
emulation would require the pseudo->true conversion be done to a temporary 
image and then the results sent to the server for display.  That's an 
extra copy of the data.

It also provides a more consistent environment for applications.  If the X 
server emulates 8, 16 and 24 bit visuals then migrating applications 
between servers is significantly easier and doesn't require negotiating 
which proxy the application should connect to.

> Because otherwise, I'd say the PseudoColor emulation should be done
> in the Xnest-like proxy.  That way, the real XFree86 server stays
> simpler and the proxy can be used with any X server.

The problem with Xnest is that it provides a whole window system inside a 
single window; useful for some debugging situations, but it doesn't 
integrate the two window hierarchies.  There's no cut&paste between Xnest 
apps and regular apps and you've got two window managers running.  

I think you could probably write a proxy that mapped windows straight
across, but it would be quite a bit of work to get the semantics straight
when applications communicatee across the proxy boundary.

Doing the emulation inside the X server is actually quite easy, the hard 
part that RandR added was the ability to switch which visuals were 
emulated and which were mapped directly to the hardware.  The current 
server internals are not structured well to handle that case.

Keith Packard        XFree86 Core Team        HP Cambridge Research Lab


_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to