Skip to content

feat: add optional PlayStation Mouse (SCPH-1030) launcher support - #121

Open
PeriBluGaming wants to merge 1 commit into
RetroPortingToolKit:masterfrom
PeriBluGaming:feature/ps1-mouse-support
Open

PeriBluGaming wants to merge 1 commit into
RetroPortingToolKit:masterfrom
PeriBluGaming:feature/ps1-mouse-support

Conversation

@PeriBluGaming

@PeriBluGaming PeriBluGaming commented Oct 27, 2026 •

Copy link
Copy Markdown

Summary

This PR adds optional PlayStation Mouse (SCPH-1030) device selection to recomp-ui.

It enables compatible PlayStation recompilation projects to expose native mouse input through the launcher, while preserving existing controller options and keyboard/mouse behavior.

Changes

  • Add an optional PlayStation Mouse device option to the launcher.
  • Expose the option only when the game declares PlayStation Mouse support.
  • Persist the selected device using p1_device = "mouse".
  • Extend the launcher model and configuration interfaces.
  • Add a dedicated source test for the mouse launcher integration.

Game configuration

Games can opt in using:

[controller]
supports_ps_mouse = true

Games without this capability remain unaffected.

Compatibility

This change is designed to preserve existing controller selection behavior, including the existing Keyboard + Mouse functionality used by other recompilation projects.

The native PlayStation Mouse protocol and runtime implementation are handled separately in a companion PSXRecomp change.

Testing

  • Tested with RescueShotRecomp using native PlayStation Mouse emulation.
  • Verified mouse device selection and configuration persistence.
  • Added tests/launcher_mouse_source_test.c.
  • Verified the changes build successfully in the integrated RescueShotRecomp environment.

Related work

Companion PSXRecomp PR: RetroPortingToolKit/psxrecomp#779

RescueShotRecomp: https://github.com/PeriBluGaming/RescueShotRecomp

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