1one_seconde: ; usage of registers A,B,DE
2             ; return from a call of this routine last exactly 1 second
3speed   EQU  2500       ; clock frequency in kHz  (min. 2 kHz)
4		LD   DE, speed  ; 10 T
5        DEC  DE         ;  6 T
6back:   ; 7+13*x-5 + 10 + 26 = 1000
7        LD   B,74       ;  7 T
8loop1:  DJNZ  loop1     ; 13 T
9        ;  waste 10 ticks
10        DEC  BC         ;  6 T
11        INC  C          ;  4 T
12        DEC  DE         ;  6 T
13        LD   A,E        ;  4 T
14        OR   D          ;  4 T
15        JR   NZ,back    ; 12 T
16       ; 16-5+7+74*13-5+10+10= 1000 T
17        LD   B,74       ;  7 T
18loop2:  DJNZ  loop2     ; 13 T
19        ; waste 15 ticks
20        NEG             ; 8 T
21        LD   A,0        ; 7 T
22        RET             ; 10 T
23