Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07200 DIP/Input Minor Always Jan 6, 2019, 15:25 Aug 22, 2020, 19:25
Tester illando View Status Public Platform
Assigned To Resolution Open OS
Status [?] Acknowledged Driver
Version 0.204 Fixed in Version Build 64-bit
Summary 07200: Stable Controller IDs for 2 controllers of the same brand.
Description The Stable Controller IDs configuration ( ) is not working using 2 controllers of the same brand.
This configuration is based on the device ID, but if the controllers that have generic names like "PS4Controller" MAME can not disambiguate between these devices.
<mapdevice device="PS4Controller" controller="JOYCODE_1" />
<mapdevice device="PS4Controller" controller="JOYCODE_2" />

A solution to this problem can be found at this link (reply #12 by tverona)
In his private build he made MAME able to recognise also the "Instance" for each device, so it's possible to write it in the .config file.
<mapdevice device="instance_f1641160-a808-11e5-8006-444553540000" controller="JOYCODE_1" />
<mapdevice device="instance_f1641160-a808-11e5-8002-444553540000" controller="JOYCODE_2" />
Steps To Reproduce
Additional Information
Regression Version
Affected Sets / Systems
Attached Files
There are no relationship linked to this issue.
User avatar
Jan 8, 2019, 01:18
To my knowledge, such information can be added to the mapdevice entry already:

The documents, I fear, are not set up to handle the duplicate controller ID scenario, but it should work.
User avatar
Jan 8, 2019, 17:49
edited on: Jan 8, 2019, 17:56
@Tafoid Yes but this is just for Directinput, so it will work only on Windows. Right?
Is there a way to ask MAME to visualise the instance on MacOs an try adding it to the mapdevice?
Also SDL2 should support InstanceID:
User avatar
Jan 11, 2019, 10:17
Opened up for some Developer help with this, hopefully
User avatar
R. Belmont
Aug 22, 2020, 19:25
MacOS doesn't let you see the IDs of the controllers at that level of detail. I added the ability to use the SDL2 JoystickInstanceID but it's just a generated number on non-Windows systems. If the stable controller feature is important to you, you need to use Windows, unfortunately.