I think it's the FIN bit! It makes sense. I added "&& (packet[2] & 0x2) == 0x2" to your "(packet[3] & 0xf) == 0xf" conditions and will test tomorrow. I believe this fixes one of the issues! :)
Let me know what you think about those stuck buttons!! The dumps say it loud and clear. :((
This is 9p flag dump. Two packets, one REAL 9p, other FAKE 9p.
[0] is the same in both, [1-3] differences shown below, [4-5] is not interesting - it's coordinates, they wouldn't put it there:
// [0] cf 11001111
// [1] 10 00010000 REAL
// [1] a 00001010 FAKE
// [2] 1a 00011010 REAL
// [2] 18 00011000 FAKE
// [3] 2f 00101111 REAL
// [3] 3f 00111111 FAKE
// [4] 0 00000000
// [5] ff 11111111
// [6] 38 00111000
// [7] 25 00100101
// [8] 2b 00101011
I think it's the FIN bit! It makes sense. I added "&& (packet[2] & 0x2) == 0x2" to your "(packet[3] & 0xf) == 0xf" conditions and will test tomorrow. I believe this fixes one of the issues! :)
Let me know what you think about those stuck buttons!! The dumps say it loud and clear. :((