During this last decade, I've been very interested in MAME. MAME stands for Multiple Arcade Machine Emulator, and is exactly that: a program that allows you to play arcade games on your computer.
As a fanatic Linux user I decided to program my own MAME gui for the arcade machine I was building at the time. Using the SDL library, and my limited knowledge of C++ I think I'm starting to cramp out something that works pretty reasonable. I've used the MAME Game Not Over skin as a base, and worked my way from there. Unfortunately, my arcade monitor broke down, so the progress on the project stalled. I picked it up again in 2013 in preparation for a new arcade system I intend to build.
Current features are: