Reklama na ALASM 5.07
Autor textu: Alone Coder, překlad do češtiny: Hood



ALASM má jeden z nejvíce pakovaných formátů textu (spolu se STORMem) a jeden z nejrychlejších kompilerů (opět spolu se STORMem).

Jak víme, na ZX existují jen dva assemblery, které umožňují editovat více zdrojových textů naráz. ALASM je jedním z nich. Navíc, na rozdíl od toho druhého (XAS) je počet těchto zdrojů omezen pouze velikostí paměti (pozn. překl. počtem 128k stránek)- od jedné na 48k po desítky. U XASu jsou to přesně dva. Měl bych upozornit, že práce na velkém programu se podstatně zpomalí (téměř úplně), pokud neustále nahráváte jeho zdrojové texty (pozn. překl. tzn. velký program se skládá z dílčích textů).

V tomto smyslu je ALASM nenahraditelný.

ALASM je kompatibilní s STS debuggerem a to na úrovni textů (do ALASMu můžete přímo nahrávat disasemblované výpisy, které jste vyprodukovali pomocí sts) a na úrovni návěští (STS ukazuje prvních 16k návěští zkompilovaného programu). Ohledně návěští upozorňuji, že ALASM je může uchovat až do velikosti 64 kB (což je hodně). Vzhledem k této skutečnosti, některé programy mohou být nahrány JEN do ALASMu - takový velký počet návěští, podle mých zjištění, na ZX není nikde jinde.

ALASM, a to je rarita u assemblerů na ZX, podporuje vnořenou podmíněnou kompilaci IF0/IFN, vnořenou podkompilaci textů INCLUDE (to je ještě vzácnější), vložený příkaz DUP pro opakování částí kódu (k výčtu jedinečných funkcí patří i možnost předefinovat návěští, ta je zvláště šikovná), makra MACRO s proměnným počtem parametrů, místní návěští LOCAL a chytrými znaky pro analýzu řádku (velmi výkonné, ovšem zdá se, že je zvládá snad jen autor sám;)) a příkazy DISPLAY pro zobrazení hlášení a výpočtů v průběhu kompilace. Kromě toho, během překladu je možné volat procedury uživatele (například dosadit do kompilovaného programu aktuální datum).

ALASM může přímo kompilovat do všech stránek, do oblasti Basic, do oblasti #5bxx a dokonce do atributů. Víme, že kompilace kódu mimo jeho pracovní adresu není pro ladění pohodlná. Mimochodem, ALASM umí vnořené příkazy DISP. (DISP uvnitř DISP).

Po syntaktické stránce dovoluje ALASM více, než všechny ostatní assemblery na ZX (a současně dokáže všechno, co umí jiné asemblery- například hra SNAKE od RST7 je v ALASMu také k dispozici).

Nadšenci;) dodali do ALASMu možnost: automatického nahrávání- kompilace- spuštění jediným stisknutím klávesy (zavaděč se nazývá MKACE) a několik způsobů, jak uložit přeložený program na disk (SAVEOBJ*, SAVEBAS*, mrip*, m2hr*). SAVEOBJ poráží analogické příkazy ostatních assemblerů, protože umožňuje uložit několik bloků za sebou (např. stránky). mrip a m2hr jsou v podstatě pakery, tj. sestavují program do podoby ke zveřejnění.

Editor ALASM je zcela specifický - ve skutečnosti jsou to dva editory. Režim OVERWRITE je běžný u většiny ZX assemblerů, Alem toto zavedl od prvních verzí. Režim INSERT – je výplodem fantazie Capryho, který se na balíku podílel 2001 - 2002. Obě možnosti práce nejsou v obyčejných textových editorech běžné, ale obě jsou velmi užitečné.

Protože Capry ostražitě naslouchal přáním uživatelů, editor obdržel několik neobvyklých vestavěné funkcí:

V hlavním programu jsou další přídavné funkce: při hledání návěští lze použít masku, nebo hodnotu SYMBOL, spustit program ze zcela libovolné adresy, resetovat flag re-kompilace všech textů v paměti (JUMB +), atd. Některé z nich jsou ještě autorské.

V ALASMu můžete za pomoci příkazů INSERT/INCLUDE vložit binární soubory (i zdrojové texty) podle masky i jakékoliv přípony souboru. Soubory k nahrání jsou samozřejmě k výběru z menu katalogu pomocí kurzoru, není třeba je zadávat ručně. Texty lze exportovat: například pro tisk.

ALASM má plnou 866 kódovou tabulku- můžete snadno psát nějaký program s hlášeními v ruském jazyce. Můžete zadat jakékoli znaky.

Pokud nepočítáme assemblery, které jako zdrojový text používají obyčejný textový formát, ALASM je jediný, jehož formát je dokumentovaný. Kromě toho zdrojové soubory ALASMu jsou zveřejněny.

Nejnovější verze ALASMu k dnešnímu dni (v5.07) obsahuje některé drobné chyby, ale všechny jsou zdokumentovány.