|
|
@ -59,18 +59,19 @@ AUD_NOTE: |
|
|
INC C |
|
|
INC C |
|
|
AUD_NOTE1: ; DIVIDE THE PERIOD |
|
|
AUD_NOTE1: ; DIVIDE THE PERIOD |
|
|
DEC C ; BY TWO |
|
|
DEC C ; BY TWO |
|
|
JR Z, AUD_NOTE2 ; FOR EACH OCTAVE |
|
|
|
|
|
|
|
|
; JR Z, AUD_NOTE2 ; FOR EACH OCTAVE |
|
|
|
|
|
RET Z |
|
|
SRL H |
|
|
SRL H |
|
|
RR L |
|
|
RR L |
|
|
JR AUD_NOTE1 |
|
|
JR AUD_NOTE1 |
|
|
|
|
|
|
|
|
AUD_NOTE2: |
|
|
|
|
|
LD A, L ; IF NOT ZERO |
|
|
|
|
|
OR H |
|
|
|
|
|
RET NZ ; RETURN THE CALCULATED PERIOD |
|
|
|
|
|
|
|
|
|
|
|
CPL |
|
|
|
|
|
LD H, A ; OTHERWISE RETURN -1 PERIOD (ERROR) |
|
|
|
|
|
LD L, A |
|
|
|
|
|
RET |
|
|
|
|
|
|
|
|
;AUD_NOTE2: |
|
|
|
|
|
; LD A, L ; IF NOT ZERO |
|
|
|
|
|
; OR H |
|
|
|
|
|
; RET NZ ; RETURN THE CALCULATED PERIOD |
|
|
|
|
|
; |
|
|
|
|
|
; CPL |
|
|
|
|
|
; LD H, A ; OTHERWISE RETURN -1 PERIOD (ERROR) |
|
|
|
|
|
; LD L, A |
|
|
|
|
|
; RET |
|
|
#ENDIF |
|
|
#ENDIF |
|
|
|