I also don't like the idea that the loader is installing wad files to realNAND/SD.
On emuNAND I'm fine with it, it will never brick the Wii. I don't want the users to reject their brick fault on the loader or developer.
It already happened once with USBLoaderGX (with 2.x) because users didn't use the Wii correctly. I don't want to be responsible.
If I add a wad manager, it will be for Full channel auto-updater only, not to install Wads by the user.
I never wanted to use auto-DIOS MIOS (Lite) wad installer either for the same reason.
See what the users are installing on their wiiU ? BC and MIOS because they are using old version of wiiflow with no console detection and it let the user install Wii IOS to vWii.
When updating USB Loader GX, how do I know which IOS version to use. There are 3 files in the 7zip folder. IOS222, IOS249 and IOS250. I did do some searching and if I read it correctly you can use any of them and they should work but it would just take an extra second or two to load up if you used the wrong one. I've always just used IOS249 and never had any problems. I'm just curious to know a more in depth explanation as to why one would be better than the other and who would benefit from using them if they all in fact work the same.
You are right, it's all the same thing. You can even choose a different version to load by editing your meta.xml if you want a version with 253 for example.
When I compile, I release 249/250/222 because it was historically what the users used as main IOS. I'm not sure if 222 is still used as default, but I still provide it just in case a user want it.
To understand the difference:
When you launch a homebrew, if you want USB/SD/NAND/hardware access you need to use an IOS with hardware capability (cIOS or ahb_access).
You can use either IOS58, or a cIOS to get access to all the devices.
In USBLoaderGX, the user can select the IOS he wants to use in the loader's settings.
When you load USBLoaderGX if first reload to the default IOS (the one you find in the package: 249/222/250), to get access to SD/USB, then once access is possible it loads the config file.
So if you use version 249, but in the config file there's a different "default" IOS that you want to use (for example 250 because you like that slot, or has a user defined setup), then the loader will reload the cIOS again. it takes 2 seconds.
HBC > reload IOS to build slot (2 seconds) > mount device > check .cfg file > reload IOS if needed (2 seconds) > continue loading the loader
HBC > reload IOS 249 > mount SD > check Cfg > user want 249 > continue loading
HBC >reload IOS 249 > mount SD > check Cfg > user want 250 > reload IOS 250 > continue loading
Look at my setup in my signature, I have rev17 in slot249, and d2x base 56 in slot 250.
I use slot 250 by default for USBLoaderGX, but I want to keep rev17 in slot 249 for compatibility reason with old homebrew.
I can tell USBLoaderGX to reload to 250 directly by using two methods :
-
Use the build 250
HBC > reload IOS 250 > mount SD > check cfg > user want 250 > continue loading
or
-
define the IOS I want in meta.xml
HBC > read meta.xml argument and find 250 > reload IOS requested by meta.xml > mount SD > check cfg > user want 250 > continue loading
or
HBC > read meta.xml argument and find 58 > mount SD > check cfg > user want 58 > continue loading
The last one is even faster, as HBC is already running on IOS58; no reloading is necessary to use the loader.