chiark / gitweb /
Merge and end branch-hostside-wip-2008-01-25 PROPERLY; cvs up -j branch-hostside...
[trains.git] / cebpic / README.protocol
index df31395c25d08045bf0ff54cc05282694f8f2360..5169771f37302f4419d0d091e9160e29f873c91f 100644 (file)
@@ -24,7 +24,7 @@ From host to PIC:
  > 0 0010 000             (10) OFF       Power off
 
 ;> 00000000                     CRASHED   Acknowledge panic, go to readout mode
-;> 00001002               (0a) TELLMODE  Confirm mode - say HELLO or CRASHED
+;> 00001010               (0a) TELLMODE  Confirm mode - say HELLO or CRASHED
 ;                                          if crashed, undoes the effect of ack
 
 ; In crash readout mode:
@@ -60,9 +60,10 @@ From PIC to host:
 
  < 1 001Y SSS  0 SSSSSSS  (9?) DETECT    Train is (Y=1) or is not (Y=0) at S
  < 1 0001 XXX  0 XXXXXXX  (88+)        PONG      Pong `X' (reply to Ping `X')
+ < 1 100 0001  0 NNNNNNN  (ENQ) SPURIOUS  Number of spurious fault interrupts
  < 0 000 1001             (HT)  HELLO    I am booted
  < 0 000 1011             (VT)  AAARGH   Followed by debug chars (only)
- < 0 000 1101             (CR)  WATCHDOG  Timeout happened
+ < 0 000 1101             (CR)  WTIMEOUT  Watchdog timeout happened
  < 0 000 0111             (BEL) FAULT    Fault exists
  < 0 000 0110             (ACK) FIXED    Fault now fixed
  < 0 0100 PPP             (20+)        POINTED   Point change done using capacitor P
@@ -193,7 +194,8 @@ Bits which do not correspond to defined reversal segments will be
 ignored by the PICs.  The host must send exactly as many bytes as are
 necessary to include all of the reversal segments for each reversers
 board (for every potential reversal segment, regardless of whether
-that segment is a defined segment corresponding to some actual track).
+that segment is a defined segment corresponding to some actual track;
+however a board with _no_ reversers segments used does not count).
 
 For example, if there are 14 reversible segments (numbered 1 to 14)
 then the following message