NX-ovlloader Switch

From GameBrew
nx-ovlloader
Nxovlloader.png
General
AuthorWerWolv
TypeOverlays
Version1.0.7
LicenseISC
Last Updated2023/05/05
Links
Download
Website
Source
Support Author

Host process for loading Switch overlay OVLs (NROs).

This is the loader service of the Tesla ecosystem. It's derived from the default nx-hbloader.

When being run, this service automatically tries to chainload /switch/.overlays/ovlmenu.ovl, the Tesla Menu. From there on it will load and switch between different overlays on request.

Installation

Download the latest release of nx-ovlloader and the Tesla Menu from the GitHub Release page and extract it onto your SD card.

Similar to normal homebrews, you place your .ovl files in the /switch/.overlays folder on your SD card.

User guide

What is Tesla

  • Tesla consists of three individual parts. nx-ovlloader, the Tesla menu and libtesla.
    • nx-ovlloader is basically nx-hbloader ported to run as a sysmodule. It runs in the background and loads overlay NROs (.ovl files) given to it.
    • Tesla Menu is the equivalent to the hbmenu. It's the initial thing loaded by nx-ovlloader and acts as a hub for you to select all other overlays.
    • libtesla is where it becomes interesting for developers. It's an easy to use library that handles layer creation, UI drawing and all the overlay UX. It makes it very easy to create a new overlay for anything.
  • A frontend for sysmodules that before required either a homebrew or a config file to change settings or used sounds or the LED to give the user feedback.

How to use

After a reboot, hold down L and D-Pad Down and push on the Right joy stick to bring up Tesla at any time.

Navigation works as you imagine it.

Screenshots

nxovlloader2.png

Changelog

v1.0.7 2023/05/05

  • Update to work with firmware version 16.0.0.

v1.0.6 2020/05/06

  • Exit on unsupported versions again. A check preventing Tesla from running (and crashing / causing issues) on firmwares bellow 9.0.0 went missing with the last release. This re-adds that check again. Thanks to @friedkeenan.

v1.0.5 2020/04/20

  • Memory overflow hotfix. Increased stack and heap size a bit again to prevent issues people were facing with certain overlays.

v1.0.4 2020/04/16

  • Update to work with firmware version 10.0.0.
  • Reduced stack size to 0x10000 and heap to 0x400000.
  • Please make sure to delete the /atmosphere/contents/010000000007E51A folder when updating.

v1.0.3 2020/05/30

  • Crash workaround. Before, libtesla exhausted service sessions which made qlaunch crash on firmwares lower than 9.0.0. nx-ovlloader now gracefully exits instead of making qlaunch crash.
  • If you're using a firmware lower than 9.0.0, please update.

v1.0.2 2020/02/22

  • Support fix for libtesla 1.1.0.
  • This version allows changing of the default overlay's argvs without having to overwrite the default nro path using envSetNextLoad.

v1.0.1 2020/02/02

  • Crash fix. If there's no ovlmenu.ovl present on the SD card, instead of fataling Tesla now gracefully exits and will try loading it again on next restart (or when enabled by the Kosmos Toolbox for example).

v1.0.0 2020/02/02

  • Initial release.
  • Removed more unnecessary things, changed version.

External links

Advertising: