diff --git a/acinclude.m4 b/acinclude.m4 index 712ffaf..8a0a723 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -2,44 +2,27 @@ AC_DEFUN(LCD_DRIVERS_SELECT, [ AC_CHECKING(for which drivers to compile) AC_ARG_ENABLE(drivers, - [ --enable-drivers= compile driver for LCDs in .] + [ --enable-drivers= compile driver for LCDs in .] [ drivers may be separated with commas.] - [ Possible choices are:] - [ mtxorb,cfontz,cfontz633,curses,cwlnx,text,lb216,] - [ hd44780,joy,irman,lirc,bayrad,glk,mtc_s16209x] - [ stv5730,sed1330,sed1520,svga,lcdm001,t6963] - [ lcterm,icp_a106,ms6931,iowarrior,glcdlib,imon,xosd,] - [ noritakevfd,tyan,pylcd] + [ Possible choices are:] + [ bayrad,cfontz,cfontz633,curses,cwlnx,glcdlib,glk,] + [ hd44780,icp_a106,imon,iowarrior,irman,joy,lb216,] + [ lcdm001,lcterm,lirc,ms6931,mtc_s16209x,mtxorb,] + [ noritakevfd,pylcd,sed1330,sed1520,sli,stv5730,svga,] + [ t6963,text,tyan,xosd] [ \"all\" compiles all drivers], - drivers="$enableval", - drivers=[lcdm001,mtxorb,cfontz,cfontz633,curses,cwlnx,text,lb216,bayrad,glk,pylcd]) + drivers="$enableval", + drivers=[bayrad,cfontz,cfontz633,curses,cwlnx,glk,lb216,lcdm001,mtxorb,pylcd,text]) -if test "$drivers" = "all"; then - -drivers=[mtxorb,cfontz,cfontz633,curses,cwlnx,text,lb216,mtc_s16209x,hd44780,joy,irman,lirc,bayrad,glk,stv5730,sed1330,sed1520,svga,lcdm001,t6963,lcterm,icp_a106,ms6931,iowarrior,glcdlib,imon,xosd,noritakevfd,tyan,pylcd] -fi + if test "$drivers" = "all"; then + drivers=[bayrad,cfontz,cfontz633,curses,cwlnx,glcdlib,glk,hd44780,icp_a106,imon,iowarrior,irman,joy,lb216,lcdm001,lcterm,lirc,ms6931,mtc_s16209x,mtxorb,noritakevfd,pylcd,sed1330,sed1520,sli,stv5730,svga,t6963,text,tyan,xosd] + fi drivers=`echo $drivers | sed 's/,/ /g'` for driver in $drivers do case "$driver" in - lcdm001) - DRIVERS="$DRIVERS lcdm001${SO}" - actdrivers=["$actdrivers lcdm001"] - ;; - pylcd) - DRIVERS="$DRIVERS pylcd${SO}" - actdrivers=["$actdrivers pylcd"] - ;; - mtxorb) - DRIVERS="$DRIVERS MtxOrb${SO}" - actdrivers=["$actdrivers mtxorb"] - ;; - glk) - DRIVERS="$DRIVERS glk${SO}" - actdrivers=["$actdrivers glk"] - ;; bayrad) DRIVERS="$DRIVERS bayrad${SO}" actdrivers=["$actdrivers bayrad"] @@ -57,26 +40,6 @@ fi AC_MSG_WARN([The CFontz633 driver needs the select() function]) ]) ;; - noritakevfd) - DRIVERS="$DRIVERS NoritakeVFD${SO}" - actdrivers=["$actdrivers noritakevfd"] - ;; - lcterm) - DRIVERS="$DRIVERS lcterm${SO}" - actdrivers=["$actdrivers lcterm"] - ;; - icp_a106) - DRIVERS="$DRIVERS icp_a106${SO}" - actdrivers=["$actdrivers icp_a106"] - ;; - ms6931) - DRIVERS="$DRIVERS ms6931${SO}" - actdrivers=["$actdrivers ms6931"] - ;; - sli) - DRIVERS="$DRIVERS wirz-sli${SO}" - actdrivers=["$actdrivers sli"] - ;; curses) AC_CHECK_HEADERS(ncurses.h curses.h) AC_CHECK_LIB(ncurses, main, [ @@ -133,17 +96,26 @@ dnl else DRIVERS="$DRIVERS CwLnx${SO}" actdrivers=["$actdrivers cwlnx"] ;; - text) - DRIVERS="$DRIVERS text${SO}" - actdrivers=["$actdrivers text"] + glcdlib) + AC_CHECK_HEADERS([glcdproclib/glcdprocdriver.h],[ + AC_CHECK_LIB(glcdprocdriver, main,[ + LIBGLCD="-lglcddrivers -lglcdgraphics -lglcdprocdriver" + DRIVERS="$DRIVERS glcdlib${SO}" + actdrivers=["$actdrivers glcdlib"] + ],[ +dnl else + AC_MSG_WARN([The glcdlib driver needs the glcdprocdriver library]) + ], + [-lglcddrivers -lglcdgraphics -lglcdprocdriver] + ) + ],[ +dnl else + AC_MSG_WARN([The glcdlib driver needs glcdproclib/glcdprocdriver.h]) + ]) ;; - lb216) - DRIVERS="$DRIVERS lb216${SO}" - actdrivers=["$actdrivers lb216"] - ;; - mtc_s16209x) - DRIVERS="$DRIVERS mtc_s16209x${SO}" - actdrivers=["$actdrivers mtc_s16209x"] + glk) + DRIVERS="$DRIVERS glk${SO}" + actdrivers=["$actdrivers glk"] ;; hd44780) if test "$ac_cv_port_have_lpt" = yes ; then @@ -157,14 +129,13 @@ dnl else DRIVERS="$DRIVERS hd44780${SO}" actdrivers=["$actdrivers hd44780"] ;; - joy) - AC_CHECK_HEADER(linux/joystick.h, [ - DRIVERS="$DRIVERS joy${SO}" - actdrivers=["$actdrivers joy"] - ],[ -dnl else - AC_MSG_WARN([The joy driver needs header file linux/joystick.h.]) - ]) + icp_a106) + DRIVERS="$DRIVERS icp_a106${SO}" + actdrivers=["$actdrivers icp_a106"] + ;; + imon) + DRIVERS="$DRIVERS imon${SO}" + actdrivers=["$actdrivers imon"] ;; iowarrior) if test "$enable_libusb" = yes ; then @@ -184,6 +155,27 @@ dnl else AC_MSG_WARN([The irman driver needs the irman library.]) ]) ;; + joy) + AC_CHECK_HEADER(linux/joystick.h, [ + DRIVERS="$DRIVERS joy${SO}" + actdrivers=["$actdrivers joy"] + ],[ +dnl else + AC_MSG_WARN([The joy driver needs header file linux/joystick.h.]) + ]) + ;; + lb216) + DRIVERS="$DRIVERS lb216${SO}" + actdrivers=["$actdrivers lb216"] + ;; + lcdm001) + DRIVERS="$DRIVERS lcdm001${SO}" + actdrivers=["$actdrivers lcdm001"] + ;; + lcterm) + DRIVERS="$DRIVERS lcterm${SO}" + actdrivers=["$actdrivers lcterm"] + ;; lirc) AC_CHECK_LIB(lirc_client, main,[ LIBLIRC_CLIENT="-llirc_client" @@ -194,6 +186,26 @@ dnl else AC_MSG_WARN([The lirc driver needs the lirc client library]) ]) ;; + ms6931) + DRIVERS="$DRIVERS ms6931${SO}" + actdrivers=["$actdrivers ms6931"] + ;; + mtc_s16209x) + DRIVERS="$DRIVERS mtc_s16209x${SO}" + actdrivers=["$actdrivers mtc_s16209x"] + ;; + mtxorb) + DRIVERS="$DRIVERS MtxOrb${SO}" + actdrivers=["$actdrivers mtxorb"] + ;; + noritakevfd) + DRIVERS="$DRIVERS NoritakeVFD${SO}" + actdrivers=["$actdrivers noritakevfd"] + ;; + pylcd) + DRIVERS="$DRIVERS pylcd${SO}" + actdrivers=["$actdrivers pylcd"] + ;; sed1330) if test "$ac_cv_port_have_lpt" = yes then @@ -212,6 +224,10 @@ dnl else AC_MSG_WARN([The sed1520 driver needs a parallel port.]) fi ;; + sli) + DRIVERS="$DRIVERS wirz_sli${SO}" + actdrivers=["$actdrivers sli"] + ;; stv5730) if test "$ac_cv_port_have_lpt" = yes then @@ -245,26 +261,13 @@ dnl else AC_MSG_WARN([The sed1330 driver needs a parallel port.]) fi ;; - glcdlib) - AC_CHECK_HEADERS([glcdproclib/glcdprocdriver.h],[ - AC_CHECK_LIB(glcdprocdriver, main,[ - LIBGLCD="-lglcddrivers -lglcdgraphics -lglcdprocdriver" - DRIVERS="$DRIVERS glcdlib${SO}" - actdrivers=["$actdrivers glcdlib"] - ],[ -dnl else - AC_MSG_WARN([The glcdlib driver needs the glcdprocdriver library]) - ], - [-lglcddrivers -lglcdgraphics -lglcdprocdriver] - ) - ],[ -dnl else - AC_MSG_WARN([The glcdlib driver needs glcdproclib/glcdprocdriver.h]) - ]) + text) + DRIVERS="$DRIVERS text${SO}" + actdrivers=["$actdrivers text"] ;; - imon) - DRIVERS="$DRIVERS imon${SO}" - actdrivers=["$actdrivers imon"] + tyan) + DRIVERS="$DRIVERS tyan${SO}" + actdrivers=["$actdrivers tyan"] ;; xosd) AC_CHECK_HEADERS([xosd.h],[ @@ -281,10 +284,6 @@ dnl else AC_MSG_WARN([The xosd driver needs xosd.h]) ]) ;; - tyan) - DRIVERS="$DRIVERS tyan${SO}" - actdrivers=["$actdrivers tyan"] - ;; *) AC_MSG_ERROR([Unknown driver $driver]) ;; diff --git a/docs/lcdproc-dev/add-your-driver.docbook b/docs/lcdproc-dev/add-your-driver.docbook index db07174..be71624 100644 --- a/docs/lcdproc-dev/add-your-driver.docbook +++ b/docs/lcdproc-dev/add-your-driver.docbook @@ -43,28 +43,30 @@ First you need to add your driver name to the list of possible choices in the he This: AC_ARG_ENABLE(drivers, - [ --enable-drivers=<list> compile driver for LCDs in <list>.] - [ drivers may be separated with commas.] - [ Possible choices are:] - [ mtxorb,cfontz,cfontz633,curses,text,lb216,] - [ hd44780,joy,irman,lirc,bayrad,glk,,mtc_s16209x] - [ stv5730,sed1330,sed1520,svga,lcdm001,t6963] - [ lcterm,icp_a106] - [ \"all\" compiles all drivers], - drivers="$enableval", + [ --enable-drivers= compile driver for LCDs in .] + [ drivers may be separated with commas.] + [ Possible choices are:] + [ bayrad,cfontz,cfontz633,curses,cwlnx,glcdlib,glk,] + [ hd44780,icp_a106,imon,iowarrior,irman,joy,lb216,] + [ lcdm001,lcterm,lirc,ms6931,mtc_s16209x,mtxorb,] + [ noritakevfd,pylcd,sed1330,sed1520,sli,stv5730,svga,] + [ t6963,text,tyan,xosd] + [ \"all\" compiles all drivers], + drivers="$enableval", becomes: AC_ARG_ENABLE(drivers, - [ --enable-drivers=<list> compile driver for LCDs in <list>.] - [ drivers may be separated with commas.] - [ Possible choices are:] - [ mtxorb,cfontz,cfontz633,curses,text,lb216,] - [ hd44780,joy,irman,lirc,bayrad,glk,,mtc_s16209x] - [ stv5730,sed1330,sed1520,svga,lcdm001,t6963] - [ lcterm,icp_a106,myDriver] - [ \"all\" compiles all drivers], - drivers="$enableval", + [ --enable-drivers= compile driver for LCDs in .] + [ drivers may be separated with commas.] + [ Possible choices are:] + [ bayrad,cfontz,cfontz633,curses,cwlnx,glcdlib,glk,] + [ hd44780,icp_a106,imon,iowarrior,irman,joy,lb216,] + [ lcdm001,lcterm,lirc,ms6931,mtc_s16209x,mtxorb,] + [ noritakevfd,pylcd,sed1330,sed1520,sli,stv5730,svga,] + [ t6963,text,tyan,xosd,myDriver] + [ \"all\" compiles all drivers], + drivers="$enableval", @@ -76,15 +78,15 @@ AC_ARG_ENABLE(drivers, This: -if test "$drivers" = "all"; then - drivers=[mtxorb,cfontz,...biglist...,lcterm,icp_a106] -fi + if test "$drivers" = "all"; then + drivers=[bayrad,cfontz,...(big list)...,tyan,xosd] + fi becomes: -if test "$drivers" = "all"; then - drivers=[mtxorb,cfontz,...biglist...,lcterm,icp_a106,myDriver] -fi + if test "$drivers" = "all"; then + drivers=[bayrad,cfontz,...(big list)...,tyan,xosd,myDriver] + fi @@ -121,11 +123,11 @@ If your driver only works in some platform or requires a particular library or h This -EXTRA_PROGRAMS = bayrad CFontz ...biglist... text wirz_sli +EXTRA_PROGRAMS = bayrad CFontz ...(big list)... wirz_sli xosd becomes -EXTRA_PROGRAMS = bayrad CFontz ...biglist... text wirz_sli myDriver +EXTRA_PROGRAMS = bayrad CFontz ...(big list)... wirz_sli xosd myDriver diff --git a/server/drivers/Makefile.am b/server/drivers/Makefile.am index d63430b..e691ca4 100644 --- a/server/drivers/Makefile.am +++ b/server/drivers/Makefile.am @@ -18,7 +18,7 @@ AM_LDFLAGS = @LDSHARED@ LIBS = pkglib_PROGRAMS = @DRIVERS@ -EXTRA_PROGRAMS = bayrad CFontz CFontz633 NoritakeVFD curses CwLnx glk hd44780 irman icp_a106 joy lb216 mtc_s16209x lcdm001 lcterm lirc MtxOrb pylcd sed1330 sed1520 stv5730 svga t6963 text tyan wirz_sli ms6931 IOWarrior glcdlib imon xosd +EXTRA_PROGRAMS = bayrad CFontz CFontz633 curses CwLnx glcdlib glk hd44780 icp_a106 imon IOWarrior irman joy lb216 lcdm001 lcterm lirc ms6931 mtc_s16209x MtxOrb NoritakeVFD pylcd sed1330 sed1520 stv5730 svga t6963 text tyan wirz_sli xosd noinst_LIBRARIES = libLCD.a IOWarrior_CFLAGS = @libusb_cflags@ @@ -26,21 +26,21 @@ hd44780_CFLAGS = @libusb_cflags@ CFontz_LDADD = libLCD.a CFontz633_LDADD = libLCD.a -NoritakeVFD_LDADD = libLCD.a curses_LDADD = @LIBCURSES@ CwLnx_LDADD = libLCD.a CwLnx_SOURCES = lcd.h CwLnx.c CwLnx.h report.h +glcdlib_LDADD = libLCD.a @LIBGLCD@ hd44780_LDADD = libLCD.a @HD44780_DRIVERS@ @libusb_libs@ hd44780_DEPENDENCIES = @HD44780_DRIVERS@ icp_a106_LDADD = libLCD.a +imon_LDADD = libLCD.a IOWarrior_LDADD = @libusb_libs@ libLCD.a irman_LDADD = @LIBIRMAN@ lirc_LDADD = @LIBLIRC_CLIENT@ lcterm_LDADD = libLCD.a +NoritakeVFD_LDADD = libLCD.a svga_LDADD = @LIBSVGA@ t6963_LDADD = libLCD.a -glcdlib_LDADD = libLCD.a @LIBGLCD@ -imon_LDADD = libLCD.a xosd_LDADD = @LIBXOSD@ libLCD_a_SOURCES = lcd_lib.h lcd_lib.c @@ -48,22 +48,26 @@ libLCD_a_SOURCES = lcd_lib.h lcd_lib.c bayrad_SOURCES = lcd.h bayrad.h bayrad.c report.h CFontz_SOURCES = lcd.h CFontz.c CFontz.h CFontz-charmap.h report.h CFontz633_SOURCES = lcd.h CFontz633.c CFontz633.h CFontz-charmap.h CFontz633io.c CFontz633io.h report.h -NoritakeVFD_SOURCES = lcd.h NoritakeVFD.c NoritakeVFD.h report.h curses_SOURCES = lcd.h curses_drv.h curses_drv.c report.h +glcdlib_SOURCES = lcd.h glcdlib.h glcdlib.c report.h glk_SOURCES = lcd.h glk.c glk.h glkproto.c glkproto.h report.h hd44780_SOURCES = lcd.h hd44780.h hd44780.c hd44780-drivers.h hd44780-low.h hd44780-charmap.h report.h EXTRA_hd44780_SOURCES = hd44780-4bit.c hd44780-4bit.h hd44780-ext8bit.c hd44780-ext8bit.h lcd_sem.c lcd_sem.h hd44780-serialLpt.c hd44780-serialLpt.h hd44780-winamp.c hd44780-winamp.h hd44780-picanlcd.c hd44780-picanlcd.h hd44780-bwct-usb.c hd44780-bwct-usb.h hd44780-lcdserializer.c hd44780-lcdserializer.h hd44780-lis2.c hd44780-lis2.h port.h lpt-port.h timing.h icp_a106_SOURCES = lcd.h icp_a106.c icp_a106.h report.h +imon_SOURCES = lcd.h imon.h imon.c report.h IOWarrior_SOURCES = lcd.h lcd_lib.h hd44780-charmap.h IOWarrior.c IOWarrior.h report.h irman_SOURCES = lcd.h irmanin.c irmanin.h report.h joy_SOURCES = lcd.h joy.c joy.h port.h report.h lb216_SOURCES = lcd.h lb216.c lb216.h report.h -mtc_s16209x_SOURCES = lcd.h mtc_s16209x.c mtc_s16209x.h report.h -lcterm_SOURCES = lcd.h lcterm.c lcterm.h report.h lcdm001_SOURCES = lcd.h lcdm001.c lcdm001.h report.h +lcterm_SOURCES = lcd.h lcterm.c lcterm.h report.h lirc_SOURCES = lcd.h lircin.c lircin.h report.h +ms6931_SOURCES = lcd.h ms6931.h ms6931.c report.h +mtc_s16209x_SOURCES = lcd.h mtc_s16209x.c mtc_s16209x.h report.h MtxOrb_SOURCES = lcd.h MtxOrb.c MtxOrb.h report.h bigfont.h +NoritakeVFD_SOURCES = lcd.h NoritakeVFD.c NoritakeVFD.h report.h +pylcd_SOURCES = lcd.h pylcd.c pylcd.h sed1330_SOURCES = lcd.h sed1330.h sed1330.c port.h lpt-port.h timing.h report.h sed1520_SOURCES = lcd.h sed1520.c sed1520.h sed1520fm.c sed1520fm.h port.h report.h stv5730_SOURCES = lcd.h stv5730.c stv5730.h report.h @@ -72,9 +76,6 @@ t6963_SOURCES = lcd.h t6963.c t6963.h t6963_font.h report.h text_SOURCES = lcd.h text.h text.c report.h tyan_SOURCES = lcd.h tyan_lcdm.h tyan_lcdm.c report.h wirz_sli_SOURCES = lcd.h wirz-sli.h wirz-sli.c report.h -ms6931_SOURCES = lcd.h ms6931.h ms6931.c report.h -glcdlib_SOURCES = lcd.h glcdlib.h glcdlib.c report.h -imon_SOURCES = lcd.h imon.h imon.c report.h xosd_SOURCES = lcd.h xosdlib_drv.c xosdlib_drv.h report.h INCLUDES = -I$(top_srcdir) diff --git a/server/drivers/wirz-sli.c b/server/drivers/wirz-sli.c index 3b4ad1a..90fbd8d 100644 --- a/server/drivers/wirz-sli.c +++ b/server/drivers/wirz-sli.c @@ -21,7 +21,7 @@ //#include "drv_base.h" #include "report.h" -#include "shared/debug.h" +//#include "shared/debug.h" #include "shared/str.h" #define SLI_DEFAULT_DEVICE "/dev/lcd" @@ -57,7 +57,7 @@ sli_init (Driver *drvthis) struct termios portset; char out[2]; - char device[256] = WIRZ_DEFAULT_DEVICE; + char device[256] = SLI_DEFAULT_DEVICE; int speed = B19200; /* Read config file */ @@ -523,15 +523,15 @@ sli_icon (Driver *drvthis, int x, int y, int icon) custom = beat; switch( icon ) { case ICON_BLOCK_FILLED: - CFontz_chr( drvthis, x, y, 255 ); + sli_chr( drvthis, x, y, 255 ); break; case ICON_HEART_FILLED: - CFontz_set_char( drvthis, 0, icons[1] ); - CFontz_chr( drvthis, x, y, 0 ); + sli_set_char( drvthis, 0, icons[1] ); + sli_chr( drvthis, x, y, 0 ); break; case ICON_HEART_OPEN: - CFontz_set_char( drvthis, 0, icons[0] ); - CFontz_chr( drvthis, x, y, 0 ); + sli_set_char( drvthis, 0, icons[0] ); + sli_chr( drvthis, x, y, 0 ); break; default: return -1;