Codebending: Super Mario Spacetime Organ

Last year, my friend Chris Novello closed the 2012 Open Hardware Summit with a demo similar to this performance — remixing SMB in ways nobody had ever thought of before — to wild and well-deserved applause, I might add. Here he is doing it again! He writes:

In this video, I directly manipulate the RAM state of Nintendo’s Super Mario Brothers to transform it from a game into a strange instrument.

First, I play the game as it is traditionally played.. but I have access to the game’s memory, so I change Mario’s Y position using the Madrona Labs Soundplane (a surface that sends data to the computer about where it is being touched). This is how I hover Mario during the playthrough.

Also, before I start playing, I flip a switch on illucia that I assigned to trigger recording — not video, but actually recording the entire memory state of the NES for each game frame.

Think about it – Mario’s universe is held in RAM, which the NES uses to draw his world for each frame of the game. By recording the entire state of the NES memory for every frame, I’m able to go back to any moment in Mario’s life.

So then I use the X-axis of the Soundplane to sweep through the timeline of Mario’s universe.

Not only that, but the Soundplane is multitouch, so I use a second finger to specify start and endpoints in a playback loop. Technically, this is similar to the way samplers and granular synths work in audio.. but with the entire memory state of the NES. Conceptually, it is like Super Mario meets Groundhog Day. Mario’s universe computer/time machine gets caught in hellish loops.

Then I start using illucia to send alien data into various other places in Mario’s universe, which makes for all sorts of audiovisual insanity amidst the spacetime loops. This is sort of like circuit bending, but in a protected sandbox – at any point I can revert back to the clean recording of RAM states (aka moments in Mario’s universe).

I then try to go back to “playing” the game, watching Mario navigate a melting world of glitched-out ephemera. I then push things into full on glitch insanity. I use a pair of rubberband mallets on the Soundplane to jump around in Mario’s universe while leaving illucia to send a heavy stream of alien data into Mario’s RAM state. I eventually (accidentally/luckily) land at a place that triggers the game over music, and end the take.


Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7:30pm ET! To join, head over to YouTube and check out the show’s live chat and our Discord!

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Join over 38,000+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython – The easiest way to program microcontrollers – CircuitPython.org


New Products – Adafruit Industries – Makers, hackers, artists, designers and engineers! — New Products 11/15/2024 Featuring Adafruit bq25185 USB / DC / Solar Charger with 3.3V Buck Board! (Video)

Python for Microcontrollers – Adafruit Daily — Python on Microcontrollers Newsletter: A New Arduino MicroPython Package Manager, How-Tos and Much More! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi

EYE on NPI – Adafruit Daily — EYE on NPI Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey

Adafruit IoT Monthly — The 2024 Recap Issue!

Maker Business – Adafruit Daily — Apple to build another chip at TSMC Arizona

Electronics – Adafruit Daily — SMT Tip – Stop moving around!

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !


No Comments

No comments yet.

Sorry, the comment form is closed at this time.