Running .NET on the NES
summary
Claims a C# project can become a runnable NES ROM by converting MSIL to 6502 bytes and packaging a proper iNES header and PRG/CHR segments; it uses Roslyn to produce the DLL, an MSBuild task plus System.Reflection.Metadata to read IL and emit 6502 opcodes, unit tests that byte‑for‑byte match real ROMs, and a Visual Studio/ dotnet workflow that launches the ANESE emulator with dotnet new NES templates. Hardware constraints: 8‑bit 6502 at 1.78 MHz, 16KB PRG banks and 16‑byte iNES header, 52 colors (25 onscreen).
AI-written summary · about
chapters (10)
- 0:00Running .NET on NES
- 3:03Why this unusual project
- 9:37Live .NET NES demo
- 15:04Hello World in C/C# for NES
- 23:18NES ROM file format
- 30:25Converting .NET IL to 6502
- 33:24MSBuild for NES projects
- 37:46Capabilities and limits
- 40:41Future goals and how to try
- 41:25Q&A
related talks
39mRunning .NET on the NES
28mHow to Build a NES Emulator
01h 02mSo you want to create your own .NET runtime?
51mBuilding a Game Boy emulator in .NET Core!
30mRuby on NES - how to make the smallest ruby ever
40mHow to Write a Retro Arcade Emulator
01h 34mNeotron - Writing a Single-Tasking ‘DOS’ for Arm Microcontrollers, in Rust
01h 01mNeotron - why write a brand new ‘DOS’ for Arm in Rust?
