Mame isnt going to get much further without money. Not merely for buying up the remaining PCBs... but to actually pay people to develop things that nobody would care to spend time on otherwise.
Id mentioned it before... and it got shot down. Then later, the Devs said it would be a good idea. Yet, there has been no action to date.
and I've told you before, aside from the type of core changes you're asking for paying people won't help.
you could gather up the worlds best c / c++ programmers, and pay to work on MAME, but all you're likely to see are architecture changes, and reworking of the existing code. You could get them to rewrite the emulator from the ground up but without actually improving the emulation or documentation of anything.
The reverse engineering and discovery of new things (which is where the real value of MAME lies, and is 90% of the work) is a completely different skillset, and is a complete unknown, and not something you can just pay people to work on. They wouldn't know where to start. It takes self-motivation, and *enjoyment* of the challenge of reverse engineering the stuff as well as making reasonable assumptions to understand how how hardware would probably work in order to make progress.
As I've explained in a reply on my blog, there is a huge gulf between people writing code for MAME with commercial intent, and the type of devs needed to actually advance the project. For a project with set goals 'we need a module that does X/Y to these exact specs' then paid / hired hands work. For a project like MAME you're dealing more with real world cases, having to handle things where even if you have documentation (CPUs, Sound chips etc.) there are huge holes in the documentation, and the only way to understand them is by extensively studying the behavior of the games and making educated guesses.
The actual code for the drivers is trivial, and takes up 5% of the time. The actual understanding of everything in order to write that code is the main challenge. That's why within 5 minutes of MAME emulating something it's very easy for somebody to port the drivers to FinalBurnAlpha in under a day, even if it's taken 10+ years to figure out how to emulate the game in the process.
Having worked with people in the industry most of them see the work done in MAME as some kind of black magic. They wouldn't know where to start with the whole reverse engineering thing, and are just glad that somebody has figured all of this out for them.
Take the example of the guy who helped port SpyHunter (
http://www.ppl-pilot.com/mame.aspx )
A lot of people will probably just complain that it's a poor effort (I think he did an admirable job when you consider the constraints put on him by the publisher, and target platform), but what I want to focus on is the techniques. He basically brute-forced the maps and graphics out of the game via MAME. In reality, MAME, with it's integrated debugger and open code could easily have been used to figure out, from the original game code, how the maps were drawn and where the data was stored in rom. Start by logging writes to video ram, used for the tiles, then trace it back. You could even trace how the tile data was sourced.
He took the 'programmer' approach, which in the end paid off for his project. The 'reverse engineering' technique would be closer to what Mamedev have to do when studying protection schemes and such, or tracking down obscure bugs in drivers. It's a different mentality, and not really one which mainstream C / C++ trained programmers are suited to, had he been I imagine he could have done the work much more quickly and with a greater degree of confidence (he could have just wrote code that looked up the data and graphics in the rom for example)
The article also highlights what complete and utter d**ks publishers can be, and believe me, if you ever needed evidence that if MAME was allowed for commerical use all ports would just be straight MAME ports, that's it. If the publisher KNOWs they can legally use MAME they'll give the developers a budget of 0, and just tell them to port MAME. That wouldn't be good, for anybody. As the article also point out, some developers choose to rip it off anyway (the code from a previous release he was given), but that's a risk some of the bigger, more legitimate ones wouldn't take (or if were alerted to, would pull the product, it's happened before with other software)
As for Mameworld. Mame existed before Mameworld, Mame will exist after Mameworld should it die one day. The information in the project is safe as long as you can still keep a copy and download things to a machine you actually own.
Money will get chips decapped, Money will purchase boards and equpiment needed for testing and reference. Money won't speed up the actual progess of understanding the hardware. We picked up a Gals Panic 2 for under $10 to study, but finding time to study it, and work with the hardware to understand how it communicates with the protection, the secrets of the protection and then actually UNDERSTAND them and the results of sending random values to a black box, and then know what else to throw at the board to find out more isn't so easy, and isn't a task for somebody who is a pure 'modern' programmer either. In many senses this part of emulation is a specialist skill, especially when you consider the goals of MAME, unlike commercial ones, are to understand things and do things properly rather than hacking things up to get one game playable and shipped for a compilation. It's not really the type of skill you can just 'buy' or pay to learn, the only really way is to take part in it yourself, by contributing to emulation software!
"Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program."
- Linus Torvalds
I think this quote is true of MAME to this date. I also think this mentality is changing, which won't be healthy for any open projects. The reason I've always been an active part of the team is because it's FUN to discover new things, and see how things worked, and to explain it to others. Not because the games are any good, or because there is any financial incentive. The same could be said of all the best devs the project has ever had.
The large number of commercial re-rereleases of emulated games (the ones using emulators that is) has no bearing on the ability of the devs behind them to actually emulate something, merely their ability to take information that is presented to them (MAME) and write code, based on that, more specficially optimized etc. for their target platform. They will be applying hacks where neccessary to keep things smooth (for exmaple, deem emulation of sound subsystems too demanding, so simulate it instead), or dealing with trademark / copyright issues (for example, if they no longer have a license for some music they used) while adding a flashy frontend and bonus content to the whole thing. This is what paid, commercial developers are good at, so luring them to work on MAME would achieve very little.
Paying devs would also result in something of a 'race' to fix things, this is unproductive. It's very easy to 'fix' one case from the point of view of a user, while at the same time adding code so damn-awful it has no place in any project, nevermind MAME. The arguments over payment, with the developer claiming 'it works' and the dev team saying 'but it's completely wrong full of hacks, and bloody terrible' would be unproductive at best. You've only got to look at something like MAMEuiFX where all the 'fixes' that are added are actually just awful hacks. They 'work' but they work by adding specific hack code to each game, and breaking things which are known to otherwise be correct (treating the symptoms, not the cause) This is especially true of the type of fixes you get from people who don't understand the hardware aspect of MAME, which again, is the type of people you're likely to get if you look for paid hands.
You also risk a situation where nobody new wants to do anything for MAME for free, because it starts to seem unfair that some people are getting paid.
Where would you rather see money spent? on actually extracting data from chips to allow improvements to the emulation, or paid developers who would just split the project in 2?