0 :SATURN port 1 or multi-tap 1 connected to port 1 | 5: Port 1 multi-tap number 6 | (Reservation) 14: Port 1 multi-tap number 15 15: SATURN port 2 or multi tap 1 connected to port 2 | 19: Port 2 multi-tap number 6 | (Reservation) 29: Port 2 multi-tap number 15It will be.
Peripheral data itself is referenced with the same variable regardless of the device type. For non-digital devices, please cast and use according to the type.
PerAnalog: | For racing controller, mission stick |
PerPoint: | for mouse |
PerKeyBoard: | for keyboard |
PER_ID_StnPad 0x02 /* Saturn standard pad */ PER_ID_StnLacing 0x13 /* Saturn Racing Controller */ PER_ID_StnAnalog 0x15 /* Saturn analog joystick */ PER_ID_StnKeyBoard 0x34 /* Saturn keyboard */ PER_ID_MD3BtnPad 0xe1 /* Mega Drive 3 Button Pad */ PER_ID_MD6BtnPad 0xe2 /* Mega Drive 6 Button Pad */ PER_ID_ShuttleMouse 0xe3 /* Shuttle Mouse */ PER_ID_NotConnect 0xff /* Not connected */
typedef struct { /* marcon */ Uint8 id; /* Peripheral ID */ Uint8 ext; /* Extended data size */ Uint16 data; /* Button current data */ Uint16 push; /* Button press data */ Uint16 pull; /* Button pull data */ Uint8 x; /* X-axis data absolute value */ Uint8 y; /* Y-axis data absolute value */ Uint8 r; /* R-axis data absolute value */ Uint8 l; /* L axis data absolute value */ Uint32 dummy2[3]; /* dummy2 */ } PerMultiControler;