Sériový kabel pro EPSON HX-20



Každý, kdo se někdy pokoušel něco programovat na EPSONu HX-20 a tom jeho LCD displejíčku ví, jak nepohodlné to je. Nicméně tento stroj je opravdu nadčasový a tak bylo již od začátku možné připojit klasický CRT monitor či dokonce TV přijímač. Bohužel to nebylo možné udělat jednoduše a napřímo, ale byl nutný tzv. dislay controller, tedy krabička, která se zapojila mezi počítač a monitor. Vůbec se k Epsonu dala připojit spousta užitečných věcí, které zahrnovaly i disketové mechaniky či snímač čárového kódu. Pro ilustraci uvádím následující obrázek z originální dokumentace s možnostmi rozšíření HX-20. Jen pro pořádek, tento úžasný stroj vznikl někdy v letech 1981/82, tedy stejně, jako hračkoidní ZX Spectrum...


Možnosti rozšíření HX-20
Možnosti rozšíření HX-20

HX-20 disponuje standardním sériovým rozhraním RS232C na DIN8 konektoru a přímo v Basicu je zabudována podpora pro přenos textových souborů v ASCII formátu. Není tedy nic jednoduššího, než si vyrobit kabel pro propojení s PC a programy jednoduše psát a editovat v oblíbeném textovém editoru na PC a poté je jednoduše přenášet do Epsona. Pochopitelně to lze i naopak, takže když na Epsonu v programu něco upravíme, můžeme si zdroják poslat zpět do PC. Obojí jsem úspěšně vyzkoušel a obojí funguje. Níže předkládám návod, jak na to. Začněme výrobou kabelu, který je opravdu jednoduchý. Na netu lze nalézt několik různých zapojení. Já si vybral to nejjednodušší pouze pro signály RX a TX bez řízení toku:


Sériový kabel pro HX-20
Sériový kabel pro HX-20
Sériový kabel pro HX-20
Sériový kabel pro HX-20

Jelikož se mi nechtělo objednávat konektor DIN8, použil jsem klasický DIN5. Ovšem šel by použít i DIN3, protože se využívají právě jen ty piny, které jsou na DIN3. Tedy v případě, že použijeme sériovou komunikaci bez řízení toku a jen se signály RX a TX. Akorát je potřeba si dát bacha, abychom konektor omylem nezasunuli do rozhraní SERIAL, které se nachází hned vedle RS232C, a které je vyvedeno právě na DIN5. Rozhraní SERIAL je určeno pouze pro originální příslušenstí EPSONa, jako jsou výše zmíněné disketové mechaniky či display controller! Naproti tomu RS232C je standardní sériový port se všemi příslušnými signály. Ze strany PC je použit klasický Canon9. Na výrobu propoje stačí třížilový kabel, resp. stíněná dvoulinka.

Pak již jen stačí propojit HX-20 s PC a na něm spustit a nakonfigurovat terminálový program. Já to zkoušel s Hyperterminálem. HX-20 dokáže komunikovat maximální přenosovou rychlostí 4800Bd, ale podle zkušeností jiných uživatelů je pro download z PC nutné použít nižší rychlost (1200Bd), jinak Epson nestíhá data ukládat. Nicméně přenos mi u delších programů končil chybou i při rychlosti 1200Bd. Nepomohly ani 2 stopbity. Vše vyřešilo až vložení meziznakové a meziřádkové mezery 1ms v konfiguraci ASCII terminálu. Poté bylo možné dokonce přenosovou rychlost opět zvýšit na 4800Bd a přenos byl spolehlivý. Při uploadu na PC to není problém vůbec.


Konfigurace terminálu pro komunikaci s HX-20
Přenosový protokol
Konfigurace terminálu pro komunikaci s HX-20
Meziznaková mezera

BASIC soubory pro přenos do HX-20 musí být v obyčejném textovém formátu a na jejich editaci stačí i Notepad z Windows. Důležité je, aby každý řádek programu byl řádně ukončen odřádkováním CR LF (0D0A). Hlavně je potřeba pohlídat, aby byl odřádkován i poslední řádek, jinak se do HX-20 neuloží! Jako příklad si dovolím předložit dva své vlastní výtvory: programy PREVOZ.TXT a RAMSIZE.TXT naleznete v níže uvedeném ZIPu, ale i v balíku softu pro ROM Cartridge. První program je jednoduchá textová hra typu Převozník, koza, vlk a zelí, druhý program zjistí velikost dostupné RAM v HX-20. Díky němu jsem zjistil, že mám vestavěný expansion board a k dispozici celých 32KB RAM (standard je 16KB).


Ukázky BASIC programů pro HX-20


Jelikož výše uvedený třížilový kabel neumožňuje řízení toku, nemá EPSON žádnou informaci o konci přenosu a musíme jej tak ukončit ručně stiskem klávesy BREAK. Nejprve je ovšem nutné si alespoň nahrubo spočítat kolik času přenos daného souboru zabere. Známe jeho velikost v bajtech, známe přenosovou rychlost, známe počet start a stop bitů a známe délku meziznakové mezery. A můžeme počítat:-) Já se ale nějak dopočítat nemohu a přenos trvá podstatně déle, než si vypočítám. Asi dělám něco blbě:-) Po uplynutí předpokládané doby nahrávání stiskneme BREAK a ověříme, že se program nahrál celý. Stačí zadat příkaz LIST xxx, kde xxx je číslo posledního řádku nahrávaného programu v BASICu.

Nahrání BASIC programu z terminálu do HX-20 provedeme příkazem LOAD s těmito parametry:

LOAD "COM0:(68N1F)"[ENTER]

Následně z terminálu odešleme BASICovský program volbou Odeslat textový soubor. Znovu zdůrazňuji, že každý programový řádek v textovém souboru musí končit kódy CR LF. A znovu zdůrazňuji, že je to důležité i u posledního řádku.


Odeslání textového souboru
Odeslání TXT souboru
Listing na terminál
Listing na terminál

Přesný popis všech parametrů příkazu LOAD je v dokumentaci, ale jen pro pořádek zde platí, že 68N1F znamená: rychlost 4800Bd (6), přenášíme vždy 8 bitů, bez parity (N), končíme 1 stopbitem, bez řízení toku (F).

Výpis BASIC programu z HX-20 na terminál provedeme příkazem LIST s naprosto stejnými parametry, jako u LOAD:

LIST "COM0:(68N1F)"[ENTER]

Dále je možné na terminál vypisovat hlášky například příkazem PRINT, ale nejprve je nutné kanál otevřít příkazem OPEN. Příklad jejich použití je na konci převozníka. Je zde malá rutina, která po spuštění příkazem RUN 1000 provede výpis zdrojáku na terminál.

A když už jsem nakousl ten display controller... Asi nebude jednoduché ho sehnat, ale byla by možná stavba repliky? Sice je k dispozici jeho úplné zapojení, ale obsahuje jednočip HD6301 (stejně jako samotný HX-20, který má hnedle dva) a asi nebude možné sehnat do něj firmware. Nicméně je docela dobře popsán i způsob (sériové) komunikace s tímto adaptérem, takže by asi bylo možné navrhnout si kontrolér vlastní. Ale kdo a proč by to vlastně dělal, že? Mimochodem, originál obsahuje jako hlavní videočip VDG 6847.



Další stránky o HX-20 na Nostalcomp.cz:

Výměna akumulátorů v HX-20
ROM Cartridge pro HX-20


RET



Odladěno na MS IE 8.0 a Firefoxu při rozlišení min. 1024 x 768 pixelů
www.NOSTALCOMP.cz    2010  -  2018