Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 5 Nov 1999 09:19:29 +0100 (CET)
From:      Soren Schmidt <sos@freebsd.dk>
To:        hasty@rah.star-gate.com (Amancio Hasty)
Cc:        doconnor@gsoft.com.au (Daniel O'Connor), current@FreeBSD.ORG, yokota@zodiac.mech.utsunomiya-u.ac.jp (Kazutaka YOKOTA), mike@smith.net.au (Mike Smith)
Subject:   Re: vga driver and signal
Message-ID:  <199911050819.JAA70396@freebsd.dk>
In-Reply-To: <199911050744.XAA52807@rah.star-gate.com> from Amancio Hasty at "Nov 4, 1999 11:44:51 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
It seems Amancio Hasty wrote:
> > Lets step back for a moment, this is clearly the wrong solution to
> > everything, what exactly is it you want to do or want to accomplish??
> > Lets see if we can come up with another way of doing that...
> 
> Okay,
> 
> The problem that the XFree86 group is trying to solve is that
> when a user moves an opaque window it gets little tearings 
> along the edges because the repaint of the window came in
> in the middle of a vertical retrace also moving the window
> is not that smooth. Apparently, the Accel-x folks have solved
> this problem because according to some their X server
> does not have any problems in moving opaque windows.
> As Kevin Day, just posted this problem has other applications
> for instance dedicated video players .

Hmm, there will always be problems here I'd say, there is no way
you can copy an entire window in just one blank period. BTW I
dont see any problems here with my ATI cards, movement is nice
an smooth, no visible artifacts, but it might just be because
my HW is sufficiently fast for the task. I'm not sure I've seen
this problem since the old 486/ET4000 days where updates where
painfully slow given todays standards. Is this problem seen on
lots of HW, or is it just to cope with some specific boards ??

One possible solution could be to copy the changes to some off screen 
location in the video memory, then have the card do the copy when the 
blank period starts, that way we only need a little KLD that can do 
the copy on a given card.  For other cards it might be from memory
to the card, but crossing the usr/kernel barrier will be a problem
to solve (latency & | speed wise).
You will need a different KLD for every card you support (or one huge one).

The problem is that it is probably not possible to copy the entire
window in one blank period, so it will have to be able to break up
those requests, and shedule them over a number of blank periods, that
again will make it painfully slow, and probably look much worse than
the current approach.

> One solution that the XFree86 folks are trying is to sync up 
> the mouse  interrupts to the refresh rate. 
> Mark Vojkovich <mvojkovich@varesearch.com> has reported
> good success with this approach however the problem is that
> we can not arbritraly set the mouse interrupt rate like we can 
> with a vga card.

Hmm I dont think this will fly, there are too many unknown latensies
and delays in this senario for it to be functional on any resonable set 
of hardware options.

Is all this just because some of the new video HW are crappy, ie that
they produce snow/flicker/whatever (like in the old CGA days) or is
this a genuine problem, as I said above I've never seen any problems
on my ATI cards, and my laptop doesn't have this either (neomagic)..

-Søren


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199911050819.JAA70396>