Build Your Own Arcade Controls Forum

Main => Main Forum => Topic started by: mccoy178 on February 05, 2010, 11:52:40 pm

Title: Trackball comes up as a different mouse in mame after restarts. Solution?
Post by: mccoy178 on February 05, 2010, 11:52:40 pm
With two spinners and a trackball, my computer keeps reassigning what number they are whenever the computer is restarted.  Any ideas how I can fix this?  I didn't know what terms to use when searching.
Title: Re: Trackball comes up as a different mouse in mame after restarts. Solution?
Post by: u_rebelscum on February 08, 2010, 02:53:01 pm
You're having the race condition problem of multiple USB devices connected with same ID.  All say "Hi computer, I'm mouse XYZ" at computer startup, and the computer takes whichever mouse it hears first and gives it the first mouse number, the secound it hears with the next, etc.  The best fix is to have the devices identify as different devices which can be a few ways.  The next is to delay some of the devices so the computer sees the others first.  The last is to set mame so it matters less on how the devices are numbered.

What are your spinners and TB?  How are they connected to the PC?

1a. Buy different encoders for the different devices. 
1b.Or get encoders that are numbered differently; example: the optiwiz can be numbered 1 through 4 (http://groovygamegear.com/webstore/index.php?main_page=product_info&cPath=76_85&products_id=260).  Either of these ways will fix the problem, but costs $$.

2. Delaying doesn't always mork, but can be easy to test if you already have a USB hub or two.  It's harder with three devices, though.  Plug one device directly into the PC, the other into a hub, the third into a hub plugged into the other hub.  Before devices on hubs register, the hub has too first, so (hopefully) the devices on the hub will be delayed, and have higher numbers than devices plugged directly into the PC.  Again, this usually helps, but can mis-number every once in a while. Worse, it sometimes doesn't delay long enough to be consistant at all.

3. Set up mame differently, but only works if you don't mind the TB working in spinner games and vice versa.  Also, your spinners will need to be on different axes if you want to use them for different players at the same time.  Disable the multiplemouse option, and map the player 2 dial to the spinner you changed to the Y axis for all games.  All mouse devices will control the same X & Y axes all the time, though; if you ever want the TB and spinners to control different things at the same, this option will not work.