Matrix simplified

Hi there, I have a matrix 8x8 and want to know which cross point has been touched. So far I've used all digital and analog pins for running thorough the 8 rows and 8 columns and it works.
I'd like to reduce the amount of used pins by having just one pin for the row that will pulse and have a li circuit that will set another row an each pulse.
So one pin provides the pulse, while the circuit will accordingly set row 1, then row 2, then row 3, etc.

This way I just need to read the 8 columns and pulse on one output for the next row.

Any idea?

Thanks
Ciao, marco

You can use multiplexers and demultiplexers, to address 8 in-/outputs with 3 pins. Or use shift registers (SPI interface) to drive the matrix.

Thanks! I think a de/multiplexer will do. Any suggestions on which one? What about the 74HC237?

Ciao, marco

74HC4017 as a scanner (but need diodes), PISO shift register to read in data.