Original author(s) | DH, Hykem, AlexAlta |
---|---|
Developer(s) | (RPCS3 TEAM) Nekotekina, kd-11, elad335, jarveson, Megamouse, hcorion, scribam, ruipin, isJuhn, Galciv, Numan [1] |
Initial release | May 23, 2011 |
Stable release | None |
Preview release | v0.0.32-16834 Alpha / August 16, 2024 [2] |
Repository | github |
Written in | C++, GLSL and C |
Operating system | Windows, macOS, Linux, FreeBSD |
Platform | x86-64, ARM64 |
Available in | English |
Type | Video game console emulator |
License | GNU General Public License version 2.0 |
Website | rpcs3 |
RPCS3 is a free and open-source emulator and debugger for the Sony PlayStation 3 that runs on Windows, Linux, FreeBSD and macOS operating systems, allowing PlayStation 3 games and software to be played and debugged on a personal computer. It is being developed in the C++ programming language targeting x86-64 and ARM64 [lower-alpha 1] CPUs featuring OpenGL and Vulkan as backend renderers.
As of August 2024, nearly 70% of PlayStation 3 games have been classified as "playable", meaning that a significant portion of the native library can be played from start to finish without any major problems. [3]
Despite the general idea that the complexity of the PlayStation 3's Cell architecture would prevent it from being emulated, [4] RPCS3 released on May 23, 2011, by programmers DH and Hykem as a working emulator. [5] The developers initially hosted the project on Google Code and eventually moved it to GitHub on August 27, 2013. The emulator was first able to successfully run simple homebrew projects in September 2011 [6] and got its first public release in June 2012 as v0.0.0.2. [7]
On February 9, 2017, RPCS3 received its first implementation of a PPE thread scheduler, enhancing its emulation of the many-core Cell microprocessor. [8] On February 16, 2017, RPCS3 gained the ability to install official PlayStation 3 firmware directly to its core file system. [9] In May 2017, it was reported that the implementation of the Vulkan graphics API had shown some performance improvements approaching 400%, pushing several games into "playable" status. [10]
In July 2022, the developers of RPCS3 implemented save states into the emulator. This feature had previously been considered infeasible due to technical limitations. [11]
In September 2024, a build of RPCS3 native to the ARM64 CPU architecture for macOS devices with Apple silicon system-on-chip was released on GitHub. [12]
As of late 2024, the OS requirements are:
Prior to this, the requirements for Mac and PC were lower at macOS 11.6 or later and Windows 7 or later, respectively. The PC must have at least 4 GB of RAM, 8 GB recommended, an x86-64 CPU and a GPU supporting one of the supported graphics APIs: OpenGL 4.3 or greater, or Vulkan, the latter being recommended. Additional support for SIMD CPU instruction sets such as AVX-2 and AVX-512 is also recommended for best performance. Apart from the game itself to be run, the emulator requires the PlayStation 3's firmware, which can be downloaded from Sony's official website. [13]
RPCS3 received significant media attention in April 2017 for its ability to emulate Persona 5 , achieving playability prior to the game's Western release date. [14] [15] [16] [17] In September 2017, Persona developer Atlus issued a DMCA takedown notice against RPCS3's Patreon page. The action was motivated by the Patreon page making frequent mentions on the emulator's progress on emulating Persona 5. The demand, however, was settled by only removing all Persona 5 references from the page. [18] [19]
Wine is a free and open-source compatibility layer to allow application software and computer games developed for Microsoft Windows to run on Unix-like operating systems. Developers can compile Windows applications against WineLib to help port them to Unix-like systems. Wine is predominantly written using black-box testing reverse-engineering, to avoid copyright issues. No code emulation or virtualization occurs. Wine is primarily developed for Linux and macOS.
In computer science, dynamic recompilation is a feature of some emulators and virtual machines, where the system may recompile some part of a program during execution. By compiling during execution, the system can tailor the generated code to reflect the program's run-time environment, and potentially produce more efficient code by exploiting information that is not available to a traditional static compiler.
Basilisk II is an emulator which emulates Apple Macintosh computers based on the Motorola 68000 series. The software is cross-platform and can be used on a variety of operating systems.
QEMU is a free and open-source emulator. It emulates a computer's processor through dynamic binary translation and provides a set of different hardware and device models for the machine, enabling it to run a variety of guest operating systems. It can interoperate with Kernel-based Virtual Machine (KVM) to run virtual machines at near-native speed. QEMU can also do emulation for user-level processes, allowing applications compiled for one processor architecture to run on another.
Homebrew, when applied to video games, refers to software produced by hobbyists for proprietary video game consoles which are not intended to be user-programmable. The official documentation is often only available to licensed developers, and these systems may use storage formats that make distribution difficult, such as ROM cartridges or encrypted CD-ROMs. Many consoles have hardware restrictions to prevent unauthorized development.
Rosetta is a dynamic binary translator developed by Apple Inc. for macOS, an application compatibility layer between different instruction set architectures. It enables a transition to newer hardware, by automatically translating software. The name is a reference to the Rosetta Stone, the artifact which enabled translation of Egyptian hieroglyphs.
Dolphin is a free and open-source video game console emulator for GameCube and Wii that runs on Windows, Linux, macOS, Android, Xbox One, Xbox Series X and Series S.
PCSX2 is a free and open-source PlayStation 2 emulator for Windows, Linux, and macOS 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 supports a number of improvements over gameplay on a traditional PlayStation 2, such as the ability to use higher resolutions than native, anti-aliasing and texture filtering.
PCSX is a free and open-source, video game console emulator that allows software designed to be used with the Sony PlayStation to run on personal computers. Over the years, development changed hands several times with PCSX-Reloaded (PCSXR) now being the main version. As of 2021, the emulator seems to be no longer under active development. A newer, actively maintained fork of PCSX-Reloaded is PCSX-Redux.
The Android Package with the file extension apk is the file format used by the Android operating system, and a number of other Android-based operating systems for distribution and installation of mobile apps, mobile games and middleware. A file using this format can be built from source code written in either Java or Kotlin.
Mednafen, formerly known as Nintencer, is an OpenGL and SDL multi-system free software wrapper that bundles various original and third-party emulation cores into a single package, and is driven by command-line input. It is distributed under the terms of the GPL-2.0-or-later license. Certain emulation cores of Mednafen have been ported to RetroArch/Libretro.
PPSSPP is a free and open-source PSP emulator for Windows, macOS, Linux, iOS, Android, Nintendo Wii U, Nintendo Switch, BlackBerry 10, MeeGo, Pandora, Xbox Series X/S and Symbian with a focus on speed and portability. It was released to the public on November 1, 2012, licensed under the GNU GPLv2 or later. The PPSSPP project was created by Henrik Rydgård, one of the co-founders of the Dolphin emulator.
RetroArch is a free and open-source, cross-platform frontend for emulators, game engines, video games, media players and other applications. It is the reference implementation of the libretro API, designed to be fast, lightweight, portable and without dependencies. It is licensed under the GNU GPLv3.
mpv is free and open-source media player software based on MPlayer, mplayer2 and FFmpeg. It runs on several operating systems, including Unix-like operating systems and Microsoft Windows, along with having an Android port called mpv-android. It is cross-platform, running on ARM, MIPS, PowerPC, RISC-V, s390x, x86/IA-32, x86-64, and some other by 3rd party.
Vulkan is a low-level, low-overhead cross-platform API and open standard for 3D graphics and computing. It was intended to address the shortcomings of OpenGL, and allow developers more control over the GPU. It is designed to support a wide variety of GPUs, CPUs and operating systems, and it is also designed to work with modern multi-core CPUs.
Citra is a discontinued free and open-source emulator of the handheld Nintendo 3DS for Windows, macOS, Linux, and Android. Citra's name is derived from CTR, which is the model name of the original 3DS. Citra can run many homebrew games and commercial games. As of August 2024, Citra has been forked in a GitHub repository by former Citra team member PabloMK7, and is currently continuing development.
MoltenVK is a software library which allows Vulkan applications to run on top of Metal on Apple's macOS, iOS, and tvOS operating systems. It is the first software component to be released for the Vulkan Portability Initiative, a project to have a subset of Vulkan run on platforms lacking native Vulkan drivers.
Yuzu is a discontinued free and open-source emulator of the Nintendo Switch, developed in C++. Yuzu was announced to be in development on January 14, 2018, 10 months after the release of the Nintendo Switch.
Ryujinx is a discontinued free and open-source emulator of the Nintendo Switch. It was first released on February 5, 2018 and supported more than 3,000 games by 2024.