From 7e4c21cec52eeae4af567a78abac81093807f91f Mon Sep 17 00:00:00 2001 From: robijn Date: Thu, 29 Nov 2001 15:51:51 +0000 Subject: [PATCH] HD44780 and SED1330 now use lpt-port.h --- server/drivers/hd44780-4bit.c | 1 + server/drivers/hd44780-ext8bit.c | 1 + server/drivers/hd44780-low.h | 23 -------------- server/drivers/hd44780-serialLpt.c | 1 + server/drivers/hd44780-winamp.c | 1 + server/drivers/lpt-port.h | 48 ++++++++++++++++++++++++++++++ server/drivers/sed1330.c | 2 +- 7 files changed, 53 insertions(+), 24 deletions(-) create mode 100644 server/drivers/lpt-port.h diff --git a/server/drivers/hd44780-4bit.c b/server/drivers/hd44780-4bit.c index d931583..bed0828 100644 --- a/server/drivers/hd44780-4bit.c +++ b/server/drivers/hd44780-4bit.c @@ -62,6 +62,7 @@ #include "hd44780-4bit.h" #include "hd44780.h" +#include "lpt-port.h" #include "port.h" #include "shared/str.h" diff --git a/server/drivers/hd44780-ext8bit.c b/server/drivers/hd44780-ext8bit.c index f427452..3200f0f 100644 --- a/server/drivers/hd44780-ext8bit.c +++ b/server/drivers/hd44780-ext8bit.c @@ -53,6 +53,7 @@ #include "hd44780-ext8bit.h" #include "hd44780.h" +#include "lpt-port.h" #include "port.h" #include "lcd_sem.h" diff --git a/server/drivers/hd44780-low.h b/server/drivers/hd44780-low.h index 80b27d2..55bedff 100644 --- a/server/drivers/hd44780-low.h +++ b/server/drivers/hd44780-low.h @@ -81,27 +81,4 @@ extern HD44780_functions *hd44780_functions; #define POSITION 0x80 -// Parallel port pin definitions -// Output lines -#define nSTRB 0x01 /* negative logic */ -#define STRB 0x01 -#define nLF 0x02 -#define LF 0x02 -#define INIT 0x04 /* the only positive logic output line */ -#define nSEL 0x08 -#define SEL 0x08 - -#define OUTMASK 0x0B /* SEL, LF and STRB are hardware inverted */ - -// Input lines -#define nFAULT 0x08 -#define FAULT 0x08 -#define SELIN 0x10 -#define PAPEREND 0x20 -#define nACK 0x40 -#define ACK 0x40 -#define BUSY 0x80 - -#define INMASK 0x84 /* BUSY input and the IRQ indicator are inverted */ - #endif diff --git a/server/drivers/hd44780-serialLpt.c b/server/drivers/hd44780-serialLpt.c index 3b01215..21bc871 100644 --- a/server/drivers/hd44780-serialLpt.c +++ b/server/drivers/hd44780-serialLpt.c @@ -51,6 +51,7 @@ #include "hd44780-serialLpt.h" #include "hd44780.h" +#include "lpt-port.h" #include "port.h" #include "shared/str.h" diff --git a/server/drivers/hd44780-winamp.c b/server/drivers/hd44780-winamp.c index 061cf73..9829d76 100644 --- a/server/drivers/hd44780-winamp.c +++ b/server/drivers/hd44780-winamp.c @@ -60,6 +60,7 @@ #include "hd44780-winamp.h" #include "hd44780.h" +#include "lpt-port.h" #include "port.h" #include "shared/str.h" diff --git a/server/drivers/lpt-port.h b/server/drivers/lpt-port.h new file mode 100644 index 0000000..b7281eb --- /dev/null +++ b/server/drivers/lpt-port.h @@ -0,0 +1,48 @@ +// This file contains defines to control the LPT port. +// A lot of this was originally in hd44780-low.h + +#ifndef LPT_PORT_H +#define LPT_PORT_H + + +/* Output data + * Write to baseaddress+0 + */ +// Straight-forward use, no defines needed for this... + + +/* Control output lines + * Write to baseaddress+2 + */ +#define nSTRB 0x01 /* negative logic */ +#define STRB 0x01 +#define nLF 0x02 +#define LF 0x02 +#define INIT 0x04 /* the only positive logic output line */ +#define nSEL 0x08 +#define SEL 0x08 +#define ENIRQ 0x10 /* Enable IRQ via ACK line */ +#define ENBI 0x20 /* Enable bi-directional port */ + +#define OUTMASK 0x0B /* SEL, LF and STRB are hardware inverted */ + /* Use this mask only for the control output lines */ + /* XOR with this mask ( ^ OUTMASK ) */ + + +/* Control input lines + * Read from baseaddress+1 + */ +#define nFAULT 0x08 +#define FAULT 0x08 +#define SELIN 0x10 +#define PAPEREND 0x20 +#define nACK 0x40 +#define ACK 0x40 +#define BUSY 0x80 +#define IRQ 0x02 + +#define INMASK 0x84 /* BUSY input and the IRQ indicator are inverted */ + /* Use this mask only for the control input lines */ + /* XOR with this mask ( ^ OUTMASK ) */ + +#endif diff --git a/server/drivers/sed1330.c b/server/drivers/sed1330.c index 1233c2a..3ebb22f 100644 --- a/server/drivers/sed1330.c +++ b/server/drivers/sed1330.c @@ -383,7 +383,7 @@ sed1330_init( lcd_logical_driver * driver, char *args ) struct sched_param param; param.sched_priority=1; if (( sched_setscheduler(0, SCHED_RR, ¶m)) == -1) { - report( RPT_ERR, "HD44780_init: failed (%s)", strerror (errno)); + report( RPT_ERR, "SED1330: init failed (%s)", strerror (errno)); return -1; } }