Hallo,
die Interupt-Sprungtabelle ist anders aufgebaut und die Sprünge sind JMPs anstatt RJMPs.

Einige IO-Register liegen an anderen Adressen.
Manche auch an Adressen oberhalb von 1Fh,
so dass sie mit den "normalen" IO-Befehlen wie IN und OUT usw. nicht erreicht werden können.
Die muss man dann mit LDS und STS ansprechen.
Das kostet dann jedesmal einen zusätzlichen Takt.

Die Registerbezeichnungen haben sich auch geändert, meistens
sind sie aber nur durch eine Ziffer erweitert worden.
Z.B: Usart-Data-Register heisst beim Mega-8 UDR und beim Mega-168 UDR0


Gruß Jan