A decade is a long time to carry around a project idea in your head. Fortunately, the Tiny Games Contest happens to coincide with [senily64dx]’s getting back into ATMega programming, so they can finally make their zero-dimensional PONG dreams come true (and have the chance at great prizes, too, of course).
If you don’t already get what’s going on here, zero-dimensional PONG takes 1D PONG and turns it on the short side. Imagine the light coming toward you, then moving away toward your opponent, and you have the basic idea. So, how is this done? Pulse-width modulation controls the brightness of the LED, and, well, you have to be pretty fast, although there is a small margin for the inevitable error.
In the video after the break, you can watch [senily64dx] play themselves using a red/green LED. Player one must press the button when red is fully lit and green is off, and player two goes when green is fully lit and red is off. The cool thing is that [senily64dx] used sockets, so they can plug in any LED they want. There are nine difficulty levels to control the PWM speed, so one can really test one’s reaction time.
If you want to build one of these, you’ll need an ATtiny2313 or something similar, a couple of buttons, a display, and the optional but fun buzzer. The well-commented code is available through [senily64dx]’s site.