Hey everyone,
I have been reversing how the gamepad's features, especially the display, are controlled
for quite some time now. It was a more a side project of mine I was working on in my spare time. I recently achieved my main goal, so I want to present a neat function hook today:
padcon
Padcon allows you to turn the gamepad's display completely off and on in most games and nearly all of Cafe OS whenever you feel like it. It makes the
display triggerable, currently by just
pressing the right analogue stick on the gamepad.
This basically allows you to keep playing games with the gamepad while having the display turned off.
I have been using it for the last few days and for me it works pretty great. Usually programs and their specific views will make it obvious when they require the gamepad's display by automatically turning it back on again, but you can just turn it off afterwards, most programs and games I tested seem to be fine with that.
Padcon is currently integrated into Loadiine GX2 and uses its awesome function hooking (thanks to dimok, golden45 and other(?) authors involved in this)!
You can find the source code in
my fork on github. For now I am not going to propose an integration into Loadiine upstream unless wanted, because it might be intrusive to some users as the right button stick behaviour can not be turned off at the moment.
If, however, a lot of people decide to include it in their everyday use just as I do already (seriously, it's
awesome being able to turn off the display in so many situations), I am sure we can find an appropriate way of including padcon in loadiine upstream. It's super useful, anyway.
The github fork is on par with Loadiine upstream at the moment, so you can just clone the repo and build it yourself if you want to use it with the homebrew launcher.
If you don't want to compile it yourself, I have a self-hostable archive ready:
https://github.com/dibas/loadiine_gx2/releases/tag/padcon-0.2
(No HBL or anything else is needed here, this was built from a few commits before the HBL change)
I couldn't test game compatibility as extensively as I wanted to, so I would love to hear your feedback on how it works for you!
Enjoy!
-dibas