Main > Software Forum
New ControllerRemap utility, 7/11/13 update available (Version 0.0.11)
tony.silveira:
thanks dr.v! i'll give it a try this weekend and report back.
one last question. i use mamewah as my FE. if i start "star wars" without my yoke plugged in, it isn't active; i have to plug it in (or any other secondary controllers) so that mame sees them at start up.
i'm curious if this util will help with that or, is it just a limitation of the way windows works?
drventure:
--- Quote from: tony.silveira on May 18, 2012, 08:14:51 pm ---one last question. i use mamewah as my FE. if i start "star wars" without my yoke plugged in, it isn't active; i have to plug it in (or any other secondary controllers) so that mame sees them at start up.
--- End quote ---
I don't think that's as much a limitation of windows as it is with mame (and most other apps to be fair). Most games take inventory of the controls that are available during their load up process, and don't monitor for changes to what controllers are plugged or unplugged.
Unfortunately, ControllerRemap can't really help with that problem. You'd still have to make sure that whatever controls were necessary were plugged in before running Mame.
But there may be some guys on here with more in depth knowledge of the internal workings of mame than me, so I could very well be wrong. I just haven't seen it work any other way.
tony.silveira:
i kinda thought it'd be something like that.
curious if there would be a way to trick the OS into always thinking a controller is plugged in? that way you could assign an ID number with your util and the system would always think that they are plugged in.
another thought would be to pick a game with your FE, have a splash screen come up telling you what contrioller to plug in, wait for the USB signal, plug in, THEN mame starts the game
nick3092:
--- Quote from: drventure on December 12, 2011, 11:49:56 am ---Ok, looks like multiple newseq entries under a port was throwing things off.
I've fixed things up and will do some testing, then post the new build here in a bit.
--- End quote ---
First off, want to say that I finally got around to using this utility, and it works great. I have a modular CP with several USB joysticks, and it works great for me. I'm also assuming this could work for MESS on my cab too. I also have a number of console to USB converters as well.
I am having one issue with newseq entries, but I don't believe it is the fault of ControllerRemap. ControllerRemap appears to be correctly creating them in the "live" input section. However, MAME appears to be ignoring anything other than what is passed in the "standard" entry. I'm posting in this thread, hoping that this user base would be most likely run into this issue, since it depends on the use of ctrlr files.
For example, I am trying to map the "P1_POSITIONAL" port for my rotary controller in Ikari Warriors. It is hooked up to my GP-Wiz40 which translates the rotation into one of two button presses. Here is the code generated in the input section.
--- Code: --- <port type="P1_POSITIONAL" mask="240" defvalue="0" keydelta="0" sensitivity="100">
<newseq type="standard">
NONE
</newseq>
<newseq type="decrement">
JOYCODE_7_BUTTON19
</newseq>
<newseq type="increment">
JOYCODE_7_BUTTON18
</newseq>
</port>
--- End code ---
When I fire up MAME, it does acknowledge that I set the actual dial setting to "NONE". I have manually changed this to MOUSECODE_1_ZAXIS to test, and MAME does in fact pick up the change from none to mouse z. But it continues to ignore the fact the dial increase and dial decrease should be mapped to buttons 19 and 18. It shows them with the default of Z and X (I believe off the top of my head).
It also appears to be ignoring any of the analog settings that are passed on the port line, like the sensitivity. It keeps defaulting to like 15 (or something) when I'm passing 100 in the string. Having the same issue when I set up a profile for Arkanoid to set the sensitivity to 40. It keeps defaulting to 30. If I manually change them in MAME, it then creates a cfg file in the cfg directory for that particular game. And if I load the game again, MAME honors those settings. So it appears to only be ignoring these settings when they are passed via the -ctrlr option. I even took the corrected cfg file for Ikari and moved it from the cfg folder into the ctrlr folder, and ran MAME using -ctrlr ikari, and it then defaulted back to the original settings.
Has anyone else using this utility notice the same thing? I'd feel better if at least one other person noticed it besides me before opening a bug with the MAME team.
drventure:
--- Quote from: tony.silveira on May 18, 2012, 11:36:04 pm ---curious if there would be a way to trick the OS into always thinking a controller is plugged in? that way you could assign an ID number with your util and the system would always think that they are plugged in.
another thought would be to pick a game with your FE, have a splash screen come up telling you what contrioller to plug in, wait for the USB signal, plug in, THEN mame starts the game
--- End quote ---
Sorry, I didn't see this before now.
As far as I know, there's no way to "trick" the os that a device is plugged in without, maybe writing some sort of custom device driver? I'm just not sure on that one.
The "Pause before the game starts" idea would certainly work, but I'm not sure how you'd do it without a good bit a programming. AutoHotkey might be able to do something along those lines.
@nick3092
Now that's an interesting one. You're right about Mame creating those CFG files. If you config things through mame, you'll get a CFG file.
oooo. Yuck, Just came across this post from U-RebelScum, who I believe is one of the mame devs (or at least seems to know A LOT about controller mapping in mame)
http://forum.arcadecontrols.com/index.php?topic=73690.msg763763#msg763763
Basically, he's saying the Ctrlr file is only for port mapping, not for setting port attributes (which stinks, but I guess that's the way it is right now).
Also, that post was 2007. Maybe it's different now, but I'm not sure how to check (short of sifting through all the code)
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version