Multicarts

NeoGeo multicarts are bootleg compilation cartridges, mostly (all ?) of the arcade type, often containing dozens of games which can be chosen from a video menu.

Many of these contain multiple versions or hacks of a given game, as it can be seen on the usually provided list.

See http://wiki.arcadeotaku.com/w/MVS_Multicart

Brute force method
The first multicarts worked with a complex add-on board which had to be connected to the system's JAMMA connector and the cartridge itself via a ribbon cable.

The board had mechanical relays (on the +5V and +12V lines) to control power to the MVS board, and a large LPC2214 microcontroller to generate the menu display itself.

When a selection is made, the game code is presented to the cartridge as a binary word by the ribbon cable, the MCU stops generating video and the MVS board is powered up.

Changing games requires the user to press a combination of buttons, making the add-on board cut the power and display the menu again.

Software method
A few years later, menus running on the MVS board itself were made and embedded in the cartridge's memory, making everything simpler and cheaper.

The game bank is set in software through custom registers mapped in the second cartridge zone, which are implemented in large CPLDs.