Re: [PATCH v2 31/32] auxdisplay: charlcd: Do not print chars at end of line

From: Lars Poeschel
Date: Tue Sep 22 2020 - 05:44:35 EST


On Tue, Sep 22, 2020 at 07:27:01AM +0200, Willy Tarreau wrote:
> On Mon, Sep 21, 2020 at 04:46:43PM +0200, poeschel@xxxxxxxxxxx wrote:
> > From: Lars Poeschel <poeschel@xxxxxxxxxxx>
> >
> > Skip printing characters at the end of a display line. This fits to the
> > behaviour we already had, that the cursor is nailed to last position of
> > a line.
>
> Just very old memories, but wasn't this used with the ability to shift
> the display ? IIRC the HD44780 has a 2x64 chars buffer and you can make
> the buffered characters appear when you shift the display. That's akin
> to seeing the display as an adjustable window over the buffer. I don't
> remember having used that feature, so if it didn't previously work, please
> disregard my comment, I just want to be sure we don't break a feature
> others might be relying on.

Yes, indeed. But this is a point, where this was inconsistent. The
feature you described worked only for displays with 2 lines or less. On
displays with 4 lines there simply is no buffer that is not visible and
in this case it sticks to the end of the line already.
To make this work for all displays this would require a whole lot of
work. We would need a fallback implementation that emulates this in
software and then redraws the whole display from that software
(linux-side) buffer when shifting.

Currently my patchset cuts this feature for displays with one or two
lines. I don't see clean an easy way to leave that in. Any ideas ?

Regards,
Lars