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