libretro / libretro/RetroArch

[Feature Request] Leveraging Inputs by Double Tapping

Open
#12,600 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request input
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Appears to be a bit more focus on inputs lately, and I've a request that could dramatically expand the capabilities of devices with a limited number of them (like my arcade machine).

Would it be possible to add a double tap option for retropad's digital inputs? I envision that the input mapping would remain as is, but when users go to map the controller binds for a specific game/core, they can bind the double tap for a given input to something different than the single.

Calculated the average time between my button presses to be ~0.15 sec, so if this idea can work, I'd suggest that any time a digital input has a double tap bind, retroarch would wait ~0.2 sec before actually deciding what to do with that input. If a user presses the same button again within that span of time, the double tap bind would be used instead.

Digital inputs with a double tap assigned would obviously have a small amount of additional latency when given a single tap, but many games have buttons that do things that don't require an immediate response ex. weapon change, reload etc... This is especially true for games that would have need of such a feature anyway.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue describes adding double-tap bindings for RetroPad digital inputs, with a suggested 0.2-second decision window and separate single- and double-tap actions. No source files, tests, or entry points are named; first locate the digital input mapping and binding-handling code, then define how single taps, double taps, and added latency should be validated.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
game-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.