7f 7f 00 64 41 97 output bytes
01111111 01111111 00000000 01100100 01000001 10010111 as bits
>1111111 >1111111 >0000000 >1100100 >1000001 $0010111 top bit: >/$ for pic
-
+
1111111 1111111 0 00000011 0 01001000 0 01001011 1 reorg bits for nmra:
preamble (14) S 0AAAAAAA P 01DCSSSS 0 EEEEEEEE 1
03 (+) 48 = 4b ok
To test:
>t; ./hostside t 0348 n && binview t
+
+
+
+
+Protocol over new hostside stdin:
+
+ P> nmra-x <nmra-command> [<nmra-args>...]
+ P> nmra-1 <nmra-command> [<nmra-args>...]
+ P> nmra-raw-x <nmra-data-hex>...
+ P> nmra-raw-1 <nmra-data-hex>...
+ *-1 means transmit it once
+ *-x means put it in the transmission cycle; to cancel,
+ ask for nmra-x idle
+
+ P> raw <pic-command-data-hex>...
+ P> pic <pic-command> [<pic-args>...]
+ eg pic point 3 == raw a003
+ for commands with no `...' in README.protocol only
+ P> polarity <bit-string-in-hex>....
+ where, eg, with 14 segments,
+ [ 1] [111 1111] reversible
+ [123] [56 7890] [123 4567] segment number
+ 1 0010 000 1 000 1000 0 111 1010 example POLARITY
+ 1 0010 RRR 1 RRR RRRR 0 RRR R--- from README.protocol
+ RRR RRR RRRR RRR R actual R bits
+ \__ ___/\__ ___/ ... which map ...
+ RRRRRRRR RRRRRR ... into data ...
+ RRRRRRRR RRRRRR-- ... like this.
+ 00000010 00111100
+ [ 1111111] reversible
+ [12345678] [90123456] segment number
+ 0x02 0x3c hex values
+ 023c hex data string
+
+ U< count <type> <number-in-decimal>
+ eg count polarity 14
+ U< pic detect 1|0 <S>
+ U< pic point <P>
+ U< pic pointed <P>
+ U< pic charged <P>
+ U< polarity <bit-string-in-hex>....
+ U< polarised <bit-string-in-hex>....