In MAME, hit tab to open the menu to change the control inputs. Scroll down to the Track section. You will see Track X DEC and Track X INC. Delete whatever is in these by selecting them and hitting ESC. Do the same for Track Y. These are used to simulate a trackball if you don't have one, but they really get in the way if you do. If you have the correct controllers for different games (optical or analog) get rid of the DEC and INC for any type of control in the input menu.
Also make sure only the trackball (mouse) is selected under the "track X analog" and "track Y analog". In other words you should not see joystick under either of those.
Question about that..... the default value for "track X analog" is both Joystick and Mouse. What's the trick for getting it set to just the mouse? For example once I've gone to "track X analog" and hit the enter button, what do I hit next to get it to recognize the mouse? I tried rolling the trackball but it didn't register.
Then that's absolutely the problem with the drifting.
When remapping, make sure you only roll it along the X axis (side to side). Roll it hard and try various speeds if it's still not registering. It should pick it up.
You probably want to do this under "input (all games)" so you only have to do it once. If you have a trackball, you probably never want the joystick mucking up trackX/Y.
Ok I've tried everything and I can't get it to register my trackball or a mouse for "Track X Analog". I've tried rolling it slow, rolling it fast, and I've even manually edited the mame.ini file. Here's what I manually set it to, but the next time I launch a game, it resets right back to include the joystick This is Mame 0.89. Any ideas?
<port type="P1_TRACKBALL_X">
<defseq type="standard">MOUSECODE_1_ANALOG_X</defseq>
<defseq type="decrement">KEYCODE_LEFT OR JOYCODE_1_LEFT</defseq>
<defseq type="increment">KEYCODE_RIGHT OR JOYCODE_1_RIGHT</defseq>
<newseq type="decrement">NONE</newseq>
<newseq type="increment">NONE</newseq>
</port>