Hacking USB Loader GX

  • Thread starter Thread starter blackb0x
  • Start date Start date
  • Views Views 8,068,748
  • Replies Replies 30,226
  • Likes Likes 74
I thought you had issue with the setting located on USB, I feared it was due to the new FAT library.
if it's (was?) caused by the new library, it could be bad for drives and partition's data.
 
I thought you had issue with the setting located on USB, I feared it was due to the new FAT library.
if it's (was?) caused by the new library, it could be bad for drives and partition's data.

I did on the older revision. During my set up and testing it was fine. I brought it over to my friends house and after like 10 minutes of testing it crashed on launch as the loader said it was reading the config file. I copied over the app to SD and its working fine, we tested it for like an hour.
 
1265 has the new nintendont settings :
IPLchoice (enable or disable the use of the BIOS). If you use r1262 it will always be OFF.
Classic Controller Rumble : enable or disable rumble
Video scaling option : Auto (set to 0 to get it to Auto), it fixes few games with blackscreen at launch.

1265 supports the open source HBC titleID (if you installed it, you can't choose "return to HBC" with r1262, unless you have both the closed source and the open source HBC).

That's the only differences.
the other changes are development related (updated libraries and SDK).

1267 will have the changelog I posted above.
https://gbatemp.net/posts/7678565
 
1265 has the new nintendont settings :
IPLchoice (enable or disable the use of the BIOS). If you use r1262 it will always be OFF.
Classic Controller Rumble : enable or disable rumble
Video scaling option : Auto (set to 0 to get it to Auto), it fixes few games with blackscreen at launch.

1265 supports the open source HBC titleID (if you installed it, you can't choose "return to HBC" with r1262, unless you have both the closed source and the open source HBC).

That's the only differences.
the other changes are development related (updated libraries and SDK).

1267 will have the changelog I posted above.
https://gbatemp.net/posts/7678565
ok thanks. I think i'm fine with 1262 for now. I'm afraid to break something.
 
I updated to r1265 (I was on r1262 for about a year). Last i remember GC games through Nintendont were working fine. Now when I load a GC game via USBloader GX I get a DSI error stack dump/code dump and system reset.

I am on Nintendont loader 5.479 according to the Nintendont screen (should be the latest update from 10/30/17).

Games load fine when I load them directly via nintendont.

Has anything changed with the Nintendont game loading process that i need to modify?
 
that's strange, nobody else reported that problem, and 1265 has even better compatibility with nintendont as it adds missing settings.
How do you launch the loader? from wii, vwii or WiiUVC?

I didn't test myself, but other users said it was working.
going back to 1262 fix the issue?
 
Last edited by Cyan,
well I tried 1266 and it doesn't show the number of games like 1262 did. also i had 1 crash coming out of a gamecube game so i went back to 1262.
 
I tested 1266 and it worked. listing games at least, I didn't notice if the game number was mssing. it's usually due to big FAT32 partitions where it's slow to get all file's count from the file table. maybe it's an issue with the new FAT32 library?
Even Windows is slower to mount big FAT32 partitions because of the file table size.

I didn't try launching one yet.
But I remember a report saying it's crashing if trying to launch a game before the game count is displayed.
try disabling game count (I don't remember if it's only disabling the text or also the counting process) just to see if it fix the crash, or wait a little longer after the loader is displayed before launching a game.

that's another thing I need to fix. I don't know how to fix that (yet?).
If you have time, can you look into that issue greywolf? thank you :)
if you can't, I'll try to look at it, but it's not in my priority list.

edit:
taking a quick look at it, the option is threaded, and the thread should be cleared at game launch/loader exit when calling sys.cpp appcleanup()

it seems appCleaner is called only for wii game launching, not emuNAND or Gamecube games.
 
Last edited by Cyan,
I tested 1266 and it worked. listing games at least, I didn't notice if the game number was mssing. it's usually due to big FAT32 partitions where it's slow to get all file's count from the file table. maybe it's an issue with the new FAT32 library?
Even Windows is slower to mount big FAT32 partitions because of the file table size.

I didn't try launching one yet.
But I remember a report saying it's crashing if trying to launch a game before the game count is displayed.
try disabling game count (I don't remember if it's only disabling the text or also the counting process) just to see if it fix the crash, or wait a little longer after the loader is displayed before launching a game.

that's another thing I need to fix. I don't know how to fix that (yet?).
If you have time, can you look into that issue greywolf? thank you :)
if you can't, I'll try to look at it, but it's not in my priority list.

edit:
taking a quick look at it, the option is threaded, and the thread should be cleared at game launch/loader exit when calling sys.cpp appcleanup()
games launched fine on 1266 it just crashed once when leaving a gamecube game. but the game counter is just missing or hidden in a menu option i haven't found. if I could find the game counter I might give it a chance again.
 
it's in the GUI settings

and crashing when leaving a game, it's nintendont fault?
or it crashed while reloading and already inside the loader?

or you meant without launching the game, just browsing inside the loader?
 
Last edited by Cyan,
it's in the GUI settings

and crashing when leaving a game, it's nintendont fault?
or it crashed while reloading and already inside the loader?

or you meant without launching the game, just browsing inside the loader?
it crashed while leaving the gamecube game after playing it.
 
then, it's not a usbgx issue, as it's not in memory anymore.

the launch code hasn't change, it's the same, so it's still using the same "return to loader" method (requiring UNEO forwarder to return to) and using the HBC stub.
I didn't touch HBC stub until after 1266 (only in future rev 1267, and I'll remove what I did as it's not working), so it can't be that.
 
Last edited by Cyan,
omg wtf. those files kill my sd card. this is the second time. I thought it was something else but it did it again now. it tells me i have to format sd card after i get an error copying the 1266 files onto it.

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

how can i post a screenshot?
 
there's a "upload file" at the bottom of the posting text area, or use filetrip at the top-right (cloud icon)

the loader is not writing to SD, except the setting file (to count how many time you launch a game).
with 1266, it's not even generating the nincfg.bin file, so the only writing is done only to store how many time you launch a game, and the file already exist, it's just editing it.
I don't see how it could corrupt the SD card.

Unless, the issue is the new libfat. (but it's the one provided by devkitpro, the only change I did was to add ustealth support)
but like said, if the error is when exiting a game from nintendont, then it's something nintendont did (crashing while writing the savegame file?), unless you saw the USBGX icon on screen before the crash (it's the forwarder's logo, no code change happened in the forwarder either)

maybe USBGX is crashing because the SD card is bad/file table corrupted.
SD corruption is done when it's crashing while writing (or ejecting before safe-removing it). maybe nintendont crashed while writing the savegame to SD and corrupted your file table.

I hope we find the cause, I wouldn't like if it's the loader's cause.
I didn't release 1265 "officially" yet on sourceforge. latest version is still 1262, to prevent massive issues like this (if it's the loader's cause).
 
Last edited by Cyan,
wtf.jpg
wtf.jpg
wtf2.jpg
wtf2.jpg
 
It shouldn't be libfat. I've been using it for months and haven't had any of those issues, but I'm using the wrapper class I posted last month rather than a modified libfat. I do need to add the stealth thing to it, though.

@comput3rus3r Try a different SD card or run "chkdsk /f" on that one. It looks like it's going bad.

@Cyan I can make a task factory class so all threads are disposed when the loader shuts down. It's possible for an orphaned thread to cause a hang unless you're doing a hard reset on shutdown.
 
Last edited by GreyWolf,
  • Like
Reactions: Cyan
on your screenshot, there's no visual element stating the SD is bad.
when the filetable is corrupted you usually get random symbols instead of filenames.

can you read from it ?
make a full backup and format it, maybe it will fix your write issue.
 
on your screenshot, there's no visual element stating the SD is bad.
when the filetable is corrupted you usually get random symbols instead of filenames.

can you read from it ?
make a full backup and format it, maybe it will fix your write issue.
cant read it acts like it's not formatted at all
 
Usually the "wrong disk is inserted" error occurs because the storage medium is disconnecting unexpectedly. It saw the drive but it was gone by the time the shell tried to access it.

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

cant read it acts like it's not formatted at all

Try cleaning the contacts with a bit of alcohol on a cotton swap and blow out the card slot.
 

Site & Scene News

Popular threads in this forum