2009-10-27, 07:09 AM
I added support for the old Windows Multimedia API tonight. It's really a pain to work in, but it's the only drivers that seem to work with my Dualshock adapter. There's no way to make a connection between a DirectInput device and a Multimedia joystick ID. You can't even get the name of the product. I think in XP controllers have numbers that correspond, but they're gone in Vista (in the control panel)
It's possible the DirectInput devices are enumerated in the same order, but I think it's poor practice to count on that. And I have a feeling it's not the case anyway, because Vista still has an option to assign your preferred controller for old games.
So you gotta set do_use_windows_multimedia_interface = yes to use it. This will map the same settings to all of your controllers, which for most people would probably be fine. But if you want to differentiate different controller sections you gotta set windows_multimedia_joystick_number = 1 etc.
Unlike the way SOM makes you choose a controller, this system uses all of your plugged in controllers at once. So you could pick up any of them or use multiple controllers somehow (there are some weird controllers out there... pedals, eye tracking headsets, etc)
Another pain was with DX the adapter sent the 4th axis to the 6th slot, where with the Multimedia API it's the 4th. So you gotta change your settings for that too.
I will play with an analog simulation (I'm already using the sticks but they're all or nothing -- aka digital) before an initial release in the next few days. It's already a huge improvement over SOM's controller setup.
I'd kinda like to know how many of you think analog support is a game feature versus just something optional for the player that wants more precision. I mean support wise it's a huge deal. But analog is also part of the game as well I guess... especially in stealth type games where it's integrated into the movement of the player avatar. Though for SOM I don't suppose that's an issue. Though I just wondered for the first time if it would be possible to to make a 3rd person extension. I think I could make a simple Armored Core game with SOM. Which is usually 3rd person. Though personally I prefer 1st person games. All my top favs are 1st person.
I suppose bare minimum before it can be a "feature" I gotta work the new system into the in-game menu. I've already programmed most of what is needed on the controller side for that. Just not the menu stuff. That reminds me I gotta finish testing the macro support before a release.
EDITED: DX8/9/10 will surely support my pad. So I was wrong to say no other drivers will work. So I will get around to supporting these eventually. Hopefully there will be no trouble in compiling a DLL with all the different libraries in one / running them all simultaneously.
It's possible the DirectInput devices are enumerated in the same order, but I think it's poor practice to count on that. And I have a feeling it's not the case anyway, because Vista still has an option to assign your preferred controller for old games.
So you gotta set do_use_windows_multimedia_interface = yes to use it. This will map the same settings to all of your controllers, which for most people would probably be fine. But if you want to differentiate different controller sections you gotta set windows_multimedia_joystick_number = 1 etc.
Unlike the way SOM makes you choose a controller, this system uses all of your plugged in controllers at once. So you could pick up any of them or use multiple controllers somehow (there are some weird controllers out there... pedals, eye tracking headsets, etc)
Another pain was with DX the adapter sent the 4th axis to the 6th slot, where with the Multimedia API it's the 4th. So you gotta change your settings for that too.
I will play with an analog simulation (I'm already using the sticks but they're all or nothing -- aka digital) before an initial release in the next few days. It's already a huge improvement over SOM's controller setup.
I'd kinda like to know how many of you think analog support is a game feature versus just something optional for the player that wants more precision. I mean support wise it's a huge deal. But analog is also part of the game as well I guess... especially in stealth type games where it's integrated into the movement of the player avatar. Though for SOM I don't suppose that's an issue. Though I just wondered for the first time if it would be possible to to make a 3rd person extension. I think I could make a simple Armored Core game with SOM. Which is usually 3rd person. Though personally I prefer 1st person games. All my top favs are 1st person.
I suppose bare minimum before it can be a "feature" I gotta work the new system into the in-game menu. I've already programmed most of what is needed on the controller side for that. Just not the menu stuff. That reminds me I gotta finish testing the macro support before a release.
EDITED: DX8/9/10 will surely support my pad. So I was wrong to say no other drivers will work. So I will get around to supporting these eventually. Hopefully there will be no trouble in compiling a DLL with all the different libraries in one / running them all simultaneously.