home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib29a.dsk / SEPTEMBER.1986 / TIME.DEMO.bas < prev    next >
BASIC Source File  |  2023-02-26  |  2KB  |  40 lines

  1. 10  REM  **********************
  2. 20  REM  * TIME.DEMO          *
  3. 30  REM  * COPYRIGHT 1986 BY  *
  4. 40  REM  * MICROSPARC, INC.   *
  5. 50  REM  * CONCORD, MA  01742 *
  6. 60  REM  **********************
  7. 70  HOME 
  8. 80 CVEC = 48902: REM  CLOCK VECTOR
  9. 90 CL = 0: IF  PEEK(CVEC) < >96  THEN CL = 1
  10. 100  IF  PEEK(48896) < >76  THEN  VTAB 7: PRINT "THIS PROGRAM ONLY WORKS UNDER PRODOS": END 
  11. 110  ONERR  GOTO 370
  12. 120  PRINT  CHR$(4)"BRUN UNIV.APSFT": POKE 216,0
  13. 130  IF CL  THEN  &  AT (8,2):A$ = "A clock card is installed": &  TEXT (A$): GOTO 240
  14. 140  &  AT (8,2):A$ = "No clock card installed": &  TEXT (A$)
  15. 150 A$ = "Enter hours (0-23): ": &  AT (0,4): &  TEXT (A$): &  INPUT (2,H$,H$):H% =  VAL(H$)
  16. 160 A$ = "Enter minutes (0-59): ": &  AT (0,5): &  TEXT (A$): &  INPUT (2,M$,M$):M% =  VAL(M$)
  17. 170  ONERR  GOTO 330: REM  CHECK FOR VALID TIME
  18. 180  & S(H%,M%):A$ = "The time is now set": &  AT (0,7): &  TEXT (A$)
  19. 190 A$ = "Enter month (1-12): ": &  AT (0,9): &  TEXT (A$): &  INPUT (2,MN$,MN$):MN% =  VAL(MN$)
  20. 200 A$ = "Enter day (1-31): ": &  AT (0,10): &  TEXT (A$): &  INPUT (2,DA$,DA$):DA% =  VAL(DA$)
  21. 210 A$ = "Enter year (0-99): ": &  AT (0,11): &  TEXT (A$): &  INPUT (2,YR$,YR$):YR% =  VAL(YR$)
  22. 220  ONERR  GOTO 350: REM  CHECK FOR VALID DATE
  23. 230  & D(MN%,DA%,YR%):A$ = "The date is now set": &  AT (0,13): &  TEXT (A$)
  24. 240  &  AT (0,22):A$ = "Press  <RETURN> to read date and time": &  TEXT (A$)
  25. 250  GET CH$
  26. 260  & T(H%,M%): & R(MN%,DA%,YR%)
  27. 270  &  AT (0,20)
  28. 280 A$ = "The time is " + STR$(H%) + LEFT$(":0",(M% <10) +1) + STR$(M%): &  TEXT (A$)
  29. 290  &  AT (0,21)
  30. 300 A$ = "The date is " + STR$(MN%) +"/" + STR$(DA%) +"/" + STR$(YR%): &  TEXT (A$)
  31. 310  &  AT (0,22): CALL  -958
  32. 320  & Q: END 
  33. 330  POKE 216,0:A$ = "Invalid time entered": &  AT (0,21): CALL  -958: &  TEXT (A$):A$ = "Press <RETURN> to continue": &  AT (0,22): &  TEXT (A$)
  34. 340  GET CH$: CALL  -3288: &  AT (0,4): CALL  -958: GOTO 150
  35. 350  POKE 216,0:A$ = "Invalid date entered": &  AT (0,21): CALL  -958: &  TEXT (A$):A$ = "Press <RETURN> to continue": &  AT (0,22): &  TEXT (A$)
  36. 360  GET CH$: CALL  -3288: &  AT (0,9): CALL  -958: GOTO 190
  37. 370 EE =  PEEK(222): POKE 216,0
  38. 380  HOME : VTAB 7
  39. 390  IF EE = 6  THEN  PRINT "THIS PROGRAM REQUIRES THAT THE FILE": INVERSE : PRINT "UNIV.APSFT";: NORMAL : PRINT " BE ON THE SAME DISK": END 
  40. 400  PRINT "I/O ERROR": END