Skip to content

cheeseDOS is an x86, fully GNU GPLed, custom C99 written, 1.44MB, monolithic, live, Single Address Space Diskette Operating System that loads into RAM.

License

Notifications You must be signed in to change notification settings

The-cheeseDOS-Project/cheeseDOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

cheeseDOS

Visitors Lines of Code Repo Size Last Commit Open Issues Open PRs Contributors Stargazers Forks Build

cheeseDOS is an x86, fully GNU GPLed, custom C99 written, 1.44MB, monolithic, live, Single Address Space Diskette Operating System that loads into RAM.

Note

cheeseDOS isn't "DOS-like" — it follows its own philosophy. The "DOS" in the name simply means it's a Disk Operating System (as in, it's stored on and boots from a disk… not a punch card).

Warning

On real hardware, cheeseDOS has direct access to low-level components and may cause irreversible hardware damage. While no such incidents have occurred, cheeseDOS comes "AS IS" WITHOUT WARRANTY OF ANY KIND TO THE EXTENT PERMITTED BY APPLICABLE LAW. See section 15, 16, and 17 in LICENSE.md for more information.

Note

If you have any problems, please open an issue, you WILL get help!

Getting Started

You can download the precompiled image here. Then write it to a floppy, learn more here.

OR

You can build from source, refer to the Build and Run Guide.

System Requirements

Component Requirement
Processor i386-class or newer x86-compatible processor
Storage 3.5" 1.44MB Floppy Diskette and a IDE Hard Drive
Graphics VGA-compatible graphics adapter
Display Color Monitor or Television (640×400 or better)
Audio PC Speaker (Piezoelectric BIOS Beeper)
Keyboard PS/2 or USB HID QWERTY keyboard
Firmware CHS-capable BIOS

Philosophy

  • Fully under the GPLv3 License
  • Fully compatible with i386-era hardware
  • Uses 100% custom code and clib
  • Compiles identically across all Linux systems
  • Mostly made in C99
  • Runs in a single address space

Documentation

Project Guidelines