Hacking neek2o support for multiple emunands in USB Loader GX

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
Latest versions of USB Loader GX (1260) and neek2o+di are installed and working on USB.

Desired setup:

- "Normal" emunand (for Guitar Hero, Rock Band, and USB peripheral game backups) in usb1:/nands/emunand
- WiiWare emunand in usb1:/nands/channels

In USB Loader GX, I have the following set:

- NAND path: usb1:/nands/emunand
- Channel NAND path: usb1:/nands/channels (channels _do_ show up in USB Loader GX as expected)
- Channel mode: NEEK

What I've observed:

- Boot to neek2o+di Wii menu via N2KO channel works, button 2 menu shows emunand as path
- Returning to realnand, then USB Loader GX and starting a WiiWare game works (from channels path)
- Returning to realnand, then USB Loader GX and starting neek2o again (either from N2KO channel or USB Loader GX Features menu) shows channels as path, _not_ emunand

The gist:

neek2o seems to "remember" the last-used emunand path and persists it _no matter what USB Loader GX is set to_

*CORRECTION* After further testing, I've come to realize that with the primary NAND path set to usb1:/nands/emunand and the channel NAND path set to usb1:/nands/channels in USB Loader GX, whether I start neek2o via NK2O channel or USB Loader GX Features, it *always* boots into the usb1:/nands/channels NAND. From there, I can use the button 2 menu to switch to usb1:/nands/emunand, but once I exit back to realnand, the neek2o default remains usb1:/nands/channels. :/

Why this is a problem:

- More than 40-some-odd WiiWare channels will crash the emunand Wii menu

Is there any way to force neek2o (either N2KO or via USB Loader GX) to use a specific path to prevent this issue?

Rodney
 
Last edited by rhester72,

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
Related question: What is the format (or, more correctly, order of entries) in usb1:/sneek/nandcfg.bin (picked up a pointer to that on an older thread), and does the alphabetical order of channels have any effect?

Rodney
 

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,516
Country
United States
Your NEEK menu isn't crashing with over 40 titles, the system menu just takes forever to enumerate them. It's kindof crappily designed.

It sounds like what you want is saves in one folder and NAND titles in another. Just make a separate folder for Wii saves and set "EmuNAND save path" to it and leave the "channel" one set to your NEEK folder.

nand.hpp:
Code:
#define NANDCONFIG_MAXNAND 8
#define NANDCONFIG_HEADER_SIZE 0x10
#define NANDCONFIG_NANDINFO_SIZE 0x100

typedef struct
{
   char   Path[128];
   char   Name[64];
   char   DiPath[64];
} NandInfo;

typedef struct _NandConfig
{
   u32       NandCnt;
   u32       NandSel;
   u32       Padding1;
   u32       Padding2;
   NandInfo   Nands[];
} NandConfig;

Edit: Don't put your EmuNAND in the /nands/ folder and it shouldn't get picked up by the kernel.
 
Last edited by GreyWolf,

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
I actually want the NAND folder to also be NEEKable, since there are some games (like Just Sing 2016, that I got my daughter for Christmas) that won't work properly with iOS 249 or 250 but -only- work correctly in the NEEK environment.

All I'm trying to figure out is how to set what the _primary_ NEEK folder is within /nands/ - I've even gone as far as hex-editing nandcfg.bin and changing the first entry to point at /nands/emunand/, and it changed it right back to /nands/channels/. I then blew away nandcfg.bin, diconfig.bin, and everything in both sneekcaches, renamed /nands/emunand/ to /nands/00default/, changed the EmuNAND save path to point at it, and brought up the SNEEK environment from the USB Loader GX menu to rebuild cache and get things going again...and it _still_ hit /nands/channels/. I can't figure out for the life of me how to tell it which one is primary.

Rodney
 

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,516
Country
United States
Set the NandSel in the structure to the one you want. If they're listed in nandcfg.bin as /nands/emunand/ and /nands/savenand/ you would want to set it to 0 for the first and 1 for the second. It's probably big-endian.
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
Tried that, but somehow it keeps getting overridden by USB Loader. Ironically, it's the _channel_ NAND path that always gets set as NandSel, not the "normal" NAND path...which is ass-backwards from what I was expecting (or to be fair, what would even make sense). Kinda lost on how one is supposed to split channels and NAND save data now and boot into the one _without_ channels. :/

Rodney
 

portugeek

Well-Known Member
Member
Joined
Apr 6, 2013
Messages
429
Trophies
0
XP
1,066
Country
United States
If you don't mind me asking, why exactly are you trying to run two emuNAND's? I'm only curious because everything you're talking about wanting to do, can easily be handled by a single emuNAND.

I noticed that you mentioned this...
- More than 40-some-odd WiiWare channels will crash the emunand Wii menu
...If that's your reason for trying to run two emuNAND's then give this a read. It should fix your problem.
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
I could use Snort48+ if both my Wiimotes weren't the ones with built-in MotionPlus - I replaced them months ago after the gyro completely failed in one of them. If you happen to have a more current build (alluded to in that post) that is compatible, I'd be happy to try it, because as you point out, I'd no longer need to run dual NANDs.

Rodney
 

portugeek

Well-Known Member
Member
Joined
Apr 6, 2013
Messages
429
Trophies
0
XP
1,066
Country
United States
I could use Snort48+ if both my Wiimotes weren't the ones with built-in MotionPlus - I replaced them months ago after the gyro completely failed in one of them. If you happen to have a more current build (alluded to in that post) that is compatible, I'd be happy to try it, because as you point out, I'd no longer need to run dual NANDs.

Rodney
If you don't care about how your emuNAND's System Menu looks (meaning: the placement/location of Channels/Wiiware/VC tiles) then you never actually need to load into Snort48+ to be able to take advantage of it's benefits.

Simply having Snort48+ installed to your emuNAND removes the 48 channel max limit. That's enough for most people. Since it's existence now allows them direct access to their emuNAND's System Menu. Otherwise it would crash because they had more than the max allowable channels installed.

Once you're inside the emuNAND environment, the only reason for loading into Snort48+ is to organize the placement of your channel tiles. The reason you can't just move them around the tradition way is because typically all of your pages are full, leaving you with no blank spaces to move unwanted channel tiles to. (...essentially locking everything in place.) - Once loaded into Snort48+ it shows you ALL of your installed channels. From here it allows you to replace and relocate which channels you'd like to be visible and which you'd like to hide.

With USBLoaderGX now being able use Neek to load emuNAND channels, the ability to reorganize your visible channels, and choose which ones you'd like to be visible, is more for neatness than necessity.
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
Got it, makes sense. I don't care in the least about tile placement, since I'm NEEKing WiiWare via USB Loader GX - the only reason for booting directly into NEEK/Wii Menu to begin with is to get to (only) the Disc Channel (which I'd prefer to avoid altogether, if only USB Loader GX could use NEEK as the interface to emunand for native Wii titles!).

I'll give this a try, but it sounds promising!

Rodney
 

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,516
Country
United States
Got it, makes sense. I don't care in the least about tile placement, since I'm NEEKing WiiWare via USB Loader GX - the only reason for booting directly into NEEK/Wii Menu to begin with is to get to (only) the Disc Channel (which I'd prefer to avoid altogether, if only USB Loader GX could use NEEK as the interface to emunand for native Wii titles!).

I'll give this a try, but it sounds promising!

Rodney

It could... if that feature was working right in neek2o yet. :D

You can still use the same NAND filesystem for both channel and saves it just doesn't boot into the NEEK environment for Wii games so the few that don't work right still won't.

I've never heard of any except Tintin that won't work except in NEEK.
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
That's why I need to be able to manually boot into NEEK (for the Disc Channel), which is what started the thread to begin with. =)

Games I know only work properly in NEEK:

- Any Just Dance title with DLC (periodic freezes otherwise on DLC only)
- Any mic-based title (e.g. Just Sing 2016), otherwise either a) the mic doesn't work or b) the videos are black screens
- Any Guitar Hero/Rock Band game with DLC (periodic freezes otherwise on DLC only)

Rodney
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
I assume it doesn't do anything for the slowness of the Wii Menu enumerating all the channels (even the ones it's not going to display)?

I've been waiting over half an hour for the NEEK version of the Wii Menu to enumerate just all of the VC channels (a bit over 350 of them), and I'm reasonably certain (based on observation of drive activity) that the Wii actually ran out of RAM and crashed while trying to enumerate them all.

Rodney
 

game_rat

Well-Known Member
Newcomer
Joined
Feb 7, 2011
Messages
96
Trophies
0
XP
187
Country
United States
Have you looked in to using Postloader? It supports multiple nand switching and best of all, it's got an option to run Postloader as your neek system menu and it works with NO wait time, great for large nands like the one you are describing, If you are going to try it, I recommend using the last official release from the original developer (stfour), in my experience with the forked versions, the nand switching capability isn't working.
 
Last edited by game_rat,

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,516
Country
United States
I assume it doesn't do anything for the slowness of the Wii Menu enumerating all the channels (even the ones it's not going to display)?

I've been waiting over half an hour for the NEEK version of the Wii Menu to enumerate just all of the VC channels (a bit over 350 of them), and I'm reasonably certain (based on observation of drive activity) that the Wii actually ran out of RAM and crashed while trying to enumerate them all.

Rodney

It takes a long time. I'm not sure how many things I have on my NEEK install but it was a good 5-10 minute wait. The system menu just stinks.

You should only have to do that once, though if you're launching the titles from GX.

Could you post a syscheck, perhaps? Just Dance (all versions) really should be working under a patched IOS57.
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
@game_rat: AFAIK, Postloader still uses cIOS even in a NEEK environment, which kinda defeats the point of launching Wii titles with native IOS in NEEK...if I'm wrong, please advise.

@XDel: How would that help? NEEK support for Wiiware/VC in USB Loader GX is pretty much flawless.

@GreyWolf: I don't have any problems with WW/VC, just native Wii disc-based images as described earlier, which was the reason for wanting split NANDs in the first place. I'm rapidly coming to the conclusion that the only viable solution is two hard drives. I'll grab and post a syscheck, but I'm 99.99% certain it's in good shape. Just Dance sans DLC does indeed work 100% on IOS57 patched - it's only when you involve DLC that you start encountering random freezes with cIOS (discussed to death on past forums for years and years, and NEEK is the only solution I've found yet that actually works).

Rodney
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
Syscheck, as requested (took me four times to remember it won't write to USB LOL):

SysCheck HDE v2.4.0 HacksDen Edition by JoostinOnline, Double_A, R2-D2199, and Nano
...runs on IOS58 (rev 6176).

Region: NTSC-U
System Menu 4.1U (v449)
Priiloader installed
Drive date: 02.13.2007
Homebrew Channel 1.1.2 running on IOS58

Hollywood v0x11
Console ID: 120738512
Console Type: Wii
Shop Channel Country: United States (49)
Boot2 v4
Found 72 titles.
Found 45 IOS on this console. 6 of them are stubs.

IOS3 (rev 65280): Stub
IOS4 (rev 65280): Stub
IOS9 (rev 54321): Trucha Bug
IOS10 (rev 768): Stub
IOS11 (rev 54321): Trucha Bug
IOS12 (rev 526): No Patches
IOS13 (rev 1032): No Patches
IOS14 (rev 1032): No Patches
IOS15 (rev 1032): No Patches
IOS16 (rev 54321): Trucha Bug, ES Identify, Flash Access, NAND Access
IOS17 (rev 1032): No Patches
IOS20 (rev 54321): Trucha Bug
IOS21 (rev 1039): No Patches
IOS22 (rev 1294): No Patches
IOS28 (rev 1807): No Patches
IOS30 (rev 54321): Trucha Bug
IOS31 (rev 3608): No Patches
IOS33 (rev 3608): No Patches
IOS34 (rev 3608): No Patches
IOS35 (rev 3608): No Patches
IOS36 (rev 54321): Trucha Bug, ES Identify, NAND Access
IOS37 (rev 5663): No Patches
IOS38 (rev 4124): No Patches
IOS40 (rev 3072): Stub
IOS41 (rev 3607): No Patches
IOS43 (rev 3607): No Patches
IOS45 (rev 3607): No Patches
IOS46 (rev 3607): No Patches
IOS48 (rev 4124): No Patches
IOS50 (rev 54321): Trucha Bug
IOS51 (rev 4864): Stub
IOS52 (rev 5888): Stub
IOS53 (rev 5663): No Patches
IOS55 (rev 5663): No Patches
IOS56 (rev 5662): No Patches
IOS57 (rev 5919): No Patches
IOS58 (rev 6176): USB 2.0
IOS60 (rev 54321): Trucha Bug
IOS61 (rev 5662): No Patches
IOS70 (rev 54321): Trucha Bug
IOS80 (rev 54321): Trucha Bug
IOS90 (rev 54321): Trucha Bug
IOS249[56] (rev 21010, Info: d2x-v10beta52): Trucha Bug, NAND Access, USB 2.0
IOS250[57] (rev 21010, Info: d2x-v10beta52): Trucha Bug, NAND Access, USB 2.0
IOS254 (rev 65281): BootMii
BC v6
MIOS v10
Report generated on 02/18/2016.

Rodney
 

GreyWolf

Well-Known Member
Member
Joined
Mar 2, 2015
Messages
5,399
Trophies
0
Age
54
XP
1,516
Country
United States
That looks fine. I guess this is a flaw in the loader. Did you notice if it's switching that index in the config file or does it seem to be ignoring it?
 

rhester72

Well-Known Member
OP
Member
Joined
Feb 7, 2016
Messages
187
Trophies
0
Age
52
XP
273
Country
United States
At first I thought it was switching it, but after more testing it actually looks like it's ignoring it. Without timestamping, it's harder to tell - I'm planning a definitive test in the next day or so to figure out precisely what's happening under the hood there (out of intellectual curiousity more than anything), because I couldn't find anything in the USB Loader GX code that would be overriding it via overwrite.

Rodney
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    OctoAori20 @ OctoAori20: Nice nice-