]> git.webhop.me Git - lcd4linux.git/commitdiff
[lcd4linux @ 2001-02-13 09:00:13 by reinelt]
authorreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>
Tue, 13 Feb 2001 09:00:13 +0000 (09:00 +0000)
committerreinelt <reinelt@3ae390bd-cb1e-0410-b409-cd5a39f66f1f>
Tue, 13 Feb 2001 09:00:13 +0000 (09:00 +0000)
prepared framework for GPO's (general purpose outputs)

git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@77 3ae390bd-cb1e-0410-b409-cd5a39f66f1f

12 files changed:
BeckmannEgle.c
Crystalfontz.c
HD44780.c
MatrixOrbital.c
PalmPilot.c
Raster.c
SIN.c
Skeleton.c
XWindow.c
display.c
display.h
processor.c

index d43409244ecd558d19044368047967d7774d0384..bc6055ee09e12ea7cc82c2ffde95b7c512dd43de 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: BeckmannEgle.c,v 1.4 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: BeckmannEgle.c,v 1.5 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for Beckmann+Egle mini terminals
  *
  *
  *
  * $Log: BeckmannEgle.c,v $
+ * Revision 1.5  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.4  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -542,6 +546,6 @@ int BE_quit (void)
 }
 
 LCD BeckmannEgle[] = {
-  { "BLC100x", 0,  0, XRES, YRES, BARS, BE_init, BE_clear, BE_put, BE_bar, BE_flush, BE_quit },
+  { "BLC100x",0,0,XRES,YRES,BARS,0,BE_init,BE_clear,BE_put,BE_bar,NULL,BE_flush,BE_quit },
   { NULL }
 };
index f3aea3002f029dfa24aa70688a0080941dc2f4ad..c88f55d36751cf417da30dd96dbb038fab24c1d3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: Crystalfontz.c,v 1.5 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: Crystalfontz.c,v 1.6 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for display modules from Crystalfontz
  *
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  *
  * $Log: Crystalfontz.c,v $
+ * Revision 1.6  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.5  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -550,9 +554,9 @@ int cryfonflush() {
 }
 
 LCD Crystalfontz[] = {
-       { "626", 2, 16, XRES, YRES, BARS, cryfoninit, cryfonclear, cryfonput, cryfonbar, cryfonflush, cryfonquit },
-       { "636", 2, 16, XRES, YRES, BARS, cryfoninit, cryfonclear, cryfonput, cryfonbar, cryfonflush, cryfonquit },
-       { "632", 2, 16, XRES, YRES, BARS, cryfoninit, cryfonclear, cryfonput, cryfonbar, cryfonflush, cryfonquit },
-       { "634", 4, 20, XRES, YRES, BARS, cryfoninit, cryfonclear, cryfonput, cryfonbar, cryfonflush, cryfonquit },
-       { NULL }
+  { "626",2,16,XRES,YRES,BARS,0,cryfoninit,cryfonclear,cryfonput,cryfonbar,NULL,cryfonflush,cryfonquit },
+  { "636",2,16,XRES,YRES,BARS,0,cryfoninit,cryfonclear,cryfonput,cryfonbar,NULL,cryfonflush,cryfonquit },
+  { "632",2,16,XRES,YRES,BARS,0,cryfoninit,cryfonclear,cryfonput,cryfonbar,NULL,cryfonflush,cryfonquit },
+  { "634",4,20,XRES,YRES,BARS,0,cryfoninit,cryfonclear,cryfonput,cryfonbar,NULL,cryfonflush,cryfonquit },
+  { NULL }
 };
index 27b36928beb8b51eb63d21a86ef3d5f6d6511c70..2d0d687416c4637f3ebd89e0d8d8f753d72b6f42 100644 (file)
--- a/HD44780.c
+++ b/HD44780.c
@@ -1,4 +1,4 @@
-/* $Id: HD44780.c,v 1.9 2000/10/20 07:17:07 reinelt Exp $
+/* $Id: HD44780.c,v 1.10 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for display modules based on the HD44780 chip
  *
  *
  *
  * $Log: HD44780.c,v $
+ * Revision 1.10  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.9  2000/10/20 07:17:07  reinelt
  *
  *
@@ -540,6 +544,6 @@ int HD_quit (void)
 }
 
 LCD HD44780[] = {
-  { "HD44780", 0, 0, XRES, YRES, BARS, HD_init, HD_clear, HD_put, HD_bar, HD_flush, HD_quit },
+  { "HD44780",0,0,XRES,YRES,BARS,0,HD_init,HD_clear,HD_put,HD_bar,HD_gpo,HD_flush,HD_quit },
   { NULL }
 };
index 6388a161c3ce651dcbd2e0ca03d6363b2b1a6bf9..cb23d92d6abd6c3e5523fa3678ae56b2460ba5a3 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: MatrixOrbital.c,v 1.19 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: MatrixOrbital.c,v 1.20 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for Matrix Orbital serial display modules
  *
  *
  *
  * $Log: MatrixOrbital.c,v $
+ * Revision 1.20  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.19  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -536,6 +540,11 @@ int MO_bar (int type, int row, int col, int max, int len1, int len2)
   return 0;
 }
 
+int MO_gpo (int num, int val)
+{
+  return 0;
+}
+
 int MO_flush (void)
 {
   char buffer[256]="\376G";
@@ -581,10 +590,10 @@ int MO_quit (void)
 }
 
 LCD MatrixOrbital[] = {
-  { "LCD0821", 2,  8, XRES, YRES, BARS, MO_init, MO_clear, MO_put, MO_bar, MO_flush, MO_quit },
-  { "LCD1621", 2, 16, XRES, YRES, BARS, MO_init, MO_clear, MO_put, MO_bar, MO_flush, MO_quit },
-  { "LCD2021", 2, 20, XRES, YRES, BARS, MO_init, MO_clear, MO_put, MO_bar, MO_flush, MO_quit },
-  { "LCD2041", 4, 20, XRES, YRES, BARS, MO_init, MO_clear, MO_put, MO_bar, MO_flush, MO_quit },
-  { "LCD4021", 2, 40, XRES, YRES, BARS, MO_init, MO_clear, MO_put, MO_bar, MO_flush, MO_quit }, 
+  { "LCD0821",2, 8,XRES,YRES,BARS,0,MO_init,MO_clear,MO_put,MO_bar,MO_gpo,MO_flush,MO_quit },
+  { "LCD1621",2,16,XRES,YRES,BARS,0,MO_init,MO_clear,MO_put,MO_bar,MO_gpo,MO_flush,MO_quit },
+  { "LCD2021",2,20,XRES,YRES,BARS,0,MO_init,MO_clear,MO_put,MO_bar,MO_gpo,MO_flush,MO_quit },
+  { "LCD2041",4,20,XRES,YRES,BARS,0,MO_init,MO_clear,MO_put,MO_bar,MO_gpo,MO_flush,MO_quit },
+  { "LCD4021",2,40,XRES,YRES,BARS,0,MO_init,MO_clear,MO_put,MO_bar,MO_gpo,MO_flush,MO_quit },
   { NULL }
 };
index 940c30474ea3c9a0778f87f53d62b515cd72a544..44d7b864d9be2322eb39ab7eda9f8b570468beda 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: PalmPilot.c,v 1.3 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: PalmPilot.c,v 1.4 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for 3Com Palm Pilot
  *
  *
  *
  * $Log: PalmPilot.c,v $
+ * Revision 1.4  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.3  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -284,6 +288,6 @@ int Palm_quit (void)
 }
 
 LCD PalmPilot[] = {
-  { "PalmPilot", 0, 0, 0, 0, BARS, Palm_init, Palm_clear, Palm_put, Palm_bar, Palm_flush, Palm_quit },
+  { "PalmPilot",0,0,0,0,BARS,0,Palm_init,Palm_clear,Palm_put,Palm_bar,NULL,Palm_flush,Palm_quit },
   { NULL }
 };
index 9e9dc9879a54811b2f7116387890f80eee35a3fe..156106938b58484bbee8982b7631d3046acef9d1 100644 (file)
--- a/Raster.c
+++ b/Raster.c
@@ -1,4 +1,4 @@
-/* $Id: Raster.c,v 1.10 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: Raster.c,v 1.11 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for raster formats
  *
  *
  *
  * $Log: Raster.c,v $
+ * Revision 1.11  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.10  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -285,6 +289,6 @@ int Raster_bar (int type, int row, int col, int max, int len1, int len2)
 
 
 LCD Raster[] = {
-  { "PPM", 0, 0, 0, 0, BARS, Raster_init, Raster_clear, Raster_put, Raster_bar, Raster_flush },
+  { "PPM",0,0,0,0,BARS,0,Raster_init,Raster_clear,Raster_put,Raster_bar,NULL,Raster_flush },
   { NULL }
 };
diff --git a/SIN.c b/SIN.c
index 0c2ebcb3e29c69b3cf7fe9d7c35d1e5232c17d18..85ba29a54afb67ea7c832e20360711b43c072f70 100644 (file)
--- a/SIN.c
+++ b/SIN.c
@@ -1,4 +1,4 @@
-/* $Id: SIN.c,v 1.5 2000/12/07 20:47:54 reinelt Exp $
+/* $Id: SIN.c,v 1.6 2001/02/13 09:00:13 reinelt Exp $
  *
  * driver for SIN router displays
  *
  *
  *
  * $Log: SIN.c,v $
+ * Revision 1.6  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.5  2000/12/07 20:47:54  reinelt
  *
  * first try for SIN bars
@@ -255,6 +259,6 @@ int SIN_quit (void)
 }
 
 LCD SIN[] = {
-  { "SIN", 8, 40, XRES, YRES, BARS, SIN_init, SIN_clear, SIN_put, SIN_bar, SIN_flush, SIN_quit },
+  { "SIN",8,40,XRES,YRES,BARS,0,SIN_init,SIN_clear,SIN_put,SIN_bar,NULL,SIN_flush,SIN_quit },
   { NULL }
 };
index 16c0445ee9004047ea0c738a4fdbbad56bf7049d..eada5cf3ef00c387be55614f8aa1ec2a34943c08 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: Skeleton.c,v 1.5 2000/08/10 09:44:09 reinelt Exp $
+/* $Id: Skeleton.c,v 1.6 2001/02/13 09:00:13 reinelt Exp $
  *
  * skeleton driver for new display modules
  *
  *
  *
  * $Log: Skeleton.c,v $
+ * Revision 1.6  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.5  2000/08/10 09:44:09  reinelt
  *
  * new debugging scheme: error(), info(), debug()
@@ -90,6 +94,11 @@ int Skel_bar (int type, int row, int col, int max, int len1, int len2)
   return 0;
 }
 
+int Skel_gpo (int num, int val)
+{
+  return 0;
+}
+
 int Skel_flush (void)
 {
   return 0;
@@ -97,6 +106,6 @@ int Skel_flush (void)
 
 
 LCD Skeleton[] = {
-  { "Skeleton", 4, 20, 5, 8, BAR_L | BAR_R, Skel_init, Skel_clear, Skel_put, Skel_bar, Skel_flush },
+  { "Skeleton",4,20,5,8,BAR_L|BAR_R,0,Skel_init,Skel_clear,Skel_put,Skel_bar,Skel_gpo,Skel_flush },
   { NULL }
 };
index 7bbc3511716a1f9756fa7f39f1ca598f064fb777..a40dbe9613692f1b4c0be274b8e6d5cdf94040ae 100644 (file)
--- a/XWindow.c
+++ b/XWindow.c
@@ -1,4 +1,4 @@
-/* $Id: XWindow.c,v 1.21 2000/08/10 18:42:20 reinelt Exp $
+/* $Id: XWindow.c,v 1.22 2001/02/13 09:00:13 reinelt Exp $
  *
  * X11 Driver for LCD4Linux 
  *
  *
  *
  * $Log: XWindow.c,v $
+ * Revision 1.22  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.21  2000/08/10 18:42:20  reinelt
  *
  * fixed some bugs with the new syslog code
@@ -507,7 +511,7 @@ XEvent ev;
 }
 
 LCD XWindow[] = {
-       { "X11", 0, 0, 0, 0, BARS, xlcdinit, xlcdclear, xlcdput, xlcdbar, xlcdflush, xlcdquit },
+       { "X11",0,0,0,0,BARS,0,xlcdinit,xlcdclear,xlcdput,xlcdbar,NULL,xlcdflush,xlcdquit },
        { NULL }
 };
 
index 7d6f6737e36d458a727d9600a56c7b8b5b8407eb..497cf421ce5dc2ec1504fbf4e84794ec00b4089b 100644 (file)
--- a/display.c
+++ b/display.c
@@ -1,4 +1,4 @@
-/* $Id: display.c,v 1.21 2000/11/28 16:46:11 reinelt Exp $
+/* $Id: display.c,v 1.22 2001/02/13 09:00:13 reinelt Exp $
  *
  * framework for device drivers
  *
  *
  *
  * $Log: display.c,v $
+ * Revision 1.22  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.21  2000/11/28 16:46:11  reinelt
  *
  * first try to support display of SIN router
  * int lcd_bar (int type, int row, int col, int max, int len1, int len2)
  *    draws a specified bar at row, col with len
  *
+ * int lcd_gpo (int num, int val)
+ *    sets GPO #num to val
+ *
  * int lcd_flush (void)
  *    flushes the framebuffer to the display
  *
@@ -253,6 +260,13 @@ int lcd_bar (int type, int row, int col, int max, int len1, int len2)
   return Lcd->bar (type & BAR_HV, row-1, col-1, max, len1, len2);
 }
 
+int lcd_gpo (int num, int val)
+{
+  if (num<1 || num>Lcd->gpos) return -1;
+  if (Lcd->gpo==NULL) return 0;
+  return Lcd->gpo(num-1, val);
+}
+
 int lcd_flush (void)
 {
   if (Lcd->flush==NULL) return 0;
index 990ed7c05307be57659654e633bf91f3237ea520..c4c74d64dee40ac3d056c2d29d25838bf56be7e3 100644 (file)
--- a/display.h
+++ b/display.h
@@ -1,4 +1,4 @@
-/* $Id: display.h,v 1.11 2000/08/09 09:50:29 reinelt Exp $
+/* $Id: display.h,v 1.12 2001/02/13 09:00:13 reinelt Exp $
  *
  * framework for device drivers
  *
  *
  *
  * $Log: display.h,v $
+ * Revision 1.12  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
+ *
  * Revision 1.11  2000/08/09 09:50:29  reinelt
  *
  * opened 0.98 development
@@ -92,10 +96,12 @@ typedef struct LCD {
   int xres;
   int yres;
   int bars;
+  int gpos;
   int (*init) (struct LCD *Self);
   int (*clear) (void);
   int (*put) (int x, int y, char *text);
   int (*bar) (int type, int x, int y, int max, int len1, int len2);
+  int (*gpo) (int num, int val);
   int (*flush) (void);
   int (*quit) (void);
 } LCD;
@@ -111,6 +117,7 @@ int lcd_query (int *rows, int *cols, int *xres, int *yres, int *bars);
 int lcd_clear (void);
 int lcd_put (int row, int col, char *text);
 int lcd_bar (int type, int row, int col, int max, int len1, int len2);
+int lcd_gpo (int num, int val);
 int lcd_flush (void);
 int lcd_quit (void);
 
index 752c48fd755c914da6b4f25ebd26a9fab8fcd276..18eb22ec6b8d9947a10d6b455352892b0e157526 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: processor.c,v 1.9 2001/02/11 23:34:07 reinelt Exp $
+/* $Id: processor.c,v 1.10 2001/02/13 09:00:13 reinelt Exp $
  *
  * main data processing
  *
  *
  *
  * $Log: processor.c,v $
- * Revision 1.9  2001/02/11 23:34:07  reinelt
+ * Revision 1.10  2001/02/13 09:00:13  reinelt
+ *
+ * prepared framework for GPO's (general purpose outputs)
  *
+ * Revision 1.9  2001/02/11 23:34:07  reinelt
  *
- * fixed a small bug where the throughput of an offline ISDN connection is displayed as '----', but the
- * online value is 5 chars long. corrected to ' ----'.
- * thanks to Carsten Nau <info@cnau.de>
+ * fixed a small bug where the throughput of an offline ISDN connection 
+ * is displayed as '----', but the online value is 5 chars long. 
+ * corrected to ' ----'. Thanks to Carsten Nau <info@cnau.de> 
  *
  * Revision 1.8  2000/08/10 09:44:09  reinelt
  *