bugfix: setting VFLAG from VAL, not from IVAL

This was a copy-and-paste error.  When we arrive at block MODSEL, we
read IX and VAL, but not IVAL.
using NINT() instead of INT() to enable rounding

The old implementation used INT(), which just trunctates a floating
point number.  This means that if the user sets

BLOCK MODSEL
  8   0.9999999

PFLAG will have the value 0.  Using NINT() will round 0.9999999 to 1,
which means that PFLAG will have the value 1, as desired.