Alright gentlemen. I've finished my z-pack, I've got half a bottle of amoxcilian, a full tank of gas... it's dark, and I'm wearing sunglasses. Let's do this:
Mamehooker 5.0Note that the documentation is rather light and we still need to test it.
First off download the thing. I would suggest that you NOT install it to the same location as your current build for the time being as some things have changed. The most noticeable change is full multi-emu support. The ini folder will now sort ini files into ini/mame ini/supermodel and similar folders. Also if you use troubleshooter, the outputs now register with mamehooker so you can try that. In addition, there is now an optional "title bar hooker" that you can use. It doesn't do much more than tell mamehooker when a stand-alone game or rom is running and when it quits on a non-supported app, but you'd be surprised how helpful that can be.
All of this stuff will be documented when I get to it. But for now just be aware of it's existence.
But anyway, the star of the show is steering wheel and custom effect support.
Again, this needs documented in detail.... I'll have to make a tutorial, but assuming that you've got a FF wheel and it's assigned to joystick id 1, you can test it with the included effects/tweaks and by adding the following to your orunners.ini
---------------------------------------------------------------
[General]
MameStart=ffe 1 customwheel,fft 1 1 0
[Output]
ma_steering_wheel_lamp=fft 1 1 0|fft 1 1 -1
---------------------------------------------------------------
What is this doing? Well again, I need to make some documentation, but essentially it's loading a effect called "customwheel" into the wheel upon startup. Custom wheel is a two-layered effect with a simple spring force and a saw-tooth motion to "rumble" the wheel back and forth. Also upon startup I "tweak" the effect. Mamehooker automatically looks for a twk file named after the effect file in the effects folder. The tweak file for customwheel sets the duration of the sawtooth effect to "%s%" (aka the state) every time it's loaded. So initially I set it to 0 milliseconds (off) and then bind the state to either 0 milliseconds (off) or -1 (always on).... allowing it to control the rumble of the effect while leaving the spring on.
Again, I'll do a tutorial for this, but for now test it out.