Controller core-specific configurations
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Description
RetroArch maps a connected controller to an internal controller (I think it's called retropad), and then maps the retropad to the "real controller".
This works pretty well, but there are some dge cases.
For example, the GameBoy Advance has following input buttons:
- A
- B
- L
- R
- Start
- Select
- D-PAD
The wiimote has
- A
- B
- 1
- 2
+-- D-PAD
and HOME
The retropad has a superset; at least
- A
- B
- X
- Y
- L
- R
- Start
- Select
- D-PAD
All button of the wiimote are mapped to the retropad, the A.B,1,2 buttons of the wiimote are mapped to A,B,X,Y
Which means, that when playing GBA with a wiimote, L,R cannot be used, and the buttons mapped to X,Y are "lost"/effectively unused.
I'm not suggesting that the default mappings of the wiimote (or other remotes) should be changed, they might make sense for other platforms, but do not make sense for the GBA.
The same issue might apply with other combinations of controllers and cores, it is not necessarily wiimote/GBA specific.
Expected behavior
Being able to configure retroarch in such a way that when using any wiimote with a GBA core, to map some buttons to L,R instead of X,Y.
Actual behavior
Either the buttons are remapped globally (for all cores), or L,R cannot be used with a wiimote.
Steps to reproduce the bug
- Use a wiimote
- Do not change the global mapping
- Try to use L,R with a GBA core
Bisect Results
AFAIK the behavior is unchanged.
Version/Commit
You can find this information under Information/System Information
RetroArch - Frontend for libretro
Version: 1.16.0 (Git 14cb373) Oct 2 2023
Compiler: GCC (9.4.0) 64-bit
Environment information
- OS: Debian
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file, test, or entry point is named. Start by locating RetroArch's controller-mapping configuration and how it identifies cores; done means a wiimote can map its buttons to GBA L/R on a per-core basis without changing mappings for other cores.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100