Depending on the format type, different record fields are used
for output and input. The variable x
stands for the
written or read value.
%f
):%i
):ZRVL
... FFVL
is set
(is not 0
):x=RVAL&MASK
RVAL=x&MASK
RVAL
right by
SHFT
bits, compares the result with all of
ZRVL
... FFVL
, and sets VAL
to the index of the first match.
MASK
is initialized to NOBT
1-bits shifted
left by SHFT
. If MASK==0
(because
NOBT
was not set) it is ignored, i.e.
x=RVAL
and RVAL=x
.
ZRVL
... FFVL
is set
(all are 0
):x=VAL
VAL=x
%{
):x=VAL
VAL=x
%s
):VAL
, one of ZRST
or FFST
is written. VAL
must be in the range
0 ... 15.ZRST
...
FFST
, VAL
is set accordingly.
Other input strings are not accepted.
During initialization, the @init
handler is executed, if
present. All format converters work like in normal operation.
aai aao ai ao bi bo mbbo mbbiDirect mbboDirect longin longout stringin stringout waveform calcout scalcout
Dirk Zimoch, 2005