ZNET
ISA 8bit adaptér pro počítačovou síť FELAN vyráběný ZPA Nový Bor pro počítač PC 16 NB ("Honza").
Rychlost 880kbps, manchester kódování, topologie - sběrnice, CSMA/CD, 50ohm koaxiální kabel, max. délka 300m, maximum 32 účastníků.
Vývoj hardware pro TNS-NET 900 i karty ZNET (FELAN) proběhl v Tesla Elstroj. Martin Bílý z ČVUT FEL, jeden z autorů sítě FELAN k podobnosti karet v roce 2024 komentoval: "Mám za to, že karta ZNET byl místní vývoj bez opisování, Tesla Elstroj, lidi okolo E.Smutného. A i případná podobnost s kartami pro SAPI86-net atd. mi přijde pochopitelná. Jednak je to od stejných lidí, jednak se stavělo z aktuální součástkové základny ve smyslu typů součástek a jejich reálné dostupnosti v nějakých množstvích. A asi i s ohledem na předpokládánou kvalitu součástek a požadavky na nějakou kvalitu výsledného celku řídícího nějaký průmyslový proces se to pak víceméně samo poskládalo. Vím, trochu to zjednodušuju :-).
To všechno už bylo vlastně na začátku devadesátých let. Trh se postupně otevřel, začal se objevovat Novell NetWare, ministerstvo školství stvořilo Dům zahraničních styků, přes který školy získávaly relativně levné licence. No a všecho bylo rázem jinak."
Ovládání ZNET z PC
V paměti RAM je od adresy CD00:0000 umístěna zóna parametrů pro spolupráci osobního počítače s komunikačním adaptérem. Je-li v počítači zasunut druhý komunikační adaptér, jeho zóna parametrů leží od adresy CE00:0000. V zóně parametrů je uloženo:
+0 | Stav konfiguračních přepínačů adaptéru. Přepínače nula až pět se používají k nastavení síťové adresy (čísla) komunikačního adaptéru. Přepínač šest odpovídá propojce W1 u IBM. Nastavení šestého přepínače způsobí, že při inicializaci (zapnutí) si PC vyžádá zavedení operačního systému z počítače poskytujícího službu Boot Server. Přepínačem číslo sedm se nastavuje lokální číslo adaptéru, obvykle nula. Jsou-li v počítači zasunuty dva adaptéry, rozlišují se tímto přepínačem. |
+1 | Číslo tohoto adaptéru. Při inicializaci se sem zapíše šestibitová adresa nastavená na přepínačích. PC má právo toto číslo měnit a tak přijímat zprávy určené i jiným počítačům. |
+2 | Čítač kolizí. Je-li při vysílání detekována kolize, čítač se inkrementuje. PC má právo hodnotu čítače měnit. |
+3 | Čítač chybných paketů. Je-li přijat chybný paket (CRC error apod.), čítač se inkrementuje. PC má právo hodnotu čítače měnit. |
+4 | Tx semafor. Má-li PC připravenu zprávu k vyslání, nastaví semafor na kladnou hodnotu. Úspěšné vyslání zprávy (včetně přijetí případně vyžádaného potvrzení) je indikováno nastavením semaforu na nulu a přerušením IRQ 2. Pokud vyžádané potvrzení nepřijde do časového limitu, je semafor adaptérem nastaven na 0FFH a vyžádáno přerušení IRQ 2. Dojde-li při vysílání ke kolizi, pokus vyslat zprávu se opakuje až po testu hodnoty semaforu. Vynulováním semaforu tedy může PC zrušit dlouho trvající neúspěšné pokusy vyslání zprávy. Hodnota 80H indikuje odmítnutí rámce pro chybný formát. Hodnota 0FEH znamená odeslání rámce a čekání na potvrzení. |
+5, +6 | Délka zprávy v bytech. |
+7 - +606 | Text vysílané zprávy (buffer). |
+607 | Rx1 semafor. Nulová hodnota semaforu povoluje příjem zpráv. Při příjmu zprávy je do semaforu uložena nenulová hodnota a provede se přerušení IRQ 2, tedy přerušení číslo 0AH. Chce-li PC přijmout další zprávu, musí semafor vynulovat. |
+608,+609 | Délka přijaté zprávy v bytech. |
+610 - +1209 | Buffer pro příjem zpráv. |
+1210,+1211 | Vyhrazeno pro adaptér. |
+1212 | Rx2 semafor, ... atd. jako od Rx1. Zde začíná druhá oblast pro příjem zpráv. |
+1817 | POST informace. Po resetu adaptéru probíhá test ZNETu. Dokud se v POST neobjeví 'OK' nesmí PC nic dělat se sdílenou pamětí. Po resetu a hlášení POST OK je v TX_BUF ASCIIZ řetězec verze ZROM. Pokud se v POST objeví 'ER', není adaptér funkční a v TX_BUF může být ASCIIZ text chybové zprávy. Dokud je v POST nedefinovaná hodnota, nelze nic dělat. |
+1819 - +2047 | Data adaptéru. PC sem NIKDY nesmí zapisovat. |
Z velikostí bufferů vyplývá, že lze přenášet zprávy dlouhé nejvýše 600 bytů. Pro příjem zpráv se používá některá z momentálně volných dvou přijímacích oblastí.
+0 | Adresa příjemce. Adresa 0FFH má význam zprávy pro všechny. |
+1 | Žádost o potvrzení (při <> 0) |
+2 | Adresa odesilatele |
+3 - +6 | Rezerva, samé nuly |
+7, +8 | Délka zprávy počínaje bytem +0 |
+9 | Typ zprávy |
+10 | Data - dle konkrétního typu zprávy |