MAMEWorld >> EmuChat
View all threads Index   Flat Mode Flat  

Bryan Ischo
MAME Fan
Reged: 03/28/10
Posts: 358
Send PM
Re: I think this was the necessary part of your post....
10/04/11 06:38 PM


> You certainly should talk about it more. And maybe use the Programming Forum, where
> it's more on topic (it's not like much else happens there) We're certainly interested
> in absorbing any really interesting modularizations you come up with (ClientServer's
> backend is going to get absorbed at some point too, most likely).

Doh - I wasn't even aware that there was a programming forum. Yes, that is definitely the more appropriate place for my questions, and I will be sure to post coding related questions there in the future.

I brought the topic up of what I had planned to do a year or two ago and there was some push back (at least I interpreted it as that, I was very new to the forums so maybe I hadn't fully calibrated yet). Since what I have done is to enable MAME to be compiled as a library with a C API, there was concern that this would just make it easier for the unscrupulous to create illegal products based on MAME. That is absolutely not my intention, and to be honest, I don't think that there really is any way to prevent the unscrupulous from doing bad things and I'd rather not limit the scrupulous from doing fun things in the process, but that's not my decision. Anyway, libmame has at the very least proven to me that it is an abstraction of the MAME engine that can remain stable over time; despite all of the internal changes in MAME that have occurred since 0.137 (which is where I started), libmame's API has remained constant. And my frontend which integrates MAME has thus been isolated from MAME source code changes. The main benefit of the way I have done this is that my front end can integrate the control of, rendering of, etc, MAME in a way that is more seamless than other frontends; I can render MAME within my 3D UI and then zoom in to play the game, zoom out, present custom rendered in-game menus, etc.

I'll make my next task to "productize" libmame (i.e. clean it up so that it's as nice as possible for anyone else to compile and use) and put it up somewhere so that anyone interested can take a look. Right now the biggest hurdle is that it doesn't compile on Windows (Linux only), because I am kind of a stickler about system APIs; I only use POSIX and demand that the operating system support it, rather than having to make my program support arbitrary operating system interfaces. This works OK for many things because Windows supports some POSIX APIs, but libmame uses some stuff that is going to require a shim layer for Windows to implement the POSIX support, and I haven't written that yet ...







Entire thread
Subject Posted by Posted on
* Dev question: is ioport_group redundant? Bryan Ischo 09/30/11 11:53 PM
. * I think this was the necessary part of your post.... mogli  10/03/11 01:41 AM
. * Re: I think this was the necessary part of your post.... Bryan Ischo  10/03/11 06:06 PM
. * Re: I think this was the necessary part of your post.... R. Belmont  10/03/11 06:33 PM
. * Re: I think this was the necessary part of your post.... Bryan Ischo  10/04/11 03:05 AM
. * Re: I think this was the necessary part of your post.... R. Belmont  10/04/11 04:28 PM
. * Re: I think this was the necessary part of your post.... Bryan Ischo  10/04/11 06:38 PM
. * Re: I think this was the necessary part of your post.... Vas Crabb  10/04/11 02:45 AM
. * Re: I think this was the necessary part of your post.... mogli  10/05/11 12:26 AM
. * Re: Dev question: is ioport_group redundant? etabeta  10/01/11 12:36 PM
. * Re: Dev question: is ioport_group redundant? R. Belmont  10/03/11 04:10 PM

Extra information Permissions
Moderator:  Robbbert, Tafoid 
0 registered and 288 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 1196