Run classic 16-bit DOS programs unmodified on a modern build or emulator.
Run 32-bit DOS games and applications that use DOS extenders.
Boot the system from a floppy disk image or a hard disk partition.
Study or extend a from-scratch DOS kernel implementation for retro computing projects.
| libersoft-org/liberdos | danveloper/flash-pi-dsv4 | delphos-labs/disclosures | |
|---|---|---|---|
| Stars | 16 | 16 | 16 |
| Language | C | C | C |
| Setup difficulty | moderate | hard | hard |
| Complexity | 4/5 | 5/5 | 5/5 |
| Audience | developer | researcher | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires NASM and Open Watcom to build, and QEMU or a 386-or-newer PC to run it.
LiberDOS is a DOS-compatible operating system written from scratch in C and assembly language. DOS (Disk Operating System) was the dominant operating system for personal computers in the 1980s and early 1990s, before Windows became standard. LiberDOS recreates enough of the original DOS programming interface to run classic DOS programs unmodified. The system is built as a small 16-bit kernel, running in the same memory mode the original IBM PC used. It supports a wide range of the original DOS software interface, including memory services that let programs access more RAM than the basic limit. Extended memory (XMS) and expanded memory (EMS) support are built into the kernel with no separate drivers needed, and a mouse driver is included as well. The kernel leaves over 600 KB of conventional memory free for applications. LiberDOS can run both older 16-bit programs and 32-bit DOS games and applications that used DOS extenders, which were small programs that helped 32-bit software run on top of DOS. It supports FAT12 and FAT16 file systems, the storage formats those older systems used, and can boot from a floppy disk or a hard disk partition. A built-in command interpreter handles the familiar DOS commands, batch file support, and file path searching. A few standard utilities are included: MORE, ATTRIB, and CHKDSK. The project builds on both Windows and Linux using free tools (NASM and Open Watcom). It runs in the QEMU emulator, a software PC you can run on a modern machine, and targets any 386-or-newer PC. The code is released under the Unlicense, which places it in the public domain.
A DOS-compatible operating system written from scratch in C and assembly that runs classic 16-bit and 32-bit DOS software unmodified.
Mainly C. The stack also includes C, Assembly, NASM.
Released under the Unlicense, placing the code in the public domain with no restrictions on use.
Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.