Ich hab mal das Datenblatt angeschaut.

Folgende Register müssen mit Werten befüllt werden:
SFIOR
ACSR

Wenns über Interrupts Laufen soll müssen diese auch enabled sein - Rätselhaft.

MCUCR ist auch eine beliebte Fehlerquelle, hat aber soweit ich sehe kein Bit für den Comperator und die Interrupts hast Du mit #asm("sei"); ja auch freigegeben.

Das die JTAGEN Fuse ist auch ein beliebter Fehler, betrifft aber nur den Port C