home *** CD-ROM | disk | FTP | other *** search
/ Nibble Magazine / nib34a.dsk / SEPTEMBER.1988 / SOUND.DEMO3.bas < prev    next >
BASIC Source File  |  2023-02-26  |  4KB  |  122 lines

  1. 10  REM  *********************
  2. 20  REM  * SOUND.DEMO3       *
  3. 30  REM  * BY JIM RICHARDSON *
  4. 40  REM  * COPYRIGHT(C) 1988 *
  5. 50  REM  * MICROSPARC, INC.  *
  6. 60  REM  * CONCORD, MA 01742 *
  7. 70  REM  *********************
  8. 80  HOME 
  9. 90  PRINT  CHR$(21)
  10. 100  PRINT  CHR$(4)"BLOAD SOUND"
  11. 110 A$(0) = "PLAY THEM ALL"
  12. 120 A$(1) = "ASCENDING FIFTHS"
  13. 130 A$(2) = "BATTLE STATIONS"
  14. 140 A$(3) = "PHASER"
  15. 150 A$(4) = "SPACESHIP ALARM"
  16. 160 A$(5) = "DOOR BELL"
  17. 170 A$(6) = "AUTO ENGINE"
  18. 180 A$(7) = "EXIT TO BASIC"
  19. 190  HOME : GOSUB 300:V = 0
  20. 200  INVERSE : VTAB 2 +(V *2): HTAB 12: PRINT A$(V)
  21. 210 KS =  PEEK( -16384): IF KS <128  THEN 210
  22. 220  POKE  -16368,0: NORMAL : VTAB 2 +(V *2): HTAB 12: PRINT A$(V)
  23. 230  IF KS = 141  THEN  INVERSE : VTAB 2 +(V *2): HTAB 12: PRINT A$(V): ON (V +1) GOSUB 370,440,530,670,740,890,1030,1220
  24. 240  IF KS = 136  OR KS = 139  THEN V = V -1: IF V <0  THEN V = 7
  25. 250  IF KS = 138  OR KS = 149  THEN V = V +1: IF V >7  THEN V = 0
  26. 260  IF KS >175  AND KS <184  THEN V = KS -176
  27. 270  IF KS <136  OR KS >183  THEN  PRINT  CHR$(7)
  28. 280  GOTO 200
  29. 290  REM SCREEN SETUP SUB RT'N
  30. 300  VTAB 22: PRINT "_______________________________________": REM 39 UNDERLINES
  31. 310  PRINT "TYPE NUMBER, OR USE ARROWS,": PRINT "THEN PRESS RETURN.";
  32. 320  FOR K = 0 TO 7: VTAB 2 +(K *2)
  33. 330  HTAB 9: PRINT K;". ";A$(K): NEXT : RETURN 
  34. 340  REM *****************
  35. 350  REM * PLAY THEM ALL *
  36. 360  REM *****************
  37. 370  NORMAL : VTAB 2 +(V *2): HTAB 12: PRINT A$(V)
  38. 380  FOR PN = 1 TO 8: INVERSE : VTAB 2 +(PN *2): HTAB 12: PRINT A$(PN)
  39. 390  ON PN GOSUB 440,530,670,740,890,1030
  40. 400  NORMAL : VTAB 2 +(PN *2): HTAB 12: PRINT A$(PN): NEXT PN: RETURN 
  41. 410  REM ********************
  42. 420  REM * ASCENDING FIFTHS *
  43. 430  REM ********************
  44. 440  POKE 6,127: REM PDIST=127
  45. 450  POKE 9,1: REM LENGTH=1
  46. 460  FOR N = 80 TO 2  STEP  -1
  47. 470  POKE 7,2 *N: POKE 8,3 *N
  48. 480  CALL 774: REM SOUND ROUTINE
  49. 490  NEXT N: RETURN 
  50. 500  REM *******************
  51. 510  REM * BATTLE STATIONS *
  52. 520  REM *******************
  53. 530  POKE 6,15: REM PDIST=15
  54. 540  POKE 9,2: REM LENGTH=2
  55. 550  FOR J = 1 TO 4
  56. 560  FOR N = 120 TO 80  STEP  -2
  57. 570  POKE 7,N: POKE 8,N
  58. 580  CALL 774: REM SOUND ROUTINE
  59. 590  NEXT N
  60. 600  POKE 7,0: POKE 9,20: REM PAUSE / LENGTH=20
  61. 610  CALL 774
  62. 620  POKE 9,2: REM LENGTH=2
  63. 630  NEXT J: RETURN 
  64. 640  REM **********
  65. 650  REM * PHASER *
  66. 660  REM **********
  67. 670  POKE 6,42:PDIST = 42
  68. 680  POKE 7,219: POKE 8,17: REM PITCHS 1 & 2
  69. 690  POKE 9,255: REM LENGTH=255
  70. 700  CALL 774: RETURN 
  71. 710  REM *******************
  72. 720  REM * SPACESHIP ALARM *
  73. 730  REM *******************
  74. 740  POKE 6,0: REM PDIST=0
  75. 750  POKE 9,2: REM LENGTH=2
  76. 760 A = 3:B = 5
  77. 770  FOR LOOP = 1 TO 8
  78. 780  FOR N = 6 TO 1  STEP  -1
  79. 790  POKE 7,A *N: POKE 8,B *N
  80. 800  CALL 774: REM SOUND ROUTINE
  81. 810  NEXT N
  82. 820  FOR N = 2 TO 5
  83. 830  POKE 7,A *N: POKE 8,B *N
  84. 840  CALL 774: REM SOUND ROUTINE
  85. 850  NEXT N,LOOP: RETURN 
  86. 860  REM *************
  87. 870  REM * DOOR BELL *
  88. 880  REM ************* 
  89. 890  POKE 9,2: REM LENGTH=2
  90. 900  POKE 7,57: POKE 8,57: REM PITCH1 & 2=C#
  91. 910  FOR VOL = 21 TO 1  STEP  -1
  92. 920  POKE 6,VOL: REM PDIST CONTROLS VOLUME
  93. 930  CALL 774: REM SOUND ROUTINE
  94. 940  NEXT VOL
  95. 950  POKE 7,84: POKE 8,84: REM PITCH1 & 2=F
  96. 960  FOR VOL = 21 TO 1  STEP  -1
  97. 970  POKE 6,VOL: REM PDIST CONTROLS VOLUME
  98. 980  CALL 774: REM SOUND ROUTINE
  99. 990  NEXT VOL: RETURN 
  100. 1000  REM ***************
  101. 1010  REM * AUTO ENGINE *
  102. 1020  REM ***************
  103. 1030  POKE 6,1: REM PDIST=1
  104. 1040  POKE 9,2: REM LENGTH=2 
  105. 1050  FOR N = 1 TO 30
  106. 1060  POKE 7,120: POKE 8,200: CALL 774: REM IDLE
  107. 1070  POKE 7,0: CALL 774: REM PAUSE 
  108. 1080  NEXT N
  109. 1090  POKE 6,3: REM PDIST=3
  110. 1100  FOR N = 40 TO 30  STEP  -.2
  111. 1110  POKE 7, INT(3 *N): POKE 8, INT(5 *N): CALL 774: REM 1ST GEAR!
  112. 1120  POKE 257,0: CALL 774: REM PAUSE BETWEEN PUTTS
  113. 1130  NEXT N
  114. 1140  POKE 6,7: REM PDIST=7
  115. 1150  FOR N = 30 TO 18  STEP  -.25
  116. 1160  POKE 7, INT(3 *N): POKE 8, INT(5 *N): CALL 774: REM 2ND GEAR!
  117. 1170  POKE 752,0: CALL 774: REM PAUSE 
  118. 1180  NEXT N: RETURN 
  119. 1190  REM *******
  120. 1200  REM * END *
  121. 1210  REM *******
  122. 1220  POP : NORMAL : HOME : VTAB 23: PRINT "BYE": END