12#ifndef __FREEPAD_SIO2CMDS_H__
13#define __FREEPAD_SIO2CMDS_H__
15#define SIO2_CMD_MAX 16
17#define PAD_ID_FINDPADS 0x01
18#define PAD_ID_MOUSE 0x12
19#define PAD_ID_NEGICON 0x23
20#define PAD_ID_KONAMIGUN 0x31
21#define PAD_ID_DIGITAL 0x41
22#define PAD_ID_JOYSTICK 0x53
23#define PAD_ID_NAMCOGUN 0x63
24#define PAD_ID_ANALOG 0x73
25#define PAD_ID_ANALOG2 0x79
26#define PAD_ID_MULTITAP 0x80
27#define PAD_ID_JOGCON 0xE3
28#define PAD_ID_JOGCON2 0xE5
29#define PAD_ID_CONFIG 0xF3
31#define PAD_ID_HI(id) ((id)>>4)
32#define PAD_ID_LO(id) ((id)&0xF)
34void sio2cmdReset(
void);
35void sio2cmdInitFindPads(
void);
36void sio2cmdInitMouse(
void);
37void sio2cmdInitNegicon(
void);
38void sio2cmdInitKonamiGun(
void);
39void sio2cmdInitDigital(
void);
40void sio2cmdInitJoystick(
void);
41void sio2cmdInitNamcoGun(
void);
42void sio2cmdInitAnalog(
void);
43void sio2cmdInitJogcon(
void);
44void sio2cmdInitConfig(
void);
46u32 sio2cmdCheckId(u8
id);
48void sio2CmdSetReadData(u32
id, u8 *buf);
49u32 sio2CmdSetEnterConfigMode(u32
id, u8 *buf);
50u32 sio2CmdSetExitConfigMode(u32
id, u8 *buf);
51u32 sio2CmdSetQueryModel(u32
id, u8 *buf);
52u32 sio2CmdSetQueryAct(u32
id, u8 *buf);
53u32 sio2CmdSetQueryComb(u32
id, u8 *buf);
54u32 sio2CmdSetQueryMode(u32
id, u8 *buf);
55u32 sio2CmdSetQueryButtonMask(u32
id, u8 *buf);
56u32 sio2CmdSetSetButtonInfo(u32
id, u8 *buf);
57u32 sio2CmdSetSetVrefParam(u32
id, u8 *buf);
58u32 sio2CmdSetSetMainMode(u32
id, u8 *buf);
59u32 sio2CmdSetSetActAlign(u32
id, u8 *buf);
61u32 sio2CmdGetPortCtrl1(u8
id, u32 b, u8 c);
62u32 sio2CmdGetPortCtrl2(u32
id, u32 b);