program HOSE {TurboPascal V5.0}; uses Crt, Dos ; Procedure EmitCh(C : char) ; var R : Registers ; begin R.AH := 14 ; R.AL := byte(C) ; R.BX := 0 { BH ? } ; Intr($10, R) end ; Procedure EmitStr(S : string) ; var k : byte ; begin for k:=1 to Length(S) do EmitCh(S[k]) end ; var Str : string ; begin { read Str from input pipe, show on screen, write to output pipe } if DiskFree(0)=0 then Writeln('HOSE: Pipe crisis?') ; CheckEOF:=true ; Assign(Input, '') ; Reset(Input) ; Assign(Output, '') ; Rewrite(Output) ; repeat Readln(Str) ; EmitStr(Str) ; EmitStr(#13#10) ; Writeln(Str) ; until Eof ; end. www.merlyn.demon.co.uk ; 20/04/89, 2001-02-23