- Of course the fewest GPIO pins is one. This can be done with a matrix of ws2812 pixels. It would take a whole other microcontroller or a lot of logic to get a video wall panel to accept a neopixel signalling protocol. To keep this modification reasonably cheap there is a trade off between logic and interface simplicity. I think 3 ICs and 3 GPIO strikes a reasonable balance.
- A commenter points out that a 74595 shift registers in series with the matrix data, clock and latch lines would be simpler. This is quite clever and something I'd also like to try. With the current approach of 7493 and 74123, I can shift in one row of pixels just once then show it on every row without further shifting of data -- easy vertical bars. Optionally adjacent pairs of rows can be arranged to show the same pixel data to free up microcontroller time to do other things. This trade-off between screen resolution and CPU cycles is what the Gigatron TTL does.