MANUÁL ODIN EDITORU
Odin je editor/assembler určený pro ZX Spectrum Next. Je inspirovaný nástrojem Zeus pro původní ZX Spectrum (autoři Neil Mottershead a Simon Brattel).
Přejdi na příslušné sekce manuálu, nebo čti stránky postupně pomocí funkcí next/previous v NextGuide.
Spuštění Odinu
Odin je dot command – soubor .odin by měl být nainstalovaný ve složce
/dot na SD kartě a všechny soubory s příponou .gde zkopírované do
/docs/guides.
Potom lze Odin spustit jednoduše zadáním:
.odin
Pokud chceš hned otevřít nějaké soubory, můžeš je přidat přímo na příkazovou řádku. Přípona .odn je volitelná.
Používání editoru
Přepínej mezi příkazovou řádkou Odin Monitoru a obrazovkovým editorem klávesou EDIT.
Editor – Základní ovládání
Psaní
Editor umožňuje psát kdekoliv na obrazovce: piš normálně a stiskni ENTER pro začátek nového řádku.
Řádek lze vložit nad aktuální řádek (užitečné, pokud jsi už na začátku souboru) pomocí EXT+ENTER.
Pokud je řádek delší než šířka obrazovky (80 znaků), vpravo se zobrazí červený znak
„větší než“ (>) a přebytečné znaky nebudou vidět. Přesto se ukládají a
můžeš je „odkrýt“ smazáním znaků před nimi.
Poznámka: neexistuje způsob, jak řádek „rozpůlit“ a přesunout zbytek na nový řádek.
Mazání znaků
Znak vlevo od kurzoru smažeš DELETE – znaky za kurzorem se posunou doleva. Znak pod kurzorem smažeš EXT+DELETE – opět se následující znaky posunou doleva.
Mazání od znaku pod kurzorem až do konce řádku: EXT+E.
Režim přepisování
Standardně se při psaní znaky za kurzorem posouvají doprava (vkládání). Přepnout na přepisování (overwrite) můžeš pomocí EXT+O. Opětovným stiskem se vrátíš do režimu vkládání.
V režimu vkládání kurzor bliká zeleně, v režimu přepisování bliká červeně.
Tabulátory
Mezery do další tab stop vložíš klávesou TRUE VIDEO (zhruba na místě klávesy TAB na moderní klávesnici).
Pozice tabů zatím nelze měnit: jsou pevně na sloupcích 9, 14, 33 a poté každé 4 znaky (37, 41, 45, …).
Editor – Pohyb kurzoru
Kurzorem pohybuješ pomocí UP/DOWN/LEFT/RIGHT. Když dojedeš na horní nebo dolní okraj, obrazovka se posouvá (pokud je v daném směru ještě další část souboru).
Aktuální pozice kurzoru (řádek a sloupec v rámci souboru) se zobrazuje ve stavové liště dole.
Skok na začátek nebo konec aktuálního řádku: EXT+LEFT / EXT+RIGHT.
Posun o jednu obrazovku (30 řádků): EXT+UP / EXT+DOWN. INV VIDEO a GRAPH posouvají obrazovku o jeden řádek nahoru/dolů bez pohybu kurzoru (pokud by kurzor nezmizel mimo viditelnou část).
Skok na začátek nebo konec souboru: EXT+TRUE VIDEO / EXT+INV VIDEO.
Editor – Cut/Copy/Paste a blokové operace
Cut / Copy / Paste
Jeden řádek můžeš vyjmout nebo zkopírovat do interní schránky:
EXT+X – vyjmout aktuální řádek do bufferu
EXT+C – zkopírovat aktuální řádek do bufferu
Vložení z bufferu na pozici kurzoru:
EXT+V – vložit buffer před aktuální řádek
Buffer se po vložení nemaže, takže ho můžeš vkládat opakovaně.
Výběr bloku více řádků
Výběr spustíš EXT+SPACE a blok vyznačíš pomocí UP/DOWN, EXT+UP/DOWN (o obrazovku) nebo EXT+TRUE/INV VIDEO (skok na začátek/konec souboru).
Pak můžeš blok vyjmout / kopírovat pomocí EXT+X / EXT+C nebo ho přepsat psaním nového textu. Zrušení výběru: BREAK.
Duplikování řádku
Aktuální řádek duplikuješ klávesou EXT+D – vloží se pod aktuální řádek a kurzor se posune dolů. Neovlivní to obsah schránky.
Editor – Příkazy pro soubory
Odin umí mít otevřeno více souborů současně. Název právě editovaného souboru je zobrazen na začátku stavové lišty dole.
Pokud byl soubor změněn, ale nebyl uložen, vlevo od názvu se zobrazí hvězdička *.
Hlavní příkazy pro práci se soubory jsou dostupné z příkazové řádky Monitoru (odkaz „main commands“ v původním manuálu vede na uzel, který tu není zahrnut). Některé často používané akce jsou ale dostupné přímo v editoru:
Přepínání mezi soubory
Přepnutí mezi otevřenými soubory: EXT+EDIT. Zobrazí se menu nad stavovou lištou se seznamem otevřených souborů. Výběr měníš UP/DOWN, potvrdíš ENTER.
Uložení a zavření souboru
Uložení z editoru: EXT+S.
Zavření souboru: EXT+W. Pokud soubor ještě nebyl uložen, Odin si vyžádá potvrzení, aby nedošlo ke ztrátě změn.
MANUÁL ODIN EDITOR/ASSEMBLER
Odin je editor/assembler určený pro ZX Spectrum Next. Je inspirovaný Zeusem pro původní ZX Spectrum.
Tento průvodce popisuje část Monitor, která zároveň funguje jako „rozbočovač“, přes který se dostaneš ke všem funkcím Odinu.
Přejdi na příslušné sekce, nebo čti postupně pomocí next/previous v NextGuide.
Začínáme s Odin/Monitor
Odin je dot command – soubor .odin patří do /dot na SD kartě
a soubory .gde do /docs/guides.
Spuštění:
.odin
Odin se spustí v Monitoru a zobrazí uvítací zprávu. Odtud se dostaneš ke všem funkcím Odinu.
Příkaz h zobrazí seznam všech příkazů a klávesových zkratek Monitoru.
Správa souborů
Odin Monitor nabízí obecnou správu souborů a navigaci, plus příkazy pro práci se zdrojáky assembleru.
Obecné příkazy pro správu souborů
Příkazy pro správu assembler souborů
new: vytvoří nový soubor.l: načte odin zdroják.s: uloží aktuální odin zdroják.tl: načte textový soubor.ts: uloží aktuální soubor jako text.
Správa souborů: ls
usage: ls (path)
Příkaz ls vypíše obsah adresáře. Může přijmout jeden volitelný parametr path.
Pokud parametr vynecháš, vypíše obsah aktuálního adresáře.
Pokud path zadáš, určuje adresář, jehož obsah se má vypsat.
Viz cesty k souborům pro detailní popis formátu argumentu path.
Příklady
ls "/odin": vypíše obsah adresáře odin v kořeni aktuální jednotky.
Správa souborů: cd
usage: cd (path)
Příkaz cd změní aktuální adresář. Přijímá jeden volitelný argument path.
Pokud path nezadáš, jen zobrazí aktuální cestu.
Pokud path zadáš, určuje adresář, do kterého se má přejít.
Viz cesty k souborům pro detailní popis formátu argumentu path.
Příklady
cd "/odin": přejde do adresáře odin v kořeni aktuální jednotky.
Správa souborů: md
usage: md (path)
Příkaz md vytvoří nový adresář. Přijímá jeden povinný argument path,
který určuje cestu k adresáři, jenž se má vytvořit.
Viz cesty k souborům pro formát argumentu.
Příklady
md "/odin/newdir": vytvoří složku newdir v /odin.
Správa souborů: new
usage: new (path)
Příkaz new vytvoří nový Odin assembler soubor. Přijímá jeden povinný argument path,
který určuje cestu k souboru, jenž se má vytvořit. Je zvykem používat příponu .odn,
ale není to nutné.
Viz cesty k souborům.
Příklady
new main.odn: vytvoří soubor main.odn v aktuálním adresáři.
Správa souborů: l(oad)
usage: l (path)
l (load) načte Odin assembler soubor. Přijímá povinný argument path
určující cestu k souboru. Načtený soubor se stane „aktuálním“ a při přepnutí do edit režimu
se otevře v editoru.
Viz cesty k souborům.
Příklady
l main.odn: načte main.odn z aktuálního adresáře.
Správa souborů: s(ave)
usage: s (path)
s (save) uloží aktuální Odin assembler soubor. Přijímá povinný argument path,
tj. kam se má soubor uložit. Uložený soubor se stane „aktuálním“ (užitečné při uložení pod novým názvem).
Při přepnutí do edit režimu se otevře tento soubor.
Viz cesty k souborům.
Příklady
s main.odn: uloží main.odn do aktuální složky.
Správa souborů: tl(oad)
usage: tl (path)
tl načte textový soubor a během toho ho tokenizuje. Přijímá povinný argument path.
Načtený a tokenizovaný soubor se stane „aktuálním“. Při přepnutí do edit režimu se otevře v editoru.
Viz cesty k souborům.
Příklady
tl main.odn: načte textový soubor main.odn z aktuální složky.
Správa souborů: ts(ave)
usage: ts (path)
ts uloží aktuální Odin assembler soubor jako text. Přijímá povinný argument path.
Viz cesty k souborům.
Příklady
ts main.txt: uloží aktuální soubor jako main.txt do aktuální složky.
Sestavení, spuštění a ladění
Odin Monitor je prostředí, přes které sestavíš (assemble), spustíš (run) a budeš ladit (debug) své assembler programy.
Podporované příkazy:
a: sestavení programur: spuštění sestaveného programum: výpis paměti na obrazovkut: seznam symbolů z posledního sestaveníinfo: informace o využití paměti
Assemble, run a debug: a(ssemble)
usage: a (path)
Příkaz a sestaví program. Může mít volitelný argument path (soubor k sestavení).
Bez argumentu sestaví aktuální soubor nebo posledně sestavený soubor.
Při prvním sestavení bez argumentu (nebo při sestavení s argumentem) si Odin uloží cestu k „hlavnímu dokumentu“
(main doc). Příště pak a bez argumentu sestaví právě tento „main doc“.
Assembler automaticky načte i další soubory, které jsou z „main doc“ includované, a sestaví celý komplet.
Assemble, run a debug: r(un)
usage: r
Příkaz r spustí naposledy sestavený program. Program je volaný jako call,
takže pokud program provede návrat (ret), vrátí se zpět do Odin Monitoru.
Assemble, run a debug: m(emory dump)
usage: m (address)
Příkaz m udělá výpis paměti. Může mít volitelný argument address.
Pokud je zadán, dump začne na této adrese, jinak začne na start adrese, na kterou byl program sestaven.
Adresu můžeš zadat hexadecimálně nebo decimálně. Hex adresa má prefix dolar: $.
Dump vypíše 8 řádků, každý obsahuje 16 bytů. Každý řádek má formát:
C9:0000:8000 C3 78 85 11 80 B0 ED 53 A0 80 3E 00 32 A2 80 AF .x.....S..>.2...
\__________/ \_____________________________________________/ \______________/
adresa obsah v hexadecimálu obsah v ASCII
Pole adresy se skládá ze tří částí:
- (stránka?)
- offset od startu programu?
- absolutní adresa
ASCII část ukazuje jen „tisknutelné“ znaky, ostatní jsou nahrazeny tečkou (.).
Assemble, run a debug: t
usage: t
Příkaz t zobrazí seznam všech symbolů z posledního sestaveného programu.
Assemble, run a debug: info
usage: info
Příkaz info zobrazí informace o využití paměti Odinem.
Document: <využití paměti dokumenty>
Pages: D6 D5 D4 D3 D2 D1 <stránky použité dokumenty>
Size: 015001 <velikost dokumentů>
Code: <využití paměti Odin (program)>
Pages: C9 C8 C7 C6 <stránky použité Odin>
Symbols: <využití paměti symboly>
Pages: C4 <stránky použité symboly>
Num: 0157/2048 <počet a limit>
Reference: cesty k souborům
Cesta (path) je specifikace, která identifikuje soubor nebo adresář na disku. Může být relativní nebo absolutní.
Relativní cesty
Relativní cesta začíná v aktuálním adresáři a určuje kroky, které má příkaz (např. ls)
následovat. Nejjednodušší je jen název souboru nebo podadresáře aktuální složky.
Cesta může mít více kroků oddělených lomítkem /. Každý krok je adresář relativně k předchozímu kroku.
Každá cesta, která obsahuje /, musí být uzavřena do dvojitých uvozovek.
Absolutní cesty
Absolutní cesta začíná buď písmenem jednotky a dvojtečkou (např. d:), nebo lomítkem /
(kořen aktuální jednotky). V obou případech musí být cesta v dvojitých uvozovkách.
Zbytek cesty se zapisuje stejně jako u relativní cesty.
Speciální kroky jsou . a ... Tečka znamená aktuální složku.
Dvě tečky znamenají nadřazený adresář.
Příklady
ls "/odin" ; obsah /odin v kořeni aktuální jednotky
l "../main.odn" ; načtení main.odn z nadřazené složky
l "/mydir/main.odn" ; načtení z /mydir
s "d:/mydir/main.odn" ; uložení na jednotku d: do /mydir
MANUÁL ODIN EDITOR/ASSEMBLER
Odin je editor/assembler pro ZX Spectrum Next, inspirovaný Zeusem pro původní ZX Spectrum.
Vyber si sekci, nebo čti postupně.
Spuštění Odinu
Odin je dot command – soubor .odin patří do /dot a soubory .gde
do /docs/guides.
Spuštění:
.odin
Pokud chceš hned otevřít soubory, přidej je na příkazovou řádku. Přípona .odn je volitelná.
Odin se spustí v monitoru, kde můžeš zadávat příkazy, nebo přepnout do editoru a psát programy.
Používání editoru
Průvodce pro editor je v souboru odin-editor.gde.
Zobrazíš ho příkazem:
.guide odin-editor
Používání monitoru
Průvodce pro monitor je v souboru odin-monitor.gde.
Zobrazíš ho příkazem:
.guide odin-monitor
Používání debuggeru
Průvodce pro debugger je v souboru odin-debugger.gde.
Zobrazíš ho příkazem:
.guide odin-debugger