Difference between pages "Nintendo 3DS emulators" and "Recommended PS1 plugins"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
m (Emulators)
 
m (Input)
 
Line 1: Line 1:
{{Infobox console
+
The PSEmu Pro plugin spec is used for dozens of emulators and many plugins were written for them. While the point of the spec is to allow a plugin to work in all emulators, various extensions or hacks have been added to some plugins and emulators causing incompatibilities.
|title = Nintendo 3DS
 
|logo = 3ds.png
 
|developer = [[:Nintendo]]
 
|type = [[:Category:Handheld consoles|Handheld game console]]
 
|generation = [[:Category:Eighth-generation video game consoles|Eighth generation]]
 
|release = 2011
 
|discontinued = 2020
 
|predecessor = [[Nintendo DSi emulators|Nintendo DSi]]
 
|emulated = {{✓}}
 
}}
 
The '''[[wikipedia:Nintendo 3DS|Nintendo 3DS]]''' is an eighth-generation handheld game console by Nintendo, released on March 27, 2011 for {{inflation|USD|249|2011}}. The original model and the 2DS had a dual-core ARM11 MPCore at 268 MHz and a single-core ARM9, 128MB of RAM and 6MB of VRAM, and a DMP PICA200 GPU. The New 3DS and New 2DS XL models upgrade this to an 804 MHz quad-core ARM11 and 256MB of RAM, along with an extra pair of shoulder buttons and a right analogue stick.
 
  
The most notable feature of this console is the use of [https://en.wikipedia.org/wiki/Autostereoscopy autostereoscopic] (glasses-free) 3D, which can be configured using a slider. This was omitted on the cost-reduced 2DS and New 2DS XL models, which was released due to eye health concerns with children whom Nintendo advised not to use the 3DS's stereoscopic mode (though it is speculated that said advisories were more for liability reasons in case of a health-related lawsuit).
+
The following are the recommended plugins to use and comparisons between them. For a more complete list of plugins, see [[PS1 Plugins]].
  
__TOC__
+
==Emulator==
 +
The two recommended plugin emulators are [[PCSX-Reloaded|PCSX-R]] and [[ePSXe]]. Since ePSXe added support for most PCSX-R exclusive plugins with 2.0, the main difference between them now is that PCSX-R supports CPU overclocking ([https://github.com/SonofUgly/PCSX-Reloaded SonofUgly's fork] only) though ePSXe introduced it in later versions.
  
==Emulators==
+
==BIOS==
{| class="wikitable" style="text-align:center;"
+
'''Don't use simulated BIOS''', download and use a [[Emulator Files#PlayStation|real BIOS]].
! scope="col"|Name
 
! scope="col"|Platform(s)
 
! scope="col"|Latest Version
 
! scope="col"|Open-Source
 
! scope="col"|[[libretro|Libretro Core]]
 
! scope="col"|Active
 
! scope="col"|[[Recommended Emulators|Recommended]]
 
|-
 
!colspan="7"|PC / x86
 
|-
 
|[[Citra]]
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://citra-emu.org/download/ Nightly]
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|Vvctre
 
|align=left|{{Icon|Windows|W7|Linux}}
 
|{{51.1.0}}
 
|{{✓}}
 
|{{✗}}
 
|{{?}}
 
|{{~}}
 
|-
 
|Corgi3DS
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/PSI-Rockin/Corgi3DS/ git]
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[3dmoo]]
 
|align=left|{{Icon|Windows|Linux}}
 
|[https://github.com/plutooo/3dmoo/ git]
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|[[TronDS]]
 
|align=left|{{Icon|Windows|Linux}}
 
|[http://trondsemu.byethost15.com/downloads.html 1.0.0.5]
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
|LemonLime
 
|align=left|{{Icon|Windows|Linux|macOS}}
 
|[https://github.com/Cyuubi/LemonLime/ git]
 
|{{✓}}
 
|{{✗}}
 
|{{✗}}
 
|{{✗}}
 
|-
 
!colspan="9"|Mobile / ARM
 
|-
 
|[[Citra]]
 
|align=left|{{Icon|Android}}
 
|[https://play.google.com/store/apps/details?id=org.citra.citra_emu Beta 15]<br/>[https://github.com/citra-emu/citra-android git]
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|{{✓}}
 
|-
 
|[[Citra_MMJ_(Unofficial)|Citra-MMJ]] <small>(Unofficial)</small>
 
|align=left|{{Icon|Android}}
 
|[https://github.com/weihuoya/citra/releases git]
 
|{{✓}}
 
|{{✗}}
 
|{{✓}}
 
|{{~}}<small> (WIP)</small>
 
|}
 
  
===Comparisons===
+
==Video==
;[[Citra]]:An open-source Nintendo 3DS emulator made by experienced emulator developers. The devs insist that it's still experimental, but as of mid-2019 around half of all games are fully playable with minor or no issues. [https://citra-emu.org/entry/announcing-citra-android/ An official Android version was released in May of 2020].
+
*[http://www.ngemu.com/threads/160319 PeteOpenGL2Tweak]: A mod for [http://www.pbernert.com/html/gpu.htm Pete's OpenGL2 2.9] plugin. Uses dll injection due to Pete's OpenGL2 2.9 being closed source. While Pete's OpenGL2 2.9 is the most accurate GPU plugin, it is missing many features and those are what PeteOpenGL2Tweak adds; most notably the ability to render at resolutions higher than 1280x960, but it also adds GTE accuracy, proper aspect correction, true vsync, and xBRZ texture scaling.
  
;Vvctre
+
* PEOPS OpenGL 1.78 - Comes with [[PCSX-Reloaded|PCSX-R]]. Fork of the source release of an older version of Pete Bernert's GPU plugin. While it was the first plugin to add GTE accuracy and has many modern features, like arbitrary rendering resolutions, the core emulation doesn't seem to have improved over the years, at least not to the level of Pete's OpenGL2 2.9. Some time ago it was broken so that most games crash on Windows and was never fixed, though still works alright on Linux and macOS. Still, there's not much reason to use this over PeteOpenGL2Tweak, except for the fact that getting PeteOpenGL2Tweak to work on Linux or macOS is a major hassle, as it involves setting up 32bit support and compiling everything as 32bit so it can work with the closed source 2.9 plugin that only provides 32bit x86 binaries.
:Based on Citra. made by valentin. optimized for Luigi's Mansion 2(To run this game smoothly, turn on Disk Shader Cache, put the CPU clock speed to 80% and the CPU tick speed to 21000%). Also emulates the 3DS OS. The project's Github page no longer exists.
 
  
;[[3dmoo]]:Another open-source Nintendo 3DS emulator, made by experienced developers in the DS hacking scene. It was released shortly after Citra and received similar progress for a few months, but was eventually aborted by its authors after a while.
+
*[http://emu-russia.net/en/files/plugins/psx/ Edgbla's gpuBladeSoft] <sup>[http://forum.emu-russia.net/viewtopic.php?f=29&t=1188 homepage]</sup> - Latest with HD resolution support: [http://www.emutalk.net/threads/54527-edgbla-s-gpuBladeSoft-v1-42a 1.42a] - Mostly interesting for its texture replacement feature, added in 1.44. [https://youtu.be/zGnLRR9kyvc A video] from the dev shows texture perspective correction working, but this has never been released. Other than texture replacement, there's not much reason to use this over [[Mednafen|mednafen-libretro]] (emulator) since it added increased IR, as they are both software renderers(slow) and Mednafen is more accurate. The configuration tool requires GTK3 runtime DLLs found [http://www.sendspace.com/file/aje17z here (link is dead)]
;[[TronDS]]:A closed-source Nintendo 3DS emulator, presumably made by the iDeaS author. Little is known about it other than that it can run simple homebrew. It cannot be used for playing games.
 
  
;Corgi3DS:An unique 3DS emulator designed for macOS systems. Its GitHub activity started on [https://github.com/PSI-Rockin/Corgi3DS/commit/1b81c7e00c9a7a73f2da12d07ec3a9e4bc69c6ac May 5, 2019]. Main programmer is a self-proclaimed dog lover and has previously created CorgiDS and DobieStation, though the former seemed to be abandoned. Corgi3DS is mainly indigenous but the preliminary [https://github.com/PSI-Rockin/Corgi3DS/commit/a60b06683495e4e8fd0c170ec4ca8c453ce31609 Wi-Fi code] was ported from [[melonDS]]' code.(project on a  indefinite hiatus, PSI said this about the matter "Haven't worked on it in several months, it's basically a hobby project of mine that I touch when I feel the urge").
+
==Audio==
 +
*[http://www.mediafire.com/?0ewt3ip40h9ir3r P.E.Op.S 1.10 beta] - Recommended for most games and setups (in order to use turbo, the mode needs to be set to 2: Async Simple; it will not work with 3 or 4).
 +
*[http://www.mediafire.com/?2pj51p250zmp2pr Eternal SPU 1.5] - Useful for the few games/PCs that have issues with P.EOp.S.
  
==Emulation issues==
+
==Input==
Citra currently can't emulate any of the 3DS's online features aside from LAN multiplayer. It can't connect to Nintendo's servers but users can create rooms and play through the internet.
+
*LilyPad [http://buildbot.orphis.net/pcsx2/ latest SVN] - The plugin comes with [[PCSX2]] (go into the plugin folder and pull out the file that says lilypad.dll and put it in the folder of the emulator you plan on using). Set keyboard input to raw also, otherwise you won't be able to use hotkeys. Also ensure that a folder titled "inis" is created in the folder of your emulator if you want to save your preferences.
 +
:Use [[SCP Driver Package|LilyPad-SCP]] if you're using a PS3 controller (which is based on the [[SCP Driver Package]])
 +
*[http://forums.pcsx2.net/Thread-Pokopom-KrossX-s-Pad-Plugin Pokopom XInput Pad Plugin] XInput plugin for PS1, PS2, and DC emulators. It's a light-weight plugin with a lot of options, such as the ability to switch the bindings of the cross and circle buttons around for Japanese imports. It doesn't have any button binding options, but since it's meant for mapping an emulated DualShock controller to an actual DualShock controller, you don't really need to rebind anything. You can also edit the analog stick deadzones.
 +
*[http://forums.pcsx2.net/Thread-Nuvee-PS1-PS2-input-plugin-supporting-lightguns-by-Shalma Nuvee] is a plugin for emulating PS1 mouse and Guncon. Lilypad doesn't support PS1 mouse and Epsxe has an internal plugin for mouse support. In order to emulate the mouse peripheral in PCSX-R, you need this plugin.
  
Corgi3ds currently can't run any game without heavy stuttering.
+
[http://www.mediafire.com/?7rtn99pw7a5v2hv This pack] has preconfigured versions of both the regular and SCP versions of LilyPad.
  
Citra emulates the home menu although you can't launch anything on it (use vvctre for the os emulation).
+
==Plugin-less Alternatives==
 +
These PS1 emulators do not use plugins, in case you want something that ''just works'' and is more accurate.
 +
*[[RetroArch]] (Mednafen PSX)
 +
*[[Mednafen]] PSX
 +
*[[XEBRA]]
 +
*[[DuckStation]]
  
Currently there is no full screen support in linux vvctre, valentin said he can't fix it.
+
[[Category:Recommendations]]
 
 
==Game images==
 
===3DS vs. CIA===
 
<!--this section is pretty inaccurate-->
 
There are two big types of 3DS game images currently:
 
;NCSD-type: Includes '''.CCI''' (CTR Cart Image), aka '''.3DS''' - data on physical carts, can be executed right off the bat, not used much since no one bothered to develop a CFW solution to load them yet (besides converting them to CIA) and only overpriced flashcarts (Gateway/Sky3DS) can load them.
 
;NCCH-type: Includes '''.CIA''' (CTR Importable Archive) and '''.CXI''' - installers that unpack game data to the SD card or the 3DS NAND memory. Some homebrew apps (FBI, DevMenu) can install CIA files on 3DS systems with CFW installed. Digital games are often distributed as CIAs.
 
 
 
*Note that CTR (Citrus) is the internal code names for the 3DS.
 
 
 
Due to one format being so far restricted to overpriced flashcarts and the very slow Citra development (meaning playing on a real 3DS is still the preferred way to go), the CIA format is preferred in many sharing websites, downloader tools and even tools to dump your own games.
 
 
 
However, converting a CIA image to 3DS format (and vice-versa) is still possible with no loss of content. Read the Encryption section below for a guide.
 
 
 
Some outdated dumping utilities intended for use with Citra (like braindump) produce damaged decrypted 3DS images that can't be easily converted back. No known solution exists so far to fix those dumps.
 
 
 
===Encryption===
 
Most dumps online are also encrypted. This encryption poses no problem for playing game images on a real 3DS since it can deal with that encryption with internal keys included in the bootrom, but becomes a problem when trying to emulate them on PC. '''Citra requires additional encryption keys to play encrypted games.''' If you want to play encrypted games on Citra without these keys, you'll have to convert your game images to the decrypted format.
 
 
 
Formerly, decrypting those ROMs used to require real 3DS hardware (bafflingly enough, Citra devs still ask users to do this even nowadays). It required files generated by a real 3DS called '''xorpads''' unique to that game version, using the encryption engine within the 3DS. After this part, these xorpads (which are big) can be used with PC tools (or other 3DS-based homebrew) to produce the decrypted game image. After that, some 3DS homebrew (Decrypt9, GodMode9) included tools to directly convert encrypted images to decrypted images with a single button press, but those still require a real 3DS.
 
 
 
The game changer was the sighax exploit, allowing to dump the 3DS bootrom which includes these encryption keys. This file can be downloaded from the [[Emulator Files#Nintendo 3DS|Emulator Files]] page. You can then use a program like '''[https://gbatemp.net/threads/tutorial-extract-decrypt-games-nand-backups-and-sd-contents-with-fuse-3ds.499994/ fuse-3ds]''' to decrypt games using this file. Simply place boot9.bin in the same folder, run the program, mount the encrypted .cia or .3ds, and find the '''decrypted.cxi''' file inside (usually in the first folder). Citra should be able to load this file without issues.
 
 
 
Due to these keys being available, Citra can now play encrypted games (3ds or CIA) without decrypting them. Read this page
 
[https://citra-emu.org/wiki/aes-keys/]. Then, go to this reddit page and copy the code from second comment (credit floppydoppy2)
 
[https://www.reddit.com/r/CemuPiracy/comments/gpo2ey/aes_key_nintendo_3ds_title_keys_for_citra/]. Copy it and make a new .TXT file named 'aes_keys.txt'
 
Place this txt file in the sysdata folder of Citra's user directory. This key file is already included in the 3DS Shared Data download in the Emulator Files page.
 
 
 
 
 
{{Nintendo}}
 
 
 
[[Category:Consoles]]
 
[[Category:Handheld consoles]]
 
[[Category:Nintendo consoles]]
 
[[Category:Eighth-generation video game consoles]]
 
[[Category:Nintendo 3DS emulators|*]]
 

Revision as of 15:38, 13 November 2021

The PSEmu Pro plugin spec is used for dozens of emulators and many plugins were written for them. While the point of the spec is to allow a plugin to work in all emulators, various extensions or hacks have been added to some plugins and emulators causing incompatibilities.

The following are the recommended plugins to use and comparisons between them. For a more complete list of plugins, see PS1 Plugins.

Emulator

The two recommended plugin emulators are PCSX-R and ePSXe. Since ePSXe added support for most PCSX-R exclusive plugins with 2.0, the main difference between them now is that PCSX-R supports CPU overclocking (SonofUgly's fork only) though ePSXe introduced it in later versions.

BIOS

Don't use simulated BIOS, download and use a real BIOS.

Video

  • PeteOpenGL2Tweak: A mod for Pete's OpenGL2 2.9 plugin. Uses dll injection due to Pete's OpenGL2 2.9 being closed source. While Pete's OpenGL2 2.9 is the most accurate GPU plugin, it is missing many features and those are what PeteOpenGL2Tweak adds; most notably the ability to render at resolutions higher than 1280x960, but it also adds GTE accuracy, proper aspect correction, true vsync, and xBRZ texture scaling.
  • PEOPS OpenGL 1.78 - Comes with PCSX-R. Fork of the source release of an older version of Pete Bernert's GPU plugin. While it was the first plugin to add GTE accuracy and has many modern features, like arbitrary rendering resolutions, the core emulation doesn't seem to have improved over the years, at least not to the level of Pete's OpenGL2 2.9. Some time ago it was broken so that most games crash on Windows and was never fixed, though still works alright on Linux and macOS. Still, there's not much reason to use this over PeteOpenGL2Tweak, except for the fact that getting PeteOpenGL2Tweak to work on Linux or macOS is a major hassle, as it involves setting up 32bit support and compiling everything as 32bit so it can work with the closed source 2.9 plugin that only provides 32bit x86 binaries.
  • Edgbla's gpuBladeSoft homepage - Latest with HD resolution support: 1.42a - Mostly interesting for its texture replacement feature, added in 1.44. A video from the dev shows texture perspective correction working, but this has never been released. Other than texture replacement, there's not much reason to use this over mednafen-libretro (emulator) since it added increased IR, as they are both software renderers(slow) and Mednafen is more accurate. The configuration tool requires GTK3 runtime DLLs found here (link is dead)

Audio

  • P.E.Op.S 1.10 beta - Recommended for most games and setups (in order to use turbo, the mode needs to be set to 2: Async Simple; it will not work with 3 or 4).
  • Eternal SPU 1.5 - Useful for the few games/PCs that have issues with P.EOp.S.

Input

  • LilyPad latest SVN - The plugin comes with PCSX2 (go into the plugin folder and pull out the file that says lilypad.dll and put it in the folder of the emulator you plan on using). Set keyboard input to raw also, otherwise you won't be able to use hotkeys. Also ensure that a folder titled "inis" is created in the folder of your emulator if you want to save your preferences.
Use LilyPad-SCP if you're using a PS3 controller (which is based on the SCP Driver Package)
  • Pokopom XInput Pad Plugin XInput plugin for PS1, PS2, and DC emulators. It's a light-weight plugin with a lot of options, such as the ability to switch the bindings of the cross and circle buttons around for Japanese imports. It doesn't have any button binding options, but since it's meant for mapping an emulated DualShock controller to an actual DualShock controller, you don't really need to rebind anything. You can also edit the analog stick deadzones.
  • Nuvee is a plugin for emulating PS1 mouse and Guncon. Lilypad doesn't support PS1 mouse and Epsxe has an internal plugin for mouse support. In order to emulate the mouse peripheral in PCSX-R, you need this plugin.

This pack has preconfigured versions of both the regular and SCP versions of LilyPad.

Plugin-less Alternatives

These PS1 emulators do not use plugins, in case you want something that just works and is more accurate.