ÿþW O J S K O W A A K A D E M I A T E C H N I C Z N A
S Y S T E M Y W B U D O W A N E
S P R A W O Z D A N I E
Z D W I C Z E N I A L A B O R A T O R Y J N E G O
N R 2
T E M A T : T r y b y p r a c y p r o c e s o r ó w f i r m y I N T E L
P r o w a d z c y l a b o r a t o r i u m : d r i n |. A r t u r A r c i u c h , m g r i n |. W a l d e m a r S z y l b e r g
C e l d w i c z e n i a l a b o r a t o r y j n e g o
C e l e m d w i c z e n i a l a b o r a t o r y j n e g o b y Bo z a p o z n a n i e s i z t r y b a m i p r a c y p r o c e s o r a f i r m y I N T E L
( R e a l M o d e i P r o t e c t e d M o d e ) o r a z n a p i s a n i e o d p o w i e d n i e g o p r o g r a m u , k t ó r y z a r z d z a :
- 3 z a d a n i a m i u r u c h a m i a n y m i w t r y b i e N o r m a l M o d e
- 3 z a d a n i a m i u r u c h a m i a n y m i w t r y b i e P r o t e c t e d M o d e
W s t p t e o r e t y c z n y
T r y b c h r o n i o n y s t w a r z a m o |l i w o [d u |y c i a n a p r a w d d u |e j i l o [c i p a m i c i ( d o 4 G B n a 3 8 6 , w
p r z e c i w i e o s t w i e d o d o t y c h c z a s o w e g o 1 M B ) . N i e t r z e b a j u | u |y w a d p o w o l n y c h E M S i X M S b y d o s t a d
s i d o p a m i c i r o z s z e r z o n e j . N i e s t e t y w s z y s t k i e p r z e r w a n i a B I O S l u b D O S ' a , k t ó r y c h u |y w a s i w R M ,
p r z y k Ba d o w o , d o o b s Bu g i p l i k ó w , s t a j a s i b e z u |y t e c z n e b o n i e m o g d z i a Ba d w P M , d l a t e g o t r z e b a
n a p i s a d w Ba s n e h a n d l e r y d o k l a w i a t u r y , z e g a r a e t c .
W p r o w a d z e n i e m e c h a n i z m ó w o c h r o n y p a m i c i w y m a g a Bo p o d j c i a s p e c j a l n y c h [r o d k ó w .
K a |d y s e g m e n t ( k o d , d a n e , s t o s ) o p i s y w a n y j e s t p r z e z t z w . d e s k r y p t o r . Z a d a n i e m d e s k r y p t o r a j e s t
o k r e [l e n i e B A Z Y S E G M E N T U ( j e g o f i z y c z n e g o a d r e s u w p a m i c i , n p . d l a b u f o r a V G A a d r e s b a z o w y
w y n o s i 0 A 0 0 0 0 h ) , L I M I T U ( r o z m i a r u s e g m e n t u - m o |e w y n o s i d o d 1 B d o 4 G B ) o r a z j e g o T Y P U / F L A G
( c z y s e g m e n t z a w i e r a d a n e , k o d , e t c . )
T e c h n i c z n i e r z e c z b i o r c d e s k r y p t o r j e s t t o 8 - b a j t o w a s t r u k t u r a d a n y c h , k t ó r a r e z y d u j e w p a m i c i
o p e r a c y j n e j i m a n a s t p u j c y f o r m a t :
Z n a c z e n i e k o l e j n y c h b a j t ó w j e s t n a s t p u j c e :
0 , 1 - m Bo d s z e s Bo w o d Bu g o [c i s e g m e n t u ( l i m i t u )
2 , 3 - m Bo d s z e s Bo w o a d r e s u b a z o w e g o s e g m e n t u
4 - m Bo d s z y b a j t s t a r s z e g o s Bo w a a d r e s u b a z o w e g o
5 - f l a g i s e g m e n t u
6 - s t a r s z y p ó Bb a j t l i m i t u i t z w . f l a g i d o s t p u
7 - s t a r s z y b a j t s t a r s z e g o s Bo w a a d r e s u b a z o w e g o
P o s t a n o w i o n o g r u p o w a d d e s k r y p t o r y w t a b l i c e t z n . k o l e j n o n a s t p u j c e p o s o b i e d e s k r y p t o r y , n p :
d e s c _ n u l l d b 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0
d e s c _ c o d e 3 2 d b 0 F F h , 0 F F h , 0 h , 0 h , 0 h , 0 F A h , 0 C F h , 0 h
d e s c _ d a t a 3 2 d b 0 F F h , 0 F F h , 0 h , 0 h , 0 h , 0 F 2 h , 0 C F h , 0 h
W y r ó |n i a m y 3 t y p y t a b l i c : G D T ( G l o b a l n a T a b l i c a D e s k r y p t o r ó w ) , L D T ( L o k a l n a T a b l i c a
D e s k r y p t o r ó w ; u |y w a n a p r z e z p o j e d y n c z y p r o c e s w s y s t e m i e ) o r a z I D T ( T a b l i c a D e s k r y p t o r ó w
P r z e r w a o ) . P r o c e s o r m u s i w i e d z i e d , g d z i e t a k i e t a b l i c e s i z n a j d u j i d l a t e g o d y s p o n u j e s p e c j a l n y m i
r e j e s t r a m i , k t ó r e z a w i e r a j 3 2 - b i t o w y f i z y c z n y a d r e s d a n e j t a b l i c y o r a z j e j d Bu g o [d . S 3 r e j e s t r y :
G D T R ( p r z e c h o w u j e a d r e s i d Bu g o [d G D T ) o r a z , a n a l o g i c z n i e , L D T R i I D T R . K a |d y z t y c h r e j e s t r ó w j e s t
4 8 - b i t o w y .
W R M p o j a w i e n i e s i p r z e r w a n i a ( w y w o Ba n e g o p r z e z i n s t r u k c j e I N T l u b u r z d z e n i e
z e w n t r z n e t y p u k l a w i a t u r a ) p o w o d o w a Bo , z e p r o c e s o r , p o o d Bo |e n i u n a s t o s r e j e s t r u f l a g o r a z C S i I P ,
s k a k a B p o d a d r e s o k r e [l o n y w t a b l i c y w e k t o r ó w p r z e r w a o . T a b l i c a t a z n a j d u j e s i z a w s z e n a p o c z t k u
p a m i c i p o d a d r e s e m 0 0 0 0 : 0 0 0 0 i m a d Bu g o [d 1 k B ( 2 5 6 p r z e r w a o * 4 c z y l i r o z m i a r w e k t o r a C S : I P ) . W
p m o d e , t a t a b l i c a j e s t j u | b e z u |y t e c z n a . R e j e s t r I D T R , p o d o b n i e j a k o m a w i a n y G D T R , z a w i e r a a d r e s
f i z y c z n y i d Bu g o [d n o w e j t a b l i c y . J e s t t o t z w . I n t e r r u p t D e s c r i p t o r T a b l e c z y l i T a b l i c a D e s k r y p t o r ó w
P r z e r w a o . W p r z e c i w i e o s t w i e d o R M , t a b l i c a t a m o |e z n a j d o w a d s i w d o w o l n y m m i e j s c u w p a m i c i .
M a k s y m a l n i e z a w i e r a 2 5 6 d e s k r y p t o r y . G d y w P M m a m i e j s c e p r z e r w a n i e , p r o c e s o r o d s z u k u j e d a n y
d e s k r y p t o r m n o |c n u m e r p r z e r w a n i a p r z e z 8 i d o d a j c a d r e s t a b l i c y z a w a r t y w I D T R .
R e j e s t r C R 0 o d p o w i a d a z a s t e r o w a n i e p r a c p r o c e s o r a .
B u d o w a r e j e s t r u C R 0 d l a p r o c e s o r a z g o d n e g o z i 3 8 6 ,
g d z i e :
P G ( a n g . P a g i n g E n a b l e ) - b i t s t r o n i c o w a n i a
E T ( a n g . P r o c e s o r E x t e n s i o n T y p e ) - b i t t y p u k o p r o c e s o r a ,
T S ( a n g . T a s k S w i t c h e d ) - b i t p r z e Bc z a n i a z a d a n i a ,
E M ( a n g . E m u l a t e C o p r o c e s s o r ) - b i t t r y b u e m u l a c j i k o p r o c e s o r a ,
M P ( a n g . M o n i t o r C o p r o c e s s o r ) - b i t m o n i t o r o w a n i a k o p r o c e s o r a ,
P E ( a n g . P r o t e c t e d M o d e E n a b l e ) - b i t t r y b u c h r o n i o n e g o
A b y p r o c e s o r p r a c o w a B w p r o t e c t e d m o d e z e r o w y b i t z r e j e s t r u C R 0 m u s i b y d u s t a w i o n y n a 1 .
M o |n a t e g o d o k o n a d p r o s t y m k o d e m :
m o v e a x , c r 0
o r e a x , 1
m o v c r 0 , e a x
K o d p r o g r a m u p r z e Bc z a j c e g o z a d a n i a w t r y b a c h R e a l M o d e i P r o t e c t e d M o d e
C o m m e n t |
P r o g r a m p r z e l a c z a j a c y w t r y b a c h r e a l i p r o t e c t e d m o d e
|
. 3 8 6 p
C R E Q U 0 D H
L F E Q U 0 A H
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; g l o b a l n a t a b l i c a d e s k r y p t o r o w
s e g m e n t _ G D T S E G M E N T u s e 1 6
d q 0 ; p o z . 0 - d e s k r y p t o r z e r o w y ( n i e u z y w a n y )
d q 0 ; p o z . 1 - s e l e k t o r 0 0 0 8 H
d q 0 ; p o z . 2 - s e l e k t o r 0 0 1 0 H - s e g m e n t ' n o w e _ d a n e '
d q 0 ; p o z . 3 - s e l e k t o r 0 0 1 8 H
d q 0 ; p o z . 4 - s e l e k t o r 0 0 2 0 H
d q 0 ; p o z . 5 - s e l e k t o r 0 0 2 8 H
d q 0 ; p o z . 6 - s e l e k t o r 0 0 3 0 H
d q 0 ; p o z . 7 - s e l e k t o r 0 0 3 8 H
d q 0 ; p o z . 8 - s e l e k t o r 0 0 4 0 H
d q 0 ; p o z . 9 - s e l e k t o r 0 0 4 8 H
d q 0 ; p o z . 1 0 - s e l e k t o r 0 0 5 0 H
d q 0 ; p o z . 1 1 - s e l e k t o r 0 0 5 0 H
d q 0 ; p o z . 1 2 - s e l e k t o r 0 0 5 0 H
d q 0 ; p o z . 1 3 - s e l e k t o r 0 0 5 0 H
d q 0 ; p o z . 1 3 - s e l e k t o r 0 0 5 0 H
s e g m e n t _ G D T _ e n d L A B E L b y t e
s e g m e n t _ G D T E N D S
K o m e n t a r z [ M 1 ] : D e f i n i c j a g l o b a l n e j
t a b l i c y d e s k r y p t o r ó w . K a |d y s e g m e n t ( k o d ,
d a n e , s t o s ) o p i s y w a n y j e s t p r z e z t z w .
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
d e s k r y p t o r . Z a d a n i e m d e s k r y p t o r a j e s t
o k r e [l e n i e B A Z Y S E G M E N T U ( j e g o
f i z y c z n e g o a d r e s u w p a m i c i , n p . d l a
; t a b l i c a d e s k r y p t o r o w p r z e r w a n
b u f o r a V G A a d r e s b a z o w y w y n o s i
0 A 0 0 0 0 h ) , L I M I T U ( r o z m i a r u s e g m e n t u -
m o |e w y n o s i d o d 1 B d o 4 G B ) o r a z j e g o
s e g m e n t _ I D T S E G M E N T u s e 1 6
T Y P U / F L A G ( c z y s e g m e n t z a w i e r a d a n e ,
; T a b l i c a z a w i e r a f u r t k i p r o w a d z a c e d o p r o c e d u r o b s l u g i p r z e r w a ¤
k o d , e t c . )
; i w y j a t k o w o n u m e r a c h 0 - 1 2 7 . P o l a ' o f f s e t ' w k o l e j n y c h f u r t k a c h
; z a w i e r a c b e d a l i c z b y 0 , 7 , 1 4 , 2 1 , i t d .
x p o m = 0
R E P T 1 2 8
d w x p o m ; o f f s e t
d w 6 S H L 3 ; s e l e k t o r
d b 0 ; l i c z n i k
d b 1 0 0 0 0 1 1 0 B ; b a j t d o s t e p u
d w 0 ; r e z e r w a
x p o m = x p o m + 7
E N D M
s e g m e n t _ I D T _ e n d L A B E L b y t e
s e g m e n t _ I D T E N D S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; s e g m e n t d a n y c h d l a t r y b u c h r o n i o n e g o - s e g m e n t t e n w s k a z y w a n y j e s t p r z e z
; s e l e k t o r 2 * 8 = 0 0 1 0 H
n o w e _ d a n e S E G M E N T u s e 1 6
k o m 4 d b ' P r o c e s o r p r a c u j e w t r y b i e c h r o n i o n y m '
d b ' - w c i s n i e c i e c z e g o s s p o w o d u j e w y j s c i e '
d b ' - n a c i s n i e c i e E S C s p o w o d u j e z a k o n c z e n i a p r o g r a m u ' , 0
k o m 5 d b ' N i e r o z p o z n a n e p o l e c e n i e ' , 0
t x t _ c z a s d b ' c z a s ' , 1 3 , 0
b u f o r _ k l a w d b 1 2 8 d u p ( ? ) ; b u f o r k l a w i a t u r y
i n d e k s _ k l a w d w 0
i n d e k s _ z e g d w 0
e k r a n _ x d b 0 ; w s k a z n i k n r k o l u m n y d o z a p i s u n a e k r a n i e
e k r a n _ y d b 0 ; w s k a z n i k n r w i e r s z a d o z a p i s u n a e k r a n i e
; t a b l i c a d o p r z e k o d o w a n i a k o d o w p o z y c j i n a k o d y A S C I I
p o z y c j a d w 1 6 0 * 1 2 + 8 0
x d w 1
y d w 1
t a b l _ p r z e k A d b 0 , 1 B H , ' 1 2 3 4 5 6 7 8 9 0 - = ' , 0 8 H , 0 9 H ; k o d y 0 - 1 5
d b ' q w e r t y u i o p [ ] ' , 0 D H , 0 , ' a s ' ; k o d y 1 6 - 3 1
d b ' d f g h j k l ; ' ' ` ' , 0 , ' \ z x c v ' ; k o d y 3 2 - 4 7
d b ' b n m , . / ' , 0 , ' * ' , 0 , ' ' , 0 ; k o d y 4 8 - . . .
n o w e _ d a n e _ e n d L A B E L b y t e
n o w e _ d a n e E N D S
K o m e n t a r z [ M 2 ] : D e f i n i c j a p o t r z e b n y c h
d a n y c h d o d z i a Ba n i a p r o g r a m u w t r y b i e
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
c h r o n i o n y m
n o w y _ s t o s S E G M E N T u s e 1 6 ; s t o s d l a t r y b u c h r o n i o n e g o
p s t o s d w 2 0 4 8 d u p ( ? )
n o w y _ s t o s _ e n d L A B E L b y t e
n o w y _ s t o s E N D S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
s t o s _ R M S E G M E N T u s e 1 6 s t a c k ; s t o s d l a t r y b u r z e c z y w i s t e g o
d w 2 5 6 d u p ( ? )
s t o s _ R M E N D S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
e k r a n S E G M E N T u s e 1 6 a t 0 B 8 0 0 H ; s e g m e n t i m i t u j a c y p a m i e c e k r a n u
d b 4 0 0 0 d u p ( ? )
e k r a n _ e n d L A B E L b y t e
e k r a n E N D S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
r o z k a z y S E G M E N T u s e 1 6 ; r o z k a z y p r o g r a m u
; o b s z a r y 4 8 - b i t o w e p o t r z e b n e d o l a d o w a n i a r e j e s t r o w G D T R o r a z I D T R
z a w _ G D T R d p 0
z a w _ I D T R d p 0
r m _ i d t L A B E L q w o r d ; w s k a z n i k d o t a b l . w e k t . p r z e r w a n ( t r y b r z e c z . )
d w 0 3 F F H ; w i e l k o s c t a b l i c y I D T
d d 0
c z y _ k o n i e c d b 0
k o m u n i k a t 1 d b ' W c i s n i j c o s a b y p r z e l a c z y c w P r o t e c t e d M o d e ' , C R , L F , ' $ '
k o m u n i k a t 2 d b ' R e a l M o d e ' , C R , L F , ' $ '
k o m u n i k a t 3 d b ' Z a k o n c z o n o p r o g r a m ' , C R , L F , ' $ '
z a d a n i a d w z y 1 , z y 2 , z y 3
K o m e n t a r z [ M 3 ] : Z b i ó r e t y k i e t z a d a o
d o w y k o n a n i a d l a t r y b u R e a l M o d e
k o m u n i k a t 1 z d b ' Z a d a n i e 1 w R e a l M o d e ' , C R , L F , ' $ '
k o m u n i k a t 2 z d b ' Z a d a n i e 2 w R e a l M o d e ' , C R , L F , ' $ '
k o m u n i k a t 3 z d b ' Z a d a n i e 3 w R e a l M o d e ' , C R , L F , ' $ '
K o m e n t a r z [ M 4 ] : K o m u n i k a t y
w y [w i e t l a n e p o d c z a s p r z e Bc z a n i a m i d z y
t r y b a m i R e a l i P r o t e c t e d M o d e
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; k o d w y k o n y w a n y p o n o w n i e w t r y b i e r z e c z y w i s t y m b e z p o s r e d n i o p r z e d
; z a k o n c z e n i e m w y k o n y w a n i a p r o g r a m u
A S S U M E c s : r o z k a z y
p t t 3 :
l i d t c s : r m _ i d t ; p o d a n i e a d r e s u t a b l . w e k t o r o w p r z e r w a n
; d l a t r y b u r z e c z y w i s t e g o
m o v a x , S E G s t o s _ R M ; t w o r z e n i e s t o s u d l a t r y b u r z e c z .
m o v s s , a x
m o v s p , 8 0 H
s t i
c a l l c z y s c _ e k r a n
p u s h c s
p o p d s
m o v d x , O F F S E T k o m u n i k a t 2
m o v a h , 0 9 H
i n t 2 1 H ; w y s w i e t l e n i e k o m u n i k a t u
m o v a l , b y t e p t r [ c z y _ k o n i e c ]
c m p a l , 0
j e p o c z ;
p e l n y _ k o n i e c :
m o v d x , O F F S E T k o m u n i k a t 3
m o v a h , 0 9 H
i n t 2 1 H
m o v a x , 4 C 0 0 H ; z a k o n c z e n i e w y k o n y w a n i a p r o g r a m u
i n t 2 1 H
K o m e n t a r z [ M 5 ] : K o o c z y d z i a Ba n i e
p r o g r a m u
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; k o d w y k o n y w a n y w t r y b i e r z e c z y w i s t y m b e z p o s r e d n i o p o u r u c h o m i e n i u p r o g r a m u
p o c z : n o p
m o v a l , 3 4 h
o u t 4 3 h , a l
m o v a l , 0 f f h
o u t 4 0 h , a l
m o v a l , 0 f f h
o u t 4 0 h , a l
; W y s w i e t l a n i e k o m u n i k a t o w o p r z e z n a c z e n i u p r o g r a m u i o c z e k i w a n i e
; n a p o t w i e r d z e n i e d a l s z e g o w y k o n y w a n i a p r o g r a m u
c a l l c z y s c _ e k r a n
j m p c d _ p r z y g
; c z y s z c z e n i e e k r a n u - p r z e w i n i e c i e o k n a o z e r o w i e r s z y
c z y s c _ e k r a n P R O C n e a r
m o v a h , 0 6 ; p r z e w i n i e c i e o k n a
m o v a l , 0 ; z e r o w i e r s z y
m o v b h , 0 7 ; a t r y b u t
m o v c h , 0 ; w s p o l r z e d n e o k n a
m o v c l , 0 ; l e w y g o r n y r o g
m o v d h , 2 4 ; p r a w y d o l n y r o g
m o v d l , 7 9
i n t 1 0 H
m o v a h , 2 ; u s t a w i e n i e k u r s o r a w g o r n y m l e w y m r o g u e k r a n u
m o v d l , 0
m o v d h , 0
m o v b h , 0
i n t 1 0 H
r e t
c z y s c _ e k r a n E N D P
z y 1 :
m o v d x , O F F S E T k o m u n i k a t 1 z
m o v a h , 0 9 H
i n t 2 1 H
r e t
z y 2 :
m o v d x , O F F S E T k o m u n i k a t 2 z
m o v a h , 0 9 H
i n t 2 1 H
r e t
z y 3 :
m o v d x , O F F S E T k o m u n i k a t 3 z
m o v a h , 0 9 H
i n t 2 1 H
r e t
K o m e n t a r z [ M 6 ] : D e f i n i c j e z a d a o w
t r y b i e r z e c z y w i s t y m
c d _ p r z y g :
p u s h c s
p o p d s
d a l e j _ R M :
c a l l [ z a d a n i a ]
c a l l [ z a d a n i a + 2 ]
c a l l [ z a d a n i a + 4 ]
K o m e n t a r z [ M 7 ] : W y w o Ba n i a p r o c e d u r
z a d a o
m o v d x , O F F S E T k o m u n i k a t 1
m o v a h , 0 9 H
i n t 2 1 H ; w y s w i e t l e n i e k o m u n i k a t u
m o v a h , 0 7 H ; o c z e k i w a n i e n a n a c i s n i e c i e k l a w i s z a
i n t 2 1 H
c m p a l , 2 7
j e p e l n y _ k o n i e c ; n a c i s n i e t o E s c
c a l l c z y s c _ e k r a n ;
K o m e n t a r z [ M 8 ] : W y [w i e t l a k o m u n i k a t
o m o |l i w o [c i p r z e j [c i a w t r y b P r o t e c t e d
M o d e l u b w y j [c i a z p r o g r a m u . O c z e k u j e n a
; t w o r z e n i e d e s k r y p t o r ó w w g l o b a l n e j t a b l i c y d e s k r y p t o r ó w ( n a r a z i e w s z y s t k i e
w c i [n i c i e k l a w i s z a , j e |e l i w c i [n i t o E S C
; p o l a w d e s k r y p t o r a c h z a w i e r a j ? z e r a )
w y c h o d z i z p r o g r a m u , w p r z e c i w n y m
; w e w s z y s t k i c h d e s k r y p t o r a c h b a j t 6 ( b i t y G , D , 0 , A V L , r o z m i a r 1 9 - 1 6 )
p r z y p a d k u p r z e c h o d z i w t r y b P r o t e c t e d
; p o z o s t a w i a n y j e s t b e z z m i a n ( z a w i e r a z e r o )
K o m e n t a r z [ M 9 ] : R o z p o c z c i e
; A S S U M E d s : s e g m e n t _ G D T
u z u p e Bn i a n i a g l o b a l n e j t a b l i c y
m o v a x , S E G s e g m e n t _ G D T
d e s k r y p t o r ó w t w o r z o n y m i d e s k r y p t o r a m i
m o v d s , a x ; l a d o w a n i e r e j e s t r u D S
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 2 w G D T - d e s k r y p t o r t e n o p i s u j e
; s e g m e n t ' n o w e _ d a n e '
m o v b x , 2 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T n o w e _ d a n e _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G n o w e _ d a n e
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 0 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 3 w G D T - d e s k r y p t o r t e n o p i s u j e
; s e g m e n t ' e k r a n '
m o v b x , 3 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T e k r a n _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G e k r a n
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 0 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 6 w G D T - d e s k r y p t o r t e n o p i s u j e
; s e g m e n t ' o b s l _ i n t '
m o v b x , 6 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T o b s l _ i n t _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G o b s l _ i n t
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 7 w G D T
m o v b x , 7 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T n o w y _ s t o s _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G n o w y _ s t o s
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 0 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 8 w G D T
m o v b x , 8 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T r o z k a z y _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G r o z k a z y
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 9 w G D T - d e s k r y p t o r u z y w a n y j a k o
; a t r a p a p r z y p r z e j s c i u z t r y b u c h r o n i o n e g o d o r z e c z y w i s t e g o ( w t y m
; p r z y p a d k u a d r e s b a z o w y w d e s k r y p t o r z e n i e m a z a d n e g o z n a c z e n i a )
m o v b x , 9 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , 0 F F F F H ; w y m a g a n y r o z m i a r s e g m e n t u
; b a j t d o s t e p u m u s i o p i s y w a c s e g m e n t d a n y c h ( f i k c y j n y ) , w k t o r y m :
; P = 1 , E D = 0 , W = 1
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 0 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 1 0 w G D T - d e s k r y p t o r t e n o p i s u j e
; s e g m e n t k o d u ' r o z _ z a k ' , k t o r y j e s t w y k o n y w a n y b e z p o s r e d n i o p r z e d
; p r z e j s c i e m d o t r y b u r z e c z y w i s t e g o ( p o l e " w i e l k o s c " = F F F F H )
m o v b x , 1 0 * 8 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , 0 F F F F H ; r o z m i a r s e g m e n t u
m o v a x , S E G r o z _ z a k
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 1 1 w G D T
m o v b x , 8 * 1 1 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T z a d 1 _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G z a d 1
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 1 1 w G D T
m o v b x , 8 * 1 2 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T z a d 2 _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G z a d 2
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 1 1 w G D T
m o v b x , 8 * 1 3 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T z a d 3 _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G z a d 3
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; t w o r z e n i e d e s k r y p t o r a n a p o z y c j i 1 1 w G D T
m o v b x , 8 * 1 4 ; o f f s e t w s e g m e n c i e s e g m e n t _ G D T
m o v w o r d P T R d s : [ b x ] , O F F S E T s h e d _ e n d - 1 ; r o z m i a r s e g m e n t u
m o v a x , S E G s h e d
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d s : [ b x ] + 2 , a x ; a d r e s b a z o w y 1 5 - 0
r o l e a x , 1 6 ; z a m i a n a p o l o w e k E A X
m o v d s : [ b x ] + 4 , a l ; a d r e s b a z o w y 2 3 - 1 6
m o v d s : [ b x ] + 7 , a h ; a d r e s b a z o w y 3 1 - 2 4
m o v b y t e P T R d s : [ b x ] + 5 , 1 0 0 1 1 0 1 0 B ; b a j t d o s t e p u
; p r z y g o t o w a n i e d o w y k o n a n i a r o z k a z u L G D T ( l a d o w a n i e r e j e s t r u G D T R )
K o m e n t a r z [ M 1 0 ] : P r o c e s o r m u s i
w i e d z i e d , g d z i e t a k i e t a b l i c e s i z n a j d u j i
m o v a x , O F F S E T s e g m e n t _ G D T _ e n d ; r o z m i a r t a b l i c y G D T
d l a t e g o d y s p o n u j e s p e c j a l n y m i r e j e s t r a m i ,
m o v w o r d P T R c s : z a w _ G D T R + 0 , a x
k t ó r e z a w i e r a j 3 2 - b i t o w y f i z y c z n y a d r e s
m o v a x , S E G s e g m e n t _ G D T ; a d r e s ( s e g m e n t o w y ) g l o b a l n e j
d a n e j t a b l i c y o r a z j e j d Bu g o [d . S 3 r e j e s t r y :
; t a b l i c y d e s k r y p t o r o w
G D T R ( p r z e c h o w u j e a d r e s i d Bu g o [d G D T )
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
o r a z , a n a l o g i c z n i e , L D T R i I D T R . K a |d y z
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u t y c h r e j e s t r ó w j e s t 4 8 - b i t o w y .
m o v d w o r d P T R c s : z a w _ G D T R + 2 , e a x
; p r z y g o t o w a n i e d o w y k o n a n i a r o z k a z u L I D T ( l a d o w a n i e r e j e s t r u I D T R )
m o v a x , O F F S E T s e g m e n t _ I D T _ e n d ; r o z m i a r t a b l i c y G D T
m o v w o r d P T R c s : z a w _ I D T R + 0 , a x
m o v a x , S E G s e g m e n t _ I D T ; a d r e s ( s e g m e n t o w y ) t a b l i c y
; d e s k r y p t o r o w p r z e r w a n
m o v z x e a x , a x ; z e r o w a n i e s t a r s z e j c z e s c i E A X
s h l e a x , 4 ; w E A X a d r e s b a z o w y s e g m e n t u
m o v d w o r d P T R c s : z a w _ I D T R + 2 , e a x
K o m e n t a r z [ M 1 2 ] : U s t a w i e n i e
w s k a z a n i a n a s e g m e n t o b s Bu g i p r z e r w a o
c l i ; z a b l o k o w a n i e p r z y j m o w a n i a p r z e r w a n
l g d t c s : z a w _ G D T R ; l a d o w a n i e r e j e s t r u G D T R
l i d t c s : z a w _ I D T R ; l a d o w a n i e r e j e s t r u I D T R
K o m e n t a r z [ M 1 3 ] : Aa d o w a n i e o b u
w s k a z a o d o o d p o w i e d n i c h r e j e s t r ó w
; p r z e l a c z e n i e d o t r y b u c h r o n i o n e g o
m o v e a x , C R 0
o r e a x , 1
m o v C R 0 , e a x
K o m e n t a r z [ M 1 4 ] : U r u c h o m i e n i e t r y b u
c h r o n i o n e g o . A b y u r u c h o m i d t e n t r y b ,
j m p n e x t ; o c z y s z c z e n i e k o l e j k i r o z k a z o w
z e r o w y b i t r e j e s t r u C R 0 ( s t a n u p r o c e s o r a )
; o c z e k u j a c y c h n a w y k o n a n i e
m u s i b y d u s t a w i o n y n a 1
n e x t : n o p
; S k o k d a l e k i d o n a s t e p n e j i n s t r u k c j i - i n s t r u k c j a t a p o w o d u j e z a p i s a n i e K o m e n t a r z [ M 1 5 ] : C z y s z c z e n i e k o l e j k i
r o z k a z ó w
; t a k z e r e j e s t r u C S w t a k i s p o s o b , z e s e l e k t o r 0 0 4 0 H ( c z y l i 8 * 8 )
; w p i s a n y d o C S w s k a z u j e n a d e s k r y p t o r w t a b l i c y G D T , o p i s u j a c y
; n i n i e j s z y s e g m e n t . Z a t e m b e d z i e d a l e j w y k o n y w a n y k o d z t e g o s a m e g o
; s e g m e n t u , a l e r e j e s t r C S z a w i e r a t e r a z s e l e k t o r , a n i e a d r e s s e g m e n t u .
; R o z k a z s k o k u d a l e k i e g o j e s t k o d o w a n y b a j t o w o p o n i e w a z
; w a s e m b l e r z e b r a k p o t r z e b n e g o t r y b u a d r e s o w a n i a ' j m p f a r P T R c a 1 '
D B 0 E A H
D W t r y b _ P M
d w 8 * 8 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
; s e g m e n t u ' r o z k a z y '
K o m e n t a r z [ M 1 6 ] : K o d w H e x a s k o k u
d a l e k i e g o , s k o k ( J u m p F a r ) o r a z s e l e k t o r ,
t r y b _ P M : n o p
k t ó r y t r a f i a d o r e j e s t r C S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; p r z e p r o g r a m o w a n i e u k l a d u 8 2 5 9 , t a k b y p r z e r w a n i e z z e g a r a ( n r 8 w t r y b i e
; r z e c z y w i s t y m ) b y l o z w i a z a n e z n r 3 2 , p r z e r w a n i e z k l a w i a t u r y ( n r 9 )
; - z n r 3 3 , i t d .
c a l l p r z e s t a w _ 8 2 5 9
K o m e n t a r z [ M 1 7 ] : W y w o Ba n i e
p r o c e d u r y , k t ó r a m a s k u j e o r y g i n a l n e
; i n i c j a l i z a c j a s t o s u - s e g m e n t s t o s u d l a t r y b u c h r o n i o n e g o
p r z e r w a n i a k l a w i a t u r y i u s t a w i a j e n a
; o p i s a n y j e s t p r z e z d e s k r y p t o r 7
w y b r a n y p r z e z n a s n u m e r , w t y m
m o v a x , 7 * 8
p r z y p a d k u p r z e r w a n i e k l a w i a t u r y
m o v s s , a x
p r z e s t a w i a n e j e s t z 9 n a 3 3
m o v s p , 1 0 0 0
; i n i c j a l i z a c j a r e j e s t r o w D S , E S , F S , G S - w p i s a n i e s e l e k t o r a w s k a z u j a c e g o n a
; s e g m e n t ' n o w e _ d a n e '
m o v a x , 2 * 8
m o v d s , a x
m o v e s , a x
m o v f s , a x
m o v g s , a x
; c a l l z e r u j _ b u f o r _ k l a w ; z e r o w a n i e b u f o r a k l a w i a t u r y
s t i ; w l a c z e n i e p r z y j m o w a n i a p r z e r w a n
; w y s w i e t l e n i e k o m u n i k a t u " P r o c e s o r p r a c u j e w t r y b i e c h r o n i o n y m "
m o v b x , O F F S E T k o m 4
c a l l w y s w i e t l
K o m e n t a r z [ M 1 8 ] : I n s t r u k c j a m o v
u s t a w i a a d r e s k o m u n i k a t u d o
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
w y [w i e t l e n i a , a p r o c e d u r a w y [w i e t l
; G l o w n a p e t l a p r z y j m o w a n i a z l e c e n o d u z y t k o w n i k a w t r y b i e c h r o n i o n y m
r e a l i z u j e w y [w i e t l e n i e
; s p r a w d z , c z y w b u f o r z e k l a w i a t u r y j e s t k o d E n t e r ( 0 D H ) l u b E s c ( 1 B H )
c z y t a j _ o d _ n o w a :
m o v a x , 2 * 8
m o v d s , a x
; m o v d x , 0 ; u z y w a n y d o s t e r o w a n i a w y s w i e t l a n i e m
D B 0 E A H
D W s t r 1
d w 8 * 1 4
K o m e n t a r z [ M 1 9 ] : S k o k d a l e k i d o
w y k o n y w a n i a z a d a o
d b 0
k l a w 1 4 : m o v c x , d s : i n d e k s _ k l a w
j c x z k l a w 1 4 ; s k o k , g d y p u s t y b u f o r
m o v d s : i n d e k s _ k l a w , 0
c m p c x , 0 0 1 B h
j n e k l a w 1 4 b ;
p u s h d s
m o v a x , 8 * 8
m o v d s , a x
m o v a l , 1
m o v b y t e p t r [ c z y _ k o n i e c ] , a l
p o p d s
K o m e n t a r z [ M 2 0 ] : S p r a w d z a n i e c z y n i e
z o s t a B w c i [n i t y k l a w i s z E S C p r z y p r ó b i e
p r z e Bc z e n i a z t r y b u P r o t e c t e d M o d e d o
k l a w 1 4 b :
R e a l , j e [l i t a k f a k t t e n z a p i s y w a n y j e s t w
z m i e n n e j c z y _ k o n i e c
; p r z y g o t o w a n i e d o p o w r o t u d o t r y b u r z e c z y w i s t e g o - s k o k d a l e k i
; d o s e g m e n t u k o d u ( k o d o w a n y b a j t o w o , p o n i e w a z
; w a s e m b l e r z e b r a k p o t r z e b n e g o t r y b u a d r e s o w a n i a ' j m p f a r P T R p r z e l a c z _ d o _ R M '
D B 0 E A H
D W p r z e l a c z _ d o _ R M
d w 1 0 * 8 ; n r p o z y c j i d e s k r y p t o r a w s k a z u j a c e g o
; s e g m e n t r o z k a z o w y
K o m e n t a r z [ M 2 1 ] : S k o k d a l e k i d o
p r o c e d u r y p r z e Bc z a j c e j w t r y b R e a l M o d e
; p r z e p r o g r a m o w a n i e u k l a d u 8 2 5 9 , t a k b y p r z e r w a n i e z z e g a r a ( n r 8 w t r y b i e
; r z e c z y w i s t y m ) b y l o z w i a z a n e z n r 3 2 , p r z e r w a n i e z k l a w i a t u r y ( n r 9 )
; - z n r 3 3 , i t d .
p r z e s t a w _ 8 2 5 9 P R O C
m o v a l , 1 1 H
o u t 2 0 H , a l ; l a d o w a n i e I C W 1 ( d 4 = 1 - z n a c z n i k
; w s k a z u j a c y , z e p r o g r a m u j e m y I C W 1
; b i t d 0 = 1 - z n a c z n i k , z e w y s t a p i I C W 4
m o v a l , 3 2
o u t 2 1 H , a l ; u s t a w i e n i e b a z o w e g o w e k t o r a p r z e r w a n
; ( u s t a w i e n i e I C W 2 )
m o v a l , 4
o u t 2 1 H , a l ; I C W 3 - d 2 = 1 - t r y b n i e b u f o r o w a n y , 8 2 5 9 m a s t e r
m o v a l , 1
o u t 2 1 H , a l ; I C W 4 - d 0 = 1 - p o t w i e r d z e n i e I C W 2 j a k o w e k t o r a
; p r z e r w a n
r e t
p r z e s t a w _ 8 2 5 9 E N D P
K o m e n t a r z [ M 2 2 ] : P o d m i a n a
n u m e r ó w p r z e r w a o d l a z e g a r a i k l a w i a t u r y
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
; w y s w i e t l a n i e t e k s t u n a e k r a n i e - t e k s t z a w a r t y j e s t w s e g m e n c i e d a n y c h
; d l a t r y b u c h r o n i o n e g o ( s e l e k t o r 0 0 1 0 H ) , a o f f s e t p o d a n y j e s t w B X
; t e k s t w y s w i e t l a n y j e s t w w i e r s z u w s k a z a n y m p r z e z z m i e n n a e k r a n _ y
; e k r a n _ x d b 0 ; w s k a z n i k n r k o l u m n y d o z a p i s u n a e k r a n i e
; e k r a n _ y d b 0 ; w s k a z n i k n r w i e r s z a d o z a p i s u n a e k r a n i e
w y s w i e t l P R O C
K o m e n t a r z [ M 2 3 ] : R o z p o c z c i e
p r o c e d u r y w y [w i e t l a n i a n a e k r a n
; s e l e k t o r 0 0 1 0 H ( 2 * 8 ) w s k a z u j e d e s k r y p t o r s e g m e n t u d a n y c h d l a t r y b u
o k r e [l o n e g o k o m u n i k a t u , d o B X n a l e |y
; c h r o n i o n e g o ( ' n o w e _ d a n e ' )
p o d a d o f f s e t d a n e g o k o m u n i k a t u p r z e d
p u s h d s
w y w o Ba n i e m p r o c e d u r y
p u s h e s
m o v a x , 2 * 8
m o v d s , a x
m o v a x , 3 * 8 ; s e l e k t o r p a m i e c i e k r a n u
m o v e s , a x
m o v a l , 1 6 0
m u l b y t e P T R d s : e k r a n _ y ; w A X a d r e s e k r a n u d o z a p i s u
m o v d i , a x
m o v a h , 7 ; a t r y b u t w y s w i e t l a n i a
p t l _ k o m : m o v a l , d s : [ b x ] ; p o b r a n i e k o l e j n e g o z n a k u k o m u n i k a t u
o r a l , a l
j z k o n i e c _ w y s w ; b a j t z e r o w y w s k a z u j e k o n i e c t e k s t u
m o v e s : [ d i ] , a x ; p r z e s l a n i e z n a k u d o p a m i e c i e k r a n u
i n c b x ; i n k r e m e n t a c j a B X
i n c d i ; i n k r e m e n t a c j a D I
i n c d i ; i n k r e m e n t a c j a D I
j m p p t l _ k o m
k o n i e c _ w y s w :
m o v a l , d s : e k r a n _ y
i n c a l
c m p a l , 2 3
j a e p r z e s u n _ e k r a n
m o v d s : e k r a n _ y , a l
z a k _ w y s w :
p o p e s
p o p d s
r e t
; p r z e s u w a n i e c a l e g o e k r a n u o j e d e n w i e r s z w g o r e
p r z e s u n _ e k r a n :
d e c a l
m o v d s : e k r a n _ y , a l
m o v a x , 3 * 8 ; s e l e k t o r p a m i e c i e k r a n u
m o v d s , a x
m o v e s , a x
m o v c x , 2 0 0 0 - 2 4 0
m o v s i , 1 6 0
m o v d i , 0
c l d
r e p m o v s w
j m p z a k _ w y s w
w y s w i e t l E N D P
r o z k a z y _ e n d L A B E L n e a r
r o z k a z y E N D S
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
r o z _ z a k S E G M E N T u s e 1 6
K o m e n t a r z [ M 2 4 ] : R o z k a z y z a w a r t e
w t y m s e g m e n c i e w y k o n y w a n e s
b e z p o [r e d n i o p r z e d p r z e j [c i e m z t r y b u
A S S U M E c s : r o z _ z a k
c h r o n i o n e g o d o t r y b u r z e c z y w i s t e g o
p r z e l a c z _ d o _ R M : n o p
K o m e n t a r z [ M 2 5 ] : R o z p o c z c i e
p r z e j [c i a z t r y b u c h r o n i o n e g o d o t r y b u
r z e c z y w i s t e g o . R o z k a z N O P p o z w a l a
w y c z y [c i d k o l e j k r o z k a z ó w .
; p r z y w r a c e n i e t r a d y c y j n y c h n u m e r o w p r z e r w a n
c l i ; w y l a c z e n i e p r z y j m o w a n i a p r z e r w a n
m o v a l , 1 1 H
o u t 2 0 H , a l
m o v a l , 8
o u t 2 1 H , a l
m o v a l , 4
o u t 2 1 H , a l
m o v a l , 1
o u t 2 1 H , a l ; l a d o w a n i e I C W 4
m o v a l , 0 B C H
o u t 2 1 H , a l
K o m e n t a r z [ M 2 6 ] : P r z y w r a c a n i e
t r a d y c y j n y c h n u m e r ó w p r z e r w a o
; p r z e d p r z e j s c i e m d o t r y b u r z e c z y w i s t e g o r e j e s t r y s e g m e n t o w e p o w i n n y
; z a w i e r a c s e l e k t o r y w s k a z u j a c e f i k c y j n y s e g m e n t d a n y c h ( z o b . o p i s
; d e s k r y p t o r a 1 0 )
m o v a x , 9 * 8 ; d e s k r y p t o r n a p o z y c j i n r 9 w s k a z u j e
; f i k c y j n y s e g m e n t d a n y c h
m o v d s , a x
m o v e s , a x
m o v s s , a x
m o v f s , a x
m o v g s , a x
; z e r o w a n i e b i t u P G w C R 0
m o v e a x , C R 0
a n d e a x , 7 F F F F F F F H
m o v C R 0 , e a x
; z e r o w a n i e r e j e s t r u C R 3
m o v e a x , 0
m o v C R 3 , e a x
; z e r o w a n i e b i t u P E w r e j e s t r z e C R 0 ( w l a c z e n i e t r y b u r z e c z y w i s t e g o )
m o v e a x , C R 0
a n d e a x , 0 F F F F F F F E H
K o m e n t a r z [ M 2 7 ] : U s t a w i e n i e
p i e r w s z e g o b i t u r e j e s t r u C R 0 n a 0 , c o
p o w o d u j e p r z e j [c i e w t r y b r z e c z y w i s t y
m o v C R 0 , e a x
K o m e n t a r z [ M 2 8 ] : U s t a w i a n i e
o d p o w i e d n i c h b i t ó w r e j e s t r ó w
p o t r z e b n y c h d o p r z e j [c i a z t r y b u P r o t e c t e d
M o d e d o R e a l M o d e
j m p f a r P T R p t t 3
K o m e n t a r z [ M 2 9 ] : D a l e k i s k o k d o
p o c z t k u p r o g r a m u w t r y b i e r z e c z y w i s t y m ,
g d z i e s p r a w d z a n e j e s t c z y n i e z o s t a B
w c z e [n i e j n a c i [n i t y k l a w i s z E S C , j e |e l i t a k
r o z _ z a k E N D S
n a s t p u j e w ó w c z a s z a k o o c z e n i e d z i a Ba n i a
p r o g r a m u
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
o b s l _ i n t S E G M E N T u s e 1 6
A S S U M E c s : o b s l _ i n t
; K a z d e m u p r z e r w a n i u o d p o w i a d a j ? 3 r o z k a z y z a j m u j a c e l a c z n i e 7 b a j t o w .
; P i e r w s z y z t y c h r o z k a z o w z a p a m i e t u j e r e j e s t r C X n a s t o s i e , z a s n a s t e p n y
; w p i s u j e d o C X n r p r z e r w a n i a l u b w y j a t k u , c o p o z w a l a , w d a l s z e j c z e s c i
; p r o c e d u r y o b s l u g i , z i d e n t y f i k o w a l p r z y c z y n e p r z e r w a n i a i e w e n t u a l n i e
; p o d j a l d z i a l a n i a w l a s c i w e d l a z a i s t n i a l e g o z d a r z e n i a .
x p o m = 0
R E P T 1 2 8
p u s h c x ; n r p r z e r w a n i a l u b w y j a t k u
m o v c x , x p o m
j m p p r o c _ o b s l
x p o m = x p o m + 1
E N D M
O R G $ + 1 2 8 ; w y m u s z a b y n i e w y s t e p o w a l y J M P S H O R T
p r o c _ o b s l : s t i
p u s h d s
p u s h e s
p u s h a x
p u s h b x
p u s h d x
p u s h s i
c m p c x , 3 3 ; c z y p r z e r w a n i e z k l a w i a t u r y
j e k l a w i s z e
s t i
j m p p r z e s k o c z _ k l a w
; o b s l u g a p r z e r w a n i a z k l a w i a t u r y
k l a w i s z e :
i n a l , 6 0 H ; o d c z y t k o d u p o z y c j i k l a w i s z a
x o r a h , a h ; z e r o w a n i e r e j e s t r u A H
p u s h a x ; p r z e c h o w a n i e r e j e s t r u A X
i n a l , 6 1 H
o r a l , 8 2 H
o u t 6 1 H , a l
a n d a l , 7 F H
o u t 6 1 H , a l
p o p a x ; o d t w o r z e n i e r e j e s t r u A X
c m p a l , 5 7
j a p r z e s k o c z _ k l a w ; n i e s a o b s l u g i w a n e k l a w i s z e o k o d a c h
; p o z y c j i > 5 5
m o v b x , 2 * 8 ; s e l e k t o r d o s e g m e n t u ' n o w e _ d a n e '
m o v d s , b x
m o v s i , O F F S E T t a b l _ p r z e k A
m o v b l , a l
x o r b h , b h
m o v a l , d s : [ s i + b x ]
K o m e n t a r z [ M 3 0 ] : O b s Bu g a k l a w i a t u r y
w t r y b i e P r o t e c t e d M o d e
d a l e j :
m o v w o r d P T R d s : i n d e k s _ k l a w , a x
m o v b x , 3 * 8
m o v e s , b x
m o v b x , d s : p o z y c j a
m o v e s : [ b x ] , a l
j m p p r z e s k o c z _ k l a w
p r z e s k o c z _ k l a w :
m o v a l , 2 0 H
o u t 2 0 H , a l ; e n d o f i n t e r r u p t ( O C W 2 )
p o p s i
p o p d x
p o p b x
p o p a x
p o p e s
p o p d s
p o p c x
i r e t
o b s l _ i n t _ e n d L A B E L n e a r
o b s l _ i n t E N D S
s h e d S E G M E N T u s e 1 6
A S S U M E c s : s h e d
z 1 d b 0
z 2 d b 0
z 3 d b 0
n z d b 0
n z b d b 0
s t r 1 :
D B 0 E A H
D W s
d w 8 * 1 1 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
K o m e n t a r z [ M 3 1 ] : I n s t r u k c j a s k o k u d o
e t y k i e t y s w p r o c e d u r z e z a d 1
z a 2 :
D B 0 E A H
D W s s 1
d w 8 * 1 2 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
K o m e n t a r z [ M 3 2 ] : I n s t r u k c j a s k o k u d o
e t y k i e t y s s 1 w p r o c e d u r z e z a d 2
z a 3 :
D B 0 E A H
D W s s s
d w 8 * 1 3 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
K o m e n t a r z [ M 3 3 ] : I n s t r u k c j a s k o k u d o
e t y k i e t y s s s w p r o c e d u r z e z a d 3
k o n z a :
D B 0 E A H
D W k l a w 1 4
d w 8 * 8 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
; s e g m e n t u ' r o z k a z y '
K o m e n t a r z [ M 3 4 ] : S k o k d o e t y k i e t y
k l a w 1 4 w p r o c e d u r z e r o z k a z y
s h e d _ e n d l a b e l n e a r
s h e d E N D S
z a d 1 S E G M E N T u s e 1 6
A S S U M E c s : z a d 1
s :
p u s h d s ;
m o v a x , 8 * 3
m o v d s , a x
m o v a l , ' a '
m o v b x , 1 6 0 * 3
m o v b y t e p t r d s : [ b x ] , a l
p o p d s
D B 0 E A H
D W z a 2
d w 8 * 1 4 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
; s e g m e n t u ' r o z k a z y '
z a d 1 _ e n d l a b e l n e a r
z a d 1 E N D S
z a d 2 S E G M E N T u s e 1 6
A S S U M E c s : z a d 2
s s 1 :
p u s h d s ;
m o v a x , 8 * 3
m o v d s , a x
m o v a l , ' b '
m o v b x , 1 6 0 * 4 + 2
m o v b y t e p t r d s : [ b x ] , a l
p o p d s
D B 0 E A H
D W z a 3
d w 8 * 1 4 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
; s e g m e n t u ' r o z k a z y '
z a d 2 _ e n d l a b e l n e a r
z a d 2 E N D S
z a d 3 S E G M E N T u s e 1 6
A S S U M E c s : z a d 3
s s s :
p u s h d s ;
m o v a x , 8 * 3
m o v d s , a x
m o v a l , ' c '
m o v b x , 1 6 0 * 5 + 4
m o v b y t e p t r d s : [ b x ] , a l
p o p d s
D B 0 E A H
D W k o n z a
d w 8 * 1 4 ; s e l e k t o r w s k a z u j a c y n a d e s k r y p t o r
; s e g m e n t u ' r o z k a z y '
z a d 3 _ e n d l a b e l n e a r
z a d 3 E N D S
E N D p o c z
W n i o s k i
T r y b w y k o n y w a n i a p r z e z p r o c e s o r y 8 0 8 8 i 2 8 6 i n s t r u k c j i 1 6 - b i t o w y c h z o s t a B o k r e [l o n y
t e r m i n e m t r y b u r z e c z y w i s t e g o ( R e a l M o d e ) . W s z y s t k i e p r o g r a m y p r a c u j c e w t r y b i e r z e c z y w i s t y m
m o g k o r z y s t a d t y l k o z i n s t r u k c j i 1 6 - b i t o w y c h i w s p ó Bp r a c o w a d z 2 0 - b i t o w a r c h i t e k t u r p a m i c i
( 1 M B ) . T e g o t y p u o p r o g r a m o w a n i e z r e g u By j e s t j e d n o z a d a n i o w e , c o o z n a c z a , |e j e d n o c z e [n i e m o |e
b y d u r u c h o m i o n y t y l k o j e d e n p r o g r a m . P o n a d t o n i e m a w b u d o w a n e j |a d n e g o o c h r o n y
z a p o b i e g a j c e j w y k o r z y s t a n i u p r z e z p r o g r a m o b s z a r u p a m i c i j u | p r z y d z i e l o n e g o i n n e m u
p r o g r a m o w i l u b s y s t e m o w i o p e r a c y j n e m u . J e [l i z a t e m u r u c h o m i o n o w i c e j n i | j e d e n p r o g r a m ,
d o w o l n y z n i c h m o |e s p o w o d o w a d z a w i e s z e n i e c a Be g o s y s t e m u .
P r o g r a m y d z i a Ba j c e w t r y b i e P r o t e c t e d M o d e , 3 2 - b i t o w y m t r y b i e p r a c y p r o c e s o r a , o t r z y m u j
w o d r ó |n i e n i u o d t r y b u R e a l M o d e w Ba s n y o b s z a r p a m i c i , p r z e z c o n i e d o c h o d z i m i d z y n i m i d o
k o n f l i k t ó w . T e g o t y p u o c h r o n a s p r a w i a , |e s y s t e m j e s t o w i e l e b a r d z i e j s t a b i l n y , p o n i e w a | p r o g r a m y
z a w i e r a j c e b Bd n i e m o g w p r o s t y s p o s ó b z a s z k o d z i d i n n y m p r o g r a m o m l u b s a m e m u s y s t e m o w i
o p e r a c y j n e m u . P o z a t y m p r o g r a m , k t ó r y s i z a w i e s i B, m o |e b y d u s u n i t y z p a m i c i b e z s z k o d y d l a
r e s z t y s y s t e m u .
Z a s a d n i c z y m c e l e m d w i c z e n i a l a b o r a t o r y j n e g o b y Bo n a p i s a n i e p r o g r a m u p r z e Bc z a j c e g o
z a d a n i a w p o w y |s z y c h t r y b a c h p r a c y p r o c e s o r a . N a p i s a n y p r o g r a m u r u c h a m i a n y b y B w [r o d o w i s k u
D O S B o x o r a z T u r b o A s s e m b l e r 5 . 0 . P o n i e w a | r e a l i z u j e o n p o s t a w i o n e z a Bo |e n i a p r o t o k o Bu u w a |a m y
c e l d w i c z e n i a l a b o r a t o r y j n e g o z a o s i g n i t y .
Wyszukiwarka
Podobne podstrony:
sw sprawozdanie lab2 v5sw sprawozdanie lab2 v2sw sprawozdanie lab2 v4sw sprawozdanie lab2 v3tm sprawozdanie lab2 v1Sprawozdanie lab2 Szewczak PiotrSW GDLoader ErsteSchritte v1 1? ENSW GDC?sy ErsteSchritte v1 1? ENsprawozdanie lab2tm sprawozdanie lab2 v2Mechanika płynów sprawozdanie z lab2Lab2 WinMobile Cpp Lab2 Cpp v1 opislab2 sprawozdanieSW LAB2 LukaszJanikRóżnice w sprawowaniu św Liturgii w prawosławnych Kościołach lokalnychwięcej podobnych podstron