πΎ A tiny and mighty boot sector OS
See the code
A tiny and mighty boot sector OS.
OSle is a real-mode OS that fits in a boot sector.
It's written in x86 assembly and, despite its tiny size (only 510 bytes), it packs essential features like:
Check out the online demo to see it in action!
OSle includes a tiny Software Development Kit (SDK) that includes definitions and a toolchain to create your own OSle C or x86 Assembly programs.
Follow the step-by-step tutorial to write your first program!
To develop OSle and OSle programs you will need the following tools:
Install dependencies using Homebrew:
brew install nasm
brew install i686-elf-gcc
brew install bochs # optional, you can use Qemu if you prefer
Install dependencies using your local package manager, e.g., on Debian:
apt install nasm gcc-i686-linux-gnu bochs # bochs is optional
These recipes will compile OSle and use the SDK to compile and bundle
all the pre-built programs. Using start will also run bochs right away.
# build and run OSle on bochs
make start
# or
# build osle
make osle
# use QEMU to run it
qemu-system-i386 -fda osle.img
You can write OSle programs in x86 Assembly, like OSle itself, or in C. Check out the step-by-step tutorial to write your first program!
# ensure you have a working OSle image at osle.img
make osle
# compile your source to generate program.bin
sdk/occ program.c
# or
sdk/occ program.s
# bundle my_file.bin into the osle.img image
sdk/pack program.bin
# run it!
qemu-system-i386 -fda osle.img
Write the built image to a device using dd:
[!WARNING]
The following action can damage your hardware. We take no responsibility for any damage OSle might cause.
# generate an OSle image at osle.img
make osle
# write it on a device
sudo dd if=osle.img of=/dev/YOUR_DEVICE bs=512 count=1
Feel free to explore the issues and pull requests to contribute or request features.
130 commits
Assembly
64.2%
C
27.6%
Shell
6.6%
Makefile
1.1%
πΎ A tiny and mighty boot sector OS
See the code
A tiny and mighty boot sector OS.
OSle is a real-mode OS that fits in a boot sector.
It's written in x86 assembly and, despite its tiny size (only 510 bytes), it packs essential features like:
Check out the online demo to see it in action!
OSle includes a tiny Software Development Kit (SDK) that includes definitions and a toolchain to create your own OSle C or x86 Assembly programs.
Follow the step-by-step tutorial to write your first program!
To develop OSle and OSle programs you will need the following tools:
Install dependencies using Homebrew:
brew install nasm
brew install i686-elf-gcc
brew install bochs # optional, you can use Qemu if you prefer
Install dependencies using your local package manager, e.g., on Debian:
apt install nasm gcc-i686-linux-gnu bochs # bochs is optional
These recipes will compile OSle and use the SDK to compile and bundle
all the pre-built programs. Using start will also run bochs right away.
# build and run OSle on bochs
make start
# or
# build osle
make osle
# use QEMU to run it
qemu-system-i386 -fda osle.img
You can write OSle programs in x86 Assembly, like OSle itself, or in C. Check out the step-by-step tutorial to write your first program!
# ensure you have a working OSle image at osle.img
make osle
# compile your source to generate program.bin
sdk/occ program.c
# or
sdk/occ program.s
# bundle my_file.bin into the osle.img image
sdk/pack program.bin
# run it!
qemu-system-i386 -fda osle.img
Write the built image to a device using dd:
[!WARNING]
The following action can damage your hardware. We take no responsibility for any damage OSle might cause.
# generate an OSle image at osle.img
make osle
# write it on a device
sudo dd if=osle.img of=/dev/YOUR_DEVICE bs=512 count=1
Feel free to explore the issues and pull requests to contribute or request features.
130 commits
Assembly
64.2%
C
27.6%
Shell
6.6%
Makefile
1.1%