Hacking 5.4.0 progress

oumoumad

Well-Known Member
Member
Joined
Apr 20, 2015
Messages
798
Trophies
0
Age
31
XP
890
Country
France
Hi,
I read carefully everything that has been going on and I'm very grateful that a lot of people are working on this great project. I'm using a 5.4.0E Wii U, I tried the Unknown loadiine (from 05SonicBlue) and it seems to work, I mean, I can use the Kernel OS driver for the loadiine, then the loadiine, then the miimaker and I get the menu with the game I loaded with the new SD hierarchy. I checked the compatibility list and put Donkey Kong tropical Freeze and Captain Toad Treasure Tracker on the SD card. But I get an error, it says 'Can't launch game!' and I can't get out of the menu afterwards. I don't have a Smash Bros maybe that's why it says that, I don't know, do you have any idea why?
Loadiine V2 only supports SSB, also make sure you got the right folder structure.
 

Onion_Knight

Well-Known Member
Member
Joined
Feb 6, 2014
Messages
878
Trophies
0
Age
45
XP
997
Country
@Onion_Knight Are you reinitializing the network using nn_ac.rpl?
Code:
You need to re-intiialize the network.


typedef struct {
unsigned char *data_elf;
unsigned int coreinit_handle;
/* function pointers */
void*(*memset)(void * dest, unsigned int value, unsigned int bytes);

void*(*MEMAllocFromDefaultHeapEx)(unsigned int size, unsigned int align);
void(*MEMFreeToDefaultHeap)(void *ptr);

void*(*curl_easy_init)();
void(*curl_easy_setopt)(void *handle, unsigned int param, void *op);
int(*curl_easy_perform)(void *handle);
void(*curl_easy_getinfo)(void *handle, unsigned int param, void *op);
void (*curl_easy_cleanup)(void *handle);

int(*ACInitialize)();
int(*ACGetStartupId) (unsigned int *id);
int(*ACConnectWithConfigId) (unsigned int id);


} private_data_t;


inside the thread
Code:
unsigned int nn_ac_handle;
OSDynLoad_Acquire("nn_ac.rpl", &nn_ac_handle);

OSDynLoad_FindExport(nn_ac_handle, 0, "ACInitialize", &private_data->ACInitialize);
OSDynLoad_FindExport(nn_ac_handle, 0, "ACGetStartupId", &private_data->ACGetStartupId);
OSDynLoad_FindExport(nn_ac_handle, 0, "ACConnectWithConfigId",&private_data->ACConnectWithConfigId);

private_data->ACInitialize();
int myid;
private_data->ACGetStartupId(&myid);
private_data->ACConnectWithConfigId(myid);
 

dibas

Well-Known Member
Newcomer
Joined
Sep 16, 2008
Messages
76
Trophies
1
XP
925
Country
Bahamas, The
I understand. Why not initialize after killing the browser threads in the main thread before creating the curl one though? I'm sure you have tried that already, did it not work?
 

Irastris

Well-Known Member
Member
Joined
May 3, 2015
Messages
1,116
Trophies
0
XP
895
Country
United States
Simply install WAMP
Wow, that worked perfectly straight out the box. Just had to comment out some lines in the .conf so the Wii U didn't get an Apache Access Denied page.

I wish someone had suggested WAMP yesterday before I had tore my hair out in rage from XAMPP.
 

EclipseSin

Ignorant Wizard
Member
Joined
Apr 1, 2015
Messages
2,063
Trophies
1
Age
35
Location
221b Baker Street
XP
1,737
Country
United Kingdom
Wow, that worked perfectly straight out the box. Just had to comment out some lines in the .conf so the Wii U didn't get an Apache Access Denied page.

I wish someone had suggested WAMP yesterday before I had tore my hair out in rage from XAMPP.
XAMPP works out of the box for me. Just curious, what was your problem? Anywho,glad WAMP worked instead. If you look for a lighter solution in the future, there are a couple web servers that are a single exe wit just an htdocs folder that will work on lan 99% of the time just fine. Cheers~
 

Irastris

Well-Known Member
Member
Joined
May 3, 2015
Messages
1,116
Trophies
0
XP
895
Country
United States
XAMPP works out of the box for me. Just curious, what was your problem? Anywho,glad WAMP worked instead. If you look for a lighter solution in the future, there are a couple web servers that are a single exe wit just an htdocs folder that will work on lan 99% of the time just fine. Cheers~
I'm assuming it had to do with port issues, even though I opened up everything in the firewall.
I don't suppose you have the names of those lighterweight versions?
 

ptitleray

Well-Known Member
Newcomer
Joined
Dec 17, 2013
Messages
49
Trophies
0
XP
219
Country
France
It does not work.
I don't know if you have use the same method as of the loadiine (v3) for 4.1.0 or 5.0.0 firmware, but here is what i've done :
In "launcher.c", move this piece of code :
Code:
        /* Get functions to send restart signal */
        int(*IM_Open)();
        int(*IM_Close)(int fd);
        int(*IM_SetDeviceState)(int fd, void *mem, int state, int a, int b);
        void*(*OSAllocFromSystem)(unsigned int size, int align);
        void(*OSFreeToSystem)(void *ptr);
        OSDynLoad_FindExport(coreinit_handle, 0, "IM_Open", &IM_Open);
        OSDynLoad_FindExport(coreinit_handle, 0, "IM_Close", &IM_Close);
        OSDynLoad_FindExport(coreinit_handle, 0, "IM_SetDeviceState", &IM_SetDeviceState);
        OSDynLoad_FindExport(coreinit_handle, 0, "OSAllocFromSystem", &OSAllocFromSystem);
        OSDynLoad_FindExport(coreinit_handle, 0, "OSFreeToSystem", &OSFreeToSystem);

        /* Send restart signal to get rid of uneeded threads */
        /* Cause the other browser threads to exit */
        int fd = IM_Open();
        void *mem = OSAllocFromSystem(0x100, 64);
        memset(mem, 0, 0x100);

        /* Sets wanted flag */
        IM_SetDeviceState(fd, mem, 3, 0, 0);
        IM_Close(fd);
        OSFreeToSystem(mem);

        /* Waits for thread exits */
        unsigned int t1 = 0x1FFFFFFF;
        while(t1--) ;
Just before these lines :
Code:
        /* while we are downloading let the user select his IP stuff */
        unsigned int ip_address = 0;
        int result = show_ip_selection_screen(coreinit_handle, &ip_address);
 
Last edited by ptitleray,
  • Like
Reactions: Onion_Knight

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: https://www.youtube.com/watch?v=4N-3vv4kzdk