News:

Rule #1 - Be Patient - Rule #2 - Don't ask when, if you don't contribute - Rule #3 - You have coding skills - LinuxMCE's small brother is available: http://www.agocontrol.com

Main Menu

MAME Plugin Progress Thread

Started by tschak909, December 10, 2007, 07:47:59 AM

Previous topic - Next topic

colinjones

Do any joysticks or gamepads currently work with LMCE? Aren't they just HID and so Linux will understand them (unless there is something very specific to one)?

Thom - in this case, if the interface already works, what does the template/device give us extra? Is it just so LMCE understands it exists, and perhaps how to use it in one room to control something in another? Wouldn't there have to be some code behind it, rather than just a device template? Just trying to understand how this all hangs together :)

tschak909

for certain joysticks, the device template can be used to provide a ctrlr file for mame, or other emulators to do joystick mappings. This is critical to the plug and play aspect of the system.

I had to make one for my X-Arcade Tank-stick, because it is insanely custom (it appears as an HID keyboard, and requires a custom controller file to work with MAME).

-Thom

colinjones

Thom - does that mean you had to write some code to turn it into a DCE device as well? Doesn't everything that has a template also have to be a device and be able to connect to the router and send/receive commands, events etc? Is that how you do the mapping, though a DCE command to send the mapping data? What device to you send it to?

tschak909

no, if the device does not have implements dce checked, it is assumed to not be a dce device.

-Thom

colinjones

ahhh.... hmm.... so how does LMCE use the data in the template? I presume it must be another device that uses it - is that the Orbiter device, and then that pipes the "mapped" commands to whatever device you are controlling at the time (in this case your MAME plugin device) or does the device itself have to take responsibility to grab the template data, and access the incoming HID data stream, translate and use it?

tschak909

my mame_player device merely looks at the device, grabs its device data, and reconstitutes it into a controller file to use with mame.

-Thom

colinjones

so in this instance the template isn't actually an "active" component in LMCE, its more a convenient and standard "parking" place to hold the controller's mapping data. The active bit is in other devices that want to use this data, actively looking for the template, grabbing the data then using it however they want?

tschak909

correct. look at the mcr remote dongle and the go mouse 1005 dongle..same thing.

-Thom

colinjones

ahhh, the light shines! Sorry for all the questions, desparately trying to understand the architecture of LMCE, learn C++ and Linux so I can actually start contributing rather than leaching :)