Getting MS-DOS games to run on Windows 95: Too much memory!

Raymond Chen

Raymond

Piggybacking on Roger Lipscombe’s story of the MS-DOS extender that didn’t work if you have 64MB of RAM:

There was a popular MS-DOS game from 1994 that didn’t run in Windows 95. After some investigation, the conclusion was that the game didn’t work if your computer had more than 16MB of memory (physical, if running under MS-DOS; virtual, if running under Windows). The 16MB limit comes into play because the game was written for the 80286 processor, and that processor supports a maximum of 16MB of RAM. I guess that when the game found more than 16MB of memory, it didn’t know what to do with the extra memory; maybe it overflowed a buffer, or a calculation overflowed. Whatever. Doesn’t matter.

We fixed the problem by creating a custom configuration for that game that said, “Never give this program more than 16MB of memory.”

This case was interesting because the custom configuration means that the program runs better under Windows 95 than it does under raw MS-DOS: Under raw MS-DOS, it would have crashed!

Raymond Chen
Raymond Chen

Follow Raymond