5 ms·
And you can extend the decrement for 32 bits as follows: lda a+0 bne .3 lda a+1 bne .2 lda a+2 bne .1 dec a+3 .1: dec a+2 .2
by jcmeyrignac 8y ago
And you can extend the decrement for 32 bits as follows:
lda a+0
bne .3
lda a+1
bne .2
lda a+2
bne .1
dec a+3
.1:
dec a+2
.2:
dec a+1
.3:
dec a+0
- vardump 8y agoPretty logical extension. It still takes only 12 cycles if a+0 != 0. 24 cycles if also a+1 != 0 (=every 256th round), etc. The worst case time is when whole 32-bit counter is zero, 12 clk * 3 + 6 clk = 42 clk. (Disclaimer: clock counts assume original snippet counts were correct).