v0.7.4 Themes & Modes

May 21, 2026 24 commits · 880 files changed

Major release introducing a complete theme customization system, 8 new emulated systems, MAME input mapping, and Portuguese language support.

Highlights

Theme Customization System

  • 16 accent color themes: Mario, Luigi, Sonic, Half-Life, Kratos, Kirby, Zelda, Pikachu, Doom, Master Chief, Samus, Chocobo, Protoss, Joker, Geralt, Mega Man
  • Custom color theme with algorithmic variant derivation
  • Light/dark/auto appearance modes via NSApp.appearance
  • Toolbar accent toggle and tinted surfaces preference
  • All UI migrated to AppColors semantic tokens for automatic theme adaptation

Controller & Input System

  • New keyboard mapping model layer with per-game bindings
  • MAME input mapping: 770 lines of input descriptors for mame_libretro
  • Enhanced input capture for DOS and ScummVM games
  • Core override scoping per-system

Emulation and ROM Scanning

  • Dreamcast VMU save fix with analog button state tracking
  • GBC rendering improvements with better color handling
  • Expanded from 2 to 6 container formats: GDI, CCD, TOC, MDS added
  • Companion file parsing for disc image formats
  • Small .dat file rejection to improve system listings
  • 8 new systems: PS Vita, Neo Geo Pocket Color, WonderSwan Color, SG-1000, SC-3000, PC-FX, SuperGrafx, PC Engine CD

Shaders & Localization

  • New PSP shader added
  • Default shader presets assigned per system
  • Streamlined shader uniform handling
  • Portuguese added as third language (1,067 keys)

Internal Refactoring

  • Removed redundant coreID field from models
  • Extracted GameContainerView and MetalCoordinator
  • Simplified project.yml configuration
  • 3 new Python tools for core button mappings and input descriptors