HAI-Priiloader, A Bootloader For VC Injects

  • Thread starter Thread starter Karlmann
  • Start date Start date
  • Views Views 11,527
  • Replies Replies 89
  • Likes Likes 17
Will the new idea you have still use the homebrew channel inject? If so it should allow for the wii remotes / pro controllers to be used while a gamepad is active
 
Some great news, console is fixed!!!
Thanks a ton to the hardmodder who fixed it, they even installed isfshax lol
Hopefully ya feel a little better Karlmann, no worries! Ill take a break doing normal wiiu stuff then return to this later, might ask occasional questions
 
Will the new idea you have still use the homebrew channel inject? If so it should allow for the wii remotes / pro controllers to be used while a gamepad is active
The new approach can use any VC title as the injected disk is not read.
Using external controllers with an active gamepad should be independent of the IOS as long as it is using HAI-IOS's OHCI1 module. The basic idea is to leverage fakemote to add the gamepad as a virtual wii remote when it is not selected from the Wii U menu.
 
  • Like
Reactions: MysticStarlight
Using external controllers with an active gamepad should be independent of the IOS as long as it is using HAI-IOS's OHCI1 module. The basic idea is to leverage fakemote to add the gamepad as a virtual wii remote when it is not selected from the Wii U menu.
Thats super! Hope this plan works. Dont strain yourself out, take time and take breaks. Always wanted to do this kind of thing lol Would make for good game sessions w friends
 
Checking in: Has any progress been made quite yet / issues arising? No worries if none has been worked on yet / any complications!

Its definitely going to be complicated but hope all goes well
 
Checking in: Has any progress been made quite yet / issues arising? No worries if none has been worked on yet / any complications!

Its definitely going to be complicated but hope all goes well
The HAI-IOS OHCI1 module was repackaged as a satandalone module. Did not find the OHCI1 offsets yet and finding the queueid address for /dev/usb/oh1 is expected to be the most difficult part.

1745532828576.png

Besides that, the main work is on automating adding modules to an IOS binary and determining how to find the IOS offsets cIOS needs to patch.
Once the automation is verified to work, a loader module (already compiled) which loads an IOS binary from a hardcoded location on vWii NAND will be added to have fw.img load the new IOS binary from a hardcoded location on the vWii NAND, minimizing how often fw.img needs to be manually replaced.
update:
The following should be the required offsets for the HAI-IOS OHCI1 module
1745902663670.png
 
Last edited by Karlmann,
  • Like
Reactions: awesomeee
The HAI-IOS OHCI1 module was repackaged as a satandalone module. Did not find the OHCI1 offsets yet and finding the queueid address for /dev/usb/oh1 is expected to be the most difficult part.

View attachment 500553
Besides that, the main work is on automating adding modules to an IOS binary and determining how to find the IOS offsets cIOS needs to patch.
Once the automation is verified to work, a loader module (already compiled) which loads an IOS binary from a hardcoded location on vWii NAND will be added to have fw.img load the new IOS binary from a hardcoded location on the vWii NAND, minimizing how often fw.img needs to be manually replaced.
update:
The following should be the required offsets for the HAI-IOS OHCI1 module
View attachment 501390

The primary Riivolution changes needed for it to run on IOS 56 have been implemented.
 
Great work! Good progress again. Super excited for this still
Will be monumental for the wii u community
 
The primary Riivolution changes needed for it to run on IOS 56 have been implemented.
Has this been tested properly? Because getting your fork to compile and running it on console, I get stuck on a black screen and have to hard restart the console.
 
Has this been tested properly? Because getting your fork to compile and running it on console, I get stuck on a black screen and have to hard restart the console.
Some minor components still need to be updated such as the explicit check for IOS 37 and the memory offsets for patching FS permissions. Not checking the AHBPROT patches as Riivolution should be launched with AHB access at this time.
 
Has this been tested properly? Because getting your fork to compile and running it on console, I get stuck on a black screen and have to hard restart the console.
I do not think the github has been updated with his current approach to load the vWii stuff in HAI mode whatever he is doing, just the old approach with issues like the ES calls not working properly in the kernel he said a while back
 
I do not think the github has been updated with his current approach to load the vWii stuff in HAI mode whatever he is doing, just the old approach with issues like the ES calls not working properly in the kernel he said a while back
The HAI-Riivolution repository contains the changes to the kernel patches and the DIP module needed for them to run properly on IOS 56. More recently, it has been updated to initially load IOS 37 and transition to its patched IOS 56 kernel. This has not been tested to work.
To test your compiler setup works, compile the version found at https://github.com/r00t1024/rawksd which is known to produce a working build.
 
To test your compiler setup works, compile the version found at https://github.com/r00t1024/rawksd which is known to produce a working build.
Alright i need to install this Devkitpro thing so i might not be able to compile it today. The way i compiled HAI priiloader was just putting the repo in this microsoft visual studio thing which cloned all the files to my PC. Will keep you updated
Post automatically merged:

Okay @Karlmann I am completely stumped i have no idea how to compile this, too confusing
Sorry
 
Last edited by awesomeee,
Alright i need to install this Devkitpro thing so i might not be able to compile it today. The way i compiled HAI priiloader was just putting the repo in this microsoft visual studio thing which cloned all the files to my PC. Will keep you updated
Post automatically merged:

Okay @Karlmann I am completely stumped i have no idea how to compile this, too confusing
Sorry
I found riivolution difficult to compile last time I attempted several months ago. Will update if I can successfully compile.
 
The HAI-Riivolution repository contains the changes to the kernel patches and the DIP module needed for them to run properly on IOS 56. More recently, it has been updated to initially load IOS 37 and transition to its patched IOS 56 kernel. This has not been tested to work.
To test your compiler setup works, compile the version found at https://github.com/r00t1024/rawksd which is known to produce a working build.
Tried the recent commit you just did, and it still gets stuck on a black screen, after making the code changes said version you linked did that lets Riivolution compile. Interestingly, when it tried to run it on Dolphin out of sheer curiosity, I got this error message that I never got before; not like Riivolution would work on Dolphin anyways due to the way that it is designed but perhaps it could help in a finding a solution.
 

Attachments

  • 1748786181690.png
    1748786181690.png
    14.5 KB · Views: 21
Tried the recent commit you just did, and it still gets stuck on a black screen, after making the code changes said version you linked did that lets Riivolution compile. Interestingly, when it tried to run it on Dolphin out of sheer curiosity, I got this error message that I never got before; not like Riivolution would work on Dolphin anyways due to the way that it is designed but perhaps it could help in a finding a solution.
Seems to be something within disabling MEM2 protection. That part should be running on IOS 37.
The true issue was determined to be that I did not convert the 1-2 byte batches applied after loading the patched IOS kernel.
It may work as is if the target IOS is changed to a cIOS using IOS 56 as its base and the abovementioned patches are not applied from Riivolution.
Those remaining patches should now be addressed.
 
Last edited by Karlmann,
  • Like
Reactions: techmuse
Seems to be something within disabling MEM2 protection. That part should be running on IOS 37.
The true issue was determined to be that I did not convert the 1-2 byte batches applied after loading the patched IOS kernel.
It may work as is if the target IOS is changed to a cIOS using IOS 56 as its base and the abovementioned patches are not applied from Riivolution.
Those remaining patches should now be addressed.
Tried those your new commit last night and I still get a black screen, at least the MEM2 protection removal patch seems to work? For my setup I have installed HAI-Priiloader through the instructions here, without a patched fw.img file. I've also noticed the indicator light on my USB drive flashing as I'm loading HAI-Riivolution, though I don't know how useful that information will be for you. If only there was a way to get at least some debugging output so I could see what exactly went wrong...
 
Seems to be something within disabling MEM2 protection. That part should be running on IOS

Tried those your new commit last night and I still get a black screen, at least the MEM2 protection removal patch seems to work? For my setup I have installed HAI-Priiloader through the instructions here, without a patched fw.img file. I've also noticed the indicator light on my USB drive flashing as I'm loading HAI-Riivolution, though I don't know how useful that information will be for you. If only there was a way to get at least some debugging output so I could see what exactly went wrong...
Do not use HAI-Priiloader. Did you test compiling from the wii-mini fork?
Additionally add #define DEBUG_HAXX to haxx.cpp to retain printing debug messages to the screen.
 
Last edited by Karlmann,
  • Like
Reactions: techmuse

Site & Scene News

Popular threads in this forum