In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "/tmp/nandTest.dat"

From WiiBrew
Jump to navigation Jump to search
m (Navbox)
(Function of creating this file)
Line 1: Line 1:
 
'''/tmp/nandTest.dat''' is a 25.6MB file created during the factory process to test reading and writing the NAND. It contains a specific pseudorandom pattern. The contents can be downloaded [http://static.hackmii.com/garbage.7z here].
 
'''/tmp/nandTest.dat''' is a 25.6MB file created during the factory process to test reading and writing the NAND. It contains a specific pseudorandom pattern. The contents can be downloaded [http://static.hackmii.com/garbage.7z here].
 +
 +
While the intention of this program was most likely so that any issues would get printed to [[:/shared2/test2/nanderr.log]], it also has the side effect of overwriting most of the earlier factory remnants with this pattern, making factory analysis more difficult.
  
 
Like other contents of [[:/tmp]], it is erased on every [[boot2|boot]] and [[IOS]] reload.
 
Like other contents of [[:/tmp]], it is erased on every [[boot2|boot]] and [[IOS]] reload.

Revision as of 00:16, 23 August 2021

/tmp/nandTest.dat is a 25.6MB file created during the factory process to test reading and writing the NAND. It contains a specific pseudorandom pattern. The contents can be downloaded here.

While the intention of this program was most likely so that any issues would get printed to /shared2/test2/nanderr.log, it also has the side effect of overwriting most of the earlier factory remnants with this pattern, making factory analysis more difficult.

Like other contents of /tmp, it is erased on every boot and IOS reload.

Algorithm

The following code is used to generate this file:

s32 seed = 1;
s16 rand(void) {
    seed *= 0x41C64E6D;
    seed += 12345;
    return (s16) seed >> 16;
}

u8 getRandomChar(void) {
   return rand() >> 8;
}