High Level View on Design

If you want to make an apple pie from scratch, you must first create the universe.
-- Carl Sagan

Overall: Output will be produced on an oscilloscope, which will display the current state of the game. We will do this without changing any circuitry in the scope. The microcontroller is in charge of producing all voltages that will be sent to the DAC which will then be sent to the scope.
The Oscilloscope: We will be using an "old school" analog oscilloscope. It will be put in a graphing mode which allows input 0 to correspond to an x value, and input 1 to correspond to a y value. In this way, the DACs can hand the oscillloscope two voltages, which the scope will in turn change to a point on the screen.
DACs: Since we are sending analog signals to the oscillospe, and the microcontroller only produces digital signals, we will need to build two DACs. One will serve to convert the value for the x-axis output, while the other converts values which will be transformed to the y-axis of the oscilloscope.
Microcontroller: The Microcontroller we will use will be the MEGA163 since it contains an internal ADC. The main purpose of the microcontroller will be to serve as a state machine that toggles between producing each paddle and the ball. The oscilloscope can only produce 1 point on the screen at any one time, so the microcontroller will have to make that point move fast enought that our eyes perceive both paddles and the moving ball at the same time.
Paddles: The paddles are actually produced using variable resistors and a voltage divider. These will control the bottom position of each paddle (the rest of the paddle will be made via the microcontroller). The voltage divider will control the voltage output range to be 0 to 5V on the x axis, and 0 to 4V on the y-axis. This value is then sent to the ADC of the microcontroller, which hands the value to our DACs. The information can not be sent directly to the scope, since the scope has only two probes which we would not want to move during a game.