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