Main > Software Forum

New ControllerRemap utility, 7/11/13 update available (Version 0.0.11)

<< < (31/47) > >>

stigzler:
OK - bit the bullet and chased this down to the ground!! Took me a day and a half, but finally licked it! Great application DrVenture!! Soo sweet now set up and MAME's a happy beast with all my USB hot-swapping!

One thing I've gathered is that quite a few people have had difficulties getting their heads around how to set this up. So, I've made a simple A, B, C guide with screenshots and stuff to help anyone out who's approaching this for the first time. Doubled the time it took me, but I'm very much for helping out the next guy. :)

It also contains a script to make testing easier and also some other support files.

You can grab it here:
https://dl.dropboxusercontent.com/u/15144043/ControllerRemapGuide/ControllerRemapGuide.zip

I'm hoping it'll reduce the time to get this up and running from a day and a half to maybe even an hour!

Let me know if any mistakes/improvement needed. :)

drventure:
Sorry guys, haven't had chance to visit much lately, but I'll try to hit on some questions now.


--- Quote from: MydknyteStyrm on November 26, 2013, 02:22:56 pm ---I was wondering if this utility was necessary if I was planning my cab to NOT have any control unplugged. Everything I put in is staying. Does Windows change my ID's on powering up and down? Thanks!

--- End quote ---

In my experience, YES. At least with Vista, and win7.

Haven't had a chance to work much with Win8 yet

drventure:

--- Quote from: lemonflavoured on December 03, 2013, 09:49:21 am ---I've just a quick question on the way this utility works. I have 2 trackballs in my cab which love changing ID so for instance trackball 1 is showing as mouse 4 in mame and on reboot it becomes mouse2. Does this utility simply rebind everything that was mouse 4 to mouse2 and just keeps the mame bindings up to date or does it perform some other kind of trickery where make still sees trackball 1 as mouse 4?

--- End quote ---

That's pretty much exactly what it does.

You add definitions (Controller aliases, etc) in the config file. Mame ignores it but ControllerRemap uses that to ID what device is what ID, then rewrites the rest of the config file to use the proper IDs for the controls, whatever they are at the point that it was run (it's not dynamic, it doesn't sit and monitor for device swaps or anything like that)

That's why you need to set up so that controllerremap is run right before you start mame.

drventure:

--- Quote from: stigzler on April 12, 2014, 04:25:38 pm ---Thanks Nick, but that didn't work either. :(
I have two ini files - one in root mame directory and the other in the INI folder under root. I changed both to:

--- Code: ---rompath                   J:\roms
hashpath                  hash
samplepath                samples
artpath                   artwork
ctrlrpath                 C:\Emulators\Mame0149b\ctrlr
inipath                   ini
fontpath                  .
cheatpath                 cheat
crosshairpath             crosshair

--- End code ---

Still no joy. :( Any other ideas?

--- End quote ---


Let's see if I can help any.

First, simple stuff (you've probably already done this but just in case...)
Mame.ini is in the \mame\ini folder

mame.ini contains a ctrlrpath line that should contain ctrlr as the value.

Create a file in ctrlr folder, call it MyController.cfg or somesuch

That's the CFG file that should contain the controllerremap configs, it's XML, and it'll need to be structured properly or mame won't load it (and I believe it fails silently, so you won't +know+ that it didn't load it. Ugh.


Get the CFG all set up and run
controllerremap /remap:{path}MyController.cfg

(I usually set the above up in a bat file called remap.bat, or just R.BAT so I don't have to type the command all the time.

First , If you look at that file, does it look like the INPUT sections got rewritten at all? Make a back up and compare them if you're not sure.
If that part appears to be working right copy and paste the XML file into one of the online XML checkers.

Like this one
http://www.xmlvalidation.com/

If it checks out, move on to the next step.



Ok. Just Saw Stigzler's write up. Very nice.

One thing to point out is that ControllerRemap has NOTHING to do with the mame.ini file.

It doesn't even use the MAME.INI file to locate the CFG file (you need to put the full path on the command line).


Another thing that can be VERY helpful, is to generate the MAP file (Via /save), then use that with the /TESTMAP command.
Check out the map file, it's a pretty straightforward file. Swap some sections around to +simulate+ controllers being unplugged and replugged, save several different MAP files, then use the /TESTMAP:filename command to swap between the maps and see out the INPUT ports are rewritten.

An editor that will automatically reload files when they're changed externally is a HUGE help for this (personally I like RJTextEd as a good free windows editor.

http://www.rj-texted.se/

drventure:
@stigzler

Glad to see you got it working! I apologize that I wasn't more help earlier.

If you have any suggestions (other than adding a GUI  ;D ) feel free to throw em out there.

I know the app isn't the most user friendly of tools right now. I've been thinking of how I might "nice it up" a bit, but really, getting MAME controls configured right is kind of a tough thing to do, even in the best of circumstances, so I haven't had much luck coming up with improvements (over and above just adding this kind of remap capability to MAME directly, which I've seriously contemplated, but just don't have the time right now.)

Any hardcore C devs that want to take that on, I'd definitely throw in with, though!

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version