... all computers input systems.... Mame has to use it, and gets all the limits of it. ...
So why should a dev program for an input device he does not have, which wouldn't work without special drivers, when a 20 line hack will do the nearly the same thing on what they have to test with?
... with all the specialized hardware interfaces (optical, analog, and digital) from folks like Ultimarc and Groovy Game Gear couldnt Mame more closely emulate the hardware now? I know Mame can't directly "talk" to your spinner because of all the layers of OS but couldnt Mame read raw data from some of these speciallized devices by way of USB? I guess as it is now optical interfaces show up as a mouse to the OS but that's just for simplicity sake right? I wish there was a way to eliminate the sensitivity settings and other "conversions" in Mame and just have the Mame driver read "pulses" from the actually hardware.. be it an arkanoid spinner, 720 stick, pole position wheel.. etc...
As I said, each device would need a special driver. And even if it had a special driver, the driver would be doing the simulating the so-called "pulses". ("Pulse" is the wrong term, but close enough for now.) Well, unless the device had special firmware that didn't send standard USB mouse info, but "pulses". And even then the original "pulses" would be simulated over the digital USB limits (speed, latency) & through USB driver & USB chip & PC mainboard & OS, vs the direct wiring of the arcade device to the PCB. After all that, mame would need another
major overhaul on the inputs code to handle the simulated signals, including emulating chips and discreet circuitry it doesn't emulate yet (aka possible slowdown, especially for boardline systems).
Mame is just too far from the input devices for a true emulation of the original hardware. And why add the extra work of writing a driver and new firmware and emulation code, the first two to stop the mouse firmware from doing what the emu code does? (IOW, "why re-invent the wheel?")
Can mame come as close as the original hardware with all the limits of modern OSs? Most games*, yes with simple hacks and proper hardware. Can mame do it without breaking current support of 99% of the user's hardware? Only with ugly hacks that go against mame's policies.
Not to sound against what you want. I tried adding better support of original hardware in my builds, but the number of different inputs and the different ways they could be done were too much for me to keep at it.

I
still want to do it, but need to find a manageable way so I don't burn out again.
*The one original input that would need MAJOR coding (and USB 2 probably isn't precise enough latency-wise anyway), AFAIK, is arcade lightguns.