From 147c48fbdaaeb39a2b49b18e4cbc7cb3e31d6f2f Mon Sep 17 00:00:00 2001 From: reinelt Date: Fri, 22 Aug 2003 03:45:09 +0000 Subject: [lcd4linux @ 2003-08-22 03:45:08 by reinelt] bug in parallel port code fixed, more icons stuff git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@226 3ae390bd-cb1e-0410-b409-cd5a39f66f1f --- HD44780.c | 9 ++++++--- MatrixOrbital.c | 17 ++++++++++++++--- parport.c | 7 +++++-- 3 files changed, 25 insertions(+), 8 deletions(-) diff --git a/HD44780.c b/HD44780.c index 5417877..d4b27e4 100644 --- a/HD44780.c +++ b/HD44780.c @@ -1,4 +1,4 @@ -/* $Id: HD44780.c,v 1.34 2003/08/19 05:23:55 reinelt Exp $ +/* $Id: HD44780.c,v 1.35 2003/08/22 03:45:08 reinelt Exp $ * * driver for display modules based on the HD44780 chip * @@ -27,6 +27,9 @@ * * * $Log: HD44780.c,v $ + * Revision 1.35 2003/08/22 03:45:08 reinelt + * bug in parallel port code fixed, more icons stuff + * * Revision 1.34 2003/08/19 05:23:55 reinelt * HD44780 dual-controller patch from Jesse Brook Kovach * @@ -469,9 +472,9 @@ int HD_init (LCD *Self) return -1; } - // clear RW + // clear all signals if (Bits==8) { - parport_control (SIGNAL_RW, 0); + parport_control (SIGNAL_RS|SIGNAL_RW|SIGNAL_ENABLE|SIGNAL_ENABLE2|SIGNAL_GPO, 0); } else { parport_data (0); } diff --git a/MatrixOrbital.c b/MatrixOrbital.c index 68198b3..36e6961 100644 --- a/MatrixOrbital.c +++ b/MatrixOrbital.c @@ -1,4 +1,4 @@ -/* $Id: MatrixOrbital.c,v 1.31 2003/08/19 04:28:41 reinelt Exp $ +/* $Id: MatrixOrbital.c,v 1.32 2003/08/22 03:45:08 reinelt Exp $ * * driver for Matrix Orbital serial display modules * @@ -20,6 +20,9 @@ * * * $Log: MatrixOrbital.c,v $ + * Revision 1.32 2003/08/22 03:45:08 reinelt + * bug in parallel port code fixed, more icons stuff + * * Revision 1.31 2003/08/19 04:28:41 reinelt * more Icon stuff, minor glitches fixed * @@ -417,7 +420,15 @@ int MO_bar (int type, int row, int col, int max, int len1, int len2) int MO_icon (int num, int row, int col, unsigned char *bitmap) { - // Fixme: ToDo!! + // icons use last ascii codes + char ascii=CHARS-num; + + MO_define_char (ascii, bitmap); + MO_goto(row, col); + MO_write(&ascii, 1); + FrameBuffer1[row*Lcd.cols+col]=(char)ascii; + FrameBuffer2[row*Lcd.cols+col]=(char)ascii; + return 0; } @@ -441,7 +452,7 @@ static int MO_flush (int protocol) int row, col, pos1, pos2; int c, equal; int gpo; - + bar_process(MO_define_char); for (row=0; row