Gamepads

Gamepads belong to the context, not to a window: their records arrive whichever window has the focus. They are an optional component, MAUL_WINDOW_GAMEPAD, on by default; the gamepads limit (8 by default, 0 for none) bounds how many are connected at once.

Connecting and reading

Browsers show a page no gamepad until one of its buttons has been pressed there.

Mapped and raw pads

A pad the platform or the SDL_GameControllerDB data knows is mapped onto a layout named by place:

Any other pad is raw: up to 32 numbered buttons and 16 numbered axes, each hat as two axes. Nothing is filtered, so dead zones and curves are the program's.

Rumble and motion

Per platform