Difference between revisions of "Windows 95/98/ME emulators"

From Emulation General Wiki
Jump to navigation Jump to search
(Created page with "The Windows 9x series consisted of Windows 95, Windows 98, and Windows ME. Playing Win95/98/ME games on a modern system can be difficult. There is no simple straightforward "e...")
 
(Software emulators)
 
(70 intermediate revisions by 16 users not shown)
Line 1: Line 1:
The Windows 9x series consisted of Windows 95, Windows 98, and Windows ME. Playing Win95/98/ME games on a modern system can be difficult. There is no simple straightforward "emulator" for it, unlike [[DOS]].
+
By the 90s, PCs with [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#Hardware_support.2C_features_and_peripherals|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.
  
==Wine==
+
[[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|Windows 1.0x/2x/3x]] were graphical user interfaces (GUIs) built on top of MS-DOS. Those were the programs that runs a window manager on top of MS-DOS operating system. Many of the underlying device drivers and protocols had to be loaded in DOS for 3.11 to use them. On the other hand, [[Windows_95/98/ME_emulators|Windows 9x]] (95, 98, ME) were standalone operating systems with DOS compatibility mode. Also [[Emulators_on_Windows|NT3.x]] was an operating system as it included its own micro-kernel and device drivers [http://9gag.com/gag/aGEWOR6?utm_source=copy_link&utm_medium=comment_share#cs_comment_id=c_170720300873967463].
  
{{Main|Wine}}
+
Playing games released for these platforms on a modern system can be quite easy as programs can be run on latest Windows without sacrifices due to backwards compability.<ref>https://support.microsoft.com/en-us/windows/make-older-apps-or-programs-compatible-with-windows-783d6dd7-b439-bdb0-0490-54eea0f45938</ref> However this '''may''' change in the near future due to dropping 16 and 32-bit support from processors.<ref>[https://www.youtube.com/watch?v=D2FpXimj1oA René Rebe: Intel finally to remove 16-bit REAL MODE and some 32b RINGS]</ref><ref>[[Wikipedia:X86#From_16-bit_and_32-bit_to_64-bit_architecture|In 2023, Intel proposed a major change to the architecture referred to as x86-S (with S standing for "simplification"), which aims to remove support for legacy execution modes and instructions]]</ref>
  
Wine is for Linux and OSX and allows WIndows applications to run on those systems. Support for Win95/98 programs is quite strong.
+
If you are trying to get Win9x software working on a modern system, you should only be using this page as a last resort and would be better suited to read the [https://www.pcgamingwiki.com PCGamingWiki], which likely already has information on the game you want. If you don't have the operating system you want, you can download it from [https://winworldpc.com/library/operating-systems WinWorldPC], and if you don't have the game you want or it's not available on the platforms like [https://store.steampowered.com/ Steam] or [https://www.gog.com/ GOG]; you can try downloading it from [https://www.myabandonware.com/ My Abandonware].
  
==DOSBox==
+
==[[Compatibility layers]]==
 +
[[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.
  
{{Main|DOSBox}}
+
==[[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.
  
Windows 95 and 98 can be installed in DOSBox. Windows ME however cannot. How well do games play? No idea.
+
==[[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.
  
There has been interest in creating a spin off version of DOSBox that incorporates compatibility with Windows 95/98/ME. It would be called 9xbox. As of 02/09/13 it has not passed the theoretical stage and no work has been done. 
+
We have already listed many of the most popular video game ports and recreations at the respective page.
  
http://win9xbox.sourceforge.net/
+
==Software emulators==
 +
These are emulators in the truest sense, in that they don't do any kind of "cheating/hacking" the way a hypervisor would. But keep in mind that, unlike [[Wikipedia:X86_virtualization#Hardware-assisted_virtualization|hardware-assisted]] [[#Hypervisors|hypervisors]]; emulating something like Voodoo3 with Pentium II level of hardware with these software emulators requires latest and greatest top-notch [https://www.cpubenchmark.net/singleThread.html single thread performance of CPUs]. [[PCem]], [[86Box]] and UniPCemu are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium II powered 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 95/98/ME along with all necessary drivers for the hardware you chose. Having said that, see these emulators as a useful alternative way to emulate these operating systems especially if you want the most accurate and compatible option for 3Dfx Voodoo emulation and [https://www.vogons.org/viewtopic.php?t=534 Windows 95/98/ME Glide games].
  
==Virtual machine==
+
*Windows 95/98/ME can also be installed in [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs|DOSBox forks]], and it also supports 3DFX Voodoo emulation but hardware compatibility and accuracy aren't as good as [[PCem]] or [[86Box]], although it still has good compatibility and much more performant compared to 86Box or PCem. '''See [[POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs]] and [[PC_Emulator_Comparisons]] pages for more and detailed information.'''
 +
*Another alternative for this (which doesn't need a Win9x installation) is [[DREAMM]], which '''emulates''' (not [[Wrappers|wrapper]] or [[compatibility layer]]) a [https://aarongiles.com/dreamm/docs/v21/#intro-games curated selection of games and multimedia CDs].
  
Win95/98 can be installed through a Virtual Machine. There is however no 3D accelleration.
+
'''For more information;'''
 +
{{Main|POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs}}
 +
{{Main|PC_Emulator_Comparisons}}
  
==Windows 7/8==
+
==[[Hypervisors]]==
 +
'''See this page;''' {{Main|Windows_2000/XP/Vista_emulators#Hypervisors}}
  
Some Win95/98 applications can be run on these systems. However, support is very spotty. Selecting Windows 95 or Windows 98 in compatibility mode helps.
+
;Keep in mind that, if you do decide to install Windows 95 in a virtual machine, you will need to install [http://lonecrusader.x10host.com/fix95cpu.html FIX95CPU] (or better [https://github.com/JHRobotics/patcher9x#patch-for-windows-959898-seme-to-fix-cpu-issues Patcher9x by JHRobotics]) 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. Also there is a GPU driver project called "[https://github.com/JHRobotics/softgpu softgpu]" for Win9x virtual GPU adapters which increases compatibility.
 +
 
 +
==External links==
 +
* [https://www.pcgamingwiki.com/wiki/Virtualization PCGamingWiki: Virtualization]
 +
* [https://www.vogons.org/ VOGONS]
 +
[[Category:Operating systems]]

Latest revision as of 14:49, 26 March 2024

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.

Windows 1.0x/2x/3x were graphical user interfaces (GUIs) built on top of MS-DOS. Those were the programs that runs a window manager on top of MS-DOS operating system. Many of the underlying device drivers and protocols had to be loaded in DOS for 3.11 to use them. On the other hand, Windows 9x (95, 98, ME) were standalone operating systems with DOS compatibility mode. Also NT3.x was an operating system as it included its own micro-kernel and device drivers [1].

Playing games released for these platforms on a modern system can be quite easy as programs can be run on latest Windows without sacrifices due to backwards compability.[1] However this may change in the near future due to dropping 16 and 32-bit support from processors.[2][3]

If you are trying to get Win9x software working on a modern system, 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 operating system you want, you can download it from WinWorldPC, and if you don't have the game you want or it's not available on the platforms like Steam or GOG; you can try downloading it from My Abandonware.

Compatibility layers[edit]

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.

Wrappers[edit]

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[edit]

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.

Software emulators[edit]

These are emulators in the truest sense, in that they don't do any kind of "cheating/hacking" the way a hypervisor would. But keep in mind that, unlike hardware-assisted hypervisors; emulating something like Voodoo3 with Pentium II level of hardware with these software emulators requires latest and greatest top-notch single thread performance of CPUs. PCem, 86Box and UniPCemu are full retro x86 computer emulators, spanning from the original IBM 5150 to Pentium II powered 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 95/98/ME along with all necessary drivers for the hardware you chose. Having said that, see these emulators as a useful alternative way to emulate these operating systems especially if you want the most accurate and compatible option for 3Dfx Voodoo emulation and Windows 95/98/ME Glide games.

For more information;

Main article: POS_(Pong_Consoles)_CPUs_and_Other_Chips#x86_CPUs
Main article: PC_Emulator_Comparisons

Hypervisors[edit]

See this page;

Main article: Windows_2000/XP/Vista_emulators#Hypervisors
Keep in mind that, if you do decide to install Windows 95 in a virtual machine, you will need to install FIX95CPU (or better Patcher9x by JHRobotics) 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. Also there is a GPU driver project called "softgpu" for Win9x virtual GPU adapters which increases compatibility.

External links[edit]

  • https://support.microsoft.com/en-us/windows/make-older-apps-or-programs-compatible-with-windows-783d6dd7-b439-bdb0-0490-54eea0f45938
  • René Rebe: Intel finally to remove 16-bit REAL MODE and some 32b RINGS
  • In 2023, Intel proposed a major change to the architecture referred to as x86-S (with S standing for "simplification"), which aims to remove support for legacy execution modes and instructions