CASE NewState OF
0: // STATE 0
IF OldState <> NewState
// DO OTHER ON ENTRY CODE HERE
OldState = NewState
END_IF
// DO CODE THAT GET EXECUTED EVERY SCAN HERE. POSSIBLY CHANGE NewState TO THE NEXT STATE
IF OldState <> NewState THEN
// DO CLEAN UP CODE FOR CURRENT STATE ON EXITING STATE
END_IF
1: // STATE 1
IF OldState <> NewState
// DO OTHER ON ENTRY CODE HERE
OldState = NewState
END_IF
// DO CODE THAT GET EXECUTED EVERY SCAN HERE. POSSIBLY CHANGE NewState TO THE NEXT STATE
IF OldState <> NewState THEN
// DO CLEAN UP CODE FOR CURRENT STATE ON EXITING STATE
END_IF
2: // STATE 2
IF OldState <> NewState
// DO OTHER ON ENTRY CODE HERE
OldState = NewState
END_IF
// DO CODE THAT GET EXECUTED EVERY SCAN HERE. POSSIBLY CHANGE NewState TO THE NEXT STATE
IF OldState <> NewState THEN
// DO CLEAN UP CODE FOR CURRENT STATE ON EXITING STATE
END_IF
3: // STATE 3
IF OldState <> NewState
// DO OTHER ON ENTRY CODE HERE
OldState = NewState
END_IF
// DO CODE THAT GET EXECUTED EVERY SCAN HERE. POSSIBLY CHANGE NewState TO THE NEXT STATE
IF OldState <> NewState THEN
// DO CLEAN UP CODE FOR CURRENT STATE ON EXITING STATE
END_IF
// ADD STATES AS NECESSARY
END_CASE