Skip to content

joypadtest: use joypad_get_rumble_supported instead of assuming a Rumble Pak - #994

Open
zoncabe wants to merge 1 commit into
DragonMinded:previewfrom
zoncabe:joypadtest-gcn-rumble
Open

joypadtest: use joypad_get_rumble_supported instead of assuming a Rumble Pak#994
zoncabe wants to merge 1 commit into
DragonMinded:previewfrom
zoncabe:joypadtest-gcn-rumble

Conversation

@zoncabe

@zoncabe zoncabe commented Sep 8, 2026

Copy link
Copy Markdown

joypadtest never exercises rumble on a GameCube controller.

"e165fb5 gated joypad_get_rumble_supported behind whether a Rumble Pak was
attached, which obviously will never be true for a GameCube controller. The
whole point of joypad_get_rumble_supported is so you don't have to assume
which controller type is connected."

Both the activation block and the status line sit behind
accessory_type == JOYPAD_ACCESSORY_TYPE_RUMBLE_PAK, so with a GameCube
controller joypad_set_rumble_active is never called and the Rumble: line
never prints, even though rumble_method is JOYPAD_RUMBLE_METHOD_GCN_CONTROLLER
and the motor is available.

This switches both checks to rumble_supported, which covers the Rumble Pak and
the GameCube controller alike.

Tested against ares with gc controller support using an xbox controller: holding A now toggles the motor
and the status line reads Rumble: Active. Behaviour with a Rumble Pak on an
N64 controller is unchanged.

Opening this as a draft because the joypad_get_rumble_supported call that was
on line 115, inside the if on line 113, moved out of that if, and I'm not
sure what the consequences of that could be.

@zoncabe
zoncabe marked this pull request as ready for review September 8, 2026 03:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant