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