Wednesday, October 30, 2013

Should emulators be commercial?

There is some recent controversy in the MAME world about changing the MAME license to be commercial friendly (that's a gross simplification).

I've felt for a few years now that the only reasonable path forward for me with DAPHNE is to make it "more" commercial (not completely commercial).  Here is why:

People regularly (to this day) come to me and ask:
- Will you make an Android port of Daphne?
- Will you make a Raspberry Pi port of Daphne?
- Will you modify Daphne somehow to meet [insert need here] ?

Also, last time I went to CAX, there was at least one Daphne cabinet on the show room floor.  I expect to see more Daphne cabinets on the show floor at future CAX events as more original hardware continues to fail.  Who knows how many MAME cabinets were at CAX this year masquerading as original hardware?

The point is that demand for emulation of legacy hardware is only going to increase in the future, not decrease, because original hardware will continue to fail.

How is this demand going to be satisfied?

The current tradition is that a handful of really smart experienced people donate their expertise to writing the emulator, thus meeting only their specific needs.  The emulator is released open source with the expectation that no one is going to profit from the developer's work.  The emulator probably won't be very user friendly or meet everyone's needs because it was only designed to meet the developer's needs.

When users start to complain that the emulator doesn't meet their needs, the emulation author (rightly) is offended because he/she used his unique talents and skills to deliver something that is incredible and he/she gave it away for free, so how dare the user community be ungrateful at this gift?  The user community then shuts up and lives with a sub-optimal experience (and yes, I'd put Daphne in this category).

Is this how we're going to keep going into the future?

To me, the solution to this non-ideal solution is for emulators to become more commercial.

In my case, I don't care about an Android port.  But it _would_ be an interesting project _if_ a lot of people (who were willing to pay) were very interested in it.  Because then I would be working for appreciation (proven in the form of money) which is a good motivator for me.  As it stands, with Daphne v1.0 I wasn't working for appreciation at all, I was working on something that I personally wanted.  In other words, if I am going to be working on something I don't necessarily want, I need more than just the occasional "thank you".

Re: the Raspberry Pi port, I actually would love to release a Raspberry Pi port.  But the way people approach me about it rubs me the wrong way.  They kind of expect that I will do a bunch of work for them to deliver this port and then give it away for free.  Is this a sustainable arrangement between developer and consumer? Not for me.  That's why you don't be seeing a public Raspberry Pi port any time soon (news flash, I have a private port already finished but if I can't find a better way to release it to the public than the status quo, I won't be releasing it at all).

Re: modifying Daphne to meet some need that some user or group has.  See my point about the Android port.


The ideal scenario for Daphne for me going forward:
- I continue to keep anything related to emulation open source and free (ie BSD or LGPL styled) so that these games remain preserved, so that others can benefit freely from my research in this area, and so that the emulation developers can collaborate and optimize our shared code into one massive standard of high-performing, well-engineered code.  There is no reason for us to all be re-inventing the wheel.
- Anything related to an improved user experience that isn't emulation related and has nothing to do with preserving arcade games becomes commercial (and possibly closed source).  This would include DaphneLoader which automatically downloads laserdisc video and arcade ROMs thus vastly improving the user experience (this is already closed source).

Phrased differently would be:
- All preservation-related code (CPU's, sound cores, etc) would be LGPL'd, living in a DLL.  The idea is that having all emulation authors collaborating in one code base to make the emulation code ideal is worth the cost of people profiting off of it.
- The rest of the emulator could be any variant of commercial or open source to match the goals of the author.

This would enable users to have higher quality emulators that are specific targeted at meeting _their_ needs instead of meeting the emulation authors' needs.


I know some emulation developers are going to be offended when they read this.  And all I can say is we're going to have to agree to disagree.

I am hoping that there will be some developers out there that see my vision and realize that we need to find a way to keep writing free emulation code and sharing it between us while still being able to sustain a long-term pace that produces results desirable by the community.


  1. I think you have covered the bases well. I am a MAME cabinet owner and LOVE the retro games and as you stated, failing hardware will ultimately makes these original games extinct.

    I believe the author is who should steer the direction of their project, not to the whims of others. If those like you and other in MAME did not give unselfishly of your time and energy so folks like myself could enjoy, then who would; a corporate weasel.

    I think it is sad when the focus has been lost on why folks like you and others who have created our childhood memories, have sunk to defending your actions of good, not for profit, efforts.

    If someone wants to help, assist and enhance, then great! When they want to tear down and destroy - sad :-(.

    I appreciate your efforts in Daphne, the MAME Dev Team, and all those before you who have allowed me to relieve me Atari 2600, Atari 800, Apple IIc, C64 and others..... I APPRECIATE YOU!


  2. I agree with all you say except these games have patents and are owned by respective companies. The patents last 100 years. It is their responsibility to keep the legacy alive, not yours...

    1. Yes Pooey, but most of these companies could not give two fat rat's clackers if these games were to vanish forever. Emulation allows those of us who truly love these games a unique opportunity to not only preserve them, but also to enjoy them in their *original* state as opposed to code ported from the originals or crappy re-written imitations. If, as you say, it is the companies' responsibility, then these games would have probably already vanished. If they took this responsibility seriously, then there would be no need for fans and enthusiasts to spend the countless hours required to create softwares like these.

      I for one don't mind Matt receiving some sort of remuneration for the work he has put in on Daphne - it is an outstanding achievement and he deserves all the praise and plaudits that come his way. The only thing I would be worried about is corporate exploitation - they don't tend to have a good track record of keeping the original intentions of the authors intact once the smell of potential cash invades their nostrils.

    2. With all due respect, Pooey Fingerz, the copyright holders are motivated by profit most of the time which means that they have absolutely no motivation to "keep the legacy alive" once the product has stopped making them money.

    3. Herschel, your wording made me laugh out loud: "The only thing I would be worried about is corporate exploitation - they don't tend to have a good track record of keeping the original intentions of the authors intact once the smell of potential cash invades their nostrils."

      Yes, this is a concern of mine and I really don't know what I am ultimately going to do. I've got plenty of time to think about that though (see today's blog post for more on that).