Difference between revisions of "PlayStation 2 emulators"

From Emulation General Wiki
Jump to navigation Jump to search
(Emulation issues)
Line 82: Line 82:
 
First of all: many people believes that since the main CPU (Emotion Engine) runs at a clock speed of 294Mhz (299Mhz on later revisions), it would be fast to emulate on recent hardwares. Far from it. The clock speed of a CPU it’s not and indicative factor that makes emulation easier or harder. The PS2 contains a multitude of custom CPUs and chips (main 128bit CPU Emotion Engine housing a FPU co-processor , 2 Vector Units, IOP, SPU2, Graphics Synthesizer and SIF) that work asynchronously and emulating them perfectly requires enormous power. Also the PS2, just like PS1, uses MIPS architecture instead of standard x86 code, thus making emulation slower.<ref>https://forums.pcsx2.net/Thread-Why-is-PCSX2-slow</ref>
 
First of all: many people believes that since the main CPU (Emotion Engine) runs at a clock speed of 294Mhz (299Mhz on later revisions), it would be fast to emulate on recent hardwares. Far from it. The clock speed of a CPU it’s not and indicative factor that makes emulation easier or harder. The PS2 contains a multitude of custom CPUs and chips (main 128bit CPU Emotion Engine housing a FPU co-processor , 2 Vector Units, IOP, SPU2, Graphics Synthesizer and SIF) that work asynchronously and emulating them perfectly requires enormous power. Also the PS2, just like PS1, uses MIPS architecture instead of standard x86 code, thus making emulation slower.<ref>https://forums.pcsx2.net/Thread-Why-is-PCSX2-slow</ref>
  
Another big problem is the emulation of PS2’s own floating point unit (FPU), since it doesn’t follow the IEEE standard. To keep it simple, just changing a couple of numbers would lead to glitches in the game’s graphic (VU) and logic (EE) (broken AI, odd behaviors or graphical bugs). PCSX2 allows to change clamping/rounding on both VU and EE as a solution to fix these glitches, but it’s not the most accurate way to emulate the PS2 FPU.<ref>https://wiki.pcsx2.net/PCSX2_Documentation/Nightmare_on_Floating-Point_Street</ref>
+
Another big problem is the emulation of PS2’s own floating point unit (FPU), since it doesn’t follow the IEEE standard. To keep it simple, just changing a couple of numbers would lead to glitches in the game’s graphic (VU) and logic (EE) (broken AI, odd behaviors or graphical bugs). PCSX2 allows to change clamping/rounding on both VU and EE as a solution to fix these glitches, but it’s not the most accurate way to emulate the PS2 FPU.<ref>https://wiki.pcsx2.net/PCSX2_Documentation/Nightmare_on_Floating-Point_Street</ref><ref>https://github.com/PSI-Rockin/DobieStation/issues/51</ref>
  
 
To conclude the problems with PS2 emulation, we come to hardware rendering. The PS2’s graphic pipeline acts very differently than modern GPU cards and emulating it in HW mode with a certain degree of accuracy it’s hard: due of the versatility of PS2, and the fact that it doesn’t use fixed shaders, games don’t follow a precise formula to how achieve different effects. Various type of enanchments like scaling leads to the typical “black lines glitch” because of using a non-integrer resolution. The OpenGL backend on PCSX2 greatly improved these issues, but most games still requires “software rendering” to fix most of the glitches. Games using mip-mapping (Ratchet & Clank, Ace Combat) and games running on the Snowblind Engine are playable in OGL HW mode with minimal problems.  
 
To conclude the problems with PS2 emulation, we come to hardware rendering. The PS2’s graphic pipeline acts very differently than modern GPU cards and emulating it in HW mode with a certain degree of accuracy it’s hard: due of the versatility of PS2, and the fact that it doesn’t use fixed shaders, games don’t follow a precise formula to how achieve different effects. Various type of enanchments like scaling leads to the typical “black lines glitch” because of using a non-integrer resolution. The OpenGL backend on PCSX2 greatly improved these issues, but most games still requires “software rendering” to fix most of the glitches. Games using mip-mapping (Ratchet & Clank, Ace Combat) and games running on the Snowblind Engine are playable in OGL HW mode with minimal problems.  

Revision as of 21:39, 12 August 2018

PlayStation 2
PS2-Fat-Console-Set.png
Developer Sony
Type Home video game console
Generation Sixth generation
Release date 2000
Discontinued 2013
Predecessor PlayStation
Successor PlayStation 3
Emulated

The PlayStation 2 (PS2) is a sixth-generation console released by Sony in 2000. It became the highest selling console of all time with over 155 million units sold.

Emulators

Name Operating System(s) Latest Version Active Recommended
PC
PCSX2 Windows, Linux, Mac OS X 1.4.0 (stable)
SVN
Play! Multi-platform Builds
DobieStation Windows Git
hpsx64 Windows 0232
Emotionless Windows Git
orbum Windows Git
Mobile
Play! Android, iOS Git

Comparisons

PCSX2
The only PS2 emulator currently worth using. That said, it is very underwhelming in the accuracy department, with thousands of bugs and graphical glitches. However, since version 1.4, the emulator is capable of playing 2455 games without any major glitches (regardless of speed), and playing 56 games at a non-playable speed or with major graphical or accuracy glitches. Check the Game Problems FAQ for the most difficult titles.
Play!
Can run quite a few commercial games but is still pretty far behind PCSX2.
DobieStation
Can boot or reach the menus on numerous games and some go in-game, designed to be fast, accurate and easy to use. An android port is planned. Making rapid progress
hps2x64
Can also run quite a few commercial games, but probably less so, and at slower speeds, than Play!. It also emulates and focuses more on PlayStation emulation.
Emotionless
Can not run commercial games or homebrew yet, aims to have clean, readable code that is both portable and scalable, dormant for quite some time, but had some activity lately.

Emulation issues

While the PS2 is the most sold console of all the time with a huge library of games, it’s still one of the hardest console to emulate for a number of reasons.

First of all: many people believes that since the main CPU (Emotion Engine) runs at a clock speed of 294Mhz (299Mhz on later revisions), it would be fast to emulate on recent hardwares. Far from it. The clock speed of a CPU it’s not and indicative factor that makes emulation easier or harder. The PS2 contains a multitude of custom CPUs and chips (main 128bit CPU Emotion Engine housing a FPU co-processor , 2 Vector Units, IOP, SPU2, Graphics Synthesizer and SIF) that work asynchronously and emulating them perfectly requires enormous power. Also the PS2, just like PS1, uses MIPS architecture instead of standard x86 code, thus making emulation slower.[1]

Another big problem is the emulation of PS2’s own floating point unit (FPU), since it doesn’t follow the IEEE standard. To keep it simple, just changing a couple of numbers would lead to glitches in the game’s graphic (VU) and logic (EE) (broken AI, odd behaviors or graphical bugs). PCSX2 allows to change clamping/rounding on both VU and EE as a solution to fix these glitches, but it’s not the most accurate way to emulate the PS2 FPU.[2][3]

To conclude the problems with PS2 emulation, we come to hardware rendering. The PS2’s graphic pipeline acts very differently than modern GPU cards and emulating it in HW mode with a certain degree of accuracy it’s hard: due of the versatility of PS2, and the fact that it doesn’t use fixed shaders, games don’t follow a precise formula to how achieve different effects. Various type of enanchments like scaling leads to the typical “black lines glitch” because of using a non-integrer resolution. The OpenGL backend on PCSX2 greatly improved these issues, but most games still requires “software rendering” to fix most of the glitches. Games using mip-mapping (Ratchet & Clank, Ace Combat) and games running on the Snowblind Engine are playable in OGL HW mode with minimal problems.

With the actual PC hardware, achieving close-to-perfection PS2 emulation it’s not possible. The PS2 is a very complex machine that even game developers struggled to work with.

External links

  • PCSX2 Wiki - For checking if your games work and any fixes, tweaks, or settings you should know beforehand. The wiki is very outdated and unfinished, so personal testing is usually a must.
  • PlayStation 2 DataCenter - Tons of PS2 related things. Emulator files like plugins, game manuals, game configurations, and many tutorials are just some of things you'll find here.

References