Here's a strange one.
I've sucessfully used the interface code from the Atmel app note to decode data from a PC keyboard on mega16 and mega162, but migrating the code to the mega644 has been difficult. I'm wondering if anyone else has successfuly used the old routines on a mega644.
Currently, I have to press a key 11 times for the routine to decode the key correctly. This lead me to believe my interrupt wasn't working correctly, but after the 11th key press, it will decode keys correctly for 13 more key presses, then it quits working again. The cycle is repeatable after RESET.
I'm using the latest releases of Studio and WINAVR, but went back and compiled with an older version just in case, with the same result.