> Personally I'd organize in the 8x8 wiring the 4 keypads in a square. Then > I'd drive the rows with the outputs of a 74HC138 decoder, and read the outputs > from the columns using a 74HC151 multiplexer. It'll take 7 PIC I/O pins to do > the job: 3 to drive the HC138, 3 to drive the HC151, and one input to read the > HC151. > > BAJ > Really? I'd have thought an 8x8 square with no external parts. Drive the rows with portD and read the columns with portB interrupt on change. I'm not familiar with MIDI, but certainly I'd have thought the other 17 IO lines would be enough to implement it. As others are fond of saying "engineering is the art of compromise" -Denny -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body