English Amiga Board

Go Back   English Amiga Board > Support > support.WinUAE

Thread Tools
Old 16 November 2007, 08:40   #1
Posts: n/a
Analog joystick scaling


WinUAE seems to pull in the entire range of windows joysticks (2048 or something) which isn't good if you're trying to use them in analog mode, because a lot (most, all?) amiga games that support analog joystick only use 8 bits or less of resolution, and expect 30-150 or so steps of resolution in a typical joystick.

So not only does the joystick hit max value in about a tenth of the joystick's movement range, but if the game doesn't clip the input it hits 255 and wraps around to 0 causing your plane to whip itself violently in the opposite direction if you move the stick too far.

Adjustable input scaling would fix that.

Old 16 November 2007, 09:45   #2
Registered User
frikilokooo's Avatar
Join Date: Mar 2007
Location: Mallorca,Spain.
Age: 41
Posts: 1,140
I imagine that you use option of joystick calibration system of each game,is it thus?
frikilokooo is offline  
Old 16 November 2007, 10:44   #3
Toni Wilen
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 46
Posts: 24,691
Exactly what is the problem? More details as usual please..

WinUAE internally scales full Windows DirectInput range (-32768 to 32768) to Amiga range (0 to 255, but note that Amiga analog reading can always overflow if read routine is stupid)

I got expected results, full joystick range used. (ps2/xbox pads with analog sticks connected via usb adapter. I don't have "real" analog sticks, PC joystick port is obsolete.)
Toni Wilen is online now  
Old 16 November 2007, 22:22   #4
Posts: n/a

I am using:
WinUAE 1.4.4
Generic PlayStation2 configuration USB gamepad (analog sticks)

I assign the analog axis as appropriate in a custom configuration in WinUAE and leave other settings default.

I've tested two analog games so far - A10 Tank Killer 1.5 and JetPilot
In both cases stick down or stick right overflows after only a little movement.

JetPilot actually has a visual autoranging calibration routine which shows that 255 is reached much too early regardless.

I'm pretty sure stupid read routines were common in amiga games: On my real amiga, I used the SmartPort adapter with standard PC joysticks. The SmartPort adapter had scaling pots that you could adjust to get around crappy read routines.

I haven't tested Fighter Duel yet - I remember that game was relatively good about not overflowing on 'real' joysticks from the old days. I will, and then report back.
Old 17 November 2007, 21:42   #5
Toni Wilen
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 46
Posts: 24,691
I tested Jet Pilot demo and XBox360 pad: centered=128, analog stick fully left=0 and fully right=255. (and little less than 255 when near fully right)

Perfect full range

Configuration: default input-panel settings except "X Axis" mapped to "Joy2 Horizontal (Analog)"
Toni Wilen is online now  
Old 17 November 2007, 22:57   #6
Posts: n/a
I've tested more:

I'm running under Vista, if that makes any difference

These sticks are maxing out at part-range even under windows game controller control panel (though they center just fine.) Seems like a bad mechanical design for these pads.

I wasn't able to find any windows utility to show me the actual output of my joystick, numerically

In winUAE, the commercial jetpilot release gives me min 0, max 255, center 128 on both axis. I'll test the demo.

A-10 tank killer 1.5 refuses to activate the analog axis at all, though it recognizes the buttons. I remember this being an issue on a real amiga if the joystick wasn't set up right, but I don't really know why it's doing that here.

Fighter Duel Pro works just fine, except for the partial-range issue which now looks like bad joystick design. But at least it doesn't overflow.

An aminet util called 'anacal' reports my joysticks as min 0, max *256* <- (huh?), center 128.
Old 17 November 2007, 23:37   #7
Posts: n/a
Tested jetpilot demo:
Jetpilot demo has the calibration screen, and I get the same numbers as the commercial version. However, analog control isn't allowed in the demo - only mouse control. So I can't test it.

A-10 tank killer 1.5: I found that if I activate analog joysticks in the game's prefs while holding the joystick closer to the top left corner (smaller values) it does initialize. Of course.. no way to center it like that

Tried other joysticks in my house.. different brands and types. All of them max out at 255 at or before end of range even after a windows calibration, and none of them work any better in the games i mentioned.

I can't be sure, but it really does seem like a lot of games do not like a full 255 range, or maybe there is some overflow right at 255.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Analog PC joystick to Amiga? Chain Hardware mods 3 20 February 2009 18:32
Analog Joystick for Gunship 2000 Dust90 support.Games 5 08 October 2008 14:18
Which Amiga games support an analog joystick? Rixa support.Games 6 14 September 2008 04:44
Analog joystick frikilokooo MarketPlace 5 13 October 2007 12:22
Using a PC analog Joystick on Amiga TenakaUK support.Hardware 0 09 June 2004 17:16

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

All times are GMT +2. The time now is 13:02.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2021, vBulletin Solutions Inc.
Page generated in 0.14989 seconds with 13 queries