petek, 15. marec 2002
SDK MACROS - BIIS
V nadaljevanju je originalna BIIS rutina kot "macro", ki se uporabi v običajnem asembler programu. Vsi ukazi, ki vsebujejo "&" so macro ukazi. Nekaj jih služi za kontrolo pravilnosti podanih parametrov, nekaj pa se jih "zamenja" z vrednostmi, ki so zapisane v programski kodi samega programa.
CATALOG BIIS.A REPLACE=YES
* SDK MACROS - BIIS - LJUBLJANA - 1.0
CNOP 0,4
&IME L 15,=V(BISSSSSS) . EXTRN MODUL ZA BIN.ISKANJE
BALR 14,15
DC H'&A' DOLŽINA ARGUMENTA
AIF (T'&IME EQ 'O').HOP1
&IME.B DC A(&START) ADRESA ZAČETKA TABELE
&IME.A DC A(&ARGUM) ADRESA ARGUMENTA
DC H'&B' VELIKOST KORAKA
DC H'&C' POLOŽAJ ARGUMENTA V ELEMENTU TABELE
&IME.E DC A(&END) ADRESA KONCA TABELE
AGO .HOP2
.HOP1 ANOP
DC A(&START) ADRESA ZAČETKA TABELE
DC A(&ARGUM) ADRESA ARGUMENTA
DC H'&B' VELIKOST KORAKA
DC H'&C' POLOŽAJ ARGUMENTA V ELEMENTU TABELE
DC A(&END) ADRESA KONCA TABELE
.HOP2 ANOP
SPACE
AGO .END
.M9 ANOP
MNOTE *,'DOLŽINA KORAKA MANJŠA OD DOLŽINE ARGUMENTA + POLOŽAJA'
AGO .MEX
.M10 ANOP
&A SETA &A+255
SPACE
* SDK MACROS - BIIS - LJUBLJANA - 1.0
CNOP 0,4
&IME L 15,=V(BISSSSSS) . EXTRN MODUL ZA BIN.ISKANJE
BALR 14,15
DC H'&A' DOLŽINA ARGUMENTA +255
AIF (T'&IME EQ 'O').HOP3
&IME.B DC A(&START) ADRESA ZAČETKA TABELE
&IME.A DC A(&ARGUM) ADRESA ARGUMENTA
DC H'&B' VELIKOST KORAKA
DC H'&C' POLOŽAJ ARGUMENTA V ELEMENTU TABELE
&IME.E DC A(&END) ADRESA KONCA TABELE
AGO .HOP4
.HOP3 ANOP
DC A(&START) ADRESA ZAČETKA TABELE
DC A(&ARGUM) ADRESA ARGUMENTA
DC H'&B' VELIKOST KORAKA
DC H'&C' POLOŽAJ ARGUMENTA V ELEMENTU TABELE
DC F'&END' ŠTEVILO ELEMENTOV TABELE
.HOP4 ANOP
SPACE
AGO .END
.MEX ANOP
MNOTE 9,'MACRO NI GENERIRAN'
MEXIT
.END ANOP
MEND
BKEND
/+
Naročite se na:
Objavi komentarje (Atom)
Ni komentarjev:
Objavite komentar