Hacking USB Loader GX

  • Thread starter Thread starter blackb0x
  • Start date Start date
  • Views Views 8,066,780
  • Replies Replies 30,226
  • Likes Likes 74
Could you give me a brief explanation about unnecessary IOS reloads ?
Most games want to use IOS56 or less and USB Loader GX r1280 (and newer) can automatically pick the cIOS to use for games. So...

With my setup:
  1. The loader reloads to cIOS 249 (base 56) as it boots
  2. The loader sees that a game wants to use IOS56
  3. The game boots

With the typical Wii setup:
  1. The loader reloads to cIOS 249 (base 57) as it boots
  2. The loader sees that a game wants to use IOS56
  3. Your USB storage device is unmounted
  4. You are reloaded to cIOS 250 (base 56)
  5. Your USB storage device is mounted again (this can be slow for some people)
  6. The game boots

If you're using a Wii U and you followed the vWii cIOS guide then you probably don't need to change anything. But updating to d2x v11 will give you EmuNAND UStealth support and all patched RiiConnect24 channels will work correctly via the loader.
 
Last edited by blackb0x,
New version works great. I hope it will fix problem with random crashes during boot.

Loading form SD is now supported. What next? @blackb0x, have you thought about integrating Riivolution into USB Loader GX, so old, unsupported Riivolution would be unnecessery, and there will be posibility to patch games loaded from hard drive?

I have some questions:
- Have someone succesfully ran We Dare?
- On Gamecube games, there are options for scalling image - how they works? Nintendont has option to change width, and affect games (so I can fix games that have two black lines on the right and left side of TV), USB Loader GX option to scale image seems not to work.
- Is there a fix for Wii games with same problem (eg. Broken Sword) - two black lines on both sides of TV - image should be a bit streched on width?
 
I've just released r1281 :)

More info @ https://gbatemp.net/posts/8856063

As I said before, this update is compatible with other cIOS configurations, but I'd recommend updating your cIOS as per my guide so that unnecessary IOS reloads will be avoided. That is unless you're currently using d2x-alt, since I'm not going to provide updates for the alt branch.

You can update your cIOS by downloading the d2x cIOS installer for your system from my post or by using ModMii.


@Sypherone It's probably just a HDD compatibility issue, but I'll post to his thread.
On the wii u I found a problem in the r1281 version, with some games. Tested a few games and Okami PAL, Super Paper Mario PAL, Chaotic shadow warriors NTSC, when you exit the game you get a black screen and the console crashes. My console is american but in the r1270 version i never had these problems.
 
Last edited by zigoraty,
On all PC Engine VC games, I cannot change the aspect ratio. The game is stretched.

- Using USB Loader GX v1280 and d2x-v11-beta1;
- PAL Wii on latest firmware and 16:9 mode, running on component 480p;
- Tested 4:3 and framebuffer options, none work. Also fiddled with every other option on video with no effect.
- SNES VC games respond to video options correctly.

Edit: v1281 is the same.
 
Last edited by usbloader_user,
I've just tried the new version and no more hard crashes on start :toot:And Sd games are mounted without issues. On the other side, it still refuse to mount my usb drive with Just Dance mods.
 
What next?
Maybe a slight UI refresh. I'm not sure yet.

I'll answer some of your other questions when I'm at a PC later.

On the wii u I found a problem in the r1281 version, with some games. Tested a few games and Okami PAL, Super Paper Mario PAL, Chaotic shadow warriors NTSC, when you exit the game you get a black screen and the console crashes. My console is american but in the r1270 version i never had these problems.
Have you enabled a new setting e.g. the video width patch?

If you upload your GXGlobal.cfg file in a private message it might help.

On all PC Engine VC games, I cannot change the aspect ratio. The game is stretched.
I can't remember exactly why it doesn't work, but the loaders settings have never worked with PC Engine VC games. I guess I'll look into it eventually.
 
Maybe a slight UI refresh. I'm not sure yet.

I'll answer some of your other questions when I'm at a PC later.


Have you enabled a new setting e.g. the video width patch?

If you upload your GXGlobal.cfg file in a private message it might help.


I can't remember exactly why it doesn't work, but the loaders settings have never worked with PC Engine VC games. I guess I'll look into it eventually.
Maybe a slight UI refresh. I'm not sure yet.

I'll answer some of your other questions when I'm at a PC later.


Have you enabled a new setting e.g. the video width patch?

If you upload your GXGlobal.cfg file in a private message it might help.


I can't remember exactly why it doesn't work, but the loaders settings have never worked with PC Engine VC games. I guess I'll look into it eventually.
I used the factory settings.
 
I used the factory settings.
Do you have the UNEO forwarder installed and the loaded configured to return to itself when you exit a game? If not then try to enable that to see if it changes anything.

I'd like to know if anyone else is able to replicate the issue as I can't seem to on my Wii.
 
  • Like
Reactions: zigoraty
- On Gamecube games, there are options for scalling image - how they works? Nintendonthas option to change width, and affect games (so I can fix games that have two black lines on the right and left side of TV), USB Loader GX option to scale image seems not to work.

The same as Nintendont. ^^

In ULGX (in Nintendont settings section), when you click on "Video scale", "40" appears below. It means that the game will be rendered with 640px width.

But this default value makes the game horizontally squished as explained here by NoobletCheese :

https://gbatemp.net/threads/possibl...de-flicker-filter.477163/page-33#post-9746584

And here: https://gbatemp.net/threads/nintendont.349258/page-2062#post-9409201

"The GameCube video width situation is a bit of a mess imo. It seems that some developers didn't realise 640x480 internal res was going to be displayed in non-square NTSC pixels and a lot of games are horizontally squished, circles are ovals etc. You can correct it by setting a custom video width in Nintendont, but only if you know the internal res and pixel aspect ratio of the game. Here is a spreadsheet for calculating the "correct" width setting for a game if you know the values."

You can check external resolution for GC games here:
https://www.gc-forever.com/wiki/index.php?title=Swiss/Forced_Progressive_Compatibility_List
, and then choose the correct scaling value.

For example, Wind Waker is 660x448. So video scale must be set to 76, to display the good aspect ratio. Though I found 72 is better in my case, but maybe because I play on the PAL disc, forced to 480p.

Note: NoobletCheese's advise is to set values either to 54, 80 (average value), or 120, depending the game.
This is in line with Swiss predefined width values which are 654px, 672px, 694px, 720px (not sure about the last two, I have to check)

(so I can fix games that have two black lines on the right and left side of TV)

You display 4:3 games in 16:9 ? If no, black lines on sides of the image are normal (I'm not speaking of the 4:3 pillarboxes).
 
  • Like
Reactions: rexus_pl
Você tem o encaminhador UNEO instalado e o carregado configurado para retornar a si mesmo quando você sai de um jogo? Se não, tente habilitá-lo para ver se muda alguma coisa.

Eu gostaria de saber se mais alguém é capaz de replicar o problema, pois não consigo no meu Wii.
Yes I have UNEO forwarder installed. I did that and the problem persisted, I tried uploading through Homebrew too. So I decided to go back to version 1270 for now.
 
@blackb0x Thanks for putting the r1281 update out so quickly. I didn't personally experience any of the bugs that people are saying were introduced in r1280, but I'll be sure to update regardless.

Are we allowed to make feature requests here? Because if so, one thing I'd really like to see is someday is the addition of 240p/288p to the list of force-able video modes. In terms of official support, it's mostly only used by Virtual Console titles, and even in those it's a fairly obscure feature that usually isn't enabled by default. Still, it'd be nice to just be able to set it in the game-specific settings for those games instead of having to set it to "System Default" and messing around with the Wii's system settings, especially if the games in question are stored on EmuNAND.

I looked through the source code on GitHub, and implementing this feature looks like it shouldn't be too hard. In source/patches/gamepatches.c, the GXRModeObj for it is already defined as "&TVNtsc240Ds" (for NTSC 240p), "&TVPal264Ds" (for PAL 288p at 50 Hz), and "&TVEurgb60Hz240Ds" (for PAL 240p at 60 Hz). Adding it as a select-able option would just be a matter of defining the new settings in source/usbloader/disc.c and adding them to the various settings files. Honsetly, I'd try to implement this myself, but I don't know how to compile the code, and I wouldn't want to send a pull request without being able to test it first.

It's totally fine if you don't think this is worth adding as a feature, and I fully expect it to be very low-priority on your list even if you do, but I thought I might as well float the idea out there.
 
  • Like
Reactions: ber71 and blackb0x
Are we allowed to make feature requests here?
Absolutely. And if it isn't too far out there then of course I'll see what can be done, but that doesn't guarantee that I'll add your feature.

Honsetly, I'd try to implement this myself, but I don't know how to compile the code, and I wouldn't want to send a pull request without being able to test it first.
If you fork the project on GitHub then you can then press the green code button and select the Codespaces tab. Then you can make edits in your browser, compile the code (Ctrl + Shift + B) and download the DOL file.

To compile it from your own PC you'd just need to install devkitPro and Git, clone the repo and then input the make command via MSYS2 (mintty).
 
Last edited by blackb0x,
I assume you've pressed 1 and set the HBC to the USB device?

You might be experiencing the bug that I've already fixed in r1280. Although I'd recommend waiting for r1281 as I'll be releasing it very soon.
Hi,

Thank you for your answer. I just updated to the latest version but i still have the same problem. Well, like i said it's not that much of a problem, maybe an improvement it could be done. I will try to explain it better if you want to look into it.

Btw i have ios configured as you recommend. I had my wii modded from many time ago so the other cios (Hermes and before) might be outdated but the 249,250,and 251 are the latest ones configured as you recommend here https://github.com/wiidev/usbloadergx

Steps to reproduce:
Like i said, my wii have the latest priiloader installed and it automatically loads into usb loader channel (i don't go to system menu). From usb loader gx, if i show wii channels, and go into homebrew channel (btw, my homebrew channel is the one linked here https://wiibrew.org/wiki/Homebrew_Channel/Homebrew_Channel_1.1.4 by FIX94) . It loads hombrewchannel properly but it doesn't show any apps on my usb. If i press button 1 i can't select usb. If i insert an sd card with apps it loads them but it doesn't seem to be able to "see" the usb. And if i press home i can see in the upper-right corner 1.1.4 IOS 58 v255.255. My idea was to configure this channel to load with ios 58 configuring the loader but it doesn't let me configure an IOS lower than certain number (200?).
Tried to install latest official homebrew channel wich i think it was 1.1.2 from hackmii installer and it doesn't even load from usb loader gx, just goes to system menu.

If i go to system menu from usb loader gx (pressing wii button from usb loader gx) and then i load homebrew channel there, usb apps appear without any problem. If a press home button i can see in the upper-right corner 1.1.4 IOS 58 v24.31
 
I can replicate this issue so far on r1281, i dont know atm if i have the apps folder on USB HDD.
But if i launch the homebrew channel within the Wii-Sysmenu it let me choose the USB-drive. If i launch it within the USB Loader GX it doesnt let me choose it and is gryed out. Iam using as loader and game cIOS 151(base58).
My idea was to configure this channel to load with ios 58 configuring the loader but it doesn't let me configure an IOS lower than certain number (200?).
Yes only the loader cIOS can be set to 58, not the game cIOS.
 
@kot7k What version of the loader were you using before you upgraded to r1281?

All of the settings for the homebrew channel are irrelevant as of r1280 because it now uses libogc's SYS_ResetSystem() to return you to the menu.

@Sypherone Does that also happen with r1271 or r1272 for you?
 
@blackb0x Off topic, in a way, the Wii version of Shakedown Hawaii is not being recognized on USBLoaderGX on ver. 1272, the game appears and works in WiiFlow_Lite. The wbfs file is not corrupt or anything (checked).
One more thing, Metroid Prime Trilogy hangs on a black screen after the safety notice, but works in WiiFlow_Lite. Again the split wbfs files are checked.
Not a big deal to me really, i'm just putting this here so you'd know..
 
@blackb0x Off topic, in a way, the Wii version of Shakedown Hawaii is not being recognized on USBLoaderGX on ver. 1272, the game appears and works in WiiFlow_Lite. The wbfs file is not corrupt or anything (checked).
It seems to work for me with r1281. So do you have the game ID in the folder name? Without it USB Loader GX won't display games.

One more thing, Metroid Prime Trilogy hangs on a black screen after the safety notice, but works in WiiFlow_Lite. Again the split wbfs files are checked.
Do you think you've got any global settings or game settings enabled that could cause that? Since it works for me with r1272 and r1281.
 

Site & Scene News

Popular threads in this forum