TEMPO	equ	030h		;tempo
ENDFLAG	equ	0ffh		;end of data flag

	org	0
start	lxi	h,music		;address of music data
loop1	mov	a,m		;get next data byte
	cpi	ENDFLAG		;end of data flag?
	jz	start		;yes, start over
	mvi	d,TEMPO		;d=tempo
loop2	dcr	b
	jnz	loop3
	mov	b,m		;load note
loop3	dcr	c
	jnz	loop2
	dcr	d
	jnz	loop2
	inr	l		;instead of inx h
	jmp	loop1
	
; Data for Daisy

music	db	034Q
	db	034Q
	db	034Q
	db	042Q
	db	042Q
	db	042Q
	db	053Q
	db	053Q
	db	053Q
	db	071Q
	db	071Q
	db	071Q
	db	063Q
	db	055Q
	db	053Q
	db	063Q
	db	063Q
	db	053Q
	db	071Q
	db	071Q
	db	071Q
	db	071Q
	db	071Q
	db	071Q
	db	046Q
	db	046Q
	db	046Q
	db	034Q
	db	034Q
	db	034Q
	db	042Q
	db	042Q
	db	042Q
	db	053Q
	db	053Q
	db	053Q
	db	063Q
	db	055Q
	db	053Q
	db	046Q
	db	046Q
	db	042Q
	db	046Q
	db	046Q
	db	046Q
	db	046Q
	db	046Q
	db	042Q
	db	040Q
	db	042Q
	db	046Q
	db	034Q
	db	034Q
	db	042Q
	db	046Q
	db	053Q
	db	053Q
	db	053Q
	db	053Q
	db	046Q
	db	042Q
	db	042Q
	db	053Q
	db	063Q
	db	063Q
	db	053Q
	db	063Q
	db	071Q
	db	071Q
	db	071Q
	db	071Q
	db	071Q
	db	053Q
	db	053Q
	db	042Q
	db	046Q
	db	046Q
	db	071Q
	db	053Q
	db	053Q
	db	042Q
	db	046Q
	db	042Q
	db	040Q
	db	034Q
	db	042Q
	db	053Q
	db	046Q
	db	046Q
	db	071Q
	db	053Q
	db	053Q
	db	053Q
	db	053Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
;	db	377Q

; Data for Fool on the Hill

	db	105Q
	db	105Q
	db	125Q
	db	100Q
	db	071Q
	db	063Q
	db	063Q
	db	063Q
	db	071Q
	db	063Q
	db	055Q
	db	053Q
	db	053Q
	db	055Q
	db	071Q
	db	063Q
	db	046Q
	db	046Q
	db	046Q
	db	071Q
	db	063Q
	db	046Q
	db	046Q
	db	053Q
	db	042Q
	db	046Q
	db	046Q
	db	063Q
	db	071Q
	db	063Q
	db	053Q
	db	053Q
	db	063Q
	db	053Q
	db	071Q
	db	063Q
	db	063Q
	db	071Q
	db	063Q
	db	046Q
	db	046Q
	db	046Q
	db	053Q
	db	042Q
	db	053Q
	db	046Q
	db	046Q
	db	053Q
	db	055Q
	db	053Q
	db	071Q
	db	066Q
	db	100Q
	db	071Q
	db	071Q
	db	100Q
	db	071Q
	db	066Q
	db	066Q
	db	071Q
	db	100Q
	db	100Q
	db	100Q
	db	071Q
	db	066Q
	db	060Q
	db	060Q
	db	066Q
	db	071Q
	db	066Q
	db	066Q
	db	060Q
	db	053Q
	db	046Q
	db	046Q
	db	046Q
	db	046Q
	db	044Q
	db	046Q
	db	053Q
	db	053Q
	db	053Q
	db	053Q
	db	053Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
	db	002Q
	db	377Q
