

Making SNES ROMS with C# and Matthew Shapiro's DotnetSnes
May 1, 2025
Matthew Shapiro, a staff video architect at Game Changer and creator of DotnetSnes, dives into retro game development, combining C# with beloved SNES hardware. They discuss the complexities of adapting modern programming languages for classic games and the challenges faced by indie developers. The conversation flows through the intricacies of debugging and optimizing code, the role of community contributions, and the exciting potential of FPGAs in gaming. This is a passionate journey that merges nostalgia with cutting-edge technology.
AI Snips
Chapters
Books
Transcript
Episode notes
Unexpected Viral SNES Project
- Matthew Shapiro posted a project enabling C# to create SNES ROMs and it unexpectedly went viral on Reddit and Hacker News.
- He found that someone else posted it first, leading to exposure and a community forming with contributors.
Transpiling MSIL to C for Embedded
- Matthew shifted focus from embedded optimization to running C# on devices by transpiling MSIL to C, leveraging Nim's C compilation approach.
- This enabled running C# on constrained hardware like SNES and even in Linux kernel eBPF programs.
C# in eBPF Kernel Space
- eBPF allows safe, sandboxed bytecode execution in the Linux kernel without crashing or memory issues.
- Matthew created a proof of concept running C# code compiled to eBPF programs, effectively running C# in kernel space.