ReverseNX - Flag your console as handheld or docked

ReverseNX_logo_transparent_v4.png

ReverseNX

Combination of SaltyNX patches that force games to think that you are using docked or handheld mode.

You can use it to change graphics settings and unlock some options that are available only in docked/handheld mode. For now in experimental phase, because SaltyNX has many bugs that need to be patched.

To download latest SaltyNX, check links at the end of post.

_____________

To use ReverseNX, you need to use ReverseNX-Tool which can be downloaded at the end of this post. Check readme in repo to learn how to use it.


When forcing docked mode, it is recommended to use OC settings exactly as used in docked mode:
Code:
handheld_charging_gpu=768
handheld_charging_mem=1600

______________

Known issues:
  • SaltyNX is still under development, so it may cause issues on it's own. More in SaltyNX repo.
______________

Thanks to @Kirby567fan and @crow132 for testing.
To @RattletraPM for logo.
To @SunTheCourier for sys-clk Editor on which I have based ReverseNX-Tool >=2.0.0
To Borealis contributors for Borealis which I'm using from 3.0.0
______________

ReverseNX-Tool

github repo: https://github.com/masagrator/ReverseNX-Tool
Releases: https://github.com/masagrator/ReverseNX-Tool/releases

____________

SaltyNX
github repo: https://github.com/masagrator/SaltyNX
Releases: https://github.com/masagrator/SaltyNX/releases

 
Last edited by masagrator,

hippy dave

BBMB
Member
Joined
Apr 30, 2012
Messages
8,361
Trophies
1
XP
14,301
Country
United Kingdom
So, curious about how it works. Looking at the code, this uses SaltyNX to replace the functions a game calls to check docked state, the replacement functions are part of ReverseNX. Is it done this way rather than patching/mitm'ing Horizon because the replaced functions are part of the sdk code that comes with a game, rather than being part of the base firmware on NAND? Or was it just an easier/preferred way for other reasons?

I'm aware of SaltyNX but don't know that much about it, is there much documentation around besides looking at the code?

This thread is awfully quiet for something everyone has been asking for since the Switch was announced...
It's only been up a few hours, maybe it's just a quiet time.
 

cucholix

00000780 00000438
Member
Joined
Jan 17, 2017
Messages
3,009
Trophies
1
Age
42
XP
4,952
Country
Chile
It’s pretty cool, still prefer doing it by game basis, hope you keep doing dock mode patches in handheld mode for games like GE3, Xenoblade :)
 

masagrator

The patches guy
OP
Member
Joined
Oct 14, 2018
Messages
5,143
Trophies
2
XP
9,156
Country
Poland
So, curious about how it works. Looking at the code, this uses SaltyNX to replace the functions a game calls to check docked state, the replacement functions are part of ReverseNX. Is it done this way rather than patching/mitm'ing Horizon because the replaced functions are part of the sdk code that comes with a game, rather than being part of the base firmware on NAND? Or was it just an easier/preferred way for other reasons?
Those functions are part of SDK, that's why they always look the same atm. Another way of doing it would be making APM & AM mitm sysmodules, but this is much more complicated.

Would be great if more people can confirm that it works at 8.0.0+ or get help from someone more experienced to bring flags per titleid (I'm not a programmer, just sitting too long at disassembled codes gave me an idea how to do it, and zakaria helped me finding template from code-mod-framework).

SaltyNX always for me had much potential, but I was too scared at first to touch it because of no documentation and plugin example that was not clear to me without comments. I don't know why it's used only in Smash.
 
Last edited by masagrator,
  • Like
Reactions: hippy dave

Lyzing

Active Member
Newcomer
Joined
May 13, 2018
Messages
25
Trophies
0
Age
27
XP
225
Country
Germany
Yes works on 8.1.0 as well, man this is what I've been waiting for since day 1 of homebrew on switch, I even found my old thread about it https://gbatemp.net/threads/simulate-docked-mode-while-in-portable-mode.503716/

If I add both flags to the folder it will doing applying any modifications right? (if I understood the source correctly)

so does that mean that I need to dock -> undock the switch to make it back to handheld again? or is there some other way to disable it on the fly with NXShell
 
Last edited by Lyzing,

masagrator

The patches guy
OP
Member
Joined
Oct 14, 2018
Messages
5,143
Trophies
2
XP
9,156
Country
Poland
If you will put both flags or delete them all, then Switch will work the same as without ReverseNX plugin.

This doesn't work on the fly, only when booting game. I can't avoid it.
 
Last edited by masagrator,
  • Like
Reactions: Lyzing

Lyzing

Active Member
Newcomer
Joined
May 13, 2018
Messages
25
Trophies
0
Age
27
XP
225
Country
Germany
Perfect, that's fine for me.

BTW Xenoblade Chronicles 2 is working as well you can add it to your list :)

I just bought a portable screen few days ago just so I could have docked performance on the go and now you release this :D
 

masagrator

The patches guy
OP
Member
Joined
Oct 14, 2018
Messages
5,143
Trophies
2
XP
9,156
Country
Poland
According to tests made by ventus SaltyNX from my package is crashing in EmuMMC with atm 0.9.2.

If someone has EmuMMC and atmosphere 0.9.1 (this package for some reason is breaking with 0.9.2 without emummc too), you can test this package. Remember to delete files from release.

Edit: according to tests - doesn't work. So stay tuned for resolving issue. When? I don't know.
 

Attachments

  • ReverseNX_emummc_alpha.zip
    1.2 MB · Views: 299
Last edited by masagrator,
  • Like
Reactions: hippy dave

masagrator

The patches guy
OP
Member
Joined
Oct 14, 2018
Messages
5,143
Trophies
2
XP
9,156
Country
Poland
isn't 768 too high for gpu and should go no higher than 480? for safety reasons of course
768 is only enabled with charger plugged.
If you mean heat, then no - then docked mode would be destroying our Switches.

Some games could still be working with 460 MHz even in docked mode (for example SMM2 according to one person), but it's not common.
 
Last edited by masagrator,

Lyzing

Active Member
Newcomer
Joined
May 13, 2018
Messages
25
Trophies
0
Age
27
XP
225
Country
Germany
Xenoblade looks amazing now, BOTW looks amazing as well now I just have one last wish for the homebrew scene and that's customizing the handheld screen contrast, so we get BOTW to look closer to the Clarity shader pack for CEMU
 

Hekel_UK

Active Member
Newcomer
Joined
Jul 12, 2019
Messages
36
Trophies
0
XP
111
Country
United Kingdom
Does it mean that now games that run at 1080/900p when docked will run at that resolution in handheld mode?

If so, this is amazing !
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    T @ TheRealDeanMeTn: ok