Provided by: manpages-pt_20040726-4_all bug

NOME

       lp - dispositivo de impressora de linha

SINOPSE

       #include <linux/lp.h>

CONFIGURAÇÃO

       lp[0–2]  são  dispositivos de caracter para impressoras de linha paralelas; o maior número
       de dispositivo é 6 e o menor é 0–2. O menor número de dispositivo corresponde ao  endereço
       basse  da porta da impressora 0x03bc, 0x0378 e 0x0278.  Usualmente eles tem modo 220 e são
       and propriedadades do super usuário e do grupo lp. Você pode usar a porta de impressora em
       um dos dois modos polling ou com interrupção. Interrupções são recomendadas quando tráfego
       alto é esperado, por exemplo para impressoras laser. Para impressoras matriciais polling é
       usualmente suficiente. O padrão é polling.

DESCRIÇÃO

       As seguintes chamadas ioctl(2) são suportadas:

       int ioctl(int fd, LPTIME, int arg)
              Seleciona  a  quantia  de  tempo  que  o controlador aguarda antes de reverificar a
              impressora quando o buffer da impressora mostra-se cheio para arg. Se você tem  uma
              impressora rápida, diminua este número, se você tem uma impressora lenta aumente-o.
              Isto é um centésimo de segundo, o padrão 2 estando a  0.02  segundos.  Ele  somente
              influência o controlador de polling.

       int ioctl(int fd, LPCHAR, int arg)
              Seleciona  o  número  máximo  de iterações ocupada-espera o qual faz controlador de
              polling passar o tempo aguardando pela impressora para preparar-se para recepção de
              um  caractere  para  arg.  Se a impressora é muito lenta, aumente este número; se o
              sistema também é lento,  diminua  este  número.  O  padrão  é  1000.   Ele  somente
              influência o controlador de polling.

       int ioctl(int fd, LPABORT, int arg)
              Se  arg é 0, o controlador de impressora irá tentar em erro, de outro forma ele irá
              abortar. O padrão é 0.

       int ioctl(int fd, LPABORTOPEN, int arg)
              Se arg é 0, open(2) irá abortar em erro, de outra forma erros  serão  ignorados.  O
              padrão é para ignorar.

       int ioctl(int fd, LPCAREFUL, int arg)
              Se  arg é 0, então fim-de-papel, fora-de-linha e sinal de erros são requeridos para
              ser falso em todas as escritas, de outra forma eles são ignorados. O padrão é  para
              ignora-los.

       int ioctl(int fd, LPWAIT, int arg)
              Seleciona  o  número de iterações de esperar ocupado para aguardar antes strobing a
              impressor para acessar um caractere justamente escrito, e  o  número  de  iterações
              para   aguardar  antes  de  tornar  o  strobe  desligado  novamente,  para  arg.  A
              especificação diz que este  tempo  precisaria  ser  de  0,5  microsegundos,  mas  a
              experiência tem mostrado o intervalo de tempo causado pelo código é suficiente. Por
              essas razões, o valor padrão é 0. Isto  é  usado  por  ambos  os  modos  polling  e
              controlador de interrupção.

       int ioctl(int fd, LPSETIRQ, int arg)
              Esta  ioctl() requer privilégios de super usuário. Isso exige um inteiro contendo o
              novo argumento IRQ. Como um efeito colateral, a  impressora  deverá  ser  religada.
              Quando arg é 0, o controlador polling irá ser usado, o qual é, além disso, padrão.

       int ioctl(int fd, LPGETIRQ, int *arg)
              Armazena oa IRQ atualmente usada em arg.

       int ioctl(int fd, LPGETSTATUS, int *arg)
              Armazena o valor do status da porta em arg. Os bits tem o seguinte significado:

              LP_PBUSY     entrada invertida ocupada, alta atividade
              LP_PACK      entrada reconhecida inalterada, baixa atividade
              LP_POUTPA    entrada "sem papel" inalterada, alta atividade
              LP_PSELECD   entrada selecionada inalterada, alta atividade
              LP_PERRORP   entrada de erro inalterada, baixa atividade

              Refira-se  para o manual da sua impressora para entender sobre os sinais.  Note que
              bits não documentados também podem ser selecionados, depende da sua impressora.

       int ioctl(int fd, LPRESET)
              Religa sua impressora. É usado sem argumentos.

ARQUIVOS

       /dev/lp*

AUTORES

       O controlador de impressão foi originalmente escrito por Jim Weigand e Linus Torvalds. Ele
       tem  sido aprimorado por Michael K. Johnson. O código da interrupção foi escrito por Nigel
       Gamble. Alan Cox fez a modularização.  LPCAREFUL,  LPABORT,  LPGETSTATUS  são  adições  de
       Chris Metcalf.

VEJA TAMBÉM

       mknod(1), chown(1), chmod(1), tunelp(8), lpcntl(8)

TRADUZIDO POR LDP-BR em 21/08/2000.

       André   L.  Fassone  Canova  <lonelywolf@blv.com.br>  (tradução)  Carlos  Augusto  Horylka
       <horylka@conectiva.com.br> (revisão)

                                            15/01/1995                                      LP(4)