ASSEMBLY LANGUAGE TRANSLATORS
i!k)z z7y)i rrrvr
tixji
--
Z-System ToolsUSER'S GUIDE
by
Robert
Doolittle
ITOZ, TZOI, ITOT and TTOI
are Copyright
1982, 1985 by RDSOFTWARE. No
part
ofthis
document may be reproducedin
any wayor
by any meanswithout
prior
written
permission of publisher.
Address
requests to
Echelon,Inc.,
101First
Street,
LosAltos,
TABLE' OF CONTENTS
Paqe
Author's
P'ote...
... ii
ITOZ and ZTOI USER'S GUIDE . .
..
... .. ..
. . . ...
. . ... .. ..
1COMMAX"D LINE FORMAT
. . . 2
INPUT FILE FORMAT RULES
.. ..
. . ...
. ...
. . . ...
...
...
3EXECUTION . . . .
. . . . . . . 5
ADNAME . . . .
. . . . . . . L)
EXTEXDED 8080 VERSUS ZILOG Z-80 MNEMOYIC TABLE
.. ..
7rrcvr and trrrn
user's
guide . . . ...
. . . . 9com1A.\'D LINE FORMAT . . . .
. . . 10
IR'PLJT FILE FORMAT RULES . .
.
.. .. .. ..
. ...
. . ... .. .. ..
11EXECUTION . . . . 13
ADNAP1F
. . . 14
EXTENDED 8080 VERSUS TDL/CDL MNEMONIC TABLE . .
.. ..
15-Author's Note
These programs have been thoroughly tested arid are belíeved to be
correct.
If
youfind
soE:ething not t.o your 1ikiñ9let
us know. We welcorne your comments, criticjs!Tls orquest-i
ons, Pleasecall
or m"iteif
you experience arre probien"is.Robert
Doolittle
Echelon Team Member 1290 Mouu1Tíertt Street Telephone 213/454-8270Pacific Palisades, CA 90272
—1
I-* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* ITÍ)Z and ZTOI USER'S GUIDE *
:k *
* Copyright 1982, 1985 by RD SOFTWARE *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
These programs
translate
assembly source code fromIntel
extended 8080 tQZtlog
Z-80 mnemonics (ITOZ) and x:ice
versa(ZTQI). The output- source
file
is wri-tten
to disk
andi
5ccmµletely formatted and ready
for
assembly. The extended 8080set is that defined
byDigital
Researchin
their
macrolibrary
Z8U.LIB
furnished
wit.htheir
macro assembler MAC. Please not-ethat
if
your source programs use only the 8080 subset-of
the Z-80 inst-ructions
then you need not be concernedwith the
Z80.LIB extensions.The use of ITOZ and ZTOI are nearly
identical.
Thereforein
what- fcAlows weshall just refer to
ITOZwith
the understandingthat
it
also appliesto
ZTOI except where noted.* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* comAND LINE K)RMAT *
* *
* * * * * * * * * * * * * * * * * * * * * * jk * * * * jAe * * * *
To execute ITOZ
for translation
of
an 8080 source programto Zilog
Z-80 mnemonícsthe
Z-System (and CP/M) command Ji-neformat
is:
A'ITOZ
if
j lenamelf
ijetype]
[ ,'0] [ofijename ][filetype]
where the parameters
in
square bracket s areoptional
.if
ilename=input sourcef
íle
nameof
ilename=output sourcef
ii
e name/O=options as described below
To maintain
compatibility
w.ith some assemblers t".wo switchoptions are
available.
The slash ( .l')must immediately
follow
the inputfile
name orfiletype
if
used. Oríjy one slashis
necessaryfor either
or both options.The "c"
option
will
add acolon
after
alabel
if
one doesnot
already exist.
The "s"option
will
convert asterisks,
usedas comrnent
line delimiters,
to
semicolons i-n the outputfile.
To invoke both options,for
example, the format would be:,/c's or ,/sc
If
you aretranslat-ing
afile
that- uses a doublecolon
t-orepresent a
public label
do not use the "c" swit-c:h.An
optional
output-file
nameis also permit-ted
onthe
command
line.
If
this optional
nameis omitted
then thedefault
out-put-
file
namefor
ITOZis
ZLG.ASM andfor
ZTOIis
X80.ASN.CP'"M
i
5 a regí stered trademarkof Digi-tal
Research; Z-Syster.iis
a* * * * * * * * * * * * * * * * * * * * :k * * * * * * * * * * *
* :k
* INPUT FILE FORMAT RULES *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Certain
input
sourcef lle
format-rules
must befollowed to
obtain
a successfultranslation.
Manyof
these aredictated
bycommon assembler syntax
rules.
Therules
are asfollows:
1. Only one
instruction
perline is
permitted2.
All instructions
must bein
upper case3. Each
line
must terminatein
acarriage returri
andline
feed4. No
line
numbers are permittedin this
version 3. Lines must be less than 128 characters longi.ncluding comments
6.
All labels
muststart in
column one7
. The mnemonic or
instruct
ionf
ield
must be precededby at
least
one space or tabif
no labelis
present.8
. There must: be at
least
one space or tab between theend
of
a label and the beginning of t.he instrtlct-j.c)r)unless the label ends
in
a colon9. EQTJ and SET pseudo-op
statements may beg in in arr," colurnri
10. Other pseudo-ops or macro names must begin as
defined
fur instructions
in
Rule 7li
. Commentlines
must be preceded by a semicolori orasterisk
and may beginin
any colunrí12 . Comments
following instructions
on the sameline
must also begin
with
a semicolon orasterisk
arid must- be preceded by atleast
one space or tab onlyif
theasterisk
i-s usedBlank
lines,
aswell
asblank lines
following
alabel,
a resupported .
Due
to
thevariety of
ass3errlbler pseudo-ops sorne compromiseshad
to
be made. Thereis
alogical
problem wit-h pseudo-opsstarting
with
anasterisk
and commentlines delimited
by anasterisk.
Thisis
solvedin
thesetranslators
by thefollowing
additional
rule:
13.
If
pseudo-ops are used whichstart with
anasterisk
then a label must be used on the same
line.
Thelabel
, "- of course, may be a dummy . Idaddition,
actual commentlines following
a label must be delirni-t.ed by asem-zcol on .
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* EXECUTION *
* *
* * * * * * * * * * * * * * * * gt * * * * X * * * * * * * * * *
When program execution begins ITOZ
will
prirít
a message onthe
terminal indicating
that
the translation is
uríderway.If
anunrecognizable
inst ruction is
encourit.ered a syntaxerror
messageis displayed at
the console ale-mgwith
aline
numberindicator.
This
line is
also flaggedin
the outputfile
by the commentline
"FOLLOWING INSTRUCTION NOT RECOGNIZED." The
translator
makes noattempt to
translate this line
but simply copiesit
to
the cmtputfile.
yj c)s t- o
f
t
h e commonpseudo-ops
ar
e imc-ludedin
t.hetranslator's intrrríal
tables.
If
voLt4 get a syñtcíxerror for
apseudo-op or macro narne which appears irí your :
i-nput source
f
.lle you should then run theutility,
ADNAME.COM asdescribed
bt")ow.This
will
preverit-future occurrences of
thi-serror.
As not edbelow,
this
utility
does nottranslate
or,
moreaccurat-ely,
.it-results
in
a one-to-oríetrarislatiorí
(exact copy)of
ent-ire I .i-nt".In
all
CPUinstructions
that
involve
ar. indexregister
disp!arement-, the
translators
will
interpret-
theexplicit
lack ofa di-sµ1acernent argument
to
imply the value-" O.0
* * * * * * * * * * * * * * * * * * * * * * * * * :k * * * * * *
* *
" ADNAME.COM *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
This
utility
permits the userto
add cust-om macro names orpseudo-ops
to
thetranslator's
internal
tabj
es.It
will
operat.eon
either
ITOZ.COMor
ZTOI.CO31.It
will
also operate
oneither
of
t-hesefiles
if
they
have been renamed. Please notethat
notranslatiurí
occursfor
these names. The useof
ADNAMEpermits
the
translators
to recognize
these names andto
copythe line
from
the input
file
t-o t-heoutput
file
without
generating
aíierror
message.If
you experiencedifficulty
wit.h assemblyof
atranslated
file
it
may be necessaryto edit
thetranslated
fije
to correct for
theparticular
pseudo-ops used by your assembler.The coinmand
line
formatfor
ADNAMEis:
A.'ADNANIFf i
i
ename .COMwhere
'f
ilenarne'is
ITOZ, ZTOI,or
whater"er ycm may harí·reríamed them. The program
will
then prompt youfor
the ríew namesto
he entered. Eachentry is
terminated by acarriage return.
Ablank line
(CR)terminates the
program. Theold
file
is
renamed wit: h the sanie filename andwith
afi.letype of
BAK. The newfile
is
renamedwith
the samefilename
andwith
afiletype
of
COM. The new COMfile will
include your new names.If
you wish you mayerase the BAK
file.
Westrongly
recommend, however,that
youa lways keep a backup copy cif the
original
files.
The space
allocated in
thetranslators
for this function is
2()0
bytes.
If
Nis
the numberof
newnames and C
is the
total
nunber of characters
in
the new names t.hen 2*N"C must: be ': = 200.Atternr't: s t-o exceed
this
numberwill
not be accepted and a warningmessage
will
be issued.ADNAYF. may be used on
the currerit
COMfile
asoften
as youplease.
Any new nameswill
be addedto
thosealready included
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* EXTENDED 8080 VERSUS ZIIÁJG Z-80 MNEMONIC TABLE *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
These
translat-ors
use an extended 8080 mnemonic set whichis
similar
to the Technical
DesignLaboratories
(TDL) mnemonics.Al!
Trít-ei 8080 mnemonics arepreserved.
The Z-80peculiar
inst"ruc't ions dNífer
fromthe
ZILOG mnemonics as shownin the
accompanyi-ng
table.
This
mnemonic setis identi.cal
t-othat-released
byDigital
Research as Z80.I.IBto
be usedwith
their
cp,"yj "MAC" Macro Assembler. The
followiríg
corívent i_ons are usedirí
thetable.
r
-
anyregister
or memoryrr
- anyregister pair
or stackpointer
nn - 8
bit
immediate data (Oto
255) d-
8 bN: signed displacement- (-128to
127)nnnn
-
16bit
address or immediate data (Oto
6553!!Á b-
bit
number (Oto
7, 7is
most5ignificar)t)
addr - 16bit
addresswithin
PC+127 through PC-128In
casesinvolving
a displacement., d,t-his
parameteris
alwayslast
oneiri
operandfield.
EXT 8080 ZILOG EXT 8080 ZILCG
LD\"
r
,d LDr,(lX"d)
LDIR LDIRLDY r ,d I,T) í-,(IY+dl LDD LDIJ
STX r ,d LD
UX"d),r
LDDR LDDHSTY r ,d LD
(Iv-d) ,r
CCI CPIM\'IX nn ,d LD
(Ix"d)
,nn CCIR CPIRP1\'IY rín ,d LD (1Y"d) ,nn CCD CPI)
LDAI LD A, T CCDR CPDR
LIJAR LD A ,R ADDX d ADD (Ix+d)
STAT LD
I
,A ADDY d ADD (IYTd)star
ld
r
,a adcx d adcax-a
LXIX nnnn LD IX ,nnnn ADCY d ADC (1Y"d)
LXIY nnnn LD IV ,nnnri SUBX d SUB (IX-d)
LBCD nnnn LD BC, (nnnn) SIJBY d SUB (Í9'+d)
LDED nnnn LD DE, (nnnn) SBBX d SBC (IX+CÍ)
LSPD nnnn LD SF', (nnnn) SBBY d SBC (j"Y"+d)
LIXD nnnn LD IX, (rinnn) ANAX d AND (lX+d)
LIYD nnnn LD IY, (nnnn) ANAY d AND (1Y"d)
SBCD nnnn LD (nnnn ) ,BC XRAX d XOR
(Ix±d)
SDED nnnn LD (nnnn ) ,DE XRAY d XOR
(1Y+d)
SSPD nnnn LD (nnnn) ,SP ORAX d OR (IX"CÍ)
SIXD nnnn LD (nnnn) ,IX ORAY d OR (1Y+d)
SIYD nnnri LD (nnnrí) , IV CMPX d CP (IX+dl
SPIX LD SP,IX CP1PY d CP (1Y+d)
SPIY LD SP,IY INRX d INC (IX+dl
PCSHIX push IX INRY d INC (Tjí-d)
PUSHIY PUSH IY DCRX d DEC UX+-D
POPIX POP IX DCRY d DEC (1Y"d)
POPIY POP IV NEG NEG
EXAF EX AF ,AF' IMÚ IN Ó
EXX EXX IM1 IM
l
XTTX EX (SP) ,IX IM2 IM 2
XTIY EX (SI?) ,IY DADC
rr
ADC FIL,rr
LDI LDT DSBC
rr
SBC FIL,rr
DADX
rr
ADDIX,rr
OIJTI OUTIDADY
rr
ADD IY,rr
OUTIR OTIRINXIX INC IX IND IND
INXI-Y INC TY INDR INDR
DCXIX DEC IX OUTD OL'TD
DCXIY DEC IY OUTDR OTDR
BIT b,
r
BIT b, r RLCRr
RLCr
SETB b, r SET b,
r
RLCX d RLC (IX-uji)RES b,
r
RES b,r
RLCY d RLC (IY+CÍ)BITX b,d BIT b,(lX+d) RALR
r
rl
r
BITY b
A
BITb,(IY+D
RALX d RL (JX-¢J)SETX b,d SET b,(1x+d) RALY d RL (IY"Á)
sety b, d set b,(IY+¿j)
rrcr
rrrc r
RESX b,d RES b,(1k"-d) RRCX d RRC (IX-ól)
RFSY b, d RES b,
lIY"d)
RRCY d RRC (jYm¿j)JR addr JR addr RARR
r
RRr
JRC addr JR C ,addr RARX d RR
(Ix-d)
JRNC addr JR INC ,addr RARY d RR (1Y+¿j)
JR7, addr JR Z ,addr SLAR
r
SLAr
JR?'Z addr JR !"Z ,addr SLAX d SLA (Tx+d)
DJNZ addr DJNZ , addr SLAY d SLA
(Iv-d)
pcí X" JP (IX) SRAR
r
SRAr
PCIY JP (lV) SRAX d SRA (IX"d)
RE'TI RETI SRAY d SRA (IY+d)
RETK RETN SRLR
r
SRLr
II'I?
r
INr,
(C) SRLX d SRL (IX+CÍ)OL'TP
r
OUT(C),r
SRLY d SRL (1Y"d)INI INT RLD RLD
INIF'. I.ClEé RRD RRD
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* :k
* IIYJT and TK)I USER'S GUIDE *
* *
* Copyright 1982, 1985 by RD SOFTWARE *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
These programs
translate
assembly source code fromInt.el
extended 8080to
TDL,"CDL (Xitan) mnemonics (ITOT) andvice
versa(TTÜI). The
output
sourcefile
is written
to disk
andi-s
completely formatted and ready
for
assembly. The extended 8080set is that defined
byDigital
Researchin
their
macrolibrary
Z80.LIB
furnished with
their
macro assembler MAC. Please notethat
if
your source programs use only the 8080 subsetof
the Z-80inst-ructions
then you need not be concernedwith the
Z80.LI13ext.ensions .
The use
of
ITOT and TTOI are nearlyidentical.
Thereforein
what
follows
weshall just refer to
ITOTwith
the understandingthat
it
alsoapplies to
TTOI except where noted.* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
9:
*
* COMMAND LINE FORMAT *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * To execute ITOT
for translation
of an 8080 sourceprogram t-o TDL/'CDL mnemonics the Z-System (and CP "M) command
line
formatis:
A ITOT
if
ilename!filetypel
lofi
leriame]Ifiletype)
where t.he parametersin
square bracketsarr
opt.ional .ifilename=input
sourcefile
nameof ílename=output source
f íle
name The c-)l")tiona] outputfile
name default-sto
X80.ASYfor
TTOT arid t-cj TDL.ASMfor
TTOTITOT
will
automatically
:insert
colonsafter
labels,
if
rintpresent, since the TDL/CDL assembler requires them.
It
will
also ccmvert anyasterisks,
used as commerítdelimiters,
t-o semic: olons* * * * * * * IK * * * * * * * * * * * * * * * * * * * * * * * *
* *
* INPUT FILE FORMAT RULES *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Cert-ain
input
sourcef lie
formatrules
must befollowed to
obtain
a successfultranslation.
Manyof
these aredictated
bycommon assembler syntax
rules.
Therules
are asfollows:
1. Only one
instruction
perline is
permitted2.
All instructions
must bein
upper case3. Each
line
must terminatein
acarriage returrl
andlime feed
4. No
line
numbers are permittedin this
versiorí5. Lines must be less than 128 characters long
inc hiding comments
6.
All labels
muststart in
column one7. The mnemonic or iríst-ruc'tion
f ield
must be preceded by at"least
one space or tabif
no label 15 present8. There must be
at least
one space or tab between the endof
a labol and the beginningof
theinstruction
unlessthr
label ends i-n a colon9. EQL' and SET pseudo-op statements
may begin
in
cíny col umnl0.
Other pjseLld(")-ops or macro names must begiri as definedfur instructions
in
Rule 7li.
Commentlines
must be preceded by a semicolon orasterisk
and may beginin
any column. (See also RuleU)
1.2
. Comments
following instruct
ions on the same I ine mustalso begin
with
a semicolon orasterisk
and must- bepreceded by at
least
one space or tab onlyif
theasterisk is
usedBlank
lines,
aswell
asblank lines
following
alabel
, aresupported.
Due to the
variety of
assembler pseudo-ops some compromiseshad
to
be made. Thereis
alogical
problemwith
pseudo-opsstarting
with
anasterisk
and commentlines delimited
by anasterisk.
Thisis
solvedin
thesetranslators
by thefollowiríg
additional rule:
13.
If
pseudo-ops are used whichstart with
anasterisk
then-- a label must be used on the same
line.
Thelabel
may,of course, be a dummy. In
addition,
actual comment. limes* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* *
* EXECUTION *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * When program execution begins ITOT
will
the
terminal indicating that
thetranslation
is
underway.If
anunrecognizable
instruction
is
encountered a syntaxerror
messageis displayed at
theconsole
alongwith
aline
numberindicator.
This
line is
also flaggedin
the outputfile
by the commentline
"FOLLOWING INSTRUCTION NOT RECOGNIZED." The
translator
makes noattempt
to translate this line
but simply copiesit
to
the outputfile.
Most o
f t
h e coInmQr)pseudo-ops
ar
eincluded
i
nt
h etranslator's
internal
tables.
If
you get a syntaxerror for
apseud(")-c)p or macro name which appears
in
your input sourcef lle
you should then run
the
utility,
ADNAME.COP1 asdescribed
below.This
will
prevent future occurrences of
this
error.
As notedbelow,
this
utility
does nut.translate
or,
moreaccurately,
it-results
in
aone-to-one translation
(exact
copy)of the eritire
line
.These
translators
do not support. the TDL .DEFINE (MACRO)pseudo-op
since there is not, in general,
a uniquetranslation.
These can
usuallv
be handledafter
translat.ion
with
aneditor.
-L
The .EXIT (EXITM) pseudo-op
is
included, however.All
arithmetic
andlogical
operators of the
TDLset
aresupported
with
the exception of the unaryradix
change.Three of the
conditional
assembly pseudo-ops of the TDL set.are
supported.
Theseare:
.IFN(IF)
whichis false
if
i t
sargument
evaluates to
zero andtrue otherwise,
.IFB(IF
NUI.)which
is true
if
it.s
argumentis blank,
and .IFNB (IF NOT NUT.)which
is true
if
its
argumentis
ríütblank.
The ELSEconstruct
is
a]sc)supported.
Nopart of the
bodyof the
IFor
ELSEis
perrnit-ted on the same
line
as the IF statementitself.
Left
andright
squarebrackets
must- surround the argumentsof
.IFB arid* * * :k * * X * * * X X * * * * * * * * * * * * * * * * * * 9r 9t
* *
* ADNAME .COM *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
This
utility
permits
the userto
add custom macro namesor
pseudo-ops to thetranslator's
internal
tables.
It will
operateon
either
ITOT.COMor
TTOT.CO.Y.It
will
also operate
oneither
of
thesefijes
if
they
have been renamed. Please notethat
notranslation
occursfor
these names. The useof
ADNAP1Epermits
the
t:ranslators
to recognize
these names andto
copythe line
from
the input
file
to
theoutput
file
without
generating
anerror
message.If
you experiencedifficulty
with
assemblyof
atranslated
fije
it
may be necessaryto edit
thetranslated
file
to correct for
theparticular
pseudo-ops used by your assembler.The command
line
formatfor
ADNAMEis:
MADNAME filenamewhere
'filename' is
ITOT, TTOI or whatever you may havc' renamedthem. A
filetype
of
COMis automatically
assigned by ADNAME. Theprogram
will
then prompt youfor
the new namesto
beentered.
Each
entry is
terminated by acarriage return.
A blankline
(CR)terminates the
program. Theold
file
is
renamedwith the
samefilename
andwith
afiletype
of
BAK. The newfile
is
renamedwit-h the same filename and
with
afi-letype of
COM. The new COMfile
wAl
include your new names.If
you wish you may erase theE3AK
f
i
le. Westrongly
recommend, however,that
you always keeE"' abackup copy
of the original
files.
The spaceallocated
in
thetranslators
for this function is
200 bytes.If
Nis
the rmmberof
new names and Cis the
total
numberof characters
in
the newnames then 2*K'"C must be q = 200. Attempts
to
exceedthis
numberwíll
not- be accepted and a warning messagewill
be issued.AM"AME may be used on t.he
current
COMfile
asofterí
asyou
please.
Any new nameswill
be addedto
thosealready
included and a new COM
* * * Ik * * * * * * * * * * * * :k * * * * * * * * * * * * * * *
* *
* EXTENDED 8080 VERSUS TDL/CDL MNEMONIC TABLE *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * :k * * * * * *
The Z-80
peculiar
instructions
for
TDLdiffer
fromthe
extended 8080
set
as used here. The extended 8080 mnemonic setis identical
to that released
by Di-g-ital Research as Z80.LIBto
be used
with
their
CP/M "MAC" .'lacro Assembler. Thefollowing
convent.ions are used
in
thetable.
r
- anyregister
or memoryrr
-
anyregíster pair
or stackpointer
nn - 8
bit
immediate data (Oto
255) d- 8
bit
signed displacement (-128to
127)nnnn
-
16bit
address or immediate data (Oto
65535) b-
bit
number (Oto
7, 7is
mostsignificant-)
addr
-
16bit
addresswithin
PC+127 through PC-12RIn
casesinvolving
adisplacement,
d,this
parameteris
alwaysthe
last
onein
operandfield.
EXT 8080 TDL EXT 8080 TDL
LDX
r
,d MOVr,d(X)
LDIR LDIRLDY
r
,d MOV r,óÍ(Y) I,DD LDDSTX
r
,d MOV dl X),r
LDDR LDDRSTY
r
,d MOL' Óí(fí),r
CCI CCI.YIVIX rin ,d YIVI CÍ(X) ,r"írj CCIR CCTR
!'1\"IY rirí ,d M'JI d(Y),nn CCD CCD
LDAI LDAI CCDR CCDR
LDAR LIJAR ADDX d ADD d(X)
STAI STAI ADDY d ADD d(Y)
STAR STAR ADCX d ADC d(x)
LXIX nnnn LXl X,nnnn ADCY d ADC d(v)
LXIY nrínn IJXI Y
,nnnn SUBX d SUB d(x)
LBCD nnnn LBCD nnnn SUBY d SUB d(Y)
LDED nnnn LDED nnnrí SBBX d SBB d(x)
I,SPD nnnn LSPD nnnn SBBY d SBB d(Yl
LIXD nrínn LIXD nnnn ANAX d ANA d(x)
LIYD nnnn LIYD nnnn ANAY d ANA d(Yl
SBCD nnnn SBCD nnnn XRAX d XRA d(X)
SDED nrínn SDED nnrín XRAY d XRA d(Y)
SSPD nnnn SSPD nnnn ORAX d ORA d(X)
SIXD nnnn SIXD nnnn ORAY d ORA d(Y)
SIYD nnnn SIYD nnnn CMPX d CMP d(x)
SPIX SPIX CMPY d CMP d(Y)
SPIY SPIY INRX d INR d(X)
PUSHIX PUSH X INRY d INR d(Y)
PUSHIY PUSH Y DCRX d DCR d(X)
POPIX POP X DCRY d DCR
d(Y)
POPIY POP Y NEG NEG
EXAF EXAF IMO IMO
EXX Ek"X IPll 1-¶1
XTIX XTlX IP12 IM2
XTJY XTIY DADC
rr
DADC r-rLDI LDI DSBC
rr
DSBCrr
DADX
rr
DADXrr
OUTI OÜTIDADY
rr
DADYrr
OUTIR OUTIRINXIX INX X IND IND
INXIY INX y INDR INDR
DCXIX DCX X OUTD OUTD
DCXIY DCX Y OUTDR OUTDR
BIT -b,
r
BIT b,r
RLCRr
RLCRr
SETB b,
r
SET b,r
RLCX d RLCR d(X)RES b,
r
RES b,r
RLCY d RLCR CÍ(Y)BITX b,d BIT b,d(X) RALR
r
ralr
r
BITY b,d BIT b,dci") RALX d RALR d(Xj
SETX b,d SET
b,d(x)
raly
d RALR d(V)SETY b ,d set b,dcv) RRCR
r
RRCRr
RESX b,d RES
b,d(x)
RRCX d RRCR d(X)resy b,d RES b,d(Y)
rrcy
drrcr
&Y)
JR addr JMPR addr RARR
r
RARRr
JRC addr JRC addr RARX d RARR d(X"l
JRNC addr JRNC addr RARY d RARR dlY)
JRZ addr JRZ addr SLAR
r
SLARr
JRNZ addr JRNZ addr SLAX d SLAR CÍ(X)
DJNZ addr DJNZ addr SLAY d SLAR C1(Y)
pcI!í" PCIX SRAR
r
SRARr
PCJ y PCIY SRAX d SRAR d(jO
RETI RETI SRAY d SRAR CJ(Y)
RETIV RETN SRLR
r
SRLRr
IM'
r
INF'r
SRLX d SRLR d(X)OLTP r OUTP
r
SRLY d SRLR d(Y)TKT INI RI.D RL.D
For TTOI the
following additional translations
arevalid:
JPE nnnn JO nnnn JPO nnnn JNO nnnn
CPE nnnn CO ñññrj CPO nnnn CNO nnnn
RPE RO RPO RNO
The
following
pseudo-ops and operators are also includedin
both
translat-ors:
SET = EQIJ
PAGE .PAGE TITLE .TITLE
IF .IFN END .END
IF NEIL .IFB IF NOT NUL .IFNB
DS(2) .BLKW DW .WORD
DB .BYTE DB .ASCII
DS .BLKB ORG .LOC
ENTRY .ENTRY EXTRP' .EXTERN
ELSE ]{ ENDTF ]
RADIX .RADIX LIST .LIST
XLIST .XLIST EXIT .EXIT
$
. NOT #
ylor-) @
or
!XOR "" AND &
SHR < SHL ..>
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *