Editing GameCube emulators
Jump to navigation
Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 20: | Line 20: | ||
==Emulators== | ==Emulators== | ||
− | <div style=" | + | <div style="max-width:100%; overflow:auto;"> |
− | {| class="wikitable" style="text-align:center; | + | {| class="wikitable" style="text-align:center;" |
! scope="col"|Name | ! scope="col"|Name | ||
! scope="col"|Platform(s) | ! scope="col"|Platform(s) | ||
Line 43: | Line 43: | ||
| align=left|{{Icon|Windows|Linux|macOS}} | | align=left|{{Icon|Windows|Linux|macOS}} | ||
| [https://forums.dolphin-emu.org/Thread-unofficial-ishiiruka-dolphin-custom-version Dev] | | [https://forums.dolphin-emu.org/Thread-unofficial-ishiiruka-dolphin-custom-version Dev] | ||
− | |{{✗}} ||{{✓}} ||{{✓}} ||? ||{{✓}} ||{{ | + | |{{✗}} ||{{✓}} ||{{✓}} ||? ||{{✓}} ||{{✓}} ||{{~}} |
|- | |- | ||
| [https://github.com/emu-russia/pureikyubu Pureikyubu] (PlayCube) | | [https://github.com/emu-russia/pureikyubu Pureikyubu] (PlayCube) | ||
| align=left|{{Icon|Windows|Linux}} | | align=left|{{Icon|Windows|Linux}} | ||
| [https://github.com/emu-russia/pureikyubu/releases {{PureikyubuVer}}] | | [https://github.com/emu-russia/pureikyubu/releases {{PureikyubuVer}}] | ||
− | |{{✗}} ||{{~}} ||{{✗}} ||? ||{{✓}} ||{{ | + | |{{✗}} ||{{~}} ||{{✗}} ||? ||{{✓}} ||{{✓}} ||{{✗}} <small>(WIP)</small> |
|- | |- | ||
| [[Dolphin (Nintendo)|Dolphin <small>(Nintendo)</small>]] | | [[Dolphin (Nintendo)|Dolphin <small>(Nintendo)</small>]] | ||
Line 73: | Line 73: | ||
|- | |- | ||
!colspan="11"|Consoles | !colspan="11"|Consoles | ||
+ | |- | ||
+ | |[[Nintendont]] (任天堂NT) | ||
+ | | align=left|{{Icon|WiiU|Wii}} | ||
+ | | [https://github.com/FIX94/Nintendont git] | ||
+ | |{{~}} ||{{✗}} ||{{~}} ||[https://wiki.gbatemp.net/wiki/Nintendont_Compatibility_List 99%]<br/><small>1020 out of 1024 reported titles</small> ||{{✓}} ||{{✓}} ||{{✓}} | ||
|- | |- | ||
| Hagi | | Hagi | ||
Line 83: | Line 88: | ||
| [https://github.com/SirMangler/dolphin/releases 1.1.5]<ref group=N>Use these builds until [https://github.com/dolphin-emu/dolphin/pull/11339 this PR merge].</ref><br />[https://buildbot.libretro.com/stable/1.14.0/windows-msvc2019-uwp/x64/ libretro core]<ref group=N name=DolphinRA></ref> | | [https://github.com/SirMangler/dolphin/releases 1.1.5]<ref group=N>Use these builds until [https://github.com/dolphin-emu/dolphin/pull/11339 this PR merge].</ref><br />[https://buildbot.libretro.com/stable/1.14.0/windows-msvc2019-uwp/x64/ libretro core]<ref group=N name=DolphinRA></ref> | ||
|{{✗}}||{{✓}} ||{{Y}} ||[https://dolphin-emu.org/compat/ 97%] ||{{✓}} ||{{✓}} ||{{✓}} | |{{✗}}||{{✓}} ||{{Y}} ||[https://dolphin-emu.org/compat/ 97%] ||{{✓}} ||{{✓}} ||{{✓}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| DIOS MIOS (Lite) | | DIOS MIOS (Lite) | ||
Line 113: | Line 95: | ||
|} | |} | ||
</div> | </div> | ||
− | + | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<references group=N /> | <references group=N /> | ||
===Comparisons=== | ===Comparisons=== | ||
− | + | ;[[Dolphin]]: The emulator of choice for the GameCube and the first Wii emulator. It's updated on a near-daily basis and has very good emulation of almost every game, though some games have known bugs on their issue trackers. It is the first emulator to [https://dolphin-emu.org/blog/2016/09/06/booting-the-final-gc-game/ boot the full game catalog of a sixth-generation home console] (Before any emulator for the same generation rivals like the Dreamcast, PlayStation 2, and Xbox) and did so on September 2016. The developers maintain a wiki containing known bugs, tips, user-provided tests, and much more for every game. | |
− | |||
− | + | ;[[Ishiiruka-Dolphin]]: A fork of Dolphin optimized towards performance at the cost of accuracy and stability in the process. | |
− | + | ;Pureikyubu: An open-source Nintendo GameCube emulator which initially started development under the name Dolwin in 2004; it could boot and run some commercial games and demos. Nowadays, Pureikyubu is designed to be a research emulator for developers, with accuracy being a priority. | |
− | + | ;[[Dolphin (Nintendo)]]: Nintendo made an emulator for Windows that was also called Dolphin. This official program does not run commercial games and has no connection to the open-source project. | |
− | + | ;Hagi: An [[Official emulators|official]] GameCube/Wii emulator developed by Nintendo European Research & Development (NERD). Hagi has been used primarily for re-releases [[Emulators on Switch|on the Switch]], such as ''Super Mario Sunshine'', ''Super Mario Galaxy'', ''Pikmin'', and ''Pikmin 2''. | |
− | + | ;[[Nintendont]]: While not technically an emulator, Nintendont is a [[compatibility layer]] that allows you to play GameCube games on the Wii and even the Wii U. It's compatible with nearly all GameCube titles (and Triforce games, too) and supports extra features such as memory card emulation along with support for additional controller input options such as the USB GameCube controller adapter, Classic Controller Pro, Wii U Pro Controller, and even the Wii U GamePad. | |
− | |||
− | + | ;DIOS MIOS (Lite): Another compatibility layer for the Wii (but NOT Wii U) that allows you to play GameCube games. The main version allows users to load games off of a USB device, while the "Lite" version loads games from an SD card. Nintendont serves as a direct successor to this project, making DIOS MIOS entirely obsolete. | |
==Hardware features and peripherals== | ==Hardware features and peripherals== | ||
− | <div style=" | + | <div style="max-width:100%; overflow:auto;"> |
− | {| class="wikitable" style="text-align:center;vertical-align:middle; | + | {| class="wikitable" style="text-align:center; vertical-align:middle;" |
|- style="font-weight:bold;" | |- style="font-weight:bold;" | ||
! Name | ! Name | ||
Line 209: | Line 164: | ||
| {{✗}} | | {{✗}} | ||
| {{✗}} | | {{✗}} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| [[#Game Boy Player|Game Boy Player]] | | [[#Game Boy Player|Game Boy Player]] | ||
Line 228: | Line 177: | ||
:To boot the GameCube's BIOS and IPL, you need a dump from real hardware. Dolphin does not require it to load games but can be set to use it if desired. Current development builds have introduced a feature allowing users to load the BIOS directly from the interface in the Tools list without needing to load a game. If you're on the current stable release, use XFB Virtual and disable "Skip BIOS" in the GameCube options. You will have to load a GameCube title so that the startup animation begins, and like on the original console, you hold the first controller's A-button down and the system will send you to the main menu instead of booting the game. You can then switch to another game with Change Disc, or you can explore the BIOS. | :To boot the GameCube's BIOS and IPL, you need a dump from real hardware. Dolphin does not require it to load games but can be set to use it if desired. Current development builds have introduced a feature allowing users to load the BIOS directly from the interface in the Tools list without needing to load a game. If you're on the current stable release, use XFB Virtual and disable "Skip BIOS" in the GameCube options. You will have to load a GameCube title so that the startup animation begins, and like on the original console, you hold the first controller's A-button down and the system will send you to the main menu instead of booting the game. You can then switch to another game with Change Disc, or you can explore the BIOS. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===GC/GBA Cable=== | ===GC/GBA Cable=== | ||
Line 265: | Line 205: | ||
==Enhancements== | ==Enhancements== | ||
− | <div style=" | + | <div style="max-width:100%; overflow:auto;"> |
− | {|class="wikitable" style="text-align:center;vertical-align:middle; | + | {|class="wikitable" style="text-align:center; vertical-align:middle;" |
|- style="font-weight:bold;" | |- style="font-weight:bold;" | ||
! colspan=2 | Name | ! colspan=2 | Name | ||
Line 289: | Line 229: | ||
| {{?}} | | {{?}} | ||
|- | |- | ||
− | | Ray-tracing | + | | Ray-tracing |
− | | colspan=2 | <small>Implementing ray-tracing in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future.<br/>However you can try "[[Shaders_and_filters#Notable_ReShade_shaders|Screen-Space Ray Traced Global Illumination]]" shader using ReShade.[https://www.youtube.com/watch?v=9IlqfrJwKr4 | + | | colspan=2 | <small>Implementing ray-tracing in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future.<br/>However you can try "[[Shaders_and_filters#Notable_ReShade_shaders|Screen-Space Ray Traced Global Illumination]]" shader using ReShade.<br/>[https://www.youtube.com/watch?v=9IlqfrJwKr4 Demonstration]</small> |
|- | |- | ||
| Pre-rendering AA<br/><small>(MSAA, SSAA)</small> | | Pre-rendering AA<br/><small>(MSAA, SSAA)</small> | ||
Line 296: | Line 236: | ||
| {{?}} | | {{?}} | ||
|- | |- | ||
− | | Super-resolution techniques<br/><small>([https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS.md DLSS], | + | | Super-resolution techniques<br/><small>([https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS.md DLSS], XeSS and FSR 2+)</small> |
| colspan=2 | <small>Requires access to the depth buffer and temporal data like motion-vectors so it's quite challenging and unlikely to be feasible in the near future.<br/>Besides, any GPU that can use DLSS can run Dolphin at 8k native with ease anyway.</small> | | colspan=2 | <small>Requires access to the depth buffer and temporal data like motion-vectors so it's quite challenging and unlikely to be feasible in the near future.<br/>Besides, any GPU that can use DLSS can run Dolphin at 8k native with ease anyway.</small> | ||
|- | |- | ||
Line 312: | Line 252: | ||
|- | |- | ||
| [https://blurbusters.com/frame-generation-essentials-interpolation-extrapolation-and-reprojection/ Frame generation technologies]<br/><small>([https://store.steampowered.com/app/993090/Lossless_Scaling/ LSFG], [https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS_G.md DLSS-G], [https://www.techpowerup.com/316835/extrass-framework-paper-details-intels-take-on-frame-generation ExtraSS] and [https://community.amd.com/t5/gaming/amd-fluid-motion-frames-is-out-now-on-amd-radeon-rx-7000-series/ba-p/634372 AFMF])</small> | | [https://blurbusters.com/frame-generation-essentials-interpolation-extrapolation-and-reprojection/ Frame generation technologies]<br/><small>([https://store.steampowered.com/app/993090/Lossless_Scaling/ LSFG], [https://github.com/NVIDIAGameWorks/Streamline/blob/main/docs/ProgrammingGuideDLSS_G.md DLSS-G], [https://www.techpowerup.com/316835/extrass-framework-paper-details-intels-take-on-frame-generation ExtraSS] and [https://community.amd.com/t5/gaming/amd-fluid-motion-frames-is-out-now-on-amd-radeon-rx-7000-series/ba-p/634372 AFMF])</small> | ||
− | | colspan=3 | <small>Implementing frame generation technology in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future, however post-processing techniques such as [[Wikipedia:Motion_interpolation|motion interpolation]] is quite possible. [[Input_lag|Input latency]] will be a crucial factor, but its impact likely varies depending on the specific technique employed, it's recommended to use '''after applying the "Internal Framerate Hack | + | | colspan=3 | <small>Implementing frame generation technology in an emulator is unfortunately quite challenging and unlikely to be feasible in the near future, however post-processing techniques such as [[Wikipedia:Motion_interpolation|motion interpolation]] is quite possible. [[Input_lag|Input latency]] will be a crucial factor, but its impact likely varies depending on the specific technique employed, it's recommended to use '''after applying the "Internal Framerate Hack"'''.<br/>While '''[https://youtu.be/5mbUTfCRIF0 AFMF]''' or '''LSFG''' can be used with Dolphin, please be aware that some visual glitches and artifacts may occur at this time. |
|- | |- | ||
| Preload [[Wikipedia:Template:Disk_images|optical disc image]] to RAM<br/><small>For users with sluggish multi-platter HDDs or plagued by horrible seek times, this enhancement '''might''' offer smoother experience, potentially reduced power consumption; it also shines when disc images reside on a network drive.<br/>Although keep in mind that preloading image would take some time, and it will require additional amount of RAM capacity.</small> | | Preload [[Wikipedia:Template:Disk_images|optical disc image]] to RAM<br/><small>For users with sluggish multi-platter HDDs or plagued by horrible seek times, this enhancement '''might''' offer smoother experience, potentially reduced power consumption; it also shines when disc images reside on a network drive.<br/>Although keep in mind that preloading image would take some time, and it will require additional amount of RAM capacity.</small> | ||
Line 326: | Line 266: | ||
| {{?}} | | {{?}} | ||
|- | |- | ||
− | | [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br/><small>(Sharp bilinear, Lanczos and | + | | [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br/><small>(Sharp bilinear, Lanczos and FSR 1)</small> |
| {{Y}} | | {{Y}} | ||
| {{?}} | | {{?}} | ||
Line 490: | Line 430: | ||
[[Category:Nintendo consoles]] | [[Category:Nintendo consoles]] | ||
[[Category:GameCube emulators|*]] | [[Category:GameCube emulators|*]] | ||
+ | [[Category:Very early emulation (MAME)]] | ||
[[Category:PowerPC-based]] | [[Category:PowerPC-based]] | ||
− |