Coming soon (no determinate date yet, I am working on this in my spare time), a new media type for LinuxMCE: MAME.
What does it do?Simply? it allows for you to play games from MAME inside LinuxMCE by copying them to the games folder in your public or private user directories, and then selecting Games from your Media scenario menu.
So, are there screenies, or what?
Why, yes. I hope these are self explanatory. I used the game 10 Yard Fight as an example. Yes, it also works under UI1 just fine, I tested it.
http://www.localeconcept.com/pub/scratch/games/game_playing_with_menu.pnghttp://www.localeconcept.com/pub/scratch/games/game_playing_with_media.pnghttp://www.localeconcept.com/pub/scratch/games/game_playing_on_floorplan.pnghttp://www.localeconcept.com/pub/scratch/games/from_orbiter.png
Why are you doing this?Honestly? I have an X-Arcade Tank Stick that has been collecting dust in the corner of my main room for quite some time now, since I moved over from a MythTV-only installation almost a year ago.
This is dumb, why don't you just compile MythGame and bolt it on?Because quite frankly, I like things that are nicely integrated. Making games a first class media type inside LinuxMCE allows for some really cool possibilities that the other game emulator front-ends are not capable of doing, and it allows me to select games using the same stream-lined UI for selecting audio and video.
What can it currently do?It can currently launch a game from the games list, they can be serially selected like audio or video into playlists, which can then be saved and shown in the Playlists. There is no joystick configuration, so the /root/.mame/mame.ini file currently must be modified to switch on joysticks, etc..
What's Left to do?Well gee, if it can do that? why don't you just release it?Heh, it barely does this. There is still so much to _do_.
* finish process management, thread monitoring mame process which will fire CMD_Stop_Media() when mame dies.
* Event Processing
* Proper media identification, so that game snapshots will be placed in the thumbnails, and game titles will properly be identified.
* Proper Attribute creation, so that typical media filtering can be done. (i.e. filtering by game type, manufacturer, year, etc.)
* new Orbiter UI made in Designer, I am currently using the remotes for Stored Video, this is not exactly a correct fit.
* CMD_Move_Media implemented so that games can be moved from one media director to another via floor plan.
* CMD_Leave_Room/CMD_Enter_Room implemented so that Follow Me will work correctly.
* CMD_Get_Video_Frame - so that I can get screen captures to use both in Thumbnail and for using the video display view on the orbiters normally used to display DVD Menus
* CMD_Simulate_Mouse_Click/Keypress - Need this for a LOT of reasons, too many to list.
* Create DCE devices for Joysticks and Gamepads, so that they can be used to control BOTH LinuxMCE and the MAME plugin. This is especially important for the features described in the REALLY HARD SECTION below.
* Create package definitions, so that they can be included in the LinuxMCE build process..the end result is to have something that can be enabled in the Install Additional Software screen in the Setup Wizard.
In addition, there are some HARD ones that I will ATTEMPT to implement, I have no idea if they will actually WORK in practice... Hell, this whole THING is a proof of concept exercise!, Particularly:* Implementing the ability to stream a game to multiple media directors, replicating DCE joystick events across them, assigning them to player slots as needed, so that you can play the same game in different rooms in a house by assigning it on the floorplan.
* Implementing transport control, so that if you use the rewind/fast forward, it will pause the game and rewind a captured stream of the game that you can pause and fast forward through (yes, I've contemplated every single possible question you may ask to that. Please just let me try to get the basic transport control implemented!)
What version of MAME are you basing this on?I am using SDLMAME 0.122u7, currently, it is currently not modified, and god I hope it can stay that way!
When are you gonna release this sucker?When I think it's ready. I am under no obligations of any kind to release this. I am doing this as my primer into creating advanced Pluto/LinuxMCE functionality.
Are you doing more media types?Hopefully, but let me get this one done first! Are you impatient? either (a) help me code it, or (b) ask me for my code, and use it as a pattern to create your own set of wrapper devices.
What version will this run under?I am developing it for 0710 and above. I am developing this currently on 0710 beta 3, using the SVN sources from the primary LinuxMCE trunk.
Can I get the code?Yes, PM me and I will give you a tarball with the current code. When it is more ready, I will ask for permission to shift it into the development tree. You will need a development environment to unpack it into and compile. There is also a lengthy set of database additions which must be made in order for it to work. A Scenario also must be created in the web admin, the games directory created, and roms put into it in zip format.
Anything else?Not at the moment, I will paste more as time progresses. I do have a development thread over here in the Developers forum. This is just an announcement thread.
http://forum.linuxmce.org/index.php?topic=3433.0 --- start of the thread.
Out for now, fellas.
-Thom