After a seemingly endless stream of projects that see the ESP8266 open doors or report the current temperature, it can be easy to forget just how powerful the little WiFi-enabled microcontroller really is. In fact, you could argue that most hackers aren’t even scratching the surface of what the hardware is actually capable of. But that’s not the case for [Brian Wagner] and his students from the Kentucky Country Day School.
Their project, the GamerGorl, is a completely custom handheld game system running on a Wemos D1 Mini development board. The team’s PCB, which was developed over several iterations, is essentially a breakout board which allows them to easily connect up peripheral devices. Given the low total component cost of the GamerGorl and relative simplicity of its construction, it looks like a phenomenal project for older STEM students.
Beyond the ESP8266 board, the GamerGorl features a SSD1106 1.3″ OLED display, a buzzer for sound effects, two tactile buttons, and an analog joystick originally intended for an Xbox controller. Around the backside there’s a WS2812B RGB LED strip that’s at least partially for decoration, but it’s also actively used in some of the games such as the team’s take on Simon.
It was about time (Mario Time) that Super Mario Land for the original Game Boy was revisited. The game served as the entry point into the world of portable gaming for millions, and it was an early example of the type of adventure players could expect from a handful of AA batteries. The original Game Boy system itself may have only been able to display four shades of grey, however, that never stopped players of Super Mario Land from imagining what the game would have looked like in stunning color. Now thanks to [toruzz] we no longer have to imagine, because their Super Mario Land DX ROM Hack does just that…and then some.
The Super Mario Land DX ROM hack adheres to the Game Boy Color’s 16-bit color palette, so it actually runs on real hardware. No changes to the gameplay were made and it also runs in the native 10:9 aspect ratio for the Game Boy. According to the patch readme file, it is recommended to use a legally sourced dump of the 1.0 version of Super Mario Land and utilize Lunar IPS to apply the patch. Additionally a CRC check sum is provided to ensure everyone is working from the same starting point.
Super Mario Land was a launch title for the Game Boy in 1989, but there was another handheld game system that released that year as well (the Atari Lynx). The Lynx featured a full color backlit LCD display, so it was not as if handheld game systems of the era were restricted to being monochromatic. Granted the Lynx came with a price tag nearly twice that of the Game Boy, but a transformative ROM hack such as the Super Mario Land DX one can serve almost as an alternate history. An alternate history that we all can experience now be it on a desktop or in true portable form.
To see the Super Mario Land DX ROM Hack in motion, there is the gameplay video from YouTube user Vincent Hernandez below:
Despite all the progress video game graphics have made, it is safe to say that we won’t see any decline in oldschool 8-bit games any time soon. For some it’s about nostalgia, for others it’s just a great and simple-enough first step into game development itself. For [gocivici] it was a bit of both when he built this camcorder style, one-button gaming console.
With a Raspberry Pi Zero running PICO-8 at its core, [gocivici] salvaged the viewfinder of an old camcorder for the display, and that way turned it into a whole other kind of handheld console. For full ergonomic handling, one single, thumb-operated push button serves as only control option. This of course makes it a bit challenging to re-use existing games that would require more input options, so he and some friends decided to just write a suitable game on their own with the hopes that others might follow.
Unfortunately we don’t see a lot of projects using these old camcorder viewfinders, and considering modern LCD and OLED options it’s not really that surprising, but there’s just something intriguing about these tiny CRTs. So in case you want to see more of them, have a look at this tiny Atari display, and the DIY night vision monocle from a few years back. And to keep your eyes safe and sound, [gocivici] got you covered as well.
This is likely not to come as much of a shock to you, but the ESP8266 is pretty popular. At this point, we’re more surprised when a project that hits the tip line doesn’t utilize this incredibly cheap WiFi-enabled microcontroller. If you’re making a gadget that needs to connect to the Internet, there’s a good chance some member of the ESP family is going to be a good choice. But is it a one-trick MCU?
Well, judging by software frameworks like the “Little Game Engine” created by [Igor], it looks like the ESP is expanding its reach into offline projects as well. While it might not turn the ESP8266 into a next-gen gaming powerhouse, we’ve got to admit that the demos shown off so far are pretty impressive. When paired with a couple of buttons and a TFT display such as the ILI9341, the ESP could make for a particularly pocket-friendly game system.
The game engine that [Igor] has developed provides the programmer with a virtual screen resolution of 128×128, a background layer, and 32 sprites which offer built-in tricks like collision detection and rotation. All while running at a respectable 20 frames per second. This environment is ideal for the sort of 2D scrolling games that dominated the 8 and 16-bit era of gaming, and as seen in the video after the break, it can even pull off a fairly decent clone of “Flappy Bird”.
In addition, [Igor] created an online emulator and compiler which allows you to develop games using his engine right in your web browser. You can load up a selection of example programs and execute them to see what the engine is capable of, then try your hand at developing your own game before ever having to put the hardware together. Incidentally, the performance of this online development environment is fantastic; with even the fairly complex “Flappy Bird” example code compiling and starting in the emulator nearly instantaneously.