-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
loader: add SetExternalContentSource extension #225
loader: add SetExternalContentSource extension #225
Conversation
e8297e5
to
e6c1e80
Compare
I've had to change the original design of the command from |
e6c1e80
to
b724550
Compare
|
b724550
to
15d085f
Compare
Tested working on 5.0.0, for real this time. Some things that are a little bit dirty about this are that since I mount ECS on |
f79af69
to
1f564fa
Compare
Changed to mount ECS as |
Currently WIP, as I've not yet finished writing anything to test this. Posting here for review.
One thing that I'm noticing is that the content management code is becoming very convoluted. Perhaps there should be a different design where there is a stack of content providers that are queried for a given TID+NSO index, where each content provider can either supply the file, reject the file, or pass the request along to the next content provider.
This type of design would also allow a more powerful extension so that rather than using
SetExternalContentSource
to override a specific title's contents, a sysmodule could use a more powerfulAddExternalContentProvider
and use its own logic (rather than the limited logic available in loader) to determine override behavior. I'd like to hear your thoughts on this @SciresM.