Merkurový plotr Alfi

Úvod

Merkurový plotr Alfi občas nazývaný i Alfigraf se stal tak trochu legendárním. Pravděpodobně díky tehdejší propagaci a vzpomínkám pamětníků, kteří si ho pamatují lépe, než jaký byl, možná kvůli tomu, že v době vzniku byl nedostatek všeho a ve srovnání s jinými možnostmi Alfi nevycházel špatně, možná také díky tomu, že šlo o funkční plotr postavený z dětské stavebnice, možná trochu díky bohatší softwarové podpoře, nebo i kvůli několika klonům, které se vyráběly a prodávaly jako hotový výrobek (Digitron zmiňuje slovenský VZ4 a Alfigraf od ZPA Čakovice). O Alfi vyšla i kniha pojmenovaná "Amatérské zapisovače" od Ing. Vladimíra Dovala, autora Alfi, popisující teorii okolo mechaniky i elektroniky plotru velmi detailně.

Na druhou stranu, Alfi dnes Wikipedia zmiňuje jen jedním slovem, z webu Merkuru informace zmizely zcela i když před lety spolu s nástupem robotických hraček zkoušeli prodávat plotr znovu. Informace jsou roztříštěné, nejasné a ceny v bazarech přehnaně vysoké i za zdevastovaný rezivý šrot.

Svým způsobem je fenomén plotru Alfi opravdu fascinující. Ale přes všechen ten rozruch a jakýsi pocit výjimečnosti to je kreslítko velmi podprůměrné a když už se někomu na něm podaří něco nakreslit, stojí to většinou nějaké úsilí a ladění, než se to podaří ve snesitelné kvalitě.

Pokud ale na Alfi budu pohlížet čistě jako na výukovou hračku, pak to všechno ladění a úsilí potřebné k vytvoření kresby není vlastně tak špatné. Naopak, je to důležitý krok, nezbytně nutný k uvědomění si, jak je přesnost a mechanická tuhost důležitá, co všechno je na Alfi kvůli kompromisům a důrazu na postavitelnost ze stavebnice špatně. Jako výukový prostředek tedy má Alfi, správně použitý, mnohem větší hodnotu než dnešní prefabrikované robotické stavebnice, které toho sice nakonec dovedou mnohem víc a mnohem efektněji, ale nedovolí nahlédnout ke skutečným základům.

Poznámka na okraj - objevil jsem něčí fotku z muzea Merkuru. Plotr ve vitríně mají, ale v žalostně zdevastovaném stavu, zdá se kompletní, ale rezivý a s utrženou lištou sklápění pera. Bohužel nemám kontakt na autora fotky, ani nevím, kdy byla pořízena. Podle jiných snímků mají exempláře nejméně dva a třetí nesestavený. Do plotru vložený "výtisk" se ani v jednom případě nezdá být vytvořený přímo na Alfi. Poskytne mi někdo pěkné foto, kde by to bylo více zřejmé, z nedávné návštěvy muzea?

Základní vlastnosti plotru Alfi

  • dodával se jako stavebnice, ale hodně dílků Alfi bylo od běžných stavebnic odlišných
  • pokreslitelná plocha odhadem 190x265mm, zasahuje pod posuvová kolečka, ale ta jsou úzká
  • velikost kroku přibližně 0.15mm, krok v ose X bývá maličko větší proti Y, převod není přesný
  • rychlost kreslení 50mm/s dle manuálu
  • hmotnost 1.2kg dle manuálu, cca 1.5kg kuchyňskou váhou
  • rozměry naměřeno cca 355x100x100mm (manuál do výšky nezapočítává vozík a udává 355x100x75mm)
  • napájecí napětí 9V - tranzistory snesou víc, ale motory by se mohly rychle přehřívat, už při 12V byly nebezpečně horké

Dá se jím kreslit na kancelářský papír A4 běžné gramáže. Způsob posuvu papíru nedovoluje používat papíry příliš tenké, nebo tlusté. Kreslit se dá fixy s filcovými hroty. S kuličkovými pery může být problém, protože na kuličková pera, plotr nevyvine potřebný přítlak.

foto sestavy s alfi

Elektronika plotru je velmi jednoduchá. Prakticky sestává pouze z devíti dvoustupňových tranzistorových spínačů/zesilovačů, kterými jsou přímo spínané cívky motorů a magnet pera. Celé by to šlo nahradit devíti Darlingtony s ochrannými diodami. V plotru není žádná logika, vše musí řídit počítač na plotru kreslící.

Připojení plotru k ZX Spectru

Vím, že se Alfi připojoval k mnoha různým počítačům, ale spoustu z nich znám jen okrajově. Možná, že se kromě ZX Spectra, budu někdy v budoucnu zabývat i PMD 85, bude-li chuť, čas a příležitost. Ale napsání tohoto článku zabralo i bez toho hodně času.

Pro připojení k ZX Spectru je potřeba nějaký interface. Protože Alfi potřebuje pro připojení nejméně 9 signálů, potřebuje taky víc než jeden 8 bitový port. Ideální je pro ten účel některý z interface s 8255, třeba UR-4, nebo Jiiirův UPI, podobně poslouží 8255 v Didaktiku Gama 80k/192k, nebo v disketovkách Didaktik 40/80 a další. Pro základní použití je potřeba jeden port s adresou 63 pro motory a jeden port s adresou 95 pro pero, přičemž z něj je využitý jen bit 7. Případně i bity 1 a 2 jako vstupy, použití bitu 0 se Alfi vyhýbá nejspíš kvůli Didaktiku Gama 80k. Schéma ze stavebního návodu konkrétní interface nespecifikuje, pouze říká, který vstup na konektoru plotru připojit na jaký výstup 8255. Rozmístění vývodů toho kterého interface si musí uživatel už doplnit sám.

foto s čísly vývodů

Vývody konektoru na plotru jsou číslovány zleva (od krokových motorů) doprava (k magnetu pera a kraji desky). Orientace se dá snadno ověřit propípáním, GND je na krajním vývodu 12.

pin Alfi význam na Alfi barva na mém kabelu význam na 8255 pin UR-4
1 motor 1 - posuv vozíku pera (A) bílá PB7 16
2 motor 1 - posuv vozíku pera (B) žlutá PB6 15
3 motor 1 - posuv vozíku pera (C) oranžová PB5 14
4 motor 1 - posuv vozíku pera (D) růžová PB4 13
5 motor 2 - posuv papíru (I) světle zelená PB3 12
6 motor 2 - posuv papíru (J) tmavě zelená PB2 11
7 motor 2 - posuv papíru (K) fialová PB1 10
8 motor 2 - posuv papíru (L) modrá PB0 9
9 magnet pera (U) hnědá + hnědobílá PC7 22
10 volitelně - modul BB1 šedá PC1 19
11 volitelně - modul BB2 nezapojená červená PC2 18
12 GND černá + černobílá GND 24

Výsledkem propojení podle uvedené tabulky byl násl. kabel. Bohužel oba konektory byly zrovna takové, že kdybych je nechal pouze se smršťovacími bužírkami, tak se brzy manipulací některý z vodičů utrhne, doplnil jsem k nim něco, co do jisté míry nahrazuje pouzdro konektoru. Je to divné, ale drží to pohromadě a při vytahování je za co konektor chytit.

foto propojovaciho kabelu foto propojovaciho kabelu

Volitelný signál PC2 do modulu BB2 jsem zatím nepřipojoval. Proto je na kabelu červený vodič nepoužitý. PC1 jsem připojil, protože použití scanovacího pera by mohlo být někdy v budoucnu zajímavé.

Protože v kabelu bylo víc vodičů, než jsem potřeboval, aby se barvy nepletly, spojil jsem hnědou s hnědobílou dohromady, stejně tak i černou s černobílou a protože ty jsou připojené na GND, přidal jsem i stínění kabelu. To u takto pomalých signálů není nutné, ale když už tam je, tak proč ne?

Při prvním připojení plotru ovladač z BASICu i Desktop kreslily vše zrcadlově otočené v obou osách. Několikrát jsem zkontroloval připojení motorů k desce v Alfi i správné propojení kabelu mezi počítačem a plotrem, ale chybu jsem neobjevil. Nevím tedy jestli je chyba v návodu, nebo jestli motory v mnou použitém exempláři neměly náhodou špatně označené přívodní vodiče motorů. Prohodil jsem žlutý s červeným a tím smysl otáčení motorů obrátil. Přirozenější mi totiž přišlo otočit plotr konektorem k sobě, motory vlevo a magnet vpravo. Perem od uživatele je podobnější Minigrafu, naopak perem k uživateli je to podobnější XY-41xx. Je možné, že to bylo zamýšleno obráceně, ale z manuálu to není zcela zřejmé a oběma způsoby je nakonec kresba stejná. Problém by mohl nastat pouze při vkládání papíru, pokud si ho program po založení posune nečekaným směrem.

foto propojovaciho kabelu foto shora bez podpěry

Zároveň jsem při tom narazil na problém s nýtky v plošném spoji, mají tendenci ztrácet kontakt. Může to být tím, že povrch mědi stihl za tu spoustu let víc zoxidovat, možná se pod nýtky dostalo tavidlo, nebo se mechanicky uvolnily manipulací. Pomohlo je na kraji připájet ke spoji pod nimi.

Nemaje původní plasty, které byly použity k zakrytování a k vytvoření podpěry papíru, vyrobil jsem improvizovanou podpěru papíru z tvrdého kartonu a polepil šedou fólií koupenou v prodejně tapet. Fólie má pěkně odolný povrch, papír po ní dobře klouže. Podpěra má vespod žebra, které ji zpevňují a zároveň fungují jako zarážka o jednu z tyček, takže se podpěra dá snadno nasadit a drží na místě mezi těmi sedmidírkovými L profily.

Mechanické doladění

Před zahájením kresby je dobré se u Alfi ujistit, že je vše správně usazeno, utaženo a že se nic neposunulo, nebo neuvolnilo. Stavebnicový plotr je na to opravdu náchylný. Spojky obou motorů mají tendenci se povolovat, gumové zarážky na hřídelkách posouvat, občas se intenzivním klepáním uvolní i něco jiného. V podstatě to je neustálý boj.

Povolování hřídelek jsem se pokoušel eliminovat vybroušením malé drážky do hřídele motoru, aby měl jistící šroubek kam zapadnout a neklouzal po tvrdém hladkém povrchu i malou kapkou epoxidu přímo do hřídelové spojky. Pružnou spojku mezi hřídelemi lze pojistit stahovacími pásky. Gumové zarážky, pokud kloužou, je možné očistit lihem. Lépe pak přilnou k ocelovým tyčkám. Naopak dostane-li se mezi gumu a ocel jen trochu maziva, tak nebudou držet.

foto motory

V plotru jsou použité krokové motory SMR 300-100 z Nového Boru.

Jádrem posuvu pera je převodovka s navijákem vlasce, ta by měla být v ideálním případě navržena tak, aby jeden krok motoru posuvu pera způsobil stejný posun pera, jako posune papír pootočení motoru pro posuv papíru. Ale použitá hřídelka má stejný průměr jako všechny ostatní merkurové hřídelky. Zmenšit její průměr je v amatérských podmínkách obtížné a vliv ostatních nepřesností je natolik velký, že by to stejně výrazně nepomohlo.

foto navijáku vlasce foto navijáku vlasce

Samotný vlasec by měl být jen lehce napnutý. Při skladování ho obvykle posouvám mimo kladky u magnetu (na gumu), aby se zbytečně nevytahoval. Při tisku ho na kladky nasadím zpět, čímž se napne, ale ne tak moc, aby způsoboval zbytečně velké tření kladek. Příliš napnutý vlasec by kromě tření měl i větší vliv na přítlak pera, který by se mohl měnit podle polohy, kde je k vozíku uvázaný a podle vzdálenosti vozíku od krajní kladky. Na levé straně je totiž vlasec díky zvolené konstrukci mnohem níž než na pravé.

foto vozík pera foto vozík pera

Při kreslení jsem si pomáhal malou zátěží na vozíku pera, proto je tam navíc šroub a dvě podložky. Pomáhá to lépe přitisknout pero k papíru a zároveň tlumit poskakování pera.

Vůli "lineárního vedení" odstranit nejde. Leda zmenšením průměru těch zarážek na vozíku pera s vnitřním otvorem skoro 4mm klouzajících po tyčce o průměru 3.8mm, nebo výraznějším zvětšením vzdálenosti mezi nimi, čímž by se zmenšila i šířka potisknutelné plochy. Špatné je, že tato vůle může způsobit posunutí hrotu pera v ose X i o víc než 0.5mm podle toho jestli se pero po papíru pohybuje vlevo, nebo vpravo.

Možné zdvihání papíru a riziko dotknutí se hrotu pera i když není přiklopené se dá zmírnit podvlečením papíru pod vnější tyčku z těch dvou pod perem. Tento způsob může vést k rozmazávání kresby, pokud by se inkoust nestíhal vsakovat dost rychle do papíru, ale třeba při tisku z Desktopu to výrazně pomáhá udržet výsledek konzistentní.

Software

V základu byl k plotru dodáván program vytištěný přímo ve stavebním návodu. Ten toho neumí mnoho, v podstatě umí jen pohybovat motory a nic víc. Ale zdrojový kód může posloužit jako inspirace, nebo jako základ pro napsání složitějšího programu.

Zajímavější to začalo být s balíčkem alfiZXPC.7z. V něm jsem našel ovladač od Kovopodniku Broumov tehdy dodávaný na samostatně objednatelné kazetě. Skrývá se v Alfi.tap pod názvem alfi10.1. Program je mnohem větší, než tištěný příklad, nabízí i scanování pomocí pera s fototranzistorem a další funkce. Ale připadal mi těžkopádný. Kombinace ne moc přehledného BASICu a strojového kódu je pomalá, působí chaoticky a rozhodně postrádá eleganci konkurenčního MZXR k Minigrafu. Návod k tomuto programu je v balíčku v přiloženém dokumentu programy_pro_alfi.pdf.

obsah Alfi.tap

Program alfi10.1	Length  6716
Bytes   surby422	Length  3920
Bytes   alfiscree	Length  6912
Program DTEXTALFIs	Length  4947
Bytes   1       	Length  3396
Bytes   2       	Length 10176
Program DTEXTALFIc	Length  4947
Bytes   1        	Length  3396
Bytes   2        	Length 10176
Bytes   DTEXTPOPIS  	Length 11039

V dalším TAP souboru jsem objevil dva malé ovladače pojmenované ALFI1.REM a ALFI2.REM. I ty jsem vyzkoušel.

obsah ALFI2.TAP

Program ALFI1.REM	Length  2048
Program ALFI2.REM	Length   530
Program TASWORD/Cs  	Length  5401
Bytes   TASWORD/CS  	Length 10751
Bytes   ALFI+KOMP	Length   370
Bytes   tsw>dtx  	Length    55
Bytes   dtx>tsw		Length    70

Dodáván, nebo jinak šířen byl i upravený program D-Text (ukrytý v Alfi.tap), Tasword (v ALFI2.TAP) a samozřejmě komerčně prodávaný Desktop, který měl podporu Alfi, spolu s dalšími tiskárnami, přímo od Proximy.

V ZX Magazínu jsem se dočetl o programu ACS (Alfi Copy Screens), ale ten jsem neviděl, volně ke stažení nejspíš není.

Kreslení z BASICu pomocí alfi10.1 / surby422

Jak jsem zmiňoval výše, program působí těžkopádně a nepřehledně. Rozhodně to není malý ovladač, který by se dal načíst do paměti k už načtenému BASICu, který chcete vytisknout. Načítání z pásky ještě víc zdržuje přiložený nekomprimovaný obrázek, který je většinou zcela k ničemu.

Měl jsem potíže s příliš vysokou rychlostí, motory ztrácely kroky a nastavení nižší rychlosti se mi nedařilo najít. Nepokoušel jsem se o to až tak důkladně, ale nakouknutí do BASICu a rychlé zkoumání Devastem nepomohlo. Ani návod v PDF nepomohl.

screenshot ovladače k plotru screenshot ovladače k plotru screenshot ovladače k plotru

V tuto chvíli nemám čas to zkoumat víc. Snad někdy jindy.

Kreslení z BASICu pomocí ALFI1.REM

Tento program vypadal nadějněji, ale hned první věc, kterou mu musím vytknout je umístění ovladače do BASICového řádku. To je velmi nepraktické a problematické. Nejenom, že to koliduje s BASICovým programem, který bychom chtěli vytisknout, ale je to nepoužitelné s Betadiskem, protože TRDOS posune začátek BASICového programu o 112 bytů a tím znefunkční ovladač, který není relokovatelný. Ovladač má v instrukcích pevné absolutní adresy.

screenshot ALFI1.REM

Po načtení z pásky bez účasti Betadisku program funguje. Dá se nastavit podle nápovědy na řádku 1 - nejprve RANDOMIZE USR 23760, čímž se přesměruje kanál #3 na tento ovladač, případně RANDOMIZE USR 23763 pro ruční ovládání plotru. Může být potřeba pro nastavení polohy vozíku k levému okraji papíru a zároveň pro usazení polohy papíru.

Pro svůj plotr jsem musel snížit počet znaků na řádek pomocí POKE 23773,číslo, výchozí hodnota 64 při výchozí velikosti písma způsobovala náraz vozíku pera do pravé bočnice, tím ztrátu kroků a rozhození tištěného textu.

foto tisku z ALFI1.REM

Ale i tento program má k eleganci MZXR velmi daleko. Písmo v programu použité je velmi ošklivé, písmenka jsou deformovaná. Vinu ale nenese jen mechanická nedokonalost plotru. Obzvlášť viditelné to je na zvětšených písmenech kreslených pomalu (foto výše). Na vině je skutečně zvolené písmo, protože autor se zjevně snažil kreslit písmena jedním tahem s minimální četností zdvihání pera. To se mu povedlo, ale na úkor čitelnosti a vzhledu.

Kromě toho příkazy LPRINT a LLIST fungují dle očekávání.

Kreslení z BASICu pomocí ALFI2.REM

Druhý program umístěný v BASICovém řádku je určený k tisku screenshotů. V tomto případě nijak nevadí kolize s BASICovým programem. Ale problém s posouváním BASICu Betadiskem zůstává. Osobně bych to řešil spíš tak, že bych program umístil co možná nejblíž k UDG a když už by mermomocí musel být v jednom bloku a zrovna v 0 REM, tak bych na začátku provedl nastavení RAMTOPu a přesun, aby mohl být BASIC následně příkazem NEW smazán, ale ovladač v paměti mohl zůstat. Případně BASIC zcela vynechat a řešit to po vzoru všech těch programů, co se načtou a instalují z obrazovky.

screenshot ALFI2.REM

Nápověda k programu v řádku 1 je opět užitečná, tisk screenshotu proběhl správně i když kvalita není oslnivá. Program nedovoluje např. kreslit stejný mikrořádek 2x pro zvýšení hustoty kresby a kvality. Každý mikrořádek kreslí jednou, kreslí pouze při pohybu zleva doprava a přejíždí i velké prázdné plochy. Narozdíl od ovladače v Desktopu je neumí vynechat a pokračovat až v místě, kde jsou pixely.

foto tisku z ALFI2.REM

Tmavá okrová barva tisku není chyba, takový papír opravdu byl, použil jsem vytržený list ze starého školního sešitu.

Tisk z textového editoru D-Text

D-Text je čistě textový editor. Pracuje s 64 neproporcionálními znaky na řádek textu. Pro Alfi existuje upravená verze D-Textu s podporou Češtiny a Slovenštiny (pro každý jazyk jiná verze editoru). Po spuštění nejprve nabídne umístění vozíku pera a doladění polohy papíru ručním ovládáním, pak se zeptá na test a vyladění mrtvého chodu. Pro ten účel je dobré mít v Alfi založený zkušební papír, ne ten, na který se bude kreslit připravený text. Podobně jako v BASICu i tady na mém Alfi ladění mrtvého chodu čitelnost spíš zhoršovalo. Výchozí nastavení se zdálo být nejvhodnější. Po dokončení, nebo přeskočení ladění, D-Text přechází do režimu editace.

foto editoru d-text

Editace textu je v D-Textu relativně pohodlná ve srovnání s jinými editory na ZX Spectru. Program reaguje přiměřeně rychle, je v rámci možností téměř intuitivní, ale přesto je dobré si k němu přečíst manuál, protože podobně jako Desktop, má spoustu funkcí skrytých pod kombinacemi kláves a velikost RAM na ZX Spectru nestačí pro program, editovaný text a ještě detailní nápovědu. Přesto velmi stručná nápověda v D-Textu je, skrývá se pod klávesou EDIT (CS+1).

foto editoru d-text foto editoru d-text

Pro tisk z D-Textu je dobré znát alespoň klávesovou zkratku SS+A (odpovídá příkazu STOP v BASICu), kterou se lze z editoru dostat do menu. V menu lze načíst a uložit soubor, v mé verzi pro Alfi program pracuje jen s páskou, nebo text vytisknout, případně se vrátit k nastavení plotru. Podrobný návod k D-Textu je ke stažení tady.

foto tisku z d-textu

Samotný tisk z D-Textu probíhá na možnosti Alfi rychle. Vytištění těch 11 řádků vyfoceného textu trvalo zhruba okolo 5 minut. Písmenka jsou kreslená vektorově, neproporcionální, tj, všechny znaky mají stejnou šířku, ale taky nevypadají tak hezky, jak by se mi líbilo a jak bych od plotru čekal. Jsou podivně pokroucená, pero má tendenci náhodně vynechávat a D-Text neposkytuje žádné další možnosti nastavení, třeba snížení rychlosti, které by mohlo zlepšit kvalitu kresby. Druhý pokus o tisk téhož textu s jiným nastavení mrtvého chodu dokonce selhal, protože se opět zadrhl posuv papíru. Jak jsem psal hned na začátku, používání Alfi je neustálý boj s mechanickou nedokonalostí plotru.

Tisk z textového editoru Desktop

Ovladač dodávaný spolu s programem z principu fungování textového editoru Desktop tiskne rastrově, tj. simuluje jednojehličkovou tiskárnu. Desktop při tisku volá ovladač pro každý jednotlivý řádek textu vysoký 12px. Ovladači předává rastrová data (bitmapu) v nichž může být text, nebo obrázek, případně jejich kombinace a samotný ovladač to nemá jak rozlišit.

Teoreticky je možné tento způsob tisku obejít a textová data ovladačem získat přímo z paměti editoru, četl jsem, že takový ovladač existuje (nevím už jestli pro Alfi, nebo jiný plotr), ale ten k Desktopu přibalený se tak nechová. Ignorováním rastrových dat, která editor ovladači předává, se ovladač připraví o možnost tisknout obrázky do textu vložené, nebo správně tisknout v textu použitá písma. Nevím, jestli ovladač kreslící písmena vektorově zachovává alespoň jejich proporcionalitu. Prostor v paměti vyhrazený pro ovladač je pouhých 1680 bytů a to není mnoho.

Tisk rastru na plotru vede k mnohem intenzivnějšímu klepání pera do papíru než při kreslení čar, je proto hlučnější a pomalejší. Tak pomalý, že vyklepání celé A4 textu může trvat hodiny, podle hustoty grafického výstupu, podle nastavení ovladače plotru a dalších detailů. Pokazí-li se něco až na konci tisku, může to být po dlouhé době čekání na výsledek opravdu k zlosti.

foto editoru desktop s textem foto tisku

Podle mých pokusů např. vytištění 10 řádků hustě psaného textu výchozím písmem 2 trvalo zhruba 32 minut (step 2, better quality, speed 60). Tisk celé hustě popsané A4 o 60 řádcích tak odhadem vychází na 3 až 3.5 hodiny. To opravdu není málo ani na poměry v 80. letech. Tisk podobné stránky by proslule pomalé tiskárně BT-100 trval něco okolo 30 - 40 minut.

foto vytisteneho textu

Kvalita tisku je docela přijatelná. Text je dobře čitelný, písmo kontrastní, ale v tisku jsou vidět chyby. Občas některý z pixelů není tak výrazný, jak by měl být a mezi pixely jsou drobné šmouhy, nejspíš způsobené vibracemi vozíku pera v kombinaci s nepodloženým papírem, vůlemi a všeobecným nedostatkem tuhosti konstrukce.

Možnosti nastavení ovladače v Desktopu

Něco málo je popsáno v manuálu k Desktopu, takže budu část informací opakovat, ale je to myslím, nutné. Ve skutečnosti totiž možností nastavení není tak moc, jak by se na první pohled mohlo zdát. Prakticky použitelný je jen malý rozsah hodnot.

screenshot screenshot screenshot

QUALITY nejsem si jistý, co dělá, u Minigrafu lepší kvalita kreslí totéž i při zpětném pohybu pera, u Alfi se vše kreslí jen zleva doprava, protože není možné pero spolehlivě zasynchronizovat i pro opačný směr. Na výsledku jsem rozdíl v kvalitě neviděl.

Doplňuji - protože po napsání článku pracuji na disassemblování ovladače, už vím, proč nastavení kvality nic nedělá. V ovladači je chyba. Během tisku se omylem čte a testuje jiný byte, než ten, který obsahuje volby nastavené uživatelem. Testovaný byte je trvale nula a proto kvalita tisku je trvale normal. Vyšší kvalita by měla způsobit opakové kreslení téhož a tím zvýšení kontrastu.

WIDTH určuje šířku stránky v krocích motorů plotru. Výchozí hodnota 960 odpovídá 480px širokému textu při nastaveném step 2, je to tak především kvůli přenositelnosti textů mezi tiskárnami. Pro tisk screenshotu jsem používal hodnotu 1024, aby se mi do textu vešel obrázek 256px široký.

HEIGHT analogicky, jako width, určuje výšku stránky v krocích motorů plotru. Z této hodnoty se spočítá počet řádků textu vydělením hodnotou step a 12, což je výška textového řádku v pixelech.

X BEGIN určuje šířku levého okraje v krocích plotru, dá se použít k experimentálnímu vycentrování tisku na stránce, nebo prostě ignorovat.

Y BEGIN určuje šířku horního okraje v krocích plotru, výchozí hodnota je 0, protože obvykle nechceme okraj zvětšovat. Většina tiskáren nějaký okraj má i tak. Je to dáno mechanickým řešením posuvu papíru. U Alfi mi to vycházelo okolo 15mm byl-li papír založen tak, aby při prvním řádku kouskem zasahoval pod vnější tyčku, čímž se ohýbá dolu a tím se zabraňuje případnému zdvihání směrem k hrotu pera.

GAP určuje šířku mezi sloupci při vícesloupcovém tisku. Přiznávám, že vícesloupcový tisk jsem zkoušel jen s Minigrafem, ačkoli je i s Alfi možný, při zdlouhavosti tisku se mi nechtělo čekat. Skutečný praktický smysl vícesloupcový tisk může mít asi jen pří tisku dvou A5 na jeden list A4 se zapnutou rotací o 1/4.

X/Y STEP nastavuje počet kroků motorem na jeden pixel rastrových dat. Použitelné hodnoty jsou 2 až 4 podle velikosti hrotu pisátka. S mikrofixami Centropen 2811 0.3mm se dala používat i nejmenší / výchozí hodnota 2, viz foto výtisku výše. Záleží i na způsobu založení papíru, jestli se hrot dotýká kolmo a pouští víc barvy, nebo lehce šikmo, protože je papír provlečený pod vnější tyčkou a hrot hranou kreslí tenčí čáru. Pro kresbu screenshotu jsem používal step 4, pixely se kreslily dost velké, aby kresbu tolik nerušily jiné chyby, rozpíjení barvy na začátku čar a takové věci. Step 3 se mi neosvědčil, protože mezery mezi čarami nebyly stejné, liché a sudé byly různé.

DRAW SPEED určuje rychlost pohybu při spuštěném peru, vyšší hodnota znamená větší zpoždění čekací smyčkou po každém kroku motoru v ose X, nutno experimentálně odzkoušet podle pisátka.

INTERRUPT umožňuje přerušovat dlouhou čáru po zadaném počtu pixelů. V manuálu je zmíněno, že některá pisátka mají tendenci při dlouhém tahu čar pouštět méně inkoustu a čára se ztenčuje. S mikrofixami Centropen 2811, nebo s gelovými kuličkovými pery (Pilot G-2) se mi to nedělo. Naopak, v černých plochách se přerušování čáry projevovalo různým moaré, protože položení pera se projeví tmavším bodem, ale libovolně dlouhá čára pak už byla pořád stejná. Hodnotu jsem nastavoval na 255 (resp. 0 odpovídá 256).

COLUMNS určuje počet sloupců u vícesloupcového tisku.

ROTATE 1/4 povoluje rotaci stránky, chcete-li tisknout na šířku.

Poslední dva řádky jsou informační a ukazují možnou šířku textu v pixelech a výšku stránky v řádcích tak, jak to vyplývá z uživatelem pozměněných hodnot.

Kromě přepínatelných, nebo editovatelných parametrů reaguje ovladač ještě na klávesy o kterých se manuál nezmiňuje.

klávesa L pohybuje perem vlevo tak dlouho, dokud uživatel klávesu drží. Plotr nemá čidla a polohu pera musí určit uživatel před zahájením tisku. Bylo by fajn, kdyby fungovala i klávesa P, nebo R pro směr vpravo.

klávesa O provede vysunutí stránky z plotru, inicializaci ovladače, vynuluje počítadlo řádků a po zahájení tisku bude očekávat vložení papíru. Jakmile je papír vložen a uživatel to stiskem klávesy potvrdí, posune ovladač papír o 64mm dolů (nejspíš mám plotr orientovaný obráceně a papír by měl mít horní hranu zarovnanou s tím, čemu říkám vstupní podpěra papíru...) a začne tisknout první řádek označeného bloku.

Závěrem?

Alfi je rozhodně zajímavé zařízení. Určitě je to i dnes fajn hračka pro výuku, pro objevování úplných základů mechaniky a robotiky. Pobaví stavbou a zprovozňováním. Ale jsem rád, že mohu tisknout na čemkoli jiném.

Odkazy

Kromě výše zmíněné knihy "Amatérské Zapisovače" vyšla od autora konstrukce série článků v časopise VTM v roce 1988 (čísla 8/88 až 14/88).

Download

  • alfiZXPC.7z - balíček programů s nejenom původním ovladačem od výrobce, DTextem, Taswordem a dokonce i ovladačem pro PC
  • desktop_driver_alfigraf.tar.bz2 - z velké části disassemblovaný a okomentovaný originální ovladač, který byl distribuován Proximou jako součást editoru Desktop

Historie změn článku

  • 2020-07-23 - zveřejněno

[ Zpět na hlavní stránku ]

Tento web je převážně o ZX Spectru, kompatibilních počítačích a jiném zajímavém hardwaru. Naleznete-li chybu, nebo byste rádi cokoliv co s tímto souvisí, můžete mi napsat email. Stručně o mém webu zde.