Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

NX-ovlloader Switch: Difference between revisions

From GameBrew
No edit summary
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 4: Line 4:
|description=Host process for loading Switch overlay OVLs (NROs).
|description=Host process for loading Switch overlay OVLs (NROs).
|author=WerWolv
|author=WerWolv
|lastupdated=2020/05/07
|lastupdated=2023/05/05
|type=Sysmodules
|type=Overlays
|version=1.0.6
|version=1.0.7
|license=ISC
|license=ISC
|download=https://dlhb.gamebrew.org/switchhomebrews/nxovlloader.7z
|download=https://dlhb.gamebrew.org/switchhomebrews/nxovlloader.7z
Line 15: Line 15:
Host process for loading Switch overlay OVLs (NROs).  
Host process for loading Switch overlay OVLs (NROs).  


This is the loader service of the [[#What is this|Tesla ecosystem]]. It's derived from the default nx-hbloader.  
This is the loader service of the [[#What is Tesla|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.
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.
Line 27: Line 27:
===What is Tesla===
===What is Tesla===
*Tesla consists of three individual parts. nx-ovlloader, the Tesla menu and libtesla.
*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.
**[[NX-ovlloader Switch|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 Switch|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.
**[[Tesla Menu Switch|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.
**[https://github.com/WerWolv/libtesla 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
**[https://github.com/WerWolv/libtesla 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.
*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.


Line 41: Line 41:


==Changelog==
==Changelog==
'''v1.0.7 2023/05/05'''
*Update to work with firmware version 16.0.0.
'''v1.0.6 2020/05/06'''
'''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.
*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.

Latest revision as of 07:44, 6 Mayıs 2023

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: