| Dosemu -- an emulator that works! |
Lawrence F. Povirk (Dec. 21, 2001)
I've never been very impressed with emulators and virtual machines. From the old SoftPC for the Macintosh, to WINE and VMWare for Linux, they have always exacted such a toll in terms of convenience, performance and stability, that in most cases you might as well just set up a separate physical machine. Dosemu, I've found, is an exception.
Dosemu allows you to run DOS and DOS applications inside of Linux. (Attempting to run Windows is not recommended.) The hallmark of dosemu is its flexibility. It supports many versions of MS-DOS, but (unlike VMWare) it also supports FreeDOS and DR-DOS, a boon to those who, just as a matter of principle, would like to keep their machines free of Microsoft-controlled code. It can be run in an X-window, with 80x25 text (in color) and 640x480 graphics, as if it were just another Linux application on your desktop. In a KDE Konsole, it can even handle additional text modes. But the strengths of dosemu are most apparent when it's run in a separate console. In that case, dosemu provides DOS with direct access to the video card, rather than emulating it. Thus you can, for example, execute vmode commands on an ET4000 card, either in autoexec.bat or from the DOS prompt, to change the text and graphics settings. Nevertheless, you can still use Ctrl-Alt-Fn to toggle instantly back and forth from your X session or other Linux consoles. When you go back to the dosemu session, it will retain the vmode settings you selected previously. The more I think about this, the more I become convinced that it cannot possibly work, but it does.
Drive access under dosemu is equally flexible. You can simply boot an existing DOS partition, and any functions in autoexec.bat or config.sys that dosemu does not support will just be ignored. Alternatively, you can create a virtual hard disk in a Linux directory, and map virtual DOS directories to existing Linux directories as desired. In either case, you can access your floppy as drive A: without having to mount it as a Linux directory. There's also the lredir command, which can be executed in autoexec.bat or at any time during your DOS session. It allows you to access your Linux home directory, or any Linux directory, as a lettered drive under DOS. This may sound dangerous, but I've yet to encounter any problems with it; dosemu seems to respect Linux permissions restrictions.
Because I prefer a text-based interface for word processing, I use dosemu mostly to run WordPerfect 6.1 in a console in high-resolution (100x40) color text mode. I can easily switch to WYSIWYG mode (800x600) to check the physical layout on the page, and performance is still quite robust. By setting dosemu to "rawkeyboard" mode, I can execute all those Shift/Crtl/Alt WordPerfect keyboard commands that long ago became hardwired into my brain, and I can print with the WordPerfect drivers just as if I was running native DOS. I also run Reference Manager 5.0, a text-based bibliographic database program. I don't run games at all, so I can't comment on dosemu's performance in that respect.
You might think DOS is as dead as Latin, but in fact there is a quite active dosemu mailing list, averaging a few to several posts a day. A good portion of the questions posted are answered by the developers, often in considerable detail. It's one of the few lists I regularly subscribe to, if only as reassurance that I am not the only person on the planet still using DOS.
(Click here for further information)
|
|
|
|
|
|
|
|