Modder turns NES into a Windows desktop
Hacking History: How One Creator Built a Desktop Environment on the NES
Imagine strapping a full-blown operating system to the classic Nintendo Entertainment System. This is not science fiction; it is the reality achieved by Throaty Mumbo, an individual who turned vintage gaming hardware into a bizarre, yet functional, retro computer experience. Through a brilliant blend of hardware hacking and software engineering, Throaty Mumbo created a Windows-like desktop environment running entirely on the NES.
The foundation of this ambitious project lay in the powerful EverDrive N8 Pro, an FPGA-powered NES cartridge that was able to handle the heavy lifting of x86 emulation. By leveraging this advanced hardware, Throaty Mumbo bypassed the limitations of the original NES’s 6502 processor, essentially turning the cartridge into a sort of external graphics card, outsourcing complex tasks to a more powerful ARM-based Cyclone IV FPGA. To make this emulation work, he utilized Next186, an open-source FPGA soft processor core, which allowed the FPGA to execute Intel 80186-compatible instructions, mimicking the behavior of a true x86 CPU.
The journey began with a playful exploration of existing software. Throaty Mumbo started by experimenting with various ROMs found online, including a Chinese version of Windows 98 and the slow Linux project NES86. While these initial attempts offered glimpses of a retro interface, they were far from functional, pushing the creator to develop entirely custom software to realize his vision.
Once the core system was established, the challenge shifted to interaction. A standard NES controller was simply not enough for a modern desktop experience. Throaty Mumbo faced the classic dilemma of input: how could he get a smooth mouse cursor and efficient typing? Initial attempts, such as modifying the NES expansion slot with a Family BASIC keyboard, proved clumsy and unreliable. He needed a more sophisticated interface to bridge the gap between the old console and modern computing demands.
The solution came in the form of custom microcontroller work. By integrating an RP2350 microcontroller with custom firmware, he was able to connect a USB device directly to the NES controller ports. This setup provided much-needed smooth mouse inputs and keyboard functionality. Further innovating, he expanded this capability to include MIDI input, allowing users to plug in a USB piano keyboard and play simple digital audio workstations, even integrating Mario soundtracks directly into the experience.
To enhance the multimedia experience, Throaty Mumbo added further custom hardware. He incorporated his previous 3D-printed NES CD drive project, the NESCD, which plugs directly into the EverDrive N8 Pro. This addition allowed users to play background music while gaming, seamlessly integrating audio into the retro environment without sacrificing performance.
For the final touches, the project embraced modern connectivity. By upgrading the NESCD with a Seeed Studio XIAO ESP32, Throaty Mumbo introduced WiFi capabilities, enabling download speeds of 4 MB/s and upload speeds of 90 KB/s. While the internet connection required using a laptop as a proxy to simplify data display due to the NES’s limited resolution, the overall achievement was a testament to the power of creative hardware hacking.