10
REM la linea 190 da la melodia en clave de agudos
20
REM la linea 200 da la melodia en clave de graves
30
DIM escala%(12):FOR
40
canal1%=1:READ canal1$:canal2%=2:READ
50
CLS
60 velocidad%=12
70
escala$=" a-b b c+c d-e e f+f g+g"
80
ENV
1,2,5,2,8,-1,10,10,0,15
90
ENV
2,2,7,2,12,-1,10,10,0,15
100
ENT
-1,1,1,1,2,-1,1,1,1,1
110
DEF
FNm$(s$,s)=MID$(s$,s,1)
120
canal1%=1:GOSUB
130
canal2%=1:GOSUB
140
IF
canal1%+canal2%>0
150
END
160
DATA
&777,&70c,&6a7,&647,&5ed,&598
170
DATA &547,&4fc,&4b4,&470,&431,&3f4
180
DATA
4cr4f4f1f1g1A1-B2C2f4g2g1A1-B6A2Crlflglflgla1-blAl-
b2C2g2A2g2f1g1a2g2f6e2c2e2c2g2e2c1-B1A2g2f4e4d8c4f3f1c2d4-b2fr2-B2A2g2f6e2gr4C4-
Bla1f1-b1g2c2-b4a4g4fr6A2A2-B4-B2Ar2-B2A2g2f6e2g4C4-B1A1f1-B1g2C2-B4
190
DATA
r4f4f8f4e4c4fr8f4e2f2e4d2e2d8c8c6e2f4g4g8e4f3f1c4dr8g4cr4e4c6f2d4c4c8fr8-
e4dr8g8c4e4c6f2d4c4c8f.
200
REM enviar sonido al canal A
210
p1$=FNm$(canal1$,canal1%)
220
IF
p1$<>"r"
THEN r1%=0:GOTO
230
r1%=16:canal1%=canal1%+1:p1$=FNm$(canal1$,canal1%)
240
IF
p1$="."
THEN canal1%=0:RETURN ELSE
250 canal1%=canal1%+1
260
n1$=FNm$(canal1$,canal1%)
270 canal1%=canal1%+1
280
IF
n1$="+"
OR
290
n1$="
"+n1$
300 nd1%=(1+INSTR(escala$,LOWER$(n1$)))/2
310
IF
ASC(RIGHT$(n1$,1))>96
320
1+r1%,escala%(nd1%)/o1%,velocidad%*l1%,0,1,1
SOUND
330
ON
SQ(1)
GOSUB
340
RETURN
350
n1$=n1$+FNm$(canal1$,canal1%)
360 canal1%=canal1%+1
370
GOTO
300
380
REM enviar sonido al canal B
390
p2$=FNm$(canal2$,canal2%)
400
IF
p2$<>"r"
THEN r2%=0:GOTO
410
r2%=8:canal2%=canal2%+1:p2$=FNm$(canal2$,canal2%)
420
IF
p2$="."
THEN canal2%=0:RETURN ELSE
430 canal2%=canal2%+1
440
n2$=FNm$(canal2$,canal2%)
450 canal2%=canal2%+1
460
n2$="+"
IF
OR
470
n2$="
"+n2$
480 nd2%=(1+INSTR(escala$,LOWER$(n2$)))/2
490
IF
ASC(RIGHT$(n2$,1))>96
500
SOUND
2+r2%,escala%(nd2%)/o2%,velocidad%*l2%,0,1,2
510
ON
SQ(2)
GOSUB
520
RETURN
x%=1
TO 12:READ escala%(x%):NEXT
200
380
THEN
140
240
n1$="-"
THEN
350
THEN
o1%=8
200
420
n2$="-"
530
THEN
THEN
o2%=4
380
Manual de Amstrad CPC 6128 (revisión 2008) - Página 357
canal2$
l1%=VAL(p1$)
ELSE
o1%=16
l2%=VAL(p2$)
ELSE
o2%=8
A4g8f.