Aktualizace DB+
9. 4. 2021
NextPlayer 0.61
27. 4. 2021

Pro ZX Spectrum Next programuji v současné době na mém pracovním notebooku, pomocí Visual Studio Code + sjasm. Důvod, proč používám tento způsob, je pohodlnost. Mít otevřeno více zdrojových souborů najednou, používat vymoženosti jako makra, include a podobné ulehčovátka je něco, na co si člověk zvykne hodně lehce. Jsem odkojený assemblerem Prometheus, který jsem používal jak na Didaktiku Kompakt 128k, tak i posléze na diskovém řadiči MB-02+.

Assembler pro ZX Spectrum Next

Pro ZX Spectrum Next programuji v současné době na mém pracovním notebooku, pomocí Visual Studio Code + sjasm. Důvod, proč používám tento způsob, je pohodlnost. Mít otevřeno více zdrojových souborů najednou, používat vymoženosti jako makra, include a podobné ulehčovátka je něco, na co si člověk zvykne hodně lehce. Jsem odkojený assemblerem Prometheus, který jsem používal jak na Didaktiku Kompakt 128k, tak i posléze na diskovém řadiči MB-02+.

Chvilku jsem koketoval na MB-02+ s assemblerem ALASM, ale ten je na MBčku tak zabugovaný, že jeho používání bylo prakticky nemožné. Ačkoliv možnosti měl opravdu veliké, ale chyby, které se objevovaly náhodně, omezení paměti atd. mne vrátili opět do náruče programu Prometheus. V současné době používám počítač ZX Spectrum Next a jak jsem uvedl, programuji pro něj na notebooku. Ono to má své kouzlo, ale ve chvíli, kdy si začnete hrát např. s WiFi modulem, začne Vám být tento crossassembling trošku na obtíž. Nehledě na to, že emulátor CSpect má své mouchy a jsou věci, které neumí a neemuluje.

Na počítač ZX Spectrum Next existuje assembler ODIN, který jsem až doteď úspěšně ignoroval, protože moc věcí neuměl (aspoň co jsem viděl v ukázkách) a hlavně byl neustále ve vývoji (což se dosud nezměnilo) a s věcmi ve vývoji se to má tak, že jsou buď nestabilní, nebo se Vám mění pod rukama, což není dobře. Nedávno jsem si všiml instruktážních videí člověka se jménem Jim Bagley, který právě na programování používal Výše uvedený assembler Odin. Jak je mým zvykem, když mne něco zaujme, nadzvedlo se mi levé obočí. Pak jsem viděl ukázku práce s více soubory v Odinu, přímo od vývojáře Matta Daviese a k levému obočí se přidalo právě.

Stáhl jsem si tedy poslední verzi Odina, která byla publikována (verze Dev.1e) a chtěl jsem ji vyzkoušet. Bohužel jsem zjistil, že všechny ty věci, které se mi líbily, v této verzi chyběly. Stáhl jsem si tedy aktuální verzi (Dev.2h) a zkompiloval jsem si ji a hned jsem se zamiloval. Dobře přeháním, Odin mne zaujal, mám v plánu několik utilitek, převážně pro Wifi a zkusím je vytvořit přímo v Odinu. Pojďme se podívat, co zatím Odin (ve verzi Dev.2h) umí.

Po spuštění se Vám zobrazí úvodní obrazovka s informací kam hlásit přpadně chyby a kdo to vlastně za Odinem stojí. Jak jsem již výše zmínil, hlavní vývojář za tímto programem je Matt Davies, ale v poslední době mu pomáhá ped7g (ano ten, který stojí také za sjasm), takže snad je se na co těšit. Úvodní obrazovka Vás také nabádá k stisku klávesy H, který Vám zobrazí malou nápovědu jak Odin ovládat.

NEW - se založí nový soubor. Můžete jich takto založit více a v editoru pomocí klávesové zkratky EXTEND MODE + EDIT je přepínat.
A – provede klasické assembly. Ještě předtím, se ale na disk uloží všechny soubory, ve kterých byla provedena nějaká změna.
LS – vypíše adresář
L - nahraje soubor. Můžete opět nahrát souborů více a jelikož je k dispozici celoobrazovkový editor, můžete z předchozího příkazu, který Vám vypíše adresář, napsat před požadovaný soubor „L „ (s mezerou) a vyhnout se tak zdlouhavému vypisování požadovaného souboru.
S - uložení soboru na disk
SA – uložení všech souboru, které se změnili na disk
T – zobrazí tabulku symbolů adres
TL – import textového souboru do Odinu
TS – export zdrojového kódu do textového souboru
R – spustí se program a po skončení se vrátí do debugeru
INFO – informace o obsazení paměti
CD - vstup do adresáře
MD - vytvoření adresáře
M – výpis paměti

Mezi touto obrazovkou a editorem se přepínáme pomocí klávesy EDIT. Při psaní nám v editoru pomohou tyto klávesové zkratky:

EXT + šipka vlevo – kurzor na začátek řádku
EXT + šipka vpravo – kurzor na konec řádku
SS + šipka dolů/nahoru – listování po stránkách
EXT + X – vyjmutí řádku
EXT + C – zkopírování řádku
EXT + V – vložení řádku
EXT + S – uložení souboru
EXT + D – duplikace řádku
EXT + W – uzavření aktuálního okna, pokud není uložen, upozorní Vás na to
EXT +O – vkládání/přepisování znaků
EXT + Delete – mazání znaku v pravo od kurzoru

Na více klávesových zkratek jsem nenarazil. A teď k samotnému assembleru. Je podporovaná klasická syntaxe Z80 a zatím co jsem zkoušel, fungovalo. Plus můžete využívat tyto speciální klíčová slova:

INCLUDE „název souboru“ – asi netřeba vysvětlovat
INCBIN „název souboru“ – vložení binárky
EQU – přiřazení hodnoty proměnné, ale toto je snad podporované všude
DB, DW,DS – vkládaní bytů, 16bitových hodnot atd.
SAVE – uloží binárku
ORG – má dva parametry, první odkud má zdrojový kód překládat a druhý, kde opravdu poběží daný kód. Druhý parametr je ekvivalent příkazu DISP v sjasm

Jen informace, Odin překládá program defaultně od adresy 32768 ($8000), kdy po spuštění Vašeho programu (příkazem R), se odstránkuje spodních 16kB, kde běží debuger Odinu. Takže ve spodních 16kB nemáte ROMku, tak jak byste očekávali. Myslím, že pro začátek je to velmi slušná výbava a dle mne je Odin použitelný. Pokud tedy chcete programovat přímo na Nextu. Ale jsou pořád věci, které mi chybí:

• Makra – nemyslím tím úplnou podporu maker, ale bohatě by mi stačilo opakovací makro (REPT),…
• Zvýraznění syntaxe – ono je to visuálně přehlednější, když vidíte co je návěstí, instrukce atd..

A to je asi vše, víc mi v Odinovi nechybí a jelikož jsou to minoritní problémy, bez kterých se dá žít, nic mi nebrání v používání. A to jsem nezmínil to, že Odin používá textový režim Nextu, takže vše je krásně čitelné a na obrazovku se vejde opravdu hodně informací. Jinak zde si můžete stáhnout binárku Odinu ve verzi, kterou teď používám, stačí ji nakopírovat do adresáře DOT na Vaší SD kartě. Samotný odin se spustí tečkovým příkazem v command line, nebo Next Basicu „.odin“.

2086total visits,5visits today

2 Comments

  1. Людмила napsal:

    From Sunteam, as if out of nowhere, we have Grelox: Colony 7. An interactive graphical adventure written entirely in NextBASIC. And last but not least, MB Maniax have released Calm Commander, a file management utility for the Next.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *