[...]
There is another mode, where a single buffer forms a
big desktop,
of which each RAMDAC displays a part. Seems like stupid driver
limitations restrict this mode to using the same resolution for
both heads, but I'm not sure.
It is to be expected that a single rendering context has only one
framebuffer configuration. "Consumer" hardware does not have a per
pixel framebuffer configuration stored in the framebuffer together
with the color (and possibly clipping) data; a rendering operation
expects a single config.
Right, but resolution is just a matter of RAMDAC parameters. All I
want is a 3856x1536 framebuffer with one RAMDAC displaying a
2048x1536 window and the other displaying a 1808x1356 window. I don't
care about one tiny MB of VRAM being invisible.
True, this should be possible as long as the pixel format is the same; I
misunderstood before, this is indeed a driver limitation.
BTW, the 8800 is limited to 2048x2048 for OpenGL
contexts, but that
seems to be per context, and I'm not inderested in stretching a
single context over both screens anyway. (I'm not interested in
stretching *anything* over both screens; just moving windows across
them, which is not possible with independent desktops.)
That is a problem since there is no way an application can know about
this limitation and I don't think X has a way of returning "window too
large" on a window config request.
--ms