57d56
< ackNext(false),
69d67
< SERIALIZE_SCALAR(ackNext);
78d75
< UNSERIALIZE_SCALAR(ackNext);
82,83c79,80
< void
< PS2TouchKit::recv(uint8_t data)
---
> bool
> PS2TouchKit::recv(const std::vector<uint8_t> &data)
85,91c82
< if (ackNext) {
< ackNext--;
< sendAck();
< return;
< }
<
< switch (data) {
---
> switch (data[0]) {
95c86
< break;
---
> return true;
101,102c92
< ackNext = 1;
< break;
---
> return data.size() == 2;
107c97
< break;
---
> return true;
116c106
< break;
---
> return true;
124c114
< break;
---
> return true;
131c121
< break;
---
> return true;
134d123
< ackNext = 2;
136,138c125,128
< send(Ps2::TouchKitId);
< send(1);
< send('A');
---
> if (data.size() == 1) {
> send(Ps2::TouchKitId);
> send(1);
> send('A');
140,141c130,136
< driverInitialized = true;
< break;
---
> return false;
> } else if (data.size() == 3) {
> driverInitialized = true;
> return true;
> } else {
> return false;
> }
144c139
< panic("Unknown byte received: %d\n", data);
---
> panic("Unknown byte received: %d\n", data[0]);