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

archive_ncch: add open source country list archive #4256

Merged
merged 2 commits into from Sep 27, 2018

Conversation

Projects
None yet
3 participants
@wwylele
Copy link
Member

commented Sep 22, 2018

See here for the source code for generating the data. (Un)fortunately the generated data is a 100% match with the original version dumped from 3DS. There shouldn't be copyright issue, however, as the source code shows that the data can be generated purely from public information.


This change is Reviewable

@lioncash

This comment has been minimized.

Copy link
Member

commented Sep 22, 2018

Just a suggestion, but for yuzu, I made a Python script that generates files like these from data, but generates them in .cpp and .h pairs, so the data doesn't get copied twice if ever referenced in more than one translation unit (was used for this PR). It can be found here if it seems like a good idea for citra. Feel free to ignore it if it's not applicable.

Edit: Yeah disregard this, I mistakenly thought this was related to fonts for some bizarre reason.

@wwylele

This comment has been minimized.

Copy link
Member Author

commented Sep 23, 2018

@lioncash good idea actually. I'll look into it in the next pass where we are going to unify the open source archive generator into python scripts.

@wwylele

This comment has been minimized.

Copy link
Member Author

commented Sep 23, 2018

Sorry that I lied a little. There is a small chunk of data that is not public information. The tail field that you can see in the json file. They are there for every each country entry and are usually 4 - 12 bytes long. Most of them are zeros. A few of them are strangely non-zero and has some special values like 0xFFFFFFFF, 0x00400000. I have no idea what they means.

@wwylele

This comment has been minimized.

Copy link
Member Author

commented Sep 23, 2018

It is identified that tails are bit flags, one bit for each country/division. Only a few entries has this bit set. If I don't find what it means soon, I'll just clear them all in the open source archive.

@wwylele

This comment has been minimized.

Copy link
Member Author

commented Sep 23, 2018

The unknown tail problem is solved in B3n30/citra_system_archives#9. The generated data is unchanged (except for git hash).

@wwylele

This comment has been minimized.

Copy link
Member Author

commented Sep 26, 2018

going to merge if no more comments.

@wwylele wwylele merged commit 7c97e8d into citra-emu:master Sep 27, 2018

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details

@wwylele wwylele deleted the wwylele:country-list branch Sep 27, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.