In 1986 FTP Software Inc. created the PC/TCP Packet Driver specification which defined an API for sending and receiving packets over networking devices. Inside the packet driver is code to talk to a specific piece of hardware. That hardware might be a network adapter, an Ethernet chipset connected through the parallel port, or even just a plain serial port. A packet driver makes the hardware and network accessible in an easy manner. Omar Yabar has collected a ton of DOS-era packet drivers in one place, so you can easily download the one you want. Find them at the Packet Drivers Collection. We can't include these in the FreeDOS distribution because they are not open source, but we really appreciate the hard work Omar has done to collect these for DOS fans to use!
NASM is the Netwide Assembler, an open source assembler for the x86 CPU architecture, including DOS. There's a new update available now: version 3.01 mostly contains fixes such as: * The condition after %if or %elif would be evaluated while output is suppressed after %exitrep or %exitmacro * Fix encoding of TCVTROWPS2PHL * The unofficial but obvious alternate form TEST reg,mem was not accepted by NASM 3.00 * A new %selbits() preprocessor function and command line option * Define additional permissive patterns and fix several opcode bugs * Fix parsing of two-operand forms of x87 instructions * And other fixes. See the NASM documentation for more. Download the new version from the official releasebuilds 3.01
FreeDOS developer 'sparky4' has been working on an updated version of the FreeDOS package manager, FDNPKG16, which runs as a 16-bit program. There's a new release to try out, here are the release notes (slightly edited for readability): "Merged fdnpkg16 and fdnpkg86 to one program that uses httpget externally. too many issues with them separate and running like before. The older fdnpkg16 will eat memory and you cannot install hundreds of packages when it eats memory (6400) every time it called httpget, so I call it in an external simple program. Note: this does break international support for that particular area. There's a problem in fdnpkg86 with downloading files - on my recently acquired Toshiba T1200 system, it just takes too long, like over 2 hours for it to fail. But this should work now on all systems with more than 480kB of memory." You can get the latest version at FDNPKG16 releases on GitHub or more directly from FDNPKG16 ver. 0.99.8249.
Japheth has released a new version of HDPMI, part of HX DOS extender. Version 3.23 has quite a few interesting fixes and features, including: - fixed int 25h/26h, cx != -1: don't copy (non-existing) diskio struct to TLB - int 31h, ax=0B00h: support DH=3 (I/O watchpoint) - fixed int 21h, ax=71a7h, bl=0: src must be ds:e/si, but es:e/si was used - switch ?SAVESSESPONINIT now always 1; should fix problems with IRQs handled by a client while another client is initializing - and other changes. You can find it at HX DOS extender on GitHub.
VSBHDA is a Virtual Sound Blaster emulator for HDA, so you can emulate classic SoundBlaster16 audio when running FreeDOS on more modern hardware. Japheth has released a new version of VSBHDA. Version 1.8 has several fixes, runs on real hardware and has been tested to work with VMWare, QEMU, and VirtualBox ( these environments support both HDA and AC'97, VMWare additionally ES1371 ). They also support SoundBlaster emulation natively, but Japheth notes this is often of "minor quality."
If you need DOS to access directories on remote computers as a network drive, you can also try the NetMount program. Jaroslav just released a new version of the NetMount components (NetMount client v1.6.0, server v1.6.0, and NInstall v1.0) with several improvements and new features: NetMount client got a few upgrades - most notably, it now supports read-ahead buffering (64-byte buffer), which can significantly speed things up when reading files in small chunks. NetMount server now supports Unicode-to-ASCII transliteration when converting filenames to the DOS 8.3 format. There’s also a new DOS utility called NInstall. It installs (loads) the NetMount DOS TSR client using parameters from a config file. You can find it at NetMount on GitHub and this release is at NetMount client 1.6.0, server 1.6.0, ninstall 1.0
Developer sparky4 has been busy adding new features to FDNPKG16, the 16-bit version of the FDNPKG package manager. The new version has translations for English, German, French, Turkish, Slovenian, and Polish. (From sparky4: "The rest are missing strings or are not translated like Spanish, Danish, and Russian needs updated strings and translations. Spanish needs shortening of some help text.") You can find the latest version at fdnpkg16 on GitHub or a copy at fdnpkg16 on GitLab.
NASM is the Netwide Assembler, an open source assembler for the x86 CPU architecture, available under the Simplified ("2-clause") BSD License. The NASM project recently released version 3.00, which includes a ton of new features that programmers will love, including: - Add new preprocessor functions: %b2hs(), %chr(), %depend(), %find(), %findi(), %hs2b(), %null(), %ord(), %pathsearch(), and %realpath() - New preprocessor directive %note to insert a note in the list file - New preprocessor directive %iffile and function %isfile() to test for the existence of a file - New preprocessor directive %ifdirective to test for the existence of a preprocessor directive - Many documentation improvements - and many other features and fixes. Note that using $ as a prefix for hexadecimal numbers has been deprecated, and will now issue a warning. You can download the new version from the official 3.00 release.
Mateusz Viste has created an interesting set of logic puzzle games for DOS: "Fire up KazuGrid and test your wits with mind-bending challenges, now in crisp VGA high resolution! Each grid is a battlefield of numbers - spot patterns, crack logic puzzles, and prove you're the ultimate gridmaster." Requires VGA and a mouse. MIT license. You can find it at the KazuGrid website
RPNV is an RPN calculator inspired by HP Voyager calculator series, in particular the HP-10C. Davide writes "After a few months of fun I've reached a milestone and I've released a full version implementing all the functions of the HP-10C calculator including programming capability." This implements the HP-10C calculator, including 4-level stack (x,y,z,t registers), the last-x register, 10 memory registers (0 to 9), all the basic operations, and up to 99 programming instructions. You can download version 1.0.0 from RPNV at GitHub.
Developer sparky4 has been working on an updated version of the FDNPKG package manager. The new version is aimed at 16-bit, and works on an 8088 system now. The new version retries re-fetching files it couldn't download on the first attempt, and has several other small improvements throughout the code. Update: FDNPKG16 version 0.99.81 has a new feature: you can use a short version of the command, with or without the slash, like "li" or "/li" to display the license. The license screen also includes my contact information. This also includes several bug fixes: one fixes a bug with watt32, and another avoids a 16-bit integer overflow. You can find the latest version at the FDNPKG16 repository on GitHub.
jSH is a Javascript scripting engine for DOS, with a focus on file i/o and text mode user interfaces. Version 0.98 is a minor update that includes updated versions of mbedTLS and curl. You can download the new version from jSH at GitHub
Diabaig is a traditional turn-based ASCII roguelike where you are never more than a few mistakes away from death. Choose a starting class, find powerful items, and learn new spells and techniques to face increasingly dangerous adversity. The Diabaig website has versions for Windows, macOS, Linux, and Android .. but an unofficial version has been compiled for DOS by Ben Collver, using OpenWatcom and pdcurses. You can find it at Diabaig 1.0.0 for DOS on Archive.org. It requires a 32-bit CPU and 4 MB memory to run.
If you need to transfer data between DOS and another system, here's another option: NetMount enables DOS systems to access shared directories from remote machines as if they were local drives. netmount on DOS talks to netmount-server on a server. Jaroslav Rohel recently released server 1.5.0 with "..optimizations and new features. Probably the biggest news is that support for storing DOS attributes has been added for more operating systems. It’s now supported on Linux, FreeBSD, and Windows .. DOS attributes can now be stored using either native file system support or extended attributes. This means that DOS attributes can be stored even on file systems that don’t support them natively, as long as extended attributes are available." Find client 1.5.0 and server 1.5.0 at GitHub.
It's not DOS, but it's good to see Microsoft re-release some of its classic products under an open source license. Recently, Microsoft released the source code for 6502 BASIC. From the announcement: "Microsoft BASIC began in 1975 as the company’s very first product: a BASIC interpreter for the Intel 8080, written by Bill Gates and Paul Allen for the Altair 8800. That codebase was soon adapted to run on other 8-bit CPUs .. The 6502 port was completed in 1976 by Bill Gates and Ric Weiland. In 1977, Commodore licensed it ... a deal that placed Microsoft BASIC at the heart of Commodore’s PET computers and, later, the VIC-20 and Commodore 64."... read more
Mpxplay is a commander-style console audio player for DOS and Win32 operating systems, developed in OpenWatcom C v1.9. DOS console audio player versions also support - native soundcard handling (for the latest PCI audio chips too) - LCD-display handling - LFN (long filenames) support (with DOSLFN). Version 1.68 was just released in August. This is mostly an update, no major features to announce for DOS. You can download it from the Mpxplay website.
DOSLFN is a program to provide the long file name (LFN) API in plain DOS (without Windows). Thanks to Jason Hood for version 0.42 that provides a workaround to avoid corruption issues on FreeDOS, such as can happen when using FDNPKG on some packages. This update resets the drive before creating the LFN. Also in this release: uses LANG (instead of -l) to read message files in an NLS directory. See the release notes for other changes. Download it from Jason's DOSLFN website. We've also mirrored it in the FreeDOS Files Archive at ibiblio, under /files/util/system/doslfn. If you use DOSLFN for long file names on FreeDOS, you should download this update.
The DOSember game jam is an annual streaming event on twitch.tv. Now approaching its 6th year, DOSember participants spend the entire month of December celebrating DOS games, and their surrounding communities. This is a great opportunity to experiment with writing a new DOS game that you can share! More info from the website: "Requirements: Participants make a game that runs in DOS and/or a DOS emulator. That's it. When: The jam itself runs from September to the end of November (three months)." They also note that generative AI (aka "vibe coding") is not allowed.
If you run FreeDOS (or any DOS) on real hardware, you will have problems getting sound to work with DOS games. That's because DOS doesn't have a 'hardware abstraction layer' like modern operating systems; DOS programs talked to the hardware directly, which is why you had to tell each game about your sound card. But since about 1997, PC hardware moved to Intel audio, so games that used SoundBlaster for sound won't work. That's why you need SBEMU .. or Japheth's fork, VSBHDA .. to emulate SoundBlaster. Now there's a fork of VSBHDA that "adds support for using soundfonts for MPU-401 emulation using TinySoundFont, and properly fixes it to make it work with games like Duke Nukem 3D." You can find it at VSBHDASF at GitHub.
Fontana is a bitmap font editor (with ability to import from some vector formats) which allows you to create, convert and edit fonts stored in many file formats. It is mostly intended for developers. Ladislav recently released Fontana version 1.1 with thes changes: can be now used also as command line utility which loads text mode VGA font + possibility to load the edited font into VGA character generator when shelling to DOS + supports FNT subformat used in libraries GRX, MGRX and Allegro + bug fixes. Get the new release at the Blocek home page and scroll down for Fontana.
This was announced a few years ago, but it came up again recently. If you use the Open Watcom compilers, you might be interested in PMODE/W v1.33, a 32-bit Protected Mode DOS extender for the Watcom C/C++ Compiler. PMODE/W is a DOS extender for the Watcom C/C++ package. It allows DOS programs to run in full 32 bit protected mode, with access to all memory available in the system. PMODE/W replaces DOS/4GW extender in the Watcom C/C++ package. This was originally released in 1997, but was released under the MIT license in 2023. You can find it at the official PMODE/W website by Charles Scheffold and Tomasz Pytel. Another developer has also made a copy at PMODE/W on GitHub
If you need to transfer data between DOS and another system, here's another option: NetMount enables DOS systems to access shared directories from remote machines as if they were local drives. It operates over the UDP protocol. It has two parts: netmount that runs on the DOS client, and netmount-server that runs on Linux, Mac, or Windows. The source code is available at NetMount on GitHub and is available under the GNU GPL. NetMount client 1.5.0 and server 1.4.1 were released a few days ago, and include several fixes.
Mastodon client for DOS systems. SuperIlu recently made an update: - Updated curl to 8.14.1 - Updated mbedTLS to 3.6.4 - Enabled HTTP 3xx redirections. DOStodon is implemented in Javascript and relies on DOjS to run (included). You can get the source at DOStodon on GitHub
Michael Brutman (also the developer behind mTCP) has created a disk partition utility that allows you to dual boot operating systems without installing a boot manager: Michael's tool allows you to: Mark or unmark a partition as active, Hide or unhide a partition, and other actions that support a multiboot environment. Available under the GNU GPL v2. You can download it (with source code) from the PartUtil website.
On June 29, 1994, we launched a little open source project that became the FreeDOS Project. And we're still going, 31 years later! That's a long time for any open source project, but it's all thanks to our community. Thank you to everyone who contributes to FreeDOS: developers, testers, translators, documentation writers, .. and everyone else who shares and celebrates FreeDOS. You make this community a great place to be!... read more