{--------------------------------------------------------}
{
{    Converte acentos do DOSVOX para o EDIT e vice-versa
{    Autor: Jose' Antonio Borges
{    Em 15/5/95
{
{--------------------------------------------------------}

program dvtxt;
uses dvWin, dvCrt, winProcs;
var
    arq, arqsai: text;
    nomearq, nomesai: string;
    texto: string;
    opcao, lixo: char;

label fim;

{--------------------------------------------------------}

begin
    sintInic (2, sintAmbiente ('DVTXT', 'DIRDVTXT'));

    writeln;
    writeln ('Conversor de acentos');
    sintSom ('TXINIC');

    writeln;
    delay (500);
    writeln ('Nome do arquivo original: ');
    sintSom ('TXNOMORG');

    sintReadln (nomearq);
    if nomearq = '' then goto fim;

    assign (arq, nomearq);
    {$i-} reset (arq); {$i+}
    if ioresult <> 0 then
        begin
            writeln ('Arquivo nao existe');
            sintSom ('TXARQNAO');
            goto fim;
        end;

    writeln ('Nome do arquivo destino: ');
    sintSom ('TXNOMDST');
    sintReadln (nomesai);
    if nomesai = '' then goto fim;

    assign (arqsai, nomesai);
    {$i-} rewrite (arqsai); {$i+}
    if ioresult <> 0 then
        begin
            writeln ('Erro de escrita');
            sintSom ('TXERRESC');
            goto fim;
        end;

    repeat
        writeln
             ('Escolha  I para saida em formato IBM  A para ANSI  ESC para cancelar');
        sintSom ('TXOPCAO');

        sintleTecla (opcao, lixo);
        writeln;
        opcao := upcase (opcao);
        if opcao = #$1b then goto fim;
    until opcao in ['I', 'A'];

    while not eof (arq) do
        begin
            readln (arq, texto);

            if opcao = 'I'then
                AnsiToOemBuff (@texto[1], @texto[1], length (texto))
            else
                OemToAnsiBuff (@texto[1], @texto[1], length (texto));

            {$I-} writeln (arqsai, texto); {$I+}
            if ioresult <> 0 then
                begin
                    writeln ('Erro de escrita');
                    sintSom ('TXERRESC');
                    goto fim;
                end;
        end;

    writeln ('Arquivo gerado');
    sintSom ('TXARQGER');

fim:
    {$I-} close (arqsai); {$I+}  if ioresult <> 0 then;
    {$I-} close (arq);    {$I+}  if ioresult <> 0 then;

    writeln ('Fim do conversor');
    sintSom ('TXFIM');
    sintFim;
    delay (2000);
    doneWinCrt;
end.
