Merge changes from 3.14.12.5 (revno 12582)

This commit is contained in:
Andrew Johnson
2015-03-25 12:53:13 -05:00
5 changed files with 28 additions and 9 deletions

View File

@@ -404,8 +404,8 @@ monitoring functionality.
pp(TRUE)
interest(2)
}
field(ROFF,DBF_LONG) {
prompt("Raw Offset, obsolete")
field(ROFF,DBF_ULONG) {
prompt("Raw Offset")
pp(TRUE)
interest(2)
}

View File

@@ -498,10 +498,20 @@ static void convert(aoRecord *prec, double value)
}
value -= prec->aoff;
if (prec->aslo != 0) value /= prec->aslo;
if (value >= 0.0)
prec->rval = (epicsInt32)(value + 0.5) - prec->roff;
else
prec->rval = (epicsInt32)(value - 0.5) - prec->roff;
/* Apply raw offset and limits, round to 32-bit integer */
value -= prec->roff;
if (value >= 0.0) {
if (value >= (0x7fffffff - 0.5))
prec->rval = 0x7fffffff;
else
prec->rval = (epicsInt32)(value + 0.5);
} else {
if (value > (0.5 - 0x80000000))
prec->rval = (epicsInt32)(value - 0.5);
else
prec->rval = 0x80000000;
}
}

View File

@@ -342,8 +342,8 @@ information on these fields.
size(16)
prop(YES)
}
field(ROFF,DBF_LONG) {
prompt("Raw Offset, obsolete")
field(ROFF,DBF_ULONG) {
prompt("Raw Offset")
pp(TRUE)
interest(2)
}