Solo bastava con escribir en el foro como para que de casualidad me saliese la respuesta.
Pero por si alguien lo necesita dejo aqui el codigo.
Código Delphi
[-]
procedure MyReadLn(var AFile: TextFile; var S: string);
var
tmpStr: string;
MyChar: Char;
begin
tmpStr := '';
while not EOF(AFile) do
begin
read(AFile, MyChar);
case Ord(MyChar) of
13:
begin
read(AFile, MyChar);
Break;
end;
10:
Break;
else
tmpStr := tmpStr + MyChar;
end;
end;
S := tmpStr;
end;