[comp.windows.x] Porting server to TMS34010 coprocessor

dpelland@hawk.ulowell.edu (David Pelland) (03/18/89)

  Hello, 
	I am working on a port of the X server for an Amiga 2000 with
a TMS34010 graphics coprocessor board and could use some help.  The
problem is that I need to differentiate between windows that are on
display and windows that are not.  The reason for this is that the
coprocessor has its own on-board memory that will be used for the on
display windows whereas the Amiga's memory will be used for any
backing stores, off-screen pixmaps, etc.  
	There are a couple of problems that I am having with the code.
At the cfb (we're implementing an 8 bit color frame buffer) level, the
getbits, putbits routines are going to need to be rewritten because
the TI chip's memory is not directly addressable by the amiga.
Therefore, I need to know beforehand whether I am dealing with a
displayed window or not.
	The second problem I'm having is with the terminology.  Is an
UNDRAWABLE_WINDOW still on the display, and is INPUT_ONLY?  Also, how
does X deal with overlapping windows, and where is the code for this?  

	This project is just underway, and basically I've been looking
at the cfb and mi code in the ddx directory.  Any pointers, or help of
any sort would be gratefully accepted.  Also, is there any
documentation available that is better than MIT's "Strategies for
Porting the X v11 Sample Server," and "Definition of the Porting Layer
for the X v11 Sample Server" ? 

					Thanks in advance,
						DMP

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
David M. Pelland  				
Center for Productivity Enhancement		dpelland@hawk.ulowell.edu
University of Lowell				(508) 452-5000 x3102
Lowell, Massachusetts
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (03/18/89)

    Therefore, I need to know beforehand whether I am dealing with a
    displayed window or not.

The drawable's type will tell you this (DRAWABLE_WINDOW vs. DRAWABLE_PIXMAP).
You can even use this information at ValidateGC time to swap in the appropriate
functions.

    Is an UNDRAWABLE_WINDOW still on the display, and is INPUT_ONLY?

Yes.  You should never see an UNDRAWABLE_WINDOW passed to a graphics request.

    Also, how
    does X deal with overlapping windows, and where is the code for this? 

Deal with in what respect?  In terms of clipping, see the horrors in
server/dix/window.c and server/ddx/mi/mivaltree.c.