home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib31a.dsk / APRIL.1987 / CHAMELEON.DEMO.bas < prev    next >
BASIC Source File  |  2023-02-26  |  4KB  |  75 lines

  1. 10  REM  ************************
  2. 20  REM  * CHAMELEON.DEMO       *
  3. 30  REM  * BY BOB SABISTON      *
  4. 40  REM  * COPYRIGHT (C) 1987   *
  5. 50  REM  * BY MICROSPARC, INC.  *
  6. 60  REM  * CONCORD, MA  01742   *
  7. 70  REM  ************************
  8. 80  ONERR  GOTO 730
  9. 90  PRINT  CHR$(4)"BLOAD CHAMELEON"
  10. 100  HIMEM: 37888 -1024 *( PEEK(48896) = 76)
  11. 110  TEXT : HOME : ONERR  GOTO 660
  12. 120  PRINT "CHAMELEON.DEMO": PRINT "BY BOB SABISTON": PRINT "COPYRIGHT 1987 BY MICROSPARC, INC."
  13. 130  FOR X = 1 TO 39: PRINT "-";: NEXT : PRINT 
  14. 140  VTAB 8
  15. 150  PRINT "(1) COLOR CHANGE DEMO"
  16. 160  PRINT "(2) FADE-IN DEMO"
  17. 170  PRINT "(3) QUIT"
  18. 180  VTAB 22: PRINT "SELECT MENU ITEM: ";
  19. 190  POKE  -16368,0: GET A$: POKE  -16368,0:A =  VAL(A$): IF A <1  OR A >3  THEN  PRINT  CHR$(7);: GOTO 190
  20. 200  ON A GOTO 230,450
  21. 210  TEXT : HOME : END 
  22. 220  REM  COLOR CHANGE DEMO
  23. 230  POKE  -16304,0: POKE  -16297,0: POKE  -16301,0: VTAB 21: HTAB 1
  24. 240  PRINT "YOUR PICTURE MUST BE ON PAGE 1."
  25. 250 AD = 2000: GOSUB 580
  26. 260  HOME : VTAB 22: HTAB 1
  27. 270  PRINT "CHANGE FROM COLOR (0-7) ";
  28. 280  POKE  -16368,0: GET A$: PRINT A$;:A =  VAL(A$): IF (((A = 0)  AND (A$ < >"0"))  OR (A >7))  THEN 260
  29. 290 : PRINT : POKE 0,A
  30. 300  HTAB 10: PRINT "TO COLOR (0-7) ";
  31. 310  POKE  -16368,0: GET A$: PRINT A$;:A =  VAL(A$): IF (((A = 0)  AND (A$ < >"0"))  OR (A >7))  THEN 310
  32. 320  POKE  -16302,0
  33. 330  PRINT : POKE 1,A: CALL 37888
  34. 340  POKE  -16301,0: HOME : VTAB 21
  35. 350  PRINT "CHANGE ANOTHER COLOR? (Y/N)";
  36. 360  GET A$: IF A$ = "Y"  OR A$ =  CHR$(121)  THEN 260
  37. 370  IF A$ = "N"  OR A$ =  CHR$(110)  THEN 110
  38. 380  PRINT  CHR$(7);: GOTO 360
  39. 390  REM  FADE-IN DEMO. THIS DEMO CYCLES
  40. 400  REM  AUTOMATICALLY THROUGH ALL OF
  41. 410  REM  HI-RES COLORS. IT REPLACES THE
  42. 420  REM  OLD COLOR WITH THE SAME COLOR,
  43. 430  REM  SO THE PICTURE IS TRANSFERRED
  44. 440  REM  ONE COLOR AT A TIME!
  45. 450  POKE  -16304,0: POKE  -16297,0: POKE  -16301,0: VTAB 21: HTAB 1
  46. 460  PRINT "YOUR PICTURE MUST BE ON PAGE 2."
  47. 470 AD = 4000: GOSUB 580
  48. 480  VTAB 22: HTAB 1
  49. 490  REM  POKE MODIFICATION INTO PROGRAM
  50. 500  POKE 37889,64: POKE 38058,32: POKE 38059,44: POKE 38060,149: POKE 38061,234
  51. 510  HOME : VTAB 21: PRINT "DO YOU WANT TO CLEAR PAGE 1? ";
  52. 520  POKE  -16368,0: GET A$: PRINT A$: IF A$ < >"Y"  AND A$ < >"N"  AND A$ < > CHR$(121)  AND A$ < > CHR$(110)  THEN 520
  53. 530  IF A$ = "Y"  OR A$ =  CHR$(121)  THEN  HGR 
  54. 540  POKE  -16302,0
  55. 550  FOR T = 0 TO 7: POKE 0,T: POKE 1,T: CALL 37888: NEXT 
  56. 560  POKE  -16301,0: HOME : VTAB 22: PRINT "PRESS RETURN TO CONTINUE ";: POKE  -16368,0: GET CH$
  57. 570  POKE 37889,32: POKE 38058,05: POKE 38059,255: POKE 38060,69: POKE 38061,252: GOTO 110: REM  RESTORE PROGRAM
  58. 580  VTAB 22: PRINT "DO YOU WANT TO LOAD A PICTURE? ";
  59. 590  POKE  -16368,0: GET A$: PRINT A$: IF A$ < >"Y"  AND A$ < >"N"  AND A$ < > CHR$(121)  AND A$ < > CHR$(110)  THEN 580
  60. 600  HOME 
  61. 610  IF A$ = "N"  OR A$ =  CHR$(110)  THEN  RETURN 
  62. 620  VTAB 22: HTAB 1
  63. 630  INPUT "NAME ('?' FOR CATALOG) :";A$
  64. 640  IF A$ = "?"  THEN  TEXT : PRINT  CHR$(4) LEFT$("CATALOG",7 -4 *( PEEK(48896) = 76)): POKE  -16368,0: GET A$: POKE  -16368,0: HOME : POKE  -16304,0: GOTO 620
  65. 650  PRINT  CHR$(04)"BLOAD";A$;",A$"AD: RETURN 
  66. 660 ER =  PEEK(222):EL =  PEEK(219) *256 + PEEK(218)
  67. 670  TEXT : HOME : VTAB 7: PRINT  CHR$(4)"CLOSE"
  68. 680  IF ER = 6  THEN  PRINT "FILE NOT FOUND": GOTO 720
  69. 690  IF ER = 8  THEN  PRINT "I/O ERROR": GOTO 720
  70. 700  IF ER = 16  THEN  PRINT "SYNTAX ERROR IS LINE "EL: GOTO 720
  71. 710  PRINT "UNANTICIPATED ERROR IN LINE "EL
  72. 720  VTAB 23: PRINT "PRESS <RETURN> TO RESTART";: GET CH$: PRINT CH$: GOTO 110
  73. 730  HOME : PRINT : PRINT "THE FILE CHAMELEON IS NOT ON THIS DISK.": PRINT "INSERT THE DISK WITH 'CHAMELEON'": PRINT : PRINT "AND PRESS <RETURN> ";
  74. 740  POKE  -16368,0: GET CH$: PRINT CH$
  75. 750  GOTO 80