\n"),
sp->loco,slot,sp->speedCode,sp->functions);
SHOVE(COMMAND_TYPE)
#ifdef CD_HANDLE_RING
WiThrottle::markForBroadcast(sp->loco);
#endif
}
void CommandDistributor::broadcastPower() {
bool main=TrackManager::getMainPower()==POWERMODE::ON;
bool prog=TrackManager::getProgPower()==POWERMODE::ON;
bool join=TrackManager::isJoined();
const FSH * reason=F("");
char state='1';
if (main && prog && join) reason=F(" JOIN");
else if (main && prog);
else if (main) reason=F(" MAIN");
else if (prog) reason=F(" PROG");
else state='0';
FLUSH
StringFormatter::send(BUFFER,F("\n"),state,reason);
SHOVE(COMMAND_TYPE)
#ifdef CD_HANDLE_RING
FLUSH
StringFormatter::send(BUFFER,F("PPA%c\n"), main?'1':'0');
SHOVE(WITHROTTLE_TYPE)
#endif
LCD(2,F("Power %S%S"),state=='1'?F("On"):F("Off"),reason);
}
void CommandDistributor::broadcastText(const FSH * msg) {
FLUSH
StringFormatter::send(BUFFER,F("%S"),msg);
SHOVE(COMMAND_TYPE)
#ifdef CD_HANDLE_RING
FLUSH
StringFormatter::send(BUFFER,F("Hm%S\n"), msg);
SHOVE(WITHROTTLE_TYPE)
#endif
}