Skip to content

feat: persist emulator speed setting per core/game #53

Description

@aaron30128840

Feature Request

Currently there is no way to set a persistent speed multiplier for emulation. The only option is holding Space for fast-forward — which requires continuous input and is unavailable on mobile entirely.

Problems

  1. No persistent speed setting — there is no way to configure a fixed speed multiplier (e.g. 2x) that stays active without user input.
  2. Fast-forward requires holding Space — the current fast-forward is not a toggle but requires continuous key press, making it impractical for longer sessions.
  3. Mobile inaccessibleSpace has no touch equivalent, leaving mobile users with no speed control at all.

Use Case

Slow-paced games like Pokémon (GB/GBC/GBA) are a primary example where a persistent 2x–4x speed setting would significantly improve the experience. Having to hold Space for minutes at a time — or being unable to speed up at all on mobile — makes these games tedious to play.

Proposed Solution

  1. Persistent speed multiplier — configurable per core or per game, stored in retroassembly.sqlite.
  2. Space as toggle — make fast-forward a toggle instead of requiring continuous hold.
  3. On-screen speed control — touch-friendly speed button/slider in the mobile UI overlay.

Environment

  • RetroAssembly: latest (self-hosted via Docker)
  • Affected: all platforms, especially mobile (iOS Safari, Chrome Android)
  • Most impacted cores: GB, GBC, GBA (e.g. Pokémon series)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions