Running DOS on 64-bit Windows and Linux: Just because you can
- Reference: 1656406329
- News link: https://www.theregister.co.uk/2022/06/28/friday_foss_fest_running_dos/
- Source link:
One of the differences between the Microsoft and Apple approaches to maintaining widely used OSes is that Apple is quite aggressive about removing backwards compatibility, while Microsoft tries hard to keep it.
One of the few times Microsoft removed a whole compatibility layer from Windows was with the launch of 64-bit Windows, which went mainstream with Vista in 2007. 64-bit editions of Windows can't run 16-bit apps, whether they're for DOS or Windows.
[1]
Enterprising developers, of course, take this kind of thing as a challenge.
[2]
[3]
There are obvious ways round this, of course. You can run DOS in a virtual machine. It works fine – the problem is that it's very difficult to get anything in or out of it. Modern PCs are also so vastly more powerful than they were in DOS' heyday of the 1980s that you just run a PC emulator, such as [4]DOSBox or the enhanced [5]DOSBox-X .
These programs emulate an entire PC, so you can run games that require long-obsolete hardware such as SoundBlaster cards. DOSBox-X even supports Windows 3.x and Win9x.
[6]
The last ever version of WordPerfect, 6.2, also runs very nicely under vDosPlus
But a whole-system emulator is overkill if you just want to run some DOS productivity apps. A long-standing way to just open a simple DOS prompt on a Windows 64 machine is Jos Schaars's [7]vDos , and it too has an enhanced cousin, [8]vDosPlus .
A popular use for vDosPlus is to run the original DOS WordPerfect, as documented on [9]Edward Mendelson 's very helpful [10]WordPerfect for DOS page.
[11]
Microsoft Word 5.5 running under vDosPlus on 64-bit Windows 10 works just as well as it ever did
Most Linux distros used to include [12]DOSEMU , which is one of the oldest Linux apps around, dating back to 1992.
Despite its name, it's not an emulator: it's a sort of dedicated VM for running actual DOS under Linux. This has two benefits: one is that DOS apps can access real hardware, such as devices attached to a physical parallel port. The other is that whatever you run executes at full native speed, which on any 21st century PC is blazingly fast by DOS standards.
[13]
Conveniently, DOSemu can map DOS drive letters to Linux directories, including on the fly with the LDREDIR command, so it's much easier to get things in and out of the DOS app than it is a full virtual machine.
[14]Unbelievably clever: Redbean 2 – a single-file web server that runs on six OSes
[15]Original killer PC spreadsheet Lotus 1-2-3 now runs on Linux natively
[16]Microsoft reanimates 1995's 3D Movie Maker via GitHub
[17]Happy birthday Windows 3.1, aka 'the one that Visual Basic kept crashing on'
Unfortunately, the V86 mode of the x86-32 architecture has been removed from x86-64, so now it must be emulated, and possibly as a result, many distros have now dropped the trusty DOSemu along with x86-32 support. But don't panic, because a new team has taken over maintenance of the venerable program, and although unfinished, [18]DOSemu2 is getting very usable, and the project offers ready-made packages for Ubuntu, Fedora, and openSUSE.
[19]
Word 5.5 also runs fine under dosemu2, here shown on the latest 64-bit Ubuntu
Multiple sets of instructions are available, including a [20]set from the industrious Professor Mendelson and [21]another from überhacker Tavis Ormandy.
An excellent source of DOS freeware is the [22]FreeDOS Repo . For instance, it has MS Word 5.5, WordPerfect Editor (the freeware plain-text editor version of the famous app), Protext, and more. ®
Get our [23]Tech Resources
[1] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2YrrRQvGzrV6cAXoXGFwTSAAAAM8&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[2] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YrrRQvGzrV6cAXoXGFwTSAAAAM8&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[3] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YrrRQvGzrV6cAXoXGFwTSAAAAM8&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[4] https://www.dosbox.com/
[5] https://dosbox-x.com/
[6] https://regmedia.co.uk/2022/06/24/wp62-on-win10-64.jpg
[7] https://www.vdos.info/
[8] http://vdosplus.org/
[9] https://mendelson.org/edwardmendelson.html
[10] http://www.columbia.edu/~em36/wpdos/
[11] https://regmedia.co.uk/2022/06/24/word55-win64.png
[12] http://www.dosemu.org/
[13] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/oses&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YrrRQvGzrV6cAXoXGFwTSAAAAM8&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[14] https://www.theregister.com/2022/06/20/redbean_2_a_singlefile_web/
[15] https://www.theregister.com/2022/05/25/lotus_123_for_linux_appears/
[16] https://www.theregister.com/2022/05/04/3d_movie_make/
[17] https://www.theregister.com/2022/04/07/windows_3_1_30/
[18] https://dosemu2.github.io/dosemu2/
[19] https://regmedia.co.uk/2022/06/24/word55-ubuntu64.jpg
[20] http://www.columbia.edu/~em36/wpdos/linux.html
[21] https://blog.cmpxchg8b.com/2020/09/finding-console-word-processor.html
[22] https://clasqm.github.io/freedos-repo/
[23] https://whitepapers.theregister.com/
One less-obvious loss with 64-bit dosemu was the lack of interrupt-passing, which relied on the vm86 instruction. There was talk of "fixing" that via complicated emulation but I don't know if it has happened. We needed that for a DOS program that used interrupts from special hardware, so those machines are stuck on 32-bit OS host.
Another less-obvious attribute of dosemu is you can set the "clock" to be either really DOS-like (counting interrupts, time can be set, not very accurate) or you can have it report the host OS time instead, giving ntp-levels of long term accuracy when the host has its clock disciplined from external time standards.
Protext? Yay!
An excellent source of DOS freeware is the FreeDOS Repo. For instance, it has... Protext...
I had Protext for the Amiga - it was absolutely brilliant!
WordPerfect 6.2?
Come on, proper typists want 5.1 back.
You can remove support for whatever you want, they will get it back
In the end, a program is nothing but a series of instructions to the CPU.
If you remove a swath of available instructions from your OS, someone savvy will put them back in.
And that is not a problem, because contrary to ads (looking at you, SatNad), only the people who want the thing will get it.