And here lies the biggest issue... on my driver - I mapped everything to one button and used a return to center shifter. End user experience was not that good. If I had to do it all again - I'd use a modded xbox instead of mame.
Gear Shift Software SolutionSome good news to report on this front...
Using only the Happ Hi/Low shifter with a single microswitch and the Logitech Wingman software which can be used to configure the behavior of a Logitech game controller, I'm able to replicate the following three modes of shifting:
(1) "Taito" - Single button when held places car in low gear and in high gear when released.
(2) "Jaleco" - One button to switch into high gear and a second button to switch into low gear.
(3) "Outrun/Spyhunter" - One button when pressed and released toggles high/low gear.
(1) and (2) are straightforward and just requires wiring one terminal (either "NO" or "NC") of the microswitch to one button and the other terminal to another button. With the Driving Force Pro, I wired the Happ shifter outputs to the connector that was previously used for the two Logitech shifter buttons. Since there is only one microswitch, one of these buttons is always closed and the other is always open.
(3) is accomplished by using the Wingman software to map macro "commands" to the shifter buttons. In my case, the macro for each button was set to the sequence:
Shifter Button Click
0.2s Pause
Keydown 'S'
0.2s Pause
Keyup 'S'Even though there is only one microswitch, using the two terminals causes the Wingman software to perceive two different buttons... one for shift backward and another for shift forward. The macros were set so that each Wingman button sees the appropriate button click, but both buttons send an 'S' keypress to the emulator.
Unless the command is sent to repeat, the Wingman software only sends the command once when the button is pressed. Only one command is sent when the shifter is toggled in either direction.
Therefore whenever the shifter knob is switched, one of two button clicks is sent along with an 'S'. This allows the Taito and Jaleco game modes to be used by configuring the game specific Mame controls to expect the button clicks for the shifter control. Games like Outrun and Spyhunter are configured so that the Gear Shift button is mapped to the 'S' key.
Just got this working tonight and played with it for a while. It seems that this software "hack" correctly handles all three game shifter styles.