In an attempt of saving money and trying to use up the hoard of electronics I already have, I've begun designing a Sega Genesis 6-button controller decoder with TTL logic rather than using a microcontroller. I think I have a pretty good idea on how to do this and the protocol is relatively simple https://www.raspberryfield.life/2019/03/25/sega-mega-drive-genesis-6-button-xyz-controller/.
But I've been trying to find a Parallel to Parallel shift register to use as a way to capture the outputs of the logic circuitry, store them and then latch them to the output of my decoder. I've found the cd40194, but that is only 4 bits and I was hoping there'd be a shift register within the 74hc family. That and I'd need at least 3 cd40194, since my output has 11 pins (6 buttons + 4 directional + start). I'm looking and I can't seem to find one.
From the sounds of it you could either use a 373 or 573 (easier pinout), that is an 8 bit latch - you latch it, so its outputs are set to whatever teh inputs were at the time of latch, whilst the input changes, so you can keep a snapshot of what the 8-bit bus was before it changed.
Or using two 8-bit D register, like the 574, daisy chained, so 8 2-bit serial shift registers. I don't think you're going to find one a one chip solution that isn't either a microcontroller, or programmable logic (FPGA/CPLD). Trying to find obscure/rare TTL/CMOS logic chips can be frustrating.
Both above solutions have 16 outputs, the first being reading the inputs directly, and read the previous state on the latch, the second would store each 8-bits on both shift registers. You could also read the inputs to the shift registers, so thats 24-bits.
As I assume you're providing the select line you can control the latch/clock of the registers between changing the select line.