This circuit is a small representation of a very low cost printer sharer i made very long ago. This is as much i can remember of the basic ideas behind the product.
I used to pot the product in epoxy with a black dye and sold a few, they sort of served the purpose. Output impedance of this circuit is high, sink is 220K source is 3.9K+ so use some buffers or drivers at Output. when Enable A is at float-high impedance or low the output O1-O4 is not influenced by A1-A4 inputs. If Enable A is made logic high or 5V then A1-A4 is available at O1-O4. By turning Enable A or Enable B high, you can route the data A1-A4 or B1-B4 to the output O1-O4, you can also mix data and you can expand to any number of input sets or data width. 1N4148 is fast, 4nS, that makes this data switch quite fast. This circuit cannot drive long printer cables without drivers. They will load the output.