Subject: Re: bad keyboard "bounce" and other X questions.
To: Simon Burge <simonb@NetBSD.ORG>
From: Andrew Doran <ad@fionn.sports.gov.uk>
List: port-pmax
Date: 05/10/1999 13:31:31
> > > Also, the Xpmax X server doesn't recognise a second graphics card.
> > > I've just changed the kernel config to attach more than one card:
> > >
> > >         sfb0 at tc0 slot 1 offset 0x0: (1280x1024x8) (console)
> > >         sfb1 at tc0 slot 0 offset 0x0: (1280x1024x8)
> >
> > Some stuff needs to be added to pmaxScreenPrivate. Pretty simple, all
> > in all. Just look for static variables in pmax_io.c that look suspect
> > and move them.
 
> I can see a couple at a quick glance that look like candidates.  It
> looks like pmaxScreenInit() needs to use /dev/fb%d not fb0 at least.

Uhhhm.. Yes; since DIX is stupid, pmax_init.c will need to first open 
each /dev/fb%d in turn just to figure out how many screens we have, 
AFAIR. Then pmaxScreenInit() needs to open the right /dev/fb% each
time round. Just remember in your implementation than pmaxScreenInit() 
gets re-called each time the server is cycled.
 
> The Ultrix ws stuff maintains an array of screens that it uses in it's
> ConstrainCursor() function - I'd guess we need to do something similar
> too?

ConstrainCursor() is really only a hint; DIX enforces it. But to be 
correct, it should be implemented for multiscreen too. ConstrainCursor()
should provide a pScreen; so, the cursor constraints should be loaded
into
pmaxScreenPrivate (or the pmInfo for that screen if you can).

Andy.