1 0 NOP 2 1 CLEAR_REMOTE_BUSY 3 2 CONNECT_INDICATION 4 3 CONNECT_CONFIRM 5 4 DATA_INDICATION 6 5 DISCONNECT_INDICATION 7 6 DUMMY_6 8 7 RESET_CONFIRM 9 8 DUMMY_8 10 9 IF_F=1_CLEAR_REMOTE_BUSY 11 10 IF_DATA_FLAG=2_STOP_REJ_TIMER 12 11 SEND_DISC_CMD(P=X) 13 12 SEND_DM_RSP(F=X) 14 13 SEND_FRMR_RSP(F=X) 15 14 RE-SEND_FRMR_RSP(F=0) 16 15 RE-SEND_FRMR_RSP(F=P) 17 16 SEND_I_CMD(P=1) 18 17 RE-SEND_I_CMD(P=1) 19 18 RE-SEND_I_CMD(P=1)_OR_SEND_RR 20 19 SEND_I_XXX(X=0) 21 20 RE-SEND_I_XXX(X=0) 22 21 RE-SEND_I_XXX(X=0)_OR_SEND_RR 23 22 RE-SEND_I_RSP(F=1) 24 23 SEND_REJ_CMD(P=1) 25 24 SEND_REJ_RSP(F=1) 26 25 SEND_REJ_XXX(X=0) 27 26 SEND_RNR_CMD(F=1) 28 27 SEND_RNR_RSP(F=1) 29 28 SEND_RNR_XXX(X=0) 30 29 SET_REMOTE_BUSY 31 30 OPTIONAL_SEND_RNR_XXX(X=0) 32 31 SEND_RR_CMD(P=1) 33 32 SEND_ACKNOWLEDGE_CMD(P=1) 34 33 SEND_RR_RSP(F=1) 35 34 SEND_ACKNOWLEDGE_RSP(F=1) 36 35 SEND_RR_XXX(X=0) 37 36 SEND_ACKNOWLEDGE_XXX(X=0) 38 37 SEND_SABME_CMD(P=X) 39 38 SEND_UA_RSP(F=X) 40 39 S_FLAG:=0 41 40 S_FLAG:=1 42 41 START_P_TIMER 43 42 START_ACK_TIMER 44 43 START_REJ_TIMER 45 44 START_ACK_TIMER_IF_NOT_RUNNING 46 45 STOP_ACK_TIMER 47 46 STOP_P_TIMER 48 47 STOP_REJ_TIMER 49 48 STOP_ALL_TIMERS 50 49 STOP_OTHER_TIMERS 51 50 UPDATE_N(R)_RECEIVED 52 51 UPDATE_P_FLAG 53 52 DATA_FLAG:=2 54 53 DATA_FLAG:=0 55 54 DATA_FLAG:=1 56 55 IF_DATA_FLAG_=0_THEN_DATA_FLAG:=1 57 56 P_FLAG:=0 58 57 P_FLAG:=P 59 58 REMOTE_BUSY:=0 60 59 RETRY_COUNT:=0 61 60 RETRY_COUNT:=RETRY_COUNT+1 62 61 V(R):=0 63 62 V(R):=V(R)+1 64 63 V(S):=0 65 64 V(S):=N(R) 66 65 F_FLAG:=P 67 66 REPORT_STATUS(FRMR_RECEIVED) 68 67 REPORT_STATUS(FRMR_SENT) 69 68 REPORT_STATUS(REMOTE_BUSY) 70 69 REPORT_STATUS(REMOTE_NOT_BUSY) 71 70 RESET_INDICATION(LOCAL) 72 71 RESET_INDICATION(REMOTE) 73