With the complexity of right now’s video video games, it’s typically tough to recollect their humble beginnings. So, safety researcher, creator, and mother or father Michal Zalewski constructed 4 basic video games utilizing 8-bit {hardware} and easy shows. The result’s playable handheld video games which might be sensible, academic, and pleasant for all ages.
“There’s no actual ethical to this story, however I discovered this to be a enjoyable train: a chance to make use of some out of date components from my venture bin, to be taught the interface of recent OLED shows, to attach with children, and to have a little bit of innocent enjoyable.”
The 4 video games Zalewski constructed are known as TurboSnake (two variations), Dino in Area, and Blockbuster 7000. Every construct enabled new options and launched new design challenges. Aside from the code, there are not any customized components in these builds. For instance, all of the video games are standalone models constructed on perfboard (or protoboard.) All of them function an ATmega 8-bit microcontroller. The shows and applied sciences range with every sport.
TurboSnake 2000 (📷: lcamtuf.substack.com>
The primary model of Turbosnake was paying homage to the sport “Snake” that early Nokia cell phones made well-known. It used a easy 8×8 LED matrix for its display screen and a few push buttons for its management. A later model used a bigger LED matrix and added a seven-segment show for scorekeeping.
Dino in Area (📷: lcamtuf.substack.com>
Dino in Area is a horizontal-scrolling sport the place it’s essential to destroy or keep away from obstacles. This ATmega1284-based sport featured a 20×4 character LCD. One function of the HD44780 controller for these shows is programming customized characters to indicate. Zalewski solely wanted two customized characters to realize the rock and spaceship graphics on this case. The remaining are textual content characters!
Blockbuster 7000 title display screen (📷: lcamtuf.substack.com)
Final, Blockbuster 7000 attracts its design from the basic sport Breakout. This sport additionally used an ATmega1284 microcontroller however modified to a bitmap type 128×64 monochrome OLED show as an alternative of a personality show. This seemingly small change meant designing a customized OLED driver and a 6×6 pixel character font.
These video games might look easy in observe, however they proved well-liked with the household! Not solely did they obtain some gaming enjoyable, however Zalewski’s eldest youngster even decided find out how to modify the EEPROM of 1 sport to allow a cheat!
To be taught extra particulars in regards to the builds, video demos, and supply code, try this weblog publish.