diff --git a/motorApp/MotorSrc/motorRecord.cc b/motorApp/MotorSrc/motorRecord.cc index e1f29575..64b6fa58 100644 --- a/motorApp/MotorSrc/motorRecord.cc +++ b/motorApp/MotorSrc/motorRecord.cc @@ -183,6 +183,9 @@ USAGE... Motor Record Support. * .72 03-13-15 rls - Changed RDBL to set RRBV rather than DRBV. * .73 02-15-16 rls - JOGF/R soft limit error check was using the wrong coordinate sytem limits. * Changed error checks from dial to user limits. + * .74 09-28-16 rls - Reverted .71 FLNK change. Except for the condition that DMOV == FALSE, FLNK + * processing was standard. If processing is needed on a DMOV false to true + * transition, a new motor record field should be added. */ #define VERSION 6.10 @@ -1163,10 +1166,10 @@ Exit: Update record timestamp, call recGblGetTimeStamp(). Process alarms, call alarm_sub(). Monitor changes to record fields, call monitor(). - IF Done Moving field (DMOV) is TRUE, AND, Last Done Moving (LDMV) was False. + + IF Done Moving field (DMOV) is TRUE Process the forward-scan-link record, call recGblFwdLink(). ENDIF - Update Last Done Moving (LDMV). Set Processing Active indicator field (PACT) false. Exit. @@ -1406,9 +1409,8 @@ process_exit: alarm_sub(pmr); /* If we've violated alarm limits, yell. */ monitor(pmr); /* If values have changed, broadcast them. */ - if (pmr->dmov != 0 && pmr->ldmv == 0) /* Test for False to True transition. */ + if (pmr->dmov != 0) recGblFwdLink(pmr); /* Process the forward-scan-link record. */ - pmr->ldmv = pmr->dmov; pmr->pact = 0; Debug(4, "process:---------------------- end; motor \"%s\"\n", pmr->name); @@ -2450,7 +2452,6 @@ static long special(DBADDR *paddr, int after) if (pmr->dmov == TRUE) { pmr->dmov = FALSE; - pmr->ldmv = pmr->dmov; db_post_events(pmr, &pmr->dmov, DBE_VAL_LOG); } return(OK); diff --git a/motorApp/MotorSrc/motorRecord.dbd b/motorApp/MotorSrc/motorRecord.dbd index 3417521e..674c6a34 100644 --- a/motorApp/MotorSrc/motorRecord.dbd +++ b/motorApp/MotorSrc/motorRecord.dbd @@ -586,11 +586,6 @@ recordtype(motor) { special(SPC_NOMOD) initial("1") } - field(LDMV,DBF_SHORT) { - prompt("Last Done moving value") - special(SPC_NOMOD) - initial("1") - } field(MOVN,DBF_SHORT) { prompt("Motor is moving") special(SPC_NOMOD)