Difference between pages "Save disk space for ISOs" and "Emulators on 3DS"

From Emulation General Wiki
(Difference between pages)
Jump to navigation Jump to search
(GameCube / Wii: The information was out-of-date)
 
(MegaDrive/Genesis/MasterSystem/32X/Sega CD)
 
Line 1: Line 1:
Disc images (commonly known as ISOs, but ISO is actually a specific format) are faithful software recreations of game discs (when made correctly). However, with disc sizes ranging from 700 MB (CD), 1.4 GB (GC Mini-DVD), 4.7 GB (single-layered DVD), and 25 GB (Blu-Ray), they can get pretty taxing for storage, especially when newer generations of consoles games are getting bigger in file sizes.
+
{{Infobox console
 +
|title = Nintendo 3DS
 +
|logo = 3ds.png
 +
|developer = Nintendo
 +
|type = [[:Category:Emulators on handheld consoles|Handheld game console]]
 +
|generation = [[:Category:Emulators on eighth-generation consoles|Eighth generation]]
 +
|release = 2011
 +
|discontinued = 2020
 +
|predecessor = [[Emulators on DS|Nintendo DS]]
 +
|emulated = {{✓}}
 +
}}
  
It wouldn't be so bad if not for the fact that the game data itself is often times only a fraction of the actual disc size - for instance, the ''Super Mario 25th Anniversary'' Wii disc itself is a 4.7GB, when really the actual game data is only a single SNES ROM (12 MB of useful data, to be precise) and nothing else. Naturally, one would want to trim this extra "fat" as much as possible, which is what this page aims to help to achieveMost of the information here is based partially on this [https://www.reddit.com/r/emulation/comments/3g933n/guide_reduce_the_size_of_your_ps2_gc_wii_x360_ds/ guide].
+
Because of the homebrewing scene the 3DS has had, you can install a variety of emulators. Currently, the New 3DS is capable of running much faster than the older models, making it a much more ideal platform for emulation, but despite this there are still some emulators that have issues regardlessFor more information on how to homebrew your 3DS, visit [https://3ds.hacks.guide/ 3ds.hacks.guide].
  
'''How does one lighten ISO / ROM dumps?'''
+
==Multi-Systems==
 +
===[[RetroArch]]===
  
There are many ways, some methods alter the data forever while others can be converted back and forth with generally no loss. Some conversions are only playable on specific emulators and may not work on real hardware depending on the console and the method used.  It's important to take all this into consideration before attempting as most of these are console-specific.
+
There are [https://gbatemp.net/threads/retroarch-emulation-thread-nightly-builds-included.400913/ preliminary 3DS ports]
  
'''Archive-quality''' dumps are ones that when converted back to its original state, will have the same checksum as the official uncompressed release. Compressions that can't be reversed, or those that can be but will have missing or altered content whether it interferes with functionality (rebuilt table of content) or not, are not archive-quality. For example, the WBFS format, used for shrinking Wii discs, is not archive-quality since it may be missing padding content and upgrade partitions (which have their uses in 3DS/Wii modding) compared to an intact, uncompressed dump.
+
<B><code> [http://buildbot.libretro.com/stable/ Stable]</B></code>
  
==Applicable to All Platforms==
+
<B><code> [http://buildbot.libretro.com/nightly/nintendo/3ds/ Nightly]</B></code>
===Audio-CD===
 
PCs, Sega-CD, PC-Engine, PlayStation, Sega Saturn... what do these systems all have in common?  They all use a regular CD format! Game developers often stored music and other sounds using the Audio-CD format, but it was terribly inefficient when it comes to disc storage as it also had to store the actual game along with the sound files (commonly known as a "mixed CD"), and these sound files are never compressed because the Audio-CD standard simply doesn't allow for sound compression. To put it in perspective, a 700 MB CD containing nothing but Audio-CD data can hold at most around 80 minutes worth of sound data, meaning games that used a lot of sounds were limited in size.
 
  
Because these mixed CDs are difficult to properly archive just by using standard .ISO files, data-dumping software will usually do one of two things as a workaround:
+
<B><code> [https://github.com/libretro GitHub]</code></B>
: '''Full Dump:''' BIN/ISO + CUE
 
:* BIN/ISO is the full disc data, including Audio-CD sound data and game data
 
:* CUE is the datasheet file
 
: '''Light Dump:''' ISO + MP3/WAV + CUE
 
:* ISO is the disc data with only the game data
 
:* MP3/WAV is the sound data from the Audio-CD, but these formats take much less disk space
 
:* CUE is the datasheet file
 
  
Developers have long since stopped using the Audio-CD format, and instead prefer custom audio formats that come included in the "game data" part of the disc. By the launch of the fifth generation CD-based consoles, i.e. the [[PlayStation emulators|PS1]] & the [[Sega Saturn emulators|Saturn]], it was more common than not to just use the Audio-CD part for messages like "Don't put this in a CD player!" and little else. That being said, there were still quite a few fifth-gen games that used Audio-CD data for their soundtracks, such as ''Vib-Ribbon'' and the ''Wipeout'' trilogy on the PS1, and ''Battle Garegga'' and ''Daytona USA'' on the Saturn.
+
BIOS : <code><B> [https://github.com/Abdess/retroarch_system Download] </code></B>
  
* '''Archive-quality dump?''' No (unless audio is converted to and from uncompressed formats, which is unlikely)
+
{| class="wikitable sortable" style="text-align:center;"
* '''Gain:''' Several hundreds of MBs to just a few dozens, depending on how much this specific game relies on the Audio-CD sound format
+
|+ Available cores
* '''Tools Used:''' Load the BIN+CUE using a virtual drive, then use a CD dumping tool
+
! Cores
* '''Can be reverted?''' Yes, just burn the ISO+MP3/WAV+CUE again using a CD burner tool (ImgBurner) either to a physical disk or as an ISO+BIN file. Lossy audio formats will result in data loss.
+
! Game/System
* '''Playable on Hardware?''' No, but can be reverted to be
+
! Working?
* '''Playable on Emulators?''' Yes (use virtual drive if needed). Some aren't compatible with MP3, if that's the case, convert them to WAV with MP32WAV. You may need Sega Cue Maker.
+
! class="unsortable"|Notes
 +
|-
 +
| [[FinalBurn Alpha]] 2012
 +
| rowspan="5" style="text-align: center;" | [[Arcade emulators|Arcade]]
 +
| {{✓}}
 +
| <ul><li>Uses FBA v0.2.97.30 ROM sets</li><li>Main core (fbalpha2012_libretro) does not work, but platform-specific cores run at full speed</li><ul>
 +
|-
 +
| [[FinalBurn Neo]] NeoGeo
 +
| {{✓}}
 +
| A few games are unable to be loaded due to memory constraints
 +
|-
 +
| [[FinalBurn Alpha]] CPS1
 +
| {{✓}}
 +
|
 +
|-
 +
| [[FinalBurn Alpha]] CPS2
 +
| {{✓}}
 +
|
 +
|-
 +
| [[FinalBurn Alpha]] CPS3
 +
| {{~}}
 +
| most games are too slow to run even on New 3DS, though JoJo runs almost full speed
 +
|-
 +
| [[Gambatte]]
 +
| [[Game Boy/Game Boy Color emulators|Game Boy/GameBoy Color]]
 +
| {{✓}}
 +
|
 +
|-
 +
| [[mGBA]]
 +
| rowspan="2" style="text-align: center;" | [[Game Boy Advance emulators|GameBoy Advance]]
 +
| {{✓}}
 +
| acceptable with Pokemon Ruby/Sapphire, but some games are slow to use, even on New 3DS, at present
 +
|-
 +
| [[gpSP]]
 +
| {{✓}}
 +
| ~50-60 FPS with dynarec
 +
|-
 +
| [[Mednafen]] VB
 +
| [[Virtual Boy emulators|Virtual Boy]]
 +
| {{~}}
 +
| ~25-30 FPS
 +
|-
 +
| [[Mednafen]] PCE fast
 +
| [[PC Engine (TurboGrafx-16) emulators |PCE/PCECD/SuperGrafx]]
 +
| {{✓}}
 +
|
 +
|-
 +
| [[Mednafen]] NGP
 +
| [[Neo Geo Pocket emulators|NeoGeo Pocket/Pocket Color]]
 +
| {{✓}}
 +
|
 +
|-
 +
| [[Mednafen]] WS
 +
| [[WonderSwan emulators|WonderSwan/WonderSwan Color]]
 +
| {{✓}}
 +
|
 +
|-
 +
| FCEUmm
 +
| rowspan="3" style="text-align: center;" | [[Nintendo Entertainment System emulators|NES/FDS]]
 +
| {{✓}}
 +
|
 +
|-
 +
| [[Nestopia]]
 +
| {{✓}}
 +
| ~55-60 FPS, use FCEUmm instead
 +
|-
 +
| [[QuickNES]]
 +
| {{✓}}
 +
|-
 +
| NXEngine
 +
| Cave Story
 +
| {{✓}}
 +
|
 +
|-
 +
| PCSX-ReARMed
 +
| [[PlayStation emulators|PlayStation 1]]
 +
| {{✓}}
 +
| ~50-60 FPS at standard resolution
 +
|-
 +
| [[PicoDrive]]
 +
| MegaDrive/Genesis/MasterSystem/GameGear/CD/32X
 +
| {{✓}}
 +
| 2D games run full speed, 3D games run about 30 FPS or less
 +
|-
 +
| [[Genesis Plus GX]]
 +
| MegaDrive/Genesis/MasterSystem/GameGear/CD/32X/SG-1000
 +
| {{✓}}
 +
| Redbook audio hangs when suspending or pausing RetroArch
 +
|
 +
|-
 +
| [[Snes9x]] 2002 (PocketSNES)
 +
| rowspan="4" style="text-align: center;" | [[Super Nintendo emulators|SNES]]
 +
| {{✓}}
 +
| less compatible than CATSFC, but can actually run many special chip games at full speed
 +
|-
 +
| [[Snes9x]] 2005 ([[CATSFC]])
 +
| {{✓}}
 +
| ~55-60 FPS on standard games, ~50 FPS on Super FX games
 +
|-
 +
| [[Snes9x]] 2005+ ([[CATSFC]] Plus)
 +
| {{✓}}
 +
| Same as Snes9x 2005 but with better sound, at the cost of a few FPS, has more accurate audio, slower
 +
|-
 +
| [[Snes9x]] 2010 ([[Snes9x]] Next)
 +
| {{✓}}
 +
| Most accurate but slowest SNES core (~40 FPS),too slow to use even on New 3DS at present
 +
|
 +
|}
  
Examples:
+
Using current exploits, the New 3DS is capable of running most of these cores at or nearly at full speed on most games. The only cores the older 3DS can reliably run at full speed are 2048, Gambatte, QuickNES, NXEngine, and some older Sega games using PicoDrive.
* Princess Crown (SAT): 574 MB > 72 MB (Game Data) + 50 MB (Audio-CD data in MP3 format)
+
Opposed to normal use of RetroArch, these are all self-contained emulators, albeit sharing the same automatic configuration.
* Captain Tsubasa (SCD): 512 MB > 146 MB (Game Data) + 3 MB (audio as MP3) > (as 7zip) 34 MB (Game Data) + 3 MB (audio)
+
Screenshot-taking is broken. Upon exiting RetroArch 3DS, press the Start button.
  
M3U (playlist) files may be used too for this distribution scheme.
+
===[[RetroArch]] (Unofficial)===
  
Sometimes dumps that come this way may not work on some emulators. This is often due to either an incorrect CUE files using the wrong filenames or using MP3 instead of WAV.
+
<B>Unofficial <code> [https://gbatemp.net/threads/unofficial-3ds-retroarch-builds.462252 3DS builds]</B></code>
  
===Padding===
+
{| class="wikitable sortable" style="text-align:center;"
Devs often have their games much, much bigger than they need to be by putting in accessible garbage data in the disc. Garbage data isn't useful game data and is just used to bloat the disc size. It's either a sequence of 00/FF (you know what's inside a file if you open it with a hex editor), random data, unused/cut content left during development, and in rare cases, data that is completely unrelated to the game itself.  An example of this is ''Shrek SuperSlam'' on the PS2 which has a working copy of ''Tony Hawk's Underground 2'' for the PSP hidden in the root of the disc.
+
|+ New3DS performance
 +
! Core
 +
! Game/System
 +
! Working?
 +
! class="unsortable"|Notes
 +
|-
 +
| [[TGB Dual]]
 +
| GameBoy/GameBoy Color
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| GW
 +
| Game & Watch
 +
| {{✓}}
 +
| ~58fps
 +
|-
 +
| [[FUSE]]
 +
| ZX Spectrum
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| VecX
 +
| Vectrex
 +
| {{✓}}
 +
| ~55fps
 +
|-
 +
| [[O2EM]]
 +
| Odyssey ²
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| [[Stella]]
 +
| Atari2600
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| Atari800
 +
| Atari5200
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| [[ProSystem]]
 +
| Atari7800
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| [[Handy]]
 +
| Atari Lynx
 +
| {{✓}}
 +
| ~60fps
 +
|-
 +
| [[FinalBurn Alpha]] CPS3
 +
| rowspan="2" style="text-align: center;" | [[Arcade emulators|Arcade]]
 +
| {{~}}
 +
| ~35fps/~50fps
 +
|-
 +
| [[FinalBurn Neo]] NeoGeo
 +
| {{~}}
 +
| ~40fps/~50fps
 +
|-
 +
| Virtul Jaguar
 +
| Atari Jaguar
 +
| {{✗}}
 +
| ~10fps (Technically works but is unplayably slow)
 +
|-
 +
| [[Yabause]]
 +
| Sega Saturn
 +
| {{✗}}
 +
| ~5fps (Technically works but is unplayably slow)
 +
|-
 +
| [[4DO]]
 +
| 3DO
 +
| {{✗}}
 +
| ~8fps (Technically works but is unplayably slow)
 +
|}
  
The purpose of doing this can be to fill in spots on the disc so that specific parts of the game's data are in certain areas of the disc. This is done to increase the drive's reading speed so that it's quick enough in certain spots for the game to work properly. It's in the your best interest not to mess with this data arrangement (referred to as LBA and TOC in the case of GC/Wii/PS2/PSP) as it might break the game in some cases.
+
====Ultimate 3DS emupack====
  
Another reason for having garbage data can be to screw with pirates, who download/upload these games online, by making the ISO bigger and harder to store. Some go a step further and scramble the garbage data, instead of just being a sequence of 00/FF, to make the ISO much harder to compress using regular archive formats like zip, 7zip, rar, etc. You might be overjoyed to learn this has become the industry standard nowadays.
+
{| class="wikitable sortable" style="text-align:center;"
 +
{| class="wikitable sortable" style="text-align:center;"
 +
! class="unsortable"|Version
 +
| [https://github.com/NinjaWeedle/NW-U3DSemupack git]
 +
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
 +
| <B>{{✓}}</B> Recommended
 +
|}
  
Many compression schemes remove or simplify padding patterns to allow for easier compression.
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| Supported Emulators
 +
|-
 +
|
 +
* Nintendo 64 : DaedalusX64 0.2
 +
* SNES : Snes9X 1.30
 +
* NES : VirtuaNES 1.02
 +
* TurboGrafx/PC Engine : TemperPCE 1.02
 +
* MasterSystem/MegaDrive/Sega CD/32x : PicoDrive 0.94
 +
* CHIP-8 : CHIP-3DS
 +
* Atari 2600 : z26 3DS
 +
* GB/GBC : GameYob 1.0.8
 +
* GBA : mGBA 0.8.4
 +
|}
  
===CHD Compression===
+
=<B>Linux OS</B>=
* '''Archive-quality dump?''' Yes (with CHD version 5)
 
* '''Gain:''' Immediate
 
* '''Tools Used:'''  chdman (included with MAME)
 
* '''Can be reverted?''' Yes, using extractcd (included with MAME)
 
* '''Playable on Hardware?''' No.
 
* '''Playable on Emulators?''' MAME, DuckStation, PCSX2 (since March of 2021) and DEmul. Some libretro cores for other emulators are starting to add support.
 
* '''Can process multi track bin files?''' Yes.
 
  
MAME uses the CHD format for disc images in general and includes tools to convert back and forth. Before MAME v145, CHD was in version 4 and it bumped to version 5 from MAME v146 and further. The CHD v5 uses 7zip's LZMA compression on the game data and lossless FLAC compression for the audio data to optimize compression even further than using BIN+CUE+MP3/WAV data separation alone. CHDv5 is truely lossless.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Linux 3DS
 +
| [https://www.homebrewgeneral.net/2020/09/linux-3ds-updated.html?m=1 Update]
 +
| ?
 +
| {{~}}
 +
| {{~}}
 +
|}
  
'''Instructions'''
+
=Nintendo=
Place chdman.exe and extractcd in the same directory as the dumps you want to compress (dumps must be in BIN+CUE format or GDI).  Open Command Prompt and navigate to the directory where you placed chdman.exe and input one of the following:
 
* BIN/CUE-GDI to CHD: <code>for /R %i in (*.cue, *.gdi) do chdman createcd -i "%i" -o "%~ni.chd"</code> (Windows)
 
* CHD to BIN/CUE: <code>for /R %i in (*.chd) do chdman extractcd -i "%i" -o "%~ni.cue"</code> (Windows)
 
Alternatively, if you only need to do one file you can use this: <code>chdman createcd -i "<FILENAME>.cue" -o "<FILENAME>.chd"</code>
 
  
If you have one of the European PSX games that features LibCrypt copy protection, then you will have a .sbi file in addition to the .bin/cue file.  You will still need to have the .sbi file in the same directory as the game file (in this case, the newly created CHD file) in order to run.
+
===NES===
  
==PlayStation 1==
+
{| class="wikitable" style="text-align:center;"
===ECM===
+
! scope="col"|Name
* '''Archive-quality dump?''' No (removes error correction data permanently)
+
! scope="col"|Version
* '''Gain:''' Not Immediate (ISO size doesn't change). ECM only zeroes out redundant error correction data, but in some rare cases this data may be used for anti-piracy, hence corrupting the dump! However it does achieves drastic size reductions when compressed to an archive format (7zip/gzip/zip) .
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Tools Used:'''  PakkISO or ECM Tools. Drag-and-drop the ISO onto the specified tool, then compress it with 7zip.
+
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| VirtuaNES for 3DS
 +
| [https://github.com/TBirdSoars/VirtuaNES/releases git]
 +
| Mid
 +
| {{~}}
 +
| {{✓}}
 +
|-
 +
| 3DNES
 +
| [https://github.com/st4rk/3DNES git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
* '''Can be reverted?''' Yes, using the same tools (unECM), however there is data loss (error correction data) which can damage a select few games. Check the hash with Redump to make sure nothing was altered.
+
===SNES===
* '''Playable on Hardware?''' No.
 
* '''Playable on Emulators?''' Only on recent SVN builds of PCSX-R and ePSXe (they also support 7zip/gzip/zip archives so use them with ECM).
 
  
===PBP (PSP Format for PS1 Images)===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' No
+
! scope="col"|Name
* '''Gain:''' Immediate (ISO size decreases a lot).
+
! scope="col"|Version
* '''Tools Used:''' [https://www.reddit.com/r/PSP/wiki/psx2psp PSX2PSP], Popstation MD GUI, [https://www.psx-place.com/threads/w-i-p-utilities-cdda-enabler-for-psx-eboots-on-ps3.23539/ CDDA-ENABLER] (optimized for PS3) ...
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| SNES9x for 3DS
 +
| [https://github.com/bubble2k16/snes9x_3ds/releases git]
 +
| Mid
 +
| {{~}}
 +
| {{✓}}
 +
|-
 +
| blargSNES
 +
| [http://blargsnes.kuribo64.net 1.3b]
 +
| Mid
 +
| {{~}}
 +
| {{✓}}
 +
|}
  
* '''Can be reverted?''' Yes. For homemade EBOOTs it can be done by using the same tool to generate the BIN+CUE files. For commercial releases from PSN you will have to use [https://github.com/xdotnano/PSXtract PSXtract]. There's data loss, but it's negligible in terms of functionality.
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
* '''Playable on Hardware?''' On PSP, not on PS1.
+
! colspan=2 width="250"| SNES9x for 3DS
* '''Playable on Emulators?''' PCSX-R, DuckStation and ePSXe. PlayStation 3's ps1_netemu can also use it after packaging it into a PS1 Classic and installing said package.
+
|-
 +
|
 +
* Snes9x for 3DS - runs a good majority of games well, even on old 3DS/2DS's. It's recommended to use a New 3DS if you want to run games that uses the SuperFX or SA-1 chip properly
 +
|}
 +
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| blargSNES
 +
|-
 +
|
 +
* blargSNES - It works well, but lacks compatibility for games that require enhancement chips <i>(SA1, SuperFX, etc.)</i>
 +
|}
  
PBP is the official format used by Sony for the PS1 Classics on PSP and PS3. Audio tracks may be compressed in ATRAC3 or as raw PCM (unsupported on PS3's ps1_netemu, supported on PSP only by the earliest versions of POPS or the newest ones with the [http://wololo.net/talk/viewtopic.php?f=28&t=41330&start=60 cdda_enabler plugin])
+
===Nintendo 64===
  
===CHD===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' Yes
+
! scope="col"|Name
* '''Gain:''' Immediate (better than PBP).
+
! scope="col"|Version
* '''Tools Used:'''  chdman
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' Yes, using the same tool (chdman).
+
! scope="col"|Active
* '''Playable on Hardware?''' No.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' libretro Beetle PSX, Avocado, DuckStation, PCSX2 (since March of 2021, and also because PCSX2 now has PSOne emulation functionality as well, so two-in-one) and PCSX ReARMed.
+
|-
 +
| [[DaedalusX64]] 3DS
 +
| [https://github.com/masterfeizz/daedalusx64-3DS/releases git]
 +
| Mid
 +
| {{✓}}
 +
| {{~}}
 +
|}
  
==PlayStation 2==
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
===Manual Scrubbing + GZIP Compression===
+
! colspan=2 width="250"| DaedalusX64
Often times you can just open the ISO in UltraISO and find the dummy files. Sometimes they are obvious looking files, like DUMMY.BIN, DATA0.BIN (or .DAT), DUMMY.DAT, etc., or are folders with names like "PADDING" and such. You can look into the files (with a hex editor) to see if they're obviously padding data (usually the offsets will be full of 00/FF, though sometimes it's not as obvious). However, you must never mess with LBA and TOC when removing padding. <!--So you try to change the size of the padding file inside the ISO to 0 MB or alter it directly with a hex editor so that it's all zeroed out.--><!--Wording is too weird to figure out what it's say, will fix when more information is obtained-->
+
|-
 +
|
 +
[[DaedalusX64]] - N64 has always been known to be a hard system to emulate, which is why many were skeptical about how feasible it would be to have an emulator for the system on the 3DS. While still in its beta stage, it has shown a lot of improvements thanks to using a dynamic recompiler, with some games running at a playable state. It also supports using stereoscopic 3D (at the cost of slower performance), which isn't a feature a lot of emulators have.
 +
|}
  
* '''Archive-quality dump?''' No (missing data)
+
===Game Boy===
* '''Gain:''' Not Immediate (ISO dump size the same), however when used with compression the gain is really noticeable.
 
* '''Tools Used:'''  UltraISO, USBUtil, ExPERT/Xpert ([http://www.ps2-home.com/forum/viewtopic.php?t=3419 guides here])
 
* '''Can be reverted?''' Not really. Garbage data here is zeroed out, it's not important and you still have the same disk data structure.
 
* '''Playable on Hardware?''' Yes (after GZIP-decompression) (some games may break)
 
* '''Playable on Emulators?''' Yes - PCSX2 (some games may break)
 
  
You may forego the manual scrubbing part entirely. If you feel adventurous you might want to do it to enhance compression though. Let's get to the meaty part though...
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| GameYob
 +
| [https://github.com/Drenn1/GameYob git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|-
 +
| Cinoop
 +
| [https://github.com/CTurt/Cinoop git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
The PCSX2 emulator supports opening compressed archives containing ISOs. The best format it supports would be '''GZIP'''.  
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| GameYob
 +
|-
 +
|
 +
* GameYob - forked from a popular emulator used on the DS.  Emulates the Game Boy and Game Boy Color. The original DS version is actually more polished than the 3DS port, so some of the more hardware pushing games won't work as well as the DS port.
 +
|}
  
Use 7zip ("Add to archive..." then choose to gzip) or Pigz (multi-threaded, much faster compression) to generate gzip archives containing the ISO file in question. PCSX2 will build an index of each gzip compressed game it loads (as a file in the same directory as the gzip archive), so after the first time where you'll have to wait for the decompression, in all subsequent times there is no speed difference between playing an uncompressed and compressed game. Of course, you can extract the ISO back from the GZIP archive.
+
===Virtual Boy===
  
A simple method to mass convert a lot of PS2 ISO games to GZIP is this script when run in PowerShell.  However, it'll take many hours or days depending on the size of the collection.
+
{| class="wikitable" style="text-align:center;"
<blockquote>dir *.iso | ForEach-Object { & "C:\Program Files\7-Zip\7z.exe" a -tgzip -mx9 -sdel ($_.Name+".gz") $_.Name }</blockquote>
+
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| r3Ddragon
 +
| [https://github.com/mrdanielps/r3Ddragon git]
 +
| Low
 +
| {{✓}}
 +
| {{~}}
 +
|}
  
===CSO (aka CISO)===
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
* '''Archive-quality dump?''' Yes
+
! colspan=2 width="250"| r3Ddragon
* '''Gain:''' Immediate (ISO dump size the same). Coupled with manual scrubbing, it can be bigger. Not as much of a gain as GZIP though.
+
|-
* '''Tools Used:''' maxcso
+
|
* '''Can be reverted?''' Yes, using the same tool. No data loss.
+
* r3Ddragon - It's kind of surprising that Nintendo never released a Virtual Console for the Virtual Boy on the 3DS, especially given how small the library of games were for the system and how both utilize 3D effects <strike>and cause eyestrain</strike>. What makes this emulator stand out is the fact that it's able to display the graphics in 3D the way it was intended, something that is almost impossible to do on other platforms, unfortunately compatibility is still low and requires a New 3DS to run. Development has since opened.
* '''Playable on Hardware?''' NO
+
|}
* '''Playable on Emulators?''' Yes - PCSX2.
 
  
===CHD===
+
===Pokémon Mini===
* '''Archive-quality dump?''' Yes
 
* '''Gain:''' Immediate (better than GZIP).
 
* '''Tools Used:'''  chdman
 
* '''Can be reverted?''' Yes, using the same tool (chdman).
 
* '''Playable on Hardware?''' No.
 
* '''Playable on Emulators?''' Yes - PCSX2 (since v1.7.0-dev-1156<ref>Added in 1150 but wasn't built. 1156 is the first release with CHD support. https://buildbot.orphis.net/pcsx2/index.php?m=fulllist</ref>).
 
  
==PlayStation 3==
+
{| class="wikitable" style="text-align:center;"
===Extracted files (aka JB format/GAMES)===
+
! scope="col"|Name
* '''Archive-quality dump?''' Not directly (BD filesystem metadata lost).
+
! scope="col"|Version
* '''Gain:''' Immediate (any padding between files is removed).
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Tools Used:''' Most on-console file managers and *man homebrews, 7-Zip and other standard ISO extractors on PC.
+
! scope="col"|Active
* '''Can be reverted?''' Yes, using PS3 ISO Rebuilder and an [http://jonnysp.bplaced.net/ IRD file] representing the original file locations. Generic inaccurate JB to ISO conversions possible with makeps3iso (preferred) or genps3iso.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Hardware?''' Yes - on CFW/HEN
+
|-
* '''Playable on Emulators?''' Yes - RPCS3
+
| PokeMini 3DS
 +
| [https://github.com/nop90/Pokemini/releases git]
 +
| Low
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
For a long time (before the availability of Cobra and Mamba) the only playable format for PS3 backups (relying on little more than "peek and poke" CFW-provided syscalls to mount the game's folder over the currently inserted disc) but also the least accurate one, with significant compatibility issues (varying on whether the backup is stored on an internal or external drive, whether an original game disc is currently inserted, various optional hacks such as "BDMirror" moving the files to the root of the external drive on demand, ...)
+
===Game Boy Advance===
  
==PlayStation Portable==
+
The 3DS does include native firmware for a GBA mode which was mainly used to run ambassador releases instead of having to develop an emulator for them.  Because it's technically running a "virtual" GBA, it can't provide features that are normally available on other emulators, such as savestates, screen filtering, or sleep mode, however it does have high compatibility with the exception of cartridges with special hardware. If you're using an old 3DS/2DS, this is the best option to play GBA games.  
===CSO (aka CISO)===
+
There are two ways to take advantage of this firmware:
* '''Archive-quality dump?''' Maybe: while the actual compression is inherently lossless, depending on the conversion software and/or its configuration, so-called ripping (deletion or zero-resizing of the system update, videos, or other files) may be performed on the fly.
 
* '''Gain:''' Immediate (ISO dump size lowers). Substantial, depending on game. Higher compression levels generally produce decreasing space gains while potentially increasing load times. Some tools allow for leaving audio/video content uncompressed.
 
* '''Tools Used:'''  CISO, CISO GUI, maxcso, UMDGen, PSP ISO Compressor, CISO Multi Compressor, CISO XP, ...
 
* '''Can be reverted?''' Yes, using the same tools and saving in ISO (uncompressed) format. No data loss.
 
* '''Playable on Hardware?''' Yes - most CFWs (Possibly longer load times though).
 
* '''Playable on Emulators?''' Yes - PPSSPP.
 
  
CISO GUI and CISO XP: Drag-and-drop ISO file on program, Select compression level (1 to 9 (Max)), "Compress", and choose directory for saving the new CSO file.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| New Super Ultimate Injector (NSUI)
 +
| [https://gbatemp.net/threads/discussion-new-super-ultimate-injector-nsui.500376 Beta 27]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| open_agb_firm
 +
| [https://github.com/profi200/open_agb_firm git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| [[GBARunner2]]
 +
| [https://github.com/Gericom/GBARunner2 git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|}
  
UMDGen is a PSP ISO editor. You can save to either the CSO format with this.
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| NSUI
 +
|-
 +
|
 +
* New Super Ultimate Injector - There are other programs that can do injections, but this one is nice as it can do other Virtual Console injections and some forwarders for emulators. The only problem is each ROM must be injected and installed individually, including the [https://3ds.hacks.guide/godmode9-usage.html#restore-gba-vc-saves save files], which makes the number of titles that can be installed restricted to the max the 3DS title limit (300 titles, not including pre-installed system titles).
 +
|}
  
===DAX, JSO, ZSO===
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
Three different compressed-ISO formats. Significantly lower popularity/support than CSO.
+
! colspan=2 width="250"| Open agb firm
 +
|-
 +
|
 +
* open_agb_firm <i>(Name not finalized)</i> - A custom FIRM payload that takes advantage of the built-in GBA firmware, it's still in early development but has an alpha build available. The major advantages of this compared to VC injection is that it performs faster and there aren't any issues with the sound, it utilizes the native hardware (even with VC injection there are issues with the sound, ex.: "Fire Emblem"). It can load the ROM through the SD card instead of having to convert and install them, but needs to be launched on boot instead of being able to use the 3DS HOME Menu (there's ways to make a forwarder for in on the HOME menu, but requires additional setup to get it to work).  One major issue is there's a chance that it may not detect the correct save format or will corrupt the existing save file so make sure to backup your saves beforehand (they are currently trying fix it by having a better database for save detection, if you're interested [https://github.com/profi200/open_agb_firm/issues/9 you can help]).
 +
** To install, simply put the .firm file in the <code>/luma/payloads/</code> folder and hold START to load up the chainloader to launch it.  There's no way of exiting out once the program starts, so you will need to turn it off and redo the step to load it if you wanted to change games.
 +
|}
  
===PBP===
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
* '''Archive-quality dump?''' ???
+
! colspan=2 width="250"| GBARunner2
* '''Gain:''' Immediate (ISO dump size lowers).
+
|-
* '''Tools Used:''' ISO~PBP Converter, or Sign~Fake NP Expert
+
|
* '''Can be reverted?''' Yes
+
* [[GBARunner2]] - a GBA hypervisor made for the DS(i), can only be ran through [[TWiLight Menu++]] and is included by default with the program (see below).  Compatiblity can be a hit-or-miss, but it's still in active development with plans to include interesting features such as gyro control emulation and local wireless multiplayer in the future.
* '''Playable on Hardware?''' Yes - CFWs (and, if signed, OFWs too).
+
|}
* '''Playable on Emulators?''' Yes - PPSSPP.
 
  
Official format for digitally distributed PSP/minis (partially related to the one used for PS1 games), containing a compressed disc image and optionally a custom boot logo.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| [[mGBA]]
 +
| [https://github.com/mgba-emu/mgba/releases git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| CitrAGB <small> (based on [[gpSP]])</small>
 +
| [https://gbatemp.net/threads/citragb-3ds-gba-emulator-wip.376438 1.0]
 +
| Low
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
==PlayStation Vita==
+
===Nintendo DS===
===Trimming===
 
* '''Archive-quality dump?''' No, but trivially undoable.
 
* '''Gain:''' Immediate (ROM size lowers).
 
* '''Tools Used:''' None - [https://github.com/motoharu-gosuto/psvgamesd#trimming-zeroes manual process]
 
* '''Can be reverted?''' Yes (see above).
 
* '''Playable on Hardware?''' Yes - with psvgamesd.
 
* '''Playable on Emulators?''' ?
 
  
The psvgamesd gamecard backup creation and mounting tools supports mounting a trimmed backup (although no tools exist for dumping directly in trimmed format, or converting between full and trimmed.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| [[TWiLight Menu++]]
 +
| [https://github.com/DS-Homebrew/TWiLightMenu git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| DeSmuME
 +
| [https://github.com/shutterbug2000/DeSmuME/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{✗}}
 +
|}
  
Neither variant of the .psv format (unrelated to the Cobra Blackfin's .psv format) has caught on, despite being the most accurate options for physical game backups.
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| TWiLight Menu++
 +
|-
 +
|
 +
*[[TWiLight Menu++]] - Not technically an "emulator", rather it's a frontend for a separate program, [[nds-bootstrap]], which allows for an NDS ROM to be loaded from an SD card.  The program is originally designed for the DSi, however it's able to work on the 3DS by utilizing the virtual DSi (aka the TWL_FIRM or "DS Mode") that the 3DS has for backwards-compatibility. Compatibility isn't the same as using a flashcart, however it's still pretty high with only a few games having issues or triggering anti-piracy protections (newer versions now come with AP patches for most games and will patch them if needed at launch). It also comes pre-bundled with a variety of emulators used on the DS and a work-in-progress GBA hypervisor, [[GBARunner2]], that works to some degree. 
 +
**[https://docs.google.com/spreadsheets/d/1LRTkXOUXraTMjg1eedz_f7b5jiuyMv2x6e_jY_nyHSc/edit#gid=0 Compatiblity List].
 +
|}
  
 +
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| DeSmuME
 +
|-
 +
|
 +
* DeSmuME - an experimental port of DeSmuME that has since been abandoned, it wasn't very compatible.
 +
|}
  
===Extracted files (NoNpDRM format)===
+
===Nintendo DSiware===
* '''Archive-quality dump?''' No for physical titles, close enough (and generally accepted as such) but no cigar for digital ones.
 
* '''Gain:''' Immediate (compared to ROM).
 
* '''Tools Used:''' NoNpDRM plugin + a file manager like VitaShell.
 
* '''Can be reverted?''' No.
 
* '''Playable on Hardware?''' Yes - with the NoNpDRM plugin.
 
* '''Playable on Emulators?''' ?
 
  
NoNpDRM is a Vita plugin that generates decrypted licenses (valid for any console) when running an original Vita title, as well as allowing the system to accept those licenses, allowing for playing the encrypted files directly copied from a game card or memory card (by extension the name is therefore also used for such files, or the combination of the game's files and a decrypted license).
+
Because the firmware that the 3DS uses for backwards-compatibility is actually the same as the DSi, it's possible to inject DSiWare as an installable <code>.cia</code> file.  There's two ways to do this:
  
NoPsmDRM is the equivalent for PlayStation Mobile titles.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| GodMode9
 +
| [https://github.com/d0k3/GodMode9/releases git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| DSiWare Conversion Script
 +
| [https://gbatemp.net/threads/scripts-dsiware-conversion-easily-convert-to-nds-and-cia-files.478575 Script]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
An hypothetical NoPspEmuDRM, allowing for PSP/PS1 eboots to be natively runnable and manageable from the LiveArea/Content Manager, is currently not known to exist nor believed to be in development.
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| GodMode9
 +
|-
 +
|
 +
* Version 1.8.0 and above has a script that can convert <code>.nds</code> to <code>.cia</code>, [https://3ds.hacks.guide/godmode9-usage 3ds.hacks.guide] has more information on how to update to the latest version if needed.
 +
|}
  
==Dreamcast==
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
===CHD Archive Format===
+
! colspan=2 width="250"| DSiWare Conversion Script
* '''Archive-quality dump?''' CHD v4: No (missing data due to lossy compression, no gameplay issues). CHD v5: Possibly Archive-quality.
+
|-
* '''Gain:''' Immediate (ROM dump size lowers).
+
|
* '''Tools Used:''' GDI to CHD converter.
+
* This script can be used to convert <code>.bin</code> files from your DSi's SD card to <code>.nds</code> which can then be used to convert into <code>.cia</code>.
* '''Can be reverted?''' Yes with CHD v5.
+
|}
* '''Playable on Hardware?''' No
 
* '''Playable on Emulators?''' Yes - DEmul, Reicast, Flycast, and Redream
 
  
==GameCube / Wii==
+
These scripts will <b>ONLY</b> work for DSiWare, <font style="color:red"><b>NOT NDS GAMES</b></font>.
  
People used to resort to WiiScrubber (Wii) and GCM Utility (GC) to scrub/trim games to end up with dumps that while they had no immediate size change, their randomized garbage data (like "dummy", "padding" or "znull") was still there but zeroed out making archived dumps using zip/7zip/rar formats have stunning gains (from 1.4GB uncompressed to 26MB zipped for Animal Crossing for example!). Of course, the file still needed to be uncompressed to its full size everytime you wanted to play it.
+
[[TWiLight Menu++]] has support for two DSiWare as of v15.1.1 with a special preview of [[nds-bootstrap]], Pop Island and Pop Island: Paperfield. These can also run on the DS.
  
Trimming and scrubbing (in Wiiscrubber terms) aren't the same! While they both are terms for "zeroing garbage data" to make it more compression-friendly, trimming does not just that like scrubbing but takes the extra step of relocating the garbage data to the end of the file, hence altering its TOC and requiring the disc to be fakesigned, for a not-so-big compression gain. Hence why scrubbing is by far the most authentic and safe way to solve the garbage data problem.
+
=Sony=
  
However compressed formats incorporating the "padding zeroing" part were made since then, and Dolphin supports them! These are the WBFS and GCZ formats.
+
===PlayStation===
  
Dolphin can't play games directly from compressed archives (7zip/zip/gzip/rar...). Instead, it utilizes its own compression method.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| PCSX-ReARMed <small> (RetroArch)</small>
 +
| [https://www.libretro.com/index.php/retroarch-3ds-full-speed-ps1-now-possible-with-pcsx-rearmed-w-unai-renderer/ Nightly]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|-
 +
| CTRX
 +
| [https://github.com/machinamentum/CTRX git]
 +
| Low
 +
| {{✗}}
 +
| {{✗}}
 +
|}
  
===GCZ (Dolphin native archive format) - GC/Wii===
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| PCSX-ReARMed
 +
|-
 +
|
 +
* PCSX-ReARMed (RetroArch) - Thanks to the work of many developers, it is now possible to have full speed 60 FPS emulation for a majority of games and support for .CHD compression formats.  Generally, 2D games will perform better than 3D, however you can get some better performance by tweaking the settings if necessary.  The nightly builds have seen major improvements since the initial release and can even play some of the more demanding games at full speed ([https://www.reddit.com/r/3dshacks/comments/jvkotb/full_speed_psx_finally_here_on_new_3ds_new_2ds_xl/ See here] for some tips), so it's better to use that until the next stable release. NOTE: This emulator is mainly targeted for the New 3DS so don't expect the o3DS to run well if at all.
 +
|}
  
'''This format has been deprecated in favor of [[#RVZ (Modern Dolphin format) - GC/Wii|RVZ]].'''
+
=SEGA=
  
* '''Archive-quality dump?''' Yes (if junk data is not removed)
+
===MegaDrive/Genesis/MasterSystem/32X/Sega CD===
* '''Gain:''' Immediate. Depends on the game. It is very minimal if junk data is not removed.
 
* '''Tools Used:''' Dolphin (right-click the game(s) in the games list and select "Convert File..." (or "Convert Selected Files..." if more than one is selected), and select GCZ), or [https://wit.wiimm.de/ wit (Wiimms ISO Tools)]
 
* '''Can be reverted?''' Yes (In Dolphin, right-click the game, select "Convert File..." and select ISO. Removed junk data is irreversible)
 
* '''Playable on Hardware?''' No
 
* '''Playable on Emulators?''' Only Dolphin
 
  
===RVZ (Modern Dolphin format) - GC/Wii===
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| PicoDrive for 3DS
 +
| [https://github.com/bubble2k16/picodrive_3ds/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{✓}}
 +
|}
 +
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| PicoDrive for 3DS
 +
|-
 +
|
 +
* PicoDrive for 3DS - 32X and Sega CD are playable on the original 3DS, but works better on New 3DS.  Sega CD requires BIOS in order to play, they must be named:
 +
"bios_CD_U.bin", "bios_CD_J.bin", and "bios_CD_E.bin" based on the respective regions.  BIOS need to be in the <code>/3ds/picodrive_3ds/bios</code> folder.
 +
|}
  
The Dolphin team developed a new compression format based on WIA called RVZ. Unlike all the previous formats, RVZ is lossless and can preserve the padding data on Wii discs as well as the necessary files needed by the Wii's IOS. Usage is very similar to GCZ in Dolphin itself, but it only works on newer Dolphin versions.
+
=Atari inc.=
  
* '''Archive-quality dump?''' Yes (if junk data is not removed)
+
===Atari 2600===
* '''Gain:''' Immediate. Considerable, depending on the game.
 
* '''Tools Used:''' Dolphin 5.0-12188+ (right-click the game(s) in the game list and select "Convert File..." (or "Convert Selected Files..." if more than one is selected), and select RVZ)
 
* '''Can be reverted?''' Yes (In Dolphin, right-click the game, select "Convert File..." and select ISO. Removed junk data is irreversible)
 
* '''Playable on Hardware?''' No
 
* '''Playable on Emulators?''' Only Dolphin
 
  
===Scrubbing and Trimming - GC/Wii===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' Not directly, see note about reversing.
+
! scope="col"|Name
* '''Gain:''' Not Immediate for just scrubbing (ISO dump size the same); Immediate for trimming (ISO dump size lowers).
+
! scope="col"|Version
* '''Tools Used:''' GC-Tool ("wipe garbage data..." - Scrubbing for GameCube), GameCube ISO Trimmer (scrubbing and trimming for GameCube), WiiScrubber (scrubbing/trimming for Wii, although compressing with Dolphin will scrub it anyways).
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' Yes, with WiiScrubber's undo file or NKit.
+
! scope="col"|Active
* '''Playable on Hardware?''' Yes for scrubbing; some games won't work trimmed.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' Yes for scrubbing; some games won't work trimmed.
+
|-
 +
| Z26 3DS
 +
| [https://gbatemp.net/threads/preview-z26-3ds-atari-2600-emulator.397827 2.0]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
Scrubbing games zeros out garbage/dummy data in the ISO file. The resulting file will be the same size, but it will be able to compress better than unmodified ISOs. The difference can be huge depending on the game. Animal Crossing, for instance, will compress to just a 26 MB .gcz file after being scrubbed!
+
===Atari 5200===
  
Trimming (also known as "trucha scrubbing", and substantially different from the definition of "trimming" used in ROM-based systems) games will also defragment the files moving them towards the start of the disc image, resulting in a smaller ISO file. The trimmed file can be used immediately at a smaller size without compression, but the game's internal structure will be wholly modified. '''Games relying on direct sector access (as opposed to consulting the filesystem) will break if you trim them.'''
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Atari800 3DS
 +
| [http://www.atari.org.pl/forum/viewtopic.php?id=13871 0.3.4]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
===WBFS - Wii only===
 
* '''Archive-quality dump?''' Not directly, see note about reversing.
 
* '''Gain:''' Immediate (ISO dump size lowers). Considerable, depending on the game.
 
* '''Tools Used:''' [http://www.wiibackupmanager.co.uk/downloads.html Wii Backup Manager] (after adding your game, go to "Transfer" and select "WBFS") or wit (Wiimms ISO Tools).
 
* '''Can be reverted?''' Maybe. WBFS files can always be converted back to ISO, but they will remain scrubbed (can be unscrubbed with NKitRestore) and, depending on settings at the time of conversion to WBFS, may be missing update/extras partitions (can be readded with wit or NKitRestore and a copy of the missing data).
 
* '''Playable on Hardware?''' Yes - Preferred format by most SD/USB loaders
 
* '''Playable on Emulators?''' Yes - Dolphin
 
  
A scrubbed and sparse (gap-dropping) format directly derived from the one used in the obsolete WBFS file system.
+
===Atari Lynx===
  
Ideal space-saving option for Wii games to be played via an USB loader.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Handy 3DS
 +
| [https://gbatemp.net/threads/release-handy-3ds-atari-lynx-emulator.394329 1.1b]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
===CSO (aka CISO) - GC/Wii===
+
=NEC=
* '''Archive-quality dump?''' Not directly, see note about reversing.
 
* '''Gain:''' Immediate (ISO dump size lowers). Less than WBFS.
 
* '''Tools Used:''' Wii Backup Manager (same as above, but select "CISO" - possibly Wii only), wit
 
* '''Can be reverted?''' Maybe (same caveats as WBFS).
 
* '''Playable on Hardware?''' Yes (on Wii/Vwii only) - Nintendont for Gamecube games, uLoader for Wii games
 
* '''Playable on Emulators?''' Yes - Dolphin
 
  
A scrubbed and sparse (gap-dropping) format. Unrelated to the PSP's CSO format.
+
===PCE/PCECD/SuperGrafx===
  
Great space-saving option for Gamecube games to be played on Nintendont.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| TemperPCE for 3DS
 +
| [https://github.com/bubble2k16/temperpce_3ds/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{✓}}
 +
|}
  
===FST (extracted File System) - GC/Wii===
+
=GCE=
  
* '''Archive-quality dump?''' No
+
===Vectrex===
* '''Gain:''' Very low with GC ISOs, much better with Wii ones. Can also be combined with classic archives compression (ZIP/RAR/7z etc.) to match WIA and NKit compression ratios.
 
* '''Tools Used:''' [https://wit.wiimm.de/info/composing.html wit]
 
* '''Can be reverted?''' Partially via the align-files.txt created by wit when extracting.
 
* '''Playable on Hardware?''' (GC games on Wii/Vwii): Yes - [https://github.com/FIX94/Nintendont/ Nintendont]. (Other combinations): No
 
* '''Playable on Emulators?''' Yes - Dolphin (both GC and Wii)
 
  
This has the advantage of easy experimenting with [[#Destructive Modification]]. Includes all disadvantages of trimming.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Vex3DS<small> (based on vecx)</small>
 +
| [https://gbatemp.net/threads/release-vex3ds-vectrex-emulator.420721 0.4]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
===WIA (Wii ISO Archive) - Wii only?===
+
=SNK=
* '''Archive-quality dump?''' Not directly unless --raw option is given, effectively preventing any space savings.
 
* '''Gain:''' Immediate (ISO dump size lowers). More than WBFS.
 
* '''Tools Used:''' wit
 
* '''Can be reverted?''' Maybe (same caveats as WBFS).
 
* '''Playable on Hardware?''' No
 
* '''Playable on Emulators?''' Yes
 
  
A scrubbed and compressed format designed for maximum space savings without cutting corners on corruption detection, but it's not directly playable or editable. Never really caught on and may be considered de facto deprecated by NKit.
+
===Neo Geo Pocket/Pocket Color===
  
===NKit formats - GC/Wii===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' Not directly, can be restored with NKit
+
! scope="col"|Name
* '''Gain:''' Immediate - (Wii) only for GCZ format.
+
! scope="col"|Version
* '''Tools Used:''' NKit.
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' Yes.
+
! scope="col"|Active
* '''Playable on Hardware?''' (GC) Yes - ISO-based variant only (Wii) No
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' Yes - Dolphin
+
|-
 +
| NeoPop-sdl 3DS
 +
| [https://github.com/nop90/Neopop-SDL/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
Apart from its previously mentioned unscrubbing/untrimming features mentioned in the above formats' descriptions, NKit is able to convert any ISO (clean dump or otherwise) to and from an [https://wiki.gbatemp.net/wiki/NKit/NKitFormat intermediate format applying various reversible changes] that optimize the image for lossless compression, including full decryption and optionally splitting the often non-unique update partitions to separate files.
+
=Microsoft=
  
NKit-GCZ (as well as plain GCZ) is less space efficient than NKit-ISO compressed with a powerful general purpose archiver (7zip), however it is directly playable in Dolphin.
+
===DOS===
  
But using it for emulation has problems, such as slower emulated load times, breaking netplay if load times aren't the same, and crashing a few games.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| 3DOS
 +
| [https://gbatemp.net/threads/wip-demo-3dos-8086-dos-emulator-for-the-3ds.394455 1.0]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
Compressing NKit.ISO with a strong compression format gives the smallest size while being reversible.
+
* 3DOS - Based on 8086tiny. Can only emulate 8086 CPUs.
  
==Wii U==
+
=Apple=
All uncompressed WUD dumps are 23.3GB, which makes compression needed de facto. Some examples:
+
===mac 2.x===
* Super Mario World 3D: 23.3GB > 2.61GB (88% gain)
 
* New Super Mario Bros. U: 23.3GB > 1.8GB (92% gain)
 
* Donkey Kong Country Tropical Freeze: 23.3GB > 11.7GB (49% gain)
 
  
===WUX (Wii U Compressed Image Dump Archive)===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' Yes (lossless, doesn't actually alter the data).
+
! scope="col"|Name
* '''Gain:''' Immediate (smaller file than WUD): Around 50% gain usually (depending on the game)
+
! scope="col"|Version
* '''Tools Used:''' [http://mega.nz/#!llQwyQQZ!58fErjqM7pyQZKFKe0Qlu1yLP5EbtmOmiDUN1ElW07c wud tool]. To use, drag-and-drop the ISO on the executable.
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' Yes. The wud tool includes a decompression utility, which recreates the original file.
+
! scope="col"|Active
* '''Playable on Hardware?''' No (can be converted to an installable format using [https://github.com/FIX94/wud2app wud2app])
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' Yes - Future releases of Cemu (and potentially other [[Wii U emulators]])
+
|-
 +
| Mini vMac 3DS
 +
| [https://github.com/TaraHoleInIt/minivmac-3ds git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
By Exzap, Cemu's author ([http://gbatemp.net/threads/wii-u-image-wud-compression-tool.397901/ release thread]). The tool detects duplicate sectors and only stores them once: all the empty ranges end up removed, storing only ranges which contain file or filesystem data. Of course, the original ISO can be reconstituted.
+
=Sinclair=
  
===APP (aka NUS/Installable Format)===
+
===ZX Spectrum===
* '''Archive-quality dump?''' No in regard to discs; Partially in regard to CDN data.
 
* '''Gain:''' Immediate (Total size decreases, compared to disc image)
 
* '''Tools Used:''' wud2app (disc image to APP), disc2app (original disc to APP), NUSPacker (extracted format to APP), Teconmoon's WiiVC Injector (Wii/Gamecube disc image to Enhanced Vwii APP), ...
 
* '''Can be reverted?''' No
 
* '''Playable on Hardware?''' Yes (after installation)
 
* '''Playable on Emulators?''' No
 
  
Consisting of a folder containing *.app, *.h3, title.cert, title.tik, and title.tmd files, this official Nintendo format is how tiles are stored on discs and some system titles are stored on the console and is very similar to how titles are stored on the CDN (on the CDN the files are named differently, .app files are encrypted with the title key and common keys and the tmd has a  certificate chain on the end that is same for every tmd). This is equivalent to the files contained within a 3DS CIA file; however unlike a 3DS title, converting a disc title to digital does not require modifying the title itself, thus leaving the title's signatures valid.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| 3DS Spectrum
 +
| [https://www.mediafire.com/file/d1sl4hcdol60loh/3dsspectrum01.rar/file 0.1]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
===RPX/RPL (aka Installed/Extracted/Loadiine Format)===
+
=Commodore=
* '''Archive-quality dump?''' No (dump is extracted to individual files)
 
* '''Gain:''' Immediate (Total size decreases). Can be less than a WUX depending on the game.
 
* '''Tools Used:''' see below
 
* '''Can be reverted?''' No, any padding/file order/signature information is lost.
 
* '''Playable on Hardware?''' Yes, use [https://github.com/dimok789/loadiine_gx2/releases Loadiine GX2]
 
* '''Playable on Emulators?''' Yes
 
  
Titles installed to USB or MLC are stored in this format, comprised of three "code", "content", and "meta" folders.
+
===Commodore 64===
  
Can be extracted from disc images with DiscU, UWizard ([http://digiex.net/guides-reviews/console-guides/nintendo-wii-u-guides/14680-wii-u-wud-loadiine-gx2-conversion-extract-wud-images-loadiine-use.html follow this guide for usage information]) or JWUDTool, and from the installable format using JNUSTool. Can be converted to installable format with NUSPacker.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Bread Box
 +
| [https://gbatemp.net/threads/release-bread-box-c64-emulator.397602 1/06/16]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|-
 +
| VICE3DS
 +
| [https://github.com/badda71/vice3ds git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
Ideal format for game modding, less so for playing on console due to Loadiine's intrinsic modus operandi (appearing to the OS as the host title, with potentially different permissions) leading to poor compatibility.
+
===Amiga===
  
==Switch==
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| UAE3DS
 +
| [https://github.com/badda71/uae3DS git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
See overview of formats [https://yuzu-emu.org/wiki/overview-of-switch-game-formats/ here].
+
=Other=
  
===NSZ===
+
===Uzebox===
* '''Archive-quality dump?''' Yes
 
* '''Gain:''' Immediate (Total size decreases)
 
* '''Tools Used:''' [https://github.com/nicoboss/nsz nsz]
 
* '''Can be reverted?''' Only NCAs are fully reversible; compressed XCI and NSP files will be different when decompressed
 
* '''Playable on Hardware?''' No
 
* '''Playable on Emulators?''' No
 
  
==Game Boy Advance / Nintendo DS / Nintendo 3DS==
+
{| class="wikitable" style="text-align:center;"
===Trimming===
+
! scope="col"|Name
* '''Archive-quality dump?''' No (data removed)
+
! scope="col"|Version
* '''Gain:''' Immediate (ROM dump size lowers).
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Tools Used:''' NDSTokyoTrim (GBA/DS/3DS), rom_tool (3DS), GodMode9 (can directly dump DS/3DS cards in trimmed format)<br />NDSTokyoTrim: Drag-and-drop roms, and press "Trim". The original file will be overwritten!
+
! scope="col"|Active
* '''Can be reverted?''' No. Some GBA/DS games may be broken by meaningful data at the end of the ROM being mistaken for padding.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Hardware?''' Yes, same file format.
+
|-
* '''Playable on Emulators?''' Yes
+
| Cuzebox 3DS
 +
| [https://web.archive.org/web/20181031230535/https://github.com/ry755/cuzebox3DS/releases git]
 +
| Low
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
Trimming involves deleting bytes from the end of the ROM up to until the first different one.
+
=Multi game engine=
  
However, with no mandatory allocation table, it's not intrinsecally possible to identify the true end of the used area, and therefore some GBA/DS games can be broken by naive automated trimming (for example Golden Sun DS).
+
{| class="wikitable" style="text-align:center;"
 +
|-
 +
! scope="col"|Name
 +
! scope="col"|Latest Version
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
! scope="col"|Supported game(s)
 +
|-
 +
|[http://xproger.info/projects/OpenLara/ OpenLara]
 +
|[https://github.com/XProger/OpenLara/releases git]
 +
|{{✓}}
 +
|{{~}}
 +
|Tomb Raider 1-4
 +
|}
  
===CIA (CTR Importable Archive, 3DS and DSiWare only)===
+
===ScummVM===
* '''Archive-quality dump?''' No in regard to gamecard dumps; Partially in regard to CDN data.
 
* '''Gain:''' Immediate (smaller than original ROM - not applicable to digital titles).
 
* '''Tools Used:''' GodMode9 (can directly dump 3DS cards or installed titles to CIA, as well as converting 3DS to CIA), 3dsconv or 3DS Simple CIA Converter 5.0+ (3DS rom to CIA); makerom (3DS to/from CIA, NCCHs/DSiWare/ELF+RSF to 3DS/CIA), make_cia (DSiWare to CIA)
 
* '''Can be reverted?''' No, if starting from a gamecard dump (update partitions removed, main content's ExHeader modified to change the media type from CARD/NAND to SD Application)
 
* '''Playable on Hardware?''' Yes, after installation.
 
* '''Playable on Emulators?''' Yes?
 
  
Official Nintendo format for developers to install digital titles, later became the most popular format for installable homebrew and game backups owing to the relatively low marketshare of flashcards and emulators (and, for the former, strong impopularity) in favor of CFW.
+
{| class="wikitable" style="text-align:center;"
 +
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| [[ScummVM]] 3DS
 +
| [https://www.scummvm.org/downloads 2.2.0]
 +
| High
 +
| {{✓}}
 +
| {{✓}}
 +
|}
  
Equivalent of the Wii's WAD (for digital titles only) and the DSi's TAD (again for digital titles only, and with basically no popular support due to the lack of any homebrew title installers supporting the format - not to be confused with an homonymous unofficial format nor with the files produced by the official export-DSiWare-to-SD feature)
+
===EasyRPG===
  
===NCCHs (CXIs and CFAs, 3DS only)===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' No (partition table/ticket/signatures... removed), compared to CCI/3DS and CIA
+
! scope="col"|Name
* '''Gain:''' Immediate (smaller than original ROM - not applicable to digital titles).
+
! scope="col"|Version
* '''Tools Used:''' GodMode9, ctrtool, ...
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' No (result will be unsigned)
+
! scope="col"|Active
* '''Playable on Hardware?''' Not really, unless packaged back into a CIA or 3DS.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' Yes
+
|-
 +
| [[EasyRPG]] 3DS
 +
| [https://easyrpg.org/player/downloads/#snapshot-other 0.6.2.3]
 +
| High
 +
| {{✓}}
 +
| {{✓}}
 +
|}
  
3DS and CIA files, as well as already installed digital titles, are comprised of one or more NCCHs (also called "partitions" or  "contents"): the main content (number 0) can either be an executable CXI for software, or a non-executable CFA for a data title. Additional CFAs may be present, [https://www.3dbrew.org/wiki/NCSD#Overview with conventional index numbers]. [[Citra]] can run CXIs directly.
+
===OpenBOR===
  
==Xbox 360==
+
{| class="wikitable" style="text-align:center;"
It's certainly better than keeping 8.5GB images, but the conversion is too substantial and irreversible to be suitable for archival purposes since it affects data structure tables as well.
+
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| [[OpenBOR]] 3DS
 +
| [https://github.com/MrHuu/openbor-3ds/releases git]
 +
| Mid
 +
| {{~}}
 +
| {{✓}}
 +
|}
  
===XEX (Xbox Executable) + Data folder (a.k.a Spilling The ISO Guts)===
+
===Lua Engine===
* '''Archive-quality dump?''' No (dump is collapsed to individual files)
 
* '''Gain:''' Immediate (total file size decreases). It still works with Xenia
 
* '''Tools Used:''' XBOX 360 ISO Extract, Exiso-GUI or Exiso. (These might be useful for rom-hacking too I guess?)
 
* '''Can be reverted?''' ISO could be rebuilt, though not accurately.
 
* '''Playable on Hardware?''' Yes. Using a JTAG or RGH exploited console.
 
* '''Playable on Emulators?''' Yes - Xenia.
 
  
===Rebuilt ISO===
+
{| class="wikitable" style="text-align:center;"
* '''Archive-quality dump?''' No (missing data)
+
! scope="col"|Name
* '''Gain:''' Immediate (total file size decreases). It still works with Xenia.
+
! scope="col"|Version
* '''Tools Used:''' ISO2GOD (also a "Games on Demand" X360 image converter). <br />Under Settings, set the output and rebuild path to the same location. Check "Always save rebuilt ISO" and set Padding to "Full (ISO Rebuild)", then save changes.<br />"Add ISO", and press "Convert". Keep generated ISO, and delete generated folder.
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
* '''Can be reverted?''' The padding quantity information alongside the original data structure is lost forever.
+
! scope="col"|Active
* '''Playable on Hardware?''' Yes. If the rebuilding process didn't damage anything vital.
+
! scope="col"|[[Recommended Emulators|Recommended]]
* '''Playable on Emulators?''' Yes - Xenia.
+
|-
 +
| CtrµLua 3DS
 +
| [https://github.com/ctruLua/ctruLua/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|-
 +
| LÖVE Potion 3DS
 +
| [https://github.com/TurtleP/LovePotion/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|-
 +
| Lua Player Plus 3DS
 +
| [https://github.com/Rinnegatamante/lpp-3ds/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
=Other Tricks=
+
=Game Creation Systems (GCS)=
==Storage Tricks==
 
These methods have the advantage of being compatible with EVERY emulator, even those without proper support for compressed ISO/archive formats.
 
  
===NTFS Compression===
+
{| class="wikitable" style="text-align:center;"
You can enable filesystem-level compression (like "NTFS Compression" in Windows) for the directory containing your ISOs/ROMs. This has a very noticeable space gain and doesn't affect the emulator's functionality. It's surprisingly more effective than many people would like to give this credit.
+
|-
 +
! scope="col"|Name
 +
! scope="col"|Latest Version
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
|[https://www.digitalmzx.com/ DigitalMZX]
 +
|[https://github.com/AliceLR/megazeux git]
 +
|{{✓}}
 +
|{{~}}
 +
|}
  
* '''Archive-quality dump?''' Yes
+
=Others=
 +
===Amiibo===
  
===Decompression on Demand===
+
{| class="wikitable" style="text-align:center;"
You can keep your ROMs/ISOs compressed in a 7zip archive and use RocketLauncher or any other [[Frontends]] to decompress 7zip archives and pass the contents onto the emulator.
+
! scope="col"|Name
 +
! scope="col"|Version
 +
! scope="col"|[[Emulation Accuracy|Accuracy]]
 +
! scope="col"|Active
 +
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| Wumiibo
 +
| [https://github.com/hax0kartik/wumiibo git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|}
  
* '''Archive-quality dump?''' Yes
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
 +
! colspan=2 width="250"| Wumiibo
 +
|-
 +
|
 +
* Wumiibo - Emulates Amiibo functionality on the 3DS without needing an NFC reader or using tags.  You can even use your own Amiibo data, after it's been decrypted, or a generic AmiiboID which are freely available and explains how to get them on the project page.
 +
|}
  
===FileSystem Deduplication, alternative file systems===
+
===CHIP-8===
If you use macOS, you can look up for fuse filesystems which support compression/deduplication. <br />
 
If you use windows, you can fire a VM/store your games on ,a pc with a transparent network file server running linux/bsd.(might be viable on low latency networks, and a fast file server) <br />
 
On linux and bsds one can use, filesystems with de-duplication(and possibly transparent file compression) like:
 
  
* '''Squashfs'''
+
{| class="wikitable" style="text-align:center;"
* '''Note:''' you can mount the filesystem and use an overlay file system to add a new file, and then create a new squashfs against an overlay folder.
+
! scope="col"|Name
** '''ReadWriteable?''' No read-only.
+
! scope="col"|Version
** '''Deduplication?''' Yes, block level.
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
** '''Active Deduplication?''' No, Deduplication is triggered by the user, during filesystem creation.
+
! scope="col"|Active
** '''Available compressors:''' zstd, xz(lzma2), lzma, gzip, lz4, lzo.
+
! scope="col"|[[Recommended Emulators|Recommended]]
** '''Compression level control:'''  Depends on the compression algorithm, xz dictionary size depends on filesystem block size.
+
|-
** '''Transparent?''' On Linux and BSD via kernel. Squashfuse avaialble for macOS.
+
| Chip-3DS
 +
| [http://www.mediafire.com/?y94yjhzf70fsfsi 1.0]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|-
 +
| Chip8-2DS
 +
| [https://github.com/nopy4869/CHIP8-2DS/releases git]
 +
| Mid
 +
| {{✗}}
 +
| {{~}}
 +
|}
  
* '''Btrfs'''
+
===Super Mario 64===
** '''ReadWriteable?''' Yes.
 
** '''Deduplication?''' Yes, file and block level.
 
** '''Active Deduplication?''' No, Deduplication is triggered by the user.
 
** '''Available compressors:''' zstd, zlib, lzo.
 
** '''Transparent?''' On Linux via kernel.
 
  
* '''Zfs'''
+
{| class="wikitable" style="text-align:center;"
** '''ReadWriteable?''' Yes.
+
! scope="col"|Name
** '''Deduplication?''' Yes, file and block level.
+
! scope="col"|Version
** '''Active Deduplication?''' Yes, deduplication happens during writes.(high memory requirements)
+
! scope="col"|[[Emulation Accuracy|Accuracy]]
** '''Available compressors:''' zstd, zlib, lzo.
+
! scope="col"|Active
** '''Transparent?''' On Linux, BSD, via kernel. Openzfs on mac os(?).
+
! scope="col"|[[Recommended Emulators|Recommended]]
 +
|-
 +
| SM64 3DS
 +
| [https://github.com/sm64-port/sm64_3ds git]
 +
| Mid
 +
| {{✓}}
 +
| {{✓}}
 +
|}
  
* '''Xfs'''
+
{| class="mw-collapsible mw-collapsed wikitable" style="width: 100%;"
* '''Note:''' Without de-duplication it is already quiet efficient at storing files.
+
! colspan=2 width="250"| SM64 3DS port
** '''ReadWriteable?''' Yes.
+
|-
** '''Deduplication?''' Yes, file level via duperemove.
+
|
** '''Active Deduplication?''' No, deduplication is triggered by the user.
+
* SM64 3DS Port - Thanks to the decompilation project, you can now enjoy SM64 on the 3DS with ''*analog*'' support and native rendering (compared to the official DS port).  Works pretty much at full speed on the New 3DS, the original model apparently has some slow downs but still playable. You can either build it yourself, or try finding pre-compiled build online (there are multiple versions, you can find some [https://web.archive.org/web/20200924080151/https://gist.github.com/stranno/2609a82f75ce346d1f1a5b99af94590c here] but it's no longer up-to-date or a more up-to-date version with 3D support [https://archive.org/details/sm64-port-3ds-mkst-7b56b78 here]).
** '''Available compressors:''' None.
+
|}
** '''Transparent?''' On Linux and BSD via kernel.
 
  
* '''Archive-quality dump?''' Yes
+
===Virtual Console Injection===
  
==Destructive Modification==
+
Some have tried injecting alternate ROMs in the available Virtual Console releases (MD, GG, NES, GBA Ambassador, GBC, Japanese emulated SFC compilations) with varying degrees of success. The emulators used for Virtual Console are not as accurate as other emulators so compatibility isn't perfect (the only exception is GBA since it runs it natively, not emulation), Sega systems in particular have high compatibility however.<br>
Sometimes, the most bloated part of the game is the game itself, either intentional or because of poor design choices.  For instance, many PSP JRPGs have a specific FMV movie duplicated a dozen times, and the Megaman Collection on GCN stores its sound data using an uncompressed format bringing the size of that portion alone to 1GB. In many of these cases, there's just not much you can do about it without destructively altering the game's data.
+
There's an easy tool that will convert and inject any supported ROM file as its associated VC application called [https://gbatemp.net/threads/discussion-new-super-ultimate-injector-nsui.500376/ New Super Ultimate Injector].  It's an all in one tool and can even remotely install the injection provided your 3DS is connected to the same network. It's currently in beta, but it's still really useful.
  
Note, "deleting" often means replacing the file with a 1KB dummy file to prevent the ISO file structure from collapsing on itself, but sometimes such care isn't even put into ensuring it's still in a functional state. Some examples:
+
==See also==
 +
* [[Nintendo 3DS emulators]]
  
* delete all videos: this brings Super Smash Bros Brawl to 4.7GB (mainly due to Subspace Emissary).
+
[[Category:Emulators on consoles]]
* delete all voice acting and occasionally sound and music: this brings Xenoblade PAL to 4.2 GB with even only one of both dubs removed.
+
[[Category:Emulators on handheld consoles]]
* delete unused content you could get with emulator cheats like rooms and stuff.
+
[[Category:Emulators on eighth-generation consoles]]
* delete "extra" languages other than the language you need.
 
* If a game has multiple quests, then you could try deleting characters/side-quest you don't like as much.
 
 
 
Tools used for this are modding tools for rebuilding file trees, like UMDGen (PSP), Tinke (DS) and also regular ISO tools (PS1, Saturn).
 
 
 
Since this results, in most cases, in very noticeable detrimental effects in gameplay (if the game doesn't crash outright), this is nothing short of mutilating the game image. Sadly enough, some of these dumps make it to sharing sites.
 
 
 
Avoid resorting to destructive modifications since it can lead to random crashes and unexpected behavior, especially in games with lots of shared assets. [[http://emulation.gametechwiki.com/index.php/File_Hashes Verify your dumps]] to make sure you don't have these, and if you still want to reduce size, prefer using other methods or uses decompression on demand. One reason to use a destructively modified dump is for burning your own Dreamcast games as GD-ROMs were over a gigabyte in size and CD-Rs top out at 850MB.
 
 
 
* '''Archive-quality dump?''' No (Removes data)
 
 
 
=References=
 
 
 
[[Category:FAQs]]
 

Revision as of 08:39, 28 October 2021

Nintendo 3DS
3ds.png
Developer Nintendo
Type Handheld game console
Generation Eighth generation
Release date 2011
Discontinued 2020
Predecessor Nintendo DS
Emulated

Because of the homebrewing scene the 3DS has had, you can install a variety of emulators. Currently, the New 3DS is capable of running much faster than the older models, making it a much more ideal platform for emulation, but despite this there are still some emulators that have issues regardless. For more information on how to homebrew your 3DS, visit 3ds.hacks.guide.

Multi-Systems

RetroArch

There are preliminary 3DS ports

Stable

Nightly

GitHub

BIOS : Download

Available cores
Cores Game/System Working? Notes
FinalBurn Alpha 2012 Arcade
  • Uses FBA v0.2.97.30 ROM sets
  • Main core (fbalpha2012_libretro) does not work, but platform-specific cores run at full speed
FinalBurn Neo NeoGeo A few games are unable to be loaded due to memory constraints
FinalBurn Alpha CPS1
FinalBurn Alpha CPS2
FinalBurn Alpha CPS3 ~ most games are too slow to run even on New 3DS, though JoJo runs almost full speed
Gambatte Game Boy/GameBoy Color
mGBA GameBoy Advance acceptable with Pokemon Ruby/Sapphire, but some games are slow to use, even on New 3DS, at present
gpSP ~50-60 FPS with dynarec
Mednafen VB Virtual Boy ~ ~25-30 FPS
Mednafen PCE fast PCE/PCECD/SuperGrafx
Mednafen NGP NeoGeo Pocket/Pocket Color
Mednafen WS WonderSwan/WonderSwan Color
FCEUmm NES/FDS
Nestopia ~55-60 FPS, use FCEUmm instead
QuickNES
NXEngine Cave Story
PCSX-ReARMed PlayStation 1 ~50-60 FPS at standard resolution
PicoDrive MegaDrive/Genesis/MasterSystem/GameGear/CD/32X 2D games run full speed, 3D games run about 30 FPS or less
Genesis Plus GX MegaDrive/Genesis/MasterSystem/GameGear/CD/32X/SG-1000 Redbook audio hangs when suspending or pausing RetroArch
Snes9x 2002 (PocketSNES) SNES less compatible than CATSFC, but can actually run many special chip games at full speed
Snes9x 2005 (CATSFC) ~55-60 FPS on standard games, ~50 FPS on Super FX games
Snes9x 2005+ (CATSFC Plus) Same as Snes9x 2005 but with better sound, at the cost of a few FPS, has more accurate audio, slower
Snes9x 2010 (Snes9x Next) Most accurate but slowest SNES core (~40 FPS),too slow to use even on New 3DS at present

Using current exploits, the New 3DS is capable of running most of these cores at or nearly at full speed on most games. The only cores the older 3DS can reliably run at full speed are 2048, Gambatte, QuickNES, NXEngine, and some older Sega games using PicoDrive. Opposed to normal use of RetroArch, these are all self-contained emulators, albeit sharing the same automatic configuration. Screenshot-taking is broken. Upon exiting RetroArch 3DS, press the Start button.

RetroArch (Unofficial)

Unofficial 3DS builds

New3DS performance
Core Game/System Working? Notes
TGB Dual GameBoy/GameBoy Color ~60fps
GW Game & Watch ~58fps
FUSE ZX Spectrum ~60fps
VecX Vectrex ~55fps
O2EM Odyssey ² ~60fps
Stella Atari2600 ~60fps
Atari800 Atari5200 ~60fps
ProSystem Atari7800 ~60fps
Handy Atari Lynx ~60fps
FinalBurn Alpha CPS3 Arcade ~ ~35fps/~50fps
FinalBurn Neo NeoGeo ~ ~40fps/~50fps
Virtul Jaguar Atari Jaguar ~10fps (Technically works but is unplayably slow)
Yabause Sega Saturn ~5fps (Technically works but is unplayably slow)
4DO 3DO ~8fps (Technically works but is unplayably slow)

Ultimate 3DS emupack

Version git FLOSS ✓ Recommended
Supported Emulators
  • Nintendo 64 : DaedalusX64 0.2
  • SNES : Snes9X 1.30
  • NES : VirtuaNES 1.02
  • TurboGrafx/PC Engine : TemperPCE 1.02
  • MasterSystem/MegaDrive/Sega CD/32x : PicoDrive 0.94
  • CHIP-8 : CHIP-3DS
  • Atari 2600 : z26 3DS
  • GB/GBC : GameYob 1.0.8
  • GBA : mGBA 0.8.4

Linux OS

Name Version Accuracy Active Recommended
Linux 3DS Update ? ~ ~

Nintendo

NES

Name Version Accuracy Active Recommended
VirtuaNES for 3DS git Mid ~
3DNES git Mid ~

SNES

Name Version Accuracy Active Recommended
SNES9x for 3DS git Mid ~
blargSNES 1.3b Mid ~
SNES9x for 3DS
  • Snes9x for 3DS - runs a good majority of games well, even on old 3DS/2DS's. It's recommended to use a New 3DS if you want to run games that uses the SuperFX or SA-1 chip properly
blargSNES
  • blargSNES - It works well, but lacks compatibility for games that require enhancement chips (SA1, SuperFX, etc.)

Nintendo 64

Name Version Accuracy Active Recommended
DaedalusX64 3DS git Mid ~
DaedalusX64

DaedalusX64 - N64 has always been known to be a hard system to emulate, which is why many were skeptical about how feasible it would be to have an emulator for the system on the 3DS. While still in its beta stage, it has shown a lot of improvements thanks to using a dynamic recompiler, with some games running at a playable state. It also supports using stereoscopic 3D (at the cost of slower performance), which isn't a feature a lot of emulators have.

Game Boy

Name Version Accuracy Active Recommended
GameYob git Mid ~
Cinoop git Mid ~
GameYob
  • GameYob - forked from a popular emulator used on the DS. Emulates the Game Boy and Game Boy Color. The original DS version is actually more polished than the 3DS port, so some of the more hardware pushing games won't work as well as the DS port.

Virtual Boy

Name Version Accuracy Active Recommended
r3Ddragon git Low ~
r3Ddragon
  • r3Ddragon - It's kind of surprising that Nintendo never released a Virtual Console for the Virtual Boy on the 3DS, especially given how small the library of games were for the system and how both utilize 3D effects and cause eyestrain. What makes this emulator stand out is the fact that it's able to display the graphics in 3D the way it was intended, something that is almost impossible to do on other platforms, unfortunately compatibility is still low and requires a New 3DS to run. Development has since opened.

Pokémon Mini

Name Version Accuracy Active Recommended
PokeMini 3DS git Low ~

Game Boy Advance

The 3DS does include native firmware for a GBA mode which was mainly used to run ambassador releases instead of having to develop an emulator for them. Because it's technically running a "virtual" GBA, it can't provide features that are normally available on other emulators, such as savestates, screen filtering, or sleep mode, however it does have high compatibility with the exception of cartridges with special hardware. If you're using an old 3DS/2DS, this is the best option to play GBA games. There are two ways to take advantage of this firmware:

Name Version Accuracy Active Recommended
New Super Ultimate Injector (NSUI) Beta 27 Mid
open_agb_firm git Mid
GBARunner2 git Mid
NSUI
  • New Super Ultimate Injector - There are other programs that can do injections, but this one is nice as it can do other Virtual Console injections and some forwarders for emulators. The only problem is each ROM must be injected and installed individually, including the save files, which makes the number of titles that can be installed restricted to the max the 3DS title limit (300 titles, not including pre-installed system titles).
Open agb firm
  • open_agb_firm (Name not finalized) - A custom FIRM payload that takes advantage of the built-in GBA firmware, it's still in early development but has an alpha build available. The major advantages of this compared to VC injection is that it performs faster and there aren't any issues with the sound, it utilizes the native hardware (even with VC injection there are issues with the sound, ex.: "Fire Emblem"). It can load the ROM through the SD card instead of having to convert and install them, but needs to be launched on boot instead of being able to use the 3DS HOME Menu (there's ways to make a forwarder for in on the HOME menu, but requires additional setup to get it to work). One major issue is there's a chance that it may not detect the correct save format or will corrupt the existing save file so make sure to backup your saves beforehand (they are currently trying fix it by having a better database for save detection, if you're interested you can help).
    • To install, simply put the .firm file in the /luma/payloads/ folder and hold START to load up the chainloader to launch it. There's no way of exiting out once the program starts, so you will need to turn it off and redo the step to load it if you wanted to change games.
GBARunner2
  • GBARunner2 - a GBA hypervisor made for the DS(i), can only be ran through TWiLight Menu++ and is included by default with the program (see below). Compatiblity can be a hit-or-miss, but it's still in active development with plans to include interesting features such as gyro control emulation and local wireless multiplayer in the future.
Name Version Accuracy Active Recommended
mGBA git Mid
CitrAGB (based on gpSP) 1.0 Low ~

Nintendo DS

Name Version Accuracy Active Recommended
TWiLight Menu++ git Mid
DeSmuME git Mid
TWiLight Menu++
  • TWiLight Menu++ - Not technically an "emulator", rather it's a frontend for a separate program, nds-bootstrap, which allows for an NDS ROM to be loaded from an SD card. The program is originally designed for the DSi, however it's able to work on the 3DS by utilizing the virtual DSi (aka the TWL_FIRM or "DS Mode") that the 3DS has for backwards-compatibility. Compatibility isn't the same as using a flashcart, however it's still pretty high with only a few games having issues or triggering anti-piracy protections (newer versions now come with AP patches for most games and will patch them if needed at launch). It also comes pre-bundled with a variety of emulators used on the DS and a work-in-progress GBA hypervisor, GBARunner2, that works to some degree.
DeSmuME
  • DeSmuME - an experimental port of DeSmuME that has since been abandoned, it wasn't very compatible.

Nintendo DSiware

Because the firmware that the 3DS uses for backwards-compatibility is actually the same as the DSi, it's possible to inject DSiWare as an installable .cia file. There's two ways to do this:

Name Version Accuracy Active Recommended
GodMode9 git Mid
DSiWare Conversion Script Script Mid ~
GodMode9
  • Version 1.8.0 and above has a script that can convert .nds to .cia, 3ds.hacks.guide has more information on how to update to the latest version if needed.
DSiWare Conversion Script
  • This script can be used to convert .bin files from your DSi's SD card to .nds which can then be used to convert into .cia.

These scripts will ONLY work for DSiWare, NOT NDS GAMES.

TWiLight Menu++ has support for two DSiWare as of v15.1.1 with a special preview of nds-bootstrap, Pop Island and Pop Island: Paperfield. These can also run on the DS.

Sony

PlayStation

Name Version Accuracy Active Recommended
PCSX-ReARMed (RetroArch) Nightly Mid
CTRX git Low
PCSX-ReARMed
  • PCSX-ReARMed (RetroArch) - Thanks to the work of many developers, it is now possible to have full speed 60 FPS emulation for a majority of games and support for .CHD compression formats. Generally, 2D games will perform better than 3D, however you can get some better performance by tweaking the settings if necessary. The nightly builds have seen major improvements since the initial release and can even play some of the more demanding games at full speed (See here for some tips), so it's better to use that until the next stable release. NOTE: This emulator is mainly targeted for the New 3DS so don't expect the o3DS to run well if at all.

SEGA

MegaDrive/Genesis/MasterSystem/32X/Sega CD

Name Version Accuracy Active Recommended
PicoDrive for 3DS git Mid
PicoDrive for 3DS
  • PicoDrive for 3DS - 32X and Sega CD are playable on the original 3DS, but works better on New 3DS. Sega CD requires BIOS in order to play, they must be named:

"bios_CD_U.bin", "bios_CD_J.bin", and "bios_CD_E.bin" based on the respective regions. BIOS need to be in the /3ds/picodrive_3ds/bios folder.

Atari inc.

Atari 2600

Name Version Accuracy Active Recommended
Z26 3DS 2.0 Mid ~

Atari 5200

Name Version Accuracy Active Recommended
Atari800 3DS 0.3.4 Mid ~


Atari Lynx

Name Version Accuracy Active Recommended
Handy 3DS 1.1b Mid ~

NEC

PCE/PCECD/SuperGrafx

Name Version Accuracy Active Recommended
TemperPCE for 3DS git Mid

GCE

Vectrex

Name Version Accuracy Active Recommended
Vex3DS (based on vecx) 0.4 Mid ~

SNK

Neo Geo Pocket/Pocket Color

Name Version Accuracy Active Recommended
NeoPop-sdl 3DS git Mid ~

Microsoft

DOS

Name Version Accuracy Active Recommended
3DOS 1.0 Mid ~
  • 3DOS - Based on 8086tiny. Can only emulate 8086 CPUs.

Apple

mac 2.x

Name Version Accuracy Active Recommended
Mini vMac 3DS git Mid ~

Sinclair

ZX Spectrum

Name Version Accuracy Active Recommended
3DS Spectrum 0.1 Mid ~

Commodore

Commodore 64

Name Version Accuracy Active Recommended
Bread Box 1/06/16 Mid ~
VICE3DS git Mid ~

Amiga

Name Version Accuracy Active Recommended
UAE3DS git Mid ~

Other

Uzebox

Name Version Accuracy Active Recommended
Cuzebox 3DS git Low ~

Multi game engine

Name Latest Version Active Recommended Supported game(s)
OpenLara git ~ Tomb Raider 1-4

ScummVM

Name Version Accuracy Active Recommended
ScummVM 3DS 2.2.0 High

EasyRPG

Name Version Accuracy Active Recommended
EasyRPG 3DS 0.6.2.3 High

OpenBOR

Name Version Accuracy Active Recommended
OpenBOR 3DS git Mid ~

Lua Engine

Name Version Accuracy Active Recommended
CtrµLua 3DS git Mid ~
LÖVE Potion 3DS git Mid ~
Lua Player Plus 3DS git Mid ~

Game Creation Systems (GCS)

Name Latest Version Active Recommended
DigitalMZX git ~

Others

Amiibo

Name Version Accuracy Active Recommended
Wumiibo git Mid
Wumiibo
  • Wumiibo - Emulates Amiibo functionality on the 3DS without needing an NFC reader or using tags. You can even use your own Amiibo data, after it's been decrypted, or a generic AmiiboID which are freely available and explains how to get them on the project page.

CHIP-8

Name Version Accuracy Active Recommended
Chip-3DS 1.0 Mid ~
Chip8-2DS git Mid ~

Super Mario 64

Name Version Accuracy Active Recommended
SM64 3DS git Mid
SM64 3DS port
  • SM64 3DS Port - Thanks to the decompilation project, you can now enjoy SM64 on the 3DS with *analog* support and native rendering (compared to the official DS port). Works pretty much at full speed on the New 3DS, the original model apparently has some slow downs but still playable. You can either build it yourself, or try finding pre-compiled build online (there are multiple versions, you can find some here but it's no longer up-to-date or a more up-to-date version with 3D support here).

Virtual Console Injection

Some have tried injecting alternate ROMs in the available Virtual Console releases (MD, GG, NES, GBA Ambassador, GBC, Japanese emulated SFC compilations) with varying degrees of success. The emulators used for Virtual Console are not as accurate as other emulators so compatibility isn't perfect (the only exception is GBA since it runs it natively, not emulation), Sega systems in particular have high compatibility however.
There's an easy tool that will convert and inject any supported ROM file as its associated VC application called New Super Ultimate Injector. It's an all in one tool and can even remotely install the injection provided your 3DS is connected to the same network. It's currently in beta, but it's still really useful.

See also