#define D_FWD 0 #define D_REV 1 #define D_OFF 2 #define D_FLT 3 void DFwdLeft() {Off (DRIVE_L); OnFwd(DRIVE_R);} void DFwd() {OnFwd(DRIVE_L | DRIVE_R);} void DFwdRight() {OnFwd(DRIVE_L); Off(DRIVE_R);} void DLeft() {SetDirection(DRIVE_L, OUT_REV); SetDirection(DRIVE_R, OUT_FWD); On(DRIVE_L + DRIVE_R);} void DRight() {SetDirection(DRIVE_L, OUT_FWD); SetDirection(DRIVE_R, OUT_REV); On(DRIVE_L + DRIVE_R);} void DRev() {OnRev(DRIVE_L | DRIVE_R);} void DRevLeft() {OnRev(DRIVE_L); Off(DRIVE_R);} void DRevRight() {Off (DRIVE_L); OnRev(DRIVE_R);} void DStop() {Off (DRIVE_L | DRIVE_R);} void Drive(const int left, const int right) { if (left == D_FWD) OnFwd(DRIVE_L); if (left == D_REV) OnRev(DRIVE_L); if (left == D_OFF) Off(DRIVE_L); if (left == D_FLT) Float(DRIVE_L); if (right == D_FWD) OnFwd(DRIVE_R); if (right == D_REV) OnRev(DRIVE_R); if (right == D_OFF) Off(DRIVE_R); if (right == D_FLT) Float(DRIVE_R); } void DriveOld(const int left, const int right) { switch (left) { case D_FWD: OnFwd(DRIVE_L); break; case D_REV: OnRev(DRIVE_L); break; case D_OFF: Off(DRIVE_L); break; case D_FLT: Float(DRIVE_L); break; } switch (right) { case D_FWD: OnFwd(DRIVE_R); break; case D_REV: OnRev(DRIVE_R); break; case D_OFF: Off(DRIVE_R); break; case D_FLT: Float(DRIVE_R); break; } }