I was hoping to use this as an opportunity to mess around with logic ICs. Looks like it may not be possible unless I can find some NOS or pulls.
You can do it with logic IC's down to the metal.
At the bottom of the post is the logic table from 0 to 15 and the segments that must be on.
Usually for this type of problems you have the input and the inverse of the inputs as 8 lines into the circuit.
Then do logic per segment. You can use not, and, or, nand, nor, xor, nxor, buffer the result via flip-flops and the output can be inverted if it makes more sense to turn segments off instead of on at the end.
Look for the less cases, for example segment a is off if
not((not i3) and (not i2) and (not i1)) and (i0)
xor ? or ?
not((not i3) and (not i1) and (not i0)) and (i2)
xor ? or ?
not((not i2) and (not i1)) and (i3) and (i0)
xor ? or ?
(not i2) and (i3 and i1 and i0)
xor ? or ?
(not i0) and (i3 and i2 and i1)
But this will require some gates and a lot of thinking
To get you started here is the truth table that you must achieve.
Then again you can always get a chip that does it for you
in abcdefg
0000 1111110
0001 0110000
0010 1101101
0011 1111001
0100 0110011
0101 1011011
0110 0011111
0111 1110000
1000 1111111
1001 1110011
1010 1110111
1011 0011111
1100 1001110
1101 0111101
1110 1001111
1111 1000111
- a
f| |b
g -
e| |c
- d
[code]