Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
06172 DIP/Input Minor Always Mar 31, 2016, 02:31 Apr 1, 2016, 15:48
Tester enik View Status Public Platform MESS (Official Binary)
Assigned To Resolution Fixed OS Windows XP
Status [?] Resolved Driver sms.cpp
Version 0.172 Fixed in Version 0.173 Build Normal
Fixed in Git Commit Github Pull Request #
Summary MESS-specific 06172: Default input mapping for two paddle devices causes a conflict
Description I think there's a core issue that causes a conflict with default paddle mappings for two players. In the file /src/emu/inpttype.h, the Paddle default setup for player 2 shows different analog mappings, but I don't know why they are not applied. The problem does not happen for two devices of other type (trackball, lightgun).
Steps To Reproduce I found the problem using this command:

mame smsj -ctrl1 paddle -ctrl2 paddle galactpr

Only button 1, of the two paddle inputs, does not conflict. The other settings (Analog, Analog Dec and Analog Inc) have the same mappings for the two players.
Additional Information I haven't notice the issue until this week, but it is present on some older git builds from last year that I still have stored.
Github Commit
Regression Version
Affected Sets / Systems
Attached Files
There are no relationship linked to this issue.
User avatar
Mar 31, 2016, 20:25
This seems to be a longstanding bug in ioport handling. The controller devices in both slots are providing the same input map, but the core is supposed to recognize controller inputs and assign the duplicates to different players. Unfortunately, this relied on a piece of old MESS code that was only set up to recognize digital joysticks, the first 10 buttons, analog sticks, trackballs, light guns, mice, START and SELECT as controller inputs. I've submitted a rewrite of the offending routine.
User avatar
Senior Tester
Apr 1, 2016, 15:47
Fixed by AJR.