I've been doing some SD2SNES hacking.
tl;dr: SD2SNES has a USB port. It's really awesome.
You might not have noticed, provided you have a SD2SNES, but there's a mini-USB port on the top of it--right next to the SD card port. This port is really awesome, but the default firmware doesn't really let you do anything with it. Thanks to Redguy's SD2SNES firmware, you can use USB port to communicate with your SNES in real time.
So, what's great about it? For one, you can read from the SNES's WRAM. Using this, I made a Mario Maker-Esque death tracker as an overlay on my Twitch stream:
You can also edit the ROM in real time. For instance, I usually replace some of the enemy credits for Super Mario World and Donkey Kong Country 2 with whomever happens to chat:
What about writing to the SNES's RAM? Well, it's easier to show than tell. Here are some clips from a few streams where I let anyone in Twitch chat write directly to my SNES's memory:
SMW Bowser as god intended
Cannons are OP
Sometimes, instead of just trolling me, chat creates very new gameplay experiences.
Consider this remodel of Morton's Castle
So yeah. You can do a lot with that little port. Somewhat less dramatically, you can also write files to the SD card via USB. Taking advantage of this, I wrote a Python module that lets me load hacks--via URL--in world record time:
Speedrunning loading the SGDQ Romhack Race to an SD Card
The only time I've done a Romhackraces
's Mystery Monday was pretty much predicated on the fact that I could load a hack in 15 seconds, since I was interviewing someone until about 2 minutes before the race started.
Being able to load a new hack without powering down the SNES, yanking the SD card, putting it in your computer, patching a Super Mario World rom, writing it back to the SD card, putting it back into the SD2SNES and powering it definitely makes me more likely to try out random romhacks on realish hardware.
Everything you've seen above is using original Python and Javacript code--in conjunction with the USB2SNES firmware
Redguy wrote--to make cool things happen.
If y'all are interested I could get into the details. I've learned a lot about how the USB port interacts with the SD2SNES and would be happy to answer any questions about how it all works.
Edit: Fixed some image sizes. Added another cool clip.