RevQuixo / SSDS3-SHDS3-Bugtracker

Unofficial TerraOnion SSDS3 & SHDS3 Pro Bugtracker
4 stars 0 forks source link

Partial mouse functionality within SHDS3 menu #14

Open RobertDaleSmith opened 2 years ago

RobertDaleSmith commented 2 years ago

TLDR

Issue

I analyzed the clock/select/data lines of the controller and I can see that the SHDS3's menu goes into mouse mode and the left/right buttons work as I/II buttons as expected. But if the SHDS3 menu could scroll the list selection when y-axis movement occurs then that would be awesome and make it much more usable with mice overall.

Because currently, in order to change between mouse compatible games, you have to shut off the console, plug in a normal controller, power on, select a mouse game, then quickly swap the controller for the mouse before the game starts. As some games detect the mouse on boot and then don't check again. Thus the second bug, the SHDS3 menu also does not check for mouse or controller again after boot. It will not work with normal controllers if booted with a mouse connected, as it's stuck in mouse only reading mode.

There are workarounds to play the limited set of mouse compatible games but it could be a bit easier with these two small patches to the SHDS3 menu software.

Solutions

  1. When mouse is detected, use y-axis cursor movements to scroll the game list selection up or down.
  2. When mouse is no longer detected, switch back to controller mode. (code example of switching between controller and mouse modes on PCE can be found within this repo)