home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / elan / clock / clsscd.eln < prev    next >
Text File  |  1988-10-13  |  1KB  |  51 lines

  1.  
  2. reset display:
  3.   INT VAR port addr;
  4.   reset 4 digit display.
  5.  
  6. PROC put 2 digits (INT CONST n):
  7.   put character (n DIV 10);
  8.   put character (n MOD 10)
  9. ENDPROC put 2 digits;
  10.  
  11. PROC put character (INT CONST n):
  12.   go to next position;
  13.   INT CONST segs :: SELECT n OF
  14.     CASE 0: enabl + seg a + seg b + seg c
  15.                                   + seg d + seg e + seg f
  16.     CASE 1: enabl + seg b + seg c
  17.     CASE 2: enabl + seg a + seg b + seg g + seg e + seg d
  18.     CASE 3: enabl + seg a + seg b + seg g + seg c + seg d
  19.     CASE 4: enabl + seg f + seg g + seg b + seg c
  20.     CASE 5: enabl + seg a + seg f + seg g + seg c + seg d
  21.     CASE 6: enabl + seg a + seg f + seg e
  22.                                   + seg d + seg c + seg g
  23.     CASE 7: enabl + seg a + seg b + seg c
  24.     CASE 8: enabl + seg a + seg b + seg c
  25.                           + seg d + seg e + seg f + seg g
  26.     CASE 9: enabl + seg g + seg f + seg a
  27.                                   + seg b + seg c + seg d
  28.     OTHERWISE dsabl
  29.   ENDSELECT;
  30.   to port (port addr, segs)
  31. ENDPROC put character;
  32.  
  33. PROC put separator (TEXT CONST sep):
  34.   IF sep = ":"
  35.   THEN to port (0, enabl)
  36.   ELSE
  37.     # sep = " " #
  38.     to port (0, dsabl)
  39.   FI
  40. ENDPROC put separator;
  41.  
  42. PROC go to next position:
  43.   port addr := port addr MOD 4 + 1;
  44.   to port (port addr, dsabl)
  45. ENDPROC go to next position;
  46.  
  47. PROC move to display position:
  48.   port addr := 4
  49. ENDPROC move to display position;
  50.  
  51.