include ''m128def.inc'' jmp reset jmp prekid reset: ldi r16, low(RAMEND) out spl, r16 ldi r16, high(RAMEND) out sph, r16 sei beskonacna_petlja: nop nop nop jmp beskonacna_petlja prekid: in r0, gicr mov r16, r0 cpi r16, 32 breq provjera_0 cpi r16, 64 breq provjera_1 cpi r16, 16 breq obradi_2 cpi r16, 8 breq obradi_3 provjera_0: mov r16, r15 cpi r16, 2 brlt obradi_0 reti provjera_1: mov r16, r15 cpi r16, 3 brlt obradi_1 reti provjera_2: mov r16, r15 cpi r16, 4 brlt obradi_2 reti obradi_0: ldi r16, 1 mov r15, r16 sei call prekidni_potprogram_0: reti obradi_1: ldi r16, 2 mov r15, r16 sei call prekidni_potprogram_1 reti obradi_2: ldi r16, 3 mov r15, r16 sei call prekidni_potprogram_2 reti obradi_3: ldi r16, 4 mov r15, r16 sei call prekidni_potprogram_3 reti prekidni_potprogram_0: nop nop nop nop nop inc r10 clr r15 ret prekidni_potprogram_1 nop nop nop nop nop inc r11 clr r15 ret prekidni_potprogram_2: nop nop nop nop nop inc r12 clr r15 ret prekidni_potprogram_3: nop nop nop nop nop inc r13 ret