Windows 95/98/ME emulators
By the 90s, PCs with Intel CPUs started to break away from the mold of their 16-bit incarnations. It began with Intel taking the helm of the PC platform with the ATX specification, which departed from the PC AT and related models in a number of ways. The rise of PCs also brought with it the bundling of the Windows 9x family of operating systems, which were hybrid 16/32-bit operating systems consisting of Windows 95, Windows 98, and Windows ME; Windows 2000 was based on Windows NT.
Playing games for these platforms on a modern system can be difficult but if you are trying to get them working, you should only be using this page as a last resort and would be better suited to read the PC Gaming Wiki, which likely already has information on the game you want. If you don't have the operating system or game you want, you can download it from WinWorldPC.
Wine is the quintessential compatibility tool for POSIX-based operating systems like Linux and macOS that translates Windows API calls to Linux equivalents. Support for Windows 9x software is quite strong, far superior to that of 64-bit Windows versions. For running games, you'll also want to check out the Linux frontend Lutris, since it includes a plethora of customizations and tweaks for running Windows games. It is also possible to use WineD3D and DXVK on Windows, which may improve compatibility on a case-by-case basis.
Sometimes, all that may be missing in order to get an old game running is a DLL wrapper for the graphics API. This is common for games that were designed for 3Dfx Glide cards. More information is available at the respective page.
Many games are considered enough of a cult classic that the source code is made publicly available for study and use as a base for ports to newer platforms. For some titles, this is done by the developer themselves to show other developers the viability of such a project. However, for most games this'll usually be done by force through reverse engineering.
We have already listed many of the most popular video game ports and recreations at the respective page.
These are emulators in the truest sense, in that they don't do any kind of cheating the way a hypervisor would. 3D graphics for these systems usually requires modest to powerful hardware.
PCem and 86Box are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium II PCs (with 86Box). Setting it up is much like building an actual retro computer, but in software, so expect it to be as difficult as setting up an actual retro PC. This means you're going to have to install Windows 95/98/ME along with all necessary drivers for the hardware you chose. This is also a great option if you want accurate 3DFX Voodoo emulation.
This is going to be the most accurate option for running Windows 95/98/ME games, even if it may be difficult to set up.
Windows 95 and 98 can be installed in DOSBox. See the respective page for more information.
One way to get Windows 9x software running is to run the operating system in a virtual machine. Unfortunately, this requires you to know how to manually install a Windows 9x-family operating system on a computer. If you do decide to install Windows 95 in a virtual machine, you will need to install FIX95CPU for it to run on processors with clock speeds over 2.1GHz (for Intel CPUs) and 300MHz (for AMD CPUs). Failing to do so will result in a "Protection Error" at boot time.
VMWare Tools supports Windows 95 through Windows 10. VirtualBox does not include 3D acceleration for Windows 9x.