How can I run old Windows games in Windows 10?
December 22, 2019 2:28 PM   Subscribe

Besides keeping old computers around (which we do), what's the best way to run old Windows games on Windows 10? Virtualbox seems like a half-decent option (VB forum), but is there something more reliable than this? This is for games that we own that are too new for Dosbox but too old to run well (if at all) in Windows 10 compatibility mode.

For example, we have old Kings Quest games, Carmen Sandiego, You Don't Know Jack, and updated text-based games that were re-designed to run in Windows 9x.

I've also found this PC Gamer article that mentions disabling driver signature enforcement if it's older drivers that are preventing your game from installing and/or running, but it's listed as a risky method to get old games to work on new systems. Does anyone have experience with this route? Thanks!
posted by filthy light thief to Computers & Internet (8 answers total) 11 users marked this as a favorite
Response by poster: Final note -- I also realize that a lot of these older games have been updated by/on GOG, but it's more about making the old games we already own work on our new systems.
posted by filthy light thief at 2:29 PM on December 22, 2019

I don't see how disabling driver signature enforcement would be relevant to running old games.

That's relevant to plugging in old hardware for which there are only old, unsigned drivers available. E.g. I have done this to use some specialised scientific hardware from 10+ years ago, when stuck with out of date software including hardware drivers originally targeted for Windows XP.

A virtual machine (via VirtualBox, VMWare or whatever else) is almost certainly the most reliable solution for games that fall into the gap between DOSBox and Windows' own compatibility modes. Indeed, I'm not sure what else you could even try in that case, apart from insane things like running Wine on Windows to use it as a compatibility layer.
posted by automatronic at 5:05 PM on December 22, 2019

Best answer: Windows 98SE can be made to run very nicely inside VirtualBox (see also), and I have successfully used this combination to drag a few more decades of life out of otherwise perfectly adequate Windows 95 era CNC machine controller software that absolutely refused to work on any Windows version with an NT kernel.

Using a VM host and an entire guest operating system as a compatibility shim does feel a little steamhammer vs. nut, but 128MiB system RAM and 32MiB of graphics RAM was a large amount in the late 90s; attempting to use more than that will not help any software of that era work better, merely expose Windows bugs that would typically never have been hit back then. A VirtualBox VM configured that way will still use way less RAM than any modern game, and has the nice property that you can run a game wrapped that way on any host OS that supports VirtualBox - Windows, Mac, Linux all work fine.

VirtualBox performance should be perfectly adequate for any nineties or early oughties game provided that you run it in a 64 bit host environment and that your host CPU supports hardware virtualization. If you force VB to do software virtualization, things might get a little laggy.
posted by flabdablet at 6:21 PM on December 22, 2019 [6 favorites]

VM snapshotting works better than a fair bit of inbuilt save-game functionality, too.
posted by flabdablet at 6:27 PM on December 22, 2019 [1 favorite]

The worst effect of there being no VirtualBox guest additions available for Windows 98 is that file sharing between guest and host is a little clumsy. Putting the virtual network adapter in bridge mode and using standard Windows file sharing over that works, though.

USB2 passthrough also works OK with this generic USB mass storage driver.
posted by flabdablet at 7:32 PM on December 22, 2019 [2 favorites]

Putting the virtual network adapter in bridge mode and using standard Windows file sharing over that works, though.

Note that in newer versions of Windows 10 SMB1 support is disabled by default, so you might need to enable it for this to work (it's in Windows Features).
posted by neckro23 at 9:40 AM on December 23, 2019 [1 favorite]

FYI, the length of an unmodified English Windows 98SE OEM ISO image is 655591424 bytes and its SHA1 checksum is fa040cd3f7fd472e9612b1721bc72d7b82538450. Searching on the checksum should help you track down a verifiable download source for this thoroughly superseded product.

The content-addressing link magnet:?xt=urn:btih:1923dfad2350e896f2beb1ab7113a3f2ad2c1f79 might also be helpful if you have a BitTorrent client installed.
posted by flabdablet at 9:46 AM on December 25, 2019 [1 favorite]

Hardware virtualization capability in the host CPU is now needed, not merely preferred. Starting from version 6.1, VirtualBox no longer has the on-the-fly machine code recompiler that it used to use to achieve virtualization purely in software.

The rationale for its removal is that (a) every x86 CPU manufactured in the last ten years and many models older than that can do hardware virtualization and (b) running any Windows version from 8 onwards as a guest OS requires virtual CPU features that are infeasible to provide without it.

Found this out the hard way when the Windows 7 installation I really only ever use for trying out answers to AskMe questions stopped working on this elderly laptop after a Debian update. The beauty of running ten year old landfill-grade hardware is that the CPU upgrade I needed to make it work again cost me all of AU$15 (shipped).
posted by flabdablet at 11:38 AM on March 23, 2020

« Older progressive, full body, 5 min at a time in street...   |   Can my pregnant wife use these beauty products? Newer »
This thread is closed to new comments.