Emulator Issues #12046
closed
Feature request: Allow custom path for complete dolphin-emu folder
Added by ds22x over 4 years ago.
Updated almost 3 years ago.
Issue type:
Feature request
Relates to performance:
No
Relates to maintainability:
No
Description
As previously mentioned in pr7920, allowing to set a custom path for the entire dolphin-emu folder (especially for Android) would not only allow for easier access to the dolpin-emu folder files, it would also allow it to be put on external storage, which would benefit devices with limited internal storage (E.G. the Nvidia Shield), as currently it doesn't allow for GameCube memory card, savestates and shader cache files to be put on external storage.
- Status changed from New to Accepted
- Issue type changed from Bug to Feature request
- Operating system Android added
- Operating system deleted (
N/A)
Accepting for Android only. We will probably want to add this before Google forces scoped storage on Google Play apps, since that will prevent us from placing the dolphin-emu folder outside of app-specific storage without the user explicitly giving us access to some other location, more or less requiring us to put the dolphin-emu folder in app-specific storage by default (which as you may know will mean that the whole dolphin-emu folder gets deleted if you uninstall the app – something that users might not want, especially since an uninstall is required when switching between Google Play builds and dolphin-emu.org builds).
The reason why I'm not accepting this for non-Android systems is because it's not clear how we should save the setting of which dolphin-emu folder location to use, since we obviously can't store it in dolphin-emu. On Android we can just use the Android preferences system, which we already use for some settings. Also, non-Android builds (at least on some OSes) already have the portable.txt mechanism which accomplishes essentially the same thing.
- Status changed from Accepted to Questionable
Actually, after learning more about the restrictions of scoped storage, I believe that it would be prohibitively difficult to support having the dolphin-emu folder anywhere other than app-specific storage when scoped storage is active, even with the user granting permission. Perhaps it's best to not add this feature to then have to remove it later.
Would that also mean that the current available custom paths would have to be removed?
Because if not, at least a path for the GC folder would be a nice addition to the list, as it is currently not possible to keep those on external storage, while it is possible to keep Wii savefiles externally stored due to them being integrated into the Wii's nand.
It probably wouldn't be too hard to support custom paths for single files under scoped storage, like the SD card and raw GameCube memory cards. I'm less hopeful about things like the Wii NAND and GameCube GCI folders – those would probably need to be removed for devices running Android 11 and up.
IIRC, M64Plus FZ seems to have support for folders with scoped storaged, so it doesn't seem to be out of the realm of possibility
It's not impossible, but it's really tricky if all the folder management code is in C++.
I find it odd that no one has mentioned that you can already move the Dolphin Emulator folder on all platforms except android. In fact, when the Global User Directory system was implemented, the ability to move it was built right now from the start! (though again, exception being Android). We even have a guide for it! https://dolphin-emu.org/docs/guides/controlling-global-user-directory/
Of course this has already been defined as an Android specific issue, but just mentioning, this is functionality that is already standard on our other platforms. Android just makes it way more complicated.
- Status changed from Questionable to Won't fix
The performance loss we would have to eat when doing this under SAF is too large. Sorry, but I don't think we realistically can implement this, unless we want it to only work on Android 10 and older.
Unfortunate but understandable.
Also available in: Atom
PDF