Uplynulý víkend sme s partiou podobne „postihnutých“ strávili na JHCone v úplne novom formáte. Akcia sa tentokrát konala v súkromnom múzeu Míry Talíře v Radosticiach u Trocnova.
Ako sa častokrát stáva, účastníci zo Slovenska prídu skôr ako domáci z veľkých miest, v ktorých je dopravná situácia zjavne komplikovanejšia ako z okraja Bratislavy. Skorším príchodom sa mi podarilo zabrať pomerne rozľahlé územie, na ktoré sa mi zmestilo ozrutné TNS HC-08 aj laptop vedľa seba. To sa stretlo s miernou nespokojnosťou Logouta (citujem “že si sem někdo doveze takovou hnusnou velkou ohavu”), ktorý mal zrejme po svojom príchode pocit, že už nie je kam sa rozložiť. Čoskoro však už sedel na nedaľekej lavici a aj miesto na stole sa našlo.
Nazbieralo sa nás dokopy 14 a v najväčšej špičke „obývačka“, kde sme trávili väčšinu času, už slušne praskala vo švíkoch. Report z priebehu akcie vrátane fotodokumentácie si snáď budeme môcť čoskoro prečítať na webe CI5.
Trochu sebecky by som sa v článku ďalej chcel venovať zaháľke, ktorou som trávil väčšinu času keď som sedel za počítačom. Hranie sa s TNS, veď preto som ho tam dovliekol.
Vzhľadom na to, že sa podarilo rozchodiť radič disketových mechaník, zohnať bootovateľnú disketu a dokonca na ňu nahrať potrebné programy, otvorila sa cesta k oživeniu tohto zombíka.
Začnem jednou drobnou odbočkou z minulosti. Demom sa kedysi nazývali také programy, ktoré demonštrovali viac možnosti počítača ako programátorské schopnosti alebo umelecké vnímanie jeho autora. Jedným z takýchto puristických počinov bolo určite demo písané v Basicu pre prototypové PMD 85-0, ktoré sa pohodlne zmestilo do 1kB ROM. Párkrát som sa ho odhodlal zlomiť, pokúsiť pochopiť a naportovať do iných Basicov, ale vždy ma odradil jeho formát. Kvôli úspore miesta chýbajú komentáre a čitateľnosť kódu je výrazne znížená nahustenými príkazmi bez medzier a riadkami často presahujúcimi šírku obrazovky s početnými dvojbodkami v nich.
Na Bytefeste som však zistil, že to nie je nemožné. Localgh0st na svojom stolíku predvádzal svoj port do BBC Basicu, ktorý mu bežal síce emulovane, ale spoľahlivo. Predpokladám, že mal šancu ho vyskúšať neskôr aj na reálnej mašine.
K exotickej platforme TNS HC-08 sa toho dochovalo naozaj málo. Veľkú zásluhu na záchrane tých posledných artefaktov majú Zdeněk Houška, EC1045.01, Martin Hinner, Poke a mnohí ďalší vytrvalí nadšenci. Som rád, že sa vďaka nim dnes medzi ľuďmi potulujú aj sporadické kópie systémových diskiet TNS-DOS formátu 5.25”. Z iného archívu, konkrétne pre platformu GC, sa podarilo vydolovať GBASIC.COM s dvomi krátkymi demonštračnými programami a kompletným návodom. Vylúskanie súborov z obrazov diskiet umožnil CIM od Romana Bórika, ktorý ho po mojej intervencii na Bytefeste upravil na podporu TNS-DOS-u. Vďaka!
A tak sa stalo, že som konečne po dlhom pátraní mohol naštartovať funkčný systém aj s grafickým interpretrom Basicu. Už táto vec sama o sebe potešila oko šťastného majiteľa dvoch takých počítačov (ak sa tá ohava dá tak nazvať 🙂) – Pokeho. Od Localgh0sta som si dosť neskoro vypýtal ním prevedený zdroják, ale snaženie posunúť sa ďalej som nevzdal a nasadil zbrane dostupné dnes už každému šťastnému predplatiteľovi moderných technológií.
Zadal som úlohu AI, nech ROM s PMD demom stiahne, prevedie do textovej podoby a naportuje do BBC Basicu. Vďaka Martinovi Bórikovi som mal opäť uľahčenú cestu. Jeho pomerne čerstvý on-line PMD85 emulátor poslúžil AI ako testovacia platforma. Mnou použitý Amazon Quick Desktop ovláda browser skill a vie sa zahrať na klikajúceho užívateľa. Ak mu nebolo niečo jasné, poslal som ho na webemu, nech si to vyskúša predtým ako sa ma začne niečo pýtať.
Po BBC Basic verzii, ktorú sa podujal otestovať už počas trvania JHConu Martin Černý, som sa odhodlal zadať klasický “llama” prompt – a teraz mi do preveď do GBASIC-u. A tam sa ukázal rozdiel medzi vibe kódovaním a agentickým vývojom. Pri prvom menovanom, LLM samozrejme netušil čo je GBASIC, nevedel o existencii TNS-DOS-u, vylámal si na tom všetky virtuálne zuby aké len jazykový model a AI asistent čo ho požíva môže mať. Pochopil som teda, že na JHCone to už nestihnem, lebo sa čas preklopil do nedele a schyľovalo sa k odjazdu.
Po návrate domov som zmenil prístup. Najprv som dal AI preložiť manuály k GBASIC-u písané v češtine do angličtiny, naštudovať si kapitolu o grafických príkazoch a rozpracoval som plán výroby 11 efektov, ktoré sa budú postupne jeden po druhom implementovať, testovať a zapisovať volaním externého príkazu (CIM) na virtuálnu disketu. Ďalej som mu dal vyrobiť direktora, ktorý bude v požadovanom poradí efekty spúšťať a po ich skončení reštartovať celý cyklus odznova.
Pri tomto bol dôležitý “groudning” (vraj po slovensky ukotvenie, ale to hovorí AI, nie ja), vďaka ktorému AI vie s čím má do činenia, má “naštudované” manuály, pozná paralely (napr. že TNS-DOS je upravené CP/M), má nástroje (CIM) prípadne si ich vyrobí podľa popisu alebo dekompiláciou a analýzou existujúceho softvéru. Za jazdy si napríklad pripravil tokenizer pre GBASIC aj PP01 Basic či injektor na disketu vo formáte FAT12, aby sa dal PC port testovať v emulátore.
Sem-tam som takto podkutému agentovi poradil figeľ napr. ako nahradiť príkaz LABEL na ZX Spectre alebo PP01 a zobraziť aspoň písmená s dvojitou výškou.
Vzniklo tak v pomerne krátkom čase celkovo 5 portov:
- BBC Basic ( zdroj )
- TNS GBasic ( zdroj | token | 8″ img | 5.25″ img )
- ZX Spectrum Basic a Didaktik M ( ZX | DM )
- PP01 G-Basic ( zdroj | token )
- PP06 (PC XT) GWBASIC ( zdroj | 1.44MB img )
Výsledok si môžete prezrieť tu:





Čo ma na tomto miniprojekte neskutočne bavilo bolo prepojenie ochotných ľudí, dostupných informácií a nástroja, ktorý sa neunaví (určite je menej lenivý ako ja) je pre mňa fascinujúce. Keby ktorýkoľvek z týchto komponentov chýbal, nemal by som šancu zbúchať tieto všetky porty dema za dve poobedia.
O ich kvalite sa asi nemá význam baviť. Je to čisto práca stroja, ale vzhľadom na to, že tým neriadim jadrovú elektráreň, ani nestrážim dôchodkové fondy (to by muselo byť napísané v Cobole 🙂), nemusím sa obávať prehliadnutia dákej mission-critical súčasti. Ak sa AI náhodou niečo nepodarilo, tak si to viem doladiť priamo na konkrétnej platforme pravdepodobne jednoduchšie ako v zhustenom nečitateľnom PMD origináli, ktorý to celé spustil.
Dúfam, že ste článok v tejto “AI-hype” dobe vydržali dočítať až sem. Snáď som mojim použitím AI nespôsobil traumu jej odporcom a nepohoršil jej fanúšikov na aké účely ju používam (pokiaľ viem, všetky mačiatka žijú).
Míra a Logout – vďaka za super akciu, kde sme to mohli celé rozprúdiť,
Ikon