SECTION "Failat"
GET "libhdr"
GET "clihdr"
LET charstonum(s) = VALOF
  $( LET n,i,m = 0,1,s % 0
     LET neg = FALSE
     result2:=0

     WHILE s % i = ' ' DO i := i + 1

     IF (s % i = '+') | (s % i = '-') THEN
       $( neg := s % i = '-'
          i := i + 1
       $)

     TEST ('0'<=s%i<='9') THEN
     WHILE ('0' <= s % i <= '9') & (i <= m) DO
       $( n := n * 10 + (s % i - '0')
          i := i + 1
       $)
     ELSE result2:=20

     RESULTIS (neg -> -n,n)
  $)


LET start() BE
$(  LET ch=?
    LET no=VEC 50
    result2:=0
    TEST 0=rdargs("RClim",no,50) THEN
    writes("Bad arguments for Failat*N") ELSE
    TEST no!0=0 THEN writef("Fail limit: %n*N",cli.faillevel) ELSE
    $(  LET lim=charstonum(no!0)
        TEST result2>0 | lim<=0 THEN writes("Bad return code spec for Failat*N")
        ELSE cli.faillevel:=lim
        result2:=0
    $)

$)


