Hacking cIOS installer future

WiiPower

Well-Known Member
OP
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
Clipper, Oggzee and me were thinking about the future of "the" cIOS installer. Well, we have different intentions and opinions about it, so we thought it might be a good idea to discuss it in public. Also none of us has one at the moment. Let's see where we get with it.

Some of the questions:

Should the installer be final somewhen?
If it was final, it would mean: When a new cIOS is released, the installer could be used directly by anybody to install the latest cIOS. This would be handy on alpha/beta releases. But it would also mean more work for whoever writes the installer.

(Only if installer would be final somewhen:)Should the installer use a .zip to get the modules or take them from a folder, or both?
- Reading from a .zip files would be the most user friendly, just download the latest cIOS, put in the root of the sd card, run the installer, select the wanted .zip and go.
- Reading from a folder would be better for people who want to change stuff in the cIOS themselves. The .zip method would allow it as well, just 1 step more. And the .zip method would be less prone to user error.
- Reading from both would have its advantages, but would make the installer more complicated.

Should the installer save downloaded IOS files to sd card?

How should the .txt/.xml file look like that will be used for the cIOS identification?
The current plan is that CFG and NeoGamma(and later most likely the others too) will be able to identify cIOS with info directly saved in the cIOS. Instead of the crappy method that is used right now, but by keeping the identification for all older cIOSes of course. ModMii will have its own way to put this info into the cIOS, which is currently not the best way for an installer that runs on a wii(inside a .bat file). The info which base IOS was used, should be added by the installer automatically as well as the magic. The info what the name of the cIOS is, its version and one additional string can be put in manually. It could be a simple ciosinfo.txt with the content:
Code:
d2x
5
beta2

The format how this data looks like in the cIOS is decided already:
typedef struct _iosinfo_t {
u32 magicword; //0x1ee7c105
u32 magicversion; // 1
u32 version; // Example: 5
u32 baseios; // Example: 56
char name[0x10]; // Example: d2x
char versionstring[0x10]; // Example: beta2
} __attribute__((packed)) iosinfo_t;

And it's located in the .app file that is used for this already by Waninkoko. It should be the .app file that is found in the tmd at offset 0x1E7
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,881
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,915
Country
Cyprus
I think supporting both a zip file and folders is overkill and probably needless work on the part of the coder. And just for user friendliness I think zip's should be supported over a folder. Any devs wanting to test something out will easily be able to zip up their modules, so I'm more concerned about the average joe who doesn't even know what winzip is, lol. But frankly, either way achieves the same thing, so I say whatever is easier on the dev writing it is what should be pursued.

I think your ciosinfo.txt is fine the way it is. Unless the dev somehow finds it easier to support comma separated values or w/e then why complicate things.

On a side note, I would however like to see the cIOS Installer be able to support offline installations not only using the unpacked contents of a base IOS (like d2x and hermes installers) but also support base IOS wads (like wanin's installers) saved to the root of the sd card or SD:\WAD. If I had to chose one over the other I think I'd prefer wads be supported.

<!--quoteo--><div class='quotetop'>QUOTE</div><div class='quotemain'><!--quotec-->And it's located in the .app file that is used for this already by Waninkoko. It should be the .app file that is found in the tmd at offset 0x1E7<!--QuoteEnd--></div><!--QuoteEEnd-->
This is always the first content of the base IOS, and it's always 64 bytes. For what it's worth, I've bolded the content *.app file to be signed for some common base IOSs in the spoiler below (note that this is the same map array that I provided dragbe when he first began building the d2x cIOS Installer)

IOS; md5; Official Content #; ModMii\WadMii Unpacked Content #

IOS37v5662; 7FC25F0AC96E9BF67F8B3CED9424471E; 00000005.app; 00000005.app
IOS37v5662; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS37v5662; ED0E3383897FFD40995AEFC666CCCBC7; 0000000a.app; 0000000a.app
IOS37v5662; 2B3B79FE155AD9034D66B1DCB442F6B2; 0000000c.app; 0000000c.app
IOS37v5662; 382D4A5CAFDB1E28BA039D25DB7C4C1F; 00000010.app; 00000001.app
IOS37v5662; BCA74B44B68F9EF062264361DEAEBA65; 00000012.app; 00000006.app
IOS37v5662; 4CDE23E5218471B875D4447512301F76; 00000013.app; 00000007.app
IOS37v5662; CDEEBA5F1073EDC04A55EDB81AB45541; 00000014.app; 00000008.app
IOS37v5662; 209537348D1ECEEE46938F8EB7A88140; 00000015.app; 0000000d.app
IOS37v5662; 707B0149597AB1D0BB46774642150EAE; 00000018.app; 00000002.app
IOS37v5662; 09EB0EF9076D396213B1FD8C8039A586; 0000001d.app; 0000000b.app
<b>IOS37v5662; B4B8612090A7F73027663042B8454849; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->0000001f.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS37v5662; 7ED691389780E91FCA6F3463B4503D72; 00000020.app; 00000003.app
IOS37v5662; FC915D37667B93102340290824A2FB79; 00000021.app; 00000004.app
IOS37v5662; 70738EA0D830C57C386B4A5023F1CB72; 00000022.app; 0000000e.app
IOS37v5662; 0C35A809426DC5B22DBF959B1D88412B; tmd.5662; 0000000100000025.tmd

IOS38v4123; EF1A8C1270F82E0993F504F1E17A5152; 00000001.app; 00000001.app
IOS38v4123; 707B0149597AB1D0BB46774642150EAE; 00000002.app; 00000002.app
IOS38v4123; 8A7C62CB13727E1AD57B8CCA4DE0BCA4; 00000003.app; 00000003.app
IOS38v4123; 7FC25F0AC96E9BF67F8B3CED9424471E; 00000005.app; 00000005.app
IOS38v4123; BCA74B44B68F9EF062264361DEAEBA65; 00000006.app; 00000006.app
IOS38v4123; 4CDE23E5218471B875D4447512301F76; 00000007.app; 00000007.app
IOS38v4123; CDEEBA5F1073EDC04A55EDB81AB45541; 00000008.app; 00000008.app
IOS38v4123; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS38v4123; ED0E3383897FFD40995AEFC666CCCBC7; 0000000a.app; 0000000a.app
IOS38v4123; 0AA8DF9B1908E2D697193398A2710622; 0000000c.app; 0000000c.app
IOS38v4123; 209537348D1ECEEE46938F8EB7A88140; 0000000d.app; 0000000d.app
IOS38v4123; 09EB0EF9076D396213B1FD8C8039A586; 00000013.app; 0000000b.app
<b>IOS38v4123; 0937F7D0C7D3742F79F94D2BCB7ED549; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000015.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS38v4123; 921CB93640145D0E68D98F7E73CC61F3; 00000016.app; 00000004.app
IOS38v4123; A24C5684539D69583ED4AB14320B85A2; 00000017.app; 0000000e.app
IOS38v4123; 17BE43DC6E9FF3D0F605744268E2188A; tmd.4123; 0000000100000026.tmd

IOS53v5662; 7FC25F0AC96E9BF67F8B3CED9424471E; 00000005.app; 00000005.app
IOS53v5662; BCA74B44B68F9EF062264361DEAEBA65; 00000006.app; 00000006.app
IOS53v5662; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS53v5662; ED0E3383897FFD40995AEFC666CCCBC7; 0000000a.app; 0000000a.app
IOS53v5662; 382D4A5CAFDB1E28BA039D25DB7C4C1F; 0000000f.app; 00000001.app
IOS53v5662; 7ED691389780E91FCA6F3463B4503D72; 00000010.app; 00000003.app
IOS53v5662; 09EB0EF9076D396213B1FD8C8039A586; 00000017.app; 0000000b.app
<b>IOS53v5662; 142FF90A40BEF2A064A8B6E2819332ED; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000019.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS53v5662; 707B0149597AB1D0BB46774642150EAE; 0000001a.app; 00000002.app
IOS53v5662; FC915D37667B93102340290824A2FB79; 0000001b.app; 00000004.app
IOS53v5662; 4CDE23E5218471B875D4447512301F76; 0000001c.app; 00000007.app
IOS53v5662; CDEEBA5F1073EDC04A55EDB81AB45541; 0000001d.app; 00000008.app
IOS53v5662; 2B3B79FE155AD9034D66B1DCB442F6B2; 0000001e.app; 0000000c.app
IOS53v5662; 209537348D1ECEEE46938F8EB7A88140; 0000001f.app; 0000000d.app
IOS53v5662; 70738EA0D830C57C386B4A5023F1CB72; 00000020.app; 0000000e.app
IOS53v5662; 50D69237871CE61D3B67DC0D1CB08727; tmd.5662; 0000000100000035.tmd

IOS55v5662; 382D4A5CAFDB1E28BA039D25DB7C4C1F; 00000001.app; 00000001.app
IOS55v5662; 707B0149597AB1D0BB46774642150EAE; 00000002.app; 00000002.app
IOS55v5662; 7ED691389780E91FCA6F3463B4503D72; 00000003.app; 00000003.app
IOS55v5662; 7FC25F0AC96E9BF67F8B3CED9424471E; 00000005.app; 00000005.app
IOS55v5662; BCA74B44B68F9EF062264361DEAEBA65; 00000006.app; 00000006.app
IOS55v5662; 4CDE23E5218471B875D4447512301F76; 00000007.app; 00000007.app
IOS55v5662; CDEEBA5F1073EDC04A55EDB81AB45541; 00000008.app; 00000008.app
IOS55v5662; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS55v5662; ED0E3383897FFD40995AEFC666CCCBC7; 0000000a.app; 0000000a.app
IOS55v5662; 2B3B79FE155AD9034D66B1DCB442F6B2; 0000000c.app; 0000000c.app
IOS55v5662; 209537348D1ECEEE46938F8EB7A88140; 0000000d.app; 0000000d.app
IOS55v5662; 09EB0EF9076D396213B1FD8C8039A586; 00000013.app; 0000000b.app
<b>IOS55v5662; D04FAB3C9DF83CA994C1FE1FC598880B; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000015.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS55v5662; FC915D37667B93102340290824A2FB79; 00000016.app; 00000004.app
IOS55v5662; 70738EA0D830C57C386B4A5023F1CB72; 00000017.app; 0000000e.app
IOS55v5662; B52279A88C3AC22818247E4048463566; tmd.5662; 0000000100000037.tmd

IOS56v5661; 707B0149597AB1D0BB46774642150EAE; 00000002.app; 00000002.app
IOS56v5661; 7ED691389780E91FCA6F3463B4503D72; 00000003.app; 00000003.app
IOS56v5661; D2BB483F60600DBCEE32A42C8E4140DD; 00000005.app; 00000005.app
IOS56v5661; A154E18660423E285F3060EED7BCE3C1; 00000006.app; 00000006.app
IOS56v5661; 4CDE23E5218471B875D4447512301F76; 00000007.app; 00000007.app
IOS56v5661; CDEEBA5F1073EDC04A55EDB81AB45541; 00000008.app; 00000008.app
IOS56v5661; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS56v5661; ED0E3383897FFD40995AEFC666CCCBC7; 0000000a.app; 0000000a.app
IOS56v5661; 2B3B79FE155AD9034D66B1DCB442F6B2; 0000000c.app; 0000000c.app
IOS56v5661; 209537348D1ECEEE46938F8EB7A88140; 0000000d.app; 0000000d.app
IOS56v5661; 89F7DC21F07E2CAE97C3A571B23D8ABD; 00000013.app; 00000001.app
IOS56v5661; 09EB0EF9076D396213B1FD8C8039A586; 00000014.app; 0000000b.app
<b>IOS56v5661; 1CA908EDD6A3147EDE056204DE1C05F1; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000016.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS56v5661; 103B720AC1B328068B88C3E893AD9C49; 00000017.app; 00000004.app
IOS56v5661; 3E95F7F5EC40894145019AE21F797053; 00000018.app; 0000000e.app
IOS56v5661; 24464D51FDF4128F7D214447BCF38F5D; tmd.5661; 0000000100000038.tmd

IOS57v5918; 7ED691389780E91FCA6F3463B4503D72; 00000002.app; 00000002.app
IOS57v5918; B9604C56F8702D92A2375CFD391627A9; 00000003.app; 00000003.app
IOS57v5918; D2BB483F60600DBCEE32A42C8E4140DD; 00000005.app; 00000005.app
IOS57v5918; A154E18660423E285F3060EED7BCE3C1; 00000006.app; 00000006.app
IOS57v5918; CDEEBA5F1073EDC04A55EDB81AB45541; 00000008.app; 00000008.app
IOS57v5918; 182E805913BBCC9E0224960DF1722CE3; 00000009.app; 00000009.app
IOS57v5918; 209537348D1ECEEE46938F8EB7A88140; 0000000b.app; 0000000b.app
IOS57v5918; 022679B31E5B262BD8B687AD5D5079DB; 0000000c.app; 0000000c.app
IOS57v5918; 14651E69E9CDD3EA0A8FD3A5D04B2722; 0000000d.app; 0000000d.app
IOS57v5918; A3768B94AA4EE0BC3B5456ADBE786D91; 0000000e.app; 0000000e.app
IOS57v5918; 7197FEE21E7C964D99D2560AE02D4183; 0000000f.app; 0000000f.app
IOS57v5918; DE376769B48B383DB4687CA0171C7CC9; 00000010.app; 00000010.app
IOS57v5918; 09EB0EF9076D396213B1FD8C8039A586; 00000014.app; 0000000a.app
IOS57v5918; 89F7DC21F07E2CAE97C3A571B23D8ABD; 00000016.app; 00000001.app
<b>IOS57v5918; 84EF155991746C575B737C2FF71EA2FF; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000018.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS57v5918; 103B720AC1B328068B88C3E893AD9C49; 00000019.app; 00000004.app
IOS57v5918; E92F7FED9D51737863F4CB616C385995; 0000001a.app; 00000007.app
IOS57v5918; 8C4BACFDFDC335D39E334077C4FE3443; 0000001b.app; 00000011.app
IOS57v5918; 3E95F7F5EC40894145019AE21F797053; 0000001c.app; 00000012.app
IOS57v5918; 49F1E1ED21E7C032EE916669EDB421BC; tmd.5918; 0000000100000039.tmd

IOS58v6175; BD997A1AC380DD28C893D5A0BDD853B8; 00000001.app; 00000001.app
IOS58v6175; 89F7DC21F07E2CAE97C3A571B23D8ABD; 00000002.app; 00000002.app
IOS58v6175; 7ED691389780E91FCA6F3463B4503D72; 00000003.app; 00000003.app
IOS58v6175; BD9C8E2521B47EAFCBA26A40C9AD2895; 00000004.app; 00000004.app
IOS58v6175; D2BB483F60600DBCEE32A42C8E4140DD; 00000006.app; 00000006.app
IOS58v6175; A154E18660423E285F3060EED7BCE3C1; 00000007.app; 00000007.app
IOS58v6175; CDEEBA5F1073EDC04A55EDB81AB45541; 00000009.app; 00000009.app
IOS58v6175; 182E805913BBCC9E0224960DF1722CE3; 0000000a.app; 0000000a.app
IOS58v6175; 09EB0EF9076D396213B1FD8C8039A586; 0000000b.app; 0000000b.app
IOS58v6175; 209537348D1ECEEE46938F8EB7A88140; 0000000c.app; 0000000c.app
IOS58v6175; AB9695DCD8308D2C4999D2F1F7A37AFF; 0000000d.app; 0000000d.app
IOS58v6175; 5207D84FC67F0F7B094FD54763DA8840; 0000000e.app; 0000000e.app
IOS58v6175; BFA6EE161B9D970C882617AD99D04241; 0000000f.app; 0000000f.app
IOS58v6175; 5FF8DC41FD1B05E812BD612E50B514E5; 00000010.app; 00000010.app
<b>IOS58v6175; D99765D699B405DC4F9636130E031D61; <!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->00000013.app<!--colorc--></span><!--/colorc-->; 00000000.app</b>
IOS58v6175; 103B720AC1B328068B88C3E893AD9C49; 00000014.app; 00000005.app
IOS58v6175; E92F7FED9D51737863F4CB616C385995; 00000015.app; 00000008.app
IOS58v6175; C0645D60E439802C102B09E5F3098054; 00000016.app; 00000011.app
IOS58v6175; 3E95F7F5EC40894145019AE21F797053; 00000017.app; 00000012.app
IOS58v6175; 35C1A5CF2A02492AE954A247FB7F69C1; tmd.6175; 000000010000003a.tmd

edit: it would also be great if offline installations supported not only IOSs saved to the SD card but also saved to an external hard drive, but that's not a huge deal

edit2: Wow, I thought this thread would be very active by now... 'sup gbatempers?! Speak now or forever hold your peace
 

cambric

Well-Known Member
Member
Joined
May 17, 2009
Messages
404
Trophies
0
Location
Tuscany
Website
Visit site
XP
77
Country
Italy
Hi all,

let me say that the idea is indeed intriguing. I would personally approach the method in this way:

SD:/apps/cIOS_Universal_Installer/ - location for the new cIOS installer and its config files
SD:/IOS/ - folder for the Nintendo IOSes in .wad files to be used as base IOS
SD:/cIOS/ - folder for the cIOSes magic, one .zip file for each different cIOS

It is better IMHO to have a one to one correspondence between .zip files and cIOSes and between .wad file and IOSes.

The installer could read the chosen base IOS from SD:/IOS/ and the chosen cIOS from SD:/cIOS/

It is useful to give the installer the possibility to perform an online installation or an offline one. In the case some .wad IOSes are missing it could first download them in SD:/IOS/ and then use them... the same for the cIOSes...

Another useful feature could be a sort of batch configuration. For example there could be a file SD:/apps/cIOS_Universal_Installer/config.txt containing the desired cIOSes configuration as a a sequence of lines slot-baseIOS-cIOStype-cIOSversion, e.g.

246 base56 d2x v3
247 base57 d2x v4
249 base56 Wani v21

the installer could sequentially install the required cIOS in the chosen slots... very useful for reinstalling cIOSes after a system update and even noob-proof

I hope these two cents ideas could be useful to you.

Thank you very much for your efforts in improving the Wii Softmod world
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,881
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,915
Country
Cyprus
building on Cambric's thoughts, u could have the installer make each and every *.zip file found in SD:/cIOS/ appear as a separate cIOS installation option, and u can also save the ciosinfo.txt in each individual *.zip file so each archive has its own unique signature. This way u can choose from multiple cIOS options without having to move or rename files\folders
 

cambric

Well-Known Member
Member
Joined
May 17, 2009
Messages
404
Trophies
0
Location
Tuscany
Website
Visit site
XP
77
Country
Italy
XFlak said:
building on Cambric's thoughts, u could have the installer make each and every *.zip file found in SD:/cIOS/ appear as a separate cIOS installation option, and u can also save the ciosinfo.txt in each individual *.zip file so each archive has its own unique signature. This way u can choose from multiple cIOS options without having to move or rename files\folders
Very right... this is what I meant with "one to one correspondence between .zip files and cIOSes"
 

WiiPower

Well-Known Member
OP
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
The plan was to have one ciosinfo.txt per cIOS, so i don't understand what the change would be. And most people have a bunch of IOS files in the root of the sd card, so i would look there, in the wad folder and it could be made to look in an /IOS/ folder as well.

Saving the downloaded wads is a good idea i think.
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,881
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,915
Country
Cyprus
@cambric, I thought u meant it was better to have 1 zip file to install 1 cIOS (rather than 6 or 7 modules) and that its better to have 1 wad file as a base IOS instead of all of its many unpacked components

Anyways, I think we're on the same page
biggrin.gif


edit:
@WiiPower, for some reason I thought the cIOS installer would only install on type of cIOS and one would need to rename folders\files to have it build another cIOS. I didn't realize my suggestion was what u had in mind all along, anyways, that all sounds cool to me
biggrin.gif
And yea, saving downloaded files is the way to go, both wanin's and hermes cIOSs worked that way
 

Slimmmmmm

GBAtemp MoNkEeE
Member
Joined
Nov 1, 2007
Messages
1,770
Trophies
0
Location
the land of lol
XP
528
Country
Zip or not doesn't concern me, but I like cambrics idea to batch install.

This would maybe save some devs of the loaders a headache if a standard could be pushed which installed ALL cIOS (+cMIOS ??) required to solve common problems.

If this approach was taken serious by more than 1 loader it could save a lot of time in the future. The "standard" install could install only a few chosen cIOS or a "full" install might include the cMIOS, hermes and the Dx to several slots ensuring the best choice to get the highest compatibility with all loaders inc uLoader, Triiforce and all the standard ones. If any official IOS eg 58 etc was something useful within this maybe it should be included too, but this then becomes more than just a cIOS installer at that point.....

If a more well thought out standard was used by people then some loaders might start to load a game with a particular cIOS knowing it is the correct choice, but as it is now no dev would add this type of feature because everyone has something different per slot to the next man in some cases. The cIOS to use could either be a hardcoded list of IDs (in code, or already in the settings file) or read the required IOS from the game and use a corresponding cIOS.

I'm glad WiiPower has taken time to start this topic and hope that a lot more people can post some thoughts on this. As I see it....this is a chance to try to standardise what people are installing to make false reports of bugs a lot rarer. I think the installer has to capture the imagination of the users so they feel it is the only real option to keep things simple.

Maybe a short list of what is really installed to the cIOS slots would be handy too.
202=hermes v# blah blah..(222,223,224 and the other 24? ones etc)...248=etc 249=dx v# etc 250=stub if written to a txt or something ? This would save the need in most cases to run another app to know what's installed.

Also do any installers tell you what is installed before installing things ? I don't think so.

A thought I had before comes to mind. You can download IOS to use in cIOS installs, you can use a .wad too, but what if you already have a certain IOS installed on your wii....why do no installers use this if it's available ? (too much work ?)
 

cambric

Well-Known Member
Member
Joined
May 17, 2009
Messages
404
Trophies
0
Location
Tuscany
Website
Visit site
XP
77
Country
Italy
XFlak said:
@cambric, I thought u meant it was better to have 1 zip file to install 1 cIOS (rather than 6 or 7 modules) and that its better to have 1 wad file as a base IOS instead of all of its many unpacked components

Anyways, I think we're on the same page
biggrin.gif
Yes, we are on the same line...
I prefer one only .wad file for IOSes instead of a folder containing many files. The same for cIOSes, one only zip file instead of a crowded folder
Different zip files will provide different cIOSes to be installed, to be joined with the different base IOSes

By the way, a standard denomination of the zip files should also be decided... just as an example:

d2x-v3.zip - for d2x cIOS version3
Wan-v21.zip - for waninkoko's v21 cIOS
Her-v51.zip - for hermes cIOS v5.1
 

WiiPower

Well-Known Member
OP
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
I was thinking about taking IOS files from nand. But i didn't come up with a nice, elegant and quick way to identify if the IOS on nand is untouched.

cambric said:
XFlak said:
@cambric, I thought u meant it was better to have 1 zip file to install 1 cIOS (rather than 6 or 7 modules) and that its better to have 1 wad file as a base IOS instead of all of its many unpacked components

Anyways, I think we're on the same page
biggrin.gif
Yes, we are on the same line...

a standard denomination of the zip files should also be decided... just as an example:

d2x-v3.zip - for d2x cIOS version3
Wan-v21.zip - for waninkoko's v21 cIOS
Her-v51.zip - for hermes cIOS v5.1

I was more thinking about reading the ciosinfo.txt from the .zip and show both filename and the info about the cIOS.
 

cambric

Well-Known Member
Member
Joined
May 17, 2009
Messages
404
Trophies
0
Location
Tuscany
Website
Visit site
XP
77
Country
Italy
WiiPower said:
I was more thinking about reading the ciosinfo.txt from the .zip and show both filename and the info about the cIOS.
Yes, this is necessary for the installer and absolutely useful....
My suggestion was just aimed to let everybody easily understand which cIOSes are present in the SD, e.g. when the card is connected to the PC...
The installer itself should look to the ciosinfo.txt file inside the .zip one.
 

Wiimm

Developer
Member
Joined
Aug 11, 2009
Messages
2,292
Trophies
1
Location
Germany
Website
wiimmfi.de
XP
1,519
Country
Germany
I like the ModMii solution:
Create a series of complete WADs on a PC and store them on SD. This makes it very fast to exchange the cIOS with MMM. Such WADs makes me independent of Wii network access and Nintendos servers.

And therefor this is my proposal:
Create an installer that is also able to create WAD files in free selected directories of the SD for a later fast installation (or for installation on other wiis).
 

Slimmmmmm

GBAtemp MoNkEeE
Member
Joined
Nov 1, 2007
Messages
1,770
Trophies
0
Location
the land of lol
XP
528
Country
How many cIOS cover all the bases these days (I use a WODE a lot, so I'm a little behind) ?

Hermes (5?).. for uLoader Nand Emu
wanin 17 ? for Triiforce to slot 249 or 250
MC...no idea
dx base(s) 56 ? to what slot(s) 24# ? for usb loaders

cMIOS... what version is best for neogamma etc ? (Wiigators based off of mios 10 ?)
 

dragbe

Active Member
Newcomer
Joined
Jan 23, 2010
Messages
38
Trophies
0
XP
99
Country
Belgium
I like how the discussion turned about cIOS installer. The development of the next relase of d2x cIOS installer goes in this direction (most of the suggestions mentioned in this post was already planned for d2x cIOS installer and for a possible future project sounding like an universal cIOS installer. Unfortunately, lack of time does not allow me to progress as quickly as I want --> it is a very good thing that other people decided to develop a new cIOS installer. Nevertheless, just for fun, d2x cIOS installer v2 will be released anyway. I'll post my suggestions soon especially about the interface (libwiigui) for an universal cIOS installer.
 

WiiPower

Well-Known Member
OP
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
It would be better if we would work together, especially if you want to integrate a GUI, i wouldn't in 100 years.
 

cambric

Well-Known Member
Member
Joined
May 17, 2009
Messages
404
Trophies
0
Location
Tuscany
Website
Visit site
XP
77
Country
Italy
Wiimm said:
I like the ModMii solution:
Create a series of complete WADs on a PC and store them on SD. This makes it very fast to exchange the cIOS with MMM. Such WADs makes me independent of Wii network access and Nintendos servers.

And therefor this is my proposal:
Create an installer that is also able to create WAD files in free selected directories of the SD for a later fast installation (or for installation on other wiis).
this is an interesting approach... the one of modmii...
the only problem is that with 3 wads (ios56,ios57 and ios37) and one zip (d2x-v3) you can install the cios in any slot choosing among 3 different bases...
on the other hand, a wad file can be installed in one only slot and the base is already chosen...
in other words, I think that an installer provides much more freedom to the user than wads...

QUOTE(WiiPower @ May 28 2011, 11:01 AM) It would be better if we would work together, especially if you want to integrate a GUI, i wouldn't in 100 years.
Up to now I saw too many developers working by themselves, sometimes on similar stuffs...
I hope to see in the near future people working toghether... the results will be highly better...
 

dragbe

Active Member
Newcomer
Joined
Jan 23, 2010
Messages
38
Trophies
0
XP
99
Country
Belgium
WiiPower said:
It would be better if we would work together, especially if you want to integrate a GUI, i wouldn't in 100 years.
In all cases, the features are more important than the interface. The implementation of an "libwiigui interface" can be optionally considered at the end of a todo list. Firstly, I will continue the development of d2x cIOS installer just for fun without advanced interface and features. After, I will read the libwiigui documentation.

NOTE: With only me as developer and my lack of time, it would take at least 100 years to get an ultimate cIOS installer.
 

XFlak

Wiitired but still kicking
Member
Joined
Sep 12, 2009
Messages
13,881
Trophies
3
Age
38
Location
Cyprus, originally from Toronto
Website
modmii.github.io
XP
9,915
Country
Cyprus
cambric said:
the only problem is that with 3 wads (ios56,ios57 and ios37) and one zip (d2x-v3) you can install the cios in any slot choosing among 3 different bases...
on the other hand, a wad file can be installed in one only slot and the base is already chosen...
in other words, I think that an installer provides much more freedom to the user than wads...I'm pretty sure WiiMod had an option to have a wad installed to a different slot, so that can probably be worked around

I got a question though... is the intention to sign older cIOSs too? I'm just wondering if I should have ModMii sign cIOSrev14 (for example)... at first I thought it was pointless cuz the loaders would prolly still need to support detecting older installations by their hashes anyways.

cambric said:
Up to now I saw too many developers working by themselves, sometimes on similar stuffs...
I hope to see in the near future people working toghether... the results will be highly better...devs are certainly coming together lately, but the beauty of ModMii and this project is how much its sped up cIOS development. Think of how much effort it must have been for wanin or whoever to release a cIOS, each time having to compile a new installer. But now with ModMii and this project, the dev can just release new modules and let users test them out without having to go through all the trouble of building a new cIOS installer. I mean, look at how many d2x beta's have been tested and the speed at which its being developed. I think this project is a great idea!

QUOTE(Slimmmmmm @ May 28 2011, 09:43 AM)
If this approach was taken serious by more than 1 loader it could save a lot of time in the future. The "standard" install could install only a few chosen cIOS or a "full" install might include the cMIOS, hermes and the Dx to several slots ensuring the best choice to get the highest compatibility with all loaders inc uLoader, Triiforce and all the standard ones. If any official IOS eg 58 etc was something useful within this maybe it should be included too, but this then becomes more than just a cIOS installer at that point.....

If a more well thought out standard was used by people then some loaders might start to load a game with a particular cIOS knowing it is the correct choice, but as it is now no dev would add this type of feature because everyone has something different per slot to the next man in some cases. The cIOS to use could either be a hardcoded list of IDs (in code, or already in the settings file) or read the required IOS from the game and use a corresponding cIOS.
WiiPower and I were discussing the possibility of something even better than this. If cIOSs are each signed, loaders can scan slots >200 and know EXACTLY what is installed in every slot. Then the loader can have an internal list of what cIOSs perform best with each game, then the loader can have a cIOS "auto" setting to choose the best cIOS for whatever game you're loading. This way, if I have cIOSd2x[56]v4 installed to slot 249 but someone else has it installed to slot 219, the loader will automatically choose the correct slot to launch the game.

edit: now that cIOSs are going to be signed, do you think we should have their version numbers always be maxed out? ie. instead of d2x v4 having a version number of 21004 should it be v65535. Loaders should be able to detect what's installed without the version number anyways. Now the only question that remains... are apps like syscheck going to be able to detect it using the same method? I would think so, but I'm not 100% sure. So what do u guys think, after signing is implemented should all cIOS version numbers be 65535?
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • S @ salazarcosplay:
    hunter x hunter
  • S @ salazarcosplay:
    he has not allowed anyone to continue it for him for example
  • Xdqwerty @ Xdqwerty:
    @salazarcosplay, theres a dragon ball af mod for budokai 3
  • Xdqwerty @ Xdqwerty:
    updated ship of harkinian, gonna install some hd texture pack
  • Xdqwerty @ Xdqwerty:
    I might download rayman revolution for my ps3
  • BigOnYa @ BigOnYa:
    I may try the new ram site, and download more RAM to my Switch. Not sure if ddr3 is the right ram
    for it tho. Edit- no it uses floppy Ram, just like @AncientBoi
    +1
  • Xdqwerty @ Xdqwerty:
    aeiou
  • BigOnYa @ BigOnYa:
    And sometimes Z
  • SylverReZ @ SylverReZ:
    @K3Nv2, MAGA supporters be wearing tin foil hats lol.
    +1
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, whats maga?
  • BigOnYa @ BigOnYa:
    It stands for Maniacs Against General Acceptance
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, people rejecting general consensus about stuff?
    +1
  • BigOnYa @ BigOnYa:
    Yup, nuh its really just Trump followers
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, im not american so i dont care about trump
    +1
  • Xdqwerty @ Xdqwerty:
    or us elections
  • BigOnYa @ BigOnYa:
    Me niether, us north Koreans don't care
  • Xdqwerty @ Xdqwerty:
    good night
  • BakerMan @ BakerMan:
    i don't care either, even if i'm american
  • BakerMan @ BakerMan:
    truth be told, i agree with psi, i dislike both candidates, but i'd probably vote trump simply because the economy was better during his presidency
  • AngryCinnabon @ AngryCinnabon:
    Just be careful, if trump ends up winning and using project 2025 America might really change...for the worse.
  • AngryCinnabon @ AngryCinnabon:
    I'm not american and even that sends shivers down my spine.
  • AngryCinnabon @ AngryCinnabon:
    anything that offers trump an opportunity to become an actual dictator
    is bad in my book, i could care less if it wasn't for that...
  • K3Nv2 @ K3Nv2:
    Canada: America's Russia
  • NinStar @ NinStar:
    people are so dramatic that I can't even tell if they are being serious
    NinStar @ NinStar: people are so dramatic that I can't even tell if they are being serious