mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-12-23 21:01:25 +01:00
WRITE CV ON PROG <W CV VALUE>
Callback parameters are now optional on PROG
This commit is contained in:
parent
0dc91451d9
commit
b2df10a99a
@ -352,7 +352,9 @@ void DCCEXParser::parse(Print *stream, byte *com, RingStream * ringStream)
|
|||||||
break;
|
break;
|
||||||
if (params == 1) // <W id> Write new loco id (clearing consist and managing short/long)
|
if (params == 1) // <W id> Write new loco id (clearing consist and managing short/long)
|
||||||
DCC::setLocoId(p[0],callback_Wloco);
|
DCC::setLocoId(p[0],callback_Wloco);
|
||||||
else // WRITE CV ON PROG <W CV VALUE [CALLBACKNUM] [CALLBACKSUB]>
|
else if (params == 4) // WRITE CV ON PROG <W CV VALUE [CALLBACKNUM] [CALLBACKSUB]>
|
||||||
|
DCC::writeCVByte(p[0], p[1], callback_W4);
|
||||||
|
else // WRITE CV ON PROG <W CV VALUE>
|
||||||
DCC::writeCVByte(p[0], p[1], callback_W);
|
DCC::writeCVByte(p[0], p[1], callback_W);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -947,7 +949,14 @@ void DCCEXParser::commitAsyncReplyStream() {
|
|||||||
void DCCEXParser::callback_W(int16_t result)
|
void DCCEXParser::callback_W(int16_t result)
|
||||||
{
|
{
|
||||||
StringFormatter::send(getAsyncReplyStream(),
|
StringFormatter::send(getAsyncReplyStream(),
|
||||||
F("<r%d|%d|%d %d>\n"), stashP[2], stashP[3], stashP[0], result == 1 ? stashP[1] : -1);
|
F("<r %d %d>\n"), stashP[0], result == 1 ? stashP[1] : -1);
|
||||||
|
commitAsyncReplyStream();
|
||||||
|
}
|
||||||
|
|
||||||
|
void DCCEXParser::callback_W4(int16_t result)
|
||||||
|
{
|
||||||
|
StringFormatter::send(getAsyncReplyStream(),
|
||||||
|
F("<r%d|%d|%d %d>\n"), stashP[2], stashP[3], stashP[0], result == 1 ? stashP[1] : -1);
|
||||||
commitAsyncReplyStream();
|
commitAsyncReplyStream();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user