Difference between revisions of "Windows 2000/XP/Vista emulators"

From Emulation General Wiki
Jump to navigation Jump to search
m (im not sure but could be related.)
(Hardware emulation)
(Tags: Mobile edit, Mobile web edit)
Line 108: Line 108:
 
==[[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|Hardware emulation]]==
 
==[[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|Hardware emulation]]==
 
[[File:86Box and Windows XP.png|thumb|298px|86Box and Windows XP]]
 
[[File:86Box and Windows XP.png|thumb|298px|86Box and Windows XP]]
These are emulators in the truest sense, in that they don't do any kind of cheating the way a hypervisor would. 3D graphics and Pentium CPU emulation for these systems usually requires modest to top-notch [https://www.cpubenchmark.net/singleThread.html single thread performance of CPUs]. [[PCem]], [[86Box]] and PCBox are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium III PCs. 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 2000/XP (no Vista support at the moment) along with all necessary drivers for the hardware you chose. This is also a great option if you want most accurate option for 3DFX Voodoo emulation and [https://www.vogons.org/viewtopic.php?t=534 Windows 2000/XP glide games], even if it may be difficult to set up and significantly slower performance compared to [[Wikipedia:X86_virtualization#Hardware-assisted_virtualization|hardware-assisted]] [[Hypervisors]].
+
These are emulators in the truest sense, in that they don't do any kind of cheating the way a hypervisor would. 3D graphics and Pentium CPU emulation for these systems usually requires modest to top-notch [https://www.cpubenchmark.net/singleThread.html single thread performance of CPUs]. [[PCem]], [[86Box]] and [[PCBox]] are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium III PCs. 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 2000/XP (no Vista support at the moment) along with all necessary drivers for the hardware you chose. This is also a great option if you want most accurate option for 3DFX Voodoo emulation and [https://www.vogons.org/viewtopic.php?t=534 Windows 2000/XP glide games], even if it may be difficult to set up and significantly slower performance compared to [[Wikipedia:X86_virtualization#Hardware-assisted_virtualization|hardware-assisted]] [[Hypervisors]].
  
 
'''For more information;'''
 
'''For more information;'''

Revision as of 00:46, 30 May 2023

Bliss, originally known as Bucolic Green Hills, is the default and popular wallpaper of Windows XP

Windows 2000, Windows XP and Windows Vista was based on Windows NT. Playing games for these platforms on a modern system can be quite easy as programs can be run on later windows without sacrifices in backwards compability[1]. For example if a program runs on Windows 7,there is a big chance it will work on Windows 10 and so on. If the program however doesn't know to work on Windows 7,Compability settings can be used to work with the aforementioned operating system,which will also work in Windows 10.

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 PCGamingWiki, which likely already has information on the game you want. If you don't have the game you want, you can download it from myabandonware if it's not available on the platforms like steam or gog.

Wrappers

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 and also you can use these in virtual machines for increasing "Virtual GPU Adapter" compatibility. More information is available at the respective page.

Game Engine Recreations and Source Ports

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.

Hypervisors

Most viable way to get Windows 2000/XP/Vista software running is to run the operating system in a hardware-assisted virtual machine at the moment. This requires you to know how to manually install a Windows NT-family operating system on a computer. If you do decide to install Windows XP in a virtual machine, you will need to install integrations for features like 3D acceleration, mouse integration and shared folders etc.

VMWare Tools supports Windows 95 through Windows 10 but VMware Tools 10.0.12 will be the last version to support legacy Guest Operating Systems (Windows 2000, Windows XP, and Windows Server 2003). VirtualBox does not include 3D acceleration for Windows XP/Vista anymore (VBoxVGA deprecated) due to changes in VirtualBox's 3D acceleration system, you must use VirtualBox 6.0.24 or earlier to use 3D acceleration in a Windows XP or Vista guest. Unlike VirtualBox you can use latest VMware version for Windows XP SVGA3D 3D acceleration.

3D acceleration on Windows XP VMs

Type 2 Hypervisors

Name Operating System(s) Virtual GPU Adapter Recommended
PC / x86
VMware Workstation Windows Linux SVGA3D
Parallels Desktop macOS Parallels Video Adapter[2]
VirtualBox Windows Linux macOS FreeBSD Solaris VBoxVGA ~
 3D acceleration in hypervisors is capable of running fairly demanding video games or other 3D applications with a few drawbacks such as limited DirectX API versions. Every hypervisor has a different approach to handling 3D graphics. Supports for OpenGL are slightly better than Direct3D since it doesn't have to be reverse engineered, but most Windows games (including ports) use Direct3D. You can use wrappers like "WineD3D for Windows" or "DxWnd" for translate D3D calls to OpenGL etc. on the guest OS for increasing your chance if games uncompatible with virtual GPU adapter. DxWnd 2.05.70, WineD3D 1.7.52 or 1.9.7-staging(partially) versions are the latest compatible versions with Windows XP (if OneCoreAPI is not installed to OS), for getting these old "WineD3D for Windows" builds use this link

Type 1 Hypervisors

Name Operating System(s) Virtual GPU Adapter Recommended
PC / x86
QEMU+KVM Linux GPU-Passthrough
QEMU-3dfx+KVM Linux MESA GL/3Dfx Glide Pass-Through ($)
QEMU-3dfx+WHPX Windows MESA GL/3Dfx Glide Pass-Through ($) ~
QEMU+KVM Linux VirGL
QEMU+WHPX Windows [3] VirGL
Hyper-V [4] Windows GPU-P
 You need XP compatible GPU Drivers for GPU-Passthrough, latest supported GPU and GPU drivers from AMD; its 200 series and from nVidia; its 900 series. For more information about this you can use this link.
 QEMU-3dfx's advantage is "MESAGL/3Dfx Glide pass-through". The project took on the troubles to support the legacy of vendor-specific OpenGL extensions that matter for PC games. Past and existing solutions (VirtualBox VBoxVGA's ChromiumGL, VMware SVGA3D and QEMU Virgil 3D) are all based on API "re-rendering" rather then "direct forwarding".[5]
 With Windows host and "QEMU + WHPX" it will be much slower performance wise compared to Linux host and QEMU + KVM. You will have to stay with QEMU TCG entirely until you manually switched to 'ACPI PC' kernel. The starting 'ACPI Uniprocessor' kernel does not boot on QEMU WHPX.
 QEMU VirGL only for Linux guests "with 4.4=> kernel with mesa (>=11.2) compiled with the option gallium-drivers=virgl" at the moment. Plans are to target GL2.1 + GLSL 1.20 as the possible lowest GL interface to support. The guest would then expose the same level of GL. This project will eventually support Direct3D and Windows guest but there is none at the moment. Currently the renderer is GLSL 1.30 based, and requires some extensions from later GL levels. Current developer only really tested on the open source nouveau driver exposing GL3.0/GL3.1 core profile, and the binary nvidia driver exposing GL 4.3. Future plans to add a capabilities system will be required to work make things work across more systems. The capabilities system will expose different guest GL levels dependant on the host GL level, this could allow for a GLES2 specific interface etc. The current guest driver exposes GL2.1 and GLSL 1.20. For more information about VirGL3D use this link.
 "Hyper-V + GPU-P" exclusive to Windows 10/11 host and guest systems at the moment. So you don't have any option other than "QEMU-3dfx with WHPX" OR "Type 2 hypervisors" for current Windows hosts at the moment.
Videos;

QEMU+KVM with GPU passthrough guide for Windows XP VMs
KJ Liew's QEMU-3dfx ($) Windows XP SP3 Retro Gaming VM From Scratch to 3D Acceleration in 15 mins

Compatibility pages;

Virtual GPU adapter compatibility sheet for WinXP (only partially translated via GT)
Working games under VirtualBox (Linux host - Windows guest)
SVGA3D (VMWare) - 3D Applications Compatibility List
WineHQ appdb (useful for "WineD3D for Windows" wrapper)

Hardware emulation

86Box and Windows XP

These are emulators in the truest sense, in that they don't do any kind of cheating the way a hypervisor would. 3D graphics and Pentium CPU emulation for these systems usually requires modest to top-notch single thread performance of CPUs. PCem, 86Box and PCBox are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium III PCs. 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 2000/XP (no Vista support at the moment) along with all necessary drivers for the hardware you chose. This is also a great option if you want most accurate option for 3DFX Voodoo emulation and Windows 2000/XP glide games, even if it may be difficult to set up and significantly slower performance compared to hardware-assisted Hypervisors.

For more information;

Main article: POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs
 What about implementing KVM and these virtual adapters (VMware SVGA/SVGA II and VBoxVGA emulation) for emulators like DOSBox forks or others.
 DOSBox-X issue page "Windows NT, 2000, XP - how to install them as guest?"
 Vogons.org thread: "Using PCem with a XP guest"

External links