From FreeDOS
Jump to: navigation, search

4DOS is a command interpreter similar to Command, but contains extensions such as the ability to scroll back through previous commands, pop-up help, and other useful features. 4DOS was written by Rex Conn and Tom Rawson, both of JP Software.


The source code to 4DOS is released under a modified MIT license. The binary release of 4DOS is distributed under a more permissive license, but this license does not apply to the source code.

Non-free license issues

When JP Software discontinued the release of 4DOS, Jim Hall contacted them and discussed how 4DOS might be released as unsupported open source software. Rex Conn was concerned about this, as he did not want someone to take the 4DOS source code and release something that competed with JP Software's similar product for Windows, called 4NT.

Rex did not want the GNU GPL, since that meant anyone could do anything with 4DOS, such as releasing a version for Windows. Rex wanted to maintain that no one should release 4DOS on a platform other than DOS (as this might compete with 4NT), and that 4DOS should not be incorporated into a commercial product (which might compete with 4NT.)

In the end, Rex found a modified MIT Licence to be acceptable, but asked to add the terms "may not be used in any commercial product without written permission from Rex Conn" and "may not be compiled for use on any operating system other than FreeDOS".

The modified MIT License is not considered free under the OSI definition. Jim Hall writes:

In retrospect, I should have declined the offer, since that's not really Free software. But, I've always had a soft spot for 4DOS, since I've been a longtime user. So I helped Rex put those terms into the MIT license. That was my mistake.

Lucho took on the 4DOS code and immediately began making improvements to it. But he didn't like the license. So while the modified MIT License still applied to the source code, Lucho used the original 4DOS license in distributing the binary. Rex liked that, and gave his permission for that license when distributing the binary version.