Advertisement
Guest User

Untitled

a guest
Aug 9th, 2017
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
QBasic 21.84 KB | None | 0 0
  1. DECLARE SUB SetReg (Reg%, Value%)
  2. DECLARE SUB ClearAndInitRegs ()
  3. DECLARE SUB PlayNote (Note$, Octave%, Channel%)
  4. CONST BaseAddr = &H220 'Change if your sound card uses another base address
  5. CONST RegAddr = BaseAddr + 8, DataAddr = BaseAddr + 9
  6.  
  7. DEFINT A-Z
  8.  
  9. ClearAndInitRegs
  10.  
  11. READ TotalTicks
  12. DIM Hold$(6)
  13. Tempo = 130 'BPM
  14. Tick = 16 'Note per tick (i.e. 16 = 16th note, 8 = 8th note, 4 = quarter note).
  15. TickLength! = (60 / Tempo) / (Tick / 4)
  16.  
  17. FOR i = 1 TO TotalTicks
  18.   Time! = TIMER
  19.   FOR j = 0 TO 5 'Voices 0 - 5
  20.     READ Octave
  21.     READ Note$
  22.     READ Hold$(j)
  23.     PlayNote Note$, Octave, j
  24.   NEXT j
  25.   DO
  26.   LOOP WHILE Time! + TickLength! > TIMER
  27.   FOR j = 0 TO 5
  28.     SELECT CASE Hold$(j)
  29.     CASE "H"
  30.       REM DO nothing.
  31.     CASE "-"
  32.       SetReg &HB0 + j, 0
  33.     END SELECT
  34.   NEXT j
  35. NEXT i
  36.  
  37. END
  38.  
  39. DATA 448:
  40. DATA 2,Bb,H,0,-,-,0,-,-,4,Bb,H,5,D,H,5,F,H
  41. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  42. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,0,-,H,0,-,H
  43. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  44. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  45. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  46. DATA 2,C,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  47. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  48. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  49. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  50. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  51. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,H,0,-,H
  52. DATA 0,-,H,0,-,-,0,-,-,4,C,H,0,-,H,0,-,H
  53. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  54. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  55. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  56. DATA 2,A,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  57. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  58. DATA 0,-,H,3,A,H,0,-,-,0,-,H,0,-,H,0,-,H
  59. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  60. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  61. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  62. DATA 3,D,H,0,-,-,0,-,-,5,D,H,5,F,H,5,A,H
  63. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  64. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  65. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  66. DATA 0,-,H,4,D,H,0,-,-,0,-,H,0,-,H,0,-,H
  67. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  68. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,C,-
  69. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,Bb,-
  70. DATA 0,-,H,4,D,H,0,-,-,0,-,-,0,-,-,5,A,H
  71. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  72. DATA 2,Bb,H,0,-,-,0,-,-,4,Bb,H,5,D,H,5,F,H
  73. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  74. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,0,-,H,0,-,H
  75. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  76. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  77. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  78. DATA 2,C,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  79. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  80. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  81. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  82. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  83. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,H,0,-,H
  84. DATA 0,-,H,0,-,-,0,-,-,4,C,H,0,-,H,0,-,H
  85. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  86. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  87. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  88. DATA 2,A,H,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  89. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  90. DATA 0,-,H,3,A,H,0,-,-,0,-,H,0,-,-,0,-,-
  91. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  92. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  93. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  94. DATA 3,D,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  95. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  96. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  97. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  98. DATA 0,-,H,4,D,H,0,-,-,0,-,-,0,-,-,4,C,-
  99. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  100. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  101. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,F,H
  102. DATA 0,-,H,4,D,H,0,-,-,0,-,-,0,-,-,0,-,-
  103. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  104. DATA 2,Bb,H,0,-,-,0,-,-,4,Bb,H,5,D,H,5,F,H
  105. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  106. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,0,-,H,0,-,H
  107. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  108. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  109. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  110. DATA 2,C,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  111. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  112. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  113. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  114. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  115. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,H,0,-,H
  116. DATA 0,-,H,0,-,-,0,-,-,4,C,H,0,-,H,0,-,H
  117. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  118. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  119. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  120. DATA 2,A,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  121. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  122. DATA 0,-,H,3,A,H,0,-,-,0,-,H,0,-,H,0,-,H
  123. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  124. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  125. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  126. DATA 3,D,H,0,-,-,0,-,-,5,D,H,5,F,H,5,A,H
  127. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  128. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  129. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  130. DATA 0,-,H,4,D,H,0,-,-,0,-,H,0,-,H,0,-,H
  131. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  132. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,C,-
  133. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,5,Bb,-
  134. DATA 0,-,H,4,D,H,0,-,-,0,-,-,0,-,-,5,A,H
  135. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  136. DATA 2,Bb,H,0,-,-,0,-,-,4,Bb,H,5,D,H,5,F,H
  137. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  138. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,0,-,H,0,-,H
  139. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  140. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  141. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  142. DATA 2,C,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  143. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  144. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  145. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  146. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  147. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,H,0,-,H
  148. DATA 0,-,H,0,-,-,0,-,-,4,C,H,0,-,H,0,-,H
  149. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  150. DATA 0,-,H,3,C,H,0,-,-,0,-,H,0,-,H,0,-,H
  151. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  152. DATA 2,A,H,3,A,H,0,-,-,4,C,H,5,E,H,0,-,-
  153. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  154. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,F,H,0,-,-
  155. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  156. DATA 3,D,H,0,-,-,0,-,-,4,A,H,5,D,H,5,F,H
  157. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  158. DATA 0,-,H,3,A,H,0,-,-,0,-,H,0,-,H,0,-,H
  159. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  160. DATA 0,-,H,0,-,H,4,D,H,0,-,-,0,-,-,0,-,-
  161. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,0,-,-
  162. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,0,-,-
  163. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,0,-,-
  164. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,5,F,-
  165. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,5,F,H
  166. DATA 0,-,H,0,-,H,0,-,H,0,-,-,0,-,-,0,-,-
  167. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  168. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  169. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  170. DATA 0,-,H,3,F,H,0,-,-,0,-,-,0,-,-,0,-,-
  171. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  172. DATA 0,-,H,3,Bb,H,0,-,-,4,Bb,H,5,D,H,0,-,-
  173. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  174. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,E,H,0,-,-
  175. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  176. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,F,H,0,-,-
  177. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  178. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,F,H,0,-,-
  179. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  180. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,G,H,0,-,-
  181. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  182. DATA 2,C,H,3,C,H,0,-,-,4,C,H,5,E,H,0,-,-
  183. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  184. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  185. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,D,-,0,-,-
  186. DATA 0,-,H,0,-,H,0,-,-,0,-,-,4,C,H,0,-,-
  187. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,-
  188. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,-
  189. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,H,0,-,-
  190. DATA 2,C,H,3,C,H,0,-,-,0,-,-,0,-,H,0,-,-
  191. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,H,0,-,-
  192. DATA 2,C,H,3,C,H,0,-,-,0,-,-,0,-,H,0,-,-
  193. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,-
  194. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,-
  195. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  196. DATA 2,B,H,3,B,H,0,-,-,0,-,-,0,-,-,0,-,-
  197. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  198. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  199. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  200. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  201. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  202. DATA 0,-,H,3,F,H,0,-,-,4,Bb,H,5,D,H,0,-,-
  203. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  204. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,5,D,H,0,-,-
  205. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  206. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,E,H,0,-,-
  207. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  208. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,F,H,0,-,-
  209. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  210. DATA 0,-,H,0,-,H,0,-,-,5,D,H,0,-,-,0,-,-
  211. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  212. DATA 2,Bb,H,3,Bb,H,0,-,-,0,-,H,0,-,-,0,-,-
  213. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  214. DATA 0,-,H,0,-,H,0,-,-,4,C,H,0,-,-,0,-,-
  215. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  216. DATA 2,C,H,3,C,H,0,-,-,4,C,H,5,C,H,0,-,-
  217. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  218. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  219. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  220. DATA 0,-,-,0,-,-,0,-,-,0,-,-,5,C,H,0,-,-
  221. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  222. DATA 0,-,-,0,-,-,0,-,-,0,-,-,5,G,H,0,-,-
  223. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  224. DATA 4,C,H,5,E,H,0,-,-,0,-,-,0,-,-,0,-,-
  225. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  226. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  227. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  228. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  229. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  230. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  231. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  232. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  233. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  234. DATA 0,-,H,3,F,H,0,-,-,4,Bb,H,5,D,H,0,-,-
  235. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  236. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,5,D,H,0,-,-
  237. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  238. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,E,H,0,-,-
  239. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  240. DATA 0,-,H,0,-,H,0,-,-,0,-,H,5,F,H,0,-,-
  241. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  242. DATA 0,-,H,0,-,H,0,-,-,5,D,H,0,-,-,0,-,-
  243. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  244. DATA 2,Bb,H,3,Bb,H,0,-,-,4,Bb,H,5,F,H,0,-,-
  245. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  246. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,G,H,0,-,-
  247. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  248. DATA 2,C,H,3,C,H,0,-,-,0,-,-,0,-,-,0,-,-
  249. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  250. DATA 0,-,H,0,-,H,0,-,-,4,C,H,5,E,H,0,-,-
  251. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  252. DATA 0,-,H,0,-,H,0,-,-,5,D,H,0,-,-,0,-,-
  253. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  254. DATA 2,C,H,3,C,H,0,-,-,4,C,H,0,-,-,0,-,-
  255. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  256. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  257. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  258. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  259. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  260. DATA 2,B,H,3,B,H,0,-,-,0,-,-,0,-,-,0,-,-
  261. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  262. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  263. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  264. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  265. DATA 0,-,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  266. DATA 0,-,H,3,F,H,0,-,-,4,Bb,H,5,D,H,0,-,-
  267. DATA 0,-,H,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  268. DATA 0,-,H,3,Bb,H,0,-,-,0,-,H,5,D,H,0,-,-
  269. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  270. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,E,H,0,-,-
  271. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  272. DATA 2,G,H,3,G,H,0,-,-,4,Bb,H,5,F,H,0,-,-
  273. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  274. DATA 0,-,H,0,-,H,0,-,-,0,-,-,5,D,H,0,-,-
  275. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  276. DATA 0,-,H,0,-,H,0,-,-,4,Bb,H,0,-,-,0,-,-
  277. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  278. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,-,0,-,-
  279. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  280. DATA 2,C,H,3,C,H,0,-,-,4,C,H,5,E,H,5,G,H
  281. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  282. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,5,G,H
  283. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  284. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,5,G,H
  285. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  286. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,5,A,H
  287. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  288. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,5,G,H
  289. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  290. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  291. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  292. DATA 2,B,H,3,B,H,0,-,-,0,-,-,0,-,-,0,-,-
  293. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  294. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  295. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  296. DATA 2,Bb,H,0,-,-,0,-,-,4,Bb,H,5,D,H,5,F,H
  297. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  298. DATA 3,Bb,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  299. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  300. DATA 2,Bb,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  301. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  302. DATA 3,Bb,H,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  303. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  304. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  305. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  306. DATA 3,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,5,G,H
  307. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  308. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,5,A,H
  309. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  310. DATA 3,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,5,F,H
  311. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  312. DATA 2,A,H,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  313. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,-
  314. DATA 3,A,H,0,-,-,0,-,-,0,-,H,0,-,H,5,G,H
  315. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,-
  316. DATA 2,A,H,0,-,-,0,-,-,0,-,H,0,-,H,5,G,H
  317. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,-
  318. DATA 3,A,H,0,-,-,0,-,-,0,-,H,0,-,H,5,A,H
  319. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  320. DATA 2,A,H,0,-,-,0,-,-,0,-,-,0,-,-,5,G,H
  321. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  322. DATA 3,A,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  323. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  324. DATA 2,A,H,0,-,-,0,-,-,0,-,-,0,-,-,4,C,H
  325. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  326. DATA 3,A,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  327. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  328. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  329. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  330. DATA 3,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  331. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  332. DATA 2,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  333. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  334. DATA 3,Bb,H,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  335. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  336. DATA 2,G,H,0,-,-,0,-,-,4,Bb,H,5,D,H,0,-,-
  337. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  338. DATA 3,G,H,0,-,-,0,-,-,0,-,H,5,E,H,0,-,-
  339. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  340. DATA 2,G,H,0,-,-,0,-,-,0,-,H,5,F,H,0,-,-
  341. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,-,0,-,-
  342. DATA 3,G,H,0,-,-,0,-,-,0,-,H,5,D,H,0,-,-
  343. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  344. DATA 2,C,H,3,C,H,0,-,-,0,-,-,0,-,-,0,-,-
  345. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  346. DATA 0,-,-,0,-,-,0,-,-,4,C,H,5,E,H,5,G,H
  347. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,-
  348. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,5,A,H
  349. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,-
  350. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,5,G,H
  351. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  352. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  353. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  354. DATA 0,-,-,0,-,-,0,-,-,0,-,H,0,-,H,0,-,H
  355. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  356. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  357. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  358. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  359. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  360. DATA 2,Bb,H,3,Bb,H,0,-,-,5,D,H,5,F,H,5,A,H
  361. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  362. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  363. DATA 2,Bb,H,3,Bb,H,0,-,-,5,D,H,5,F,H,5,A,H
  364. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  365. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  366. DATA 2,C,H,3,C,H,0,-,-,4,C,H,5,E,H,5,G,H
  367. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  368. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  369. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  370. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  371. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  372. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  373. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  374. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  375. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  376. DATA 2,A,H,3,A,H,0,-,-,5,C,H,5,E,H,5,G,H
  377. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  378. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  379. DATA 2,A,H,3,A,H,0,-,-,5,C,H,5,E,H,5,G,H
  380. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  381. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  382. DATA 3,D,H,4,D,H,0,-,-,4,A,H,5,D,H,5,F,H
  383. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  384. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  385. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,E,H
  386. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,D,H
  387. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  388. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  389. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  390. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  391. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  392. DATA 2,G,H,3,G,H,0,-,-,4,Bb,H,5,D,H,5,F,H
  393. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  394. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  395. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  396. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,G,H
  397. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  398. DATA 2,C,H,3,C,H,0,-,-,0,-,-,4,C,H,5,E,H
  399. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,H
  400. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  401. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,D,H
  402. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,4,C,H
  403. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  404. DATA 0,-,-,3,C,H,0,-,-,0,-,-,0,-,-,0,-,H
  405. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  406. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,4,C,H
  407. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  408. DATA 3,A,H,4,E,H,0,-,-,4,A,H,4,C,H,5,G,H
  409. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  410. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  411. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  412. DATA 3,D,H,4,D,H,0,-,-,4,A,H,4,D,H,5,F,H
  413. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  414. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  415. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  416. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  417. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  418. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  419. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  420. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  421. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  422. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  423. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  424. DATA 2,Bb,H,3,Bb,H,0,-,-,5,D,H,5,F,H,5,A,H
  425. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  426. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  427. DATA 2,Bb,H,3,Bb,H,0,-,-,5,D,H,5,F,H,5,A,H
  428. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  429. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  430. DATA 2,C,H,3,C,H,0,-,-,4,C,H,5,E,H,5,G,H
  431. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  432. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  433. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  434. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  435. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  436. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  437. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  438. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  439. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  440. DATA 2,A,H,3,A,H,0,-,-,4,C,H,5,C,H,0,-,-
  441. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  442. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,-
  443. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  444. DATA 2,A,H,3,A,H,0,-,-,0,-,-,0,-,-,5,E,H
  445. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  446. DATA 3,D,H,4,D,H,0,-,-,4,A,H,5,D,H,5,F,H
  447. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  448. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  449. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,E,-
  450. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,D,H
  451. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  452. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
  453. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  454. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
  455. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
  456. DATA 2,G,H,3,G,H,0,-,-,4,Bb,H,5,D,H,5,F,H
  457. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  458. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  459. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  460. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,G,H
  461. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  462. DATA 2,C,H,3,C,H,0,-,-,0,-,-,4,C,H,5,E,H
  463. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,H,0,-,H
  464. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  465. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,5,D,H
  466. DATA 0,-,H,0,-,H,0,-,-,0,-,-,0,-,-,4,C,H
  467. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,H
  468. DATA 0,-,-,3,C,H,0,-,-,0,-,-,0,-,-,0,-,H
  469. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,0,-,-
  470. DATA 0,-,-,0,-,H,0,-,-,0,-,-,0,-,-,4,C,H
  471. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  472. DATA 3,A,H,4,E,H,0,-,-,4,A,H,4,C,H,5,G,H
  473. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  474. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  475. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  476. DATA 3,D,H,4,D,H,0,-,-,4,A,H,5,D,H,5,F,H
  477. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  478. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  479. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  480. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  481. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  482. DATA 0,-,H,0,-,H,0,-,-,0,-,H,0,-,H,0,-,H
  483. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  484. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  485. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  486. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  487. DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
  488.  
  489. SUB SetReg (Reg, Value)
  490.   OUT RegAddr, Reg
  491.   OUT DataAddr, Value
  492. END SUB
  493.  
  494. SUB ClearAndInitRegs ()
  495.   FOR i = 0 TO 224
  496.     SetReg i, 0 'Clear all registers
  497.   NEXT i
  498.   FOR c = 0 TO 2 'Channels 0-2
  499.     SetReg &H20 + c, &H1 'Plays carrier note at specified octave ch. 1
  500.     SetReg &H23 + c, &H1 'Plays modulator note at specified octave ch. 1
  501.     SetReg &H40 + c, &H1F 'Set carrier total level to softest ch. 1
  502.     SetReg &H43 + c, &H0 'Set modulator level to loudest ch. 1
  503.     SetReg &H60 + c, &HE2 'Set carrier attack and decay ch. 1
  504.     SetReg &H63 + c, &HE2 'Set modulator attack and decay ch. 1
  505.     SetReg &H80 + c, &H97 'Set carrier sustain and release ch. 1
  506.     SetReg &H83 + c, &H97 'Set modulator sustain and release ch. 1
  507.   NEXT c
  508.   FOR c = 0 TO 2 'Channels 3-5
  509.     SetReg &H28 + c, &H1 'Plays carrier note at specified octave ch. 1
  510.     SetReg &H2B + c, &H1 'Plays modulator note at specified octave ch. 1
  511.     SetReg &H48 + c, &H1F 'Set carrier total level to softest ch. 1
  512.     SetReg &H4B + c, &H0 'Set modulator level to loudest ch. 1
  513.     SetReg &H68 + c, &HE4 'Set carrier attack and decay ch. 1
  514.     SetReg &H6B + c, &HE4 'Set modulator attack and decay ch. 1
  515.     SetReg &H88 + c, &H9D 'Set carrier sustain and release ch. 1
  516.     SetReg &H8B + c, &H9D 'Set modulator sustain and release ch. 1
  517.   NEXT c
  518. END SUB
  519.  
  520. SUB PlayNote (Note$,Octave,Channel)
  521.   SELECT CASE Note$
  522.   CASE "C#", "Db"
  523.     SetReg &HA0 + Channel, &H6B 'Set note number
  524.     SetReg &HB0 + Channel, &H21 + 4 * Octave 'Set octave and turn on voice
  525.   CASE "D"
  526.     SetReg &HA0 + Channel, &H81
  527.     SetReg &HB0 + Channel, &H21 + 4 * Octave
  528.   CASE "D#", "Eb"
  529.     SetReg &HA0 + Channel, &H98
  530.     SetReg &HB0 + Channel, &H21 + 4 * Octave
  531.   CASE "E"
  532.     SetReg &HA0 + Channel, &HB0
  533.     SetReg &HB0 + Channel, &H21 + 4 * Octave
  534.   CASE "F"
  535.     SetReg &HA0 + Channel, &HCA
  536.     SetReg &HB0 + Channel, &H21 + 4 * Octave
  537.   CASE "F#", "Gb"
  538.     SetReg &HA0 + Channel, &HE5
  539.     SetReg &HB0 + Channel, &H21 + 4 * Octave
  540.   CASE "G"
  541.     SetReg &HA0 + Channel, &H2
  542.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  543.   CASE "G#", "Ab"
  544.     SetReg &HA0 + Channel, &H20
  545.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  546.   CASE "A"
  547.     SetReg &HA0 + Channel, &H41
  548.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  549.   CASE "A#", "Bb"
  550.     SetReg &HA0 + Channel, &H63
  551.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  552.   CASE "B"
  553.     SetReg &HA0 + Channel, &H87
  554.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  555.   CASE "C"
  556.     SetReg &HA0 + Channel, &HAE
  557.     SetReg &HB0 + Channel, &H22 + 4 * Octave
  558.   CASE "-"
  559.     REM DO nothing. WAIT.
  560.   END SELECT
  561. END SUB
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement