An Epic Quest To Build The Ultimate Game Boy

If you didn’t grow up clutching Nintendo’s original DMG-01 Game Boy, it might difficult to see the appeal in 2023. It had the ergonomics of a brick, the system’s unlit LCD screen utilized a somewhat nauseating green color palette, and when compared to its contemporary competition like the Sega Game Gear or Atari Lynx, it would certainly appear to be the inferior platform. But despite its faults there was just something magical about the machine, and those who have a soft spot for the iconic handheld are always eager to relive those glory days.

Now, thanks to the incredible work of [Bucket Mouse], playing the old “brick” Game Boy doesn’t have to be nearly as austere an experience as it was in 1989. That’s because he’s developed a set of replacement PCBs for the handheld that not only implement all of the features of the later Game Boy Color, but sprinkle in some modern niceties as well. The result is a handheld that looks like the original on the outside, but plays all your favorite games even better than you remember them. Continue reading “An Epic Quest To Build The Ultimate Game Boy”

GB Interceptor Enables Live Screen Capture From Game Boy

[Sebastian] had a tricky problem to solve. Competitors in a Tetris tournament needed to stream video of their Game Boy screens, but no solution readily existed. For reasons of fairness, emulators were right out, and no modifications could be made to the Game Boys, either. Thus, [Sebastian] created the GB Interceptor, a Game Boy capture cartridge.

Thanks to the design of the Game Boy, there’s plenty of access to useful signals via the cartridge port itself. [Sebastian] realized that a non-invasive capture device could be built to sit in-between the Game Boy and a cart, and send video to a computer. Unfortunately, there’s no direct access to the video RAM via this port, but [Sebastian] figured out a nifty workaround.

The build uses a Raspberry Pi Pico. The chip’s two cores emulate the Game Boy’s CPU and Picture Processing Unit, respectively. Doing this, while having the chips keep up with what’s going on in the Game Boy, required overclocking the Pico to 225 MHz. The system works by capturing data from the cartridge’s memory bus, and follows along with the instructions being run by the Game Boy. By doing this, the Pico is able to populate its own copy of the video RAM. It then spits this out over USB, where it can be displayed and streamed online as desired.

There are some edge-case limitations, but for its intended purpose, the system works great. Currently, the hardware is usable on Linux and Windows, though it does require some fiddling in the latter case. Files are on Github for those eager to build their own. If you simply want to dump carts rather than stream from your Game Boy, we can help there, too. Video after the break.

Continue reading “GB Interceptor Enables Live Screen Capture From Game Boy”

Dumping Game Boy Cartridges Via The Link Cable Port

When it comes to vintage consoles like the Game Boy, it’s often nice to be able to dump cartridge ROMs for posterity, for archival, and for emulation. To that end, [Francis Stokes] of [Low Byte Productions] whipped up a rather unique method of dumping Game Boy carts via the link cable port.

The method starts by running custom code on the Game Boy, delivered by flash cart. That code loads itself into RAM, and then waits for the user to swap in a cart they wish to dump and press a button. The code then reads the cartridge, byte by byte, sending it out over the link port. To capture the data, [Francis] simply uses a Saleae logic analyzer to do the job. Notably, the error rate was initially super high with this method, until [Francis] realised that cutting down the length of the link cable cut down on noise that was interfering with the signal.

The code is available on GitHub for those interested. There are other ways to dump Game Boy cartridges too, of course.

Continue reading “Dumping Game Boy Cartridges Via The Link Cable Port”

TEGA: Typescript Embedded Game Boy (Macro) Assembler

[Francis Stokes] has a real love for the original Game Boy, suggesting that owning this machine pushed him along a certain path that many of us would recognize. Developing Game Boy games isn’t particularly difficult from a hardware point of view, as you can easily buy special cartridges that have an SD card slot, allowing custom code. [Francis] had the idea of easy software development by producing a typescript hardware abstraction library, TEGA (or TypeScript Embedded Game Boy Macro Assembler). This provides a safe environment in which to play with the code, which can then be run inside an emulator such as BGB, before being deployed onto actual hardware.

The video embedded below — which we warn you now is a long one — goes into extensive justification and technical explanation of how [Francis] leverages typescript to create lots of nice features to produce safe code, whilst handling many of the Game Boy’s architectural restrictions, as well as the weirdness of the Sharp SM83 processor that powers it. We particularly liked the built-in support for on-the-fly asset compression, since every byte matters in the meager 32 Kb system, it’s nice not to have to think about it all the time! After discussing TEGA, the Game Boy hardware, the ins and outs of a demo game Block Jump, and then how to debug with BGB, we’re pretty confident many of you will be in a strong position to bust out a Game Boy application in the future!

As an aside, we did also stumble upon a new hardware guide provided by Finnish programmer and Game Boy superfan [Joonas Javanainen] which will help frame some of the topics [Francis] was talking about.

You may recall a little while back, the same author targeted the RISC-V using code written in typescript. After all, when you’re comfortable with a tool, you can shape it to do practically anything.

Continue reading “TEGA: Typescript Embedded Game Boy (Macro) Assembler”

The Game Boy Color Accessory You’ve Been Waiting For

Sometimes silly projects catch our eye, and we just can’t resist covering them. Over on Hackaday.io, [solderking] realized that there was a glaring omission in the multi-game management hardware for the Game Boy Color. Obviously, it’s too mundane to carry the handheld around with a bunch of games in one’s pocket, and a hardware multi-changer would definitely improve the usability. This convenient, pocket-friendly solution allows you to dock up four cartridges at a time, and with only a little mild inconvenience, spin the whole assembly, lock in a game and load it up. What could be easier?

Constructed from a ridiculous three-tier PCB stack, with a rotating center joint, the assembly is completely passive, with the connections from the selected game cartridge passed down a series of connectors before finally entering the Game Boy via the usual edge connector. The mere fact that this works at all just shows how tolerant (and we guess, slow) older gaming platforms used to be, and just what you can get away with! Still, it’s a fun build, and it does work, which just goes to show that just because you can, then you should.

We’re no strangers to Game Boy hacks. Here’s a useful cartridge to help with developing your first program. If the old platform is just a bit too limited for you, then we’ve got you covered with a hack that wedges an iCE40 FPGA and a Pi Zero inside the case, to give a bit more oomph.

Continue reading “The Game Boy Color Accessory You’ve Been Waiting For”

A Game Boy Advance – Downgraded!

We feature a large number of game console mods here, because enhancing the experience of using a classic machine often involves some really clever work. But here’s one that’s a bit different, instead of upgrading his Game Boy Advance, [Wenting Zhang] has downgraded it from a colour screen to a monochrome LCD. Take a look at the video below the break.

One might ask why this would be necessary, given that there are plenty of backlit colour LCD upgrades already for the GBA, but perhaps people who played the original might understand that it’s about improving the viewability over the rather poor-quality colour LCD original.

Interesting too is the choice of display controller. Where it might be expected to find an FPGA, instead there’s an PR2040. He goes into detail about its programming, and we hope it might inspire any others looking at screen transplants. Meanwhile if the name [Wenting Zhang] means anything to you, it should be for his other work with mono LCDs.

Continue reading “A Game Boy Advance – Downgraded!”

Bringing The Hinge To A 1990s Game Boy

The new hotness in mobile phones is it seems a hinge, and an ever-so-fragile flexible LCD display. There’s nothing new in a hinge of course, a couple of decades ago they were all the rage in feature phones, and of course Nintendo got in on the act with the ever-so-cute Game Boy Advance SP. This hinged design caught the attention of [Allison Parrish], who has brought it to an earlier generation of Game Boy with the Game Boy Pocket SP. It’s a late-1990s Game Boy Pocket whose PCB has been carefully cut in half, in a custom case that looks for all the world like the hinged case of the Advance SP.

The case is a neat bit of CAD work very nicely 3D printed and fitted with a set of Advance SP hinges, but perhaps the neatest part of this build is the se of a set of flexible PCBs to connect the two halves of the unit together. This looks for all the world as though it came this way from the factory, which is an achievement above many console mods.

The whole thing is a little lumpy compared to the SP to make space for the Pocket’s full-size cartridge, but not so much as to make it ugly. Any 1990s kid with one of these would have been the envy of all their classmates!

You may not be surprised to know that this isn’t the first respin of a Nintendo console into an SP-style case.