Button mapping for an emulation setup
Learn how button mapping connects a controller to emulator controls, test each input in your browser, and fix swapped or missing actions.
A controller can connect successfully and still do the wrong thing in an emulator. A face button might trigger the wrong game action, a shoulder button may do nothing, or one press may activate two commands.
Button mapping is the step that tells the emulator which controller input should perform each game action. First identify what your controller sends, then assign those inputs in the emulator and test them in a game. The Gamepad Test can help you check the controller before you change the mapping.
Check and map the controller
- Open the Gamepad Test in a desktop browser. Connect the controller, then press its buttons one at a time and move each stick and trigger. Note which input responds for each physical control.
- Close the test page or leave it out of focus, then open your emulator's controller or input configuration. If the emulator has more than one profile, choose the one you intend to use for this controller or game.
- Select an action in the emulator, such as confirm, cancel, jump, or pause. When it asks for an input, press the controller button you want assigned to that action.
- Repeat for the other actions. Check both the button's physical position and its printed label, since controllers can use different button-label conventions.
- Save the profile, open a game, and test the mapped actions there. If a control is wrong, return to the mapping screen and change that binding rather than changing several inputs at once.
Mapping menus differ between emulators, so look for a section named something like controller, input, gamepad, or controls. The exact menu names and options depend on the emulator.
What the test and mapping results mean
The controller responds in the browser and in the emulator
The computer and browser can detect those inputs, and the emulator can use them. If the game action is still wrong, focus on the emulator's binding or active profile. Check that the right controller is selected and that the intended action is assigned to the intended input.
The browser sees the button, but the emulator does not
The controller is sending input, but the emulator may not be listening to that device or may be using a different input mode. Select the controller in the emulator's input settings, reconnect it, and check whether another controller profile is active.
A button responds in the test but triggers the wrong game action
This usually points to a mapping mismatch, not a broken button. The emulator has assigned that input to a different action, or the current game profile differs from the one you edited. Review the binding for the action that occurs and the action you intended.
A button never responds in the browser or emulator
The controller may not be sending that input, may be disconnected, or may not be exposed to the browser in the expected way. Try a different connection or another controller. The browser test helps check reported input, but it cannot inspect every device-specific feature or confirm that the controller works in every emulator.
One press activates two actions
The same input may be bound to more than one action, either in the emulator or in a game-specific profile. Check for duplicate bindings and remove the extra assignment if the emulator allows it. Some games intentionally use one input for more than one action depending on context, so test the behavior in the game too.
Fix common mapping problems
- Confirm which controller is selected. If several controllers are connected, select the one you are holding in the emulator's input settings. Disconnect unused controllers temporarily if it is unclear which device the emulator is reading.
- Clear confusing bindings and map again. Remove the incorrect assignment, then bind one action at a time. Press the chosen control once, briefly, so the emulator does not mistake a long press or stick movement for a different input.
- Check for a different profile. Some emulators keep separate global and per-game mappings. Confirm that you edited the profile used by the game, and save changes if the emulator provides a save option.
- Reconnect the controller. On Windows 11, open Settings › Bluetooth & devices › Devices to check the connection, then reconnect or pair the controller again if needed. On macOS, open System Settings › Bluetooth and reconnect it there.
- Close other software that reads the controller. A game launcher, controller utility, or another emulator can change inputs or take control of the device. Close those programs, restart the emulator, and repeat the test.
- Reset only the affected profile if needed. If the bindings are too tangled to troubleshoot, reset the emulator's controller profile and map it again. Check the emulator's instructions first, because a reset may remove other custom settings.
Why mapping is a separate step
A button press passes through several layers. The controller detects a physical press, the operating system makes the device available, and the emulator translates that input into a game action. A successful connection only confirms that the device is available. It does not guarantee that the emulator's action assignments match your controller.
This distinction matters when moving between controllers or emulators. Two controllers may put similar functions in different places, and an emulator may show numbered inputs instead of familiar labels. Use the Gamepad Test to identify which input changes when you press a control, then bind that input to the action you want. If a button has the wrong label but behaves correctly in the game, the emulator may simply be showing its own numbering convention.
The Gamepad Test checks inputs reported to the browser. It does not change the emulator's settings or prove that every game supports every controller feature. Always finish by checking the actual game actions you plan to use.
