Hacking USB Loader GX

  • Thread starter cyrex
  • Start date
  • Views 7,110,079
  • Replies 29,328
  • Likes 46

morrisonian

Well-Known Member
Newcomer
Joined
Mar 17, 2016
Messages
76
Trophies
0
Age
30
XP
183
Country
Spain
what you did wrong? you didn't follow the guide.
Where in my guide did it tell to launch neek using nswitch? (I listed it as possible method only, but told that USBLoaderGX does things differently)

here is the launch part in the guide:

to launch neek, use USBLoaderGX.
unless you don't want to use that loader and really want to launch neek independently from any loaders, then you need to install bootmii as IOS to use nswitch, as it relies on it.
if it freezes on "reloading bootmii IOS" and you don't have bootmii IOS installed, then it can't load it...
I'm sorry man, but I'm a complete newbie, so it's kind of difficult, and I'm trying my best to comprehend. But I followed your guide https://gbatemp.net/posts/6592730,
Neek(2o) setup
I already wrote few neek and neek2o compiling and setup tutorial, so I will give links instead of writing the same thing again.

Neek/Neek2o Wii file creation using modmii (skip step 1 and 2)
then set up neek (skip step 1 & 2 as said above) and then up until step 6 and got that black screen. Isn't that the guide?
NEEK INSTALLATION GUIDE
6. Install complete :)

- plug USB and SD to Wii.
- Launch nswitch homebrew and wait until the console reboots.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
well, my guide is in fact 3 different guides written at different dates for different reasons with conflicting instructions. I never took time to write a full, real guide, not based on multiple sources.
the link to these guides were only used for the "file creation" either from modmii or from the installer. not the be followed to launch it, as it's done in the main guide.
File creation is "step 3" only.

but okay, sorry that it's confusing.

once you created the files (with modmii or the installer), then continue reading the main guide to launch neek from usbloadergx.

important thing :
when following a guide, read it at least 3 time BEFORE attempting to follow it.
be sure to understand all the steps and that everything is coherent and make sense to you.
that's not only for neek, but a general guide and tutorial for anything.


note that it's not something I tell against you, I'm not criticizing. I'm just explaining and wanting to help.
 
Last edited by Cyan,
  • Like
Reactions: morrisonian

morrisonian

Well-Known Member
Newcomer
Joined
Mar 17, 2016
Messages
76
Trophies
0
Age
30
XP
183
Country
Spain
well, my guide is in fact 3 different guides written at different dates for different reasons with conflicting instructions. I never took time to write a full, real guide, not based on multiple sources.
the link to these guides were only used for the "file creation" either from modmii or from the installer. not the be followed to launch it, as it's done in the main guide.
File creation is "step 3" only.

but okay, sorry that it's confusing.

once you created the files (with modmii or the installer), then continue reading the main guide to launch neek from usbloadergx.

important thing :
when following a guide, read it at least 3 time BEFORE attempting to follow it.
be sure to understand all the steps and that everything is coherent and make sense to you.
that's not only for neek, but a general guide and tutorial for anything.


note that it's not something I tell against you, I'm not criticizing. I'm just explaining and wanting to help.
Ok thanks @Cyan Ima give a try when I'm home, but it's ok I should have read that part, but I'm always doing the guides like exactly as they're written, so got confused. But, hey, thanks for the guides, I mean those are the only guides out there related to the neek2o & usb loader gx. It would be great if they were finished, although it's ok they're a WIP I suppose!
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
yeah, they are like work in progress.
I plan to rewrite it correctly one day, it just takes so much time to write guides.
but I'm sorry it was wrong, and I'm glad you told me so I can fix this temporary guide for next users.

Let me know if launching from usbloadergx is working fine or you still have issues booting into neek.

With my r27 I was able to build r1263. Now I just have to verify it boots and works and then I can start, thanks.
Oh, glad you could compile it with r27 :) (and we all wonder why wintermute force deletion of old toolchain from internet when it's still the easiest to just use old ones to compile old projects)

if you succeed, do you think it could be done by loading an external patch file?
that's just thinking for the future, in case of wiimmfi code updates, to make it easier for end users to update without waiting for a new loader revision. like a wip file or GPF (gecko patch format, not included yet as only one game uses it).
if there's no data file to be loaded and it needs to be an inside source, it's fine too. Thank you for doing it for all your users.

if useful to you : I think WIP patch file contains dol's addresses, while GPF contains RAM addresses.
though, when looking at gamepatches.c, I think it's applying wip patches on each dol sections. I'm probably not understanding everything yet, or there's a bug on the WIP implementation and we were always lucky it worked fine so far. I'll look into it more.
 
Last edited by Cyan,

leseratte

Wiimmfi Team
Member
Joined
Jun 2, 2012
Messages
453
Trophies
1
XP
1,857
Country
Germany
if you succeed, do you think it could be done by loading an external patch file?
No, I think it'll have to be done directly in code. But, unless I make a stupid mistake with the patch, an update will not be necessary. The point of this change is that the patch itself is relatively small, and the actual code changes are downloaded from the server on each connect, so there shouldn't be the need to ever update this patcher.
 

morrisonian

Well-Known Member
Newcomer
Joined
Mar 17, 2016
Messages
76
Trophies
0
Age
30
XP
183
Country
Spain
Hey @Cyan thanks for the guide uneek+di and I finally set it up and running. Just wanted to ask something about the autoboot feature. I've seen people that autoboot the emunand at startup, how do I do that? So far I've only managed to do that via priiloader installed file. So I selected nswitch to load the emunand and it went well.

But, how do I autoboot neek with boot2? If it's possible could you tell me the exact files to put to the SD card and such? I'm kind of noob and get confused cause idk that much of them wii files. There's a guide here where you mention that neek2o can be booted in different modes https://gbatemp.net/threads/question-about-neek2o.496982/ , but it's not specified how. Do I have to rename SD:/sneek/kernel.bin to "armboot.bin" and put it on the sd:/bootmii/ folder? Also I set uneek, so how would I do that on the USB?

Different methods to launch/exit neek:
- If you use Bootmii@boot2, it launches sd:/bootmii/armboot.bin at launch (bypassing ALL splash screens and animations), which is a program replaced (not bootmii anymore) with a neek(2o) launcher, which loads SD:/sneek/kernel.bin.
- When you are on realNAND, nSwitch launches bootmii IOS. BootMii IOS launches sd:/bootmii/armboot.bin on SD card, which is replaced with a program to launch neek(2o) located on SD:/sneek/kernel.bin.
- Nswitch on vWii (not Wii) work the same way than USBLoaderGX, it doesn't use armboot.bin file at all, it loads sd:/sneek/kernel.bin directly
- USBLoaderGX uses the same method than nSwitch vWii, but improves it a little : it launches kernel.bin (not sd:/bootmii/armboot.bin), but loads from either SD OR USB based on your emuNAND path setting ! (no need to put bootmii and sneek files on both SD and USB)
- when you are on Neek, nSwitch reboot the console to go back to realNAND.
Also, if I had other nands, how would I know it load one or the other nand? Is there a config file for setting that up?
And if I wanted to do sneek instead of uneek just use modmii and follow instructions and replace files?
Sorry if it's already answered somewhere else, but I've been reading a lot about it so kind of mentally drained. Thanks!
 
Last edited by morrisonian,

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
to launch neek from boot2, you need bootmii installed in boot2.
if your console is not vulnerable and you can only install bootmii as IOS (see in hackmii installer if you can or not) then you need priiloader to launch nswitch channel.

if you have bootmii, it's working by actually replacing the bootmii's armboot.bin with the from from neek.
When you generate sneek or uneek, you have a "copy to SD" folder. this contain a bootmii/armboot.bin file, this is what's used to boot the console at boot2 time.
if you have that file, and the console does not automatically boot, then it means you don't have bootmii installed into boot2, or else it would load that file from SD without the need of nswitch.
nSwitch is manually launching bootmii (as IOS) because the console couldn't load it (as boot2), which in both cases result in loading armboot.bin file.


if you have neek (not neek2o) you can have only one emuNAND, located on partition's root.
if you have neek2o, you can store the emuNAND into subfolders of /nands/ folder
example :
/nands/nand1/
nands/pal3.2E/
nands/ntsc4.3U/
nands/ntsc4.3J/
etc.

to choose the default folder to boot, there's a binary file in sneek folder which contains the path to the default path to use.
once in neek2o, access the hidden menu to switch the folder to use. it will auto-edit the file (don't edit it manually, it's not a text file, it's a binary). You can also use USBLoaderGX to set the path you want to use and boot a game, it will generate the binary config file too.

if you want sneek, regenerate neek from modmii, and copy the "copy to sd" content to your SD card. then put the /nands/ folder on SD.

if you want uneek, without usbloadergx, then you need BOTH the "copy to SD" and "copy to usb" folders generated by modmii. the generated "copy to SD" is needed when using uneek, as it's always the SD:/bootmii/armboot.bin which is launched from bootmii, that file will tell neek that the path is on usb.
if you don't use usbloadergx and don't use the "USB" version for armboot.bin on SD, then it will try to load from SD.
the armboot.bin is responsible to pick the proper device in order to load "<device>:/sneek/kernel.bin"


now, if you use usbloadergx, the "armboot.bin" is skipped, and the "<device>:/sneek/kernel.bin" is decided based on the location of your emuNAND path. USBLoaderGX can load kernel.bin, boot2 or nswitch can't and rely on sd:/armboot.bin for that!

bootmii @ boot 2:
boot2 -> sd:/bootmii/armboot.bin (bootmii GUI) -> system menu or hbc

sneek + boot 2 :
boot2 -> sd:/bootmii/armboot.bin (neek loader sd version) -> sd:/sneek/kernel.bin + sd:/ as nand.

uneek + boot 2 :
boot2 -> sd:/bootmii/armboot.bin (neek loader usb version) -> usb:/sneek/kernel.bin + usb:/ as nand.

neek + nswitch
nswitch -> bootmii IOS -> sd:/bootmii/armboot.bin -> same as above based on device.

neek2o + boot2 or nswitch
same as above, except you hvae nand into sub-subfolders <device>:/nands/nand name/

neek(2o) usbloadergx
/sneek/ folder and nand folder to the same partition. no need of any armboot.bin
 
Last edited by Cyan,

morrisonian

Well-Known Member
Newcomer
Joined
Mar 17, 2016
Messages
76
Trophies
0
Age
30
XP
183
Country
Spain
to launch neek from boot2, you need bootmii installed in boot2.
if your console is not vulnerable and you can only install bootmii as IOS (see in hackmii installer if you can or not) then you need priiloader to launch nswitch channel.

if you have bootmii, it's working by actually replacing the bootmii's armboot.bin with the from from neek.
When you generate sneek or uneek, you have a "copy to SD" folder. this contain a bootmii/armboot.bin file, this is what's used to boot the console at boot2 time.
if you have that file, and the console does not automatically boot, then it means you don't have bootmii installed into boot2, or else it would load that file from SD without the need of nswitch.
nSwitch is manually launching bootmii (as IOS) because the console couldn't load it (as boot2), which in both cases result in loading armboot.bin file.
Ok thanks man I finally got it work for uneek+di and it loads pretty well, although it takes some time but that's ok.

if you have neek (not neek2o) you can have only one emuNAND, located on partition's root.
if you have neek2o, you can store the emuNAND into subfolders of /nands/ folder
example :
/nands/nand1/
nands/pal3.2E/
nands/ntsc4.3U/
nands/ntsc4.3J/
etc.
I just have a folder that's called nand on my SD and my USB root. It's loading good from there too. So if I want to change it, I just rename it to nands and then put my "nand" folder on inside /nands/ that's how it should be right?

to choose the default folder to boot, there's a binary file in sneek folder which contains the path to the default path to use.
once in neek2o, access the hidden menu to switch the folder to use. it will auto-edit the file (don't edit it manually, it's not a text file, it's a binary). You can also use USBLoaderGX to set the path you want to use and boot a game, it will generate the binary config file too.
You mean to access the menu by pressing 1 right on the emunand? Then to go where it says like nands or something to change path?

if you want sneek, regenerate neek from modmii, and copy the "copy to sd" content to your SD card. then put the /nands/ folder on SD.
That's what I did but I only got a black screen at boot (since I'm loading it via boot2) and then the wii starts to blink on and off blue light.

Thanks in advance.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
So if I want to change it, I just rename it to nands and then put my "nand" folder on inside /nands/ that's how it should be right?
yes, but remember to delete the emunand config file (as it'll have the old path stored in it. It'll be recreated automatically on next launch when it'll try to load the folder it finds)

You mean to access the menu by pressing 1 right on the emunand? Then to go where it says like nands or something to change path?
yes.

That's what I did but I only got a black screen at boot (since I'm loading it via boot2) and then the wii starts to blink on and off blue light.
I think blinking LED means it didn't find the nand path, or doesn't find what to load.
 
  • Like
Reactions: morrisonian

Illuminaticy

Well-Known Member
Member
Joined
Oct 6, 2018
Messages
441
Trophies
0
XP
1,608
Country
United States
yes, but remember to delete the emunand config file (as it'll have the old path stored in it. It'll be recreated automatically on next launch when it'll try to load the folder it finds)


yes.


I think blinking LED means it didn't find the nand path, or doesn't find what to load.
Hey @Cyan while you're here, figured I'd finally ask the question I've had for years now.
It's weird to explain so here goes.

I've noticed, if I remove the SD card at any point AFTER using Usb loader, and put it back in my wii (does not matter if I add, delete, move something, just happens when I remove it, and put it back in) USB loader will freeze on initialize USB when I go to launch it again. All it takes is a reset of the wii, has never caused any harm just wondering if you're aware of this, or have ever heard about it.

It doesn't seem to happen everytime, maybe 75% of the time.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
it's a very bad thing to eject a mounted device without using "safe eject".
on windows, there's the option to safely eject, but on USBLoaderGX there is not.

if you launch USBLoaderGX with the SD card inserted, it create a virtual link to the mounted partition. this reference to that partition is different after every eject/reinsert, and you can corrupt the content of your SD card by doing that because the loader will still try to read/write data to the known mounting point stored in memory, while the card is not properly remounted. it can have many effect, from memory corruption, to console freeze or crash.
There's a "SD Remount" button you need to click if you ever insert an SD card AFTER launching the loader. but it shouldn't be used lightly for eject/reinsert purpose as currently opened transmitted flow will break and ends nowhere in memory.


Or, did you meant it happen if you eject the SD card after closing USBLoaderGX ? if you close the loader and return to system menu, or even HBC, it should be properly unmounted at/before eject and shouldn't be a problem.
I've ejected my SD card A LOT !!! on hbc.
launch the loader -> test & debug -> exit the loader to HBC -> eject the card, edit the files, put the card back -> launch the loader. USB can initialize without problem in all my re-launch of the loader after ejecting the card without rebooting the console.

so, if it freezes on HDD init for you, I really don't know the relation to the SD card :/
 
Last edited by Cyan,

Illuminaticy

Well-Known Member
Member
Joined
Oct 6, 2018
Messages
441
Trophies
0
XP
1,608
Country
United States
it's a very bad thing to eject a mounted device without using "safe eject".
on windows, there's the option to safely eject, but on USBLoaderGX there is not.

if you launch USBLoaderGX with the SD card inserted, it create a virtual link to the mounted partition. this reference to that partition is different after every eject/reinsert, and you can corrupt the content of your SD card by doing that because the loader will still try to read/write data to the known mounting point stored in memory, while the card is not properly remounted. it can have many effect, from memory corruption, to console freeze or crash.
There's a "SD Remount" button you need to click if you ever insert an SD card AFTER launching the loader. but it shouldn't be used lightly for eject/reinsert purpose as currently opened transmitted flow will break and ends nowhere in memory.
Sorry, meant to be a little more clear. Say I launch USB loader, play some MKWII, then go to the wii system menu, remove SD card, put it back in, then go launch USB loader, it gets stuck on initialize.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
yeah, I edited my message :P
you saw it too soon ahaha.


edit:
You might notice that all my messages are edited 3-4 times, I do that often. Post, and add things afterward realizing I missed lot of information, or was just offtopic and replied something unrelated to the question and try to save the day by adding proper reply (like I just did :ninja: ).
 
Last edited by Cyan,

morrisonian

Well-Known Member
Newcomer
Joined
Mar 17, 2016
Messages
76
Trophies
0
Age
30
XP
183
Country
Spain
yes, but remember to delete the emunand config file (as it'll have the old path stored in it. It'll be recreated automatically on next launch when it'll try to load the folder it finds)
So the config.bin is on the /nand folder right? I delete it. Ok.

Also, idk where I read but someone said that I had to delete another file so the games don't crash on neek2o when I'm adding more games. Is that correct?

Gosh, it is so confusing. I just want to see how it loads sneek, that's it and because I wanna learn how to do it.

Anyways, in the end, is there a difference between loading neek2o via sneek or uneek? Is SD faster than with HDD?
 

CheeseMan13

Active Member
Newcomer
Joined
Nov 15, 2018
Messages
43
Trophies
0
XP
886
Country
United States
Made an account just to post this, I've run into a problem with Metal Slug Complete (NTSC-J). The game will run just fine but if I turn on a second Wii remote, a message that I'm assuming is supposed to be in Japanese but is in gibberish will pop up and I have to restart my Wii (only english word in the message is "OFF"). Anyone have a similar problem with the game and/or know how to fix it?
 

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,515
Country
United States
Made an account just to post this, I've run into a problem with Metal Slug Complete (NTSC-J). The game will run just fine but if I turn on a second Wii remote, a message that I'm assuming is supposed to be in Japanese but is in gibberish will pop up and I have to restart my Wii (only english word in the message is "OFF"). Anyone have a similar problem with the game and/or know how to fix it?

Are you making sure the extra remotes are already synced from the system menu? If you're using emuNAND for saves you also need to recopy the sysconf file in the loader's Features menu. The option is near the bottom of the list.

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

I cloned r1268 to here: https://github.com/GreyWolfSC/UNEO

I'll get it compiling with the latest devkitPPC as soon as I can and post the changes there. I've been a bit busy lately. :P
 
  • Like
Reactions: Cyan

CheeseMan13

Active Member
Newcomer
Joined
Nov 15, 2018
Messages
43
Trophies
0
XP
886
Country
United States
Are you making sure the extra remotes are already synced from the system menu? If you're using emuNAND for saves you also need to recopy the sysconf file in the loader's Features menu. The option is near the bottom of the list.

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

I cloned r1268 to here:

I'll get it compiling with the latest devkitPPC as soon as I can and post the changes there. I've been a bit busy lately. :P

Yeah they're both synced with the Wii itself (I only got 2 wiimotes). It's when I'm using one and I turn the other one on that the game shows the message and I have to restart. I'm not using emuNAND for saves I dont think because the save data shows up in the Wii's settings under data management
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,645
Country
France
I cloned r1268 to here: https://github.com/GreyWolfSC/UNEO

I'll get it compiling with the latest devkitPPC as soon as I can and post the changes there. I've been a bit busy lately. :P
I'll probably release 1269 as it is right now (I wanted to fix, change the boot sequence for hdd init issue and clean up the code style), but if you fix for pacman, and soon there'll be a fix for wiimmfi, I should release it to be up to date to apply your changes.
 
  • Like
Reactions: Illuminaticy

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Sicklyboy @ Sicklyboy: *teleports behind you* "Nothing personnel, kiddo" +1