On 1999/Oct/22, Niklas H�glund wrote:
> > > I think there is an easy solution for the first thing. Why don't you
> > > share a flag variable between the kernel and the process, that becomes 1 at
> > > the vertical retrace and 0 when it finishes? It would be for programmers
> > > even more efficient than reading from the IO port directly (which is
> > > impossible under Linux, obviously). It could be managed in a similar way
> > > than the graphics context, couldn't it?
> >
> > I think that putting this flag in the context map is the way to
> > go. The flag can be quickly toggled by the interrupt handler, and nothing
> > else is necessary. This doesn't get around the scheduling Hz problem, but
> > that is a separate issue anyway, and needs to be fixed for a lot more than
> > just GGI.
>
> It'd be even better to increase a value every vblank so applications
> can find out if it has missed any frames, and also to make sure
> applications don't redraw more than once per frame.
I'm not agree, applications doesn't have to use the same refresh
than the monitor. Your monitor can be refreshing at 100 Hz, and 50 frames
per second is more than enough to see an animation smooth.
And if you do this, some people would synchronize the applications
in infinite loops testing this number, instead of using alarms (the right
method, IMHO).
Other reason is that a flag is tested much faster than a number (at
least on intel).
I think that the number isn't needed at all, your alarm system
should figure out when a frame is losed (GGL does this way the frame
skipping), and It may not worry about real card->monitor frames.
--
_
/_) \/ / / email: mailto:[EMAIL PROTECTED]
/ \ / (_/ www : http://programacion.mundivia.es/ryu
[ GGL developer ] & [ IRCore developer ] & [ GPUL member ]