MUgen is an emulator generator which works in a way similar to yacc. It takes an input machine description and outputs a source file which is a fully implemented emulator of that system. This is the open-source system.