OK, I've read all the posts and know that USB gamepads can register in a random fashion and the only way to guarantee a certain order is to plug them in one by one and wait to register but I'm still left with some odd behavior that I can't figure out.
(1) Regardless of the order I plug in my two ultrastiks and logitech steering wheel, and location within the USB hub, the wheel is always recognized as wheel 1 and my ultrasticks always come up in MAME as joystick 2 and joystick 3 (and in the correct order for Player 1 and Player 2). If I close MAME, disconnect the wheel, and restart MAME, the joysticks are now assigned as joystick 1 and joystick 2.
(2) With the wheel plugged in, even though, MAME assigns the ultrastiks to joystick 2 and joystick 3, MaLa assigns them to joystick 1 and joystick 2. For MaLa, the order at startup is important as the wheel will sometimes come up as joystick 1.
(3) It seems like unplugging and replugging everything doesn't alter the order in which controls get recognized. It seems like instead I have to go the device manager, delete all the human interface control information and then replug in order to change the order.
Does anyone understand why or how MAME and MaLa interpret and address usb controls and can explain this behavior? Is there a reference somewhere that I could read to better understand this?