Re: [Lcd-linux] Introducing the LCD-Linux project
Brought to you by:
mjona
From: Mattia Jona-L. <mat...@gm...> - 2010-07-28 19:24:39
|
On Mon, Jul 26, 2010 at 10:11 PM, Geert Uytterhoeven <ge...@li...> wrote: > On Sat, Jul 24, 2010 at 16:43, Florian Tobias Schandinat > <Flo...@gm...> wrote: >> Mattia Jona-Lasinio <mattia.jona <at> gmail.com> writes: >>> Moreover I wanted something that COULD be used as a console but not >>> necessarily, that is >>> something that could run happily in the presence of a normal monitor >>> as well. It seems to me, but I may be >>> wrong, that through the standard console system only the current >>> visible console is actually updated >>> while other consoles are just "software" updated. An external LCD >>> would therefore be updated >>> only when you "switch" to it, so it would not be possible to use it to >>> display diagnostics. >> >> True, that's a general problem one has when multiple framebuffers exist. >> Therefore I'd be very happy if someone could come up with a general solution. > > Fixing that was (one of the) goal of the linux-console project. James? Hmmm, the linux-console project seems to be dead. There are no file releases after nearly ten years and the CVS is three years old. I downloaded your driver and explored the code a bit. Indeed there are many similarities with the very early stages of LCD-Linux. At the beginning I also wrote something very close to what you did. But then I realized that the display management part was very much intertwined with the low level details of the display (parallel port, 8 bit and 4 bit and so on....), and this made the module not so obvious to be ported to different displays. If you abstract the display management, add a framebuffer, you realize that basically you get a terminal emulator (nearly) for free, with the possibility to add custom features typical of small displays (like custom character generation). And once a framebuffer is added, you can play a bit by adding a virtual display larger than the physical one, also adding the code to keep the cursor visible in a smart way. Basically this is the way LCD-Linux was born. Implementing this in the standard Linux terminal emulation would require a rewrite of most of the code, which I personally would do only if there is some interest from the community in improving the standard Linux console, and I don't think it is the case looking at the age of the Linux console project. So I decided to keep it separate. But never say never! In the future the two consoles could merge in a single one. ;) Greetings, Mattia |