My Windows 3.1x tuning page

(based on the German page from May 10, 2000;
last update: 2002-04-02)

Since Windows 95 conquered the OS market (and was followed by Windows 98, of which there already is a second edition), one doesn't hear about Windows 3.1x too often. However, many computers (mostly without access to the 'net, which explains the low number of Win 3.1x users on the 'net) still run with this very GUI on top of MS-DOS, PC-DOS or DR-DOS. With relatively modern hardware and mostly software such a system can get new life.

But before we deal with this, there's still a question left:
Why is the thing called "Windows 3.1x" here?
Answer: There were no less than five different version of Windows 3.1:

Something else: There are supposed to be people who get an older computer with DOS 6.x and Windows 3.1x on it and try to iron Windows 95 or even 98 over it. This is not a good idea at all, unless your motto is "May the hourglass be with you!".  (The only exception would be a really well equipped DX/4 or Pentium system with 24 MB or better 32 MB of RAM, a hard disk of at least 1 or 2 GB, and quite a good VL or PCI graphics card.)
Another side note: The combination of DOS and WfW 3.11 seems to be quite popular as a second system with Linux people - no wonder, as DOS doesn't need many resources, and with WfW 3.11 it's not much different, and there's still lots of software.

Counter: This page has been visited *)
 hmm ... quite a few times.
  Resource-saving NUL counter sponsored by \dev\nul
with friendly support of \dev\humor! :)
Calmira iWarp Program
[ Join Now | Ring Hub | Random | << Prev | Next >> ]

A note on the ToC for the fast readers:
If there is a red arrow "<=" next to a chapter auf, that means:
a) There you can get really important programs or
b) One should know these basic things or
c) That helps general enlightenment or
d) That's important in some other way (doesn't that tell you everything? <g>).

And that's what it's all about (a.k.a. "contents")

  0.1 Why "3.1x"? <=
  0.2 What one shouldn't do if one has bought a used computer
  0.3 Side note: Linux and DOS/WfW

1. Software
  1.1 Correcting errors
    1.1.1 Getting File Manager ready for Y2K <=
    1.1.2 Replacing the calculator <=
    1.1.3 The Euro (€) currency <=
    1.1.4 Other updates <=
    1.1.5 Fighting crashes Danger: Lack of resources <= The right STACKS setting <= More stability/speed by system.ini tweaks Catching crashes <= Strange crashes? Maybe that helps!
    1.1.6 About the message "Not enough memory" <=
    1.1.7 Oops, my TrueType fonts have disappeared! <=
  1.2 Hard disk tuning
    1.2.1 32 bit disk access (32BDA) <=
    1.2.2 32 bit file access (32BFA) <=
    1.2.3 If neither of them works
    1.2.4 Faster hard disk and CD-ROM access by tweaks of the BIOS settings
  1.3 Extending the system's capabilities
    1.3.1 Installing Win32s <=
    1.3.2 Installing WinG <=
  1.4 Multimedia in general
    1.4.1 Get a new graphics card driver! <= Installed the wrong one and Windows won't start? Here's how to correct it <=
    1.4.2 Installing Video for Windows <=
    1.4.3 No sound card? What about PC speaker sound then? <=
    1.4.4 Apple Quicktime: Needed now and then
    1.4.5 MPEG1 video? No problem!
  1.5 Polishing the UI
    1.5.1 A new shell program... <=
    1.5.2 Small but useful: Misc. <=
    1.5.3 Tips for Windows' look
  1.6 Internet
    1.6.1 COM ports and their little problems <=
    1.6.2 Accessing the 'net Access part 1: Hardware issues Access part 2: Software that is needed <=
    1.6.3 Browsers Current browsers #1: Microsoft Internet Explorer Intro Components Setup / download A comparison to Netscape Communicator Remarks concerning IE4/5 setup Current browsers #2: Netscape Communicator My historical background Components System requirements / download Usability From my experience: Qirks / bugs Tips for Communicator 4.0x The fast and small shareware browser: Opera Älteres System - älterer Browser! Warum heutige Browser so groß und langsam sind Heute noch brauchbare ältere Browser Die Problematik mit den verfallenen Zertifikaten Wichtig: Zeitzoneneinstellung für Mail/News <= Which one should I use now? - a little table <=
    1.6.4 Internetzubehör
    1.6.5 Servereinsatz WWW-Server FTP-Server
  1.7 Bildbearbeitung <=
    1.7.1 Die Tücken der Scanner
  1.8 Gestalterisches - 2D-Vektorgrafik & 3D-Szenen
    1.8.1 (2D-)Vektorgrafik
    1.8.2 3D-Grafik
  1.9 Videobearbeitung
  1.10 Haste Töne? - Soundanwendungen <=
    1.10.1 Klangbearbeitung
    1.10.2 Wie wär's mit einem MOD-Player?
    1.10.3 MP3-Player? Auch kein Problem...
  1.11 CDs brennen
    1.11.1 Audio-Grabbing & Co.
  1.12 Tools von allgemeinem Nutzen
    1.12.1 Editoren <=
  1.13 Programmierung
    1.13.1 Enwicklungsumgebungen Delphi 1.0 Visual Basic 3.0
    1.13.2 Skriptsprachen Tcl/Tk MS-DOS-Batches Batches für Windows - Batsh
  1.14 Das Jahr-2000-"Problem" (soweit es Win 3.1 und entspr. Hardware betrifft) <=
Rest of ToC left for translation when the next page is due

2. Hardware
  2.1 Neuere Grafikkarte
    2.1.1 PCI-Karten
    2.1.2 VLB-Karten
    2.1.3 ISA-Karten
    2.1.4 AGP-Karten
    2.1.5 Multimonitoring: Nicht bloß für Win98
  2.2 Monitor
    2.2.1 Wie bringt man ältere Festfrequenz-Monitore zum Laufen?
  2.3 Soundkarte
    2.3.1 Mögliche Probleme mit PCI-Soundkarten
    2.3.2 Mögliche Probleme mit ISA-PnP-Soundkarten
  2.4 CD-ROM-Laufwerk
    2.4.1 Parallelport-CD-ROMs
  2.5 Zweite Festplatte
  2.6 Mehr Arbeitsspeicher

3. Wo gibt's sonst noch nützliche Infos? <=

4. Neuigkeiten

1. Software

1.1 Correcting errors

1.1.1 Getting File Manager ready for Y2K

You should install the Y2K proof File Manager which is available from M$ ( This is done by downloading the file (you must be aware of the fact that there are two versions, one for Windows 3.1/3.11 and one for Windows for Workgroups 3.11). Then extract the file (it's a self-extracting EXE) and copy winfile.exe into your Windows directory. Since you can't do this with file manager itself, you must do this with DOS means:
Windows 3.1/3.11: copy <Download dir>\winfile.exe <Windows dir> <Return>
WfW 3.11: copy <Download dir>\winfile.exe <Windows dir> <Return>
for example: copy c:\download\winfile.exe c:\wfw311 <Return>
More details concerning Y2K problems can be found in 1.14.

<= Table of contents

1.1.2 Replacing the calculator

The normal Windows calculator doesn't always care about exactness too much. For example: 42,62-42,61=0.009999999991 or  0.01000000000001. You can download a fixed version here.

<= Table of contents

1.1.3 Getting Windows ready for the Euro currency (€)

I hope this Euro update also works with English language systems.

<= Table of contents

1.1.4 Other updates

Windows 3.1 / 3.11 only: Modem owners will need a replacement COMM driver called cybercom.drv.
WfW 3.11 (partially) only: Here you can find an update for rmm.d32, a newer version of vshare.386 can be found here (it also works on plain Win 3.1 BTW, so you can retire good old share.exe), there's a new version of serial.386 as well, and a newer vserver.386 can be downloaded too.

<= Table of contents

1.1.5 Fighting against those nasty crashes

Windows 3.1x doesn't have the reputation of being a very stable system, but it's more stable than its reputation suggests unless one does things it's not intended for at all (such as attempting to install Star Office 5.1 for Win9x ;).
If you are being plagued with many crashes anyway, it's time to find out about the reasons. Perhaps one of the next paragraphs can give you a hint about what's the matter. The old resource problem
Everyone who has been working with a Windows 3.1x version for some time certainly knows resource related problems. The system resources are small blocks of memory that are used to manage things such as display elements and brushes (GDI resources) or menus, dialogs and such (user resources). Unfortunately these heaps aren't very big - one block of 64 KB must suffice for the GDI resources, another two blocks for user resources. So it's no wonder that they can get scarce very fast if one doesn't pay attention, especially if one uses resource-intensive programs such as web browsers (in addition, both IE and Netscape are leaky... ). Running out of resources mostly results in a system crash, but also in "out of memory" messages. In Windows 95, much more memory is used for 16-bit resources.
How can one find out about the amount of free resources? In Program Manager, choose "About" from the "Help" menu. In Calmira, let the mouse cursor rest on the clock in the icon tray for a moment - in the appearing pop-up it shows the GDI and user resources separately. The Advanced Task Manager can display free resources as well. At last you can also use SAW for displaying the resources, but IMO it's a bit of overkill.
A few tips concerning the resources:
  1. Have a look at them now and then - that's easiest with Calmira.
  2. At Windows' startup one should have at least 70% free (it can be 80% or more on systems with less software than mine)
  3. If your system is lacking GDI resources, uninstall unused fonts.
  4. Leave those TrueColor video modes alone (24/32 bits) - the GDI resources fade quite fast. HiColor modes (15/16 bits) are sufficient in most cases.
  5. If there are only few user resources free, exit programs running in the background or reduce Calmira's start menu size (mine is way too big, hence I've only got 60% user free at startup).

  6. Leave "resource eaters" (program that don't release all resources) running instead of opening and closing them all the time.
<= Table of contents Are your STACKS the right size?
Here the various Win 3.1x versions differ a bit: In normal Windows 3.1 / 3.11 mostly the setting STACKS=0,0 is sufficient in config.sys, even if the standard value is STACKS=9,256. Windows für Workgroups needs some more stacks; you should prefer STACKS=12,512 here.

<= Table of contents More stability/speed by system.ini tweaks
I hope you do know Sysedit? If you don't bring up a run dialog and type "sysedit". This little program will allow you to edit the config files, including win.ini and system.ini.

One can tweak the system by modifying a few eintries system.ini (italic: speed, normal: stabiliy):

First the [386Enh] section:
DMABufferSize=64 ; size of the DMA buffer in KB, should be at least 64 KB, on my system it's even 150 KB
FileSysChange=Off ; Changes in the file system are reported to programs which understand it (File Manager). Off is faster.
MaxBPs=768 ; defines the number of breakpoints, default: 200
WindowUpdateTime=5 ; interval (in ms), in which the content of DOS windows is redrawn, default: 50
ForceLazyOff=<drive letter(s)> ; appears later in the 32 bit file access section

Now some DOS tuning in the same section:
LocalLoadHigh=Off ; Do you really need UMBs in the DOS box, or would you prefer more low memory instead? Then disable this option (already the case here).
MinTimeslice=1 ; This can also be set in Control Panel >> 386 Enhanced, the default value is 20 ms (for a 386SX-16), on faster computers you can try lower values; as my PIII is considerably faster than a 386, I've set it to 1 ms.

And now some DOS box tweaking in [NonWindowsApp]:
CommandEnvSize=1536 ; Sets the size of the environment of; nice for batch freaks with huge variables
ScreenLines=50 ; Sets the default number of lines a DOS box will display; values are 25, 43 or 50, I wouldn't recommend using 43, however, as some programs don't like this mode; 50 is great for large display resolutions/monitors - finally that mem/c output fits on one page :) Catching crashes
I've found a program which is able to intercept the most frequently encountered program crashes: Voilà! I've found it here, BTW.

<= Table of contents A little refresh for Windows
If formerly peaceful apps suddenly start acting strangely, then chances are that one of the system files  win386.exe, krnl386.exe (or dosx.exe and krnl286.exe in standard mode, respectively), user.exe or gdi.exe is damaged, which can happen now and then (though normally it shouldn't too often). It's totally sufficient to decompress the files mentioned above (except for gdi.exe if the Euro update is installed) from the original disks (and DO MAKE BACKUPS OF THOSE DISKS!) - in plain DOS, of course:
expand <source file> <destination file>
Unfortunately wildcards (joker characters such as * or ?) can't be used. For many file with the same extension I've written the following batch file, which decompresses all file with the extension <first parameter> into a subdirectory called expand.fil, where they get the extension <2nd parameter>:
@echo off
if "%1"=="" goto info
if "%2"=="" goto info
md expand.fil
for %%p in ( *.%1 ) do expand %%p expand.fil\%%p
ren expand.fil\*.%1 *.%2
echo Expanded files can be found in .\expand.fil\*.%2.
goto ende
echo Usage: exp.bat ext1 ext2,
echo          where ext1 is the extension of the compressed files
echo                ext2 is the extension of the decompressed files
For example exp.bat sy_ sys results in all files with the extension  .sy_ being expanded into the subdirectory .\expand.fil, where they get the extension .sys.

If the Euro update is installed, one shouldn't simply overwrite the gdi.exe file, but uninstall the update first, then overwrite gdi.exe, and then reinstall the update.
If the problems still appear when all of the file mentioned above has been replaced, there must be some other reason.

<= Table of contents

1.1.6 "Not enough memory" - Really?

I wouldn't be so sure there, as this message appears in three cases:
a) If there is not enough space in the resource heaps (see
b) If the amount of RAM really is too small
c) If there isn't enough memory below 1 MB available.
The background to c) is the following: Windows uses memory below 1 MB for compatibility reasons, to communicate with devices with real mode drivers (hard disk without FastDisk driver, CD-ROM, floppy drive... - quite a lot, as you see), for example. In addition, a bit of conventional memory is needed every time a program is started, and parts of programs and DLLs are loaded off there as well. If the programmers were so careless not to keep to Microsoft's recommendation not to do the latter in a too large extent, low memory may get scarce quite fast. Unfortunately this is quite often the case, so one has to use a program such as Fix1MB, which keeps low memory from bring gobbled up by applications.
If you're wondering now how this can be if you have more than 500 KB free in a DOS box, let me tell you that a DOS box is essentially a copy of the system state when Windows was started. Windows uses lots of conventional memory for itself after having "memorized" the system state, however, one doesn't normally notice that unless it gets scarce (which was where we started from). If one opens a DOS box, Windows creates a second VM (virtual machine, virtual 8086) and there it creates an exact copy of the system state it saved earlier. But as Windows components are already in memory when this system state is saved, there is always less conventional memory available in a DOS box, compared to DOS before Windows has been started.
BTW: If you've become curious by the VM stuff, you should read some good books on the operation modes of Intel microprocessors (µPs) from the 80386 upwards (hints: Real mode, protected mode and virtual mode or V86 mode). Interestingly 32 bit hardware isn't as new as everyone thinks, but already 14 years old (1986: presentation of the first 386 PC by Compaq, the 386 processor had existed since 1985).
There is a system.drv replacement which - according to the readme file which has now been replaced by me - is supposed to reduce resources eating, however the conventional memory is meant. Download it here, unzip it, copy it into the Windows\SYSTEM directory, and in system.ini replace the line system.drv=system.drv with system.drv=syshook.drv. (System.drv is loaded anyway.) Then add the following line to system.ini's [386Enh] section:
Syshook.drv isn't as rigid as Fix1MB (no problems with MOD4WIN any longer), but sufficient in most cases anyway, so I'm using it instead of Fix1MB now.

<= Table of contents

1.1.7 Help, my TrueType fonts are gone!

Sometimes all the Truetype fonts disappear in all applications, which forces the user to use ugly bitmap fonts. That's no reason for panicking, instead you should check the following things if this happens:

<= Table of contents

1.2 Hard disk tuning (see 1.4 as well)

There are two ways of turning your hard disk into a rocket:

1.2.1 32 bit disk access (32BDA)

This is the somewhat older (available since Windows 3.1) and more hardware dependent version, also called FastDisk (which is better than "32 bit...", as a lot of things are 32 bit today). The gain in speed results from Windows being able to access the hard disk directly, without having to switch the system to real mode all the time, as it would be necessary when using BIOS calls. The problem of FastDisk is that the driver that comes with Windows (*wdctrl) only supports IDE hard drives that are compatible with the Western Digital WD1003 controller, that you'll have to download a FastDisk driver for larger hard drives (but they only work up to 8 GB either) or ESDI or SCSI drives and that the performance gain doesn't seem to be very large in most cases - in fact, it can disturb serial communications. In addition, 32BDA doesn't like software like Ontrack Disk Manager. As you can see, this is a (not only) somewhat difficult issue. So mostly "simply enabling 32 bit disk access in control panel 386 enhanced virtual memory" won't work, although it worked just fine on my old (first) computer's 52 MB (!!!) hard disk.

<= Table of contents

1.2.2 32 bit file access (32BFA)

The so-called 32 bit file access, which is included only in Windows for Workgroups 3.11 (and above), is an addition to the 32 bit file access mentioned above, but doesn't necessarily need a Fastdisk driver, as for the case that there isn't any, Windows comes with a "replacement driver", the so-called "real mode mapper", which enables using 32BFA on ESDI, SCSI and compressed drives.
32BFA works with the file system VFAT (virtualized FAT), which contains a very efficient cache (VCache) and a virtual file sharing driver (VShare) and which was the first installable file system in Windows (in Windows 95 the CDFS was added, for example).
Now the advantages and disadvantages at a glance:


Disadvantages: You can download an update for the file "rmm.d32", which is an essential component of the Real Mode Mapper (as the name suggests) here. BTW: You can enable 32BFA in Control Panel >> 386 Enhanced >> Virtual Memory >> Change >> "Use 32 bit file access". I had set the "Cache" size to 4 MB and later 3 MB when I had 24 MB of RAM; now it's 30 MB :) (from some size on, a larger cache slows down the system - namely if the contents of a huge write cache are being written to disk, which I noticed with 40 MB). There is a 32BFA FAQ as well.
Interestingly one can disable the write-behind cache for single drives, namely in system.ini, [386enh] with ForceLazyOff=<drive letter(s)>, ForceLazyOff=C, for example (this is also my setting, which avoids registry corruption). You can make VCache write the contents of the write-behind cache to the disk by pressing Ctrl-C or Ctrl-Pause at the DOS prompt.
The size of the file cache can be set either in Control Panel >> 386 Enhanced or directly in system.ini:

MinFileCache=20480 ; size in KB, here my 20 MB, 2048 would be more typical ;)

<= Table of contents

1.2.3 What if neither 32BFA nor 32BDA work?

I ran across such a problem after the first hard disk failed and had to be replaced with a new 8 GB one. After that WfW 3.11 hung on startup. When I commented out ifshlp.sys in config.sys, it worked again, but without 32 bit file access, of course. After I was able to use DOS 6.22 again (Update from 6.xx for English language versions), it started working again :).
What can one do about caching in such a case? One will have to use Smartdrive, which has both advantages and disadvantages:



<= Table of contents

1.2.4 Tweaking the BIOS settings

Normally one would think that all important BIOS related parameters can be set in the BIOS setup. Well, one can - but many others can't be changed. Now that wouldn't be bad, but some of them can influence the computer's speed...
Auxiliary programs allow fiddling with the BIOS settings, such as TweakBIOS 1.53, which supports most current mo/bo chipsets. With this program I was able to increase the data transfer rate of my first hard disk, a Seagate ST38420A, from 5,5 MB/s to 10 MB/s (on my old mo/bo with a crappy VIA chipset w/a 586B south bridge). But be careful: You should have an idea of what you're doing!!! Changing disk related BIOS settings shouldn't be noticeable when 32BDA is used - it's intended for bypassing those BIOS toutines, since they never were the fastests ones and one could save a few CPU mode switches (Protected Mode <-> Real Mode) as well.
CD-ROM drives don't always reach full speed as well - my DVD drive only reaches 3.5 MB/s with many drivers, whereas it can reach 5 MB/s with CDs and 6 MB/s with DVDs with the driver usdide.sys from US Drives. If the computer supports busmaster DMA modes, the driver cdrom.syd from (LiteOn?) is even faster (/DMA option).
BTW: I've done my benchmarks with the shareware program Dr. Hardware, the Windows version of which used to be a 16-bit program.

<= Table of contents

1.3 Extending the system's capabilities

1.3.1 Installing Win32s

Wow... finally some text I needn't translate :), as I already have it on my "Win32s compatibility list".

Win32s is an extension for 16-bit Windows (3.1x) that allows the execution of 32-bit programs originally written for 32-bit Windows versions, such as NT 3.x, 4.0 and Win 9x. But please do not assume that every 32-bit program will actually run on Win32s: originally it was only designed for compatibility with NT 3.x, and only a subset of the Win32 API is supported (that's why it's called Win32s)! 16 and 32 bit apps can exchange data over the clipboard and use OLE functions (which means that you can put an image that has been created in Paint Shop Pro 3.12 32-bit into your Winword 6.0 document and edit the image in PSP when necessary; this only works if PSP is registered as an OLE server though).
Win32s 1.30c can be downloaded here:
It's about 2.5 MB in size and comes with a 32 bit Help program, which is very useful, as it is a functional equivalent of the Help program of Windows 95; it can even read Win95 help files. Also included is a little game called Freecell, mainly for test purposes. And last but not least, the latest OLE files (v2.03) come with Win32s as well - OLE functionality must come from somewhere ;).

Much more info and a few rare Win32s compatible DLLs as well as other related stuff can be found on my "Win32s compatibility list" mentioned above.

<= Table of contents

1.3.2 Installing WinG

WinG is an API used for speeding up the graphical output of programs that use the WinG DLLs (mostly concerns videos on systems without video accelaration [DCI interface], but Paint Shop Pro 3.12-32 uses it as well, for example). It has never been very widespread, but interestingly its DIB engine is an earlier version of the one in Windows 95.

<= Table of contents

1.4 Multimedia in general

1.4.1 Never a bad idea: Get a new graphics card driver!

On various occasions I've come across computers that ran with the standard VGA driver although they had more modern cards capable of much higher resolutions, color depths and refresh rates, so many possibilities were simply wasted. In addition, the standard drivers are about the slowest ones one can think of.
New(er) graphics card drivers can be found at the web site of the card's manufacturer or at least the manufacturer of the chipset used. If a card supports video acceleration via the DCI interface, the driver should support it as well. A DOS program for setting the refresh rates is a nice thing as well, especially when chipset drivers are used, which quite often don't offer any possibility to change the standard refresh rate in Windows to something somewhat more healthy for your eyes - 72 Hz should be just fine on a 14" screen, but on a 19" one, only 85 Hz delivers a clear picture that doesn't flicker (I have one in front of me right now, so I know what I'm writing of). For S3 based cards, the utility S3Refresh can be used. A few new cards have a VESA 3.0 BIOS, which provides refresh rate setting possibilities as well (see for utilities).
When looking for drivers you'll also have to take account the fact that a manufacturer may have been taken over (such as SPEA by Diamond). As a last resort, you can also use one of the popular search engines.

<= Table of contents Installed the wrong driver and now Windows won't start?
(Applicable for other similar problems as well.)
You've installed the wrong driver and now Windows won't start? Don't worry, you can get that ironed out in plain DOS. You only have to
  1. change into the Windows directory with the good old CD command
  2. and to start setup.exe (or winsetup.exe) from there, which will start the DOS stub of Windows Setup, which will enable you to change the configuration, including the graphics card driver.
With some problems you can also use one or more of Windows' start parameters. Let's have a look at the win /? output:
Starts Windows.
    (all versions except for WfW 3.11)
Starts Windows for Workgroups 3.11.
    (WfW 3.11)

WIN [/3] [/S] [/B] [/D:[F][S][V][X]]
    (all versions except for WfW 3.11)
WIN [/B] [/N] [/D:[C][F][S][V][X]]
    (WfW 3.11)

/3    Starts Windows in 386 enhanced mode.
/S    Starts Windows in standard mode.
      (both options are superfluous in WfW 3.11, /s is replaced with /d:t)
/B    Creates a file, BOOTLOG.TXT, that records system messages generated
      during system startup (boot).
/N    Causes Windows not to load network drivers.
      (WfW 3.11 only)
/D:   Used in combination with one or more of the following switches for
      troubleshooting when Windows does not start correctly.
   C  Turns off 32-bit file access.
      (Applies to WfW 3.11 only)
   F  Turns off 32-bit disk access.
      Equivalent to SYSTEM.INI file setting: 32BitDiskAccess=FALSE.
   S  Specifies that Windows should not use ROM address space between
      F000:0000 and 1 MB for a break point.
      Equivalent to SYSTEM.INI file setting: SystemROMBreakPoint=FALSE.
  (T  Starts WfW 3.11 in standard mode, COM and LPT drivers don't work then;
      this option is not displayed by default)
   V  Specifies that the ROM routine will handle interrupts from the hard
      disk controller.
      Equivalent to SYSTEM.INI file setting: VirtualHDIRQ=FALSE.
   X  Excludes all of the adapter area from the range of memory that Windows
      scans to find unused space.
      Equivalent to SYSTEM.INI file setting: EMMExclude=A000-FFFF.
:     Disables the Windows start logo (it starts a few microseconds faster);
      not included in win/? output
<= Table of contents

1.4.2 Installing Video for Windows

If you'd like to watch videos, you'll need Video for Windows 1.1e. This freeware add-on for Windows 3.1x comes with a Media Player replacement with the same functionality as the Media Player in Windows 95 (even Ctrl-F5 works :) and important audio and video codecs (except for MPEG ones - the computers back then couldn't handle such stuff).
My graphics card came with a special version of VfW 1.1e, which supports Offscreen surface video acceleration.
One could also download the Microsoft Media Player 5.2 beta, but a) it much too large with > 5 MB, and b) because of a) it doesn't fit into a diskette. In addition, the "Media Player 2" itself is only used for streaming audio and video, and the additional gain is limited to VfW 1.1e (otherwise the file would be some 1.4 MB smaller) and a few codecs (including one for MPEG1-layer-3 encoded WAV files and for MPEG4 video). Somewhat older MPEG codecs are also included with NetShow Player 2.0, however, it's also 2.51 MB in size (FTP search: nsplay16.exe). The MP3 codec only supports data rates up to 56 kbit/s and crashes the old MPlayer. All in all, it's not that useful that the download would pay off. The codec is also included in this file, along with a mmtask.tsk update.
A warning for Netscape users: NetShow Player 2.0 installs a newer version of the Voxware audio codec, which doesn't like the older one that comes with Netscape, resulting in a message "Not enough extended memory" at Windows startup. There are two possibilities of dealing with this:
  1. One coul comment out the Netscape entry device=rt32vox.vxd in system.ini, [386enh]. However it's added automatically when Netscape is reinstalled, which one tends to forget, and then you wonder why Windows doesn't run anymore (that has already happened to me as well, that's quite scary...).
  2. You can also comment out the entries of the new codec, in this case device=vdk32116.vxd and device=vdk3211w.vxd, which can be found in system.ini, [386enh] as we ll.

<= Table of contents

1.4.3 No soundcard, but you'd like to have sound anyway?

Unfortunately many older systems aren't equipped with a sound card, but only have the system speaker. There is a sound driver for the system speaker, but you can't use it for much more than system sounds, as most program except for Sound Recorder (Media Player, MOD4WIN...) need an asynchronous wave driver. That is because of the fact that there isn't any sound hardware, but the CPU emulates a DAC - and while it does that, it can't do anything else. You can download the driver here. The shareware utility SpkQQ (US$10, download) is supposed to be much better.

Here you can find information about sound cards. 

<= Table of contents

1.4.4 Apple Quicktime: Needed now and then

QuickTime comes from the Apple Macintosh computer and is used for playing films coming from the Mac world. It can be downloaded here (1.94 MB, that's the last 16 bit version 

<= Table of contents

1.4.5 MPEG1 video? Of course that works, too!

Provided you have a reasonably fast computer (let's say, a Pentium 90) you can play MPEG1 videos through a software decoder like Compcore SoftPEG or XingMPEG (the latter can be found on BTW). A graphics card with video acceleration helps here.
PCs with weaker CPUs aren't out of the run, however - they can be upgraded with MPEG1 decoder cards, like ELSA's ELSAmotion for the PCI bus (requires a graphics card with overlay support via DCI) or the classic Sigma Reel Magic for ISA (this card uses a loop-through cable just like the 3Dfx Voodoo 3D accelerators).
Concerning MPEG2, there is a software decoder (again, on, but unfortunately MPEG2 video "in the wild" mostly comes on DVDs with CSS (Content Scrambling System), and lots of processor power is needed, too. But you never know...

<= Table of contents

1.5 Polishing the UI

Well, the Progman/Winfile combo isn't most people's taste today, the dialog boxes look anything but modern, and the default color schemes aren't highlights either. Fortunately this can be changed :) ...

1.5.1 A new shell program... to be recommended, as good old Program Manager isn't the very best user interface in the world. A really great replacement is Calmira II (current version is 3.1 beta 2a), which has many Win95-ish elements - a taskbar of course, icon windows etc. - but is even more customizable than "real" Win95. The help file would need an update once, but I hope that it's going to come when 3.1 is released. Calmira II is freeware under the GNU Public License, which means that the source code (which, BTW, is in Delphi 1) can be changed and anyone who uses the changed program must also have the opportunity to modify it.  The web site is You should also visit the link page there - quite a few good Windows 3.1 and Calmira sites can be found there.
The "Workplace Shell for Windows" is something for OS/2 fans: It contains part of the functions of the WPS of OS/2 Warp 3. Very well done, but I wouldn't recommend it to someone without any knowledge of the "real" WPS - it would have been very difficult for me if I didn't have a book about Warp 3. 
<= Table of contents

1.5.2 Small but useful: Misc. stuff

There are various small programs that are simply "must-haves": If you need the full overview over the registry database, then this registry editor (obviously the 16 bit one from NT 3.51) is the right one for you if you start it with the parameter /V: Then you'll be able to see keys that are invisible to normal RegEdit, as it only shows the subkey .classes! For example I was easily able to add a key Corel DRAW 6.0 wanted to have this way. When this NT Regedit is started without any parameters, you'll mostly see an almost empty list, as it's one level higher than the rigistry info of most programs, as I mentioned above.

As I've already mentioned earlier, one also needs a program that keeps apps from using too much low memory. My favorite used to be Fix1MB, now I prefer syshook.drv.

Good old WinZip 6.3 SR-1 is a standard utility. It would be nice of Drag'n'Drop worked like in Win95 though...

If you've got Win32s and you often have to deal with images in all kinds of formats, I'd like to recommend you the freeware viewer/converter XNView in version 1.17a. This versatile program displays more than 100 partially exotic bitmap graphics formats. I've helped in fixing a resource leak that was present in 1.12 by beta-testing the program :).

If you've always wanted to work with long files names in Windows 3.1x, I'd recommend you the (now ex-) shareware program "Instant File Access". It works with file description files called descript.ion - they comes from 4DOS and Calmira is able to use them optionally - and allows the user to use them in almostall of his apps by plugging into the common dialogs. It automatically assigns descriptions, whereas in 4DOS and Calmira they have to be assigned separately. The format of the description files is following:

FILE1 FileDescription1
FILE2 FileDescription2
FOLDER1 FolderDescription1
FILE3 With spaces as well!
ALONGF~1.LON A long file name (Win95).long extension
(Obviously Instant File Access was at work with that file.)
EXAMPLE.6 Also with characters not normally allowed ( + ; / \ " | ) !
PLS_NOTE Example 6 doesn't work with IFA.

A simple but effective principle, isn't it?

Problems may appear when 8-bit characters (diphtongs, 'ß', accents...) appear in the description - those in descriptions created in Windows are displayed incorrectly in DOS and vice versa.

While we're at file names: It's not a problem to create short file and folder names with the (normally forbidden) spaces in MS-DOS 7 (plain DOS) (that's no problem with long file names, of course), for example like that:
ren test.txt "not bad.txt". Of course the programs don't like that very much, but interestingly they don't complain about spaces in directory names when the open dialog is used - drag'n'drop fails, however. Calmira gets along with spaces in folder names quite well - I can even enter a folder name with spaces without quotation marks in the "Open folder" dialog!
In older DOS versions generating file names with spaces isn't as easy; however, in MS-DOS 6.xx one can use MOVE for that: move spaces.txt "space s.txt". The other way round it works equally well. Such invalid file names can also be generated in Windows, curiously with the FTP client (!) WS-FTP LE. 
<= Table of contents

1.5.3 Tips for Windows' look and feel

Changing the system font and its size: win.ini, [windows], SystemFont=<*.fon>, SystemFontSize=<font size> (normal: 16, higher resolutions: 20 or - less recommendable due to partially distorted scrollbar buttons and such - 24). MS Sans Serif (sserife.fon up to 800x600, beyond that sseriff.fon) has the advantage that one can use the Euro (€) in folder names, for example. On my system I havIch z.B. habe 1024x768 eingestellt und benutze sseriff.fon in Größe 20.
BTW: You can also use your favorite font as the system font - simply by converting it with "SysFon".

Adjusting the icon spacing: win.ini, [Desktop], IconVerticalSpacing=<Abstand-V in pixels>, IconSpacing=<Abstand-H in pixels>

Setting the font, size, attributes and line wrapping of the icon titles: win.ini, [Desktop], IconTitleFaceName=<font> (MS Sans Serif, for example), IconTitleSize=<size in pt> (8, for example), IconTitleStyle=<binary> (0=normal, 1=bold), IconTitleWrap=<binary> (0=no wrapping, 1=wrapping on).
BTW: Minimized program groups are also regarded as icons.

Setting the font and font size of the status bar: win.ini, [Desktop], StatusBarFaceName=<font> (Arial, for example), StatusBarFaceHeight=<size in pt> (12, for example).

Not normally necessary (against people who like doing "funny" changes to your config): win.ini, [Desktop], GridGranularity=<number> ("Sets the size of the grid Windows uses to position windows on the screen." <number>=0...49, in units of 8 pixels; <number>=1 sets a 8x8 pixel grid, for example, <number>=0 switches the whole nonsense off). This setting is supposed to increase the speed of graphics modes with less than 8 bpp.

And if anyone needs a good color scheme:
What about this one, which can be used from HiColor on? It's based on the "Windows 95 standard" color scheme that comes with Calmira, but has brighter title bars and a (matching) highlight color, a black desktop background, differently bright window frames of active and inactive windows (interestingly I wasn't the first one with that idea - look at the Windows 3.0 color scheme) and the workspace color of Win 3.1x in a display mode with 256 or more colors.

The following thing belongs into control.ini, [color schemes] as one line:

Win 3.1 + Win95=0,F0FBFF,FFFFFF,0,C0C0C0,0,

The you'll only have to start the Control Panel module "Colors" and select "Win 3.1 + Win95" as the new color scheme and exit the module with a click on "OK".

Originally I was using the following color schemes, which is a bit different from the one above:

Stephan's color scheme (old)=0,808080,FFFFFF,

In display modes with only 256 colors my color schemes don't look too great because of the dithering.
The color scheme "Windows 95 standard" I mentioned earlier can also be used for 16 or 256 colors:

Windows 95 standard=808000,808080,FFFFFF,

For real nostalgics here's the color scheme of Windows 3.0, which surprisingly would normally need 256 colors:

Win 3.0 Standard=C0C0C0,E8FFFF,FFFFFF,

On the other side of the big pond the following color scheme can be admired on a computer:


The "Workplace Shell for Windows"  mentioned earlier comes with the following two schemes:


OS/2 Warp=808000,E8FFFF,FFFFFF,0,C0C0C0,

The following one has been created by me :).
Originally it should look like a color scheme I had seen on a Unix workstation, but I can't check that now, as I don't get to such computers very often, as you may imagine ;).

Stephan's experiment #3=400000,804000,

What about a new start logo for Windows? You don't have to stare at the same boring logo for years. A few months ago I've created my own logo, which has similarities to the standard logo, but also to the one of Windows NT (for Windows [normal or for Workgroups] 3.11, VGA and up, but without Calmira - see below for a special one for Calmira systems). Here it is (zipped). And how does one include it now? That's quite simple: Rename the file vgalogo.rle in the Windows\SYSTEM directory to and copy my logo there (its name is already vgalogo.rle). Then grab a DOS box, change into the Windows\SYSTEM directory and enter:
copy /b win.cnf+vgalogo.lgo+vgalogo.rle ..\
The question should be answered with Yes.
On the next Windows startup you should be able to admire my logo..
I like the version "Powered by Calmira" for Calmira users even better, which replaces vgalogo.rle as well. 
<= Table of contents

=> To the next page...<=

*) Almost every page today has one of those unnerving counters. Enough reason to express my opinion of the "counter-mania" ;)...

Copyright of this page (C) 1999, 2000 by Stephan Großklaß

Diese Seiten, betitelt "Getting Windows 3.1x ready for the present and (near) future 1/3", "Getting Windows 3.1x ready for the present and (near) future 2/3" und "Getting Windows 3.1x ready for the present and (near) future 3/3", dürfen nur in unveränderter Form weitergegeben werden, dies schließt w31mm_en.htm, w31mm_e1.htm, w31mm_e2.htm und ggf. das Hintergrundbild verl4.jpg ein. Bei Übernahme von Seiteninhalten in kostenpflichtige Angebote erbitte ich eine vorherige Benachrichtigung, bei nicht kostenpflichtigen Angeboten einen Kommentar zur Seite. Insbesondere sollte bei derartiger Übernahme ein Verweis auf den Ursprung erfolgen (möglichst mit URL). Frei weitergegeben werden dürfen Informationen, die im Netz anderweitig frei verfügbar sind (dann allerdings ohne Zitat); kurze Zitate aus dieser Seite (z.B. in Nachrichten in Newsgroups) sind ebenfalls erlaubt. .                                                                                                                .