Re: Gamecube nkit and iso question
Posted by pezpmocuivunmnx
An iso is essentially an exact copy of the disc, including the empty sections of the disc. However, if your game only takes up a few MB's of space, most of that space is unused (a gamecube disc holds 1.2GB), so collections full of isos will take up much more space than is truly necessary.
One way to reclaim all the wasted space is to just remove the junk data from the image to create a "trimmed iso". A trimmed iso will typically be much smaller, but it will no longer be redump compliant. The redump database works by basically comparing the bytes of your dump with a known good copy, so cutting out a bunch of data will cause the verification to fail.
So we can't just strip out the data, but if it is all empty then it should compress down real well with any decent file compressor (ie: zip, 7z, rar, etc.). Unfortunately for us, this is not how gamecube (and wii) games work. While the "empty" data is junk data, it isn't actually empty but rather filled with random "data". As a result, we don't get good compression like we would if it was only 0's (and we can't just replace the junk with 0's because then it will not pass redump, similar to before).
So what is the solution? We can't compress the iso files with traditional compression software, and we cannot just strip out all the junk data because it won't pass redump. What can we do? The answer is we use nkit.
Nkit takes advantage of a fun quirk in gamecube (and wii) discs where the junk data isn't truly random, but algorithmically generated. An nkit file has the junk data stripped from it, but includes the necessary information for regenerating the original iso. This way our collections don't take up more space than needed, but we can still verify our games with redump (after restoring the original iso).
TL;DR Nkit is a goofy iso that takes up less space while containing the same information
I noticed that the roms for Resident Evil Remake for the gamecube are the nkit ones.
Now what exactly is the difference between nkit and the real isos?