| Main > Main Forum |
| Ultimarc rotary encoder issues |
| (1/6) > >> |
| Rip:
title was: Why are digital rotary joysticks set up as analog controls in MAME? I just bought a very simple rotary encoder from Ultimarc for my Ikari style rotaries. Simple enough...they generate a [ on left clicks and a ] on right clicks. I checked this out independently on notepad and it is perfect. I go into MAME and setup the "dial" control (MAME 0.113 introduced "positional" controls for Ikari games but basically the same thing) settings to map to these key strokes. I would think that'd be enough, but then I have to go jack around with dial (speed an sensitivity). No matter what I do, it is impossible to get a 1 to 1 click setting. Any ideas? |
| Rip:
I just read Derrick Renaud's recent thread on this issue and have made the correct settings for Ikari games http://forum.arcadecontrols.com/index.php?topic=60720.0 Positional Speed = 0 Positional Sensitivity = 100% Yet it still misses clicks ?! Again in notepad the [ and ] happen perfectly without fail. Is it possible the Ultimarc encoder is not generating a long enough keypress? |
| MaximRecoil:
--- Quote from: Rip on April 06, 2007, 02:01:27 am ---Why are digital rotary joysticks set up as analog controls in MAME? --- End quote --- It's a hack I guess. Why are hacks like this acceptable, but other hacks to enhance playability on a PC, such as speed-up hacks for games that run slow on currently available PC hardware, are not? I wish MameDev were consistent with their ideology. Is it not possible to compile a version of Mame and/or the Ikari Warriors Mame driver that accepts 12 discreet digital inputs, one for each rotary position, like the actual hardware does? Then you could just use 12 inputs on any old keyboard encoder, with one wire of the rotary switch's harness for each of the 12 positions and it would be perfect. There are actually 13 wires in an LS-30 rotary switch harness, but I believe one of them is ground. |
| 2600:
Are you actually using MAME > 113? If not, you will not get a 1 to 1 click setting. If you think it is the Encoder, then try a keyboard to prove that it is either the encoder or joystick. |
| Derrick Renaud:
This post is not directed to anyone in particular, so do not take the rant as a personal attack. It's just time to vent a little and clarify some things. :timebomb: ;D In the newest versions of MAME, using Digital Speed = 0, and Sensitivity = 100% should exactly change 1 position in positional controls. The behaviour for other controls is a little unpredictable due to some drivers hacking the mouse data to simulate the original control. That is why I came up with the positional type, so it would create a standard type control. One day it might be expanded into the "1 of X" type control of the original Ikari game. Something that people who complain about "MAME not being consistant in their standards" forget, is that MAME is an ongoing project. Things are constantly being updated. New features may only be added to certain drivers and not others. I know its hard to believe but every Dev does not intimately know all 6000+ games, so some drivers miss getting updated to new features. Over 10 years, some drivers may have not been updated for a while. Analog controls are really a misnomer in MAME. There is really no such thing. Every input port type is digital. MAME only concerns itself with the data received by the CPU. Which is digital. As far as MAME is concerned, any input that is not just 1 bit data is considered analog. This is so all the scaling and conversion (eg. inc/dec buttons) features can be applied to it, allowing for a variety of computer connected controls to emulate a variety of original hardware. If you want to enforce rigidity on the standards we could start by removing inc/dec button controls, not allowing joysticks to be emulated by mice, etc. As far as the IKARI controls being emulated as 4bits instead of a 1-of-12 positional control, this is because that is what the CPU receives. The original control is connected to a ROM (at least in gwar it is) that outputs the data to the CPU that is currently emulated in MAME. With the new positional code dividing an analog joystick into 12 chunks for ikari controls, I'm supprised no one has figured out that you should be able to create an easy joystick interface for it. Finally a little bit of a rant. For those who think MAME should do this or that, or fix X driver because it does not follow the standards of Y driver. Remember this is a hobby done by people on their spare time. Feel free to offer constructive criticism. But things only get changed when someone finds the time/motivation to change it. So feel free to delve into the code to change your favorite pet peeve. I had to learn electronics and programming on my own. I have to delve into the code to figure out how MAME works and make the changes for what I want it to do. There are all sorts of features I want to add to MAME. If anyone wants to pay my yearly wage so I can quit my job and solely work on MAME, then these features will get added quicker. Until then, just like anyone who has added code to MAME, I have real life issues to attend to. So I only get a chance to work on the code when the time and motivation is right. D. |
| Navigation |
| Message Index |
| Next page |