home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / commodore-scene-files / Coverdisks / CDU / V4D08.D64 / bb.eg#1 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  1.2 KB  |  63 lines

  1. 5 REM *** REAL TIME DIGITAL CLOCK ***
  2. 6 REM ***   12 HOUR AND ALARM     ***
  3. 7 :
  4. 8 REM SETUP AND INITIALISE CLOCK ***
  5. 9 :
  6. 10 POKE53281,0:POKE53280,0:AN=0
  7. 20 GOSUB200
  8. 30 TI$ = H$+M$+S$
  9. 40 GOSUB300
  10. 50 GOSUB500
  11. 97 :
  12. 98 REM *** MAIN PROCESSING LOOP ***
  13. 99 :
  14. 100 IF LEFT$(TI$,2)="13" THEN GOSUB 400
  15. 110 H1$=LEFT$(TI$,2)
  16. 120 M1$=MID$(TI$,3,2)
  17. 130 S1$=RIGHT$(TI$,2)
  18. 140 PRINT "[145][145][150]" SPC(14) H1$ SPC(1) M1$ SPC(1) S1$ SPC(1) AM$ ""
  19. 150 IF AL THEN IF AL$=TI$ THEN AL=2
  20. 160 IF AL=2 THEN GOSUB450
  21. 170 GETA$:IF A$<>"" THEN AL=0:POKE53280,0
  22. 180 GOTO100
  23. 196 :
  24. 197 REM     *** INPUT SECTION ***
  25. 198 REM *** AM/PM HOURS/MINS/SECS ***
  26. 199 :
  27. 200 INPUT"[147]AM/PM";AM$:IF LEN(AM$)>2 THEN 200
  28. 210 AM$=""+AM$
  29. 220 INPUT "[147]HOURS";H$:  IF LEN(H$)>2 THEN 220
  30. 230 INPUT "[147]MINUTES";M$:IF LEN(M$)>2 THEN 230
  31. 240 INPUT "[147]SECONDS";S$:IF LEN(S$)>2 THEN 240
  32. 250 RETURN
  33. 297 :
  34. 298 REM *** SET ALARM ****
  35. 299 :
  36. 300 PRINT "[147]SET ALARM <Y OR N>?"
  37. 310 GET K$:IF K$="" THEN 310
  38. 320 IF K$="Y" THEN 350
  39. 330 IF K$<>"N" THEN 310
  40. 340 RETURN
  41. 350 GOSUB 220
  42. 360 AL$ = H$+M$+S$: AL=1
  43. 370 RETURN
  44. 397 :
  45. 398 REM ***  SWITCH AM - PM  ***
  46. 399 :
  47. 400 N$ = "01" + MID$(TI$,3,4): TI$=N$
  48. 410 IF AM$="AM" THEN AM$="PM":RETURN
  49. 420 AM$="AM"
  50. 430 RETURN
  51. 440 :
  52. 441 REM *** EXECUTE ALARM ***
  53. 442 :
  54. 450 POKE53280,X:X=X+1:IF X>15 THEN X=0
  55. 460 RETURN
  56. 497 :
  57. 498 REM *** PRINT CLOCK DISPLAY ***
  58. 499 :
  59. 500 PRINT "[147]"TAB(13) "[213][192][192][178][192][192][178][192][192][178][192][192][201]"
  60. 510 PRINT TAB(13) "[221]  :  :  [221]  [221]"
  61. 520 PRINT TAB(13) "[202][192][192][177][192][192][177][192][192][177][192][192][203]"
  62. 530 RETURN
  63.