# # $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. ue='range'>range
AgeCommit message (Expand)AuthorFilesLines
2004-01-18[lcd4linux @ 2004-01-18 09:01:45 by reinelt]reinelt5-61/+220
2004-01-18[lcd4linux @ 2004-01-18 06:54:08 by reinelt]reinelt4-27/+76
2004-01-16[lcd4linux @ 2004-01-16 11:12:26 by reinelt]reinelt4-49/+128
2004-01-16[lcd4linux @ 2004-01-16 10:09:49 by mkeil]mkeil1-12/+29
2004-01-16[lcd4linux @ 2004-01-16 07:26:25 by reinelt]reinelt5-196/+146
2004-01-16[lcd4linux @ 2004-01-16 05:04:53 by reinelt]reinelt10-32/+326
2004-01-15[lcd4linux @ 2004-01-15 07:47:02 by reinelt]reinelt7-100/+210
2004-01-15[lcd4linux @ 2004-01-15 04:32:14 by reinelt]reinelt1-0/+101
2004-01-15[lcd4linux @ 2004-01-15 04:29:45 by reinelt]reinelt10-335/+719
2004-01-14[lcd4linux @ 2004-01-14 11:33:00 by reinelt]reinelt15-160/+607
2004-01-13[lcd4linux @ 2004-01-13 10:03:01 by reinelt]reinelt8-23/+458
2004-01-13[lcd4linux @ 2004-01-13 08:18:07 by reinelt]reinelt12-154/+469
2004-01-12[lcd4linux @ 2004-01-12 03:51:01 by reinelt]reinelt5-15/+44
2004-01-11[lcd4linux @ 2004-01-11 18:26:02 by reinelt]reinelt10-79/+158
2004-01-11[lcd4linux @ 2004-01-11 09:26:15 by reinelt]reinelt4-19/+67
2004-01-10[lcd4linux @ 2004-01-10 20:22:33 by reinelt]reinelt13-210/+554
2004-01-10[lcd4linux @ 2004-01-10 17:45:26 by reinelt]reinelt2-5/+15
2004-01-10[lcd4linux @ 2004-01-10 17:36:56 by reinelt]reinelt4-10/+207
2004-01-10[lcd4linux @ 2004-01-10 17:34:40 by reinelt]reinelt3-176/+138
2004-01-10[lcd4linux @ 2004-01-10 10:20:22 by reinelt]reinelt2-14/+605
2004-01-09[lcd4linux @ 2004-01-09 17:03:06 by reinelt]reinelt10-51/+420
2004-01-09[lcd4linux @ 2004-01-09 04:16:06 by reinelt]reinelt28-193/+332
2004-01-08[lcd4linux @ 2004-01-08 06:00:28 by reinelt]reinelt1-8/+14
2004-01-08[lcd4linux @ 2004-01-08 05:28:12 by reinelt]reinelt3-42/+198
2004-01-07[lcd4linux @ 2004-01-07 10:15:41 by reinelt]reinelt4-184/+436
2004-01-06[lcd4linux @ 2004-01-06 23:01:37 by reinelt]reinelt3-4/+7
2004-01-06[lcd4linux @ 2004-01-06 22:33:13 by reinelt]reinelt14-472/+542
2004-01-06[lcd4linux @ 2004-01-06 21:14:51 by reinelt]reinelt4-14/+7
2004-01-06[lcd4linux @ 2004-01-06 18:22:41 by reinelt]reinelt1-3/+13
2004-01-06[lcd4linux @ 2004-01-06 17:56:43 by reinelt]reinelt3-1000/+2045
2004-01-06[lcd4linux @ 2004-01-06 17:37:00 by reinelt]reinelt1-0/+20
2004-01-06[lcd4linux @ 2004-01-06 17:33:45 by reinelt]reinelt6-28/+298
2004-01-06[lcd4linux @ 2004-01-06 15:19:12 by reinelt]reinelt2-104/+136
2004-01-05[lcd4linux @ 2004-01-05 11:57:38 by reinelt]reinelt7-8/+168
2004-01-02[lcd4linux @ 2004-01-02 14:20:15 by reinelt]reinelt10-0/+201
2004-01-02[lcd4linux @ 2004-01-02 14:18:54 by reinelt]reinelt2-0/+101
2003-12-19[lcd4linux @ 2003-12-19 06:27:33 by reinelt]reinelt4-8/+119