[comp.windows.x] Sun Multiscreen & R4 question

kaleb@mars.jpl.nasa.gov (Kaleb Keithley) (01/18/90)

Not long before R4, I was successful in getting the Xsun to work with
two CG2 color frame buffers.  I achieved this by setting up additional
frame buffer, visual, and depth structures for each screen, and changed
the ddx code to reference the appropriate structure.

Now I am trying to do the same for the R4 Xsun server.  Like R3, I have
added the additional frame buffer, visual, and depth structures.  The
problem I am experiencing has to do with the devPrivates which seem to
be new to R4.  It is not intuitively obvious (to me anyway) just how these
are being used.  As written, the various PrivateIndexes in mi, mfb, and
cfb get initialized when AddScreen is called for screen zero, during which
it appears that privates get added to screen zeros devPrivate.  However
when AddScreen gets called for screen one, some (defensive?) checking
prevents the allocation of privates for screen one and the matching
initialization of the PrivateIndexes.

Some questions come to mind:
   Should ddx code ever call ResetWindowPrivates? ResetGCPrivates?
   Why is ResetScreenPrivates static?
   Is there some text documentation of how privates are used in the server?
   In AllocateScreenPrivates, a call is made to xrealloc for devPrivate
      or DevPrivates (don't remember which, and my news machine is not
      connected to my R4 machine, so I can't check), with
      winPrivateCount as a parameter.  Since this is done before any window
      privates are allocated, what is this supposed to be doing?
    Can anyone offer any tips or suggestions about where to go from here?

Thanks in advance.

Chewey, get us outta here!
                 
kaleb@mars.jpl.nasa.gov             (818)354-8771
Kaleb Keithley