(For convenience I compiled a version and zipped it here: ) Ctrtool is pretty hard to get, and you need to compile it yourself with visual studio or with a build script. The next phase involves using ctrtool to extract the romfs. Put all those bytes into a new file named "pmd_romfs". Then select all the bytes from that place, to the offset of the romfs + the size of the romfs. That's the beginning of the romfs chunk we'll want to extract. If everything went right, the offset should bring you to the string "IVFC" in the file. Take the romfs offset we calculated earlier and press CTRL+G, enter that offset. ![]() We'll need both of them, so write them both down ! Since they're not in bytes, but in "media units" we multiply both value by 0x200, as one media unit is 0x200 bytes. Then copy the 32bits integer at 0x1B4, that's the size of the romfs chunk. Next, open that file in the hex editor, go to offset 0x1B0, copy the 32bits integer value in there that's the offset of the romfs chunk.And then you can either copy paste this into another file, or if you use Hex Edit right click and in the menu click on "write selection.". I use Hex Edit, so I just set my mark at the offset of the NCCH header - 0x100, went to the end of the entire file, and pressed CTRL+SHIFT+F9, this selected all the data past the beginning of the NCCH header. Since the NCCH header begins 256 bytes before the magic number, with a SHA-256 key, we need to start copying/exporting bytes from the offset of the NCCH header - 0x100. That's the header we'll need to locate for the next part. ![]() You'll need to search for the string "NCCH", or in bytes 0x4E, 0x43, 0x43, 0x48. So we need to get our hands dirty and grab an hex editor to cut out the actual ROM from all that junk.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |