|
| 1 | +# Modifying controls in RetroArch |
| 2 | + |
| 3 | +For several systems, KNULLI employs emulation cores from the RetroArch library (*libretro*). You will find exhaustive documentation on how to use RetroArch in the excellent [RetroArch documentation portal](https://docs.libretro.com). However, to give you a kick-start, here's how to remap controls for your RetroArch-driven emulation systems on your KNULLI device. |
| 4 | + |
| 5 | +## Remap by game, content directory, or core |
| 6 | + |
| 7 | +If you want to remap controls for your retroArch-driven games, first you got to decide, whether you want to change controls for the *game*, the *content directory* where the game is stored, or the entire emulation *core*. |
| 8 | + |
| 9 | +When launching a game with a RetroArch core, RetroArch first loads its default remap file `common.rmp`. However, the default remap file can be overriden hierarchically in the following order: |
| 10 | + |
| 11 | +1. *core* remap file overrides default remap file |
| 12 | +2. *content directory* remap file overrides core and default remap file |
| 13 | +3. *game* remap file overrides all other remap files |
| 14 | + |
| 15 | +Now, depending on how your games are stored on your device, if you want to change key mappings for each game of a system, you might either want to change controls for the entire *core* or for the *content directory*. However, even if you create a remap file for a *content directory*, the remapping still will **only** apply to the core it was made for. |
| 16 | + |
| 17 | +Changing controls for an entire *core* might come in handy if you want to change the key mappings for every game which is run by that core, e.g. for globally swapping ++"B"++ and ++"Y"++ and ++"A"++ and ++"B"++ on a Gameboy core to make default Gameboy controls more similar to default SNES controls and not having to make the same change for every single game again. |
| 18 | + |
| 19 | +Remapping controls for a *content directory* could be helpful if the core covers games from more than one folder but you want to apply the remap to games from only one of these folders. |
| 20 | + |
| 21 | +Changing controls for a single *game* will help you to adapt controls for a single game without messing up controls for every other game of the same core (or folder). |
| 22 | + |
| 23 | +## Remap your controls |
| 24 | + |
| 25 | +After you made a decision on whether you want a *game* or *core* specific remapping, hold ++"F"++ (the function button) and press ++"B"++ to bring up the RetroArch menu while playing the game. |
| 26 | + |
| 27 | +- Go to the *Controls* section and select *Manage Remap Files*. |
| 28 | +- Check if there is already an *Active Remap File* indicated at the top of the menu and if that is the remap file you would like to edit. |
| 29 | + - If the file is named like the game, it is a *game* remap file. |
| 30 | + - If the file is named like the folder it is a *content directory* remap file. |
| 31 | + - If the file is named like the emulation core it is a *core* remap file. |
| 32 | + - If the file is named `common.rmp` it is the *default* remap file. (You should not try to edit this one.) |
| 33 | +- If the default remap file is selected (or the active remap file is not the remap file you want to use), |
| 34 | + - pick *Save Game Remap File* to create a game remap file or |
| 35 | + - pick *Save Content Directory File* to create a content directory remap file or |
| 36 | + - pick *Save Core Remap File* to create a core remap file. |
| 37 | +- If you want to permanently delete the current remap file |
| 38 | + - pick *Remove Game Remap File* to **permanently delete** the game remap file or |
| 39 | + - pick *Remove Content Directory File* to **permanently delete** the content directory remap file or |
| 40 | + - pick *Remove Core Remap File* to **permanently delete** the core remap file. |
| 41 | +- After you made sure the *Active Remap File* indicates the file you want to use and modify, |
| 42 | + - return the previous section (*Controls*), |
| 43 | + - pick the control port you want to remap (for the controls integrated in your KNULLI device, use *Port 1 Controls*), and |
| 44 | + - find the input of your device that you want to reassign (first/left column) and assign it to the desired input of the emulated system (second/right column). |
| 45 | + |
| 46 | +Once you are done remapping, return to your game. All changes you made will be stored in the currently active remap file and will be automatically restored when you launch the game again, unless they are overriden by another remap file as illustrated above. |
0 commit comments