Joystick et Rebol
ldci25-Jan-2010/18:31:59+1:00
Salut à tous
J'aurais besoin d'accèder à un joystick avec Rebol sous windows.
A première vue, on peut passer par la dll winmm.dll avec la fonction
MMRESULT joyGetPos(

UINT uJoyID,   
LPJOYINFO pji   
);

   
Parameters

uJoyID

Identifier of the joystick (JOYSTICKID1 or JOYSTICKID2) to be queried.

pji

Address of a JOYINFO structure that contains the position and button status of the joystick.

The JOYINFO structure contains information about the joystick position and button state.

typedef struct {
UINT wXpos;
UINT wYpos;
UINT wZpos;
UINT wButtons;
} JOYINFO;

Qui aurait une idée lumineuse? Merci à tous.
jocko26-Jan-2010/7:28:50+1:00
hello François

Pas besoin d'idée lumineuse. Tout est ici,
http://www.rebol.com/docs/library.html
ça ne devrait pas poser de problème
ldci26-Jan-2010/9:43:47+1:00
Bon
Je devais être fatigué...
Enfantin
lib: load/library %winmm.dll ; accès à la lib multimédia

;un pointeur sous la forme d'une structure pour réserver l'adresse mémoire
PJoyInfo: make struct![
wXpos [integer!]; { x position }
wYpos [integer!]; { y position }
wZpos[integer!];; { z position }
wButtons[integer!];{ button states }
]none

; merci Bouba pour l'astuce qui permet de récupérer la spécification de la structure par first
joyGetPos: make routine! compose/deep/only [
   uJoyID [integer!]; numero du joystick 0 ou 1
   SJoyInfo[ struct! [(first PJoyInfo)]]
   return: [integer!]
] lib "joyGetPos"

; On crée le pointeur qui sera passé en paramètre
Joy: make struct! PJoyInfo none
;le joystick connecté
JOYSTICKID1: 0
; The joyGetPos function
a: joyGetPos JOYSTICKID1 Joy
probe a
>> 0 ; MMRESULT= no error

Cool!

Login required to Post.


Powered by RebelBB and REBOL 2.7.8.4.2