NES
Image: Zion Grassl / Nintendo Life

It's only really with the advent of modern consoles that video game systems have started coming with their own operating systems in order to play games. With the exception of microcomputers, hardware, in the past, would simply communicate directly with the games in order to get them up and running, rather than relying on a middleman.

Recently, though one NES fan named Inkbox has gone out of his way to design and create an operating system for the old console (as spotted by Hackaday) and the results are pretty interesting.

As Inkbox says in the video, the operating system isn't a command-line one like DOS, because it lacks a disk drive and there is already an officially-released writing program called Family Basic that does this already. Instead, he wanted NESOS, as he dubbed it, to be an interactive GUI with two core applications: a word processor and the settings where you can switch between Nintendo-themed cursors and manage the files. His goal for these was to make it feel like an OS that Nintendo would have developed in the 80s.

Because the NES can only display 64 foreground sprites at a time, the word processor takes advantage of the background sprites to display up to 832 characters, which is one full screen of text without scrolling. Typing is also handled with the Family-Basic keyboard, which is compatible with the OS.

There are 64 typable characters in the word processor, with the font based on the text for Super Mario Bros. Typable options include the alphabet, punctuation, and some shapes to use as building blocks to play around with. Players can create 8-word files in total, which they are able to delete individually in the settings, thanks to 1 byte of memory in the NVRAM that keeps track of whether the file exists or not.

It's an impressive creation overall, so why did we qualify this with 'sort of'? Well, as one pedantic commenter pointed out in the YouTube comments, it's arguable that isn't technically an OS, but a GUI text editor instead. This is something Inkbox concedes in the comments, but says would be quite easy to fix.

"You're right that it's not quite an OS in the sense of not having an API for other programs to use. But I think it wouldn't be that hard to include some way to have games as well (they'd just have to built into the program). The way the "apps" of the system work is when the user clicks on them it only runs that section of code, so it wouldn't be hard at all to create a game and then place an icon on the desktop for the user to launch it. Even including large games wouldn't be hard because I've actually written this program with the MMC3 mapper (a bit overkill for what I needed) so even if the game required two full pages of CHR ROM you could just switch to the game's section when it launched."

If you want to try out the word processor application yourself, you can download NESOS 1.0 from its website to try it in an NES emulator. It's still buggy, so if it freezes up Inkbox recommends simply hitting the reset button.

Is this something you can see yourself playing around with? Comment and let us know!

[source youtu.be, via hackaday.com]