nn_boss: Reimplementation

This is a full rewrite of our nn_boss (SpotPass) implementation. The previous code was based on a lot of incorrect guesswork so rather than updating that it made more sense to redo it all.

In short what changed:
- More API implemented than before, but nn_boss is very complex so we are still missing stuff (e.g. PlayReports and Task scheduling)
- Avoids redownloading nbdl files if they are already present locally (matches IOSU behavior)
- The API should be more robust in general and file hashes are now verified
- Emulated IOSU interface is compatible with nn_boss.rpl
- Added an UI option to clear the SpotPass cache
This commit is contained in:
Exzap 2025-06-14 12:59:30 +02:00
parent 3f6974fc95
commit 4fa0df6dcf
24 changed files with 3232 additions and 2223 deletions

View file

@ -1 +1,6 @@
void nnAc_load();
void nnAc_load();
namespace nn_ac
{
nnResult IsApplicationConnected(uint8be* connected);
}