SETSCREEN 640,480,0
LIMITFPS 60
GLOBAL jx, jy, ba,bb
WHILE TRUE
JOYSTATE jx,jy,ba,bb
PRINT "JoyState x="+ jx+", y="+jy,0,0
jx = GETJOYX(0)
jy = GETJOYY(0)
PRINT "Get Joy x="+ jx+", y="+jy,0,10
SHOWSCREEN
WEND
Run that (window). Both methods return a value. JOYSTATE only returns 0, -1 or +1 for the x and y. GETJOYX / Y return any value from -1.0 to +1.0 as an analogue value.
Change the code so SET SCREEN is full screen and run.
Joystate x=0, y=-35826
Get Joy x=1, y=1
And the values never change.
I'm on Vista, with a Thrustmaster rumble type USB joystick (resembles a PS2 joypad).