|
PS2SDK
PS2 Homebrew Libraries
|
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | padButtonStatus |
Macros | |
| #define | PAD_LEFT 0x0080 |
| #define | PAD_DOWN 0x0040 |
| #define | PAD_RIGHT 0x0020 |
| #define | PAD_UP 0x0010 |
| #define | PAD_START 0x0008 |
| #define | PAD_R3 0x0004 |
| #define | PAD_L3 0x0002 |
| #define | PAD_SELECT 0x0001 |
| #define | PAD_SQUARE 0x8000 |
| #define | PAD_CROSS 0x4000 |
| #define | PAD_CIRCLE 0x2000 |
| #define | PAD_TRIANGLE 0x1000 |
| #define | PAD_R1 0x0800 |
| #define | PAD_L1 0x0400 |
| #define | PAD_R2 0x0200 |
| #define | PAD_L2 0x0100 |
| #define | PAD_STATE_DISCONN 0x00 |
| #define | PAD_STATE_FINDPAD 0x01 |
| #define | PAD_STATE_FINDCTP1 0x02 |
| #define | PAD_STATE_EXECCMD 0x05 |
| #define | PAD_STATE_STABLE 0x06 |
| #define | PAD_STATE_ERROR 0x07 |
| #define | PAD_RSTAT_COMPLETE 0x00 |
| #define | PAD_RSTAT_FAILED 0x01 |
| #define | PAD_RSTAT_BUSY 0x02 |
| #define | PAD_TYPE_NEJICON 0x2 |
| #define | PAD_TYPE_KONAMIGUN 0x3 |
| #define | PAD_TYPE_DIGITAL 0x4 |
| #define | PAD_TYPE_ANALOG 0x5 |
| #define | PAD_TYPE_NAMCOGUN 0x6 |
| #define | PAD_TYPE_DUALSHOCK 0x7 |
| #define | PAD_TYPE_JOGCON 0xE |
| #define | PAD_TYPE_EX_TSURICON 0x100 |
| #define | PAD_TYPE_EX_JOGCON 0x300 |
| #define | PAD_MODECURID 1 |
| #define | PAD_MODECUREXID 2 |
| #define | PAD_MODECUROFFS 3 |
| #define | PAD_MODETABLE 4 |
| #define | PAD_MMODE_DIGITAL 0 |
| #define | PAD_MMODE_DUALSHOCK 1 |
| #define | PAD_MMODE_UNLOCK 2 |
| #define | PAD_MMODE_LOCK 3 |
| #define | PAD_ACTFUNC 1 |
| #define | PAD_ACTSUB 2 |
| #define | PAD_ACTSIZE 3 |
| #define | PAD_ACTCURR 4 |
Functions | |
| struct padButtonStatus | __attribute__ ((packed)) |
| int | padInit (int mode) |
| int | padPortInit (int mode) |
| int | padEnd (void) |
| int | padPortOpen (int port, int slot, void *padArea) |
| int | padPortClose (int port, int slot) |
| unsigned char | padRead (int port, int slot, struct padButtonStatus *data) |
| int | padGetState (int port, int slot) |
| unsigned char | padGetReqState (int port, int slot) |
| int | padSetReqState (int port, int slot, int state) |
| void | padStateInt2String (int state, char buf[16]) |
| void | padReqStateInt2String (int state, char buf[16]) |
| int | padGetPortMax (void) |
| int | padGetSlotMax (int port) |
| int | padGetModVersion () |
| int | padInfoMode (int port, int slot, int infoMode, int index) |
| int | padSetMainMode (int port, int slot, int mode, int lock) |
| int | padInfoPressMode (int port, int slot) |
| int | padEnterPressMode (int port, int slot) |
| int | padExitPressMode (int port, int slot) |
| int | padGetButtonMask (int port, int slot) |
| int | padSetButtonInfo (int port, int slot, int buttonInfo) |
| unsigned char | padInfoAct (int port, int slot, int word, int byte) |
| int | padSetActAlign (int port, int slot, const char act_align[6]) |
| int | padSetActDirect (int port, int slot, char act_align[6]) |
| int | padGetConnection (int port, int slot) |
Variables | |
| unsigned char | ok |
| unsigned char | mode |
| unsigned short | btns |
| unsigned char | rjoy_h |
| unsigned char | rjoy_v |
| unsigned char | ljoy_h |
| unsigned char | ljoy_v |
| unsigned char | right_p |
| unsigned char | left_p |
| unsigned char | up_p |
| unsigned char | down_p |
| unsigned char | triangle_p |
| unsigned char | circle_p |
| unsigned char | cross_p |
| unsigned char | square_p |
| unsigned char | l1_p |
| unsigned char | r1_p |
| unsigned char | l2_p |
| unsigned char | r2_p |
| unsigned char | unkn16 [12] |
Pad externals
Definition in file libpad.h.
| struct padButtonStatus |
| struct padButtonStatus __attribute__ | ( | (packed) | ) |
Definition at line 20 of file gpt_types.h.
|
extern |
Initialise libpad
| mode | Must be set to 0. |
Definition at line 297 of file libpad.c.
References padPortInit().
|
extern |
Initialise pad ports. Automatically called by padInit(), there is no need to call this function directly.
| mode | Must be set to 0. |
Note: PADMAN from release 1.3.4 does not have this function implemented. As a result, it is impossible to reinitialize libpad after calling padEnd().
Definition at line 338 of file libpad.c.
References PadState.
Referenced by padInit().
|
extern |
Ends all pad communication Note: PADMAN from release 1.3.4 does not have padPortInit implemented. As a result, it is impossible to reinitialize libpad after calling padEnd(). This was known as padClose in the really early official SDK releases.
|
extern |
| port | Port to open |
| slot | Slot to open |
| padArea | The address of the buffer for storing the pad status. Must be a 256-byte region (2xsizeof(struct pad_data). Must be a 64-byte aligned address. For the old libpad, at least 16-bytes alignment. |
Definition at line 394 of file libpad.c.
References PadState.
Referenced by pad_open().
|
extern |
Closes an opened port.
| port | Port to close |
| slot | Slot to close |
Definition at line 451 of file libpad.c.
References PadState.
Referenced by pad_close(), and padEnd().
|
extern |
Read pad data
| port | Port number of the pad to get the status for. |
| slot | Slot number of the pad to get the status for. |
| data | A pointer to a 32 byte array where the result is stored |
Definition at line 472 of file libpad.c.
References padGetDmaStr().
Referenced by pad_get_buttons().
|
extern |
Get current pad state Wait until state == 6 (Ready) before trying to access the pad
Definition at line 484 of file libpad.c.
References padGetDmaStr(), and padGetReqState().
Referenced by pad_get_state().
|
extern |
Get pad request state
Definition at line 513 of file libpad.c.
References padGetDmaStr().
Referenced by padGetState().
|
extern |
Set pad request state (after a param setting) No need to export this one perhaps..
Definition at line 523 of file libpad.c.
References padGetDmaStr().
Referenced by padInfoAct(), padInfoMode(), padSetActAlign(), and padSetMainMode().
|
extern |
|
extern |
|
extern |
|
extern |
|
extern |
Get pad info (digital (4), dualshock (7), etc..)
Definition at line 590 of file libpad.c.
References padGetDmaStr(), and padSetReqState().
Referenced by pad_get_num_modes(), pad_get_type(), pad_has_type(), and pad_init_actuators().
|
extern |
mode = 1, -> Analog/dual shock enabled; mode = 0 -> Digital lock = 3 -> Mode not changeable by user
Definition at line 658 of file libpad.c.
References padSetReqState().
Referenced by pad_set_mode().
|
extern |
Check if the pad has pressure sensitive buttons
Definition at line 677 of file libpad.c.
Referenced by pad_set_sensitivity().
|
extern |
Pressure sensitive mode ON
Definition at line 692 of file libpad.c.
Referenced by pad_set_sensitivity().
|
extern |
Check for newer version Pressure sensitive mode OFF
Definition at line 698 of file libpad.c.
Referenced by pad_set_sensitivity().
|
extern |
|
extern |
Get actuator status for this controller If padInfoAct(port, slot, -1, 0) != 0, the controller has actuators (i think ;) )
Definition at line 740 of file libpad.c.
References padGetDmaStr(), and padSetReqState().
Referenced by pad_init_actuators().
|
extern |
Initalise actuators. On dual shock controller: act_align[0] = 0 enables 'small' engine act_align[1] = 1 enables 'big' engine set act_align[2-5] to 0xff (disable)
Definition at line 779 of file libpad.c.
References padSetReqState().
Referenced by pad_init_actuators().
|
extern |
Set actuator status on dual shock controller, act_align[0] = 0/1 turns off/on 'small' engine act_align[1] = 0-255 sets 'big' engine speed
Definition at line 802 of file libpad.c.
Referenced by pad_set_actuators().
|
extern |