Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bit identical HFS0 recreation #171

Open
msdos opened this issue Feb 17, 2024 · 1 comment
Open

Bit identical HFS0 recreation #171

msdos opened this issue Feb 17, 2024 · 1 comment

Comments

@msdos
Copy link

msdos commented Feb 17, 2024

I've been playing with nsp-nsz converstion from some time and, although nsz offers a validation method, I always keep md5 checksum of original nsp, decompress the nsz to a temp folder and check the checksums again. They match perfectly.

But I have tried 4 different xci and the decompressed xci has a different checksum. These xci were all prior validated using https://github.com/garoxas/NX_Game_Info with the latest prod.keys and title.keys.

@nicoboss
Copy link
Owner

nicoboss commented Feb 19, 2024

The current state of XCI/XCZ is like NSP/NSZ was prior to NSZ 4.3.0 which implemented bit-identical PFS0 recreation to comply with the no-intro standard. While all the files are bit identically recreated there is no such guarantee for the HFS0 file system itself. While no data is lost things like the amount of empty space between files might differ.

Bit identical HFS0 recreation is currently work in progress as part of #147. A lot of progress towards this goal was already made with the major XCI rewrite that was part of NSZ 4.6.0. Since NSZ 4.6.0 --keep can be used to keep all the HFS0 partitions including their content. With this all the difficult ground work for bit identical HFS0 recreation got laid and it's just a matter spending a few days investigating and fixing the HFS0 recreation issues. I’m more than happy to accept any pull requests contributing towards this goal.

@nicoboss nicoboss changed the title Is xci-xcz really a lossless process? Bit identical HFS0 recreation Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants