Introduction: DIY Game & Watch
Back in the 80s when I was a kid, My parents bought me a Game and Watch game called Vermin. It was actually a TimeOut Exterminator. It was a really simple game with just left and right controls and the idea was to hit moles that were emerging from the ground. The screen consisted of pre drawn monochrome lcd images that were turned on and off when they were needed to be displayed. I loved that game and played it for many years. My parents still had it many years later and I ended up selling it on eBay and got quite a lot for it.
A few months back I was listening to one of my favourite podcasts "Retro Gaming Roundup" which featured the Top 10 Game & Watch games. This re-ignited my interest for the Game & Watch series and so I decided to build one of my own only mine would feature a graphic LCD and allow me to emulate multiple Game & Watch games and even write new ones. Source code and Schematics can be found in the final step.
Step 1: Parts
http://www.tiertex.com/index.php?route=product/product&product_id=51
This is a useful little board that allows you to upload HEX files via the USB interface and basic front end software running on windows or Linux.
Nokia 5110 LCD display (eBay)
Small Lion battery (eBay)
Lion battery charger (eBay)
Old handheld game (eBay)
Step 2: Initial Testing
Code was written in C using MPLAB and uploaded using the HID bootloader software.
The 18F4550 on the board came preloaded with the microchip bootloader code so no special debugging or programming kit was needed, just a mini USB cable.
Step 3: Handheld Case
Step 4: Fit Electronics
Step 5: Re Spray Case
Use transfers for the lettering.
Use clear lacquer to protect transfers.
Step 6: Complete and Test
My Game and Watch also had a backlight feature.
I hope to add more games in the future. I fancy doing a Game & Watch version of a modern game. A quick way would be to keep the game play the same by using exactly the same code and just change the graphics.
Step 7: Schematics and Source Code
Slightly dodgy Schematics I'm afraid.
Source Code
My ultimate aim with the software was to select a game at startup by pressing the left and right buttons and scrolling through the game reset screens until the desired game is found and then pressing Game A or Game B to start the game. It would be great to build up a collection of games if someone else could contribute.