If you use a xy matrix then diodes are required for each switch to check for multiple key presses otherwise it works ok (fell in to that one myself when reading personality jumpers) If you do the code in a loop then the scan code can be quite small it only requires a single decrement counter (for the colums) and the FSR to store the rows in consecutive memory locations. Go round the loop onece for each colum. Steve.....