As I started to get curious how this worked exactly I did some research:
MAME uses mapping of all joysticks based on an internal table of directions per game. It distinguishes between 4, 8 and 4 diagonal way. You can get the full list of games including the directions by running the following command line:
mame -listxml > games.xmlYou can also create your own mappings per game. The format is quite complex but there is a very handy tool to create / edit these mappings:
Mame Joystick Map Editor v1.4
The mapping per game should be copied to the MAME cfg folder as gamename.ini.
I removed the harness of my U360 so it is used analog again. I loaded my custom Qbert mapping and fired up QBert in MAME. The result was QBert was totally unmovable due to the conflicts in the U360 and MAME mappings.
Then I copied the 8-way mapping included in the Mame Joystick Map Editor to default.ini in the cfg folder of MAME and changed the default joystick mapping option in MAME.ini to
joystick_map defaultThe 8-way mapping is more or less a pass-through filter as it just passes the joystick directions created by the U360 loaded mapping. This way the pure U360 mappings are used without MAME changing them.
Firing up QBert again and it was perfectly controllable. Exactly as it was when running the U360 via my IPAC2.
The advantage of connecting the U360 via USB only is you can still use the analog mode of the U360 by loading the analog mapping table.