From a7b8a9668d0f570da0d30f2f09a2f620082071c2 Mon Sep 17 00:00:00 2001 From: reinelt <> Date: Fri, 4 Nov 2005 04:44:52 +0000 Subject: [lcd4linux @ 2005-11-04 04:44:52 by reinelt] LPH7508 driver (not yet finished) --- Makefile.am | 1 + Makefile.in | 14 +++++------ config.h.in | 3 +++ configure | 53 ++++++++++++++++++++++++++++------------- drivers.m4 | 19 +++++++++++---- drv.c | 9 ++++++- drv_Image.c | 11 +++++---- lcd4linux.conf.sample | 66 +++++++++++++++++++++++++++++++-------------------- 8 files changed, 118 insertions(+), 58 deletions(-) diff --git a/Makefile.am b/Makefile.am index d26780c..5ddf73e 100644 --- a/Makefile.am +++ b/Makefile.am @@ -60,6 +60,7 @@ drv_Image.c \ drv_LCDLinux.c \ drv_LCDLinux.h \ drv_LCDTerm.c \ +drv_LPH7508.c \ drv_M50530.c \ drv_MatrixOrbital.c \ drv_MilfordInstruments.c \ diff --git a/Makefile.in b/Makefile.in index a038cbd..5cdaf4f 100644 --- a/Makefile.in +++ b/Makefile.in @@ -104,7 +104,7 @@ lcd4linux_DEPENDENCIES = @DRIVERS@ @PLUGINS@ lcd4linux_SOURCES = lcd4linux.c cfg.c cfg.h debug.c debug.h drv.c drv.h evaluator.c evaluator.h hash.c hash.h layout.c layout.h pid.c pid.h timer.c timer.h thread.c thread.h udelay.c udelay.h qprintf.c qprintf.h widget.c widget.h widget_text.c widget_text.h widget_bar.c widget_bar.h widget_icon.c widget_icon.h plugin.c plugin.h plugin_cfg.c plugin_math.c plugin_string.c plugin_test.c plugin_time.c -EXTRA_lcd4linux_SOURCES = drv_generic_text.c drv_generic_text.h drv_generic_graphic.c drv_generic_graphic.h drv_generic_serial.c drv_generic_serial.h drv_generic_parport.c drv_generic_parport.h drv_generic_i2c.c drv_generic_i2c.h drv_BeckmannEgle.c drv_BWCT.c drv_Crystalfontz.c drv_Curses.c drv_Cwlinux.c drv_HD44780.c drv_Image.c drv_LCDLinux.c drv_LCDLinux.h drv_LCDTerm.c drv_M50530.c drv_MatrixOrbital.c drv_MilfordInstruments.c drv_Noritake.c drv_NULL.c drv_RouterBoard.c drv_serdisplib.c drv_SimpleLCD.c drv_T6963.c drv_Trefon.c drv_USBLCD.c drv_WincorNixdorf.c drv_X11.c font_6x8.h lcd4linux_i2c.h plugin_apm.c plugin_cpuinfo.c plugin_diskstats.c plugin_dvb.c plugin_exec.c plugin_i2c_sensors.c plugin_imon.c plugin_isdn.c plugin_loadavg.c plugin_meminfo.c plugin_mysql.c plugin_netdev.c plugin_pop3.c plugin_ppp.c plugin_proc_stat.c plugin_python.c plugin_seti.c plugin_statfs.c plugin_uname.c plugin_uptime.c plugin_wireless.c plugin_xmms.c +EXTRA_lcd4linux_SOURCES = drv_generic_text.c drv_generic_text.h drv_generic_graphic.c drv_generic_graphic.h drv_generic_serial.c drv_generic_serial.h drv_generic_parport.c drv_generic_parport.h drv_generic_i2c.c drv_generic_i2c.h drv_BeckmannEgle.c drv_BWCT.c drv_Crystalfontz.c drv_Curses.c drv_Cwlinux.c drv_HD44780.c drv_Image.c drv_LCDLinux.c drv_LCDLinux.h drv_LCDTerm.c drv_LPH7508.c drv_M50530.c drv_MatrixOrbital.c drv_MilfordInstruments.c drv_Noritake.c drv_NULL.c drv_RouterBoard.c drv_serdisplib.c drv_SimpleLCD.c drv_T6963.c drv_Trefon.c drv_USBLCD.c drv_WincorNixdorf.c drv_X11.c font_6x8.h lcd4linux_i2c.h plugin_apm.c plugin_cpuinfo.c plugin_diskstats.c plugin_dvb.c plugin_exec.c plugin_i2c_sensors.c plugin_imon.c plugin_isdn.c plugin_loadavg.c plugin_meminfo.c plugin_mysql.c plugin_netdev.c plugin_pop3.c plugin_ppp.c plugin_proc_stat.c plugin_python.c plugin_seti.c plugin_statfs.c plugin_uname.c plugin_uptime.c plugin_wireless.c plugin_xmms.c EXTRA_DIST = lcd4linux.conf.sample lcd4kde.conf lcd4linux.kdelnk lcd4linux.xpm lcd4linux.lsm curses.m4 AUTHORS CREDITS FAQ NEWS TODO README README.Drivers README.Plugins README.KDE plugin_sample.c @@ -144,12 +144,12 @@ GZIP_ENV = --best DEP_FILES = .deps/cfg.P .deps/debug.P .deps/drv.P .deps/drv_BWCT.P \ .deps/drv_BeckmannEgle.P .deps/drv_Crystalfontz.P .deps/drv_Curses.P \ .deps/drv_Cwlinux.P .deps/drv_HD44780.P .deps/drv_Image.P \ -.deps/drv_LCDLinux.P .deps/drv_LCDTerm.P .deps/drv_M50530.P \ -.deps/drv_MatrixOrbital.P .deps/drv_MilfordInstruments.P \ -.deps/drv_NULL.P .deps/drv_Noritake.P .deps/drv_RouterBoard.P \ -.deps/drv_SimpleLCD.P .deps/drv_T6963.P .deps/drv_Trefon.P \ -.deps/drv_USBLCD.P .deps/drv_WincorNixdorf.P .deps/drv_X11.P \ -.deps/drv_generic_graphic.P .deps/drv_generic_i2c.P \ +.deps/drv_LCDLinux.P .deps/drv_LCDTerm.P .deps/drv_LPH7508.P \ +.deps/drv_M50530.P .deps/drv_MatrixOrbital.P \ +.deps/drv_MilfordInstruments.P .deps/drv_NULL.P .deps/drv_Noritake.P \ +.deps/drv_RouterBoard.P .deps/drv_SimpleLCD.P .deps/drv_T6963.P \ +.deps/drv_Trefon.P .deps/drv_USBLCD.P .deps/drv_WincorNixdorf.P \ +.deps/drv_X11.P .deps/drv_generic_graphic.P .deps/drv_generic_i2c.P \ .deps/drv_generic_parport.P .deps/drv_generic_serial.P \ .deps/drv_generic_text.P .deps/drv_serdisplib.P .deps/evaluator.P \ .deps/hash.P .deps/layout.P .deps/lcd4linux.P .deps/pid.P \ diff --git a/config.h.in b/config.h.in index 580654e..36fae5b 100644 --- a/config.h.in +++ b/config.h.in @@ -365,6 +365,9 @@ /* LCDTerm driver */ #undef WITH_LCDTERM +/* LPH7508 driver */ +#undef WITH_LPH7508 + /* M50530 driver */ #undef WITH_M50530 diff --git a/configure b/configure index ffc51eb..b3f4344 100755 --- a/configure +++ b/configure @@ -869,10 +869,10 @@ Optional Packages: (try 'all,\!' if your shell complains...) possible drivers are: BeckmannEgle, BWCT, CrystalFontz, Curses, Cwlinux, - HD44780, LCDLinux, LCDTerm, M50530, MatrixOrbital, - MilfordInstruments, Noritake, NULL, PNG, PPM, - RouterBoard, serdisplib, SimpleLCD, T6963, Trefon, - USBLCD, WincorNixdorf, X11 + HD44780, LCDLinux, LCDTerm, LPH7508, M50530, + MatrixOrbital, MilfordInstruments, Noritake, NULL, + PNG, PPM, RouterBoard, serdisplib, SimpleLCD, T6963, + Trefon, USBLCD, WincorNixdorf, X11 --with-plugins= choose which plugins to compile. type --with-plugins=list for a list of avaible plugins @@ -6039,6 +6039,7 @@ for driver in $drivers; do HD44780="yes" LCDLINUX="yes" LCDTERM="yes" + LPH7508="yes" M50530="yes" MATRIXORBITAL="yes" MILINST="yes" @@ -6079,6 +6080,9 @@ for driver in $drivers; do LCDTerm) LCDTERM=$val ;; + LPH7508) + LPH7508=$val + ;; M50530) M50530=$val ;; @@ -6251,6 +6255,17 @@ _ACEOF fi +if test "$LPH7508" = "yes"; then + GRAPHICS="yes" + PARPORT="yes" + DRIVERS="$DRIVERS drv_LPH7508.o" + +cat >>confdefs.h <<\_ACEOF +#define WITH_LPH7508 1 +_ACEOF + +fi + if test "$M50530" = "yes"; then TEXT="yes" PARPORT="yes" @@ -9491,18 +9506,24 @@ else ac_cv_func_fork_works=cross else cat >conftest.$ac_ext <<_ACEOF -/* By Ruediger Kuhlmann. */ - #include - #if HAVE_UNISTD_H - # include - #endif - /* Some systems only have a dummy stub for fork() */ - int main () - { - if (fork() < 0) - exit (1); - exit (0); - } +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ + + /* By Ruediger Kuhlmann. */ + if (fork() < 0) + exit (1); + exit (0); + + ; + return 0; +} _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 diff --git a/drivers.m4 b/drivers.m4 index a3330fb..a5ec90e 100644 --- a/drivers.m4 +++ b/drivers.m4 @@ -29,10 +29,10 @@ AC_ARG_WITH( [ (try 'all,\!' if your shell complains...)] [ possible drivers are:] [ BeckmannEgle, BWCT, CrystalFontz, Curses, Cwlinux,] - [ HD44780, LCDLinux, LCDTerm, M50530, MatrixOrbital,] - [ MilfordInstruments, Noritake, NULL, PNG, PPM,] - [ RouterBoard, serdisplib, SimpleLCD, T6963, Trefon,] - [ USBLCD, WincorNixdorf, X11], + [ HD44780, LCDLinux, LCDTerm, LPH7508, M50530,] + [ MatrixOrbital, MilfordInstruments, Noritake, NULL,] + [ PNG, PPM, RouterBoard, serdisplib, SimpleLCD, T6963,] + [ Trefon, USBLCD, WincorNixdorf, X11], drivers=$withval, drivers=all ) @@ -61,6 +61,7 @@ for driver in $drivers; do HD44780="yes" LCDLINUX="yes" LCDTERM="yes" + LPH7508="yes" M50530="yes" MATRIXORBITAL="yes" MILINST="yes" @@ -101,6 +102,9 @@ for driver in $drivers; do LCDTerm) LCDTERM=$val ;; + LPH7508) + LPH7508=$val + ;; M50530) M50530=$val ;; @@ -235,6 +239,13 @@ if test "$LCDTERM" = "yes"; then AC_DEFINE(WITH_LCDTERM,1,[LCDTerm driver]) fi +if test "$LPH7508" = "yes"; then + GRAPHICS="yes" + PARPORT="yes" + DRIVERS="$DRIVERS drv_LPH7508.o" + AC_DEFINE(WITH_LPH7508,1,[LPH7508 driver]) +fi + if test "$M50530" = "yes"; then TEXT="yes" PARPORT="yes" diff --git a/drv.c b/drv.c index 99430f2..b461f9e 100644 --- a/drv.c +++ b/drv.c @@ -1,4 +1,4 @@ -/* $Id: drv.c,v 1.33 2005/08/22 05:44:43 reinelt Exp $ +/* $Id: drv.c,v 1.34 2005/11/04 04:44:52 reinelt Exp $ * * new framework for display drivers * @@ -23,6 +23,9 @@ * * * $Log: drv.c,v $ + * Revision 1.34 2005/11/04 04:44:52 reinelt + * LPH7508 driver (not yet finished) + * * Revision 1.33 2005/08/22 05:44:43 reinelt * new driver 'WincorNixdorf' * some fixes to the bar code @@ -210,6 +213,7 @@ extern DRIVER drv_HD44780; extern DRIVER drv_Image; extern DRIVER drv_LCDLinux; extern DRIVER drv_LCDTerm; +extern DRIVER drv_LPH7508; extern DRIVER drv_M50530; extern DRIVER drv_MatrixOrbital; extern DRIVER drv_MilfordInstruments; @@ -258,6 +262,9 @@ DRIVER *Driver[] = { #ifdef WITH_LCDTERM &drv_LCDTerm, #endif +#ifdef WITH_LPH7508 + &drv_LPH7508, +#endif #ifdef WITH_M50530 &drv_M50530, #endif diff --git a/drv_Image.c b/drv_Image.c index de4e3e7..5066dcd 100644 --- a/drv_Image.c +++ b/drv_Image.c @@ -1,4 +1,4 @@ -/* $Id: drv_Image.c,v 1.12 2005/05/08 04:32:44 reinelt Exp $ +/* $Id: drv_Image.c,v 1.13 2005/11/04 04:44:52 reinelt Exp $ * * new style Image (PPM/PNG) Driver for LCD4Linux * @@ -23,6 +23,9 @@ * * * $Log: drv_Image.c,v $ + * Revision 1.13 2005/11/04 04:44:52 reinelt + * LPH7508 driver (not yet finished) + * * Revision 1.12 2005/05/08 04:32:44 reinelt * CodingStyle added and applied * @@ -427,21 +430,21 @@ static int drv_IMG_start(const char *section) if (cfg_number(section, "border", 0, 0, -1, &border) < 0) return -1; - if (sscanf(s = cfg_get(NULL, "foreground", "#102000"), "#%x", &fg_col) != 1) { + if (sscanf(s = cfg_get(section, "foreground", "#102000"), "#%x", &fg_col) != 1) { error("%s: bad %s.foreground color '%s' from %s", Name, section, s, cfg_source()); free(s); return -1; } free(s); - if (sscanf(s = cfg_get(NULL, "halfground", "#70c000"), "#%x", &hg_col) != 1) { + if (sscanf(s = cfg_get(section, "halfground", "#70c000"), "#%x", &hg_col) != 1) { error("%s: bad %s.halfground color '%s' from %s", Name, section, s, cfg_source()); free(s); return -1; } free(s); - if (sscanf(s = cfg_get(NULL, "background", "#80d000"), "#%x", &bg_col) != 1) { + if (sscanf(s = cfg_get(section, "background", "#80d000"), "#%x", &bg_col) != 1) { error("%s: bad %s.background color '%s' from %s", Name, section, s, cfg_source()); free(s); return -1; diff --git a/lcd4linux.conf.sample b/lcd4linux.conf.sample index 47cff2d..18c885a 100644 --- a/lcd4linux.conf.sample +++ b/lcd4linux.conf.sample @@ -1,3 +1,9 @@ +Variables { + tick 500 + tack 100 + minute 60000 +} + Display SerDispLib { Driver 'serdisplib' Port 'PAR:/dev/parports/0' @@ -274,6 +280,18 @@ Display T6963-240x64 { } +#Display LPH7508 { +# Driver 'LPH7508' +# Port '/dev/parports/0' +# Font '6x8' +#} + +Display LPH7508 { + Driver 'serdisplib' + Port 'PAR:/dev/parports/0' + Model 'LPH7508' +} + Display XWindow { Driver 'X11' Size '120x32' @@ -703,7 +721,7 @@ Layout Default { } Row3 { Col1 'Busy' -# Col10 'Rain' + Col10 'Rain' Col11 'BusyBar' } Row4 { @@ -762,22 +780,22 @@ Layout L20x2 { } Layout Test { - Row01.Col1 'Test' - Row02.Col1 'Test' - Row03.Col1 'Test' - Row04.Col1 'Test' - Row05.Col1 'Test' - Row06.Col1 'Test' - Row07.Col1 'Test' - Row08.Col1 'Test' -# Row09.Col1 'Test' -# Row10.Col1 'Test' -# Row11.Col1 'Test' -# Row12.Col1 'Test' -# Row13.Col1 'Test' -# Row14.Col1 'Test' -# Row15.Col1 'Test' -# Row16.Col1 'Test' + Row01.Col1 'Test1' + Row02.Col1 'Test1' + Row03.Col1 'Test1' + Row04.Col1 'Test1' + Row05.Col1 'Test1' + Row06.Col1 'Test1' + Row07.Col1 'Test1' + Row08.Col1 'Test1' + Row09.Col1 'Test1' + Row10.Col1 'Test1' + Row11.Col1 'Test1' + Row12.Col1 'Test1' + Row13.Col1 'Test1' + Row14.Col1 'Test1' + Row15.Col1 'Test1' + Row16.Col1 'Test1' } Layout Test2 { @@ -803,7 +821,7 @@ Layout testMySQL { #Display 'SerDispLib' -Display 'LCD-Linux' +#Display 'LCD-Linux' #Display 'LK204' #Display 'MI240' #Display 'CW12232' @@ -827,17 +845,13 @@ Display 'LCD-Linux' #Display 'BWCT' #Display 'Image' #Display 'Trefon' +Display 'LPH7508' -#Layout 'Default' +#Layout 'Default' #Layout 'L8x2' #Layout 'L16x2' -Layout 'L20x2' -#Layout 'Test' +#Layout 'L20x2' +Layout 'Test' #Layout 'Test2' -Variables { - tick 500 - tack 100 - minute 60000 -} -- cgit v1.2.3