Provided by: manpages-pl_20060617-3_all bug

NAZWA

       lp - urzdzenia drukarek wierszowych

SK/LADNIA

       #include <linux/lp.h>

KONFIGURACJA

       Pliki lp[0-2] s urzdzeniami znakowymi obslugujcymi drukarki dolczone do
       portow rownoleglych; numer glowny  tych  urzdze  jest  rowny  6,  numer
       podrzdny  0-2.  Numery  podrzdne  odpowiadaj adresom portu rownoleglego
       kolejno 0x03bc, 0x0378 and 0x0278. Zwykle prawa dostpu do  plikow  tych
       urzdze  wynosz  220  i  nale  do  uytkownika  root  i  grupy lp.  Porty
       rownolegle mog by obslugiwane zarowno przy  wykorzystaniu  probkowania,
       jak  i  przerwa.  Stosowanie  przerwa  jest zalecane gdy spodziewamy si
       duego ruchu, np. wynikajcego z uywania drukarki laserowej. W  przypadku
       zwyklych    drukarek   mozaikowych   wystarczajce   jest   probkowanie.
       Standardowym trybem obslugi portu jest probkowanie.

OPIS

       Urzdzenia lp obsluguj nastpujce wywolania funkcji ioctl(2):

       int ioctl(int fd, LPTIME, int arg)
              Ustawia okres przez jaki sterownik jest upiony, zanim  powtornie
              sprawdzi  stan  drukarki w sytuacji, gdy bufor drukarki zdaje si
              by wypelnionym  do  arg.  Jeli  posiadamy  szybk  drukark  moemy
              zmniejszy ten parametr.  Jeli drukarka jest wolna, naley zwikszy
              ten parametr. Jest to liczba okrelajca czas  w  setnych  czciach
              sekundy, warto domylna wynosi 2, co oznacza 0,02 s. Parametr ten
              ma wplyw jedynie w trybie probkowania.

       int ioctl(int fd, LPCHAR, int arg)
              Ustawia maksymaln liczb iteracji  aktywnego  oczekiwania  (busy-
              wait),  jakie  wykonuje  sterownik  probkujcy czekajc a drukarka
              bdzie gotowa na otrzymywanie  znakow  do  arg.  Jeli  drukowanie
              odbywa  si  zbyt  wolno  naley  zwikszy  t liczb; jeli system za
              bardzo zwalnia - naley  j  zmniejszy.  Standardow  wartoci  tego
              parametru  jest  1000.  Parametr ma wplyw na sterownik jedynie w
              trybie probkowania.

       int ioctl(int fd, LPABORT, int arg)
              Jeli parametr arg jest rowny 0, wtedy sterownik  drukarki  bdzie
              powtarzal  operacj  po  wystpieniu  bldu;  w  przeciwmym wypadku
              przerwie w dzialanie. Standardow wartoci tego parametru jest 0.

       int ioctl(int fd, LPABORTOPEN, int arg)
              Jeli arg jest rowny 0, funkcja  open(2)  zostanie  przerwana  po
              wystpieniu  bldu; w przeciwnym wypadku bld zostanie zignorowany.
              Standardowe zachowanie polega na ignorowaniu bldow.

       int ioctl(int fd, LPCAREFUL, int arg)
              Jeli arg jest rowny 0, wtedy wymaga si aby sygnaly out-of-paper,
              offline  oraz  sygnaly  bldow  byly  puste (false) we wszystkich
              operacjach zapisu, w przeciwnym wypadku s ignorowane. Ustawienie
              standardowe polega na ignorowaniu bldow.

       int ioctl(int fd, LPWAIT, int arg)
              Ustawia  na arg liczb iteracji aktywnego oczekiwania (busy-wait)
              przed sprobkowaniem, czy drukarka zaakceptowala wlanie  zapisany
              znak  oraz  liczb iteracji, ktore naley przeczeka przed kolejnym
              probkowaniem.   Specyfikacje   okrelaj   ten   czas   jako   0.5
              mikrosekundy,    lecz   dowiadczenie   wykazalo,   e   oponienie
              spowodowane wykonaniem kodu jest ju wystarczajce.  Z tego powodu
              wartoci   domyln   dla   tego   ustawienia   jest  0.  Jest  ono
              wykorzystywane w sterowniku zarowno w trybie probkowania, jak  i
              w trybie przerwa.

       int ioctl(int fd, LPSETIRQ, int arg)
              To  wywolanie  funkcji  ioctl()  wymaga uprawnie administratora.
              Funkcja pobiera argument typu  int  zawierajcy  nowe  przerwanie
              IRQ.  Skutekiem  ubocznym  jest  inicjalizacja drukarki. Gdy arg
              jest zerem, to stosowany bdzie sterownik z probkowaniem; jest to
              rownoczenie zachowanie domylne.

       int ioctl(int fd, LPGETIRQ, int *arg)
              Zachowuje w parametrze arg aktualnie stosowane przerwanie IRQ.

       int ioctl(int fd, LPGETSTATUS, int *arg)
              Zachowuje  warto  stanu portu w zmiennej arg.  Poszczegolne bity
              maj nastpujce znaczenie:

              LP_PBUSY     odwrocony sygnal zajtoci, aktywny w stanie
                           wysokim
              LP_PACK      niezmienione potwierdzenie wejcia, aktywny
                           w stanie niskim
              LP_POUTPA    niezmieniony sygnal braku papieru, aktywny
                           w stanie wysokim
              LP_PSELECD   niezmieniony sygnal wyboru, aktywny w stanie
                           wysokim
              LP_PERRORP   niezmieniony sygnal bldu, aktywny w stanie
                           niskim

              Znaczenia sygnalow naley szuka w dokumentacji  drukarki.   Naley
              pamita,   e   dla   niektorych  drukarek  ustawiane  mog  by  te
              nieudokumentowane tu bity.

       int ioctl(int fd, LPRESET)
              Inicjalizuje drukark. Nie stosuje si adnych parametrow.

PLIKI

       /dev/lp*

AUTORZY

       Sterownik  drukarki  zostal  napisany  przez  Jima  Weiganda  i  Linusa
       Torvaldsa.  Poniej  zostal  on  ulepszony  przez  Michaela K. Johnsona.
       Oprogramowanie przerwa wykonal Nigel  Gamble.  Zmodularyzowal  go  Alan
       Cox. LPCAREFUL, LPABORT, LPGETSTATUS dodal Chris Metcalf.

ZOBACZ TAKE

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

INFORMACJE O T/LUMACZENIU

       Powysze  tlumaczenie  pochodzi z nieistniejcego ju Projektu Tlumaczenia
       Manuali i moe nie by aktualne. W razie zauwaenia ronic  midzy  powyszym
       opisem  a  rzeczywistym  zachowaniem  opisywanego programu lub funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.

                                  1995-01-15                             LP(4)