Ok I guess we are greenlit then.
Just wanted to make a statement to go along with keadkaze's:
First off I have no clue why I got so much credit. Other than pestering Aaron to finally add output support I didn't do much. Remember kids, sometimes pitty can work for you.
The dll implementation hk did is no small thing. While setting up the mame connection via code isn't impossible (I managed to do it, so it couldn't be THAT hard.), it does require rather hi-level coding ability. This kit means that anybody that can write a ledwiz app or something to that degree is going to be able to handle communcations with mame. Heck, we found out via trial and error that the communcation method out-right doesn't work in vb, so a dll written in C was pretty much required for that.
I've been volunteered to kind of keep track of the project. While not as involving as say, controls.dat, it's still going to be some work. In the next couple of weeks I'll be releasing an app based on our example source that will be used both to retrieve outputs from mame and write ini files based on those outputs ... oh it'll do stuff with em too.
The sdk is the main thing, and it's essentially done, but there are some further steps I want to do as sort of a supplement. First off, because we are sometimes dealing with "dangerous" output devices like solenoids, we want each individual game to have a config file. That doesn't mean there won't be a default file to set most of your games, but we want to make sure that the qbert knocker isn't used as a light in other games, for example or else the solenoid would get burned out. I'm going to write a standardized file for this. It's going to be very short, sweet, and to the point. My app will make them automatically when a game is ran, taking care of 90% of the output games. There are games, however which have a jumble of dozens of outputs, which we will need to go into and comment about the different ones. Turbo comes to mind, it has something like 40 outputs!!!
As for what to do with the outputs.... we want to standardize that as well. Nothing complex, it's just that, let's say the user wants to bind the first coin light to the first output on their ledwiz. We want to have a certain syntax to write turning on that output to be used in the ini file. We want to try to use that same syntax for every application any of us make, so again, it'll make things easier on the user. Again, this isn't going to be anything overly complex, I'll make it nice and to the point. I'll also post ideas about it right here. I want us to all generally agree upon this stuff.
Lastly, my app is going to be open source, just like the examples. I WANT people to add new stuff to it. I WANT it to be ported to other languages. Think of this as a mini-mame dev situation. I want to see the app on linux, macos x ect.... I'm gonna do it in vb because I can code it quicker, but it'd be nice if we could get some people to head up a C build and pretty much a build for every langauge we've talked about. Of course, if you have a C build then pretty much anything can be done with it porting-wise.
About dlls and stuff. Neither of us have any problems with close-source dlls, however, if you want "output device x" to be supported in the sdk and in my app, you need to get somebody to explain the interface and post us some examples, or better yet have them do it and release the source.
Right now, this is what I, personally intend to add:
parallel port outputs
ledwiz outputs
keyboard leds (maybe not, as they are rather useless and you can use the ledutil for them).
wiimote outputs (rumble, leds and sound)
Force feedback (via directx)
If anybody wants something else added they'll need to help out.
I want to also add serial port support but I'm rather dumb about serial communication so I would need help. On top of that we want it to be generic enough to allow for different hardware interfaces (for example I'll handle the parallel interface via allowing direct data communication, not as a "turn on pin 1" function).
Thats it for now, watch this space carefully in the upcoming days, and developers/users that want to help out please either post here or contact one of us privately.
Also remember to thank Aaron and hk when you get the chance.