This article's lead section may be too short to adequately summarize the key points. Please consider expanding the lead to provide an accessible overview of all important aspects of the article. (December 2015)
PCSX2
Original author(s)Linuzappz, Shadow
Developer(s)PCSX2 Team
Initial releaseMarch 23, 2002; 22 years ago (2002-03-23)
Stable release
1.4.0 / January 8, 2016; 8 years ago (2016-01-08)
Repositorygithub.com/PCSX2/pcsx2
Written inC++, C (wxWidgets)[1]
Operating systemWindows, Linux, OS X
PlatformIA-32 (Not AMD64 due to lack of performance-wise benefits)[2]
Size
Available in22 languages
List of languages
Arabic, Bulgarian, Chinese Simplified, Chinese Traditional, Czech, Dutch, English, French, German, Greek, Hebrew, Italian, Japanese, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Spanish, Swedish, Turkish
TypeVideo game console emulator
LicenseGNU General Public License
Websitepcsx2.net

PCSX2 is a free and open-source PlayStation 2 emulator for Windows, Linux and macOS[3] that supports a wide range of PlayStation 2 video games with a high level of compatibility and functionality. Although PCSX2 can closely mirror the original gameplay experience on the PlayStation 2, PCSX2 sports a number of improvements over gameplay on a traditional PlayStation 2, such as the ability to use custom resolutions up to 4096x4096, anti-aliasing, and texture filtering.

Background

PCSX2, like its predecessor project PCSX (a PlayStation emulator), is based on a PSEmu Pro spec plug-in architecture, separating several functions from the core emulator. These are the graphics, audio, input controls, CD/DVD drive, and USB and FireWire (i.LINK) ports. Different plug-ins may produce different results in both compatibility and performance. Additionally, PCSX2 requires a copy of the PS2 BIOS, which is not available for download from the developers, due to copyright-related legal issues. Since September 2016, PCSX2 is partially compatible with PlayStation 1 games.[4]

The main bottleneck in PS2 emulation is emulating the multi-processor PS2 on the PC x86 architecture. Although each processor can be emulated well on its own, accurately synchronizing them is difficult, but not impossible.

Development

Development of PCSX2 was begun in 2001 by programmers who go by the names Linuzappz and Shadow, who were programmers for the PlayStation emulator PCSX-Reloaded. Other programmers later joined the team, and they were eventually able to get some PS2 games to the loading screen. The team then started working on the difficult task of emulating the PlayStation 2's BIOS; they got it to run, although it was slow and graphically distorted. Version 0.9.1 was released in July 2006.

From 2007 to 2011, developers worked on Netplay and speed improvements. PCSX2 0.9.8 was released in May 2011 and featured an overhauled GUI written with wxWidgets that improved compatibility for Linux and newer Windows operating systems, the addition of a new VU recompiler that brought better compatibility, a memory card editor, an overhaul of the SPU2-X audio plug-in, and numerous other improvements.[5]

Compatibility

The current development version is reported to be compatible with 95.18% of 2,592 tested games.[6] Compatibility means only that the game will not crash, lock up, or enter a loop; there can still be bugs, missing post-processing effects,[7] textures, and shadows in many compatible games. This is especially the case in hardware mode; a slower software mode is available for bugs without workarounds.[8][9]

Features

PCSX2 supports save states and dynamic recompilation (JIT). There is also support for gameplay recording in full HD using the GSdx plugin. Options such as the ability to increase/decrease game speeds, use unlimited memory cards, and utilize any gamepad controllers supported by the native operating system are also available. Cheat codes are supported via the use of PNACH patching files.

Plug-ins

PCSX2 makes use of plug-ins as a means of modularizing (see Modular Programming) development efforts among the separate components (subsystems) of the emulated PlayStation 2 hardware. For instance, video plug-ins are utilized by PCSX2 to render images to the screen and emulate the graphics hardware of the PlayStation 2, whereas sound plug-ins emulate the sound hardware of the PlayStation 2. Not only does this allow different developers to focus their efforts on one aspect of the PlayStation 2 hardware, this also allows users that have a system configuration that does not yield good results with one plug-in to attempt to try another to see if they have better results.

Multiple plug-ins are currently under ongoing development with a focus on performance and compatibility enhancements. A list of several such plug-ins follows:

Name Subsystem Notes
GSdx Video The fastest, most accurate graphics plug-in. Requires Direct3D or OpenGL support and optionally uses a GPU. GSdx plugin is compatible with PSX emulators but is limited to software rendering with them. There also exists an unofficial ToCAEDIT[10] version and the GSdx-Cutie version.[11]
GSdx FX Video Post-processing shader pack for GSdx plugin.
ZZogl Video A less optimized graphics plug-in that uses Open GL. Compatible with Linux and Windows. This plugin is fork of ZeroGS KOSMOS plugin.
SPU2-X Audio The most accurate sound plug-in.
SSSPSX Pad Input A simple input plug-in.
LilyPad Input An advanced input plug-in that supports keyboards, mice, and controllers.
Nuvee Input An input plug-in that supports lightguns and USB mice.
TwinPad Input Another keyboard and mouse plug-in.
XPad Input A Xbox 360 controller input plug-in.
CDVD Optical A simple optical media plug-in that runs games from optical discs.
Linuz ISO CDVD Optical A plug-in which has the ability to compress ISO images.
Dev9 Hard drive Handles PS2 hard disk drive and ethernet emulation.
MegaDev9 Hard drive A more advanced version of Dev9. Currently, it only partially emulates the PS2 hard drive.
Netplay Netplay A plug-in which allows certain games to be playable multiplayer over the internet.

Graphical Improvements (GSdx Plugin)

The GSdx plug-in offers a variety of image quality improvements over the original PlayStation 2 hardware, such as:

Hardware requirements

System requirements
Minimum Recommended
Microsoft Windows
Operating system Windows XP x86 or higherWindows 8.1 x64
CPU SSE2 support, Pentium 4 and up, Athlon64 and up.Intel i5-2400 or AMD FX-8350 or higher.
Memory 2 GB RAM or more.
Graphics hardware Pixel Shader 3.0DirectX 11 GPU

Hardware requirements are largely game-dependent. Due to the demanding nature of emulation, PCSX2 is much more likely to perform well with modern mid-range to high-end hardware, with lower-end systems likely to experience less than full performance. The performance bottleneck in most cases is the CPU rather than the GPU. This is especially the case in software mode, in which only the CPU is used for emulation. In hardware mode, the GPU emulates the graphics, but can still be a bottleneck if the internal resolution is set too high. Some games may also run slower due to unoptimized graphics code or weak video cards. As computer hardware has continued to advance with time, the likelihood of performance issues with PCSX2 have experienced a corresponding decrease.

Reception

PCSX2 has been very well received. Matthew Humphries of Geek.com described it as "an impressive piece of work".[12] Alex Garrett of PC World criticized the difficulty of setting up PCSX2 but called it a "masterpiece".[13] Although he also criticized the complexity, David Hayward of Micro Mart called it "technically amazing".[14] Sriram Gurunathan of In.com described PCSX2 as "arguably the most popular emulator around" and named it as one of the site's Top 5 Emulators.[15] Brandon Widder of Digitaltrends.com included PCSX2 in his Best Emulators article.[16] PCSX2 can be easily installed on any Windows versions by using its documentation.[17] John Corpuz of Tom's Guide mentioned PCSX2 in his Best PlayStation Emulators for PCs article, saying that "when it comes to stable, playable Playstation 2 emulation, PCSX2 is pretty much the best game in town at the moment".[18]

See also

References

  1. ^ "Debian -- Details of package pcsx2 in stretch". Debian. Retrieved 2017-07-28.
  2. ^ https://github.com/PCSX2/pcsx2/wiki/Contributing-(TODO-List)#very-long-term-features
  3. ^ "Getting Started". Pcsx2.net. Retrieved 2016-04-21.
  4. ^ https://github.com/PCSX2/pcsx2/pull/1583
  5. ^ Refraction (2010-11-05). "The History of PCSX2". PCSX2. Retrieved 2013-09-03.
  6. ^ "PCSX2 compatibility list". Pcsx2.net. Retrieved 2016-04-21.
  7. ^ "Post processing Removed When?". Forums.pcsx2.net. Retrieved 2016-04-21.
  8. ^ "Mipmapping in GSDx hardware mode". Forums.pcsx2.net. Retrieved 2016-04-21.
  9. ^ "GSdx Memory Coherency". Forums.pcsx2.net. Retrieved 2016-04-21.
  10. ^ "Custom GSdx Plugin Released". Toca Edit. 2014-12-20. Retrieved 2016-04-21.
  11. ^ "s90110019/Gsdx-cutie: pcsx2 plugin". GitHub. Retrieved 2016-04-21.
  12. ^ Humphries, Matthew (2012-08-06). "PlayStation 2 emulator PCSX2 reaches v1.0, plays games in 1080p". Geek.com. Ziff Davis. Retrieved 2013-09-03.
  13. ^ Garrett, Alex (2011-09-01). "How to Emulate the Sony Playstation 2 (PS2) on Your PC". PC World. IDG. Retrieved 2013-09-03.
  14. ^ Hayward, David (2013-07-19). "Retro Console Emulators Group Test: PCSX2 1.0.0 Review". Micro Mart. Dennis Publishing. Archived from the original on 2015-11-25. Retrieved 2013-09-03. ((cite journal)): Unknown parameter |deadurl= ignored (|url-status= suggested) (help)
  15. ^ Gurunathan, Sriram (2011-02-04). "Top Five Emulators". In.com. Network 18. Retrieved 2013-09-03.
  16. ^ Widder, Brandon (2013-04-20). "Best Emulators (NES, SNES, Genesis, N64, and more)". Digitaltrends.com. Retrieved 2013-10-03.
  17. ^ "PCSX2 Install and Configure on Windows 8.1 / 7". TechBrown. 2015-01-19. Retrieved 2017-06-22.
  18. ^ Corpuz, John (2013-01-30). "Best Playstation Emulators for PCs". Tom's Guide. Retrieved 2013-10-03.