598 lines
26 KiB
C
598 lines
26 KiB
C
/******************************************************************************
|
|
Joystick.h : Definition of structures and Macros
|
|
Author : JENTEY F.
|
|
Last update : 06/03/97
|
|
******************************************************************************/
|
|
|
|
#ifndef _INO_JOYSTICK_H
|
|
#define _INO_JOYSTICK_H
|
|
|
|
#ifndef u_short
|
|
#define u_short unsigned short
|
|
#endif
|
|
|
|
#ifndef u_long
|
|
#define u_long unsigned long
|
|
#endif
|
|
|
|
|
|
|
|
|
|
/**************************************/
|
|
#ifndef CPA_EXPORT
|
|
#if defined(CPA_WANTS_IMPORT)
|
|
#define CPA_EXPORT __declspec(dllimport)
|
|
#elif defined(CPA_WANTS_EXPORT)
|
|
#define CPA_EXPORT __declspec(dllexport)
|
|
#else
|
|
#define CPA_EXPORT
|
|
#endif
|
|
#endif
|
|
/**************************************/
|
|
|
|
|
|
|
|
|
|
/**************************************************************************
|
|
All functions return a short value that should be compared with the
|
|
following ones.
|
|
***************************************************************************/
|
|
#define C_wJoyError 32767
|
|
#define C_wJoyTrue 32766
|
|
#define C_wJoyFalse 32765
|
|
|
|
|
|
/**************************************************************************
|
|
Define the joystick type.
|
|
***************************************************************************/
|
|
#define C_wJoyNone 1
|
|
#define C_wJoyTypeJoystick 2
|
|
#define C_wJoyTypePad 3
|
|
#define C_wJoyTypeVolant 4
|
|
|
|
|
|
/**************************************************************************
|
|
Define the executing mode of the device.
|
|
***************************************************************************/
|
|
#define C_wJoyNormalMode 0
|
|
#define C_wJoyDemoRecordingMode 1
|
|
#define C_wJoyDemoPlayingMode 2
|
|
|
|
|
|
/**************************************************************************
|
|
Define the fn_wJoyReadJoystick mode.
|
|
***************************************************************************/
|
|
#define C_wJoyReadAll 0
|
|
#define C_wJoyReadConnected 1
|
|
|
|
|
|
/**************************************************************************
|
|
These constants can be used with the wJoystickNum parameter of functions.
|
|
***************************************************************************/
|
|
#define C_wJoystick1 0
|
|
#define C_wJoystick2 1
|
|
#define C_wJoystick3 2
|
|
#define C_wJoystick4 3
|
|
#define C_wJoystick5 4
|
|
#define C_wJoystick6 5
|
|
#define C_wJoystick7 6
|
|
#define C_wJoystick8 7
|
|
#define C_wJoystick9 8
|
|
#define C_wJoystick10 9
|
|
#define C_wJoystick11 10
|
|
#define C_wJoystick12 11
|
|
#define C_wJoystick13 12
|
|
#define C_wJoystick14 13
|
|
#define C_wJoystick15 14
|
|
#define C_wJoystick16 15
|
|
|
|
|
|
/**************************************************************************
|
|
These constants can be used with the ulButtonFlag parameter of functions
|
|
***************************************************************************/
|
|
#define C_ulButtonFlag1 1
|
|
#define C_ulButtonFlag2 1 << 1
|
|
#define C_ulButtonFlag3 1 << 2
|
|
#define C_ulButtonFlag4 1 << 3
|
|
#define C_ulButtonFlag5 1 << 4
|
|
#define C_ulButtonFlag6 1 << 5
|
|
#define C_ulButtonFlag7 1 << 6
|
|
#define C_ulButtonFlag8 1 << 7
|
|
#define C_ulButtonFlag9 1 << 8
|
|
#define C_ulButtonFlag10 1 << 9
|
|
#define C_ulButtonFlag11 1 << 10
|
|
#define C_ulButtonFlag12 1 << 11
|
|
#define C_ulButtonFlag13 1 << 12
|
|
#define C_ulButtonFlag14 1 << 13
|
|
#define C_ulButtonFlag15 1 << 14
|
|
#define C_ulButtonFlag16 1 << 15
|
|
#define C_ulButtonFlag17 1 << 16
|
|
#define C_ulButtonFlag18 1 << 17
|
|
#define C_ulButtonFlag19 1 << 18
|
|
#define C_ulButtonFlag20 1 << 19
|
|
#define C_ulButtonFlag21 1 << 20
|
|
#define C_ulButtonFlag22 1 << 21
|
|
#define C_ulButtonFlag23 1 << 22
|
|
#define C_ulButtonFlag24 1 << 23
|
|
#define C_ulButtonFlag25 1 << 24
|
|
#define C_ulButtonFlag26 1 << 25
|
|
#define C_ulButtonFlag27 1 << 26
|
|
#define C_ulButtonFlag28 1 << 27
|
|
#define C_ulButtonFlag29 1 << 28
|
|
#define C_ulButtonFlag30 1 << 29
|
|
#define C_ulButtonFlag31 1 << 30
|
|
#define C_ulButtonFlag32 1 << 31
|
|
#define C_ulButtonAll 0xFFFFFFFF
|
|
|
|
|
|
/**************************************************************************
|
|
Joystick capabilities flags
|
|
***************************************************************************/
|
|
#define C_ulJoyX 1
|
|
#define C_ulJoyY 1 << 1
|
|
#define C_ulJoyZ 1 << 2
|
|
#define C_ulJoyR 1 << 3
|
|
#define C_ulJoyU 1 << 4
|
|
#define C_ulJoyV 1 << 5
|
|
#define C_ulJoyDiscretPOV 1 << 6
|
|
#define C_ulJoyContinuousPOV 1 << 7
|
|
|
|
|
|
/**************************************************************************
|
|
Joystick directions flags
|
|
***************************************************************************/
|
|
#define C_ulJoyLeft 1
|
|
#define C_ulJoyRight 1 << 1
|
|
#define C_ulJoyUp 1 << 2
|
|
#define C_ulJoyDown 1 << 3
|
|
#define C_ulJoyZUp 1 << 4
|
|
#define C_ulJoyZDown 1 << 5
|
|
#define C_ulJoyPOVCentered 1 << 6
|
|
#define C_ulJoyPOVLeft 1 << 7
|
|
#define C_ulJoyPOVRight 1 << 8
|
|
#define C_ulJoyPOVForward 1 << 9
|
|
#define C_ulJoyPOVBackward 1 << 10
|
|
|
|
|
|
/**************************************************************************
|
|
Joystick error code
|
|
***************************************************************************/
|
|
#define C_FirstErrorJoystick 0x1000
|
|
#define C_ErrNoJoystickDriver ( C_FirstErrorJoystick + 0 )
|
|
#define C_ErrDriverNotInitialized ( C_FirstErrorJoystick + 1 )
|
|
#define C_ErrJoystickNotActive ( C_FirstErrorJoystick + 2 )
|
|
#define C_ErrFeatureNotAvailable ( C_FirstErrorJoystick + 3 )
|
|
#define C_ErrBadButtonFlag ( C_FirstErrorJoystick + 4 )
|
|
#define C_ErrBadJoystick ( C_FirstErrorJoystick + 5 )
|
|
#define C_ErrNotInJoyRecordingMode ( C_FirstErrorJoystick + 6 )
|
|
#define C_ErrNotInJoyNormalMode ( C_FirstErrorJoystick + 7 )
|
|
#define C_ErrNotInJoyPlayingMode ( C_FirstErrorJoystick + 7 )
|
|
#define C_ErrJoyBadFileFormat ( C_FirstErrorJoystick + 9 )
|
|
#define C_ErrJoyDemoFileError ( C_FirstErrorJoystick + 10 )
|
|
#define C_ErrJoyHistoricOverflow ( C_FirstErrorJoystick + 11 )
|
|
#define C_ErrJoystickNotAllocated ( C_FirstErrorJoystick + 12 )
|
|
#define C_ErrJoystickNotConfigured ( C_FirstErrorJoystick + 13 )
|
|
#define C_ErrNoJoystickAvailable ( C_FirstErrorJoystick + 14 )
|
|
#define C_ErrAlreadyAllocated ( C_FirstErrorJoystick + 15 )
|
|
#define C_ErrMemoryError ( C_FirstErrorJoystick + 16 )
|
|
|
|
|
|
|
|
/******************************************************************************
|
|
All functions return a short type value that must be compared with the
|
|
C_wJoyError to check if the function success. You can then read the error
|
|
code with the error management functions.
|
|
******************************************************************************/
|
|
|
|
#if defined(__cplusplus)
|
|
|
|
extern "C"
|
|
{
|
|
|
|
/******************************************************************************
|
|
Joystick configuration functions.
|
|
******************************************************************************/
|
|
|
|
/*
|
|
This function must be called one time when the game is launched. The
|
|
parameter HistorySize is the number of previous status conserve.
|
|
*/
|
|
/*CPA_EXPORT short INO_fn_wInitGamePort(short wHistorySize);*/
|
|
|
|
/*
|
|
Reinitialization of the joysticks. The history is clear and it check if
|
|
configuration has changed (new joysticks are connected).
|
|
*/
|
|
CPA_EXPORT short INO_fn_wResetGamePort(void);
|
|
|
|
/*
|
|
This function free memory and release joystick ressource.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wFreeGamePort(void);
|
|
|
|
/*
|
|
Check if there is a gameport driver.
|
|
Return C_wJoyTrue or C_wJoyFalse
|
|
*/
|
|
CPA_EXPORT short INO_fn_wUpdateGamePort(void);
|
|
|
|
/*
|
|
Try to allocate a joystick.
|
|
If ok return a handle to the joystick
|
|
*/
|
|
CPA_EXPORT short INO_fn_wAllocJoystick(short wJoystickNum);
|
|
|
|
/*
|
|
Returns the id ( C_wJoystick'n' ) of the first connected joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wAllocFirstJoystickAvailable(void);
|
|
|
|
/*
|
|
fn_wJoyFreeJoystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wFreeJoystick(short wJoystickNum);
|
|
|
|
/*
|
|
Update the specified joystick capabilities and state.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wUpdateJoystick(short wJoystickNum);
|
|
|
|
/*
|
|
This function return the maximum joystick number supported by the driver.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetMaximumJoystickNumber(void);
|
|
|
|
/*
|
|
This function checks if the specified joystick is connected.
|
|
The result can be C_wJoyTrue, C_wJoyFalse or C_wJoyError.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wIsJoystickConnected(short wJoystickNum);
|
|
|
|
/*
|
|
fn_wJoyIsAllocated
|
|
*/
|
|
CPA_EXPORT short INO_fn_wIsJoystickAllocated(short wJoystickNum);
|
|
|
|
/*
|
|
Set the type of joystick
|
|
*/
|
|
CPA_EXPORT short INO_fn_wSetJoystickType(short wJoystickNum, short wType);
|
|
|
|
/*
|
|
Get the type of joystick
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickType(short wJoystickNum);
|
|
|
|
/*
|
|
This function returns the number of buttons of the specified joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickButtonNumber(short wJoystickNum);
|
|
|
|
/*
|
|
Number of direction axis of the specified joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickAxisNumber(short wJoystickNum);
|
|
|
|
/*
|
|
This function filled the ulFlagInfo parameter with the capabilities flags
|
|
(defined in this file) of the specified joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickMovmentCaps(short wJoystickNum, u_long *p_ulFlagInfo);
|
|
|
|
/*
|
|
This function sets the joystick extra features (like z-axis) the fn_JoyReadJoystick
|
|
muist update. The ulFlagInfo parameter is a combinaisson of the capabilities flags.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wSetJoystickActiveCaps(u_long ulCapsFlag);
|
|
|
|
|
|
|
|
/*****************************************************************
|
|
Demo mode function support
|
|
*****************************************************************/
|
|
|
|
/*
|
|
With this function, you can define the exit demo button for the
|
|
specified joystick. You can select several button by a combinaison
|
|
the C_ulButtonFlag'n' value, or all button with C_ulButtonAll.
|
|
Default is none.
|
|
For the joystick you are recording, you shouldn't specified a
|
|
button that is used in the game.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wSetStopRecordingJoystickButton(short wJoystickNum, u_long ulButtonFlag);
|
|
|
|
/*
|
|
This function define the joystick to record. Default is
|
|
C_wJoystick1.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wSetJoystickToRecord(short wJoystickNum);
|
|
|
|
/*
|
|
This function start the demo recording mode.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wStartRecordingJoystick(char *p_szFileName, short wDemoSize);
|
|
|
|
/*
|
|
This function quit the demo recording mode.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wStopRecordingJoystick(void);
|
|
|
|
/*
|
|
This function return the number of frame of the demo sequence.
|
|
*/
|
|
CPA_EXPORT u_long INO_fn_ulGetJoystickDemoFrameCount(void);
|
|
|
|
/*
|
|
This function start the demo playing mode with the given file sequence.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wStartJoystickDemo(char *p_szFileName);
|
|
|
|
/*
|
|
This function quit the demo playing mode.
|
|
You quit the demo playing mode automatically when you push a joystick button.
|
|
But you also can associate this function to a key stroke for example.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wStopJoystickDemo(void);
|
|
|
|
/*
|
|
This function return the current joystick mode.(normal,demo
|
|
recording or demo playing).
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickCurrentMode(void);
|
|
|
|
|
|
|
|
/******************************************************************************
|
|
This section defines the query functions.
|
|
******************************************************************************/
|
|
|
|
/*
|
|
This function must be called at regular interval, for example each VBL.
|
|
Update the informations about active joysticks.
|
|
wReadMode indicates if you wanted to read all allocated joystick (C_wJoyReadAll)
|
|
,(useful to test if joystick are plugged, unplugged.
|
|
or only plugged joystick (C_wJoyReadConnected).
|
|
*/
|
|
CPA_EXPORT short INO_fn_wReadJoystick(short wReadMode);
|
|
|
|
/*
|
|
Set a connected joystick as Active. By default, only the first joystick is
|
|
active.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wAddActiveJoystick(short wJoystickNum);
|
|
|
|
/*
|
|
Remove a joystick from the active joystick list.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wRemoveActiveJoystick(short wJoystickNum);
|
|
|
|
/*
|
|
The 10 following functions check the current directions for the
|
|
specified joystick. The result must be check with C_wJoyTrue, C_wJoyFlase
|
|
or C_wJoyError.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wIsJoystickLeft(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wIsJoystickRight(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wIsJoystickUp(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wIsJoystickDown(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wIsJoystickZUp(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wIsJoystickZDown(short wJoystickNum);
|
|
|
|
CPA_EXPORT short INO_fn_wJoystickJustLeft(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wJoystickJustRight(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wJoystickJustUp(short wJoystickNum);
|
|
CPA_EXPORT short INO_fn_wJoystickJustDown(short wJoystickNum);
|
|
|
|
/*
|
|
Return the current position of the joystick along the specified axis
|
|
The return value is a double contained between -1.0 to 1.0
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickCurrentPosition(short wJoystickNum, short wAxis, double *pdfPosition);
|
|
|
|
/*
|
|
This function test the buttons of th specified joystick. If several
|
|
buttons are specified, the result is true if all selected buttons
|
|
are pressed.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wIsJoystickButtonPressed(short wJoystickNum, u_long ulButtonFlag);
|
|
CPA_EXPORT short INO_fn_wJoystickButtonJustPressed(short wJoystickNum, u_long ulButtonFlag);
|
|
CPA_EXPORT short INO_fn_wJoystickButtonJustReleased(short wJoystickNum, u_long ulButtonFlag);
|
|
CPA_EXPORT short INO_fn_wGetJoystickCurrentButton(short wJoystickNum, u_long *p_ulButtonFlag);
|
|
|
|
/*
|
|
The next 2 functions fill the second parameter with the current direction
|
|
flags or current pressed button flags of the selected joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickCurrentDirection(short wJoystickNum, u_long *p_ulDirectionFlag);
|
|
CPA_EXPORT short INO_fn_wJoystickDirectionJustReleased(short wJoystickNum, u_long ulDirectionFlag);
|
|
|
|
/*
|
|
The following functions check a previous direction or button status for the
|
|
specified joystick. The result must be check with C_wJoyTrue, C_wJoyFlase
|
|
or C_wJoyError.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wWasJoystickLeft(short wJoystickNum, short wHistoryNum);
|
|
CPA_EXPORT short INO_fn_wWasJoystickRight(short wJoystickNum, short wHistoryNum);
|
|
CPA_EXPORT short INO_fn_wWasJoystickUp(short wJoystickNum, short wHistoryNum);
|
|
CPA_EXPORT short INO_fn_wWasJoystickDown(short wJoystickNum, short wHistoryNum);
|
|
CPA_EXPORT short INO_fn_wWasJoystickZUp(short wJoystickNum, short wHistoryNum);
|
|
CPA_EXPORT short INO_fn_wWasJoystickZDown(short wJoystickNum, short wHistoryNum);
|
|
|
|
/*
|
|
This function test the buttons of the specified joystick. If several
|
|
buttons are specified, the result is true if all selected buttons
|
|
were pressed.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wWasJoystickButtonPressed(short wJoystickNum, u_long ulButtonFlag, short wHistoryNum);
|
|
|
|
/*
|
|
The next 2 functions fill the third parameter with the current direction
|
|
flags or current pressed button flags of the selected joystick.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickPreviousDirection(short wJoystickNum, short wHistoryNum, u_long *p_ulDirectionFlag);
|
|
CPA_EXPORT short INO_fn_wGetJoystickPreviousButton(short wJoystickNum, short wHistoryNum, u_long *p_ulButtonFlag);
|
|
|
|
/*
|
|
Return the position of the joystick in a previous state along the specified axis
|
|
The return value is a double contained between -1.0 to 1.0
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickPreviousPosition(short wJoystickNum, short wAxis, short wHistoryNum, double *pdfPosition);
|
|
|
|
/*
|
|
If not C_wJoyError, the result is the elapsed time of inactivity
|
|
of the selected joystick.
|
|
*/
|
|
/*
|
|
CPA_EXPORT short fn_wJoyInactivityTime(short wJoystickNum , u_long *p_ulLaps);
|
|
*/
|
|
|
|
/*
|
|
Return the time between the specified prevoius state of the joystick and
|
|
the actual state.
|
|
*/
|
|
/*
|
|
CPA_EXPORT short fn_wJoyElapsedTime (short wJoystickNum , short wHistoryNum , u_long *p_ulLaps );
|
|
*/
|
|
|
|
/*
|
|
This function returns a pointer to the last error message string.
|
|
*/
|
|
CPA_EXPORT short INO_fn_wGetJoystickErrorString( char **pp_szErrorString);
|
|
|
|
/*
|
|
This function returns the last error code.
|
|
*/
|
|
CPA_EXPORT u_long INO_fn_wJGetLastJoystickErrorCode(void);
|
|
|
|
}
|
|
|
|
|
|
#else /* Prototype C */
|
|
|
|
extern CPA_EXPORT short INO_fn_wInitGamePort(short wHistorySize);
|
|
extern CPA_EXPORT short INO_fn_wResetGamePort(void);
|
|
extern CPA_EXPORT short INO_fn_wUpdateGamePort(void);
|
|
extern CPA_EXPORT short INO_fn_wFreeGamePort(void);
|
|
extern CPA_EXPORT short INO_fn_wAllocJoystick(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wFreeJoystick(short wJoyHandle);
|
|
extern CPA_EXPORT short INO_fn_wAllocFirstJoystickAvailable();
|
|
extern CPA_EXPORT short INO_fn_wUpdateJoystick(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wGetMaximumJoystickNumber(void);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickConnected(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickAllocated(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wSetJoystickType(short wJoystickNum, short wType);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickType(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickButtonNumber(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickAxisNumber(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickMovmentCaps(short wJoystickNum, u_long *p_ulFlagInfo);
|
|
extern CPA_EXPORT short INO_fn_wSetJoystickActiveCaps(u_long ulCapsFlag);
|
|
|
|
extern CPA_EXPORT short INO_fn_wSetStopRecordingJoystickButton(short wJoystickNum, u_long ulButtonFlag);
|
|
extern CPA_EXPORT short INO_fn_wSetJoystickToRecord(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wStartRecordingJoystick(char *p_szFileName, short wDemoSize);
|
|
extern CPA_EXPORT short INO_fn_wStopRecordingJoystick(void);
|
|
extern CPA_EXPORT short INO_fn_wStartJoystickDemo(char *p_szFileName);
|
|
extern CPA_EXPORT short INO_fn_wStopJoystickDemo(void);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickCurrentMode(void);
|
|
extern CPA_EXPORT u_long INO_fn_ulGetJoystickDemoFrameCount(void);
|
|
|
|
extern CPA_EXPORT short INO_fn_wReadJoystick(short wReadMode);
|
|
extern CPA_EXPORT short INO_fn_wAddActiveJoystick(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wRemoveActiveJoystick(short wJoystickNum);
|
|
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickLeft(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickRight(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickUp(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickDown(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickZUp(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickZDown(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wJoystickJustLeft(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wJoystickJustRight(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wJoystickJustUp(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wJoystickJustDown(short wJoystickNum);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickCurrentPosition(short wJoystickNum, short wAxis, double *pdfPosition);
|
|
extern CPA_EXPORT short INO_fn_wIsJoystickButtonPressed(short wJoystickNum, u_long ulButtonFlag);
|
|
extern CPA_EXPORT short INO_fn_wJoystickButtonJustPressed(short wJoystickNum, u_long ulButtonFlag);
|
|
extern CPA_EXPORT short INO_fn_wJoystickButtonJustReleased(short wJoystickNum, u_long ulButtonFlag);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickCurrentDirection(short wJoystickNum, u_long *p_ulDirectionFlag);
|
|
extern CPA_EXPORT short INO_fn_wJoystickDirectionJustReleased(short wJoystickNum, u_long ulDirectionFlag);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickCurrentButton(short wJoystickNum, u_long *p_ulButtonFlag);
|
|
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickLeft(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickRight(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickUp(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickDown(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickZUp(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickZDown(short wJoystickNum, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wWasJoystickButtonPressed(short wJoystickNum, u_long ulButtonFlag, short wHistoryNum);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickPreviousDirection(short wJoystickNum, short wHistoryNum, u_long *p_ulDirectionFlag);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickPreviousButton(short wJoystickNum, short wHistoryNum, u_long *p_ulButtonFlag);
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickPreviousPosition(short wJoystickNum, short wAxis, short wHistoryNum, double *pdfPosition);
|
|
/*fn_wJoyInactivityTime(short wJoystickNum , u_long *p_ulLaps);*/
|
|
/*fn_wJoyElapsedTime (short wJoystickNum , short wHistoryNum , u_long *p_ulLaps );*/
|
|
extern CPA_EXPORT short INO_fn_wGetJoystickErrorString(char **pp_szErrorString);
|
|
extern CPA_EXPORT u_long INO_fn_wJGetLastJoystickErrorCode(void);
|
|
|
|
#endif
|
|
|
|
|
|
/* Old prototype compatibility */
|
|
|
|
#define fn_wJoyInitGamePort(A) INO_fn_wInitGamePort(A)
|
|
#define fn_wJoyResetGamePort() INO_fn_wResetGamePort()
|
|
#define fn_wJoyUpdateGamePort() INO_fn_wUpdateGamePort()
|
|
#define fn_wJoyFreeGamePort() INO_fn_wFreeGamePort()
|
|
#define fn_wJoyAllocJoystick(A) INO_fn_wAllocJoystick(A)
|
|
#define fn_wJoyAllocFirstJoystickAvailable() INO_fn_wAllocFirstJoystickAvailable()
|
|
#define fn_wJoyUpdateJoystick(A) INO_fn_wUpdateJoystick(A)
|
|
#define fn_wJoyFreeJoystick(A) INO_fn_wFreeJoystick(A)
|
|
#define fn_wJoyMaximumJoystickNumber() INO_fn_wGetMaximumJoystickNumber()
|
|
#define fn_wJoyIsConnected(A) INO_fn_wIsJoystickConnected(A)
|
|
#define fn_wJoyIsAllocated(A) INO_fn_wIsJoystickAllocated(A)
|
|
#define fn_wJoySetJoystickType(A, B) INO_fn_wSetJoystickType(A, B)
|
|
#define fn_wJoyGetJoystickType(A) INO_fn_wGetJoystickType(A)
|
|
#define fn_wJoyButtonNumber(A) INO_fn_wGetJoystickButtonNumber(A)
|
|
#define fn_wJoyAxisNumber(A) INO_fn_wGetJoystickAxisNumber(A)
|
|
#define fn_wJoyMovmentCaps(A, B) INO_fn_wGetJoystickMovmentCaps(A, B)
|
|
#define fn_wJoySetActiveCaps(A) INO_fn_wSetJoystickActiveCaps(A)
|
|
#define fn_wJoySetDemoRecordExitButton(A, B) INO_fn_wSetStopRecordingJoystickButton(A, B)
|
|
#define fn_wJoySetRecordJoystick(A) INO_fn_wSetJoystickToRecord(A)
|
|
#define fn_wJoyStartDemoRecording(A, B) INO_fn_wStartRecordingJoystick(A, B)
|
|
#define fn_wJoyExitDemoRecording() INO_fn_wStopRecordingJoystick()
|
|
#define fn_wJoyStartDemoPlaying(A) INO_fn_wStartJoystickDemo(A)
|
|
#define fn_wJoyExitDemoPlaying() INO_fn_wStopJoystickDemo()
|
|
#define fn_wJoyGetCurrentMode() INO_fn_wGetJoystickCurrentMode()
|
|
#define fn_ulJoyGetDemoFrameCount() INO_fn_ulGetJoystickDemoFrameCount()
|
|
#define fn_wJoyReadJoystick(A) INO_fn_wReadJoystick(A)
|
|
#define fn_wJoyAddActiveJoystick(A) INO_fn_wAddActiveJoystick(A)
|
|
#define fn_wJoyRemoveActiveJoystick(A) INO_fn_wRemoveActiveJoystick(A)
|
|
#define fn_wJoyIsLeft(A) INO_fn_wIsJoystickLeft(A)
|
|
#define fn_wJoyIsRight(A) INO_fn_wIsJoystickRight(A)
|
|
#define fn_wJoyIsUp(A) INO_fn_wIsJoystickUp(A)
|
|
#define fn_wJoyIsDown(A) INO_fn_wIsJoystickDown(A)
|
|
#define fn_wJoyIsZUp(A) INO_fn_wIsJoystickZUp(A)
|
|
#define fn_wJoyIsZDown(A) INO_fn_wIsJoystickZDown(A)
|
|
#define fn_wJoyJustLeft(A) INO_fn_wJoystickJustLeft(A)
|
|
#define fn_wJoyJustRight(A) INO_fn_wJoystickJustRight(A)
|
|
#define fn_wJoyJustUp(A) INO_fn_wJoystickJustUp(A)
|
|
#define fn_wJoyJustDown(A) INO_fn_wJoystickJustDown(A)
|
|
#define fn_wJoyGetCurrentPosition(A, B, C) INO_fn_wGetJoystickCurrentPosition(A, B, C)
|
|
#define fn_wJoyIsButtonPressed(A, B) INO_fn_wIsJoystickButtonPressed(A, B)
|
|
#define fn_wJoyCurrentDirection(A, B) INO_fn_wGetJoystickCurrentDirection(A, B)
|
|
#define fn_wJoyCurrentButton(A, B) INO_fn_wGetJoystickCurrentButton(A, B)
|
|
#define fn_wJoyWasLeft(A, B) INO_fn_wWasJoystickLeft(A, B)
|
|
#define fn_wJoyWasRight(A, B) INO_fn_wWasJoystickRight(A, B)
|
|
#define fn_wJoyWasUp(A, B) INO_fn_wWasJoystickUp(A, B)
|
|
#define fn_wJoyWasDown(A, B) INO_fn_wWasJoystickDown(A, B)
|
|
#define fn_wJoyWasZUp(A, B) INO_fn_wWasJoystickZUp(A, B)
|
|
#define fn_wJoyWasZDown(A, B) INO_fn_wWasJoystickZDown(A, B)
|
|
#define fn_wJoyWasPressed(A, B, C) INO_fn_wWasJoystickButtonPressed(A, B, C)
|
|
#define fn_wJoyPreviousDirection(A, B, C) INO_fn_wGetJoystickPreviousDirection(A, B, C)
|
|
#define fn_wJoyPreviousButton(A, B, C) INO_fn_wGetJoystickPreviousButton(A, B, C)
|
|
#define fn_wJoyGetPreviousPosition(A, B, C, D) INO_fn_wGetJoystickPreviousPosition(A, B, C, D)
|
|
#define fn_wJoyGetErrorString(A) INO_fn_wGetJoystickErrorString(A)
|
|
#define fn_wJoyGetLastErrorCode() INO_fn_wJGetLastJoystickErrorCode()
|
|
|
|
|
|
#endif /* _INO_JOYSTICK_H_ */
|