diff options
| -rw-r--r-- | MatrixOrbital.c | 10 | ||||
| -rw-r--r-- | README | 18 | ||||
| -rwxr-xr-x | configure | 2 | ||||
| -rw-r--r-- | configure.in | 2 | ||||
| -rw-r--r-- | lcd4linux.c | 64 | 
5 files changed, 65 insertions, 31 deletions
| diff --git a/MatrixOrbital.c b/MatrixOrbital.c index fd77b85..ebd224d 100644 --- a/MatrixOrbital.c +++ b/MatrixOrbital.c @@ -1,4 +1,4 @@ -/* $Id: MatrixOrbital.c,v 1.13 2000/04/07 05:42:20 reinelt Exp $ +/* $Id: MatrixOrbital.c,v 1.14 2000/04/10 04:40:53 reinelt Exp $   *   * driver for Matrix Orbital serial display modules   * @@ -20,6 +20,10 @@   *   *   * $Log: MatrixOrbital.c,v $ + * Revision 1.14  2000/04/10 04:40:53  reinelt + * + * minor changes and cleanups + *   * Revision 1.13  2000/04/07 05:42:20  reinelt   *   * UUCP style lockfiles for the serial port @@ -542,10 +546,12 @@ int MO_flush (void)    return 0;  } +int lcd_hello (void); // prototype from lcd4linux.c +  static void MO_quit (int signal)  {    MO_clear(); -  MO_flush(); +  lcd_hello();    close (Device);    unlock_port(Port);    exit (0); @@ -1,5 +1,5 @@  # -# $Id: README,v 1.3 2000/04/03 04:46:38 reinelt Exp $ +# $Id: README,v 1.4 2000/04/10 04:40:53 reinelt Exp $  #  This is the README file for lcd4linux @@ -22,16 +22,16 @@ print version number and a small help text, then exit  lcd4linux -l   list available drivers -lcd4linux [-c key=val] [-f config-file] [-o output] +lcd4linux [-c key=val] [-f config-file] [-o output] [-q]  run lcd4linux   use configuration from 'config-file' instead of /etc/lcd4linux.conf  write picture to 'output' (raster driver only)  overwrite entries from the config-file with '-c' - +supress startup splash screen with '-q_  SUPPORTED DISPLAYS -* Matrox Orbital <http://www.matrixorbital.com> +* Matrox Orbital: <http://www.matrixorbital.com>    "LCD0821": 2 lines by  8 characters    "LCD1621": 2 lines by 16 characters @@ -39,7 +39,15 @@ SUPPORTED DISPLAYS    "LCD2041": 4 lines by 20 characters (tested)    "LCD4021": 2 lines by 40 characters -* X11: not available now, but on top of my ToDo-List! +* X11 +  thanks to Herbert Rosmanith <herp@wildsau.idv.uni-linz.ac.at> a driver for the  +  X Window System is available. It supports any size at any resolution. A very +  small XLCD4Linux-Window can even swallow on the KDE Panel! +   +* Raster formats: +  a generic raster driver (which is used by the X11-driver, too) is availiable, +  PPM (portable pixmap) is the only output format at the moment. I'm working +  on PNG!  * other displays: lcd4linux and especially the display driver code is very modular,     so it should be quite easy to write a driver for any display. See README.driver @@ -693,7 +693,7 @@ fi  PACKAGE=lcd4linux -VERSION=0.96a +VERSION=0.97  if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then    { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } diff --git a/configure.in b/configure.in index f5ae8e2..fbc3775 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@  dnl Process this file with autoconf to produce a configure script.  AC_INIT(lcd4linux.c) -AM_INIT_AUTOMAKE(lcd4linux, 0.96a) +AM_INIT_AUTOMAKE(lcd4linux, 0.97)  dnl Checks for programs.  AC_PROG_AWK diff --git a/lcd4linux.c b/lcd4linux.c index 6963609..f41af96 100644 --- a/lcd4linux.c +++ b/lcd4linux.c @@ -1,4 +1,4 @@ -/* $Id: lcd4linux.c,v 1.18 2000/04/07 05:42:20 reinelt Exp $ +/* $Id: lcd4linux.c,v 1.19 2000/04/10 04:40:53 reinelt Exp $   *   * LCD4Linux   * @@ -20,6 +20,10 @@   *   *   * $Log: lcd4linux.c,v $ + * Revision 1.19  2000/04/10 04:40:53  reinelt + * + * minor changes and cleanups + *   * Revision 1.18  2000/04/07 05:42:20  reinelt   *   * UUCP style lockfiles for the serial port @@ -121,31 +125,43 @@ int tick, tack;  static void usage(void)  {    printf ("%s\n", release); -  printf ("usage: lcd4linux [-h] [-l] [-c key=value] [-f config-file] [-o output-file]\n"); +  printf ("usage: lcd4linux [-h] [-l] [-c key=value] [-f config-file] [-o output-file] [-q]\n");  } -static int hello (void) +int lcd_hello (void)  { -  int x, y; +  int i, x, y, flag; +  char *line1[] = { "* LCD4Linux V" VERSION " *", +		    "LCD4Linux " VERSION, +		    "LCD4Linux", +		    "L4Linux", +		    NULL }; +   +  char *line2[] = { "(c) 2000 M.Reinelt", +		    "(c) M.Reinelt", +		    NULL };    lcd_query (&y, &x, NULL, NULL, NULL); -  if (x>=20) { -    lcd_put (1, 1, "* LCD4Linux V" VERSION " *"); -    lcd_put (2, 1, " (c) 2000 M.Reinelt"); -  } else if (x >=16) { -    lcd_put (1, 1, "LCD4Linux " VERSION); -    lcd_put (2, 1, "(c) M.Reinelt"); -  } else if (x >=9) { -    lcd_put (1, 1, "LCD4Linux"); -  } else if (x>=7) { -    lcd_put (1, 1, "L4Linux"); -  } else return 0; +  flag=0; +  for (i=0; line1[i]; i++) { +    if (strlen(line1[i])<=x) { +      lcd_put (1, (x-strlen(line1[i]))/2+1, line1[i]); +      flag=1; +      break; +    } +  } -  lcd_put (1, 1, "* LCD4Linux V" VERSION " *"); -  lcd_put (2, 1, " (c) 2000 M.Reinelt"); -  lcd_flush(); -  return 1; +  for (i=0; line2[i]; i++) { +    if (strlen(line2[i])<=x) { +      lcd_put (2, (x-strlen(line2[i]))/2+1, line2[i]); +      flag=1; +      break; +    } +  } +   +  if (flag) lcd_flush(); +  return flag;  }  int main (int argc, char *argv[]) @@ -153,8 +169,9 @@ int main (int argc, char *argv[])    char *cfg="/etc/lcd4linux.conf";    char *driver;    int c, smooth; -   -  while ((c=getopt (argc, argv, "c:f:hlo:"))!=EOF) { +  int quiet=0; + +  while ((c=getopt (argc, argv, "c:f:hlo:q"))!=EOF) {      switch (c) {      case 'c':        if (cfg_cmd (optarg)<0) { @@ -175,6 +192,9 @@ int main (int argc, char *argv[])      case 'o':        output=optarg;        break; +    case 'q': +      quiet++; +      break;      default:        exit(2);      } @@ -210,7 +230,7 @@ int main (int argc, char *argv[])    process_init();    lcd_clear(); -  if (hello()) { +  if (!quiet && lcd_hello()) {      sleep (3);      lcd_clear();    } | 
