I did the same thing, a '247, along with a
'138 1-of-8 decoder to
decode the high values, feeding a bunch of NAND gates. Use the blanking
input on the 247 to disable it when A-F is being displayed. Did you
avoid the use of the 1-of-8 decoder?
I expect Tony's solution was 7 16-to-1 muxes, essentially a hardwired
ROM.
Indeed it was... That's always a brute-force solution.
Anoyther idea. A '247 to get the 0-9 patterns. 3 off '253 dual 4-input
mexes. These decode the low 3 bits (and may need an extra inverter) to
get the segment aptters of the a,b,c,d,f segmetns of the A-F patterns (e
and g are always on in those states. And a little bit of logic to disable
the '247, enable the muxes and turn on e,g for the appropriat input
states. Probably only a couple more chips.
There would be another solution with a 1-of-16 decoder feeding 7 NAND
gates, doable in 8 packages (1 24-pin).
Yep.
-tony