Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DECLARE SUB SetReg (Reg%, Value%)
- DECLARE SUB ClearAndInitRegs ()
- DECLARE SUB PlayNote (Note$, Octave%, Channel%)
- CONST BaseAddr = &H220 'Change if your sound card uses another base address
- CONST RegAddr = BaseAddr + 8, DataAddr = BaseAddr + 9
- DEFINT A-Z
- ClearAndInitRegs
- READ NoOfNotes
- DIM MOD$(6)
- FOR i = 1 TO NoOfNotes
- time! = TIMER
- FOR j = 0 TO 5 'Voices 0 - 5
- READ Octave
- READ Note$
- READ MOD$(j)
- PlayNote Note$, Octave, j
- NEXT j
- DO
- LOOP WHILE time! + .1075 > TIMER
- FOR j = 0 TO 5
- SELECT CASE MOD$(j)
- CASE "L"
- REM DO nothing. Legato.
- CASE "-"
- SetReg &HB0 + j, 0
- END SELECT
- NEXT j
- NEXT i
- END
- DATA 448:
- DATA 2,Bb,L,0,-,-,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,4,C,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,A,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,0,-,-,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,4,D,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,C,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,Bb,-
- DATA 0,-,L,4,D,L,0,-,-,0,-,-,0,-,-,5,A,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,4,C,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,3,A,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,4,D,L,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,F,L
- DATA 0,-,L,4,D,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 2,Bb,L,0,-,-,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,4,C,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,A,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,0,-,-,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,4,D,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,C,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,5,Bb,-
- DATA 0,-,L,4,D,L,0,-,-,0,-,-,0,-,-,5,A,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,4,C,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,C,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,3,A,L,0,-,-,4,C,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,F,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,0,-,-,0,-,-,4,A,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,3,A,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,4,D,L,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,5,F,-
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,5,F,L
- DATA 0,-,L,0,-,L,0,-,L,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,3,F,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,3,Bb,L,0,-,-,4,Bb,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,G,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,D,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,4,C,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,-
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,B,L,3,B,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,3,F,L,0,-,-,4,Bb,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,5,D,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,4,C,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,5,C,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,5,C,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,5,G,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 4,C,L,5,E,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,3,F,L,0,-,-,4,Bb,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,5,D,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,4,Bb,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,G,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,4,C,L,5,E,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,5,D,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,B,L,3,B,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,3,F,L,0,-,-,4,Bb,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,3,Bb,L,0,-,-,0,-,L,5,D,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,E,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,G,L,3,G,L,0,-,-,4,Bb,L,5,F,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,5,D,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,4,Bb,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,5,A,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,B,L,3,B,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,5,A,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,5,F,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 3,A,L,0,-,-,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 3,A,L,0,-,-,0,-,-,0,-,L,0,-,L,5,A,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,0,-,-,0,-,-,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 3,A,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,0,-,-,0,-,-,0,-,-,0,-,-,4,C,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 3,A,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,Bb,L,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,G,L,0,-,-,0,-,-,4,Bb,L,5,D,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 3,G,L,0,-,-,0,-,-,0,-,L,5,E,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 2,G,L,0,-,-,0,-,-,0,-,L,5,F,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,-,0,-,-
- DATA 3,G,L,0,-,-,0,-,-,0,-,L,5,D,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,5,A,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,A,L,3,A,L,0,-,-,5,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,3,A,L,0,-,-,5,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,4,D,L,0,-,-,4,A,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,E,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,D,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,G,L,3,G,L,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,4,C,L,5,E,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,D,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,4,C,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,3,C,L,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,4,C,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,A,L,4,E,L,0,-,-,4,A,L,4,C,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,4,D,L,0,-,-,4,A,L,4,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,Bb,L,3,Bb,L,0,-,-,5,D,L,5,F,L,5,A,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,4,C,L,5,E,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,A,L,3,A,L,0,-,-,4,C,L,5,C,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,A,L,3,A,L,0,-,-,0,-,-,0,-,-,5,E,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,4,D,L,0,-,-,4,A,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,E,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,D,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,4,C,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,F,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,5,D,-
- DATA 2,G,L,3,G,L,0,-,-,4,Bb,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,G,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 2,C,L,3,C,L,0,-,-,0,-,-,4,C,L,5,E,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,5,D,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,-,0,-,-,4,C,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,3,C,L,0,-,-,0,-,-,0,-,-,0,-,L
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,L,0,-,-,0,-,-,0,-,-,4,C,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,A,L,4,E,L,0,-,-,4,A,L,4,C,L,5,G,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 3,D,L,4,D,L,0,-,-,4,A,L,5,D,L,5,F,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,L,0,-,L,0,-,-,0,-,L,0,-,L,0,-,L
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- DATA 0,-,-,0,-,-,0,-,-,0,-,-,0,-,-,0,-,-
- SUB SetReg (Reg, Value)
- OUT RegAddr, Reg
- OUT DataAddr, Value
- END SUB
- SUB ClearAndInitRegs ()
- FOR i = 0 TO 224
- SetReg i, 0 'Clear all registers
- NEXT i
- FOR c = 0 TO 2 'Channels 0-2
- SetReg &H20 + c, &H1 'Plays carrier note at specified octave ch. 1
- SetReg &H23 + c, &H1 'Plays modulator note at specified octave ch. 1
- SetReg &H40 + c, &H1F 'Set carrier total level to softest ch. 1
- SetReg &H43 + c, &H0 'Set modulator level to loudest ch. 1
- SetReg &H60 + c, &HE2 'Set carrier attack and decay ch. 1
- SetReg &H63 + c, &HE2 'Set modulator attack and decay ch. 1
- SetReg &H80 + c, &H97 'Set carrier sustain and release ch. 1
- SetReg &H83 + c, &H97 'Set modulator sustain and release ch. 1
- NEXT c
- FOR c = 0 TO 2 'Channels 3-5
- SetReg &H28 + c, &H1 'Plays carrier note at specified octave ch. 1
- SetReg &H2B + c, &H1 'Plays modulator note at specified octave ch. 1
- SetReg &H48 + c, &H1F 'Set carrier total level to softest ch. 1
- SetReg &H4B + c, &H0 'Set modulator level to loudest ch. 1
- SetReg &H68 + c, &HE4 'Set carrier attack and decay ch. 1
- SetReg &H6B + c, &HE4 'Set modulator attack and decay ch. 1
- SetReg &H88 + c, &H9D 'Set carrier sustain and release ch. 1
- SetReg &H8B + c, &H9D 'Set modulator sustain and release ch. 1
- NEXT c
- END SUB
- SUB PlayNote (Note$,Octave,Channel)
- SELECT CASE Note$
- CASE "C#", "Db"
- SetReg &HA0 + Channel, &H6B 'Set note number
- SetReg &HB0 + Channel, &H21 + 4 * Octave 'Set octave and turn on voice
- CASE "D"
- SetReg &HA0 + Channel, &H81
- SetReg &HB0 + Channel, &H21 + 4 * Octave
- CASE "D#", "Eb"
- SetReg &HA0 + Channel, &H98
- SetReg &HB0 + Channel, &H21 + 4 * Octave
- CASE "E"
- SetReg &HA0 + Channel, &HB0
- SetReg &HB0 + Channel, &H21 + 4 * Octave
- CASE "F"
- SetReg &HA0 + Channel, &HCA
- SetReg &HB0 + Channel, &H21 + 4 * Octave
- CASE "F#", "Gb"
- SetReg &HA0 + Channel, &HE5
- SetReg &HB0 + Channel, &H21 + 4 * Octave
- CASE "G"
- SetReg &HA0 + Channel, &H2
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "G#", "Ab"
- SetReg &HA0 + Channel, &H20
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "A"
- SetReg &HA0 + Channel, &H41
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "A#", "Bb"
- SetReg &HA0 + Channel, &H63
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "B"
- SetReg &HA0 + Channel, &H87
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "C"
- SetReg &HA0 + Channel, &HAE
- SetReg &HB0 + Channel, &H22 + 4 * Octave
- CASE "-"
- REM DO nothing. WAIT.
- END SELECT
- END SUB
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement