s/\s*[;\#].*//;
return unless m/^\S/;
die "$_ ?" unless
- m/^(\w+)\s+(M|S|MS)\s+(\w+)\s+([0-9.]+)(s|ms|us|ns|Hz|kHz|MHz)((?:[-+][0-9.]+cy)?)$/;
+ m/^(\w+)\s+([MST]+)\s+(\w+)\s+([0-9.]+)(s|ms|us|ns|Hz|kHz|MHz)((?:[-+][0-9.]+cy)?)$/;
($orgname,$mswant,$how,$baseinterval,$unit,$cy) = ($1,$2,$3,$4,$5,$6,$7);
$specd= $baseinterval.$unit.$cy;
if ($unit =~ m/M/) { $baseinterval *= 1.e6; }
else { die "$cy ?"; }
p("\n");
p(";========== $orgname ($specd: ${baseinterval}s, ${cy}cy) ==========\n");
- provide_interval($orgname, $baseinterval, 'us', 1.e-6);
- provide_interval($orgname, $baseinterval, 'ms', 1.e-3);
- provide_interval($orgname, $baseinterval, 's', 1.0);
+ if ($mswant =~ m/T/) {
+ provide_interval($orgname, $baseinterval, 'us', 1.e-6);
+ provide_interval($orgname, $baseinterval, 'ms', 1.e-3);
+ provide_interval($orgname, $baseinterval, 's', 1.0);
+ }
foreach $ms (qw(m s)) {
next unless $mswant =~ m/$ms/i;
$msclock= "${ms}clock";