home *** CD-ROM | disk | FTP | other *** search
/ Boston 2 / boston-2.iso / DOS / PROGRAM / BASIC / POWBASIC / LIBRARY1 / GRAPH1.ZIP / CLOCK.BAS next >
BASIC Source File  |  1990-09-20  |  2KB  |  70 lines

  1. 'Program Name    : Clock.bas - Read Computer's Clock, Display in Graphics
  2. 'Author          : Spectra Publishing - Tech Support  Lloyd L. Smith
  3. 'Date            : 09-19-90
  4. 'Compuserve #    : GO PCVENB, Vendor #12,  Tech Support ID 71530,2640
  5. 'Tech Support BBS: 813-625-1721, PC-Board, 8,n,1 USR HST 300 - 14.4, 24hrs
  6. 'Tech Support Fax: 813-625-1698  G2 & G3 compatible
  7. 'Tech Support Voc: 813-625-1172
  8.  
  9.  
  10. SCREEN 9
  11. DIM Tm(10)
  12.  
  13. ' Pattern used for seven segment display
  14. '    2
  15. '    --
  16. '  1| 4|3
  17. '    --
  18. '  5| 7|6
  19. '    --
  20.  
  21. idle:
  22. x = 10: y = 15
  23. fg = 12: bg = 0
  24. 'again:
  25. k$ = INKEY$
  26. IF k$ = CHR$(27) THEN SYSTEM
  27. Tm$ = TIME$
  28. 'LOCATE 10, 1: PRINT Tm$
  29. Tm(1) = VAL(MID$(Tm$, 1, 1))
  30. Tm(2) = VAL(MID$(Tm$, 2, 1))
  31. Tm(3) = 10 'VAL(MID$(Tm$, 3, 1))
  32. Tm(4) = VAL(MID$(Tm$, 4, 1))
  33. Tm(5) = VAL(MID$(Tm$, 5, 1))
  34. Tm(6) = 10 'VAL(MID$(Tm$, 6, 1))
  35. Tm(7) = VAL(MID$(Tm$, 7, 1))
  36. Tm(8) = VAL(MID$(Tm$, 8, 1))
  37. IF Tm(1) = 1 AND Tm(2) > 3 THEN Tm(1) = 10: Tm(2) = Tm(2) - 2
  38. FOR i = 1 TO 8
  39. a = Tm(i)
  40. '                     1234567
  41. IF a = 1 THEN pat$ = "0010010"
  42. IF a = 2 THEN pat$ = "0111101"
  43. IF a = 3 THEN pat$ = "0111011"
  44. IF a = 4 THEN pat$ = "1011010"
  45. IF a = 5 THEN pat$ = "1101011"
  46. IF a = 6 THEN pat$ = "1001111"
  47. IF a = 7 THEN pat$ = "0110010"
  48. IF a = 8 THEN pat$ = "1111111"
  49. IF a = 9 THEN pat$ = "1111011"
  50. IF a = 0 THEN pat$ = "1110111"
  51. IF a = 10 THEN pat$ = "0000000"
  52.  
  53. 'left side of seven segment
  54. IF MID$(pat$, 1, 1) = "1" THEN LINE (x, y)-(x + 1, y + 10), fg, BF ELSE LINE (x, y)-(x + 1, y + 10), bg, BF
  55. IF MID$(pat$, 5, 1) = "1" THEN LINE (x, y + 12)-(x + 1, y + 22), fg, BF ELSE LINE (x, y + 12)-(x + 1, y + 22), bg, BF
  56. 'top line of seven segment display
  57. IF MID$(pat$, 2, 1) = "1" THEN LINE (x + 3, y)-(x + 19, y), fg ELSE LINE (x + 3, y)-(x + 19, y), bg
  58.  
  59. 'middle line of seven segment display
  60. IF MID$(pat$, 4, 1) = "1" THEN LINE (x + 3, y + 11)-(x + 19, y + 11), fg ELSE LINE (x + 3, y + 11)-(x + 19, y + 11), bg
  61. 'bottom line of seven segement display
  62. IF MID$(pat$, 7, 1) = "1" THEN LINE (x + 3, y + 22)-(x + 19, y + 22), fg ELSE LINE (x + 3, y + 22)-(x + 19, y + 22), bg
  63. 'right side of seven segment
  64. IF MID$(pat$, 3, 1) = "1" THEN LINE (x + 21, y)-(x + 22, y + 10), fg, BF ELSE LINE (x + 21, y)-(x + 22, y + 10), bg, BF
  65. IF MID$(pat$, 6, 1) = "1" THEN LINE (x + 21, y + 12)-(x + 22, y + 22), fg, BF ELSE LINE (x + 21, y + 12)-(x + 22, y + 22), bg, BF
  66.  
  67.  x = x + 30
  68.  NEXT i
  69. GOTO idle
  70.