|Original author(s)||F|RES, Henrik Rydgård (ector)|
|Developer(s)||Dolphin Emulator Project|
|Initial release||22 September 2003|
|Written in||C++ and C (GUI: originally in wxWidgets, ported to Qt5 in 2018)|
|Operating system||Windows 7 or later, macOS Sierra 10.12 or later, Linux, Android 5.0 or later (only 64-bit)|
|Available in||24 languages|
|Type||Video game console emulator|
|License||2015: GPL-2.0-or-later |
Dolphin is a free and open-source video game console emulator for GameCube and Wiithat runs on Windows, Linux, MacOS, and Android.
It had its inaugural release in 2003 as freeware for Windows. Dolphin was the first GameCube emulator that could successfully run commercial games. After troubled development in the first years, Dolphin became free and open-source software and subsequently gained support for Wii emulation. Soon after, the emulator was ported to Linuxand macOS. As mobile hardware got more powerful over the years, running Dolphin on Android became a viable option.
Dolphin has been well received in the IT and video gaming media for its high compatibility, steady development progress, the number of available features, and the ability to play games with graphical improvements over the original consoles.
Dolphin was first released in September 2003by Swedish programmer Henrik Rydgård (ector) and developer F|RES as an experimental GameCube emulator that could boot up and run commercial games. Audio was not yet emulated, and the overall performance quality was very poor. Many games crashed on start up or barely ran at all; average speed was from 2 to 20 frames per second (FPS). Its name refers to the development code name for the GameCube.
Dolphin was officially discontinued temporarily in December 2004, with the developers releasing version 1.01 as the final version of the emulator.The developers later revived the project in October 2005.
Dolphin became an open-source project on 13 July 2008when the developers released the source code publicly on a SVN repository on Google Code under the GPL-2.0-only license. At this point, the emulator had basic Wii emulation implemented, limited Linux compatibility and a new GUI using wxWidgets. The preview builds and unofficial SVN builds were released with their revision number (e.g., RXXXX) rather than version numbers (e.g., 1.03). As with previous builds, differences between consecutive builds are typically minor.
As of February 2009, the software was able to successfully boot and run the official Wii System Menu v1.0. Shortly after, almost all versions of the Wii system software became bootable.
By April 2009, most commercial games, GameCube and Wii alike, could be fully played, albeit with minor problems and errors, with a large number of games running with few or no defects. Adjustments to the emulator had allowed users to play select games at full speed for the first time, audio was dramatically improved, and the graphical capabilities were made more consistent aside from minor problems.
By late October 2009, several new features were incorporated into the emulator, such as automatic frame-skipping, which increased the performance of the emulator, as well as increased stability of the emulator overall.Also improved was the Netplay feature of the emulator, which allowed players to play multiplayer GameCube and Wii games online with friends, as long as the game did not require a Wii Remote. The emulator's GUI was also reworked to make it more user-friendly, and the DirectX plug-in received further work.
On 12 April 2010 Dolphin 2.0 was released.
By the end of November 2010, the developers had fixed most of the sound issues such as crackling, added compatibility with more games, and increased the overall emulation speed and accuracy.[ citation needed ]
In June 2011, version 3.0 was released.Strange user interface behavior, crashes, graphical glitches and other various issues were fixed. The release notes state that the majority of games "run perfectly or with minor bugs.” The release featured redesigned configuration windows, an improved LLE sound engine, new translations, added support for the Wii Remote speaker, EFB format change emulation, graphics debugger and audio dumping among several other new features. The 3.0 release removed the plug-in interface in order to “allow for a much better integration with the other parts of Dolphin.” The developers also added a Direct3D 11 video back-end and an XAudio2 audio back-end.
On 25 December 2012, version 3.5 of Dolphin was released, featuring support for emulating the GameCube Broadband Adapter and Microphone accessories. It introduced a FreeBSD port, free replacement for the DSP firmware, and the WBFS file format.
On 6 April 2013, the Dolphin development team released the first builds for Google's Android mobile operating system.As of September 2013, only a handful of devices contained the hardware to support OpenGL ES 3.0, with Google officially supporting the standard in software since July 2014 with the introduction of Android 4.3 Jelly Bean. Games run at an average of 1 FPS. The developer has cited the Samsung Galaxy S4 as one of the first phones capable of playing games at higher speeds, but even it would have considerable performance limitations.
On 22 September 2013, version 4.0 of Dolphin was released, featuring back-end improvements to OpenGL rendering and OpenAL audio, broader controller support, networking enhancements, and performance tweaks for macOS and Linux builds.Months later, versions 4.0.1 and 4.0.2. were released, fixing minor bugs.
On 12 October 2013 (4.0-155), Direct3D 9 support was removed from the project, leaving Direct3D 11 and OpenGL as the two remaining video back-ends. The Dolphin Team explained this, stating that the plug-in was "inherently flawed" and that trying to evade its several flaws "wasted time and slowed development."
On 19 May 2014, the Dolphin Team announced that 32-bit support for Windows and Linux would be dropped.The Dolphin Team stated that it was becoming increasingly difficult to maintain the 32-bit builds, and that the 32-bit releases simply offered an inferior experience compared to their 64-bit counterparts. Furthermore, the vast majority of their users were already using 64-bit CPUs, and most users of 32-bit builds were 64-bit compatible yet were using 32-bit by mistake. The combination of these factors made 32-bit support unnecessary. 32-bit Android builds suffered from similar issues, but ARMv7 support remained for another year until the AArch64 JIT was ready and devices were available.
Throughout 2014, several features were implemented into Dolphin, including disc loading emulation, native support for GameCube controllers,perfect audio emulation, and bug fixes for problems which had been present since the emulator's earliest days. Memory management unit (MMU) improvements allowed many games to boot and work properly for the first time. Improvements towards the emulator also allowed for it to run well on Android using the Nvidia Tegra processor, albeit with minor difficulties.
In coordination with the developers of the VBA-M Game Boy Advance emulator, support for linking GameCube and Game Boy Advance games was implemented into Dolphin in March 2015.
On 25 May 2015 – the Dolphin Development team announced that they had successfully re-licensed the code base from "GPL-2.0-only" to "GPL-2.0-or-later" in order to improve license compatibility with other Free and open-source projects and be able to share and exchange code with them.
In August 2015, the Dolphin developers announced further improvements with audioand throughout December 2015 the Dolphin project fixed audio issues on TR Wii Remotes. Two months later, in February 2016, a DirectX 12 back-end was mainlined after months of development.
On 24 June 2016, version 5.0 of Dolphin was released, making various fixes and additions to the emulator.
Development of a Vulkan-based graphics renderer began in June 2016.After a month, the developer announced that it is “now feature-complete" and that it's "time for clean-ups/bug-fixing/performance work.“ Development of the renderer was still done in a dedicated branch for the next few months until the code was finally merged in October 2016.
In September 2016, Dolphin's developers announced the emulator was now able to boot all official GameCube titles. The last title to be supported for boot-up, Star Wars: The Clone Wars , had been particularly difficult to emulate due to the game's use of the memory management unit.Also they announced that they removed Triforce emulation, because of no maintenance in the Triforce emulation's code.
In March 2017, support was added for the Wii Shop Channel.
Two experimental features, both of which never reached maturity, were removed in May 2017: The DirectX 12 renderer – which found a suitable replacement in the Vulkan back-end – and the alternative CPU emulator JIT IL.
Continuing this year's earlier work on graphics performance-related matters, Dolphin developers implemented a solution for the long-standing problem known as shader compilation stuttering.The stuttering is caused by the emulator waiting for the graphics driver to compile shaders required for new environments or objects. The solution that the Ubershaders – in development since 2015 – present to the problem was to emulate the Wii's and GameCube's rendering pipeline by way of an interpreter running on the host system's graphics processor itself until a specialized shader has been compiled and can be used for future frames, at a lower cost to performance.
18 August 2017 marks the culmination of work started in late 2016 when the cross-platform MMORPG Dragon Quest X was added to the list of playable games just two months before support for the online functionality of the Wii version was dropped.The addition relied on a number of features that had been previously added to the emulator simply for the sake of accuracy, such as support for the Wii Shop Channel. Support for Wii File System, an encrypted file system that was originally designed for the Wii U, was also added after a rigorous amount of reverse engineering.
In the first half of 2018 Dolphin's developers deprecated the wxWidgets GUI toolkit and replaced it with one based on Qt because the original GUI toolkit's limitations stood in the way of implementing new features.Among the other newly introduced features were Asynchronous Shader Compilation similar to Ishiiruka, an auto-update feature, and integration with Discord.
In the summer of 2018 Dolphin's Vulkan renderer was brought to macOS via MoltenVKand the Android version was brought back to Google Play with monthly updates. In April 2019, Dolphin added 3 new features; unification of common video backends, a NetPlay Server browser, and Wii MotionPlus emulation. The DirectX 12 renderer was also brought back.
During the timeframe between November 2019 and January 2020 support for Windows 10 on ARM has been added. According to the developers, “[i]t turned out to be quite easy” because support for AArch64 hardware has already been present as part of the Android port.
In the May and June progress report for 2020 the Dolphin team unveiled a new compression format which was built upon the WIA format called RVZ.It is claimed that the new format compared to the NKit format RVZ is able to have properly emulated load times. Additionally it is claimed that while remaining lossless it comes very close to the filesizes of scrubbed WIA and GCZ files.
In the December 2020 and January 2021 progress report the Dolphin team reports that support had been added for Nintendo DS communication. While they state that this definitely would not lead to Dolphin and DS emulator operability, with physical hardware or with emulator, it fixes a crash present in Driver: San Francisco and other games that attempt to initiate DS communications.
In July 2021, the Dolphin team announced the integration of the mGBA emulator into Dolphin, allowing a Game Boy Advance emulator to run within Dolphin simultaneously to simulate GameCube-GBA connectivity. In addition to supporting transfer of data to and from emulated GBA titles, up to four Game Boy Advance instances can be simultaneously active in Dolphin at once, making multiplayer in games that require the GBA such as The Legend of Zelda: Four Swords Adventures and Final Fantasy Crystal Chronicles viable within Dolphin locally and via netplay.
Features of Dolphin include the ability to start games regardless of region, record tool-assisted speedruns,and the use of cheat codes with Action Replay and Gecko. Functions of the original GameCube controllers and Wii Remotes can be mapped to PC controllers. The emulator allows for the use of real GameCube controllers through the use of a USB adapter and Wii Remotes through Bluetooth connection. Controller expansions are also supported, including the Wii MotionPlus adapter, Wii Nunchuk, Classic controller, Guitar, Drums, and Turntable.
Two kinds of network play are supported by Dolphin: Emulated local multiplayerand Nintendo Wi-Fi Connection. The first only works among Dolphin users. It applies to games that by default have no online option. The second kind is for online gameplay for WFC supported Wii games with other Dolphin users as well as real Wii users.
Game progress can be saved on virtual GameCube Memory Cards, emulated Wii flash memory, and save states. Dolphin features a Memory Card Manager which allows transfer of save files to and from virtual GameCube memory cards.
In conjunction with an integrated Game Boy Advance emulator, Dolphin supports linking GameCube and Game Boy Advance titles
Like many other console emulators on PC, Dolphin supports arbitrary resolutions,whereas the GameCube and Wii only support up to 480p.
Dolphin can load customized texture maps.These can also be of higher resolution than the original textures. The emulator also has the ability to export a game's textures in order for graphic artists to modify them.
Dolphin can output stereoscopic 3D graphics on any platform Dolphin runs. Special hardware such as Nvidia 3D Vision is also supported. The ability to play games in stereoscopic 3D is a feature the original consoles never had,although Nintendo did originally plan to release a stereoscopic 3D add-on screen for the GameCube.
Additional features to further enhance the graphics quality are also available. Dolphin supports spatial anti-aliasing, anisotropic filtering, post-processing pixel shaders, and a widescreen hack for forcing widescreen output on games that do not support it natively.Games can also achieve higher-than-intended frames per second.
The Dolphin emulator has been well received by the gaming community, with the program's ability to run games at a higher resolution than the GameCube's native 480i and Wii's native 480p resolution receiving particular praise from the gaming community.PC Gamer editor Wes Fenlon called it "one of the only emulators to make many games better" and praised it for continually "making major, sometimes huge improvements to compatibility and performance". Wololo.net praised the system's high compatibility.
Dolphin has been used by some people as a tool to mitigate certain shortcomings for gamers; in 2012, business owner and father Mike Hoye, who had been playing The Legend of Zelda: The Wind Waker with his daughter and realized that the game referred to the main character as a male individual regardless of the inputted name, changed all of the game's cutscene dialogue text to refer to a girl instead of a boy by editing it through a hex editor, testing out the game's ISO using Dolphin.The emulator's Netplay feature has been described by ArsTechnica to be serving as an alternative to the discontinued Nintendo Wi-Fi Connection.
As of March 2017 [update] Dolphin has approximately 50000 daily active users, according to Dolphin's opt-in analytics.
A version of Dolphin made to emulate the Triforce arcade system titled Dolphin Triforce was in development by the Dolphin team, but was eventually disabled after development priorities shifted and the feature became unmaintained.Downloads of Dolphin Triforce are still available from the website and the source code is available from GitHub in a dedicated repository.
Dolphin VR is a third-party project aimed to extend Dolphin with the ability to play games “in Virtual Reality with accurate life-size scale, full FOV [field of view], a 3D HUD, independent aiming, and the ability to look around.”HTC Vive and Oculus Rift are supported.
PC Gamer tested a few games with Dolphin VR. Metroid Prime and F-Zero GX received especially high praise with one editor feeling “childlike wonder when playing Metroid Prime in VR” and another stating that “F-Zero [is] the thing that sold me on Dolphin VR”.
The latest release is 5.0and the source code is hosted on GitHub. The Free Software Foundation maintains the position that GPL software cannot be combined with Oculus SDK's license.
DolphiniOS is a third-party forkof Dolphin for Apple iOS. It is not available on the App Store, instead being distributed through a Cydia repository for jailbroken devices, an AltStore repository, or an IPA package for sideloading.
DolphiniOS used to be monetized by having beta releases be available earlier to Patreons; their Patreon program has been paused as of 6 October 2020 [update] and they claim that they are now permanently discontinuing this practice. Along with this they also announced that the project would be going on hiatus due to the lead developer going on break.
The first pre-release version went public on 9 December 2019with the 1.0 release following a week later. Version 2.0 has been released only a month later on 9 January 2020. The 2.0 version supports physical controllers, among other new features. Version 3.0 was released on the 20 June 2020. Notable new features include the ability to display your games in a grid, the ability to update the Wii System Menu like on the desktop version of Dolphin, the ability to install WADS to the Wii NAND and the ability to change disc while the emulator is running. Versions 3.1.1 and 3.2.0 beta 1 have been released since the hiatus announcement. Rumble and motion control support was added for DualShock 4s and DolphiniOS now functions properly for users of the Odyssey jailbreak.
A writer from Wololo.net wrote regarding the performance of DolphiniOS: “On my iPad Pro 10.5-inch (A10X), Mario Kart Wii works pretty well and playing through the first two tracks of the Mushroom Cup provided excellent results!"
A private review[ by whom? ] wrote that, on their iPad 7, Wii ports ran fine at 60 fps, with slight dips.
The source code is hosted on GitHub.
In reaction to the removal of DirectX 9 support, Dolphin developer Tino created an unofficial fork called Ishiiruka on 18 October 2013. The name is Japanese for Dall's porpoise. Although the focus is Windows with DirectX 9 and 11 support, Linux versions also exist.
The fork attempts to remedy performance problems present in Dolphin such as microstuttering due to shader compilation.Ishiiruka serves as base for the canonical client of the Super Smash Bros. Melee Netplay communities Faster Melee and SmashLadder.
John Linneman of Eurogamer talks in the October 2016 Metroid Prime episode of their Digital Foundry Retro video series about Ishiiruka. He compares playing Metroid Prime via Ishiiruka to playing it on original hardware, Wii and GameCube, and upstream Dolphin. Linneman argues that “the benefits [of emulation] kind of outweigh any of the smaller issues that you might encounter”. He continues to point out features of Ishiiruka that “allow you to push the visuals beyond what you can achieve using standard Dolphin. For instance, you can add lots of cool additional enhancements like depth of field, ambient occlusion, various types of color correction and a whole lot more […]. It's also worth noting that this version of Dolphin helps avoid the shader compilation stutters that plagued the official release of the emulator and it leads to a much more fluid experience.”
As with Dolphin, development is hosted on GitHub.
PrimeHack is a version of Dolphin created by shiiion that has been modified to play Metroid Prime: Trilogy on PC with keyboard and mouse controls.Two variants exist of PrimeHack – one is based on Ishiiruka, the other one on Dolphin proper. The latter is as of October 2019 the focus of development after it laid dormant between February and October 2019.
The source code is hosted on GitHub.
The Nintendo GameCube is a home video game console released by Nintendo in Japan and North America in 2001 and in PAL territories in 2002. The GameCube is Nintendo's entry in the sixth generation of video game consoles and the successor to their previous console, the Nintendo 64. The GameCube competed with Sony's PlayStation 2 and Microsoft's Xbox.
UAE is a computer emulator which emulates the hardware of Commodore International's Amiga range of computers. Released under the GNU General Public License, UAE is free software.
Metroid Prime is an action-adventure game developed by Retro Studios and published by Nintendo for the GameCube. Metroid Prime is the fifth main installment in the Metroid franchise and the first game in the series to use 3D computer graphics and a first-person perspective. Since exploration takes precedence over combat, Nintendo classifies the game as a "first-person adventure" rather than a first-person shooter. It was released in North America in November 2002, and in Japan and Europe the following year. On the same day as its North American release, Nintendo also released the Game Boy Advance game Metroid Fusion, marking the return of the Metroid series after an eight-year hiatus following Super Metroid.
UltraHLE is a discontinued emulator for the Nintendo 64. It was hailed by gamers as a massive step forward in emulation technology on its 1999 release. Emulating the N64 made it the first of the N64 emulators to run commercial titles at a playable frame rate on the hardware of the time, and the first emulator for a currently-sold console system, which drew Nintendo to seek legal action against the developers.
VisualBoyAdvance is a free emulator of the Game Boy, Game Boy Color, and Game Boy Advance handheld game consoles as well as of Super Game Boy and Super Game Boy 2.
The WaveBird Wireless Controller is a radio frequency-based wireless controller manufactured by Nintendo for use with the GameCube home video game console. Its name is a reference to Dolphin, the GameCube's codename during development. The WaveBird was available for purchase separately as well as in bundles with either Metroid Prime or Mario Party 4, which were exclusive to Kmart in the US.
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 custom resolutions up to 8192×8192, anti-aliasing, and texture filtering.
PCSX is a free and open-source video game console emulator which 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 fork of PCSX-Reloaded is PCSX-Redux.
The Japanese multinational consumer electronics company Nintendo has developed seven home video game consoles and multiple portable consoles for use with external media, as well as dedicated consoles and other hardware for their consoles. As of September 30, 2015, Nintendo has sold over 722.22 million hardware units.
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 the limitations of the original hardware, such as broader controller compatibility, timescale control, greater performance, clearer quality, easier access to memory modifications, one-click cheat codes, 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 more rare consoles.
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 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.
PPSSPP is a free and open-source PSP emulator for Windows, macOS, Linux, iOS, Android, Nintendo WiiU, Nintendo Switch, BlackBerry 10, MeeGo, Pandora, Xbox Series X, Xbox Series S, and Symbian with an increased focus on speed and portability. It was first 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.
RPCS3 is a free and open-source in-development video game console emulator and debugger for the Sony PlayStation 3. The emulator currently runs on Windows, Linux and FreeBSD 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 CPUs and features OpenGL and Vulkan as its back-end renderers.
Vulkan is a low-overhead, cross-platform API, open standard for 3D graphics and computing. Vulkan targets high-performance real-time 3D graphics applications, such as video games and interactive media. Compared to OpenGL, Direct3D 11 and Metal, Vulkan is intended to offer higher performance and more balanced CPU and GPU usage and provides a considerably lower-level API and parallel tasking for the application. In addition to its lower CPU usage, Vulkan is designed to allow developers to better distribute work among multiple CPU cores.
Cemu is a closed-source Wii U video game console emulator developed by Exzap who serves as the core and GPU developer, and Petergov as the core and audio emulation developer. It was initially released on October 13, 2015 for Microsoft Windows. Typically, the emulator updates once every two to four weeks, with Patreon supporters receiving updates a week before the public release. Though it is still under development, it is able to run certain games smoothly. It was successful at booting and running The Legend of Zelda: Breath of the Wild soon after its release.
Citra is an emulator of the handheld game console Nintendo 3DS, developed by Citra and contributors. It is mostly written in C++. Citra can run almost all homebrew games and many commercial games. Citra requires OpenGL version 3.3 or later to run. Citra's name is derived from CTR, which is the model name of the original 3DS. Citra does not work well with older PCs and needs to be run on a decently powerful x64 or ARM64 CPU.
The 2020 Nintendo data leak, also referred to as the Nintendo Gigaleak, is a series of leaks of data from Japanese video game company Nintendo on the anonymous imageboard website 4chan. The data release started in March 2018, but became most prominent in 2020. Ten main sets of data leaked on 4chan, ranging from game and console source code to internal documentation and development tools. The name "Gigaleak" mainly refers to the second leak on July 24, 2020, which was 3 gigabytes in size. The leaks are believed to have come from companies contracted by Nintendo in the design of these consoles, and/or from individuals previously convicted of intrusion into Nintendo systems. An earlier, much smaller leak had also occurred in 2018 which had the Nintendo Space World 1997 demos for Pokémon Gold and Silver leaked.
[…] Nintendo GameCube system actually had 3D-compatible circuitry built in. […] Nintendo GameCube could display 3D images if you attached a special LCD, but that special liquid crystal was really expensive back then.
what is the best way to play Metroid Prime today? […] I actually think in this case emulation is a pretty good option. Yes, I'm talking about Dolphin here which has come a long way – with games like Metroid Prime benefiting greatly in the process now. It's not yet flawless, mind you, but the benefits kind of outweigh any of the smaller issues that you might encounter. And, of course, while the standard version of Dolphin certainly gets the job done, I'm actually playing the game here using an unofficial Ishiiruka version of Dolphin which adds a ton of unique features that allow you to push the visuals beyond what you can achieve using standard Dolphin. For instance, you can add lots of cool additional enhancements like depth of field, ambient occlusion, various types of color correction and a whole lot more […]. It's also worth noting that this version of Dolphin helps avoid the shader compilation stutters that plagued the official release of the emulator and it leads to a much more fluid experience. All around and as you can see the end results are pretty much excellent the game is sharper and cleaner than ever before.
I'm happy to announce that PrimeHack is now offered on the Mainline Branch of Dolphin (aka latest, non ishiiruka). […] From now on we shall focus our updates onto the Mainline branch. This doesn't mean Ishiiruka has been abandoned, and it will still be supported. However it will no longer be our priority.