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

PIC18F4550 USB demo board (eBay)
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

Link up the lcd to the board and write simple test code. Start with characters display followed by large graphics.
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

Hack up a case ready to fit the electronics.

Step 4: Fit Electronics

Fit all the electronics.

Step 5: Re Spray Case

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.