- 5 -
COND/NOCOND
-----------
[COND]
Pokud je zvoleno NOCOND, jsou v listingu potlaceny pasaze po-
mineneho prekladu, ktere nebudou prekladany /vyraz za IF je
sudy/. Soucasne bude potlacen vypis vsech radku obsahujicich
prikazy IF, ELSE nebo ENDIF.PRINT/NOPRINT
-------------
[NOPRINT]
Directiva PRINT umoznuje presmerovani listingu z vystupni kon-
zoly na tiskarnu: PRINT(:LP:). Directiva NOPRINT obnovi sme-
rovani listingu na konzolu systemu. U diskoveho systemu je
navic mozne smerovat listing do diskoveho souboru, napr:
PRINT(FILE.LST).
Prikaz pro presmerovani na tiskarnu muze byt ve zdrojovem sou-
boru vicekrat. Mohou se stridat PRINT:LP:)...NOPRINT...
Presmerovani na diskovy soubor muze byt ve zdrojovem souboru
uvedeno pouze jedenkrat.PAGING/NOPAGING
---------------
[PAGING]
Prikazy umoznuji vypis/potlaceni hlavicky ASM80 na kazde
strance listingu /soucasne obnovuji/potlacuji strankovani/.PAGEWIDTH/PAGELENGHT
--------------------
[PAGEWIDTH(120) PAGELENGTH(72)]
PAGEWIDTH slouzi k nastaveni sirky stranky na potrebny rozmer.
Parametr udava maximalni sirku pro tisk listingu v poctu znaku
na radek. PAGELENGHT k nastaveni delky stranky listingu. Parame-
tr udava maximalni pocet radku na stranku.
Parametry prikazu musi byt uzavreny v zavorkach.EJECT
-----
EJECT zpusobi prechod na novou stranku listingu.
OFFSET
------
[OFFSET(0)]
OFFSET je jedina directiva, ktera musi byt uvedena bud samostat-
ne na radku, nebo jako posledni. Vyraz, ktery se uvadi jako pa-
rametr udava posunuti ciloveho kodu pri prekladu do pameti sy-
stemu. Vyraz muze byt slozen i z mnemonickych navesti, je pouze
nutne, aby vsechny hodnoty vyrazu byly definovany v 2. pruchodu
prekladu. Pokud by directiva OFFSET nebyla posledni na radku,
doslo by k chybnemu vyhodnoceni vyrazu.OBJECT/NOOBJECT
---------------
[NOOBJECT]
OBJECT slouzi k vynuceni prekladu zdrojoveho souboru do cilo-
veho kodu. NOOBJECT preklad potlacuje. U kazetove verze ASM80
je mozne prikazy OBJECT/NOOBJECT libovolne stridat.
Cilovy kod se uklada do pameti systemu na adresu ORG+OFFSET.
U diskove verze je mozne jako parametr u OBJECT uvadet jmeno - 6 -
ciloveho souboru. Potom muze byt uvedena pouze jedina sekvence
OBJECT(SOUBOR.OBJ)..[NOOBJECT] a prekladany kod je ulozen
do specifikovaneho souboru.
DEBUG/NODEBUG
-------------
[NODEBUG]
U kazetove verze jsou obe directivy bez ucinku. U disketove ver-
ze zpusobi DEBUG vystup tabulky symbolu do ciloveho souboru,
pokud byl definovan directivou OBJECT.SYMBOLS/NOSYMBOLS
-----------------
[SYMBOLS]
Directiva NOSYMBOLS se uvadi, pokud neni pozadovana tabulka
symbulu.LIST/NOLIST
-----------
[LIST]
Pro potlaceni celeho listingu, nebo jeho casti slouzi directiva
NOLIST. Cast uzavrena mezi NOLIS-LIST se nevypisuje ani na kon-
zolu systemu. Pocet sekenci NOLIST-LIST neni omezen. Pseudoin-
strukce END nemeni okamzite nastaveni LIST/NOLIST, to znamena,
ze pokud je pred END NOLIST, zacatek programu se zacne vypisovat
az po zpracovani LIST.GEN/NOGEN
---------
[GEN]
GEN/NOGEN obsahuje slouzi k uvolneni/potlaceni generace rozvoje
maker do listingu.SAVE/RESTORE
------------
SAVE uchovava ve sklipku okamzite hodnoty directiv LIST/NOLIST
a GEN/NOGEN. RESTORE hodnoty LIST/NOLIST a GEN/NOGEN obnovuje.
SAVE/RESTORE je mozne vhnizdovat az do urovne 8.
TITLE
-----
TITLE slouzi k oznaceni listingu titulnim radkem, ktery se bude
tisknout na kazde strance pod hlavickou ASM80. Parametrem je
text uzavreny do apostrofu.
Pr:
TITLE('Text pro idetifikaci')TTY/NOTTY
---------
[NOTTY]
Tyto diretivy maji dve funkce, rozdilne podle smerovani
listingu. Pokud je listing smerovan na systemovou konzolu,
directiva TTY zpusobi orezani vsech zdrojovych radku na zobra-
zitelnou delku 64 znaku. Pokud je listing smerovan na tiskarnu,
TTY zpusobi nahradu znaku form feed prislusnym poctem kombinaci
CR+LF. Tato directiva se pouziva pro tisk na tiskarnu bez
formatovaciho zarizeni. NOTTY obnovi stav jako po zavedeni
ASM80, tedy form-feed na tiskarnu, radky neorezavat. - 7 -
MACROFILE/NOMCROFILE
--------------------
[NOMACROFILE]
Directiva MACOFILE umoznuje zpracovani maker ve zdrojovem
souboru. Vyskyt maker pri platnosti NOMACROFILE bude mit za
nasledek vyskyt chyb.MAKROGENERATOR
--------------
Specialni znaky a operatory makrogeneratoru:
--------------------------------------------
& znak konkatenc /spojeni/ formalnich parametru
! literalizacni znak
% znak pro prevod dekadicke hodnoty operandu na string
<...> uzavreni parametru pro predani do vnitrni urovne makra
NUL operator, ktery bude mit logickou hodnotu podle toho,
zda za nim existuje skutecny parametr pri rozvoji makra
nebo ne. Pokud parametr chybi, ma vyraz s NUL hodnotu
0FFFFH. Jinak bude hodnota 0.Makra
-----
DUHA ASM80 umoznuje zpracovani maker a tri repeticnich bloko-
vych makroprikazu: REPT, IRP a IRPC.
REPT
----
REPT <expr>
.
.
.
ENDM
Blok mezi REPT a ENDM bude proveden <expr> -krat.
Vyraz <expr> bude vyhodnocen pouze jako 8-bitovy. Blok je
tedy mozne opakovat maximalne 255 krat.Pr: REPT 4 ;4x vykona instrukci RLCA
RLCA
ENDMIRP
---
IRP <dumy parametr>,<seznam parametru>
.
.
.
ENDM
Formalni parametr je pri rozvoji postupne nahrazovan jednotli-
vymi parametry ze seznamu skutecnych parmetru. Blok IRP-ENDM
se bude opakovat az do vycerpani vsech skutecnych parametru.Pr: IRP RP,<L,DE,BC>
LD RP,0
ENDM
Postupne naplni registrpary HL,DE a BC hodnotou 0. - 8 -
IRPC
----
IRPC <dumy>,string nebo <string>
.
.
.
ENDM
Formalni parametr bude pri rozvoji postupne nahrazovan
jednotlivymi znaky stringu. Rozvoj bude ukoncen po vycerpani
posledniho znaku.Pr: IRPC X,ABC
LD X,-1
ENDM
Postupne naplni registry A, B a C hodnotou -1.MACRO
-----
<Mname> MACRO [parametr,...]
.
.
.
ENDM
MACRO umoznuje generovat libovolnou sekvenci instrukci, nebo
pseudoinstrukci, ktera muze byt navic modifikovana prostred-
nictvim parametru. ASM80 umoznuje predani maximalne 32 para-
metru do tela makra.Pr. definic:
MOVE MACRO SRC,DES
LD A,(&SRC&)
LD (&DES&),A
ENDMVolani:
MOVE 2000H,2002H ;presune obsah adr. 2000H
-> 2002HENDM
----
ENDM slouzi k ukonceni tela definice bloku MACRO, IRP, IRPC
a REPT.
EXITM
-----
EXITM slouzi k predcasnemu ukonceni rozvoje MACRO, IRP, IRPC
nebo REPT.
Napr: REPT 4
NOP
EXITM
ENDM ;se provede pouze 1xLOCAL
-----
LOCAL <seznam dumy parametru>
LOCAL operator je mozne uzit jen v tele makra a slouzi definici
navesti s omezenou platnosti jen v tele makra. Po uknceni roz-
- 9 -
voje makra je navesti nedefinovano. Pri rozvoji se mnemonicke
navesti nahradi navestim tvaru ?0000. Cislo za znakem ? se
bude s kazdym rozvojem zvysovat. .]