realnc / dosbox-core

A DOSBox core for use in RetroArch and other libretro frontends.
GNU General Public License v2.0
42 stars 16 forks source link

Feature Request: Full Keyboard Remapping #47

Open s-ac opened 1 year ago

s-ac commented 1 year ago

The standalone version of DOSBox allows for full keyboard remapping via SDL, and this is a very useful feature. However, due to the limitations of the RetroArch API this is currently not available in DOSBox-core. Is this something that could be added?

One of the frustrating aspects of RetroArch is that it is entirely focused around controller input. This is considerably less than ideal for PC emulation, however, where many programs are much better suited to keyboard input. Unfortunately, RetroArch only allows remapping controller to keyboard inputs, and not keyboard to keyboard. For instance, it is not possible to remap the keyboard arrow keys to WASD using DOSBox-core.

I know that some other RetroArch cores such as MAME work around this problem by having their own internal remapper which can be accessed via their own UI (not RetroArch). Could DOSBox-core utilize a similar system to allow for full keyboard remapping? Would it even be possible to make use of MAME code to get a head start on this considering they are also a GPL licensed project?