Win 98SE, 768Mb & MSTS
The situation arose where MSTS would get to the "Loading..." stage and then webTrainSim was greeted with a blank screen. The only choice remaining was a re-boot. Then it was off to NVIDIA's site to download and install the latest drivers (V30.82) - still the same situation.
The above scenario didn't just occur "out of the blue". As with all diagnosis of computer problems, we need to back-track to what changes had been made to the system. The last changes involved fitting a new video card (upgrading a meagre TNT M64 32Kb to a NVIDIA Geforce 2 MX400) and installing the drivers for a new 17" monitor, putting in another 256Mb of RAM to give a total of 768Mb, fitting a CD-RW drive and a second hard drive.
One fact that webTrainSim had read somewhere in a Q&A section of a computer magazine related to the fact that Win 9x couldn't cope with more than 512Mb. So that piece of information was in the back of webTrainSim's memory. To see what his Win 98SE thought of having 768Mb of RAM to play with, webTrainSim went to Start/Programs/MS-DOS Prompt to be greeted with the message, There is insufficient memory to run this application... This error message was what webTrainSim half-expected to see and set him off to find the exact solution. The fault, at this stage anyway, was not the NVIDIA video drivers nor had MSTS decided to take a holiday.
When Win 9x was coded, there was no thought of PCs ever having 512Mb or more of RAM, and consequently, users who fitted more than 512Mb soon came face-to-face with this limitation.
Fortunately, there is a solution. Microsoft's first response was to ask users to remove any RAM above 512Mb. Oh, yeah, who wants to remove memory sticks when it's so cheap!
A more realistic solution came from the Windows gurus who noted that the problem lay with Windows' use of a particular section of its memory management, namely its Virtual Cache. Basically the problem is that Windows runs out of memory address space but by telling Windows to lower the amount of memory it puts aside for its Virtual Cache, especially if there's an AGP video card, Windows can be coaxed into behaving.
Let's see how to fix the problem. Note to Windows users from the days of versions 2 and 3: please don't get all tearie and nostalgic...
We'll use a free Windows tool, Sysedit, to edit the System.Ini file which is stored in the Windows folder by default. If you want, you could use your favourite text editor, e.g. Notepad, to carry out the following changes.
Start Sysedit by going to Start/Program/Run.., type Sysedit into the "Open" box and click on "OK". All the Windows 2 & 3 legacy system files are now available. Choose System.ini. Scroll thruough this file until you see this heading:
There may be a parameter entered already under this heading but probably not. Hit Enter to open a new line and enter:
This line tells Windows to limit the size of its VCache Memory allocation to 450Mb (the default is 800Mb but with an AGP video card installed, Windows runs out of memory allocation space). webTrainSim tried MaxFileCache=524288 (512Mb) but that didn't allow Windows enough space to start MSTS.
Click File/Save and close Sysedit. Re-start Windows and now you'll be able to enjoy MSTS to its fullest.
For reference purposes, visit the Windows Support Centre's page on Memory Management (the source of the fix above). As well, visit the Microsoft Support Centre and search on out of memory for further reading.