[maemo-developers] [maemo-developers] SDL, Re: SDL vertical blank (vbl) sync.

From: Frantisek Dufka dufkaf at seznam.cz
Date: Wed May 31 12:08:40 EEST 2006
Tapani Pälli wrote:

> Hmm let's see if we could come up with a nice solution with discussion.
> Direct access to fb would mean permission problems. But there could be
> another fb with different permissions (?) ... Maybe at first the tearing
> should be solved at driver level so that client can request the flush.

Yes permissions are the problem. I didn't think about that. But on the
other way I don't think user can do more damage with using fb directly
over using X with extensions and this is personal device anyway so maybe
fb permissions may be relaxed a bit. But maybe not. My reasons to use fb
was to be near the hardware so other layers do not interfere too much
and it may be also less work to add such functionality. But true there
is also a problem with overlapping regions as SDL over fb would
overwrite screen. Which is not so bad too, this is how video overlays
look on PC in linux and windows too. But maybe X is better after all if
proper extensions can be easily added. Bonus would be that they could be
used also in non-SDL pure X (or mixed GTK/X) apps.

> There was some discussion also that
> windowmanager could handle the global enabling and disabling of scaler,
> but individual rects sounds very nice indeed.

Yes, the kernel seems to work like this and even remembers last mode and
does not initialize different mode if last was the same so there should
be no extra overhead with this, but I'm not sure how this is usable from
userspace. Well anyway the X extension should allow setting it per each
update and SDL could use it to implement virtual half resolution modes
so there is no need to mess with this in SDL. But maybe it may remain as
an option for games with main area that changes often (in low
resolution) and nice hight resolution border area around. So both
solutions could exist, either SDL could handle virtual resolution by
itself or you could use real 800x480 and set pixel doubling mode for the
updates. But you probably already know all this, the biggest problem is
time and priorities :-)

Frantisek




More information about the maemo-developers mailing list