Re: [patch] vesafb panning: scrollback support and nice speedup

Ulf Carlsson (grim@zigzegv.ml.org)
Fri, 7 Aug 1998 13:31:39 +0200 (CEST)


> + if (screen_info.pages < 2)
> + ywrap = ypan = 0; /* need at least two screen pages */

Why do we need atleast to pages? Anyway, this line doesn't work. Do something
like:
if (video_size / video_linelength == video_height)
ywrap = ypan = 0;

> + if (ypan) {
> + printk("vesafb: scrolling: ypan using protected mode interface\n");
> + vesafb_defined.yres_virtual = video_height * screen_info.pages;
> + } else if (ywrap) {
> + printk("vesafb: scrolling: ywrap using protected mode interface\n");
> +#if 0
> + vesafb_defined.yres_virtual = video_height * screen_info.pages; /* available pages */
> +#else
> + vesafb_defined.yres_virtual = video_size / video_linelength; /* whole video memory */
> +#endif
> + } else {
> + printk("vesafb: scrolling: redraw\n");
> + }

Ok, almost the same as before, in ypan, set vesafb_defined.yres_virtual to
video_size / video_linelength, and it works better, here atleast.

Something has to be done with those memcopies when we reach the end of memory. I
think a redraw would speed up everything a lot.

- Ulf

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html