home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2001 September / MICD2001_09_NR1.iso / Www / @t / dane / Sym.bas < prev    next >
BASIC Source File  |  2001-07-21  |  2KB  |  86 lines

  1. DIM miesiac, dzien, godz, min AS INTEGER
  2. DIM prz(7) AS SINGLE
  3. OUT &H378, 0
  4. FOR i = 0 TO 7: prz(i) = 0: NEXT i
  5. SCREEN 12: CLS
  6. LOCATE 1, 1: PRINT CHR$(201)
  7. LOCATE 1, 49: PRINT CHR$(187)
  8. FOR i = 2 TO 48: LOCATE 1, i: PRINT CHR$(205)
  9. LOCATE 3, i: PRINT CHR$(205)
  10. LOCATE 5, i: PRINT CHR$(205)
  11. LOCATE 14, i: PRINT CHR$(205)
  12. NEXT i
  13. FOR i = 2 TO 13
  14. LOCATE i, 1: PRINT CHR$(186)
  15. LOCATE i, 49: PRINT CHR$(186)
  16. NEXT i
  17. LOCATE 14, 1: PRINT CHR$(200)
  18. LOCATE 14, 49: PRINT CHR$(188)
  19. LOCATE 3, 1: PRINT CHR$(204)
  20. LOCATE 5, 1: PRINT CHR$(204)
  21. LOCATE 3, 49: PRINT CHR$(185)
  22. LOCATE 5, 49: PRINT CHR$(185)
  23. COLOR 2: LOCATE 4, 11: PRINT "Symulator obecnosci domownikow"
  24. COLOR 15
  25. FOR i = 1 TO 8
  26. LOCATE i + 5, 3: PRINT "Przekaznik "; i; ":      ";
  27. COLOR 7: PRINT "<NIE>": COLOR 15
  28. NEXT i
  29. LOCATE 16, 1: PRINT "<1...8> - zmiana stanu przekaznika 1...8"
  30. PRINT "<Q> - wyjscie z programu"
  31. prog: godz = VAL(LEFT$(TIME$, 2))
  32. min = VAL(MID$(TIME$, 4, 2))
  33. miesiac = VAL(LEFT$(DATE$, 2))
  34. dzien = VAL(MID$(DATE$, 4, 2))
  35. LOCATE 2, 3: PRINT "    Czas: G"; godz; " M"; min; "     Data: D"; dzien; " M"; miesiac
  36. a$ = INKEY$
  37. po: IF a$ <> "" THEN
  38. IF a$ = "q" OR a$ = "Q" THEN OUT &H378, 0: END
  39. IF VAL(a$) > 0 AND VAL(a$) < 9 THEN GOSUB czy
  40. END IF
  41. RESTORE
  42. pic:
  43. READ d: IF d = 0 THEN GOTO prog
  44. READ g, m, mi, k, v
  45. IF d = dzien AND mi = miesiac THEN
  46. IF g = godz AND m = min THEN GOTO zmi
  47. END IF
  48. GOTO pic
  49. czy: IF prz(VAL(a$) - 1) = 1 THEN
  50. prz(VAL(a$) - 1) = -1
  51. ELSE
  52. prz(VAL(a$) - 1) = 1
  53. END IF
  54. cy: a = VAL(a$) - 1
  55. LOCATE a + 6, 24
  56. IF prz(a) = 1 THEN
  57. PRINT "<TAK>"
  58. ELSE COLOR 7: PRINT "<NIE>": COLOR 15
  59. END IF
  60. GOSUB dom: GOTO prog
  61. zmi:
  62. a$ = STR$(k)
  63. IF prz(VAL(a$) - 1) = v THEN GOTO prog
  64. GOTO czy
  65. REM ---------------------------
  66. REM 1 - cyfra - dzien
  67. REM 2 -   ''  - godzina
  68. REM 3 -   ''  - minuta
  69. REM 4 -   ''  - miesiac
  70. REM 5 -   ''  - numer przekaznika <1...8>
  71. REM 6 -   ''  - stan <1 -wlonczony>, <-1 -wylonczony>
  72. REM --- dane konczom sie zerem
  73. DATA 23,20,1,8,3,-1,0
  74. dom: b = prz(a)
  75. IF a = 0 THEN c = c + 1 * b
  76. IF a = 1 THEN c = c + 2 * b
  77. IF a = 2 THEN c = c + 4 * b
  78. IF a = 3 THEN c = c + 8 * b
  79. IF a = 4 THEN c = c + 16 * b
  80. IF a = 5 THEN c = c + 32 * b
  81. IF a = 6 THEN c = c + 64 * b
  82. IF a = 7 THEN c = c + 128 * b
  83. OUT &H378, c
  84. LOCATE 20, 3: PRINT "Wart. portu: "; c; "  ": RETURN
  85.  
  86.