Manche Ports vom Atmega haben doppelte-Belegungen und die müssen explizit deaktiviert sein sonst funktionieren die Ports an der Stelle nicht.
This.
Zum Debuggen könntest Du die acht Ausgangsleitungen direkt mit den acht Eingangsleitungen verbinden, also ganz ohne (Tastatur-)Matrix, und dann die acht Bits durchtesten.