diff --git a/ChangeLog b/ChangeLog index a4896b5..0ad265d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -30,6 +30,7 @@ v.0.5dev (ongoing development) + new unified serial sub-driver for hd44780 (Matteo Pillon) - obsolete hd44780 subdrivers-removed: lcdserializer, picanlcd * character mapping for special HD44780 modules (Matteo Pillon) + + g15 - driver for LCD in Logitech G15 gaming keyboards (Anthony J. Mirabella) v0.5.0 This version has split off from unstable-0.4.3. Includes major changes. diff --git a/LCDd.conf b/LCDd.conf index be41698..771b18b 100644 --- a/LCDd.conf +++ b/LCDd.conf @@ -36,6 +36,7 @@ Driver=curses #Driver=CFontz633 #Driver=CFontzPacket #Driver=CwLnx +#Driver=g15 #Driver=glcdlib #Driver=IOWarrior #Driver=imon @@ -277,7 +278,11 @@ Keypad=yes # Default value is no #keypad_test_mode=yes +## g15 driver for Logitech G15 Keyboard LCDs ## +[g15] +# Display size (currently unused) +size=20x5 ## glcdlib meta driver for graphical LCDs ## [glcdlib] diff --git a/acinclude.m4 b/acinclude.m4 index 2e8fed0..f6de04c 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -6,7 +6,7 @@ AC_ARG_ENABLE(drivers, [ drivers may be separated with commas.] [ Possible choices are:] [ bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,] - [ glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,] + [ g15,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,] [ joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,mtc_s16209x,] [ MtxOrb,NoritakeVFD,pyramid,sed1330,sed1520,serialVFD,] [ sli,stv5730,svga,t6963,text,tyan,ula200,xosd] @@ -15,7 +15,7 @@ AC_ARG_ENABLE(drivers, drivers="$enableval", drivers=[bayrad,CFontz,CFontz633,curses,CwLnx,glk,lb216,lcdm001,MtxOrb,pyramid,text]) -allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,pyramid,sed1330,sed1520,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd] +allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,g15,glcdlib,glk,hd44780,icp_a106,imon,IOWarrior,irman,joy,lb216,lcdm001,lcterm,lirc,MD8800,ms6931,mtc_s16209x,MtxOrb,NoritakeVFD,pyramid,sed1330,sed1520,serialVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd] drivers=`echo $drivers | sed -e 's/,/ /g'` @@ -124,6 +124,36 @@ dnl else DRIVERS="$DRIVERS CwLnx${SO}" actdrivers=["$actdrivers CwLnx"] ;; + g15) + AC_CHECK_HEADERS([g15daemon_client.h],[ + AC_CHECK_LIB(g15daemon_client, new_g15_screen,[ + LIBG15="-lg15daemon_client" + ],[ +dnl else + AC_MSG_WARN([The g15 driver needs libg15daemon_client-1.2 or better]) + ], + [-lg15daemon_client] + ) + ],[ +dnl else + AC_MSG_WARN([The g15 driver needs g15daemon_client.h]) + ]) + AC_CHECK_HEADERS([libg15render.h],[ + AC_CHECK_LIB(g15render, g15r_initCanvas,[ + LIBG15="$LIBG15 -lg15render" + DRIVERS="$DRIVERS g15${SO}" + actdrivers=["$actdrivers g15"] + ],[ +dnl else + AC_MSG_WARN([the g15 driver needs libg15render]) + ], + [-lg15render] + ) + ],[ +dnl else + AC_MSG_WARN([The g15driver needs libg15render.h]) + ]) + ;; glcdlib) AC_CHECK_HEADERS([glcdproclib/glcdprocdriver.h],[ AC_CHECK_LIB(glcdprocdriver, main,[ @@ -353,6 +383,7 @@ AC_SUBST(LIBLIRC_CLIENT) AC_SUBST(LIBSVGA) AC_SUBST(DRIVERS) AC_SUBST(HD44780_DRIVERS) +AC_SUBST(LIBG15) AC_SUBST(LIBGLCD) AC_SUBST(LIBFTDI) AC_SUBST(LIBXOSD) diff --git a/docs/LCDd.8 b/docs/LCDd.8 index 4f4abaf..bb5e0fb 100644 --- a/docs/LCDd.8 +++ b/docs/LCDd.8 @@ -81,6 +81,9 @@ Standard video display using the (n)curses library .B CwLnx serial/USB displays by Cwlinux (http://www.cwlinux.com) .TP +.B g15 +LCD display on the Logitech G15 keyboard +.TP .B glcdlib graphical LCDs supported by graphlcd-base .TP diff --git a/docs/lcdproc-user/drivers.docbook b/docs/lcdproc-user/drivers.docbook index 99dcd7d..5948bef 100644 --- a/docs/lcdproc-user/drivers.docbook +++ b/docs/lcdproc-user/drivers.docbook @@ -13,6 +13,7 @@ well as the configuration of LCDd. &CFontzPacket; &curses; &CwLnx; +&g15; &glcdlib; &glk; &hd44780; diff --git a/docs/lcdproc-user/lcdproc-user.docbook b/docs/lcdproc-user/lcdproc-user.docbook index 1705e81..f3ae7a3 100644 --- a/docs/lcdproc-user/lcdproc-user.docbook +++ b/docs/lcdproc-user/lcdproc-user.docbook @@ -19,6 +19,7 @@ + diff --git a/server/drivers/Makefile.am b/server/drivers/Makefile.am index 724a3a3..059e0b0 100644 --- a/server/drivers/Makefile.am +++ b/server/drivers/Makefile.am @@ -19,17 +19,19 @@ AM_LDFLAGS = @LDSHARED@ LIBS = pkglib_PROGRAMS = @DRIVERS@ -EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx glcdlib glk hd44780 icp_a106 imon IOWarrior irman joy lb216 lcdm001 lcterm lirc MD8800 ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 sed1520 serialVFD stv5730 svga t6963 text tyan sli ula200 xosd +EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx g15 glcdlib glk hd44780 icp_a106 imon IOWarrior irman joy lb216 lcdm001 lcterm lirc MD8800 ms6931 mtc_s16209x MtxOrb NoritakeVFD pyramid sed1330 sed1520 serialVFD stv5730 svga t6963 text tyan sli ula200 xosd noinst_LIBRARIES = libLCD.a libbignum.a IOWarrior_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) hd44780_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) +g15_CFLAGS = @libusb_cflags@ $(AM_CFLAGS) CFontz_LDADD = libLCD.a libbignum.a CFontz633_LDADD = libLCD.a libbignum.a CFontzPacket_LDADD = libLCD.a libbignum.a curses_LDADD = @LIBCURSES@ CwLnx_LDADD = libLCD.a +g15_LDADD = libLCD.a @LIBG15@ glcdlib_LDADD = libLCD.a @LIBGLCD@ hd44780_LDADD = libLCD.a @HD44780_DRIVERS@ @libusb_libs@ libbignum.a hd44780_DEPENDENCIES = @HD44780_DRIVERS@ @@ -60,6 +62,7 @@ CFontz633_SOURCES = lcd.h lcd_lib.h CFontz633.c CFontz633.h CFontz-charmap.h CF CFontzPacket_SOURCES = lcd.h lcd_lib.h CFontzPacket.c CFontzPacket.h CFontz-charmap.h CFontz633io.c CFontz633io.h report.h adv_bignum.h curses_SOURCES = lcd.h curses_drv.h curses_drv.c report.h CwLnx_SOURCES = lcd.h lcd_lib.h CwLnx.c CwLnx.h report.h +g15_SOURCES = lcd.h lcd_lib.h g15.h g15-num.c g15.c report.h glcdlib_SOURCES = lcd.h lcd_lib.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 lcd_lib.h hd44780.h hd44780.c hd44780-drivers.h hd44780-low.h hd44780-charmap.h report.h adv_bignum.h