Creating an Operating System for the NES
Inkbox Inkbox
94.6K subscribers
756,698 views
0

 Published On Sep 22, 2022

Download NESOS at https://notin.tokyo/nesos

NESOS is an operating system designed for the Nintendo Entertainment and Family Computer Systems. It was programmed in 6502 Assembly and compiled using CC65. This video covers how NESOS was made, including techniques used in programming the NES such as dealing with the Picture Processing Unit and saving data long term via NVRAM.

The operating system features two core applications, the word processor, and the settings. The word processor allows users to print characters and certain blocks to the screen, then save that data in the form of a file for later use or editing. The settings app displays system information and lets the user select one of seven cursors, and one of 53 possible desktop background colors. It also acts as the file manager, allowing users to delete their saved files.

NESOS uses 2K of NVRAM to save up to 8 files between sessions. The word processor is fully compatible with the Family Basic Keyboard giving every key functionality. Users may open their saved files on the desktop top by navigating to the correct file and pressing the A button. Holding the B button while over an icon and moving the mouse will allow the user to move both the files and the applications anywhere on the desktop.

The word processor may also be used without the Family Basic Keyboard. Using a standard NES or Famicom controller the user may type a character by pressing the A button. Holding A will cycle through all 64 possible characters that can be drawn on the screen. Pressing the B button will move the cursor forward in the document. Holding select with A will cycle the characters in reverse order. Holding Select with B will move the cursor backwards in the document.

I have updated NESOS since uploading this video, the latest version can be found at the link above.

NESOS also available at:
https://www.romhacking.net/homebrew/172/

Resources:
Windows 98 for Famicom (this is a Chinese mockup of Windows 98 for the Famicom/NES and isn't really functional)
https://archive.org/details/FCWIN98

NES Programming Resources:
https://www.nesdev.org/wiki/Nesdev_Wiki

NES CPU Memory Map
https://www.nesdev.org/wiki/CPU_memor...

show more

Share/Embed