Jump to content

Talk:Technical Reference:State Definition: Difference between revisions

From BCI2000 Wiki
Cstocks (talk | contribs)
m State Vector: Finally got it correct
Cstocks (talk | contribs)
m State Vector: Finally correct, again. I made a mistake before.
Line 30: Line 30:
!7!!6!!5!!4!!3!!2!!1!!0
!7!!6!!5!!4!!3!!2!!1!!0
|-
|-
!colspan="7"|SourceTime!!Running!!colspan="9"|SourceTime!!colspan="7"|unused
!colspan="7"|SourceTime!!Running!!colspan="8"|SourceTime!!colspan="7"|unused!!SourceTime
|-
|-
!6!!5!!4!!3!!2!!1!!0!!0!!14!!13!!12!!11!!10!!9!!8!!7!!15
!6!!5!!4!!3!!2!!1!!0!!0!!14!!13!!12!!11!!10!!9!!8!!7!!colspan="7"| !!15
!colspan="7"| 
|}
|}

Revision as of 00:45, 1 January 2010

State Vector

The section on state vectors is totally wrong. After reverse-engineering some data files with the help of the BCI2000Viewer, it appears that the state vectors are actually encoded in reverse-big-endian. In other words, if smaller numbers represent lower order bits, then the state vector layout mentioned in this section would actually be encoded as follows:

State Vector Byte 1 State Vector Byte 2 State Vector Byte 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Running SourceTime unused
0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15  

Which on the physical machine actually maps to:

State Vector Byte 1 State Vector Byte 2 State Vector Byte 3
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
SourceTime Running SourceTime unused SourceTime
6 5 4 3 2 1 0 0 14 13 12 11 10 9 8 7   15