Indeed, among the stronger points of MAME (in addition to the core feature as an emulator) lies in its portability. Or rather, it builds and runs on lots of platforms; but there are more to it than that (integration with local UI paradigms, filesystem and other namespace management, ...). The restrictions of having to write a library rather than a fully fledged emu+UI+system interface would, probably, have been a good one to put on the project as a whole.
So far, "libmame" is a neat idea, the actual interface however, could've used some work (doesn't abstract much of the MAME quirks and there are serious drawbacks to a callback-driven API model) but anyhow, kudos to the work done! As a friendly suggestion, however, compare it to say, "libretro" (from the BSNES/SSNES and friends- crowd).
|