alesrosso I suggest you to buy the box, arcade stick and buttons, and an adapter.. it costs about
10 euro and you can connect the stick and 12 buttons via USB. It is recognized by batocera without problem (I have one,too)
You can find on eBay, too.
You can insert all in the box, no need USB out, just insert this board and the raspberry in the same box, connect by USB and leave only hdmi and power supply out.. I know that is USB and not GPIO, but for your project it is the best choice in my opinion. I suggest you to leave also sd card out by an adapter, if you want. Hi!
There is also the possibility to manually Map the GPIO pins for more buttons, but in this case I can't help you!