If you're on a UNIX-like system (including Linux and macOS), it could be as easy as typing Over time, MAME (originally stood for Multiple Arcade Machine Emulator) absorbed the sister-project MESS (Multi Emulator Super System), so MAME now documents a wide variety of (mostly vintage) computers, video game consoles and calculators, in addition to the arcade video games that were its initial focus. The fact that the software is usable serves primarily to validate the accuracy of the documentation (how else can you prove that you have recreated the hardware faithfully?). The source code to MAME serves as this documentation. This is achieved by documenting the hardware and how it functions. As electronic technology continues to rush forward, MAME prevents this important 'vintage' software from being lost and forgotten. MAME's purpose is to preserve decades of software history. MAME is a multi-purpose emulation framework.
Static analysis status for entire build (except for third-party parts of project): Continuous integration build status: OS/Compiler