K počítači Didaktik (resp. k obvodu 8255) lze připojit tiskárnu s rozhraním centronics mnoha způsoby. Pouze 4 z nich se však tak nějak vžily, používají se dodnes a lze je tedy prohlásit za jakési standardy. Bohužel to, že jsou 4, není vůbec dobré (ideální by bylo jen JEDNO, které každý akceptuje a je prohlášeno za standard - toto ovšem ve speccy světě nikdy nenastane, protože zde byli, jsou a budou blázni, co si vždycky vyšlapou vlastní cestu a vymyslí zcela originální zapojení, které se pak snaží prosadit jako lepší než ty předchozí...). Často tedy nastává situace, že program prostě uživateli na jeho tiskárně netiskne. Programátorovi to nelze dávat v žádném případě za vinu, protože on jen použil cestu (připojení), která podle něj byla nejlepší (resp. on sám měl takto tiskárnu připojenou). No ale zpět k těm čtyřem nejčastějším připojením: STROBED PORT A
(dost časté u Didaktiku Gama) STROBED PORT B
(prosazovala Proxima) SPECIAL DIDAKTIK
(doporučované spolu s interfacem M/P) SPECIAL DIDAKTIK B
Obvod 8255 umí pracovat v módech 0, 1 a 2. Pro komunikaci s tiskárnou lze použít módy 0 a 1. Časem se však ukázalo, že některé tiskárny mají problémy se signálem ACK a tedy v komunikaci přes mód 1, zatímco přes BUSY (mód 0) pracují úplně v pohodě. Pokud tedy chcete univerzální zapojení, první dvě možnosti (STROBED PORT A, STROBED PORT B) vypadávají ze hry. S nástupem Didaktiku M se objevilo zapojení SPECIAL DIDAKTIK (Mko totiž nemá zabudovaný obvod 8255 a proto se tiskárna musí připojit přes interface M/P, a ten je dělán pro zapojení SPECIAL DIDAKTIK). Bohužel tím, že je použit pro přenos dat port A obvodu 8255, nelze už současně s tiskárnou používat kempston joystick nebo cokoliv jiného, co přes port A komunikuje (např. A-mouse). Proto Sweet (teda možná kecám a nevymyslel to on, ale u něj jsem to poprvé zaregistroval...) přišel se zapojením SPECIAL DIDAKTIK B. Tam je pro data použit port B. Výhoda je jasná (port A je volný). Nutno ovšem podotknout, že všechny kabely, které výrobci k tiskárnám dodávali, využívaly port A... Pokud Vám mohu doporučit (a to jak programátorům, tak uživatelům), používejte SPECIAL DIDAKTIK. Podle mě je nejpoužívanější (kompakt servis stále dodává kabel v tomto zapojení) a podporuje ho plno softu (a já taky :). Těm šikovnějším uživatelům ovšem doporučuji udělat si kabel vlastními silami a dát si tam (na přepínač) jak SPECIAL DIDAKTIK tak SPECIAL DIDAKTIK B.
A_OUT
ex af,af' ;uložíme A Úplně na začátku (např. po spuštění Vašeho programu) je nutné nastavit porty obvodu 8255 pro zapojení SPECIAL DIDAKTIK (hodnota 138 = A výstupní, B vstupní, C[0-3] výstupní, C[4-7] vstupní):
... Pozn.: Pro SPECIAL DIDAKTIK B by bylo třeba změnit inicializační hodnotu na 152 (A vstupní, B výstupní, C[0-3] výstupní, C[4-7] vstupní) a instrukci OUT (31),A nahradit OUT (63),A. Z toho je vidět, že je velice jednoduché si klidně už i v hotovém programu změnit SPECIAL DIDAKTIK za SPECIAL DIDAKTIK B (stačí jen několik vhodných pouků...).
Komunikace s tiskárnou Všechny tiskárny komunikují s počítačem pomocí řídicích příkazů (ty můžete vysílat pomocí výše uvedeného podprogramu A_OUT). Každá větší firma si v této oblasti šla víceméně svou vlastní cestou. Můžete se setkat s jazykem ESC/P (EPSON), IBM, Canon atd. Za standard se naštěstí považuje ESC/P (alespoň tedy v DOSovských programech a na ZXS). ESC/P je ale přeci jen už dost starý a vývoj v tiskárnách si vyžádal aktualizaci tohoto jazyka. Dneska tedy máme několik úrovní (verzí) ESC/P. Na ZXS je otázka komunikace velice důležitá. Pokud si nechcete psát vlastní ovladače, měli byste se (před koupí) ujistit, že tiskárna (ať už jehličková, inkoustová či laserová) umí jazyk ESC/P a zda je ve svých grafických módech kompatibilní (na tom většina těch dnešních vyhoří) se základní 9ti jehličkovou tiskárnou (kódy ESC K, L, Y, Z; nebo univerzální ESC *). EPSONky by v otázce kompatibility měly dopadnout vždy nejlépe... S tou 9ti jehličkovou grafikou je to ovšem dneska těžké. Příkazy ESC K, L, Y, Z nenávratně mizí a bitová grafika je plně v kompetenci příkazu ESC *. V příručce ale nikdy není uvedeno, které grafické módy ESC * umí, a tak člověk po chvilce experimentování může zjistit, že z 9ti jehličkové grafiky neumí tiskárna vůbec nic. Seznam všech ESC/P řídících kódu, které tiskárna umí by měly být uvedeny v příručce k ní. Schválně píšu BY MĚLY, protože z dlouholetých zkušeností vím, že pouze výrobci, kteří jsou kvalitní a váží si svého zákazníka, toto v dokumentaci skutečně uvádějí. Taky už jsem se setkal i s takovou dokumentací, kde sice ty kódy uvedeny byly, ale bez vysvětlivek. Nebo taky bylo dobré, když jsem v manuálu zjistil, že "celkový seznam řídících kódu tiskárny je uveden v příručce programátora...", ovšem tuto příručku už nikdo nikdy v ČR neviděl.
Každá tiskárna umí pracovat ve 2 režimech - grafickém a textovém. Textový umožňuje velice rychlý tisk (rychlost ovlivňuje také typ tiskárny), ovšem jak už název napovídá, bude se tisknout pouze text (znaky) a pouze tak, jak to umí (má v ROM) sama tiskárna (font, kvalita, velikost, hustota). Také je dobré mít v tiskárně češtinu (nebo psát bez háčků a čárek :). Grafický režim (ESC * m) je oproti textovému šíleně pomalý (u jehličkových tiskáren) a tiskárna
vlastně vytiskne vše (bod po bodu), co je na obrazovce. Tiskárna tedy vůbec
nepoužívá svou ROM. V grafické režimu pracuji všechny dnešní programy na
PC. m dpi
tiskárna alternativna Vtip je v tom, že ne každá technicky vyspělejší tiskárna než 9ti jehličková (tj. 24jehl, 48jehl., inkoustová, laserová...) umí tu 9ti jehličkovou grafiku.
9 nebo 24 jehel? Pozor, že tiskové utility, které na ZXS vznikly, jsou v drtivé většině dělány pro 9ti jehličkové tiskárny! Pokud tedy budete připojovat 24jehličkovou tiskárnu, dobře se podívejte (do příručky), jestli umí i základní 9ti jehličkovou grafiku (kódy ESC K, L, Y, Z; nebo univerzální ESC *). U značky EPSON by to mělo být bez problému, ale ostatní výrobci se s tím moc netrápí...
Software Na ovladačích k jehličkovým tiskárnám jsem v podstatě vyrostl a díky nim jsem se naučil programovat. Snažil jsem se zaplnit všechny oblasti na ZXS, kde je potřeba tisknout a napsal (resp. odněkud přepsal, opravil a vylepšil) pro ně opravdu velice kvalitní ovladače (pro zapojení SPECIAL DIDAKTIK). Většina je distribuována u DOMa. BASICprint LPRINT CHR$ 27+CHR$ 64;
inicializace tiskárny CALCprint DTPprintT_ DTPprintG_ DTPprintG2 ovladač pro ART-STUDIO kdo má barevnou jehličkovou tiskárnu, může využít také utilitu COLOR. |