Arkkitehtuurin avainkohdat
Tilakone (State Machine): Ohjelma lukee yhden tavun selvittC$C$kseen viestin
tyypin, ja sitten tarkalleen sen verran tavuja kuin RFB-protokollaspesifikaatio
vaatii kyseiselle viestille. TC$mC$ estC$C$ proxya "haistelemasta" dataa
vC$C$rC$stC$ kohtaa streamia.
Endianness: struct.unpack('>HH', payload[1:5]) on kriittinen. RFB-protokolla
kC$yttC$C$ aina verkon tavujC$rjestystC$ (Big-Endian), joten paketoimme datan
oikein kC$yttC6jC$rjestelmC$n arkkitehtuurista riippumatta.
Button Mask: RFB-protokollan Mask on tehokas. Jos arvo on 0, hiirtC$ vain
liikutetaan (Hover). Bitti 0 on vasen klikki, bitti 1 on keskiklikki, bitti 2
on oikea. Koodi suodattaa puhtaat liikkeet pois ja reagoi vain painalluksiin.