Jump to content
LaunchBox Community Forums

stevenmh

Members
  • Posts

    8
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

stevenmh's Achievements

4-Bit Adder

4-Bit Adder (2/7)

2

Reputation

  1. Four years ago I spent quite a bit of time setting up a MAME rig. I have a Mayflash Arcade Stick F300 Elite in 4-way mode for 4-way games, two XBOX controllers for the 8-way games, a Thrustmaster flight stick and trackball device with a spinner ring on it for stuff like Zaxxon and Tron. I have everything set up in devicemap.cfg. I have the Arcade Stick in DInput mode since MAME takes XInputs on a first come first serve basis. That way it never gets confused with the XBOX controllers. Once I had everything set up and confirmed all games were working correctly, I set default.cfg, mame.ini, and ui.ini to read-only so that those files wouldn't get changed if MAME started without a controller plugged in. Then I copied my entire finalized MAME setup to another location as a backup and haven't touched it. This setup worked flawlessly for years. However, life got busy and I haven't played with it in awhile. Last week I bought a new computer and copied the backed up MAME setup onto it The problem I'm running into is that MAME is no longer recognizing the Arcade Stick in DInput mode. Opening the USB Controllers app in Windows, the Stick is recognized in both DInput and XInput and shows OK. It's just in MAME that it's not recognized. I thought maybe it's Windows 11, so I went back into my old PC (Win 10) to confirm. However, the stick is no longer recognized in DInput mode on that PC either. I verified date stamps on all the files, they're still read only and still dated 2019, so nothing in the MAME folder has changed. The only thing I can think of is that Windows 10, and now Windows 11, has been updated in a way that's not playing well with MAME. I did notice that in Device Manager it had a yellow triangle when in DInput mode that would go away when I switched to XInput. I went to the Mayflash website and downloaded the most recent firmware (Dec 2022) for the Stick. This fixed the issue in Device Manger. It also changed the name of the device in DInput mode and I've adjusted the devicemap.cfg accordingly, but still no luck. If I switch the Stick to XInput it works fine in MAME, but then it gets confused with the XBOX controllers, so I have to reboot as I go between them. I wanted to see if anyone else has had this come up and if there's anything that can be done about it.
  2. Figured it out. Joystick deadzone was set to 0. Bumped it to 0.15 and it works fine now. I appreciate everyone trying to help.
  3. If it seemed fine for you, then you're not having the problem. You can't miss it. Yes, my setup looks exactly like that. What version are you running? Found another guy with identical in game behavior with his controller, but his only does it with Retroarch and works fine in MAME itself. He's on .177.
  4. Generally speaking, I've got my XB1 controllers working fine in the games where I use them. However, in a couple of the dual-joystick games, Robotron 2084 and Karate Champ, the right analog stick doesn't work correctly. It has a constant input and as I rotate the stick, it only hits the diagonals, not the cardinal directions. I've tried two different controllers. This is on MAME .205. I've hit TAB in game and double checked the inputs. I'm not sure what else to try. Has anyone else run into this and solved it?
  5. So I've got a bunch of games set up the way I want, and went back to do some housekeeping. I noticed mame.ini and all game ini files were sitting in the MAME root, and so I moved them to the INI folder and set the directory path to the INI folder. After doing that I noticed that any changes I make within the games aren't saving. The INI folder is not read only. Writeconfig is set to 1 in both mame.ini and game ini files. What's really nuts is after attempting to make a change, the time stamp of the game ini changes to show that it was modified, it just doesn't actually make the modification. The only way I can change a game setting with the ini folders in the INI directory is to manually edit the game ini file. I put mame.ini back in the root directory and set the INI directory path to root and INI. Fired up a game and made a change. Good news... the change stuck. Bad news... it didn't make the change in the original game ini file in the INI directory. It made a new INI file in the root. Is anyone else having this problem? Or does everyone just leave all their ini files dumped in the root? This is .205. EDIT: I think I got it worked out. I doubled checked the directories and somehow INI was set to root only and not INI. I set it to INI only, left the mame.ini file in the root, and a game change I made stuck and the game ini was saved in the INI folder. I guess mame.ini is intended to stay in the root, and for some reason putting it in the INI folder keeps the game INI files from saving? EDIT 2: And now, without changing anything related to directories since my last post, I noticed that I have a mame.ini and ui.ini in the INI folder again, and those are the ones being updated. I've deleted the mame.ini and ui.ini files out of the root since they weren't the ones being updated anymore. So my configuration is back to where it was before EDIT #1, and yet now the game changes will save just fine. This is the most haunted software I've used in a very long time. I'm going to go to bed now, and have nightmares about what will be different when I wake up tomorrow.
  6. Thanks for the info, I appreciate it. Looks like this is the way to handle it then.
  7. Just got into MAME last month and have it running with LB/BB. I have several USB controllers hooked up to my MAME PC: Wireless KB w/ trackpad, trackball w/ scroll dial, 4-way fight stick, HOTAS flight stick, and pair of XB1 controllers on Win10 wireless adapter. I spent the time mapping controls for each game and locked down the cfg directory. Then I read that people were having trouble with devices swapping around as things are plugged/unplugged or after a reboot due to how Windows assigns USB IDs, so I decided to take it a step further and remap my controllers using a devicemap.cfg file that mame.ini calls under the ctrlr setting. That all seems to be working fine, but there's one thing I struggled to work through that's not making any sense to me. When I looked at the verbose log to get IDs, the keyboard and mice showed the same unique hardware IDs that appear in the Windows Device Manager. However, what I got for the XInput controllers is XInput Player 1, XInput Player 2, etc. This is not a unique ID, it's an arbitrary assignment. As I toyed with it this afternoon, it generally appeared to be a first come first serve basis, with XInputs being called out in numerical sequence. Although there was one instance where I had two of them plugged in and they were called XInput 1 and XInput 3. Exited out of MAME and went back in, now they're 1 and 2 again. I'm failing to understand how this is a solution to USB IDs being reassigned. I fixed the first come first serve problem by changing my fight stick from XInput to DInput so that I could get a unique name for it. If my XB1 controllers swap back and forth between 1 and 2 it doesn't matter that much, we can figure out which one is which once we start playing. But if it decides to randomly call the second one XInput 3 at launch, it will be a problem because it won't be mapped right. Am I missing something obvious here, or is there no good reason why MAME shouldn't be looking at the device manager hardware IDs for remapping XInput controllers the same as it does for everything else? Or better yet, why don't they skip the remap feature and just identify every controller with its unique device manager ID right off the bat?
  8. New user here, and new to MAME as of the last month. I've got it running (.205 w/ complete ROM set) and have Launchbox / Big Box running as well. Getting ready to work on controls and found this thread very helpful. My arrangement is Win10 with a wireless KB, pair of XBOX controllers w/ wireless adapter for 8-way games, Mayflash F300 Elite w/ gate rotated for 4-way games, and Kensington trackball. Few questions: (1) Prior to finding this thread, I was locking down the default.cfg so it wouldn't lose mappings if I started MAME without the joystick connected. I'm following what this thread is saying about using the ctrlr config file and calling it from MAME.ini and am interested in doing it that way. What I don't understand is why locking down default.cfg is the way to fix the issue with Win10 and USB IDs with the XBOX controller wireless adapter. Why couldn't you keep the default.cfg file unlocked, and make the ctrlr config file read-only instead? (2) Rather than calling the controller cfg file from the MAME command line, is there a way to call it from within a specific game cfg file? (3) Do the individual game cfg files behave like the default.cfg with respect to resetting your controller mappings if you start the game without the joystick/controller connected? In other words, once I get them the way I want, should those be read-only as well? Or maybe the entire cfg folder at that point? The arrangement I'd like, and maybe it's not possible, is to have three different config files: one for joystick + KB, one for trackball + KB, and one for the pair of XBOX controllers + KB. Then when I launch a game, it calls the appropriate ctrlr config. That way I could just paste the ctrlr.cfg call in each game cfg, rather than going through the process of doing button assignments on each game the first time I play. Is this feasible? Or should I just start working on mapping my controls from within each game and locking them down when done?
×
×
  • Create New...