Replies: 2 comments 5 replies
-
Just a heads up I've been busy this week-end but I'm not forgetting you, I'll have a first look this evening after work with the gamepads/arcade stick/flight stick and I'll probably check the instruments later this week as I need to fetch them from storage. |
Beta Was this translation helpful? Give feedback.
-
8bitdo SF30 xinput wired
xinput mode A/B are swapped in regards to physical vs mapped as such B operates as Select vs A as listed in the UI input options I do not recall this operating this way previously, but can rebuild and test if needed. 8bitdo m30 xinput wired
UI maps seem OK recall this was the same previously, needs a custom map 8bitdo pro 2 xinput wired
Same situation as the SF30 |
Beta Was this translation helpful? Give feedback.
-
Hi everyone! I was hoping to have this stuff in shape a bit earlier, but I got sidetracked with the rendering stuff. On the bright side, BGFX should be in better shape for MAME 0.252 as well. Anyway, as of mamedev/mame@d4589e0, MAME should be smarter about its default input assignments for game controllers. This changes quite a few things.
I’d appreciate if people with exotic controllers (e.g. @darkmos, @MrDo-Arcade and @sairuk) could build from the latest source and try things out.
New UI inputs
UI input have changed.
The third change is the most significant. This means that a game controller button can be assigned to “UI Back” to allow menus to be closed easily without having to avoid that button while playing.
The only real drawback is that assigning combinations involving the “UI Cancel” key is annoying (you effectively need to clear the “UI Cancel” assignment while you set up the other assignments), and there’s potentially a need to do that now.
More functionality in SDL builds
Windows SDL builds now include DirectInput, XInput and XAudio2 modules. This can give faster turnaround for developers as more modules can be tested in a single build. It’s probably not all that exciting for users, unless you have some use case where you want to mix and match different modules.
Better input behaviour
The threshold for treating an axis as “on” when used as a switch is not a separate setting from the dead zone. This means the default dead zone can be made smaller, giving more useful range for analog sticks, triggers and pedals, and you can set the dead zone to zero without having UI inputs assigned to analog axes going nuts.
More modules honour the
background_input
setting. DirectInput, XInput, and SDL game controller and joystick modules all honour the setting if that’s what you want to do. Various issues with DirectInput have been fixed, too.Smarter default assignments for game controllers
This is obviously the big thing. Default input assignments now take the type of controller and available controls into consideration, to varying extents depending on the module. Default assignments should be more appropriate for your controllers, and it’s now possible to navigate more of the internal UI with a game controller by default. Most controllers should now have default assignments for UI Back and UI Clear, which are rather important controls.
XInput (xinput, winhybrid)
Most controllers should work well:
XInput driving controls might have bad default assignments, I haven’t really thought about them, and I don’t have any to test with.
DirectInput (dinput, winhybrid)
Gamepads, flight sticks and driving controls should all have reasonable default assignments. For flight sticks and driving controls, I’m working with limited documentation and assumptions.
There’s no semantic information about buttons, so it can’t try to be as clever as XInput. It’s probably not going to work too well if your first controller is a limited or auxiliary controller (e.g. a throttle quadrant or pedal unit).
SDL Game Controller (sdlgame)
Triggers should be assigned to pedals by default, and dual analog sticks should be correctly assigned for dual joystick games (e.g, Smash TV, Libble Rabble and Crazy Climber). Shoulder buttons, triggers and the second analog stick are used as additional navigation controls. The home/logo button shows or hides the menu.
Exotic controllers aren’t catered for with this module at the moment.
SDL Joystick (sdljoy)
As this module doesn’t have access to semantic information about the controls, this module follows MAME’s traditional approach to assigning controls to inputs. The second analog stick on a gamepad or the throttle and rudder on a flight stick can be used to switch between panes on the system and software selection menus.
Beta Was this translation helpful? Give feedback.
All reactions