Difference between revisions of "Talk:NCSD"

From 3dbrew
Jump to navigation Jump to search
Line 3: Line 3:
 
@Neimod, then what exists between 0x1000 and 0x4000 and what would you call it?--[[User:3dsguy|3dsguy]] 17:09, 28 July 2012 (CEST)
 
@Neimod, then what exists between 0x1000 and 0x4000 and what would you call it?--[[User:3dsguy|3dsguy]] 17:09, 28 July 2012 (CEST)
 
: It's called the card info header, returned by gamecards when reading the header. I'm also finding your updates not always accurate because you are working only with development files, which differ sometimes greatly with retail files. If you look closely, you'll see that retail card info header is 0x200 bytes, while the development card info header is much much bigger. --[[User:Neimod|Neimod]] 20:46, 28 July 2012 (CEST)
 
: It's called the card info header, returned by gamecards when reading the header. I'm also finding your updates not always accurate because you are working only with development files, which differ sometimes greatly with retail files. If you look closely, you'll see that retail card info header is 0x200 bytes, while the development card info header is much much bigger. --[[User:Neimod|Neimod]] 20:46, 28 July 2012 (CEST)
 +
::"I'm also finding your updates not always accurate because you are working only with development files" Well, while I was making mods for 3DSExplorer specifically the NCSD module, I noticed that there was an extra section at 0x1000 bytes in the retail .CCI I had been testing by mods with. This had not been documented on 3DBrew, so to see what all this was about, I built a CCI with a developer CCI maker, BOTH retail and dev CCI followed the format of titleID, reserved(8), 'Initial data'(this section might be different to retail but uses the same amount of space.), reserved(c0), copied from executable NCCH, Reserved/not used(on retail CCIs this was filled with 'F's for the debug CCI I built, this was filled with '0's). So they were both 0x200 in size, if you ignore the filling out to offset 0x4000. Checking now, Nintendo Development CSU files, the card info header is bigger. But the point being I followed many retail .CCIs and one dev CCI(which was quite similar to retail format) for describing the format. After checking your fix up on the NCSD page, my documentation of the region 0x1000-0x1200 for retail was correct. --[[User:3dsguy|3dsguy]] 03:48, 29 July 2012 (CEST)
 +
::"I'm also finding your updates not always accurate you are working only with development files" What else have I got wrong?--[[User:3dsguy|3dsguy]] 03:48, 29 July 2012 (CEST)
  
 
Old version:
 
Old version:
Line 37: Line 39:
  
 
The region-specific NVer title for this NCSD presumably must exist on NAND. The NVer title version may also be used to check whether a system update is required before running the app.
 
The region-specific NVer title for this NCSD presumably must exist on NAND. The NVer title version may also be used to check whether a system update is required before running the app.
 +
 +
:Old Version? Is this not present in new retail game dumps?--[[User:3dsguy|3dsguy]] 03:48, 29 July 2012 (CEST)

Revision as of 02:48, 29 July 2012

The ExHeader Sha-256 hash and ExHeader Size for the NCSD header is always zero, why?--3dsguy 07:33, 28 July 2012 (CEST)

@Neimod, then what exists between 0x1000 and 0x4000 and what would you call it?--3dsguy 17:09, 28 July 2012 (CEST)

It's called the card info header, returned by gamecards when reading the header. I'm also finding your updates not always accurate because you are working only with development files, which differ sometimes greatly with retail files. If you look closely, you'll see that retail card info header is 0x200 bytes, while the development card info header is much much bigger. --Neimod 20:46, 28 July 2012 (CEST)
"I'm also finding your updates not always accurate because you are working only with development files" Well, while I was making mods for 3DSExplorer specifically the NCSD module, I noticed that there was an extra section at 0x1000 bytes in the retail .CCI I had been testing by mods with. This had not been documented on 3DBrew, so to see what all this was about, I built a CCI with a developer CCI maker, BOTH retail and dev CCI followed the format of titleID, reserved(8), 'Initial data'(this section might be different to retail but uses the same amount of space.), reserved(c0), copied from executable NCCH, Reserved/not used(on retail CCIs this was filled with 'F's for the debug CCI I built, this was filled with '0's). So they were both 0x200 in size, if you ignore the filling out to offset 0x4000. Checking now, Nintendo Development CSU files, the card info header is bigger. But the point being I followed many retail .CCIs and one dev CCI(which was quite similar to retail format) for describing the format. After checking your fix up on the NCSD page, my documentation of the region 0x1000-0x1200 for retail was correct. --3dsguy 03:48, 29 July 2012 (CEST)
"I'm also finding your updates not always accurate you are working only with development files" What else have I got wrong?--3dsguy 03:48, 29 July 2012 (CEST)

Old version:

Offset Size Description
0x200 4 Always 0xFFFFFFFF
0x204 252 Padding?
0x300 4 Used ROM size in bytes
0x304 28 Padding
0x320 8 NVer Title ID (Only Present in retail .CCI)
0x328 8 NVer Title Version (Only Present in retail .CCI)

The region-specific NVer title for this NCSD presumably must exist on NAND. The NVer title version may also be used to check whether a system update is required before running the app.

Old Version? Is this not present in new retail game dumps?--3dsguy 03:48, 29 July 2012 (CEST)