Assuming your using a Ipac, or another encoder that supports a Shift function, then you can save some buttons, by making the player start buttons, extra buttons such as the mouse buttons for your trackball (if you are going to use the trackball as your mouse for administrative stuff), and you can also program mame so that you use some of the player 2 buttons for your spinner for example.
However while were on the topic of extra buttons, you may want to consider a Pause Game/Exit Game button , and a reset game button (somewhere where you wont accidently it it). Also, a save/load state button, if you want to be able to save your games and continue them later. Other administrative buttons you may want is one to open the mame options (tab) and also dont forget insert coin buttons for each of the players.
hope this helps