chiark / gitweb /
new watchdog feature
[trains.git] / detpic / morse.messages
1 # This is the list of morse panic messages.  Each line consists of:
2 #    <morse>  [<address>,<address>...]   [; <description>]
3 # This file is converted to morse.asm by the Perl script morse.asm-gen.
4 # See morse.asm-gen for information about the format of the data stored
5 # in flash.  Only addresses in the Access Bank are supported.
6
7 # Suggested output by on the per-pic-led is:
8 #    morse (red/black)   contents of one address
9 #    morse (red/black)   contents of next address
10 #    ...
11 #    morse (red/black)   contents of last address
12 #    long pause
13 #    go back to start
14 # Contents of addresses should preferably be read into a temporary
15 # buffer space somewhere so that each one is read once and that value
16 # remembered.
17
18 # Temporary entries for testing and development
19 TM      PIE1,SSPSTAT,SSPCON1,SSPCON2 ; Master got I2C interrupt
20 TI1                             ; for iwj
21 TI2                             ; for iwj
22 TI3                             ; for iwj
23 TI4                             ; for iwj
24 TI5                             ; for iwj
25
26 # Main message listing.  Kept sorted by section for easy reference.
27 # -----------------------------------------------------------------
28
29 # Miscellaneous
30 E                               ; `expected'; we were told to panic
31 T                               ; master paniced because slave paniced
32
33 # Regarding communications from the host
34 HX      ::t                     ; host sent unknown command
35 HW      ::t                     ; host sent message which was too long
36 HO                              ; host RS232 read overrun
37 HF                              ; host RS232 framing error
38 HN                              ; host sent too much NMRA - buffers full
39 HM                              ; host sent too much NMRA - ack count overflow
40 HB                              ; data for host overran buffer
41 HP                              ; host sent >2-byte PING command
42
43 # Regarding communications by master with slaves
44 MX                              ; slave (or intern) sent bad extra byte
45 MR      mascan:b,mascan:cslot   ; reversers set byte with zz bit set
46 MD                              ; i2cmu_done !
47
48 # Problematic interrupts
49 IH      INTCON,INTCON3,PIR1,PIR2,PIR3 ; Interrupt source not found (high pri.)
50 IL      INTCON,INTCON3,PIR1,PIR2,PIR3 ; Interrupt source not found (low pri.)
51
52 # W - watchdog
53 WX                                      ; bad watchdog command
54
55 # Messages for i2clib, S*
56 SM      i2clib+panic:st,:sspstat,:sspcon1,:sspcon2 ; m.,i., ctrlr bad state
57 SS      SSPSTAT,SSPCON1                 ; s.,i., controller bad state
58 SK      i2clib+panic:slave              ; m. couldn't address slave (no ack)
59 SN      i2clib+panic:slave              ; improper slave number
60 SO      i2clib+panic:slave              ; improper next slave number
61 SB      i2clib+panic:st                 ; improper i2cm_{read,write}_start
62 SF      i2clib+panic:st                 ; improper i2cmu_write_next_byte Z
63 SA      i2clib+panic:st                 ; improper i2cm_read_another
64 SD      i2clib+panic:st                 ; impr. i2cm_read_done/i2cs_read_data
65
66 # Messages for slave detection/i2c
67 DQ      FSR2L,::outmsg_end              ; previous slave read incomplete
68 DR      FSR2L,::outmsg_end              ; slave read overrun
69 DX      ::t                             ; slave received wrong message byte
70 DB      detect:message_buffer           ; slave_add_short_message overrun
71 DF      ::t                             ; slave pic2detinfo[0] invalid bits
72 DG      ::t                             ; too many slaves in pic2detinfo
73 DM      detect:buf0                     ; master has MM bit set in buf0
74
75 # Messages for specific peripherals:
76 # R - Reversers (polarity)
77 RS      FSR0L                           ; POLARITY message too short
78 RL      FSR0L                           ; POLARITY message too long
79 RF                                      ; master board has no reversers
80 RG                                      ; too many reversers boards
81
82 # P - Points
83 PB      points:pointmsg                 ; Firing point when already busy
84 PI      points:pointmsg,T3CON           ; Unexpected Timer 3 interrupt
85 PU      points:pointmsg                 ; Firing nonexistent point
86 PC                                      ; Firing point when CDU empty
87 PS      points:pointslave,points:pointmsg ; Firing point on nonexistent board
88 PF      ::t                             ; Flash mentions point not on board
89 PX                                      ; Host sent >2-byte POINT command
90 PM                                      ; Firing point when master/CDU busy
91 PQ                                      ; POINTED when already charging
92 PA                                      ; POINTED when already firing