Take look at this keypad (up to 64 keys) encoder. EDE1188.
**broken link removed**
The EDE1188 Keypad Encoder IC is designed to interface a matrix-type 8 row x 8 column (64 key or less) keypad to a microcontroller or other host processor. A one-wire serial or eight-wire parallel interface returns the keypress data and can be used in conjunction with a 'data valid' signal for polled or interrupt-driven applications. The EDE1188 provides enhanced keypad features such as contact debouncing and key auto-repeat in an easy-to-use package that will lower software overhead in the host microcontroller and reduce the I/O pin requirements from sixteen to one, frequently resulting in the use of a less costly host microcontroller in your design.
regards
meax98