MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

Pages: 1

ShimaPong
MAME Fan
Reged: 03/12/05
Posts: 783
Send PM


Analog device reading is corrupt
#263205 - 08/28/11 05:49 PM Attachment: temp20110828225215.png 13 KB (1 downloads)


I have found interesting subject.


Quote:



Analog device reading for MAME is corrupt. MAME reads as analog if current value is different from one in previous frame and as digital with the same value.
0 - 84 = Left, 85 - 169 = Neutral, 170 - 255 = Right (This range is changeable by setting)
MAME executes like virtual analog joystick based on the above values.
In Afterburner, when you go to left to stand by before an enemy approaches, the device value at stopped the lever = 80 -> MAME reads as Left -> Player character goes left.
So you need to move the lever left and right in small motions to keep a position.

It was fixed and sent when Night Striker for Japanese was supported. But official release ignored this fix.





[ATTACHED IMAGE]

Attachment



"Any company has no power to stop people emulating"
MAME is the emulator of no giving in the pressure from any company even if they don't allow



AWJ
Reged: 03/08/05
Posts: 936
Loc: Ottawa, Ontario
Send PM


Re: Analog device reading is corrupt new [Re: ShimaPong]
#263212 - 08/28/11 06:27 PM


This is really a flaw in MAME's default settings. The problem occurs when you have the same device configured in MAME as both an analog and a digital input.

e.g.

Code:

AD Stick X Analog         Joy 1 A0
AD Stick X Analog Dec Joy 1 Left
AD Stick X Analog Inc Joy 1 Right



This mapping is wrong and will cause the real (analog) and simulated (digital) inputs to fight each other, exactly as described in the post you quoted. Unfortunately, this wrong mapping is also what MAME does by default.

The correct way to map analog inputs in MAME is to map either the "Analog" or the "Dec/Inc" inputs--not both--depending on whether the device you are using is analog or digital. If you have a real analog stick, you should only map it to "AD Stick Analog". If you are using a keyboard or (digital) gamepad, on the other hand, you should only map it to "AD Stick Analog Dec" and "AD Stick Analog Inc".

実物のアナログスティックをお使いの場合:

Code:

AD Stick X Analog         Joy 1 A0
AD Stick X Analog Dec None
AD Stick X Analog Inc None



キーボード、十字キー等をお使いの場合:

Code:

AD Stick X Analog             None
AD Stick X Analog Dec Joy 1 Left
AD Stick X Analog Inc Joy 1 Right



I guess the quoted poster's "fix" was wrong and that is why it wasn't included in mainline MAME (for one thing, he doesn't seem to realize that it is a problem with settings and not an actual bug in MAME)

Edited by AWJ (08/28/11 06:34 PM)


Pages: 1

MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

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