Package: xserver-xfree86 Version: 4.3.0-0pre1v3 Severity: normal Tags: patch
Hello, (before you began to bitch about the Version: above, realize that the problem affects any other version before) I have a problem with my Geforce 420go card (aka NV17). In full-screen mode using XVideo (mplayer, xine, you know...) I see stripes. It happens always when the overlay picture takes almost the whole screen width and it start point lies on pixel X=0. I discussed it with the current nv driver maintainer and found out that he already knows about this problem with Nvidia's DFP output and he has fixed it in CVS some weeks ago (you will find this modifications extracted in the patch below). But some time ago he rewrote some parts completely so the new code is not easily to port. With the attached patch, the problem is solved for me[tm] and maybe for many other people. |Date: Wed, 15 Oct 2003 12:38:19 -0400 (EDT) |From: Mark Vojkovich <[EMAIL PROTECTED]> |Subject: Re: Stripes in wide/Full-Screen mode (nv_drv, XVideo) |To: Eduard Bloch <[EMAIL PROTECTED]> | | | Look at the second link I sent you. I backed that one He meants the rewrite, http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/drivers/nv/nv_dac.c.diff?r1=1.36&r2=1.37 |out and applied a different one which was used on all chips. |Subtracting two from horizStart is prefered to adding two |to horizTotal, but both should work on all chips. | | Mark. | |On Wed, 15 Oct 2003, Eduard Bloch wrote: | |> #include <hallo.h> |> * Mark Vojkovich [Tue, Oct 14 2003, 01:53:55PM]: |> > |> > This is a bandwidth issue. How recent of CVS do you have? I |> > think this should have been fixed as of about 5 weeks ago. |> > I initially applied a fix for GeForceFX: |> > |> > http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/drivers/nv/nv_dac.c.diff?r1=1.35&r2=1.36 |> |> Just for interest: in this modification you increased horizTotal for |> NV_ARCH_30 only. Would it break something on other chipsets if |> horizTotal is always increased by two for any FlatPanel? |> |> --- nv_dac.c |> +++ nv_dac.c |> @@ -86,6 +86,7 @@ |> horizStart = horizTotal - 3; |> horizEnd = horizTotal - 2; |> horizBlankEnd = horizTotal + 4; |> + horizTotal += 2; |> } |> |> I ask so because the Debian maintainer still didn't release final |> 4.3.0 series packages but ports small fixes from the CVS three. Since we |> are going to release the next Debian distribution relatively soon, I |> would be a shame not to have this problem fixed in Debian Stable. |> |> MfG, |> Eduard. |> -- |> Es ist schwer, die zu lieben, die wir nicht achten, aber nicht weniger -- Package-specific info: 01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 420 Go] (rev a3) 01:00.0 Class 0300: 10de:0175 (rev a3) -- System Information: Debian Release: testing/unstable Architecture: i386 Kernel: Linux debian 2.4.23-pre2 #1 Mi Sep 3 16:09:39 CEST 2003 i686 Locale: LANG=C, LC_CTYPE=C Versions of packages xserver-xfree86 depends on: ii debconf 1.3.15 Debian configuration management sy hi libc6 2.3.2-8 GNU C Library: Shared libraries an ii xserver-common 4.3.0-0pre1v1 files and utilities common to all ii zlib1g 1:1.1.4-15 compression library - runtime -- debconf information excluded -- Die Großmut ist durch ihren Namen hinlänglich bezeichnet; gleichwohl könnte man sagen, sie sei der Scharfsinn des Stolzes und das edelste Mittel, bewundert zu werden. -- François de La Rochefoucauld
$Id: nv_overlay_stripes.diff 535 2003-09-16 18:28:31Z blade $ The patch fixes stripes in Fullscreen mode on FlatPanels using Xvideo. It has been fixed this way in CVS few weeks ago but now the code was completely rewritten and cannot be backported easily. This patch however fixes the problem and should not cause any harm on other chipsets. --- xc/programs/Xserver/hw/xfree86/drivers/nv/nv_dac.c 2003-10-15 19:37:05.000000000 +0200 +++ xc/programs/Xserver/hw/xfree86/drivers/nv/nv_dac.c 2003-01-02 21:44:56.000000000 +0100 @@ -75,7 +75,6 @@ horizStart = horizTotal - 3; horizEnd = horizTotal - 2; horizBlankEnd = horizTotal + 4; + horizTotal += 2; } pVga->CRTC[0x0] = Set8Bits(horizTotal);