Switch back to C based timeout ISR in the AVRISP project - assembly version was failing, and only one or two cycles could be shaved off the compiler generated code.
parent
3d28d53c3e
commit
a5e79333e5
File diff suppressed because one or more lines are too long
@ -1,23 +0,0 @@
|
|||||||
#include <avr/io.h>
|
|
||||||
#include "V2Protocol.h"
|
|
||||||
|
|
||||||
.global TIMER0_COMPA_vect
|
|
||||||
TIMER0_COMPA_vect:
|
|
||||||
sei
|
|
||||||
push r24
|
|
||||||
in r24, 0x3f
|
|
||||||
push r24
|
|
||||||
|
|
||||||
in r24, TimeoutMSRemaining
|
|
||||||
and r24, r24
|
|
||||||
breq Epilogue
|
|
||||||
subi r24, 0x01
|
|
||||||
out TimeoutMSRemaining, r24
|
|
||||||
|
|
||||||
Epilogue:
|
|
||||||
pop r24
|
|
||||||
out 0x3f, r24
|
|
||||||
pop r24
|
|
||||||
reti
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in new issue