org 0000h
orl p1,#11111111B
orl p3,#11111111B
test: jnb p3.2,SOL
jnb p3.1,LAL
jnb p3.0,SIL
jnb p1.7,DO
jnb p1.6,RE
jnb p1.5,MI
jnb p1.4,FA
jnb p1.3,SO
jnb p1.2,LA
jnb p1.1,SI
jnb p1.0,DOH
ajmp test
SOL: mov r6,#170
ajmp output
LAL: mov r6,#150
ajmp output
SIL: mov r6,#134
ajmp output
DO: mov r6,#126
ajmp output
RE: mov r6,#113
ajmp output
MI: mov r6,#100
ajmp output
FA: mov r6,#95
ajmp output
SO: mov r6,#85
ajmp output
LA: mov r6,#75
ajmp output
SI: mov r6,#67
ajmp output
DOH: mov r6,#63
output: clr p3.7
acall delay
setb p3.7
acall delay
ajmp test
delay: mov B,r6
dl: mov r7,#6
djnz r7,$
djnz r6,dl
mov r6,b
ret
end