So, over the weekend I've been working to port Retroarch to libnx.
This is WIP, but it should hopefully work on all versions.
Status:
- Gfx Driver is mostly done (will need some improvements tho, vsync I am looking at you)
- Need to revisit realpath(), sysconfig() and get them properly implemented and into upstream libnx (features_cpu.c ... I know, should be seperate File)
- JIT (didn't start yet)
- Dynamic cores will need quite some work
Finished:
- Joycon Driver
- Toolchain changes
- Audio Driver (might revisit, weird shit)
Tested cores:
Stuff that anyone can work on:
- Create a pre-configured Retroarch.cfg
- Test ROMs
- Port more Cores (it's easy AF for most!)
Vsync is disabled by default (for now), if you experience heavy tearing, change it in the cfg!
Changelog:
- Added Overlay (disable by default via config)
- Added default config (same folder)
- Analog dpad by default!
- Audio fixes (feedback pls)
- Tearing is known, try setting vsync in the .cfg to true!
Just throw the folder into /switch and go!
Btw:
Retroarch Menu is now L3 + R3 (Left and right analog pressed in)
Saving states is R
Loading states is L
Docked works if the Application is started while docked!
If anyone wants to work on custom overlays, MAKE SURE THEY ARE 1280x720
Github Mirror (recommended for forking):
https://github.com/m4xw/RetroArch_LibNX
https://github.com/m4xw/snes9x_libNX
https://github.com/m4xw/VBA-Next
Private Git Repo (most updated, r/o):
https://git.m4xw.net/Switch/RetroArch
Anyone who want write access, write me a PM.
Credits: Reswitched, Libretro
Thanks to
@Proto-Propski (Art),
@DogParty (general stuff),
@Kevoot (general stuff), All the Testers (
@Phenj,
@reminon,
@Leonidas87)
Hope I didn't miss anyone!