Never underestimate the power of nostalgia. In an age when there are more megapixels stuffed in the sensor of a smartphone camera than the average computer display can even represent, why would jagged images from a 20-year-old grayscale camera with pixels numbering in the thousands still grab attention? Maybe what’s old is new again, and the coolness factor of novelty is something that can’t be quantified.
The surprise I had last Monday when I saw my Twitter notifications is maybe only second to the feeling I had when I was invited to become a Hackaday contributor. I’d made a very simple web app which mimics a Game Boy Camera using the camera from your phone or desktop, and it got picked up by people so much that I’m amazed my web host is still holding. Let’s look at why something seemingly so simple gained so much traction.
The Gameboy is one of the biggest platforms in the chiptune scene. While it’s possible to play a show with a single handheld, many artists choose to use two or even more to fatten their sound and rock the crowd. To ease the workflow of creating songs for such a setup, [tommitytom] created Retroplug and you can see him walk through the features in the demo video after the break.
Retroplug is a VST wrapper for the Sameboy Gameboy emulator. This makes it possible to run multiple emulated Gameboy instances within digital audio software like Ableton or Fruityloops. Rather than having to juggle multiple 30-year old Gameboys and the associated batteries and link cables, instead, it can all be done within a hosted VST window.
Presently, the software works only with 64-bit Windows and VST2, however source is available for those eager to peek under the hood. It fully implements MIDI support for mGB, and works well with LSDJ and Arduinoboy setups. *.sav files are created for each emulated instance too, so when you’re done composing, you can throw your songs onto real hardware when you go out and perform!
We see no shortage of fresh projects, from Genesis chiptune players to MIDI control for Gameboys. As its adherents always say, chiptune will never die. We’d love to see a similar project done with a C64 emulator, NES, or even the Genesis. If you happen to put it goether, drop us a line!
In the world of chiptune music there are many platforms to choose from, each with their own special flavour tot heir sound. The Game Boy has a particular following, but it differs from some of its contemporary platforms in having a custom sound chip built into the same silicon as its processor. You can’t crank open a Game Boy and lift out the sound chip for your own synth project, instead you must talk to it through the Game Boy’s Z80 processor. This is something [Adil Soubki] knows well, as he’s completed a project that turns the handheld console into a MIDI synthesiser.
A Game Boy was designed to play games and not as a developer’s toy, so it doesn’t exactly roll out the red carpet for the hacker. He’s got under the console’s skin by mapping a section of its memory address map to the pins on a Teensy microcontroller board, and running some Game Boy code that reads the vaues there and uses them to configure the sound hardware. The Teensy handles the translation between MIDI and these byte values, turning the whole into a MIDI synthesiser. It’s a succesful technique, as can be seen in the video below the break. Best of all, the code is available, so you can have a go for yourself.
When the Game Boy Advance came on the scene in 2001, it was a pretty big deal. The 32-bit handheld represented the single biggest upgrade the iconic Game Boy line had ever received, not only in terms of raw processing power, but overall design. It would set the state-of-the-art in portable gaming for years, and Nintendo was eager to get developers on board.
Which could explain why the official GBA development kit, recently shown off by [Hard4Games], looks like something that was built in a hackerspace. It’s pretty common for console development systems to look more like boxy 1990s computers than the sleek injection molded units that eventually take up residence under your television, but they don’t often come in the form of a bare PCB. It seems that Nintendo was in such a rush to get an early version of their latest handheld’s guts out to developers that they couldn’t even take the time to get a sheet metal case stamped out for it.
All of the principle parts of the final GBA are here, and as demonstrated in the video after the break, the board even plays commercially released games. Though [Hard4Games] did find that some titles from the later part of the handheld’s life had unusual graphical glitches; hinting that there are likely some low-level differences that don’t manifest themselves unless the developer was really digging deep to squeeze out all the performance they could.
The board also lacks support for Game Boy and Game Boy Color games, though this is not wholly surprising. When an older game was inserted into a GBA, the cartridge would physically depress a switch that enabled a special 8080-based coprocessor that existed solely for backwards compatibility. Adding that hardware to a development board would have made it more expensive and added no practical benefit. That said, [Hard4Games] does point out that there appears to be a unpopulated area of the board where the backwards compatibility switch could have been mounted.
Hackers have always been enamored with the Game Boy, so it’s fitting to see that the official development kit for the final entry into that storied line of handhelds looked a lot like something they could build themselves. If anyone feels inclined to build their own “deconstructed” GBA in this style, you know where to find us.
Those of you who are familiar with 1990s handheld consoles may recall that Nintendo’s Game Boy Color had an infra-red receiver and transmitter. The thought of a handheld computer with infra-red capabilities interested [jg], who immediately set about converting it into a remote control for an air conditioner.
The Game Boy doesn’t have dedicated infra-red remote control hardware, instead the IR diodes appear to be connected to I/O lines. Thus the bitstream bas to be bit-banged, and takes the processor’s entire attention when transmitting. The software is neatly placed on a reprogrammed bootleg cartridge.
It’s an interesting read in terms of the approach to reverse engineering, for example finding the parameters of 37 kHz infra-red remote control by trial and error rather than by a quick read up on the subject, or searching for information on National air conditioners and finding nothing, but not searching the National brand itself to find that a search on Panasonic air conditioners would likely give all the information needed. But the end result operates the appliance, so it’s good to record a success.
If a Game Boy was a part of your childhood, you were probably more than once dreaming of spending your entire school day with it. Well, they had to wait a few more years for that, but eventually in 2015, [Asger], [baekalfen], and [troelsy] made that dream reality when they created a Game Boy emulator in Python for a university project. However, it didn’t stop there, and the emulator has since grown into a full-blown open source project, PyBoy, which just reached the version 1.0 release.
Since it started out as an academic project, the three of them had to do their research accordingly, so the background and theory about the Game Boy’s internal functionality and the emulator they wrote is summarized in a report published along with the source code. There is still some work to be done, and sadly there is no sound support implemented yet, but for the most part it’s fully functional and let’s you successfully play your own extracted cartridges, or any ROM file you happen to have in your possession.
Being an emulator, you can also inspect its inner life when run in debug mode, and watch the sprites, tiles, and data as you play, plus do cool things like play the emulation in reverse as shown in the clip below. Even more so, you can just load the instance in your own Python scripts, and start writing your own bots for your games — something’s we’ve seen in action for the NES before. And if you want to dive really deep into the world of the Game Boy, you should definitely watch the 33c3 talk about it.
Last year we brought word of a project from [Shyri Villar] that turned a stock Game Boy Advance into a Bluetooth controller by exploiting the system’s “multiboot” capability. The prototype hardware was a bit ungainly, but the concept was certainly promising. We’re now happy to report that the code has been ported over to the ESP32, making the project far more approachable.
To clarify, the ESP32 is now the only component required for those who want to play along at home. Just five wires connect the microcontroller to the GBA’s Link Cable connector, which is enough to transfer a small ROM over to the system and ferry user input to the Bluetooth hardware. Even if you aren’t interested in using it as a game controller, this project is an excellent example of how you can get your own code running on a completely stock GBA.
While the original version of the hardware was a scrap of perfboard dangling from the handheld’s expansion connector, reducing the part count to one meant [Shyri] was able to pack everything into a tidy enclosure. Specifically, a third party GBA to GameCube link cable. This not only provides a sleek case for the microcontroller that locks onto the handheld with spring loaded tabs, but also includes a male Link Cable connector you can salvage. It looks as though there’s a bit of plastic trimming involved to get the ESP32 to fit, but otherwise its a very clean installation.