Index: i810_driver.c
===================================================================
RCS file: /home/eich/cvs/xc/programs/Xserver/hw/xfree86/drivers/i810/i810_driver.c,v
retrieving revision 1.1.1.45
diff -u -r1.1.1.45 i810_driver.c
--- i810_driver.c 8 Sep 2003 09:33:50 -0000 1.1.1.45
+++ i810_driver.c 12 Sep 2003 07:30:18 -0000
@@ -1350,13 +1350,19 @@
/* Setting the OVRACT Register for video overlay */
{
CARD32 LCD_TV_Control = INREG(LCD_TV_C);
+ CARD32 TV_HTotal = INREG(LCD_TV_HTOTAL);
+ CARD32 ActiveStart, ActiveEnd;
- if(!(LCD_TV_Control & LCD_TV_ENABLE)
- || (LCD_TV_Control & LCD_TV_VGAMOD)) {
- OUTREG(LCD_TV_OVRACT,
- (i810Reg->OverlayActiveEnd << 16)
- | i810Reg->OverlayActiveStart);
- }
+ ActiveStart = ((TV_HTotal >> 16) & 0xfff) - 31;
+ ActiveEnd = (TV_HTotal & 0x3ff) - 31;
+ ErrorF("I810 OVRACT: TV: %s VGA: %s HTot: %u AcStart: %u AcEnd: %u"
+ "VGAOvrS: %u VGAOvrE: %u\n"
+ , LCD_TV_Control & LCD_TV_ENABLE ? "yes" : "no",
+ LCD_TV_Control & LCD_TV_VGAMOD ? "yes" : "no",
+ TV_HTotal, ActiveStart, ActiveEnd, i810Reg->OverlayActiveStart,i810Reg->OverlayActiveEnd);
+
+ OUTREG(LCD_TV_OVRACT,
+ (ActiveEnd << 16) | ActiveStart);
}
/* Turn on DRAM Refresh */
@@ -2161,6 +2167,7 @@
I810Ptr pI810 = I810PTR(pScrn);
vgaHWPtr hwp = VGAHWPTR(pScrn);
int Base;
+
#if 1
if (pI810->showCache) {
int lastline = pI810->FbMapSize / |