Subject: Re: server X
From: [email-masked] (Jeff Sturm)

12 Sep 1998 19:34:09 -0700
Message-ID: <[email-masked]>
References: <01BDDD75.00B69600@sos>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
To: Sergey Okhapkin <[email-masked]>
Cc: [email-masked]

Sergey Okhapkin wrote:
> 
> Alexander Stockdale wrote:
> > I think we really need to port XFree86 to the cygwin environment.  I've
> started looking into this, but it looks like it may be a big job (just look
> at the size of the diff file for the OS/2 port).
> >
> 
> Porting _Xfree86_ to win32 is a bad idea, because Xfree86 requires direct
> video hardware access. The best candidate to port is sample X server
> provided with X11 distribution - just create directory
> xc/programs/Xserver/hw/Win32 and fill it with some code :-)

The X11R6.4 sample server is no better-- it's a *very* old version of
XFree86.

To do a Win32 server from scratch, yes, all the video framebuffer code
in XFree86 would have to be replaced with Win32 USER/GDI calls.  I don't
really know how much of the overall server code would be invalidated by
this approach.

> Another interesting possibility is to modify libX11 to display X requests
> with Windows GDI calls if environment variable DISPLAY is not set or set to
> "localhost". This case bundled Xnest server will act as X server (Xnest
> compiles with cygwin and runs), and no X server will be required for local
> X clients. Some related work already done in ntxlib package.

I know Xlib better than Win32 (i.e., I know very little about Win32),
but this sounds difficult to me.  Does Win32 have functions to iterate
child windows?  If so, how would you tell ordinary windows apart from
Xlib-controlled windows?  What about inter-client communications?  You
could probably manage it with shared memory segments and Win32 IPC, but
it would probably be far more straightforward with a real X server.

-- 
Jeff Sturm
[email-masked]
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".