screenshot of FreeDOS 1.4

Welcome to FreeDOS

FreeDOS is an open source DOS-compatible operating system that you can use to play classic DOS games, run legacy business software, or write new DOS programs. Any program that works on MS-DOS should also run on FreeDOS.

Play classic games

Play DOS games on FreeDOS! We include lots of fun games in the distribution. Or play your favorite classic games, like Wolfenstein 3D, Doom, Commander Keen, Jill of the Jungle, Duke Nukem, and many others!

Run applications

Run your favorite DOS programs with FreeDOS. Just install your DOS application under FreeDOS like you would any other DOS application and you'll be good to go.

For developers

We include lots of open source compilers, assemblers, debuggers, and editors so you can create your own DOS programs. We also share our source code under an open source license, so you can modify FreeDOS itself.

What’s New

FreeDOS Kernel 2046 (version 2.46)

FreeDOS Kernel is the core part of FreeDOS that provides DOS services (program loading, file and device I/O, memory management, and the INT 21h API most DOS software uses). Kernel 2046 is an incremental maintenance release with edge‑case fixes and compatibility updates. Changes in this release include: - bugfix: CD on remote Lantastic mapped drives - bugfix: print to Lantastic redirected printers - misc: port some improvements from FDPP (Stas & Andrew) - bugfix: move control-break handler off stack, fix Invisible Lan redir - bugfix: rework truename so when on mapped drive with invalid CDS properly resolves character devices (i.e. fix copy CON). Thanks to Andrew Bird and Jeremy Davis for these updates to the FreeDOS Kernel! You can find it at FreeDOS Kernel at GitHub or more directly from the FreeDOS Kernel 2046 release tag. We've also mirrored this to the FreeDOS Files Archive at Ibiblio, under files/dos/kernel.

FDNPKG16 0.99.8254d

FDNPKG16 is a Network Package Manager for FreeDOS, which runs in 16-bit mode. Victoria has been making updates to the package manager, and recently released a new update. Victoria share these changes: "- cleaned a bunch of code - added basic error levels - fixed a potential bug with an error catcher and lsxflag - fixed the untested open watcom 1.9 compiling with the makefile in DOS." FDNPKG16 is open source, under the MIT license. You can download the new release from FDNPKG16 at GitHub or more directly as a zip file at fdnpkg16·zip. This is also mirrored on Victoria's personal server at fdnpkg16·zip.

FreeDOS is 32 years old

It was 32 years ago today (June 29, 1994) that we announced what became the FreeDOS Project. We welcome everyone to contribute by writing code, testing, debugging, documenting, translating, advocating, .. or anything else that helps FreeDOS. Also join the email list: developers hang out on freedos-devel, general questions are on freedos-user.

You can celebrate the FreeDOS anniversary by reading one of our open books or reading any of these recent articles about FreeDOS: How FreeDOS got started, A gentle introduction to FreeDOS commands, Using variables in FreeDOS, Customize FreeDOS with FDCONFIG·SYS, Try the FED editor on FreeDOS, or this series of articles about DOS filenames: part 1, part 2, part 3. Watch Jim's presentation about FreeDOS community from DevFest'25. Buy a tshirt, sticker, or other items from the FreeDOS store on Zazzle. You can also buy a copy of Pat Villani's 1996 book about The FreeDOS Kernel.

If you'd like to see where it all started, I have shared the Alpha5 and Beta1 "distributions" on Ibiblio. These were very early and require a minimal DOS environment to start from.

UPX 5.2.0

UPX is a free, secure, portable, extendable, high-performance executable packer for several executable formats, including DOS. UPX will typically reduce the file size of programs by around 50% to 70%, thus reducing disk space. UPX version 5.2.0 was recently released, containing mostly bug fixes. Full details at the UPX website. You can download the DOS version and source code from the 5.2.0 release page on GitHub.

DUGL Player 1.0 alpha 6

DUGL is a super fast, open source, 32bits/DOS only/ C, Assembly Game library using software rasterizer. DUGL Player is a GUI video/audio player for DOS systems, using DUGL. Version 1.0 Alpha6 was recently released with several improvements, including: - Now use FFMPEG 5.1.8 with pentium-MMX CPU enabled including assembly optimizations - Add support of Aspect Ratio with built-in list that could be overwritten by config file - Add fast video decoding - Add Aspect Ratio widget - Severals other fixes and speed improvement. Find it at the DUGL Player on GitHub, part of the DUGL repository. Or download the alpha 6 player directly as a DPL10A6.zip file (github.com).

FDNPKG16 v0.99.8254c released

FDNPKG16 is a network-aware package manager for FreeDOS. Thanks to Victoria for releasing another update with fixes and new features: * case-less file name comparisons when checking packages for conflicting files on hard disk * you can now press a or 3 to abort the installation of a package with files on disk * updated translations. You can get it from the FDNPKG16 v0.99.8254c release in Victoria's Git instance.