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