program EIGHTBIT { www.merlyn.demon.co.uk >= 2006-02-16 } ; uses Crt ; var F : text ; FN, St : string ; LN : word ; J : byte ; BEGIN ; if ParamCount=0 then begin Writeln('EIGHTBIT filename ; reports high & control characters.') ; HALT(1) end ; FN := ParamStr(1) ; Assign(F, FN) ; Reset(F) ; LN := 0 ; while not EoF(F) do begin Readln(F, St) ; Inc(LN) ; for J := 1 to length(St) do if St[J] in [#127..#255, #0..#8, #10..#31] then begin Writeln(FN, ', line ', LN, ', char ', J, ', value ', Ord(St[J])) ; Write(St, ^M^J, '':J-1, '^') ; if ReadKey=#27 then begin Close(F) ; Halt(1) end ; end ; end ; Close(F) ; END.