Why not use 74HC164/74HC165 for I/O. They provide 8 bits each (one for inputs(164) one for outputs(165)). There is also a 565 (I think) that latches the outputs. You can drive as many as you need using 3 (Latch, Clock, Data) PIC I/O pins. Norm