Original author(s) | George Moralis |
---|---|
Initial release | September 29, 2023 [1] |
Stable release | v0.4.0 |
Repository | github |
Written in | C++ [2] [3] |
Operating system | Windows, Linux, macOS |
Type | Video game console emulator |
License | GPLv2 [4] |
Website | shadps4 |
shadPS4 is an emulator for the PlayStation 4. [5] [6] It supports Windows, Linux and MacOS. [2] [7] shadPS4 can only emulate some games to varying degrees of support. [8] [9]
Development of shadPS4 was started by George Moralis [10] [11] [12] in October 2022. [13] Moralis previously worked on the PS1 emulator PCSX and founded the PS2 emulator PCSX2, [14] [15] going by the user name "shadow". At the time, PS4 emulation had not advanced very far, with most existing emulators being only able to run 2D games reliably. [16] [9] On July 2, 2024, shadPS4 version 0.1.0 was released, being able to launch Sonic Mania , One Piece: Unlimited World Red and some other 3D games such as Resident Evil: Origins Collection and Persona 5 . [17] [16] A major factor contributing to its support for more 3D games was that addition of a shader recompiler to its architecture. [18] [19] Bloodborne could run and access the character creation menu, but had a major graphical bug causing a red filter to be applied to the screen. [6] [11] [20] By July 31, it could run Red Dead Redemption at 25 frames per second, [21] [8] [22] and it was able to launch Dark Souls . [8] By August 19, version 0.2.1 was in development and was able to run both the alpha and retail version of Bloodborne without crashing, with some users able to run the game at more than 60 FPS. [5] However, not all textures could be properly loaded, and several game specific hacks were used in order to run it. [10] [9] [23] In early September rendering was greatly improved, with support being added for screen light occlusion, depth of field, dynamic lighting, and shadows. [24] As of December 7, 2024, 119 titles are listed by shadPS4 as being "in game," with most of them being 2D games. [25]
MAME is a free and open-source emulator designed to recreate the hardware of arcade games, video game consoles, old computers and other systems in software on modern personal computers and other platforms. Its intention is to preserve gaming history by preventing vintage video games from being lost or forgotten. It does this by emulating the inner workings of the emulated machines; the ability to actually play the video games is considered "a nice side effect". Joystiq has listed MAME as an application that every Windows and Mac gamer should have.
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.
In software engineering, a compatibility layer is an interface that allows binaries for a legacy or foreign system to run on a host system. This translates system calls for the foreign system into native system calls for the host system. With some libraries for the foreign system, this will often be sufficient to run foreign binaries on the host system. A hardware compatibility layer consists of tools that allow hardware emulation.
A softmod is a method of using software to modify the intended behavior of hardware, such as computer hardware, or video game consoles in a way that can overcome restrictions of the firmware, or install custom firmware.
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.
Project64 is a free and open-source Nintendo 64 emulator written in the programming languages C and C++ for Microsoft Windows. This software uses a plug-in system allowing third-party groups to use their own plug-ins to implement specific components. Project64 can play Nintendo 64 games on a computer reading ROM images, either dumped from the read-only memory of a Nintendo 64 ROM cartridge or created directly on the computer as homebrew.
Dolphin is a free and open-source video game console emulator of 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 emulator of the PlayStation 2 for x86 computers. It supports most PlayStation 2 video games with a high level of compatibility and functionality, and also 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. It has been released for Windows, Linux, and macOS.
Higan is a free and open source emulator for multiple video game consoles, including the Super Nintendo Entertainment System. It was developed by Near. Originally called bsnes, the emulator is notable for attempting to emulate the original hardware as accurately as possible through low-level, cycle-accurate emulation and for the associated historical preservation efforts of the Super NES platform.
A video game console emulator is a type of emulator that allows a computing device to emulate a video game console's hardware and play its games on the emulating platform. More often than not, emulators carry additional features that surpass limitations of the original hardware, such as broader controller compatibility, timescale control, easier access to memory modifications, and unlocking of gameplay features. Emulators are also a useful tool in the development process of homebrew demos and the creation of new games for older, discontinued, or rare consoles.
In computing, an emulator is hardware or software that enables one computer system to behave like another computer system. An emulator typically enables the host system to run software or use peripheral devices designed for the guest system. Emulation refers to the ability of a computer program in an electronic device to emulate another program or device.
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.
OpenEmu is an open-source multi-system video game emulator designed for macOS. It provides a plugin interface to emulate numerous consoles' hardware, such as the Nintendo Entertainment System, Genesis, Game Boy, and many more. The architecture allows for other developers to add new cores to the base system without the need to account for specific macOS APIs.
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.
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 CPUs featuring OpenGL and Vulkan as backend renderers.
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.
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.
Emulators of the Nintendo Switch, Nintendo's current eighth-generation video game console, have been in development since 2017, less than a year after the console's release. Multiple emulators have been in development, the most well-known being Yuzu and Ryujinx, both now defunct. Switch emulators have been widely noted by video games journalists for the swift and significant progress of their abilities to accurately emulate the console, as they are already able to run existing and new titles for the console in a playable state, sometimes within days of their release, as well as able to run on a variety of devices, including PCs running Windows and Linux, and the Steam Deck.