A very simple solution is to use a voltage divider. Switches (buttons) are connected to points on the divider and the voltage on the output of the switch is read using analogRead.
... (no analog in or output is left).
(no analog in or output is left).
Does anyone have a example how to use a shift register?
Don't forget analogWrite Mike.