El tema es asi :
  Existe una funcion en pascal que devuelve TRUE cuando termina un archivo así :  
 
while not EOF(Archivo) do 
  begin
    ReadLn(ArchivoOrigen,UnString);
    WriteLn(ArchivoSalida,UnString);
  end;
  
 
Fijate la sintaxis que estoy un poco frio con Pascal ahora.
Espero que te sirva. 

  Ten cuidado que solo te sirve para archivos de TEXTO UNICAMENTE