Skvělý seriál, ale upozornil bych ještě na někdy neprávem opomíjený Advan Basic. Ten se u nás sice vůbec neprosadil, protože byl pouze na disketě, ale co vím, přímo kompiluje zapsaný program, má spoustu příkazů pro PMG, strukturované programování atd. Dokonce umožňuje i cosi jako inline assembler. Netuším, zda lze ten zkompilovaný program nějak distribuovat samostatně či s runtimem, ale rozhodně šlo o zajímavý a poněkud zapomenutý jazyk.
Jsem rád, jestli jsem přinesl něco nového a moc děkuji za celý seriál! Každopádně, ještě něco málo k tomu Actionu! - kdysi jsem si s tím dost hrál, jen tak zkusmo jsem převáděl klasickou hru Hammurabi do tohoto jazyka (který se pro ni vůbec nehodí, ale šlo jen o pokus), a mimochodem jsem zjistil, že třeba ten problém s floating point čísly vlastně nebyl, protože existuje The Action Toolkit, kde je knihovna, která tu práci s nimi zajistí (ale bohužel používá rutiny z ROM, takže je asi pomalá). Kromě toho Action umožňuje třeba používat jména funkcí v proměnných (v podstatě je to pointer na funkci), takže tím v podstatě umožňuje implementaci callback funkcí (a samozřejmě má další vychytávky, třeba používání modulů psaných jen v assembleru apod, ale toto mě dost zaujalo). Nejlepší je přečíst si rozšířený moderní manuál action_rev_3-6_GBXL_2018, který sice vychází z toho původního, ale je tam popsáno používání Runtimu i té Action Toolkit. Musím říct, že na možnosti osmibitu šlo asi o nejsilnější programovací jazyk, který opravdu umožňoval programovat strukturovaně a přitom tak blízko "železu", jak jen to bylo možné, takže nemusel sloužit jen k učení, ale bylo by v něm možné udělat i nějaké reálné aplikace. Není mi známo, že by něco srovnatelného bylo třeba na C64 a asi i ZXSpectru. Všechny ty vyšší programovací jazyky jako varianty C či Pascalu trpí tím, že jsou totálně ořezané o spoustu základní funkcionality a zaberou tolik RAM, že nic velkého v nich prostě udělat nejde.
Děkuju za tento odkaz, vůbec jsem to neznal. Tak jsem si o tom početl z různých zdrojů a byl opravdu zajímavý. Předpokládám, že se neprosadil, protože byl příliš svérázný - ne jazyk, ale ten způsob nasazení prostředí (nespolupracoval s DOS, měl všechno vlastním stylem, nedá se kvůli tomu dát na moderní harddisky pro Atari ani spolupracovat s jinými zařízeními apod.). Nicméně jsem se také dočetl, že jazyk i rychlost překladu a právě práce s bytecode byly tak zajímavé, že si z něj vzal inspiraci právě probíraný FastBasic. A kruh se uzavřel :)
Přiznám se, že mě trošku překvapuje, že by Advan Basic nefungoval s harddisky - respektive, nevím, jak je to přesně myšleno, ale určitě jsem jej před mnoha lety zkoušel spuštěný ze SIO2SD od Lotharka a to fungovalo. Pokud je to míněno, že nefunguje na moderních velkokapacitních médiích, tak to je asi fakt, když to nepodporuje DOS. Ono ale je třeba se na to dívat z dobového kontextu, že tehdy to asi nikomu až zas tak nevadilo, jelikož žádné harddisky pro Atari nebyly:) Každopádně, když jsem to kdysi zkoušel, tak mě to velmi překvapilo rychlostí a i ta implementace PMG je zajímavá (tehdy jsem ještě neznal FastBasic ani pořádně Action!, takže mi to přišlo dost originální).
Advan BASIC pracuje se souborovým systémem bez DOSu a jako mnoho takových programů nejspíš podporuje jen jeden jediný souborový systém: ATARI DOS 2.0S. To znamená, že spuštěný z moderního úložného zařízení poběží, ale nebude moci zapisovat číst a zapisovat na disk formátovaný SpartaDOSem nebo třeba MyDOSem.
Takové řešení je vcelku pochopitelné, protože bez DOSu pak v paměti zbyde více místa na vlastní program.
16. 10. 2026, 16:24 editováno autorem komentáře