teensytp: initial implementation (derived from teensytas)
[megadrive.git] / teensytp / pkts.h
1
2 enum tas_pkt_type {
3         PKT_UPD_MODE = 0xe301, // op_mode
4         PKT_UPD_BTNS = 0xe302,
5 };
6
7 struct tp_pkt {
8         uint16_t type;
9         uint16_t pad;
10         union {
11                 uint8_t data[60];
12                 uint32_t mode;
13                 struct {
14                         uint32_t changed_players;
15                         uint32_t bnts[4]; // MXYZ SACB RLDU
16                 };
17         };
18 } __attribute__((packed));
19
20 enum op_mode {
21         OP_MODE_3BTN = 0,
22         OP_MODE_6BTN = 1,
23         OP_MODE_TEAMPLAYER = 2,
24 };