PIC Code is now up on the ASM page:
How it works: 2 bytes are sent to the convertor over serial the first is used to select a data line and the second outputted to that port, in actuality the pic starts clockingout the output select as it recieves it and then clocks out the data as it recives it, this is as to much data was being lost while the pic outputted the data, it also helps replace many NOP's.
In this picture you can see top left the output pic with 4mhz crystal and next to it the max232 interface chip, to the right of this is a 4-10 demux and hex invertor and to the right of that another hex invertor and a shift register connected to 8 leds (hardwired to output 0 for testing purposes).
On the board below this is the input pic and its shift register for data input. (To the right of this are 4 switches hardwired to input port 0 for testing). Right at the bottom the output shift register from port 1 can be seen this goes of to the LED display.
This shows the serial to parallel convertor in its box (an old 5 1/4 inch disk box).