Hacking cIOSX rev21d2x: Yet Another Hot Fix!!!!

Did d2x work for you?

  • Yes, I had an issue with the official cios and d2x fixed it

    Votes: 93 48.2%
  • Yes, but everything was already working for me with the official cios

    Votes: 82 42.5%
  • No, and I posted what goes wrong

    Votes: 9 4.7%
  • No, and I won't report what goes wrong because I am a troll

    Votes: 9 4.7%

  • Total voters
    193

doncaruana

Active Member
Newcomer
Joined
Dec 21, 2010
Messages
38
Trophies
0
XP
56
Country
United States
dtheo said:
Hi,
UsbLoaderGX does not find the disk after updating ciosx21 (d2x v4 with base 58 or 56, wad got with modmii 4.5.7)
After restoring to d2x v3 (base 58) works again.

I had similar trouble with the d2xv4 for modmii 4.5.5 but then disk was not seen by any application (wiixplorer now see the usb)

I guess that there is some usbloadergx setting that is in conflict with d2xv4.
Thx

What version of UsbLoaderGX are you using? With r1080, the only issue with s2x v4 that I had was downloading covers.
 

kirbymaster101

Well-Known Member
Member
Joined
Dec 21, 2008
Messages
1,060
Trophies
1
Age
28
Website
Visit site
XP
893
Country
Canada
digdug3 said:
@kirbymaster:
Please read, Metroid Prime Trilogy and all other IOS-Reloading games with USB only work when you use WBFS (FAT and NTFS are being worked on) and currently only Neogamma and USBLoader CFG can use it. (d2xv5beta1)
Oh so i guess for now I;'ll just use the alt.dol method

what if I use the ios reload function in usblaoder gx what happens?
 

davebaol

Well-Known Member
OP
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
cIOSX d2x v5 beta1

IOS reload and WBFS support for USB/SD

Now It should work for every base except base 58 (I'll look into it for the next beta).
Loaders need to tell the cIOS to block IOS reloads, so far only CFG loader v69a3 and NeoGamma R9 beta49fixed have that option.

Changelog:

  • d2x v5 beta1
    • DIP - Added USB/SD support for games affected by ios reload (WBFS only).
    • DIP - Added ioctl command to save module config from the ESP module before ios reload.
    • DIP - Added syscall 0x46 (check_di_reset)
    • DIP - Fixed dual layer detection for games like Sakura Wars.
    • DIP - Fixed GameCube audio streaming command for retail discs.
    • DIP - Added fatal error whether the base ios is unknown and can't be patched.
    • ESP - DIP config saved before an ios reload request coming from a disc-based game.
    • ESP - Added missing patches for base ios 53 and 55.
    • ESP - Added fatal error whether the base ios is unknown and can't be patched.
    • FFSP - Added fatal error whether the base ios is unknown and can't be patched.
  • d2x v4: A mix of fix
    • ES - Added "return to channel" feature compatible with all games out there, included problematic ones like PoP.
    • ES - Fixed error 002 in method 2 for blocking ios reload.
    • ES - Repeated ios reload are now supported by method 2.
    • ES - Added support to reload any ios, not only 249.
    • FAT - Removed file logging code since has proved harmful to games like LostWinds and LostWinds WotM.
    • FAT - Added support for sector size up to 4KB (typically needed for HDD greater than 2TB).
    • FAT - Fixed a bug in FAT_GetStats. Now games like Max & the Magic Marker, FFCC My Life as a King and FFCC My Life as a Darklord are working properly.
    • FAT - Fixed the error code returned by FAT_Readdir when the requested folder is an existing file.
      Now all Strong Bad episodes are working properly.
    • FAT - Fixed a bug in FAT_Seek to prevent from increasing the file size when seeking out of the file.
    • FAT - Changed timing logic
    • FAT - Updated FatFs from 0.8 to 0.8b
    • FAT - Fixed a potential buffer overflow while reading a directory
    • FAT - Changes due to the fix for huge HDD made in EHCI module
    • FFS - Removed workaround on file renaming since the issue has been fixed by updating FatFs into the FAT module
    • FFS - Fixed the buffer length in FAT_ReadDir to avoid potential problems
    • EHCI - Fixed a bug to support HDD greater than 1TB
    • Other minor changes.
  • d2x v3: Nand emulation improved
    • FFS - Implemented logging system to make debugging easier (enabled in beta releases only).
    • FAT - Fixed a bug causing the error message "corrupted data" in The Tower of Druaga.
    • FAT - Fixed a bug causing stall in LIT.
    • FAT - Enabled multiple partition support in FatFs.
    • FFS - Extended ioctlv commands for mounting the desired USB/SD partition on nand emulation start up.
      Default partition is 0 for backward compatibility with rev21.
    • FFS - Fixed a bug on file renaming causing the failure on the 2nd save in games like The Will of Dr.Frankenstein.
    • FFS - Fixed the deletion of folder /tmp on nand emulation start up.
    • FFS - Fixed a bug in nand usage causing save file failure in games like Tetris Party and FFCC My Life as a King.
    • FAT & FFS - Code clean up and other minor changes.
  • d2x v2: No more lag on usb port 1
    • EHCI - Fixed secondary USB port lag (further information here)
  • d2x v1: Goodbye controller lag
    • EHCI - Fixed controller lag (furher information here).
    • EHCI - Fixed wiimote synch delay on WiiFlow start up.
    • EHCI - Fixed os_restart_timer syscall invocation with the correct number of arguments.



How to build and install


[*]Download and install ModMii v4.5.6 or higher[*]Download d2x v5beta1 from mirror 1 or mirror 2[*]Remove the old "d2x-beta" folder (if it already exists) from ModMii's folder named "modules"[*]Unpack the content of the folder "modules" inside ModMii's folder named "modules/d2x-beta". This way ModMii will use these modules in place of the ones distributed with ModMii itself.[*]Launch ModMii[*]Enter "I Agree"[*]Enter "4" to navigate to Download Page 4[*]Add to the download queue all the d2x wads you need, for example "249d2x56" and "250d2x57"[*]Enter "2" to navigate to Download Page 2[*]Enter "MMM" to add Multi-Mod Manager to the download queue[*]Enter "D" to download your chosen files[*]Enter "Y" to start downloading[*]Check that all the files are "valid" then enter "E" to exit ModMii.[*]Copy the files from the COPY_TO_SD folder to the root of your SD card and insert it into your Wii[*]Launch Multi-Mod Manager via the HomeBrew Channel.[*]Select "Load another IOS", then select IOS236 or any other patched IOS, typically IOS36 or a cIOS.[*]In Multi-Mod Manager's main menu, go down to select "WAD Manager".[*]Hold + for 2 seconds to select all the WADs in the folder. Then Press A twice to install them all.
If any files fail to install properly, they will remain marked for installation, so just retry installing those files.
NOTE: Be careful not to install any additional wads that may have been previously saved in this folder (they may be safe, but I cannot say for sure).[*]You're done. Please test and report!
cool.gif
 

MrAimenify

Active Member
Newcomer
Joined
May 24, 2011
Messages
39
Trophies
0
Age
29
Website
www.youtube.com
XP
49
Country
Hello, davebaol.
biggrin.gif
I have some questions for you about these fixed bugs...
unsure.gif


davebaol said:
DIP - Added USB/SD support for games affected by ios reload (WBFS only).
DIP - Fixed GameCube audio streaming command.
On the following fixed bug, DIP - Added USB/SD support for games affected by ios reload (WBFS only), do this works on every single USB/SD Loader, like USB Loader GX, or just on NeoGamma?
On the following fixed bug, DIP - Fixed GameCube audio streaming command, does the audio streaming work on GameCube backups as well?

By the way, good work with the cIOSX rev21d2x. Keep it up!
yaywii.gif


/MrAimenify, my first post on GBAtemp!
biggrin.gif
 

WiiPower

Well-Known Member
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
Loaders need to tell the cIOS to block IOS reloads, so far only CFG and NeoGamma have that option. And the GC audio command was broken for GC retail discs, on backups the command is ignored, because audio streaming on backups just won't work.
 

MrAimenify

Active Member
Newcomer
Joined
May 24, 2011
Messages
39
Trophies
0
Age
29
Website
www.youtube.com
XP
49
Country
WiiPower said:
Loaders need to tell the cIOS to block IOS reloads, so far only CFG and NeoGamma have that option. And the GC audio command was broken for GC retail discs, on backups the command is ignored, because audio streaming on backups just won't work.
Thank you for answering my questions.
smile.gif
I really appreciate it.
biggrin.gif


By the way, good work with NeoGamma. Keep it up!
yaywii.gif


/MrAimenify, my second post on GBAtemp!
smile.gif
 

dtheo

New Member
Newbie
Joined
May 22, 2011
Messages
3
Trophies
0
XP
1
Country
Romania
doncaruana said:
dtheo said:
Hi,
UsbLoaderGX does not find the disk after updating ciosx21 (d2x v4 with base 58 or 56, wad got with modmii 4.5.7)
After restoring to d2x v3 (base 58) works again.

I had similar trouble with the d2xv4 for modmii 4.5.5 but then disk was not seen by any application (wiixplorer now see the usb)

I guess that there is some usbloadergx setting that is in conflict with d2xv4.
Thx

What version of UsbLoaderGX are you using? With r1080, the only issue with s2x v4 that I had was downloading covers.
I use the release 2.1 from mid March to public. Currently no posiblities to compile
 

L4D

Active Member
Newcomer
Joined
Apr 3, 2010
Messages
33
Trophies
0
XP
27
Country
@dtheo there is new usbloadergx R1081 beta just release to test.

*Added new ehcmodules with better and more drives support on Hermes IOS (thx
rodries)
*Fixed reset of the loader when loading game with IOS reload and disabled WiiTDB
titles ( Issue 1874 )
*Added new 'Inherit' or 'Use global' setting for game settings. If that option
is set than the global setting is used for that option. ( Issue 1842 )
*Fixed timeout timer on startup to count correctly. ( Issue 1907 )
*Added two new video modes to force progressive video mode, 'FORCE PAL480p' and
'FORCE NTSC480p' (basically the same but oh well) ( Issue 1902 )
*Added the new 'Return to' procedure for the d2x v4 IOS for Test purpose (didn't
test it, need feedback on this one). The old method is used if this procedure
fails. Please test it on problematic games (e.g. PoP). ( Issue 1892 )

http://code.google.com/p/usbloader-gui/iss...Owner%20Summary

but i have no idea if it will work with dx2v5 tho
 

hong0098

Member
Newcomer
Joined
Feb 17, 2009
Messages
7
Trophies
0
XP
49
Country
United States
davebaol said:
cIOSX d2x v5 beta1

IOS reload and WBFS support for USB/SD

Now It should work for every base except base 58 (I'll look into it for the next beta).
Loaders need to tell the cIOS to block IOS reloads, so far only CFG loader v69a3 and NeoGamma R9 beta49fixed have that option.

Changelog:

  • d2x v5 beta1
    • DIP - Added USB/SD support for games affected by ios reload (WBFS only).
    • DIP - Added ioctl command to save module config from the ESP module before ios reload.
    • DIP - Added syscall 0x46 (check_di_reset)
    • DIP - Fixed dual layer detection for games like Sakura Wars.
    • DIP - Fixed GameCube audio streaming command for retail discs.
    • DIP - Added fatal error whether the base ios is unknown and can't be patched.
    • ESP - DIP config saved before an ios reload request coming from a disc-based game.
    • ESP - Added missing patches for base ios 53 and 55.
    • ESP - Added fatal error whether the base ios is unknown and can't be patched.
    • FFSP - Added fatal error whether the base ios is unknown and can't be patched.
  • d2x v4: A mix of fix
    • ES - Added "return to channel" feature compatible with all games out there, included problematic ones like PoP.
    • ES - Fixed error 002 in method 2 for blocking ios reload.
    • ES - Repeated ios reload are now supported by method 2.
    • ES - Added support to reload any ios, not only 249.
    • FAT - Removed file logging code since has proved harmful to games like LostWinds and LostWinds WotM.
    • FAT - Added support for sector size up to 4KB (typically needed for HDD greater than 2TB).
    • FAT - Fixed a bug in FAT_GetStats. Now games like Max & the Magic Marker, FFCC My Life as a King and FFCC My Life as a Darklord are working properly.
    • FAT - Fixed the error code returned by FAT_Readdir when the requested folder is an existing file.
      Now all Strong Bad episodes are working properly.
    • FAT - Fixed a bug in FAT_Seek to prevent from increasing the file size when seeking out of the file.
    • FAT - Changed timing logic
    • FAT - Updated FatFs from 0.8 to 0.8b
    • FAT - Fixed a potential buffer overflow while reading a directory
    • FAT - Changes due to the fix for huge HDD made in EHCI module
    • FFS - Removed workaround on file renaming since the issue has been fixed by updating FatFs into the FAT module
    • FFS - Fixed the buffer length in FAT_ReadDir to avoid potential problems
    • EHCI - Fixed a bug to support HDD greater than 1TB
    • Other minor changes.
  • d2x v3: Nand emulation improved
    • FFS - Implemented logging system to make debugging easier (enabled in beta releases only).
    • FAT - Fixed a bug causing the error message "corrupted data" in The Tower of Druaga.
    • FAT - Fixed a bug causing stall in LIT.
    • FAT - Enabled multiple partition support in FatFs.
    • FFS - Extended ioctlv commands for mounting the desired USB/SD partition on nand emulation start up.
      Default partition is 0 for backward compatibility with rev21.
    • FFS - Fixed a bug on file renaming causing the failure on the 2nd save in games like The Will of Dr.Frankenstein.
    • FFS - Fixed the deletion of folder /tmp on nand emulation start up.
    • FFS - Fixed a bug in nand usage causing save file failure in games like Tetris Party and FFCC My Life as a King.
    • FAT & FFS - Code clean up and other minor changes.
  • d2x v2: No more lag on usb port 1
    • EHCI - Fixed secondary USB port lag (further information here)
  • d2x v1: Goodbye controller lag
    • EHCI - Fixed controller lag (furher information here).
    • EHCI - Fixed wiimote synch delay on WiiFlow start up.
    • EHCI - Fixed os_restart_timer syscall invocation with the correct number of arguments.



How to build and install


[*]Download and install ModMii v4.5.6 or higher[*]Download d2x v5beta1 from mirror 1 or mirror 2[*]Remove the old "d2x-beta" folder (if it already exists) from ModMii's folder named "modules"[*]Unpack the content of the folder "modules" inside ModMii's folder named "modules/d2x-beta". This way ModMii will use these modules in place of the ones distributed with ModMii itself.[*]Launch ModMii[*]Enter "I Agree"[*]Enter "4" to navigate to Download Page 4[*]Add to the download queue all the d2x wads you need, for example "249d2x56" and "250d2x57"[*]Enter "2" to navigate to Download Page 2[*]Enter "MMM" to add Multi-Mod Manager to the download queue[*]Enter "D" to download your chosen files[*]Enter "Y" to start downloading[*]Check that all the files are "valid" then enter "E" to exit ModMii.[*]Copy the files from the COPY_TO_SD folder to the root of your SD card and insert it into your Wii[*]Launch Multi-Mod Manager via the HomeBrew Channel.[*]Select "Load another IOS", then select IOS236 or any other patched IOS, typically IOS36 or a cIOS.[*]In Multi-Mod Manager's main menu, go down to select "WAD Manager".[*]Hold + for 2 seconds to select all the WADs in the folder. Then Press A twice to install them all.
If any files fail to install properly, they will remain marked for installation, so just retry installing those files.
NOTE: Be careful not to install any additional wads that may have been previously saved in this folder (they may be safe, but I cannot say for sure).[*]You're done. Please test and report!
cool.gif

install cIOSX d2x v5 beta1 harddisc can not use......
 

tmv_josue

Well-Known Member
Member
Joined
May 18, 2010
Messages
390
Trophies
0
Location
Cancún
XP
216
Country
Mexico
davebaol said:
cIOSX d2x v5 beta1

IOS reload and WBFS support for USB/SD
I tested in 3 games and it works:
-Metal Slug Anthology
-The house of the dead 2 & 3
-Splinter cell Double agent (did not work with other cIOS, Waninkoko, Hermes/uLoader)

Thank you davebaol, I appreciate your effort and so I reply here
yaywii.gif
 

giantpune

Well-Known Member
Member
Joined
Apr 10, 2009
Messages
2,860
Trophies
0
XP
213
Country
United States
how are you handling the closing of open fds when you skip the IOS reload? (wouldnt have to ask of there was source code available)

because if you simply act like you have reloaded IOS, but not close open fd from the PPC, then they will remain open. for example, you start a game, the dol opens /dev/es. then the game changes dols, which would normally reload IOS and then the next dol can open /dev/es again. if you arent closing the handle from the first time it is opened up, then i think after changing dols too many times, trying to open this device will fail.
 

davebaol

Well-Known Member
OP
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
giantpune said:
how are you handling the closing of open fds when you skip the IOS reload? (wouldnt have to ask of there was source code available)

because if you simply act like you have reloaded IOS, but not close open fd from the PPC, then they will remain open. for example, you start a game, the dol opens /dev/es. then the game changes dols, which would normally reload IOS and then the next dol can open /dev/es again. if you arent closing the handle from the first time it is opened up, then i think after changing dols too many times, trying to open this device will fail.
Are you referring to method 1 of the custom command 0xA0 in es module?
When the game launches an ios reload -101 is returned and nothing is reloaded. However this method never worked.
On the other hand in method 2 the ios to be launched is replaced with the cIOS and everything seems to work as expected.
I believe that games affected by ios reaload were designed with ios reaload in mind.
I mean, if they don't close fds they opened....
 

giantpune

Well-Known Member
Member
Joined
Apr 10, 2009
Messages
2,860
Trophies
0
XP
213
Country
United States
normally these games reload IOS, and then the dol is changed. so there is nothing that remembers if there is an open fd: new code is running on both the ARM and PPC. since you are not reloading IOS, what is in place to keep the ARM code from keeping track of these opened fds?

its like in libogc when they removed the default IOS reload to allow apps to use HBC's ahbprot access. they added in a loop that closed all open fds. otherwise when HBC started a dol, IOS would still have open handles to /dev/es and whatever else HBC had left open when it launched the homebrew.
 

WiiPower

Well-Known Member
Member
Joined
Oct 17, 2008
Messages
8,165
Trophies
0
XP
345
Country
Gambia, The
giantpune said:
normally these games reload IOS, and then the dol is changed. so there is nothing that remembers if there is an open fd: new code is running on both the ARM and PPC. since you are not reloading IOS, what is in place to keep the ARM code from keeping track of these opened fds?

its like in libogc when they removed the default IOS reload to allow apps to use HBC's ahbprot access. they added in a loop that closed all open fds. otherwise when HBC started a dol, IOS would still have open handles to /dev/es and whatever else HBC had left open when it launched the homebrew.

As far as i understand the cIOS loads IOS249 instead of the requested IOS. Everything else should be as if it was a retail disc + the correct IOS. Neither the game nor the cIOS keep track of which IOS modules were openend. The game .dol is (re)loaded and the cIOS is completely reset. Except the stuff that was stored intentionally on nand to restore the old config.
 

lucascb

Member
Newcomer
Joined
Jan 14, 2009
Messages
5
Trophies
0
XP
151
Country
Brazil
Yes, I had an issue with the official cios and d2x fixed it!
Thanks to d2x team!
by the way, i was using herms 223 cios to avoid the wiimote lag, my hd is WD passport essential 500gb.
Installed cios249[56] v21d2x4 and cios250[57] v21d2x4. Now playing with cios 249 works fine, cio250 not tested.
 

davebaol

Well-Known Member
OP
Member
Joined
Sep 3, 2010
Messages
912
Trophies
0
XP
192
Country
Italy
lucascb said:
Yes, I had an issue with the official cios and d2x fixed it!
Thanks to d2x team!
by the way, i was using herms 223 cios to avoid the wiimote lag, my hd is WD passport essential 500gb.
Installed cios249[56] v21d2x4 and cios250[57] v21d2x4. Now playing with cios 249 works fine, cio250 not tested.
That's what I like to hear
biggrin.gif
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: https://www.youtube.com/watch?v=tqydVNaLR1w