ppsspp icon indicating copy to clipboard operation
ppsspp copied to clipboard

No input from DualShock 3 controller in macOS 12

Open vit9696 opened this issue 4 years ago • 6 comments

Game or games this happens in

None

What area of the game / PPSSPP

Apparently macOS 12 broke the support of PS3 controllers (at least) over USB. The controller is recognised yet no input happens. Similar reports:

https://forums.macrumors.com/threads/did-monterey-drop-ps3-sixaxis-controller-support.2319541/ https://www.reddit.com/r/macgaming/comments/qkofd5/ps3_controller_not_working_with_macos_monterey/

Worked without any changes on the same build in macOS 11. Wonder whether we can do anything here. Reported as FB9745903.

What should happen

Gamepad should control the menu.

Logs

VulkanMayBeAvailable: Device allowed ('SDL:macOS')
VulkanMayBeAvailable: Library loaded ('@executable_path/../Frameworks/libMoltenVK.dylib')
VulkanMayBeAvailable: Enumerating instance extensions
VulkanMayBeAvailable: Instance extension count: 13
VulkanMaybeAvailable: Instance extension found: VK_KHR_device_group_creation (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_fence_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_memory_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_external_semaphore_capabilities (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_get_physical_device_properties2 (00000002)
VulkanMaybeAvailable: Instance extension found: VK_KHR_get_surface_capabilities2 (00000001)
VulkanMaybeAvailable: Instance extension found: VK_KHR_surface (00000019)
VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_report (00000009)
VulkanMaybeAvailable: Instance extension found: VK_EXT_debug_utils (00000002)
VulkanMaybeAvailable: Instance extension found: VK_EXT_metal_surface (00000001)
VulkanMayBeAvailable: Found platform surface extension 'VK_EXT_metal_surface'
VulkanMayBeAvailable: Calling vkCreateInstance
VulkanMayBeAvailable: Vulkan test instance created successfully.
VulkanMayBeAvailable: Found working Vulkan API!
VulkanMayBeAvailable: Destroying instance
DEBUG: Vulkan might be available.
Info: We compiled against SDL version 2.0.16 and we are linking against SDL version 2.0.16. :)
ThreadManager::Init(compute threads: 16, all: 20)
55:09:047 Core/Config.cpp:626 I[G3D]: Longest display side: -1 pixels. Choosing scale 1
Pixels: 960 x 544
Virtual pixels: 960 x 544
OpenGL 2.0 or higher.
loading control pad mappings from gamecontrollerdb.txt: SUCCESS!
found control pad: PS3 Controller, loading mapping: SUCCESS, mapping is:
030000004c0500006802000000010000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,
pad 1 has been assigned to control pad: PS3 Controller
found control pad: PS3 Controller, loading mapping: SUCCESS, mapping is:
030000004c0500006802000000010000,PS3 Controller,a:b14,b:b13,back:b0,dpdown:b6,dpleft:b7,dpright:b5,dpup:b4,guide:b16,leftshoulder:b10,leftstick:b1,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b11,rightstick:b2,righttrigger:b9,rightx:a2,righty:a3,start:b3,x:b15,y:b12,

Platform

macOS 12

Mobile phone model or graphics card

RX 590

PPSSPP version affected

master

Last working version

macOS 11.6

Graphics backend (3D API)

OpenGL / GLES

Checklist

  • [X] Test in the latest git build in case it's already fixed.
  • [X] Search for other reports of the same issue.
  • [ ] Try resetting settings or older versions and include if the issue is related.
  • [ ] Try without any cheats and without loading any save states.
  • [X] Include logs or screenshots of issue.

vit9696 avatar Nov 08 '21 04:11 vit9696

We use SDL for input on Mac, maybe the bug should rather be reported to them?

hrydgard avatar Nov 08 '21 07:11 hrydgard

I actually found a way to deal with it, attached a hack in https://github.com/libsdl-org/SDL/issues/4923#issuecomment-966722634. Let's see how it goes, but it does not feel like a good thing to add into SDL. Perhaps placing it into PPSSPP is better…

vit9696 avatar Nov 12 '21 00:11 vit9696

workaround here could be to us qjoypad to map your controller's buttons and assign them in PPSSPP manually.

gucio321 avatar Oct 02 '22 12:10 gucio321

The fix for this will land into SDL 2.26, so we just need to update when it is released.

vit9696 avatar Oct 02 '22 12:10 vit9696

awasome! looking forward to seeing this working ;-)

gucio321 avatar Oct 02 '22 13:10 gucio321

just FYI: I was able to fix this by manually apping all the controller's buttons in settings; Now it works like a charm! platform: linux (Fedora) SDL2 build

gucio321 avatar Oct 02 '22 18:10 gucio321