/* $Id$
This file is part of the MSP Märklin suite
-Copyright © 2007-2008 Mikkosoft Productions, Mikko Rasa
+Copyright © 2007-2009 Mikkosoft Productions, Mikko Rasa
Distributed under the GPL
*/
if(serial_fd>=0)
queue.front().send(serial_fd);
else
+ {
+ Reply reply = Reply::simulate(queue.front().get_command());
+ queue.front().signal_done.emit(reply);
queue.erase(queue.begin());
+ }
}
}
command(CMD_EVENT_TURNOUT).signal_done.connect(sigc::mem_fun(this, &Control::turnout_event_done));
if(data[0]&0x04)
command(CMD_EVENT_SENSOR).signal_done.connect(sigc::mem_fun(this, &Control::sensor_event_done));
- if(data[1]&0x40)
+ if((data[0]&0x80) && (data[1]&0x40))
command(CMD_STATUS).signal_done.connect(sigc::mem_fun(this, &Control::status_done));
}