[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”
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”
Running unofficial code on a Nintendo Game Boy has long been a solved problem. However, you still need a way to get that code onto the handheld console. The Squareboi cartridge promises to do just that, as created by [ALXCO-Hardware].
It’s a well-featured cartridge, with up to 4 MB of ROM storage onboard. It also features a ferromagnetic RAM part for savegame storage, which doesn’t need a battery to hang on to your precious data. It’s designed to be compatible with the vast majority of Game Boy and Game Boy Color games, with efforts made to support the most common mapping schemes. It can be built using entirely through-hole components, and is readily programmable via an Arduino.
For those eager to tinker with code on the Game Boy, diving into the Squareboi is a great way to get closer to the bare metal and understand what’s really going on at the low level. Those interested in building their own can get all the relevant details over on Github.
We’ve seen similar hacks before, too, like the cartridge that brought Wikipedia to the humble Nintendo handheld. If you’ve been whipping up your own Nintendo hacks, be sure to drop us a line!