This is the mail archive of the
cygwin-xfree@sources.redhat.com
mailing list for the Cygwin project.
Development Status Update
- To: "Cygx (E-mail)" <cygwin-xfree at sources dot redhat dot com>
- Subject: Development Status Update
- From: Harold Hunt <Harold at compasstechnologies dot com>
- Date: Sun, 19 Nov 2000 23:35:09 -0500
Today was a good day - I created about 20 source files and about 30 dummy
drawing functions (GetSpans, SetSpans, etc.) that simply printf a message
when they are called, then I fixed up winScreenInit to remove all references
to the color framebuffer code, added pointers to the dummy functions I
created, and messed with the initialization process enough to get a booting
server that does not display graphics, but it does print out tons of
messages indicating that it is running and processing mouse input.
Whew! That was a mouth full.
I have a problem that we need to solve before I can start changing the dummy
functions to perform real operations, this is kind of a long explanation, so
bear with me:
1) We need to call Windows GDI and DirectDraw functions from the
device dependent X (DDX) functions like GetSpans, SetSpans,
PolyLines, FillPolygon, etc.
2) Calling Windows GDI and DirectDraw functions from the XWin.exe
source files would require that windows.h be included in
the files that call GDI and DD functions.
3) DDX functions require X Windows headers to define the structures and
data types that are passed as parameters and used as
return results.
4) Including windows.h in source files that also include X Windows headers
causes several identifier collisions between the header files;
compilation fails.
5) Implementing the DDX functions in xf_dx.dll seems like a good idea;
however, that would require including the X Windows headers
in the xf_dx.dll source files, along with windows.h,
so we're back where we started.
6) Note that this problem was not exposed by previous development,
as the current functions in xf_dx.dll do not use any X Windows
structures or data types, so X Windows headers are not currently
included in xf_dx.dll.
Where do we implement the DDX functions and how do we get windows.h and the
X Windows headers to live together?
I'll be thinking about this question for the next couple days (or weeks),
but I figure it won't hurt to see if anyone has already described a
work-around.
Please send your comments and suggestions to the mailing list; thanks in
advance,
Harold