Difference between revisions of "Homebrew Menu"

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 20: Line 20:
 
NOTE: This is not yet available with the latest hbmenu release.
 
NOTE: This is not yet available with the latest hbmenu release.
  
A theme can be optionally loaded from SD "/config/nx-hbmenu/themes/theme.cfg". This uses [https://hyperrealm.github.io/libconfig/libconfig_manual.html libconfig]. Default settings will be used for any settings not specified in the theme.
+
Themes can be optionally loaded from SD "/config/nx-hbmenu/themes/". The theme (or the default) can be selected using the Theme Menu via the - button. This uses [https://hyperrealm.github.io/libconfig/libconfig_manual.html libconfig]. Default settings will be used for any settings not specified in the theme (including themeInfo).
  
The string used for displaying the A/B button can be set with buttonAText/buttonBText, but normally this can be left at the defaults. Change the value of the enableWaveBlending field to 1 to enable wave blending.
+
The string used for displaying the buttons can be set with buttonAText, buttonBText, and buttonMText, but normally this can be left at the defaults. Change the value of the enableWaveBlending field to 1 to enable wave blending.
 +
 
 +
There's also borderColor and borderTextColor fields which can be set like the other color fields.
 +
 
 +
The color fields are RGBA.
  
 
Sample theme file:
 
Sample theme file:
  
 +
themeInfo={
 +
    name="Theme Name";
 +
    author="Theme Author Name";
 +
    version="1.0.0";
 +
};
 +
 
  lightTheme={
 
  lightTheme={
 
     textColor=(0,0,0,255);
 
     textColor=(0,0,0,255);

Revision as of 02:23, 1 October 2018

The Homebrew Menu (hbmenu) is the menu for launching homebrew applications. Applications are launched using the Homebrew ABI, hence normally nx-hbloader will do the actual launching.

Usage

See Homebrew Applications for SD layout etc.

Controls

Use the D-Pad/joystick to select the app/directory, up/down can be used for faster scrolling. Press A to launch the app. Navigating directories is supported, press A to enter a directory and press B to leave the current directory. Press Y to activate netloader and press B to deactivate netloader.

Touch controls

NOTE: This is not yet available with the latest hbmenu release.

To navigate through the list of folders and applications you can swipe left and right on the bottom list. To open an item you can tap on it in the list or with it highlighted tap the Open or Launch button prompt in the bottom right. To go back a folder you can swipe up or tap the Back button prompt in the bottom right. To activate the netloader you can swipe down on the screen.

Netloader

NOTE: This is not yet available with the latest hbmenu release.

With netloader activated as described above you can load apps over the network with nxlink. With the toolchain setup run nxlink <nrofile> if your network can handle UDP broadcast messages. If nxlink fails with "No response from Switch!" you can use -a <ip address> before <nrofile> for the address to send the app to. See nxlink help for more options.

Themes

NOTE: This is not yet available with the latest hbmenu release.

Themes can be optionally loaded from SD "/config/nx-hbmenu/themes/". The theme (or the default) can be selected using the Theme Menu via the - button. This uses libconfig. Default settings will be used for any settings not specified in the theme (including themeInfo).

The string used for displaying the buttons can be set with buttonAText, buttonBText, and buttonMText, but normally this can be left at the defaults. Change the value of the enableWaveBlending field to 1 to enable wave blending.

There's also borderColor and borderTextColor fields which can be set like the other color fields.

The color fields are RGBA.

Sample theme file:

themeInfo={
    name="Theme Name";
    author="Theme Author Name";
    version="1.0.0";
};

lightTheme={
    textColor=(0,0,0,255);
    frontWaveColor=(255,102,204,255);
    middleWaveColor=(255,51,153,255);
    backWaveColor=(204,0,153,255);
    backgroundColor=(233,236,241,255);
    highlightColor=(255,77,166,255);
    separatorColor=(128,0,128,255);
    enableWaveBlending=0;
};

darkTheme={
    textColor=(255,255,255,255);
    frontWaveColor=(255,51,153,255);
    middleWaveColor=(255,102,204,255);
    backWaveColor=(204,0,153,255);
    backgroundColor=(0,0,0,255);
    highlightColor=(255,77,166,255);
    separatorColor=(255,255,255,255);
    enableWaveBlending=0;
};