WTF?! Nintendo positioned the Famicom to feel more like a computer than its Western counterpart – the NES – hence the name Family Computer. The additional storage and memory from the Disk System add-on pushed its potential further, which a modder has demonstrated by porting a Unix-like operating system to the console.
A recent video from modder "decrazyo" documents how he converted an operating system resembling Linux to run on an unmodified NES. The source code is available on GitHub for anyone interested in trying or improving it.
The system meets the basic requirements of a PC OS that can theoretically run various applications and operates entirely on hardware that Nintendo released in the 1980s. Although the NES that defined the console market back then lacks the specs for this project, its enhanced Japan-only equivalent – the Famicom Disk System (FDS) – has enough extra memory and storage to accomplish the task with some significant tweaks. The console's official keyboard also helps with input.
Instead of trying to port Linux, decrazyo built an OS that met Unix-like criteria like kernel separation between the user and the hardware, a hierarchical file system, preemptive multitasking, and a recognizably Unix-like shell. The basis chosen was Little Unix (LUnix), a system designed for the Commodore 64, which broadly resembles the FDS's hardware specs.
The conversion process involved defining the memory map, writing new system initialization code, reorganizing how LUnix handles memory to match the Famicom's RAM, and writing new drivers for the keyboard and picture processing unit. The new drivers were possible thanks to thorough documentation that other modders and developers contributed over the decades.
Writing a new disc driver was the most challenging part because, unlike most disc drives, the FDS reads sectors sequentially instead of arbitrarily. Still, decrazyo managed to build a driver that treats the disc as read-only, finally allowing him to boot up a shell.
Although the finished product has some serious flaws, like visual glitches and slow performance due to the disk drive, it proves that the NES can run a Unix-style OS. It was tested on an NES emulator running at 1,000 percent speed to compensate for performance, but decrazyo shows it running on a real American NES through an Everdrive ROM cartridge.
Using an enhanced cartridge to move the code to the console's chipset likely still falls within the experiment's rules because plenty of official NES cartridges used extra hardware to expand the console's capabilities. Still, seeing someone try the OS on a real FDS would be interesting.
Another modder built a graphical-only OS on the NES in 2022. Although its lack of a keyboard makes input difficult, it supports numerous applications.