Turning a Raspberry Pi into an SNES

snes

Back at the turn of the century, shoving MiniITX motherboards into just about everything was all the rage with the technologist crowd. [waterbury] had the idea of making a computer out of an SNES, but with the added ability of reading SNES cartridges. This idea had been floating around in [waterbury]‘s head for years now, and with a Raspberry Pi he can finally make his project a reality.

After desoldering a cartridge connector from an original SNES, [waterbury] plugged it in to a piece of perf board and started to figure out how to actually read the cartridge. An SNES cartridge need 16 address pins, 8 data pins, 8 bank control pins and 4 other control pins to be read; a total of 36 pins that [waterbury] accessed with the help of a neat I/O expander and a whole bunch of level converters.

[waterbury] accessed these data, address, and control lines via the Raspberry Pi’s I2C interface, a non-trivial task that took 70 minutes to read Donkey Kong Country before he found a way to speed up the Raspi by a factor of two. You can check out [waterbury]‘s complete project – able to read cartridges and play roms with EmulationStation after the break. Also, the code for the cart reader is available on [waterbury]‘s git
.

Comments

  1. digitalman2112 says:

    Love the use of original controllers and cartridges with emulation – all on a Raspberry Pi. Keep up the awesome projects waterbury!

  2. Danjovic says:

    Nice job, but you could get more speed by using hardware counters for the address lines and use SPI for transfering data. .

    [

  3. Dr. DFTBA says:

    Wait, so it doesn’t duplicate the functionality of the SNES, it only reads the carts?

    • Mojoe says:

      No. It rips all of your carts, saves them, then allows you to play them through emulation. Read the guys blog. Very good read with lots of info. Awesome hack! Kudos to waterbury!

    • the jerk says:

      I know this article was long but keep trying and eventually you’ll learn how to read a complete article.

      Reading the carts is the hard part. After you’ve read the cart you can play the game using one of many different emulators.

  4. Palandri says:

    At the moment he took of the cartridge and keep playing the thought of “Witchcraft!” rushed my mind. Then i remembered i wasnt watching a normal snes lol.

  5. muriani says:

    Interesting. Sucks that it takes so long to read the cart, but it’s good as an educational project on dumping the carts from scratch.
    The faster (and probably more expensive) method would have been to get a Retrode and plug it into the USB port on the Raspi. Provides access to the cart ROM (and SRAM!) as standard .smc/srm files via an emulated USB Mass Storage device – and yes, the srm file is writable. Also provides controller interfaces for original SNES controllers via standard HID gamepad profile.

    But then, when the work’s already done, where’s the fun in that?

    • Theodore Wahrburg says:

      I love the Retrode, and the history of it, but it was cost prohibitive for this project, I’d have to modify it to fit in a stock SNES case, and you’re right. It takes all the fun out of it. ;)

      • muriani says:

        I do love how you fit it all in the original case. Sleeper emubox!
        This is easily the best project I’ve seen for a SNESpi box, especially making use of the power/reset switches.
        Also, kudos for keeping one of those Commodore CRTs around, fantastic little displays.

  6. generjones says:

    How does this work with games that have the Super FX chip, like Star Fox?

    Very cool project.

    • Theodore Wahrburg says:

      Thanks! It doesn’t play Super FX games very well, unfortunately. The old build of SNES9X that runs fairly decently doesn’t support FX games, and RetroArch/PocketSNES is rather slow even with standard games. It’s just the state of SNES emulation on the Pi at the moment, which is a shame. I’m hoping the platform is capable of faster emulation with optimizations.

  7. NewCommentor1283 says:

    awesome. its so fun to do that.

  8. “An SNES cartridge need 16″
    so many wrongs.

  9. Fitzy says:

    oooohh now a NES?

  10. Degru says:

    Best use of it so far. Now add battery to impress your friends with “battery powered snes”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,312 other followers