MAME is going completely open-source to be a 'learning tool for developers'
That is a misleading headline.  MAME always was open source, but it was distributed under its own custom license, which forbade distributing it with ROM images.  For example, if Nintendo wanted to distribute its Arcade/GB/GBC/GBA/NES/SNES rom images wrapped with MAME, the current license forbids that.<p>The reason for that restriction is that the MAME devs were concerned about getting sued by the copyright holders.<p>That's like saying "Nethack isn't open source", because it has its own custom license rather than one of the more traditional licenses.  A lot of older projects have their own custom license, because they started before there were a couple of standardized popular licenses.<p>They plan to switch to a more traditional license.  I think they picked the GPL.<p>Their plan is to get permission from all the authors, and rewrite the code of people who don't give permission.<p>Some of the core contributors are POed and refuse to give consent, and they left the project.<p>I'm not sure how rewriting works, since the hard part really was figuring out how to emulate the rom correctly.  If you change the variable names, refactor it, but keep the same core logic, does that count as "different"?