+volatile int dead = 0;\r
+\r
+ISR(SIG_OVERFLOW1) { \r
+ upper = upper + 1;\r
+\r
+ if (!dead) {\r
+ if (PORTE & (1<<5)) PORTE &= ~(1<<5);\r
+ else PORTE |= (1<<5);\r
+ }\r
+\r
+ TCNT1 = 0;\r
+ sei();\r
+}\r
+\r
+//void die() { dead = 1; cli(); PORTE|=(1<<5); _delay_ms(2000); while(1) { } }\r
+\r
+void die(int two, int three, int five) {\r
+ dead = 1;\r
+ PORTE &~ ((1<<2) | (1<<3) | (1<<5));\r
+ if (two) PORTE |= (1<<2);\r
+ if (three) PORTE |= (1<<3);\r
+ if (five) PORTE |= (1<<5);\r
+ while(1) { }\r
+}\r