I tested this, and unfortunately it did not work for me.
Trying to understand the modification:
I could see that you put back the function LoadAndRebuildChannelCache() in main.c and change
thread_set_priority( 0, 0x0A ) to thread_set_priority( 0, 0x10 ). You also try calling SMenuInit(TitleID, TitleVersion).
Since function ES_Init( MessageHeap ) already contains a call to SMenuInit( TitleID, TitleVersion ),
I am not sure whether calling that SMenuInit in main.c will make any difference (may be I miss
something here). Are these all the changes? I just want to be sure.
Do you by any chance have custom IOS installed in your vWii SNEEK NAND? Just for out of curiosity.
Thanks for your help.