pincushionman / cfg-loader

Automatically exported from code.google.com/p/cfg-loader
0 stars 0 forks source link

IOS slot selection #118

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Can it be implemented a selection of ios slot to use, i mean instead of only 
use ios249 can be added an option to select the slot that we want to use like 
ios200 (something similar to wad manager or dop-mii)?

Original issue reported on code.google.com by tiagof_88@hotmail.com on 30 Jan 2011 at 8:38

GoogleCodeExporter commented 9 years ago
It already IS implemented. Read the instructions for configuring which IOS cfg 
uses to load up, and how to assign individual IOS' to games.

Original comment by j.kurisa...@gmail.com on 4 Feb 2011 at 10:17

GoogleCodeExporter commented 9 years ago
I can't put it to run on ios200, i have ciox rev 21 installed in slot 200. Can 
it be for that?

Original comment by tiagof_88@hotmail.com on 5 Feb 2011 at 6:33

GoogleCodeExporter commented 9 years ago
Well, I post into this thread instead of creating a new one because I think my 
issue is related to this one.

Here is the description of my problem:
* I am currently getting into some trouble with my USB flash drive, which 
prevents me from playing some games from the USB loader, including SMG2 (this 
specific problem is quite unrelated but constitutes an explanation of why I am 
doing the following, and may clarify my use case);
* SMG2 disc has a stupid built-in feature requiring one to update the Wii to 
4.3, which is triggered by some sort of detection over the cIOS249 at boot 
time... this means that in order to play SMG2 from the disc channel, one first 
has to proceed to the update if there is a non-stub version of the cIOS249 
(needless to say that this update indeed overwrites the cIOS29, replacing it by 
a stub, which will force one to reinstall it before using the USB loader 
again...);
* in order not to have to reinstall the cIOS every time I switch between SMG2 
and USB loader, I thought that would be a good idea simply to install cIOSX 
(r21) into another slot, say 248, and to configure CFG to use this new slot;
* I then reinstalled the cIOS, let SMG2 do its stupid stub update, added an 
"iso = 248" entry in config.txt and rebooted the Wii;
* so far, so good: SMG2 is perfectly happy with this... BUT! CFG is not: when I 
try to run it, it simply says "Custom IOS 249 is a stub!" and stops immediatly.

Here is (I think) the problem: CFG first loads with the default cIOS (i.e. 
249), and _only then_ loads the configuration file, possibly changing the 
IOS... meaning it is in fact unable to run without cIOS249. Indeed, if I 
install another cIOSX to slot 249 and keep anything else unchanged, the program 
runs correctly, printing on the load screen: first "249[frag]", then 
"248[frag]".
IMHO, this behaviour makes the ios choice feature quite useless, at least for 
my use case.

I don't think this is a critical issue, but changing this might be a very 
useful improvement for those like me who have to use the USB loader along with 
the disc channel.

Further analysis:
If I correctly understood the code, there is a call to checkIOS very early in 
the 'main' function (usb-loader.c line 103), way before parsing the 
configuration file (call to CFG_Load, line 159).
I never coded for the Wii, so I may be wrong, but this double IOS loading 
sounds quite strange to me: could not the config parsing (at least some part of 
it) be made before the cIOS check/loading?

Well... If I could be of any help, I would be happy to participate in a fix to 
this (though I am not really good at C programming).
In the meantime, I wonder whether simply changing DEFAULT_IOS_IDX to 
CFG_IOS_248 in version.h would be enough to make things work the way I want 
(not in the public trunk, of course, but if I was to compile my own version)...

Original comment by capt.guy...@gmail.com on 12 Feb 2011 at 3:32

GoogleCodeExporter commented 9 years ago
capt.:
You can use ios=248 in meta.xml arguments. (Also use a forwarder that supports 
the meta.xml arguments)
Or use cfg-222.dol
Or requild with the DEFAULT_IOS_IDX change as you suggested, it should work.

Original comment by ogg...@gmail.com on 4 Apr 2011 at 8:11