function Quitar13(Source: PChar; Dest: PChar): Integer;
asm
MOV Result,0
DEC EAX
@@SIG:
INC EAX
CMP BYTE PTR [EAX],0
JE @@SALIR
MOV CL,[EAX]
CMP CL,13
JE @@SIG
MOV BYTE PTR [EDX],CL
INC EDX
INC Result
JMP @@sig
@@SALIR:
MOV BYTE PTR [EDX],0
end;
function SaveToUnixFile(Filename, Text: String): Boolean;
var
F: File;
Escritos: Integer;
P: PChar;
i: integer;
begin
Result:= FALSE;
P:= PChar(Text);
i:= Quitar13(P,P);
AssignFile(F,Filename);
{$I-}
Rewrite(F,1);
{$I+}
if IOResult = 0 then
begin
BlockWrite(F,P^,i,Escritos);
Result:= Escritos = i;
CloseFile(F);
end;
end;