Skip to content
RetrogamingNews Published Updated 4 min readViews unavailable

MAME Completes Its Move to GPL-Compatible Open-Source Licensing

Why MAME's 2016 relicensing mattered for reuse, preservation tooling, and the distinction between emulator source and copyrighted game data.

On March 4, 2016, MAME announced that the project had completed its move to licenses approved by the Open Source Initiative and Free Software Foundation. MAME 0.172, released on March 30, was the first regular release distributed as a whole under GPL-2.0-or-later, with the great majority of files—including core code—available under the 3-clause BSD license.

Why the older license was not open source

MAME had long published source code, but source availability is not the same as open-source licensing. Its historical custom license restricted commercial use and imposed project-specific conditions. Those restrictions conflicted with the Open Source Definition’s requirement not to discriminate against fields of endeavor and complicated inclusion in free-software distributions.

The old policy reflected legitimate concerns about exploitative arcade cabinets, misrepresentation, and ROM piracy. A license, however, is a copyright permission for MAME’s code; it is a poor substitute for trademark policy, accurate attribution, and enforcement against unauthorized game distribution. Moving to standard licenses separated those concerns more cleanly.

MAME was nearly two decades old and contained work from many developers. The project could not simply replace every copyright notice by editorial decision. Maintainers spent roughly ten months contacting past and current contributors and recording which approved license they selected for their code.

The May 2015 MAME 0.162 announcement said more than 96 percent of source had already been covered by an open-source license while outreach continued. By the March 2016 announcement, over 90 percent—including core files—was under the permissive 3-clause BSD license, while remaining components used compatible licenses that allowed the combined program to be distributed under GPL-2.0-or-later.

File-level provenance remains important. “MAME is GPL” describes the obligations for the combined work; it does not mean every source file has the same inbound license or that BSD-licensed portions lose their separate terms. Redistributors must retain notices and follow the licenses applying to the material they use.

GPL for the project, BSD for much of the code

GPL-2.0-or-later permits use, study, modification, and redistribution while requiring corresponding source and license compliance when distributing covered binaries or derivative works. The 3-clause BSD license permits broad reuse with copyright, license, and non-endorsement conditions and can be combined into GPL-covered distributions.

This structure lets another project reuse eligible BSD-licensed device code without importing every MAME component, while a full MAME build carries the project’s GPL obligations. Developers must inspect current file headers and repository licensing information rather than assume a 2016 percentage applies unchanged to every future file.

What changed for distributions and research

The change made integration, packaging, and reuse compatible with established open-source ecosystems while preserving attribution and license obligations. It also made a conceptual boundary clearer: open emulator source does not grant rights to proprietary ROMs, disk images, artwork, or firmware required by particular machines.

Standard licensing made it easier for GNU/Linux and other software distributions to evaluate and package MAME, for preservation tools to reuse machine-device implementations, and for researchers to build and publish modifications under familiar rules. Public source history also supports reproducible study of how hardware models change.

Open licensing does not certify accuracy, security, or support. Downstream projects still need tests, provenance, update plans, and clear disclosure of modifications. A fork may lawfully change behavior while being a poor historical reference.

ROMs, artwork, and trademarks remain separate

MAME’s executable does not include original commercial game code. ROM, disk, tape, hard-drive, firmware, key, artwork, sample, and manual files can have their own copyright and distribution status. The GPL or BSD license on emulator source grants no rights to those third-party artifacts.

The MAME name and logo are also governed by trademark rules. Open source allows forking code; it does not automatically authorize branding a modified product in a way that implies official origin or endorsement. MAMEdev’s current project information explicitly separates license, software-image, derivative-work, and trademark expectations.

Why the 2016 milestone matters

Relicensing a decades-old multi-contributor codebase required permission and provenance work, not simply editing a header. The result strengthened MAME as executable hardware documentation and as a foundation for preservation research.

It also provides a governance lesson for long-running preservation projects: obtain contributor agreements or precise inbound licenses from the beginning, preserve authorship records, avoid custom terms when standard licenses meet the need, and keep copyrighted third-party data outside the source distribution. Cleaning up decades later is possible, but expensive and incomplete provenance can permanently limit reuse.

The event did not “legalize MAME”; MAME had existed for years. It converted a source-available project with field-of-use restrictions into free and open-source software under established licenses, expanding the lawful ways its own code could be studied, packaged, and reused. Related: BIOS Files, Copyright, and the Law: The Real Rules Behind Emulation · How CPU Emulation Works: Interpretation vs. Dynamic Recompilation

Sources: MAME open-source announcement, MAME 0.172 release record, MAME project and licensing information, MAME repository license