Edward Betts wrote: > Just surfing the Xpert list and i noticed your post about i815 overlay output. > I have the same problem. I was wondering if you had found a solution? >
Yes and no. At least (I think) I know what the problem is... The i815 has an extended set of registers that allows control of the digital output timing independently from the normal analog output. The XFree driver is only aware of the normal analog registers, and so the registers controlling the digital output remain at whatever values were put in there by the BIOS at system initialization. This is a nice feature which basically allows the i815 to output both digital and analog video at the same time, with different timing parameters (although they will both display the same framebuffer). However, there's a set of overlay position registers that are used to align the position of video overlay with normal framebuffer graphics (don't ask me why this alignment doesn't happen automatically). The correct value that needs to go into these registers is dependent on the HSYNC position, and the XFree driver (correctly) initializes it based on the _analog_ HSYNC position. This means that if you're using an analog monitor, video overlay should always be correctly aligned. If you're using a digital monitor (or the output of a TV encoder, which is internally attached the digital interface), video overlay will _not_ be aligned to normal graphics unless digital and analog HSYNC position is the same. If the separate digital timing registers are enabled (which seems to be the default on my machine, and again, this is not currently controlled by the XFree driver), this is quite unlikely as the XFree driver never touches the digital timing registers. I'm not sure about the right way to fix this, though. AFAIK, the overlay position registers basically fscks up the idea of having separate timing for analog and digital. One way would be to have the i815 XFree driver explicitly disable the extended timing registers, since the XFree framework doesn't provide a good way of separating analog and digital timing anyway. OTOH, it seems to be the fact that the driver _doesn't_ touch the digital timing that makes it possible for many people to get a TV-out display under X11 at all, since these registers will most probably have a "good" (i.e. compatible with the TV encoder settings) set of values left there by BIOS initialization. This will also (partly) break any tools that depends on X11 (or anyone else) not messing around with those registers, which seems to be the way TV-out utilities currently work. What a mess... :-) -- Christer Palm _______________________________________________ Xpert mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/xpert
