bi Records

Normal Operation

Depending on the format type, different record fields are used for output and input. The variable x stands for the written or read value.

DOUBLE format (e.g. %f):
Not allowed.
LONG format (e.g. %i):
Output: x=RVAL
Input: RVAL=x&MASK
MASK can be set be set in the record definition. Stream Device does not set it. If MASK==0, it is ignored (i.e. RVAL=x). The record sets VAL=(RVAL!=0), i.e. 1 if RVAL!=0 and 0 if RVAL==0.
ENUM format (e.g. %{):
Output: x=VAL
Input: VAL=(x!=0)
STRING format (e.g. %s):
Output: Depending on VAL, ZNAM or ONAM is written, i.e. x=VAL?ONAM:ZNAM.
Input: If input is equal to ZNAM or ONAM, VAL is set accordingly. Other input strings are not accepted.

Initialization

During initialization, the @init handler is executed, if present. All format converters work like in normal operation.