Hacking USB Loader GX

  • Thread starter Thread starter blackb0x
  • Start date Start date
  • Views Views 8,062,070
  • Replies Replies 30,225
  • Likes Likes 74
It seems to be cIOS issues, but you have installed them correctly.
I don't know, maybe someone else here can help to figure out
Well The hdd worked in wii flow
All the 3 games i got into HDD works with wiiflow, none of them loads in usb loader.
The same games won't work in usb loader neither in wiiflow from my flash drive
 
Well The hdd worked in wii flow
All the 3 games i got into HDD works with wiiflow, none of them loads in usb loader.
The same games won't work in usb loader neither in wiiflow from my flash drive

The until we will be able to solve the problem, use wiiflow with hdd.

Forget about the usb stick, as greywolf said the Wii does'nt like them.
 
Can I install the updated version of the USB Loader GX in the old one? No need to uninstall?
just replace the boot.dol in your apps/usbloader_gx/ folder with the new one.

@Gamefreakblog : that's really strange.
based on your screenshot on the previous page, it seems correctly setup.
Also, like said, you could see that the path is the correct one as it lists the game folders.
I don't think you have a hidden partition (USB flash drives usually don't have one), and even if it did your partition would be named "usb2:/" instead of 1 (1 being the first hidden partition).
I don't think the issue is the drive either, or else it will not mount, and you will not see the used/remaining size correctly.

Maybe there's an error in the "gamecube source" seting? but last time I tried it, it worked fine. you have "only MAIN path" selected, so it should look for games only on usb1:/games/, never look for SD:/games/

What you can try :
Dump a Gamecube game from inside USBLoaderGX (you will need a gamecube disc, obviously. just insert a disc, and the loader will ask if you want to install or mount it, choose install)
USBLoaderGX will dump the disc and put the full 1:1 ISO in the correct place, in the correct format, etc.
USBLoaderGX will then automatically list the new added game. this way, you can see on your drive where the game is stored, which folder name, filename, format etc.
If doing it THAT way the loader is still not seeing the new installed game, there's another error I don't understand yet. it may require more debugging.

Maybe your issue is not the settings or the drive, but your ISO are not real ISO.
maybe their format is wrong (a zip renamed to ISO, a corrupted dump, etc.)

Did you try your ISO on an emulator?
 
Issue:The Nintendont disc select prompt for Gamecube doesn't work in all my 2 disc games excepting one, Resident Evil Code veronica X.
The others (Tales of Symphonia, Re rebirth, Re 0, Re 4, Lord of the rings Third age, Metal gear solid TTS, Goldeneye Rogue agent) start default with disc 2.
The thing is strange because i'm almost sure that it worked till few days ago.
Disc select prompt is enabled, all isos are correctly named game.iso and disc2.iso in the same folder, and every folder has his title id inside (i renamed all of them adding the id yesterday, so i thought that was something about it and i removed it but the prompt does'nt show).

Is not a big deal because the disc can be swapped but is weird.
 
Last edited by Zonta85,
it's probably due to you renaming "disc2.iso" to ciso? or did you edit only the folder name to add the titleID?

The "disc2.iso" filename is hardcoded. if it can't find disc2.iso filename, then it's considering there's only one ISO.
even "disc2.gcm" is not working.
it's hardcoded in GameBooter.cpp near line 1320
I'll change that to use the same extension than the first found file (I'm hoping users won't mix extension, ex. game.gcm and disc2.ciso)


Also, the code to prompt the disc to boot is triggered only if you boot the first disc.
Maybe it's reading the second disc first, and then the trigger never happens? like you said, the second one is launched automatically. but that's strange. Maybe an issue in the way disc numbers are registered at loader's boot?

It should boot the "game.xxx" file in priority, not sure why it boots "disc2.xxx" instead.

Edit:
Maybe it's an issue with the game cache?
the cache has some header info stored (game's title, parental level, etc.) maybe some other data like disc number is stored too. (I'm not sure, I didn't check that file for a while).
Try to disable game caching, reboot, reenable, or just delete the gamecache.bin file manually
 
  • Like
Reactions: Zonta85
it's probably due to you renaming "disc2.iso" to ciso? or did you edit only the folder name to add the titleID?

The "disc2.iso" filename is hardcoded. if it can't find disc2.iso filename, then it's considering there's only one ISO.
even "disc2.gcm" is not working.
it's hardcoded in GameBooter.cpp near line 1320
I'll change that to use the same extension than the first found file (I'm hoping users won't mix extension, ex. game.gcm and disc2.ciso)

It should boot the "game.xxx" file, not sure why it boots to second disc instead

Is'nt booting the second disc, is booting the first but without prompt.

Just 3 of them (MGS TTS, Re 0, Enter the Matrix) are converted to cISO but renamed in .iso (or usb loader gx cannot see them) and with them prompt does'nt work, disc 1 is booted.

Others (Baten Kaitos, Baten kaitos origins, Resident Evil CVX, Killer 7) converted to ciso and renamed to .iso show correctly the prompt.

Others that are iso and were NEVER converted to ciso (Goldeneye Rogue Agent, The lord of the rings the third age, Tales of Symphonia, Splinter cell double agent, Splinter cell Chaos Theory, Resident Evil 4,Resident Evil Rebirth) doesn't show the prompt.

Is crazy, and i'm pretty sure that before adding [TITLEID] in the folders it worked properly.

Nintendont also list them correctly, like:
Resident Evil 4
Resident Evil 4 (2)
Resident Evil
Resident Evil (2)

--------------------- MERGED ---------------------------

Ok i've figured out. I forfot to rename a disc2.ciso to disc2.iso in Enter the matrix, and this messed up almost all the other 2 disc based games, renaming into .iso fixed everything.

Thank you for the Helps Cyan, and excuse me for the waste of your time, but i cannot imagine that only one game with the wrong name can affectball the others :)
 
Last edited by Zonta85,
ah, you said "start default with disc 2."
So, it just doesn't prompt for disc2 and only boot disc1?

The loader shouldn't look inside the ISO to see if it's really disc1 or disc2, it should set the disc number based on the filename (game or disc).
the only time it looks into the ISO header is when dumping the disc, to know which filename to create.
So, I don't think the issue is the fact you converted it to cISO (which probably didn't preserved the real game header addresses, unless ciso format is specifically adding the header back to that position)

did you try to delete the cache?

edit:
Oh, you found the issue ! thanks for telling me.
It's odd that one bad extension is breaking other games too. there's maybe an issue in the "game list" array. it might be counting a game in the "game number" but not adding the path in "game path" array, resulting in a displaced reference.
You could even run a game, and have another one being launched ! :lol:
I'll try to fix it too, it might break if users have other files in the game folder (covers, cheats, etc.)

I'm starting to have lot of things to fix, I should make a list or I'll forgot again.
- fix region detection
- Add Nintendont video aspect ratio Auto
- add proper ciso extension support
- fix gamecube game list when extension is wrong
- Add Italian and romanian translations files
- Add new HBC titleID (OHBC), maybe replace hardcoded values with proper reload to entry point to work with any HBC titles. (but might break return to system menu if it fails to load hbc)
- Enable "usb://" path to IOS check for emuNAND rev17

I think I forgot another fix we talked about recently...
 
  • Like
Reactions: Zonta85
ah, you said "start default with disc 2."
edit:
Oh, you found the issue ! thanks for telling me.
It's odd that one bad extension is breaking other games too. there's maybe an issue in the "game list" array. it might be counting a game in the "game number" but not adding the path in "game path" array, resulting in a displaced reference.
You could even run a game, and have another one being launched ! :lol:

It could be very funny to launch Eternall Darkness and have animal crossing launched.

I've founded another issue but is related to Nintendont and not to Usb loader Gx: if disc 2 is mistankenly booted the swap doesn't work.
Example: disc 2 launched, savegame related to disc one is loaded, thegame asks for disc one: the swap doesn't work.
It seems to work only from disc one to disc two. Is not a big deal because everything can be fixed with a reboot but is curious.

Is better to report these issues in the official topic like this or to the project page having the issue "stored"?
 
how do you mistakenly boot disc2?
is this due to the file extension bug? in that case it's up to me to fix that, because it's probably due to a filename conflict.

If nintendont can't swap disc1<->disc2 automatically then it's nintendont issue.
nintendont should try to mount the second file in the same folder if it notice a "disc swap" command.
Maybe it doesn't find the file because it expect it to be "ciso" extension ? disc2.ciso is maybe hardcoded too, and you renamed it to iso.

In USBGX, the "game.xxx" can have gcm or iso, but "disc2.xxx" is required to be "iso" due to hardcoded filename.
maybe some filename are also hardcoded for the swap in nintendont, based on disc1 internal format (if disc1 is a ciso even if renamed to iso, it's maybe trying to find disc2.ciso)


Savegame should work in both discs, it's not different based on the disc you launch.


renaming the extension to iso while it's a ciso format is not really proper. You should wait until I add ciso format support officially in my opinion.
 
how do you mistakenly boot disc2?
is this due to the file extension bug? in that case it's up to me to fix that, because it's probably due to a filename conflict.

If nintendont can't swap disc1<->disc2 automatically then it's nintendont issue.
nintendont should try to mount the second file in the same folder if it notice a "disc swap" command.
Maybe it doesn't find the file because it expect it to be "ciso" extension ? disc2.ciso is maybe hardcoded too, and you renamed it to iso.

In USBGX, the "game.xxx" can have gcm or iso, but "disc2.xxx" is required to be "iso" due to hardcoded filename.
maybe some filename are also hardcoded for the swap in nintendont, based on disc1 internal format (if disc1 is a ciso even if renamed to iso, it's maybe trying to find disc2.ciso)


Savegame should work in both discs, it's not different based on the disc you launch.

It's not related to iso, ciso or any file extension (now every game is correctly with both files .iso).
Is a Nintendont issue, i choose mistakenly choose disc 2 instead of disc 1.
In the real Gamecube if younput into the drive the disc 2, and thenn you load a savegame saved on disc 1, the game "reads" that the savegame was related to section of gameplay that is in disc 1 and then asks you to swap the disc, and close the lid, so it cannload the data and the gameplay related to your save.
Nintendont stuck on the disc swap screen, it seems to be able only to swap from disc 1 ---> disc 2 (as expected at a certain point of the gameplay) but not from disc 2 ---> disc 1 if someone mistakenly choose from usbbloader gx or from Nintendont list the disc 2 instead of 1.

Foe example if you boot the resident evil 4 game disc 2, and load a save game of the very beginning of the gameplay, obviously all the data of thatbpart of the gameply is sotred on disc1.
Nintendont is'nt able to swap backwards.

And you can have the same mistakes if you correctly boot disc 2 but having multiple savegames you mistakenly choose the wrong save and you load a old savegame related to a part of the gameplay in the disc 1.
It's asked to swap but it stucks.
 
When I was debugging the disc swapp with Crediar when he worked on nintendont beta, I did it with Tales of symponia and as I don't have a save on disc 2 I always booted on disc2 and started a new game which required swapping back to disc1. It worked fine.
I don't remember if I tried loading a disc1 savegame to trigger the swap, but it should have work the same way, it's the exact same drive command which is sent to the console and nintendont is intercepting it too.

Maybe there's a bug in nintendont now?
Did you try with different games? maybe it's a bug specific to one game not triggering the swap properly when loading a savegame located on previous disc.
 
When I was debugging the disc swapp with Crediar
Maybe there's a bug in nintendont now?
Did you try with different games? maybe it's a bug specific to one game not triggering the swap properly when loading a savegame located on previous disc.

Definitvely is a bu in Nintendont. I tried only three games (i'm a little busy but tonight i will do more tests): Baten kaitos origins, Enter the Matrix, Killer 7: memory card disconnected to avoid loading, selected disc2 on prompt, game booted, selected a new game: Nintendont don't swap and (i forgot to mention about before) with two of them (Baten kaitos, Enter the Matrix and others from the Resident Evil series that i've booted in the past few days) Nintendont seems to be frozen because you cannot use the Home button (or the button combo on the gc pad) to return to the loader, and an hard reset is needed.
 
Last edited by Zonta85,
just replace the boot.dol in your apps/usbloader_gx/ folder with the new one.

@Gamefreakblog : that's really strange.
based on your screenshot on the previous page, it seems correctly setup.
Also, like said, you could see that the path is the correct one as it lists the game folders.
I don't think you have a hidden partition (USB flash drives usually don't have one), and even if it did your partition would be named "usb2:/" instead of 1 (1 being the first hidden partition).
I don't think the issue is the drive either, or else it will not mount, and you will not see the used/remaining size correctly.

Maybe there's an error in the "gamecube source" seting? but last time I tried it, it worked fine. you have "only MAIN path" selected, so it should look for games only on usb1:/games/, never look for SD:/games/

What you can try :
Dump a Gamecube game from inside USBLoaderGX (you will need a gamecube disc, obviously. just insert a disc, and the loader will ask if you want to install or mount it, choose install)
USBLoaderGX will dump the disc and put the full 1:1 ISO in the correct place, in the correct format, etc.
USBLoaderGX will then automatically list the new added game. this way, you can see on your drive where the game is stored, which folder name, filename, format etc.
If doing it THAT way the loader is still not seeing the new installed game, there's another error I don't understand yet. it may require more debugging.

Maybe your issue is not the settings or the drive, but your ISO are not real ISO.
maybe their format is wrong (a zip renamed to ISO, a corrupted dump, etc.)

Did you try your ISO on an emulator?
Ok. I tried doing what you said. Turned on the machine, loaded USB loader, popped in my copy of Wind Waker. It gave me the promp to install or mount, so I pressed install, then install to main path. It started. Was giving the countdown, bar was filling up. Then it kind of froze. I left it for 7-8 minutes and nothing happened. I ejected the disc and it was still frozen. So I hard rest the console. I turned it on again, loaded USB loader and in the menu Zelda the Wind waker was there. I wasn't sure, so I put the game in and tried the install again, but it said the game was already installed. I clicked on the game and it went to the disc screen. I clicked onto the disk and it gave me this screen. WP_20161126_001.jpg
 
ahh, sorry, I forgot you had a flash drive.
game installation on flash drive are freezing (in all USB Loaders, and even with CleanRIP I think)
game install is really a flash drive issue this time, but the game not displayed shouldn't be due to flashdrive.


But, now you see the game! (even if not completely dumped, there are a partial ISO in that the loader sees and list).
Your current error is .. written in that message : it's because you don't have nintendont installed in the correct location.
By default, nintendont path is "sd:/apps/nintendont/boot.dol" but you can edit that path to nintendont folder.

You have to download nintendont "boot.dol" and place it in the corresponding folder.


But, like you see, dumping the game drom the loader, even if incomplete, is making the loader sees that file and list it!
There's probably something wrong on your drive that makes the other 2 games not displayed.
Put your drive on computer and look at any differences you could find between your installed game and the dumped one. (path and filename)
 
I'm starting to have lot of things to fix, I should make a list or I'll forgot again.
- fix region detection
- Add Nintendont video aspect ratio Auto
- add proper ciso extension support
- fix gamecube game list when extension is wrong
- Add Italian and romanian translations files
- Add new HBC titleID (OHBC), maybe replace hardcoded values with proper reload to entry point to work with any HBC titles. (but might break return to system menu if it fails to load hbc)
- Enable "usb://" path to IOS check for emuNAND rev17

I think I forgot another fix we talked about recently...

You mentioned a few pages back there was a bug applying per-Channel settings....

Doesn't solve my neek2o/emunand issue, but probably worth fixing all the same ;-)
 
yes, but that's an old bug and I don't know how to fix it yet. I'll have to check how wiiflow is doing it.
It's not a quick fix I plan for next release. There are also a lot of bugs not on the issue tracker, I tried to make a list of "untracked" issues in my blog (look in my signature). I don't know in which order I'll work on them.
 
I noticed last night that hitting reset via the home menu in Donkey Kong Country Returns that the per game video mode is reset.

I Play on a 4:3 CRT but have to force Donkey Kong to 16:9 to fill the screen. (Same as New Mario). All my other games are on global default of 4:3.

Hitting reset will take me from full screen to a letterbox view.

Edit: New Mario doesn't do this and also resets much faster.
I tried to block IOS reload, which had no effect.
Sent from my Nexus 5 using Tapatalk
 
Last edited by self_slaughter,
Definitvely is a bu in Nintendont. I tried only three games (i'm a little busy but tonight i will do more tests): Baten kaitos origins, Enter the Matrix, Killer 7: memory card disconnected to avoid loading, selected disc2 on prompt, game booted, selected a new game: Nintendont don't swap and (i forgot to mention about before) with two of them (Baten kaitos, Enter the Matrix and others from the Resident Evil series that i've booted in the past few days) Nintendont seems to be frozen because you cannot use the Home button (or the button combo on the gc pad) to return to the loader, and an hard reset is needed.
I haven't played any 2-disc games, but based on the code, it should automatically swap whenever the game stops the drive motor. If it isn't doing this, it's a bug that should be looked at. (I'll need to get some 2-disc games to test it.)

@Cyan Does USB Loader GX and/or d2x cIOS support loading dev-encrypted games? A few RVT-R Sonic prototypes were dumped recently, and I'd like to be able to try them out without re-encrypting using the retail key. If not, do you know what'd need to be changed to support it and where?
 
I think you need the Wii dev common key. (I don't know it)
currently it has only the Wii common key and Korean common key.
it's located in source\libs\libwbfs\wiidisc.c
 
I think you need the Wii dev common key. (I don't know it)
currently it has only the Wii common key and Korean common key.
it's located in source\libs\libwbfs\wiidisc.c
Are any changes needed in d2x, or will it "just work" if the key is added here? (I have a copy of it at home, and will test it with my ROM Properties extension first to verify that it works.)

EDIT: Looks like d2x-cIOS has the same file, but it only has the common key, not the Korean key. Since Korean games work, I guess ULGX overrides this?
 
Last edited by GerbilSoft,

Site & Scene News

Popular threads in this forum