Vdos FAQs
Vdos FAQs
Vdos FAQs
Install vDos
When you run the downloaded vDosSetup installation program, it will offer to create a vDos folder on your C: drive.
You can select another location, but C:\vDos is a good starting point for a first-time impression and testing.
vDosSetup doesn’t modify anything to your Windows system internals. It only creates that vDos folder and a shortcut
on the desktop. There’s even no uninstall option. If vDos doesn't work for you, you'll have to delete those items by
hand!
The vDos folder will contain these files:
autoexec.txt
The equivalent of DOS autoexec.bat.
config.txt
DOS had config.sys, Windows config.nt, vDos config.txt. Like autoexec.txt, the .txt extension is for easy editing,
without Windows trying to ‘execute’ something.
FAQs.pdf
This document.
Getting Started.pdf
An introduction to vDos, please read this.
Printing.pdf
Documentation on vDos printing capabilities. To be read once you come to printing from your DOS application(s).
vDos.exe
The Windows program emulating a DOS PC to run your application(s).
And one subfolder:
DPTEST
The DOS DataPerfect TestDrive demo program, started by the initial autoexec.txt file. Once you ran it to confirm
vDos will work on your Windows system, you can delete this folder.
Start vDos by the desktop shortcut or vDos.exe.
The vDos window should appear, autoexec.txt awaiting a keystroke to start the demo program.
Miscellaneous
FILES= and other directives, once in config.sys
BUFFERS=nn
This was a kind of basic local disk caching, but has no meaning anymore. vDos isn't the operating system (DOS
once was) controlling the drive, any caching would be a disaster for your data on the drive, waiting to happen.
DOS=HIGH,UMB
DOS in vDos is simulated outside the virtual PC. It is no longer some 16-bit code executed by the (emulated) CPU.
So this directive is also meaningless in vDos; there is no DOS code in the virtual PC/memory.
DEVICE=whatever
vDos doesn't need device drivers. For instance ansi.sys is built-in.
FILES=nn
The number of global DOS file handles in vDos is 255. The maximum, since DOS file handle numbers are bytes.
STACKS=nn,nn
Simulated DOS in vDos has no use for this directive.
No LFN support
DOS was originally restricted to 8.3 filenames; 1-8 characters for the name, 1-3 characters for an optional extension.
Windows came along with “Long File Names” (LFN), supporting up to 255 characters. Microsoft also came up with a
scheme so DOS programs could access those LFN files: “Short File Names” (SFN).
vDos doesn't support LFN: Those are optionally used by only a few (mainly utility) DOS programs. A Zip/Unzip
program version, ditto file manager and other obscure examples, just silly to be started in vDos. You have genuine
Windows program for that! A list of LFN aware DOS programs.
It’s not vDos (nor Windows) to blame you don't get what you hoped for. If you really want a full screen image, you'll
have to connect a 16:10 or old-fashion 4:3 sized monitor to your new Windows PC.
Btrieve/Pervasive
Btrieve is a database manager TSR (plugin) for DOS programs. Popular for its rock-solid reliability, easy integration
and speed. Btrieve users will know: It comes client (Peer-to-peer) and server based. The latter largely reduces
network traffic and so speeds up database operations, but needs a different workstation side interface. DOS
programs normally can’t use the Windows version (w3btrv7.dll) of that interface. vDos however provides for a layer
that transparently translates Btrieve calls. Mind, if used, this extension doubles the vDos registration fee.
Printing
DOS/vDos printing
Printing by a DOS application differs completely from Windows printing. vDos should by default mostly determine
correctly how to handle that. So just start with what that will bring.
One major exception will be if you print to an actual old-style DOS printer. vDos supports that also, but you might
consider to switch to Windows printing. So you can use any printer supported by Windows (for instance also PDF).
Keep in mind, the DOS LPT/COM port/device in vDos isn’t that of Windows. With that you were only able to print to
actual DOS printers. Even if you convinced Windows to print to an USB or network printer instead.
Troubleshooting
The printing capabilities/options of vDos are covered by the Printing.pdf document in the vDos folder. If printing
doesn't work as expected: Read that document. Many questions in the past just came from not reading (anything).
vDos creates two files before the actual printing process starts: #LPTx/#COMx.asc (x being the port number), and a
.txt version of that. Those however have no value for vDos itself whatsoever. The .txt version is mostly a means to
export (large amounts of) data, to be imported by a Windows program (the DOS ASCII text is translated to Windows
Unicode). The .asc version contains the data stream as send by your program to the printer. It is generated to
facilitate an eventual third-party DOS-to-Windows print processor, and for debugging purposes.
If you have an issue with printing: Submit a copy of the generated .asc file, so the problem can be reproduced and
investigated (that’s the debugging part).
Advanced
Windows environment variables in vDos
If you want to use a Windows environment variable (for example, %systemroot% or %homedrive%) in your DOS
program, you must first explicitly declare it. In autoexec.txt, another batch file, or at the command line. The Windows
variable must be surrounded by two percent signs on each side:
set vdosvar=%%windowsvar%%
For example, before you can use Windows %systemroot% in your DOS program, you must first declare it:
set systemroot=%%systemroot%%
At startup, one Windows variable is already set to a DOS variable:
WIN_VDOS: The VDOS variable if set in Windows (%VDOS%), the command line parameters of vDos.exe, or “” if
both are missing.