From 5a75b922ebd40ea0c8338a746e06d70ff3ce422e Mon Sep 17 00:00:00 2001 From: marschap Date: Mon, 8 Oct 2007 13:54:05 +0000 Subject: [PATCH] make ConnectionType 4bit more fool-proof (M. Dolze) --- ChangeLog | 3 ++- server/drivers/hd44780-4bit.c | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 80e5cfb..554d126 100644 --- a/ChangeLog +++ b/ChangeLog @@ -28,7 +28,8 @@ v.0.5dev (ongoing development) + option Priority for NoritakeVFD (idea: Richard Muratti) * overhauled NoritakeVFD driver (idea: Richard Muratti) * allow wrapping slider menu items with <= 4 keys (M. Dolze) - * a bit more Doxygen-ation + * a bit more Doxygen-ation and documentation + * hd44780 driver: make ConnectionType 4bit more fool-proof (M. Dolze) v.0.5.2 * fix switching on/off the Load screen in lcdproc client using the menu diff --git a/server/drivers/hd44780-4bit.c b/server/drivers/hd44780-4bit.c index f926750..4666fe7 100644 --- a/server/drivers/hd44780-4bit.c +++ b/server/drivers/hd44780-4bit.c @@ -100,7 +100,7 @@ hd_init_4bit(Driver *drvthis) PrivateData *p = (PrivateData*) drvthis->private_data; HD44780_functions *hd44780_functions = p->hd44780_functions; - int enableLines = EN1 | EN2 | EN3; + int enableLines = EN1 | EN2 | ((p->numDisplays == 3) ? EnMask[2] : 0); // Reserve the port registers port_access_multiple(p->port,3); @@ -186,7 +186,8 @@ lcdstat_HD44780_senddata(PrivateData *p, unsigned char displayID, unsigned char if (displayID <= 3) { if (displayID == 0) { - enableLines = EnMask[0] | EnMask[1] | EnMask[2]; + enableLines = EnMask[0] | EnMask[1] + | ((p->numDisplays == 3) ? EnMask[2] : 0); } else { enableLines = EnMask[displayID - 1]; }