[Robert J. Sawyer] Science Fiction Writer
Hugo and Nebula Winner

SFWRITER.COM > Nonfiction > WordStar Under Windows


Running WordStar for DOS Under Windows

vDos to the Rescue!

THIS IS AN OBSOLETE PAGE. This page deals with vDos versions 2015.11.01 and older (that is, with pre-2016 versions of vDos). For the current, actively updated version of this page, supporting versions of vDos and vDosPlus released in 2016 or later, please go to sfwriter.com/ws-vdos.htm.

I'm a Hugo Award-winning science-fiction writer, and I've been using WordStar since 1983, writing all 23 of my novels with it. If you still have questions about getting WordStar to run under Windows after reading the notes below (updated 29 April 2016), please email me.

Robert J. Sawyer

Introduction | vDos Installation | vDos Settings | Printing | vDos Quirks | Fonts | Screen Setttings | Control-Key Switchers | WordStar Patches | On-Screen Underlining and Strikeout | Advanced Page Preview and Inset | Windows Clipboard Support | Edge Padding | SmartKey, 4DOS, TameDOS, and ZTree Win | More Information | Acknowledgments


[WordStar under vDos]

My favorite word-processing program is the versatlie, customizable, and powerful WordStar for DOS, last updated in December 1992. Running it under Microsoft Windows can be difficult, particularly with 64-bit versions of Windows, and especially with recent versions (Vista, Windows 7, Windows 8, Windows 8.1, and Windows 10).

But a new, free, open-source MS-DOS emulator released in 2014 called vDos makes it easy to run WordStar for DOS (and many other MS-DOS programs) under all versions of Windows from XP through to Windows 10, whether 32-bit or 64-bit, with excellent printer and clipboard support. WordStar's graphical Advanced Page Preview and Inset work under vDos, too, although only at standard VGA resolution (640x480 pixels).

Most of the instructions below apply to using all of the later versions of WordStar for DOS: WordStar 4.0, WordStar 5.0, WordStar 5.5, WordStar 6.0, and the final release WordStar 7.0. You can see which version you have by hitting ? at WordStar's Opening Menu.

Note: If you use Windows Vista, XP, or earlier (or the rare 32-bit version of Windows 7), you may find TameDOS to be an even better solution than vDos. However, TameDOS will not run at all under 64-bit versions of Windows. There's more about TameDOS below.

vDos was created by Jos Schaars by modifying DOSBox. DOSBox, beloved by those who like MS-DOS games, has never been good for business applications. Jos changed that by stripping out the gaming flourishes (joystick support and so on), beefing up file locking, and vastly enhancing the screen display (plus allowing you to use any monospaced TrueType font you wished). His system supports XMS, EMS, and basic mouse functions (but not the scroll wheel), and it automatically converts PostScript or PCL (LaserJet) output into Adobe Acrobat PDF files that can be printed on any printer.

vDos Installation

First, a notice from Jos Schaars, the creator of vDos:

Notice: As of version 2015.10.01, vDos is hosted on www.vdos.info.

This to prevent eventual problems with SourceForge's conditions, due to including the third party products 4DOS (freeware) and DOSPrinter (shareware), static linking of the Microsoft C++ libraries, and excluding a small part of vDos' proprietary source code.

The new vDos version is a little less freeware; vDos will check if the PC is joined to a domain, or a networked drive is addressed. In such a situation a popup is displayed, so vDos has become sort of nagware for some targeted business users. Still being freeware, one can just ignore the eventual nag. Certainly if vDos isn't used that often, this shouldn't pose a real obstacle.

If you don't like this, you can of course still download the older versions and source codes of vDos at SourceForge.

[More on the optional registration process is here.]

Okay, let's beginning installing vDos on your system.

Download the current vDosSetup.exe from the website vDos.info here or, if you have trouble using the latest version for whatever reason, download an older version from SourceForce here.

The www.vdos.info versions have replacement command processor 4DOS integrated; the older SourceForce versions do not. Personally, to date, I've found the SourceForge versions more stable with WordStar; I recommend SourceForge version 2015.04.10; again, you want file vDosSetup.exe.

For help from other users (including vDos creator Jos Schaars himself) and for general discussion about vDos, see the vDos discussion forum at SourceForge and Jos Schaar's website at vDos.info.

vDos comes with very little in the way of documentation. When you install vDos, the setup program does give a little help — but the help message disappears as soon as you press "Next," and there's no way to see it again. So, for reference, here it is; do read it:

Please read the following important information before continuing.
  • To get a quick impression, start the desktop vDos shortcut. This should launch the DOS DataPerfect Testdrive program. Play with it to confirm vDos is working correctly on your system and exit it (by pressing F7).
  • Next have a look at vDos - Autoexec in your start menu on how to start your own application.
  • To uninstall, just remove the vDos folder and menu entries.

After you've finished installing vDos, read the Adobe Acrobat document vDos.pdf, which is included with the program. This is the vDos manual. Please read it.

Additional documentation is in the comment lines in the autoexec.txt and config.txt files that are also included with the vDos program.

vDos Settings

Once you've installed vDos, have a look in the supplied autoexec.txt and config.txt files for various parameters you can set (these correspond to the autoexec.bat and config.sys files used by MS-DOS).


As distributed, vDos is set up to simply run a program called DataPerfect Testdrive (DP26YI.EXE in the \DPTEST folder installed by vDos), so that you can see that vDos works on your computer. By default, vDos is also set up to terminate your vDos session the moment you exit DataPerfect (by pressing F7), without ever letting you see the vDos command prompt.

So: the very first thing you will want to do when setting up vDos so that you can actually use it to run WordStar or any other MS-DOS software is edit the vDos file autoexec.txt (in Nondocument mode, if you choose to edit it with WordStar), and put the letters "rem" followed by a space in front of these three lines ("rem" is short for "remark," and it comments out — that is, deactivates — these three commands):

DP26YI /s

They should now read:

rem DP26YI /s
rem EXIT

Next, assuming your main hard drive is C:, add this line:

USE C: C:\

From then on, vDos will have access to any directory/folder on your C: drive that has a name that conforms to DOS 8.3-character naming standards (so, vDos will be able to access C:\FILES, but not C:\Program Files). Assuming WordStar is already installed on your C: drive (in C:\WS or wherever), it'll work just fine now without changing any of WordStar's internal pathing.

(If you need to access files or folders that don't conform to DOS 8.3-compatible filename standards, see vDos Quirks below.)

If have other hard drives as part of your system, you can make them accessible to vDos here. For instance, if you have an external hard drive named F:, make it accessible to vDos by adding this line:

USE F: F:\

Note: If your WordStar program files are on a drive other than C:, it's imperative that you add that drive to vDos, using the above syntax.

And if you've been using the DOS/Windows SUBST command to assign a drive letter to a folder name, you can get the same effect under vDos with the USE command. I've long employed SUBST N: C:\NOVELS to make logging to drive N: the equivalent of logging to folder C:\NOVELS. To get the same thing under vDos, I added this line to autoexec.txt:


Here in autoexec.txt you can also set a PATH command (just like the MS-DOS PATH you might have in your old MS-DOS autoexec.bat file) if you need one. For instance:


(or whatever else you normally use).

If you're using an older version of vDos that doesn't already have JPSoft's terrific (and free) 4DOS command processor built in, you can load 4DOS.COM here in autoexec.txt. See these instructions.


Next, have a look at config.txt (in Nondocument mode, if you're using WordStar):

For WordStar 7.0 (which can use EMS memory, as discussed below), or if you want EMS memory for TSR (memory-resident) programs, I suggest these settings.

WINDOW = 100

For WordStar 4.0, 5.0, 5.5, or 6.0, which can't use EMS, don't include the XMEM = 4 EMS line:

WINDOW = 100

Each of the above options is documented with "rem" comment lines in vDos's config.txt file.

Contrary to usual Windows practice, programs running under vDos will still show a cursor or insertion point even if the vDos window isn't the active one. When you use vDos's FRAME = OFF setting in config.txt (which is what both Jos Schaars and I prefer), you'll need to pay attention to the very slight dimming of the top line of characters in WordStar to tell you when your vDos window isn't active (that is, when it's not the window that's going to receive your keyboard input). FRAME = ON will get you back an approximation of the normal Windows frame, including a title bar that will indicate active/inactive status by its color.


Getting the Files You Need

Trying to print directly to your printer with any DOS application can be tricky under Windows, but by using components of the freely available Ghostscript and GhostPCL under vDos, an elegant workaround is possible.

The redoubtable Edward Mendelson has made things easy for us by creating a convenient archive of the necessary files — thanks, Ed! Download this file: vDosPCLPS.zip

Unzip the contents, and put all three files into your vDos folder (where vDos.exe is located):


Installing a Printer Under WordStar

To print under vDos, we need to tell WordStar that you have an appropriate printer hooked up to your system (even if you don't actually have such a printer). WordStar 5.0, WordStar 5.5, WordStar 6.0, and WordStar 7.0 support both LaserJet and PostScript printers. WordStar 4.0 doesn't support PostScript printers. Again, note that you do not actually have to own a LaserJet or PostScript printer to use the methods described below; you can send the output to any dot-matrix, inkjet, or laser printer.

(If you prefer the output from an Epson or Epson-compatible dot-matrix printer, see the Adobe Acrobat file DOSPrinter.pdf supplied with vDos and the comments about DOSPrinter in vDos's config.txt file.)

If you use WordStar 5.0, WordStar 5.5, WordStar 6.0, or WordStar 7.0, and don't already have a LaserJet or PostScript printer installed under WordStar, run the program PRCHANGE.COM, which should be in your main WordStar folder, and select a choice from either "HP LaserJets and compatibles" or "PostScript Lasers."

I recommend you choose LaserJet 4P, if it's listed for your version of WordStar, or LaserJet III if it isn't. If neither of these are listed (which will be the case with WordStar 5.0 and 5.5), then choose LaserJet II.

If you have WordStar 4.0, you set your default printer with WSCHANGE.COM (not PRCHANGE.COM) at menu BAA. Choose option 2 ("Printer Menu #2, Epson LQ - IBM").

On that menu, the choices you'll see depend on which release of WordStar 4.0 you have. If you see this option, choose it: HP LaserJet II, F & P Cartridges. If not, choose this instead: HP LaserJet, U & V Cartridges. Either should give you the full normal suite of accented characters as well as the PC-8 box-drawing characters. For information on selecting fonts, run the README.COM program that comes with WordStar 4.0 to view the compressed ReadMe file, or download the extracted ReadMe file as plain-ASCII text from my public Dropbox folder: READMEWS.TXT.

Printing a File

With WordStar 5.0, WordStar 5.5, WordStar 6.0, or WordStar 7.0, select any LaserJet or PostScript printer and print as normal — and, by "as normal," I mean just print to printer port LPT1 or COM1.

(Your WordStar printer description file will likely have the parallel port LPT1 or the serial port COM1 selected by default; if not, you can specify one of those ports in WordStar's "Print" dialog under "Redirect to," or select one of them permanently for your printer with PRCHANGE.COM, under "Change printer adapter port".)

With WordStar 4.0, which only allows you one installed printer, just go ahead and print.

No matter which version of WordStar you're using, vDos will intercept the output as it goes to the printer port, and instead of sending it to the printer directly, it will create a beautiful Adobe Acrobat PDF document, which will open automatically in your system's default Acrobat PDF viewer — and from there you can print it to any printer (even one that doesn't normally support DOS applications, and even one hooked up to a USB port).

Given that vDos only supports low-resolution VGA graphics (640x480 pixels), rather than using WordStar's Advanced Page Preview, "printing" to PDF using this method also gives you a wonderful high-resolution preview of your document, which you can have open in a separate window; you don't have to actually print the PDF document unless you want to.

(You probably won't need it, but some technical documentation about all this is available via Edward Mendelson, although the above installation instructions are my own. See here.)

If you've followed the instructions above, you should now have WordStar up and running just fine under vDos: you should be able to create, edit, save, and print WordStar documents.

Everything that follows is optional: either extra information you might find useful or instructions for customizing or enhancing your use of WordStar under vDos.

vDos Quirks

vDos is idiosyncratic in the way it handles (a) long filenames and (b) hidden files and folders.

Long and Short Filenames

vDos author Jos Schaars has chosen not to support long filenames, or even their short-filename equivalents. Under other DOS-like environments — Windows's own Command prompt, JPSoft's 4DOS and 4NT, TameDOS, and DOSBox — either long filenames such as Book Manuscript.ws or their corresponding short filenames such as BOOKMA~1.WS show up in all file directory listings. But not under vDos. It instead suppresses — that is, completely hides as if they weren't even there — any long filename (or long directory name), and won't show you the short version. Files and directories with names that aren't in the DOS 8.3-character format won't show up when you do a DIR listing at vDos's command prompt, and they won't show up in WordStar's "Files" list.

(Warning to Dropbox users: this means that if you have a file-synchronization conflict, you'll never see evidence of that under vDos, since Dropbox will give the conflicted copy a long filename and vDos will completely hide that file.)

But vDos was completely open source until October 1, 2015, and is still almost completely open source. A programmer from the University of Toronto named Wengier Wu provides a modified version of vDos.exe that he calls vDos-lfn.exe that does supports long filenames and long directory names.

You can get Wengier's vDos-lfn.exe — functionally identical to the latest Jos Schaars version of vDos.exe, but with long-filename support — here.

If, after installation, when trying to run vDos, you get an error message about MSVC100.DLL not being found on your system, then install the Microsoft Visual C++ 2010 Redistributable Package (x86), available for free here.

In addition, for vDos-lfn.exe (but not vDos.exe), you'll also need the files MSVCR100.DLL and MSVCP100.DLL. They may already be present on your system. If not, you can get them from here. Put them in either your vDos folder or C:\WINDOWS\SYSTEM32; either will work.

Hidden Files and Folders

vDos.exe (and therefore vDos-lfn.exe) has an odd quirk that Jos Schaars is aware of but doesn't intend to change: it shows files and folders with the DOS "hidden" attribute in all directory listings, including WordStar's file lists (without vDos, these files normally wouldn't be visible to you). You may see filenames (such as, for instance, 4DOS's descript.ion) or folders displayed that you are not used to seeing.

(Yes, this means in aggregate that vDos shows you files and folders that Windows intends to have hidden and yet refuses to show even the short filenames of files and folders that have long filenames that would normally be visible.)


The customized built-in vDos font created by Jos Schaars does not handle double-line box-drawing characters in the normal fashion: instead of double lines, it shows dim single lines; for those characters where, in a normal font, double and single lines would intersect, Jos's font has glyphs that are partially bright and partially dim. He likes this customized look better, but, if you don't share his taste, you can use any monospaced TrueType font with vDos.

I suggest these fonts for use with vDos, in addition to the built-in vDos font (which is what you get if you comment out FONT = in config.txt):

  • DejaVu Sans Mono (from BitStream)
  • Lucida Console (from Bigelow & Holmes)
  • Consolas (from Microsoft)

Each of these has its advantages and disadvantages:

  • The built-in vDos font has a tiny period, an okay comma, a narrow hyphen, a weird lower-case "L", and a faintly dotted zero

  • DejaVu Sans Mono has a good period, a good comma, a narrow hyphen, a weird lower-case "L", and a faintly dotted zero.

  • Lucida Console has a good period, a good comma, a good hyphen, a normal lower-case "L," and an undotted/unslashed zero.

  • Consolas has a good period, a good comma, a narrow hyphen, a normal lower-case "L," and a slashed zero.

The built-in vDos font shows multiple underscores (____) as discrete characters; the others listed above all show them as one continuous line.

You can get DejaVu Sans Mono for free here.

Copy DejaVu Sans Mono (regular weight only, no need for bold, italics, or bold-italics) to your vDos folder as DEJAVU.TTF,

If you have any version of Microsoft Windows from XP through to 8, you should already have Lucida Console on your system. It's likely in C:\Windows\Fonts or C:\Windows\System32\Fonts as Lucon.ttf, but note that most versions of Windows hide the \Fonts folder (by setting the "hidden" attribute). Ironically, vDos, which doesn't hide any folders, will be your friend in getting access to it, if you don't have a better tool for seeing the contents of hidden folders. From the vDos command prompt, issue these commands (substituting the actual location of your own vDos folder, if different):

CD \Windows\Fonts
Copy Lucon.ttf C:\vDos

(Again, you only need the regular weight; there's no need for bold, italics, or bold-italics.)

If you have Windows Vista, 7, or 8, then versions 5.00, 5.22, and 5.32 respectively of the Consolas font came with your system, and should work fine with vDos. Earlier versions of Consolas (0.90, 1.00, and 2.00 were bundled with various Microsoft products) don't include the graphic PC-8 line- and box-drawing characters WordStar needs to make its menus and dialog boxes. If you don't already have a version 5.00 or better of Consolas, Microsoft will sell it to you here for US$49 (for just the one regular roman weight, the only one vDos needs).

You can copy Consola.ttf to your vDos folder the same way you copied Lucon.ttf.

Sadly, I've found these monospaced TrueType fonts are not generally suitable for use with vDos, because they lack some or all of the graphic characters WordStar needs to make its menus and dialog boxes:

  • Anonymous Pro (by Mark Simonson)
  • Cousine (from Google)
  • Dark Courier (from Hewlett-Packard)
  • Lucida Sans Typewriter (from Bigelow & Holmes)
  • Vera Mono (from BitStream)

Most American users will have their system codepage set to 437, which displays the original IBM PC "PC-8" character set. If you use a different codepage, you might see accented alphabetic characters on screen where you'd expect to see some or all of the line- and box-drawing characters. If your external font actually has all the line- and box-drawing characters in it, but isn't displaying them properly (none of the four named above do have those characters), try putting a minus sign or hyphen ("-") in front of the vDos FONT = directive in config.txt. That will cause vDos to map ASCII codes 176 through 223 to line- and box-drawing characters in your chosen font as if your system had codepage 437 selected:

FONT = -[fontname]

(If your font is showing little empty boxes or question marks where line- and box-drawing characters should be, it's probably a lost cause for use under vDos. Generally, font files smaller than 100 kilobytes and/or very old TTF font files tend not to have the line- and box-drawing characters included.)

Screen Settings

Below are the combinations of fonts and screen sizes I like best. Of course, this is subjective, and, as we say in Canada, ykmv — your kilometrage may vary.

Use the highest resolution your monitor supports that's appropriate for its aspect ratio; the higher the resolution the better the TrueType fonts used by vDos will look (although they look very nice even at lower resolutions). Most widescreen 16x9 monitors max out at 1920x1080, and most 4x3 squarish monitors max out at 1024x768.

That said, using a lower resolution will make Windows icons, dialog boxes, and other things that don't matter when using vDos, look larger; I actually often use 1280x720 when hooking up my laptop to a large HDTV monitor.

(If you're buying a new monitor and use WordStar with a black background, I recommend getting a monitor with a black bezel, so that the bezel itself will provide additional visual blank space at the edges of the screen.)

Widescreen Monitors

For widescreen monitors with 16x9 / 1.78 aspect ratios (including HD TV sets), often used with graphic resolutions of 1280x720, 1600x900, or 1920x1080 pixels, try Consolas with the default screen dimensions of 80x25 (although the font is called "Consolas," the actual filename, which is what you cite when setting vDos's FONT = parameter in config.txt, lacks the final S).

Note that the vDos parameter for setting the number of lines is LINS = not LINES =.

If you like the look of the font Consolas (which you specify by the file name CONSOLA without the final "S"), these combinations are good:

For large text and a standard MS-DOS 80-column by 25-line screen:

COLS = 80
LINS = 25
WINDOW = 100

Medium text (this one, and the two that follow all have screens wider than 80 columns, which may cause some MS-DOS applications to not work well):

COLS = 94
LINS = 29
WINDOW = 100

Smaller text (this is my favourite):

COLS = 104
LINS = 31
WINDOW = 100

Even smaller text:

COLS = 118
LINS = 35
WINDOW = 100

(When using the Consolas font, the setting COLS = 118 gives you a six-column WordStar file-directory display, plus a tiny bit of blank space on either side of the screen; a setting of 117 or lower only gives a five-column directory display but more room around the window's edges.)

If you prefer the look of Lucida Console (which you specify by the filename LUCON), you'll get a nicer display by using 28 lines instead of the default of 25:

COLS = 80
LINS = 28
WINDOW = 100

For smaller type, try this:

COLS = 94
LINS = 31
WINDOW = 100

Squarish Monitors

For squarish old-style monitors with 4x3 / 1.33 aspect ratios, often used with graphic resolutions of 640x480, 800x600, or 1024x768 pixels, you'll want to use more than 25 lines (otherwise, you'll have large amounts of unused screen real estate at the top and bottom). Try these settings in config.txt:

COLS = 80
LINS = 35
WINDOW = 100


COLS = 80
LINS = 36
WINDOW = 100

If you want more text on screen, I find these settings work well with a squarish monitor:

COLS = 105
LINS = 50
WINDOW = 100

Control-Key Switchers

Most WordStar users prefer to have the Ctrl or Control key to the left of the A key; that is, they prefer to swap the positions of Ctrl and CapsLock.

WordStar for DOS comes with a TSR (memory-resident) program called SWITCH.COM to make the swap. Unfortunately, switch is also the name of an internal 4DOS command — and 4DOS is the command processor used by vDos. To use SWITCH.COM under vDos, you have to rename it to something else; I suggest SWAP.COM.

If you find that the program still won't load (or if it loads but does nothing), then I suggest you use a system-wide keyboard remapping utility. The one I use myself (tested by me under both Windows XP and Windows 7) is KeyTweak, available for free here. There are many other similar utilities available.

WordStar Patches

To patch WordStar, use the WSCHANGE.COM program, which should be in your WordStar program folder.

WSCHANGE provides on-screen help. If you're technically inclined, you'll find extensive documentation on patching WordStar in the file PATCH.LST in your WordStar program folder (depending on what version of WordStar you have, you may have to run the program PATCHLST.EXE once to expand the compressed PATCH.LST file).

Screen Sizing

If you have WordStar 7.0, you can make WordStar automatically adapt to whatever your vDos screen dimensions are. Go to WSCHANGE menu A, A, C (Screen sizing) and set both Height (WordStar user-area address label HITE) and Width (WIDE) to 0 (zero); WordStar will now autosize to fit the current dimensions.

If you have WordStar 4.0, 5.0, 5.5, or 6.0, and you are using vDos at anything other than its default values of 25 lines by 80 columns as specified by the LINS = and COLS = directives in config.txt, then you have to manually set Height (WordStar user-area address label HITE) and Width (label WIDE or, in WordStar 4.0, WID) to have the same numeric values as the LINS = and COL = settings you've specified for vDos; these values are set at WSCHANGE menu A, A, C (Screen sizing).

Cursor Sizing

WordStar 5.0, 5.5, 6.0, and 7.0 users may also want to jigger the cursor shape a bit, since the way vDos handles the cursor can cause it to sometimes disappear (for instance, during spellchecks) or to not highlight the first character when highlighting choices in a list of filenames or fonts (WordStar 4.0 doesn't support changing the cursor shape). Go to WSCHANGE menu E, = (Enter User Area address), type CURSIZ, and enter these six bytes if you like a block cursor for insert and an underscore for overtype:

0E 02 07 07 07 06

If you prefer an underscore cursor for insert and a block for overtype, instead enter:

07 07 0E 02 07 06

(Depending on your vDos screen-size settings this may cause what looks like an underscore cursor to appear above rather than below the first character in the word being spellchecked — but that's better than no cursor at all, which is what you might get without this patch.)


WordStar 4.0, 5.0, 5.5, and 6.0 do not support either EMS (expanded memory) or XMS (extended memory); if you have one of those versions, you can skip to the next section.

Enabling WordStar's EMS support frees an extra 18K of the 640K of low DOS memory; that additional low DOS memory can be used by WordStar itself or by TSR memory-resident programs (although note that not all TSRs work under vDos).

(You shouldn't need it under vDos, but if you're having trouble accessing EMS on your computer, the free product EMS Magic will be your friend.)

To enable EMS in WordStar 7.0, go to WSCHANGE menu C, C, 2 (Memory Usage Menu #2), and set option G ("EMS Usage (16K pages)," which is user-area address label EMSMEM), to 16.

The values of 16 suggested above have never given me any problems, but, for the record, the README file that comes with WordStar 7.0 says, "It's generally best to use a total of 8 to 35 pages of EMS. Using fewer than 8 pages or more than 35 pages may slow WordStar down. You can try different settings within this range to find the optimum efficiency on your system."

You then must activate EMS in vDos; to do that, you must have this line in vDos's config.txt, file as indicated under vDos Settings, above:


(The numeral in the above line tells vDos to provide 4 megabytes of EMS; you can specify any number between 1 and 63.)

You can confirm that WordStar is in fact using EMS memory by issue ? from the Opening Menu, or ^O? while editing.

WordStar 7.0 Rev. A, Rev. B, and Rev. C support only EMS but not XMS. Support for XMS was was added (in addition to the existing EMS support) in the final revision, WordStar 7.0 Rev. D, which allows using EMS, XMS, or both simultaneously (or neither, if you prefer). You can see which revision you have by hitting ? from WordStar's Opening Menu.

Unless you have WordStar 7.0 Rev. D, you can skip to the next section now.

If you do have WordStar 7.0 Rev. D, and prefer to use XMS instead of EMS, then, since XMS is the vDos default, either comment out the XMEM = line in config.txt, or explicitly set it to XMS, like so:


Then go to WSCHANGE menu C, C, 2 (Memory Usage Menu #2), and instead set option J ("XMS Usage (16K pages)," label XMSMEM) to 16.

As I said above, enabling WordStar's EMS support frees an extra 18K of the 640K of low DOS memory. Enabling Rev. D's XMS support, on the other hand, uses up an additional 4K of the 640K of low DOS memory. As vDos creator Jos Schaars explains, "To access XMS memory, a program requests DOS to swap a chunk of memory from XMS to conventional memory and back again, so some conventional memory has to be set aside as a buffer. EMS memory has its buffers in upper memory and no swapping is involved; a buffer is simply set to point to some part of the EMS memory." Because of this, unless you have a specific need for XMS, I recommend you use EMS instead.

You can confirm that WordStar is in fact using EMS or XMS memory by issue ? from the Opening Menu, or ^O? while editing.

On-Screen Underlining and Strikeout

The following instructions should work for WordStar 4.0, WordStar 5.0, WordStar 5.5, WordStar 6.0, and WordStar 7.0.

Jos Schaars has very kindly added some special video support for WordStar to vDos — many, many thanks, Jos! (You need a version of vDos dated on or after 17 October 2014 for this WordStar support.)

This support allows WordStar to display underlining and strikeout within WordStar. If you'd like to try this out, add this line to config.txt (and remember that in a WordStar document, you fence text to be underlined between ^PS codes and text to be struck out between ^PX codes):


(That stands for "word processor is WordStar.")

To get onscreen underlining and strikeout, you must also patch a copy of the WordStar program WS.EXE or a WordStar configuration file *.CFG to use these color settings for special attributes (this won't affect your choices for menus, lists, title bar, style bar, status line, scroll bar, or ruler). To do that, write all three of these lines out to a plain text (nondocument) file called VDOS.PAT (with each line ending with a hard carriage return):


Or simply download VDOS.PAT from my public Dropbox folder: VDOS.PAT

Place VDOS.PAT in your master WordStar program folder (normally C:\WS), and then run WSCHANGE, go to menu E, A ("Patch from file"), and specify VDOS.PAT as the filename to be read in).

This gives white text on a black background (with bold showing as bright white on black). If you prefer other colors, you might look at modifying the COLOR variable in config.txt rather than changing the WordStar colors; calculating the first of the two bytes in each VCOLOR word is a bit tricky (but see below).

Savvy WordStar patchers will note that the above autopatcher file skips over changing the user's choices for subscript (two bytes starting at label VCOLOR+0A) and superscript (two bytes starting at label VCOLOR+0C). vDos doesn't support half-height characters for those attributes (although TameDOS, discussed below, does).

Likewise, VDOS.PAT make no specification for italics (or "italics/color," as WordStar 4.0 calls it); that would be set by two additional bytes in the last line.

You may set whatever foreground and background colors you wish for subscript, superscript, and italics at WSCHANGE menu A, C, A in WordStar 4.0, WordStar 5.0, WordStar 5.5, WordStar 6.0, or at menu A, B, A in WordStar 7.0.

If you like using a black background for WordStar documents, you can skip to the next section. If not, or if you just want technical details, read on:

WP = WS has this effect, according to Jos Schaars:

If you inovke WP = WS, and the high bit of the background color is set (8-15 = 0x8-0x0f), which means you can't use bright background colors anymore, and:

  • If bit 0 (1) is also set, the text is underlined.

  • If bit 2 (4) is also set, the text is struckthrough.

You can add a decimal numerical argument to the WP = WS statement to specify the background color you use for the WordStar editing window as set in WSCHANGE.EXE; vDos will only provide text enhancements against the specified background color. Black is the default, or you may specify one of the following:

WP = WS,0 = Black
WP = WS,1 = Blue
WP = WS,2 = Green
WP = WS,3 = Cyan
WP = WS,4 = Red
WP = WS,5 = Magenta
WP = WS,6 = Brown
WP = WS,7 = White
WP = WS,8 = Gray
WP = WS,9 = Bright Blue
WP = WS,10 = Bright Green
WP = WS,11 = Bright Cyan
WP = WS,12 = Bright Red
WP = WS,13 = Bright Magenta
WP = WS,14 = Yellow
WP = WS,15 = Bright White

So, WP = WS and attribute 0x97 will display white (7) underlined text (8+1) on a black background.

WP = WS,8 and attribute 0xdf will display bright white (F) underlined and struckthrough (0xd) text on a dark gray (8) background.

Block-Marking Colors

The vDos.pat autopatcher file described above makes WordStar show marked blocks as black text on a green background. If you want inverse video (which can look odd with the special attributes patched above), go to WSCHANGE menu E, = ("Enter User Area Address"), and specify VCOLOR+6, then enter these two bytes:

FF 00

If you prefer a color combination other than black on green, patch VCOLOR+6 as follows — a great tip from Karl Fuss, who was a mainstay of the CompuServe WordStar Forum.

WordStar usually displays marked blocks by using a simple reversal of the normal text colors. Depending on the background and foreground colors chosen for text display, large areas of reverse video can often be ugly or uncomfortably bright. The color-setting menu in WSCHANGE does not permit altering the marked-block colors, although the VCOLOR area does include a two-byte slot called "Reserved (reverse video)" that serves the purpose quite well.

To control the marked-block colors, set the two bytes starting at VCOLOR+6 (default FF 00) to 00 nn. Get nn from the following table:

Background--> M a B G g B W l B r C e r h a l e y R n o i c u e a e t w t k e n n d a n e Fore- Black | |01|02|03|04|05|06|07| ground Blue |10| |12|13|14|15|16|17| | Green |20|21| |23|24|25|26|27| | Cyan |30|31|32| |34|35|36|37| v Red |40|41|42|43| |45|46|47| Magenta |50|51|52|53|54| |56|57| Brown |60|61|62|63|64|65| |67| White |70|71|72|73|74|75|76| | Gray |08|09|0a|0b|0c|0d|0e|0f| Bright Blue |18|19|1a|1b|1c|1d|1e|1f| Bright Green |28|29|2a|2b|2c|2d|2e|2f| Bright Cyan |38|39|3a|3b|3c|3d|3e|3f| Bright Red |48|49|4a|4b|4c|4d|4e|4f| Bright Magenta |58|59|5a|5b|5c|5d|5e|5f| Yellow |68|69|6a|6b|6c|6d|6e|6f| Bright White |78|79|7a|7b|7c|7d|7e|7f|

To make the change, go into WSCHANGE, press E for patching, then =. Type VCOLOR+6 as the label to edit. You should see FF 00 as the first two bytes. Change them to 00 nn (taking the appropriate value of nn from the table above), press X, and then save the file.

Advanced Page Preview and Inset

WordStar 4.0 is solely a text-mode program; if you have that version, you can ignore this entire section and skip to Printing.

Advanced Page Preview

Starting with WordStar 5.0, and continuing with WordStar 5.5, WordStar 6.0, and WordStar 7.0, the ability was added to graphically preview the layout of documents with the fonts and colors that would be used when printing. WordStar's makers called this feature Advanced Page Preview, and rightly so: it was light-years ahead of the competing features in the DOS versions of Word and WordPerfect.

Although, with the right graphics card, Advance Page Preview can support resolutions as high as 1600x1280 pixels, vDos only supports the standard VGA resolution of 640x480 pixels, and so that's the best you're going to get out of WordStar when running under vDos.

Try invoking Advanced Page Preview under vDos (while editing a document) with the ^OP command. If it works, great. If either of these two things happen, though, you need to make a little tweak:

  • You get a blank screen; if so keep pressing Esc until you're out of preview and back into your document.

  • You get the WordStar error message "Must have graphic display to run Preview;" if so, press Esc to return to your document.

If either of those errors occur, you'll need to go to the folder that contains your Advanced Page Preview files. Depending on how you set up your WordStar program, that might be C:\WS or C:\WS\PREVIEW or whatever location you chose when installing WordStar for the first time.

In that folder, you'll find a file named FONTID.CTL. Edit this in WordStar's nondocument mode (or with any ASCII editor) and find the line that begins:


The = may or may not be followed by a number (if it isn't, that told WordStar to auto-detect your display-adapter type, a function that fails under vDos). Edit the line to specify adapter type 6, which is (as documented in the FONTID.CTL file) "640 X 480 IBM VIDEO GRAPHICS ADAPTER (VGA) (16 COLOR)." The line should now look like this:


Save and exit the FONTID.CTL file.


If your version of WordStar came with the Inset graphics editing program (it was included with WordStar 5.5, WordStar 6.0, and WordStar 7.0), or you acquired it as a standalone add-on for use with WordStar 5.0, you also need to tell Inset to use standard VGA resolution. Find the WordStar folder containing INSET.EXE. In the same folder, you should also find Inset's installation utility, SETUP.COM.


Change option A ("Screen") to "VGA."

Change option B ("Screen Mode") "VGA_HIGH."

Inset, which you invoke while editing with ^P&, should now work properly under vDos.

Windows Clipboard Support

As documented in the file vDos.pdf that Jos Schaars provides with vDos, you can copy and paste to and from the Windows clipboard with these commands:

  • [Win][Ctrl]+C copies the currently open document to a text file, which will automatically be opened by the Windows program that normally handles such files.

  • [Win][Ctrl]+V pastes the Windows clipboard into the DOS keyboard.

  • [Win][Ctrl]+mouse click starts selecting a rectangular block of text. Drag the mouse and release the mouse button, and the selected text will be copied to the Window clipboard.

In addition, I suggest you add this line to vDos's config.txt:

LPT4 = clip

With it, anything that is printed to or copied to LPT4 will be intercepted by vDos and instead be copied onto the Windows clipboard. So, if you want to send a large block of text from WordStar to the clipboard, write that text to its own file (perhaps called TOCLIP.TXT) using WordStar's ^KW "Copy to Another File" command (selecting "Copy in ASCII format" in the dialog box), and then use WordStar's ^KF "Run DOS Command" function issue an instruction like this to copy the contents to the Windows clipboard:


And, as an alternative to using [Win][Ctrl]+V to paste text from the Windows clipboard to WordStar, install the program VPASTE.EXE in your vDos folder. You can get VPASTE.EXE here (from my personal Dropbox public folder): VPASTE.OFF. Rename VPASTE.OFF to VPASTE.EXE after downloading.

Running VPASTE.EXE from the vDos command-line prompt or WordStar's ^KF "Run DOS Command" command produces a file, located in the same folder as the VPASTE program, named #CLIP.TXT that contains a plain-text version of the contents of the Windows clipboard. You can then read the file #CLIP.TXT into a WordStar document via WordStar's ^KR "Insert File" command.

Many thanks to Edward Mendelson for the VPASTE.EXE program. See his excellent page on using WordPerfect for DOS under Windows here.

WordStar 7.0 Macros

If you have WordStar 7.0, both copying to LPT4 and reading (pasting) from VPASTE.EXE can be automated with macros. You can download the two macros described below compiled and ready to run from my public Dropbox folder: WINCOPY.WSM and WINPASTE.WSM.

Simply place these files in whatever folder normally contains your WordStar macros. You can then assign whatever hotkeys you wish to them with WordStar's ^ME "Rename Macro" command.

Note: The macros assume you have a folder named C:\vDos on your system; if you don't, then edit the macros with WordStar's ^MD "Edit/Create Macro" command to change all occurrences of that location in both macros.

This WordStar 7.0 macro copies the marked block from WordStar to the Windows clipboard under vDos; perhaps call it WINCOPY (macro filename WINCOPY.WSM):

REM Copy to Windows 
REM clipboard under vDos
REM by Robert J. Sawyer 
REM (sawyer@sfwriter.com)

REM Without using WordStar's ^K] 
REM command, this macro copies the 
REM existing marked block (with 
REM accented and graphics characters 
REM properly converted) from WordStar 
REM to the Windows clipboard by writing 
REM the block to temporary file 
REM C:\vDos\TOCLIP.TXT, and then 
REM copying that file to LPT4.  For 
REM this to work, vDos's CONFIG.TXT 
REM file must contain this line 
REM (without the leading "REM"):
REM     LPT4=clip

Sub Main
       ACK: Key("O")
       End IfException
    Key("copy C:\vDos\TOCLIP.TXT LPT4:")
End Sub

This WordStar 7.0 macro pastes from the Windows keyboard into a WordStar document under vDos; perhaps call it WINPASTE (macro filename WINPASTE.WSM):

REM Paste from Windows 
REM clipboard under vDos
REM by Robert J. Sawyer 
REM (sawyer@sfwriter.com)

REM Requires program VPASTE.EXE in 
REM C:\vDos -- if you put VPASTE.EXE 
REM somewhere else, then the #CLIP.TXT 
REM file will be created in that folder 
REM instead, requiring changes below.

REM VPASTE.EXE is provided courtesy of 
REM Edward Mendelson and can be 
REM downloaded from Robert J. Sawyer's 
REM public Dropbox folder:

REM here

REM (link should be all on one line):
REM https://dl.dropboxusercontent.com/
REM u/20915278/VPASTE.OFF

REM after downloading.

REM Delete old #CLIP.TXT file first; 
REM otherwise vDos might be lagging 
REM behind and accidentally paste that 
REM one in instead:
Sub Main
           ACK: Key("{Enter}")
        End IfException

REM Run the VPASTE.EXE program, 
REM which produces #CLIP.TXT:


REM vDos sometimes lags behind a
REM bit, so keep trying to read in
REM #CLIP.TXT until vDos catches up:

TryAgain:    Key("^KR")
       QRY: Key("{Enter}")
            GoTo TryAgain
       End IfException
End Sub

Edge Padding

When using WordStar for DOS under Windows, I dislike the way the first character in each line of a WordStar document is pushed up against the inside of the window border (window frame) or monitor bezel.

Under TameDOS (discussed below), you can set an edge-padding value to give a little breathing room there, but if you use vDos, the first character in each line (assuming a left margin of zero) will, as I said, be crammed right up against the edge of the window.

The simplest solution, which may or may not work depending on your screen parameters, is to set FRAME = OFF and WINDOW = 100 in vDos's config.txt file. If you use a black document background in WordStar, playing around with your COLS and LINS values can give you the appearance of various amounts of blank space at all four edges of the WordStar window (such as in the screen capture at the very top of this page).

But if you're not using a black background for WordStar, or if you prefer a WINDOW value less than 100 and/or FRAME = ON, and if you have WordStar 5.0, WordStar 5.5, WordStar 6.0, or WordStar 7.0, what follows is a workaround that will give you a little breathing room, as you can see in the screen capture below (click image for larger view):

[Screen with breathing room]

The technique below will give you one full character-cell-width of blank space at the beginning of each line. To set this up you have to make a couple of small WSCHANGE tweaks and add a few dot commands at the top of your document.

(The alternative of setting a left margin greater than zero has a couple of negative consequences. First, it adds a 13-byte-long soft-tab character at the beginning of each line, and second, it changes the cursor-movement behavior at the beginning of lines.)

This trick makes WordStar think it's editing in snaking-column (newspaper-style column mode) even when it isn't, causing it to pad the left edge of the line with an invisible snaking-column indicator.

First, use WSCHANGE.COM to modify your copy of WordStar so that the snaking-column indicator is indeed invisible. Go to the menu that selects screen colors. In WordStar 5.0, WordStar 5.5, and WordStar 6.0, that's ACA. In WordStar 7.0, it's ABA.

In WordStar 5.0, WordStar 5.5, and WordStar 6.0, make sure the background color for the "Ruler line" is the same as the "Normal text" background color.

In WordStar 7.0, make sure the background color for "Ruler line, scroll bar" is the same as the "Normal text" background color.

Exit the menu with X then issue ^X to get to the WSCHANGE exit prompt. Answer "N" to the "Are you through making changes?" question.

Next, no matter which version you have, go to menu DBF ("Lines and Characters Menu #1"), and change option G ("Snaking column character") to a space.


Now, here's the trick: add these dot-commands to the beginning of any new file:

.if 1=0
.pl 0
.co 2 1"

Since WordStar assumes all .if expressions are true while editing, it will activate the .pl page-length and the .co snaking-column commands while editing, putting a snaking-column indicator — which, because of the modifications we just made with WSCHANGE, will appear as a blank space the same color as your normal WordStar background — at the left of each line. That will give you a little padding there, which looks much nicer.

At print-time, WordStar will actually evaluate the expression .if 1=0, find that it's false, and so ignore all dot commands until the .ei end-if command; it'll print your document at the normal page length and as a single column.

The downside of this technique is that you won't have an accurate page-number display in your status line; on the other hand, if you're a writer like me, and put a .pa hard page break at the end of each chapter in your manuscript file, then the page number in the status line will correspond to the chapter number, and the line number will give you a rough-and-ready sense of how long each chapter is (the standard rule-of-thumb is to count ten words for each 65-character line).

SmartKey, 4DOS, TameDOS, and ZTree


Although Borland's SuperKey was perhaps the best-known terminate-and-stay-resident (TSR; memory-resident) keyboard-macro program for DOS, SmartKey by Australia's FBN Software was more powerful, in part because it added a "supershift" key: a user-selectable key that could be used as a macro lead-in. If your supershift key was tilde (~), then in addition to redefining Ctrl-M and Alt-M as macros (the two special versions of M you could define with SuperKey), you could also define ~m, ~M, ~Ctrl-M, and ~Alt-M (four more versions, for a total of six).

But regular vDos, although letting normal macros run under SmartKey, does not support the supershift-key feature. It simply fails to recognize the user-defined supershift key as having any special function (and so, if that key is tilde, pressing it simply inserts a tilde).

However, to my delight, I find that vDosXy3, a special fork of the vDos project, created to support the DOS word- processing program XyWrite 3, supports the supershift key just fine.

(In config.txt, you can have the "special keyboard handling necessary for XyW3," option KBXY3, either "ON" or "OFF" — supershifting will work either way.)

vDosXy3 also shows short filenames for files that have long filenames (showing REPORT~1.WS for a file with the long name Report on Conference.ws), rather than suppressing any display at all of such files, as regular vDos does. vDos-lfn (described earlier) has fuller long-filename support for those few DOS applications that can in fact deal with long filenames directly, but WordStar is not able to do that; for WordStar users, either vDosXy3 or vDos-lfn will give as much long-filename support as WordStar is capable of handling.

I've tested testing vDosXy3 with SmartKety 6.0g Advanced and found it very stable.

You can get vDosXy3 here, and find support for it in this discussion group.


Starting with vDos version 2015.10.01 (1 October 2015), vDos replaces its own earlier limited command processor with the much more robust one known as 4DOS. If you're using any version of vDos with this or a later date, you may skip to the next section; if you prefer earlier versions of vDos, read on:

Regardless of whether you use vDos or TameDOS (discussed next), I recommend 4DOS, a replacement command processor that adds a lot of wonderful command-line functionality. Formerly a commercial product from JPSoft, it's now free. Info is here, and the latest version ("4DOSs 8.0 binaries") is here.

Prior to version 2015.10.01, vDos's native command shell only supported these commands:

CALL, CD (and its synonym CHDIR), CHCP, CLS, COPY, DATE, DEL (and DELETE), DIR, ECHO, ERASE, EXIT, GOTO, IF, LH (and LOADHIGH), MD (and MKDIR), MEM, PATH, PAUSE, PROMPT, RD (and RMDIR), REM, REN (and RENAME), SET, SHIFT, TIME, TYPE, USE (a vDos-specific command), and VER.

Most are more limited than the real MS-DOS versions of the same commands. For instance, TIME will echo the time, but not set it. Jos Schaars didn't intend the vDos command prompt to be used for complex tasks.

But 4DOS works well under vDos, and allows for much more sophisticated operations at the command line and within batch files. A few 4DOS commands, notably those involving 4DOS's CLIP: pseudodevice, don't work under vDos, but most do; I have some sophisticated batch files running fine under the 4DOS/vDos combination that wouldn't work under just vDos.

I invoke 4DOS under vDos with a line like this at the end of vDos's autoexec.txt:

c:\4dos\4dos.com c:\4dos c:\4dos\bootup.bat

The first part is the command to load 4dos.com, the second specifies the 4DOS working directory, and the third loads bootup.bat, my batch file containing additional commands I want to execute upon loading 4DOS, including putting TSR programs into memory, loading an alias definition file, setting the path, and so on.

And then follow that line in autoexec.txt with one final line that merely says "exit" so that when you exit 4DOS, vDos will terminate, too:



If you use an older version of Windows (the 32-bit but not 64-bit versions of Windows 7, Vista, 2003 server, XP, 2000, Citrix, or NT), you might consider TameDOS rather than vDos: it provides many more enhancements, and, since it works on top of Windows's own buried MS-DOS, rather than trying to emulate DOS in Windows, application programs run much faster under TameDOS than they do under vDos. Unfortunately, TameDOS has seen no new releases or support since July 2013, but it's still available for US$20, and I do recommend it; it's what I use myself daily to run WordStar under the 32-bit versions of Windows XP and Windows 7: TameDOS.com.

Ztree Win

Finally, if you don't just fondly remember WordStar for DOS but also the great DOS-era file manager Xtree, then I highly recommend ZtreeWin, which is so much more powerful and easier to use than Windows Explorer: ZtreeWin.

More Information

There's a discussion thread about WordStar and vDos over at vDos's home on SourceForge.

Using WordStar under vDos is also discussed in various threads in the Yahoo! Groups WordStar Discussion Group.

And Bruce Hartford has put together detailed beginner-friendly instructions on using WordStar 6.0 (his favorite version) under vDos and Windows 7. Get his PDF here.

Edward Mendelson has tons of information on using WordPerfect, his preferred word-processing program, under vDos. See his page devoted to that for more tips and tricks, and some excellent explanations related to vDos.

For more information about WordStar, see:

And for an explanation of why one might not want to use market-leading Microsoft Word, see the essay Why Microsoft Word Must Die by my colleague Charles Stross.


Many thanks again to Jos Schaars for creating vDos, to Gary Sandhu for first introducing me to vDos, and to WordPerfect for DOS maven Edward Mendelson for tips and tricks, and, of course, to Rob Barnaby, Seymour Rubenstein, Peter Mierau, Joe Masters, and all the other people at MicroPro/WordStar who created the best word-processing program the world has ever known.

Robert J. Sawyer, a former sysop of CompuServe's WordStar Forum, won the Science Fiction and Fantasy Writers of America's Nebula Award for Best Novel of 1995 and the World Science Fiction Society's Hugo Award for Best Novel of 2003. The ABC TV series FlashForward was based on his novel of the same name. He writes all of his books in WordStar for DOS.

Introduction | vDos Installation | vDos Settings | Printing | vDos Quirks | Fonts | Screen Setttings | WordStar Patches | On-Screen Underlining and Strikeout | Advanced Page Preview and Inset | Windows Clipboard Support | Edge Padding | 4DOS TameDOS, and ZTree Win | More Information | Acknowledgments

More Good Reading

WordStar: A Writer's Word Processor

Rob's system for getting WordStar 7.0 to preview pages at high resolution with any graphics card

Rob's sixth "On Writing" column, outlining tricks you can do with your word processor — whatever it may be — to help you with your writing.

Want to receive Rob’s very occasional email newsletter?

About Rob
Book Clubs
Press Kit
How to Write
Email Rob
Canadian SF



Copyright © 1995-2020 by Robert J. Sawyer.