Game Boy Communicates Directly With An SD Card

[kgsws] just finished his Game Boy upgrade that allows him to load games from an SD card. Loading a game off an SD card has been done before, but [kgsws] decided to not to use a cartridge-based device. In the end, he threw out all the stops and finished his project by having the Game Boy access an SD card directly.

[kgsws] his project trying to figure out how to put some GPIO pins on a game cartridge, but figured that this would take too much hardware. After looking at the specs of the link port, he realized that it was the wrong polarity. Not to be deterred, [kgsws] realized that there was something like a general-purpose I/O on the Game Boy – the joypad input.

After figuring out the logic of accessing the SD card through the joypad, [kgsws] set to work building a FAT32 parser and a simple BIOS on an EEPROM. The entire system runs off an ATmega32, and he was kind enough to include the schematics and all the code. The end result is really neat – it can load and save 512kB Game Boy ROMs and save data, read .txt files. As an added bonus [kgsws] put in a custom boot logo to replace the top-scrolling Nintendo logo.

While the joypad buttons don’t work when the SD card is being accessed, and the battery draw is larger than the already power-hungry DMG-001, we’re amazed by [kgsws]’s hardware hackery. Check out the video of [kgsws]’s hack below.


26 thoughts on “Game Boy Communicates Directly With An SD Card

  1. No, no games did that because they could not. The boot logo is saved on the cartridge (which is why there is none without a cartridge and it is corrupted with bad contacts) and the bios does a checksum before loading the rest of the rom.

  2. @Paul Potter, yes, from my experience, one of my old carts when I was still young said “nihihu” instead of nintendo, same thing was written on the cart itself (engraved), the profile of the cart seem to be smaller too.

  3. Great project! I like it!

    On a side-note – HaD…WTF is up with the recent rash of poor speelling an grammer [all sic]? It’s usually little stuff, but still.

  4. Some pirate cartridges showed a different logo by using some sort of address comparator chip to give out the good Nintendo logo when the BIOS was doing the check, and the modified one when it was copied to VRAM to be displayed on the screen.

    Those carts typically hang on the Gameboy color since the logo check isn’t performed in the same way.

  5. FaultyWarrior: i am sorry for bad grammar, english is not my main laguage, feel free to correct me

    Anonymous: sure, but it will need some changes like bigger game RAM (MBC5 instead of MBC1) and bios in GBC mode

    Also few notes,
    – ATmega32 is not used
    – it can’t save games, only 8kB RAM dumps

  6. The logo wasn’t on the system but on the rom

    This was used as a thing for Nintendo to keep you from programming on it as the Logo was copyrighted.

    In order to make a game work the bios check the crc of the logo and if it didn’t match it wouldn’t run the program.

    If you did put the logo in the rom Nintendo would sue you so hard for copyright of their restricted trademark that you basically couldn’t make a game for it professionally without their consent.

    This was done up to the NDS. Don’t know too much about the DSi or 3DS.

  7. @t&p If I recall correctly, Sega (I think) tried that on one of their newer systems but when they went to court for it, the judge ruled that since the logo was necessary to run the software, copying it for that purpose wasn’t trademark infringement.

  8. Nice, wondered when someone would get around to doing this.

    Actually there is a way around the copyrighted logo, just generate a file which has the same CRC as the real one. Verifiably NOT the copyrighted logo but the GB won’t care.

    Personally I think that the GB is so old now that Nintendo should basically say “go ahead, hack it if you like but don’t expect any support if you break it”… that would be kind of them.
    Plus its not like they would lose any money as no current games work for the GB/C any more.

    IIRC Myvu Corporation did the same thing, and interest in their product jumped substantially.

  9. This is interesting. I would of put work in on something with a backlight and color, but to each their own.

    The security on nintendo devices has never been that complex, usually RAM partitioning bits in some form. You can kill most of them by glitching clocks.

  10. this looks great, I looked around at options, and short of shelling out $40 for a flash cart this is the best option. I had a few questions:

    How big can the SD card be? size limitations?

    would this work on a GB Pocket?

    is the original port usable after the mod? (just curious)

    this is a very interesting project, I think I am going to start this in a few weeks.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.