If you do decide to use real arcade controls, you'll face another choice: how do you connect these devices to your computer? There are a few different methods you could try, but perhaps the most popular and versatile method is to use a keyboard encoder (also known as a key encoder). By default, MAME maps each arcade control to a specific key on the keyboard. Keyboards contain a circuit board. Wires connect each key to a specific connector on the circuit board. When you press a key, it completes a circuit and sends a signal to the circuit board. The computer interprets the action as a keystroke. Each key is really a switch.
That's the secret: you can replace these switches with other switches. Most arcade controls are actually just switches. Arcade joysticks are switches that move two, four or eight directions. A button is a simple on/off switch. There are two main kinds of switches for arcade controllers: leaf spring switches and microswitches. Many arcade enthusiasts say that the leaf spring design provides a better feel when playing a game. Microswitches tend to have a clicky, stiffer feel. But leaf spring switches are hard to find and require maintenance more often than microswitches. If you decide to go with leaf springs, be prepared to search around for parts.
If you map each direction of the joystick to a different key on the circuit board, you can program MAME to accept the input . Some key encoder boards can accept input from trackballs and spinners, and some MAME arcade machine enthusiasts have built special encoders that they offer for sale.
There are other ways to wire controls to a computer, too. You might be able to pull out the circuit board from a computer gamepad, wire your controls to the circuit board and map everything out to the computer. But most MAME enthusiasts prefer key encoders because they can handle more inputs.
Not all key encoders are created equal so it's wise to do some research before purchasing one. Watch out for effects like ghosting. Ghosting is when a key encoder sends a signal for a specific keystroke even if you didn't push that particular key. It usually happens when the key encoder receives several signals in a very short burst. This can be annoying when you're typing on a computer. But when you're playing an arcade game, it could cause you to make an unintentional suicidal jump or accidentally shoot that princess you've been trying to save for 18 levels.