Re: 16-bit value in 3 bytes?
- From: Thad Smith <ThadSmith@xxxxxxx>
- Date: Fri, 25 Jul 2008 22:03:23 -0600
Andre-John Mas wrote:
I recently got myself a 'Spaceball 5000' and since there is no driver
for my platform, I am trying to reverse engineer the protocol. The
place where I am stuck is that a given value for a rotation is
represented as a 16-bit signed integer, using four bytes. From what I
can tell the first byte represents the sign and the remaining 3 bytes
are used to encode the value using the characters ".023569:<?
ABCDEGHKLMNPSenors", so no more than 7 bits are used in each 8 bit
value. Additionally the first of the four bytes either has a value H
or G, which I believe might represent the sign.
Can anyone help me working out how the 16-bit value is being encoded?
Is there a better place to ask this question?
You listed 28 characters for numeric encoding. Three characters would give 28^3 = 21952 possible values, less than 15 bits. If there were 32 characters, you would encode 5 bits for each character, yielding 15 bits for 3 characters, plus 1 character for sign, giving 2^16 -1 possible values.
--
Thad
.
- References:
- 16-bit value in 3 bytes?
- From: Andre-John Mas
- 16-bit value in 3 bytes?
- Prev by Date: Genital Hair Removal
- Next by Date: Re: Program compression
- Previous by thread: Re: 16-bit value in 3 bytes?
- Next by thread: Re: 16-bit value in 3 bytes?
- Index(es):
Relevant Pages
|