From WikiTemp, the GBAtemp wiki
(Disc Terms)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Glossary ==
 
  
 
The NKit documentation uses the terms below. To prevent repeated explanation of words and terms in other articles they are listed and briefly explained once here.  
 
The NKit documentation uses the terms below. To prevent repeated explanation of words and terms in other articles they are listed and briefly explained once here.  
 
  
 
They are listed in a related logical order rather than alphabetically.  
 
They are listed in a related logical order rather than alphabetically.  
  
=== General Terms ===
+
== General Terms ==
  
 
===== Nkit =====
 
===== Nkit =====
Line 107: Line 105:
 
  Used to refer to a specific type of bug that has happened in NKit due to the nature of the multithreading and internal circular buffer. Any progress bars stop moving and the app becomes idle
 
  Used to refer to a specific type of bug that has happened in NKit due to the nature of the multithreading and internal circular buffer. Any progress bars stop moving and the app becomes idle
  
=== Disc Terms - WIP ===
+
== Disc Terms ==
  
See the Disc Documentation for detailed information  
+
These items make up the discs (mainly the Wii disc). See the Disc Documentation for detailed information about how this all fits together
  
 
===== Disc =====
 
===== Disc =====
Line 145: Line 143:
  
 
===== Partition Header =====
 
===== Partition Header =====
  Wii Partition Headers consist of the Ticket, Cert Chain, TMD, Partition Data Size and H3 table  
+
  Wii Partition Headers consist of the Ticket, Cert Chain, TMD, Partition Size and H3 table
  
 
===== Partition Data =====
 
===== Partition Data =====
  Wii Partition Data is like a GameCube disc. Amongst other things it contains a Header, Fst, Files and Junk  
+
  Wii Partition Data is like a GameCube disc. Amongst other things it contains a Header, Fst, Files and Junk. Not to be confused with the Data Partition
  
 
===== Group =====
 
===== Group =====
Line 154: Line 152:
  
 
===== Block =====
 
===== Block =====
  A block is a 32k collection of 1k sectors. The first sector contains H0, H1 and H2 hash tables. Sector  
+
  A block is a 32k collection of 1k sectors. The first sector contains H0, H1 and H2 hash tables. Sector 1 is the hash sector
  
 
===== Hashes =====
 
===== Hashes =====
Line 170: Line 168:
 
===== Fst =====
 
===== Fst =====
 
  The File System Table. This hold the position, size and name of the files  
 
  The File System Table. This hold the position, size and name of the files  
 +
 +
===== Junk File =====
 +
A file marked in the Fst but is not written. Normal gap rules apply to this area
  
 
===== Gaps =====
 
===== Gaps =====

Latest revision as of 08:58, 5 September 2019

The NKit documentation uses the terms below. To prevent repeated explanation of words and terms in other articles they are listed and briefly explained once here.

They are listed in a related logical order rather than alphabetically.

General Terms

Nkit
Nintendo ToolKit – This set of apps based around the NKit.dll. Used to Convert and Recover GameCube and Wii images 
NKit Format
NKit has its own format. Designed around preservation and always convertible back to the source iso data. It's the smallest format and playable in Dolphin 
NKit.iso
NKit raw format. Playable in Dolphin. GameCube is playable on hardware. When externally compressed (7zip...) it's the smallest version 
NKit.gcz
NKit compressed format. Playable in Dolphin only. The GCZ container is Dolphin's own seekable compressed format. This is the smallest playable format
Conversion
The process of converting source images to output formats 
Passes
Conversion often requires multiple passes. E.g. Recover to Iso, Convert To NKit, Verify 
Processing
General term for the conversion of an image or a pass
Image
A file, iso or game being converted 
Archives
Zip, Rar, 7zip files containing an image 
Forward Only
NKit can stream images from archives (zip, rar, 7z). These formats only allow reading of files from start to end. NKit is designed and built around this
Patch
When processing images in a forward only stream. Any data to be updated in the output is patched (updated) at the end 
Checksums
Values that identify images to verify correctness and to match against dat files of known images. NKit can create CRC, MD5 and SHA1 
CRC
Used throughout NKit to validate and verify images. CRC is useful as it can be calculated in sections and combined when applying patches. This saves having to reprocess an output image to get a match
Redump
Redump is a preservation project that holds Dat files of images and their checksums. Matching these images ensures they are not corrupt 
Dat
A file of known images, sizes and checksums 
Recovery
Creating a good known Dat image from any source image. This involves fully rebuilding the image and brute forcing items (header, region, partitions) to match a Dat CRC 
Recovery Files
Files required by recovery processing. Without these files, recovery is limited to very few scenarios. Basically unscrubbing
Convert
Convert an image to and from the NKit format preserving its exact data 
Restore
Used to describe converting back from the NKit format 
Match
A processed image that matches an entry in a dat 
Valid
An image restored from NKit that matches the source image CRC 
Bad Conversion
Some unlicensed, hacked or modified images are not correct and cannot be reprocessed. They may work correctly if the bad data is never referenced. NKit can still convert and restore these images. They are called Bad Conversions because they will not run in this state 
Summary
A summary of each conversion is logged in to the Summary Log file. This should be checked when processing large batches 
Brute Force
Recovering imaged to match a dat CRC can rely on combining many possibilities together until one matches something. NKit Recovery has the ability to deduce some header variants, region and update partitions 
Preservation
Converting an image that can be verified to be restored back to the original iso data
Scrambled
Raw Wii images are known as scrambled. NKit does not support these. They must be unscrambled first 
Unscrambled
Unscrambled images are supported. Some have an extra 32k of space. NKit will detect and remove this when recovering as no Redump images have it
RVT
There are 2 types of Wii RVT images RVT-R and RVT-H. NKit supports RVT-R as source images. They are required to be iso and 7MB larger than a normal image. RVT-H is the NKit Wii format with additional info in the disc header. Dolphin has supported RVT for a while
WBFS
WBFS is a disk and file format. NKit supports the file version. It is a block removal format. Tools that create it also often remove non-game partitions also. NKit is able to recover these using recovery files
Iso.dec
A block removal format that only removed blocks containing valid junk data. This is also a preservation format. Not playable in Dolphin 
Source
Used to refer to an input image in any format 
Output
Used to refer to an output image in any format 
Hang
Used to refer to a specific type of bug that has happened in NKit due to the nature of the multithreading and internal circular buffer. Any progress bars stop moving and the app becomes idle

Disc Terms

These items make up the discs (mainly the Wii disc). See the Disc Documentation for detailed information about how this all fits together

Disc
An iso or image. For Wii or GameCube 
Partition
Wii images contain partitions, typically only Update and Data. There are, Channel, VC and Other too. They are almost identical to a GameCube disc 
Junk
Generated data used to fill gaps between data. App that shrink images remove this 
NonJunk
An unimaginative term to describe data that didn't match generated junk. NonJunk is preserved. It's mainly found in non-Redump images such as hacks etc. 
Preservation Data
Added to an image by NKit to be able to reconstruct missing areas of junk. Generally any junk areas are reduced to 4 bytes 
Scrubbed
Areas of an image that have been wiped with 00, FF so that the image compresses better 
Compacted
An image that has had the files in its file system moved to the start of the disc. This is a GameCube thing. NKit also does this for both Wii and GameCube images 
Truncated
 Compacted imaged are often resized to remove the unused data to shrink the image. This is a GameCube thing as Wii tool use block removal. 
Weird Data
Unknown data found in some images directly after a small update partition. It's removed by scrubbers and WBFS. 
Disc Header
 The start of a disc. It contains the Disc ID, Disc Number, Disc Version, Title. Wii also contains the Region and Partition table 
Partition
Wii partitions consist of a Partition Header and Data 
Partition Header
Wii Partition Headers consist of the Ticket, Cert Chain, TMD, Partition Size and H3 table
Partition Data
Wii Partition Data is like a GameCube disc. Amongst other things it contains a Header, Fst, Files and Junk. Not to be confused with the Data Partition 
Group
A group is a 2mb collection of 64 32k blocks 
Block
A block is a 32k collection of 1k sectors. The first sector contains H0, H1 and H2 hash tables. Sector 1 is the hash sector
Hashes
Hashes are SHA1 and checksum the partition data and each other 
Hash Sector
The first sector in a block 
Encryption
Wii partition data is encrypted using AES 
Key
Wii partition data encryption requires an AES key 
Fst
The File System Table. This hold the position, size and name of the files 
Junk File
A file marked in the Fst but is not written. Normal gap rules apply to this area 
Gaps
Space between files where the junk lives and scrubbing occurs 
Trailing Nulls
0 to 31 nulls that follow file data. The start of a gap