#define offset 16 task main() { int msg; SetPower(OUT_A+OUT_B+OUT_C, OUT_FULL); while(1) { ClearMessage(); //while(Message() == 0); msg = Message(); while (msg == 0) { msg = Message(); } if (msg >=offset && msg <= offset+16) { if(msg == offset) { OnRev(OUT_A); } else if(msg == 1+offset) { OnFwd(OUT_A); } else if(msg == 2+offset) { Off(OUT_A); } else if(msg == 3+offset) { OnFwd(OUT_B); } else if(msg == 4+offset) { OnRev(OUT_B); } else if(msg == 5+offset) { Off(OUT_B); } else if(msg == 6+offset) { OnFwd(OUT_C); } else if(msg == 7+offset) { OnRev(OUT_C); } else if(msg == 8+offset) { Off(OUT_C); } else if(msg == 9+offset) { Off(OUT_A+OUT_B+OUT_C); } } } }