x16-PRos is a lightweight real-mode multitasking operating system designed for the x86 architecture and written entirely in NASM. It features CLI, TUI and GUI interfaces, supports the FAT12 file system, and includes a large standard software suite.
Also it`s a platform for low-level programming enthusiasts to explore development for x86 operating systems.
- API - x16-PRos system calls
- Programs package - every bundled program, with screenshots
- Configuration - config files and what each of them changes
- Contributing - coding standards, program templates and how to send changes
- MS-DOS Compatibility: Native support for running standard MS-DOS
.COMand.EXEexecutables - Windows 1.01, DOOM and Turbo C 2.0 runs on x16-PRos - Multitasking: Cooperative multitasking support for
.PLEprograms - GUI: Customizable graphical user interface for windowed
.PLEprograms - Native assembler: Intel syntax assembler with which you can create programs directly in the operating system
- User Authentication: Login system with configurable user account using XOR-encrypted password
- Customization: 10+ color themes and fully customizable THEME.CFG, command prompt, username, timezone, and font settings
- Over 40 bundled programs: Games, file utilities, players, BMP viewer with upscale, paint program, and more
- First-Boot Setup: A setup wizard that installs the OS on your PC and helps you to customize everything for yourself
- Auto-Execution: AUTOEXEC.BIN support
- Mouse Driver: Mouse support for
.BINand.PLEprograms and MS-DOS compatibility layer - Multiple disk support: Detect/list available drives, switch drives, install x16-PRos on any of theese
- cp866 support: Russian-language text documents reading in cp866 encoding
- Sound: PC speaker, Sound Blaster WAV playback and AdLib/OPL2 IMF music
- AND MUCH MORE
| Distro | Command |
|---|---|
| Debian / Ubuntu | sudo apt install nasm mtools dosfstools qemu-system-x86 |
| Arch / Manjaro | sudo pacman -Syu nasm mtools dosfstools qemu-system-x86 |
| Fedora / CentOS | sudo dnf install nasm mtools dosfstools qemu-system-x86 |
Only NASM, mtools and dosfstools are needed to build the x16-PRos and QEMU for running.
- Clone the repository:
git clone https://github.com/PRoX2011/x16-PRos.git
cd x16-PRos- Make build script executable:
chmod +x build-linux.sh- Build the project:
./build-linux.shThe build writes disk_img/x16pros.img (bootable 1.44 MB image), disk_img/HDD.img
(5 MB hard disk image) and the separate binaries in bin/.
Note
FOR ADVANSED USERS build-linux have special flags:
-quiet - disable all script messages, but not disable nasm's warnings and errors
-no-music - do not add music files in system build
-no-txt - do not add text files in system build
-no-boot-recomp - do not compiling bootloader, in system build using old compiled bootloader from bin/ directory
-no-kernel-recomp - do not compiling kernel, in system build using old compiled kernel from bin/ directory
-dtm - disable setup on first boot. dev testing mode.
./run-linux.shThe script starts QEMU with both floppies, the hard disk, PC speaker and AdLib sound.
By hand, with the floppy alone:
qemu-system-x86_64 -display gtk -fda disk_img/x16pros.img -machine pcspk-audiodev=snd0 -device adlib,audiodev=snd0 -audiodev pa,id=snd0On real hardware: write the image to a USB stick (or floppy) and boot in BIOS mode. On a UEFI machine turn on CSM or Legacy Boot first.
- Report Bugs: Open an issue on GitHub Issues
- Submit Code: Fork, develop, and create pull requests
- Write Programs: Develop applications using the PRos API
- Improve Docs: Email suggestions to prox.dev.code@gmail.com
More about contributing: contributing guide
Made with ❤️ by PRoX






