Arduino Gameboy Cartridge?

Should I try to run a max current test on a GBA?


1 Like

I just knew technical info for the chip was protected by NDA. I once bought a surplus vfd from noritake or futaba, cant remember which, and they refused to give me any info about it because it was under NDA (for a nearly 30 year old display).

I talked to some people and it does seem for sure the ESP32 draws too much power. Peak 2A bursts, it would almost certainly shut the GBA down.

Gonna go to Game Stop and see if they have a MicroArcade and a GBA for me to buy :slight_smile:


Have added in support for ArduboyTones-style tone sequences :smiley:


…keep in mind that the different GBA models can vary a lot in terms of power consumption:

There are no stores around me selling these things I’ll have to buy them online, RIP local video game retailers.

Does this mean ATMlib doesnt work yet?

I love this, I wanna see if we can run it without the battery and fit in into a cart!!!

Selling Arduboy on a GBA cartdridge would be epic!


That is the plan, @uXe is making it possible! All hail @uXe!


In fact, I’d rather have it in a DMG cartdridge since it’s all I have, but I think DMG cartdridge work in a GBA anyway right?

Get the Adafruit python one for DMG I guess lol

GB cartridges work in a GBA, but the pins on the cartridge might be different.
Even if you put it in a GB cartridge it probably wouldn’t work on the original GB though because the code is targeting the GBA.
It might be possible to make it work on both, but that would be more effort.

GBA can play original GameBoy / GameBoy Color games, yes. But this design is targeting the GBA mode, because A. then it runs at 3.3V, like the FPGA does, and more importantly B. only the GBA has a direct bitmap mode we can use to write to the screen with!


Not yet. I am currently only addressing one of the GBA’s square wave channels, but there is so much more potential in terms of sound hardware - the GBA has two 8-bit DMA sample channels, as well as the same 4 channels the original GameBoy had (two square waves, a programmable 4-bit wave table, and a noise generator). :musical_note:

But the Gameboy has more than enough 1bpp/2bpp tiles to do 128x64.
The FPGA can do the tile rotation easily for the Z80 to transfer tile data efficiently.
The tile order can be rearranged using the gameboy’s tilemap to match the FPGA memory map (other than having to rotate the 8x8 tiles).

The most annoying part is really having to deal with the 5V level shifting.
I don’t think I have any 5V FPGAs either.

The GBA’s bitmap mode also has the advantages of A. being able to quickly and automatically copy the frames in using DMA (which the GameBoy won’t - unless you want to make it a GameBoy Color only cart?) and B. the code can be easily expanded to use the full 240x160 resolution, and as much of the GBA’s colour palette as you like?

Awesome - looking forward to the prototype! (or you could just use tannewt’s cart design and see if you can make the SAMD51 do it?)

1 Like

I’d need to cram an ATmega32u4 somewhere in there too.

I got 40 quad-channel level shifters coming in the mail to finish my SSD1306 emulation with the Due’s SAM3X.

Is tannewt’s cart emulating the ROM with the SAMD51 supplying the data in software? That’s pretty hardcore.

Nice! When do we get to see the source code?

tannewt (Scott Shawcroft) is the project lead for adafruit’s CircuitPython, so the cart is built around that - the only demos I have seen it actually running though are the old substitute-your-own-logo in place of the Nintendo® logo hack, and using it to twiddle the sound registers…

I know that this is only partly on topic but this really caught my attention. I have been wanting to make something like this except just using a pi zero to do both the fpga job as well as emulating a arduboy or even emulating gameboy games. I have enough knowledge with physically designing the board but the coding is where I fall behind, I will follow this closely and see if I can learn enough to make it work. As far as power goes I need to get my old gba out and see if it could be powered on from the 3.3v rail that way you would only need a battery in the cartridge and not the gameboy as well