# # $Id: README.Drivers,v 1.4 2001/03/09 13:08:11 ltoetsch Exp $ # How to write new display drivers for lcd4linux If you plan to write a new display driver for lcd4linux, you should follow this guidelines: * use Skeleton.c as a start point. You might also have a look at Text.c * create a new sourcefile .c and add it to the bottom of Makefile.am * add an entry to configure.in * there's no need for a .h * create one (or more) unique display names (your driver will be selected by this name in the 'Display'-line of lcd4linux.conf). * include "display.h" in your driver, to get the LCD structure and various BAR_ definitions * include "cfg.h" if you need to access settings in the config file. * create a LCD table at the bottom of your driver, and fill it with the appropriate values. Take care that you specify the correct bar capabilities of your display or driver: BAR_L: horizontal bars headed left BAR_R: horizontal bars headed right BAR_H2: driver supports horizontal dual-bars BAR_U: vertical bars bottom-up BAR_D: vertical bars top-down BAR_V2: driver supports vertical dual-bars * edit display.c and create a reference to your LCD table: external LCD YourDriver[]; * extend the FAMILY table in display.c with your driver: FAMILY Driver[] = { { "Skeleton", Skeleton }, { "MatrixOrbital", MatrixOrbital }, { "YourFamily", YourDriver }, { "" } }; * write the correspondig init(), clear(), put(), bar(), quit() and flush()-functions. There's no need to use a framebuffer and display its contents with the flush()- call (as in MatrixOrbital.c), you can directly write to the display in the put()- and bar()-functions, and use an empty flush()-function. But if you have a limited number of user-defined characters, and therefore you have to do some sort of 'character reduction' or similar stuff, you will have to use a framebuffer and the flush()-call. ion>
AgeCommit message (Expand)AuthorFilesLines
2007-06-17buttons for X11 driver (thanks to Volker Gering)michael1-8/+49
2007-06-17Apple has no utsbuf.domainname (thanks to Volker Gering)michael1-1/+1
2007-06-17strndup() replacementmichael1-0/+24
2007-06-17better usage output by Volker Geringmichael1-4/+20
2007-06-08Image driver libgd dependancy fixmichael5-6/+31
2007-06-04big MPD patch from Robert Buchholzmichael1-79/+86
2007-05-19gps plugin, code by michu / www.neophob.commichael7-0/+580
2007-05-17compile error on m68k fixed (debian bug 405898)michael3-10/+170
2007-05-04typo in LUIse driver fixedmichael1-1/+1
2007-05-02some compiler warnings fixedmichael6-8/+14
2007-04-30LCD4Linux-0.10.1-RC2michael1-1/+1
2007-04-30ChangeLog updatedmichael1-1782/+3099
2007-04-30svn2cl moved and optimizedmichael1-6/+0