Customization¶
Appearance¶
These settings are found under Settings → Appearance, except Title, which lives under Settings → General.
Art Width¶
Controls how much screen space the box art panel takes up on the game list. Options range from 35% to 65% in 5% steps, or 0 to hide it entirely. The default is 40%.
Art Scale¶
Controls how box art is scaled within the art panel.
- Fit (default) - scales the image to fit entirely within the panel
- Original - displays the image at its original size
- Fit Width - scales the image to fill the panel's width
- Fit Height - scales the image to fill the panel's height
Background¶
Set a wallpaper by placing images in the Wallpapers/ folder and selecting one from Background Image. PNG and JPG are supported.
Background Tint adds a dark overlay on top of your wallpaper to keep text readable. It ranges from 0% (no tint) to 90% in 10% steps. This option only appears when a wallpaper is set.
You can also upload wallpapers through Nonna's Kitchen.
Colors¶
Cannoli has seven customizable colors:
- Accent: Used for UI accents (badges, indicators, focus glow).
- Background: Fills the screen behind all content when no wallpaper is set.
- Highlight: The background color of the currently selected item.
- Highlight Text: The text color of the currently selected item.
- Status Bar: The color of the icons and text in the top status bar.
- Text: The color used for body text in the launcher.
- Title: The color used for all list titles (including IGM).
Each color can be picked from a grid of 16 presets or entered as a hex value.
See the Color Picker controls for details.
Font¶
Two fonts are built in:
- Default (M PLUS 1 Code)
- The OG (BPreplay)
You can add your own fonts by placing .ttf or .otf files in Config/Fonts/. They'll show up alongside the built-in options.
Portrait Margin¶
Adds bottom padding to the launcher and in-game overlay when the device is held in portrait orientation. Set in pixels; 0 disables the margin. Useful for portrait handhelds where the bottom edge of the screen sits under the device chassis or controls.
Status Bar¶
Controls what items appear in the status bar.
Items render left-to-right in the order listed:
| Item | Icon | Behavior |
|---|---|---|
| Kitchen Running | | Appears while Nonna's Kitchen is serving files |
| Downloads | | Appears while downloading |
| Update Available | | Appears when an update is available |
| Bluetooth | | Appears when Bluetooth is on |
| Wi-Fi | | Appears when connected |
| VPN | | Hidden by default; appears when a VPN is active |
| Battery | | Choose Hide, Percent, or Icon |
| Clock | 9:41 | Renders as text; choose 12 or 24 hour |
Text Size¶
Eight sizes are available, from compact (16) to large (30). The default is 24.
Title¶
Set a custom title that appears at the top of the launcher's platform screen.
Leave it empty for no title.
Found under Settings → General.
Box Art¶
Box art is the artwork displayed alongside the game list.
Folder Structure¶
Art is organized by platform using the same tags as your ROMs:
Art/
├── GBA/
│ ├── Pokémon - Recharged Yellow.png
│ └── Metroid - Zero Mission.jpg
├── SNES/
│ ├── Super Mario World.png
│ └── Zelda - A Link to the Past.webp
Naming¶
The art file must have the exact same name as the ROM file, minus the extension. Case matters.
| ROM File | Art File |
|---|---|
Super Mario World.sfc |
Super Mario World.png |
Pokémon - Recharged Yellow.gba |
Pokémon - Recharged Yellow.jpg |
Supported Formats¶
PNG, JPG, WebP, Static GIFs, and BMP.
Adding Art¶
Two ways:
- Manually - place image files in the correct
Art/[platform]/folder - Nonna's Kitchen - upload artwork through the web file manager
Removing Art¶
Highlight a game, press Start to open the context menu, and select Delete Art. This option only appears if art exists for that game.
Overlays¶
Overlays are images displayed on top of gameplay to simulate screen bezels or borders.
Overlays are stretched to fill the entire screen. The game renders behind the overlay, visible through any transparent regions in the image. There are no positioning, scaling, or opacity controls. What you see is what's in the image file.
Cannoli only supports PNGs as overlays.
Folder Structure¶
Like box art, overlays are organized by platform:
Applying Overlays¶
Open the In-Game Menu and go to Settings → Video. Use Left / Right to cycle through the overlays available for the current platform.
When you leave settings, you will be able to choose if these changes apply for the entire platform or just that game.
Cannoli does not ship with any overlays. You'll need to provide your own.
Shaders¶
Shaders apply visual effects to emulated games (scanlines, CRT masks, LCD grid patterns, sharpening).
Bundled Shaders¶
Cannoli ships with several shaders. They are copied into Shaders/ on launch:
- crt-aperture - CRT preset with aperture-grille mask
- crt-cannoli - 5-pass CRT with phosphor mask, scanlines, glow, curvature, vignette, and an optional phosphor sweep
- crt-easymode - lightweight CRT preset
- crt-geom - CRT preset with curvature and geometry correction
- crt-lottes-fast - lightweight CRT preset by Timothy Lottes
- dot - dot-matrix mask
- lcd3x - LCD grid pattern
- scanline - scanline overlay
- sharp-bilinear-simple - integer-aware sharp pixel scaling
- zfast-crt - lightweight CRT preset optimized for low-power GPUs
- zfast-lcd - lightweight LCD preset
You can add your own .glslp presets to Shaders/.
Applying Shaders¶
Open the In-Game Menu and go to Settings → Video → Shader. Use Left / Right to cycle through available presets. Changes apply immediately.
Shader Settings¶
If the active preset exposes tunable parameters, a Shader Settings sub-screen becomes available under Settings → Video. Adjust values with Left / Right; changes apply live.
Override Hierarchy¶
Like overlays, shader selection and parameter values are saved for the platform or the current game.