UNIVERSIDAD AiJTONOMA METROPOLITANA UNIDAD IZTAFALAPA
/'
MICZ8000
FROYECTO
DE
INGENIERIA ELECTRONICAMANUAL IIEL usunRIo
/
ASESORADO FOR:
ING.
LUIS FERNANDO CASTRO CAHEAGA,E ES ARROLLADO
FOR: JORGE ROMERO HERRERA YJOSE ALFONSO COLIN.
' M E X I C
O 1 4 DE OCTURRE DE 1985
...
-
... _. _.__
_. ._ ._ _._ __
.... ._- -
... .___ __
...__
._ _._
... _. .... -. ... _.-
_ __
... ...Prig
I.
-
INTRODUCCION ...__
. . . 1. C A R A S C T ' E R I S T ' : ~ ~ ~ ~ DE ESTI:PawE-rE
... 1PHQCEDIMIENTQS 1
CREACIUN
DE
LJN PR'CIGRAMA Fi.JE:NlE 1 . . .. . .
,..,
E N S A M B L A D O DE IJN PFIUGRAMA FIJENTE ... il (:REACION DE UN PtiCltiKAMA E~NSAMHLADU .... ... 2
1bJVCIC:AbJUO A L EMIJLADOlq
PROPOSITO DE
Eis-rE
MANLJfi1- . . . .I,MFEWNC% ... ... ._ 4.
'7 .... I .... . . . . . ~
. . .
11.
-
USO DEL
EMULADOR ... ._ . . . 3c DESCfi:IPCION DE CUMANDUS ... ... -1
ti
C:QMA~XKl ( A ) YUDA ... -,
__ __
...CUMAMDU (13) ARGAfi ... ... ...
__
... 7COMfiI\.IDU ( F )
I N
... ... .... 1 0 COMN@iDQ ( E ) (1 _. ... ._ Y. 1c
OM A I\.ID
13 ( I ) MPR Tri
I F: ... _ . ... ... 12[:(JMAhlDO (1- ) I S'lW Y. .;
COMANDO ( M ) CJD:[FICAR -, ... 14
COriAtmu ( p ) URGAR ... ... ... ... Y. 6
... .... . . . ... ...
CQMf" ( f ? ) €SET ... :1 7
CQMAhlDC)
( C )
'TATlJs ... .... ... ... Y.o
C:uMAhID(J f
v
fER
.... -.__
.- _. ....__
... 17. . . . . .
?, .. I I I.
-
EJEMPLO PRACTICO . . . i.1.)2(j
PR!JtiF:AMA FUENTE . . .
PROGF:AMA E:NSAMBI-ADO
__
Lci
UsANEiQ EL EMULAllQR ... .- . . .
z
j.I V . - CAPACIDAD DEL EMULADOR
__
... ... 25a-,_ e'>&- FoRMA-ro
DE
COMANDOS ... ... 2: JMEHOE I
A
-
__
.- _.__
...__ __
... ... i l d2 6
INSTHUCCIONES IMPL-ANTADAs ...
__
. . .2
7PUNTOS DE WPTUHA ....
__
.... .___ __
... ...~ ~ "" ~ _ < ... <.<.<...
I
.-
INTHODUCCION
DECL.ARACION
TIE
F'IINTOS DE RUF'TUFtAi...~ d e c l a r a c i 6 n d e puntos d e r u p t u r a l e permiterr d e f i n i r i.to~ibreci d e variclb:Lf?s p a r a r e p r e s e n t a r direccit:iries de
1
oc 01 I i d oldes
d e aenii? r i 11,
f ac i 1i
tan do
1
e
1
u
d epi.1r u e
i. 6ri d eprogrrlnias y el. ucio de o t r o s coniaridos d e l emulador.
MODIFICACION UE REGISTROS TIE MEMORIA y CPU
La n i o d i f i c a r i 6 n iic? r e g i s t r o s de M e n i u r i n y CPU
l e
perriii.teri cilterrir
el
c6digo o b j e t o t11.ninceniido err e: i.rn 1 q 1.1 ie
r1
c)c %I1
i t l n t l d e1.
rlniemor
i
in
yreg
i c i tr
o i ri t e r n od e l . CPU, f a c i l i t a n d o
l o
deteccihrr y c o r r e c c i 6 n de!errores
de proqraninci6n.CREACION IIE UN F%"GRAMA FlJENTE
P o r m e d i o d e l e d i t o r d e 1.0 HP--3000 (EDIT-3000) u s t e d pi.rede c r e a r iin ~:)rciqraia f u e n t e e s c r i t o en 1eriqiin.je
:EXITTOR
/a
Esta es I n p r i m e r a l i n e a Esto es 1~ s e g u n d n l 1 n ~ ' a 3.
2
/ / /KEEP
xxxxxxx
/EXlnnde X X X X X X X es
el
nombre que se 1.e quiere d a r in1p
rogrwm
+CHEACTON X K
U N
F'ROGRAMA E:NCAMHL.RI:lOP o r ni<+d:i,o d a l . er.l:i:Lor de
la
tIP-3000 (EXlI:T--3000) ustedp1.1ec1e c r e a r iun ~>'rogranin enstmhlndo esc:rita en c d d i g o
h e:.: ,:I d c! c i. mix 1. d e 1 cin (3 1.1 n .j
e
en stn nih I. ado
r Z8
O 0O
+:EKlTTOR
/a
3. E s t a e s ].a p r i m e r n l l n e a
2 est^ e s ln segunda l l n e o
/ /
/KEEP YYYYYYY'I
/I.
Ilonde Y Y Y Y Y Y Y Y
e(;
e l I ~ O I I I ~ ~ ' ~ que sele
quiere d a r t l l prngrnnia c u y o formoto p a r a c a d a l i n e a es e l Ciigiii.er\te+213 Y
D
I Fi ,413,
con
Tcio
I N V O
C h NTIO Al.- EMU L. AilO
FiPars i n v o c n r
al.
eniulador clel.micro-prncesador
28000,.;o10 tiny
ciiie
d ~ r ell. conio.rido+:MTC28000
Se recomlenda
el
sigi.iient,e l i b r o y 1.0s sigulent,es nianunl.es:* %ROO0 ASSEMBLY LANGUAGE PROGRAMING'
Lnrice! A. L e v í i r i t h a l , Adnni Osborne y ChlicK C o l l i n s + O sb o
r
ri e/M c Gr
8). wtl
:i. I. 1 1.980'MPE XU COMANTIC REFERENCE MANUAI..'
C l a v e :30 000/90
007
* F J J I 1 --3OOO
'
C::lave 03 OOO/Y0 01.2
'
MACZ8 00 0'
Ilkh6n R o s a l e s Unre1.a y Jorge Montafío C n l a z a r + 1. 7
o
3,LiESCRIPCION COMRNDOC
Ei:I enii.11.ador d e l
micro-proc:esador
28000 cuenta cc)ri l as
ig .1.1 i en t,e
1 is
t
01 d e c: oniari dos
:
n
C
n
E F G IL
M F R S VIlyi.idn genert31 d e comandos.
Cargnr rrienioria con
p r o g r a m n
ensan~blado en c6di.gn h e:m d eci
mi 1. +LQ!fini.r punto<; de r i i p t , i . r r a +
E,.jeciiCar progrania poso c1 p a s o +
F i n d e proceso eniulador MIC28000.
Go, ( c o r r e r ) , progrania.
I n i p r i s i r e s t a d o
actual.
de C:PU y memoria.L i s t a r piintos d e ruptura.
M o d i f i c a r r e g i s t r o s d e CPU y ntenioria.
Pti r g Q r
p
iurit os
de
rup
t
i ir n
Kest?t, ( l i m p i a ) , r e g i s t r o s de CPU,
C t , Q t l . i E j p (estnIdo) 9 de CPIJ,
V e r c:ontt?nido de nlenioria.
c
(A)Yi.JXiA GENERAL. I:lE
COMhNlrnCi,
E s t e coniandu puede proporcionar todn 1 . ~ informaci.ón
nerzcnsaria s o b r e l a formn d e iisni~ odecubdanmnte 1.0%
dtinids conlandos d e l eniillador, Actunndo conto iin11 pequefín
g i . i i a d e l iucii.iario di.irarite
l a
sesiónde
trnba.jo+h
[:XIIllande:
C X I
:
E s u np a r d m e t r o
opcional, que puede 4ier iun11l e t r o
que represente 11 ci~al.quier o t r ocontando del eniiulacior. S i
es
vaclo se asi.inieque
st?
desen nyiuda general.s o b r e
todo?;los
c onm
n
d $0 s + 8:: .j enlp 1 o5:
Invocando nyiudn general d e todos
l o s
comandos,MIC:::. A i ret,i.irn
>
Invocando a y u d a s o b r e tun coniarido en partici.ilar.
C CAHCHIUOI
C A R C H I V n 3 ! IEs iin pardmetro el. cunl diibe
ser
el.
nombre de un a r c h i v a donde se enciientre alsacenadoel
proyriima enc a r g a r ,
~ 6 d i g o h @ X Q d ~ C ~ l l l ~ 1 qUe st? desea
Este u r c h i v o puede
ser
el. a r c h i v o r e s u l t u d o después de i n v o c n r 611 c:onianda MACZ.13000, c)ci.mlqiiier
o t r o
CretkdO p o rel
usuario s i e m p r e yri.inndo se r e s p e t e e l forminto d e cada l i n e n en 1.n cre'aci6n d e programas ensnNlb'i,i:kdOS*
C
in
r g an d oe l caninndo p MACZ.8000. rog
r
61 ma en SQnt
b I.31 d a
res
11 I.t
n d o cl e in
vo c n rMTC:::. C MXXXXXXX ( return)
Caryarido
programa
€?n?i*INhI.*3dr.>creado
p o rel
iic;ii*i
r
i
o
.
MIC::.
C YYYYYYYY(return)
(D)EFI'NIFi PIJN'T'OS XlE RIIF'lI.IRA+
Este comando p e r m i t e d e f i n i r nombres de v a r i a b l e s , (puntos de
ruptura),
pt1r.n
representar
d i r e c c i o n e s cie1 c)c
on
I. i. dad e5 d e niemn I' i I + i..as v ar
i ~ n b1
e sas
í d ef i n i d ins podrdri ser usadtn:; pnsterj.ornicirrte p o ro t r o s
conmidos,h inc i en d o N I ~ S c
onip
r
en
s ib
I e 1 in e.j ec tic :i6n
y f nci
1
i t a n do
I.in
d k?p 1.1 rnc i hn de p rog rnrms
.
D
CNOMBREI=
CUALORI Uori de:CNOMBRE:I
:
ti:% un pnrhmtetroel.
cun1 debe sei'el
nonibre d e l a v a r i . a b l e (punto cleñ i . ~ p t u i ~ a ) con u r i N I ~ X ~ N I O cle 8
craructeres onI.f~n~.i~ii+ric~s, enipexando !$ieipre con iunn 1.etra.
CVAI..CiF<ZJ
:
E!:,
un pardirietro que c o n s t a c:omo nid,:iniod e 4 c l í g i t o s
ec;pecificando
l a
d i r e c c i h n d e I n 1.ixnIidndd e
rriertiorin que sern tnsiqriadain La
v a r i a h l . e +Ciefiniendo c:L punto de r u p t i l r a " B R E A K ' con l i i 1.ocalidad de mienloria 001.A.
MIC:::. Cl HKEAK-00i.A ( retiurn)
I:
n m
o rt
an t eCj.
e l
nombre de 1.n variub1.e yin h n s i d o d e f i n i d o a n t e r i o r m e n t e y se vuel.ve n c s p l e a r en o t r a d e f i n i c i h n ,1.0 v a r i a b l e r e p r e s e n t a r 4
l a
d i r e c c i h r i de 1.0 1.ncal.idadd e ntemioriii as:i,grtado
eri
1.81 61.tinia defirtici.6rr._-
<..I____ COMANDO
( E
1 JECI.J'lAF; <-( E ) J E C U T A H PROGRAMA PASO A PASO,
E:!,t,e conlnndo permite p r o c e s a r
u n
ntimero
deterrriiri~ido d ein!;triicciones Q
partir
de 1 0 aictual direccibn de1 n c : a l i d a d d e memoria contenida en e:L r e g i s t r o c m t n c l o r d e proqrnrria ( P C ) +
E
CNUiíEROILionde:
CNIJMER03
:
Es u n pardrrietro opcional. que constcicomo
md;:into d e3
d i g i t a s deci~~iiil.es,esp
e c
i f i c n r i d o e ln
h e r o d einstrucciones a p r o c e s a r . S i e s vocío
'5e Oisiiflae clue
se
desea p r o c e s a rsolo
luna instri.icci6ri +
Pi.ocesnnclo unci
s o l a
i n s t r u ~ c i b n ~ MIC::. E ( r e t u r n )P
roces
mind o I.5
1,n
s t riic c ion es
c
o
n sec iu L i vils
.
MIC::- E 15 (retiurn)
COMANDO (F' ) I N
( F ) I N I3E P R O C E S O EMIJL..RDOR M T C Z 8 0 0 0 ,
E!;te coanndo d a
p o r
terminadn].u
sesián poniendo , F i n al. i.iso delproqrnnirr
cniulodor MICZ8OOO.F
E .j enip
i
o:
F t n 11
1
i znn
do
e:l.
11so
d E! 1. pro
qr
nnm
inemu
1 a d or
MI CZ 8000.
MXC:::. F retiirn)
( G ) O v (CORFtE:R), PFIOGRAMII,
E s t e coniando prrniite procesUr i i r i progrania c n r y a d o eri
meninria a prlrtir d e 1.a actiial. dirección de l o c a l i d a d de nieNiorj.o c:ontenicla en ~ ? 1
r e g i s t r o
contador de prograrria( P C ) .
G C L I W I T E Y
D o n d e :
CI
...
I M I l E l:
E!; tin pardmetro opciorial. que puedeser
iin riiirriero que consta c:onio ntdxinio de 4
d i g i t n s trexndecinii31es o bien uno 1? p r e c e d i d a
p o r
e l nonibre d e iin puntocle
riiptura, indicando ].a clirecci.óri de 1.0locnlidad d e nierrioria ni4xinia eri
l a
cual.
debe roniperse e l procesnniierito. S i es viicio se incii.irrie que se desea pro(::esarLodo el. progrnInia,
EJeiplos:
Procesando e l p r o y r a n i r i c n r g a d o act,iialierrte.
M:I.C> G (reti.irri )
Procesnndo
el.
progrnnia hasttil l e g a r
I>. l a dirciccibnd e menioriii OOAA,
MTC> G OOAR ( r e t u r n )
F'ivxesando e l prograia hncito 1.1.egar a l a direc:cibn d e memoria rcpresentadu p o r e l piirito d e riiptiirtl
"
BRERK'.
MIC>. G (?X{REAK I returri )
(1)MF'RIM'J.R ES'I'ADC) AClLIAi- LIE CF'IJ y MEMORTA,
Este contando perstitx niciridar II i.rripresi.6n
01
tisttidou c k i . ~ ~ i l d e l contenido de
lo:;
regist,ros internos clel. CPU,,
o
el
es-todo actual del. contenid« de 1.nsdades
de mc?mi?rt,i iisildos en el. enii.ilador + I [XIU
nn d e:
[:x3
:
Es un pilrdmetroe l
ciial debeser
i u r j i il e t r a ,
y n sen u n t i C y s i s e c i e s e a i.mpri.mir
el
contenido de
los
r e g i s t r o s d e l CF'IJ., o luna V v s t?!e
deseo i i p r i . w i r e l conteni,do de l a sI »c 81 1 i
ti
odes de nienio r i. ti+E
.j emp I.os
:
Iniprimiendo e ' i estado actual de l o s r e g i s t r o s clel CF'U +
MIC:' I C (reti.irn)
Iniprirrtieririo el. estaclci
nIctlial
de ].as I.ociiLi.dndc?s dentento
r
i a +M 1: I V (reti.irn)
F'ara
impri.n~ir tan 5010 e l cmteriidn d e iina sec:ci6ri (:lel a
iricmoria en p a r t i c u l a r , e l c:onvindoI
V reconoce t,odos I.nc, paraaetros aceptados p o r e l comando VFora
mds informacibn l e e r desc:ripciándel
coniando V enpagino ribnwro 1 9 .
I...
i s
t
,in do
10.5 p bint
os
d t? rup tilrn
11c t u a I. men tedefinidos,
COMANDO (M)ODTFICAR
(M)ODIFIChR R E G I C l R O S LIE CPiJ y MEMORIA.
Este coiririndn p e m i t e n i o d i f i c a r
el
contenido deciunl.qi.iier r e g i s t w i n t e r n o del. CPU
,
o l o c a l i d a d demlc?mori,a usado en e'l entiiiadcir +
M CKEGISTKOI
=
CUALOR3 Don de:CREGISTKilII
:
Es
unpnrdntetro
el
cual. puedev a r i u r
entre:
11)
El.
nombre d e ci.ialquI.er r e g i s t r ob ) MEM(EUA I...
ORI),
p a r a 111odifici:~ci6n c ) HAN(CNOMBHEI), p n r n modifi.cacibni n t e r n o d e l CPU.
d e l o c a l i d o d e s de irieeori.a,
d e banderas.
:
Es
iun pardnletro e lcual
puede tomarel
n oib r e d e c i d al,
q u i e r band e ro i nt
e r r i ea, p.r.ovist,ci p o rel.
CPIJ.:
E% iun parCinietro el. c:linl puedev a r i a r
en
t
r
e:
a ) Un riilmero que corista CONIO niá-,' I. NiCi
de 4 d i g i t o s tiw:udecimnales ci b i e n iuna @ precedida
por
e l nombre de un punto de? riupturci9p a r a
el.
cnso d e m o d l f i c a c i h n de b )Un
I o 0 csp ec j, f i c: ,in d oprendido o apagddo
para
el.
cnso de rcid i f i c Q C i ári deti
onnd erns +re(3istI'os Y NieNlürill+
Modifi.condo c i x t e n i d o d e l regi?it,ro RY. con
el.
v n l o r OOFF,MTC;. M I11.=OOFF (ret,iur.n f
Modificando contenido de ].a l o c a l i d n d de irienmri.a 0030 con
el
val.cir representado p o rel.
p u n t o
d eri.ipturn 'IZREAK'
.
MIC:::.
M MEM(OO3O)=@HREAK ( r e t u r n )Modificando
e l
v n l o r de 1.a bnnderaC/N
Q prendido,MIC?,
M
BAN(S/N)=l.
( r e t , i i r r i )memnrin h a y que tener presente que
este
ionitando gi.Fecta tnri2.n na:l byt,e de :I.n dirección d e a e n i o r i a especificado CONI^ 811. b y t e d e :I.n dirección d e nierrmria precedente,pue5 ].a iodific:aci6n
se
t o n i c k siempre C O N I Q iiri cambio en(R)ECE:T, (I..IMF‘TA), F’EGISIROS 13E CPU,
E:ste cnmoindo i.ni.c:inl.iza
el
contenido d e todoslos
rcigistros j.nterno.5 del. CPll d e l micro-procesiidor a ceros.
R
L..%nlpinndn
el
contenido de 1.05 r e g i s t r o s d e l CPU,MIC:::. R (return)
( S ) l A T U C , (ECTAIiO), UE CPU,
Este conmndo perniii,e despl.egar en pantalln
el
contenidodel
estiidoactual
de 1.0s r e g i s t r o s internos del CPU.S
Observando el. contenido de 1.0s r e g i s t r o s del. CPU.
MIC;. C ( r e t u r n )
T a n t o CBASE:I como CL.IMITE7 s o n par6nietros
o p c i o n n l e s . Si. anihos s o n v a c í o se astinie que se
clesea despl.ec)ar e n pw1lz3ll.a t o d o s las : l o c a l . i d a d e s
de menmria de:l enit.ilador+
E.j emp I. o s
:
-..-- MEMORIA
€<+te enti.ilador cuenta nictiinlniente con iinii capncí.clad cle
nieirtnria de 4 K h y t e s I
o
sea queel
rarirjo de meninria c(i.iemmn
e ,j a ti @:.:adec
ima
,1.e
s
,
ab8:ircn desde 1.0 di.reirci.6n de lorral.idad cle a e n i o r i a 0000
hnsta
la
OFFF,L a
c o p a c i d n d de riienioriii d e l eniiil.odo1' so1.0 puede serm o d i f i c a d a
si
se hacenlos
a j u s t e s necesarios modificando e lprnqraniii f u e n t e del Cisteniu MICZ8000.
INCTRUCCTONES I__ __-XMPLANTADAC I. --.
Ac t 1.1 Q
1
mien
t ei nit) 1 a n t,,;d
ns
I. 11 s i g iii en t e 1 :i.st
a dei n
st
riic c i. on es:
e
1
em 1.11
ad or d c! 1 mi i cr
o-proc
CIS ado
I' ZOO00 t i en E!*
E l
desplazamiento es de un l u g a r 01 lil i z q u i e r d a .io $* InipI.on.t(ida!ii
a
n i v e l p a l a b r a(16
b i t s ) +T
o
d 81 sn i v e l b y t e , w o r d y l o n g - w o r d .
I. (1s cl cini
6 s
i n st
r
iic c i o n es i a p1
an L ,:id Q sEr;te en~i.ilador actunlmente puede soportar t a n s6l.o
:La
de.P:~nici6ri tiei?O
puntos de riiptiirn d i f e r e n t e s como N d k X i m Q ,E s t a capac:idad igiialniente
solo
podrd 581' modif i.c:adai hac:ieridn o,juste::al.
progr'w~i,i f u e n t e d e l Cistemci MlCZ8000+E l
progrnmi~ emulador proporciona niensnJes de e r r o r t a n t o d e e.jecuci.6n (:onlo d e si.nto:.:is, 1.0s ci.iales son enviados inl a
p a n t a l l a en c-1. momento c?n que estos son detectados,E n
el,
c:<:iso de e r r o r e s (de s i n t w : i s , aparecerní i.in nipuntador sefínlundo (il. comando en el. ciial. s e d e t e c t o dicho e r r n r , El.conitindo
con
e r r o r w
<le
sirita:.:i!i;no
ser6 e.jerutnclc) Yn o
cai.isnrn ni.rigdri efec:to yiiclue
serii a b o r t a d o por el. s i s t e m a .S i
el.
e r r o r oipnrece cuando hay CQNvindQs coricatenados en el.i r i i s ~ i c i rengl6n pnro e v i t a r errores si.ibsiguic!rritris,
s e
ignorrr
el.
resto del.a5
instri.iccitiries coni:,.eni.dasen
d i c h o rcin g 1. 6ri.
Los mencia,jes d e e r r o r e s d e s i n t c i x i s ni6s freciierites sori:
1
3
4
& + "" 7
.
--
8 , -
9 , -
10.
-_
11,-12.-
j . 3 ....
1 4 +
-"
3 ."
...
+..
J
.
--
, +
I..(>s
rriensa,.jes deerrores
d e e.jeci.ic:ibri ~ 1 6 s f recuerites !non:1. a - 8%
U I R E C C T O N
1:lE: MEMOHTA F\JE:RA IIEL RANGO 1:IEI- EtIiJI..,AIIOFi 8 % "Cawwi. posible: Diirnrrh? In carga d e un
nrchivo, e,jetiii(::ibn cl@ iun coninndn c) procesamiento de un programa, se hilr:e
referencia u untl direcci6n d e n i e r o r i a fukwa
d e
1.0s %inii'i,es del. e w . i l ~ i d c ) r .3
-.
_.3 .<.
1) .<.
..I + .'
6.-
7.-
Causa pC)sible: Durnrite l a carga de t u n ~ r c l l i v o ~ e l nombre de d i c h o archivo rin se l o c a l i z a en l a ciientn,
Cotisa posible: Se alcanzó el. l i m i t e iridxinio de definicibri de puntos d e
ri.ip.ti.ira +
Ctiiurci posible: Iliurnnte l a e.jecuci6ri (le i.in comando,
el
pi.int(3 der u p t u r a
refe'renciado no h a sido d e . F i n i d o .
d* TNCTRUCCION C:nen~án:i.col NO EMU1 ... A1:IA
**.
C i n i i ?)Q p os ib .
1
e:
D
1.1 rii ri t e e 1. p r nc e s ~ n i i en t ode?
iin p r o g r a m a , sel o c a l i z a
!.in13i.
n
st
rii c c i bn q 1.1 e i n t i n no h a si.doi.mp:Lantadti en
e l
sistenin.CFIU?~
in
pos i b 1e
:
1:Ii.ir
o
n t e el.
proc
e s ~ n i i err.t
I)de u n progrtinin, se l o c a l i z a el. c:bcli.go d e u n n instruccibn que no e x i s t e t o