I was told that when you spin a trackball or spinner there is a voltage output of +5V to -5V(or +3V to -3V) depending on speed and direction(up/down/left/right), and the game PCB interprets the voltage to determine your direction and speed.
This was a surprise to me, because I thought that the process was digital from the encoder wheel onward.
It is "digital". It either sends full voltage or zero voltage (two of these per axis). The speed of the changes happen shows the speed of the spin, and the order the two signals per axis changes shows the direction. Some can argue the signals are analog, especially on the older hardware, since the phototransistors weren't instant on/off, but they were read as if digital. For more info, google "quadrature mouse". AFAICT, about 95% of the arcade trackballs & spinners were/are quadrature. The rest (mostly spinners) sent "speed and direction" signals, which just means the raw quadrature signal from the encoder sensors is translated on the sensor board.
Anyway, unlike in the actual arcade games, the MAME developers failed to put a magnitude ceiling on the max. voltage, so as a result, if the input voltage from your controller goes above what the game code can interpret you get jerky movements or a reversal of direction.
What you're talking about is "backspin", and there are many casues of it. But not "voltage" as you were told.
Possible causes:
too fast for sensors
sensors or encoder wheel too dirty
the digital signal not "square" enough to allow for up then down
buffer overflow in computer hardware
buffer overflow in OS mouse driverbuffer overflow in OS
buffer overflow in directX / rawinput
buffer overflow in mame core
buffer overflow in game due to higher change in what mame sends the game than what the game expects.That last one is usually thought to be the only cause, and the reason why it's too high could be many reasons, too. However, all the
italicized reasons are likely casues too.
I'm just guessing why you were mistakenly told about voltages, but... mame core stores trackball in the same variable structure location as analog joystick values
but treats the two differently. The analog joysticks are analog voltages (or resistances, same thing). So maybe mistaken read of mame's source?
Another possiblity is warlords: it originally came with standard encoder spinners (mouse like), but later came with 360 POTs. Someone could have (mistakenly) thought that since they could switch, then they are the same.