I've written a very simple record interface and am having
a strange problem.
The record is very simple :
field(INP,"@d=$(device) t=$(tty) b=$(baud) p=$(portconf) c=1 ")
The driver simply reads a temperature from a device on
a serial port and writes it to the VAL field of this record.
The problem I'm having is that both the medm & probe programs
that came with the extensions package are displaying the
value from the RVAL field, rather than the VAL field.
Is there some other field I need to set to get these other
programs to retrieve the value from the VAL field? Is this
a bug? I've looked through the Record Reference Manual
several times, and haven't seen any mention of fields
that might affect this behavior.
Since this data doesn't need any conversions applied to it,
I tried to work around this problem by setting RVAL to the
temperature, only to find that the RVAL field is merely an int
field, while my temperature value is a double, and I lose the
precision of my data.
Why is RVAL only an int type if it is intended to hold the
raw data from hardware?
Thanks for any help or suggestions.
BTW: I'm using Redhat 7.3, vanilla 2.4.20 kernel, gcc 2.96