VOGONS

Common searches


First post, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

http://mamedev.org/?p=422

After 19 years, MAME is now available under an OSI-compliant and FSF-approved license! Many thanks to all of the contributors wh […]
Show full quote

After 19 years, MAME is now available under an OSI-compliant and FSF-approved license! Many thanks to all of the contributors who helped this to go as smoothly as possible!

We have spent the last 10 months trying to contact all people that contributed to MAME as developers and external contributors and get information about desired license. We had limited choice to 3 that people already had dual-license MAME code with.

As a result, a great majority of files (over 90% including core files) are available under the 3-Clause BSD License but project as a whole is distributed under the terms of the GNU General Public License, version 2 or later (GPL-2.0+), since it contains code made available under multiple GPL-compatible licenses.

If you have contributed to the MAME source code and believe we have not contacted you, please reach out to us at our contact page.

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 2 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

Guys, ya don't wanna know what a slog this was. We MAY do a write-up at some point but if you want some idea of what this was like, read the following (which was from GPL to LGPL):
http://www.jbkempf.com/blog/post/2012/How-to- … -source-project
http://www.jbkempf.com/blog/post/2012/How-to- … -project-part-2
http://www.jbkempf.com/blog/post/2012/How-to- … -project-part-3
http://www.jbkempf.com/blog/post/2012/I-did-it

Also, just for clarification, "the MAME project is provided under the GNU General Public License version 2 or later as of Git revision 35ccf865aa366845b574e1fdbc71c4866b3d6a0f and the upcoming release of MAME 0.172. Source files may also be licensed as specified in the file header. The license change does not apply to prior versions of MAME."

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 3 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

Also for you old nerds with ancient installs, keep in mind that MAME absorbed MESS last year and therefore emulates all matter of old computers these days - so yes, it's VOGONS relevant 😁

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 5 of 23, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

Mame license, I think 😉

Seriously, do a writeup. I'd be very interested how you dealt with all the contributers, whether you got replies from everyone or whether you set a deadline after trying everything to get a hold of them, etc 😉

So GPL2 means, no way to put it on the Apple App Store in theory...

Edit: congrats on this big feat!

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 6 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
realnc wrote:

Uh, what was the previous license?

"The MAME License" was previously a custom license based on the BSD-3-Clause license with additional terms prohibiting commercial use, distribution alongside unauthorised ROM images, and certain kinds of derivative builds. This caused it to fall afoul of OSI and FSF rules, since these terms are limitations which make it "not Free". These limitations also tended to hurt potential legitimate users (e.g. rights holders wanting to re-release classics) while doing nothing to stop software pirates and arcade game bootleggers.

This change also makes it easier for other F/L/OSS projects to leverage MAME code, and may help get MAME accepted by F/L/OSS software distribution services (such as main package repositories for major Linux distributions). MAME can also now more easily bring in changes and updates from other F/L/OSS projects themselves.

Note that MAME is a registered trademark, and there are still restrictions on use of the MAME name, logo and wordmark.

---

A few historical notes:
- MAME had no overall license from 0.01 (February 5 1997) to 0.21 (up through May 24, 1997), though individual pieces of code had their own licenses from their respective authors (which may have conflicted with each other)

- From MAME 0.22 (May 25, 1997) to MAME 0.26 (through August 9th 1997), MAME was under GPL 2.0, and GPL 2.0+ as of MAME 0.26. This relicense is debatable whether it was "properly done" (though it was certainly somewhat relicensed in a fashion standard for the time). At MAME 0.26 the team attempted to add additional non-commercial usage restrictions through some additional notes in the readme document.

- As of MAME 0.27 (August 10, 1997), MAME began under its own custom "MAME license", which we'll call "MAME License 1.0" (I don't think it was ever called that tho). All sorts of strings were attached as to usage and requirements, mainly things the developers thought would cover themselves (to paraphrase: "no commercial use", "no unauthorized redistributions", etc.). This document saw some adjustments from MAME 0.27 to MAME 0.94 (through May 2nd 2005). This license was NOT BSD-based.

- MAME custom license was rewritten to the custom BSD-based "MAME License", let's call it "MAME License 2.0", since May 3rd, 2005 aka MAME 0.95. This significantly stripped limitations from the license and brought it closer to being "true open source", but still had some restrictions, specifically against commercial use. A lot of the customization of the previous "MAME License 1.0" was either deleted or moved to a more "developers wishes" document. Again, whether this too was done with all past contributor/developer sign-on is debatable.

- so as of MAME Git revision 35ccf865aa366845b574e1fdbc71c4866b3d6a0f and the upcoming release of MAME 0.172, it's all under GPL 2.0 and higher, or individual files under their own licenses indicated in their headers, and the old license is completely gone.

- A few external projects that we have no control of remain under the "MAME License" and we hope they follow suit and take the initiative to contact all their own contributors to relicense in kind, ex. PinMAME (which is somewhat inactive these days anyways)

- During all this period, some developers dual-licensed their code: under the MAME license for distribution with MAME, under GPL or LGPL outside of MAME, and would either have this special permission in their code or if asked.

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 7 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
Dominus wrote:

So GPL2 means, no way to put it on the Apple App Store in theory...

From what I understand, Apple App Store is not permitted - though Apple is not so strict in enforcing it - key trigger for them is if enough people complain about illegal usage of GPL code in a closed-source app.

And if the app comes from the dev team itself rather than some external contributor and ignores (the remote chance of) communication from Apple regarding a potential license violation, even less of an issue.

Regardless, it doesn't matter since Apple largely bans emulators overall due to their weird rules about interpreted code and loading files from the external filesystem.

Edited for clarification: this is almost all second-hand, I'm not an IOS guy.

Dominus wrote:

Edit: congrats on this big feat!

Thanks! It was mainly pushed forward by our project coordinator Miodrag Milanovic (Micko), but it couldn't have been done without fellow "relicensing team" members Lord_Nightmare, Tafoid, VasCrabb and of course yours truly. We thank all the old devs and contributors for their assistance and support!

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 8 of 23, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Stiletto wrote:
Dominus wrote:

So GPL2 means, no way to put it on the Apple App Store in theory...

From what I understand, Apple App Store is not permitted - though Apple is not so strict in enforcing it - key trigger for them is if enough people complain about illegal usage of GPL code in a closed-source app.

As long as all sources and build scripts are made available to users under terms of GPLv2 (via http, email, pigeon messenger, or whatever), terms are satisfied. Is there some aspect of iTunes store that procludes this?

All hail the Great Capacitor Brand Finder

Reply 9 of 23, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

gdjacobs, the problem is that the so called "copy left" is not honored by the App Store. Which means that the GPL makes sure that anybody who received a GPL program (bought or offered as free download) is allowed to pass a copy of this program on to anybody else.
Apps from the AppStore cannot be passed on, they are tied to your AppleID and cannot run on anybody others device (not easily at least, you could authorize the others device but then you didn't really pass a copy on).

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 10 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

But hey, no problems on Android-based devices! 😀

Also IOS9 and sideloading from what I understand. 😀

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 11 of 23, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++

The technical restrictions imposed by the App store are similar to those found on dozens (hundreds?) of embedded Linux devices with locked boot loaders. These run the GPLv2 Linux kernel without issue. Source is available, and redistribution in such cases is not disallowed, but is quite unhelpful without the signing keys or an unlock. This is a loophole which was closed with GPLv3.

Does Apple mandate additional license restrictions which are incompatible with the GPLv2?

All hail the Great Capacitor Brand Finder

Reply 12 of 23, by Dominus

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

https://www.fsf.org/blogs/licensing/more-abou … gpl-enforcement

Edit, I think if we want to further discuss AppStore vs GPL, we should do that elsewhere 😀

Last edited by Dominus on 2016-03-05, 00:25. Edited 1 time in total.

Windows 3.1x guide for DOSBox
60 seconds guide to DOSBox
DOSBox SVN snapshot for macOS (10.4-11.x ppc/intel 32/64bit) notarized for gatekeeper

Reply 14 of 23, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Dominus wrote:

https://www.fsf.org/blogs/licensing/more-abou … gpl-enforcement

Edit, I think if we want to further discuss AppStore vs GPL, we should do that elsewhere 😀

That answers my question, and it makes perfect sense. The additional legal restrictions imposed on App store hosted software are definitely incompatible. Dual licensing is perhaps an option if all rights holders will agree with the changes.

All hail the Great Capacitor Brand Finder

Reply 15 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
gdjacobs wrote:
Dominus wrote:

https://www.fsf.org/blogs/licensing/more-abou … gpl-enforcement

Edit, I think if we want to further discuss AppStore vs GPL, we should do that elsewhere 😀

That answers my question, and it makes perfect sense. The additional legal restrictions imposed on App store hosted software are definitely incompatible. Dual licensing is perhaps an option if all rights holders will agree with the changes.

Aaaaand we just tracked down all rights holders we know of, only took a year, so future license changes if any will go easier (I hope). But probably not anything more for a while.

But AppStore is not in the cards just now, we're conquering one goliath problem at a time. If you want to see what our current project coordinator has in store, check out the roadmap: https://github.com/mamedev/roadmap/
(Licensing and Github can be checked off now, and we've been working on GUI/Video/OSD)

(and Dominus is right: please no more talk about IOS in this thread, thanks)

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 16 of 23, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Stiletto wrote:
Aaaaand we just tracked down all rights holders we know of, only took a year, so future license changes if any will go easier (I […]
Show full quote

Aaaaand we just tracked down all rights holders we know of, only took a year, so future license changes if any will go easier (I hope). But probably not anything more for a while.

But AppStore is not in the cards just now, we're conquering one goliath problem at a time. If you want to see what our current project coordinator has in store, check out the roadmap: https://github.com/mamedev/roadmap/
(Licensing and Github can be checked off now, and we've been working on GUI/Video/OSD)

(and Dominus is right: please no more talk about IOS in this thread, thanks)

I was mostly interested in the licensing change and it's implications. I hope that was all right.

Anyway, my question was answered, so I'm good now.

All hail the Great Capacitor Brand Finder

Reply 17 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

Yup, people have been talking about ramifications today:
https://news.ycombinator.com/item?id=11226131
http://games.slashdot.org/story/16/03/04/1334 … pproved-license
http://www.gamasutra.com/view/news/267316/10_ … open_source.php
https://www.reddit.com/r/emulation/comments/4 … ible_bsd_in_90/
https://www.reddit.com/r/MAME/comments/48yh24 … ource_software/

It's hard to say what the lasting effects will be.

If you want to hear more from our current project coordinator talk about WHY, please check out this YouTube:
https://www.youtube.com/watch?v=YHyaEm404Gw

Anyhow, been in the community long enough to know: surfs up, gotta go with the flow and see where the ride takes us! 😀

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 19 of 23, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
leileilol wrote:

I think it's great, makes that unique CRT post-process stuff legally usable in many GPL emulators 😀

There's more in store for that, we're using a new multi-platform renderer that unifies OpenGL/Direct3D9-12(WIP)/(the new) Metal/etc. under one interface.
https://github.com/bkaradzic/bgfx

It's gonna be something else! CRT post-process shader processing on all supported BGFX platforms? (within reason). Also our pathway for bringing "accurate" 3D acceleration in MAME (which I only have the vaguest of understandings about so far)

The closest it collides with your stuff is https://github.com/jpcy/ioq3-renderer-bgfx but I know you prefer to roll your own renderer stuffz so this may not interest you 😀

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto