mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-11-27 01:56:14 +01:00
handle decoders that do not ack better
This commit is contained in:
parent
02ed7828c1
commit
27a458a850
16
DCC.cpp
16
DCC.cpp
|
@ -498,8 +498,8 @@ const ackOp FLASH SHORT_LOCO_ID_PROG[] = {
|
||||||
V0,WACK,NAKFAIL,
|
V0,WACK,NAKFAIL,
|
||||||
SETCV, (ackOp)1,
|
SETCV, (ackOp)1,
|
||||||
SETBYTEL, // low byte of word
|
SETBYTEL, // low byte of word
|
||||||
WB,WACK, // some decoders don't ACK writes
|
WB,WACK,ITC1, // If ACK, we are done - callback(1) means Ok
|
||||||
VB,WACK,ITCB,
|
VB,WACK,ITC1, // Some decoders do not ack and need verify
|
||||||
CALLFAIL
|
CALLFAIL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -517,13 +517,17 @@ const ackOp FLASH LONG_LOCO_ID_PROG[] = {
|
||||||
// Store high byte of address in cv 17
|
// Store high byte of address in cv 17
|
||||||
SETCV, (ackOp)17,
|
SETCV, (ackOp)17,
|
||||||
SETBYTEH, // high byte of word
|
SETBYTEH, // high byte of word
|
||||||
WB,WACK,
|
WB,WACK, // do write
|
||||||
VB,WACK,NAKFAIL,
|
ITSKIP, // if ACK, jump to SKIPTARGET
|
||||||
|
VB,WACK, // try verify instead
|
||||||
|
ITSKIP, // if ACK, jump to SKIPTARGET
|
||||||
|
CALLFAIL, // if still here, fail
|
||||||
|
SKIPTARGET,
|
||||||
// store
|
// store
|
||||||
SETCV, (ackOp)18,
|
SETCV, (ackOp)18,
|
||||||
SETBYTEL, // low byte of word
|
SETBYTEL, // low byte of word
|
||||||
WB,WACK,
|
WB,WACK,ITC1, // If ACK, we are done - callback(1) means Ok
|
||||||
VB,WACK,ITC1, // callback(1) means Ok
|
VB,WACK,ITC1, // Some decoders do not ack and need verify
|
||||||
CALLFAIL
|
CALLFAIL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user