[pascal]Odczyt danych z jednego pliku i wpisanie do drugiego

Siema

na czym polega problem otóż mam program który sprawdza czy dany ciąg znaków jest palindromem tylko nie wiem jak go przerobić żeby odczytywał dane z pliku a poprawne palindromy przepisywał do drugiego.

var

  s:string;


procedure bez_znaku(var s:string; znak:char);

var

  i:byte;

  tym:string;

begin

  tym:='';

  for i:=1 to length(s) do

    if s[i]<>znak then

      tym:=tym+s[i];

  s:=tym;

end;


procedure wielkie(var s:string);

var

  i:byte;

begin

  for i:=1 to length(s) do

    s[i]:=upcase(s[i]);

end;


function odwroc(s:string):string;

var

  i:byte;

  tym:string;

begin

  tym:='';

  for i:=length(s) downto 1 do

    tym:=tym+s[i];

  odwroc:=tym;

end;


procedure czy_palindrom(var s:string);

var

  tym:string;

begin

  bez_znaku(s,' ');

  wielkie(s);

  tym:=odwroc(s);

  if tym=s then writeln('TAK')

  else writeln('NIE');

end;


procedure wpisz(var s:string);

begin

  write('Wpisz napis: ');readln(s);

end;


begin

  while not eof() do begin

    wpisz(s);

    czy_palindrom(s);

  end;

end.

to jest ten program.

Jak go przerobić aby wczytywał z pliku dane.txt palindromy np.:Zakopane na pokaz i jeśli jest to palindrom przepisywał go do pliku wynki.txt i dopisał TAK a jeśli nie to też przepisywał go do pliku wynki.txt ale dopisywał NIE ??