Skip to content
DefKorns edited this page Oct 7, 2026 · 11 revisions

Guides

Theme per folder

If your games are organized into folders (one per system, per series...), each folder can have its own theme.

  1. Go to Themes → Settings and turn on Theme Per Folder.
  2. Open Assign Theme to Folder, right below it.
  3. Your folders are listed as a tree, with Home first. On a folder:
    • press Left/Right to cycle through your themes, or
    • press A to pick one from a list.
  4. Leave the screen. The themes are applied the next time you enter each folder.

Assign Theme to Folder

The preview on the right shows the theme the folder will use and where it comes from:

Tag Meaning
ASSIGNED Chosen for this folder
INHERITED Comes from a parent folder
GLOBAL The theme applied for the whole console
BY NAME A theme named after this folder (see below)

Theme list for a folder

The list starts with Automatic, which clears the folder's assignment, followed by your themes. Automatic shows what the folder gets without one, e.g. Automatic · Famicom. When it ends up at the console's own theme it reads Original theme, or Random theme with the Theme Randomizer on.

On a SNES controller, Y sets the selected folder back to Automatic without opening the list (not while Use X/Y as turbo A/B is on in the Options Menu, since Y then acts as turbo B).

A folder on Automatic uses its parent folder's theme, all the way up. A top-level folder on Automatic uses the theme applied for the whole console. A folder's own theme always wins over its parent's. The same theme can go on as many folders as you like: no copies or renaming needed.

Themes named after a folder

The Theme Selector 2 way still works for folders without an assignment: name a theme folder after the game folder, in lower snake_case. For example, game folder Nintendo - Nintendo Entertainment System → theme folder nintendo_-_nintendo_entertainment_system.

A theme named default is used on Home.

Music per folder

Same idea as theme per folder, for the menu music.

  1. Put your music in a music_menu folder (see Audio randomizer for the format).
  2. Go to Themes → Settings, turn on Music Per Folder and open Assign Music to Folder.
  3. Pick a track for each folder with Left/Right or A.

Assign Music to Folder

The list starts with Automatic, followed by your tracks. Like themes, a folder on Automatic uses the music assigned to a folder above it. With nothing assigned above it, it keeps the normal behaviour, shown next to it: Theme music (the theme's own music), Random music (the Audio Randomizer) or Original music (the console's stock music).

Music assigned to a folder plays instead of the theme's own music. It works with or without Theme Per Folder.

Audio randomizer

  1. Create a music_menu folder:
    • USB/SD: /media/hakchi/music_menu
    • NAND: /var/lib/hakchi/rootfs/usr/share/music_menu (over hakchi's FTP)
  2. Copy your music there as .wav files: PCM, and file names without spaces (e.g. super_mario_world_remix.wav).
  3. Go to Themes → Settings and turn on Audio Randomizer: Home, and optionally All Folders.

With a USB/SD drive, its music_menu is used if it has any .wav file; otherwise the NAND one.

Menu music takes a lot of space (a 3-minute track is about 30 MB). Keep it on a USB/SD drive.

DIY theme

Build a theme of your own from pieces of the themes you already have.

SNES / Super Famicom NES / Famicom
Base UI Base UI
Background Demo: Characters
Demo: Character #1 (Mario) Background Color
Demo: Character #2 (Luigi)
Demo: Background Near / Far
Demo: Pole
  1. Go to Themes → DIY Theme. It shows up once you have at least one theme installed.

    DIY Theme categories

  2. Open a category. The first time, Loading assets... can take a few minutes: it scans every installed theme for that piece.

  3. Every asset is listed under the name of the theme it comes from. Select one and press A (Asset applied successfully!).

    Base UI assets

  4. Repeat for the other categories. Pick a new asset to replace one you don't like.

  5. Preview custom theme applies it so you can see the result.

  6. Save custom theme saves it as a new theme, diy_theme (then diy_theme-1, diy_theme-2...). It shows up in Installed Themes like any other.

Clean custom theme discards the theme you're building without saving it.

Theme previews

The grid shows <theme name>.png, next to the theme folder, as the theme's preview. Downloaded themes come with one. For your own themes, make one:

  1. Apply the theme.

  2. Connect the console to your PC with the USB cable. Taking a screenshot over Wi-Fi can freeze the console and hakchi.

  3. In hakchi, choose Tools → Take Screenshot (or press F8):

    take SS

  4. Right-click the screenshot and choose Save image to file:

    save to file

  5. Resize it to 569×320 and save it as PNG, with the same name as the theme folder. For example, the preview of my_theme/ is my_theme.png.

  6. Copy it next to the theme folder, with hakchi's FTP or on your USB/SD drive:

    • USB/SD: /media/hakchi/themes/<console>
    • NAND: /var/lib/hakchi/rootfs/usr/share/themes/<console>
  7. In Themes, select Refresh.

Custom DIY assets

You can add your own pieces to the DIY categories. This guide doesn't cover making the sprites themselves.

  1. With hakchi's FTP, go to /etc/options_menu/themes/creator/sprites/assets/.
  2. Open the folder for the category: packed (Base UI), wall, wall_near, wall_far, mario, luigi, pole, or on a NES packed_nes, smb, colors_nes.
  3. Create a folder for your asset, without spaces in its name (e.g. Fire_Bros).
  4. Put your sprites in it, named exactly like the originals they replace (for Mario: mario_run01.png, mario_jump01.png, mario_look.png...).
  5. In DIY Theme, open that category and select Refresh to load your asset.