On 2/19/13 11:57 AM, Phileas Fogg wrote:
Oleksandr Tymoshenko wrote:
On 2/16/2013 5:20 AM, Phileas Fogg wrote:
Hi,
i have a question about how the scrolling in a framebuffer syscons
works.
I'm trying to speed up the syscons on the PS3 console which is a
simple
framebuffer syscons.
It uses the renderer _gfbrndrsw_ (see dev/syscons/scgfbrndr.c) to
draw into
the framebuffer of the PS3 console.
The _gfb_draw_ function implements a simple scrolling that moves
data from
bottom to top with _vidd_copy_.
And that's where i have a problem because _vidd_copy_ calls the
function
_ps3fb_copy_ (see powerpc/ps3/ps3_syscons.c).
But the function _ps3fb_copy_ is NOT implemented yet. So, the
question is how
does the scrolling work then ?
I took a look at other syscons implementation based on a
framebuffer, and
almost all of them do NOT implement _vidd_copy_
function, e.g. XBOX syscons.
I think driver re-renders whole screen character by character.
That's why no
copy operation is invoked.
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to
"[email protected]"
You are right, syscons is using the teken terminal emulator which
implements scrolling in software. The vidd_copy callback is never
called. To optimize the PS3 syscons driver, i have to speed up
vidd_puts and vidd_putc callbacks.
not sure if it's relevent, but remember that updating the screen mor
ethan 50 times a second is pointless.
I'm not sure if the curent video console does it but having the final
copy only done on 50Hz ticks can save a lot of copying.
regards
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to
"[email protected]"
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[email protected]"