Hacking NAS Loader GX - Load backups from your NAS!

Archerite

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Sep 16, 2018
Messages
209
Trophies
1
Age
42
XP
2,513
Country
Netherlands
I have been thinking about this for a while now...loading backups from a NAS with terabytes of storrage on older consoles. I have read about a similar thing on a PS2 loading from a Raspberry Pi over ethernet. And a recent article where someone used a Raspberry Pi to emulate a USB drive on a nintendo switch loading data from a NAS over wifi.

I already have to many projects I am working on (or want to anyway) and this would be just an other one. It's mostly the technical part that intterest me but also the convinience of having al backups in a single place. No moving harddrives requiring extra power or slow USB drives that could get corrupted. And it might be possible to use the same idea/protocol/app on the GameCube and Wii U...maybe others too.

So to be clear...it does not exist yet. But here is my idea:
- Use a NAS as the storage device
- Run a app/service on a Synology NAS to have less overhead and more transfer speed.
- Have the option to use SMB/NFS if the above is not possible on other brands.
- Wired connection required at 100Mbit minimum, WiFi as an option if fast enough
- Modified existing loader (not claming to be better at writing one than what's already out there) supporting both GameCube and Wii backups

In theory it just requires a device driver that shows up as a file system just like USB0:/and SD:/ already do now. It could show up as NAS:// or whatever and work just like existing SD and USB to the rest of the backup loader.

I am really curious if some of you might be intterested in an option like this.

edit: added link to article
 
Last edited by Archerite,

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
46
Location
Engine room, learning
XP
15,662
Country
France
this is not possible on Wii to load directly from the network. network loading has already been thought years ago.
there's no OS, supervisor, firmware, etc.

it requires a custom IOS (nobody is working on IOS anymore) so it won't happen.
even if someone was still active in IOS development, it wouldn't be possible either, the network is not fast enough to read games from Wifi. (the wifi and network adapter is locked to slow speed by nintendo)

why not just connect the Wii USB to NAS USB ?
it's possible if your NAS has its USB seen as UMS (USB Media Storage) instead of host, and the homebrew don't even need an update to add protocols "nas:/" as it's seen as "usb:/"
usbloaders supports fat32, ntfs, ext2/3/4. your program might have to emulated remote USB access, and file system.



if your NAS doesn't have USB and only Wifi, then the same RPi adapter could be used like the switch usb to wifi adapter I guess, acting as UMS.
 
Last edited by Cyan,

Archerite

Well-Known Member
OP
Member
GBAtemp Patron
Joined
Sep 16, 2018
Messages
209
Trophies
1
Age
42
XP
2,513
Country
Netherlands
this is not possible on Wii to load directly from the network. network loading has already been thought years ago.
there's no OS, supervisor, firmware, etc.

it requires a custom IOS (nobody is working on IOS anymore) so it won't happen.
even if someone was still active in IOS development, it wouldn't be possible either, the network is not fast enough to read games from Wifi. (the wifi and network adapter is locked to slow speed by nintendo)
I think it's possible since existing backup loaders already do something to redirect the calls for files on an original disk to the images on a USB Drive or SD Card. The only thing that would change with my idea is that the data comes from a NAS instead of an SD card or USB drive. Also with additional formats like WBFS and compressed formats extra work needs to be done by the loader to make the game unaware that it is not reading from an actual disk.

I have been holding back this idea for a while now and the article gave new inspiration to it actually. I agree WiFi would be far to slow on the Wii to load games, but it would be an alternative for those that don't have the Ethernet Adapter. I know from my own experience that the USB adapter works at 100mbit on a Linux PC, I see no reason for Nintendo to "lock the speed" of either WiFi or the Ethernet adapter. Most likely it's the way USB works on the Wii that makes it slow or a really bad driver. Like I said I did not test any speeds yet for SD, USB, Ethernet or WiFi and all of this is just an idea based on that article (updated my first post to link to it) and my own older thread about using the Raspberry as a GameCube modchip.

why not just connect the Wii USB to NAS USB ?
it's possible if your NAS has its USB seen as UMS (USB Media Storage) instead of host, and the homebrew don't even need an update to add protocols "nas:/" as it's seen as "usb:/"
usbloaders supports fat32, ntfs, ext2/3/4. your program might have to emulated remote USB access, and file system.

if your NAS doesn't have USB and only Wifi, then the same RPi adapter could be used like the switch usb to wifi adapter I guess, acting as UMS.
When I say NAS I actually mean a Synology or something similar with multiple harddisks and the ability to add software or running apps on it.
I know there have been devices that looked like an external USB Harddrive but also had an ethernet and/or WiFi connection. These are not really a NAS even though it supports a similar feature. I expect them to be very slow and locked down in that you won't be able to add an extra service to run on it's CPU.
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
46
Location
Engine room, learning
XP
15,662
Country
France
the USBLoaders are not redirecting calls from disc to USB/SD, the IOS is doing it.
the USBLoader is not in memory anymore when the game launches and can't do anything else.

the loader only reloads the IOS, load the dol (executable) in memory (like the console does officially from Disc channel when you launch a game disc), patches it if needed by the user, and launches the dol (like done officially by the console too), which shutdowns the current PPC running application and replace it with the new one (the dol) which has for effect to remove the loader from memory. the game runs bare-bone on the console's chipset, there's no OS or other program running at the same time to do some additional parallel jobs.

In order to add a new path, it's not as easy as just replacing "usb:/" to "nas:/" in cIOS sources, you actually require to code packet and network functions, requests, checksum, lost packet, re-requests, etc.
IOS does not have these function as native command because game were never supposed to be loaded from network. Games also don't have "re-request" feature, if a file is not served it freezes (at best you get a "please reinsert the game disc" message, but there's nothing to trigger a reinsertion : Remember the game is alone, there's no more USBLoader in memory to send a "disc is reinserted" command. This is NOT nintendont which is always in memory)
people already have problem when using USB with active sleep timer because the game is not meant to "wake up" the sleeping device (disc are not supposed to go to sleep, so why would a game have a check to see if it sleeps?).

all the work is not required to be done in the USBLoader, but in the custom IOS module, and like I said no developer is working on IOS anymore.


the best solution would be like your article does : an USB adapter which take care of the communication with other devices. the IOS would request files from USB, and get them transparently without knowing where they come from.
but it needs to be fast enough for the game to get requested files or it could freeze/crash/not retry.



When you said NAS, I understood NAS.
I own a synology too, and it has USB ports on it. the problem is that the ports acts as Master (host) and not client (remote) device. so if you know how to develop for Synology to change the USB mode to be seen as UMS that would work by connecting the NAS and Wii together.
 
Last edited by Cyan,

kaisersozeh

Well-Known Member
Member
Joined
Mar 21, 2018
Messages
260
Trophies
0
Location
Phobos
XP
1,054
Country
Antarctica
@Archerite - The problem is this - Johnny Wii User has all these wii games but only one storage peripheral; wants access to the files on the device from the network, but also wants to load games to the wii.
Something with comparable functionality, that doesn't yet exist and could be done -
Use the wii as the NAS.
Ftp (ftpii) is a bit flaky, unreliable; but, I think a couple of the gx emulators can load roms over samba.
Wii's have a really low power requirement, are dirt cheap and ubiquitous. A NAS wii, just add hard drive, could be very popular.
You could load the NAS dol on boot, or your usbloader could load it after an idle time.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • K3Nv2 @ K3Nv2:
    I'll reformat and have a 3tb raid0 m. 2 at least
    +1
  • K3Nv2 @ K3Nv2:
    Lmao that sold out fast
    +1
  • Veho @ Veho:
    Yeet the cat.
    +1
  • K3Nv2 @ K3Nv2:
    Good idea
    +1
  • The Real Jdbye @ The Real Jdbye:
    i thought everybody knew cocktails are like 75% ice
  • Veho @ Veho:
    Yeah but not like this.
  • Veho @ Veho:
    It's not like they're complaining that their Slurpee is 99% ice or something, but if the cocktail calls for "shot of vodka, shot of vermouth, shot of gin, shot of Campari, three shots of juice, squirt of lemon" and ends up being a thimbleful of booze, that's a problem.
  • The Real Jdbye @ The Real Jdbye:
    the funny thing is cocktails in norway are only allowed to have 1 20ml shot of booze
  • The Real Jdbye @ The Real Jdbye:
    so..... yeah
  • The Real Jdbye @ The Real Jdbye:
    we're used to only having a thimbleful of booze
  • Veho @ Veho:
    Booo.
  • The Real Jdbye @ The Real Jdbye:
    same thing if you want whisky on the rocks or something, you can't get a double
  • The Real Jdbye @ The Real Jdbye:
    but you could buy as many shots of whisky (or anything else) as you want and ask for a glass of ice and pour them in
  • The Real Jdbye @ The Real Jdbye:
    it's dumb
  • Veho @ Veho:
    Maybe.
  • Veho @ Veho:
    There was a comparison of the number of Ibuprofen poisonings before and after they limited the maximum dosage per box or per pill (i'll look that up). No limit on the number of boxes you can still buy as many as you want, so people argued it was pointless.
  • Veho @ Veho:
    But the number of (accidental) poisonings dropped because drinking an entire package of ibuprofen pills went from "I need a new liver" to "I need a new box of Ibuprofen".
  • Veho @ Veho:
    Here we have ketoprofen that used to be prescription-only because of the risk of toxic dosages, but then they halved the dose per pill and sell them in bottles of six pills apiece instead of twenty and it doesn't need a prescription any more. Yes you can buy more than one bottle but people simply don't.
  • Psionic Roshambo @ Psionic Roshambo:
    Usually accidentally overdose of ibuprofen here is from people taking like cold medicine then ibuprofen for a headache and the combination is over what they need
    Veho @ Veho: https://imgur.com/gallery/QQkYnQu