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
9,886
Trophies
2
XP
29,357
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,246
Trophies
1
Age
44
XP
6,286
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
Developer
Joined
Oct 14, 2018
Messages
6,287
Trophies
3
XP
12,065
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
30
Trophies
0
Age
29
XP
306
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
Developer
Joined
Oct 14, 2018
Messages
6,287
Trophies
3
XP
12,065
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
30
Trophies
0
Age
29
XP
306
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
Developer
Joined
Oct 14, 2018
Messages
6,287
Trophies
3
XP
12,065
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: 377
Last edited by masagrator,
  • Like
Reactions: hippy dave

masagrator

The patches guy
OP
Developer
Joined
Oct 14, 2018
Messages
6,287
Trophies
3
XP
12,065
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
30
Trophies
0
Age
29
XP
306
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
38
Trophies
0
XP
125
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 !
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Psionic Roshambo @ Psionic Roshambo:
    I had one it was fun lol
  • K3Nv2 @ K3Nv2:
    I think I did then it broke a few months later
  • Psionic Roshambo @ Psionic Roshambo:
    Used it as a web cam for a day for fun, sooo shitty it was hilarious
  • Psionic Roshambo @ Psionic Roshambo:
    I had two Ken one regular black one and a silver special edition one lol
  • K3Nv2 @ K3Nv2:
    Speaking of old stuff those green og Logitech Xbox controllers still being listed around $100
  • The Real Jdbye @ The Real Jdbye:
    eyetoy was fun yeah
  • The Real Jdbye @ The Real Jdbye:
    super basic, but the minigames were well designed
  • The Real Jdbye @ The Real Jdbye:
    i'm sure there's at least 1 emulator out there that works with it
  • Psionic Roshambo @ Psionic Roshambo:
    I had the PS3 one too and The Eye of Judgement game lol was ass
  • The Real Jdbye @ The Real Jdbye:
    i had eye toy play on ps2
  • K3Nv2 @ K3Nv2:
    Microsoft ruined it with kinect
  • Psionic Roshambo @ Psionic Roshambo:
    @The Real Jdbye, PCSX2 works with any web cam and emulates the EyeToy with it
  • K3Nv2 @ K3Nv2:
    I remember mic support for the n64 being janky
  • K3Nv2 @ K3Nv2:
    Emulation wise
  • Psionic Roshambo @ Psionic Roshambo:
    I had a kinnect.... It blew rotting goat balls
  • Psionic Roshambo @ Psionic Roshambo:
    Ken amazingly DraStic microphone support works better than real hardware lol
  • Psionic Roshambo @ Psionic Roshambo:
    On a phone of course
  • Psionic Roshambo @ Psionic Roshambo:
    Also touch is better.... Well at least better than the launch DS, the lite one improved that a ton
  • K3Nv2 @ K3Nv2:
    Touch
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    I really need to dig out my USB Wii sensor bar and experiment with Wii emulation and synching Wii remotes with BT lol
  • Psionic Roshambo @ Psionic Roshambo:
    Sort of redundant since I have a Wii lol
  • Psionic Roshambo @ Psionic Roshambo:
    With HDMI lol
  • K3Nv2 @ K3Nv2:
    I also have a Wii
  • K3Nv2 @ K3Nv2:
    Tomorrow be may 4th
  • Psionic Roshambo @ Psionic Roshambo:
    Getting Wiid from Street Pharmacist Mario?
    Psionic Roshambo @ Psionic Roshambo: Getting Wiid from Street Pharmacist Mario?