IP65

Potřebujeme nový TCP/IP stack pro 6502 počítače?

Na 6502 počítačích už nějakou dobu zajišťuje provoz sítě prostředí Contiki s uIP stackem.
Commodore 64 má výhodu, že je na něm Contki krásně graficky barevné.

Apple ][ těží z výhody 80 znaků na řádek (na strojích, které jsou touto vlastností vybaveny), ale monochromatičnost prostředí vůbec nepřipomíná barevnost Commodore.

A na Atari 800 vypadá Contiki se 40 znaky na řádek už vůbec spartánsky.

(Existují zdrojáky portu pro Oric Atmos, ba i porty pro VIC20 a Commodore PET, ale nepodporují žádný síťový interface.)

Výhodou i nevýhodou je, že síťové programy běží v Contiki, takže mají jednotný vzhled a ovládání, sdílí spolu jeden TCP/IP stack, nejsou to ale úplně nativní aplikace dané platformy a síť tak nejde mimo Contiki dobře využít.

Na druhou stranu pro Contiki vznikl i software Contiki BBS, a na uIP stacku před lety vznikl (dnes již nepoužitelný kvůli změně přihlašování) Twitter klient Breadbox64.

Apple II GS má výhodu v TCP/IP stacku Marinetti, ten se ale týká jen grafického GS/OS a v ProDOSu jej nevyužijete.

Tak před lety vznikl další projekt – IP65.
V assembleru psaný TCP/IP stack pro počítače s 6502 procesorem.

Narozdíl od mnoha podobných projektů, které začnou a zůstávají tak nějak nedokončeny, IP65 je stále aktivní na několika zásadních platformách.

Autor si v poslední době postěžoval, že v assembleru napsaný úsporný kód s assemblerovým API málokdo ocení, a tak svému assemblerovému výtvoru přidal API a knihovnu pro programátory v C.

Doufá, že tím podpoří vznik více aplikací, které by IP65 využily.

A sám jich hned několik předkládá.

Stack IP65 tak stále žije a dále se vyvíjí.

IP65 funguje zatím na platformách:

* Commodore 64 – podporuje interface RR-Net a Eth64.

* Apple ][ – podporuje interface LanCE, Uthernet a Uthernet II.

* Atari (XL) – podporuje interface Dragon Cart.

IP65 pro jednotlivé platformy najdete na GitHubu.
Pokud budete bloudit, jsou to soubory ip65-c64.zip, ip65-apple2.zip a ip65-atari.zip.

Předpřipravené aplikace jsou psány v assembleru (Telnet65) nebo v C (ty ostatní).

Jsou to tedy:

Date65 vznikl jako jednoduchý ukázkový program. Je to NTP klient, který zobrazí čas. Pro nás je důležité, že zobrazuje STŘEDOEVROPSKÝ čas.
Je k dispozici pro všechny tři platformy. Na Atari se Sparta DOSem 4.4 a vyšším navíc umí nastavit systémový čas a datum.

HFS65 (http file server) umí nasdílet soubory na osmibitu přes http rozhraní.
Je k dispozici pro Commodore 64 a Apple ][, zatím není ve verzi pro Atari.
Na Apple ][ umí kromě linků na jednotlivé soubory a jejich stahování poslat i image celé diskety jako .PO soubor.

Wget65 přenáší soubory opačným směrem, tedy do osmibitu.
Zatím je k dispozici jen pro Apple //e s Uthernet II kartou.
Podporuje historii a automatické dokončování příkazů, umožňuje vybrat disk nebo jméno souboru ze seznamu.
Stažené soubory ukládá jako BIN s počáteční adresou 0000, což lze obejít tím, že se soubor požadovaného typu nebo počátku vytvoří předem a Wget necháme jej přepsat.
Pokud jde o image diskety, zapíše na specifikovaný disk (na 140 KiO médiích použije DOS 3.3 pořadí sektorů, na ostatních discích nebo má-li image příponu .PO použije ProDOS pořadí sektorů).

Podívat se můžete na ukázkové video, kdy do Contiki místo Wgetu nahrál autor Wget65, pomocí Web browseru v Contiki si našel soubor na webu, adresu přenesl do Wget65 a stáhl image na disk.

Telnet65 psaný v assembleru emuluje VT-100 terminál. Vychází z commodoráckého terminálu CaTer.
K dispozici je pro všechny tři platformy.
Textový režim Apple ][ neumožňuje zobrazovat tučné a podtržené písmo, takže třeba v Midnight Commanderu nepoznáte označené soubory.
Commodore 64 to nahrazuje výhodou zobrazování barev, tedy i když VT-100 normálně barvy nepodporuje, můžete spustit mc -c pro vynucení barev.

Tweet65 je další jednoduchý demonstrační program.
Po změně API přestal fungovat Breadbox64 Twitter klient a žádný osmibit se už asi k Twitteru přímo nepřipojí, protože zpracování SSL by asi dlouho trvalo.
Jde to ale nepřímo přes služby jako IFTTT, kde si můžete vytvořit účet, nastavit si příslušnou akci (poměrně složitým způsobem přes applety a webhooky). Tuto přednastavenou akci pak můžete využít k poslání tweetu z osmibitu.
Tweet65 ukazuje, jak služby typu IFTTT využít pro jinak poměrně komplikované akce.
K dispozici je pro všechny tři platformy.

Když už jsem zmínil Dragon Cart pro Atari:

Zdá se, že je to pro Ataristy hardware snů, a přitom jej nikdo nevyrábí.
Kdysi se vyrobilo pár kousků, které budou nejspíš na eBayi vyvažovány zlatem či diamanty.

Cartridge je přitom extrémně jednoduchá.
Dva čipy 74xx, nějaká bižuterie okolo na jedné decse a druhou desku tvoří IP-Dragon modul s řadičem, oddělovacím trafem a ethernet konektorem.

IP Dragon sice není sehnatelný, ale ten řídící čip sehnatelný je (DigiKey 3000 kusů, Mouser 1000 kusů, normálně koupitelné).

Existuje schéma jednodeskové verze Dragon Cart, která obbsahuje totéž, co předtím verze s dvěma deskami – ta dvě 74xx, řídící čip CS8900A-CQ, trafíčko a konektor s nějakou bižuterií okolo.

Už jen aby někdo, kdo tomu rozumí, nakreslil desku, aby pasovala do cartridge konektoru (případně nějaké krabičky), a vyrobil pořádnou dávku.
zajímavé je, že se toho ještě nechytil Zaxon nebo Lotharek.

Potřebné aplikace už máme a s IP65 stackem máme naději, že budou vznikat další, když bude na čem je provozovat.