Closed suloku closed 9 years ago
Still need to find some testers for MH4U, since I tested it by manually writing the files to SSB demo save filesystem and using its product code. As far as decrypting, changing secure value, recalculating checksum and recrypting goes it works just fine.
3dsx is included because ctrulib doesn't have APT_GetProgramID() yet, I'm gonna throw the pull request now.
Sounds like really good progress! I don't know how responsive the ctrulib maintainers are, but is it possible to temporarily add code for APT_GetProgramID somewhere in the svdt repo itself (much in the same way that svdt has a few extra FS:USER functions in filesystem.h ...)?
Oh, didn't think of that, but I don't see why it wouldn't be added to ctrulib though. The pull request is already made, let's give it a couple days. But also, I guess there's no harm in adding it to svdt and removing it if it gets added; should I make a separate file for that or include it in main.c?
Actually, forget what I said. I think you'd have to duplicate apt.* entirely (unless there's a way to steal the APT:U handle, which there probably isn't), and that's just too much of a pain.
I've pulled most of this in manually, but I'll wait for ctrulib to pull this in before I post a new release, so that I can check properly that this builds. (The MH4U stuff complains about types, but it still builds, I suppose.)
Yes, it is blowfish code what gives warnings, but works fine. I guess casting could be used to get rid of those.
main.c:
secure_values.c