GitHunt
D9

d99kris/nopeos

Simple OS kernel with BASIC interpreter for x86

Nope OS

Linux
Linux

Nope OS is a simple OS kernel bundled with a BASIC interpreter, bringing
back the 80s home computing feeling.

Try Nope OS in the browser at https://copy.sh/v86/?profile=nopeos

Nope OS Screenshot

Supported Platforms

x86 compatibles.

Project Scope

Nope OS is a minimal bootable BASIC interpreter with no device support for
I/O (disk, serial, audio, network, etc) except for keyboard input and text mode
VGA display.

Compilation & Usage

Pre-requisites (Ubuntu):

sudo apt install git nasm build-essential qemu-system-x86

Download:

git clone https://github.com/d99kris/nopeos && cd nopeos

Build (outputs kernel.bin and kernel.iso):

./build.sh

Run in QEMU:

./run.sh

Stop emulation by pressing ESC.

Optionally build and generate img disk image (kernel.img):

./build.sh -i

Download Pre-Compiled Disk Images

IMG and ISO disk images can be downloaded from the
Releases section.

These disk images may be used in a virtualized environment or on a physical
machine.

Warning: For usage on a physical machine, take note that Nope OS is just a
proof-of-concept and may contain bugs that could corrupt your system.

Booting a Physical Machine from USB Drive

Download the IMG disk image above and use for example dd or
balenaEtcher to write the image to a drive.

Design Notes

The implementation is based on
bkerndev - Bran's Kernel Development Tutorial
and the
TinyBasic interpreter.

License

Nope OS is distributed under GPLv2 license. See LICENSE file.

Keywords

simple kernel, BASIC interpreter.

Languages

C86.5%Assembly7.2%Shell6.0%Linker Script0.3%

Contributors

GNU General Public License v2.0
Created May 15, 2015
Updated January 10, 2026
d99kris/nopeos | GitHunt