$ od -c -N 50000 [Indigo]<Daffodil>PCSoftware.dm!1
0000000 377 \0 \0 D D M . a s m \0 373 233 255 206 267
0000020 \0 \0 376 001 \0 5 j \t P a g e 5 5 ,
0000040 1 3 2 \r \t T i t l e D D M \r \r
0000060 M a x B u f L e n \t E Q U \t 8 0
0000100 \t ; i n p u t b u f f e r \r B
0000120 P L e n \t \t E Q U \t 8 \t ; n u m
0000140 b e r o f b r e a k p o i n
0000160 t s \r c r \t \t E Q U \t 0 D h \t ;
0000200 c a r r i a g e r e t u r n \r
0000220 l f \t \t E Q U \t 0 A h \t ; l i n
0000240 e f e e d \r I O S p a c e \t \t
0000260 E Q U \t 0 \t ; e q u a t e s f
0000300 o r t a r g e t s p a c e \r
0000320 M e m S p a c e \t E Q U \t 2 \r R
0000340 e g S p a c e \t E Q U \t 4 \r \r R
0000360 e a d M o d e \t E Q U \t 0 \t ; m
0000400 o d e o f c e l l a c c e
0000420 s s \r N o R e 376 001 \0 006 H a d M o
0000440 d e \t E Q U \t 1 \r \r M e m S i z
0000460 e \t \t E Q U \t 2 \t ; o f f s e t
0000500 o f m e m o r y s i z e
0000520 i n P S P \r T e r m C S \t \t E
0000540 Q U \t 0 C h \t ; o f f s e t o
0000560 f t e r m i n a t e a d d r
0000600 e s s i n P S P \r T e r m I
0000620 P \t \t E Q U \t 0 A h \r T e r m I
0000640 n t N o \t E Q U \t 2 2 h \t ; t e
0000660 r m i n a t e i n t e r r u p
0000700 t n u m b e r \r C B r k C S \t
0000720 \t E Q U \t 1 0 h \t ; o f f s e t
0000740 o f t h e c t r l - B r e
0000760 a k a d d r e s s i n P S
0001000 P \r C B r k I P \t \t E Q U \t 0 E
0001020 h \r C B r k I n t N o \t 376 001 \0 306
0001040 001 E Q U \t 2 3 h \t ; c t r l - b
0001060 r e a k i n t e r r u p t n
0001100 u m b e r \r \r D e f a u l t D T
0001120 A \t E Q U \t 8 0 h ; t h e
0001140 E X E f i l e h e a d e r
0001160 f a l l s h e r e \r L S t k S
0001200 e g \t \t E Q U \t 8 E h \r L S t k
0001220 P t r \t \t E Q U \t 9 0 h \r L C S
0001240 R e g \t \t E Q U \t 9 6 h \r L I P
0001260 R e g \t \t E Q U \t 9 4 h \r F i l
0001300 e S i z e \t E Q U \t 8 4 h \t ; l
0001320 o a d m o d u l e f i l e
0001340 s i z e o f f s e t i n P
0001360 S P \r H e a d e r S i z e \t E Q
0001400 U \t 8 8 h \t ; l o a d m o d u
0001420 l e h e a d e r s i z e o
0001440 f 376 001 \0 242 230 f s e t i n P S
0001460 P \r R e l o c I t e m \t E Q U \t
0001500 9 8 h \t ; o f f s e t o f f
0001520 i r s t r e l o c a t i o n
0001540 i t e m \r I t e m C o u n t \t E
0001560 Q U \t 8 6 h \t ; n u m b e r o
0001600 f r e l o c a t i o n i t e
0001620 m s \r \r m y F C B \t \t E Q U \t 5
0001640 C h \t ; E X E f i l e F C B
0001660 f a l l s h e r e i n t
0001700 h e P S P \r C u r r e n t B l
0001720 o c k \t E Q U \t 0 C h \t ; o f
0001740 f s e t o f c u r r e n t
0001760 b l o c k i n F C B \r C u r
0002000 r e n t R e c o r d \t E Q U \t 2
0002020 0 h \t ; o f f s e t o f r e
0002040 l a t i v e 376 001 \0 362 320 r e c o
0002060 r d n o . i n F C B \r R e
0002100 l R e c \t \t E Q U \t 2 1 h \t ; o
0002120 f f s e t o f r e l a t i v
0002140 e r e c o r d n o . f o r
0002160 r a n d o m a c c e s s \r \r
0002200 \r S t a c k \t S e g m e n t S
0002220 t a c k \r \t \t D W 2 5 6 D u
0002240 p ( ? ) \r S t a c k \t E N D S
0002260 \r \r D a t a \t S e g m e n t '
0002300 D a t a ' \r \r T a r g S p a c e
0002320 \t D W \t ( ? ) \r T a r g S e g \t
0002340 \t D W \t ( ? ) \r T a r g O f f s
0002360 e t \t D W \t ( ? ) \r \r B P T a b
0002400 l e \t D W \t 2 * B P L e n D U
0002420 P ( ? ) \t ; b r e a k p o i n
0002440 t e n t r i e s c 376 001 \0 036 237
0002460 o n t a i n a \r ; s e g m e n
0002500 t i n t h e f i r s t w
0002520 o r d , t h e o p c o d e
0002540 b e i n g r e p l a c e d i
0002560 n t h e \r ; f i r s t b y t
0002600 e o f t h e s e c o n d
0002620 w o r d , 3 b i t s o f
0002640 0 ' s , a b i t i n d i c
0002660 a t i n g \r ; t h a t t h e
0002700 t a b l e e n t r y i s i
0002720 n u s e , a n d a f o u
0002740 r - b i t o f f s e t f r o
0002760 m t h e \r ; s e g m e n t g
0003000 i v e n b y t h e f i r s
0003020 t w o r d . \r B P T a b l e E
0003040 n d \t L A B E L W O R D \r \r M
0003060 376 001 \0 313 353 o d e \t \t D W \t ( ? )
0003100 \t ; p r i n t i n g m o d e \r
0003120 L o a d F l a g \t D W \t ( ? ) \t
0003140 ; i n d i c a t e s d e b u g
0003160 e e l o a d e d \r D S t k p \t
0003200 \t D W \t ( ? ) \t ; s a v e s s
0003220 t k p w h e n d e b u g e e
0003240 i s r u n n i n g \r \r R e g
0003260 S a v e \t \t L A B E L \t W O R D
0003300 \r R e g A X \t \t D W \t 0 \r R e g
0003320 B X \t \t D W \t 0 \r R e g C X \t \t
0003340 D W \t 0 \r R e g D X \t \t D W \t 0
0003360 \r R e g S P \t \t D W \t 0 \r R e g
0003400 B P \t \t D W \t 0 \r R e g S I \t \t
0003420 D W \t 0 \r R e g D I \t \t D W \t 0
0003440 \r R e g C S \t \t D W \t 0 \r R e g
0003460 D S \t \t D 376 001 \0 366 4 W \t 0 \r R e
0003500 g S S \t \t D W \t 0 \r R e g E S \t
0003520 \t D W \t 0 \r R e g I P \t \t D W \t
0003540 0 \r R e g F R \t \t D W \t 0 \r R e
0003560 g X S \t \t D W \t 0 \r R e g Y S \t
0003600 \t D W \t 0 \r \r B u f \t D B \t M a
0003620 x B u f L e n + 1 D u p ( ?
0003640 ) \r B u f L e n \t D W \t ( ? ) \r
0003660 \r L o a d S e g \t D W \t ( ? ) \t
0003700 ; s e g m e n t i n t o w h
0003720 i c h t o l o a d d e b u
0003740 g e e \r P S P S e g \t D W \t ( ?
0003760 ) \r R e l o c S e g \t D W \t ( ?
0004000 ) ; d u r i n g l o a d i n
0004020 g , r e l o c a t i o n i s
0004040 d o n e \r ; r e l a t i v e
0004060 t o t h i s s e 376 001 \0 L p g
0004100 m e n t \r B r o k e n \t D W \t (
0004120 ? ) \t ; n o n z e r o m e a n
0004140 s b r e a k p o i n t s a r
0004160 e s e t i n t h e d e b
0004200 u g e e \r \r D a t a \t E N D S \r
0004220 \r C S e g \t S e g m e n t ' C
0004240 o d e ' \r \t A s s u m e C S :
0004260 C S e g , D S : D a t a \r
0004300 \r ; * * * * * * * * * * * * * *
0004320 * * * * * * * * * * * * * * * *
*
0004400 * * * * * * * \r D D M a i n \t P
0004420 R O C F a r \r \t P U S H \t D S
0004440 \t ; s a v e P S P f o r r
0004460 e t u r n t o D O S \r \t S 376
0004500 001 \0 ^ ~ U B \t A X , A X \r \t P
0004520 U S H \t A X \r \t M O V \t A X ,
0004540 D a t a \r \t M O V \t D S , A X
0004560 \r \t M O V \t P S P S e g , E S
0004600 \r \t M O V \t C L , 4 \t ; t h e
0004620 s e g m e n t a f t e r t
0004640 h e s t a c k h o l d s t
0004660 h e d e b u g e e \r \t M O V \t
0004700 A X , S P \r \t S H R \t A X ,
0004720 C L \r \t I N C \t A X \r \t M O V \t
0004740 B X , S S \r \t A D D \t A X ,
0004760 B X \r \t M O V \t L o a d S e g ,
0005000 A X \r \t M O V \t R e g X S ,
0005020 A X \r \t M O V \t R e g Y S , E
0005040 S \t ; s a v e P S P o f f s
0005060 e t \r \t M O V \t T a r g S p a c
0005100 e , M 376 001 \0 246 j e m S p a c e
0005120 \r \t M O V \t T a r g S e g , 0
0005140 \r \t M O V \t T a r g O f f s e t
0005160 , 0 \r \t M O V \t M o d e , R
0005200 e a d M o d e \r \t M O V \t L o a
0005220 d F l a g , 0 \r \t C A L L \t I
0005240 n i t B P T a b l e \r \t M O V \t
0005260 B u f L e n , 0 \t ; c l e a r
0005300 i n p u t b u f f e r \r \t M
0005320 O V \t B r o k e n , 0 \r ; S e
0005340 t C O M 1 t o 2 4 0 0 b a
0005360 u d , n o p a r i t y , o
0005400 n e s t o p b i t , 8 d
0005420 a t a b i t s \r \t M O V \t A X
0005440 , 0 A 3 h \r \t M O V \t D X ,
0005460 0 \t ; c o m c a r d 0 \r \t I
0005500 N T \t 1 4 h \r \r ; 376 001 \0 024 304 c o
0005520 m m a n d s r e t u r n h e
0005540 r e \r M a i n 0 0 : \t C A L L \t
0005560 P r o m p t \t ; P r o m p t \r M
0005600 a i n 0 1 : \t C A L L \t G e t L
0005620 i n e \r M a i n 0 2 : \t M O V \t
0005640 A H , 0 ; c o m m a
0005660 n d c h a r a c t e r i s
0005700 i n A L \r \t M O V \t B X , A
0005720 X \r \t S H L \t B X , 1 \t ; d i
0005740 s p a t c h o n c o m m a n
0005760 d c h a r a c t e r \r \t J M P
0006000 \t C S : C o m T a b [ B X ] \r \r
0006020 C o m T a b \t L A B E L \t W O R
0006040 D \r ; d i s p a t c h t a b l
0006060 e f o r c o m m a n d c h
0006100 a r a c t e r s \r \t D W \t Q 376 001
0006120 \0 006 Y P r , Q P r , C t r l
0006140 B , I 2 3 , Q P r , Q P r
0006160 , Q P r , G o \r \t D W \t Q P
0006200 r , Q P r , Q P r , K i l
0006220 l B P , L o a d E X E , M a
0006240 i n 0 0 , N e x t L o c , C
0006260 u r L o c R \r \t D W \t P r e v L
0006300 o c , Q u i t , R e g P r i
0006320 n t , S S t e p , T e r m M
0006340 o d e , Q P r , Q P r , C
0006360 u r L o c N \r \t D W \t Q P r ,
0006400 Q P r , P r g m , Q P r ,
0006420 Q P r , Q P r , Q P r , Q
0006440 P r \r \r T e r m M o d e : \t M O
0006460 V \t A H , 1 \t ; k b d c h a
0006500 r r e a d y ? \r \t I N T \t 1 6
0006520 h \r \t 376 001 \0 ( f J E \t T M 0 1 \r
0006540 \t M O V \t A H , 3 \t ; R S 2 3
0006560 2 t r a n s m i t t e r r e
0006600 a d y ? \r \t M O V \t D X , 0 \r
0006620 \t I N T \t 1 4 h \r \t T E S T \t A
0006640 H , 2 0 h \t ; b i t 5 i s
0006660 x m t h o l d i n g r e g
0006700 i s t e r e m p t y \r \t J E \t
0006720 T M 0 1 \r \t M O V \t A H , 0 \t
0006740 ; r e a d k e y b o a r d \r \t
0006760 I N T \t 1 6 h \r \t C M P \t A L ,
0007000 1 4 h \t ; c o n t r o l - T ?
0007020 \r \t J N E \t T M 0 0 \r \t J M P \t
0007040 M a i n 0 0 \t ; e x i t t e r
0007060 m i n a l m o d e \r T M 0 0 :
0007100 \t M O V \t A H , 1 \t ; s e n d
0007120 c h a r t o 376 001 \0 370 . R S
0007140 2 3 2 \r \t I N T \t 1 4 h \r T M 0
0007160 1 : \t M O V \t A H , 3 \t ; R S
0007200 2 3 2 c h a r a v a i l a b
0007220 l e ? \r \t M O V \t D X , 0 \r \t
0007240 I N T \t 1 4 h \r \t T E S T \t A H
0007260 , 1 \t ; r e c e i v e r r e
0007300 a d y ? \r \t J E \t T e r m M o d
0007320 e \r \t M O V \t A H , 2 \t ; g e
0007340 t c h a r f r o m c o m
0007360 l i n e \r \t I N T \t 1 4 h \r \t A
0007400 N D \t A L , 7 F h \t ; m a s k
0007420 c h a r a c t e r t o 7
0007440 b i t s \r \t M O V \t A H , 1 4
0007460 \t ; s e n d c h a r a c t e r
0007500 t o s c r e e n \r \t M O V \t
0007520 B X , 0 \r \t I N T \t 1 0 376 001 \0
0007540 333 $ h \r \t J M P \t T e r m M o d
0007560 e \r \r P r g m : \t C M P \t L o a
0007600 d F l a g , 0 \r \t J N E \t P r
0007620 g 0 0 \r \t J M P \t Q P r \t ; c a
0007640 n ' t d o i t i f d e b
0007660 u g e e n o t l o a d e d \r
0007700 P r g 0 0 : \t C A L L \t S e n d
0007720 C S \r \t J M P \t M a i n 0 0 \r \r
0007740 K i l l B P : \t C M P \t B u f L
0007760 e n , 0 \r \t J E \t Z a p B P \r
0010000 \t C A L L \t P a r s e \r \t J C \t
0010020 K B p 0 1 \r \t J M P \t Q P r \t ;
0010040 b a d p a r s e \r K B p 0 1 :
0010060 \t M O V \t C X , T a r g S e g
0010100 \r \t M O V \t D X , T a r g O f
0010120 f s e t \r \t M O V \t A X , 1 0
0010140 h \r 376 001 \0 326 005 \t M O V \t S I ,
0010160 0 F F F F h \r \t M O V \t D I ,
0010200 1 F h \r \t M O V \t B P , O F F
0010220 S E T K B p 0 0 \r \t C A L L \t
0010240 S c a n B P \r \t J M P \t Q P r \t
0010260 ; z a p l o c a t i o n n o
0010300 t f o u n d \r K B p 0 0 : \t P
0010320 O P \t A X \t ; p o p 2 r e t
0010340 u r n l i n k s \r \t P O P \t A
0010360 X \r \t M O V \t B P T a b l e + 2
0010400 [ B X ] , 0 \r \t J M P \t M a
0010420 i n 0 0 \r Z a p B P : \t C A L L
0010440 \t I n i t B P T a b l e \r \t J M
0010460 P \t M a i n 0 0 \r \r C t r l B :
0010500 \t C M P B u f L e n , 0 \t ;
0010520 s e t b p i f p r e c e d
0010540 e d b y s 376 001 \0 233 223 e g : o
0010560 f f s e t , e l s e p r i n
0010600 t a l l \r \t J N E C t B 0 0
0010620 \r \t C A L L \t P r i n t B r e a
0010640 k s \r \t J M P \t M a i n 0 0 \r C
0010660 t B 0 0 : \t C A L L \t P a r s e
0010700 \r \t J C \t C t B 0 1 \r \t J M P \t
0010720 Q P r \t ; b a d p a r s e \r C
0010740 t B 0 1 : \t C M P \t T a r g S p
0010760 a c e , M e m S p a c e \r \t J
0011000 E \t C t B 0 2 \r \t J M P \t Q P r
0011020 \r C t B 0 2 : \t M O V \t A X ,
0011040 0 \r \t C A L L \t S e t B p \r \t J
0011060 C \t C t B 0 3 \r \t J M P \t Q P r
0011100 \r C t B 0 3 : \t J M P \t M a i n
0011120 0 0 \r \r R e g P r i n t : \t C A
0011140 L L P r i n t R e g s 376 001 \0 266
0011160 271 \r \t J M P \t M a i n 0 0 \r \r I
0011200 2 3 : \t I N T \t 2 3 h \r \r S S t
0011220 e p : \t C M P \t L o a d F l a g
0011240 , 1 \t ; 1 m e a n s p r o
0011260 g r a m h a s r u n a b
0011300 i t a l r e a d y \r \t J G \t S
0011320 S t 0 0 \r \t J M P \t Q P r \r S S
0011340 t 0 0 : \t M O V \t A X , O F F
0011360 S E T S t e p S t e p \r \t J M
0011400 P \t G o 0 4 \r \r G o : \t C M P \t
0011420 L o a d F l a g , 0 \r \t J N E
0011440 \t G o 0 0 \r \t J M P \t Q P r \t ;
0011460 c a n ' t g o u n l e s s
0011500 d e b u g g e e l o a d e d \r
0011520 G o 0 0 : \t I N C \t L o a d F l
0011540 a g \r \t M O V \t D S , L o a d
0011560 S 376 001 \0 310 276 e g \r \t M O V \t D X
0011600 , 8 0 h \r \t M O V \t A H , 1
0011620 A h \r \t I N T \t 2 1 h \t ; s e t
0011640 D T A t o l o a d s e g
0011660 : 8 0 h \r ; S e t u p t h e
0011700 t e r m i n a t e ( 2 2 h )
0011720 a n d C t r l B r k ( 2 3
0011740 h ) i n t e r r u p t s \r ; f
0011760 r o m t h e d e b u g g e e
0012000 P S P \r G o 0 1 : \t M O V \t A
0012020 X , W O R D P T R D S :
0012040 T e r m I P \r \t M O V \t C X ,
0012060 W O R D P T R D S : T e r
0012100 m C S \r \t M O V \t B X , T e r
0012120 m I n t N o \r \t C A L L \t S e t
0012140 I n t \r \t M O V \t A X , W O R
0012160 D P T R 376 001 \0 246 P D S : C
0012200 B r k I P \r \t M O V \t C X , W
0012220 O R D P T R D S : C B r k
0012240 C S \r \t M O V \t B X , C B r k
0012260 I n t N o \r \t C A L L \t S e t I
0012300 n t \r \r \t M O V \t A X , D a t
0012320 a \r \t M O V \t D S , A X \r \t M
0012340 O V \t C X , R e g C S \t ; c h
0012360 e c k f o r b r e a k a t
0012400 g o l o c a t i o n \r \t M O
0012420 V \t D X , R e g I P \r \t M O V
0012440 \t A X , 1 0 h \r \t M O V \t B P
0012460 , O F F S E T G o 0 2 \r \t M
0012500 O V \t S I , 0 F F F F h \r \t M
0012520 O V \t D I , 1 F h \r \t C A L L
0012540 \t S c a n B P \r \t C A L L \t B P
0012560 E x c h a n g e ; n 376 001 \0 004 301
0012600 o b r e a k a t g o l o
0012620 c a t i o n . S e t b r e a
0012640 k s \r \t A N D \t R e g F R , 0
0012660 F E F F h \t ; c l e a r T F \r
0012700 \t M O V \t A X , O F F S E T
0012720 B r k S t o p \r \t M O V \t C X ,
0012740 C S \r \t M O V \t B X , 3 \t ;
0012760 b r e a k p o i n t i n t e r
0013000 r u p t i s t y p e 3 \r \t
0013020 C A L L \t S e t I n t \r ; s e t
0013040 S S v e c t o r s o t h
0013060 a t i t c l e a r s T F
0013100 a n d r e s t a r t s \r \t M O
0013120 V \t A X , O F F S E T B r k
0013140 S t e p \r \t M O V \t C X , C S
0013160 \r \t M O V \t B X , 1 \r \t C A L
0013200 376 001 \0 326 \r L \t S e t I n t \r \t M
0013220 O V \t B r o k e n , 1 \t ; b r
0013240 e a k s a r e s e t \r \t J M
0013260 P \t G o 0 3 \r \r G o 0 2 : \t P O
0013300 P \t A X ; p o p 2 r e t
0013320 u r n l i n k s \r \t P O P \t A
0013340 X \r \t M O V \t A X , O F F S e
0013360 t B r k S t e p \r G o 0 4 : \t
0013400 O R \t R e g F R , 1 0 0 h \t ;
0013420 a b r e a k p o i n t i s
0013440 s e t a t g o l o c a t i
0013460 o n . S e t T F \r \t M O V \t
0013500 C X , C S \r \t M O V \t B X ,
0013520 1 \t ; s e t S i n g l e S t
0013540 e p i n t e r r u p t v e c
0013560 t o r \r \t C A L L \t S e t I n t
0013600 \r \t M O V 376 001 \0 020 \t \t B r o k e
0013620 n , 0 ; b r e a k s a r e
0013640 n o t s e t i n t h e
0013660 d e b u g e e \r \t J M P \t G o 0
0013700 3 \r \r ; C o m e h e r e o n
0013720 a s i n g l e s t e p s
0013740 t o p \r S t e p S t e p : \t C A
0013760 L L \t S a v e R e g s \r \t C A L
0014000 L \t B P S w a p \r \t C A L L \t P
0014020 r i n t R e g s \r \t M O V \t A L
0014040 , " S " \r \t J M P \t T e r m 0
0014060 0 \r \r ; C o m e h e r e o n
0014100 a b r e a k p o i n t s t
0014120 o p \r B r k S t o p : \t C A L L
0014140 \t S a v e R e g s \r \t C A L L \t
0014160 B P S w a p \r \t D E C \t R e g I
0014200 P \t ; b a c k u p 376 001 \0 4 355
0014220 I P t o p o i n t t o t
0014240 h e b r e a k i n s t r u c
0014260 t i o n \r \t C A L L \t P r i n t
0014300 R e g s \r \t M O V \t A L , " B
0014320 " \r \t J M P \t T e r m 0 0 \r \r ;
0014340 G e t h e r e o n a s t
0014360 e p o v e r a b r e a k p
0014400 o i n t e d i n s t r u c t i
0014420 o n \r B r k S t e p : \t C A L L
0014440 \t S a v e R e g s \r \t C A L L \t
0014460 B P S w a p \r \t A N D \t R e g F
0014500 R , 0 F E F F h \t ; c l e a r
0014520 T F \r \t M O V \t D S , L o a
0014540 d S e g \r \t J M P \t G o 0 1 \r \r
0014560 ; L o a d u p t h e m a c
0014600 h i n e r e g i s t e r s 376
0014620 001 \0 q 207 a n d g i v e c o n
0014640 t r o l t o t h e d e b u
0014660 g e e \r G o 0 3 : \t M O V \t D S
0014700 t k p , S P \t ; s a v e s t
0014720 k p w h i l e d e b u g e e
0014740 r u n s \r \t M O V \t S S , R
0014760 e g S S \r \t M O V \t S P , R e
0015000 g S P \r \t M O V \t A X , R e g
0015020 F R \r \t P U S H \t A X \r \t M O V
0015040 \t A X , R e g C S \r \t P U S H
0015060 \t A X \r \t M O V \t A X , R e g
0015100 I P \r \t P U S H \t A X \r \t M O V
0015120 \t A X , R e g A X \r \t M O V \t
0015140 B X , R e g B X \r \t M O V \t C
0015160 X , R e g C X \r \t M O V \t D X
0015200 , R e g D X \r \t M O V \t B P ,
0015220 R e g 376 001 \0 020 y B P \r \t M O V
0015240 \t S I , R e g S I \r \t M O V \t
0015260 D I , R e g D I \r \t M O V \t E
0015300 S , R e g E S \r \t M O V \t D S
0015320 , R e g D S \r \t I R E T \r \r L
0015340 o a d E X E : \t C M P \t B u f L
0015360 e n , 0 \t ; s p e c i a l r
0015400 e l o c a t i o n ? \r \t J E \t L
0015420 E 1 0 \r \t M O V \t B P , 0 \r \t
0015440 M O V \t S I , B u f L e n \r \t
0015460 C A L L \t N u m C h e c k \r \t J
0015500 C \t L E 1 1 \r \t J M P \t Q P r \t
0015520 ; f u n n y n o n - n u m b e
0015540 r f o r r e l o c a t i o n
0015560 s e g m e n t \r L E 1 0 : \t M
0015600 O V \t A X , L o a d S e g \t ;
0015620 n o r m a l r e 376 001 \0 370 301 l o
0015640 c a t i o n \r \t A D D \t A X ,
0015660 1 0 h \t ; d e b u g e e P S P
0015700 i s 1 0 0 h l o n g \r L E
0015720 1 1 : \t M O V \t R e l o c S e g
0015740 , A X \r L E 1 2 : \t M O V \t D
0015760 X , L o a d S e g \r \t M O V \t
0016000 A H , 2 6 h \t ; c r e a t e
0016020 n e w p r o g r a m s e g m
0016040 e n t \r \t I N T \t 2 1 h \t ; D O
0016060 S c a l l \r \t M O V \t B P ,
0016100 D S \t ; l o t s o f s e g m
0016120 e n t s w i t c h i n g s o
0016140 o n \r \t M O V \t E S , B P \r \t
0016160 M O V \t D S , P S P S e g \r \t
0016200 M O V \t D X , D e f a u l t D
0016220 T A \r \t M O V \t A H , 1 A 376 001
0016240 \0 362 z h \t ; s e t D T A \r \t I
0016260 N T \t 2 1 h \r \r \t M O V \t D X ,
0016300 m y F C B \t ; o p e n f i l
0016320 e ( u s e d e b u g g e r
0016340 P S P ) \r \t M O V \t A H , 0 F
0016360 h \r \t I N T \t 2 1 h \r \t C M P \t
0016400 A L , 0 \r \t J E \t L E 0 0 \r \t
0016420 M O V \t D S , B P \r \t J M P \t
0016440 Q P r \t ; c o u l d n o t o
0016460 p e n f i l e \r L E 0 0 : \t M
0016500 O V \t W O R D P T R D S :
0016520 ( m y F C B + C u r r e n t B l
0016540 o c k ) , 0 \r \t M O V \t B Y T
0016560 E P T R D S : ( m y F C B
0016600 + C u r r e n t R e c o r d
0016620 ) , 0 \r \t M O V \t A H , 1 4
0016640 h \t ; 376 001 \0 246 > s e q u e n t i
0016660 a l r e a d \r \t I N T \t 2 1 h
0016700 \r ; p r i n t t h e 1 4 h
0016720 e a d e r v a l u e s \r \t C A
0016740 L L \t C R L F \r \t M O V \t B X ,
0016760 0 \r \t M O V \t C X , 1 4 \r \t
0017000 P U S H \t B P \t ; s a v e s e
0017020 g m e n t \r p h l o o p : \t M O
0017040 V \t A X , W O R D P T R D
0017060 S : D e f a u l t D T A [ B X
0017100 ] \r \t A D D \t B X , 2 \r \t C A
0017120 L L \t P u t N u m \r \t M O V \t A
0017140 L , " " \r \t C A L L \t P u t
0017160 C h a r \r \t D E C \t C X \r \t J G
0017200 \t p h l o o p \r \t C M P \t W O R
0017220 D P T R D S : D e f a u l
0017240 t D T A , 5 A 376 001 \0 \n 213 4 D h
0017260 \r \t J E \t L E 0 1 \r \t P O P \t B
0017300 P \r \t J M P \t Q P r \r L E 0 1 :
0017320 \t P O P \t B P \r \t M O V \t D S ,
0017340 E S : L o a d S e g \r \t M O
0017360 V \t D X , 1 0 0 h \t ; s e t
0017400 l o a d s e g m e n t f o r
0017420 t r a n s f e r \r \t M O V \t A
0017440 H , 1 A h \r \t I N T \t 2 1 h \r
0017460 \t M O V \t D S , E S : P S P
0017500 S e g \t ; g e t s t a r t i n
0017520 g r e c o r d \r \r \t M O V \t
0017540 A X , W O R D P T R D S :
0017560 M e m S i z e \t ; c o p y t
0017600 h e m e m o r y s i z e \r ;
0017620 i n f o r m a t i o n f r o m
0017640 P S P t o P S P , 376 001 \0
0017660 244 d s i n c e D O S d o e s
0017700 n ' t \r \t M O V \t D S , E S :
0017720 L o a d S e g \r \t M O V \t W O
0017740 R D P T R D S : M e m S i
0017760 z e , A X \r ; s e t t h e
0020000 T e r m i n a t e a n d C t
0020020 r l B r k a d d r e s s e s
0020040 i n t o t h e d e b u g e e
0020060 P S P \r \t M O V \t A X , O F
0020100 F S E T T e r m \r \t M O V \t W
0020120 O R D P T R D S : T e r m
0020140 I P , A X \r \t M O V \t W O R D
0020160 P T R D S : T e r m C S ,
0020200 C S \r \t M O V \t A X , O F F
0020220 S E T C B r k \r \t M O V \t W O
0020240 R D P T R D S : C B r k I
0020260 P , 376 001 \0 241 # A X \r \t M O V \t
0020300 W O R D P T R D S : C B r
0020320 k C S , C S \r \r \t M O V \t D S
0020340 , E S : P S P S e g \r \t M O
0020360 V \t C L , 3 \r ; h e a d e r
0020400 s i z e i s i n p a r a g
0020420 r a p h s . d i v i d e b
0020440 y 8 t o g e t r e c o r
0020460 d s . \r \t M O V \t A X , W O R
0020500 D P T R D S : H e a d e r
0020520 S i z e \r \t S H R \t A X , C L
0020540 \r \t M O V \t W O R D P T R D
0020560 S : ( m y F C B + R e l R e c
0020600 ) , A X \r \t M O V \t W O R D
0020620 P T R D S : ( m y F C B + R
0020640 e l R e c + 2 ) , 0 \r \t M O V
0020660 \t B X , W O 376 001 \0 c 363 R D P
0020700 T R D S : F i l e S i z e \r
0020720 \t M O V \t C L , 2 \r \t S H L \t
0020740 B X , C L \t ; n u m b e r o
0020760 f r e c o r d s i n f i l
0021000 e \r \t M O V \t C X , B X \r \t S
0021020 U B \t C X , A X \t ; n u m b e
0021040 r o f r e c o r d s t o
0021060 r e a d \r \t M O V \t D X , m y
0021100 F C B \r \t M O V \t A H , 2 7 h
0021120 \t ; r a n d o m b l o c k r
0021140 e a d \r \t I N T \t 2 1 h \t ; D O
0021160 S c a l l \r \t M O V \t E S :
0021200 R e g A X , A X \t ; A L h a
0021220 s c o m p l e t i o n c o d
0021240 e \r \t M O V \t E S : R e g C X
0021260 , C X \t ; C X h a s 376 001 \0 322
0021300 375 n u m b e r o f r e c o
0021320 r d s r e a d \r ; s e t D T
0021340 A b a c k t o P S P a n
0021360 d p r o c e s s r e l o c a
0021400 t i o n i n f o . \r \t M O V \t
0021420 D S , E S : P S P S e g \r \t M
0021440 O V \t D X , D e f a u l t D T
0021460 A \r \t M O V \t A H , 1 A h ;
0021500 s e t D T A \r \t I N T \t 2 1 h
0021520 \r \r \t M O V \t D I , E S : L
0021540 o a d S e g \r \t A D D \t D I ,
0021560 1 0 h \t ; D I c o n t a i n s
0021600 t h e s t a r t s e g m e
0021620 n t \r ; g e t S S f r o m
0021640 t h e h e a d e r \r \t M O V \t
0021660 A X , W O R D P T R D S :
0021700 376 001 \0 241 334 L S t k S e g \r \t A
0021720 D D \t A X , D I \r \t M O V \t E
0021740 S : R e g S S , A X \r ; g e
0021760 t S P \r \t M O V \t A X , W O
0022000 R D P T R D S : L S t k P
0022020 t r \r \t M O V \t E S : R e g S
0022040 P , A X \r ; g e t C S \r \t M
0022060 O V \t A X , W O R D P T R
0022100 D S : L C S R e g \r \t A D D \t
0022120 A X , D I \r \t M O V \t E S :
0022140 R e g C S , A X \r ; g e t I
0022160 P \r \t M O V \t A X , W O R D
0022200 P T R D S : L I P R e g \r \t
0022220 M O V \t E S : R e g I P , A
0022240 X \r ; s e t t h e F C B b
0022260 l o c k n u m b e r t o 0
0022300 a n d t 376 001 \0 362 034 h e r e
0022320 l a t i v e r e c o r d n o
0022340 . t o 1 \r ; i n c a s e
0022360 m o r e d i s k a c c e s s
0022400 e s a r e r e q u i r e d \r
0022420 \t M O V \t W O R D P T R D S
0022440 : ( m y F C B + C u r r e n t
0022460 B l o c k ) , 0 \r \t M O V \t B
0022500 Y T E P T R D S : ( m y F
0022520 C B + C u r r e n t R e c o r d
0022540 ) , 1 \r \t M O V \t D X , m y
0022560 F C B \r \r \t M O V \t B X , W O
0022600 R D P T R D S : R e l o c
0022620 I t e m ; o f f s e t o f
0022640 t h e f i r s t i t e m \r \t
0022660 M O V \t C X , W O R D P T R
0022700 D S : I t e m C o 376 001 \0 326 225
0022720 u n t \r \t M O V \t A X , E S :
0022740 R e l o c S e g \t ; p u t t h
0022760 i s o n t h e s t a c k \r
0023000 \t P U S H \t A X \r \r R e l o c L
0023020 o o p : \t C M P \t C X , 0 \t ;
0023040 m o r e i t e m s ? \r \t J E \t
0023060 R e l o c D o n e \r \t M O V \t S
0023100 I , W O R D P T R D S :
0023120 D e f a u l t D T A [ B X ] ;
0023140 o f f s e t \r \t C A L L \t C h k
0023160 D s k B u f \r \t M O V \t A X ,
0023200 W O R D P T R D S : D e f
0023220 a u l t D T A [ B X ] \t ; s e g
0023240 m e n t \r \t C A L L \t C h k D s
0023260 k B u f \r \t A D D \t A X , D I
0023300 \t ; s e g m e n t + s t a r
0023320 376 001 \0 0 335 t s e g m e n t \r \t
0023340 M O V \t E S , A X \r \t P O P \t
0023360 A X \t ; g e t R e l o c S e g
0023400 \r \t P U S H \t A X \r \t A D D \t A
0023420 X , W O R D P T R E S :
0023440 [ S I ] \t ; i t e m t o b e
0023460 r e l o c a t e d \r \t M O V \t
0023500 W O R D P T R E S : [ S I
0023520 ] , A X \t ; p u t i t b a
0023540 c k \r \t D E C \t C X \r \t J M P
0023560 R e l o c L o o p \r \r R e l o c
0023600 D o n e : \t M O V \t D S , B P
0023620 \r \t P O P \t A X \t ; d i s c a r
0023640 d R e l o c S e g \r \t M O V \t
0023660 A X , L o a d S e g \t ; s e g
0023700 m e n t o f d e b u g e e
0023720 P S P \r \t 376 001 \0 206 : M O V \t R e
0023740 g D S , A X \r \t M O V \t R e g
0023760 E S , A X \r \t M O V \t R e g F
0024000 R , 0 \t ; i n t e r r u p t s
0024020 O F F \r \t M O V \t L o a d F l
0024040 a g , 1 \t ; i n d i c a t e
0024060 t h a t d e b u g e e i s
0024100 l o a d e d \r \t J M P \t M a i n
0024120 0 0 \r \r Q u i t : \t R E T \t
0024140 ; r e t u r n t o D O S \r \r
0024160 P r e v L o c : \t M O V \t D X ,
0024200 - 2 \t ; o f f s e t d e l t
0024220 a t o a c c e s s p r e v
0024240 i o u s l o c a t i o n \r \t J
0024260 M P \t N L 0 1 \r N e x t L o c :
0024300 \t M O V \t D X , 2 \r N L 0 1 :
0024320 \t C M P \t B u f L e 376 001 \0 313 C n
0024340 , 0 \t ; n o n z e r o l e n
0024360 g t h i s a n e r r o r
0024400 h e r e \r \t J E \t C L R 0 2 \r \t
0024420 J M P \t Q P r \t ; e r r o r p
0024440 r o m p t \r \r C u r L o c N : \t
0024460 M O V \t M o d e , N o R e a d
0024500 M o d e \r \t J M P \t C L R 0 1 \r
0024520 C u r L o c R : \t M O V \t M o d
0024540 e , R e a d M o d e \r C L R 0
0024560 1 : \t C M P \t B u f L e n , 0
0024600 \r \t J E \t C L R 0 3 \r \t C a l l
0024620 \t P a r s e \r \t J C \t C L R 0 4
0024640 \r \t J M P \t Q P r \t ; b a d p
0024660 a r s e \r \r C L R 0 2 : \t A D D
0024700 \t T a r g O f f s e t , D X \r
0024720 \t C M P \t T a r g S p a c e , 376
0024740 001 \0 365 \b R e g S p a c e \r \t J
0024760 N E \t C L R 0 3 \r \t A N D \t T a
0025000 r g O f f s e t , 1 F h ; m
0025020 a s k o f f s e t i n r e
0025040 g i s t e r m o d e \r C L R 0
0025060 3 : \t M O V \t B X , T a r g S
0025100 p a c e \t ; p r i n t t h e
0025120 c u r r e n t l o c a t i o n
0025140 \r \t J M P \t C S : P r i n t T a
0025160 b [ B X ] \r \r P r i n t T a b \t
0025200 L A B E L \t W O R D \r \t D W \t P
0025220 r i n t I O , P r i n t M e m ,
0025240 P r i n t R e g \r \r P r i n t I
0025260 O : \t M O V \t A L , " I " \r \t
0025300 C A L L \t P u t C h a r \r \t J M
0025320 P \t P M 0 1 \r P r i n t M e m :
0025340 \t M O V 376 001 \0 214 Q \t A X , T a
0025360 r g S e g \r \t C A L L \t P u t N
0025400 u m \r \t M O V \t A L , " : " \r
0025420 \t C A L L \t P u t C h a r \r P M
0025440 0 1 : \t M O V \t A X , T a r g
0025460 O f f s e t \r \t C A L L \t P u t
0025500 N u m \r \t J M P \t C L R 0 4 \r P
0025520 r i n t R e g : \t M O V \t B X ,
0025540 T a r g O f f s e t \r \t C A L
0025560 L \t P r i n t R e g N a m e \r C
0025600 L R 0 4 : \t C M P \t M o d e ,
0025620 R e a d M o d e \r \t J E \t C L R
0025640 0 5 \r \t M O V \t A L , " \ " \r
0025660 \t C A L L \t P u t C h a r \r \t J
0025700 M P \t C L R 1 0 \r C L R 0 5 : \t
0025720 M O V \t A L , " / " \r \t C A L
0025740 L \t P u t C h a r 376 001 \0 275 ' \r \t
0025760 M O V \t B X , T a r g S p a c
0026000 e \t ; n o w g e t a n d p
0026020 r i n t c o n t e n t s \r \t J
0026040 M P \t C S : R e a d T a b [ B X
0026060 ] \r \r R e a d T a b \t L A B E L
0026100 \t W O R D \r \t D W \t R e a d I O
0026120 , R e a d M e m , R e a d R e g
0026140 \r \r R e a d I O : \t M O V \t D X
0026160 , T a r g O f f s e t \r \t I N
0026200 \t A X , D X \r \t J M P \t C L R
0026220 0 6 \r R e a d M e m : \t M O V \t
0026240 E S , T a r g S e g \r \t M O V
0026260 \t B X , T a r g O f f s e t \r
0026300 \t M O V \t A X , E S : [ B X ]
0026320 \r \t J M P \t C L R 0 6 \r R e a d
0026340 R e g : \t M O V \t B X , T 376 001
0026360 \0 O | a r g O f f s e t \r \t M O
0026400 V \t A X , R e g S a v e [ B X
0026420 ] \r C L R 0 6 : \t C A L L \t P u
0026440 t N u m \r C L R 1 0 : \t M O V \t
0026460 A L , " " \r \t C A L L \t P u
0026500 t C h a r \r \t C A L L \t G e t L
0026520 i n e \r \t P U S H \t A X \t ; s a
0026540 v e t e r m i n a t i o n c
0026560 h a r a c t e r \r \t C M P \t B u
0026600 f L e n , 0 \r \t J E \t C L R 0
0026620 7 \r \t M O V \t B P , 0 \r \t M O
0026640 V \t S I , B u f L e n \r \t C A
0026660 L L \t N u m C h e c k \r \t J C \t
0026700 C L R 0 8 \r \t P O P \t A X \r \t J
0026720 M P \t Q P r \t ; b a d n u m b
0026740 e r ? \r C L R 0 8 : \t M O V \t B
0026760 X , 376 001 \0 326 325 T a r g S p a c
0027000 e \r \t J M P \t C S : W r i t e T
0027020 a b [ B X ] \r \r W r i t e T a b
0027040 \t L A B E L \t W O R D \r \t D W \t
0027060 W r i t e I O , W r i t e M e
0027100 m , W r i t e R e g \r \r W r i
0027120 t e I O : \t M O V \t D X , T a
0027140 r g O f f s e t \r \t O U T \t D X
0027160 , A X \r \t J M P \t C L R 0 7 \r
0027200 \r W r i t e M e m : \t M O V \t E
0027220 S , T a r g S e g \r \t M O V \t B
0027240 X , T a r g O f f s e t \r \t M
0027260 O V \t E S : [ B X ] , A X \r \t
0027300 J M P \t C L R 0 7 \r W r i t e R
0027320 e g : \t M O V \t B X , T a r g
0027340 O f f s e t \r \t M O V \t R e g S
0027360 a v e [ B X ] , 376 001 \0 362 022 A X
0027400 \r C L R 0 7 : \t P O P \t D X \r \t
0027420 C M P \t D L , c r \r \t J E \t C
0027440 L R 0 9 \r \t C A L L \t P r o m p
0027460 t \r C L R 0 9 : \t M O V \t A X ,
0027500 D X \r \t M O V \t B u f L e n ,
0027520 0 \r \t J M P \t M a i n 0 2 \r \r
0027540 Q P r : \t M O V \t A L , " "
0027560 \r \t C A L L \t P u t C h a r \r \t
0027600 M O V \t A L , " ? " \r \t C A L
0027620 L \t P u t C h a r \r \t C A L L \t
0027640 P r o m p t \r \t J M P \t M a i n
0027660 0 1 \r \r ; C o m e h e r e o
0027700 n a C t r l B r e a k i n
0027720 t e r r u p t \r C B r k : \t C A
0027740 L L \t S a v e R e g s \r \t C A L
0027760 L \t B P S w a p \r \t M O V 376 001 \0
0030000 032 | \t A L , " C " \r \t J M P \t
0030020 T e r m 0 0 \r ; C o m e h e r
0030040 e w h e n t h e d e b u g
0030060 e e t e r m i n a t e s \r T e
0030100 r m : \t C A L L \t S a v e R e g
0030120 s \r \t C A L L \t B P S w a p \r \t
0030140 M O V \t A L , " T " \r T e r m
0030160 0 0 : \t C A L L \t C R L F \r \t C
0030200 A L L \t P u t C h a r \r \t M O V
0030220 \t A L , " * " \r \t C A L L \t P
0030240 u t C h a r \r \t J M P \t M a i n
0030260 0 1 \r \r D D M a i n \t E N D P \r
0030300 \r ; * * * * * * * * * * * * * *
0030320 * * * * * * * * * * * * * * * *
*
0030400 * * 376 001 \0 370 376 * * * * * \r B P S
0030420 w a p \t P R O C \t N e a r \t ; c
0030440 h e c k f o r b r e a k s
0030460 s e t , c l e a r t h e m
0030500 i f s o \r \t C M P \t B r o k e
0030520 n , 0 \r \t J E \t B P S 0 0 \r \t
0030540 C A L L \t B P E x c h a n g e \r
0030560 B P S 0 0 : \t R E T \r B P S w a
0030600 p \t E N D P \r \r ; * * * * * * *
0030620 * * * * * * * * * * * * * * * *
*
0030700 * * * * * * * * * * * * * * \r P
0030720 r i n t R e g N a m e \t P R O C
0030740 \t N e a r \r \t M O V \t A L , C
0030760 S : R e g T a b B + 1 [ B X ] \r
0031000 \t C A L L \t P 376 001 \0 261 035 u t C h
0031020 a r \r \t M O V \t A L , C S : R
0031040 e g T a b B [ B X ] \r \t C A L L
0031060 \t P u t C h a r \r \t R E T \r P r
0031100 i n t R e g N a m e \t E N D P \r
0031120 \r ; * * * * * * * * * * * * * *
0031140 * * * * * * * * * * * * * * * *
*
0031220 * * * * * * * \r S a v e R e g s
0031240 \t P R O C \t N e a r \r ; c a l l
0031260 e d w h e n d e b u g g e e
0031300 r e t u r n s v i a i n t
0031320 e r r u p t . S a v e d e
0031340 b u g e e ' s r e g i s t e r
0031360 s . \r ; W e a r e o p e r a
0031400 t i n g w i t h t h 376 001 \0 340
0031420 C e d e b u g g e e ' s s t
0031440 a c k . \r \t P U S H \t D S \r \t P
0031460 U S H \t A X \r \t M O V \t A X ,
0031500 D a t a \r \t M O V \t D S , A X
0031520 \r \t M O V \t R e g B X , B X \r
0031540 \t M O V \t R e g C X , C X \r \t
0031560 M O V \t R e g D X , D X \r \t M
0031600 O V \t R e g B P , B P \r \t M O
0031620 V \t R e g S I , S I \r \t M O V
0031640 \t R e g D I , D I \r \t M O V \t
0031660 R e g E S , E S \r \t P O P \t A
0031700 X \r \t M O V \t R e g A X , A X
0031720 \r \t P O P \t A X \r \t M O V \t R e
0031740 g D S , A X \r \t P O P \t B X \t
0031760 ; S a v e R e g s ' r e t u r
0032000 n l i n k \r \t P O P \t A X \t ;
0032020 d 376 001 \0 332 f e b u g e e I P ,
0032040 C S , F l a g s \r \t M O V \t
0032060 R e g I P , A X \r \t P O P \t A
0032100 X \r \t M O V \t R e g C S , A X
0032120 \r \t P O P \t A X \r \t M O V \t R e
0032140 g F R , A X \r \t M O V \t R e g
0032160 S S , S S \t ; d e b u g e e '
0032200 s s t a c k s e g \r \t M O V
0032220 \t R e g S P , S P \t ; d e b u
0032240 g e e ' s s p \r \t M O V \t A X
0032260 , S t a c k \t ; s w i t c h
0032300 t o o u r s t a c k \r \t M O
0032320 V \t S S , A X \r \t M O V \t S P
0032340 , D S t k p \r \t P U S H \t B X
0032360 \r ; r e s t o r e t h e c t
0032400 r l - b r e a k i n t e r r u
0032420 p t v e c 376 001 \0 277 : t o r \r \t
0032440 M O V \t E S , P S P S e g \r \t
0032460 M O V \t A X , E S : C B r k
0032500 I P \r \t M O V \t C X , E S :
0032520 C B r k C S \r \t M O V \t B X ,
0032540 C B r k I n t N o \r \t C A L L \t
0032560 S e t I n t \r \t R E T \r S a v e
0032600 R e g s \t E N D P \r \r ; * * * *
0032620 * * * * * * * * * * * * * * * *
*
0032720 * \r P r o m p t \t P R O C \t N e
0032740 a r \r \t C A L L \t C R L F \r \t M
0032760 O V \t A L , " * " \r \t C A L L
0033000 \t P u t C h a r \r \t R E T \r P r
0033020 o m p t \t E N D P \r \r 376 001 \0 , 205
0033040 ; * * * * * * * * * * * * * * *
0033060 * * * * * * * * * * * * * * * *
*
0033140 * * * * * * \r G e t L i n e \t P
0033160 R O C N e a r \r \t M O V \t B u
0033200 f L e n , 0 \t ; c l e a r i
0033220 n p u t b u f f e r \r \r G l 0
0033240 0 : \t M O V \t A H , 0 \r \t I N
0033260 T \t 1 6 h \t ; c h a r a c t e r
0033300 t o A L \r \r \t C M P \t A L ,
0033320 2 0 h \r \t J G \t G l 0 1 \t ; j
0033340 u m p i f n o n - c o n t r
0033360 o l c h a r \r \t J E \t G l 0 2
0033400 \t ; j u m p i f s p a c e \r
0033420 \t C M P \t A L , 8 h \t ; c h e
0033440 376 001 \0 6 ( c k f o r b a c k
0033460 s p a c e \r \t J E \t G l 0 3 \r \t
0033500 R E T \t \t ; n o t b a c k s p
0033520 a c e , r e t u r n \r G l 0 3
0033540 : \t C M P \t B u f L e n , 0 \r
0033560 \t J E \t G l 0 0 \t ; j u m p i
0033600 f b u f f e r e m p t y \r \t
0033620 D E C \t B u f L e n \r \t M O V \t
0033640 A L , 8 h \t ; e c h o B S ,
0033660 S P , B S \r \t C A L L \t P u t C
0033700 h a r \r \t M O V \t A L , 2 0 h
0033720 \r \t C A L L \t P u t C h a r \r \t
0033740 M O V \t A L , 8 h \r \t C A L L
0033760 \t P u t C h a r \r \t J M P \t G l
0034000 0 0 \r \r G l 0 1 : \t C M P \t A L
0034020 , 7 A h \t ; c h e c k f o r
0034040 u p p e 376 001 \0 q } r c a s e
0034060 \r \t J G \t G l 0 4 \r \t C M P \t A
0034100 L , 6 1 h \r \t J L \t G l 0 4 \r
0034120 \t S U B \t A L , 2 0 h \t ; m a
0034140 k e l o w e r i n t o u p
0034160 p e r \r G l 0 4 : \t M O V \t B X
0034200 , B u f L e n \t ; b u f f e r
0034220 t h e c h a r a c t e r \r \t
0034240 M O V \t B u f [ B X ] , A L \r
0034260 \t C M P \t B X , M a x B u f L
0034300 e n \r \t J G E \t G l 0 2 \t ; d o
0034320 n ' t o v e r f l o w b u f
0034340 f e r \r \t I N C \t B u f L e n \r
0034360 G l 0 2 : \t C A L L \t P u t C h
0034400 a r \t ; e c h o \r \t J M P \t G l
0034420 0 0 \r G e t L i n e \t E N D P \r
0034440 \r ; * * * * * * * * 376 001 \0 337 225 *
0034460 * * * * * * * * * * * * * * * *
*
0034540 * * * * * * * * * * * * \r N u m
0034560 C h e c k \t P R O C \t N e a r \r
0034600 ; I f B u f [ B P . . S I - 1
0034620 ] r e p r e s e n t s a h
0034640 e x n u m b e r , r e t u r
0034660 n \r ; t h e n u m b e r i n
0034700 A X a n d s e t c a r r
0034720 y . I f n o t , c l e a
0034740 r c a r r y . \r \t C M P \t B P
0034760 , S I \r \t J E \t N c 0 3 \t ; z
0035000 e r o l e n g t h ? \r \t M O V
0035020 \t C L , 4 \r \t M O V \t A X ,
0035040 0 \r N c 0 0 : \t M O V \t B L , 376
0035060 001 \0 252 k B u f [ B P ] \r \t C M
0035100 P \t B L , " 0 " \r \t J L \t N c
0035120 0 3 \r \t C M P \t B L , " 9 " \r
0035140 \t J G \t N c 0 1 \r \t S U B \t B L
0035160 , " 0 " \r \t J M P \t N c 0 2 \r
0035200 N c 0 1 : \t C M P \t B L , " A
0035220 " \r \t J L \t N c 0 3 \r \t C M P \t
0035240 B L , " F " \r \t J G \t N c 0 3
0035260 \r \t S U B \t B L , " A " -
0035300 1 0 \r N c 0 2 : \t S H L \t A X ,
0035320 C L \r \t O R \t A L , B L \r \t
0035340 I N C \t B P \r \t C M P \t B P ,
0035360 S I \r \t J L \t N c 0 0 \r \t S T C
0035400 \r \t R E T \r N c 0 3 : \t C L C \r
0035420 \t R E T \r N u m C h e c k \t E N
0035440 D P \r \r ; * * * * * * * * * * *
0035460 * * * * 376 001 \0 C 263 * * * * * * *
0035500 * * * * * * * * * * * * * * * *
*
0035540 * * * * * * * * * * * * * * * \r
0035560 R e g C h e c k \t P R O C N e
0035600 a r \r ; I f B u f [ B P . . B
0035620 P + 1 ] r e p r e s e n t s
0035640 a r e g i s t e r , r e t u
0035660 r n t h e i n d e x \r ; o f
0035700 t h e r e g i s t e r i n
0035720 B X a n d s e t c a r r
0035740 y . I f n o t , c l e a
0035760 r c a r r y \r \t M O V \t A H ,
0036000 B u f [ B P ] \r \t M O V \t A L
0036020 , B u f + 1 [ B P ] \r \t M O V
0036040 \t B X , 0 \r R c 0 1 : \t C M P
0036060 \t A X , C S : R 376 001 \0 253 243 e g
0036100 T a b [ B X ] \r \t J E \t R c 0 2
0036120 \r \t A D D \t B X , 2 \r \t C M P
0036140 \t B X , O f f s e t R e g T
0036160 a b E n d - O f f s e t R
0036200 e g T a b \r \t J L \t R c 0 1 \r \t
0036220 C L C \r \t R E T \r R c 0 2 : \t S
0036240 T C \r \t R E T \r R e g C h e c k
0036260 \t E N D P \r \r ; * * * * * * * *
0036300 * * * * * * * * * * * * * * * *
*
0036360 * * * * * * * * * * * * * \r C h
0036400 k D s k B u f \t P R O C \t N E A
0036420 R \r \t P U S H \t A X \r \t A D D \t
0036440 B X , 2 \r \t C M P \t B X , 8
0036460 0 h \r \t J L \t C D B 0 1 \r \t 376 001
0036500 \0 205 302 M O V \t A H , 1 4 h \t ;
0036520 s e q u e n t i a l d i s k
0036540 r e a d \r \t I N T \t 2 1 h \r \t M
0036560 O V \t B X , 0 \r C D B 0 1 : \t
0036600 P O P \t A X \r \t R E T \r C h k D
0036620 s k B u f \t E N D P \r \r R e g T
0036640 a b \t L A B E L \t W O R D \r R e
0036660 g T a b B \t L A B E L \t B Y T E
0036700 \r \t D W \t " A X " , " B X " ,
0036720 " C X " , " D X " , " S P
0036740 " , " B P " , " S I " , "
0036760 D I " \r \t D W \t " C S " , " D
0037000 S " , " S S " , " E S " ,
0037020 " I P " , " F R " , " X S "
0037040 , " Y S " \r R e g T a b E n d
0037060 \t L A B E L \t W O R D \r \r ; * *
0037100 * * * 376 001 \0 252 364 * * * * * * * *
0037120 * * * * * * * * * * * * * * * *
*
0037200 * * * * * * * * \r P u t N u m \t
0037220 P R O C \t N e a r \r ; P r i n t
0037240 A X a s a f o u r d i
0037260 g i t h e x n u m b e r \r \t
0037300 P U S H \t B X \r \t P U S H \t C X
0037320 \r \t M O V \t B X , A X \r \t M O
0037340 V \t C L , 4 \r \t C A L L \t P n
0037360 0 1 \r \t C A L L \t P n 0 1 \r \t C
0037400 A L L \t P n 0 1 \r \t C A L L \t P
0037420 n 0 1 \r \t P O P \t C X \r \t P O P
0037440 \t B X \r \t R E T \r P n 0 1 : \t R
0037460 O L \t B X , C L \r \t M O V \t A
0037500 X , 0 F h \r \t 376 001 \0 p E A N D
0037520 \t A X , B X \r \t C M P \t A X ,
0037540 0 A h \r \t J G E \t P n 0 2 \r \t
0037560 A D D \t A X , " 0 " \r \t J M P
0037600 \t P n 0 3 \r P n 0 2 : \t A D D \t
0037620 A X , " A " - 0 A h \r P N
0037640 0 3 : \t C A L L \t P u t C h a r
0037660 \r \t R E T \r P u t N u m \t E N D
0037700 P \r \r ; * * * * * * * * * * * *
0037720 * * * * * * * * * * * * * * * *
*
0040000 * * * * * * * * * \r C R L F \t P
0040020 R O C \t N e a r \r \t P U S H \t A
0040040 X \r \t M O V \t A L , c r \r \t C
0040060 A L L \t P u t C h a r \r \t M O V
0040100 \t A L , l f \r \t C A L L 376 001 \0
0040120 343 k \t P u t C h a r \r \t P O P \t
0040140 A X \r \t R E T \r C R L F \t E N D
0040160 P \r \r ; * * * * * * * * * * * *
0040200 * * * * * * * * * * * * * * * *
*
0040260 * * * * * * * * * \r P u t C h a
0040300 r \t P R O C \t N e a r \r \t P U S
0040320 H \t A X \r \t M O V \t A H , 1 4
0040340 \r \t P U S H \t B X \r \t M O V \t B
0040360 X , 0 \r \t P U S H \t C X \r \t P
0040400 U S H \t B P \r \t P U S H \t S I \r
0040420 \t P U S H \t D I \r \t M O V \t C X
0040440 , S P \r \t I N T \t 1 0 h \r \t M
0040460 O V \t S P , C X \r \t P O P \t D
0040500 I \r \t P O P \t S I \r \t P O P \t B
0040520 P \r 376 001 \0 246 o \t P O P \t C X \r \t
0040540 P O P \t B X \r \t P O P \t A X \r \t
0040560 R E T \r P u t C h a r \t E N D P
0040600 \r \r ; * * * * * * * * * * * * *
0040620 * * * * * * * * * * * * * * * *
*
0040700 * * * * * * * * \r P r i n t R e
0040720 g s \t P R O C \t N e a r \r \t C A
0040740 L L \t C R L F \r \t M O V \t B X ,
0040760 0 \r P R E 0 0 : \t C A L L \t P
0041000 r i n t R e g N a m e \r \t M O V
0041020 \t A L , " " \r \t C A L L \t P
0041040 u t C h a r \r \t C A L L \t P u t
0041060 C h a r \r \t C A L L \t P u t C h
0041100 a r \r \t A D D \t B X , 2 \r \t C
0041120 M P \t B X , 376 001 \0 260 211 2 8 \t ;
0041140 1 4 r e g i s t e r s t o
0041160 p r i n t \r \t J L \t P R E 0 0 \r
0041200 \t C A L L \t C R L F \r \t M O V \t
0041220 B X , 0 \r P R E 0 1 : \t M O V
0041240 \t A X , R e g S a v e [ B X ]
0041260 \r \t C A L L \t P u t N u m \r \t M
0041300 O V \t A L , " " \r \t C A L L
0041320 \t P u t C h a r \r \t A D D \t B X
0041340 , 2 \r \t C M P \t B X , 2 8 \r
0041360 \t J L \t P R E 0 1 \r \t R E T \r P
0041400 r i n t R e g s \t E N D P \r \r ;
0041420 * * * * * * * * * * * * * * * *
*
0041520 * * * * * \r P a r s e \t 376 001 \0 317
0041540 & P R O C N e a r \r ; T r y
0041560 t o p a r s e t h e i n p
0041600 u t b u f f e r c o n t e n
0041620 t s . I f s u c c e s s f
0041640 u l , s e t \r ; c a r r y a
0041660 n d c h a n g e T a r g S p
0041700 a c e , T a r g S e g , a n
0041720 d T a r g O f f s e t . \r ; I
0041740 f n o t s u c c e s s f u l
0041760 , c l e a r c a r r y . \r \t
0042000 C M P \t B u f L e n , 0 \r \t J
0042020 N E \t P r 0 1 \r \t S T C \r \t R E
0042040 T \r P r 0 1 : \t C M P \t B u f L
0042060 e n , 2 \r \t J N E \t P r 0 2 \r
0042100 \t M O V \t B P , 0 \r \t C A L L
0042120 \t R e g C h e c k \r \t J N C \t P
0042140 r 376 001 \0 362 0 2 \t ; j u m p i
0042160 f n o t a r e g i s t e r
0042200 n a m e \r \t M O V \t T a r g S
0042220 p a c e , R e g S p a c e \r \t
0042240 M O V \t T a r g O f f s e t ,
0042260 B X \r \t S T C \r \t R E T \r P r 0
0042300 2 : \t C M P \t B u f , " I " \t
0042320 ; c h e c k f o r I O S p
0042340 a c e \r \t J N E \t P r 0 3 \r \t M
0042360 O V \t B P , 1 \r \t M O V \t S I
0042400 , B u f L e n \r \t C A L L \t N
0042420 u m C h e c k \t ; g e t o f f
0042440 s e t ( m a y b e ) \r \t J N C
0042460 \t P r 0 3 \r \t M O V \t T a r g S
0042500 p a c e , I O S p a c e \r \t J
0042520 M P \t P r 1 1 \r P r 0 3 : \t C L
0042540 D \t ; f i n 376 001 \0 O > d i n d
0042560 e x o f " : " i f p r e
0042600 s e n t \r \t M O V \t D I , O F
0042620 F S E T B u f \r \t M O V \t A X
0042640 , D S \r \t M O V \t E S , A X
0042660 \r \t M O V \t A L , " : " \r \t M
0042700 O V \t C X , B u f L e n \r \t R
0042720 E P N E \t S C A S B \r \t J E \t P
0042740 r 0 4 ; Z F m e a n s " :
0042760 " w a s f o u n d . D I
0043000 h a s o f f s e t + 1 \r \t M
0043020 O V \t B P , 0 \t ; c h e c k
0043040 f o r i s o l a t e d n u m
0043060 b e r \r \t M O V \t S I , B u f
0043100 L e n \r \t C A L L \t N u m C h e
0043120 c k \r \t J N C \t P r 1 0 \r \t J M
0043140 P \t P r 1 2 \r P r 0 4 376 001 \0 255 030
0043160 : \t S U B \t D I , O F F S E T
0043200 B u f \r \t C M P \t D I , 3 \r
0043220 \t J N E \t P r 0 5 \r \t M O V \t B
0043240 P , 0 ; s t r i n g i s
0043260 o f f o r m x x : . . .
0043300 C h e c k f o r r e g i s
0043320 t e r n a m e \r \t C A L L \t R
0043340 e g C h e c k \r \t J N C \t P r 0
0043360 5 \r \t M O V \t A X , R e g S a
0043400 v e [ B X ] \r \t J M P \t P r 0 6
0043420 \r P r 0 5 : \t M O V \t B P , 0
0043440 \t ; c h e c k f o r s e g m
0043460 e n t a n u m b e r \r \t M O
0043500 V \t S I , D I \r \t D E C \t S I
0043520 \r \t C A L L \t N u m C h e c k \r
0043540 \t J N C \t P r 1 0 \r P r 0 6 : \t
0043560 376 001 \0 361 P U S H \t A X \t ; s a
0043600 v e s e g m e n t f o r l
0043620 a t e r \r \t M O V \t A X , B u
0043640 f L e n \r \t S U B \t A X , D I
0043660 \r \t C M P \t A X , 2 \t ; c h e
0043700 c k f o r o f f s e t a
0043720 r e g i s t e r n a m e \r \t J
0043740 N E \t P r 0 7 \r \t M O V \t B P ,
0043760 D I \r \t C A L L \t R e g C h e
0044000 c k \r \t J N C \t P r 0 7 \r \t M O
0044020 V \t A X , R e g S a v e [ B X
0044040 ] \r \t J M P \t P r 0 8 \r P r 0 7
0044060 : \t M O V \t B P , D I \t ; c h
0044100 e c k f o r o f f s e t a
0044120 n u m b e r \r \t M O V \t S I ,
0044140 B u f L e n \r \t C A L L \t N u
0044160 m C h e c 376 001 \0 ' } k \r \t J N C
0044200 \t P r 0 9 \r P r 0 8 : \t P O P \t
0044220 B X \r \t M O V \t T a r g S e g ,
0044240 B X \r P r 1 2 : \t M O V \t T a
0044260 r g S p a c e , M e m S p a c
0044300 e \r P r 1 1 : \t M O V \t T a r g
0044320 O f f s e t , A X \r P r 1 3 :
0044340 \t S T C \r \t R E T \r \r P r 0 9 :
0044360 \t P O P \t A X \r P r 1 0 : \t C L
0044400 C \r \t R E T \r P a r s e \t E N D
0044420 P \r \r ; * * * * * * * * * * * *
0044440 * * * * * * * * * * * * * * * *
*
0044520 * * * * * * * * * \r S c a n B P
0044540 \t P R O C \t N e a r \r ; S c a n
0044560 B P i s u s e d 376 001 \0 210 003
0044600 t o e n u m e r a t e t h e
0044620 e n t r i e s i n t h e
0044640 b r e a k p o i n t t a b l e
0044660 \r ; a n d c a l l a p r o
0044700 c e d u r e w h e n a m a
0044720 t c h i s f o u n d . \r \r ;
0044740 O n e n t r y , C X , D X
0044760 c o n t a i n s a s e g m e
0045000 n t , o f f s e t b r e a k p
0045020 o i n t a d d r e s s , a n
0045040 d \r ; S I , D I c o n t a i n
0045060 s a c o m p a r i s o n m
0045100 a s k t o b e a p p l i e
0045120 d t o e a c h t a b l e
0045140 e n t r y . \r ; A X c o n t a
0045160 i n s 0 i f t h e m a 376
0045200 001 \0 307 211 t c h i s t o o c
0045220 c u r o n u n u s e d e n
0045240 t r i e s , 1 0 h i f \r ; i
0045260 n - u s e e n t r i e s a r
0045300 e t o b e m a t c h e d .
0045320 \r ; B P c o n t a i n s t h
0045340 e o f f s e t o f t h e
0045360 ( n e a r ) p r o c t o b
0045400 e c a l l e d o n a m a
0045420 t c h . \r \r ; F i r s t , C X
0045440 , D X a r e a d j u s t e d
0045460 s o t h a t t h e o f f
0045500 s e t i s b e t w e e n 0
0045520 a n d 1 5 , t h e n \r ; f
0045540 o r e a c h e n t r y i n
0045560 t h e b r e a k p o i n t
0045600 t a b l 376 001 \0 353 \r e , \r ; (
0045620 S I a n d B r e a k S e g m
0045640 e n t = C X ) a n d ( D
0045660 I a n d B r e a k O f f s e
0045700 t = D X ) \r ; i s c a l c
0045720 u l a t e d . I f t h i s
0045740 q u a n t i t y i s t r u
0045760 e , t h e p r o c i s c
0046000 a l l e d . \r \t P U S H \t D X \r
0046020 \t A N D \t D X , 0 F h \t ; i s
0046040 o l a t e o f f s e t \r \t O R
0046060 \t D X , A X \t ; m e r g e i
0046100 n - u s e b i t \r \t P O P \t A
0046120 X \r \t S H R \t A X , 1 \r \t S H
0046140 R \t A X , 1 \r \t S H R \t A X ,
0046160 1 \r \t S H R \t A X , 1 \r \t A
0046200 D D \t C X , A X 376 001 \0 l 256 \t ;
0046220 C X n o w h a s b r e a k
0046240 s e g m e n t \r \t M O V \t B X
0046260 , 0 \r S c B P 0 0 : \t M O V \t
0046300 A X , B P T a b l e [ B X ]
0046320 \r \t A N D \t A X , S I \r \t C M
0046340 P \t A X , C X \r \t J N E \t S c
0046360 B P 0 1 \r \t M O V \t A X , B P
0046400 T a b l e + 2 [ B X ] \r \t A N
0046420 D \t A X , D I \r \t C M P \t A X
0046440 , D X \r \t J N E \t S c B P 0 1
0046460 \r \t C A L L \t B P \r S c B P 0 1
0046500 : \t A D D \t B X , 4 \r \t C M P
0046520 \t B X , 4 * B P L e n \r \t J L
0046540 \t S c B P 0 0 \r \t R E T \r S c a
0046560 n B P \t E N D P \r \r ; * * * * *
0046600 * * * * * * * * * * * * * * 376 001
0046620 \0 L 367 * * * * * * * * * * * * *
0046640 * * * * * * * * * * * * * * * *
*
0046700 * * * * * \r B P E x c h a n g e
0046720 \t P R O C \t N e a r \r ; T h i s
0046740 p r o c e d u r e i s c a
0046760 l l e d t o p l a n t o r
0047000 r e m o v e a l l i n - u
0047020 s e b r e a k p o i n t s \r \t
0047040 M O V \t A X , 1 0 h \t ; m a t
0047060 c h o n i n - u s e = 1 \r
0047100 \t M O V \t C X , 0 \r \t M O V \t
0047120 D X , C X \r \t M O V \t S I ,
0047140 C X \t ; m a s k o u t a l l
0047160 o f B P e n t r y e x c
0047200 e p t i n - u s e b i t \r \t
0047220 M O V 376 001 \0 C \f \t D I , A X \r
0047240 \t M O V \t B P , O F F S E T
0047260 B P E x 0 0 \t ; c a l l - b a c
0047300 k p r o c \r \t C A L L \t S c a
0047320 n B P \r \t R E T \r \r B P E x 0 0
0047340 : \t M O V \t A X , B P T a b l
0047360 e + 2 [ B X ] \r \t M O V \t E S
0047400 , B P T a b l e [ B X ] \r \t
0047420 P U S H \t B X \r \t M O V \t B X ,
0047440 A X \r \t A N D \t B X , 0 F h
0047460 \t ; i s o l a t e o f f s e t
0047500 o f b r e a k b y t e \r \t
0047520 X C H G \t A H , B Y T E P T
0047540 R E S : [ B X ] \r \t P O P \t
0047560 B X \r \t M O V \t B P T a b l e +
0047600 2 [ B X ] , A X \r \t R E T \r
0047620 \r B P E x c h a 376 001 \0 336 364 n g e
0047640 \t E N D P \r \r ; * * * * * * * *
0047660 * * * * * * * * * * * * * * * *
*
0047740 * * * * * * * * * * * * * \r S e
0047760 t B P \t P R O C \t N e a r \r ; S
0050000 e t a b r e a k p o i n t
0050020 a t T a r g S e g : T a r g O
0050040 f f s e t . \r ; I f s u c c e
0050060 s s f u l , s e t c a r r y
0050100 , e l s e c l e a r c a r
0050120 r y \r \t M O V \t A X , 1 0 h \t
0050140 ; c h e c k f o r b r e a k
0050160 p o i n t a l r e a d y s e
0050200 t \r \t M O V \t C X , T a r g S
0050220 e g \r \t M O V \t D X , T 376 001 \0
0050240 313 M a r g O f f s e t \r \t M O V
0050260 \t S I , 0 F F F F h \r \t M O V
0050300 \t D I , 1 F h \r \t M O V \t B P
0050320 , O F F S E T S B P 0 0 \r \t
0050340 C A L L \t S c a n B P \r \t M O V
0050360 \t A X , 0 \t ; s e t b r e a
0050400 k p o i n t . L o o k f o
0050420 r u n u s e d t a b l e e
0050440 n t r y \r \t M O V \t C X , A X
0050460 \r \t M O V \t D X , A X \r \t M O
0050500 V \t S I , A X \r \t M O V \t D I
0050520 , 1 0 h \r \t M O V \t B P , O
0050540 F F S E T S B P 0 3 \r \t C A L
0050560 L \t S c a n B P \r \t C L C
0050600 ; n o u n u s e
0050620 d e n t r i e s \r \t R E T \r S
0050640 B P 376 001 \0 j 341 0 3 : \t P O P \t A
0050660 X \t ; h a v e a n u n u s e
0050700 d e n t r y . F i x s t
0050720 a c k \r \t P O P \t A X \r \t M O V
0050740 \t A X , T a r g O f f s e t \r
0050760 \t A N D \t A X , 0 F h \r \t O R
0051000 \t A X , 0 C C 1 0 h \t ; b r e
0051020 a k i n s t p l u s i n -
0051040 u s e \r \t M O V \t B P T a b l e
0051060 + 2 [ B X ] , A X \r \t M O V
0051100 \t A X , T a r g O f f s e t \r
0051120 \t M O V \t C L , 4 \r \t S H R \t
0051140 A X , C L \r \t A D D \t A X ,
0051160 T a r g S e g \r \t M O V \t B P T
0051200 a b l e [ B X ] , A X \r \t S
0051220 T C \r \t R E T \r \r S B P 0 0 : \t
0051240 P O P \t A X \t 376 001 \0 M v ; m a t
0051260 c h o n t h e b r e a k
0051300 a d d r e s s . P o p t w
0051320 o r e t u r n \r ; l i n k s \r
0051340 \t P O P \t A X \r \t S T C \r \t R E
0051360 T \r S e t B P \t E N D P \r \r ; *
0051400 * * * * * * * * * * * * * * * *
*
0051500 * * * * \r P r i n t B r e a k s
0051520 \t P R O C \t N e a r \r ; p r i n
0051540 t a l l b r e a k p o i n t
0051560 l o c a t i o n s \r \t M O V \t
0051600 A X , 1 0 h \r \t M O V \t C X ,
0051620 0 \r \t M O V \t D X , C X \t ;
0051640 l o o k f o r i n - 376 001 \0
0051660 \v u s e B P T a b l e e n t
0051700 r i e s \r \t M O V \t S I , C X
0051720 \r \t M O V \t D I , 1 0 h \r \t M
0051740 O V \t B P , O F F S E T P B
0051760 r k 0 0 \r \t C A L L \t S c a n B
0052000 P \r \t R E T \r \r P B r k 0 0 : \t
0052020 M O V \t A L , " " \r \t C A L
0052040 L \t P u t C h a r \r \t M O V \t A
0052060 X , B P T a b l e [ B X ] \r
0052100 \t C A L L \t P u t N u m \r \t M O
0052120 V \t A X , " : " \r \t C A L L \t
0052140 P u t C h a r \r \t M O V \t A X ,
0052160 B P T a b l e + 2 [ B X ] \r
0052200 \t A N D \t A X , 0 F h \r \t C M
0052220 P \t A X , 0 A h \r \t J L \t P B
0052240 r k 0 1 \r \t A D D \t A X , " A
0052260 " 376 001 \0 332 242 - 0 A h \r \t J M
0052300 P \t P B r k 0 2 \r P B r k 0 1 :
0052320 \t A D D \t A X , " 0 " \r P B r
0052340 k 0 2 : \t C A L L \t P u t C h a
0052360 r \r \t R E T \r P r i n t B r e a
0052400 k s \t E N D P \r \r ; * * * * * *
0052420 * * * * * * * * * * * * * * * *
*
0052500 * * * * * * * * * * * * * * * \r
0052520 S e t I n t \t P R O C \t N e a r
0052540 \r ; A X , C X h a s I P , C
0052560 S f o r i n t e r r u p t
0052600 r o u t i n e , B X h a s
0052620 i n t e r r u p t n u m b e r
0052640 \r ; T h i s i s a D O S
0052660 c a l l , 376 001 \0 310 . b u t i
0052700 t a p p e a r s n o t t o
0052720 w o r k \r \t P U S H \t A X \r \t
0052740 M O V \t A X , 0 \r \t M O V \t E S
0052760 , A X \r \t P O P \t A X \r \t S H
0053000 L \t B X , 1 \r \t S H L \t B X ,
0053020 1 \r \t M O V \t W O R D P T R
0053040 E S : [ B X ] , A X \t ; I
0053060 P \r \t M O V \t W O R D P T R
0053100 E S : [ B X + 2 ] , C X \t ;
0053120 C S \r \t R E T \r S e t I n t \t E
0053140 N D P \r \r ; * * * * * * * * * *
0053160 * * * * * * * * * * * * * * * *
*
0053240 * * * * * * * * * * * \r I n i t
0053260 B P T a b l e \t P R O 376 001 \0 b 347
0053300 C \t N e a r \r \t M O V \t B X ,
0053320 0 \r I B p T 0 0 : \t M O V \t W O
0053340 R D P T R B P T a b l e + 2
0053360 [ B X ] , 0 \r \t A D D \t B X
0053400 , 4 \r \t C M P \t B X , 4 * B
0053420 P L e n \r \t J L \t I B p T 0 0 \r
0053440 \t R E T \r I n i t B P T a b l e
0053460 \t E N D P \r \r ; * * * * * * * *
0053500 * * * * * * * * * * * * * * * *
*
0053560 * * * * * * * * * * * * * \r S e
0053600 n d C S \t P R O C \t N e a r \r ;
0053620 S e n d t h e c o n t e n t
0053640 s o f t h e D e b u g e e
0053660 c o d e s e g m e n t t o
0053700 376 001 \0 8 g t h e P r o l o g
0053720 \r ; p r o g r a m m e r i n
0053740 " P " f o r m a t . O n
0053760 e n t r y , R e g A X c o n
0054000 t a i n s 0 i f \r ; e v e n
0054020 b y t e s a r e t o b e
0054040 s e n t , 1 i f o d d
0054060 b y t e s a r e t o b e
0054100 s e n t . \r ; R e g B X c o n
0054120 t a i n s t h e l e n g t h
0054140 o f C S ( f r o m t h e
0054160 l i n k e r . M A P f i l
0054200 e ) \r ; P r o l o g " P " f
0054220 o r m a t t a k e s t w o
0054240 A S C I I c h a r a c t e r s
0054260 ( 0 - F ) p e r b y t e .
0054300 \r ; T h e 376 001 \0 t 302 i n i t i
0054320 a l h e a d e r i s s t a
0054340 r t a d d r e s s ( a l w a
0054360 y s 0 , f o u r c h a r a
0054400 c t e r s ) , \r ; e n d a d d
0054420 r e s s ( f o u r c h a r a
0054440 c t e r s ) , 3 s p a c e s
0054460 f o l l o w e d b y " P "
0054500 , f o l l o w e d \r ; b y e
0054520 n d A d d r e s s - s t a r
0054540 t A d d r e s s + 1 b y t
0054560 e s ( 2 c h a r a c t e r s
0054600 e a c h ) . \r \r \t M O V \t A L
0054620 , 0 \t ; s t a r t a d d r e
0054640 s s z e r o \r \t C A L L \t S e
0054660 n d B y t e \r \t C A L L \t S e n
0054700 d B y t e \r \t M O V 376 001 \0 S 226 \t
0054720 A X , R e g B X \t ; l e n g t
0054740 h o f C S \r \t M O V \t B X ,
0054760 A X \r \t A N D \t B X , 1 \t ;
0055000 g e t l s b \r \t A D D \t A X ,
0055020 B X \r \t S H R \t A X , 1 \t ;
0055040 n u m b e r o f b y t e s
0055060 t o s e n d \r \t M O V \t D X ,
0055100 A X \r \t S U B \t A X , 1 \t ;
0055120 e n d A d d r e s s \r \t M O V \t
0055140 C L , 8 \r \t R O L \t A X , C
0055160 L \t ; m s b ( e n d A d d r e s
0055200 s ) \r \t C A L L \t S e n d B y t
0055220 e \r \t R O L \t A X , C L \t ; l
0055240 s b ( e n d A d d r e s s ) \r \t
0055260 C A L L \t S e n d B y t e \r \t M
0055300 O V \t A L , " P " \r \t C A L 376
0055320 001 \0 x 305 L \t S e n d C h a r \r \t
0055340 M O V \t B X , R e g A X \t ; e
0055360 v e n / o d d i n d i c a t o
0055400 r \r \t M O V \t A X , R e g C S
0055420 \t ; d e b u g e e C S \r \t M O
0055440 V \t E S , A X \r S C S 0 0 : \t
0055460 M O V \t A L , B Y T E P T R
0055500 E S : [ B X ] \r \t C A L L \t
0055520 S e n d B y t e \r \t A D D \t B X
0055540 , 2 \r \t D E C \t D X \r \t J N E
0055560 \t S C S 0 0 \r \t R E T \r S e n d
0055600 C S \t E N D P \r \r ; * * * * * *
0055620 * * * * * * * * * * * * * * * *
*
0055700 * * * * * * * * * * * * * * * \r
0055720 S e n d 376 001 \0 X 352 B y t e \t P R
0055740 O C \t N e a r ; s e n d b y
0055760 t e i n A L a s t w o
0056000 A S C I I c h a r a c t e r s
0056020 \r \t P U S H \t A X \r \t S H R \t A
0056040 X , 1 \t ; s e n d m s b f
0056060 i r s t \r \t S H R \t A X , 1 \r
0056100 \t S H R \t A X , 1 \r \t S H R \t
0056120 A X , 1 \r \t C A L L \t S B y 0
0056140 0 \r \t P O P \t A X \r \t C A L L \t
0056160 S B y 0 0 \r \t R E T \r S B y 0 0
0056200 : \t P U S H \t A X \r \t P U S H \t
0056220 B X \r \t M O V \t B X , A X \r \t
0056240 A N D \t B X , 0 F h \r \t M O V
0056260 \t A L , C S : S B y T a b [ B
0056300 X ] \r \t C A L L \t S e n d C h a
0056320 r \r \t P O P \t B X 376 001 \0 s 310 \r \t
0056340 P O P \t A X \r \t R E T \r S B y T
0056360 a b \t L A B E L \t B Y T E \r \t D
0056400 B \t " 0 1 2 3 4 5 6 7 8 9 A B C
0056420 D E F " \r S e n d B y t e \t E N
0056440 D P \r \r ; * * * * * * * * * * *
0056460 * * * * * * * * * * * * * * * *
*
0056540 * * * * * * * * * * \r S e n d C
0056560 h a r \t P R O C \t N e a r \r \t C
0056600 A L L \t P u t C h a r \r \t P U S
0056620 H \t D X \r \t M O V \t D X , 0 \t
0056640 ; c o m c a r d 0 \r \t M O V
0056660 \t A H , 1 \r \t I N T \t 1 4 h \r
0056700 \t P O P \t D X \r \t R E T \r S e n
0056720 d C h a r \t E N D P \r \r C S 376 \0
0056740 024 233 241 e g \t E N D S \r \t E N D
0056760 D D M a i n \r 377 \0 \0 D a f C h k
0057000 . a s m \0 373 233 255 205 l \0 \0 376 001 \0 t
0057020 360 \r \t P A G E \t 6 6 , 1 3 2 \r
0057040 \t T I T L E \t D a f f o d i l
0057060 T e s t C o d e \r \t I N C L U
0057100 D E \t D a f f E Q s . d \r S t a
0057120 c k \t S E G M E N T \t S T A C K
0057140 \r \t A S S U M E \t S S : S t a c
0057160 k \r \t D B \t S t a c k S i z e
0057200 D U P ( ? ) \r T o p O f S t a
0057220 c k \t E Q U \t S t a c k S i z e
0057240 \r S t a c k \t E N D S \r \r D a t
0057260 a \t S E G M E N T \t P U B L I C
0057300 ' D a t a ' \r ; S a v e s
0057320 o m e r o o m f o r t h e
0057340 I n t e r r u p t V e c t o
0057360 r T a b l e \r I n t e r r u p
0057400 t T a b l e \t L A B E L \t F A R
0057420 \r 376 001 \0 302 346 \t D D \t 2 5 6 D U
0057440 P ( ? ) \r E n d O f I n t V e
0057460 c t o r \t L A B E L \t F A R \r E
0057500 n d O f D a t a \t L A B E L \t W
0057520 O R D \r D a t a \t E N D S \r \r C
0057540 o d e \t S E G M E N T \t P U B L
0057560 I C ' C o d e ' \r \t A S S U M
0057600 E \t C S : C o d e \r \t A S S U M
0057620 E \t D S : D a t a \r \t A S S U M
0057640 E \t S S : D a t a \r \r ; D a t
0057660 a i n t h e c o d e s e
0057700 g m e n t . \r u n k n o w n I n
0057720 t V e c t o r \t D D \t U n k n o
0057740 w n I n t \r \r \r I n i t \t L A B
0057760 E L \t F A R \r \t M O V \t D X ,
0060000 L M C S r e g \t ; S e t u p
0060020 l o w e r 376 001 \0 263 344 c h i p
0060040 s e l e c t \r \t M O V \t A X ,
0060060 L M C S v a l \r \t O U T \t D X
0060100 , A X \r \r \t M O V \t D X , M
0060120 M C S r e g \t ; S e t u p
0060140 m i d r a n g e c h i p s
0060160 e l e c t \r \t M O V \t A X , M
0060200 M C S v a l \r \t O U T \t D X ,
0060220 A X \r \r \t M O V \t D X , M P C
0060240 S r e g \t ; S e t u p m i
0060260 d r a n g e s i z e \r \t M O
0060300 V \t A X , M P C S v a l \r \t O
0060320 U T \t D X , A X \r \r \t M O V \t
0060340 D X , P A C S r e g \t ; S e
0060360 t u p p e r i p h r i a l
0060400 c h i p s e l e c t \r \t M O V
0060420 \t A X , P A C S v a 376 001 \0 344 *
0060440 l \r \t O U T \t D X , A X \r \r \t
0060460 M O V \t A X , R a m S t a r t
0060500 \t ; E s t a b l i s h a d d
0060520 r e s s i n g . \r \t M O V \t D S
0060540 , A X \r \t M O V \t A X , R a
0060560 m S i z e - S t a c k S i z
0060600 e \r \t M O V \t S S , A X \r \t M
0060620 O V \t S P , S t a c k S i z e
0060640 \r \r I n i t 1 0 : \t \t \t \t ; S
0060660 e t u p t o c l e a r t
0060700 h e R a m a t l o w c o
0060720 r e . \r \t M O V \t C X , O F F
0060740 S E T E n d O f D a t a \r \t S
0060760 H R \t C X , 1 \r \t M O V \t A X
0061000 , S E G D a t a \r \t M O V \t
0061020 E S , A X \t \t ; E S s h o
0061040 376 001 \0 255 211 u l d p o i n t t
0061060 o l o c a t i o n 0 i n \r
0061100 \t \t \t \t ; t h e D a f f o d
0061120 i l . \r \t X O R \t B X , B X \r
0061140 I n i t 2 0 : \r \t M O V \t W O R
0061160 D P T R E S : [ B X ] , 0
0061200 \t ; S e t t h e l o c a t
0061220 i o n t o 0 \r \t A D D \t B X
0061240 , 2 \r \t L O O P \t I n i t 2 0
0061260 \r \r \t M O V \t C X , O F F S E
0061300 T E n d O f I n t V e c t o r
0061320 \t ; T h i s c o d e s e t
0061340 s a l l \r \t S H R \t C X , 1
0061360 \r \t S H R \t C X , 1 \r \t X O R
0061400 \t S I , S I \t \t \t \t ; i n
0061420 t v e c t o r s t o p o i
0061440 n t t o 376 001 \0 317 216 \r \t M O V \t
0061460 A X , C S : u n k n o w n I n
0061500 t V e c t o r \t \t ; t h e
0061520 u n k n o w n i n t h a n d
0061540 l e r \r \t M O V \t B X , C S :
0061560 u n k n o w n I n t V e c t o r
0061600 + 2 \r I n i t 3 0 : \r \t M O
0061620 V \t E S : [ S I ] , A X \t ;
0061640 m o v e s e g m e n t o f
0061660 v e c t o r \r \t M O V \t E S : [
0061700 S I + 2 ] , B X \t ; m o
0061720 v e o f f s e t \r \t A D D \t S
0061740 I , 4 \r \t L O O P \t I n i t 3
0061760 0 \r \t P A G E \r I n i t C o m :
0062000 \r \t M O V \t A X , 2 6 \t ; S
0062020 e t b a u d r a t e t i m
0062040 e \r \t M O V \t D X , 376 001 \0 253 273
0062060 c o m B R M a x C n t B \r \t O U
0062100 T \t D X , A X \r \t M O V \t D X
0062120 , c o m B R M a x C n t A \r \t
0062140 O U T \t D X , A X \r \t M O V \t
0062160 D X , c o m B R C t l \r \t M O
0062200 V \t A X , 0 C 0 0 3 h \t ; C
0062220 o n t , A l t e r n a t e \r \t
0062240 O U T \t D X , A X \r \r ; S e
0062260 t u p 8 2 7 4 \r \t M O V \t A
0062300 L , 1 \t \t ; P o i n t t o
0062320 W R 1 \r \t O U T \t c o m C t l
0062340 , A L \r \t M O V \t A L , 0 \r
0062360 \t O U T \t c o m C t l , A L \t
0062400 ; S e t W R 1 t o 0 \r \t
0062420 M O V \t A L , 2 \t \t ; P o i
0062440 n t t o W R 2 \r \t O U T \t 376
0062460 001 \0 322 311 c o m C t l , A L \r \t
0062500 M O V \t A L , 0 \r \t O U T \t c
0062520 o m C t l , A L \t ; S e t
0062540 W R 2 t o 0 \r \t M O V \t A L
0062560 , 3 \t \t ; P o i n t t o
0062600 W R 3 \r \t O U T \t c o m C t l ,
0062620 A L \r \t M O V \t A L , 0 C 1
0062640 h \t ; E N a b l e R x \r \t O
0062660 U T \t c o m C t l , A L \r \t M
0062700 O V \t A L , 4 \t \t ; P o i n
0062720 t t o W R 4 \r \t O U T \t c o
0062740 m C t l , A L \r \t M O V \t A L
0062760 , 4 4 h \t \t ; 8 b i t n
0063000 o p a r i t y c l k / 1 6 \r
0063020 \t O U T \t c o m C t l , A L \r
0063040 \t M O V \t A L , 5 \t \t ; P o
0063060 i n t 376 001 \0 213 { t o W R 5 \r
0063100 \t O U T \t c o m C t l , A L \r
0063120 \t M O V \t A L , 6 4 h \t \t ;
0063140 8 b i t n o p a r i t y
0063160 e n a b l e T x \r \t O U T \t c
0063200 o m C t l , A L \r \r ; e c h o
0063220 c h a r a c t e r s f o r e
0063240 v e r \r m a i n : \t C A L L \t P
0063260 u t C h a r \r \t C A L L \t G e t
0063300 C h a r \r \t J M P \t M a i n \r \r
0063320 G e t C h a r \t P R O C \t N E A
0063340 R \r \t I N \t A L , c o m C t l
0063360 \t ; G e t c o m c h a n n
0063400 e l s t a t u s \r \t T E S T \t
0063420 A L , c o m R x A v a i l \r \t
0063440 J Z \t G e t C h a r \t ; W a i
0063460 t f o r c h a 376 001 \0 222 340 r a
0063500 c t e r \r \t I N \t A L , c o m
0063520 D a t a \t ; G e t t h e b
0063540 y t e \r \t R E T \r G e t C h a r
0063560 \t E N D P \r \r \r P u t C h a r \t
0063600 P R O C \t N E A R \r \t P U S H \t
0063620 A X \t \t ; S a v e t h e r
0063640 e g s \r P u t C h a r 1 0 : \r \t
0063660 I N \t A L , c o m C t l \t ;
0063700 S e e i f t h e r e i s
0063720 a p l a c e t o p u t b
0063740 y t e \r \t T E S T \t A L , c o
0063760 m T x E m p t y \r \t J Z \t P u t
0064000 C h a r 1 0 \r \t P O P \t A X \t \t
0064020 ; G e t t h e c h a r b
0064040 a c k \r \t O U T \t c o m D a t a
0064060 , A L \t ; P u t i t 376 \0
0064100 372 353 254 o u t \r \t R E T \r P u t C
0064120 h a r \t E N D P \r \r U n k n o w
0064140 n I n t \t L A B E L \t F A R \r \t
0064160 I R E T \r \r \t O R G \t 3 F F 0 h
0064200 ; 1 6 b y t e s b e f o
0064220 r e t h e e n d o f t h
0064240 e 1 6 k B y t e R O M \r I n
0064260 i t 8 0 1 8 6 : \r \t M O V \t D X
0064300 , U M C S r e g \t ; S e t
0064320 u p u p p e r c h i p s e
0064340 l e c t \r \t M O V \t A X , U M
0064360 C S v a l \r \t O U T \t D X , A
0064400 X \r \t J M P \t F A R P T R I
0064420 n i t \t ; J u m p t o s t
0064440 a r t o f R O M . \r \r C o d
0064460 e \t E N D S \r \t E N D \r \r 377 \0 \0
0064500 D a f f E Q s . d \0 373 233 255 220 b \0
0064520 \0 376 001 \0 277 204 ; D a f f E Q s .
0064540 d \r ; L a s t m o d i f i e
0064560 d b y D i e b e r t O c t
0064600 o b e r 7 , 1 9 8 3 8 :
0064620 5 7 A M \r ; \r ; T h i s f
0064640 i l e p r o v i d e s t h e
0064660 b a s i c e q u a t e s a
0064700 n d \r ; o t h e r g o o d i
0064720 e s f o r t h e D a f f o
0064740 d i l i 8 0 1 8 6 I O P . \r
0064760 \r ; i 8 0 1 8 6 I n t e r n
0065000 a l C o n t r o l B l o c k
0065020 \r \r I C B b a s e \t \t E Q U \t 0
0065040 F F 0 0 h \r \r \r ; i 8 0 1 8 6
0065060 C h i p s e l e c t s \r \r U
0065100 M C S r e g \t \t E Q U \t I C B b
0065120 a s e + 376 001 \0 h 310 0 A 0 h \r
0065140 L M C S r e g \t \t E Q U \t I C B
0065160 b a s e + 0 A 2 h \r M M C S
0065200 r e g \t \t E Q U \t I C B b a s e
0065220 + 0 A 6 h \r M P C S r e g \t
0065240 \t E Q U \t I C B b a s e + 0
0065260 A 8 h \r P A C S r e g \t \t E Q U
0065300 \t I C B b a s e + 0 A 4 h \r
0065320 \r U M C S v a l \t \t E Q U \t 0 F
0065340 C 3 9 h \t ; B a s e @ 0 F
0065360 C 0 0 0 h , 1 W S \r L M C S
0065400 v a l \t \t E Q U \t 0 0 3 F 9 h \t
0065420 ; B a s e @ 0 0 0 0 0 0 h
0065440 , 1 W S \r M P C S v a l \t \t
0065460 E Q U \t 0 8 2 B 9 h \t ; 1 6 k
0065500 m i d m e m , I / O s p
0065520 a c e , 1 W S \r M 376 001 \0 263 360
0065540 M C S v a l \t \t E Q U \t 0 F 9 F
0065560 9 h \t ; B a s e @ 0 F 8 0
0065600 0 0 h , 1 W S \r P A C S v a
0065620 l \t \t E Q U \t 0 0 0 3 9 h \t ;
0065640 P e r i p h B a s e @ 0 ,
0065660 1 W S \r \r \r P e r i p h B a s
0065700 e \t E Q U \t 0 \r \r ; C o m m u
0065720 n i c a t i o n l i n e e q
0065740 u a t e s ( i 8 2 7 4 ) \r c o
0065760 m D a t a \t \t E Q U \t P e r i p
0066000 h B a s e + 0 0 8 h \r c o m
0066020 C t l \t \t E Q U \t P e r i p h B
0066040 a s e + 0 0 C h \r c o m B R
0066060 C t l \t E Q U \t I C B b a s e
0066100 + 0 5 E h \r c o m B R M a x C
0066120 n t B \t E Q U \t I C B b a s e
0066140 376 001 \0 277 204 + 0 5 C h \r c o m B
0066160 R M a x C n t A \t E Q U \t I C B
0066200 b a s e + 0 5 A h \r c o m B
0066220 R C n t \t E Q U \t I C B b a s e
0066240 + 0 5 8 h \r c o m I C t l \t
0066260 \t E Q U \t I C B b a s e + 0
0066300 3 C h \r \r c o m R x A v a i l \t
0066320 E Q U \t 0 1 h \t ; R R 0 A
0066340 c h a n . \r c o m I n t P e n d
0066360 i n g \t E Q U \t 0 2 h \t ; R R
0066400 0 A c h a n . \r c o m T x E
0066420 m p t y \t E Q U \t 0 4 h \t ; R
0066440 R 0 A c h a n . \r c o m C D
0066460 \t \t E Q U \t 0 8 h \t ; R R 0
0066500 A c h a n . \r c o m C T S \t \t
0066520 E Q U \t 2 0 h \t ; R R 0 A
0066540 c h a n . 376 001 \0 320 p \r c o m T x
0066560 U n d e r r u n \t E Q U \t 4 0 h
0066600 \t ; R R 0 A c h a n . \r c
0066620 o m B r e a k \t E Q U \t 8 0 h \t
0066640 ; R R 0 A c h a n . \r c o
0066660 m R x O v e r r u n \t E Q U \t 2
0066700 0 h \t ; R R 1 A c h a n .
0066720 \r c o m P a r i t y E r r o r \t
0066740 E Q U \t 1 0 h \t ; R R 1 A
0066760 c h a n . \r c o m A l l S e n t
0067000 \t E Q U \t 0 1 h \t ; R R 1 A
0067020 c h a n . \r c o m R I \t \t E Q
0067040 U \t 0 8 h \t ; R R 0 B c h
0067060 a n . \r c o m D S R \t \t E Q U \t
0067100 2 0 h \t ; R R 0 B c h a n
0067120 . \r \r i c o m \t \t E Q U \t 1 4 \t
0067140 ; C o m c h i p 376 001 \0 1 \t
0067160 i n t e r r u p t \r \r \r ; k e
0067200 y b o a r d e q u a t e s (
0067220 i 8 2 7 4 ) \r k e y D a t a \t \t
0067240 E Q U \t P e r i p h B a s e +
0067260 0 0 A h \r k e y C t l \t \t E Q
0067300 U \t P e r i p h B a s e + 0
0067320 0 E h \r k e y B R C t l \t E Q U
0067340 \t I C B b a s e + 0 5 6 h \r
0067360 k e y B R M a x C n t B \t E Q U
0067400 \t I C B b a s e + 0 5 4 h \r
0067420 k e y B R M a x C n t A \t E Q U
0067440 \t I C B b a s e + 0 5 2 h \r
0067460 k e y B R C n t \t E Q U \t I C B
0067500 b a s e + 0 5 0 h \r k e y I
0067520 C t l \t \t E Q U \t I C B b a s e
0067540 + 0 3 C h \r \r k e y R x A 376
0067560 001 \0 271 315 v a i l \t E Q U \t 0 1 h
0067600 \r k e y R x O v e r r u n \t E Q
0067620 U \t 2 0 h \r \r i k e y \t \t E Q U
0067640 \t 1 4 \t ; C o m c h i p i
0067660 n t e r r u p t \r \r \r ; F r o
0067700 p p y D i s k e q u a t e s
0067720 ( i 8 2 7 2 ) \r f d S t a t u
0067740 s \t E Q U \t P e r i p h B a s e
0067760 + 0 1 0 h \r f d D a t a \t \t
0070000 E Q U \t P e r i p h B a s e +
0070020 0 1 2 h \r f d D M A a c k \t E
0070040 Q U \t P e r i p h B a s e +
0070060 0 1 8 h \r f d T e r m C n t \t E
0070100 Q U \t P e r i p h B a s e +
0070120 0 2 8 h \r f d D M A C t l \t E Q
0070140 U \t I C B b a s e + 0 C A h
0070160 \r f d D 376 001 \0 306 300 M A T C \t \t E
0070200 Q U \t I C B b a s e + 0 C 8
0070220 h \r f d D M A D P h i \t E Q U \t
0070240 I C B b a s e + 0 C 6 h \r f
0070260 d D M A D P l o \t E Q U \t I C B
0070300 b a s e + 0 C 4 h \r f d D M
0070320 A S P h i \t E Q U \t I C B b a s
0070340 e + 0 C 2 h \r f d D M A S P
0070360 l o \t E Q U \t I C B b a s e +
0070400 0 C 0 h \r f d D M A I C t l \t
0070420 E Q U \t I C B b a s e + 0 3
0070440 4 h \r f d I C t l \t \t E Q U \t I
0070460 C B b a s e + 0 3 A h \r \r i
0070500 f d D M A \t \t E Q U \t 1 0 \t ; f
0070520 l o p p y d i s k D M A i
0070540 n t e r r u p t \r i f d \t \t E Q
0070560 U \t 1 3 \t ; f l o 376 001 \0 344 300 p p
0070600 y d i s k i n t e r r u p t
0070620 \r \r \r ; P c h i p e q u a
0070640 t e s \r P c h i p S t b \t E Q U
0070660 \t P e r i p h B a s e \r P c h i
0070700 p I C t l \t E Q U \t I C B b a s
0070720 e + 0 3 8 h \r \r i P c h i p
0070740 \t \t E Q U \t 1 2 \t ; P c h i p
0070760 i n t e r r u p t \r \r \r ; E
0071000 t h e r c o n t r o l l e r
0071020 e q u a t e s ( i i 8 2 5 8 6
0071040 ) \r e t h e r C A \t \t E Q U \t P
0071060 e r i p h B a s e + 0 2 0 h
0071100 \r e t h e r I C t l \t E Q U \t I
0071120 C B b a s e + 0 3 E h \r \r i
0071140 e t h e r \t \t E Q U \t 1 5 \t ; e
0071160 t h e r n e t i n t e r r 376 001
0071200 \0 5 E u p t \r \r \r ; s p a r e
0071220 i 8 0 1 8 6 D M A C o n t
0071240 r o l r e g s . \r \r D M A 1 C
0071260 t l \t \t E Q U \t I C B b a s e
0071300 + 0 D A h \t ; S p a r e D M
0071320 A c h a n \r D M A 1 T C \t \t E
0071340 Q U \t I C B b a s e + 0 D 8
0071360 h \r D M A 1 D P h i \t E Q U \t I
0071400 C B b a s e + 0 D 6 h \r D M
0071420 A 1 D P l o \t E Q U \t I C B b a
0071440 s e + 0 D 4 h \r D M A 1 S P
0071460 h i \t E Q U \t I C B b a s e +
0071500 0 D 2 h \r D M A 1 S P l o \t E
0071520 Q U \t I C B b a s e + 0 D 0
0071540 h \r D M A 1 I C t l \t E Q U \t I
0071560 C B b a s e + 0 3 6 h \r \r i
0071600 D M A 376 001 \0 354 H 1 \t \t E Q U \t 1
0071620 1 \t ; D M A c h a n n e l 1
0071640 i n t e r r u p t \r \r \r ; s
0071660 p a r e i 8 0 1 8 6 T i m e
0071700 r C o n t r o l r e g s . \r
0071720 T M R 2 C t l \t \t E Q U \t I C B
0071740 b a s e + 0 6 6 h \r T M R 2
0071760 M a x C n t A \t E Q U \t I C B b
0072000 a s e + 0 6 2 h \r T M R 2 C
0072020 n t \t \t E Q U \t I C B b a s e
0072040 + 0 6 0 h \r T M R 2 I C t l \t
0072060 E Q U \t I C B b a s e + 0 3
0072100 2 h \r \r i T M R 2 \t \t E Q U \t 1
0072120 9 \t ; T i m e r 2 i n t e r
0072140 r u p t \r \r \r ; i 8 0 1 8 6
0072160 I n t e r r u p t c o n t r o
0072200 l l e r r e g 376 001 \0 023 227 s . \r
0072220 \r I n t S t a t u s \t E Q U \t I
0072240 C B b a s e + 0 3 0 h \r I n
0072260 t R e q \t \t E Q U \t I C B b a s
0072300 e + 0 2 E h \r I n t I n S e
0072320 r v \t E Q U \t I C B b a s e +
0072340 0 2 C h \r I n t P r i M a s k
0072360 \t E Q U \t I C B b a s e + 0
0072400 2 A h \r I n t M a s k \t \t E Q U
0072420 \t I C B b a s e + 0 2 8 h \r
0072440 I n t P o l l S t a t \t E Q U \t
0072460 I C B b a s e + 0 2 6 h \r I
0072500 n t P o l l R e g \t E Q U \t I C
0072520 B b a s e + 0 2 4 h \r I n t
0072540 E O I \t \t E Q U \t I C B b a s e
0072560 + 0 2 2 h \r \r \r ; P r o c
0072600 e s s o r I n t e r r u 376 001 \0
0072620 273 032 p t S o u r c e t y p e
0072640 s \r \r i D i v E r r \t \t E Q U \t
0072660 0 \t ; D i v i d e E r r o r \r
0072700 i S n g l S t p \t E Q U \t 1 \t ;
0072720 S i n g l e s t e p \r i N M I
0072740 \t \t E Q U \t 2 \t ; n o n m a s
0072760 k a b l e i n t e r r u p t \r
0073000 i B k p t \t \t E Q U \t 3 \t ; b r
0073020 e a k p o i n t \r i I N T O \t \t
0073040 E Q U \t 4 \t ; i n t e r r u p t
0073060 o n o v e r f l o w \r i B o
0073100 u n d s \t \t E Q U \t 5 \t ; b o u
0073120 n d s c h e c k \r i B a d O p
0073140 \t \t E Q U \t 6 \t ; u n i m p l i
0073160 m e n t e d o p c o d e \r i E
0073200 S C \t \t E Q U \t 7 \t ; e s c a p
0073220 e 376 \0 376 021 233 i n s t r u c t i
0073240 o n \r \r ; M i s c E q u a t
0073260 e s \r t r u e \t \t E Q U \t 0 F F
0073300 F F h \r f a l s e \t \t E Q U \t 0
0073320 \r \r ; S y s t e m m e m o r
0073340 y s i z e s \r R a m S t a r t
0073360 \t E Q U \t 0 \t ; S t a r t a
0073400 t A b s o l u t e 0 \r R a m
0073420 S i z e \t \t E Q U \t 1 6 3 8 4 \t
0073440 ; 1 6 K b y t e s \r S t a c
0073460 k S i z e \t E Q U \t 2 5 6 \t ;
0073500 2 5 6 b y t e s \r R o m S t a
0073520 r t \t E Q U \t 0 F C 0 0 h \t ;
0073540 S t a r t a t a b s o l u t
0073560 e F F C 0 0 h \r R o m S i z e
0073600 \t \t E Q U \t 1 6 3 8 4 \t ; 1 6
0073620 K b y t 376 \0 003 e v e s \r 377 \0 \0
0073640 I B M D D M . a s m \0 373 233 217 h !
0073660 \0 \0 376 001 \0 \n 262 \t P a g e 5 5 ,
0073700 1 3 2 \r \t T i t l e D D M \r ;
0073720 I B M D D M . a s m \r ; L a
0073740 s t m o d i f i e d b y D
0073760 i e b e r t , S e p t e m b e
0074000 r 1 4 , 1 9 8 3 1 1 : 5
0074020 9 A M \r \r M a x B u f L e n \t
0074040 E Q U \t 8 0 \t ; i n p u t b u
0074060 f f e r \r B P L e n \t \t E Q U \t
0074100 8 \t ; n u m b e r o f b r e
0074120 a k p o i n t s \r c r \t \t E Q U
0074140 \t 0 D h \t ; c a r r i a g e r
0074160 e t u r n \r l f \t \t E Q U \t 0 A
0074200 h \t ; l i n e f e e d \r I O S
0074220 p a c e \t \t E Q U \t 0 \t ; e q u
0074240 a t e s f o r t a r g e t
0074260 s p a c e \r M 376 001 \0 345 234 e m S p
0074300 a c e \t E Q U \t 2 \r R e g S p a
0074320 c e \t E Q U \t 4 \r \r R e a d M o
0074340 d e \t E Q U \t 0 \t ; m o d e o
0074360 f c e l l a c c e s s \r N o
0074400 R e a d M o d e \t E Q U \t 1 \r \r
0074420 M e m S i z e \t \t E Q U \t 2 \t ;
0074440 o f f s e t o f m e m o r y
0074460 s i z e i n P S P \r T e r
0074500 m C S \t \t E Q U \t 0 C h \t ; o f
0074520 f s e t o f t e r m i n a t
0074540 e a d d r e s s i n P S P
0074560 \r T e r m I P \t \t E Q U \t 0 A h
0074600 \r T e r m I n t N o \t E Q U \t 2
0074620 2 h \t ; t e r m i n a t e i n
0074640 t e r r u p t n u m b e r \r C
0074660 B r k C S \t \t E Q U \t 1 376 001 \0 264
0074700 7 0 h \t ; o f f s e t o f t
0074720 h e c t r l - B r e a k a d
0074740 d r e s s i n P S P \r C B r
0074760 k I P \t \t E Q U \t 0 E h \r C B r
0075000 k I n t N o \t E Q U \t 2 3 h \t ;
0075020 c t r l - b r e a k i n t e r
0075040 r u p t n u m b e r \r \r D e f
0075060 a u l t D T A \t E Q U \t 8 0 h
0075100 ; t h e E X E f i l e h
0075120 e a d e r f a l l s h e r e
0075140 \r L S t k S e g \t \t E Q U \t 8 E
0075160 h \r L S t k P t r \t \t E Q U \t 9
0075200 0 h \r L C S R e g \t \t E Q U \t 9
0075220 6 h \r L I P R e g \t \t E Q U \t 9
0075240 4 h \r F i l e S i z e \t E Q U \t
0075260 8 4 h \t ; l o a d m o d u l e
0075300 376 001 \0 V 220 f i l e s i z e
0075320 o f f s e t i n P S P \r H e
0075340 a d e r S i z e \t E Q U \t 8 8 h
0075360 \t ; l o a d m o d u l e h e
0075400 a d e r s i z e o f f s e t
0075420 i n P S P \r R e l o c I t e
0075440 m \t E Q U \t 9 8 h \t ; o f f s e
0075460 t o f f i r s t r e l o c
0075500 a t i o n i t e m \r I t e m C
0075520 o u n t \t E Q U \t 8 6 h \t ; n u
0075540 m b e r o f r e l o c a t i
0075560 o n i t e m s \r \r m y F C B \t
0075600 \t E Q U \t 5 C h \t ; E X E f i
0075620 l e F C B f a l l s h e r
0075640 e i n t h e P S P \r C u r
0075660 r e n t B l o c k \t E Q U \t 0
0075700 C h \t ; o f 376 001 \0 . f s e t
0075720 o f c u r r e n t b l o c k
0075740 i n F C B \r C u r r e n t R
0075760 e c o r d \t E Q U \t 2 0 h \t ; o
0076000 f f s e t o f r e l a t i v
0076020 e r e c o r d n o . i n
0076040 F C B \r R e l R e c \t \t E Q U \t
0076060 2 1 h \t ; o f f s e t o f r
0076100 e l a t i v e r e c o r d n
0076120 o . f o r r a n d o m a c
0076140 c e s s \r \r \r S t a c k \t S e g
0076160 m e n t S t a c k \r \t D W \t 2
0076200 5 6 D u p ( ? ) \r S t a c k
0076220 \t E N D S \r \r D a t a \t S e g m
0076240 e n t ' D a t a ' \r \r T a r g
0076260 S p a c e \t D W \t ( ? ) \r T a r
0076300 g S e g \t \t D W \t ( ? 376 001 \0 023 8
0076320 ) \r T a r g O f f s e t \t D W \t
0076340 ( ? ) \r \r B P T a b l e \t \t D W
0076360 \t 2 * B P L e n D U P ( ? )
0076400 \t ; b r e a k p o i n t e n t
0076420 r i e s c o n t a i n a \r ;
0076440 s e g m e n t i n t h e f
0076460 i r s t w o r d , t h e o
0076500 p c o d e b e i n g r e p l
0076520 a c e d i n t h e \r ; f i r
0076540 s t b y t e o f t h e s
0076560 e c o n d w o r d , 3 b i
0076600 t s o f 0 ' s , a b i t
0076620 i n d i c a t i n g \r ; t h a
0076640 t t h e t a b l e e n t r
0076660 y i s i n u s e , a n d
0076700 a f o u r - b i t o f f s
0076720 376 001 \0 . 366 e t f r o m t h e
0076740 \r ; s e g m e n t g i v e n
0076760 b y t h e f i r s t w o r
0077000 d . \r B P T a b l e E n d \t L A
0077020 B E L W O R D \r \r M o d e \t \t
0077040 D W \t ( ? ) \t ; p r i n t i n g
0077060 m o d e \r L o a d F l a g \t D
0077100 W \t ( ? ) \t ; i n d i c a t e s
0077120 d e b u g e e l o a d e d \r
0077140 D S t k p \t \t D W \t ( ? ) \t ; s
0077160 a v e s s t k p w h e n d
0077200 e b u g e e i s r u n n i n
0077220 g \r \r R e g S a v e \t \t L A B E
0077240 L \t W O R D \r R e g A X \t \t D W
0077260 \t 0 \r R e g B X \t \t D W \t 0 \r R
0077300 e g C X \t \t D W \t 0 \r R e g D X
0077320 \t \t D W \t 376 001 \0 # 310 0 \r R e g S
0077340 P \t \t D W \t 0 \r R e g B P \t \t D
0077360 W \t 0 \r R e g S I \t \t D W \t 0 \r
0077400 R e g D I \t \t D W \t 0 \r R e g C
0077420 S \t \t D W \t 0 \r R e g D S \t \t D
0077440 W \t 0 \r R e g S S \t \t D W \t 0 \r
0077460 R e g E S \t \t D W \t 0 \r R e g I
0077500 P \t \t D W \t 0 \r R e g F R \t \t D
0077520 W \t 0 \r R e g X S \t \t D W \t 0 \r
0077540 R e g Y S \t \t D W \t 0 \r \r B u f
0077560 \t \t D B \t M a x B u f L e n + 1
0077600 D u p ( ? ) \r \t \t E V E N \r
0077620 B u f L e n \t \t D W \t ( ? ) \r \r
0077640 L o a d S e g \t \t D W \t ( ? ) \t
0077660 ; s e g m e n t i n t o w h
0077700 i c h t o l o a d d e b u
0077720 g e e \r P S P S e g 376 001 \0 264 a \t
0077740 \t D W \t ( ? ) \r R e l o c S e g
0077760 \t D W \t ( ? ) \t ; d u r i n g
0100000 l o a d i n g , r e l o c a t
0100020 i o n i s d o n e \r \t \t \t \t
0100040 ; r e l a t i v e t o t h i
0100060 s s e g m e n t \r B r o k e n
0100100 \t \t D W \t ( ? ) \t ; n o n z e r
0100120 o m e a n s b r e a k p o i
0100140 n t s a r e s e t i n t
0100160 h e d e b u g e e \r \r D a t a
0100200 \t \t E N D S \r \t P A G E \r \r C S
0100220 e g \t S e g m e n t ' C o d e
0100240 ' \r \t A s s u m e C S : C S
0100260 e g , D S : D a t a \r \r ; *
0100300 * * * * * * * * * * * * * * * *
0100320 * * * * * * * * * * * * * * * 376
0100340 001 \0 _ u * * * * * * * * * * * *
0100360 * * * * * * * * * * * * * * * *
0100400 * * * * * * * * * \r D D M a i n
0100420 \t P R O C F a r \r \t P U S H \t
0100440 D S \t ; s a v e P S P f o r
0100460 r e t u r n t o D O S \r \t
0100500 S U B \t A X , A X \r \t P U S H
0100520 \t A X \r \t M O V \t A X , D a t
0100540 a \r \t M O V \t D S , A X \r \t M
0100560 O V \t P S P S e g , E S \r \t M
0100600 O V \t C L , 4 \t ; t h e s e
0100620 g m e n t a f t e r t h e
0100640 s t a c k h o l d s t h e
0100660 d e b u g e e \r \t M O V \t A X ,
0100700 S P \r \t S H R \t A X , C L \r
0100720 \t I N C \t A X \r \t M O V \t B X ,
0100740 S S \r 376 001 \0 027 222 \t A D D \t A X
0100760 , B X \r \t M O V \t L o a d S e
0101000 g , A X \r \t M O V \t R e g X S
0101020 , A X \r \t M O V \t R e g Y S ,
0101040 E S \t ; s a v e P S P o f
0101060 f s e t \r \t M O V \t T a r g S p
0101100 a c e , M e m S p a c e \r \t M
0101120 O V \t T a r g S e g , 0 \r \t M
0101140 O V \t T a r g O f f s e t , 0
0101160 \r \t M O V \t M o d e , R e a d
0101200 M o d e \r \t M O V \t L o a d F l
0101220 a g , 0 \r \t C A L L \t I n i t
0101240 B P T a b l e \r \t M O V \t B u f
0101260 L e n , 0 \t ; c l e a r i n
0101300 p u t b u f f e r \r \t M O V \t
0101320 B r o k e n , 0 \r ; S e t C
0101340 O M 1 t o 2 4 376 001 \0 1 311 0 0
0101360 b a u d , n o p a r i t y ,
0101400 o n e s t o p b i t , 8
0101420 d a t a b i t s \r \t M O V \t
0101440 A X , 0 A 3 h \r \t M O V \t D X
0101460 , 0 \t ; c o m c a r d 0 \r
0101500 \t I N T \t 1 4 h \r \t P A G E \r ;
0101520 c o m m a n d s r e t u r n
0101540 h e r e \r M a i n 0 0 : \t C A L
0101560 L \t P r o m p t \t ; P r o m p t
0101600 \r M a i n 0 1 : \t C A L L \t G e
0101620 t L i n e \r M a i n 0 2 : \t M O
0101640 V \t A H , 0 ; c o m
0101660 m a n d c h a r a c t e r i
0101700 s i n A L \r \t M O V \t B X ,
0101720 A X \r \t S H L \t B X , 1 \t ;
0101740 d i s p a t c h o n c o 376 001
0101760 \0 @ ~ m m a n d c h a r a c t
0102000 e r \r \t J M P \t C S : C o m T a
0102020 b [ B X ] \r \r C o m T a b \t L A
0102040 B E L \t W O R D \r ; d i s p a t
0102060 c h t a b l e f o r c o m
0102100 m a n d c h a r a c t e r s \r
0102120 \t D W \t Q P r , Q P r , C t
0102140 r l B , I 2 3 , D o w n L o
0102160 a d , Q P r , Q P r , G o
0102200 \r \t D W \t Q P r , Q P r , Q
0102220 P r , K i l l B P , L o a d
0102240 E X E , M a i n 0 0 , N e x
0102260 t L o c , C u r L o c R \r \t D
0102300 W \t P r e v L o c , Q u i t ,
0102320 R e g P r i n t , S S t e p
0102340 , T e r m M o d e , Q P r ,
0102360 Q P 376 001 \0 237 342 r , C u r L o
0102400 c N \r \t D W \t Q P r , Q P r ,
0102420 P r g m , Q P r , Q P r ,
0102440 Q P r , Q P r , Q P r \r \t
0102460 P A G E \r T e r m M o d e : \t M
0102500 O V \t A H , 1 \t ; k b d c h
0102520 a r r e a d y ? \r \t I N T \t 1
0102540 6 h \r \t J E \t T M 0 1 \r \t M O V
0102560 \t A H , 3 \t ; R S 2 3 2 t r
0102600 a n s m i t t e r r e a d y ?
0102620 \r \t M O V \t D X , 0 \r \t I N T
0102640 \t 1 4 h \r \t T E S T \t A H , 2
0102660 0 h \t ; b i t 5 i s x m t
0102700 h o l d i n g r e g i s t e
0102720 r e m p t y \r \t J E \t T M 0 1
0102740 \r \t M O V \t A H , 0 \t ; r e a
0102760 d k e y b o a 376 001 \0 X h r d \r
0103000 \t I N T \t 1 6 h \r \t C M P \t A L
0103020 , 1 4 h \t ; c o n t r o l - T
0103040 ? \r \t J N E \t T M 0 0 \r \t J M P
0103060 \t M a i n 0 0 \t ; e x i t t e
0103100 r m i n a l m o d e \r T M 0 0
0103120 : \t M O V \t A H , 1 \t ; s e n
0103140 d c h a r t o R S 2 3 2 \r
0103160 \t I N T \t 1 4 h \r T M 0 1 : \t M
0103200 O V \t A H , 3 \t ; R S 2 3 2
0103220 c h a r a v a i l a b l e ? \r
0103240 \t M O V \t D X , 0 \r \t I N T \t
0103260 1 4 h \r \t T E S T \t A H , 1 \t
0103300 ; r e c e i v e r r e a d y ?
0103320 \r \t J E \t T e r m M o d e \r \t M
0103340 O V \t A H , 2 \t ; g e t c h
0103360 a r f r o m c o m l 376 001 \0
0103400 W $ i n e \r \t I N T \t 1 4 h \r \t
0103420 A N D \t A L , 7 F h \t ; m a s
0103440 k c h a r a c t e r t o 7
0103460 b i t s \r \t M O V \t A H , 1
0103500 4 \t ; s e n d c h a r a c t e
0103520 r t o s c r e e n \r \t M O V
0103540 \t B X , 0 \r \t I N T \t 1 0 h \r
0103560 \t J M P \t T e r m M o d e \r \t P
0103600 A G E \r P r g m : \t C M P \t L o
0103620 a d F l a g , 0 \r \t J N E \t P
0103640 r g 0 0 \r \t J M P \t Q P r \t ; c
0103660 a n ' t d o i t i f d e
0103700 b u g e e n o t l o a d e d
0103720 \r P r g 0 0 : \t C M P \t B r o k
0103740 e n , 0 \r \t J E \t P r g 1 0 \r
0103760 \t J M P \t Q P r \t ; c a n ' t
0104000 d o 376 001 \0 310 342 i t i f d e
0104020 b u g e e h a s b r e a k p
0104040 o i n t s \r P r g 1 0 : \t C A L
0104060 L \t S e n d C S \r \t J M P \t M a
0104100 i n 0 0 \r \r D o w n L o a d : \r
0104120 \t C M P \t L o a d F l a g , 0
0104140 \r \t J N E \t D o w n L o a d 0 0
0104160 \r \t J M P \t Q P r \t ; c a n ' t
0104200 d o i t i f d e b u g e
0104220 e n o t l o a d e d \r D o w
0104240 n L o a d 0 0 : \r \t C M P \t B r
0104260 o k e n , 0 \r \t J E \t D o w n
0104300 L o a d 1 0 \r \t J M P \t Q P r \t
0104320 ; c a n ' t d o i t i f
0104340 d e b u g e e h a s b r e a
0104360 k p o i n t s \r D o w n L o a d
0104400 1 0 : \r \t C A 376 001 \0 021 373 L L \t D
0104420 o w n L o a d I t \r \t J M P \t M
0104440 a i n 0 0 \r \t P A G E \r K i l l
0104460 B P : \t C M P \t B u f L e n ,
0104500 0 \r \t J E \t Z a p B P \r \t C A L
0104520 L \t P a r s e \r \t J C \t K B p 0
0104540 1 \r \t J M P \t Q P r \t ; b a d
0104560 p a r s e \r K B p 0 1 : \t M O V
0104600 \t C X , T a r g S e g \r \t M O
0104620 V \t D X , T a r g O f f s e t
0104640 \r \t M O V \t A X , 1 0 h \r \t M
0104660 O V \t S I , 0 F F F F h \r \t M
0104700 O V \t D I , 1 F h \r \t M O V \t
0104720 B P , O F F S E T K B p 0 0
0104740 \r \t C A L L \t S c a n B P \r \t J
0104760 M P \t Q P r \t ; z a p l o c a
0105000 t i o n n o t f o u 376 001 \0 327
0105020 \f n d \r K B p 0 0 : \t P O P \t A
0105040 X \t ; p o p 2 r e t u r n
0105060 l i n k s \r \t P O P \t A X \r \t M
0105100 O V \t B P T a b l e + 2 [ B X
0105120 ] , 0 \r \t J M P \t M a i n 0 0
0105140 \r Z a p B P : \t C A L L \t I n i
0105160 t B P T a b l e \r \t J M P \t M a
0105200 i n 0 0 \r \r C t r l B : \t C M P
0105220 B u f L e n , 0 \t ; s e t
0105240 b p i f p r e c e d e d b
0105260 y s e g : o f f s e t , e l
0105300 s e p r i n t a l l \r \t J N
0105320 E C t B 0 0 \r \t C A L L \t P r
0105340 i n t B r e a k s \r \t J M P \t M
0105360 a i n 0 0 \r C t B 0 0 : \t C A L
0105400 L \t P a r s e \r \t J C \t C t B 0
0105420 1 376 001 \0 8 K \r \t J M P \t Q P r \t
0105440 ; b a d p a r s e \r C t B 0 1
0105460 : \t C M P \t T a r g S p a c e ,
0105500 M e m S p a c e \r \t J E \t C t
0105520 B 0 2 \r \t J M P \t Q P r \r C t B
0105540 0 2 : \t M O V \t A X , 0 \r \t C
0105560 A L L \t S e t B p \r \t J C \t C t
0105600 B 0 3 \r \t J M P \t Q P r \r C t B
0105620 0 3 : \t J M P \t M a i n 0 0 \r \t
0105640 P A G E \r R e g P r i n t : \t C
0105660 A L L P r i n t R e g s \r \t J
0105700 M P \t M a i n 0 0 \r \r I 2 3 : \t
0105720 I N T \t 2 3 h \t ; C o n t r o l
0105740 C \r \r S S t e p : \t C M P \t L
0105760 o a d F l a g , 1 \t ; 1 m e
0106000 a n s p r o g r a m h a s
0106020 r u n a 376 001 \0 x 206 b i t a
0106040 l r e a d y \r \t J G \t S S t 0 0
0106060 \r \t J M P \t Q P r \r S S t 0 0 :
0106100 \t M O V \t A X , O F F S E T
0106120 S t e p S t e p \r \t J M P \t G o
0106140 0 4 \r \r G o : \t C M P \t L o a d
0106160 F l a g , 0 \r \t J N E \t G o 0
0106200 0 \r \t J M P \t Q P r \t ; c a n '
0106220 t g o u n l e s s d e b u
0106240 g g e e l o a d e d \r G o 0 0
0106260 : \t I N C \t L o a d F l a g \r \t
0106300 M O V \t D S , L o a d S e g \r
0106320 \t M O V \t D X , 8 0 h \r \t M O
0106340 V \t A H , 1 A h \r \t I N T \t 2
0106360 1 h \t ; s e t D T A t o l
0106400 o a d s e g : 8 0 h \r ; S e t
0106420 u p t h e t e r 376 001 \0 243 356
0106440 m i n a t e ( 2 2 h ) a n d
0106460 C t r l B r k ( 2 3 h ) i
0106500 n t e r r u p t s \r ; f r o m
0106520 t h e d e b u g g e e P S P
0106540 \r G o 0 1 : \t M O V \t A X , W
0106560 O R D P T R D S : T e r m
0106600 I P \r \t M O V \t C X , W O R D
0106620 P T R D S : T e r m C S \r
0106640 \t M O V \t B X , T e r m I n t
0106660 N o \r \t C A L L \t S e t I n t \r
0106700 \t M O V \t A X , W O R D P T
0106720 R D S : C B r k I P \r \t M O
0106740 V \t C X , W O R D P T R D
0106760 S : C B r k C S \r \t M O V \t B
0107000 X , C B r k I n t N o \r \t C A
0107020 L L \t S e t I n t \r \r \t M O V \t
0107040 376 001 \0 236 D A X , D a t a \r \t M
0107060 O V \t D S , A X \r \t M O V \t C
0107100 X , R e g C S \t ; c h e c k
0107120 f o r b r e a k a t g o
0107140 l o c a t i o n \r \t M O V \t D X
0107160 , R e g I P \r \t M O V \t A X ,
0107200 1 0 h \r \t M O V \t B P , O F
0107220 F S E T G o 0 2 \r \t M O V \t S
0107240 I , 0 F F F F h \r \t M O V \t D
0107260 I , 1 F h \r \t C A L L \t S c a
0107300 n B P \r \t C A L L \t B P E x c h
0107320 a n g e ; n o b r e a k a
0107340 t g o l o c a t i o n . S
0107360 e t b r e a k s \r \t A N D \t R
0107400 e g F R , 0 F E F F h \t ; c l
0107420 e a r T F \r \t M O V \t A X ,
0107440 O F F S E 376 001 \0 314 371 T B r k S
0107460 t o p \r \t M O V \t C X , C S \r
0107500 \t M O V \t B X , 3 \t ; b r e a
0107520 k p o i n t i n t e r r u p t
0107540 i s t y p e 3 \r \t C A L L
0107560 \t S e t I n t \r ; s e t S S
0107600 v e c t o r s o t h a t i
0107620 t c l e a r s T F a n d
0107640 r e s t a r t s \r \t M O V \t A X
0107660 , O F F S E T B r k S t e p
0107700 \r \t M O V \t C X , C S \r \t M O
0107720 V \t B X , 1 \r \t C A L L \t S e
0107740 t I n t \r \t M O V \t B r o k e n
0107760 , 1 \t ; b r e a k s a r e
0110000 s e t \r \t J M P \t G o 0 3 \r \r G
0110020 o 0 2 : \t P O P \t A X ; p o
0110040 p 2 r e t u r n 376 001 \0 240 327
0110060 l i n k s \r \t P O P \t A X \r \t M
0110100 O V \t A X , O F F S e t B r
0110120 k S t e p \r G o 0 4 : \t O R \t R
0110140 e g F R , 1 0 0 h \t ; a b r
0110160 e a k p o i n t i s s e t
0110200 a t g o l o c a t i o n .
0110220 S e t T F \r \t M O V \t C X ,
0110240 C S \r \t M O V \t B X , 1 \t ; s
0110260 e t S i n g l e S t e p i
0110300 n t e r r u p t v e c t o r \r
0110320 \t C A L L \t S e t I n t \r \t M O
0110340 V \t B r o k e n , 0 ; b r e
0110360 a k s a r e n o t s e t
0110400 i n t h e d e b u g e e \r \t
0110420 J M P \t G o 0 3 \r \r ; C o m e
0110440 h e r e o n a s i n g l 376
0110460 001 \0 314 U e s t e p s t o p \r
0110500 S t e p S t e p : \t C A L L \t S
0110520 a v e R e g s \r \t C A L L \t B P
0110540 S w a p \r \t C A L L \t P r i n t
0110560 R e g s \r \t M O V \t A L , " S
0110600 " \r \t J M P \t T e r m 0 0 \r \r ;
0110620 C o m e h e r e o n a b
0110640 r e a k p o i n t s t o p \r B
0110660 r k S t o p : \t C A L L \t S a v
0110700 e R e g s \r \t C A L L \t B P S w
0110720 a p \r \t D E C \t R e g I P \t ; b
0110740 a c k u p I P t o p o i
0110760 n t t o t h e b r e a k
0111000 i n s t r u c t i o n \r \t C A L
0111020 L \t P r i n t R e g s \r \t M O V
0111040 \t A L , " B " \r \t J M P \t T e
0111060 r m 0 0 376 001 \0 8 q \r \r ; G e t
0111100 h e r e o n a s t e p o
0111120 v e r a b r e a k p o i n t
0111140 e d i n s t r u c t i o n \r B
0111160 r k S t e p : \t C A L L \t S a v
0111200 e R e g s \r \t C A L L \t B P S w
0111220 a p \r \t A N D \t R e g F R , 0
0111240 F E F F h \t ; c l e a r T F \r
0111260 \t M O V \t D S , L o a d S e g
0111300 \r \t J M P \t G o 0 1 \r \r ; L o a
0111320 d u p t h e m a c h i n e
0111340 r e g i s t e r s a n d g
0111360 i v e c o n t r o l t o t
0111400 h e d e b u g e e \r G o 0 3 :
0111420 \t M O V \t D S t k p , S P \t ;
0111440 s a v e s t k p w h i l e
0111460 d e b u g e e r 376 001 \0 m 036 u n
0111500 s \r \t M O V \t S S , R e g S S
0111520 \r \t M O V \t S P , R e g S P \r
0111540 \t M O V \t A X , R e g F R \r \t
0111560 P U S H \t A X \r \t M O V \t A X ,
0111600 R e g C S \r \t P U S H \t A X \r
0111620 \t M O V \t A X , R e g I P \r \t
0111640 P U S H \t A X \r \t M O V \t A X ,
0111660 R e g A X \r \t M O V \t B X ,
0111700 R e g B X \r \t M O V \t C X , R
0111720 e g C X \r \t M O V \t D X , R e
0111740 g D X \r \t M O V \t B P , R e g
0111760 B P \r \t M O V \t S I , R e g S
0112000 I \r \t M O V \t D I , R e g D I
0112020 \r \t M O V \t E S , R e g E S \r
0112040 \t M O V \t D S , R e g D S \r \t
0112060 I R E T \r \t P A G E \r L o a 376 001
0112100 \0 023 b d E X E : \r \t C M P \t B u
0112120 f L e n , 0 \t ; s p e c i a l
0112140 r e l o c a t i o n ? \r \t J E
0112160 \t L E 1 0 \r \t M O V \t B P , 0
0112200 \r \t M O V \t S I , B u f L e n
0112220 \r \t C A L L \t N u m C h e c k \r
0112240 \t J C \t L E 1 1 \r \t J M P \t Q P
0112260 r \t ; f u n n y n o n - n u m
0112300 b e r f o r r e l o c a t i
0112320 o n s e g m e n t \r L E 1 0 :
0112340 \t M O V \t A X , L o a d S e g
0112360 \t ; n o r m a l r e l o c a t
0112400 i o n \r \t A D D \t A X , 1 0 h
0112420 \t ; d e b u g e e P S P i s
0112440 1 0 0 h l o n g \r L E 1 1 :
0112460 \t M O V \t R e l o c S e g , A
0112500 X \r L 376 001 \0 306 " E 1 2 : \t M O V
0112520 \t D X , L o a d S e g \r \t M O
0112540 V \t A H , 2 6 h \t ; c r e a t
0112560 e n e w p r o g r a m s e
0112600 g m e n t \r \t I N T \t 2 1 h \t ;
0112620 D O S c a l l \r \t M O V \t B P
0112640 , D S \t ; l o t s o f s e
0112660 g m e n t s w i t c h i n g
0112700 s o o n \r \t M O V \t E S , B P
0112720 \r \t M O V \t D S , P S P S e g
0112740 \r \t M O V \t D X , D e f a u l
0112760 t D T A \r \t M O V \t A H , 1 A
0113000 h \t ; s e t D T A \r \t I N T \t
0113020 2 1 h \r \r \t M O V \t D X , m y
0113040 F C B \t ; o p e n f i l e (
0113060 u s e d e b u g g e r P S P
0113100 ) \r \t M O V \t A 376 001 \0 ? \r H ,
0113120 0 F h \r \t I N T \t 2 1 h \r \t C M
0113140 P \t A L , 0 \r \t J E \t L E 0 0
0113160 \r \t M O V \t D S , B P \r \t J M
0113200 P \t Q P r \t ; c o u l d n o t
0113220 o p e n f i l e \r L E 0 0 :
0113240 \t M O V \t W O R D P T R D S
0113260 : ( m y F C B + C u r r e n t
0113300 B l o c k ) , 0 \r \t M O V \t B
0113320 Y T E P T R D S : ( m y F
0113340 C B + C u r r e n t R e c o
0113360 r d ) , 0 \r \t M O V \t A H ,
0113400 1 4 h \t ; s e q u e n t i a l
0113420 r e a d \r \t I N T \t 2 1 h \r ; p
0113440 r i n t t h e 1 4 h e a d
0113460 e r v a l u e s \r \t C A L L \t
0113500 C R L F \r \t M O V \t B X , 376 001 \0
0113520 $ 206 0 \r \t M O V \t C X , 1 4
0113540 \r \t P U S H \t B P \t ; s a v e
0113560 s e g m e n t \r p h l o o p : \t
0113600 M O V \t A X , W O R D P T R
0113620 D S : D e f a u l t D T A [
0113640 B X ] \r \t A D D \t B X , 2 \r \t
0113660 C A L L \t P u t N u m \r \t M O V
0113700 \t A L , " " \r \t C A L L \t P
0113720 u t C h a r \r \t D E C \t C X \r \t
0113740 J G \t p h l o o p \r \t C M P \t W
0113760 O R D P T R D S : D e f a
0114000 u l t D T A , 5 A 4 D h \r \t J
0114020 E \t L E 0 1 \r \t P O P \t B P \r \t
0114040 J M P \t Q P r \r L E 0 1 : \t P O
0114060 P \t B P \r \t M O V \t D S , E S
0114100 : L o a d S e g \r \t M O V \t D
0114120 X , 376 001 \0 } \ 1 0 0 h \t ; s e
0114140 t l o a d s e g m e n t f
0114160 o r t r a n s f e r \r \t M O V
0114200 \t A H , 1 A h \r \t I N T \t 2 1
0114220 h \r \t M O V \t D S , E S : P
0114240 S P S e g \t ; g e t s t a r t
0114260 i n g r e c o r d \r \r \t M O
0114300 V \t A X , W O R D P T R D
0114320 S : M e m S i z e \t ; c o p y
0114340 t h e m e m o r y s i z e
0114360 \r ; i n f o r m a t i o n f r
0114400 o m P S P t o P S P , s
0114420 i n c e D O S d o e s n ' t
0114440 \r \t M O V \t D S , E S : L o
0114460 a d S e g \r \t M O V \t W O R D
0114500 P T R D S : M e m S i z e ,
0114520 A X \r ; s e 376 001 \0 y 306 t t h
0114540 e T e r m i n a t e a n d
0114560 C t r l B r k a d d r e s s e
0114600 s i n t o t h e d e b u g
0114620 e e P S P \r \t M O V \t A X ,
0114640 O F F S E T T e r m \r \t M O V
0114660 \t W O R D P T R D S : T e
0114700 r m I P , A X \r \t M O V \t W O
0114720 R D P T R D S : T e r m C
0114740 S , C S \r \t M O V \t A X , O
0114760 F F S E T C B r k \r \t M O V \t
0115000 W O R D P T R D S : C B r
0115020 k I P , A X \r \t M O V \t W O R
0115040 D P T R D S : C B r k C S
0115060 , C S \r \r \t M O V \t D S , E
0115100 S : P S P S e g \r \t M O V \t C
0115120 L , 3 \r ; h e a d e r 376 001 \0 M
0115140 372 s i z e i s i n p a r
0115160 a g r a p h s . d i v i d e
0115200 b y 8 t o g e t r e c
0115220 o r d s . \r \t M O V \t A X , W
0115240 O R D P T R D S : H e a d
0115260 e r S i z e \r \t S H R \t A X ,
0115300 C L \r \t M O V \t W O R D P T R
0115320 D S : ( m y F C B + R e l R
0115340 e c ) , A X \r \t M O V \t W O R
0115360 D P T R D S : ( m y F C B
0115400 + R e l R e c + 2 ) , 0 \r \t M
0115420 O V \t B X , W O R D P T R
0115440 D S : F i l e S i z e \r \t M O
0115460 V \t C L , 2 \r \t S H L \t B X ,
0115500 C L \t ; n u m b e r o f r
0115520 e c o r d s i n f i l e \r \t
0115540 M 376 001 \0 O 371 O V \t C X , B X \r
0115560 \t S U B \t C X , A X \t ; n u m
0115600 b e r o f r e c o r d s t
0115620 o r e a d \r \t M O V \t D X ,
0115640 m y F C B \r \t M O V \t A H , 2
0115660 7 h \t ; r a n d o m b l o c k
0115700 r e a d \r \t I N T \t 2 1 h \t ;
0115720 D O S c a l l \r \t M O V \t E S
0115740 : R e g A X , A X \t ; A L
0115760 h a s c o m p l e t i o n c
0116000 o d e \r \t M O V \t E S : R e g
0116020 C X , C X \t ; C X h a s n
0116040 u m b e r o f r e c o r d s
0116060 r e a d \r ; s e t D T A b
0116100 a c k t o P S P a n d p
0116120 r o c e s s r e l o c a t i o
0116140 n i n f o 376 001 \0 303 025 . \r \t M O
0116160 V \t D S , E S : P S P S e g \r
0116200 \t M O V \t D X , D e f a u l t
0116220 D T A \r \t M O V \t A H , 1 A h
0116240 ; s e t D T A \r \t I N T \t 2
0116260 1 h \r \r \t M O V \t D I , E S :
0116300 L o a d S e g \r \t A D D \t D I
0116320 , 1 0 h \t ; D I c o n t a i
0116340 n s t h e s t a r t s e g
0116360 m e n t \r ; g e t S S f r o
0116400 m t h e h e a d e r \r \t M O
0116420 V \t A X , W O R D P T R D
0116440 S : L S t k S e g \r \t A D D \t
0116460 A X , D I \r \t M O V \t E S :
0116500 R e g S S , A X \r ; g e t S
0116520 P \r \t M O V \t A X , W O R D
0116540 P T R D S : L S t 376 001 \0 Z 241
0116560 k P t r \r \t M O V \t E S : R e
0116600 g S P , A X \r ; g e t C S \r
0116620 \t M O V \t A X , W O R D P T
0116640 R D S : L C S R e g \r \t A D
0116660 D \t A X , D I \r \t M O V \t E S
0116700 : R e g C S , A X \r ; g e t
0116720 I P \r \t M O V \t A X , W O R
0116740 D P T R D S : L I P R e g
0116760 \r \t M O V \t E S : R e g I P ,
0117000 A X \r ; s e t t h e F C B
0117020 b l o c k n u m b e r t o
0117040 0 a n d t h e r e l a t
0117060 i v e r e c o r d n o . t
0117100 o 1 \r ; i n c a s e m o r
0117120 e d i s k a c c e s s e s
0117140 a r e r e q u i r e d \r \t M O
0117160 376 001 \0 252 215 V \t W O R D P T R
0117200 D S : ( m y F C B + C u r r e
0117220 n t B l o c k ) , 0 \r \t M O V
0117240 \t B Y T E P T R D S : ( m
0117260 y F C B + C u r r e n t R e c o
0117300 r d ) , 1 \r \t M O V \t D X ,
0117320 m y F C B \r \r \t M O V \t B X ,
0117340 W O R D P T R D S : R e l
0117360 o c I t e m ; o f f s e t o
0117400 f t h e f i r s t i t e m
0117420 \r \t M O V \t C X , W O R D P
0117440 T R D S : I t e m C o u n t
0117460 \r \t M O V \t A X , E S : R e l
0117500 o c S e g \t ; p u t t h i s
0117520 o n t h e s t a c k \r \t P U
0117540 S H \t A X \r \r R e l o c L o o p
0117560 : \t C M P 376 001 \0 375 ] \t C X , 0
0117600 \t ; m o r e i t e m s ? \r \t J
0117620 E \t R e l o c D o n e \r \t M O V
0117640 \t S I , W O R D P T R D S
0117660 : D e f a u l t D T A [ B X ]
0117700 ; o f f s e t \r \t C A L L \t C
0117720 h k D s k B u f \r \t M O V \t A X
0117740 , W O R D P T R D S : D
0117760 e f a u l t D T A [ B X ] \t ; s
0120000 e g m e n t \r \t C A L L \t C h k
0120020 D s k B u f \r \t A D D \t A X ,
0120040 D I \t ; s e g m e n t + s t
0120060 a r t s e g m e n t \r \t M O V
0120100 \t E S , A X \r \t P O P \t A X \t
0120120 ; g e t R e l o c S e g \r \t P
0120140 U S H \t A X \r \t A D D \t A X ,
0120160 W O R D P T R E 376 001 \0 331 s S
0120200 : [ S I ] \t ; i t e m t o
0120220 b e r e l o c a t e d \r \t M O
0120240 V \t W O R D P T R E S : [
0120260 S I ] , A X \t ; p u t i t
0120300 b a c k \r \t D E C \t C X \r \t J M
0120320 P R e l o c L o o p \r \r R e l
0120340 o c D o n e : \t M O V \t D S ,
0120360 B P \r \t P O P \t A X \t ; d i s c
0120400 a r d R e l o c S e g \r \t M O
0120420 V \t A X , L o a d S e g \t ; s
0120440 e g m e n t o f d e b u g e
0120460 e P S P \r \t M O V \t R e g D S
0120500 , A X \r \t M O V \t R e g E S ,
0120520 A X \r \t M O V \t R e g F R ,
0120540 0 \t ; i n t e r r u p t s O F
0120560 F \r \t M O V \t L o a d F l a g 376
0120600 001 \0 370 265 , 1 \t ; i n d i c a t
0120620 e t h a t d e b u g e e i
0120640 s l o a d e d \r \t J M P \t M a
0120660 i n 0 0 \r \t P A G E \r Q u i t :
0120700 \t R E T \t ; r e t u r n t
0120720 o D O S \r \r P r e v L o c : \r
0120740 \t M O V \t D X , - 2 \t ; o f f
0120760 s e t d e l t a t o a c c
0121000 e s s p r e v i o u s l o c
0121020 a t i o n \r \t J M P \t N L 0 1 \r
0121040 N e x t L o c : \r \t M O V \t D X
0121060 , 2 \r N L 0 1 : \t C M P \t B u
0121100 f L e n , 0 \t ; n o n z e r o
0121120 l e n g t h i s a n e r
0121140 r o r h e r e \r \t J E \t C L R
0121160 0 2 \r \t J M P \t Q P r \t ; e r r
0121200 o r p 376 001 \0 250 \0 r o m p t \r \r
0121220 C u r L o c N : \r \t M O V \t M o
0121240 d e , N o R e a d M o d e \r \t
0121260 J M P \t C L R 0 1 \r C u r L o c
0121300 R : \r \t M O V \t M o d e , R e
0121320 a d M o d e \r C L R 0 1 : \t C M
0121340 P \t B u f L e n , 0 \r \t J E \t
0121360 C L R 0 3 \r \t C a l l \t P a r s
0121400 e \r \t J C \t C L R 0 4 \r \t J M P
0121420 \t Q P r \t ; b a d p a r s e \r
0121440 \r C L R 0 2 : \t A D D \t T a r g
0121460 O f f s e t , D X \r \t C M P \t
0121500 T a r g S p a c e , R e g S p
0121520 a c e \r \t J N E \t C L R 0 3 \r \t
0121540 A N D \t T a r g O f f s e t ,
0121560 1 F h ; m a s k o f f s e t
0121600 i n r e g i s 376 001 \0 t 310 t e
0121620 r m o d e \r C L R 0 3 : \t M O
0121640 V \t B X , T a r g S p a c e \t
0121660 ; p r i n t t h e c u r r e
0121700 n t l o c a t i o n \r \t J M P
0121720 \t C S : P r i n t T a b [ B X ]
0121740 \r \r P r i n t T a b \t L A B E L
0121760 \t W O R D \r \t D W \t P r i n t I
0122000 O , P r i n t M e m , P r i n t
0122020 R e g \r \r P r i n t I O : \r \t M
0122040 O V \t A L , " I " \r \t C A L L
0122060 \t P u t C h a r \r \t J M P \t P M
0122100 0 1 \r P r i n t M e m : \r \t M O
0122120 V \t A X , T a r g S e g \r \t C
0122140 A L L \t P u t N u m \r \t M O V \t
0122160 A L , " : " \r \t C A L L \t P u
0122200 t C h a r \r P M 0 1 : \t M O 376 001
0122220 \0 313 207 V \t A X , T a r g O f f
0122240 s e t \r \t C A L L \t P u t N u m
0122260 \r \t J M P \t C L R 0 4 \r P r i n
0122300 t R e g : \r \t M O V \t B X , T
0122320 a r g O f f s e t \r \t C A L L \t
0122340 P r i n t R e g N a m e \r C L R
0122360 0 4 : \t C M P \t M o d e , R e
0122400 a d M o d e \r \t J E \t C L R 0 5
0122420 \r \t M O V \t A L , " \ " \r \t C
0122440 A L L \t P u t C h a r \r \t J M P
0122460 \t C L R 1 0 \r C L R 0 5 : \t M O
0122500 V \t A L , " / " \r \t C A L L \t
0122520 P u t C h a r \r \t M O V \t B X ,
0122540 T a r g S p a c e \t ; n o w
0122560 g e t a n d p r i n t c o
0122600 n t e n t s \r \t J M P \t C S : R
0122620 e a d 376 001 \0 , 202 T a b [ B X ] \r
0122640 \r R e a d T a b \t L A B E L \t W
0122660 O R D \r \t D W \t R e a d I O , R
0122700 e a d M e m , R e a d R e g \r \r
0122720 R e a d I O : \t M O V \t D X ,
0122740 T a r g O f f s e t \r \t I N \t A
0122760 X , D X \r \t J M P \t C L R 0 6
0123000 \r R e a d M e m : \r \t M O V \t E
0123020 S , T a r g S e g \r \t M O V \t
0123040 B X , T a r g O f f s e t \r \t
0123060 M O V \t A X , E S : [ B X ] \r
0123100 \t J M P \t C L R 0 6 \r R e a d R
0123120 e g : \r \t M O V \t B X , T a r
0123140 g O f f s e t \r \t M O V \t A X ,
0123160 R e g S a v e [ B X ] \r C L R
0123200 0 6 : \t C A L L \t P u t N u m \r
0123220 C L R 1 0 : \t M 376 001 \0 f 374 O V \t
0123240 A L , " " \r \t C A L L \t P u
0123260 t C h a r \r \t C A L L \t G e t L
0123300 i n e \r \t P U S H \t A X \t ; s a
0123320 v e t e r m i n a t i o n c
0123340 h a r a c t e r \r \t C M P \t B u
0123360 f L e n , 0 \r \t J E \t C L R 0
0123400 7 \r \t M O V \t B P , 0 \r \t M O
0123420 V \t S I , B u f L e n \r \t C A
0123440 L L \t N u m C h e c k \r \t J C \t
0123460 C L R 0 8 \r \t P O P \t A X \r \t J
0123500 M P \t Q P r \t ; b a d n u m b
0123520 e r ? \r C L R 0 8 : \t M O V \t B
0123540 X , T a r g S p a c e \r \t J M
0123560 P \t C S : W r i t e T a b [ B X
0123600 ] \r \r W r i t e T a b \t L A B E
0123620 L \t W O R D \r \t D W \t W r 376 001 \0
0123640 002 204 i t e I O , W r i t e M e
0123660 m , W r i t e R e g \r \r W r i
0123700 t e I O : \r \t M O V \t D X , T
0123720 a r g O f f s e t \r \t O U T \t D
0123740 X , A X \r \t J M P \t C L R 0 7
0123760 \r \r W r i t e M e m : \r \t M O V
0124000 \t E S , T a r g S e g \r \t M O V
0124020 \t B X , T a r g O f f s e t \r
0124040 \t M O V \t E S : [ B X ] , A X
0124060 \r \t J M P \t C L R 0 7 \r W r i t
0124100 e R e g : \r \t M O V \t B X , T
0124120 a r g O f f s e t \r \t M O V \t R
0124140 e g S a v e [ B X ] , A X \r C
0124160 L R 0 7 : \t P O P \t D X \r \t C M
0124200 P \t D L , c r \r \t J E \t C L R
0124220 0 9 \r \t C A L L \t P r o m p t \r
0124240 C L 376 001 \0 n z R 0 9 : \t M O V \t
0124260 A X , D X \r \t M O V \t B u f L
0124300 e n , 0 \r \t J M P \t M a i n 0
0124320 2 \r \r Q P r : \t M O V \t A L ,
0124340 " " \r \t C A L L \t P u t C h a
0124360 r \r \t M O V \t A L , " ? " \r \t
0124400 C A L L \t P u t C h a r \r \t C A
0124420 L L \t P r o m p t \r \t J M P \t M
0124440 a i n 0 1 \r \r ; C o m e h e r
0124460 e o n a C t r l B r e a k
0124500 i n t e r r u p t \r C B r k :
0124520 \t C A L L \t S a v e R e g s \r \t
0124540 C A L L \t B P S w a p \r \t M O V
0124560 \t A L , " C " \r \t J M P \t T e
0124600 r m 0 0 \r ; C o m e h e r e
0124620 w h e n t h e d e b u g e e
0124640 t e r m i n 376 001 \0 332 ~ a t e s
0124660 \r T e r m : \t C A L L \t S a v e
0124700 R e g s \r \t C A L L \t B P S w a
0124720 p \r \t M O V \t A L , " T " \r T
0124740 e r m 0 0 : \t C A L L \t C R L F
0124760 \r \t C A L L \t P u t C h a r \r \t
0125000 M O V \t A L , " * " \r \t C A L
0125020 L \t P u t C h a r \r \t J M P \t M
0125040 a i n 0 1 \r \r D D M a i n \t E N
0125060 D P \r \t P A G E \r ; * * * * * *
0125100 * * * * * * * * * * * * * * * *
*
0125160 * * * * * * * * * * * * * * * \r
0125200 B P S w a p \t P R O C \t N e a r
0125220 \t ; c h e c k f o r b r e a
0125240 k s s e t , c l e a 376 001 \0 j
0125260 020 r t h e m i f s o \r \t C
0125300 M P \t B r o k e n , 0 \r \t J E
0125320 \t B P S 0 0 \r \t C A L L \t B P E
0125340 x c h a n g e \r B P S 0 0 : \t R
0125360 E T \r B P S w a p \t E N D P \r \r
0125400 ; * * * * * * * * * * * * * * *
0125420 * * * * * * * * * * * * * * * *
*
0125500 * * * * * * \r P r i n t R e g N
0125520 a m e \t P R O C \t N e a r \r \t M
0125540 O V \t A L , C S : R e g T a b
0125560 B + 1 [ B X ] \r \t C A L L \t P u
0125600 t C h a r \r \t M O V \t A L , C
0125620 S : R e g T a b B [ B X ] \r \t C
0125640 A L L \t P u t C h a r \r \t R E T
0125660 \r 376 001 \0 7 e P r i n t R e g N a
0125700 m e \t E N D P \r \r ; * * * * * *
0125720 * * * * * * * * * * * * * * * *
*
0126000 * * * * * * * * * * * * * * * \r
0126020 S a v e R e g s \t P R O C \t N e
0126040 a r \r ; c a l l e d w h e n
0126060 d e b u g g e e r e t u r n s
0126100 v i a i n t e r r u p t .
0126120 S a v e d e b u g e e ' s
0126140 r e g i s t e r s . \r ; W e a
0126160 r e o p e r a t i n g w i t
0126200 h t h e d e b u g g e e ' s
0126220 s t a c k . \r \t P U S H \t D S
0126240 \r \t P U S H \t A X \r \t M O V \t A
0126260 X , D a t 376 001 \0 307 233 a \r \t M O
0126300 V \t D S , A X \r \t M O V \t R e
0126320 g B X , B X \r \t M O V \t R e g
0126340 C X , C X \r \t M O V \t R e g D
0126360 X , D X \r \t M O V \t R e g B P
0126400 , B P \r \t M O V \t R e g S I ,
0126420 S I \r \t M O V \t R e g D I ,
0126440 D I \r \t M O V \t R e g E S , E
0126460 S \r \t P O P \t A X \r \t M O V \t R
0126500 e g A X , A X \r \t P O P \t A X
0126520 \r \t M O V \t R e g D S , A X \r
0126540 \t P O P \t B X \t ; S a v e R e g
0126560 s ' r e t u r n l i n k \r \t
0126600 P O P \t A X \t ; d e b u g e e
0126620 I P , C S , F l a g s \r \t M
0126640 O V \t R e g I P , A X \r \t P O
0126660 P \t A X \r \t M O V \t R 376 001 \0 c a
0126700 e g C S , A X \r \t P O P \t A X
0126720 \r \t M O V \t R e g F R , A X \r
0126740 \t M O V \t R e g S S , S S \t ;
0126760 d e b u g e e ' s s t a c k
0127000 s e g \r \t M O V \t R e g S P ,
0127020 S P \t ; d e b u g e e ' s s p
0127040 \r \t M O V \t A X , S t a c k \t
0127060 ; s w i t c h t o o u r s
0127100 t a c k \r \t M O V \t S S , A X
0127120 \r \t M O V \t S P , D S t k p \r
0127140 \t P U S H \t B X \r ; r e s t o r
0127160 e t h e c t r l - b r e a k
0127200 i n t e r r u p t v e c t o
0127220 r \r \t M O V \t E S , P S P S e
0127240 g \r \t M O V \t A X , E S : C
0127260 B r k I P \r \t M O V \t C X , E
0127300 376 001 \0 376 301 S : C B r k C S \r \t
0127320 M O V \t B X , C B r k I n t N
0127340 o \r \t C A L L \t S e t I n t \r \t
0127360 R E T \r S a v e R e g s \t E N D
0127400 P \r \r ; * * * * * * * * * * * *
0127420 * * * * * * * * * * * * * * * *
*
0127500 * * * * * * * * * \r P r o m p t
0127520 \t P R O C \t N e a r \r \t C A L L
0127540 \t C R L F \r \t M O V \t A L , "
0127560 * " \r \t C A L L \t P u t C h a r
0127600 \r \t R E T \r P r o m p t \t E N D
0127620 P \r \r ; * * * * * * * * * * * *
0127640 * * * * * * * * * * * * * * * *
*
0127700 * * * * * 376 001 \0 023 222 * * * * * *
0127720 * * * * * * * * * * * * * * \r G
0127740 e t L i n e \t P R O C N e a r
0127760 \r \t M O V \t B u f L e n , 0 \t
0130000 ; c l e a r i n p u t b u f
0130020 f e r \r \r G l 0 0 : \t M O V \t A
0130040 H , 0 \r \t I N T \t 1 6 h \t ; c
0130060 h a r a c t e r t o A L \r \r
0130100 \t C M P \t A L , 2 0 h \r \t J G
0130120 \t G l 0 1 \t ; j u m p i f n
0130140 o n - c o n t r o l c h a r \r
0130160 \t J E \t G l 0 2 \t ; j u m p i
0130200 f s p a c e \r \t C M P \t A L ,
0130220 8 h \t ; c h e c k f o r b
0130240 a c k s p a c e \r \t J E \t G l 0
0130260 3 \r \t R E T \t \t ; n o t b a c
0130300 k s p a c e , r e 376 001 \0 l 316 t
0130320 u r n \r G l 0 3 : \t C M P \t B u
0130340 f L e n , 0 \r \t J E \t G l 0 0
0130360 \t ; j u m p i f b u f f e r
0130400 e m p t y \r \t D E C \t B u f L
0130420 e n \r \t M O V \t A L , 8 h \t ;
0130440 e c h o B S , S P , B S \r \t C
0130460 A L L \t P u t C h a r \r \t M O V
0130500 \t A L , 2 0 h \r \t C A L L \t P
0130520 u t C h a r \r \t M O V \t A L ,
0130540 8 h \r \t C A L L \t P u t C h a r
0130560 \r \t J M P \t G l 0 0 \r \r G l 0 1
0130600 : \t C M P \t A L , 7 A h \t ; c
0130620 h e c k f o r u p p e r c
0130640 a s e \r \t J G \t G l 0 4 \r \t C M
0130660 P \t A L , 6 1 h \r \t J L \t G l
0130700 0 4 \r \t S U B \t A L , 2 0 h 376
0130720 001 \0 B 312 \t ; m a k e l o w e r
0130740 i n t o u p p e r \r G l 0 4
0130760 : \t M O V \t B X , B u f L e n
0131000 \t ; b u f f e r t h e c h a
0131020 r a c t e r \r \t M O V \t B u f [
0131040 B X ] , A L \r \t C M P \t B X ,
0131060 M a x B u f L e n \r \t J G E \t
0131100 G l 0 2 \t ; d o n ' t o v e r
0131120 f l o w b u f f e r \r \t I N C
0131140 \t B u f L e n \r G l 0 2 : \t C A
0131160 L L \t P u t C h a r \t ; e c h o
0131200 \r \t J M P \t G l 0 0 \r G e t L i
0131220 n e \t E N D P \r \r ; * * * * * *
0131240 * * * * * * * * * * * * * * * *
*
0131320 * * * * 376 001 \0 033 z * * * * * * *
0131340 * * * * \r N u m C h e c k \t P R
0131360 O C \t N e a r \r ; I f B u f [
0131400 B P . . S I - 1 ] r e p r e s
0131420 e n t s a h e x n u m b e
0131440 r , r e t u r n \r ; t h e n
0131460 u m b e r i n A X a n d
0131500 s e t c a r r y . I f n
0131520 o t , c l e a r c a r r y .
0131540 \r \t C M P \t B P , S I \r \t J E
0131560 \t N c 0 3 \t ; z e r o l e n g
0131600 t h ? \r \t M O V \t C L , 4 \r \t
0131620 M O V \t A X , 0 \r N c 0 0 : \t
0131640 M O V \t B L , B u f [ B P ] \r
0131660 \t C M P \t B L , " 0 " \r \t J L
0131700 \t N c 0 3 \r \t C M P \t B L , "
0131720 9 " \r \t J G \t N c 376 001 \0 n 206 0 1
0131740 \r \t S U B \t B L , " 0 " \r \t J
0131760 M P \t N c 0 2 \r N c 0 1 : \t C M
0132000 P \t B L , " A " \r \t J L \t N c
0132020 0 3 \r \t C M P \t B L , " F " \r
0132040 \t J G \t N c 0 3 \r \t S U B \t B L
0132060 , " A " - 1 0 \r N c 0 2 :
0132100 \t S H L \t A X , C L \r \t O R \t
0132120 A L , B L \r \t I N C \t B P \r \t
0132140 C M P \t B P , S I \r \t J L \t N
0132160 c 0 0 \r \t S T C \r \t R E T \r N c
0132200 0 3 : \t C L C \r \t R E T \r N u m
0132220 C h e c k \t E N D P \r \r ; * * *
0132240 * * * * * * * * * * * * * * * *
*
0132320 * * * * * * * * * * * * * * 376 001
0132340 \0 304 330 * * * * \r R e g C h e c k
0132360 \t P R O C N e a r \r ; I f B
0132400 u f [ B P . . B P + 1 ] r e p
0132420 r e s e n t s a r e g i s t
0132440 e r , r e t u r n t h e i
0132460 n d e x \r ; o f t h e r e g
0132500 i s t e r i n B X a n d
0132520 s e t c a r r y . I f n
0132540 o t , c l e a r c a r r y \r
0132560 \t M O V \t A H , B u f [ B P ]
0132600 \r \t M O V \t A L , B u f + 1 [
0132620 B P ] \r \t M O V \t B X , 0 \r R
0132640 c 0 1 : \t C M P \t A X , C S :
0132660 R e g T a b [ B X ] \r \t J E \t R
0132700 c 0 2 \r \t A D D \t B X , 2 \r \t
0132720 C M P \t B X , O f f s e t R
0132740 e g T 376 001 \0 W C a b E n d -
0132760 O f f s e t R e g T a b \r \t J
0133000 L \t R c 0 1 \r \t C L C \r \t R E T
0133020 \r R c 0 2 : \t S T C \r \t R E T \r
0133040 R e g C h e c k \t E N D P \r \r ;
0133060 * * * * * * * * * * * * * * * *
*
0133160 * * * * * \r C h k D s k B u f \t
0133200 P R O C \t N E A R \r \t P U S H \t
0133220 A X \r \t A D D \t B X , 2 \r \t C
0133240 M P \t B X , 8 0 h \r \t J L \t C
0133260 D B 0 1 \r \t M O V \t A H , 1 4
0133300 h \t ; s e q u e n t i a l d i
0133320 s k r e a d \r \t I N T \t 2 1 h
0133340 \r \t M O V \t B X 376 001 \0 X 375 , 0
0133360 \r C D B 0 1 : \t P O P \t A X \r \t
0133400 R E T \r C h k D s k B u f \t E N
0133420 D P \r \r R e g T a b \t L A B E L
0133440 \t W O R D \r R e g T a b B \t L A
0133460 B E L \t B Y T E \r \t D W \t " A X
0133500 " , " B X " , " C X " , "
0133520 D X " , " S P " , " B P " ,
0133540 " S I " , " D I " \r \t D W \t
0133560 " C S " , " D S " , " S S "
0133600 , " E S " , " I P " , " F
0133620 R " , " X S " , " Y S " \r R
0133640 e g T a b E n d \t L A B E L \t W
0133660 O R D \r \r ; * * * * * * * * * *
0133700 * * * * * * * * * * * * * * * *
*
0133740 * * * * * * * * * * * * * 376 001 \0
0133760 270 316 * * * * * * * * * * * * * *
0134000 \r P u t N u m \t P R O C \t N e a
0134020 r \r ; P r i n t A X a s a
0134040 f o u r d i g i t h e x
0134060 n u m b e r \r \t P U S H \t B X \r
0134100 \t P U S H \t C X \r \t M O V \t B X
0134120 , A X \r \t M O V \t C L , 4 \r
0134140 \t C A L L \t P n 0 1 \r \t C A L L
0134160 \t P n 0 1 \r \t C A L L \t P n 0 1
0134200 \r \t C A L L \t P n 0 1 \r \t P O P
0134220 \t C X \r \t P O P \t B X \r \t R E T
0134240 \r P n 0 1 : \t R O L \t B X , C
0134260 L \r \t M O V \t A X , 0 F h \r \t
0134300 A N D \t A X , B X \r \t C M P \t
0134320 A X , 0 A h \r \t J G E \t P n 0
0134340 2 \r \t A D D \t A X , " 0 " \r \t
0134360 J M 376 001 \0 237 274 P \t P n 0 3 \r P n
0134400 0 2 : \t A D D \t A X , " A "
0134420 - 0 A h \r P N 0 3 : \t C A L L
0134440 \t P u t C h a r \r \t R E T \r P u
0134460 t N u m \t E N D P \r \r ; * * * *
0134500 * * * * * * * * * * * * * * * *
*
0134600 * \r C R L F \t P R O C \t N e a r
0134620 \r \t P U S H \t A X \r \t M O V \t A
0134640 L , c r \r \t C A L L \t P u t C
0134660 h a r \r \t M O V \t A L , l f \r
0134700 \t C A L L \t P u t C h a r \r \t P
0134720 O P \t A X \r \t R E T \r C R L F \t
0134740 E N D P \r \r ; * * * * * * * * *
0134760 * * * * * * * 376 001 \0 _ ` * * * *
0135000 * * * * * * * * * * * * * * * *
*
0135060 * \r P u t C h a r \t P R O C \t N
0135100 e a r \r \t P U S H \t A X \r \t M O
0135120 V \t A H , 1 4 \r \t P U S H \t B
0135140 X \r \t M O V \t B X , 0 \r \t P U
0135160 S H \t C X \r \t P U S H \t B P \r \t
0135200 P U S H \t S I \r \t P U S H \t D I
0135220 \r \t M O V \t C X , S P \r \t I N
0135240 T \t 1 0 h \r \t M O V \t S P , C
0135260 X \r \t P O P \t D I \r \t P O P \t S
0135300 I \r \t P O P \t B P \r \t P O P \t C
0135320 X \r \t P O P \t B X \r \t P O P \t A
0135340 X \r \t R E T \r P u t C h a r \t E
0135360 N D P \r \r ; * * * * * * 376 001 \0 212
0135400 305 * * * * * * * * * * * * * * *
0135420 * * * * * * * * * * * * * * * *
*
0135500 \r P r i n t R e g s \t P R O C \t
0135520 N e a r \r \t C A L L \t C R L F \r
0135540 \t M O V \t B X , 0 \r P R E 0 0
0135560 : \t C A L L \t P r i n t R e g N
0135600 a m e \r \t M O V \t A L , " "
0135620 \r \t C A L L \t P u t C h a r \r \t
0135640 C A L L \t P u t C h a r \r \t C A
0135660 L L \t P u t C h a r \r \t A D D \t
0135700 B X , 2 \r \t C M P \t B X , 2
0135720 8 \t ; 1 4 r e g i s t e r s
0135740 t o p r i n t \r \t J L \t P R E
0135760 0 0 \r \t C A L L \t C R L F \r \t M
0136000 O 376 001 \0 M ) V \t B X , 0 \r P R
0136020 E 0 1 : \t M O V \t A X , R e g
0136040 S a v e [ B X ] \r \t C A L L \t P
0136060 u t N u m \r \t M O V \t A L , "
0136100 " \r \t C A L L \t P u t C h a r
0136120 \r \t A D D \t B X , 2 \r \t C M P
0136140 \t B X , 2 8 \r \t J L \t P R E 0
0136160 1 \r \t R E T \r P r i n t R e g s
0136200 \t E N D P \r \r ; * * * * * * * *
0136220 * * * * * * * * * * * * * * * *
*
0136300 * * * * * * * * * * * * * \r P a
0136320 r s e \t P R O C N e a r \r ; T
0136340 r y t o p a r s e t h e
0136360 i n p u t b u f f e r c o n
0136400 t e n t s . 376 001 \0 h 375 I f
0136420 s u c c e s s f u l , s e t \r
0136440 ; c a r r y a n d c h a n g
0136460 e T a r g S p a c e , T a r
0136500 g S e g , a n d T a r g O f
0136520 f s e t . \r ; I f n o t s u
0136540 c c e s s f u l , c l e a r
0136560 c a r r y . \r \t C M P \t B u f L
0136600 e n , 0 \r \t J N E \t P r 0 1 \r
0136620 \t S T C \r \t R E T \r P r 0 1 : \t
0136640 C M P \t B u f L e n , 2 \r \t J
0136660 N E \t P r 0 2 \r \t M O V \t B P ,
0136700 0 \r \t C A L L \t R e g C h e c
0136720 k \r \t J N C \t P r 0 2 \t ; j u m
0136740 p i f n o t a r e g i s
0136760 t e r n a m e \r \t M O V \t T a
0137000 r g S p a c e , R e 376 001 \0 222 235
0137020 g S p a c e \r \t M O V \t T a r g
0137040 O f f s e t , B X \r \t S T C \r
0137060 \t R E T \r P r 0 2 : \t C M P \t B
0137100 u f , " I " \t ; c h e c k f
0137120 o r I O S p a c e \r \t J N E
0137140 \t P r 0 3 \r \t M O V \t B P , 1
0137160 \r \t M O V \t S I , B u f L e n
0137200 \r \t C A L L \t N u m C h e c k \t
0137220 ; g e t o f f s e t ( m a y
0137240 b e ) \r \t J N C \t P r 0 3 \r \t M
0137260 O V \t T a r g S p a c e , I O
0137300 S p a c e \r \t J M P \t P r 1 1 \r
0137320 P r 0 3 : \t C L D \t ; f i n d
0137340 i n d e x o f " : " i f
0137360 p r e s e n t \r \t M O V \t D I ,
0137400 O F F S E T B u f \r \t M O V
0137420 376 001 \0 231 315 \t A X , D S \r \t M O
0137440 V \t E S , A X \r \t M O V \t A L
0137460 , " : " \r \t M O V \t C X , B
0137500 u f L e n \r \t R E P N E \t S C A
0137520 S B \r \t J E \t P r 0 4 ; Z F
0137540 m e a n s " : " w a s f o
0137560 u n d . D I h a s o f f
0137600 s e t + 1 \r \t M O V \t B P , 0
0137620 \t ; c h e c k f o r i s o l
0137640 a t e d n u m b e r \r \t M O V
0137660 \t S I , B u f L e n \r \t C A L
0137700 L \t N u m C h e c k \r \t J N C \t
0137720 P r 1 0 \r \t J M P \t P r 1 2 \r P
0137740 r 0 4 : \t S U B \t D I , O F F
0137760 S E T B u f \r \t C M P \t D I ,
0140000 3 \r \t J N E \t P r 0 5 \r \t M O
0140020 V \t B P , 376 001 \0 370 340 0 ; s t
0140040 r i n g i s o f f o r m
0140060 x x : . . . C h e c k f
0140100 o r r e g i s t e r n a m e
0140120 \r \t C A L L \t R e g C h e c k \r
0140140 \t J N C \t P r 0 5 \r \t M O V \t A
0140160 X , R e g S a v e [ B X ] \r \t
0140200 J M P \t P r 0 6 \r P r 0 5 : \t M
0140220 O V \t B P , 0 \t ; c h e c k
0140240 f o r s e g m e n t a n u
0140260 m b e r \r \t M O V \t S I , D I
0140300 \r \t D E C \t S I \r \t C A L L \t N
0140320 u m C h e c k \r \t J N C \t P r 1
0140340 0 \r P r 0 6 : \t P U S H \t A X \t
0140360 ; s a v e s e g m e n t f o
0140400 r l a t e r \r \t M O V \t A X ,
0140420 B u f L e n \r \t S 376 001 \0 356 Q U
0140440 B \t A X , D I \r \t C M P \t A X
0140460 , 2 \t ; c h e c k f o r o
0140500 f f s e t a r e g i s t e r
0140520 n a m e \r \t J N E \t P r 0 7 \r
0140540 \t M O V \t B P , D I \r \t C A L
0140560 L \t R e g C h e c k \r \t J N C \t
0140600 P r 0 7 \r \t M O V \t A X , R e
0140620 g S a v e [ B X ] \r \t J M P \t P
0140640 r 0 8 \r P r 0 7 : \t M O V \t B P
0140660 , D I \t ; c h e c k f o r
0140700 o f f s e t a n u m b e r \r
0140720 \t M O V \t S I , B u f L e n \r
0140740 \t C A L L \t N u m C h e c k \r \t
0140760 J N C \t P r 0 9 \r P r 0 8 : \t P
0141000 O P \t B X \r \t M O V \t T a r g S
0141020 e g , B X \r P r 1 2 : \t M O 376
0141040 001 \0 366 240 V \t T a r g S p a c e ,
0141060 M e m S p a c e \r P r 1 1 : \t
0141100 M O V \t T a r g O f f s e t ,
0141120 A X \r P r 1 3 : \t S T C \r \t R E
0141140 T \r \r P r 0 9 : \t P O P \t A X \r
0141160 P r 1 0 : \t C L C \r \t R E T \r P
0141200 a r s e \t E N D P \r \r ; * * * *
0141220 * * * * * * * * * * * * * * * *
*
0141320 * \r S c a n B P \t P R O C \t N e
0141340 a r \r ; S c a n B P i s u s
0141360 e d t o e n u m e r a t e
0141400 t h e e n t r i e s i n t
0141420 h e b r e a k p o i n t t a
0141440 b l e \r 376 001 \0 363 Y ; a n d c a
0141460 l l a p r o c e d u r e w
0141500 h e n a m a t c h i s f
0141520