# Generic Controllers

**Note these inputs are part of the upcoming 0.8b update.**

<img src="../../wiki_images/controllers/xiaomi-controller.png" width="280">
<img src="../../wiki_images/controllers/8bitdo-pro2.png" width="250">

Generic Controllers is a broad category that encompasses the vast majority of third party controllers.<br>

## Generic - Standard

The Standard type has the same layout and amount of inputs as all modern controllers aka the Standard Default.

- A dpad.
- Four top buttons: R1, R2, L1, L2
- Four face buttons: A, B, X, Y
- Start and Select
- Two clickable joysticks: R3 and L3

Bonus:

- A home/xbox/playstation button

#### Steam Input support
Yes

### What is the Official profile called?

- Generic - Standard : `RetroDECK: Generic - Standard`

#### What is the Current Version Number of the profile?

WIP


## Global Hotkeys: Generic Button Combos

The global hotkeys are activated by pressing the `SELECT`  button and holding it while pressing the corresponding other button input.
What follows is a list of hotkeys:

`Function` Shows what the hotkey does. <br>
`Button / Combination` Shows the input you need to make to trigger the command. <br>
`Command` Shows what is being sent to the emulator. <br>
`Emulator Support` Shows what emulators support the command. <br>
`Comment` Just extra comments. <br>


| Function                 | Button / Combination|  Command      | Emulator Support     |    Comment |
| :---                    | :---:               | :---:                 |       :---:          |  :---:     |
| Pause / Resume      |   `SELECT + A`          |   `CTRL + P`          | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2`  `Yuzu`    |            |
| Fullscreen Toggle      |   `SELECT + X`          |   `CTRL + ENTER`      | `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2`  `Yuzu`             |            |   |
| Open Menu               |  `SELECT + Y`         |   `CTRL + M`          | `RetroArch` `Duckstation` `PCSX2`  `Yuzu`                                        |            |   |
| Quit Emulator           |  `SELECT + Start`       |   `CTRL + Q`          |`RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`   `Yuzu`          |            |   |
| Previous State Slot     |  `SELECT + D-Pad Left`  |   `CTRL + J`          | `RetroArch` `Dolphin/Primehack` `Duckstation` `PCSX2`                          |            |   |
| Next State Slot         |  `SELECT + D-Pad Right` |   `CTRL + K`          | `RetroArch` `Dolphin/Primehack` `Duckstation` `PCSX2`                          |            |   |
| Increase Emulation Speed     |  `SELECT + D-Pad Up`  |   `CTRL + 1`          | `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`                           |            |   |
| Decrease Emulation Speed         |  `SELECT + D-Pad Down` |   `CTRL + 2`          | `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`                      |            |   |
| Load State              |  `SELECT + L1`          |   `CTRL + A`          | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`                  |            |   |
| Save State              |  `SELECT + R1`          |   `CTRL + S`          | `RetroArch` `Citra` `Dolphin/Primehack` `Duckstation` `PCSX2`                  |            |   |
| Rewind                  |  `SELECT + L2`          |   `CTRL + -`          | `RetroArch` `Duckstation`                                                      |            |   |
| Fast forward            |  `SELECT + R2`          |   `CTRL + +`          |  `RetroArch` `Duckstation` `MelonDS` `PCSX2`                                   |            |   |
| Global Radial Menu      |  `SELECT + Left Joystick`    |                                                                                                   |            |       Opens the Radial Menu  |

### Global Radial Menu

The Global Radial Menu is activated by holding `SELECT` and by moving the `Left Joystick`, then by pressing `L3` allows you press the selected radial button.

Radial Button |	Keyboard Command|  Emulator Support     |    Icon |  Comment  |
| :---                    | :---:               | :---:                 |       :---:          |       :---:          |
| Space          |   `Space`          |   `PC-Systems`  | <img src="../../wiki_icons/binding_icons/RD-icon_circle_2_180x180.png" width="20">  | |
| Escape          |   `Escape`          |  `PPSSPP` `PC-Systems`  |<img src="../../wiki_icons/binding_icons/RD-ESC.png" width="20">    | On PPPSPP it opens the Menu  |
| Enter          |   `Enter`          |  `OpenBOR` `PC-Systems`  |  <img src="../../wiki_icons/binding_icons/RD-Enter.png" width="20">   | |
| F1          |   `F1`          |  `PC-Systems`  |  <img src="../../wiki_icons/binding_icons/RD-F1.png" width="20">   |   |
| F5          |   `F5`          |  `PC-Systems`  |  <img src="../../wiki_icons/binding_icons/RD-F5.png" width="20">   |   |
| F10          |   `F10`          |  `PC-Systems`  |  <img src="../../wiki_icons/binding_icons/RD-F10.png" width="20">   |  |
| Wii Sync Button          |   `ALT + W`          |  `Dolphin/Primehack`  | <img src="../../wiki_icons/binding_icons/RD-notification-network-wireless.png" width="20">    |  |
| Swap Dual-Screens          |   `CTRL + TAB`          |  `RetroArch` `Citra` `MelonDS` `Cemu`| <img src="../../wiki_icons/binding_icons/RD-system-switch-user.png" width="20">    |  |
| Change Dual-Screen Layout          |   `CTRL + L`          |  `Citra` | <img src="../../wiki_icons/binding_icons/RD-preferences-system-windows-actions.png" width="20">    |  |
| Widescreen / Aspect Ratio        |   `CTRL + W`          |  `Dolphin/Primehack` `Duckstation` `PCSX2`	 | <img src="../../wiki_icons/binding_icons/RD-preferences-desktop-display.png" width="20">    |  |
| Fullscreen Toggle      |   `CTRL + ENTER`          |  `Citra` `Dolphin/Primehack` `Duckstation` `MelonDS` `PCSX2`  `Yuzu`          |  <img src="../../wiki_icons/binding_icons/RD-zoom-fit-best.png" width="20">        |   |
| Change Disc / Next Disc        |   `CTRL + D`          |  `RetroArch` `Dolphin/Primehack` `Duckstation`| <img src="../../wiki_icons/binding_icons/RD-application-x-iso.png" width="20">    |   |

### Right Joystick as Temporary Mouse

By holding `SELECT` and moving the `Right Joystick` you can use it as a mouse for various systems that uses mouse input.

| Function                 | Button / Combination| Command      | Comment     |
| :---                    | :---:               | :---:                 |       :---:          |
| Joystick as Mouse        |  `SELECT + Right Stick`           |            |   Movement  |
| Right Click        |  `SELECT + L3`          |   `Right Click`               |     |
| Left Click        |  `SELECT + R3`           |   `Left Click`            |     |

### RetroArch: Additional Hotkeys

These hotkeys also work for RetroArch and are built in.

| Function                 | Button / Combination     | Emulator Support     |    Comment |
| :---                    | :---:                    |       :---:          |  :---:     |
| Open Menu               |  `L3 + R3`               |      `RetroArch`     |            |

### Arcade Systems: Additional Hotkeys

This hotkey work for RetroArch, MAME, FBNEO and other arcade systems.

| Function                 | Button / Combination     | Emulator Support     |    Comment |
| :---                    | :---:                    |       :---:          |  :---:     |
| Insert Credit           |  `SELECT`                |     `RetroArch`  `MAME` `FBNeo`     |            |